/*! normalize.css v5.0.0 | MIT License | github.com/necolas/normalize.css */

/**
 * 1. Change the default font family in all browsers (opinionated).
 * 2. Correct the line height in all browsers.
 * 3. Prevent adjustments of font size after orientation changes in
 *    IE on Windows Phone and in iOS.
 */

/* Document
   ========================================================================== */

html {
  font-family: sans-serif; /* 1 */
  line-height: 1.15; /* 2 */
  -ms-text-size-adjust: 100%; /* 3 */
  -webkit-text-size-adjust: 100%; /* 3 */
}

/* Sections
   ========================================================================== */

/**
 * Remove the margin in all browsers (opinionated).
 */

body {
  margin: 0;
}

/**
 * Add the correct display in IE 9-.
 */

article,
aside,
footer,
header,
nav,
section {
  display: block;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */

h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

/* Grouping content
   ========================================================================== */

/**
 * Add the correct display in IE 9-.
 * 1. Add the correct display in IE.
 */

figcaption,
figure,
main { /* 1 */
  display: block;
}

/**
 * Add the correct margin in IE 8.
 */

figure {
  margin: 1em 40px;
}

/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */

hr {
  box-sizing: content-box; /* 1 */
  height: 0; /* 1 */
  overflow: visible; /* 2 */
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */

pre {
  font-family: monospace, monospace; /* 1 */
  font-size: 1em; /* 2 */
}

/* Text-level semantics
   ========================================================================== */

/**
 * 1. Remove the gray background on active links in IE 10.
 * 2. Remove gaps in links underline in iOS 8+ and Safari 8+.
 */

a {
  background-color: transparent; /* 1 */
  -webkit-text-decoration-skip: objects; /* 2 */
}

/**
 * Remove the outline on focused links when they are also active or hovered
 * in all browsers (opinionated).
 */

a:active,
a:hover {
  outline-width: 0;
}

/**
 * 1. Remove the bottom border in Firefox 39-.
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */

abbr[title] {
  border-bottom: none; /* 1 */
  text-decoration: underline; /* 2 */
  text-decoration: underline dotted; /* 2 */
}

/**
 * Prevent the duplicate application of `bolder` by the next rule in Safari 6.
 */

b,
strong {
  font-weight: inherit;
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */

b,
strong {
  font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */

code,
kbd,
samp {
  font-family: monospace, monospace; /* 1 */
  font-size: 1em; /* 2 */
}

/**
 * Add the correct font style in Android 4.3-.
 */

dfn {
  font-style: italic;
}

/**
 * Add the correct background and color in IE 9-.
 */

mark {
  background-color: #ff0;
  color: #000;
}

/**
 * Add the correct font size in all browsers.
 */

small {
  font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* Embedded content
   ========================================================================== */

/**
 * Add the correct display in IE 9-.
 */

audio,
video {
  display: inline-block;
}

/**
 * Add the correct display in iOS 4-7.
 */

audio:not([controls]) {
  display: none;
  height: 0;
}

/**
 * Remove the border on images inside links in IE 10-.
 */

img {
  border-style: none;
}

/**
 * Hide the overflow in IE.
 */

svg:not(:root) {
  overflow: hidden;
}

/* Forms
   ========================================================================== */

/**
 * 1. Change the font styles in all browsers (opinionated).
 * 2. Remove the margin in Firefox and Safari.
 */

button,
input,
optgroup,
select,
textarea {
  font-family: sans-serif; /* 1 */
  font-size: 100%; /* 1 */
  line-height: 1.15; /* 1 */
  margin: 0; /* 2 */
}

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */

button,
input { /* 1 */
  overflow: visible;
}

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */

button,
select { /* 1 */
  text-transform: none;
}

/**
 * 1. Prevent a WebKit bug where (2) destroys native `audio` and `video`
 *    controls in Android 4.
 * 2. Correct the inability to style clickable types in iOS and Safari.
 */

button,
html [type="button"], /* 1 */
[type="reset"],
[type="submit"] {
  -webkit-appearance: button; /* 2 */
}

/**
 * Remove the inner border and padding in Firefox.
 */

button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

/**
 * Restore the focus styles unset by the previous rule.
 */

button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

/**
 * Change the border, margin, and padding in all browsers (opinionated).
 */

fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *    `fieldset` elements in all browsers.
 */

legend {
  box-sizing: border-box; /* 1 */
  color: inherit; /* 2 */
  display: table; /* 1 */
  max-width: 100%; /* 1 */
  padding: 0; /* 3 */
  white-space: normal; /* 1 */
}

/**
 * 1. Add the correct display in IE 9-.
 * 2. Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */

progress {
  display: inline-block; /* 1 */
  vertical-align: baseline; /* 2 */
}

/**
 * Remove the default vertical scrollbar in IE.
 */

textarea {
  overflow: auto;
}

/**
 * 1. Add the correct box sizing in IE 10-.
 * 2. Remove the padding in IE 10-.
 */

[type="checkbox"],
[type="radio"] {
  box-sizing: border-box; /* 1 */
  padding: 0; /* 2 */
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */

[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */

[type="search"] {
  -webkit-appearance: textfield; /* 1 */
  outline-offset: -2px; /* 2 */
}

/**
 * Remove the inner padding and cancel buttons in Chrome and Safari on macOS.
 */

[type="search"]::-webkit-search-cancel-button,
[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */

::-webkit-file-upload-button {
  -webkit-appearance: button; /* 1 */
  font: inherit; /* 2 */
}

/* Interactive
   ========================================================================== */

/*
 * Add the correct display in IE 9-.
 * 1. Add the correct display in Edge, IE, and Firefox.
 */

details, /* 1 */
menu {
  display: block;
}

/*
 * Add the correct display in all browsers.
 */

summary {
  display: list-item;
}

/* Scripting
   ========================================================================== */

/**
 * Add the correct display in IE 9-.
 */

canvas {
  display: inline-block;
}

/**
 * Add the correct display in IE.
 */

template {
  display: none;
}

/* Hidden
   ========================================================================== */

/**
 * Add the correct display in IE 10-.
 */

[hidden] {
  display: none;
}

@charset "UTF-8";

/*!
 * animate.css -http://daneden.me/animate
 * Version - 3.5.1
 * Licensed under the MIT license - http://opensource.org/licenses/MIT
 *
 * Copyright (c) 2016 Daniel Eden
 */

.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.flipOutX,
.animated.flipOutY,
.animated.bounceIn,
.animated.bounceOut {
  -webkit-animation-duration: .75s;
  animation-duration: .75s;
}

@-webkit-keyframes bounce {
  from, 20%, 53%, 80%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000);
    animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000);
    -webkit-transform: translate3d(0,0,0);
    transform: translate3d(0,0,0);
  }

  40%, 43% {
    -webkit-animation-timing-function: cubic-bezier(0.755, 0.050, 0.855, 0.060);
    animation-timing-function: cubic-bezier(0.755, 0.050, 0.855, 0.060);
    -webkit-transform: translate3d(0, -30px, 0);
    transform: translate3d(0, -30px, 0);
  }

  70% {
    -webkit-animation-timing-function: cubic-bezier(0.755, 0.050, 0.855, 0.060);
    animation-timing-function: cubic-bezier(0.755, 0.050, 0.855, 0.060);
    -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.610, 0.355, 1.000);
    animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000);
    -webkit-transform: translate3d(0,0,0);
    transform: translate3d(0,0,0);
  }

  40%, 43% {
    -webkit-animation-timing-function: cubic-bezier(0.755, 0.050, 0.855, 0.060);
    animation-timing-function: cubic-bezier(0.755, 0.050, 0.855, 0.060);
    -webkit-transform: translate3d(0, -30px, 0);
    transform: translate3d(0, -30px, 0);
  }

  70% {
    -webkit-animation-timing-function: cubic-bezier(0.755, 0.050, 0.855, 0.060);
    animation-timing-function: cubic-bezier(0.755, 0.050, 0.855, 0.060);
    -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(.95, 1.05, 1);
    transform: scale3d(.95, 1.05, 1);
  }

  75% {
    -webkit-transform: scale3d(1.05, .95, 1);
    transform: scale3d(1.05, .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(.95, 1.05, 1);
    transform: scale3d(.95, 1.05, 1);
  }

  75% {
    -webkit-transform: scale3d(1.05, .95, 1);
    transform: scale3d(1.05, .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 headShake {
  0% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }

  6.5% {
    -webkit-transform: translateX(-6px) rotateY(-9deg);
    transform: translateX(-6px) rotateY(-9deg);
  }

  18.5% {
    -webkit-transform: translateX(5px) rotateY(7deg);
    transform: translateX(5px) rotateY(7deg);
  }

  31.5% {
    -webkit-transform: translateX(-3px) rotateY(-5deg);
    transform: translateX(-3px) rotateY(-5deg);
  }

  43.5% {
    -webkit-transform: translateX(2px) rotateY(3deg);
    transform: translateX(2px) rotateY(3deg);
  }

  50% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
}

@keyframes headShake {
  0% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }

  6.5% {
    -webkit-transform: translateX(-6px) rotateY(-9deg);
    transform: translateX(-6px) rotateY(-9deg);
  }

  18.5% {
    -webkit-transform: translateX(5px) rotateY(7deg);
    transform: translateX(5px) rotateY(7deg);
  }

  31.5% {
    -webkit-transform: translateX(-3px) rotateY(-5deg);
    transform: translateX(-3px) rotateY(-5deg);
  }

  43.5% {
    -webkit-transform: translateX(2px) rotateY(3deg);
    transform: translateX(2px) rotateY(3deg);
  }

  50% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
}

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

@-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(.9, .9, .9) rotate3d(0, 0, 1, -3deg);
    transform: scale3d(.9, .9, .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(.9, .9, .9) rotate3d(0, 0, 1, -3deg);
    transform: scale3d(.9, .9, .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.390625deg) skewY(0.390625deg);
    transform: skewX(0.390625deg) skewY(0.390625deg);
  }

  88.8% {
    -webkit-transform: skewX(-0.1953125deg) skewY(-0.1953125deg);
    transform: skewX(-0.1953125deg) skewY(-0.1953125deg);
  }
}

@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.390625deg) skewY(0.390625deg);
    transform: skewX(0.390625deg) skewY(0.390625deg);
  }

  88.8% {
    -webkit-transform: skewX(-0.1953125deg) skewY(-0.1953125deg);
    transform: skewX(-0.1953125deg) skewY(-0.1953125deg);
  }
}

.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.610, 0.355, 1.000);
    animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000);
  }

  0% {
    opacity: 0;
    -webkit-transform: scale3d(.3, .3, .3);
    transform: scale3d(.3, .3, .3);
  }

  20% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1);
    transform: scale3d(1.1, 1.1, 1.1);
  }

  40% {
    -webkit-transform: scale3d(.9, .9, .9);
    transform: scale3d(.9, .9, .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(.97, .97, .97);
    transform: scale3d(.97, .97, .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.610, 0.355, 1.000);
    animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000);
  }

  0% {
    opacity: 0;
    -webkit-transform: scale3d(.3, .3, .3);
    transform: scale3d(.3, .3, .3);
  }

  20% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1);
    transform: scale3d(1.1, 1.1, 1.1);
  }

  40% {
    -webkit-transform: scale3d(.9, .9, .9);
    transform: scale3d(.9, .9, .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(.97, .97, .97);
    transform: scale3d(.97, .97, .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.610, 0.355, 1.000);
    animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000);
  }

  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.610, 0.355, 1.000);
    animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000);
  }

  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.610, 0.355, 1.000);
    animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000);
  }

  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.610, 0.355, 1.000);
    animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000);
  }

  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.610, 0.355, 1.000);
    animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000);
  }

  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.610, 0.355, 1.000);
    animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000);
  }

  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.610, 0.355, 1.000);
    animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000);
  }

  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.610, 0.355, 1.000);
    animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000);
  }

  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(.9, .9, .9);
    transform: scale3d(.9, .9, .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(.3, .3, .3);
    transform: scale3d(.3, .3, .3);
  }
}

@keyframes bounceOut {
  20% {
    -webkit-transform: scale3d(.9, .9, .9);
    transform: scale3d(.9, .9, .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(.3, .3, .3);
    transform: scale3d(.3, .3, .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(.95, .95, .95);
    transform: perspective(400px) scale3d(.95, .95, .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(.95, .95, .95);
    transform: perspective(400px) scale3d(.95, .95, .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(.3, .3, .3);
    transform: scale3d(.3, .3, .3);
  }

  50% {
    opacity: 1;
  }
}

@keyframes zoomIn {
  from {
    opacity: 0;
    -webkit-transform: scale3d(.3, .3, .3);
    transform: scale3d(.3, .3, .3);
  }

  50% {
    opacity: 1;
  }
}

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

@-webkit-keyframes zoomInDown {
  from {
    opacity: 0;
    -webkit-transform: scale3d(.1, .1, .1) translate3d(0, -1000px, 0);
    transform: scale3d(.1, .1, .1) translate3d(0, -1000px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190);
    animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190);
  }

  60% {
    opacity: 1;
    -webkit-transform: scale3d(.475, .475, .475) translate3d(0, 60px, 0);
    transform: scale3d(.475, .475, .475) translate3d(0, 60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1);
  }
}

@keyframes zoomInDown {
  from {
    opacity: 0;
    -webkit-transform: scale3d(.1, .1, .1) translate3d(0, -1000px, 0);
    transform: scale3d(.1, .1, .1) translate3d(0, -1000px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190);
    animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190);
  }

  60% {
    opacity: 1;
    -webkit-transform: scale3d(.475, .475, .475) translate3d(0, 60px, 0);
    transform: scale3d(.475, .475, .475) translate3d(0, 60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1);
  }
}

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

@-webkit-keyframes zoomInLeft {
  from {
    opacity: 0;
    -webkit-transform: scale3d(.1, .1, .1) translate3d(-1000px, 0, 0);
    transform: scale3d(.1, .1, .1) translate3d(-1000px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190);
    animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190);
  }

  60% {
    opacity: 1;
    -webkit-transform: scale3d(.475, .475, .475) translate3d(10px, 0, 0);
    transform: scale3d(.475, .475, .475) translate3d(10px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1);
  }
}

@keyframes zoomInLeft {
  from {
    opacity: 0;
    -webkit-transform: scale3d(.1, .1, .1) translate3d(-1000px, 0, 0);
    transform: scale3d(.1, .1, .1) translate3d(-1000px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190);
    animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190);
  }

  60% {
    opacity: 1;
    -webkit-transform: scale3d(.475, .475, .475) translate3d(10px, 0, 0);
    transform: scale3d(.475, .475, .475) translate3d(10px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1);
  }
}

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

@-webkit-keyframes zoomInRight {
  from {
    opacity: 0;
    -webkit-transform: scale3d(.1, .1, .1) translate3d(1000px, 0, 0);
    transform: scale3d(.1, .1, .1) translate3d(1000px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190);
    animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190);
  }

  60% {
    opacity: 1;
    -webkit-transform: scale3d(.475, .475, .475) translate3d(-10px, 0, 0);
    transform: scale3d(.475, .475, .475) translate3d(-10px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1);
  }
}

@keyframes zoomInRight {
  from {
    opacity: 0;
    -webkit-transform: scale3d(.1, .1, .1) translate3d(1000px, 0, 0);
    transform: scale3d(.1, .1, .1) translate3d(1000px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190);
    animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190);
  }

  60% {
    opacity: 1;
    -webkit-transform: scale3d(.475, .475, .475) translate3d(-10px, 0, 0);
    transform: scale3d(.475, .475, .475) translate3d(-10px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1);
  }
}

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

@-webkit-keyframes zoomInUp {
  from {
    opacity: 0;
    -webkit-transform: scale3d(.1, .1, .1) translate3d(0, 1000px, 0);
    transform: scale3d(.1, .1, .1) translate3d(0, 1000px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190);
    animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190);
  }

  60% {
    opacity: 1;
    -webkit-transform: scale3d(.475, .475, .475) translate3d(0, -60px, 0);
    transform: scale3d(.475, .475, .475) translate3d(0, -60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1);
  }
}

@keyframes zoomInUp {
  from {
    opacity: 0;
    -webkit-transform: scale3d(.1, .1, .1) translate3d(0, 1000px, 0);
    transform: scale3d(.1, .1, .1) translate3d(0, 1000px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190);
    animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190);
  }

  60% {
    opacity: 1;
    -webkit-transform: scale3d(.475, .475, .475) translate3d(0, -60px, 0);
    transform: scale3d(.475, .475, .475) translate3d(0, -60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1);
  }
}

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

@-webkit-keyframes zoomOut {
  from {
    opacity: 1;
  }

  50% {
    opacity: 0;
    -webkit-transform: scale3d(.3, .3, .3);
    transform: scale3d(.3, .3, .3);
  }

  to {
    opacity: 0;
  }
}

@keyframes zoomOut {
  from {
    opacity: 1;
  }

  50% {
    opacity: 0;
    -webkit-transform: scale3d(.3, .3, .3);
    transform: scale3d(.3, .3, .3);
  }

  to {
    opacity: 0;
  }
}

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

@-webkit-keyframes zoomOutDown {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(.475, .475, .475) translate3d(0, -60px, 0);
    transform: scale3d(.475, .475, .475) translate3d(0, -60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190);
    animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190);
  }

  to {
    opacity: 0;
    -webkit-transform: scale3d(.1, .1, .1) translate3d(0, 2000px, 0);
    transform: scale3d(.1, .1, .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.320, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1);
  }
}

@keyframes zoomOutDown {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(.475, .475, .475) translate3d(0, -60px, 0);
    transform: scale3d(.475, .475, .475) translate3d(0, -60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190);
    animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190);
  }

  to {
    opacity: 0;
    -webkit-transform: scale3d(.1, .1, .1) translate3d(0, 2000px, 0);
    transform: scale3d(.1, .1, .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.320, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1);
  }
}

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

@-webkit-keyframes zoomOutLeft {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(.475, .475, .475) translate3d(42px, 0, 0);
    transform: scale3d(.475, .475, .475) translate3d(42px, 0, 0);
  }

  to {
    opacity: 0;
    -webkit-transform: scale(.1) translate3d(-2000px, 0, 0);
    transform: scale(.1) translate3d(-2000px, 0, 0);
    -webkit-transform-origin: left center;
    transform-origin: left center;
  }
}

@keyframes zoomOutLeft {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(.475, .475, .475) translate3d(42px, 0, 0);
    transform: scale3d(.475, .475, .475) translate3d(42px, 0, 0);
  }

  to {
    opacity: 0;
    -webkit-transform: scale(.1) translate3d(-2000px, 0, 0);
    transform: scale(.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(.475, .475, .475) translate3d(-42px, 0, 0);
    transform: scale3d(.475, .475, .475) translate3d(-42px, 0, 0);
  }

  to {
    opacity: 0;
    -webkit-transform: scale(.1) translate3d(2000px, 0, 0);
    transform: scale(.1) translate3d(2000px, 0, 0);
    -webkit-transform-origin: right center;
    transform-origin: right center;
  }
}

@keyframes zoomOutRight {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(.475, .475, .475) translate3d(-42px, 0, 0);
    transform: scale3d(.475, .475, .475) translate3d(-42px, 0, 0);
  }

  to {
    opacity: 0;
    -webkit-transform: scale(.1) translate3d(2000px, 0, 0);
    transform: scale(.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(.475, .475, .475) translate3d(0, 60px, 0);
    transform: scale3d(.475, .475, .475) translate3d(0, 60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190);
    animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190);
  }

  to {
    opacity: 0;
    -webkit-transform: scale3d(.1, .1, .1) translate3d(0, -2000px, 0);
    transform: scale3d(.1, .1, .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.320, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.320, 1);
  }
}

@keyframes zoomOutUp {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(.475, .475, .475) translate3d(0, 60px, 0);
    transform: scale3d(.475, .475, .475) translate3d(0, 60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190);
    animation-timing-function: cubic-bezier(0.550, 0.055, 0.675, 0.190);
  }

  to {
    opacity: 0;
    -webkit-transform: scale3d(.1, .1, .1) translate3d(0, -2000px, 0);
    transform: scale3d(.1, .1, .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.320, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.320, 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;
}

/*
Theme Name: Comeback Media
Theme URI: http://thecomeback.com
Author: WebDevStudios
Author URI: https://webdevstudios.com
Description: A spiffy new theme for Comeback Media by WebDevStudios based on wd_s.
Version: 1.3.3
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: comeback
Tags: custom

This theme, like WordPress, is licensed under the GPL.

Based on Underscores http://underscores.me/, (C) 2012-2016 Automattic, Inc.

*/
html {
  box-sizing: border-box;
}

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

body,
button,
input,
select,
textarea {
  color: #2c2d31;
  font-family: "ff-tisa-web-pro", serif;
  font-size: 1.25rem;
  font-weight: 400;
  line-height: 1.625;
}

h1,
.h1 {
  font-family: "freight-sans-pro", sans-serif;
  font-size: 2.625rem;
  font-weight: 700;
}

h2,
.h2,
.entry-title {
  font-family: "freight-sans-pro", sans-serif;
  font-size: 1.75rem;
  font-weight: 700;
}

h3,
.h3,
.horizontal-blog-card .card-title .entry-title {
  font-family: "freight-sans-pro", sans-serif;
  font-size: 1.375rem;
  font-weight: 700;
}

h4,
.h4,
.cat-links a,
.horizontal-blog-card footer .byline {
  font-family: "freight-sans-pro", sans-serif;
  font-size: 1.25rem;
  font-weight: 700;
  letter-spacing: 0.125rem;
  text-transform: uppercase;
}

h5,
.h5,
.secondary .widget .widget-title {
  font-family: "freight-sans-pro", sans-serif;
  font-size: 1.25rem;
  font-weight: 700;
}

h6,
.h6,
.below-posts .widget_bloguin_link_box_widget .widget-title {
  font-family: "freight-sans-pro", sans-serif;
  font-size: 1.125rem;
  font-weight: 700;
}

p {
  font-family: "ff-tisa-web-pro", serif;
  font-size: 1.125rem;
  font-weight: 400;
  line-height: 1.6;
  margin: 0 0 1.5rem 0;
}

b,
strong {
  font-weight: 700;
}

dfn,
cite,
em,
i {
  font-style: italic;
}

blockquote,
q {
  color: #595b61;
  font-size: 1.125rem;
  margin: 0 0 0 1.25rem;
  padding-left: 0.9375rem;
  position: relative;
}

blockquote::before, blockquote::after,
q::before,
q::after {
  content: "";
}

blockquote::before,
q::before {
  position: absolute;
  top: 0.375rem;
  left: 0;
  height: 90%;
  width: 0.125rem;
  background-color: #f4b225;
  display: block;
}

address {
  margin: 0 0 1.5rem 0;
}

pre {
  font-family: "Courier 10 Pitch", Courier, monospace;
  font-size: 0.9375rem;
  line-height: 1.625;
  margin: 0 0 1.5rem;
  max-width: 100%;
  overflow: auto;
  padding: 1.5rem;
}

code,
kbd,
tt,
var {
  font-family: Monaco, Consolas, "Andale Mono", "DejaVu Sans Mono", monospace;
  font-size: 0.9375rem;
}

abbr,
acronym {
  border-bottom: none;
  cursor: help;
  text-decoration: none;
}

abbr[title] {
  text-decoration: none;
}

mark,
ins {
  text-decoration: none;
}

sup,
sub {
  font-size: 75%;
  height: 0;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sup {
  bottom: 1ex;
}

sub {
  top: 0.5ex;
}

small {
  font-size: 75%;
}

big {
  font-size: 125%;
}

.entry-title,
.entry-content,
.comments-title,
.comment-content,
.widget-title,
.widget {
  word-break: keep-all;
  word-wrap: break-word;
}

a:not(.button) {
  border-bottom: 0.125rem solid #f4b225;
  font-style: italic;
  text-decoration: none;
  transition: color 0.18s ease-out;
}

a:not(.button).featured-post {
  border: none;
}

.entry-title {
  line-height: 1.1363636;
}

.entry-title a {
  border: none;
  font-style: normal;
}

.entry-meta {
  font-size: 1.125rem;
  font-style: italic;
}

.entry-meta a {
  border: none;
  color: #595b61;
}

.screen-reader-text {
  height: 0.0625rem;
  width: 0.0625rem;
  clip: rect(0.0625rem, 0.0625rem, 0.0625rem, 0.0625rem);
  overflow: hidden;
  position: absolute;
  white-space: nowrap;
}

.screen-reader-text:focus {
  height: auto;
  width: auto;
  position: relative;
  top: 0.3125rem;
  right: 0;
  bottom: 0;
  left: 0.3125rem;
  background-color: #f1f1f1;
  border-radius: 3px;
  box-shadow: 0 0 0.125rem 0.125rem rgba(0, 0, 0, 0.6);
  clip: auto;
  color: #1e1e22;
  display: block;
  font-size: 0.875rem;
  font-weight: 700;
  line-height: normal;
  padding: 0.9375rem 1.4375rem 0.875rem;
  text-decoration: none;
  z-index: 100000;
}

.alignleft {
  display: inline;
  float: left;
  margin: 0 1.5rem 0 0;
}

.alignright {
  display: inline;
  float: right;
  margin: 0 0 0 1.5rem;
}

.aligncenter {
  display: block;
  margin-left: auto;
  margin-right: auto;
}

.clear::after, .below-content .featured::after, .below-posts::after,
.entry-content::after,
.comment-content::after,
.site-header::after,
.site-content::after,
.site-footer::after {
  clear: both;
  content: "";
  display: block;
}

embed,
iframe,
object {
  max-width: 100%;
}

hr {
  height: 1px;
  width: auto;
  background-color: #ccc;
  border: 0;
  margin: 0 0 1.5rem 0;
}

figure {
  margin: 0;
}

ul,
ol {
  margin: 0 0 3rem 1.5rem;
}

ul {
  list-style: disc;
}

ol {
  list-style: decimal;
}

li > ul,
li > ol {
  margin: 0 0 0 1.5rem;
}

dt {
  font-weight: 700;
}

dd {
  margin: 0 1.5rem 1.5rem 0;
}

table {
  height: auto;
  width: 100%;
  margin: 0 0 1.5rem 0;
}

th {
  font-weight: 700;
}

.page-content img.wp-smiley,
.entry-content img.wp-smiley,
.comment-content img.wp-smiley {
  margin: 0;
  padding: 0;
  border: none;
}

img {
  height: auto;
  max-width: 100%;
}

.gallery a {
  border: none;
}

.wp-caption {
  margin: 0 0 1.5rem 0;
  max-width: 100%;
}

.wp-caption img[class*="wp-image-"] {
  display: block;
  margin: 0 auto;
}

.wp-caption.aligncenter {
  margin: 0 auto 1.5rem auto;
}

.wp-caption.alignleft {
  margin-right: 1.5rem;
}

.wp-caption.alignright {
  margin-left: 1.5rem;
}

.wp-caption .wp-caption-text {
  margin: 0;
}

.wp-caption-text {
  font-size: 90%;
  font-style: italic;
  text-align: center;
}

.gallery {
  margin: 0 0 1.5rem 0;
}

.gallery-item {
  height: auto;
  width: 100%;
  display: inline-block;
  text-align: center;
  vertical-align: top;
}

.gallery-columns-2 .gallery-item {
  max-width: 50%;
}

.gallery-columns-3 .gallery-item {
  max-width: 33.33%;
}

.gallery-columns-4 .gallery-item {
  max-width: 25%;
}

.gallery-columns-5 .gallery-item {
  max-width: 20%;
}

.gallery-columns-6 .gallery-item {
  max-width: 16.66%;
}

.gallery-columns-7 .gallery-item {
  max-width: 14.28%;
}

.gallery-columns-8 .gallery-item {
  max-width: 12.5%;
}

.gallery-columns-9 .gallery-item {
  max-width: 11.11%;
}

.gallery-caption {
  display: block;
}

.fluid-embed {
  height: 0;
  overflow: hidden;
  padding-bottom: 56.25%;
  position: relative;
}

.fluid-embed embed,
.fluid-embed object,
.fluid-embed iframe {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
}

.image-as-background {
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
}

.video-as-background {
  height: 100%;
  width: 100%;
  display: block;
  object-fit: cover;
  object-position: center top;
  position: absolute;
  z-index: 1;
}

.svg-defs {
  display: none;
}

.image-caption {
	margin: 12px 0;
	display: block;
	font-size: 13px;
    display: none;
}

body.single .image-caption { display: block; }

.not-ready {
  opacity: 0;
  transition: opacity 0.5s ease;
  visibility: hidden;
}

.ready .not-ready {
  opacity: 1;
  visibility: visible;
}

.pattern-section {
  border-bottom: 0.0625rem solid #000;
  margin-bottom: 1.25em;
}

.pattern-section-header h2 {
  margin: 0;
  padding: 0;
}

.pattern-section-header p {
  font-style: italic;
  margin-top: 0.75rem;
}

.pattern-section-content {
  border-bottom: 0.0625rem solid #808080;
  padding-bottom: 0.625em;
}

.pattern-section-content h4,
.pattern-section-content p {
  margin: 0.625em 0;
}

.pattern-section-content pre {
  background-color: #fff;
  border: 0.0625rem solid #ddd;
  color: #808080;
  margin: 0 0 0.625em;
  padding: 0.625em;
}

.pattern-section-content code {
  background-color: #ddd;
  font-size: 0.8125rem;
  padding: 0.3125rem;
}

.swatch-container {
  position: relative;
}

.swatch-container::after {
  clear: both;
  content: "";
  display: block;
}

.swatch-container .swatch {
  height: 7.8125rem;
  width: 100%;
  float: left;
  display: block;
  margin-right: 1.20482%;
  width: 24.09639%;
  border: 0.0625rem solid #000;
  border-radius: 0.3125rem;
  margin-bottom: 0.625em;
  position: relative;
  text-align: center;
}

.swatch-container .swatch:last-child {
  margin-right: 0;
}

.swatch-container .swatch header {
  color: #000;
  padding-top: 1.5625rem;
}

.swatch-container .swatch footer {
  position: absolute;
  bottom: 0;
  background-color: #fff;
  border-bottom-left-radius: 0.3125rem;
  border-bottom-right-radius: 0.3125rem;
  font-size: 0.75rem;
  padding: 0.625rem;
  width: 100%;
}

.wrap {
  max-width: 80em;
  margin-left: auto;
  margin-right: auto;
  padding: 0 1.25em;
}

.wrap::after {
  clear: both;
  content: "";
  display: block;
}

.site-header {
  padding: 0;
}

.site-header .wrap {
  max-width: none;
}

.site-content {
  margin: 1.25rem auto;
}

.primary {
  width: 100%;
}

.primary .site-main {
  clear: both;
}

.secondary {
  width: 100%;
  background: #f7f7f7;
  margin-bottom: 3rem;
  margin-top: 1.875rem;
  padding: 0.625rem;
}

.full-width {
  position: relative;
  right: 50%;
  left: 50%;
  margin-left: -50vw;
  margin-right: -50vw;
  width: 100vw;
}

.comment-reply-title {
  margin-top: 0;
}

.comments-title {
  font-size: 1.5rem;
}

.comment-list {
  list-style: none;
  margin: 0;
}

.comment-meta {
  margin: 0 0 0.875rem 0;
}

.avatar {
  float: left;
  margin: 0 0.625rem 0 0;
}

.bypostauthor {
  display: block;
}

.comment-form {
  width: 100%;
}

.comment-form input:not(.submit) {
  width: 100%;
}

.comment-form-author label,
.comment-form-email label,
.comment-form-url label {
  float: left;
  display: block;
  margin-right: 1.20482%;
  width: 100%;
}

.comment-form-author label:last-child,
.comment-form-email label:last-child,
.comment-form-url label:last-child {
  margin-right: 0;
}

.comment-list .children {
  margin-left: 0;
  padding-left: 1.25rem;
}

.single .comment-wrap {
  height: 0;
  margin-bottom: 2.125rem;
  opacity: 0;
  overflow: hidden;
  padding: 0.625em 0;
  transition: height 0.25s ease-out, opacity 0.25s ease-out;
}

.single .comment-wrap.open {
  opacity: 1;
}

.single .comment-toggle {
  font-weight: 700;
  letter-spacing: 0.08125rem;
}

.single .comments-area label {
  color: #2c2d31;
}

.sticky,
.comments-link {
  display: block;
}

.hentry {
  margin: 0 0 1.5rem 0;
}

.byline,
.updated:not(.published) {
  display: none;
}

.single .byline,
.group-blog .byline {
  display: inline;
}

.page-content,
.entry-content,
.entry-summary {
  margin: 1.1875rem 0 0;
}

.page-links {
  clear: both;
  margin: 0 0 1.5rem 0;
}

.edit-link {
  margin: 0 1.5rem;
}

.blog .format-aside .entry-title,
.archive .format-aside .entry-title {
  display: none;
}

.site-footer {
  background-color: #1e1e22;
  color: #fff;
}

.footer-top {
  background-color: #1e1e22;
}

.footer-top .widget {
  margin-bottom: 0;
}

.footer-top .widget + .widget {
  margin-top: 1.5rem;
}

.footer-top .footer-navigation {
  display: none;
}

.footer-top .menu-primary-menu-container a {
  color: #fff;
  font-family: "freight-sans-pro", sans-serif;
  font-size: 1.125rem;
  font-style: normal;
  font-weight: 600;
  padding: 1.125rem 0.625rem;
  text-transform: uppercase;
}

.footer-top .menu-primary-menu-container li {
  display: inline-block;
  float: none;
}

.footer-top .menu-primary-menu-container .menu-item-has-children {
  position: relative;
}

.footer-top .menu-primary-menu-container .menu-item-has-children a {
  padding-right: 1.75rem;
}

.footer-top .menu-primary-menu-container .menu-item-has-children > a {
  position: relative;
}

.footer-top .menu-primary-menu-container .menu-item-has-children > a::after {
  transform: rotate(180deg);
}

.footer-top .menu-primary-menu-container .menu-item-has-children ul {
  position: absolute;
  bottom: 100%;
  float: left;
}

.footer-top .menu-primary-menu-container .menu-item-has-children ul ul {
  bottom: 0;
  right: -999em;
  top: auto;
}

.footer-bottom {
  background-color: #2c2c31;
  padding-top: 2.625rem;
}

.footer-bottom a {
  color: #fff;
}

.footer-bottom .widget {
  display: inline-block;
  padding: 0.625em 0 0;
  text-align: center;
  width: 100%;
}

.footer-bottom .site-info {
  margin-top: 3.125rem;
}

.footer-bottom .site-info p {
  font-size: 1.25rem;
  line-height: 1.5;
}

.footer-bottom .sitelist {
  display: none;
  margin-top: 0.8125rem;
}

.footer-bottom .sitelist h3 {
  font-size: 1.125rem;
  letter-spacing: 0.09375rem;
  margin-bottom: 0.5625rem;
  margin-top: 0;
  text-transform: uppercase;
}

.footer-bottom .sitelist .dropdown-wrap {
  margin-bottom: 0.625rem;
  margin-right: 0.625rem;
}

.footer-bottom .sitelist .dropdown-toggle {
  width: 100%;
}

.footer-bottom .sitelist .dropdown-list a:hover,
.footer-bottom .sitelist .dropdown-list a:active,
.footer-bottom .sitelist .dropdown-list a:focus {
  background: #f4b225;
}

.footer-top .sitelist {
  margin-bottom: 1rem;
  margin-left: auto;
  margin-right: auto;
  max-width: 100%;
  text-align: center;
  width: 18.75rem;
}

.footer-top .sitelist h3 {
  font-size: 1.125rem;
  margin: 0.25rem 0;
  text-transform: uppercase;
}

.footer-top .sitelist .dropdown-wrap,
.footer-top .sitelist .dropdown-toggle {
  width: 100%;
}

.footer-bottom .footer-logos {
  display: inline-block;
  vertical-align: middle;
}

.footer-bottom .footer-logos .logo-wrap {
  display: inline-block;
  margin-left: 0.625rem;
  max-width: 11.875rem;
}

.footer-bottom .footer-logos .logo-wrap:first-child {
  margin-left: 0;
}

.footer-bottom .footer-logos.mobile-only {
  text-align: center;
  vertical-align: baseline;
  width: 100%;
}

.footer-bottom .footer-logos.mobile-only .logo-wrap {
  display: block;
  margin: 0 auto;
}

.footer-bottom .footer-logos.mobile-only .wds_comeback_footer_logo_1_wrap {
  margin-bottom: 1.5rem;
}

.footer-top .social-icons {
  display: block;
  margin-top: 0.4375rem;
  padding: 0.4375rem 0;
  text-align: center;
}

button,
input,
select,
textarea {
  font-size: 100%;
  margin: 0;
  vertical-align: baseline;
}

input[type="checkbox"],
input[type="radio"] {
  padding: 0;
}

input[type="text"]::-ms-clear,
input[type="search"]::-ms-clear {
  display: none;
}

input[type="search"] {
  -webkit-appearance: textfield;
  box-sizing: content-box;
}

input[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  padding: 0;
}

input[type="text"],
input[type="email"],
input[type="url"],
input[type="password"],
input[type="search"],
input[type="number"],
input[type="tel"],
input[type="range"],
input[type="date"],
input[type="month"],
input[type="week"],
input[type="time"],
input[type="datetime"],
input[type="datetime-local"],
input[type="color"],
textarea {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border: 0.0625rem solid #ccc;
  border-radius: 3px;
  color: #57545b;
  font-size: 1.125rem;
  line-height: 1.5;
  padding: 0.75rem 1.25rem 0.8125rem;
}

input[type="text"]:focus,
input[type="email"]:focus,
input[type="url"]:focus,
input[type="password"]:focus,
input[type="search"]:focus,
input[type="number"]:focus,
input[type="tel"]:focus,
input[type="range"]:focus,
input[type="date"]:focus,
input[type="month"]:focus,
input[type="week"]:focus,
input[type="time"]:focus,
input[type="datetime"]:focus,
input[type="datetime-local"]:focus,
input[type="color"]:focus,
textarea:focus {
  border: 0.125rem solid #edbc00;
  color: #57545b;
  outline-color: #edbc00;
  padding: 0.6875rem 1.1875rem 0.75rem;
}

textarea {
  height: auto;
  width: 100%;
  overflow: auto;
  vertical-align: top;
}

label {
  color: #fff;
  display: block;
  font-family: "freight-sans-pro", sans-serif;
  font-size: 1rem;
  font-weight: 500;
  letter-spacing: 0.125rem;
  margin-bottom: 0.5rem;
  text-transform: uppercase;
}

select {
  border-radius: 3px;
  font-size: 1.125rem;
  padding: 0.5rem 1.375rem 0.5625rem;
}

select:focus {
  border: 0.125rem solid #edbc00;
  color: #57545b;
  outline-color: #edbc00;
  padding: 0.4375rem 1.3125rem 0.5rem;
}

.fancy-selectbox {
  position: relative;
  background: #fff;
  border: 0.0625rem solid #333;
  display: inline-block;
  max-height: 3.375rem;
}

.fancy-selectbox select {
  position: relative;
  height: 100%;
  width: 100%;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background: transparent;
  border: none;
  display: inline-block;
  padding: 0.6875rem 4.375rem 0.875rem 1.375rem;
  z-index: 1;
}

.fancy-selectbox select::-ms-expand {
  display: none;
}

.fancy-selectbox select:focus {
  border: 0.125rem solid #edbc00;
  padding: 0.5625rem 4.25rem 0.75rem 1.25rem;
}

.fancy-selectbox svg {
  position: absolute;
  top: 50%;
  right: 1.1875rem;
  height: 1.5rem;
  width: 1.625rem;
  border-left: 0.0625rem solid #6b6461;
  fill: #6b6461;
  margin-left: 0.9375rem;
  padding: 0.4375rem 0 0.4375rem 0.9375rem;
  transform: translateY(-50%);
  z-index: 0;
}

.search-form {
  display: -ms-flexbox;
  display: flex;
  position: relative;
}

.search-form .search-field {
  border: 0.0625rem solid #d9e0e0;
  border-radius: 0;
  border-right: none;
  padding: 0.4375rem 0.5625rem 0.375rem;
}

.search-form .search-field:focus {
  padding: 0.375rem 0.5rem 0.3125rem;
}

.search-form ::-webkit-input-placeholder {
  color: #595b61;
  font-style: italic;
}

.search-form ::-moz-placeholder {
  color: #595b61;
  font-style: italic;
  opacity: 1;
}

.search-form :-ms-input-placeholder {
  color: #595b61;
  font-style: italic;
}

.button,
button,
input[type="button"],
input[type="reset"],
input[type="submit"] {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border: none;
  border-radius: 3px;
  border-width: 0;
  color: #fff;
  display: inline-block;
  font-family: "freight-sans-pro", sans-serif;
  font-size: 1.125rem;
  font-weight: 600;
  letter-spacing: 0.0625rem;
  line-height: 1.45;
  margin: 0;
  padding: 0.6875rem 1.75rem;
  text-decoration: none;
  text-transform: uppercase;
  transition: opacity 0.18s ease-out;
}

.ie .button, .ie
button, .ie
input[type="button"], .ie
input[type="reset"], .ie
input[type="submit"] {
  height: 3rem;
}

.button:visited,
button:visited,
input[type="button"]:visited,
input[type="reset"]:visited,
input[type="submit"]:visited {
  color: #fff;
}

.button-primary {
  background-color: #edbc00;
}

.button-primary:hover {
  background-color: #f7cf48;
  color: #fff;
}

.button-primary:active, .button-primary:focus {
  background-color: #f7cf48;
  color: #fff;
}

.button-secondary {
  background-color: #3f3c42;
}

.button-secondary:hover {
  background-color: #57545b;
}

.button-secondary:active, .button-secondary:focus {
  background-color: #57545b;
}

.button-outline {
  background: transparent;
  border: 0.125rem solid #3f3c42;
  color: #3f3c42;
  padding: 0.5625rem 1.625rem;
  transition: background-color 0.18s ease-out, color 0.18s ease-out;
}

.button-outline:hover, .button-outline:visited:hover {
  background-color: #3f3c42;
  color: #fff;
}

.button-outline:active, .button-outline:focus, .button-outline:visited:active, .button-outline:visited:focus {
  background-color: #3f3c42;
  color: #fff;
}

.button-outline:visited {
  color: #3f3c42;
}

.search-form button {
  background: #fff;
  border: 0.0625rem solid #d9e0e0;
  border-left: none;
  border-radius: 0;
  line-height: .8;
  padding: 0 0.4375rem;
}

.search-form button svg {
  height: 1.125rem;
  width: 1.1875rem;
  fill: #1e1e22;
}

.search-form button:hover {
  background-color: #f7cf48;
}

.search-form button:hover svg {
  fill: #fff;
}

.search-form button:active, .search-form button:focus {
  background-color: #f7cf48;
}

.search-form button:active svg, .search-form button:focus svg {
  fill: #fff;
}

.ie .search-form button {
  height: auto;
}

.site-title {
  font-size: 3rem;
}

.site-description {
  font-size: 1.5rem;
  margin: 0 0 1.5rem 0;
}

.site-header {
  background: #1e1e22;
  margin-top: 1.375rem;
  padding-bottom: 0.875rem;
  position: relative;
  transition: bottom 0.75s ease-in-out;
  width: 100%;
  z-index: 100;
}

.site-header.tapbar-hidden {
  bottom: -100%;
}

.site-header .search-form {
  -ms-flex-pack: center;
      justify-content: center;
  margin: 0.875rem 0 0;
  padding: 0.625rem 0;
}

.site-branding {
  display: block;
  z-index: 1;
}

.site-branding .custom-logo-link {
  border-bottom: none;
  display: block;
  max-height: 6.5625rem;
  padding-top: 0.4375rem;
  text-align: center;
}

.site-branding .custom-logo-link img {
  max-height: 6.5625rem;
  width: auto;
}

.site-navigation-wrap {
  position: absolute;
  top: 0.3125rem;
  transition: top 0.18s ease-in-out;
  background: #2c2c31;
  clear: both;
  position: relative;
}

.hero-area {
  overflow-y: hidden;
  position: relative;
  z-index: 1;
}

.hero-area::after {
  position: absolute;
  top: 0;
  right: 0;
  height: 100%;
  width: 100%;
  background-color: rgba(0, 0, 0, 0.6);
  content: "";
  z-index: 2;
}

.hero-area .hero-content {
  -ms-flex-align: center;
      align-items: center;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-pack: center;
      justify-content: center;
  margin: 0 auto;
  max-width: 31.25rem;
  min-height: 31.25rem;
  position: relative;
  text-align: center;
  z-index: 3;
}

.hero-area .hero-content .hero-title,
.hero-area .hero-content .hero-description,
.hero-area .hero-content .hero-button {
  color: #fff;
}

.hero-area .hero-content .hero-description {
  padding-bottom: 1.5rem;
}

.hero-area .hero-content .hero-button {
  padding: 0.75rem 2.5rem;
  background: transparent;
  border: 2px solid #fff;
}

.hero-area .hero-content .hero-button:hover {
  background: rgba(0, 0, 0, 0.7);
  text-decoration: none;
}

.social-icons {
  margin: 0;
  padding: 0;
  list-style: none;
  display: none;
  padding: 0.375rem 0.25rem 0.1875rem;
}

.social-icons::after {
  clear: both;
  content: "";
  display: block;
}

.social-icons::after {
  clear: both;
  content: "";
  display: block;
}

.social-icons .social-icon {
  display: inline-block;
}

.social-icons .social-icon .icon-facebook {
  height: 1.875rem;
  width: 1.875rem;
  fill: #fff;
  padding: 0.375rem;
}

.footer-top .social-icons .social-icon .icon-facebook {
  height: 4.125rem;
  width: 4.125rem;
  padding: 0.6875rem;
}

.social-icons .social-icon .icon-facebook:hover {
  fill: #3b5998;
}

.social-icons .social-icon .icon-facebook-square {
  height: 1.875rem;
  width: 1.875rem;
  fill: #fff;
  padding: 0.375rem;
}

.footer-top .social-icons .social-icon .icon-facebook-square {
  height: 4.125rem;
  width: 4.125rem;
  padding: 0.6875rem;
}

.social-icons .social-icon .icon-facebook-square:hover {
  fill: #3b5998;
}

.social-icons .social-icon .icon-googleplus {
  height: 1.875rem;
  width: 1.875rem;
  fill: #fff;
  padding: 0.375rem;
}

.footer-top .social-icons .social-icon .icon-googleplus {
  height: 4.125rem;
  width: 4.125rem;
  padding: 0.6875rem;
}

.social-icons .social-icon .icon-googleplus:hover {
  fill: #dd4b39;
}

.social-icons .social-icon .icon-googleplus-square {
  height: 1.875rem;
  width: 1.875rem;
  fill: #fff;
  padding: 0.375rem;
}

.footer-top .social-icons .social-icon .icon-googleplus-square {
  height: 4.125rem;
  width: 4.125rem;
  padding: 0.6875rem;
}

.social-icons .social-icon .icon-googleplus-square:hover {
  fill: #dd4b39;
}

.social-icons .social-icon .icon-instagram {
  height: 1.875rem;
  width: 1.875rem;
  fill: #fff;
  padding: 0.375rem;
}

.footer-top .social-icons .social-icon .icon-instagram {
  height: 4.125rem;
  width: 4.125rem;
  padding: 0.6875rem;
}

.social-icons .social-icon .icon-instagram:hover {
  fill: #517fa4;
}

.social-icons .social-icon .icon-instagram-square {
  height: 1.875rem;
  width: 1.875rem;
  fill: #fff;
  padding: 0.375rem;
}

.footer-top .social-icons .social-icon .icon-instagram-square {
  height: 4.125rem;
  width: 4.125rem;
  padding: 0.6875rem;
}

.social-icons .social-icon .icon-instagram-square:hover {
  fill: #517fa4;
}

.social-icons .social-icon .icon-linkedin {
  height: 1.875rem;
  width: 1.875rem;
  fill: #fff;
  padding: 0.375rem;
}

.footer-top .social-icons .social-icon .icon-linkedin {
  height: 4.125rem;
  width: 4.125rem;
  padding: 0.6875rem;
}

.social-icons .social-icon .icon-linkedin:hover {
  fill: #007bb6;
}

.social-icons .social-icon .icon-linkedin-square {
  height: 1.875rem;
  width: 1.875rem;
  fill: #fff;
  padding: 0.375rem;
}

.footer-top .social-icons .social-icon .icon-linkedin-square {
  height: 4.125rem;
  width: 4.125rem;
  padding: 0.6875rem;
}

.social-icons .social-icon .icon-linkedin-square:hover {
  fill: #007bb6;
}

.social-icons .social-icon .icon-pinterest {
  height: 1.875rem;
  width: 1.875rem;
  fill: #fff;
  padding: 0.375rem;
}

.footer-top .social-icons .social-icon .icon-pinterest {
  height: 4.125rem;
  width: 4.125rem;
  padding: 0.6875rem;
}

.social-icons .social-icon .icon-pinterest:hover {
  fill: #cb2027;
}

.social-icons .social-icon .icon-pinterest-square {
  height: 1.875rem;
  width: 1.875rem;
  fill: #fff;
  padding: 0.375rem;
}

.footer-top .social-icons .social-icon .icon-pinterest-square {
  height: 4.125rem;
  width: 4.125rem;
  padding: 0.6875rem;
}

.social-icons .social-icon .icon-pinterest-square:hover {
  fill: #cb2027;
}

.social-icons .social-icon .icon-rss {
  height: 1.875rem;
  width: 1.875rem;
  fill: #fff;
  padding: 0.375rem;
}

.footer-top .social-icons .social-icon .icon-rss {
  height: 4.125rem;
  width: 4.125rem;
  padding: 0.6875rem;
}

.social-icons .social-icon .icon-rss:hover {
  fill: #f90;
}

.social-icons .social-icon .icon-rss-square {
  height: 1.875rem;
  width: 1.875rem;
  fill: #fff;
  padding: 0.375rem;
}

.footer-top .social-icons .social-icon .icon-rss-square {
  height: 4.125rem;
  width: 4.125rem;
  padding: 0.6875rem;
}

.social-icons .social-icon .icon-rss-square:hover {
  fill: #f90;
}

.social-icons .social-icon .icon-twitter {
  height: 1.875rem;
  width: 1.875rem;
  fill: #fff;
  padding: 0.375rem;
}

.footer-top .social-icons .social-icon .icon-twitter {
  height: 4.125rem;
  width: 4.125rem;
  padding: 0.6875rem;
}

.social-icons .social-icon .icon-twitter:hover {
  fill: #00aced;
}

.social-icons .social-icon .icon-twitter-square {
  height: 1.875rem;
  width: 1.875rem;
  fill: #fff;
  padding: 0.375rem;
}

.footer-top .social-icons .social-icon .icon-twitter-square {
  height: 4.125rem;
  width: 4.125rem;
  padding: 0.6875rem;
}

.social-icons .social-icon .icon-twitter-square:hover {
  fill: #00aced;
}

.social-icons .social-icon .icon-youtube {
  height: 1.875rem;
  width: 1.875rem;
  fill: #fff;
  padding: 0.375rem;
}

.footer-top .social-icons .social-icon .icon-youtube {
  height: 4.125rem;
  width: 4.125rem;
  padding: 0.6875rem;
}

.social-icons .social-icon .icon-youtube:hover {
  fill: #b00;
}

.social-icons .social-icon .icon-youtube-square {
  height: 1.875rem;
  width: 1.875rem;
  fill: #fff;
  padding: 0.375rem;
}

.footer-top .social-icons .social-icon .icon-youtube-square {
  height: 4.125rem;
  width: 4.125rem;
  padding: 0.6875rem;
}

.social-icons .social-icon .icon-youtube-square:hover {
  fill: #b00;
}

.social-icons .social-icon .icon-rss,
.footer-top .social-icons .social-icon .icon-rss {
  padding: 0;
}

.footer-top .social-icons .social-icon {
  margin-right: 1rem;
}

.social-icons .social-icon:last-child,
.footer-top .social-icons .social-icon:last-child {
  margin-right: 0;
}

.social-icons .social-icon a {
  border-bottom: none;
  display: block;
  height: 2.4375rem;
}

.icon-left-arrow,
.icon-right-arrow,
.icon-nav-arrow {
  fill: none;
  stroke: #000;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-miterlimit: 10;
}

.more-icon {
  height: 1.0625rem;
  width: 1rem;
  background: url("assets/images/svg-icons/bars.svg") no-repeat;
  background-size: contain;
  display: inline-block;
}

.footer-bottom {
  padding-bottom: 4.375rem;
}

.mobile-nav-menu {
  position: fixed;
  bottom: 0;
  left: 0;
  height: 100%;
  width: 0;
  transition: background-color 0.2s linear, width 0.2s linear;
  background-color: transparent;
  display: block;
  z-index: 100;
}

.mobile-nav-menu.more {
  background-color: rgba(0, 0, 0, 0.7);
}

.mobile-nav-menu.more,
.mobile-nav-menu .sub-menu {
  width: 100%;
}

.mobile-nav-menu .sub-menu {
  transition: opacity 0.5s linear;
}

.admin-bar .mobile-nav-menu {
  padding-top: 3.5rem;
}

.mobile-nav-menu li {
  cursor: pointer;
}

.mobile-nav-menu .mobile-nav > li {
  -ms-flex: 1 0 20%;
      flex: 1 0 20%;
  margin: 0;
}

.mobile-nav-menu .mobile-nav > li a {
  padding: 0;
}

.mobile-nav-menu .mobile-nav {
  position: fixed;
  height: 4rem;
  width: 100vw;
  -ms-flex-align: end;
      align-items: flex-end;
  bottom: 0 !important;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
      justify-content: space-between;
  transition: bottom 0.75s ease-in-out;
}

.mobile-nav-menu .mobile-nav > li:nth-child(-n+5) {
  transition: opacity 0.5s ease;
  background-color: #2c2c31;
  border-top: 1px solid rgba(0, 0, 0, 0.1);
  -ms-flex: 1;
      flex: 1;
  height: 4.3125rem;
  text-align: center;
}

.mobile-nav-menu .mobile-nav > li:nth-child(-n+5) > a {
  color: #fff;
  display: block;
  font-family: "freight-sans-pro", sans-serif;
  font-size: 1.125rem;
  font-style: normal;
  font-weight: 600;
  height: 100%;
  line-height: 1.2;
  text-transform: uppercase;
}

.mobile-nav-menu .mobile-nav > li:nth-child(-n+5) > a span {
  position: relative;
  -ms-transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  top: 50%;
  transform: translateY(-50%);
  display: block;
}

.tapbar-hidden .mobile-nav-menu .mobile-nav {
  bottom: -100% !important;
}

.mobile-menu-more-link {
  min-width: 5.3125rem;
}

.mobile-menu-more-link span .more-icon {
  position: relative;
  top: 0.1875rem;
  right: 0;
}

.mobile-nav-menu-hidden {
  position: absolute;
  top: 0;
  right: 0;
  transition: opacity 0.5s linear;
  display: block;
  max-height: calc(100% - 70px);
  opacity: 0;
  overflow: auto;
  padding: 5.25rem 0;
  visibility: hidden;
  width: 100%;
  z-index: -1;
}

.mobile-menu-more {
  overflow: hidden;
}

.mobile-nav-menu .mobile-nav .mobile-nav-menu-more,
.mobile-nav-menu .mobile-nav > .sub-menu {
  position: absolute;
  top: 0;
  left: 0;
  background-color: #808080;
  height: 100vh;
}

.mobile-menu-more:not(.sub-menu-more) .mobile-nav-menu-hidden {
  opacity: 1;
}

.mobile-nav-menu.more .mobile-nav-menu-hidden {
  visibility: visible;
}

.mobile-nav-menu.more .mobile-nav-menu-hidden li {
  position: relative;
  right: 0;
  bottom: 0;
  clear: both;
  display: block;
  float: right;
  margin: 0;
  width: 100%;
}

.mobile-nav-menu.more .mobile-nav-menu-hidden li .sub-menu {
  opacity: 1;
  padding-left: 10%;
}

.sub-menu-more .mobile-nav-menu.more .mobile-nav-menu-hidden li {
  display: none;
}

.mobile-nav-menu.more .mobile-nav-menu-hidden li a {
  color: #fff;
  font-family: "freight-sans-pro", sans-serif;
  font-size: 1.25rem;
  font-style: normal;
  font-weight: 600;
  padding: 0.625rem 1.25rem;
}

.mobile-nav-menu .mobile-nav ul {
  box-shadow: none;
}

.mobile-menu-more:not(.sub-menu-more) .mobile-nav-menu .mobile-nav ul {
  top: 0;
}

.close-mobile-menu {
  position: absolute;
  top: 0.625rem;
  right: 0.75rem;
  height: 2rem;
  width: 2rem;
  background-color: transparent;
  display: none;
  padding: 0;
  z-index: 1;
}

.admin-bar .close-mobile-menu {
  top: 3.5rem;
}

.close-mobile-menu:hover, .close-mobile-menu:active, .close-mobile-menu:focus {
  background-color: transparent;
}

.close-mobile-menu:hover svg, .close-mobile-menu:active svg, .close-mobile-menu:focus svg {
  opacity: 0.6;
}

.more .close-mobile-menu {
  display: block;
}

.close-mobile-menu svg {
  height: 100%;
  width: 100%;
  transition: opacity 0.5s ease;
  fill: #fff;
}

.mobile-nav.dropdown .menu-item-has-children:hover .sub-menu {
  display: none;
}

.mobile-menu-more:not(.sub-menu-more) .mobile-nav.dropdown .menu-item-has-children:hover .sub-menu {
  display: block;
  left: auto;
  opacity: 1;
  right: 0;
}

.mobile-nav.dropdown .visible .sub-menu,
.mobile-nav.dropdown .visible:hover .sub-menu,
.mobile-nav.dropdown .visible:focus .sub-menu,
.mobile-nav.dropdown .visible:active .sub-menu {
  position: fixed;
  top: auto;
  right: 0;
  bottom: 5.25rem;
  left: auto;
  display: block;
  opacity: 1;
  width: 50vw;
}

.mobile-nav.dropdown .visible .sub-menu .sub-menu,
.mobile-nav.dropdown .visible:hover .sub-menu .sub-menu,
.mobile-nav.dropdown .visible:focus .sub-menu .sub-menu,
.mobile-nav.dropdown .visible:active .sub-menu .sub-menu {
  bottom: 0;
}

.mobile-nav.dropdown .visible .sub-menu .sub-menu,
.mobile-nav.dropdown .visible:hover .sub-menu .sub-menu,
.mobile-nav.dropdown .visible:focus .sub-menu .sub-menu,
.mobile-nav.dropdown .visible:active .sub-menu .sub-menu {
  padding-left: 0.625rem;
  position: relative;
}

.mobile-nav.dropdown .sub-menu {
  left: 0;
  opacity: 0;
  width: 50vw;
  z-index: -1;
}

.mobile-nav.dropdown .sub-menu a {
  color: #fff;
  font-size: 1rem;
  padding: 0.625rem 1.25rem;
  text-align: left;
}

.mobile-nav.dropdown .sub-menu li {
  display: block;
  float: none;
  margin: 0;
}

.mobile-nav.dropdown .visible .sub-menu {
  z-index: 1;
}

.mobile-nav-menu-hidden::after {
  position: fixed;
  right: 0.9375rem;
  bottom: 4.6875rem;
  transition: opacity 0.18s ease-in-out;
  border-left: 0.625rem solid transparent;
  border-right: 0.625rem solid transparent;
  border-top: 0.625rem solid #fff;
  content: "";
  opacity: 0;
}

.mobile-nav-menu-hidden.scroll::after {
  opacity: 1;
}

.no-js.admin-bar .mobile-nav-menu {
  padding-top: 0;
}

.no-js .mobile-nav-menu {
  height: 4rem;
  width: 100%;
  -ms-overflow-style: -ms-autohiding-scrollbar;
  -webkit-overflow-scrolling: touch;
  bottom: 0;
  font-size: 0;
  overflow-x: auto;
  top: auto;
  white-space: nowrap;
}

.no-js .mobile-nav-menu > div {
  bottom: 0;
  left: 0;
}

.no-js .mobile-nav-menu > div::before, .no-js .mobile-nav-menu > div::after {
  position: fixed;
  bottom: 0;
  height: 100%;
  width: 25%;
  content: "";
  pointer-events: none;
  z-index: 20;
}

.no-js .mobile-nav-menu > div::after {
  background: linear-gradient(to left, white 0%, rgba(255, 255, 255, 0) 100%);
  right: 0;
}

.no-js .mobile-nav-menu > div::before {
  background: linear-gradient(to left, rgba(255, 255, 255, 0) 0%, white 100%);
  left: 0;
}

.no-js .mobile-nav-menu .mobile-nav a {
  padding: 0 0.625rem;
  text-align: center;
}

.no-js .mobile-nav-menu .mobile-nav a span {
  position: relative;
  -ms-transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  top: 50%;
  transform: translateY(-50%);
  display: block;
}

.no-js .mobile-nav-menu .mobile-nav > li:nth-child(n+6) {
  display: inline-block;
}

.no-js .mobile-nav-menu .mobile-nav > li:first-of-type {
  padding-left: 6.25rem;
}

.no-js .mobile-nav-menu .mobile-nav > li:last-of-type {
  padding-right: 6.25rem;
}

.no-js .mobile-nav-menu .mobile-nav li {
  position: relative;
  left: 0;
  height: 4rem;
  width: auto;
  background-color: #fff;
  border-top: 1px solid rgba(0, 0, 0, 0.1);
  display: inline-block;
  float: none;
  font-size: 0.75rem;
  margin: 0;
  text-align: center;
  vertical-align: top;
}

.no-js .mobile-nav-menu .mobile-nav li:hover {
  background-color: #fff;
}

.no-js .mobile-nav-menu .mobile-nav li > a {
  display: block;
  font-size: 0.75rem;
  height: 100%;
  line-height: 1.2;
}

.no-js .mobile-nav-menu .mobile-nav li.menu-item-has-children > a {
  display: inline-block;
  vertical-align: top;
}

.no-js .mobile-nav-menu .mobile-nav li.menu-item-has-children:hover .sub-menu {
  display: inline-block;
  left: 0;
}

.no-js .mobile-nav-menu .mobile-nav.dropdown .sub-menu {
  position: relative;
  top: auto;
  left: 0;
  display: inline-block;
  float: none;
  opacity: 1;
  width: auto;
  z-index: 1;
}

.no-js .mobile-nav-menu .mobile-nav.dropdown .sub-menu a {
  color: #2c2d31;
}

.no-js .mobile-nav-menu .mobile-nav.dropdown .sub-menu li {
  border: none;
}

.no-js .mobile-nav-menu .menu.dropdown ul a {
  width: auto;
}

a {
  color: #2c2d31;
}

a:visited {
  color: #2c2d31;
}

a:hover, a:focus, a:active {
  color: #f4b225;
}

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

.menu::after {
  clear: both;
  content: "";
  display: block;
}

.menu li {
  margin: 0;
}

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

.menu ul::after {
  clear: both;
  content: "";
  display: block;
}

.menu.menu-horizontal li {
  display: inline-block;
}

.menu.menu-vertical li {
  margin: 0;
}

.menu.menu-vertical a {
  border-bottom: 0.0625rem solid #ccc;
  padding: 0.625rem;
}

.menu.dropdown .menu-item-has-children > a {
  padding-right: 1.8125rem;
  position: relative;
}

.menu.dropdown .menu-item-has-children > a::after {
  position: absolute;
  top: 50%;
  right: 0.3125rem;
  height: 0.5rem;
  width: 0.6875rem;
  background: url("assets/images/svg-icons/nav-arrow.svg") no-repeat;
  background-size: contain;
  content: "";
  margin: -0.25rem 0 0 0.375rem;
}

.menu.dropdown .menu-item-has-children .menu-item-has-children a::after {
  left: 0.125rem;
  transform: rotate(90deg);
}

.menu.dropdown ul {
  position: absolute;
  left: -999em;
  background-color: #2c2c31;
  box-shadow: 0 3px 3px rgba(0, 0, 0, 0.2);
  display: none;
  float: left;
  z-index: 99999;
}

.menu.dropdown ul ul {
  left: -999em;
  top: 0;
}

.menu.dropdown ul ul ul li {
  text-align: left;
}

.menu.dropdown ul li {
  float: none;
  text-align: right;
}

.menu.dropdown ul li a {
  font-size: 0.9375rem;
  margin: 0;
}

.menu.dropdown ul li:hover > ul,
.menu.dropdown ul li.focus > ul {
  display: block;
  right: 100%;
}

.menu.dropdown ul a {
  height: auto;
  width: auto;
  min-width: 12.5rem;
}

.menu.dropdown li:hover > ul,
.menu.dropdown .focus > ul {
  display: block;
  left: auto;
}

.menu.dropdown li {
  float: left;
}

.menu a {
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  border: none;
  display: block;
  letter-spacing: 0.0625rem;
  text-decoration: none;
}

.main-navigation {
  height: auto;
  width: 100%;
  clear: both;
  display: none;
  float: left;
  max-width: 80rem;
  padding: 0;
}

.main-navigation ul {
  display: none;
}

.main-navigation.toggled ul {
  display: block;
}

.main-navigation a {
  color: #fff;
  font-family: "freight-sans-pro", sans-serif;
  font-size: 1.125rem;
  font-style: normal;
  font-weight: 600;
  letter-spacing: 0.09375rem;
  padding: 1.375rem 0.625rem 1.5rem 0.625rem;
  text-transform: uppercase;
}

.main-navigation .menu-primary-menu-container > .menu {
  display: block;
}

.menu-toggle {
  display: block;
}

.site-main .comment-navigation {
  margin: 0 0 1.5rem 0;
  overflow: hidden;
}

.comment-navigation.nav-previous {
  height: auto;
  width: 50%;
  float: left;
}

.comment-navigation.nav-next {
  height: auto;
  width: 50%;
  float: right;
  text-align: right;
}

table {
  border: 0;
  border-collapse: collapse;
  border-spacing: 0;
  padding: 0;
  width: 100%;
}

table thead {
  display: none;
}

table th,
table td {
  padding: 0.625rem;
  text-align: center;
}

table th {
  font-size: 0.875rem;
  letter-spacing: 0.0625rem;
  text-transform: uppercase;
}

table tr {
  display: block;
  margin-bottom: 0.625rem;
}

table td {
  border: 0.0625rem solid #ccc;
  border-bottom: 0;
  display: block;
  font-size: 0.8125rem;
  text-align: center;
}

table td:last-child {
  border-bottom: 0.0625rem solid #ccc;
}

table td::before {
  content: "";
  float: left;
  font-weight: bold;
  text-transform: uppercase;
}

.modal {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background-color: rgba(0, 0, 0, 0.3);
  display: none;
  overflow: hidden;
  z-index: 1050;
}

.modal::after {
  clear: both;
  content: "";
  display: block;
}

.modal.modal-open {
  display: block;
  overflow-x: hidden;
  overflow-y: auto;
}

.modal .modal-dialog {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: auto;
}

.modal .modal-content {
  background-clip: padding-box;
  background-color: #fff;
  border-radius: 0.1875rem;
  box-shadow: 0 0 0.625rem 0.1875rem rgba(0, 0, 0, 0.5);
  outline: 0;
  padding: 0.625rem;
  position: relative;
}

.modal .modal-content .modal-header {
  text-align: center;
}

.modal .modal-content .modal-header .close {
  margin: 0;
  padding: 0;
  position: absolute;
  top: -0.9375rem;
  right: -0.9375rem;
  height: 1.875rem;
  width: 1.875rem;
  background: #000;
  border: 0.1875rem solid #fff;
  border-radius: 50%;
  color: #fff;
  cursor: pointer;
  font-size: 1.875rem;
  line-height: 0;
  outline: none;
}

.modal .modal-content .modal-header .close::after::after {
  clear: both;
  content: "";
  display: block;
}

.modal .modal-content .modal-body {
  position: relative;
}

.modal .fluid-embed embed,
.modal .fluid-embed object,
.modal .fluid-embed iframe {
  border: none;
}

.site-footer {
  background-color: #1e1e22;
  color: #fff;
}

.footer-top {
  background-color: #1e1e22;
}

.footer-top .widget {
  margin-bottom: 0;
}

.footer-top .widget + .widget {
  margin-top: 1.5rem;
}

.footer-top .footer-navigation {
  display: none;
}

.footer-top .menu-primary-menu-container a {
  color: #fff;
  font-family: "freight-sans-pro", sans-serif;
  font-size: 1.125rem;
  font-style: normal;
  font-weight: 600;
  padding: 1.125rem 0.625rem;
  text-transform: uppercase;
}

.footer-top .menu-primary-menu-container li {
  display: inline-block;
  float: none;
}

.footer-top .menu-primary-menu-container .menu-item-has-children {
  position: relative;
}

.footer-top .menu-primary-menu-container .menu-item-has-children a {
  padding-right: 1.75rem;
}

.footer-top .menu-primary-menu-container .menu-item-has-children > a {
  position: relative;
}

.footer-top .menu-primary-menu-container .menu-item-has-children > a::after {
  transform: rotate(180deg);
}

.footer-top .menu-primary-menu-container .menu-item-has-children ul {
  position: absolute;
  bottom: 100%;
  float: left;
}

.footer-top .menu-primary-menu-container .menu-item-has-children ul ul {
  bottom: 0;
  right: -999em;
  top: auto;
}

.footer-bottom {
  background-color: #2c2c31;
  padding-top: 2.625rem;
}

.footer-bottom a {
  color: #fff;
}

.footer-bottom .widget {
  display: inline-block;
  padding: 0.625em 0 0;
  text-align: center;
  width: 100%;
}

.footer-bottom .site-info {
  margin-top: 3.125rem;
}

.footer-bottom .site-info p {
  font-size: 1.25rem;
  line-height: 1.5;
}

.footer-bottom .sitelist {
  display: none;
  margin-top: 0.8125rem;
}

.footer-bottom .sitelist h3 {
  font-size: 1.125rem;
  letter-spacing: 0.09375rem;
  margin-bottom: 0.5625rem;
  margin-top: 0;
  text-transform: uppercase;
}

.footer-bottom .sitelist .dropdown-wrap {
  margin-bottom: 0.625rem;
  margin-right: 0.625rem;
}

.footer-bottom .sitelist .dropdown-toggle {
  width: 100%;
}

.footer-bottom .sitelist .dropdown-list a:hover,
.footer-bottom .sitelist .dropdown-list a:active,
.footer-bottom .sitelist .dropdown-list a:focus {
  background: #f4b225;
}

.footer-top .sitelist {
  margin-bottom: 1rem;
  margin-left: auto;
  margin-right: auto;
  max-width: 100%;
  text-align: center;
  width: 18.75rem;
}

.footer-top .sitelist h3 {
  font-size: 1.125rem;
  margin: 0.25rem 0;
  text-transform: uppercase;
}

.footer-top .sitelist .dropdown-wrap,
.footer-top .sitelist .dropdown-toggle {
  width: 100%;
}

.footer-bottom .footer-logos {
  display: inline-block;
  vertical-align: middle;
}

.footer-bottom .footer-logos .logo-wrap {
  display: inline-block;
  margin-left: 0.625rem;
  max-width: 11.875rem;
}

.footer-bottom .footer-logos .logo-wrap:first-child {
  margin-left: 0;
}

.footer-bottom .footer-logos.mobile-only {
  text-align: center;
  vertical-align: baseline;
  width: 100%;
}

.footer-bottom .footer-logos.mobile-only .logo-wrap {
  display: block;
  margin: 0 auto;
}

.footer-bottom .footer-logos.mobile-only .wds_comeback_footer_logo_1_wrap {
  margin-bottom: 1.5rem;
}

.footer-top .social-icons {
  display: block;
  margin-top: 0.4375rem;
  padding: 0.4375rem 0;
  text-align: center;
}

.cat-links {
  display: inline-block;
}

.cat-links a {
  background: #000;
  border: none;
  color: #fff;
  display: inline-block;
  font-size: 1.125rem;
  font-style: normal;
  letter-spacing: 0.125rem;
  padding: 0.0625rem 1rem;
  text-transform: uppercase;
  transition: opacity 0.18s ease-out;
}

.cat-links a[href*="nba"] {
  background: #e25b00;
}

.cat-links a[href*="nfl"] {
  background: #000;
}

.cat-links a[href*="mlb"] {
  background: #006732;
}

.cat-links a[href*="ncaa"] {
  background: #d10d00;
}

.cat-links a[href*="nhl"] {
  background: #8bc0eb;
}

.cat-links a[href*="pop-culture"] {
  background: #deca00;
}

.cat-links a[href*="culture"] {
  background: #deca00;
}

.cat-links a:hover, .cat-links a:focus {
  color: #fff;
  opacity: 0.78;
}

.featured-post {
  background-position: 50% 50%;
  background-size: cover;
  display: block;
  height: 11.5625rem;
  margin-bottom: 0.3125rem;
  position: relative;
  z-index: 1;
}

.featured-post .entry-header {
  position: absolute;
  bottom: 0;
  left: 0;
  color: #fff;
  padding: 0.75rem 0.9375rem;
  width: 100%;
  z-index: 1;
}

.featured-post .entry-header .entry-title {
  -webkit-font-smoothing: antialiased;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  transform-style: preserve-3d;
  transition: transform 0.18s ease-in-out;
  font-size: 1rem;
  font-style: normal;
  line-height: 1.25;
  margin-bottom: 0;
  margin-top: 0;
}

.featured-post .entry-header a {
  color: #fff;
}

.featured-post .entry-header a:focus {
  border-bottom: 0.125rem solid #f4b225;
  outline: none;
}

.featured-post .entry-header .category {
  -webkit-font-smoothing: antialiased;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  transform-style: preserve-3d;
  transition: transform 0.18s ease-in-out;
  display: none;
  font-family: "freight-sans-pro", sans-serif;
  font-size: 1.125rem;
  font-style: normal;
  font-weight: 700;
  letter-spacing: 0.15625rem;
  margin: 0;
  position: relative;
  text-transform: uppercase;
}

.featured-post .entry-header .category .hilight {
  transition: width 0.18s ease-in-out;
  bottom: -0.25rem;
  display: none;
  height: 0.25rem;
  position: absolute;
  width: 4.5rem;
}

.featured-post .read-more {
  transition: opacity 0.18s ease-in-out, transform 0.18s ease-in-out;
  -webkit-font-smoothing: antialiased;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  transform-style: preserve-3d;
  border: none;
  display: block;
  font-size: 1.4375rem;
  opacity: 0;
}

.featured-post::before, .featured-post::after {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  content: "";
}

.featured-post::after {
  background: rgba(43, 38, 43, 0.35);
}

.featured-post::before {
  transition: opacity 0.18s ease-in-out;
  background: linear-gradient(to bottom, #3779a3 48%, #425b6d 95%, #494a4d 99%);
  opacity: 0;
}

.featured-post:hover::before, .featured-post:focus::before {
  opacity: 0.5;
}

.featured-post:hover .category, .featured-post:focus .category {
  transform: translateY(-32px);
}

.featured-post:hover .category .hilight, .featured-post:focus .category .hilight {
  width: 100%;
}

.featured-post:hover .read-more, .featured-post:focus .read-more {
  transition: width 0.18s ease-in-out;
  border: none;
  opacity: 1;
  transform: translateY(-16px);
  width: 7.9375rem;
}

.featured-post:hover .read-more:hover, .featured-post:focus .read-more:hover {
  opacity: 0.88;
  width: 8.25rem;
}

.featured-post:hover .read-more::after, .featured-post:focus .read-more::after {
  position: absolute;
  top: 48%;
  right: 0.3125rem;
  height: 0.5rem;
  width: 0.6875rem;
  background: url("assets/images/svg-icons/nav-arrow.svg") no-repeat;
  background-size: contain;
  content: "";
  transform: rotate(-90deg);
}

.featured-post:hover .entry-title, .featured-post:focus .entry-title {
  transform: translateY(-32px);
}

.feature-5-grid .featured-post {
  margin-bottom: 0.3125rem;
}

.horizontal-blog-card {
  max-width: 80em;
  margin-left: auto;
  margin-right: auto;
  -ms-flex-align: start;
      align-items: flex-start;
  background: #f5f6f6;
  border: 0.0625rem solid rgba(4, 4, 4, 0.12);
  border-top: 0.1875rem solid #000;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-bottom: 0.3125rem;
  padding-bottom: 0.3125rem;
  padding-top: 0.3125rem;
  position: relative;
}

.horizontal-blog-card::after {
  clear: both;
  content: "";
  display: block;
}

.horizontal-blog-card:last-child {
  margin-bottom: 0;
}

.horizontal-blog-card::after {
  clear: none;
}

.horizontal-blog-card .cat-links {
  display: block;
  margin-bottom: 0.3125rem;
}

.horizontal-blog-card .cat-links a {
  margin: 0;
  padding: 0;
  background: none;
  color: #717276;
  display: block;
  font-size: 0.875rem;
  letter-spacing: 0.125rem;
  line-height: 1.25;
}

.horizontal-blog-card .card-contents {
  -ms-flex: 1;
      flex: 1;
}

.horizontal-blog-card .card-title {
  padding: 0 0.5rem;
}

.horizontal-blog-card .card-title .entry-title {
  font-size: 1rem;
  line-height: 1;
  margin-bottom: 1rem;
  margin-top: 0;
}

.horizontal-blog-card .card-title .entry-title a {
  display: block;
}

.horizontal-blog-card .card-excerpt {
  padding: 0 0.5rem;
  display: none;
  width: auto;
}

.horizontal-blog-card .card-excerpt p {
  font-size: 1rem;
  line-height: 1.2;
}

.horizontal-blog-card .card-image, .horizontal-blog-card .clone-widget .featuredsidebar .image-as-background, .clone-widget .featuredsidebar .horizontal-blog-card .image-as-background {
  position: relative;
  display: block;
  height: 6.875rem;
  margin: 0 0.3125rem;
  width: 45%;
  z-index: 0;
}

.horizontal-blog-card .card-image[class*="nba"], .horizontal-blog-card .clone-widget .featuredsidebar [class*="nba"].image-as-background, .clone-widget .featuredsidebar .horizontal-blog-card [class*="nba"].image-as-background {
  border-bottom-color: #e25b00;
}

.horizontal-blog-card .card-image[class*="nfl"], .horizontal-blog-card .clone-widget .featuredsidebar [class*="nfl"].image-as-background, .clone-widget .featuredsidebar .horizontal-blog-card [class*="nfl"].image-as-background {
  border-bottom-color: #000;
}

.horizontal-blog-card .card-image[class*="mlb"], .horizontal-blog-card .clone-widget .featuredsidebar [class*="mlb"].image-as-background, .clone-widget .featuredsidebar .horizontal-blog-card [class*="mlb"].image-as-background {
  border-bottom-color: #006732;
}

.horizontal-blog-card .card-image[class*="ncaa"], .horizontal-blog-card .clone-widget .featuredsidebar [class*="ncaa"].image-as-background, .clone-widget .featuredsidebar .horizontal-blog-card [class*="ncaa"].image-as-background {
  border-bottom-color: #d10d00;
}

.horizontal-blog-card .card-image[class*="nhl"], .horizontal-blog-card .clone-widget .featuredsidebar [class*="nhl"].image-as-background, .clone-widget .featuredsidebar .horizontal-blog-card [class*="nhl"].image-as-background {
  border-bottom-color: #8bc0eb;
}

.horizontal-blog-card .card-image[class*="pop-culture"], .horizontal-blog-card .clone-widget .featuredsidebar [class*="pop-culture"].image-as-background, .clone-widget .featuredsidebar .horizontal-blog-card [class*="pop-culture"].image-as-background {
  border-bottom-color: #deca00;
}

.horizontal-blog-card .card-image[class*="culture"], .horizontal-blog-card .clone-widget .featuredsidebar [class*="culture"].image-as-background, .clone-widget .featuredsidebar .horizontal-blog-card [class*="culture"].image-as-background {
  border-bottom-color: #deca00;
}

.horizontal-blog-card footer {
  clear: both;
  display: none;
  margin-top: 1rem;
  padding: 0 0.5rem;
  width: 100%;
}

.horizontal-blog-card footer .entry-date {
  margin-right: 0.375rem;
  padding-left: 0.3125rem;
}

.horizontal-blog-card footer .byline {
  display: block;
  font-size: 0.8125rem;
  letter-spacing: 0.08438rem;
  margin-top: -0.875rem;
  padding-left: 0.1875rem;
}

.horizontal-blog-card footer .byline a {
  border: none;
  font-style: normal;
}

.horizontal-blog-card footer .comments-number {
  height: 1.5rem;
  width: 1.875rem;
  background: url("assets/images/svg-icons/comment-bubble.svg") no-repeat;
  background-size: cover;
  color: #fff;
  display: none;
  font-family: Helvetica, Arial, sans-serif;
  font-size: 0.8125rem;
  font-style: normal;
  font-weight: 300;
  letter-spacing: 0.0625rem;
  padding-left: 0.125rem;
  text-align: center;
  transition: opacity 0.18s ease-out;
}

.dropdown-wrap .dropdown-toggle {
  background: #fff;
  border: none;
  border-radius: 0.1875rem;
  color: #595b61;
  font-family: "ff-tisa-web-pro", serif;
  font-size: 1.125rem;
  font-weight: normal;
  padding: 0.875rem 1.375rem 0.8125rem 0.5rem;
  text-align: left;
  text-transform: none;
}

.dropdown-wrap .dropdown-toggle svg {
  height: 1.6875rem;
  width: 1.75rem;
  fill: #818383;
  float: right;
  margin-left: 0.9375rem;
  margin-right: -0.1875rem;
  padding: 0;
  vertical-align: middle;
}

.dropdown-wrap {
  display: inline-block;
  font-size: 1.125rem;
  position: relative;
}

.dropdown-wrap .dropdown-list {
  margin: 0;
  padding: 0;
  list-style: none;
  position: absolute;
  top: 100%;
  background: #fff;
  display: none;
  width: 100%;
}

.dropdown-wrap .dropdown-list::after {
  clear: both;
  content: "";
  display: block;
}

.dropdown-wrap .dropdown-list.open {
  display: block;
}

.dropdown-wrap .dropdown-list.top {
  bottom: 100%;
  top: auto;
}

.dropdown-wrap .dropdown-list a {
  border-bottom: none;
  color: #595b62;
  display: block;
  padding: 0.625rem;
  text-align: center;
}

.dropdown-wrap .dropdown-list a:hover, .dropdown-wrap .dropdown-list a:active, .dropdown-wrap .dropdown-list a:focus {
  background: #ccc;
  color: #fff;
  text-decoration: none;
}

.nav-links .button {
  display: block;
  font-size: 1.5rem;
  font-weight: 700;
  padding: 0.5625rem 0.8125rem;
  text-align: center;
}

.nav-links .nav-previous {
  padding-right: 1.4375rem;
}

.nav-links .nav-next {
  margin-top: 1.25rem;
  padding-left: 1.4375rem;
}

.nav-links .icon {
  height: 1rem;
  width: 1.5rem;
  margin-left: 0.9375rem;
  margin-top: -0.1875rem;
  vertical-align: middle;
}

.nav-links .nav-previous .icon {
  margin-left: 0;
  margin-right: 0.9375rem;
  transform: rotate(180deg);
}

.nav-links .button:active svg,
.nav-links .button:hover svg,
.nav-links .button:focus svg {
  fill: #fff;
}

.feature-5-grid {
  max-width: 80em;
  margin-left: auto;
  margin-right: auto;
  margin-top: 1.125rem;
  max-width: 100%;
  width: 100%;
}

.feature-5-grid::after {
  clear: both;
  content: "";
  display: block;
}

.feature-5-grid .grid-item {
  width: 100%;
  overflow: hidden;
}

.feature-5-grid.mobile-disable {
  display: none;
}

.feature-5-grid .read-more {
  display: none;
}

.feature-5-grid .featured-post .entry-header .entry-title {
  font-size: 1rem;
}

.feature-5-grid .entry-meta .category {
  font-size: 1rem;
}

.feature-5-grid .entry-title,
.feature-5-grid .entry-meta {
  text-shadow: 0.0625rem 0.0625rem 0.0625rem #000;
}

.site .sumome-share-client-wrapper.sumome-share-client-wrapper-center {
  margin-bottom: 1.1875rem;
  text-align: left;
}

.site .sumome-share-client-wrapper div.sumome-share-client.sumome-share-client-header-center-article .sumome-share-client-share,
.site .sumome-share-client-wrapper div.sumome-share-client.sumome-share-client-bottom-center-article .sumome-share-client-share {
  height: 2.6875rem;
  width: 2.6875rem;
  margin-right: 2rem;
  padding: 0.375rem;
}

.site .sumome-share-client-wrapper div.sumome-share-client.sumome-share-client-header-center-article .sumome-share-client-share:last-child,
.site .sumome-share-client-wrapper div.sumome-share-client.sumome-share-client-bottom-center-article .sumome-share-client-share:last-child {
  margin-right: 0;
}

.site .sumome-share-client-wrapper div.sumome-share-client.sumome-share-client-header-center-article .sumome-share-client-share img,
.site .sumome-share-client-wrapper div.sumome-share-client.sumome-share-client-bottom-center-article .sumome-share-client-share img {
  height: 1.875rem;
  width: 1.875rem;
}

.site .sumome-share-client-wrapper div.sumome-share-client .sumome-share-client-share.sumome-share-client-share-share {
  height: 1.875rem;
  width: 4.5625rem;
  margin-right: 1.875rem;
  padding: 0;
}

.site .sumome-share-client-wrapper div.sumome-share-client .sumome-share-client-share.sumome-share-client-share-share span,
.site .sumome-share-client-wrapper div.sumome-share-client .sumome-share-client-share.sumome-share-client-share-share strong {
  font-family: "freight-sans-pro", sans-serif;
  font-size: 1.5rem;
  font-weight: 700;
}

.site .sumome-share-client-wrapper div.sumome-share-client .sumome-share-client-share.sumome-share-client-share-share strong {
  position: relative;
  top: -1rem;
}

.sumome-share-client-wrapper.sumome-share-client-wrapper-left-page {
  display: none;
}

#sumome-smartbar-popup .sumome-smartbar-input {
  height: 3.0625rem;
}

#sumome-smartbar-popup .sumome-smartbar-input iframe[id^='twitter-widget'],
#sumome-smartbar-popup .sumome-smartbar-input iframe.sumome-smartbar-social {
  height: auto !important;
  margin: 0.9375rem auto 0 !important;
}

#sumome-smartbar-popup .sumome-smartbar-template-headline .sumome-smartbar-close {
  height: 2rem;
  width: 2rem;
  border: 0.25rem solid #f45b93 !important;
  border-radius: 50% !important;
  right: 0.5625rem !important;
  top: 0.5625rem !important;
}

#sumome-smartbar-popup .sumome-smartbar-template-headline .sumome-smartbar-close::before {
  border: none !important;
  content: "X" !important;
  display: block !important;
  font-size: 1.125rem !important;
  font-weight: 700;
  height: 2rem !important;
  line-height: 1.778 !important;
  position: relative !important;
  right: 0.25rem !important;
  top: -0.25rem !important;
  width: 2rem !important;
}

.horizontal-blog-card .sumome-share-client-wrapper,
.page .sumome-share-client-wrapper {
  display: none;
}

.sumome-share-client-wrapper-mobile-bottom-bar {
  bottom: 4.375rem !important;
  z-index: 0 !important;
}

.hidden {
  display: none;
}

.page-links {
  background: #f5f6f6;
  border: 0.0625rem solid #e9ebee;
  border-radius: 0.25rem;
  font-size: 1.375rem;
  padding: 0.25rem 1.25rem;
}

.page-links .page-link-text {
  margin-right: 0.375rem;
}

.page-links .page-link {
  background: #fff;
  border: 0.0625rem solid #e9ebee;
  font-family: "freight-sans-pro", sans-serif;
  font-style: normal;
  font-weight: 600;
  max-height: 1.125rem;
  padding: 0.125rem 0.75rem;
  transition: background-color 0.18s ease-out;
}

.page-links a {
  border: none;
}

.page-links a .page-link {
  background-color: transparent;
  border: none;
  font-family: "freight-sans-pro", sans-serif;
  font-style: normal;
}

.page-links a .page-link:focus, .page-links a .page-link:hover {
  background-color: #fff;
}

.author-box {
  background: #f7f7f7;
  border-radius: 3px;
  margin-bottom: 3.8125rem;
  padding: 0.625rem 1.375rem 3.0625rem;
  position: relative;
}

.author-box .author-avatar {
  height: 5.1875rem;
  width: 5.1875rem;
  border-radius: 50%;
  display: inline-block;
  margin: 0.125rem 1.375rem 0 0;
  vertical-align: top;
}

.author-box .author-title {
  display: inline-block;
  font-size: 1.375rem;
  line-height: 1;
  margin-bottom: 0;
  margin-top: 1.0625rem;
  vertical-align: middle;
}

.author-box .author-bio {
  margin: 0.4375rem 0 1.6875rem 0.1875rem;
}

.author-box .author-bio p {
  font-size: 1rem;
}

.author-box .author-bio p:last-child {
  margin-bottom: 0;
}

.author-box .all-posts {
  border-bottom: none;
  font-family: "freight-sans-pro", sans-serif;
  font-size: 1rem;
  font-style: normal;
  font-weight: 700;
  text-transform: uppercase;
}

.author-box .twitter {
  border-bottom: none;
  display: block;
  font-size: 1rem;
}

.author-box .author-ad-box {
  margin-top: 4.375rem;
  max-height: 15.625rem;
  text-align: center;
}

.infinite-scroll .posts-navigation,
.infinite-scroll.neverending .site-footer {
  display: none;
}

.infinity-end.neverending .site-footer {
  display: block;
}

.gform_wrapper {
  background: #fff;
  border: 0 solid #fff;
  padding: 0;
}

.gform_wrapper.gform_body .gform_fields .gfield,
.gform_wrapper.gform_body .gform_fields .gfield.gf_left_half,
.gform_wrapper.gform_body .gform_fields .gfield.gf_right_half {
  margin-bottom: 1.5625rem;
}

.gform_wrapper .gfield_label {
  color: #333;
  font-size: 1rem;
  font-weight: 700;
}

.gform_wrapper input[type="text"],
.gform_wrapper input[type="url"],
.gform_wrapper input[type="email"],
.gform_wrapper input[type="tel"],
.gform_wrapper input[type="number"],
.gform_wrapper input[type="password"],
.gform_wrapper input[type="file"],
.gform_wrapper textarea {
  background: #fff;
}

.gform_wrapper textarea {
  width: 100%;
}

.gform_wrapper select {
  -webkit-appearance: none;
  background: url("assets/images/svg-icons/caret-down.svg") no-repeat 97% transparent;
  background-color: #fff;
  background-size: 0.75rem;
  border-color: #ccc;
  border-radius: 0;
  line-height: 1.45;
  padding: 0.75rem 1.25rem 0.8125rem;
  width: 100%;
}

.gform_wrapper select[multiple="multiple"] {
  background: #fff;
}

.gform_wrapper .gform_body .gform_fields .gfield select,
.gform_wrapper.gf_browser_chrome .gform_body .gform_fields .gfield select {
  margin-left: 0;
  width: 100% !important;
}

.gform_wrapper .gfield .chosen-container-single {
  font-size: 1rem;
}

.gform_wrapper .gfield .chosen-container-single .chosen-single {
  background: #fff;
  border-color: #ccc;
  border-radius: 0;
  height: auto;
  padding: 0.75rem 1.25rem 0.8125rem;
}

.gform_wrapper .gfield .chosen-container-single .chosen-single div b {
  position: absolute;
  top: 40%;
  right: 0.6875rem;
  height: 0;
  width: 0;
  border-left: 6px solid transparent;
  border-right: 6px solid transparent;
  border-top: 6px solid #ccc;
  background: none;
}

.gform_wrapper .gfield .chosen-container-single .chosen-drop .chosen-search input[type="text"] {
  background: none;
}

.gform_wrapper .gfield .chosen-container-single .chosen-drop .chosen-results li {
  padding: 0.625rem 0.3125rem;
}

.gform_wrapper .gfield .chosen-container-single.chosen-container-single.chosen-with-drop .chosen-single {
  background-image: none;
}

.gform_wrapper .gfield .chosen-container-single.chosen-container-single.chosen-with-drop .chosen-single div b {
  height: 0;
  width: 0;
  border-bottom: 6px solid #ccc;
  border-left: 6px solid transparent;
  border-right: 6px solid transparent;
  border: none;
}

#content .gform_wrapper {
  margin-right: 0;
  max-width: 100%;
}

#content .gform_wrapper input[type="text"],
#content .gform_wrapper input[type="url"],
#content .gform_wrapper input[type="email"],
#content .gform_wrapper input[type="tel"],
#content .gform_wrapper input[type="number"],
#content .gform_wrapper input[type="password"],
#content .gform_wrapper input[type="file"],
#content .gform_wrapper textarea {
  padding: 0.75rem 1.25rem 0.8125rem;
  width: 100%;
}

#content .gform_wrapper .chosen-search input[type="text"],
#content .gform_wrapper textarea {
  width: 100%;
}

#content .gform_wrapper .gf_left_half,
#content .gform_wrapper .gf_right_half {
  width: 100%;
}

#content .gform_wrapper .ginput_complex .name_first input[type="text"],
#content .gform_wrapper .ginput_complex .name_last input[type="text"] {
  width: 100%;
}

.embed-block,
a.embed-block {
  font-style: normal;
}

.embed-block,
a.embed-block {
  border-bottom: 0.0625rem solid #cccccc;
  display: block;
  margin-bottom: 3.5rem;
  margin-top: 4.8125rem;
}

.embed-block .header {
  border-bottom: 0.0625rem solid #cccccc;
  display: block;
  font-size: 1.25rem;
  margin-bottom: 1.4375rem;
  padding-bottom: 0.5rem;
}

.embed-block h2,
.embed-block .h2,
.embed-block .entry-title,
.embed-block h3,
.embed-block .h3,
.embed-block .horizontal-blog-card .card-title .entry-title, .horizontal-blog-card .card-title
.embed-block .entry-title {
  display: block;
  font-size: 1.875rem;
  letter-spacing: 0.1125rem;
  line-height: 1;
  margin: 0.8125rem 0 1.9375rem;
  text-transform: uppercase;
}

.embed-block p {
  font-size: 1rem;
  margin-bottom: 2rem;
}

.single .site-content,
.page .site-content {
  margin-bottom: 4.0625rem;
}

.single .hentry:not(.horizontal-blog-card):not(.featured-post) > .entry-header,
.page .hentry:not(.horizontal-blog-card):not(.featured-post) > .entry-header {
  margin-bottom: 2.5625rem;
}

.single .hentry:not(.horizontal-blog-card):not(.featured-post) > .entry-title,
.page .hentry:not(.horizontal-blog-card):not(.featured-post) > .entry-title {
  margin-bottom: 1.75rem;
  margin-top: 2.4375rem;
}

.single .entry-custom-excerpt {
  color: #595b61;
  font-size: 1.125rem;
  font-style: italic;
  margin-bottom: 2.1875rem;
  margin-left: 0.1875rem;
  padding-left: 0.6875rem;
}

.single .entry-custom-excerpt::before {
  left: -0.25rem;
  width: 0.25rem;
}

.single .entry-meta {
  margin-top: 1.25rem;
}

.single .entry-meta .cat-links {
  font-weight: 700;
  line-height: 1.35;
  margin: 0.25rem 0.9375rem 0 0.125rem;
}

.single .entry-meta .cat-links a {
  padding: 0.0625rem 1.25rem;
}

.single .entry-content blockquote,
.page .entry-content blockquote {
  margin-bottom: 1.5rem;
  margin-top: -0.3125rem;
}

.single .entry-content blockquote p,
.page .entry-content blockquote p {
  font-size: 1.125rem;
  line-height: 1.45;
}

.single .entry-content blockquote p:last-child,
.page .entry-content blockquote p:last-child {
  margin-bottom: 0;
}

.single .entry-content .twitter-tweet,
.page .entry-content .twitter-tweet {
  margin-bottom: 2.1875rem !important;
  margin-top: 3.5rem !important;
}

.single .entry-footer {
  text-align: right;
}

.single .recent-posts {
  clear: left;
}

.single .recent-posts .in-river-ads {
  margin-bottom: 2.0625rem;
  margin-top: -1.1875rem;
}

.single .recent-posts.mobile-only {
  margin-bottom: 3.8125rem;
}

.single .recent-posts.desktop-only {
  display: none;
}

.single .tags-links {
  display: none;
  margin-bottom: 1.25rem;
  text-align: left;
}

.single .tags-links::after {
  clear: both;
  content: "";
  display: block;
}

.single .tags-links a {
  background: #eee;
  border-bottom: none;
  display: inline-block;
  font-size: 1.125rem;
  font-style: normal;
  line-height: 1.35;
  margin-left: 1.25rem;
  margin-top: 0.625rem;
  padding: 0.3125rem 0.625rem;
  position: relative;
}

.single .tags-links a:hover, .single .tags-links a:focus {
  color: #fff;
}

.single .tags-links a::before {
  position: absolute;
  top: 0.875rem;
  left: -0.1875rem;
  height: 0.375rem;
  width: 0.375rem;
  background: #fff;
  border-radius: 50%;
  content: "";
  z-index: 1;
}

.single .tags-links a::after {
  position: absolute;
  top: 0;
  left: -0.875rem;
  border-bottom: 1.0625rem solid transparent;
  border-right: 0.875rem solid #eee;
  border-top: 1.0625rem solid transparent;
  content: "";
}

.single .single-post-featured-image {
  display: block;
  margin: 0 -1.25em;
  max-width: none;
  width: calc( 100% + 2.5em);
}

.archive .page-header {
  margin-bottom: 2.8125rem;
  margin-top: 2.5625rem;
}

.archive .page-title {
  letter-spacing: 0.0625rem;
  text-align: center;
  text-transform: uppercase;
}

.search-term {
  background-color: #f4b225;
  transition: background 0.18s ease-out;
}

a:hover .search-term,
a:focus .search-term {
  background: transparent;
}

.search-no-results .secondary {
  display: none;
}

.search-no-results .below-posts {
  margin-top: 2.5rem;
}

.widget {
  margin: 0 0 1.5rem;
}

.widget select {
  max-width: 100%;
}

.widget_search .search-submit {
  display: none;
}

.hide-in-mobile {
  display: none;
}

.secondary aside {
  margin: 2.375rem auto;
  max-width: 100%;
  width: 18.75rem;
}

.secondary aside:first-of-type {
  margin-bottom: 2.375rem;
  margin-top: 0;
  max-width: 100%;
  width: 25rem;
}

.secondary aside.clone-widget, .secondary aside.widget_bloguin_link_box_widget {
  width: 100%;
}

.secondary .widget .widget-title {
  background: #3f4147;
  color: #fff;
  font-size: 1.5rem;
  letter-spacing: 0.09375rem;
  line-height: 2;
  margin-bottom: 1.75rem;
  margin-left: -0.625rem;
  text-align: center;
  text-transform: uppercase;
  width: calc(100% + 20px);
}

.clone-widget .featuredsidebar {
  display: block;
  margin-left: auto;
  margin-right: auto;
  width: 100%;
}

.clone-widget .featuredsidebar .image-as-background {
  position: relative;
  border: none;
  display: block;
  margin-bottom: 1.25rem;
  min-height: 12.5rem;
}

.clone-widget .featuredsidebar .image-as-background::after {
  position: absolute;
  top: 0;
  right: 0;
  height: 100%;
  width: 100%;
  background: linear-gradient(rgba(43, 38, 43, 0) 48%, #2b262b 95%, #2b262b 96%);
  content: "";
  z-index: 2;
}

.clone-widget .featuredsidebar .image-as-background::before {
  position: absolute;
  top: 0;
  right: 0;
  height: 100%;
  width: 100%;
  transition: opacity 0.18s ease-in-out;
  background: linear-gradient(to bottom, rgba(43, 38, 43, 0.7) 48%, #2b262b 95%, #2b262b 96%);
  content: "";
  opacity: 0;
  z-index: 1;
}

.clone-widget .featuredsidebar .image-as-background h4 {
  position: absolute;
  bottom: 0;
  color: #fff;
  font-size: 1.25rem;
  font-style: normal;
  letter-spacing: 0;
  line-height: 1.15;
  margin-bottom: 0.625rem;
  padding: 0 0.25rem 0 0.75rem;
  text-transform: none;
  transition: color 0.18s ease-out;
  z-index: 4;
}

.clone-widget .featuredsidebar .image-as-background:hover::before, .clone-widget .featuredsidebar .image-as-background:focus::before {
  opacity: 0.5;
}

.link-box .link-box-content {
  display: block;
  margin-left: auto;
  margin-right: auto;
  width: 100%;
}

.link-box .link-box-thumb {
  height: 18.25rem;
  margin-bottom: 1.6875rem;
  width: 100%;
}

.link-box .link-box-list {
  margin: 0;
  padding: 0;
  margin: 0;
  padding: 0;
  list-style: none;
}

.link-box .link-box-list::after {
  clear: both;
  content: "";
  display: block;
}

.link-box .link-box-list .link-box-item {
  line-height: 1.35;
  margin: -0.1875rem 0 1.4375rem 0;
}

.link-box .link-box-list .link-box-item .link-box-link {
  transition: color 0.18s ease-in-out, border-bottom 0.18s ease-in-out;
  border-bottom: 0.125rem solid #c9c9cb;
  display: block;
  font-family: "freight-sans-pro", sans-serif;
  font-size: 1.25rem;
  font-style: normal;
  font-weight: 600;
  padding-bottom: 0.8125rem;
}

.link-box .link-box-list .link-box-item .link-box-link:hover, .link-box .link-box-list .link-box-item .link-box-link:focus {
  border-bottom-color: #f4b225;
}

.link-box-third {
  width: 32%;
}

.link-box-third .link-box-thumb {
  height: 6.25rem;
}

.link-box-third .widget-title {
  font-size: 1.375rem;
  line-height: 1.2;
  text-align: center;
}

.link-box-third .link-box-list .link-box-item {
  font-size: 0.875rem;
  line-height: 1;
}

.link-box-third .link-box-list .link-box-item .link-box-link {
  font-size: 0.9375rem;
}

.ad-widget {
  margin-top: 1.25rem;
}

.below-content {
  margin-bottom: 3.5625rem;
}

.below-content .featured {
  -webkit-font-smoothing: antialiased;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  transform-style: preserve-3d;
}

.csh-widget .widget-title {
  font-size: 2.25rem;
  margin-bottom: 2rem;
  text-align: center;
}

.below-content .csh-widget,
.below-posts .csh-widget {
  margin-bottom: 4.0625rem;
}

.below-content .csh-widget .featured h4,
.below-posts .csh-widget .featured h4 {
  -webkit-font-smoothing: antialiased;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  transform-style: preserve-3d;
  letter-spacing: 0;
  line-height: 1.25;
  text-transform: none;
}

.below-content .csh-widget .more-reading-article,
.below-posts .csh-widget .more-reading-article {
  height: 11.5625rem;
  width: 100%;
  border-bottom: none;
  display: block;
  float: left;
  margin-bottom: 1.5625rem;
}

.below-content .csh-widget .more-reading-article:last-child,
.below-posts .csh-widget .more-reading-article:last-child {
  margin-bottom: 0;
  margin-right: 0;
}

.below-content .csh-widget .more-reading-article h4,
.below-posts .csh-widget .more-reading-article h4 {
  position: absolute;
  bottom: 0;
  left: 0;
  color: #fff;
  font-style: normal;
  margin: 0;
  padding: 0.625rem;
  width: 100%;
  z-index: 1;
}

.below-content:last-child {
  margin-bottom: 0;
}

.ad-widget {
  margin-left: auto;
  margin-right: auto;
}

.ad-widget:first-child {
  margin-top: 0;
}

.ad-widget:last-child {
  margin-bottom: 0;
}

.top-ad-section {
  margin-bottom: 1.3125rem;
  margin-top: 1.5625rem;
}

.top-ad-section .ad-widget {
  max-width: 60.625rem;
}

.in-river-ads {
  margin: 2.1875rem 0;
}

.in-river-ads .ad-widget {
  max-width: 45.5rem;
}

.above-posts-ads {
  margin-bottom: 1.6875rem;
  margin-top: 0.4375rem;
}

.above-posts-ads .ad-widget {
  max-width: 45.5rem;
}

.below-content .ad-widget {
  max-width: 60.625rem;
}

.below-posts .widget:first-of-type .widget-title {
  margin-top: 0;
}

.below-posts .csh-widget .more-reading-article.featured-post {
  float: none;
  margin-bottom: 1rem;
  margin-right: 0;
  max-width: none;
  width: 100%;
}

.below-posts .widget_bloguin_link_box_widget {
  display: none;
}

.below-posts .widget_bloguin_link_box_widget .widget-title {
  background: #3f4147;
  color: #fff;
  letter-spacing: 0.09375rem;
  margin-bottom: 0;
  margin-top: 0;
  padding: 0.5rem 0;
  text-align: center;
  text-transform: uppercase;
}

.below-posts .widget_bloguin_link_box_widget .link-box-content,
.below-posts .widget_bloguin_link_box_widget .link-box-thumb {
  width: 100%;
}

.below-posts .widget_bloguin_link_box_widget .link-box-thumb {
  height: 17.3125rem;
  margin-bottom: 0.75rem;
}

.below-posts .widget_bloguin_link_box_widget .link-box-item:last-child {
  border-bottom: none;
}

@media screen and (min-width: 22.5rem){
  .feature-5-grid .grid-item{
    float: left;
    display: block;
    margin-right: 1.20482%;
    width: 49.39759%;
  }
  .feature-5-grid .grid-item:last-child{
    margin-right: 0;
  }
  .feature-5-grid .grid-slot-1{
    width: 100%;
  }
  .feature-5-grid .grid-slot-3{
    margin-right: 0;
  }
  .feature-5-grid .grid-slot-5{
    margin-right: 0;
  }
}

@media screen and (min-width: 31.25rem) and (max-width: 64rem){
  .single .entry-content blockquote,
  .page .entry-content blockquote{
    margin-bottom: 2.625rem;
  }
}

@media screen and (min-width: 31.25rem){
  .entry-title{
    margin: 2.25rem 0 1.9375rem;
  }
  .site-header{
    padding-bottom: 0;
  }
  .site-header .search-form{
    -ms-flex-pack: end;
    justify-content: flex-end;
    padding-right: 0.3125rem;
  }
  .site-branding{
    position: absolute;
    top: -2rem;
    left: 1.25rem;
  }
  .footer-bottom{
    padding-bottom: 10.125rem;
  }
  .author-box .author-bio p{
    margin-bottom: 1.25rem;
  }
  .single .entry-meta{
    font-size: 1.375rem;
    line-height: 1.35;
  }
  .single .entry-meta .cat-links a{
    font-size: 1.375rem;
  }
}

@media screen and (min-width: 40rem){
  .wrap{
    padding: 0 2.8125rem;
  }
  .secondary{
    padding: 2.9375rem 0.625rem 1.3125rem 0.625rem;
  }
  .comment-form input:not(.submit){
    max-width: 15.625rem;
  }
  .comment-form-author label,
  .comment-form-email label,
  .comment-form-url label{
    width: 4.6875rem;
  }
  .comment-list .children{
    padding-left: 2.1875rem;
  }
  .footer-bottom .sitelist .dropdown-wrap{
    margin-bottom: 0;
  }
  .mobile-nav-menu .mobile-nav > li a{
    padding: 0 0.3125rem;
  }
  .mobile-nav-menu .mobile-nav > li:nth-child(-n+5) > a{
    font-size: 1.625rem;
  }
  .mobile-menu-more-link span{
    min-width: 9.0625rem;
    padding-right: 0;
  }
  .mobile-menu-more-link span .more-icon{
    height: 1.5625rem;
    width: 2.25rem;
    top: 0.25rem;
  }
  .menu-toggle{
    display: none;
  }
  table thead{
    display: table-row-group;
  }
  table th,
  table td{
    display: table-cell;
  }
  table th{
    display: table-cell;
  }
  table tr{
    display: table-row;
    margin-bottom: 0;
  }
  table td{
    border-bottom: 0;
  }
  table{
    border: 0.0625rem solid #ccc;
  }
  .footer-bottom .sitelist .dropdown-wrap{
    margin-bottom: 0;
  }
  .featured-post .entry-header .entry-title{
    font-size: 1.3125rem;
    line-height: 1.05;
  }
  .nav-links .button{
    font-size: 1.875rem;
  }
  .feature-5-grid .featured-post .entry-header .entry-title{
    font-size: 1.3125rem;
  }
  .feature-5-grid .entry-meta .category{
    font-size: 1.125rem;
  }
  .feature-5-grid .entry-title,
  .feature-5-grid .entry-meta{
    text-shadow: none;
  }
  .author-box .twitter{
    border-left: 0.0625rem solid #cccccc;
    display: inline;
    margin-left: 0.6875rem;
    padding-left: 1rem;
  }
  .author-box.author .twitter{
    border-left: none;
    margin-left: 0;
    padding-left: 0;
  }
  .gform_wrapper select{
    width: 49%;
  }
  .gform_wrapper .gform_body .gform_fields .gfield select,
  .gform_wrapper.gf_browser_chrome .gform_body .gform_fields .gfield select{
    width: 49% !important;
  }
  #content .gform_wrapper input[type="text"],
  #content .gform_wrapper input[type="url"],
  #content .gform_wrapper input[type="email"],
  #content .gform_wrapper input[type="tel"],
  #content .gform_wrapper input[type="number"],
  #content .gform_wrapper input[type="password"],
  #content .gform_wrapper input[type="file"],
  #content .gform_wrapper textarea{
    width: 49%;
  }
  #content .gform_wrapper .gf_left_half input[type="text"],
  #content .gform_wrapper .gf_left_half input[type="url"],
  #content .gform_wrapper .gf_left_half input[type="email"],
  #content .gform_wrapper .gf_left_half input[type="tel"],
  #content .gform_wrapper .gf_left_half input[type="number"],
  #content .gform_wrapper .gf_left_half input[type="password"],
  #content .gform_wrapper .gf_left_half input[type="file"],
  #content .gform_wrapper .gf_right_half input[type="text"],
  #content .gform_wrapper .gf_right_half input[type="url"],
  #content .gform_wrapper .gf_right_half input[type="email"],
  #content .gform_wrapper .gf_right_half input[type="tel"],
  #content .gform_wrapper .gf_right_half input[type="number"],
  #content .gform_wrapper .gf_right_half input[type="password"],
  #content .gform_wrapper .gf_right_half input[type="file"]{
    width: 100%;
  }
  #content .gform_wrapper .gf_left_half,
  #content .gform_wrapper .gf_right_half{
    width: 49%;
  }
  #content .gform_wrapper .gf_left_half{
    margin-right: 2%;
  }
  .embed-block p{
    font-size: 1.5rem;
  }
  .single .single-post-featured-image{
    margin: 0 auto;
    max-width: 100%;
  }
  .clone-widget .featuredsidebar{
    padding: 0 3.125rem;
  }
  .clone-widget .featuredsidebar .image-as-background{
    min-height: 19.125rem;
  }
  .link-box .link-box-content{
    padding: 0 3.125rem;
  }
  .link-box-third{
    width: 44%;
  }
}

@media screen and (min-width: 40rem) and (max-width: 48rem){
  .nav-links .icon{
    height: 2.25rem;
    width: 2.5rem;
    margin-left: 1.125rem;
  }
  .nav-links .nav-previous .icon{
    margin-right: 1.125rem;
  }
}

@media screen and (min-width: 41.875rem){
  .footer-bottom .widget{
    text-align: left;
    width: 33%;
  }
  .footer-top .sitelist{
    float: right;
    text-align: left;
  }
  .footer-bottom .footer-logos.mobile-only{
    text-align: left;
    width: 66%;
  }
  .footer-bottom .footer-logos.mobile-only .logo-wrap{
    display: inline-block;
  }
  .footer-bottom .footer-logos.mobile-only .wds_comeback_footer_logo_1_wrap{
    margin-bottom: 0;
  }
  .footer-bottom .footer-logos.mobile-only .wds_comeback_footer_logo_2_wrap{
    float: right;
  }
  .footer-top .social-icons{
    float: left;
    text-align: left;
  }
  .footer-bottom .widget{
    text-align: left;
    width: 33%;
  }
  .footer-top .sitelist{
    float: right;
    text-align: left;
  }
  .footer-bottom .footer-logos.mobile-only{
    text-align: left;
    width: 66%;
  }
  .footer-bottom .footer-logos.mobile-only .logo-wrap{
    display: inline-block;
  }
  .footer-bottom .footer-logos.mobile-only .wds_comeback_footer_logo_1_wrap{
    margin-bottom: 0;
  }
  .footer-bottom .footer-logos.mobile-only .wds_comeback_footer_logo_2_wrap{
    float: right;
  }
  .footer-top .social-icons{
    float: left;
    text-align: left;
  }
}

@media screen and (min-width: 43.75rem){
  .feature-5-grid.mobile-disable{
    display: block;
  }
  .hide-in-mobile{
    display: block;
  }
  .link-box-third .link-box-thumb{
    height: 10rem;
  }
}

@media screen and (min-width: 48rem){
  h2,
  .h2,
  .entry-title{
    font-size: 2rem;
  }
  h3,
  .h3,
  .horizontal-blog-card .card-title .entry-title{
    font-size: 1.75rem;
  }
  h4,
  .h4,
  .cat-links a,
  .horizontal-blog-card footer .byline{
    font-size: 1.5rem;
  }
  h5,
  .h5,
  .secondary .widget .widget-title{
    font-size: 1.5rem;
  }
  h6,
  .h6,
  .below-posts .widget_bloguin_link_box_widget .widget-title{
    font-size: 1.25rem;
  }
  .comment-list .children{
    padding-left: 3.75rem;
  }
  .single .comment-wrap{
    margin-bottom: 1.6875rem;
  }
  .footer-top .menu-primary-menu-container li{
    float: left;
  }
  .social-icons{
    padding: 0.5625rem 0.9375rem 0.3125rem;
  }
  .social-icons .social-icon{
    padding: 0.25rem;
  }
  .mobile-nav.dropdown .visible .sub-menu .sub-menu,
  .mobile-nav.dropdown .visible:hover .sub-menu .sub-menu,
  .mobile-nav.dropdown .visible:focus .sub-menu .sub-menu,
  .mobile-nav.dropdown .visible:active .sub-menu .sub-menu{
    bottom: auto;
  }
  .mobile-nav.dropdown .sub-menu{
    left: auto;
    right: 0;
  }
  .main-navigation a{
    font-size: 0.9375rem;
    padding: 1.0625rem 0.5rem 1.1875rem;
  }
  .footer-top .menu-primary-menu-container li{
    float: left;
  }
  .featured-post{
    height: 28.125rem;
    margin-bottom: 4.1875rem;
  }
  .featured-post .entry-header{
    padding: 1.5625rem 1.9375rem 1.5625rem 1.6875rem;
  }
  .featured-post .entry-header .category{
    border-bottom: 0.25rem solid rgba(255, 255, 255, 0.6);
    display: block;
    padding-bottom: 0.9375rem;
  }
  .featured-post .entry-header .category .hilight{
    display: block;
  }
  .horizontal-blog-card{
    -ms-flex-align: center;
    align-items: center;
    border: none;
    border-top-width: 0.1875rem;
    box-shadow: -0.69375rem 0.625rem 1.25rem 0.1875rem rgba(4, 4, 4, 0.12);
    display: block;
    margin-bottom: 4.1875rem;
    padding-bottom: 1.25rem;
    padding-top: 0;
  }
  .horizontal-blog-card .cat-links a{
    margin-top: 0.5625rem;
  }
  .horizontal-blog-card .card-contents{
    padding-right: 0.625rem;
  }
  .horizontal-blog-card .card-title{
    padding: 0 0 0 1.25rem;
  }
  .horizontal-blog-card .card-title .entry-title{
    font-size: 1.75rem;
  }
  .horizontal-blog-card .card-excerpt{
    padding: 0 0 0 1.25rem;
  }
  .horizontal-blog-card .card-image, .horizontal-blog-card .clone-widget .featuredsidebar .image-as-background, .clone-widget .featuredsidebar .horizontal-blog-card .image-as-background{
    border-bottom: 0.375rem solid #000;
    margin: 0;
    min-height: 19.625rem;
    width: 100%;
  }
  .horizontal-blog-card footer{
    display: block;
    padding: 0 0 0 1rem;
    width: auto;
  }
  .horizontal-blog-card footer .byline{
    font-size: 0.8125rem;
    padding-left: 0.3125rem;
  }
  .horizontal-blog-card footer .comments-number{
    display: inline-block;
  }
  .nav-links .button{
    display: inline-block;
    font-size: 1.125rem;
    text-align: left;
  }
  .nav-links .nav-next{
    float: right;
    margin-top: 0;
  }
  .feature-5-grid .featured-post .entry-header .entry-title{
    font-size: 2.375rem;
  }
  .single .recent-posts.mobile-only{
    display: none;
  }
  .single .recent-posts.desktop-only{
    display: block;
  }
  .single .tags-links{
    display: block;
  }
  .hide-in-tablet{
    display: none;
  }
  .link-box-third .widget-title{
    font-size: 1.5rem;
    line-height: 2;
  }
  .link-box-third .link-box-list .link-box-item .link-box-link{
    font-size: 1.625rem;
  }
  .link-box-third .link-box-list .link-box-item{
    line-height: 1.35;
  }
  .below-content{
    margin-bottom: 3.5625rem;
  }
  .csh-widget .widget-title{
    font-size: 1.75rem;
    margin-bottom: 2.1875rem;
    text-align: left;
  }
  .below-content .csh-widget,
  .below-posts .csh-widget{
    margin-bottom: 4.25rem;
  }
  .below-content .csh-widget .more-reading-article,
  .below-posts .csh-widget .more-reading-article{
    height: 22rem;
    margin-right: 1.25rem;
    width: calc(50% - 20px);
  }
}

@media screen and (min-width: 48.9375rem){
  .admin-bar .mobile-nav-menu{
    padding-top: 2.5rem;
  }
  .admin-bar .close-mobile-menu{
    top: 2.5rem;
  }
}

@media screen and (min-width: 64rem) and (max-width: 76.25rem){
  .author-box .all-posts{
    display: block;
  }
  .author-box .twitter{
    border-left: none;
    display: block;
    margin-left: 0;
    padding-left: 0;
  }
}

@media screen and (min-width: 64rem){
  p{
    font-size: 1.25rem;
    line-height: 1.55;
    margin-bottom: 1.625rem;
  }
  .entry-title{
    font-size: 2.375rem;
    margin: 2.625rem 0 1.5625rem;
  }
  .primary .site-main{
    margin-right: 25rem;
    padding-right: 1.75rem;
  }
  .primary{
    float: left;
    width: 100%;
  }
  .secondary{
    float: right;
    margin-left: -25rem;
    margin-top: 0;
    max-width: 25rem;
    min-width: 25rem;
    padding: 0;
    width: 25rem;
  }
  #main,
  .site-main{
    margin-top: -15.625rem;
    padding-top: 15.625rem;
  }
  .page-content,
  .entry-content,
  .entry-summary{
    margin: 1.3125rem 0 0;
  }
  .footer-top{
    padding: 0 1.25em;
  }
  .footer-top .footer-navigation{
    display: block;
  }
  .footer-bottom{
    padding: 1.75rem 1.25em;
  }
  .footer-bottom .wrap{
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  .footer-bottom .widget{
    float: left;
    display: block;
    margin-right: 1.20482%;
    width: 17.77108%;
    margin-top: 1.375rem;
    padding: 0 0.625em 0 0;
  }
  .footer-bottom .widget:last-child{
    margin-right: 0;
  }
  .footer-bottom .widget + .widget{
    padding: 0 0.625em;
  }
  .footer-bottom .ad-widget{
    padding-left: 0.6875rem;
  }
  .footer-bottom .site-info{
    float: left;
    display: block;
    margin-right: 1.20482%;
    width: 49.39759%;
    padding-top: 1.125rem;
    padding-right: 0.1875rem;
    padding-left: 0.8125rem;
    margin-top: 0;
  }
  .footer-bottom .site-info:last-child{
    margin-right: 0;
  }
  .footer-bottom .sitelist{
    margin-left: 6.3253%;
    float: left;
    display: block;
    margin-right: 1.20482%;
    width: 24.09639%;
    display: block;
  }
  .footer-bottom .sitelist:last-child{
    margin-right: 0;
  }
  .footer-bottom .sitelist .dropdown-wrap{
    margin-bottom: 1.5625rem;
  }
  .footer-top .sitelist{
    display: none;
  }
  .footer-bottom .footer-logos .logo-wrap{
    display: block;
    margin-bottom: 0.625rem;
    margin-left: 0;
    max-width: 6.875rem;
  }
  .footer-bottom .footer-logos.mobile-only{
    display: none;
  }
  .footer-top .social-icons{
    display: none;
  }
  .search-form .search-field{
    font-size: 1rem;
    height: 2.125rem;
    padding: 0.0625rem 0.5625rem;
  }
  .search-form .search-field:focus{
    padding: 0.1875rem 0.5rem 0.1875rem 0.4375rem;
  }
  .fixed-header .site-header .search-form .search-field{
    position: absolute;
    right: 0;
    height: 4.0625rem;
    width: 3.75rem;
    transition: width 0.18s ease-in-out, background-color 0.18s ease-in-out;
    background: transparent;
    border-color: transparent;
    opacity: 0;
    z-index: 3;
  }
  .fixed-header .site-header .search-form .search-field:focus, .fixed-header .site-header .search-form .search-field.not-empty{
    background: #2c2c31;
    color: #fff;
    margin-right: 3.75rem;
    opacity: 1;
    width: 18.125rem;
    z-index: 1;
  }
  .fixed-header .site-header .search-form button{
    height: 4.0625rem;
    width: 3.75rem;
    background-color: #0e0e11;
    border-color: transparent;
    padding: 0;
    z-index: 2;
  }
  .fixed-header .site-header .search-form button svg{
    fill: #fff;
  }
  .search-form button{
    margin-right: 0.3125rem;
  }
  .site-header{
    position: relative;
    bottom: 0;
    margin-top: 0;
  }
  .fixed-header .site-header{
    position: fixed;
    top: 0;
    height: 4.0625rem;
    width: 100%;
    background: #2c2c31;
  }
  .admin-bar.fixed-header .site-header{
    top: 2rem;
  }
  .site-header .search-form{
    float: right;
    margin: 0.6875rem 1.25rem 0.375rem 0;
    padding-bottom: 0;
    padding-top: 0;
  }
  .fixed-header .site-header .search-form{
    margin: 0;
  }
  .site-branding{
    margin-top: 0;
    top: 0.5625rem;
  }
  .fixed-header .site-branding{
    top: 0;
  }
  .site-branding .custom-logo-link{
    padding-top: 0;
  }
  .fixed-header .site-branding .custom-logo-link img{
    max-height: 4.0625rem;
  }
  .fixed-header .site-branding .custom-logo-link{
    max-height: 4.0625rem;
  }
  .fixed-header .site-navigation-wrap{
    position: absolute;
    top: 0;
    width: 100%;
    z-index: -1;
  }
  .social-icons{
    position: absolute;
    right: 0;
    display: block;
  }
  .fixed-header .social-icons{
    display: none;
  }
  .social-icons .social-icon .icon-facebook{
    height: 2.4375rem;
    width: 2.4375rem;
  }
  .social-icons .social-icon .icon-facebook-square{
    height: 2.4375rem;
    width: 2.4375rem;
  }
  .social-icons .social-icon .icon-googleplus{
    height: 2.4375rem;
    width: 2.4375rem;
  }
  .social-icons .social-icon .icon-googleplus-square{
    height: 2.4375rem;
    width: 2.4375rem;
  }
  .social-icons .social-icon .icon-instagram{
    height: 2.4375rem;
    width: 2.4375rem;
  }
  .social-icons .social-icon .icon-instagram-square{
    height: 2.4375rem;
    width: 2.4375rem;
  }
  .social-icons .social-icon .icon-linkedin{
    height: 2.4375rem;
    width: 2.4375rem;
  }
  .social-icons .social-icon .icon-linkedin-square{
    height: 2.4375rem;
    width: 2.4375rem;
  }
  .social-icons .social-icon .icon-pinterest{
    height: 2.4375rem;
    width: 2.4375rem;
  }
  .social-icons .social-icon .icon-pinterest-square{
    height: 2.4375rem;
    width: 2.4375rem;
  }
  .social-icons .social-icon .icon-rss{
    height: 2.4375rem;
    width: 2.4375rem;
  }
  .social-icons .social-icon .icon-rss-square{
    height: 2.4375rem;
    width: 2.4375rem;
  }
  .social-icons .social-icon .icon-twitter{
    height: 2.4375rem;
    width: 2.4375rem;
  }
  .social-icons .social-icon .icon-twitter-square{
    height: 2.4375rem;
    width: 2.4375rem;
  }
  .social-icons .social-icon .icon-youtube{
    height: 2.4375rem;
    width: 2.4375rem;
  }
  .social-icons .social-icon .icon-youtube-square{
    height: 2.4375rem;
    width: 2.4375rem;
  }
  .footer-bottom{
    padding-bottom: 0;
  }
  .mobile-nav-menu{
    display: none;
  }
  .menu a:hover{
    background: #f4b225;
  }
  .main-navigation{
    display: inline-block;
    margin-left: 11rem;
    width: auto;
  }
  .footer-top{
    padding: 0 1.25em;
  }
  .footer-top .footer-navigation{
    display: block;
  }
  .footer-bottom{
    padding: 1.75rem 1.25em;
  }
  .footer-bottom .wrap{
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  .footer-bottom .widget{
    float: left;
    display: block;
    margin-right: 1.20482%;
    width: 17.77108%;
    margin-top: 1.375rem;
    padding: 0 0.625em 0 0;
  }
  .footer-bottom .widget:last-child{
    margin-right: 0;
  }
  .footer-bottom .widget + .widget{
    padding: 0 0.625em;
  }
  .footer-bottom .ad-widget{
    padding-left: 0.6875rem;
  }
  .footer-bottom .site-info{
    float: left;
    display: block;
    margin-right: 1.20482%;
    width: 49.39759%;
    padding-top: 1.125rem;
    padding-right: 0.1875rem;
    padding-left: 0.8125rem;
    margin-top: 0;
  }
  .footer-bottom .site-info:last-child{
    margin-right: 0;
  }
  .footer-bottom .sitelist{
    margin-left: 6.3253%;
    float: left;
    display: block;
    margin-right: 1.20482%;
    width: 24.09639%;
    display: block;
  }
  .footer-bottom .sitelist:last-child{
    margin-right: 0;
  }
  .footer-bottom .sitelist .dropdown-wrap{
    margin-bottom: 1.5625rem;
  }
  .footer-top .sitelist{
    display: none;
  }
  .footer-bottom .footer-logos .logo-wrap{
    display: block;
    margin-bottom: 0.625rem;
    margin-left: 0;
    max-width: 6.875rem;
  }
  .footer-bottom .footer-logos.mobile-only{
    display: none;
  }
  .footer-top .social-icons{
    display: none;
  }
  .featured-post{
    margin-bottom: 3.75rem;
  }
  .featured-post::after{
    background: linear-gradient(rgba(43, 38, 43, 0) 48%, #2b262b 95%, #2b262b 96%);
  }
  .feature-5-grid .featured-post{
    margin-bottom: 1.5rem;
  }
  .horizontal-blog-card{
    margin-bottom: 3.75rem;
  }
  .horizontal-blog-card .cat-links a{
    margin: 0.9375rem 0 0 0;
  }
  .horizontal-blog-card .card-excerpt{
    display: block;
  }
  .horizontal-blog-card footer{
    margin-top: 0;
  }
  .dropdown-wrap{
    width: 100%;
  }
  .feature-5-grid{
    margin-top: 1.5625rem;
  }
  .feature-5-grid .read-more{
    display: block;
  }
  .site .sumome-share-client-wrapper.sumome-share-client-wrapper-center{
    margin-bottom: 2.625rem;
  }
  .site .sumome-share-client-wrapper div.sumome-share-client.sumome-share-client-header-center-article .sumome-share-client-share,
  .site .sumome-share-client-wrapper div.sumome-share-client.sumome-share-client-bottom-center-article .sumome-share-client-share{
    height: 2.0625rem;
    width: 2.0625rem;
    margin-right: 1.0625rem;
  }
  .site .sumome-share-client-wrapper div.sumome-share-client.sumome-share-client-header-center-article .sumome-share-client-share img,
  .site .sumome-share-client-wrapper div.sumome-share-client.sumome-share-client-bottom-center-article .sumome-share-client-share img{
    height: 1.25rem;
    width: 1.25rem;
  }
  .site .sumome-share-client-wrapper div.sumome-share-client .sumome-share-client-share.sumome-share-client-share-share{
    height: 1.875rem;
    width: 3.625rem;
    margin-right: 1.25rem;
    top: -0.25rem;
  }
  .site .sumome-share-client-wrapper div.sumome-share-client .sumome-share-client-share.sumome-share-client-share-share span,
  .site .sumome-share-client-wrapper div.sumome-share-client .sumome-share-client-share.sumome-share-client-share-share strong{
    font-size: 1.125rem;
  }
  .site .sumome-share-client-wrapper div.sumome-share-client .sumome-share-client-share.sumome-share-client-share-share strong{
    top: -0.625rem;
  }
  .author-box.full{
    max-width: none;
  }
  .author-box .author-avatar{
    height: 4.5625rem;
    width: 4.5625rem;
    margin: 0.125rem 1.1875rem 0 0;
  }
  .author-box .author-title{
    font-size: 1.75rem;
    margin-top: 0.8125rem;
  }
  .author-box .author-bio{
    margin: 0.9375rem 0 1.5625rem 0.25rem;
    padding-right: 1.25rem;
  }
  .author-box .author-bio p{
    font-size: 1.125rem;
    line-height: 1.55;
    margin-bottom: 1.875rem;
  }
  .author-box .all-posts{
    font-size: 1rem;
    margin-left: 0.25rem;
  }
  .author-box .twitter{
    font-size: 1rem;
  }
  .author-box .author-ad-box{
    min-width: 18.75rem;
  }
  .embed-block,
  a.embed-block{
    margin-bottom: 2.375rem;
    margin-top: 3.75rem;
  }
  .embed-block .header{
    font-size: 1rem;
  }
  .embed-block h2,
  .embed-block .h2,
  .embed-block .entry-title,
  .embed-block h3,
  .embed-block .h3,
  .embed-block .horizontal-blog-card .card-title .entry-title, .horizontal-blog-card .card-title
  .embed-block .entry-title{
    font-size: 1.5rem;
    margin: 1rem 0 1.4375rem;
  }
  .embed-block p{
    font-size: 1rem;
    margin-bottom: 2.25rem;
  }
  .single .hentry:not(.horizontal-blog-card):not(.featured-post) > .entry-header,
  .page .hentry:not(.horizontal-blog-card):not(.featured-post) > .entry-header{
    margin-bottom: 3.25rem;
  }
  .single .hentry:not(.horizontal-blog-card):not(.featured-post) > .entry-title,
  .page .hentry:not(.horizontal-blog-card):not(.featured-post) > .entry-title{
    margin-bottom: 1.625rem;
    margin-top: 1rem;
    width: 95.8%;
  }
  .single .entry-custom-excerpt{
    font-size: 1.5rem;
    margin-bottom: 4.375rem;
    margin-left: 0.5625rem;
  }
  .single .entry-custom-excerpt::before{
    left: -0.375rem;
  }
  .single .entry-meta{
    font-size: 1.125rem;
    line-height: 1.25;
    margin: 1.875rem 0;
  }
  .single .entry-meta .cat-links{
    line-height: 1.25;
    margin-right: 1rem;
  }
  .single .entry-meta .cat-links a{
    font-size: 1.125rem;
    padding: 0.0625rem 1.0625rem;
  }
  .single .entry-content,
  .page .entry-content{
    padding-right: 4.0625rem;
  }
  .single .entry-content blockquote,
  .page .entry-content blockquote{
    max-width: 41.6875rem;
  }
  .single .recent-posts{
    margin-right: 25rem;
    padding-right: 1.75rem;
  }
  .archive .page-title{
    font-size: 2.375rem;
  }
  .secondary .widget .widget-title{
    font-size: 1.25rem;
    line-height: 2.4;
    margin-left: 0;
    width: 100%;
  }
  .clone-widget .featuredsidebar{
    padding: 0;
    width: 18.75rem;
  }
  .clone-widget .featuredsidebar .image-as-background{
    margin-bottom: 1.5625rem;
    min-height: 12.5rem;
  }
  .clone-widget .featuredsidebar .image-as-background h4{
    font-size: 1.125rem;
  }
  .link-box .link-box-content{
    padding: 0;
    width: 18.75rem;
  }
  .link-box .link-box-thumb{
    height: 12.5rem;
  }
  .link-box .link-box-list .link-box-item .link-box-link{
    font-size: 1.125rem;
  }
  .link-box-third{
    width: 50%;
  }
  .link-box-third .link-box-thumb{
    height: 12.5rem;
  }
  .link-box-third .widget-title{
    text-align: left;
  }
  .below-content .csh-widget .more-reading-article,
  .below-posts .csh-widget .more-reading-article{
    height: 12.375rem;
    width: calc(25% - 15px);
    margin-bottom: 0;
    max-width: 18.75rem;
  }
  .below-content .csh-widget .more-reading-article h4,
  .below-posts .csh-widget .more-reading-article h4{
    font-size: 1.1875rem;
  }
  .top-ad-section{
    margin-bottom: 1.375rem;
    margin-top: 1.875rem;
  }
  .above-posts-ads{
    margin-bottom: 1.75rem;
  }
  .below-posts{
    padding-bottom: 1rem;
  }
  .below-posts .csh-widget{
    margin-bottom: 3.0625rem;
  }
  .below-posts .widget_bloguin_link_box_widget{
    display: block;
    float: left;
    max-width: 23.75rem;
    width: 47.5%;
  }
  .below-posts .widget_bloguin_link_box_widget:last-of-type{
    float: right;
  }
  .below-posts .widget_bloguin_link_box_widget .link-box-thumb{
    margin-bottom: 2.4375rem;
  }
}

@media screen and (min-width: 67rem){
  .footer-bottom .sitelist .dropdown-wrap{
    margin-right: 0;
  }
  .footer-bottom .footer-logos .logo-wrap{
    display: inline-block;
    margin-bottom: 0;
    margin-left: 0.625rem;
  }
  .footer-bottom .sitelist .dropdown-wrap{
    margin-right: 0;
  }
  .footer-bottom .footer-logos .logo-wrap{
    display: inline-block;
    margin-bottom: 0;
    margin-left: 0.625rem;
  }
}

@media screen and (min-width: 76.25rem){
  .main-navigation a{
    font-size: 1.125rem;
    margin: 0 0.3125rem;
    padding-left: 0.5rem;
    padding-right: 0.5rem;
  }
  .horizontal-blog-card{
    min-height: 17.9375rem;
    padding-bottom: 0;
  }
  .horizontal-blog-card .card-contents{
    border-top: 0.375rem solid #000;
  }
  .horizontal-blog-card .card-contents[class*="nba"]{
    border-top-color: #e25b00;
  }
  .horizontal-blog-card .card-contents[class*="nfl"]{
    border-top-color: #000;
  }
  .horizontal-blog-card .card-contents[class*="mlb"]{
    border-top-color: #006732;
  }
  .horizontal-blog-card .card-contents[class*="ncaa"]{
    border-top-color: #d10d00;
  }
  .horizontal-blog-card .card-contents[class*="nhl"]{
    border-top-color: #8bc0eb;
  }
  .horizontal-blog-card .card-contents[class*="pop-culture"]{
    border-top-color: #deca00;
  }
  .horizontal-blog-card .card-contents[class*="culture"]{
    border-top-color: #deca00;
  }
  .horizontal-blog-card .card-title .entry-title{
    line-height: 1.2;
    margin-bottom: 0.875rem;
  }
  .horizontal-blog-card .card-excerpt p{
    line-height: 1.375;
  }
  .horizontal-blog-card .card-excerpt.long-title{
    display: none;
  }
  .horizontal-blog-card .card-image, .horizontal-blog-card .clone-widget .featuredsidebar .image-as-background, .clone-widget .featuredsidebar .horizontal-blog-card .image-as-background{
    float: left;
    display: block;
    margin-right: 1.20482%;
    width: 48.13253%;
    border: none;
    margin-right: 0.875rem;
    min-height: 17.9375rem;
  }
  .horizontal-blog-card .card-image:last-child, .horizontal-blog-card .clone-widget .featuredsidebar .image-as-background:last-child, .clone-widget .featuredsidebar .horizontal-blog-card .image-as-background:last-child{
    margin-right: 0;
  }
  .horizontal-blog-card footer{
    position: absolute;
    bottom: 0.5625rem;
    left: 48.13253%;
  }
  .horizontal-blog-card footer .byline{
    padding-left: 0;
  }
  .feature-5-grid .grid-slot-1 .featured-post{
    height: 35rem;
  }
  .feature-5-grid .grid-slot-1{
    float: left;
    display: block;
    margin-right: 1.20482%;
    width: 54.03614%;
    margin-right: 1.9%;
  }
  .feature-5-grid .grid-slot-1:last-child{
    margin-right: 0;
  }
  .feature-5-grid .grid-slot-2 .featured-post{
    height: 35rem;
  }
  .feature-5-grid .grid-slot-2{
    float: left;
    display: block;
    margin-right: 1.20482%;
    width: 44.05904%;
    margin-right: 0;
  }
  .feature-5-grid .grid-slot-2:last-child{
    margin-right: 0;
  }
  .feature-5-grid .grid-slot-3{
    float: left;
    display: block;
    margin-right: 1.20482%;
    width: 42.47518%;
    margin-right: 1.9%;
  }
  .feature-5-grid .grid-slot-3:last-child{
    margin-right: 0;
  }
  .feature-5-grid .grid-slot-4{
    float: left;
    display: block;
    margin-right: 1.20482%;
    width: 26.86265%;
    margin-right: 1.9%;
  }
  .feature-5-grid .grid-slot-4:last-child{
    margin-right: 0;
  }
  .feature-5-grid .grid-slot-5{
    float: left;
    display: block;
    margin-right: 1.20482%;
    width: 26.86265%;
    margin-right: 0;
  }
  .feature-5-grid .grid-slot-5:last-child{
    margin-right: 0;
  }
  .author-box{
    display: -ms-flexbox;
    display: flex;
    margin-bottom: 3rem;
    max-width: 47.6875rem;
    padding: 0.625rem 0.875rem 1rem 1rem;
    width: 100%;
  }
  .author-box .author-ad-box{
    margin-top: 0;
    text-align: right;
  }
  .below-posts .csh-widget .featured{
    display: -ms-flexbox;
    display: flex;
    -ms-flex-flow: row wrap;
    flex-flow: row wrap;
    -ms-flex-pack: justify;
    justify-content: space-between;
    width: 100%;
  }
  .below-posts .csh-widget .more-reading-article.featured-post{
    height: 12.9375rem;
    width: 47.5%;
    margin-bottom: 1.125rem;
    max-width: 23.75rem;
  }
}

@media screen and (min-width: 83.125rem){
  .below-posts .csh-widget .more-reading-article.featured-post{
    width: 50%;
  }
  .below-posts .widget_bloguin_link_box_widget{
    width: 50%;
  }
}

@media screen and (min-width: 85.375rem){
  .wrap{
    max-width: 78.75rem;
    padding: 0;
  }
  .site-content{
    margin: 1.8125rem auto 3.3125rem;
  }
  .footer-top .menu-primary-menu-container a{
    padding: 1.3125rem 0.9375rem 1.25rem;
  }
  .footer-bottom .footer-logos .logo-wrap{
    margin-left: 1.5625rem;
  }
  .main-navigation{
    margin-left: 13.375rem;
  }
  .footer-top .menu-primary-menu-container a{
    padding: 1.3125rem 0.9375rem 1.25rem;
  }
  .footer-bottom .footer-logos .logo-wrap{
    margin-left: 1.5625rem;
  }
  .feature-5-grid .grid-slot-1{
    float: left;
    display: block;
    margin-right: 1.20482%;
    width: 55.3012%;
    margin-right: 1.374%;
  }
  .feature-5-grid .grid-slot-1:last-child{
    margin-right: 0;
  }
  .feature-5-grid .grid-slot-2{
    float: left;
    display: block;
    margin-right: 1.20482%;
    width: 43.3253%;
    margin-right: 0;
  }
  .feature-5-grid .grid-slot-2:last-child{
    margin-right: 0;
  }
  .feature-5-grid .grid-slot-3{
    float: left;
    display: block;
    margin-right: 1.20482%;
    width: 43.49398%;
    margin-right: 1.374%;
  }
  .feature-5-grid .grid-slot-3:last-child{
    margin-right: 0;
  }
  .feature-5-grid .grid-slot-4{
    float: left;
    display: block;
    margin-right: 1.20482%;
    width: 26.87952%;
    margin-right: 1.374%;
  }
  .feature-5-grid .grid-slot-4:last-child{
    margin-right: 0;
  }
  .feature-5-grid .grid-slot-5{
    float: left;
    display: block;
    margin-right: 1.20482%;
    width: 26.87952%;
    margin-right: 0;
  }
  .feature-5-grid .grid-slot-5:last-child{
    margin-right: 0;
  }
  .hide-in-tablet{
    display: block;
  }
  .hide-in-desktop{
    display: none;
  }
  .link-box-third{
    width: 34%;
  }
}

@media screen and (min-width: 100rem){
  .feature-5-grid .grid-slot-1{
    float: left;
    display: block;
    margin-right: 1.20482%;
    width: 55.72289%;
    margin-right: 1.5%;
  }
  .feature-5-grid .grid-slot-1:last-child{
    margin-right: 0;
  }
  .feature-5-grid .grid-slot-2{
    float: left;
    display: block;
    margin-right: 1.20482%;
    width: 42.77711%;
    margin-right: 0;
  }
  .feature-5-grid .grid-slot-2:last-child{
    margin-right: 0;
  }
  .feature-5-grid .grid-slot-3{
    float: left;
    display: block;
    margin-right: 1.20482%;
    width: 43.07229%;
    margin-right: 1.5%;
  }
  .feature-5-grid .grid-slot-3:last-child{
    margin-right: 0;
  }
  .feature-5-grid .grid-slot-4{
    float: left;
    display: block;
    margin-right: 1.20482%;
    width: 26.96386%;
    margin-right: 1.5%;
  }
  .feature-5-grid .grid-slot-4:last-child{
    margin-right: 0;
  }
  .feature-5-grid .grid-slot-5{
    float: left;
    display: block;
    margin-right: 1.20482%;
    width: 26.96386%;
    margin-right: 0;
  }
  .feature-5-grid .grid-slot-5:last-child{
    margin-right: 0;
  }
}

@media screen and (min-width: 105rem){
  .site-header .wrap{
    max-width: 80rem;
  }
  .main-navigation{
    margin-left: 0;
  }
  .feature-5-grid .grid-slot-1{
    float: left;
    display: block;
    margin-right: 1.20482%;
    width: 55.3012%;
    margin-right: 1.374%;
  }
  .feature-5-grid .grid-slot-1:last-child{
    margin-right: 0;
  }
  .feature-5-grid .grid-slot-2{
    float: left;
    display: block;
    margin-right: 1.20482%;
    width: 43.3253%;
    margin-right: 0;
  }
  .feature-5-grid .grid-slot-2:last-child{
    margin-right: 0;
  }
  .feature-5-grid .grid-slot-3{
    float: left;
    display: block;
    margin-right: 1.20482%;
    width: 43.49398%;
    margin-right: 1.374%;
  }
  .feature-5-grid .grid-slot-3:last-child{
    margin-right: 0;
  }
  .feature-5-grid .grid-slot-4{
    float: left;
    display: block;
    margin-right: 1.20482%;
    width: 26.87952%;
    margin-right: 1.374%;
  }
  .feature-5-grid .grid-slot-4:last-child{
    margin-right: 0;
  }
  .feature-5-grid .grid-slot-5{
    float: left;
    display: block;
    margin-right: 1.20482%;
    width: 26.87952%;
    margin-right: 0;
  }
  .feature-5-grid .grid-slot-5:last-child{
    margin-right: 0;
  }
}

@media screen and (max-width: 48rem){
  .single .comment-toggle{
    font-size: 1.4375rem;
    padding: 1rem 1.75rem;
    width: 100%;
  }
}

@media screen and (min-height: 31.25rem) and (max-width: 63.9375rem){
  .search-form .search-field{
    font-size: 1rem;
  }
  .site-header{
    bottom: 4.3125rem;
    padding-bottom: 0.3125rem;
    position: fixed;
  }
  .site-header .search-form{
    -ms-flex-pack: end;
    justify-content: flex-end;
    margin-top: 0.3125rem;
    padding-bottom: 0;
    padding-right: 0.3125rem;
    padding-top: 0;
  }
  .site-branding{
    position: absolute;
    top: -1.125rem;
    left: 0.3125rem;
    z-index: 101;
  }
  .mobile-menu-more .site-branding{
    z-index: 99;
  }
  .site-branding .custom-logo-link img{
    max-height: 4.25rem;
  }
}

@media screen and (max-height: 48rem){
  .sumome-scrollbox-popup{
    display: none;
  }
}

@media screen and (max-height: 40rem){
  .sumome-smartbar-popup{
    display: none;
  }
}

@media screen and (min-height: 31.25rem) and (max-width: 48rem){
  .search-form .search-field{
    width: 50%;
  }
}

@media screen and (max-width: 64rem){
  .posts-navigation{
    margin-bottom: 2.75rem;
  }
  .site .sumome-share-client-wrapper div.sumome-share-client.sumome-share-client-bottom-center-article{
    margin-bottom: 2.625rem;
  }
  .sumome-scrollbox-popup.sumome-scrollbox-bottom{
    bottom: 4.375rem !important;
    z-index: 1;
  }
}

@media screen and (max-width: 31.125rem){
  .site .sumome-share-client-wrapper.sumome-share-client-wrapper-mobile-bottom-bar{
    bottom: 4.4375rem !important;
  }
}

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInN0eWxlLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm91cmJvbi1uZWF0L2FwcC9hc3NldHMvc3R5bGVzaGVldHMvZ3JpZC9fYm94LXNpemluZy5zY3NzIiwiYmFzZS9fdHlwb2dyYXBoeS5zY3NzIiwidXRpbGl0aWVzL3ZhcmlhYmxlcy9fY29sb3JzLnNjc3MiLCJ1dGlsaXRpZXMvdmFyaWFibGVzL190eXBvZ3JhcGh5LnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm91cmJvbi9hcHAvYXNzZXRzL3N0eWxlc2hlZXRzL2Z1bmN0aW9ucy9fcHgtdG8tcmVtLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm91cmJvbi9hcHAvYXNzZXRzL3N0eWxlc2hlZXRzL2FkZG9ucy9fcG9zaXRpb24uc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib3VyYm9uL2FwcC9hc3NldHMvc3R5bGVzaGVldHMvYWRkb25zL19zaXplLnNjc3MiLCJ1dGlsaXRpZXMvbWl4aW5zL193b3JkLWJyZWFrLnNjc3MiLCJiYXNlL19hY2Nlc3NpYmlsaXR5LnNjc3MiLCJ1dGlsaXRpZXMvdmFyaWFibGVzL19ib3gtbW9kZWwuc2NzcyIsImJhc2UvX2FsaWdubWVudHMuc2NzcyIsInV0aWxpdGllcy9taXhpbnMvX21hcmdpbi1hdXRvLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm91cmJvbi1uZWF0L2FwcC9hc3NldHMvc3R5bGVzaGVldHMvbWl4aW5zL19jbGVhcmZpeC5zY3NzIiwiYmFzZS9fZWxlbWVudHMuc2NzcyIsImJhc2UvX21lZGlhLnNjc3MiLCJ1dGlsaXRpZXMvbWl4aW5zL19tYXJnaW4tcGFkZGluZy1yZXNldC5zY3NzIiwiYmFzZS9fd2luZG93LXJlYWR5LnNjc3MiLCJiYXNlL19wYXR0ZXJucy5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2JvdXJib24vYXBwL2Fzc2V0cy9zdHlsZXNoZWV0cy9mdW5jdGlvbnMvX3B4LXRvLWVtLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm91cmJvbi1uZWF0L2FwcC9hc3NldHMvc3R5bGVzaGVldHMvZ3JpZC9fc3Bhbi1jb2x1bW5zLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm91cmJvbi1uZWF0L2FwcC9hc3NldHMvc3R5bGVzaGVldHMvZ3JpZC9fcHJpdmF0ZS5zY3NzIiwic3RydWN0dXJlL19sYXlvdXQuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib3VyYm9uLW5lYXQvYXBwL2Fzc2V0cy9zdHlsZXNoZWV0cy9ncmlkL19vdXRlci1jb250YWluZXIuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib3VyYm9uLW5lYXQvYXBwL2Fzc2V0cy9zdHlsZXNoZWV0cy9ncmlkL19maWxsLXBhcmVudC5zY3NzIiwibW9kdWxlcy9fY29tbWVudHMuc2NzcyIsIm1vZHVsZXMvX2NvbnRlbnQuc2NzcyIsIm1vZHVsZXMvX2Zvb3Rlci5zY3NzIiwibW9kdWxlcy9fZm9ybXMuc2NzcyIsIm1vZHVsZXMvX2J1dHRvbnMuc2NzcyIsIm1vZHVsZXMvX2hlYWRlci5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2JvdXJib24vYXBwL2Fzc2V0cy9zdHlsZXNoZWV0cy9hZGRvbnMvX3ByZWZpeGVyLnNjc3MiLCJtb2R1bGVzL19oZXJvLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm91cmJvbi9hcHAvYXNzZXRzL3N0eWxlc2hlZXRzL2hlbHBlcnMvX2RpcmVjdGlvbmFsLXZhbHVlcy5zY3NzIiwibW9kdWxlcy9faWNvbnMuc2NzcyIsInV0aWxpdGllcy9taXhpbnMvX2xpc3QtcmVzZXQuc2NzcyIsIm1vZHVsZXMvX21vYmlsZS1uYXZpZ2F0aW9uLnNjc3MiLCJ1dGlsaXRpZXMvbWl4aW5zL192ZXJ0aWNhbC1hbGlnbi5zY3NzIiwibW9kdWxlcy9fbmF2aWdhdGlvbi5zY3NzIiwibW9kdWxlcy9fdGFibGVzLnNjc3MiLCJtb2R1bGVzL19tb2RhbC5zY3NzIiwibW9kdWxlcy9fbGFiZWxzLnNjc3MiLCJtb2R1bGVzL19mZWF0dXJlZC5zY3NzIiwidXRpbGl0aWVzL21peGlucy9fYmFja2ZhY2UtdmlzaWJpbGl0eS5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2JvdXJib24vYXBwL2Fzc2V0cy9zdHlsZXNoZWV0cy9jc3MzL190cmFuc2l0aW9uLnNjc3MiLCJtb2R1bGVzL19hcnRpY2xlLWNhcmRzLnNjc3MiLCJ1dGlsaXRpZXMvbWl4aW5zL19ibG9nLWNhcmQtcGFkZGluZy5zY3NzIiwibW9kdWxlcy9fbGlzdC10b2dnbGUuc2NzcyIsIm1vZHVsZXMvX3BhZ2luYXRpb24uc2NzcyIsIm1vZHVsZXMvX2ZlYXR1cmUtNS5zY3NzIiwibW9kdWxlcy9fc3Vtb21lLnNjc3MiLCJtb2R1bGVzL19wb3N0LXBhZ2luYXRpb24uc2NzcyIsIm1vZHVsZXMvX2F1dGhvci1ib3guc2NzcyIsInBsdWdpbnMvX2pldHBhY2suc2NzcyIsInBsdWdpbnMvX2dyYXZpdHktZm9ybXMuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9ib3VyYm9uL2FwcC9hc3NldHMvc3R5bGVzaGVldHMvYWRkb25zL190cmlhbmdsZS5zY3NzIiwicGx1Z2lucy9fZW1iZWRpdC1wcm8uc2NzcyIsInZpZXdzL19zaW5nbGUtcG9zdC5zY3NzIiwidmlld3MvX2FyY2hpdmUuc2NzcyIsInZpZXdzL19zZWFyY2guc2NzcyIsIndpZGdldHMvX3dpZGdldHMuc2NzcyIsIndpZGdldHMvX3NpZGViYXItd2lkZ2V0cy5zY3NzIiwid2lkZ2V0cy9fYm90dG9tLWZlYXR1cmVkLnNjc3MiLCJ3aWRnZXRzL19hZC13aWRnZXRzLnNjc3MiLCJ3aWRnZXRzL19iZWxvdy1zaW5nbGUtcG9zdC5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2JvdXJib24tbmVhdC9hcHAvYXNzZXRzL3N0eWxlc2hlZXRzL2dyaWQvX21lZGlhLnNjc3MiLCJzdHlsZS5jc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvYm91cmJvbi1uZWF0L2FwcC9hc3NldHMvc3R5bGVzaGVldHMvZ3JpZC9fc2hpZnQuc2NzcyJdLCJu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OztBQUlGO0VBQ0MsdUNmT2tCO0VlTmxCLHdCQ1A4QjtDRDhCOUI7O0FBekJEOztFQU9FLGtCQUFpQjtDQUNqQjs7QUFSRjtFQVlFLHVCZlZlO0VlV2YsNkJmRWM7RWVEZCxlZk5pQjtFZU9qQixvQkNwQjZCO0VEcUI3QixpQkNyQjZCO0NEc0I3Qjs7QUFqQkY7RUFxQkUsdUJmTmM7RWVPZCxxQmJ6QjhCO0VhMEI5QixtQmIxQjhCO0NhMkI5Qjs7QUFRSDtFQUdDLG1CQUFrQjtDQStCbEI7O0FMMUVDO0VBQ0UsWUFBVztFQUNYLFlBQVc7RUFDWCxlQUFjO0NBQ2Y7O0FLb0NIO0VYaEJJLGtCRm5CNkI7RUV5QjdCLFlXaUJnQjtFRUNoQixZQUFPO0VBR0wsZUFBYztFQWVkLHVCQ3RFMEM7RUR1RTFDLGlCQzVFeUM7RUgyRDdDLDZCZnpDZ0I7RWUwQ2hCLHlCYjlDK0I7RWErQy9CLHVCQ2pEOEI7RURrRDlCLG1CQUFrQjtFQUNsQixtQkFBa0I7Q0FtQmxCOztBQWpDRjtFRThCUSxnQkFBOEI7Q0FDL0I7O0FGL0JQO0VBa0JHLFlmakRlO0Vla0RmLHVCYnREOEI7Q2F1RDlCOztBQXBCSDtFWmpCRSxtQll5QzJCO0VackN2QixVWXFDb0M7RUFFdkMsdUJmeERlO0VleURmLHFDYjlEOEI7RWErRDlCLHNDYi9EOEI7RWFnRTlCLG1CYmhFOEI7RWFpRTlCLGtCYmpFOEI7RWFrRTlCLFlBQVc7Q0FDWDs7QUlwRkg7RUNxQkUsZ0JKTjhCO0VJUTVCLGtCQUFVO0VBQ1YsbUJBQVc7RURyQmQsa0JBQXNCO0NBVXRCOztBVERDO0VBQ0UsWUFBVztFQUNYLFlBQVc7RUFDWCxlQUFjO0NBQ2Y7O0FTR0g7RUFDQyxXQUFVO0NBU1Y7O0FBVkQ7RUFJRSxnQkFBZTtDQUtmOztBQU9GO0VBQ0MscUJBQW9CO0NBS3BCOztBQU1EO0VFdENFLFlBQVc7Q0ZzRFo7O0FBaEJEO0VBSUUsWUFBVztDQU1YOztBQVlGO0VFNURFLFlBQVc7RUYrRFosb0JuQnZEc0I7RW1Cd0R0QixvQmpCeERnQztFaUJ5RGhDLHFCakJ6RGdDO0VpQjBE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cUIyQmU7RUFFbEIsZUFBYztFQUNkLG9CQUFtQjtDQUNuQjs7QUFFRDtFQUNDLFl6QnREaUI7RXlCdURqQixlQUFjO0VBQ2QsNEN4QmpGMEM7RXdCa0YxQyxnQnZCOURnQztFdUIrRGhDLGlCQUFnQjtFQUNoQix5QnZCaEVnQztFdUJpRWhDLHNCdkJqRWdDO0V1QmtFaEMsMEJBQXlCO0NBQ3pCOztBQUVEO0VBQ0MsbUJsQjFGa0I7RWtCMkZsQixvQnZCdkVnQztFdUJ3RWhDLG1DdkJ4RWdDO0N1QmdGaEM7O0FBWEQ7RUFNRSwrQnpCK0JrQjtFeUI5QmxCLGV6QmlDeUI7RXlCaEN6Qix1QnpCNkJrQjtFeUI1QmxCLG9DdkI5RStCO0N1QitFL0I7O0FBUUY7RXRCckVFLG1Cc0JzRXlCO0VBRTFCLGlCekJyRmlCO0V5QnNGakIsNkJ6QjlFcUI7RXlCK0VyQixzQkFBcUI7RUFDckIscUJ2QjdGZ0M7Q3VCaUloQzs7QUExQ0Q7RXRCckVFLG1Cc0I4RTBCO0VyQjdFeEIsYXFCOEVxQjtFckJ4RXJCLFlxQndFZ0I7RUFFbEIseUJBQWdCO0tBQWhCLHNCQUFnQjtVQUFoQixpQkFBZ0I7RUFDaEIsd0JBQXVCO0VBQ3ZCLGFBQVk7RUFDWixzQkFBcUI7RUFDckIsOEN2QnZHK0I7RXVCd0cvQixXQUFVO0NBV1Y7O0FBNUJGO0VBcUJHLGNBQWE7Q0FDYjs7QUF0Qkg7RUF5QkcsK0J6Qk5pQjtFeUJPakIsMkN2QmpIOEI7Q3VCa0g5Qjs7QUEzQkg7RXRCckVFLG1Cc0JvRzBCO0V0QmhHdEIsU3NCZ0cyQjtFdEJoRzNCLGlCRHRCMkI7RUVtQjdCLGVGbkI2QjtFRXlCN0IsZ0JGekI2QjtFdUJ5SC9CLHFDekJuR21CO0V5Qm9HbkIsY3pCcEdtQjtFeUJxR25CLHVCdkIzSCtCO0V1QjRIL0IseUN2QjVIK0I7RXVCNkgvQiw0QkFBMkI7RUFDM0IsV0FBVTtDQUVWOztBQU1GO0VBQ0MscUJBQWE7RUFBYixjQUFhO0VBQ2IsbUJBQWtCO0NBeUZsQjs7QUEzRkQ7RUFLRSxnQ3pCcEhrQjtFeUJxSGxCLGlCQUFnQjtFQUNoQixt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QixtQjdCN0I0QjtDNkI4QjVCOztBQWpETDtFQW9ESyxjL0JlbUI7QytCZG5COztBQXJETDtFM0JzQ0ksaUJGbkI2QjtFRXlCN0IsZ0JGekI2QjtFNkJtQjdCLFcvQmRjO0UrQmVkLGtCN0JwQjZCO0M2Qm1DN0I7O0FBbkJEO0UzQkdDLGlCRm5CNkI7RUV5QjdCLGdCRnpCNkI7RTZCNkI1QixtQjdCN0I0QjtDNkI4QjVCOztBQWpETDtFQW9ESyxjL0JnQnFCO0MrQmZyQjs7QUFyREw7RTNCc0NJLGlCRm5CNkI7RUV5QjdCLGdCRnpCNkI7RTZCbUI3QixXL0JkYztFK0JlZCxrQjdCcEI2QjtDNkJtQzdCOztBQW5CRDtFM0JHQyxpQkZuQjZCO0VFeUI3QixnQkZ6QjZCO0U2QjZCNUIsbUI3QjdCNEI7QzZCOEI1Qjs7QUFqREw7RUFvREssYy9CZ0JxQjtDK0JmckI7O0FBckRMO0UzQnNDSSxpQkZuQjZCO0VFeUI3QixnQkZ6QjZCO0U2Qm1CN0IsVy9CZGM7RStCZWQsa0I3QnBCNkI7QzZCbUM3Qjs7QUFuQkQ7RTNCR0MsaUJGbkI2QjtFRXlCN0IsZ0JGekI2QjtFNkI2QjVCLG1CN0I3QjRCO0M2QjhCNUI7O0FBakRMO0VBb0RLLGMvQmlCb0I7QytCaEJwQjs7QUFyREw7RTNCc0NJLGlCRm5CNkI7RUV5QjdCLGdCRnpCNkI7RTZCbUI3QixXL0JkYztFK0JlZCxrQjdCcEI2QjtDNkJtQzdCOztBQW5CRDtFM0JHQyxpQkZuQjZCO0VFeUI3QixnQkZ6QjZCO0U2QjZCNUIsbUI3QjdCNEI7QzZCOEI1Qjs7QUFqREw7RUFvREssYy9CaUJvQjtDK0JoQnBCOztBQXJETDtFM0JzQ0ksaUJGbkI2QjtFRXlCN0IsZ0JGekI2QjtFNkJtQjdCLFcvQmRjO0UrQmVkLGtCN0JwQjZCO0M2Qm1DN0I7O0FBbkJEO0UzQkdDLGlCRm5CNkI7RUV5QjdCLGdCRnpCNkI7RTZCNkI1QixtQjdCN0I0QjtDNkI4QjVCOztBQWpETDtFQW9ESyxjL0JrQm1CO0MrQmpCbkI7O0FBckRMO0UzQnNDSSxpQkZuQjZCO0VFeUI3QixnQkZ6QjZCO0U2Qm1CN0IsVy9CZGM7RStCZWQsa0I3QnBCNkI7QzZCbUM3Qjs7QUFuQkQ7RTNCR0MsaUJGbkI2QjtFRXlCN0IsZ0JGekI2QjtFNkI2QjVCLG1CN0I3QjRCO0M2QjhCNUI7O0FBakRMO0VBb0RLLGMvQmtCbUI7QytCakJuQjs7QUFyREw7RTNCc0NJLGlCRm5CNkI7RUV5QjdCLGdCRnpCNkI7RTZCbUI3QixXL0JkYztFK0JlZCxrQjdCcEI2QjtDNkJtQzdCOztBQW5CRDtFM0JHQyxpQkZuQjZCO0VFeUI3QixnQkZ6QjZCO0U2QjZCNUIsbUI3QjdCNEI7QzZCOEI1Qjs7QUFqREw7RUFvREssYy9CbUJvQjtDK0JsQnBCOztBQXJETDtFM0JzQ0ksaUJGbkI2QjtFRXlCN0IsZ0JGekI2QjtFNkJtQjdCLFcvQmRjO0UrQmVkLGtCN0JwQjZCO0M2Qm1DN0I7O0FBbkJEO0UzQkdDLGlCRm5CNkI7RUV5QjdCLGdCRnpCNkI7RTZCNkI1QixtQjdCN0I0QjtDNkI4QjVCOztBQWpETDtFQW9ESyxjL0JtQm9CO0MrQmxCcEI7O0FBckRMO0UzQnNDSSxpQkZuQjZCO0VFeUI3QixnQkZ6QjZCO0U2Qm1CN0IsVy9CZGM7RStCZWQsa0I3QnBCNkI7QzZCbUM3Qjs7QUFuQkQ7RTNCR0MsaUJGbkI2QjtFRXlCN0IsZ0JGekI2QjtFNkI2QjVCLG1CN0I3QjRCO0M2QjhCNUI7O0FBakRMO0VBb0RLLFcvQm9CVztDK0JuQlg7O0FBckRMO0UzQnNDSSxpQkZuQjZCO0VFeUI3QixnQkZ6QjZCO0U2Qm1CN0IsVy9CZGM7RStCZWQsa0I3QnBCNkI7QzZCbUM3Qjs7QUFuQkQ7RTNCR0MsaUJGbkI2QjtFRXlCN0IsZ0JGekI2QjtFNkI2QjVCLG1CN0I3QjRCO0M2QjhCNUI7O0FBakRMO0VBb0RLLFcvQm9CVztDK0JuQlg7O0FBckRMO0UzQnNDSSxpQkZuQjZCO0VFeUI3QixnQkZ6QjZCO0U2Qm1CN0IsVy9CZGM7RStCZWQsa0I3QnBCNkI7QzZCbUM3Qjs7QUFuQkQ7RTNCR0MsaUJGbkI2QjtFRXlCN0IsZ0JGekI2QjtFNkI2QjVCLG1CN0I3QjRCO0M2QjhCNUI7O0FBakRMO0VBb0RLLGMvQnFCa0I7QytCcEJsQjs7QUFyREw7RTNCc0NJLGlCRm5CNkI7RUV5QjdCLGdCRnpCNkI7RTZCbUI3QixXL0JkYztFK0JlZCxrQjdCcEI2QjtDNkJtQzdCOztBQW5CRDtFM0JHQyxpQkZuQjZCO0VFeUI3QixnQkZ6QjZCO0U2QjZCNUIsbUI3QjdCNEI7QzZCOEI1Qjs7QUFqREw7RUFvREssYy9CcUJrQjtDK0JwQmxCOztBQXJETDtFM0JzQ0ksaUJGbkI2QjtFRXlCN0IsZ0JGekI2QjtFNkJtQjdCLFcvQmRjO0UrQmVkLGtCN0JwQjZCO0M2Qm1DN0I7O0FBbkJEO0UzQkdDLGlCRm5CNkI7RUV5QjdCLGdCRnpCNkI7RTZCNkI1QixtQjdCN0I0QjtDNkI4QjVCOztBQWpETDtFQW9ESyxXL0JzQmU7QytCckJmOztBQXJETDtFM0JzQ0ksaUJGbkI2QjtFRXlCN0IsZ0JGekI2QjtFNkJtQjdCLFcvQmRjO0UrQmVkLGtCN0JwQjZCO0M2Qm1DN0I7O0FBbkJEO0UzQkdDLGlCRm5CNkI7RUV5QjdCLGdCRnpCNkI7RTZCNkI1QixtQjdCN0I0QjtDNkI4QjVCOztBQWpETDtFQW9ESyxXL0JzQmU7QytCckJmOztBQXJETDs7RUE0REcsV0FBVTtDQUNWOztBQXJDRjtFQXdDRSxtQjdCN0M4QjtDNkI4QzlCOztBQWpFSDs7RUFzRUcsZ0JBQWU7Q0FDZjs7QUF2RUg7RUEyRUcsb0JBQW1CO0VBQ25CLGVBQWM7RUFDZCxrQjdCMUQ4QjtDNkIyRDlCOztBQU9IOzs7RUFHQyxXQUFVO0VBQ1YsYS9CbEVpQjtFK0JtRWpCLHNCQUFxQjtFQUNyQix1QkFBc0I7RUFDdEIsc0JBQXFCO0NBQ3JCOztBQUtEO0UzQjVESSxrQkZuQjZCO0VFeUI3QixZRnpCNkI7RTZCa0ZoQyw4REFBNkQ7RUFDN0QseUJBQXdCO0VBQ3hCLHNCQUFxQjtDQUNyQjs7QUVwR0Q7RUFDQyx5Qi9CY2dDO0MrQkhoQzs7QUFNRDtFOUJlRSxnQjhCZHNCO0U5QmtCbEIsVThCbEIrQjtFOUJrQi9CLFE4QmxCaUM7RTdCZW5DLGE2QmRpQjtFN0JvQmpCLFM2QnBCWTtFTHNCUiw0REtyQjREO0VBRW5FLDhCakNKaUI7RWlDS2pCLGVBQWM7RUFDZCxhQUFZO0NBaUNaOztBQXhDRDtFQWdCRSxxQ2pDZmdCO0NpQ2dCaEI7O0FBakJGOztFQXFCRSxZQUFXO0NBQ1g7O0FBdEJGO0VMd0JRLGdDS0NpQztDQUN2Qzs7QUFHRDtFQUNDLG9CL0JqQytCO0MrQnNDL0I7O0FBbkNGO0VBc0NFLGdCQUFlO0NBQ2Y7O0FBUUY7RUFPRyxrQkFBYTtNQUFiLGNBQWE7RUFDYixVQUFTO0NBU1Q7O0FBakJIO0VBV0ksV0FBVTtDQUtWOztBQVVKO0U5QjFERSxnQjhCOER1QjtFN0I3RHJCLGFGbkI2QjtFRXlCN0IsYTZCd0RpQjtFQUVuQixvQkFBcUI7TUFBckIsc0JBQXFCO0VBQ3JCLHFCQUFvQjtFQUNwQixxQkFBYTtFQUFiLGNBQWE7RUFDYix1QkFBOEI7TUFBOUIsK0JBQThCO0VBQzlCLHFDQUFvQztDQXVDcEM7O0FBbERGO0VMakRRLDhCS2dFZ0M7RUFFckMsMEJqQ2hHa0I7RWlDaUdsQix5Q2pDMUZlO0VpQzJGZixZQUFPO01BQVAsUUFBTztFQUNQLGtCL0JoRzhCO0UrQmlHOUIsbUJBQWtCO0NBdUJsQjs7QUE1Q0g7RUF3QkksWWpDL0ZjO0VpQ2dHZCxlQUFjO0VBQ2QsNENoQzFIdUM7RWdDMkh2QyxvQi9Cdkc2QjtFK0J3RzdCLG1CQUFrQjtFQUNsQixpQkFBZ0I7RUFDaEIsYUFBWTtFQUNaLGlCQUFnQjtFQUNoQiwwQkFBeUI7Q0FXekI7O0FBM0NKO0VDeEZDLG1CQUFrQjtFQWtCakIsZ0NBQStCO0VBQy9CLG9DQUFtQztFQUNuQyxTQUFRO0VBQ1IsNEJBQTJCO0VENEd4QixlQUFjO0NBQ2Q7O0FBdkNKO0VBNENFLHlCQUF3QjtDQUN4Qjs7QUFVSDtFQUNDLHFCL0J2SWdDO0MrQjBKaEM7O0FBcEJEO0U5QnBIRSxtQjhCK0gyQjtFOUIzSHZCLGVEdEIyQjtFQ3NCM0IsUzhCMkhpQztDQU9wQzs7QUFTSDtFOUIvSUUsbUI4QmdKeUI7RTlCNUlyQixPOEI0SXdCO0U5QjVJeEIsUzhCNEkwQjtFTHZJeEIsZ0NLd0lnQztFQUV2QyxlQUFjO0VBQ2QsOEJBQTZCO0VBQzdCLFdBQVU7RUFDVixlQUFjO0VBQ2QsbUJBQWtCO0VBQ2xCLG1CQUFrQjtFQUNsQixZQUFXO0VBQ1gsWUFBVztDQUNYOztBQU9EO0VBQ0MsaUJBQWdCO0NBQ2hCOztBQU1EOztFOUIxS0UsbUI4QjRLeUI7RTlCeEtyQixPOEJ3S3dCO0U5QnhLeEIsUThCd0tvQztFQUV6QywwQmpDckxtQjtFaUNzTG5CLGNBQWE7Q0FDYjs7QUFPRDtFQUdFLFdBQVU7Q0FDVjs7QUFRRjtFQUdFLG9CQUFtQjtDQTZCbkI7O0FBaENGO0U5Qm5NRSxtQjhCeU0yQjtFOUJyTXZCLFM4QnFNK0I7RTlCck0vQixVOEJxTWlDO0VBRXBDLFlBQVc7RUFDWCxlQUFjO0VBQ2QsYUFBWTtFQUNaLFVBQVM7RUFDVCxZQUFXO0NBbUJYOztBQS9CSDtFQWVJLFdBQVU7RUFDVixrQkFBaUI7Q0FDakI7O0FBWkY7RUFlRSxjQUFhO0NBQ2I7O0FBckJKO0VBd0JJLFlqQ3hPYztFaUN5T2QsNENoQ2xRdUM7RWdDbVF2QyxtQi9CL082QjtFK0JnUDdCLG1CQUFrQjtFQUNsQixpQkFBZ0I7RUFDaEIsMEIvQmxQNkI7QytCbVA3Qjs7QUFVSjtFQUdFLGlCQUFnQjtDQUtoQjs7QUFORDtFQUlFLE9BQU07Q0FDTjs7QUFTSDtFOUIzUEUsbUI4QjRQeUI7RTlCeFByQixjRHRCMkI7RUNzQjNCLGVEdEIyQjtFRW1CN0IsYUZuQjZCO0VFeUI3QixZRnpCNkI7RStCaVJoQyw4QkFBNkI7RUFDN0IsY0FBYTtFQUNiLFdBQVU7RUFDVixXQUFVO0NBZ0NWOztBQTlCQTtFQUNDLFkvQnZSK0I7QytCNFIvQjs7QUFmRjtFQXFCRSw4QkFBNkI7Q0FLN0I7O0FBMUJGO0VBd0JHLGFBQVk7Q0FDWjs7QUFJRjtFQUNDLGVBQWM7Q0FDZDs7QUEvQkY7RTdCMVBJLGE2QjRSZ0I7RTdCdFJoQixZNkJzUmdCO0VMcFJaLDhCS3FSK0I7RUFFckMsV2pDN1NnQjtDaUM4U2hCOztBQVFGO0VBS0csY0FBYTtDQUNiOztBQUdGO0VBS0csZUFBYztFQUNkLFdBQVU7RUFDVixXQUFVO0VBQ1YsU0FBUTtDQUNSOztBQWxCSjs7OztFOUJ6U0UsZ0I4QnFVd0I7RTlCalVwQixVOEJpVTBCO0U5QmpVMUIsUzhCaVU0QjtFOUJqVTVCLGdCRHRCMkI7RUNzQjNCLFc4QmlVeUM7RUFFNUMsZUFBYztFQUNkLFdBQVU7RUFDVixZQUFXO0NBU1g7O0FBekNIOzs7O0VBbUNJLFVBQVM7Q0FLVDs7QUF4Q0o7Ozs7RUE0Q0csdUIvQnZXOEI7RStCd1c5QixtQkFBa0I7Q0FDbEI7O0FBU0g7RUFHRSxRQUFPO0VBQ1AsV0FBVTtFQUNWLFlBQVc7RUFDWCxZQUFXO0NBbUJYOztBQXpCRjtFQVNHLFlqQ3RYZTtFaUN1WGYsZ0IvQjVYOEI7RStCNlg5QiwwQi9CN1g4QjtFK0I4WDlCLGlCQUFnQjtDQUNoQjs7QUFiSDtFQWdCRyxlQUFjO0VBQ2QsWUFBVztFQUNYLFVBQVM7Q0FDVDs7QUFjSDtFQUlFLFdBQVU7Q0FDVjs7QUFPRjtFOUI3WUUsZ0I4QitZdUI7RTlCM1luQixpQkR0QjJCO0VDc0IzQixrQkR0QjJCO0UwQjJCekIsc0NLdVl1QztFQUU3Qyx3Q0FBc0M7RUFDdEMseUNBQXVDO0VBQ3ZDLGdDakNqYWdCO0VpQ2thaEIsWUFBVztFQUNYLFdBQVU7Q0FDVjs7QUFWRjtFQWFFLFdBQVU7Q0FDVjs7QUFRRjtFQUtHLGVBQWM7Q0FDZDs7QUFOSDtFN0JsYUksYUZuQjZCO0VFeUI3QixZNkJzYWdCO0VBRWxCLDZDQUE0QztFQUM1QyxrQ0FBaUM7RUFDakMsVUFBUztFQUNULGFBQVk7RUFDWixpQkFBZ0I7RUFDaEIsVUFBUztFQUNULG9CQUFtQjtDQTBCbkI7O0FBNUNGO0VBcUJHLFVBQVM7RUFDVCxRQUFPO0NBcUJQOztBQTNDSDtFOUJuYUUsZ0I4QjZieUI7RTlCemJyQixVOEJ5YmtDO0U3QjVicEMsYTZCNmJzQjtFN0J2YnRCLFc2QnViaUI7RUFFakIsWUFBVztFQUNYLHFCQUFvQjtFQUNwQixZQUFXO0NBQ1g7O0FBaENKO0VBbUNJLDRFQUE0RjtFQUM1RixTQUFRO0NBQ1I7O0FBckNKO0VBd0NJLDRFQUE0RjtFQUM1RixRQUFPO0NBQ1A7O0FBVUo7RUFPSSxvQi9CaGY2QjtFK0JpZjdCLG1CQUFrQjtDQU9sQjs7QUFmSjtFQ3JmQyxtQkFBa0I7RUFrQmpCLGdDQUErQjtFQUMvQixvQ0FBbUM7RUFDbkMsU0FBUTtFQUNSLDRCQUEyQjtFRDZleEIsZUFBYztDQUNkOztBQWRMO0VBb0JLLHNCQUFxQjtDQUNyQjs7QUFyQkw7RUF3Qkssc0IvQmpnQjRCO0MrQmtnQjVCOztBQXpCTDtFQTRCSyx1Qi9CcmdCNEI7QytCc2dCNUI7O0FBN0JMO0U5QnZkRSxtQjhCd2Y0QjtFOUJwZnhCLFE4Qm9mMEM7RTdCdmY1QyxhRm5CNkI7RUV5QjdCLFk2Qmtma0I7RUFFbEIsdUJqQ3hnQmM7RWlDeWdCZCx5Q2pDMWdCYztFaUMyZ0JkLHNCQUFxQjtFQUNyQixZQUFXO0VBQ1gsbUIvQmpoQjZCO0UrQmtoQjdCLFVBQVM7RUFDVCxtQkFBa0I7RUFDbEIsb0JBQW1CO0NBS25COztBQWhESjtFQThDSyx1QmpDbGhCYTtDaUNtaEJiOztBQVdMO0VBU0ssZUFBYztFQUNkLG1CL0I3aUI0QjtFK0I4aUI1QixhQUFZO0VBQ1osaUJBQWdCO0NBQ2hCOztBQWJMO0VBa0JNLHNCQUFxQjtFQUNyQixvQkFBbUI7Q0FDbkI7O0FBcEJOO0VBeUJPLHNCQUFxQjtFQUNyQixRQUFPO0NBQ1A7O0FBM0JQO0U5QmpoQkUsbUI4QnFqQjRCO0U5QmpqQnhCLFU4QmlqQjhCO0U5QmpqQjlCLFE4QmlqQjBDO0VBRTVDLHNCQUFxQjtFQUNyQixZQUFXO0VBQ1gsV0FBVTtFQUNWLFlBQVc7RUFDWCxXQUFVO0NBU1Y7O0FBbkRKO0VBNkNLLGVqQ3JsQmdCO0NpQ3NsQmhCOztBQTlDTDtFQWlESyxhQUFZO0NBQ1o7O0FBbERMO0VBMERHLFlBQVc7Q0FDWDs7QUVqbkJIO0VBQ0MsZW5DYW9CO0NtQ0ZwQjs7QUFaRDtFQUlFLGVuQ1VtQjtDbUNUbkI7O0FBTEY7RUFVRSxlbkNDdUI7Q21DQXZCOztBQUlGO0V0QkdDLFVBQVM7RUFDVCxXQUFVO0VtQk9WLGlCQUFnQjtDRzJIaEI7O0F6QnZJQztFQUNFLFlBQVc7RUFDWCxZQUFXO0VBQ1gsZUFBYztDQUNmOztBeUJISDtFQUlFLFVBQVM7Q0FDVDs7QUFMRjtFdEJHQyxVQUFTO0VBQ1QsV0FBVTtFbUJPVixpQkFBZ0I7Q0dGZjs7QUFURjtFekJBSSxZQUFXO0VBQ1gsWUFBVztFQUNYLGVBQWM7Q0FDZjs7QXlCSEg7RUFjRyxzQkFBcUI7Q0FDckI7O0FBZkg7RUFxQkcsVUFBUztDQUNUOztBQXRCSDtFQXlCRyxvQ25DSmdCO0VtQ0toQixrQmpDdEI4QjtDaUN1QjlCOztBQTNCSDtFQW1DSSx5QmpDL0I2QjtFaUNnQzdCLG1CQUFrQjtDQVlsQjs7QUFoREo7RWhDc0JFLG1CZ0NpQjZCO0VoQ2J6QixTZ0NhOEI7RWhDYjlCLGlCRHRCMkI7RUVtQjdCLGVGbkI2QjtFRXlCN0IsaUJGekI2QjtFaUNzQzVCLG1FQUFrRTtFQUNsRSx5QkFBd0I7RUFFeEIsWUFBVztFQUNYLDhCakMxQzRCO0NpQzJDNUI7O0FBL0NMO0VBb0RJLGVqQ2hENkI7RWlDaUQ3Qix5QkFBd0I7Q0FDeEI7O0FBdERKO0VoQ3NCRSxtQmdDcUMyQjtFaENqQ3ZCLGFnQ2lDOEM7RUFFakQsMEJuQzVEa0I7RW1DNkRsQix5Q25DdERlO0VtQ3VEZixjQUFhO0VBQ2IsWUFBVztFQUNYLGVBQWM7Q0F1Q2Q7O0FBeEdIO0VBcUVJLGFBQVk7RUFDWixPQUFNO0NBUU47O0FBOUVKO0VBMkVNLGlCQUFnQjtDQUNoQjs7QUE1RU47RUFrRkksWUFBVztFQUNYLGtCQUFpQjtDQWFqQjs7QUFoR0o7RUFzRksscUJqQ2xGNEI7RWlDbUY1QixVQUFTO0NBQ1Q7O0FBeEZMOztFQTRGSyxlQUFjO0VBQ2QsWUFBVztDQUNYOztBQTlGTDtFL0J1QkksYStCNkV1QjtFL0J2RXZCLFkrQnVFa0I7RUFFbEIsbUJqQ2xHNkI7Q2lDbUc3Qjs7QUF2R0o7O0VBNkdHLGVBQWM7RUFDZCxXQUFVO0NBQ1Y7O0FBL0dIO0VBbUhHLFlBQVc7Q0FDWDs7QUFwSEg7RUF5SEUsbUNBQWtDO0VBQ2xDLG9DQUFtQztFQUNuQyxhQUFZO0VBQ1osZUFBYztFQUNkLDBCakN6SCtCO0VpQzBIL0Isc0JBQXFCO0NBT3JCOztBQUlGO0UvQmxISSxhK0JtSG9CO0UvQjdHcEIsWStCNkdlO0VBRWxCLFlBQVc7RUFDWCxjQUFhO0VBQ2IsWUFBVztFQUNYLGlCQUFnQjtFQUNoQixXQUFVO0NBbURWOztBQTFERDtFQXlCRSxjQUFhO0NBQ2I7O0FBMUJGO0VBNkJFLGVBQWM7Q0FDZDs7QUE5QkY7RUFpQ0UsWW5DaktnQjtFbUNrS2hCLDRDbEMzTHlDO0VrQzRMekMsb0JqQ3hLK0I7RWlDeUsvQixtQkFBa0I7RUFDbEIsaUJBQWdCO0VBQ2hCLDJCakMzSytCO0VpQzRLL0IsMkNqQzVLK0I7RWlDNksvQiwwQkFBeUI7Q0FhekI7O0FBckRGO0VBd0RFLGVBQWM7Q0FDZDs7QUFJRjtFQUNDLGVBQWM7Q0FLZDs7QUFLQTtFQUNDLHFCQUFxQjtFQUNyQixpQkFBZ0I7Q0FDaEI7O0FBTEY7RS9CeExJLGErQmdNb0I7RS9CMUxwQixXK0IwTGU7RUFFakIsWUFBVztDQUNYOztBQVhGO0UvQnhMSSxhK0JzTW9CO0UvQmhNcEIsVytCZ01lO0VBRWpCLGFBQVk7RUFDWixrQkFBaUI7Q0FDakI7O0FDalBGO0VBQ0MsVUFBUztFQUNULDBCQUF5QjtFQUN6QixrQkFBaUI7RUFDakIsV0FBVTtFQUNWLFlBQVc7Q0F5RVg7O0FBOUVEO0VBU0UsY0FBYTtDQUtiOztBQWRGOztFQW1CRSxrQmxDQytCO0VrQ0EvQixtQkFBa0I7Q0FLbEI7O0FBekJGO0VBNkJFLG9CbENUK0I7RWtDVS9CLDBCbENWK0I7RWtDVy9CLDBCQUF5QjtDQUt6Qjs7QUFwQ0Y7RUF3Q0UsZUFBYztFQUNkLHdCbENyQitCO0NrQzJCL0I7O0FBL0NGO0VBbURFLDZCcENkaUI7RW9DZWpCLGlCQUFnQjtFQUNoQixlQUFjO0VBQ2QscUJsQ2xDK0I7RWtDbUMvQixtQkFBa0I7Q0FrQmxCOztBQXpFRjtFQStERyxvQ3BDMUJnQjtDb0MyQmhCOztBQWhFSDtFQW9FRyxZQUFXO0VBQ1gsWUFBVztFQUNYLGtCQUFpQjtFQUNqQiwwQkFBeUI7Q0FDekI7O0FDeEVIO0VsQ3NDRSxnQmtDcENzQjtFbEN3Q2xCLE9rQ3hDcUI7RWxDd0NyQixTa0N4Q3VCO0VsQ3dDdkIsVWtDeEN5QjtFbEN3Q3pCLFFrQ3hDMkI7RUFFaEMscUNBQWlDO0VBQ2pDLGNBQWE7RUFDYixpQkFBZ0I7RUFDaEIsY0FBYTtDQXVFYjs7QTNCL0RDO0VBQ0UsWUFBVztFQUNYLFlBQVc7RUFDWCxlQUFjO0NBQ2Y7O0EyQm5CSDtFQVdFLGVBQWM7RUFDZCxtQkFBa0I7RUFDbEIsaUJBQWdCO0NBQ2hCOztBQWRGO0VsQ3NDRSxtQmtDcEIwQjtFbEN3QnRCLFNrQ3hCMkI7RWxDd0IzQixVa0N4QnlDO0VBRTdDLGlDQUFnQztFQUNoQyxZQUFXO0NBQ1g7O0FBdEJGO0VBMEJFLDZCQUE0QjtFQUM1Qix1QnJDRmdCO0VxQ0doQix5Qm5DUitCO0VtQ1MvQixzRHJDTGdCO0VxQ01oQixXQUFVO0VBQ1Ysa0JuQ1grQjtFbUNZL0IsbUJBQWtCO0NBbUNsQjs7QUFuRUY7RUFvQ0csbUJBQWtCO0NBcUJsQjs7QUF6REg7RXhCbUJDLFVBQVM7RUFDVCxXQUFVO0VWa0JULG1Ca0NHNEI7RWxDQ3hCLGdCRHRCMkI7RUNzQjNCLGtCRHRCMkI7RUVtQjdCLGlCRm5CNkI7RUV5QjdCLGdCRnpCNkI7RW1Dd0I3QixpQnJDcEJjO0VxQ3FCZCw2QnJDcEJjO0VxQ3FCZCxtQkFBa0I7RUFDbEIsWXJDdEJjO0VxQ3VCZCxnQkFBZTtFQUNmLG9CbkM3QjZCO0VtQzhCN0IsZUFBYztFQUNkLGNBQWE7Q0FLYjs7QUF4REo7RTNCZ0JJLFlBQVc7RUFDWCxZQUFXO0VBQ1gsZUFBYztDQUNmOztBMkJuQkg7RUE2REcsbUJBQWtCO0NBQ2xCOztBQTlESDs7O0VBMkVHLGFBQVk7Q0FDWjs7QWI3RUg7RUFDQywwQnhCZ0JtQjtFd0JmbkIsWXhCd0JpQjtDd0J2QmpCOztBQU1EO0VBQ0MsMEJ4Qk9tQjtDd0JGbkI7O0FBT0Q7RUFFRSxpQkFBZ0I7Q0FLaEI7O0FBUEY7RUFLRyxtQnRCTjhCO0NzQk85Qjs7QUFTSDtFQUVFLGNBQWE7Q0FLYjs7QUFQRjtFQVlHLFl4QnZCZTtFd0J3QmYsNEN2QmpEd0M7RXVCa0R4QyxvQnRCOUI4QjtFc0IrQjlCLG1CQUFrQjtFQUNsQixpQkFBZ0I7RUFDaEIsMkJ0QmpDOEI7RXNCa0M5QiwwQkFBeUI7Q0FLekI7O0FBdkJIO0VBMEJHLHNCQUFxQjtFQUNyQixZQUFXO0NBS1g7O0FBaENIO0VBb0NHLG1CQUFrQjtDQTJCbEI7O0FBL0RIO0VBdUNJLHVCdEJ2RDZCO0NzQndEN0I7O0FBeENKO0VBMkNJLG1CQUFrQjtDQUtsQjs7QUFoREo7RUE4Q0ssMEJBQXlCO0NBQ3pCOztBQS9DTDtFckJFRSxtQnFCa0Q0QjtFckI5Q3hCLGFxQjhDd0M7RUFFMUMsWUFBVztDQVFYOztBQTlESjtFQTBESyxVQUFTO0VBQ1QsY0FBYTtFQUNiLFVBQVM7Q0FDVDs7QUFVTDtFQUNDLDBCeEIzRm9CO0V3QjRGcEIsc0J0QnpGZ0M7Q3NCeUdoQzs7QUFsQkQ7RUFnQkUsWXhCbEdnQjtDd0JtR2hCOztBQU9GO0VBRUUsc0JBQXFCO0VBQ3JCLHFCQUFvQjtFQUNwQixtQkFBa0I7RUFDbEIsWUFBVztDQW1CWDs7QUFjRjtFQUVFLHFCdEJ2SitCO0NzQm9LL0I7O0FBZkY7RUFZRyxtQnRCaks4QjtFc0JrSzlCLGlCQUFnQjtDQUNoQjs7QUFRSDtFQUVFLGNBQWE7RUFDYixzQnRCOUsrQjtDc0I0Ti9COztBQWpERjtFQWFHLG9CdEJ4TDhCO0VzQnlMOUIsMkJ0QnpMOEI7RXNCMEw5Qix5QnRCMUw4QjtFc0IyTDlCLGNBQWE7RUFDYiwwQkFBeUI7Q0FDekI7O0FBbEJIO0VBcUJHLHdCdEJoTThCO0VzQmlNOUIsdUJ0QmpNOEI7Q3NCOE05Qjs7QUFuQ0g7RUF1Q0csWUFBVztDQUNYOztBQXhDSDs7O0VBOENJLG9CeEJqT3FCO0N3QmtPckI7O0FBUUo7RUFDQyxvQnRCbk9nQztFc0JvT2hDLGtCQUFpQjtFQUNqQixtQkFBa0I7RUFDbEIsZ0JBQWU7RUFDZixtQkFBa0I7RUFDbEIsZ0J0QnhPZ0M7Q3NCNlBoQzs7QUEzQkQ7RUFrQkUsb0J0QnBQK0I7RXNCcVAvQixrQkFBZ0I7RUFDaEIsMEJBQXlCO0NBQ3pCOztBQXJCRjs7RUF5QkUsWUFBVztDQUNYOztBQU1GO0VBRUUsc0JBQXFCO0VBQ3JCLHVCQUFzQjtDQTRCdEI7O0FBL0JGO0VBTUcsc0JBQXFCO0VBQ3JCLHNCdEJ6UThCO0VzQjBROUIscUJ0QjFROEI7Q3NCZ1M5Qjs7QUE5Qkg7RUE0QkksZUFBYztDQUNkOztBQVNKO0VBRUUsbUJBQWtCO0VBQ2xCLHlCQUF3QjtFQUN4QixZQUFXO0NBaUNYOztBQXJDRjtFQWdCRyxlQUFjO0VBQ2QsZUFBYztDQUtkOztBQXRCSDtFQXlCRyxzQnRCalU4QjtDc0JzVTlCOztBQWNIO0VBQ0MsZUFBYztFQUNkLHNCdEJ0VmdDO0VzQnVWaEMscUJBQWlCO0VBQ2pCLG1CQUFrQjtDQVVsQjs7QWNyWEQ7RUFDQyxzQkFBcUI7Q0FnQ3JCOztBQWpDRDtFQU1FLGlCdEM0Q2M7RXNDM0NkLGFBQVk7RUFDWixZdENnQmdCO0VzQ2ZoQixzQkFBcUI7RUFDckIsb0JwQ1MrQjtFb0NSL0IsbUJBQWtCO0VBQ2xCLHlCcENPK0I7RW9DTi9CLHdCcENNK0I7RW9DTC9CLDBCQUF5QjtFQUN6QixtQ0FBa0M7Q0FpQmxDOztBQWhDRjtFQXNCSSxvQnRDMkJlO0NzQzFCZjs7QUF2Qko7RUFzQkksaUJ0QzRCWTtDc0MzQlo7O0FBdkJKO0VBc0JJLG9CdEM2QmU7Q3NDNUJmOztBQXZCSjtFQXNCSSxvQnRDOEJnQjtDc0M3QmhCOztBQXZCSjtFQXNCSSxvQnRDK0JlO0NzQzlCZjs7QUF2Qko7RUFzQkksb0J0Q2dDdUI7Q3NDL0J2Qjs7QUF2Qko7RUFzQkksb0J0Q2dDdUI7Q3NDL0J2Qjs7QUF2Qko7RUE2QkcsWXRDTGU7RXNDTWYsY0FBYTtDQUNiOztBQzlCSDtFQUNDLDZCQUE0QjtFQUM1Qix1QkFBc0I7RUFDdEIsZUFBYztFQUNkLG1CckNjZ0M7RXFDYmhDLHlCckNhZ0M7RXFDWmhDLG1CQUFrQjtFQUNsQixXQUFVO0NBaUxWOztBQXhMRDtFcENvQ0UsbUJvQ2pCMEI7RXBDcUJ0QixVb0NyQm1DO0VwQ3FCbkMsUW9DckJxQztFQUV6QyxZdkNFZ0I7RXVDRGhCLDJCckNKK0I7RXFDSy9CLFlBQVc7RUFDWCxXQUFVO0NBa0VWOztBQTFGRjtFQ2tCQyxvQ0FBbUM7RUFDbkMsb0NBQTJCO1VBQTNCLDRCQUEyQjtFQUMzQiw2QkFBNEI7RUNrQmpCLHdDRk5zQztFQUUvQyxnQnJDaEI4QjtFcUNpQjlCLG1CQUFrQjtFQUNsQixrQkFBaUI7RUFDakIsaUJBQWdCO0VBQ2hCLGNBQWE7Q0FNYjs7QUE1Q0g7RUErQ0csWXZDeEJlO0N1QzhCZjs7QUFyREg7RUFrREksc0N2Q3hDcUI7RXVDeUNyQixjQUFhO0NBQ2I7O0FBcERKO0VDa0JDLG9DQUFtQztFQUNuQyxvQ0FBMkI7VUFBM0IsNEJBQTJCO0VBQzNCLDZCQUE0QjtFQ2tCakIsd0NGbUJzQztFQUUvQyxjQUFhO0VBQ2IsNEN0QzlEd0M7RXNDK0R4QyxvQnJDM0M4QjtFcUM0QzlCLG1CQUFrQjtFQUNsQixpQkFBZ0I7RUFDaEIsMkJyQzlDOEI7RXFDK0M5QixVQUFTO0VBQ1QsbUJBQWtCO0VBQ2xCLDBCQUF5QjtDQXNCekI7O0FBekZIO0VYNkNRLG9DV2dDdUM7RUFFM0MsaUJyQzdENkI7RXFDOEQ3QixjQUFhO0VBQ2IsZ0JyQy9ENkI7RXFDZ0U3QixtQkFBa0I7RUFDbEIsY3JDakU2QjtDcUNzRTdCOztBQXhGSjtFRXNDWSxtRUZ1RGdFO0VDM0UzRSxvQ0FBbUM7RUFDbkMsb0NBQTJCO1VBQTNCLDRCQUEyQjtFQUMzQiw2QkFBNEI7RUQ0RTNCLGFBQVk7RUFDWixlQUFjO0VBQ2QscUJyQ2hGK0I7RXFDaUYvQixXQUFVO0NBQ1Y7O0FBcEdGO0VwQ29DRSxtQm9DcUUwQjtFcENqRXRCLE9vQ2lFeUI7RXBDakV6QixRb0NpRXFDO0VuQ3BFdkMsYW1DcUVxQjtFbkMvRHJCLFltQytEZ0I7RUFFbEIsWUFBVztDQUNYOztBQTdHRjtFQWtIRSxtQ3ZDM0VxQjtDdUNnRnJCOztBQXZIRjtFWDZDUSxzQ1c4RXVDO0VBRTdDLDhFQUEwSDtFQUMxSCxXQUFVO0NBQ1Y7O0FBL0hGO0VBdUlHLGFBQVk7Q0FDWjs7QUF4SUg7RUEySUcsNkJBQTRCO0NBSzVCOztBQWhKSDtFQThJSSxZQUFXO0NBQ1g7O0FBL0lKO0VYNkNRLG9DV3VHc0M7RUFFM0MsYUFBWTtFQUNaLFdBQVU7RUFDViw2QkFBNEI7RUFDNUIsaUJyQ3ZJOEI7Q3FDdUo5Qjs7QUF6S0g7RUE0SkksY0FBYTtFQUNiLGVyQzNJNkI7Q3FDNEk3Qjs7QUE5Sko7RXBDb0NFLG1Cb0M2SDRCO0VwQ3pIeEIsU29DeUg2QjtFcEN6SDdCLGlCRHRCMkI7RUVtQjdCLGVGbkI2QjtFRXlCN0IsaUJGekI2QjtFcUNrSjdCLG1FQUFrRTtFQUNsRSx5QkFBd0I7RUFDeEIsWUFBVztFQUNYLDBCQUF5QjtDQUN6Qjs7QUF4S0o7RUE2S0csNkJBQTRCO0NBQzVCOztBQUdGO0VBQ0MseUJyQ2hLK0I7Q3FDcUsvQjs7QUdyTEY7RXRCb0JFLGdCSk44QjtFSVE1QixrQkFBVTtFQUNWLG1CQUFXO0VzQnBCZCxzQkFBdUI7TUFBdkIsd0JBQXVCO0VBQ3ZCLG9CMUNVbUI7RTBDVG5CLDRDMUNZMkM7RTBDWDNDLGlDMUN5Q2U7RTBDeENmLHFCQUFhO0VBQWIsY0FBYTtFQUNiLG9CQUFlO01BQWYsZ0JBQWU7RUFDZix5QnhDT2dDO0V3Q05oQywwQnhDTWdDO0V3Q0xoQyx1QnhDS2dDO0V3Q0poQyxtQkFBa0I7Q0FvUGxCOztBaENyUEM7RUFDRSxZQUFXO0VBQ1gsWUFBVztFQUNYLGVBQWM7Q0FDZjs7QWdDZkg7RUFtQ0UsaUJBQWdCO0NBQ2hCOztBQXBDRjtFQXVDRSxZQUFXO0NBQ1g7O0FBeENGO0VBNENFLGVBQWM7RUFDZCx5QnhDN0IrQjtDd0NpRC9COztBQWpFRjtFN0JlQyxVQUFTO0VBQ1QsV0FBVTtFNkJrQ1IsaUJBQWdCO0VBQ2hCLGUxQ2pDMEI7RTBDa0MxQixlQUFjO0VBQ2Qsb0J4Q3JDOEI7RXdDc0M5Qix5QnhDdEM4QjtFd0N1QzlCLGtCQUFpQjtDQVNqQjs7QUFoRUg7RUFxRUUsWUFBTztNQUFQLFFBQU87Q0FrQlA7O0FBdkZGO0VDZUMsa0J6Q0NnQztDd0NrRy9COztBQWxIRjtFQWdHRyxnQnhDaEY4QjtFd0NpRjlCLGVBQWM7RUFDZCxvQnhDbEY4QjtFd0NtRjlCLGNBQWE7Q0FjYjs7QUFqSEg7RUErR0ksZUFBYztDQUNkOztBQWhISjtFQ2VDLGtCekNDZ0M7RXdDd0cvQixjQUFhO0VBQ2IsWUFBVztDQXVCWDs7QUFoSkY7RUFnSUcsZ0J4Q2hIOEI7RXdDaUg5QixpQkFBZ0I7Q0FLaEI7O0FBdElIO0V2Q2tDRSxtQnVDa0gwQjtFQUUxQixlQUFjO0VBQ2QsaUJ4Q3ZJK0I7RXdDd0kvQixvQnhDeEkrQjtFd0N5SS9CLFdBQVU7RUFDVixXQUFVO0NBeUJWOztBQW5MRjtFQWdMSSw2QjFDbEllO0MwQ21JZjs7QUFqTEo7RUFnTEksMEIxQ2pJWTtDMENrSVo7O0FBakxKO0VBZ0xJLDZCMUNoSWU7QzBDaUlmOztBQWpMSjtFQWdMSSw2QjFDL0hnQjtDMENnSWhCOztBQWpMSjtFQWdMSSw2QjFDOUhlO0MwQytIZjs7QUFqTEo7RUFnTEksNkIxQzdIdUI7QzBDOEh2Qjs7QUFqTEo7RUFnTEksNkIxQzdIdUI7QzBDOEh2Qjs7QUFqTEo7RUF1TEUsWUFBVztFQUNYLGNBQWE7RUFDYixpQnhDeksrQjtFd0MwSy9CLGtCeEMxSytCO0V3QzJLL0IsWUFBVztDQW9FWDs7QUEvUEY7RUE2TUcsdUJ4QzdMOEI7RXdDOEw5Qix3QnhDOUw4QjtDd0MrTDlCOztBQS9NSDtFQW9ORyxlQUFjO0VBQ2QscUJ4Q3JNOEI7RXdDc005QiwyQnhDdE04QjtFd0N1TTlCLHNCeEN2TThCO0V3Q3dNOUIsd0J4Q3hNOEI7Q3dDd045Qjs7QUF4T0g7RUFxT0ksYUFBWTtFQUNaLG1CQUFrQjtDQUNsQjs7QUF2T0o7RXRDbUNJLGVGbkI2QjtFRXlCN0IsZ0JGekI2QjtFd0M4TjlCLHdFQUF1RTtFQUN2RSx1QkFBc0I7RUFDdEIsWTFDM05lO0UwQzROZixjQUFhO0VBQ2IsMENBQXlDO0VBQ3pDLHFCeENuTzhCO0V3Q29POUIsbUJBQWtCO0VBQ2xCLGlCQUFnQjtFQUNoQiwwQnhDdE84QjtFd0N1TzlCLHVCeEN2TzhCO0V3Q3dPOUIsbUJBQWtCO0VBQ2xCLG1DQUFrQztDQUtsQzs7QUUvUEg7RUFFRSxpQjVDb0JnQjtFNENuQmhCLGFBQVk7RUFDWix5QjFDYStCO0UwQ1ovQixlNUNXc0I7RTRDVnRCLHNDM0NSbUM7RTJDU25DLG9CMUNVK0I7RTBDVC9CLG9CQUFtQjtFQUNuQiw0QzFDUStCO0UwQ1AvQixpQkFBZ0I7RUFDaEIscUJBQW9CO0NBWXBCOztBQXZCRjtFeENvQ0ksa0JGbkI2QjtFRXlCN0IsZUZ6QjZCO0UwQ0Q5QixjNUMyQnVCO0U0QzFCdkIsYUFBWTtFQUNaLHVCMUNEOEI7RTBDRTlCLHlCMUNGOEI7RTBDRzlCLFdBQVU7RUFDVix1QkFBc0I7Q0FDdEI7O0FBUUg7RUFDQyxzQkFBcUI7RUFDckIsb0IxQ2ZnQztFMENnQmhDLG1CQUFrQjtDQXVDbEI7O0FBMUNEO0UvQmRDLFVBQVM7RUFDVCxXQUFVO0VtQk9WLGlCQUFnQjtFN0JXZixtQnlDTTBCO0V6Q0Z0QixVeUNFNEI7RUFFaEMsaUI1Q3JCZ0I7RTRDc0JoQixjQUFhO0VBQ2IsWUFBVztDQTBCWDs7QUF6Q0Y7RWxDakJJLFlBQVc7RUFDWCxZQUFXO0VBQ1gsZUFBYztDQUNmOztBa0NjSDtFQWtCRyxlQUFjO0NBQ2Q7O0FBbkJIO0VBc0JHLGFBQVk7RUFDWixVQUFTO0NBQ1Q7O0FBeEJIO0VBMkJHLG9CQUFtQjtFQUNuQixlNUNkMEI7RTRDZTFCLGVBQWM7RUFDZCxrQjFDM0M4QjtFMEM0QzlCLG1CQUFrQjtDQVNsQjs7QUF4Q0g7RUFvQ0ksaUI1Q2hDZTtFNENpQ2YsWTVDN0NjO0U0QzhDZCxzQkFBcUI7Q0FDckI7O0FDL0RKO0VBR0UsZUFBYztFQUNkLGtCM0NPK0I7RTJDTi9CLGlCQUFnQjtFQUNoQiw2QjNDSytCO0UyQ0ovQixtQkFBa0I7Q0FXbEI7O0FBbEJGO0VBcUJFLHlCM0NWK0I7QzJDVy9COztBQXRCRjtFQXlCRSxvQjNDZCtCO0UyQ2UvQix3QjNDZitCO0MyQ3FCL0I7O0FBT0Y7RXpDVEksYUZuQjZCO0VFeUI3QixjRnpCNkI7RTJDaUMvQix1QjNDakMrQjtFMkNrQy9CLHVCM0NsQytCO0UyQ21DL0IsdUJBQXNCO0NBT3RCOztBQWRGO0VBbUJHLGVBQWM7RUFDZCx3QjNDaEQ4QjtFMkNpRDlCLDBCQUF5QjtDQUt6Qjs7QUExQkg7OztFQWtDRyxXN0N6RGU7QzZDMERmOztBQ3pFSDtFMUJjRSxnQkpOOEI7RUlRNUIsa0JBQVU7RUFDVixtQkFBVztFMEJkZCxxQjVDT2dDO0U0Q05oQyxnQkFBZTtFQUNmLFlBQVc7Q0FtTFg7O0FwQ25MQztFQUNFLFlBQVc7RUFDWCxZQUFXO0VBQ1gsZUFBYztDQUNmOztBb0NUSDtFekJFRSxZQUFXO0V5QmNYLGlCQUFnQjtDQU1oQjs7QUF3S0Y7RUFHRSxjQUFhO0NBS2I7O0FBUUY7RUFHRSxjQUFhO0NBS2I7O0FBUUY7RUFHRSxnQjVDdk4rQjtDNENpTy9COztBQWJGO0VBZ0JFLGdCNUNwTytCO0M0Q3lPL0I7O0FBUUY7O0VBSUUsZ0Q5Q2pQZ0I7QzhDc1BoQjs7QUM3UUY7RUFHRSx5QjdDZ0IrQjtFNkNmL0IsaUJBQWdCO0NBS2hCOztBQU1GOztFM0N1Qkksa0JGbkI2QjtFRXlCN0IsaUJGekI2QjtFNkNDL0IsbUI3Q0QrQjtFNkNFL0Isa0I3Q0YrQjtDNkNxQi9COztBQXpCRjs7RUFlRyxnQkFBZTtDQUNmOztBQWhCSDs7RTNDdUJJLGlCRm5CNkI7RUV5QjdCLGdCRnpCNkI7QzZDb0I5Qjs7QUFTSDtFM0NWSSxpQkZuQjZCO0VFeUI3QixpQkZ6QjZCO0U2Q2tDL0IsdUI3Q2xDK0I7RTZDbUMvQixXQUFVO0NBOEJWOztBQXBDRjs7RUFrQkcsNEM5Q25Fd0M7RThDb0V4QyxrQjdDaEQ4QjtFNkNpRDlCLGlCQUFn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RTFDLGlCQzVFeUM7SVkwRXZCLHNCNUI1RFM7STRCaUVQLHlCNUJqRU87STRCNEVQLHdCNUI1RU87SXNCNko5QixjQUFhO0dBT2Q7RUFmRjtJUHBGUSxnQkFBOEI7R0FDL0I7RU95R1A7SXdDdEpFLHFCQUE0SDtJL0NzQjFILFlBQU87SUFHTCxlQUFjO0lBZWQsdUJDdEUwQztJRHVFMUMsaUJDNUV5QztJTWtNNUMsZUFBYztHQXdDZjtFQWpERjtJUDFHUSxnQkFBOEI7R0FDL0I7RU95R1A7SUE2QkkseUJ0QnhNNkI7R3NCOE05QjtFQW9CSDtJQWNFLGNBQWE7R0FhZDtFQUtEO0lBV0ksZUFBYztJQUNkLHdCdEI5UTZCO0lzQitRN0IsZUFBYztJQUNkLG9CdEJoUjZCO0dzQmdTOUI7RUFRSDtJQVlHLGNBQWE7R0F5QmQ7RUFPRjtJQVlFLGNBQWE7R0FFZDtFQzVORDtJQVdHLGdCdkJqSjhCO0l1QmtKOUIsaUJ2QmxKOEI7SXVCbUo5Qiw2QnZCbko4QjtHdUI4TC9CO0VBeERGO0lBNkJJLDhDdkJuSzZCO0d1QnFLOUI7RUEzQkY7SXRCeEhDLG1Cc0J3SjRCO0l0QnBKeEIsU3NCb0pnQztJckJ2SmxDLGtCRm5CNkI7SUV5QjdCLGVGekI2QjtJMEIyQnpCLHdFSGlKMkU7SUFFL0Usd0JBQXVCO0lBQ3ZCLDBCQUF5QjtJQUN6QixXQUFVO0lBQ1YsV0FBVTtHQVlYO0VBbkRGO0lBMkNJLG9CekJ4TGdCO0l5QnlMaEIsWXpCakxhO0l5QmtMYixzQnZCdkw0QjtJdUJ3TDVCLFdBQVU7SUFDVixpQnZCekw0QjtJdUIwTDVCLFdBQVU7R0FDVjtFQUtKO0lyQjdLRyxrQkZuQjZCO0lFeUI3QixlRnpCNkI7SXVCc003QiwwQnpCOUtxQjtJeUIrS3JCLDBCQUF5QjtJQUN6QixXQUFVO0lBQ1YsV0FBVTtHQUtWO0VBZEg7SUFZSSxXekJ2TWE7R3lCd01iO0VDMUhMO0lBVUcsd0J4QjdGOEI7R3dCMkgvQjtFQzNIRjtJeEJrQkUsbUJ3QkowQjtJeEJRdEIsVXdCUm1DO0lBRXZDLGNBQWE7R0ErQmQ7RUFyQkE7SXhCUkMsZ0J3QlV3QjtJeEJOcEIsT3dCTXVCO0l2QlR6QixrQkZuQjZCO0lFeUI3QixZdUJJaUI7SUFFbEIsb0IzQmxDa0I7RzJCb0NuQjtFQUdEO0lBRUUsVXpCdEM4QjtHeUJ3Qy9CO0VBYUY7SUFZRyxhQUFZO0lBQ1oscUNBQWdDO0lBQ2hDLGtCQUFpQjtJQUNqQixlQUFjO0dBa0JmO0VBaENEO0lBNkJHLFVBQVM7R0FFVjtFQVFIO0lBU0UsY0FBYTtJQUNiLGV6QnZHK0I7R3lCMEhoQztFQUxBO0lBRUUsT0FBTTtHQUVQO0VBT0Y7SUFTRyxlQUFjO0dBd0JmO0VBckJBO0lBV0csc0J6QnZKNEI7R3lCeUo3QjtFQXhCSDtJQTZCRyxzQnpCOUo2QjtHeUJnSzlCO0VBZ0JGO0l4QjlKQyxtQndCZ0syQjtJeEI1SnZCLE93QjRKMEI7SUFFN0IsWUFBVztJQUNYLFlBQVc7R0FFWjtFSTFNRjtJNUJxQ0UsbUI0QjdCMEI7STVCaUN0QixTNEJqQzhCO0lBRWxDLGVBQWM7R0FzRWY7RUEvREE7SUFFRSxjQUFhO0dBRWQ7RUFyQkY7STNCc0NJLGtCRm5CNkI7SUV5QjdCLGlCRnpCNkI7RzZCbUM3QjtFQXRESjtJM0JzQ0ksa0JGbkI2QjtJRXlCN0IsaUJGekI2QjtHNkJtQzdCO0VBdERKO0kzQnNDSSxrQkZuQjZCO0lFeUI3QixpQkZ6QjZCO0c2Qm1DN0I7RUF0REo7STNCc0NJLGtCRm5CNkI7SUV5QjdCLGlCRnpCNkI7RzZCbUM3QjtFQXRESjtJM0JzQ0ksa0JGbkI2QjtJRXlCN0IsaUJGekI2QjtHNkJtQzdCO0VBdERKO0kzQnNDSSxrQkZuQjZCO0lFeUI3QixpQkZ6QjZCO0c2Qm1DN0I7RUF0REo7STNCc0NJLGtCRm5CNkI7SUV5QjdCLGlCRnpCNkI7RzZCbUM3QjtFQXRESjtJM0JzQ0ksa0JGbkI2QjtJRXlCN0IsaUJGekI2QjtHNkJtQzdCO0VBdERKO0kzQnNDSSxrQkZuQjZCO0lFeUI3QixpQkZ6QjZCO0c2Qm1DN0I7RUF0REo7STNCc0NJLGtCRm5CNkI7SUV5QjdCLGlCRnpCNkI7RzZCbUM3QjtFQXRESjtJM0JzQ0ksa0JGbkI2QjtJRXlCN0IsaUJGekI2QjtHNkJtQzdCO0VBdERKO0kzQnNDSSxrQkZuQjZCO0lFeUI3QixpQkZ6QjZCO0c2Qm1DN0I7RUF0REo7STNCc0NJLGtCRm5CNkI7SUV5QjdCLGlCRnpCNkI7RzZCbUM3QjtFQXRESjtJM0JzQ0ksa0JGbkI2QjtJRXlCN0IsaUJGekI2QjtHNkJtQzdCO0VBdERKO0kzQnNDSSxrQkZuQjZCO0lFeUI3QixpQkZ6QjZCO0c2Qm1DN0I7RUF0REo7STNCc0NJLGtCRm5CNkI7SUV5QjdCLGlCRnpCNkI7RzZCbUM3QjtFRWxESjtJQVVFLGtCQUFpQjtHQUVsQjtFQU1EO0lBV0UsY0FBYTtHQTZCZDtFRS9DRDtJQWtJSSxvQm5DdElxQjtHbUN1SXJCO0VBTUo7SUFVRSxzQkFBcUI7SUFDckIsbUJqQ2hKK0I7SWlDaUovQixZQUFXO0dBOENaO0VYM01EO0lBSUUsa0JBQXNCO0dBRXZCO0VBc0JEO0lBS0csZUFBYztHQUVmO0VBZ0VGO0lBS0Usd0JBQTRCO0dBYTdCO0VBbEJEO0lBVUcscUJBQWE7SUFBYixjQUFhO0lBQ2Isb0JBQWU7SUFBZixnQkFBZTtHQUVoQjtFQVdGO0lQcEVJLFlBQU87SUFHTCxlQUFjO0lBZWQsdUJDdEUwQztJRHVFMUMsaUJDNUV5QztJTTRJNUMscUJ0QjlIOEI7SXNCK0g5Qix1QkFBc0I7R0FRdkI7RUF4QkY7SVA5Q1EsZ0JBQThCO0dBQy9CO0VPNkNQO0lBcUJJLG1CUnRJNEI7R1F3STdCO0VBdkJIO0lBNkJHLHdCdEI1SThCO0dzQjhJL0I7RUFPRjtJUDFHSSxZQUFPO0lBR0wsZUFBYztJQWVkLHVCQ3RFMEM7SUR1RTFDLGlCQzVFeUM7SVkwRXZCLHNCNUI1RFM7STRCaUVQLHlCNUJqRU87STRCNEVQLHdCNUI1RU87SXNCNko5QixjQUFhO0dBT2Q7RUFmRjtJUHBGUSxnQkFBOEI7R0FDL0I7RU95R1A7SXdDdEpFLHFCQUE0SDtJL0NzQjFILFlBQU87SUFHTCxlQUFjO0lBZWQsdUJDdEUwQztJRHVFMUMsaUJDNUV5QztJTWtNNUMsZUFBYztHQXdDZjtFQWpERjtJUDFHUSxnQkFBOEI7R0FDL0I7RU95R1A7SUE2QkkseUJ0QnhNNkI7R3NCOE05QjtFQW9CSDtJQWNFLGNBQWE7R0FhZDtFQUtEO0lBV0ksZUFBYztJQUNkLHdCdEI5UTZCO0lzQitRN0IsZUFBYztJQUNkLG9CdEJoUjZCO0dzQmdTOUI7RUFRSDtJQVlHLGNBQWE7R0F5QmQ7RUFPRjtJQVlFLGNBQWE7R0FFZDtFZXBYRDtJQWVFLHVCckNHK0I7R3FDc0toQztFQXhMRDtJQXFIRywrRUFBa0g7R0FFbkg7RUEwREQ7SUFJRSxzQnJDbks4QjtHcUNxSy9CO0VHckxGO0lBMEJFLHVCeENWK0I7R3dDZ1BoQztFQWhRRDtJQThESSx3QkFBcUI7R0FFdEI7RUFoRUg7SUE0SEcsZUFBYztHQW9CZjtFQWhKRjtJQW9NRyxjQUFhO0dBMkRkO0VFbE9GO0lBTUUsWUFBVztHQW9DWjtFRWpFRDtJQVFFLHNCNUNFK0I7RzRDOEtoQztFQXNCRDtJQU1HLGVBQWM7R0FFZjtFQy9ORjtJQU9HLHdCN0NZOEI7RzZDVi9CO0VBTUY7O0kzQ3VCSSxrQkZuQjZCO0lFeUI3QixpQkZ6QjZCO0k2Q085Qix3QjdDUDhCO0c2Q3FCL0I7RUF6QkY7O0kzQ3VCSSxnQkZuQjZCO0lFeUI3QixlRnpCNkI7RzZDb0I5QjtFQVNIO0kzQ1ZJLGlCRm5CNkI7SUV5QjdCLGdCRnpCNkI7STZDd0M5QixzQjdDeEM4QjtJNkN5QzlCLGM3Q3pDOEI7RzZDaUUvQjtFQXBDRjs7SUF1Qkksb0I3Q3BENkI7RzZDc0Q5QjtFQXpCSDtJQWlDSSxlN0M5RDZCO0c2Q2dFOUI7RUVqRkg7SUFrQkcsZ0JBQWU7R0FFaEI7RUFPRjtJN0NTSSxrQkZuQjZCO0lFeUI3QixpQkZ6QjZCO0krQ3FCL0IsK0JBQTBCO0dBRTNCO0VBTUQ7SUFTRSxtQi9DdEMrQjtJK0N1Qy9CLHNCL0N2QytCO0crQ3lDaEM7RUFNRDtJQUlFLHNDL0NuRCtCO0krQ29EL0IsdUIvQ3BEK0I7RytDd0VoQztFQXpCRDtJQWdCRyxvQi9DL0Q4QjtJK0NnRTlCLGtCQUFpQjtJQUNqQix3Qi9DakU4QjtHK0N1RS9CO0VBTUY7SUFTRSxnQi9DdEYrQjtJK0N1Ri9CLHFCL0N2RitCO0crQzZGaEM7RUFNRDtJQWNHLGdCL0NqSDhCO0crQzBIL0I7RUFlRjtJQU1FLG9CL0MvSStCO0crQ3NKaEM7RUlwSkQ7O0lBUUUsd0JuRFYrQjtJbURXL0Isb0JuRFgrQjtHbURhaEM7RUFNRDtJQVNHLGdCbkQ1QjhCO0dtRDhCL0I7RUFRRjs7Ozs7OztJQWFHLGtCbkRuRDhCO0ltRG9EOUIseUJuRHBEOEI7R21Ec0QvQjtFQU9GO0lBVUcsZ0JuRHZFOEI7SW1Ed0U5Qix1Qm5EeEU4QjtHbUQwRS9CO0VDL0VGOztJQU1HLHVCcEREOEI7R29ERy9CO0VBUkY7O0lBZUcsd0JwRFY4QjtJb0RXOUIsaUJwRFg4QjtJb0RZOUIsYUFBWTtHQUViO0VBT0Y7SUFVRyxrQnBEL0I4QjtJb0RnQzlCLHdCcERoQzhCO0lvRGlDOUIsdUJwRGpDOEI7R29ENEMvQjtFQXZCRjtJQW9CSSxnQnBEekM2QjtHb0QyQzlCO0VBUUg7SUFVRyxvQnBEN0Q4QjtJb0Q4RDlCLGtCQUFpQjtJQUNqQixtQkFBaUI7R0EwQmxCO0VBdENGO0lBcUJJLGtCQUFpQjtJQUNqQixtQnBEekU2QjtHb0R3RjlCO0VBckNIO0lBaUNLLG9CcERwRjRCO0lvRHFGNUIsNkJwRHJGNEI7R29EdUY3QjtFQVNKOztJQUlFLHlCcERwRytCO0dvRG9JaEM7RUFwQ0Q7O0lBaUJHLHNCcERqSDhCO0dvRDRIL0I7RUF5QkY7SUFJRSxvQnBEekorQjtJb0QwSi9CLHVCcEQxSitCO0dvRGlMaEM7RUNqTUQ7SUFjRyxvQnJERThCO0dxREEvQjtFR0ZGO0lBdUNJLG1CeERyQzZCO0l3RHNDN0IsaUJBQWdCO0lBQ2hCLGVBQWM7SUFDZCxZQUFXO0dBRVo7RUFPSDtJQWFHLFdBQVU7SUFDVixnQnhEL0Q4QjtHd0RzSS9CO0VBckZGO0lBZ0NJLHlCeERqRjZCO0l3RGtGN0Isb0J4RGxGNkI7R3dEcUk5QjtFQXBGSDtJQTBFSyxvQnhEM0g0QjtHd0Q2SDdCO0VB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Qy9CO0M4Q3F6SU47O0FEcjFJRztFM0NoQ0o7SUFPRyxpQmpCVDhCO0dpQlcvQjtFZ0IwSEY7SUFvQkUsZUFBYztHQXNDZjtFV3pNRDtJN0JxREksWUFBTztJQUdMLGVBQWM7SUFlZCx1QkN0RTBDO0lEdUUxQyxnQkM1RXlDO0k0QjhENUMscUJBQW9CO0dBRXJCO0VBNURGO0k3QjJFUSxnQkFBOEI7R0FDL0I7RTZCNUVQO0k3QnFESSxZQUFPO0lBR0wsZUFBYztJQWVkLHVCQ3RFMEM7SUR1RTFDLGdCQzVFeUM7STRCZ0c1QyxnQkFBZTtHQUVoQjtFQTlGRjtJN0IyRVEsZ0JBQThCO0dBQy9CO0U2QjVFUDtJN0JxREksWUFBTztJQUdMLGVBQWM7SUFlZCx1QkN0RTBDO0lEdUUxQyxpQkM1RXlDO0k0QitINUMscUJBQW9CO0dBRXJCO0VBN0hGO0k3QjJFUSxnQkFBOEI7R0FDL0I7RTZCNUVQO0k3QnFESSxZQUFPO0lBR0wsZUFBYztJQWVkLHVCQ3RFMEM7SUR1RTFDLGlCQzVFeUM7STRCMEo1QyxxQkFBb0I7R0FFckI7RUF4SkY7STdCMkVRLGdCQUE4QjtHQUMvQjtFNkI1RVA7STdCcURJLFlBQU87SUFHTCxlQUFjO0lBZWQsdUJDdEUwQztJRHVFMUMsaUJDNUV5QztJNEJ5TDVDLGdCQUFlO0dBRWhCO0VBdkxGO0k3QjJFUSxnQkFBOEI7R0FDL0I7QzhDOGtCTjs7QURsbEJHO0V4Q29CSjtJQXVCRyxxQnBCekc4QjtJb0IwRzlCLHNCcEIxRzhCO0lvQjJHOUIsWUFBVztHQUVaO0N5Qzh0QkQ7O0FEN3dCRztFckN3RUo7SUFzQkcsZ0J2QjVKOEI7R3VCOEwvQjtFRTlMRjtJQXFCRSxrQnpCckIrQjtJeUJzQi9CLDBCekJ0QitCO0l5QnVCL0IsZ0JBQWU7R0F3QmhCO0VBTUQ7SUFvQkcsbUJBQXlCO0lBQXpCLDBCQUF5QjtJQUN6QixzQnpCMUU4QjtJeUIyRTlCLGtCQUFpQjtJQUNqQix5QnpCNUU4QjtJeUI2RTlCLGVBQWM7R0FTZjtFQU9GO0l4QjNFRSxtQndCMEYwQjtJeEJ0RnRCLGVEdEIyQjtJQ3NCM0IsZ0JEdEIyQjtJeUI4Ry9CLGFBQVk7R0FZYjtFQVZDO0lBQ0MsWUFBVztHQUNYO0VBY0g7SUFrQkksb0J6QmxKNkI7R3lCMEo5QjtDb0NteENGOztBRC8yQ0c7RWYwR0o7SUFFRSxjQUFhO0dBRWQ7Q2dCK29KQTs7QUQ3dkpHO0VmZ0hKO0lBRUUsY0FBYTtHQUVkO0NnQitvSkE7O0FEbndKRztFckN3RUo7SUFpQkcsV0FBVTtHQXVDWDtDc0N5dUNEOztBRHoyQ0c7RWpCbEZKO0lBRUUsdUIzQ2tCK0I7RzJDaEJoQztFRXdGRDtJQUdHLHdCN0MzRThCO0c2QzZFL0I7RUFxRUY7SUFFRSw0QkFBMEI7SUFDMUIsV0FBVTtHQUVYO0NnQitqSUE7O0FEeHBJRztFZnlCSjtJQUdHLDZCQUEwQjtHQUUzQjtDZ0J3cUpEIiwiZmlsZSI6InN0eWxlLmNzcyIsInNvdXJjZXNDb250ZW50IjpbIi8qXG5UaGVtZSBOYW1lOiBDb21lYmFjayBNZWRpYVxuVGhlbWUgVVJJOiBodHRwOi8vdGhlY29tZWJhY2suY29tXG5BdXRob3I6IFdlYkRldlN0dWRpb3NcbkF1dGhvciBVUkk6IGh0dHBzOi8vd2ViZGV2c3R1ZGlvcy5jb21cbkRlc2NyaXB0aW9uOiBBIHNwaWZmeSBuZXcgdGhlbWUgZm9yIENvbWViYWNrIE1lZGlhIGJ5IFdlYkRldlN0dWRpb3MgYmFzZWQgb24gd2Rfcy5cblZlcnNpb246IDEuMC4wXG5MaWNlbnNlOiBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSB2MiBvciBsYXRlclxuTGljZW5zZSBVUkk6IGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9ncGwtMi4wLmh0bWxcblRleHQgRG9tYWluOiBjb21lYmFja1xuVGFnczogY3VzdG9tXG5cblRoaXMgdGhlbWUsIGxpa2UgV29yZFByZXNzLCBpcyBsaWNlbnNlZCB1bmRlciB0aGUgR1BMLlxuXG5CYXNlZCBvbiBVbmRlcnNjb3JlcyBodHRwOi8vdW5kZXJzY29yZXMubWUvLCAoQykgMjAxMi0yMDE2IEF1dG9tYXR0aWMsIEluYy5cblxuKi9cblxuQGltcG9ydCBcImJvdXJib25cIjtcbkBpbXBvcnQgXCJ1dGlsaXRpZXMvdmFyaWFibGVzL2luZGV4XCI7XG5AaW1wb3J0IFwibmVhdFwiO1xuQGltcG9ydCBcInV0aWxpdGllcy9taXhpbnMvaW5kZXhcIjtcbkBpbXBvcnQgXCJhc3NldHMvYm93ZXJfY29tcG9uZW50cy9ub3JtYWxpemUtY3NzL25vcm1hbGl6ZS5jc3NcIjtcbkBpbXBvcnQgXCJhc3NldHMvYm93ZXJfY29tcG9uZW50cy9hbmltYXRlLmNzcy9hbmltYXRlLmNzc1wiO1xuXG5AaW1wb3J0IFwiYmFzZS9pbmRleFwiO1xuQGltcG9ydCBcInN0cnVjdHVyZS9pbmRleFwiO1xuQGltcG9ydCBcIm1vZHVsZXMvaW5kZXhcIjtcbkBpbXBvcnQgXCJwbHVnaW5zL2luZGV4XCI7XG5AaW1wb3J0IFwidmlld3MvaW5kZXhcIjtcbkBpbXBvcnQgXCJ3aWRnZXRzL2luZGV4XCI7XG4iLCJAY2hhcnNldCBcIlVURi04XCI7XG5cbkBpZiAkYm9yZGVyLWJveC1zaXppbmcgPT0gdHJ1ZSB7XG4gIGh0bWwgeyAvLyBodHRwOi8vYml0Lmx5LzFxazJ0VlJcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICB9XG5cbiAgKiB7XG4gICAgJixcbiAgICAmOjphZnRlcixcbiAgICAmOjpiZWZvcmUge1xuICAgICAgYm94LXNpemluZzogaW5oZXJpdDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIFR5cG9ncmFwaHlcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuYm9keSxcbmJ1dHRvbixcbmlucHV0LFxuc2VsZWN0LFxudGV4dGFyZWEge1xuXHRjb2xvcjogJGNvbG9yLXRleHQtbWFpbjtcblx0Zm9udC1mYW1pbHk6ICRmb250LXNlcmlmO1xuXHRmb250LXNpemU6IHJlbSgyMCk7XG5cdGZvbnQtd2VpZ2h0OiA0MDA7XG5cdGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtYm9keTtcbn0gLy8gYm9keSwgYnV0dG9uLCBpbnB1dCwgc2VsZWN0LCB0ZXh0YXJlYVxuXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBIZWFkZXJzXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbmgxLFxuLmgxIHtcblx0Zm9udC1mYW1pbHk6ICRmb250LXNhbnM7XG5cdGZvbnQtc2l6ZTogcmVtKDQyKTtcblx0Zm9udC13ZWlnaHQ6IDcwMDtcbn0gLy8gaDEsIC5oMVxuXG5oMixcbi5oMiB7XG5cdGZvbnQtZmFtaWx5OiAkZm9udC1zYW5zO1xuXHRmb250LXNpemU6IHJlbSgyOCk7XG5cdGZvbnQtd2VpZ2h0OiA3MDA7XG5cblx0QGluY2x1ZGUgbWVkaWEoJHRhYmxldC1wb3J0cmFpdCkge1xuXHRcdGZvbnQtc2l6ZTogcmVtKDMyKTtcblx0fVxufSAvLyBoMiwgLmgyXG5cbmgzLFxuLmgzIHtcblx0Zm9udC1mYW1pbHk6ICRmb250LXNhbnM7XG5cdGZvbnQtc2l6ZTogcmVtKDIyKTtcblx0Zm9udC13ZWlnaHQ6IDcwMDtcblxuXHRAaW5jbHVkZSBtZWRpYSgkdGFibGV0LXBvcnRyYWl0KSB7XG5cdFx0Zm9udC1zaXplOiByZW0oMjgpO1xuXHR9XG59IC8vIGgzLCAuaDNcblxuaDQsXG4uaDQge1xuXHRmb250LWZhbWlseTogJGZvbnQtc2Fucztcblx0Zm9udC1zaXplOiByZW0oMjApO1xuXHRmb250LXdlaWdodDogNzAwO1xuXHRsZXR0ZXItc3BhY2luZzogcmVtKDIpO1xuXHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXG5cdEBpbmNsdWRlIG1lZGlhKCR0YWJsZXQtcG9ydHJhaXQpIHtcblx0XHRmb250LXNpemU6IHJlbSgyNCk7XG5cdH1cbn0gLy8gaDQsIC5oNFxuXG5oNSxcbi5oNSB7XG5cdGZvbnQtZmFtaWx5OiAkZm9udC1zYW5zO1xuXHRmb250LXNpemU6IHJlbSgyMCk7XG5cdGZvbnQtd2VpZ2h0OiA3MDA7XG5cblx0QGluY2x1ZGUgbWVkaWEoJHRhYmxldC1wb3J0cmFpdCkge1xuXHRcdGZvbnQtc2l6ZTogcmVtKDI0KTtcblx0fVxufSAgLy8gaDUsIC5oNVxuXG5oNixcbi5oNiB7XG5cdGZvbnQtZmFtaWx5OiAkZm9udC1zYW5zO1xuXHRmb250LXNpemU6IHJlbSgxOCk7XG5cdGZvbnQtd2VpZ2h0OiA3MDA7XG5cblx0QGluY2x1ZGUgbWVkaWEoJHRhYmxldC1wb3J0cmFpdCkge1xuXHRcdGZvbnQtc2l6ZTogcmVtKDIwKTtcblx0fVxufSAvLyBoNiwgLmg2XG5cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIENvcHlcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxucCB7XG5cdGZvbnQtZmFtaWx5OiAkZm9udC1zZXJpZjtcblx0Zm9udC1zaXplOiByZW0oMTgpO1xuXHRmb250LXdlaWdodDogNDAwO1xuXHRsaW5lLWhlaWdodDogMS42O1xuXHRtYXJnaW46IDAgMCByZW0oMjQpIDA7XG5cblx0QGluY2x1ZGUgbWVkaWEoJHRhYmxldC1sYW5kc2NhcGUpIHtcblx0XHRmb250LXNpemU6IHJlbSgyMCk7XG5cdFx0bGluZS1oZWlnaHQ6IDEuNTU7XG5cdFx0bWFyZ2luLWJvdHRvbTogcmVtKDI2KTtcblx0fVxufSAvLyBwXG5cbmIsXG5zdHJvbmcge1xuXHRmb250LXdlaWdodDogNzAwO1xufSAvLyBiLCBzdHJvbmdcblxuZGZuLFxuY2l0ZSxcbmVtLFxuaSB7XG5cdGZvbnQtc3R5bGU6IGl0YWxpYztcbn0gLy8gZGZuLCBjaXRlLCBlbSwgaVxuXG5ibG9ja3F1b3RlLFxucSB7XG5cdGNvbG9yOiAkY29sb3ItbWlkLWdyYXk7XG5cdGZvbnQtc2l6ZTogcmVtKDE4KTtcblx0bWFyZ2luOiAwIDAgMCByZW0oMjApO1xuXHRwYWRkaW5nLWxlZnQ6IHJlbSgxNSk7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuXHQmOjpiZWZvcmUsXG5cdCY6OmFmdGVyIHtcblx0XHRjb250ZW50OiBcIlwiO1xuXHR9ICAvLyAmOjpiZWZvcmUsICY6OmFmdGVyXG5cblx0Jjo6YmVmb3JlIHtcblx0XHRAaW5jbHVkZSBwb3NpdGlvbihhYnNvbHV0ZSwgcmVtKDYpIG51bGwgbnVsbCAwKTtcblx0XHRAaW5jbHVkZSBzaXplKHJlbSgyKSA5MCUpO1xuXG5cdFx0YmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWJ1dHRlcmN1cDtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0fSAvLyAmOjpiZWZvcmVcbn0gLy8gYmxvY2txdW90ZSwgcVxuXG5hZGRyZXNzIHtcblx0bWFyZ2luOiAwIDAgcmVtKDI0KSAwO1xufSAvLyBhZGRyZXNzXG5cbnByZSB7XG5cdGZvbnQtZmFtaWx5OiAkZm9udC1wcmU7XG5cdGZvbnQtc2l6ZTogcmVtKDE1KTtcblx0bGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1wcmU7XG5cdG1hcmdpbjogMCAwIHJlbSgyNCk7XG5cdG1heC13aWR0aDogMTAwJTtcblx0b3ZlcmZsb3c6IGF1dG87XG5cdHBhZGRpbmc6IHJlbSgyNCk7XG59IC8vIHByZVxuXG5jb2RlLFxua2JkLFxudHQsXG52YXIge1xuXHRmb250LWZhbWlseTogJGZvbnQtY29kZTtcblx0Zm9udC1zaXplOiByZW0oMTUpO1xufSAvLyBjb2RlLCBrYmQsIHR0LCB2YXJcblxuYWJicixcbmFjcm9ueW0ge1xuXHRib3JkZXItYm90dG9tOiBub25lO1xuXHRjdXJzb3I6IGhlbHA7XG5cdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn0gLy8gYWJiciwgYWNyb255bVxuXG5hYmJyW3RpdGxlXSB7XG5cdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxubWFyayxcbmlucyB7XG5cdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn0gLy8gbWFyaywgaW5zXG5cbnN1cCxcbnN1YiB7XG5cdGZvbnQtc2l6ZTogNzUlO1xuXHRoZWlnaHQ6IDA7XG5cdGxpbmUtaGVpZ2h0OiAwO1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn0gLy8gc3VwLCBzdWJcblxuc3VwIHtcblx0Ym90dG9tOiAxZXg7XG59IC8vIHN1cFxuXG5zdWIge1xuXHR0b3A6IDAuNWV4O1xufSAvLyBzdWJcblxuc21hbGwge1xuXHRmb250LXNpemU6IDc1JTtcbn0gLy8gc21hbGxcblxuYmlnIHtcblx0Zm9udC1zaXplOiAxMjUlO1xufSAvLyBiaWdcblxuLy8gV29yZCBXcmFwcGluZ1xuLmVudHJ5LXRpdGxlLFxuLmVudHJ5LWNvbnRlbnQsXG4uY29tbWVudHMtdGl0bGUsXG4uY29tbWVudC1jb250ZW50LFxuLndpZGdldC10aXRsZSxcbi53aWRnZXQge1xuXHRAaW5jbHVkZSB3b3JkLWJyZWFrO1xufSAvLyAuZW50cnktdGl0bGUsIC5lbnRyeS1jb250ZW50LCAuY29tbWVudHMtdGl0bGUsIC5jb21tZW50LWNvbnRlbnQsIC53aWRnZXQtdGl0bGUsIC53aWRnZXRcblxuLy8gTGlua3MuXG5hOm5vdCguYnV0dG9uKSB7XG5cdGJvcmRlci1ib3R0b206IHJlbSgyKSBzb2xpZCAkY29sb3ItYnV0dGVyY3VwO1xuXHRmb250LXN0eWxlOiBpdGFsaWM7XG5cdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblx0dHJhbnNpdGlvbjogY29sb3IgMC4xOHMgZWFzZS1vdXQ7XG5cblx0Ly8gRmVhdHVyZWQgcG9zdHMgYXJlIG5vdyB3cmFwcGVkIGluIDxhPiwgZG9uJ3QgYWRkIGEgYm9yZGVyLlxuXHQmLmZlYXR1cmVkLXBvc3Qge1xuXHRcdGJvcmRlcjogbm9uZTtcblx0fVxufSAvLyBhOm5vdCguYnV0dG9uKVxuXG4uZW50cnktdGl0bGUge1xuXHRAZXh0ZW5kIC5oMjtcblxuXHRsaW5lLWhlaWdodDogMS4xMzYzNjM2OyAvLyA1MCAvIDQ0XG5cblx0QGluY2x1ZGUgbWVkaWEoJGJyZWFrcG9pbnQtNTAwKSB7XG5cdFx0bWFyZ2luOiByZW0oMzYpIDAgcmVtKDMxKTtcblx0fVxuXG5cdEBpbmNsdWRlIG1lZGlhKCR0YWJsZXQtbGFuZHNjYXBlKSB7XG5cdFx0Zm9udC1zaXplOiByZW0oMzgpO1xuXHRcdG1hcmdpbjogcmVtKDQyKSAwIHJlbSgyNSk7XG5cdH1cbn0gLy8gLmVudHJ5LXRpdGxlXG5cbi8vIFBvc3QgdGl0bGVzIHNob3VsZCBOT1QgYmUgaXRhbGljIG9yIGhhdmUgYm9yZGVyLlxuLmVudHJ5LXRpdGxlIGEge1xuXHRib3JkZXI6IG5vbmU7XG5cdGZvbnQtc3R5bGU6IG5vcm1hbDtcbn0gLy8gLmVudHJ5LXRpdGxlIGFcblxuLy8gQnlsaW5lLCBwb3N0ZWQgb24sIGFuZCBhdXRob3IuXG4uZW50cnktbWV0YSB7XG5cdGZvbnQtc2l6ZTogcmVtKDE4KTtcblx0Zm9udC1zdHlsZTogaXRhbGljO1xuXG5cdGEge1xuXHRcdGJvcmRlcjogbm9uZTtcblx0XHRjb2xvcjogJGNvbG9yLW1pZC1ncmF5O1xuXHR9IC8vIGFcbn0gLy8gLmVudHJ5LW1ldGFcbiIsIi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vICAgQ09MT1JTXG4vLyAgICAtIFByaW1hcnkgcGFsZXR0ZVxuLy8gICAgLSBHcmF5c2NhbGVcbi8vICAgIC0gU29jaWFsIE1lZGlhIENvbG9yc1xuLy8gICAgICAgLSAkc29jaWFsLWNvbG9ycygpIG1hcFxuLy9cbi8vICAgRUxFTUVOVFMgJiBTS0lOTklOR1xuLy8gICAgIC0gR2VuZXJhbFxuLy8gICAgIC0gQWNjZXNzaWJpbGl0eVxuLy8gICAgIC0gTGlua3Ncbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBDT0xPUlNcblxuLy8gUHJpbWFyeSBwYWxldHRlXG4kY29sb3ItYnV0dGVyY3VwOiAjZjRiMjI1O1xuJGNvbG9yLWFiYmV5OiAjNTk1YzYyO1xuJGNvbG9yLW1ha286ICMzZjQxNDc7XG4kY29sb3Itc2hhcms6ICMyYzJkMzE7XG4kY29sb3ItZHVzazogIzFlMWUyMjtcbiRjb2xvci1zbGF0ZTogIzJjMmMzMTtcbiRjb2xvci1zYW5kOiAjZjVmNmY2O1xuJGNvbG9yLW1pZC1ncmF5OiAjNTk1YjYxO1xuJGNvbG9yLXNpZGViYXI6ICNmN2Y3Zjc7XG4kY29sb3ItYmxvZy1jYXJkLXNoYWRvdzogcmdiYSg0LCA0LCA0LCAwLjEyKTtcbiRjb2xvci1jYXRlZ29yeS1saW5rOiAjNzE3Mjc2O1xuJGNvbG9yLWF0aGVucy1ncmV5OiAjZTllYmVlO1xuJGNvbG9yLWJsYWNrOiAjMDAwO1xuJGNvbG9yLXdoaXRlOiAjZmZmO1xuJGNvbG9yLWdyYWQtMTogIzM3NzlhMztcbiRjb2xvci1ncmFkLTI6ICM0MjViNmQ7XG4kY29sb3ItZ3JhZC0zOiAjNDk0YTRkO1xuXG4vLyBHcmF5c2NhbGVcbiRjb2xvci1ncmF5OiAjODA4MDgwO1xuJGNvbG9yLWNvZC1ncmF5OiAjMTExO1xuJGNvbG9yLW1pbmVzaGFmdDogIzMzMztcbiRjb2xvci1kb3ZlLWdyYXk6ICM2NjY7XG4kY29sb3ItZ3JheS1hbHQ6ICM5MjkyOTI7XG4kY29sb3Itc2lsdmVyLWNoYWxpY2U6ICNhYWE7XG4kY29sb3Itc2lsdmVyOiAjY2NjO1xuJGNvbG9yLWFsdG86ICNkZGQ7XG4kY29sb3ItZ2FsbGVyeTogI2VlZTtcbiRjb2xvci13aGl0ZXNtb2tlOiAjZjFmMWYxO1xuJGNvbG9yLXRodW5kZXI6ICMyYjI2MmI7XG4kY29sb3ItZmxpbnQ6ICM2YjY0NjE7XG4kY29sb3ItaXJvbjogI2Q5ZTBlMDtcbiRjb2xvci13b29kc21va2U6ICMwZTBlMTE7XG4kY29sb3ItZnJlbmNoLWdyYXk6ICNjOWM5Y2I7XG4kY29sb3ItYXJyb3ctZ3JheTogIzgxODM4MztcbiRjb2xvci1zaXRlbGlzdC1ncmF5OiAjNTk1YjYyO1xuXG4vLyBDYXRlZ29yeSBDb2xvcnNcbiRjb2xvci1uYmE6ICNlMjViMDA7XG4kY29sb3ItbmZsOiAjMDAwO1xuJGNvbG9yLW1sYjogIzAwNjczMjtcbiRjb2xvci1uY2FhOiAjZDEwZDAwO1xuJGNvbG9yLW5obDogIzhiYzBlYjtcbiRjb2xvci1wb3AtY3VsdHVyZTogI2RlY2EwMDtcblxuLy8gJGNhdGVnb3J5LWNvbG9ycygpIG1hcFxuJGNhdGVnb3J5LWNvbG9yczogKFxuXHRuYmE6ICRjb2xvci1uYmEsXG5cdG5mbDogJGNvbG9yLW5mbCxcblx0bWxiOiAkY29sb3ItbWxiLFxuXHRuY2FhOiAkY29sb3ItbmNhYSxcblx0bmhsOiAkY29sb3ItbmhsLFxuXHRwb3AtY3VsdHVyZTogJGNvbG9yLXBvcC1jdWx0dXJlLFxuKTtcblxuLy8gU29jaWFsIE1lZGlhIENvbG9yc1xuJGNvbG9yLWZhY2Vib29rOiAjM2I1OTk4O1xuJGNvbG9yLWdvb2dsZXBsdXM6ICNkZDRiMzk7XG4kY29sb3ItaW5zdGFncmFtOiAjNTE3ZmE0O1xuJGNvbG9yLWxpbmtlZGluOiAjMDA3YmI2O1xuJGNvbG9yLXBpbnRlcmVzdDogI2NiMjAyNztcbiRjb2xvci1yc3M6ICNmOTA7XG4kY29sb3ItdHdpdHRlcjogIzAwYWNlZDtcbiRjb2xvci15b3V0dWJlOiAjYjAwO1xuXG4vLyAkc29jaWFsLWNvbG9ycygpIG1hcFxuJHNvY2lhbC1jb2xvcnM6IChcblx0ZmFjZWJvb2s6ICRjb2xvci1mYWNlYm9vayxcblx0ZmFjZWJvb2stc3F1YXJlOiAkY29sb3ItZmFjZWJvb2ssXG5cdGdvb2dsZXBsdXM6ICRjb2xvci1nb29nbGVwbHVzLFxuXHRnb29nbGVwbHVzLXNxdWFyZTogJGNvbG9yLWdvb2dsZXBsdXMsXG5cdGluc3RhZ3JhbTogJGNvbG9yLWluc3RhZ3JhbSxcblx0aW5zdGFncmFtLXNxdWFyZTogJGNvbG9yLWluc3RhZ3JhbSxcblx0bGlua2VkaW46ICRjb2xvci1saW5rZWRpbixcblx0bGlua2VkaW4tc3F1YXJlOiAkY29sb3ItbGlua2VkaW4sXG5cdHBpbnRlcmVzdDogJGNvbG9yLXBpbnRlcmVzdCxcblx0cGludGVyZXN0LXNxdWFyZTogJGNvbG9yLXBpbnRlcmVzdCxcblx0cnNzOiAkY29sb3ItcnNzLFxuXHRyc3Mtc3F1YXJlOiAkY29sb3ItcnNzLFxuXHR0d2l0dGVyOiAkY29sb3ItdHdpdHRlcixcblx0dHdpdHRlci1zcXVhcmU6ICRjb2xvci10d2l0dGVyLFxuXHR5b3V0dWJlOiAkY29sb3IteW91dHViZSxcblx0eW91dHViZS1zcXVhcmU6ICRjb2xvci15b3V0dWJlLFxuKTtcblxuLy8gJGNhdGVnb3J5LWNvbG9ycygpIG1hcFxuJGNhdGVnb3J5LWNvbG9yczogKFxuXHRuYmE6ICRjb2xvci1uYmEsXG5cdG5mbDogJGNvbG9yLW5mbCxcblx0bWxiOiAkY29sb3ItbWxiLFxuXHRuY2FhOiAkY29sb3ItbmNhYSxcblx0bmhsOiAkY29sb3ItbmhsLFxuXHRwb3AtY3VsdHVyZTogJGNvbG9yLXBvcC1jdWx0dXJlLFxuXHRjdWx0dXJlOiAkY29sb3ItcG9wLWN1bHR1cmUsXG4pO1xuXG4vLyBFTEVNRU5UUyAmIFNLSU5OSU5HXG5cbi8vIEdlbmVyYWxcbiRjb2xvci1iYWNrZ3JvdW5kLWJvZHk6ICRjb2xvci13aGl0ZTtcbiRjb2xvci10ZXh0LW1haW46ICRjb2xvci1zaGFyaztcbiRjb2xvci1iYWNrZ3JvdW5kLWhyOiAkY29sb3Itc2lsdmVyO1xuJGNvbG9yLWJvcmRlci1hYmJyOiAkY29sb3ItZG92ZS1ncmF5O1xuXG4vLyBBY2Nlc3NpYmlsaXR5XG4kY29sb3ItYmFja2dyb3VuZC1zY3JlZW4tcmVhZGVyOiAkY29sb3Itd2hpdGVzbW9rZTtcbiRjb2xvci10ZXh0LXNjcmVlbi1yZWFkZXI6ICRjb2xvci1kdXNrO1xuXG4vLyBMaW5rc1xuJGNvbG9yLWxpbms6ICRjb2xvci1zaGFyaztcbiRjb2xvci1saW5rLXZpc2l0ZWQ6ICRjb2xvci1zaGFyaztcbiRjb2xvci1saW5rLWhvdmVyOiAkY29sb3ItYnV0dGVyY3VwO1xuXG4vLyBCdXR0b25zXG4kY29sb3ItY29ybjogI2VkYmMwMDtcbiRjb2xvci1zYWZmcm9uLW1hbmdvOiAjZjdjZjQ4O1xuJGNvbG9yLXNoaXAtZ3JheTogIzNmM2M0MjtcbiRjb2xvci1zY2FycGEtZmxvdzogIzU3NTQ1YjtcbiIsIi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIFR5cG9ncmFwaHlcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJGZvbnQtc2FuczogIFwiZnJlaWdodC1zYW5zLXByb1wiLCBzYW5zLXNlcmlmO1xuJGZvbnQtc2VyaWY6IFwiZmYtdGlzYS13ZWItcHJvXCIsIHNlcmlmO1xuJGZvbnQtY29kZTogTW9uYWNvLCBDb25zb2xhcywgXCJBbmRhbGUgTW9ub1wiLCBcIkRlamFWdSBTYW5zIE1vbm9cIiwgbW9ub3NwYWNlO1xuJGZvbnQtcHJlOiBcIkNvdXJpZXIgMTAgUGl0Y2hcIiwgQ291cmllciwgbW9ub3NwYWNlO1xuXG4kbGluZS1oZWlnaHQtYm9keTogMS42MjU7XG4kbGluZS1oZWlnaHQtcHJlOiAkbGluZS1oZWlnaHQtYm9keTtcbiIsIi8vIENvbnZlcnQgcGl4ZWxzIHRvIHJlbXNcbi8vIGVnLiBmb3IgYSByZWxhdGlvbmFsIHZhbHVlIG9mIDEycHggd3JpdGUgcmVtKDEyKVxuLy8gQXNzdW1lcyAkZW0tYmFzZSBpcyB0aGUgZm9udC1zaXplIG9mIDxodG1sPlxuXG5AZnVuY3Rpb24gcmVtKCRweHZhbCkge1xuICBAaWYgJG91dHB1dC1ib3VyYm9uLWRlcHJlY2F0aW9uLXdhcm5pbmdzID09IHRydWUge1xuICAgIEB3YXJuIFwiW0JvdXJib25dIFtEZXByZWNhdGlvbl0gYHJlbWAgaXMgZGVwcmVjYXRlZCBhbmQgd2lsbCBiZSBcIiArXG4gICAgXCJyZW1vdmVkIGluIDUuMC4wLlwiO1xuICB9XG5cbiAgJHVzZXItZGVwcmVjYXRpb24td2FybmluZ3Mtc2V0dGluZzogJG91dHB1dC1ib3VyYm9uLWRlcHJlY2F0aW9uLXdhcm5pbmdzO1xuICAkb3V0cHV0LWJvdXJib24tZGVwcmVjYXRpb24td2FybmluZ3M6IGZhbHNlICFnbG9iYWw7XG5cbiAgQGlmIG5vdCB1bml0bGVzcygkcHh2YWwpIHtcbiAgICAkcHh2YWw6IHN0cmlwLXVuaXRzKCRweHZhbCk7XG4gIH1cblxuICAkYmFzZTogJGVtLWJhc2U7XG4gIEBpZiBub3QgdW5pdGxlc3MoJGJhc2UpIHtcbiAgICAkYmFzZTogc3RyaXAtdW5pdHMoJGJhc2UpO1xuICB9XG5cbiAgJG91dHB1dC1ib3VyYm9uLWRlcHJlY2F0aW9uLXdhcm5pbmdzOiAkdXNlci1kZXByZWNhdGlvbi13YXJuaW5ncy1zZXR0aW5nICFnbG9iYWw7XG5cbiAgQHJldHVybiAoJHB4dmFsIC8gJGJhc2UpICogMXJlbTtcbn1cbiIsIkBjaGFyc2V0IFwiVVRGLThcIjtcblxuLy8vIFByb3ZpZGVzIGEgcXVpY2sgbWV0aG9kIGZvciBzZXR0aW5nIGFuIGVsZW1lbnTigJlzIHBvc2l0aW9uLiBVc2UgYSBgbnVsbGAgdmFsdWUgdG8g4oCcc2tpcOKAnSBhIHNpZGUuXG4vLy9cbi8vLyBAcGFyYW0ge1Bvc2l0aW9ufSAkcG9zaXRpb24gW3JlbGF0aXZlXVxuLy8vICAgQSBDU1MgcG9zaXRpb24gdmFsdWVcbi8vL1xuLy8vIEBwYXJhbSB7QXJnbGlzdH0gJGNvb3JkaW5hdGVzIFtudWxsIG51bGwgbnVsbCBudWxsXVxuLy8vICAgTGlzdCBvZiB2YWx1ZXMgdGhhdCBjb3JyZXNwb25kIHRvIHRoZSA0LXZhbHVlIHN5bnRheCBmb3IgdGhlIGVkZ2VzIG9mIGEgYm94XG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gVXNhZ2Vcbi8vLyAgIC5lbGVtZW50IHtcbi8vLyAgICAgQGluY2x1ZGUgcG9zaXRpb24oYWJzb2x1dGUsIDAgbnVsbCBudWxsIDEwZW0pO1xuLy8vICAgfVxuLy8vXG4vLy8gQGV4YW1wbGUgY3NzIC0gQ1NTIE91dHB1dFxuLy8vICAgLmVsZW1lbnQge1xuLy8vICAgICBsZWZ0OiAxMGVtO1xuLy8vICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4vLy8gICAgIHRvcDogMDtcbi8vLyAgIH1cbi8vL1xuLy8vIEByZXF1aXJlIHtmdW5jdGlvbn0gaXMtbGVuZ3RoXG4vLy8gQHJlcXVpcmUge2Z1bmN0aW9ufSB1bnBhY2tcblxuQG1peGluIHBvc2l0aW9uKCRwb3NpdGlvbjogcmVsYXRpdmUsICRjb29yZGluYXRlczogbnVsbCBudWxsIG51bGwgbnVsbCkge1xuICBAaWYgdHlwZS1vZigkcG9zaXRpb24pID09IGxpc3Qge1xuICAgICRjb29yZGluYXRlczogJHBvc2l0aW9uO1xuICAgICRwb3NpdGlvbjogcmVsYXRpdmU7XG4gIH1cblxuICAkdXNlci1kZXByZWNhdGlvbi13YXJuaW5ncy1zZXR0aW5nOiAkb3V0cHV0LWJvdXJib24tZGVwcmVjYXRpb24td2FybmluZ3M7XG4gICRvdXRwdXQtYm91cmJvbi1kZXByZWNhdGlvbi13YXJuaW5nczogZmFsc2UgIWdsb2JhbDtcbiAgJGNvb3JkaW5hdGVzOiB1bnBhY2soJGNvb3JkaW5hdGVzKTtcblxuICAkb2Zmc2V0czogKFxuICAgIHRvcDogICAgbnRoKCRjb29yZGluYXRlcywgMSksXG4gICAgcmlnaHQ6ICBudGgoJGNvb3JkaW5hdGVzLCAyKSxcbiAgICBib3R0b206IG50aCgkY29vcmRpbmF0ZXMsIDMpLFxuICAgIGxlZnQ6ICAgbnRoKCRjb29yZGluYXRlcywgNClcbiAgKTtcblxuICBwb3NpdGlvbjogJHBvc2l0aW9uO1xuXG4gIEBlYWNoICRvZmZzZXQsICR2YWx1ZSBpbiAkb2Zmc2V0cyB7XG4gICAgQGlmIGlzLWxlbmd0aCgkdmFsdWUpIHtcbiAgICAgICN7JG9mZnNldH06ICR2YWx1ZTtcbiAgICB9XG4gIH1cbiAgJG91dHB1dC1ib3VyYm9uLWRlcHJlY2F0aW9uLXdhcm5pbmdzOiAkdXNlci1kZXByZWNhdGlvbi13YXJuaW5ncy1zZXR0aW5nICFnbG9iYWw7XG59XG4iLCJAY2hhcnNldCBcIlVURi04XCI7XG5cbi8vLyBTZXRzIHRoZSBgd2lkdGhgIGFuZCBgaGVpZ2h0YCBvZiB0aGUgZWxlbWVudC5cbi8vL1xuLy8vIEBwYXJhbSB7TGlzdH0gJHNpemVcbi8vLyAgIEEgbGlzdCBvZiBhdCBtb3N0IDIgc2l6ZSB2YWx1ZXMuXG4vLy9cbi8vLyAgIElmIHRoZXJlIGlzIG9ubHkgYSBzaW5nbGUgdmFsdWUgaW4gYCRzaXplYCBpdCBpcyB1c2VkIGZvciBib3RoIHdpZHRoIGFuZCBoZWlnaHQuIEFsbCB1bml0cyBhcmUgc3VwcG9ydGVkLlxuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFVzYWdlXG4vLy8gICAuZmlyc3QtZWxlbWVudCB7XG4vLy8gICAgIEBpbmNsdWRlIHNpemUoMmVtKTtcbi8vLyAgIH1cbi8vL1xuLy8vICAgLnNlY29uZC1lbGVtZW50IHtcbi8vLyAgICAgQGluY2x1ZGUgc2l6ZShhdXRvIDEwZW0pO1xuLy8vICAgfVxuLy8vXG4vLy8gQGV4YW1wbGUgY3NzIC0gQ1NTIE91dHB1dFxuLy8vICAgLmZpcnN0LWVsZW1lbnQge1xuLy8vICAgICB3aWR0aDogMmVtO1xuLy8vICAgICBoZWlnaHQ6IDJlbTtcbi8vLyAgIH1cbi8vL1xuLy8vICAgLnNlY29uZC1lbGVtZW50IHtcbi8vLyAgICAgd2lkdGg6IGF1dG87XG4vLy8gICAgIGhlaWdodDogMTBlbTtcbi8vLyAgIH1cbi8vL1xuLy8vIEB0b2RvIFJlZmFjdG9yIGluIDUuMC4wIHRvIHVzZSBhIGNvbW1hLXNlcGFyYXRlZCBhcmd1bWVudFxuXG5AbWl4aW4gc2l6ZSgkdmFsdWUpIHtcbiAgJHdpZHRoOiBudGgoJHZhbHVlLCAxKTtcbiAgJGhlaWdodDogJHdpZHRoO1xuXG4gIEBpZiBsZW5ndGgoJHZhbHVlKSA+IDEge1xuICAgICRoZWlnaHQ6IG50aCgkdmFsdWUsIDIpO1xuICB9XG5cbiAgJHVzZXItZGVwcmVjYXRpb24td2FybmluZ3Mtc2V0dGluZzogJG91dHB1dC1ib3VyYm9uLWRlcHJlY2F0aW9uLXdhcm5pbmdzO1xuICAkb3V0cHV0LWJvdXJib24tZGVwcmVjYXRpb24td2FybmluZ3M6IGZhbHNlICFnbG9iYWw7XG5cbiAgQGlmIGlzLXNpemUoJGhlaWdodCkge1xuICAgIGhlaWdodDogJGhlaWdodDtcbiAgfSBAZWxzZSB7XG4gICAgQHdhcm4gXCJgI3skaGVpZ2h0fWAgaXMgbm90IGEgdmFsaWQgbGVuZ3RoIGZvciB0aGUgYCRoZWlnaHRgIHBhcmFtZXRlciBpbiB0aGUgYHNpemVgIG1peGluLlwiO1xuICB9XG5cbiAgQGlmIGlzLXNpemUoJHdpZHRoKSB7XG4gICAgd2lkdGg6ICR3aWR0aDtcbiAgfSBAZWxzZSB7XG4gICAgQHdhcm4gXCJgI3skd2lkdGh9YCBpcyBub3QgYSB2YWxpZCBsZW5ndGggZm9yIHRoZSBgJHdpZHRoYCBwYXJhbWV0ZXIgaW4gdGhlIGBzaXplYCBtaXhpbi5cIjtcbiAgfVxuXG4gICRvdXRwdXQtYm91cmJvbi1kZXByZWNhdGlvbi13YXJuaW5nczogJHVzZXItZGVwcmVjYXRpb24td2FybmluZ3Mtc2V0dGluZyAhZ2xvYmFsO1xufVxuIiwiLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gV29yZCBCcmVha1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLy8vXG4vLy8gQGF1dGhvciBTdGFjeSBLdmVybm1vXG4vLy8gQGdyb3VwIHdkc1xuLy8vL1xuXG4vLy8gS2VlcCB3b3JkcyB0b2dldGhlciBpZiBwb3NzaWJsZSwgYnV0IGZvcmNlIGJyZWFrIGFueXRoaW5nIHRoYXQgaXMgdG9vIGxvbmdcbi8vLyBAcGFyYW0ge1N0cmluZ30gJHdvcmQtYnJlYWsgW2tlZXAtYWxsXVxuLy8vICAgICAgYG5vcm1hbGAgfCBgYnJlYWstYWxsYCB8IGBrZWVwLWFsbGBcbi8vL1xuLy8vIEBsaW5rIGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2RvY3MvV2ViL0NTUy93b3JkLWJyZWFrIFZpZXcgYmFja2dyb3VuZCBpbmZvcm1hdGlvbiBhYm91dCB3b3JkLWJyZWFrIGhlcmVcbi8vLyBAbGluayBodHRwOi8vc2Fzc21laXN0ZXIuY29tL2dpc3QvM2YwOWU2OWE3M2UxNDg1OWY5NjcgVmlldyB3b3JkLWJyZWFrIGluIGFjdGlvblxuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIEJhc2ljIFVzYWdlIFNhc3Ncbi8vLyAgICAuYnJlYWstbG9uZy13b3Jkcy1vbmx5IHtcbi8vLyAgICAgICAgQGluY2x1ZGUgd29yZC1icmVhayhrZWVwLWFsbCk7XG4vLy8gICAgfVxuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIEJhc2ljIFVzYWdlIENTUyBPdXRwdXRcbi8vLyAgICAuYnJlYWstbG9uZy13b3Jkcy1vbmx5IHtcbi8vLyAgICAgICAgICAgIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbi8vLyAgICAgICAgICAgIHdvcmQtYnJlYWs6IGtlZXAtYWxsO1xuLy8vICAgICB9XG5cblxuQG1peGluIHdvcmQtYnJlYWsoJHdvcmQtYnJlYWs6IGtlZXAtYWxsKSB7XG5cdHdvcmQtYnJlYWs6ICR3b3JkLWJyZWFrO1xuXHR3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG59XG4iLCIvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBBY2Nlc3NpYmlsaXR5XG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIEhpZGUgdGV4dCBtZWFudCBvbmx5IGZvciBzY3JlZW4gcmVhZGVyc1xuLnNjcmVlbi1yZWFkZXItdGV4dCB7XG5cdEBpbmNsdWRlIHNpemUocmVtKDEpKTtcblxuXHRjbGlwOiByZWN0KHJlbSgxKSwgcmVtKDEpLCByZW0oMSksIHJlbSgxKSk7XG5cdG92ZXJmbG93OiBoaWRkZW47XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0d2hpdGUtc3BhY2U6IG5vd3JhcDsgLy8gZG8gbm90IHNtdWNoIHRleHQgaW4gc2NyZWVuIHJlYWRlcnMuXG5cblx0Jjpmb2N1cyB7XG5cdFx0QGluY2x1ZGUgc2l6ZShhdXRvKTtcblx0XHRAaW5jbHVkZSBwb3NpdGlvbihyZWxhdGl2ZSwgcmVtKDUpIDAgMCByZW0oNSkpO1xuXG5cdFx0YmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWJhY2tncm91bmQtc2NyZWVuLXJlYWRlcjtcblx0XHRib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcblx0XHRib3gtc2hhZG93OiAwIDAgcmVtKDIpIHJlbSgyKSByZ2JhKCRjb2xvci1ibGFjaywgMC42KTtcblx0XHRjbGlwOiBhdXRvO1xuXHRcdGNvbG9yOiAkY29sb3ItdGV4dC1zY3JlZW4tcmVhZGVyO1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdGZvbnQtc2l6ZTogcmVtKDE0KTtcblx0XHRmb250LXdlaWdodDogNzAwO1xuXHRcdGxpbmUtaGVpZ2h0OiBub3JtYWw7XG5cdFx0cGFkZGluZzogcmVtKDE1KSByZW0oMjMpIHJlbSgxNCk7XG5cdFx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHRcdHotaW5kZXg6IDEwMDAwMDsgLy8gQWJvdmUgV1AgdG9vbGJhclxuXHR9IC8vICY6Zm9jdXNcbn0gLy8gLnNjcmVlbi1yZWFkZXItdGV4dFxuIiwiLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gQm94IE1vZGVsXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRib3JkZXItcmFkaXVzOiAzcHg7XG4iLCIvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBBbGlnbm1lbnRzXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIExlZnQgQWxpZ25cbi5hbGlnbmxlZnQge1xuXHRkaXNwbGF5OiBpbmxpbmU7XG5cdGZsb2F0OiBsZWZ0O1xuXHRtYXJnaW46IDAgcmVtKDI0KSAwIDA7XG59IC8vIC5hbGlnbmxlZnRcblxuLy8gUmlnaHQgQWxpZ25cbi5hbGlnbnJpZ2h0IHtcblx0ZGlzcGxheTogaW5saW5lO1xuXHRmbG9hdDogcmlnaHQ7XG5cdG1hcmdpbjogMCAwIDAgcmVtKDI0KTtcbn0gLy8gLmFsaWducmlnaHRcblxuLy8gQ2VudGVyIEFsaWduXG4uYWxpZ25jZW50ZXIge1xuXHRAaW5jbHVkZSBtYXJnaW4tYXV0bztcbn0gLy8gLmFsaWduY2VudGVyXG4iLCIvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBNYXJnaW4gYXV0b1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLy8vXG4vLy8gQGF1dGhvciBEYW1vbiBDb29rXG4vLy8gQGdyb3VwIHdkc1xuLy8vL1xuXG4vLy8gSG9yaXpvbnRhbGx5IGNlbnRlciBhIGJsb2NrIGVsZW1lbnRcbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBCYXNpYyBVc2FnZSBTYXNzXG4vLy8gICAgLmNlbnRlci1teS1ibG9jay10aGluZ2llIHtcbi8vLyAgICAgICAgQGluY2x1ZGUgbWFyZ2luLWF1dG8oKTtcbi8vLyAgICB9XG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gQmFzaWMgVXNhZ2UgQ1NTIE91dHB1dFxuLy8vICAgIC5jZW50ZXItbXktYmxvY2stdGhpbmdpZSB7XG4vLy8gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuLy8vICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcbi8vLyAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuLy8vICAgIH1cblxuQG1peGluIG1hcmdpbi1hdXRvIHtcblx0ZGlzcGxheTogYmxvY2s7XG5cdG1hcmdpbi1sZWZ0OiBhdXRvO1xuXHRtYXJnaW4tcmlnaHQ6IGF1dG87XG59XG4iLCJAY2hhcnNldCBcIlVURi04XCI7XG5cbi8vLyBQcm92aWRlcyBhbiBlYXN5IHdheSB0byBpbmNsdWRlIGEgY2xlYXJmaXggZm9yIGNvbnRhaW5pbmcgZmxvYXRzLlxuLy8vXG4vLy8gQGxpbmsgaHR0cDovL2dvby5nbC95UDVoaVpcbi8vL1xuLy8vIEBleGFtcGxlIHNjc3Ncbi8vLyAgIC5lbGVtZW50IHtcbi8vLyAgICAgQGluY2x1ZGUgY2xlYXJmaXg7XG4vLy8gICB9XG4vLy9cbi8vLyBAZXhhbXBsZSBjc3Ncbi8vLyAgIC5lbGVtZW50OjphZnRlciB7XG4vLy8gICAgIGNsZWFyOiBib3RoO1xuLy8vICAgICBjb250ZW50OiBcIlwiO1xuLy8vICAgICBkaXNwbGF5OiBibG9jaztcbi8vLyAgIH1cblxuQG1peGluIGNsZWFyZml4IHtcbiAgJjo6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cbiIsIi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIEhUTUwgRWxlbWVudHNcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gSWZyYW1lc1xuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5lbWJlZCxcbmlmcmFtZSxcbm9iamVjdCB7XG5cdG1heC13aWR0aDogMTAwJTtcbn0gLy8gZW1iZWQsIGlmcmFtZSwgb2JqZWN0XG5cbmhyIHtcblx0QGluY2x1ZGUgc2l6ZShhdXRvIDFweCk7XG5cblx0YmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWJhY2tncm91bmQtaHI7XG5cdGJvcmRlcjogMDtcblx0bWFyZ2luOiAwIDAgcmVtKDI0KSAwO1xufSAvLyBoclxuXG5maWd1cmUge1xuXHRtYXJnaW46IDA7XG59IC8vIGZpZ3VyZVxuXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBMaXN0c1xuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG51bCxcbm9sIHtcblx0bWFyZ2luOiAwIDAgcmVtKDQ4KSByZW0oMjQpO1xufSAvLyB1bCwgb2xcblxudWwge1xuXHRsaXN0LXN0eWxlOiBkaXNjO1xufSAvLyB1bFxuXG5vbCB7XG5cdGxpc3Qtc3R5bGU6IGRlY2ltYWw7XG59IC8vIG9sXG5cbmxpID4gdWwsXG5saSA+IG9sIHtcblx0bWFyZ2luOiAwIDAgMCByZW0oMjQpO1xufSAvLyBsaSA+IHVsLCBsaSA+IG9sXG5cbmR0IHtcblx0Zm9udC13ZWlnaHQ6IDcwMDtcbn0gLy8gZHRcblxuZGQge1xuXHRtYXJnaW46IDAgcmVtKDI0KSByZW0oMjQpIDA7XG59IC8vIGRkXG5cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIFRhYmxlc1xuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG50YWJsZSB7XG5cdEBpbmNsdWRlIHNpemUoMTAwJSBhdXRvKTtcblxuXHRtYXJnaW46IDAgMCByZW0oMjQpIDA7XG59IC8vIHRhYmxlXG5cbnRoIHtcblx0Zm9udC13ZWlnaHQ6IDcwMDtcbn0gLy8gdGhcbiIsIi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBNZWRpYVxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gUGFnZSwgRW50cnkgYW5kIENvbW1lbnQgQ29udGVudFxuLnBhZ2UtY29udGVudCxcbi5lbnRyeS1jb250ZW50LFxuLmNvbW1lbnQtY29udGVudCB7XG5cdC8vIFdQIHNtaWxleVxuXHRpbWcud3Atc21pbGV5IHtcblx0XHRAaW5jbHVkZSBtYXJnaW4tcGFkZGluZy1yZXNldDtcblxuXHRcdGJvcmRlcjogbm9uZTtcblx0fSAvLyBpbWcud3Atc21pbGV5XG59IC8vIC5wYWdlLWNvbnRlbnQsIC5lbnRyeS1jb250ZW50LCAuY29tbWVudC1jb250ZW50XG5cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBJbWFnZXNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbmltZyB7XG5cdGhlaWdodDogYXV0bztcblx0bWF4LXdpZHRoOiAxMDAlO1xufSAvLyBpbWdcblxuLmdhbGxlcnkgYSB7XG5cdGJvcmRlcjogbm9uZTtcbn0gLy8gLmdhbGxlcnkgYVxuXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gQ2FwdGlvbnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIEltYWdlIGNhcHRpb25zXG4ud3AtY2FwdGlvbiB7XG5cdG1hcmdpbjogMCAwIHJlbSgyNCkgMDtcblx0bWF4LXdpZHRoOiAxMDAlO1xuXG5cdGltZ1tjbGFzcyo9XCJ3cC1pbWFnZS1cIl0ge1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdG1hcmdpbjogMCBhdXRvO1xuXHR9IC8vIGltZ1tjbGFzcyo9XCJ3cC1pbWFnZS1cIl1cblxuXHQvLyBBZGQgYXV0byBtYXJnaW5zIHNvIGltYWdlIGlzIGNlbnRlcmVkXG5cdCYuYWxpZ25jZW50ZXIge1xuXHRcdG1hcmdpbjogMCBhdXRvIHJlbSgyNCkgYXV0bztcblx0fSAvLyAmLmFsaWduY2VudGVyXG5cblx0Ly8gQWRkIGEgbWFyZ2luIHJpZ2h0IHRvIGxlZnQtYWxpZ25lZCBpbWFnZXMgd2l0aCBjYXB0aW9uc1xuXHQmLmFsaWdubGVmdCB7XG5cdFx0bWFyZ2luLXJpZ2h0OiByZW0oMjQpO1xuXHR9IC8vICYuYWxpZ25sZWZ0XG5cblx0Ly8gQWRkIGEgbWFyZ2luIGxlZnQgdG8gcmlnaHQtYWxpZ25lZCBpbWFnZXMgd2l0aCBjYXB0aW9uc1xuXHQmLmFsaWducmlnaHQge1xuXHRcdG1hcmdpbi1sZWZ0OiByZW0oMjQpO1xuXHR9IC8vICYuYWxpZ25yaWdodFxuXG5cdC8vIFJlbW92ZSB0b3AgYW5kIGJvdHRvbSBtYXJnaW4gdG8gY2FwdGlvbiB0ZXh0XG5cdC53cC1jYXB0aW9uLXRleHQge1xuXHRcdG1hcmdpbjogMDtcblx0fSAvLyAud3AtY2FwdGlvbi10ZXh0XG59IC8vIC53cC1jYXB0aW9uXG5cbi8vIEltYWdlIGNhcHRpb24gdGV4dFxuLndwLWNhcHRpb24tdGV4dCB7XG5cdGZvbnQtc2l6ZTogOTAlO1xuXHRmb250LXN0eWxlOiBpdGFsaWM7XG5cdHRleHQtYWxpZ246IGNlbnRlcjtcbn0gLy8gLndwLWNhcHRpb24tdGV4dFxuXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gR2FsbGVyaWVzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBHYWxsZXJ5XG4uZ2FsbGVyeSB7XG5cdG1hcmdpbjogMCAwIHJlbSgyNCkgMDtcbn0gLy8gLmdhbGxlcnlcblxuLy8gR2FsbGVyeSBpdGVtc1xuLmdhbGxlcnktaXRlbSB7XG5cdEBpbmNsdWRlIHNpemUoMTAwJSBhdXRvKTtcblxuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdHRleHQtYWxpZ246IGNlbnRlcjtcblx0dmVydGljYWwtYWxpZ246IHRvcDtcblxuXHQuZ2FsbGVyeS1jb2x1bW5zLTIgJiB7XG5cdFx0bWF4LXdpZHRoOiA1MCU7XG5cdH0gLy8gLmdhbGxlcnktY29sdW1ucy0yICZcblxuXHQuZ2FsbGVyeS1jb2x1bW5zLTMgJiB7XG5cdFx0bWF4LXdpZHRoOiAzMy4zMyU7XG5cdH0gLy8gLmdhbGxlcnktY29sdW1ucy0zICZcblxuXHQuZ2FsbGVyeS1jb2x1bW5zLTQgJiB7XG5cdFx0bWF4LXdpZHRoOiAyNSU7XG5cdH0gLy8gLmdhbGxlcnktY29sdW1ucy00ICZcblxuXHQuZ2FsbGVyeS1jb2x1bW5zLTUgJiB7XG5cdFx0bWF4LXdpZHRoOiAyMCU7XG5cdH0gLy8gLmdhbGxlcnktY29sdW1ucy01ICZcblxuXHQuZ2FsbGVyeS1jb2x1bW5zLTYgJiB7XG5cdFx0bWF4LXdpZHRoOiAxNi42NiU7XG5cdH0gLy8gLmdhbGxlcnktY29sdW1ucy02ICZcblxuXHQuZ2FsbGVyeS1jb2x1bW5zLTcgJiB7XG5cdFx0bWF4LXdpZHRoOiAxNC4yOCU7XG5cdH0gLy8gLmdhbGxlcnktY29sdW1ucy03ICZcblxuXHQuZ2FsbGVyeS1jb2x1bW5zLTggJiB7XG5cdFx0bWF4LXdpZHRoOiAxMi41JTtcblx0fSAvLyAuZ2FsbGVyeS1jb2x1bW5zLTggJlxuXG5cdC5nYWxsZXJ5LWNvbHVtbnMtOSAmIHtcblx0XHRtYXgtd2lkdGg6IDExLjExJTtcblx0fSAvLyAuZ2FsbGVyeS1jb2x1bW5zLTkgJlxufSAvLyAuZ2FsbGVyeS1pdGVtXG5cbi8vIEdhbGxlcnkgY2FwdGlvblxuLmdhbGxlcnktY2FwdGlvbiB7XG5cdGRpc3BsYXk6IGJsb2NrO1xufSAvLyAuZ2FsbGVyeS1jYXB0aW9uXG5cbi8vIEZsdWlkIGVtYmVkXG4uZmx1aWQtZW1iZWQge1xuXHRoZWlnaHQ6IDA7XG5cdG92ZXJmbG93OiBoaWRkZW47XG5cdHBhZGRpbmctYm90dG9tOiA1Ni4yNSU7IC8vIEZvciByYXRpbyAxNjo5LiA3NSUgaWYgcmF0aW8gaXMgNDozXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuXHRlbWJlZCxcblx0b2JqZWN0LFxuXHRpZnJhbWUge1xuXHRcdEBpbmNsdWRlIHBvc2l0aW9uKGFic29sdXRlLCAwIG51bGwgbnVsbCAwKTtcblx0XHRAaW5jbHVkZSBzaXplKDEwMCUpO1xuXHR9IC8vIGVtYmVkLCBvYmplY3QsIGlmcmFtZVxufSAvLyAuZmx1aWQtZW1iZWRcblxuLy8gQ2VudGVyIGltYWdlIGJhY2tncm91bmRcbi5pbWFnZS1hcy1iYWNrZ3JvdW5kIHtcblx0YmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcblx0YmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcblx0YmFja2dyb3VuZC1zaXplOiBjb3Zlcjtcbn0gLy8gLmltYWdlLWFzLWJhY2tncm91bmRcblxuLy8gVmlkZW8gYXMgYmFja2dyb3VuZFxuLnZpZGVvLWFzLWJhY2tncm91bmQge1xuXHRAaW5jbHVkZSBzaXplKDEwMCUgMTAwJSk7XG5cblx0ZGlzcGxheTogYmxvY2s7XG5cdG9iamVjdC1maXQ6IGNvdmVyO1xuXHRvYmplY3QtcG9zaXRpb246IGNlbnRlciB0b3A7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0ei1pbmRleDogMTtcbn0gLy8gLnZpZGVvLWFzLWJhY2tncm91bmRcblxuLy8gc3ZnIGRlZnNcbi5zdmctZGVmcyB7XG5cdGRpc3BsYXk6IG5vbmU7XG59IC8vIC5zdmctZGVmc1xuIiwiLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gTWFyZ2luICYgUGFkZGluZyBSZXNldFxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLy8vXG4vLy8gQGF1dGhvciBHcmVnIFJpY2thYnlcbi8vLyBAZ3JvdXAgd2RzXG4vLy8vXG5cbi8vLyBSZXNldHMgbWFyZ2luIGFuZCBwYWRkaW5nIG9uIGFueSBlbGVtZW50XG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gQmFzaWMgVXNhZ2UgU2Fzc1xuLy8vICAgIC5mb28ge1xuLy8vXHRcdFx0QGluY2x1ZGUgbWFyZ2luLXBhZGRpbmctcmVzZXQ7XG4vLy8gICAgfVxuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIEJhc2ljIFVzYWdlIENTUyBPdXRwdXRcbi8vLyAgICAuZm9vIHtcbi8vLyAgICAgICAgIG1hcmdpbjogMDtcbi8vLyAgICAgICAgIHBhZGRpbmc6IDA7XG4vLy8gICAgfVxuXG5AbWl4aW4gbWFyZ2luLXBhZGRpbmctcmVzZXQge1xuXHRtYXJnaW46IDA7XG5cdHBhZGRpbmc6IDA7XG59XG4iLCIvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBXaW5kb3cgUmVhZHlcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gSSB3aWxsIGNhdXNlIEZPVVQsIGhpZGUgbWUgYnkgZGVmYXVsdCFcbi5ub3QtcmVhZHkge1xuXHRvcGFjaXR5OiAwO1xuXHR0cmFuc2l0aW9uOiBvcGFjaXR5IDAuNXMgZWFzZTtcblx0dmlzaWJpbGl0eTogaGlkZGVuO1xuXG5cdC8vIFdoZW4gZXZlcnl0aGluZyBoYXMgbG9hZGVkLCBmYWRlIG1lIGluIHVzaW5nIHdpbmRvdy1yZWFkeS5qcy5cblx0LnJlYWR5ICYge1xuXHRcdG9wYWNpdHk6IDE7XG5cdFx0dmlzaWJpbGl0eTogdmlzaWJsZTtcblx0fSAvLyAucmVhZHkgJlxufSAvLyAubm90LXJlYWR5XG4iLCIvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBQYXR0ZXJuIExpYnJhcnlcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gUGF0dGVybiBkZWZhdWx0c1xuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLnBhdHRlcm4tc2VjdGlvbiB7XG5cdGJvcmRlci1ib3R0b206IHJlbSgxKSBzb2xpZCAkY29sb3ItYmxhY2s7XG5cdG1hcmdpbi1ib3R0b206ICRndXR0ZXIgKiAyO1xuXG5cdC8vIFRoZSBzZWN0aW9uIDxoZWFkZXI+XG5cdCYtaGVhZGVyIHtcblxuXHRcdC8vIFRoZSB0aXRsZS5cblx0XHRoMiB7XG5cdFx0XHRAaW5jbHVkZSBtYXJnaW4tcGFkZGluZy1yZXNldDtcblx0XHR9IC8vIGgyXG5cblx0XHQvLyBUaGUgdGV4dC5cblx0XHRwIHtcblx0XHRcdGZvbnQtc3R5bGU6IGl0YWxpYztcblx0XHRcdG1hcmdpbi10b3A6IHJlbSgxMik7XG5cdFx0fSAvLyBwXG5cdH0gLy8gLnBhdHRlcm4tc2VjdGlvbi1oZWFkZXJcblxuXHQvLyBUaGUgc2VjdGlvbiBjb250ZW50IDxkaXY+XG5cdCYtY29udGVudCB7XG5cdFx0Ym9yZGVyLWJvdHRvbTogcmVtKDEpIHNvbGlkICRjb2xvci1ncmF5O1xuXHRcdHBhZGRpbmctYm90dG9tOiAkZ3V0dGVyO1xuXG5cdFx0Ly8gUmVzZXQuXG5cdFx0aDQsXG5cdFx0cCB7XG5cdFx0XHRtYXJnaW46ICRndXR0ZXIgMDtcblx0XHR9IC8vIGg0LCBwXG5cblx0XHQvLyBUaGUgPHByZT4gY29udGFpbmVyLlxuXHRcdHByZSB7XG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3Itd2hpdGU7XG5cdFx0XHRib3JkZXI6IHJlbSgxKSBzb2xpZCAkY29sb3ItYWx0bztcblx0XHRcdGNvbG9yOiAkY29sb3ItZ3JheTtcblx0XHRcdG1hcmdpbjogMCAwICRndXR0ZXI7XG5cdFx0XHRwYWRkaW5nOiAkZ3V0dGVyO1xuXHRcdH0gLy8gcHJlXG5cblx0XHQvLyBUaGUgPGNvZGU+IGNvbnRhaW5lci5cblx0XHRjb2RlIHtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1hbHRvO1xuXHRcdFx0Zm9udC1zaXplOiByZW0oMTMpO1xuXHRcdFx0cGFkZGluZzogcmVtKDUpO1xuXHRcdH0gLy8gY29kZVxuXHR9IC8vICYtY29udGVudFxufSAvLyAucGF0dGVybi1zZWN0aW9uXG5cblxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gQ29sb3Igc3dhdGNoIGRlZmF1bHRzXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4uc3dhdGNoLWNvbnRhaW5lciB7XG5cdEBpbmNsdWRlIGNsZWFyZml4O1xuXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuXHQvLyBFYWNoIHN3YXRjaC5cblx0LnN3YXRjaCB7XG5cdFx0QGluY2x1ZGUgc2l6ZSgxMDAlIHJlbSgxMjUpKTtcblx0XHRAaW5jbHVkZSBzcGFuLWNvbHVtbnMoMyk7XG5cblx0XHRib3JkZXI6IHJlbSgxKSBzb2xpZCAkY29sb3ItYmxhY2s7XG5cdFx0Ym9yZGVyLXJhZGl1czogcmVtKDUpO1xuXHRcdG1hcmdpbi1ib3R0b206ICRndXR0ZXI7XG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblxuXHRcdC8vIFRoZSBzd2F0Y2ggPGhlYWRlcj5cblx0XHQmIGhlYWRlciB7XG5cdFx0XHRjb2xvcjogJGNvbG9yLWJsYWNrO1xuXHRcdFx0cGFkZGluZy10b3A6IHJlbSgyNSk7XG5cdFx0fSAvLyBoZWFkZXJcblxuXHRcdC8vIFRoZSBzd2F0Y2ggPGZvb3Rlcj5cblx0XHQmIGZvb3RlciB7XG5cdFx0XHRAaW5jbHVkZSBwb3NpdGlvbihhYnNvbHV0ZSwgbnVsbCBudWxsIDAgbnVsbCk7XG5cblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRjb2xvci13aGl0ZTtcblx0XHRcdGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IHJlbSg1KTtcblx0XHRcdGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiByZW0oNSk7XG5cdFx0XHRmb250LXNpemU6IHJlbSgxMik7XG5cdFx0XHRwYWRkaW5nOiByZW0oMTApO1xuXHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0fSAvLyBmb290ZXJcblx0fSAvLyAuc3dhdGNoXG59IC8vIC5zd2F0Y2gtY29udGFpbmVyXG4iLCIvLyBDb252ZXJ0IHBpeGVscyB0byBlbXNcbi8vIGVnLiBmb3IgYSByZWxhdGlvbmFsIHZhbHVlIG9mIDEycHggd3JpdGUgZW0oMTIpIHdoZW4gdGhlIHBhcmVudCBpcyAxNnB4XG4vLyBpZiB0aGUgcGFyZW50IGlzIGFub3RoZXIgdmFsdWUgc2F5IDI0cHggd3JpdGUgZW0oMTIsIDI0KVxuXG5AZnVuY3Rpb24gZW0oJHB4dmFsLCAkYmFzZTogJGVtLWJhc2UpIHtcbiAgQGlmICRvdXRwdXQtYm91cmJvbi1kZXByZWNhdGlvbi13YXJuaW5ncyA9PSB0cnVlIHtcbiAgICBAd2FybiBcIltCb3VyYm9uXSBbRGVwcmVjYXRpb25dIGBlbWAgaXMgZGVwcmVjYXRlZCBhbmQgd2lsbCBiZSBcIiArXG4gICAgXCJyZW1vdmVkIGluIDUuMC4wLlwiO1xuICB9XG5cbiAgJHVzZXItZGVwcmVjYXRpb24td2FybmluZ3Mtc2V0dGluZzogJG91dHB1dC1ib3VyYm9uLWRlcHJlY2F0aW9uLXdhcm5pbmdzO1xuICAkb3V0cHV0LWJvdXJib24tZGVwcmVjYXRpb24td2FybmluZ3M6IGZhbHNlICFnbG9iYWw7XG5cbiAgQGlmIG5vdCB1bml0bGVzcygkcHh2YWwpIHtcbiAgICAkcHh2YWw6IHN0cmlwLXVuaXRzKCRweHZhbCk7XG4gIH1cbiAgQGlmIG5vdCB1bml0bGVzcygkYmFzZSkge1xuICAgICRiYXNlOiBzdHJpcC11bml0cygkYmFzZSk7XG4gIH1cblxuICAkb3V0cHV0LWJvdXJib24tZGVwcmVjYXRpb24td2FybmluZ3M6ICR1c2VyLWRlcHJlY2F0aW9uLXdhcm5pbmdzLXNldHRpbmcgIWdsb2JhbDtcblxuICBAcmV0dXJuICgkcHh2YWwgLyAkYmFzZSkgKiAxZW07XG59XG4iLCJAY2hhcnNldCBcIlVURi04XCI7XG5cbi8vLyBTcGVjaWZpZXMgdGhlIG51bWJlciBvZiBjb2x1bW5zIGFuIGVsZW1lbnQgc2hvdWxkIHNwYW4uIElmIHRoZSBzZWxlY3RvciBpcyBuZXN0ZWQgdGhlIG51bWJlciBvZiBjb2x1bW5zIG9mIGl0cyBwYXJlbnQgZWxlbWVudCBzaG91bGQgYmUgcGFzc2VkIGFzIGFuIGFyZ3VtZW50IGFzIHdlbGwuXG4vLy9cbi8vLyBAcGFyYW0ge0xpc3R9ICRzcGFuXG4vLy8gICBBIGxpc3QgY29udGFpbmluZyBgJGNvbHVtbnNgLCB0aGUgdW5pdGxlc3MgbnVtYmVyIG9mIGNvbHVtbnMgdGhlIGVsZW1lbnQgc3BhbnMgKHJlcXVpcmVkKSwgYW5kIGAkY29udGFpbmVyLWNvbHVtbnNgLCB0aGUgbnVtYmVyIG9mIGNvbHVtbnMgdGhlIHBhcmVudCBlbGVtZW50IHNwYW5zIChvcHRpb25hbCkuXG4vLy9cbi8vLyAgIElmIG9ubHkgb25lIHZhbHVlIGlzIHBhc3NlZCwgaXQgaXMgYXNzdW1lZCB0aGF0IGl0J3MgYCRjb2x1bW5zYCBhbmQgdGhhdCB0aGF0IGAkY29udGFpbmVyLWNvbHVtbnNgIGlzIGVxdWFsIHRvIGAkZ3JpZC1jb2x1bW5zYCwgdGhlIHRvdGFsIG51bWJlciBvZiBjb2x1bW5zIGluIHRoZSBncmlkLlxuLy8vXG4vLy8gICBUaGUgdmFsdWVzIGNhbiBiZSBzZXBhcmF0ZWQgd2l0aCBhbnkgc3RyaW5nIHN1Y2ggYXMgYG9mYCwgYC9gLCBldGMuXG4vLy9cbi8vLyAgIGAkY29sdW1uc2AgYWxzbyBhY2NlcHRzIGRlY2ltYWxzIGZvciB3aGVuIGl0J3MgbmVjZXNzYXJ5IHRvIGJyZWFrIG91dCBvZiB0aGUgc3RhbmRhcmQgZ3JpZC4gRS5nLiBQYXNzaW5nIGAyLjRgIGluIGEgc3RhbmRhcmQgMTIgY29sdW1uIGdyaWQgd2lsbCBkaXZpZGUgdGhlIHJvdyBpbnRvIDUgY29sdW1ucy5cbi8vL1xuLy8vIEBwYXJhbSB7U3RyaW5nfSAkZGlzcGxheSBbYmxvY2tdXG4vLy8gICBTZXRzIHRoZSBkaXNwbGF5IHByb3BlcnR5IG9mIHRoZSBlbGVtZW50LiBCeSBkZWZhdWx0IGl0IHNldHMgdGhlIGRpc3BsYXkgcHJvcGVydHkgb2YgdGhlIGVsZW1lbnQgdG8gYGJsb2NrYC5cbi8vL1xuLy8vICAgSWYgcGFzc2VkIGBibG9jay1jb2xsYXBzZWAsIGl0IGFsc28gcmVtb3ZlcyB0aGUgbWFyZ2luIGd1dHRlciBieSBhZGRpbmcgaXQgdG8gdGhlIGVsZW1lbnQgd2lkdGguXG4vLy9cbi8vLyAgIElmIHBhc3NlZCBgdGFibGVgLCBpdCBzZXRzIHRoZSBkaXNwbGF5IHByb3BlcnR5IHRvIGB0YWJsZS1jZWxsYCBhbmQgY2FsY3VsYXRlcyB0aGUgd2lkdGggb2YgdGhlIGVsZW1lbnQgd2l0aG91dCB0YWtpbmcgZ3V0dGVycyBpbnRvIGNvbnNpZGVyYXRpb24uIFRoZSByZXN1bHQgZG9lcyBub3QgYWxpZ24gd2l0aCB0aGUgYmxvY2stYmFzZWQgZ3JpZC5cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBVc2FnZVxuLy8vICAgLmVsZW1lbnQge1xuLy8vICAgICBAaW5jbHVkZSBzcGFuLWNvbHVtbnMoNik7XG4vLy9cbi8vLyAgICAubmVzdGVkLWVsZW1lbnQge1xuLy8vICAgICAgQGluY2x1ZGUgc3Bhbi1jb2x1bW5zKDIgb2YgNik7XG4vLy8gICAgfVxuLy8vICB9XG4vLy9cbi8vLyBAZXhhbXBsZSBjc3MgLSBDU1MgT3V0cHV0XG4vLy8gICAuZWxlbWVudCB7XG4vLy8gICAgIGRpc3BsYXk6IGJsb2NrO1xuLy8vICAgICBmbG9hdDogbGVmdDtcbi8vLyAgICAgbWFyZ2luLXJpZ2h0OiAyLjM1NzY1JTtcbi8vLyAgICAgd2lkdGg6IDQ4LjgyMTE3JTtcbi8vLyAgIH1cbi8vL1xuLy8vICAgLmVsZW1lbnQ6bGFzdC1jaGlsZCB7XG4vLy8gICAgIG1hcmdpbi1yaWdodDogMDtcbi8vLyAgIH1cbi8vL1xuLy8vICAgLmVsZW1lbnQgLm5lc3RlZC1lbGVtZW50IHtcbi8vLyAgICAgZGlzcGxheTogYmxvY2s7XG4vLy8gICAgIGZsb2F0OiBsZWZ0O1xuLy8vICAgICBtYXJnaW4tcmlnaHQ6IDQuODI5MTYlO1xuLy8vICAgICB3aWR0aDogMzAuMTEzODklO1xuLy8vICAgfVxuLy8vXG4vLy8gICAuZWxlbWVudCAubmVzdGVkLWVsZW1lbnQ6bGFzdC1jaGlsZCB7XG4vLy8gICAgIG1hcmdpbi1yaWdodDogMDtcbi8vLyAgIH1cblxuQG1peGluIHNwYW4tY29sdW1ucygkc3BhbjogJGNvbHVtbnMgb2YgJGNvbnRhaW5lci1jb2x1bW5zLCAkZGlzcGxheTogYmxvY2spIHtcbiAgJGNvbHVtbnM6IG50aCgkc3BhbiwgMSk7XG4gICRjb250YWluZXItY29sdW1uczogY29udGFpbmVyLXNwYW4oJHNwYW4pO1xuXG4gICRwYXJlbnQtY29sdW1uczogZ2V0LXBhcmVudC1jb2x1bW5zKCRjb250YWluZXItY29sdW1ucykgIWdsb2JhbDtcblxuICAkZGlyZWN0aW9uOiBnZXQtZGlyZWN0aW9uKCRsYXlvdXQtZGlyZWN0aW9uLCAkZGVmYXVsdC1sYXlvdXQtZGlyZWN0aW9uKTtcbiAgJG9wcG9zaXRlLWRpcmVjdGlvbjogZ2V0LW9wcG9zaXRlLWRpcmVjdGlvbigkZGlyZWN0aW9uKTtcblxuICAkZGlzcGxheS10YWJsZTogaXMtZGlzcGxheS10YWJsZSgkY29udGFpbmVyLWRpc3BsYXktdGFibGUsICRkaXNwbGF5KTtcblxuICBAaWYgJGRpc3BsYXktdGFibGUgIHtcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgIHdpZHRoOiBwZXJjZW50YWdlKCRjb2x1bW5zIC8gJGNvbnRhaW5lci1jb2x1bW5zKTtcbiAgfSBAZWxzZSB7XG4gICAgZmxvYXQ6ICN7JG9wcG9zaXRlLWRpcmVjdGlvbn07XG5cbiAgICBAaWYgJGRpc3BsYXkgIT0gbm8tZGlzcGxheSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG5cbiAgICBAaWYgJGRpc3BsYXkgPT0gY29sbGFwc2Uge1xuICAgICAgQGluY2x1ZGUgLW5lYXQtd2FybihcIlRoZSAnY29sbGFwc2UnIGFyZ3VtZW50IHdpbGwgYmUgZGVwcmVjYXRlZC4gVXNlICdibG9jay1jb2xsYXBzZScgaW5zdGVhZC5cIik7XG4gICAgfVxuXG4gICAgQGlmICRkaXNwbGF5ID09IGNvbGxhcHNlIG9yICRkaXNwbGF5ID09IGJsb2NrLWNvbGxhcHNlIHtcbiAgICAgIHdpZHRoOiBmbGV4LWdyaWQoJGNvbHVtbnMsICRjb250YWluZXItY29sdW1ucykgKyBmbGV4LWd1dHRlcigkY29udGFpbmVyLWNvbHVtbnMpO1xuXG4gICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICB3aWR0aDogZmxleC1ncmlkKCRjb2x1bW5zLCAkY29udGFpbmVyLWNvbHVtbnMpO1xuICAgICAgfVxuXG4gICAgfSBAZWxzZSB7XG4gICAgICBtYXJnaW4tI3skZGlyZWN0aW9ufTogZmxleC1ndXR0ZXIoJGNvbnRhaW5lci1jb2x1bW5zKTtcbiAgICAgIHdpZHRoOiBmbGV4LWdyaWQoJGNvbHVtbnMsICRjb250YWluZXItY29sdW1ucyk7XG5cbiAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi0jeyRkaXJlY3Rpb259OiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiJHBhcmVudC1jb2x1bW5zOiAkZ3JpZC1jb2x1bW5zICFkZWZhdWx0O1xuJGZnLWNvbHVtbjogJGNvbHVtbjtcbiRmZy1ndXR0ZXI6ICRndXR0ZXI7XG4kZmctbWF4LWNvbHVtbnM6ICRncmlkLWNvbHVtbnM7XG4kY29udGFpbmVyLWRpc3BsYXktdGFibGU6IGZhbHNlICFkZWZhdWx0O1xuJGxheW91dC1kaXJlY3Rpb246IExUUiAhZGVmYXVsdDtcblxuQGZ1bmN0aW9uIGZsZXgtZ3JpZCgkY29sdW1ucywgJGNvbnRhaW5lci1jb2x1bW5zOiAkZmctbWF4LWNvbHVtbnMpIHtcbiAgJHdpZHRoOiAkY29sdW1ucyAqICRmZy1jb2x1bW4gKyAoJGNvbHVtbnMgLSAxKSAqICRmZy1ndXR0ZXI7XG4gICRjb250YWluZXItd2lkdGg6ICRjb250YWluZXItY29sdW1ucyAqICRmZy1jb2x1bW4gKyAoJGNvbnRhaW5lci1jb2x1bW5zIC0gMSkgKiAkZmctZ3V0dGVyO1xuICBAcmV0dXJuIHBlcmNlbnRhZ2UoJHdpZHRoIC8gJGNvbnRhaW5lci13aWR0aCk7XG59XG5cbkBmdW5jdGlvbiBmbGV4LWd1dHRlcigkY29udGFpbmVyLWNvbHVtbnM6ICRmZy1tYXgtY29sdW1ucywgJGd1dHRlcjogJGZnLWd1dHRlcikge1xuICAkY29udGFpbmVyLXdpZHRoOiAkY29udGFpbmVyLWNvbHVtbnMgKiAkZmctY29sdW1uICsgKCRjb250YWluZXItY29sdW1ucyAtIDEpICogJGZnLWd1dHRlcjtcbiAgQHJldHVybiBwZXJjZW50YWdlKCRndXR0ZXIgLyAkY29udGFpbmVyLXdpZHRoKTtcbn1cblxuQGZ1bmN0aW9uIGdyaWQtd2lkdGgoJG4pIHtcbiAgQHJldHVybiAkbiAqICRndy1jb2x1bW4gKyAoJG4gLSAxKSAqICRndy1ndXR0ZXI7XG59XG5cbkBmdW5jdGlvbiBnZXQtcGFyZW50LWNvbHVtbnMoJGNvbHVtbnMpIHtcbiAgQGlmICRjb2x1bW5zICE9ICRncmlkLWNvbHVtbnMge1xuICAgICRwYXJlbnQtY29sdW1uczogJGNvbHVtbnMgIWdsb2JhbDtcbiAgfSBAZWxzZSB7XG4gICAgJHBhcmVudC1jb2x1bW5zOiAkZ3JpZC1jb2x1bW5zICFnbG9iYWw7XG4gIH1cblxuICBAcmV0dXJuICRwYXJlbnQtY29sdW1ucztcbn1cblxuQGZ1bmN0aW9uIGlzLWRpc3BsYXktdGFibGUoJGNvbnRhaW5lci1pcy1kaXNwbGF5LXRhYmxlLCAkZGlzcGxheSkge1xuICBAcmV0dXJuICRjb250YWluZXItaXMtZGlzcGxheS10YWJsZSA9PSB0cnVlIG9yICRkaXNwbGF5ID09IHRhYmxlO1xufVxuIiwiLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gQmFzZSBMYXlvdXRcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gV3JhcCBjbGFzcy5cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi53cmFwIHtcblx0QGluY2x1ZGUgb3V0ZXItY29udGFpbmVyO1xuXG5cdHBhZGRpbmc6IDAgMiAqICRndXR0ZXI7XG5cblx0QGluY2x1ZGUgbWVkaWEoJHBob25lLWxhbmRzY2FwZSkge1xuXHRcdHBhZGRpbmc6IDAgcmVtKDQ1KTtcblx0fVxuXG5cdEBpbmNsdWRlIG1lZGlhKCRkZXNrdG9wKSB7XG5cdFx0bWF4LXdpZHRoOiByZW0oMTI2MCk7XG5cdFx0cGFkZGluZzogMDtcblx0fVxufSAvLyAud3JhcFxuXG5cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIFNpdGUgSGVhZGVyLlxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLnNpdGUtaGVhZGVyIHtcblx0cGFkZGluZzogMDtcblxuXHQud3JhcCB7XG5cdFx0bWF4LXdpZHRoOiBub25lO1xuXG5cdFx0QGluY2x1ZGUgbWVkaWEoJGxhcmdlLWRlc2t0b3ApIHtcblx0XHRcdG1heC13aWR0aDogcmVtKDEyODApO1xuXHRcdH1cblx0fSAvLyAud3JhcFxufSAvLyAuc2l0ZS1oZWFkZXJcblxuXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBTaXRlIGNvbnRlbnQuXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4uc2l0ZS1jb250ZW50IHtcblx0bWFyZ2luOiByZW0oMjApIGF1dG87XG5cblx0QGluY2x1ZGUgbWVkaWEoJGRlc2t0b3ApIHtcblx0XHRtYXJnaW46IHJlbSgyOSkgYXV0byByZW0oNTMpO1xuXHR9XG59IC8vIC5zaXRlLWNvbnRlbnRcblxuXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBQcmltYXJ5IGNvbnRlbnQgYXJlYS5cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi5wcmltYXJ5IHtcblx0QGluY2x1ZGUgZmlsbC1wYXJlbnQ7XG5cblx0LnNpdGUtbWFpbiB7XG5cdFx0Y2xlYXI6IGJvdGg7XG5cblx0XHRAaW5jbHVkZSBtZWRpYSgkdGFibGV0LWxhbmRzY2FwZSkge1xuXHRcdFx0bWFyZ2luLXJpZ2h0OiByZW0oNDAwKTsgLy8gTWF0Y2hlcyBzaWRlYmFyIC1tYXJnaW4uXG5cdFx0XHRwYWRkaW5nLXJpZ2h0OiByZW0oMjgpO1xuXHRcdH1cblx0fVxuXG5cdEBpbmNsdWRlIG1lZGlhKCR0YWJsZXQtbGFuZHNjYXBlKSB7XG5cdFx0ZmxvYXQ6IGxlZnQ7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdH1cbn0gLy8gLnByaW1hcnlcblxuXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBTZWNvbmRhcnkgY29udGVudCBhcmVhIChzaWRlYmFyKVxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLnNlY29uZGFyeSB7XG5cdEBpbmNsdWRlIGZpbGwtcGFyZW50O1xuXG5cdGJhY2tncm91bmQ6ICRjb2xvci1zaWRlYmFyO1xuXHRtYXJnaW4tYm90dG9tOiByZW0oNDgpO1xuXHRtYXJnaW4tdG9wOiByZW0oMzApO1xuXHRwYWRkaW5nOiByZW0oMTApO1xuXG5cdEBpbmNsdWRlIG1lZGlhKCRwaG9uZS1sYW5kc2NhcGUpIHtcblx0XHRwYWRkaW5nOiByZW0oNDcpIHJlbSgxMCkgcmVtKDIxKSByZW0oMTApO1xuXHR9XG5cblx0Ly8gTWFrZSB0aGUgc2lkZWJhciBmaXhlZCB3aWR0aCBmb3Igb3VyIEFkcy5cblx0QGluY2x1ZGUgbWVkaWEoJHRhYmxldC1sYW5kc2NhcGUpIHtcblx0XHRmbG9hdDogcmlnaHQ7XG5cdFx0bWFyZ2luLWxlZnQ6IHJlbSgtNDAwKTsgLy8gbWF0Y2hlcyBwcmltYXJ5IGNvbnRlbnQgbWFyZ2luLXJpZ2h0LlxuXHRcdG1hcmdpbi10b3A6IDA7XG5cdFx0bWF4LXdpZHRoOiByZW0oNDAwKTtcblx0XHRtaW4td2lkdGg6IHJlbSg0MDApO1xuXHRcdHBhZGRpbmc6IDA7XG5cdFx0d2lkdGg6IHJlbSg0MDApO1xuXHR9XG59IC8vIC5zZWNvbmRhcnlcblxuXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBGdWxsIHdpZHRoXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4uZnVsbC13aWR0aCB7XG5cdEBpbmNsdWRlIHBvc2l0aW9uKHJlbGF0aXZlLCBudWxsIDUwJSk7XG5cblx0bWFyZ2luLWxlZnQ6IC01MHZ3O1xuXHRtYXJnaW4tcmlnaHQ6IC01MHZ3O1xuXHR3aWR0aDogMTAwdnc7XG59XG5cblxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gTWFpbiB3cmFwXG4vLyAtIFRoZSAjbWFpbiBpcyB1c2VkIGZvciB0aGUgc2tpcCBsaW5rLCBidXQgdGhlIGZpeGVkIGhlYWRlciBvYnNjdXJlcyBwYXJ0IG9mIGl0IHdoZW4geW91IHVzZSBhIGxpbmsgbGlrZSB0aGF0XG4vLyBhbmQgc28gdGhlIGVudGlyZSBlbGVtZW50IG5lZWRzIGFuIGFkanVzdG1lbnQuXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4jbWFpbixcbi5zaXRlLW1haW4ge1xuXG5cdEBpbmNsdWRlIG1lZGlhKCR0YWJsZXQtbGFuZHNjYXBlKSB7XG5cdFx0bWFyZ2luLXRvcDogcmVtKC0yNTApO1xuXHRcdHBhZGRpbmctdG9wOiByZW0oMjUwKTtcblx0fVxufSAvLyAjbWFpbiwgLnNpdGUtbWFpblxuIiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xuXG4vLy8gTWFrZXMgYW4gZWxlbWVudCBhIG91dGVyIGNvbnRhaW5lciBieSBjZW50ZXJpbmcgaXQgaW4gdGhlIHZpZXdwb3J0LCBjbGVhcmluZyBpdHMgZmxvYXRzLCBhbmQgc2V0dGluZyBpdHMgYG1heC13aWR0aGAuXG4vLy8gQWx0aG91Z2ggb3B0aW9uYWwsIHVzaW5nIGBvdXRlci1jb250YWluZXJgIGlzIHJlY29tbWVuZGVkLiBUaGUgbWl4aW4gY2FuIGJlIGNhbGxlZCBvbiBtb3JlIHRoYW4gb25lIGVsZW1lbnQgcGVyIHBhZ2UsIGFzIGxvbmcgYXMgdGhleSBhcmUgbm90IG5lc3RlZC5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyIFt1bml0XX0gJGxvY2FsLW1heC13aWR0aCBbJG1heC13aWR0aF1cbi8vLyAgIE1heCB3aWR0aCB0byBiZSBhcHBsaWVkIHRvIHRoZSBlbGVtZW50LiBDYW4gYmUgYSBwZXJjZW50YWdlIG9yIGEgbWVhc3VyZS5cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBVc2FnZVxuLy8vICAgLmVsZW1lbnQge1xuLy8vICAgICBAaW5jbHVkZSBvdXRlci1jb250YWluZXIoMTAwJSk7XG4vLy8gICB9XG4vLy9cbi8vLyBAZXhhbXBsZSBjc3MgLSBDU1MgT3V0cHV0XG4vLy8gICAuZWxlbWVudCB7XG4vLy8gICAgIG1heC13aWR0aDogMTAwJTtcbi8vLyAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4vLy8gICAgIG1hcmdpbi1yaWdodDogYXV0bztcbi8vLyAgIH1cbi8vL1xuLy8vICAgLmVsZW1lbnQ6OmFmdGVyIHtcbi8vLyAgICAgY2xlYXI6IGJvdGg7XG4vLy8gICAgIGNvbnRlbnQ6IFwiXCI7XG4vLy8gICAgIGRpc3BsYXk6IHRhYmxlO1xuLy8vICAgfVxuXG5AbWl4aW4gb3V0ZXItY29udGFpbmVyKCRsb2NhbC1tYXgtd2lkdGg6ICRtYXgtd2lkdGgpIHtcbiAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gIG1heC13aWR0aDogJGxvY2FsLW1heC13aWR0aDtcbiAgbWFyZ2luOiB7XG4gICAgbGVmdDogYXV0bztcbiAgICByaWdodDogYXV0bztcbiAgfVxufVxuIiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xuXG4vLy8gRm9yY2VzIHRoZSBlbGVtZW50IHRvIGZpbGwgaXRzIHBhcmVudCBjb250YWluZXIuXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gVXNhZ2Vcbi8vLyAgIC5lbGVtZW50IHtcbi8vLyAgICAgQGluY2x1ZGUgZmlsbC1wYXJlbnQ7XG4vLy8gICB9XG4vLy9cbi8vLyBAZXhhbXBsZSBjc3MgLSBDU1MgT3V0cHV0XG4vLy8gICAuZWxlbWVudCB7XG4vLy8gICAgIHdpZHRoOiAxMDAlO1xuLy8vICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuLy8vICAgfVxuXG5AbWl4aW4gZmlsbC1wYXJlbnQoKSB7XG4gIHdpZHRoOiAxMDAlO1xuXG4gIEBpZiAkYm9yZGVyLWJveC1zaXppbmcgPT0gZmFsc2Uge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIH1cbn1cbiIsIi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIENvbW1lbnRzXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIENvbW1lbnQgc2VjdGlvbiB0aXRsZVxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLmNvbW1lbnQtcmVwbHktdGl0bGUge1xuXHRtYXJnaW4tdG9wOiAwO1xufSAvLyAuY29tbWVudC1yZXBseS10aXRsZVxuXG5cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIENvbW1lbnQgdGl0bGVcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi5jb21tZW50cy10aXRsZSB7XG5cdGZvbnQtc2l6ZTogcmVtKDI0KTtcbn0gLy8gLmNvbW1lbnRzLXRpdGxlXG5cblxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gQ29tbWVudCBMaXN0XG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4uY29tbWVudC1saXN0IHtcblx0bGlzdC1zdHlsZTogbm9uZTtcblx0bWFyZ2luOiAwO1xufSAvLyAuY29tbWVudC1saXN0XG5cblxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gQ29tbWVudCBNZXRhXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4uY29tbWVudC1tZXRhIHtcblx0bWFyZ2luOiAwIDAgcmVtKDE0KSAwO1xufSAvLyAuY29tbWVudC1tZXRhXG5cblxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gQ29tbWVudCBBdmF0YXJcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi5hdmF0YXIge1xuXHRmbG9hdDogbGVmdDtcblx0bWFyZ2luOiAwIHJlbSgxMCkgMCAwO1xufSAvLyAuYXZhdGFyXG5cblxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gQnkgcG9zdCBhdXRob3Jcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi5ieXBvc3RhdXRob3Ige1xuXHRkaXNwbGF5OiBibG9jaztcbn0gLy8gLmJ5cG9zdGF1dGhvclxuXG5cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIENvbW1lbnQgZm9ybVxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLmNvbW1lbnQtZm9ybSB7XG5cdHdpZHRoOiAxMDAlO1xuXG5cdGlucHV0Om5vdCguc3VibWl0KSB7XG5cdFx0d2lkdGg6IDEwMCU7XG5cblx0XHRAaW5jbHVkZSBtZWRpYSgkcGhvbmUtbGFuZHNjYXBlKSB7XG5cdFx0XHRtYXgtd2lkdGg6IHJlbSgyNTApO1xuXHRcdH1cblx0fSAvLyBpbnB1dDpub3QoLnN1Ym1pdClcbn0gLy8gLmNvbW1lbnQtZm9ybVxuXG5cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIERlZmF1bHQgbGFiZWxzIGZvciBjb21tZW50IGZvcm1cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi5jb21tZW50LWZvcm0tYXV0aG9yLFxuLmNvbW1lbnQtZm9ybS1lbWFpbCxcbi5jb21tZW50LWZvcm0tdXJsIHtcblx0bGFiZWwge1xuXHRcdEBpbmNsdWRlIHNwYW4tY29sdW1ucygxMik7XG5cblx0XHRAaW5jbHVkZSBtZWRpYSgkcGhvbmUtbGFuZHNjYXBlKSB7XG5cdFx0XHR3aWR0aDogcmVtKDc1KTtcblx0XHR9XG5cdH0gLy8gbGFiZWxcbn0gLy8gLmNvbW1lbnQtZm9ybS1hdXRob3IsIC5jb21tZW50LWZvcm0tZW1haWwsIC5jb21tZW50LWZvcm0tdXJsXG5cblxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gTmVzdGVkIGNvbW1lbnRzIHNwYWNpbmcgZnJvbSBtb2JpbGUgdG8gZGVza3RvcFxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLmNvbW1lbnQtbGlzdCAuY2hpbGRyZW4ge1xuXHRtYXJnaW4tbGVmdDogMDtcblx0cGFkZGluZy1sZWZ0OiByZW0oMjApO1xuXG5cdEBpbmNsdWRlIG1lZGlhKCRwaG9uZS1sYW5kc2NhcGUpIHtcblx0XHRwYWRkaW5nLWxlZnQ6IHJlbSgzNSk7XG5cdH1cblxuXHRAaW5jbHVkZSBtZWRpYSgkdGFibGV0LXBvcnRyYWl0KSB7XG5cdFx0cGFkZGluZy1sZWZ0OiByZW0oNjApO1xuXHR9XG59IC8vIC5jb21tZW50LWxpc3QgLmNoaWxkcmVuXG5cblxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gQ29tbWVudHNcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi5zaW5nbGUge1xuXHQuY29tbWVudC13cmFwIHtcblx0XHRoZWlnaHQ6IDA7XG5cdFx0bWFyZ2luLWJvdHRvbTogcmVtKDM0KTtcblx0XHRvcGFjaXR5OiAwO1xuXHRcdG92ZXJmbG93OiBoaWRkZW47XG5cdFx0cGFkZGluZzogJGd1dHRlciAwO1xuXHRcdHRyYW5zaXRpb246IGhlaWdodCAwLjI1cyBlYXNlLW91dCwgb3BhY2l0eSAwLjI1cyBlYXNlLW91dDtcblxuXHRcdEBpbmNsdWRlIG1lZGlhKCR0YWJsZXQtcG9ydHJhaXQpIHtcblx0XHRcdG1hcmdpbi1ib3R0b206IHJlbSgyNyk7XG5cdFx0fVxuXG5cdFx0Ji5vcGVuIHtcblx0XHRcdG9wYWNpdHk6IDE7XG5cdFx0fSAvLyAmLm9wZW5cblx0fSAvLyAuY29tbWVudC13cmFwXG5cblx0LmNvbW1lbnQtdG9nZ2xlIHtcblx0XHRmb250LXdlaWdodDogNzAwO1xuXHRcdGxldHRlci1zcGFjaW5nOiByZW0oMS4zKTtcblxuXHRcdEBpbmNsdWRlIG1lZGlhKG1heC13aWR0aCAkdGFibGV0LXBvcnRyYWl0KSB7XG5cdFx0XHRmb250LXNpemU6IHJlbSgyMyk7XG5cdFx0XHRwYWRkaW5nOiByZW0oMTYpIHJlbSgyOCk7XG5cdFx0XHR3aWR0aDogMTAwJTtcblx0XHR9XG5cdH0gLy8gLmNvbW1lbnQtdG9nZ2xlXG5cblx0LmNvbW1lbnRzLWFyZWEge1xuXHRcdGxhYmVsIHtcblx0XHRcdGNvbG9yOiAkY29sb3Itc2hhcms7XG5cdFx0fSAvLyBsYWJlbFxuXHR9IC8vIC5jb21tZW50cy1hcmVhXG59IC8vIC5zaW5nbGVcbiIsIi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIFNpdGUgQ29udGVudFxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBQb3N0cyBhbmQgUGFnZXNcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gU3RpY3kgYW5kIENvbW1lbnRzIExpbmtcbi5zdGlja3ksXG4uY29tbWVudHMtbGluayB7XG5cdGRpc3BsYXk6IGJsb2NrO1xufSAvLyAuc3RpY2t5LCAuY29tbWVudHMtbGlua1xuXG4vLyBoZW50cnlcbi5oZW50cnkge1xuXHRtYXJnaW46IDAgMCByZW0oMjQpIDA7XG59IC8vIC5oZW50cnlcblxuLy8gQnlsaW5lIGFuZCB1cGRhdGUgcG9zdCBkYXRlXG4uYnlsaW5lLFxuLnVwZGF0ZWQ6bm90KC5wdWJsaXNoZWQpIHtcblx0ZGlzcGxheTogbm9uZTtcbn0gLy8gLmJ5bGluZSwgLnVwZGF0ZWQ6bm90KC5wdWJsaXNoZWQpXG5cbi8vIEJ5bGluZSBmb3Igc2luZ2xlIGFuZCBncm91cFxuLnNpbmdsZSAuYnlsaW5lLFxuLmdyb3VwLWJsb2cgLmJ5bGluZSB7XG5cdGRpc3BsYXk6IGlubGluZTtcbn0gLy8gLnNpbmdsZSAuYnlsaW5lLCAuZ3JvdXAtYmxvZyAuYnlsaW5lXG5cbi8vIFBhZ2UgY29udGVudCwgZW50cnkgY29udGVudCBhbmQgZW50cnkgc3VtbWFyeVxuLnBhZ2UtY29udGVudCxcbi5lbnRyeS1jb250ZW50LFxuLmVudHJ5LXN1bW1hcnkge1xuXHRtYXJnaW46IHJlbSgxOSkgMCAwO1xuXG5cdEBpbmNsdWRlIG1lZGlhKCR0YWJsZXQtbGFuZHNjYXBlKSB7XG5cdFx0bWFyZ2luOiByZW0oMjEpIDAgMDtcblx0fVxufSAvLyAucGFnZS1jb250ZW50LCAuZW50cnktY29udGVudCwgLmVudHJ5LXN1bW1hcnlcblxuLy8gUGFnZSBsaW5rc1xuLnBhZ2UtbGlua3Mge1xuXHRjbGVhcjogYm90aDtcblx0bWFyZ2luOiAwIDAgcmVtKDI0KSAwO1xufSAvLyAucGFnZS1saW5rc1xuXG4vLyBFZGl0IGxpbmtcbi5lZGl0LWxpbmsge1xuXHRtYXJnaW46IDAgcmVtKDI0KTtcbn0gLy8gLmVkaXQtbGlua1xuXG4vLyBBc2lkZXNcbi5ibG9nIC5mb3JtYXQtYXNpZGUgLmVudHJ5LXRpdGxlLFxuLmFyY2hpdmUgLmZvcm1hdC1hc2lkZSAuZW50cnktdGl0bGUge1xuXHRkaXNwbGF5OiBub25lO1xufSAvLyAuYmxvZyAuZm9ybWF0LWFzaWRlIC5lbnRyeS10aXRsZSwgLmFyY2hpdmUgLmZvcm1hdC1hc2lkZSAuZW50cnktdGl0bGVcbiIsIi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIEZvb3RlclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLnNpdGUtZm9vdGVyIHtcblx0YmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWR1c2s7XG5cdGNvbG9yOiAkY29sb3Itd2hpdGU7XG59IC8vIC5zaXRlLWZvb3RlclxuXG5cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIFRvcCBmb290ZXIgc2VjdGlvblxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLmZvb3Rlci10b3Age1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItZHVzaztcblxuXHRAaW5jbHVkZSBtZWRpYSgkdGFibGV0LWxhbmRzY2FwZSkge1xuXHRcdHBhZGRpbmc6IDAgMiAqICRndXR0ZXI7XG5cdH1cbn0gLy8gLmZvb3Rlci10b3BcblxuXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBUb3AgZm9vdGVyIHNlY3Rpb24gd2lkZ2V0c1xuLy8gLSBXaWRnZXQgbWFyZ2lucyBhbmQgdGV4dCBjb2xvdXIuXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4uZm9vdGVyLXRvcCB7XG5cdC53aWRnZXQge1xuXHRcdG1hcmdpbi1ib3R0b206IDA7XG5cblx0XHQmICsgLndpZGdldCB7XG5cdFx0XHRtYXJnaW4tdG9wOiByZW0oMjQpO1xuXHRcdH0gLy8gJiArIC53aWRnZXRcblx0fSAvLyAud2lkZ2V0XG59IC8vIC5mb290ZXItdG9wXG5cblxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gVG9wIGZvb3RlciBzZWN0aW9uIHdpZGdldHNcbi8vIC0gTWVudSB3aWRnZXRcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi5mb290ZXItdG9wIHtcblx0LmZvb3Rlci1uYXZpZ2F0aW9uIHtcblx0XHRkaXNwbGF5OiBub25lO1xuXG5cdFx0QGluY2x1ZGUgbWVkaWEoJHRhYmxldC1sYW5kc2NhcGUpIHtcblx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdH1cblx0fSAvLyAuZm9vdGVyLW5hdmlnYXRpb25cblxuXHQubWVudS1wcmltYXJ5LW1lbnUtY29udGFpbmVyIHtcblxuXHRcdGEge1xuXHRcdFx0Y29sb3I6ICRjb2xvci13aGl0ZTtcblx0XHRcdGZvbnQtZmFtaWx5OiAkZm9udC1zYW5zO1xuXHRcdFx0Zm9udC1zaXplOiByZW0oMTgpO1xuXHRcdFx0Zm9udC1zdHlsZTogbm9ybWFsO1xuXHRcdFx0Zm9udC13ZWlnaHQ6IDYwMDtcblx0XHRcdHBhZGRpbmc6IHJlbSgxOCkgcmVtKDEwKTtcblx0XHRcdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cblx0XHRcdEBpbmNsdWRlIG1lZGlhKCRkZXNrdG9wKSB7XG5cdFx0XHRcdHBhZGRpbmc6IHJlbSgyMSkgcmVtKDE1KSByZW0oMjApO1xuXHRcdFx0fVxuXHRcdH0gLy8gYVxuXG5cdFx0bGkge1xuXHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdFx0ZmxvYXQ6IG5vbmU7XG5cblx0XHRcdEBpbmNsdWRlIG1lZGlhKCR0YWJsZXQtcG9ydHJhaXQpIHtcblx0XHRcdFx0ZmxvYXQ6IGxlZnQ7XG5cdFx0XHR9XG5cdFx0fSAvLyBsaVxuXG5cdFx0Ly8gTGlua3Mgd2l0aCBzdWJtZW51IGl0ZW1zXG5cdFx0JiAubWVudS1pdGVtLWhhcy1jaGlsZHJlbiB7XG5cdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cblx0XHRcdGEge1xuXHRcdFx0XHRwYWRkaW5nLXJpZ2h0OiByZW0oMjgpO1xuXHRcdFx0fSAvLyBhXG5cblx0XHRcdCYgPiBhIHtcblx0XHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXG5cdFx0XHRcdCY6OmFmdGVyIHtcblx0XHRcdFx0XHR0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xuXHRcdFx0XHR9IC8vICY6OmFmdGVyXG5cdFx0XHR9IC8vICYgPiBhXG5cblx0XHRcdC8vIFN1Yi1tZW51XG5cdFx0XHR1bCB7XG5cdFx0XHRcdEBpbmNsdWRlIHBvc2l0aW9uKGFic29sdXRlLCBudWxsIG51bGwgMTAwJSBudWxsKTtcblxuXHRcdFx0XHRmbG9hdDogbGVmdDtcblxuXHRcdFx0XHQvLyBTdWItc3ViIG1lbnVcblx0XHRcdFx0dWwge1xuXHRcdFx0XHRcdGJvdHRvbTogMDtcblx0XHRcdFx0XHRyaWdodDogLTk5OWVtO1xuXHRcdFx0XHRcdHRvcDogYXV0bztcblx0XHRcdFx0fSAvLyB1bFxuXHRcdFx0fSAvLyB1bFxuXHRcdH0gLy8gJi5tZW51LWl0ZW0taGFzLWNoaWxkcmVuXG5cdH0gLy8gLm1lbnUtcHJpbWFyeS1tZW51LWNvbnRhaW5lclxufSAvLyAuZm9vdGVyLXRvcFxuXG5cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIEJvdHRvbSBmb290ZXIgc2VjdGlvblxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLmZvb3Rlci1ib3R0b20ge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3Itc2xhdGU7XG5cdHBhZGRpbmctdG9wOiByZW0oNDIpO1xuXG5cdEBpbmNsdWRlIG1lZGlhKCR0YWJsZXQtbGFuZHNjYXBlKSB7XG5cdFx0cGFkZGluZzogcmVtKDI4KSAyICogJGd1dHRlcjtcblx0fVxuXG5cdC53cmFwIHtcblx0XHRAaW5jbHVkZSBtZWRpYSgkdGFibGV0LWxhbmRzY2FwZSkge1xuXHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdGZsZXgtd3JhcDogd3JhcDtcblx0XHR9XG5cdH0gLy8gLndyYXBcblxuXHRhIHtcblx0XHRjb2xvcjogJGNvbG9yLXdoaXRlO1xuXHR9IC8vIGFcbn0gLy8gLmZvb3Rlci1ib3R0b21cblxuXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBCb3R0b20gZm9vdGVyIHdpZGdldHNcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi5mb290ZXItYm90dG9tIHtcblx0LndpZGdldCB7XG5cdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdHBhZGRpbmc6ICRndXR0ZXIgMCAwO1xuXHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0XHR3aWR0aDogMTAwJTtcblxuXHRcdEBpbmNsdWRlIG1lZGlhKCRicmVha3BvaW50LTY3MCkge1xuXHRcdFx0dGV4dC1hbGlnbjogbGVmdDtcblx0XHRcdHdpZHRoOiAzMyU7XG5cdFx0fVxuXG5cdFx0QGluY2x1ZGUgbWVkaWEoJHRhYmxldC1sYW5kc2NhcGUpIHtcblx0XHRcdEBpbmNsdWRlIHNwYW4tY29sdW1ucygyLjI1KTtcblxuXHRcdFx0bWFyZ2luLXRvcDogcmVtKDIyKTtcblx0XHRcdHBhZGRpbmc6IDAgJGd1dHRlciAwIDA7XG5cdFx0fVxuXG5cdFx0JiArIC53aWRnZXQge1xuXHRcdFx0QGluY2x1ZGUgbWVkaWEoJHRhYmxldC1sYW5kc2NhcGUpIHtcblx0XHRcdFx0cGFkZGluZzogMCAkZ3V0dGVyO1xuXHRcdFx0fVxuXHRcdH1cblx0fSAvLyAud2lkZ2V0XG5cblx0Ly8gQ29udGFpbnMgc21hbGwgZm9vdGVyIGFkLlxuXHQuYWQtd2lkZ2V0IHtcblx0XHRAaW5jbHVkZSBtZWRpYSgkdGFibGV0LWxhbmRzY2FwZSkge1xuXHRcdFx0cGFkZGluZy1sZWZ0OiByZW0oMTEpO1xuXHRcdH1cblx0fSAvLyAuYWQtd2lkZ2V0XG59IC8vIC5mb290ZXItYm90dG9tXG5cblxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gQ29weXJpZ2h0IHRleHRcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi5mb290ZXItYm90dG9tIHtcblx0LnNpdGUtaW5mbyB7XG5cdFx0bWFyZ2luLXRvcDogcmVtKDUwKTtcblxuXHRcdEBpbmNsdWRlIG1lZGlhKCR0YWJsZXQtbGFuZHNjYXBlKSB7XG5cdFx0XHRAaW5jbHVkZSBzcGFuLWNvbHVtbnMoNik7XG5cdFx0XHRAaW5jbHVkZSBwYWRkaW5nKHJlbSgxOCkgcmVtKDMpIG51bGwgcmVtKDEzKSk7XG5cblx0XHRcdG1hcmdpbi10b3A6IDA7XG5cdFx0fVxuXG5cdFx0cCB7XG5cdFx0XHRmb250LXNpemU6IHJlbSgyMCk7XG5cdFx0XHRsaW5lLWhlaWdodDogMS41O1xuXHRcdH0gLy8gcFxuXHR9IC8vIC5zaXRlLWluZm9cbn0gLy8gLmZvb3Rlci1ib3R0b21cblxuXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBPdXIgU2l0ZXMgc2VjdGlvbiAoZGVza3RvcClcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi5mb290ZXItYm90dG9tIHtcblx0LnNpdGVsaXN0IHtcblx0XHRkaXNwbGF5OiBub25lO1xuXHRcdG1hcmdpbi10b3A6IHJlbSgxMyk7XG5cblx0XHRAaW5jbHVkZSBtZWRpYSgkdGFibGV0LWxhbmRzY2FwZSkge1xuXHRcdFx0QGluY2x1ZGUgc2hpZnQoMC43NSk7XG5cdFx0XHRAaW5jbHVkZSBzcGFuLWNvbHVtbnMoMyk7XG5cblx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdH1cblxuXHRcdGgzIHtcblx0XHRcdGZvbnQtc2l6ZTogcmVtKDE4KTtcblx0XHRcdGxldHRlci1zcGFjaW5nOiByZW0oMS41KTtcblx0XHRcdG1hcmdpbi1ib3R0b206IHJlbSg5KTtcblx0XHRcdG1hcmdpbi10b3A6IDA7XG5cdFx0XHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXHRcdH0gLy8gaDNcblxuXHRcdC5kcm9wZG93bi13cmFwIHtcblx0XHRcdG1hcmdpbi1ib3R0b206IHJlbSgxMCk7XG5cdFx0XHRtYXJnaW4tcmlnaHQ6IHJlbSgxMCk7XG5cblx0XHRcdEBpbmNsdWRlIG1lZGlhKCRwaG9uZS1sYW5kc2NhcGUpIHtcblx0XHRcdFx0bWFyZ2luLWJvdHRvbTogMDtcblx0XHRcdH1cblxuXHRcdFx0QGluY2x1ZGUgbWVkaWEoJHRhYmxldC1sYW5kc2NhcGUpIHtcblx0XHRcdFx0bWFyZ2luLWJvdHRvbTogcmVtKDI1KTtcblx0XHRcdH1cblxuXHRcdFx0QGluY2x1ZGUgbWVkaWEoJGJyZWFrcG9pbnQtMTA3Mikge1xuXHRcdFx0XHRtYXJnaW4tcmlnaHQ6IDA7XG5cdFx0XHR9XG5cdFx0fSAvLyAuZHJvcGRvd24td3JhcFxuXG5cdFx0Ly8gU2l0ZWxpc3QgYnV0dG9uXG5cdFx0LmRyb3Bkb3duLXRvZ2dsZSB7XG5cdFx0XHR3aWR0aDogMTAwJTtcblx0XHR9IC8vIC5kcm9wZG93bi10b2dnbGVcblxuXHRcdC5kcm9wZG93bi1saXN0IHtcblx0XHRcdGE6aG92ZXIsXG5cdFx0XHRhOmFjdGl2ZSxcblx0XHRcdGE6Zm9jdXMge1xuXHRcdFx0XHRiYWNrZ3JvdW5kOiAkY29sb3ItYnV0dGVyY3VwO1xuXHRcdFx0fSAvLyBhOmhvdmVyLCBhOmFjdGl2ZSwgYTpmb2N1c1xuXHRcdH0gLy8gLmRyb3Bkb3duLWxpc3Rcblx0fSAvLyAuc2l0ZWxpc3Rcbn0gLy8gLmZvb3Rlci1ib3R0b21cblxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gT3VyIFNpdGVzIChNb2JpbGUpXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4uZm9vdGVyLXRvcCAuc2l0ZWxpc3Qge1xuXHRtYXJnaW4tYm90dG9tOiByZW0oMTYpO1xuXHRtYXJnaW4tbGVmdDogYXV0bztcblx0bWFyZ2luLXJpZ2h0OiBhdXRvO1xuXHRtYXgtd2lkdGg6IDEwMCU7XG5cdHRleHQtYWxpZ246IGNlbnRlcjtcblx0d2lkdGg6IHJlbSgzMDApO1xuXG5cdEBpbmNsdWRlIG1lZGlhKCRicmVha3BvaW50LTY3MCkge1xuXHRcdGZsb2F0OiByaWdodDtcblx0XHR0ZXh0LWFsaWduOiBsZWZ0O1xuXHR9XG5cblx0QGluY2x1ZGUgbWVkaWEoJHRhYmxldC1sYW5kc2NhcGUpIHtcblx0XHRkaXNwbGF5OiBub25lO1xuXHR9XG5cblx0aDMge1xuXHRcdGZvbnQtc2l6ZTogcmVtKDE4KTtcblx0XHRtYXJnaW46IHJlbSg0KSAwO1xuXHRcdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cdH0gLy8gaDNcblxuXHQuZHJvcGRvd24td3JhcCxcblx0LmRyb3Bkb3duLXRvZ2dsZSB7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdH0gLy8gLmRyb3Bkb3duLXdyYXAsIC5kcm9wZG93bi10b2dnbGVcbn0gLy8gLmZvb3Rlci10b3AgLnNpdGVsaXN0XG5cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIEZvb3RlciBsb2dvc1xuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLmZvb3Rlci1ib3R0b20ge1xuXHQuZm9vdGVyLWxvZ29zIHtcblx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0dmVydGljYWwtYWxpZ246IG1pZGRsZTtcblxuXHRcdC5sb2dvLXdyYXAge1xuXHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdFx0bWFyZ2luLWxlZnQ6IHJlbSgxMCk7XG5cdFx0XHRtYXgtd2lkdGg6IHJlbSgxOTApO1xuXG5cdFx0XHRAaW5jbHVkZSBtZWRpYSgkdGFibGV0LWxhbmRzY2FwZSkge1xuXHRcdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdFx0bWFyZ2luLWJvdHRvbTogcmVtKDEwKTtcblx0XHRcdFx0bWFyZ2luLWxlZnQ6IDA7XG5cdFx0XHRcdG1heC13aWR0aDogcmVtKDExMCk7XG5cdFx0XHR9XG5cblx0XHRcdEBpbmNsdWRlIG1lZGlhKCRicmVha3BvaW50LTEwNzIpIHtcblx0XHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdFx0XHRtYXJnaW4tYm90dG9tOiAwO1xuXHRcdFx0XHRtYXJnaW4tbGVmdDogcmVtKDEwKTtcblx0XHRcdH1cblxuXHRcdFx0QGluY2x1ZGUgbWVkaWEoJGRlc2t0b3ApIHtcblx0XHRcdFx0bWFyZ2luLWxlZnQ6IHJlbSgyNSk7XG5cdFx0XHR9XG5cblx0XHRcdCY6Zmlyc3QtY2hpbGQge1xuXHRcdFx0XHRtYXJnaW4tbGVmdDogMDtcblx0XHRcdH0gLy8gJjpmaXJzdC1vZi10eXBlXG5cdFx0fSAvLyAubG9nby13cmFwXG5cdH0gLy8gLmZvb3Rlci1sb2dvc1xufSAvLyAuZm9vdGVyLWJvdHRvbVxuXG5cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIEZvb3RlciBMb2dvcyAobW9iaWxlIG9ubHkpXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4uZm9vdGVyLWJvdHRvbSAuZm9vdGVyLWxvZ29zIHtcblx0Ji5tb2JpbGUtb25seSB7XG5cdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRcdHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcblx0XHR3aWR0aDogMTAwJTtcblxuXHRcdEBpbmNsdWRlIG1lZGlhKCRicmVha3BvaW50LTY3MCkge1xuXHRcdFx0dGV4dC1hbGlnbjogbGVmdDtcblx0XHRcdHdpZHRoOiA2NiU7XG5cdFx0fVxuXG5cdFx0QGluY2x1ZGUgbWVkaWEoJHRhYmxldC1sYW5kc2NhcGUpIHtcblx0XHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0fVxuXG5cdFx0LmxvZ28td3JhcCB7XG5cdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdG1hcmdpbjogMCBhdXRvO1xuXG5cdFx0XHRAaW5jbHVkZSBtZWRpYSgkYnJlYWtwb2ludC02NzApIHtcblx0XHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdFx0fVxuXHRcdH0gLy8gLmxvZ28td3JhcFxuXG5cdFx0Lndkc19jb21lYmFja19mb290ZXJfbG9nb18xX3dyYXAge1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogcmVtKDI0KTtcblxuXHRcdFx0QGluY2x1ZGUgbWVkaWEoJGJyZWFrcG9pbnQtNjcwKSB7XG5cdFx0XHRcdG1hcmdpbi1ib3R0b206IDA7XG5cdFx0XHR9XG5cdFx0fSAvLyAud2RzX2NvbWViYWNrX2Zvb3Rlcl9sb2dvXzFfd3JhcFxuXG5cdFx0Lndkc19jb21lYmFja19mb290ZXJfbG9nb18yX3dyYXAge1xuXHRcdFx0QGluY2x1ZGUgbWVkaWEoJGJyZWFrcG9pbnQtNjcwKSB7XG5cdFx0XHRcdGZsb2F0OiByaWdodDtcblx0XHRcdH1cblx0XHR9IC8vIC53ZHNfY29tZWJhY2tfZm9vdGVyX2xvZ29fMl93cmFwXG5cdH0gLy8gJi5tb2JpbGUtb25seVxufSAvLyAuZm9vdGVyLWJvdHRvbSAuZm9vdGVyLWxvZ29zXG5cblxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gU29jaWFsIGljb25zIGluIGZvb3RlciAobW9iaWxlIG9ubHkpXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4uZm9vdGVyLXRvcCAuc29jaWFsLWljb25zIHtcblx0ZGlzcGxheTogYmxvY2s7XG5cdG1hcmdpbi10b3A6IHJlbSg3KTtcblx0cGFkZGluZzogcmVtKDcpIDA7XG5cdHRleHQtYWxpZ246IGNlbnRlcjtcblxuXHRAaW5jbHVkZSBtZWRpYSgkYnJlYWtwb2ludC02NzApIHtcblx0XHRmbG9hdDogbGVmdDtcblx0XHR0ZXh0LWFsaWduOiBsZWZ0O1xuXHR9XG5cblx0QGluY2x1ZGUgbWVkaWEoJHRhYmxldC1sYW5kc2NhcGUpIHtcblx0XHRkaXNwbGF5OiBub25lO1xuXHR9XG59IC8vIC5mb290ZXItdG9wIC5zb2NpYWwtaWNvbnNcbiIsIi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIEZvcm1zXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbmJ1dHRvbixcbmlucHV0LFxuc2VsZWN0LFxudGV4dGFyZWEge1xuXHRmb250LXNpemU6IDEwMCU7IC8vIENvcnJlY3RzIGZvbnQgc2l6ZSBub3QgYmVpbmcgaW5oZXJpdGVkIGluIGFsbCBicm93c2Vyc1xuXHRtYXJnaW46IDA7IC8vIEFkZHJlc3NlcyBtYXJnaW5zIHNldCBkaWZmZXJlbnRseSBpbiBJRTYvNywgRjMvNCwgUzUsIENocm9tZVxuXHR2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7IC8vIEltcHJvdmVzIGFwcGVhcmFuY2UgYW5kIGNvbnNpc3RlbmN5IGluIGFsbCBicm93c2Vyc1xufSAvLyBidXR0b24sIGlucHV0LCBzZWxlY3QsIHRleHRhcmVhXG5cbi8vIEFkZHJlc3NlcyBleGNlc3MgcGFkZGluZyBpbiBJRTgvOVxuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdLFxuaW5wdXRbdHlwZT1cInJhZGlvXCJdIHtcblx0cGFkZGluZzogMDtcbn0gLy8gaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdLCBpbnB1dFt0eXBlPVwicmFkaW9cIl1cblxuLy8gUmVtb3ZlIHRoZSBjbGVhciB4IGljb24gaW4gSUVcbmlucHV0W3R5cGU9XCJ0ZXh0XCJdOjotbXMtY2xlYXIsXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdOjotbXMtY2xlYXIge1xuXHRkaXNwbGF5OiBub25lO1xufSAvLyBpbnB1dFt0eXBlPVwidGV4dFwiXTo6LW1zLWNsZWFyLCBpbnB1dFt0eXBlPVwic2VhcmNoXCJdOjotbXMtY2xlYXJcblxuaW5wdXRbdHlwZT1cInNlYXJjaFwiXSB7XG5cdC13ZWJraXQtYXBwZWFyYW5jZTogdGV4dGZpZWxkOyAvLyBBZGRyZXNzZXMgYXBwZWFyYW5jZSBzZXQgdG8gc2VhcmNoZmllbGQgaW4gUzUsIENocm9tZVxuXHRib3gtc2l6aW5nOiBjb250ZW50LWJveDtcblxuXHQvLyBDb3JyZWN0cyBpbm5lciBwYWRkaW5nIGRpc3BsYXllZCBvZGRseSBpbiBTNSwgQ2hyb21lIG9uIE9TWFxuXHQmOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcblx0XHQtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG5cdH0gLy8gJjo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvblxufSAvLyBpbnB1dFt0eXBlPVwic2VhcmNoXCJdXG5cbi8vIENvcnJlY3RzIGlubmVyIHBhZGRpbmcgYW5kIGJvcmRlciBkaXNwbGF5ZWQgb2RkbHkgaW4gRkYzLzRcbi8vIHd3dy5zaXRlcGVuLmNvbS9ibG9nLzIwMDgvMDUvMTQvdGhlLWRldmlscy1pbi10aGUtZGV0YWlscy1maXhpbmctZG9qb3MtdG9vbGJhci1idXR0b25zL1xuYnV0dG9uOjotbW96LWZvY3VzLWlubmVyLFxuaW5wdXQ6Oi1tb3otZm9jdXMtaW5uZXIge1xuXHRib3JkZXI6IDA7XG5cdHBhZGRpbmc6IDA7XG59IC8vIGJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lciwgaW5wdXQ6Oi1tb3otZm9jdXMtaW5uZXJcblxuaW5wdXRbdHlwZT1cInRleHRcIl0sXG5pbnB1dFt0eXBlPVwiZW1haWxcIl0sXG5pbnB1dFt0eXBlPVwidXJsXCJdLFxuaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdLFxuaW5wdXRbdHlwZT1cInNlYXJjaFwiXSxcbmlucHV0W3R5cGU9XCJudW1iZXJcIl0sXG5pbnB1dFt0eXBlPVwidGVsXCJdLFxuaW5wdXRbdHlwZT1cInJhbmdlXCJdLFxuaW5wdXRbdHlwZT1cImRhdGVcIl0sXG5pbnB1dFt0eXBlPVwibW9udGhcIl0sXG5pbnB1dFt0eXBlPVwid2Vla1wiXSxcbmlucHV0W3R5cGU9XCJ0aW1lXCJdLFxuaW5wdXRbdHlwZT1cImRhdGV0aW1lXCJdLFxuaW5wdXRbdHlwZT1cImRhdGV0aW1lLWxvY2FsXCJdLFxuaW5wdXRbdHlwZT1cImNvbG9yXCJdLFxudGV4dGFyZWEge1xuXHRhcHBlYXJhbmNlOiBub25lO1xuXHRib3JkZXI6IHJlbSgxKSBzb2xpZCAkY29sb3ItaW5wdXQtYm9yZGVyO1xuXHRib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcblx0Y29sb3I6ICRjb2xvci1pbnB1dC10ZXh0O1xuXHRmb250LXNpemU6IHJlbSgxOCk7XG5cdGxpbmUtaGVpZ2h0OiAxLjU7XG5cdHBhZGRpbmc6ICRwYWRkaW5nLWlucHV0O1xuXG5cdCY6Zm9jdXMge1xuXHRcdGJvcmRlcjogcmVtKDIpIHNvbGlkICRjb2xvci1jb3JuO1xuXHRcdGNvbG9yOiAkY29sb3ItaW5wdXQtZm9jdXMtdGV4dDtcblx0XHRvdXRsaW5lLWNvbG9yOiAkY29sb3ItY29ybjtcblx0XHRwYWRkaW5nOiByZW0oMTEpIHJlbSgxOSkgcmVtKDEyKTtcblx0fSAvLyAmOmZvY3VzXG59IC8vIGlucHV0W3R5cGU9XCJ0ZXh0XCJdLCBpbnB1dFt0eXBlPVwiZW1haWxcIl0sIGlucHV0W3R5cGU9XCJ1cmxcIl0sIGlucHV0W3R5cGU9XCJwYXNzd29yZFwiXSwgaW5wdXRbdHlwZT1cInNlYXJjaFwiXSwgaW5wdXRbdHlwZT1cIm51bWJlclwiXSwgaW5wdXRbdHlwZT1cInRlbFwiXSwgaW5wdXRbdHlwZT1cInJhbmdlXCJdLCBpbnB1dFt0eXBlPVwiZGF0ZVwiXSwgaW5wdXRbdHlwZT1cIm1vbnRoXCJdLCBpbnB1dFt0eXBlPVwid2Vla1wiXSwgaW5wdXRbdHlwZT1cInRpbWVcIl0sIGlucHV0W3R5cGU9XCJkYXRldGltZVwiXSwgaW5wdXRbdHlwZT1cImRhdGV0aW1lLWxvY2FsXCJdLCBpbnB1dFt0eXBlPVwiY29sb3JcIl0sIHRleHRhcmVhXG5cbnRleHRhcmVhIHtcblx0QGluY2x1ZGUgc2l6ZSgxMDAlIGF1dG8pO1xuXG5cdG92ZXJmbG93OiBhdXRvOyAvLyBSZW1vdmVzIGRlZmF1bHQgdmVydGljYWwgc2Nyb2xsYmFyIGluIElFNi83LzgvOVxuXHR2ZXJ0aWNhbC1hbGlnbjogdG9wOyAvLyBJbXByb3ZlcyByZWFkYWJpbGl0eSBhbmQgYWxpZ25tZW50IGluIGFsbCBicm93c2Vyc1xufSAvLyB0ZXh0YXJlYVxuXG5sYWJlbCB7XG5cdGNvbG9yOiAkY29sb3Itd2hpdGU7XG5cdGRpc3BsYXk6IGJsb2NrO1xuXHRmb250LWZhbWlseTogJGZvbnQtc2Fucztcblx0Zm9udC1zaXplOiByZW0oMTYpO1xuXHRmb250LXdlaWdodDogNTAwO1xuXHRsZXR0ZXItc3BhY2luZzogcmVtKDIpO1xuXHRtYXJnaW4tYm90dG9tOiByZW0oOCk7XG5cdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59IC8vIGxhYmVsXG5cbnNlbGVjdCB7XG5cdGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuXHRmb250LXNpemU6IHJlbSgxOCk7XG5cdHBhZGRpbmc6IHJlbSg4KSByZW0oMjIpIHJlbSg5KTtcblxuXHQmOmZvY3VzIHtcblx0XHRib3JkZXI6IHJlbSgyKSBzb2xpZCAkY29sb3ItY29ybjtcblx0XHRjb2xvcjogJGNvbG9yLWlucHV0LWZvY3VzLXRleHQ7XG5cdFx0b3V0bGluZS1jb2xvcjogJGNvbG9yLWNvcm47XG5cdFx0cGFkZGluZzogcmVtKDcpIHJlbSgyMSkgcmVtKDgpO1xuXHR9IC8vICY6Zm9jdXNcbn0gLy8gc2VsZWN0XG5cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIEZhbmNpZXIgbG9va2luZyBzZWxlY3QgYm94XG4vLyBTZWU6IGh0dHA6Ly9jb2RlcGVuLmlvL0NoZWZmaGVpZC9wZW4vcE5aYlZlXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi5mYW5jeS1zZWxlY3Rib3gge1xuXHRAaW5jbHVkZSBwb3NpdGlvbihyZWxhdGl2ZSk7XG5cblx0YmFja2dyb3VuZDogJGNvbG9yLXdoaXRlO1xuXHRib3JkZXI6IHJlbSgxKSBzb2xpZCAkY29sb3ItbWluZXNoYWZ0O1xuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdG1heC1oZWlnaHQ6IHJlbSg1NCk7XG5cblx0c2VsZWN0IHtcblx0XHRAaW5jbHVkZSBwb3NpdGlvbihyZWxhdGl2ZSk7XG5cdFx0QGluY2x1ZGUgc2l6ZSgxMDAlIDEwMCUpO1xuXG5cdFx0YXBwZWFyYW5jZTogbm9uZTtcblx0XHRiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcblx0XHRib3JkZXI6IG5vbmU7XG5cdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdHBhZGRpbmc6IHJlbSgxMSkgcmVtKDcwKSByZW0oMTQpIHJlbSgyMik7XG5cdFx0ei1pbmRleDogMTtcblxuXHRcdC8vIEhpZGUgdGhlIHNlbGVjdGJveCBhcnJvdyBvbiBJRTExIGFuZCBiZWxvdy5cblx0XHQmOjotbXMtZXhwYW5kIHtcblx0XHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0fSAvLyAmOjotbXMtZXhwYW5kXG5cblx0XHQmOmZvY3VzIHtcblx0XHRcdGJvcmRlcjogcmVtKDIpIHNvbGlkICRjb2xvci1jb3JuO1xuXHRcdFx0cGFkZGluZzogcmVtKDkpIHJlbSg2OCkgcmVtKDEyKSByZW0oMjApO1xuXHRcdH0gLy8gJjpmb2N1c1xuXHR9XG5cblx0c3ZnIHtcblx0XHRAaW5jbHVkZSBwb3NpdGlvbihhYnNvbHV0ZSwgNTAlIHJlbSgxOSkgbnVsbCBudWxsKTtcblx0XHRAaW5jbHVkZSBzaXplKHJlbSgyNikgcmVtKDI0KSk7XG5cblx0XHRib3JkZXItbGVmdDogcmVtKDEpIHNvbGlkICRjb2xvci1mbGludDtcblx0XHRmaWxsOiAkY29sb3ItZmxpbnQ7XG5cdFx0bWFyZ2luLWxlZnQ6IHJlbSgxNSk7XG5cdFx0cGFkZGluZzogcmVtKDcpIDAgcmVtKDcpIHJlbSgxNSk7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuXHRcdHotaW5kZXg6IDA7XG5cblx0fSAvLyBzdmdcbn0gLy8gLmZhbmN5LXNlbGVjdGJveFxuXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBTZWFyY2ggZm9ybVxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLnNlYXJjaC1mb3JtIHtcblx0ZGlzcGxheTogZmxleDsgLy8gU2V0IGZsZXhib3ggdG8gZ2V0IHJpZCBvZiBzcGFjZSBiZXR3ZWVuIGlucHV0IGFuZCBidXR0b24uXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuXHQuc2VhcmNoLWZpZWxkIHtcblx0XHRib3JkZXI6IHJlbSgxKSBzb2xpZCAkY29sb3ItaXJvbjtcblx0XHRib3JkZXItcmFkaXVzOiAwO1xuXHRcdGJvcmRlci1yaWdodDogbm9uZTtcblx0XHRwYWRkaW5nOiByZW0oNykgcmVtKDkpIHJlbSg2KTtcblxuXHRcdEBpbmNsdWRlIG1lZGlhKCR0YWJsZXQtbGFuZHNjYXBlKSB7XG5cdFx0XHRmb250LXNpemU6IHJlbSgxNik7XG5cdFx0XHRoZWlnaHQ6IHJlbSgzNCk7XG5cdFx0XHRwYWRkaW5nOiByZW0oMSkgcmVtKDkpO1xuXHRcdH1cblxuXHRcdEBpbmNsdWRlIG1lZGlhKG1pbi1oZWlnaHQgJGJyZWFrcG9pbnQtNTAwIG1heC13aWR0aCAkdGFibGV0LXBvcnRyYWl0KSB7XG5cdFx0XHR3aWR0aDogNTAlO1xuXHRcdH1cblxuXHRcdC8vIFdoZW4gdGhlIGhlYWRlciBpcyBmaXhlZCwgYWRqdXN0IHRoZSBsb2dvIGluIHNpemUuXG5cdFx0QGluY2x1ZGUgbWVkaWEobWluLWhlaWdodCAkYnJlYWtwb2ludC01MDAgbWF4LXdpZHRoICRicmVha3BvaW50LTEwMjMpIHtcblx0XHRcdGZvbnQtc2l6ZTogcmVtKDE2KTtcblx0XHR9XG5cblx0XHQmOmZvY3VzIHtcblx0XHRcdHBhZGRpbmc6IHJlbSg2KSByZW0oOCkgcmVtKDUpO1xuXG5cdFx0XHRAaW5jbHVkZSBtZWRpYSgkdGFibGV0LWxhbmRzY2FwZSkge1xuXHRcdFx0XHRwYWRkaW5nOiByZW0oMykgcmVtKDgpIHJlbSgzKSByZW0oNyk7XG5cdFx0XHR9XG5cdFx0fSAvLyAmOmZvY3VzXG5cblx0XHQuZml4ZWQtaGVhZGVyIC5zaXRlLWhlYWRlciAmIHtcblxuXHRcdFx0QGluY2x1ZGUgbWVkaWEoJHRhYmxldC1sYW5kc2NhcGUpIHtcblx0XHRcdFx0QGluY2x1ZGUgcG9zaXRpb24oYWJzb2x1dGUsIG51bGwgMCBudWxsIG51bGwpO1xuXHRcdFx0XHRAaW5jbHVkZSBzaXplKHJlbSg2MCkgcmVtKDY1KSk7XG5cdFx0XHRcdEBpbmNsdWRlIHRyYW5zaXRpb24od2lkdGggMC4xOHMgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgMC4xOHMgZWFzZS1pbi1vdXQpO1xuXG5cdFx0XHRcdGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuXHRcdFx0XHRib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuXHRcdFx0XHRvcGFjaXR5OiAwO1xuXHRcdFx0XHR6LWluZGV4OiAzO1xuXG5cdFx0XHRcdCY6Zm9jdXMsXG5cdFx0XHRcdCYubm90LWVtcHR5IHtcblx0XHRcdFx0XHRiYWNrZ3JvdW5kOiAkY29sb3Itc2xhdGU7XG5cdFx0XHRcdFx0Y29sb3I6ICRjb2xvci13aGl0ZTtcblx0XHRcdFx0XHRtYXJnaW4tcmlnaHQ6IHJlbSg2MCk7XG5cdFx0XHRcdFx0b3BhY2l0eTogMTtcblx0XHRcdFx0XHR3aWR0aDogcmVtKDI5MCk7XG5cdFx0XHRcdFx0ei1pbmRleDogMTtcblx0XHRcdFx0fSAvLyAmOmZvY3VzLCAmOm5vdC1lbXB0eVxuXHRcdFx0fVxuXHRcdH0gLy8gLmZpeGVkLWhlYWRlciAuc2l0ZS1oZWFkZXIgJlxuXHR9IC8vIC5zZWFyY2gtZmllbGRcblxuXHQuZml4ZWQtaGVhZGVyIC5zaXRlLWhlYWRlciAmIHtcblxuXHRcdEBpbmNsdWRlIG1lZGlhKCR0YWJsZXQtbGFuZHNjYXBlKSB7XG5cdFx0XHRidXR0b24ge1xuXHRcdFx0XHRAaW5jbHVkZSBzaXplKHJlbSg2MCkgcmVtKDY1KSk7XG5cblx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXdvb2RzbW9rZTtcblx0XHRcdFx0Ym9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcblx0XHRcdFx0cGFkZGluZzogMDtcblx0XHRcdFx0ei1pbmRleDogMjtcblxuXHRcdFx0XHRzdmcge1xuXHRcdFx0XHRcdGZpbGw6ICRjb2xvci13aGl0ZTtcblx0XHRcdFx0fSAvLyBzdmdcblx0XHRcdH0gLy8gYnV0dG9uXG5cdFx0fVxuXHR9IC8vIC5maXhlZC1oZWFkZXIgLnNpdGUtaGVhZGVyICZcblxuXHQ6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIge1xuXHRcdGNvbG9yOiAkY29sb3ItbWlkLWdyYXk7XG5cdFx0Zm9udC1zdHlsZTogaXRhbGljO1xuXHR9IC8vIDo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlclxuXG5cdDo6LW1vei1wbGFjZWhvbGRlciB7XG5cdFx0Y29sb3I6ICRjb2xvci1taWQtZ3JheTtcblx0XHRmb250LXN0eWxlOiBpdGFsaWM7XG5cdFx0b3BhY2l0eTogMTtcblx0fSAvLyA6Oi1tb3otcGxhY2Vob2xkZXJcblxuXHQ6LW1zLWlucHV0LXBsYWNlaG9sZGVyIHtcblx0XHRjb2xvcjogJGNvbG9yLW1pZC1ncmF5O1xuXHRcdGZvbnQtc3R5bGU6IGl0YWxpYztcblx0fSAvLyA6LW1zLWlucHV0LXBsYWNlaG9sZGVyXG59IC8vIC5zaXRlLWhlYWRlciAuc2VhcmNoLWZvcm1cbiIsIi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIEJ1dHRvbnNcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gRGVmYXVsdCBidXR0b24gc3R5bGUsIHRoaXMgb25lIGlzIHllbGxvdy5cbi5idXR0b24sXG5idXR0b24sXG5pbnB1dFt0eXBlPVwiYnV0dG9uXCJdLFxuaW5wdXRbdHlwZT1cInJlc2V0XCJdLFxuaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XG5cdGFwcGVhcmFuY2U6IG5vbmU7XG5cdGJvcmRlcjogbm9uZTtcblx0Ym9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG5cdGJvcmRlci13aWR0aDogMDtcblx0Y29sb3I6ICRjb2xvci1idXR0b24tdGV4dDtcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRmb250LWZhbWlseTogJGZvbnQtc2Fucztcblx0Zm9udC1zaXplOiByZW0oMTgpO1xuXHRmb250LXdlaWdodDogNjAwO1xuXHRsZXR0ZXItc3BhY2luZzogcmVtKDEpO1xuXHRsaW5lLWhlaWdodDogMS40NTtcblx0bWFyZ2luOiAwO1xuXHRwYWRkaW5nOiByZW0oMTEpIHJlbSgyOCk7XG5cdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblx0dHJhbnNpdGlvbjogb3BhY2l0eSAwLjE4cyBlYXNlLW91dDtcblxuXHQvLyBJRSAxMSBoZWxwZXIuXG5cdC5pZSAmIHtcblx0XHRoZWlnaHQ6IHJlbSg0OCk7XG5cdH0gLy8gLmllICZcblxuXHQvLyBTZXQgYSB2aXNpdGVkIHN0eWxlIHRvIHByZXZlbnQgZGFyayB0ZXh0XG5cdCY6dmlzaXRlZCB7XG5cdFx0Y29sb3I6ICRjb2xvci13aGl0ZTtcblx0fSAvLyAmOnZpc2l0ZWRcbn0gLy8gLmJ1dHRvbiwgYnV0dG9uLCBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdLCBpbnB1dFt0eXBlPVwicmVzZXRcIl0sIGlucHV0W3R5cGU9XCJzdWJtaXRcIl1cblxuXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBBbHRlcm5hdGl2ZSBidXR0b24gc3lsZXNcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi5idXR0b24ge1xuXHQmLXByaW1hcnkge1xuXHRcdGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1jb3JuO1xuXG5cdFx0Jjpob3ZlciB7XG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3Itc2FmZnJvbi1tYW5nbztcblx0XHRcdGNvbG9yOiAkY29sb3Itd2hpdGU7XG5cdFx0fSAvLyAmOmhvdmVyXG5cblx0XHQmOmFjdGl2ZSxcblx0XHQmOmZvY3VzIHtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1zYWZmcm9uLW1hbmdvO1xuXHRcdFx0Y29sb3I6ICRjb2xvci13aGl0ZTtcblx0XHR9IC8vICY6YWN0aXZlLCAmOmZvY3VzXG5cblx0fSAvLyAmLXByaW1hcnlcblxuXHQvLyBUaGlzIGlzIGEgZGFyayB2YXJpYW50IG9mIHRoZSBidXR0b24uXG5cdCYtc2Vjb25kYXJ5IHtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3Itc2hpcC1ncmF5O1xuXG5cdFx0Jjpob3ZlciB7XG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3Itc2NhcnBhLWZsb3c7XG5cdFx0fSAvLyAmOmhvdmVyXG5cblx0XHQmOmFjdGl2ZSxcblx0XHQmOmZvY3VzIHtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1zY2FycGEtZmxvdztcblx0XHR9IC8vICY6YWN0aXZlLCAmOmZvY3VzXG5cdH0gLy8gJi1zZWNvbmRhcnlcblxuXHQvLyBUaGlzIGlzIGEgYnV0dG9uIHN0eWxlIHdpdGggYSB0cmFuc3BhcmVudCBiYWNrZ3JvdW5kIGFuZCBhIGJvcmRlciBzdHlsZS5cblx0Ji1vdXRsaW5lIHtcblx0XHRiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcblx0XHRib3JkZXI6IHJlbSgyKSBzb2xpZCAkY29sb3Itc2hpcC1ncmF5O1xuXHRcdGNvbG9yOiAkY29sb3Itc2hpcC1ncmF5O1xuXHRcdHBhZGRpbmc6IHJlbSg5KSByZW0oMjYpO1xuXHRcdHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4xOHMgZWFzZS1vdXQsIGNvbG9yIDAuMThzIGVhc2Utb3V0O1xuXG5cdFx0Jjpob3Zlcixcblx0XHQmOnZpc2l0ZWQ6aG92ZXIge1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXNoaXAtZ3JheTtcblx0XHRcdGNvbG9yOiAkY29sb3Itd2hpdGU7XG5cdFx0fSAvLyAmOmhvdmVyXG5cblx0XHQmOmFjdGl2ZSxcblx0XHQmOmZvY3VzLFxuXHRcdCY6dmlzaXRlZDphY3RpdmUsXG5cdFx0Jjp2aXNpdGVkOmZvY3VzIHtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1zaGlwLWdyYXk7XG5cdFx0XHRjb2xvcjogJGNvbG9yLXdoaXRlO1xuXHRcdH0gLy8gJjphY3RpdmUsICY6Zm9jdXNcblxuXHRcdC8vIFRoaXMgYnV0dG9uIHN0eWxlIG5lZWRzIHRvIHJldGFpbiBkYXJrIHRleHQgd2hlbiB2aXNpdGVkLlxuXHRcdCY6dmlzaXRlZCB7XG5cdFx0XHRjb2xvcjogJGNvbG9yLXNoaXAtZ3JheTtcblx0XHR9IC8vICY6dmlzaXRlZFxuXHR9IC8vICYtb3V0bGluZVxufSAvLyAuYnV0dG9uXG5cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIEhlYWRlciBzZWFyY2ggZm9ybSBidXR0b25cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIFRoZSBzZWFyY2ggYnV0dG9uIGlzIHdoaXRlIHdpdGggYW4gc3ZnIGljb24gb24gaXQuXG4vLyBOZWVkcyB0byBhbHNvIGJlIHBvc2l0aW9uZWQgZmx1c2ggYWdhaW5zdCB0aGUgaW5wdXQgZmllbGQuXG4uc2VhcmNoLWZvcm0ge1xuXHRidXR0b24ge1xuXHRcdGJhY2tncm91bmQ6ICRjb2xvci13aGl0ZTtcblx0XHRib3JkZXI6IHJlbSgxKSBzb2xpZCAkY29sb3ItaXJvbjtcblx0XHRib3JkZXItbGVmdDogbm9uZTtcblx0XHRib3JkZXItcmFkaXVzOiAwO1xuXHRcdGxpbmUtaGVpZ2h0OiAuODtcblx0XHRwYWRkaW5nOiAwIHJlbSg3KTtcblxuXHRcdEBpbmNsdWRlIG1lZGlhKCR0YWJsZXQtbGFuZHNjYXBlKSB7XG5cdFx0XHRtYXJnaW4tcmlnaHQ6IHJlbSg1KTtcblx0XHR9XG5cblx0XHRzdmcge1xuXHRcdFx0QGluY2x1ZGUgc2l6ZShyZW0oMTkpIHJlbSgxOCkpO1xuXG5cdFx0XHRmaWxsOiAkY29sb3ItZHVzaztcblx0XHR9IC8vIHN2Z1xuXG5cdFx0Jjpob3ZlciB7XG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3Itc2FmZnJvbi1tYW5nbztcblxuXHRcdFx0c3ZnIHtcblx0XHRcdFx0ZmlsbDogJGNvbG9yLXdoaXRlO1xuXHRcdFx0fSAvLyBzdmdcblx0XHR9IC8vICY6aG92ZXJcblxuXHRcdCY6YWN0aXZlLFxuXHRcdCY6Zm9jdXMge1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXNhZmZyb24tbWFuZ287XG5cblx0XHRcdHN2ZyB7XG5cdFx0XHRcdGZpbGw6ICRjb2xvci13aGl0ZTtcblx0XHRcdH0gLy8gc3ZnXG5cdFx0fSAvLyAmOmFjdGl2ZSwgJjpmb2N1c1xuXG5cdFx0Ly8gVGhpcyBidXR0b24gd29uJ3QgbmVlZCB0aGUgaGVpZ2h0IGhlbHBlci5cblx0XHQuaWUgJiB7XG5cdFx0XHRoZWlnaHQ6IGF1dG87XG5cdFx0fSAvLyAuaWUgJlxuXHR9IC8vIGJ1dHRvblxufSAvLyAuc2VhcmNoLWZvcm1cbiIsIi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIEhlYWRlclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBTaXRlIFRpdGxlXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4uc2l0ZS10aXRsZSB7XG5cdGZvbnQtc2l6ZTogcmVtKDQ4KTtcbn0gLy8gLnNpdGUtdGl0bGVcblxuXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBTaXRlIERlc2NyaXB0aW9uXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4uc2l0ZS1kZXNjcmlwdGlvbiB7XG5cdGZvbnQtc2l6ZTogcmVtKDI0KTtcblx0bWFyZ2luOiAwIDAgcmVtKDI0KSAwO1xufSAvLyAuc2l0ZS1kZXNjcmlwdGlvblxuXG5cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIFNpdGUgSGVhZGVyIHNlY3Rpb25cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi5zaXRlLWhlYWRlciB7XG5cdGJhY2tncm91bmQ6ICRjb2xvci1kdXNrO1xuXHRtYXJnaW4tdG9wOiByZW0oMjIpO1xuXHRwYWRkaW5nLWJvdHRvbTogcmVtKDE0KTtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHR0cmFuc2l0aW9uOiBib3R0b20gMC43NXMgZWFzZS1pbi1vdXQ7XG5cdHdpZHRoOiAxMDAlO1xuXHR6LWluZGV4OiAxMDA7XG5cblx0QGluY2x1ZGUgbWVkaWEoJGJyZWFrcG9pbnQtNTAwKSB7XG5cdFx0cGFkZGluZy1ib3R0b206IDA7XG5cdH1cblxuXHRAaW5jbHVkZSBtZWRpYSgkdGFibGV0LWxhbmRzY2FwZSkge1xuXHRcdEBpbmNsdWRlIHBvc2l0aW9uKHJlbGF0aXZlLCBudWxsIG51bGwgMCBudWxsKTtcblxuXHRcdG1hcmdpbi10b3A6IDA7XG5cdH1cblxuXHQvLyBGaXggdGhlIGxvZ28gdG8gdGhlIGJvdHRvbSwgYnV0IG9ubHkgaWYgdGhlIHZpZXdwb3J0IGlzIHRhbGwgZW5vdWdoXG5cdEBpbmNsdWRlIG1lZGlhKG1pbi1oZWlnaHQgJGJyZWFrcG9pbnQtNTAwIG1heC13aWR0aCAkYnJlYWtwb2ludC0xMDIzKSB7XG5cdFx0Ym90dG9tOiByZW0oNjkpO1xuXHRcdHBhZGRpbmctYm90dG9tOiByZW0oNSk7XG5cdFx0cG9zaXRpb246IGZpeGVkO1xuXHR9XG5cblx0LmZpeGVkLWhlYWRlciAmIHtcblx0XHRAaW5jbHVkZSBtZWRpYSgkdGFibGV0LWxhbmRzY2FwZSkge1xuXHRcdFx0QGluY2x1ZGUgcG9zaXRpb24oZml4ZWQsIDAgbnVsbCBudWxsIG51bGwpO1xuXHRcdFx0QGluY2x1ZGUgc2l6ZSgxMDAlIHJlbSg2NSkpO1xuXG5cdFx0XHRiYWNrZ3JvdW5kOiAkY29sb3Itc2xhdGU7XG5cdFx0fVxuXHR9IC8vIC5maXhlZC1oZWFkZXIgJlxuXG5cdC8vIENvbXBlbnNhdGUgZm9yIGFkbWluIGJhci5cblx0LmFkbWluLWJhci5maXhlZC1oZWFkZXIgJiB7XG5cdFx0QGluY2x1ZGUgbWVkaWEoJHRhYmxldC1sYW5kc2NhcGUpIHtcblx0XHRcdHRvcDogcmVtKDMyKTtcblx0XHR9XG5cdH0gLy8gLmxvZ2dlZC1pbi5maXhlZC1oZWFlciAmXG5cblx0Ly8gTW92ZSB0aGUgbG9nby9zZWFyY2ggZG93biB3aGVuIHRoZSB0YXBiYXIgZG9lc1xuXHQmLnRhcGJhci1oaWRkZW4ge1xuXHRcdGJvdHRvbTogLTEwMCU7XG5cdH0gLy8gJi50YXBiYXItaGlkZGVuXG5cbn0gLy8gLnNpdGUtaGVhZGVyXG5cblxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gU2VhcmNoIGZvcm0gaW4gaGVhZGVyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4uc2l0ZS1oZWFkZXIge1xuXHQuc2VhcmNoLWZvcm0ge1xuXHRcdGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXHRcdG1hcmdpbjogcmVtKDE0KSAwIDA7XG5cdFx0cGFkZGluZzogcmVtKDEwKSAwO1xuXG5cdFx0QGluY2x1ZGUgbWVkaWEoJGJyZWFrcG9pbnQtNTAwKSB7XG5cdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuXHRcdFx0cGFkZGluZy1yaWdodDogcmVtKDUpO1xuXHRcdH1cblxuXHRcdEBpbmNsdWRlIG1lZGlhKCR0YWJsZXQtbGFuZHNjYXBlKSB7XG5cdFx0XHRmbG9hdDogcmlnaHQ7XG5cdFx0XHRtYXJnaW46IHJlbSgxMSkgcmVtKDIwKSByZW0oNikgMDtcblx0XHRcdHBhZGRpbmctYm90dG9tOiAwO1xuXHRcdFx0cGFkZGluZy10b3A6IDA7XG5cdFx0fVxuXG5cdFx0Ly8gV2hlbiB0aGUgaGVhZGVyIGlzIGZpeGVkLCBhZGp1c3QgdGhlIGZvcm0ncyBwb3NpdGlvbmluZ1xuXHRcdEBpbmNsdWRlIG1lZGlhKG1pbi1oZWlnaHQgJGJyZWFrcG9pbnQtNTAwIG1heC13aWR0aCAkYnJlYWtwb2ludC0xMDIzKSB7XG5cdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuXHRcdFx0bWFyZ2luLXRvcDogcmVtKDUpO1xuXHRcdFx0cGFkZGluZy1ib3R0b206IDA7XG5cdFx0XHRwYWRkaW5nLXJpZ2h0OiByZW0oNSk7XG5cdFx0XHRwYWRkaW5nLXRvcDogMDtcblx0XHR9XG5cblx0XHQuZml4ZWQtaGVhZGVyICYge1xuXG5cdFx0XHRAaW5jbHVkZSBtZWRpYSgkdGFibGV0LWxhbmRzY2FwZSkge1xuXHRcdFx0XHRtYXJnaW46IDA7XG5cdFx0XHR9XG5cdFx0fSAvLyAuZml4ZWQtaGVhZGVyICZcblx0fSAvLyAuc2VhcmNoLWZvcm1cbn0gLy8gLnNpdGUtaGVhZGVyXG5cblxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gU2l0ZSBCcmFuZGluZyBzZWN0aW9uXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4uc2l0ZS1icmFuZGluZyB7XG5cdGRpc3BsYXk6IGJsb2NrO1xuXHR6LWluZGV4OiAxO1xuXG5cdEBpbmNsdWRlIG1lZGlhKCRicmVha3BvaW50LTUwMCkge1xuXHRcdEBpbmNsdWRlIHBvc2l0aW9uKGFic29sdXRlLCByZW0oLTMyKSBudWxsIG51bGwgcmVtKDIwKSk7XG5cdH1cblxuXHRAaW5jbHVkZSBtZWRpYSgkdGFibGV0LWxhbmRzY2FwZSkge1xuXHRcdG1hcmdpbi10b3A6IDA7XG5cdFx0dG9wOiByZW0oOSk7XG5cdH1cblxuXHQvLyBXaGVuIHRoZSBoZWFkZXIgaXMgZml4ZWQsIGFkanVzdCB0aGUgbG9nbyBpbiBzaXplLlxuXHRAaW5jbHVkZSBtZWRpYShtaW4taGVpZ2h0ICRicmVha3BvaW50LTUwMCBtYXgtd2lkdGggJGJyZWFrcG9pbnQtMTAyMykge1xuXHRcdEBpbmNsdWRlIHBvc2l0aW9uKGFic29sdXRlLCByZW0oLTE4KSBudWxsIG51bGwgcmVtKDUpKTtcblxuXHRcdHotaW5kZXg6IDEwMTtcblxuXHRcdC5tb2JpbGUtbWVudS1tb3JlICYge1xuXHRcdFx0ei1pbmRleDogOTk7XG5cdFx0fSAvLyAubW9iaWxlLW1lbnUtbW9yZSAmXG5cdH1cblxuXHQuZml4ZWQtaGVhZGVyICYge1xuXHRcdEBpbmNsdWRlIG1lZGlhKCR0YWJsZXQtbGFuZHNjYXBlKSB7XG5cdFx0XHR0b3A6IDA7XG5cdFx0fVxuXHR9IC8vIC5maXhlZC1oZWFkZXIgJlxufSAvLyAuc2l0ZS1icmFuZGluZ1xuXG5cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIEN1c3RvbSBMb2dvXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4uc2l0ZS1icmFuZGluZyB7XG5cdC5jdXN0b20tbG9nby1saW5rIHtcblx0XHRib3JkZXItYm90dG9tOiBub25lO1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdG1heC1oZWlnaHQ6IHJlbSgxMDUpO1xuXHRcdHBhZGRpbmctdG9wOiByZW0oNyk7XG5cdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXG5cdFx0QGluY2x1ZGUgbWVkaWEoJHRhYmxldC1sYW5kc2NhcGUpIHtcblx0XHRcdHBhZGRpbmctdG9wOiAwO1xuXHRcdH1cblxuXHRcdGltZyB7XG5cdFx0XHRtYXgtaGVpZ2h0OiByZW0oMTA1KTtcblx0XHRcdHdpZHRoOiBhdXRvO1xuXG5cdFx0XHQvLyBSZXNpemUgdGhlIGxvZ28gd2hpbGUgaXQgaXMgZml4ZWQgdG8gdGhlIGJvdHRvbS5cblx0XHRcdEBpbmNsdWRlIG1lZGlhKG1pbi1oZWlnaHQgJGJyZWFrcG9pbnQtNTAwIG1heC13aWR0aCAkYnJlYWtwb2ludC0xMDIzKSB7XG5cdFx0XHRcdG1heC1oZWlnaHQ6IHJlbSg2OCk7XG5cdFx0XHR9XG5cblx0XHRcdC5maXhlZC1oZWFkZXIgJiB7XG5cdFx0XHRcdEBpbmNsdWRlIG1lZGlhKCR0YWJsZXQtbGFuZHNjYXBlKSB7XG5cdFx0XHRcdFx0bWF4LWhlaWdodDogcmVtKDY1KTtcblx0XHRcdFx0fVxuXHRcdFx0fSAvLyAuZml4ZWQtaGVhZGVyICZcblx0XHR9IC8vIGltZ1xuXG5cdFx0LmZpeGVkLWhlYWRlciAmIHtcblx0XHRcdEBpbmNsdWRlIG1lZGlhKCR0YWJsZXQtbGFuZHNjYXBlKSB7XG5cdFx0XHRcdG1heC1oZWlnaHQ6IHJlbSg2NSk7XG5cdFx0XHR9XG5cdFx0fSAvLyAuZml4ZWQtaGVhZGVyICZcblx0fSAvLyAuY3VzdG9tLWxvZ28tbGlua1xufSAvLyAuc2l0ZS1icmFuZGluZ1xuXG5cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIFNpdGUgbmF2aWdhdGlvbiB3cmFwIChtYWluIG5hdiwgc29jaWFsIGljb25zKVxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLnNpdGUtbmF2aWdhdGlvbi13cmFwIHtcblx0QGluY2x1ZGUgcG9zaXRpb24oYWJzb2x1dGUsIHJlbSg1KSBudWxsIG51bGwgbnVsbCk7XG5cdEBpbmNsdWRlIHRyYW5zaXRpb24odG9wIDAuMThzIGVhc2UtaW4tb3V0KTtcblxuXHRiYWNrZ3JvdW5kOiAkY29sb3Itc2xhdGU7XG5cdGNsZWFyOiBib3RoO1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cblx0LmZpeGVkLWhlYWRlciAmIHtcblx0XHRAaW5jbHVkZSBtZWRpYSgkdGFibGV0LWxhbmRzY2FwZSkge1xuXHRcdFx0QGluY2x1ZGUgcG9zaXRpb24oYWJzb2x1dGUsIDAgbnVsbCBudWxsIG51bGwpO1xuXG5cdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdHotaW5kZXg6IC0xOyAvLyBUbyBlbnN1cmUgdGhlIHNlYXJjaCBmaWVsZCBpcyBzdGlsbCB1c2FibGUuXG5cdFx0fVxuXHR9IC8vIC5maXhlZC1oZWFkZXIgJlxufSAvLyAuc2l0ZS1uYXZpZ2F0aW9uLXdyYXBcbiIsIkBjaGFyc2V0IFwiVVRGLThcIjtcblxuLy8vIEEgbWl4aW4gZm9yIGdlbmVyYXRpbmcgdmVuZG9yIHByZWZpeGVzIG9uIG5vbi1zdGFuZGFyZGl6ZWQgcHJvcGVydGllcy5cbi8vL1xuLy8vIEBwYXJhbSB7U3RyaW5nfSAkcHJvcGVydHlcbi8vLyAgIFByb3BlcnR5IHRvIHByZWZpeFxuLy8vXG4vLy8gQHBhcmFtIHsqfSAkdmFsdWVcbi8vLyAgIFZhbHVlIHRvIHVzZVxuLy8vXG4vLy8gQHBhcmFtIHtMaXN0fSAkcHJlZml4ZXNcbi8vLyAgIFByZWZpeGVzIHRvIGRlZmluZVxuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFVzYWdlXG4vLy8gICAuZWxlbWVudCB7XG4vLy8gICAgIEBpbmNsdWRlIHByZWZpeGVyKGJvcmRlci1yYWRpdXMsIDEwcHgsIHdlYmtpdCBtcyBzcGVjKTtcbi8vLyAgIH1cbi8vL1xuLy8vIEBleGFtcGxlIGNzcyAtIENTUyBPdXRwdXRcbi8vLyAgIC5lbGVtZW50IHtcbi8vLyAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAxMHB4O1xuLy8vICAgICAtbW96LWJvcmRlci1yYWRpdXM6IDEwcHg7XG4vLy8gICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4vLy8gICB9XG4vLy9cbi8vLyBAcmVxdWlyZSB7dmFyaWFibGV9ICRwcmVmaXgtZm9yLXdlYmtpdFxuLy8vIEByZXF1aXJlIHt2YXJpYWJsZX0gJHByZWZpeC1mb3ItbW96aWxsYVxuLy8vIEByZXF1aXJlIHt2YXJpYWJsZX0gJHByZWZpeC1mb3ItbWljcm9zb2Z0XG4vLy8gQHJlcXVpcmUge3ZhcmlhYmxlfSAkcHJlZml4LWZvci1vcGVyYVxuLy8vIEByZXF1aXJlIHt2YXJpYWJsZX0gJHByZWZpeC1mb3Itc3BlY1xuXG5AbWl4aW4gcHJlZml4ZXIoJHByb3BlcnR5LCAkdmFsdWUsICRwcmVmaXhlcykge1xuICBAZWFjaCAkcHJlZml4IGluICRwcmVmaXhlcyB7XG4gICAgQGlmICRwcmVmaXggPT0gd2Via2l0IHtcbiAgICAgIEBpZiAkcHJlZml4LWZvci13ZWJraXQge1xuICAgICAgICAtd2Via2l0LSN7JHByb3BlcnR5fTogJHZhbHVlO1xuICAgICAgfVxuICAgIH0gQGVsc2UgaWYgJHByZWZpeCA9PSBtb3oge1xuICAgICAgQGlmICRwcmVmaXgtZm9yLW1vemlsbGEge1xuICAgICAgICAtbW96LSN7JHByb3BlcnR5fTogJHZhbHVlO1xuICAgICAgfVxuICAgIH0gQGVsc2UgaWYgJHByZWZpeCA9PSBtcyB7XG4gICAgICBAaWYgJHByZWZpeC1mb3ItbWljcm9zb2Z0IHtcbiAgICAgICAgLW1zLSN7JHByb3BlcnR5fTogJHZhbHVlO1xuICAgICAgfVxuICAgIH0gQGVsc2UgaWYgJHByZWZpeCA9PSBvIHtcbiAgICAgIEBpZiAkcHJlZml4LWZvci1vcGVyYSB7XG4gICAgICAgIC1vLSN7JHByb3BlcnR5fTogJHZhbHVlO1xuICAgICAgfVxuICAgIH0gQGVsc2UgaWYgJHByZWZpeCA9PSBzcGVjIHtcbiAgICAgIEBpZiAkcHJlZml4LWZvci1zcGVjIHtcbiAgICAgICAgI3skcHJvcGVydHl9OiAkdmFsdWU7XG4gICAgICB9XG4gICAgfSBAZWxzZSAge1xuICAgICAgQHdhcm4gXCJVbnJlY29nbml6ZWQgcHJlZml4OiAjeyRwcmVmaXh9XCI7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBkaXNhYmxlLXByZWZpeC1mb3ItYWxsKCkge1xuICAkcHJlZml4LWZvci13ZWJraXQ6ICAgIGZhbHNlICFnbG9iYWw7XG4gICRwcmVmaXgtZm9yLW1vemlsbGE6ICAgZmFsc2UgIWdsb2JhbDtcbiAgJHByZWZpeC1mb3ItbWljcm9zb2Z0OiBmYWxzZSAhZ2xvYmFsO1xuICAkcHJlZml4LWZvci1vcGVyYTogICAgIGZhbHNlICFnbG9iYWw7XG4gICRwcmVmaXgtZm9yLXNwZWM6ICAgICAgZmFsc2UgIWdsb2JhbDtcbn1cbiIsIi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIEhlcm9cbi8vXG4vLyBodHRwOi8vY29kZXBlbi5pby93ZWJkZXZzdHVkaW9zL3Blbi9SUnJKTFBcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gSGVybyBjb250YWluZXIuXG4uaGVyby1hcmVhIHtcblx0b3ZlcmZsb3cteTogaGlkZGVuO1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdHotaW5kZXg6IDE7XG5cblx0Ly8gVHJhbnNwYXJlbnQgb3ZlcmxheSAob3B0aW9uYWwpLlxuXHQmOjphZnRlciB7XG5cdFx0QGluY2x1ZGUgcG9zaXRpb24oYWJzb2x1dGUsIDAgMCBudWxsIG51bGwpO1xuXHRcdEBpbmNsdWRlIHNpemUoMTAwJSAxMDAlKTtcblxuXHRcdGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGNvbG9yLWJsYWNrLCAwLjYpO1xuXHRcdGNvbnRlbnQ6IFwiXCI7XG5cdFx0ei1pbmRleDogMjtcblx0fSAvLyAmOmFmdGVyXG5cblx0Ly8gR3JhZGllbnQgb3ZlcmxheSAob3B0aW9uYWwpLlxuXHQvLyAmOmFmdGVyIHtcblx0Ly8gXHRAaW5jbHVkZSBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCByZ2JhKCRjb2xvci1ibGFjaywgMCkgMCUsIHJnYmEoJGNvbG9yLWJsYWNrLCAwLjUwKSA1MCUpO1xuXHQvLyBcdEBpbmNsdWRlIHBvc2l0aW9uKGFic29sdXRlLCAwIDAgbnVsbCBudWxsKTtcblx0Ly8gXHRAaW5jbHVkZSBzaXplKDEwMCUgMTAwJSk7XG5cblx0Ly8gXHRjb250ZW50OiAnJztcblx0Ly8gXHR6LWluZGV4OiAyO1xuXHQvLyB9IC8vICY6YWZ0ZXJcblxuXHQvLyBDb250ZW50IGNvbnRhaW5lci5cblx0Lmhlcm8tY29udGVudCB7XG5cdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cdFx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdFx0bWFyZ2luOiAwIGF1dG87XG5cdFx0bWF4LXdpZHRoOiByZW0oNTAwKTsgLy8gd2lkdGggb2YgY29udGVudCBjb250YWluZXJcblx0XHRtaW4taGVpZ2h0OiByZW0oNTAwKTsgLy8gaGVpZ2h0IG9mIGhlcm9cblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRcdHotaW5kZXg6IDM7XG5cblx0XHQvLyBTZXQgZGVmYXVsdHMuXG5cdFx0Lmhlcm8tdGl0bGUsXG5cdFx0Lmhlcm8tZGVzY3JpcHRpb24sXG5cdFx0Lmhlcm8tYnV0dG9uIHtcblx0XHRcdGNvbG9yOiAkY29sb3Itd2hpdGU7XG5cdFx0fSAvLyAuaGVyby10aXRsZSwgLmhlcm8tZGVzY3JpcHRpb24sIC5oZXJvLWJ1dHRvblxuXG5cdFx0Ly8gQWRkIHBhZGRpbmcgdG8gZGVzY3JpcHRpb24uXG5cdFx0Lmhlcm8tZGVzY3JpcHRpb24ge1xuXHRcdFx0cGFkZGluZy1ib3R0b206IHJlbSgyNCk7XG5cdFx0fSAvLyAuaGVyby1kZXNjcmlwdGlvblxuXG5cdFx0Ly8gU3R5bGUgYnV0dG9uLlxuXHRcdC5oZXJvLWJ1dHRvbiB7XG5cdFx0XHRAaW5jbHVkZSBwYWRkaW5nKHJlbSgxMikgcmVtKDQwKSk7XG5cblx0XHRcdGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuXHRcdFx0Ym9yZGVyOiAycHggc29saWQgJGNvbG9yLXdoaXRlO1xuXG5cdFx0XHQmOmhvdmVyIHtcblx0XHRcdFx0YmFja2dyb3VuZDogcmdiYSgkY29sb3ItYmxhY2ssIDAuNyk7XG5cdFx0XHRcdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblx0XHRcdH1cblx0XHR9IC8vIC5oZXJvLWJ1dHRvblxuXHR9IC8vIC5oZXJvLWNvbnRlbnRcbn0gLy8gLmhlcm8tYXJlYVxuIiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xuXG4vLy8gRGlyZWN0aW9uYWwtcHJvcGVydHkgbWl4aW5zIGFyZSBzaG9ydGhhbmRzIGZvciB3cml0aW5nIHByb3BlcnRpZXMgbGlrZSB0aGUgZm9sbG93aW5nXG4vLy9cbi8vLyBAaWdub3JlIFlvdSBjYW4gYWxzbyB1c2UgYGZhbHNlYCBpbnN0ZWFkIG9mIGBudWxsYC5cbi8vL1xuLy8vIEBwYXJhbSB7TGlzdH0gJHZhbHNcbi8vLyAgIExpc3Qgb2YgZGlyZWN0aW9uYWwgdmFsdWVzXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gVXNhZ2Vcbi8vLyAgIC5lbGVtZW50IHtcbi8vLyAgICAgQGluY2x1ZGUgYm9yZGVyLXN0eWxlKGRvdHRlZCBudWxsKTtcbi8vLyAgICAgQGluY2x1ZGUgbWFyZ2luKG51bGwgMCAxMHB4KTtcbi8vLyAgIH1cbi8vL1xuLy8vIEBleGFtcGxlIGNzcyAtIENTUyBPdXRwdXRcbi8vLyAgIC5lbGVtZW50IHtcbi8vLyAgICAgYm9yZGVyLWJvdHRvbS1zdHlsZTogZG90dGVkO1xuLy8vICAgICBib3JkZXItdG9wLXN0eWxlOiBkb3R0ZWQ7XG4vLy8gICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4vLy8gICAgIG1hcmdpbi1sZWZ0OiAwO1xuLy8vICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4vLy8gICB9XG4vLy9cbi8vLyBAcmVxdWlyZSB7ZnVuY3Rpb259IGNvbnRhaW5zLWZhbHN5XG4vLy9cbi8vLyBAcmV0dXJuIHtMaXN0fVxuXG5AZnVuY3Rpb24gY29sbGFwc2UtZGlyZWN0aW9uYWxzKCR2YWxzKSB7XG4gIEBpZiAkb3V0cHV0LWJvdXJib24tZGVwcmVjYXRpb24td2FybmluZ3MgPT0gdHJ1ZSB7XG4gICAgQHdhcm4gXCJbQm91cmJvbl0gW0RlcHJlY2F0aW9uXSBgY29sbGFwc2UtZGlyZWN0aW9uYWxzYCBpcyBkZXByZWNhdGVkIGFuZCBcIiArXG4gICAgXCJ3aWxsIGJlIHJlbW92ZWQgaW4gNS4wLjAuXCI7XG4gIH1cblxuICAkb3V0cHV0OiBudWxsO1xuXG4gICRhOiBudGgoJHZhbHMsIDEpO1xuICAkYjogaWYobGVuZ3RoKCR2YWxzKSA8IDIsICRhLCBudGgoJHZhbHMsIDIpKTtcbiAgJGM6IGlmKGxlbmd0aCgkdmFscykgPCAzLCAkYSwgbnRoKCR2YWxzLCAzKSk7XG4gICRkOiBpZihsZW5ndGgoJHZhbHMpIDwgMiwgJGEsIG50aCgkdmFscywgaWYobGVuZ3RoKCR2YWxzKSA8IDQsIDIsIDQpKSk7XG5cbiAgQGlmICRhID09IDAgeyAkYTogMDsgfVxuICBAaWYgJGIgPT0gMCB7ICRiOiAwOyB9XG4gIEBpZiAkYyA9PSAwIHsgJGM6IDA7IH1cbiAgQGlmICRkID09IDAgeyAkZDogMDsgfVxuXG4gIEBpZiAkYSA9PSAkYiBhbmQgJGEgPT0gJGMgYW5kICRhID09ICRkIHsgJG91dHB1dDogJGE7ICAgICAgICAgIH1cbiAgQGVsc2UgaWYgJGEgPT0gJGMgYW5kICRiID09ICRkICAgICAgICAgeyAkb3V0cHV0OiAkYSAkYjsgICAgICAgfVxuICBAZWxzZSBpZiAkYiA9PSAkZCAgICAgICAgICAgICAgICAgICAgICB7ICRvdXRwdXQ6ICRhICRiICRjOyAgICB9XG4gIEBlbHNlICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsgJG91dHB1dDogJGEgJGIgJGMgJGQ7IH1cblxuICBAcmV0dXJuICRvdXRwdXQ7XG59XG5cbi8vLyBPdXRwdXQgZGlyZWN0aW9uYWwgcHJvcGVydGllcywgZm9yIGluc3RhbmNlIGBtYXJnaW5gLlxuLy8vXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy9cbi8vLyBAcGFyYW0ge1N0cmluZ30gJHByZVxuLy8vICAgUHJlZml4IHRvIHVzZVxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkc3VmXG4vLy8gICBTdWZmaXggdG8gdXNlXG4vLy8gQHBhcmFtIHtMaXN0fSAkdmFsc1xuLy8vICAgTGlzdCBvZiB2YWx1ZXNcbi8vL1xuLy8vIEByZXF1aXJlIHtmdW5jdGlvbn0gY29sbGFwc2UtZGlyZWN0aW9uYWxzXG4vLy8gQHJlcXVpcmUge2Z1bmN0aW9ufSBjb250YWlucy1mYWxzeVxuXG5AbWl4aW4gZGlyZWN0aW9uYWwtcHJvcGVydHkoJHByZSwgJHN1ZiwgJHZhbHMpIHtcbiAgQGluY2x1ZGUgX2JvdXJib24tZGVwcmVjYXRlKFwiZGlyZWN0aW9uYWwtcHJvcGVydHlcIik7XG5cbiAgJHVzZXItZGVwcmVjYXRpb24td2FybmluZ3Mtc2V0dGluZzogJG91dHB1dC1ib3VyYm9uLWRlcHJlY2F0aW9uLXdhcm5pbmdzO1xuICAkb3V0cHV0LWJvdXJib24tZGVwcmVjYXRpb24td2FybmluZ3M6IGZhbHNlICFnbG9iYWw7XG5cbiAgLy8gUHJvcGVydHkgTmFtZXNcbiAgJHRvcDogICAgJHByZSArIFwiLXRvcFwiICAgICsgaWYoJHN1ZiwgXCItI3skc3VmfVwiLCBcIlwiKTtcbiAgJGJvdHRvbTogJHByZSArIFwiLWJvdHRvbVwiICsgaWYoJHN1ZiwgXCItI3skc3VmfVwiLCBcIlwiKTtcbiAgJGxlZnQ6ICAgJHByZSArIFwiLWxlZnRcIiAgICsgaWYoJHN1ZiwgXCItI3skc3VmfVwiLCBcIlwiKTtcbiAgJHJpZ2h0OiAgJHByZSArIFwiLXJpZ2h0XCIgICsgaWYoJHN1ZiwgXCItI3skc3VmfVwiLCBcIlwiKTtcbiAgJGFsbDogICAgJHByZSArICAgICAgICAgICAgIGlmKCRzdWYsIFwiLSN7JHN1Zn1cIiwgXCJcIik7XG5cbiAgJHZhbHM6IGNvbGxhcHNlLWRpcmVjdGlvbmFscygkdmFscyk7XG5cbiAgQGlmIGNvbnRhaW5zLWZhbHN5KCR2YWxzKSB7XG4gICAgQGlmIG50aCgkdmFscywgMSkgeyAjeyR0b3B9OiBudGgoJHZhbHMsIDEpOyB9XG5cbiAgICBAaWYgbGVuZ3RoKCR2YWxzKSA9PSAxIHtcbiAgICAgIEBpZiBudGgoJHZhbHMsIDEpIHsgI3skcmlnaHR9OiBudGgoJHZhbHMsIDEpOyB9XG4gICAgfSBAZWxzZSB7XG4gICAgICBAaWYgbnRoKCR2YWxzLCAyKSB7ICN7JHJpZ2h0fTogbnRoKCR2YWxzLCAyKTsgfVxuICAgIH1cblxuICAgIEBpZiBsZW5ndGgoJHZhbHMpID09IDIge1xuICAgICAgQGlmIG50aCgkdmFscywgMSkgeyAjeyRib3R0b219OiBudGgoJHZhbHMsIDEpOyB9XG4gICAgICBAaWYgbnRoKCR2YWxzLCAyKSB7ICN7JGxlZnR9OiAgIG50aCgkdmFscywgMik7IH1cbiAgICB9IEBlbHNlIGlmIGxlbmd0aCgkdmFscykgPT0gMyB7XG4gICAgICBAaWYgbnRoKCR2YWxzLCAzKSB7ICN7JGJvdHRvbX06IG50aCgkdmFscywgMyk7IH1cbiAgICAgIEBpZiBudGgoJHZhbHMsIDIpIHsgI3skbGVmdH06ICAgbnRoKCR2YWxzLCAyKTsgfVxuICAgIH0gQGVsc2UgaWYgbGVuZ3RoKCR2YWxzKSA9PSA0IHtcbiAgICAgIEBpZiBudGgoJHZhbHMsIDMpIHsgI3skYm90dG9tfTogbnRoKCR2YWxzLCAzKTsgfVxuICAgICAgQGlmIG50aCgkdmFscywgNCkgeyAjeyRsZWZ0fTogICBudGgoJHZhbHMsIDQpOyB9XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICAjeyRhbGx9OiAkdmFscztcbiAgfVxuXG4gICRvdXRwdXQtYm91cmJvbi1kZXByZWNhdGlvbi13YXJuaW5nczogJHVzZXItZGVwcmVjYXRpb24td2FybmluZ3Mtc2V0dGluZyAhZ2xvYmFsO1xufVxuIiwiLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gSWNvbnNcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gU29jaWFsIGljb25zIDx1bD5cbi5zb2NpYWwtaWNvbnMge1xuXHRAaW5jbHVkZSBjbGVhcmZpeDtcblx0QGluY2x1ZGUgbGlzdC1yZXNldDtcblxuXHRkaXNwbGF5OiBub25lO1xuXHRwYWRkaW5nOiByZW0oNikgcmVtKDQpIHJlbSgzKTtcblxuXHRAaW5jbHVkZSBtZWRpYSgkdGFibGV0LWxhbmRzY2FwZSkge1xuXHRcdEBpbmNsdWRlIHBvc2l0aW9uKGFic29sdXRlLCBudWxsIDAgbnVsbCBudWxsKTtcblxuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHR9XG5cblx0QGluY2x1ZGUgbWVkaWEoJHRhYmxldC1wb3J0cmFpdCkge1xuXHRcdHBhZGRpbmc6IHJlbSg5KSByZW0oMTUpIHJlbSg1KTtcblx0fVxuXG5cdC5maXhlZC1oZWFkZXIgJiB7XG5cdFx0QGluY2x1ZGUgbWVkaWEoJHRhYmxldC1sYW5kc2NhcGUpIHtcblx0XHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0fVxuXHR9IC8vIC5maXhlZC1oZWFkZXIgJlxuXG5cdC8vIEVhY2ggaWNvbiA8bGk+XG5cdC5zb2NpYWwtaWNvbiB7XG5cdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG5cdFx0QGluY2x1ZGUgbWVkaWEoJHRhYmxldC1wb3J0cmFpdCkge1xuXHRcdFx0cGFkZGluZzogcmVtKDQpO1xuXHRcdH1cblxuXHRcdC8vIExvb3AgdGhyb3VnaCBhbGwgc29jaWFsIGljb25zXG5cdFx0QGVhY2ggJHNvY2lhbC1jb2xvciwgJGNvbG9yIGluICRzb2NpYWwtY29sb3JzIHtcblxuXHRcdFx0Ly8gU2V0IHN0eWxlcyBvbiB0aG9zZSBzb2NpYWwgaWNvbnMhXG5cdFx0XHQuaWNvbi0jeyRzb2NpYWwtY29sb3J9IHtcblx0XHRcdFx0QGluY2x1ZGUgc2l6ZShyZW0oMzApIHJlbSgzMCkpO1xuXG5cdFx0XHRcdGZpbGw6ICRjb2xvci13aGl0ZTtcblx0XHRcdFx0cGFkZGluZzogcmVtKDYpOyAvLyBQYWRkaW5nIHRvIGFkanVzdCB0aGUgc2l6ZSB0byBiZSBpbi1saW5lIHdpdGggdGhlIHNtYWxsZXIgUlNTIGljb24uXG5cblx0XHRcdFx0QGluY2x1ZGUgbWVkaWEoJHRhYmxldC1sYW5kc2NhcGUpIHtcblx0XHRcdFx0XHRAaW5jbHVkZSBzaXplKHJlbSgzOSkgcmVtKDM5KSk7XG5cdFx0XHRcdH1cblxuXHRcdFx0XHQuZm9vdGVyLXRvcCAmIHtcblx0XHRcdFx0XHRAaW5jbHVkZSBzaXplKHJlbSg2NikgcmVtKDY2KSk7XG5cblx0XHRcdFx0XHRwYWRkaW5nOiByZW0oMTEpOyAvLyBQYWRkaW5nIHRvIGFkanVzdCB0aGUgc2l6ZSB0byBiZSBpbi1saW5lIHdpdGggdGhlIHNtYWxsZXIgUlNTIGljb24uXG5cdFx0XHRcdH0gLy8gLmZvb3Rlci10b3AgJlxuXG5cdFx0XHRcdCY6aG92ZXIge1xuXHRcdFx0XHRcdGZpbGw6ICRjb2xvcjtcblx0XHRcdFx0fSAvLyAmOmhvdmVyXG5cdFx0XHR9IC8vIC5pY29uLSN7JHNvY2lhbC1jb2xvcn1cblx0XHR9IC8vIGVuZCBlYWNoIGxvb3BcblxuXHRcdC8vIFRoZSBSU1MgU1ZHIGlzIGRpZmZlcmVudCBpbiBzaXplIGFuZCBkb2Vzbid0IG5lZWQgdGhpcyBwYWRkaW5nLlxuXHRcdC5pY29uLXJzcyxcblx0XHQuZm9vdGVyLXRvcCAmIC5pY29uLXJzcyB7XG5cdFx0XHRwYWRkaW5nOiAwO1xuXHRcdH0gLy8gLmljb24tcnNzLCAuZm9vdGVyLXRvcCAuaWNvbi1yc3NcblxuXHRcdC5mb290ZXItdG9wICYge1xuXHRcdFx0bWFyZ2luLXJpZ2h0OiByZW0oMTYpO1xuXHRcdH0gLy8gLmZvb3Rlci10b3AgJlxuXG5cdFx0Ly8gTm8gbWFyZ2luIGZvciB0aGUgbGFzdCA8bGk+IGl0ZW1cblx0XHQmOmxhc3QtY2hpbGQsXG5cdFx0LmZvb3Rlci10b3AgJjpsYXN0LWNoaWxkIHtcblx0XHRcdG1hcmdpbi1yaWdodDogMDtcblx0XHR9IC8vICY6bGFzdC1jaGlsZCwgLmZvb3Rlci10b3AgJjpsYXN0LWNoaWxkXG5cblx0XHQvLyBEb24ndCBuZWVkIHRoZSBib3JkZXIgdGhhdCBpcyBzZXQgYnkgdGhlIGdsb2JhbCA8YT4gc3R5bGUuXG5cdFx0YSB7XG5cdFx0XHRib3JkZXItYm90dG9tOiBub25lO1xuXHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRoZWlnaHQ6IHJlbSgzOSk7XG5cdFx0fSAvLyBhXG5cdH0gLy8gLnNvY2lhbC1pY29uXG59IC8vIC5zb2NpYWwtaWNvbnNcblxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gSW5saW5lIENTUyBmcm9tIGFycm93IGljb25zLCBjb2xvdXIgd2lsbCBwcm9iYWJseSBuZWVkIHRvIGJlIGFkanVzdGVkIGV2ZW50dWFsbHkuXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4uaWNvbi1sZWZ0LWFycm93LFxuLmljb24tcmlnaHQtYXJyb3csXG4uaWNvbi1uYXYtYXJyb3cge1xuXHRmaWxsOiBub25lO1xuXHRzdHJva2U6ICRjb2xvci1ibGFjaztcblx0c3Ryb2tlLWxpbmVjYXA6IHJvdW5kO1xuXHRzdHJva2UtbGluZWpvaW46IHJvdW5kO1xuXHRzdHJva2UtbWl0ZXJsaW1pdDogMTA7XG59IC8vIC5pY29uLWxlZnQtYXJyb3csIC5pY29uLXJpZ2h0LWFycm93LCAuaWNvbi1uYXYtYXJyb3dcblxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gQmFycyBpY29uIHRoYXQgZ29lcyB3aXRoIHRoZSBcIk1vcmVcIiBsaW5rIG9uIHRoZSBtb2JpbGUgbmF2LlxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLm1vcmUtaWNvbiB7XG5cdEBpbmNsdWRlIHNpemUocmVtKDE2KSByZW0oMTcpKTtcblxuXHRiYWNrZ3JvdW5kOiB1cmwoXCJhc3NldHMvaW1hZ2VzL3N2Zy1pY29ucy9iYXJzLnN2Z1wiKSBuby1yZXBlYXQ7XG5cdGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xufSAvLyAubW9yZS1pY29uXG4iLCIvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBMaXN0IFJlc2V0XG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vLy9cbi8vLyBAYXV0aG9yIEdyZWcgUmlja2FieVxuLy8vIEBncm91cCB3ZHNcbi8vLy9cblxuLy8vIFJlc2V0IGFsbCBwYWRkaW5nIGFuZCBzdHlsZXMgb24gYm90aCB1bm9yZGVyZWQgYW5kIG9yZGVyZWQgbGlzdHMuXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gQmFzaWMgVXNhZ2UgU2Fzc1xuLy8vICAgIC5mb28tbGlzdCB7XG4vLy8gICAgICAgIEBpbmNsdWRlIGxpc3QtcmVzZXQ7XG4vLy8gICAgfVxuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIEJhc2ljIFVzYWdlIENTUyBPdXRwdXRcbi8vLyAgICAuZm9vLWxpc3Qge1xuLy8vICAgICAgICAgY2xlYXI6IGJvdGg7XG4vLy9cdFx0XHRjb250ZW50OiBcIlwiO1xuLy8vXHRcdFx0ZGlzcGxheTogdGFibGU7XG4vLy8gICAgICAgIFx0bWFyZ2luOiAwO1xuLy8vICAgICAgICBcdHBhZGRpbmc6IDA7XG4vLy8gICAgICAgIFx0bGlzdC1zdHlsZTogbm9uZTtcbi8vL1xuLy8vICAgIH1cblxuQG1peGluIGxpc3QtcmVzZXQge1xuXHRAaW5jbHVkZSBjbGVhcmZpeDtcblx0QGluY2x1ZGUgbWFyZ2luLXBhZGRpbmctcmVzZXQ7XG5cblx0bGlzdC1zdHlsZTogbm9uZTtcbn1cbiIsIi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIE1vYmlsZSBOYXZpZ2F0aW9uXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gQm9keVxuLy8gLSBBZGQgcGFkZGluZyB0byBib3R0b20gb2YgcGFnZSB0byBjb21wZW5zYXRlIGZvciBtb2JpbGUgbWVudVxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLmZvb3Rlci1ib3R0b20ge1xuXHRwYWRkaW5nLWJvdHRvbTogcmVtKDcwKTtcblxuXHQvLyBBdCA1MDAgd2lkdGgsIHRoZSBsb2dvIGFuZCBzZWFyY2ggYm94IGFyZSBhZGRlZC5cblx0QGluY2x1ZGUgbWVkaWEoJGJyZWFrcG9pbnQtNTAwKSB7XG5cdFx0cGFkZGluZy1ib3R0b206IHJlbSgxNjIpO1xuXHR9XG5cblx0Ly8gQXQgMTAyNCB3aWR0aCwgdGhlIG1lbnUgZGlzYXBwZWFycyBhbmQgbm8gbW9yZSBwYWRkaW5nIGlzIG5lZWRlZC5cblx0QGluY2x1ZGUgbWVkaWEoJHRhYmxldC1sYW5kc2NhcGUpIHtcblx0XHRwYWRkaW5nLWJvdHRvbTogMDtcbiB9XG59IC8vIC5zaXRlLWZvb3RlclxuXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBNb2JpbGUgTmF2IG1lbnVcbi8vIC0gZml4IHRoZSBtZW51IHRvIHRoZSBib3R0b20gb2YgdGhlIHdpbmRvd1xuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLm1vYmlsZS1uYXYtbWVudSB7XG5cdEBpbmNsdWRlIHBvc2l0aW9uKGZpeGVkLCBudWxsIG51bGwgMCAwKTtcblx0QGluY2x1ZGUgc2l6ZSgwIDEwMCUpO1xuXHRAaW5jbHVkZSB0cmFuc2l0aW9uKGJhY2tncm91bmQtY29sb3IgMC4ycyBsaW5lYXIsIHdpZHRoIDAuMnMgbGluZWFyKTtcblxuXHRiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRjb2xvci1ibGFjaywgMCk7XG5cdGRpc3BsYXk6IGJsb2NrO1xuXHR6LWluZGV4OiAxMDA7XG5cblx0Ly8gRG9uJ3Qgc2hvdyB0aGlzIHB1cHB5IGFib3ZlIHRhYmxldC1sYW5kc2NhcGVcblx0QGluY2x1ZGUgbWVkaWEoJHRhYmxldC1sYW5kc2NhcGUpIHtcblx0XHRkaXNwbGF5OiBub25lO1xuXHR9XG5cblx0Ly8gQWRkIGEgYmFja2dyb3VuZCBjb2xvciB0byB0aGUgbWVudSB3aGVuIHRoZSBcIk1vcmVcIiBpdGVtcyBhcmUgZGlzcGxheWVkXG5cdCYubW9yZSB7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogcmdiYSgkY29sb3ItYmxhY2ssIDAuNyk7XG5cdH0gLy8gJi5tb3JlXG5cblx0Ji5tb3JlLFxuXHQuc3ViLW1lbnUge1xuXHRcdHdpZHRoOiAxMDAlO1xuXHR9IC8vICYubW9yZSwgLnN1Yi1tZW51XG5cblx0LnN1Yi1tZW51IHtcblx0XHRAaW5jbHVkZSB0cmFuc2l0aW9uKG9wYWNpdHkgMC41cyBsaW5lYXIpO1xuXHR9IC8vIC5zdWItbWVudVxuXG5cdC8vIEFkanVzdCBwYWRkaW5nIGZvciBhZG1pbiBiYXJcblx0LmFkbWluLWJhciAmIHtcblx0XHRwYWRkaW5nLXRvcDogcmVtKDU2KTtcblxuXHRcdEBpbmNsdWRlIG1lZGlhKCR3cC1hZG1pbi1iYXIpIHtcblx0XHRcdHBhZGRpbmctdG9wOiByZW0oNDApO1xuXHRcdH1cblx0fSAvLyAuYWRtaW4tYmFyICZcblxuXHRsaSB7XG5cdFx0Y3Vyc29yOiBwb2ludGVyO1xuXHR9IC8vIGxpXG59IC8vIC5tb2JpbGUtbmF2LW1lbnVcblxuXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBNb2JpbGUgbmF2IG1lbnUgaXRlbXNcbi8vIC0gUmVtb3ZlIG1hcmdpbnMgZnJvbSBhbGwgbWVudSBpdGVtc1xuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLm1vYmlsZS1uYXYtbWVudSB7XG5cblx0Ly8gT25seSB0YXJnZXQgdGhlIHBhcmVudCBtZW51XG5cdC5tb2JpbGUtbmF2IHtcblxuXHRcdC8vIE9ubHkgdGFyZ2V0IHRvcC1sZXZlbCBpdGVtc1xuXHRcdD4gbGkge1xuXHRcdFx0ZmxleDogMSAwIDIwJTtcblx0XHRcdG1hcmdpbjogMDtcblxuXHRcdFx0YSB7XG5cdFx0XHRcdHBhZGRpbmc6IDA7XG5cblx0XHRcdFx0QGluY2x1ZGUgbWVkaWEoJHBob25lLWxhbmRzY2FwZSkge1xuXHRcdFx0XHRcdHBhZGRpbmc6IDAgcmVtKDUpO1xuXHRcdFx0XHR9XG5cdFx0XHR9IC8vIGFcblx0XHR9IC8vID4gbGlcblx0fSAvLyAubW9iaWxlLW5hdlxufSAvLyAubW9iaWxlLW5hdi1tZW51XG5cblxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gTW9iaWxlIG5hdiBtZW51IGl0ZW1zXG4vLyAtIE1ha2Ugc3VyZSB0aGUgZmlyc3QgZm91ciBpdGVtcyBhcmUgZXF1YWwgd2lkdGhzXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4ubW9iaWxlLW5hdi1tZW51IHtcblxuXHQvLyBPbmx5IHRhcmdldCB0aGUgcGFyZW50IG1lbnVcblx0Lm1vYmlsZS1uYXYge1xuXHRcdEBpbmNsdWRlIHBvc2l0aW9uKGZpeGVkLCBudWxsIG51bGwgbnVsbCBudWxsKTtcblx0XHRAaW5jbHVkZSBzaXplKDEwMHZ3IHJlbSg2NCkpO1xuXG5cdFx0YWxpZ24taXRlbXM6IGZsZXgtZW5kO1xuXHRcdGJvdHRvbTogMCAhaW1wb3J0YW50OyAvLyBTdW1vTWUgc2V0cyBpbmxpbmUgc3R5bGUgb24gbG9hZCB0byBtYWtlIHJvb20gZm9yIGl0cyBzaGFyZSBqdW5rLiA6L1xuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXHRcdHRyYW5zaXRpb246IGJvdHRvbSAwLjc1cyBlYXNlLWluLW91dDtcblxuXHRcdC8vIE9ubHkgdGFyZ2V0IHRvcC1sZXZlbCBpdGVtc1xuXHRcdD4gbGk6bnRoLWNoaWxkKC1uKzUpIHtcblx0XHRcdEBpbmNsdWRlIHRyYW5zaXRpb24ob3BhY2l0eSAwLjVzIGVhc2UpO1xuXG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3Itc2xhdGU7XG5cdFx0XHRib3JkZXItdG9wOiAxcHggc29saWQgcmdiYSgkY29sb3ItYmxhY2ssIDAuMSk7XG5cdFx0XHRmbGV4OiAxO1xuXHRcdFx0aGVpZ2h0OiByZW0oNjkpO1xuXHRcdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXG5cdFx0XHQ+IGEge1xuXHRcdFx0XHRjb2xvcjogJGNvbG9yLXdoaXRlO1xuXHRcdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdFx0Zm9udC1mYW1pbHk6ICRmb250LXNhbnM7XG5cdFx0XHRcdGZvbnQtc2l6ZTogcmVtKDE4KTtcblx0XHRcdFx0Zm9udC1zdHlsZTogbm9ybWFsO1xuXHRcdFx0XHRmb250LXdlaWdodDogNjAwO1xuXHRcdFx0XHRoZWlnaHQ6IDEwMCU7XG5cdFx0XHRcdGxpbmUtaGVpZ2h0OiAxLjI7XG5cdFx0XHRcdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cblx0XHRcdFx0QGluY2x1ZGUgbWVkaWEoJHBob25lLWxhbmRzY2FwZSkge1xuXHRcdFx0XHRcdGZvbnQtc2l6ZTogcmVtKDI2KTtcblx0XHRcdFx0fVxuXG5cdFx0XHRcdHNwYW4ge1xuXHRcdFx0XHRcdEBpbmNsdWRlIHZlcnRpY2FsLWFsaWduKG1pZGRsZSk7XG5cblx0XHRcdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdFx0fSAvLyBzcGFuXG5cdFx0XHR9IC8vID4gYVxuXHRcdH0gLy8gPiBsaTpudGgtY2hpbGQoLW4rNSlcblxuXHRcdC50YXBiYXItaGlkZGVuICYge1xuXHRcdFx0Ym90dG9tOiAtMTAwJSAhaW1wb3J0YW50OyAvLyBTdW1vTWUgc2V0cyBpbmxpbmUgc3R5bGUgb24gbG9hZCB0byBtYWtlIHJvb20gZm9yIGl0cyBzaGFyZSBqdW5rLiA6L1xuXHRcdH0gLy8gLnRhcGJhci1oaWRkZW4gJlxuXG5cdH0gLy8gLm1vYmlsZS1uYXZcbn0gLy8gLm1vYmlsZS1uYXYtbWVudVxuXG5cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIE1vYmlsZSBuYXYgbWVudSBpdGVtc1xuLy8gLSBBZGp1c3Qgc2l6ZSBvZiB0aGUgbW9yZSBsaW5rIHRvIGNvbXBlbnNhdGUgZm9yIGJhcnMgaWNvblxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLm1vYmlsZS1tZW51LW1vcmUtbGluayB7XG5cdG1pbi13aWR0aDogcmVtKDg1KTtcblxuXHRzcGFuIHtcblxuXHRcdEBpbmNsdWRlIG1lZGlhKCRwaG9uZS1sYW5kc2NhcGUpIHtcblx0XHRcdG1pbi13aWR0aDogcmVtKDE0NSk7XG5cdFx0XHRwYWRkaW5nLXJpZ2h0OiAwO1xuXHRcdH1cblxuXHRcdC5tb3JlLWljb24ge1xuXHRcdFx0QGluY2x1ZGUgcG9zaXRpb24ocmVsYXRpdmUsIHJlbSgzKSAwIG51bGwgbnVsbCk7XG5cblx0XHRcdEBpbmNsdWRlIG1lZGlhKCRwaG9uZS1sYW5kc2NhcGUpIHtcblx0XHRcdFx0QGluY2x1ZGUgc2l6ZShyZW0oMzYpIHJlbSgyNSkpO1xuXG5cdFx0XHRcdHRvcDogcmVtKDQpO1xuXHRcdFx0fVxuXHRcdH0gLy8gLm1vcmUtaWNvblxuXHR9IC8vIHNwYW5cbn0gLy8gLm1vYmlsZS1tZW51LW1vcmUtbGlua1xuXG5cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIE1vYmlsZSBuYXYgbWVudSBpdGVtc1xuLy8gLSBIaWRlIGFueXRoaW5nIG1vcmUgdGhhbiB0aGUgZmlyc3QgZm91ciBpdGVtc1xuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLm1vYmlsZS1uYXYtbWVudS1oaWRkZW4ge1xuXHRAaW5jbHVkZSBwb3NpdGlvbihhYnNvbHV0ZSwgMCAwIG51bGwgbnVsbCk7XG5cdEBpbmNsdWRlIHRyYW5zaXRpb24ob3BhY2l0eSAwLjVzIGxpbmVhcik7XG5cblx0ZGlzcGxheTogYmxvY2s7XG5cdG1heC1oZWlnaHQ6IGNhbGMoMTAwJSAtIDcwcHgpO1xuXHRvcGFjaXR5OiAwO1xuXHRvdmVyZmxvdzogYXV0bztcblx0cGFkZGluZzogcmVtKDg0KSAwO1xuXHR2aXNpYmlsaXR5OiBoaWRkZW47XG5cdHdpZHRoOiAxMDAlO1xuXHR6LWluZGV4OiAtMTtcbn0gLy8gLm1vYmlsZS1uYXYtbWVudS1oaWRkZW5cblxuXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBNb2JpbGUgbmF2IGZseS1pbiBtZW51XG4vLyAtIEZpeCBzY3JvbGxpbmcgb24gdGhlIGVudGlyZSBib2R5IHdoZW4gdGhlIG1vcmUgbWVudSBpcyB2aXNpYmxlXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4ubW9iaWxlLW1lbnUtbW9yZSB7XG5cdG92ZXJmbG93OiBoaWRkZW47XG59IC8vIC5tb2JpbGUtbWVudS1tb3JlXG5cblxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gTW9iaWxlIG5hdiBmbHktaW4gbWVudVxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLm1vYmlsZS1uYXYtbWVudSAubW9iaWxlLW5hdiAubW9iaWxlLW5hdi1tZW51LW1vcmUsXG4ubW9iaWxlLW5hdi1tZW51IC5tb2JpbGUtbmF2ID4gLnN1Yi1tZW51IHtcblx0QGluY2x1ZGUgcG9zaXRpb24oYWJzb2x1dGUsIDAgbnVsbCBudWxsIDApO1xuXG5cdGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1ncmF5O1xuXHRoZWlnaHQ6IDEwMHZoO1xufSAvLyAubW9iaWxlLW5hdi1tZW51IC5tb2JpbGUtbmF2IHVsLm1vYmlsZS1uYXYtbWVudS1tb3JlLCAubW9iaWxlLW5hdi1tZW51IC5tb2JpbGUtbmF2ID4gLnN1Yi1tZW51XG5cblxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gTW9iaWxlIG5hdiBmbHktaW4gbWVudVxuLy8gLSBTaG93IGhpZGRlbiBtb2JpbGUgbmF2IG1lbnVcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi5tb2JpbGUtbWVudS1tb3JlOm5vdCguc3ViLW1lbnUtbW9yZSkge1xuXG5cdC5tb2JpbGUtbmF2LW1lbnUtaGlkZGVuIHtcblx0XHRvcGFjaXR5OiAxO1xuXHR9IC8vIC5tb2JpbGUtbmF2LW1lbnUtaGlkZGVuXG59IC8vIC5tb2JpbGUtbWVudS1tb3JlOm5vdCguc3ViLW1lbnUtbW9yZSlcblxuXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBNb2JpbGUgbmF2IGZseS1pbiBtZW51XG4vLyAtIFNob3cgdGhlIHJlbWFpbmluZyBtZW51IGl0ZW1zIHdoZW4gdGhlIFwiLm1vcmVcIiBjbGFzcyBpcyBhY3RpdmVcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi5tb2JpbGUtbmF2LW1lbnUubW9yZSB7XG5cblx0Lm1vYmlsZS1uYXYtbWVudS1oaWRkZW4ge1xuXHRcdHZpc2liaWxpdHk6IHZpc2libGU7XG5cblx0XHRsaSB7XG5cdFx0XHRAaW5jbHVkZSBwb3NpdGlvbihyZWxhdGl2ZSwgbnVsbCAwIDAgbnVsbCk7XG5cblx0XHRcdGNsZWFyOiBib3RoO1xuXHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRmbG9hdDogcmlnaHQ7XG5cdFx0XHRtYXJnaW46IDA7XG5cdFx0XHR3aWR0aDogMTAwJTtcblxuXHRcdFx0LnN1Yi1tZW51IHtcblx0XHRcdFx0b3BhY2l0eTogMTtcblx0XHRcdFx0cGFkZGluZy1sZWZ0OiAxMCU7XG5cdFx0XHR9IC8vIC5zdWItbWVudVxuXG5cdFx0XHQuc3ViLW1lbnUtbW9yZSAmIHtcblx0XHRcdFx0ZGlzcGxheTogbm9uZTtcblx0XHRcdH0gLy8gLnN1Yi1tZW51LW1vcmUgJlxuXG5cdFx0XHRhIHtcblx0XHRcdFx0Y29sb3I6ICRjb2xvci13aGl0ZTtcblx0XHRcdFx0Zm9udC1mYW1pbHk6ICRmb250LXNhbnM7XG5cdFx0XHRcdGZvbnQtc2l6ZTogcmVtKDIwKTtcblx0XHRcdFx0Zm9udC1zdHlsZTogbm9ybWFsO1xuXHRcdFx0XHRmb250LXdlaWdodDogNjAwO1xuXHRcdFx0XHRwYWRkaW5nOiByZW0oMTApIHJlbSgyMCk7XG5cdFx0XHR9IC8vIGFcblx0XHR9IC8vIGxpXG5cdH0gLy8gLm1vYmlsZS1uYXYtbWVudS1oaWRkZW5cbn0gLy8gLm1vYmlsZS1uYXYtbWVudS5tb3JlXG5cblxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gTW9iaWxlIG5hdiBmbHktaW4gbWVudVxuLy8gLSBTaG93IGhpZGRlbiBtb2JpbGUgbmF2IG1lbnVcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi5tb2JpbGUtbmF2LW1lbnUgLm1vYmlsZS1uYXYge1xuXG5cdHVsIHtcblx0XHRib3gtc2hhZG93OiBub25lO1xuXG5cdFx0Lm1vYmlsZS1tZW51LW1vcmU6bm90KC5zdWItbWVudS1tb3JlKSAmIHtcblx0XHRcdHRvcDogMDtcblx0XHR9IC8vIC5tb2JpbGUtbWVudS1tb3JlOm5vdCguc3ViLW1lbnUtbW9yZSkgJlxuXHR9IC8vIHVsXG59IC8vIC5tb2JpbGUtbmF2LW1lbnUgLm1vYmlsZS1uYXZcblxuXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBNb2JpbGUgbmF2IGZseS1pbiBtZW51XG4vLyAtIFN0eWxlIHRoZSBjbG9zZSBidXR0b25cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi5jbG9zZS1tb2JpbGUtbWVudSB7XG5cdEBpbmNsdWRlIHBvc2l0aW9uKGFic29sdXRlLCByZW0oMTApIHJlbSgxMikgbnVsbCBudWxsKTtcblx0QGluY2x1ZGUgc2l6ZShyZW0oMzIpKTtcblxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcblx0ZGlzcGxheTogbm9uZTtcblx0cGFkZGluZzogMDtcblx0ei1pbmRleDogMTtcblxuXHQuYWRtaW4tYmFyICYge1xuXHRcdHRvcDogcmVtKDU2KTtcblxuXHRcdEBpbmNsdWRlIG1lZGlhKCR3cC1hZG1pbi1iYXIpIHtcblx0XHRcdHRvcDogcmVtKDQwKTtcblx0XHR9XG5cdH0gLy8gLmFkbWluLWJhciAmXG5cblx0Ly8gR2V0IHJpZCBvZiB0aGF0IG5hc3R5IGhvdmVyIHN0YXRlXG5cdCY6aG92ZXIsXG5cdCY6YWN0aXZlLFxuXHQmOmZvY3VzIHtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcblxuXHRcdHN2ZyB7XG5cdFx0XHRvcGFjaXR5OiAwLjY7XG5cdFx0fSAvLyBzdmdcblx0fSAvLyAmOmhvdmVyLCAmOmFjdGl2ZSwgJjpmb2N1c1xuXG5cdC8vIE9ubHkgZGlzcGxheSB3aGVuIG1vcmUgaXRlbXMgYXJlIHZpc2libGVcblx0Lm1vcmUgJiB7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdH0gLy8gLm1vcmUgJlxuXG5cdHN2ZyB7XG5cdFx0QGluY2x1ZGUgc2l6ZSgxMDAlKTtcblx0XHRAaW5jbHVkZSB0cmFuc2l0aW9uKG9wYWNpdHkgMC41cyBlYXNlKTtcblxuXHRcdGZpbGw6ICRjb2xvci13aGl0ZTtcblx0fSAvLyBzdmdcbn0gLy8gLmNsb3NlLW1vYmlsZS1tZW51XG5cblxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gTW9iaWxlIG5hdiBmbHktaW4gbWVudVxuLy8gLSBEb24ndCBzaG93IHRoZSBzdWJtZW51IHdoZW4gd2UgaG92ZXIgdGhlIHBhcmVudFxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLm1vYmlsZS1uYXYuZHJvcGRvd24ge1xuXG5cdC5tZW51LWl0ZW0taGFzLWNoaWxkcmVuOmhvdmVyIHtcblxuXHRcdC5zdWItbWVudSB7XG5cdFx0XHRkaXNwbGF5OiBub25lO1xuXHRcdH0gLy8gLnN1Yi1tZW51XG5cdH0gLy8gLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW46aG92ZXJcblxuXHQubW9iaWxlLW1lbnUtbW9yZTpub3QoLnN1Yi1tZW51LW1vcmUpICYge1xuXG5cdFx0Lm1lbnUtaXRlbS1oYXMtY2hpbGRyZW46aG92ZXIge1xuXG5cdFx0XHQuc3ViLW1lbnUge1xuXHRcdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdFx0bGVmdDogYXV0bztcblx0XHRcdFx0b3BhY2l0eTogMTtcblx0XHRcdFx0cmlnaHQ6IDA7XG5cdFx0XHR9IC8vIC5zdWItbWVudVxuXHRcdH0gLy8gLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW46aG92ZXJcblx0fSAvLyAubW9iaWxlLW1lbnUtbW9yZTpub3QoLnN1Yi1tZW51LW1vcmUpICZcblxuXHQudmlzaWJsZSxcblx0LnZpc2libGU6aG92ZXIsXG5cdC52aXNpYmxlOmZvY3VzLFxuXHQudmlzaWJsZTphY3RpdmUge1xuXG5cdFx0LnN1Yi1tZW51IHtcblx0XHRcdEBpbmNsdWRlIHBvc2l0aW9uKGZpeGVkLCBhdXRvIDAgcmVtKDg0KSBhdXRvKTtcblxuXHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRvcGFjaXR5OiAxO1xuXHRcdFx0d2lkdGg6IDUwdnc7XG5cblx0XHRcdC5zdWItbWVudSB7XG5cdFx0XHRcdGJvdHRvbTogMDtcblxuXHRcdFx0XHRAaW5jbHVkZSBtZWRpYSgkdGFibGV0LXBvcnRyYWl0KSB7XG5cdFx0XHRcdFx0Ym90dG9tOiBhdXRvO1xuXHRcdFx0XHR9XG5cdFx0XHR9IC8vIC5zdWItbWVudVxuXHRcdH0gLy8gLnN1Yi1tZW51XG5cblx0XHQuc3ViLW1lbnUgLnN1Yi1tZW51IHtcblx0XHRcdHBhZGRpbmctbGVmdDogcmVtKDEwKTtcblx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHR9IC8vIC5zdWItbWVudSAuc3ViLW1lbnVcblx0fSAvLyAudmlzaWJsZSwgLnZpc2libGU6aG92ZXIsIC52aXNpYmxlOmZvY3VzLCAudmlzaWJsZTphY3RpdmVcbn0gLy8gLm1vYmlsZS1uYXYuZHJvcGRvd25cblxuXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBNb2JpbGUgbmF2IGZseS1pbiBtZW51XG4vLyAtIEFkanVzdCBsaW5rIGFuZCBhbmNob3Igc3R5bGVzIGZvciBzdWJtZW51c1xuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLm1vYmlsZS1uYXYuZHJvcGRvd24ge1xuXG5cdC5zdWItbWVudSB7XG5cdFx0bGVmdDogMDtcblx0XHRvcGFjaXR5OiAwO1xuXHRcdHdpZHRoOiA1MHZ3O1xuXHRcdHotaW5kZXg6IC0xO1xuXG5cdFx0YSB7XG5cdFx0XHRjb2xvcjogJGNvbG9yLXdoaXRlO1xuXHRcdFx0Zm9udC1zaXplOiByZW0oMTYpO1xuXHRcdFx0cGFkZGluZzogcmVtKDEwKSByZW0oMjApO1xuXHRcdFx0dGV4dC1hbGlnbjogbGVmdDtcblx0XHR9IC8vIGFcblxuXHRcdGxpIHtcblx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0ZmxvYXQ6IG5vbmU7XG5cdFx0XHRtYXJnaW46IDA7XG5cdFx0fSAvLyBsaVxuXG5cdFx0QGluY2x1ZGUgbWVkaWEoJHRhYmxldC1wb3J0cmFpdCkge1xuXHRcdFx0bGVmdDogYXV0bztcblx0XHRcdHJpZ2h0OiAwO1xuXHRcdH1cblx0fSAvLyAuc3ViLW1lbnVcbn0gLy8gLm1vYmlsZS1uYXYuZHJvcGRvd25cblxuXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBNb2JpbGUgbmF2IGZseS1pbiBtZW51XG4vLyAtIEFkanVzdCBzdWJtZW51IHotaW5kZXggd2hlbiBwYXJlbnQgaXMgdmlzaWJsZVxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLm1vYmlsZS1uYXYuZHJvcGRvd24gLnZpc2libGUge1xuXG5cdC8vIEFkanVzdCB6LWluZGV4IHdoZW4gdmlzaWJsZVxuXHQuc3ViLW1lbnUge1xuXHRcdHotaW5kZXg6IDE7XG5cdH0gLy8gLnN1Yi1tZW51XG59IC8vIC5tb2JpbGUtbmF2LmRyb3Bkb3duIC52aXNpYmxlXG5cblxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gU2Nyb2xsIGluZGljYXRvclxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLm1vYmlsZS1uYXYtbWVudS1oaWRkZW4ge1xuXHQmOjphZnRlciB7XG5cdFx0QGluY2x1ZGUgcG9zaXRpb24oZml4ZWQsIG51bGwgcmVtKDE1KSByZW0oNzUpIG51bGwpO1xuXHRcdEBpbmNsdWRlIHRyYW5zaXRpb24ob3BhY2l0eSAwLjE4cyBlYXNlLWluLW91dCk7XG5cblx0XHRib3JkZXItbGVmdDogcmVtKDEwKSBzb2xpZCB0cmFuc3BhcmVudDtcblx0XHRib3JkZXItcmlnaHQ6IHJlbSgxMCkgc29saWQgdHJhbnNwYXJlbnQ7XG5cdFx0Ym9yZGVyLXRvcDogcmVtKDEwKSBzb2xpZCAkY29sb3Itd2hpdGU7XG5cdFx0Y29udGVudDogXCJcIjtcblx0XHRvcGFjaXR5OiAwO1xuXHR9IC8vICY6OmFmdGVyXG5cblx0Ji5zY3JvbGw6OmFmdGVyIHtcblx0XHRvcGFjaXR5OiAxO1xuXHR9XG59IC8vIC5tb2JpbGUtbmF2LW1lbnUtaGlkZGVuXG5cblxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gQWRkIHN0eWxlcyBmb3Igbm9uLUpTIHVzZXJzXG4vLyAtIEFkZCBhIGhvcml6b250YWwgc2Nyb2xsIGFuZCBmYWRlZCBlZGdlc1xuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLm5vLWpzIHtcblxuXHQmLmFkbWluLWJhciB7XG5cblx0XHQubW9iaWxlLW5hdi1tZW51IHtcblx0XHRcdHBhZGRpbmctdG9wOiAwO1xuXHRcdH0gLy8gLm1vYmlsZS1uYXYtbWVudVxuXHR9IC8vICYuYWRtaW4tYmFyXG5cblx0Lm1vYmlsZS1uYXYtbWVudSB7XG5cdFx0QGluY2x1ZGUgc2l6ZSgxMDAlIHJlbSg2NCkpO1xuXG5cdFx0LW1zLW92ZXJmbG93LXN0eWxlOiAtbXMtYXV0b2hpZGluZy1zY3JvbGxiYXI7XG5cdFx0LXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuXHRcdGJvdHRvbTogMDtcblx0XHRmb250LXNpemU6IDA7XG5cdFx0b3ZlcmZsb3cteDogYXV0bztcblx0XHR0b3A6IGF1dG87XG5cdFx0d2hpdGUtc3BhY2U6IG5vd3JhcDtcblxuXHRcdD4gZGl2IHtcblx0XHRcdGJvdHRvbTogMDtcblx0XHRcdGxlZnQ6IDA7XG5cblx0XHRcdCY6OmJlZm9yZSxcblx0XHRcdCY6OmFmdGVyIHtcblx0XHRcdFx0QGluY2x1ZGUgcG9zaXRpb24oZml4ZWQsIG51bGwgbnVsbCAwIG51bGwpO1xuXHRcdFx0XHRAaW5jbHVkZSBzaXplKDI1JSAxMDAlKTtcblxuXHRcdFx0XHRjb250ZW50OiBcIlwiO1xuXHRcdFx0XHRwb2ludGVyLWV2ZW50czogbm9uZTsgLy8gU28gdGhlIHRleHQgaXMgc3RpbGwgc2VsZWN0YWJsZS5cblx0XHRcdFx0ei1pbmRleDogMjA7XG5cdFx0XHR9IC8vICY6OmJlZm9yZSwgJjo6YWZ0ZXJcblxuXHRcdFx0Jjo6YWZ0ZXIge1xuXHRcdFx0XHRiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gbGVmdCwgcmdiYSgyNTUsIDI1NSwgMjU1LCAxKSAwJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSAxMDAlKTtcblx0XHRcdFx0cmlnaHQ6IDA7XG5cdFx0XHR9IC8vICY6OmFmdGVyXG5cblx0XHRcdCY6OmJlZm9yZSB7XG5cdFx0XHRcdGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byBsZWZ0LCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApIDAlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDEpIDEwMCUpO1xuXHRcdFx0XHRsZWZ0OiAwO1xuXHRcdFx0fSAvLyAmOjpiZWZvcmVcblx0XHR9IC8vID4gZGl2XG5cdH0gLy8gLm1vYmlsZS1uYXYtbWVudVxufSAvLyAubm8tanNcblxuXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBBZGQgc3R5bGVzIGZvciBub24tSlMgdXNlcnNcbi8vIC0gQWRqdXN0IGRpc3BsYXkgb2YgbWVudSBpdGVtc1xuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLm5vLWpzIHtcblxuXHQubW9iaWxlLW5hdi1tZW51IHtcblxuXHRcdC5tb2JpbGUtbmF2IHtcblxuXHRcdFx0YSB7XG5cdFx0XHRcdHBhZGRpbmc6IDAgcmVtKDEwKTtcblx0XHRcdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXG5cdFx0XHRcdHNwYW4ge1xuXHRcdFx0XHRcdEBpbmNsdWRlIHZlcnRpY2FsLWFsaWduKG1pZGRsZSk7XG5cblx0XHRcdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdFx0fSAvLyBzcGFuXG5cdFx0XHR9IC8vIGFcblxuXHRcdFx0PiBsaSB7XG5cblx0XHRcdFx0JjpudGgtY2hpbGQobis2KSB7XG5cdFx0XHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdFx0XHR9IC8vICY6bnRoLWNoaWxkKG4rNilcblxuXHRcdFx0XHQmOmZpcnN0LW9mLXR5cGUge1xuXHRcdFx0XHRcdHBhZGRpbmctbGVmdDogcmVtKDEwMCk7XG5cdFx0XHRcdH0gLy8gJjpmaXJzdC1vZi10eXBlXG5cblx0XHRcdFx0JjpsYXN0LW9mLXR5cGUge1xuXHRcdFx0XHRcdHBhZGRpbmctcmlnaHQ6IHJlbSgxMDApO1xuXHRcdFx0XHR9IC8vICY6bGFzdC1vZi10eXBlXG5cdFx0XHR9IC8vID4gbGlcblxuXHRcdFx0bGkge1xuXHRcdFx0XHRAaW5jbHVkZSBwb3NpdGlvbihyZWxhdGl2ZSwgbnVsbCBudWxsIG51bGwgMCk7XG5cdFx0XHRcdEBpbmNsdWRlIHNpemUoYXV0byByZW0oNjQpKTtcblxuXHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3Itd2hpdGU7XG5cdFx0XHRcdGJvcmRlci10b3A6IDFweCBzb2xpZCByZ2JhKCRjb2xvci1ibGFjaywgMC4xKTtcblx0XHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdFx0XHRmbG9hdDogbm9uZTtcblx0XHRcdFx0Zm9udC1zaXplOiByZW0oMTIpO1xuXHRcdFx0XHRtYXJnaW46IDA7XG5cdFx0XHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0XHRcdFx0dmVydGljYWwtYWxpZ246IHRvcDtcblxuXHRcdFx0XHQmOmhvdmVyIHtcblx0XHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3Itd2hpdGU7XG5cdFx0XHRcdH0gLy8gJjpob3ZlclxuXHRcdFx0fSAvLyBsaVxuXHRcdH0gLy8gLm1vYmlsZS1uYXZcblx0fSAvLyAubW9iaWxlLW5hdi1tZW51XG59IC8vIC5uby1qc1xuXG5cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIEFkZCBzdHlsZXMgZm9yIG5vbi1KUyB1c2Vyc1xuLy8gLSBBZGp1c3QgZGlzcGxheSBvZiBzdWJtZW51cyBhbmQgbGlua3Ncbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi5uby1qcyB7XG5cblx0Lm1vYmlsZS1uYXYtbWVudSB7XG5cblx0XHQubW9iaWxlLW5hdiB7XG5cblx0XHRcdGxpIHtcblxuXHRcdFx0XHQ+IGEge1xuXHRcdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0XHRcdGZvbnQtc2l6ZTogcmVtKDEyKTtcblx0XHRcdFx0XHRoZWlnaHQ6IDEwMCU7XG5cdFx0XHRcdFx0bGluZS1oZWlnaHQ6IDEuMjtcblx0XHRcdFx0fSAvLyA+IGFcblxuXHRcdFx0XHQmLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4ge1xuXG5cdFx0XHRcdFx0PiBhIHtcblx0XHRcdFx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRcdFx0XHRcdHZlcnRpY2FsLWFsaWduOiB0b3A7XG5cdFx0XHRcdFx0fSAvLyA+IGFcblxuXHRcdFx0XHRcdCY6aG92ZXIge1xuXG5cdFx0XHRcdFx0XHQuc3ViLW1lbnUge1xuXHRcdFx0XHRcdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0XHRcdFx0XHRcdGxlZnQ6IDA7XG5cdFx0XHRcdFx0XHR9IC8vIC5zdWItbWVudVxuXHRcdFx0XHRcdH0gLy8gJjpob3ZlclxuXHRcdFx0XHR9IC8vICYubWVudS1pdGVtLWhhcy1jaGlsZHJlblxuXHRcdFx0fSAvLyBsaVxuXHRcdH0gLy8gLm1vYmlsZS1uYXZcblxuXHRcdC5tb2JpbGUtbmF2LmRyb3Bkb3duIHtcblxuXHRcdFx0LnN1Yi1tZW51IHtcblx0XHRcdFx0QGluY2x1ZGUgcG9zaXRpb24ocmVsYXRpdmUsIGF1dG8gbnVsbCBudWxsIDApO1xuXG5cdFx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRcdFx0ZmxvYXQ6IG5vbmU7XG5cdFx0XHRcdG9wYWNpdHk6IDE7XG5cdFx0XHRcdHdpZHRoOiBhdXRvO1xuXHRcdFx0XHR6LWluZGV4OiAxO1xuXG5cdFx0XHRcdGEge1xuXHRcdFx0XHRcdGNvbG9yOiAkY29sb3ItbGluaztcblx0XHRcdFx0fSAvLyBhXG5cblx0XHRcdFx0bGkge1xuXHRcdFx0XHRcdGJvcmRlcjogbm9uZTtcblx0XHRcdFx0fSAvLyBsaVxuXHRcdFx0fSAvLyAuc3ViLW1lbnVcblx0XHR9IC8vIC5tb2JpbGUtbmF2LmRyb3Bkb3duXG5cdH0gLy8gLm1vYmlsZS1uYXYtbWVudVxuXG5cdC5tb2JpbGUtbmF2LW1lbnUge1xuXG5cdFx0Lm1lbnUuZHJvcGRvd24gdWwgYSB7XG5cdFx0XHR3aWR0aDogYXV0bztcblx0XHR9IC8vIC5tZW51LmRyb3Bkb3duIHVsIGFcblx0fSAvLyAubW9iaWxlLW5hdi1tZW51XG59IC8vIC5uby1qc1xuIiwiLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gVmVydGljYWwgQWxpZ24gTWlkZGxlXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vLy9cbi8vLyBAYXV0aG9yXG4vLy8gQGdyb3VwIHdkc1xuLy8vL1xuXG4vLyBVc2FnZSBAbWl4aW4gdmVydGljYWwtYWxpZ24obWlkZGxlKTtcblxuQG1peGluIHZlcnRpY2FsLWFsaWduKCRwb3NpdGlvbjogbWlkZGxlKSB7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuXHRAaWYgJHBvc2l0aW9uID09IG5vbmUge1xuXHRcdC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG5cdFx0dG9wOiBhdXRvO1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcblx0fSBAZWxzZSBpZiAkcG9zaXRpb24gPT0gdG9wIHtcblx0XHQtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDAlKTtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwJSk7XG5cdFx0dG9wOiAwJTtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCUpO1xuXHR9IEBlbHNlIGlmICRwb3NpdGlvbiA9PSBib3R0b20ge1xuXHRcdC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMCUpO1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDAlKTtcblx0XHR0b3A6IDEwMCU7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDAlKTtcblx0fSBAZWxzZSB7XG5cdFx0LW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcblx0XHR0b3A6IDUwJTtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG5cdH1cbn1cbiIsIi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIE5hdmlnYXRpb25cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gTGlua3NcbmEge1xuXHRjb2xvcjogJGNvbG9yLWxpbms7XG5cblx0Jjp2aXNpdGVkIHtcblx0XHRjb2xvcjogJGNvbG9yLWxpbmstdmlzaXRlZDtcblx0fSAvLyAmOnZpc2l0ZWRcblxuXHQmOmhvdmVyLFxuXHQmOmZvY3VzLFxuXHQmOmFjdGl2ZSB7XG5cdFx0Y29sb3I6ICRjb2xvci1saW5rLWhvdmVyO1xuXHR9IC8vICY6aG92ZXIsICY6Zm9jdXMsICY6YWN0aXZlXG59IC8vIGFcblxuLy8gRGVmYXVsdCBtZW51IChhY3RpdmUgYWZ0ZXIgYSBmcmVzaCBXb3JkUHJlc3MgaW5zdGFsbClcbi5tZW51IHtcblx0QGluY2x1ZGUgbGlzdC1yZXNldDtcblxuXHRsaSB7XG5cdFx0bWFyZ2luOiAwO1xuXHR9IC8vIGxpXG5cblx0dWwge1xuXHRcdEBpbmNsdWRlIGxpc3QtcmVzZXQ7XG5cdH0gLy8gdWxcblxuXHQmLm1lbnUtaG9yaXpvbnRhbCB7XG5cblx0XHRsaSB7XG5cdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0fSAvLyBsaVxuXHR9IC8vICYubWVudS1ob3Jpem9udGFsXG5cblx0Ji5tZW51LXZlcnRpY2FsIHtcblxuXHRcdGxpIHtcblx0XHRcdG1hcmdpbjogMDtcblx0XHR9IC8vIGxpXG5cblx0XHRhIHtcblx0XHRcdGJvcmRlci1ib3R0b206IHJlbSgxKSBzb2xpZCAkY29sb3ItYmFja2dyb3VuZC1ocjtcblx0XHRcdHBhZGRpbmc6IHJlbSgxMCk7XG5cdFx0fSAvLyBhXG5cdH0gLy8gJi5tZW51LXZlcnRpY2FsXG5cblx0Ji5kcm9wZG93biB7XG5cblx0XHQmIC5tZW51LWl0ZW0taGFzLWNoaWxkcmVuIHtcblxuXHRcdFx0JiA+IGEge1xuXHRcdFx0XHRwYWRkaW5nLXJpZ2h0OiByZW0oMjkpO1xuXHRcdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cblx0XHRcdFx0Jjo6YWZ0ZXIge1xuXHRcdFx0XHRcdEBpbmNsdWRlIHBvc2l0aW9uKGFic29sdXRlLCA1MCUgcmVtKDUpIG51bGwgbnVsbCk7XG5cdFx0XHRcdFx0QGluY2x1ZGUgc2l6ZShyZW0oMTEpIHJlbSg4KSk7XG5cblx0XHRcdFx0XHRiYWNrZ3JvdW5kOiB1cmwoXCJhc3NldHMvaW1hZ2VzL3N2Zy1pY29ucy9uYXYtYXJyb3cuc3ZnXCIpIG5vLXJlcGVhdDtcblx0XHRcdFx0XHRiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG5cblx0XHRcdFx0XHRjb250ZW50OiBcIlwiO1xuXHRcdFx0XHRcdG1hcmdpbjogcmVtKC00KSAwIDAgcmVtKDYpO1xuXHRcdFx0XHR9IC8vICY6OmFmdGVyXG5cdFx0XHR9IC8vICYgPiBhXG5cblx0XHRcdC8vIFJvdGF0ZSB0aGUgYXJyb3cgcmlnaHQgZm9yIHN1Yi1zdWJtZW51IGluZGljYXRvcnMuXG5cdFx0XHQubWVudS1pdGVtLWhhcy1jaGlsZHJlbiBhOjphZnRlciB7XG5cdFx0XHRcdGxlZnQ6IHJlbSgyKTtcblx0XHRcdFx0dHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xuXHRcdFx0fVxuXHRcdH0gLy8gJi5tZW51LWl0ZW0taGFzLWNoaWxkcmVuXG5cblx0XHQvLyBTdWItbWVudVxuXHRcdHVsIHtcblx0XHRcdEBpbmNsdWRlIHBvc2l0aW9uKGFic29sdXRlLCBudWxsIG51bGwgbnVsbCAtOTk5ZW0pO1xuXG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3Itc2xhdGU7XG5cdFx0XHRib3gtc2hhZG93OiAwIDNweCAzcHggcmdiYSgkY29sb3ItYmxhY2ssIDAuMik7XG5cdFx0XHRkaXNwbGF5OiBub25lO1xuXHRcdFx0ZmxvYXQ6IGxlZnQ7XG5cdFx0XHR6LWluZGV4OiA5OTk5OTtcblxuXHRcdFx0Ly8gU3ViLXN1YiBtZW51LlxuXHRcdFx0dWwge1xuXHRcdFx0XHRsZWZ0OiAtOTk5ZW07XG5cdFx0XHRcdHRvcDogMDtcblxuXHRcdFx0XHQvLyBTdWItc3ViLXN1YiBtZW51LlxuXHRcdFx0XHR1bCB7XG5cdFx0XHRcdFx0bGkge1xuXHRcdFx0XHRcdFx0dGV4dC1hbGlnbjogbGVmdDtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdH0gLy8gdWxcblxuXHRcdFx0Ly8gU3ViLW1lbnUgaXRlbXMuXG5cdFx0XHRsaSB7XG5cdFx0XHRcdGZsb2F0OiBub25lO1xuXHRcdFx0XHR0ZXh0LWFsaWduOiByaWdodDtcblxuXHRcdFx0XHRhIHtcblx0XHRcdFx0XHRmb250LXNpemU6IHJlbSgxNSk7XG5cdFx0XHRcdFx0bWFyZ2luOiAwO1xuXHRcdFx0XHR9XG5cblx0XHRcdFx0Jjpob3ZlciA+IHVsLFxuXHRcdFx0XHQmLmZvY3VzID4gdWwge1xuXHRcdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0XHRcdHJpZ2h0OiAxMDAlO1xuXHRcdFx0XHR9IC8vICY6aG92ZXIgPiB1bCwgJi5mb2N1cyA+IHVsXG5cdFx0XHRcdC8vIFRhcmdldCBsYXN0IGRyb3Bkb3duIHRvIGF2b2lkIG9mZi1zY3JlZW4gc3ViIG1lbnVzLlxuXHRcdFx0fSAvLyBsaVxuXG5cdFx0XHQvLyBTdWItbWVudSBsaW5rcy5cblx0XHRcdGEge1xuXHRcdFx0XHRAaW5jbHVkZSBzaXplKGF1dG8gYXV0byk7XG5cblx0XHRcdFx0bWluLXdpZHRoOiByZW0oMjAwKTtcblx0XHRcdH0gLy8gYVxuXHRcdH0gLy8gdWxcblxuXHRcdC8vIERpc3BsYXkgc3ViLW1lbnUgd2hlbiB0b2dnbGVkXG5cdFx0bGk6aG92ZXIgPiB1bCxcblx0XHQuZm9jdXMgPiB1bCB7XG5cdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdGxlZnQ6IGF1dG87XG5cdFx0fSAvLyAmOmhvdmVyID4gdWwsIC5mb2N1cyA+IHVsXG5cblx0XHQvLyBNZW51IGl0ZW1zXG5cdFx0bGkge1xuXHRcdFx0ZmxvYXQ6IGxlZnQ7XG5cdFx0fSAvLyBsaVxuXHR9IC8vICYuZHJvcGRvd25cblxuXHQvLyBNZW51IGh5cGVybGlua3Ncblx0YSB7XG5cdFx0LW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcblx0XHQtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcblx0XHRib3JkZXI6IG5vbmU7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0bGV0dGVyLXNwYWNpbmc6IHJlbSgxKTtcblx0XHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cblx0XHRAaW5jbHVkZSBtZWRpYSgkdGFibGV0LWxhbmRzY2FwZSkge1xuXHRcdFx0Jjpob3ZlciB7XG5cdFx0XHRcdGJhY2tncm91bmQ6ICRjb2xvci1idXR0ZXJjdXA7XG5cdFx0XHR9IC8vICY6aG92ZXJcblx0XHR9XG5cdH0gLy8gYVxufSAvLyAubWVudVxuXG4vLyBNYWluIG5hdmlnYXRpb24gKGFmdGVyIGNyZWF0aW5nIGEgbWVudSBpbiB0aGUgZGFzaGJvYXJkKVxuLm1haW4tbmF2aWdhdGlvbiB7XG5cdEBpbmNsdWRlIHNpemUoMTAwJSBhdXRvKTtcblxuXHRjbGVhcjogYm90aDtcblx0ZGlzcGxheTogbm9uZTtcblx0ZmxvYXQ6IGxlZnQ7XG5cdG1heC13aWR0aDogODByZW07XG5cdHBhZGRpbmc6IDA7XG5cblx0QGluY2x1ZGUgbWVkaWEoJHRhYmxldC1sYW5kc2NhcGUpIHtcblx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0bWFyZ2luLWxlZnQ6IHJlbSgxNzYpO1xuXHRcdHdpZHRoOiBhdXRvO1xuXHR9XG5cblx0QGluY2x1ZGUgbWVkaWEoJGRlc2t0b3ApIHtcblx0XHRtYXJnaW4tbGVmdDogcmVtKDIxNCk7XG5cdH1cblxuXHRAaW5jbHVkZSBtZWRpYSgkbGFyZ2UtZGVza3RvcCkge1xuXHRcdG1hcmdpbi1sZWZ0OiAwO1xuXHR9XG5cblx0Ly8gTWVudSBhcmVhXG5cdHVsIHtcblx0XHRkaXNwbGF5OiBub25lO1xuXHR9IC8vIHVsXG5cblx0Ji50b2dnbGVkIHVsIHtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0fSAvLyAmLnRvZ2dsZWQgdWxcblxuXHRhIHtcblx0XHRjb2xvcjogJGNvbG9yLXdoaXRlO1xuXHRcdGZvbnQtZmFtaWx5OiAkZm9udC1zYW5zO1xuXHRcdGZvbnQtc2l6ZTogcmVtKDE4KTtcblx0XHRmb250LXN0eWxlOiBub3JtYWw7XG5cdFx0Zm9udC13ZWlnaHQ6IDYwMDtcblx0XHRsZXR0ZXItc3BhY2luZzogcmVtKDEuNSk7XG5cdFx0cGFkZGluZzogcmVtKDIyKSByZW0oMTApIHJlbSgyNCkgcmVtKDEwKTtcblx0XHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXG5cdFx0QGluY2x1ZGUgbWVkaWEoJHRhYmxldC1wb3J0cmFpdCkge1xuXHRcdFx0Zm9udC1zaXplOiByZW0oMTUpO1xuXHRcdFx0cGFkZGluZzogcmVtKDE3KSByZW0oOCkgcmVtKDE5KTtcblx0XHR9XG5cblx0XHRAaW5jbHVkZSBtZWRpYSgkdGFibGV0LWxhcmdlKSB7XG5cdFx0XHRmb250LXNpemU6IHJlbSgxOCk7XG5cdFx0XHRtYXJnaW46IDAgcmVtKDUpO1xuXHRcdFx0cGFkZGluZy1sZWZ0OiByZW0oOCk7XG5cdFx0XHRwYWRkaW5nLXJpZ2h0OiByZW0oOCk7XG5cdFx0fVxuXHR9IC8vIGFcblxuXHQmIC5tZW51LXByaW1hcnktbWVudS1jb250YWluZXIgPiAubWVudSB7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdH0gLy8gJiAubWVudS1wcmltYXJ5LW1lbnUtY29udGFpbmVyID4gLm1lbnVcbn0gLy8gLm1haW4tbmF2aWdhdGlvblxuXG4vLyBTbWFsbCBtZW51XG4ubWVudS10b2dnbGUge1xuXHRkaXNwbGF5OiBibG9jaztcblxuXHRAaW5jbHVkZSBtZWRpYSgkcGhvbmUtbGFuZHNjYXBlKSB7XG5cdFx0ZGlzcGxheTogbm9uZTtcblx0fVxufSAvLyAubWVudS10b2dnbGVcblxuLy8gTmF2aWdhdGlvbiBvbiBDb21tZW50LCBQb3N0IGFuZCBQb3N0c1xuLmNvbW1lbnQtbmF2aWdhdGlvbiB7XG5cblx0LnNpdGUtbWFpbiAmIHtcblx0XHRtYXJnaW46IDAgMCByZW0oMjQpIDA7XG5cdFx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0fSAvLyAuc2l0ZS1tYWluICZcblxuXHQmLm5hdi1wcmV2aW91cyB7XG5cdFx0QGluY2x1ZGUgc2l6ZSg1MCUgYXV0byk7XG5cblx0XHRmbG9hdDogbGVmdDtcblx0fSAvLyAmLm5hdi1wcmV2aW91c1xuXG5cdCYubmF2LW5leHQge1xuXHRcdEBpbmNsdWRlIHNpemUoNTAlIGF1dG8pO1xuXG5cdFx0ZmxvYXQ6IHJpZ2h0O1xuXHRcdHRleHQtYWxpZ246IHJpZ2h0O1xuXHR9IC8vICYubmF2LW5leHRcbn0gLy8gLmNvbW1lbnQtbmF2aWdhdGlvbiwgLnBvc3RzLW5hdmlnYXRpb24sIC5wb3N0LW5hdmlnYXRpb25cbiIsIi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIFRhYmxlc1xuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG50YWJsZSB7XG5cdGJvcmRlcjogMDtcblx0Ym9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcblx0Ym9yZGVyLXNwYWNpbmc6IDA7XG5cdHBhZGRpbmc6IDA7XG5cdHdpZHRoOiAxMDAlO1xuXG5cdC8vIHRoZWFkXG5cdHRoZWFkIHtcblx0XHRkaXNwbGF5OiBub25lO1xuXG5cdFx0QGluY2x1ZGUgbWVkaWEoJHBob25lLWxhbmRzY2FwZSkge1xuXHRcdFx0ZGlzcGxheTogdGFibGUtcm93LWdyb3VwO1xuXHRcdH1cblx0fSAvLyB0aGVhZFxuXG5cdC8vIHRoLCB0ZFxuXHR0aCxcblx0dGQge1xuXHRcdHBhZGRpbmc6IHJlbSgxMCk7XG5cdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXG5cdFx0QGluY2x1ZGUgbWVkaWEoJHBob25lLWxhbmRzY2FwZSkge1xuXHRcdFx0ZGlzcGxheTogdGFibGUtY2VsbDtcblx0XHR9XG5cdH0gLy8gdGgsIHRkXG5cblx0Ly8gdGhcblx0dGgge1xuXHRcdGZvbnQtc2l6ZTogcmVtKDE0KTtcblx0XHRsZXR0ZXItc3BhY2luZzogcmVtKDEpO1xuXHRcdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cblx0XHRAaW5jbHVkZSBtZWRpYSgkcGhvbmUtbGFuZHNjYXBlKSB7XG5cdFx0XHRkaXNwbGF5OiB0YWJsZS1jZWxsO1xuXHRcdH1cblx0fSAvLyB0aFxuXG5cdC8vIHRyXG5cdHRyIHtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRtYXJnaW4tYm90dG9tOiByZW0oMTApO1xuXG5cdFx0QGluY2x1ZGUgbWVkaWEoJHBob25lLWxhbmRzY2FwZSkge1xuXHRcdFx0ZGlzcGxheTogdGFibGUtcm93O1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogMDtcblx0XHR9XG5cdH0gLy8gdHJcblxuXHQvLyB0ZFxuXHR0ZCB7XG5cdFx0Ym9yZGVyOiByZW0oMSkgc29saWQgJGNvbG9yLXNpbHZlcjtcblx0XHRib3JkZXItYm90dG9tOiAwO1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdGZvbnQtc2l6ZTogcmVtKDEzKTtcblx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cblx0XHRAaW5jbHVkZSBtZWRpYSgkcGhvbmUtbGFuZHNjYXBlKSB7XG5cdFx0XHRib3JkZXItYm90dG9tOiAwO1xuXHRcdH1cblxuXHRcdC8vIGxhc3QtY2hpbGRcblx0XHQmOmxhc3QtY2hpbGQge1xuXHRcdFx0Ym9yZGVyLWJvdHRvbTogcmVtKDEpIHNvbGlkICRjb2xvci1zaWx2ZXI7XG5cdFx0fSAvLyAmOmxhc3QtY2hpbGRcblxuXHRcdC8vIGJlZm9yZVxuXHRcdCY6OmJlZm9yZSB7XG5cdFx0XHRjb250ZW50OiBcIlwiO1xuXHRcdFx0ZmxvYXQ6IGxlZnQ7XG5cdFx0XHRmb250LXdlaWdodDogYm9sZDtcblx0XHRcdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cdFx0fSAvLyAmOjpiZWZvcmVcblx0fSAvLyB0ZFxuXG5cdEBpbmNsdWRlIG1lZGlhKCRwaG9uZS1sYW5kc2NhcGUpIHtcblx0XHRib3JkZXI6IHJlbSgxKSBzb2xpZCAkY29sb3Itc2lsdmVyO1xuXHR9XG59IC8vIHRhYmxlXG4iLCIvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBNb2RhbFxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4ubW9kYWwge1xuXHRAaW5jbHVkZSBjbGVhcmZpeDtcblx0QGluY2x1ZGUgcG9zaXRpb24oZml4ZWQsIDAgMCAwIDApO1xuXG5cdGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwwLDAsMC4zKTtcblx0ZGlzcGxheTogbm9uZTtcblx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0ei1pbmRleDogMTA1MDtcblxuXHQvLyBXaGVuIHRoZSAubW9kYWwtb3BlbiBjbGFzcyBpcyBzZXQuXG5cdCYubW9kYWwtb3BlbiB7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0b3ZlcmZsb3cteDogaGlkZGVuO1xuXHRcdG92ZXJmbG93LXk6IGF1dG87XG5cdH0gLy8gJi5tb2RhbC1vcGVuXG5cblx0Ly8gQ2VudGVyIHRoZSBtb2RhbCBjb250YWluZXIuXG5cdC5tb2RhbC1kaWFsb2cge1xuXHRcdEBpbmNsdWRlIHBvc2l0aW9uKGFic29sdXRlLCA1MCUgbnVsbCBudWxsIDUwJSk7XG5cblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcblx0XHR3aWR0aDogYXV0bztcblx0fSAvLyAubW9kYWwtZGlhbG9nXG5cblx0Ly8gVGhlIG1vZGFsIGNvbnRlbnQgY29udGFpbmVyLlxuXHQubW9kYWwtY29udGVudCB7XG5cdFx0YmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3Itd2hpdGU7XG5cdFx0Ym9yZGVyLXJhZGl1czogcmVtKDMpO1xuXHRcdGJveC1zaGFkb3c6IDAgMCByZW0oMTApIHJlbSgzKSByZ2JhKCRjb2xvci1ibGFjaywgMC41KTtcblx0XHRvdXRsaW5lOiAwO1xuXHRcdHBhZGRpbmc6IHJlbSgxMCk7XG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXG5cdFx0Ly8gVGhlIG1vZGFsIGhlYWRlciBjb250YWluZXIuXG5cdFx0Lm1vZGFsLWhlYWRlciB7XG5cdFx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cblx0XHRcdC8vIENsb3NlIFwiWFwiIGJ1dHRvbi5cblx0XHRcdC5jbG9zZSB7XG5cdFx0XHRcdEBpbmNsdWRlIG1hcmdpbi1wYWRkaW5nLXJlc2V0O1xuXHRcdFx0XHRAaW5jbHVkZSBwb3NpdGlvbihhYnNvbHV0ZSwgcmVtKC0xNSkgcmVtKC0xNSkgbnVsbCBudWxsKTtcblx0XHRcdFx0QGluY2x1ZGUgc2l6ZShyZW0oMzApIHJlbSgzMCkpO1xuXG5cdFx0XHRcdGJhY2tncm91bmQ6ICRjb2xvci1ibGFjaztcblx0XHRcdFx0Ym9yZGVyOiByZW0oMykgc29saWQgJGNvbG9yLXdoaXRlO1xuXHRcdFx0XHRib3JkZXItcmFkaXVzOiA1MCU7XG5cdFx0XHRcdGNvbG9yOiAkY29sb3Itd2hpdGU7XG5cdFx0XHRcdGN1cnNvcjogcG9pbnRlcjtcblx0XHRcdFx0Zm9udC1zaXplOiByZW0oMzApO1xuXHRcdFx0XHRsaW5lLWhlaWdodDogMDtcblx0XHRcdFx0b3V0bGluZTogbm9uZTtcblxuXHRcdFx0XHQmOjphZnRlciB7XG5cdFx0XHRcdFx0QGluY2x1ZGUgY2xlYXJmaXg7XG5cdFx0XHRcdH0gLy8gJjo6YWZ0ZXJcblx0XHRcdH0gLy8gLmNsb3NlXG5cdFx0fSAvLyAubW9kYWwtaGVhZGVyXG5cblx0XHQvLyBUaGUgbW9kYWwgYm9keSBjb250YWluZXIuXG5cdFx0Lm1vZGFsLWJvZHkge1xuXHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdH0gLy8gLm1vZGFsLWJvZHlcblxuXHRcdC8vIFRoZSBtb2RhbCBmb290ZXIgY29udGFpbmVyLlxuXHRcdC5tb2RhbC1mb290ZXIge1xuXHRcdH0gLy8gLm1vZGFsLWZvb3RlclxuXHR9IC8vIC5tb2RhbC1jb250ZW50XG5cblx0Ly8gUmVtb3ZlIHRoZSBib3JkZXIgZnJvbSBlbWJlZGRlZCBlbGVtZW50cy5cblx0LmZsdWlkLWVtYmVkIHtcblxuXHRcdGVtYmVkLFxuXHRcdG9iamVjdCxcblx0XHRpZnJhbWUge1xuXHRcdFx0Ym9yZGVyOiBub25lO1xuXHRcdH0gLy8gZW1iZWQsIG9iamVjdCwgaWZyYW1lXG5cdH0gLy8gLmZsdWlkLWVtYmVkXG59IC8vIC5tb2RhbFxuIiwiLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gQ2F0ZWdvcnkgTGFiZWxzXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIEJhc2Ugc3R5bGVzIGZvciBDYXRlZ29yeSBMYWJlbHMvVGFncy5cbi5jYXQtbGlua3Mge1xuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cblx0YSB7XG5cdFx0QGV4dGVuZCAuaDQ7XG5cblx0XHRiYWNrZ3JvdW5kOiAkY29sb3ItbmZsO1xuXHRcdGJvcmRlcjogbm9uZTtcblx0XHRjb2xvcjogJGNvbG9yLXdoaXRlO1xuXHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRmb250LXNpemU6IHJlbSgxOCk7XG5cdFx0Zm9udC1zdHlsZTogbm9ybWFsO1xuXHRcdGxldHRlci1zcGFjaW5nOiByZW0oMik7XG5cdFx0cGFkZGluZzogcmVtKDEpIHJlbSgxNik7XG5cdFx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblx0XHR0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMThzIGVhc2Utb3V0O1xuXG5cdFx0Ly8gTG9vcCB0aHJvdWdoIGFsbCBjYXRlZ29yeSBjb2xvcnMuXG5cdFx0QGVhY2ggJGNhdGVnb3J5LWNvbG9ycywgJGNvbG9yIGluICRjYXRlZ29yeS1jb2xvcnMge1xuXG5cdFx0XHQvLyBTZXQgc3R5bGVzIG9uIHRoZSB0YWdzLlxuXHRcdFx0JltocmVmKj1cIiN7JGNhdGVnb3J5LWNvbG9yc31cIl0ge1xuXHRcdFx0XHRiYWNrZ3JvdW5kOiAkY29sb3I7XG5cdFx0XHR9IC8vIGEtI3skY2F0ZWdvcnktY29sb3JzfVxuXHRcdH0gLy8gZW5kIGVhY2ggbG9vcFxuXG5cdFx0Ly8gU2ltcGx5IHJlZHVjZSBvcGFjaXR5IG9uIGhvdmVyIGZvciBiZXR0ZXIgVVguXG5cdFx0Jjpob3Zlcixcblx0XHQmOmZvY3VzIHtcblx0XHRcdGNvbG9yOiAkY29sb3Itd2hpdGU7XG5cdFx0XHRvcGFjaXR5OiAwLjc4O1xuXHRcdH0gLy8gJjpob3ZlciwgJjpmb2N1c1xuXHR9IC8vIGFcbn0gLy8gLmNhdC1saW5rc1xuIiwiLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gRmVhdHVyZWQgUG9zdHNcbi8vXG4vLyBUaGVzZSBhcmUgcG9zdHMgdGhhdCBhcmUgc3BlY2lmaWNhbGx5IHRhZ2dlZCB0byBiZSBcIkZlYXR1cmVkXCIuXG4vLyBUaGV5IGRpc3BsYXkgYXMgYW4gaW1hZ2UgYmxvY2sgd2l0aCBvbmx5IGEgdGl0bGUgYW5kIGEgY2F0ZWdvcnkuXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4uZmVhdHVyZWQtcG9zdCB7XG5cdGJhY2tncm91bmQtcG9zaXRpb246IDUwJSA1MCU7XG5cdGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG5cdGRpc3BsYXk6IGJsb2NrO1xuXHRoZWlnaHQ6IHJlbSgxODUpO1xuXHRtYXJnaW4tYm90dG9tOiByZW0oNSk7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0ei1pbmRleDogMTtcblxuXHRAaW5jbHVkZSBtZWRpYSgkdGFibGV0LXBvcnRyYWl0KSB7XG5cdFx0aGVpZ2h0OiByZW0oNDUwKTtcblx0XHRtYXJnaW4tYm90dG9tOiByZW0oNjcpO1xuXHR9XG5cblx0QGluY2x1ZGUgbWVkaWEoJHRhYmxldC1sYW5kc2NhcGUpIHtcblx0XHRtYXJnaW4tYm90dG9tOiByZW0oNjApO1xuXHR9XG5cblx0LmVudHJ5LWhlYWRlciB7XG5cdFx0QGluY2x1ZGUgcG9zaXRpb24oYWJzb2x1dGUsIG51bGwgbnVsbCAwIDApO1xuXG5cdFx0Y29sb3I6ICRjb2xvci13aGl0ZTtcblx0XHRwYWRkaW5nOiByZW0oMTIpIHJlbSgxNSk7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdFx0ei1pbmRleDogMTtcblxuXHRcdEBpbmNsdWRlIG1lZGlhKCR0YWJsZXQtcG9ydHJhaXQpIHtcblx0XHRcdHBhZGRpbmc6IHJlbSgyNSkgcmVtKDMxKSByZW0oMjUpIHJlbSgyNyk7XG5cdFx0fVxuXG5cdFx0LmVudHJ5LXRpdGxlIHtcblx0XHRcdEBpbmNsdWRlIGJhY2tmYWNlLXJlc2V0O1xuXHRcdFx0QGluY2x1ZGUgdHJhbnNpdGlvbih0cmFuc2Zvcm0gMC4xOHMgZWFzZS1pbi1vdXQpO1xuXG5cdFx0XHRmb250LXNpemU6IHJlbSgxNik7XG5cdFx0XHRmb250LXN0eWxlOiBub3JtYWw7XG5cdFx0XHRsaW5lLWhlaWdodDogMS4yNTtcblx0XHRcdG1hcmdpbi1ib3R0b206IDA7XG5cdFx0XHRtYXJnaW4tdG9wOiAwO1xuXG5cdFx0XHRAaW5jbHVkZSBtZWRpYSgkcGhvbmUtbGFuZHNjYXBlKSB7XG5cdFx0XHRcdGZvbnQtc2l6ZTogcmVtKDIxKTtcblx0XHRcdFx0bGluZS1oZWlnaHQ6IDEuMDU7XG5cdFx0XHR9XG5cdFx0fSAvLyAuZW50cnktdGl0bGVcblxuXHRcdGEge1xuXHRcdFx0Y29sb3I6ICRjb2xvci13aGl0ZTtcblxuXHRcdFx0Jjpmb2N1cyB7XG5cdFx0XHRcdGJvcmRlci1ib3R0b206IHJlbSgyKSBzb2xpZCAkY29sb3ItYnV0dGVyY3VwO1xuXHRcdFx0XHRvdXRsaW5lOiBub25lO1xuXHRcdFx0fSAvLyAmOmZvY3VzXG5cdFx0fSAvLyBhXG5cblx0XHQuY2F0ZWdvcnkge1xuXHRcdFx0QGluY2x1ZGUgYmFja2ZhY2UtcmVzZXQ7XG5cdFx0XHRAaW5jbHVkZSB0cmFuc2l0aW9uKHRyYW5zZm9ybSAwLjE4cyBlYXNlLWluLW91dCk7XG5cblx0XHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0XHRmb250LWZhbWlseTogJGZvbnQtc2Fucztcblx0XHRcdGZvbnQtc2l6ZTogcmVtKDE4KTtcblx0XHRcdGZvbnQtc3R5bGU6IG5vcm1hbDtcblx0XHRcdGZvbnQtd2VpZ2h0OiA3MDA7XG5cdFx0XHRsZXR0ZXItc3BhY2luZzogcmVtKDIuNSk7XG5cdFx0XHRtYXJnaW46IDA7XG5cdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXG5cdFx0XHRAaW5jbHVkZSBtZWRpYSgkdGFibGV0LXBvcnRyYWl0KSB7XG5cdFx0XHRcdGJvcmRlci1ib3R0b206IHJlbSg0KSBzb2xpZCByZ2JhKCRjb2xvci13aGl0ZSwgMC42KTtcblx0XHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRcdHBhZGRpbmctYm90dG9tOiByZW0oMTUpO1xuXHRcdFx0fVxuXG5cdFx0XHQvLyBUaGUgY29sb3JlZCBoaWxpZ2h0IGxpbmUuXG5cdFx0XHQuaGlsaWdodCB7XG5cdFx0XHRcdEBpbmNsdWRlIHRyYW5zaXRpb24od2lkdGggMC4xOHMgZWFzZS1pbi1vdXQpO1xuXG5cdFx0XHRcdGJvdHRvbTogcmVtKC00KTtcblx0XHRcdFx0ZGlzcGxheTogbm9uZTtcblx0XHRcdFx0aGVpZ2h0OiByZW0oNCk7XG5cdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdFx0d2lkdGg6IHJlbSg3Mik7XG5cblx0XHRcdFx0QGluY2x1ZGUgbWVkaWEoJHRhYmxldC1wb3J0cmFpdCkge1xuXHRcdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0XHR9XG5cdFx0XHR9IC8vIC5oaWxpZ2h0XG5cdFx0fSAvLyAuY2F0ZWdvcnlcblx0fSAvLyAuZW50cnktaGVhZGVyXG5cblx0LnJlYWQtbW9yZSB7XG5cdFx0QGluY2x1ZGUgdHJhbnNpdGlvbihvcGFjaXR5IDAuMThzIGVhc2UtaW4tb3V0LCB0cmFuc2Zvcm0gMC4xOHMgZWFzZS1pbi1vdXQpO1xuXHRcdEBpbmNsdWRlIGJhY2tmYWNlLXJlc2V0O1xuXG5cdFx0Ym9yZGVyOiBub25lO1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdGZvbnQtc2l6ZTogcmVtKDIzKTtcblx0XHRvcGFjaXR5OiAwO1xuXHR9IC8vIC5yZWFkLW1vcmVcblxuXHQvLyBQb3NpdGlvbiBiZWZvcmUgYW5kIGFmdGVyIHBzZXVkb3MsIGZvciBncmFkaWVudCBhbmQgaG92ZXIgYmFja2dyb3VuZHMuXG5cdCY6OmJlZm9yZSxcblx0Jjo6YWZ0ZXIge1xuXHRcdEBpbmNsdWRlIHBvc2l0aW9uKGFic29sdXRlLCAwIG51bGwgbnVsbCAwKTtcblx0XHRAaW5jbHVkZSBzaXplKDEwMCUgMTAwJSk7XG5cblx0XHRjb250ZW50OiBcIlwiO1xuXHR9IC8vICY6OmJlZm9yZSAmOjphZnRlclxuXG5cdC8vIEFkZCBhIGdyYWRpZW50IGJhY2tncm91bmQgb3ZlciB0aGUgZmVhdHVyZWQgaW1hZ2UsXG5cdC8vIHNvIHRoYXQgdGhlIHdoaXRlIHRleHQgd2lsbCBiZSByZWFkYWJsZSByZWdhcmRsZXNzIG9mIHdoYXQgaXMgaW4gc2FpZCBpbWFnZS5cblx0Jjo6YWZ0ZXIge1xuXHRcdGJhY2tncm91bmQ6IHJnYmEoJGNvbG9yLXRodW5kZXIsIDAuMzUpO1xuXG5cdFx0QGluY2x1ZGUgbWVkaWEoJHRhYmxldC1sYW5kc2NhcGUpIHtcblx0XHRcdGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudChyZ2JhKCRjb2xvci10aHVuZGVyLCAwKSA0OCUsIHJnYmEoJGNvbG9yLXRodW5kZXIsIDEpIDk1JSwgcmdiYSgkY29sb3ItdGh1bmRlciwgMSkgOTYlKTtcblx0XHR9XG5cdH0gLy8gJjo6YWZ0ZXJcblxuXHQvLyBGdWxsIGJhY2tncm91bmQgb3ZlcmxheSwgd2lsbCBvbmx5IGJlIHZpc2libGUgb24gaG92ZXIuXG5cdCY6OmJlZm9yZSB7XG5cdFx0QGluY2x1ZGUgdHJhbnNpdGlvbihvcGFjaXR5IDAuMThzIGVhc2UtaW4tb3V0KTtcblxuXHRcdGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sIHJnYmEoJGNvbG9yLWdyYWQtMSwgMSkgNDglLCByZ2JhKCRjb2xvci1ncmFkLTIsIDEpIDk1JSwgcmdiYSgkY29sb3ItZ3JhZC0zLCAxKSA5OSUpO1xuXHRcdG9wYWNpdHk6IDA7XG5cdH0gLy8gJjo6YmVmb3JlXG5cblx0Ly8gRmVhdHVyZWQgcG9zdCBob3ZlciBzdHlsZXM6XG5cdC8vIC0gRnVsbCBiYWNrZ3JvdW5kIG92ZXJsYXlcblx0Ly8gLSBGdWxsIHdpZHRoIG9uIGNhdGVnb3J5LXNwZWNpZmljIGNvbG91ciBiYXJcblx0Jjpob3Zlcixcblx0Jjpmb2N1cyB7XG5cdFx0Jjo6YmVmb3JlIHtcblx0XHRcdG9wYWNpdHk6IDAuNTtcblx0XHR9IC8vICY6OmJlZm9yZVxuXG5cdFx0LmNhdGVnb3J5IHtcblx0XHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMzJweCk7XG5cblx0XHRcdC5oaWxpZ2h0IHtcblx0XHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHR9IC8vIC5oaWxpZ2h0XG5cdFx0fSAvLyAuY2F0ZWdvcnk6OmJlZm9yZVxuXG5cdFx0Ly8gTWFrZSByZWFkIG1vcmUgbGluayB2aXNpYmxlIG9uIGhvdmVyLlxuXHRcdC5yZWFkLW1vcmUge1xuXHRcdFx0QGluY2x1ZGUgdHJhbnNpdGlvbih3aWR0aCAwLjE4cyBlYXNlLWluLW91dCk7XG5cblx0XHRcdGJvcmRlcjogbm9uZTtcblx0XHRcdG9wYWNpdHk6IDE7XG5cdFx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTE2cHgpO1xuXHRcdFx0d2lkdGg6IHJlbSgxMjcpO1xuXG5cdFx0XHQmOmhvdmVyIHtcblx0XHRcdFx0b3BhY2l0eTogMC44ODtcblx0XHRcdFx0d2lkdGg6IHJlbSgxMzIpO1xuXHRcdFx0fSAvLyAmOmhvdmVyXG5cblx0XHRcdCY6OmFmdGVyIHtcblx0XHRcdFx0QGluY2x1ZGUgcG9zaXRpb24oYWJzb2x1dGUsIDQ4JSByZW0oNSkgbnVsbCBudWxsKTtcblx0XHRcdFx0QGluY2x1ZGUgc2l6ZShyZW0oMTEpIHJlbSg4KSk7XG5cblx0XHRcdFx0YmFja2dyb3VuZDogdXJsKFwiYXNzZXRzL2ltYWdlcy9zdmctaWNvbnMvbmF2LWFycm93LnN2Z1wiKSBuby1yZXBlYXQ7XG5cdFx0XHRcdGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcblx0XHRcdFx0Y29udGVudDogXCJcIjtcblx0XHRcdFx0dHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcblx0XHRcdH0gLy8gJjo6YWZ0ZXJcblx0XHR9IC8vIC5yZWFkLW1vcmVcblxuXHRcdC8vIE1vdmUgYWxsIHRoZSB0ZXh0IHVwIGEgbGl0dGxlIG9uIGhvdmVyLlxuXHRcdC5lbnRyeS10aXRsZSB7XG5cdFx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTMycHgpO1xuXHRcdH0gLy8gLmVudHJ5LXRpdGxlXG5cdH0gLy8gJjpob3ZlciwgJjpmb2N1c1xuXG5cdC5mZWF0dXJlLTUtZ3JpZCAmIHtcblx0XHRtYXJnaW4tYm90dG9tOiByZW0oNSk7XG5cblx0XHRAaW5jbHVkZSBtZWRpYSgkdGFibGV0LWxhbmRzY2FwZSkge1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogcmVtKDI0KTtcblx0XHR9XG5cdH0gLy8gLmZlYXR1cmUtNS1ncmlkICZcbn0gLy8gLmZlYXR1cmVkXG4iLCIvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBQcmV2ZW50IHRleHQgZmxpY2tlcmluZyBpbiBTYWZhcmkuXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vLy9cbi8vLyBAYXV0aG9yIENhbWVyb24gQ2FtcGJlbGxcbi8vLyBAZ3JvdXAgd2RzXG4vLy8vXG5cbi8vLyBVc2VzIGEgY29tYmluYXRpb24gb2YgZm9udC1zbW9vdGhpbmcsIGJhY2tmYWNlLCBhbmQgdHJhbnNmb3JtIHRvIHByZXZlbnQgdGV4dCBmbGlja2VyIG9uIHRyYW5zZm9ybWVkIGVsZW1lbnRzLlxuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIEJhc2ljIFVzYWdlIFNhc3Ncbi8vLyAgICAuZm9vIHtcbi8vLyAgICAgICAgQGluY2x1ZGUgYmFja2ZhY2UtcmVzZXQ7XG4vLy8gICAgfVxuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIEJhc2ljIFVzYWdlIENTUyBPdXRwdXRcbi8vLyAgICAuZm9vIHtcbi8vLyAgICAgICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuLy8vXHRcdFx0YmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuLy8vXHRcdFx0dHJhbnNmb3JtLXN0eWxlOiBwcmVzZXJ2ZS0zZDtcbi8vLyAgICB9XG5cbkBtaXhpbiBiYWNrZmFjZS1yZXNldCB7XG5cdC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuXHRiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG5cdHRyYW5zZm9ybS1zdHlsZTogcHJlc2VydmUtM2Q7XG59XG4iLCIvLyBTaG9ydGhhbmQgbWl4aW4uIFN1cHBvcnRzIG11bHRpcGxlIHBhcmVudGhlc2VzLWRlbGltaW5hdGVkIHZhbHVlcyBmb3IgZWFjaCB2YXJpYWJsZS5cbi8vIEV4YW1wbGU6IEBpbmNsdWRlIHRyYW5zaXRpb24gKGFsbCAycyBlYXNlLWluLW91dCk7XG4vLyAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uIChvcGFjaXR5IDFzIGVhc2UtaW4gMnMsIHdpZHRoIDJzIGVhc2Utb3V0KTtcbi8vICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24tcHJvcGVydHkgKHRyYW5zZm9ybSwgb3BhY2l0eSk7XG5cbkBtaXhpbiB0cmFuc2l0aW9uKCRwcm9wZXJ0aWVzLi4uKSB7XG4gIEBpbmNsdWRlIF9ib3VyYm9uLWRlcHJlY2F0ZS1mb3ItcHJlZml4aW5nKFwidHJhbnNpdGlvblwiKTtcblxuICAvLyBGaXggZm9yIHZlbmRvci1wcmVmaXggdHJhbnNmb3JtIHByb3BlcnR5XG4gICRuZWVkcy1wcmVmaXhlczogZmFsc2U7XG4gICR3ZWJraXQ6ICgpO1xuICAkbW96OiAoKTtcbiAgJHNwZWM6ICgpO1xuXG4gIC8vIENyZWF0ZSBsaXN0cyBmb3IgdmVuZG9yLXByZWZpeGVkIHRyYW5zZm9ybVxuICBAZWFjaCAkbGlzdCBpbiAkcHJvcGVydGllcyB7XG4gICAgQGlmIG50aCgkbGlzdCwgMSkgPT0gXCJ0cmFuc2Zvcm1cIiB7XG4gICAgICAkbmVlZHMtcHJlZml4ZXM6IHRydWU7XG4gICAgICAkbGlzdDE6IC13ZWJraXQtdHJhbnNmb3JtO1xuICAgICAgJGxpc3QyOiAtbW96LXRyYW5zZm9ybTtcbiAgICAgICRsaXN0MzogKCk7XG5cbiAgICAgIEBlYWNoICR2YXIgaW4gJGxpc3Qge1xuICAgICAgICAkbGlzdDM6IGpvaW4oJGxpc3QzLCAkdmFyKTtcblxuICAgICAgICBAaWYgJHZhciAhPSBcInRyYW5zZm9ybVwiIHtcbiAgICAgICAgICAkbGlzdDE6IGpvaW4oJGxpc3QxLCAkdmFyKTtcbiAgICAgICAgICAkbGlzdDI6IGpvaW4oJGxpc3QyLCAkdmFyKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAkd2Via2l0OiBhcHBlbmQoJHdlYmtpdCwgJGxpc3QxKTtcbiAgICAgICRtb3o6ICAgIGFwcGVuZCgkbW96LCAgICAkbGlzdDIpO1xuICAgICAgJHNwZWM6ICAgYXBwZW5kKCRzcGVjLCAgICRsaXN0Myk7XG4gICAgfSBAZWxzZSB7XG4gICAgICAkd2Via2l0OiBhcHBlbmQoJHdlYmtpdCwgJGxpc3QsIGNvbW1hKTtcbiAgICAgICRtb3o6ICAgIGFwcGVuZCgkbW96LCAgICAkbGlzdCwgY29tbWEpO1xuICAgICAgJHNwZWM6ICAgYXBwZW5kKCRzcGVjLCAgICRsaXN0LCBjb21tYSk7XG4gICAgfVxuICB9XG5cbiAgQGlmICRuZWVkcy1wcmVmaXhlcyB7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiAkd2Via2l0O1xuICAgICAgIC1tb3otdHJhbnNpdGlvbjogJG1vejtcbiAgICAgICAgICAgIHRyYW5zaXRpb246ICRzcGVjO1xuICB9IEBlbHNlIHtcbiAgICBAaWYgbGVuZ3RoKCRwcm9wZXJ0aWVzKSA+PSAxIHtcbiAgICAgIEBpbmNsdWRlIHByZWZpeGVyKHRyYW5zaXRpb24sICRwcm9wZXJ0aWVzLCB3ZWJraXQgbW96IHNwZWMpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgJHByb3BlcnRpZXM6IGFsbCAwLjE1cyBlYXNlLW91dCAwcztcbiAgICAgIEBpbmNsdWRlIHByZWZpeGVyKHRyYW5zaXRpb24sICRwcm9wZXJ0aWVzLCB3ZWJraXQgbW96IHNwZWMpO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gdHJhbnNpdGlvbi1wcm9wZXJ0eSgkcHJvcGVydGllcy4uLikge1xuICBAaW5jbHVkZSBfYm91cmJvbi1kZXByZWNhdGUtZm9yLXByZWZpeGluZyhcInRyYW5zaXRpb24tcHJvcGVydHlcIik7XG5cbiAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2l0aW9uLXByb3BlcnR5LW5hbWVzKCRwcm9wZXJ0aWVzLCBcIndlYmtpdFwiKTtcbiAgICAgLW1vei10cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2l0aW9uLXByb3BlcnR5LW5hbWVzKCRwcm9wZXJ0aWVzLCBcIm1velwiKTtcbiAgICAgICAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2l0aW9uLXByb3BlcnR5LW5hbWVzKCRwcm9wZXJ0aWVzLCBmYWxzZSk7XG59XG5cbkBtaXhpbiB0cmFuc2l0aW9uLWR1cmF0aW9uKCR0aW1lcy4uLikge1xuICBAaW5jbHVkZSBfYm91cmJvbi1kZXByZWNhdGUtZm9yLXByZWZpeGluZyhcInRyYW5zaXRpb24tZHVyYXRpb25cIik7XG5cbiAgQGluY2x1ZGUgcHJlZml4ZXIodHJhbnNpdGlvbi1kdXJhdGlvbiwgJHRpbWVzLCB3ZWJraXQgbW96IHNwZWMpO1xufVxuXG5AbWl4aW4gdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb24oJG1vdGlvbnMuLi4pIHtcbiAgQGluY2x1ZGUgX2JvdXJib24tZGVwcmVjYXRlLWZvci1wcmVmaXhpbmcoXCJ0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvblwiKTtcblxuICAvLyBlYXNlIHwgbGluZWFyIHwgZWFzZS1pbiB8IGVhc2Utb3V0IHwgZWFzZS1pbi1vdXQgfCBjdWJpYy1iZXppZXIoKVxuICBAaW5jbHVkZSBwcmVmaXhlcih0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbiwgJG1vdGlvbnMsIHdlYmtpdCBtb3ogc3BlYyk7XG59XG5cbkBtaXhpbiB0cmFuc2l0aW9uLWRlbGF5KCR0aW1lcy4uLikge1xuICBAaW5jbHVkZSBfYm91cmJvbi1kZXByZWNhdGUtZm9yLXByZWZpeGluZyhcInRyYW5zaXRpb24tZGVsYXlcIik7XG5cbiAgQGluY2x1ZGUgcHJlZml4ZXIodHJhbnNpdGlvbi1kZWxheSwgJHRpbWVzLCB3ZWJraXQgbW96IHNwZWMpO1xufVxuIiwiLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gQXJ0aWNsZSBDYXJkIFN0eWxlc1xuLy9cbi8vIFRoZXNlIHN0eWxlcyBhcmUgdXNlZCBvbiBhbGwgcGFnZXMgZm9yIHRoZSBob3Jpem9udGFsIGJsb2dcbi8vIGNhcmRzIGluIHBvc3QgZmVlZHMgYW5kIHN3aXRjaCB0byB2ZXJ0aWNhbCBjYXJkcyBvbiBtb2JpbGUuXG4vL1xuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4uaG9yaXpvbnRhbC1ibG9nLWNhcmQge1xuXHRAaW5jbHVkZSBvdXRlci1jb250YWluZXI7XG5cblx0YWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG5cdGJhY2tncm91bmQ6ICRjb2xvci1zYW5kO1xuXHRib3JkZXI6IHJlbSgxKSBzb2xpZCAkY29sb3ItYmxvZy1jYXJkLXNoYWRvdztcblx0Ym9yZGVyLXRvcDogcmVtKDMpIHNvbGlkICRjb2xvci1uZmw7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGZsZXgtd3JhcDogd3JhcDtcblx0bWFyZ2luLWJvdHRvbTogcmVtKDUpO1xuXHRwYWRkaW5nLWJvdHRvbTogcmVtKDUpO1xuXHRwYWRkaW5nLXRvcDogcmVtKDUpO1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cblx0QGluY2x1ZGUgbWVkaWEoJHRhYmxldC1wb3J0cmFpdCkge1xuXHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdFx0Ym9yZGVyOiBub25lO1xuXHRcdGJvcmRlci10b3Atd2lkdGg6IHJlbSgzKTtcblx0XHRib3gtc2hhZG93OiByZW0oLTExLjEpIHJlbSgxMCkgcmVtKDIwKSByZW0oMykgJGNvbG9yLWJsb2ctY2FyZC1zaGFkb3c7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0bWFyZ2luLWJvdHRvbTogcmVtKDY3KTtcblx0XHRwYWRkaW5nLWJvdHRvbTogcmVtKDIwKTtcblx0XHRwYWRkaW5nLXRvcDogMDtcblx0fVxuXG5cdEBpbmNsdWRlIG1lZGlhKCR0YWJsZXQtbGFuZHNjYXBlKSB7XG5cdFx0bWFyZ2luLWJvdHRvbTogcmVtKDYwKTtcblx0fVxuXG5cdEBpbmNsdWRlIG1lZGlhKCR0YWJsZXQtbGFyZ2UpIHtcblx0XHRtaW4taGVpZ2h0OiByZW0oMjg3KTtcblx0XHRwYWRkaW5nLWJvdHRvbTogMDtcblx0fVxuXG5cdCY6bGFzdC1jaGlsZCB7XG5cdFx0bWFyZ2luLWJvdHRvbTogMDtcblx0fSAvLyAmOmxhc3QtY2hpbGRcblxuXHQmOjphZnRlciB7XG5cdFx0Y2xlYXI6IG5vbmU7IC8vIFByZXZlbnRzIGNhcmRzIGZyb20gcmFuZG9tbHkgc3BpbGxpbmcgb3V0IG9mIGNvbnRhaW5lci5cblx0fSAvLyAmOjphZnRlclxuXG5cdC8vIFJlc2V0IHRoZSBjYXRlZ29yeSBsYWJlbCBzdHlsZXMuXG5cdC5jYXQtbGlua3Mge1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdG1hcmdpbi1ib3R0b206IHJlbSg1KTtcblxuXHRcdGEge1xuXHRcdFx0QGluY2x1ZGUgbWFyZ2luLXBhZGRpbmctcmVzZXQ7XG5cblx0XHRcdGJhY2tncm91bmQ6IG5vbmU7XG5cdFx0XHRjb2xvcjogJGNvbG9yLWNhdGVnb3J5LWxpbms7XG5cdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdGZvbnQtc2l6ZTogcmVtKDE0KTtcblx0XHRcdGxldHRlci1zcGFjaW5nOiByZW0oMik7XG5cdFx0XHRsaW5lLWhlaWdodDogMS4yNTtcblxuXHRcdFx0QGluY2x1ZGUgbWVkaWEoJHRhYmxldC1wb3J0cmFpdCkge1xuXHRcdFx0XHRtYXJnaW4tdG9wOiByZW0oOSk7XG5cdFx0XHR9XG5cblx0XHRcdEBpbmNsdWRlIG1lZGlhKCR0YWJsZXQtbGFuZHNjYXBlKSB7XG5cdFx0XHRcdG1hcmdpbjogcmVtKDE1KSAwIDAgMDtcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQvLyBUaGlzIGlzIGEgd3JhcHBlciB0aGF0IGNvbnRhaW5zIHRoZSBjYXJkIHRleHQgYW5kIGlzIGFsc28gdXNlZCB0byBhZGQgdGhlIHRvcCBib3JkZXIgb24gZGVza3RvcC5cblx0LmNhcmQtY29udGVudHMge1xuXHRcdGZsZXg6IDE7XG5cblx0XHRAaW5jbHVkZSBtZWRpYSgkdGFibGV0LXBvcnRyYWl0KSB7XG5cdFx0XHRwYWRkaW5nLXJpZ2h0OiByZW0oMTApO1xuXHRcdH1cblxuXHRcdEBpbmNsdWRlIG1lZGlhKCR0YWJsZXQtbGFyZ2UpIHtcblx0XHRcdGJvcmRlci10b3A6IHJlbSg2KSBzb2xpZCAkY29sb3ItbmZsO1xuXG5cdFx0XHQvLyBMb29wIHRocm91Z2ggYWxsIGNhdGVnb3J5IGNvbG9ycy5cblx0XHRcdEBlYWNoICRjYXRlZ29yeS1jb2xvcnMsICRjb2xvciBpbiAkY2F0ZWdvcnktY29sb3JzIHtcblxuXHRcdFx0XHQvLyBDaGFuZ2UgYm9yZGVyIGNvbG9yIGJhc2VkIG9uIGNhdGVnb3J5LlxuXHRcdFx0XHQmW2NsYXNzKj1cIiN7JGNhdGVnb3J5LWNvbG9yc31cIl0ge1xuXHRcdFx0XHRcdGJvcmRlci10b3AtY29sb3I6ICRjb2xvcjtcblx0XHRcdFx0fSAvLyBhLSN7JGNhdGVnb3J5LWNvbG9yc31cblx0XHRcdH0gLy8gZW5kIGVhY2ggbG9vcC5cblx0XHR9IC8vIGVuZCBlYWNoIGJyZWFrcG9pbnQuXG5cdH0gLy8gLmNhcmQtY29udGVudHNcblxuXHQvLyBDb250YWlucyBFbnRyeSB0aXRsZS9ibG9nIHRpdGxlLlxuXHQuY2FyZC10aXRsZSB7XG5cdFx0QGluY2x1ZGUgYmxvZy1jYXJkLXBhZGRpbmc7XG5cblx0XHQuZW50cnktdGl0bGUge1xuXHRcdFx0QGV4dGVuZCAuaDM7XG5cblx0XHRcdGZvbnQtc2l6ZTogcmVtKDE2KTtcblx0XHRcdGxpbmUtaGVpZ2h0OiAxO1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogcmVtKDE2KTtcblx0XHRcdG1hcmdpbi10b3A6IDA7XG5cblx0XHRcdEBpbmNsdWRlIG1lZGlhKCR0YWJsZXQtcG9ydHJhaXQpIHtcblx0XHRcdFx0Zm9udC1zaXplOiByZW0oMjgpO1xuXHRcdFx0fVxuXG5cdFx0XHRAaW5jbHVkZSBtZWRpYSgkdGFibGV0LWxhcmdlKSB7XG5cdFx0XHRcdGxpbmUtaGVpZ2h0OiAxLjI7XG5cdFx0XHRcdG1hcmdpbi1ib3R0b206IHJlbSgxNCk7XG5cdFx0XHR9XG5cblx0XHRcdGEge1xuXHRcdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdH0gLy8gYVxuXHRcdH0gLy8gLmVudHJ5LXRpdGxlXG5cdH0gLy8gLmNhcmQtdGl0bGVcblxuXHQvLyBUaGlzIGlzIHRoZSBtYWluIHRleHQgb2YgdGhlIGNhcmQuXG5cdC5jYXJkLWV4Y2VycHQge1xuXHRcdEBpbmNsdWRlIGJsb2ctY2FyZC1wYWRkaW5nO1xuXG5cdFx0ZGlzcGxheTogbm9uZTtcblx0XHR3aWR0aDogYXV0bztcblxuXHRcdEBpbmNsdWRlIG1lZGlhKCR0YWJsZXQtbGFuZHNjYXBlKSB7XG5cdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHR9XG5cblx0XHRwIHtcblx0XHRcdGZvbnQtc2l6ZTogcmVtKDE2KTtcblx0XHRcdGxpbmUtaGVpZ2h0OiAxLjI7XG5cblx0XHRcdEBpbmNsdWRlIG1lZGlhKCR0YWJsZXQtbGFyZ2UpIHtcblx0XHRcdFx0bGluZS1oZWlnaHQ6IDEuMzc1O1xuXHRcdFx0fVxuXHRcdH0gLy8gcFxuXG5cdFx0Ly8gSGlkZSB0aGUgZXhjZXJwdCB3aGVuIHRoZXJlIGlzIGEgbG9uZyB0aXRsZSBvbiBsYXJnZXIgc2NyZWVucy5cblx0XHQmLmxvbmctdGl0bGUge1xuXG5cdFx0XHRAaW5jbHVkZSBtZWRpYSgkdGFibGV0LWxhcmdlKSB7XG5cdFx0XHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0XHR9XG5cblx0XHR9IC8vICYubG9uZy10aXRsZVxuXHR9IC8vIC5jYXJkLWV4Y2VycHRcblxuXHQvLyBGZWF0dXJlZCBpbWFnZS5cblx0LmNhcmQtaW1hZ2Uge1xuXHRcdEBpbmNsdWRlIHBvc2l0aW9uKHJlbGF0aXZlLCBudWxsKTtcblxuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdGhlaWdodDogcmVtKDExMCk7XG5cdFx0bWFyZ2luOiAwIHJlbSg1KTtcblx0XHR3aWR0aDogNDUlO1xuXHRcdHotaW5kZXg6IDA7XG5cblx0XHRAaW5jbHVkZSBtZWRpYSgkdGFibGV0LXBvcnRyYWl0KSB7XG5cdFx0XHRib3JkZXItYm90dG9tOiByZW0oNikgc29saWQgJGNvbG9yLW5mbDtcblx0XHRcdG1hcmdpbjogMDtcblx0XHRcdG1pbi1oZWlnaHQ6IHJlbSgzMTQpO1xuXHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0fVxuXG5cdFx0QGluY2x1ZGUgbWVkaWEoJHRhYmxldC1sYXJnZSkge1xuXHRcdFx0QGluY2x1ZGUgc3Bhbi1jb2x1bW5zKDUuODUpO1xuXG5cdFx0XHRib3JkZXI6IG5vbmU7XG5cdFx0XHRtYXJnaW4tcmlnaHQ6IHJlbSgxNCk7XG5cdFx0XHRtaW4taGVpZ2h0OiByZW0oMjg3KTtcblx0XHR9Ly8gZW5kIGJyZWFrcG9pbnRcblxuXHRcdC8vIExvb3AgdGhyb3VnaCBhbGwgY2F0ZWdvcnkgY29sb3JzLlxuXHRcdEBlYWNoICRjYXRlZ29yeS1jb2xvcnMsICRjb2xvciBpbiAkY2F0ZWdvcnktY29sb3JzIHtcblxuXHRcdFx0Ly8gU2V0IHN0eWxlcyBvbiB0aGUgdGFncy5cblx0XHRcdCZbY2xhc3MqPVwiI3skY2F0ZWdvcnktY29sb3JzfVwiXSB7XG5cdFx0XHRcdGJvcmRlci1ib3R0b20tY29sb3I6ICRjb2xvcjtcblx0XHRcdH0gLy8gYS0jeyRjYXRlZ29yeS1jb2xvcnN9XG5cdFx0fSAvLyBlbmQgZWFjaCBsb29wXG5cdH0gLy8gLmNhcmQtaW1hZ2VcblxuXHQvLyBCeWxpbmUgYW5kIHBvc3QgbWV0YSBpbmZvIGF0IGJvdHRvbSBvZiBjYXJkLlxuXHRmb290ZXIge1xuXHRcdGNsZWFyOiBib3RoO1xuXHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0bWFyZ2luLXRvcDogcmVtKDE2KTtcblx0XHRwYWRkaW5nOiAwIHJlbSg4KTtcblx0XHR3aWR0aDogMTAwJTtcblxuXHRcdEBpbmNsdWRlIG1lZGlhKCR0YWJsZXQtcG9ydHJhaXQpIHtcblx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0cGFkZGluZzogMCAwIDAgcmVtKDE2KTtcblx0XHRcdHdpZHRoOiBhdXRvO1xuXHRcdH1cblxuXHRcdEBpbmNsdWRlIG1lZGlhKCR0YWJsZXQtbGFuZHNjYXBlKSB7XG5cdFx0XHRtYXJnaW4tdG9wOiAwO1xuXHRcdH1cblxuXHRcdEBpbmNsdWRlIG1lZGlhKCR0YWJsZXQtbGFyZ2UpIHtcblx0XHRcdEBpbmNsdWRlIHBvc2l0aW9uKGFic29sdXRlLCBudWxsIG51bGwgcmVtKDkpIDQ4LjEzMjUzJSk7XG5cdFx0fVxuXG5cdFx0Ly8gVGhlIHBvc3RlZCBvbiB0aW1lLlxuXHRcdC5lbnRyeS1kYXRlIHtcblx0XHRcdG1hcmdpbi1yaWdodDogcmVtKDYpO1xuXHRcdFx0cGFkZGluZy1sZWZ0OiByZW0oNSk7XG5cdFx0fSAvLyAuZW50cnktZGF0ZVxuXG5cdFx0LmJ5bGluZSB7XG5cdFx0XHRAZXh0ZW5kIC5oNDtcblxuXHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRmb250LXNpemU6IHJlbSgxMyk7XG5cdFx0XHRsZXR0ZXItc3BhY2luZzogcmVtKDEuMzUpO1xuXHRcdFx0bWFyZ2luLXRvcDogcmVtKC0xNCk7IC8vIFBhZGRpbmcgb24gY2FyZCBkb2Vzbid0IHdvcmsgb24gZGVza3RvcCBzbyB3ZSBuZWVkIGEgbGl0dGxlIGJpdCBvZiBzcGFjZSBoZXJlIGFuZCAtbWFyZ2luIGlzIHRoZSBjbGVhbmVzdCB3YXkgdW5mb3J0dW5hdGVseS5cblx0XHRcdHBhZGRpbmctbGVmdDogcmVtKDMpO1xuXG5cdFx0XHRAaW5jbHVkZSBtZWRpYSgkdGFibGV0LXBvcnRyYWl0KSB7XG5cdFx0XHRcdGZvbnQtc2l6ZTogcmVtKDEzKTtcblx0XHRcdFx0cGFkZGluZy1sZWZ0OiByZW0oNSk7XG5cdFx0XHR9XG5cblx0XHRcdEBpbmNsdWRlIG1lZGlhKCR0YWJsZXQtbGFyZ2UpIHtcblx0XHRcdFx0cGFkZGluZy1sZWZ0OiAwO1xuXHRcdFx0fVxuXG5cdFx0XHQvLyBUaGUgYXV0aG9yIG5hbWUgd2hpY2ggbGlua3MgdG8gdGhlaXIgYXV0aG9yIHBhZ2UuXG5cdFx0XHRhIHtcblx0XHRcdFx0Ym9yZGVyOiBub25lO1xuXHRcdFx0XHRmb250LXN0eWxlOiBub3JtYWw7XG5cdFx0XHR9IC8vIGFcblx0XHR9IC8vIC5ieWxpbmVcblxuXHRcdC8vIFRoZSBjb21tZW50IGJ1YmJsZSBjb250YWluaW5nIG51bWJlciBvZiBjb21tZW50cy5cblx0XHQuY29tbWVudHMtbnVtYmVyIHtcblx0XHRcdEBpbmNsdWRlIHNpemUocmVtKDMwKSByZW0oMjQpKTtcblxuXHRcdFx0YmFja2dyb3VuZDogdXJsKFwiYXNzZXRzL2ltYWdlcy9zdmctaWNvbnMvY29tbWVudC1idWJibGUuc3ZnXCIpIG5vLXJlcGVhdDtcblx0XHRcdGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG5cdFx0XHRjb2xvcjogJGNvbG9yLXdoaXRlO1xuXHRcdFx0ZGlzcGxheTogbm9uZTtcblx0XHRcdGZvbnQtZmFtaWx5OiBIZWx2ZXRpY2EsIEFyaWFsLCBzYW5zLXNlcmlmOyAvLyBTYW1lIGZvbnQgaW4gY29tcHMgYmVjYXVzZSBvdXIgMiBmb250cyBkaWRuJ3QgcXVpdGUgbG9vayBncmVhdCBpbiB0aGUgY29tbWVudCBidWJibGUgYXQgc21hbGwgc2l6ZXMuXG5cdFx0XHRmb250LXNpemU6IHJlbSgxMyk7XG5cdFx0XHRmb250LXN0eWxlOiBub3JtYWw7XG5cdFx0XHRmb250LXdlaWdodDogMzAwO1xuXHRcdFx0bGV0dGVyLXNwYWNpbmc6IHJlbSgxKTtcblx0XHRcdHBhZGRpbmctbGVmdDogcmVtKDIpO1xuXHRcdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRcdFx0dHJhbnNpdGlvbjogb3BhY2l0eSAwLjE4cyBlYXNlLW91dDtcblxuXHRcdFx0QGluY2x1ZGUgbWVkaWEoJHRhYmxldC1wb3J0cmFpdCkge1xuXHRcdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0XHR9XG5cdFx0fSAvLyAuY29tbWVudHMtbnVtYmVyXG5cdH0gLy8gZm9vdGVyXG59IC8vIC5ob3Jpem9udGFsLWJsb2ctY2FyZFxuIiwiLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gUGFkZGluZyBtaXhpbmcgZm9yIHRoZSBIb3Jpem9udGFsIEJsb2cgQ2FyZHMuXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vLy9cbi8vLyBAYXV0aG9yIENhbWVyb24gQ2FtcGJlbGxcbi8vLyBAZ3JvdXAgd2RzXG4vLy8vXG5cbi8vLyBTaW1wbHkgYWRkcyB0aGUgY29ycmVjdCBwYWRkaW5nIHRvIGJsb2cgY2FyZCBjb250ZW50cyBzaW5jZVxuLy8vIHdlJ3JlIG5vdCBhYmxlIHRvIHVzZSBhIGNvbnRhaW5lciBkaXYgdG8gY29udHJvbCB0aGF0LlxuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIEJhc2ljIFVzYWdlIFNhc3Ncbi8vLyAgICAuZm9vIHtcbi8vLyAgICAgICAgQGluY2x1ZGUgYmxvZy1jYXJkLXBhZGRpbmc7XG4vLy8gICAgfVxuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIEJhc2ljIFVzYWdlIENTUyBPdXRwdXRcbi8vLyAgICAuZm9vIHtcbi8vLyAgICAgICAgIHBhZGRpbmc6IDAgMCAwIDIwcmVtO1xuLy8vICAgIH1cblxuQG1peGluIGJsb2ctY2FyZC1wYWRkaW5nIHtcblx0cGFkZGluZzogMCByZW0oOCk7XG5cblx0QGluY2x1ZGUgbWVkaWEoJHRhYmxldC1wb3J0cmFpdCkge1xuXHRcdHBhZGRpbmc6IDAgMCAwIHJlbSgyMCk7XG5cdH1cbn1cbiIsIi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIFRvZ2dsZWFibGUgbGlzdFxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBEcm9wZG93biB0b2dnbGUgYnV0dG9uXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4uZHJvcGRvd24td3JhcCB7XG5cdC5kcm9wZG93bi10b2dnbGUge1xuXHRcdGJhY2tncm91bmQ6ICRjb2xvci13aGl0ZTtcblx0XHRib3JkZXI6IG5vbmU7XG5cdFx0Ym9yZGVyLXJhZGl1czogcmVtKDMpO1xuXHRcdGNvbG9yOiAkY29sb3ItbWlkLWdyYXk7XG5cdFx0Zm9udC1mYW1pbHk6ICRmb250LXNlcmlmO1xuXHRcdGZvbnQtc2l6ZTogcmVtKDE4KTtcblx0XHRmb250LXdlaWdodDogbm9ybWFsO1xuXHRcdHBhZGRpbmc6IHJlbSgxNCkgcmVtKDIyKSByZW0oMTMpIHJlbSg4KTtcblx0XHR0ZXh0LWFsaWduOiBsZWZ0O1xuXHRcdHRleHQtdHJhbnNmb3JtOiBub25lO1xuXG5cdFx0c3ZnIHtcblx0XHRcdEBpbmNsdWRlIHNpemUocmVtKDI4KSByZW0oMjcpKTtcblxuXHRcdFx0ZmlsbDogJGNvbG9yLWFycm93LWdyYXk7XG5cdFx0XHRmbG9hdDogcmlnaHQ7XG5cdFx0XHRtYXJnaW4tbGVmdDogcmVtKDE1KTtcblx0XHRcdG1hcmdpbi1yaWdodDogcmVtKC0zKTtcblx0XHRcdHBhZGRpbmc6IDA7XG5cdFx0XHR2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXHRcdH0gLy8gc3ZnXG5cdH0gLy8gLmRyb3Bkb3duLXRvZ2dsZVxufSAvLyAuZHJvcGRvd24td3JhcFxuXG5cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIERyb3Bkb3duIGxpc3Rcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi5kcm9wZG93bi13cmFwIHtcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRmb250LXNpemU6IHJlbSgxOCk7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuXHRAaW5jbHVkZSBtZWRpYSgkdGFibGV0LWxhbmRzY2FwZSkge1xuXHRcdHdpZHRoOiAxMDAlO1xuXHR9XG5cblx0LmRyb3Bkb3duLWxpc3Qge1xuXHRcdEBpbmNsdWRlIGxpc3QtcmVzZXQoKTtcblx0XHRAaW5jbHVkZSBwb3NpdGlvbihhYnNvbHV0ZSwgMTAwJSBudWxsIG51bGwgbnVsbCk7XG5cblx0XHRiYWNrZ3JvdW5kOiAkY29sb3Itd2hpdGU7XG5cdFx0ZGlzcGxheTogbm9uZTtcblx0XHR3aWR0aDogMTAwJTtcblxuXHRcdCYub3BlbiB7XG5cdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHR9IC8vICYub3BlblxuXG5cdFx0Ji50b3Age1xuXHRcdFx0Ym90dG9tOiAxMDAlO1xuXHRcdFx0dG9wOiBhdXRvO1xuXHRcdH0gLy8gJi50b3BcblxuXHRcdGEge1xuXHRcdFx0Ym9yZGVyLWJvdHRvbTogbm9uZTtcblx0XHRcdGNvbG9yOiAkY29sb3Itc2l0ZWxpc3QtZ3JheTtcblx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0cGFkZGluZzogcmVtKDEwKTtcblx0XHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblxuXHRcdFx0Jjpob3Zlcixcblx0XHRcdCY6YWN0aXZlLFxuXHRcdFx0Jjpmb2N1cyB7XG5cdFx0XHRcdGJhY2tncm91bmQ6ICRjb2xvci1zaWx2ZXI7XG5cdFx0XHRcdGNvbG9yOiAkY29sb3Itd2hpdGU7XG5cdFx0XHRcdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblx0XHRcdH0gLy8gJjpob3ZlciwgJjphY3RpdmUsICY6Zm9jdXNcblx0XHR9IC8vIGFcblx0fSAvLyAuZHJvcGRvd24tbGlzdFxufSAvLyAuZHJvcGRvd24td3JhcFxuIiwiLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gUGFnaW5hdGlvbiBsaW5rc1xuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4ucG9zdHMtbmF2aWdhdGlvbiB7XG5cdEBpbmNsdWRlIG1lZGlhKG1heC13aWR0aCAkdGFibGV0LWxhbmRzY2FwZSkge1xuXHRcdG1hcmdpbi1ib3R0b206IHJlbSg0NCk7XG5cdH1cbn0gLy8gLnBvc3RzLW5hdmlnYXRpb25cblxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gUHJldi9OZXh0IHBhZ2luYXRpb25cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi5uYXYtbGlua3Mge1xuXG5cdC5idXR0b24ge1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdGZvbnQtc2l6ZTogcmVtKDI0KTtcblx0XHRmb250LXdlaWdodDogNzAwO1xuXHRcdHBhZGRpbmc6IHJlbSg5KSByZW0oMTMpO1xuXHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblxuXHRcdEBpbmNsdWRlIG1lZGlhKCRwaG9uZS1sYW5kc2NhcGUpIHtcblx0XHRcdGZvbnQtc2l6ZTogcmVtKDMwKTtcblx0XHR9XG5cblx0XHRAaW5jbHVkZSBtZWRpYSgkdGFibGV0LXBvcnRyYWl0KSB7XG5cdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0XHRmb250LXNpemU6IHJlbSgxOCk7XG5cdFx0XHR0ZXh0LWFsaWduOiBsZWZ0O1xuXHRcdH1cblx0fSAvLyAuYnV0dG9uXG5cblx0Lm5hdi1wcmV2aW91cyB7XG5cdFx0cGFkZGluZy1yaWdodDogcmVtKDIzKTtcblx0fSAvLyAubmF2LXByZXZpb3VzXG5cblx0Lm5hdi1uZXh0IHtcblx0XHRtYXJnaW4tdG9wOiByZW0oMjApO1xuXHRcdHBhZGRpbmctbGVmdDogcmVtKDIzKTtcblxuXHRcdEBpbmNsdWRlIG1lZGlhKCR0YWJsZXQtcG9ydHJhaXQpIHtcblx0XHRcdGZsb2F0OiByaWdodDtcblx0XHRcdG1hcmdpbi10b3A6IDA7XG5cdFx0fVxuXHR9IC8vIC5uYXYtbmV4dFxuXG59IC8vIC5uYXYtbGlua3NcblxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gUHJldi9OZXh0IGljb25zXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4ubmF2LWxpbmtzIHtcblxuXHQuaWNvbiAge1xuXHRcdEBpbmNsdWRlIHNpemUocmVtKDI0KSByZW0oMTYpKTtcblxuXHRcdG1hcmdpbi1sZWZ0OiByZW0oMTUpO1xuXHRcdG1hcmdpbi10b3A6IHJlbSgtMyk7XG5cdFx0dmVydGljYWwtYWxpZ246IG1pZGRsZTtcblxuXHRcdEBpbmNsdWRlIG1lZGlhKG1pbi13aWR0aCAkcGhvbmUtbGFuZHNjYXBlIG1heC13aWR0aCAkdGFibGV0LXBvcnRyYWl0KSB7XG5cdFx0XHRAaW5jbHVkZSBzaXplKHJlbSg0MCkgcmVtKDM2KSk7XG5cblx0XHRcdG1hcmdpbi1sZWZ0OiByZW0oMTgpO1xuXHRcdH1cblx0fSAvLyAuaWNvblxuXG5cdC8vIEZsaXAgdGhlIGFycm93IG9uIHRoZSBwcmV2aW91cyBsaW5rLCBzbyBpdCdzIGEgbGVmdCBmYWNpbmcgYXJyb3cuXG5cdC5uYXYtcHJldmlvdXMge1xuXHRcdC5pY29uIHtcblx0XHRcdG1hcmdpbi1sZWZ0OiAwO1xuXHRcdFx0bWFyZ2luLXJpZ2h0OiByZW0oMTUpO1xuXHRcdFx0dHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcblxuXHRcdFx0QGluY2x1ZGUgbWVkaWEobWluLXdpZHRoICRwaG9uZS1sYW5kc2NhcGUgbWF4LXdpZHRoICR0YWJsZXQtcG9ydHJhaXQpIHtcblx0XHRcdFx0bWFyZ2luLXJpZ2h0OiByZW0oMTgpO1xuXHRcdFx0fVxuXHRcdH0gLy8gLmljb25cblx0fSAvLyAubmF2LXByZXZpb3VzXG5cblx0Ly8gRW5zdXJlIHRoZSBpY29uIHR1cm5zIHdoaXRlIHdoZW4gdGhlIGJ1dHRvbnMgYXJlIGhvdmVyZWQuXG5cdC5idXR0b246YWN0aXZlLFxuXHQuYnV0dG9uOmhvdmVyLFxuXHQuYnV0dG9uOmZvY3VzIHtcblx0XHRzdmcge1xuXHRcdFx0ZmlsbDogJGNvbG9yLXdoaXRlO1xuXHRcdH0gLy8gc3ZnXG5cdH0gLy8gLmJ1dHRvbjphY3RpdmUsIC5idXR0b246aG92ZXIsIC5idXR0b246Zm9jdXNcbn0gLy8gLm5hdi1saW5rc1xuIiwiLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gRmVhdHVyZWQgUG9zdHMgaW4gdGhlIEZlYXR1cmUgNSBHcmlkXG4vL1xuLy8gRm9yIGluZGl2aWR1YWwgcG9zdCBzdHlsZXMgc2VlbiBpbiB0aGUgZ3JpZCwgcmVmZXIgdG8gZmVhdHVyZWQuc2Nzc1xuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBHcmlkIFN0eWxlcyBmb3IgRmVhdHVyZSA1IFNlY3Rpb25cbi8vXG4vLyBUaG91Z2h0IGFib3V0IHVzaW5nIGEgU2FzcyBsb29wIHNpbmNlIGVhY2hcbi8vIGl0ZW0gaXMgbnVtYmVyZWQsIGJ1dCB0aG91Z2h0IGl0IHdvdWxkIGJlXG4vLyBvdmVya2lsbCBhbmQgdGFrZSBtb3JlIHRpbWUgdGhhbiB3b3J0aC5cbi8vIE1heSByZWZhY3RvciB0b3dhcmRzIGVuZCBvZiBwcm9qZWN0IGlmIHRpbWUgYWxsb3dzLlxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLmZlYXR1cmUtNS1ncmlkIHtcblx0QGluY2x1ZGUgb3V0ZXItY29udGFpbmVyO1xuXG5cdG1hcmdpbi10b3A6IHJlbSgxOCk7XG5cdG1heC13aWR0aDogMTAwJTtcblx0d2lkdGg6IDEwMCU7XG5cblx0QGluY2x1ZGUgbWVkaWEoJHRhYmxldC1sYW5kc2NhcGUpIHtcblx0XHRtYXJnaW4tdG9wOiByZW0oMjUpO1xuXHR9XG5cblx0Ly8gR2VuZXJpYyBjbGFzcyBhcHBsaWVkIHRvIGFsbCBncmlkIGl0ZW1zLlxuXHQvLyBUYWtlcyB1cCBmdWxsIHNjcmVlbiB3aWR0aCBvbiBtb2JpbGUuXG5cdC5ncmlkLWl0ZW0ge1xuXHRcdEBpbmNsdWRlIGZpbGwtcGFyZW50O1xuXG5cdFx0b3ZlcmZsb3c6IGhpZGRlbjtcblxuXHRcdEBpbmNsdWRlIG1lZGlhKCRwaG9uZS1wb3J0cmFpdCkge1xuXHRcdFx0QGluY2x1ZGUgc3Bhbi1jb2x1bW5zKDYpO1xuXHRcdH1cblxuXHR9IC8vIC5ncmlkLWl0ZW1cblxuXHQvLyBVcHBlciBsZWZ0IHBvc3QuXG5cdC5ncmlkLXNsb3QtMSB7XG5cdFx0Ly8gVG9wIHR3byBwb3N0cyBpbiBncmlkIG5lZWQgdG8gYmUgdGFsbGVyLlxuXHRcdC5mZWF0dXJlZC1wb3N0IHtcblx0XHRcdEBpbmNsdWRlIG1lZGlhKCR0YWJsZXQtbGFyZ2UpIHtcblx0XHRcdFx0aGVpZ2h0OiByZW0oNTYwKTtcblx0XHRcdH1cblx0XHR9IC8vIC5mZWF0dXJlZC1wb3N0XG5cblx0XHRAaW5jbHVkZSBtZWRpYSgkcGhvbmUtcG9ydHJhaXQpIHtcblx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdH1cblxuXHRcdEBpbmNsdWRlIG1lZGlhKCR0YWJsZXQtbGFyZ2UpIHtcblx0XHRcdEBpbmNsdWRlIHNwYW4tY29sdW1ucyg2LjU1KTtcblxuXHRcdFx0bWFyZ2luLXJpZ2h0OiAxLjklO1xuXHRcdH1cblxuXHRcdEBpbmNsdWRlIG1lZGlhKCRkZXNrdG9wKSB7XG5cdFx0XHRAaW5jbHVkZSBzcGFuLWNvbHVtbnMoNi43KTtcblxuXHRcdFx0bWFyZ2luLXJpZ2h0OiAxLjM3NCU7XG5cdFx0fVxuXG5cdFx0QGluY2x1ZGUgbWVkaWEoJGJyZWFrcG9pbnQtMTYwMCkge1xuXHRcdFx0QGluY2x1ZGUgc3Bhbi1jb2x1bW5zKDYuNzUpO1xuXG5cdFx0XHRtYXJnaW4tcmlnaHQ6IDEuNSU7XG5cdFx0fVxuXG5cdFx0QGluY2x1ZGUgbWVkaWEoJGxhcmdlLWRlc2t0b3ApIHtcblx0XHRcdEBpbmNsdWRlIHNwYW4tY29sdW1ucyg2LjcpO1xuXG5cdFx0XHRtYXJnaW4tcmlnaHQ6IDEuMzc0JTtcblx0XHR9XG5cdH0gLy8gLmdyaWQtc2xvdC0xXG5cblx0Ly8gVXBwZXIgcmlnaHQgcG9zdC5cblx0LmdyaWQtc2xvdC0yIHtcblx0XHQvLyBUb3AgdHdvIHBvc3RzIGluIGdyaWQgbmVlZCB0byBiZSB0YWxsZXIuXG5cdFx0LmZlYXR1cmVkLXBvc3Qge1xuXHRcdFx0QGluY2x1ZGUgbWVkaWEoJHRhYmxldC1sYXJnZSkge1xuXHRcdFx0XHRoZWlnaHQ6IHJlbSg1NjApO1xuXHRcdFx0fVxuXHRcdH0gLy8gLmZlYXR1cmVkLXBvc3RcblxuXHRcdEBpbmNsdWRlIG1lZGlhKCR0YWJsZXQtbGFyZ2UpIHtcblx0XHRcdEBpbmNsdWRlIHNwYW4tY29sdW1ucyg1LjM2Nyk7XG5cblx0XHRcdG1hcmdpbi1yaWdodDogMDtcblx0XHR9XG5cblx0XHRAaW5jbHVkZSBtZWRpYSgkZGVza3RvcCkge1xuXHRcdFx0QGluY2x1ZGUgc3Bhbi1jb2x1bW5zKDUuMjgpO1xuXG5cdFx0XHRtYXJnaW4tcmlnaHQ6IDA7XG5cdFx0fVxuXG5cdFx0QGluY2x1ZGUgbWVkaWEoJGJyZWFrcG9pbnQtMTYwMCkge1xuXHRcdFx0QGluY2x1ZGUgc3Bhbi1jb2x1bW5zKDUuMjE1KTtcblxuXHRcdFx0bWFyZ2luLXJpZ2h0OiAwO1xuXHRcdH1cblxuXHRcdEBpbmNsdWRlIG1lZGlhKCRsYXJnZS1kZXNrdG9wKSB7XG5cdFx0XHRAaW5jbHVkZSBzcGFuLWNvbHVtbnMoNS4yOCk7XG5cblx0XHRcdG1hcmdpbi1yaWdodDogMDtcblx0XHR9XG5cdH0gLy8gLmdyaWQtc2xvdC0yXG5cblx0Ly8gQm90dG9tIGxlZnQgcG9zdC5cblx0LmdyaWQtc2xvdC0zIHtcblx0XHRAaW5jbHVkZSBtZWRpYSgkcGhvbmUtcG9ydHJhaXQpIHtcblx0XHRcdG1hcmdpbi1yaWdodDogMDtcblx0XHR9XG5cblx0XHRAaW5jbHVkZSBtZWRpYSgkdGFibGV0LWxhcmdlKSB7XG5cdFx0XHRAaW5jbHVkZSBzcGFuLWNvbHVtbnMoNS4xNzkyKTtcblxuXHRcdFx0bWFyZ2luLXJpZ2h0OiAxLjklO1xuXHRcdH1cblxuXHRcdEBpbmNsdWRlIG1lZGlhKCRkZXNrdG9wKSB7XG5cdFx0XHRAaW5jbHVkZSBzcGFuLWNvbHVtbnMoNS4zKTtcblxuXHRcdFx0bWFyZ2luLXJpZ2h0OiAxLjM3NCU7XG5cdFx0fVxuXG5cdFx0QGluY2x1ZGUgbWVkaWEoJGJyZWFrcG9pbnQtMTYwMCkge1xuXHRcdFx0QGluY2x1ZGUgc3Bhbi1jb2x1bW5zKDUuMjUpO1xuXG5cdFx0XHRtYXJnaW4tcmlnaHQ6IDEuNSU7XG5cdFx0fVxuXG5cdFx0QGluY2x1ZGUgbWVkaWEoJGxhcmdlLWRlc2t0b3ApIHtcblx0XHRcdEBpbmNsdWRlIHNwYW4tY29sdW1ucyg1LjMpO1xuXG5cdFx0XHRtYXJnaW4tcmlnaHQ6IDEuMzc0JTtcblx0XHR9XG5cdH0gLy8gLmdyaWQtc2xvdC0zXG5cblx0Ly8gQm90dG9tIGNlbnRlciBwb3N0LlxuXHQuZ3JpZC1zbG90LTQge1xuXHRcdEBpbmNsdWRlIG1lZGlhKCR0YWJsZXQtbGFyZ2UpIHtcblx0XHRcdEBpbmNsdWRlIHNwYW4tY29sdW1ucygzLjMyOCk7XG5cblx0XHRcdG1hcmdpbi1yaWdodDogMS45JTtcblx0XHR9XG5cblx0XHRAaW5jbHVkZSBtZWRpYSgkZGVza3RvcCkge1xuXHRcdFx0QGluY2x1ZGUgc3Bhbi1jb2x1bW5zKDMuMzMpO1xuXG5cdFx0XHRtYXJnaW4tcmlnaHQ6IDEuMzc0JTtcblx0XHR9XG5cblx0XHRAaW5jbHVkZSBtZWRpYSgkYnJlYWtwb2ludC0xNjAwKSB7XG5cdFx0XHRAaW5jbHVkZSBzcGFuLWNvbHVtbnMoMy4zNCk7XG5cblx0XHRcdG1hcmdpbi1yaWdodDogMS41JTtcblx0XHR9XG5cblx0XHRAaW5jbHVkZSBtZWRpYSgkbGFyZ2UtZGVza3RvcCkge1xuXHRcdFx0QGluY2x1ZGUgc3Bhbi1jb2x1bW5zKDMuMzMpO1xuXG5cdFx0XHRtYXJnaW4tcmlnaHQ6IDEuMzc0JTtcblx0XHR9XG5cdH0gLy8gLmdyaWQtc2xvdC00XG5cblx0Ly8gQm90dG9tIHJpZ2h0IHBvc3QuXG5cdC5ncmlkLXNsb3QtNSB7XG5cdFx0QGluY2x1ZGUgbWVkaWEoJHBob25lLXBvcnRyYWl0KSB7XG5cdFx0XHRtYXJnaW4tcmlnaHQ6IDA7XG5cdFx0fVxuXG5cdFx0QGluY2x1ZGUgbWVkaWEoJHRhYmxldC1sYXJnZSkge1xuXHRcdFx0QGluY2x1ZGUgc3Bhbi1jb2x1bW5zKDMuMzI4KTtcblxuXHRcdFx0bWFyZ2luLXJpZ2h0OiAwO1xuXHRcdH1cblxuXHRcdEBpbmNsdWRlIG1lZGlhKCRkZXNrdG9wKSB7XG5cdFx0XHRAaW5jbHVkZSBzcGFuLWNvbHVtbnMoMy4zMyk7XG5cblx0XHRcdG1hcmdpbi1yaWdodDogMDtcblx0XHR9XG5cblx0XHRAaW5jbHVkZSBtZWRpYSgkYnJlYWtwb2ludC0xNjAwKSB7XG5cdFx0XHRAaW5jbHVkZSBzcGFuLWNvbHVtbnMoMy4zNCk7XG5cblx0XHRcdG1hcmdpbi1yaWdodDogMDtcblx0XHR9XG5cblx0XHRAaW5jbHVkZSBtZWRpYSgkbGFyZ2UtZGVza3RvcCkge1xuXHRcdFx0QGluY2x1ZGUgc3Bhbi1jb2x1bW5zKDMuMzMpO1xuXG5cdFx0XHRtYXJnaW4tcmlnaHQ6IDA7XG5cdFx0fVxuXHR9IC8vIC5ncmlkLXNsb3QtNVxufSAvLyAuZmVhdHVyZS01LWdyaWRcblxuXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBIaWRlIG9uIG1vYmlsZSB0b2dnbGVcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi5mZWF0dXJlLTUtZ3JpZCB7XG5cblx0Ji5tb2JpbGUtZGlzYWJsZSB7XG5cdFx0ZGlzcGxheTogbm9uZTtcblxuXHRcdEBpbmNsdWRlIG1lZGlhKCRicmVha3BvaW50LTcwMCkge1xuXHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0fVxuXHR9IC8vICYubW9iaWxlLWRpc2FibGVcblxufSAvLyAuZmVhdHVyZS01LWdyaWRcblxuXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBSZWFkIE1vcmUgbGlua1xuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLmZlYXR1cmUtNS1ncmlkIHtcblxuXHQucmVhZC1tb3JlIHtcblx0XHRkaXNwbGF5OiBub25lO1xuXG5cdFx0QGluY2x1ZGUgbWVkaWEoJHRhYmxldC1sYW5kc2NhcGUpIHtcblx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdH1cblx0fSAvLyAucmVhZC1tb3JlXG5cbn0gLy8gLmZlYXR1cmUtNS1ncmlkXG5cblxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gRm9udCBzaXplIGFkanVzdG1lbnRzXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4uZmVhdHVyZS01LWdyaWQge1xuXG5cdC5mZWF0dXJlZC1wb3N0IC5lbnRyeS1oZWFkZXIgLmVudHJ5LXRpdGxlIHtcblx0XHRmb250LXNpemU6IHJlbSgxNik7XG5cblx0XHRAaW5jbHVkZSBtZWRpYSgkcGhvbmUtbGFuZHNjYXBlKSB7XG5cdFx0XHRmb250LXNpemU6IHJlbSgyMSk7XG5cdFx0fVxuXG5cdFx0QGluY2x1ZGUgbWVkaWEoJHRhYmxldC1wb3J0cmFpdCkge1xuXHRcdFx0Zm9udC1zaXplOiByZW0oMzgpO1xuXHRcdH1cblxuXHR9IC8vIC5mZWF0dXJlZC1wb3N0IC5lbnRyeS1oZWFkZXIgLmVudHJ5LXRpdGxlXG5cblx0LmVudHJ5LW1ldGEgLmNhdGVnb3J5IHtcblx0XHRmb250LXNpemU6IHJlbSgxNik7XG5cblx0XHRAaW5jbHVkZSBtZWRpYSgkcGhvbmUtbGFuZHNjYXBlKSB7XG5cdFx0XHRmb250LXNpemU6IHJlbSgxOCk7XG5cdFx0fVxuXHR9IC8vIC5lbnRyeS1tZXRhXG5cbn0gLy8gLmZlYXR1cmUtNS1ncmlkXG5cblxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gVGV4dCBzaGFkb3dzXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4uZmVhdHVyZS01LWdyaWQge1xuXG5cdC5lbnRyeS10aXRsZSxcblx0LmVudHJ5LW1ldGEge1xuXHRcdHRleHQtc2hhZG93OiByZW0oMSkgcmVtKDEpIHJlbSgxKSAkY29sb3ItYmxhY2s7XG5cblx0XHRAaW5jbHVkZSBtZWRpYSgkcGhvbmUtbGFuZHNjYXBlKSB7XG5cdFx0XHR0ZXh0LXNoYWRvdzogbm9uZTtcblx0XHR9XG5cdH0gLy8gLmVudHJ5LXRpdGxlLCAuZW50cnktbWV0YVxuXG59IC8vIC5mZWF0dXJlLTUtZ3JpZFxuIiwiLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gU3Vtb01lIHN0eWxlIGFkanVzdG1lbnRzXG4vLyBBS0E6IEhvbHkgc3BlY2lmaWNpdHkgYmF0dGxlcyBCYXRtYW4uXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi5zaXRlIHtcblx0Ly8gUG9zaXRpb24gdGhlIGljb25zIHRvIHRoZSBsZWZ0IChUaGlzIG1heSBiZSBhIHNldHRpbmcgaW4gU3Vtb01lKS5cblx0LnN1bW9tZS1zaGFyZS1jbGllbnQtd3JhcHBlci5zdW1vbWUtc2hhcmUtY2xpZW50LXdyYXBwZXItY2VudGVyIHtcblx0XHRtYXJnaW4tYm90dG9tOiByZW0oMTkpO1xuXHRcdHRleHQtYWxpZ246IGxlZnQ7XG5cblx0XHRAaW5jbHVkZSBtZWRpYSgkdGFibGV0LWxhbmRzY2FwZSkge1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogcmVtKDQyKTtcblx0XHR9XG5cdH0gLy8gLnN1bW9tZS1zaGFyZS1jbGllbnQtd3JhcHBlci5zdW1vbWUtc2hhcmUtY2xpZW50LXdyYXBwZXItY2VudGVyXG59IC8vIC5zaXRlXG5cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIFN1bW9NZSBJY29uIHR3ZWFrc1xuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLnNpdGUge1xuXHQuc3Vtb21lLXNoYXJlLWNsaWVudC13cmFwcGVyIGRpdi5zdW1vbWUtc2hhcmUtY2xpZW50LnN1bW9tZS1zaGFyZS1jbGllbnQtaGVhZGVyLWNlbnRlci1hcnRpY2xlIC5zdW1vbWUtc2hhcmUtY2xpZW50LXNoYXJlLFxuXHQuc3Vtb21lLXNoYXJlLWNsaWVudC13cmFwcGVyIGRpdi5zdW1vbWUtc2hhcmUtY2xpZW50LnN1bW9tZS1zaGFyZS1jbGllbnQtYm90dG9tLWNlbnRlci1hcnRpY2xlIC5zdW1vbWUtc2hhcmUtY2xpZW50LXNoYXJlIHtcblx0XHRAaW5jbHVkZSBzaXplKHJlbSg0MykgcmVtKDQzKSk7XG5cblx0XHRtYXJnaW4tcmlnaHQ6IHJlbSgzMik7XG5cdFx0cGFkZGluZzogcmVtKDYpO1xuXG5cdFx0QGluY2x1ZGUgbWVkaWEoJHRhYmxldC1sYW5kc2NhcGUpIHtcblx0XHRcdEBpbmNsdWRlIHNpemUocmVtKDMzKSByZW0oMzMpKTtcblxuXHRcdFx0bWFyZ2luLXJpZ2h0OiByZW0oMTcpO1xuXHRcdH1cblxuXHRcdCY6bGFzdC1jaGlsZCB7XG5cdFx0XHRtYXJnaW4tcmlnaHQ6IDA7XG5cdFx0fSAvLyAmOmxhc3QtY2hpbGRcblxuXHRcdGltZyB7XG5cdFx0XHRAaW5jbHVkZSBzaXplKHJlbSgzMCkgcmVtKDMwKSk7XG5cblx0XHRcdEBpbmNsdWRlIG1lZGlhKCR0YWJsZXQtbGFuZHNjYXBlKSB7XG5cdFx0XHRcdEBpbmNsdWRlIHNpemUocmVtKDIwKSByZW0oMjApKTtcblx0XHRcdH1cblx0XHR9IC8vIGltZ1xuXHR9IC8vIC5zdW1vbWUtc2hhcmUtY2xpZW50LXdyYXBwZXIgZGl2LnN1bW9tZS1zaGFyZS1jbGllbnQuc3Vtb21lLXNoYXJlLWNsaWVudC1oZWFkZXItY2VudGVyLWFydGljbGUgLnN1bW9tZS1zaGFyZS1jbGllbnQtc2hhcmUsXG5cdFx0Ly8gLnN1bW9tZS1zaGFyZS1jbGllbnQtd3JhcHBlciBkaXYuc3Vtb21lLXNoYXJlLWNsaWVudC5zdW1vbWUtc2hhcmUtY2xpZW50LWJvdHRvbS1jZW50ZXItYXJ0aWNsZSAuc3Vtb21lLXNoYXJlLWNsaWVudC1zaGFyZVxufSAvLyAuc2l0ZVxuXG5cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIFN1bW9NZSBzaGFyZSBjb3VudCB0ZXh0XG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4uc2l0ZSB7XG5cdC8vIFNpbmNlIHRoaXMgdGhpbmcgc2hhcmVzIGNsYXNzZXMgd2l0aCB0aGUgaWNvbnMsIHdlIG5lZWQgdG8gc2V0IGl0cyBzaXplIGFzIHdlbGwuXG5cdC5zdW1vbWUtc2hhcmUtY2xpZW50LXdyYXBwZXIgZGl2LnN1bW9tZS1zaGFyZS1jbGllbnQgLnN1bW9tZS1zaGFyZS1jbGllbnQtc2hhcmUuc3Vtb21lLXNoYXJlLWNsaWVudC1zaGFyZS1zaGFyZSB7XG5cdFx0QGluY2x1ZGUgc2l6ZShyZW0oNzMpIHJlbSgzMCkpO1xuXG5cdFx0bWFyZ2luLXJpZ2h0OiByZW0oMzApO1xuXHRcdHBhZGRpbmc6IDA7XG5cblx0XHRAaW5jbHVkZSBtZWRpYSgkdGFibGV0LWxhbmRzY2FwZSkge1xuXHRcdFx0QGluY2x1ZGUgc2l6ZShyZW0oNTgpIHJlbSgzMCkpO1xuXG5cdFx0XHRtYXJnaW4tcmlnaHQ6IHJlbSgyMCk7XG5cdFx0XHR0b3A6IHJlbSgtNCk7XG5cdFx0fVxuXG5cdFx0Ly8gVGhlIGFjdHVhbCBzaGFyZSBjb3VudCBudW1iZXIgaXMgd3JhcHBlZCBpbiBhIHN0cm9uZyB0YWcuXG5cdFx0c3Bhbixcblx0XHRzdHJvbmcge1xuXHRcdFx0Zm9udC1mYW1pbHk6ICRmb250LXNhbnM7XG5cdFx0XHRmb250LXNpemU6IHJlbSgyNCk7XG5cdFx0XHRmb250LXdlaWdodDogNzAwO1xuXG5cdFx0XHRAaW5jbHVkZSBtZWRpYSgkdGFibGV0LWxhbmRzY2FwZSkge1xuXHRcdFx0XHRmb250LXNpemU6IHJlbSgxOCk7XG5cdFx0XHR9XG5cdFx0fSAvLyBzcGFuLCBzdHJvbmdcblxuXHRcdC8vIEFkanVzdCB0aGUgc3BhY2UgYmV0d2VlbiB0aGUgY291bnQgYW5kIHRoZSBcIlNoYXJlc1wiIHRleHQuXG5cdFx0c3Ryb25nIHtcblx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdHRvcDogcmVtKC0xNik7XG5cblx0XHRcdEBpbmNsdWRlIG1lZGlhKCR0YWJsZXQtbGFuZHNjYXBlKSB7XG5cdFx0XHRcdHRvcDogcmVtKC0xMCk7XG5cdFx0XHR9XG5cdFx0fSAvLyBzdHJvbmdcblx0fSAvLyAuc3Vtb21lLXNoYXJlLWNsaWVudC13cmFwcGVyIGRpdi5zdW1vbWUtc2hhcmUtY2xpZW50IC5zdW1vbWUtc2hhcmUtY2xpZW50LXNoYXJlLnN1bW9tZS1zaGFyZS1jbGllbnQtc2hhcmUtc2hhcmVcbn0gLy8gLnNpdGVcblxuXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBUd2Vha3Mgc3BlY2lmaWMgdG8gdGhlIHNoYXJlIGljb25zIHRoYXQgYXBwZWFyIG9uIHRoZSBib3R0b20gb2YgdGhlIHBvc3Rcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi5zaXRlIHtcblx0LnN1bW9tZS1zaGFyZS1jbGllbnQtd3JhcHBlciBkaXYuc3Vtb21lLXNoYXJlLWNsaWVudC5zdW1vbWUtc2hhcmUtY2xpZW50LWJvdHRvbS1jZW50ZXItYXJ0aWNsZSB7XG5cdFx0QGluY2x1ZGUgbWVkaWEobWF4LXdpZHRoICR0YWJsZXQtbGFuZHNjYXBlKSB7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiByZW0oNDIpO1xuXHRcdH1cblx0fSAvLyAuc3Vtb21lLXNoYXJlLWNsaWVudC13cmFwcGVyIGRpdi5zdW1vbWUtc2hhcmUtY2xpZW50LnN1bW9tZS1zaGFyZS1jbGllbnQtYm90dG9tLWNlbnRlci1hcnRpY2xlXG59IC8vIC5zaXRlXG5cblxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gVHdlYWtzIGZvciBiYXIgdGhhdCBhcHBlYXJzIGF0IHRoZSBib3R0b20gb24gbW9iaWxlXG4vLyAtIEF0IDQ5OCBhbmQgc21hbGxlciBpdCBwdWxscyB0aGUgc2hhcmUgYnV0dG9ucyBmcm9tIHRoZSBjb250ZW50IGluIHRoZSBET01cbi8vIGFuZCB0aGVuIGFkZHMgYSBiYXIgdGhhdCBpcyBmaXhlZCB0byB0aGUgYm90dG9tIGJ5IGRlZmF1bHQuXG4vLyAodGhlIHdpZHRoIGF0IHdoaWNoIGl0IGRvZXMgdGhpcyBtaWdodCBiZSBpbmZsdWVuY2VkIGJ5IGhvdyBtYW55IGljb25zIGl0IG5lZWRzIHRvIGRpc3BsYXllZCwgY2Fubm90IHRlc3QgdGhpcylcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi5zaXRlIHtcblx0LnN1bW9tZS1zaGFyZS1jbGllbnQtd3JhcHBlci5zdW1vbWUtc2hhcmUtY2xpZW50LXdyYXBwZXItbW9iaWxlLWJvdHRvbS1iYXIge1xuXHRcdEBpbmNsdWRlIG1lZGlhKG1heC13aWR0aCAkYnJlYWtwb2ludC00OTgpIHtcblx0XHRcdGJvdHRvbTogcmVtKDcxKSAhaW1wb3J0YW50OyAvLyBJdCBzZXRzIGEgYm90dG9tIHRocm91Z2ggaW5saW5lIHN0eWxlcy4gIWltcG9ydGFudCBpcyB0aGUgb25seSB3YXkgdG8gb3ZlcnJpZGUgaXQuIDovXG5cdFx0fVxuXHR9IC8vIC5zdW1vbWUtc2hhcmUtY2xpZW50LXdyYXBwZXIuc3Vtb21lLXNoYXJlLWNsaWVudC13cmFwcGVyLW1vYmlsZS1ib3R0b20tYmFyXG59IC8vIC5zaXRlXG5cblxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gRml4ZWQgbGVmdC1zaWRlIHNoYXJlIGJveFxuLy8gLSBUaGlzIGNhbiBiZSBkaXNhYmxlZCB0aHJvdWdoIFN1bW9NZSBzZXR0aW5ncywgYnV0IEkgZG9uJ3Qgd2FudCB0byBnbyBhaGVhZCBhbmQgZG8gdGhhdCB3aGlsZSB0aGUgdGhlbWUgaXMgc3RpbGwgaW4gZGV2LlxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLnN1bW9tZS1zaGFyZS1jbGllbnQtd3JhcHBlci5zdW1vbWUtc2hhcmUtY2xpZW50LXdyYXBwZXItbGVmdC1wYWdlIHtcblx0ZGlzcGxheTogbm9uZTtcbn0gLy8gLnN1bW9tZS1zaGFyZS1jbGllbnQtd3JhcHBlci5zdW1vbWUtc2hhcmUtY2xpZW50LXdyYXBwZXItbGVmdC1wYWdlXG5cblxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gRml4IHBvc2l0aW9uaW5nIG9mIFR3aXR0ZXIgYnV0dG9uIG9uIHRvcCBiYXJcbi8vIC0gVGhpcyBmaXhlcyB0aGluZ3MgZm9yIElFMTEsIGJ1dCBkb2Vzbid0IGJyZWFrIGl0IGluIG90aGVyIGJyb3dzZXJzLlxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuI3N1bW9tZS1zbWFydGJhci1wb3B1cCAuc3Vtb21lLXNtYXJ0YmFyLWlucHV0IHtcblx0aGVpZ2h0OiByZW0oNDkpO1xuXG5cdGlmcmFtZVtpZF49J3R3aXR0ZXItd2lkZ2V0J10sXG5cdGlmcmFtZS5zdW1vbWUtc21hcnRiYXItc29jaWFsIHtcblx0XHRoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDtcblx0XHRtYXJnaW46IHJlbSgxNSkgYXV0byAwICFpbXBvcnRhbnQ7XG5cdH0gLy8gaWZyYW1lW2lkXj0ndHdpdHRlci13aWRnZXQnXSwgaWZyYW1lLnN1bW9tZS1zbWFydGJhci1zb2NpYWxcbn0gLy8gLnN1bW9tZS1zbWFydGJhci1pbnB1dFxuXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBGaXggcG9zaXRpb25pbmcgb2YgWCBvbiB0b3AgYmFyIGNsb3NlIGJ1dHRvblxuLy8gLSBJTVBPUlRBTlQgQUxMIFRIRSBUSElOR1MuXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4jc3Vtb21lLXNtYXJ0YmFyLXBvcHVwIC5zdW1vbWUtc21hcnRiYXItdGVtcGxhdGUtaGVhZGxpbmUgLnN1bW9tZS1zbWFydGJhci1jbG9zZSB7XG5cdEBpbmNsdWRlIHNpemUocmVtKDMyKSByZW0oMzIpKTtcblxuXHRib3JkZXI6IHJlbSg0KSBzb2xpZCAjZjQ1YjkzICFpbXBvcnRhbnQ7XG5cdGJvcmRlci1yYWRpdXM6IDUwJSAhaW1wb3J0YW50O1xuXHRyaWdodDogcmVtKDkpICFpbXBvcnRhbnQ7XG5cdHRvcDogcmVtKDkpICFpbXBvcnRhbnQ7XG5cblx0Jjo6YmVmb3JlIHtcblx0XHRib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcblx0XHRjb250ZW50OiBcIlhcIiAhaW1wb3J0YW50O1xuXHRcdGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG5cdFx0Zm9udC1zaXplOiByZW0oMTgpICFpbXBvcnRhbnQ7XG5cdFx0Zm9udC13ZWlnaHQ6IDcwMDtcblx0XHRoZWlnaHQ6IHJlbSgzMikgIWltcG9ydGFudDtcblx0XHRsaW5lLWhlaWdodDogMS43NzggIWltcG9ydGFudDsgLy8gSW5saW5lIGZvbnQgc2l6ZSBpcyAzMHB4IG9uIHRoaXMgaWNvbi5cblx0XHRwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcblx0XHRyaWdodDogcmVtKDQpICFpbXBvcnRhbnQ7XG5cdFx0dG9wOiByZW0oLTQpICFpbXBvcnRhbnQ7XG5cdFx0d2lkdGg6IHJlbSgzMikgIWltcG9ydGFudDtcblx0fSAvLyAmOjpiZWZvcmVcbn0gLy8gI3N1bW9tZS1zbWFydGJhci1wb3B1cCAuc3Vtb21lLXNtYXJ0YmFyLXRlbXBsYXRlLWhlYWRsaW5lIC5zdW1vbWUtc21hcnRiYXItY2xvc2VcblxuLnN1bW9tZS1zY3JvbGxib3gtcG9wdXAuc3Vtb21lLXNjcm9sbGJveC1ib3R0b20ge1xuXHRAaW5jbHVkZSBtZWRpYShtYXgtd2lkdGggJHRhYmxldC1sYW5kc2NhcGUpIHtcblx0XHRib3R0b206IHJlbSg3MCkgIWltcG9ydGFudDtcblx0XHR6LWluZGV4OiAxO1xuXHR9XG59IC8vIC5zdW1vbWUtc2Nyb2xsYm94LXBvcHVwLnN1bW9tZS1zY3JvbGxib3gtYm90dG9tXG5cblxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gSGlkZSBzdHJheSBzaGFyZSBidXR0b25zIHRoYXQgbWF5IGFwcGVhciBvbiBjYXJkcywgcGFnZXNcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi5ob3Jpem9udGFsLWJsb2ctY2FyZCxcbi5wYWdlIHtcblx0LnN1bW9tZS1zaGFyZS1jbGllbnQtd3JhcHBlciB7XG5cdFx0ZGlzcGxheTogbm9uZTtcblx0fSAvLyAuc3Vtb21lLXNoYXJlLWNsaWVudC13cmFwcGVyXG59IC8vIC5ob3Jpem9udGFsLWJsb2ctY2FyZCwgLnBhZ2VcblxuXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBIaWRlIHRoZSBiYXJzIGlmIHRoZSBoZWlnaHQgb2YgdGhlIHNjcmVlbiBpc24ndCBzdWZmaWNpZW50IHRvIGRlYWwgd2l0aCB0aGluZ3MuXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4uc3Vtb21lLXNjcm9sbGJveC1wb3B1cCB7XG5cdEBpbmNsdWRlIG1lZGlhKG1heC1oZWlnaHQgJHRhYmxldC1wb3J0cmFpdCkge1xuXHRcdGRpc3BsYXk6IG5vbmU7XG5cdH1cbn0gLy8gLnN1bW9tZS1zY3JvbGxib3gtcG9wdXBcblxuLnN1bW9tZS1zbWFydGJhci1wb3B1cCB7XG5cdEBpbmNsdWRlIG1lZGlhKG1heC1oZWlnaHQgJHBob25lLWxhbmRzY2FwZSkge1xuXHRcdGRpc3BsYXk6IG5vbmU7XG5cdH1cbn0gLy8gLnN1bW9tZS1zbWFydGJhci1wb3B1cFxuXG4uc3Vtb21lLXNoYXJlLWNsaWVudC13cmFwcGVyLW1vYmlsZS1ib3R0b20tYmFyIHtcblx0Ym90dG9tOiByZW0oNzApICFpbXBvcnRhbnQ7XG5cdHotaW5kZXg6IDAgIWltcG9ydGFudDtcbn0gLy8gLnN1bW9tZS1zaGFyZS1jbGllbnQtd3JhcHBlci1tb2JpbGUtYm90dG9tLWJhclxuXG5cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIFNpbXBsZSBoaWRkZW4gY2xhc3MsIHVzZWQgdG8gaGlkZSBhbiBhcmJpdHJhcnkgaGVhZGVyIGZvciBTdW1vTWUgdG8gaG9vayBpbnRvLlxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLmhpZGRlbiB7XG5cdGRpc3BsYXk6IG5vbmU7XG59IC8vIC5oaWRkZW5cbiIsIi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIE11bHRpLXBhZ2UgQmxvZyBQb3N0IFBhZ2luYXRpb24gTGlua3Ncbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gUGFnaW5hdGlvbiBMaW5rc1xuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLnBhZ2UtbGlua3Mge1xuXHRiYWNrZ3JvdW5kOiAkY29sb3Itc2FuZDtcblx0Ym9yZGVyOiByZW0oMSkgc29saWQgJGNvbG9yLWF0aGVucy1ncmV5O1xuXHRib3JkZXItcmFkaXVzOiByZW0oNCk7XG5cdGZvbnQtc2l6ZTogcmVtKDIyKTtcblx0cGFkZGluZzogcmVtKDQpIHJlbSgyMCk7XG5cblx0Ly8gVGhlICdQYWdlczonIHRleHQuXG5cdC5wYWdlLWxpbmstdGV4dCB7XG5cdFx0bWFyZ2luLXJpZ2h0OiByZW0oNik7XG5cdH0gLy8gLnBhZ2UtbGluay10ZXh0XG5cblx0Ly8gVGhpcyBpcyB0aGUgQ3VycmVudCBwYWdlLCBkb2Vzbid0IGhhdmVuIGFuIDxhPi5cblx0LnBhZ2UtbGluayB7XG5cdFx0YmFja2dyb3VuZDogJGNvbG9yLXdoaXRlO1xuXHRcdGJvcmRlcjogcmVtKDEpIHNvbGlkICRjb2xvci1hdGhlbnMtZ3JleTtcblx0XHRmb250LWZhbWlseTogJGZvbnQtc2Fucztcblx0XHRmb250LXN0eWxlOiBub3JtYWw7XG5cdFx0Zm9udC13ZWlnaHQ6IDYwMDtcblx0XHRtYXgtaGVpZ2h0OiByZW0oMTgpO1xuXHRcdHBhZGRpbmc6IHJlbSgyKSByZW0oMTIpO1xuXHRcdHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4xOHMgZWFzZS1vdXQ7XG5cdH0gLy8gLnBhZ2UtbGlua1xuXG5cdC8vIFRoZSBudW1iZXJlZCBsaW5rcywgMSAyIDMuLi45IGV0Yy5cblx0YSB7XG5cdFx0Ym9yZGVyOiBub25lO1xuXG5cdFx0LnBhZ2UtbGluayB7XG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcblx0XHRcdGJvcmRlcjogbm9uZTtcblx0XHRcdGZvbnQtZmFtaWx5OiAkZm9udC1zYW5zO1xuXHRcdFx0Zm9udC1zdHlsZTogbm9ybWFsO1xuXG5cdFx0XHQmOmZvY3VzLFxuXHRcdFx0Jjpob3ZlciB7XG5cdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRjb2xvci13aGl0ZTtcblx0XHRcdH0gLy8gJjpmb2N1cywgJjpmb2N1c1xuXHRcdH0gLy8gLnBhZ2UtbGlua1xuXHR9IC8vIGFcbn0gLy8gLnBhZ2UtbGlua3NcbiIsIi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIEF1dGhvciBib3hlc1xuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBHZW5lcmFsIGJveCBzdHlsZXNcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi5hdXRob3ItYm94IHtcblx0YmFja2dyb3VuZDogJGNvbG9yLXNpZGViYXI7XG5cdGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuXHRtYXJnaW4tYm90dG9tOiByZW0oNjEpO1xuXHRwYWRkaW5nOiByZW0oMTApIHJlbSgyMikgcmVtKDQ5KTtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXG5cdEBpbmNsdWRlIG1lZGlhKCR0YWJsZXQtbGFyZ2UpIHtcblx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdG1hcmdpbi1ib3R0b206IHJlbSg0OCk7XG5cdFx0bWF4LXdpZHRoOiByZW0oNzYzKTtcblx0XHRwYWRkaW5nOiByZW0oMTApIHJlbSgxNCkgcmVtKDE2KSByZW0oMTYpO1xuXHRcdHdpZHRoOiAxMDAlO1xuXHR9XG5cblx0Ly8gRnVsbC13aWR0aCB2ZXJzaW9uXG5cdCYuZnVsbCB7XG5cdFx0QGluY2x1ZGUgbWVkaWEoJHRhYmxldC1sYW5kc2NhcGUpIHtcblx0XHRcdG1heC13aWR0aDogbm9uZTtcblx0XHR9XG5cdH0gLy8gJi5mdWxsXG59IC8vIC5hdXRob3ItYm94XG5cblxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gQXZhdGFyXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4uYXV0aG9yLWJveCAuYXV0aG9yLWF2YXRhciB7XG5cdEBpbmNsdWRlIHNpemUocmVtKDgzKSByZW0oODMpKTtcblxuXHRib3JkZXItcmFkaXVzOiA1MCU7XG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0bWFyZ2luOiByZW0oMikgcmVtKDIyKSAwIDA7XG5cdHZlcnRpY2FsLWFsaWduOiB0b3A7XG5cblx0QGluY2x1ZGUgbWVkaWEoJHRhYmxldC1sYW5kc2NhcGUpIHtcblx0XHRAaW5jbHVkZSBzaXplKHJlbSg3MykgcmVtKDczKSk7XG5cblx0XHRtYXJnaW46IHJlbSgyKSByZW0oMTkpIDAgMDtcblx0fVxufSAvLyAuYXV0aG9yLWJveCAuYXV0aG9yLWF2YXRhclxuXG5cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIEF1dGhvciBib3ggdGl0bGUgKEFib3V0IFthdXRob3JdKVxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLmF1dGhvci1ib3ggLmF1dGhvci10aXRsZSB7XG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0Zm9udC1zaXplOiByZW0oMjIpO1xuXHRsaW5lLWhlaWdodDogMTtcblx0bWFyZ2luLWJvdHRvbTogMDtcblx0bWFyZ2luLXRvcDogcmVtKDE3KTtcblx0dmVydGljYWwtYWxpZ246IG1pZGRsZTtcblxuXHRAaW5jbHVkZSBtZWRpYSgkdGFibGV0LWxhbmRzY2FwZSkge1xuXHRcdGZvbnQtc2l6ZTogcmVtKDI4KTtcblx0XHRtYXJnaW4tdG9wOiByZW0oMTMpO1xuXHR9XG59IC8vIC5hdXRob3ItYm94IC5hdXRob3ItdGl0bGVcblxuXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBBdXRob3IgYmlvXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4uYXV0aG9yLWJveCAuYXV0aG9yLWJpbyB7XG5cdG1hcmdpbjogcmVtKDcpIDAgcmVtKDI3KSByZW0oMyk7XG5cblx0QGluY2x1ZGUgbWVkaWEoJHRhYmxldC1sYW5kc2NhcGUpIHtcblx0XHRtYXJnaW46IHJlbSgxNSkgMCByZW0oMjUpIHJlbSg0KTtcblx0XHRwYWRkaW5nLXJpZ2h0OiByZW0oMjApO1xuXHR9XG5cblx0cCB7XG5cdFx0Zm9udC1zaXplOiByZW0oMTYpO1xuXG5cdFx0QGluY2x1ZGUgbWVkaWEoJGJyZWFrcG9pbnQtNTAwKSB7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiByZW0oMjApO1xuXHRcdH1cblxuXHRcdEBpbmNsdWRlIG1lZGlhKCR0YWJsZXQtbGFuZHNjYXBlKSB7XG5cdFx0XHRmb250LXNpemU6IHJlbSgxOCk7XG5cdFx0XHRsaW5lLWhlaWdodDogMS41NTtcblx0XHRcdG1hcmdpbi1ib3R0b206IHJlbSgzMCk7XG5cdFx0fVxuXG5cdFx0JjpsYXN0LWNoaWxkIHtcblx0XHRcdG1hcmdpbi1ib3R0b206IDA7XG5cdFx0fSAvLyAmOmxhc3QtY2hpbGRcblx0fSAvLyBwXG59IC8vIC5hdXRob3ItYm94IC5hdXRob3ItYmlvXG5cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIEFsbCBQb3N0cyBsaW5rXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4uYXV0aG9yLWJveCAuYWxsLXBvc3RzIHtcblx0Ym9yZGVyLWJvdHRvbTogbm9uZTtcblx0Zm9udC1mYW1pbHk6ICRmb250LXNhbnM7XG5cdGZvbnQtc2l6ZTogcmVtKDE2KTtcblx0Zm9udC1zdHlsZTogbm9ybWFsO1xuXHRmb250LXdlaWdodDogNzAwO1xuXHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXG5cdEBpbmNsdWRlIG1lZGlhKCR0YWJsZXQtbGFuZHNjYXBlKSB7XG5cdFx0Zm9udC1zaXplOiByZW0oMTYpO1xuXHRcdG1hcmdpbi1sZWZ0OiByZW0oNCk7XG5cdH1cblxuXHRAaW5jbHVkZSBtZWRpYShtaW4td2lkdGggJHRhYmxldC1sYW5kc2NhcGUgbWF4LXdpZHRoICR0YWJsZXQtbGFyZ2UpIHtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0fVxufSAvLyAuYXV0aG9yLWJveCAuYWxsLXBvc3RzXG5cblxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gRm9sbG93IG9uIFR3aXR0ZXIgbGlua1xuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLmF1dGhvci1ib3gge1xuXHQudHdpdHRlciB7XG5cdFx0Ym9yZGVyLWJvdHRvbTogbm9uZTtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRmb250LXNpemU6IHJlbSgxNik7XG5cblx0XHRAaW5jbHVkZSBtZWRpYSgkcGhvbmUtbGFuZHNjYXBlKSB7XG5cdFx0XHRib3JkZXItbGVmdDogcmVtKDEpIHNvbGlkIGxpZ2h0ZW4oJGNvbG9yLWJsYWNrLCA4MCUpO1xuXHRcdFx0ZGlzcGxheTogaW5saW5lO1xuXHRcdFx0bWFyZ2luLWxlZnQ6IHJlbSgxMSk7XG5cdFx0XHRwYWRkaW5nLWxlZnQ6IHJlbSgxNik7XG5cdFx0fVxuXG5cdFx0QGluY2x1ZGUgbWVkaWEoJHRhYmxldC1sYW5kc2NhcGUpIHtcblx0XHRcdGZvbnQtc2l6ZTogcmVtKDE2KTtcblx0XHR9XG5cblx0XHRAaW5jbHVkZSBtZWRpYShtaW4td2lkdGggJHRhYmxldC1sYW5kc2NhcGUgbWF4LXdpZHRoICR0YWJsZXQtbGFyZ2UpIHtcblx0XHRcdGJvcmRlci1sZWZ0OiBub25lO1xuXHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRtYXJnaW4tbGVmdDogMDtcblx0XHRcdHBhZGRpbmctbGVmdDogMDtcblx0XHR9XG5cdH0gLy8gLnR3aXR0ZXJcblxuXHQvLyBSZW1vdmUgdGhlIGxlZnQgYm9yZGVyLCBtYXJnaW4sIGFuZCBwYWRkaW5nIGlmIHdlJ3JlIGRpc3BsYXlpbmcgb24gdGhlIGF1dGhvciBhcmNoaXZlLlxuXHQmLmF1dGhvciAudHdpdHRlciB7XG5cdFx0QGluY2x1ZGUgbWVkaWEoJHBob25lLWxhbmRzY2FwZSkge1xuXHRcdFx0Ym9yZGVyLWxlZnQ6IG5vbmU7XG5cdFx0XHRtYXJnaW4tbGVmdDogMDtcblx0XHRcdHBhZGRpbmctbGVmdDogMDtcblx0XHR9XG5cdH1cbn0gLy8gLmF1dGhvci1ib3hcblxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gQWQgYm94XG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4uYXV0aG9yLWJveCAuYXV0aG9yLWFkLWJveCB7XG5cdG1hcmdpbi10b3A6IHJlbSg3MCk7XG5cdG1heC1oZWlnaHQ6IHJlbSgyNTApO1xuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cblx0QGluY2x1ZGUgbWVkaWEoJHRhYmxldC1sYW5kc2NhcGUpIHtcblx0XHRtaW4td2lkdGg6IHJlbSgzMDApO1xuXHR9XG5cblx0QGluY2x1ZGUgbWVkaWEoJHRhYmxldC1sYXJnZSkge1xuXHRcdG1hcmdpbi10b3A6IDA7XG5cdFx0dGV4dC1hbGlnbjogcmlnaHQ7XG5cdH1cbn0gLy8gLmF1dGhvci1ib3ggLmF1dGhvci1hZC1ib3hcbiIsIi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIEluZmluaXRlIHNjcm9sbFxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBHbG9iYWxseSBoaWRkZW4gZWxlbWVudHMgd2hlbiBJbmZpbml0ZSBTY3JvbGwgaXMgc3VwcG9ydGVkIGFuZCBpbiB1c2UuXG4uaW5maW5pdGUtc2Nyb2xsIC5wb3N0cy1uYXZpZ2F0aW9uLCAvLyBPbGRlciAvIE5ld2VyIFBvc3RzIE5hdmlnYXRpb24gKGFsd2F5cyBoaWRkZW4pXG4uaW5maW5pdGUtc2Nyb2xsLm5ldmVyZW5kaW5nIC5zaXRlLWZvb3RlciB7IC8vIFRoZW1lIEZvb3RlciAod2hlbiBzZXQgdG8gc2Nyb2xsaW5nKVxuXHRkaXNwbGF5OiBub25lO1xufSAvLyAuaW5maW5pdGUtc2Nyb2xsIC5wb3N0cy1uYXZpZ2F0aW9uLCAuaW5maW5pdGUtc2Nyb2xsLm5ldmVyZW5kaW5nIC5zaXRlLWZvb3RlclxuXG4vLyBXaGVuIEluZmluaXRlIFNjcm9sbCBoYXMgcmVhY2hlZCBpdHMgZW5kIHdlIG5lZWQgdG8gcmUtZGlzcGxheSBlbGVtZW50cyB0aGF0IHdlcmUgaGlkZGVuICh2aWEgLm5ldmVyZW5kaW5nKSBiZWZvcmUuXG4uaW5maW5pdHktZW5kLm5ldmVyZW5kaW5nIC5zaXRlLWZvb3RlciB7XG5cdGRpc3BsYXk6IGJsb2NrO1xufSAvLyAuaW5maW5pdHktZW5kLm5ldmVyZW5kaW5nIC5zaXRlLWZvb3RlclxuIiwiLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy9cdEdyYXZpdHkgRm9ybXNcbi8vXHRWaXNpdCB0aGlzIGxpbmsgZm9yIENTUyBUYXJnZXRpbmcgRXhhbXBsZXMgLSBWZXJ5IEhlbHBmdWxcbi8vXHRodHRwczovL3d3dy5ncmF2aXR5aGVscC5jb20vZG9jdW1lbnRhdGlvbi9hcnRpY2xlL2Nzcy10YXJnZXRpbmctZXhhbXBsZXMvXG4vL1xuLy9cdEJBU0UgU1RZTEVTXG4vL1x0Rk9STSBIRUFERVJcbi8vXHRGT1JNIEZPT1RFUlxuLy9cdENPTkZJUk1BVElPTiBNRVNTQUdFXG4vL1x0U0VMRUNUU1xuLy8gXHRDSE9TRU4gU0VMRUNUXG4vL1x0Q09OVEVOVCBPVkVSUklERVNcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy9cdExPQ0FMIFZBUklBQkxFU1xuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBGb3JtXG4kZ2YtcGFkZGluZzogMDsgLy8gc2V0IG91dGVyIHBhZGRpbmcgb24gZm9ybVxuJGdmLWJnOiAkY29sb3Itd2hpdGU7IC8vIGJhY2tncm91bmQgY29sb3Igb2YgZm9ybVxuJGdmLWJvcmRlci13aWR0aDogMDsgLy8gYm9yZGVyLXdpZHRoIG9uIGZvcm1cbiRnZi1ib3JkZXItY29sb3I6ICRjb2xvci13aGl0ZTsgLy8gYm9yZGVyIGNvbG9yXG5cbi8vIEZpZWxkcyAvIFJvd3NcbiRnZi1maWVsZC1tYXJnaW4tYm90dG9tOiByZW0oMjUpOyAvLyBtYXJnaW4gYmV0d2VlbiBmaWVsZCBhbmQgbGFiZWwgYmVsb3cgKHZlcnRpY2FsIHNwYWNpbmcgYmV0d2VlbiByb3dzKVxuXG4vLyBMYWJlbHNcbiRnZi1sYWJlbC1mb250LXNpemU6IHJlbSgxNik7XG4kZ2YtbGFiZWwtZm9udC1jb2xvcjogJGNvbG9yLW1pbmVzaGFmdDtcbiRnZi1sYWJlbC1mb250LXdlaWdodDogNzAwO1xuXG4vLyBJbnB1dHNcbiRnZi1pbnB1dC1jb2xvci1iYWNrZ3JvdW5kOiAkY29sb3Itd2hpdGU7XG4kZ2YtaW5wdXQtY29sb3ItYm9yZGVyOiAkY29sb3ItaW5wdXQtYm9yZGVyO1xuJGdmLWlucHV0LWNvbG9yLXRleHQ6ICRjb2xvci1pbnB1dC10ZXh0O1xuJGdmLWlucHV0LWNvbG9yLWZvY3VzLXRleHQ6ICRjb2xvci1pbnB1dC1mb2N1cy10ZXh0O1xuJGdmLWlucHV0LXBhZGRpbmc6ICRwYWRkaW5nLWlucHV0O1xuXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vL1x0QkFTRSBTVFlMRVNcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi5nZm9ybV93cmFwcGVyIHsgLy8gdGhlIGVudGlyZSBmb3JtXG5cdGJhY2tncm91bmQ6ICRnZi1iZzsgLy8gYmFja2dyb3VuZCBmb3IgdGhlIGZvcm1cblx0Ym9yZGVyOiAkZ2YtYm9yZGVyLXdpZHRoIHNvbGlkICRnZi1ib3JkZXItY29sb3I7IC8vIG91dGVyIGZvcm0gYm9yZGVyXG5cdHBhZGRpbmc6ICRnZi1wYWRkaW5nOyAvLyBmb3JtIHBhZGRpbmdcblxuXHQvLyBTaW5nbGUgYW5kIHR3by1jb2x1bW4gZmllbGRzXG5cdCYuZ2Zvcm1fYm9keSAuZ2Zvcm1fZmllbGRzIC5nZmllbGQsXG5cdCYuZ2Zvcm1fYm9keSAuZ2Zvcm1fZmllbGRzIC5nZmllbGQuZ2ZfbGVmdF9oYWxmLFxuXHQmLmdmb3JtX2JvZHkgLmdmb3JtX2ZpZWxkcyAuZ2ZpZWxkLmdmX3JpZ2h0X2hhbGYge1xuXHRcdG1hcmdpbi1ib3R0b206ICRnZi1maWVsZC1tYXJnaW4tYm90dG9tOyAvLyBzcGFjZSBiZXR3ZWVuIGlucHV0IGFuZCBsYWJlbCBiZWxvd1xuXHR9IC8vICYuZ2Zvcm1fYm9keSAuZ2Zvcm1fZmllbGRzIC5nZmllbGQsICYuZ2Zvcm1fYm9keSAuZ2Zvcm1fZmllbGRzIC5nZmllbGQuZ2ZfbGVmdF9oYWxmLCAmLmdmb3JtX2JvZHkgLmdmb3JtX2ZpZWxkcyAuZ2ZpZWxkLmdmX3JpZ2h0X2hhbGZcblxuXHQvLyBMYWJlbHNcblx0LmdmaWVsZF9sYWJlbCB7XG5cdFx0Y29sb3I6ICRnZi1sYWJlbC1mb250LWNvbG9yO1xuXHRcdGZvbnQtc2l6ZTogJGdmLWxhYmVsLWZvbnQtc2l6ZTtcblx0XHRmb250LXdlaWdodDogJGdmLWxhYmVsLWZvbnQtd2VpZ2h0O1xuXG5cdFx0Ly8gUmVxdWlyZSBmaWVsZCBJbmRpY2F0b3IgKEFzdGVyaXNrKVxuXHRcdC5nZmllbGRfcmVxdWlyZWQge1xuXG5cdFx0fSAvLyAuZ2ZpZWxkX3JlcXVpcmVkXG5cdH0gLy8gLmdmaWVsZF9sYWJlbFxuXG5cdC8vIFN0YW5kYXJkIGZpZWxkc1xuXHRpbnB1dFt0eXBlPVwidGV4dFwiXSxcblx0aW5wdXRbdHlwZT1cInVybFwiXSxcblx0aW5wdXRbdHlwZT1cImVtYWlsXCJdLFxuXHRpbnB1dFt0eXBlPVwidGVsXCJdLFxuXHRpbnB1dFt0eXBlPVwibnVtYmVyXCJdLFxuXHRpbnB1dFt0eXBlPVwicGFzc3dvcmRcIl0sXG5cdGlucHV0W3R5cGU9XCJmaWxlXCJdLFxuXHR0ZXh0YXJlYSB7XG5cdFx0YmFja2dyb3VuZDogJGdmLWlucHV0LWNvbG9yLWJhY2tncm91bmQ7XG5cdH0gLy8gaW5wdXRbdHlwZT1cInRleHRcIl0sIGlucHV0W3R5cGU9XCJ1cmxcIl0sIGlucHV0W3R5cGU9XCJlbWFpbFwiXSwgaW5wdXRbdHlwZT1cInRlbFwiXSwgaW5wdXRbdHlwZT1cIm51bWJlclwiXSwgaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdLCBpbnB1dFt0eXBlPVwiZmlsZVwiXSwgdGV4dGFyZWFcblxuXHR0ZXh0YXJlYSB7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdH0gLy8gdGV4dGFyZWFcblxuXHQvLyBEZWZhdWx0IERyb3AtRG93biAoU2VsZWN0KSBGaWVsZFxuXHQvLyBGZWVsIGZyZWUgdG8gY2hhbmdlIHRoZSBzdmcgaWNvbiBiZWluZyB1c2VkXG5cdHNlbGVjdCB7XG5cdFx0LXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuXHRcdGJhY2tncm91bmQ6IHVybChcImFzc2V0cy9pbWFnZXMvc3ZnLWljb25zL2NhcmV0LWRvd24uc3ZnXCIpIG5vLXJlcGVhdCA5NyUgdHJhbnNwYXJlbnQ7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogJGdmLWlucHV0LWNvbG9yLWJhY2tncm91bmQ7XG5cdFx0YmFja2dyb3VuZC1zaXplOiByZW0oMTIpO1xuXHRcdGJvcmRlci1jb2xvcjogJGdmLWlucHV0LWNvbG9yLWJvcmRlcjtcblx0XHRib3JkZXItcmFkaXVzOiAwO1xuXHRcdGxpbmUtaGVpZ2h0OiAxLjQ1O1xuXHRcdHBhZGRpbmc6ICRnZi1pbnB1dC1wYWRkaW5nO1xuXHRcdHdpZHRoOiAxMDAlO1xuXG5cdFx0QGluY2x1ZGUgbWVkaWEoJHBob25lLWxhbmRzY2FwZSkge1xuXHRcdFx0d2lkdGg6IDQ5JTtcblx0XHR9XG5cdH0gLy8gc2VsZWN0XG5cblx0Ly8gUmVtb3ZlIGljb24gZm9yIGRlZmF1bHQgbXVsdGktc2VsZWN0XG5cdHNlbGVjdFttdWx0aXBsZT1cIm11bHRpcGxlXCJdIHtcblx0XHRiYWNrZ3JvdW5kOiAkZ2YtaW5wdXQtY29sb3ItYmFja2dyb3VuZDtcblx0fSAvLyBzZWxlY3RbbXVsdGlwbGU9XCJtdWx0aXBsZVwiXVxufSAvLyAuZ2Zvcm1fd3JhcHBlclxuXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBcdEZPUk0gSEVBREVSXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4uZ2Zvcm1fd3JhcHBlciAuZ2Zvcm1faGVhZGluZyB7XG5cdC8vIC5nZm9ybV90aXRsZSAtIGZvcm0gdGl0bGVcblx0Ly8gLmdmb3JtX2Rlc2NyaXB0aW9uIC0gZm9ybSBkZXNjcmlwdGlvblxufSAvLyAuZ2Zvcm1fd3JhcHBlciAuZ2Zvcm1faGVhZGluZ1xuXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBcdEZPUk0gRk9PVEVSXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4uZ2Zvcm1fd3JhcHBlciAuZ2Zvcm1fZm9vdGVyIHtcblxuXHRpbnB1dC5idXR0b24sXG5cdGlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xuXHRcdC8vIFRoaXMgd2lsbCB0YXJnZXQgc3VibWl0IGJ1dHRvbnNcblx0fSAvLyBpbnB1dC5idXR0b24sIGlucHV0W3R5cGU9XCJzdWJtaXRcIl1cbn0gLy8gLmdmb3JtX3dyYXBwZXIgLmdmb3JtX2Zvb3RlclxuXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vL1x0Q09ORklSTUFUSU9OIE1FU1NBR0UgKFNVQ0NFU1NGVUwgQUpBWCBTVUJNSVNTSU9OKVxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLmdmb3Jtc19jb25maXJtYXRpb25fbWVzc2FnZSB7IC8vIGNvbnRhaW5lciBlbGVtZW50XG5cdC8vIC5nZm9ybV9jb25maXJtYXRpb25fd3JhcHBlciAtIHRoZSBtZXNzYWdlIHdyYXBwZXJcblx0Ly8gLmdmb3JtX2NvbmZpcm1hdGlvbl9tZXNzYWdlIC0gbWVzc2FnZSBkaXZcbn0gLy8gLmdmb3Jtc19jb25maXJtYXRpb25fbWVzc2FnZVxuXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vL1x0U0VMRUNUU1xuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLmdmb3JtX3dyYXBwZXIgLmdmb3JtX2JvZHkgLmdmb3JtX2ZpZWxkcyAuZ2ZpZWxkIHNlbGVjdCxcbi5nZm9ybV93cmFwcGVyLmdmX2Jyb3dzZXJfY2hyb21lIC5nZm9ybV9ib2R5IC5nZm9ybV9maWVsZHMgLmdmaWVsZCBzZWxlY3Qge1xuXHRtYXJnaW4tbGVmdDogMDtcblx0d2lkdGg6IDEwMCUgIWltcG9ydGFudDsgLy8gb3ZlcnJpZGVzIEdGICFpbXBvcnRhbnRcblxuXHRAaW5jbHVkZSBtZWRpYSgkcGhvbmUtbGFuZHNjYXBlKSB7XG5cdFx0d2lkdGg6IDQ5JSAhaW1wb3J0YW50O1xuXHR9XG59IC8vIC5nZm9ybV93cmFwcGVyIC5nZm9ybV9ib2R5IC5nZm9ybV9maWVsZHMgLmdmaWVsZCBzZWxlY3QsIC5nZm9ybV93cmFwcGVyLmdmX2Jyb3dzZXJfY2hyb21lIC5nZm9ybV9ib2R5IC5nZm9ybV9maWVsZHMgLmdmaWVsZCBzZWxlY3RcblxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy9cdENIT1NFTiBTRUxFQ1Rcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi5nZm9ybV93cmFwcGVyIC5nZmllbGQgLmNob3Nlbi1jb250YWluZXItc2luZ2xlIHtcblx0Zm9udC1zaXplOiByZW0oMTYpO1xuXG5cdC8vIExpbmsgaG9sZGluZyBpbml0aWFsIHNlbGVjdGlvbiAtIHdoYXQgdXNlciBmaXJzdCBzZWVzXG5cdC5jaG9zZW4tc2luZ2xlIHtcblx0XHRiYWNrZ3JvdW5kOiAkZ2YtaW5wdXQtY29sb3ItYmFja2dyb3VuZDtcblx0XHRib3JkZXItY29sb3I6ICRnZi1pbnB1dC1jb2xvci1ib3JkZXI7XG5cdFx0Ym9yZGVyLXJhZGl1czogMDtcblx0XHRoZWlnaHQ6IGF1dG87XG5cdFx0cGFkZGluZzogJGdmLWlucHV0LXBhZGRpbmc7XG5cdH0gLy8gLmNob3Nlbi1zaW5nbGVcblxuXHQvLyBEZWZhdWx0IHN0YXRlIG9mIGljb24gZm9yIHNlbGVjdFxuXHQuY2hvc2VuLXNpbmdsZSBkaXYgYiB7XG5cdFx0QGluY2x1ZGUgcG9zaXRpb24oYWJzb2x1dGUsIDQwJSByZW0oMTEpIG51bGwgbnVsbCk7XG5cdFx0QGluY2x1ZGUgdHJpYW5nbGUoMTJweCwgJGNvbG9yLXNpbHZlciwgZG93bik7IC8vIGFkanVzdCBzaXplIGFuZCBjb2xvclxuXG5cdFx0YmFja2dyb3VuZDogbm9uZTsgLy8gaGlkZSB0aGUgZGVmYXVsdCBjaG9zZW4gYmFja2dyb3VuZFxuXHR9IC8vIC5jaG9zZW4tc2luZ2xlIGRpdiBiXG5cblx0Ly8gU2VsZWN0aW9ucyBkcm9wLWRvd25cblx0LmNob3Nlbi1kcm9wIHtcblxuXHRcdC8vIFNlYXJjaCBib3ggYnkgZGVmYXVsdCBoYXMgYSBzbWFsbCBtYWduaWZ5aW5nIGljb24gb24gcmlnaHRcblx0XHQuY2hvc2VuLXNlYXJjaCBpbnB1dFt0eXBlPVwidGV4dFwiXSB7XG5cdFx0XHRiYWNrZ3JvdW5kOiBub25lO1xuXHRcdH0gLy8gLmNob3Nlbi1zZWFyY2ggaW5wdXRbdHlwZT1cInRleHRcIl1cblxuXHRcdC8vIFNlYXJjaCByZXN1bHRzIGxpc3Rcblx0XHQuY2hvc2VuLXJlc3VsdHMgbGkge1xuXHRcdFx0cGFkZGluZzogcmVtKDEwKSByZW0oNSk7XG5cdFx0fSAvLyAuY2hvc2VuLXJlc3VsdHMgbGlcblx0fSAvLyAuY2hvc2VuLWRyb3BcblxuXHQvLyBGb3Igc3R5bGluZyB0aGUgaWNvbiB3aGVuIHNlbGVjdCBpcyBhY3RpdmVcblx0Ji5jaG9zZW4tY29udGFpbmVyLXNpbmdsZS5jaG9zZW4td2l0aC1kcm9wIHtcblxuXHRcdC5jaG9zZW4tc2luZ2xlIHtcblx0XHRcdGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG5cdFx0fSAvLyAuY2hvc2VuLXNpbmdsZVxuXG5cdFx0LmNob3Nlbi1zaW5nbGUgZGl2IGIge1xuXHRcdFx0QGluY2x1ZGUgdHJpYW5nbGUoMTJweCwgJGNvbG9yLXNpbHZlciwgdXApOyAvLyBhZGp1c3Qgc2l6ZSBhbmQgY29sb3IgZm9yIGFjdGl2ZSBpY29uXG5cblx0XHRcdGJvcmRlcjogbm9uZTsgLy8gaGlkaW5nIHRoZSBwcmV2aW91cyB0cmlhbmdsZSAoYm9yZGVyKVxuXHRcdH0gLy8gLmNob3Nlbi1zaW5nbGUgZGl2IGJcblx0fSAvLyAmLmNob3Nlbi1jb250YWluZXItc2luZ2xlLmNob3Nlbi13aXRoLWRyb3Bcbn0gLy8gLmdmb3JtX3dyYXBwZXIgLmdmaWVsZCAuY2hvc2VuLWNvbnRhaW5lci1zaW5nbGVcblxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy9cdENPTlRFTlQgT1ZFUlJJREVTXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4jY29udGVudCAuZ2Zvcm1fd3JhcHBlciB7XG5cdG1hcmdpbi1yaWdodDogMDsgLy8gYWxsb3cgZm9yIGZ1bGwgd2lkdGggb2YgY29udGFpbmluZyBlbGVtZW50XG5cdG1heC13aWR0aDogMTAwJTsgLy8gYWxsb3cgZm9yIGZ1bGwgd2lkdGggb2YgY29udGFpbmluZyBlbGVtZW50XG5cblx0Ly8gU3RhbmRhcmQgZmllbGRzXG5cdGlucHV0W3R5cGU9XCJ0ZXh0XCJdLFxuXHRpbnB1dFt0eXBlPVwidXJsXCJdLFxuXHRpbnB1dFt0eXBlPVwiZW1haWxcIl0sXG5cdGlucHV0W3R5cGU9XCJ0ZWxcIl0sXG5cdGlucHV0W3R5cGU9XCJudW1iZXJcIl0sXG5cdGlucHV0W3R5cGU9XCJwYXNzd29yZFwiXSxcblx0aW5wdXRbdHlwZT1cImZpbGVcIl0sXG5cdHRleHRhcmVhIHtcblx0XHRwYWRkaW5nOiAkZ2YtaW5wdXQtcGFkZGluZztcblx0XHR3aWR0aDogMTAwJTtcblxuXHRcdEBpbmNsdWRlIG1lZGlhKCRwaG9uZS1sYW5kc2NhcGUpIHtcblx0XHRcdHdpZHRoOiA0OSU7XG5cdFx0fVxuXHR9IC8vIGlucHV0W3R5cGU9XCJ0ZXh0XCJdLCBpbnB1dFt0eXBlPVwidXJsXCJdLCBpbnB1dFt0eXBlPVwiZW1haWxcIl0sIGlucHV0W3R5cGU9XCJ0ZWxcIl0sIGlucHV0W3R5cGU9XCJudW1iZXJcIl0sIGlucHV0W3R5cGU9XCJwYXNzd29yZFwiXSwgaW5wdXRbdHlwZT1cImZpbGVcIl0sIHRleHRhcmVhXG5cblx0LmNob3Nlbi1zZWFyY2ggaW5wdXRbdHlwZT1cInRleHRcIl0sXG5cdHRleHRhcmVhIHtcblx0XHR3aWR0aDogMTAwJTtcblx0fSAvLyAuY2hvc2VuLXNlYXJjaCBpbnB1dFt0eXBlPVwidGV4dFwiXSwgdGV4dGFyZWFcblxuXHQvLyBWYWxpZGF0aW9uIGVycm9yIG1lc3NhZ2UgKGRpc3BsYXlzIGF0IHRvcCBvZiBmb3JtKVxuXHQudmFsaWRhdGlvbl9lcnJvciB7XG5cblx0fSAvLyAudmFsaWRhdGlvbl9lcnJvclxuXG5cdC8vIEVycm9yIGxhYmVscyAocmVxdWlyZWQgZmllbGRzKVxuXHQuZ2ZpZWxkX2Vycm9yIHtcblx0XHQvLyAuZ2ZpZWxkX2xhYmVsIC0gZXJyb3IgbGFiZWxcblx0XHQvLyAudmFsaWRhdGlvbl9tZXNzYWdlIC0gcmVxdWlyZWQgZXJyb3IgdGV4dFxuXHR9IC8vIC5nZmllbGRfZXJyb3JcblxuXHQvLyBUd28tY29sdW1uIGZpZWxkc1xuXHQuZ2ZfbGVmdF9oYWxmLFxuXHQuZ2ZfcmlnaHRfaGFsZiB7XG5cdFx0d2lkdGg6IDEwMCU7XG5cblx0XHQvLyBJbnB1dHNcblx0XHRpbnB1dFt0eXBlPVwidGV4dFwiXSxcblx0XHRpbnB1dFt0eXBlPVwidXJsXCJdLFxuXHRcdGlucHV0W3R5cGU9XCJlbWFpbFwiXSxcblx0XHRpbnB1dFt0eXBlPVwidGVsXCJdLFxuXHRcdGlucHV0W3R5cGU9XCJudW1iZXJcIl0sXG5cdFx0aW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdLFxuXHRcdGlucHV0W3R5cGU9XCJmaWxlXCJdIHtcblxuXHRcdFx0QGluY2x1ZGUgbWVkaWEoJHBob25lLWxhbmRzY2FwZSkge1xuXHRcdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdH1cblx0XHR9IC8vIGlucHV0W3R5cGU9XCJ0ZXh0XCJdLCBpbnB1dFt0eXBlPVwidXJsXCJdLCBpbnB1dFt0eXBlPVwiZW1haWxcIl0sIGlucHV0W3R5cGU9XCJ0ZWxcIl0sIGlucHV0W3R5cGU9XCJudW1iZXJcIl0sIGlucHV0W3R5cGU9XCJwYXNzd29yZFwiXSwgaW5wdXRbdHlwZT1cImZpbGVcIl1cblxuXHRcdEBpbmNsdWRlIG1lZGlhKCRwaG9uZS1sYW5kc2NhcGUpIHtcblx0XHRcdHdpZHRoOiA0OSU7XG5cdFx0fVxuXHR9IC8vIC5nZl9sZWZ0X2hhbGYsIC5nZl9yaWdodF9oYWxmXG5cblx0Ly8gVGFyZ2V0IGp1c3QgbGVmdCBjb2x1bW4gb24gdHdvLWNvbHVtbiByb3dcblx0LmdmX2xlZnRfaGFsZiB7XG5cblx0XHRAaW5jbHVkZSBtZWRpYSgkcGhvbmUtbGFuZHNjYXBlKSB7XG5cdFx0XHRtYXJnaW4tcmlnaHQ6IDIlO1xuXHRcdH1cblx0fSAvLyAuZ2ZfbGVmdF9oYWxmXG5cblx0Ly8gQWR2YW5jZWQgZmllbGRzXG5cdC8vIGh0dHBzOi8vd3d3LmdyYXZpdHloZWxwLmNvbS9kb2N1bWVudGF0aW9uL2FydGljbGUvY3NzLXRhcmdldGluZy1leGFtcGxlcy8jYWR2YW5jZWQtZmllbGRzXG5cdC5naW5wdXRfY29tcGxleCB7XG5cblx0XHQubmFtZV9maXJzdCBpbnB1dFt0eXBlPVwidGV4dFwiXSxcblx0XHQubmFtZV9sYXN0IGlucHV0W3R5cGU9XCJ0ZXh0XCJdIHtcblx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdH0gLy8gLm5hbWVfZmlyc3QgaW5wdXRbdHlwZT1cInRleHRcIl0sIC5uYW1lX2xhc3QgaW5wdXRbdHlwZT1cInRleHRcIl1cblx0fSAvLyAuZ2lucHV0X2NvbXBsZXhcbn0gLy8gI2NvbnRlbnQgLmdmb3JtX3dyYXBwZXJcbiIsIkBtaXhpbiB0cmlhbmdsZSgkc2l6ZSwgJGNvbG9yLCAkZGlyZWN0aW9uKSB7XG4gICR3aWR0aDogbnRoKCRzaXplLCAxKTtcbiAgJGhlaWdodDogbnRoKCRzaXplLCBsZW5ndGgoJHNpemUpKTtcbiAgJGZvcmVncm91bmQtY29sb3I6IG50aCgkY29sb3IsIDEpO1xuICAkYmFja2dyb3VuZC1jb2xvcjogaWYobGVuZ3RoKCRjb2xvcikgPT0gMiwgbnRoKCRjb2xvciwgMiksIHRyYW5zcGFyZW50KTtcbiAgaGVpZ2h0OiAwO1xuICB3aWR0aDogMDtcblxuICBAaWYgKCRkaXJlY3Rpb24gPT0gdXApIG9yICgkZGlyZWN0aW9uID09IGRvd24pIG9yICgkZGlyZWN0aW9uID09IHJpZ2h0KSBvciAoJGRpcmVjdGlvbiA9PSBsZWZ0KSB7XG4gICAgJHdpZHRoOiAkd2lkdGggLyAyO1xuICAgICRoZWlnaHQ6IGlmKGxlbmd0aCgkc2l6ZSkgPiAxLCAkaGVpZ2h0LCAkaGVpZ2h0LzIpO1xuXG4gICAgQGlmICRkaXJlY3Rpb24gPT0gdXAge1xuICAgICAgYm9yZGVyLWJvdHRvbTogJGhlaWdodCBzb2xpZCAkZm9yZWdyb3VuZC1jb2xvcjtcbiAgICAgIGJvcmRlci1sZWZ0OiAkd2lkdGggc29saWQgJGJhY2tncm91bmQtY29sb3I7XG4gICAgICBib3JkZXItcmlnaHQ6ICR3aWR0aCBzb2xpZCAkYmFja2dyb3VuZC1jb2xvcjtcbiAgICB9IEBlbHNlIGlmICRkaXJlY3Rpb24gPT0gcmlnaHQge1xuICAgICAgYm9yZGVyLWJvdHRvbTogJHdpZHRoIHNvbGlkICRiYWNrZ3JvdW5kLWNvbG9yO1xuICAgICAgYm9yZGVyLWxlZnQ6ICRoZWlnaHQgc29saWQgJGZvcmVncm91bmQtY29sb3I7XG4gICAgICBib3JkZXItdG9wOiAkd2lkdGggc29saWQgJGJhY2tncm91bmQtY29sb3I7XG4gICAgfSBAZWxzZSBpZiAkZGlyZWN0aW9uID09IGRvd24ge1xuICAgICAgYm9yZGVyLWxlZnQ6ICR3aWR0aCBzb2xpZCAkYmFja2dyb3VuZC1jb2xvcjtcbiAgICAgIGJvcmRlci1yaWdodDogJHdpZHRoIHNvbGlkICRiYWNrZ3JvdW5kLWNvbG9yO1xuICAgICAgYm9yZGVyLXRvcDogJGhlaWdodCBzb2xpZCAkZm9yZWdyb3VuZC1jb2xvcjtcbiAgICB9IEBlbHNlIGlmICRkaXJlY3Rpb24gPT0gbGVmdCB7XG4gICAgICBib3JkZXItYm90dG9tOiAkd2lkdGggc29saWQgJGJhY2tncm91bmQtY29sb3I7XG4gICAgICBib3JkZXItcmlnaHQ6ICRoZWlnaHQgc29saWQgJGZvcmVncm91bmQtY29sb3I7XG4gICAgICBib3JkZXItdG9wOiAkd2lkdGggc29saWQgJGJhY2tncm91bmQtY29sb3I7XG4gICAgfVxuICB9IEBlbHNlIGlmICgkZGlyZWN0aW9uID09IHVwLXJpZ2h0KSBvciAoJGRpcmVjdGlvbiA9PSB1cC1sZWZ0KSB7XG4gICAgYm9yZGVyLXRvcDogJGhlaWdodCBzb2xpZCAkZm9yZWdyb3VuZC1jb2xvcjtcblxuICAgIEBpZiAkZGlyZWN0aW9uID09IHVwLXJpZ2h0IHtcbiAgICAgIGJvcmRlci1sZWZ0OiAgJHdpZHRoIHNvbGlkICRiYWNrZ3JvdW5kLWNvbG9yO1xuICAgIH0gQGVsc2UgaWYgJGRpcmVjdGlvbiA9PSB1cC1sZWZ0IHtcbiAgICAgIGJvcmRlci1yaWdodDogJHdpZHRoIHNvbGlkICRiYWNrZ3JvdW5kLWNvbG9yO1xuICAgIH1cbiAgfSBAZWxzZSBpZiAoJGRpcmVjdGlvbiA9PSBkb3duLXJpZ2h0KSBvciAoJGRpcmVjdGlvbiA9PSBkb3duLWxlZnQpIHtcbiAgICBib3JkZXItYm90dG9tOiAkaGVpZ2h0IHNvbGlkICRmb3JlZ3JvdW5kLWNvbG9yO1xuXG4gICAgQGlmICRkaXJlY3Rpb24gPT0gZG93bi1yaWdodCB7XG4gICAgICBib3JkZXItbGVmdDogICR3aWR0aCBzb2xpZCAkYmFja2dyb3VuZC1jb2xvcjtcbiAgICB9IEBlbHNlIGlmICRkaXJlY3Rpb24gPT0gZG93bi1sZWZ0IHtcbiAgICAgIGJvcmRlci1yaWdodDogJHdpZHRoIHNvbGlkICRiYWNrZ3JvdW5kLWNvbG9yO1xuICAgIH1cbiAgfSBAZWxzZSBpZiAoJGRpcmVjdGlvbiA9PSBpbnNldC11cCkge1xuICAgIGJvcmRlci1jb2xvcjogJGJhY2tncm91bmQtY29sb3IgJGJhY2tncm91bmQtY29sb3IgJGZvcmVncm91bmQtY29sb3I7XG4gICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItd2lkdGg6ICRoZWlnaHQgJHdpZHRoO1xuICB9IEBlbHNlIGlmICgkZGlyZWN0aW9uID09IGluc2V0LWRvd24pIHtcbiAgICBib3JkZXItY29sb3I6ICRmb3JlZ3JvdW5kLWNvbG9yICRiYWNrZ3JvdW5kLWNvbG9yICRiYWNrZ3JvdW5kLWNvbG9yO1xuICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLXdpZHRoOiAkaGVpZ2h0ICR3aWR0aDtcbiAgfSBAZWxzZSBpZiAoJGRpcmVjdGlvbiA9PSBpbnNldC1yaWdodCkge1xuICAgIGJvcmRlci1jb2xvcjogJGJhY2tncm91bmQtY29sb3IgJGJhY2tncm91bmQtY29sb3IgJGJhY2tncm91bmQtY29sb3IgJGZvcmVncm91bmQtY29sb3I7XG4gICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItd2lkdGg6ICR3aWR0aCAkaGVpZ2h0O1xuICB9IEBlbHNlIGlmICgkZGlyZWN0aW9uID09IGluc2V0LWxlZnQpIHtcbiAgICBib3JkZXItY29sb3I6ICRiYWNrZ3JvdW5kLWNvbG9yICRmb3JlZ3JvdW5kLWNvbG9yICRiYWNrZ3JvdW5kLWNvbG9yICRiYWNrZ3JvdW5kLWNvbG9yO1xuICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLXdpZHRoOiAkd2lkdGggJGhlaWdodDtcbiAgfVxufVxuIiwiLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gRW1iZWRJdCBQcm8gYnkgU3VwZXJUaGVtZXNcbi8vXG4vLyBUaGlzIHBsdWdpbiBsZXRzIHVzZXJzIGNyZWF0ZSBIVE1MIHNuaXBwZXRzIHRvIGRpc3BsYXkgd2hhdGV2ZXIgdGhleSB3YW50LlxuLy8gVGhlIHNpbmdsZSBwb3N0IG1vY2t1cCBoYXMgYSBibG9jayBcIlNwb25zb3JlZCBieSBNb3JuaW5nRmluYW5jZVwiIHRoYXQgd2lsbCBiZSBkb25lXG4vLyB3aXRoIHRoaXMgcGx1Z2luLiBIb3dldmVyLCBzaW5jZSB0aGUgcG9zc2liaWxpdGllcyBhcmUgbGltaXRsZXNzLCB0aGUgbWFpbiBwcmlvcml0eVxuLy8gZm9yIHRoaXMgZmlsZSBpcyB0byBlbnN1cmUgc29tZSBzYW5lIGJhc2ljIHN0eWxlcy5cbi8vXG4vLyBUaGUgc25pcHBldHMgZG9uJ3QgZ2V0IHdyYXBwZWQsIGFuZCB0aGVyZWZvciB0aGUgd3JhcCBjbGFzcyBuZWVkcyB0byBiZSBhcHBsaWVkIG1hbnVhbGx5IGluIHRoZSBzbmlwcGV0XG4vLyBmb3IgdGhlc2Ugc3R5bGVzIHRvIGJlY29tZSBhY3RpdmUuXG4vL1xuLy8gQmFzaWNzIGFyZSBiYXNlZCBvbiB0aGUgYmxvY2sgaW4gdGhlIG1vY2t1cCBhbmQgYXNzdW1lIHRoZSB3aG9sZSB0aGluZyBpcyBhIGxpbmsuXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIEdlbmVyYWwgbGluayBvdmVycmlkZXMgKG5vIGl0YWxpYylcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi5lbWJlZC1ibG9jayxcbmEuZW1iZWQtYmxvY2sge1xuXHRmb250LXN0eWxlOiBub3JtYWw7XG59IC8vIC5lbWJlZC1ibG9jaywgYS5lbWJlZC1ibG9ja1xuXG5cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIFRoZSBFbWJlZCBibG9jayBpdHNlbGYsIHdoaWNoIGhhcyBhIGJvcmRlciBhbmQgc29tZSBwYWRkaW5nLlxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLmVtYmVkLWJsb2NrLFxuYS5lbWJlZC1ibG9jayB7XG5cdGJvcmRlci1ib3R0b206IHJlbSgxKSBzb2xpZCBsaWdodGVuKCRjb2xvci1ibGFjaywgODAlKTtcblx0ZGlzcGxheTogYmxvY2s7XG5cdG1hcmdpbi1ib3R0b206IHJlbSg1Nik7XG5cdG1hcmdpbi10b3A6IHJlbSg3Nyk7XG5cblx0QGluY2x1ZGUgbWVkaWEoJHRhYmxldC1sYW5kc2NhcGUpIHtcblx0XHRtYXJnaW4tYm90dG9tOiByZW0oMzgpO1xuXHRcdG1hcmdpbi10b3A6IHJlbSg2MCk7XG5cdH1cbn0gLy8gLmVtYmVkLWJsb2NrLCBhLmVtYmVkLWJsb2NrXG5cblxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gQmxvY2sgXCJoZWFkZXJcIlxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLmVtYmVkLWJsb2NrIHtcblx0LmhlYWRlciB7XG5cdFx0Ym9yZGVyLWJvdHRvbTogcmVtKDEpIHNvbGlkIGxpZ2h0ZW4oJGNvbG9yLWJsYWNrLCA4MCUpO1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdGZvbnQtc2l6ZTogcmVtKDIwKTtcblx0XHRtYXJnaW4tYm90dG9tOiByZW0oMjMpO1xuXHRcdHBhZGRpbmctYm90dG9tOiByZW0oOCk7XG5cblx0XHRAaW5jbHVkZSBtZWRpYSgkdGFibGV0LWxhbmRzY2FwZSkge1xuXHRcdFx0Zm9udC1zaXplOiByZW0oMTYpO1xuXHRcdH1cblx0fSAvLyAuaGVhZGVyXG59IC8vIC5lbWJlZC1ibG9ja1xuXG5cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIEJsb2NrIFwiaGVhZGluZ3NcIiAoYm9sZCwgdXBwZXJjYXNlZCB0ZXh0KVxuLy8gSSBkb24ndCByZWFsbHkgd2FudCB0byBhbGxvdyB1c2luZyBhY3R1YWwgaGVhZGluZ3MgaGVyZS4uLlxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLmVtYmVkLWJsb2NrIHtcblx0aDIsXG5cdC5oMixcblx0aDMsXG5cdC5oMyB7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0Zm9udC1zaXplOiByZW0oMzApO1xuXHRcdGxldHRlci1zcGFjaW5nOiByZW0oMS44KTtcblx0XHRsaW5lLWhlaWdodDogMTtcblx0XHRtYXJnaW46IHJlbSgxMykgMCByZW0oMzEpO1xuXHRcdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cblx0XHRAaW5jbHVkZSBtZWRpYSgkdGFibGV0LWxhbmRzY2FwZSkge1xuXHRcdFx0Zm9udC1zaXplOiByZW0oMjQpO1xuXHRcdFx0bWFyZ2luOiByZW0oMTYpIDAgcmVtKDIzKTtcblx0XHR9XG5cdH0gLy8gaDIsIC5oMiwgaDMsIC5oM1xufSAvLyAuZW1iZWQtYmxvY2tcblxuXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBQYXJhZ3JhcGggZm9udCBzaXplIGFkanVzdG1lbnRzXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4uZW1iZWQtYmxvY2sge1xuXHRwIHtcblx0XHRmb250LXNpemU6IHJlbSgxNik7XG5cdFx0bWFyZ2luLWJvdHRvbTogcmVtKDMyKTtcblxuXHRcdEBpbmNsdWRlIG1lZGlhKCRwaG9uZS1sYW5kc2NhcGUpIHtcblx0XHRcdGZvbnQtc2l6ZTogcmVtKDI0KTtcblx0XHR9XG5cblx0XHRAaW5jbHVkZSBtZWRpYSgkdGFibGV0LWxhbmRzY2FwZSkge1xuXHRcdFx0Zm9udC1zaXplOiByZW0oMTYpO1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogcmVtKDM2KTtcblx0XHR9XG5cdH0gLy8gcFxufSAvLyAuZW1iZWQtYmxvY2tcbiIsIi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIFNpbmdsZSBQb3N0IHRlbXBsYXRlXG4vLyAtIFNvbWUgb2YgdGhlc2Ugc3R5bGVzIHdpbGwgYWxzbyBhcHBseSB0byBwYWdlcy5cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gU2luZ2xlIFBvc3QgcGFnZSB3cmFwc1xuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLnNpbmdsZSxcbi5wYWdlIHtcblx0LnNpdGUtY29udGVudCB7XG5cdFx0bWFyZ2luLWJvdHRvbTogcmVtKDY1KTtcblx0fSAvLyAuc2l0ZS1jb250ZW50XG59IC8vIC5zaW5nbGUsIC5wYWdlXG5cblxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gUG9zdCBoZWFkZXIgc2VjdGlvblxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLnNpbmdsZSxcbi5wYWdlIHtcblx0LmhlbnRyeTpub3QoLmhvcml6b250YWwtYmxvZy1jYXJkKTpub3QoLmZlYXR1cmVkLXBvc3QpID4gLmVudHJ5LWhlYWRlciB7XG5cdFx0bWFyZ2luLWJvdHRvbTogcmVtKDQxKTtcblxuXHRcdEBpbmNsdWRlIG1lZGlhKCR0YWJsZXQtbGFuZHNjYXBlKSB7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiByZW0oNTIpO1xuXHRcdH1cblx0fSAvLyAuZW50cnktaGVhZGVyXG5cblx0LmhlbnRyeTpub3QoLmhvcml6b250YWwtYmxvZy1jYXJkKTpub3QoLmZlYXR1cmVkLXBvc3QpID4gLmVudHJ5LXRpdGxlIHtcblx0XHRtYXJnaW4tYm90dG9tOiByZW0oMjgpO1xuXHRcdG1hcmdpbi10b3A6IHJlbSgzOSk7XG5cblx0XHRAaW5jbHVkZSBtZWRpYSgkdGFibGV0LWxhbmRzY2FwZSkge1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogcmVtKDI2KTtcblx0XHRcdG1hcmdpbi10b3A6IHJlbSgxNik7XG5cdFx0XHR3aWR0aDogOTUuOCU7XG5cdFx0fVxuXHR9IC8vIC5lbnRyeS10aXRsZVxufSAvLyAuc2luZ2xlLCAucGFnZVxuXG5cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIEN1c3RvbSBleGNlcnB0XG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4uc2luZ2xlIHtcblx0LmVudHJ5LWN1c3RvbS1leGNlcnB0IHtcblx0XHRjb2xvcjogJGNvbG9yLW1pZC1ncmF5O1xuXHRcdGZvbnQtc2l6ZTogcmVtKDE4KTtcblx0XHRmb250LXN0eWxlOiBpdGFsaWM7XG5cdFx0bWFyZ2luLWJvdHRvbTogcmVtKDM1KTtcblx0XHRtYXJnaW4tbGVmdDogcmVtKDMpO1xuXHRcdHBhZGRpbmctbGVmdDogcmVtKDExKTtcblxuXHRcdEBpbmNsdWRlIG1lZGlhKCR0YWJsZXQtbGFuZHNjYXBlKSB7XG5cdFx0XHRmb250LXNpemU6IHJlbSgyNCk7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiByZW0oNzApO1xuXHRcdFx0bWFyZ2luLWxlZnQ6IHJlbSg5KTtcblx0XHR9XG5cblx0XHQmOjpiZWZvcmUge1xuXHRcdFx0bGVmdDogcmVtKC00KTtcblx0XHRcdHdpZHRoOiByZW0oNCk7XG5cblx0XHRcdEBpbmNsdWRlIG1lZGlhKCR0YWJsZXQtbGFuZHNjYXBlKSB7XG5cdFx0XHRcdGxlZnQ6IHJlbSgtNik7XG5cdFx0XHR9XG5cdFx0fSAvLyAmOjpiZWZvcmVcblx0fSAvLyAuZW50cnktY3VzdG9tLWV4Y2VycHRcbn0gLy8gLnNpbmdsZVxuXG5cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIFBvc3QgbWV0YVxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLnNpbmdsZSB7XG5cdC5lbnRyeS1tZXRhIHtcblx0XHRtYXJnaW4tdG9wOiByZW0oMjApO1xuXG5cdFx0QGluY2x1ZGUgbWVkaWEoJGJyZWFrcG9pbnQtNTAwKSB7XG5cdFx0XHRmb250LXNpemU6IHJlbSgyMik7XG5cdFx0XHRsaW5lLWhlaWdodDogMS4zNTtcblx0XHR9XG5cblx0XHRAaW5jbHVkZSBtZWRpYSgkdGFibGV0LWxhbmRzY2FwZSkge1xuXHRcdFx0Zm9udC1zaXplOiByZW0oMTgpO1xuXHRcdFx0bGluZS1oZWlnaHQ6IDEuMjU7XG5cdFx0XHRtYXJnaW46IHJlbSgzMCkgMDtcblx0XHR9XG5cblx0XHQuY2F0LWxpbmtzIHtcblx0XHRcdGZvbnQtd2VpZ2h0OiA3MDA7XG5cdFx0XHRsaW5lLWhlaWdodDogMS4zNTtcblx0XHRcdG1hcmdpbjogcmVtKDQpIHJlbSgxNSkgMCByZW0oMik7XG5cblx0XHRcdEBpbmNsdWRlIG1lZGlhKCR0YWJsZXQtbGFuZHNjYXBlKSB7XG5cdFx0XHRcdGxpbmUtaGVpZ2h0OiAxLjI1O1xuXHRcdFx0XHRtYXJnaW4tcmlnaHQ6IHJlbSgxNik7XG5cdFx0XHR9XG5cblx0XHRcdGEge1xuXHRcdFx0XHRwYWRkaW5nOiByZW0oMSkgcmVtKDIwKTtcblxuXHRcdFx0XHRAaW5jbHVkZSBtZWRpYSgkYnJlYWtwb2ludC01MDApIHtcblx0XHRcdFx0XHRmb250LXNpemU6IHJlbSgyMik7XG5cdFx0XHRcdH1cblxuXHRcdFx0XHRAaW5jbHVkZSBtZWRpYSgkdGFibGV0LWxhbmRzY2FwZSkge1xuXHRcdFx0XHRcdGZvbnQtc2l6ZTogcmVtKDE4KTtcblx0XHRcdFx0XHRwYWRkaW5nOiByZW0oMSkgcmVtKDE3KTtcblx0XHRcdFx0fVxuXHRcdFx0fSAvLyBhXG5cdFx0fSAvLyAuY2F0LWxpbmtzXG5cdH0gLy8gLmVudHJ5LW1ldGFcbn0gLy8gLnNpbmdsZVxuXG5cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIFBvc3QgQ29udGVudFxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLnNpbmdsZSAuZW50cnktY29udGVudCxcbi5wYWdlIC5lbnRyeS1jb250ZW50IHtcblxuXHRAaW5jbHVkZSBtZWRpYSgkdGFibGV0LWxhbmRzY2FwZSkge1xuXHRcdHBhZGRpbmctcmlnaHQ6IHJlbSg2NSk7XG5cdH1cblxuXHQvLyBPdmVycmlkZSBwYXJhZ3JhcGggc3R5bGVzIGluc2lkZSBvZiBibG9ja3F1b3RlcywgdG8gZml4IGluaGVyaXRhbmNlIGlzc3VlcyBhbmQgbW9ja3VwIGRldmlhdGlvbnMuXG5cdGJsb2NrcXVvdGUge1xuXHRcdG1hcmdpbi1ib3R0b206IHJlbSgyNCk7XG5cdFx0bWFyZ2luLXRvcDogcmVtKC01KTtcblxuXHRcdEBpbmNsdWRlIG1lZGlhKG1pbi13aWR0aCAkYnJlYWtwb2ludC01MDAgbWF4LXdpZHRoICR0YWJsZXQtbGFuZHNjYXBlKSB7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiByZW0oNDIpO1xuXHRcdH1cblxuXHRcdEBpbmNsdWRlIG1lZGlhKCR0YWJsZXQtbGFuZHNjYXBlKSB7XG5cdFx0XHRtYXgtd2lkdGg6IHJlbSg2NjcpO1xuXHRcdH1cblxuXHRcdHAge1xuXHRcdFx0Zm9udC1zaXplOiByZW0oMTgpO1xuXHRcdFx0bGluZS1oZWlnaHQ6IDEuNDU7XG5cblx0XHRcdCY6bGFzdC1jaGlsZCB7XG5cdFx0XHRcdG1hcmdpbi1ib3R0b206IDA7XG5cdFx0XHR9XG5cdFx0fSAvLyBwXG5cdH0gLy8gYmxvY2txdW90ZVxuXG5cdC8vIFR3aXR0ZXIgZW1iZWRzLCBpdCBhbHJlYWR5IHNldHMgbWFyZ2lucyB3aXRoIGlubGluZSBzdHlsZXMgd2hpY2ggbWVhbnMgIWltcG9ydGFudCBpcyBuZWVkZWQgdG8gb3ZlcnJpZGUgdGhlbS5cblx0LnR3aXR0ZXItdHdlZXQge1xuXHRcdG1hcmdpbi1ib3R0b206IHJlbSgzNSkgIWltcG9ydGFudDtcblx0XHRtYXJnaW4tdG9wOiByZW0oNTYpICFpbXBvcnRhbnQ7XG5cdH0gLy8gLnR3aXR0ZXItdHdlZXRcblxufSAvLyAuc2luZ2xlIC5lbnRyeS1jb250ZW50LCAucGFnZSAuZW50cnktY29udGVudFxuXG5cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIEVkaXQgbGlua1xuLy8gLSBPbmx5IGFwcGVhcnMgd2hlbiBsb2dnZWQgaW4sIHB1bGwgaXQgdG8gdGhlIHJpZ2h0XG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4uc2luZ2xlIHtcblx0LmVudHJ5LWZvb3RlciB7XG5cdFx0dGV4dC1hbGlnbjogcmlnaHQ7XG5cdH0gLy8gLmVudHJ5LWZvb3RlclxufSAvLyAuc2luZ2xlXG5cblxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gUmVjZW50IFBvc3RzXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4uc2luZ2xlIC5yZWNlbnQtcG9zdHMge1xuXHRjbGVhcjogbGVmdDtcblxuXHRAaW5jbHVkZSBtZWRpYSgkdGFibGV0LWxhbmRzY2FwZSkge1xuXHRcdG1hcmdpbi1yaWdodDogcmVtKDQwMCk7IC8vIE1hdGNoZXMgc2lkZWJhciAtbWFyZ2luLlxuXHRcdHBhZGRpbmctcmlnaHQ6IHJlbSgyOCk7XG5cdH1cblxuXHQuaW4tcml2ZXItYWRzIHtcblx0XHRtYXJnaW4tYm90dG9tOiByZW0oMzMpO1xuXHRcdG1hcmdpbi10b3A6IHJlbSgtMTkpO1xuXHR9IC8vIC5pbi1yaXZlci1hZHNcblxuXHQmLm1vYmlsZS1vbmx5IHtcblx0XHRtYXJnaW4tYm90dG9tOiByZW0oNjEpO1xuXG5cdFx0QGluY2x1ZGUgbWVkaWEoJHRhYmxldC1wb3J0cmFpdCkge1xuXHRcdFx0ZGlzcGxheTogbm9uZTtcblx0XHR9XG5cdH0gLy8gJi5tb2JpbGUtb25seVxuXG5cdCYuZGVza3RvcC1vbmx5IHtcblx0XHRkaXNwbGF5OiBub25lO1xuXG5cdFx0QGluY2x1ZGUgbWVkaWEoJHRhYmxldC1wb3J0cmFpdCkge1xuXHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0fVxuXHR9IC8vICYuZGVza3RvcC1vbmx5XG59IC8vIC5zaW5nbGUgLnJlY2VudC1wb3N0c1xuXG5cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIFRhZyBsaW5rc1xuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLnNpbmdsZSAudGFncy1saW5rcyB7XG5cdEBpbmNsdWRlIGNsZWFyZml4O1xuXG5cdGRpc3BsYXk6IG5vbmU7XG5cdG1hcmdpbi1ib3R0b206IHJlbSgyMCk7XG5cdHRleHQtYWxpZ246IGxlZnQ7XG5cblx0QGluY2x1ZGUgbWVkaWEoJHRhYmxldC1wb3J0cmFpdCkge1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHR9XG5cblx0YSB7XG5cdFx0YmFja2dyb3VuZDogJGNvbG9yLWdhbGxlcnk7XG5cdFx0Ym9yZGVyLWJvdHRvbTogbm9uZTtcblx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0Zm9udC1zaXplOiByZW0oMTgpO1xuXHRcdGZvbnQtc3R5bGU6IG5vcm1hbDtcblx0XHRsaW5lLWhlaWdodDogMS4zNTtcblx0XHRtYXJnaW4tbGVmdDogcmVtKDIwKTtcblx0XHRtYXJnaW4tdG9wOiByZW0oMTApO1xuXHRcdHBhZGRpbmc6IHJlbSg1KSByZW0oMTApO1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuXHRcdCY6aG92ZXIsXG5cdFx0Jjpmb2N1cyB7XG5cdFx0XHRjb2xvcjogJGNvbG9yLXdoaXRlO1xuXHRcdH0gLy8gJjpob3ZlciwgJjpmb2N1c1xuXG5cdFx0Jjo6YmVmb3JlIHtcblx0XHRcdEBpbmNsdWRlIHBvc2l0aW9uKGFic29sdXRlLCByZW0oMTQpIG51bGwgbnVsbCByZW0oLTMpKTtcblx0XHRcdEBpbmNsdWRlIHNpemUocmVtKDYpKTtcblxuXHRcdFx0YmFja2dyb3VuZDogJGNvbG9yLXdoaXRlO1xuXHRcdFx0Ym9yZGVyLXJhZGl1czogNTAlO1xuXHRcdFx0Y29udGVudDogXCJcIjtcblx0XHRcdHotaW5kZXg6IDE7XG5cdFx0fSAvLyAmOjpiZWZvcmVcblxuXHRcdCY6OmFmdGVyIHtcblx0XHRcdEBpbmNsdWRlIHBvc2l0aW9uKGFic29sdXRlLCAwIG51bGwgbnVsbCByZW0oLTE0KSk7XG5cblx0XHRcdGJvcmRlci1ib3R0b206IHJlbSgxNykgc29saWQgdHJhbnNwYXJlbnQ7XG5cdFx0XHRib3JkZXItcmlnaHQ6IHJlbSgxNCkgc29saWQgJGNvbG9yLWdhbGxlcnk7XG5cdFx0XHRib3JkZXItdG9wOiByZW0oMTcpIHNvbGlkIHRyYW5zcGFyZW50O1xuXHRcdFx0Y29udGVudDogXCJcIjtcblx0XHR9IC8vICY6OmFmdGVyXG5cdH0gLy8gYVxuXG59IC8vIC5zaW5nbGUgLnRhZy1saW5rc1xuXG5cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIEZlYXR1cmVkIEltYWdlXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4uc2luZ2xlIHtcblxuXHQuc2luZ2xlLXBvc3QtZmVhdHVyZWQtaW1hZ2Uge1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdG1hcmdpbjogMCAoLTIgKiAkZ3V0dGVyKTtcblx0XHRtYXgtd2lkdGg6IG5vbmU7XG5cdFx0d2lkdGg6IGNhbGMoIDEwMCUgKyAyLjVlbSApO1xuXG5cdFx0QGluY2x1ZGUgbWVkaWEoJHBob25lLWxhbmRzY2FwZSkge1xuXHRcdFx0bWFyZ2luOiAwIGF1dG87XG5cdFx0XHRtYXgtd2lkdGg6IDEwMCU7XG5cdFx0fVxuXHR9IC8vIC5zaW5nbGUtcG9zdC1mZWF0dXJlZC1pbWFnZVxuXG59IC8vIC5zaW5nbGVcbiIsIi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIEFyY2hpdmUgdGVtcGxhdGVcbi8vIC0gU3R5bGluZyBmb3IgTUxCLCBORkwsIGV0Yy4gQ2F0ZWdvcnkgTGFuZGluZyBwYWdlcy5cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gQXJjaGl2ZSBMYW5kaW5nIHBhZ2Vcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi5hcmNoaXZlIHtcblx0Ly8gQ29udGFpbmVyIGZvciBQYWdlIHRpdGxlLlxuXHQucGFnZS1oZWFkZXIge1xuXHRcdG1hcmdpbi1ib3R0b206IHJlbSg0NSk7XG5cdFx0bWFyZ2luLXRvcDogcmVtKDQxKTtcblx0fSAvLyAucGFnZS1oZWFkZXJcblxuXHQvLyBUaXRsZSBiZWZvcmUgRmVhdHVyZWQgR3JpZFxuXHQucGFnZS10aXRsZSB7XG5cdFx0bGV0dGVyLXNwYWNpbmc6IHJlbSgxKTtcblx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdFx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblxuXHRcdEBpbmNsdWRlIG1lZGlhKCR0YWJsZXQtbGFuZHNjYXBlKSB7XG5cdFx0XHRmb250LXNpemU6IHJlbSgzOCk7XG5cdFx0fVxuXHR9IC8vIC5wYWdlLXRpdGxlXG59IC8vIC5hcmNoaXZlXG4iLCIvLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBTZWFyY2ggcmVzdWx0cyBwYWdlXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIEhpZ2hsaWdodCBzZWFyY2ggdGVybXMuXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4uc2VhcmNoLXRlcm0ge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItYnV0dGVyY3VwO1xuXHR0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuMThzIGVhc2Utb3V0O1xuXG5cdGE6aG92ZXIgJixcblx0YTpmb2N1cyAmIHtcblx0XHRiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcblx0fSAvLyBhOmhvdmVyICYsIGE6Zm9jdXMgJlxufSAvLyAuc2VhcmNoLXRlcm1cblxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gTm8gU2VhcmNoIEZvdW5kIFBhZ2UuXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4uc2VhcmNoLW5vLXJlc3VsdHMge1xuXHQvLyBUaGUgc2lkZWJhci4gSGlkZSBpdDsgb25seSBzaW1wbGUgd2F5IG9mIG1pbWlja2luZyB0aGUgNDA0IHBhZ2UuXG5cdC5zZWNvbmRhcnkge1xuXHRcdGRpc3BsYXk6IG5vbmU7XG5cdH0gLy8gLnNlY29uZGFyeVxuXG5cdC8vIEV4dHJhIGNvbnRlbnQgYmVsb3cgdGhlIG5vLXJlc3VsdHMgY29udGVudC5cblx0LmJlbG93LXBvc3RzIHtcblx0XHRtYXJnaW4tdG9wOiByZW0oNDApO1xuXHR9IC8vIC5iZWxvdy1wb3N0c1xufSAvLyAuc2VhcmNoLW5vLXJlc3VsdHNcbiIsIi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIFdpZGdldHNcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLndpZGdldCB7XG5cdG1hcmdpbjogMCAwIHJlbSgyNCk7XG5cblx0Ly8gTWFrZSBzdXJlIHNlbGVjdCBlbGVtZW50cyBmaXQgaW4gd2lkZ2V0cy5cblx0c2VsZWN0IHtcblx0XHRtYXgtd2lkdGg6IDEwMCU7XG5cdH0gLy8gc2VsZWN0XG59IC8vIC53aWRnZXRcblxuLy8gU2VhcmNoIHdpZGdldC5cbi53aWRnZXRfc2VhcmNoIC5zZWFyY2gtc3VibWl0IHtcblx0ZGlzcGxheTogbm9uZTtcbn0gLy8gLndpZGdldF9zZWFyY2ggLnNlYXJjaC1zdWJtaXRcblxuLy8gSGlkZSBvbiBtb2JpbGUuXG4uaGlkZS1pbi1tb2JpbGUge1xuXHRkaXNwbGF5OiBub25lO1xuXG5cdEBpbmNsdWRlIG1lZGlhKCRicmVha3BvaW50LTcwMCkge1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHR9XG59IC8vIC5oaWRlLWluLW1vYmlsZVxuXG4vLyBIaWRlIG9uIFRhYmxldC5cbi5oaWRlLWluLXRhYmxldCB7XG5cdEBpbmNsdWRlIG1lZGlhKCR0YWJsZXQtcG9ydHJhaXQpIHtcblx0XHRkaXNwbGF5OiBub25lO1xuXHR9XG5cdEBpbmNsdWRlIG1lZGlhKCRkZXNrdG9wKSB7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdH1cbn0gLy8gLmhpZGUtaW4tdGFibGV0XG5cbi8vIEhpZGUgb24gRGVza3RvcC5cbi5oaWRlLWluLWRlc2t0b3Age1xuXHRAaW5jbHVkZSBtZWRpYSgkZGVza3RvcCkge1xuXHRcdGRpc3BsYXk6IG5vbmU7XG5cdH1cbn0gLy8gLmhpZGUtaW4tZGVza3RvcCIsIi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIFNpZGViYXIgV2lkZ2V0c1xuLy9cbi8vIENvbnRhaW5zIHN0eWxpbmcgZm9yIHRoZSBmb2xsb3dpbmcgc2lkZWJhciB3aWRnZXRzOlxuLy9cbi8vIDQwMHB4IFZpZGVvIEFkLlxuLy8gMzAwcHggQWRzLlxuLy8gQ2xvbmUgd2lkZ2V0IChQb3B1bGFyIFBvc3RzKS5cbi8vIExpbmsgQm94ZSB3aWRnZXRzLlxuLy9cbi8vIFNhc3MgTGludDogVGhlcmUncyBhbiBlcnJvciB0aHJvd24gZm9yIHVzaW5nXG4vLyAud2lkZ2V0X2Jsb2d1aW5fbGlua19ib3hfd2lkZ2V0IGNsYXNzLCBidXQgaXQncyB3aGF0J3MgaW5cbi8vIHRoZWlyIHBsdWdpbnMgYW5kIGZ1bmN0aW9ucy5cbi8vXG4vLyBAVE9ETzogUGVyaGFwcyB3ZSBjYW4gdXBkYXRlIGNsYXNzIG5hbWVzIGluIHBsdWdpbnMgaWZcbi8vIFx0XHQgIHdlIGhhdmUgZXh0cmEgdGltZS5cbi8vXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIFRoZSBHbG9iYWwgU2lkZWJhci5cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi5zZWNvbmRhcnkge1xuXHQvLyBDb250YWlucyBzaW5nbGUgd2lkZ2V0IGZvciBlYWNoIGFzaWRlLlxuXHRhc2lkZSB7XG5cdFx0bWFyZ2luOiByZW0oMzgpIGF1dG87IC8vIENlbnRlciB0aGUgYWRzLlxuXHRcdG1heC13aWR0aDogMTAwJTsgLy8gTWFrZSBzdXJlIHdlIGRvbid0IGdvIG92ZXIuXG5cdFx0d2lkdGg6IHJlbSgzMDApOyAvLyBzaXplIG9mIG91ciBhZHMuXG5cblx0XHQmOmZpcnN0LW9mLXR5cGUge1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogcmVtKDM4KTtcblx0XHRcdG1hcmdpbi10b3A6IDA7XG5cdFx0XHRtYXgtd2lkdGg6IDEwMCU7XG5cdFx0XHR3aWR0aDogcmVtKDQwMCk7XG5cdFx0fSAvLyAmOmZpcnN0LW9mLXR5cGVcblxuXHRcdCYuY2xvbmUtd2lkZ2V0LFxuXHRcdCYud2lkZ2V0X2Jsb2d1aW5fbGlua19ib3hfd2lkZ2V0IHtcblx0XHRcdHdpZHRoOiAxMDAlOyAvLyBXZSB3YW50IHRoZSBiaWcgVmlkZW8gYWQgYW5kIENsb25lIHdpZGdldHMgdG8gYmUgZnVsbCB3aWR0aC5cblx0XHR9IC8vICY6Zmlyc3Qtb2YtdHlwZSwgJi5jbG9uZS13aWRnZXQsICYud2lkZ2V0X2Jsb2d1aW5fbGlua19ib3hfd2lkZ2V0XG5cdH0gLy8gYXNpZGVcblxuXHQvLyBHZW5lcmljIFNpZGViYXIgd2lkZ2V0LlxuXHQud2lkZ2V0IHtcblxuXHRcdC8vIE9ubHkgdGFyZ2V0IFNpZGViYXIgd2lkZ2V0IHRpdGxlcyAobm90IGZvb3RlcikuXG5cdFx0LndpZGdldC10aXRsZSB7XG5cdFx0XHRAZXh0ZW5kIC5oNTtcblxuXHRcdFx0YmFja2dyb3VuZDogJGNvbG9yLW1ha287XG5cdFx0XHRjb2xvcjogJGNvbG9yLXdoaXRlO1xuXHRcdFx0Zm9udC1zaXplOiByZW0oMjQpO1xuXHRcdFx0bGV0dGVyLXNwYWNpbmc6IHJlbSgxLjUpO1xuXHRcdFx0bGluZS1oZWlnaHQ6IDI7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiByZW0oMjgpO1xuXHRcdFx0bWFyZ2luLWxlZnQ6IHJlbSgtMTApOyAvLyBIZWxwZXIgZm9yIGZ1bGwgd2lkdGggYXBwZWFyYW5jZSBvbiBtb2JpbGUuXG5cdFx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdFx0XHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXHRcdFx0d2lkdGg6IGNhbGMoMTAwJSArIDIwcHgpO1xuXG5cdFx0XHRAaW5jbHVkZSBtZWRpYSgkdGFibGV0LWxhbmRzY2FwZSkge1xuXHRcdFx0XHRmb250LXNpemU6IHJlbSgyMCk7XG5cdFx0XHRcdGxpbmUtaGVpZ2h0OiAyLjQ7XG5cdFx0XHRcdG1hcmdpbi1sZWZ0OiAwOyAvLyBObyBsb25nZXIgbmVlZCBtb2JpbGUgaGVscGVyIGZvciBmdWxsIHdpZHRoLlxuXHRcdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdH1cblx0XHR9IC8vIC53aWRnZXQtdGl0bGVcblx0fSAvLyAud2lkZ2V0XG59IC8vLnNlY29uZGFyeVxuXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBDbG9uZSB3aWRnZXQsIGNvbnRyb2xzIHRoZSBwb3B1bGFyIHBvc3RzLlxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLmNsb25lLXdpZGdldCB7XG5cblx0Ly8gQ29udGFpbnMgdGhlIGNsb25lIHBvc3QgY29udGVudFxuXHQuZmVhdHVyZWRzaWRlYmFyIHtcblx0XHRAaW5jbHVkZSBtYXJnaW4tYXV0bztcblxuXHRcdHdpZHRoOiAxMDAlO1xuXG5cdFx0QGluY2x1ZGUgbWVkaWEoJHBob25lLWxhbmRzY2FwZSkge1xuXHRcdFx0cGFkZGluZzogMCByZW0oNTApO1xuXHRcdH1cblxuXHRcdEBpbmNsdWRlIG1lZGlhKCR0YWJsZXQtbGFuZHNjYXBlKSB7XG5cdFx0XHRwYWRkaW5nOiAwO1xuXHRcdFx0d2lkdGg6IHJlbSgzMDApO1xuXHRcdH1cblxuXHRcdC8vIEZlYXR1cmVkIFRodW1ibmFpbCBJbWFnZS5cblx0XHQuaW1hZ2UtYXMtYmFja2dyb3VuZCB7XG5cdFx0XHRAZXh0ZW5kIC5jYXJkLWltYWdlO1xuXHRcdFx0QGluY2x1ZGUgcG9zaXRpb24ocmVsYXRpdmUsIG51bGwpO1xuXG5cdFx0XHRib3JkZXI6IG5vbmU7XG5cdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdG1hcmdpbi1ib3R0b206IHJlbSgyMCk7XG5cdFx0XHRtaW4taGVpZ2h0OiByZW0oMjAwKTtcblxuXHRcdFx0QGluY2x1ZGUgbWVkaWEoJHBob25lLWxhbmRzY2FwZSkge1xuXHRcdFx0XHRtaW4taGVpZ2h0OiByZW0oMzA2KTtcblx0XHRcdH1cblxuXHRcdFx0QGluY2x1ZGUgbWVkaWEoJHRhYmxldC1sYW5kc2NhcGUpIHtcblx0XHRcdFx0bWFyZ2luLWJvdHRvbTogcmVtKDI1KTtcblx0XHRcdFx0bWluLWhlaWdodDogcmVtKDIwMCk7XG5cdFx0XHR9XG5cblx0XHRcdC8vIEFkZCBhIGdyYWRpZW50IGJhY2tncm91bmQgb3ZlciB0aGUgZmVhdHVyZWQgaW1hZ2UsXG5cdFx0XHQvLyBzbyB0aGF0IHRoZSB3aGl0ZSB0ZXh0IHdpbGwgYmUgcmVhZGFibGUgcmVnYXJkbGVzcyBvZiB3aGF0IGlzIGluIHNhaWQgaW1hZ2UuXG5cdFx0XHQmOjphZnRlciB7XG5cdFx0XHRcdEBpbmNsdWRlIHBvc2l0aW9uKGFic29sdXRlLCAwIDAgbnVsbCBudWxsKTtcblx0XHRcdFx0QGluY2x1ZGUgc2l6ZSgxMDAlIDEwMCUpO1xuXG5cdFx0XHRcdGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudChyZ2JhKCRjb2xvci10aHVuZGVyLCAwKSA0OCUsIHJnYmEoJGNvbG9yLXRodW5kZXIsIDEpIDk1JSwgcmdiYSgkY29sb3ItdGh1bmRlciwgMSkgOTYlKTtcblx0XHRcdFx0Y29udGVudDogXCJcIjtcblx0XHRcdFx0ei1pbmRleDogMjtcblx0XHRcdH0gLy8gJjo6YWZ0ZXJcblxuXHRcdFx0Ly8gRnVsbCBiYWNrZ3JvdW5kIG92ZXJsYXksIHdpbGwgb25seSBiZSB2aXNpYmxlIG9uIGhvdmVyLlxuXHRcdFx0Jjo6YmVmb3JlIHtcblx0XHRcdFx0QGluY2x1ZGUgcG9zaXRpb24oYWJzb2x1dGUsIDAgMCBudWxsIG51bGwpO1xuXHRcdFx0XHRAaW5jbHVkZSBzaXplKDEwMCUgMTAwJSk7XG5cdFx0XHRcdEBpbmNsdWRlIHRyYW5zaXRpb24ob3BhY2l0eSAwLjE4cyBlYXNlLWluLW91dCk7XG5cblx0XHRcdFx0YmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgcmdiYSgkY29sb3ItdGh1bmRlciwgMC43KSA0OCUsIHJnYmEoJGNvbG9yLXRodW5kZXIsIDEpIDk1JSwgcmdiYSgkY29sb3ItdGh1bmRlciwgMSkgOTYlKTtcblx0XHRcdFx0Y29udGVudDogXCJcIjtcblx0XHRcdFx0b3BhY2l0eTogMDtcblx0XHRcdFx0ei1pbmRleDogMTtcblx0XHRcdH1cblxuXHRcdFx0aDQge1xuXHRcdFx0XHRAaW5jbHVkZSBwb3NpdGlvbihhYnNvbHV0ZSwgbnVsbCBudWxsIDAgbnVsbCk7XG5cblx0XHRcdFx0Y29sb3I6ICRjb2xvci13aGl0ZTtcblx0XHRcdFx0Zm9udC1zaXplOiByZW0oMjApO1xuXHRcdFx0XHRmb250LXN0eWxlOiBub3JtYWw7XG5cdFx0XHRcdGxldHRlci1zcGFjaW5nOiAwO1xuXHRcdFx0XHRsaW5lLWhlaWdodDogMS4xNTtcblx0XHRcdFx0bWFyZ2luLWJvdHRvbTogcmVtKDEwKTtcblx0XHRcdFx0cGFkZGluZzogMCByZW0oNCkgMCByZW0oMTIpO1xuXHRcdFx0XHR0ZXh0LXRyYW5zZm9ybTogbm9uZTtcblx0XHRcdFx0dHJhbnNpdGlvbjogY29sb3IgMC4xOHMgZWFzZS1vdXQ7XG5cdFx0XHRcdHotaW5kZXg6IDQ7XG5cblx0XHRcdFx0QGluY2x1ZGUgbWVkaWEoJHRhYmxldC1sYW5kc2NhcGUpIHtcblx0XHRcdFx0XHRmb250LXNpemU6IHJlbSgxOCk7XG5cdFx0XHRcdH1cblx0XHRcdH0gLy8gaDRcblxuXHRcdFx0Jjpob3Zlcixcblx0XHRcdCY6Zm9jdXMge1xuXHRcdFx0XHQmOjpiZWZvcmUge1xuXHRcdFx0XHRcdG9wYWNpdHk6IDAuNTtcblx0XHRcdFx0fSAvLyAmOjpiZWZvcmVcblx0XHRcdH0gLy8gJjpob3ZlciwgJjpmb2N1c1xuXHRcdH0gLy8gLmltYWdlLWFzLWJhY2tncm91bmRcblx0fSAvLyAuZmVhdHVyZWRzaWRlYmFyXG59IC8vIC5jbG9uZS13aWRnZXRcblxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gTGluayBib3ggc3R5bGVzLCBlLmcuICdUaGUgR29vZCBTdHVmZidcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi5saW5rLWJveCB7XG5cblx0Ly8gQ29udGFpbmVyIHRoYXQgaG91c2VzIHRoZSBsaW5rYm94IGNvbnRlbnQuXG5cdC5saW5rLWJveC1jb250ZW50IHtcblx0XHRAaW5jbHVkZSBtYXJnaW4tYXV0bztcblxuXHRcdHdpZHRoOiAxMDAlO1xuXG5cdFx0QGluY2x1ZGUgbWVkaWEoJHBob25lLWxhbmRzY2FwZSkge1xuXHRcdFx0cGFkZGluZzogMCByZW0oNTApO1xuXHRcdH1cblxuXHRcdEBpbmNsdWRlIG1lZGlhKCR0YWJsZXQtbGFuZHNjYXBlKSB7XG5cdFx0XHRwYWRkaW5nOiAwO1xuXHRcdFx0d2lkdGg6IHJlbSgzMDApO1xuXHRcdH1cblx0fSAvLyAubGluay1ib3gtY29udGVudFxuXG5cdC8vIFRoZSBGZWF0dXJlZCBUaHVtYiBhdCB0aGUgdG9wIG9mIHRoZSBsaW5rIGJveC5cblx0LmxpbmstYm94LXRodW1iIHtcblx0XHRoZWlnaHQ6IHJlbSgyOTIpO1xuXHRcdG1hcmdpbi1ib3R0b206IHJlbSgyNyk7XG5cdFx0d2lkdGg6IDEwMCU7XG5cblx0XHRAaW5jbHVkZSBtZWRpYSgkdGFibGV0LWxhbmRzY2FwZSkge1xuXHRcdFx0aGVpZ2h0OiByZW0oMjAwKTtcblx0XHR9XG5cdH0gLy8gLmxpbmstYm94LXRodW1iXG5cblx0Ly8gVGhlIGxpc3Qgb2YgdGV4dCBsaW5rcyBpbiB0aGUgc2lkZWJhci5cblx0LmxpbmstYm94LWxpc3Qge1xuXHRcdEBpbmNsdWRlIG1hcmdpbi1wYWRkaW5nLXJlc2V0O1xuXHRcdEBpbmNsdWRlIGxpc3QtcmVzZXQ7XG5cblx0XHQvLyBBbiBpbmRpdmlkdWFsIGxpbmsgaXRlbS90ZXh0LlxuXHRcdC5saW5rLWJveC1pdGVtIHtcblx0XHRcdGxpbmUtaGVpZ2h0OiAxLjM1O1xuXHRcdFx0bWFyZ2luOiByZW0oLTMpIDAgcmVtKDIzKSAwO1xuXG5cdFx0XHQvLyBUaGUgYW5jaG9yIGxpbmsgb2YgdGhlIGxpbmtib3ggbGluay5cblx0XHRcdC5saW5rLWJveC1saW5rIHtcblx0XHRcdFx0QGluY2x1ZGUgdHJhbnNpdGlvbihjb2xvciAwLjE4cyBlYXNlLWluLW91dCwgYm9yZGVyLWJvdHRvbSAwLjE4cyBlYXNlLWluLW91dCk7XG5cblx0XHRcdFx0Ym9yZGVyLWJvdHRvbTogcmVtKDIpIHNvbGlkICRjb2xvci1mcmVuY2gtZ3JheTtcblx0XHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRcdGZvbnQtZmFtaWx5OiAkZm9udC1zYW5zO1xuXHRcdFx0XHRmb250LXNpemU6IHJlbSgyMCk7XG5cdFx0XHRcdGZvbnQtc3R5bGU6IG5vcm1hbDtcblx0XHRcdFx0Zm9udC13ZWlnaHQ6IDYwMDtcblx0XHRcdFx0cGFkZGluZy1ib3R0b206IHJlbSgxMyk7XG5cblx0XHRcdFx0QGluY2x1ZGUgbWVkaWEoJHRhYmxldC1sYW5kc2NhcGUpIHtcblx0XHRcdFx0XHRmb250LXNpemU6IHJlbSgxOCk7XG5cdFx0XHRcdH1cblxuXHRcdFx0XHQmOmhvdmVyLFxuXHRcdFx0XHQmOmZvY3VzIHtcblx0XHRcdFx0XHRib3JkZXItYm90dG9tLWNvbG9yOiAkY29sb3ItYnV0dGVyY3VwO1xuXHRcdFx0XHR9IC8vICY6aG92ZXIsICY6Zm9jdXNcblxuXHRcdFx0fSAvLyAubGluay1ib3gtbGlua1xuXHRcdH0gLy8gLmxpbmstYm94LWl0ZW1cblx0fSAvLyAubGluay1ib3gtbGlzdFxufSAvLyAubGluay1ib3hcblxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gTGluayBCb3ggUHJlc2VudGF0aW9uYWwgQ2xhc3NlcyBTZXQgVmlhIEFkbWluLlxuLy9cbi8vIFJlcXVpcmVzIHNvbWUgYnJlYWtwb2ludC13cmFuZ2luZyB0byBsb29rIGNvcnJlY3QuXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4ubGluay1ib3gtdGhpcmQge1xuXHR3aWR0aDogMzIlO1xuXHRcblx0QGluY2x1ZGUgbWVkaWEoJHBob25lLWxhbmRzY2FwZSkge1xuXHRcdHdpZHRoOiA0NCU7XG5cdH1cblxuXHRAaW5jbHVkZSBtZWRpYSgkdGFibGV0LWxhbmRzY2FwZSkge1xuXHRcdHdpZHRoOiA1MCU7XG5cdH1cblxuXHRAaW5jbHVkZSBtZWRpYSgkZGVza3RvcCkge1xuXHRcdHdpZHRoOiAzNCU7XG5cdH1cblxuXHQubGluay1ib3gtdGh1bWIge1xuXHRcdGhlaWdodDogcmVtKDEwMCk7XG5cblx0XHRAaW5jbHVkZSBtZWRpYSgkYnJlYWtwb2ludC03MDApIHtcblx0XHRcdGhlaWdodDogcmVtKDE2MCk7XG5cdFx0fVxuXG5cdFx0QGluY2x1ZGUgbWVkaWEoJHRhYmxldC1sYW5kc2NhcGUpIHtcblx0XHRcdGhlaWdodDogcmVtKDIwMCk7XG5cdFx0fVxuXHR9XG5cdFxuXHQud2lkZ2V0LXRpdGxlIHtcblx0XHRmb250LXNpemU6IHJlbSgyMik7XG5cdFx0bGluZS1oZWlnaHQ6IDEuMjtcblx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cblx0XHRAaW5jbHVkZSBtZWRpYSgkdGFibGV0LXBvcnRyYWl0KSB7XG5cdFx0XHRmb250LXNpemU6IHJlbSgyNCk7XG5cdFx0XHRsaW5lLWhlaWdodDogMjtcblx0XHR9XG5cblx0XHRAaW5jbHVkZSBtZWRpYSgkdGFibGV0LWxhbmRzY2FwZSkge1xuXHRcdFx0dGV4dC1hbGlnbjogbGVmdDtcblx0XHR9XG5cdH0gLy8gLndpZGdldC10aXRsZVxuXHRcblx0LmxpbmstYm94LWxpc3QgLmxpbmstYm94LWl0ZW0ge1xuXHRcdGZvbnQtc2l6ZTogcmVtKDE0KTtcblx0XHRsaW5lLWhlaWdodDogMTtcblxuXHRcdC8vIFRoZSBhbnJjaG9yIGxpbmsgb2YgdGhlIGxpbmtib3ggbGluay5cblx0XHQubGluay1ib3gtbGluayB7XG5cdFx0XHRmb250LXNpemU6IHJlbSgxNSk7XG5cblx0XHRcdEBpbmNsdWRlIG1lZGlhKCR0YWJsZXQtcG9ydHJhaXQpIHtcblx0XHRcdFx0Zm9udC1zaXplOiByZW0oMjYpO1xuXHRcdFx0fVxuXHRcdH0gLy8gLmxpbmstYm94LWxpbmtcblxuXHRcdEBpbmNsdWRlIG1lZGlhKCR0YWJsZXQtcG9ydHJhaXQpIHtcblx0XHRcdGxpbmUtaGVpZ2h0OiAxLjM1O1xuXHRcdH1cblx0fSAvLyAubGluay1ib3gtaXRlbVxufSAvLyAubGluay1ib3gtdGhpcmRcblxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gQ3VzdG9tIFdEUyB3aWRnZXRzIHRoYXQgY29udGFpbiBhZCBjb2RlLlxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLmFkLXdpZGdldCB7XG5cdG1hcmdpbi10b3A6IHJlbSgyMCk7XG59IC8vIC5hZC13aWRnZXRcbiIsIi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIFN0eWxlcyBmb3IgdGhlIFwiQm90dG9tIEZlYXR1cmVkXCIgd2lkZ2V0cyBhbmQgd2lkZ2V0IGFyZWEuXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi5iZWxvdy1jb250ZW50IHtcblx0bWFyZ2luLWJvdHRvbTogcmVtKDU3KTtcblxuXHRAaW5jbHVkZSBtZWRpYSgkdGFibGV0LXBvcnRyYWl0KSB7XG5cdFx0bWFyZ2luLWJvdHRvbTogcmVtKDU3KTtcblx0fVxuXG5cdC5mZWF0dXJlZCB7XG5cdFx0QGV4dGVuZCAuY2xlYXI7XG5cdFx0QGluY2x1ZGUgYmFja2ZhY2UtcmVzZXQ7XG5cdH0gLy8gLmZlYXR1cmVkXG59IC8vLiBiZWxvdy1jb250ZW50XG5cblxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gVGhlIFwiTW9yZSBSZWFkaW5nXCIgY2xvbmUgc3BsaXQgaGVscGVyIHdpZGdldFxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLmNzaC13aWRnZXQge1xuXHQud2lkZ2V0LXRpdGxlIHtcblx0XHRmb250LXNpemU6IHJlbSgzNik7XG5cdFx0bWFyZ2luLWJvdHRvbTogcmVtKDMyKTtcblx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cblx0XHRAaW5jbHVkZSBtZWRpYSgkdGFibGV0LXBvcnRyYWl0KSB7XG5cdFx0XHRmb250LXNpemU6IHJlbSgyOCk7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiByZW0oMzUpO1xuXHRcdFx0dGV4dC1hbGlnbjogbGVmdDtcblx0XHR9XG5cdH0gLy8gLndpZGdldC10aXRsZVxufSAvLyAuY3NoLXdpZGdldFxuXG5cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIFN0eWxpbmcgZm9yIGFydGljbGVzIGxpc3RlZCBieSB0aGUgTW9yZSBSZWFkaW5nIGNsb25lIHNwbGl0IGhlbHBlciB3aWRnZXRcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi5iZWxvdy1jb250ZW50IC5jc2gtd2lkZ2V0LFxuLmJlbG93LXBvc3RzIC5jc2gtd2lkZ2V0IHtcblx0bWFyZ2luLWJvdHRvbTogcmVtKDY1KTtcblxuXHRAaW5jbHVkZSBtZWRpYSgkdGFibGV0LXBvcnRyYWl0KSB7XG5cdFx0bWFyZ2luLWJvdHRvbTogcmVtKDY4KTtcblx0fVxuXG5cdC5mZWF0dXJlZCB7XG5cdFx0aDQge1xuXHRcdFx0QGluY2x1ZGUgYmFja2ZhY2UtcmVzZXQ7XG5cblx0XHRcdGxldHRlci1zcGFjaW5nOiAwO1xuXHRcdFx0bGluZS1oZWlnaHQ6IDEuMjU7XG5cdFx0XHR0ZXh0LXRyYW5zZm9ybTogbm9uZTtcblx0XHR9IC8vIGg0XG5cdH0gLy8gLmZlYXR1cmVkXG5cblx0Lm1vcmUtcmVhZGluZy1hcnRpY2xlIHtcblx0XHRAaW5jbHVkZSBzaXplKDEwMCUgcmVtKDE4NSkpO1xuXG5cdFx0Ym9yZGVyLWJvdHRvbTogbm9uZTtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRmbG9hdDogbGVmdDtcblx0XHRtYXJnaW4tYm90dG9tOiByZW0oMjUpO1xuXG5cdFx0QGluY2x1ZGUgbWVkaWEoJHRhYmxldC1wb3J0cmFpdCkge1xuXHRcdFx0aGVpZ2h0OiByZW0oMzUyKTtcblx0XHRcdG1hcmdpbi1yaWdodDogcmVtKDIwKTtcblx0XHRcdHdpZHRoOiBjYWxjKDUwJSAtIDIwcHgpO1xuXHRcdH1cblxuXHRcdEBpbmNsdWRlIG1lZGlhKCR0YWJsZXQtbGFuZHNjYXBlKSB7XG5cdFx0XHRAaW5jbHVkZSBzaXplKGNhbGMoMjUlIC0gMTVweCkgcmVtKDE5OCkpO1xuXG5cdFx0XHRtYXJnaW4tYm90dG9tOiAwO1xuXHRcdFx0bWF4LXdpZHRoOiByZW0oMzAwKTtcblx0XHR9XG5cblx0XHQmOmxhc3QtY2hpbGQge1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogMDtcblx0XHRcdG1hcmdpbi1yaWdodDogMDtcblx0XHR9IC8vICY6bGFzdC1jaGlsZFxuXG5cdFx0Ly8gQXJ0aWNsZSB0aXRsZVxuXHRcdGg0IHtcblx0XHRcdEBpbmNsdWRlIHBvc2l0aW9uKGFic29sdXRlLCBudWxsIG51bGwgMCAwKTtcblxuXHRcdFx0Y29sb3I6ICRjb2xvci13aGl0ZTtcblx0XHRcdGZvbnQtc3R5bGU6IG5vcm1hbDtcblx0XHRcdG1hcmdpbjogMDtcblx0XHRcdHBhZGRpbmc6IHJlbSgxMCk7XG5cdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdHotaW5kZXg6IDE7XG5cblx0XHRcdEBpbmNsdWRlIG1lZGlhKCR0YWJsZXQtbGFuZHNjYXBlKSB7XG5cdFx0XHRcdGZvbnQtc2l6ZTogcmVtKDE5KTtcblx0XHRcdH1cblx0XHR9IC8vIGg0XG5cdH0gLy8gLm1vcmUtcmVhZGluZy1hcnRpY2xlXG5cbn0gLy8gLmJlbG93LWNvbnRlbnQgLmNzaC13aWRnZXQsIC5iZWxvdy1wb3N0cyAuY3NoLXdpZGdldFxuXG5cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIE90aGVyIFdpZGdldChzKVxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLmJlbG93LWNvbnRlbnQge1xuXHQmOmxhc3QtY2hpbGQge1xuXHRcdG1hcmdpbi1ib3R0b206IDA7XG5cdH0gLy8gJjpsYXN0LWNvbnRlbnRcbn0gLy8gLmJlbG93LWNvbnRlbnRcbiIsIi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIEFkIHdpZGdldCBzZWN0aW9ucywgbGlrZSB0aGUgb25lIGF0IHRoZSB0b3Agb2YgdGhlIHBhZ2UgYW5kIHRoZSBhZCB0aGF0IGFwcGVhcnMgaW4gdGhlIHJpdmVyIG9mIHBvc3RzLlxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBDZW50ZXIgYWQgd2lkZ2V0c1xuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLmFkLXdpZGdldCB7XG5cdG1hcmdpbi1sZWZ0OiBhdXRvO1xuXHRtYXJnaW4tcmlnaHQ6IGF1dG87XG5cblx0JjpmaXJzdC1jaGlsZCB7XG5cdFx0bWFyZ2luLXRvcDogMDtcblx0fVxuXG5cdCY6bGFzdC1jaGlsZCB7XG5cdFx0bWFyZ2luLWJvdHRvbTogMDtcblx0fSAvLyAmOmxhc3QtY2hpbGRcbn0gLy8gLmFkLXdpZGdldFxuXG5cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIEFkIHNlY3Rpb24gYXQgdGhlIHRvcCBvZiB0aGUgcGFnZVxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLnRvcC1hZC1zZWN0aW9uIHtcblx0bWFyZ2luLWJvdHRvbTogcmVtKDIxKTtcblx0bWFyZ2luLXRvcDogcmVtKDI1KTtcblxuXHRAaW5jbHVkZSBtZWRpYSgkdGFibGV0LWxhbmRzY2FwZSkge1xuXHRcdG1hcmdpbi1ib3R0b206IHJlbSgyMik7XG5cdFx0bWFyZ2luLXRvcDogcmVtKDMwKTtcblx0fVxuXG5cdC5hZC13aWRnZXQge1xuXHRcdG1heC13aWR0aDogcmVtKDk3MCk7XG5cdH0gLy8gLmFkLXdpZGdldFxufSAvLyAudG9wLWFkLXNlY3Rpb25cblxuXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBJbi1yaXZlciBhZHNcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi5pbi1yaXZlci1hZHMge1xuXHRtYXJnaW46IHJlbSgzNSkgMDtcblxuXHQuYWQtd2lkZ2V0IHtcblx0XHRtYXgtd2lkdGg6IHJlbSg3MjgpO1xuXHR9IC8vIC5hZC13aWRnZXRcbn0gLy8gLmluLXJpdmVyLWFkc1xuXG5cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIEFib3ZlIHBvc3RzIGFkc1xuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLmFib3ZlLXBvc3RzLWFkcyB7XG5cdG1hcmdpbi1ib3R0b206IHJlbSgyNyk7XG5cdG1hcmdpbi10b3A6IHJlbSg3KTtcblxuXHRAaW5jbHVkZSBtZWRpYSgkdGFibGV0LWxhbmRzY2FwZSkge1xuXHRcdG1hcmdpbi1ib3R0b206IHJlbSgyOCk7XG5cdH1cblxuXHQuYWQtd2lkZ2V0IHtcblx0XHRtYXgtd2lkdGg6IHJlbSg3MjgpO1xuXHR9IC8vIC5hZC13aWRnZXRcbn0gLy8gLmFib3ZlLXBvc3RzLWFkc1xuXG5cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIEJlbG93IGNvbnRlbnQgYWRzXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4uYmVsb3ctY29udGVudCB7XG5cdC5hZC13aWRnZXQge1xuXHRcdG1heC13aWR0aDogcmVtKDk3MCk7XG5cdH0gLy8gLmFkLXdpZGdldFxufSAvLyAuYmVsb3ctY29udGVudFxuIiwiLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gVGhlIEJlbG93IFBvc3RzIHdpZGdldCBzZWN0aW9uIHRoYXQgYXBwZWFycyBiZWxvdyBzaW5nbGUgcG9zdCBjb250ZW50XG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gR2VuZXJhbCB3aWRnZXQgc2VjdGlvbiBzdHlsZXNcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi5iZWxvdy1wb3N0cyB7XG5cdEBleHRlbmQgLmNsZWFyO1xuXG5cdEBpbmNsdWRlIG1lZGlhKCR0YWJsZXQtbGFuZHNjYXBlKSB7XG5cdFx0cGFkZGluZy1ib3R0b206IHJlbSgxNik7XG5cdH1cblxuXHQvLyBSZXNldCB0b3AgbWFyZ2luIG9uIGZpcnN0IHdpZGdldCdzIGhlYWRpbmdcblx0LndpZGdldDpmaXJzdC1vZi10eXBlIC53aWRnZXQtdGl0bGUge1xuXHRcdG1hcmdpbi10b3A6IDA7XG5cdH0gLy8gLndpZGdldDpmaXJzdC1vZi10eXBlIC53aWRnZXQtdGl0bGVcbn0gLy8gLmJlbG93LXBvc3RzXG5cblxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gTW9yZSBSZWFkaW5nIHdpZGdldFxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLmJlbG93LXBvc3RzIC5jc2gtd2lkZ2V0IHtcblxuXHRAaW5jbHVkZSBtZWRpYSgkdGFibGV0LWxhbmRzY2FwZSkge1xuXHRcdG1hcmdpbi1ib3R0b206IHJlbSg0OSk7XG5cdH1cblxuXHQuZmVhdHVyZWQge1xuXG5cdFx0QGluY2x1ZGUgbWVkaWEoJHRhYmxldC1sYXJnZSkge1xuXHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdGZsZXgtZmxvdzogcm93IHdyYXA7XG5cdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG5cdFx0XHR3aWR0aDogMTAwJTtcblx0XHR9XG5cdH0gLy8gLmZlYXR1cmVkXG5cblx0Lm1vcmUtcmVhZGluZy1hcnRpY2xlLmZlYXR1cmVkLXBvc3Qge1xuXHRcdGZsb2F0OiBub25lO1xuXHRcdG1hcmdpbi1ib3R0b206IHJlbSgxNik7XG5cdFx0bWFyZ2luLXJpZ2h0OiAwO1xuXHRcdG1heC13aWR0aDogbm9uZTtcblx0XHR3aWR0aDogMTAwJTtcblxuXHRcdEBpbmNsdWRlIG1lZGlhKCR0YWJsZXQtbGFyZ2UpIHtcblx0XHRcdEBpbmNsdWRlIHNpemUoNDcuNSUgcmVtKDIwNykpO1xuXG5cdFx0XHRtYXJnaW4tYm90dG9tOiByZW0oMTgpO1xuXHRcdFx0bWF4LXdpZHRoOiByZW0oMzgwKTtcblx0XHR9XG5cblxuXHRcdEBpbmNsdWRlIG1lZGlhKCRicmVha3BvaW50LTEzMzApIHtcblx0XHRcdHdpZHRoOiA1MCU7XG5cdFx0fVxuXHR9IC8vIC5tb3JlLXJlYWRpbmctYXJ0aWNsZSAuZmVhdHVyZWQtcG9zdFxufSAvLyAuYmVsb3ctcG9zdHMgLmNzaC13aWRnZXRcblxuXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBMaW5rYm94IHdpZGdldHNcbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi5iZWxvdy1wb3N0cyAud2lkZ2V0X2Jsb2d1aW5fbGlua19ib3hfd2lkZ2V0IHtcblx0ZGlzcGxheTogbm9uZTtcblxuXHRAaW5jbHVkZSBtZWRpYSgkdGFibGV0LWxhbmRzY2FwZSkge1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdGZsb2F0OiBsZWZ0O1xuXHRcdG1heC13aWR0aDogcmVtKDM4MCk7XG5cdFx0d2lkdGg6IDQ3LjUlO1xuXHR9XG5cblx0QGluY2x1ZGUgbWVkaWEoJGJyZWFrcG9pbnQtMTMzMCkge1xuXHRcdHdpZHRoOiA1MCU7XG5cdH1cblxuXHQud2lkZ2V0LXRpdGxlIHtcblx0XHRAZXh0ZW5kIC5oNjtcblxuXHRcdGJhY2tncm91bmQ6ICRjb2xvci1tYWtvO1xuXHRcdGNvbG9yOiAkY29sb3Itd2hpdGU7XG5cdFx0bGV0dGVyLXNwYWNpbmc6IHJlbSgxLjUpO1xuXHRcdG1hcmdpbi1ib3R0b206IDA7XG5cdFx0bWFyZ2luLXRvcDogMDtcblx0XHRwYWRkaW5nOiByZW0oOCkgMDtcblx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdFx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblx0fSAvLyAud2lkZ2V0LXRpdGxlXG5cblx0Ly8gU2Vjb25kIGxpbmtib3ggd2lkZ2V0LCBzbGlnaHRseSB0cmlja3kgdG8gdGFyZ2V0Li4uXG5cdCY6bGFzdC1vZi10eXBlIHtcblxuXHRcdEBpbmNsdWRlIG1lZGlhKCR0YWJsZXQtbGFuZHNjYXBlKSB7XG5cdFx0XHRmbG9hdDogcmlnaHQ7XG5cdFx0fVxuXHR9IC8vICY6bGFzdC1vZi10eXBlXG5cblx0Ly8gVGhlIGdsb2JhbCBzdHlsZXMgZm9yIHRoZXNlIGhhdmUgYSBzZXQgd2lkdGgsIHdoaWNoIHdlIGRvbid0IG5lZWQgZm9yIHRoaXMgc2VjdGlvbi5cblx0LmxpbmstYm94LWNvbnRlbnQsXG5cdC5saW5rLWJveC10aHVtYiB7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdH0gLy8gLmxpbmstYm94LXRodW1iLCAubGluay1ib3gtY29udGVudFxuXG5cdC5saW5rLWJveC10aHVtYiB7XG5cdFx0aGVpZ2h0OiByZW0oMjc3KTtcblx0XHRtYXJnaW4tYm90dG9tOiByZW0oMTIpO1xuXG5cdFx0QGluY2x1ZGUgbWVkaWEoJHRhYmxldC1sYW5kc2NhcGUpIHtcblx0XHRcdG1hcmdpbi1ib3R0b206IHJlbSgzOSk7XG5cdFx0fVxuXHR9IC8vIC5saW5rLWJveC10aHVtYlxuXG5cdC5saW5rLWJveC1pdGVtOmxhc3QtY2hpbGQge1xuXHRcdGJvcmRlci1ib3R0b206IG5vbmU7XG5cdH0gLy8gLmxpbmstYm94LWl0ZW06bGFzdC1jaGlsZFxufSAvLyAuYmVsb3ctcG9zdHMgLndpZGdldF9ibG9ndWluX2xpbmtfYm94X3dpZGdldFxuIiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xuXG4vLy8gT3V0cHV0cyBhIG1lZGlhLXF1ZXJ5IGJsb2NrIHdpdGggYW4gb3B0aW9uYWwgZ3JpZCBjb250ZXh0ICh0aGUgdG90YWwgbnVtYmVyIG9mIGNvbHVtbnMgdXNlZCBpbiB0aGUgZ3JpZCkuXG4vLy9cbi8vLyBAcGFyYW0ge0xpc3R9ICRxdWVyeVxuLy8vICAgQSBsaXN0IG9mIG1lZGlhIHF1ZXJ5IGZlYXR1cmVzIGFuZCB2YWx1ZXMsIHdoZXJlIGVhY2ggYCRmZWF0dXJlYCBzaG91bGQgaGF2ZSBhIGNvcnJlc3BvbmRpbmcgYCR2YWx1ZWAuXG4vLy8gICBGb3IgYSBsaXN0IG9mIHZhbGlkIHZhbHVlcyBmb3IgYCRmZWF0dXJlYCwgY2xpY2sgW2hlcmVdKGh0dHA6Ly93d3cudzMub3JnL1RSL2NzczMtbWVkaWFxdWVyaWVzLyNtZWRpYTEpLlxuLy8vXG4vLy8gICBJZiB0aGVyZSBpcyBvbmx5IGEgc2luZ2xlIGAkdmFsdWVgIGluIGAkcXVlcnlgLCBgJGRlZmF1bHQtZmVhdHVyZWAgaXMgZ29pbmcgdG8gYmUgdXNlZC5cbi8vL1xuLy8vICAgVGhlIG51bWJlciBvZiB0b3RhbCBjb2x1bW5zIGluIHRoZSBncmlkIGNhbiBiZSBzZXQgYnkgcGFzc2luZyBgJGNvbHVtbnNgIGF0IHRoZSBlbmQgb2YgdGhlIGxpc3QgKG92ZXJyaWRlcyBgJHRvdGFsLWNvbHVtbnNgKS5cbi8vL1xuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXIgKHVuaXRsZXNzKX0gJHRvdGFsLWNvbHVtbnMgWyRncmlkLWNvbHVtbnNdXG4vLy8gICAtIE51bWJlciBvZiBjb2x1bW5zIHRvIHVzZSBpbiB0aGUgbmV3IGdyaWQgY29udGV4dC4gQ2FuIGJlIHNldCBhcyBhIHNob3J0aGFuZCBpbiB0aGUgZmlyc3QgcGFyYW1ldGVyLlxuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFVzYWdlXG4vLy8gICAucmVzcG9uc2l2ZS1lbGVtZW50IHtcbi8vLyAgICAgIEBpbmNsdWRlIG1lZGlhKDc2OXB4KSB7XG4vLy8gICAgICAgIEBpbmNsdWRlIHNwYW4tY29sdW1ucyg2KTtcbi8vLyAgICAgIH1cbi8vLyAgIH1cbi8vL1xuLy8vICAubmV3LWNvbnRleHQtZWxlbWVudCB7XG4vLy8gICAgQGluY2x1ZGUgbWVkaWEobWluLXdpZHRoIDMyMHB4IG1heC13aWR0aCA0ODBweCwgNikge1xuLy8vICAgICAgQGluY2x1ZGUgc3Bhbi1jb2x1bW5zKDYpO1xuLy8vICAgIH1cbi8vLyAgfVxuLy8vXG4vLy8gQGV4YW1wbGUgY3NzIC0gQ1NTIE91dHB1dFxuLy8vICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjlweCkge1xuLy8vICAgIC5yZXNwb25zaXZlLWVsZW1lbnQge1xuLy8vICAgICAgZGlzcGxheTogYmxvY2s7XG4vLy8gICAgICBmbG9hdDogbGVmdDtcbi8vLyAgICAgIG1hcmdpbi1yaWdodDogMi4zNTc2NSU7XG4vLy8gICAgICB3aWR0aDogNDguODIxMTclO1xuLy8vICAgIH1cbi8vL1xuLy8vICAgIC5yZXNwb25zaXZlLWVsZW1lbnQ6bGFzdC1jaGlsZCB7XG4vLy8gICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4vLy8gICAgfVxuLy8vICB9XG4vLy9cbi8vLyAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzIwcHgpIGFuZCAobWF4LXdpZHRoOiA0ODBweCkge1xuLy8vICAgIC5uZXctY29udGV4dC1lbGVtZW50IHtcbi8vLyAgICAgIGRpc3BsYXk6IGJsb2NrO1xuLy8vICAgICAgZmxvYXQ6IGxlZnQ7XG4vLy8gICAgICBtYXJnaW4tcmlnaHQ6IDQuODI5MTYlO1xuLy8vICAgICAgd2lkdGg6IDEwMCU7XG4vLy8gICAgfVxuLy8vXG4vLy8gICAgLm5ldy1jb250ZXh0LWVsZW1lbnQ6bGFzdC1jaGlsZCB7XG4vLy8gICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4vLy8gICAgfVxuLy8vICB9XG5cbkBtaXhpbiBtZWRpYSgkcXVlcnk6ICRmZWF0dXJlICR2YWx1ZSAkY29sdW1ucywgJHRvdGFsLWNvbHVtbnM6ICRncmlkLWNvbHVtbnMpIHtcbiAgQGlmIGxlbmd0aCgkcXVlcnkpID09IDEge1xuICAgIEBtZWRpYSBzY3JlZW4gYW5kICgkZGVmYXVsdC1mZWF0dXJlOiBudGgoJHF1ZXJ5LCAxKSkge1xuICAgICAgJGRlZmF1bHQtZ3JpZC1jb2x1bW5zOiAkZ3JpZC1jb2x1bW5zO1xuICAgICAgJGdyaWQtY29sdW1uczogJHRvdGFsLWNvbHVtbnMgIWdsb2JhbDtcbiAgICAgIEBjb250ZW50O1xuICAgICAgJGdyaWQtY29sdW1uczogJGRlZmF1bHQtZ3JpZC1jb2x1bW5zICFnbG9iYWw7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICAkbG9vcC10bzogbGVuZ3RoKCRxdWVyeSk7XG4gICAgJG1lZGlhLXF1ZXJ5OiBcInNjcmVlbiBhbmQgXCI7XG4gICAgJGRlZmF1bHQtZ3JpZC1jb2x1bW5zOiAkZ3JpZC1jb2x1bW5zO1xuICAgICRncmlkLWNvbHVtbnM6ICR0b3RhbC1jb2x1bW5zICFnbG9iYWw7XG5cbiAgICBAaWYgaXMtbm90KGlzLWV2ZW4obGVuZ3RoKCRxdWVyeSkpKSB7XG4gICAgICAkZ3JpZC1jb2x1bW5zOiBudGgoJHF1ZXJ5LCAkbG9vcC10bykgIWdsb2JhbDtcbiAgICAgICRsb29wLXRvOiAkbG9vcC10byAtIDE7XG4gICAgfVxuXG4gICAgJGk6IDE7XG4gICAgQHdoaWxlICRpIDw9ICRsb29wLXRvIHtcbiAgICAgICRtZWRpYS1xdWVyeTogJG1lZGlhLXF1ZXJ5ICsgXCIoXCIgKyBudGgoJHF1ZXJ5LCAkaSkgKyBcIjogXCIgKyBudGgoJHF1ZXJ5LCAkaSArIDEpICsgXCIpIFwiO1xuXG4gICAgICBAaWYgKCRpICsgMSkgIT0gJGxvb3AtdG8ge1xuICAgICAgICAkbWVkaWEtcXVlcnk6ICRtZWRpYS1xdWVyeSArIFwiYW5kIFwiO1xuICAgICAgfVxuXG4gICAgICAkaTogJGkgKyAyO1xuICAgIH1cblxuICAgIEBtZWRpYSAjeyRtZWRpYS1xdWVyeX0ge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgICAkZ3JpZC1jb2x1bW5zOiAkZGVmYXVsdC1ncmlkLWNvbHVtbnMgIWdsb2JhbDtcbiAgICB9XG4gIH1cbn1cbiIsIi8qXG5UaGVtZSBOYW1lOiBDb21lYmFjayBNZWRpYVxuVGhlbWUgVVJJOiBodHRwOi8vdGhlY29tZWJhY2suY29tXG5BdXRob3I6IFdlYkRldlN0dWRpb3NcbkF1dGhvciBVUkk6IGh0dHBzOi8vd2ViZGV2c3R1ZGlvcy5jb21cbkRlc2NyaXB0aW9uOiBBIHNwaWZmeSBuZXcgdGhlbWUgZm9yIENvbWViYWNrIE1lZGlhIGJ5IFdlYkRldlN0dWRpb3MgYmFzZWQgb24gd2Rfcy5cblZlcnNpb246IDEuMC4wXG5MaWNlbnNlOiBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSB2MiBvciBsYXRlclxuTGljZW5zZSBVUkk6IGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9ncGwtMi4wLmh0bWxcblRleHQgRG9tYWluOiBjb21lYmFja1xuVGFnczogY3VzdG9tXG5cblRoaXMgdGhlbWUsIGxpa2UgV29yZFByZXNzLCBpcyBsaWNlbnNlZCB1bmRlciB0aGUgR1BMLlxuXG5CYXNlZCBvbiBVbmRlcnNjb3JlcyBodHRwOi8vdW5kZXJzY29yZXMubWUvLCAoQykgMjAxMi0yMDE2IEF1dG9tYXR0aWMsIEluYy5cblxuKi9cbkBpbXBvcnQgdXJsKGFzc2V0cy9ib3dlcl9jb21wb25lbnRzL25vcm1hbGl6ZS1jc3Mvbm9ybWFsaXplLmNzcyk7XG5AaW1wb3J0IHVybChhc3NldHMvYm93ZXJfY29tcG9uZW50cy9hbmltYXRlLmNzcy9hbmltYXRlLmNzcyk7XG5odG1sIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cblxuKiwgKjo6YWZ0ZXIsICo6OmJlZm9yZSB7XG4gIGJveC1zaXppbmc6IGluaGVyaXQ7XG59XG5cbmJvZHksXG5idXR0b24sXG5pbnB1dCxcbnNlbGVjdCxcbnRleHRhcmVhIHtcbiAgY29sb3I6ICMyYzJkMzE7XG4gIGZvbnQtZmFtaWx5OiBcImZmLXRpc2Etd2ViLXByb1wiLCBzZXJpZjtcbiAgZm9udC1zaXplOiAxLjI1cmVtO1xuICBmb250LXdlaWdodDogNDAwO1xuICBsaW5lLWhlaWdodDogMS42MjU7XG59XG5cbmgxLFxuLmgxIHtcbiAgZm9udC1mYW1pbHk6IFwiZnJlaWdodC1zYW5zLXByb1wiLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDIuNjI1cmVtO1xuICBmb250LXdlaWdodDogNzAwO1xufVxuXG5oMixcbi5oMixcbi5lbnRyeS10aXRsZSB7XG4gIGZvbnQtZmFtaWx5OiBcImZyZWlnaHQtc2Fucy1wcm9cIiwgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAxLjc1cmVtO1xuICBmb250LXdlaWdodDogNzAwO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OHJlbSkge1xuICBoMixcbiAgLmgyLFxuICAuZW50cnktdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgfVxufVxuXG5oMyxcbi5oMyxcbi5ob3Jpem9udGFsLWJsb2ctY2FyZCAuY2FyZC10aXRsZSAuZW50cnktdGl0bGUge1xuICBmb250LWZhbWlseTogXCJmcmVpZ2h0LXNhbnMtcHJvXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMS4zNzVyZW07XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4cmVtKSB7XG4gIGgzLFxuICAuaDMsXG4gIC5ob3Jpem9udGFsLWJsb2ctY2FyZCAuY2FyZC10aXRsZSAuZW50cnktdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogMS43NXJlbTtcbiAgfVxufVxuXG5oNCxcbi5oNCxcbi5jYXQtbGlua3MgYSxcbi5ob3Jpem9udGFsLWJsb2ctY2FyZCBmb290ZXIgLmJ5bGluZSB7XG4gIGZvbnQtZmFtaWx5OiBcImZyZWlnaHQtc2Fucy1wcm9cIiwgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAxLjI1cmVtO1xuICBmb250LXdlaWdodDogNzAwO1xuICBsZXR0ZXItc3BhY2luZzogMC4xMjVyZW07XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4cmVtKSB7XG4gIGg0LFxuICAuaDQsXG4gIC5jYXQtbGlua3MgYSxcbiAgLmhvcml6b250YWwtYmxvZy1jYXJkIGZvb3RlciAuYnlsaW5lIHtcbiAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgfVxufVxuXG5oNSxcbi5oNSxcbi5zZWNvbmRhcnkgLndpZGdldCAud2lkZ2V0LXRpdGxlIHtcbiAgZm9udC1mYW1pbHk6IFwiZnJlaWdodC1zYW5zLXByb1wiLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDEuMjVyZW07XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4cmVtKSB7XG4gIGg1LFxuICAuaDUsXG4gIC5zZWNvbmRhcnkgLndpZGdldCAud2lkZ2V0LXRpdGxlIHtcbiAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgfVxufVxuXG5oNixcbi5oNixcbi5iZWxvdy1wb3N0cyAud2lkZ2V0X2Jsb2d1aW5fbGlua19ib3hfd2lkZ2V0IC53aWRnZXQtdGl0bGUge1xuICBmb250LWZhbWlseTogXCJmcmVpZ2h0LXNhbnMtcHJvXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4cmVtKSB7XG4gIGg2LFxuICAuaDYsXG4gIC5iZWxvdy1wb3N0cyAud2lkZ2V0X2Jsb2d1aW5fbGlua19ib3hfd2lkZ2V0IC53aWRnZXQtdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgfVxufVxuXG5wIHtcbiAgZm9udC1mYW1pbHk6IFwiZmYtdGlzYS13ZWItcHJvXCIsIHNlcmlmO1xuICBmb250LXNpemU6IDEuMTI1cmVtO1xuICBmb250LXdlaWdodDogNDAwO1xuICBsaW5lLWhlaWdodDogMS42O1xuICBtYXJnaW46IDAgMCAxLjVyZW0gMDtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRyZW0pIHtcbiAgcCB7XG4gICAgZm9udC1zaXplOiAxLjI1cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjU1O1xuICAgIG1hcmdpbi1ib3R0b206IDEuNjI1cmVtO1xuICB9XG59XG5cbmIsXG5zdHJvbmcge1xuICBmb250LXdlaWdodDogNzAwO1xufVxuXG5kZm4sXG5jaXRlLFxuZW0sXG5pIHtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xufVxuXG5ibG9ja3F1b3RlLFxucSB7XG4gIGNvbG9yOiAjNTk1YjYxO1xuICBmb250LXNpemU6IDEuMTI1cmVtO1xuICBtYXJnaW46IDAgMCAwIDEuMjVyZW07XG4gIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbmJsb2NrcXVvdGU6OmJlZm9yZSwgYmxvY2txdW90ZTo6YWZ0ZXIsXG5xOjpiZWZvcmUsXG5xOjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG59XG5cbmJsb2NrcXVvdGU6OmJlZm9yZSxcbnE6OmJlZm9yZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwLjM3NXJlbTtcbiAgbGVmdDogMDtcbiAgaGVpZ2h0OiA5MCU7XG4gIHdpZHRoOiAwLjEyNXJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y0YjIyNTtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbmFkZHJlc3Mge1xuICBtYXJnaW46IDAgMCAxLjVyZW0gMDtcbn1cblxucHJlIHtcbiAgZm9udC1mYW1pbHk6IFwiQ291cmllciAxMCBQaXRjaFwiLCBDb3VyaWVyLCBtb25vc3BhY2U7XG4gIGZvbnQtc2l6ZTogMC45Mzc1cmVtO1xuICBsaW5lLWhlaWdodDogMS42MjU7XG4gIG1hcmdpbjogMCAwIDEuNXJlbTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBvdmVyZmxvdzogYXV0bztcbiAgcGFkZGluZzogMS41cmVtO1xufVxuXG5jb2RlLFxua2JkLFxudHQsXG52YXIge1xuICBmb250LWZhbWlseTogTW9uYWNvLCBDb25zb2xhcywgXCJBbmRhbGUgTW9ub1wiLCBcIkRlamFWdSBTYW5zIE1vbm9cIiwgbW9ub3NwYWNlO1xuICBmb250LXNpemU6IDAuOTM3NXJlbTtcbn1cblxuYWJicixcbmFjcm9ueW0ge1xuICBib3JkZXItYm90dG9tOiBub25lO1xuICBjdXJzb3I6IGhlbHA7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuYWJiclt0aXRsZV0ge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbm1hcmssXG5pbnMge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbnN1cCxcbnN1YiB7XG4gIGZvbnQtc2l6ZTogNzUlO1xuICBoZWlnaHQ6IDA7XG4gIGxpbmUtaGVpZ2h0OiAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cblxuc3VwIHtcbiAgYm90dG9tOiAxZXg7XG59XG5cbnN1YiB7XG4gIHRvcDogMC41ZXg7XG59XG5cbnNtYWxsIHtcbiAgZm9udC1zaXplOiA3NSU7XG59XG5cbmJpZyB7XG4gIGZvbnQtc2l6ZTogMTI1JTtcbn1cblxuLmVudHJ5LXRpdGxlLFxuLmVudHJ5LWNvbnRlbnQsXG4uY29tbWVudHMtdGl0bGUsXG4uY29tbWVudC1jb250ZW50LFxuLndpZGdldC10aXRsZSxcbi53aWRnZXQge1xuICB3b3JkLWJyZWFrOiBrZWVwLWFsbDtcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xufVxuXG5hOm5vdCguYnV0dG9uKSB7XG4gIGJvcmRlci1ib3R0b206IDAuMTI1cmVtIHNvbGlkICNmNGIyMjU7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0cmFuc2l0aW9uOiBjb2xvciAwLjE4cyBlYXNlLW91dDtcbn1cblxuYTpub3QoLmJ1dHRvbikuZmVhdHVyZWQtcG9zdCB7XG4gIGJvcmRlcjogbm9uZTtcbn1cblxuLmVudHJ5LXRpdGxlIHtcbiAgbGluZS1oZWlnaHQ6IDEuMTM2MzYzNjtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzEuMjVyZW0pIHtcbiAgLmVudHJ5LXRpdGxlIHtcbiAgICBtYXJnaW46IDIuMjVyZW0gMCAxLjkzNzVyZW07XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRyZW0pIHtcbiAgLmVudHJ5LXRpdGxlIHtcbiAgICBmb250LXNpemU6IDIuMzc1cmVtO1xuICAgIG1hcmdpbjogMi42MjVyZW0gMCAxLjU2MjVyZW07XG4gIH1cbn1cblxuLmVudHJ5LXRpdGxlIGEge1xuICBib3JkZXI6IG5vbmU7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cblxuLmVudHJ5LW1ldGEge1xuICBmb250LXNpemU6IDEuMTI1cmVtO1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG59XG5cbi5lbnRyeS1tZXRhIGEge1xuICBib3JkZXI6IG5vbmU7XG4gIGNvbG9yOiAjNTk1YjYxO1xufVxuXG4uc2NyZWVuLXJlYWRlci10ZXh0IHtcbiAgaGVpZ2h0OiAwLjA2MjVyZW07XG4gIHdpZHRoOiAwLjA2MjVyZW07XG4gIGNsaXA6IHJlY3QoMC4wNjI1cmVtLCAwLjA2MjVyZW0sIDAuMDYyNXJlbSwgMC4wNjI1cmVtKTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuXG4uc2NyZWVuLXJlYWRlci10ZXh0OmZvY3VzIHtcbiAgaGVpZ2h0OiBhdXRvO1xuICB3aWR0aDogYXV0bztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0b3A6IDAuMzEyNXJlbTtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMC4zMTI1cmVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjFmMWYxO1xuICBib3JkZXItcmFkaXVzOiAzcHg7XG4gIGJveC1zaGFkb3c6IDAgMCAwLjEyNXJlbSAwLjEyNXJlbSByZ2JhKDAsIDAsIDAsIDAuNik7XG4gIGNsaXA6IGF1dG87XG4gIGNvbG9yOiAjMWUxZTIyO1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbiAgcGFkZGluZzogMC45Mzc1cmVtIDEuNDM3NXJlbSAwLjg3NXJlbTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB6LWluZGV4OiAxMDAwMDA7XG59XG5cbi5hbGlnbmxlZnQge1xuICBkaXNwbGF5OiBpbmxpbmU7XG4gIGZsb2F0OiBsZWZ0O1xuICBtYXJnaW46IDAgMS41cmVtIDAgMDtcbn1cblxuLmFsaWducmlnaHQge1xuICBkaXNwbGF5OiBpbmxpbmU7XG4gIGZsb2F0OiByaWdodDtcbiAgbWFyZ2luOiAwIDAgMCAxLjVyZW07XG59XG5cbi5hbGlnbmNlbnRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xufVxuXG4uY2xlYXI6OmFmdGVyLCAuYmVsb3ctY29udGVudCAuZmVhdHVyZWQ6OmFmdGVyLCAuYmVsb3ctcG9zdHM6OmFmdGVyLFxuLmVudHJ5LWNvbnRlbnQ6OmFmdGVyLFxuLmNvbW1lbnQtY29udGVudDo6YWZ0ZXIsXG4uc2l0ZS1oZWFkZXI6OmFmdGVyLFxuLnNpdGUtY29udGVudDo6YWZ0ZXIsXG4uc2l0ZS1mb290ZXI6OmFmdGVyIHtcbiAgY2xlYXI6IGJvdGg7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG5lbWJlZCxcbmlmcmFtZSxcbm9iamVjdCB7XG4gIG1heC13aWR0aDogMTAwJTtcbn1cblxuaHIge1xuICBoZWlnaHQ6IDFweDtcbiAgd2lkdGg6IGF1dG87XG4gIGJhY2tncm91bmQtY29sb3I6ICNjY2M7XG4gIGJvcmRlcjogMDtcbiAgbWFyZ2luOiAwIDAgMS41cmVtIDA7XG59XG5cbmZpZ3VyZSB7XG4gIG1hcmdpbjogMDtcbn1cblxudWwsXG5vbCB7XG4gIG1hcmdpbjogMCAwIDNyZW0gMS41cmVtO1xufVxuXG51bCB7XG4gIGxpc3Qtc3R5bGU6IGRpc2M7XG59XG5cbm9sIHtcbiAgbGlzdC1zdHlsZTogZGVjaW1hbDtcbn1cblxubGkgPiB1bCxcbmxpID4gb2wge1xuICBtYXJnaW46IDAgMCAwIDEuNXJlbTtcbn1cblxuZHQge1xuICBmb250LXdlaWdodDogNzAwO1xufVxuXG5kZCB7XG4gIG1hcmdpbjogMCAxLjVyZW0gMS41cmVtIDA7XG59XG5cbnRhYmxlIHtcbiAgaGVpZ2h0OiBhdXRvO1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luOiAwIDAgMS41cmVtIDA7XG59XG5cbnRoIHtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbn1cblxuLnBhZ2UtY29udGVudCBpbWcud3Atc21pbGV5LFxuLmVudHJ5LWNvbnRlbnQgaW1nLndwLXNtaWxleSxcbi5jb21tZW50LWNvbnRlbnQgaW1nLndwLXNtaWxleSB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgYm9yZGVyOiBub25lO1xufVxuXG5pbWcge1xuICBoZWlnaHQ6IGF1dG87XG4gIG1heC13aWR0aDogMTAwJTtcbn1cblxuLmdhbGxlcnkgYSB7XG4gIGJvcmRlcjogbm9uZTtcbn1cblxuLndwLWNhcHRpb24ge1xuICBtYXJnaW46IDAgMCAxLjVyZW0gMDtcbiAgbWF4LXdpZHRoOiAxMDAlO1xufVxuXG4ud3AtY2FwdGlvbiBpbWdbY2xhc3MqPVwid3AtaW1hZ2UtXCJdIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMCBhdXRvO1xufVxuXG4ud3AtY2FwdGlvbi5hbGlnbmNlbnRlciB7XG4gIG1hcmdpbjogMCBhdXRvIDEuNXJlbSBhdXRvO1xufVxuXG4ud3AtY2FwdGlvbi5hbGlnbmxlZnQge1xuICBtYXJnaW4tcmlnaHQ6IDEuNXJlbTtcbn1cblxuLndwLWNhcHRpb24uYWxpZ25yaWdodCB7XG4gIG1hcmdpbi1sZWZ0OiAxLjVyZW07XG59XG5cbi53cC1jYXB0aW9uIC53cC1jYXB0aW9uLXRleHQge1xuICBtYXJnaW46IDA7XG59XG5cbi53cC1jYXB0aW9uLXRleHQge1xuICBmb250LXNpemU6IDkwJTtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5nYWxsZXJ5IHtcbiAgbWFyZ2luOiAwIDAgMS41cmVtIDA7XG59XG5cbi5nYWxsZXJ5LWl0ZW0ge1xuICBoZWlnaHQ6IGF1dG87XG4gIHdpZHRoOiAxMDAlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbn1cblxuLmdhbGxlcnktY29sdW1ucy0yIC5nYWxsZXJ5LWl0ZW0ge1xuICBtYXgtd2lkdGg6IDUwJTtcbn1cblxuLmdhbGxlcnktY29sdW1ucy0zIC5nYWxsZXJ5LWl0ZW0ge1xuICBtYXgtd2lkdGg6IDMzLjMzJTtcbn1cblxuLmdhbGxlcnktY29sdW1ucy00IC5nYWxsZXJ5LWl0ZW0ge1xuICBtYXgtd2lkdGg6IDI1JTtcbn1cblxuLmdhbGxlcnktY29sdW1ucy01IC5nYWxsZXJ5LWl0ZW0ge1xuICBtYXgtd2lkdGg6IDIwJTtcbn1cblxuLmdhbGxlcnktY29sdW1ucy02IC5nYWxsZXJ5LWl0ZW0ge1xuICBtYXgtd2lkdGg6IDE2LjY2JTtcbn1cblxuLmdhbGxlcnktY29sdW1ucy03IC5nYWxsZXJ5LWl0ZW0ge1xuICBtYXgtd2lkdGg6IDE0LjI4JTtcbn1cblxuLmdhbGxlcnktY29sdW1ucy04IC5nYWxsZXJ5LWl0ZW0ge1xuICBtYXgtd2lkdGg6IDEyLjUlO1xufVxuXG4uZ2FsbGVyeS1jb2x1bW5zLTkgLmdhbGxlcnktaXRlbSB7XG4gIG1heC13aWR0aDogMTEuMTElO1xufVxuXG4uZ2FsbGVyeS1jYXB0aW9uIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5mbHVpZC1lbWJlZCB7XG4gIGhlaWdodDogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcGFkZGluZy1ib3R0b206IDU2LjI1JTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uZmx1aWQtZW1iZWQgZW1iZWQsXG4uZmx1aWQtZW1iZWQgb2JqZWN0LFxuLmZsdWlkLWVtYmVkIGlmcmFtZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uaW1hZ2UtYXMtYmFja2dyb3VuZCB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG59XG5cbi52aWRlby1hcy1iYWNrZ3JvdW5kIHtcbiAgaGVpZ2h0OiAxMDAlO1xuICB3aWR0aDogMTAwJTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG9iamVjdC1maXQ6IGNvdmVyO1xuICBvYmplY3QtcG9zaXRpb246IGNlbnRlciB0b3A7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTtcbn1cblxuLnN2Zy1kZWZzIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLm5vdC1yZWFkeSB7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC41cyBlYXNlO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbi5yZWFkeSAubm90LXJlYWR5IHtcbiAgb3BhY2l0eTogMTtcbiAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbn1cblxuLnBhdHRlcm4tc2VjdGlvbiB7XG4gIGJvcmRlci1ib3R0b206IDAuMDYyNXJlbSBzb2xpZCAjMDAwO1xuICBtYXJnaW4tYm90dG9tOiAxLjI1ZW07XG59XG5cbi5wYXR0ZXJuLXNlY3Rpb24taGVhZGVyIGgyIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xufVxuXG4ucGF0dGVybi1zZWN0aW9uLWhlYWRlciBwIHtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICBtYXJnaW4tdG9wOiAwLjc1cmVtO1xufVxuXG4ucGF0dGVybi1zZWN0aW9uLWNvbnRlbnQge1xuICBib3JkZXItYm90dG9tOiAwLjA2MjVyZW0gc29saWQgIzgwODA4MDtcbiAgcGFkZGluZy1ib3R0b206IDAuNjI1ZW07XG59XG5cbi5wYXR0ZXJuLXNlY3Rpb24tY29udGVudCBoNCxcbi5wYXR0ZXJuLXNlY3Rpb24tY29udGVudCBwIHtcbiAgbWFyZ2luOiAwLjYyNWVtIDA7XG59XG5cbi5wYXR0ZXJuLXNlY3Rpb24tY29udGVudCBwcmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBib3JkZXI6IDAuMDYyNXJlbSBzb2xpZCAjZGRkO1xuICBjb2xvcjogIzgwODA4MDtcbiAgbWFyZ2luOiAwIDAgMC42MjVlbTtcbiAgcGFkZGluZzogMC42MjVlbTtcbn1cblxuLnBhdHRlcm4tc2VjdGlvbi1jb250ZW50IGNvZGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGRkO1xuICBmb250LXNpemU6IDAuODEyNXJlbTtcbiAgcGFkZGluZzogMC4zMTI1cmVtO1xufVxuXG4uc3dhdGNoLWNvbnRhaW5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLnN3YXRjaC1jb250YWluZXI6OmFmdGVyIHtcbiAgY2xlYXI6IGJvdGg7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4uc3dhdGNoLWNvbnRhaW5lciAuc3dhdGNoIHtcbiAgaGVpZ2h0OiA3LjgxMjVyZW07XG4gIHdpZHRoOiAxMDAlO1xuICBmbG9hdDogbGVmdDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1yaWdodDogMS4yMDQ4MiU7XG4gIHdpZHRoOiAyNC4wOTYzOSU7XG4gIGJvcmRlcjogMC4wNjI1cmVtIHNvbGlkICMwMDA7XG4gIGJvcmRlci1yYWRpdXM6IDAuMzEyNXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMC42MjVlbTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5zd2F0Y2gtY29udGFpbmVyIC5zd2F0Y2g6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1yaWdodDogMDtcbn1cblxuLnN3YXRjaC1jb250YWluZXIgLnN3YXRjaCBoZWFkZXIge1xuICBjb2xvcjogIzAwMDtcbiAgcGFkZGluZy10b3A6IDEuNTYyNXJlbTtcbn1cblxuLnN3YXRjaC1jb250YWluZXIgLnN3YXRjaCBmb290ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMC4zMTI1cmVtO1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMC4zMTI1cmVtO1xuICBmb250LXNpemU6IDAuNzVyZW07XG4gIHBhZGRpbmc6IDAuNjI1cmVtO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLndyYXAge1xuICBtYXgtd2lkdGg6IDgwZW07XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIHBhZGRpbmc6IDAgMS4yNWVtO1xufVxuXG4ud3JhcDo6YWZ0ZXIge1xuICBjbGVhcjogYm90aDtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwcmVtKSB7XG4gIC53cmFwIHtcbiAgICBwYWRkaW5nOiAwIDIuODEyNXJlbTtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4NS4zNzVyZW0pIHtcbiAgLndyYXAge1xuICAgIG1heC13aWR0aDogNzguNzVyZW07XG4gICAgcGFkZGluZzogMDtcbiAgfVxufVxuXG4uc2l0ZS1oZWFkZXIge1xuICBwYWRkaW5nOiAwO1xufVxuXG4uc2l0ZS1oZWFkZXIgLndyYXAge1xuICBtYXgtd2lkdGg6IG5vbmU7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwNXJlbSkge1xuICAuc2l0ZS1oZWFkZXIgLndyYXAge1xuICAgIG1heC13aWR0aDogODByZW07XG4gIH1cbn1cblxuLnNpdGUtY29udGVudCB7XG4gIG1hcmdpbjogMS4yNXJlbSBhdXRvO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4NS4zNzVyZW0pIHtcbiAgLnNpdGUtY29udGVudCB7XG4gICAgbWFyZ2luOiAxLjgxMjVyZW0gYXV0byAzLjMxMjVyZW07XG4gIH1cbn1cblxuLnByaW1hcnkge1xuICB3aWR0aDogMTAwJTtcbn1cblxuLnByaW1hcnkgLnNpdGUtbWFpbiB7XG4gIGNsZWFyOiBib3RoO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NHJlbSkge1xuICAucHJpbWFyeSAuc2l0ZS1tYWluIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDI1cmVtO1xuICAgIHBhZGRpbmctcmlnaHQ6IDEuNzVyZW07XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRyZW0pIHtcbiAgLnByaW1hcnkge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG5cbi5zZWNvbmRhcnkge1xuICB3aWR0aDogMTAwJTtcbiAgYmFja2dyb3VuZDogI2Y3ZjdmNztcbiAgbWFyZ2luLWJvdHRvbTogM3JlbTtcbiAgbWFyZ2luLXRvcDogMS44NzVyZW07XG4gIHBhZGRpbmc6IDAuNjI1cmVtO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MHJlbSkge1xuICAuc2Vjb25kYXJ5IHtcbiAgICBwYWRkaW5nOiAyLjkzNzVyZW0gMC42MjVyZW0gMS4zMTI1cmVtIDAuNjI1cmVtO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0cmVtKSB7XG4gIC5zZWNvbmRhcnkge1xuICAgIGZsb2F0OiByaWdodDtcbiAgICBtYXJnaW4tbGVmdDogLTI1cmVtO1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgbWF4LXdpZHRoOiAyNXJlbTtcbiAgICBtaW4td2lkdGg6IDI1cmVtO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgd2lkdGg6IDI1cmVtO1xuICB9XG59XG5cbi5mdWxsLXdpZHRoIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICByaWdodDogNTAlO1xuICBsZWZ0OiA1MCU7XG4gIG1hcmdpbi1sZWZ0OiAtNTB2dztcbiAgbWFyZ2luLXJpZ2h0OiAtNTB2dztcbiAgd2lkdGg6IDEwMHZ3O1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NHJlbSkge1xuICAjbWFpbixcbiAgLnNpdGUtbWFpbiB7XG4gICAgbWFyZ2luLXRvcDogLTE1LjYyNXJlbTtcbiAgICBwYWRkaW5nLXRvcDogMTUuNjI1cmVtO1xuICB9XG59XG5cbi5jb21tZW50LXJlcGx5LXRpdGxlIHtcbiAgbWFyZ2luLXRvcDogMDtcbn1cblxuLmNvbW1lbnRzLXRpdGxlIHtcbiAgZm9udC1zaXplOiAxLjVyZW07XG59XG5cbi5jb21tZW50LWxpc3Qge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBtYXJnaW46IDA7XG59XG5cbi5jb21tZW50LW1ldGEge1xuICBtYXJnaW46IDAgMCAwLjg3NXJlbSAwO1xufVxuXG4uYXZhdGFyIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIG1hcmdpbjogMCAwLjYyNXJlbSAwIDA7XG59XG5cbi5ieXBvc3RhdXRob3Ige1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLmNvbW1lbnQtZm9ybSB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uY29tbWVudC1mb3JtIGlucHV0Om5vdCguc3VibWl0KSB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MHJlbSkge1xuICAuY29tbWVudC1mb3JtIGlucHV0Om5vdCguc3VibWl0KSB7XG4gICAgbWF4LXdpZHRoOiAxNS42MjVyZW07XG4gIH1cbn1cblxuLmNvbW1lbnQtZm9ybS1hdXRob3IgbGFiZWwsXG4uY29tbWVudC1mb3JtLWVtYWlsIGxhYmVsLFxuLmNvbW1lbnQtZm9ybS11cmwgbGFiZWwge1xuICBmbG9hdDogbGVmdDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1yaWdodDogMS4yMDQ4MiU7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uY29tbWVudC1mb3JtLWF1dGhvciBsYWJlbDpsYXN0LWNoaWxkLFxuLmNvbW1lbnQtZm9ybS1lbWFpbCBsYWJlbDpsYXN0LWNoaWxkLFxuLmNvbW1lbnQtZm9ybS11cmwgbGFiZWw6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1yaWdodDogMDtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDByZW0pIHtcbiAgLmNvbW1lbnQtZm9ybS1hdXRob3IgbGFiZWwsXG4gIC5jb21tZW50LWZvcm0tZW1haWwgbGFiZWwsXG4gIC5jb21tZW50LWZvcm0tdXJsIGxhYmVsIHtcbiAgICB3aWR0aDogNC42ODc1cmVtO1xuICB9XG59XG5cbi5jb21tZW50LWxpc3QgLmNoaWxkcmVuIHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIHBhZGRpbmctbGVmdDogMS4yNXJlbTtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDByZW0pIHtcbiAgLmNvbW1lbnQtbGlzdCAuY2hpbGRyZW4ge1xuICAgIHBhZGRpbmctbGVmdDogMi4xODc1cmVtO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4cmVtKSB7XG4gIC5jb21tZW50LWxpc3QgLmNoaWxkcmVuIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDMuNzVyZW07XG4gIH1cbn1cblxuLnNpbmdsZSAuY29tbWVudC13cmFwIHtcbiAgaGVpZ2h0OiAwO1xuICBtYXJnaW4tYm90dG9tOiAyLjEyNXJlbTtcbiAgb3BhY2l0eTogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcGFkZGluZzogMC42MjVlbSAwO1xuICB0cmFuc2l0aW9uOiBoZWlnaHQgMC4yNXMgZWFzZS1vdXQsIG9wYWNpdHkgMC4yNXMgZWFzZS1vdXQ7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4cmVtKSB7XG4gIC5zaW5nbGUgLmNvbW1lbnQtd3JhcCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMS42ODc1cmVtO1xuICB9XG59XG5cbi5zaW5nbGUgLmNvbW1lbnQtd3JhcC5vcGVuIHtcbiAgb3BhY2l0eTogMTtcbn1cblxuLnNpbmdsZSAuY29tbWVudC10b2dnbGUge1xuICBmb250LXdlaWdodDogNzAwO1xuICBsZXR0ZXItc3BhY2luZzogMC4wODEyNXJlbTtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDhyZW0pIHtcbiAgLnNpbmdsZSAuY29tbWVudC10b2dnbGUge1xuICAgIGZvbnQtc2l6ZTogMS40Mzc1cmVtO1xuICAgIHBhZGRpbmc6IDFyZW0gMS43NXJlbTtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuXG4uc2luZ2xlIC5jb21tZW50cy1hcmVhIGxhYmVsIHtcbiAgY29sb3I6ICMyYzJkMzE7XG59XG5cbi5zdGlja3ksXG4uY29tbWVudHMtbGluayB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4uaGVudHJ5IHtcbiAgbWFyZ2luOiAwIDAgMS41cmVtIDA7XG59XG5cbi5ieWxpbmUsXG4udXBkYXRlZDpub3QoLnB1Ymxpc2hlZCkge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4uc2luZ2xlIC5ieWxpbmUsXG4uZ3JvdXAtYmxvZyAuYnlsaW5lIHtcbiAgZGlzcGxheTogaW5saW5lO1xufVxuXG4ucGFnZS1jb250ZW50LFxuLmVudHJ5LWNvbnRlbnQsXG4uZW50cnktc3VtbWFyeSB7XG4gIG1hcmdpbjogMS4xODc1cmVtIDAgMDtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRyZW0pIHtcbiAgLnBhZ2UtY29udGVudCxcbiAgLmVudHJ5LWNvbnRlbnQsXG4gIC5lbnRyeS1zdW1tYXJ5IHtcbiAgICBtYXJnaW46IDEuMzEyNXJlbSAwIDA7XG4gIH1cbn1cblxuLnBhZ2UtbGlua3Mge1xuICBjbGVhcjogYm90aDtcbiAgbWFyZ2luOiAwIDAgMS41cmVtIDA7XG59XG5cbi5lZGl0LWxpbmsge1xuICBtYXJnaW46IDAgMS41cmVtO1xufVxuXG4uYmxvZyAuZm9ybWF0LWFzaWRlIC5lbnRyeS10aXRsZSxcbi5hcmNoaXZlIC5mb3JtYXQtYXNpZGUgLmVudHJ5LXRpdGxlIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLnNpdGUtZm9vdGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzFlMWUyMjtcbiAgY29sb3I6ICNmZmY7XG59XG5cbi5mb290ZXItdG9wIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzFlMWUyMjtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRyZW0pIHtcbiAgLmZvb3Rlci10b3Age1xuICAgIHBhZGRpbmc6IDAgMS4yNWVtO1xuICB9XG59XG5cbi5mb290ZXItdG9wIC53aWRnZXQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4uZm9vdGVyLXRvcCAud2lkZ2V0ICsgLndpZGdldCB7XG4gIG1hcmdpbi10b3A6IDEuNXJlbTtcbn1cblxuLmZvb3Rlci10b3AgLmZvb3Rlci1uYXZpZ2F0aW9uIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRyZW0pIHtcbiAgLmZvb3Rlci10b3AgLmZvb3Rlci1uYXZpZ2F0aW9uIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuXG4uZm9vdGVyLXRvcCAubWVudS1wcmltYXJ5LW1lbnUtY29udGFpbmVyIGEge1xuICBjb2xvcjogI2ZmZjtcbiAgZm9udC1mYW1pbHk6IFwiZnJlaWdodC1zYW5zLXByb1wiLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDEuMTI1cmVtO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIHBhZGRpbmc6IDEuMTI1cmVtIDAuNjI1cmVtO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4NS4zNzVyZW0pIHtcbiAgLmZvb3Rlci10b3AgLm1lbnUtcHJpbWFyeS1tZW51LWNvbnRhaW5lciBhIHtcbiAgICBwYWRkaW5nOiAxLjMxMjVyZW0gMC45Mzc1cmVtIDEuMjVyZW07XG4gIH1cbn1cblxuLmZvb3Rlci10b3AgLm1lbnUtcHJpbWFyeS1tZW51LWNvbnRhaW5lciBsaSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZmxvYXQ6IG5vbmU7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4cmVtKSB7XG4gIC5mb290ZXItdG9wIC5tZW51LXByaW1hcnktbWVudS1jb250YWluZXIgbGkge1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG59XG5cbi5mb290ZXItdG9wIC5tZW51LXByaW1hcnktbWVudS1jb250YWluZXIgLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5mb290ZXItdG9wIC5tZW51LXByaW1hcnktbWVudS1jb250YWluZXIgLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4gYSB7XG4gIHBhZGRpbmctcmlnaHQ6IDEuNzVyZW07XG59XG5cbi5mb290ZXItdG9wIC5tZW51LXByaW1hcnktbWVudS1jb250YWluZXIgLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4gPiBhIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uZm9vdGVyLXRvcCAubWVudS1wcmltYXJ5LW1lbnUtY29udGFpbmVyIC5tZW51LWl0ZW0taGFzLWNoaWxkcmVuID4gYTo6YWZ0ZXIge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xufVxuXG4uZm9vdGVyLXRvcCAubWVudS1wcmltYXJ5LW1lbnUtY29udGFpbmVyIC5tZW51LWl0ZW0taGFzLWNoaWxkcmVuIHVsIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IDEwMCU7XG4gIGZsb2F0OiBsZWZ0O1xufVxuXG4uZm9vdGVyLXRvcCAubWVudS1wcmltYXJ5LW1lbnUtY29udGFpbmVyIC5tZW51LWl0ZW0taGFzLWNoaWxkcmVuIHVsIHVsIHtcbiAgYm90dG9tOiAwO1xuICByaWdodDogLTk5OWVtO1xuICB0b3A6IGF1dG87XG59XG5cbi5mb290ZXItYm90dG9tIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzJjMmMzMTtcbiAgcGFkZGluZy10b3A6IDIuNjI1cmVtO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NHJlbSkge1xuICAuZm9vdGVyLWJvdHRvbSB7XG4gICAgcGFkZGluZzogMS43NXJlbSAxLjI1ZW07XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRyZW0pIHtcbiAgLmZvb3Rlci1ib3R0b20gLndyYXAge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICB9XG59XG5cbi5mb290ZXItYm90dG9tIGEge1xuICBjb2xvcjogI2ZmZjtcbn1cblxuLmZvb3Rlci1ib3R0b20gLndpZGdldCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZzogMC42MjVlbSAwIDA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQxLjg3NXJlbSkge1xuICAuZm9vdGVyLWJvdHRvbSAud2lkZ2V0IHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIHdpZHRoOiAzMyU7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRyZW0pIHtcbiAgLmZvb3Rlci1ib3R0b20gLndpZGdldCB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLXJpZ2h0OiAxLjIwNDgyJTtcbiAgICB3aWR0aDogMTcuNzcxMDglO1xuICAgIG1hcmdpbi10b3A6IDEuMzc1cmVtO1xuICAgIHBhZGRpbmc6IDAgMC42MjVlbSAwIDA7XG4gIH1cbiAgLmZvb3Rlci1ib3R0b20gLndpZGdldDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRyZW0pIHtcbiAgLmZvb3Rlci1ib3R0b20gLndpZGdldCArIC53aWRnZXQge1xuICAgIHBhZGRpbmc6IDAgMC42MjVlbTtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NHJlbSkge1xuICAuZm9vdGVyLWJvdHRvbSAuYWQtd2lkZ2V0IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNjg3NXJlbTtcbiAgfVxufVxuXG4uZm9vdGVyLWJvdHRvbSAuc2l0ZS1pbmZvIHtcbiAgbWFyZ2luLXRvcDogMy4xMjVyZW07XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0cmVtKSB7XG4gIC5mb290ZXItYm90dG9tIC5zaXRlLWluZm8ge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi1yaWdodDogMS4yMDQ4MiU7XG4gICAgd2lkdGg6IDQ5LjM5NzU5JTtcbiAgICBwYWRkaW5nLXRvcDogMS4xMjVyZW07XG4gICAgcGFkZGluZy1yaWdodDogMC4xODc1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC44MTI1cmVtO1xuICAgIG1hcmdpbi10b3A6IDA7XG4gIH1cbiAgLmZvb3Rlci1ib3R0b20gLnNpdGUtaW5mbzpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gIH1cbn1cblxuLmZvb3Rlci1ib3R0b20gLnNpdGUtaW5mbyBwIHtcbiAgZm9udC1zaXplOiAxLjI1cmVtO1xuICBsaW5lLWhlaWdodDogMS41O1xufVxuXG4uZm9vdGVyLWJvdHRvbSAuc2l0ZWxpc3Qge1xuICBkaXNwbGF5OiBub25lO1xuICBtYXJnaW4tdG9wOiAwLjgxMjVyZW07XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0cmVtKSB7XG4gIC5mb290ZXItYm90dG9tIC5zaXRlbGlzdCB7XG4gICAgbWFyZ2luLWxlZnQ6IDYuMzI1MyU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLXJpZ2h0OiAxLjIwNDgyJTtcbiAgICB3aWR0aDogMjQuMDk2MzklO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG4gIC5mb290ZXItYm90dG9tIC5zaXRlbGlzdDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gIH1cbn1cblxuLmZvb3Rlci1ib3R0b20gLnNpdGVsaXN0IGgzIHtcbiAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMDkzNzVyZW07XG4gIG1hcmdpbi1ib3R0b206IDAuNTYyNXJlbTtcbiAgbWFyZ2luLXRvcDogMDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cblxuLmZvb3Rlci1ib3R0b20gLnNpdGVsaXN0IC5kcm9wZG93bi13cmFwIHtcbiAgbWFyZ2luLWJvdHRvbTogMC42MjVyZW07XG4gIG1hcmdpbi1yaWdodDogMC42MjVyZW07XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwcmVtKSB7XG4gIC5mb290ZXItYm90dG9tIC5zaXRlbGlzdCAuZHJvcGRvd24td3JhcCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NHJlbSkge1xuICAuZm9vdGVyLWJvdHRvbSAuc2l0ZWxpc3QgLmRyb3Bkb3duLXdyYXAge1xuICAgIG1hcmdpbi1ib3R0b206IDEuNTYyNXJlbTtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2N3JlbSkge1xuICAuZm9vdGVyLWJvdHRvbSAuc2l0ZWxpc3QgLmRyb3Bkb3duLXdyYXAge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgfVxufVxuXG4uZm9vdGVyLWJvdHRvbSAuc2l0ZWxpc3QgLmRyb3Bkb3duLXRvZ2dsZSB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uZm9vdGVyLWJvdHRvbSAuc2l0ZWxpc3QgLmRyb3Bkb3duLWxpc3QgYTpob3Zlcixcbi5mb290ZXItYm90dG9tIC5zaXRlbGlzdCAuZHJvcGRvd24tbGlzdCBhOmFjdGl2ZSxcbi5mb290ZXItYm90dG9tIC5zaXRlbGlzdCAuZHJvcGRvd24tbGlzdCBhOmZvY3VzIHtcbiAgYmFja2dyb3VuZDogI2Y0YjIyNTtcbn1cblxuLmZvb3Rlci10b3AgLnNpdGVsaXN0IHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdpZHRoOiAxOC43NXJlbTtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDEuODc1cmVtKSB7XG4gIC5mb290ZXItdG9wIC5zaXRlbGlzdCB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRyZW0pIHtcbiAgLmZvb3Rlci10b3AgLnNpdGVsaXN0IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi5mb290ZXItdG9wIC5zaXRlbGlzdCBoMyB7XG4gIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gIG1hcmdpbjogMC4yNXJlbSAwO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuXG4uZm9vdGVyLXRvcCAuc2l0ZWxpc3QgLmRyb3Bkb3duLXdyYXAsXG4uZm9vdGVyLXRvcCAuc2l0ZWxpc3QgLmRyb3Bkb3duLXRvZ2dsZSB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uZm9vdGVyLWJvdHRvbSAuZm9vdGVyLWxvZ29zIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuXG4uZm9vdGVyLWJvdHRvbSAuZm9vdGVyLWxvZ29zIC5sb2dvLXdyYXAge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi1sZWZ0OiAwLjYyNXJlbTtcbiAgbWF4LXdpZHRoOiAxMS44NzVyZW07XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0cmVtKSB7XG4gIC5mb290ZXItYm90dG9tIC5mb290ZXItbG9nb3MgLmxvZ28td3JhcCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLWJvdHRvbTogMC42MjVyZW07XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgbWF4LXdpZHRoOiA2Ljg3NXJlbTtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2N3JlbSkge1xuICAuZm9vdGVyLWJvdHRvbSAuZm9vdGVyLWxvZ29zIC5sb2dvLXdyYXAge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwLjYyNXJlbTtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4NS4zNzVyZW0pIHtcbiAgLmZvb3Rlci1ib3R0b20gLmZvb3Rlci1sb2dvcyAubG9nby13cmFwIHtcbiAgICBtYXJnaW4tbGVmdDogMS41NjI1cmVtO1xuICB9XG59XG5cbi5mb290ZXItYm90dG9tIC5mb290ZXItbG9nb3MgLmxvZ28td3JhcDpmaXJzdC1jaGlsZCB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xufVxuXG4uZm9vdGVyLWJvdHRvbSAuZm9vdGVyLWxvZ29zLm1vYmlsZS1vbmx5IHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MS44NzVyZW0pIHtcbiAgLmZvb3Rlci1ib3R0b20gLmZvb3Rlci1sb2dvcy5tb2JpbGUtb25seSB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICB3aWR0aDogNjYlO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0cmVtKSB7XG4gIC5mb290ZXItYm90dG9tIC5mb290ZXItbG9nb3MubW9iaWxlLW9ubHkge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLmZvb3Rlci1ib3R0b20gLmZvb3Rlci1sb2dvcy5tb2JpbGUtb25seSAubG9nby13cmFwIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMCBhdXRvO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MS44NzVyZW0pIHtcbiAgLmZvb3Rlci1ib3R0b20gLmZvb3Rlci1sb2dvcy5tb2JpbGUtb25seSAubG9nby13cmFwIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIH1cbn1cblxuLmZvb3Rlci1ib3R0b20gLmZvb3Rlci1sb2dvcy5tb2JpbGUtb25seSAud2RzX2NvbWViYWNrX2Zvb3Rlcl9sb2dvXzFfd3JhcCB7XG4gIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDEuODc1cmVtKSB7XG4gIC5mb290ZXItYm90dG9tIC5mb290ZXItbG9nb3MubW9iaWxlLW9ubHkgLndkc19jb21lYmFja19mb290ZXJfbG9nb18xX3dyYXAge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDEuODc1cmVtKSB7XG4gIC5mb290ZXItYm90dG9tIC5mb290ZXItbG9nb3MubW9iaWxlLW9ubHkgLndkc19jb21lYmFja19mb290ZXJfbG9nb18yX3dyYXAge1xuICAgIGZsb2F0OiByaWdodDtcbiAgfVxufVxuXG4uZm9vdGVyLXRvcCAuc29jaWFsLWljb25zIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi10b3A6IDAuNDM3NXJlbTtcbiAgcGFkZGluZzogMC40Mzc1cmVtIDA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDEuODc1cmVtKSB7XG4gIC5mb290ZXItdG9wIC5zb2NpYWwtaWNvbnMge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRyZW0pIHtcbiAgLmZvb3Rlci10b3AgLnNvY2lhbC1pY29ucyB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG5idXR0b24sXG5pbnB1dCxcbnNlbGVjdCxcbnRleHRhcmVhIHtcbiAgZm9udC1zaXplOiAxMDAlO1xuICBtYXJnaW46IDA7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cblxuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdLFxuaW5wdXRbdHlwZT1cInJhZGlvXCJdIHtcbiAgcGFkZGluZzogMDtcbn1cblxuaW5wdXRbdHlwZT1cInRleHRcIl06Oi1tcy1jbGVhcixcbmlucHV0W3R5cGU9XCJzZWFyY2hcIl06Oi1tcy1jbGVhciB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbmlucHV0W3R5cGU9XCJzZWFyY2hcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDtcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7XG59XG5cbmlucHV0W3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG59XG5cbmJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lcixcbmlucHV0OjotbW96LWZvY3VzLWlubmVyIHtcbiAgYm9yZGVyOiAwO1xuICBwYWRkaW5nOiAwO1xufVxuXG5pbnB1dFt0eXBlPVwidGV4dFwiXSxcbmlucHV0W3R5cGU9XCJlbWFpbFwiXSxcbmlucHV0W3R5cGU9XCJ1cmxcIl0sXG5pbnB1dFt0eXBlPVwicGFzc3dvcmRcIl0sXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdLFxuaW5wdXRbdHlwZT1cIm51bWJlclwiXSxcbmlucHV0W3R5cGU9XCJ0ZWxcIl0sXG5pbnB1dFt0eXBlPVwicmFuZ2VcIl0sXG5pbnB1dFt0eXBlPVwiZGF0ZVwiXSxcbmlucHV0W3R5cGU9XCJtb250aFwiXSxcbmlucHV0W3R5cGU9XCJ3ZWVrXCJdLFxuaW5wdXRbdHlwZT1cInRpbWVcIl0sXG5pbnB1dFt0eXBlPVwiZGF0ZXRpbWVcIl0sXG5pbnB1dFt0eXBlPVwiZGF0ZXRpbWUtbG9jYWxcIl0sXG5pbnB1dFt0eXBlPVwiY29sb3JcIl0sXG50ZXh0YXJlYSB7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIGJvcmRlcjogMC4wNjI1cmVtIHNvbGlkICNjY2M7XG4gIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgY29sb3I6ICM1NzU0NWI7XG4gIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIHBhZGRpbmc6IDAuNzVyZW0gMS4yNXJlbSAwLjgxMjVyZW07XG59XG5cbmlucHV0W3R5cGU9XCJ0ZXh0XCJdOmZvY3VzLFxuaW5wdXRbdHlwZT1cImVtYWlsXCJdOmZvY3VzLFxuaW5wdXRbdHlwZT1cInVybFwiXTpmb2N1cyxcbmlucHV0W3R5cGU9XCJwYXNzd29yZFwiXTpmb2N1cyxcbmlucHV0W3R5cGU9XCJzZWFyY2hcIl06Zm9jdXMsXG5pbnB1dFt0eXBlPVwibnVtYmVyXCJdOmZvY3VzLFxuaW5wdXRbdHlwZT1cInRlbFwiXTpmb2N1cyxcbmlucHV0W3R5cGU9XCJyYW5nZVwiXTpmb2N1cyxcbmlucHV0W3R5cGU9XCJkYXRlXCJdOmZvY3VzLFxuaW5wdXRbdHlwZT1cIm1vbnRoXCJdOmZvY3VzLFxuaW5wdXRbdHlwZT1cIndlZWtcIl06Zm9jdXMsXG5pbnB1dFt0eXBlPVwidGltZVwiXTpmb2N1cyxcbmlucHV0W3R5cGU9XCJkYXRldGltZVwiXTpmb2N1cyxcbmlucHV0W3R5cGU9XCJkYXRldGltZS1sb2NhbFwiXTpmb2N1cyxcbmlucHV0W3R5cGU9XCJjb2xvclwiXTpmb2N1cyxcbnRleHRhcmVhOmZvY3VzIHtcbiAgYm9yZGVyOiAwLjEyNXJlbSBzb2xpZCAjZWRiYzAwO1xuICBjb2xvcjogIzU3NTQ1YjtcbiAgb3V0bGluZS1jb2xvcjogI2VkYmMwMDtcbiAgcGFkZGluZzogMC42ODc1cmVtIDEuMTg3NXJlbSAwLjc1cmVtO1xufVxuXG50ZXh0YXJlYSB7XG4gIGhlaWdodDogYXV0bztcbiAgd2lkdGg6IDEwMCU7XG4gIG92ZXJmbG93OiBhdXRvO1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xufVxuXG5sYWJlbCB7XG4gIGNvbG9yOiAjZmZmO1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1mYW1pbHk6IFwiZnJlaWdodC1zYW5zLXByb1wiLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDFyZW07XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGxldHRlci1zcGFjaW5nOiAwLjEyNXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuXG5zZWxlY3Qge1xuICBib3JkZXItcmFkaXVzOiAzcHg7XG4gIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gIHBhZGRpbmc6IDAuNXJlbSAxLjM3NXJlbSAwLjU2MjVyZW07XG59XG5cbnNlbGVjdDpmb2N1cyB7XG4gIGJvcmRlcjogMC4xMjVyZW0gc29saWQgI2VkYmMwMDtcbiAgY29sb3I6ICM1NzU0NWI7XG4gIG91dGxpbmUtY29sb3I6ICNlZGJjMDA7XG4gIHBhZGRpbmc6IDAuNDM3NXJlbSAxLjMxMjVyZW0gMC41cmVtO1xufVxuXG4uZmFuY3ktc2VsZWN0Ym94IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBib3JkZXI6IDAuMDYyNXJlbSBzb2xpZCAjMzMzO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1heC1oZWlnaHQ6IDMuMzc1cmVtO1xufVxuXG4uZmFuY3ktc2VsZWN0Ym94IHNlbGVjdCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaGVpZ2h0OiAxMDAlO1xuICB3aWR0aDogMTAwJTtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogbm9uZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nOiAwLjY4NzVyZW0gNC4zNzVyZW0gMC44NzVyZW0gMS4zNzVyZW07XG4gIHotaW5kZXg6IDE7XG59XG5cbi5mYW5jeS1zZWxlY3Rib3ggc2VsZWN0OjotbXMtZXhwYW5kIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLmZhbmN5LXNlbGVjdGJveCBzZWxlY3Q6Zm9jdXMge1xuICBib3JkZXI6IDAuMTI1cmVtIHNvbGlkICNlZGJjMDA7XG4gIHBhZGRpbmc6IDAuNTYyNXJlbSA0LjI1cmVtIDAuNzVyZW0gMS4yNXJlbTtcbn1cblxuLmZhbmN5LXNlbGVjdGJveCBzdmcge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICByaWdodDogMS4xODc1cmVtO1xuICBoZWlnaHQ6IDEuNXJlbTtcbiAgd2lkdGg6IDEuNjI1cmVtO1xuICBib3JkZXItbGVmdDogMC4wNjI1cmVtIHNvbGlkICM2YjY0NjE7XG4gIGZpbGw6ICM2YjY0NjE7XG4gIG1hcmdpbi1sZWZ0OiAwLjkzNzVyZW07XG4gIHBhZGRpbmc6IDAuNDM3NXJlbSAwIDAuNDM3NXJlbSAwLjkzNzVyZW07XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgei1pbmRleDogMDtcbn1cblxuLnNlYXJjaC1mb3JtIHtcbiAgZGlzcGxheTogZmxleDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uc2VhcmNoLWZvcm0gLnNlYXJjaC1maWVsZCB7XG4gIGJvcmRlcjogMC4wNjI1cmVtIHNvbGlkICNkOWUwZTA7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJvcmRlci1yaWdodDogbm9uZTtcbiAgcGFkZGluZzogMC40Mzc1cmVtIDAuNTYyNXJlbSAwLjM3NXJlbTtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRyZW0pIHtcbiAgLnNlYXJjaC1mb3JtIC5zZWFyY2gtZmllbGQge1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICBoZWlnaHQ6IDIuMTI1cmVtO1xuICAgIHBhZGRpbmc6IDAuMDYyNXJlbSAwLjU2MjVyZW07XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi1oZWlnaHQ6IDMxLjI1cmVtKSBhbmQgKG1heC13aWR0aDogNDhyZW0pIHtcbiAgLnNlYXJjaC1mb3JtIC5zZWFyY2gtZmllbGQge1xuICAgIHdpZHRoOiA1MCU7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi1oZWlnaHQ6IDMxLjI1cmVtKSBhbmQgKG1heC13aWR0aDogNjMuOTM3NXJlbSkge1xuICAuc2VhcmNoLWZvcm0gLnNlYXJjaC1maWVsZCB7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICB9XG59XG5cbi5zZWFyY2gtZm9ybSAuc2VhcmNoLWZpZWxkOmZvY3VzIHtcbiAgcGFkZGluZzogMC4zNzVyZW0gMC41cmVtIDAuMzEyNXJlbTtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRyZW0pIHtcbiAgLnNlYXJjaC1mb3JtIC5zZWFyY2gtZmllbGQ6Zm9jdXMge1xuICAgIHBhZGRpbmc6IDAuMTg3NXJlbSAwLjVyZW0gMC4xODc1cmVtIDAuNDM3NXJlbTtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NHJlbSkge1xuICAuZml4ZWQtaGVhZGVyIC5zaXRlLWhlYWRlciAuc2VhcmNoLWZvcm0gLnNlYXJjaC1maWVsZCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAwO1xuICAgIGhlaWdodDogNC4wNjI1cmVtO1xuICAgIHdpZHRoOiAzLjc1cmVtO1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogd2lkdGggMC4xOHMgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgMC4xOHMgZWFzZS1pbi1vdXQ7XG4gICAgLW1vei10cmFuc2l0aW9uOiB3aWR0aCAwLjE4cyBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciAwLjE4cyBlYXNlLWluLW91dDtcbiAgICB0cmFuc2l0aW9uOiB3aWR0aCAwLjE4cyBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciAwLjE4cyBlYXNlLWluLW91dDtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIG9wYWNpdHk6IDA7XG4gICAgei1pbmRleDogMztcbiAgfVxuICAuZml4ZWQtaGVhZGVyIC5zaXRlLWhlYWRlciAuc2VhcmNoLWZvcm0gLnNlYXJjaC1maWVsZDpmb2N1cywgLmZpeGVkLWhlYWRlciAuc2l0ZS1oZWFkZXIgLnNlYXJjaC1mb3JtIC5zZWFyY2gtZmllbGQubm90LWVtcHR5IHtcbiAgICBiYWNrZ3JvdW5kOiAjMmMyYzMxO1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIG1hcmdpbi1yaWdodDogMy43NXJlbTtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHdpZHRoOiAxOC4xMjVyZW07XG4gICAgei1pbmRleDogMTtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NHJlbSkge1xuICAuZml4ZWQtaGVhZGVyIC5zaXRlLWhlYWRlciAuc2VhcmNoLWZvcm0gYnV0dG9uIHtcbiAgICBoZWlnaHQ6IDQuMDYyNXJlbTtcbiAgICB3aWR0aDogMy43NXJlbTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGUwZTExO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgcGFkZGluZzogMDtcbiAgICB6LWluZGV4OiAyO1xuICB9XG4gIC5maXhlZC1oZWFkZXIgLnNpdGUtaGVhZGVyIC5zZWFyY2gtZm9ybSBidXR0b24gc3ZnIHtcbiAgICBmaWxsOiAjZmZmO1xuICB9XG59XG5cbi5zZWFyY2gtZm9ybSA6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIge1xuICBjb2xvcjogIzU5NWI2MTtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xufVxuXG4uc2VhcmNoLWZvcm0gOjotbW96LXBsYWNlaG9sZGVyIHtcbiAgY29sb3I6ICM1OTViNjE7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgb3BhY2l0eTogMTtcbn1cblxuLnNlYXJjaC1mb3JtIDotbXMtaW5wdXQtcGxhY2Vob2xkZXIge1xuICBjb2xvcjogIzU5NWI2MTtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xufVxuXG4uYnV0dG9uLFxuYnV0dG9uLFxuaW5wdXRbdHlwZT1cImJ1dHRvblwiXSxcbmlucHV0W3R5cGU9XCJyZXNldFwiXSxcbmlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xuICBhcHBlYXJhbmNlOiBub25lO1xuICBib3JkZXI6IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgYm9yZGVyLXdpZHRoOiAwO1xuICBjb2xvcjogI2ZmZjtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmb250LWZhbWlseTogXCJmcmVpZ2h0LXNhbnMtcHJvXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGxldHRlci1zcGFjaW5nOiAwLjA2MjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjQ1O1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDAuNjg3NXJlbSAxLjc1cmVtO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4xOHMgZWFzZS1vdXQ7XG59XG5cbi5pZSAuYnV0dG9uLCAuaWVcbmJ1dHRvbiwgLmllXG5pbnB1dFt0eXBlPVwiYnV0dG9uXCJdLCAuaWVcbmlucHV0W3R5cGU9XCJyZXNldFwiXSwgLmllXG5pbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcbiAgaGVpZ2h0OiAzcmVtO1xufVxuXG4uYnV0dG9uOnZpc2l0ZWQsXG5idXR0b246dmlzaXRlZCxcbmlucHV0W3R5cGU9XCJidXR0b25cIl06dmlzaXRlZCxcbmlucHV0W3R5cGU9XCJyZXNldFwiXTp2aXNpdGVkLFxuaW5wdXRbdHlwZT1cInN1Ym1pdFwiXTp2aXNpdGVkIHtcbiAgY29sb3I6ICNmZmY7XG59XG5cbi5idXR0b24tcHJpbWFyeSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlZGJjMDA7XG59XG5cbi5idXR0b24tcHJpbWFyeTpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmN2NmNDg7XG4gIGNvbG9yOiAjZmZmO1xufVxuXG4uYnV0dG9uLXByaW1hcnk6YWN0aXZlLCAuYnV0dG9uLXByaW1hcnk6Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjdjZjQ4O1xuICBjb2xvcjogI2ZmZjtcbn1cblxuLmJ1dHRvbi1zZWNvbmRhcnkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjM2YzYzQyO1xufVxuXG4uYnV0dG9uLXNlY29uZGFyeTpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM1NzU0NWI7XG59XG5cbi5idXR0b24tc2Vjb25kYXJ5OmFjdGl2ZSwgLmJ1dHRvbi1zZWNvbmRhcnk6Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNTc1NDViO1xufVxuXG4uYnV0dG9uLW91dGxpbmUge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiAwLjEyNXJlbSBzb2xpZCAjM2YzYzQyO1xuICBjb2xvcjogIzNmM2M0MjtcbiAgcGFkZGluZzogMC41NjI1cmVtIDEuNjI1cmVtO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMThzIGVhc2Utb3V0LCBjb2xvciAwLjE4cyBlYXNlLW91dDtcbn1cblxuLmJ1dHRvbi1vdXRsaW5lOmhvdmVyLCAuYnV0dG9uLW91dGxpbmU6dmlzaXRlZDpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzZjNjNDI7XG4gIGNvbG9yOiAjZmZmO1xufVxuXG4uYnV0dG9uLW91dGxpbmU6YWN0aXZlLCAuYnV0dG9uLW91dGxpbmU6Zm9jdXMsIC5idXR0b24tb3V0bGluZTp2aXNpdGVkOmFjdGl2ZSwgLmJ1dHRvbi1vdXRsaW5lOnZpc2l0ZWQ6Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjM2YzYzQyO1xuICBjb2xvcjogI2ZmZjtcbn1cblxuLmJ1dHRvbi1vdXRsaW5lOnZpc2l0ZWQge1xuICBjb2xvcjogIzNmM2M0Mjtcbn1cblxuLnNlYXJjaC1mb3JtIGJ1dHRvbiB7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIGJvcmRlcjogMC4wNjI1cmVtIHNvbGlkICNkOWUwZTA7XG4gIGJvcmRlci1sZWZ0OiBub25lO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBsaW5lLWhlaWdodDogLjg7XG4gIHBhZGRpbmc6IDAgMC40Mzc1cmVtO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NHJlbSkge1xuICAuc2VhcmNoLWZvcm0gYnV0dG9uIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDAuMzEyNXJlbTtcbiAgfVxufVxuXG4uc2VhcmNoLWZvcm0gYnV0dG9uIHN2ZyB7XG4gIGhlaWdodDogMS4xMjVyZW07XG4gIHdpZHRoOiAxLjE4NzVyZW07XG4gIGZpbGw6ICMxZTFlMjI7XG59XG5cbi5zZWFyY2gtZm9ybSBidXR0b246aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjdjZjQ4O1xufVxuXG4uc2VhcmNoLWZvcm0gYnV0dG9uOmhvdmVyIHN2ZyB7XG4gIGZpbGw6ICNmZmY7XG59XG5cbi5zZWFyY2gtZm9ybSBidXR0b246YWN0aXZlLCAuc2VhcmNoLWZvcm0gYnV0dG9uOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y3Y2Y0ODtcbn1cblxuLnNlYXJjaC1mb3JtIGJ1dHRvbjphY3RpdmUgc3ZnLCAuc2VhcmNoLWZvcm0gYnV0dG9uOmZvY3VzIHN2ZyB7XG4gIGZpbGw6ICNmZmY7XG59XG5cbi5pZSAuc2VhcmNoLWZvcm0gYnV0dG9uIHtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG4uc2l0ZS10aXRsZSB7XG4gIGZvbnQtc2l6ZTogM3JlbTtcbn1cblxuLnNpdGUtZGVzY3JpcHRpb24ge1xuICBmb250LXNpemU6IDEuNXJlbTtcbiAgbWFyZ2luOiAwIDAgMS41cmVtIDA7XG59XG5cbi5zaXRlLWhlYWRlciB7XG4gIGJhY2tncm91bmQ6ICMxZTFlMjI7XG4gIG1hcmdpbi10b3A6IDEuMzc1cmVtO1xuICBwYWRkaW5nLWJvdHRvbTogMC44NzVyZW07XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdHJhbnNpdGlvbjogYm90dG9tIDAuNzVzIGVhc2UtaW4tb3V0O1xuICB3aWR0aDogMTAwJTtcbiAgei1pbmRleDogMTAwO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMS4yNXJlbSkge1xuICAuc2l0ZS1oZWFkZXIge1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0cmVtKSB7XG4gIC5zaXRlLWhlYWRlciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGJvdHRvbTogMDtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4taGVpZ2h0OiAzMS4yNXJlbSkgYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVyZW0pIHtcbiAgLnNpdGUtaGVhZGVyIHtcbiAgICBib3R0b206IDQuMzEyNXJlbTtcbiAgICBwYWRkaW5nLWJvdHRvbTogMC4zMTI1cmVtO1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NHJlbSkge1xuICAuZml4ZWQtaGVhZGVyIC5zaXRlLWhlYWRlciB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHRvcDogMDtcbiAgICBoZWlnaHQ6IDQuMDYyNXJlbTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBiYWNrZ3JvdW5kOiAjMmMyYzMxO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0cmVtKSB7XG4gIC5hZG1pbi1iYXIuZml4ZWQtaGVhZGVyIC5zaXRlLWhlYWRlciB7XG4gICAgdG9wOiAycmVtO1xuICB9XG59XG5cbi5zaXRlLWhlYWRlci50YXBiYXItaGlkZGVuIHtcbiAgYm90dG9tOiAtMTAwJTtcbn1cblxuLnNpdGUtaGVhZGVyIC5zZWFyY2gtZm9ybSB7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBtYXJnaW46IDAuODc1cmVtIDAgMDtcbiAgcGFkZGluZzogMC42MjVyZW0gMDtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzEuMjVyZW0pIHtcbiAgLnNpdGUtaGVhZGVyIC5zZWFyY2gtZm9ybSB7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjMxMjVyZW07XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRyZW0pIHtcbiAgLnNpdGUtaGVhZGVyIC5zZWFyY2gtZm9ybSB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIG1hcmdpbjogMC42ODc1cmVtIDEuMjVyZW0gMC4zNzVyZW0gMDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICBwYWRkaW5nLXRvcDogMDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLWhlaWdodDogMzEuMjVyZW0pIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1cmVtKSB7XG4gIC5zaXRlLWhlYWRlciAuc2VhcmNoLWZvcm0ge1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgbWFyZ2luLXRvcDogMC4zMTI1cmVtO1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuMzEyNXJlbTtcbiAgICBwYWRkaW5nLXRvcDogMDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NHJlbSkge1xuICAuZml4ZWQtaGVhZGVyIC5zaXRlLWhlYWRlciAuc2VhcmNoLWZvcm0ge1xuICAgIG1hcmdpbjogMDtcbiAgfVxufVxuXG4uc2l0ZS1icmFuZGluZyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB6LWluZGV4OiAxO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMS4yNXJlbSkge1xuICAuc2l0ZS1icmFuZGluZyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogLTJyZW07XG4gICAgbGVmdDogMS4yNXJlbTtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NHJlbSkge1xuICAuc2l0ZS1icmFuZGluZyB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICB0b3A6IDAuNTYyNXJlbTtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLWhlaWdodDogMzEuMjVyZW0pIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1cmVtKSB7XG4gIC5zaXRlLWJyYW5kaW5nIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAtMS4xMjVyZW07XG4gICAgbGVmdDogMC4zMTI1cmVtO1xuICAgIHotaW5kZXg6IDEwMTtcbiAgfVxuICAubW9iaWxlLW1lbnUtbW9yZSAuc2l0ZS1icmFuZGluZyB7XG4gICAgei1pbmRleDogOTk7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRyZW0pIHtcbiAgLmZpeGVkLWhlYWRlciAuc2l0ZS1icmFuZGluZyB7XG4gICAgdG9wOiAwO1xuICB9XG59XG5cbi5zaXRlLWJyYW5kaW5nIC5jdXN0b20tbG9nby1saW5rIHtcbiAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1heC1oZWlnaHQ6IDYuNTYyNXJlbTtcbiAgcGFkZGluZy10b3A6IDAuNDM3NXJlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NHJlbSkge1xuICAuc2l0ZS1icmFuZGluZyAuY3VzdG9tLWxvZ28tbGluayB7XG4gICAgcGFkZGluZy10b3A6IDA7XG4gIH1cbn1cblxuLnNpdGUtYnJhbmRpbmcgLmN1c3RvbS1sb2dvLWxpbmsgaW1nIHtcbiAgbWF4LWhlaWdodDogNi41NjI1cmVtO1xuICB3aWR0aDogYXV0bztcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi1oZWlnaHQ6IDMxLjI1cmVtKSBhbmQgKG1heC13aWR0aDogNjMuOTM3NXJlbSkge1xuICAuc2l0ZS1icmFuZGluZyAuY3VzdG9tLWxvZ28tbGluayBpbWcge1xuICAgIG1heC1oZWlnaHQ6IDQuMjVyZW07XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRyZW0pIHtcbiAgLmZpeGVkLWhlYWRlciAuc2l0ZS1icmFuZGluZyAuY3VzdG9tLWxvZ28tbGluayBpbWcge1xuICAgIG1heC1oZWlnaHQ6IDQuMDYyNXJlbTtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NHJlbSkge1xuICAuZml4ZWQtaGVhZGVyIC5zaXRlLWJyYW5kaW5nIC5jdXN0b20tbG9nby1saW5rIHtcbiAgICBtYXgtaGVpZ2h0OiA0LjA2MjVyZW07XG4gIH1cbn1cblxuLnNpdGUtbmF2aWdhdGlvbi13cmFwIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDAuMzEyNXJlbTtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiB0b3AgMC4xOHMgZWFzZS1pbi1vdXQ7XG4gIC1tb3otdHJhbnNpdGlvbjogdG9wIDAuMThzIGVhc2UtaW4tb3V0O1xuICB0cmFuc2l0aW9uOiB0b3AgMC4xOHMgZWFzZS1pbi1vdXQ7XG4gIGJhY2tncm91bmQ6ICMyYzJjMzE7XG4gIGNsZWFyOiBib3RoO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0cmVtKSB7XG4gIC5maXhlZC1oZWFkZXIgLnNpdGUtbmF2aWdhdGlvbi13cmFwIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHotaW5kZXg6IC0xO1xuICB9XG59XG5cbi5oZXJvLWFyZWEge1xuICBvdmVyZmxvdy15OiBoaWRkZW47XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMTtcbn1cblxuLmhlcm8tYXJlYTo6YWZ0ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGhlaWdodDogMTAwJTtcbiAgd2lkdGg6IDEwMCU7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC42KTtcbiAgY29udGVudDogXCJcIjtcbiAgei1pbmRleDogMjtcbn1cblxuLmhlcm8tYXJlYSAuaGVyby1jb250ZW50IHtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBtYXgtd2lkdGg6IDMxLjI1cmVtO1xuICBtaW4taGVpZ2h0OiAzMS4yNXJlbTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHotaW5kZXg6IDM7XG59XG5cbi5oZXJvLWFyZWEgLmhlcm8tY29udGVudCAuaGVyby10aXRsZSxcbi5oZXJvLWFyZWEgLmhlcm8tY29udGVudCAuaGVyby1kZXNjcmlwdGlvbixcbi5oZXJvLWFyZWEgLmhlcm8tY29udGVudCAuaGVyby1idXR0b24ge1xuICBjb2xvcjogI2ZmZjtcbn1cblxuLmhlcm8tYXJlYSAuaGVyby1jb250ZW50IC5oZXJvLWRlc2NyaXB0aW9uIHtcbiAgcGFkZGluZy1ib3R0b206IDEuNXJlbTtcbn1cblxuLmhlcm8tYXJlYSAuaGVyby1jb250ZW50IC5oZXJvLWJ1dHRvbiB7XG4gIHBhZGRpbmc6IDAuNzVyZW0gMi41cmVtO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiAycHggc29saWQgI2ZmZjtcbn1cblxuLmhlcm8tYXJlYSAuaGVyby1jb250ZW50IC5oZXJvLWJ1dHRvbjpob3ZlciB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC43KTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4uc29jaWFsLWljb25zIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBkaXNwbGF5OiBub25lO1xuICBwYWRkaW5nOiAwLjM3NXJlbSAwLjI1cmVtIDAuMTg3NXJlbTtcbn1cblxuLnNvY2lhbC1pY29uczo6YWZ0ZXIge1xuICBjbGVhcjogYm90aDtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5zb2NpYWwtaWNvbnM6OmFmdGVyIHtcbiAgY2xlYXI6IGJvdGg7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NHJlbSkge1xuICAuc29jaWFsLWljb25zIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDA7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhyZW0pIHtcbiAgLnNvY2lhbC1pY29ucyB7XG4gICAgcGFkZGluZzogMC41NjI1cmVtIDAuOTM3NXJlbSAwLjMxMjVyZW07XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRyZW0pIHtcbiAgLmZpeGVkLWhlYWRlciAuc29jaWFsLWljb25zIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi5zb2NpYWwtaWNvbnMgLnNvY2lhbC1pY29uIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OHJlbSkge1xuICAuc29jaWFsLWljb25zIC5zb2NpYWwtaWNvbiB7XG4gICAgcGFkZGluZzogMC4yNXJlbTtcbiAgfVxufVxuXG4uc29jaWFsLWljb25zIC5zb2NpYWwtaWNvbiAuaWNvbi1mYWNlYm9vayB7XG4gIGhlaWdodDogMS44NzVyZW07XG4gIHdpZHRoOiAxLjg3NXJlbTtcbiAgZmlsbDogI2ZmZjtcbiAgcGFkZGluZzogMC4zNzVyZW07XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0cmVtKSB7XG4gIC5zb2NpYWwtaWNvbnMgLnNvY2lhbC1pY29uIC5pY29uLWZhY2Vib29rIHtcbiAgICBoZWlnaHQ6IDIuNDM3NXJlbTtcbiAgICB3aWR0aDogMi40Mzc1cmVtO1xuICB9XG59XG5cbi5mb290ZXItdG9wIC5zb2NpYWwtaWNvbnMgLnNvY2lhbC1pY29uIC5pY29uLWZhY2Vib29rIHtcbiAgaGVpZ2h0OiA0LjEyNXJlbTtcbiAgd2lkdGg6IDQuMTI1cmVtO1xuICBwYWRkaW5nOiAwLjY4NzVyZW07XG59XG5cbi5zb2NpYWwtaWNvbnMgLnNvY2lhbC1pY29uIC5pY29uLWZhY2Vib29rOmhvdmVyIHtcbiAgZmlsbDogIzNiNTk5ODtcbn1cblxuLnNvY2lhbC1pY29ucyAuc29jaWFsLWljb24gLmljb24tZmFjZWJvb2stc3F1YXJlIHtcbiAgaGVpZ2h0OiAxLjg3NXJlbTtcbiAgd2lkdGg6IDEuODc1cmVtO1xuICBmaWxsOiAjZmZmO1xuICBwYWRkaW5nOiAwLjM3NXJlbTtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRyZW0pIHtcbiAgLnNvY2lhbC1pY29ucyAuc29jaWFsLWljb24gLmljb24tZmFjZWJvb2stc3F1YXJlIHtcbiAgICBoZWlnaHQ6IDIuNDM3NXJlbTtcbiAgICB3aWR0aDogMi40Mzc1cmVtO1xuICB9XG59XG5cbi5mb290ZXItdG9wIC5zb2NpYWwtaWNvbnMgLnNvY2lhbC1pY29uIC5pY29uLWZhY2Vib29rLXNxdWFyZSB7XG4gIGhlaWdodDogNC4xMjVyZW07XG4gIHdpZHRoOiA0LjEyNXJlbTtcbiAgcGFkZGluZzogMC42ODc1cmVtO1xufVxuXG4uc29jaWFsLWljb25zIC5zb2NpYWwtaWNvbiAuaWNvbi1mYWNlYm9vay1zcXVhcmU6aG92ZXIge1xuICBmaWxsOiAjM2I1OTk4O1xufVxuXG4uc29jaWFsLWljb25zIC5zb2NpYWwtaWNvbiAuaWNvbi1nb29nbGVwbHVzIHtcbiAgaGVpZ2h0OiAxLjg3NXJlbTtcbiAgd2lkdGg6IDEuODc1cmVtO1xuICBmaWxsOiAjZmZmO1xuICBwYWRkaW5nOiAwLjM3NXJlbTtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRyZW0pIHtcbiAgLnNvY2lhbC1pY29ucyAuc29jaWFsLWljb24gLmljb24tZ29vZ2xlcGx1cyB7XG4gICAgaGVpZ2h0OiAyLjQzNzVyZW07XG4gICAgd2lkdGg6IDIuNDM3NXJlbTtcbiAgfVxufVxuXG4uZm9vdGVyLXRvcCAuc29jaWFsLWljb25zIC5zb2NpYWwtaWNvbiAuaWNvbi1nb29nbGVwbHVzIHtcbiAgaGVpZ2h0OiA0LjEyNXJlbTtcbiAgd2lkdGg6IDQuMTI1cmVtO1xuICBwYWRkaW5nOiAwLjY4NzVyZW07XG59XG5cbi5zb2NpYWwtaWNvbnMgLnNvY2lhbC1pY29uIC5pY29uLWdvb2dsZXBsdXM6aG92ZXIge1xuICBmaWxsOiAjZGQ0YjM5O1xufVxuXG4uc29jaWFsLWljb25zIC5zb2NpYWwtaWNvbiAuaWNvbi1nb29nbGVwbHVzLXNxdWFyZSB7XG4gIGhlaWdodDogMS44NzVyZW07XG4gIHdpZHRoOiAxLjg3NXJlbTtcbiAgZmlsbDogI2ZmZjtcbiAgcGFkZGluZzogMC4zNzVyZW07XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0cmVtKSB7XG4gIC5zb2NpYWwtaWNvbnMgLnNvY2lhbC1pY29uIC5pY29uLWdvb2dsZXBsdXMtc3F1YXJlIHtcbiAgICBoZWlnaHQ6IDIuNDM3NXJlbTtcbiAgICB3aWR0aDogMi40Mzc1cmVtO1xuICB9XG59XG5cbi5mb290ZXItdG9wIC5zb2NpYWwtaWNvbnMgLnNvY2lhbC1pY29uIC5pY29uLWdvb2dsZXBsdXMtc3F1YXJlIHtcbiAgaGVpZ2h0OiA0LjEyNXJlbTtcbiAgd2lkdGg6IDQuMTI1cmVtO1xuICBwYWRkaW5nOiAwLjY4NzVyZW07XG59XG5cbi5zb2NpYWwtaWNvbnMgLnNvY2lhbC1pY29uIC5pY29uLWdvb2dsZXBsdXMtc3F1YXJlOmhvdmVyIHtcbiAgZmlsbDogI2RkNGIzOTtcbn1cblxuLnNvY2lhbC1pY29ucyAuc29jaWFsLWljb24gLmljb24taW5zdGFncmFtIHtcbiAgaGVpZ2h0OiAxLjg3NXJlbTtcbiAgd2lkdGg6IDEuODc1cmVtO1xuICBmaWxsOiAjZmZmO1xuICBwYWRkaW5nOiAwLjM3NXJlbTtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRyZW0pIHtcbiAgLnNvY2lhbC1pY29ucyAuc29jaWFsLWljb24gLmljb24taW5zdGFncmFtIHtcbiAgICBoZWlnaHQ6IDIuNDM3NXJlbTtcbiAgICB3aWR0aDogMi40Mzc1cmVtO1xuICB9XG59XG5cbi5mb290ZXItdG9wIC5zb2NpYWwtaWNvbnMgLnNvY2lhbC1pY29uIC5pY29uLWluc3RhZ3JhbSB7XG4gIGhlaWdodDogNC4xMjVyZW07XG4gIHdpZHRoOiA0LjEyNXJlbTtcbiAgcGFkZGluZzogMC42ODc1cmVtO1xufVxuXG4uc29jaWFsLWljb25zIC5zb2NpYWwtaWNvbiAuaWNvbi1pbnN0YWdyYW06aG92ZXIge1xuICBmaWxsOiAjNTE3ZmE0O1xufVxuXG4uc29jaWFsLWljb25zIC5zb2NpYWwtaWNvbiAuaWNvbi1pbnN0YWdyYW0tc3F1YXJlIHtcbiAgaGVpZ2h0OiAxLjg3NXJlbTtcbiAgd2lkdGg6IDEuODc1cmVtO1xuICBmaWxsOiAjZmZmO1xuICBwYWRkaW5nOiAwLjM3NXJlbTtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRyZW0pIHtcbiAgLnNvY2lhbC1pY29ucyAuc29jaWFsLWljb24gLmljb24taW5zdGFncmFtLXNxdWFyZSB7XG4gICAgaGVpZ2h0OiAyLjQzNzVyZW07XG4gICAgd2lkdGg6IDIuNDM3NXJlbTtcbiAgfVxufVxuXG4uZm9vdGVyLXRvcCAuc29jaWFsLWljb25zIC5zb2NpYWwtaWNvbiAuaWNvbi1pbnN0YWdyYW0tc3F1YXJlIHtcbiAgaGVpZ2h0OiA0LjEyNXJlbTtcbiAgd2lkdGg6IDQuMTI1cmVtO1xuICBwYWRkaW5nOiAwLjY4NzVyZW07XG59XG5cbi5zb2NpYWwtaWNvbnMgLnNvY2lhbC1pY29uIC5pY29uLWluc3RhZ3JhbS1zcXVhcmU6aG92ZXIge1xuICBmaWxsOiAjNTE3ZmE0O1xufVxuXG4uc29jaWFsLWljb25zIC5zb2NpYWwtaWNvbiAuaWNvbi1saW5rZWRpbiB7XG4gIGhlaWdodDogMS44NzVyZW07XG4gIHdpZHRoOiAxLjg3NXJlbTtcbiAgZmlsbDogI2ZmZjtcbiAgcGFkZGluZzogMC4zNzVyZW07XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0cmVtKSB7XG4gIC5zb2NpYWwtaWNvbnMgLnNvY2lhbC1pY29uIC5pY29uLWxpbmtlZGluIHtcbiAgICBoZWlnaHQ6IDIuNDM3NXJlbTtcbiAgICB3aWR0aDogMi40Mzc1cmVtO1xuICB9XG59XG5cbi5mb290ZXItdG9wIC5zb2NpYWwtaWNvbnMgLnNvY2lhbC1pY29uIC5pY29uLWxpbmtlZGluIHtcbiAgaGVpZ2h0OiA0LjEyNXJlbTtcbiAgd2lkdGg6IDQuMTI1cmVtO1xuICBwYWRkaW5nOiAwLjY4NzVyZW07XG59XG5cbi5zb2NpYWwtaWNvbnMgLnNvY2lhbC1pY29uIC5pY29uLWxpbmtlZGluOmhvdmVyIHtcbiAgZmlsbDogIzAwN2JiNjtcbn1cblxuLnNvY2lhbC1pY29ucyAuc29jaWFsLWljb24gLmljb24tbGlua2VkaW4tc3F1YXJlIHtcbiAgaGVpZ2h0OiAxLjg3NXJlbTtcbiAgd2lkdGg6IDEuODc1cmVtO1xuICBmaWxsOiAjZmZmO1xuICBwYWRkaW5nOiAwLjM3NXJlbTtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRyZW0pIHtcbiAgLnNvY2lhbC1pY29ucyAuc29jaWFsLWljb24gLmljb24tbGlua2VkaW4tc3F1YXJlIHtcbiAgICBoZWlnaHQ6IDIuNDM3NXJlbTtcbiAgICB3aWR0aDogMi40Mzc1cmVtO1xuICB9XG59XG5cbi5mb290ZXItdG9wIC5zb2NpYWwtaWNvbnMgLnNvY2lhbC1pY29uIC5pY29uLWxpbmtlZGluLXNxdWFyZSB7XG4gIGhlaWdodDogNC4xMjVyZW07XG4gIHdpZHRoOiA0LjEyNXJlbTtcbiAgcGFkZGluZzogMC42ODc1cmVtO1xufVxuXG4uc29jaWFsLWljb25zIC5zb2NpYWwtaWNvbiAuaWNvbi1saW5rZWRpbi1zcXVhcmU6aG92ZXIge1xuICBmaWxsOiAjMDA3YmI2O1xufVxuXG4uc29jaWFsLWljb25zIC5zb2NpYWwtaWNvbiAuaWNvbi1waW50ZXJlc3Qge1xuICBoZWlnaHQ6IDEuODc1cmVtO1xuICB3aWR0aDogMS44NzVyZW07XG4gIGZpbGw6ICNmZmY7XG4gIHBhZGRpbmc6IDAuMzc1cmVtO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NHJlbSkge1xuICAuc29jaWFsLWljb25zIC5zb2NpYWwtaWNvbiAuaWNvbi1waW50ZXJlc3Qge1xuICAgIGhlaWdodDogMi40Mzc1cmVtO1xuICAgIHdpZHRoOiAyLjQzNzVyZW07XG4gIH1cbn1cblxuLmZvb3Rlci10b3AgLnNvY2lhbC1pY29ucyAuc29jaWFsLWljb24gLmljb24tcGludGVyZXN0IHtcbiAgaGVpZ2h0OiA0LjEyNXJlbTtcbiAgd2lkdGg6IDQuMTI1cmVtO1xuICBwYWRkaW5nOiAwLjY4NzVyZW07XG59XG5cbi5zb2NpYWwtaWNvbnMgLnNvY2lhbC1pY29uIC5pY29uLXBpbnRlcmVzdDpob3ZlciB7XG4gIGZpbGw6ICNjYjIwMjc7XG59XG5cbi5zb2NpYWwtaWNvbnMgLnNvY2lhbC1pY29uIC5pY29uLXBpbnRlcmVzdC1zcXVhcmUge1xuICBoZWlnaHQ6IDEuODc1cmVtO1xuICB3aWR0aDogMS44NzVyZW07XG4gIGZpbGw6ICNmZmY7XG4gIHBhZGRpbmc6IDAuMzc1cmVtO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NHJlbSkge1xuICAuc29jaWFsLWljb25zIC5zb2NpYWwtaWNvbiAuaWNvbi1waW50ZXJlc3Qtc3F1YXJlIHtcbiAgICBoZWlnaHQ6IDIuNDM3NXJlbTtcbiAgICB3aWR0aDogMi40Mzc1cmVtO1xuICB9XG59XG5cbi5mb290ZXItdG9wIC5zb2NpYWwtaWNvbnMgLnNvY2lhbC1pY29uIC5pY29uLXBpbnRlcmVzdC1zcXVhcmUge1xuICBoZWlnaHQ6IDQuMTI1cmVtO1xuICB3aWR0aDogNC4xMjVyZW07XG4gIHBhZGRpbmc6IDAuNjg3NXJlbTtcbn1cblxuLnNvY2lhbC1pY29ucyAuc29jaWFsLWljb24gLmljb24tcGludGVyZXN0LXNxdWFyZTpob3ZlciB7XG4gIGZpbGw6ICNjYjIwMjc7XG59XG5cbi5zb2NpYWwtaWNvbnMgLnNvY2lhbC1pY29uIC5pY29uLXJzcyB7XG4gIGhlaWdodDogMS44NzVyZW07XG4gIHdpZHRoOiAxLjg3NXJlbTtcbiAgZmlsbDogI2ZmZjtcbiAgcGFkZGluZzogMC4zNzVyZW07XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0cmVtKSB7XG4gIC5zb2NpYWwtaWNvbnMgLnNvY2lhbC1pY29uIC5pY29uLXJzcyB7XG4gICAgaGVpZ2h0OiAyLjQzNzVyZW07XG4gICAgd2lkdGg6IDIuNDM3NXJlbTtcbiAgfVxufVxuXG4uZm9vdGVyLXRvcCAuc29jaWFsLWljb25zIC5zb2NpYWwtaWNvbiAuaWNvbi1yc3Mge1xuICBoZWlnaHQ6IDQuMTI1cmVtO1xuICB3aWR0aDogNC4xMjVyZW07XG4gIHBhZGRpbmc6IDAuNjg3NXJlbTtcbn1cblxuLnNvY2lhbC1pY29ucyAuc29jaWFsLWljb24gLmljb24tcnNzOmhvdmVyIHtcbiAgZmlsbDogI2Y5MDtcbn1cblxuLnNvY2lhbC1pY29ucyAuc29jaWFsLWljb24gLmljb24tcnNzLXNxdWFyZSB7XG4gIGhlaWdodDogMS44NzVyZW07XG4gIHdpZHRoOiAxLjg3NXJlbTtcbiAgZmlsbDogI2ZmZjtcbiAgcGFkZGluZzogMC4zNzVyZW07XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0cmVtKSB7XG4gIC5zb2NpYWwtaWNvbnMgLnNvY2lhbC1pY29uIC5pY29uLXJzcy1zcXVhcmUge1xuICAgIGhlaWdodDogMi40Mzc1cmVtO1xuICAgIHdpZHRoOiAyLjQzNzVyZW07XG4gIH1cbn1cblxuLmZvb3Rlci10b3AgLnNvY2lhbC1pY29ucyAuc29jaWFsLWljb24gLmljb24tcnNzLXNxdWFyZSB7XG4gIGhlaWdodDogNC4xMjVyZW07XG4gIHdpZHRoOiA0LjEyNXJlbTtcbiAgcGFkZGluZzogMC42ODc1cmVtO1xufVxuXG4uc29jaWFsLWljb25zIC5zb2NpYWwtaWNvbiAuaWNvbi1yc3Mtc3F1YXJlOmhvdmVyIHtcbiAgZmlsbDogI2Y5MDtcbn1cblxuLnNvY2lhbC1pY29ucyAuc29jaWFsLWljb24gLmljb24tdHdpdHRlciB7XG4gIGhlaWdodDogMS44NzVyZW07XG4gIHdpZHRoOiAxLjg3NXJlbTtcbiAgZmlsbDogI2ZmZjtcbiAgcGFkZGluZzogMC4zNzVyZW07XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0cmVtKSB7XG4gIC5zb2NpYWwtaWNvbnMgLnNvY2lhbC1pY29uIC5pY29uLXR3aXR0ZXIge1xuICAgIGhlaWdodDogMi40Mzc1cmVtO1xuICAgIHdpZHRoOiAyLjQzNzVyZW07XG4gIH1cbn1cblxuLmZvb3Rlci10b3AgLnNvY2lhbC1pY29ucyAuc29jaWFsLWljb24gLmljb24tdHdpdHRlciB7XG4gIGhlaWdodDogNC4xMjVyZW07XG4gIHdpZHRoOiA0LjEyNXJlbTtcbiAgcGFkZGluZzogMC42ODc1cmVtO1xufVxuXG4uc29jaWFsLWljb25zIC5zb2NpYWwtaWNvbiAuaWNvbi10d2l0dGVyOmhvdmVyIHtcbiAgZmlsbDogIzAwYWNlZDtcbn1cblxuLnNvY2lhbC1pY29ucyAuc29jaWFsLWljb24gLmljb24tdHdpdHRlci1zcXVhcmUge1xuICBoZWlnaHQ6IDEuODc1cmVtO1xuICB3aWR0aDogMS44NzVyZW07XG4gIGZpbGw6ICNmZmY7XG4gIHBhZGRpbmc6IDAuMzc1cmVtO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NHJlbSkge1xuICAuc29jaWFsLWljb25zIC5zb2NpYWwtaWNvbiAuaWNvbi10d2l0dGVyLXNxdWFyZSB7XG4gICAgaGVpZ2h0OiAyLjQzNzVyZW07XG4gICAgd2lkdGg6IDIuNDM3NXJlbTtcbiAgfVxufVxuXG4uZm9vdGVyLXRvcCAuc29jaWFsLWljb25zIC5zb2NpYWwtaWNvbiAuaWNvbi10d2l0dGVyLXNxdWFyZSB7XG4gIGhlaWdodDogNC4xMjVyZW07XG4gIHdpZHRoOiA0LjEyNXJlbTtcbiAgcGFkZGluZzogMC42ODc1cmVtO1xufVxuXG4uc29jaWFsLWljb25zIC5zb2NpYWwtaWNvbiAuaWNvbi10d2l0dGVyLXNxdWFyZTpob3ZlciB7XG4gIGZpbGw6ICMwMGFjZWQ7XG59XG5cbi5zb2NpYWwtaWNvbnMgLnNvY2lhbC1pY29uIC5pY29uLXlvdXR1YmUge1xuICBoZWlnaHQ6IDEuODc1cmVtO1xuICB3aWR0aDogMS44NzVyZW07XG4gIGZpbGw6ICNmZmY7XG4gIHBhZGRpbmc6IDAuMzc1cmVtO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NHJlbSkge1xuICAuc29jaWFsLWljb25zIC5zb2NpYWwtaWNvbiAuaWNvbi15b3V0dWJlIHtcbiAgICBoZWlnaHQ6IDIuNDM3NXJlbTtcbiAgICB3aWR0aDogMi40Mzc1cmVtO1xuICB9XG59XG5cbi5mb290ZXItdG9wIC5zb2NpYWwtaWNvbnMgLnNvY2lhbC1pY29uIC5pY29uLXlvdXR1YmUge1xuICBoZWlnaHQ6IDQuMTI1cmVtO1xuICB3aWR0aDogNC4xMjVyZW07XG4gIHBhZGRpbmc6IDAuNjg3NXJlbTtcbn1cblxuLnNvY2lhbC1pY29ucyAuc29jaWFsLWljb24gLmljb24teW91dHViZTpob3ZlciB7XG4gIGZpbGw6ICNiMDA7XG59XG5cbi5zb2NpYWwtaWNvbnMgLnNvY2lhbC1pY29uIC5pY29uLXlvdXR1YmUtc3F1YXJlIHtcbiAgaGVpZ2h0OiAxLjg3NXJlbTtcbiAgd2lkdGg6IDEuODc1cmVtO1xuICBmaWxsOiAjZmZmO1xuICBwYWRkaW5nOiAwLjM3NXJlbTtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRyZW0pIHtcbiAgLnNvY2lhbC1pY29ucyAuc29jaWFsLWljb24gLmljb24teW91dHViZS1zcXVhcmUge1xuICAgIGhlaWdodDogMi40Mzc1cmVtO1xuICAgIHdpZHRoOiAyLjQzNzVyZW07XG4gIH1cbn1cblxuLmZvb3Rlci10b3AgLnNvY2lhbC1pY29ucyAuc29jaWFsLWljb24gLmljb24teW91dHViZS1zcXVhcmUge1xuICBoZWlnaHQ6IDQuMTI1cmVtO1xuICB3aWR0aDogNC4xMjVyZW07XG4gIHBhZGRpbmc6IDAuNjg3NXJlbTtcbn1cblxuLnNvY2lhbC1pY29ucyAuc29jaWFsLWljb24gLmljb24teW91dHViZS1zcXVhcmU6aG92ZXIge1xuICBmaWxsOiAjYjAwO1xufVxuXG4uc29jaWFsLWljb25zIC5zb2NpYWwtaWNvbiAuaWNvbi1yc3MsXG4uZm9vdGVyLXRvcCAuc29jaWFsLWljb25zIC5zb2NpYWwtaWNvbiAuaWNvbi1yc3Mge1xuICBwYWRkaW5nOiAwO1xufVxuXG4uZm9vdGVyLXRvcCAuc29jaWFsLWljb25zIC5zb2NpYWwtaWNvbiB7XG4gIG1hcmdpbi1yaWdodDogMXJlbTtcbn1cblxuLnNvY2lhbC1pY29ucyAuc29jaWFsLWljb246bGFzdC1jaGlsZCxcbi5mb290ZXItdG9wIC5zb2NpYWwtaWNvbnMgLnNvY2lhbC1pY29uOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG59XG5cbi5zb2NpYWwtaWNvbnMgLnNvY2lhbC1pY29uIGEge1xuICBib3JkZXItYm90dG9tOiBub25lO1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiAyLjQzNzVyZW07XG59XG5cbi5pY29uLWxlZnQtYXJyb3csXG4uaWNvbi1yaWdodC1hcnJvdyxcbi5pY29uLW5hdi1hcnJvdyB7XG4gIGZpbGw6IG5vbmU7XG4gIHN0cm9rZTogIzAwMDtcbiAgc3Ryb2tlLWxpbmVjYXA6IHJvdW5kO1xuICBzdHJva2UtbGluZWpvaW46IHJvdW5kO1xuICBzdHJva2UtbWl0ZXJsaW1pdDogMTA7XG59XG5cbi5tb3JlLWljb24ge1xuICBoZWlnaHQ6IDEuMDYyNXJlbTtcbiAgd2lkdGg6IDFyZW07XG4gIGJhY2tncm91bmQ6IHVybChcImFzc2V0cy9pbWFnZXMvc3ZnLWljb25zL2JhcnMuc3ZnXCIpIG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi5mb290ZXItYm90dG9tIHtcbiAgcGFkZGluZy1ib3R0b206IDQuMzc1cmVtO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMS4yNXJlbSkge1xuICAuZm9vdGVyLWJvdHRvbSB7XG4gICAgcGFkZGluZy1ib3R0b206IDEwLjEyNXJlbTtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NHJlbSkge1xuICAuZm9vdGVyLWJvdHRvbSB7XG4gICAgcGFkZGluZy1ib3R0b206IDA7XG4gIH1cbn1cblxuLm1vYmlsZS1uYXYtbWVudSB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHdpZHRoOiAwO1xuICAtd2Via2l0LXRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4ycyBsaW5lYXIsIHdpZHRoIDAuMnMgbGluZWFyO1xuICAtbW96LXRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4ycyBsaW5lYXIsIHdpZHRoIDAuMnMgbGluZWFyO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMnMgbGluZWFyLCB3aWR0aCAwLjJzIGxpbmVhcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB6LWluZGV4OiAxMDA7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0cmVtKSB7XG4gIC5tb2JpbGUtbmF2LW1lbnUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLm1vYmlsZS1uYXYtbWVudS5tb3JlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjcpO1xufVxuXG4ubW9iaWxlLW5hdi1tZW51Lm1vcmUsXG4ubW9iaWxlLW5hdi1tZW51IC5zdWItbWVudSB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4ubW9iaWxlLW5hdi1tZW51IC5zdWItbWVudSB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogb3BhY2l0eSAwLjVzIGxpbmVhcjtcbiAgLW1vei10cmFuc2l0aW9uOiBvcGFjaXR5IDAuNXMgbGluZWFyO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuNXMgbGluZWFyO1xufVxuXG4uYWRtaW4tYmFyIC5tb2JpbGUtbmF2LW1lbnUge1xuICBwYWRkaW5nLXRvcDogMy41cmVtO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OC45Mzc1cmVtKSB7XG4gIC5hZG1pbi1iYXIgLm1vYmlsZS1uYXYtbWVudSB7XG4gICAgcGFkZGluZy10b3A6IDIuNXJlbTtcbiAgfVxufVxuXG4ubW9iaWxlLW5hdi1tZW51IGxpIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4ubW9iaWxlLW5hdi1tZW51IC5tb2JpbGUtbmF2ID4gbGkge1xuICBmbGV4OiAxIDAgMjAlO1xuICBtYXJnaW46IDA7XG59XG5cbi5tb2JpbGUtbmF2LW1lbnUgLm1vYmlsZS1uYXYgPiBsaSBhIHtcbiAgcGFkZGluZzogMDtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDByZW0pIHtcbiAgLm1vYmlsZS1uYXYtbWVudSAubW9iaWxlLW5hdiA+IGxpIGEge1xuICAgIHBhZGRpbmc6IDAgMC4zMTI1cmVtO1xuICB9XG59XG5cbi5tb2JpbGUtbmF2LW1lbnUgLm1vYmlsZS1uYXYge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIGhlaWdodDogNHJlbTtcbiAgd2lkdGg6IDEwMHZ3O1xuICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG4gIGJvdHRvbTogMCAhaW1wb3J0YW50O1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIHRyYW5zaXRpb246IGJvdHRvbSAwLjc1cyBlYXNlLWluLW91dDtcbn1cblxuLm1vYmlsZS1uYXYtbWVudSAubW9iaWxlLW5hdiA+IGxpOm50aC1jaGlsZCgtbis1KSB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogb3BhY2l0eSAwLjVzIGVhc2U7XG4gIC1tb3otdHJhbnNpdGlvbjogb3BhY2l0eSAwLjVzIGVhc2U7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC41cyBlYXNlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMmMyYzMxO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjEpO1xuICBmbGV4OiAxO1xuICBoZWlnaHQ6IDQuMzEyNXJlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4ubW9iaWxlLW5hdi1tZW51IC5tb2JpbGUtbmF2ID4gbGk6bnRoLWNoaWxkKC1uKzUpID4gYSB7XG4gIGNvbG9yOiAjZmZmO1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1mYW1pbHk6IFwiZnJlaWdodC1zYW5zLXByb1wiLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDEuMTI1cmVtO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGhlaWdodDogMTAwJTtcbiAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDByZW0pIHtcbiAgLm1vYmlsZS1uYXYtbWVudSAubW9iaWxlLW5hdiA+IGxpOm50aC1jaGlsZCgtbis1KSA+IGEge1xuICAgIGZvbnQtc2l6ZTogMS42MjVyZW07XG4gIH1cbn1cblxuLm1vYmlsZS1uYXYtbWVudSAubW9iaWxlLW5hdiA+IGxpOm50aC1jaGlsZCgtbis1KSA+IGEgc3BhbiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gIHRvcDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4udGFwYmFyLWhpZGRlbiAubW9iaWxlLW5hdi1tZW51IC5tb2JpbGUtbmF2IHtcbiAgYm90dG9tOiAtMTAwJSAhaW1wb3J0YW50O1xufVxuXG4ubW9iaWxlLW1lbnUtbW9yZS1saW5rIHtcbiAgbWluLXdpZHRoOiA1LjMxMjVyZW07XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwcmVtKSB7XG4gIC5tb2JpbGUtbWVudS1tb3JlLWxpbmsgc3BhbiB7XG4gICAgbWluLXdpZHRoOiA5LjA2MjVyZW07XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgfVxufVxuXG4ubW9iaWxlLW1lbnUtbW9yZS1saW5rIHNwYW4gLm1vcmUtaWNvbiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdG9wOiAwLjE4NzVyZW07XG4gIHJpZ2h0OiAwO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MHJlbSkge1xuICAubW9iaWxlLW1lbnUtbW9yZS1saW5rIHNwYW4gLm1vcmUtaWNvbiB7XG4gICAgaGVpZ2h0OiAxLjU2MjVyZW07XG4gICAgd2lkdGg6IDIuMjVyZW07XG4gICAgdG9wOiAwLjI1cmVtO1xuICB9XG59XG5cbi5tb2JpbGUtbmF2LW1lbnUtaGlkZGVuIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICAtd2Via2l0LXRyYW5zaXRpb246IG9wYWNpdHkgMC41cyBsaW5lYXI7XG4gIC1tb3otdHJhbnNpdGlvbjogb3BhY2l0eSAwLjVzIGxpbmVhcjtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjVzIGxpbmVhcjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1heC1oZWlnaHQ6IGNhbGMoMTAwJSAtIDcwcHgpO1xuICBvcGFjaXR5OiAwO1xuICBvdmVyZmxvdzogYXV0bztcbiAgcGFkZGluZzogNS4yNXJlbSAwO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIHdpZHRoOiAxMDAlO1xuICB6LWluZGV4OiAtMTtcbn1cblxuLm1vYmlsZS1tZW51LW1vcmUge1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4ubW9iaWxlLW5hdi1tZW51IC5tb2JpbGUtbmF2IC5tb2JpbGUtbmF2LW1lbnUtbW9yZSxcbi5tb2JpbGUtbmF2LW1lbnUgLm1vYmlsZS1uYXYgPiAuc3ViLW1lbnUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzgwODA4MDtcbiAgaGVpZ2h0OiAxMDB2aDtcbn1cblxuLm1vYmlsZS1tZW51LW1vcmU6bm90KC5zdWItbWVudS1tb3JlKSAubW9iaWxlLW5hdi1tZW51LWhpZGRlbiB7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5tb2JpbGUtbmF2LW1lbnUubW9yZSAubW9iaWxlLW5hdi1tZW51LWhpZGRlbiB7XG4gIHZpc2liaWxpdHk6IHZpc2libGU7XG59XG5cbi5tb2JpbGUtbmF2LW1lbnUubW9yZSAubW9iaWxlLW5hdi1tZW51LWhpZGRlbiBsaSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgY2xlYXI6IGJvdGg7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmbG9hdDogcmlnaHQ7XG4gIG1hcmdpbjogMDtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5tb2JpbGUtbmF2LW1lbnUubW9yZSAubW9iaWxlLW5hdi1tZW51LWhpZGRlbiBsaSAuc3ViLW1lbnUge1xuICBvcGFjaXR5OiAxO1xuICBwYWRkaW5nLWxlZnQ6IDEwJTtcbn1cblxuLnN1Yi1tZW51LW1vcmUgLm1vYmlsZS1uYXYtbWVudS5tb3JlIC5tb2JpbGUtbmF2LW1lbnUtaGlkZGVuIGxpIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLm1vYmlsZS1uYXYtbWVudS5tb3JlIC5tb2JpbGUtbmF2LW1lbnUtaGlkZGVuIGxpIGEge1xuICBjb2xvcjogI2ZmZjtcbiAgZm9udC1mYW1pbHk6IFwiZnJlaWdodC1zYW5zLXByb1wiLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDEuMjVyZW07XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgcGFkZGluZzogMC42MjVyZW0gMS4yNXJlbTtcbn1cblxuLm1vYmlsZS1uYXYtbWVudSAubW9iaWxlLW5hdiB1bCB7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG59XG5cbi5tb2JpbGUtbWVudS1tb3JlOm5vdCguc3ViLW1lbnUtbW9yZSkgLm1vYmlsZS1uYXYtbWVudSAubW9iaWxlLW5hdiB1bCB7XG4gIHRvcDogMDtcbn1cblxuLmNsb3NlLW1vYmlsZS1tZW51IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDAuNjI1cmVtO1xuICByaWdodDogMC43NXJlbTtcbiAgaGVpZ2h0OiAycmVtO1xuICB3aWR0aDogMnJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBhZGRpbmc6IDA7XG4gIHotaW5kZXg6IDE7XG59XG5cbi5hZG1pbi1iYXIgLmNsb3NlLW1vYmlsZS1tZW51IHtcbiAgdG9wOiAzLjVyZW07XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4LjkzNzVyZW0pIHtcbiAgLmFkbWluLWJhciAuY2xvc2UtbW9iaWxlLW1lbnUge1xuICAgIHRvcDogMi41cmVtO1xuICB9XG59XG5cbi5jbG9zZS1tb2JpbGUtbWVudTpob3ZlciwgLmNsb3NlLW1vYmlsZS1tZW51OmFjdGl2ZSwgLmNsb3NlLW1vYmlsZS1tZW51OmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbi5jbG9zZS1tb2JpbGUtbWVudTpob3ZlciBzdmcsIC5jbG9zZS1tb2JpbGUtbWVudTphY3RpdmUgc3ZnLCAuY2xvc2UtbW9iaWxlLW1lbnU6Zm9jdXMgc3ZnIHtcbiAgb3BhY2l0eTogMC42O1xufVxuXG4ubW9yZSAuY2xvc2UtbW9iaWxlLW1lbnUge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLmNsb3NlLW1vYmlsZS1tZW51IHN2ZyB7XG4gIGhlaWdodDogMTAwJTtcbiAgd2lkdGg6IDEwMCU7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogb3BhY2l0eSAwLjVzIGVhc2U7XG4gIC1tb3otdHJhbnNpdGlvbjogb3BhY2l0eSAwLjVzIGVhc2U7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC41cyBlYXNlO1xuICBmaWxsOiAjZmZmO1xufVxuXG4ubW9iaWxlLW5hdi5kcm9wZG93biAubWVudS1pdGVtLWhhcy1jaGlsZHJlbjpob3ZlciAuc3ViLW1lbnUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4ubW9iaWxlLW1lbnUtbW9yZTpub3QoLnN1Yi1tZW51LW1vcmUpIC5tb2JpbGUtbmF2LmRyb3Bkb3duIC5tZW51LWl0ZW0taGFzLWNoaWxkcmVuOmhvdmVyIC5zdWItbWVudSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBsZWZ0OiBhdXRvO1xuICBvcGFjaXR5OiAxO1xuICByaWdodDogMDtcbn1cblxuLm1vYmlsZS1uYXYuZHJvcGRvd24gLnZpc2libGUgLnN1Yi1tZW51LFxuLm1vYmlsZS1uYXYuZHJvcGRvd24gLnZpc2libGU6aG92ZXIgLnN1Yi1tZW51LFxuLm1vYmlsZS1uYXYuZHJvcGRvd24gLnZpc2libGU6Zm9jdXMgLnN1Yi1tZW51LFxuLm1vYmlsZS1uYXYuZHJvcGRvd24gLnZpc2libGU6YWN0aXZlIC5zdWItbWVudSB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiBhdXRvO1xuICByaWdodDogMDtcbiAgYm90dG9tOiA1LjI1cmVtO1xuICBsZWZ0OiBhdXRvO1xuICBkaXNwbGF5OiBibG9jaztcbiAgb3BhY2l0eTogMTtcbiAgd2lkdGg6IDUwdnc7XG59XG5cbi5tb2JpbGUtbmF2LmRyb3Bkb3duIC52aXNpYmxlIC5zdWItbWVudSAuc3ViLW1lbnUsXG4ubW9iaWxlLW5hdi5kcm9wZG93biAudmlzaWJsZTpob3ZlciAuc3ViLW1lbnUgLnN1Yi1tZW51LFxuLm1vYmlsZS1uYXYuZHJvcGRvd24gLnZpc2libGU6Zm9jdXMgLnN1Yi1tZW51IC5zdWItbWVudSxcbi5tb2JpbGUtbmF2LmRyb3Bkb3duIC52aXNpYmxlOmFjdGl2ZSAuc3ViLW1lbnUgLnN1Yi1tZW51IHtcbiAgYm90dG9tOiAwO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OHJlbSkge1xuICAubW9iaWxlLW5hdi5kcm9wZG93biAudmlzaWJsZSAuc3ViLW1lbnUgLnN1Yi1tZW51LFxuICAubW9iaWxlLW5hdi5kcm9wZG93biAudmlzaWJsZTpob3ZlciAuc3ViLW1lbnUgLnN1Yi1tZW51LFxuICAubW9iaWxlLW5hdi5kcm9wZG93biAudmlzaWJsZTpmb2N1cyAuc3ViLW1lbnUgLnN1Yi1tZW51LFxuICAubW9iaWxlLW5hdi5kcm9wZG93biAudmlzaWJsZTphY3RpdmUgLnN1Yi1tZW51IC5zdWItbWVudSB7XG4gICAgYm90dG9tOiBhdXRvO1xuICB9XG59XG5cbi5tb2JpbGUtbmF2LmRyb3Bkb3duIC52aXNpYmxlIC5zdWItbWVudSAuc3ViLW1lbnUsXG4ubW9iaWxlLW5hdi5kcm9wZG93biAudmlzaWJsZTpob3ZlciAuc3ViLW1lbnUgLnN1Yi1tZW51LFxuLm1vYmlsZS1uYXYuZHJvcGRvd24gLnZpc2libGU6Zm9jdXMgLnN1Yi1tZW51IC5zdWItbWVudSxcbi5tb2JpbGUtbmF2LmRyb3Bkb3duIC52aXNpYmxlOmFjdGl2ZSAuc3ViLW1lbnUgLnN1Yi1tZW51IHtcbiAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4ubW9iaWxlLW5hdi5kcm9wZG93biAuc3ViLW1lbnUge1xuICBsZWZ0OiAwO1xuICBvcGFjaXR5OiAwO1xuICB3aWR0aDogNTB2dztcbiAgei1pbmRleDogLTE7XG59XG5cbi5tb2JpbGUtbmF2LmRyb3Bkb3duIC5zdWItbWVudSBhIHtcbiAgY29sb3I6ICNmZmY7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgcGFkZGluZzogMC42MjVyZW0gMS4yNXJlbTtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cblxuLm1vYmlsZS1uYXYuZHJvcGRvd24gLnN1Yi1tZW51IGxpIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZsb2F0OiBub25lO1xuICBtYXJnaW46IDA7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4cmVtKSB7XG4gIC5tb2JpbGUtbmF2LmRyb3Bkb3duIC5zdWItbWVudSB7XG4gICAgbGVmdDogYXV0bztcbiAgICByaWdodDogMDtcbiAgfVxufVxuXG4ubW9iaWxlLW5hdi5kcm9wZG93biAudmlzaWJsZSAuc3ViLW1lbnUge1xuICB6LWluZGV4OiAxO1xufVxuXG4ubW9iaWxlLW5hdi1tZW51LWhpZGRlbjo6YWZ0ZXIge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHJpZ2h0OiAwLjkzNzVyZW07XG4gIGJvdHRvbTogNC42ODc1cmVtO1xuICAtd2Via2l0LXRyYW5zaXRpb246IG9wYWNpdHkgMC4xOHMgZWFzZS1pbi1vdXQ7XG4gIC1tb3otdHJhbnNpdGlvbjogb3BhY2l0eSAwLjE4cyBlYXNlLWluLW91dDtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjE4cyBlYXNlLWluLW91dDtcbiAgYm9yZGVyLWxlZnQ6IDAuNjI1cmVtIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmlnaHQ6IDAuNjI1cmVtIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItdG9wOiAwLjYyNXJlbSBzb2xpZCAjZmZmO1xuICBjb250ZW50OiBcIlwiO1xuICBvcGFjaXR5OiAwO1xufVxuXG4ubW9iaWxlLW5hdi1tZW51LWhpZGRlbi5zY3JvbGw6OmFmdGVyIHtcbiAgb3BhY2l0eTogMTtcbn1cblxuLm5vLWpzLmFkbWluLWJhciAubW9iaWxlLW5hdi1tZW51IHtcbiAgcGFkZGluZy10b3A6IDA7XG59XG5cbi5uby1qcyAubW9iaWxlLW5hdi1tZW51IHtcbiAgaGVpZ2h0OiA0cmVtO1xuICB3aWR0aDogMTAwJTtcbiAgLW1zLW92ZXJmbG93LXN0eWxlOiAtbXMtYXV0b2hpZGluZy1zY3JvbGxiYXI7XG4gIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgYm90dG9tOiAwO1xuICBmb250LXNpemU6IDA7XG4gIG92ZXJmbG93LXg6IGF1dG87XG4gIHRvcDogYXV0bztcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cblxuLm5vLWpzIC5tb2JpbGUtbmF2LW1lbnUgPiBkaXYge1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG59XG5cbi5uby1qcyAubW9iaWxlLW5hdi1tZW51ID4gZGl2OjpiZWZvcmUsIC5uby1qcyAubW9iaWxlLW5hdi1tZW51ID4gZGl2OjphZnRlciB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgYm90dG9tOiAwO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHdpZHRoOiAyNSU7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICB6LWluZGV4OiAyMDtcbn1cblxuLm5vLWpzIC5tb2JpbGUtbmF2LW1lbnUgPiBkaXY6OmFmdGVyIHtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIGxlZnQsIHdoaXRlIDAlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApIDEwMCUpO1xuICByaWdodDogMDtcbn1cblxuLm5vLWpzIC5tb2JpbGUtbmF2LW1lbnUgPiBkaXY6OmJlZm9yZSB7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byBsZWZ0LCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApIDAlLCB3aGl0ZSAxMDAlKTtcbiAgbGVmdDogMDtcbn1cblxuLm5vLWpzIC5tb2JpbGUtbmF2LW1lbnUgLm1vYmlsZS1uYXYgYSB7XG4gIHBhZGRpbmc6IDAgMC42MjVyZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLm5vLWpzIC5tb2JpbGUtbmF2LW1lbnUgLm1vYmlsZS1uYXYgYSBzcGFuIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgdG9wOiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5uby1qcyAubW9iaWxlLW5hdi1tZW51IC5tb2JpbGUtbmF2ID4gbGk6bnRoLWNoaWxkKG4rNikge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi5uby1qcyAubW9iaWxlLW5hdi1tZW51IC5tb2JpbGUtbmF2ID4gbGk6Zmlyc3Qtb2YtdHlwZSB7XG4gIHBhZGRpbmctbGVmdDogNi4yNXJlbTtcbn1cblxuLm5vLWpzIC5tb2JpbGUtbmF2LW1lbnUgLm1vYmlsZS1uYXYgPiBsaTpsYXN0LW9mLXR5cGUge1xuICBwYWRkaW5nLXJpZ2h0OiA2LjI1cmVtO1xufVxuXG4ubm8tanMgLm1vYmlsZS1uYXYtbWVudSAubW9iaWxlLW5hdiBsaSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogMDtcbiAgaGVpZ2h0OiA0cmVtO1xuICB3aWR0aDogYXV0bztcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmbG9hdDogbm9uZTtcbiAgZm9udC1zaXplOiAwLjc1cmVtO1xuICBtYXJnaW46IDA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbn1cblxuLm5vLWpzIC5tb2JpbGUtbmF2LW1lbnUgLm1vYmlsZS1uYXYgbGk6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xufVxuXG4ubm8tanMgLm1vYmlsZS1uYXYtbWVudSAubW9iaWxlLW5hdiBsaSA+IGEge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1zaXplOiAwLjc1cmVtO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGxpbmUtaGVpZ2h0OiAxLjI7XG59XG5cbi5uby1qcyAubW9iaWxlLW5hdi1tZW51IC5tb2JpbGUtbmF2IGxpLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4gPiBhIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xufVxuXG4ubm8tanMgLm1vYmlsZS1uYXYtbWVudSAubW9iaWxlLW5hdiBsaS5tZW51LWl0ZW0taGFzLWNoaWxkcmVuOmhvdmVyIC5zdWItbWVudSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbGVmdDogMDtcbn1cblxuLm5vLWpzIC5tb2JpbGUtbmF2LW1lbnUgLm1vYmlsZS1uYXYuZHJvcGRvd24gLnN1Yi1tZW51IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0b3A6IGF1dG87XG4gIGxlZnQ6IDA7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZmxvYXQ6IG5vbmU7XG4gIG9wYWNpdHk6IDE7XG4gIHdpZHRoOiBhdXRvO1xuICB6LWluZGV4OiAxO1xufVxuXG4ubm8tanMgLm1vYmlsZS1uYXYtbWVudSAubW9iaWxlLW5hdi5kcm9wZG93biAuc3ViLW1lbnUgYSB7XG4gIGNvbG9yOiAjMmMyZDMxO1xufVxuXG4ubm8tanMgLm1vYmlsZS1uYXYtbWVudSAubW9iaWxlLW5hdi5kcm9wZG93biAuc3ViLW1lbnUgbGkge1xuICBib3JkZXI6IG5vbmU7XG59XG5cbi5uby1qcyAubW9iaWxlLW5hdi1tZW51IC5tZW51LmRyb3Bkb3duIHVsIGEge1xuICB3aWR0aDogYXV0bztcbn1cblxuYSB7XG4gIGNvbG9yOiAjMmMyZDMxO1xufVxuXG5hOnZpc2l0ZWQge1xuICBjb2xvcjogIzJjMmQzMTtcbn1cblxuYTpob3ZlciwgYTpmb2N1cywgYTphY3RpdmUge1xuICBjb2xvcjogI2Y0YjIyNTtcbn1cblxuLm1lbnUge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG5cbi5tZW51OjphZnRlciB7XG4gIGNsZWFyOiBib3RoO1xuICBjb250ZW50OiBcIlwiO1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLm1lbnUgbGkge1xuICBtYXJnaW46IDA7XG59XG5cbi5tZW51IHVsIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuXG4ubWVudSB1bDo6YWZ0ZXIge1xuICBjbGVhcjogYm90aDtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5tZW51Lm1lbnUtaG9yaXpvbnRhbCBsaSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLm1lbnUubWVudS12ZXJ0aWNhbCBsaSB7XG4gIG1hcmdpbjogMDtcbn1cblxuLm1lbnUubWVudS12ZXJ0aWNhbCBhIHtcbiAgYm9yZGVyLWJvdHRvbTogMC4wNjI1cmVtIHNvbGlkICNjY2M7XG4gIHBhZGRpbmc6IDAuNjI1cmVtO1xufVxuXG4ubWVudS5kcm9wZG93biAubWVudS1pdGVtLWhhcy1jaGlsZHJlbiA+IGEge1xuICBwYWRkaW5nLXJpZ2h0OiAxLjgxMjVyZW07XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLm1lbnUuZHJvcGRvd24gLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4gPiBhOjphZnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIHJpZ2h0OiAwLjMxMjVyZW07XG4gIGhlaWdodDogMC41cmVtO1xuICB3aWR0aDogMC42ODc1cmVtO1xuICBiYWNrZ3JvdW5kOiB1cmwoXCJhc3NldHMvaW1hZ2VzL3N2Zy1pY29ucy9uYXYtYXJyb3cuc3ZnXCIpIG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICBjb250ZW50OiBcIlwiO1xuICBtYXJnaW46IC0wLjI1cmVtIDAgMCAwLjM3NXJlbTtcbn1cblxuLm1lbnUuZHJvcGRvd24gLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4gLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4gYTo6YWZ0ZXIge1xuICBsZWZ0OiAwLjEyNXJlbTtcbiAgdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xufVxuXG4ubWVudS5kcm9wZG93biB1bCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogLTk5OWVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMmMyYzMxO1xuICBib3gtc2hhZG93OiAwIDNweCAzcHggcmdiYSgwLCAwLCAwLCAwLjIpO1xuICBkaXNwbGF5OiBub25lO1xuICBmbG9hdDogbGVmdDtcbiAgei1pbmRleDogOTk5OTk7XG59XG5cbi5tZW51LmRyb3Bkb3duIHVsIHVsIHtcbiAgbGVmdDogLTk5OWVtO1xuICB0b3A6IDA7XG59XG5cbi5tZW51LmRyb3Bkb3duIHVsIHVsIHVsIGxpIHtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cblxuLm1lbnUuZHJvcGRvd24gdWwgbGkge1xuICBmbG9hdDogbm9uZTtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG59XG5cbi5tZW51LmRyb3Bkb3duIHVsIGxpIGEge1xuICBmb250LXNpemU6IDAuOTM3NXJlbTtcbiAgbWFyZ2luOiAwO1xufVxuXG4ubWVudS5kcm9wZG93biB1bCBsaTpob3ZlciA+IHVsLFxuLm1lbnUuZHJvcGRvd24gdWwgbGkuZm9jdXMgPiB1bCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICByaWdodDogMTAwJTtcbn1cblxuLm1lbnUuZHJvcGRvd24gdWwgYSB7XG4gIGhlaWdodDogYXV0bztcbiAgd2lkdGg6IGF1dG87XG4gIG1pbi13aWR0aDogMTIuNXJlbTtcbn1cblxuLm1lbnUuZHJvcGRvd24gbGk6aG92ZXIgPiB1bCxcbi5tZW51LmRyb3Bkb3duIC5mb2N1cyA+IHVsIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGxlZnQ6IGF1dG87XG59XG5cbi5tZW51LmRyb3Bkb3duIGxpIHtcbiAgZmxvYXQ6IGxlZnQ7XG59XG5cbi5tZW51IGEge1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgYm9yZGVyOiBub25lO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMDYyNXJlbTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NHJlbSkge1xuICAubWVudSBhOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kOiAjZjRiMjI1O1xuICB9XG59XG5cbi5tYWluLW5hdmlnYXRpb24ge1xuICBoZWlnaHQ6IGF1dG87XG4gIHdpZHRoOiAxMDAlO1xuICBjbGVhcjogYm90aDtcbiAgZGlzcGxheTogbm9uZTtcbiAgZmxvYXQ6IGxlZnQ7XG4gIG1heC13aWR0aDogODByZW07XG4gIHBhZGRpbmc6IDA7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0cmVtKSB7XG4gIC5tYWluLW5hdmlnYXRpb24ge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW4tbGVmdDogMTFyZW07XG4gICAgd2lkdGg6IGF1dG87XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODUuMzc1cmVtKSB7XG4gIC5tYWluLW5hdmlnYXRpb24ge1xuICAgIG1hcmdpbi1sZWZ0OiAxMy4zNzVyZW07XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTA1cmVtKSB7XG4gIC5tYWluLW5hdmlnYXRpb24ge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG59XG5cbi5tYWluLW5hdmlnYXRpb24gdWwge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4ubWFpbi1uYXZpZ2F0aW9uLnRvZ2dsZWQgdWwge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLm1haW4tbmF2aWdhdGlvbiBhIHtcbiAgY29sb3I6ICNmZmY7XG4gIGZvbnQtZmFtaWx5OiBcImZyZWlnaHQtc2Fucy1wcm9cIiwgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogNjAwO1xuICBsZXR0ZXItc3BhY2luZzogMC4wOTM3NXJlbTtcbiAgcGFkZGluZzogMS4zNzVyZW0gMC42MjVyZW0gMS41cmVtIDAuNjI1cmVtO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OHJlbSkge1xuICAubWFpbi1uYXZpZ2F0aW9uIGEge1xuICAgIGZvbnQtc2l6ZTogMC45Mzc1cmVtO1xuICAgIHBhZGRpbmc6IDEuMDYyNXJlbSAwLjVyZW0gMS4xODc1cmVtO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2LjI1cmVtKSB7XG4gIC5tYWluLW5hdmlnYXRpb24gYSB7XG4gICAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgICBtYXJnaW46IDAgMC4zMTI1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC41cmVtO1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNXJlbTtcbiAgfVxufVxuXG4ubWFpbi1uYXZpZ2F0aW9uIC5tZW51LXByaW1hcnktbWVudS1jb250YWluZXIgPiAubWVudSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4ubWVudS10b2dnbGUge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDByZW0pIHtcbiAgLm1lbnUtdG9nZ2xlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi5zaXRlLW1haW4gLmNvbW1lbnQtbmF2aWdhdGlvbiB7XG4gIG1hcmdpbjogMCAwIDEuNXJlbSAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4uY29tbWVudC1uYXZpZ2F0aW9uLm5hdi1wcmV2aW91cyB7XG4gIGhlaWdodDogYXV0bztcbiAgd2lkdGg6IDUwJTtcbiAgZmxvYXQ6IGxlZnQ7XG59XG5cbi5jb21tZW50LW5hdmlnYXRpb24ubmF2LW5leHQge1xuICBoZWlnaHQ6IGF1dG87XG4gIHdpZHRoOiA1MCU7XG4gIGZsb2F0OiByaWdodDtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG59XG5cbnRhYmxlIHtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuICBib3JkZXItc3BhY2luZzogMDtcbiAgcGFkZGluZzogMDtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbnRhYmxlIHRoZWFkIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDByZW0pIHtcbiAgdGFibGUgdGhlYWQge1xuICAgIGRpc3BsYXk6IHRhYmxlLXJvdy1ncm91cDtcbiAgfVxufVxuXG50YWJsZSB0aCxcbnRhYmxlIHRkIHtcbiAgcGFkZGluZzogMC42MjVyZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDByZW0pIHtcbiAgdGFibGUgdGgsXG4gIHRhYmxlIHRkIHtcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICB9XG59XG5cbnRhYmxlIHRoIHtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMDYyNXJlbTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDByZW0pIHtcbiAgdGFibGUgdGgge1xuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gIH1cbn1cblxudGFibGUgdHIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLWJvdHRvbTogMC42MjVyZW07XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwcmVtKSB7XG4gIHRhYmxlIHRyIHtcbiAgICBkaXNwbGF5OiB0YWJsZS1yb3c7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuXG50YWJsZSB0ZCB7XG4gIGJvcmRlcjogMC4wNjI1cmVtIHNvbGlkICNjY2M7XG4gIGJvcmRlci1ib3R0b206IDA7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LXNpemU6IDAuODEyNXJlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MHJlbSkge1xuICB0YWJsZSB0ZCB7XG4gICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgfVxufVxuXG50YWJsZSB0ZDpsYXN0LWNoaWxkIHtcbiAgYm9yZGVyLWJvdHRvbTogMC4wNjI1cmVtIHNvbGlkICNjY2M7XG59XG5cbnRhYmxlIHRkOjpiZWZvcmUge1xuICBjb250ZW50OiBcIlwiO1xuICBmbG9hdDogbGVmdDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwcmVtKSB7XG4gIHRhYmxlIHtcbiAgICBib3JkZXI6IDAuMDYyNXJlbSBzb2xpZCAjY2NjO1xuICB9XG59XG5cbi5tb2RhbCB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMyk7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHotaW5kZXg6IDEwNTA7XG59XG5cbi5tb2RhbDo6YWZ0ZXIge1xuICBjbGVhcjogYm90aDtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5tb2RhbC5tb2RhbC1vcGVuIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgb3ZlcmZsb3cteTogYXV0bztcbn1cblxuLm1vZGFsIC5tb2RhbC1kaWFsb2cge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICB3aWR0aDogYXV0bztcbn1cblxuLm1vZGFsIC5tb2RhbC1jb250ZW50IHtcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgYm9yZGVyLXJhZGl1czogMC4xODc1cmVtO1xuICBib3gtc2hhZG93OiAwIDAgMC42MjVyZW0gMC4xODc1cmVtIHJnYmEoMCwgMCwgMCwgMC41KTtcbiAgb3V0bGluZTogMDtcbiAgcGFkZGluZzogMC42MjVyZW07XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLm1vZGFsIC5tb2RhbC1jb250ZW50IC5tb2RhbC1oZWFkZXIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5tb2RhbCAubW9kYWwtY29udGVudCAubW9kYWwtaGVhZGVyIC5jbG9zZSB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IC0wLjkzNzVyZW07XG4gIHJpZ2h0OiAtMC45Mzc1cmVtO1xuICBoZWlnaHQ6IDEuODc1cmVtO1xuICB3aWR0aDogMS44NzVyZW07XG4gIGJhY2tncm91bmQ6ICMwMDA7XG4gIGJvcmRlcjogMC4xODc1cmVtIHNvbGlkICNmZmY7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgY29sb3I6ICNmZmY7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZm9udC1zaXplOiAxLjg3NXJlbTtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIG91dGxpbmU6IG5vbmU7XG59XG5cbi5tb2RhbCAubW9kYWwtY29udGVudCAubW9kYWwtaGVhZGVyIC5jbG9zZTo6YWZ0ZXI6OmFmdGVyIHtcbiAgY2xlYXI6IGJvdGg7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4ubW9kYWwgLm1vZGFsLWNvbnRlbnQgLm1vZGFsLWJvZHkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5tb2RhbCAuZmx1aWQtZW1iZWQgZW1iZWQsXG4ubW9kYWwgLmZsdWlkLWVtYmVkIG9iamVjdCxcbi5tb2RhbCAuZmx1aWQtZW1iZWQgaWZyYW1lIHtcbiAgYm9yZGVyOiBub25lO1xufVxuXG4uc2l0ZS1mb290ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMWUxZTIyO1xuICBjb2xvcjogI2ZmZjtcbn1cblxuLmZvb3Rlci10b3Age1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMWUxZTIyO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NHJlbSkge1xuICAuZm9vdGVyLXRvcCB7XG4gICAgcGFkZGluZzogMCAxLjI1ZW07XG4gIH1cbn1cblxuLmZvb3Rlci10b3AgLndpZGdldCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5mb290ZXItdG9wIC53aWRnZXQgKyAud2lkZ2V0IHtcbiAgbWFyZ2luLXRvcDogMS41cmVtO1xufVxuXG4uZm9vdGVyLXRvcCAuZm9vdGVyLW5hdmlnYXRpb24ge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NHJlbSkge1xuICAuZm9vdGVyLXRvcCAuZm9vdGVyLW5hdmlnYXRpb24ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG5cbi5mb290ZXItdG9wIC5tZW51LXByaW1hcnktbWVudS1jb250YWluZXIgYSB7XG4gIGNvbG9yOiAjZmZmO1xuICBmb250LWZhbWlseTogXCJmcmVpZ2h0LXNhbnMtcHJvXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgcGFkZGluZzogMS4xMjVyZW0gMC42MjVyZW07XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg1LjM3NXJlbSkge1xuICAuZm9vdGVyLXRvcCAubWVudS1wcmltYXJ5LW1lbnUtY29udGFpbmVyIGEge1xuICAgIHBhZGRpbmc6IDEuMzEyNXJlbSAwLjkzNzVyZW0gMS4yNXJlbTtcbiAgfVxufVxuXG4uZm9vdGVyLXRvcCAubWVudS1wcmltYXJ5LW1lbnUtY29udGFpbmVyIGxpIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmbG9hdDogbm9uZTtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhyZW0pIHtcbiAgLmZvb3Rlci10b3AgLm1lbnUtcHJpbWFyeS1tZW51LWNvbnRhaW5lciBsaSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cbn1cblxuLmZvb3Rlci10b3AgLm1lbnUtcHJpbWFyeS1tZW51LWNvbnRhaW5lciAubWVudS1pdGVtLWhhcy1jaGlsZHJlbiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmZvb3Rlci10b3AgLm1lbnUtcHJpbWFyeS1tZW51LWNvbnRhaW5lciAubWVudS1pdGVtLWhhcy1jaGlsZHJlbiBhIHtcbiAgcGFkZGluZy1yaWdodDogMS43NXJlbTtcbn1cblxuLmZvb3Rlci10b3AgLm1lbnUtcHJpbWFyeS1tZW51LWNvbnRhaW5lciAubWVudS1pdGVtLWhhcy1jaGlsZHJlbiA+IGEge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5mb290ZXItdG9wIC5tZW51LXByaW1hcnktbWVudS1jb250YWluZXIgLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4gPiBhOjphZnRlciB7XG4gIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG59XG5cbi5mb290ZXItdG9wIC5tZW51LXByaW1hcnktbWVudS1jb250YWluZXIgLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4gdWwge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMTAwJTtcbiAgZmxvYXQ6IGxlZnQ7XG59XG5cbi5mb290ZXItdG9wIC5tZW51LXByaW1hcnktbWVudS1jb250YWluZXIgLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4gdWwgdWwge1xuICBib3R0b206IDA7XG4gIHJpZ2h0OiAtOTk5ZW07XG4gIHRvcDogYXV0bztcbn1cblxuLmZvb3Rlci1ib3R0b20ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMmMyYzMxO1xuICBwYWRkaW5nLXRvcDogMi42MjVyZW07XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0cmVtKSB7XG4gIC5mb290ZXItYm90dG9tIHtcbiAgICBwYWRkaW5nOiAxLjc1cmVtIDEuMjVlbTtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NHJlbSkge1xuICAuZm9vdGVyLWJvdHRvbSAud3JhcCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gIH1cbn1cblxuLmZvb3Rlci1ib3R0b20gYSB7XG4gIGNvbG9yOiAjZmZmO1xufVxuXG4uZm9vdGVyLWJvdHRvbSAud2lkZ2V0IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nOiAwLjYyNWVtIDAgMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aWR0aDogMTAwJTtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDEuODc1cmVtKSB7XG4gIC5mb290ZXItYm90dG9tIC53aWRnZXQge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgd2lkdGg6IDMzJTtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NHJlbSkge1xuICAuZm9vdGVyLWJvdHRvbSAud2lkZ2V0IHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tcmlnaHQ6IDEuMjA0ODIlO1xuICAgIHdpZHRoOiAxNy43NzEwOCU7XG4gICAgbWFyZ2luLXRvcDogMS4zNzVyZW07XG4gICAgcGFkZGluZzogMCAwLjYyNWVtIDAgMDtcbiAgfVxuICAuZm9vdGVyLWJvdHRvbSAud2lkZ2V0Omxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NHJlbSkge1xuICAuZm9vdGVyLWJvdHRvbSAud2lkZ2V0ICsgLndpZGdldCB7XG4gICAgcGFkZGluZzogMCAwLjYyNWVtO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0cmVtKSB7XG4gIC5mb290ZXItYm90dG9tIC5hZC13aWRnZXQge1xuICAgIHBhZGRpbmctbGVmdDogMC42ODc1cmVtO1xuICB9XG59XG5cbi5mb290ZXItYm90dG9tIC5zaXRlLWluZm8ge1xuICBtYXJnaW4tdG9wOiAzLjEyNXJlbTtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRyZW0pIHtcbiAgLmZvb3Rlci1ib3R0b20gLnNpdGUtaW5mbyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLXJpZ2h0OiAxLjIwNDgyJTtcbiAgICB3aWR0aDogNDkuMzk3NTklO1xuICAgIHBhZGRpbmctdG9wOiAxLjEyNXJlbTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjE4NzVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjgxMjVyZW07XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgfVxuICAuZm9vdGVyLWJvdHRvbSAuc2l0ZS1pbmZvOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgfVxufVxuXG4uZm9vdGVyLWJvdHRvbSAuc2l0ZS1pbmZvIHAge1xuICBmb250LXNpemU6IDEuMjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG59XG5cbi5mb290ZXItYm90dG9tIC5zaXRlbGlzdCB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIG1hcmdpbi10b3A6IDAuODEyNXJlbTtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRyZW0pIHtcbiAgLmZvb3Rlci1ib3R0b20gLnNpdGVsaXN0IHtcbiAgICBtYXJnaW4tbGVmdDogNi4zMjUzJTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tcmlnaHQ6IDEuMjA0ODIlO1xuICAgIHdpZHRoOiAyNC4wOTYzOSU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbiAgLmZvb3Rlci1ib3R0b20gLnNpdGVsaXN0Omxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgfVxufVxuXG4uZm9vdGVyLWJvdHRvbSAuc2l0ZWxpc3QgaDMge1xuICBmb250LXNpemU6IDEuMTI1cmVtO1xuICBsZXR0ZXItc3BhY2luZzogMC4wOTM3NXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMC41NjI1cmVtO1xuICBtYXJnaW4tdG9wOiAwO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuXG4uZm9vdGVyLWJvdHRvbSAuc2l0ZWxpc3QgLmRyb3Bkb3duLXdyYXAge1xuICBtYXJnaW4tYm90dG9tOiAwLjYyNXJlbTtcbiAgbWFyZ2luLXJpZ2h0OiAwLjYyNXJlbTtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDByZW0pIHtcbiAgLmZvb3Rlci1ib3R0b20gLnNpdGVsaXN0IC5kcm9wZG93bi13cmFwIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0cmVtKSB7XG4gIC5mb290ZXItYm90dG9tIC5zaXRlbGlzdCAuZHJvcGRvd24td3JhcCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMS41NjI1cmVtO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY3cmVtKSB7XG4gIC5mb290ZXItYm90dG9tIC5zaXRlbGlzdCAuZHJvcGRvd24td3JhcCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICB9XG59XG5cbi5mb290ZXItYm90dG9tIC5zaXRlbGlzdCAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5mb290ZXItYm90dG9tIC5zaXRlbGlzdCAuZHJvcGRvd24tbGlzdCBhOmhvdmVyLFxuLmZvb3Rlci1ib3R0b20gLnNpdGVsaXN0IC5kcm9wZG93bi1saXN0IGE6YWN0aXZlLFxuLmZvb3Rlci1ib3R0b20gLnNpdGVsaXN0IC5kcm9wZG93bi1saXN0IGE6Zm9jdXMge1xuICBiYWNrZ3JvdW5kOiAjZjRiMjI1O1xufVxuXG4uZm9vdGVyLXRvcCAuc2l0ZWxpc3Qge1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2lkdGg6IDE4Ljc1cmVtO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MS44NzVyZW0pIHtcbiAgLmZvb3Rlci10b3AgLnNpdGVsaXN0IHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NHJlbSkge1xuICAuZm9vdGVyLXRvcCAuc2l0ZWxpc3Qge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLmZvb3Rlci10b3AgLnNpdGVsaXN0IGgzIHtcbiAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgbWFyZ2luOiAwLjI1cmVtIDA7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbi5mb290ZXItdG9wIC5zaXRlbGlzdCAuZHJvcGRvd24td3JhcCxcbi5mb290ZXItdG9wIC5zaXRlbGlzdCAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5mb290ZXItYm90dG9tIC5mb290ZXItbG9nb3Mge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cbi5mb290ZXItYm90dG9tIC5mb290ZXItbG9nb3MgLmxvZ28td3JhcCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLWxlZnQ6IDAuNjI1cmVtO1xuICBtYXgtd2lkdGg6IDExLjg3NXJlbTtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRyZW0pIHtcbiAgLmZvb3Rlci1ib3R0b20gLmZvb3Rlci1sb2dvcyAubG9nby13cmFwIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tYm90dG9tOiAwLjYyNXJlbTtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBtYXgtd2lkdGg6IDYuODc1cmVtO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY3cmVtKSB7XG4gIC5mb290ZXItYm90dG9tIC5mb290ZXItbG9nb3MgLmxvZ28td3JhcCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDAuNjI1cmVtO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg1LjM3NXJlbSkge1xuICAuZm9vdGVyLWJvdHRvbSAuZm9vdGVyLWxvZ29zIC5sb2dvLXdyYXAge1xuICAgIG1hcmdpbi1sZWZ0OiAxLjU2MjVyZW07XG4gIH1cbn1cblxuLmZvb3Rlci1ib3R0b20gLmZvb3Rlci1sb2dvcyAubG9nby13cmFwOmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG5cbi5mb290ZXItYm90dG9tIC5mb290ZXItbG9nb3MubW9iaWxlLW9ubHkge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQxLjg3NXJlbSkge1xuICAuZm9vdGVyLWJvdHRvbSAuZm9vdGVyLWxvZ29zLm1vYmlsZS1vbmx5IHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIHdpZHRoOiA2NiU7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRyZW0pIHtcbiAgLmZvb3Rlci1ib3R0b20gLmZvb3Rlci1sb2dvcy5tb2JpbGUtb25seSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4uZm9vdGVyLWJvdHRvbSAuZm9vdGVyLWxvZ29zLm1vYmlsZS1vbmx5IC5sb2dvLXdyYXAge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwIGF1dG87XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQxLjg3NXJlbSkge1xuICAuZm9vdGVyLWJvdHRvbSAuZm9vdGVyLWxvZ29zLm1vYmlsZS1vbmx5IC5sb2dvLXdyYXAge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgfVxufVxuXG4uZm9vdGVyLWJvdHRvbSAuZm9vdGVyLWxvZ29zLm1vYmlsZS1vbmx5IC53ZHNfY29tZWJhY2tfZm9vdGVyX2xvZ29fMV93cmFwIHtcbiAgbWFyZ2luLWJvdHRvbTogMS41cmVtO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MS44NzVyZW0pIHtcbiAgLmZvb3Rlci1ib3R0b20gLmZvb3Rlci1sb2dvcy5tb2JpbGUtb25seSAud2RzX2NvbWViYWNrX2Zvb3Rlcl9sb2dvXzFfd3JhcCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MS44NzVyZW0pIHtcbiAgLmZvb3Rlci1ib3R0b20gLmZvb3Rlci1sb2dvcy5tb2JpbGUtb25seSAud2RzX2NvbWViYWNrX2Zvb3Rlcl9sb2dvXzJfd3JhcCB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICB9XG59XG5cbi5mb290ZXItdG9wIC5zb2NpYWwtaWNvbnMge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLXRvcDogMC40Mzc1cmVtO1xuICBwYWRkaW5nOiAwLjQzNzVyZW0gMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MS44NzVyZW0pIHtcbiAgLmZvb3Rlci10b3AgLnNvY2lhbC1pY29ucyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NHJlbSkge1xuICAuZm9vdGVyLXRvcCAuc29jaWFsLWljb25zIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi5jYXQtbGlua3Mge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi5jYXQtbGlua3MgYSB7XG4gIGJhY2tncm91bmQ6ICMwMDA7XG4gIGJvcmRlcjogbm9uZTtcbiAgY29sb3I6ICNmZmY7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBsZXR0ZXItc3BhY2luZzogMC4xMjVyZW07XG4gIHBhZGRpbmc6IDAuMDYyNXJlbSAxcmVtO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMThzIGVhc2Utb3V0O1xufVxuXG4uY2F0LWxpbmtzIGFbaHJlZio9XCJuYmFcIl0ge1xuICBiYWNrZ3JvdW5kOiAjZTI1YjAwO1xufVxuXG4uY2F0LWxpbmtzIGFbaHJlZio9XCJuZmxcIl0ge1xuICBiYWNrZ3JvdW5kOiAjMDAwO1xufVxuXG4uY2F0LWxpbmtzIGFbaHJlZio9XCJtbGJcIl0ge1xuICBiYWNrZ3JvdW5kOiAjMDA2NzMyO1xufVxuXG4uY2F0LWxpbmtzIGFbaHJlZio9XCJuY2FhXCJdIHtcbiAgYmFja2dyb3VuZDogI2QxMGQwMDtcbn1cblxuLmNhdC1saW5rcyBhW2hyZWYqPVwibmhsXCJdIHtcbiAgYmFja2dyb3VuZDogIzhiYzBlYjtcbn1cblxuLmNhdC1saW5rcyBhW2hyZWYqPVwicG9wLWN1bHR1cmVcIl0ge1xuICBiYWNrZ3JvdW5kOiAjZGVjYTAwO1xufVxuXG4uY2F0LWxpbmtzIGFbaHJlZio9XCJjdWx0dXJlXCJdIHtcbiAgYmFja2dyb3VuZDogI2RlY2EwMDtcbn1cblxuLmNhdC1saW5rcyBhOmhvdmVyLCAuY2F0LWxpbmtzIGE6Zm9jdXMge1xuICBjb2xvcjogI2ZmZjtcbiAgb3BhY2l0eTogMC43ODtcbn1cblxuLmZlYXR1cmVkLXBvc3Qge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA1MCUgNTAlO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiAxMS41NjI1cmVtO1xuICBtYXJnaW4tYm90dG9tOiAwLjMxMjVyZW07XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMTtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhyZW0pIHtcbiAgLmZlYXR1cmVkLXBvc3Qge1xuICAgIGhlaWdodDogMjguMTI1cmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDQuMTg3NXJlbTtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NHJlbSkge1xuICAuZmVhdHVyZWQtcG9zdCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMy43NXJlbTtcbiAgfVxufVxuXG4uZmVhdHVyZWQtcG9zdCAuZW50cnktaGVhZGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIGNvbG9yOiAjZmZmO1xuICBwYWRkaW5nOiAwLjc1cmVtIDAuOTM3NXJlbTtcbiAgd2lkdGg6IDEwMCU7XG4gIHotaW5kZXg6IDE7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4cmVtKSB7XG4gIC5mZWF0dXJlZC1wb3N0IC5lbnRyeS1oZWFkZXIge1xuICAgIHBhZGRpbmc6IDEuNTYyNXJlbSAxLjkzNzVyZW0gMS41NjI1cmVtIDEuNjg3NXJlbTtcbiAgfVxufVxuXG4uZmVhdHVyZWQtcG9zdCAuZW50cnktaGVhZGVyIC5lbnRyeS10aXRsZSB7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIHRyYW5zZm9ybS1zdHlsZTogcHJlc2VydmUtM2Q7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogLXdlYmtpdC10cmFuc2Zvcm0gMC4xOHMgZWFzZS1pbi1vdXQ7XG4gIC1tb3otdHJhbnNpdGlvbjogLW1vei10cmFuc2Zvcm0gMC4xOHMgZWFzZS1pbi1vdXQ7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjE4cyBlYXNlLWluLW91dDtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiAxLjI1O1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBtYXJnaW4tdG9wOiAwO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MHJlbSkge1xuICAuZmVhdHVyZWQtcG9zdCAuZW50cnktaGVhZGVyIC5lbnRyeS10aXRsZSB7XG4gICAgZm9udC1zaXplOiAxLjMxMjVyZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuMDU7XG4gIH1cbn1cblxuLmZlYXR1cmVkLXBvc3QgLmVudHJ5LWhlYWRlciBhIHtcbiAgY29sb3I6ICNmZmY7XG59XG5cbi5mZWF0dXJlZC1wb3N0IC5lbnRyeS1oZWFkZXIgYTpmb2N1cyB7XG4gIGJvcmRlci1ib3R0b206IDAuMTI1cmVtIHNvbGlkICNmNGIyMjU7XG4gIG91dGxpbmU6IG5vbmU7XG59XG5cbi5mZWF0dXJlZC1wb3N0IC5lbnRyeS1oZWFkZXIgLmNhdGVnb3J5IHtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgdHJhbnNmb3JtLXN0eWxlOiBwcmVzZXJ2ZS0zZDtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiAtd2Via2l0LXRyYW5zZm9ybSAwLjE4cyBlYXNlLWluLW91dDtcbiAgLW1vei10cmFuc2l0aW9uOiAtbW96LXRyYW5zZm9ybSAwLjE4cyBlYXNlLWluLW91dDtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMThzIGVhc2UtaW4tb3V0O1xuICBkaXNwbGF5OiBub25lO1xuICBmb250LWZhbWlseTogXCJmcmVpZ2h0LXNhbnMtcHJvXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMTU2MjVyZW07XG4gIG1hcmdpbjogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OHJlbSkge1xuICAuZmVhdHVyZWQtcG9zdCAuZW50cnktaGVhZGVyIC5jYXRlZ29yeSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMC4yNXJlbSBzb2xpZCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNik7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZy1ib3R0b206IDAuOTM3NXJlbTtcbiAgfVxufVxuXG4uZmVhdHVyZWQtcG9zdCAuZW50cnktaGVhZGVyIC5jYXRlZ29yeSAuaGlsaWdodCB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogd2lkdGggMC4xOHMgZWFzZS1pbi1vdXQ7XG4gIC1tb3otdHJhbnNpdGlvbjogd2lkdGggMC4xOHMgZWFzZS1pbi1vdXQ7XG4gIHRyYW5zaXRpb246IHdpZHRoIDAuMThzIGVhc2UtaW4tb3V0O1xuICBib3R0b206IC0wLjI1cmVtO1xuICBkaXNwbGF5OiBub25lO1xuICBoZWlnaHQ6IDAuMjVyZW07XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDQuNXJlbTtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhyZW0pIHtcbiAgLmZlYXR1cmVkLXBvc3QgLmVudHJ5LWhlYWRlciAuY2F0ZWdvcnkgLmhpbGlnaHQge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG5cbi5mZWF0dXJlZC1wb3N0IC5yZWFkLW1vcmUge1xuICAtd2Via2l0LXRyYW5zaXRpb246IG9wYWNpdHkgMC4xOHMgZWFzZS1pbi1vdXQsIC13ZWJraXQtdHJhbnNmb3JtIDAuMThzIGVhc2UtaW4tb3V0O1xuICAtbW96LXRyYW5zaXRpb246IG9wYWNpdHkgMC4xOHMgZWFzZS1pbi1vdXQsIC1tb3otdHJhbnNmb3JtIDAuMThzIGVhc2UtaW4tb3V0O1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMThzIGVhc2UtaW4tb3V0LCB0cmFuc2Zvcm0gMC4xOHMgZWFzZS1pbi1vdXQ7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIHRyYW5zZm9ybS1zdHlsZTogcHJlc2VydmUtM2Q7XG4gIGJvcmRlcjogbm9uZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtc2l6ZTogMS40Mzc1cmVtO1xuICBvcGFjaXR5OiAwO1xufVxuXG4uZmVhdHVyZWQtcG9zdDo6YmVmb3JlLCAuZmVhdHVyZWQtcG9zdDo6YWZ0ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgaGVpZ2h0OiAxMDAlO1xuICB3aWR0aDogMTAwJTtcbiAgY29udGVudDogXCJcIjtcbn1cblxuLmZlYXR1cmVkLXBvc3Q6OmFmdGVyIHtcbiAgYmFja2dyb3VuZDogcmdiYSg0MywgMzgsIDQzLCAwLjM1KTtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRyZW0pIHtcbiAgLmZlYXR1cmVkLXBvc3Q6OmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQocmdiYSg0MywgMzgsIDQzLCAwKSA0OCUsICMyYjI2MmIgOTUlLCAjMmIyNjJiIDk2JSk7XG4gIH1cbn1cblxuLmZlYXR1cmVkLXBvc3Q6OmJlZm9yZSB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogb3BhY2l0eSAwLjE4cyBlYXNlLWluLW91dDtcbiAgLW1vei10cmFuc2l0aW9uOiBvcGFjaXR5IDAuMThzIGVhc2UtaW4tb3V0O1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMThzIGVhc2UtaW4tb3V0O1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAjMzc3OWEzIDQ4JSwgIzQyNWI2ZCA5NSUsICM0OTRhNGQgOTklKTtcbiAgb3BhY2l0eTogMDtcbn1cblxuLmZlYXR1cmVkLXBvc3Q6aG92ZXI6OmJlZm9yZSwgLmZlYXR1cmVkLXBvc3Q6Zm9jdXM6OmJlZm9yZSB7XG4gIG9wYWNpdHk6IDAuNTtcbn1cblxuLmZlYXR1cmVkLXBvc3Q6aG92ZXIgLmNhdGVnb3J5LCAuZmVhdHVyZWQtcG9zdDpmb2N1cyAuY2F0ZWdvcnkge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTMycHgpO1xufVxuXG4uZmVhdHVyZWQtcG9zdDpob3ZlciAuY2F0ZWdvcnkgLmhpbGlnaHQsIC5mZWF0dXJlZC1wb3N0OmZvY3VzIC5jYXRlZ29yeSAuaGlsaWdodCB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uZmVhdHVyZWQtcG9zdDpob3ZlciAucmVhZC1tb3JlLCAuZmVhdHVyZWQtcG9zdDpmb2N1cyAucmVhZC1tb3JlIHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiB3aWR0aCAwLjE4cyBlYXNlLWluLW91dDtcbiAgLW1vei10cmFuc2l0aW9uOiB3aWR0aCAwLjE4cyBlYXNlLWluLW91dDtcbiAgdHJhbnNpdGlvbjogd2lkdGggMC4xOHMgZWFzZS1pbi1vdXQ7XG4gIGJvcmRlcjogbm9uZTtcbiAgb3BhY2l0eTogMTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xNnB4KTtcbiAgd2lkdGg6IDcuOTM3NXJlbTtcbn1cblxuLmZlYXR1cmVkLXBvc3Q6aG92ZXIgLnJlYWQtbW9yZTpob3ZlciwgLmZlYXR1cmVkLXBvc3Q6Zm9jdXMgLnJlYWQtbW9yZTpob3ZlciB7XG4gIG9wYWNpdHk6IDAuODg7XG4gIHdpZHRoOiA4LjI1cmVtO1xufVxuXG4uZmVhdHVyZWQtcG9zdDpob3ZlciAucmVhZC1tb3JlOjphZnRlciwgLmZlYXR1cmVkLXBvc3Q6Zm9jdXMgLnJlYWQtbW9yZTo6YWZ0ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNDglO1xuICByaWdodDogMC4zMTI1cmVtO1xuICBoZWlnaHQ6IDAuNXJlbTtcbiAgd2lkdGg6IDAuNjg3NXJlbTtcbiAgYmFja2dyb3VuZDogdXJsKFwiYXNzZXRzL2ltYWdlcy9zdmctaWNvbnMvbmF2LWFycm93LnN2Z1wiKSBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgY29udGVudDogXCJcIjtcbiAgdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcbn1cblxuLmZlYXR1cmVkLXBvc3Q6aG92ZXIgLmVudHJ5LXRpdGxlLCAuZmVhdHVyZWQtcG9zdDpmb2N1cyAuZW50cnktdGl0bGUge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTMycHgpO1xufVxuXG4uZmVhdHVyZS01LWdyaWQgLmZlYXR1cmVkLXBvc3Qge1xuICBtYXJnaW4tYm90dG9tOiAwLjMxMjVyZW07XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0cmVtKSB7XG4gIC5mZWF0dXJlLTUtZ3JpZCAuZmVhdHVyZWQtcG9zdCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMS41cmVtO1xuICB9XG59XG5cbi5ob3Jpem9udGFsLWJsb2ctY2FyZCB7XG4gIG1heC13aWR0aDogODBlbTtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gIGJhY2tncm91bmQ6ICNmNWY2ZjY7XG4gIGJvcmRlcjogMC4wNjI1cmVtIHNvbGlkIHJnYmEoNCwgNCwgNCwgMC4xMik7XG4gIGJvcmRlci10b3A6IDAuMTg3NXJlbSBzb2xpZCAjMDAwO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIG1hcmdpbi1ib3R0b206IDAuMzEyNXJlbTtcbiAgcGFkZGluZy1ib3R0b206IDAuMzEyNXJlbTtcbiAgcGFkZGluZy10b3A6IDAuMzEyNXJlbTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uaG9yaXpvbnRhbC1ibG9nLWNhcmQ6OmFmdGVyIHtcbiAgY2xlYXI6IGJvdGg7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OHJlbSkge1xuICAuaG9yaXpvbnRhbC1ibG9nLWNhcmQge1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGJvcmRlci10b3Atd2lkdGg6IDAuMTg3NXJlbTtcbiAgICBib3gtc2hhZG93OiAtMC42OTM3NXJlbSAwLjYyNXJlbSAxLjI1cmVtIDAuMTg3NXJlbSByZ2JhKDQsIDQsIDQsIDAuMTIpO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi1ib3R0b206IDQuMTg3NXJlbTtcbiAgICBwYWRkaW5nLWJvdHRvbTogMS4yNXJlbTtcbiAgICBwYWRkaW5nLXRvcDogMDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NHJlbSkge1xuICAuaG9yaXpvbnRhbC1ibG9nLWNhcmQge1xuICAgIG1hcmdpbi1ib3R0b206IDMuNzVyZW07XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzYuMjVyZW0pIHtcbiAgLmhvcml6b250YWwtYmxvZy1jYXJkIHtcbiAgICBtaW4taGVpZ2h0OiAxNy45Mzc1cmVtO1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICB9XG59XG5cbi5ob3Jpem9udGFsLWJsb2ctY2FyZDpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLmhvcml6b250YWwtYmxvZy1jYXJkOjphZnRlciB7XG4gIGNsZWFyOiBub25lO1xufVxuXG4uaG9yaXpvbnRhbC1ibG9nLWNhcmQgLmNhdC1saW5rcyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tYm90dG9tOiAwLjMxMjVyZW07XG59XG5cbi5ob3Jpem9udGFsLWJsb2ctY2FyZCAuY2F0LWxpbmtzIGEge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGNvbG9yOiAjNzE3Mjc2O1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMTI1cmVtO1xuICBsaW5lLWhlaWdodDogMS4yNTtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhyZW0pIHtcbiAgLmhvcml6b250YWwtYmxvZy1jYXJkIC5jYXQtbGlua3MgYSB7XG4gICAgbWFyZ2luLXRvcDogMC41NjI1cmVtO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0cmVtKSB7XG4gIC5ob3Jpem9udGFsLWJsb2ctY2FyZCAuY2F0LWxpbmtzIGEge1xuICAgIG1hcmdpbjogMC45Mzc1cmVtIDAgMCAwO1xuICB9XG59XG5cbi5ob3Jpem9udGFsLWJsb2ctY2FyZCAuY2FyZC1jb250ZW50cyB7XG4gIGZsZXg6IDE7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4cmVtKSB7XG4gIC5ob3Jpem9udGFsLWJsb2ctY2FyZCAuY2FyZC1jb250ZW50cyB7XG4gICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzYuMjVyZW0pIHtcbiAgLmhvcml6b250YWwtYmxvZy1jYXJkIC5jYXJkLWNvbnRlbnRzIHtcbiAgICBib3JkZXItdG9wOiAwLjM3NXJlbSBzb2xpZCAjMDAwO1xuICB9XG4gIC5ob3Jpem9udGFsLWJsb2ctY2FyZCAuY2FyZC1jb250ZW50c1tjbGFzcyo9XCJuYmFcIl0ge1xuICAgIGJvcmRlci10b3AtY29sb3I6ICNlMjViMDA7XG4gIH1cbiAgLmhvcml6b250YWwtYmxvZy1jYXJkIC5jYXJkLWNvbnRlbnRzW2NsYXNzKj1cIm5mbFwiXSB7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogIzAwMDtcbiAgfVxuICAuaG9yaXpvbnRhbC1ibG9nLWNhcmQgLmNhcmQtY29udGVudHNbY2xhc3MqPVwibWxiXCJdIHtcbiAgICBib3JkZXItdG9wLWNvbG9yOiAjMDA2NzMyO1xuICB9XG4gIC5ob3Jpem9udGFsLWJsb2ctY2FyZCAuY2FyZC1jb250ZW50c1tjbGFzcyo9XCJuY2FhXCJdIHtcbiAgICBib3JkZXItdG9wLWNvbG9yOiAjZDEwZDAwO1xuICB9XG4gIC5ob3Jpem9udGFsLWJsb2ctY2FyZCAuY2FyZC1jb250ZW50c1tjbGFzcyo9XCJuaGxcIl0ge1xuICAgIGJvcmRlci10b3AtY29sb3I6ICM4YmMwZWI7XG4gIH1cbiAgLmhvcml6b250YWwtYmxvZy1jYXJkIC5jYXJkLWNvbnRlbnRzW2NsYXNzKj1cInBvcC1jdWx0dXJlXCJdIHtcbiAgICBib3JkZXItdG9wLWNvbG9yOiAjZGVjYTAwO1xuICB9XG4gIC5ob3Jpem9udGFsLWJsb2ctY2FyZCAuY2FyZC1jb250ZW50c1tjbGFzcyo9XCJjdWx0dXJlXCJdIHtcbiAgICBib3JkZXItdG9wLWNvbG9yOiAjZGVjYTAwO1xuICB9XG59XG5cbi5ob3Jpem9udGFsLWJsb2ctY2FyZCAuY2FyZC10aXRsZSB7XG4gIHBhZGRpbmc6IDAgMC41cmVtO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OHJlbSkge1xuICAuaG9yaXpvbnRhbC1ibG9nLWNhcmQgLmNhcmQtdGl0bGUge1xuICAgIHBhZGRpbmc6IDAgMCAwIDEuMjVyZW07XG4gIH1cbn1cblxuLmhvcml6b250YWwtYmxvZy1jYXJkIC5jYXJkLXRpdGxlIC5lbnRyeS10aXRsZSB7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIG1hcmdpbi10b3A6IDA7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4cmVtKSB7XG4gIC5ob3Jpem9udGFsLWJsb2ctY2FyZCAuY2FyZC10aXRsZSAuZW50cnktdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogMS43NXJlbTtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3Ni4yNXJlbSkge1xuICAuaG9yaXpvbnRhbC1ibG9nLWNhcmQgLmNhcmQtdGl0bGUgLmVudHJ5LXRpdGxlIHtcbiAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgIG1hcmdpbi1ib3R0b206IDAuODc1cmVtO1xuICB9XG59XG5cbi5ob3Jpem9udGFsLWJsb2ctY2FyZCAuY2FyZC10aXRsZSAuZW50cnktdGl0bGUgYSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4uaG9yaXpvbnRhbC1ibG9nLWNhcmQgLmNhcmQtZXhjZXJwdCB7XG4gIHBhZGRpbmc6IDAgMC41cmVtO1xuICBkaXNwbGF5OiBub25lO1xuICB3aWR0aDogYXV0bztcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhyZW0pIHtcbiAgLmhvcml6b250YWwtYmxvZy1jYXJkIC5jYXJkLWV4Y2VycHQge1xuICAgIHBhZGRpbmc6IDAgMCAwIDEuMjVyZW07XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRyZW0pIHtcbiAgLmhvcml6b250YWwtYmxvZy1jYXJkIC5jYXJkLWV4Y2VycHQge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG5cbi5ob3Jpem9udGFsLWJsb2ctY2FyZCAuY2FyZC1leGNlcnB0IHAge1xuICBmb250LXNpemU6IDFyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjI7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2LjI1cmVtKSB7XG4gIC5ob3Jpem9udGFsLWJsb2ctY2FyZCAuY2FyZC1leGNlcnB0IHAge1xuICAgIGxpbmUtaGVpZ2h0OiAxLjM3NTtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3Ni4yNXJlbSkge1xuICAuaG9yaXpvbnRhbC1ibG9nLWNhcmQgLmNhcmQtZXhjZXJwdC5sb25nLXRpdGxlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi5ob3Jpem9udGFsLWJsb2ctY2FyZCAuY2FyZC1pbWFnZSwgLmhvcml6b250YWwtYmxvZy1jYXJkIC5jbG9uZS13aWRnZXQgLmZlYXR1cmVkc2lkZWJhciAuaW1hZ2UtYXMtYmFja2dyb3VuZCwgLmNsb25lLXdpZGdldCAuZmVhdHVyZWRzaWRlYmFyIC5ob3Jpem9udGFsLWJsb2ctY2FyZCAuaW1hZ2UtYXMtYmFja2dyb3VuZCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogNi44NzVyZW07XG4gIG1hcmdpbjogMCAwLjMxMjVyZW07XG4gIHdpZHRoOiA0NSU7XG4gIHotaW5kZXg6IDA7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4cmVtKSB7XG4gIC5ob3Jpem9udGFsLWJsb2ctY2FyZCAuY2FyZC1pbWFnZSwgLmhvcml6b250YWwtYmxvZy1jYXJkIC5jbG9uZS13aWRnZXQgLmZlYXR1cmVkc2lkZWJhciAuaW1hZ2UtYXMtYmFja2dyb3VuZCwgLmNsb25lLXdpZGdldCAuZmVhdHVyZWRzaWRlYmFyIC5ob3Jpem9udGFsLWJsb2ctY2FyZCAuaW1hZ2UtYXMtYmFja2dyb3VuZCB7XG4gICAgYm9yZGVyLWJvdHRvbTogMC4zNzVyZW0gc29saWQgIzAwMDtcbiAgICBtYXJnaW46IDA7XG4gICAgbWluLWhlaWdodDogMTkuNjI1cmVtO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2LjI1cmVtKSB7XG4gIC5ob3Jpem9udGFsLWJsb2ctY2FyZCAuY2FyZC1pbWFnZSwgLmhvcml6b250YWwtYmxvZy1jYXJkIC5jbG9uZS13aWRnZXQgLmZlYXR1cmVkc2lkZWJhciAuaW1hZ2UtYXMtYmFja2dyb3VuZCwgLmNsb25lLXdpZGdldCAuZmVhdHVyZWRzaWRlYmFyIC5ob3Jpem9udGFsLWJsb2ctY2FyZCAuaW1hZ2UtYXMtYmFja2dyb3VuZCB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLXJpZ2h0OiAxLjIwNDgyJTtcbiAgICB3aWR0aDogNDguMTMyNTMlO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBtYXJnaW4tcmlnaHQ6IDAuODc1cmVtO1xuICAgIG1pbi1oZWlnaHQ6IDE3LjkzNzVyZW07XG4gIH1cbiAgLmhvcml6b250YWwtYmxvZy1jYXJkIC5jYXJkLWltYWdlOmxhc3QtY2hpbGQsIC5ob3Jpem9udGFsLWJsb2ctY2FyZCAuY2xvbmUtd2lkZ2V0IC5mZWF0dXJlZHNpZGViYXIgLmltYWdlLWFzLWJhY2tncm91bmQ6bGFzdC1jaGlsZCwgLmNsb25lLXdpZGdldCAuZmVhdHVyZWRzaWRlYmFyIC5ob3Jpem9udGFsLWJsb2ctY2FyZCAuaW1hZ2UtYXMtYmFja2dyb3VuZDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gIH1cbn1cblxuLmhvcml6b250YWwtYmxvZy1jYXJkIC5jYXJkLWltYWdlW2NsYXNzKj1cIm5iYVwiXSwgLmhvcml6b250YWwtYmxvZy1jYXJkIC5jbG9uZS13aWRnZXQgLmZlYXR1cmVkc2lkZWJhciBbY2xhc3MqPVwibmJhXCJdLmltYWdlLWFzLWJhY2tncm91bmQsIC5jbG9uZS13aWRnZXQgLmZlYXR1cmVkc2lkZWJhciAuaG9yaXpvbnRhbC1ibG9nLWNhcmQgW2NsYXNzKj1cIm5iYVwiXS5pbWFnZS1hcy1iYWNrZ3JvdW5kIHtcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogI2UyNWIwMDtcbn1cblxuLmhvcml6b250YWwtYmxvZy1jYXJkIC5jYXJkLWltYWdlW2NsYXNzKj1cIm5mbFwiXSwgLmhvcml6b250YWwtYmxvZy1jYXJkIC5jbG9uZS13aWRnZXQgLmZlYXR1cmVkc2lkZWJhciBbY2xhc3MqPVwibmZsXCJdLmltYWdlLWFzLWJhY2tncm91bmQsIC5jbG9uZS13aWRnZXQgLmZlYXR1cmVkc2lkZWJhciAuaG9yaXpvbnRhbC1ibG9nLWNhcmQgW2NsYXNzKj1cIm5mbFwiXS5pbWFnZS1hcy1iYWNrZ3JvdW5kIHtcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogIzAwMDtcbn1cblxuLmhvcml6b250YWwtYmxvZy1jYXJkIC5jYXJkLWltYWdlW2NsYXNzKj1cIm1sYlwiXSwgLmhvcml6b250YWwtYmxvZy1jYXJkIC5jbG9uZS13aWRnZXQgLmZlYXR1cmVkc2lkZWJhciBbY2xhc3MqPVwibWxiXCJdLmltYWdlLWFzLWJhY2tncm91bmQsIC5jbG9uZS13aWRnZXQgLmZlYXR1cmVkc2lkZWJhciAuaG9yaXpvbnRhbC1ibG9nLWNhcmQgW2NsYXNzKj1cIm1sYlwiXS5pbWFnZS1hcy1iYWNrZ3JvdW5kIHtcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogIzAwNjczMjtcbn1cblxuLmhvcml6b250YWwtYmxvZy1jYXJkIC5jYXJkLWltYWdlW2NsYXNzKj1cIm5jYWFcIl0sIC5ob3Jpem9udGFsLWJsb2ctY2FyZCAuY2xvbmUtd2lkZ2V0IC5mZWF0dXJlZHNpZGViYXIgW2NsYXNzKj1cIm5jYWFcIl0uaW1hZ2UtYXMtYmFja2dyb3VuZCwgLmNsb25lLXdpZGdldCAuZmVhdHVyZWRzaWRlYmFyIC5ob3Jpem9udGFsLWJsb2ctY2FyZCBbY2xhc3MqPVwibmNhYVwiXS5pbWFnZS1hcy1iYWNrZ3JvdW5kIHtcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogI2QxMGQwMDtcbn1cblxuLmhvcml6b250YWwtYmxvZy1jYXJkIC5jYXJkLWltYWdlW2NsYXNzKj1cIm5obFwiXSwgLmhvcml6b250YWwtYmxvZy1jYXJkIC5jbG9uZS13aWRnZXQgLmZlYXR1cmVkc2lkZWJhciBbY2xhc3MqPVwibmhsXCJdLmltYWdlLWFzLWJhY2tncm91bmQsIC5jbG9uZS13aWRnZXQgLmZlYXR1cmVkc2lkZWJhciAuaG9yaXpvbnRhbC1ibG9nLWNhcmQgW2NsYXNzKj1cIm5obFwiXS5pbWFnZS1hcy1iYWNrZ3JvdW5kIHtcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogIzhiYzBlYjtcbn1cblxuLmhvcml6b250YWwtYmxvZy1jYXJkIC5jYXJkLWltYWdlW2NsYXNzKj1cInBvcC1jdWx0dXJlXCJdLCAuaG9yaXpvbnRhbC1ibG9nLWNhcmQgLmNsb25lLXdpZGdldCAuZmVhdHVyZWRzaWRlYmFyIFtjbGFzcyo9XCJwb3AtY3VsdHVyZVwiXS5pbWFnZS1hcy1iYWNrZ3JvdW5kLCAuY2xvbmUtd2lkZ2V0IC5mZWF0dXJlZHNpZGViYXIgLmhvcml6b250YWwtYmxvZy1jYXJkIFtjbGFzcyo9XCJwb3AtY3VsdHVyZVwiXS5pbWFnZS1hcy1iYWNrZ3JvdW5kIHtcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogI2RlY2EwMDtcbn1cblxuLmhvcml6b250YWwtYmxvZy1jYXJkIC5jYXJkLWltYWdlW2NsYXNzKj1cImN1bHR1cmVcIl0sIC5ob3Jpem9udGFsLWJsb2ctY2FyZCAuY2xvbmUtd2lkZ2V0IC5mZWF0dXJlZHNpZGViYXIgW2NsYXNzKj1cImN1bHR1cmVcIl0uaW1hZ2UtYXMtYmFja2dyb3VuZCwgLmNsb25lLXdpZGdldCAuZmVhdHVyZWRzaWRlYmFyIC5ob3Jpem9udGFsLWJsb2ctY2FyZCBbY2xhc3MqPVwiY3VsdHVyZVwiXS5pbWFnZS1hcy1iYWNrZ3JvdW5kIHtcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogI2RlY2EwMDtcbn1cblxuLmhvcml6b250YWwtYmxvZy1jYXJkIGZvb3RlciB7XG4gIGNsZWFyOiBib3RoO1xuICBkaXNwbGF5OiBub25lO1xuICBtYXJnaW4tdG9wOiAxcmVtO1xuICBwYWRkaW5nOiAwIDAuNXJlbTtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4cmVtKSB7XG4gIC5ob3Jpem9udGFsLWJsb2ctY2FyZCBmb290ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmc6IDAgMCAwIDFyZW07XG4gICAgd2lkdGg6IGF1dG87XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRyZW0pIHtcbiAgLmhvcml6b250YWwtYmxvZy1jYXJkIGZvb3RlciB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3Ni4yNXJlbSkge1xuICAuaG9yaXpvbnRhbC1ibG9nLWNhcmQgZm9vdGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiAwLjU2MjVyZW07XG4gICAgbGVmdDogNDguMTMyNTMlO1xuICB9XG59XG5cbi5ob3Jpem9udGFsLWJsb2ctY2FyZCBmb290ZXIgLmVudHJ5LWRhdGUge1xuICBtYXJnaW4tcmlnaHQ6IDAuMzc1cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDAuMzEyNXJlbTtcbn1cblxuLmhvcml6b250YWwtYmxvZy1jYXJkIGZvb3RlciAuYnlsaW5lIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtc2l6ZTogMC44MTI1cmVtO1xuICBsZXR0ZXItc3BhY2luZzogMC4wODQzOHJlbTtcbiAgbWFyZ2luLXRvcDogLTAuODc1cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDAuMTg3NXJlbTtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhyZW0pIHtcbiAgLmhvcml6b250YWwtYmxvZy1jYXJkIGZvb3RlciAuYnlsaW5lIHtcbiAgICBmb250LXNpemU6IDAuODEyNXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuMzEyNXJlbTtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3Ni4yNXJlbSkge1xuICAuaG9yaXpvbnRhbC1ibG9nLWNhcmQgZm9vdGVyIC5ieWxpbmUge1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgfVxufVxuXG4uaG9yaXpvbnRhbC1ibG9nLWNhcmQgZm9vdGVyIC5ieWxpbmUgYSB7XG4gIGJvcmRlcjogbm9uZTtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuXG4uaG9yaXpvbnRhbC1ibG9nLWNhcmQgZm9vdGVyIC5jb21tZW50cy1udW1iZXIge1xuICBoZWlnaHQ6IDEuNXJlbTtcbiAgd2lkdGg6IDEuODc1cmVtO1xuICBiYWNrZ3JvdW5kOiB1cmwoXCJhc3NldHMvaW1hZ2VzL3N2Zy1pY29ucy9jb21tZW50LWJ1YmJsZS5zdmdcIikgbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBjb2xvcjogI2ZmZjtcbiAgZGlzcGxheTogbm9uZTtcbiAgZm9udC1mYW1pbHk6IEhlbHZldGljYSwgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMC44MTI1cmVtO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIGxldHRlci1zcGFjaW5nOiAwLjA2MjVyZW07XG4gIHBhZGRpbmctbGVmdDogMC4xMjVyZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjE4cyBlYXNlLW91dDtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhyZW0pIHtcbiAgLmhvcml6b250YWwtYmxvZy1jYXJkIGZvb3RlciAuY29tbWVudHMtbnVtYmVyIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIH1cbn1cblxuLmRyb3Bkb3duLXdyYXAgLmRyb3Bkb3duLXRvZ2dsZSB7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIGJvcmRlcjogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogMC4xODc1cmVtO1xuICBjb2xvcjogIzU5NWI2MTtcbiAgZm9udC1mYW1pbHk6IFwiZmYtdGlzYS13ZWItcHJvXCIsIHNlcmlmO1xuICBmb250LXNpemU6IDEuMTI1cmVtO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBwYWRkaW5nOiAwLjg3NXJlbSAxLjM3NXJlbSAwLjgxMjVyZW0gMC41cmVtO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbn1cblxuLmRyb3Bkb3duLXdyYXAgLmRyb3Bkb3duLXRvZ2dsZSBzdmcge1xuICBoZWlnaHQ6IDEuNjg3NXJlbTtcbiAgd2lkdGg6IDEuNzVyZW07XG4gIGZpbGw6ICM4MTgzODM7XG4gIGZsb2F0OiByaWdodDtcbiAgbWFyZ2luLWxlZnQ6IDAuOTM3NXJlbTtcbiAgbWFyZ2luLXJpZ2h0OiAtMC4xODc1cmVtO1xuICBwYWRkaW5nOiAwO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuXG4uZHJvcGRvd24td3JhcCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NHJlbSkge1xuICAuZHJvcGRvd24td3JhcCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cblxuLmRyb3Bkb3duLXdyYXAgLmRyb3Bkb3duLWxpc3Qge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAxMDAlO1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBkaXNwbGF5OiBub25lO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLmRyb3Bkb3duLXdyYXAgLmRyb3Bkb3duLWxpc3Q6OmFmdGVyIHtcbiAgY2xlYXI6IGJvdGg7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4uZHJvcGRvd24td3JhcCAuZHJvcGRvd24tbGlzdC5vcGVuIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5kcm9wZG93bi13cmFwIC5kcm9wZG93bi1saXN0LnRvcCB7XG4gIGJvdHRvbTogMTAwJTtcbiAgdG9wOiBhdXRvO1xufVxuXG4uZHJvcGRvd24td3JhcCAuZHJvcGRvd24tbGlzdCBhIHtcbiAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgY29sb3I6ICM1OTViNjI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAwLjYyNXJlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4uZHJvcGRvd24td3JhcCAuZHJvcGRvd24tbGlzdCBhOmhvdmVyLCAuZHJvcGRvd24td3JhcCAuZHJvcGRvd24tbGlzdCBhOmFjdGl2ZSwgLmRyb3Bkb3duLXdyYXAgLmRyb3Bkb3duLWxpc3QgYTpmb2N1cyB7XG4gIGJhY2tncm91bmQ6ICNjY2M7XG4gIGNvbG9yOiAjZmZmO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDY0cmVtKSB7XG4gIC5wb3N0cy1uYXZpZ2F0aW9uIHtcbiAgICBtYXJnaW4tYm90dG9tOiAyLjc1cmVtO1xuICB9XG59XG5cbi5uYXYtbGlua3MgLmJ1dHRvbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LXNpemU6IDEuNXJlbTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgcGFkZGluZzogMC41NjI1cmVtIDAuODEyNXJlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MHJlbSkge1xuICAubmF2LWxpbmtzIC5idXR0b24ge1xuICAgIGZvbnQtc2l6ZTogMS44NzVyZW07XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhyZW0pIHtcbiAgLm5hdi1saW5rcyAuYnV0dG9uIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB9XG59XG5cbi5uYXYtbGlua3MgLm5hdi1wcmV2aW91cyB7XG4gIHBhZGRpbmctcmlnaHQ6IDEuNDM3NXJlbTtcbn1cblxuLm5hdi1saW5rcyAubmF2LW5leHQge1xuICBtYXJnaW4tdG9wOiAxLjI1cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDEuNDM3NXJlbTtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhyZW0pIHtcbiAgLm5hdi1saW5rcyAubmF2LW5leHQge1xuICAgIGZsb2F0OiByaWdodDtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICB9XG59XG5cbi5uYXYtbGlua3MgLmljb24ge1xuICBoZWlnaHQ6IDFyZW07XG4gIHdpZHRoOiAxLjVyZW07XG4gIG1hcmdpbi1sZWZ0OiAwLjkzNzVyZW07XG4gIG1hcmdpbi10b3A6IC0wLjE4NzVyZW07XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwcmVtKSBhbmQgKG1heC13aWR0aDogNDhyZW0pIHtcbiAgLm5hdi1saW5rcyAuaWNvbiB7XG4gICAgaGVpZ2h0OiAyLjI1cmVtO1xuICAgIHdpZHRoOiAyLjVyZW07XG4gICAgbWFyZ2luLWxlZnQ6IDEuMTI1cmVtO1xuICB9XG59XG5cbi5uYXYtbGlua3MgLm5hdi1wcmV2aW91cyAuaWNvbiB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBtYXJnaW4tcmlnaHQ6IDAuOTM3NXJlbTtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDByZW0pIGFuZCAobWF4LXdpZHRoOiA0OHJlbSkge1xuICAubmF2LWxpbmtzIC5uYXYtcHJldmlvdXMgLmljb24ge1xuICAgIG1hcmdpbi1yaWdodDogMS4xMjVyZW07XG4gIH1cbn1cblxuLm5hdi1saW5rcyAuYnV0dG9uOmFjdGl2ZSBzdmcsXG4ubmF2LWxpbmtzIC5idXR0b246aG92ZXIgc3ZnLFxuLm5hdi1saW5rcyAuYnV0dG9uOmZvY3VzIHN2ZyB7XG4gIGZpbGw6ICNmZmY7XG59XG5cbi5mZWF0dXJlLTUtZ3JpZCB7XG4gIG1heC13aWR0aDogODBlbTtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWFyZ2luLXRvcDogMS4xMjVyZW07XG4gIG1heC13aWR0aDogMTAwJTtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5mZWF0dXJlLTUtZ3JpZDo6YWZ0ZXIge1xuICBjbGVhcjogYm90aDtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0cmVtKSB7XG4gIC5mZWF0dXJlLTUtZ3JpZCB7XG4gICAgbWFyZ2luLXRvcDogMS41NjI1cmVtO1xuICB9XG59XG5cbi5mZWF0dXJlLTUtZ3JpZCAuZ3JpZC1pdGVtIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDIyLjVyZW0pIHtcbiAgLmZlYXR1cmUtNS1ncmlkIC5ncmlkLWl0ZW0ge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi1yaWdodDogMS4yMDQ4MiU7XG4gICAgd2lkdGg6IDQ5LjM5NzU5JTtcbiAgfVxuICAuZmVhdHVyZS01LWdyaWQgLmdyaWQtaXRlbTpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzYuMjVyZW0pIHtcbiAgLmZlYXR1cmUtNS1ncmlkIC5ncmlkLXNsb3QtMSAuZmVhdHVyZWQtcG9zdCB7XG4gICAgaGVpZ2h0OiAzNXJlbTtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAyMi41cmVtKSB7XG4gIC5mZWF0dXJlLTUtZ3JpZCAuZ3JpZC1zbG90LTEge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2LjI1cmVtKSB7XG4gIC5mZWF0dXJlLTUtZ3JpZCAuZ3JpZC1zbG90LTEge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi1yaWdodDogMS4yMDQ4MiU7XG4gICAgd2lkdGg6IDU0LjAzNjE0JTtcbiAgICBtYXJnaW4tcmlnaHQ6IDEuOSU7XG4gIH1cbiAgLmZlYXR1cmUtNS1ncmlkIC5ncmlkLXNsb3QtMTpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODUuMzc1cmVtKSB7XG4gIC5mZWF0dXJlLTUtZ3JpZCAuZ3JpZC1zbG90LTEge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi1yaWdodDogMS4yMDQ4MiU7XG4gICAgd2lkdGg6IDU1LjMwMTIlO1xuICAgIG1hcmdpbi1yaWdodDogMS4zNzQlO1xuICB9XG4gIC5mZWF0dXJlLTUtZ3JpZCAuZ3JpZC1zbG90LTE6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMHJlbSkge1xuICAuZmVhdHVyZS01LWdyaWQgLmdyaWQtc2xvdC0xIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tcmlnaHQ6IDEuMjA0ODIlO1xuICAgIHdpZHRoOiA1NS43MjI4OSU7XG4gICAgbWFyZ2luLXJpZ2h0OiAxLjUlO1xuICB9XG4gIC5mZWF0dXJlLTUtZ3JpZCAuZ3JpZC1zbG90LTE6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwNXJlbSkge1xuICAuZmVhdHVyZS01LWdyaWQgLmdyaWQtc2xvdC0xIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tcmlnaHQ6IDEuMjA0ODIlO1xuICAgIHdpZHRoOiA1NS4zMDEyJTtcbiAgICBtYXJnaW4tcmlnaHQ6IDEuMzc0JTtcbiAgfVxuICAuZmVhdHVyZS01LWdyaWQgLmdyaWQtc2xvdC0xOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3Ni4yNXJlbSkge1xuICAuZmVhdHVyZS01LWdyaWQgLmdyaWQtc2xvdC0yIC5mZWF0dXJlZC1wb3N0IHtcbiAgICBoZWlnaHQ6IDM1cmVtO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2LjI1cmVtKSB7XG4gIC5mZWF0dXJlLTUtZ3JpZCAuZ3JpZC1zbG90LTIge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi1yaWdodDogMS4yMDQ4MiU7XG4gICAgd2lkdGg6IDQ0LjA1OTA0JTtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gIH1cbiAgLmZlYXR1cmUtNS1ncmlkIC5ncmlkLXNsb3QtMjpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODUuMzc1cmVtKSB7XG4gIC5mZWF0dXJlLTUtZ3JpZCAuZ3JpZC1zbG90LTIge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi1yaWdodDogMS4yMDQ4MiU7XG4gICAgd2lkdGg6IDQzLjMyNTMlO1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgfVxuICAuZmVhdHVyZS01LWdyaWQgLmdyaWQtc2xvdC0yOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDByZW0pIHtcbiAgLmZlYXR1cmUtNS1ncmlkIC5ncmlkLXNsb3QtMiB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLXJpZ2h0OiAxLjIwNDgyJTtcbiAgICB3aWR0aDogNDIuNzc3MTElO1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgfVxuICAuZmVhdHVyZS01LWdyaWQgLmdyaWQtc2xvdC0yOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDVyZW0pIHtcbiAgLmZlYXR1cmUtNS1ncmlkIC5ncmlkLXNsb3QtMiB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLXJpZ2h0OiAxLjIwNDgyJTtcbiAgICB3aWR0aDogNDMuMzI1MyU7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICB9XG4gIC5mZWF0dXJlLTUtZ3JpZCAuZ3JpZC1zbG90LTI6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDIyLjVyZW0pIHtcbiAgLmZlYXR1cmUtNS1ncmlkIC5ncmlkLXNsb3QtMyB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2LjI1cmVtKSB7XG4gIC5mZWF0dXJlLTUtZ3JpZCAuZ3JpZC1zbG90LTMge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi1yaWdodDogMS4yMDQ4MiU7XG4gICAgd2lkdGg6IDQyLjQ3NTE4JTtcbiAgICBtYXJnaW4tcmlnaHQ6IDEuOSU7XG4gIH1cbiAgLmZlYXR1cmUtNS1ncmlkIC5ncmlkLXNsb3QtMzpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODUuMzc1cmVtKSB7XG4gIC5mZWF0dXJlLTUtZ3JpZCAuZ3JpZC1zbG90LTMge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi1yaWdodDogMS4yMDQ4MiU7XG4gICAgd2lkdGg6IDQzLjQ5Mzk4JTtcbiAgICBtYXJnaW4tcmlnaHQ6IDEuMzc0JTtcbiAgfVxuICAuZmVhdHVyZS01LWdyaWQgLmdyaWQtc2xvdC0zOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDByZW0pIHtcbiAgLmZlYXR1cmUtNS1ncmlkIC5ncmlkLXNsb3QtMyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLXJpZ2h0OiAxLjIwNDgyJTtcbiAgICB3aWR0aDogNDMuMDcyMjklO1xuICAgIG1hcmdpbi1yaWdodDogMS41JTtcbiAgfVxuICAuZmVhdHVyZS01LWdyaWQgLmdyaWQtc2xvdC0zOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDVyZW0pIHtcbiAgLmZlYXR1cmUtNS1ncmlkIC5ncmlkLXNsb3QtMyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLXJpZ2h0OiAxLjIwNDgyJTtcbiAgICB3aWR0aDogNDMuNDkzOTglO1xuICAgIG1hcmdpbi1yaWdodDogMS4zNzQlO1xuICB9XG4gIC5mZWF0dXJlLTUtZ3JpZCAuZ3JpZC1zbG90LTM6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2LjI1cmVtKSB7XG4gIC5mZWF0dXJlLTUtZ3JpZCAuZ3JpZC1zbG90LTQge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi1yaWdodDogMS4yMDQ4MiU7XG4gICAgd2lkdGg6IDI2Ljg2MjY1JTtcbiAgICBtYXJnaW4tcmlnaHQ6IDEuOSU7XG4gIH1cbiAgLmZlYXR1cmUtNS1ncmlkIC5ncmlkLXNsb3QtNDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODUuMzc1cmVtKSB7XG4gIC5mZWF0dXJlLTUtZ3JpZCAuZ3JpZC1zbG90LTQge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi1yaWdodDogMS4yMDQ4MiU7XG4gICAgd2lkdGg6IDI2Ljg3OTUyJTtcbiAgICBtYXJnaW4tcmlnaHQ6IDEuMzc0JTtcbiAgfVxuICAuZmVhdHVyZS01LWdyaWQgLmdyaWQtc2xvdC00Omxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDByZW0pIHtcbiAgLmZlYXR1cmUtNS1ncmlkIC5ncmlkLXNsb3QtNCB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLXJpZ2h0OiAxLjIwNDgyJTtcbiAgICB3aWR0aDogMjYuOTYzODYlO1xuICAgIG1hcmdpbi1yaWdodDogMS41JTtcbiAgfVxuICAuZmVhdHVyZS01LWdyaWQgLmdyaWQtc2xvdC00Omxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDVyZW0pIHtcbiAgLmZlYXR1cmUtNS1ncmlkIC5ncmlkLXNsb3QtNCB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLXJpZ2h0OiAxLjIwNDgyJTtcbiAgICB3aWR0aDogMjYuODc5NTIlO1xuICAgIG1hcmdpbi1yaWdodDogMS4zNzQlO1xuICB9XG4gIC5mZWF0dXJlLTUtZ3JpZCAuZ3JpZC1zbG90LTQ6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDIyLjVyZW0pIHtcbiAgLmZlYXR1cmUtNS1ncmlkIC5ncmlkLXNsb3QtNSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2LjI1cmVtKSB7XG4gIC5mZWF0dXJlLTUtZ3JpZCAuZ3JpZC1zbG90LTUge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi1yaWdodDogMS4yMDQ4MiU7XG4gICAgd2lkdGg6IDI2Ljg2MjY1JTtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gIH1cbiAgLmZlYXR1cmUtNS1ncmlkIC5ncmlkLXNsb3QtNTpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODUuMzc1cmVtKSB7XG4gIC5mZWF0dXJlLTUtZ3JpZCAuZ3JpZC1zbG90LTUge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi1yaWdodDogMS4yMDQ4MiU7XG4gICAgd2lkdGg6IDI2Ljg3OTUyJTtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gIH1cbiAgLmZlYXR1cmUtNS1ncmlkIC5ncmlkLXNsb3QtNTpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAwcmVtKSB7XG4gIC5mZWF0dXJlLTUtZ3JpZCAuZ3JpZC1zbG90LTUge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi1yaWdodDogMS4yMDQ4MiU7XG4gICAgd2lkdGg6IDI2Ljk2Mzg2JTtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gIH1cbiAgLmZlYXR1cmUtNS1ncmlkIC5ncmlkLXNsb3QtNTpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTA1cmVtKSB7XG4gIC5mZWF0dXJlLTUtZ3JpZCAuZ3JpZC1zbG90LTUge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi1yaWdodDogMS4yMDQ4MiU7XG4gICAgd2lkdGg6IDI2Ljg3OTUyJTtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gIH1cbiAgLmZlYXR1cmUtNS1ncmlkIC5ncmlkLXNsb3QtNTpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gIH1cbn1cblxuLmZlYXR1cmUtNS1ncmlkLm1vYmlsZS1kaXNhYmxlIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDMuNzVyZW0pIHtcbiAgLmZlYXR1cmUtNS1ncmlkLm1vYmlsZS1kaXNhYmxlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuXG4uZmVhdHVyZS01LWdyaWQgLnJlYWQtbW9yZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0cmVtKSB7XG4gIC5mZWF0dXJlLTUtZ3JpZCAucmVhZC1tb3JlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuXG4uZmVhdHVyZS01LWdyaWQgLmZlYXR1cmVkLXBvc3QgLmVudHJ5LWhlYWRlciAuZW50cnktdGl0bGUge1xuICBmb250LXNpemU6IDFyZW07XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwcmVtKSB7XG4gIC5mZWF0dXJlLTUtZ3JpZCAuZmVhdHVyZWQtcG9zdCAuZW50cnktaGVhZGVyIC5lbnRyeS10aXRsZSB7XG4gICAgZm9udC1zaXplOiAxLjMxMjVyZW07XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhyZW0pIHtcbiAgLmZlYXR1cmUtNS1ncmlkIC5mZWF0dXJlZC1wb3N0IC5lbnRyeS1oZWFkZXIgLmVudHJ5LXRpdGxlIHtcbiAgICBmb250LXNpemU6IDIuMzc1cmVtO1xuICB9XG59XG5cbi5mZWF0dXJlLTUtZ3JpZCAuZW50cnktbWV0YSAuY2F0ZWdvcnkge1xuICBmb250LXNpemU6IDFyZW07XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwcmVtKSB7XG4gIC5mZWF0dXJlLTUtZ3JpZCAuZW50cnktbWV0YSAuY2F0ZWdvcnkge1xuICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gIH1cbn1cblxuLmZlYXR1cmUtNS1ncmlkIC5lbnRyeS10aXRsZSxcbi5mZWF0dXJlLTUtZ3JpZCAuZW50cnktbWV0YSB7XG4gIHRleHQtc2hhZG93OiAwLjA2MjVyZW0gMC4wNjI1cmVtIDAuMDYyNXJlbSAjMDAwO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MHJlbSkge1xuICAuZmVhdHVyZS01LWdyaWQgLmVudHJ5LXRpdGxlLFxuICAuZmVhdHVyZS01LWdyaWQgLmVudHJ5LW1ldGEge1xuICAgIHRleHQtc2hhZG93OiBub25lO1xuICB9XG59XG5cbi5zaXRlIC5zdW1vbWUtc2hhcmUtY2xpZW50LXdyYXBwZXIuc3Vtb21lLXNoYXJlLWNsaWVudC13cmFwcGVyLWNlbnRlciB7XG4gIG1hcmdpbi1ib3R0b206IDEuMTg3NXJlbTtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRyZW0pIHtcbiAgLnNpdGUgLnN1bW9tZS1zaGFyZS1jbGllbnQtd3JhcHBlci5zdW1vbWUtc2hhcmUtY2xpZW50LXdyYXBwZXItY2VudGVyIHtcbiAgICBtYXJnaW4tYm90dG9tOiAyLjYyNXJlbTtcbiAgfVxufVxuXG4uc2l0ZSAuc3Vtb21lLXNoYXJlLWNsaWVudC13cmFwcGVyIGRpdi5zdW1vbWUtc2hhcmUtY2xpZW50LnN1bW9tZS1zaGFyZS1jbGllbnQtaGVhZGVyLWNlbnRlci1hcnRpY2xlIC5zdW1vbWUtc2hhcmUtY2xpZW50LXNoYXJlLFxuLnNpdGUgLnN1bW9tZS1zaGFyZS1jbGllbnQtd3JhcHBlciBkaXYuc3Vtb21lLXNoYXJlLWNsaWVudC5zdW1vbWUtc2hhcmUtY2xpZW50LWJvdHRvbS1jZW50ZXItYXJ0aWNsZSAuc3Vtb21lLXNoYXJlLWNsaWVudC1zaGFyZSB7XG4gIGhlaWdodDogMi42ODc1cmVtO1xuICB3aWR0aDogMi42ODc1cmVtO1xuICBtYXJnaW4tcmlnaHQ6IDJyZW07XG4gIHBhZGRpbmc6IDAuMzc1cmVtO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NHJlbSkge1xuICAuc2l0ZSAuc3Vtb21lLXNoYXJlLWNsaWVudC13cmFwcGVyIGRpdi5zdW1vbWUtc2hhcmUtY2xpZW50LnN1bW9tZS1zaGFyZS1jbGllbnQtaGVhZGVyLWNlbnRlci1hcnRpY2xlIC5zdW1vbWUtc2hhcmUtY2xpZW50LXNoYXJlLFxuICAuc2l0ZSAuc3Vtb21lLXNoYXJlLWNsaWVudC13cmFwcGVyIGRpdi5zdW1vbWUtc2hhcmUtY2xpZW50LnN1bW9tZS1zaGFyZS1jbGllbnQtYm90dG9tLWNlbnRlci1hcnRpY2xlIC5zdW1vbWUtc2hhcmUtY2xpZW50LXNoYXJlIHtcbiAgICBoZWlnaHQ6IDIuMDYyNXJlbTtcbiAgICB3aWR0aDogMi4wNjI1cmVtO1xuICAgIG1hcmdpbi1yaWdodDogMS4wNjI1cmVtO1xuICB9XG59XG5cbi5zaXRlIC5zdW1vbWUtc2hhcmUtY2xpZW50LXdyYXBwZXIgZGl2LnN1bW9tZS1zaGFyZS1jbGllbnQuc3Vtb21lLXNoYXJlLWNsaWVudC1oZWFkZXItY2VudGVyLWFydGljbGUgLnN1bW9tZS1zaGFyZS1jbGllbnQtc2hhcmU6bGFzdC1jaGlsZCxcbi5zaXRlIC5zdW1vbWUtc2hhcmUtY2xpZW50LXdyYXBwZXIgZGl2LnN1bW9tZS1zaGFyZS1jbGllbnQuc3Vtb21lLXNoYXJlLWNsaWVudC1ib3R0b20tY2VudGVyLWFydGljbGUgLnN1bW9tZS1zaGFyZS1jbGllbnQtc2hhcmU6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1yaWdodDogMDtcbn1cblxuLnNpdGUgLnN1bW9tZS1zaGFyZS1jbGllbnQtd3JhcHBlciBkaXYuc3Vtb21lLXNoYXJlLWNsaWVudC5zdW1vbWUtc2hhcmUtY2xpZW50LWhlYWRlci1jZW50ZXItYXJ0aWNsZSAuc3Vtb21lLXNoYXJlLWNsaWVudC1zaGFyZSBpbWcsXG4uc2l0ZSAuc3Vtb21lLXNoYXJlLWNsaWVudC13cmFwcGVyIGRpdi5zdW1vbWUtc2hhcmUtY2xpZW50LnN1bW9tZS1zaGFyZS1jbGllbnQtYm90dG9tLWNlbnRlci1hcnRpY2xlIC5zdW1vbWUtc2hhcmUtY2xpZW50LXNoYXJlIGltZyB7XG4gIGhlaWdodDogMS44NzVyZW07XG4gIHdpZHRoOiAxLjg3NXJlbTtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRyZW0pIHtcbiAgLnNpdGUgLnN1bW9tZS1zaGFyZS1jbGllbnQtd3JhcHBlciBkaXYuc3Vtb21lLXNoYXJlLWNsaWVudC5zdW1vbWUtc2hhcmUtY2xpZW50LWhlYWRlci1jZW50ZXItYXJ0aWNsZSAuc3Vtb21lLXNoYXJlLWNsaWVudC1zaGFyZSBpbWcsXG4gIC5zaXRlIC5zdW1vbWUtc2hhcmUtY2xpZW50LXdyYXBwZXIgZGl2LnN1bW9tZS1zaGFyZS1jbGllbnQuc3Vtb21lLXNoYXJlLWNsaWVudC1ib3R0b20tY2VudGVyLWFydGljbGUgLnN1bW9tZS1zaGFyZS1jbGllbnQtc2hhcmUgaW1nIHtcbiAgICBoZWlnaHQ6IDEuMjVyZW07XG4gICAgd2lkdGg6IDEuMjVyZW07XG4gIH1cbn1cblxuLnNpdGUgLnN1bW9tZS1zaGFyZS1jbGllbnQtd3JhcHBlciBkaXYuc3Vtb21lLXNoYXJlLWNsaWVudCAuc3Vtb21lLXNoYXJlLWNsaWVudC1zaGFyZS5zdW1vbWUtc2hhcmUtY2xpZW50LXNoYXJlLXNoYXJlIHtcbiAgaGVpZ2h0OiAxLjg3NXJlbTtcbiAgd2lkdGg6IDQuNTYyNXJlbTtcbiAgbWFyZ2luLXJpZ2h0OiAxLjg3NXJlbTtcbiAgcGFkZGluZzogMDtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRyZW0pIHtcbiAgLnNpdGUgLnN1bW9tZS1zaGFyZS1jbGllbnQtd3JhcHBlciBkaXYuc3Vtb21lLXNoYXJlLWNsaWVudCAuc3Vtb21lLXNoYXJlLWNsaWVudC1zaGFyZS5zdW1vbWUtc2hhcmUtY2xpZW50LXNoYXJlLXNoYXJlIHtcbiAgICBoZWlnaHQ6IDEuODc1cmVtO1xuICAgIHdpZHRoOiAzLjYyNXJlbTtcbiAgICBtYXJnaW4tcmlnaHQ6IDEuMjVyZW07XG4gICAgdG9wOiAtMC4yNXJlbTtcbiAgfVxufVxuXG4uc2l0ZSAuc3Vtb21lLXNoYXJlLWNsaWVudC13cmFwcGVyIGRpdi5zdW1vbWUtc2hhcmUtY2xpZW50IC5zdW1vbWUtc2hhcmUtY2xpZW50LXNoYXJlLnN1bW9tZS1zaGFyZS1jbGllbnQtc2hhcmUtc2hhcmUgc3Bhbixcbi5zaXRlIC5zdW1vbWUtc2hhcmUtY2xpZW50LXdyYXBwZXIgZGl2LnN1bW9tZS1zaGFyZS1jbGllbnQgLnN1bW9tZS1zaGFyZS1jbGllbnQtc2hhcmUuc3Vtb21lLXNoYXJlLWNsaWVudC1zaGFyZS1zaGFyZSBzdHJvbmcge1xuICBmb250LWZhbWlseTogXCJmcmVpZ2h0LXNhbnMtcHJvXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMS41cmVtO1xuICBmb250LXdlaWdodDogNzAwO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NHJlbSkge1xuICAuc2l0ZSAuc3Vtb21lLXNoYXJlLWNsaWVudC13cmFwcGVyIGRpdi5zdW1vbWUtc2hhcmUtY2xpZW50IC5zdW1vbWUtc2hhcmUtY2xpZW50LXNoYXJlLnN1bW9tZS1zaGFyZS1jbGllbnQtc2hhcmUtc2hhcmUgc3BhbixcbiAgLnNpdGUgLnN1bW9tZS1zaGFyZS1jbGllbnQtd3JhcHBlciBkaXYuc3Vtb21lLXNoYXJlLWNsaWVudCAuc3Vtb21lLXNoYXJlLWNsaWVudC1zaGFyZS5zdW1vbWUtc2hhcmUtY2xpZW50LXNoYXJlLXNoYXJlIHN0cm9uZyB7XG4gICAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgfVxufVxuXG4uc2l0ZSAuc3Vtb21lLXNoYXJlLWNsaWVudC13cmFwcGVyIGRpdi5zdW1vbWUtc2hhcmUtY2xpZW50IC5zdW1vbWUtc2hhcmUtY2xpZW50LXNoYXJlLnN1bW9tZS1zaGFyZS1jbGllbnQtc2hhcmUtc2hhcmUgc3Ryb25nIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0b3A6IC0xcmVtO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NHJlbSkge1xuICAuc2l0ZSAuc3Vtb21lLXNoYXJlLWNsaWVudC13cmFwcGVyIGRpdi5zdW1vbWUtc2hhcmUtY2xpZW50IC5zdW1vbWUtc2hhcmUtY2xpZW50LXNoYXJlLnN1bW9tZS1zaGFyZS1jbGllbnQtc2hhcmUtc2hhcmUgc3Ryb25nIHtcbiAgICB0b3A6IC0wLjYyNXJlbTtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2NHJlbSkge1xuICAuc2l0ZSAuc3Vtb21lLXNoYXJlLWNsaWVudC13cmFwcGVyIGRpdi5zdW1vbWUtc2hhcmUtY2xpZW50LnN1bW9tZS1zaGFyZS1jbGllbnQtYm90dG9tLWNlbnRlci1hcnRpY2xlIHtcbiAgICBtYXJnaW4tYm90dG9tOiAyLjYyNXJlbTtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzMS4xMjVyZW0pIHtcbiAgLnNpdGUgLnN1bW9tZS1zaGFyZS1jbGllbnQtd3JhcHBlci5zdW1vbWUtc2hhcmUtY2xpZW50LXdyYXBwZXItbW9iaWxlLWJvdHRvbS1iYXIge1xuICAgIGJvdHRvbTogNC40Mzc1cmVtICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLnN1bW9tZS1zaGFyZS1jbGllbnQtd3JhcHBlci5zdW1vbWUtc2hhcmUtY2xpZW50LXdyYXBwZXItbGVmdC1wYWdlIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuI3N1bW9tZS1zbWFydGJhci1wb3B1cCAuc3Vtb21lLXNtYXJ0YmFyLWlucHV0IHtcbiAgaGVpZ2h0OiAzLjA2MjVyZW07XG59XG5cbiNzdW1vbWUtc21hcnRiYXItcG9wdXAgLnN1bW9tZS1zbWFydGJhci1pbnB1dCBpZnJhbWVbaWRePSd0d2l0dGVyLXdpZGdldCddLFxuI3N1bW9tZS1zbWFydGJhci1wb3B1cCAuc3Vtb21lLXNtYXJ0YmFyLWlucHV0IGlmcmFtZS5zdW1vbWUtc21hcnRiYXItc29jaWFsIHtcbiAgaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gIG1hcmdpbjogMC45Mzc1cmVtIGF1dG8gMCAhaW1wb3J0YW50O1xufVxuXG4jc3Vtb21lLXNtYXJ0YmFyLXBvcHVwIC5zdW1vbWUtc21hcnRiYXItdGVtcGxhdGUtaGVhZGxpbmUgLnN1bW9tZS1zbWFydGJhci1jbG9zZSB7XG4gIGhlaWdodDogMnJlbTtcbiAgd2lkdGg6IDJyZW07XG4gIGJvcmRlcjogMC4yNXJlbSBzb2xpZCAjZjQ1YjkzICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1yYWRpdXM6IDUwJSAhaW1wb3J0YW50O1xuICByaWdodDogMC41NjI1cmVtICFpbXBvcnRhbnQ7XG4gIHRvcDogMC41NjI1cmVtICFpbXBvcnRhbnQ7XG59XG5cbiNzdW1vbWUtc21hcnRiYXItcG9wdXAgLnN1bW9tZS1zbWFydGJhci10ZW1wbGF0ZS1oZWFkbGluZSAuc3Vtb21lLXNtYXJ0YmFyLWNsb3NlOjpiZWZvcmUge1xuICBib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcbiAgY29udGVudDogXCJYXCIgIWltcG9ydGFudDtcbiAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgZm9udC1zaXplOiAxLjEyNXJlbSAhaW1wb3J0YW50O1xuICBmb250LXdlaWdodDogNzAwO1xuICBoZWlnaHQ6IDJyZW0gIWltcG9ydGFudDtcbiAgbGluZS1oZWlnaHQ6IDEuNzc4ICFpbXBvcnRhbnQ7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICByaWdodDogMC4yNXJlbSAhaW1wb3J0YW50O1xuICB0b3A6IC0wLjI1cmVtICFpbXBvcnRhbnQ7XG4gIHdpZHRoOiAycmVtICFpbXBvcnRhbnQ7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDY0cmVtKSB7XG4gIC5zdW1vbWUtc2Nyb2xsYm94LXBvcHVwLnN1bW9tZS1zY3JvbGxib3gtYm90dG9tIHtcbiAgICBib3R0b206IDQuMzc1cmVtICFpbXBvcnRhbnQ7XG4gICAgei1pbmRleDogMTtcbiAgfVxufVxuXG4uaG9yaXpvbnRhbC1ibG9nLWNhcmQgLnN1bW9tZS1zaGFyZS1jbGllbnQtd3JhcHBlcixcbi5wYWdlIC5zdW1vbWUtc2hhcmUtY2xpZW50LXdyYXBwZXIge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LWhlaWdodDogNDhyZW0pIHtcbiAgLnN1bW9tZS1zY3JvbGxib3gtcG9wdXAge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC1oZWlnaHQ6IDQwcmVtKSB7XG4gIC5zdW1vbWUtc21hcnRiYXItcG9wdXAge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLnN1bW9tZS1zaGFyZS1jbGllbnQtd3JhcHBlci1tb2JpbGUtYm90dG9tLWJhciB7XG4gIGJvdHRvbTogNC4zNzVyZW0gIWltcG9ydGFudDtcbiAgei1pbmRleDogMCAhaW1wb3J0YW50O1xufVxuXG4uaGlkZGVuIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLnBhZ2UtbGlua3Mge1xuICBiYWNrZ3JvdW5kOiAjZjVmNmY2O1xuICBib3JkZXI6IDAuMDYyNXJlbSBzb2xpZCAjZTllYmVlO1xuICBib3JkZXItcmFkaXVzOiAwLjI1cmVtO1xuICBmb250LXNpemU6IDEuMzc1cmVtO1xuICBwYWRkaW5nOiAwLjI1cmVtIDEuMjVyZW07XG59XG5cbi5wYWdlLWxpbmtzIC5wYWdlLWxpbmstdGV4dCB7XG4gIG1hcmdpbi1yaWdodDogMC4zNzVyZW07XG59XG5cbi5wYWdlLWxpbmtzIC5wYWdlLWxpbmsge1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBib3JkZXI6IDAuMDYyNXJlbSBzb2xpZCAjZTllYmVlO1xuICBmb250LWZhbWlseTogXCJmcmVpZ2h0LXNhbnMtcHJvXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgbWF4LWhlaWdodDogMS4xMjVyZW07XG4gIHBhZGRpbmc6IDAuMTI1cmVtIDAuNzVyZW07XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4xOHMgZWFzZS1vdXQ7XG59XG5cbi5wYWdlLWxpbmtzIGEge1xuICBib3JkZXI6IG5vbmU7XG59XG5cbi5wYWdlLWxpbmtzIGEgLnBhZ2UtbGluayB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IG5vbmU7XG4gIGZvbnQtZmFtaWx5OiBcImZyZWlnaHQtc2Fucy1wcm9cIiwgc2Fucy1zZXJpZjtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuXG4ucGFnZS1saW5rcyBhIC5wYWdlLWxpbms6Zm9jdXMsIC5wYWdlLWxpbmtzIGEgLnBhZ2UtbGluazpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG59XG5cbi5hdXRob3ItYm94IHtcbiAgYmFja2dyb3VuZDogI2Y3ZjdmNztcbiAgYm9yZGVyLXJhZGl1czogM3B4O1xuICBtYXJnaW4tYm90dG9tOiAzLjgxMjVyZW07XG4gIHBhZGRpbmc6IDAuNjI1cmVtIDEuMzc1cmVtIDMuMDYyNXJlbTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3Ni4yNXJlbSkge1xuICAuYXV0aG9yLWJveCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBtYXJnaW4tYm90dG9tOiAzcmVtO1xuICAgIG1heC13aWR0aDogNDcuNjg3NXJlbTtcbiAgICBwYWRkaW5nOiAwLjYyNXJlbSAwLjg3NXJlbSAxcmVtIDFyZW07XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRyZW0pIHtcbiAgLmF1dGhvci1ib3guZnVsbCB7XG4gICAgbWF4LXdpZHRoOiBub25lO1xuICB9XG59XG5cbi5hdXRob3ItYm94IC5hdXRob3ItYXZhdGFyIHtcbiAgaGVpZ2h0OiA1LjE4NzVyZW07XG4gIHdpZHRoOiA1LjE4NzVyZW07XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW46IDAuMTI1cmVtIDEuMzc1cmVtIDAgMDtcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRyZW0pIHtcbiAgLmF1dGhvci1ib3ggLmF1dGhvci1hdmF0YXIge1xuICAgIGhlaWdodDogNC41NjI1cmVtO1xuICAgIHdpZHRoOiA0LjU2MjVyZW07XG4gICAgbWFyZ2luOiAwLjEyNXJlbSAxLjE4NzVyZW0gMCAwO1xuICB9XG59XG5cbi5hdXRob3ItYm94IC5hdXRob3ItdGl0bGUge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQtc2l6ZTogMS4zNzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBtYXJnaW4tdG9wOiAxLjA2MjVyZW07XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0cmVtKSB7XG4gIC5hdXRob3ItYm94IC5hdXRob3ItdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogMS43NXJlbTtcbiAgICBtYXJnaW4tdG9wOiAwLjgxMjVyZW07XG4gIH1cbn1cblxuLmF1dGhvci1ib3ggLmF1dGhvci1iaW8ge1xuICBtYXJnaW46IDAuNDM3NXJlbSAwIDEuNjg3NXJlbSAwLjE4NzVyZW07XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0cmVtKSB7XG4gIC5hdXRob3ItYm94IC5hdXRob3ItYmlvIHtcbiAgICBtYXJnaW46IDAuOTM3NXJlbSAwIDEuNTYyNXJlbSAwLjI1cmVtO1xuICAgIHBhZGRpbmctcmlnaHQ6IDEuMjVyZW07XG4gIH1cbn1cblxuLmF1dGhvci1ib3ggLmF1dGhvci1iaW8gcCB7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzEuMjVyZW0pIHtcbiAgLmF1dGhvci1ib3ggLmF1dGhvci1iaW8gcCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMS4yNXJlbTtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NHJlbSkge1xuICAuYXV0aG9yLWJveCAuYXV0aG9yLWJpbyBwIHtcbiAgICBmb250LXNpemU6IDEuMTI1cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjU1O1xuICAgIG1hcmdpbi1ib3R0b206IDEuODc1cmVtO1xuICB9XG59XG5cbi5hdXRob3ItYm94IC5hdXRob3ItYmlvIHA6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5hdXRob3ItYm94IC5hbGwtcG9zdHMge1xuICBib3JkZXItYm90dG9tOiBub25lO1xuICBmb250LWZhbWlseTogXCJmcmVpZ2h0LXNhbnMtcHJvXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogNzAwO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NHJlbSkge1xuICAuYXV0aG9yLWJveCAuYWxsLXBvc3RzIHtcbiAgICBmb250LXNpemU6IDFyZW07XG4gICAgbWFyZ2luLWxlZnQ6IDAuMjVyZW07XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRyZW0pIGFuZCAobWF4LXdpZHRoOiA3Ni4yNXJlbSkge1xuICAuYXV0aG9yLWJveCAuYWxsLXBvc3RzIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuXG4uYXV0aG9yLWJveCAudHdpdHRlciB7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LXNpemU6IDFyZW07XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwcmVtKSB7XG4gIC5hdXRob3ItYm94IC50d2l0dGVyIHtcbiAgICBib3JkZXItbGVmdDogMC4wNjI1cmVtIHNvbGlkICNjY2NjY2M7XG4gICAgZGlzcGxheTogaW5saW5lO1xuICAgIG1hcmdpbi1sZWZ0OiAwLjY4NzVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAxcmVtO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0cmVtKSB7XG4gIC5hdXRob3ItYm94IC50d2l0dGVyIHtcbiAgICBmb250LXNpemU6IDFyZW07XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRyZW0pIGFuZCAobWF4LXdpZHRoOiA3Ni4yNXJlbSkge1xuICAuYXV0aG9yLWJveCAudHdpdHRlciB7XG4gICAgYm9yZGVyLWxlZnQ6IG5vbmU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwcmVtKSB7XG4gIC5hdXRob3ItYm94LmF1dGhvciAudHdpdHRlciB7XG4gICAgYm9yZGVyLWxlZnQ6IG5vbmU7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICB9XG59XG5cbi5hdXRob3ItYm94IC5hdXRob3ItYWQtYm94IHtcbiAgbWFyZ2luLXRvcDogNC4zNzVyZW07XG4gIG1heC1oZWlnaHQ6IDE1LjYyNXJlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NHJlbSkge1xuICAuYXV0aG9yLWJveCAuYXV0aG9yLWFkLWJveCB7XG4gICAgbWluLXdpZHRoOiAxOC43NXJlbTtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3Ni4yNXJlbSkge1xuICAuYXV0aG9yLWJveCAuYXV0aG9yLWFkLWJveCB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgfVxufVxuXG4uaW5maW5pdGUtc2Nyb2xsIC5wb3N0cy1uYXZpZ2F0aW9uLFxuLmluZmluaXRlLXNjcm9sbC5uZXZlcmVuZGluZyAuc2l0ZS1mb290ZXIge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4uaW5maW5pdHktZW5kLm5ldmVyZW5kaW5nIC5zaXRlLWZvb3RlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4uZ2Zvcm1fd3JhcHBlciB7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIGJvcmRlcjogMCBzb2xpZCAjZmZmO1xuICBwYWRkaW5nOiAwO1xufVxuXG4uZ2Zvcm1fd3JhcHBlci5nZm9ybV9ib2R5IC5nZm9ybV9maWVsZHMgLmdmaWVsZCxcbi5nZm9ybV93cmFwcGVyLmdmb3JtX2JvZHkgLmdmb3JtX2ZpZWxkcyAuZ2ZpZWxkLmdmX2xlZnRfaGFsZixcbi5nZm9ybV93cmFwcGVyLmdmb3JtX2JvZHkgLmdmb3JtX2ZpZWxkcyAuZ2ZpZWxkLmdmX3JpZ2h0X2hhbGYge1xuICBtYXJnaW4tYm90dG9tOiAxLjU2MjVyZW07XG59XG5cbi5nZm9ybV93cmFwcGVyIC5nZmllbGRfbGFiZWwge1xuICBjb2xvcjogIzMzMztcbiAgZm9udC1zaXplOiAxcmVtO1xuICBmb250LXdlaWdodDogNzAwO1xufVxuXG4uZ2Zvcm1fd3JhcHBlciBpbnB1dFt0eXBlPVwidGV4dFwiXSxcbi5nZm9ybV93cmFwcGVyIGlucHV0W3R5cGU9XCJ1cmxcIl0sXG4uZ2Zvcm1fd3JhcHBlciBpbnB1dFt0eXBlPVwiZW1haWxcIl0sXG4uZ2Zvcm1fd3JhcHBlciBpbnB1dFt0eXBlPVwidGVsXCJdLFxuLmdmb3JtX3dyYXBwZXIgaW5wdXRbdHlwZT1cIm51bWJlclwiXSxcbi5nZm9ybV93cmFwcGVyIGlucHV0W3R5cGU9XCJwYXNzd29yZFwiXSxcbi5nZm9ybV93cmFwcGVyIGlucHV0W3R5cGU9XCJmaWxlXCJdLFxuLmdmb3JtX3dyYXBwZXIgdGV4dGFyZWEge1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xufVxuXG4uZ2Zvcm1fd3JhcHBlciB0ZXh0YXJlYSB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uZ2Zvcm1fd3JhcHBlciBzZWxlY3Qge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIGJhY2tncm91bmQ6IHVybChcImFzc2V0cy9pbWFnZXMvc3ZnLWljb25zL2NhcmV0LWRvd24uc3ZnXCIpIG5vLXJlcGVhdCA5NyUgdHJhbnNwYXJlbnQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtc2l6ZTogMC43NXJlbTtcbiAgYm9yZGVyLWNvbG9yOiAjY2NjO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBsaW5lLWhlaWdodDogMS40NTtcbiAgcGFkZGluZzogMC43NXJlbSAxLjI1cmVtIDAuODEyNXJlbTtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwcmVtKSB7XG4gIC5nZm9ybV93cmFwcGVyIHNlbGVjdCB7XG4gICAgd2lkdGg6IDQ5JTtcbiAgfVxufVxuXG4uZ2Zvcm1fd3JhcHBlciBzZWxlY3RbbXVsdGlwbGU9XCJtdWx0aXBsZVwiXSB7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG59XG5cbi5nZm9ybV93cmFwcGVyIC5nZm9ybV9ib2R5IC5nZm9ybV9maWVsZHMgLmdmaWVsZCBzZWxlY3QsXG4uZ2Zvcm1fd3JhcHBlci5nZl9icm93c2VyX2Nocm9tZSAuZ2Zvcm1fYm9keSAuZ2Zvcm1fZmllbGRzIC5nZmllbGQgc2VsZWN0IHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwcmVtKSB7XG4gIC5nZm9ybV93cmFwcGVyIC5nZm9ybV9ib2R5IC5nZm9ybV9maWVsZHMgLmdmaWVsZCBzZWxlY3QsXG4gIC5nZm9ybV93cmFwcGVyLmdmX2Jyb3dzZXJfY2hyb21lIC5nZm9ybV9ib2R5IC5nZm9ybV9maWVsZHMgLmdmaWVsZCBzZWxlY3Qge1xuICAgIHdpZHRoOiA0OSUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4uZ2Zvcm1fd3JhcHBlciAuZ2ZpZWxkIC5jaG9zZW4tY29udGFpbmVyLXNpbmdsZSB7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbn1cblxuLmdmb3JtX3dyYXBwZXIgLmdmaWVsZCAuY2hvc2VuLWNvbnRhaW5lci1zaW5nbGUgLmNob3Nlbi1zaW5nbGUge1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBib3JkZXItY29sb3I6ICNjY2M7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGhlaWdodDogYXV0bztcbiAgcGFkZGluZzogMC43NXJlbSAxLjI1cmVtIDAuODEyNXJlbTtcbn1cblxuLmdmb3JtX3dyYXBwZXIgLmdmaWVsZCAuY2hvc2VuLWNvbnRhaW5lci1zaW5nbGUgLmNob3Nlbi1zaW5nbGUgZGl2IGIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNDAlO1xuICByaWdodDogMC42ODc1cmVtO1xuICBoZWlnaHQ6IDA7XG4gIHdpZHRoOiAwO1xuICBib3JkZXItbGVmdDogNnB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmlnaHQ6IDZweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXRvcDogNnB4IHNvbGlkICNjY2M7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG59XG5cbi5nZm9ybV93cmFwcGVyIC5nZmllbGQgLmNob3Nlbi1jb250YWluZXItc2luZ2xlIC5jaG9zZW4tZHJvcCAuY2hvc2VuLXNlYXJjaCBpbnB1dFt0eXBlPVwidGV4dFwiXSB7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG59XG5cbi5nZm9ybV93cmFwcGVyIC5nZmllbGQgLmNob3Nlbi1jb250YWluZXItc2luZ2xlIC5jaG9zZW4tZHJvcCAuY2hvc2VuLXJlc3VsdHMgbGkge1xuICBwYWRkaW5nOiAwLjYyNXJlbSAwLjMxMjVyZW07XG59XG5cbi5nZm9ybV93cmFwcGVyIC5nZmllbGQgLmNob3Nlbi1jb250YWluZXItc2luZ2xlLmNob3Nlbi1jb250YWluZXItc2luZ2xlLmNob3Nlbi13aXRoLWRyb3AgLmNob3Nlbi1zaW5nbGUge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xufVxuXG4uZ2Zvcm1fd3JhcHBlciAuZ2ZpZWxkIC5jaG9zZW4tY29udGFpbmVyLXNpbmdsZS5jaG9zZW4tY29udGFpbmVyLXNpbmdsZS5jaG9zZW4td2l0aC1kcm9wIC5jaG9zZW4tc2luZ2xlIGRpdiBiIHtcbiAgaGVpZ2h0OiAwO1xuICB3aWR0aDogMDtcbiAgYm9yZGVyLWJvdHRvbTogNnB4IHNvbGlkICNjY2M7XG4gIGJvcmRlci1sZWZ0OiA2cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yaWdodDogNnB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXI6IG5vbmU7XG59XG5cbiNjb250ZW50IC5nZm9ybV93cmFwcGVyIHtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBtYXgtd2lkdGg6IDEwMCU7XG59XG5cbiNjb250ZW50IC5nZm9ybV93cmFwcGVyIGlucHV0W3R5cGU9XCJ0ZXh0XCJdLFxuI2NvbnRlbnQgLmdmb3JtX3dyYXBwZXIgaW5wdXRbdHlwZT1cInVybFwiXSxcbiNjb250ZW50IC5nZm9ybV93cmFwcGVyIGlucHV0W3R5cGU9XCJlbWFpbFwiXSxcbiNjb250ZW50IC5nZm9ybV93cmFwcGVyIGlucHV0W3R5cGU9XCJ0ZWxcIl0sXG4jY29udGVudCAuZ2Zvcm1fd3JhcHBlciBpbnB1dFt0eXBlPVwibnVtYmVyXCJdLFxuI2NvbnRlbnQgLmdmb3JtX3dyYXBwZXIgaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdLFxuI2NvbnRlbnQgLmdmb3JtX3dyYXBwZXIgaW5wdXRbdHlwZT1cImZpbGVcIl0sXG4jY29udGVudCAuZ2Zvcm1fd3JhcHBlciB0ZXh0YXJlYSB7XG4gIHBhZGRpbmc6IDAuNzVyZW0gMS4yNXJlbSAwLjgxMjVyZW07XG4gIHdpZHRoOiAxMDAlO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MHJlbSkge1xuICAjY29udGVudCAuZ2Zvcm1fd3JhcHBlciBpbnB1dFt0eXBlPVwidGV4dFwiXSxcbiAgI2NvbnRlbnQgLmdmb3JtX3dyYXBwZXIgaW5wdXRbdHlwZT1cInVybFwiXSxcbiAgI2NvbnRlbnQgLmdmb3JtX3dyYXBwZXIgaW5wdXRbdHlwZT1cImVtYWlsXCJdLFxuICAjY29udGVudCAuZ2Zvcm1fd3JhcHBlciBpbnB1dFt0eXBlPVwidGVsXCJdLFxuICAjY29udGVudCAuZ2Zvcm1fd3JhcHBlciBpbnB1dFt0eXBlPVwibnVtYmVyXCJdLFxuICAjY29udGVudCAuZ2Zvcm1fd3JhcHBlciBpbnB1dFt0eXBlPVwicGFzc3dvcmRcIl0sXG4gICNjb250ZW50IC5nZm9ybV93cmFwcGVyIGlucHV0W3R5cGU9XCJmaWxlXCJdLFxuICAjY29udGVudCAuZ2Zvcm1fd3JhcHBlciB0ZXh0YXJlYSB7XG4gICAgd2lkdGg6IDQ5JTtcbiAgfVxufVxuXG4jY29udGVudCAuZ2Zvcm1fd3JhcHBlciAuY2hvc2VuLXNlYXJjaCBpbnB1dFt0eXBlPVwidGV4dFwiXSxcbiNjb250ZW50IC5nZm9ybV93cmFwcGVyIHRleHRhcmVhIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbiNjb250ZW50IC5nZm9ybV93cmFwcGVyIC5nZl9sZWZ0X2hhbGYsXG4jY29udGVudCAuZ2Zvcm1fd3JhcHBlciAuZ2ZfcmlnaHRfaGFsZiB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MHJlbSkge1xuICAjY29udGVudCAuZ2Zvcm1fd3JhcHBlciAuZ2ZfbGVmdF9oYWxmIGlucHV0W3R5cGU9XCJ0ZXh0XCJdLFxuICAjY29udGVudCAuZ2Zvcm1fd3JhcHBlciAuZ2ZfbGVmdF9oYWxmIGlucHV0W3R5cGU9XCJ1cmxcIl0sXG4gICNjb250ZW50IC5nZm9ybV93cmFwcGVyIC5nZl9sZWZ0X2hhbGYgaW5wdXRbdHlwZT1cImVtYWlsXCJdLFxuICAjY29udGVudCAuZ2Zvcm1fd3JhcHBlciAuZ2ZfbGVmdF9oYWxmIGlucHV0W3R5cGU9XCJ0ZWxcIl0sXG4gICNjb250ZW50IC5nZm9ybV93cmFwcGVyIC5nZl9sZWZ0X2hhbGYgaW5wdXRbdHlwZT1cIm51bWJlclwiXSxcbiAgI2NvbnRlbnQgLmdmb3JtX3dyYXBwZXIgLmdmX2xlZnRfaGFsZiBpbnB1dFt0eXBlPVwicGFzc3dvcmRcIl0sXG4gICNjb250ZW50IC5nZm9ybV93cmFwcGVyIC5nZl9sZWZ0X2hhbGYgaW5wdXRbdHlwZT1cImZpbGVcIl0sXG4gICNjb250ZW50IC5nZm9ybV93cmFwcGVyIC5nZl9yaWdodF9oYWxmIGlucHV0W3R5cGU9XCJ0ZXh0XCJdLFxuICAjY29udGVudCAuZ2Zvcm1fd3JhcHBlciAuZ2ZfcmlnaHRfaGFsZiBpbnB1dFt0eXBlPVwidXJsXCJdLFxuICAjY29udGVudCAuZ2Zvcm1fd3JhcHBlciAuZ2ZfcmlnaHRfaGFsZiBpbnB1dFt0eXBlPVwiZW1haWxcIl0sXG4gICNjb250ZW50IC5nZm9ybV93cmFwcGVyIC5nZl9yaWdodF9oYWxmIGlucHV0W3R5cGU9XCJ0ZWxcIl0sXG4gICNjb250ZW50IC5nZm9ybV93cmFwcGVyIC5nZl9yaWdodF9oYWxmIGlucHV0W3R5cGU9XCJudW1iZXJcIl0sXG4gICNjb250ZW50IC5nZm9ybV93cmFwcGVyIC5nZl9yaWdodF9oYWxmIGlucHV0W3R5cGU9XCJwYXNzd29yZFwiXSxcbiAgI2NvbnRlbnQgLmdmb3JtX3dyYXBwZXIgLmdmX3JpZ2h0X2hhbGYgaW5wdXRbdHlwZT1cImZpbGVcIl0ge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwcmVtKSB7XG4gICNjb250ZW50IC5nZm9ybV93cmFwcGVyIC5nZl9sZWZ0X2hhbGYsXG4gICNjb250ZW50IC5nZm9ybV93cmFwcGVyIC5nZl9yaWdodF9oYWxmIHtcbiAgICB3aWR0aDogNDklO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwcmVtKSB7XG4gICNjb250ZW50IC5nZm9ybV93cmFwcGVyIC5nZl9sZWZ0X2hhbGYge1xuICAgIG1hcmdpbi1yaWdodDogMiU7XG4gIH1cbn1cblxuI2NvbnRlbnQgLmdmb3JtX3dyYXBwZXIgLmdpbnB1dF9jb21wbGV4IC5uYW1lX2ZpcnN0IGlucHV0W3R5cGU9XCJ0ZXh0XCJdLFxuI2NvbnRlbnQgLmdmb3JtX3dyYXBwZXIgLmdpbnB1dF9jb21wbGV4IC5uYW1lX2xhc3QgaW5wdXRbdHlwZT1cInRleHRcIl0ge1xuICB3aWR0aDogMTAwJTtcbn1cblxuLmVtYmVkLWJsb2NrLFxuYS5lbWJlZC1ibG9jayB7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cblxuLmVtYmVkLWJsb2NrLFxuYS5lbWJlZC1ibG9jayB7XG4gIGJvcmRlci1ib3R0b206IDAuMDYyNXJlbSBzb2xpZCAjY2NjY2NjO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLWJvdHRvbTogMy41cmVtO1xuICBtYXJnaW4tdG9wOiA0LjgxMjVyZW07XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0cmVtKSB7XG4gIC5lbWJlZC1ibG9jayxcbiAgYS5lbWJlZC1ibG9jayB7XG4gICAgbWFyZ2luLWJvdHRvbTogMi4zNzVyZW07XG4gICAgbWFyZ2luLXRvcDogMy43NXJlbTtcbiAgfVxufVxuXG4uZW1iZWQtYmxvY2sgLmhlYWRlciB7XG4gIGJvcmRlci1ib3R0b206IDAuMDYyNXJlbSBzb2xpZCAjY2NjY2NjO1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1zaXplOiAxLjI1cmVtO1xuICBtYXJnaW4tYm90dG9tOiAxLjQzNzVyZW07XG4gIHBhZGRpbmctYm90dG9tOiAwLjVyZW07XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0cmVtKSB7XG4gIC5lbWJlZC1ibG9jayAuaGVhZGVyIHtcbiAgICBmb250LXNpemU6IDFyZW07XG4gIH1cbn1cblxuLmVtYmVkLWJsb2NrIGgyLFxuLmVtYmVkLWJsb2NrIC5oMixcbi5lbWJlZC1ibG9jayAuZW50cnktdGl0bGUsXG4uZW1iZWQtYmxvY2sgaDMsXG4uZW1iZWQtYmxvY2sgLmgzLFxuLmVtYmVkLWJsb2NrIC5ob3Jpem9udGFsLWJsb2ctY2FyZCAuY2FyZC10aXRsZSAuZW50cnktdGl0bGUsIC5ob3Jpem9udGFsLWJsb2ctY2FyZCAuY2FyZC10aXRsZVxuLmVtYmVkLWJsb2NrIC5lbnRyeS10aXRsZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LXNpemU6IDEuODc1cmVtO1xuICBsZXR0ZXItc3BhY2luZzogMC4xMTI1cmVtO1xuICBsaW5lLWhlaWdodDogMTtcbiAgbWFyZ2luOiAwLjgxMjVyZW0gMCAxLjkzNzVyZW07XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0cmVtKSB7XG4gIC5lbWJlZC1ibG9jayBoMixcbiAgLmVtYmVkLWJsb2NrIC5oMixcbiAgLmVtYmVkLWJsb2NrIC5lbnRyeS10aXRsZSxcbiAgLmVtYmVkLWJsb2NrIGgzLFxuICAuZW1iZWQtYmxvY2sgLmgzLFxuICAuZW1iZWQtYmxvY2sgLmhvcml6b250YWwtYmxvZy1jYXJkIC5jYXJkLXRpdGxlIC5lbnRyeS10aXRsZSwgLmhvcml6b250YWwtYmxvZy1jYXJkIC5jYXJkLXRpdGxlXG4gIC5lbWJlZC1ibG9jayAuZW50cnktdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICAgIG1hcmdpbjogMXJlbSAwIDEuNDM3NXJlbTtcbiAgfVxufVxuXG4uZW1iZWQtYmxvY2sgcCB7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDByZW0pIHtcbiAgLmVtYmVkLWJsb2NrIHAge1xuICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0cmVtKSB7XG4gIC5lbWJlZC1ibG9jayBwIHtcbiAgICBmb250LXNpemU6IDFyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMi4yNXJlbTtcbiAgfVxufVxuXG4uc2luZ2xlIC5zaXRlLWNvbnRlbnQsXG4ucGFnZSAuc2l0ZS1jb250ZW50IHtcbiAgbWFyZ2luLWJvdHRvbTogNC4wNjI1cmVtO1xufVxuXG4uc2luZ2xlIC5oZW50cnk6bm90KC5ob3Jpem9udGFsLWJsb2ctY2FyZCk6bm90KC5mZWF0dXJlZC1wb3N0KSA+IC5lbnRyeS1oZWFkZXIsXG4ucGFnZSAuaGVudHJ5Om5vdCguaG9yaXpvbnRhbC1ibG9nLWNhcmQpOm5vdCguZmVhdHVyZWQtcG9zdCkgPiAuZW50cnktaGVhZGVyIHtcbiAgbWFyZ2luLWJvdHRvbTogMi41NjI1cmVtO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NHJlbSkge1xuICAuc2luZ2xlIC5oZW50cnk6bm90KC5ob3Jpem9udGFsLWJsb2ctY2FyZCk6bm90KC5mZWF0dXJlZC1wb3N0KSA+IC5lbnRyeS1oZWFkZXIsXG4gIC5wYWdlIC5oZW50cnk6bm90KC5ob3Jpem9udGFsLWJsb2ctY2FyZCk6bm90KC5mZWF0dXJlZC1wb3N0KSA+IC5lbnRyeS1oZWFkZXIge1xuICAgIG1hcmdpbi1ib3R0b206IDMuMjVyZW07XG4gIH1cbn1cblxuLnNpbmdsZSAuaGVudHJ5Om5vdCguaG9yaXpvbnRhbC1ibG9nLWNhcmQpOm5vdCguZmVhdHVyZWQtcG9zdCkgPiAuZW50cnktdGl0bGUsXG4ucGFnZSAuaGVudHJ5Om5vdCguaG9yaXpvbnRhbC1ibG9nLWNhcmQpOm5vdCguZmVhdHVyZWQtcG9zdCkgPiAuZW50cnktdGl0bGUge1xuICBtYXJnaW4tYm90dG9tOiAxLjc1cmVtO1xuICBtYXJnaW4tdG9wOiAyLjQzNzVyZW07XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0cmVtKSB7XG4gIC5zaW5nbGUgLmhlbnRyeTpub3QoLmhvcml6b250YWwtYmxvZy1jYXJkKTpub3QoLmZlYXR1cmVkLXBvc3QpID4gLmVudHJ5LXRpdGxlLFxuICAucGFnZSAuaGVudHJ5Om5vdCguaG9yaXpvbnRhbC1ibG9nLWNhcmQpOm5vdCguZmVhdHVyZWQtcG9zdCkgPiAuZW50cnktdGl0bGUge1xuICAgIG1hcmdpbi1ib3R0b206IDEuNjI1cmVtO1xuICAgIG1hcmdpbi10b3A6IDFyZW07XG4gICAgd2lkdGg6IDk1LjglO1xuICB9XG59XG5cbi5zaW5nbGUgLmVudHJ5LWN1c3RvbS1leGNlcnB0IHtcbiAgY29sb3I6ICM1OTViNjE7XG4gIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgbWFyZ2luLWJvdHRvbTogMi4xODc1cmVtO1xuICBtYXJnaW4tbGVmdDogMC4xODc1cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDAuNjg3NXJlbTtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRyZW0pIHtcbiAgLnNpbmdsZSAuZW50cnktY3VzdG9tLWV4Y2VycHQge1xuICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDQuMzc1cmVtO1xuICAgIG1hcmdpbi1sZWZ0OiAwLjU2MjVyZW07XG4gIH1cbn1cblxuLnNpbmdsZSAuZW50cnktY3VzdG9tLWV4Y2VycHQ6OmJlZm9yZSB7XG4gIGxlZnQ6IC0wLjI1cmVtO1xuICB3aWR0aDogMC4yNXJlbTtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRyZW0pIHtcbiAgLnNpbmdsZSAuZW50cnktY3VzdG9tLWV4Y2VycHQ6OmJlZm9yZSB7XG4gICAgbGVmdDogLTAuMzc1cmVtO1xuICB9XG59XG5cbi5zaW5nbGUgLmVudHJ5LW1ldGEge1xuICBtYXJnaW4tdG9wOiAxLjI1cmVtO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMS4yNXJlbSkge1xuICAuc2luZ2xlIC5lbnRyeS1tZXRhIHtcbiAgICBmb250LXNpemU6IDEuMzc1cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjM1O1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0cmVtKSB7XG4gIC5zaW5nbGUgLmVudHJ5LW1ldGEge1xuICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuMjU7XG4gICAgbWFyZ2luOiAxLjg3NXJlbSAwO1xuICB9XG59XG5cbi5zaW5nbGUgLmVudHJ5LW1ldGEgLmNhdC1saW5rcyB7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjM1O1xuICBtYXJnaW46IDAuMjVyZW0gMC45Mzc1cmVtIDAgMC4xMjVyZW07XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0cmVtKSB7XG4gIC5zaW5nbGUgLmVudHJ5LW1ldGEgLmNhdC1saW5rcyB7XG4gICAgbGluZS1oZWlnaHQ6IDEuMjU7XG4gICAgbWFyZ2luLXJpZ2h0OiAxcmVtO1xuICB9XG59XG5cbi5zaW5nbGUgLmVudHJ5LW1ldGEgLmNhdC1saW5rcyBhIHtcbiAgcGFkZGluZzogMC4wNjI1cmVtIDEuMjVyZW07XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMxLjI1cmVtKSB7XG4gIC5zaW5nbGUgLmVudHJ5LW1ldGEgLmNhdC1saW5rcyBhIHtcbiAgICBmb250LXNpemU6IDEuMzc1cmVtO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0cmVtKSB7XG4gIC5zaW5nbGUgLmVudHJ5LW1ldGEgLmNhdC1saW5rcyBhIHtcbiAgICBmb250LXNpemU6IDEuMTI1cmVtO1xuICAgIHBhZGRpbmc6IDAuMDYyNXJlbSAxLjA2MjVyZW07XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRyZW0pIHtcbiAgLnNpbmdsZSAuZW50cnktY29udGVudCxcbiAgLnBhZ2UgLmVudHJ5LWNvbnRlbnQge1xuICAgIHBhZGRpbmctcmlnaHQ6IDQuMDYyNXJlbTtcbiAgfVxufVxuXG4uc2luZ2xlIC5lbnRyeS1jb250ZW50IGJsb2NrcXVvdGUsXG4ucGFnZSAuZW50cnktY29udGVudCBibG9ja3F1b3RlIHtcbiAgbWFyZ2luLWJvdHRvbTogMS41cmVtO1xuICBtYXJnaW4tdG9wOiAtMC4zMTI1cmVtO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMS4yNXJlbSkgYW5kIChtYXgtd2lkdGg6IDY0cmVtKSB7XG4gIC5zaW5nbGUgLmVudHJ5LWNvbnRlbnQgYmxvY2txdW90ZSxcbiAgLnBhZ2UgLmVudHJ5LWNvbnRlbnQgYmxvY2txdW90ZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMi42MjVyZW07XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRyZW0pIHtcbiAgLnNpbmdsZSAuZW50cnktY29udGVudCBibG9ja3F1b3RlLFxuICAucGFnZSAuZW50cnktY29udGVudCBibG9ja3F1b3RlIHtcbiAgICBtYXgtd2lkdGg6IDQxLjY4NzVyZW07XG4gIH1cbn1cblxuLnNpbmdsZSAuZW50cnktY29udGVudCBibG9ja3F1b3RlIHAsXG4ucGFnZSAuZW50cnktY29udGVudCBibG9ja3F1b3RlIHAge1xuICBmb250LXNpemU6IDEuMTI1cmVtO1xuICBsaW5lLWhlaWdodDogMS40NTtcbn1cblxuLnNpbmdsZSAuZW50cnktY29udGVudCBibG9ja3F1b3RlIHA6bGFzdC1jaGlsZCxcbi5wYWdlIC5lbnRyeS1jb250ZW50IGJsb2NrcXVvdGUgcDpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLnNpbmdsZSAuZW50cnktY29udGVudCAudHdpdHRlci10d2VldCxcbi5wYWdlIC5lbnRyeS1jb250ZW50IC50d2l0dGVyLXR3ZWV0IHtcbiAgbWFyZ2luLWJvdHRvbTogMi4xODc1cmVtICFpbXBvcnRhbnQ7XG4gIG1hcmdpbi10b3A6IDMuNXJlbSAhaW1wb3J0YW50O1xufVxuXG4uc2luZ2xlIC5lbnRyeS1mb290ZXIge1xuICB0ZXh0LWFsaWduOiByaWdodDtcbn1cblxuLnNpbmdsZSAucmVjZW50LXBvc3RzIHtcbiAgY2xlYXI6IGxlZnQ7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0cmVtKSB7XG4gIC5zaW5nbGUgLnJlY2VudC1wb3N0cyB7XG4gICAgbWFyZ2luLXJpZ2h0OiAyNXJlbTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxLjc1cmVtO1xuICB9XG59XG5cbi5zaW5nbGUgLnJlY2VudC1wb3N0cyAuaW4tcml2ZXItYWRzIHtcbiAgbWFyZ2luLWJvdHRvbTogMi4wNjI1cmVtO1xuICBtYXJnaW4tdG9wOiAtMS4xODc1cmVtO1xufVxuXG4uc2luZ2xlIC5yZWNlbnQtcG9zdHMubW9iaWxlLW9ubHkge1xuICBtYXJnaW4tYm90dG9tOiAzLjgxMjVyZW07XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4cmVtKSB7XG4gIC5zaW5nbGUgLnJlY2VudC1wb3N0cy5tb2JpbGUtb25seSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4uc2luZ2xlIC5yZWNlbnQtcG9zdHMuZGVza3RvcC1vbmx5IHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhyZW0pIHtcbiAgLnNpbmdsZSAucmVjZW50LXBvc3RzLmRlc2t0b3Atb25seSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cblxuLnNpbmdsZSAudGFncy1saW5rcyB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIG1hcmdpbi1ib3R0b206IDEuMjVyZW07XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG5cbi5zaW5nbGUgLnRhZ3MtbGlua3M6OmFmdGVyIHtcbiAgY2xlYXI6IGJvdGg7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OHJlbSkge1xuICAuc2luZ2xlIC50YWdzLWxpbmtzIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuXG4uc2luZ2xlIC50YWdzLWxpbmtzIGEge1xuICBiYWNrZ3JvdW5kOiAjZWVlO1xuICBib3JkZXItYm90dG9tOiBub25lO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6IDEuMzU7XG4gIG1hcmdpbi1sZWZ0OiAxLjI1cmVtO1xuICBtYXJnaW4tdG9wOiAwLjYyNXJlbTtcbiAgcGFkZGluZzogMC4zMTI1cmVtIDAuNjI1cmVtO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5zaW5nbGUgLnRhZ3MtbGlua3MgYTpob3ZlciwgLnNpbmdsZSAudGFncy1saW5rcyBhOmZvY3VzIHtcbiAgY29sb3I6ICNmZmY7XG59XG5cbi5zaW5nbGUgLnRhZ3MtbGlua3MgYTo6YmVmb3JlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDAuODc1cmVtO1xuICBsZWZ0OiAtMC4xODc1cmVtO1xuICBoZWlnaHQ6IDAuMzc1cmVtO1xuICB3aWR0aDogMC4zNzVyZW07XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgY29udGVudDogXCJcIjtcbiAgei1pbmRleDogMTtcbn1cblxuLnNpbmdsZSAudGFncy1saW5rcyBhOjphZnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAtMC44NzVyZW07XG4gIGJvcmRlci1ib3R0b206IDEuMDYyNXJlbSBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJpZ2h0OiAwLjg3NXJlbSBzb2xpZCAjZWVlO1xuICBib3JkZXItdG9wOiAxLjA2MjVyZW0gc29saWQgdHJhbnNwYXJlbnQ7XG4gIGNvbnRlbnQ6IFwiXCI7XG59XG5cbi5zaW5nbGUgLnNpbmdsZS1wb3N0LWZlYXR1cmVkLWltYWdlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMCAtMS4yNWVtO1xuICBtYXgtd2lkdGg6IG5vbmU7XG4gIHdpZHRoOiBjYWxjKCAxMDAlICsgMi41ZW0pO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MHJlbSkge1xuICAuc2luZ2xlIC5zaW5nbGUtcG9zdC1mZWF0dXJlZC1pbWFnZSB7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG59XG5cbi5hcmNoaXZlIC5wYWdlLWhlYWRlciB7XG4gIG1hcmdpbi1ib3R0b206IDIuODEyNXJlbTtcbiAgbWFyZ2luLXRvcDogMi41NjI1cmVtO1xufVxuXG4uYXJjaGl2ZSAucGFnZS10aXRsZSB7XG4gIGxldHRlci1zcGFjaW5nOiAwLjA2MjVyZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRyZW0pIHtcbiAgLmFyY2hpdmUgLnBhZ2UtdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogMi4zNzVyZW07XG4gIH1cbn1cblxuLnNlYXJjaC10ZXJtIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y0YjIyNTtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjE4cyBlYXNlLW91dDtcbn1cblxuYTpob3ZlciAuc2VhcmNoLXRlcm0sXG5hOmZvY3VzIC5zZWFyY2gtdGVybSB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xufVxuXG4uc2VhcmNoLW5vLXJlc3VsdHMgLnNlY29uZGFyeSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5zZWFyY2gtbm8tcmVzdWx0cyAuYmVsb3ctcG9zdHMge1xuICBtYXJnaW4tdG9wOiAyLjVyZW07XG59XG5cbi53aWRnZXQge1xuICBtYXJnaW46IDAgMCAxLjVyZW07XG59XG5cbi53aWRnZXQgc2VsZWN0IHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xufVxuXG4ud2lkZ2V0X3NlYXJjaCAuc2VhcmNoLXN1Ym1pdCB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5oaWRlLWluLW1vYmlsZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQzLjc1cmVtKSB7XG4gIC5oaWRlLWluLW1vYmlsZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhyZW0pIHtcbiAgLmhpZGUtaW4tdGFibGV0IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg1LjM3NXJlbSkge1xuICAuaGlkZS1pbi10YWJsZXQge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg1LjM3NXJlbSkge1xuICAuaGlkZS1pbi1kZXNrdG9wIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi5zZWNvbmRhcnkgYXNpZGUge1xuICBtYXJnaW46IDIuMzc1cmVtIGF1dG87XG4gIG1heC13aWR0aDogMTAwJTtcbiAgd2lkdGg6IDE4Ljc1cmVtO1xufVxuXG4uc2Vjb25kYXJ5IGFzaWRlOmZpcnN0LW9mLXR5cGUge1xuICBtYXJnaW4tYm90dG9tOiAyLjM3NXJlbTtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICB3aWR0aDogMjVyZW07XG59XG5cbi5zZWNvbmRhcnkgYXNpZGUuY2xvbmUtd2lkZ2V0LCAuc2Vjb25kYXJ5IGFzaWRlLndpZGdldF9ibG9ndWluX2xpbmtfYm94X3dpZGdldCB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uc2Vjb25kYXJ5IC53aWRnZXQgLndpZGdldC10aXRsZSB7XG4gIGJhY2tncm91bmQ6ICMzZjQxNDc7XG4gIGNvbG9yOiAjZmZmO1xuICBmb250LXNpemU6IDEuNXJlbTtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMDkzNzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAyO1xuICBtYXJnaW4tYm90dG9tOiAxLjc1cmVtO1xuICBtYXJnaW4tbGVmdDogLTAuNjI1cmVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIHdpZHRoOiBjYWxjKDEwMCUgKyAyMHB4KTtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRyZW0pIHtcbiAgLnNlY29uZGFyeSAud2lkZ2V0IC53aWRnZXQtdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgICBsaW5lLWhlaWdodDogMi40O1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG5cbi5jbG9uZS13aWRnZXQgLmZlYXR1cmVkc2lkZWJhciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICB3aWR0aDogMTAwJTtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDByZW0pIHtcbiAgLmNsb25lLXdpZGdldCAuZmVhdHVyZWRzaWRlYmFyIHtcbiAgICBwYWRkaW5nOiAwIDMuMTI1cmVtO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0cmVtKSB7XG4gIC5jbG9uZS13aWRnZXQgLmZlYXR1cmVkc2lkZWJhciB7XG4gICAgcGFkZGluZzogMDtcbiAgICB3aWR0aDogMTguNzVyZW07XG4gIH1cbn1cblxuLmNsb25lLXdpZGdldCAuZmVhdHVyZWRzaWRlYmFyIC5pbWFnZS1hcy1iYWNrZ3JvdW5kIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBib3JkZXI6IG5vbmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tYm90dG9tOiAxLjI1cmVtO1xuICBtaW4taGVpZ2h0OiAxMi41cmVtO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MHJlbSkge1xuICAuY2xvbmUtd2lkZ2V0IC5mZWF0dXJlZHNpZGViYXIgLmltYWdlLWFzLWJhY2tncm91bmQge1xuICAgIG1pbi1oZWlnaHQ6IDE5LjEyNXJlbTtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NHJlbSkge1xuICAuY2xvbmUtd2lkZ2V0IC5mZWF0dXJlZHNpZGViYXIgLmltYWdlLWFzLWJhY2tncm91bmQge1xuICAgIG1hcmdpbi1ib3R0b206IDEuNTYyNXJlbTtcbiAgICBtaW4taGVpZ2h0OiAxMi41cmVtO1xuICB9XG59XG5cbi5jbG9uZS13aWRnZXQgLmZlYXR1cmVkc2lkZWJhciAuaW1hZ2UtYXMtYmFja2dyb3VuZDo6YWZ0ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGhlaWdodDogMTAwJTtcbiAgd2lkdGg6IDEwMCU7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudChyZ2JhKDQzLCAzOCwgNDMsIDApIDQ4JSwgIzJiMjYyYiA5NSUsICMyYjI2MmIgOTYlKTtcbiAgY29udGVudDogXCJcIjtcbiAgei1pbmRleDogMjtcbn1cblxuLmNsb25lLXdpZGdldCAuZmVhdHVyZWRzaWRlYmFyIC5pbWFnZS1hcy1iYWNrZ3JvdW5kOjpiZWZvcmUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGhlaWdodDogMTAwJTtcbiAgd2lkdGg6IDEwMCU7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogb3BhY2l0eSAwLjE4cyBlYXNlLWluLW91dDtcbiAgLW1vei10cmFuc2l0aW9uOiBvcGFjaXR5IDAuMThzIGVhc2UtaW4tb3V0O1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMThzIGVhc2UtaW4tb3V0O1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCByZ2JhKDQzLCAzOCwgNDMsIDAuNykgNDglLCAjMmIyNjJiIDk1JSwgIzJiMjYyYiA5NiUpO1xuICBjb250ZW50OiBcIlwiO1xuICBvcGFjaXR5OiAwO1xuICB6LWluZGV4OiAxO1xufVxuXG4uY2xvbmUtd2lkZ2V0IC5mZWF0dXJlZHNpZGViYXIgLmltYWdlLWFzLWJhY2tncm91bmQgaDQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMDtcbiAgY29sb3I6ICNmZmY7XG4gIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBsZXR0ZXItc3BhY2luZzogMDtcbiAgbGluZS1oZWlnaHQ6IDEuMTU7XG4gIG1hcmdpbi1ib3R0b206IDAuNjI1cmVtO1xuICBwYWRkaW5nOiAwIDAuMjVyZW0gMCAwLjc1cmVtO1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgdHJhbnNpdGlvbjogY29sb3IgMC4xOHMgZWFzZS1vdXQ7XG4gIHotaW5kZXg6IDQ7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0cmVtKSB7XG4gIC5jbG9uZS13aWRnZXQgLmZlYXR1cmVkc2lkZWJhciAuaW1hZ2UtYXMtYmFja2dyb3VuZCBoNCB7XG4gICAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgfVxufVxuXG4uY2xvbmUtd2lkZ2V0IC5mZWF0dXJlZHNpZGViYXIgLmltYWdlLWFzLWJhY2tncm91bmQ6aG92ZXI6OmJlZm9yZSwgLmNsb25lLXdpZGdldCAuZmVhdHVyZWRzaWRlYmFyIC5pbWFnZS1hcy1iYWNrZ3JvdW5kOmZvY3VzOjpiZWZvcmUge1xuICBvcGFjaXR5OiAwLjU7XG59XG5cbi5saW5rLWJveCAubGluay1ib3gtY29udGVudCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICB3aWR0aDogMTAwJTtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDByZW0pIHtcbiAgLmxpbmstYm94IC5saW5rLWJveC1jb250ZW50IHtcbiAgICBwYWRkaW5nOiAwIDMuMTI1cmVtO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0cmVtKSB7XG4gIC5saW5rLWJveCAubGluay1ib3gtY29udGVudCB7XG4gICAgcGFkZGluZzogMDtcbiAgICB3aWR0aDogMTguNzVyZW07XG4gIH1cbn1cblxuLmxpbmstYm94IC5saW5rLWJveC10aHVtYiB7XG4gIGhlaWdodDogMTguMjVyZW07XG4gIG1hcmdpbi1ib3R0b206IDEuNjg3NXJlbTtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0cmVtKSB7XG4gIC5saW5rLWJveCAubGluay1ib3gtdGh1bWIge1xuICAgIGhlaWdodDogMTIuNXJlbTtcbiAgfVxufVxuXG4ubGluay1ib3ggLmxpbmstYm94LWxpc3Qge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cblxuLmxpbmstYm94IC5saW5rLWJveC1saXN0OjphZnRlciB7XG4gIGNsZWFyOiBib3RoO1xuICBjb250ZW50OiBcIlwiO1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLmxpbmstYm94IC5saW5rLWJveC1saXN0IC5saW5rLWJveC1pdGVtIHtcbiAgbGluZS1oZWlnaHQ6IDEuMzU7XG4gIG1hcmdpbjogLTAuMTg3NXJlbSAwIDEuNDM3NXJlbSAwO1xufVxuXG4ubGluay1ib3ggLmxpbmstYm94LWxpc3QgLmxpbmstYm94LWl0ZW0gLmxpbmstYm94LWxpbmsge1xuICAtd2Via2l0LXRyYW5zaXRpb246IGNvbG9yIDAuMThzIGVhc2UtaW4tb3V0LCBib3JkZXItYm90dG9tIDAuMThzIGVhc2UtaW4tb3V0O1xuICAtbW96LXRyYW5zaXRpb246IGNvbG9yIDAuMThzIGVhc2UtaW4tb3V0LCBib3JkZXItYm90dG9tIDAuMThzIGVhc2UtaW4tb3V0O1xuICB0cmFuc2l0aW9uOiBjb2xvciAwLjE4cyBlYXNlLWluLW91dCwgYm9yZGVyLWJvdHRvbSAwLjE4cyBlYXNlLWluLW91dDtcbiAgYm9yZGVyLWJvdHRvbTogMC4xMjVyZW0gc29saWQgI2M5YzljYjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtZmFtaWx5OiBcImZyZWlnaHQtc2Fucy1wcm9cIiwgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAxLjI1cmVtO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIHBhZGRpbmctYm90dG9tOiAwLjgxMjVyZW07XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0cmVtKSB7XG4gIC5saW5rLWJveCAubGluay1ib3gtbGlzdCAubGluay1ib3gtaXRlbSAubGluay1ib3gtbGluayB7XG4gICAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgfVxufVxuXG4ubGluay1ib3ggLmxpbmstYm94LWxpc3QgLmxpbmstYm94LWl0ZW0gLmxpbmstYm94LWxpbms6aG92ZXIsIC5saW5rLWJveCAubGluay1ib3gtbGlzdCAubGluay1ib3gtaXRlbSAubGluay1ib3gtbGluazpmb2N1cyB7XG4gIGJvcmRlci1ib3R0b20tY29sb3I6ICNmNGIyMjU7XG59XG5cbi5saW5rLWJveC10aGlyZCB7XG4gIHdpZHRoOiAzMiU7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwcmVtKSB7XG4gIC5saW5rLWJveC10aGlyZCB7XG4gICAgd2lkdGg6IDQ0JTtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NHJlbSkge1xuICAubGluay1ib3gtdGhpcmQge1xuICAgIHdpZHRoOiA1MCU7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODUuMzc1cmVtKSB7XG4gIC5saW5rLWJveC10aGlyZCB7XG4gICAgd2lkdGg6IDM0JTtcbiAgfVxufVxuXG4ubGluay1ib3gtdGhpcmQgLmxpbmstYm94LXRodW1iIHtcbiAgaGVpZ2h0OiA2LjI1cmVtO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0My43NXJlbSkge1xuICAubGluay1ib3gtdGhpcmQgLmxpbmstYm94LXRodW1iIHtcbiAgICBoZWlnaHQ6IDEwcmVtO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0cmVtKSB7XG4gIC5saW5rLWJveC10aGlyZCAubGluay1ib3gtdGh1bWIge1xuICAgIGhlaWdodDogMTIuNXJlbTtcbiAgfVxufVxuXG4ubGluay1ib3gtdGhpcmQgLndpZGdldC10aXRsZSB7XG4gIGZvbnQtc2l6ZTogMS4zNzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjI7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhyZW0pIHtcbiAgLmxpbmstYm94LXRoaXJkIC53aWRnZXQtdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAyO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0cmVtKSB7XG4gIC5saW5rLWJveC10aGlyZCAud2lkZ2V0LXRpdGxlIHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB9XG59XG5cbi5saW5rLWJveC10aGlyZCAubGluay1ib3gtbGlzdCAubGluay1ib3gtaXRlbSB7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxO1xufVxuXG4ubGluay1ib3gtdGhpcmQgLmxpbmstYm94LWxpc3QgLmxpbmstYm94LWl0ZW0gLmxpbmstYm94LWxpbmsge1xuICBmb250LXNpemU6IDAuOTM3NXJlbTtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhyZW0pIHtcbiAgLmxpbmstYm94LXRoaXJkIC5saW5rLWJveC1saXN0IC5saW5rLWJveC1pdGVtIC5saW5rLWJveC1saW5rIHtcbiAgICBmb250LXNpemU6IDEuNjI1cmVtO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4cmVtKSB7XG4gIC5saW5rLWJveC10aGlyZCAubGluay1ib3gtbGlzdCAubGluay1ib3gtaXRlbSB7XG4gICAgbGluZS1oZWlnaHQ6IDEuMzU7XG4gIH1cbn1cblxuLmFkLXdpZGdldCB7XG4gIG1hcmdpbi10b3A6IDEuMjVyZW07XG59XG5cbi5iZWxvdy1jb250ZW50IHtcbiAgbWFyZ2luLWJvdHRvbTogMy41NjI1cmVtO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OHJlbSkge1xuICAuYmVsb3ctY29udGVudCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMy41NjI1cmVtO1xuICB9XG59XG5cbi5iZWxvdy1jb250ZW50IC5mZWF0dXJlZCB7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIHRyYW5zZm9ybS1zdHlsZTogcHJlc2VydmUtM2Q7XG59XG5cbi5jc2gtd2lkZ2V0IC53aWRnZXQtdGl0bGUge1xuICBmb250LXNpemU6IDIuMjVyZW07XG4gIG1hcmdpbi1ib3R0b206IDJyZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhyZW0pIHtcbiAgLmNzaC13aWRnZXQgLndpZGdldC10aXRsZSB7XG4gICAgZm9udC1zaXplOiAxLjc1cmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDIuMTg3NXJlbTtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB9XG59XG5cbi5iZWxvdy1jb250ZW50IC5jc2gtd2lkZ2V0LFxuLmJlbG93LXBvc3RzIC5jc2gtd2lkZ2V0IHtcbiAgbWFyZ2luLWJvdHRvbTogNC4wNjI1cmVtO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OHJlbSkge1xuICAuYmVsb3ctY29udGVudCAuY3NoLXdpZGdldCxcbiAgLmJlbG93LXBvc3RzIC5jc2gtd2lkZ2V0IHtcbiAgICBtYXJnaW4tYm90dG9tOiA0LjI1cmVtO1xuICB9XG59XG5cbi5iZWxvdy1jb250ZW50IC5jc2gtd2lkZ2V0IC5mZWF0dXJlZCBoNCxcbi5iZWxvdy1wb3N0cyAuY3NoLXdpZGdldCAuZmVhdHVyZWQgaDQge1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICB0cmFuc2Zvcm0tc3R5bGU6IHByZXNlcnZlLTNkO1xuICBsZXR0ZXItc3BhY2luZzogMDtcbiAgbGluZS1oZWlnaHQ6IDEuMjU7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xufVxuXG4uYmVsb3ctY29udGVudCAuY3NoLXdpZGdldCAubW9yZS1yZWFkaW5nLWFydGljbGUsXG4uYmVsb3ctcG9zdHMgLmNzaC13aWRnZXQgLm1vcmUtcmVhZGluZy1hcnRpY2xlIHtcbiAgaGVpZ2h0OiAxMS41NjI1cmVtO1xuICB3aWR0aDogMTAwJTtcbiAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZsb2F0OiBsZWZ0O1xuICBtYXJnaW4tYm90dG9tOiAxLjU2MjVyZW07XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4cmVtKSB7XG4gIC5iZWxvdy1jb250ZW50IC5jc2gtd2lkZ2V0IC5tb3JlLXJlYWRpbmctYXJ0aWNsZSxcbiAgLmJlbG93LXBvc3RzIC5jc2gtd2lkZ2V0IC5tb3JlLXJlYWRpbmctYXJ0aWNsZSB7XG4gICAgaGVpZ2h0OiAyMnJlbTtcbiAgICBtYXJnaW4tcmlnaHQ6IDEuMjVyZW07XG4gICAgd2lkdGg6IGNhbGMoNTAlIC0gMjBweCk7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRyZW0pIHtcbiAgLmJlbG93LWNvbnRlbnQgLmNzaC13aWRnZXQgLm1vcmUtcmVhZGluZy1hcnRpY2xlLFxuICAuYmVsb3ctcG9zdHMgLmNzaC13aWRnZXQgLm1vcmUtcmVhZGluZy1hcnRpY2xlIHtcbiAgICBoZWlnaHQ6IDEyLjM3NXJlbTtcbiAgICB3aWR0aDogY2FsYygyNSUgLSAxNXB4KTtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIG1heC13aWR0aDogMTguNzVyZW07XG4gIH1cbn1cblxuLmJlbG93LWNvbnRlbnQgLmNzaC13aWRnZXQgLm1vcmUtcmVhZGluZy1hcnRpY2xlOmxhc3QtY2hpbGQsXG4uYmVsb3ctcG9zdHMgLmNzaC13aWRnZXQgLm1vcmUtcmVhZGluZy1hcnRpY2xlOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBtYXJnaW4tcmlnaHQ6IDA7XG59XG5cbi5iZWxvdy1jb250ZW50IC5jc2gtd2lkZ2V0IC5tb3JlLXJlYWRpbmctYXJ0aWNsZSBoNCxcbi5iZWxvdy1wb3N0cyAuY3NoLXdpZGdldCAubW9yZS1yZWFkaW5nLWFydGljbGUgaDQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgY29sb3I6ICNmZmY7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwLjYyNXJlbTtcbiAgd2lkdGg6IDEwMCU7XG4gIHotaW5kZXg6IDE7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0cmVtKSB7XG4gIC5iZWxvdy1jb250ZW50IC5jc2gtd2lkZ2V0IC5tb3JlLXJlYWRpbmctYXJ0aWNsZSBoNCxcbiAgLmJlbG93LXBvc3RzIC5jc2gtd2lkZ2V0IC5tb3JlLXJlYWRpbmctYXJ0aWNsZSBoNCB7XG4gICAgZm9udC1zaXplOiAxLjE4NzVyZW07XG4gIH1cbn1cblxuLmJlbG93LWNvbnRlbnQ6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5hZC13aWRnZXQge1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xufVxuXG4uYWQtd2lkZ2V0OmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLXRvcDogMDtcbn1cblxuLmFkLXdpZGdldDpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLnRvcC1hZC1zZWN0aW9uIHtcbiAgbWFyZ2luLWJvdHRvbTogMS4zMTI1cmVtO1xuICBtYXJnaW4tdG9wOiAxLjU2MjVyZW07XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0cmVtKSB7XG4gIC50b3AtYWQtc2VjdGlvbiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMS4zNzVyZW07XG4gICAgbWFyZ2luLXRvcDogMS44NzVyZW07XG4gIH1cbn1cblxuLnRvcC1hZC1zZWN0aW9uIC5hZC13aWRnZXQge1xuICBtYXgtd2lkdGg6IDYwLjYyNXJlbTtcbn1cblxuLmluLXJpdmVyLWFkcyB7XG4gIG1hcmdpbjogMi4xODc1cmVtIDA7XG59XG5cbi5pbi1yaXZlci1hZHMgLmFkLXdpZGdldCB7XG4gIG1heC13aWR0aDogNDUuNXJlbTtcbn1cblxuLmFib3ZlLXBvc3RzLWFkcyB7XG4gIG1hcmdpbi1ib3R0b206IDEuNjg3NXJlbTtcbiAgbWFyZ2luLXRvcDogMC40Mzc1cmVtO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NHJlbSkge1xuICAuYWJvdmUtcG9zdHMtYWRzIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjc1cmVtO1xuICB9XG59XG5cbi5hYm92ZS1wb3N0cy1hZHMgLmFkLXdpZGdldCB7XG4gIG1heC13aWR0aDogNDUuNXJlbTtcbn1cblxuLmJlbG93LWNvbnRlbnQgLmFkLXdpZGdldCB7XG4gIG1heC13aWR0aDogNjAuNjI1cmVtO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NHJlbSkge1xuICAuYmVsb3ctcG9zdHMge1xuICAgIHBhZGRpbmctYm90dG9tOiAxcmVtO1xuICB9XG59XG5cbi5iZWxvdy1wb3N0cyAud2lkZ2V0OmZpcnN0LW9mLXR5cGUgLndpZGdldC10aXRsZSB7XG4gIG1hcmdpbi10b3A6IDA7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0cmVtKSB7XG4gIC5iZWxvdy1wb3N0cyAuY3NoLXdpZGdldCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMy4wNjI1cmVtO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2LjI1cmVtKSB7XG4gIC5iZWxvdy1wb3N0cyAuY3NoLXdpZGdldCAuZmVhdHVyZWQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cblxuLmJlbG93LXBvc3RzIC5jc2gtd2lkZ2V0IC5tb3JlLXJlYWRpbmctYXJ0aWNsZS5mZWF0dXJlZC1wb3N0IHtcbiAgZmxvYXQ6IG5vbmU7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgbWF4LXdpZHRoOiBub25lO1xuICB3aWR0aDogMTAwJTtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzYuMjVyZW0pIHtcbiAgLmJlbG93LXBvc3RzIC5jc2gtd2lkZ2V0IC5tb3JlLXJlYWRpbmctYXJ0aWNsZS5mZWF0dXJlZC1wb3N0IHtcbiAgICBoZWlnaHQ6IDEyLjkzNzVyZW07XG4gICAgd2lkdGg6IDQ3LjUlO1xuICAgIG1hcmdpbi1ib3R0b206IDEuMTI1cmVtO1xuICAgIG1heC13aWR0aDogMjMuNzVyZW07XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODMuMTI1cmVtKSB7XG4gIC5iZWxvdy1wb3N0cyAuY3NoLXdpZGdldCAubW9yZS1yZWFkaW5nLWFydGljbGUuZmVhdHVyZWQtcG9zdCB7XG4gICAgd2lkdGg6IDUwJTtcbiAgfVxufVxuXG4uYmVsb3ctcG9zdHMgLndpZGdldF9ibG9ndWluX2xpbmtfYm94X3dpZGdldCB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0cmVtKSB7XG4gIC5iZWxvdy1wb3N0cyAud2lkZ2V0X2Jsb2d1aW5fbGlua19ib3hfd2lkZ2V0IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmbG9hdDogbGVmdDtcbiAgICBtYXgtd2lkdGg6IDIzLjc1cmVtO1xuICAgIHdpZHRoOiA0Ny41JTtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4My4xMjVyZW0pIHtcbiAgLmJlbG93LXBvc3RzIC53aWRnZXRfYmxvZ3Vpbl9saW5rX2JveF93aWRnZXQge1xuICAgIHdpZHRoOiA1MCU7XG4gIH1cbn1cblxuLmJlbG93LXBvc3RzIC53aWRnZXRfYmxvZ3Vpbl9saW5rX2JveF93aWRnZXQgLndpZGdldC10aXRsZSB7XG4gIGJhY2tncm91bmQ6ICMzZjQxNDc7XG4gIGNvbG9yOiAjZmZmO1xuICBsZXR0ZXItc3BhY2luZzogMC4wOTM3NXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbWFyZ2luLXRvcDogMDtcbiAgcGFkZGluZzogMC41cmVtIDA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRyZW0pIHtcbiAgLmJlbG93LXBvc3RzIC53aWRnZXRfYmxvZ3Vpbl9saW5rX2JveF93aWRnZXQ6bGFzdC1vZi10eXBlIHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gIH1cbn1cblxuLmJlbG93LXBvc3RzIC53aWRnZXRfYmxvZ3Vpbl9saW5rX2JveF93aWRnZXQgLmxpbmstYm94LWNvbnRlbnQsXG4uYmVsb3ctcG9zdHMgLndpZGdldF9ibG9ndWluX2xpbmtfYm94X3dpZGdldCAubGluay1ib3gtdGh1bWIge1xuICB3aWR0aDogMTAwJTtcbn1cblxuLmJlbG93LXBvc3RzIC53aWRnZXRfYmxvZ3Vpbl9saW5rX2JveF93aWRnZXQgLmxpbmstYm94LXRodW1iIHtcbiAgaGVpZ2h0OiAxNy4zMTI1cmVtO1xuICBtYXJnaW4tYm90dG9tOiAwLjc1cmVtO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NHJlbSkge1xuICAuYmVsb3ctcG9zdHMgLndpZGdldF9ibG9ndWluX2xpbmtfYm94X3dpZGdldCAubGluay1ib3gtdGh1bWIge1xuICAgIG1hcmdpbi1ib3R0b206IDIuNDM3NXJlbTtcbiAgfVxufVxuXG4uYmVsb3ctcG9zdHMgLndpZGdldF9ibG9ndWluX2xpbmtfYm94X3dpZGdldCAubGluay1ib3gtaXRlbTpsYXN0LWNoaWxkIHtcbiAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbn1cbiIsIkBjaGFyc2V0IFwiVVRGLThcIjtcblxuLy8vIFRyYW5zbGF0ZXMgYW4gZWxlbWVudCBob3Jpem9udGFsbHkgYnkgYSBudW1iZXIgb2YgY29sdW1ucy4gUG9zaXRpdmUgYXJndW1lbnRzIHNoaWZ0IHRoZSBlbGVtZW50IHRvIHRoZSBhY3RpdmUgbGF5b3V0IGRpcmVjdGlvbiwgd2hpbGUgbmVnYXRpdmUgb25lcyBzaGlmdCBpdCB0byB0aGUgb3Bwb3NpdGUgZGlyZWN0aW9uLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXIgKHVuaXRsZXNzKX0gJG4tY29sdW1ucyBbMV1cbi8vLyAgIE51bWJlciBvZiBjb2x1bW5zIGJ5IHdoaWNoIHRoZSBlbGVtZW50IHNoaWZ0cy5cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBVc2FnZVxuLy8vICAgLmVsZW1lbnQge1xuLy8vICAgICBAaW5jbHVkZSBzaGlmdCgtMyk7XG4vLy8gICB9XG4vLy9cbi8vLyBAZXhhbXBsZSBjc3MgLSBDU1Mgb3V0cHV0XG4vLy8gICAuZWxlbWVudCB7XG4vLy8gICAgIG1hcmdpbi1sZWZ0OiAtMjUuNTg5NDElO1xuLy8vICAgfVxuXG5AbWl4aW4gc2hpZnQoJG4tY29sdW1uczogMSkge1xuICBAaW5jbHVkZSBzaGlmdC1pbi1jb250ZXh0KCRuLWNvbHVtbnMpO1xufVxuXG4vLy8gVHJhbnNsYXRlcyBhbiBlbGVtZW50IGhvcml6b250YWxseSBieSBhIG51bWJlciBvZiBjb2x1bW5zLCBpbiBhIHNwZWNpZmljIG5lc3RpbmcgY29udGV4dC5cbi8vL1xuLy8vIEBwYXJhbSB7TGlzdH0gJHNoaWZ0XG4vLy8gICBBIGxpc3QgY29udGFpbmluZyB0aGUgbnVtYmVyIG9mIGNvbHVtbnMgdG8gc2hpZnQgKGAkY29sdW1uc2ApIGFuZCB0aGUgbnVtYmVyIG9mIGNvbHVtbnMgb2YgdGhlIHBhcmVudCBlbGVtZW50IChgJGNvbnRhaW5lci1jb2x1bW5zYCkuXG4vLy9cbi8vLyAgIFRoZSB0d28gdmFsdWVzIGNhbiBiZSBzZXBhcmF0ZWQgd2l0aCBhbnkgc3RyaW5nIHN1Y2ggYXMgYG9mYCwgYC9gLCBldGMuXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gVXNhZ2Vcbi8vLyAgIC5lbGVtZW50IHtcbi8vLyAgICAgQGluY2x1ZGUgc2hpZnQoLTMgb2YgNik7XG4vLy8gICB9XG4vLy9cbi8vLyBAZXhhbXBsZSBjc3MgLSBDU1Mgb3V0cHV0XG4vLy8gICAuZWxlbWVudCB7XG4vLy8gICAgIG1hcmdpbi1sZWZ0OiAtNTIuNDE0NTglO1xuLy8vICAgfVxuXG5AbWl4aW4gc2hpZnQtaW4tY29udGV4dCgkc2hpZnQ6ICRjb2x1bW5zIG9mICRjb250YWluZXItY29sdW1ucykge1xuICAkbi1jb2x1bW5zOiBudGgoJHNoaWZ0LCAxKTtcbiAgJHBhcmVudC1jb2x1bW5zOiBjb250YWluZXItc2hpZnQoJHNoaWZ0KSAhZ2xvYmFsO1xuXG4gICRkaXJlY3Rpb246IGdldC1kaXJlY3Rpb24oJGxheW91dC1kaXJlY3Rpb24sICRkZWZhdWx0LWxheW91dC1kaXJlY3Rpb24pO1xuICAkb3Bwb3NpdGUtZGlyZWN0aW9uOiBnZXQtb3Bwb3NpdGUtZGlyZWN0aW9uKCRkaXJlY3Rpb24pO1xuXG4gIG1hcmdpbi0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAkbi1jb2x1bW5zICogZmxleC1ncmlkKDEsICRwYXJlbnQtY29sdW1ucykgKyAkbi1jb2x1bW5zICogZmxleC1ndXR0ZXIoJHBhcmVudC1jb2x1bW5zKTtcblxuICAvLyBSZXNldCBuZXN0aW5nIGNvbnRleHRcbiAgJHBhcmVudC1jb2x1bW5zOiAkZ3JpZC1jb2x1bW5zICFnbG9iYWw7XG59XG4iXX0= */

html{box-sizing:border-box}*,*::after,*::before{box-sizing:inherit}.single .comment-wrap.open{height:auto;opacity:1}@media screen and (min-width: 76.25rem){.horizontal-blog-card{display:flex;flex-direction:row;align-items:stretch;gap:0;min-height:0}.horizontal-blog-card footer{clear:none;position:static;margin:auto 0 0 0;padding:0 .625rem 0 1.25rem}.horizontal-blog-card footer .byline{margin:0}.horizontal-blog-card .card-contents{display:flex;flex-direction:column;justify-content:space-between;row-gap:.5rem;padding:.25rem 0}.horizontal-blog-card .card-contents *{float:none !important;clear:none !important}.horizontal-blog-card .card-title{padding:0 .625rem 0 1.25rem}.horizontal-blog-card .card-title .entry-title{margin:0;line-height:1.05}.horizontal-blog-card .card-excerpt{padding:0 .625rem 0 1.25rem}.horizontal-blog-card .card-excerpt p{margin:0 0 .25rem 0}.horizontal-blog-card .card-excerpt p:last-child{margin:0}.horizontal-blog-card .card-image{float:none;min-height:0;width:47%;height:auto;aspect-ratio:832/447;margin-right:0}.horizontal-blog-card .card-image img{display:block;width:100%;height:auto;aspect-ratio:832/447;object-fit:cover}}
