@charset "UTF-8";
/**
 * Foundation for Sites by ZURB
 * Version 6.2.1
 * foundation.zurb.com
 * Licensed under MIT Open Source
 */
@import url(http://weloveiconfonts.com/api/?family=entypo);
.slide-in-down.mui-enter, .slide-in-left.mui-enter, .slide-in-up.mui-enter, .slide-in-right.mui-enter, .slide-out-down.mui-leave, .slide-out-right.mui-leave, .slide-out-up.mui-leave, .slide-out-left.mui-leave, .fade-in.mui-enter, .fade-out.mui-leave, .hinge-in-from-top.mui-enter, .hinge-in-from-right.mui-enter, .hinge-in-from-bottom.mui-enter, .hinge-in-from-left.mui-enter, .hinge-in-from-middle-x.mui-enter, .hinge-in-from-middle-y.mui-enter, .hinge-out-from-top.mui-leave, .hinge-out-from-right.mui-leave, .hinge-out-from-bottom.mui-leave, .hinge-out-from-left.mui-leave, .hinge-out-from-middle-x.mui-leave, .hinge-out-from-middle-y.mui-leave, .scale-in-up.mui-enter, .scale-in-down.mui-enter, .scale-out-up.mui-leave, .scale-out-down.mui-leave, .spin-in.mui-enter, .spin-out.mui-leave, .spin-in-ccw.mui-enter, .spin-out-ccw.mui-leave {
  transition-duration: 500ms;
  transition-timing-function: linear; }

/*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */
/**
   * 1. Set default font family to sans-serif.
   * 2. Prevent iOS and IE text size adjust after device orientation change,
   *    without disabling user zoom.
   */
html {
  font-family: sans-serif;
  /* 1 */
  -ms-text-size-adjust: 100%;
  /* 2 */
  -webkit-text-size-adjust: 100%;
  /* 2 */ }

/**
   * Remove default margin.
   */
body {
  margin: 0; }

/* HTML5 display definitions
     ========================================================================== */
/**
   * Correct `block` display not defined for any HTML5 element in IE 8/9.
   * Correct `block` display not defined for `details` or `summary` in IE 10/11
   * and Firefox.
   * Correct `block` display not defined for `main` in IE 11.
   */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
section,
summary {
  display: block; }

/**
   * 1. Correct `inline-block` display not defined in IE 8/9.
   * 2. Normalize vertical alignment of `progress` in Chrome, Firefox, and Opera.
   */
audio,
canvas,
progress,
video {
  display: inline-block;
  /* 1 */
  vertical-align: baseline;
  /* 2 */ }

/**
   * Prevent modern browsers from displaying `audio` without controls.
   * Remove excess height in iOS 5 devices.
   */
audio:not([controls]) {
  display: none;
  height: 0; }

/**
   * Address `[hidden]` styling not present in IE 8/9/10.
   * Hide the `template` element in IE 8/9/10/11, Safari, and Firefox < 22.
   */
[hidden],
template {
  display: none; }

/* Links
     ========================================================================== */
/**
   * Remove the gray background color from active links in IE 10.
   */
a {
  background-color: transparent; }

/**
   * Improve readability of focused elements when they are also in an
   * active/hover state.
   */
a:active,
a:hover {
  outline: 0; }

/* Text-level semantics
     ========================================================================== */
/**
   * Address styling not present in IE 8/9/10/11, Safari, and Chrome.
   */
abbr[title] {
  border-bottom: 1px dotted; }

/**
   * Address style set to `bolder` in Firefox 4+, Safari, and Chrome.
   */
b,
strong {
  font-weight: bold; }

/**
   * Address styling not present in Safari and Chrome.
   */
dfn {
  font-style: italic; }

/**
   * Address variable `h1` font-size and margin within `section` and `article`
   * contexts in Firefox 4+, Safari, and Chrome.
   */
h1, .title-1 {
  font-size: 2em;
  margin: 0.67em 0; }

/**
   * Address styling not present in IE 8/9.
   */
mark {
  background: #ff0;
  color: #000; }

/**
   * Address inconsistent and variable font size in all browsers.
   */
small {
  font-size: 80%; }

/**
   * Prevent `sub` and `sup` affecting `line-height` in all browsers.
   */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline; }

sup {
  top: -0.5em; }

sub {
  bottom: -0.25em; }

/* Embedded content
     ========================================================================== */
/**
   * Remove border when inside `a` element in IE 8/9/10.
   */
img {
  border: 0; }

/**
   * Correct overflow not hidden in IE 9/10/11.
   */
svg:not(:root) {
  overflow: hidden; }

/* Grouping content
     ========================================================================== */
/**
   * Address margin not present in IE 8/9 and Safari.
   */
figure {
  margin: 1em 40px; }

/**
   * Address differences between Firefox and other browsers.
   */
hr {
  box-sizing: content-box;
  height: 0; }

/**
   * Contain overflow in all browsers.
   */
pre {
  overflow: auto; }

/**
   * Address odd `em`-unit font size rendering in all browsers.
   */
code,
kbd,
pre,
samp {
  font-family: monospace, monospace;
  font-size: 1em; }

/* Forms
     ========================================================================== */
/**
   * Known limitation: by default, Chrome and Safari on OS X allow very limited
   * styling of `select`, unless a `border` property is set.
   */
/**
   * 1. Correct color not being inherited.
   *    Known issue: affects color of disabled elements.
   * 2. Correct font properties not being inherited.
   * 3. Address margins set differently in Firefox 4+, Safari, and Chrome.
   */
button,
input,
optgroup,
select,
textarea {
  color: inherit;
  /* 1 */
  font: inherit;
  /* 2 */
  margin: 0;
  /* 3 */ }

/**
   * Address `overflow` set to `hidden` in IE 8/9/10/11.
   */
button {
  overflow: visible; }

/**
   * Address inconsistent `text-transform` inheritance for `button` and `select`.
   * All other form control elements do not inherit `text-transform` values.
   * Correct `button` style inheritance in Firefox, IE 8/9/10/11, and Opera.
   * Correct `select` style inheritance in Firefox.
   */
button,
select {
  text-transform: none; }

/**
   * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
   *    and `video` controls.
   * 2. Correct inability to style clickable `input` types in iOS.
   * 3. Improve usability and consistency of cursor style between image-type
   *    `input` and others.
   */
button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
  -webkit-appearance: button;
  /* 2 */
  cursor: pointer;
  /* 3 */ }

/**
   * Re-set default cursor for disabled elements.
   */
button[disabled],
html input[disabled] {
  cursor: not-allowed; }

/**
   * Remove inner padding and border in Firefox 4+.
   */
button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  padding: 0; }

/**
   * Address Firefox 4+ setting `line-height` on `input` using `!important` in
   * the UA stylesheet.
   */
input {
  line-height: normal; }

/**
   * It's recommended that you don't attempt to style these elements.
   * Firefox's implementation doesn't respect box-sizing, padding, or width.
   *
   * 1. Address box sizing set to `content-box` in IE 8/9/10.
   * 2. Remove excess padding in IE 8/9/10.
   */
input[type="checkbox"],
input[type="radio"] {
  box-sizing: border-box;
  /* 1 */
  padding: 0;
  /* 2 */ }

/**
   * Fix the cursor style for Chrome's increment/decrement buttons. For certain
   * `font-size` values of the `input`, it causes the cursor style of the
   * decrement button to change from `default` to `text`.
   */
input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
  height: auto; }

/**
   * 1. Address `appearance` set to `searchfield` in Safari and Chrome.
   * 2. Address `box-sizing` set to `border-box` in Safari and Chrome.
   */
input[type="search"] {
  -webkit-appearance: textfield;
  /* 1 */
  box-sizing: content-box;
  /* 2 */ }

/**
   * Remove inner padding and search cancel button in Safari and Chrome on OS X.
   * Safari (but not Chrome) clips the cancel button when the search input has
   * padding (and `textfield` appearance).
   */
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none; }

/**
   * Define consistent border, margin, and padding.
   * [NOTE] We don't enable this ruleset in Foundation, because we want the <fieldset> element to have plain styling.
   */
/* fieldset {
    border: 1px solid #c0c0c0;
    margin: 0 2px;
    padding: 0.35em 0.625em 0.75em;
  } */
/**
   * 1. Correct `color` not being inherited in IE 8/9/10/11.
   * 2. Remove padding so people aren't caught out if they zero out fieldsets.
   */
legend {
  border: 0;
  /* 1 */
  padding: 0;
  /* 2 */ }

/**
   * Remove default vertical scrollbar in IE 8/9/10/11.
   */
textarea {
  overflow: auto; }

/**
   * Don't inherit the `font-weight` (applied by a rule above).
   * NOTE: the default cannot safely be changed in Chrome and Safari on OS X.
   */
optgroup {
  font-weight: bold; }

/* Tables
     ========================================================================== */
/**
   * Remove most spacing between table cells.
   */
table {
  border-collapse: collapse;
  border-spacing: 0; }

td,
th {
  padding: 0; }

.foundation-mq {
  font-family: "small=0em&medium=40em&large=64em&xlarge=75em&xxlarge=90em"; }

html {
  font-size: 100%;
  box-sizing: border-box; }

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

body {
  padding: 0;
  margin: 0;
  font-family: "Inter", "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: normal;
  line-height: 1.5;
  color: #1d2a29;
  background: #f7f7f7;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

img {
  max-width: 100%;
  height: auto;
  -ms-interpolation-mode: bicubic;
  display: inline-block;
  vertical-align: middle; }

textarea {
  height: auto;
  min-height: 50px;
  border-radius: 0; }

select {
  width: 100%;
  border-radius: 0; }

#map_canvas img,
#map_canvas embed,
#map_canvas object,
.map_canvas img,
.map_canvas embed,
.map_canvas object,
.mqa-display img,
.mqa-display embed,
.mqa-display object {
  max-width: none !important; }

button {
  -webkit-appearance: none;
  -moz-appearance: none;
  background: transparent;
  padding: 0;
  border: 0;
  border-radius: 0;
  line-height: 1; }
  [data-whatinput='mouse'] button {
    outline: 0; }

.is-visible {
  display: block !important; }

.is-hidden {
  display: none !important; }

.row {
  max-width: 75rem;
  margin-left: auto;
  margin-right: auto; }
  .row::before, .row::after {
    content: ' ';
    display: table; }
  .row::after {
    clear: both; }
  .row.collapse > .column, .row.collapse > .columns {
    padding-left: 0;
    padding-right: 0; }
  .row .row {
    max-width: none;
    margin-left: -0.9375rem;
    margin-right: -0.9375rem; }
    .row .row.collapse {
      margin-left: 0;
      margin-right: 0; }
  .row.expanded {
    max-width: none; }
    .row.expanded .row {
      margin-left: auto;
      margin-right: auto; }

.column, .columns {
  width: 100%;
  float: left;
  padding-left: 0.9375rem;
  padding-right: 0.9375rem; }
  .column:last-child:not(:first-child), .columns:last-child:not(:first-child) {
    float: right; }
  .column.end:last-child:last-child, .end.columns:last-child:last-child {
    float: left; }

.column.row.row, .row.row.columns {
  float: none; }
  .row .column.row.row, .row .row.row.columns {
    padding-left: 0;
    padding-right: 0;
    margin-left: 0;
    margin-right: 0; }

.small-1 {
  width: 8.33333%; }

.small-push-1 {
  position: relative;
  left: 8.33333%; }

.small-pull-1 {
  position: relative;
  left: -8.33333%; }

.small-offset-0 {
  margin-left: 0%; }

.small-2 {
  width: 16.66667%; }

.small-push-2 {
  position: relative;
  left: 16.66667%; }

.small-pull-2 {
  position: relative;
  left: -16.66667%; }

.small-offset-1 {
  margin-left: 8.33333%; }

.small-3 {
  width: 25%; }

.small-push-3 {
  position: relative;
  left: 25%; }

.small-pull-3 {
  position: relative;
  left: -25%; }

.small-offset-2 {
  margin-left: 16.66667%; }

.small-4 {
  width: 33.33333%; }

.small-push-4 {
  position: relative;
  left: 33.33333%; }

.small-pull-4 {
  position: relative;
  left: -33.33333%; }

.small-offset-3 {
  margin-left: 25%; }

.small-5 {
  width: 41.66667%; }

.small-push-5 {
  position: relative;
  left: 41.66667%; }

.small-pull-5 {
  position: relative;
  left: -41.66667%; }

.small-offset-4 {
  margin-left: 33.33333%; }

.small-6 {
  width: 50%; }

.small-push-6 {
  position: relative;
  left: 50%; }

.small-pull-6 {
  position: relative;
  left: -50%; }

.small-offset-5 {
  margin-left: 41.66667%; }

.small-7 {
  width: 58.33333%; }

.small-push-7 {
  position: relative;
  left: 58.33333%; }

.small-pull-7 {
  position: relative;
  left: -58.33333%; }

.small-offset-6 {
  margin-left: 50%; }

.small-8 {
  width: 66.66667%; }

.small-push-8 {
  position: relative;
  left: 66.66667%; }

.small-pull-8 {
  position: relative;
  left: -66.66667%; }

.small-offset-7 {
  margin-left: 58.33333%; }

.small-9 {
  width: 75%; }

.small-push-9 {
  position: relative;
  left: 75%; }

.small-pull-9 {
  position: relative;
  left: -75%; }

.small-offset-8 {
  margin-left: 66.66667%; }

.small-10 {
  width: 83.33333%; }

.small-push-10 {
  position: relative;
  left: 83.33333%; }

.small-pull-10 {
  position: relative;
  left: -83.33333%; }

.small-offset-9 {
  margin-left: 75%; }

.small-11 {
  width: 91.66667%; }

.small-push-11 {
  position: relative;
  left: 91.66667%; }

.small-pull-11 {
  position: relative;
  left: -91.66667%; }

.small-offset-10 {
  margin-left: 83.33333%; }

.small-12 {
  width: 100%; }

.small-offset-11 {
  margin-left: 91.66667%; }

.small-up-1 > .column, .small-up-1 > .columns {
  width: 100%;
  float: left; }
  .small-up-1 > .column:nth-of-type(1n), .small-up-1 > .columns:nth-of-type(1n) {
    clear: none; }
  .small-up-1 > .column:nth-of-type(1n+1), .small-up-1 > .columns:nth-of-type(1n+1) {
    clear: both; }
  .small-up-1 > .column:last-child, .small-up-1 > .columns:last-child {
    float: left; }

.small-up-2 > .column, .small-up-2 > .columns {
  width: 50%;
  float: left; }
  .small-up-2 > .column:nth-of-type(1n), .small-up-2 > .columns:nth-of-type(1n) {
    clear: none; }
  .small-up-2 > .column:nth-of-type(2n+1), .small-up-2 > .columns:nth-of-type(2n+1) {
    clear: both; }
  .small-up-2 > .column:last-child, .small-up-2 > .columns:last-child {
    float: left; }

.small-up-3 > .column, .small-up-3 > .columns {
  width: 33.33333%;
  float: left; }
  .small-up-3 > .column:nth-of-type(1n), .small-up-3 > .columns:nth-of-type(1n) {
    clear: none; }
  .small-up-3 > .column:nth-of-type(3n+1), .small-up-3 > .columns:nth-of-type(3n+1) {
    clear: both; }
  .small-up-3 > .column:last-child, .small-up-3 > .columns:last-child {
    float: left; }

.small-up-4 > .column, .small-up-4 > .columns {
  width: 25%;
  float: left; }
  .small-up-4 > .column:nth-of-type(1n), .small-up-4 > .columns:nth-of-type(1n) {
    clear: none; }
  .small-up-4 > .column:nth-of-type(4n+1), .small-up-4 > .columns:nth-of-type(4n+1) {
    clear: both; }
  .small-up-4 > .column:last-child, .small-up-4 > .columns:last-child {
    float: left; }

.small-up-5 > .column, .small-up-5 > .columns {
  width: 20%;
  float: left; }
  .small-up-5 > .column:nth-of-type(1n), .small-up-5 > .columns:nth-of-type(1n) {
    clear: none; }
  .small-up-5 > .column:nth-of-type(5n+1), .small-up-5 > .columns:nth-of-type(5n+1) {
    clear: both; }
  .small-up-5 > .column:last-child, .small-up-5 > .columns:last-child {
    float: left; }

.small-up-6 > .column, .small-up-6 > .columns {
  width: 16.66667%;
  float: left; }
  .small-up-6 > .column:nth-of-type(1n), .small-up-6 > .columns:nth-of-type(1n) {
    clear: none; }
  .small-up-6 > .column:nth-of-type(6n+1), .small-up-6 > .columns:nth-of-type(6n+1) {
    clear: both; }
  .small-up-6 > .column:last-child, .small-up-6 > .columns:last-child {
    float: left; }

.small-collapse > .column, .small-collapse > .columns {
  padding-left: 0;
  padding-right: 0; }

.small-collapse .row {
  margin-left: 0;
  margin-right: 0; }

.small-uncollapse > .column, .small-uncollapse > .columns {
  padding-left: 0.9375rem;
  padding-right: 0.9375rem; }

.small-centered {
  float: none;
  margin-left: auto;
  margin-right: auto; }

.small-uncentered,
.small-push-0,
.small-pull-0 {
  position: static;
  margin-left: 0;
  margin-right: 0;
  float: left; }

@media screen and (min-width: 40em) {
  .medium-1 {
    width: 8.33333%; }
  .medium-push-1 {
    position: relative;
    left: 8.33333%; }
  .medium-pull-1 {
    position: relative;
    left: -8.33333%; }
  .medium-offset-0 {
    margin-left: 0%; }
  .medium-2 {
    width: 16.66667%; }
  .medium-push-2 {
    position: relative;
    left: 16.66667%; }
  .medium-pull-2 {
    position: relative;
    left: -16.66667%; }
  .medium-offset-1 {
    margin-left: 8.33333%; }
  .medium-3 {
    width: 25%; }
  .medium-push-3 {
    position: relative;
    left: 25%; }
  .medium-pull-3 {
    position: relative;
    left: -25%; }
  .medium-offset-2 {
    margin-left: 16.66667%; }
  .medium-4 {
    width: 33.33333%; }
  .medium-push-4 {
    position: relative;
    left: 33.33333%; }
  .medium-pull-4 {
    position: relative;
    left: -33.33333%; }
  .medium-offset-3 {
    margin-left: 25%; }
  .medium-5 {
    width: 41.66667%; }
  .medium-push-5 {
    position: relative;
    left: 41.66667%; }
  .medium-pull-5 {
    position: relative;
    left: -41.66667%; }
  .medium-offset-4 {
    margin-left: 33.33333%; }
  .medium-6 {
    width: 50%; }
  .medium-push-6 {
    position: relative;
    left: 50%; }
  .medium-pull-6 {
    position: relative;
    left: -50%; }
  .medium-offset-5 {
    margin-left: 41.66667%; }
  .medium-7 {
    width: 58.33333%; }
  .medium-push-7 {
    position: relative;
    left: 58.33333%; }
  .medium-pull-7 {
    position: relative;
    left: -58.33333%; }
  .medium-offset-6 {
    margin-left: 50%; }
  .medium-8 {
    width: 66.66667%; }
  .medium-push-8 {
    position: relative;
    left: 66.66667%; }
  .medium-pull-8 {
    position: relative;
    left: -66.66667%; }
  .medium-offset-7 {
    margin-left: 58.33333%; }
  .medium-9 {
    width: 75%; }
  .medium-push-9 {
    position: relative;
    left: 75%; }
  .medium-pull-9 {
    position: relative;
    left: -75%; }
  .medium-offset-8 {
    margin-left: 66.66667%; }
  .medium-10 {
    width: 83.33333%; }
  .medium-push-10 {
    position: relative;
    left: 83.33333%; }
  .medium-pull-10 {
    position: relative;
    left: -83.33333%; }
  .medium-offset-9 {
    margin-left: 75%; }
  .medium-11 {
    width: 91.66667%; }
  .medium-push-11 {
    position: relative;
    left: 91.66667%; }
  .medium-pull-11 {
    position: relative;
    left: -91.66667%; }
  .medium-offset-10 {
    margin-left: 83.33333%; }
  .medium-12 {
    width: 100%; }
  .medium-offset-11 {
    margin-left: 91.66667%; }
  .medium-up-1 > .column, .medium-up-1 > .columns {
    width: 100%;
    float: left; }
    .medium-up-1 > .column:nth-of-type(1n), .medium-up-1 > .columns:nth-of-type(1n) {
      clear: none; }
    .medium-up-1 > .column:nth-of-type(1n+1), .medium-up-1 > .columns:nth-of-type(1n+1) {
      clear: both; }
    .medium-up-1 > .column:last-child, .medium-up-1 > .columns:last-child {
      float: left; }
  .medium-up-2 > .column, .medium-up-2 > .columns {
    width: 50%;
    float: left; }
    .medium-up-2 > .column:nth-of-type(1n), .medium-up-2 > .columns:nth-of-type(1n) {
      clear: none; }
    .medium-up-2 > .column:nth-of-type(2n+1), .medium-up-2 > .columns:nth-of-type(2n+1) {
      clear: both; }
    .medium-up-2 > .column:last-child, .medium-up-2 > .columns:last-child {
      float: left; }
  .medium-up-3 > .column, .medium-up-3 > .columns {
    width: 33.33333%;
    float: left; }
    .medium-up-3 > .column:nth-of-type(1n), .medium-up-3 > .columns:nth-of-type(1n) {
      clear: none; }
    .medium-up-3 > .column:nth-of-type(3n+1), .medium-up-3 > .columns:nth-of-type(3n+1) {
      clear: both; }
    .medium-up-3 > .column:last-child, .medium-up-3 > .columns:last-child {
      float: left; }
  .medium-up-4 > .column, .medium-up-4 > .columns {
    width: 25%;
    float: left; }
    .medium-up-4 > .column:nth-of-type(1n), .medium-up-4 > .columns:nth-of-type(1n) {
      clear: none; }
    .medium-up-4 > .column:nth-of-type(4n+1), .medium-up-4 > .columns:nth-of-type(4n+1) {
      clear: both; }
    .medium-up-4 > .column:last-child, .medium-up-4 > .columns:last-child {
      float: left; }
  .medium-up-5 > .column, .medium-up-5 > .columns {
    width: 20%;
    float: left; }
    .medium-up-5 > .column:nth-of-type(1n), .medium-up-5 > .columns:nth-of-type(1n) {
      clear: none; }
    .medium-up-5 > .column:nth-of-type(5n+1), .medium-up-5 > .columns:nth-of-type(5n+1) {
      clear: both; }
    .medium-up-5 > .column:last-child, .medium-up-5 > .columns:last-child {
      float: left; }
  .medium-up-6 > .column, .medium-up-6 > .columns {
    width: 16.66667%;
    float: left; }
    .medium-up-6 > .column:nth-of-type(1n), .medium-up-6 > .columns:nth-of-type(1n) {
      clear: none; }
    .medium-up-6 > .column:nth-of-type(6n+1), .medium-up-6 > .columns:nth-of-type(6n+1) {
      clear: both; }
    .medium-up-6 > .column:last-child, .medium-up-6 > .columns:last-child {
      float: left; }
  .medium-collapse > .column, .medium-collapse > .columns {
    padding-left: 0;
    padding-right: 0; }
  .medium-collapse .row {
    margin-left: 0;
    margin-right: 0; }
  .medium-uncollapse > .column, .medium-uncollapse > .columns {
    padding-left: 0.9375rem;
    padding-right: 0.9375rem; }
  .medium-centered {
    float: none;
    margin-left: auto;
    margin-right: auto; }
  .medium-uncentered,
  .medium-push-0,
  .medium-pull-0 {
    position: static;
    margin-left: 0;
    margin-right: 0;
    float: left; } }

@media screen and (min-width: 64em) {
  .large-1 {
    width: 8.33333%; }
  .large-push-1 {
    position: relative;
    left: 8.33333%; }
  .large-pull-1 {
    position: relative;
    left: -8.33333%; }
  .large-offset-0 {
    margin-left: 0%; }
  .large-2 {
    width: 16.66667%; }
  .large-push-2 {
    position: relative;
    left: 16.66667%; }
  .large-pull-2 {
    position: relative;
    left: -16.66667%; }
  .large-offset-1 {
    margin-left: 8.33333%; }
  .large-3 {
    width: 25%; }
  .large-push-3 {
    position: relative;
    left: 25%; }
  .large-pull-3 {
    position: relative;
    left: -25%; }
  .large-offset-2 {
    margin-left: 16.66667%; }
  .large-4 {
    width: 33.33333%; }
  .large-push-4 {
    position: relative;
    left: 33.33333%; }
  .large-pull-4 {
    position: relative;
    left: -33.33333%; }
  .large-offset-3 {
    margin-left: 25%; }
  .large-5 {
    width: 41.66667%; }
  .large-push-5 {
    position: relative;
    left: 41.66667%; }
  .large-pull-5 {
    position: relative;
    left: -41.66667%; }
  .large-offset-4 {
    margin-left: 33.33333%; }
  .large-6 {
    width: 50%; }
  .large-push-6 {
    position: relative;
    left: 50%; }
  .large-pull-6 {
    position: relative;
    left: -50%; }
  .large-offset-5 {
    margin-left: 41.66667%; }
  .large-7 {
    width: 58.33333%; }
  .large-push-7 {
    position: relative;
    left: 58.33333%; }
  .large-pull-7 {
    position: relative;
    left: -58.33333%; }
  .large-offset-6 {
    margin-left: 50%; }
  .large-8 {
    width: 66.66667%; }
  .large-push-8 {
    position: relative;
    left: 66.66667%; }
  .large-pull-8 {
    position: relative;
    left: -66.66667%; }
  .large-offset-7 {
    margin-left: 58.33333%; }
  .large-9 {
    width: 75%; }
  .large-push-9 {
    position: relative;
    left: 75%; }
  .large-pull-9 {
    position: relative;
    left: -75%; }
  .large-offset-8 {
    margin-left: 66.66667%; }
  .large-10 {
    width: 83.33333%; }
  .large-push-10 {
    position: relative;
    left: 83.33333%; }
  .large-pull-10 {
    position: relative;
    left: -83.33333%; }
  .large-offset-9 {
    margin-left: 75%; }
  .large-11 {
    width: 91.66667%; }
  .large-push-11 {
    position: relative;
    left: 91.66667%; }
  .large-pull-11 {
    position: relative;
    left: -91.66667%; }
  .large-offset-10 {
    margin-left: 83.33333%; }
  .large-12 {
    width: 100%; }
  .large-offset-11 {
    margin-left: 91.66667%; }
  .large-up-1 > .column, .large-up-1 > .columns {
    width: 100%;
    float: left; }
    .large-up-1 > .column:nth-of-type(1n), .large-up-1 > .columns:nth-of-type(1n) {
      clear: none; }
    .large-up-1 > .column:nth-of-type(1n+1), .large-up-1 > .columns:nth-of-type(1n+1) {
      clear: both; }
    .large-up-1 > .column:last-child, .large-up-1 > .columns:last-child {
      float: left; }
  .large-up-2 > .column, .large-up-2 > .columns {
    width: 50%;
    float: left; }
    .large-up-2 > .column:nth-of-type(1n), .large-up-2 > .columns:nth-of-type(1n) {
      clear: none; }
    .large-up-2 > .column:nth-of-type(2n+1), .large-up-2 > .columns:nth-of-type(2n+1) {
      clear: both; }
    .large-up-2 > .column:last-child, .large-up-2 > .columns:last-child {
      float: left; }
  .large-up-3 > .column, .large-up-3 > .columns {
    width: 33.33333%;
    float: left; }
    .large-up-3 > .column:nth-of-type(1n), .large-up-3 > .columns:nth-of-type(1n) {
      clear: none; }
    .large-up-3 > .column:nth-of-type(3n+1), .large-up-3 > .columns:nth-of-type(3n+1) {
      clear: both; }
    .large-up-3 > .column:last-child, .large-up-3 > .columns:last-child {
      float: left; }
  .large-up-4 > .column, .large-up-4 > .columns {
    width: 25%;
    float: left; }
    .large-up-4 > .column:nth-of-type(1n), .large-up-4 > .columns:nth-of-type(1n) {
      clear: none; }
    .large-up-4 > .column:nth-of-type(4n+1), .large-up-4 > .columns:nth-of-type(4n+1) {
      clear: both; }
    .large-up-4 > .column:last-child, .large-up-4 > .columns:last-child {
      float: left; }
  .large-up-5 > .column, .large-up-5 > .columns {
    width: 20%;
    float: left; }
    .large-up-5 > .column:nth-of-type(1n), .large-up-5 > .columns:nth-of-type(1n) {
      clear: none; }
    .large-up-5 > .column:nth-of-type(5n+1), .large-up-5 > .columns:nth-of-type(5n+1) {
      clear: both; }
    .large-up-5 > .column:last-child, .large-up-5 > .columns:last-child {
      float: left; }
  .large-up-6 > .column, .large-up-6 > .columns {
    width: 16.66667%;
    float: left; }
    .large-up-6 > .column:nth-of-type(1n), .large-up-6 > .columns:nth-of-type(1n) {
      clear: none; }
    .large-up-6 > .column:nth-of-type(6n+1), .large-up-6 > .columns:nth-of-type(6n+1) {
      clear: both; }
    .large-up-6 > .column:last-child, .large-up-6 > .columns:last-child {
      float: left; }
  .large-collapse > .column, .large-collapse > .columns {
    padding-left: 0;
    padding-right: 0; }
  .large-collapse .row {
    margin-left: 0;
    margin-right: 0; }
  .large-uncollapse > .column, .large-uncollapse > .columns {
    padding-left: 0.9375rem;
    padding-right: 0.9375rem; }
  .large-centered {
    float: none;
    margin-left: auto;
    margin-right: auto; }
  .large-uncentered,
  .large-push-0,
  .large-pull-0 {
    position: static;
    margin-left: 0;
    margin-right: 0;
    float: left; } }

@media screen and (min-width: 75em) {
  .xlarge-1 {
    width: 8.33333%; }
  .xlarge-push-1 {
    position: relative;
    left: 8.33333%; }
  .xlarge-pull-1 {
    position: relative;
    left: -8.33333%; }
  .xlarge-offset-0 {
    margin-left: 0%; }
  .xlarge-2 {
    width: 16.66667%; }
  .xlarge-push-2 {
    position: relative;
    left: 16.66667%; }
  .xlarge-pull-2 {
    position: relative;
    left: -16.66667%; }
  .xlarge-offset-1 {
    margin-left: 8.33333%; }
  .xlarge-3 {
    width: 25%; }
  .xlarge-push-3 {
    position: relative;
    left: 25%; }
  .xlarge-pull-3 {
    position: relative;
    left: -25%; }
  .xlarge-offset-2 {
    margin-left: 16.66667%; }
  .xlarge-4 {
    width: 33.33333%; }
  .xlarge-push-4 {
    position: relative;
    left: 33.33333%; }
  .xlarge-pull-4 {
    position: relative;
    left: -33.33333%; }
  .xlarge-offset-3 {
    margin-left: 25%; }
  .xlarge-5 {
    width: 41.66667%; }
  .xlarge-push-5 {
    position: relative;
    left: 41.66667%; }
  .xlarge-pull-5 {
    position: relative;
    left: -41.66667%; }
  .xlarge-offset-4 {
    margin-left: 33.33333%; }
  .xlarge-6 {
    width: 50%; }
  .xlarge-push-6 {
    position: relative;
    left: 50%; }
  .xlarge-pull-6 {
    position: relative;
    left: -50%; }
  .xlarge-offset-5 {
    margin-left: 41.66667%; }
  .xlarge-7 {
    width: 58.33333%; }
  .xlarge-push-7 {
    position: relative;
    left: 58.33333%; }
  .xlarge-pull-7 {
    position: relative;
    left: -58.33333%; }
  .xlarge-offset-6 {
    margin-left: 50%; }
  .xlarge-8 {
    width: 66.66667%; }
  .xlarge-push-8 {
    position: relative;
    left: 66.66667%; }
  .xlarge-pull-8 {
    position: relative;
    left: -66.66667%; }
  .xlarge-offset-7 {
    margin-left: 58.33333%; }
  .xlarge-9 {
    width: 75%; }
  .xlarge-push-9 {
    position: relative;
    left: 75%; }
  .xlarge-pull-9 {
    position: relative;
    left: -75%; }
  .xlarge-offset-8 {
    margin-left: 66.66667%; }
  .xlarge-10 {
    width: 83.33333%; }
  .xlarge-push-10 {
    position: relative;
    left: 83.33333%; }
  .xlarge-pull-10 {
    position: relative;
    left: -83.33333%; }
  .xlarge-offset-9 {
    margin-left: 75%; }
  .xlarge-11 {
    width: 91.66667%; }
  .xlarge-push-11 {
    position: relative;
    left: 91.66667%; }
  .xlarge-pull-11 {
    position: relative;
    left: -91.66667%; }
  .xlarge-offset-10 {
    margin-left: 83.33333%; }
  .xlarge-12 {
    width: 100%; }
  .xlarge-offset-11 {
    margin-left: 91.66667%; }
  .xlarge-up-1 > .column, .xlarge-up-1 > .columns {
    width: 100%;
    float: left; }
    .xlarge-up-1 > .column:nth-of-type(1n), .xlarge-up-1 > .columns:nth-of-type(1n) {
      clear: none; }
    .xlarge-up-1 > .column:nth-of-type(1n+1), .xlarge-up-1 > .columns:nth-of-type(1n+1) {
      clear: both; }
    .xlarge-up-1 > .column:last-child, .xlarge-up-1 > .columns:last-child {
      float: left; }
  .xlarge-up-2 > .column, .xlarge-up-2 > .columns {
    width: 50%;
    float: left; }
    .xlarge-up-2 > .column:nth-of-type(1n), .xlarge-up-2 > .columns:nth-of-type(1n) {
      clear: none; }
    .xlarge-up-2 > .column:nth-of-type(2n+1), .xlarge-up-2 > .columns:nth-of-type(2n+1) {
      clear: both; }
    .xlarge-up-2 > .column:last-child, .xlarge-up-2 > .columns:last-child {
      float: left; }
  .xlarge-up-3 > .column, .xlarge-up-3 > .columns {
    width: 33.33333%;
    float: left; }
    .xlarge-up-3 > .column:nth-of-type(1n), .xlarge-up-3 > .columns:nth-of-type(1n) {
      clear: none; }
    .xlarge-up-3 > .column:nth-of-type(3n+1), .xlarge-up-3 > .columns:nth-of-type(3n+1) {
      clear: both; }
    .xlarge-up-3 > .column:last-child, .xlarge-up-3 > .columns:last-child {
      float: left; }
  .xlarge-up-4 > .column, .xlarge-up-4 > .columns {
    width: 25%;
    float: left; }
    .xlarge-up-4 > .column:nth-of-type(1n), .xlarge-up-4 > .columns:nth-of-type(1n) {
      clear: none; }
    .xlarge-up-4 > .column:nth-of-type(4n+1), .xlarge-up-4 > .columns:nth-of-type(4n+1) {
      clear: both; }
    .xlarge-up-4 > .column:last-child, .xlarge-up-4 > .columns:last-child {
      float: left; }
  .xlarge-up-5 > .column, .xlarge-up-5 > .columns {
    width: 20%;
    float: left; }
    .xlarge-up-5 > .column:nth-of-type(1n), .xlarge-up-5 > .columns:nth-of-type(1n) {
      clear: none; }
    .xlarge-up-5 > .column:nth-of-type(5n+1), .xlarge-up-5 > .columns:nth-of-type(5n+1) {
      clear: both; }
    .xlarge-up-5 > .column:last-child, .xlarge-up-5 > .columns:last-child {
      float: left; }
  .xlarge-up-6 > .column, .xlarge-up-6 > .columns {
    width: 16.66667%;
    float: left; }
    .xlarge-up-6 > .column:nth-of-type(1n), .xlarge-up-6 > .columns:nth-of-type(1n) {
      clear: none; }
    .xlarge-up-6 > .column:nth-of-type(6n+1), .xlarge-up-6 > .columns:nth-of-type(6n+1) {
      clear: both; }
    .xlarge-up-6 > .column:last-child, .xlarge-up-6 > .columns:last-child {
      float: left; }
  .xlarge-collapse > .column, .xlarge-collapse > .columns {
    padding-left: 0;
    padding-right: 0; }
  .xlarge-collapse .row {
    margin-left: 0;
    margin-right: 0; }
  .xlarge-uncollapse > .column, .xlarge-uncollapse > .columns {
    padding-left: 0.9375rem;
    padding-right: 0.9375rem; }
  .xlarge-centered {
    float: none;
    margin-left: auto;
    margin-right: auto; }
  .xlarge-uncentered,
  .xlarge-push-0,
  .xlarge-pull-0 {
    position: static;
    margin-left: 0;
    margin-right: 0;
    float: left; } }

@media screen and (min-width: 90em) {
  .xxlarge-1 {
    width: 8.33333%; }
  .xxlarge-push-1 {
    position: relative;
    left: 8.33333%; }
  .xxlarge-pull-1 {
    position: relative;
    left: -8.33333%; }
  .xxlarge-offset-0 {
    margin-left: 0%; }
  .xxlarge-2 {
    width: 16.66667%; }
  .xxlarge-push-2 {
    position: relative;
    left: 16.66667%; }
  .xxlarge-pull-2 {
    position: relative;
    left: -16.66667%; }
  .xxlarge-offset-1 {
    margin-left: 8.33333%; }
  .xxlarge-3 {
    width: 25%; }
  .xxlarge-push-3 {
    position: relative;
    left: 25%; }
  .xxlarge-pull-3 {
    position: relative;
    left: -25%; }
  .xxlarge-offset-2 {
    margin-left: 16.66667%; }
  .xxlarge-4 {
    width: 33.33333%; }
  .xxlarge-push-4 {
    position: relative;
    left: 33.33333%; }
  .xxlarge-pull-4 {
    position: relative;
    left: -33.33333%; }
  .xxlarge-offset-3 {
    margin-left: 25%; }
  .xxlarge-5 {
    width: 41.66667%; }
  .xxlarge-push-5 {
    position: relative;
    left: 41.66667%; }
  .xxlarge-pull-5 {
    position: relative;
    left: -41.66667%; }
  .xxlarge-offset-4 {
    margin-left: 33.33333%; }
  .xxlarge-6 {
    width: 50%; }
  .xxlarge-push-6 {
    position: relative;
    left: 50%; }
  .xxlarge-pull-6 {
    position: relative;
    left: -50%; }
  .xxlarge-offset-5 {
    margin-left: 41.66667%; }
  .xxlarge-7 {
    width: 58.33333%; }
  .xxlarge-push-7 {
    position: relative;
    left: 58.33333%; }
  .xxlarge-pull-7 {
    position: relative;
    left: -58.33333%; }
  .xxlarge-offset-6 {
    margin-left: 50%; }
  .xxlarge-8 {
    width: 66.66667%; }
  .xxlarge-push-8 {
    position: relative;
    left: 66.66667%; }
  .xxlarge-pull-8 {
    position: relative;
    left: -66.66667%; }
  .xxlarge-offset-7 {
    margin-left: 58.33333%; }
  .xxlarge-9 {
    width: 75%; }
  .xxlarge-push-9 {
    position: relative;
    left: 75%; }
  .xxlarge-pull-9 {
    position: relative;
    left: -75%; }
  .xxlarge-offset-8 {
    margin-left: 66.66667%; }
  .xxlarge-10 {
    width: 83.33333%; }
  .xxlarge-push-10 {
    position: relative;
    left: 83.33333%; }
  .xxlarge-pull-10 {
    position: relative;
    left: -83.33333%; }
  .xxlarge-offset-9 {
    margin-left: 75%; }
  .xxlarge-11 {
    width: 91.66667%; }
  .xxlarge-push-11 {
    position: relative;
    left: 91.66667%; }
  .xxlarge-pull-11 {
    position: relative;
    left: -91.66667%; }
  .xxlarge-offset-10 {
    margin-left: 83.33333%; }
  .xxlarge-12 {
    width: 100%; }
  .xxlarge-offset-11 {
    margin-left: 91.66667%; }
  .xxlarge-up-1 > .column, .xxlarge-up-1 > .columns {
    width: 100%;
    float: left; }
    .xxlarge-up-1 > .column:nth-of-type(1n), .xxlarge-up-1 > .columns:nth-of-type(1n) {
      clear: none; }
    .xxlarge-up-1 > .column:nth-of-type(1n+1), .xxlarge-up-1 > .columns:nth-of-type(1n+1) {
      clear: both; }
    .xxlarge-up-1 > .column:last-child, .xxlarge-up-1 > .columns:last-child {
      float: left; }
  .xxlarge-up-2 > .column, .xxlarge-up-2 > .columns {
    width: 50%;
    float: left; }
    .xxlarge-up-2 > .column:nth-of-type(1n), .xxlarge-up-2 > .columns:nth-of-type(1n) {
      clear: none; }
    .xxlarge-up-2 > .column:nth-of-type(2n+1), .xxlarge-up-2 > .columns:nth-of-type(2n+1) {
      clear: both; }
    .xxlarge-up-2 > .column:last-child, .xxlarge-up-2 > .columns:last-child {
      float: left; }
  .xxlarge-up-3 > .column, .xxlarge-up-3 > .columns {
    width: 33.33333%;
    float: left; }
    .xxlarge-up-3 > .column:nth-of-type(1n), .xxlarge-up-3 > .columns:nth-of-type(1n) {
      clear: none; }
    .xxlarge-up-3 > .column:nth-of-type(3n+1), .xxlarge-up-3 > .columns:nth-of-type(3n+1) {
      clear: both; }
    .xxlarge-up-3 > .column:last-child, .xxlarge-up-3 > .columns:last-child {
      float: left; }
  .xxlarge-up-4 > .column, .xxlarge-up-4 > .columns {
    width: 25%;
    float: left; }
    .xxlarge-up-4 > .column:nth-of-type(1n), .xxlarge-up-4 > .columns:nth-of-type(1n) {
      clear: none; }
    .xxlarge-up-4 > .column:nth-of-type(4n+1), .xxlarge-up-4 > .columns:nth-of-type(4n+1) {
      clear: both; }
    .xxlarge-up-4 > .column:last-child, .xxlarge-up-4 > .columns:last-child {
      float: left; }
  .xxlarge-up-5 > .column, .xxlarge-up-5 > .columns {
    width: 20%;
    float: left; }
    .xxlarge-up-5 > .column:nth-of-type(1n), .xxlarge-up-5 > .columns:nth-of-type(1n) {
      clear: none; }
    .xxlarge-up-5 > .column:nth-of-type(5n+1), .xxlarge-up-5 > .columns:nth-of-type(5n+1) {
      clear: both; }
    .xxlarge-up-5 > .column:last-child, .xxlarge-up-5 > .columns:last-child {
      float: left; }
  .xxlarge-up-6 > .column, .xxlarge-up-6 > .columns {
    width: 16.66667%;
    float: left; }
    .xxlarge-up-6 > .column:nth-of-type(1n), .xxlarge-up-6 > .columns:nth-of-type(1n) {
      clear: none; }
    .xxlarge-up-6 > .column:nth-of-type(6n+1), .xxlarge-up-6 > .columns:nth-of-type(6n+1) {
      clear: both; }
    .xxlarge-up-6 > .column:last-child, .xxlarge-up-6 > .columns:last-child {
      float: left; }
  .xxlarge-collapse > .column, .xxlarge-collapse > .columns {
    padding-left: 0;
    padding-right: 0; }
  .xxlarge-collapse .row {
    margin-left: 0;
    margin-right: 0; }
  .xxlarge-uncollapse > .column, .xxlarge-uncollapse > .columns {
    padding-left: 0.9375rem;
    padding-right: 0.9375rem; }
  .xxlarge-centered {
    float: none;
    margin-left: auto;
    margin-right: auto; }
  .xxlarge-uncentered,
  .xxlarge-push-0,
  .xxlarge-pull-0 {
    position: static;
    margin-left: 0;
    margin-right: 0;
    float: left; } }

div,
dl,
dt,
dd,
ul,
ol,
li, h1, .title-1,
h2,
.rst h1,
.rst .title-1,
.title-2,
h3,
.h3,
.rst h2,
.rst h1,
.rst .title-1,
.rst .title-2,
.title-3,
h4,
.rst h3,
.rst .h3,
.rst h2,
.rst h1,
.rst .title-1,
.rst .title-2,
.rst .title-3,
.title-4,
h5,
.rst h4,
.rst h3,
.rst .h3,
.rst h2,
.rst h1,
.rst .title-1,
.rst .title-2,
.rst .title-3,
.rst .title-4,
.title-5,
h6,
pre,
form,
p,
blockquote,
th,
td {
  margin: 0;
  padding: 0; }

p {
  font-size: inherit;
  line-height: 1.6;
  margin-bottom: 1rem;
  text-rendering: optimizeLegibility; }

em,
i {
  font-style: italic;
  line-height: inherit; }

strong,
b {
  font-weight: bold;
  line-height: inherit; }

small {
  font-size: 80%;
  line-height: inherit; }

h1, .title-1,
h2,
.rst h1,
.rst .title-1,
.title-2,
h3,
.h3,
.rst h2,
.rst h1,
.rst .title-1,
.rst .title-2,
.title-3,
h4,
.rst h3,
.rst .h3,
.rst h2,
.rst h1,
.rst .title-1,
.rst .title-2,
.rst .title-3,
.title-4,
h5,
.rst h4,
.rst h3,
.rst .h3,
.rst h2,
.rst h1,
.rst .title-1,
.rst .title-2,
.rst .title-3,
.rst .title-4,
.title-5,
h6 {
  font-family: "Inter", Helvetica, sans-serif;
  font-weight: normal;
  font-style: normal;
  color: inherit;
  text-rendering: optimizeLegibility;
  margin-top: 0;
  margin-bottom: 0.5rem;
  line-height: 1.4; }
  h1 small, .title-1 small,
  h2 small,
  .rst h1 small,
  .rst .title-1 small,
  .title-2 small,
  h3 small,
  .h3 small,
  .rst h2 small,
  .rst h1 small,
  .rst .title-1 small,
  .rst .title-2 small,
  .title-3 small,
  h4 small,
  .rst h3 small,
  .rst .h3 small,
  .rst h2 small,
  .rst h1 small,
  .rst .title-1 small,
  .rst .title-2 small,
  .rst .title-3 small,
  .title-4 small,
  h5 small,
  .rst h4 small,
  .rst h3 small,
  .rst .h3 small,
  .rst h2 small,
  .rst h1 small,
  .rst .title-1 small,
  .rst .title-2 small,
  .rst .title-3 small,
  .rst .title-4 small,
  .title-5 small,
  h6 small {
    color: #DDD;
    line-height: 0; }

h1, .title-1 {
  font-size: 2rem; }


h2,
.rst h1,
.rst .title-1,
.title-2 {
  font-size: 1.25rem; }


h3,
.h3,
.rst h2,
.rst h1,
.rst .title-1,
.rst .title-2,
.title-3 {
  font-size: 1.1875rem; }


h4,
.rst h3,
.rst .h3,
.rst h2,
.rst h1,
.rst .title-1,
.rst .title-2,
.rst .title-3,
.title-4 {
  font-size: 1.125rem; }


h5,
.rst h4,
.rst h3,
.rst .h3,
.rst h2,
.rst h1,
.rst .title-1,
.rst .title-2,
.rst .title-3,
.rst .title-4,
.title-5 {
  font-size: 1.0625rem; }

h6 {
  font-size: 1rem; }

@media screen and (min-width: 40em) {
  h1, .title-1 {
    font-size: 2.875rem; }
  
  h2,
  .rst h1,
  .rst .title-1,
  .title-2 {
    font-size: 2.25rem; }
  
  h3,
  .h3,
  .rst h2,
  .rst h1,
  .rst .title-1,
  .rst .title-2,
  .title-3 {
    font-size: 1.625rem; }
  
  h4,
  .rst h3,
  .rst .h3,
  .rst h2,
  .rst h1,
  .rst .title-1,
  .rst .title-2,
  .rst .title-3,
  .title-4 {
    font-size: 1.25rem; }
  
  h5,
  .rst h4,
  .rst h3,
  .rst .h3,
  .rst h2,
  .rst h1,
  .rst .title-1,
  .rst .title-2,
  .rst .title-3,
  .rst .title-4,
  .title-5 {
    font-size: 1.125rem; }
  h6 {
    font-size: 1rem; } }

@media screen and (min-width: 64em) {
  h1, .title-1 {
    font-size: 4rem; } }

a {
  color: #dd3333;
  text-decoration: none;
  line-height: inherit;
  cursor: pointer; }
  a:hover, a:focus {
    color: #c92121; }
  a img {
    border: 0; }

hr {
  max-width: 75rem;
  height: 0;
  border-right: 0;
  border-top: 0;
  border-bottom: 1px solid #DDD;
  border-left: 0;
  margin: 1.25rem auto;
  clear: both; }

ul,
ol,
dl {
  line-height: 1.6;
  margin-bottom: 1rem;
  list-style-position: outside; }

li {
  font-size: inherit; }

ul {
  list-style-type: disc;
  margin-left: 1.25rem; }

ol {
  margin-left: 1.25rem; }

ul ul, ol ul, ul ol, ol ol {
  margin-left: 1.25rem;
  margin-bottom: 0; }

dl {
  margin-bottom: 1rem; }
  dl dt {
    margin-bottom: 0.3rem;
    font-weight: bold; }

blockquote {
  margin: 0 0 1rem;
  padding: 0.5625rem 1.25rem 0 1.1875rem;
  border-left: 1px solid #DDD; }
  blockquote, blockquote p {
    line-height: 1.6;
    color: #8a8a8a; }

cite {
  display: block;
  font-size: 0.8125rem;
  color: #8a8a8a; }
  cite:before {
    content: '\2014 \0020'; }

abbr {
  color: #1d2a29;
  cursor: help;
  border-bottom: 1px dotted #0a0a0a; }

code {
  font-family: Consolas, "Liberation Mono", Courier, monospace;
  font-weight: normal;
  color: #0a0a0a;
  background-color: #E0E0E0;
  border: 1px solid #DDD;
  padding: 0.125rem 0.3125rem 0.0625rem; }

kbd {
  padding: 0.125rem 0.25rem 0;
  margin: 0;
  background-color: #E0E0E0;
  color: #0a0a0a;
  font-family: Consolas, "Liberation Mono", Courier, monospace; }

.subheader {
  margin-top: 0.2rem;
  margin-bottom: 0.5rem;
  font-weight: normal;
  line-height: 1.4;
  color: #8a8a8a; }

.lead {
  font-size: 125%;
  line-height: 1.6; }

.stat {
  font-size: 2.5rem;
  line-height: 1; }
  p + .stat {
    margin-top: -1rem; }

.no-bullet {
  margin-left: 0;
  list-style: none; }

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

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

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

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

@media screen and (min-width: 40em) {
  .medium-text-left {
    text-align: left; }
  .medium-text-right {
    text-align: right; }
  .medium-text-center {
    text-align: center; }
  .medium-text-justify {
    text-align: justify; } }

@media screen and (min-width: 64em) {
  .large-text-left {
    text-align: left; }
  .large-text-right {
    text-align: right; }
  .large-text-center {
    text-align: center; }
  .large-text-justify {
    text-align: justify; } }

@media screen and (min-width: 75em) {
  .xlarge-text-left {
    text-align: left; }
  .xlarge-text-right {
    text-align: right; }
  .xlarge-text-center {
    text-align: center; }
  .xlarge-text-justify {
    text-align: justify; } }

@media screen and (min-width: 90em) {
  .xxlarge-text-left {
    text-align: left; }
  .xxlarge-text-right {
    text-align: right; }
  .xxlarge-text-center {
    text-align: center; }
  .xxlarge-text-justify {
    text-align: justify; } }

.show-for-print {
  display: none !important; }

@media print {
  * {
    background: transparent !important;
    color: black !important;
    box-shadow: none !important;
    text-shadow: none !important; }
  .show-for-print {
    display: block !important; }
  .hide-for-print {
    display: none !important; }
  table.show-for-print {
    display: table !important; }
  thead.show-for-print {
    display: table-header-group !important; }
  tbody.show-for-print {
    display: table-row-group !important; }
  tr.show-for-print {
    display: table-row !important; }
  td.show-for-print {
    display: table-cell !important; }
  th.show-for-print {
    display: table-cell !important; }
  a,
  a:visited {
    text-decoration: underline; }
  a[href]:after {
    content: " (" attr(href) ")"; }
  .ir a:after,
  a[href^='javascript:']:after,
  a[href^='#']:after {
    content: ''; }
  abbr[title]:after {
    content: " (" attr(title) ")"; }
  pre,
  blockquote {
    border: 1px solid #8a8a8a;
    page-break-inside: avoid; }
  thead {
    display: table-header-group; }
  tr,
  img {
    page-break-inside: avoid; }
  img {
    max-width: 100% !important; }
  @page {
    margin: 0.5cm; }
  p,
  h2,
  .rst h1,
  .rst .title-1,
  .title-2,
  h3,
  .h3,
  .rst h2,
  .rst h1,
  .rst .title-1,
  .rst .title-2,
  .title-3 {
    orphans: 3;
    widows: 3; }
  
  h2,
  .rst h1,
  .rst .title-1,
  .title-2,
  h3,
  .h3,
  .rst h2,
  .rst h1,
  .rst .title-1,
  .rst .title-2,
  .title-3 {
    page-break-after: avoid; } }

.button {
  display: inline-block;
  text-align: center;
  line-height: 1;
  cursor: pointer;
  -webkit-appearance: none;
  transition: background-color 0.25s ease-out, color 0.25s ease-out;
  vertical-align: middle;
  border: 1px solid transparent;
  border-radius: 0;
  padding: 0.85em 1em;
  margin: 0 1rem 1rem 0;
  font-size: 0.9rem;
  background-color: #dd3333;
  color: #fff; }
  [data-whatinput='mouse'] .button {
    outline: 0; }
  .button:hover, .button:focus {
    background-color: #c62121;
    color: #fff; }
  .button.tiny {
    font-size: 0.6rem; }
  .button.small {
    font-size: 0.75rem; }
  .button.large {
    font-size: 1.25rem; }
  .button.expanded {
    display: block;
    width: 100%;
    margin-left: 0;
    margin-right: 0; }
  .button.primary {
    background-color: #2199e8;
    color: #fff; }
    .button.primary:hover, .button.primary:focus {
      background-color: #147cc0;
      color: #fff; }
  .button.secondary {
    background-color: #777;
    color: #fff; }
    .button.secondary:hover, .button.secondary:focus {
      background-color: #5f5f5f;
      color: #fff; }
  .button.success {
    background-color: #3adb76;
    color: #fff; }
    .button.success:hover, .button.success:focus {
      background-color: #22bb5b;
      color: #fff; }
  .button.warning {
    background-color: #ffae00;
    color: #fff; }
    .button.warning:hover, .button.warning:focus {
      background-color: #cc8b00;
      color: #fff; }
  .button.alert {
    background-color: #ec5840;
    color: #fff; }
    .button.alert:hover, .button.alert:focus {
      background-color: #da3116;
      color: #fff; }
  .button.hollow {
    border: 1px solid #2199e8;
    color: #2199e8; }
    .button.hollow, .button.hollow:hover, .button.hollow:focus {
      background-color: transparent; }
    .button.hollow:hover, .button.hollow:focus {
      border-color: #0c4d78;
      color: #0c4d78; }
    .button.hollow.primary {
      border: 1px solid #2199e8;
      color: #2199e8; }
      .button.hollow.primary:hover, .button.hollow.primary:focus {
        border-color: #0c4d78;
        color: #0c4d78; }
    .button.hollow.secondary {
      border: 1px solid #777;
      color: #777; }
      .button.hollow.secondary:hover, .button.hollow.secondary:focus {
        border-color: #3c3c3c;
        color: #3c3c3c; }
    .button.hollow.success {
      border: 1px solid #3adb76;
      color: #3adb76; }
      .button.hollow.success:hover, .button.hollow.success:focus {
        border-color: #157539;
        color: #157539; }
    .button.hollow.warning {
      border: 1px solid #ffae00;
      color: #ffae00; }
      .button.hollow.warning:hover, .button.hollow.warning:focus {
        border-color: #805700;
        color: #805700; }
    .button.hollow.alert {
      border: 1px solid #ec5840;
      color: #ec5840; }
      .button.hollow.alert:hover, .button.hollow.alert:focus {
        border-color: #881f0e;
        color: #881f0e; }
  .button.disabled, .button[disabled] {
    opacity: 0.25;
    cursor: not-allowed; }
  .button.dropdown::after {
    content: '';
    display: block;
    width: 0;
    height: 0;
    border: inset 0.4em;
    border-color: #f7f7f7 transparent transparent;
    border-top-style: solid;
    border-bottom-width: 0;
    position: relative;
    top: 0.4em;
    float: right;
    margin-left: 1em;
    display: inline-block; }
  .button.arrow-only::after {
    margin-left: 0;
    float: none;
    top: -0.1em; }

[type='text'], [type='password'], [type='date'], [type='datetime'], [type='datetime-local'], [type='month'], [type='week'], [type='email'], [type='number'], [type='search'], [type='tel'], [type='time'], [type='url'], [type='color'],
textarea {
  display: block;
  box-sizing: border-box;
  width: 100%;
  height: 2.4375rem;
  padding: 0.5rem;
  border: 1px solid #DDD;
  margin: 0 0 1rem;
  font-family: inherit;
  font-size: 1rem;
  color: #8a8a8a;
  background-color: #f7f7f7;
  box-shadow: inset 0 1px 2px rgba(10, 10, 10, 0.1);
  border-radius: 0;
  transition: box-shadow 0.5s, border-color 0.25s ease-in-out;
  -webkit-appearance: none;
  -moz-appearance: none; }
  [type='text']:focus, [type='password']:focus, [type='date']:focus, [type='datetime']:focus, [type='datetime-local']:focus, [type='month']:focus, [type='week']:focus, [type='email']:focus, [type='number']:focus, [type='search']:focus, [type='tel']:focus, [type='time']:focus, [type='url']:focus, [type='color']:focus,
  textarea:focus {
    border: 1px solid #8a8a8a;
    background-color: #f7f7f7;
    outline: none;
    box-shadow: 0 0 5px #DDD;
    transition: box-shadow 0.5s, border-color 0.25s ease-in-out; }

textarea {
  max-width: 100%; }
  textarea[rows] {
    height: auto; }

input:-ms-input-placeholder,
textarea:-ms-input-placeholder {
  color: #DDD; }

input::placeholder,
textarea::placeholder {
  color: #DDD; }

input:disabled, input[readonly],
textarea:disabled,
textarea[readonly] {
  background-color: #E0E0E0;
  cursor: default; }

[type='submit'],
[type='button'] {
  border-radius: 0;
  -webkit-appearance: none;
  -moz-appearance: none; }

input[type="search"] {
  box-sizing: border-box; }

[type='file'],
[type='checkbox'],
[type='radio'] {
  margin: 0 0 1rem; }

[type='checkbox'] + label,
[type='radio'] + label {
  display: inline-block;
  margin-left: 0.5rem;
  margin-right: 1rem;
  margin-bottom: 0;
  vertical-align: baseline; }
  [type='checkbox'] + label[for],
  [type='radio'] + label[for] {
    cursor: pointer; }

label > [type='checkbox'],
label > [type='radio'] {
  margin-right: 0.5rem; }

[type='file'] {
  width: 100%; }

label {
  display: block;
  margin: 0;
  font-size: 0.875rem;
  font-weight: normal;
  line-height: 1.8;
  color: #0a0a0a; }
  label.middle {
    margin: 0 0 1rem;
    padding: 0.5625rem 0; }

.help-text {
  margin-top: -0.5rem;
  font-size: 0.8125rem;
  font-style: italic;
  color: #333; }

.input-group {
  display: table;
  width: 100%;
  margin-bottom: 1rem; }
  .input-group > :first-child {
    border-radius: 0 0 0 0; }
  .input-group > :last-child > * {
    border-radius: 0 0 0 0; }

.input-group-label, .input-group-field, .input-group-button {
  margin: 0;
  display: table-cell;
  vertical-align: middle; }

.input-group-label {
  text-align: center;
  padding: 0 1rem;
  background: #E0E0E0;
  color: #0a0a0a;
  border: 1px solid #DDD;
  white-space: nowrap;
  width: 1%;
  height: 100%; }
  .input-group-label:first-child {
    border-right: 0; }
  .input-group-label:last-child {
    border-left: 0; }

.input-group-field {
  border-radius: 0;
  height: 2.5rem; }

.input-group-button {
  padding-top: 0;
  padding-bottom: 0;
  text-align: center;
  height: 100%;
  width: 1%; }
  .input-group-button a,
  .input-group-button input,
  .input-group-button button {
    margin: 0; }

.input-group .input-group-button {
  display: table-cell; }

fieldset {
  border: 0;
  padding: 0;
  margin: 0; }

legend {
  margin-bottom: 0.5rem;
  max-width: 100%; }

.fieldset {
  border: 1px solid #DDD;
  padding: 1.25rem;
  margin: 1.125rem 0; }
  .fieldset legend {
    background: #f7f7f7;
    padding: 0 0.1875rem;
    margin: 0;
    margin-left: -0.1875rem; }

select {
  height: 2.4375rem;
  padding: 0.5rem;
  border: 1px solid #DDD;
  margin: 0 0 1rem;
  font-size: 1rem;
  font-family: inherit;
  line-height: normal;
  color: #8a8a8a;
  background-color: #fafafa;
  border-radius: 0;
  -webkit-appearance: none;
  -moz-appearance: none;
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" width="32" height="24" viewBox="0 0 32 24"><polygon points="0,0 32,0 16,24" style="fill: rgb%2851, 51, 51%29"></polygon></svg>');
  background-size: 9px 6px;
  background-position: right center;
  background-origin: content-box;
  background-repeat: no-repeat; }
  @media screen and (min-width: 0\0) {
    select {
      background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAYCAYAAACbU/80AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAIpJREFUeNrEkckNgDAMBBfRkEt0ObRBBdsGXUDgmQfK4XhH2m8czQAAy27R3tsw4Qfe2x8uOO6oYLb6GlOor3GF+swURAOmUJ+RwtEJs9WvTGEYxBXqI1MQAZhCfUQKRzDMVj+TwrAIV6jvSUEkYAr1LSkcyTBb/V+KYfX7xAeusq3sLDtGH3kEGACPWIflNZfhRQAAAABJRU5ErkJggg=="); } }
  select:disabled {
    background-color: #E0E0E0;
    cursor: default; }
  select::-ms-expand {
    display: none; }
  select[multiple] {
    height: auto;
    background-image: none; }

.is-invalid-input:not(:focus) {
  background-color: rgba(236, 88, 64, 0.1);
  border-color: #ec5840; }

.is-invalid-label {
  color: #ec5840; }

.form-error {
  display: none;
  margin-top: -0.5rem;
  margin-bottom: 1rem;
  font-size: 0.75rem;
  font-weight: bold;
  color: #ec5840; }
  .form-error.is-visible {
    display: block; }

.hide {
  display: none !important; }

.invisible {
  visibility: hidden; }

@media screen and (max-width: 39.9375em) {
  .hide-for-small-only {
    display: none !important; } }

@media screen and (max-width: 0em), screen and (min-width: 40em) {
  .show-for-small-only {
    display: none !important; } }

@media screen and (min-width: 40em) {
  .hide-for-medium {
    display: none !important; } }

@media screen and (max-width: 39.9375em) {
  .show-for-medium {
    display: none !important; } }

@media screen and (min-width: 40em) and (max-width: 63.9375em) {
  .hide-for-medium-only {
    display: none !important; } }

@media screen and (max-width: 39.9375em), screen and (min-width: 64em) {
  .show-for-medium-only {
    display: none !important; } }

@media screen and (min-width: 64em) {
  .hide-for-large {
    display: none !important; } }

@media screen and (max-width: 63.9375em) {
  .show-for-large {
    display: none !important; } }

@media screen and (min-width: 64em) and (max-width: 74.9375em) {
  .hide-for-large-only {
    display: none !important; } }

@media screen and (max-width: 63.9375em), screen and (min-width: 75em) {
  .show-for-large-only {
    display: none !important; } }

@media screen and (min-width: 75em) {
  .hide-for-xlarge {
    display: none !important; } }

@media screen and (max-width: 74.9375em) {
  .show-for-xlarge {
    display: none !important; } }

@media screen and (min-width: 75em) and (max-width: 89.9375em) {
  .hide-for-xlarge-only {
    display: none !important; } }

@media screen and (max-width: 74.9375em), screen and (min-width: 90em) {
  .show-for-xlarge-only {
    display: none !important; } }

@media screen and (min-width: 90em) {
  .hide-for-xxlarge {
    display: none !important; } }

@media screen and (max-width: 89.9375em) {
  .show-for-xxlarge {
    display: none !important; } }

@media screen and (min-width: 90em) {
  .hide-for-xxlarge-only {
    display: none !important; } }

@media screen and (max-width: 89.9375em) {
  .show-for-xxlarge-only {
    display: none !important; } }

.show-for-sr,
.show-on-focus {
  position: absolute !important;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0); }

.show-on-focus:active, .show-on-focus:focus {
  position: static !important;
  height: auto;
  width: auto;
  overflow: visible;
  clip: auto; }

.show-for-landscape,
.hide-for-portrait {
  display: block !important; }
  @media screen and (orientation: landscape) {
    .show-for-landscape,
    .hide-for-portrait {
      display: block !important; } }
  @media screen and (orientation: portrait) {
    .show-for-landscape,
    .hide-for-portrait {
      display: none !important; } }

.hide-for-landscape,
.show-for-portrait {
  display: none !important; }
  @media screen and (orientation: landscape) {
    .hide-for-landscape,
    .show-for-portrait {
      display: none !important; } }
  @media screen and (orientation: portrait) {
    .hide-for-landscape,
    .show-for-portrait {
      display: block !important; } }

.float-left {
  float: left !important; }

.float-right {
  float: right !important; }

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

.clearfix::before, .flat-form form .smart-field.holder-inline-radio::before,
.flat-form form .holder.holder-inline-radio::before,
.flat-form .wrapper .smart-field.holder-inline-radio::before,
.flat-form .wrapper .holder.holder-inline-radio::before, .clearfix::after, .flat-form form .smart-field.holder-inline-radio::after,
.flat-form form .holder.holder-inline-radio::after,
.flat-form .wrapper .smart-field.holder-inline-radio::after,
.flat-form .wrapper .holder.holder-inline-radio::after {
  content: ' ';
  display: table; }

.clearfix::after, .flat-form form .smart-field.holder-inline-radio::after,
.flat-form form .holder.holder-inline-radio::after,
.flat-form .wrapper .smart-field.holder-inline-radio::after,
.flat-form .wrapper .holder.holder-inline-radio::after {
  clear: both; }

.accordion {
  list-style-type: none;
  background: #f7f7f7;
  border: 1px solid #E0E0E0;
  border-bottom: 0;
  border-radius: 0;
  margin-left: 0; }

.accordion-title {
  display: block;
  padding: 1.25rem 1rem;
  line-height: 1;
  font-size: 0.75rem;
  color: #dd3333;
  position: relative;
  border-bottom: 1px solid #E0E0E0; }
  .accordion-title:hover, .accordion-title:focus {
    background-color: #E0E0E0; }
  .accordion-title::before {
    content: '+';
    position: absolute;
    right: 1rem;
    top: 50%;
    margin-top: -0.5rem; }
  .is-active > .accordion-title::before {
    content: '–'; }

.accordion-content {
  padding: 1rem;
  display: none;
  border-bottom: 1px solid #E0E0E0;
  background-color: #f7f7f7; }

.badge {
  display: inline-block;
  padding: 0.3em;
  min-width: 2.1em;
  font-size: 0.6rem;
  text-align: center;
  border-radius: 50%;
  background: #dd3333;
  color: #f7f7f7; }
  .badge.secondary {
    background: #777;
    color: #f7f7f7; }
  .badge.success {
    background: #3adb76;
    color: #f7f7f7; }
  .badge.warning {
    background: #ffae00;
    color: #f7f7f7; }
  .badge.alert {
    background: #ec5840;
    color: #f7f7f7; }

.breadcrumbs {
  list-style: none;
  margin: 0 0 1rem 0; }
  .breadcrumbs::before, .breadcrumbs::after {
    content: ' ';
    display: table; }
  .breadcrumbs::after {
    clear: both; }
  .breadcrumbs li {
    float: left;
    color: #0a0a0a;
    font-size: 0.6875rem;
    cursor: default;
    text-transform: uppercase; }
    .breadcrumbs li:not(:last-child)::after {
      color: #DDD;
      content: "/";
      margin: 0 0.75rem;
      position: relative;
      top: 1px;
      opacity: 1; }
  .breadcrumbs a {
    color: #dd3333; }
    .breadcrumbs a:hover {
      text-decoration: underline; }
  .breadcrumbs .disabled {
    color: #DDD;
    cursor: not-allowed; }

.button-group {
  margin-bottom: 1rem;
  font-size: 0; }
  .button-group::before, .button-group::after {
    content: ' ';
    display: table; }
  .button-group::after {
    clear: both; }
  .button-group .button {
    margin: 0;
    font-size: 0.9rem; }
    .button-group .button:not(:last-child) {
      margin-right: 1px; }
  .button-group.tiny .button {
    font-size: 0.6rem; }
  .button-group.small .button {
    font-size: 0.75rem; }
  .button-group.large .button {
    font-size: 1.25rem; }
  .button-group.expanded {
    margin-right: -1px; }
    .button-group.expanded::before, .button-group.expanded::after {
      display: none; }
    .button-group.expanded .button:first-child:nth-last-child(2), .button-group.expanded .button:first-child:nth-last-child(2):first-child:nth-last-child(2) ~ .button {
      display: inline-block;
      width: 50%;
      margin-right: 1px; }
    .button-group.expanded .button:first-child:nth-last-child(3), .button-group.expanded .button:first-child:nth-last-child(3):first-child:nth-last-child(3) ~ .button {
      display: inline-block;
      width: 33.33333%;
      margin-right: 1px; }
    .button-group.expanded .button:first-child:nth-last-child(4), .button-group.expanded .button:first-child:nth-last-child(4):first-child:nth-last-child(4) ~ .button {
      display: inline-block;
      width: 25%;
      margin-right: 1px; }
    .button-group.expanded .button:first-child:nth-last-child(5), .button-group.expanded .button:first-child:nth-last-child(5):first-child:nth-last-child(5) ~ .button {
      display: inline-block;
      width: 20%;
      margin-right: 1px; }
    .button-group.expanded .button:first-child:nth-last-child(6), .button-group.expanded .button:first-child:nth-last-child(6):first-child:nth-last-child(6) ~ .button {
      display: inline-block;
      width: 16.66667%;
      margin-right: 1px; }
  .button-group.primary .button {
    background-color: #2199e8;
    color: #fff; }
    .button-group.primary .button:hover, .button-group.primary .button:focus {
      background-color: #147cc0;
      color: #fff; }
  .button-group.secondary .button {
    background-color: #777;
    color: #fff; }
    .button-group.secondary .button:hover, .button-group.secondary .button:focus {
      background-color: #5f5f5f;
      color: #fff; }
  .button-group.success .button {
    background-color: #3adb76;
    color: #fff; }
    .button-group.success .button:hover, .button-group.success .button:focus {
      background-color: #22bb5b;
      color: #fff; }
  .button-group.warning .button {
    background-color: #ffae00;
    color: #fff; }
    .button-group.warning .button:hover, .button-group.warning .button:focus {
      background-color: #cc8b00;
      color: #fff; }
  .button-group.alert .button {
    background-color: #ec5840;
    color: #fff; }
    .button-group.alert .button:hover, .button-group.alert .button:focus {
      background-color: #da3116;
      color: #fff; }
  .button-group.stacked .button, .button-group.stacked-for-small .button, .button-group.stacked-for-medium .button {
    width: 100%;
    border-right: 1px solid transparent; }
    .button-group.stacked .button:not(:last-child), .button-group.stacked-for-small .button:not(:last-child), .button-group.stacked-for-medium .button:not(:last-child) {
      border-bottom: 1px solid #f7f7f7; }
  @media screen and (min-width: 40em) {
    .button-group.stacked-for-small .button {
      width: auto; }
      .button-group.stacked-for-small .button:not(:last-child) {
        margin-right: 1px; } }
  @media screen and (min-width: 64em) {
    .button-group.stacked-for-medium .button {
      width: auto; }
      .button-group.stacked-for-medium .button:not(:last-child) {
        margin-right: 1px; } }
  @media screen and (max-width: 39.9375em) {
    .button-group.stacked-for-small.expanded {
      display: block; }
      .button-group.stacked-for-small.expanded .button {
        display: block;
        margin-right: 0; } }

.callout {
  margin: 0 0 1rem 0;
  padding: 1rem;
  border: 1px solid rgba(10, 10, 10, 0.25);
  border-radius: 0;
  position: relative;
  color: #1d2a29;
  background-color: #fefefe; }
  .callout > :first-child {
    margin-top: 0; }
  .callout > :last-child {
    margin-bottom: 0; }
  .callout.primary {
    background-color: #def0fc; }
  .callout.secondary {
    background-color: #ebebeb; }
  .callout.success {
    background-color: #e1faea; }
  .callout.warning {
    background-color: #fff3d9; }
  .callout.alert {
    background-color: #fce6e2; }
  .callout.small {
    padding-top: 0.5rem;
    padding-right: 0.5rem;
    padding-bottom: 0.5rem;
    padding-left: 0.5rem; }
  .callout.large {
    padding-top: 3rem;
    padding-right: 3rem;
    padding-bottom: 3rem;
    padding-left: 3rem; }

.close-button {
  position: absolute;
  color: #8a8a8a;
  right: 1rem;
  top: 0.5rem;
  font-size: 2em;
  line-height: 1;
  cursor: pointer; }
  [data-whatinput='mouse'] .close-button {
    outline: 0; }
  .close-button:hover, .close-button:focus {
    color: #0a0a0a; }

.is-drilldown {
  position: relative;
  overflow: hidden; }
  .is-drilldown li {
    display: block !important; }

.is-drilldown-submenu {
  position: absolute;
  top: 0;
  left: 100%;
  z-index: -1;
  height: 100%;
  width: 100%;
  background: #f7f7f7;
  transition: transform 0.15s linear; }
  .is-drilldown-submenu.is-active {
    z-index: 1;
    display: block;
    -ms-transform: translateX(-100%);
        transform: translateX(-100%); }
  .is-drilldown-submenu.is-closing {
    -ms-transform: translateX(100%);
        transform: translateX(100%); }

.is-drilldown-submenu-parent > a {
  position: relative; }
  .is-drilldown-submenu-parent > a::after {
    content: '';
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    border-color: transparent transparent transparent #2199e8;
    border-left-style: solid;
    border-right-width: 0;
    position: absolute;
    top: 50%;
    margin-top: -6px;
    right: 1rem; }

.js-drilldown-back > a::before {
  content: '';
  display: block;
  width: 0;
  height: 0;
  border: inset 6px;
  border-color: transparent #2199e8 transparent transparent;
  border-right-style: solid;
  border-left-width: 0;
  border-left-width: 0;
  display: inline-block;
  vertical-align: middle;
  margin-right: 0.75rem; }

.dropdown-pane {
  background-color: #f7f7f7;
  border: 1px solid #DDD;
  border-radius: 0;
  display: block;
  font-size: 16rem;
  padding: 1rem;
  position: absolute;
  visibility: hidden;
  width: 300px;
  z-index: 10; }
  .dropdown-pane.is-open {
    visibility: visible; }

.dropdown-pane.tiny {
  width: 100px; }

.dropdown-pane.small {
  width: 200px; }

.dropdown-pane.large {
  width: 400px; }

.dropdown.menu > li.opens-left > .is-dropdown-submenu {
  left: auto;
  right: 0;
  top: 100%; }

.dropdown.menu > li.opens-right > .is-dropdown-submenu {
  right: auto;
  left: 0;
  top: 100%; }

.dropdown.menu > li.is-dropdown-submenu-parent > a {
  padding-right: 1.5rem;
  position: relative; }

.dropdown.menu > li.is-dropdown-submenu-parent > a::after {
  content: '';
  display: block;
  width: 0;
  height: 0;
  border: inset 5px;
  border-color: #dd3333 transparent transparent;
  border-top-style: solid;
  border-bottom-width: 0;
  right: 5px;
  margin-top: -2px; }

[data-whatinput='mouse'] .dropdown.menu a {
  outline: 0; }

.no-js .dropdown.menu ul {
  display: none; }

.dropdown.menu.vertical > li .is-dropdown-submenu {
  top: 0; }

.dropdown.menu.vertical > li.opens-left .is-dropdown-submenu {
  left: auto;
  right: 100%; }

.dropdown.menu.vertical > li.opens-right .is-dropdown-submenu {
  right: auto;
  left: 100%; }

.dropdown.menu.vertical > li > a::after {
  right: 14px;
  margin-top: -3px; }

.dropdown.menu.vertical > li.opens-left > a::after {
  content: '';
  display: block;
  width: 0;
  height: 0;
  border: inset 5px;
  border-color: transparent #dd3333 transparent transparent;
  border-right-style: solid;
  border-left-width: 0; }

.dropdown.menu.vertical > li.opens-right > a::after {
  content: '';
  display: block;
  width: 0;
  height: 0;
  border: inset 5px;
  border-color: transparent transparent transparent #dd3333;
  border-left-style: solid;
  border-right-width: 0; }

@media screen and (min-width: 40em) {
  .dropdown.menu.medium-horizontal > li.opens-left > .is-dropdown-submenu {
    left: auto;
    right: 0;
    top: 100%; }
  .dropdown.menu.medium-horizontal > li.opens-right > .is-dropdown-submenu {
    right: auto;
    left: 0;
    top: 100%; }
  .dropdown.menu.medium-horizontal > li.is-dropdown-submenu-parent > a {
    padding-right: 1.5rem;
    position: relative; }
  .dropdown.menu.medium-horizontal > li.is-dropdown-submenu-parent > a::after {
    content: '';
    display: block;
    width: 0;
    height: 0;
    border: inset 5px;
    border-color: #dd3333 transparent transparent;
    border-top-style: solid;
    border-bottom-width: 0;
    right: 5px;
    margin-top: -2px; }
  .dropdown.menu.medium-vertical > li .is-dropdown-submenu {
    top: 0; }
  .dropdown.menu.medium-vertical > li.opens-left .is-dropdown-submenu {
    left: auto;
    right: 100%; }
  .dropdown.menu.medium-vertical > li.opens-right .is-dropdown-submenu {
    right: auto;
    left: 100%; }
  .dropdown.menu.medium-vertical > li > a::after {
    right: 14px;
    margin-top: -3px; }
  .dropdown.menu.medium-vertical > li.opens-left > a::after {
    content: '';
    display: block;
    width: 0;
    height: 0;
    border: inset 5px;
    border-color: transparent #dd3333 transparent transparent;
    border-right-style: solid;
    border-left-width: 0; }
  .dropdown.menu.medium-vertical > li.opens-right > a::after {
    content: '';
    display: block;
    width: 0;
    height: 0;
    border: inset 5px;
    border-color: transparent transparent transparent #dd3333;
    border-left-style: solid;
    border-right-width: 0; } }

@media screen and (min-width: 64em) {
  .dropdown.menu.large-horizontal > li.opens-left > .is-dropdown-submenu {
    left: auto;
    right: 0;
    top: 100%; }
  .dropdown.menu.large-horizontal > li.opens-right > .is-dropdown-submenu {
    right: auto;
    left: 0;
    top: 100%; }
  .dropdown.menu.large-horizontal > li.is-dropdown-submenu-parent > a {
    padding-right: 1.5rem;
    position: relative; }
  .dropdown.menu.large-horizontal > li.is-dropdown-submenu-parent > a::after {
    content: '';
    display: block;
    width: 0;
    height: 0;
    border: inset 5px;
    border-color: #dd3333 transparent transparent;
    border-top-style: solid;
    border-bottom-width: 0;
    right: 5px;
    margin-top: -2px; }
  .dropdown.menu.large-vertical > li .is-dropdown-submenu {
    top: 0; }
  .dropdown.menu.large-vertical > li.opens-left .is-dropdown-submenu {
    left: auto;
    right: 100%; }
  .dropdown.menu.large-vertical > li.opens-right .is-dropdown-submenu {
    right: auto;
    left: 100%; }
  .dropdown.menu.large-vertical > li > a::after {
    right: 14px;
    margin-top: -3px; }
  .dropdown.menu.large-vertical > li.opens-left > a::after {
    content: '';
    display: block;
    width: 0;
    height: 0;
    border: inset 5px;
    border-color: transparent #dd3333 transparent transparent;
    border-right-style: solid;
    border-left-width: 0; }
  .dropdown.menu.large-vertical > li.opens-right > a::after {
    content: '';
    display: block;
    width: 0;
    height: 0;
    border: inset 5px;
    border-color: transparent transparent transparent #dd3333;
    border-left-style: solid;
    border-right-width: 0; } }

@media screen and (min-width: 75em) {
  .dropdown.menu.xlarge-horizontal > li.opens-left > .is-dropdown-submenu {
    left: auto;
    right: 0;
    top: 100%; }
  .dropdown.menu.xlarge-horizontal > li.opens-right > .is-dropdown-submenu {
    right: auto;
    left: 0;
    top: 100%; }
  .dropdown.menu.xlarge-horizontal > li.is-dropdown-submenu-parent > a {
    padding-right: 1.5rem;
    position: relative; }
  .dropdown.menu.xlarge-horizontal > li.is-dropdown-submenu-parent > a::after {
    content: '';
    display: block;
    width: 0;
    height: 0;
    border: inset 5px;
    border-color: #dd3333 transparent transparent;
    border-top-style: solid;
    border-bottom-width: 0;
    right: 5px;
    margin-top: -2px; }
  .dropdown.menu.xlarge-vertical > li .is-dropdown-submenu {
    top: 0; }
  .dropdown.menu.xlarge-vertical > li.opens-left .is-dropdown-submenu {
    left: auto;
    right: 100%; }
  .dropdown.menu.xlarge-vertical > li.opens-right .is-dropdown-submenu {
    right: auto;
    left: 100%; }
  .dropdown.menu.xlarge-vertical > li > a::after {
    right: 14px;
    margin-top: -3px; }
  .dropdown.menu.xlarge-vertical > li.opens-left > a::after {
    content: '';
    display: block;
    width: 0;
    height: 0;
    border: inset 5px;
    border-color: transparent #dd3333 transparent transparent;
    border-right-style: solid;
    border-left-width: 0; }
  .dropdown.menu.xlarge-vertical > li.opens-right > a::after {
    content: '';
    display: block;
    width: 0;
    height: 0;
    border: inset 5px;
    border-color: transparent transparent transparent #dd3333;
    border-left-style: solid;
    border-right-width: 0; } }

@media screen and (min-width: 90em) {
  .dropdown.menu.xxlarge-horizontal > li.opens-left > .is-dropdown-submenu {
    left: auto;
    right: 0;
    top: 100%; }
  .dropdown.menu.xxlarge-horizontal > li.opens-right > .is-dropdown-submenu {
    right: auto;
    left: 0;
    top: 100%; }
  .dropdown.menu.xxlarge-horizontal > li.is-dropdown-submenu-parent > a {
    padding-right: 1.5rem;
    position: relative; }
  .dropdown.menu.xxlarge-horizontal > li.is-dropdown-submenu-parent > a::after {
    content: '';
    display: block;
    width: 0;
    height: 0;
    border: inset 5px;
    border-color: #dd3333 transparent transparent;
    border-top-style: solid;
    border-bottom-width: 0;
    right: 5px;
    margin-top: -2px; }
  .dropdown.menu.xxlarge-vertical > li .is-dropdown-submenu {
    top: 0; }
  .dropdown.menu.xxlarge-vertical > li.opens-left .is-dropdown-submenu {
    left: auto;
    right: 100%; }
  .dropdown.menu.xxlarge-vertical > li.opens-right .is-dropdown-submenu {
    right: auto;
    left: 100%; }
  .dropdown.menu.xxlarge-vertical > li > a::after {
    right: 14px;
    margin-top: -3px; }
  .dropdown.menu.xxlarge-vertical > li.opens-left > a::after {
    content: '';
    display: block;
    width: 0;
    height: 0;
    border: inset 5px;
    border-color: transparent #dd3333 transparent transparent;
    border-right-style: solid;
    border-left-width: 0; }
  .dropdown.menu.xxlarge-vertical > li.opens-right > a::after {
    content: '';
    display: block;
    width: 0;
    height: 0;
    border: inset 5px;
    border-color: transparent transparent transparent #dd3333;
    border-left-style: solid;
    border-right-width: 0; } }

.dropdown.menu.align-right .is-dropdown-submenu.first-sub {
  top: 100%;
  left: auto;
  right: 0; }

.is-dropdown-menu.vertical {
  width: 100px; }
  .is-dropdown-menu.vertical.align-right {
    float: right; }

.is-dropdown-submenu-parent {
  position: relative; }
  .is-dropdown-submenu-parent a::after {
    position: absolute;
    top: 50%;
    right: 5px;
    margin-top: -2px; }
  .is-dropdown-submenu-parent.opens-inner .is-dropdown-submenu {
    top: 100%; }
  .is-dropdown-submenu-parent.opens-left .is-dropdown-submenu {
    left: auto;
    right: 100%; }

.is-dropdown-submenu {
  display: none;
  position: absolute;
  top: 0;
  left: 100%;
  min-width: 200px;
  z-index: 1;
  background: #f7f7f7;
  border: 1px solid #DDD; }
  .is-dropdown-submenu .is-dropdown-submenu-parent > a::after {
    right: 14px;
    margin-top: -3px; }
  .is-dropdown-submenu .is-dropdown-submenu-parent.opens-left > a::after {
    content: '';
    display: block;
    width: 0;
    height: 0;
    border: inset 5px;
    border-color: transparent #dd3333 transparent transparent;
    border-right-style: solid;
    border-left-width: 0; }
  .is-dropdown-submenu .is-dropdown-submenu-parent.opens-right > a::after {
    content: '';
    display: block;
    width: 0;
    height: 0;
    border: inset 5px;
    border-color: transparent transparent transparent #dd3333;
    border-left-style: solid;
    border-right-width: 0; }
  .is-dropdown-submenu .is-dropdown-submenu {
    margin-top: -1px; }
  .is-dropdown-submenu > li {
    width: 100%; }
  .is-dropdown-submenu:not(.js-dropdown-nohover) > .is-dropdown-submenu-parent:hover > .is-dropdown-submenu, .is-dropdown-submenu.js-dropdown-active {
    display: block; }

.flex-video {
  position: relative;
  height: 0;
  padding-bottom: 75%;
  margin-bottom: 1rem;
  overflow: hidden; }
  .flex-video iframe,
  .flex-video object,
  .flex-video embed,
  .flex-video video {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%; }
  .flex-video.widescreen {
    padding-bottom: 56.25%; }
  .flex-video.vimeo {
    padding-top: 0; }

.label {
  display: inline-block;
  padding: 0.33333rem 0.5rem;
  font-size: 0.8rem;
  line-height: 1;
  white-space: nowrap;
  cursor: default;
  border-radius: 0;
  background: #dd3333;
  color: #f7f7f7; }
  .label.secondary {
    background: #777;
    color: #f7f7f7; }
  .label.success {
    background: #3adb76;
    color: #f7f7f7; }
  .label.warning {
    background: #ffae00;
    color: #f7f7f7; }
  .label.alert {
    background: #ec5840;
    color: #f7f7f7; }

.media-object {
  margin-bottom: 1rem;
  display: block; }
  .media-object img {
    max-width: none; }
  @media screen and (max-width: 39.9375em) {
    .media-object.stack-for-small .media-object-section {
      padding: 0;
      padding-bottom: 1rem;
      display: block; }
      .media-object.stack-for-small .media-object-section img {
        width: 100%; } }

.media-object-section {
  display: table-cell;
  vertical-align: top; }
  .media-object-section:first-child {
    padding-right: 1rem; }
  .media-object-section:last-child:not(:nth-child(2)) {
    padding-left: 1rem; }
  .media-object-section.middle {
    vertical-align: middle; }
  .media-object-section.bottom {
    vertical-align: bottom; }

.menu {
  margin: 0;
  list-style-type: none; }
  .menu > li {
    display: table-cell;
    vertical-align: middle; }
    [data-whatinput='mouse'] .menu > li {
      outline: 0; }
  .menu > li > a {
    display: block;
    padding: 0.7rem 1rem;
    line-height: 1; }
  .menu input,
  .menu a,
  .menu button {
    margin-bottom: 0; }
  .menu > li > a img,
  .menu > li > a i {
    vertical-align: middle; }
  .menu > li > a i + span,
  .menu > li > a img + span {
    vertical-align: middle; }
  .menu > li > a img,
  .menu > li > a i {
    margin-right: 0.25rem;
    display: inline-block; }
  .menu > li {
    display: table-cell; }
  .menu.vertical > li {
    display: block; }
  @media screen and (min-width: 40em) {
    .menu.medium-horizontal > li {
      display: table-cell; }
    .menu.medium-vertical > li {
      display: block; } }
  @media screen and (min-width: 64em) {
    .menu.large-horizontal > li {
      display: table-cell; }
    .menu.large-vertical > li {
      display: block; } }
  @media screen and (min-width: 75em) {
    .menu.xlarge-horizontal > li {
      display: table-cell; }
    .menu.xlarge-vertical > li {
      display: block; } }
  @media screen and (min-width: 90em) {
    .menu.xxlarge-horizontal > li {
      display: table-cell; }
    .menu.xxlarge-vertical > li {
      display: block; } }
  .menu.simple li {
    line-height: 1;
    display: inline-block;
    margin-right: 1rem; }
  .menu.simple a {
    padding: 0; }
  .menu.align-right::before, .menu.align-right::after {
    content: ' ';
    display: table; }
  .menu.align-right::after {
    clear: both; }
  .menu.align-right > li {
    float: right; }
  .menu.expanded {
    width: 100%;
    display: table;
    table-layout: fixed; }
    .menu.expanded > li:first-child:last-child {
      width: 100%; }
  .menu.icon-top > li > a {
    text-align: center; }
    .menu.icon-top > li > a img,
    .menu.icon-top > li > a i {
      display: block;
      margin: 0 auto 0.25rem; }
  .menu.nested {
    margin-left: 1rem; }
  .menu .active > a {
    color: #dd3333;
    background: #0a0a0a; }

.menu-text {
  font-weight: bold;
  color: inherit;
  line-height: 1;
  padding-top: 0;
  padding-bottom: 0;
  padding: 0.7rem 1rem; }

.menu-centered {
  text-align: center; }
  .menu-centered > .menu {
    display: inline-block; }

.no-js [data-responsive-menu] ul {
  display: none; }

html,
body {
  height: 100%; }

.off-canvas-wrapper {
  width: 100%;
  overflow-x: hidden;
  position: relative;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  -webkit-overflow-scrolling: auto; }

.off-canvas-wrapper-inner {
  position: relative;
  width: 100%;
  transition: transform 0.5s ease; }
  .off-canvas-wrapper-inner::before, .off-canvas-wrapper-inner::after {
    content: ' ';
    display: table; }
  .off-canvas-wrapper-inner::after {
    clear: both; }

.off-canvas-content,
.off-canvas-content {
  min-height: 100%;
  background: #f7f7f7;
  transition: transform 0.5s ease;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  z-index: 1;
  padding-bottom: 0.1px;
  box-shadow: 0 0 10px rgba(10, 10, 10, 0.5); }

.js-off-canvas-exit {
  display: none;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(247, 247, 247, 0.25);
  cursor: pointer;
  transition: background 0.5s ease; }

.off-canvas {
  position: absolute;
  background: #E0E0E0;
  z-index: -1;
  max-height: 100%;
  overflow-y: auto;
  -ms-transform: translateX(0);
      transform: translateX(0); }
  [data-whatinput='mouse'] .off-canvas {
    outline: 0; }
  .off-canvas.position-left {
    left: -250px;
    top: 0;
    width: 250px; }
    .is-open-left {
      -ms-transform: translateX(250px);
          transform: translateX(250px); }
  .off-canvas.position-right {
    right: -250px;
    top: 0;
    width: 250px; }
    .is-open-right {
      -ms-transform: translateX(-250px);
          transform: translateX(-250px); }

@media screen and (min-width: 40em) {
  .position-left.reveal-for-medium {
    left: 0;
    z-index: auto;
    position: fixed; }
    .position-left.reveal-for-medium ~ .off-canvas-content {
      margin-left: 250px; }
  .position-right.reveal-for-medium {
    right: 0;
    z-index: auto;
    position: fixed; }
    .position-right.reveal-for-medium ~ .off-canvas-content {
      margin-right: 250px; } }

@media screen and (min-width: 64em) {
  .position-left.reveal-for-large {
    left: 0;
    z-index: auto;
    position: fixed; }
    .position-left.reveal-for-large ~ .off-canvas-content {
      margin-left: 250px; }
  .position-right.reveal-for-large {
    right: 0;
    z-index: auto;
    position: fixed; }
    .position-right.reveal-for-large ~ .off-canvas-content {
      margin-right: 250px; } }

@media screen and (min-width: 75em) {
  .position-left.reveal-for-xlarge {
    left: 0;
    z-index: auto;
    position: fixed; }
    .position-left.reveal-for-xlarge ~ .off-canvas-content {
      margin-left: 250px; }
  .position-right.reveal-for-xlarge {
    right: 0;
    z-index: auto;
    position: fixed; }
    .position-right.reveal-for-xlarge ~ .off-canvas-content {
      margin-right: 250px; } }

@media screen and (min-width: 90em) {
  .position-left.reveal-for-xxlarge {
    left: 0;
    z-index: auto;
    position: fixed; }
    .position-left.reveal-for-xxlarge ~ .off-canvas-content {
      margin-left: 250px; }
  .position-right.reveal-for-xxlarge {
    right: 0;
    z-index: auto;
    position: fixed; }
    .position-right.reveal-for-xxlarge ~ .off-canvas-content {
      margin-right: 250px; } }

.orbit {
  position: relative; }

.orbit-container {
  position: relative;
  margin: 0;
  overflow: hidden;
  list-style: none; }

.orbit-slide {
  width: 100%;
  max-height: 100%; }
  .orbit-slide.no-motionui.is-active {
    top: 0;
    left: 0; }

.orbit-figure {
  margin: 0; }

.orbit-image {
  margin: 0;
  width: 100%;
  max-width: 100%; }

.orbit-caption {
  position: absolute;
  bottom: 0;
  width: 100%;
  padding: 1rem;
  margin-bottom: 0;
  color: #f7f7f7;
  background-color: rgba(10, 10, 10, 0.5); }

.orbit-previous, .orbit-next {
  position: absolute;
  top: 50%;
  -ms-transform: translateY(-50%);
      transform: translateY(-50%);
  z-index: 10;
  padding: 1rem;
  color: #f7f7f7; }
  [data-whatinput='mouse'] .orbit-previous, [data-whatinput='mouse'] .orbit-next {
    outline: 0; }
  .orbit-previous:hover, .orbit-next:hover, .orbit-previous:active, .orbit-next:active, .orbit-previous:focus, .orbit-next:focus {
    background-color: rgba(10, 10, 10, 0.5); }

.orbit-previous {
  left: 0; }

.orbit-next {
  left: auto;
  right: 0; }

.orbit-bullets {
  position: relative;
  margin-top: 0.8rem;
  margin-bottom: 0.8rem;
  text-align: center; }
  [data-whatinput='mouse'] .orbit-bullets {
    outline: 0; }
  .orbit-bullets button {
    width: 1.2rem;
    height: 1.2rem;
    margin: 0.1rem;
    background-color: #DDD;
    border-radius: 50%; }
    .orbit-bullets button:hover {
      background-color: #8a8a8a; }
    .orbit-bullets button.is-active {
      background-color: #8a8a8a; }

.pagination {
  margin-left: 0;
  margin-bottom: 1rem; }
  .pagination::before, .pagination::after {
    content: ' ';
    display: table; }
  .pagination::after {
    clear: both; }
  .pagination li {
    font-size: 0.875rem;
    margin-right: 0.0625rem;
    border-radius: 0;
    display: none; }
    .pagination li:last-child, .pagination li:first-child {
      display: inline-block; }
    @media screen and (min-width: 40em) {
      .pagination li {
        display: inline-block; } }
  .pagination a,
  .pagination button {
    color: #0a0a0a;
    display: block;
    padding: 0.1875rem 0.625rem;
    border-radius: 0; }
    .pagination a:hover,
    .pagination button:hover {
      background: #E0E0E0; }
  .pagination .current {
    padding: 0.1875rem 0.625rem;
    background: #dd3333;
    color: #f7f7f7;
    cursor: default; }
  .pagination .disabled {
    padding: 0.1875rem 0.625rem;
    color: #DDD;
    cursor: not-allowed; }
    .pagination .disabled:hover {
      background: transparent; }
  .pagination .ellipsis::after {
    content: '\2026';
    padding: 0.1875rem 0.625rem;
    color: #0a0a0a; }

.pagination-previous a::before,
.pagination-previous.disabled::before {
  content: '\00ab';
  display: inline-block;
  margin-right: 0.5rem; }

.pagination-next a::after,
.pagination-next.disabled::after {
  content: '\00bb';
  display: inline-block;
  margin-left: 0.5rem; }

.progress {
  background-color: #DDD;
  height: 1rem;
  margin-bottom: 1rem;
  border-radius: 0; }
  .progress.primary .progress-meter {
    background-color: #2199e8; }
  .progress.secondary .progress-meter {
    background-color: #777; }
  .progress.success .progress-meter {
    background-color: #3adb76; }
  .progress.warning .progress-meter {
    background-color: #ffae00; }
  .progress.alert .progress-meter {
    background-color: #ec5840; }

.progress-meter {
  position: relative;
  display: block;
  width: 0%;
  height: 100%;
  background-color: #dd3333; }

.progress-meter-text {
  position: absolute;
  top: 50%;
  left: 50%;
  -ms-transform: translate(-50%, -50%);
      transform: translate(-50%, -50%);
  position: absolute;
  margin: 0;
  font-size: 0.75rem;
  font-weight: bold;
  color: #f7f7f7;
  white-space: nowrap; }

.slider {
  position: relative;
  height: 0.5rem;
  margin-top: 1.25rem;
  margin-bottom: 2.25rem;
  background-color: #E0E0E0;
  cursor: pointer;
  -webkit-user-select: none;
      -ms-user-select: none;
          user-select: none;
  -ms-touch-action: none;
      touch-action: none; }

.slider-fill {
  position: absolute;
  top: 0;
  left: 0;
  display: inline-block;
  max-width: 100%;
  height: 0.5rem;
  background-color: #DDD;
  transition: all 0.2s ease-in-out; }
  .slider-fill.is-dragging {
    transition: all 0s linear; }

.slider-handle {
  position: absolute;
  top: 50%;
  -ms-transform: translateY(-50%);
      transform: translateY(-50%);
  position: absolute;
  left: 0;
  z-index: 1;
  display: inline-block;
  width: 1.4rem;
  height: 1.4rem;
  background-color: #dd3333;
  transition: all 0.2s ease-in-out;
  -ms-touch-action: manipulation;
      touch-action: manipulation;
  border-radius: 0; }
  [data-whatinput='mouse'] .slider-handle {
    outline: 0; }
  .slider-handle:hover {
    background-color: #c62121; }
  .slider-handle.is-dragging {
    transition: all 0s linear; }

.slider.disabled,
.slider[disabled] {
  opacity: 0.25;
  cursor: not-allowed; }

.slider.vertical {
  display: inline-block;
  width: 0.5rem;
  height: 12.5rem;
  margin: 0 1.25rem;
  -ms-transform: scale(1, -1);
      transform: scale(1, -1); }
  .slider.vertical .slider-fill {
    top: 0;
    width: 0.5rem;
    max-height: 100%; }
  .slider.vertical .slider-handle {
    position: absolute;
    top: 0;
    left: 50%;
    width: 1.4rem;
    height: 1.4rem;
    -ms-transform: translateX(-50%);
        transform: translateX(-50%); }

.sticky-container {
  position: relative; }

.sticky {
  position: absolute;
  z-index: 0;
  transform: translate3d(0, 0, 0); }

.sticky.is-stuck {
  position: fixed;
  z-index: 5; }
  .sticky.is-stuck.is-at-top {
    top: 0; }
  .sticky.is-stuck.is-at-bottom {
    bottom: 0; }

.sticky.is-anchored {
  position: absolute;
  left: auto;
  right: auto; }
  .sticky.is-anchored.is-at-bottom {
    bottom: 0; }

body.is-reveal-open {
  overflow: hidden; }

.reveal-overlay {
  display: none;
  position: fixed;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 1005;
  background-color: rgba(10, 10, 10, 0.45);
  overflow-y: scroll; }

.reveal {
  display: none;
  z-index: 1006;
  padding: 1rem;
  border: 1px solid #DDD;
  background-color: #f7f7f7;
  border-radius: 0;
  position: relative;
  top: 100px;
  margin-left: auto;
  margin-right: auto;
  overflow-y: auto; }
  [data-whatinput='mouse'] .reveal {
    outline: 0; }
  @media screen and (min-width: 40em) {
    .reveal {
      min-height: 0; } }
  .reveal .column, .reveal .columns,
  .reveal .columns {
    min-width: 0; }
  .reveal > :last-child {
    margin-bottom: 0; }
  @media screen and (min-width: 40em) {
    .reveal {
      width: 600px;
      max-width: 75rem; } }
  @media screen and (min-width: 40em) {
    .reveal .reveal {
      left: auto;
      right: auto;
      margin: 0 auto; } }
  .reveal.collapse {
    padding: 0; }
  @media screen and (min-width: 40em) {
    .reveal.tiny {
      width: 30%;
      max-width: 75rem; } }
  @media screen and (min-width: 40em) {
    .reveal.small {
      width: 50%;
      max-width: 75rem; } }
  @media screen and (min-width: 40em) {
    .reveal.large {
      width: 90%;
      max-width: 75rem; } }
  .reveal.full {
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    height: 100vh;
    min-height: 100vh;
    max-width: none;
    margin-left: 0;
    border: 0;
    border-radius: 0; }
  @media screen and (max-width: 39.9375em) {
    .reveal {
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      height: 100vh;
      min-height: 100vh;
      max-width: none;
      margin-left: 0;
      border: 0;
      border-radius: 0; } }
  .reveal.without-overlay {
    position: fixed; }

.switch {
  margin-bottom: 1rem;
  outline: 0;
  position: relative;
  -webkit-user-select: none;
      -ms-user-select: none;
          user-select: none;
  color: #f7f7f7;
  font-weight: bold;
  font-size: 0.875rem; }

.switch-input {
  opacity: 0;
  position: absolute; }

.switch-paddle {
  background: #DDD;
  cursor: pointer;
  display: block;
  position: relative;
  width: 4rem;
  height: 2rem;
  transition: all 0.25s ease-out;
  border-radius: 0;
  color: inherit;
  font-weight: inherit; }
  input + .switch-paddle {
    margin: 0; }
  .switch-paddle::after {
    background: #f7f7f7;
    content: '';
    display: block;
    position: absolute;
    height: 1.5rem;
    left: 0.25rem;
    top: 0.25rem;
    width: 1.5rem;
    transition: all 0.25s ease-out;
    transform: translate3d(0, 0, 0);
    border-radius: 0; }
  input:checked ~ .switch-paddle {
    background: #dd3333; }
    input:checked ~ .switch-paddle::after {
      left: 2.25rem; }
  [data-whatinput='mouse'] input:focus ~ .switch-paddle {
    outline: 0; }

.switch-active, .switch-inactive {
  position: absolute;
  top: 50%;
  -ms-transform: translateY(-50%);
      transform: translateY(-50%); }

.switch-active {
  left: 8%;
  display: none; }
  input:checked + label > .switch-active {
    display: block; }

.switch-inactive {
  right: 15%; }
  input:checked + label > .switch-inactive {
    display: none; }

.switch.tiny .switch-paddle {
  width: 3rem;
  height: 1.5rem;
  font-size: 0.625rem; }

.switch.tiny .switch-paddle::after {
  width: 1rem;
  height: 1rem; }

.switch.tiny input:checked ~ .switch-paddle::after {
  left: 1.75rem; }

.switch.small .switch-paddle {
  width: 3.5rem;
  height: 1.75rem;
  font-size: 0.75rem; }

.switch.small .switch-paddle::after {
  width: 1.25rem;
  height: 1.25rem; }

.switch.small input:checked ~ .switch-paddle::after {
  left: 2rem; }

.switch.large .switch-paddle {
  width: 5rem;
  height: 2.5rem;
  font-size: 1rem; }

.switch.large .switch-paddle::after {
  width: 2rem;
  height: 2rem; }

.switch.large input:checked ~ .switch-paddle::after {
  left: 2.75rem; }

table {
  width: 100%;
  margin-bottom: 1rem;
  border-radius: 0; }
  thead,
  tbody,
  tfoot {
    border: 1px solid #ebebeb;
    background-color: #f7f7f7; }
  caption {
    font-weight: bold;
    padding: 0.5rem 0.625rem 0.625rem; }
  thead,
  tfoot {
    background: #f1f1f1;
    color: #1d2a29; }
    thead tr,
    tfoot tr {
      background: transparent; }
    thead th,
    thead td,
    tfoot th,
    tfoot td {
      padding: 0.5rem 0.625rem 0.625rem;
      font-weight: bold;
      text-align: left; }
  tbody tr:nth-child(even) {
    background-color: #ebebeb; }
  tbody th,
  tbody td {
    padding: 0.5rem 0.625rem 0.625rem; }

@media screen and (max-width: 63.9375em) {
  table.stack thead {
    display: none; }
  table.stack tfoot {
    display: none; }
  table.stack tr,
  table.stack th,
  table.stack td {
    display: block; }
  table.stack td {
    border-top: 0; } }

table.scroll {
  display: block;
  width: 100%;
  overflow-x: auto; }

table.hover tr:hover {
  background-color: #f2f2f2; }

table.hover tr:nth-of-type(even):hover {
  background-color: #e5e5e5; }

.table-scroll {
  overflow-x: auto; }
  .table-scroll table {
    width: auto; }

.tabs {
  margin: 0;
  list-style-type: none;
  background: #f7f7f7;
  border: 1px solid #E0E0E0; }
  .tabs::before, .tabs::after {
    content: ' ';
    display: table; }
  .tabs::after {
    clear: both; }

.tabs.vertical > li {
  width: auto;
  float: none;
  display: block; }

.tabs.simple > li > a {
  padding: 0; }
  .tabs.simple > li > a:hover {
    background: transparent; }

.tabs.primary {
  background: #2199e8; }
  .tabs.primary > li > a {
    color: #f7f7f7; }
    .tabs.primary > li > a:hover, .tabs.primary > li > a:focus {
      background: #1893e4; }

.tabs-title {
  float: left; }
  .tabs-title > a {
    display: block;
    padding: 1.25rem 1.5rem;
    line-height: 1;
    font-size: 0.75rem; }
    .tabs-title > a:hover {
      background: #f7f7f7; }
    .tabs-title > a:focus, .tabs-title > a[aria-selected='true'] {
      background: #E0E0E0; }

.tabs-content {
  background: #f7f7f7;
  transition: all 0.5s ease;
  border: 1px solid #E0E0E0;
  border-top: 0; }

.tabs-content.vertical {
  border: 1px solid #E0E0E0;
  border-left: 0; }

.tabs-panel {
  display: none;
  padding: 1rem; }
  .tabs-panel.is-active {
    display: block; }

.thumbnail {
  border: solid 4px #f7f7f7;
  box-shadow: 0 0 0 1px rgba(10, 10, 10, 0.2);
  display: inline-block;
  line-height: 0;
  max-width: 100%;
  transition: box-shadow 200ms ease-out;
  border-radius: 0;
  margin-bottom: 1rem; }
  .thumbnail:hover, .thumbnail:focus {
    box-shadow: 0 0 6px 1px rgba(221, 51, 51, 0.5); }

.title-bar {
  background: #0a0a0a;
  color: #f7f7f7;
  padding: 0.5rem; }
  .title-bar::before, .title-bar::after {
    content: ' ';
    display: table; }
  .title-bar::after {
    clear: both; }
  .title-bar .menu-icon {
    margin-left: 0.25rem;
    margin-right: 0.5rem; }

.title-bar-left {
  float: left; }

.title-bar-right {
  float: right;
  text-align: right; }

.title-bar-title {
  font-weight: bold;
  vertical-align: middle;
  display: inline-block; }

.menu-icon.dark {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  cursor: pointer;
  width: 20px;
  height: 16px; }
  .menu-icon.dark::after {
    content: '';
    position: absolute;
    display: block;
    width: 100%;
    height: 2px;
    background: #0a0a0a;
    top: 0;
    left: 0;
    box-shadow: 0 7px 0 #0a0a0a, 0 14px 0 #0a0a0a; }
  .menu-icon.dark:hover::after {
    background: #8a8a8a;
    box-shadow: 0 7px 0 #8a8a8a, 0 14px 0 #8a8a8a; }

.menu-icon {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  cursor: pointer;
  width: 20px;
  height: 16px; }
  .menu-icon::after {
    content: '';
    position: absolute;
    display: block;
    width: 100%;
    height: 2px;
    background: #f7f7f7;
    top: 0;
    left: 0;
    box-shadow: 0 7px 0 #f7f7f7, 0 14px 0 #f7f7f7; }
  .menu-icon:hover::after {
    background: #DDD;
    box-shadow: 0 7px 0 #DDD, 0 14px 0 #DDD; }

.menu-icon.dark {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  cursor: pointer;
  width: 20px;
  height: 16px; }
  .menu-icon.dark::after {
    content: '';
    position: absolute;
    display: block;
    width: 100%;
    height: 2px;
    background: #0a0a0a;
    top: 0;
    left: 0;
    box-shadow: 0 7px 0 #0a0a0a, 0 14px 0 #0a0a0a; }
  .menu-icon.dark:hover::after {
    background: #8a8a8a;
    box-shadow: 0 7px 0 #8a8a8a, 0 14px 0 #8a8a8a; }

.has-tip {
  border-bottom: dotted 1px #8a8a8a;
  font-weight: bold;
  position: relative;
  display: inline-block;
  cursor: help; }

.tooltip {
  background-color: #0a0a0a;
  color: #f7f7f7;
  font-size: 80%;
  padding: 0.75rem;
  position: absolute;
  z-index: 10;
  top: calc(100% + 0.6495rem);
  max-width: 10rem !important;
  border-radius: 0; }
  .tooltip::before {
    content: '';
    display: block;
    width: 0;
    height: 0;
    border: inset 0.75rem;
    border-color: transparent transparent #0a0a0a;
    border-bottom-style: solid;
    border-top-width: 0;
    bottom: 100%;
    position: absolute;
    left: 50%;
    -ms-transform: translateX(-50%);
        transform: translateX(-50%); }
  .tooltip.top::before {
    content: '';
    display: block;
    width: 0;
    height: 0;
    border: inset 0.75rem;
    border-color: #0a0a0a transparent transparent;
    border-top-style: solid;
    border-bottom-width: 0;
    top: 100%;
    bottom: auto; }
  .tooltip.left::before {
    content: '';
    display: block;
    width: 0;
    height: 0;
    border: inset 0.75rem;
    border-color: transparent transparent transparent #0a0a0a;
    border-left-style: solid;
    border-right-width: 0;
    bottom: auto;
    left: 100%;
    top: 50%;
    -ms-transform: translateY(-50%);
        transform: translateY(-50%); }
  .tooltip.right::before {
    content: '';
    display: block;
    width: 0;
    height: 0;
    border: inset 0.75rem;
    border-color: transparent #0a0a0a transparent transparent;
    border-right-style: solid;
    border-left-width: 0;
    bottom: auto;
    left: auto;
    right: 100%;
    top: 50%;
    -ms-transform: translateY(-50%);
        transform: translateY(-50%); }

.top-bar {
  padding: 0.5rem; }
  .top-bar::before, .top-bar::after {
    content: ' ';
    display: table; }
  .top-bar::after {
    clear: both; }
  .top-bar,
  .top-bar ul {
    background-color: #0a0a0a; }
  .top-bar input {
    max-width: 200px;
    margin-right: 1rem; }
  .top-bar .input-group-field {
    width: 100%;
    margin-right: 0; }
  .top-bar input.button {
    width: auto; }
  .top-bar .top-bar-left,
  .top-bar .top-bar-right {
    width: 100%; }
  @media screen and (min-width: 40em) {
    .top-bar .top-bar-left,
    .top-bar .top-bar-right {
      width: auto; } }
  @media screen and (max-width: 63.9375em) {
    .top-bar.stacked-for-medium .top-bar-left,
    .top-bar.stacked-for-medium .top-bar-right {
      width: 100%; } }
  @media screen and (max-width: 74.9375em) {
    .top-bar.stacked-for-large .top-bar-left,
    .top-bar.stacked-for-large .top-bar-right {
      width: 100%; } }
  @media screen and (max-width: 89.9375em) {
    .top-bar.stacked-for-xlarge .top-bar-left,
    .top-bar.stacked-for-xlarge .top-bar-right {
      width: 100%; } }
  .top-bar.stacked-for-xxlarge .top-bar-left,
  .top-bar.stacked-for-xxlarge .top-bar-right {
    width: 100%; }

.top-bar-title {
  float: left;
  margin-right: 1rem; }

.top-bar-left {
  float: left; }

.top-bar-right {
  float: right; }

.slide-in-down.mui-enter {
  -ms-transform: translateY(-100%);
      transform: translateY(-100%);
  transition-property: transform, opacity;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden; }

.slide-in-down.mui-enter.mui-enter-active {
  -ms-transform: translateY(0);
      transform: translateY(0); }

.slide-in-left.mui-enter {
  -ms-transform: translateX(-100%);
      transform: translateX(-100%);
  transition-property: transform, opacity;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden; }

.slide-in-left.mui-enter.mui-enter-active {
  -ms-transform: translateX(0);
      transform: translateX(0); }

.slide-in-up.mui-enter {
  -ms-transform: translateY(100%);
      transform: translateY(100%);
  transition-property: transform, opacity;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden; }

.slide-in-up.mui-enter.mui-enter-active {
  -ms-transform: translateY(0);
      transform: translateY(0); }

.slide-in-right.mui-enter {
  -ms-transform: translateX(100%);
      transform: translateX(100%);
  transition-property: transform, opacity;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden; }

.slide-in-right.mui-enter.mui-enter-active {
  -ms-transform: translateX(0);
      transform: translateX(0); }

.slide-out-down.mui-leave {
  -ms-transform: translateY(0);
      transform: translateY(0);
  transition-property: transform, opacity;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden; }

.slide-out-down.mui-leave.mui-leave-active {
  -ms-transform: translateY(100%);
      transform: translateY(100%); }

.slide-out-right.mui-leave {
  -ms-transform: translateX(0);
      transform: translateX(0);
  transition-property: transform, opacity;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden; }

.slide-out-right.mui-leave.mui-leave-active {
  -ms-transform: translateX(100%);
      transform: translateX(100%); }

.slide-out-up.mui-leave {
  -ms-transform: translateY(0);
      transform: translateY(0);
  transition-property: transform, opacity;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden; }

.slide-out-up.mui-leave.mui-leave-active {
  -ms-transform: translateY(-100%);
      transform: translateY(-100%); }

.slide-out-left.mui-leave {
  -ms-transform: translateX(0);
      transform: translateX(0);
  transition-property: transform, opacity;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden; }

.slide-out-left.mui-leave.mui-leave-active {
  -ms-transform: translateX(-100%);
      transform: translateX(-100%); }

.fade-in.mui-enter {
  opacity: 0;
  transition-property: opacity; }

.fade-in.mui-enter.mui-enter-active {
  opacity: 1; }

.fade-out.mui-leave {
  opacity: 1;
  transition-property: opacity; }

.fade-out.mui-leave.mui-leave-active {
  opacity: 0; }

.hinge-in-from-top.mui-enter {
  transform: perspective(2000px) rotateX(-90deg);
  -ms-transform-origin: top;
      transform-origin: top;
  transition-property: transform, opacity;
  opacity: 0; }

.hinge-in-from-top.mui-enter.mui-enter-active {
  transform: perspective(2000px) rotate(0deg);
  opacity: 1; }

.hinge-in-from-right.mui-enter {
  transform: perspective(2000px) rotateY(-90deg);
  -ms-transform-origin: right;
      transform-origin: right;
  transition-property: transform, opacity;
  opacity: 0; }

.hinge-in-from-right.mui-enter.mui-enter-active {
  transform: perspective(2000px) rotate(0deg);
  opacity: 1; }

.hinge-in-from-bottom.mui-enter {
  transform: perspective(2000px) rotateX(90deg);
  -ms-transform-origin: bottom;
      transform-origin: bottom;
  transition-property: transform, opacity;
  opacity: 0; }

.hinge-in-from-bottom.mui-enter.mui-enter-active {
  transform: perspective(2000px) rotate(0deg);
  opacity: 1; }

.hinge-in-from-left.mui-enter {
  transform: perspective(2000px) rotateY(90deg);
  -ms-transform-origin: left;
      transform-origin: left;
  transition-property: transform, opacity;
  opacity: 0; }

.hinge-in-from-left.mui-enter.mui-enter-active {
  transform: perspective(2000px) rotate(0deg);
  opacity: 1; }

.hinge-in-from-middle-x.mui-enter {
  transform: perspective(2000px) rotateX(-90deg);
  -ms-transform-origin: center;
      transform-origin: center;
  transition-property: transform, opacity;
  opacity: 0; }

.hinge-in-from-middle-x.mui-enter.mui-enter-active {
  transform: perspective(2000px) rotate(0deg);
  opacity: 1; }

.hinge-in-from-middle-y.mui-enter {
  transform: perspective(2000px) rotateY(-90deg);
  -ms-transform-origin: center;
      transform-origin: center;
  transition-property: transform, opacity;
  opacity: 0; }

.hinge-in-from-middle-y.mui-enter.mui-enter-active {
  transform: perspective(2000px) rotate(0deg);
  opacity: 1; }

.hinge-out-from-top.mui-leave {
  transform: perspective(2000px) rotate(0deg);
  -ms-transform-origin: top;
      transform-origin: top;
  transition-property: transform, opacity;
  opacity: 1; }

.hinge-out-from-top.mui-leave.mui-leave-active {
  transform: perspective(2000px) rotateX(-90deg);
  opacity: 0; }

.hinge-out-from-right.mui-leave {
  transform: perspective(2000px) rotate(0deg);
  -ms-transform-origin: right;
      transform-origin: right;
  transition-property: transform, opacity;
  opacity: 1; }

.hinge-out-from-right.mui-leave.mui-leave-active {
  transform: perspective(2000px) rotateY(-90deg);
  opacity: 0; }

.hinge-out-from-bottom.mui-leave {
  transform: perspective(2000px) rotate(0deg);
  -ms-transform-origin: bottom;
      transform-origin: bottom;
  transition-property: transform, opacity;
  opacity: 1; }

.hinge-out-from-bottom.mui-leave.mui-leave-active {
  transform: perspective(2000px) rotateX(90deg);
  opacity: 0; }

.hinge-out-from-left.mui-leave {
  transform: perspective(2000px) rotate(0deg);
  -ms-transform-origin: left;
      transform-origin: left;
  transition-property: transform, opacity;
  opacity: 1; }

.hinge-out-from-left.mui-leave.mui-leave-active {
  transform: perspective(2000px) rotateY(90deg);
  opacity: 0; }

.hinge-out-from-middle-x.mui-leave {
  transform: perspective(2000px) rotate(0deg);
  -ms-transform-origin: center;
      transform-origin: center;
  transition-property: transform, opacity;
  opacity: 1; }

.hinge-out-from-middle-x.mui-leave.mui-leave-active {
  transform: perspective(2000px) rotateX(-90deg);
  opacity: 0; }

.hinge-out-from-middle-y.mui-leave {
  transform: perspective(2000px) rotate(0deg);
  -ms-transform-origin: center;
      transform-origin: center;
  transition-property: transform, opacity;
  opacity: 1; }

.hinge-out-from-middle-y.mui-leave.mui-leave-active {
  transform: perspective(2000px) rotateY(-90deg);
  opacity: 0; }

.scale-in-up.mui-enter {
  -ms-transform: scale(0.5);
      transform: scale(0.5);
  transition-property: transform, opacity;
  opacity: 0; }

.scale-in-up.mui-enter.mui-enter-active {
  -ms-transform: scale(1);
      transform: scale(1);
  opacity: 1; }

.scale-in-down.mui-enter {
  -ms-transform: scale(1.5);
      transform: scale(1.5);
  transition-property: transform, opacity;
  opacity: 0; }

.scale-in-down.mui-enter.mui-enter-active {
  -ms-transform: scale(1);
      transform: scale(1);
  opacity: 1; }

.scale-out-up.mui-leave {
  -ms-transform: scale(1);
      transform: scale(1);
  transition-property: transform, opacity;
  opacity: 1; }

.scale-out-up.mui-leave.mui-leave-active {
  -ms-transform: scale(1.5);
      transform: scale(1.5);
  opacity: 0; }

.scale-out-down.mui-leave {
  -ms-transform: scale(1);
      transform: scale(1);
  transition-property: transform, opacity;
  opacity: 1; }

.scale-out-down.mui-leave.mui-leave-active {
  -ms-transform: scale(0.5);
      transform: scale(0.5);
  opacity: 0; }

.spin-in.mui-enter {
  -ms-transform: rotate(-0.75turn);
      transform: rotate(-0.75turn);
  transition-property: transform, opacity;
  opacity: 0; }

.spin-in.mui-enter.mui-enter-active {
  -ms-transform: rotate(0);
      transform: rotate(0);
  opacity: 1; }

.spin-out.mui-leave {
  -ms-transform: rotate(0);
      transform: rotate(0);
  transition-property: transform, opacity;
  opacity: 1; }

.spin-out.mui-leave.mui-leave-active {
  -ms-transform: rotate(0.75turn);
      transform: rotate(0.75turn);
  opacity: 0; }

.spin-in-ccw.mui-enter {
  -ms-transform: rotate(0.75turn);
      transform: rotate(0.75turn);
  transition-property: transform, opacity;
  opacity: 0; }

.spin-in-ccw.mui-enter.mui-enter-active {
  -ms-transform: rotate(0);
      transform: rotate(0);
  opacity: 1; }

.spin-out-ccw.mui-leave {
  -ms-transform: rotate(0);
      transform: rotate(0);
  transition-property: transform, opacity;
  opacity: 1; }

.spin-out-ccw.mui-leave.mui-leave-active {
  -ms-transform: rotate(-0.75turn);
      transform: rotate(-0.75turn);
  opacity: 0; }

.slow {
  transition-duration: 750ms !important; }

.fast {
  transition-duration: 250ms !important; }

.linear {
  transition-timing-function: linear !important; }

.ease {
  transition-timing-function: ease !important; }

.ease-in {
  transition-timing-function: ease-in !important; }

.ease-out {
  transition-timing-function: ease-out !important; }

.ease-in-out {
  transition-timing-function: ease-in-out !important; }

.bounce-in {
  transition-timing-function: cubic-bezier(0.485, 0.155, 0.24, 1.245) !important; }

.bounce-out {
  transition-timing-function: cubic-bezier(0.485, 0.155, 0.515, 0.845) !important; }

.bounce-in-out {
  transition-timing-function: cubic-bezier(0.76, -0.245, 0.24, 1.245) !important; }

.short-delay {
  transition-delay: 300ms !important; }

.long-delay {
  transition-delay: 700ms !important; }

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

@keyframes shake-7 {
  0%, 10%, 20%, 30%, 40%, 50%, 60%, 70%, 80%, 90% {
    transform: translateX(7%); }
  5%, 15%, 25%, 35%, 45%, 55%, 65%, 75%, 85%, 95% {
    transform: translateX(-7%); } }

.spin-cw {
  animation-name: spin-cw-1turn; }

@keyframes spin-cw-1turn {
  0% {
    transform: rotate(-1turn); }
  100% {
    transform: rotate(0); } }

.spin-ccw {
  animation-name: spin-cw-1turn; }

@keyframes spin-cw-1turn {
  0% {
    transform: rotate(0); }
  100% {
    transform: rotate(1turn); } }

.wiggle {
  animation-name: wiggle-7deg; }

@keyframes wiggle-7deg {
  40%, 50%, 60% {
    transform: rotate(7deg); }
  35%, 45%, 55%, 65% {
    transform: rotate(-7deg); }
  0%, 30%, 70%, 100% {
    transform: rotate(0); } }

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

.slow {
  animation-duration: 750ms !important; }

.fast {
  animation-duration: 250ms !important; }

.linear {
  animation-timing-function: linear !important; }

.ease {
  animation-timing-function: ease !important; }

.ease-in {
  animation-timing-function: ease-in !important; }

.ease-out {
  animation-timing-function: ease-out !important; }

.ease-in-out {
  animation-timing-function: ease-in-out !important; }

.bounce-in {
  animation-timing-function: cubic-bezier(0.485, 0.155, 0.24, 1.245) !important; }

.bounce-out {
  animation-timing-function: cubic-bezier(0.485, 0.155, 0.515, 0.845) !important; }

.bounce-in-out {
  animation-timing-function: cubic-bezier(0.76, -0.245, 0.24, 1.245) !important; }

.short-delay {
  animation-delay: 300ms !important; }

.long-delay {
  animation-delay: 700ms !important; }

/*
 * Add some rules to multiply a size (using EM), default is
 * for 'font-size' property
 *
 * Using:
 *
 *     .foo{
 *         @include font-multiplier(2 4 6);
 *     }
 *
 * Will produce something like:
 *
 *    .foo.2x{ font-size: 2em }
 *    .foo.4x{ font-size: 4em }
 *    .foo.4x{ font-size: 6em }
 *
 * Using all optional arguments:
 *
 *     .foo{
 *         @include font-multiplier(2 4 6, $selector-prefix: "icon", $selector-pseudo: "before", $property: "padding-left");
 *     }
 *
 * Will produce something like:
 *
 *    .foo.icon-2x::before{ padding-left: 2em }
 *    .foo.icon-4x::before{ padding-left: 4em }
 *    .foo.icon-4x::before{ padding-left: 6em }
 *
 */
/*
 * Mixin to add font and background colors into a container and enforce these
 * colors on its elements
 */
/*
 * Vendor prefix for last break-inside syntax (not supported in Compass 0.x)
 */
/*
 * Create flex cell width rules
 */
/*
 * Mixin to create cells widths with flexbox
 *
 * Will produce responsive class like:
 *
 *   .small-50{...}
 *   .medium-50{...}
 *   etc..
 *
 * Depending on mixin declarations.
 *
 * Usable in conjunction with ".cell".
 */
/*
 * Mixin to create flexbox display classes
 *
 * Will produce global and responsive classes like:
 *
 *   .flex{...}
 *   .flex-small{...}
 *   .flex-medium{...}
 *   etc..
 *
 */
/*
 * Mixin to create "simple" cells widths
 * Mixin to simulate inline list, used as a fallback
 *
 * Reproduce the same name pattern as in mixin "-emencia-flex-grid-classes"
 */
/*
 * Inline list with flexbox
 */
html .flex {
  display: -ms-flexbox;
  display: flex; }

@media screen {
  html .flex-small {
    display: -ms-flexbox;
    display: flex; } }

@media screen and (min-width: 40em) {
  html .flex-medium {
    display: -ms-flexbox;
    display: flex; } }

@media screen and (min-width: 64em) {
  html .flex-large {
    display: -ms-flexbox;
    display: flex; } }

@media screen and (min-width: 75em) {
  html .flex-xlarge {
    display: -ms-flexbox;
    display: flex; } }

@media screen and (min-width: 90em) {
  html .flex-xxlarge {
    display: -ms-flexbox;
    display: flex; } }

html .flex-grid {
  display: -ms-flexbox;
  display: flex;
  margin-left: 0;
  margin-right: 0;
  /*
     * Responsive cell sizes
     */
  /*
     * Responsive padding in all contained cells
     */
  /*
     * Responsive margin on all contained cells
     */ }
  html .flex-grid > .cell {
    -ms-flex: 1 0 auto;
        flex: 1 0 auto;
    max-width: auto;
    margin: 0;
    list-style-type: none;
    /*
       * Some cell contents alignments
       */ }
    html .flex-grid > .cell > p:last-child {
      margin: 0; }
    html .flex-grid > .cell.flex-vertical-start-stack {
      display: -ms-flexbox;
      display: flex;
      -ms-flex-direction: column;
          flex-direction: column;
      -ms-flex-pack: start;
          justify-content: flex-start; }
    html .flex-grid > .cell.flex-vertical-end-stack {
      display: -ms-flexbox;
      display: flex;
      -ms-flex-direction: column;
          flex-direction: column;
      -ms-flex-pack: flex-en;
          justify-content: flex-en; }
    html .flex-grid > .cell.flex-vertical-center-stack {
      display: -ms-flexbox;
      display: flex;
      -ms-flex-direction: column;
          flex-direction: column;
      -ms-flex-pack: center;
          justify-content: center; }
    html .flex-grid > .cell.flex-space-around-stack {
      display: -ms-flexbox;
      display: flex;
      -ms-flex-direction: column;
          flex-direction: column;
      -ms-flex-pack: distribute;
          justify-content: space-around; }
    html .flex-grid > .cell.flex-space-between-stack {
      display: -ms-flexbox;
      display: flex;
      -ms-flex-direction: column;
          flex-direction: column;
      -ms-flex-pack: justify;
          justify-content: space-between; }
  @media screen {
    html .flex-grid > .small-23 {
      -ms-flex: 1 0 23%;
          flex: 1 0 23%;
      max-width: 23%; }
    html .flex-grid > .small-25 {
      -ms-flex: 1 0 25%;
          flex: 1 0 25%;
      max-width: 25%; }
    html .flex-grid > .small-31 {
      -ms-flex: 1 0 31.3333%;
          flex: 1 0 31.3333%;
      max-width: 31.3333%; }
    html .flex-grid > .small-33 {
      -ms-flex: 1 0 33.3333%;
          flex: 1 0 33.3333%;
      max-width: 33.3333%; }
    html .flex-grid > .small-48 {
      -ms-flex: 1 0 48%;
          flex: 1 0 48%;
      max-width: 48%; }
    html .flex-grid > .small-50 {
      -ms-flex: 1 0 50%;
          flex: 1 0 50%;
      max-width: 50%; }
    html .flex-grid > .small-73 {
      -ms-flex: 1 0 73%;
          flex: 1 0 73%;
      max-width: 73%; }
    html .flex-grid > .small-75 {
      -ms-flex: 1 0 75%;
          flex: 1 0 75%;
      max-width: 75%; }
    html .flex-grid > .small-98 {
      -ms-flex: 1 0 98%;
          flex: 1 0 98%;
      max-width: 98%; }
    html .flex-grid > .small-100 {
      -ms-flex: 1 0 100%;
          flex: 1 0 100%;
      max-width: 100%; } }
  @media screen and (min-width: 40em) {
    html .flex-grid > .medium-23 {
      -ms-flex: 1 0 23%;
          flex: 1 0 23%;
      max-width: 23%; }
    html .flex-grid > .medium-25 {
      -ms-flex: 1 0 25%;
          flex: 1 0 25%;
      max-width: 25%; }
    html .flex-grid > .medium-31 {
      -ms-flex: 1 0 31.3333%;
          flex: 1 0 31.3333%;
      max-width: 31.3333%; }
    html .flex-grid > .medium-33 {
      -ms-flex: 1 0 33.3333%;
          flex: 1 0 33.3333%;
      max-width: 33.3333%; }
    html .flex-grid > .medium-48 {
      -ms-flex: 1 0 48%;
          flex: 1 0 48%;
      max-width: 48%; }
    html .flex-grid > .medium-50 {
      -ms-flex: 1 0 50%;
          flex: 1 0 50%;
      max-width: 50%; }
    html .flex-grid > .medium-73 {
      -ms-flex: 1 0 73%;
          flex: 1 0 73%;
      max-width: 73%; }
    html .flex-grid > .medium-75 {
      -ms-flex: 1 0 75%;
          flex: 1 0 75%;
      max-width: 75%; }
    html .flex-grid > .medium-98 {
      -ms-flex: 1 0 98%;
          flex: 1 0 98%;
      max-width: 98%; }
    html .flex-grid > .medium-100 {
      -ms-flex: 1 0 100%;
          flex: 1 0 100%;
      max-width: 100%; } }
  @media screen and (min-width: 64em) {
    html .flex-grid > .large-23 {
      -ms-flex: 1 0 23%;
          flex: 1 0 23%;
      max-width: 23%; }
    html .flex-grid > .large-25 {
      -ms-flex: 1 0 25%;
          flex: 1 0 25%;
      max-width: 25%; }
    html .flex-grid > .large-31 {
      -ms-flex: 1 0 31.3333%;
          flex: 1 0 31.3333%;
      max-width: 31.3333%; }
    html .flex-grid > .large-33 {
      -ms-flex: 1 0 33.3333%;
          flex: 1 0 33.3333%;
      max-width: 33.3333%; }
    html .flex-grid > .large-48 {
      -ms-flex: 1 0 48%;
          flex: 1 0 48%;
      max-width: 48%; }
    html .flex-grid > .large-50 {
      -ms-flex: 1 0 50%;
          flex: 1 0 50%;
      max-width: 50%; }
    html .flex-grid > .large-73 {
      -ms-flex: 1 0 73%;
          flex: 1 0 73%;
      max-width: 73%; }
    html .flex-grid > .large-75 {
      -ms-flex: 1 0 75%;
          flex: 1 0 75%;
      max-width: 75%; }
    html .flex-grid > .large-98 {
      -ms-flex: 1 0 98%;
          flex: 1 0 98%;
      max-width: 98%; }
    html .flex-grid > .large-100 {
      -ms-flex: 1 0 100%;
          flex: 1 0 100%;
      max-width: 100%; } }
  @media screen and (min-width: 75em) {
    html .flex-grid > .xlarge-23 {
      -ms-flex: 1 0 23%;
          flex: 1 0 23%;
      max-width: 23%; }
    html .flex-grid > .xlarge-25 {
      -ms-flex: 1 0 25%;
          flex: 1 0 25%;
      max-width: 25%; }
    html .flex-grid > .xlarge-31 {
      -ms-flex: 1 0 31.3333%;
          flex: 1 0 31.3333%;
      max-width: 31.3333%; }
    html .flex-grid > .xlarge-33 {
      -ms-flex: 1 0 33.3333%;
          flex: 1 0 33.3333%;
      max-width: 33.3333%; }
    html .flex-grid > .xlarge-48 {
      -ms-flex: 1 0 48%;
          flex: 1 0 48%;
      max-width: 48%; }
    html .flex-grid > .xlarge-50 {
      -ms-flex: 1 0 50%;
          flex: 1 0 50%;
      max-width: 50%; }
    html .flex-grid > .xlarge-73 {
      -ms-flex: 1 0 73%;
          flex: 1 0 73%;
      max-width: 73%; }
    html .flex-grid > .xlarge-75 {
      -ms-flex: 1 0 75%;
          flex: 1 0 75%;
      max-width: 75%; }
    html .flex-grid > .xlarge-98 {
      -ms-flex: 1 0 98%;
          flex: 1 0 98%;
      max-width: 98%; }
    html .flex-grid > .xlarge-100 {
      -ms-flex: 1 0 100%;
          flex: 1 0 100%;
      max-width: 100%; } }
  @media screen and (min-width: 90em) {
    html .flex-grid > .xxlarge-23 {
      -ms-flex: 1 0 23%;
          flex: 1 0 23%;
      max-width: 23%; }
    html .flex-grid > .xxlarge-25 {
      -ms-flex: 1 0 25%;
          flex: 1 0 25%;
      max-width: 25%; }
    html .flex-grid > .xxlarge-31 {
      -ms-flex: 1 0 31.3333%;
          flex: 1 0 31.3333%;
      max-width: 31.3333%; }
    html .flex-grid > .xxlarge-33 {
      -ms-flex: 1 0 33.3333%;
          flex: 1 0 33.3333%;
      max-width: 33.3333%; }
    html .flex-grid > .xxlarge-48 {
      -ms-flex: 1 0 48%;
          flex: 1 0 48%;
      max-width: 48%; }
    html .flex-grid > .xxlarge-50 {
      -ms-flex: 1 0 50%;
          flex: 1 0 50%;
      max-width: 50%; }
    html .flex-grid > .xxlarge-73 {
      -ms-flex: 1 0 73%;
          flex: 1 0 73%;
      max-width: 73%; }
    html .flex-grid > .xxlarge-75 {
      -ms-flex: 1 0 75%;
          flex: 1 0 75%;
      max-width: 75%; }
    html .flex-grid > .xxlarge-98 {
      -ms-flex: 1 0 98%;
          flex: 1 0 98%;
      max-width: 98%; }
    html .flex-grid > .xxlarge-100 {
      -ms-flex: 1 0 100%;
          flex: 1 0 100%;
      max-width: 100%; } }
  html .flex-grid.padded .cell {
    padding: 0 1%; }
  @media screen {
    html .flex-grid.small-padded .cell {
      padding: 0 1%; } }
  @media screen and (min-width: 40em) {
    html .flex-grid.medium-padded .cell {
      padding: 0 1%; } }
  @media screen and (min-width: 64em) {
    html .flex-grid.large-padded .cell {
      padding: 0 1%; } }
  @media screen and (min-width: 75em) {
    html .flex-grid.xlarge-padded .cell {
      padding: 0 1%; } }
  @media screen and (min-width: 90em) {
    html .flex-grid.xxlarge-padded .cell {
      padding: 0 1%; } }
  html .flex-grid.marged .cell {
    margin: 0 1%; }
  @media screen {
    html .flex-grid.small-marged .cell {
      margin: 0 1%; } }
  @media screen and (min-width: 40em) {
    html .flex-grid.medium-marged .cell {
      margin: 0 1%; } }
  @media screen and (min-width: 64em) {
    html .flex-grid.large-marged .cell {
      margin: 0 1%; } }
  @media screen and (min-width: 75em) {
    html .flex-grid.xlarge-marged .cell {
      margin: 0 1%; } }
  @media screen and (min-width: 90em) {
    html .flex-grid.xxlarge-marged .cell {
      margin: 0 1%; } }

/*
 * Various stuff that don't fit elsewhere
 */
/*
 * Some styling for this JS component stuff (read more on 'js/jquery/addons.js')
 */
#watch-for-current-mquery {
  padding: 0.0rem 0.5rem;
  position: absolute;
  top: 10px;
  right: 35px;
  font-size: 14px;
  font-weight: bold;
  line-height: 1.4;
  text-align: center;
  text-transform: uppercase;
  border: 2px solid #dd3333;
  z-index: 9000; }
  #watch-for-current-mquery small {
    display: block; }

.relative-position {
  position: relative; }

.unmarged {
  margin: 0 !important; }

.unpad {
  padding: 0 !important; }

.minimize {
  text-transform: inherit; }
  .minimize:first-letter {
    text-transform: uppercase; }

.divider:not(li) {
  margin-bottom: 2rem !important; }
  .divider:not(li).tiny-divide {
    margin-bottom: 1rem !important; }
  .divider:not(li).big-divide {
    margin-bottom: 3rem !important; }

/* Vertical spaces */
.vertmarge {
  margin-top: 1rem;
  margin-top: 1rem; }

.vertspace {
  padding-bottom: 1rem;
  padding-top: 1rem; }

.vertspaceX2 {
  padding-bottom: 2rem;
  padding-top: 2rem; }

.vertspaceTopX2 {
  padding-top: 2rem; }

.vertspaceX3 {
  padding-bottom: 3rem;
  padding-top: 3rem; }

.sizeX2 {
  font-size: 2rem;
  font-weight: 300;
  line-height: 2.4rem; }
  .sizeX2 strong {
    font-weight: 400; }

/*
 * Vertical spaces around element
 */
.space-around {
  padding: .7rem 0; }
  @media screen and (min-width: 40em) {
    .space-around {
      padding: 1.2rem 0; } }
  @media screen and (min-width: 64em) {
    .space-around {
      padding: 1.5rem 0; } }
  @media screen and (min-width: 75em) {
    .space-around {
      padding: 2rem 0; } }
  .space-around.tiny-space {
    padding: 0.75rem 0; }
    @media screen and (min-width: 40em) {
      .space-around.tiny-space {
        padding: 1rem 0; } }
  .space-around.medium-space {
    padding: 1rem 0; }
    @media screen and (min-width: 40em) {
      .space-around.medium-space {
        padding: 1.5rem 0; } }
  .space-around.wide-space {
    padding: 1.5rem 0; }
    @media screen and (min-width: 40em) {
      .space-around.wide-space {
        padding: 2.5rem 0; } }
    @media screen and (min-width: 64em) {
      .space-around.wide-space {
        padding: 4rem 0; } }
  .space-around.top-only {
    padding-bottom: 0; }
  .space-around.bottom-only {
    padding-top: 0; }

.bottom-triangle {
  position: relative; }
  .bottom-triangle:after {
    content: "";
    position: absolute;
    bottom: -1.25rem;
    left: 50%;
    -ms-transform: translate(-50%, 0%);
    transform: translate(-50%, 0%);
    width: 0;
    height: 0;
    border-left: 1.25rem solid transparent;
    border-right: 1.25rem solid transparent;
    border-top: 1.25rem solid #0a0a0a; }

.more {
  text-align: center; }
  .more a {
    text-transform: uppercase;
    padding: 10px 30px;
    font-weight: 700;
    font-size: 12px; }
  .more button, .more .button {
    background-color: rgba(0, 0, 0, 0);
    border-style: solid;
    border-width: 1px;
    border-radius: 5px; }

/*
 * Cardbox, like a panel but with high visual title
 */
.cardbox.marged {
  margin-top: 1em !important;
  margin-bottom: 1em !important; }
  @media screen and (min-width: 40em) {
    .cardbox.marged {
      margin-top: 1.5em !important;
      margin-bottom: 2em !important; } }
  @media screen and (min-width: 64em) {
    .cardbox.marged {
      margin-top: 2em !important;
      margin-bottom: 3em !important; } }

.cardbox .head,
.cardbox .content {
  padding: 0.75rem 1.5rem; }

.cardbox .head {
  margin-bottom: 1px; }
  .cardbox .head p {
    margin: 0; }

.cardbox .content {
  padding-top: 1.5rem;
  padding-bottom: 1.5rem; }
  .cardbox .content a:not(.button) {
    color: inherit;
    text-decoration: underline; }

#headpage {
  position: relative;
  float: left;
  width: 100%; }
  #headpage:before {
    white-space: nowrap;
    position: absolute;
    content: attr(data-title);
    font-size: 12rem;
    top: -8rem;
    left: 23rem;
    z-index: -1;
    opacity: 0.075;
    text-transform: uppercase;
    font-weight: 600;
    max-width: calc(100vw - 16px - 23rem);
    overflow: hidden;
    display: block; }
  #headpage:after {
    content: '';
    font-size: 14rem;
    position: absolute;
    top: -10rem;
    left: 8.5rem;
    z-index: -1;
    opacity: 0.075;
    font-family: icomoon; }
  #headpage.expositions_ico:after {
    content: ''; }
  #headpage.visites_ico:after {
    content: ''; }
  #headpage.collections_ico:after {
    content: ''; }
  #headpage.reperes_ico:after {
    content: ''; }
  #headpage.outils_ico:after {
    content: ''; }

/*leftFlag %*/
@media screen and (min-width: 75em) {
  .leftFlag:before {
    position: fixed;
    top: 250px;
    left: 0;
    content: url("/static/images/theme/leftFlag.png");
    z-index: -1; } }

.is-accordion-submenu-parent:after {
  content: '';
  display: block;
  width: 0;
  height: 0;
  border: inset 5px;
  border-color: #dd3333 transparent transparent;
  border-top-style: solid;
  border-bottom-width: 0;
  right: 5px;
  margin-top: -2rem;
  float: right; }

.bighr {
  border-width: 6px;
  border-color: #E0E0E0;
  margin-left: 0;
  margin-right: 0;
  max-width: none; }

.panel {
  border-radius: 2px;
  float: left;
  width: 100%; }

/*Fonts library*/
/*Fonts library*/
@font-face {
  font-family: 'icomoon';
  src: url("../fonts/icomoon.eot?7qqjds");
  src: url("../fonts/icomoon.eot?7qqjds#iefix") format("embedded-opentype"), url("../fonts/icomoon.woff2?7qqj2s") format("woff2"), url("../fonts/icomoon.ttf?7qqj2s") format("truetype"), url("../fonts/icomoon.woff?7qqj2s") format("woff"), url("../fonts/icomoon.svg?7qqj2s#icomoon") format("svg");
  font-weight: 400;
  font-style: normal; }

/*
 * Default usage, for self closed element like in <i class=".."></i>
 */
.iconcont, .slick-prev, .slick-next, [class^="icon-"]:not(p):not(div):not(h1):not(.title-1):not(
h2):not(
.title-2):not(
h3):not(
.h3):not(
.title-3):not(
h4):not(
.title-4),
[class*=" icon-"]:not(p):not(div):not(h1):not(.title-1):not(
h2):not(
.title-2):not(
h3):not(
.h3):not(
.title-3):not(
h4):not(
.title-4), [class^="icon-"]:before, [class*=" icon-"]:before {
  font-family: 'icomoon';
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }
  .iconcont.icon-2x, .icon-2x.slick-prev, .icon-2x.slick-next, [class^="icon-"]:not(p):not(div):not(h1):not(.title-1):not(
  h2):not(
  .title-2):not(
  h3):not(
  .h3):not(
  .title-3):not(
  h4):not(
  .title-4).icon-2x,
  [class*=" icon-"]:not(p):not(div):not(h1):not(.title-1):not(
  h2):not(
  .title-2):not(
  h3):not(
  .h3):not(
  .title-3):not(
  h4):not(
  .title-4).icon-2x, [class^="icon-"]:before.icon-2x, [class*=" icon-"]:before.icon-2x {
    font-size: 2rem; }
  .iconcont.icon-3x, .icon-3x.slick-prev, .icon-3x.slick-next, [class^="icon-"]:not(p):not(div):not(h1):not(.title-1):not(
  h2):not(
  .title-2):not(
  h3):not(
  .h3):not(
  .title-3):not(
  h4):not(
  .title-4).icon-3x,
  [class*=" icon-"]:not(p):not(div):not(h1):not(.title-1):not(
  h2):not(
  .title-2):not(
  h3):not(
  .h3):not(
  .title-3):not(
  h4):not(
  .title-4).icon-3x, [class^="icon-"]:before.icon-3x, [class*=" icon-"]:before.icon-3x {
    font-size: 3rem; }
  .iconcont.icon-4x, .icon-4x.slick-prev, .icon-4x.slick-next, [class^="icon-"]:not(p):not(div):not(h1):not(.title-1):not(
  h2):not(
  .title-2):not(
  h3):not(
  .h3):not(
  .title-3):not(
  h4):not(
  .title-4).icon-4x,
  [class*=" icon-"]:not(p):not(div):not(h1):not(.title-1):not(
  h2):not(
  .title-2):not(
  h3):not(
  .h3):not(
  .title-3):not(
  h4):not(
  .title-4).icon-4x, [class^="icon-"]:before.icon-4x, [class*=" icon-"]:before.icon-4x {
    font-size: 4rem; }
  .iconcont.icon-5x, .icon-5x.slick-prev, .icon-5x.slick-next, [class^="icon-"]:not(p):not(div):not(h1):not(.title-1):not(
  h2):not(
  .title-2):not(
  h3):not(
  .h3):not(
  .title-3):not(
  h4):not(
  .title-4).icon-5x,
  [class*=" icon-"]:not(p):not(div):not(h1):not(.title-1):not(
  h2):not(
  .title-2):not(
  h3):not(
  .h3):not(
  .title-3):not(
  h4):not(
  .title-4).icon-5x, [class^="icon-"]:before.icon-5x, [class*=" icon-"]:before.icon-5x {
    font-size: 5rem; }
  .iconcont.icon-block, .icon-block.slick-prev, .icon-block.slick-next, [class^="icon-"]:not(p):not(div):not(h1):not(.title-1):not(
  h2):not(
  .title-2):not(
  h3):not(
  .h3):not(
  .title-3):not(
  h4):not(
  .title-4).icon-block,
  [class*=" icon-"]:not(p):not(div):not(h1):not(.title-1):not(
  h2):not(
  .title-2):not(
  h3):not(
  .h3):not(
  .title-3):not(
  h4):not(
  .title-4).icon-block, [class^="icon-"]:before.icon-block, [class*=" icon-"]:before.icon-block {
    display: block; }

/*
 * Icon insert in a container
 *
 * Contrary to the default selector, this does not perturb container
 * elements font, so it's safe to have text in container
 */
p[class^="icon-"]:before, p[class*=" icon-"]:before, div[class^="icon-"]:before, div[class*=" icon-"]:before, h1[class^="icon-"]:before, .title-1[class^="icon-"]:before, h1[class*=" icon-"]:before, .title-1[class*=" icon-"]:before, h2[class^="icon-"]:before, .rst h1[class^="icon-"]:before, .rst .title-1[class^="icon-"]:before, .title-2[class^="icon-"]:before, h2[class*=" icon-"]:before, .rst h1[class*=" icon-"]:before, .rst .title-1[class*=" icon-"]:before, .title-2[class*=" icon-"]:before, h3[class^="icon-"]:before, .h3[class^="icon-"]:before, .rst h2[class^="icon-"]:before, .rst h1[class^="icon-"]:before, .rst .title-1[class^="icon-"]:before, .rst .title-2[class^="icon-"]:before, .title-3[class^="icon-"]:before, h3[class*=" icon-"]:before, .h3[class*=" icon-"]:before, .rst h2[class*=" icon-"]:before, .rst h1[class*=" icon-"]:before, .rst .title-1[class*=" icon-"]:before, .rst .title-2[class*=" icon-"]:before, .title-3[class*=" icon-"]:before, h4[class^="icon-"]:before, .rst h3[class^="icon-"]:before, .rst .h3[class^="icon-"]:before, .rst h2[class^="icon-"]:before, .rst h1[class^="icon-"]:before, .rst .title-1[class^="icon-"]:before, .rst .title-2[class^="icon-"]:before, .rst .title-3[class^="icon-"]:before, .title-4[class^="icon-"]:before, h4[class*=" icon-"]:before, .rst h3[class*=" icon-"]:before, .rst .h3[class*=" icon-"]:before, .rst h2[class*=" icon-"]:before, .rst h1[class*=" icon-"]:before, .rst .title-1[class*=" icon-"]:before, .rst .title-2[class*=" icon-"]:before, .rst .title-3[class*=" icon-"]:before, .title-4[class*=" icon-"]:before, *[class^="icon-"]:before, *[class*=" icon-"]:before {
  font-family: 'icomoon';
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

p[class^="icon-"].icon-2x::before, p[class*=" icon-"].icon-2x::before, div[class^="icon-"].icon-2x::before, div[class*=" icon-"].icon-2x::before, h1[class^="icon-"].icon-2x::before, .title-1[class^="icon-"].icon-2x::before, h1[class*=" icon-"].icon-2x::before, .title-1[class*=" icon-"].icon-2x::before, h2[class^="icon-"].icon-2x::before, .rst h1[class^="icon-"].icon-2x::before, .rst .title-1[class^="icon-"].icon-2x::before, .title-2[class^="icon-"].icon-2x::before, h2[class*=" icon-"].icon-2x::before, .rst h1[class*=" icon-"].icon-2x::before, .rst .title-1[class*=" icon-"].icon-2x::before, .title-2[class*=" icon-"].icon-2x::before, h3[class^="icon-"].icon-2x::before, .h3[class^="icon-"].icon-2x::before, .rst h2[class^="icon-"].icon-2x::before, .rst h1[class^="icon-"].icon-2x::before, .rst .title-1[class^="icon-"].icon-2x::before, .rst .title-2[class^="icon-"].icon-2x::before, .title-3[class^="icon-"].icon-2x::before, h3[class*=" icon-"].icon-2x::before, .h3[class*=" icon-"].icon-2x::before, .rst h2[class*=" icon-"].icon-2x::before, .rst h1[class*=" icon-"].icon-2x::before, .rst .title-1[class*=" icon-"].icon-2x::before, .rst .title-2[class*=" icon-"].icon-2x::before, .title-3[class*=" icon-"].icon-2x::before, h4[class^="icon-"].icon-2x::before, .rst h3[class^="icon-"].icon-2x::before, .rst .h3[class^="icon-"].icon-2x::before, .rst h2[class^="icon-"].icon-2x::before, .rst h1[class^="icon-"].icon-2x::before, .rst .title-1[class^="icon-"].icon-2x::before, .rst .title-2[class^="icon-"].icon-2x::before, .rst .title-3[class^="icon-"].icon-2x::before, .title-4[class^="icon-"].icon-2x::before, h4[class*=" icon-"].icon-2x::before, .rst h3[class*=" icon-"].icon-2x::before, .rst .h3[class*=" icon-"].icon-2x::before, .rst h2[class*=" icon-"].icon-2x::before, .rst h1[class*=" icon-"].icon-2x::before, .rst .title-1[class*=" icon-"].icon-2x::before, .rst .title-2[class*=" icon-"].icon-2x::before, .rst .title-3[class*=" icon-"].icon-2x::before, .title-4[class*=" icon-"].icon-2x::before, *[class^="icon-"].icon-2x::before, *[class*=" icon-"].icon-2x::before {
  font-size: 2rem; }

p[class^="icon-"].icon-3x::before, p[class*=" icon-"].icon-3x::before, div[class^="icon-"].icon-3x::before, div[class*=" icon-"].icon-3x::before, h1[class^="icon-"].icon-3x::before, .title-1[class^="icon-"].icon-3x::before, h1[class*=" icon-"].icon-3x::before, .title-1[class*=" icon-"].icon-3x::before, h2[class^="icon-"].icon-3x::before, .rst h1[class^="icon-"].icon-3x::before, .rst .title-1[class^="icon-"].icon-3x::before, .title-2[class^="icon-"].icon-3x::before, h2[class*=" icon-"].icon-3x::before, .rst h1[class*=" icon-"].icon-3x::before, .rst .title-1[class*=" icon-"].icon-3x::before, .title-2[class*=" icon-"].icon-3x::before, h3[class^="icon-"].icon-3x::before, .h3[class^="icon-"].icon-3x::before, .rst h2[class^="icon-"].icon-3x::before, .rst h1[class^="icon-"].icon-3x::before, .rst .title-1[class^="icon-"].icon-3x::before, .rst .title-2[class^="icon-"].icon-3x::before, .title-3[class^="icon-"].icon-3x::before, h3[class*=" icon-"].icon-3x::before, .h3[class*=" icon-"].icon-3x::before, .rst h2[class*=" icon-"].icon-3x::before, .rst h1[class*=" icon-"].icon-3x::before, .rst .title-1[class*=" icon-"].icon-3x::before, .rst .title-2[class*=" icon-"].icon-3x::before, .title-3[class*=" icon-"].icon-3x::before, h4[class^="icon-"].icon-3x::before, .rst h3[class^="icon-"].icon-3x::before, .rst .h3[class^="icon-"].icon-3x::before, .rst h2[class^="icon-"].icon-3x::before, .rst h1[class^="icon-"].icon-3x::before, .rst .title-1[class^="icon-"].icon-3x::before, .rst .title-2[class^="icon-"].icon-3x::before, .rst .title-3[class^="icon-"].icon-3x::before, .title-4[class^="icon-"].icon-3x::before, h4[class*=" icon-"].icon-3x::before, .rst h3[class*=" icon-"].icon-3x::before, .rst .h3[class*=" icon-"].icon-3x::before, .rst h2[class*=" icon-"].icon-3x::before, .rst h1[class*=" icon-"].icon-3x::before, .rst .title-1[class*=" icon-"].icon-3x::before, .rst .title-2[class*=" icon-"].icon-3x::before, .rst .title-3[class*=" icon-"].icon-3x::before, .title-4[class*=" icon-"].icon-3x::before, *[class^="icon-"].icon-3x::before, *[class*=" icon-"].icon-3x::before {
  font-size: 3rem; }

p[class^="icon-"].icon-4x::before, p[class*=" icon-"].icon-4x::before, div[class^="icon-"].icon-4x::before, div[class*=" icon-"].icon-4x::before, h1[class^="icon-"].icon-4x::before, .title-1[class^="icon-"].icon-4x::before, h1[class*=" icon-"].icon-4x::before, .title-1[class*=" icon-"].icon-4x::before, h2[class^="icon-"].icon-4x::before, .rst h1[class^="icon-"].icon-4x::before, .rst .title-1[class^="icon-"].icon-4x::before, .title-2[class^="icon-"].icon-4x::before, h2[class*=" icon-"].icon-4x::before, .rst h1[class*=" icon-"].icon-4x::before, .rst .title-1[class*=" icon-"].icon-4x::before, .title-2[class*=" icon-"].icon-4x::before, h3[class^="icon-"].icon-4x::before, .h3[class^="icon-"].icon-4x::before, .rst h2[class^="icon-"].icon-4x::before, .rst h1[class^="icon-"].icon-4x::before, .rst .title-1[class^="icon-"].icon-4x::before, .rst .title-2[class^="icon-"].icon-4x::before, .title-3[class^="icon-"].icon-4x::before, h3[class*=" icon-"].icon-4x::before, .h3[class*=" icon-"].icon-4x::before, .rst h2[class*=" icon-"].icon-4x::before, .rst h1[class*=" icon-"].icon-4x::before, .rst .title-1[class*=" icon-"].icon-4x::before, .rst .title-2[class*=" icon-"].icon-4x::before, .title-3[class*=" icon-"].icon-4x::before, h4[class^="icon-"].icon-4x::before, .rst h3[class^="icon-"].icon-4x::before, .rst .h3[class^="icon-"].icon-4x::before, .rst h2[class^="icon-"].icon-4x::before, .rst h1[class^="icon-"].icon-4x::before, .rst .title-1[class^="icon-"].icon-4x::before, .rst .title-2[class^="icon-"].icon-4x::before, .rst .title-3[class^="icon-"].icon-4x::before, .title-4[class^="icon-"].icon-4x::before, h4[class*=" icon-"].icon-4x::before, .rst h3[class*=" icon-"].icon-4x::before, .rst .h3[class*=" icon-"].icon-4x::before, .rst h2[class*=" icon-"].icon-4x::before, .rst h1[class*=" icon-"].icon-4x::before, .rst .title-1[class*=" icon-"].icon-4x::before, .rst .title-2[class*=" icon-"].icon-4x::before, .rst .title-3[class*=" icon-"].icon-4x::before, .title-4[class*=" icon-"].icon-4x::before, *[class^="icon-"].icon-4x::before, *[class*=" icon-"].icon-4x::before {
  font-size: 4rem; }

p[class^="icon-"].icon-block:before, p[class*=" icon-"].icon-block:before, div[class^="icon-"].icon-block:before, div[class*=" icon-"].icon-block:before, h1[class^="icon-"].icon-block:before, .title-1[class^="icon-"].icon-block:before, h1[class*=" icon-"].icon-block:before, .title-1[class*=" icon-"].icon-block:before, h2[class^="icon-"].icon-block:before, .rst h1[class^="icon-"].icon-block:before, .rst .title-1[class^="icon-"].icon-block:before, .title-2[class^="icon-"].icon-block:before, h2[class*=" icon-"].icon-block:before, .rst h1[class*=" icon-"].icon-block:before, .rst .title-1[class*=" icon-"].icon-block:before, .title-2[class*=" icon-"].icon-block:before, h3[class^="icon-"].icon-block:before, .h3[class^="icon-"].icon-block:before, .rst h2[class^="icon-"].icon-block:before, .rst h1[class^="icon-"].icon-block:before, .rst .title-1[class^="icon-"].icon-block:before, .rst .title-2[class^="icon-"].icon-block:before, .title-3[class^="icon-"].icon-block:before, h3[class*=" icon-"].icon-block:before, .h3[class*=" icon-"].icon-block:before, .rst h2[class*=" icon-"].icon-block:before, .rst h1[class*=" icon-"].icon-block:before, .rst .title-1[class*=" icon-"].icon-block:before, .rst .title-2[class*=" icon-"].icon-block:before, .title-3[class*=" icon-"].icon-block:before, h4[class^="icon-"].icon-block:before, .rst h3[class^="icon-"].icon-block:before, .rst .h3[class^="icon-"].icon-block:before, .rst h2[class^="icon-"].icon-block:before, .rst h1[class^="icon-"].icon-block:before, .rst .title-1[class^="icon-"].icon-block:before, .rst .title-2[class^="icon-"].icon-block:before, .rst .title-3[class^="icon-"].icon-block:before, .title-4[class^="icon-"].icon-block:before, h4[class*=" icon-"].icon-block:before, .rst h3[class*=" icon-"].icon-block:before, .rst .h3[class*=" icon-"].icon-block:before, .rst h2[class*=" icon-"].icon-block:before, .rst h1[class*=" icon-"].icon-block:before, .rst .title-1[class*=" icon-"].icon-block:before, .rst .title-2[class*=" icon-"].icon-block:before, .rst .title-3[class*=" icon-"].icon-block:before, .title-4[class*=" icon-"].icon-block:before, *[class^="icon-"].icon-block:before, *[class*=" icon-"].icon-block:before {
  display: block; }

p[class^="icon-"].icon-corner-left, p[class*=" icon-"].icon-corner-left, div[class^="icon-"].icon-corner-left, div[class*=" icon-"].icon-corner-left, h1[class^="icon-"].icon-corner-left, .title-1[class^="icon-"].icon-corner-left, h1[class*=" icon-"].icon-corner-left, .title-1[class*=" icon-"].icon-corner-left, h2[class^="icon-"].icon-corner-left, .rst h1[class^="icon-"].icon-corner-left, .rst .title-1[class^="icon-"].icon-corner-left, .title-2[class^="icon-"].icon-corner-left, h2[class*=" icon-"].icon-corner-left, .rst h1[class*=" icon-"].icon-corner-left, .rst .title-1[class*=" icon-"].icon-corner-left, .title-2[class*=" icon-"].icon-corner-left, h3[class^="icon-"].icon-corner-left, .h3[class^="icon-"].icon-corner-left, .rst h2[class^="icon-"].icon-corner-left, .rst h1[class^="icon-"].icon-corner-left, .rst .title-1[class^="icon-"].icon-corner-left, .rst .title-2[class^="icon-"].icon-corner-left, .title-3[class^="icon-"].icon-corner-left, h3[class*=" icon-"].icon-corner-left, .h3[class*=" icon-"].icon-corner-left, .rst h2[class*=" icon-"].icon-corner-left, .rst h1[class*=" icon-"].icon-corner-left, .rst .title-1[class*=" icon-"].icon-corner-left, .rst .title-2[class*=" icon-"].icon-corner-left, .title-3[class*=" icon-"].icon-corner-left, h4[class^="icon-"].icon-corner-left, .rst h3[class^="icon-"].icon-corner-left, .rst .h3[class^="icon-"].icon-corner-left, .rst h2[class^="icon-"].icon-corner-left, .rst h1[class^="icon-"].icon-corner-left, .rst .title-1[class^="icon-"].icon-corner-left, .rst .title-2[class^="icon-"].icon-corner-left, .rst .title-3[class^="icon-"].icon-corner-left, .title-4[class^="icon-"].icon-corner-left, h4[class*=" icon-"].icon-corner-left, .rst h3[class*=" icon-"].icon-corner-left, .rst .h3[class*=" icon-"].icon-corner-left, .rst h2[class*=" icon-"].icon-corner-left, .rst h1[class*=" icon-"].icon-corner-left, .rst .title-1[class*=" icon-"].icon-corner-left, .rst .title-2[class*=" icon-"].icon-corner-left, .rst .title-3[class*=" icon-"].icon-corner-left, .title-4[class*=" icon-"].icon-corner-left, *[class^="icon-"].icon-corner-left, *[class*=" icon-"].icon-corner-left {
  position: relative;
  padding-left: 1em; }
  p[class^="icon-"].icon-corner-left.icon-2x, p[class*=" icon-"].icon-corner-left.icon-2x, div[class^="icon-"].icon-corner-left.icon-2x, div[class*=" icon-"].icon-corner-left.icon-2x, h1[class^="icon-"].icon-corner-left.icon-2x, .title-1[class^="icon-"].icon-corner-left.icon-2x, h1[class*=" icon-"].icon-corner-left.icon-2x, .title-1[class*=" icon-"].icon-corner-left.icon-2x, h2[class^="icon-"].icon-corner-left.icon-2x, .rst h1[class^="icon-"].icon-corner-left.icon-2x, .rst .title-1[class^="icon-"].icon-corner-left.icon-2x, .title-2[class^="icon-"].icon-corner-left.icon-2x, h2[class*=" icon-"].icon-corner-left.icon-2x, .rst h1[class*=" icon-"].icon-corner-left.icon-2x, .rst .title-1[class*=" icon-"].icon-corner-left.icon-2x, .title-2[class*=" icon-"].icon-corner-left.icon-2x, h3[class^="icon-"].icon-corner-left.icon-2x, .h3[class^="icon-"].icon-corner-left.icon-2x, .rst h2[class^="icon-"].icon-corner-left.icon-2x, .rst h1[class^="icon-"].icon-corner-left.icon-2x, .rst .title-1[class^="icon-"].icon-corner-left.icon-2x, .rst .title-2[class^="icon-"].icon-corner-left.icon-2x, .title-3[class^="icon-"].icon-corner-left.icon-2x, h3[class*=" icon-"].icon-corner-left.icon-2x, .h3[class*=" icon-"].icon-corner-left.icon-2x, .rst h2[class*=" icon-"].icon-corner-left.icon-2x, .rst h1[class*=" icon-"].icon-corner-left.icon-2x, .rst .title-1[class*=" icon-"].icon-corner-left.icon-2x, .rst .title-2[class*=" icon-"].icon-corner-left.icon-2x, .title-3[class*=" icon-"].icon-corner-left.icon-2x, h4[class^="icon-"].icon-corner-left.icon-2x, .rst h3[class^="icon-"].icon-corner-left.icon-2x, .rst .h3[class^="icon-"].icon-corner-left.icon-2x, .rst h2[class^="icon-"].icon-corner-left.icon-2x, .rst h1[class^="icon-"].icon-corner-left.icon-2x, .rst .title-1[class^="icon-"].icon-corner-left.icon-2x, .rst .title-2[class^="icon-"].icon-corner-left.icon-2x, .rst .title-3[class^="icon-"].icon-corner-left.icon-2x, .title-4[class^="icon-"].icon-corner-left.icon-2x, h4[class*=" icon-"].icon-corner-left.icon-2x, .rst h3[class*=" icon-"].icon-corner-left.icon-2x, .rst .h3[class*=" icon-"].icon-corner-left.icon-2x, .rst h2[class*=" icon-"].icon-corner-left.icon-2x, .rst h1[class*=" icon-"].icon-corner-left.icon-2x, .rst .title-1[class*=" icon-"].icon-corner-left.icon-2x, .rst .title-2[class*=" icon-"].icon-corner-left.icon-2x, .rst .title-3[class*=" icon-"].icon-corner-left.icon-2x, .title-4[class*=" icon-"].icon-corner-left.icon-2x, *[class^="icon-"].icon-corner-left.icon-2x, *[class*=" icon-"].icon-corner-left.icon-2x {
    padding-left: 2rem; }
  p[class^="icon-"].icon-corner-left.icon-3x, p[class*=" icon-"].icon-corner-left.icon-3x, div[class^="icon-"].icon-corner-left.icon-3x, div[class*=" icon-"].icon-corner-left.icon-3x, h1[class^="icon-"].icon-corner-left.icon-3x, .title-1[class^="icon-"].icon-corner-left.icon-3x, h1[class*=" icon-"].icon-corner-left.icon-3x, .title-1[class*=" icon-"].icon-corner-left.icon-3x, h2[class^="icon-"].icon-corner-left.icon-3x, .rst h1[class^="icon-"].icon-corner-left.icon-3x, .rst .title-1[class^="icon-"].icon-corner-left.icon-3x, .title-2[class^="icon-"].icon-corner-left.icon-3x, h2[class*=" icon-"].icon-corner-left.icon-3x, .rst h1[class*=" icon-"].icon-corner-left.icon-3x, .rst .title-1[class*=" icon-"].icon-corner-left.icon-3x, .title-2[class*=" icon-"].icon-corner-left.icon-3x, h3[class^="icon-"].icon-corner-left.icon-3x, .h3[class^="icon-"].icon-corner-left.icon-3x, .rst h2[class^="icon-"].icon-corner-left.icon-3x, .rst h1[class^="icon-"].icon-corner-left.icon-3x, .rst .title-1[class^="icon-"].icon-corner-left.icon-3x, .rst .title-2[class^="icon-"].icon-corner-left.icon-3x, .title-3[class^="icon-"].icon-corner-left.icon-3x, h3[class*=" icon-"].icon-corner-left.icon-3x, .h3[class*=" icon-"].icon-corner-left.icon-3x, .rst h2[class*=" icon-"].icon-corner-left.icon-3x, .rst h1[class*=" icon-"].icon-corner-left.icon-3x, .rst .title-1[class*=" icon-"].icon-corner-left.icon-3x, .rst .title-2[class*=" icon-"].icon-corner-left.icon-3x, .title-3[class*=" icon-"].icon-corner-left.icon-3x, h4[class^="icon-"].icon-corner-left.icon-3x, .rst h3[class^="icon-"].icon-corner-left.icon-3x, .rst .h3[class^="icon-"].icon-corner-left.icon-3x, .rst h2[class^="icon-"].icon-corner-left.icon-3x, .rst h1[class^="icon-"].icon-corner-left.icon-3x, .rst .title-1[class^="icon-"].icon-corner-left.icon-3x, .rst .title-2[class^="icon-"].icon-corner-left.icon-3x, .rst .title-3[class^="icon-"].icon-corner-left.icon-3x, .title-4[class^="icon-"].icon-corner-left.icon-3x, h4[class*=" icon-"].icon-corner-left.icon-3x, .rst h3[class*=" icon-"].icon-corner-left.icon-3x, .rst .h3[class*=" icon-"].icon-corner-left.icon-3x, .rst h2[class*=" icon-"].icon-corner-left.icon-3x, .rst h1[class*=" icon-"].icon-corner-left.icon-3x, .rst .title-1[class*=" icon-"].icon-corner-left.icon-3x, .rst .title-2[class*=" icon-"].icon-corner-left.icon-3x, .rst .title-3[class*=" icon-"].icon-corner-left.icon-3x, .title-4[class*=" icon-"].icon-corner-left.icon-3x, *[class^="icon-"].icon-corner-left.icon-3x, *[class*=" icon-"].icon-corner-left.icon-3x {
    padding-left: 3rem; }
  p[class^="icon-"].icon-corner-left.icon-4x, p[class*=" icon-"].icon-corner-left.icon-4x, div[class^="icon-"].icon-corner-left.icon-4x, div[class*=" icon-"].icon-corner-left.icon-4x, h1[class^="icon-"].icon-corner-left.icon-4x, .title-1[class^="icon-"].icon-corner-left.icon-4x, h1[class*=" icon-"].icon-corner-left.icon-4x, .title-1[class*=" icon-"].icon-corner-left.icon-4x, h2[class^="icon-"].icon-corner-left.icon-4x, .rst h1[class^="icon-"].icon-corner-left.icon-4x, .rst .title-1[class^="icon-"].icon-corner-left.icon-4x, .title-2[class^="icon-"].icon-corner-left.icon-4x, h2[class*=" icon-"].icon-corner-left.icon-4x, .rst h1[class*=" icon-"].icon-corner-left.icon-4x, .rst .title-1[class*=" icon-"].icon-corner-left.icon-4x, .title-2[class*=" icon-"].icon-corner-left.icon-4x, h3[class^="icon-"].icon-corner-left.icon-4x, .h3[class^="icon-"].icon-corner-left.icon-4x, .rst h2[class^="icon-"].icon-corner-left.icon-4x, .rst h1[class^="icon-"].icon-corner-left.icon-4x, .rst .title-1[class^="icon-"].icon-corner-left.icon-4x, .rst .title-2[class^="icon-"].icon-corner-left.icon-4x, .title-3[class^="icon-"].icon-corner-left.icon-4x, h3[class*=" icon-"].icon-corner-left.icon-4x, .h3[class*=" icon-"].icon-corner-left.icon-4x, .rst h2[class*=" icon-"].icon-corner-left.icon-4x, .rst h1[class*=" icon-"].icon-corner-left.icon-4x, .rst .title-1[class*=" icon-"].icon-corner-left.icon-4x, .rst .title-2[class*=" icon-"].icon-corner-left.icon-4x, .title-3[class*=" icon-"].icon-corner-left.icon-4x, h4[class^="icon-"].icon-corner-left.icon-4x, .rst h3[class^="icon-"].icon-corner-left.icon-4x, .rst .h3[class^="icon-"].icon-corner-left.icon-4x, .rst h2[class^="icon-"].icon-corner-left.icon-4x, .rst h1[class^="icon-"].icon-corner-left.icon-4x, .rst .title-1[class^="icon-"].icon-corner-left.icon-4x, .rst .title-2[class^="icon-"].icon-corner-left.icon-4x, .rst .title-3[class^="icon-"].icon-corner-left.icon-4x, .title-4[class^="icon-"].icon-corner-left.icon-4x, h4[class*=" icon-"].icon-corner-left.icon-4x, .rst h3[class*=" icon-"].icon-corner-left.icon-4x, .rst .h3[class*=" icon-"].icon-corner-left.icon-4x, .rst h2[class*=" icon-"].icon-corner-left.icon-4x, .rst h1[class*=" icon-"].icon-corner-left.icon-4x, .rst .title-1[class*=" icon-"].icon-corner-left.icon-4x, .rst .title-2[class*=" icon-"].icon-corner-left.icon-4x, .rst .title-3[class*=" icon-"].icon-corner-left.icon-4x, .title-4[class*=" icon-"].icon-corner-left.icon-4x, *[class^="icon-"].icon-corner-left.icon-4x, *[class*=" icon-"].icon-corner-left.icon-4x {
    padding-left: 4rem; }
  p[class^="icon-"].icon-corner-left:before, p[class*=" icon-"].icon-corner-left:before, div[class^="icon-"].icon-corner-left:before, div[class*=" icon-"].icon-corner-left:before, h1[class^="icon-"].icon-corner-left:before, .title-1[class^="icon-"].icon-corner-left:before, h1[class*=" icon-"].icon-corner-left:before, .title-1[class*=" icon-"].icon-corner-left:before, h2[class^="icon-"].icon-corner-left:before, .rst h1[class^="icon-"].icon-corner-left:before, .rst .title-1[class^="icon-"].icon-corner-left:before, .title-2[class^="icon-"].icon-corner-left:before, h2[class*=" icon-"].icon-corner-left:before, .rst h1[class*=" icon-"].icon-corner-left:before, .rst .title-1[class*=" icon-"].icon-corner-left:before, .title-2[class*=" icon-"].icon-corner-left:before, h3[class^="icon-"].icon-corner-left:before, .h3[class^="icon-"].icon-corner-left:before, .rst h2[class^="icon-"].icon-corner-left:before, .rst h1[class^="icon-"].icon-corner-left:before, .rst .title-1[class^="icon-"].icon-corner-left:before, .rst .title-2[class^="icon-"].icon-corner-left:before, .title-3[class^="icon-"].icon-corner-left:before, h3[class*=" icon-"].icon-corner-left:before, .h3[class*=" icon-"].icon-corner-left:before, .rst h2[class*=" icon-"].icon-corner-left:before, .rst h1[class*=" icon-"].icon-corner-left:before, .rst .title-1[class*=" icon-"].icon-corner-left:before, .rst .title-2[class*=" icon-"].icon-corner-left:before, .title-3[class*=" icon-"].icon-corner-left:before, h4[class^="icon-"].icon-corner-left:before, .rst h3[class^="icon-"].icon-corner-left:before, .rst .h3[class^="icon-"].icon-corner-left:before, .rst h2[class^="icon-"].icon-corner-left:before, .rst h1[class^="icon-"].icon-corner-left:before, .rst .title-1[class^="icon-"].icon-corner-left:before, .rst .title-2[class^="icon-"].icon-corner-left:before, .rst .title-3[class^="icon-"].icon-corner-left:before, .title-4[class^="icon-"].icon-corner-left:before, h4[class*=" icon-"].icon-corner-left:before, .rst h3[class*=" icon-"].icon-corner-left:before, .rst .h3[class*=" icon-"].icon-corner-left:before, .rst h2[class*=" icon-"].icon-corner-left:before, .rst h1[class*=" icon-"].icon-corner-left:before, .rst .title-1[class*=" icon-"].icon-corner-left:before, .rst .title-2[class*=" icon-"].icon-corner-left:before, .rst .title-3[class*=" icon-"].icon-corner-left:before, .title-4[class*=" icon-"].icon-corner-left:before, *[class^="icon-"].icon-corner-left:before, *[class*=" icon-"].icon-corner-left:before {
    display: block;
    position: absolute;
    top: 0.1em;
    left: 0; }
  p[class^="icon-"].icon-corner-left > *, p[class*=" icon-"].icon-corner-left > *, div[class^="icon-"].icon-corner-left > *, div[class*=" icon-"].icon-corner-left > *, h1[class^="icon-"].icon-corner-left > *, .title-1[class^="icon-"].icon-corner-left > *, h1[class*=" icon-"].icon-corner-left > *, .title-1[class*=" icon-"].icon-corner-left > *, h2[class^="icon-"].icon-corner-left > *, .rst h1[class^="icon-"].icon-corner-left > *, .rst .title-1[class^="icon-"].icon-corner-left > *, .title-2[class^="icon-"].icon-corner-left > *, h2[class*=" icon-"].icon-corner-left > *, .rst h1[class*=" icon-"].icon-corner-left > *, .rst .title-1[class*=" icon-"].icon-corner-left > *, .title-2[class*=" icon-"].icon-corner-left > *, h3[class^="icon-"].icon-corner-left > *, .h3[class^="icon-"].icon-corner-left > *, .rst h2[class^="icon-"].icon-corner-left > *, .rst h1[class^="icon-"].icon-corner-left > *, .rst .title-1[class^="icon-"].icon-corner-left > *, .rst .title-2[class^="icon-"].icon-corner-left > *, .title-3[class^="icon-"].icon-corner-left > *, h3[class*=" icon-"].icon-corner-left > *, .h3[class*=" icon-"].icon-corner-left > *, .rst h2[class*=" icon-"].icon-corner-left > *, .rst h1[class*=" icon-"].icon-corner-left > *, .rst .title-1[class*=" icon-"].icon-corner-left > *, .rst .title-2[class*=" icon-"].icon-corner-left > *, .title-3[class*=" icon-"].icon-corner-left > *, h4[class^="icon-"].icon-corner-left > *, .rst h3[class^="icon-"].icon-corner-left > *, .rst .h3[class^="icon-"].icon-corner-left > *, .rst h2[class^="icon-"].icon-corner-left > *, .rst h1[class^="icon-"].icon-corner-left > *, .rst .title-1[class^="icon-"].icon-corner-left > *, .rst .title-2[class^="icon-"].icon-corner-left > *, .rst .title-3[class^="icon-"].icon-corner-left > *, .title-4[class^="icon-"].icon-corner-left > *, h4[class*=" icon-"].icon-corner-left > *, .rst h3[class*=" icon-"].icon-corner-left > *, .rst .h3[class*=" icon-"].icon-corner-left > *, .rst h2[class*=" icon-"].icon-corner-left > *, .rst h1[class*=" icon-"].icon-corner-left > *, .rst .title-1[class*=" icon-"].icon-corner-left > *, .rst .title-2[class*=" icon-"].icon-corner-left > *, .rst .title-3[class*=" icon-"].icon-corner-left > *, .title-4[class*=" icon-"].icon-corner-left > *, *[class^="icon-"].icon-corner-left > *, *[class*=" icon-"].icon-corner-left > * {
    margin-left: 0.3125rem; }

p[class^="icon-"].icon-center-left, p[class*=" icon-"].icon-center-left, div[class^="icon-"].icon-center-left, div[class*=" icon-"].icon-center-left, h1[class^="icon-"].icon-center-left, .title-1[class^="icon-"].icon-center-left, h1[class*=" icon-"].icon-center-left, .title-1[class*=" icon-"].icon-center-left, h2[class^="icon-"].icon-center-left, .rst h1[class^="icon-"].icon-center-left, .rst .title-1[class^="icon-"].icon-center-left, .title-2[class^="icon-"].icon-center-left, h2[class*=" icon-"].icon-center-left, .rst h1[class*=" icon-"].icon-center-left, .rst .title-1[class*=" icon-"].icon-center-left, .title-2[class*=" icon-"].icon-center-left, h3[class^="icon-"].icon-center-left, .h3[class^="icon-"].icon-center-left, .rst h2[class^="icon-"].icon-center-left, .rst h1[class^="icon-"].icon-center-left, .rst .title-1[class^="icon-"].icon-center-left, .rst .title-2[class^="icon-"].icon-center-left, .title-3[class^="icon-"].icon-center-left, h3[class*=" icon-"].icon-center-left, .h3[class*=" icon-"].icon-center-left, .rst h2[class*=" icon-"].icon-center-left, .rst h1[class*=" icon-"].icon-center-left, .rst .title-1[class*=" icon-"].icon-center-left, .rst .title-2[class*=" icon-"].icon-center-left, .title-3[class*=" icon-"].icon-center-left, h4[class^="icon-"].icon-center-left, .rst h3[class^="icon-"].icon-center-left, .rst .h3[class^="icon-"].icon-center-left, .rst h2[class^="icon-"].icon-center-left, .rst h1[class^="icon-"].icon-center-left, .rst .title-1[class^="icon-"].icon-center-left, .rst .title-2[class^="icon-"].icon-center-left, .rst .title-3[class^="icon-"].icon-center-left, .title-4[class^="icon-"].icon-center-left, h4[class*=" icon-"].icon-center-left, .rst h3[class*=" icon-"].icon-center-left, .rst .h3[class*=" icon-"].icon-center-left, .rst h2[class*=" icon-"].icon-center-left, .rst h1[class*=" icon-"].icon-center-left, .rst .title-1[class*=" icon-"].icon-center-left, .rst .title-2[class*=" icon-"].icon-center-left, .rst .title-3[class*=" icon-"].icon-center-left, .title-4[class*=" icon-"].icon-center-left, *[class^="icon-"].icon-center-left, *[class*=" icon-"].icon-center-left {
  position: relative;
  padding-left: 1em; }
  p[class^="icon-"].icon-center-left.icon-2x, p[class*=" icon-"].icon-center-left.icon-2x, div[class^="icon-"].icon-center-left.icon-2x, div[class*=" icon-"].icon-center-left.icon-2x, h1[class^="icon-"].icon-center-left.icon-2x, .title-1[class^="icon-"].icon-center-left.icon-2x, h1[class*=" icon-"].icon-center-left.icon-2x, .title-1[class*=" icon-"].icon-center-left.icon-2x, h2[class^="icon-"].icon-center-left.icon-2x, .rst h1[class^="icon-"].icon-center-left.icon-2x, .rst .title-1[class^="icon-"].icon-center-left.icon-2x, .title-2[class^="icon-"].icon-center-left.icon-2x, h2[class*=" icon-"].icon-center-left.icon-2x, .rst h1[class*=" icon-"].icon-center-left.icon-2x, .rst .title-1[class*=" icon-"].icon-center-left.icon-2x, .title-2[class*=" icon-"].icon-center-left.icon-2x, h3[class^="icon-"].icon-center-left.icon-2x, .h3[class^="icon-"].icon-center-left.icon-2x, .rst h2[class^="icon-"].icon-center-left.icon-2x, .rst h1[class^="icon-"].icon-center-left.icon-2x, .rst .title-1[class^="icon-"].icon-center-left.icon-2x, .rst .title-2[class^="icon-"].icon-center-left.icon-2x, .title-3[class^="icon-"].icon-center-left.icon-2x, h3[class*=" icon-"].icon-center-left.icon-2x, .h3[class*=" icon-"].icon-center-left.icon-2x, .rst h2[class*=" icon-"].icon-center-left.icon-2x, .rst h1[class*=" icon-"].icon-center-left.icon-2x, .rst .title-1[class*=" icon-"].icon-center-left.icon-2x, .rst .title-2[class*=" icon-"].icon-center-left.icon-2x, .title-3[class*=" icon-"].icon-center-left.icon-2x, h4[class^="icon-"].icon-center-left.icon-2x, .rst h3[class^="icon-"].icon-center-left.icon-2x, .rst .h3[class^="icon-"].icon-center-left.icon-2x, .rst h2[class^="icon-"].icon-center-left.icon-2x, .rst h1[class^="icon-"].icon-center-left.icon-2x, .rst .title-1[class^="icon-"].icon-center-left.icon-2x, .rst .title-2[class^="icon-"].icon-center-left.icon-2x, .rst .title-3[class^="icon-"].icon-center-left.icon-2x, .title-4[class^="icon-"].icon-center-left.icon-2x, h4[class*=" icon-"].icon-center-left.icon-2x, .rst h3[class*=" icon-"].icon-center-left.icon-2x, .rst .h3[class*=" icon-"].icon-center-left.icon-2x, .rst h2[class*=" icon-"].icon-center-left.icon-2x, .rst h1[class*=" icon-"].icon-center-left.icon-2x, .rst .title-1[class*=" icon-"].icon-center-left.icon-2x, .rst .title-2[class*=" icon-"].icon-center-left.icon-2x, .rst .title-3[class*=" icon-"].icon-center-left.icon-2x, .title-4[class*=" icon-"].icon-center-left.icon-2x, *[class^="icon-"].icon-center-left.icon-2x, *[class*=" icon-"].icon-center-left.icon-2x {
    padding-left: 2rem; }
  p[class^="icon-"].icon-center-left.icon-3x, p[class*=" icon-"].icon-center-left.icon-3x, div[class^="icon-"].icon-center-left.icon-3x, div[class*=" icon-"].icon-center-left.icon-3x, h1[class^="icon-"].icon-center-left.icon-3x, .title-1[class^="icon-"].icon-center-left.icon-3x, h1[class*=" icon-"].icon-center-left.icon-3x, .title-1[class*=" icon-"].icon-center-left.icon-3x, h2[class^="icon-"].icon-center-left.icon-3x, .rst h1[class^="icon-"].icon-center-left.icon-3x, .rst .title-1[class^="icon-"].icon-center-left.icon-3x, .title-2[class^="icon-"].icon-center-left.icon-3x, h2[class*=" icon-"].icon-center-left.icon-3x, .rst h1[class*=" icon-"].icon-center-left.icon-3x, .rst .title-1[class*=" icon-"].icon-center-left.icon-3x, .title-2[class*=" icon-"].icon-center-left.icon-3x, h3[class^="icon-"].icon-center-left.icon-3x, .h3[class^="icon-"].icon-center-left.icon-3x, .rst h2[class^="icon-"].icon-center-left.icon-3x, .rst h1[class^="icon-"].icon-center-left.icon-3x, .rst .title-1[class^="icon-"].icon-center-left.icon-3x, .rst .title-2[class^="icon-"].icon-center-left.icon-3x, .title-3[class^="icon-"].icon-center-left.icon-3x, h3[class*=" icon-"].icon-center-left.icon-3x, .h3[class*=" icon-"].icon-center-left.icon-3x, .rst h2[class*=" icon-"].icon-center-left.icon-3x, .rst h1[class*=" icon-"].icon-center-left.icon-3x, .rst .title-1[class*=" icon-"].icon-center-left.icon-3x, .rst .title-2[class*=" icon-"].icon-center-left.icon-3x, .title-3[class*=" icon-"].icon-center-left.icon-3x, h4[class^="icon-"].icon-center-left.icon-3x, .rst h3[class^="icon-"].icon-center-left.icon-3x, .rst .h3[class^="icon-"].icon-center-left.icon-3x, .rst h2[class^="icon-"].icon-center-left.icon-3x, .rst h1[class^="icon-"].icon-center-left.icon-3x, .rst .title-1[class^="icon-"].icon-center-left.icon-3x, .rst .title-2[class^="icon-"].icon-center-left.icon-3x, .rst .title-3[class^="icon-"].icon-center-left.icon-3x, .title-4[class^="icon-"].icon-center-left.icon-3x, h4[class*=" icon-"].icon-center-left.icon-3x, .rst h3[class*=" icon-"].icon-center-left.icon-3x, .rst .h3[class*=" icon-"].icon-center-left.icon-3x, .rst h2[class*=" icon-"].icon-center-left.icon-3x, .rst h1[class*=" icon-"].icon-center-left.icon-3x, .rst .title-1[class*=" icon-"].icon-center-left.icon-3x, .rst .title-2[class*=" icon-"].icon-center-left.icon-3x, .rst .title-3[class*=" icon-"].icon-center-left.icon-3x, .title-4[class*=" icon-"].icon-center-left.icon-3x, *[class^="icon-"].icon-center-left.icon-3x, *[class*=" icon-"].icon-center-left.icon-3x {
    padding-left: 3rem; }
  p[class^="icon-"].icon-center-left.icon-4x, p[class*=" icon-"].icon-center-left.icon-4x, div[class^="icon-"].icon-center-left.icon-4x, div[class*=" icon-"].icon-center-left.icon-4x, h1[class^="icon-"].icon-center-left.icon-4x, .title-1[class^="icon-"].icon-center-left.icon-4x, h1[class*=" icon-"].icon-center-left.icon-4x, .title-1[class*=" icon-"].icon-center-left.icon-4x, h2[class^="icon-"].icon-center-left.icon-4x, .rst h1[class^="icon-"].icon-center-left.icon-4x, .rst .title-1[class^="icon-"].icon-center-left.icon-4x, .title-2[class^="icon-"].icon-center-left.icon-4x, h2[class*=" icon-"].icon-center-left.icon-4x, .rst h1[class*=" icon-"].icon-center-left.icon-4x, .rst .title-1[class*=" icon-"].icon-center-left.icon-4x, .title-2[class*=" icon-"].icon-center-left.icon-4x, h3[class^="icon-"].icon-center-left.icon-4x, .h3[class^="icon-"].icon-center-left.icon-4x, .rst h2[class^="icon-"].icon-center-left.icon-4x, .rst h1[class^="icon-"].icon-center-left.icon-4x, .rst .title-1[class^="icon-"].icon-center-left.icon-4x, .rst .title-2[class^="icon-"].icon-center-left.icon-4x, .title-3[class^="icon-"].icon-center-left.icon-4x, h3[class*=" icon-"].icon-center-left.icon-4x, .h3[class*=" icon-"].icon-center-left.icon-4x, .rst h2[class*=" icon-"].icon-center-left.icon-4x, .rst h1[class*=" icon-"].icon-center-left.icon-4x, .rst .title-1[class*=" icon-"].icon-center-left.icon-4x, .rst .title-2[class*=" icon-"].icon-center-left.icon-4x, .title-3[class*=" icon-"].icon-center-left.icon-4x, h4[class^="icon-"].icon-center-left.icon-4x, .rst h3[class^="icon-"].icon-center-left.icon-4x, .rst .h3[class^="icon-"].icon-center-left.icon-4x, .rst h2[class^="icon-"].icon-center-left.icon-4x, .rst h1[class^="icon-"].icon-center-left.icon-4x, .rst .title-1[class^="icon-"].icon-center-left.icon-4x, .rst .title-2[class^="icon-"].icon-center-left.icon-4x, .rst .title-3[class^="icon-"].icon-center-left.icon-4x, .title-4[class^="icon-"].icon-center-left.icon-4x, h4[class*=" icon-"].icon-center-left.icon-4x, .rst h3[class*=" icon-"].icon-center-left.icon-4x, .rst .h3[class*=" icon-"].icon-center-left.icon-4x, .rst h2[class*=" icon-"].icon-center-left.icon-4x, .rst h1[class*=" icon-"].icon-center-left.icon-4x, .rst .title-1[class*=" icon-"].icon-center-left.icon-4x, .rst .title-2[class*=" icon-"].icon-center-left.icon-4x, .rst .title-3[class*=" icon-"].icon-center-left.icon-4x, .title-4[class*=" icon-"].icon-center-left.icon-4x, *[class^="icon-"].icon-center-left.icon-4x, *[class*=" icon-"].icon-center-left.icon-4x {
    padding-left: 4rem; }
  p[class^="icon-"].icon-center-left:before, p[class*=" icon-"].icon-center-left:before, div[class^="icon-"].icon-center-left:before, div[class*=" icon-"].icon-center-left:before, h1[class^="icon-"].icon-center-left:before, .title-1[class^="icon-"].icon-center-left:before, h1[class*=" icon-"].icon-center-left:before, .title-1[class*=" icon-"].icon-center-left:before, h2[class^="icon-"].icon-center-left:before, .rst h1[class^="icon-"].icon-center-left:before, .rst .title-1[class^="icon-"].icon-center-left:before, .title-2[class^="icon-"].icon-center-left:before, h2[class*=" icon-"].icon-center-left:before, .rst h1[class*=" icon-"].icon-center-left:before, .rst .title-1[class*=" icon-"].icon-center-left:before, .title-2[class*=" icon-"].icon-center-left:before, h3[class^="icon-"].icon-center-left:before, .h3[class^="icon-"].icon-center-left:before, .rst h2[class^="icon-"].icon-center-left:before, .rst h1[class^="icon-"].icon-center-left:before, .rst .title-1[class^="icon-"].icon-center-left:before, .rst .title-2[class^="icon-"].icon-center-left:before, .title-3[class^="icon-"].icon-center-left:before, h3[class*=" icon-"].icon-center-left:before, .h3[class*=" icon-"].icon-center-left:before, .rst h2[class*=" icon-"].icon-center-left:before, .rst h1[class*=" icon-"].icon-center-left:before, .rst .title-1[class*=" icon-"].icon-center-left:before, .rst .title-2[class*=" icon-"].icon-center-left:before, .title-3[class*=" icon-"].icon-center-left:before, h4[class^="icon-"].icon-center-left:before, .rst h3[class^="icon-"].icon-center-left:before, .rst .h3[class^="icon-"].icon-center-left:before, .rst h2[class^="icon-"].icon-center-left:before, .rst h1[class^="icon-"].icon-center-left:before, .rst .title-1[class^="icon-"].icon-center-left:before, .rst .title-2[class^="icon-"].icon-center-left:before, .rst .title-3[class^="icon-"].icon-center-left:before, .title-4[class^="icon-"].icon-center-left:before, h4[class*=" icon-"].icon-center-left:before, .rst h3[class*=" icon-"].icon-center-left:before, .rst .h3[class*=" icon-"].icon-center-left:before, .rst h2[class*=" icon-"].icon-center-left:before, .rst h1[class*=" icon-"].icon-center-left:before, .rst .title-1[class*=" icon-"].icon-center-left:before, .rst .title-2[class*=" icon-"].icon-center-left:before, .rst .title-3[class*=" icon-"].icon-center-left:before, .title-4[class*=" icon-"].icon-center-left:before, *[class^="icon-"].icon-center-left:before, *[class*=" icon-"].icon-center-left:before {
    display: block;
    position: absolute;
    top: 50%;
    left: 0;
    -ms-transform: translate(0, -50%);
    transform: translate(0, -50%); }
  p[class^="icon-"].icon-center-left > *, p[class*=" icon-"].icon-center-left > *, div[class^="icon-"].icon-center-left > *, div[class*=" icon-"].icon-center-left > *, h1[class^="icon-"].icon-center-left > *, .title-1[class^="icon-"].icon-center-left > *, h1[class*=" icon-"].icon-center-left > *, .title-1[class*=" icon-"].icon-center-left > *, h2[class^="icon-"].icon-center-left > *, .rst h1[class^="icon-"].icon-center-left > *, .rst .title-1[class^="icon-"].icon-center-left > *, .title-2[class^="icon-"].icon-center-left > *, h2[class*=" icon-"].icon-center-left > *, .rst h1[class*=" icon-"].icon-center-left > *, .rst .title-1[class*=" icon-"].icon-center-left > *, .title-2[class*=" icon-"].icon-center-left > *, h3[class^="icon-"].icon-center-left > *, .h3[class^="icon-"].icon-center-left > *, .rst h2[class^="icon-"].icon-center-left > *, .rst h1[class^="icon-"].icon-center-left > *, .rst .title-1[class^="icon-"].icon-center-left > *, .rst .title-2[class^="icon-"].icon-center-left > *, .title-3[class^="icon-"].icon-center-left > *, h3[class*=" icon-"].icon-center-left > *, .h3[class*=" icon-"].icon-center-left > *, .rst h2[class*=" icon-"].icon-center-left > *, .rst h1[class*=" icon-"].icon-center-left > *, .rst .title-1[class*=" icon-"].icon-center-left > *, .rst .title-2[class*=" icon-"].icon-center-left > *, .title-3[class*=" icon-"].icon-center-left > *, h4[class^="icon-"].icon-center-left > *, .rst h3[class^="icon-"].icon-center-left > *, .rst .h3[class^="icon-"].icon-center-left > *, .rst h2[class^="icon-"].icon-center-left > *, .rst h1[class^="icon-"].icon-center-left > *, .rst .title-1[class^="icon-"].icon-center-left > *, .rst .title-2[class^="icon-"].icon-center-left > *, .rst .title-3[class^="icon-"].icon-center-left > *, .title-4[class^="icon-"].icon-center-left > *, h4[class*=" icon-"].icon-center-left > *, .rst h3[class*=" icon-"].icon-center-left > *, .rst .h3[class*=" icon-"].icon-center-left > *, .rst h2[class*=" icon-"].icon-center-left > *, .rst h1[class*=" icon-"].icon-center-left > *, .rst .title-1[class*=" icon-"].icon-center-left > *, .rst .title-2[class*=" icon-"].icon-center-left > *, .rst .title-3[class*=" icon-"].icon-center-left > *, .title-4[class*=" icon-"].icon-center-left > *, *[class^="icon-"].icon-center-left > *, *[class*=" icon-"].icon-center-left > * {
    margin-left: 0.3125rem; }

.button[class^="icon-"], .button[class*=" icon-"] {
  font-family: inherit; }
  .button[class^="icon-"]:before, .button[class*=" icon-"]:before {
    font-family: 'icomoon';
    margin-right: 0.3125rem;
    speak: none;
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    /* Better Font Rendering =========== */
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale; }
  .button[class^="icon-"].icoAft:before, .button[class*=" icon-"].icoAft:before {
    position: reltive;
    right: 0.5rem;
    width: 2rem; }

.icon-2x {
  font-size: 2rem; }

.icon-3x {
  font-size: 3rem; }

.icon-4x {
  font-size: 4rem; }

.icon-collections:before {
  content: ""; }

.icon-tag:before {
  content: ""; }

.icon-close:before {
  content: ""; }

.icon-long_arrow_left:before {
  content: ""; }

.icon-long_arrow_right:before {
  font-size: 1.8rem;
  content: ""; }

.icon-arrow-right:before {
  content: ""; }

.icon-arrow-right:before {
  content: ""; }

.icon-download:before {
  content: ""; }

.icon-film1:before {
  content: ""; }

.icon-map1:before {
  content: ""; }

.icon-message-circle:before {
  content: ""; }

.icon-videocam:before {
  content: ""; }

.icon-collection:before {
  content: ""; }

.icon-expositions:before {
  content: ""; }

.icon-outils:before {
  content: ""; }

.icon-reperes:before {
  content: ""; }

.icon-calendar:before, .icon-visitmore2:before {
  content: ""; }

.icon-museummore:before, .icon-visitmore3:before {
  content: ""; }

.icon-plan:before, .icon-visitmore1:before {
  content: ""; }

.icon-play:before {
  content: ""; }

.icon-mail:before {
  content: ""; }

.icon-cloud_doc:before {
  content: ""; }

.icon-comment:before {
  content: ""; }

.icon-doc:before {
  content: ""; }

.icon-linkdoc:before {
  content: ""; }

.icon-link:before {
  content: ""; }

.icon-arro_left:before, .fa-chevron-left:before, .slick-prev:before {
  content: ""; }

.icon-arro_right:before, .fa-chevron-right:before, ul.arrow-2 li:not(.no-bullet):before, ul.chevron:not(.defer) li:not(.no-bullet):before, ul.chevron.defer li:not(.no-bullet) > :first-child:before, ul.chevron.smaller li:not(.no-bullet):before, .slick-next:before {
  content: ""; }

.icon-map:before {
  content: ""; }

.icon-image:before {
  content: ""; }

.icon-video:before {
  content: ""; }

.icon-sound:before {
  content: ""; }

.icon-search:before, .fa-search:before {
  content: ""; }

.icon-music:before {
  content: ""; }

.icon-film:before {
  content: ""; }

.icon-volume-up:before {
  content: ""; }

.icon-video-camera:before {
  content: ""; }

.icon-image2:before {
  content: ""; }

.icon-photo:before {
  content: ""; }

.icon-picture-o:before {
  content: ""; }

.icon-pencil:before {
  content: ""; }

.icon-question-circle:before, .fa-question-circle:before {
  content: ""; }

.icon-eye:before {
  content: ""; }

.icon-eye-slash:before {
  content: ""; }

.icon-twitter:before {
  content: ""; }

.icon-facebook:before {
  content: ""; }

.icon-filter:before {
  content: ""; }

.icon-file-text-o:before {
  content: ""; }

.icon-order:before {
  content: ""; }

.icon-youtube-square:before {
  content: ""; }

.icon-youtube:before {
  content: ""; }

.icon-newspaper-o:before {
  content: ""; }

ul.arrow {
  list-style-type: none; }
  ul.arrow:not(.defer) li {
    position: relative;
    padding-left: 1rem; }
    ul.arrow:not(.defer) li:before {
      position: absolute;
      top: 0.75rem;
      left: -0.125rem;
      width: 0.75rem;
      font-family: icomoon;
      content: ">";
      color: #dd3333;
      -ms-transform: translate(0%, -50%);
      transform: translate(0%, -50%); }
  ul.arrow.defer li {
    position: relative; }
    ul.arrow.defer li > *:first-child {
      position: relative;
      padding-left: 1.5rem; }
      ul.arrow.defer li > *:first-child:before {
        position: absolute;
        top: 0.6rem;
        left: -0.125rem;
        width: 0.75rem;
        font-family: icomoon;
        content: ">";
        color: #dd3333;
        -ms-transform: translate(0%, -50%);
        transform: translate(0%, -50%); }

/*
 * ul.arrow alike but with another arrow icon instead
 */
ul.arrow-2 {
  margin-left: 0;
  margin-right: 0;
  list-style-type: none; }
  ul.arrow-2 li {
    position: relative;
    padding-left: 1.2rem; }
    ul.arrow-2 li:not(.no-bullet):before {
      position: absolute;
      top: 0.75rem;
      left: -0.125rem;
      width: 0.75rem;
      font-family: icomoon;
      color: black;
      -ms-transform: translate(0%, -50%);
      transform: translate(0%, -50%); }
    ul.arrow-2 li + li {
      margin-top: 0.5rem; }

/*
 * Use a chevron icon
 */
ul.chevron {
  list-style-type: none; }
  ul.chevron:not(.defer) li {
    position: relative;
    padding-left: 1.1em; }
    ul.chevron:not(.defer) li:not(.no-bullet):before {
      position: absolute;
      left: -0.125rem;
      width: 0.75rem;
      font-family: icomoon;
      font-weight: 600;
      color: #dd3333; }
  ul.chevron.defer li > *:first-child {
    position: relative;
    padding-left: 1.5em; }
  ul.chevron.defer li:not(.no-bullet) > *:first-child:before {
    position: absolute;
    top: 0.6rem;
    left: -0.125rem;
    width: 0.75rem;
    font-family: icomoon;
    font-weight: 600;
    color: #dd3333;
    -ms-transform: translate(0%, -50%);
    transform: translate(0%, -50%); }
  ul.chevron.bigger:not(.defer) li:not(.no-bullet),
  ul.chevron.bigger.defer li:not(.no-bullet) {
    font-size: 1.3em; }
    ul.chevron.bigger:not(.defer) li:not(.no-bullet):before,
    ul.chevron.bigger:not(.defer) li:not(.no-bullet) > *:first-child:before,
    ul.chevron.bigger.defer li:not(.no-bullet):before,
    ul.chevron.bigger.defer li:not(.no-bullet) > *:first-child:before {
      font-size: 1.2em;
      top: 0.75rem; }
  ul.chevron.smaller li {
    padding-left: 1.1em; }
    ul.chevron.smaller li:not(.no-bullet):before {
      position: absolute;
      left: -0.125rem;
      width: 0.75rem;
      font-family: icomoon;
      font-weight: 600;
      color: #0a0a0a; }

/*
 * List items divided by a bold border
 */
ul.divided,
ol.divided {
  list-style-type: none; }
  ul.divided li + li,
  ol.divided li + li {
    margin-top: em-calc(10px);
    padding-top: em-calc(10px);
    border-top: em-calc(4px) solid #DDD; }

/*
 * List items divided by a bold border and also border on top and bottom of
 * the list element
 */
ul.line-surround,
ol.line-surround {
  border-top: 4px solid #DDD;
  border-bottom: 4px solid #DDD; }
  ul.line-surround li,
  ol.line-surround li {
    padding-top: 0.8em;
    padding-bottom: 0.8em; }
    ul.line-surround li + li,
    ol.line-surround li + li {
      border-top: 4px solid #DDD; }

/*
 * Nicely listed item with some minor vertical spaces and right padding
 * (mostly intended to use with flex lists)
 */
.nice-listing {
  margin: 0;
  padding: 0; }
  .nice-listing.gutter {
    margin: 1rem; }
  .nice-listing > li {
    margin: 0 0 1rem !important;
    padding-right: 0.75rem; }

/*
 * Another list with arrow icon
 */
.arrowList {
  margin: 0; }
  .arrowList li {
    position: relative;
    color: #0a0a0a; }
    .arrowList li a {
      color: #0a0a0a;
      margin-left: 0.2rem;
      display: inline-block; }
      .arrowList li a:hover {
        color: #dd3333; }
    .arrowList li:before {
      content: '';
      font-family: icomoon;
      font-size: 0.7rem;
      color: #dd3333;
      position: absolute;
      left: 0;
      top: 0.2rem; }

.listAndLine {
  list-style-type: none;
  border-top: 4px solid #DDD;
  margin: 0;
  margin-top: 1.5rem;
  float: left;
  display: inline-block;
  width: 100%; }
  .listAndLine li {
    display: inline-block;
    width: 100%;
    margin: 0;
    border-bottom: 1px solid #DDD;
    padding-top: 0.84rem;
    padding-bottom: 0.84rem; }
    .listAndLine li a {
      color: #0a0a0a; }
  .listAndLine.biglines li {
    padding-top: 1.1rem;
    padding-bottom: 1.1rem;
    border-bottom: 4px solid #f7f7f7; }
    .listAndLine.biglines li:last-child {
      border-bottom: 0px solid #f7f7f7; }

.bigArrow li {
  position: relative;
  padding-left: 1.75rem; }
  .bigArrow li:before {
    content: '>';
    font-family: icomoon;
    font-size: 1.2rem;
    position: absolute;
    top: 0.65rem;
    left: 0;
    color: #dd3333; }

.dotList ul.dotted {
  margin: 0; }

.dotList li {
  position: relative;
  color: #0a0a0a;
  maring-left: 0;
  padding-left: 1rem; }
  .dotList li a {
    color: #8a8a8a;
    margin-left: 0.2rem;
    display: inline-block; }
  .dotList li:before {
    content: '•';
    font-size: 1.4rem;
    color: #dd3333;
    position: absolute;
    left: 0;
    top: 0rem;
    line-height: 0.9em; }

.dotListsmall ul.dotted {
  margin: 0; }

.dotListsmall li {
  position: relative;
  color: #0a0a0a;
  maring-left: 0;
  padding-left: 0.7rem; }
  .dotListsmall li a {
    color: #8a8a8a;
    margin-left: 0.1rem;
    display: inline-block; }
  .dotListsmall li:before {
    content: '•';
    font-size: 0.7rem;
    color: #0a0a0a;
    position: absolute;
    left: 0;
    top: 0.5rem;
    line-height: 0.9em; }

/* Just a list without bullet and margin */
.blocklist {
  margin: 0;
  list-style-type: none; }

/* counter list */
ul.counterList {
  margin: 0;
  counter-reset: lic;
  list-style-type: none; }
  ul.counterList li {
    position: relative;
    padding-left: 2.4rem;
    counter-increment: lic;
    margin-top: 0.2rem;
    margin-bottom: 0.4rem; }
    ul.counterList li:before {
      content: counter(lic);
      border-radius: 50%;
      position: absolute;
      left: 0;
      top: 50%;
      width: 1.6rem;
      height: 1.6rem;
      line-height: 1.6rem;
      text-align: center;
      overflow: hidden;
      background: #8a8a8a;
      color: #f7f7f7;
      -ms-transform: translate(0, -50%);
      transform: translate(0, -50%); }

/* dashList */
.dash-list li {
  position: relative;
  padding-right: 2rem; }
  .dash-list li:not(:first-child) {
    padding-left: 2rem; }
    .dash-list li:not(:first-child):before {
      content: '|';
      position: absolute;
      left: 0;
      top: 50%;
      -ms-transform: translate(0, -50%);
          transform: translate(0, -50%); }

/* inline */
.inline-list {
  display: inline-block; }
  .inline-list li {
    display: inline; }

/* flexList */
.flex-list {
  display: -ms-flexbox;
  display: flex; }
  .flex-list li {
    width: 100%;
    -ms-flex-pack: justify;
        justify-content: space-between;
    text-align: center; }

.blacklist li a {
  color: #0a0a0a; }

.slider-wrapper.theme-default {
  max-width: 100%; }

.theme-default .nivoSlider img {
  max-width: 100%; }

.theme-default .nivo-caption a {
  border: 0; }

.theme-default .nivo-caption .showhide {
  position: absolute;
  right: 0rem;
  top: 0rem;
  border: 0;
  margin: 0; }

.notsee {
  display: none; }

.nivoDescription {
  height: 2.7rem; }
  .nivoDescription h3, .nivoDescription .h3, .nivoDescription .rst h2, .rst .nivoDescription h2, .nivoDescription .rst h1, .rst .nivoDescription h1, .nivoDescription .rst .title-1, .rst .nivoDescription .title-1, .nivoDescription .rst .title-2, .rst .nivoDescription .title-2, .nivoDescription .title-3 {
    margin-right: 6rem; }

.showMore .nivoDescription {
  height: auto; }

.showMore .notsee {
  display: inline; }

.showMore .see {
  display: none; }

.showMore .nivo-caption {
  padding: 0 10px; }

.nivoDescription {
  overflow: scroll; }

/*
 *
 * Restyling and addons on Foundation forms
 *
 */
form {
  /*
     * Simple form with nicely stacked label+input
     */
  /*
     * Avoid to display required marks on fields
     */ }
  form.cool-stack input,
  form.cool-stack textarea,
  form.cool-stack select {
    border-radius: 0.3rem; }
  form.cool-stack label .asterisk {
    color: lignten(#dd3333, 10%); }
  form.cool-stack .inline-radio > ul {
    margin: 0; }
    form.cool-stack .inline-radio > ul > li {
      display: inline-block; }
      form.cool-stack .inline-radio > ul > li + li {
        margin-left: 1rem; }
  form.cool-stack .row + .row {
    margin-top: 1rem; }
  form.cool-stack .field-wrapper label,
  form.cool-stack .field-wrapper .label {
    margin-bottom: 0.5rem; }
  form.cool-stack .field-wrapper + .field-wrapper {
    margin-top: 0.5rem; }
  form .discreet label .asterisk {
    display: none; }

/*
 * Clean flat form with label and input on the same baseline
 *
 * Both support react-form (smart-**) and crispy forms (holder)
 */
.flat-form {
  /* When there is a form without fieldset, need to fill bg */ }
  .flat-form form .smart-field::before, .flat-form form .smart-field::after,
  .flat-form form .holder::before,
  .flat-form form .holder::after,
  .flat-form .wrapper .smart-field::before,
  .flat-form .wrapper .smart-field::after,
  .flat-form .wrapper .holder::before,
  .flat-form .wrapper .holder::after {
    content: ' ';
    display: table; }
  .flat-form form .smart-field::after,
  .flat-form form .holder::after,
  .flat-form .wrapper .smart-field::after,
  .flat-form .wrapper .holder::after {
    clear: both; }
  .flat-form form .smart-field label,
  .flat-form form .holder label,
  .flat-form .wrapper .smart-field label,
  .flat-form .wrapper .holder label {
    display: inline-block;
    float: left;
    font-size: 1.2rem;
    font-weight: 400;
    color: #0a0a0a;
    padding: 0.5rem 1.5rem 0.5rem 0.5rem; }
    @media screen and (min-width: 40em) {
      .flat-form form .smart-field label,
      .flat-form form .holder label,
      .flat-form .wrapper .smart-field label,
      .flat-form .wrapper .holder label {
        width: 33%;
        text-align: right;
        padding-right: 1.5rem; } }
  .flat-form form .smart-field select,
  .flat-form form .smart-field input[type="text"],
  .flat-form form .smart-field input[type="password"],
  .flat-form form .smart-field input[type="date"],
  .flat-form form .smart-field input[type="datetime"],
  .flat-form form .smart-field input[type="datetime-local"],
  .flat-form form .smart-field input[type="month"],
  .flat-form form .smart-field input[type="week"],
  .flat-form form .smart-field input[type="email"],
  .flat-form form .smart-field input[type="number"],
  .flat-form form .smart-field input[type="search"],
  .flat-form form .smart-field input[type="tel"],
  .flat-form form .smart-field input[type="time"],
  .flat-form form .smart-field input[type="url"],
  .flat-form form .smart-field input[type="color"],
  .flat-form form .smart-field textarea,
  .flat-form form .holder select,
  .flat-form form .holder input[type="text"],
  .flat-form form .holder input[type="password"],
  .flat-form form .holder input[type="date"],
  .flat-form form .holder input[type="datetime"],
  .flat-form form .holder input[type="datetime-local"],
  .flat-form form .holder input[type="month"],
  .flat-form form .holder input[type="week"],
  .flat-form form .holder input[type="email"],
  .flat-form form .holder input[type="number"],
  .flat-form form .holder input[type="search"],
  .flat-form form .holder input[type="tel"],
  .flat-form form .holder input[type="time"],
  .flat-form form .holder input[type="url"],
  .flat-form form .holder input[type="color"],
  .flat-form form .holder textarea,
  .flat-form .wrapper .smart-field select,
  .flat-form .wrapper .smart-field input[type="text"],
  .flat-form .wrapper .smart-field input[type="password"],
  .flat-form .wrapper .smart-field input[type="date"],
  .flat-form .wrapper .smart-field input[type="datetime"],
  .flat-form .wrapper .smart-field input[type="datetime-local"],
  .flat-form .wrapper .smart-field input[type="month"],
  .flat-form .wrapper .smart-field input[type="week"],
  .flat-form .wrapper .smart-field input[type="email"],
  .flat-form .wrapper .smart-field input[type="number"],
  .flat-form .wrapper .smart-field input[type="search"],
  .flat-form .wrapper .smart-field input[type="tel"],
  .flat-form .wrapper .smart-field input[type="time"],
  .flat-form .wrapper .smart-field input[type="url"],
  .flat-form .wrapper .smart-field input[type="color"],
  .flat-form .wrapper .smart-field textarea,
  .flat-form .wrapper .holder select,
  .flat-form .wrapper .holder input[type="text"],
  .flat-form .wrapper .holder input[type="password"],
  .flat-form .wrapper .holder input[type="date"],
  .flat-form .wrapper .holder input[type="datetime"],
  .flat-form .wrapper .holder input[type="datetime-local"],
  .flat-form .wrapper .holder input[type="month"],
  .flat-form .wrapper .holder input[type="week"],
  .flat-form .wrapper .holder input[type="email"],
  .flat-form .wrapper .holder input[type="number"],
  .flat-form .wrapper .holder input[type="search"],
  .flat-form .wrapper .holder input[type="tel"],
  .flat-form .wrapper .holder input[type="time"],
  .flat-form .wrapper .holder input[type="url"],
  .flat-form .wrapper .holder input[type="color"],
  .flat-form .wrapper .holder textarea {
    float: left;
    font-size: 1.2rem;
    border-radius: 0.3rem;
    border: 1px solid #DDD; }
    @media screen and (min-width: 40em) {
      .flat-form form .smart-field select,
      .flat-form form .smart-field input[type="text"],
      .flat-form form .smart-field input[type="password"],
      .flat-form form .smart-field input[type="date"],
      .flat-form form .smart-field input[type="datetime"],
      .flat-form form .smart-field input[type="datetime-local"],
      .flat-form form .smart-field input[type="month"],
      .flat-form form .smart-field input[type="week"],
      .flat-form form .smart-field input[type="email"],
      .flat-form form .smart-field input[type="number"],
      .flat-form form .smart-field input[type="search"],
      .flat-form form .smart-field input[type="tel"],
      .flat-form form .smart-field input[type="time"],
      .flat-form form .smart-field input[type="url"],
      .flat-form form .smart-field input[type="color"],
      .flat-form form .smart-field textarea,
      .flat-form form .holder select,
      .flat-form form .holder input[type="text"],
      .flat-form form .holder input[type="password"],
      .flat-form form .holder input[type="date"],
      .flat-form form .holder input[type="datetime"],
      .flat-form form .holder input[type="datetime-local"],
      .flat-form form .holder input[type="month"],
      .flat-form form .holder input[type="week"],
      .flat-form form .holder input[type="email"],
      .flat-form form .holder input[type="number"],
      .flat-form form .holder input[type="search"],
      .flat-form form .holder input[type="tel"],
      .flat-form form .holder input[type="time"],
      .flat-form form .holder input[type="url"],
      .flat-form form .holder input[type="color"],
      .flat-form form .holder textarea,
      .flat-form .wrapper .smart-field select,
      .flat-form .wrapper .smart-field input[type="text"],
      .flat-form .wrapper .smart-field input[type="password"],
      .flat-form .wrapper .smart-field input[type="date"],
      .flat-form .wrapper .smart-field input[type="datetime"],
      .flat-form .wrapper .smart-field input[type="datetime-local"],
      .flat-form .wrapper .smart-field input[type="month"],
      .flat-form .wrapper .smart-field input[type="week"],
      .flat-form .wrapper .smart-field input[type="email"],
      .flat-form .wrapper .smart-field input[type="number"],
      .flat-form .wrapper .smart-field input[type="search"],
      .flat-form .wrapper .smart-field input[type="tel"],
      .flat-form .wrapper .smart-field input[type="time"],
      .flat-form .wrapper .smart-field input[type="url"],
      .flat-form .wrapper .smart-field input[type="color"],
      .flat-form .wrapper .smart-field textarea,
      .flat-form .wrapper .holder select,
      .flat-form .wrapper .holder input[type="text"],
      .flat-form .wrapper .holder input[type="password"],
      .flat-form .wrapper .holder input[type="date"],
      .flat-form .wrapper .holder input[type="datetime"],
      .flat-form .wrapper .holder input[type="datetime-local"],
      .flat-form .wrapper .holder input[type="month"],
      .flat-form .wrapper .holder input[type="week"],
      .flat-form .wrapper .holder input[type="email"],
      .flat-form .wrapper .holder input[type="number"],
      .flat-form .wrapper .holder input[type="search"],
      .flat-form .wrapper .holder input[type="tel"],
      .flat-form .wrapper .holder input[type="time"],
      .flat-form .wrapper .holder input[type="url"],
      .flat-form .wrapper .holder input[type="color"],
      .flat-form .wrapper .holder textarea {
        width: 33%; } }
    .flat-form form .smart-field select:focus,
    .flat-form form .smart-field input[type="text"]:focus,
    .flat-form form .smart-field input[type="password"]:focus,
    .flat-form form .smart-field input[type="date"]:focus,
    .flat-form form .smart-field input[type="datetime"]:focus,
    .flat-form form .smart-field input[type="datetime-local"]:focus,
    .flat-form form .smart-field input[type="month"]:focus,
    .flat-form form .smart-field input[type="week"]:focus,
    .flat-form form .smart-field input[type="email"]:focus,
    .flat-form form .smart-field input[type="number"]:focus,
    .flat-form form .smart-field input[type="search"]:focus,
    .flat-form form .smart-field input[type="tel"]:focus,
    .flat-form form .smart-field input[type="time"]:focus,
    .flat-form form .smart-field input[type="url"]:focus,
    .flat-form form .smart-field input[type="color"]:focus,
    .flat-form form .smart-field textarea:focus,
    .flat-form form .holder select:focus,
    .flat-form form .holder input[type="text"]:focus,
    .flat-form form .holder input[type="password"]:focus,
    .flat-form form .holder input[type="date"]:focus,
    .flat-form form .holder input[type="datetime"]:focus,
    .flat-form form .holder input[type="datetime-local"]:focus,
    .flat-form form .holder input[type="month"]:focus,
    .flat-form form .holder input[type="week"]:focus,
    .flat-form form .holder input[type="email"]:focus,
    .flat-form form .holder input[type="number"]:focus,
    .flat-form form .holder input[type="search"]:focus,
    .flat-form form .holder input[type="tel"]:focus,
    .flat-form form .holder input[type="time"]:focus,
    .flat-form form .holder input[type="url"]:focus,
    .flat-form form .holder input[type="color"]:focus,
    .flat-form form .holder textarea:focus,
    .flat-form .wrapper .smart-field select:focus,
    .flat-form .wrapper .smart-field input[type="text"]:focus,
    .flat-form .wrapper .smart-field input[type="password"]:focus,
    .flat-form .wrapper .smart-field input[type="date"]:focus,
    .flat-form .wrapper .smart-field input[type="datetime"]:focus,
    .flat-form .wrapper .smart-field input[type="datetime-local"]:focus,
    .flat-form .wrapper .smart-field input[type="month"]:focus,
    .flat-form .wrapper .smart-field input[type="week"]:focus,
    .flat-form .wrapper .smart-field input[type="email"]:focus,
    .flat-form .wrapper .smart-field input[type="number"]:focus,
    .flat-form .wrapper .smart-field input[type="search"]:focus,
    .flat-form .wrapper .smart-field input[type="tel"]:focus,
    .flat-form .wrapper .smart-field input[type="time"]:focus,
    .flat-form .wrapper .smart-field input[type="url"]:focus,
    .flat-form .wrapper .smart-field input[type="color"]:focus,
    .flat-form .wrapper .smart-field textarea:focus,
    .flat-form .wrapper .holder select:focus,
    .flat-form .wrapper .holder input[type="text"]:focus,
    .flat-form .wrapper .holder input[type="password"]:focus,
    .flat-form .wrapper .holder input[type="date"]:focus,
    .flat-form .wrapper .holder input[type="datetime"]:focus,
    .flat-form .wrapper .holder input[type="datetime-local"]:focus,
    .flat-form .wrapper .holder input[type="month"]:focus,
    .flat-form .wrapper .holder input[type="week"]:focus,
    .flat-form .wrapper .holder input[type="email"]:focus,
    .flat-form .wrapper .holder input[type="number"]:focus,
    .flat-form .wrapper .holder input[type="search"]:focus,
    .flat-form .wrapper .holder input[type="tel"]:focus,
    .flat-form .wrapper .holder input[type="time"]:focus,
    .flat-form .wrapper .holder input[type="url"]:focus,
    .flat-form .wrapper .holder input[type="color"]:focus,
    .flat-form .wrapper .holder textarea:focus {
      border: 1px solid lignten(#dd3333, 10%); }
  .flat-form form .smart-field input[type="radio"],
  .flat-form form .holder input[type="radio"],
  .flat-form .wrapper .smart-field input[type="radio"],
  .flat-form .wrapper .holder input[type="radio"] {
    margin: 0.8rem 0.4rem 1rem; }
  .flat-form form .smart-field select,
  .flat-form form .holder select,
  .flat-form .wrapper .smart-field select,
  .flat-form .wrapper .holder select {
    height: 3rem; }
  .flat-form form .smart-field.smart-error input,
  .flat-form form .holder.smart-error input,
  .flat-form .wrapper .smart-field.smart-error input,
  .flat-form .wrapper .holder.smart-error input {
    border-color: red; }
  .flat-form form .smart-field.smart-error .error-message,
  .flat-form form .holder.smart-error .error-message,
  .flat-form .wrapper .smart-field.smart-error .error-message,
  .flat-form .wrapper .holder.smart-error .error-message {
    color: red;
    font-style: italic;
    margin-left: 1em; }
  .flat-form form .smart-field.error select,
  .flat-form form .smart-field.error input,
  .flat-form form .holder.error select,
  .flat-form form .holder.error input,
  .flat-form .wrapper .smart-field.error select,
  .flat-form .wrapper .smart-field.error input,
  .flat-form .wrapper .holder.error select,
  .flat-form .wrapper .holder.error input {
    border-color: red;
    margin-bottom: 1rem; }
  .flat-form form .smart-field.error small.error,
  .flat-form form .holder.error small.error,
  .flat-form .wrapper .smart-field.error small.error,
  .flat-form .wrapper .holder.error small.error {
    margin-left: 1em;
    float: left;
    font-style: italic;
    color: red;
    background-color: transparent; }
  .flat-form form .smart-field .inline-radio,
  .flat-form form .holder .inline-radio,
  .flat-form .wrapper .smart-field .inline-radio,
  .flat-form .wrapper .holder .inline-radio {
    float: left; }
    .flat-form form .smart-field .inline-radio label,
    .flat-form form .holder .inline-radio label,
    .flat-form .wrapper .smart-field .inline-radio label,
    .flat-form .wrapper .holder .inline-radio label {
      width: auto;
      padding-right: 0; }
  .flat-form form .smart-field.holder-inline-radio ul,
  .flat-form form .holder.holder-inline-radio ul,
  .flat-form .wrapper .smart-field.holder-inline-radio ul,
  .flat-form .wrapper .holder.holder-inline-radio ul {
    margin-left: 0;
    float: left; }
    @media screen and (min-width: 40em) {
      .flat-form form .smart-field.holder-inline-radio ul,
      .flat-form form .holder.holder-inline-radio ul,
      .flat-form .wrapper .smart-field.holder-inline-radio ul,
      .flat-form .wrapper .holder.holder-inline-radio ul {
        width: 33%; } }
    .flat-form form .smart-field.holder-inline-radio ul li,
    .flat-form form .holder.holder-inline-radio ul li,
    .flat-form .wrapper .smart-field.holder-inline-radio ul li,
    .flat-form .wrapper .holder.holder-inline-radio ul li {
      float: left;
      list-style-type: none;
      line-height: 1; }
      .flat-form form .smart-field.holder-inline-radio ul li label,
      .flat-form form .holder.holder-inline-radio ul li label,
      .flat-form .wrapper .smart-field.holder-inline-radio ul li label,
      .flat-form .wrapper .holder.holder-inline-radio ul li label {
        width: auto;
        padding-right: 0;
        padding-bottom: 0;
        line-height: 1; }
      .flat-form form .smart-field.holder-inline-radio ul li input,
      .flat-form form .holder.holder-inline-radio ul li input,
      .flat-form .wrapper .smart-field.holder-inline-radio ul li input,
      .flat-form .wrapper .holder.holder-inline-radio ul li input {
        margin-bottom: 15px;
        margin-top: 0; }
  .flat-form form .button-holder,
  .flat-form .wrapper .button-holder {
    padding: 1rem 0;
    text-align: center; }
  .flat-form form fieldset,
  .flat-form form .fieldset,
  .flat-form .wrapper fieldset,
  .flat-form .wrapper .fieldset {
    margin: 0;
    padding: 2rem 2.5rem;
    background-color: #8a8a8a;
    border: 0; }
    .flat-form form fieldset fieldset,
    .flat-form form .fieldset fieldset,
    .flat-form .wrapper fieldset fieldset,
    .flat-form .wrapper .fieldset fieldset {
      margin: 0;
      padding: 2rem 0rem; }
    .flat-form form fieldset .legend,
    .flat-form form .fieldset .legend,
    .flat-form .wrapper fieldset .legend,
    .flat-form .wrapper .fieldset .legend {
      margin: 0 0 2.5rem;
      font-size: 1.5rem;
      font-weight: 600;
      color: #8a8a8a;
      border-bottom: 1px solid #8a8a8a;
      line-height: 1;
      padding-bottom: 5px; }
    .flat-form form fieldset + fieldset,
    .flat-form form fieldset + div,
    .flat-form form .fieldset + fieldset,
    .flat-form form .fieldset + div,
    .flat-form .wrapper fieldset + fieldset,
    .flat-form .wrapper fieldset + div,
    .flat-form .wrapper .fieldset + fieldset,
    .flat-form .wrapper .fieldset + div {
      border-top: 0.25rem solid #f7f7f7; }
  .flat-form form .gerance fieldset,
  .flat-form .wrapper .gerance fieldset {
    padding-bottom: 4rem; }
  .flat-form.no-fieldsets {
    background-color: #8a8a8a;
    border: 0; }

.fieldsetSearch {
  border: 0;
  padding: 0; }
  .fieldsetSearch legend {
    display: none; }

/*
 * 
 * Pagination
 * 
 */
ul.pagination {
  border-top: 4px #E0E0E0 solid;
  margin-top: 1rem;
  padding-top: 1rem;
  float: left;
  width: 100%;
  clear: both; }
  ul.pagination li {
    font-size: 1.3rem;
    font-weight: 400; }
    ul.pagination li a, ul.pagination li span {
      display: block;
      float: left;
      border: #8a8a8a 1px solid;
      background: #0a0a0a;
      color: #f7f7f7;
      padding: 0.1rem 0.4rem;
      margin-top: 0.4rem; }
    ul.pagination li.active a, ul.pagination li.active span {
      border: #8a8a8a 1px solid;
      background: #dd3333;
      color: #f7f7f7; }
    ul.pagination li.disabled {
      padding: 0px;
      padding-right: 0.625rem;
      padding-left: 0.625rem; }

/*
 * Common addons
 */
*:focus {
  outline: 0; }

.relative-position {
  position: relative; }

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

img.expanded {
  width: 100%;
  height: auto; }

.row.row-fluid {
  max-width: 100%; }
  .row.row-fluid .row {
    margin: auto;
    max-width: 75rem;
    margin-left: auto;
    margin-right: auto; }
    .row.row-fluid .row::before, .row.row-fluid .row::after {
      content: ' ';
      display: table; }
    .row.row-fluid .row::after {
      clear: both; }
    .row.row-fluid .row.row-fluid {
      max-width: 100%; }

/* vertspace for a top and bottom margin*/
.vertSpace {
  padding-bottom: 1rem;
  padding-top: 1rem; }

.vertSpaceX2 {
  padding-bottom: 2rem;
  padding-top: 2rem; }

@media screen and (min-width: 75em) {
  .marginTopLarge {
    margin-top: 1rem; } }

.emphatism {
  text-transform: uppercase;
  font-style: italic; }

.capitunder {
  text-transform: uppercase;
  text-decoration: underline; }

.lineUnder {
  position: relative; }
  .lineUnder:after {
    content: '';
    background: #000;
    width: 3rem;
    height: 3px;
    position: absolute;
    bottom: -0.5rem;
    left: 50%;
    -ms-transform: translate(-50%, 0%);
    transform: translate(-50%, 0%); }

.unpadded {
  padding: 0; }

.unmargin {
  margin: 0; }

.columns.unpadded {
  padding: 0; }

@media screen and (max-width: 39.9375em) {
  .columns.small-unpadded {
    padding: 0; } }

@media screen and (min-width: 40em) and (max-width: 63.9375em) {
  .columns.medium-unpadded {
    padding: 0; } }

@media screen and (min-width: 64em) and (max-width: 74.9375em) {
  .columns.large-unpadded {
    padding: 0; } }

body.modal-open {
  overflow: hidden;
  min-height: 100vh; }

.relative {
  position: relative; }

.unmarged {
  margin: 0; }

/*
 * Supplementary divider classes
 */
.row.divider {
  margin-bottom: 0.625rem; }
  @media screen and (min-width: 40em) {
    .row.divider {
      margin-bottom: 1.875rem; } }

.columns.divider {
  margin-bottom: 0.3125rem; }
  @media screen and (min-width: 40em) {
    .columns.divider {
      margin-bottom: 0; } }

img.divider {
  margin-bottom: 1rem; }

/*
 * Visually transform a dropdown button in.to a select list with vertical
 * scrollbar. This is useful for long list items that can impact on page size
 */
.f-dropdown.overflow {
  overflow: auto;
  height: 200px; }
  .f-dropdown.overflow.overflow-100 {
    height: 100px; }
  .f-dropdown.overflow.overflow-150 {
    height: 150px; }
  .f-dropdown.overflow.overflow-200 {
    height: 200px; }
  .f-dropdown.overflow.overflow-250 {
    height: 250px; }
  .f-dropdown.overflow.overflow-300 {
    height: 300px; }

.smallrounded {
  border-radius: 6px;
  overflow: hidden;
  z-index: 0; }

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

.bottomRightabs {
  bottom: 0%;
  right: 0%;
  position: absolute; }

.bottomabs {
  bottom: 0%;
  left: 0%;
  position: absolute; }

.margin {
  margin: 1.5rem; }

.round {
  border-radius: 500px; }

.button.blackbutton {
  background: #0a0a0a; }
  .button.blackbuttonhover {
    background: #dd3333; }

.is-active {
  background: #DDD; }

.input-group .start, .input-group .end {
  width: 48%;
  float: left; }

.input-group .input-group-addon {
  width: auto;
  text-align: center;
  float: left;
  white-space: nowrap; }

.box {
  position: relative;
  top: 0;
  opacity: 1;
  float: left;
  padding: 60px 50px 40px 50px;
  width: 100%;
  background: #fff;
  border-radius: 10px;
  transform: scale(1);
  -webkit-transform: scale(1);
  -ms-transform: scale(1);
  z-index: 5; }
  .box.back {
    transform: scale(0.95);
    -webkit-transform: scale(0.95);
    -ms-transform: scale(0.95);
    top: -20px;
    opacity: .8;
    z-index: -1; }
  .box:before {
    content: "";
    width: 100%;
    height: 30px;
    border-radius: 10px;
    position: absolute;
    top: -10px;
    background: rgba(255, 255, 255, 0.6);
    left: 0;
    transform: scale(0.95);
    -webkit-transform: scale(0.95);
    -ms-transform: scale(0.95);
    z-index: -1; }

.overbox .title {
  color: #fff; }
  .overbox .title:before {
    background: #fff; }

.materialContainer .title {
  width: 100%;
  float: left;
  line-height: 46px;
  font-size: 34px;
  font-weight: 700;
  letter-spacing: 2px;
  color: #ED2553;
  position: relative; }
  .materialContainer .title:before {
    content: "";
    width: 5px;
    height: 100%;
    position: absolute;
    top: 0;
    left: -50px;
    background: #ED2553; }

.materialContainer .input {
  transition: 300ms cubic-bezier(0.4, 0, 0.2, 1);
  -webkit-transition: 300ms cubic-bezier(0.4, 0, 0.2, 1);
  -ms-transition: 300ms cubic-bezier(0.4, 0, 0.2, 1); }
  .materialContainer .input label, .materialContainer .input input, .materialContainer .input .spin {
    transition: 300ms cubic-bezier(0.4, 0, 0.2, 1);
    -webkit-transition: 300ms cubic-bezier(0.4, 0, 0.2, 1);
    -ms-transition: 300ms cubic-bezier(0.4, 0, 0.2, 1); }

.materialContainer .button {
  transition: 300ms cubic-bezier(0.4, 0, 0.2, 1);
  -webkit-transition: 300ms cubic-bezier(0.4, 0, 0.2, 1);
  -ms-transition: 300ms cubic-bezier(0.4, 0, 0.2, 1); }
  .materialContainer .button button .button.login button i.fa {
    transition: 300ms cubic-bezier(0.4, 0, 0.2, 1);
    -webkit-transition: 300ms cubic-bezier(0.4, 0, 0.2, 1);
    -ms-transition: 300ms cubic-bezier(0.4, 0, 0.2, 1); }

.materialContainer .material-button .shape:before, .materialContainer .material-button .shape:after {
  transition: 300ms cubic-bezier(0.4, 0, 0.2, 1);
  -webkit-transition: 300ms cubic-bezier(0.4, 0, 0.2, 1);
  -ms-transition: 300ms cubic-bezier(0.4, 0, 0.2, 1); }

.materialContainer .button.login button {
  transition: 300ms cubic-bezier(0.4, 0, 0.2, 1);
  -webkit-transition: 300ms cubic-bezier(0.4, 0, 0.2, 1);
  -ms-transition: 300ms cubic-bezier(0.4, 0, 0.2, 1); }

.material-button, .alt-2, .material-button .shape, .alt-2 .shape, .box {
  transition: 400ms cubic-bezier(0.4, 0, 0.2, 1);
  -webkit-transition: 400ms cubic-bezier(0.4, 0, 0.2, 1);
  -ms-transition: 400ms cubic-bezier(0.4, 0, 0.2, 1); }

.materialContainer input:-webkit-autofill {
  background-color: #f7f7f7 !important; }

.materialContainer .input {
  width: 100%;
  float: left; }
  .materialContainer .input label, .materialContainer .input input, .materialContainer .input .spin {
    width: 100%;
    float: left; }
    .materialContainer .input label:-webkit-autofill, .materialContainer .input input:-webkit-autofill, .materialContainer .input .spin:-webkit-autofill {
      background-color: #000; }

.materialContainer .button {
  width: 100%;
  float: left; }
  .materialContainer .button button {
    width: 100%;
    float: left; }

.materialContainer .input, .materialContainer .button {
  margin-top: 30px;
  height: auto; }

.materialContainer .input {
  position: relative; }
  .materialContainer .input input {
    position: relative; }

.materialContainer .button {
  position: relative; }
  .materialContainer .button button {
    position: relative; }

.materialContainer .input input {
  height: 60px;
  top: 10px;
  border: none;
  background: transparent;
  font-size: 24px;
  color: rgba(0, 0, 0, 0.8);
  font-weight: 300; }

.materialContainer .input input[type="text"], .materialContainer .input input[type="password"] {
  box-shadow: 0 0 0 rgba(0, 0, 0, 0); }
  .materialContainer .input input[type="text"]:focus, .materialContainer .input input[type="password"]:focus {
    border: 0;
    box-shadow: 0 0 0 rgba(0, 0, 0, 0); }

.materialContainer .input label {
  font-size: 24px;
  color: rgba(0, 0, 0, 0.8);
  font-weight: 300; }

.materialContainer .button button {
  padding: 0;
  font-size: 24px;
  color: rgba(0, 0, 0, 0.8);
  font-weight: 300; }

.materialContainer .input:before, .materialContainer .input .spin {
  width: 100%;
  height: 1px;
  position: absolute;
  bottom: 0;
  left: 0; }

.materialContainer .input:before {
  content: "";
  background: rgba(0, 0, 0, 0.1);
  z-index: 3; }

.materialContainer .input .spin {
  background: #ED2553;
  z-index: 4;
  width: 0; }

.overbox .input .spin {
  background: white; }

.overbox .input:before {
  background: rgba(255, 255, 255, 0.5); }

.materialContainer .input label {
  position: absolute;
  top: 10px;
  left: 0;
  z-index: 2;
  cursor: pointer;
  line-height: 60px;
  background-color: #FFF; }

.materialContainer .button {
  margin-top: 20px;
  margin: 40px 0;
  overflow: hidden;
  z-index: 2; }
  .materialContainer .button.login {
    width: 60%;
    left: 20%;
    padding: 0; }
    .materialContainer .button.login button {
      width: 100%;
      line-height: 64px;
      left: 0%;
      background-color: transparent;
      border: 3px solid rgba(0, 0, 0, 0.1);
      font-weight: 900;
      font-size: 18px;
      color: rgba(0, 0, 0, 0.2); }
  .materialContainer .button button {
    width: 100%;
    line-height: 64px;
    left: 0%;
    background-color: transparent;
    border: 3px solid rgba(0, 0, 0, 0.1);
    font-weight: 900;
    font-size: 18px;
    color: rgba(0, 0, 0, 0.2); }
  .materialContainer .button.login {
    margin-top: 30px; }
  .materialContainer .button button {
    background-color: #fff;
    color: #ED2553;
    border: none; }
  .materialContainer .button.login button.active {
    border: 3px solid transparent;
    color: #fff !important; }
    .materialContainer .button.login button.active span {
      opacity: 0;
      transform: scale(0);
      -webkit-transform: scale(0);
      -ms-transform: scale(0); }
    .materialContainer .button.login button.active i.fa {
      opacity: 1;
      transform: scale(1) rotate(0deg);
      -webkit-transform: scale(1) rotate(0deg);
      -ms-transform: scale(1) rotate(0deg); }
  .materialContainer .button.login button i.fa {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    line-height: 60px;
    transform: scale(0) rotate(-45deg);
    -webkit-transform: scale(0) rotate(-45deg);
    -ms-transform: scale(0) rotate(-45deg); }
  .materialContainer .button.login button:hover {
    color: #ED2553;
    border-color: #ED2553; }
  .materialContainer .button button {
    cursor: pointer;
    position: relative;
    z-index: 2; }

.pass-forgot {
  width: 100%;
  float: left;
  text-align: center;
  color: rgba(0, 0, 0, 0.4);
  font-size: 14px; }

.click-efect {
  position: absolute;
  top: 0;
  left: 0;
  background: #ED2553;
  border-radius: 50%; }

.overbox {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  overflow: inherit;
  border-radius: 10px;
  padding: 60px 50px 40px 50px; }
  .overbox .title, .overbox .button, .overbox .input {
    z-index: 111;
    position: relative;
    color: #fff !important;
    display: none; }
  .overbox .title {
    width: 80%; }
  .overbox .input {
    margin-top: 20px;
    border: 0;
    box-shadow: 0 0 0 rgba(0, 0, 0, 0); }
    .overbox .input:focus {
      border: 0;
      box-shadow: 0 0 0 rgba(0, 0, 0, 0); }
    .overbox .input label {
      background-color: #dd3333; }
    .overbox .input input, .overbox .input label {
      color: #f7f7f7; }
  .overbox .material-button, .overbox .alt-2 {
    display: block; }
    .overbox .material-button .shape, .overbox .alt-2 .shape {
      display: block; }

.material-button, .alt-2 {
  width: 100px;
  height: 100px;
  border-radius: 50%;
  background: #ED2553;
  position: absolute;
  top: 40px;
  right: -40px;
  cursor: pointer;
  z-index: 100;
  transform: translate(0%, 0%);
  -webkit-transform: translate(0%, 0%);
  -ms-transform: translate(0%, 0%); }
  .material-button .shape, .alt-2 .shape {
    position: absolute;
    top: 0;
    right: 0;
    width: 100%;
    height: 100%; }
    .material-button .shape:before, .material-button .shape:after, .alt-2 .shape:before, .alt-2 .shape:after {
      content: "";
      background: #fff;
      position: absolute;
      top: 50%;
      left: 50%;
      width: 25px;
      height: 4px;
      transform: translate(-50%, -50%) rotate(360deg);
      -webkit-transform: translate(-50%, -50%) rotate(360deg);
      -ms-transform: translate(-50%, -50%) rotate(360deg); }
    .material-button .shape:before, .alt-2 .shape:before {
      width: 25px;
      height: 4px; }
    .material-button .shape:after, .alt-2 .shape:after {
      width: 4px;
      height: 25px; }
  .material-button.active, .alt-2.active {
    top: 50%;
    right: 50%;
    transform: translate(50%, -50%) rotate(0deg);
    -webkit-transform: translate(50%, -50%) rotate(0deg);
    -ms-transform: translate(50%, -50%) rotate(0deg); }

.materialContainer {
  width: 100%;
  max-width: 460px;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%); }

.reveal-modal .close-reveal-modal {
  color: #dd3333;
  cursor: pointer;
  font-size: 2.5rem;
  font-weight: 900;
  position: absolute;
  top: -1.625rem;
  right: -1.375rem;
  background: #f7f7f7;
  display: block;
  width: 3rem;
  height: 3rem;
  text-align: center;
  border-radius: 500px;
  line-height: 2.6rem; }

.close-reveal-modal {
  display: none; }

.clear {
  clear: both; }

@media screen and (max-width: 74.9375em) {
  .unpadded-small {
    padding: 0; } }

[data-link]:hover {
  cursor: pointer; }

.circle-icon {
  border: 1px solid rgba(255, 255, 255, 0.5);
  border-radius: 50%;
  padding: 4px;
  display: block;
  margin: 4px;
  background: rgba(0, 0, 0, 0.82);
  width: 4rem;
  height: 4rem; }
  .circle-icon:before {
    line-height: 3.4rem; }

.circle-social {
  border: 2px solid #000;
  border-radius: 50%;
  padding: 4px;
  display: block;
  margin: 4px;
  color: #000; }

.button.full {
  width: calc(100% - 3px);
  margin: 1px;
  margin-bottom: 2px; }

#langChooser {
  position: relative; }
  #langChooser a {
    padding-left: 2rem;
    padding-right: 1rem; }
    #langChooser a:before {
      top: -2px;
      left: 2px; }
  #langChooser .showinUP {
    width: 100%;
    opacity: 0;
    z-index: -10;
    overflow: hidden;
    position: absolute;
    bottom: 100%;
    border-bottom: 0;
    border-left: 0; }
    #langChooser .showinUP a {
      width: 100%; }
    #langChooser .showinUP .range-slider.vertical-range {
      position: relative;
      left: 50%; }
    #langChooser .showinUP .range-slider-handle, #langChooser .showinUP .range-slider-handle:hover {
      height: 1.9rem;
      width: 1.9rem;
      border-radius: 1.9rem; }
    #langChooser .showinUP .range-slider-active-segment, #langChooser .showinUP .range-slider.vertical-range {
      border-radius: 2rem; }
  #langChooser:hover .showinUP {
    opacity: 1;
    z-index: 1; }

.full-width {
  max-width: 100%; }

.onglets {
  margin: 0;
  list-style-type: none;
  background: #f7f7f7;
  border: 1px solid #E0E0E0;
  border: none;
  background: #575757; }
  .onglets::before, .onglets::after {
    content: ' ';
    display: table; }
  .onglets::after {
    clear: both; }
  .onglets .tab {
    padding: 0.2rem 1rem;
    background: #8a8a8a, 20%;
    float: left;
    color: #f7f7f7; }
    .onglets .tab > a {
      display: block;
      padding: 1.25rem 1.5rem;
      line-height: 1;
      font-size: 0.75rem; }
      .onglets .tab > a:hover {
        background: #f7f7f7; }
      .onglets .tab > a:focus, .onglets .tab > a[aria-selected='true'] {
        background: #E0E0E0; }
    .onglets .tab.selectionned {
      background: #f7f7f7;
      color: #0a0a0a; }
      .onglets .tab.selectionned:hover {
        background: #f7f7f7;
        cursor: pointer; }
    .onglets .tab:hover {
      background: #0a0a0a;
      cursor: pointer; }

.is-dropdown-submenu {
  z-index: 100; }

/* Autocomplete
----------------------------------*/
.ui-autocomplete {
  position: absolute;
  cursor: default;
  z-index: 20; }

.ui-autocomplete-loading {
  background: white url("images/ui-anim_basic_16x16.gif") right center no-repeat; }

.ui-helper-hidden-accessible {
  display: none; }

/* workarounds */
* html .ui-autocomplete {
  width: 1px; }

/* without this, the menu expands to 100% in IE6 */
/* Menu
----------------------------------*/
.ui-menu {
  list-style: none;
  padding: 10px;
  margin: 0;
  display: block;
  width: auto;
  background: #FDFEFF;
  border: 1px solid #0a0a0a; }

.ui-menu .ui-menu {
  margin-top: -3px; }

.ui-menu .ui-menu-item {
  margin: 0;
  padding: 0;
  width: auto;
  border-bottom: 1px solid #E0E0E0; }
  .ui-menu .ui-menu-item:hover {
    color: #dd3333; }

.ui-menu .ui-menu-item a {
  text-decoration: none;
  display: block;
  padding: .2em .4em;
  line-height: 1.5;
  zoom: 1; }

.ui-menu .ui-menu-item a.ui-state-hover,
.ui-menu .ui-menu-item a.ui-state-active {
  margin: -1px; }

/****** results *******/
.results.media-list {
  float: left;
  width: 100%;
  margin-top: 1rem;
  padding-top: 1rem; }
  .results.media-list .media {
    padding: 0.64rem;
    border-top: 1px dashed #DDD;
    display: -ms-flexbox;
    display: flex; }
    .results.media-list .media .figure {
      margin-right: 0.64rem; }
      .results.media-list .media .figure img {
        min-width: 240px; }

#global-aside {
  position: relative; }

div.table-container {
  width: 100%; }

.library .header {
  margin: 15px 0; }

.library .thumbnails img {
  margin: 10px 0; }

.library .menu-thumbnails {
  text-align: left; }

.reader {
  text-align: center;
  padding-top: 2rem;
  padding-bottom: 2rem; }
  .reader .btn-group {
    margin-bottom: 5px; }
    .reader .btn-group.moreForimg .button {
      font-size: 1.8rem;
      padding: 0.4rem; }
      .reader .btn-group.moreForimg .button.zoom {
        margin-right: 0; }
  .reader .row {
    margin: 0; }
    .reader .row .prev, .reader .row .next, .reader .row .spinner-container, .reader .row .img-container {
      height: 800px;
      line-height: 800px;
      vertical-align: middle; }
    .reader .row .main-container {
      padding: 0;
      position: relative;
      background: #0a0a0a; }
    .reader .row .spinner-container {
      position: absolute;
      width: 100%;
      text-shadow: 0 0 40px white;
      display: none; }
    .reader .row .img-container.zoomed {
      overflow: scroll; }
      .reader .row .img-container.zoomed img {
        max-width: none;
        max-height: none;
        cursor: zoom-out; }
        .reader .row .img-container.zoomed img.dragged {
          cursor: move; }
    .reader .row .img-container img {
      max-width: 100%;
      max-height: 100%;
      cursor: zoom-in; }
  .reader .page-form {
    width: 100px;
    margin: 8px auto 2rem / 2; }
    .reader .page-form input[name='page'] {
      text-align: right; }

#offensive-modal {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 30;
  color: #f7f7f7;
  background-color: #0a0a0a; }
  #offensive-modal main {
    position: relative;
    top: 50%;
    -ms-transform: translateY(-50%);
        transform: translateY(-50%);
    width: 100%; }
    #offensive-modal main h1, #offensive-modal main .title-1, #offensive-modal main p {
      text-align: center; }
      #offensive-modal main h1 a, #offensive-modal main .title-1 a, #offensive-modal main p a {
        padding: 2rem; }

#numberpage {
  width: auto; }
  #numberpage #page_number {
    width: 90px;
    float: left; }
  #numberpage .input-group-addon {
    display: inline-block;
    float: left;
    line-height: 2.4375rem;
    padding-left: 0.6rem; }

.isMobile .homban_vid {
  display: none; }

.isMobile .homban_img {
  display: block; }

.homban_img {
  min-width: 100%;
  height: 50vh;
  position: relative;
  display: none; }
  .homban_img img {
    position: absolute; }

dl.dl-horizontal {
  margin-bottom: 1rem;
  display: block;
  width: 100%;
  float: left; }
  dl.dl-horizontal dt {
    margin-bottom: 0.3rem;
    float: left;
    clear: left;
    color: #666;
    width: 12rem; }
    dl.dl-horizontal dt:after {
      content: ' : '; }
  dl.dl-horizontal dd {
    margin-bottom: 0.3rem;
    float: left;
    margin-left: 0.4rem;
    width: calc(100% - 15rem); }

dl.dl-horizontal-tight {
  margin-bottom: 1rem;
  display: block;
  width: 100%;
  float: left; }
  dl.dl-horizontal-tight dt {
    margin-bottom: 0.3rem;
    float: left;
    clear: left;
    color: #666;
    width: 8rem; }
    dl.dl-horizontal-tight dt:after {
      content: ' : '; }
  dl.dl-horizontal-tight dd {
    margin-bottom: 0.3rem;
    float: left;
    margin-left: 0.4rem;
    width: calc(100% - 15rem); }

/*
 *
 * All stuff for footer
 *
 */
.footer {
  float: left;
  margin: 1rem;
  background-color: #ECECEF;
  padding: 2rem 1rem;
  text-align: left; }
  .footer i {
    font-size: 100px; }

.footer p, .footer a {
  font-weight: 300;
  font-size: .8em; }

.footer h5:before, .footer .rst h4:before, .rst .footer h4:before, .footer .rst h3:before, .rst .footer h3:before, .footer .rst .h3:before, .rst .footer .h3:before, .footer .rst h2:before, .rst .footer h2:before, .footer .rst h1:before, .rst .footer h1:before, .footer .rst .title-1:before, .rst .footer .title-1:before, .footer .rst .title-2:before, .rst .footer .title-2:before, .footer .rst .title-3:before, .rst .footer .title-3:before, .footer .rst .title-4:before, .rst .footer .title-4:before, .footer .title-5:before {
  display: none; }

.footer-links {
  margin-left: 0.25rem;
  list-style-type: none; }
  .footer-links li {
    margin-top: .1em; }
    .footer-links li a {
      text-transform: uppercase; }

.prefooter a:hover {
  color: #f7f7f7 !important; }

#prefooter {
  mix-blend-mode: multiply;
  position: relative;
  overflow: hidden;
  background: #0a0a0a; }
  #prefooter:after {
    content: image-url("theme/paper.png");
    position: absolute;
    right: 0;
    bottom: 0;
    height: 100%;
    max-height: 100%;
    z-index: -1;
    opacity: 0.4; }
  #prefooter .circleIco + p {
    color: #f7f7f7; }
  #prefooter #preFooterIcons .columns {
    margin-bottom: 0.6rem; }
  #prefooter #preFooterIcons .more p {
    font-size: 1rem;
    font-style: italic; }

footer > .section {
  padding-top: 1rem !important;
  padding-bottom: 1rem !important; }
  footer > .section p, footer > .section li {
    font-size: 1.1rem; }

footer .credits p {
  margin: 0;
  font-size: 1.2rem; }

footer .menu ul {
  margin: 0; }
  @media screen and (min-width: 64em) {
    footer .menu ul {
      float: right; } }
  footer .menu ul li {
    margin: 0; }
    footer .menu ul li > a {
      display: inline-block; }
      footer .menu ul li > a:hover {
        color: #f7f7f7 !important; }
    footer .menu ul li + li {
      padding-left: 1rem; }
      footer .menu ul li + li:before {
        content: "|";
        position: relative;
        left: -0.5rem; }

footer .menu li i {
  font-size: 0.94rem; }

#contentFooter H4 {
  min-height: 4rem; }
  #contentFooter H4 strong {
    display: inline-block;
    float: left; }

.title-bar {
  background: rgba(0, 0, 0, 0.75);
  padding: 0.9rem; }
  @media screen and (max-width: 74.9375em) {
    .title-bar {
      height: 5rem; } }
  @media screen and (max-width: 63.9375em) {
    .title-bar {
      height: 5rem;
      background: #0a0a0a !important; } }
  .title-bar .menu-icon {
    z-index: 10;
    zoom: 2;
    margin-top: 0.4rem; }
  .title-bar .logo {
    float: left;
    display: block; }
    @media screen and (max-width: 74.9375em) {
      .title-bar .logo {
        max-height: 100%; }
        .title-bar .logo img {
          position: absolute;
          height: 3.6rem; } }
  .title-bar .slogan {
    float: left;
    display: block; }
    @media screen and (max-width: 74.9375em) {
      .title-bar .slogan {
        max-width: 60%;
        margin-left: 20%; } }
    .title-bar .slogan .title-4 {
      line-height: 1; }

.title-bar-title {
  background: #0a0a0a;
  position: absolute;
  right: 0;
  top: 0; }
  @media screen and (max-width: 74.9375em) {
    .title-bar-title {
      border: 10px solid #0a0a0a; } }
  @media screen and (max-width: 63.9375em) {
    .title-bar-title {
      width: 7rem;
      border: 10px solid #0a0a0a; } }

.header {
  position: absolute;
  width: calc(100% - ( 1rem * 2 ));
  margin: 1rem;
  z-index: 2; }
  @media screen and (max-width: 63.9375em) {
    .header {
      width: 100%;
      position: relative;
      margin: 0rem; } }
  .header .menu.topbarmenu > li.is-dropdown-submenu-parent a::after {
    top: 70%; }
  @media screen and (min-width: 64em) {
    .header .menu.topbarmenu > li {
      display: block;
      float: left;
      vertical-align: top; }
      .header .menu.topbarmenu > li > a {
        padding-left: 0rem;
        padding-top: 1rem; } }
    @media screen and (min-width: 64em) and (min-width: 64em) {
      .header .menu.topbarmenu > li > a {
        padding-left: 0.9rem;
        padding-top: 1.7rem; } }
  .header .menu.topbarmenu > li.menu-logo {
    padding: 0em;
    display: none !important;
    width: 110px; }
    @media screen and (min-width: 64em) {
      .header .menu.topbarmenu > li.menu-logo {
        display: block  !important; } }
    @media screen and (min-width: 64em) {
      .header .menu.topbarmenu > li.menu-logo {
        width: auto; } }
    .header .menu.topbarmenu > li.menu-logo a {
      padding-top: 0em;
      padding-bottom: 0em;
      padding-left: 0.9rem; }
  .header .signature {
    float: left;
    padding: 1rem;
    display: none; }
    @media screen and (min-width: 64em) {
      .header .signature {
        display: block;
        float: left;
        padding: 0;
        position: absolute;
        top: 3rem;
        left: 7.4rem; } }
    @media screen and (min-width: 64em) {
      .header .signature {
        float: left;
        padding: 1rem;
        position: absolute;
        top: 4rem;
        left: 10.2rem; } }
    .header .signature h1, .header .signature .title-1 {
      color: #f7f7f7;
      text-transform: uppercase;
      font-weight: bold;
      line-height: 1;
      font-size: 1.375rem; }
      @media screen and (min-width: 64em) {
        .header .signature h1, .header .signature .title-1 {
          font-size: 1.75rem; } }
  .header .rightsearch {
    position: absolute;
    z-index: 2;
    right: 1rem;
    top: 1rem; }
  .header.intern {
    background: #0a0a0a;
    position: relative; }
  @media screen and (max-width: 74.9375em) {
    .header .title-bar {
      background: #0a0a0a; } }

.top-bar {
  background: rgba(0, 0, 0, 0.75); }
  @media screen and (max-width: 63.9375em) {
    .top-bar .top-bar-left, .top-bar .top-bar .top-bar-right {
      width: 100%; } }
  .top-bar ul {
    background: transparent; }
    @media screen and (max-width: 63.9375em) {
      .top-bar ul.menu li.has-submenu {
        position: initial; } }
    @media screen and (max-width: 63.9375em) {
      .top-bar ul.menu li {
        display: block; } }
    .top-bar ul.menu li .is-submenu-item {
      background: #0a0a0a; }
    .top-bar ul.menu > li {
      text-transform: uppercase;
      position: relative; }
    .top-bar ul.menu .submenu {
      background: #0a0a0a; }
    .top-bar ul li {
      background: transparent; }
      .top-bar ul li a {
        color: #fff; }

@media screen and (max-width: 74.9375em) {
  #list-menu .is-drilldown {
    max-width: none !important; } }

@media screen and (max-width: 74.9375em) {
  #list-menu .is-drilldown > .menu {
    width: calc(100vw - ( 1rem * 2 )); } }

@media screen and (min-width: 64em) {
  #list-menu, .signature {
    width: calc(100% - 124px - 2rem); } }

.menu-text {
  color: #fff; }
  @media only screen and (max-width: 40em) {
    .menu-text {
      display: none !important; } }

@media only screen and (min-width: 40em) {
  .menu:last-child {
    border-left: 1px solid #4e4e4e; }
  .menu:first-child {
    border-left: none; }
  #list-menu > .menu > li:not(:last-child):after {
    content: '';
    height: 1rem;
    width: 1px;
    background: #dd3333;
    right: 0;
    top: 0.75rem;
    position: absolute; } }

.dropdown.menu .submenu {
  border: none; }

.dropdown.menu .is-dropdown-submenu-parent.is-right-arrow > a::after {
  border-color: #fff transparent transparent; }

.is-drilldown-submenu-parent > a::after {
  border-color: transparent transparent transparent #fff; }

.js-drilldown-back::before {
  border-color: transparent #fff transparent transparent; }

.nav-tabs {
  margin-top: 1rem;
  border: 1px solid #8a8a8a;
  border-bottom: 0; }
  .nav-tabs .tab > a {
    font-size: 1rem;
    color: #f7f7f7; }
    .nav-tabs .tab > a:hover {
      background: transparent; }
  .nav-tabs .tab.selectionned > a {
    color: #dd3333; }

#header .top-bar {
  position: initial;
  display: block; }
  #header .top-bar .input-group {
    padding: 1rem;
    margin: 0rem;
    width: 240px; }
    #header .top-bar .input-group input {
      max-width: none;
      margin: 0; }
  @media screen and (max-width: 63.9375em) {
    #header .top-bar {
      display: -ms-flexbox;
      display: flex;
      position: relative;
      -ms-flex-direction: column-reverse;
          flex-direction: column-reverse; }
      #header .top-bar .language_choose {
        position: absolute;
        top: 1.4rem;
        z-index: 200;
        background: black none repeat scroll 0% 0%;
        height: 2.6rem; }
      #header .top-bar .input-group {
        padding: 1rem;
        margin: 0rem;
        width: 100%; }
        #header .top-bar .input-group input {
          max-width: none;
          margin: 0;
          width: calc(100% - 6rem); } }

.topMedia {
  width: 100%;
  max-height: 75vh;
  position: relative;
  overflow: hidden; }

.topMedia .media {
  max-width: none;
  min-width: 100%;
  max-height: none;
  min-height: 100%;
  position: absolute;
  left: 50%;
  top: 50%;
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%); }

.custom-flex-video-class {
  position: relative;
  height: 0;
  padding-bottom: 56.41749%;
  margin-bottom: 1rem;
  overflow: hidden;
  position: relative; }
  .custom-flex-video-class iframe,
  .custom-flex-video-class object,
  .custom-flex-video-class embed,
  .custom-flex-video-class video {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%; }
  .custom-flex-video-class:before {
    position: absolute;
    z-index: 1;
    display: block;
    content: '';
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.2); }
  @media screen and (min-width: 64em) {
    .custom-flex-video-class iframe {
      top: 0; } }

.headerSlider.slick-slider {
  position: absolute;
  bottom: 0%;
  width: 80%;
  left: 50%;
  z-index: 1;
  -ms-transform: translate(-50%, -40%);
  transform: translate(-50%, -40%); }
  @media screen and (max-width: 63.9375em) {
    .headerSlider.slick-slider .xlarge-25 {
      width: 33%; }
    .headerSlider.slick-slider .medium-75 {
      width: 66%; } }
  @media screen and (min-width: 40em) {
    .headerSlider.slick-slider {
      -ms-transform: translate(-50%, -30%);
      transform: translate(-50%, -30%); } }
  @media screen and (min-width: 64em) {
    .headerSlider.slick-slider {
      min-height: 50%;
      -ms-transform: translate(-50%, -20%);
      transform: translate(-50%, -20%); } }
  @media screen and (min-width: 75em) {
    .headerSlider.slick-slider {
      min-height: 60%;
      -ms-transform: translate(-50%, -50%);
      transform: translate(-50%, -50%);
      top: 50%;
      bottom: auto; } }
  .headerSlider.slick-slider .slick-slide .flex-grid {
    margin: 4%; }
    @media screen and (max-width: 39.9375em) {
      .headerSlider.slick-slider .slick-slide .flex-grid {
        -ms-flex-align: center;
            align-items: center; }
        .headerSlider.slick-slider .slick-slide .flex-grid p {
          display: none; } }
  @media screen and (max-width: 63.9375em) {
    .headerSlider.slick-slider {
      width: 100%; } }
  .headerSlider.slick-slider * {
    color: #f7f7f7; }
  .headerSlider.slick-slider .slick-slide {
    padding: 0 4rem; }
    @media screen and (max-width: 63.9375em) {
      .headerSlider.slick-slider .slick-slide {
        padding: 0rem; } }
  .headerSlider.slick-slider h2, .headerSlider.slick-slider .rst h1, .rst .headerSlider.slick-slider h1, .headerSlider.slick-slider .rst .title-1, .rst .headerSlider.slick-slider .title-1, .headerSlider.slick-slider .title-2 {
    font-size: 4.75rem;
    font-weight: 800; }
    @media screen and (max-width: 63.9375em) {
      .headerSlider.slick-slider h2, .headerSlider.slick-slider .rst h1, .rst .headerSlider.slick-slider h1, .headerSlider.slick-slider .rst .title-1, .rst .headerSlider.slick-slider .title-1, .headerSlider.slick-slider .title-2 {
        font-size: 1.75rem; } }
  .headerSlider.slick-slider p {
    font-size: 1.4rem;
    line-height: 1.2;
    font-weight: 500; }
    @media screen and (max-width: 63.9375em) {
      .headerSlider.slick-slider p {
        font-size: 1.2rem; } }
  .headerSlider.slick-slider .slick-prev, .headerSlider.slick-slider .slick-next {
    top: 50%;
    -ms-transform: translate(0, -50%);
    transform: translate(0, -50%);
    left: 0;
    position: absolute;
    z-index: 12;
    width: 4rem; }
  .headerSlider.slick-slider .slick-next {
    right: 0;
    left: auto; }

.language_choose {
  list-style-type: none;
  display: block;
  position: absolute;
  bottom: 0rem;
  right: 1rem;
  font-size: 0.875rem;
  text-transform: uppercase;
  color: #dd3333;
  margin: 0; }
  .language_choose li {
    margin: 0;
    display: inline; }
  .language_choose a {
    color: #f7f7f7; }
    .language_choose a.active {
      color: #dd3333; }
  .language_choose .is-dropdown-submenu {
    min-width: 0; }
  .language_choose .dropdown.menu > li.is-dropdown-submenu-parent {
    float: left; }
    .language_choose .dropdown.menu > li.is-dropdown-submenu-parent > a {
      position: relative;
      display: block;
      float: left; }

/* entypo */
[class*="entypo-"]:before {
  font-family: 'entypo', sans-serif; }

.wallgrid-item .panel {
  margin-bottom: 0; }

/* ---- grid ---- */
.grid {
  margin: 8px;
  /* ---- grid sizer width---- */ }
  .grid#container {
    float: left;
    width: calc(100% -  16px); }
  .grid .grid-item {
    width: 100%;
    float: left;
    padding-left: 0.9375rem;
    padding-right: 0.9375rem;
    padding-left: 0;
    padding-right: 0; }
    .grid .grid-item:last-child:not(:first-child) {
      float: right; }
    @media screen and (min-width: 40em) {
      .grid .grid-item {
        width: 50%;
        float: left;
        padding-left: 0.9375rem;
        padding-right: 0.9375rem;
        padding-left: 0;
        padding-right: 0; }
        .grid .grid-item:last-child:not(:first-child) {
          float: right; } }
    @media screen and (min-width: 64em) {
      .grid .grid-item {
        width: 33.33333%;
        float: left;
        padding-left: 0.9375rem;
        padding-right: 0.9375rem;
        padding-left: 0;
        padding-right: 0; }
        .grid .grid-item:last-child:not(:first-child) {
          float: right; } }
    @media screen and (min-width: 75em) {
      .grid .grid-item {
        width: 25%;
        float: left;
        padding-left: 0.9375rem;
        padding-right: 0.9375rem;
        padding-left: 0;
        padding-right: 0; }
        .grid .grid-item:last-child:not(:first-child) {
          float: right; } }

/* clear fix */
.grid:after {
  content: '';
  display: block;
  clear: both; }

/* ---- .grid-item ---- */
.grid-item {
  height: 264px;
  float: left;
  border: 0;
  position: relative; }
  .grid-item figure {
    height: 248px; }
  .grid-item.type1, .grid-item.typeExpo, .grid-itemtype4 {
    height: 264px; }
  .grid-item.type2, .grid-item.type3 {
    height: 528px; }
  .grid-item.type2 .infoCont {
    position: absolute;
    top: 264px; }
  .grid-item .infoCont {
    padding: 11px 22px; }
  @media screen and (min-width: 40em) {
    .grid-item {
      height: 324px; }
      .grid-item figure {
        height: 308px; }
      .grid-item.type1, .grid-item.typeExpo, .grid-itemtype4 {
        height: 324px; }
      .grid-item.type2, .grid-item.type3 {
        height: 648px; }
      .grid-item.type2 .infoCont {
        position: absolute;
        top: 324px; }
      .grid-item .infoCont {
        padding: 13.5px 27px; } }
  @media screen and (min-width: 64em) {
    .grid-item {
      height: 324px; }
      .grid-item figure {
        height: 308px; }
      .grid-item.type1, .grid-item.typeExpo, .grid-itemtype4 {
        height: 324px; }
      .grid-item.type2, .grid-item.type3 {
        height: 648px; }
      .grid-item.type2 .infoCont {
        position: absolute;
        top: 324px; }
      .grid-item .infoCont {
        padding: 13.5px 27px; } }
  @media screen and (min-width: 75em) {
    .grid-item {
      height: 384px; }
      .grid-item figure {
        height: 368px; }
      .grid-item.type1, .grid-item.typeExpo, .grid-itemtype4 {
        height: 384px; }
      .grid-item.type2, .grid-item.type3 {
        height: 768px; }
      .grid-item.type2 .infoCont {
        position: absolute;
        top: 384px; }
      .grid-item .infoCont {
        padding: 16px 32px; } }
  @media screen and (-webkit-min-device-pixel-ratio: 2), (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
    .grid-item {
      height: 464px; }
      .grid-item figure {
        height: 448px; }
      .grid-item.type1, .grid-item.typeExpo, .grid-itemtype4 {
        height: 464px; }
      .grid-item.type2, .grid-item.type3 {
        height: 928px; }
      .grid-item.type2 .infoCont {
        position: absolute;
        top: 464px; }
      .grid-item .infoCont {
        padding: 19.33333px 38.66667px; } }
  .grid-item .contentGrid {
    overflow: hidden;
    position: absolute;
    margin: 8px;
    background: #E0E0E0;
    width: calc(100% - 1rem);
    height: calc(100% - 1rem); }
  .grid-item .infoCont {
    position: absolute;
    z-index: 2; }
  .grid-item h2, .grid-item .rst h1, .rst .grid-item h1, .grid-item .rst .title-1, .rst .grid-item .title-1, .grid-item .title-2 {
    font-size: 1rem; }
    @media screen and (min-width: 40em) {
      .grid-item h2, .grid-item .rst h1, .rst .grid-item h1, .grid-item .rst .title-1, .rst .grid-item .title-1, .grid-item .title-2 {
        font-size: 1rem; } }
    @media screen and (min-width: 64em) {
      .grid-item h2, .grid-item .rst h1, .rst .grid-item h1, .grid-item .rst .title-1, .rst .grid-item .title-1, .grid-item .title-2 {
        font-size: 1.10rem; } }
    @media screen and (min-width: 90em) {
      .grid-item h2, .grid-item .rst h1, .rst .grid-item h1, .grid-item .rst .title-1, .rst .grid-item .title-1, .grid-item .title-2 {
        font-size: 1.20rem; } }
  .grid-item h5:after, .grid-item .rst h4:after, .rst .grid-item h4:after, .grid-item .rst h3:after, .rst .grid-item h3:after, .grid-item .rst .h3:after, .rst .grid-item .h3:after, .grid-item .rst h2:after, .rst .grid-item h2:after, .grid-item .rst h1:after, .rst .grid-item h1:after, .grid-item .rst .title-1:after, .rst .grid-item .title-1:after, .grid-item .rst .title-2:after, .rst .grid-item .title-2:after, .grid-item .rst .title-3:after, .rst .grid-item .title-3:after, .grid-item .rst .title-4:after, .rst .grid-item .title-4:after, .grid-item .title-5:after, .grid-item h5:before, .grid-item .rst h4:before, .rst .grid-item h4:before, .grid-item .rst h3:before, .rst .grid-item h3:before, .grid-item .rst .h3:before, .rst .grid-item .h3:before, .grid-item .rst h2:before, .rst .grid-item h2:before, .grid-item .rst h1:before, .rst .grid-item h1:before, .grid-item .rst .title-1:before, .rst .grid-item .title-1:before, .grid-item .rst .title-2:before, .rst .grid-item .title-2:before, .grid-item .rst .title-3:before, .rst .grid-item .title-3:before, .grid-item .rst .title-4:before, .rst .grid-item .title-4:before, .grid-item .title-5:before {
    display: none; }
  .grid-item p.subtitle {
    display: table;
    background: #000000;
    padding: 0 0.3rem;
    color: #fff;
    font-weight: 300;
    font-size: 1rem;
    text-transform: none; }
  .grid-item .desc {
    font-weight: 200; }
  .grid-item figure {
    margin: 0;
    position: absolute;
    overflow: hidden;
    width: 100%; }
    .grid-item figure img {
      position: absolute;
      left: 50%;
      min-width: 100%;
      top: 50%;
      -ms-transform: translate(-50%, -50%);
      transform: translate(-50%, -50%); }
  .grid-item.typeExpo {
    height: 264px; }
    .grid-item.typeExpo figure {
      height: 248px; }
    .grid-item.typeExpo.type1, .grid-item.typeExpo, .grid-item.typeExpotype4 {
      height: 264px; }
    .grid-item.typeExpo.type2, .grid-item.typeExpo.type3 {
      height: 528px; }
    .grid-item.typeExpo.type2 .infoCont {
      position: absolute;
      top: 264px; }
    .grid-item.typeExpo .infoCont {
      padding: 11px 22px; }
    @media screen and (min-width: 40em) {
      .grid-item.typeExpo {
        height: 324px; }
        .grid-item.typeExpo figure {
          height: 308px; }
        .grid-item.typeExpo.type1, .grid-item.typeExpo, .grid-item.typeExpotype4 {
          height: 324px; }
        .grid-item.typeExpo.type2, .grid-item.typeExpo.type3 {
          height: 648px; }
        .grid-item.typeExpo.type2 .infoCont {
          position: absolute;
          top: 324px; }
        .grid-item.typeExpo .infoCont {
          padding: 13.5px 27px; } }
    @media screen and (min-width: 64em) {
      .grid-item.typeExpo {
        height: 324px; }
        .grid-item.typeExpo figure {
          height: 308px; }
        .grid-item.typeExpo.type1, .grid-item.typeExpo, .grid-item.typeExpotype4 {
          height: 324px; }
        .grid-item.typeExpo.type2, .grid-item.typeExpo.type3 {
          height: 648px; }
        .grid-item.typeExpo.type2 .infoCont {
          position: absolute;
          top: 324px; }
        .grid-item.typeExpo .infoCont {
          padding: 13.5px 27px; } }
    @media screen and (min-width: 75em) {
      .grid-item.typeExpo {
        height: 384px; }
        .grid-item.typeExpo figure {
          height: 368px; }
        .grid-item.typeExpo.type1, .grid-item.typeExpo, .grid-item.typeExpotype4 {
          height: 384px; }
        .grid-item.typeExpo.type2, .grid-item.typeExpo.type3 {
          height: 768px; }
        .grid-item.typeExpo.type2 .infoCont {
          position: absolute;
          top: 384px; }
        .grid-item.typeExpo .infoCont {
          padding: 16px 32px; } }
    @media screen and (-webkit-min-device-pixel-ratio: 2), (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
      .grid-item.typeExpo {
        height: 464px; }
        .grid-item.typeExpo figure {
          height: 448px; }
        .grid-item.typeExpo.type1, .grid-item.typeExpo, .grid-item.typeExpotype4 {
          height: 464px; }
        .grid-item.typeExpo.type2, .grid-item.typeExpo.type3 {
          height: 928px; }
        .grid-item.typeExpo.type2 .infoCont {
          position: absolute;
          top: 464px; }
        .grid-item.typeExpo .infoCont {
          padding: 19.33333px 38.66667px; } }
    .grid-item.typeExpo .shortdescc {
      top: 65%;
      position: absolute;
      font-weight: 200;
      padding-top: 0.42rem;
      line-height: 1.2; }
    .grid-item.typeExpo .figuretoExp {
      width: 100%;
      height: 65%;
      position: absolute;
      top: 0;
      left: 0;
      background: #000; }
      .grid-item.typeExpo .figuretoExp figure {
        height: 100%;
        width: 100%;
        display: block; }
    .grid-item.typeExpo .contentGrid {
      background: transparent; }
  .grid-item.type3 figure, .grid-item.type4 figure {
    display: none; }
  .grid-item.withCont {
    position: absolute;
    top: 50%; }
    .grid-item.withCont figure {
      height: 50%; }
    .grid-item.withCont .shortdesc {
      font-weight: 300; }
  .grid-item.picto-video .contentGrid > a:before {
    color: #FFF;
    position: absolute;
    content: "\f008";
    font-family: icomoon;
    top: 0;
    right: 0;
    border-radius: 0%;
    height: 3rem;
    width: 3rem;
    line-height: 3rem;
    text-align: center;
    overflow: hidden;
    display: block;
    background: #0a0a0a;
    z-index: 2; }
  .grid-item.picto-sound .contentGrid > a:before {
    color: #FFF;
    position: absolute;
    content: "\e912";
    font-family: icomoon;
    top: 0;
    right: 0;
    border-radius: 0%;
    height: 3rem;
    width: 3rem;
    line-height: 3rem;
    text-align: center;
    overflow: hidden;
    display: block;
    background: #0a0a0a;
    z-index: 2; }
  .grid-item.picto-img .contentGrid > a:before {
    color: #FFF;
    position: absolute;
    content: "\f03e";
    font-family: icomoon;
    top: 0;
    right: 0;
    border-radius: 0%;
    height: 3rem;
    width: 3rem;
    line-height: 3rem;
    text-align: center;
    overflow: hidden;
    display: block;
    background: #0a0a0a;
    z-index: 2; }
  .grid-item.picto-music .contentGrid > a:before {
    color: #FFF;
    position: absolute;
    content: "\f001";
    font-family: icomoon;
    top: 0;
    right: 0;
    border-radius: 0%;
    height: 3rem;
    width: 3rem;
    line-height: 3rem;
    text-align: center;
    overflow: hidden;
    display: block;
    background: #0a0a0a;
    z-index: 2; }
  .grid-item.picto-presse .contentGrid > a:before {
    color: #FFF;
    position: absolute;
    content: "\f1ea";
    font-family: icomoon;
    top: 0;
    right: 0;
    border-radius: 0%;
    height: 3rem;
    width: 3rem;
    line-height: 3rem;
    text-align: center;
    overflow: hidden;
    display: block;
    background: #0a0a0a;
    z-index: 2; }
  .grid-item.picto-text .contentGrid > a:before {
    color: #FFF;
    position: absolute;
    content: "\f0f6";
    font-family: icomoon;
    top: 0;
    right: 0;
    border-radius: 0%;
    height: 3rem;
    width: 3rem;
    line-height: 3rem;
    text-align: center;
    overflow: hidden;
    display: block;
    background: #0a0a0a;
    z-index: 2; }
  .grid-item.big {
    height: 528px;
    width: 100%;
    float: left;
    padding-left: 0.9375rem;
    padding-right: 0.9375rem;
    padding: 0; }
    .grid-item.big figure {
      height: 512px; }
    .grid-item.big.type1, .grid-item.big.typeExpo, .grid-item.bigtype4 {
      height: 528px; }
    .grid-item.big.type2, .grid-item.big.type3 {
      height: 1056px; }
    .grid-item.big.type2 .infoCont {
      position: absolute;
      top: 528px; }
    .grid-item.big .infoCont {
      padding: 22px 44px; }
    @media screen and (min-width: 40em) {
      .grid-item.big {
        height: 648px; }
        .grid-item.big figure {
          height: 632px; }
        .grid-item.big.type1, .grid-item.big.typeExpo, .grid-item.bigtype4 {
          height: 648px; }
        .grid-item.big.type2, .grid-item.big.type3 {
          height: 1296px; }
        .grid-item.big.type2 .infoCont {
          position: absolute;
          top: 648px; }
        .grid-item.big .infoCont {
          padding: 27px 54px; } }
    @media screen and (min-width: 64em) {
      .grid-item.big {
        height: 648px; }
        .grid-item.big figure {
          height: 632px; }
        .grid-item.big.type1, .grid-item.big.typeExpo, .grid-item.bigtype4 {
          height: 648px; }
        .grid-item.big.type2, .grid-item.big.type3 {
          height: 1296px; }
        .grid-item.big.type2 .infoCont {
          position: absolute;
          top: 648px; }
        .grid-item.big .infoCont {
          padding: 27px 54px; } }
    @media screen and (min-width: 75em) {
      .grid-item.big {
        height: 768px; }
        .grid-item.big figure {
          height: 752px; }
        .grid-item.big.type1, .grid-item.big.typeExpo, .grid-item.bigtype4 {
          height: 768px; }
        .grid-item.big.type2, .grid-item.big.type3 {
          height: 1536px; }
        .grid-item.big.type2 .infoCont {
          position: absolute;
          top: 768px; }
        .grid-item.big .infoCont {
          padding: 32px 64px; } }
    @media screen and (-webkit-min-device-pixel-ratio: 2), (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
      .grid-item.big {
        height: 928px; }
        .grid-item.big figure {
          height: 912px; }
        .grid-item.big.type1, .grid-item.big.typeExpo, .grid-item.bigtype4 {
          height: 928px; }
        .grid-item.big.type2, .grid-item.big.type3 {
          height: 1856px; }
        .grid-item.big.type2 .infoCont {
          position: absolute;
          top: 928px; }
        .grid-item.big .infoCont {
          padding: 38.66667px 77.33333px; } }
    .grid-item.big:last-child:not(:first-child) {
      float: right; }
    @media screen and (min-width: 40em) {
      .grid-item.big {
        width: 100%;
        float: left;
        padding-left: 0.9375rem;
        padding-right: 0.9375rem;
        padding-left: 0;
        padding-right: 0; }
        .grid-item.big:last-child:not(:first-child) {
          float: right; } }
    @media screen and (min-width: 64em) {
      .grid-item.big {
        width: 66.66667%;
        float: left;
        padding-left: 0.9375rem;
        padding-right: 0.9375rem;
        padding-left: 0;
        padding-right: 0; }
        .grid-item.big:last-child:not(:first-child) {
          float: right; } }
    @media screen and (min-width: 75em) {
      .grid-item.big {
        width: 50%;
        float: left;
        padding-left: 0.9375rem;
        padding-right: 0.9375rem;
        padding-left: 0;
        padding-right: 0; }
        .grid-item.big:last-child:not(:first-child) {
          float: right; } }

.type1 .infoCont, .typeExpo .infoCont {
  position: absolute;
  bottom: 1rem;
  line-height: 1.24;
  padding: 0 !important; }

.type1 .tagtitle, .typeExpo .tagtitle {
  display: block;
  float: none;
  width: 100%;
  line-height: 1.6; }

.type1.withCont .infoCont, .withCont.typeExpo .infoCont {
  position: absolute;
  bottom: 36%; }

.type1 h5, .typeExpo h5, .type1 .rst h4, .rst .type1 h4, .typeExpo .rst h4, .rst .typeExpo h4, .type1 .rst h3, .rst .type1 h3, .typeExpo .rst h3, .rst .typeExpo h3, .type1 .rst .h3, .rst .type1 .h3, .typeExpo .rst .h3, .rst .typeExpo .h3, .type1 .rst h2, .rst .type1 h2, .typeExpo .rst h2, .rst .typeExpo h2, .type1 .rst h1, .rst .type1 h1, .typeExpo .rst h1, .rst .typeExpo h1, .type1 .rst .title-1, .rst .type1 .title-1, .typeExpo .rst .title-1, .rst .typeExpo .title-1, .type1 .rst .title-2, .rst .type1 .title-2, .typeExpo .rst .title-2, .rst .typeExpo .title-2, .type1 .rst .title-3, .rst .type1 .title-3, .typeExpo .rst .title-3, .rst .typeExpo .title-3, .type1 .rst .title-4, .rst .type1 .title-4, .typeExpo .rst .title-4, .rst .typeExpo .title-4, .type1 .title-5, .typeExpo .title-5 {
  margin: 0;
  display: block;
  float: none;
  color: #dd3333; }
  .type1 h5 span, .typeExpo h5 span, .type1 .rst h4 span, .rst .type1 h4 span, .typeExpo .rst h4 span, .rst .typeExpo h4 span, .type1 .rst h3 span, .rst .type1 h3 span, .typeExpo .rst h3 span, .rst .typeExpo h3 span, .type1 .rst .h3 span, .rst .type1 .h3 span, .typeExpo .rst .h3 span, .rst .typeExpo .h3 span, .type1 .rst h2 span, .rst .type1 h2 span, .typeExpo .rst h2 span, .rst .typeExpo h2 span, .type1 .rst h1 span, .rst .type1 h1 span, .typeExpo .rst h1 span, .rst .typeExpo h1 span, .type1 .rst .title-1 span, .rst .type1 .title-1 span, .typeExpo .rst .title-1 span, .rst .typeExpo .title-1 span, .type1 .rst .title-2 span, .rst .type1 .title-2 span, .typeExpo .rst .title-2 span, .rst .typeExpo .title-2 span, .type1 .rst .title-3 span, .rst .type1 .title-3 span, .typeExpo .rst .title-3 span, .rst .typeExpo .title-3 span, .type1 .rst .title-4 span, .rst .type1 .title-4 span, .typeExpo .rst .title-4 span, .rst .typeExpo .title-4 span, .type1 .title-5 span, .typeExpo .title-5 span {
    line-height: 1.4;
    background: #f7f7f7;
    padding: 0.5rem;
    padding-top: 0;
    padding-bottom: 0;
    -webkit-box-decoration-break: clone;
    -ms-box-decoration-break: clone;
    -o-box-decoration-break: clone;
    box-decoration-break: clone; }

.type1 h2, .typeExpo h2, .type1 .rst h1, .rst .type1 h1, .typeExpo .rst h1, .rst .typeExpo h1, .type1 .rst .title-1, .rst .type1 .title-1, .typeExpo .rst .title-1, .rst .typeExpo .title-1, .type1 .title-2, .typeExpo .title-2 {
  display: inline;
  background: #0a0a0a;
  color: white;
  font-weight: 800;
  text-transform: none;
  line-height: 1.31;
  padding: 0.5rem;
  padding-top: 0;
  padding-bottom: 0;
  -webkit-box-decoration-break: clone;
  -ms-box-decoration-break: clone;
  -o-box-decoration-break: clone;
  box-decoration-break: clone; }
  .type1 h2 a, .typeExpo h2 a, .type1 .rst h1 a, .rst .type1 h1 a, .typeExpo .rst h1 a, .rst .typeExpo h1 a, .type1 .rst .title-1 a, .rst .type1 .title-1 a, .typeExpo .rst .title-1 a, .rst .typeExpo .title-1 a, .type1 .title-2 a, .typeExpo .title-2 a {
    color: white; }

.type1 .desc, .typeExpo .desc, .type1 .shortdesc, .typeExpo .shortdesc {
  display: none; }

.type2 .contentGrid {
  border-bottom: 4px solid #ECECEF; }

.type2 .infoCont {
  line-height: 1.24; }

.type2 .tagtitle {
  display: block;
  float: left;
  width: 100%;
  line-height: 1.6; }

.type2 h5, .type2 .rst h4, .rst .type2 h4, .type2 .rst h3, .rst .type2 h3, .type2 .rst .h3, .rst .type2 .h3, .type2 .rst h2, .rst .type2 h2, .type2 .rst h1, .rst .type2 h1, .type2 .rst .title-1, .rst .type2 .title-1, .type2 .rst .title-2, .rst .type2 .title-2, .type2 .rst .title-3, .rst .type2 .title-3, .type2 .rst .title-4, .rst .type2 .title-4, .type2 .title-5 {
  margin: 0;
  line-height: 1.6;
  text-decoration: underline; }

.type2 h2, .type2 .rst h1, .rst .type2 h1, .type2 .rst .title-1, .rst .type2 .title-1, .type2 .title-2 {
  line-height: 1.125;
  text-transform: none;
  font-weight: 200; }

.type2 .shortdesc {
  display: none; }

.type3 .contentGrid, .type4 .contentGrid {
  border-bottom: 4px solid #ECECEF; }

.type3 .infoCont, .type4 .infoCont {
  line-height: 1.24; }

.type3 .tagtitle, .type4 .tagtitle {
  display: block;
  float: left;
  width: 100%;
  line-height: 1.6; }

.type3 h5, .type3 .rst h4, .rst .type3 h4, .type3 .rst h3, .rst .type3 h3, .type3 .rst .h3, .rst .type3 .h3, .type3 .rst h2, .rst .type3 h2, .type3 .rst h1, .rst .type3 h1, .type3 .rst .title-1, .rst .type3 .title-1, .type3 .rst .title-2, .rst .type3 .title-2, .type3 .rst .title-3, .rst .type3 .title-3, .type3 .rst .title-4, .rst .type3 .title-4, .type3 .title-5, .type4 h5, .type4 .rst h4, .rst .type4 h4, .type4 .rst h3, .rst .type4 h3, .type4 .rst .h3, .rst .type4 .h3, .type4 .rst h2, .rst .type4 h2, .type4 .rst h1, .rst .type4 h1, .type4 .rst .title-1, .rst .type4 .title-1, .type4 .rst .title-2, .rst .type4 .title-2, .type4 .rst .title-3, .rst .type4 .title-3, .type4 .rst .title-4, .rst .type4 .title-4, .type4 .title-5 {
  margin: 0;
  line-height: 1.6;
  text-decoration: underline; }

.type3 h2, .type3 .rst h1, .rst .type3 h1, .type3 .rst .title-1, .rst .type3 .title-1, .type3 .title-2, .type4 h2, .type4 .rst h1, .rst .type4 h1, .type4 .rst .title-1, .rst .type4 .title-1, .type4 .title-2 {
  line-height: 1.125;
  text-transform: none;
  font-weight: 100; }

.type3 .desc, .type3 .shortdesc, .type4 .desc, .type4 .shortdesc {
  display: block; }

.type4 .shortdesc {
  display: none; }

.grid-item--width2 {
  width: 200px; }

.typeExpo .desc, .typeExpo .shortdesc {
  display: block; }

.typeExpo.withCont .infoCont {
  position: absolute;
  bottom: 50%;
  width: 100%; }
  .typeExpo.withCont .infoCont .desc {
    display: none; }
  .typeExpo.withCont .infoCont .shortdesc {
    margin-top: 1rem;
    position: absolute;
    width: 100%;
    top: 100%; }

#controls, #controls_like {
  margin-left: 1rem;
  margin-right: 1rem;
  margin-top: 1rem;
  float: left;
  clear: both;
  width: calc(100% - 2rem); }
  #controls a, #controls_like a {
    background: #0a0a0a;
    color: #f7f7f7;
    text-transform: uppercase;
    margin-right: 0.25rem; }
    #controls a.is-checked, #controls_like a.is-checked {
      background-color: #dd3333; }
  @media screen and (max-width: 63.9375em) {
    #controls .menu li, #controls_like .menu li {
      display: block; } }
  #controls [data-filter="none"], #controls_like [data-filter="none"] {
    display: none; }

#themeControls, #controls_like {
  margin-left: 1rem;
  margin-right: 1rem;
  margin-top: 1rem;
  float: left;
  clear: both;
  width: calc(100% - 2rem); }
  #themeControls a, #controls_like a {
    background: #0a0a0a;
    color: #f7f7f7;
    text-transform: uppercase;
    margin-right: 0.25rem; }
    #themeControls a.is-checked, #controls_like a.is-checked {
      background-color: #dd3333; }
  @media screen and (min-width: 64em) {
    #themeControls .menu, #controls_like .menu {
      display: -ms-flexbox;
      display: flex;
      -ms-flex-align: stretch;
          align-items: stretch;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap; }
      #themeControls .menu li, #controls_like .menu li {
        display: -ms-flexbox;
        display: flex;
        margin-bottom: 4px; }
        #themeControls .menu li a, #controls_like .menu li a {
          display: -ms-flexbox;
          display: flex;
          -ms-flex-align: center;
              align-items: center; } }
  @media screen and (max-width: 63.9375em) {
    #themeControls .menu li, #controls_like .menu li {
      display: block; } }
  #themeControls [data-filter="none"], #controls_like [data-filter="none"] {
    display: none; }

.fifteen {
  max-width: 75rem;
  margin-left: auto;
  margin-right: auto; }
  .fifteen::before, .fifteen::after {
    content: ' ';
    display: table; }
  .fifteen::after {
    clear: both; }
  .fifteen .grid-item {
    float: none;
    margin-left: auto;
    margin-right: auto; }
  .fifteen .fifteen1 {
    width: 6.66667%;
    float: left;
    padding-left: 0.9375rem;
    padding-right: 0.9375rem; }
    .fifteen .fifteen1:last-child:not(:first-child) {
      float: right; }
  .fifteen .fifteen3 {
    width: 33.33333%;
    float: left;
    padding-left: 0.9375rem;
    padding-right: 0.9375rem; }
    .fifteen .fifteen3:last-child:not(:first-child) {
      float: right; }
    @media screen and (min-width: 64em) {
      .fifteen .fifteen3 {
        width: 20%;
        float: left;
        padding-left: 0.9375rem;
        padding-right: 0.9375rem; }
        .fifteen .fifteen3:last-child:not(:first-child) {
          float: right; } }

/*Fonts library*/
/*Fonts library*/
@font-face {
  font-family: 'icomoon';
  src: url("../fonts/icomoon.eot?7qqjds");
  src: url("../fonts/icomoon.eot?7qqjds#iefix") format("embedded-opentype"), url("../fonts/icomoon.woff2?7qqj2s") format("woff2"), url("../fonts/icomoon.ttf?7qqj2s") format("truetype"), url("../fonts/icomoon.woff?7qqj2s") format("woff"), url("../fonts/icomoon.svg?7qqj2s#icomoon") format("svg");
  font-weight: 400;
  font-style: normal; }

/*
 * Default usage, for self closed element like in <i class=".."></i>
 */
.iconcont, .slick-prev, .slick-next, [class^="icon-"]:not(p):not(div):not(h1):not(.title-1):not(
h2):not(
.title-2):not(
h3):not(
.h3):not(
.title-3):not(
h4):not(
.title-4),
[class*=" icon-"]:not(p):not(div):not(h1):not(.title-1):not(
h2):not(
.title-2):not(
h3):not(
.h3):not(
.title-3):not(
h4):not(
.title-4), [class^="icon-"]:before, [class*=" icon-"]:before {
  font-family: 'icomoon';
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }
  .iconcont.icon-2x, .icon-2x.slick-prev, .icon-2x.slick-next, [class^="icon-"]:not(p):not(div):not(h1):not(.title-1):not(
  h2):not(
  .title-2):not(
  h3):not(
  .h3):not(
  .title-3):not(
  h4):not(
  .title-4).icon-2x,
  [class*=" icon-"]:not(p):not(div):not(h1):not(.title-1):not(
  h2):not(
  .title-2):not(
  h3):not(
  .h3):not(
  .title-3):not(
  h4):not(
  .title-4).icon-2x, [class^="icon-"]:before.icon-2x, [class*=" icon-"]:before.icon-2x {
    font-size: 2rem; }
  .iconcont.icon-3x, .icon-3x.slick-prev, .icon-3x.slick-next, [class^="icon-"]:not(p):not(div):not(h1):not(.title-1):not(
  h2):not(
  .title-2):not(
  h3):not(
  .h3):not(
  .title-3):not(
  h4):not(
  .title-4).icon-3x,
  [class*=" icon-"]:not(p):not(div):not(h1):not(.title-1):not(
  h2):not(
  .title-2):not(
  h3):not(
  .h3):not(
  .title-3):not(
  h4):not(
  .title-4).icon-3x, [class^="icon-"]:before.icon-3x, [class*=" icon-"]:before.icon-3x {
    font-size: 3rem; }
  .iconcont.icon-4x, .icon-4x.slick-prev, .icon-4x.slick-next, [class^="icon-"]:not(p):not(div):not(h1):not(.title-1):not(
  h2):not(
  .title-2):not(
  h3):not(
  .h3):not(
  .title-3):not(
  h4):not(
  .title-4).icon-4x,
  [class*=" icon-"]:not(p):not(div):not(h1):not(.title-1):not(
  h2):not(
  .title-2):not(
  h3):not(
  .h3):not(
  .title-3):not(
  h4):not(
  .title-4).icon-4x, [class^="icon-"]:before.icon-4x, [class*=" icon-"]:before.icon-4x {
    font-size: 4rem; }
  .iconcont.icon-5x, .icon-5x.slick-prev, .icon-5x.slick-next, [class^="icon-"]:not(p):not(div):not(h1):not(.title-1):not(
  h2):not(
  .title-2):not(
  h3):not(
  .h3):not(
  .title-3):not(
  h4):not(
  .title-4).icon-5x,
  [class*=" icon-"]:not(p):not(div):not(h1):not(.title-1):not(
  h2):not(
  .title-2):not(
  h3):not(
  .h3):not(
  .title-3):not(
  h4):not(
  .title-4).icon-5x, [class^="icon-"]:before.icon-5x, [class*=" icon-"]:before.icon-5x {
    font-size: 5rem; }
  .iconcont.icon-block, .icon-block.slick-prev, .icon-block.slick-next, [class^="icon-"]:not(p):not(div):not(h1):not(.title-1):not(
  h2):not(
  .title-2):not(
  h3):not(
  .h3):not(
  .title-3):not(
  h4):not(
  .title-4).icon-block,
  [class*=" icon-"]:not(p):not(div):not(h1):not(.title-1):not(
  h2):not(
  .title-2):not(
  h3):not(
  .h3):not(
  .title-3):not(
  h4):not(
  .title-4).icon-block, [class^="icon-"]:before.icon-block, [class*=" icon-"]:before.icon-block {
    display: block; }

/*
 * Icon insert in a container
 *
 * Contrary to the default selector, this does not perturb container
 * elements font, so it's safe to have text in container
 */
p[class^="icon-"]:before, p[class*=" icon-"]:before, div[class^="icon-"]:before, div[class*=" icon-"]:before, h1[class^="icon-"]:before, .title-1[class^="icon-"]:before, h1[class*=" icon-"]:before, .title-1[class*=" icon-"]:before, h2[class^="icon-"]:before, .rst h1[class^="icon-"]:before, .rst .title-1[class^="icon-"]:before, .title-2[class^="icon-"]:before, h2[class*=" icon-"]:before, .rst h1[class*=" icon-"]:before, .rst .title-1[class*=" icon-"]:before, .title-2[class*=" icon-"]:before, h3[class^="icon-"]:before, .h3[class^="icon-"]:before, .rst h2[class^="icon-"]:before, .rst h1[class^="icon-"]:before, .rst .title-1[class^="icon-"]:before, .rst .title-2[class^="icon-"]:before, .title-3[class^="icon-"]:before, h3[class*=" icon-"]:before, .h3[class*=" icon-"]:before, .rst h2[class*=" icon-"]:before, .rst h1[class*=" icon-"]:before, .rst .title-1[class*=" icon-"]:before, .rst .title-2[class*=" icon-"]:before, .title-3[class*=" icon-"]:before, h4[class^="icon-"]:before, .rst h3[class^="icon-"]:before, .rst .h3[class^="icon-"]:before, .rst h2[class^="icon-"]:before, .rst h1[class^="icon-"]:before, .rst .title-1[class^="icon-"]:before, .rst .title-2[class^="icon-"]:before, .rst .title-3[class^="icon-"]:before, .title-4[class^="icon-"]:before, h4[class*=" icon-"]:before, .rst h3[class*=" icon-"]:before, .rst .h3[class*=" icon-"]:before, .rst h2[class*=" icon-"]:before, .rst h1[class*=" icon-"]:before, .rst .title-1[class*=" icon-"]:before, .rst .title-2[class*=" icon-"]:before, .rst .title-3[class*=" icon-"]:before, .title-4[class*=" icon-"]:before, *[class^="icon-"]:before, *[class*=" icon-"]:before {
  font-family: 'icomoon';
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

p[class^="icon-"].icon-2x::before, p[class*=" icon-"].icon-2x::before, div[class^="icon-"].icon-2x::before, div[class*=" icon-"].icon-2x::before, h1[class^="icon-"].icon-2x::before, .title-1[class^="icon-"].icon-2x::before, h1[class*=" icon-"].icon-2x::before, .title-1[class*=" icon-"].icon-2x::before, h2[class^="icon-"].icon-2x::before, .rst h1[class^="icon-"].icon-2x::before, .rst .title-1[class^="icon-"].icon-2x::before, .title-2[class^="icon-"].icon-2x::before, h2[class*=" icon-"].icon-2x::before, .rst h1[class*=" icon-"].icon-2x::before, .rst .title-1[class*=" icon-"].icon-2x::before, .title-2[class*=" icon-"].icon-2x::before, h3[class^="icon-"].icon-2x::before, .h3[class^="icon-"].icon-2x::before, .rst h2[class^="icon-"].icon-2x::before, .rst h1[class^="icon-"].icon-2x::before, .rst .title-1[class^="icon-"].icon-2x::before, .rst .title-2[class^="icon-"].icon-2x::before, .title-3[class^="icon-"].icon-2x::before, h3[class*=" icon-"].icon-2x::before, .h3[class*=" icon-"].icon-2x::before, .rst h2[class*=" icon-"].icon-2x::before, .rst h1[class*=" icon-"].icon-2x::before, .rst .title-1[class*=" icon-"].icon-2x::before, .rst .title-2[class*=" icon-"].icon-2x::before, .title-3[class*=" icon-"].icon-2x::before, h4[class^="icon-"].icon-2x::before, .rst h3[class^="icon-"].icon-2x::before, .rst .h3[class^="icon-"].icon-2x::before, .rst h2[class^="icon-"].icon-2x::before, .rst h1[class^="icon-"].icon-2x::before, .rst .title-1[class^="icon-"].icon-2x::before, .rst .title-2[class^="icon-"].icon-2x::before, .rst .title-3[class^="icon-"].icon-2x::before, .title-4[class^="icon-"].icon-2x::before, h4[class*=" icon-"].icon-2x::before, .rst h3[class*=" icon-"].icon-2x::before, .rst .h3[class*=" icon-"].icon-2x::before, .rst h2[class*=" icon-"].icon-2x::before, .rst h1[class*=" icon-"].icon-2x::before, .rst .title-1[class*=" icon-"].icon-2x::before, .rst .title-2[class*=" icon-"].icon-2x::before, .rst .title-3[class*=" icon-"].icon-2x::before, .title-4[class*=" icon-"].icon-2x::before, *[class^="icon-"].icon-2x::before, *[class*=" icon-"].icon-2x::before {
  font-size: 2rem; }

p[class^="icon-"].icon-3x::before, p[class*=" icon-"].icon-3x::before, div[class^="icon-"].icon-3x::before, div[class*=" icon-"].icon-3x::before, h1[class^="icon-"].icon-3x::before, .title-1[class^="icon-"].icon-3x::before, h1[class*=" icon-"].icon-3x::before, .title-1[class*=" icon-"].icon-3x::before, h2[class^="icon-"].icon-3x::before, .rst h1[class^="icon-"].icon-3x::before, .rst .title-1[class^="icon-"].icon-3x::before, .title-2[class^="icon-"].icon-3x::before, h2[class*=" icon-"].icon-3x::before, .rst h1[class*=" icon-"].icon-3x::before, .rst .title-1[class*=" icon-"].icon-3x::before, .title-2[class*=" icon-"].icon-3x::before, h3[class^="icon-"].icon-3x::before, .h3[class^="icon-"].icon-3x::before, .rst h2[class^="icon-"].icon-3x::before, .rst h1[class^="icon-"].icon-3x::before, .rst .title-1[class^="icon-"].icon-3x::before, .rst .title-2[class^="icon-"].icon-3x::before, .title-3[class^="icon-"].icon-3x::before, h3[class*=" icon-"].icon-3x::before, .h3[class*=" icon-"].icon-3x::before, .rst h2[class*=" icon-"].icon-3x::before, .rst h1[class*=" icon-"].icon-3x::before, .rst .title-1[class*=" icon-"].icon-3x::before, .rst .title-2[class*=" icon-"].icon-3x::before, .title-3[class*=" icon-"].icon-3x::before, h4[class^="icon-"].icon-3x::before, .rst h3[class^="icon-"].icon-3x::before, .rst .h3[class^="icon-"].icon-3x::before, .rst h2[class^="icon-"].icon-3x::before, .rst h1[class^="icon-"].icon-3x::before, .rst .title-1[class^="icon-"].icon-3x::before, .rst .title-2[class^="icon-"].icon-3x::before, .rst .title-3[class^="icon-"].icon-3x::before, .title-4[class^="icon-"].icon-3x::before, h4[class*=" icon-"].icon-3x::before, .rst h3[class*=" icon-"].icon-3x::before, .rst .h3[class*=" icon-"].icon-3x::before, .rst h2[class*=" icon-"].icon-3x::before, .rst h1[class*=" icon-"].icon-3x::before, .rst .title-1[class*=" icon-"].icon-3x::before, .rst .title-2[class*=" icon-"].icon-3x::before, .rst .title-3[class*=" icon-"].icon-3x::before, .title-4[class*=" icon-"].icon-3x::before, *[class^="icon-"].icon-3x::before, *[class*=" icon-"].icon-3x::before {
  font-size: 3rem; }

p[class^="icon-"].icon-4x::before, p[class*=" icon-"].icon-4x::before, div[class^="icon-"].icon-4x::before, div[class*=" icon-"].icon-4x::before, h1[class^="icon-"].icon-4x::before, .title-1[class^="icon-"].icon-4x::before, h1[class*=" icon-"].icon-4x::before, .title-1[class*=" icon-"].icon-4x::before, h2[class^="icon-"].icon-4x::before, .rst h1[class^="icon-"].icon-4x::before, .rst .title-1[class^="icon-"].icon-4x::before, .title-2[class^="icon-"].icon-4x::before, h2[class*=" icon-"].icon-4x::before, .rst h1[class*=" icon-"].icon-4x::before, .rst .title-1[class*=" icon-"].icon-4x::before, .title-2[class*=" icon-"].icon-4x::before, h3[class^="icon-"].icon-4x::before, .h3[class^="icon-"].icon-4x::before, .rst h2[class^="icon-"].icon-4x::before, .rst h1[class^="icon-"].icon-4x::before, .rst .title-1[class^="icon-"].icon-4x::before, .rst .title-2[class^="icon-"].icon-4x::before, .title-3[class^="icon-"].icon-4x::before, h3[class*=" icon-"].icon-4x::before, .h3[class*=" icon-"].icon-4x::before, .rst h2[class*=" icon-"].icon-4x::before, .rst h1[class*=" icon-"].icon-4x::before, .rst .title-1[class*=" icon-"].icon-4x::before, .rst .title-2[class*=" icon-"].icon-4x::before, .title-3[class*=" icon-"].icon-4x::before, h4[class^="icon-"].icon-4x::before, .rst h3[class^="icon-"].icon-4x::before, .rst .h3[class^="icon-"].icon-4x::before, .rst h2[class^="icon-"].icon-4x::before, .rst h1[class^="icon-"].icon-4x::before, .rst .title-1[class^="icon-"].icon-4x::before, .rst .title-2[class^="icon-"].icon-4x::before, .rst .title-3[class^="icon-"].icon-4x::before, .title-4[class^="icon-"].icon-4x::before, h4[class*=" icon-"].icon-4x::before, .rst h3[class*=" icon-"].icon-4x::before, .rst .h3[class*=" icon-"].icon-4x::before, .rst h2[class*=" icon-"].icon-4x::before, .rst h1[class*=" icon-"].icon-4x::before, .rst .title-1[class*=" icon-"].icon-4x::before, .rst .title-2[class*=" icon-"].icon-4x::before, .rst .title-3[class*=" icon-"].icon-4x::before, .title-4[class*=" icon-"].icon-4x::before, *[class^="icon-"].icon-4x::before, *[class*=" icon-"].icon-4x::before {
  font-size: 4rem; }

p[class^="icon-"].icon-block:before, p[class*=" icon-"].icon-block:before, div[class^="icon-"].icon-block:before, div[class*=" icon-"].icon-block:before, h1[class^="icon-"].icon-block:before, .title-1[class^="icon-"].icon-block:before, h1[class*=" icon-"].icon-block:before, .title-1[class*=" icon-"].icon-block:before, h2[class^="icon-"].icon-block:before, .rst h1[class^="icon-"].icon-block:before, .rst .title-1[class^="icon-"].icon-block:before, .title-2[class^="icon-"].icon-block:before, h2[class*=" icon-"].icon-block:before, .rst h1[class*=" icon-"].icon-block:before, .rst .title-1[class*=" icon-"].icon-block:before, .title-2[class*=" icon-"].icon-block:before, h3[class^="icon-"].icon-block:before, .h3[class^="icon-"].icon-block:before, .rst h2[class^="icon-"].icon-block:before, .rst h1[class^="icon-"].icon-block:before, .rst .title-1[class^="icon-"].icon-block:before, .rst .title-2[class^="icon-"].icon-block:before, .title-3[class^="icon-"].icon-block:before, h3[class*=" icon-"].icon-block:before, .h3[class*=" icon-"].icon-block:before, .rst h2[class*=" icon-"].icon-block:before, .rst h1[class*=" icon-"].icon-block:before, .rst .title-1[class*=" icon-"].icon-block:before, .rst .title-2[class*=" icon-"].icon-block:before, .title-3[class*=" icon-"].icon-block:before, h4[class^="icon-"].icon-block:before, .rst h3[class^="icon-"].icon-block:before, .rst .h3[class^="icon-"].icon-block:before, .rst h2[class^="icon-"].icon-block:before, .rst h1[class^="icon-"].icon-block:before, .rst .title-1[class^="icon-"].icon-block:before, .rst .title-2[class^="icon-"].icon-block:before, .rst .title-3[class^="icon-"].icon-block:before, .title-4[class^="icon-"].icon-block:before, h4[class*=" icon-"].icon-block:before, .rst h3[class*=" icon-"].icon-block:before, .rst .h3[class*=" icon-"].icon-block:before, .rst h2[class*=" icon-"].icon-block:before, .rst h1[class*=" icon-"].icon-block:before, .rst .title-1[class*=" icon-"].icon-block:before, .rst .title-2[class*=" icon-"].icon-block:before, .rst .title-3[class*=" icon-"].icon-block:before, .title-4[class*=" icon-"].icon-block:before, *[class^="icon-"].icon-block:before, *[class*=" icon-"].icon-block:before {
  display: block; }

p[class^="icon-"].icon-corner-left, p[class*=" icon-"].icon-corner-left, div[class^="icon-"].icon-corner-left, div[class*=" icon-"].icon-corner-left, h1[class^="icon-"].icon-corner-left, .title-1[class^="icon-"].icon-corner-left, h1[class*=" icon-"].icon-corner-left, .title-1[class*=" icon-"].icon-corner-left, h2[class^="icon-"].icon-corner-left, .rst h1[class^="icon-"].icon-corner-left, .rst .title-1[class^="icon-"].icon-corner-left, .title-2[class^="icon-"].icon-corner-left, h2[class*=" icon-"].icon-corner-left, .rst h1[class*=" icon-"].icon-corner-left, .rst .title-1[class*=" icon-"].icon-corner-left, .title-2[class*=" icon-"].icon-corner-left, h3[class^="icon-"].icon-corner-left, .h3[class^="icon-"].icon-corner-left, .rst h2[class^="icon-"].icon-corner-left, .rst h1[class^="icon-"].icon-corner-left, .rst .title-1[class^="icon-"].icon-corner-left, .rst .title-2[class^="icon-"].icon-corner-left, .title-3[class^="icon-"].icon-corner-left, h3[class*=" icon-"].icon-corner-left, .h3[class*=" icon-"].icon-corner-left, .rst h2[class*=" icon-"].icon-corner-left, .rst h1[class*=" icon-"].icon-corner-left, .rst .title-1[class*=" icon-"].icon-corner-left, .rst .title-2[class*=" icon-"].icon-corner-left, .title-3[class*=" icon-"].icon-corner-left, h4[class^="icon-"].icon-corner-left, .rst h3[class^="icon-"].icon-corner-left, .rst .h3[class^="icon-"].icon-corner-left, .rst h2[class^="icon-"].icon-corner-left, .rst h1[class^="icon-"].icon-corner-left, .rst .title-1[class^="icon-"].icon-corner-left, .rst .title-2[class^="icon-"].icon-corner-left, .rst .title-3[class^="icon-"].icon-corner-left, .title-4[class^="icon-"].icon-corner-left, h4[class*=" icon-"].icon-corner-left, .rst h3[class*=" icon-"].icon-corner-left, .rst .h3[class*=" icon-"].icon-corner-left, .rst h2[class*=" icon-"].icon-corner-left, .rst h1[class*=" icon-"].icon-corner-left, .rst .title-1[class*=" icon-"].icon-corner-left, .rst .title-2[class*=" icon-"].icon-corner-left, .rst .title-3[class*=" icon-"].icon-corner-left, .title-4[class*=" icon-"].icon-corner-left, *[class^="icon-"].icon-corner-left, *[class*=" icon-"].icon-corner-left {
  position: relative;
  padding-left: 1em; }
  p[class^="icon-"].icon-corner-left.icon-2x, p[class*=" icon-"].icon-corner-left.icon-2x, div[class^="icon-"].icon-corner-left.icon-2x, div[class*=" icon-"].icon-corner-left.icon-2x, h1[class^="icon-"].icon-corner-left.icon-2x, .title-1[class^="icon-"].icon-corner-left.icon-2x, h1[class*=" icon-"].icon-corner-left.icon-2x, .title-1[class*=" icon-"].icon-corner-left.icon-2x, h2[class^="icon-"].icon-corner-left.icon-2x, .rst h1[class^="icon-"].icon-corner-left.icon-2x, .rst .title-1[class^="icon-"].icon-corner-left.icon-2x, .title-2[class^="icon-"].icon-corner-left.icon-2x, h2[class*=" icon-"].icon-corner-left.icon-2x, .rst h1[class*=" icon-"].icon-corner-left.icon-2x, .rst .title-1[class*=" icon-"].icon-corner-left.icon-2x, .title-2[class*=" icon-"].icon-corner-left.icon-2x, h3[class^="icon-"].icon-corner-left.icon-2x, .h3[class^="icon-"].icon-corner-left.icon-2x, .rst h2[class^="icon-"].icon-corner-left.icon-2x, .rst h1[class^="icon-"].icon-corner-left.icon-2x, .rst .title-1[class^="icon-"].icon-corner-left.icon-2x, .rst .title-2[class^="icon-"].icon-corner-left.icon-2x, .title-3[class^="icon-"].icon-corner-left.icon-2x, h3[class*=" icon-"].icon-corner-left.icon-2x, .h3[class*=" icon-"].icon-corner-left.icon-2x, .rst h2[class*=" icon-"].icon-corner-left.icon-2x, .rst h1[class*=" icon-"].icon-corner-left.icon-2x, .rst .title-1[class*=" icon-"].icon-corner-left.icon-2x, .rst .title-2[class*=" icon-"].icon-corner-left.icon-2x, .title-3[class*=" icon-"].icon-corner-left.icon-2x, h4[class^="icon-"].icon-corner-left.icon-2x, .rst h3[class^="icon-"].icon-corner-left.icon-2x, .rst .h3[class^="icon-"].icon-corner-left.icon-2x, .rst h2[class^="icon-"].icon-corner-left.icon-2x, .rst h1[class^="icon-"].icon-corner-left.icon-2x, .rst .title-1[class^="icon-"].icon-corner-left.icon-2x, .rst .title-2[class^="icon-"].icon-corner-left.icon-2x, .rst .title-3[class^="icon-"].icon-corner-left.icon-2x, .title-4[class^="icon-"].icon-corner-left.icon-2x, h4[class*=" icon-"].icon-corner-left.icon-2x, .rst h3[class*=" icon-"].icon-corner-left.icon-2x, .rst .h3[class*=" icon-"].icon-corner-left.icon-2x, .rst h2[class*=" icon-"].icon-corner-left.icon-2x, .rst h1[class*=" icon-"].icon-corner-left.icon-2x, .rst .title-1[class*=" icon-"].icon-corner-left.icon-2x, .rst .title-2[class*=" icon-"].icon-corner-left.icon-2x, .rst .title-3[class*=" icon-"].icon-corner-left.icon-2x, .title-4[class*=" icon-"].icon-corner-left.icon-2x, *[class^="icon-"].icon-corner-left.icon-2x, *[class*=" icon-"].icon-corner-left.icon-2x {
    padding-left: 2rem; }
  p[class^="icon-"].icon-corner-left.icon-3x, p[class*=" icon-"].icon-corner-left.icon-3x, div[class^="icon-"].icon-corner-left.icon-3x, div[class*=" icon-"].icon-corner-left.icon-3x, h1[class^="icon-"].icon-corner-left.icon-3x, .title-1[class^="icon-"].icon-corner-left.icon-3x, h1[class*=" icon-"].icon-corner-left.icon-3x, .title-1[class*=" icon-"].icon-corner-left.icon-3x, h2[class^="icon-"].icon-corner-left.icon-3x, .rst h1[class^="icon-"].icon-corner-left.icon-3x, .rst .title-1[class^="icon-"].icon-corner-left.icon-3x, .title-2[class^="icon-"].icon-corner-left.icon-3x, h2[class*=" icon-"].icon-corner-left.icon-3x, .rst h1[class*=" icon-"].icon-corner-left.icon-3x, .rst .title-1[class*=" icon-"].icon-corner-left.icon-3x, .title-2[class*=" icon-"].icon-corner-left.icon-3x, h3[class^="icon-"].icon-corner-left.icon-3x, .h3[class^="icon-"].icon-corner-left.icon-3x, .rst h2[class^="icon-"].icon-corner-left.icon-3x, .rst h1[class^="icon-"].icon-corner-left.icon-3x, .rst .title-1[class^="icon-"].icon-corner-left.icon-3x, .rst .title-2[class^="icon-"].icon-corner-left.icon-3x, .title-3[class^="icon-"].icon-corner-left.icon-3x, h3[class*=" icon-"].icon-corner-left.icon-3x, .h3[class*=" icon-"].icon-corner-left.icon-3x, .rst h2[class*=" icon-"].icon-corner-left.icon-3x, .rst h1[class*=" icon-"].icon-corner-left.icon-3x, .rst .title-1[class*=" icon-"].icon-corner-left.icon-3x, .rst .title-2[class*=" icon-"].icon-corner-left.icon-3x, .title-3[class*=" icon-"].icon-corner-left.icon-3x, h4[class^="icon-"].icon-corner-left.icon-3x, .rst h3[class^="icon-"].icon-corner-left.icon-3x, .rst .h3[class^="icon-"].icon-corner-left.icon-3x, .rst h2[class^="icon-"].icon-corner-left.icon-3x, .rst h1[class^="icon-"].icon-corner-left.icon-3x, .rst .title-1[class^="icon-"].icon-corner-left.icon-3x, .rst .title-2[class^="icon-"].icon-corner-left.icon-3x, .rst .title-3[class^="icon-"].icon-corner-left.icon-3x, .title-4[class^="icon-"].icon-corner-left.icon-3x, h4[class*=" icon-"].icon-corner-left.icon-3x, .rst h3[class*=" icon-"].icon-corner-left.icon-3x, .rst .h3[class*=" icon-"].icon-corner-left.icon-3x, .rst h2[class*=" icon-"].icon-corner-left.icon-3x, .rst h1[class*=" icon-"].icon-corner-left.icon-3x, .rst .title-1[class*=" icon-"].icon-corner-left.icon-3x, .rst .title-2[class*=" icon-"].icon-corner-left.icon-3x, .rst .title-3[class*=" icon-"].icon-corner-left.icon-3x, .title-4[class*=" icon-"].icon-corner-left.icon-3x, *[class^="icon-"].icon-corner-left.icon-3x, *[class*=" icon-"].icon-corner-left.icon-3x {
    padding-left: 3rem; }
  p[class^="icon-"].icon-corner-left.icon-4x, p[class*=" icon-"].icon-corner-left.icon-4x, div[class^="icon-"].icon-corner-left.icon-4x, div[class*=" icon-"].icon-corner-left.icon-4x, h1[class^="icon-"].icon-corner-left.icon-4x, .title-1[class^="icon-"].icon-corner-left.icon-4x, h1[class*=" icon-"].icon-corner-left.icon-4x, .title-1[class*=" icon-"].icon-corner-left.icon-4x, h2[class^="icon-"].icon-corner-left.icon-4x, .rst h1[class^="icon-"].icon-corner-left.icon-4x, .rst .title-1[class^="icon-"].icon-corner-left.icon-4x, .title-2[class^="icon-"].icon-corner-left.icon-4x, h2[class*=" icon-"].icon-corner-left.icon-4x, .rst h1[class*=" icon-"].icon-corner-left.icon-4x, .rst .title-1[class*=" icon-"].icon-corner-left.icon-4x, .title-2[class*=" icon-"].icon-corner-left.icon-4x, h3[class^="icon-"].icon-corner-left.icon-4x, .h3[class^="icon-"].icon-corner-left.icon-4x, .rst h2[class^="icon-"].icon-corner-left.icon-4x, .rst h1[class^="icon-"].icon-corner-left.icon-4x, .rst .title-1[class^="icon-"].icon-corner-left.icon-4x, .rst .title-2[class^="icon-"].icon-corner-left.icon-4x, .title-3[class^="icon-"].icon-corner-left.icon-4x, h3[class*=" icon-"].icon-corner-left.icon-4x, .h3[class*=" icon-"].icon-corner-left.icon-4x, .rst h2[class*=" icon-"].icon-corner-left.icon-4x, .rst h1[class*=" icon-"].icon-corner-left.icon-4x, .rst .title-1[class*=" icon-"].icon-corner-left.icon-4x, .rst .title-2[class*=" icon-"].icon-corner-left.icon-4x, .title-3[class*=" icon-"].icon-corner-left.icon-4x, h4[class^="icon-"].icon-corner-left.icon-4x, .rst h3[class^="icon-"].icon-corner-left.icon-4x, .rst .h3[class^="icon-"].icon-corner-left.icon-4x, .rst h2[class^="icon-"].icon-corner-left.icon-4x, .rst h1[class^="icon-"].icon-corner-left.icon-4x, .rst .title-1[class^="icon-"].icon-corner-left.icon-4x, .rst .title-2[class^="icon-"].icon-corner-left.icon-4x, .rst .title-3[class^="icon-"].icon-corner-left.icon-4x, .title-4[class^="icon-"].icon-corner-left.icon-4x, h4[class*=" icon-"].icon-corner-left.icon-4x, .rst h3[class*=" icon-"].icon-corner-left.icon-4x, .rst .h3[class*=" icon-"].icon-corner-left.icon-4x, .rst h2[class*=" icon-"].icon-corner-left.icon-4x, .rst h1[class*=" icon-"].icon-corner-left.icon-4x, .rst .title-1[class*=" icon-"].icon-corner-left.icon-4x, .rst .title-2[class*=" icon-"].icon-corner-left.icon-4x, .rst .title-3[class*=" icon-"].icon-corner-left.icon-4x, .title-4[class*=" icon-"].icon-corner-left.icon-4x, *[class^="icon-"].icon-corner-left.icon-4x, *[class*=" icon-"].icon-corner-left.icon-4x {
    padding-left: 4rem; }
  p[class^="icon-"].icon-corner-left:before, p[class*=" icon-"].icon-corner-left:before, div[class^="icon-"].icon-corner-left:before, div[class*=" icon-"].icon-corner-left:before, h1[class^="icon-"].icon-corner-left:before, .title-1[class^="icon-"].icon-corner-left:before, h1[class*=" icon-"].icon-corner-left:before, .title-1[class*=" icon-"].icon-corner-left:before, h2[class^="icon-"].icon-corner-left:before, .rst h1[class^="icon-"].icon-corner-left:before, .rst .title-1[class^="icon-"].icon-corner-left:before, .title-2[class^="icon-"].icon-corner-left:before, h2[class*=" icon-"].icon-corner-left:before, .rst h1[class*=" icon-"].icon-corner-left:before, .rst .title-1[class*=" icon-"].icon-corner-left:before, .title-2[class*=" icon-"].icon-corner-left:before, h3[class^="icon-"].icon-corner-left:before, .h3[class^="icon-"].icon-corner-left:before, .rst h2[class^="icon-"].icon-corner-left:before, .rst h1[class^="icon-"].icon-corner-left:before, .rst .title-1[class^="icon-"].icon-corner-left:before, .rst .title-2[class^="icon-"].icon-corner-left:before, .title-3[class^="icon-"].icon-corner-left:before, h3[class*=" icon-"].icon-corner-left:before, .h3[class*=" icon-"].icon-corner-left:before, .rst h2[class*=" icon-"].icon-corner-left:before, .rst h1[class*=" icon-"].icon-corner-left:before, .rst .title-1[class*=" icon-"].icon-corner-left:before, .rst .title-2[class*=" icon-"].icon-corner-left:before, .title-3[class*=" icon-"].icon-corner-left:before, h4[class^="icon-"].icon-corner-left:before, .rst h3[class^="icon-"].icon-corner-left:before, .rst .h3[class^="icon-"].icon-corner-left:before, .rst h2[class^="icon-"].icon-corner-left:before, .rst h1[class^="icon-"].icon-corner-left:before, .rst .title-1[class^="icon-"].icon-corner-left:before, .rst .title-2[class^="icon-"].icon-corner-left:before, .rst .title-3[class^="icon-"].icon-corner-left:before, .title-4[class^="icon-"].icon-corner-left:before, h4[class*=" icon-"].icon-corner-left:before, .rst h3[class*=" icon-"].icon-corner-left:before, .rst .h3[class*=" icon-"].icon-corner-left:before, .rst h2[class*=" icon-"].icon-corner-left:before, .rst h1[class*=" icon-"].icon-corner-left:before, .rst .title-1[class*=" icon-"].icon-corner-left:before, .rst .title-2[class*=" icon-"].icon-corner-left:before, .rst .title-3[class*=" icon-"].icon-corner-left:before, .title-4[class*=" icon-"].icon-corner-left:before, *[class^="icon-"].icon-corner-left:before, *[class*=" icon-"].icon-corner-left:before {
    display: block;
    position: absolute;
    top: 0.1em;
    left: 0; }
  p[class^="icon-"].icon-corner-left > *, p[class*=" icon-"].icon-corner-left > *, div[class^="icon-"].icon-corner-left > *, div[class*=" icon-"].icon-corner-left > *, h1[class^="icon-"].icon-corner-left > *, .title-1[class^="icon-"].icon-corner-left > *, h1[class*=" icon-"].icon-corner-left > *, .title-1[class*=" icon-"].icon-corner-left > *, h2[class^="icon-"].icon-corner-left > *, .rst h1[class^="icon-"].icon-corner-left > *, .rst .title-1[class^="icon-"].icon-corner-left > *, .title-2[class^="icon-"].icon-corner-left > *, h2[class*=" icon-"].icon-corner-left > *, .rst h1[class*=" icon-"].icon-corner-left > *, .rst .title-1[class*=" icon-"].icon-corner-left > *, .title-2[class*=" icon-"].icon-corner-left > *, h3[class^="icon-"].icon-corner-left > *, .h3[class^="icon-"].icon-corner-left > *, .rst h2[class^="icon-"].icon-corner-left > *, .rst h1[class^="icon-"].icon-corner-left > *, .rst .title-1[class^="icon-"].icon-corner-left > *, .rst .title-2[class^="icon-"].icon-corner-left > *, .title-3[class^="icon-"].icon-corner-left > *, h3[class*=" icon-"].icon-corner-left > *, .h3[class*=" icon-"].icon-corner-left > *, .rst h2[class*=" icon-"].icon-corner-left > *, .rst h1[class*=" icon-"].icon-corner-left > *, .rst .title-1[class*=" icon-"].icon-corner-left > *, .rst .title-2[class*=" icon-"].icon-corner-left > *, .title-3[class*=" icon-"].icon-corner-left > *, h4[class^="icon-"].icon-corner-left > *, .rst h3[class^="icon-"].icon-corner-left > *, .rst .h3[class^="icon-"].icon-corner-left > *, .rst h2[class^="icon-"].icon-corner-left > *, .rst h1[class^="icon-"].icon-corner-left > *, .rst .title-1[class^="icon-"].icon-corner-left > *, .rst .title-2[class^="icon-"].icon-corner-left > *, .rst .title-3[class^="icon-"].icon-corner-left > *, .title-4[class^="icon-"].icon-corner-left > *, h4[class*=" icon-"].icon-corner-left > *, .rst h3[class*=" icon-"].icon-corner-left > *, .rst .h3[class*=" icon-"].icon-corner-left > *, .rst h2[class*=" icon-"].icon-corner-left > *, .rst h1[class*=" icon-"].icon-corner-left > *, .rst .title-1[class*=" icon-"].icon-corner-left > *, .rst .title-2[class*=" icon-"].icon-corner-left > *, .rst .title-3[class*=" icon-"].icon-corner-left > *, .title-4[class*=" icon-"].icon-corner-left > *, *[class^="icon-"].icon-corner-left > *, *[class*=" icon-"].icon-corner-left > * {
    margin-left: 0.3125rem; }

p[class^="icon-"].icon-center-left, p[class*=" icon-"].icon-center-left, div[class^="icon-"].icon-center-left, div[class*=" icon-"].icon-center-left, h1[class^="icon-"].icon-center-left, .title-1[class^="icon-"].icon-center-left, h1[class*=" icon-"].icon-center-left, .title-1[class*=" icon-"].icon-center-left, h2[class^="icon-"].icon-center-left, .rst h1[class^="icon-"].icon-center-left, .rst .title-1[class^="icon-"].icon-center-left, .title-2[class^="icon-"].icon-center-left, h2[class*=" icon-"].icon-center-left, .rst h1[class*=" icon-"].icon-center-left, .rst .title-1[class*=" icon-"].icon-center-left, .title-2[class*=" icon-"].icon-center-left, h3[class^="icon-"].icon-center-left, .h3[class^="icon-"].icon-center-left, .rst h2[class^="icon-"].icon-center-left, .rst h1[class^="icon-"].icon-center-left, .rst .title-1[class^="icon-"].icon-center-left, .rst .title-2[class^="icon-"].icon-center-left, .title-3[class^="icon-"].icon-center-left, h3[class*=" icon-"].icon-center-left, .h3[class*=" icon-"].icon-center-left, .rst h2[class*=" icon-"].icon-center-left, .rst h1[class*=" icon-"].icon-center-left, .rst .title-1[class*=" icon-"].icon-center-left, .rst .title-2[class*=" icon-"].icon-center-left, .title-3[class*=" icon-"].icon-center-left, h4[class^="icon-"].icon-center-left, .rst h3[class^="icon-"].icon-center-left, .rst .h3[class^="icon-"].icon-center-left, .rst h2[class^="icon-"].icon-center-left, .rst h1[class^="icon-"].icon-center-left, .rst .title-1[class^="icon-"].icon-center-left, .rst .title-2[class^="icon-"].icon-center-left, .rst .title-3[class^="icon-"].icon-center-left, .title-4[class^="icon-"].icon-center-left, h4[class*=" icon-"].icon-center-left, .rst h3[class*=" icon-"].icon-center-left, .rst .h3[class*=" icon-"].icon-center-left, .rst h2[class*=" icon-"].icon-center-left, .rst h1[class*=" icon-"].icon-center-left, .rst .title-1[class*=" icon-"].icon-center-left, .rst .title-2[class*=" icon-"].icon-center-left, .rst .title-3[class*=" icon-"].icon-center-left, .title-4[class*=" icon-"].icon-center-left, *[class^="icon-"].icon-center-left, *[class*=" icon-"].icon-center-left {
  position: relative;
  padding-left: 1em; }
  p[class^="icon-"].icon-center-left.icon-2x, p[class*=" icon-"].icon-center-left.icon-2x, div[class^="icon-"].icon-center-left.icon-2x, div[class*=" icon-"].icon-center-left.icon-2x, h1[class^="icon-"].icon-center-left.icon-2x, .title-1[class^="icon-"].icon-center-left.icon-2x, h1[class*=" icon-"].icon-center-left.icon-2x, .title-1[class*=" icon-"].icon-center-left.icon-2x, h2[class^="icon-"].icon-center-left.icon-2x, .rst h1[class^="icon-"].icon-center-left.icon-2x, .rst .title-1[class^="icon-"].icon-center-left.icon-2x, .title-2[class^="icon-"].icon-center-left.icon-2x, h2[class*=" icon-"].icon-center-left.icon-2x, .rst h1[class*=" icon-"].icon-center-left.icon-2x, .rst .title-1[class*=" icon-"].icon-center-left.icon-2x, .title-2[class*=" icon-"].icon-center-left.icon-2x, h3[class^="icon-"].icon-center-left.icon-2x, .h3[class^="icon-"].icon-center-left.icon-2x, .rst h2[class^="icon-"].icon-center-left.icon-2x, .rst h1[class^="icon-"].icon-center-left.icon-2x, .rst .title-1[class^="icon-"].icon-center-left.icon-2x, .rst .title-2[class^="icon-"].icon-center-left.icon-2x, .title-3[class^="icon-"].icon-center-left.icon-2x, h3[class*=" icon-"].icon-center-left.icon-2x, .h3[class*=" icon-"].icon-center-left.icon-2x, .rst h2[class*=" icon-"].icon-center-left.icon-2x, .rst h1[class*=" icon-"].icon-center-left.icon-2x, .rst .title-1[class*=" icon-"].icon-center-left.icon-2x, .rst .title-2[class*=" icon-"].icon-center-left.icon-2x, .title-3[class*=" icon-"].icon-center-left.icon-2x, h4[class^="icon-"].icon-center-left.icon-2x, .rst h3[class^="icon-"].icon-center-left.icon-2x, .rst .h3[class^="icon-"].icon-center-left.icon-2x, .rst h2[class^="icon-"].icon-center-left.icon-2x, .rst h1[class^="icon-"].icon-center-left.icon-2x, .rst .title-1[class^="icon-"].icon-center-left.icon-2x, .rst .title-2[class^="icon-"].icon-center-left.icon-2x, .rst .title-3[class^="icon-"].icon-center-left.icon-2x, .title-4[class^="icon-"].icon-center-left.icon-2x, h4[class*=" icon-"].icon-center-left.icon-2x, .rst h3[class*=" icon-"].icon-center-left.icon-2x, .rst .h3[class*=" icon-"].icon-center-left.icon-2x, .rst h2[class*=" icon-"].icon-center-left.icon-2x, .rst h1[class*=" icon-"].icon-center-left.icon-2x, .rst .title-1[class*=" icon-"].icon-center-left.icon-2x, .rst .title-2[class*=" icon-"].icon-center-left.icon-2x, .rst .title-3[class*=" icon-"].icon-center-left.icon-2x, .title-4[class*=" icon-"].icon-center-left.icon-2x, *[class^="icon-"].icon-center-left.icon-2x, *[class*=" icon-"].icon-center-left.icon-2x {
    padding-left: 2rem; }
  p[class^="icon-"].icon-center-left.icon-3x, p[class*=" icon-"].icon-center-left.icon-3x, div[class^="icon-"].icon-center-left.icon-3x, div[class*=" icon-"].icon-center-left.icon-3x, h1[class^="icon-"].icon-center-left.icon-3x, .title-1[class^="icon-"].icon-center-left.icon-3x, h1[class*=" icon-"].icon-center-left.icon-3x, .title-1[class*=" icon-"].icon-center-left.icon-3x, h2[class^="icon-"].icon-center-left.icon-3x, .rst h1[class^="icon-"].icon-center-left.icon-3x, .rst .title-1[class^="icon-"].icon-center-left.icon-3x, .title-2[class^="icon-"].icon-center-left.icon-3x, h2[class*=" icon-"].icon-center-left.icon-3x, .rst h1[class*=" icon-"].icon-center-left.icon-3x, .rst .title-1[class*=" icon-"].icon-center-left.icon-3x, .title-2[class*=" icon-"].icon-center-left.icon-3x, h3[class^="icon-"].icon-center-left.icon-3x, .h3[class^="icon-"].icon-center-left.icon-3x, .rst h2[class^="icon-"].icon-center-left.icon-3x, .rst h1[class^="icon-"].icon-center-left.icon-3x, .rst .title-1[class^="icon-"].icon-center-left.icon-3x, .rst .title-2[class^="icon-"].icon-center-left.icon-3x, .title-3[class^="icon-"].icon-center-left.icon-3x, h3[class*=" icon-"].icon-center-left.icon-3x, .h3[class*=" icon-"].icon-center-left.icon-3x, .rst h2[class*=" icon-"].icon-center-left.icon-3x, .rst h1[class*=" icon-"].icon-center-left.icon-3x, .rst .title-1[class*=" icon-"].icon-center-left.icon-3x, .rst .title-2[class*=" icon-"].icon-center-left.icon-3x, .title-3[class*=" icon-"].icon-center-left.icon-3x, h4[class^="icon-"].icon-center-left.icon-3x, .rst h3[class^="icon-"].icon-center-left.icon-3x, .rst .h3[class^="icon-"].icon-center-left.icon-3x, .rst h2[class^="icon-"].icon-center-left.icon-3x, .rst h1[class^="icon-"].icon-center-left.icon-3x, .rst .title-1[class^="icon-"].icon-center-left.icon-3x, .rst .title-2[class^="icon-"].icon-center-left.icon-3x, .rst .title-3[class^="icon-"].icon-center-left.icon-3x, .title-4[class^="icon-"].icon-center-left.icon-3x, h4[class*=" icon-"].icon-center-left.icon-3x, .rst h3[class*=" icon-"].icon-center-left.icon-3x, .rst .h3[class*=" icon-"].icon-center-left.icon-3x, .rst h2[class*=" icon-"].icon-center-left.icon-3x, .rst h1[class*=" icon-"].icon-center-left.icon-3x, .rst .title-1[class*=" icon-"].icon-center-left.icon-3x, .rst .title-2[class*=" icon-"].icon-center-left.icon-3x, .rst .title-3[class*=" icon-"].icon-center-left.icon-3x, .title-4[class*=" icon-"].icon-center-left.icon-3x, *[class^="icon-"].icon-center-left.icon-3x, *[class*=" icon-"].icon-center-left.icon-3x {
    padding-left: 3rem; }
  p[class^="icon-"].icon-center-left.icon-4x, p[class*=" icon-"].icon-center-left.icon-4x, div[class^="icon-"].icon-center-left.icon-4x, div[class*=" icon-"].icon-center-left.icon-4x, h1[class^="icon-"].icon-center-left.icon-4x, .title-1[class^="icon-"].icon-center-left.icon-4x, h1[class*=" icon-"].icon-center-left.icon-4x, .title-1[class*=" icon-"].icon-center-left.icon-4x, h2[class^="icon-"].icon-center-left.icon-4x, .rst h1[class^="icon-"].icon-center-left.icon-4x, .rst .title-1[class^="icon-"].icon-center-left.icon-4x, .title-2[class^="icon-"].icon-center-left.icon-4x, h2[class*=" icon-"].icon-center-left.icon-4x, .rst h1[class*=" icon-"].icon-center-left.icon-4x, .rst .title-1[class*=" icon-"].icon-center-left.icon-4x, .title-2[class*=" icon-"].icon-center-left.icon-4x, h3[class^="icon-"].icon-center-left.icon-4x, .h3[class^="icon-"].icon-center-left.icon-4x, .rst h2[class^="icon-"].icon-center-left.icon-4x, .rst h1[class^="icon-"].icon-center-left.icon-4x, .rst .title-1[class^="icon-"].icon-center-left.icon-4x, .rst .title-2[class^="icon-"].icon-center-left.icon-4x, .title-3[class^="icon-"].icon-center-left.icon-4x, h3[class*=" icon-"].icon-center-left.icon-4x, .h3[class*=" icon-"].icon-center-left.icon-4x, .rst h2[class*=" icon-"].icon-center-left.icon-4x, .rst h1[class*=" icon-"].icon-center-left.icon-4x, .rst .title-1[class*=" icon-"].icon-center-left.icon-4x, .rst .title-2[class*=" icon-"].icon-center-left.icon-4x, .title-3[class*=" icon-"].icon-center-left.icon-4x, h4[class^="icon-"].icon-center-left.icon-4x, .rst h3[class^="icon-"].icon-center-left.icon-4x, .rst .h3[class^="icon-"].icon-center-left.icon-4x, .rst h2[class^="icon-"].icon-center-left.icon-4x, .rst h1[class^="icon-"].icon-center-left.icon-4x, .rst .title-1[class^="icon-"].icon-center-left.icon-4x, .rst .title-2[class^="icon-"].icon-center-left.icon-4x, .rst .title-3[class^="icon-"].icon-center-left.icon-4x, .title-4[class^="icon-"].icon-center-left.icon-4x, h4[class*=" icon-"].icon-center-left.icon-4x, .rst h3[class*=" icon-"].icon-center-left.icon-4x, .rst .h3[class*=" icon-"].icon-center-left.icon-4x, .rst h2[class*=" icon-"].icon-center-left.icon-4x, .rst h1[class*=" icon-"].icon-center-left.icon-4x, .rst .title-1[class*=" icon-"].icon-center-left.icon-4x, .rst .title-2[class*=" icon-"].icon-center-left.icon-4x, .rst .title-3[class*=" icon-"].icon-center-left.icon-4x, .title-4[class*=" icon-"].icon-center-left.icon-4x, *[class^="icon-"].icon-center-left.icon-4x, *[class*=" icon-"].icon-center-left.icon-4x {
    padding-left: 4rem; }
  p[class^="icon-"].icon-center-left:before, p[class*=" icon-"].icon-center-left:before, div[class^="icon-"].icon-center-left:before, div[class*=" icon-"].icon-center-left:before, h1[class^="icon-"].icon-center-left:before, .title-1[class^="icon-"].icon-center-left:before, h1[class*=" icon-"].icon-center-left:before, .title-1[class*=" icon-"].icon-center-left:before, h2[class^="icon-"].icon-center-left:before, .rst h1[class^="icon-"].icon-center-left:before, .rst .title-1[class^="icon-"].icon-center-left:before, .title-2[class^="icon-"].icon-center-left:before, h2[class*=" icon-"].icon-center-left:before, .rst h1[class*=" icon-"].icon-center-left:before, .rst .title-1[class*=" icon-"].icon-center-left:before, .title-2[class*=" icon-"].icon-center-left:before, h3[class^="icon-"].icon-center-left:before, .h3[class^="icon-"].icon-center-left:before, .rst h2[class^="icon-"].icon-center-left:before, .rst h1[class^="icon-"].icon-center-left:before, .rst .title-1[class^="icon-"].icon-center-left:before, .rst .title-2[class^="icon-"].icon-center-left:before, .title-3[class^="icon-"].icon-center-left:before, h3[class*=" icon-"].icon-center-left:before, .h3[class*=" icon-"].icon-center-left:before, .rst h2[class*=" icon-"].icon-center-left:before, .rst h1[class*=" icon-"].icon-center-left:before, .rst .title-1[class*=" icon-"].icon-center-left:before, .rst .title-2[class*=" icon-"].icon-center-left:before, .title-3[class*=" icon-"].icon-center-left:before, h4[class^="icon-"].icon-center-left:before, .rst h3[class^="icon-"].icon-center-left:before, .rst .h3[class^="icon-"].icon-center-left:before, .rst h2[class^="icon-"].icon-center-left:before, .rst h1[class^="icon-"].icon-center-left:before, .rst .title-1[class^="icon-"].icon-center-left:before, .rst .title-2[class^="icon-"].icon-center-left:before, .rst .title-3[class^="icon-"].icon-center-left:before, .title-4[class^="icon-"].icon-center-left:before, h4[class*=" icon-"].icon-center-left:before, .rst h3[class*=" icon-"].icon-center-left:before, .rst .h3[class*=" icon-"].icon-center-left:before, .rst h2[class*=" icon-"].icon-center-left:before, .rst h1[class*=" icon-"].icon-center-left:before, .rst .title-1[class*=" icon-"].icon-center-left:before, .rst .title-2[class*=" icon-"].icon-center-left:before, .rst .title-3[class*=" icon-"].icon-center-left:before, .title-4[class*=" icon-"].icon-center-left:before, *[class^="icon-"].icon-center-left:before, *[class*=" icon-"].icon-center-left:before {
    display: block;
    position: absolute;
    top: 50%;
    left: 0;
    -ms-transform: translate(0, -50%);
    transform: translate(0, -50%); }
  p[class^="icon-"].icon-center-left > *, p[class*=" icon-"].icon-center-left > *, div[class^="icon-"].icon-center-left > *, div[class*=" icon-"].icon-center-left > *, h1[class^="icon-"].icon-center-left > *, .title-1[class^="icon-"].icon-center-left > *, h1[class*=" icon-"].icon-center-left > *, .title-1[class*=" icon-"].icon-center-left > *, h2[class^="icon-"].icon-center-left > *, .rst h1[class^="icon-"].icon-center-left > *, .rst .title-1[class^="icon-"].icon-center-left > *, .title-2[class^="icon-"].icon-center-left > *, h2[class*=" icon-"].icon-center-left > *, .rst h1[class*=" icon-"].icon-center-left > *, .rst .title-1[class*=" icon-"].icon-center-left > *, .title-2[class*=" icon-"].icon-center-left > *, h3[class^="icon-"].icon-center-left > *, .h3[class^="icon-"].icon-center-left > *, .rst h2[class^="icon-"].icon-center-left > *, .rst h1[class^="icon-"].icon-center-left > *, .rst .title-1[class^="icon-"].icon-center-left > *, .rst .title-2[class^="icon-"].icon-center-left > *, .title-3[class^="icon-"].icon-center-left > *, h3[class*=" icon-"].icon-center-left > *, .h3[class*=" icon-"].icon-center-left > *, .rst h2[class*=" icon-"].icon-center-left > *, .rst h1[class*=" icon-"].icon-center-left > *, .rst .title-1[class*=" icon-"].icon-center-left > *, .rst .title-2[class*=" icon-"].icon-center-left > *, .title-3[class*=" icon-"].icon-center-left > *, h4[class^="icon-"].icon-center-left > *, .rst h3[class^="icon-"].icon-center-left > *, .rst .h3[class^="icon-"].icon-center-left > *, .rst h2[class^="icon-"].icon-center-left > *, .rst h1[class^="icon-"].icon-center-left > *, .rst .title-1[class^="icon-"].icon-center-left > *, .rst .title-2[class^="icon-"].icon-center-left > *, .rst .title-3[class^="icon-"].icon-center-left > *, .title-4[class^="icon-"].icon-center-left > *, h4[class*=" icon-"].icon-center-left > *, .rst h3[class*=" icon-"].icon-center-left > *, .rst .h3[class*=" icon-"].icon-center-left > *, .rst h2[class*=" icon-"].icon-center-left > *, .rst h1[class*=" icon-"].icon-center-left > *, .rst .title-1[class*=" icon-"].icon-center-left > *, .rst .title-2[class*=" icon-"].icon-center-left > *, .rst .title-3[class*=" icon-"].icon-center-left > *, .title-4[class*=" icon-"].icon-center-left > *, *[class^="icon-"].icon-center-left > *, *[class*=" icon-"].icon-center-left > * {
    margin-left: 0.3125rem; }

.button[class^="icon-"], .button[class*=" icon-"] {
  font-family: inherit; }
  .button[class^="icon-"]:before, .button[class*=" icon-"]:before {
    font-family: 'icomoon';
    margin-right: 0.3125rem;
    speak: none;
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    /* Better Font Rendering =========== */
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale; }
  .button[class^="icon-"].icoAft:before, .button[class*=" icon-"].icoAft:before {
    position: reltive;
    right: 0.5rem;
    width: 2rem; }

.icon-2x {
  font-size: 2rem; }

.icon-3x {
  font-size: 3rem; }

.icon-4x {
  font-size: 4rem; }

.icon-collections:before {
  content: ""; }

.icon-tag:before {
  content: ""; }

.icon-close:before {
  content: ""; }

.icon-long_arrow_left:before {
  content: ""; }

.icon-long_arrow_right:before {
  font-size: 1.8rem;
  content: ""; }

.icon-arrow-right:before {
  content: ""; }

.icon-arrow-right:before {
  content: ""; }

.icon-download:before {
  content: ""; }

.icon-film1:before {
  content: ""; }

.icon-map1:before {
  content: ""; }

.icon-message-circle:before {
  content: ""; }

.icon-videocam:before {
  content: ""; }

.icon-collection:before {
  content: ""; }

.icon-expositions:before {
  content: ""; }

.icon-outils:before {
  content: ""; }

.icon-reperes:before {
  content: ""; }

.icon-calendar:before, .icon-visitmore2:before {
  content: ""; }

.icon-museummore:before, .icon-visitmore3:before {
  content: ""; }

.icon-plan:before, .icon-visitmore1:before {
  content: ""; }

.icon-play:before {
  content: ""; }

.icon-mail:before {
  content: ""; }

.icon-cloud_doc:before {
  content: ""; }

.icon-comment:before {
  content: ""; }

.icon-doc:before {
  content: ""; }

.icon-linkdoc:before {
  content: ""; }

.icon-link:before {
  content: ""; }

.icon-arro_left:before, .fa-chevron-left:before, .slick-prev:before {
  content: ""; }

.icon-arro_right:before, .fa-chevron-right:before, ul.arrow-2 li:not(.no-bullet):before, ul.chevron:not(.defer) li:not(.no-bullet):before, ul.chevron.defer li:not(.no-bullet) > :first-child:before, ul.chevron.smaller li:not(.no-bullet):before, .slick-next:before {
  content: ""; }

.icon-map:before {
  content: ""; }

.icon-image:before {
  content: ""; }

.icon-video:before {
  content: ""; }

.icon-sound:before {
  content: ""; }

.icon-search:before, .fa-search:before {
  content: ""; }

.icon-music:before {
  content: ""; }

.icon-film:before {
  content: ""; }

.icon-volume-up:before {
  content: ""; }

.icon-video-camera:before {
  content: ""; }

.icon-image2:before {
  content: ""; }

.icon-photo:before {
  content: ""; }

.icon-picture-o:before {
  content: ""; }

.icon-pencil:before {
  content: ""; }

.icon-question-circle:before, .fa-question-circle:before {
  content: ""; }

.icon-eye:before {
  content: ""; }

.icon-eye-slash:before {
  content: ""; }

.icon-twitter:before {
  content: ""; }

.icon-facebook:before {
  content: ""; }

.icon-filter:before {
  content: ""; }

.icon-file-text-o:before {
  content: ""; }

.icon-order:before {
  content: ""; }

.icon-youtube-square:before {
  content: ""; }

.icon-youtube:before {
  content: ""; }

.icon-newspaper-o:before {
  content: ""; }

/* Slider */
.slick-slider {
  position: relative;
  display: block;
  box-sizing: border-box;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent; }

.slick-list {
  position: relative;
  overflow: hidden;
  display: block;
  margin: 0;
  padding: 0; }
  .slick-list:focus {
    outline: none; }
  .slick-list.dragging {
    cursor: pointer;
    cursor: hand; }

.slick-slider .slick-track,
.slick-slider .slick-list {
  -ms-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0); }

.slick-track {
  position: relative;
  left: 0;
  top: 0;
  display: block; }
  .slick-track:before, .slick-track:after {
    content: "";
    display: table; }
  .slick-track:after {
    clear: both; }
  .slick-loading .slick-track {
    visibility: hidden; }

.slick-slide {
  float: left;
  height: 100%;
  min-height: 1px;
  display: none; }
  [dir="rtl"] .slick-slide {
    float: right; }
  .slick-slide img {
    display: block; }
  .slick-slide.slick-loading img {
    display: none; }
  .slick-slide.dragging img {
    pointer-events: none; }
  .slick-initialized .slick-slide {
    display: block; }
  .slick-loading .slick-slide {
    visibility: hidden; }
  .slick-vertical .slick-slide {
    display: block;
    height: auto;
    border: 1px solid transparent; }

.slick-arrow.slick-hidden {
  display: none; }

.slick-arrow {
  font-family: 'icomoon'; }
  .slick-arrow:before {
    font-family: 'icomoon'; }

.slick-prev {
  font-size: 0; }
  .slick-prev:before {
    font-size: 4rem; }

.slick-next {
  font-size: 0; }
  .slick-next:before {
    font-size: 4rem; }

.reveal .slick-prev, .reveal .slick-next {
  position: absolute;
  top: 50%;
  width: 2rem;
  height: 2rem;
  z-index: 20;
  -ms-transform: translate(0%, -50%);
      transform: translate(0%, -50%); }
  .reveal .slick-prev:before, .reveal .slick-next:before {
    background: rgba(0, 0, 0, 0.5);
    position: absolute;
    left: 50%;
    top: 50%;
    -ms-transform: translate(-50%, -50%);
        transform: translate(-50%, -50%);
    color: #FFF;
    border-radius: 100px;
    font-size: 1.1rem;
    padding: 0.5rem; }

.reveal .slick-prev {
  left: 0.2rem; }

.reveal .close-button {
  height: 2rem;
  width: 2rem;
  z-index: 30; }

.reveal .slick-next {
  right: 0.2rem; }

/* Slider */
.slick-loading .slick-list {
  background: #fff url("./ajax-loader.gif") center center no-repeat; }

/* Icons */
.reveal .close-button {
  height: 3rem;
  width: 3rem;
  border-radius: 100px;
  line-height: 1.1rem;
  background: #000; }
  .reveal .close-button span {
    width: 3rem;
    display: inline-block;
    line-height: 1rem;
    color: #FFF;
    position: absolute;
    top: 50%;
    left: 50%;
    font-size: 3rem;
    height: 1.5rem;
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%); }

/* Arrows */
.menu-gallery a {
  font-size: 1rem;
  color: #0a0a0a; }
  .menu-gallery a:hover {
    color: #dd3333; }

.menu-gallery .dropdown-pane {
  padding: 0; }
  .menu-gallery .dropdown-pane li {
    border-bottom: 1px solid #ddd; }
    .menu-gallery .dropdown-pane li:last-child {
      border-bottom: 0; }

.menu-gallery .dropdown.menu .first-sub {
  border: 1px solid #DDD; }

.button.expo {
  background: #f7f7f7;
  border: #8a8a8a 3px solid;
  position: relative;
  color: #0a0a0a;
  text-transform: uppercase;
  padding-right: 4rem;
  padding-left: 0;
  text-indent: 1rem; }
  .button.expo:after {
    position: absolute;
    right: 0;
    top: 0;
    height: 100%;
    width: 3rem;
    line-height: 100%;
    content: "+";
    border: #8a8a8a 3px solid;
    background: #8a8a8a;
    color: white;
    font-size: 2rem;
    line-height: 2rem;
    text-indent: 0rem; }

.galleryExpo {
  /* Dots */ }
  .galleryExpo .descSlide {
    padding: 0 2rem 0 0; }
  .galleryExpo .titleSlide * {
    text-transform: none; }
  .galleryExpo .titleSlide h3, .galleryExpo .titleSlide .h3, .galleryExpo .titleSlide .rst h2, .rst .galleryExpo .titleSlide h2, .galleryExpo .titleSlide .rst h1, .rst .galleryExpo .titleSlide h1, .galleryExpo .titleSlide .rst .title-1, .rst .galleryExpo .titleSlide .title-1, .galleryExpo .titleSlide .rst .title-2, .rst .galleryExpo .titleSlide .title-2, .galleryExpo .titleSlide .title-3 {
    font-weight: 800; }
  .galleryExpo .slick-current {
    height: auto; }
  .galleryExpo .slick-slide:not(.slick-current) {
    height: 0; }
  .galleryExpo .slider-for {
    height: auto;
    overflow: hidden;
    background: transparent; }
    .galleryExpo .slider-for .slick-prev, .galleryExpo .slider-for .slick-arrow {
      top: 0;
      -ms-transform: translate(0, 0);
      transform: translate(0, 0); }
  .galleryExpo .slider-nav {
    height: auto;
    background: transparent; }
    .galleryExpo .slider-nav img {
      margin: 3%;
      max-width: 96%;
      border: 1px solid #DDD; }
  .galleryExpo .image-slider-container {
    height: auto;
    position: relative;
    text-align: center; }
    .galleryExpo .image-slider-container a {
      width: 100%;
      max-width: 100%;
      display: inline-block;
      position: relative; }
      .galleryExpo .image-slider-container a:hover:after {
        left: 50%;
        -ms-transform: translate(-50%, -50%);
        transform: translate(-50%, -50%);
        content: "\e911";
        font-family: icomoon;
        font-size: 2rem;
        position: absolute;
        top: 50%;
        left: 50%;
        -ms-transform: translate(-50%, -50%);
        transform: translate(-50%, -50%);
        color: #FFF;
        line-height: 2rem;
        padding: 0.8rem;
        display: block;
        z-index: 100;
        background: #000;
        text-align: center;
        vertical-align: middle;
        border-radius: 100%; }
      .galleryExpo .image-slider-container a:hover:before {
        display: block;
        content: '';
        position: absolute;
        z-index: 1;
        height: 100%;
        width: 100%;
        background: rgba(0, 0, 0, 0.5); }
    .galleryExpo .image-slider-container .image-slider {
      position: relative; }
  .galleryExpo .slick-prev,
  .galleryExpo .slick-next {
    left: 0;
    z-index: 100;
    background: #f7f7f7;
    padding: 0.3rem;
    height: 2.2rem;
    display: block;
    width: 2.2rem;
    position: absolute;
    line-height: 0px;
    font-size: 0px;
    cursor: pointer;
    color: transparent;
    top: 50%;
    -ms-transform: translate(0, -50%);
    transform: translate(0, -50%);
    border: none;
    outline: none; }
    .galleryExpo .slick-prev:hover, .galleryExpo .slick-prev:focus,
    .galleryExpo .slick-next:hover,
    .galleryExpo .slick-next:focus {
      outline: none;
      color: transparent; }
      .galleryExpo .slick-prev:hover:before, .galleryExpo .slick-prev:focus:before,
      .galleryExpo .slick-next:hover:before,
      .galleryExpo .slick-next:focus:before {
        opacity: 1;
        color: #dd3333; }
    .galleryExpo .slick-prev.slick-disabled:before,
    .galleryExpo .slick-next.slick-disabled:before {
      opacity: 0.25; }
    .galleryExpo .slick-prev:before,
    .galleryExpo .slick-next:before {
      font-family: "icomoon";
      font-size: 20px;
      line-height: 1;
      color: black;
      opacity: 0.75;
      -webkit-font-smoothing: antialiased;
      -moz-osx-font-smoothing: grayscale; }
  .galleryExpo .slick-prev {
    left: 0px; }
    [dir="rtl"] .galleryExpo .slick-prev {
      left: auto;
      right: 0px; }
    .galleryExpo .slick-prev:before {
      content: ""; }
      [dir="rtl"] .galleryExpo .slick-prev:before {
        content: ""; }
  .galleryExpo .slick-next {
    right: 0px;
    left: auto; }
    [dir="rtl"] .galleryExpo .slick-next {
      left: 0px;
      right: auto; }
    .galleryExpo .slick-next:before {
      content: ""; }
      [dir="rtl"] .galleryExpo .slick-next:before {
        content: ""; }
  .galleryExpo .slick-dotted.slick-slider {
    margin-bottom: 30px; }
  .galleryExpo .slick-dots {
    position: absolute;
    bottom: -25px;
    list-style: none;
    display: block;
    text-align: center;
    padding: 0;
    margin: 0;
    width: 100%; }
    .galleryExpo .slick-dots li {
      position: relative;
      display: inline-block;
      height: 20px;
      width: 20px;
      margin: 0 5px;
      padding: 0;
      cursor: pointer; }
      .galleryExpo .slick-dots li button {
        border: 0;
        background: transparent;
        display: block;
        height: 20px;
        width: 20px;
        outline: none;
        line-height: 0px;
        font-size: 0px;
        color: transparent;
        padding: 5px;
        cursor: pointer; }
        .galleryExpo .slick-dots li button:hover, .galleryExpo .slick-dots li button:focus {
          outline: none; }
          .galleryExpo .slick-dots li button:hover:before, .galleryExpo .slick-dots li button:focus:before {
            opacity: 1; }
        .galleryExpo .slick-dots li button:before {
          position: absolute;
          top: 0;
          left: 0;
          content: "";
          width: 20px;
          height: 20px;
          font-family: "icomoon";
          font-size: 6px;
          line-height: 20px;
          text-align: center;
          color: black;
          opacity: 0.25;
          -webkit-font-smoothing: antialiased;
          -moz-osx-font-smoothing: grayscale; }
      .galleryExpo .slick-dots li.slick-active button:before {
        color: black;
        opacity: 0.75; }

/*Fonts library*/
/*Fonts library*/
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 100;
  font-display: swap;
  src: url("../fonts/inter/Inter-Thin.woff2?v=3.15") format("woff2"), url("../fonts/inter/Inter-Thin.woff?v=3.15") format("woff"); }

@font-face {
  font-family: 'Inter';
  font-style: italic;
  font-weight: 100;
  font-display: swap;
  src: url("../fonts/inter/Inter-ThinItalic.woff2?v=3.15") format("woff2"), url("../fonts/inter/Inter-ThinItalic.woff?v=3.15") format("woff"); }

@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 200;
  font-display: swap;
  src: url("../fonts/inter/Inter-ExtraLight.woff2?v=3.15") format("woff2"), url("../fonts/inter/Inter-ExtraLight.woff?v=3.15") format("woff"); }

@font-face {
  font-family: 'Inter';
  font-style: italic;
  font-weight: 200;
  font-display: swap;
  src: url("../fonts/inter/Inter-ExtraLightItalic.woff2?v=3.15") format("woff2"), url("../fonts/inter/Inter-ExtraLightItalic.woff?v=3.15") format("woff"); }

@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url("../fonts/inter/Inter-Light.woff2?v=3.15") format("woff2"), url("../fonts/inter/Inter-Light.woff?v=3.15") format("woff"); }

@font-face {
  font-family: 'Inter';
  font-style: italic;
  font-weight: 300;
  font-display: swap;
  src: url("../fonts/inter/Inter-LightItalic.woff2?v=3.15") format("woff2"), url("../fonts/inter/Inter-LightItalic.woff?v=3.15") format("woff"); }

@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("../fonts/inter/Inter-Regular.woff2?v=3.15") format("woff2"), url("../fonts/inter/Inter-Regular.woff?v=3.15") format("woff"); }

@font-face {
  font-family: 'Inter';
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url("../fonts/inter/Inter-Italic.woff2?v=3.15") format("woff2"), url("../fonts/inter/Inter-Italic.woff?v=3.15") format("woff"); }

@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("../fonts/inter/Inter-Medium.woff2?v=3.15") format("woff2"), url("../fonts/inter/Inter-Medium.woff?v=3.15") format("woff"); }

@font-face {
  font-family: 'Inter';
  font-style: italic;
  font-weight: 500;
  font-display: swap;
  src: url("../fonts/inter/Inter-MediumItalic.woff2?v=3.15") format("woff2"), url("../fonts/inter/Inter-MediumItalic.woff?v=3.15") format("woff"); }

@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("../fonts/inter/Inter-SemiBold.woff2?v=3.15") format("woff2"), url("../fonts/inter/Inter-SemiBold.woff?v=3.15") format("woff"); }

@font-face {
  font-family: 'Inter';
  font-style: italic;
  font-weight: 600;
  font-display: swap;
  src: url("../fonts/inter/Inter-SemiBoldItalic.woff2?v=3.15") format("woff2"), url("../fonts/inter/Inter-SemiBoldItalic.woff?v=3.15") format("woff"); }

@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("../fonts/inter/Inter-Bold.woff2?v=3.15") format("woff2"), url("../fonts/inter/Inter-Bold.woff?v=3.15") format("woff"); }

@font-face {
  font-family: 'Inter';
  font-style: italic;
  font-weight: 700;
  font-display: swap;
  src: url("../fonts/inter/Inter-BoldItalic.woff2?v=3.15") format("woff2"), url("../fonts/inter/Inter-BoldItalic.woff?v=3.15") format("woff"); }

@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url("../fonts/inter/Inter-ExtraBold.woff2?v=3.15") format("woff2"), url("../fonts/inter/Inter-ExtraBold.woff?v=3.15") format("woff"); }

@font-face {
  font-family: 'Inter';
  font-style: italic;
  font-weight: 800;
  font-display: swap;
  src: url("../fonts/inter/Inter-ExtraBoldItalic.woff2?v=3.15") format("woff2"), url("../fonts/inter/Inter-ExtraBoldItalic.woff?v=3.15") format("woff"); }

@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 900;
  font-display: swap;
  src: url("../fonts/inter/Inter-Black.woff2?v=3.15") format("woff2"), url("../fonts/inter/Inter-Black.woff?v=3.15") format("woff"); }

@font-face {
  font-family: 'Inter';
  font-style: italic;
  font-weight: 900;
  font-display: swap;
  src: url("../fonts/inter/Inter-BlackItalic.woff2?v=3.15") format("woff2"), url("../fonts/inter/Inter-BlackItalic.woff?v=3.15") format("woff"); }

/*
 * Various content styles related to specific webapp parts (cms, blog,
 * accounts, etc..)
 *
 * For more common and global contents, prefer to put them in addons/
 *
 * Remember these style are enforced within #body_content so they will
 * override any basic style without an id
 */
audio, video {
  width: 100%; }

.right {
  float: right;
  width: auto; }

.left {
  float: left; }

.absoRight {
  position: absolute;
  top: 0;
  right: 0; }

i {
  font-style: normal; }


h3,
.h3,
.rst h2,
.rst h1,
.rst .title-1,
.rst .title-2,
.title-3 {
  font-weight: 200; }


h5,
.rst h4,
.rst h3,
.rst .h3,
.rst h2,
.rst h1,
.rst .title-1,
.rst .title-2,
.rst .title-3,
.rst .title-4,
.title-5 {
  font-weight: 300;
  position: relative; }
  h5:before, .rst h4:before, .rst h3:before, .rst .h3:before, .rst h2:before, .rst h1:before, .rst .title-1:before, .rst .title-2:before, .rst .title-3:before, .rst .title-4:before, .title-5:before {
    content: '';
    background: #dd3333;
    height: 2px;
    width: 1rem;
    bottom: -4px;
    left: 0;
    display: block;
    position: absolute; }

.baseline svg {
  position: relative;
  top: 1rem;
  left: 0.4rem; }

*:not(.section.red) .red,
a.red {
  color: #dd3333; }

h1.article-title, .article-title.title-1 {
  font-weight: 400 !important;
  line-height: 1.1;
  font-family: 'Source Sans Pro', sans-serif;
  border-bottom: 2px solid #CCC;
  padding-bottom: 1rem;
  text-transform: normal;
  font-size: 2.3rem; }

.headerAtticle h1, .headerAtticle .title-1, #visit-decription h1, #visit-decription .title-1 {
  font-weight: 400 !important;
  line-height: 1.1;
  font-family: 'Source Sans Pro', sans-serif;
  border-bottom: 2px solid #CCC;
  padding-bottom: 1rem;
  text-transform: normal;
  font-size: 2.3rem; }

.headerAtticle h4, .headerAtticle .rst h3, .rst .headerAtticle h3, .headerAtticle .rst .h3, .rst .headerAtticle .h3, .headerAtticle .rst h2, .rst .headerAtticle h2, .headerAtticle .rst h1, .rst .headerAtticle h1, .headerAtticle .rst .title-1, .rst .headerAtticle .title-1, .headerAtticle .rst .title-2, .rst .headerAtticle .title-2, .headerAtticle .rst .title-3, .rst .headerAtticle .title-3, .headerAtticle .title-4, #visit-decription h4, #visit-decription .rst h3, .rst #visit-decription h3, #visit-decription .rst .h3, .rst #visit-decription .h3, #visit-decription .rst h2, .rst #visit-decription h2, #visit-decription .rst h1, .rst #visit-decription h1, #visit-decription .rst .title-1, .rst #visit-decription .title-1, #visit-decription .rst .title-2, .rst #visit-decription .title-2, #visit-decription .rst .title-3, .rst #visit-decription .title-3, #visit-decription .title-4 {
  font-style: italic;
  text-transform: uppercase;
  font-style: italic; }

.h3 {
  display: block;
  padding-bottom: 2rem;
  padding-top: 2rem; }

[data-link]:hover {
  cursor: pointer; }
  [data-link]:hover H1, [data-link]:hover H2, [data-link]:hover H3, [data-link]:hover h4, [data-link]:hover .rst h3, .rst [data-link]:hover h3, [data-link]:hover .rst .h3, .rst [data-link]:hover .h3, [data-link]:hover .rst h2, .rst [data-link]:hover h2, [data-link]:hover .rst h1, .rst [data-link]:hover h1, [data-link]:hover .rst .title-1, .rst [data-link]:hover .title-1, [data-link]:hover .rst .title-2, .rst [data-link]:hover .title-2, [data-link]:hover .rst .title-3, .rst [data-link]:hover .title-3, [data-link]:hover .title-4 {
    color: #dd3333; }

.nowarp {
  white-space: nowrap; }

hr.dashed {
  border-style: dashed; }

figure.left {
  float: left;
  margin-right: 1em; }

figure.right {
  float: right;
  margin-left: 1em; }

figure.intext {
  text-align: center;
  text-transform: uppercase;
  padding: .2em;
  margin: 0; }
  figure.intext img {
    max-width: 100%; }

.button.white {
  background: #f7f7f7;
  color: #0a0a0a;
  border: 1px solid #DDD; }

.agenda {
  background-size: cover;
  background-attachment: fixed;
  background-position: center center; }
  .agenda h2, .agenda .rst h1, .rst .agenda h1, .agenda .rst .title-1, .rst .agenda .title-1, .agenda .title-2 {
    margin-bottom: 0;
    color: #f7f7f7; }

#list {
  margin-top: -70px !important; }
  #list p {
    font-size: 0.94rem;
    margin-top: -20px;
    color: #83837F; }

@media screen and (max-width: 39.9375em) {
  .cleallestsmall {
    clear: left; } }

.row.black {
  color: #f7f7f7;
  background-color: #0a0a0a; }

.row.on-black {
  color: #f7f7f7;
  background-color: #0a0a0a; }
  .row.on-black h2, .row.on-black .rst h1, .rst .row.on-black h1, .row.on-black .rst .title-1, .rst .row.on-black .title-1, .row.on-black .title-2, .row.on-black h3, .row.on-black .h3, .row.on-black .rst h2, .rst .row.on-black h2, .row.on-black .rst h1, .rst .row.on-black h1, .row.on-black .rst .title-1, .rst .row.on-black .title-1, .row.on-black .rst .title-2, .rst .row.on-black .title-2, .row.on-black .title-3, .row.on-black h4, .row.on-black .rst h3, .rst .row.on-black h3, .row.on-black .rst .h3, .rst .row.on-black .h3, .row.on-black .rst h2, .rst .row.on-black h2, .row.on-black .rst h1, .rst .row.on-black h1, .row.on-black .rst .title-1, .rst .row.on-black .title-1, .row.on-black .rst .title-2, .rst .row.on-black .title-2, .row.on-black .rst .title-3, .rst .row.on-black .title-3, .row.on-black .title-4, .row.on-black h5, .row.on-black .rst h4, .rst .row.on-black h4, .row.on-black .rst h3, .rst .row.on-black h3, .row.on-black .rst .h3, .rst .row.on-black .h3, .row.on-black .rst h2, .rst .row.on-black h2, .row.on-black .rst h1, .rst .row.on-black h1, .row.on-black .rst .title-1, .rst .row.on-black .title-1, .row.on-black .rst .title-2, .rst .row.on-black .title-2, .row.on-black .rst .title-3, .rst .row.on-black .title-3, .row.on-black .rst .title-4, .rst .row.on-black .title-4, .row.on-black .title-5, .row.on-black h6, .row.on-black p, .row.on-black li {
    color: #f7f7f7; }

.row.white {
  color: #0a0a0a;
  background-color: #f7f7f7; }

.row.red {
  color: #f7f7f7;
  background-color: #dd3333; }

*.on-red {
  color: #f7f7f7;
  background-color: #dd3333; }
  *.on-red h2, *.on-red .rst h1, .rst *.on-red h1, *.on-red .rst .title-1, .rst *.on-red .title-1, *.on-red .title-2 {
    font-size: 1.6rem;
    font-weight: 700;
    margin-bottom: 2.6rem; }
  *.on-red h2, *.on-red .rst h1, .rst *.on-red h1, *.on-red .rst .title-1, .rst *.on-red .title-1, *.on-red .title-2, *.on-red h3, *.on-red .h3, *.on-red .rst h2, .rst *.on-red h2, *.on-red .rst h1, .rst *.on-red h1, *.on-red .rst .title-1, .rst *.on-red .title-1, *.on-red .rst .title-2, .rst *.on-red .title-2, *.on-red .title-3, *.on-red h4, *.on-red .rst h3, .rst *.on-red h3, *.on-red .rst .h3, .rst *.on-red .h3, *.on-red .rst h2, .rst *.on-red h2, *.on-red .rst h1, .rst *.on-red h1, *.on-red .rst .title-1, .rst *.on-red .title-1, *.on-red .rst .title-2, .rst *.on-red .title-2, *.on-red .rst .title-3, .rst *.on-red .title-3, *.on-red .title-4, *.on-red h5, *.on-red .rst h4, .rst *.on-red h4, *.on-red .rst h3, .rst *.on-red h3, *.on-red .rst .h3, .rst *.on-red .h3, *.on-red .rst h2, .rst *.on-red h2, *.on-red .rst h1, .rst *.on-red h1, *.on-red .rst .title-1, .rst *.on-red .title-1, *.on-red .rst .title-2, .rst *.on-red .title-2, *.on-red .rst .title-3, .rst *.on-red .title-3, *.on-red .rst .title-4, .rst *.on-red .title-4, *.on-red .title-5, *.on-red h6, *.on-red p, *.on-red li {
    color: #f7f7f7; }

.dark {
  color: #f7f7f7;
  background-color: #171717; }
  .dark h2, .dark .rst h1, .rst .dark h1, .dark .rst .title-1, .rst .dark .title-1, .dark .title-2, .dark h3, .dark .h3, .dark .rst h2, .rst .dark h2, .dark .rst h1, .rst .dark h1, .dark .rst .title-1, .rst .dark .title-1, .dark .rst .title-2, .rst .dark .title-2, .dark .title-3, .dark h4, .dark .rst h3, .rst .dark h3, .dark .rst .h3, .rst .dark .h3, .dark .rst h2, .rst .dark h2, .dark .rst h1, .rst .dark h1, .dark .rst .title-1, .rst .dark .title-1, .dark .rst .title-2, .rst .dark .title-2, .dark .rst .title-3, .rst .dark .title-3, .dark .title-4, .dark h5, .dark .rst h4, .rst .dark h4, .dark .rst h3, .rst .dark h3, .dark .rst .h3, .rst .dark .h3, .dark .rst h2, .rst .dark h2, .dark .rst h1, .rst .dark h1, .dark .rst .title-1, .rst .dark .title-1, .dark .rst .title-2, .rst .dark .title-2, .dark .rst .title-3, .rst .dark .title-3, .dark .rst .title-4, .rst .dark .title-4, .dark .title-5, .dark h6, .dark p, .dark li {
    color: #f7f7f7; }

.transparent {
  background: transparent; }

.relative {
  position: relative; }

/*
 * svg images
 * TODO: move into addons/svg, but actually doesnt works because of selector override somewhere else
 */
img.svg {
  display: none; }

.svg.inverse #black {
  fill: #f7f7f7; }
  .svg.inverse #black * {
    fill: #f7f7f7; }

.svg.inverse:not(.static):hover #black {
  fill: #0a0a0a; }
  .svg.inverse:not(.static):hover #black * {
    transition-property: fill;
    transition-duration: 0.2s;
    transition-timing-function: ease-in;
    fill: #0a0a0a; }

a.inverse #black {
  fill: #f7f7f7; }
  a.inverse #black * {
    fill: #f7f7f7; }

a.inverse:not(.static):hover #black {
  fill: #0a0a0a; }
  a.inverse:not(.static):hover #black * {
    transition-property: fill;
    transition-duration: 0.2s;
    transition-timing-function: ease-in;
    fill: #0a0a0a; }

.paddertext {
  padding: 3px; }

.leftContent .menu {
  border-left: 1px solid transparent;
  border-left: 1px solid transparent; }
  .leftContent .menu > li > a {
    color: #dd3333;
    text-decoration: none !important; }
    .leftContent .menu > li > a:hover {
      color: #dd3333;
      text-decoration: none !important; }
  .leftContent .menu > li.active a {
    background: transparent;
    text-decoration: none !important; }
  .leftContent .menu ul a {
    color: #0a0a0a; }

@media screen and (min-width: 64em) {
  .flexLargeCenter {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: centrer;
        align-items: centrer; } }

@media screen and (min-width: 64em) {
  .flexLargeEnd {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: end;
        align-items: flex-end; } }

ul.dot {
  list-style-type: none;
  margin-left: 1rem; }
  ul.dot li {
    position: relative; }
    ul.dot li:before {
      content: "•";
      font-size: 120%;
      /* or whatever */
      left: -10px;
      top: -4px;
      position: absolute; }

.introFirst .moreinfo {
  margin-bottom: 1rem;
  border-bottom: 2px solid #dd3333;
  display: block;
  float: left; }

.introSecond {
  display: none;
  float: left;
  clear: both; }

.cms-article .leftContent p {
  margin: 0;
  margin-top: 1rem; }

.bibliographie h4, .bibliographie .rst h3, .rst .bibliographie h3, .bibliographie .rst .h3, .rst .bibliographie .h3, .bibliographie .rst h2, .rst .bibliographie h2, .bibliographie .rst h1, .rst .bibliographie h1, .bibliographie .rst .title-1, .rst .bibliographie .title-1, .bibliographie .rst .title-2, .rst .bibliographie .title-2, .bibliographie .rst .title-3, .rst .bibliographie .title-3, .bibliographie .title-4 {
  text-transform: none; }

.dl-vid h4, .dl-vid .rst h3, .rst .dl-vid h3, .dl-vid .rst .h3, .rst .dl-vid .h3, .dl-vid .rst h2, .rst .dl-vid h2, .dl-vid .rst h1, .rst .dl-vid h1, .dl-vid .rst .title-1, .rst .dl-vid .title-1, .dl-vid .rst .title-2, .rst .dl-vid .title-2, .dl-vid .rst .title-3, .rst .dl-vid .title-3, .dl-vid .title-4 {
  color: #666; }

.fontEpi {
  font-family: "Epilogue","Helvetica Neue", Helvetica, Arial, sans-serif; }

.text-stronger {
  font-weight: 900; }

.v-space-normal {
  padding-top: 5rem;
  padding-bottom: 5rem; }

video[poster] {
  width: 100%;
  background-size: cover;
  object-fit: cover; }

table.expand {
  width: 100%; }

/*
 * Simulating table
 */
.table {
  display: block;
  width: 100%; }
  .table > .tablerow {
    text-align: center;
    width: 100%; }
    @media screen and (min-width: 40em) {
      .table > .tablerow {
        display: -ms-flexbox;
        display: flex;
        -ms-flex-pack: justify;
            justify-content: space-between; } }
    .table > .tablerow > .coltable {
      width: auto;
      display: inline-block;
      white-space: nowrap;
      padding: 0.6rem; }
      .table > .tablerow > .coltable a {
        font-size: 0.74rem;
        font-weight: 400;
        text-transform: uppercase; }

/** tableau responsive **/
.responsive-table {
  width: 100%; }
  .responsive-table tr:nth-child(2n+2) {
    background-color: #F7F7F7; }
  .responsive-table th {
    display: none; }
  .responsive-table th, .responsive-table td {
    text-align: left; }
  .responsive-table th:first-child, .responsive-table td:first-child {
    border: none; }
  .responsive-table td {
    display: block; }
  .responsive-table td:last-child {
    padding-bottom: .5em; }

.responsive-table td:before, .deux_axes td:before {
  content: attr(data-th) " ";
  font-weight: bold;
  width: 100%;
  display: inline-block; }

.deux_axes td:nth-child(2n+2) {
  background-color: #F7F7F7;
  padding: 0.8em;
  margin: 0; }

tr.titre_table th {
  display: block; }

/* =============================================================================
   A partir de 980px
========================================================================== */
@media screen and (min-width: 64em) {
  .responsive-table th, .responsive-table td {
    display: table-cell; }
  .responsive-table td:before {
    display: none; }
  tr.titre_table {
    border-top: none; }
    tr.titre_table th {
      display: table-cell; } }

h3.year, .year.h3, .rst h2.year, .rst h1.year, .rst .year.title-1, .rst .year.title-2, .year.title-3 {
  width: 160px;
  border-bottom: 2px solid red; }

.chronology td {
  background: #FFF;
  vertical-align: top; }
  .chronology td:first-child {
    font-weight: bold;
    padding-right: 10px;
    width: 160px; }

.chronology tr + tr td:last-child {
  border-top: 1px solid lightGrey; }

.chronology p {
  margin-top: 5px; }

.simileTimeline h1, .simileTimeline .title-1 {
  font-size: 1.4rem; }
  @media screen and (min-width: 64em) {
    .simileTimeline h1, .simileTimeline .title-1 {
      font-size: 2rem; } }
  @media screen and (min-width: 75em) {
    .simileTimeline h1, .simileTimeline .title-1 {
      font-size: 2.1rem; } }

.list-group {
  margin-top: 0.4rem; }
  .list-group a {
    display: block;
    float: left;
    border: #8a8a8a 1px solid;
    background: #E0E0E0;
    color: #0a0a0a;
    padding: 0.2rem;
    margin-top: 0.4rem;
    clear: both; }

.conteneur .article {
  border: 1px solid #CCC;
  background: #f7f7f7;
  margin-bottom: 1rem; }
  .conteneur .article .article-top {
    position: relative; }
    .conteneur .article .article-top H4 {
      background: #575757;
      color: #FFF;
      padding: 0.75rem 1rem;
      margin: 0; }
      .conteneur .article .article-top H4 a {
        color: #f7f7f7; }
    .conteneur .article .article-top .metadonnees {
      margin: 1rem;
      font-size: 0.75rem; }
      @media screen and (min-width: 40em) {
        .conteneur .article .article-top .metadonnees {
          position: absolute;
          right: 0;
          top: 0; } }
      .conteneur .article .article-top .metadonnees .panel {
        border-radius: 0.25rem; }

.conteneur .loadCont {
  padding: 1rem; }

.conteneur .conteneur-head {
  background: #FFF;
  border: 1px solid #CCC;
  padding: 1rem;
  margin-top: 2rem;
  margin-bottom: 1rem; }

.conteneur .container-down {
  padding-left: 0.9375rem;
  padding-right: 0.9375rem; }

#selecteur {
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100vw;
  background: #dd3333;
  z-index: 2;
  height: 4rem; }
  #selecteur .input-group-label {
    background: transparent;
    color: #f7f7f7;
    border: 0; }
    @media screen and (max-width: 63.9375em) {
      #selecteur .input-group-label {
        padding: 0rem; } }
  #selecteur #id_date {
    width: auto; }
    @media screen and (max-width: 63.9375em) {
      #selecteur #id_date {
        width: 6.4rem; } }
  #selecteur .input-group {
    margin: 0.5rem; }
  #selecteur .input-group-button {
    width: 100%;
    text-align: left; }
  #selecteur a {
    color: #f7f7f7; }
  #selecteur .flex {
    -ms-flex-align: center;
        align-items: center;
    display: -ms-flexbox;
    display: flex; }

.curtain {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: stretch;
      align-items: stretch;
  width: 100%;
  background-color: transparent;
  -ms-flex-line-pack: stretch;
      align-content: stretch;
  border: transparent 1px solid;
  z-index: 10; }
  .curtain > .panel {
    background-color: #0a0a0a;
    height: 60vh;
    position: relative;
    width: 100%;
    border-right: 1px solid #FFF;
    transition: all 0.6s ease;
    transition-property: width;
    will-change: width; }
    .curtain > .panel.big {
      width: 166%; }
    .curtain > .panel > .imgbg {
      background-size: cover;
      background-position: center;
      transition: all 0.2s ease;
      transition-property: transform;
      position: absolute;
      min-height: 100%;
      min-width: 100%;
      opacity: 1;
      z-index: 10;
      overflow: hidden; }
      .curtain > .panel > .imgbg > img {
        position: absolute;
        left: 50%;
        top: 50%;
        -ms-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
        min-height: 100%;
        max-width: none;
        max-height: 100%;
        transition: filter 0.2s linear;
        filter: blur(0px); }
        @media screen and (min-width: 75em) {
          .curtain > .panel > .imgbg > img {
            min-height: 100%;
            min-width: 100%;
            max-width: none;
            max-height: none; } }
      .curtain > .panel > .imgbg:after {
        content: '';
        background-image: linear-gradient(rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0.4));
        position: absolute;
        z-index: 1;
        height: 100%;
        width: 100%;
        transition: all 0.2s ease;
        transition-property: backgroun-image; }
    .curtain > .panel h2, .curtain > .panel .rst h1, .rst .curtain > .panel h1, .curtain > .panel .rst .title-1, .rst .curtain > .panel .title-1, .curtain > .panel .title-2 {
      z-index: 20;
      transition: color 0.2s linear;
      top: 50%;
      left: 50%;
      position: absolute;
      width: 10px;
      text-align: center;
      height: 10px;
      white-space: nowrap;
      font-size: 2.6rem;
      text-transform: uppercase;
      font-weight: 900;
      color: rgba(240, 240, 240, 0.9); }
      .curtain > .panel h2.textVert, .curtain > .panel .rst h1.textVert, .rst .curtain > .panel h1.textVert, .curtain > .panel .rst .textVert.title-1, .rst .curtain > .panel .textVert.title-1, .curtain > .panel .textVert.title-2 {
        -ms-transform: rotate(-90deg) translate(-5px, -5px);
            transform: rotate(-90deg) translate(-5px, -5px);
        -ms-transform-origin: 50% 50%;
            transform-origin: 50% 50%; }
      .curtain > .panel h2 span, .curtain > .panel .rst h1 span, .rst .curtain > .panel h1 span, .curtain > .panel .rst .title-1 span, .rst .curtain > .panel .title-1 span, .curtain > .panel .title-2 span {
        -ms-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
        text-align: center;
        position: absolute; }
    .curtain > .panel.animate:hover {
      z-index: 20;
      width: 134%; }
      .curtain > .panel.animate:hover.big {
        width: 186%; }
      @media screen and (min-width: 75em) {
        .curtain > .panel.animate:hover {
          width: 117%; }
          .curtain > .panel.animate:hover.big {
            width: 186%; } }
      .curtain > .panel.animate:hover:after {
        content: '';
        background: rgba(0, 0, 0, 0.3);
        height: 10px;
        border-radius: 100%;
        filter: blur(3px);
        position: absolute;
        width: 120%;
        display: block;
        bottom: -20px;
        left: -10%; }
      .curtain > .panel.animate:hover h2, .curtain > .panel.animate:hover .rst h1, .rst .curtain > .panel.animate:hover h1, .curtain > .panel.animate:hover .rst .title-1, .rst .curtain > .panel.animate:hover .title-1, .curtain > .panel.animate:hover .title-2 {
        color: rgba(240, 240, 240, 0.9); }
      .curtain > .panel.animate:hover > .imgbg {
        opacity: 1;
        filter: grayscale(80%);
        border: 2px solid #FFF;
        -ms-transform: scale(1.08);
            transform: scale(1.08); }
        .curtain > .panel.animate:hover > .imgbg:after {
          content: '';
          background-image: linear-gradient(rgba(30, 0, 0, 0.8), rgba(0, 0, 0, 0.6)); }
        @media screen and (min-width: 75em) {
          .curtain > .panel.animate:hover > .imgbg {
            -ms-transform: scale(1.04);
                transform: scale(1.04); } }
        .curtain > .panel.animate:hover > .imgbg > img {
          filter: blur(4px); }
  .curtain.verticalCurtain {
    -ms-flex-direction: column;
        flex-direction: column; }
    @media screen and (max-width: 63.9375em) {
      .curtain.verticalCurtain {
        height: 740px !important; } }
    .curtain.verticalCurtain > .panel {
      background-color: #0a0a0a;
      height: 100%;
      position: relative;
      width: 100%;
      right: 0px solid #FFF;
      border-bottom: 1px solid #FFF;
      border-right: 0; }

.curtain.visite-vituel {
  -ms-flex-direction: column;
      flex-direction: column; }
  @media screen and (min-width: 64em) {
    .curtain.visite-vituel {
      -ms-flex-direction: row;
          flex-direction: row; } }
  .curtain.visite-vituel svg {
    float: left; }
  .curtain.visite-vituel > .panel {
    background-color: #ECECEF;
    height: initial; }
    .curtain.visite-vituel > .panel:last-child {
      border: 0px; }
    .curtain.visite-vituel > .panel.verticalCurtain > .panel {
      height: initial;
      -ms-flex-positive: 1;
          flex-grow: 1;
      background-color: #0a0a0a; }
      @media screen and (min-width: 64em) {
        .curtain.visite-vituel > .panel.verticalCurtain > .panel {
          height: 100%; } }
      .curtain.visite-vituel > .panel.verticalCurtain > .panel:last-child {
        border: 0px; }
      .curtain.visite-vituel > .panel.verticalCurtain > .panel h2, .curtain.visite-vituel > .panel.verticalCurtain > .panel .rst h1, .rst .curtain.visite-vituel > .panel.verticalCurtain > .panel h1, .curtain.visite-vituel > .panel.verticalCurtain > .panel .rst .title-1, .rst .curtain.visite-vituel > .panel.verticalCurtain > .panel .title-1, .curtain.visite-vituel > .panel.verticalCurtain > .panel .title-2 {
        color: #FFF; }
      .curtain.visite-vituel > .panel.verticalCurtain > .panel#visit-navigation {
        -ms-flex-positive: 0.5;
            flex-grow: 0.5;
        background-color: #ECECEF; }
        @media screen and (max-width: 63.9375em) {
          .curtain.visite-vituel > .panel.verticalCurtain > .panel#visit-navigation {
            height: 96px;
            -ms-flex-positive: initial;
                flex-grow: initial; } }
        .curtain.visite-vituel > .panel.verticalCurtain > .panel#visit-navigation .dropdown.menu > li.is-dropdown-submenu-parent > a {
          padding-top: 0.4rem;
          padding-bottom: 0.4rem; }
    .curtain.visite-vituel > .panel .imgbg {
      opacity: 0.7;
      background-color: #0a0a0a;
      height: 100%;
      width: 100%;
      position: absolute;
      background-size: cover; }
      .curtain.visite-vituel > .panel .imgbg:after {
        display: none; }
    .curtain.visite-vituel > .panel.big {
      width: 100%; }
      @media screen and (min-width: 64em) {
        .curtain.visite-vituel > .panel.big {
          width: 130%; } }
      @media screen and (min-width: 75em) {
        .curtain.visite-vituel > .panel.big {
          width: 130%; } }
      @media screen and (min-width: 90em) {
        .curtain.visite-vituel > .panel.big {
          width: 110%; } }
    .curtain.visite-vituel > .panel.curtain {
      width: 100%; }
      @media screen and (min-width: 64em) {
        .curtain.visite-vituel > .panel.curtain {
          width: 70%; } }
      @media screen and (min-width: 75em) {
        .curtain.visite-vituel > .panel.curtain {
          width: 70%; } }
      @media screen and (min-width: 90em) {
        .curtain.visite-vituel > .panel.curtain {
          width: 90%; } }

#visit-navigation {
  background-color: #ECECEF;
  position: relative; }
  #visit-navigation h4, #visit-navigation .rst h3, .rst #visit-navigation h3, #visit-navigation .rst .h3, .rst #visit-navigation .h3, #visit-navigation .rst h2, .rst #visit-navigation h2, #visit-navigation .rst h1, .rst #visit-navigation h1, #visit-navigation .rst .title-1, .rst #visit-navigation .title-1, #visit-navigation .rst .title-2, .rst #visit-navigation .title-2, #visit-navigation .rst .title-3, .rst #visit-navigation .title-3, #visit-navigation .title-4 {
    color: #dd3333;
    font-weight: 800; }
  #visit-navigation > div {
    position: absolute; }

.panel-infos {
  font-weight: 200; }
  .panel-infos strong {
    font-weight: 300; }
  .panel-infos .team-content {
    padding: 1rem;
    float: left;
    width: 100%;
    border: 10px solid #E0E0E0; }
    .panel-infos .team-content h2, .panel-infos .team-content .rst h1, .rst .panel-infos .team-content h1, .panel-infos .team-content .rst .title-1, .rst .panel-infos .team-content .title-1, .panel-infos .team-content .title-2 {
      margin-top: 1rem;
      margin-bottom: 2rem; }
    .panel-infos .team-content h3, .panel-infos .team-content .h3, .panel-infos .team-content .rst h2, .rst .panel-infos .team-content h2, .panel-infos .team-content .rst h1, .rst .panel-infos .team-content h1, .panel-infos .team-content .rst .title-1, .rst .panel-infos .team-content .title-1, .panel-infos .team-content .rst .title-2, .rst .panel-infos .team-content .title-2, .panel-infos .team-content .title-3 {
      margin-bottom: 1rem; }
    .panel-infos .team-content h5, .panel-infos .team-content .rst h4, .rst .panel-infos .team-content h4, .panel-infos .team-content .rst h3, .rst .panel-infos .team-content h3, .panel-infos .team-content .rst .h3, .rst .panel-infos .team-content .h3, .panel-infos .team-content .rst h2, .rst .panel-infos .team-content h2, .panel-infos .team-content .rst h1, .rst .panel-infos .team-content h1, .panel-infos .team-content .rst .title-1, .rst .panel-infos .team-content .title-1, .panel-infos .team-content .rst .title-2, .rst .panel-infos .team-content .title-2, .panel-infos .team-content .rst .title-3, .rst .panel-infos .team-content .title-3, .panel-infos .team-content .rst .title-4, .rst .panel-infos .team-content .title-4, .panel-infos .team-content .title-5 {
      margin-bottom: 0.72rem; }

.presentation p {
  color: #6b6b6d; }

.presentation h2, .presentation .rst h1, .rst .presentation h1, .presentation .rst .title-1, .rst .presentation .title-1, .presentation .title-2 {
  font-size: 2.75rem;
  font-weight: 600;
  padding-top: 2rem;
  padding-bottom: 1.4rem;
  border-top: 10px solid #DDD; }

.presentation h4, .presentation .rst h3, .rst .presentation h3, .presentation .rst .h3, .rst .presentation .h3, .presentation .rst h2, .rst .presentation h2, .presentation .rst h1, .rst .presentation h1, .presentation .rst .title-1, .rst .presentation .title-1, .presentation .rst .title-2, .rst .presentation .title-2, .presentation .rst .title-3, .rst .presentation .title-3, .presentation .title-4 {
  margin-bottom: 1rem; }

.presentation hr {
  width: 50%;
  margin-left: 25%;
  background: #DDD;
  border-color: #DDD; }

.presentation + .curtain {
  position: relative;
  float: left;
  margin-top: 3rem; }
  .presentation + .curtain:before {
    width: 100%;
    content: '';
    position: absolute;
    top: -2rem;
    display: block;
    border-top: 10px solid #DDD; }

.visite_footnav {
  display: block;
  list-style-type: none;
  margin: 0; }
  @media screen and (min-width: 64em) {
    .visite_footnav {
      display: -ms-flexbox;
      display: flex; } }
  .visite_footnav li {
    width: 100%;
    text-transform: uppercase;
    font-size: 1.4rem; }
    .visite_footnav li a {
      text-transform: uppercase;
      color: #0a0a0a; }
    .visite_footnav li.active a {
      color: #dd3333; }

.svgcontent {
  position: relative; }
  .svgcontent svg path {
    fill-opacity: 0.5;
    stroke-opacity: 0.7;
    stroke-width: 2px; }
  .svgcontent svg a {
    display: none; }
    .svgcontent svg a.active {
      display: block; }
  .svgcontent #overlay {
    opacity: 0; }

#visit-footer {
  position: absolute;
  -ms-transform-origin: 0 100%;
      transform-origin: 0 100%;
  -ms-transform: rotate(-90deg) translate(0%, 100%);
      transform: rotate(-90deg) translate(0%, 100%);
  background: #000;
  bottom: 0;
  left: 0px;
  padding: 0 0.4rem;
  font-size: 1rem; }

.curtain > .panel h2, .curtain > .panel .rst h1, .rst .curtain > .panel h1, .curtain > .panel .rst .title-1, .rst .curtain > .panel .title-1, .curtain > .panel .title-2 {
  border: 0px; }
  .curtain > .panel h2 span.titlepanel, .curtain > .panel .rst h1 span.titlepanel, .rst .curtain > .panel h1 span.titlepanel, .curtain > .panel .rst .title-1 span.titlepanel, .rst .curtain > .panel .title-1 span.titlepanel, .curtain > .panel .title-2 span.titlepanel {
    font-size: 1.3rem;
    -ms-transform: translate(-50%, 100%);
        transform: translate(-50%, 100%); }

.open-eyed-visit:before {
  content: "\f06e";
  font-family: icomoon; }

.close-eyed-visit:before {
  content: "\f070";
  font-family: icomoon; }

.rst a.fn-backref {
  color: #f7f7f7; }

.rst .footnote td {
  width: 100%;
  padding: 0.2rem; }
  .rst .footnote td.label {
    width: auto;
    padding: 0.6rem; }

#cookie-law-container {
  background: #5b5b5b;
  z-index: 3000;
  position: fixed;
  bottom: 20px;
  right: 20px;
  margin-left: 20px;
  color: #ffffff;
  padding: 13px;
  max-width: 370px; }
  #cookie-law-container .button {
    width: 100%;
    text-transform: uppercase; }
  #cookie-law-container p {
    font-size: .9rem;
    line-height: 1.2; }

#table header {
  user-select: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  margin-bottom: 15px; }
  #table header .count, #table header .spinner {
    display: inline-block;
    height: 34px;
    line-height: 34px;
    vertical-align: middle;
    cursor: default; }
  #table header .pagination {
    margin: 0; }

#table .dropdown {
  position: relative; }

#table .table-responsive {
  border: 1px solid #CCC;
  overflow: scroll;
  min-height: 600px; }
  #table .table-responsive table {
    border: 1px solid #ddd; }
    #table .table-responsive table thead {
      user-select: none;
      -webkit-user-select: none;
      -moz-user-select: none;
      -ms-user-select: none; }
      #table .table-responsive table thead th {
        padding: 0;
        cursor: default;
        user-select: none;
        -webkit-user-select: none;
        -moz-user-select: none;
        -ms-user-select: none; }
        #table .table-responsive table thead th .flex {
          display: -ms-flexbox;
          display: flex;
          -ms-flex-flow: row wrap;
              flex-flow: row wrap; }
          #table .table-responsive table thead th .flex .column-name {
            padding: 5px;
            -ms-flex: 2 100%;
                flex: 2 100%;
            text-align: center;
            font-size: 12px;
            text-align: center;
            white-space: nowrap;
            font-weight: 400; }
            #table .table-responsive table thead th .flex .column-name ~ .sortable, #table .table-responsive table thead th .flex .column-name ~ .filter {
              border-top: 1px solid #ddd; }
          #table .table-responsive table thead th .flex .sortable, #table .table-responsive table thead th .flex .filter {
            -ms-flex: 1 50%;
                flex: 1 50%;
            cursor: pointer;
            text-align: center; }
            #table .table-responsive table thead th .flex .sortable.disabled, #table .table-responsive table thead th .flex .filter.disabled {
              display: none; }
          #table .table-responsive table thead th .flex .sortable.active, #table .table-responsive table thead th .flex .filter.active .filter-button {
            background: #ec8055;
            color: white; }
          #table .table-responsive table thead th .flex .sortable {
            -ms-flex-order: 1;
                order: 1;
            padding: 5px; }
          #table .table-responsive table thead th .flex .filter {
            -ms-flex-order: 2;
                order: 2; }
            #table .table-responsive table thead th .flex .filter .filter-button {
              display: inline-block;
              width: 100%;
              height: 100%;
              padding: 5px; }
            #table .table-responsive table thead th .flex .filter .dropdown-menu {
              max-height: 300px;
              overflow-y: auto; }
    #table .table-responsive table tbody {
      font-size: 12px; }
      #table .table-responsive table tbody.grabbable {
        cursor: move;
        /* fallback if grab cursor is unsupported */
        cursor: grab;
        cursor: -webkit-grab;
        user-select: none;
        -webkit-user-select: none;
        -moz-user-select: none;
        -ms-user-select: none; }
        #table .table-responsive table tbody.grabbable.grabbing {
          cursor: move; }
      #table .table-responsive table tbody td {
        word-break: break-word;
        -webkit-hyphens: auto;
            -ms-hyphens: auto;
                hyphens: auto; }

#table .dropdown {
  position: relative; }

#table .dropdown-toggle {
  *margin-bottom: -3px; }

#table .dropdown-toggle:active,
#table .open .dropdown-toggle {
  outline: 0; }

#table .caret {
  display: inline-block;
  width: 0;
  height: 0;
  vertical-align: top;
  border-top: 4px solid #000000;
  border-right: 4px solid transparent;
  border-left: 4px solid transparent;
  content: ""; }

#table .dropdown .caret {
  margin-top: 8px;
  margin-left: 2px; }

#table .dropdown-menu {
  position: absolute;
  top: 100%;
  left: 0;
  z-index: 1000;
  display: none;
  float: left;
  min-width: 160px;
  padding: 5px 0;
  margin: 2px 0 0;
  list-style: none;
  background-color: #ffffff;
  border: 1px solid #ccc;
  border: 1px solid rgba(0, 0, 0, 0.2);
  *border-right-width: 2px;
  *border-bottom-width: 2px;
  border-radius: 6px;
  box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
  background-clip: padding-box; }

#table .dropdown-menu.pull-right {
  right: 0;
  left: auto; }

#table .dropdown-menu .divider {
  *width: 100%;
  height: 1px;
  margin: 9px 1px;
  *margin: -5px 0 5px;
  overflow: hidden;
  background-color: #e5e5e5;
  border-bottom: 1px solid #ffffff; }

#table .dropdown-menu > li > a {
  display: block;
  padding: 3px 20px;
  clear: both;
  font-weight: normal;
  line-height: 20px;
  color: #333333;
  white-space: nowrap; }

#table .dropdown-menu > li > a:hover,
#table .dropdown-menu > li > a:focus,
#table .dropdown-submenu:hover > a,
#table .dropdown-submenu:focus > a {
  color: #ffffff;
  text-decoration: none;
  background-color: #0081c2;
  background-image: linear-gradient(to bottom, #0088cc, #0077b3);
  background-repeat: repeat-x;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff0088cc', endColorstr='#ff0077b3', GradientType=0); }

#table .dropdown-menu > .active > a,
#table .dropdown-menu > .active > a:hover,
#table .dropdown-menu > .active > a:focus {
  color: #ffffff;
  text-decoration: none;
  background-color: #0081c2;
  background-image: linear-gradient(to bottom, #0088cc, #0077b3);
  background-repeat: repeat-x;
  outline: 0;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff0088cc', endColorstr='#ff0077b3', GradientType=0); }

#table .dropdown-menu > .disabled > a,
#table .dropdown-menu > .disabled > a:hover,
#table .dropdown-menu > .disabled > a:focus {
  color: #999999; }

#table .dropdown-menu > .disabled > a:hover,
#table .dropdown-menu > .disabled > a:focus {
  text-decoration: none;
  cursor: default;
  background-color: transparent;
  background-image: none;
  filter: progid:DXImageTransform.Microsoft.gradient(enabled=false); }

#table .open {
  *z-index: 1000; }

#table .open > .dropdown-menu {
  display: block; }

#table .dropdown-backdrop {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 990; }

ul.pagination li.disabled.navigation {
  display: none; }

article.tableau-statistic h1:first-child, article.tableau-statistic .title-1:first-child {
  margin-top: 5rem;
  margin-bottom: 2rem;
  font-size: 3rem; }

.headerContainer {
  background: #0a0a0a; }
  .headerContainer #header {
    margin: auto;
    max-width: 102.5rem; }

#timeScroll {
  width: 42px;
  position: sticky;
  top: 0;
  left: 0;
  background: #0a0a0a;
  padding: 0; }
  @media screen and (min-width: 64em) {
    #timeScroll {
      width: 82px; } }

#timeScrollbar {
  height: calc(100vh);
  width: 100%;
  text-align: center;
  position: relative;
  left: 0%;
  margin-top: 0rem; }

#totScrollbar {
  height: 100%;
  width: 2px;
  top: -00%;
  text-align: center;
  background: #E0E0E0;
  z-index: -1;
  position: absolute;
  left: 50%;
  -ms-transform: translate(-50%, 0);
      transform: translate(-50%, 0); }

#dotScrollbar {
  display: none;
  margin: 0em 0;
  height: 100%; }
  @media only screen and (min-width: 650px) {
    #dotScrollbar {
      display: block; } }
  #dotScrollbar .shim {
    display: none;
    width: 100%; }
  #dotScrollbar .holder {
    position: relative;
    font-size: 85%;
    padding: 0em 0 0 0;
    background-color: #0a0a0a; }
    @media only screen and (min-width: 750px) {
      #dotScrollbar .holder {
        font-size: 90%; } }
    @media only screen and (min-width: 900px) {
      #dotScrollbar .holder {
        font-size: 95%; } }
    #dotScrollbar .holder .bar {
      position: absolute;
      bottom: 0;
      height: 100%;
      width: 2px;
      left: 50%;
      background-color: #0a0a0a; }
      #dotScrollbar .holder .bar .indicator {
        position: absolute;
        top: 0;
        left: 0;
        height: 100%;
        background-color: #dd3333;
        width: 2px; }
    #dotScrollbar .holder .labels {
      margin: 0 auto;
      text-align: center;
      height: 100%;
      padding: 0 0em; }
      @media screen and (min-width: 64em) {
        #dotScrollbar .holder .labels {
          padding: 0 2em; } }
      #dotScrollbar .holder .labels i {
        display: block;
        position: relative;
        float: left;
        cursor: pointer;
        width: 100%; }
        #dotScrollbar .holder .labels i::before {
          z-index: 2;
          position: absolute;
          bottom: 50%;
          left: 50%;
          display: block;
          content: '';
          width: 0.75rem;
          height: 0.75rem;
          border-radius: 50%;
          background-color: #E0E0E0;
          -ms-transform: translateX(-50%) translateY(50%);
              transform: translateX(-50%) translateY(50%);
          transition: border-color 100ms ease-in, background-color 150ms ease-in; }
        #dotScrollbar .holder .labels i::after {
          z-index: 1;
          display: block;
          content: attr(data-label);
          position: absolute;
          top: 50%;
          right: 0rem;
          padding: 0.375rem;
          -ms-transform: translate(0, -50%);
              transform: translate(0, -50%);
          font-family: 'Inter';
          font-weight: 400;
          color: #f7f7f7;
          background: #0a0a0a;
          opacity: 0;
          padding-right: 0;
          border-radius: 0.5rem;
          transition: color 150ms ease-in, opacity 150ms ease-in, padding-right 100ms ease-out; }
        #dotScrollbar .holder .labels i:hover::before, #dotScrollbar .holder .labels i:focus::before {
          background-color: #dd3333; }
        #dotScrollbar .holder .labels i:hover::after, #dotScrollbar .holder .labels i:focus::after {
          padding-right: 2em;
          opacity: 1; }
        #dotScrollbar .holder .labels i.read::before {
          background-color: #dd3333; }
        #dotScrollbar .holder .labels i.read:hover::before, #dotScrollbar .holder .labels i.read:focus::before {
          background-color: #E0E0E0; }
        #dotScrollbar .holder .labels i.reading::after {
          background: #dd3333;
          padding-right: 2em; }
        #dotScrollbar .holder .labels i.reading:hover::after, #dotScrollbar .holder .labels i.reading:focus::after {
          padding-right: 2em;
          opacity: 1; }
  #dotScrollbar.fixed .holder {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 42px;
    z-index: 1; }
    @media screen and (min-width: 64em) {
      #dotScrollbar.fixed .holder {
        width: 82px; } }
  #dotScrollbar.fixed .shim {
    display: block; }

.unpadded {
  padding: 0 !important; }

.row-larger {
  max-width: 102.5rem; }

.padding1 {
  padding: 1rem; }

.v-bottom-large {
  padding-bottom: 6.5rem; }

.expo_content {
  background: #F8F7F4; }
  .expo_content.blackcontent {
    background: #0a0a0a; }
  .expo_content header {
    background: #0a0a0a;
    display: block; }
    @media screen and (min-width: 40em) {
      .expo_content header {
        display: block; } }
    .expo_content header .title {
      display: -ms-flexbox;
      display: flex;
      -ms-flex-align: center;
          align-items: center;
      margin-bottom: 0rem;
      margin-top: 0rem; }
      @media screen and (min-width: 64em) {
        .expo_content header .title {
          margin-bottom: 0rem;
          margin-top: 0rem; } }
      .expo_content header .title.underline {
        border-bottom: 2px #9B9B9B solid; }
      .expo_content header .title * {
        margin-bottom: 0;
        font-size: 0.8rem; }
        @media screen and (min-width: 40em) and (max-width: 63.9375em) {
          .expo_content header .title * {
            font-size: 0.8rem; } }
        @media screen and (min-width: 64em) and (max-width: 74.9375em) {
          .expo_content header .title * {
            font-size: 1.3rem; } }
        @media screen and (min-width: 75em) {
          .expo_content header .title * {
            font-size: 1.5rem; } }
      .expo_content header .title [class*=" icon-"] {
        margin: 0 0.25rem;
        font-size: 1.4rem; }
        .expo_content header .title [class*=" icon-"]:before {
          font-size: 1.4rem; }
    .expo_content header h1, .expo_content header .title-1 {
      font-size: 2.25rem;
      font-weight: 600; }
    .expo_content header h3, .expo_content header .h3, .expo_content header .rst h2, .rst .expo_content header h2, .expo_content header .rst h1, .rst .expo_content header h1, .expo_content header .rst .title-1, .rst .expo_content header .title-1, .expo_content header .rst .title-2, .rst .expo_content header .title-2, .expo_content header .title-3 {
      font-weight: 700; }

.block.black {
  background: #0a0a0a; }
  .block.black * {
    color: #f7f7f7; }

.block.gray {
  background: #222222; }
  .block.gray * {
    color: #f7f7f7; }

.block.white {
  background: #ECECF2; }
  .block.white * {
    color: #0a0a0a; }

.block.whiter {
  background: #F8F7F4; }
  .block.whiter * {
    color: #0a0a0a; }

.content-box.black {
  background: #0a0a0a; }
  .content-box.black a {
    color: #dd3333; }

.expo_body footer {
  margin: 0; }

.expo_body .headerContainer {
  background-image: url("/static/images/theme/ban-expo.png");
  background-repeat: no-repeat;
  background-position: center right;
  background-size: contain; }
  .expo_body .headerContainer #header.intern {
    background: transparent; }
  .expo_body .headerContainer .top-bar {
    background: transparent; }

#contentexpo_container {
  display: -ms-flexbox;
  display: flex;
  position: relative;
  height: auto;
  margin-top: -6rem;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-align: center;
      align-items: center; }
  @media screen and (min-width: 64em) {
    #contentexpo_container {
      -ms-flex-align: start;
          align-items: flex-start;
      -ms-flex-direction: row;
          flex-direction: row; } }

.expo_content aside, .expo_content main {
  padding-top: 2.5rem; }

.expo_content aside {
  position: relative;
  top: 0;
  white-space: nowrap; }
  @media screen and (min-width: 64em) {
    .expo_content aside {
      position: sticky; } }

.gobackside {
  position: sticky;
  display: block;
  height: 90vh; }
  .gobackside > div {
    position: absolute;
    top: 50%;
    left: 50%;
    -ms-transform: translate(-50%, -50%) rotate(-90deg);
        transform: translate(-50%, -50%) rotate(-90deg);
    -ms-transform-origin: center;
        transform-origin: center;
    font-size: 1.5rem;
    font-family: 'epilogue';
    font-weight: 600;
    text-transform: uppercase; }

#navbar-thematics-left {
  position: sticky;
  top: 0; }
  #navbar-thematics-left ul {
    background: #0a0a0a;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
        flex-direction: column;
    margin: 0;
    border: 2px #0a0a0a solid; }
    #navbar-thematics-left ul li {
      display: -ms-flexbox;
      display: flex;
      border-bottom: 2px solid #0a0a0a; }
      #navbar-thematics-left ul li:last-child {
        border-bottom: 0; }
    #navbar-thematics-left ul a {
      display: block;
      float: left;
      width: 100%;
      background: #fff;
      padding: 0.5rem;
      font-family: 'varta';
      text-transform: uppercase;
      text-align: center;
      font-size: 0.875rem;
      line-height: 1rem;
      color: #0a0a0a; }
      #navbar-thematics-left ul a:hover {
        color: #dd3333; }

#items-expo, #items-thems {
  float: none;
  width: 95%; }
  @media screen and (min-width: 75em) {
    #items-expo, #items-thems {
      float: right;
      width: 90%; } }
  #items-expo.list-chap, #items-thems.list-chap {
    width: 100%;
    clear: both;
    float: left;
    padding-bottom: 5rem; }
  #items-expo .gridsizer, #items-thems .gridsizer {
    width: calc(100% / 2); }
    @media screen and (min-width: 64em) {
      #items-expo .gridsizer, #items-thems .gridsizer {
        width: calc(100% / 3); } }
    @media screen and (min-width: 75em) {
      #items-expo .gridsizer, #items-thems .gridsizer {
        width: calc(100% / 4); } }

#items-expo {
  width: 90%;
  margin: 0%; }
  @media screen and (min-width: 75em) {
    #items-expo {
      float: right;
      width: 90%;
      margin: auto; } }

#items-thems {
  width: 100%;
  position: relative;
  top: 0rem; }
  #items-thems .card-expo figcaption a {
    color: #0a0a0a; }

.inExpo {
  font-size: 66%;
  color: black !important;
  display: inline-block;
  clear: both;
  float: left; }
  .inExpo * {
    color: black !important; }

.articlegoto {
  display: block;
  margin-top: 4rem;
  float: left;
  width: 100%; }
  .articlegoto h1, .articlegoto .title-1 {
    transition: all 0.2s;
    color: #f7f7f7 !important;
    text-shadow: 0 0 0px rgba(0, 0, 0, 0.5); }
  .articlegoto:hover h1, .articlegoto:hover .title-1 {
    transition: all 0.2s;
    color: #dd3333 !important;
    text-shadow: 0 0 40px black, 0 0 4px black; }
  @media screen and (max-width: 39.9375em) {
    .articlegoto .thumb {
      position: relative;
      height: 30vw;
      min-height: 120px;
      max-height: 160px;
      width: 100%; }
      .articlegoto .thumb img {
        position: absolute;
        min-width: 100%;
        min-height: 100%;
        left: 50%;
        top: 50%;
        -ms-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%); } }
  @media screen and (min-width: 40em) and (max-width: 63.9375em) {
    .articlegoto .thumb {
      position: relative;
      height: 20vw;
      max-height: 320px;
      width: 100%; }
      .articlegoto .thumb img {
        position: absolute;
        min-width: 100%;
        min-height: 100%;
        left: 50%;
        top: 50%;
        -ms-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%); } }

.listexpos {
  padding-bottom: 4rem;
  float: left;
  width: 100%; }

.card-expo {
  width: calc(100%  / 2 - 16px);
  font-family: "Varta";
  padding-bottom: 1rem;
  position: relative; }
  .card-expo:hover {
    color: #dd3333 !important; }
    .card-expo:hover figcaption {
      color: #dd3333 !important; }
      .card-expo:hover figcaption a {
        color: #dd3333 !important; }
  @media screen and (min-width: 64em) {
    .card-expo {
      width: calc(100% / 3 - 16px); } }
  @media screen and (min-width: 75em) {
    .card-expo {
      width: calc(100% / 4 - 16px); } }
  .card-expo.bigcard {
    width: 100%; }
    .card-expo.bigcard .info-exposition-right-down {
      position: absolute; }
      .card-expo.bigcard .info-exposition-right-down .infoexpo {
        margin: 3rem;
        max-height: calc(100% - 3rem);
        display: inline-block; }
        .card-expo.bigcard .info-exposition-right-down .infoexpo p {
          text-align: justify; }
        @media screen and (max-width: 39.9375em) {
          .card-expo.bigcard .info-exposition-right-down .infoexpo {
            margin: 1rem;
            max-height: calc(100% - 3rem);
            display: inline-block;
            scroll-behavior: smooth;
            overflow-y: scroll;
            -ms-transform: translate(0, 1rem);
                transform: translate(0, 1rem); } }
        @media screen and (min-width: 40em) and (max-width: 63.9375em) {
          .card-expo.bigcard .info-exposition-right-down .infoexpo {
            margin: 1rem;
            max-height: calc(100% - 3rem);
            display: inline-block;
            scroll-behavior: smooth;
            overflow-y: scroll;
            -ms-transform: translate(0, 1rem);
                transform: translate(0, 1rem); } }
        @media screen and (min-width: 40em) {
          .card-expo.bigcard .info-exposition-right-down .infoexpo p {
            font-size: 0.95rem;
            line-height: 1.2em; } }
        @media screen and (min-width: 64em) {
          .card-expo.bigcard .info-exposition-right-down .infoexpo p {
            font-size: 1.1rem;
            line-height: 1.25em; } }
        @media screen and (min-width: 75em) {
          .card-expo.bigcard .info-exposition-right-down .infoexpo p {
            font-size: 1.3rem;
            line-height: 1.25em; } }
    .card-expo.bigcard .vid-expo {
      background: #0a0a0a;
      color: #f7f7f7;
      font-size: 1.125rem;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-align: center;
          align-items: center; }
      .card-expo.bigcard .vid-expo > * {
        color: #f7f7f7;
        font-family: "inter";
        font-weight: 600; }
      .card-expo.bigcard .vid-expo.on-black > *, .card-expo.bigcard .vid-expo.on-black > * * {
        color: #f7f7f7; }
    .card-expo.bigcard figcaption {
      bottom: auto;
      top: 50%;
      -ms-transform: translate(0, -50%);
          transform: translate(0, -50%);
      background: transparent; }
      .card-expo.bigcard figcaption h1, .card-expo.bigcard figcaption .title-1 {
        font-size: 1.625rem;
        text-transform: none;
        font-weight: 900;
        line-height: 1.1;
        margin-top: 1.375rem;
        margin-bottom: 0;
        margin-left: 0.75rem; }
        @media screen and (min-width: 40em) {
          .card-expo.bigcard figcaption h1, .card-expo.bigcard figcaption .title-1 {
            font-size: 2rem; } }
        @media screen and (min-width: 64em) {
          .card-expo.bigcard figcaption h1, .card-expo.bigcard figcaption .title-1 {
            font-size: 2.75rem; } }
        @media screen and (min-width: 75em) {
          .card-expo.bigcard figcaption h1, .card-expo.bigcard figcaption .title-1 {
            font-size: 3.4rem; } }
    .card-expo.bigcard .info-exposition-right-down {
      position: absolute;
      top: 100%;
      height: 100%;
      width: 100%;
      background: #ECECF2;
      color: #0a0a0a;
      transition: all 0.5s;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-align: center;
          align-items: center; }
    .card-expo.bigcard .thumb {
      position: relative; }
      .card-expo.bigcard .thumb img {
        object-fit: cover; }
      .card-expo.bigcard .thumb:after {
        position: absolute;
        top: 0;
        left: 0;
        background: rgba(0, 0, 0, 0.38);
        height: 100%;
        width: 100%;
        content: ""; }
    .card-expo.bigcard .info-exposition {
      padding: 0.875rem 0 1.8rem;
      font-family: 'inter';
      border-bottom: 1px solid #9B9B9B; }
      .card-expo.bigcard .info-exposition .auth-expo {
        font-size: 0.875rem;
        color: #f7f7f7;
        width: 100%;
        font-weight: 600; }
        @media screen and (min-width: 40em) {
          .card-expo.bigcard .info-exposition .auth-expo {
            font-size: 1.125rem; } }
      .card-expo.bigcard .info-exposition .date-expo, .card-expo.bigcard .info-exposition .date-expo * {
        font-size: 0.875rem;
        color: #9F9C9C !important;
        -ms-flex-wrap: nowrap;
            flex-wrap: nowrap;
        white-space: nowrap;
        font-weight: 500; }
        @media screen and (min-width: 40em) {
          .card-expo.bigcard .info-exposition .date-expo, .card-expo.bigcard .info-exposition .date-expo * {
            font-size: 0.75rem; } }
        .card-expo.bigcard .info-exposition .date-expo span, .card-expo.bigcard .info-exposition .date-expo * span {
          white-space: nowrap; }
  .card-expo.smallcard figcaption {
    width: calc(100% - 1.125rem);
    box-shadow: -4px 6px rgba(0, 0, 0, 0.4); }
  .card-expo.smallcard .info-exposition {
    width: 100%;
    height: 1.5rem; }
    .card-expo.smallcard .info-exposition .auth-expo {
      overflow: hidden;
      font-size: 0.75rem; }
  .card-expo figure {
    padding: 0;
    margin: 0;
    position: relative;
    overflow: hidden; }
    .card-expo figure img {
      width: 100%;
      border: 1px solid rgba(247, 247, 247, 0.9); }
  .card-expo figcaption {
    position: absolute;
    bottom: 1rem;
    background: #F8F7F4;
    font-family: "Inter";
    font-weight: 800;
    color: #0a0a0a;
    padding: 0.125rem;
    font-size: 0.75rem; }
    @media screen and (min-width: 40em) {
      .card-expo figcaption {
        font-size: 0.825rem; } }
    .card-expo figcaption a {
      color: #0a0a0a; }
  .card-expo .vid-expo {
    position: absolute;
    top: 0;
    left: 0;
    background: #F8F7F4;
    font-size: 0.875rem;
    font-family: "Varta";
    z-index: 10; }
    .card-expo .vid-expo > * * {
      color: #0a0a0a; }
    .card-expo .vid-expo > * {
      color: #0a0a0a;
      padding: 0.125rem 0.75rem;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-align: center;
          align-items: center; }
      .card-expo .vid-expo > * i {
        margin-bottom: 0.1rem; }
      .card-expo .vid-expo > * span {
        margin: 0.4rem;
        margin-bottom: 0.2rem;
        margin-left: 0.2rem;
        line-height: 1;
        font-size: 0.75rem; }
        @media screen and (min-width: 40em) {
          .card-expo .vid-expo > * span {
            font-size: 0.825rem; } }
        @media screen and (min-width: 40em) {
          .card-expo .vid-expo > * span {
            font-size: 0.825rem; } }
        .card-expo .vid-expo > * span i {
          font-size: 0.75rem; }
          @media screen and (min-width: 40em) {
            .card-expo .vid-expo > * span i {
              font-size: 0.825rem; } }
          @media screen and (min-width: 40em) {
            .card-expo .vid-expo > * span i {
              font-size: 0.825rem; } }
  .card-expo.on-black figcaption {
    background: #0a0a0a; }
    .card-expo.on-black figcaption a {
      color: #f7f7f7; }
  .card-expo.on-black .vid-expo {
    background: #0a0a0a;
    color: #f7f7f7; }
  .card-expo.on-black figure img {
    border: 1px solid rgba(247, 247, 247, 0.9); }
  .card-expo.on-black .vid-expo > *, .card-expo.on-black .vid-expo > * * {
    color: #f7f7f7; }
  .card-expo:not(.on-black) figcaption a {
    color: #0a0a0a; }
  .card-expo:not(.on-black) .vid-expo {
    color: #0a0a0a; }
  .card-expo:not(.on-black) figure img {
    border: 1px solid rgba(159, 159, 159, 0.9); }
  .card-expo .info-exposition {
    padding: 0.125rem; }
    @media screen and (min-width: 40em) {
      .card-expo .info-exposition {
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: nowrap;
            flex-wrap: nowrap; } }
    .card-expo .info-exposition .auth-expo {
      font-size: 1rem;
      color: #0a0a0a;
      width: 100%; }
    .card-expo .info-exposition .date-expo {
      font-size: 0.875rem;
      line-height: 1.5rem;
      color: #9F9C9C;
      -ms-flex-wrap: nowrap;
          flex-wrap: nowrap;
      white-space: nowrap; }
      .card-expo .info-exposition .date-expo span {
        white-space: nowrap; }

#themHeader {
  margin: auto;
  width: 100%;
  display: -ms-flexbox;
  display: flex;
  height: 25vh;
  min-height: 190px;
  max-height: 320px;
  -ms-flex-align: center;
      align-items: center;
  background-size: cover;
  background-position: center center !important;
  position: relative; }
  #themHeader h1, #themHeader .title-1 {
    line-height: 1;
    font-size: 2rem;
    text-transform: none; }
    @media screen and (min-width: 64em) {
      #themHeader h1, #themHeader .title-1 {
        font-size: 3rem; } }
    @media screen and (min-width: 75em) {
      #themHeader h1, #themHeader .title-1 {
        font-size: 4rem; } }

.containerGridexpos {
  position: relative;
  width: 100%;
  margin: 0px auto;
  height: 100%;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 42px 1fr;
      grid-template-columns: 42px 1fr;
  grid-gap: 0px; }
  @media screen and (min-width: 64em) {
    .containerGridexpos {
      -ms-grid-columns: 82px 1fr;
          grid-template-columns: 82px 1fr; } }
  .containerGridexpos #themHeader {
    height: 20vh;
    min-height: 160px;
    max-height: 320px; }
  .containerGridexpos.expodetail {
    -ms-grid-columns: 42px 42px 1fr;
        grid-template-columns: 42px 42px 1fr; }
    @media screen and (min-width: 64em) {
      .containerGridexpos.expodetail {
        -ms-grid-columns: 82px 82px 1fr;
            grid-template-columns: 82px 82px 1fr; } }
    .containerGridexpos.expodetail .headergrid {
      -ms-grid-column: span 3;
          grid-column: span 3; }
    .containerGridexpos.expodetail .maingridexpos, .containerGridexpos.expodetail .content-box {
      grid-column: 3/3; }
      .containerGridexpos.expodetail .maingridexpos a:hover, .containerGridexpos.expodetail .content-box a:hover {
        color: #dd3333 !important; }
      .containerGridexpos.expodetail .maingridexpos.top3rel, .containerGridexpos.expodetail .content-box.top3rel {
        position: relative;
        top: -3rem; }
    .containerGridexpos.expodetail .total {
      -ms-grid-column: span 3;
          grid-column: span 3; }
    .containerGridexpos.expodetail .sidebar.black {
      background: #0a0a0a; }
    .containerGridexpos.expodetail .recenter-side1 {
      overflow: hidden;
      width: calc(100% - 24px); }
      @media screen and (min-width: 64em) {
        .containerGridexpos.expodetail .recenter-side1 {
          width: calc(100% - 82px); } }
      .containerGridexpos.expodetail .recenter-side1.slidethems {
        margin: auto; }
    .containerGridexpos.expodetail #themHeader {
      height: 35vh;
      min-height: 280px;
      max-height: 380px; }
      .containerGridexpos.expodetail #themHeader h1, .containerGridexpos.expodetail #themHeader .title-1 {
        text-transform: none;
        font-weight: 600; }
      @media screen and (min-width: 64em) {
        .containerGridexpos.expodetail #themHeader {
          height: 38vh;
          min-height: 300px; } }
  .containerGridexpos.chaptdetail {
    -ms-grid-columns: 42px 42px 1fr;
        grid-template-columns: 42px 42px 1fr; }
    @media screen and (min-width: 64em) {
      .containerGridexpos.chaptdetail {
        -ms-grid-columns: 82px 82px 1fr 82px;
            grid-template-columns: 82px 82px 1fr 82px; } }
    .containerGridexpos.chaptdetail .headergrid {
      -ms-grid-column: span 4;
          grid-column: span 4; }
    .containerGridexpos.chaptdetail .maingridexpos, .containerGridexpos.chaptdetail .content-box {
      grid-column: 3/3;
      overflow: hidden;
      grid-row: 1 / 100; }
    .containerGridexpos.chaptdetail .total {
      -ms-grid-column: span 4;
          grid-column: span 4; }
    .containerGridexpos.chaptdetail .sidebar.black {
      background: #0a0a0a; }
    .containerGridexpos.chaptdetail .sidebar.rightbar {
      grid-column: 4/4;
      display: none; }
      @media screen and (min-width: 40em) {
        .containerGridexpos.chaptdetail .sidebar.rightbar {
          display: block; } }
    .containerGridexpos.chaptdetail .recenter-side1 {
      width: 100%; }
      @media screen and (min-width: 64em) {
        .containerGridexpos.chaptdetail .recenter-side1 {
          width: calc(100% - 41px); } }
      @media screen and (min-width: 75em) {
        .containerGridexpos.chaptdetail .recenter-side1 {
          width: calc(100% - 82px); } }
    .containerGridexpos.chaptdetail #themHeader {
      height: 30vh;
      max-height: 320px; }
  .containerGridexpos .recenter-side1 {
    width: 100%; }
    @media screen and (min-width: 40em) {
      .containerGridexpos .recenter-side1 {
        width: calc(100% - 82px); } }
  .containerGridexpos .sidebar {
    grid-row: 1 / 100;
    background-color: #dd3333; }
  .containerGridexpos .headergrid {
    -ms-grid-column: span 2;
        grid-column: span 2; }
  .containerGridexpos .maingridexpos {
    grid-column: 2/2; }
  .containerGridexpos .total {
    -ms-grid-column: span 2;
        grid-column: span 2; }
  .containerGridexpos .credits {
    margin-top: 3.25rem;
    clear: both;
    float: left;
    width: 100%;
    margin-bottom: 3.25rem; }
    .containerGridexpos .credits .credlist {
      font-size: 0.875rem;
      opacity: 0.66; }

.end-box.black a {
  text-decoration: underline; }
  .end-box.black a:hover {
    color: #dd3333 !important; }

.marquee {
  position: relative;
  margin: 0 16px 0rem 0; }
  .marquee .listaut {
    font-size: 0.875rem; }
    @media screen and (min-width: 40em) {
      .marquee .listaut {
        position: absolute;
        white-space: nowrap;
        -ms-transform: translateX(0);
            transform: translateX(0);
        transition: 1s;
        display: -ms-flexbox;
        display: flex; }
        .marquee .listaut span {
          display: inline-block;
          float: left;
          margin: 0;
          pointer-events: none; } }

.presexpo {
  margin-top: 4rem;
  padding-bottom: 3rem;
  border-bottom: 1px solid rgba(224, 224, 224, 0.5);
  margin-bottom: 2.4rem; }
  .presexpo article {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
        flex-direction: column; }
    @media screen and (min-width: 64em) {
      .presexpo article {
        -ms-flex-direction: row;
            flex-direction: row; } }
  .presexpo .introFirst {
    font-weight: 600;
    text-align: justify; }
  .presexpo .citeForExpo {
    margin-top: 1rem; }
  .presexpo .citation {
    font-size: 1.125rem;
    font-style: italic;
    margin-bottom: 0.625rem; }
    @media screen and (min-width: 90em) {
      .presexpo .citation {
        font-size: 1.125rem; } }
  .presexpo .citation_auth {
    font-size: 1rem;
    font-weight: 300;
    color: #E0E0E0; }
  .presexpo .expo-picture {
    width: 100%;
    float: left;
    margin-right: 2rem; }
    @media screen and (max-width: 39.9375em) {
      .presexpo .expo-picture {
        width: 100%; }
        .presexpo .expo-picture img {
          width: 100%;
          margin-right: 0;
          margin-bottom: 2rem; } }
    @media screen and (min-width: 40em) {
      .presexpo .expo-picture {
        width: 280px; } }
    @media screen and (min-width: 64em) {
      .presexpo .expo-picture {
        width: 360px; } }
  .presexpo a {
    text-decoration: underline; }

.expo-picture {
  width: 360px; }
  .expo-picture figure {
    margin: 0; }

.expo-intro {
  margin-left: 0rem;
  width: 100%;
  font-size: 1rem; }
  @media screen and (min-width: 90em) {
    .expo-intro {
      margin-left: 0rem;
      width: 100%;
      font-size: 1rem; }
      .expo-intro p {
        font-size: 1rem; } }
  .expo-intro .introMore {
    font-family: 'Inria Serif';
    font-weight: 400;
    text-align: justify; }
    .expo-intro .introMore a {
      text-decoration: underline; }
    @media screen and (min-width: 90em) {
      .expo-intro .introMore {
        font-size: 1rem; }
        .expo-intro .introMore p {
          font-size: 1rem; } }

.expoPlan {
  margin-top: 1.5em;
  margin-bottom: 3.5rem; }
  .expoPlan h2, .expoPlan .rst h1, .rst .expoPlan h1, .expoPlan .rst .title-1, .rst .expoPlan .title-1, .expoPlan .title-2 {
    text-transform: none;
    font-weight: 500;
    font-size: 2.25rem; }

.captl_h2 {
  text-transform: uppercase;
  font-weight: 900;
  font-size: 2.25rem; }

#recapCred {
  margin-top: 5rem;
  margin-bottom: 5rem; }

.listchapter {
  padding-top: 3rem;
  padding-bottom: 3rem; }
  .listchapter .chapterItem {
    padding: 0.5rem; }
    .listchapter .chapterItem.active {
      border: 1px #dd3333 solid; }
  .listchapter .navsliderby3 a:hover .icon-2x:before {
    color: #dd3333 !important; }
  .listchapter .icon-2x:before {
    color: #f7f7f7 !important; }

#paraghMenu {
  margin: 2.5rem 0;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap; }
  #paraghMenu .menuchapItem:hover .titlepar {
    color: #dd3333 !important; }
    #paraghMenu .menuchapItem:hover .titlepar * {
      color: #dd3333 !important; }
  #paraghMenu > div {
    width: 50%;
    float: left;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
        align-items: center;
    margin: 0.5rem 0;
    cursor: pointer; }
    @media screen and (min-width: 64em) {
      #paraghMenu > div {
        width: 25%; } }
    #paraghMenu > div > .titlepar {
      font-size: 0.875rem;
      padding: 0 0.75rem; }
    #paraghMenu > div > .imgpar {
      width: 50px;
      height: 40px;
      position: relative;
      -ms-flex: 0 0 50px;
          flex: 0 0 50px; }
      @media screen and (min-width: 64em) {
        #paraghMenu > div > .imgpar {
          width: 100px;
          height: 72px;
          -ms-flex: 0 0 100px;
              flex: 0 0 100px; } }
      #paraghMenu > div > .imgpar img {
        object-fit: cover;
        position: absolute;
        min-width: 100%;
        min-height: 100%;
        top: 50%;
        left: 50%;
        -ms-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%); }

.introfold, .descrfold {
  font-family: 'Inria Serif', serif; }
  .introfold *, .descrfold * {
    line-height: 1.875rem;
    margin-bottom: 0; }
  .introfold a, .descrfold a {
    text-decoration: underline; }

.introfold {
  text-align: justify; }

.descrfold p {
  text-align: justify; }

.folder {
  margin-top: 2rem;
  float: left; }
  .folder h3, .folder .h3, .folder .rst h2, .rst .folder h2, .folder .rst h1, .rst .folder h1, .folder .rst .title-1, .rst .folder .title-1, .folder .rst .title-2, .rst .folder .title-2, .folder .title-3 {
    font-size: 1.5rem;
    font-style: italic; }

.citationFolder .is-content {
  width: 100%;
  background: linear-gradient(90deg, white, transparent);
  padding: 2rem;
  padding-left: 4rem; }

.moreblock {
  display: block;
  float: left;
  width: 100%;
  border-bottom: 1px solid rgba(155, 155, 155, 0.5); }
  .moreblock .showfolder > span {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
        align-items: center;
    float: right; }
    .moreblock .showfolder > span span.more {
      font-size: 2em;
      font-weight: 100;
      padding-left: 0.3em; }
  .moreblock .showfolder .morebut {
    display: inline-block; }
  .moreblock .showfolder .lessbut {
    display: none; }
  .moreblock .showfolder.opened .morebut {
    display: none; }
  .moreblock .showfolder.opened .lessbut {
    display: inline-block; }

.italic {
  font-style: italic; }

.detailfolder {
  width: 100%;
  overflow: hidden;
  margin-top: 1rem;
  float: left; }
  .detailfolder .small-text * {
    font-size: 0.625rem; }
    .detailfolder .small-text *:before {
      display: none; }
  .detailfolder .slick-arrow {
    position: absolute;
    bottom: 1rem;
    z-index: 10; }
    .detailfolder .slick-arrow:before {
      font-size: 2rem; }
  .detailfolder .slick-prev {
    left: -1rem; }
  .detailfolder .slick-next {
    right: -1rem; }
  .detailfolder .slick-slide {
    text-align: center;
    color: #419be0;
    background: transparent;
    margin: 1px; }
    .detailfolder .slick-slide img {
      width: 100%; }

.containerPara {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column; }
  .containerPara > h3, .containerPara > .h3, .rst .containerPara > h2, .rst .containerPara > h1, .rst .containerPara > .title-1, .rst .containerPara > .title-2, .containerPara > .title-3 {
    border-left: 3px solid #dd3333;
    padding-left: 0.75rem; }

.folder-detail {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: start;
      align-items: flex-start;
  -ms-flex-direction: column;
      flex-direction: column; }
  .folder-detail.f_citation {
    margin-bottom: 2rem;
    margin-top: 2rem;
    position: relative; }
    .folder-detail.f_citation:before {
      content: "";
      position: absolute;
      display: block;
      left: 0;
      top: 0;
      width: 2px;
      height: 100%;
      background: #dd3333; }
  @media screen and (min-width: 75em) {
    .folder-detail {
      -ms-flex-direction: row;
          flex-direction: row; } }
  .folder-detail.alignright {
    -ms-flex-direction: column;
        flex-direction: column; }
    @media screen and (min-width: 75em) {
      .folder-detail.alignright {
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse; } }
  .folder-detail.alignfull {
    -ms-flex-direction: column;
        flex-direction: column; }
    .folder-detail.alignfull > .column, .folder-detail.alignfull > .columns {
      width: 100%; }
  .folder-detail .tag {
    margin-top: 1rem; }
  .folder-detail.is-with-image {
    display: block; }
    .folder-detail.is-with-image .descrfold {
      float: initial;
      text-align: left;
      margin: 0 0.7rem; }
    .folder-detail.is-with-image .store-album {
      display: inline-block;
      float: left;
      padding: 0;
      margin: 1.75rem;
      margin-top: 0; }
      .folder-detail.is-with-image .store-album .slick-slide {
        background: #dfdfdf; }
      .folder-detail.is-with-image .store-album button:hover {
        color: #dd3333; }
      .folder-detail.is-with-image .store-album .descrimgfold {
        padding: 0.5rem 1rem; }
    .folder-detail.is-with-image.alignright .store-album {
      float: right; }

.slider-img-folderby-3 {
  width: 100%; }
  @media screen and (min-width: 64em) {
    .slider-img-folderby-3 {
      width: 76vw; } }
  .slider-img-folderby-3 .item-img-folder {
    padding-right: 0.5rem; }
    @media screen and (min-width: 64em) {
      .slider-img-folderby-3 .item-img-folder {
        padding-right: 2.5rem; } }
    .slider-img-folderby-3 .item-img-folder .small-text {
      min-height: 3rem; }

.store-album .item-img-folder h6 {
  text-transform: none;
  text-align: center; }

section.block.black .icon-2x:before {
  color: #f7f7f7;
  font-size: 1.8rem; }

.recenter-side-resume {
  padding-top: 2rem;
  padding-bottom: 0.25rem; }
  .recenter-side-resume .slider-img-folderby-3 {
    margin-top: 2rem; }
  .recenter-side-resume .row.larger {
    max-width: 80rem; }

.navsliderby3 {
  margin-top: 1rem;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: center;
      justify-content: center; }
  .navsliderby3 a {
    padding: 1rem;
    opacity: 0.5; }
    .navsliderby3 a:hover {
      opacity: 1; }

.navbar-thematics-more {
  position: sticky;
  top: 0; }
  .navbar-thematics-more ul {
    background: transparent;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: row;
        flex-direction: row;
    margin: 0;
    margin-top: 1.5rem;
    border-top: 1px rgba(247, 247, 247, 0.5) solid;
    border-left: 1px rgba(247, 247, 247, 0.5) solid;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    .navbar-thematics-more ul li {
      display: -ms-flexbox;
      display: flex;
      border-bottom: 1px solid rgba(247, 247, 247, 0.5);
      border-right: 1px solid rgba(247, 247, 247, 0.5);
      width: calc(100% / 3); }
    .navbar-thematics-more ul a {
      display: block;
      float: left;
      width: 100%;
      background: #0a0a0a;
      padding: 1rem 2rem;
      font-family: 'varta';
      text-transform: uppercase;
      text-align: left;
      font-size: 1rem;
      line-height: 1rem;
      font-weight: 700;
      color: #0a0a0a; }
      .navbar-thematics-more ul a:hover {
        background: #dd3333; }
  .navbar-thematics-more ul.large-8 li {
    width: calc(100% / 2); }
  .navbar-thematics-more ul.large-4 li {
    width: calc(100%); }

#chaptersSlide .slick-track {
  display: -ms-flexbox;
  display: flex; }

#chaptersSlide .card-expo figcaption {
  font-size: 0.75rem; }

.nopoint {
  pointer-events: none; }

#themHeader .permalinks {
  position: absolute;
  top: 1rem;
  right: 1rem; }
  #themHeader .permalinks a.citeurl {
    color: #f7f7f7;
    font-weight: 700;
    background-color: #0a0a0a;
    border-radius: 6px; }

.img-aud {
  margin-bottom: 1rem; }

.tracklist {
  display: block;
  margin: 1rem 0;
  counter-reset: num;
  margin-top: 0;
  margin-left: 0; }
  .tracklist p {
    counter-increment: num;
    display: list-item;
    font-size: 0.75rem;
    margin: 0 0.5rem;
    margin-left: 0;
    list-style: none;
    border-radius: 6px;
    cursor: pointer; }
    .tracklist p:before {
      content: counter(num) ") "; }

/*
 * Flying slick plugin stylesheets
 */
.flyingslick-overlay {
  position: fixed;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  height: 100vh;
  background-color: rgba(10, 10, 10, 0.9);
  z-index: 3000;
  -webkit-backdrop-filter: blur(5px);
          backdrop-filter: blur(5px);
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-pack: center;
      justify-content: center; }
  .flyingslick-overlay .flyingslick-close {
    position: absolute;
    top: 1rem;
    right: 1rem;
    margin: 0;
    padding: 1.5rem;
    border: 0;
    cursor: pointer;
    z-index: 300; }
    .flyingslick-overlay .flyingslick-close::after {
      content: "\e91d";
      font-family: 'icomoon';
      font-size: 2.5rem;
      color: #f7f7f7;
      transition: 0.2s; }
    .flyingslick-overlay .flyingslick-close:hover::after {
      font-size: 3rem; }

.flyingslick-album {
  -ms-flex: 1 0 100%;
      flex: 1 0 100%;
  max-width: 100%; }
  .flyingslick-album.slick-slider.slick-initialized .slick-prev,
  .flyingslick-album.slick-slider.slick-initialized .slick-next {
    width: auto;
    height: auto;
    margin: 0;
    top: calc(50% - 2rem);
    position: absolute;
    z-index: 20; }
    .flyingslick-album.slick-slider.slick-initialized .slick-prev:before,
    .flyingslick-album.slick-slider.slick-initialized .slick-next:before {
      font-size: 1.8rem;
      line-height: 1;
      color: #FFF;
      opacity: 1;
      text-shadow: 0px 0px 15px #ffffff99; }
  .flyingslick-album.slick-slider.slick-initialized .slick-prev {
    left: 2rem; }
    .flyingslick-album.slick-slider.slick-initialized .slick-prev:before {
      content: "\e91c"; }
  .flyingslick-album.slick-slider.slick-initialized .slick-next {
    right: 2rem; }
    .flyingslick-album.slick-slider.slick-initialized .slick-next:before {
      content: "\e91b"; }
  .flyingslick-album.slick-slider.slick-initialized .slick-list {
    display: -ms-flexbox;
    display: flex;
    height: 100%;
    display: flex;
    -ms-flex-direction: column;
        flex-direction: column;
    -ms-flex-pack: center;
        justify-content: center; }
    .flyingslick-album.slick-slider.slick-initialized .slick-list .slick-slide {
      display: -ms-flexbox;
      display: flex;
      -ms-flex-direction: column;
          flex-direction: column;
      -ms-flex-align: center;
          align-items: center;
      -ms-flex-pack: center;
          justify-content: center; }
      .flyingslick-album.slick-slider.slick-initialized .slick-list .slick-slide span {
        display: inline-block;
        position: relative;
        background: transparent;
        width: 98%;
        text-align: center;
        overflow-y: scroll;
        max-height: 100vh; }
        .flyingslick-album.slick-slider.slick-initialized .slick-list .slick-slide span::before {
          content: attr(data-name);
          position: absolute;
          bottom: 0;
          left: 0;
          padding: 0.7rem 1rem;
          font-size: 0.65rem;
          color: #f7f7f7;
          text-transform: uppercase;
          font-weight: 500; }
          @media screen and (min-width: 64em) {
            .flyingslick-album.slick-slider.slick-initialized .slick-list .slick-slide span::before {
              padding: 0.8rem 1.2rem; } }
        .flyingslick-album.slick-slider.slick-initialized .slick-list .slick-slide span img {
          display: inline-block;
          transition: all 500ms ease; }
      .flyingslick-album.slick-slider.slick-initialized .slick-list .slick-slide:not(.slick-active) img {
        height: calc(50vw/2);
        opacity: 0.5; }
      .flyingslick-album.slick-slider.slick-initialized .slick-list .slick-slide:not(.slick-active) span::before {
        display: none; }
  .flyingslick-album .slick-dots {
    display: none !important;
    margin: 0;
    padding: 0;
    bottom: 1rem; }
    @media screen and (min-width: 40em) {
      .flyingslick-album .slick-dots {
        bottom: 5vh; } }
    @media screen and (min-width: 64em) {
      .flyingslick-album .slick-dots {
        bottom: 10vh;
        padding: 0 15%; } }
    .flyingslick-album .slick-dots li {
      position: relative;
      display: inline-block;
      height: 15px;
      width: 15px;
      margin: 0 0 3px;
      padding: 0;
      cursor: pointer; }
      @media screen and (min-width: 40em) {
        .flyingslick-album .slick-dots li {
          margin: 0 0 5px; } }
      .flyingslick-album .slick-dots li + li {
        margin-left: 3px; }
        @media screen and (min-width: 40em) {
          .flyingslick-album .slick-dots li + li {
            margin-left: 5px; } }
      .flyingslick-album .slick-dots li button {
        display: block;
        height: 100%;
        width: 100%;
        line-height: 15px;
        font-size: 0.5rem;
        color: #0a0a0a;
        padding: 0px !important;
        text-align: center;
        border: 1px solid #0a0a0a;
        border-radius: 5rem;
        background: #0a0a0a; }
        .flyingslick-album .slick-dots li button:before {
          position: static;
          display: none;
          content: "";
          width: auto;
          height: auto;
          font-size: 0;
          line-height: 0; }
      .flyingslick-album .slick-dots li.slick-active button {
        color: #f7f7f7;
        border: 1px solid #0a0a0a;
        background: #f7f7f7; }

html.isMobile {
  /* Small screen, retina, stuff to override above media query */ }
  @media only screen and (-webkit-min-device-pixel-ratio: 2) and (max-width: 1536px), only screen and (min--moz-device-pixel-ratio: 2) and (max-width: 1536px), only screen and (min-device-pixel-ratio: 2) and (max-width: 1536px), only screen and (min-resolution: 192dpi) and (max-width: 1536px), only screen and (min-resolution: 2dppx) and (max-width: 1536px) {
    html.isMobile {
      font-size: 160%; } }
  @media screen and (-webkit-min-device-pixel-ratio: 2), (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
    html.isMobile .square {
      height: 60px;
      width: 60px; }
    html.isMobile .footer-links {
      display: inline-block;
      width: 100%; } }

/*
 * Typography and alike
 */
b {
  font-weight: 600; }

strong {
  font-weight: 700; }

.text-upper {
  text-transform: uppercase !important; }

.text-important {
  text-decoration: underline !important; }

.text-thin {
  font-weight: 300 !important; }

.text-bold {
  font-weight: 400 !important; }

.text-strong {
  font-weight: 700 !important; }

.text-strongest {
  font-weight: 900 !important; }

.text-red {
  color: #dd3333 !important; }

.text-black {
  color: #0a0a0a !important; }

.text-white {
  color: #f7f7f7 !important; }

small.small {
  font-size: 40%; }

small.medium {
  font-size: 60%; }

small.big {
  font-size: 80%; }

h1, .title-1 {
  text-transform: uppercase;
  font-weight: 600;
  line-height: 0.8; }

h1.text-thin, .text-thin.title-1, h2.text-thin, .rst h1.text-thin, .rst .text-thin.title-1, .text-thin.title-2, h3.text-thin, .text-thin.h3, .rst h2.text-thin, .rst h1.text-thin, .rst .text-thin.title-1, .rst .text-thin.title-2, .text-thin.title-3, h4.text-thin, .rst h3.text-thin, .rst .text-thin.h3, .rst h2.text-thin, .rst h1.text-thin, .rst .text-thin.title-1, .rst .text-thin.title-2, .rst .text-thin.title-3, .text-thin.title-4, h5.text-thin, .rst h4.text-thin, .rst h3.text-thin, .rst .text-thin.h3, .rst h2.text-thin, .rst h1.text-thin, .rst .text-thin.title-1, .rst .text-thin.title-2, .rst .text-thin.title-3, .rst .text-thin.title-4, .text-thin.title-5, h6.text-thin {
  font-weight: 100 !important; }

h1.text-normal, .text-normal.title-1, h2.text-normal, .rst h1.text-normal, .rst .text-normal.title-1, .text-normal.title-2, h3.text-normal, .text-normal.h3, .rst h2.text-normal, .rst h1.text-normal, .rst .text-normal.title-1, .rst .text-normal.title-2, .text-normal.title-3, h4.text-normal, .rst h3.text-normal, .rst .text-normal.h3, .rst h2.text-normal, .rst h1.text-normal, .rst .text-normal.title-1, .rst .text-normal.title-2, .rst .text-normal.title-3, .text-normal.title-4, h5.text-normal, .rst h4.text-normal, .rst h3.text-normal, .rst .text-normal.h3, .rst h2.text-normal, .rst h1.text-normal, .rst .text-normal.title-1, .rst .text-normal.title-2, .rst .text-normal.title-3, .rst .text-normal.title-4, .text-normal.title-5, h6.text-normal {
  font-weight: 400 !important; }

h1.text-strong, .text-strong.title-1, h2.text-strong, .rst h1.text-strong, .rst .text-strong.title-1, .text-strong.title-2, h3.text-strong, .text-strong.h3, .rst h2.text-strong, .rst h1.text-strong, .rst .text-strong.title-1, .rst .text-strong.title-2, .text-strong.title-3, h4.text-strong, .rst h3.text-strong, .rst .text-strong.h3, .rst h2.text-strong, .rst h1.text-strong, .rst .text-strong.title-1, .rst .text-strong.title-2, .rst .text-strong.title-3, .text-strong.title-4, h5.text-strong, .rst h4.text-strong, .rst h3.text-strong, .rst .text-strong.h3, .rst h2.text-strong, .rst h1.text-strong, .rst .text-strong.title-1, .rst .text-strong.title-2, .rst .text-strong.title-3, .rst .text-strong.title-4, .text-strong.title-5, h6.text-strong {
  font-weight: 600 !important; }

.h3 {
  display: block;
  padding-bottom: 2rem;
  padding-top: 2rem; }

h6 {
  text-transform: uppercase;
  font-weight: 600; }

.big:not(small) {
  font-size: 1.4rem;
  font-weight: 600; }

/*blockquote {
    border-left: 0;
    text-align: left;
    position: relative;
    svg {
        #black {
            fill: #FFFFFF;
            background-color: #FFF;
        }
    }
}*/
hr {
  border-width: 0px;
  border-style: solid;
  border-top: 0;
  border-bottom: 1px solid rgba(10, 10, 10, 0.5); }

footer hr {
  border-color: #FFF; }

@media screen and (max-width: 63.9375em) {
  footer .btn-group {
    display: inline-block; } }

.hline {
  display: block;
  height: 2px;
  border: 0;
  margin: 0 auto;
  padding: 0;
  background-color: rgba(10, 10, 10, 0.2);
  width: 30%;
  text-align: center;
  margin-bottom: 1rem; }

.background-black {
  background-color: black; }

.background-white {
  background-color: #f7f7f7; }

.rounded {
  border-radius: 50%; }

.square {
  display: inline-block;
  height: 32px;
  width: 32px;
  position: relative; }
  .square .icon {
    position: absolute;
    top: 50%;
    left: 50%;
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%); }

.menu.social li {
  padding-right: 0.5rem; }
  .menu.social li a {
    color: #f7f7f7; }

.underline:after {
  content: "";
  display: block;
  width: 50%;
  height: 0.1875rem;
  margin: 1rem 0;
  border-bottom: 0.1875rem solid #0a0a0a; }

.underline.text-center:after {
  margin-left: auto;
  margin-right: auto; }

.underline.thin:after {
  height: 0.0625rem;
  border-bottom: 0.0625rem solid #0a0a0a; }

.underline.bold:after {
  height: 0.3125rem;
  border-bottom: 0.3125rem solid #0a0a0a; }

.underline.tiny:after {
  width: 5%; }

.underline.short:after {
  width: 15%; }

.underline.normal:after {
  width: 40%; }

.underline.large:after {
  width: 70%; }

.underline.full:after {
  width: 100%; }

.underline.far:after {
  margin: 2rem 0; }

.underline.far.text-center:after {
  margin: 2rem auto; }

.underline.near:after {
  margin: 0.5rem 0; }

.underline.near.text-center:after {
  margin: 0.5rem auto; }

.underline.sticked:after {
  margin: 0 0; }

.underline.sticked.text-center:after {
  margin: 0 auto; }

/*
 * Various minor rules
 */
[data-link]:hover {
  cursor: pointer;
  color: #dd3333; }

.total {
  width: 100%; }

.gutter, *.gutter {
  margin: 1rem; }

.full.gutter {
  width: calc(100% - 2rem); }

@media print {
  footer, .header,
  #controls_like, .menu.social,
  a[title="Compatible Zotero"],
  .cms-toolbar, .cms-toolbar-trigger {
    display: none;
    visibility: hidden; } }

/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFwcC5jc3MiLCIuLi8uLi8uLi8uLi9ib3dlcl9jb21wb25lbnRzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9mb3VuZGF0aW9uLnNjc3MiLCJjb21wb25lbnRzL19pY29uLnNjc3MiLCIuLi8uLi8uLi8uLi9ib3dlcl9jb21wb25lbnRzL21vdGlvbi11aS9zcmMvX2NsYXNzZXMuc2NzcyIsIi4uLy4uLy4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvbW90aW9uLXVpL3NyYy9fc2V0dGluZ3Muc2NzcyIsIi4uLy4uLy4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL19nbG9iYWwuc2NzcyIsIl9zZXR0aW5ncy5zY3NzIiwiLi4vLi4vLi4vLi4vYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdXRpbC9fbWl4aW5zLnNjc3MiLCIuLi8uLi8uLi8uLi9ib3dlcl9jb21wb25lbnRzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19jbGFzc2VzLnNjc3MiLCIuLi8uLi8uLi8uLi9ib3dlcl9jb21wb25lbnRzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19yb3cuc2NzcyIsIi4uLy4uLy4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3V0aWwvX3VuaXQuc2NzcyIsIi4uLy4uLy4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2d1dHRlci5zY3NzIiwiLi4vLi4vLi4vLi4vYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fc2l6ZS5zY3NzIiwiLi4vLi4vLi4vLi4vYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fY29sdW1uLnNjc3MiLCIuLi8uLi8uLi8uLi9ib3dlcl9jb21wb25lbnRzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19wb3NpdGlvbi5zY3NzIiwiLi4vLi4vLi4vLi4vYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fbGF5b3V0LnNjc3MiLCIuLi8uLi8uLi8uLi9ib3dlcl9jb21wb25lbnRzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy91dGlsL19icmVha3BvaW50LnNjc3MiLCIuLi8uLi8uLi8uLi9ib3dlcl9jb21wb25lbnRzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy90eXBvZ3JhcGh5L19iYXNlLnNjc3MiLCIuLi8uLi8uLi8uLi9ib3dlcl9jb21wb25lbnRzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy90eXBvZ3JhcGh5L19oZWxwZXJzLnNjc3MiLCIuLi8uLi8uLi8uLi9ib3dlcl9jb21wb25lbnRzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy90eXBvZ3JhcGh5L19hbGlnbm1lbnQuc2NzcyIsIi4uLy4uLy4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3R5cG9ncmFwaHkvX3ByaW50LnNjc3MiLCIuLi8uLi8uLi8uLi9ib3dlcl9jb21wb25lbnRzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19idXR0b24uc2NzcyIsIi4uLy4uLy4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL190ZXh0LnNjc3MiLCIuLi8uLi8uLi8uLi9ib3dlcl9jb21wb25lbnRzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9mb3Jtcy9fY2hlY2tib3guc2NzcyIsIi4uLy4uLy4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL19sYWJlbC5zY3NzIiwiLi4vLi4vLi4vLi4vYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm9ybXMvX2hlbHAtdGV4dC5zY3NzIiwiLi4vLi4vLi4vLi4vYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm9ybXMvX2lucHV0LWdyb3VwLnNjc3MiLCIuLi8uLi8uLi8uLi9ib3dlcl9jb21wb25lbnRzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9mb3Jtcy9fZmllbGRzZXQuc2NzcyIsIi4uLy4uLy4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL19zZWxlY3Quc2NzcyIsIi4uLy4uLy4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL19lcnJvci5zY3NzIiwiLi4vLi4vLi4vLi4vYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fdmlzaWJpbGl0eS5zY3NzIiwiLi4vLi4vLi4vLi4vYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fZmxvYXQuc2NzcyIsIi4uLy4uLy4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2FjY29yZGlvbi5zY3NzIiwiLi4vLi4vLi4vLi4vYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fYmFkZ2Uuc2NzcyIsIi4uLy4uLy4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2JyZWFkY3J1bWJzLnNjc3MiLCIuLi8uLi8uLi8uLi9ib3dlcl9jb21wb25lbnRzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19idXR0b24tZ3JvdXAuc2NzcyIsIi4uLy4uLy4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2NhbGxvdXQuc2NzcyIsIi4uLy4uLy4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2Nsb3NlLWJ1dHRvbi5zY3NzIiwiLi4vLi4vLi4vLi4vYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fZHJpbGxkb3duLnNjc3MiLCIuLi8uLi8uLi8uLi9ib3dlcl9jb21wb25lbnRzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19kcm9wZG93bi5zY3NzIiwiLi4vLi4vLi4vLi4vYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fZHJvcGRvd24tbWVudS5zY3NzIiwiLi4vLi4vLi4vLi4vYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fZmxleC12aWRlby5zY3NzIiwiLi4vLi4vLi4vLi4vYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fbGFiZWwuc2NzcyIsIi4uLy4uLy4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX21lZGlhLW9iamVjdC5zY3NzIiwiLi4vLi4vLi4vLi4vYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fbWVudS5zY3NzIiwiLi4vLi4vLi4vLi4vYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fb2ZmLWNhbnZhcy5zY3NzIiwiLi4vLi4vLi4vLi4vYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fb3JiaXQuc2NzcyIsIi4uLy4uLy4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3BhZ2luYXRpb24uc2NzcyIsIi4uLy4uLy4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3Byb2dyZXNzLWJhci5zY3NzIiwiLi4vLi4vLi4vLi4vYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fc2xpZGVyLnNjc3MiLCIuLi8uLi8uLi8uLi9ib3dlcl9jb21wb25lbnRzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19zdGlja3kuc2NzcyIsIi4uLy4uLy4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3JldmVhbC5zY3NzIiwiLi4vLi4vLi4vLi4vYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fc3dpdGNoLnNjc3MiLCIuLi8uLi8uLi8uLi9ib3dlcl9jb21wb25lbnRzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL190YWJsZS5zY3NzIiwiLi4vLi4vLi4vLi4vYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdXRpbC9fY29sb3Iuc2NzcyIsIi4uLy4uLy4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3RhYnMuc2NzcyIsIi4uLy4uLy4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3RodW1ibmFpbC5zY3NzIiwiLi4vLi4vLi4vLi4vYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fdGl0bGUtYmFyLnNjc3MiLCIuLi8uLi8uLi8uLi9ib3dlcl9jb21wb25lbnRzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19tZW51LWljb24uc2NzcyIsIi4uLy4uLy4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3Rvb2x0aXAuc2NzcyIsIi4uLy4uLy4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3RvcC1iYXIuc2NzcyIsIi4uLy4uLy4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvbW90aW9uLXVpL3NyYy91dGlsL190cmFuc2l0aW9uLnNjc3MiLCIuLi8uLi8uLi8uLi9ib3dlcl9jb21wb25lbnRzL21vdGlvbi11aS9zcmMvdXRpbC9fa2V5ZnJhbWUuc2NzcyIsIi4uLy4uLy4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvbW90aW9uLXVpL3NyYy90cmFuc2l0aW9ucy9fc2xpZGUuc2NzcyIsIi4uLy4uLy4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvbW90aW9uLXVpL3NyYy90cmFuc2l0aW9ucy9fZmFkZS5zY3NzIiwiLi4vLi4vLi4vLi4vYm93ZXJfY29tcG9uZW50cy9tb3Rpb24tdWkvc3JjL2VmZmVjdHMvX2hpbmdlLnNjc3MiLCIuLi8uLi8uLi8uLi9ib3dlcl9jb21wb25lbnRzL21vdGlvbi11aS9zcmMvdHJhbnNpdGlvbnMvX2hpbmdlLnNjc3MiLCIuLi8uLi8uLi8uLi9ib3dlcl9jb21wb25lbnRzL21vdGlvbi11aS9zcmMvdHJhbnNpdGlvbnMvX3pvb20uc2NzcyIsIi4uLy4uLy4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvbW90aW9uLXVpL3NyYy90cmFuc2l0aW9ucy9fc3Bpbi5zY3NzIiwiLi4vLi4vLi4vLi4vYm93ZXJfY29tcG9uZW50cy9tb3Rpb24tdWkvc3JjL3V0aWwvX2FuaW1hdGlvbi5zY3NzIiwidXRpbHMvX21peGlucy5zY3NzIiwiYWRkb25zL19mbGV4LnNjc3MiLCJhZGRvbnMvX2dsb2JhbC5zY3NzIiwiY29tcG9uZW50cy9faWNvbW9vbi5zY3NzIiwiY29tcG9uZW50cy9faWNvbW9vbl9pY29ucy5zY3NzIiwiYWRkb25zL19saXN0cy5zY3NzIiwiYWRkb25zL19uaXZvX2FkZG9uLnNjc3MiLCJhZGRvbnMvX2Zvcm1zLnNjc3MiLCJhZGRvbnMvX3BhZ2luYXRpb24uc2NzcyIsImNvbXBvbmVudHMvX2FkZG9ucy5zY3NzIiwiY29tcG9uZW50cy9fZm9vdGVyLnNjc3MiLCJjb21wb25lbnRzL19uYXYuc2NzcyIsImNvbXBvbmVudHMvX3RvcG1lZGlhLnNjc3MiLCJjb21wb25lbnRzL193YWxsZ3JpZC5zY3NzIiwiY29tcG9uZW50cy9fZ3JpZDE1LnNjc3MiLCJjb21wb25lbnRzL3NsaWNrLnNjc3MiLCJjb21wb25lbnRzL3NsaWNrLXRoZW1lLnNjc3MiLCJjb21wb25lbnRzL19jb250ZW50cy5zY3NzIiwiYWRkb25zL190YWJsZXMuc2NzcyIsImNvbXBvbmVudHMvaGlzdG9yeS5zY3NzIiwiY29tcG9uZW50cy9fc2VhcmNoLnNjc3MiLCJjb21wb25lbnRzL19sZWdpc2xldHVkZS5zY3NzIiwiY29tcG9uZW50cy9fdmlzaXRlcy5zY3NzIiwiY29tcG9uZW50cy9yc3Quc2NzcyIsImNvbXBvbmVudHMvY29va2llY29uc2VudC5zY3NzIiwiY29tcG9uZW50cy9fdGFibGF0dXJlLnNjc3MiLCJjb21wb25lbnRzL2V4cG8vX2hlYWRlci5zY3NzIiwiY29tcG9uZW50cy9leHBvL19kb3RuYXYuc2NzcyIsImNvbXBvbmVudHMvX2V4cG8uc2NzcyIsImFkZG9ucy9fZmx5aW5nc2xpY2suc2NzcyIsImFkZG9ucy9fdHlwZS5zY3NzIiwidXRpbHMvX3ByaW50LnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsaUJBQWlCO0FDQWpCOzs7OztHQUtHO0FDTEgsMkRBQVk7QUNFWjtFQUNFLDJCQ2tCYztFRGpCZCxtQ0NpQ2UsRURoQ2hCOztBRStNQyw0RUFBNEU7QUFFNUU7Ozs7S0FJRztBQUVIO0VBQ0Usd0JBQXVCO0VBQUUsT0FBTztFQUNoQywyQkFBMEI7RUFBRSxPQUFPO0VBQ25DLCtCQUE4QjtFQUFFLE9BQU8sRUFDeEM7O0FBRUQ7O0tBRUc7QUFFSDtFQUNFLFVBQVMsRUFDVjs7QUFFRDtrRkFDZ0Y7QUFFaEY7Ozs7O0tBS0c7QUFFSDs7Ozs7Ozs7Ozs7OztFQWFFLGVBQWMsRUFDZjs7QUFFRDs7O0tBR0c7QUFFSDs7OztFQUlFLHNCQUFxQjtFQUFFLE9BQU87RUFDOUIseUJBQXdCO0VBQUUsT0FBTyxFQUNsQzs7QUFFRDs7O0tBR0c7QUFFSDtFQUNFLGNBQWE7RUFDYixVQUFTLEVBQ1Y7O0FBRUQ7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RCxFTm1GOUM7O0FBTUg7RU0vREosZ0JEYmdDLEVMOEUzQjs7QUFwQkQ7RUl0RUosaUJDZXFELEVMeURoRDs7QUFJQztFTTNFSixtQkFBa0I7RUFDbEIsZ0JBSG1ELEVOK0U5Qzs7QUFFRDtFTS9FSixtQkFBa0I7RUFDbEIsaUJBSG1ELEVObUY5Qzs7QUFNSDtFTS9ESixzQkRWcUQsRUwyRWhEOztBQXBCRDtFSXRFSixXQ2VxRCxFTHlEaEQ7O0FBSUM7RU0zRUosbUJBQWtCO0VBQ2xCLFVBSG1ELEVOK0U5Qzs7QUFFRDtFTS9FSixtQkFBa0I7RUFDbEIsV0FIbUQsRU5tRjlDOztBQU1IO0VNL0RKLHVCRFZxRCxFTDJFaEQ7O0FBcEJEO0VJdEVKLGlCQ2VxRCxFTHlEaEQ7O0FBSUM7RU0zRUosbUJBQWtCO0VBQ2xCLGdCQUhtRCxFTitFOUM7O0FBRUQ7RU0vRUosbUJBQWtCO0VBQ2xCLGlCQUhtRCxFTm1GOUM7O0FBTUg7RU0vREosaUJEVnFELEVMMkVoRDs7QUFwQkQ7RUl0RUosaUJDZXFELEVMeURoRDs7QUFJQztFTTNFSixtQkFBa0I7RUFDbEIsZ0JBSG1ELEVOK0U5Qzs7QUFFRDtFTS9FSixtQkFBa0I7RUFDbEIsaUJBSG1ELEVObUY5Qzs7QUFNSDtFTS9ESix1QkRWcUQsRUwyRWhEOztBQXBCRDtFSXRFSixXQ2VxRCxFTHlEaEQ7O0FBSUM7RU0zRUosbUJBQWtCO0VBQ2xCLFVBSG1ELEVOK0U5Qzs7QUFFRDtFTS9FSixtQkFBa0I7RUFDbEIsV0FIbUQsRU5tRjlDOztBQU1IO0VNL0RKLHVCRFZxRCxFTDJFaEQ7O0FBcEJEO0VJdEVKLGlCQ2VxRCxFTHlEaEQ7O0FBSUM7RU0zRUosbUJBQWtCO0VBQ2xCLGdCQUhtRCxFTitFOUM7O0FBRUQ7RU0vRUosbUJBQWtCO0VBQ2xCLGlCQUhtRCxFTm1GOUM7O0FBTUg7RU0vREosaUJEVnFELEVMMkVoRDs7QUFwQkQ7RUl0RUosaUJDZXFELEVMeURoRDs7QUFJQztFTTNFSixtQkFBa0I7RUFDbEIsZ0JBSG1ELEVOK0U5Qzs7QUFFRDtFTS9FSixtQkFBa0I7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OUM7RUFNSDtJTS9ESixpQkRWcUQsRUwyRWhEO0VBcEJEO0lJdEVKLGlCQ2VxRCxFTHlEaEQ7RUFJQztJTTNFSixtQkFBa0I7SUFDbEIsZ0JBSG1ELEVOK0U5QztFQUVEO0lNL0VKLG1CQUFrQjtJQUNsQixpQkFIbUQsRU5tRjlDO0VBTUg7SU0vREosdUJEVnFELEVMMkVoRDtFQXBCRDtJSXRFSixXQ2VxRCxFTHlEaEQ7RUFJQztJTTNFSixtQkFBa0I7SUFDbEIsVUFIbUQsRU4rRTlDO0VBRUQ7SU0vRUosbUJBQWtCO0lBQ2xCLFdBSG1ELEVObUY5QztFQU1IO0lNL0RKLHVCRFZxRCxFTDJFaEQ7RUFwQkQ7SUl0RUosaUJDZXFELEVMeURoRDtFQUlDO0lNM0VKLG1CQUFrQjtJQUNsQixnQkFIbUQsRU4rRTlDO0VBRUQ7SU0vRUosbUJBQWtCO0lBQ2xCLGlCQUhtRCxFTm1GOUM7RUFNSDtJTS9ESixpQkRWcUQsRUwyRWhEO0VBcEJEO0lJdEVKLGlCQ2VxRCxFTHlEaEQ7RUFJQztJTTNFSixtQkFBa0I7SUFDbEIsZ0JBSG1ELEVOK0U5QztFQUVEO0lNL0VKLG1CQUFrQjtJQUNsQixpQkFIbUQsRU5tRjlDO0VBTUg7SU0vREosdUJEVnFELEVMMkVoRDtFQXBCRDtJSXRFSixXQ2VxRCxFTHlEaEQ7RUFJQztJTTNFSixtQkFBa0I7SUFDbEIsVUFIbUQsRU4rRTlDO0VBRUQ7SU0vRUosbUJBQWtCO0lBQ2xCLFdBSG1ELEVObUY5QztFQU1IO0lNL0RKLHVCRFZxRCxFTDJFaEQ7RUFwQkQ7SUl0RUosaUJDZXFELEVMeURoRDtFQUlDO0lNM0VKLG1CQUFrQjtJQUNsQixnQkFIbUQsRU4rRTlDO0VBRUQ7SU0vRUosbUJBQWtCO0lBQ2xCLGlCQUhtRCxFTm1GOUM7RUFNSDtJTS9ESixpQkRWcUQsRUwyRWhEO0VBcEJEO0lJdEVKLGlCQ2VxRCxFTHlEaEQ7RUFJQztJTTNFSixtQkFBa0I7SUFDbEIsZ0JBSG1ELEVOK0U5QztFQUVEO0lNL0VKLG1CQUFrQjtJQUNsQixpQkFIbUQsRU5tRjlDO0VBTUg7SU0vREosdUJEVnFELEVMMkVoRDtFQXBCRDtJSXRFSixZQ2VxRCxFTHlEaEQ7RUFnQkQ7SU0vREosdUJEVnFELEVMMkVoRDtFQUtEO0lPNUZGLFlBQXVCO0lBQ3ZCLFlWbUZ1RCxFVXRFeEQ7SVA4RUc7TU94RkEsWUFBVyxFQUNaO0lQdUZDO01PcEZBLFlBQVcsRUFDWjtJUG1GQztNT2hGQSxZQUFXLEVBQ1o7RUFkSDtJQUNFLFdBQXVCO0lBQ3ZCLFlWbUZ1RCxFVXRFeEQ7SUFYQztNQUNFLFlBQVcsRUFDWjtJUHVGQztNT3BGQSxZQUFXLEVBQ1o7SUFFRDtNQUNFLFlBQVcsRUFDWjtFUCtFQztJTzVGRixpQkFBdUI7SUFDdkIsWVZtRnVELEVVdEV4RDtJUDhFRztNT3hGQSxZQUFXLEVBQ1o7SUFFRDtNQUNFLFlBQVcsRUFDWjtJUG1GQztNT2hGQSxZQUFXLEVBQ1o7RVArRUM7SU81RkYsV0FBdUI7SUFDdkIsWVZtRnVELEVVdEV4RDtJUDhFRztNT3hGQSxZQUFXLEVBQ1o7SVB1RkM7TU9wRkEsWUFBVyxFQUNaO0lQbUZDO01PaEZBLFlBQVcsRUFDWjtFQWRIO0lBQ0UsV0FBdUI7SUFDdkIsWVZtRnVELEVVdEV4RDtJUDhFRztNT3hGQSxZQUFXLEVBQ1o7SVB1RkM7TU9wRkEsWUFBVyxFQUNaO0lBRUQ7TUFDRSxZQUFXLEVBQ1o7RUFkSDtJQUNFLGlCQUF1QjtJQUN2QixZVm1GdUQsRVV0RXhEO0lBWEM7TUFDRSxZQUFXLEVBQ1o7SVB1RkM7TU9wRkEsWUFBVyxFQUNaO0lBRUQ7TUFDRSxZQUFXLEVBQ1o7RVBxRkQ7SUd6R0YsZ0JBQWU7SUFDZixpQkFBZ0IsRUh5R2tDO0VBRGhEO0lBSUksZUFBYztJQUNkLGdCQUFlLEVBQ2hCO0VBR0g7SUd6R0Ysd0JBRDhCO0lBRTlCLHlCQUY4QixFSDZHK0I7RUFJM0Q7SU1oSEEsWUFBVztJQUNYLGtCQUFpQjtJQUNqQixtQkFBa0IsRU5nSGpCO0VBR0Q7OztJTTFHRixpQkFBZ0I7SUFDaEIsZUFBYztJQUNkLGdCQUFlO0lBQ2YsWUFBVyxFTjJHUixFQUFBOztBUU1EO0VSOURFO0lJdEVKLGdCQ2VxRCxFTHlEaEQ7RUFJQztJTTNFSixtQkFBa0I7SUFDbEIsZUFIbUQsRU4rRTlDO0VBRUQ7SU0vRUosbUJBQWtCO0lBQ2xCLGdCQUhtRCxFTm1GOUM7RUFNSDtJTS9ESixnQkRiZ0MsRUw4RTNCO0VBcEJEO0lJdEVKLGlCQ2VxRCxFTHlEaEQ7RUFJQztJTTNFSixtQkFBa0I7SUFDbEIsZ0JBSG1ELEVOK0U5QztFQUVEO0lNL0VKLG1CQUFrQjtJQUNsQixpQkFIbUQsRU5tRjlDO0VBTUg7SU0vREosc0JEVnFELEVMMkVoRDtFQXBCRDtJSXRFSixXQ2VxRCxFTHlEaEQ7RUFJQztJTTNFSixtQkFBa0I7SUFDbEIsVUFIbUQsRU4rRTlDO0VBRUQ7SU0vRUosbUJBQWtCO0lBQ2xCLFdBSG1ELEVObUY5QztFQU1IO0lNL0RKLHVCRFZxRCxFTDJFaEQ7RUFwQkQ7SUl0RUosaUJDZXFELEVMeURoRDtFQUlDO0lNM0VKLG1CQUFrQjtJQUNsQixnQkFIbUQsRU4rRTlDO0VBRUQ7SU0vRUosbUJBQWtCO0lBQ2xCLGlCQUhtRCxFTm1GOUM7RUFNSDtJTS9ESixpQkRWcUQsRUwyRWhEO0VBcEJEO0lJdEVKLGlCQ2VxRCxFTHlEaEQ7RUFJQztJTTNFSixtQkFBa0I7SUFDbEIsZ0JBSG1ELEVOK0U5QztFQUVEO0lNL0VKLG1CQUFrQjtJQUNsQixpQkFIbUQsRU5tRjlDO0VBTUg7SU0vREosdUJEVnFELEVMMkVoRDtFQXBCRDtJSXRFSixXQ2VxRCxFTHlEaEQ7RUFJQztJTTNFSixtQkFBa0I7SUFDbEIsVUFIbUQsRU4rRTlDO0VBRUQ7SU0vRUosbUJBQWtCO0lBQ2xCLFdBSG1ELEVObUY5QztFQU1IO0lNL0RKLHVCRFZxRCxFTDJFaEQ7RUFwQkQ7SUl0RUosaUJDZXFELEVMeURoRDtFQUlDO0lNM0VKLG1CQUFrQjtJQUNsQixnQkFIbUQsRU4rRTlDO0VBRUQ7SU0vRUosbUJBQWtCO0lBQ2xCLGlCQUhtRCxFTm1GOUM7RUFNSDtJTS9ESixpQkRWcUQsRUwyRWhEO0VBcEJEO0lJdEVKLGlCQ2VxRCxFTHlE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RU4rRTlDO0VBRUQ7SU0vRUosbUJBQWtCO0lBQ2xCLGlCQUhtRCxFTm1GOUM7RUFNSDtJTS9ESixpQkRWcUQsRUwyRWhEO0VBcEJEO0lJdEVKLGlCQ2VxRCxFTHlEaEQ7RUFJQztJTTNFSixtQkFBa0I7SUFDbEIsZ0JBSG1ELEVOK0U5QztFQUVEO0lNL0VKLG1CQUFrQjtJQUNsQixpQkFIbUQsRU5tRjlDO0VBTUg7SU0vREosdUJEVnFELEVMMkVoRDtFQXBCRDtJSXRFSixXQ2VxRCxFTHlEaEQ7RUFJQztJTTNFSixtQkFBa0I7SUFDbEIsVUFIbUQsRU4rRTlDO0VBRUQ7SU0vRUosbUJBQWtCO0lBQ2xCLFdBSG1ELEVObUY5QztFQU1IO0lNL0RKLHVCRFZxRCxFTDJFaEQ7RUFwQkQ7SUl0RUosaUJDZXFELEVMeURoRDtFQUlDO0lNM0VKLG1CQUFrQjtJQUNsQixnQkFIbUQsRU4rRTlDO0VBRUQ7SU0vRUosbUJBQWtCO0lBQ2xCLGlCQUhtRCxFTm1GOUM7RUFNSDtJTS9ESixpQkRWcUQsRUwyRWhEO0VBcEJEO0lJdEVKLGlCQ2VxRCxFTHlEaEQ7RUFJQztJTTNFSixtQkFBa0I7SUFDbEIsZ0JBSG1ELEVOK0U5QztFQUVEO0lNL0VKLG1CQUFrQjtJQUNsQixpQkFIbUQsRU5tRjlDO0VBTUg7SU0vREosdUJEVnFELEVMMkVoRDtFQXBCRDtJSXRFSixXQ2VxRCxFTHlEaEQ7RUFJQztJTTNFSixtQkFBa0I7SUFDbEIsVUFIbUQsRU4rRTlDO0VBRUQ7SU0vRUosbUJBQWtCO0lBQ2xCLFdBSG1ELEVObUY5QztFQU1IO0lNL0RKLHVCRFZxRCxFTDJFaEQ7RUFwQkQ7SUl0RUosaUJDZXFELEVMeURoRDtFQUlDO0lNM0VKLG1CQUFrQjtJQUNsQixnQkFIbUQsRU4rRTlDO0VBRUQ7SU0vRUosbUJBQWtCO0lBQ2xCLGlCQUhtRCxFTm1GOUM7RUFNSDtJTS9ESixpQkRWcUQsRUwyRWhEO0VBcEJEO0lJdEVKLGlCQ2VxRCxFTHlEaEQ7RUFJQztJTTNFSixtQkFBa0I7SUFDbEIsZ0JBSG1ELEVOK0U5QztFQUVEO0lNL0VK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eUI7RVdpS3pCLGlCWGxLbUIsRVd3S3BCO0VBbkJEOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7SUFnQkksWVhuUFk7SVdvUFosZUFBYyxFQUNmOztBWjhDSDtFWXRDUSxnQlByTytDLEVPc09oRDs7O0FBdkVQOzs7O0VBc0VRLG1CUHJPK0MsRU9zT2hEOzs7QUFGRDs7Ozs7OztFQUNFLHFCUHJPK0MsRU9zT2hEOzs7QUFyRVA7Ozs7Ozs7OztFQW9FUSxvQlByTytDLEVPc09oRDs7O0FBcEVQOzs7Ozs7Ozs7OztFQW1FUSxxQlByTytDLEVPc09oRDs7QUFGRDtFQUNFLGdCUHJPK0MsRU9zT2hEOztBRHBLTDtFWHlNRjtJWXRDUSxvQlByTytDLEVPc09oRDs7RUF2RVA7Ozs7SUFzRVEsbUJQck8rQyxFT3NPaEQ7O0VBdEVQOzs7Ozs7O0lBcUVRLG9CUHJPK0MsRU9zT2hEOztFQXJFUDs7Ozs7Ozs7O0lBb0VRLG1CUHJPK0MsRU9zT2hEOztFQUZEOzs7Ozs7Ozs7OztJQUNFLG9CUHJPK0MsRU9zT2hEO0VBRkQ7SUFDRSxnQlByTytDLEVPc09oRCxFQUFBOztBRHBLTDtFWHlNRjtJWXRDUSxnQlByTytDLEVPc09oRCxFQUFBOztBWlZQO0VZaUJFLGVYN1FtQjtFVzhRbkIsc0JYeEt5QjtFV3lLekIscUJBQW9CO0VBQ3BCLGdCQUFlLEVBYWhCO0VBakJEO0lBUUksZVgvSzJELEVXbUw1RDtFQVpIO0lBZUksVUFBUyxFQUNWOztBWjJGSDtFWXRGRSxpQlBqUXFEO0VPa1FyRCxVQUFTO0VBQ1QsZ0JBQWU7RUFDZixjQUFhO0VBQ2IsOEJYN1JjO0VXOFJkLGVBQWM7RUFDZCxxQlg3THlCO0VXOEx6QixZQUFXLEVBQ1o7O0FBR0Q7OztFQUdFLGlCWHBOc0I7RVdxTnRCLG9CWHBOMEI7RVdxTjFCLDZCWG5NeUIsRVdvTTFCOztBQUdEO0VBQ0UsbUJBQWtCLEVBQ25COztBQUdEO0VBQ0Usc0JYOU1rQjtFVytNbEIscUJYN01zQixFVzhNdkI7O0FBR0Q7RUFDRSxxQlhsTnNCLEVXbU52Qjs7QUFHRDtF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OztBMURiSDtFMkQrQkUsVzNEL0JrQztFNkREbEMsNkJBQTRCLEVIRTNCOztBQVVEO0VDb0JBLFczRC9CcUMsRTBEYXBDOztBQWREO0VDZ0NBLCtDR3JDbUM7RUhxQ25DLDBCM0Q1Qm1EO00yRDRCbkQsc0IzRDVCbUQ7RStER2pELHdDQUF1QztFQUN2QyxXQUEyQixFTE41Qjs7QTFERUg7RTJENEJFLDRDR1Y0QztFQ0oxQyxXQUEyQixFTEo1Qjs7QTFEVEg7RTJEMkJFLCtDR3BDcUM7RUhvQ3JDLDRCM0QzQnFEO00yRDJCckQsd0IzRDNCcUQ7RStERW5ELHdDQUF1QztFQUN2QyxXQUEyQixFTE41Qjs7QTFER0g7RTJEMkJFLDRDR1Y0QztFQ0oxQyxXQUEyQixFTEo1Qjs7QUFkRDtFQ2dDQSw4Q0duQ2lDO0VIbUNqQyw2QjNEMUJzRDtNMkQwQnRELHlCM0QxQnNEO0UrRENwRCx3Q0FBdUM7RUFDdkMsV0FBMkIsRUxONUI7O0FBVUQ7RUNvQkEsNENHVjRDO0VDSjFDLFdBQTJCLEVMSjVCOztBMURQSDtFMkR5QkUsOENHbEMrQjtFSGtDL0IsMkIzRHpCb0Q7TTJEeUJwRCx1QjNEekJvRDtFK0RBbEQsd0NBQXVDO0VBQ3ZDLFdBQTJCLEVMTjVCOztBMURLSDtFMkR5QkUsNENHVjRDO0VDSjFDLFdBQTJCLEVMSjVCOztBMUROSDtFMkR3QkUsK0NHckNtQztFSHFDbkMsNkJHQ2U7TUhEZix5QkdDZTtFQzFCYix3Q0FBdUM7RUFDdkMsV0FBMkIsRUxONUI7O0ExRE1IO0UyRHdCRSw0Q0dWNEM7RUNKMUMsV0FBMkIsRUxKNUI7O0FBZEQ7RUNnQ0EsK0NHcENxQztFSG9DckMsNkJHQ2U7TUhEZix5QkdDZTtFQzFCYix3Q0FBdUM7RUFDdkMsV0FBMkIsRUxONUI7O0FBVUQ7RUNvQkEsNENHVjRDO0VDSjFDLFdBQTJCLEVMSjVCOztBMURKSDtFMkRzQkUsNENHUjhDO0VIUTlDLDBCM0R0Qm1EO00yRHNCbkQsc0IzRHRCbUQ7RStESGpELHdDQUF1QztFQUN2QyxXQUE4QixFTE4vQjs7QTFEUUg7RTJEc0JFLCtDR3JDbUM7RUN1QmpDLFdBQThCLEVMSi9COztBMURISDtFMkRxQkUsNENHUjhDO0VIUTlDLDRCM0RyQnFEO00yRHFCckQsd0IzRHJCcUQ7RStESm5ELHdDQUF1QztFQUN2QyxXQUE4QixFTE4vQjs7QTFEU0g7RTJEcUJFLCtDR3BDcUM7RUNzQm5DLFdBQThCLEVMSi9COztBQWREO0VDZ0NBLDRDR1I4QztFSFE5Qyw2QjNEcEJzRDtNMkRvQnRELHlCM0RwQnNEO0UrRExwRCx3Q0FBdUM7RUFDdkMsV0FBOEIsRUxOL0I7O0FBVUQ7RUNvQkEsOENHbkNpQztFQ3FCL0IsV0FBOEIsRUxKL0I7O0ExRERIO0UyRG1CRSw0Q0dSOEM7RUhROUMsMkIzRG5Cb0Q7TTJEbUJwRCx1QjNEbkJvRDtFK0RObEQsd0NBQXVDO0VBQ3ZDLFdBQThCLEVMTi9COztBMURXSDtFMkRtQkUsOENHbEMrQjtFQ29CN0IsV0FBOEIsRUxKL0I7O0ExREFIO0UyRGtCRSw0Q0dSOEM7RUhROUMsNkJHQ2U7TUhEZix5QkdDZTtFQzFCYix3Q0FBdUM7RUFDdkMsV0FBOEIsRUxOL0I7O0FBVUQ7RUNvQkEsK0NHckNtQztFQ3VCakMsV0FBOEIsRUxKL0I7O0FBZEQ7RUNnQ0EsNENHUjhDO0VIUTlDLDZCR0NlO01IRGYseUJHQ2U7RUMxQmIsd0NBQXVDO0VBQ3ZDLFdBQThCLEVMTi9COztBMURhSDtFMkRpQkUsK0NHcENxQztFQ3NCbkMsV0FBOEIsRUxKL0I7O0ExRElIO0UyRGNFLDBCQUZ5QjtNQUV6QixzQkFGeUI7RUszQnZCLHdDQUF1QztFQUN2QyxXQUEyQixFTkY1Qjs7QTFEZ0JIO0UyRGNFLHdCQUZ5QjtNQUV6QixvQkFGeUI7RUtoQnZCLFdBQTJCLEVOQTVCOztBMURLSDtFMkRhRSwwQkFGeUI7TUFFekIsc0JBRnlCO0VLM0J2Qix3Q0FBdUM7RUFDdkMsV0FBMkIsRU5GNUI7O0ExRGlCSDtFMkRhRSx3QkFGeUI7TUFFekIsb0JBRnlCO0VLaEJ2QixXQUEyQixFTkE1Qjs7QUFkRDtFQ2dDQSx3QkFGeUI7TUFFekIsb0JBRnlCO0VLM0J2Qix3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Q2pCOztBQUtiOztHQUVHO0FwRytyV0g7RW9HM3JXUSxnQkFBZTtFQUNmLGU5RmhQSyxFOEZpUFI7O0FBR0w7RUFDSSxZQUFXLEVBQ2Q7O0FBR0Q7RUFDSSxhQUFXLEVBQ2Q7O0FBQ0Q7RTlCbkxJLHlCQUFrQyxFOEJxTHJDOztBQ2hVRDtFQUNFOzs7O0lBSUUsY0FBYTtJQUNiLG1CQUFrQixFQUNuQixFQUFBIiwiZmlsZSI6ImFwcC5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyJAY2hhcnNldCBcIlVURi04XCI7XG4vKipcbiAqIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbiAqIFZlcnNpb24gNi4yLjFcbiAqIGZvdW5kYXRpb24uenVyYi5jb21cbiAqIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuICovXG5AaW1wb3J0IHVybChodHRwOi8vd2Vsb3ZlaWNvbmZvbnRzLmNvbS9hcGkvP2ZhbWlseT1lbnR5cG8pO1xuLnNsaWRlLWluLWRvd24ubXVpLWVudGVyLCAuc2xpZGUtaW4tbGVmdC5tdWktZW50ZXIsIC5zbGlkZS1pbi11cC5tdWktZW50ZXIsIC5zbGlkZS1pbi1yaWdodC5tdWktZW50ZXIsIC5zbGlkZS1vdXQtZG93bi5tdWktbGVhdmUsIC5zbGlkZS1vdXQtcmlnaHQubXVpLWxlYXZlLCAuc2xpZGUtb3V0LXVwLm11aS1sZWF2ZSwgLnNsaWRlLW91dC1sZWZ0Lm11aS1sZWF2ZSwgLmZhZGUtaW4ubXVpLWVudGVyLCAuZmFkZS1vdXQubXVpLWxlYXZlLCAuaGluZ2UtaW4tZnJvbS10b3AubXVpLWVudGVyLCAuaGluZ2UtaW4tZnJvbS1yaWdodC5tdWktZW50ZXIsIC5oaW5nZS1pbi1mcm9tLWJvdHRvbS5tdWktZW50ZXIsIC5oaW5nZS1pbi1mcm9tLWxlZnQubXVpLWVudGVyLCAuaGluZ2UtaW4tZnJvbS1taWRkbGUteC5tdWktZW50ZXIsIC5oaW5nZS1pbi1mcm9tLW1pZGRsZS15Lm11aS1lbnRlciwgLmhpbmdlLW91dC1mcm9tLXRvcC5tdWktbGVhdmUsIC5oaW5nZS1vdXQtZnJvbS1yaWdodC5tdWktbGVhdmUsIC5oaW5nZS1vdXQtZnJvbS1ib3R0b20ubXVpLWxlYXZlLCAuaGluZ2Utb3V0LWZyb20tbGVmdC5tdWktbGVhdmUsIC5oaW5nZS1vdXQtZnJvbS1taWRkbGUteC5tdWktbGVhdmUsIC5oaW5nZS1vdXQtZnJvbS1taWRkbGUteS5tdWktbGVhdmUsIC5zY2FsZS1pbi11cC5tdWktZW50ZXIsIC5zY2FsZS1pbi1kb3duLm11aS1lbnRlciwgLnNjYWxlLW91dC11cC5tdWktbGVhdmUsIC5zY2FsZS1vdXQtZG93bi5tdWktbGVhdmUsIC5zcGluLWluLm11aS1lbnRlciwgLnNwaW4tb3V0Lm11aS1sZWF2ZSwgLnNwaW4taW4tY2N3Lm11aS1lbnRlciwgLnNwaW4tb3V0LWNjdy5tdWktbGVhdmUge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjsgfVxuXG4vKiEgbm9ybWFsaXplLmNzcyB2My4wLjMgfCBNSVQgTGljZW5zZSB8IGdpdGh1Yi5jb20vbmVjb2xhcy9ub3JtYWxpemUuY3NzICovXG4vKipcbiAgICogMS4gU2V0IGRlZmF1bHQgZm9udCBmYW1pbHkgdG8gc2Fucy1zZXJpZi5cbiAgICogMi4gUHJldmVudCBpT1MgYW5kIElFIHRleHQgc2l6ZSBhZGp1c3QgYWZ0ZXIgZGV2aWNlIG9yaWVudGF0aW9uIGNoYW5nZSxcbiAgICogICAgd2l0aG91dCBkaXNhYmxpbmcgdXNlciB6b29tLlxuICAgKi9cbmh0bWwge1xuICBmb250LWZhbWlseTogc2Fucy1zZXJpZjtcbiAgLyogMSAqL1xuICAtbXMtdGV4dC1zaXplLWFkanVzdDogMTAwJTtcbiAgLyogMiAqL1xuICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7XG4gIC8qIDIgKi8gfVxuXG4vKipcbiAgICogUmVtb3ZlIGRlZmF1bHQgbWFyZ2luLlxuICAgKi9cbmJvZHkge1xuICBtYXJnaW46IDA7IH1cblxuLyogSFRNTDUgZGlzcGxheSBkZWZpbml0aW9uc1xuICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gICAqIENvcnJlY3QgYGJsb2NrYCBkaXNwbGF5IG5vdCBkZWZpbmVkIGZvciBhbnkgSFRNTDUgZWxlbWVudCBpbiBJRSA4LzkuXG4gICAqIENvcnJlY3QgYGJsb2NrYCBkaXNwbGF5IG5vdCBkZWZpbmVkIGZvciBgZGV0YWlsc2Agb3IgYHN1bW1hcnlgIGluIElFIDEwLzExXG4gICAqIGFuZCBGaXJlZm94LlxuICAgKiBDb3JyZWN0IGBibG9ja2AgZGlzcGxheSBub3QgZGVmaW5lZCBmb3IgYG1haW5gIGluIElFIDExLlxuICAgKi9cbmFydGljbGUsXG5hc2lkZSxcbmRldGFpbHMsXG5maWdjYXB0aW9uLFxuZmlndXJlLFxuZm9vdGVyLFxuaGVhZGVyLFxuaGdyb3VwLFxubWFpbixcbm1lbnUsXG5uYXYsXG5zZWN0aW9uLFxuc3VtbWFyeSB7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi8qKlxuICAgKiAxLiBDb3JyZWN0IGBpbmxpbmUtYmxvY2tgIGRpc3BsYXkgbm90IGRlZmluZWQgaW4gSUUgOC85LlxuICAgKiAyLiBOb3JtYWxpemUgdmVydGljYWwgYWxpZ25tZW50IG9mIGBwcm9ncmVzc2AgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgT3BlcmEuXG4gICAqL1xuYXVkaW8sXG5jYW52YXMsXG5wcm9ncmVzcyxcbnZpZGVvIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAvKiAxICovXG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgLyogMiAqLyB9XG5cbi8qKlxuICAgKiBQcmV2ZW50IG1vZGVybiBicm93c2VycyBmcm9tIGRpc3BsYXlpbmcgYGF1ZGlvYCB3aXRob3V0IGNvbnRyb2xzLlxuICAgKiBSZW1vdmUgZXhjZXNzIGhlaWdodCBpbiBpT1MgNSBkZXZpY2VzLlxuICAgKi9cbmF1ZGlvOm5vdChbY29udHJvbHNdKSB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGhlaWdodDogMDsgfVxuXG4vKipcbiAgICogQWRkcmVzcyBgW2hpZGRlbl1gIHN0eWxpbmcgbm90IHByZXNlbnQgaW4gSUUgOC85LzEwLlxuICAgKiBIaWRlIHRoZSBgdGVtcGxhdGVgIGVsZW1lbnQgaW4gSUUgOC85LzEwLzExLCBTYWZhcmksIGFuZCBGaXJlZm94IDwgMjIuXG4gICAqL1xuW2hpZGRlbl0sXG50ZW1wbGF0ZSB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLyogTGlua3NcbiAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICAgKiBSZW1vdmUgdGhlIGdyYXkgYmFja2dyb3VuZCBjb2xvciBmcm9tIGFjdGl2ZSBsaW5rcyBpbiBJRSAxMC5cbiAgICovXG5hIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cblxuLyoqXG4gICAqIEltcHJvdmUgcmVhZGFiaWxpdHkgb2YgZm9jdXNlZCBlbGVtZW50cyB3aGVuIHRoZXkgYXJlIGFsc28gaW4gYW5cbiAgICogYWN0aXZlL2hvdmVyIHN0YXRlLlxuICAgKi9cbmE6YWN0aXZlLFxuYTpob3ZlciB7XG4gIG91dGxpbmU6IDA7IH1cblxuLyogVGV4dC1sZXZlbCBzZW1hbnRpY3NcbiAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICAgKiBBZGRyZXNzIHN0eWxpbmcgbm90IHByZXNlbnQgaW4gSUUgOC85LzEwLzExLCBTYWZhcmksIGFuZCBDaHJvbWUuXG4gICAqL1xuYWJiclt0aXRsZV0ge1xuICBib3JkZXItYm90dG9tOiAxcHggZG90dGVkOyB9XG5cbi8qKlxuICAgKiBBZGRyZXNzIHN0eWxlIHNldCB0byBgYm9sZGVyYCBpbiBGaXJlZm94IDQrLCBTYWZhcmksIGFuZCBDaHJvbWUuXG4gICAqL1xuYixcbnN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkOyB9XG5cbi8qKlxuICAgKiBBZGRyZXNzIHN0eWxpbmcgbm90IHByZXNlbnQgaW4gU2FmYXJpIGFuZCBDaHJvbWUuXG4gICAqL1xuZGZuIHtcbiAgZm9udC1zdHlsZTogaXRhbGljOyB9XG5cbi8qKlxuICAgKiBBZGRyZXNzIHZhcmlhYmxlIGBoMWAgZm9udC1zaXplIGFuZCBtYXJnaW4gd2l0aGluIGBzZWN0aW9uYCBhbmQgYGFydGljbGVgXG4gICAqIGNvbnRleHRzIGluIEZpcmVmb3ggNCssIFNhZmFyaSwgYW5kIENocm9tZS5cbiAgICovXG5oMSwgLnRpdGxlLTEge1xuICBmb250LXNpemU6IDJlbTtcbiAgbWFyZ2luOiAwLjY3ZW0gMDsgfVxuXG4vKipcbiAgICogQWRkcmVzcyBzdHlsaW5nIG5vdCBwcmVzZW50IGluIElFIDgvOS5cbiAgICovXG5tYXJrIHtcbiAgYmFja2dyb3VuZDogI2ZmMDtcbiAgY29sb3I6ICMwMDA7IH1cblxuLyoqXG4gICAqIEFkZHJlc3MgaW5jb25zaXN0ZW50IGFuZCB2YXJpYWJsZSBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICAgKi9cbnNtYWxsIHtcbiAgZm9udC1zaXplOiA4MCU7IH1cblxuLyoqXG4gICAqIFByZXZlbnQgYHN1YmAgYW5kIGBzdXBgIGFmZmVjdGluZyBgbGluZS1oZWlnaHRgIGluIGFsbCBicm93c2Vycy5cbiAgICovXG5zdWIsXG5zdXAge1xuICBmb250LXNpemU6IDc1JTtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lOyB9XG5cbnN1cCB7XG4gIHRvcDogLTAuNWVtOyB9XG5cbnN1YiB7XG4gIGJvdHRvbTogLTAuMjVlbTsgfVxuXG4vKiBFbWJlZGRlZCBjb250ZW50XG4gICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAgICogUmVtb3ZlIGJvcmRlciB3aGVuIGluc2lkZSBgYWAgZWxlbWVudCBpbiBJRSA4LzkvMTAuXG4gICAqL1xuaW1nIHtcbiAgYm9yZGVyOiAwOyB9XG5cbi8qKlxuICAgKiBDb3JyZWN0IG92ZXJmbG93IG5vdCBoaWRkZW4gaW4gSUUgOS8xMC8xMS5cbiAgICovXG5zdmc6bm90KDpyb290KSB7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cblxuLyogR3JvdXBpbmcgY29udGVudFxuICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gICAqIEFkZHJlc3MgbWFyZ2luIG5vdCBwcmVzZW50IGluIElFIDgvOSBhbmQgU2FmYXJpLlxuICAgKi9cbmZpZ3VyZSB7XG4gIG1hcmdpbjogMWVtIDQwcHg7IH1cblxuLyoqXG4gICAqIEFkZHJlc3MgZGlmZmVyZW5jZXMgYmV0d2VlbiBGaXJlZm94IGFuZCBvdGhlciBicm93c2Vycy5cbiAgICovXG5ociB7XG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICBoZWlnaHQ6IDA7IH1cblxuLyoqXG4gICAqIENvbnRhaW4gb3ZlcmZsb3cgaW4gYWxsIGJyb3dzZXJzLlxuICAgKi9cbnByZSB7XG4gIG92ZXJmbG93OiBhdXRvOyB9XG5cbi8qKlxuICAgKiBBZGRyZXNzIG9kZCBgZW1gLXVuaXQgZm9udCBzaXplIHJlbmRlcmluZyBpbiBhbGwgYnJvd3NlcnMuXG4gICAqL1xuY29kZSxcbmtiZCxcbnByZSxcbnNhbXAge1xuICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7XG4gIGZvbnQtc2l6ZTogMWVtOyB9XG5cbi8qIEZvcm1zXG4gICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAgICogS25vd24gbGltaXRhdGlvbjogYnkgZGVmYXVsdCwgQ2hyb21lIGFuZCBTYWZhcmkgb24gT1MgWCBhbGxvdyB2ZXJ5IGxpbWl0ZWRcbiAgICogc3R5bGluZyBvZiBgc2VsZWN0YCwgdW5sZXNzIGEgYGJvcmRlcmAgcHJvcGVydHkgaXMgc2V0LlxuICAgKi9cbi8qKlxuICAgKiAxLiBDb3JyZWN0IGNvbG9yIG5vdCBiZWluZyBpbmhlcml0ZWQuXG4gICAqICAgIEtub3duIGlzc3VlOiBhZmZlY3RzIGNvbG9yIG9mIGRpc2FibGVkIGVsZW1lbnRzLlxuICAgKiAyLiBDb3JyZWN0IGZvbnQgcHJvcGVydGllcyBub3QgYmVpbmcgaW5oZXJpdGVkLlxuICAgKiAzLiBBZGRyZXNzIG1hcmdpbnMgc2V0IGRpZmZlcmVudGx5IGluIEZpcmVmb3ggNCssIFNhZmFyaSwgYW5kIENocm9tZS5cbiAgICovXG5idXR0b24sXG5pbnB1dCxcbm9wdGdyb3VwLFxuc2VsZWN0LFxudGV4dGFyZWEge1xuICBjb2xvcjogaW5oZXJpdDtcbiAgLyogMSAqL1xuICBmb250OiBpbmhlcml0O1xuICAvKiAyICovXG4gIG1hcmdpbjogMDtcbiAgLyogMyAqLyB9XG5cbi8qKlxuICAgKiBBZGRyZXNzIGBvdmVyZmxvd2Agc2V0IHRvIGBoaWRkZW5gIGluIElFIDgvOS8xMC8xMS5cbiAgICovXG5idXR0b24ge1xuICBvdmVyZmxvdzogdmlzaWJsZTsgfVxuXG4vKipcbiAgICogQWRkcmVzcyBpbmNvbnNpc3RlbnQgYHRleHQtdHJhbnNmb3JtYCBpbmhlcml0YW5jZSBmb3IgYGJ1dHRvbmAgYW5kIGBzZWxlY3RgLlxuICAgKiBBbGwgb3RoZXIgZm9ybSBjb250cm9sIGVsZW1lbnRzIGRvIG5vdCBpbmhlcml0IGB0ZXh0LXRyYW5zZm9ybWAgdmFsdWVzLlxuICAgKiBDb3JyZWN0IGBidXR0b25gIHN0eWxlIGluaGVyaXRhbmNlIGluIEZpcmVmb3gsIElFIDgvOS8xMC8xMSwgYW5kIE9wZXJhLlxuICAgKiBDb3JyZWN0IGBzZWxlY3RgIHN0eWxlIGluaGVyaXRhbmNlIGluIEZpcmVmb3guXG4gICAqL1xuYnV0dG9uLFxuc2VsZWN0IHtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7IH1cblxuLyoqXG4gICAqIDEuIEF2b2lkIHRoZSBXZWJLaXQgYnVnIGluIEFuZHJvaWQgNC4wLiogd2hlcmUgKDIpIGRlc3Ryb3lzIG5hdGl2ZSBgYXVkaW9gXG4gICAqICAgIGFuZCBgdmlkZW9gIGNvbnRyb2xzLlxuICAgKiAyLiBDb3JyZWN0IGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgYGlucHV0YCB0eXBlcyBpbiBpT1MuXG4gICAqIDMuIEltcHJvdmUgdXNhYmlsaXR5IGFuZCBjb25zaXN0ZW5jeSBvZiBjdXJzb3Igc3R5bGUgYmV0d2VlbiBpbWFnZS10eXBlXG4gICAqICAgIGBpbnB1dGAgYW5kIG90aGVycy5cbiAgICovXG5idXR0b24sXG5odG1sIGlucHV0W3R5cGU9XCJidXR0b25cIl0sXG5pbnB1dFt0eXBlPVwicmVzZXRcIl0sXG5pbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247XG4gIC8qIDIgKi9cbiAgY3Vyc29yOiBwb2ludGVyO1xuICAvKiAzICovIH1cblxuLyoqXG4gICAqIFJlLXNldCBkZWZhdWx0IGN1cnNvciBmb3IgZGlzYWJsZWQgZWxlbWVudHMuXG4gICAqL1xuYnV0dG9uW2Rpc2FibGVkXSxcbmh0bWwgaW5wdXRbZGlzYWJsZWRdIHtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDsgfVxuXG4vKipcbiAgICogUmVtb3ZlIGlubmVyIHBhZGRpbmcgYW5kIGJvcmRlciBpbiBGaXJlZm94IDQrLlxuICAgKi9cbmJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lcixcbmlucHV0OjotbW96LWZvY3VzLWlubmVyIHtcbiAgYm9yZGVyOiAwO1xuICBwYWRkaW5nOiAwOyB9XG5cbi8qKlxuICAgKiBBZGRyZXNzIEZpcmVmb3ggNCsgc2V0dGluZyBgbGluZS1oZWlnaHRgIG9uIGBpbnB1dGAgdXNpbmcgYCFpbXBvcnRhbnRgIGluXG4gICAqIHRoZSBVQSBzdHlsZXNoZWV0LlxuICAgKi9cbmlucHV0IHtcbiAgbGluZS1oZWlnaHQ6IG5vcm1hbDsgfVxuXG4vKipcbiAgICogSXQncyByZWNvbW1lbmRlZCB0aGF0IHlvdSBkb24ndCBhdHRlbXB0IHRvIHN0eWxlIHRoZXNlIGVsZW1lbnRzLlxuICAgKiBGaXJlZm94J3MgaW1wbGVtZW50YXRpb24gZG9lc24ndCByZXNwZWN0IGJveC1zaXppbmcsIHBhZGRpbmcsIG9yIHdpZHRoLlxuICAgKlxuICAgKiAxLiBBZGRyZXNzIGJveCBzaXppbmcgc2V0IHRvIGBjb250ZW50LWJveGAgaW4gSUUgOC85LzEwLlxuICAgKiAyLiBSZW1vdmUgZXhjZXNzIHBhZGRpbmcgaW4gSUUgOC85LzEwLlxuICAgKi9cbmlucHV0W3R5cGU9XCJjaGVja2JveFwiXSxcbmlucHV0W3R5cGU9XCJyYWRpb1wiXSB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIC8qIDEgKi9cbiAgcGFkZGluZzogMDtcbiAgLyogMiAqLyB9XG5cbi8qKlxuICAgKiBGaXggdGhlIGN1cnNvciBzdHlsZSBmb3IgQ2hyb21lJ3MgaW5jcmVtZW50L2RlY3JlbWVudCBidXR0b25zLiBGb3IgY2VydGFpblxuICAgKiBgZm9udC1zaXplYCB2YWx1ZXMgb2YgdGhlIGBpbnB1dGAsIGl0IGNhdXNlcyB0aGUgY3Vyc29yIHN0eWxlIG9mIHRoZVxuICAgKiBkZWNyZW1lbnQgYnV0dG9uIHRvIGNoYW5nZSBmcm9tIGBkZWZhdWx0YCB0byBgdGV4dGAuXG4gICAqL1xuaW5wdXRbdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcbmlucHV0W3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24ge1xuICBoZWlnaHQ6IGF1dG87IH1cblxuLyoqXG4gICAqIDEuIEFkZHJlc3MgYGFwcGVhcmFuY2VgIHNldCB0byBgc2VhcmNoZmllbGRgIGluIFNhZmFyaSBhbmQgQ2hyb21lLlxuICAgKiAyLiBBZGRyZXNzIGBib3gtc2l6aW5nYCBzZXQgdG8gYGJvcmRlci1ib3hgIGluIFNhZmFyaSBhbmQgQ2hyb21lLlxuICAgKi9cbmlucHV0W3R5cGU9XCJzZWFyY2hcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDtcbiAgLyogMSAqL1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgLyogMiAqLyB9XG5cbi8qKlxuICAgKiBSZW1vdmUgaW5uZXIgcGFkZGluZyBhbmQgc2VhcmNoIGNhbmNlbCBidXR0b24gaW4gU2FmYXJpIGFuZCBDaHJvbWUgb24gT1MgWC5cbiAgICogU2FmYXJpIChidXQgbm90IENocm9tZSkgY2xpcHMgdGhlIGNhbmNlbCBidXR0b24gd2hlbiB0aGUgc2VhcmNoIGlucHV0IGhhc1xuICAgKiBwYWRkaW5nIChhbmQgYHRleHRmaWVsZGAgYXBwZWFyYW5jZSkuXG4gICAqL1xuaW5wdXRbdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtY2FuY2VsLWJ1dHRvbixcbmlucHV0W3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7IH1cblxuLyoqXG4gICAqIERlZmluZSBjb25zaXN0ZW50IGJvcmRlciwgbWFyZ2luLCBhbmQgcGFkZGluZy5cbiAgICogW05PVEVdIFdlIGRvbid0IGVuYWJsZSB0aGlzIHJ1bGVzZXQgaW4gRm91bmRhdGlvbiwgYmVjYXVzZSB3ZSB3YW50IHRoZSA8ZmllbGRzZXQ+IGVsZW1lbnQgdG8gaGF2ZSBwbGFpbiBzdHlsaW5nLlxuICAgKi9cbi8qIGZpZWxkc2V0IHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjYzBjMGMwO1xuICAgIG1hcmdpbjogMCAycHg7XG4gICAgcGFkZGluZzogMC4zNWVtIDAuNjI1ZW0gMC43NWVtO1xuICB9ICovXG4vKipcbiAgICogMS4gQ29ycmVjdCBgY29sb3JgIG5vdCBiZWluZyBpbmhlcml0ZWQgaW4gSUUgOC85LzEwLzExLlxuICAgKiAyLiBSZW1vdmUgcGFkZGluZyBzbyBwZW9wbGUgYXJlbid0IGNhdWdodCBvdXQgaWYgdGhleSB6ZXJvIG91dCBmaWVsZHNldHMuXG4gICAqL1xubGVnZW5kIHtcbiAgYm9yZGVyOiAwO1xuICAvKiAxICovXG4gIHBhZGRpbmc6IDA7XG4gIC8qIDIgKi8gfVxuXG4vKipcbiAgICogUmVtb3ZlIGRlZmF1bHQgdmVydGljYWwgc2Nyb2xsYmFyIGluIElFIDgvOS8xMC8xMS5cbiAgICovXG50ZXh0YXJlYSB7XG4gIG92ZXJmbG93OiBhdXRvOyB9XG5cbi8qKlxuICAgKiBEb24ndCBpbmhlcml0IHRoZSBgZm9udC13ZWlnaHRgIChhcHBsaWVkIGJ5IGEgcnVsZSBhYm92ZSkuXG4gICAqIE5PVEU6IHRoZSBkZWZhdWx0IGNhbm5vdCBzYWZlbHkgYmUgY2hhbmdlZCBpbiBDaHJvbWUgYW5kIFNhZmFyaSBvbiBPUyBYLlxuICAgKi9cbm9wdGdyb3VwIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7IH1cblxuLyogVGFibGVzXG4gICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAgICogUmVtb3ZlIG1vc3Qgc3BhY2luZyBiZXR3ZWVuIHRhYmxlIGNlbGxzLlxuICAgKi9cbnRhYmxlIHtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgYm9yZGVyLXNwYWNpbmc6IDA7IH1cblxudGQsXG50aCB7XG4gIHBhZGRpbmc6IDA7IH1cblxuLmZvdW5kYXRpb24tbXEge1xuICBmb250LWZhbWlseTogXCJzbWFsbD0wZW0mbWVkaXVtPTQwZW0mbGFyZ2U9NjRlbSZ4bGFyZ2U9NzVlbSZ4eGxhcmdlPTkwZW1cIjsgfVxuXG5odG1sIHtcbiAgZm9udC1zaXplOiAxMDAlO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94OyB9XG5cbiosXG4qOjpiZWZvcmUsXG4qOjphZnRlciB7XG4gIGJveC1zaXppbmc6IGluaGVyaXQ7IH1cblxuYm9keSB7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbiAgZm9udC1mYW1pbHk6IFwiSW50ZXJcIiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIEFyaWFsLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBsaW5lLWhlaWdodDogMS41O1xuICBjb2xvcjogIzFkMmEyOTtcbiAgYmFja2dyb3VuZDogI2Y3ZjdmNztcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7IH1cblxuaW1nIHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGF1dG87XG4gIC1tcy1pbnRlcnBvbGF0aW9uLW1vZGU6IGJpY3ViaWM7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgfVxuXG50ZXh0YXJlYSB7XG4gIGhlaWdodDogYXV0bztcbiAgbWluLWhlaWdodDogNTBweDtcbiAgYm9yZGVyLXJhZGl1czogMDsgfVxuXG5zZWxlY3Qge1xuICB3aWR0aDogMTAwJTtcbiAgYm9yZGVyLXJhZGl1czogMDsgfVxuXG4jbWFwX2NhbnZhcyBpbWcsXG4jbWFwX2NhbnZhcyBlbWJlZCxcbiNtYXBfY2FudmFzIG9iamVjdCxcbi5tYXBfY2FudmFzIGltZyxcbi5tYXBfY2FudmFzIGVtYmVkLFxuLm1hcF9jYW52YXMgb2JqZWN0LFxuLm1xYS1kaXNwbGF5IGltZyxcbi5tcWEtZGlzcGxheSBlbWJlZCxcbi5tcWEtZGlzcGxheSBvYmplY3Qge1xuICBtYXgtd2lkdGg6IG5vbmUgIWltcG9ydGFudDsgfVxuXG5idXR0b24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIC1tb3otYXBwZWFyYW5jZTogbm9uZTtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgbGluZS1oZWlnaHQ6IDE7IH1cbiAgW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddIGJ1dHRvbiB7XG4gICAgb3V0bGluZTogMDsgfVxuXG4uaXMtdmlzaWJsZSB7XG4gIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH1cblxuLmlzLWhpZGRlbiB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuXG4ucm93IHtcbiAgbWF4LXdpZHRoOiA3NXJlbTtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bzsgfVxuICAucm93OjpiZWZvcmUsIC5yb3c6OmFmdGVyIHtcbiAgICBjb250ZW50OiAnICc7XG4gICAgZGlzcGxheTogdGFibGU7IH1cbiAgLnJvdzo6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIC5yb3cuY29sbGFwc2UgPiAuY29sdW1uLCAucm93LmNvbGxhcHNlID4gLmNvbHVtbnMge1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwOyB9XG4gIC5yb3cgLnJvdyB7XG4gICAgbWF4LXdpZHRoOiBub25lO1xuICAgIG1hcmdpbi1sZWZ0OiAtMC45Mzc1cmVtO1xuICAgIG1hcmdpbi1yaWdodDogLTAuOTM3NXJlbTsgfVxuICAgIC5yb3cgLnJvdy5jb2xsYXBzZSB7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgIG1hcmdpbi1yaWdodDogMDsgfVxuICAucm93LmV4cGFuZGVkIHtcbiAgICBtYXgtd2lkdGg6IG5vbmU7IH1cbiAgICAucm93LmV4cGFuZGVkIC5yb3cge1xuICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87IH1cblxuLmNvbHVtbiwgLmNvbHVtbnMge1xuICB3aWR0aDogMTAwJTtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtO1xuICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07IH1cbiAgLmNvbHVtbjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpLCAuY29sdW1uczpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICBmbG9hdDogcmlnaHQ7IH1cbiAgLmNvbHVtbi5lbmQ6bGFzdC1jaGlsZDpsYXN0LWNoaWxkLCAuZW5kLmNvbHVtbnM6bGFzdC1jaGlsZDpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogbGVmdDsgfVxuXG4uY29sdW1uLnJvdy5yb3csIC5yb3cucm93LmNvbHVtbnMge1xuICBmbG9hdDogbm9uZTsgfVxuICAucm93IC5jb2x1bW4ucm93LnJvdywgLnJvdyAucm93LnJvdy5jb2x1bW5zIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7IH1cblxuLnNtYWxsLTEge1xuICB3aWR0aDogOC4zMzMzMyU7IH1cblxuLnNtYWxsLXB1c2gtMSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogOC4zMzMzMyU7IH1cblxuLnNtYWxsLXB1bGwtMSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogLTguMzMzMzMlOyB9XG5cbi5zbWFsbC1vZmZzZXQtMCB7XG4gIG1hcmdpbi1sZWZ0OiAwJTsgfVxuXG4uc21hbGwtMiB7XG4gIHdpZHRoOiAxNi42NjY2NyU7IH1cblxuLnNtYWxsLXB1c2gtMiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogMTYuNjY2NjclOyB9XG5cbi5zbWFsbC1wdWxsLTIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IC0xNi42NjY2NyU7IH1cblxuLnNtYWxsLW9mZnNldC0xIHtcbiAgbWFyZ2luLWxlZnQ6IDguMzMzMzMlOyB9XG5cbi5zbWFsbC0zIHtcbiAgd2lkdGg6IDI1JTsgfVxuXG4uc21hbGwtcHVzaC0zIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiAyNSU7IH1cblxuLnNtYWxsLXB1bGwtMyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogLTI1JTsgfVxuXG4uc21hbGwtb2Zmc2V0LTIge1xuICBtYXJnaW4tbGVmdDogMTYuNjY2NjclOyB9XG5cbi5zbWFsbC00IHtcbiAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuXG4uc21hbGwtcHVzaC00IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiAzMy4zMzMzMyU7IH1cblxuLnNtYWxsLXB1bGwtNCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogLTMzLjMzMzMzJTsgfVxuXG4uc21hbGwtb2Zmc2V0LTMge1xuICBtYXJnaW4tbGVmdDogMjUlOyB9XG5cbi5zbWFsbC01IHtcbiAgd2lkdGg6IDQxLjY2NjY3JTsgfVxuXG4uc21hbGwtcHVzaC01IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiA0MS42NjY2NyU7IH1cblxuLnNtYWxsLXB1bGwtNSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogLTQxLjY2NjY3JTsgfVxuXG4uc21hbGwtb2Zmc2V0LTQge1xuICBtYXJnaW4tbGVmdDogMzMuMzMzMzMlOyB9XG5cbi5zbWFsbC02IHtcbiAgd2lkdGg6IDUwJTsgfVxuXG4uc21hbGwtcHVzaC02IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiA1MCU7IH1cblxuLnNtYWxsLXB1bGwtNiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogLTUwJTsgfVxuXG4uc21hbGwtb2Zmc2V0LTUge1xuICBtYXJnaW4tbGVmdDogNDEuNjY2NjclOyB9XG5cbi5zbWFsbC03IHtcbiAgd2lkdGg6IDU4LjMzMzMzJTsgfVxuXG4uc21hbGwtcHVzaC03IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiA1OC4zMzMzMyU7IH1cblxuLnNtYWxsLXB1bGwtNyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogLTU4LjMzMzMzJTsgfVxuXG4uc21hbGwtb2Zmc2V0LTYge1xuICBtYXJnaW4tbGVmdDogNTAlOyB9XG5cbi5zbWFsbC04IHtcbiAgd2lkdGg6IDY2LjY2NjY3JTsgfVxuXG4uc21hbGwtcHVzaC04IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiA2Ni42NjY2NyU7IH1cblxuLnNtYWxsLXB1bGwtOCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogLTY2LjY2NjY3JTsgfVxuXG4uc21hbGwtb2Zmc2V0LTcge1xuICBtYXJnaW4tbGVmdDogNTguMzMzMzMlOyB9XG5cbi5zbWFsbC05IHtcbiAgd2lkdGg6IDc1JTsgfVxuXG4uc21hbGwtcHVzaC05IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiA3NSU7IH1cblxuLnNtYWxsLXB1bGwtOSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogLTc1JTsgfVxuXG4uc21hbGwtb2Zmc2V0LTgge1xuICBtYXJnaW4tbGVmdDogNjYuNjY2NjclOyB9XG5cbi5zbWFsbC0xMCB7XG4gIHdpZHRoOiA4My4zMzMzMyU7IH1cblxuLnNtYWxsLXB1c2gtMTAge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IDgzLjMzMzMzJTsgfVxuXG4uc21hbGwtcHVsbC0xMCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogLTgzLjMzMzMzJTsgfVxuXG4uc21hbGwtb2Zmc2V0LTkge1xuICBtYXJnaW4tbGVmdDogNzUlOyB9XG5cbi5zbWFsbC0xMSB7XG4gIHdpZHRoOiA5MS42NjY2NyU7IH1cblxuLnNtYWxsLXB1c2gtMTEge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IDkxLjY2NjY3JTsgfVxuXG4uc21hbGwtcHVsbC0xMSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogLTkxLjY2NjY3JTsgfVxuXG4uc21hbGwtb2Zmc2V0LTEwIHtcbiAgbWFyZ2luLWxlZnQ6IDgzLjMzMzMzJTsgfVxuXG4uc21hbGwtMTIge1xuICB3aWR0aDogMTAwJTsgfVxuXG4uc21hbGwtb2Zmc2V0LTExIHtcbiAgbWFyZ2luLWxlZnQ6IDkxLjY2NjY3JTsgfVxuXG4uc21hbGwtdXAtMSA+IC5jb2x1bW4sIC5zbWFsbC11cC0xID4gLmNvbHVtbnMge1xuICB3aWR0aDogMTAwJTtcbiAgZmxvYXQ6IGxlZnQ7IH1cbiAgLnNtYWxsLXVwLTEgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLnNtYWxsLXVwLTEgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgIGNsZWFyOiBub25lOyB9XG4gIC5zbWFsbC11cC0xID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbisxKSwgLnNtYWxsLXVwLTEgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbisxKSB7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgLnNtYWxsLXVwLTEgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5zbWFsbC11cC0xID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IGxlZnQ7IH1cblxuLnNtYWxsLXVwLTIgPiAuY29sdW1uLCAuc21hbGwtdXAtMiA+IC5jb2x1bW5zIHtcbiAgd2lkdGg6IDUwJTtcbiAgZmxvYXQ6IGxlZnQ7IH1cbiAgLnNtYWxsLXVwLTIgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLnNtYWxsLXVwLTIgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgIGNsZWFyOiBub25lOyB9XG4gIC5zbWFsbC11cC0yID4gLmNvbHVtbjpudGgtb2YtdHlwZSgybisxKSwgLnNtYWxsLXVwLTIgPiAuY29sdW1uczpudGgtb2YtdHlwZSgybisxKSB7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgLnNtYWxsLXVwLTIgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5zbWFsbC11cC0yID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IGxlZnQ7IH1cblxuLnNtYWxsLXVwLTMgPiAuY29sdW1uLCAuc21hbGwtdXAtMyA+IC5jb2x1bW5zIHtcbiAgd2lkdGg6IDMzLjMzMzMzJTtcbiAgZmxvYXQ6IGxlZnQ7IH1cbiAgLnNtYWxsLXVwLTMgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLnNtYWxsLXVwLTMgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgIGNsZWFyOiBub25lOyB9XG4gIC5zbWFsbC11cC0zID4gLmNvbHVtbjpudGgtb2YtdHlwZSgzbisxKSwgLnNtYWxsLXVwLTMgPiAuY29sdW1uczpudGgtb2YtdHlwZSgzbisxKSB7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgLnNtYWxsLXVwLTMgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5zbWFsbC11cC0zID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IGxlZnQ7IH1cblxuLnNtYWxsLXVwLTQgPiAuY29sdW1uLCAuc21hbGwtdXAtNCA+IC5jb2x1bW5zIHtcbiAgd2lkdGg6IDI1JTtcbiAgZmxvYXQ6IGxlZnQ7IH1cbiAgLnNtYWxsLXVwLTQgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLnNtYWxsLXVwLTQgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgIGNsZWFyOiBub25lOyB9XG4gIC5zbWFsbC11cC00ID4gLmNvbHVtbjpudGgtb2YtdHlwZSg0bisxKSwgLnNtYWxsLXVwLTQgPiAuY29sdW1uczpudGgtb2YtdHlwZSg0bisxKSB7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgLnNtYWxsLXVwLTQgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5zbWFsbC11cC00ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IGxlZnQ7IH1cblxuLnNtYWxsLXVwLTUgPiAuY29sdW1uLCAuc21hbGwtdXAtNSA+IC5jb2x1bW5zIHtcbiAgd2lkdGg6IDIwJTtcbiAgZmxvYXQ6IGxlZnQ7IH1cbiAgLnNtYWxsLXVwLTUgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLnNtYWxsLXVwLTUgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgIGNsZWFyOiBub25lOyB9XG4gIC5zbWFsbC11cC01ID4gLmNvbHVtbjpudGgtb2YtdHlwZSg1bisxKSwgLnNtYWxsLXVwLTUgPiAuY29sdW1uczpudGgtb2YtdHlwZSg1bisxKSB7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgLnNtYWxsLXVwLTUgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5zbWFsbC11cC01ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IGxlZnQ7IH1cblxuLnNtYWxsLXVwLTYgPiAuY29sdW1uLCAuc21hbGwtdXAtNiA+IC5jb2x1bW5zIHtcbiAgd2lkdGg6IDE2LjY2NjY3JTtcbiAgZmxvYXQ6IGxlZnQ7IH1cbiAgLnNtYWxsLXVwLTYgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLnNtYWxsLXVwLTYgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgIGNsZWFyOiBub25lOyB9XG4gIC5zbWFsbC11cC02ID4gLmNvbHVtbjpudGgtb2YtdHlwZSg2bisxKSwgLnNtYWxsLXVwLTYgPiAuY29sdW1uczpudGgtb2YtdHlwZSg2bisxKSB7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgLnNtYWxsLXVwLTYgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5zbWFsbC11cC02ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IGxlZnQ7IH1cblxuLnNtYWxsLWNvbGxhcHNlID4gLmNvbHVtbiwgLnNtYWxsLWNvbGxhcHNlID4gLmNvbHVtbnMge1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIHBhZGRpbmctcmlnaHQ6IDA7IH1cblxuLnNtYWxsLWNvbGxhcHNlIC5yb3cge1xuICBtYXJnaW4tbGVmdDogMDtcbiAgbWFyZ2luLXJpZ2h0OiAwOyB9XG5cbi5zbWFsbC11bmNvbGxhcHNlID4gLmNvbHVtbiwgLnNtYWxsLXVuY29sbGFwc2UgPiAuY29sdW1ucyB7XG4gIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtO1xuICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07IH1cblxuLnNtYWxsLWNlbnRlcmVkIHtcbiAgZmxvYXQ6IG5vbmU7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87IH1cblxuLnNtYWxsLXVuY2VudGVyZWQsXG4uc21hbGwtcHVzaC0wLFxuLnNtYWxsLXB1bGwtMCB7XG4gIHBvc2l0aW9uOiBzdGF0aWM7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIGZsb2F0OiBsZWZ0OyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLm1lZGl1bS0xIHtcbiAgICB3aWR0aDogOC4zMzMzMyU7IH1cbiAgLm1lZGl1bS1wdXNoLTEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA4LjMzMzMzJTsgfVxuICAubWVkaXVtLXB1bGwtMSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC04LjMzMzMzJTsgfVxuICAubWVkaXVtLW9mZnNldC0wIHtcbiAgICBtYXJnaW4tbGVmdDogMCU7IH1cbiAgLm1lZGl1bS0yIHtcbiAgICB3aWR0aDogMTYuNjY2NjclOyB9XG4gIC5tZWRpdW0tcHVzaC0yIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogMTYuNjY2NjclOyB9XG4gIC5tZWRpdW0tcHVsbC0yIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTE2LjY2NjY3JTsgfVxuICAubWVkaXVtLW9mZnNldC0xIHtcbiAgICBtYXJnaW4tbGVmdDogOC4zMzMzMyU7IH1cbiAgLm1lZGl1bS0zIHtcbiAgICB3aWR0aDogMjUlOyB9XG4gIC5tZWRpdW0tcHVzaC0zIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogMjUlOyB9XG4gIC5tZWRpdW0tcHVsbC0zIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTI1JTsgfVxuICAubWVkaXVtLW9mZnNldC0yIHtcbiAgICBtYXJnaW4tbGVmdDogMTYuNjY2NjclOyB9XG4gIC5tZWRpdW0tNCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAubWVkaXVtLXB1c2gtNCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDMzLjMzMzMzJTsgfVxuICAubWVkaXVtLXB1bGwtNCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC0zMy4zMzMzMyU7IH1cbiAgLm1lZGl1bS1vZmZzZXQtMyB7XG4gICAgbWFyZ2luLWxlZnQ6IDI1JTsgfVxuICAubWVkaXVtLTUge1xuICAgIHdpZHRoOiA0MS42NjY2NyU7IH1cbiAgLm1lZGl1bS1wdXNoLTUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA0MS42NjY2NyU7IH1cbiAgLm1lZGl1bS1wdWxsLTUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtNDEuNjY2NjclOyB9XG4gIC5tZWRpdW0tb2Zmc2V0LTQge1xuICAgIG1hcmdpbi1sZWZ0OiAzMy4zMzMzMyU7IH1cbiAgLm1lZGl1bS02IHtcbiAgICB3aWR0aDogNTAlOyB9XG4gIC5tZWRpdW0tcHVzaC02IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogNTAlOyB9XG4gIC5tZWRpdW0tcHVsbC02IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTUwJTsgfVxuICAubWVkaXVtLW9mZnNldC01IHtcbiAgICBtYXJnaW4tbGVmdDogNDEuNjY2NjclOyB9XG4gIC5tZWRpdW0tNyB7XG4gICAgd2lkdGg6IDU4LjMzMzMzJTsgfVxuICAubWVkaXVtLXB1c2gtNyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDU4LjMzMzMzJTsgfVxuICAubWVkaXVtLXB1bGwtNyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC01OC4zMzMzMyU7IH1cbiAgLm1lZGl1bS1vZmZzZXQtNiB7XG4gICAgbWFyZ2luLWxlZnQ6IDUwJTsgfVxuICAubWVkaXVtLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgLm1lZGl1bS1wdXNoLTgge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA2Ni42NjY2NyU7IH1cbiAgLm1lZGl1bS1wdWxsLTgge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtNjYuNjY2NjclOyB9XG4gIC5tZWRpdW0tb2Zmc2V0LTcge1xuICAgIG1hcmdpbi1sZWZ0OiA1OC4zMzMzMyU7IH1cbiAgLm1lZGl1bS05IHtcbiAgICB3aWR0aDogNzUlOyB9XG4gIC5tZWRpdW0tcHVzaC05IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogNzUlOyB9XG4gIC5tZWRpdW0tcHVsbC05IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTc1JTsgfVxuICAubWVkaXVtLW9mZnNldC04IHtcbiAgICBtYXJnaW4tbGVmdDogNjYuNjY2NjclOyB9XG4gIC5tZWRpdW0tMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMyU7IH1cbiAgLm1lZGl1bS1wdXNoLTEwIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogODMuMzMzMzMlOyB9XG4gIC5tZWRpdW0tcHVsbC0xMCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC04My4zMzMzMyU7IH1cbiAgLm1lZGl1bS1vZmZzZXQtOSB7XG4gICAgbWFyZ2luLWxlZnQ6IDc1JTsgfVxuICAubWVkaXVtLTExIHtcbiAgICB3aWR0aDogOTEuNjY2NjclOyB9XG4gIC5tZWRpdW0tcHVzaC0xMSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDkxLjY2NjY3JTsgfVxuICAubWVkaXVtLXB1bGwtMTEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtOTEuNjY2NjclOyB9XG4gIC5tZWRpdW0tb2Zmc2V0LTEwIHtcbiAgICBtYXJnaW4tbGVmdDogODMuMzMzMzMlOyB9XG4gIC5tZWRpdW0tMTIge1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gIC5tZWRpdW0tb2Zmc2V0LTExIHtcbiAgICBtYXJnaW4tbGVmdDogOTEuNjY2NjclOyB9XG4gIC5tZWRpdW0tdXAtMSA+IC5jb2x1bW4sIC5tZWRpdW0tdXAtMSA+IC5jb2x1bW5zIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBmbG9hdDogbGVmdDsgfVxuICAgIC5tZWRpdW0tdXAtMSA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAubWVkaXVtLXVwLTEgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAubWVkaXVtLXVwLTEgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKzEpLCAubWVkaXVtLXVwLTEgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbisxKSB7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIC5tZWRpdW0tdXAtMSA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLm1lZGl1bS11cC0xID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgICBmbG9hdDogbGVmdDsgfVxuICAubWVkaXVtLXVwLTIgPiAuY29sdW1uLCAubWVkaXVtLXVwLTIgPiAuY29sdW1ucyB7XG4gICAgd2lkdGg6IDUwJTtcbiAgICBmbG9hdDogbGVmdDsgfVxuICAgIC5tZWRpdW0tdXAtMiA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAubWVkaXVtLXVwLTIgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAubWVkaXVtLXVwLTIgPiAuY29sdW1uOm50aC1vZi10eXBlKDJuKzEpLCAubWVkaXVtLXVwLTIgPiAuY29sdW1uczpudGgtb2YtdHlwZSgybisxKSB7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIC5tZWRpdW0tdXAtMiA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLm1lZGl1bS11cC0yID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgICBmbG9hdDogbGVmdDsgfVxuICAubWVkaXVtLXVwLTMgPiAuY29sdW1uLCAubWVkaXVtLXVwLTMgPiAuY29sdW1ucyB7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTtcbiAgICBmbG9hdDogbGVmdDsgfVxuICAgIC5tZWRpdW0tdXAtMyA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAubWVkaXVtLXVwLTMgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAubWVkaXVtLXVwLTMgPiAuY29sdW1uOm50aC1vZi10eXBlKDNuKzEpLCAubWVkaXVtLXVwLTMgPiAuY29sdW1uczpudGgtb2YtdHlwZSgzbisxKSB7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIC5tZWRpdW0tdXAtMyA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLm1lZGl1bS11cC0zID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgICBmbG9hdDogbGVmdDsgfVxuICAubWVkaXVtLXVwLTQgPiAuY29sdW1uLCAubWVkaXVtLXVwLTQgPiAuY29sdW1ucyB7XG4gICAgd2lkdGg6IDI1JTtcbiAgICBmbG9hdDogbGVmdDsgfVxuICAgIC5tZWRpdW0tdXAtNCA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAubWVkaXVtLXVwLTQgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAubWVkaXVtLXVwLTQgPiAuY29sdW1uOm50aC1vZi10eXBlKDRuKzEpLCAubWVkaXVtLXVwLTQgPiAuY29sdW1uczpudGgtb2YtdHlwZSg0bisxKSB7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIC5tZWRpdW0tdXAtNCA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLm1lZGl1bS11cC00ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgICBmbG9hdDogbGVmdDsgfVxuICAubWVkaXVtLXVwLTUgPiAuY29sdW1uLCAubWVkaXVtLXVwLTUgPiAuY29sdW1ucyB7XG4gICAgd2lkdGg6IDIwJTtcbiAgICBmbG9hdDogbGVmdDsgfVxuICAgIC5tZWRpdW0tdXAtNSA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAubWVkaXVtLXVwLTUgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAubWVkaXVtLXVwLTUgPiAuY29sdW1uOm50aC1vZi10eXBlKDVuKzEpLCAubWVkaXVtLXVwLTUgPiAuY29sdW1uczpudGgtb2YtdHlwZSg1bisxKSB7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIC5tZWRpdW0tdXAtNSA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLm1lZGl1bS11cC01ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgICBmbG9hdDogbGVmdDsgfVxuICAubWVkaXVtLXVwLTYgPiAuY29sdW1uLCAubWVkaXVtLXVwLTYgPiAuY29sdW1ucyB7XG4gICAgd2lkdGg6IDE2LjY2NjY3JTtcbiAgICBmbG9hdDogbGVmdDsgfVxuICAgIC5tZWRpdW0tdXAtNiA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAubWVkaXVtLXVwLTYgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAubWVkaXVtLXVwLTYgPiAuY29sdW1uOm50aC1vZi10eXBlKDZuKzEpLCAubWVkaXVtLXVwLTYgPiAuY29sdW1uczpudGgtb2YtdHlwZSg2bisxKSB7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIC5tZWRpdW0tdXAtNiA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLm1lZGl1bS11cC02ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgICBmbG9hdDogbGVmdDsgfVxuICAubWVkaXVtLWNvbGxhcHNlID4gLmNvbHVtbiwgLm1lZGl1bS1jb2xsYXBzZSA+IC5jb2x1bW5zIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgcGFkZGluZy1yaWdodDogMDsgfVxuICAubWVkaXVtLWNvbGxhcHNlIC5yb3cge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIG1hcmdpbi1yaWdodDogMDsgfVxuICAubWVkaXVtLXVuY29sbGFwc2UgPiAuY29sdW1uLCAubWVkaXVtLXVuY29sbGFwc2UgPiAuY29sdW1ucyB7XG4gICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07XG4gICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtOyB9XG4gIC5tZWRpdW0tY2VudGVyZWQge1xuICAgIGZsb2F0OiBub25lO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bzsgfVxuICAubWVkaXVtLXVuY2VudGVyZWQsXG4gIC5tZWRpdW0tcHVzaC0wLFxuICAubWVkaXVtLXB1bGwtMCB7XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgZmxvYXQ6IGxlZnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5sYXJnZS0xIHtcbiAgICB3aWR0aDogOC4zMzMzMyU7IH1cbiAgLmxhcmdlLXB1c2gtMSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDguMzMzMzMlOyB9XG4gIC5sYXJnZS1wdWxsLTEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtOC4zMzMzMyU7IH1cbiAgLmxhcmdlLW9mZnNldC0wIHtcbiAgICBtYXJnaW4tbGVmdDogMCU7IH1cbiAgLmxhcmdlLTIge1xuICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLmxhcmdlLXB1c2gtMiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDE2LjY2NjY3JTsgfVxuICAubGFyZ2UtcHVsbC0yIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTE2LjY2NjY3JTsgfVxuICAubGFyZ2Utb2Zmc2V0LTEge1xuICAgIG1hcmdpbi1sZWZ0OiA4LjMzMzMzJTsgfVxuICAubGFyZ2UtMyB7XG4gICAgd2lkdGg6IDI1JTsgfVxuICAubGFyZ2UtcHVzaC0zIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogMjUlOyB9XG4gIC5sYXJnZS1wdWxsLTMge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtMjUlOyB9XG4gIC5sYXJnZS1vZmZzZXQtMiB7XG4gICAgbWFyZ2luLWxlZnQ6IDE2LjY2NjY3JTsgfVxuICAubGFyZ2UtNCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAubGFyZ2UtcHVzaC00IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogMzMuMzMzMzMlOyB9XG4gIC5sYXJnZS1wdWxsLTQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtMzMuMzMzMzMlOyB9XG4gIC5sYXJnZS1vZmZzZXQtMyB7XG4gICAgbWFyZ2luLWxlZnQ6IDI1JTsgfVxuICAubGFyZ2UtNSB7XG4gICAgd2lkdGg6IDQxLjY2NjY3JTsgfVxuICAubGFyZ2UtcHVzaC01IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogNDEuNjY2NjclOyB9XG4gIC5sYXJnZS1wdWxsLTUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtNDEuNjY2NjclOyB9XG4gIC5sYXJnZS1vZmZzZXQtNCB7XG4gICAgbWFyZ2luLWxlZnQ6IDMzLjMzMzMzJTsgfVxuICAubGFyZ2UtNiB7XG4gICAgd2lkdGg6IDUwJTsgfVxuICAubGFyZ2UtcHVzaC02IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogNTAlOyB9XG4gIC5sYXJnZS1wdWxsLTYge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtNTAlOyB9XG4gIC5sYXJnZS1vZmZzZXQtNSB7XG4gICAgbWFyZ2luLWxlZnQ6IDQxLjY2NjY3JTsgfVxuICAubGFyZ2UtNyB7XG4gICAgd2lkdGg6IDU4LjMzMzMzJTsgfVxuICAubGFyZ2UtcHVzaC03IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogNTguMzMzMzMlOyB9XG4gIC5sYXJnZS1wdWxsLTcge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtNTguMzMzMzMlOyB9XG4gIC5sYXJnZS1vZmZzZXQtNiB7XG4gICAgbWFyZ2luLWxlZnQ6IDUwJTsgfVxuICAubGFyZ2UtOCB7XG4gICAgd2lkdGg6IDY2LjY2NjY3JTsgfVxuICAubGFyZ2UtcHVzaC04IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogNjYuNjY2NjclOyB9XG4gIC5sYXJnZS1wdWxsLTgge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtNjYuNjY2NjclOyB9XG4gIC5sYXJnZS1vZmZzZXQtNyB7XG4gICAgbWFyZ2luLWxlZnQ6IDU4LjMzMzMzJTsgfVxuICAubGFyZ2UtOSB7XG4gICAgd2lkdGg6IDc1JTsgfVxuICAubGFyZ2UtcHVzaC05IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogNzUlOyB9XG4gIC5sYXJnZS1wdWxsLTkge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtNzUlOyB9XG4gIC5sYXJnZS1vZmZzZXQtOCB7XG4gICAgbWFyZ2luLWxlZnQ6IDY2LjY2NjY3JTsgfVxuICAubGFyZ2UtMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMyU7IH1cbiAgLmxhcmdlLXB1c2gtMTAge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA4My4zMzMzMyU7IH1cbiAgLmxhcmdlLXB1bGwtMTAge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtODMuMzMzMzMlOyB9XG4gIC5sYXJnZS1vZmZzZXQtOSB7XG4gICAgbWFyZ2luLWxlZnQ6IDc1JTsgfVxuICAubGFyZ2UtMTEge1xuICAgIHdpZHRoOiA5MS42NjY2NyU7IH1cbiAgLmxhcmdlLXB1c2gtMTEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA5MS42NjY2NyU7IH1cbiAgLmxhcmdlLXB1bGwtMTEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtOTEuNjY2NjclOyB9XG4gIC5sYXJnZS1vZmZzZXQtMTAge1xuICAgIG1hcmdpbi1sZWZ0OiA4My4zMzMzMyU7IH1cbiAgLmxhcmdlLTEyIHtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAubGFyZ2Utb2Zmc2V0LTExIHtcbiAgICBtYXJnaW4tbGVmdDogOTEuNjY2NjclOyB9XG4gIC5sYXJnZS11cC0xID4gLmNvbHVtbiwgLmxhcmdlLXVwLTEgPiAuY29sdW1ucyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZmxvYXQ6IGxlZnQ7IH1cbiAgICAubGFyZ2UtdXAtMSA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAubGFyZ2UtdXAtMSA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICBjbGVhcjogbm9uZTsgfVxuICAgIC5sYXJnZS11cC0xID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbisxKSwgLmxhcmdlLXVwLTEgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbisxKSB7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIC5sYXJnZS11cC0xID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAubGFyZ2UtdXAtMSA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgICAgZmxvYXQ6IGxlZnQ7IH1cbiAgLmxhcmdlLXVwLTIgPiAuY29sdW1uLCAubGFyZ2UtdXAtMiA+IC5jb2x1bW5zIHtcbiAgICB3aWR0aDogNTAlO1xuICAgIGZsb2F0OiBsZWZ0OyB9XG4gICAgLmxhcmdlLXVwLTIgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLmxhcmdlLXVwLTIgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAubGFyZ2UtdXAtMiA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMm4rMSksIC5sYXJnZS11cC0yID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMm4rMSkge1xuICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAubGFyZ2UtdXAtMiA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLmxhcmdlLXVwLTIgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICAgIGZsb2F0OiBsZWZ0OyB9XG4gIC5sYXJnZS11cC0zID4gLmNvbHVtbiwgLmxhcmdlLXVwLTMgPiAuY29sdW1ucyB7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTtcbiAgICBmbG9hdDogbGVmdDsgfVxuICAgIC5sYXJnZS11cC0zID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5sYXJnZS11cC0zID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgLmxhcmdlLXVwLTMgPiAuY29sdW1uOm50aC1vZi10eXBlKDNuKzEpLCAubGFyZ2UtdXAtMyA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDNuKzEpIHtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgLmxhcmdlLXVwLTMgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5sYXJnZS11cC0zID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgICBmbG9hdDogbGVmdDsgfVxuICAubGFyZ2UtdXAtNCA+IC5jb2x1bW4sIC5sYXJnZS11cC00ID4gLmNvbHVtbnMge1xuICAgIHdpZHRoOiAyNSU7XG4gICAgZmxvYXQ6IGxlZnQ7IH1cbiAgICAubGFyZ2UtdXAtNCA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAubGFyZ2UtdXAtNCA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICBjbGVhcjogbm9uZTsgfVxuICAgIC5sYXJnZS11cC00ID4gLmNvbHVtbjpudGgtb2YtdHlwZSg0bisxKSwgLmxhcmdlLXVwLTQgPiAuY29sdW1uczpudGgtb2YtdHlwZSg0bisxKSB7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIC5sYXJnZS11cC00ID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAubGFyZ2UtdXAtNCA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgICAgZmxvYXQ6IGxlZnQ7IH1cbiAgLmxhcmdlLXVwLTUgPiAuY29sdW1uLCAubGFyZ2UtdXAtNSA+IC5jb2x1bW5zIHtcbiAgICB3aWR0aDogMjAlO1xuICAgIGZsb2F0OiBsZWZ0OyB9XG4gICAgLmxhcmdlLXVwLTUgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLmxhcmdlLXVwLTUgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAubGFyZ2UtdXAtNSA+IC5jb2x1bW46bnRoLW9mLXR5cGUoNW4rMSksIC5sYXJnZS11cC01ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoNW4rMSkge1xuICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAubGFyZ2UtdXAtNSA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLmxhcmdlLXVwLTUgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICAgIGZsb2F0OiBsZWZ0OyB9XG4gIC5sYXJnZS11cC02ID4gLmNvbHVtbiwgLmxhcmdlLXVwLTYgPiAuY29sdW1ucyB7XG4gICAgd2lkdGg6IDE2LjY2NjY3JTtcbiAgICBmbG9hdDogbGVmdDsgfVxuICAgIC5sYXJnZS11cC02ID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5sYXJnZS11cC02ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgLmxhcmdlLXVwLTYgPiAuY29sdW1uOm50aC1vZi10eXBlKDZuKzEpLCAubGFyZ2UtdXAtNiA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDZuKzEpIHtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgLmxhcmdlLXVwLTYgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5sYXJnZS11cC02ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgICBmbG9hdDogbGVmdDsgfVxuICAubGFyZ2UtY29sbGFwc2UgPiAuY29sdW1uLCAubGFyZ2UtY29sbGFwc2UgPiAuY29sdW1ucyB7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7IH1cbiAgLmxhcmdlLWNvbGxhcHNlIC5yb3cge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIG1hcmdpbi1yaWdodDogMDsgfVxuICAubGFyZ2UtdW5jb2xsYXBzZSA+IC5jb2x1bW4sIC5sYXJnZS11bmNvbGxhcHNlID4gLmNvbHVtbnMge1xuICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtO1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTsgfVxuICAubGFyZ2UtY2VudGVyZWQge1xuICAgIGZsb2F0OiBub25lO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bzsgfVxuICAubGFyZ2UtdW5jZW50ZXJlZCxcbiAgLmxhcmdlLXB1c2gtMCxcbiAgLmxhcmdlLXB1bGwtMCB7XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgZmxvYXQ6IGxlZnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC54bGFyZ2UtMSB7XG4gICAgd2lkdGg6IDguMzMzMzMlOyB9XG4gIC54bGFyZ2UtcHVzaC0xIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogOC4zMzMzMyU7IH1cbiAgLnhsYXJnZS1wdWxsLTEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtOC4zMzMzMyU7IH1cbiAgLnhsYXJnZS1vZmZzZXQtMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDAlOyB9XG4gIC54bGFyZ2UtMiB7XG4gICAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAueGxhcmdlLXB1c2gtMiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDE2LjY2NjY3JTsgfVxuICAueGxhcmdlLXB1bGwtMiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC0xNi42NjY2NyU7IH1cbiAgLnhsYXJnZS1vZmZzZXQtMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDguMzMzMzMlOyB9XG4gIC54bGFyZ2UtMyB7XG4gICAgd2lkdGg6IDI1JTsgfVxuICAueGxhcmdlLXB1c2gtMyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDI1JTsgfVxuICAueGxhcmdlLXB1bGwtMyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC0yNSU7IH1cbiAgLnhsYXJnZS1vZmZzZXQtMiB7XG4gICAgbWFyZ2luLWxlZnQ6IDE2LjY2NjY3JTsgfVxuICAueGxhcmdlLTQge1xuICAgIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLnhsYXJnZS1wdXNoLTQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAzMy4zMzMzMyU7IH1cbiAgLnhsYXJnZS1wdWxsLTQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtMzMuMzMzMzMlOyB9XG4gIC54bGFyZ2Utb2Zmc2V0LTMge1xuICAgIG1hcmdpbi1sZWZ0OiAyNSU7IH1cbiAgLnhsYXJnZS01IHtcbiAgICB3aWR0aDogNDEuNjY2NjclOyB9XG4gIC54bGFyZ2UtcHVzaC01IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogNDEuNjY2NjclOyB9XG4gIC54bGFyZ2UtcHVsbC01IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTQxLjY2NjY3JTsgfVxuICAueGxhcmdlLW9mZnNldC00IHtcbiAgICBtYXJnaW4tbGVmdDogMzMuMzMzMzMlOyB9XG4gIC54bGFyZ2UtNiB7XG4gICAgd2lkdGg6IDUwJTsgfVxuICAueGxhcmdlLXB1c2gtNiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDUwJTsgfVxuICAueGxhcmdlLXB1bGwtNiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC01MCU7IH1cbiAgLnhsYXJnZS1vZmZzZXQtNSB7XG4gICAgbWFyZ2luLWxlZnQ6IDQxLjY2NjY3JTsgfVxuICAueGxhcmdlLTcge1xuICAgIHdpZHRoOiA1OC4zMzMzMyU7IH1cbiAgLnhsYXJnZS1wdXNoLTcge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA1OC4zMzMzMyU7IH1cbiAgLnhsYXJnZS1wdWxsLTcge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtNTguMzMzMzMlOyB9XG4gIC54bGFyZ2Utb2Zmc2V0LTYge1xuICAgIG1hcmdpbi1sZWZ0OiA1MCU7IH1cbiAgLnhsYXJnZS04IHtcbiAgICB3aWR0aDogNjYuNjY2NjclOyB9XG4gIC54bGFyZ2UtcHVzaC04IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogNjYuNjY2NjclOyB9XG4gIC54bGFyZ2UtcHVsbC04IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTY2LjY2NjY3JTsgfVxuICAueGxhcmdlLW9mZnNldC03IHtcbiAgICBtYXJnaW4tbGVmdDogNTguMzMzMzMlOyB9XG4gIC54bGFyZ2UtOSB7XG4gICAgd2lkdGg6IDc1JTsgfVxuICAueGxhcmdlLXB1c2gtOSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDc1JTsgfVxuICAueGxhcmdlLXB1bGwtOSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC03NSU7IH1cbiAgLnhsYXJnZS1vZmZzZXQtOCB7XG4gICAgbWFyZ2luLWxlZnQ6IDY2LjY2NjY3JTsgfVxuICAueGxhcmdlLTEwIHtcbiAgICB3aWR0aDogODMuMzMzMzMlOyB9XG4gIC54bGFyZ2UtcHVzaC0xMCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDgzLjMzMzMzJTsgfVxuICAueGxhcmdlLXB1bGwtMTAge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtODMuMzMzMzMlOyB9XG4gIC54bGFyZ2Utb2Zmc2V0LTkge1xuICAgIG1hcmdpbi1sZWZ0OiA3NSU7IH1cbiAgLnhsYXJnZS0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAueGxhcmdlLXB1c2gtMTEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA5MS42NjY2NyU7IH1cbiAgLnhsYXJnZS1wdWxsLTExIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTkxLjY2NjY3JTsgfVxuICAueGxhcmdlLW9mZnNldC0xMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDgzLjMzMzMzJTsgfVxuICAueGxhcmdlLTEyIHtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAueGxhcmdlLW9mZnNldC0xMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDkxLjY2NjY3JTsgfVxuICAueGxhcmdlLXVwLTEgPiAuY29sdW1uLCAueGxhcmdlLXVwLTEgPiAuY29sdW1ucyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZmxvYXQ6IGxlZnQ7IH1cbiAgICAueGxhcmdlLXVwLTEgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLnhsYXJnZS11cC0xID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgLnhsYXJnZS11cC0xID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbisxKSwgLnhsYXJnZS11cC0xID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4rMSkge1xuICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAueGxhcmdlLXVwLTEgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC54bGFyZ2UtdXAtMSA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgICAgZmxvYXQ6IGxlZnQ7IH1cbiAgLnhsYXJnZS11cC0yID4gLmNvbHVtbiwgLnhsYXJnZS11cC0yID4gLmNvbHVtbnMge1xuICAgIHdpZHRoOiA1MCU7XG4gICAgZmxvYXQ6IGxlZnQ7IH1cbiAgICAueGxhcmdlLXVwLTIgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLnhsYXJnZS11cC0yID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgLnhsYXJnZS11cC0yID4gLmNvbHVtbjpudGgtb2YtdHlwZSgybisxKSwgLnhsYXJnZS11cC0yID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMm4rMSkge1xuICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAueGxhcmdlLXVwLTIgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC54bGFyZ2UtdXAtMiA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgICAgZmxvYXQ6IGxlZnQ7IH1cbiAgLnhsYXJnZS11cC0zID4gLmNvbHVtbiwgLnhsYXJnZS11cC0zID4gLmNvbHVtbnMge1xuICAgIHdpZHRoOiAzMy4zMzMzMyU7XG4gICAgZmxvYXQ6IGxlZnQ7IH1cbiAgICAueGxhcmdlLXVwLTMgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLnhsYXJnZS11cC0zID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgLnhsYXJnZS11cC0zID4gLmNvbHVtbjpudGgtb2YtdHlwZSgzbisxKSwgLnhsYXJnZS11cC0zID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoM24rMSkge1xuICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAueGxhcmdlLXVwLTMgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC54bGFyZ2UtdXAtMyA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgICAgZmxvYXQ6IGxlZnQ7IH1cbiAgLnhsYXJnZS11cC00ID4gLmNvbHVtbiwgLnhsYXJnZS11cC00ID4gLmNvbHVtbnMge1xuICAgIHdpZHRoOiAyNSU7XG4gICAgZmxvYXQ6IGxlZnQ7IH1cbiAgICAueGxhcmdlLXVwLTQgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLnhsYXJnZS11cC00ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgLnhsYXJnZS11cC00ID4gLmNvbHVtbjpudGgtb2YtdHlwZSg0bisxKSwgLnhsYXJnZS11cC00ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoNG4rMSkge1xuICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAueGxhcmdlLXVwLTQgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC54bGFyZ2UtdXAtNCA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgICAgZmxvYXQ6IGxlZnQ7IH1cbiAgLnhsYXJnZS11cC01ID4gLmNvbHVtbiwgLnhsYXJnZS11cC01ID4gLmNvbHVtbnMge1xuICAgIHdpZHRoOiAyMCU7XG4gICAgZmxvYXQ6IGxlZnQ7IH1cbiAgICAueGxhcmdlLXVwLTUgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLnhsYXJnZS11cC01ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgLnhsYXJnZS11cC01ID4gLmNvbHVtbjpudGgtb2YtdHlwZSg1bisxKSwgLnhsYXJnZS11cC01ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoNW4rMSkge1xuICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAueGxhcmdlLXVwLTUgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC54bGFyZ2UtdXAtNSA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgICAgZmxvYXQ6IGxlZnQ7IH1cbiAgLnhsYXJnZS11cC02ID4gLmNvbHVtbiwgLnhsYXJnZS11cC02ID4gLmNvbHVtbnMge1xuICAgIHdpZHRoOiAxNi42NjY2NyU7XG4gICAgZmxvYXQ6IGxlZnQ7IH1cbiAgICAueGxhcmdlLXVwLTYgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLnhsYXJnZS11cC02ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgLnhsYXJnZS11cC02ID4gLmNvbHVtbjpudGgtb2YtdHlwZSg2bisxKSwgLnhsYXJnZS11cC02ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoNm4rMSkge1xuICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAueGxhcmdlLXVwLTYgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC54bGFyZ2UtdXAtNiA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgICAgZmxvYXQ6IGxlZnQ7IH1cbiAgLnhsYXJnZS1jb2xsYXBzZSA+IC5jb2x1bW4sIC54bGFyZ2UtY29sbGFwc2UgPiAuY29sdW1ucyB7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7IH1cbiAgLnhsYXJnZS1jb2xsYXBzZSAucm93IHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7IH1cbiAgLnhsYXJnZS11bmNvbGxhcHNlID4gLmNvbHVtbiwgLnhsYXJnZS11bmNvbGxhcHNlID4gLmNvbHVtbnMge1xuICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtO1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTsgfVxuICAueGxhcmdlLWNlbnRlcmVkIHtcbiAgICBmbG9hdDogbm9uZTtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87IH1cbiAgLnhsYXJnZS11bmNlbnRlcmVkLFxuICAueGxhcmdlLXB1c2gtMCxcbiAgLnhsYXJnZS1wdWxsLTAge1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIGZsb2F0OiBsZWZ0OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAueHhsYXJnZS0xIHtcbiAgICB3aWR0aDogOC4zMzMzMyU7IH1cbiAgLnh4bGFyZ2UtcHVzaC0xIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogOC4zMzMzMyU7IH1cbiAgLnh4bGFyZ2UtcHVsbC0xIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTguMzMzMzMlOyB9XG4gIC54eGxhcmdlLW9mZnNldC0wIHtcbiAgICBtYXJnaW4tbGVmdDogMCU7IH1cbiAgLnh4bGFyZ2UtMiB7XG4gICAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAueHhsYXJnZS1wdXNoLTIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAxNi42NjY2NyU7IH1cbiAgLnh4bGFyZ2UtcHVsbC0yIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTE2LjY2NjY3JTsgfVxuICAueHhsYXJnZS1vZmZzZXQtMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDguMzMzMzMlOyB9XG4gIC54eGxhcmdlLTMge1xuICAgIHdpZHRoOiAyNSU7IH1cbiAgLnh4bGFyZ2UtcHVzaC0zIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogMjUlOyB9XG4gIC54eGxhcmdlLXB1bGwtMyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC0yNSU7IH1cbiAgLnh4bGFyZ2Utb2Zmc2V0LTIge1xuICAgIG1hcmdpbi1sZWZ0OiAxNi42NjY2NyU7IH1cbiAgLnh4bGFyZ2UtNCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAueHhsYXJnZS1wdXNoLTQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAzMy4zMzMzMyU7IH1cbiAgLnh4bGFyZ2UtcHVsbC00IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTMzLjMzMzMzJTsgfVxuICAueHhsYXJnZS1vZmZzZXQtMyB7XG4gICAgbWFyZ2luLWxlZnQ6IDI1JTsgfVxuICAueHhsYXJnZS01IHtcbiAgICB3aWR0aDogNDEuNjY2NjclOyB9XG4gIC54eGxhcmdlLXB1c2gtNSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDQxLjY2NjY3JTsgfVxuICAueHhsYXJnZS1wdWxsLTUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtNDEuNjY2NjclOyB9XG4gIC54eGxhcmdlLW9mZnNldC00IHtcbiAgICBtYXJnaW4tbGVmdDogMzMuMzMzMzMlOyB9XG4gIC54eGxhcmdlLTYge1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgLnh4bGFyZ2UtcHVzaC02IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogNTAlOyB9XG4gIC54eGxhcmdlLXB1bGwtNiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC01MCU7IH1cbiAgLnh4bGFyZ2Utb2Zmc2V0LTUge1xuICAgIG1hcmdpbi1sZWZ0OiA0MS42NjY2NyU7IH1cbiAgLnh4bGFyZ2UtNyB7XG4gICAgd2lkdGg6IDU4LjMzMzMzJTsgfVxuICAueHhsYXJnZS1wdXNoLTcge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA1OC4zMzMzMyU7IH1cbiAgLnh4bGFyZ2UtcHVsbC03IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTU4LjMzMzMzJTsgfVxuICAueHhsYXJnZS1vZmZzZXQtNiB7XG4gICAgbWFyZ2luLWxlZnQ6IDUwJTsgfVxuICAueHhsYXJnZS04IHtcbiAgICB3aWR0aDogNjYuNjY2NjclOyB9XG4gIC54eGxhcmdlLXB1c2gtOCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDY2LjY2NjY3JTsgfVxuICAueHhsYXJnZS1wdWxsLTgge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtNjYuNjY2NjclOyB9XG4gIC54eGxhcmdlLW9mZnNldC03IHtcbiAgICBtYXJnaW4tbGVmdDogNTguMzMzMzMlOyB9XG4gIC54eGxhcmdlLTkge1xuICAgIHdpZHRoOiA3NSU7IH1cbiAgLnh4bGFyZ2UtcHVzaC05IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogNzUlOyB9XG4gIC54eGxhcmdlLXB1bGwtOSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC03NSU7IH1cbiAgLnh4bGFyZ2Utb2Zmc2V0LTgge1xuICAgIG1hcmdpbi1sZWZ0OiA2Ni42NjY2NyU7IH1cbiAgLnh4bGFyZ2UtMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMyU7IH1cbiAgLnh4bGFyZ2UtcHVzaC0xMCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDgzLjMzMzMzJTsgfVxuICAueHhsYXJnZS1wdWxsLTEwIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTgzLjMzMzMzJTsgfVxuICAueHhsYXJnZS1vZmZzZXQtOSB7XG4gICAgbWFyZ2luLWxlZnQ6IDc1JTsgfVxuICAueHhsYXJnZS0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAueHhsYXJnZS1wdXNoLTExIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogOTEuNjY2NjclOyB9XG4gIC54eGxhcmdlLXB1bGwtMTEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtOTEuNjY2NjclOyB9XG4gIC54eGxhcmdlLW9mZnNldC0xMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDgzLjMzMzMzJTsgfVxuICAueHhsYXJnZS0xMiB7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgLnh4bGFyZ2Utb2Zmc2V0LTExIHtcbiAgICBtYXJnaW4tbGVmdDogOTEuNjY2NjclOyB9XG4gIC54eGxhcmdlLXVwLTEgPiAuY29sdW1uLCAueHhsYXJnZS11cC0xID4gLmNvbHVtbnMge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGZsb2F0OiBsZWZ0OyB9XG4gICAgLnh4bGFyZ2UtdXAtMSA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAueHhsYXJnZS11cC0xID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgLnh4bGFyZ2UtdXAtMSA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4rMSksIC54eGxhcmdlLXVwLTEgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbisxKSB7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIC54eGxhcmdlLXVwLTEgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC54eGxhcmdlLXVwLTEgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICAgIGZsb2F0OiBsZWZ0OyB9XG4gIC54eGxhcmdlLXVwLTIgPiAuY29sdW1uLCAueHhsYXJnZS11cC0yID4gLmNvbHVtbnMge1xuICAgIHdpZHRoOiA1MCU7XG4gICAgZmxvYXQ6IGxlZnQ7IH1cbiAgICAueHhsYXJnZS11cC0yID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC54eGxhcmdlLXVwLTIgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAueHhsYXJnZS11cC0yID4gLmNvbHVtbjpudGgtb2YtdHlwZSgybisxKSwgLnh4bGFyZ2UtdXAtMiA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDJuKzEpIHtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgLnh4bGFyZ2UtdXAtMiA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLnh4bGFyZ2UtdXAtMiA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgICAgZmxvYXQ6IGxlZnQ7IH1cbiAgLnh4bGFyZ2UtdXAtMyA+IC5jb2x1bW4sIC54eGxhcmdlLXVwLTMgPiAuY29sdW1ucyB7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTtcbiAgICBmbG9hdDogbGVmdDsgfVxuICAgIC54eGxhcmdlLXVwLTMgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLnh4bGFyZ2UtdXAtMyA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICBjbGVhcjogbm9uZTsgfVxuICAgIC54eGxhcmdlLXVwLTMgPiAuY29sdW1uOm50aC1vZi10eXBlKDNuKzEpLCAueHhsYXJnZS11cC0zID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoM24rMSkge1xuICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAueHhsYXJnZS11cC0zID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAueHhsYXJnZS11cC0zID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgICBmbG9hdDogbGVmdDsgfVxuICAueHhsYXJnZS11cC00ID4gLmNvbHVtbiwgLnh4bGFyZ2UtdXAtNCA+IC5jb2x1bW5zIHtcbiAgICB3aWR0aDogMjUlO1xuICAgIGZsb2F0OiBsZWZ0OyB9XG4gICAgLnh4bGFyZ2UtdXAtNCA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAueHhsYXJnZS11cC00ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgLnh4bGFyZ2UtdXAtNCA+IC5jb2x1bW46bnRoLW9mLXR5cGUoNG4rMSksIC54eGxhcmdlLXVwLTQgPiAuY29sdW1uczpudGgtb2YtdHlwZSg0bisxKSB7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIC54eGxhcmdlLXVwLTQgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC54eGxhcmdlLXVwLTQgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICAgIGZsb2F0OiBsZWZ0OyB9XG4gIC54eGxhcmdlLXVwLTUgPiAuY29sdW1uLCAueHhsYXJnZS11cC01ID4gLmNvbHVtbnMge1xuICAgIHdpZHRoOiAyMCU7XG4gICAgZmxvYXQ6IGxlZnQ7IH1cbiAgICAueHhsYXJnZS11cC01ID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC54eGxhcmdlLXVwLTUgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAueHhsYXJnZS11cC01ID4gLmNvbHVtbjpudGgtb2YtdHlwZSg1bisxKSwgLnh4bGFyZ2UtdXAtNSA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDVuKzEpIHtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgLnh4bGFyZ2UtdXAtNSA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLnh4bGFyZ2UtdXAtNSA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgICAgZmxvYXQ6IGxlZnQ7IH1cbiAgLnh4bGFyZ2UtdXAtNiA+IC5jb2x1bW4sIC54eGxhcmdlLXVwLTYgPiAuY29sdW1ucyB7XG4gICAgd2lkdGg6IDE2LjY2NjY3JTtcbiAgICBmbG9hdDogbGVmdDsgfVxuICAgIC54eGxhcmdlLXVwLTYgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLnh4bGFyZ2UtdXAtNiA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICBjbGVhcjogbm9uZTsgfVxuICAgIC54eGxhcmdlLXVwLTYgPiAuY29sdW1uOm50aC1vZi10eXBlKDZuKzEpLCAueHhsYXJnZS11cC02ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoNm4rMSkge1xuICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAueHhsYXJnZS11cC02ID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAueHhsYXJnZS11cC02ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgICBmbG9hdDogbGVmdDsgfVxuICAueHhsYXJnZS1jb2xsYXBzZSA+IC5jb2x1bW4sIC54eGxhcmdlLWNvbGxhcHNlID4gLmNvbHVtbnMge1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwOyB9XG4gIC54eGxhcmdlLWNvbGxhcHNlIC5yb3cge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIG1hcmdpbi1yaWdodDogMDsgfVxuICAueHhsYXJnZS11bmNvbGxhcHNlID4gLmNvbHVtbiwgLnh4bGFyZ2UtdW5jb2xsYXBzZSA+IC5jb2x1bW5zIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07IH1cbiAgLnh4bGFyZ2UtY2VudGVyZWQge1xuICAgIGZsb2F0OiBub25lO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bzsgfVxuICAueHhsYXJnZS11bmNlbnRlcmVkLFxuICAueHhsYXJnZS1wdXNoLTAsXG4gIC54eGxhcmdlLXB1bGwtMCB7XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgZmxvYXQ6IGxlZnQ7IH0gfVxuXG5kaXYsXG5kbCxcbmR0LFxuZGQsXG51bCxcbm9sLFxubGksIGgxLCAudGl0bGUtMSxcbmgyLFxuLnJzdCBoMSxcbi5yc3QgLnRpdGxlLTEsXG4udGl0bGUtMixcbmgzLFxuLmgzLFxuLnJzdCBoMixcbi5yc3QgaDEsXG4ucnN0IC50aXRsZS0xLFxuLnJzdCAudGl0bGUtMixcbi50aXRsZS0zLFxuaDQsXG4ucnN0IGgzLFxuLnJzdCAuaDMsXG4ucnN0IGgyLFxuLnJzdCBoMSxcbi5yc3QgLnRpdGxlLTEsXG4ucnN0IC50aXRsZS0yLFxuLnJzdCAudGl0bGUtMyxcbi50aXRsZS00LFxuaDUsXG4ucnN0IGg0LFxuLnJzdCBoMyxcbi5yc3QgLmgzLFxuLnJzdCBoMixcbi5yc3QgaDEsXG4ucnN0IC50aXRsZS0xLFxuLnJzdCAudGl0bGUtMixcbi5yc3QgLnRpdGxlLTMsXG4ucnN0IC50aXRsZS00LFxuLnRpdGxlLTUsXG5oNixcbnByZSxcbmZvcm0sXG5wLFxuYmxvY2txdW90ZSxcbnRoLFxudGQge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7IH1cblxucCB7XG4gIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eTsgfVxuXG5lbSxcbmkge1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0OyB9XG5cbnN0cm9uZyxcbmIge1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7IH1cblxuc21hbGwge1xuICBmb250LXNpemU6IDgwJTtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7IH1cblxuaDEsIC50aXRsZS0xLFxuaDIsXG4ucnN0IGgxLFxuLnJzdCAudGl0bGUtMSxcbi50aXRsZS0yLFxuaDMsXG4uaDMsXG4ucnN0IGgyLFxuLnJzdCBoMSxcbi5yc3QgLnRpdGxlLTEsXG4ucnN0IC50aXRsZS0yLFxuLnRpdGxlLTMsXG5oNCxcbi5yc3QgaDMsXG4ucnN0IC5oMyxcbi5yc3QgaDIsXG4ucnN0IGgxLFxuLnJzdCAudGl0bGUtMSxcbi5yc3QgLnRpdGxlLTIsXG4ucnN0IC50aXRsZS0zLFxuLnRpdGxlLTQsXG5oNSxcbi5yc3QgaDQsXG4ucnN0IGgzLFxuLnJzdCAuaDMsXG4ucnN0IGgyLFxuLnJzdCBoMSxcbi5yc3QgLnRpdGxlLTEsXG4ucnN0IC50aXRsZS0yLFxuLnJzdCAudGl0bGUtMyxcbi5yc3QgLnRpdGxlLTQsXG4udGl0bGUtNSxcbmg2IHtcbiAgZm9udC1mYW1pbHk6IFwiSW50ZXJcIiwgSGVsdmV0aWNhLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGNvbG9yOiBpbmhlcml0O1xuICB0ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5O1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7IH1cbiAgaDEgc21hbGwsIC50aXRsZS0xIHNtYWxsLFxuICBoMiBzbWFsbCxcbiAgLnJzdCBoMSBzbWFsbCxcbiAgLnJzdCAudGl0bGUtMSBzbWFsbCxcbiAgLnRpdGxlLTIgc21hbGwsXG4gIGgzIHNtYWxsLFxuICAuaDMgc21hbGwsXG4gIC5yc3QgaDIgc21hbGwsXG4gIC5yc3QgaDEgc21hbGwsXG4gIC5yc3QgLnRpdGxlLTEgc21hbGwsXG4gIC5yc3QgLnRpdGxlLTIgc21hbGwsXG4gIC50aXRsZS0zIHNtYWxsLFxuICBoNCBzbWFsbCxcbiAgLnJzdCBoMyBzbWFsbCxcbiAgLnJzdCAuaDMgc21hbGwsXG4gIC5yc3QgaDIgc21hbGwsXG4gIC5yc3QgaDEgc21hbGwsXG4gIC5yc3QgLnRpdGxlLTEgc21hbGwsXG4gIC5yc3QgLnRpdGxlLTIgc21hbGwsXG4gIC5yc3QgLnRpdGxlLTMgc21hbGwsXG4gIC50aXRsZS00IHNtYWxsLFxuICBoNSBzbWFsbCxcbiAgLnJzdCBoNCBzbWFsbCxcbiAgLnJzdCBoMyBzbWFsbCxcbiAgLnJzdCAuaDMgc21hbGwsXG4gIC5yc3QgaDIgc21hbGwsXG4gIC5yc3QgaDEgc21hbGwsXG4gIC5yc3QgLnRpdGxlLTEgc21hbGwsXG4gIC5yc3QgLnRpdGxlLTIgc21hbGwsXG4gIC5yc3QgLnRpdGxlLTMgc21hbGwsXG4gIC5yc3QgLnRpdGxlLTQgc21hbGwsXG4gIC50aXRsZS01IHNtYWxsLFxuICBoNiBzbWFsbCB7XG4gICAgY29sb3I6ICNEREQ7XG4gICAgbGluZS1oZWlnaHQ6IDA7IH1cblxuaDEsIC50aXRsZS0xIHtcbiAgZm9udC1zaXplOiAycmVtOyB9XG5cblxuaDIsXG4ucnN0IGgxLFxuLnJzdCAudGl0bGUtMSxcbi50aXRsZS0yIHtcbiAgZm9udC1zaXplOiAxLjI1cmVtOyB9XG5cblxuaDMsXG4uaDMsXG4ucnN0IGgyLFxuLnJzdCBoMSxcbi5yc3QgLnRpdGxlLTEsXG4ucnN0IC50aXRsZS0yLFxuLnRpdGxlLTMge1xuICBmb250LXNpemU6IDEuMTg3NXJlbTsgfVxuXG5cbmg0LFxuLnJzdCBoMyxcbi5yc3QgLmgzLFxuLnJzdCBoMixcbi5yc3QgaDEsXG4ucnN0IC50aXRsZS0xLFxuLnJzdCAudGl0bGUtMixcbi5yc3QgLnRpdGxlLTMsXG4udGl0bGUtNCB7XG4gIGZvbnQtc2l6ZTogMS4xMjVyZW07IH1cblxuXG5oNSxcbi5yc3QgaDQsXG4ucnN0IGgzLFxuLnJzdCAuaDMsXG4ucnN0IGgyLFxuLnJzdCBoMSxcbi5yc3QgLnRpdGxlLTEsXG4ucnN0IC50aXRsZS0yLFxuLnJzdCAudGl0bGUtMyxcbi5yc3QgLnRpdGxlLTQsXG4udGl0bGUtNSB7XG4gIGZvbnQtc2l6ZTogMS4wNjI1cmVtOyB9XG5cbmg2IHtcbiAgZm9udC1zaXplOiAxcmVtOyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgaDEsIC50aXRsZS0xIHtcbiAgICBmb250LXNpemU6IDIuODc1cmVtOyB9XG4gIFxuICBoMixcbiAgLnJzdCBoMSxcbiAgLnJzdCAudGl0bGUtMSxcbiAgLnRpdGxlLTIge1xuICAgIGZvbnQtc2l6ZTogMi4yNXJlbTsgfVxuICBcbiAgaDMsXG4gIC5oMyxcbiAgLnJzdCBoMixcbiAgLnJzdCBoMSxcbiAgLnJzdCAudGl0bGUtMSxcbiAgLnJzdCAudGl0bGUtMixcbiAgLnRpdGxlLTMge1xuICAgIGZvbnQtc2l6ZTogMS42MjVyZW07IH1cbiAgXG4gIGg0LFxuICAucnN0IGgzLFxuICAucnN0IC5oMyxcbiAgLnJzdCBoMixcbiAgLnJzdCBoMSxcbiAgLnJzdCAudGl0bGUtMSxcbiAgLnJzdCAudGl0bGUtMixcbiAgLnJzdCAudGl0bGUtMyxcbiAgLnRpdGxlLTQge1xuICAgIGZvbnQtc2l6ZTogMS4yNXJlbTsgfVxuICBcbiAgaDUsXG4gIC5yc3QgaDQsXG4gIC5yc3QgaDMsXG4gIC5yc3QgLmgzLFxuICAucnN0IGgyLFxuICAucnN0IGgxLFxuICAucnN0IC50aXRsZS0xLFxuICAucnN0IC50aXRsZS0yLFxuICAucnN0IC50aXRsZS0zLFxuICAucnN0IC50aXRsZS00LFxuICAudGl0bGUtNSB7XG4gICAgZm9udC1zaXplOiAxLjEyNXJlbTsgfVxuICBoNiB7XG4gICAgZm9udC1zaXplOiAxcmVtOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICBoMSwgLnRpdGxlLTEge1xuICAgIGZvbnQtc2l6ZTogNHJlbTsgfSB9XG5cbmEge1xuICBjb2xvcjogI2RkMzMzMztcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgY3Vyc29yOiBwb2ludGVyOyB9XG4gIGE6aG92ZXIsIGE6Zm9jdXMge1xuICAgIGNvbG9yOiAjYzkyMTIxOyB9XG4gIGEgaW1nIHtcbiAgICBib3JkZXI6IDA7IH1cblxuaHIge1xuICBtYXgtd2lkdGg6IDc1cmVtO1xuICBoZWlnaHQ6IDA7XG4gIGJvcmRlci1yaWdodDogMDtcbiAgYm9yZGVyLXRvcDogMDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNEREQ7XG4gIGJvcmRlci1sZWZ0OiAwO1xuICBtYXJnaW46IDEuMjVyZW0gYXV0bztcbiAgY2xlYXI6IGJvdGg7IH1cblxudWwsXG5vbCxcbmRsIHtcbiAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgbGlzdC1zdHlsZS1wb3NpdGlvbjogb3V0c2lkZTsgfVxuXG5saSB7XG4gIGZvbnQtc2l6ZTogaW5oZXJpdDsgfVxuXG51bCB7XG4gIGxpc3Qtc3R5bGUtdHlwZTogZGlzYztcbiAgbWFyZ2luLWxlZnQ6IDEuMjVyZW07IH1cblxub2wge1xuICBtYXJnaW4tbGVmdDogMS4yNXJlbTsgfVxuXG51bCB1bCwgb2wgdWwsIHVsIG9sLCBvbCBvbCB7XG4gIG1hcmdpbi1sZWZ0OiAxLjI1cmVtO1xuICBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbmRsIHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTsgfVxuICBkbCBkdCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMC4zcmVtO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkOyB9XG5cbmJsb2NrcXVvdGUge1xuICBtYXJnaW46IDAgMCAxcmVtO1xuICBwYWRkaW5nOiAwLjU2MjVyZW0gMS4yNXJlbSAwIDEuMTg3NXJlbTtcbiAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjREREOyB9XG4gIGJsb2NrcXVvdGUsIGJsb2NrcXVvdGUgcCB7XG4gICAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgICBjb2xvcjogIzhhOGE4YTsgfVxuXG5jaXRlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtc2l6ZTogMC44MTI1cmVtO1xuICBjb2xvcjogIzhhOGE4YTsgfVxuICBjaXRlOmJlZm9yZSB7XG4gICAgY29udGVudDogJ1xcMjAxNCBcXDAwMjAnOyB9XG5cbmFiYnIge1xuICBjb2xvcjogIzFkMmEyOTtcbiAgY3Vyc29yOiBoZWxwO1xuICBib3JkZXItYm90dG9tOiAxcHggZG90dGVkICMwYTBhMGE7IH1cblxuY29kZSB7XG4gIGZvbnQtZmFtaWx5OiBDb25zb2xhcywgXCJMaWJlcmF0aW9uIE1vbm9cIiwgQ291cmllciwgbW9ub3NwYWNlO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBjb2xvcjogIzBhMGEwYTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0UwRTBFMDtcbiAgYm9yZGVyOiAxcHggc29saWQgI0RERDtcbiAgcGFkZGluZzogMC4xMjVyZW0gMC4zMTI1cmVtIDAuMDYyNXJlbTsgfVxuXG5rYmQge1xuICBwYWRkaW5nOiAwLjEyNXJlbSAwLjI1cmVtIDA7XG4gIG1hcmdpbjogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0UwRTBFMDtcbiAgY29sb3I6ICMwYTBhMGE7XG4gIGZvbnQtZmFtaWx5OiBDb25zb2xhcywgXCJMaWJlcmF0aW9uIE1vbm9cIiwgQ291cmllciwgbW9ub3NwYWNlOyB9XG5cbi5zdWJoZWFkZXIge1xuICBtYXJnaW4tdG9wOiAwLjJyZW07XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgY29sb3I6ICM4YThhOGE7IH1cblxuLmxlYWQge1xuICBmb250LXNpemU6IDEyNSU7XG4gIGxpbmUtaGVpZ2h0OiAxLjY7IH1cblxuLnN0YXQge1xuICBmb250LXNpemU6IDIuNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDE7IH1cbiAgcCArIC5zdGF0IHtcbiAgICBtYXJnaW4tdG9wOiAtMXJlbTsgfVxuXG4ubm8tYnVsbGV0IHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7IH1cblxuLnRleHQtbGVmdCB7XG4gIHRleHQtYWxpZ246IGxlZnQ7IH1cblxuLnRleHQtcmlnaHQge1xuICB0ZXh0LWFsaWduOiByaWdodDsgfVxuXG4udGV4dC1jZW50ZXIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cblxuLnRleHQtanVzdGlmeSB7XG4gIHRleHQtYWxpZ246IGp1c3RpZnk7IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAubWVkaXVtLXRleHQtbGVmdCB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDsgfVxuICAubWVkaXVtLXRleHQtcmlnaHQge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0OyB9XG4gIC5tZWRpdW0tdGV4dC1jZW50ZXIge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAubWVkaXVtLXRleHQtanVzdGlmeSB7XG4gICAgdGV4dC1hbGlnbjoganVzdGlmeTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmxhcmdlLXRleHQtbGVmdCB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDsgfVxuICAubGFyZ2UtdGV4dC1yaWdodCB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7IH1cbiAgLmxhcmdlLXRleHQtY2VudGVyIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgLmxhcmdlLXRleHQtanVzdGlmeSB7XG4gICAgdGV4dC1hbGlnbjoganVzdGlmeTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLnhsYXJnZS10ZXh0LWxlZnQge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7IH1cbiAgLnhsYXJnZS10ZXh0LXJpZ2h0IHtcbiAgICB0ZXh0LWFsaWduOiByaWdodDsgfVxuICAueGxhcmdlLXRleHQtY2VudGVyIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgLnhsYXJnZS10ZXh0LWp1c3RpZnkge1xuICAgIHRleHQtYWxpZ246IGp1c3RpZnk7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gIC54eGxhcmdlLXRleHQtbGVmdCB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDsgfVxuICAueHhsYXJnZS10ZXh0LXJpZ2h0IHtcbiAgICB0ZXh0LWFsaWduOiByaWdodDsgfVxuICAueHhsYXJnZS10ZXh0LWNlbnRlciB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIC54eGxhcmdlLXRleHQtanVzdGlmeSB7XG4gICAgdGV4dC1hbGlnbjoganVzdGlmeTsgfSB9XG5cbi5zaG93LWZvci1wcmludCB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuXG5AbWVkaWEgcHJpbnQge1xuICAqIHtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiBibGFjayAhaW1wb3J0YW50O1xuICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICB0ZXh0LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50OyB9XG4gIC5zaG93LWZvci1wcmludCB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDsgfVxuICAuaGlkZS1mb3ItcHJpbnQge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuICB0YWJsZS5zaG93LWZvci1wcmludCB7XG4gICAgZGlzcGxheTogdGFibGUgIWltcG9ydGFudDsgfVxuICB0aGVhZC5zaG93LWZvci1wcmludCB7XG4gICAgZGlzcGxheTogdGFibGUtaGVhZGVyLWdyb3VwICFpbXBvcnRhbnQ7IH1cbiAgdGJvZHkuc2hvdy1mb3ItcHJpbnQge1xuICAgIGRpc3BsYXk6IHRhYmxlLXJvdy1ncm91cCAhaW1wb3J0YW50OyB9XG4gIHRyLnNob3ctZm9yLXByaW50IHtcbiAgICBkaXNwbGF5OiB0YWJsZS1yb3cgIWltcG9ydGFudDsgfVxuICB0ZC5zaG93LWZvci1wcmludCB7XG4gICAgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50OyB9XG4gIHRoLnNob3ctZm9yLXByaW50IHtcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQ7IH1cbiAgYSxcbiAgYTp2aXNpdGVkIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgfVxuICBhW2hyZWZdOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIiAoXCIgYXR0cihocmVmKSBcIilcIjsgfVxuICAuaXIgYTphZnRlcixcbiAgYVtocmVmXj0namF2YXNjcmlwdDonXTphZnRlcixcbiAgYVtocmVmXj0nIyddOmFmdGVyIHtcbiAgICBjb250ZW50OiAnJzsgfVxuICBhYmJyW3RpdGxlXTphZnRlciB7XG4gICAgY29udGVudDogXCIgKFwiIGF0dHIodGl0bGUpIFwiKVwiOyB9XG4gIHByZSxcbiAgYmxvY2txdW90ZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIzhhOGE4YTtcbiAgICBwYWdlLWJyZWFrLWluc2lkZTogYXZvaWQ7IH1cbiAgdGhlYWQge1xuICAgIGRpc3BsYXk6IHRhYmxlLWhlYWRlci1ncm91cDsgfVxuICB0cixcbiAgaW1nIHtcbiAgICBwYWdlLWJyZWFrLWluc2lkZTogYXZvaWQ7IH1cbiAgaW1nIHtcbiAgICBtYXgtd2lkdGg6IDEwMCUgIWltcG9ydGFudDsgfVxuICBAcGFnZSB7XG4gICAgbWFyZ2luOiAwLjVjbTsgfVxuICBwLFxuICBoMixcbiAgLnJzdCBoMSxcbiAgLnJzdCAudGl0bGUtMSxcbiAgLnRpdGxlLTIsXG4gIGgzLFxuICAuaDMsXG4gIC5yc3QgaDIsXG4gIC5yc3QgaDEsXG4gIC5yc3QgLnRpdGxlLTEsXG4gIC5yc3QgLnRpdGxlLTIsXG4gIC50aXRsZS0zIHtcbiAgICBvcnBoYW5zOiAzO1xuICAgIHdpZG93czogMzsgfVxuICBcbiAgaDIsXG4gIC5yc3QgaDEsXG4gIC5yc3QgLnRpdGxlLTEsXG4gIC50aXRsZS0yLFxuICBoMyxcbiAgLmgzLFxuICAucnN0IGgyLFxuICAucnN0IGgxLFxuICAucnN0IC50aXRsZS0xLFxuICAucnN0IC50aXRsZS0yLFxuICAudGl0bGUtMyB7XG4gICAgcGFnZS1icmVhay1hZnRlcjogYXZvaWQ7IH0gfVxuXG4uYnV0dG9uIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjI1cyBlYXNlLW91dCwgY29sb3IgMC4yNXMgZWFzZS1vdXQ7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBwYWRkaW5nOiAwLjg1ZW0gMWVtO1xuICBtYXJnaW46IDAgMXJlbSAxcmVtIDA7XG4gIGZvbnQtc2l6ZTogMC45cmVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGQzMzMzO1xuICBjb2xvcjogI2ZmZjsgfVxuICBbZGF0YS13aGF0aW5wdXQ9J21vdXNlJ10gLmJ1dHRvbiB7XG4gICAgb3V0bGluZTogMDsgfVxuICAuYnV0dG9uOmhvdmVyLCAuYnV0dG9uOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYzYyMTIxO1xuICAgIGNvbG9yOiAjZmZmOyB9XG4gIC5idXR0b24udGlueSB7XG4gICAgZm9udC1zaXplOiAwLjZyZW07IH1cbiAgLmJ1dHRvbi5zbWFsbCB7XG4gICAgZm9udC1zaXplOiAwLjc1cmVtOyB9XG4gIC5idXR0b24ubGFyZ2Uge1xuICAgIGZvbnQtc2l6ZTogMS4yNXJlbTsgfVxuICAuYnV0dG9uLmV4cGFuZGVkIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7IH1cbiAgLmJ1dHRvbi5wcmltYXJ5IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjE5OWU4O1xuICAgIGNvbG9yOiAjZmZmOyB9XG4gICAgLmJ1dHRvbi5wcmltYXJ5OmhvdmVyLCAuYnV0dG9uLnByaW1hcnk6Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzE0N2NjMDtcbiAgICAgIGNvbG9yOiAjZmZmOyB9XG4gIC5idXR0b24uc2Vjb25kYXJ5IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNzc3O1xuICAgIGNvbG9yOiAjZmZmOyB9XG4gICAgLmJ1dHRvbi5zZWNvbmRhcnk6aG92ZXIsIC5idXR0b24uc2Vjb25kYXJ5OmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICM1ZjVmNWY7XG4gICAgICBjb2xvcjogI2ZmZjsgfVxuICAuYnV0dG9uLnN1Y2Nlc3Mge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMzYWRiNzY7XG4gICAgY29sb3I6ICNmZmY7IH1cbiAgICAuYnV0dG9uLnN1Y2Nlc3M6aG92ZXIsIC5idXR0b24uc3VjY2Vzczpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjJiYjViO1xuICAgICAgY29sb3I6ICNmZmY7IH1cbiAgLmJ1dHRvbi53YXJuaW5nIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZhZTAwO1xuICAgIGNvbG9yOiAjZmZmOyB9XG4gICAgLmJ1dHRvbi53YXJuaW5nOmhvdmVyLCAuYnV0dG9uLndhcm5pbmc6Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2NjOGIwMDtcbiAgICAgIGNvbG9yOiAjZmZmOyB9XG4gIC5idXR0b24uYWxlcnQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNlYzU4NDA7XG4gICAgY29sb3I6ICNmZmY7IH1cbiAgICAuYnV0dG9uLmFsZXJ0OmhvdmVyLCAuYnV0dG9uLmFsZXJ0OmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNkYTMxMTY7XG4gICAgICBjb2xvcjogI2ZmZjsgfVxuICAuYnV0dG9uLmhvbGxvdyB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIzIxOTllODtcbiAgICBjb2xvcjogIzIxOTllODsgfVxuICAgIC5idXR0b24uaG9sbG93LCAuYnV0dG9uLmhvbGxvdzpob3ZlciwgLmJ1dHRvbi5ob2xsb3c6Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgICAuYnV0dG9uLmhvbGxvdzpob3ZlciwgLmJ1dHRvbi5ob2xsb3c6Zm9jdXMge1xuICAgICAgYm9yZGVyLWNvbG9yOiAjMGM0ZDc4O1xuICAgICAgY29sb3I6ICMwYzRkNzg7IH1cbiAgICAuYnV0dG9uLmhvbGxvdy5wcmltYXJ5IHtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICMyMTk5ZTg7XG4gICAgICBjb2xvcjogIzIxOTllODsgfVxuICAgICAgLmJ1dHRvbi5ob2xsb3cucHJpbWFyeTpob3ZlciwgLmJ1dHRvbi5ob2xsb3cucHJpbWFyeTpmb2N1cyB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogIzBjNGQ3ODtcbiAgICAgICAgY29sb3I6ICMwYzRkNzg7IH1cbiAgICAuYnV0dG9uLmhvbGxvdy5zZWNvbmRhcnkge1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgIzc3NztcbiAgICAgIGNvbG9yOiAjNzc3OyB9XG4gICAgICAuYnV0dG9uLmhvbGxvdy5zZWNvbmRhcnk6aG92ZXIsIC5idXR0b24uaG9sbG93LnNlY29uZGFyeTpmb2N1cyB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogIzNjM2MzYztcbiAgICAgICAgY29sb3I6ICMzYzNjM2M7IH1cbiAgICAuYnV0dG9uLmhvbGxvdy5zdWNjZXNzIHtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICMzYWRiNzY7XG4gICAgICBjb2xvcjogIzNhZGI3NjsgfVxuICAgICAgLmJ1dHRvbi5ob2xsb3cuc3VjY2Vzczpob3ZlciwgLmJ1dHRvbi5ob2xsb3cuc3VjY2Vzczpmb2N1cyB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogIzE1NzUzOTtcbiAgICAgICAgY29sb3I6ICMxNTc1Mzk7IH1cbiAgICAuYnV0dG9uLmhvbGxvdy53YXJuaW5nIHtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNmZmFlMDA7XG4gICAgICBjb2xvcjogI2ZmYWUwMDsgfVxuICAgICAgLmJ1dHRvbi5ob2xsb3cud2FybmluZzpob3ZlciwgLmJ1dHRvbi5ob2xsb3cud2FybmluZzpmb2N1cyB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogIzgwNTcwMDtcbiAgICAgICAgY29sb3I6ICM4MDU3MDA7IH1cbiAgICAuYnV0dG9uLmhvbGxvdy5hbGVydCB7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAjZWM1ODQwO1xuICAgICAgY29sb3I6ICNlYzU4NDA7IH1cbiAgICAgIC5idXR0b24uaG9sbG93LmFsZXJ0OmhvdmVyLCAuYnV0dG9uLmhvbGxvdy5hbGVydDpmb2N1cyB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogIzg4MWYwZTtcbiAgICAgICAgY29sb3I6ICM4ODFmMGU7IH1cbiAgLmJ1dHRvbi5kaXNhYmxlZCwgLmJ1dHRvbltkaXNhYmxlZF0ge1xuICAgIG9wYWNpdHk6IDAuMjU7XG4gICAgY3Vyc29yOiBub3QtYWxsb3dlZDsgfVxuICAuYnV0dG9uLmRyb3Bkb3duOjphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJvcmRlcjogaW5zZXQgMC40ZW07XG4gICAgYm9yZGVyLWNvbG9yOiAjZjdmN2Y3IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci10b3Atc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogMC40ZW07XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIG1hcmdpbi1sZWZ0OiAxZW07XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG4gIC5idXR0b24uYXJyb3ctb25seTo6YWZ0ZXIge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIGZsb2F0OiBub25lO1xuICAgIHRvcDogLTAuMWVtOyB9XG5cblt0eXBlPSd0ZXh0J10sIFt0eXBlPSdwYXNzd29yZCddLCBbdHlwZT0nZGF0ZSddLCBbdHlwZT0nZGF0ZXRpbWUnXSwgW3R5cGU9J2RhdGV0aW1lLWxvY2FsJ10sIFt0eXBlPSdtb250aCddLCBbdHlwZT0nd2VlayddLCBbdHlwZT0nZW1haWwnXSwgW3R5cGU9J251bWJlciddLCBbdHlwZT0nc2VhcmNoJ10sIFt0eXBlPSd0ZWwnXSwgW3R5cGU9J3RpbWUnXSwgW3R5cGU9J3VybCddLCBbdHlwZT0nY29sb3InXSxcbnRleHRhcmVhIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDIuNDM3NXJlbTtcbiAgcGFkZGluZzogMC41cmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCAjREREO1xuICBtYXJnaW46IDAgMCAxcmVtO1xuICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBjb2xvcjogIzhhOGE4YTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y3ZjdmNztcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAxcHggMnB4IHJnYmEoMTAsIDEwLCAxMCwgMC4xKTtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAwLjVzLCBib3JkZXItY29sb3IgMC4yNXMgZWFzZS1pbi1vdXQ7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgLW1vei1hcHBlYXJhbmNlOiBub25lOyB9XG4gIFt0eXBlPSd0ZXh0J106Zm9jdXMsIFt0eXBlPSdwYXNzd29yZCddOmZvY3VzLCBbdHlwZT0nZGF0ZSddOmZvY3VzLCBbdHlwZT0nZGF0ZXRpbWUnXTpmb2N1cywgW3R5cGU9J2RhdGV0aW1lLWxvY2FsJ106Zm9jdXMsIFt0eXBlPSdtb250aCddOmZvY3VzLCBbdHlwZT0nd2VlayddOmZvY3VzLCBbdHlwZT0nZW1haWwnXTpmb2N1cywgW3R5cGU9J251bWJlciddOmZvY3VzLCBbdHlwZT0nc2VhcmNoJ106Zm9jdXMsIFt0eXBlPSd0ZWwnXTpmb2N1cywgW3R5cGU9J3RpbWUnXTpmb2N1cywgW3R5cGU9J3VybCddOmZvY3VzLCBbdHlwZT0nY29sb3InXTpmb2N1cyxcbiAgdGV4dGFyZWE6Zm9jdXMge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICM4YThhOGE7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2Y3ZjdmNztcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIGJveC1zaGFkb3c6IDAgMCA1cHggI0RERDtcbiAgICB0cmFuc2l0aW9uOiBib3gtc2hhZG93IDAuNXMsIGJvcmRlci1jb2xvciAwLjI1cyBlYXNlLWluLW91dDsgfVxuXG50ZXh0YXJlYSB7XG4gIG1heC13aWR0aDogMTAwJTsgfVxuICB0ZXh0YXJlYVtyb3dzXSB7XG4gICAgaGVpZ2h0OiBhdXRvOyB9XG5cbmlucHV0OjpwbGFjZWhvbGRlcixcbnRleHRhcmVhOjpwbGFjZWhvbGRlciB7XG4gIGNvbG9yOiAjREREOyB9XG5cbmlucHV0OmRpc2FibGVkLCBpbnB1dFtyZWFkb25seV0sXG50ZXh0YXJlYTpkaXNhYmxlZCxcbnRleHRhcmVhW3JlYWRvbmx5XSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNFMEUwRTA7XG4gIGN1cnNvcjogZGVmYXVsdDsgfVxuXG5bdHlwZT0nc3VibWl0J10sXG5bdHlwZT0nYnV0dG9uJ10ge1xuICBib3JkZXItcmFkaXVzOiAwO1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIC1tb3otYXBwZWFyYW5jZTogbm9uZTsgfVxuXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDsgfVxuXG5bdHlwZT0nZmlsZSddLFxuW3R5cGU9J2NoZWNrYm94J10sXG5bdHlwZT0ncmFkaW8nXSB7XG4gIG1hcmdpbjogMCAwIDFyZW07IH1cblxuW3R5cGU9J2NoZWNrYm94J10gKyBsYWJlbCxcblt0eXBlPSdyYWRpbyddICsgbGFiZWwge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi1sZWZ0OiAwLjVyZW07XG4gIG1hcmdpbi1yaWdodDogMXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lOyB9XG4gIFt0eXBlPSdjaGVja2JveCddICsgbGFiZWxbZm9yXSxcbiAgW3R5cGU9J3JhZGlvJ10gKyBsYWJlbFtmb3JdIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7IH1cblxubGFiZWwgPiBbdHlwZT0nY2hlY2tib3gnXSxcbmxhYmVsID4gW3R5cGU9J3JhZGlvJ10ge1xuICBtYXJnaW4tcmlnaHQ6IDAuNXJlbTsgfVxuXG5bdHlwZT0nZmlsZSddIHtcbiAgd2lkdGg6IDEwMCU7IH1cblxubGFiZWwge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwO1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBsaW5lLWhlaWdodDogMS44O1xuICBjb2xvcjogIzBhMGEwYTsgfVxuICBsYWJlbC5taWRkbGUge1xuICAgIG1hcmdpbjogMCAwIDFyZW07XG4gICAgcGFkZGluZzogMC41NjI1cmVtIDA7IH1cblxuLmhlbHAtdGV4dCB7XG4gIG1hcmdpbi10b3A6IC0wLjVyZW07XG4gIGZvbnQtc2l6ZTogMC44MTI1cmVtO1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIGNvbG9yOiAjMzMzOyB9XG5cbi5pbnB1dC1ncm91cCB7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTsgfVxuICAuaW5wdXQtZ3JvdXAgPiA6Zmlyc3QtY2hpbGQge1xuICAgIGJvcmRlci1yYWRpdXM6IDAgMCAwIDA7IH1cbiAgLmlucHV0LWdyb3VwID4gOmxhc3QtY2hpbGQgPiAqIHtcbiAgICBib3JkZXItcmFkaXVzOiAwIDAgMCAwOyB9XG5cbi5pbnB1dC1ncm91cC1sYWJlbCwgLmlucHV0LWdyb3VwLWZpZWxkLCAuaW5wdXQtZ3JvdXAtYnV0dG9uIHtcbiAgbWFyZ2luOiAwO1xuICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyB9XG5cbi5pbnB1dC1ncm91cC1sYWJlbCB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcGFkZGluZzogMCAxcmVtO1xuICBiYWNrZ3JvdW5kOiAjRTBFMEUwO1xuICBjb2xvcjogIzBhMGEwYTtcbiAgYm9yZGVyOiAxcHggc29saWQgI0RERDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgd2lkdGg6IDElO1xuICBoZWlnaHQ6IDEwMCU7IH1cbiAgLmlucHV0LWdyb3VwLWxhYmVsOmZpcnN0LWNoaWxkIHtcbiAgICBib3JkZXItcmlnaHQ6IDA7IH1cbiAgLmlucHV0LWdyb3VwLWxhYmVsOmxhc3QtY2hpbGQge1xuICAgIGJvcmRlci1sZWZ0OiAwOyB9XG5cbi5pbnB1dC1ncm91cC1maWVsZCB7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGhlaWdodDogMi41cmVtOyB9XG5cbi5pbnB1dC1ncm91cC1idXR0b24ge1xuICBwYWRkaW5nLXRvcDogMDtcbiAgcGFkZGluZy1ib3R0b206IDA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgaGVpZ2h0OiAxMDAlO1xuICB3aWR0aDogMSU7IH1cbiAgLmlucHV0LWdyb3VwLWJ1dHRvbiBhLFxuICAuaW5wdXQtZ3JvdXAtYnV0dG9uIGlucHV0LFxuICAuaW5wdXQtZ3JvdXAtYnV0dG9uIGJ1dHRvbiB7XG4gICAgbWFyZ2luOiAwOyB9XG5cbi5pbnB1dC1ncm91cCAuaW5wdXQtZ3JvdXAtYnV0dG9uIHtcbiAgZGlzcGxheTogdGFibGUtY2VsbDsgfVxuXG5maWVsZHNldCB7XG4gIGJvcmRlcjogMDtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAwOyB9XG5cbmxlZ2VuZCB7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiAgbWF4LXdpZHRoOiAxMDAlOyB9XG5cbi5maWVsZHNldCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNEREQ7XG4gIHBhZGRpbmc6IDEuMjVyZW07XG4gIG1hcmdpbjogMS4xMjVyZW0gMDsgfVxuICAuZmllbGRzZXQgbGVnZW5kIHtcbiAgICBiYWNrZ3JvdW5kOiAjZjdmN2Y3O1xuICAgIHBhZGRpbmc6IDAgMC4xODc1cmVtO1xuICAgIG1hcmdpbjogMDtcbiAgICBtYXJnaW4tbGVmdDogLTAuMTg3NXJlbTsgfVxuXG5zZWxlY3Qge1xuICBoZWlnaHQ6IDIuNDM3NXJlbTtcbiAgcGFkZGluZzogMC41cmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCAjREREO1xuICBtYXJnaW46IDAgMCAxcmVtO1xuICBmb250LXNpemU6IDFyZW07XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICBjb2xvcjogIzhhOGE4YTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZhZmFmYTtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAtbW96LWFwcGVhcmFuY2U6IG5vbmU7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnZGF0YTppbWFnZS9zdmcreG1sO3V0ZjgsPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgdmVyc2lvbj1cIjEuMVwiIHdpZHRoPVwiMzJcIiBoZWlnaHQ9XCIyNFwiIHZpZXdCb3g9XCIwIDAgMzIgMjRcIj48cG9seWdvbiBwb2ludHM9XCIwLDAgMzIsMCAxNiwyNFwiIHN0eWxlPVwiZmlsbDogcmdiJTI4NTEsIDUxLCA1MSUyOVwiPjwvcG9seWdvbj48L3N2Zz4nKTtcbiAgYmFja2dyb3VuZC1zaXplOiA5cHggNnB4O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCBjZW50ZXI7XG4gIGJhY2tncm91bmQtb3JpZ2luOiBjb250ZW50LWJveDtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAwXFwwKSB7XG4gICAgc2VsZWN0IHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBQ0FBQUFBWUNBWUFBQUNiVS84MEFBQUFHWFJGV0hSVGIyWjBkMkZ5WlFCQlpHOWlaU0JKYldGblpWSmxZV1I1Y2NsbFBBQUFBSXBKUkVGVWVOckVrY2tOZ0RBTUJCZlJrRXQwT2JSQkJkc0dYVURnbVFmSzRYaEgybThjelFBQXkyN1IzdHN3NFFmZTJ4OHVPTzZvWUxiNkdsT29yM0dGK3N3VVJBT21VSitSd3RFSnM5V3ZUR0VZeEJYcUkxTVFBWmhDZlVRS1J6RE1WaitUd3JBSVY2anZTVUVrWUFyMUxTa2N5VEJiL1YrS1lmWDd4QWV1c3Ezc0xEdEdIM2tFR0FDUFdJZmxOWmZoUlFBQUFBQkpSVTVFcmtKZ2dnPT1cIik7IH0gfVxuICBzZWxlY3Q6ZGlzYWJsZWQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNFMEUwRTA7XG4gICAgY3Vyc29yOiBkZWZhdWx0OyB9XG4gIHNlbGVjdDo6LW1zLWV4cGFuZCB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICBzZWxlY3RbbXVsdGlwbGVdIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTsgfVxuXG4uaXMtaW52YWxpZC1pbnB1dDpub3QoOmZvY3VzKSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjM2LCA4OCwgNjQsIDAuMSk7XG4gIGJvcmRlci1jb2xvcjogI2VjNTg0MDsgfVxuXG4uaXMtaW52YWxpZC1sYWJlbCB7XG4gIGNvbG9yOiAjZWM1ODQwOyB9XG5cbi5mb3JtLWVycm9yIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgbWFyZ2luLXRvcDogLTAuNXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgZm9udC1zaXplOiAwLjc1cmVtO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgY29sb3I6ICNlYzU4NDA7IH1cbiAgLmZvcm0tZXJyb3IuaXMtdmlzaWJsZSB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cblxuLmhpZGUge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cblxuLmludmlzaWJsZSB7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45Mzc1ZW0pIHtcbiAgLmhpZGUtZm9yLXNtYWxsLW9ubHkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDBlbSksIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuc2hvdy1mb3Itc21hbGwtb25seSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuaGlkZS1mb3ItbWVkaXVtIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45Mzc1ZW0pIHtcbiAgLnNob3ctZm9yLW1lZGl1bSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAuaGlkZS1mb3ItbWVkaXVtLW9ubHkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5LjkzNzVlbSksIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuc2hvdy1mb3ItbWVkaXVtLW9ubHkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmhpZGUtZm9yLWxhcmdlIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgLnNob3ctZm9yLWxhcmdlIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSBhbmQgKG1heC13aWR0aDogNzQuOTM3NWVtKSB7XG4gIC5oaWRlLWZvci1sYXJnZS1vbmx5IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pLCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLnNob3ctZm9yLWxhcmdlLW9ubHkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLmhpZGUtZm9yLXhsYXJnZSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzQuOTM3NWVtKSB7XG4gIC5zaG93LWZvci14bGFyZ2Uge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIGFuZCAobWF4LXdpZHRoOiA4OS45Mzc1ZW0pIHtcbiAgLmhpZGUtZm9yLXhsYXJnZS1vbmx5IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NC45Mzc1ZW0pLCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgLnNob3ctZm9yLXhsYXJnZS1vbmx5IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gIC5oaWRlLWZvci14eGxhcmdlIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4OS45Mzc1ZW0pIHtcbiAgLnNob3ctZm9yLXh4bGFyZ2Uge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgLmhpZGUtZm9yLXh4bGFyZ2Utb25seSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogODkuOTM3NWVtKSB7XG4gIC5zaG93LWZvci14eGxhcmdlLW9ubHkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbi5zaG93LWZvci1zcixcbi5zaG93LW9uLWZvY3VzIHtcbiAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG4gIHdpZHRoOiAxcHg7XG4gIGhlaWdodDogMXB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBjbGlwOiByZWN0KDAsIDAsIDAsIDApOyB9XG5cbi5zaG93LW9uLWZvY3VzOmFjdGl2ZSwgLnNob3ctb24tZm9jdXM6Zm9jdXMge1xuICBwb3NpdGlvbjogc3RhdGljICFpbXBvcnRhbnQ7XG4gIGhlaWdodDogYXV0bztcbiAgd2lkdGg6IGF1dG87XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xuICBjbGlwOiBhdXRvOyB9XG5cbi5zaG93LWZvci1sYW5kc2NhcGUsXG4uaGlkZS1mb3ItcG9ydHJhaXQge1xuICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChvcmllbnRhdGlvbjogbGFuZHNjYXBlKSB7XG4gICAgLnNob3ctZm9yLWxhbmRzY2FwZSxcbiAgICAuaGlkZS1mb3ItcG9ydHJhaXQge1xuICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChvcmllbnRhdGlvbjogcG9ydHJhaXQpIHtcbiAgICAuc2hvdy1mb3ItbGFuZHNjYXBlLFxuICAgIC5oaWRlLWZvci1wb3J0cmFpdCB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG4uaGlkZS1mb3ItbGFuZHNjYXBlLFxuLnNob3ctZm9yLXBvcnRyYWl0IHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChvcmllbnRhdGlvbjogbGFuZHNjYXBlKSB7XG4gICAgLmhpZGUtZm9yLWxhbmRzY2FwZSxcbiAgICAuc2hvdy1mb3ItcG9ydHJhaXQge1xuICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG9yaWVudGF0aW9uOiBwb3J0cmFpdCkge1xuICAgIC5oaWRlLWZvci1sYW5kc2NhcGUsXG4gICAgLnNob3ctZm9yLXBvcnRyYWl0IHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH0gfVxuXG4uZmxvYXQtbGVmdCB7XG4gIGZsb2F0OiBsZWZ0ICFpbXBvcnRhbnQ7IH1cblxuLmZsb2F0LXJpZ2h0IHtcbiAgZmxvYXQ6IHJpZ2h0ICFpbXBvcnRhbnQ7IH1cblxuLmZsb2F0LWNlbnRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XG5cbi5jbGVhcmZpeDo6YmVmb3JlLCAuZmxhdC1mb3JtIGZvcm0gLnNtYXJ0LWZpZWxkLmhvbGRlci1pbmxpbmUtcmFkaW86OmJlZm9yZSxcbi5mbGF0LWZvcm0gZm9ybSAuaG9sZGVyLmhvbGRlci1pbmxpbmUtcmFkaW86OmJlZm9yZSxcbi5mbGF0LWZvcm0gLndyYXBwZXIgLnNtYXJ0LWZpZWxkLmhvbGRlci1pbmxpbmUtcmFkaW86OmJlZm9yZSxcbi5mbGF0LWZvcm0gLndyYXBwZXIgLmhvbGRlci5ob2xkZXItaW5saW5lLXJhZGlvOjpiZWZvcmUsIC5jbGVhcmZpeDo6YWZ0ZXIsIC5mbGF0LWZvcm0gZm9ybSAuc21hcnQtZmllbGQuaG9sZGVyLWlubGluZS1yYWRpbzo6YWZ0ZXIsXG4uZmxhdC1mb3JtIGZvcm0gLmhvbGRlci5ob2xkZXItaW5saW5lLXJhZGlvOjphZnRlcixcbi5mbGF0LWZvcm0gLndyYXBwZXIgLnNtYXJ0LWZpZWxkLmhvbGRlci1pbmxpbmUtcmFkaW86OmFmdGVyLFxuLmZsYXQtZm9ybSAud3JhcHBlciAuaG9sZGVyLmhvbGRlci1pbmxpbmUtcmFkaW86OmFmdGVyIHtcbiAgY29udGVudDogJyAnO1xuICBkaXNwbGF5OiB0YWJsZTsgfVxuXG4uY2xlYXJmaXg6OmFmdGVyLCAuZmxhdC1mb3JtIGZvcm0gLnNtYXJ0LWZpZWxkLmhvbGRlci1pbmxpbmUtcmFkaW86OmFmdGVyLFxuLmZsYXQtZm9ybSBmb3JtIC5ob2xkZXIuaG9sZGVyLWlubGluZS1yYWRpbzo6YWZ0ZXIsXG4uZmxhdC1mb3JtIC53cmFwcGVyIC5zbWFydC1maWVsZC5ob2xkZXItaW5saW5lLXJhZGlvOjphZnRlcixcbi5mbGF0LWZvcm0gLndyYXBwZXIgLmhvbGRlci5ob2xkZXItaW5saW5lLXJhZGlvOjphZnRlciB7XG4gIGNsZWFyOiBib3RoOyB9XG5cbi5hY2NvcmRpb24ge1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gIGJhY2tncm91bmQ6ICNmN2Y3Zjc7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNFMEUwRTA7XG4gIGJvcmRlci1ib3R0b206IDA7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIG1hcmdpbi1sZWZ0OiAwOyB9XG5cbi5hY2NvcmRpb24tdGl0bGUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogMS4yNXJlbSAxcmVtO1xuICBsaW5lLWhlaWdodDogMTtcbiAgZm9udC1zaXplOiAwLjc1cmVtO1xuICBjb2xvcjogI2RkMzMzMztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI0UwRTBFMDsgfVxuICAuYWNjb3JkaW9uLXRpdGxlOmhvdmVyLCAuYWNjb3JkaW9uLXRpdGxlOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRTBFMEUwOyB9XG4gIC5hY2NvcmRpb24tdGl0bGU6OmJlZm9yZSB7XG4gICAgY29udGVudDogJysnO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMXJlbTtcbiAgICB0b3A6IDUwJTtcbiAgICBtYXJnaW4tdG9wOiAtMC41cmVtOyB9XG4gIC5pcy1hY3RpdmUgPiAuYWNjb3JkaW9uLXRpdGxlOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICfigJMnOyB9XG5cbi5hY2NvcmRpb24tY29udGVudCB7XG4gIHBhZGRpbmc6IDFyZW07XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjRTBFMEUwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjdmN2Y3OyB9XG5cbi5iYWRnZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZzogMC4zZW07XG4gIG1pbi13aWR0aDogMi4xZW07XG4gIGZvbnQtc2l6ZTogMC42cmVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgYmFja2dyb3VuZDogI2RkMzMzMztcbiAgY29sb3I6ICNmN2Y3Zjc7IH1cbiAgLmJhZGdlLnNlY29uZGFyeSB7XG4gICAgYmFja2dyb3VuZDogIzc3NztcbiAgICBjb2xvcjogI2Y3ZjdmNzsgfVxuICAuYmFkZ2Uuc3VjY2VzcyB7XG4gICAgYmFja2dyb3VuZDogIzNhZGI3NjtcbiAgICBjb2xvcjogI2Y3ZjdmNzsgfVxuICAuYmFkZ2Uud2FybmluZyB7XG4gICAgYmFja2dyb3VuZDogI2ZmYWUwMDtcbiAgICBjb2xvcjogI2Y3ZjdmNzsgfVxuICAuYmFkZ2UuYWxlcnQge1xuICAgIGJhY2tncm91bmQ6ICNlYzU4NDA7XG4gICAgY29sb3I6ICNmN2Y3Zjc7IH1cblxuLmJyZWFkY3J1bWJzIHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgbWFyZ2luOiAwIDAgMXJlbSAwOyB9XG4gIC5icmVhZGNydW1iczo6YmVmb3JlLCAuYnJlYWRjcnVtYnM6OmFmdGVyIHtcbiAgICBjb250ZW50OiAnICc7XG4gICAgZGlzcGxheTogdGFibGU7IH1cbiAgLmJyZWFkY3J1bWJzOjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgLmJyZWFkY3J1bWJzIGxpIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBjb2xvcjogIzBhMGEwYTtcbiAgICBmb250LXNpemU6IDAuNjg3NXJlbTtcbiAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxuICAgIC5icmVhZGNydW1icyBsaTpub3QoOmxhc3QtY2hpbGQpOjphZnRlciB7XG4gICAgICBjb2xvcjogI0RERDtcbiAgICAgIGNvbnRlbnQ6IFwiL1wiO1xuICAgICAgbWFyZ2luOiAwIDAuNzVyZW07XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB0b3A6IDFweDtcbiAgICAgIG9wYWNpdHk6IDE7IH1cbiAgLmJyZWFkY3J1bWJzIGEge1xuICAgIGNvbG9yOiAjZGQzMzMzOyB9XG4gICAgLmJyZWFkY3J1bWJzIGE6aG92ZXIge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IH1cbiAgLmJyZWFkY3J1bWJzIC5kaXNhYmxlZCB7XG4gICAgY29sb3I6ICNEREQ7XG4gICAgY3Vyc29yOiBub3QtYWxsb3dlZDsgfVxuXG4uYnV0dG9uLWdyb3VwIHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgZm9udC1zaXplOiAwOyB9XG4gIC5idXR0b24tZ3JvdXA6OmJlZm9yZSwgLmJ1dHRvbi1ncm91cDo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcgJztcbiAgICBkaXNwbGF5OiB0YWJsZTsgfVxuICAuYnV0dG9uLWdyb3VwOjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgLmJ1dHRvbi1ncm91cCAuYnV0dG9uIHtcbiAgICBtYXJnaW46IDA7XG4gICAgZm9udC1zaXplOiAwLjlyZW07IH1cbiAgICAuYnV0dG9uLWdyb3VwIC5idXR0b246bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDFweDsgfVxuICAuYnV0dG9uLWdyb3VwLnRpbnkgLmJ1dHRvbiB7XG4gICAgZm9udC1zaXplOiAwLjZyZW07IH1cbiAgLmJ1dHRvbi1ncm91cC5zbWFsbCAuYnV0dG9uIHtcbiAgICBmb250LXNpemU6IDAuNzVyZW07IH1cbiAgLmJ1dHRvbi1ncm91cC5sYXJnZSAuYnV0dG9uIHtcbiAgICBmb250LXNpemU6IDEuMjVyZW07IH1cbiAgLmJ1dHRvbi1ncm91cC5leHBhbmRlZCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMXB4OyB9XG4gICAgLmJ1dHRvbi1ncm91cC5leHBhbmRlZDo6YmVmb3JlLCAuYnV0dG9uLWdyb3VwLmV4cGFuZGVkOjphZnRlciB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgLmJ1dHRvbi1ncm91cC5leHBhbmRlZCAuYnV0dG9uOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDIpLCAuYnV0dG9uLWdyb3VwLmV4cGFuZGVkIC5idXR0b246Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoMik6Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoMikgfiAuYnV0dG9uIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHdpZHRoOiA1MCU7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDFweDsgfVxuICAgIC5idXR0b24tZ3JvdXAuZXhwYW5kZWQgLmJ1dHRvbjpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCgzKSwgLmJ1dHRvbi1ncm91cC5leHBhbmRlZCAuYnV0dG9uOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDMpOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDMpIH4gLmJ1dHRvbiB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB3aWR0aDogMzMuMzMzMzMlO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAxcHg7IH1cbiAgICAuYnV0dG9uLWdyb3VwLmV4cGFuZGVkIC5idXR0b246Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoNCksIC5idXR0b24tZ3JvdXAuZXhwYW5kZWQgLmJ1dHRvbjpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCg0KTpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCg0KSB+IC5idXR0b24ge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgd2lkdGg6IDI1JTtcbiAgICAgIG1hcmdpbi1yaWdodDogMXB4OyB9XG4gICAgLmJ1dHRvbi1ncm91cC5leHBhbmRlZCAuYnV0dG9uOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDUpLCAuYnV0dG9uLWdyb3VwLmV4cGFuZGVkIC5idXR0b246Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoNSk6Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoNSkgfiAuYnV0dG9uIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHdpZHRoOiAyMCU7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDFweDsgfVxuICAgIC5idXR0b24tZ3JvdXAuZXhwYW5kZWQgLmJ1dHRvbjpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCg2KSwgLmJ1dHRvbi1ncm91cC5leHBhbmRlZCAuYnV0dG9uOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDYpOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDYpIH4gLmJ1dHRvbiB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB3aWR0aDogMTYuNjY2NjclO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAxcHg7IH1cbiAgLmJ1dHRvbi1ncm91cC5wcmltYXJ5IC5idXR0b24ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMyMTk5ZTg7XG4gICAgY29sb3I6ICNmZmY7IH1cbiAgICAuYnV0dG9uLWdyb3VwLnByaW1hcnkgLmJ1dHRvbjpob3ZlciwgLmJ1dHRvbi1ncm91cC5wcmltYXJ5IC5idXR0b246Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzE0N2NjMDtcbiAgICAgIGNvbG9yOiAjZmZmOyB9XG4gIC5idXR0b24tZ3JvdXAuc2Vjb25kYXJ5IC5idXR0b24ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM3Nzc7XG4gICAgY29sb3I6ICNmZmY7IH1cbiAgICAuYnV0dG9uLWdyb3VwLnNlY29uZGFyeSAuYnV0dG9uOmhvdmVyLCAuYnV0dG9uLWdyb3VwLnNlY29uZGFyeSAuYnV0dG9uOmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICM1ZjVmNWY7XG4gICAgICBjb2xvcjogI2ZmZjsgfVxuICAuYnV0dG9uLWdyb3VwLnN1Y2Nlc3MgLmJ1dHRvbiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzNhZGI3NjtcbiAgICBjb2xvcjogI2ZmZjsgfVxuICAgIC5idXR0b24tZ3JvdXAuc3VjY2VzcyAuYnV0dG9uOmhvdmVyLCAuYnV0dG9uLWdyb3VwLnN1Y2Nlc3MgLmJ1dHRvbjpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjJiYjViO1xuICAgICAgY29sb3I6ICNmZmY7IH1cbiAgLmJ1dHRvbi1ncm91cC53YXJuaW5nIC5idXR0b24ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmFlMDA7XG4gICAgY29sb3I6ICNmZmY7IH1cbiAgICAuYnV0dG9uLWdyb3VwLndhcm5pbmcgLmJ1dHRvbjpob3ZlciwgLmJ1dHRvbi1ncm91cC53YXJuaW5nIC5idXR0b246Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2NjOGIwMDtcbiAgICAgIGNvbG9yOiAjZmZmOyB9XG4gIC5idXR0b24tZ3JvdXAuYWxlcnQgLmJ1dHRvbiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2VjNTg0MDtcbiAgICBjb2xvcjogI2ZmZjsgfVxuICAgIC5idXR0b24tZ3JvdXAuYWxlcnQgLmJ1dHRvbjpob3ZlciwgLmJ1dHRvbi1ncm91cC5hbGVydCAuYnV0dG9uOmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNkYTMxMTY7XG4gICAgICBjb2xvcjogI2ZmZjsgfVxuICAuYnV0dG9uLWdyb3VwLnN0YWNrZWQgLmJ1dHRvbiwgLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1zbWFsbCAuYnV0dG9uLCAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLW1lZGl1bSAuYnV0dG9uIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCB0cmFuc3BhcmVudDsgfVxuICAgIC5idXR0b24tZ3JvdXAuc3RhY2tlZCAuYnV0dG9uOm5vdCg6bGFzdC1jaGlsZCksIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3Itc21hbGwgLmJ1dHRvbjpub3QoOmxhc3QtY2hpbGQpLCAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLW1lZGl1bSAuYnV0dG9uOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNmN2Y3Zjc7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3Itc21hbGwgLmJ1dHRvbiB7XG4gICAgICB3aWR0aDogYXV0bzsgfVxuICAgICAgLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1zbWFsbCAuYnV0dG9uOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDFweDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLW1lZGl1bSAuYnV0dG9uIHtcbiAgICAgIHdpZHRoOiBhdXRvOyB9XG4gICAgICAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLW1lZGl1bSAuYnV0dG9uOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDFweDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5LjkzNzVlbSkge1xuICAgIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3Itc21hbGwuZXhwYW5kZWQge1xuICAgICAgZGlzcGxheTogYmxvY2s7IH1cbiAgICAgIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3Itc21hbGwuZXhwYW5kZWQgLmJ1dHRvbiB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7IH0gfVxuXG4uY2FsbG91dCB7XG4gIG1hcmdpbjogMCAwIDFyZW0gMDtcbiAgcGFkZGluZzogMXJlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgxMCwgMTAsIDEwLCAwLjI1KTtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBjb2xvcjogIzFkMmEyOTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZlZmVmZTsgfVxuICAuY2FsbG91dCA+IDpmaXJzdC1jaGlsZCB7XG4gICAgbWFyZ2luLXRvcDogMDsgfVxuICAuY2FsbG91dCA+IDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIC5jYWxsb3V0LnByaW1hcnkge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNkZWYwZmM7IH1cbiAgLmNhbGxvdXQuc2Vjb25kYXJ5IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWJlYmViOyB9XG4gIC5jYWxsb3V0LnN1Y2Nlc3Mge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNlMWZhZWE7IH1cbiAgLmNhbGxvdXQud2FybmluZyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjNkOTsgfVxuICAuY2FsbG91dC5hbGVydCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZjZTZlMjsgfVxuICAuY2FsbG91dC5zbWFsbCB7XG4gICAgcGFkZGluZy10b3A6IDAuNXJlbTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjVyZW07XG4gICAgcGFkZGluZy1ib3R0b206IDAuNXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNXJlbTsgfVxuICAuY2FsbG91dC5sYXJnZSB7XG4gICAgcGFkZGluZy10b3A6IDNyZW07XG4gICAgcGFkZGluZy1yaWdodDogM3JlbTtcbiAgICBwYWRkaW5nLWJvdHRvbTogM3JlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDNyZW07IH1cblxuLmNsb3NlLWJ1dHRvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgY29sb3I6ICM4YThhOGE7XG4gIHJpZ2h0OiAxcmVtO1xuICB0b3A6IDAuNXJlbTtcbiAgZm9udC1zaXplOiAyZW07XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddIC5jbG9zZS1idXR0b24ge1xuICAgIG91dGxpbmU6IDA7IH1cbiAgLmNsb3NlLWJ1dHRvbjpob3ZlciwgLmNsb3NlLWJ1dHRvbjpmb2N1cyB7XG4gICAgY29sb3I6ICMwYTBhMGE7IH1cblxuLmlzLWRyaWxsZG93biB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICAuaXMtZHJpbGxkb3duIGxpIHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50OyB9XG5cbi5pcy1kcmlsbGRvd24tc3VibWVudSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAxMDAlO1xuICB6LWluZGV4OiAtMTtcbiAgaGVpZ2h0OiAxMDAlO1xuICB3aWR0aDogMTAwJTtcbiAgYmFja2dyb3VuZDogI2Y3ZjdmNztcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMTVzIGxpbmVhcjsgfVxuICAuaXMtZHJpbGxkb3duLXN1Ym1lbnUuaXMtYWN0aXZlIHtcbiAgICB6LWluZGV4OiAxO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSk7IH1cbiAgLmlzLWRyaWxsZG93bi1zdWJtZW51LmlzLWNsb3Npbmcge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKTsgfVxuXG4uaXMtZHJpbGxkb3duLXN1Ym1lbnUtcGFyZW50ID4gYSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAuaXMtZHJpbGxkb3duLXN1Ym1lbnUtcGFyZW50ID4gYTo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXI6IGluc2V0IDZweDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICMyMTk5ZTg7XG4gICAgYm9yZGVyLWxlZnQtc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1yaWdodC13aWR0aDogMDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA1MCU7XG4gICAgbWFyZ2luLXRvcDogLTZweDtcbiAgICByaWdodDogMXJlbTsgfVxuXG4uanMtZHJpbGxkb3duLWJhY2sgPiBhOjpiZWZvcmUge1xuICBjb250ZW50OiAnJztcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG4gIGJvcmRlcjogaW5zZXQgNnB4O1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50ICMyMTk5ZTggdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yaWdodC1zdHlsZTogc29saWQ7XG4gIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xuICBib3JkZXItbGVmdC13aWR0aDogMDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBtYXJnaW4tcmlnaHQ6IDAuNzVyZW07IH1cblxuLmRyb3Bkb3duLXBhbmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjdmN2Y3O1xuICBib3JkZXI6IDFweCBzb2xpZCAjREREO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1zaXplOiAxNnJlbTtcbiAgcGFkZGluZzogMXJlbTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIHdpZHRoOiAzMDBweDtcbiAgei1pbmRleDogMTA7IH1cbiAgLmRyb3Bkb3duLXBhbmUuaXMtb3BlbiB7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTsgfVxuXG4uZHJvcGRvd24tcGFuZS50aW55IHtcbiAgd2lkdGg6IDEwMHB4OyB9XG5cbi5kcm9wZG93bi1wYW5lLnNtYWxsIHtcbiAgd2lkdGg6IDIwMHB4OyB9XG5cbi5kcm9wZG93bi1wYW5lLmxhcmdlIHtcbiAgd2lkdGg6IDQwMHB4OyB9XG5cbi5kcm9wZG93bi5tZW51ID4gbGkub3BlbnMtbGVmdCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgbGVmdDogYXV0bztcbiAgcmlnaHQ6IDA7XG4gIHRvcDogMTAwJTsgfVxuXG4uZHJvcGRvd24ubWVudSA+IGxpLm9wZW5zLXJpZ2h0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICByaWdodDogYXV0bztcbiAgbGVmdDogMDtcbiAgdG9wOiAxMDAlOyB9XG5cbi5kcm9wZG93bi5tZW51ID4gbGkuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgPiBhIHtcbiAgcGFkZGluZy1yaWdodDogMS41cmVtO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cblxuLmRyb3Bkb3duLm1lbnUgPiBsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGE6OmFmdGVyIHtcbiAgY29udGVudDogJyc7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuICBib3JkZXI6IGluc2V0IDVweDtcbiAgYm9yZGVyLWNvbG9yOiAjZGQzMzMzIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICBib3JkZXItdG9wLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgcmlnaHQ6IDVweDtcbiAgbWFyZ2luLXRvcDogLTJweDsgfVxuXG5bZGF0YS13aGF0aW5wdXQ9J21vdXNlJ10gLmRyb3Bkb3duLm1lbnUgYSB7XG4gIG91dGxpbmU6IDA7IH1cblxuLm5vLWpzIC5kcm9wZG93bi5tZW51IHVsIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4uZHJvcGRvd24ubWVudS52ZXJ0aWNhbCA+IGxpIC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgdG9wOiAwOyB9XG5cbi5kcm9wZG93bi5tZW51LnZlcnRpY2FsID4gbGkub3BlbnMtbGVmdCAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gIGxlZnQ6IGF1dG87XG4gIHJpZ2h0OiAxMDAlOyB9XG5cbi5kcm9wZG93bi5tZW51LnZlcnRpY2FsID4gbGkub3BlbnMtcmlnaHQgLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICByaWdodDogYXV0bztcbiAgbGVmdDogMTAwJTsgfVxuXG4uZHJvcGRvd24ubWVudS52ZXJ0aWNhbCA+IGxpID4gYTo6YWZ0ZXIge1xuICByaWdodDogMTRweDtcbiAgbWFyZ2luLXRvcDogLTNweDsgfVxuXG4uZHJvcGRvd24ubWVudS52ZXJ0aWNhbCA+IGxpLm9wZW5zLWxlZnQgPiBhOjphZnRlciB7XG4gIGNvbnRlbnQ6ICcnO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbiAgYm9yZGVyOiBpbnNldCA1cHg7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgI2RkMzMzMyB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJpZ2h0LXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7IH1cblxuLmRyb3Bkb3duLm1lbnUudmVydGljYWwgPiBsaS5vcGVucy1yaWdodCA+IGE6OmFmdGVyIHtcbiAgY29udGVudDogJyc7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuICBib3JkZXI6IGluc2V0IDVweDtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAjZGQzMzMzO1xuICBib3JkZXItbGVmdC1zdHlsZTogc29saWQ7XG4gIGJvcmRlci1yaWdodC13aWR0aDogMDsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5kcm9wZG93bi5tZW51Lm1lZGl1bS1ob3Jpem9udGFsID4gbGkub3BlbnMtbGVmdCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICBsZWZ0OiBhdXRvO1xuICAgIHJpZ2h0OiAwO1xuICAgIHRvcDogMTAwJTsgfVxuICAuZHJvcGRvd24ubWVudS5tZWRpdW0taG9yaXpvbnRhbCA+IGxpLm9wZW5zLXJpZ2h0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDA7XG4gICAgdG9wOiAxMDAlOyB9XG4gIC5kcm9wZG93bi5tZW51Lm1lZGl1bS1ob3Jpem9udGFsID4gbGkuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgPiBhIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxLjVyZW07XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC5kcm9wZG93bi5tZW51Lm1lZGl1bS1ob3Jpem9udGFsID4gbGkuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgPiBhOjphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJvcmRlcjogaW5zZXQgNXB4O1xuICAgIGJvcmRlci1jb2xvcjogI2RkMzMzMyB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItdG9wLXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xuICAgIHJpZ2h0OiA1cHg7XG4gICAgbWFyZ2luLXRvcDogLTJweDsgfVxuICAuZHJvcGRvd24ubWVudS5tZWRpdW0tdmVydGljYWwgPiBsaSAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgdG9wOiAwOyB9XG4gIC5kcm9wZG93bi5tZW51Lm1lZGl1bS12ZXJ0aWNhbCA+IGxpLm9wZW5zLWxlZnQgLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIGxlZnQ6IGF1dG87XG4gICAgcmlnaHQ6IDEwMCU7IH1cbiAgLmRyb3Bkb3duLm1lbnUubWVkaXVtLXZlcnRpY2FsID4gbGkub3BlbnMtcmlnaHQgLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDEwMCU7IH1cbiAgLmRyb3Bkb3duLm1lbnUubWVkaXVtLXZlcnRpY2FsID4gbGkgPiBhOjphZnRlciB7XG4gICAgcmlnaHQ6IDE0cHg7XG4gICAgbWFyZ2luLXRvcDogLTNweDsgfVxuICAuZHJvcGRvd24ubWVudS5tZWRpdW0tdmVydGljYWwgPiBsaS5vcGVucy1sZWZ0ID4gYTo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXI6IGluc2V0IDVweDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50ICNkZDMzMzMgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLXJpZ2h0LXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItbGVmdC13aWR0aDogMDsgfVxuICAuZHJvcGRvd24ubWVudS5tZWRpdW0tdmVydGljYWwgPiBsaS5vcGVucy1yaWdodCA+IGE6OmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgYm9yZGVyOiBpbnNldCA1cHg7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAjZGQzMzMzO1xuICAgIGJvcmRlci1sZWZ0LXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItcmlnaHQtd2lkdGg6IDA7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5kcm9wZG93bi5tZW51LmxhcmdlLWhvcml6b250YWwgPiBsaS5vcGVucy1sZWZ0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIGxlZnQ6IGF1dG87XG4gICAgcmlnaHQ6IDA7XG4gICAgdG9wOiAxMDAlOyB9XG4gIC5kcm9wZG93bi5tZW51LmxhcmdlLWhvcml6b250YWwgPiBsaS5vcGVucy1yaWdodCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogMTAwJTsgfVxuICAuZHJvcGRvd24ubWVudS5sYXJnZS1ob3Jpem9udGFsID4gbGkuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgPiBhIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxLjVyZW07XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC5kcm9wZG93bi5tZW51LmxhcmdlLWhvcml6b250YWwgPiBsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGE6OmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgYm9yZGVyOiBpbnNldCA1cHg7XG4gICAgYm9yZGVyLWNvbG9yOiAjZGQzMzMzIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci10b3Atc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gICAgcmlnaHQ6IDVweDtcbiAgICBtYXJnaW4tdG9wOiAtMnB4OyB9XG4gIC5kcm9wZG93bi5tZW51LmxhcmdlLXZlcnRpY2FsID4gbGkgLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHRvcDogMDsgfVxuICAuZHJvcGRvd24ubWVudS5sYXJnZS12ZXJ0aWNhbCA+IGxpLm9wZW5zLWxlZnQgLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIGxlZnQ6IGF1dG87XG4gICAgcmlnaHQ6IDEwMCU7IH1cbiAgLmRyb3Bkb3duLm1lbnUubGFyZ2UtdmVydGljYWwgPiBsaS5vcGVucy1yaWdodCAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogMTAwJTsgfVxuICAuZHJvcGRvd24ubWVudS5sYXJnZS12ZXJ0aWNhbCA+IGxpID4gYTo6YWZ0ZXIge1xuICAgIHJpZ2h0OiAxNHB4O1xuICAgIG1hcmdpbi10b3A6IC0zcHg7IH1cbiAgLmRyb3Bkb3duLm1lbnUubGFyZ2UtdmVydGljYWwgPiBsaS5vcGVucy1sZWZ0ID4gYTo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXI6IGluc2V0IDVweDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50ICNkZDMzMzMgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLXJpZ2h0LXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItbGVmdC13aWR0aDogMDsgfVxuICAuZHJvcGRvd24ubWVudS5sYXJnZS12ZXJ0aWNhbCA+IGxpLm9wZW5zLXJpZ2h0ID4gYTo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXI6IGluc2V0IDVweDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICNkZDMzMzM7XG4gICAgYm9yZGVyLWxlZnQtc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1yaWdodC13aWR0aDogMDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLmRyb3Bkb3duLm1lbnUueGxhcmdlLWhvcml6b250YWwgPiBsaS5vcGVucy1sZWZ0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIGxlZnQ6IGF1dG87XG4gICAgcmlnaHQ6IDA7XG4gICAgdG9wOiAxMDAlOyB9XG4gIC5kcm9wZG93bi5tZW51LnhsYXJnZS1ob3Jpem9udGFsID4gbGkub3BlbnMtcmlnaHQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogMDtcbiAgICB0b3A6IDEwMCU7IH1cbiAgLmRyb3Bkb3duLm1lbnUueGxhcmdlLWhvcml6b250YWwgPiBsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGEge1xuICAgIHBhZGRpbmctcmlnaHQ6IDEuNXJlbTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLmRyb3Bkb3duLm1lbnUueGxhcmdlLWhvcml6b250YWwgPiBsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGE6OmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgYm9yZGVyOiBpbnNldCA1cHg7XG4gICAgYm9yZGVyLWNvbG9yOiAjZGQzMzMzIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci10b3Atc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gICAgcmlnaHQ6IDVweDtcbiAgICBtYXJnaW4tdG9wOiAtMnB4OyB9XG4gIC5kcm9wZG93bi5tZW51LnhsYXJnZS12ZXJ0aWNhbCA+IGxpIC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICB0b3A6IDA7IH1cbiAgLmRyb3Bkb3duLm1lbnUueGxhcmdlLXZlcnRpY2FsID4gbGkub3BlbnMtbGVmdCAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgbGVmdDogYXV0bztcbiAgICByaWdodDogMTAwJTsgfVxuICAuZHJvcGRvd24ubWVudS54bGFyZ2UtdmVydGljYWwgPiBsaS5vcGVucy1yaWdodCAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogMTAwJTsgfVxuICAuZHJvcGRvd24ubWVudS54bGFyZ2UtdmVydGljYWwgPiBsaSA+IGE6OmFmdGVyIHtcbiAgICByaWdodDogMTRweDtcbiAgICBtYXJnaW4tdG9wOiAtM3B4OyB9XG4gIC5kcm9wZG93bi5tZW51LnhsYXJnZS12ZXJ0aWNhbCA+IGxpLm9wZW5zLWxlZnQgPiBhOjphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJvcmRlcjogaW5zZXQgNXB4O1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgI2RkMzMzMyB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItcmlnaHQtc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1sZWZ0LXdpZHRoOiAwOyB9XG4gIC5kcm9wZG93bi5tZW51LnhsYXJnZS12ZXJ0aWNhbCA+IGxpLm9wZW5zLXJpZ2h0ID4gYTo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXI6IGluc2V0IDVweDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICNkZDMzMzM7XG4gICAgYm9yZGVyLWxlZnQtc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1yaWdodC13aWR0aDogMDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgLmRyb3Bkb3duLm1lbnUueHhsYXJnZS1ob3Jpem9udGFsID4gbGkub3BlbnMtbGVmdCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICBsZWZ0OiBhdXRvO1xuICAgIHJpZ2h0OiAwO1xuICAgIHRvcDogMTAwJTsgfVxuICAuZHJvcGRvd24ubWVudS54eGxhcmdlLWhvcml6b250YWwgPiBsaS5vcGVucy1yaWdodCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogMTAwJTsgfVxuICAuZHJvcGRvd24ubWVudS54eGxhcmdlLWhvcml6b250YWwgPiBsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGEge1xuICAgIHBhZGRpbmctcmlnaHQ6IDEuNXJlbTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLmRyb3Bkb3duLm1lbnUueHhsYXJnZS1ob3Jpem9udGFsID4gbGkuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgPiBhOjphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJvcmRlcjogaW5zZXQgNXB4O1xuICAgIGJvcmRlci1jb2xvcjogI2RkMzMzMyB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItdG9wLXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xuICAgIHJpZ2h0OiA1cHg7XG4gICAgbWFyZ2luLXRvcDogLTJweDsgfVxuICAuZHJvcGRvd24ubWVudS54eGxhcmdlLXZlcnRpY2FsID4gbGkgLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHRvcDogMDsgfVxuICAuZHJvcGRvd24ubWVudS54eGxhcmdlLXZlcnRpY2FsID4gbGkub3BlbnMtbGVmdCAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgbGVmdDogYXV0bztcbiAgICByaWdodDogMTAwJTsgfVxuICAuZHJvcGRvd24ubWVudS54eGxhcmdlLXZlcnRpY2FsID4gbGkub3BlbnMtcmlnaHQgLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDEwMCU7IH1cbiAgLmRyb3Bkb3duLm1lbnUueHhsYXJnZS12ZXJ0aWNhbCA+IGxpID4gYTo6YWZ0ZXIge1xuICAgIHJpZ2h0OiAxNHB4O1xuICAgIG1hcmdpbi10b3A6IC0zcHg7IH1cbiAgLmRyb3Bkb3duLm1lbnUueHhsYXJnZS12ZXJ0aWNhbCA+IGxpLm9wZW5zLWxlZnQgPiBhOjphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJvcmRlcjogaW5zZXQgNXB4O1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgI2RkMzMzMyB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItcmlnaHQtc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1sZWZ0LXdpZHRoOiAwOyB9XG4gIC5kcm9wZG93bi5tZW51Lnh4bGFyZ2UtdmVydGljYWwgPiBsaS5vcGVucy1yaWdodCA+IGE6OmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgYm9yZGVyOiBpbnNldCA1cHg7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAjZGQzMzMzO1xuICAgIGJvcmRlci1sZWZ0LXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItcmlnaHQtd2lkdGg6IDA7IH0gfVxuXG4uZHJvcGRvd24ubWVudS5hbGlnbi1yaWdodCAuaXMtZHJvcGRvd24tc3VibWVudS5maXJzdC1zdWIge1xuICB0b3A6IDEwMCU7XG4gIGxlZnQ6IGF1dG87XG4gIHJpZ2h0OiAwOyB9XG5cbi5pcy1kcm9wZG93bi1tZW51LnZlcnRpY2FsIHtcbiAgd2lkdGg6IDEwMHB4OyB9XG4gIC5pcy1kcm9wZG93bi1tZW51LnZlcnRpY2FsLmFsaWduLXJpZ2h0IHtcbiAgICBmbG9hdDogcmlnaHQ7IH1cblxuLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCBhOjphZnRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTAlO1xuICAgIHJpZ2h0OiA1cHg7XG4gICAgbWFyZ2luLXRvcDogLTJweDsgfVxuICAuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQub3BlbnMtaW5uZXIgLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHRvcDogMTAwJTsgfVxuICAuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQub3BlbnMtbGVmdCAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgbGVmdDogYXV0bztcbiAgICByaWdodDogMTAwJTsgfVxuXG4uaXMtZHJvcGRvd24tc3VibWVudSB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAxMDAlO1xuICBtaW4td2lkdGg6IDIwMHB4O1xuICB6LWluZGV4OiAxO1xuICBiYWNrZ3JvdW5kOiAjZjdmN2Y3O1xuICBib3JkZXI6IDFweCBzb2xpZCAjREREOyB9XG4gIC5pcy1kcm9wZG93bi1zdWJtZW51IC5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGE6OmFmdGVyIHtcbiAgICByaWdodDogMTRweDtcbiAgICBtYXJnaW4tdG9wOiAtM3B4OyB9XG4gIC5pcy1kcm9wZG93bi1zdWJtZW51IC5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudC5vcGVucy1sZWZ0ID4gYTo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXI6IGluc2V0IDVweDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50ICNkZDMzMzMgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLXJpZ2h0LXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItbGVmdC13aWR0aDogMDsgfVxuICAuaXMtZHJvcGRvd24tc3VibWVudSAuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQub3BlbnMtcmlnaHQgPiBhOjphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJvcmRlcjogaW5zZXQgNXB4O1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgI2RkMzMzMztcbiAgICBib3JkZXItbGVmdC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLXJpZ2h0LXdpZHRoOiAwOyB9XG4gIC5pcy1kcm9wZG93bi1zdWJtZW51IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICBtYXJnaW4tdG9wOiAtMXB4OyB9XG4gIC5pcy1kcm9wZG93bi1zdWJtZW51ID4gbGkge1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gIC5pcy1kcm9wZG93bi1zdWJtZW51Om5vdCguanMtZHJvcGRvd24tbm9ob3ZlcikgPiAuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQ6aG92ZXIgPiAuaXMtZHJvcGRvd24tc3VibWVudSwgLmlzLWRyb3Bkb3duLXN1Ym1lbnUuanMtZHJvcGRvd24tYWN0aXZlIHtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuXG4uZmxleC12aWRlbyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaGVpZ2h0OiAwO1xuICBwYWRkaW5nLWJvdHRvbTogNzUlO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gIC5mbGV4LXZpZGVvIGlmcmFtZSxcbiAgLmZsZXgtdmlkZW8gb2JqZWN0LFxuICAuZmxleC12aWRlbyBlbWJlZCxcbiAgLmZsZXgtdmlkZW8gdmlkZW8ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7IH1cbiAgLmZsZXgtdmlkZW8ud2lkZXNjcmVlbiB7XG4gICAgcGFkZGluZy1ib3R0b206IDU2LjI1JTsgfVxuICAuZmxleC12aWRlby52aW1lbyB7XG4gICAgcGFkZGluZy10b3A6IDA7IH1cblxuLmxhYmVsIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nOiAwLjMzMzMzcmVtIDAuNXJlbTtcbiAgZm9udC1zaXplOiAwLjhyZW07XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBjdXJzb3I6IGRlZmF1bHQ7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJhY2tncm91bmQ6ICNkZDMzMzM7XG4gIGNvbG9yOiAjZjdmN2Y3OyB9XG4gIC5sYWJlbC5zZWNvbmRhcnkge1xuICAgIGJhY2tncm91bmQ6ICM3Nzc7XG4gICAgY29sb3I6ICNmN2Y3Zjc7IH1cbiAgLmxhYmVsLnN1Y2Nlc3Mge1xuICAgIGJhY2tncm91bmQ6ICMzYWRiNzY7XG4gICAgY29sb3I6ICNmN2Y3Zjc7IH1cbiAgLmxhYmVsLndhcm5pbmcge1xuICAgIGJhY2tncm91bmQ6ICNmZmFlMDA7XG4gICAgY29sb3I6ICNmN2Y3Zjc7IH1cbiAgLmxhYmVsLmFsZXJ0IHtcbiAgICBiYWNrZ3JvdW5kOiAjZWM1ODQwO1xuICAgIGNvbG9yOiAjZjdmN2Y3OyB9XG5cbi5tZWRpYS1vYmplY3Qge1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBkaXNwbGF5OiBibG9jazsgfVxuICAubWVkaWEtb2JqZWN0IGltZyB7XG4gICAgbWF4LXdpZHRoOiBub25lOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5LjkzNzVlbSkge1xuICAgIC5tZWRpYS1vYmplY3Quc3RhY2stZm9yLXNtYWxsIC5tZWRpYS1vYmplY3Qtc2VjdGlvbiB7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgcGFkZGluZy1ib3R0b206IDFyZW07XG4gICAgICBkaXNwbGF5OiBibG9jazsgfVxuICAgICAgLm1lZGlhLW9iamVjdC5zdGFjay1mb3Itc21hbGwgLm1lZGlhLW9iamVjdC1zZWN0aW9uIGltZyB7XG4gICAgICAgIHdpZHRoOiAxMDAlOyB9IH1cblxuLm1lZGlhLW9iamVjdC1zZWN0aW9uIHtcbiAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgdmVydGljYWwtYWxpZ246IHRvcDsgfVxuICAubWVkaWEtb2JqZWN0LXNlY3Rpb246Zmlyc3QtY2hpbGQge1xuICAgIHBhZGRpbmctcmlnaHQ6IDFyZW07IH1cbiAgLm1lZGlhLW9iamVjdC1zZWN0aW9uOmxhc3QtY2hpbGQ6bm90KDpudGgtY2hpbGQoMikpIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDFyZW07IH1cbiAgLm1lZGlhLW9iamVjdC1zZWN0aW9uLm1pZGRsZSB7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgfVxuICAubWVkaWEtb2JqZWN0LXNlY3Rpb24uYm90dG9tIHtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tOyB9XG5cbi5tZW51IHtcbiAgbWFyZ2luOiAwO1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7IH1cbiAgLm1lbnUgPiBsaSB7XG4gICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyB9XG4gICAgW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddIC5tZW51ID4gbGkge1xuICAgICAgb3V0bGluZTogMDsgfVxuICAubWVudSA+IGxpID4gYSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZzogMC43cmVtIDFyZW07XG4gICAgbGluZS1oZWlnaHQ6IDE7IH1cbiAgLm1lbnUgaW5wdXQsXG4gIC5tZW51IGEsXG4gIC5tZW51IGJ1dHRvbiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAubWVudSA+IGxpID4gYSBpbWcsXG4gIC5tZW51ID4gbGkgPiBhIGkge1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IH1cbiAgLm1lbnUgPiBsaSA+IGEgaSArIHNwYW4sXG4gIC5tZW51ID4gbGkgPiBhIGltZyArIHNwYW4ge1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IH1cbiAgLm1lbnUgPiBsaSA+IGEgaW1nLFxuICAubWVudSA+IGxpID4gYSBpIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDAuMjVyZW07XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG4gIC5tZW51ID4gbGkge1xuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7IH1cbiAgLm1lbnUudmVydGljYWwgPiBsaSB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5tZW51Lm1lZGl1bS1ob3Jpem9udGFsID4gbGkge1xuICAgICAgZGlzcGxheTogdGFibGUtY2VsbDsgfVxuICAgIC5tZW51Lm1lZGl1bS12ZXJ0aWNhbCA+IGxpIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5tZW51LmxhcmdlLWhvcml6b250YWwgPiBsaSB7XG4gICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsOyB9XG4gICAgLm1lbnUubGFyZ2UtdmVydGljYWwgPiBsaSB7XG4gICAgICBkaXNwbGF5OiBibG9jazsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAubWVudS54bGFyZ2UtaG9yaXpvbnRhbCA+IGxpIHtcbiAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7IH1cbiAgICAubWVudS54bGFyZ2UtdmVydGljYWwgPiBsaSB7XG4gICAgICBkaXNwbGF5OiBibG9jazsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAubWVudS54eGxhcmdlLWhvcml6b250YWwgPiBsaSB7XG4gICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsOyB9XG4gICAgLm1lbnUueHhsYXJnZS12ZXJ0aWNhbCA+IGxpIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrOyB9IH1cbiAgLm1lbnUuc2ltcGxlIGxpIHtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luLXJpZ2h0OiAxcmVtOyB9XG4gIC5tZW51LnNpbXBsZSBhIHtcbiAgICBwYWRkaW5nOiAwOyB9XG4gIC5tZW51LmFsaWduLXJpZ2h0OjpiZWZvcmUsIC5tZW51LmFsaWduLXJpZ2h0OjphZnRlciB7XG4gICAgY29udGVudDogJyAnO1xuICAgIGRpc3BsYXk6IHRhYmxlOyB9XG4gIC5tZW51LmFsaWduLXJpZ2h0OjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgLm1lbnUuYWxpZ24tcmlnaHQgPiBsaSB7XG4gICAgZmxvYXQ6IHJpZ2h0OyB9XG4gIC5tZW51LmV4cGFuZGVkIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICB0YWJsZS1sYXlvdXQ6IGZpeGVkOyB9XG4gICAgLm1lbnUuZXhwYW5kZWQgPiBsaTpmaXJzdC1jaGlsZDpsYXN0LWNoaWxkIHtcbiAgICAgIHdpZHRoOiAxMDAlOyB9XG4gIC5tZW51Lmljb24tdG9wID4gbGkgPiBhIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgICAubWVudS5pY29uLXRvcCA+IGxpID4gYSBpbWcsXG4gICAgLm1lbnUuaWNvbi10b3AgPiBsaSA+IGEgaSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIG1hcmdpbjogMCBhdXRvIDAuMjVyZW07IH1cbiAgLm1lbnUubmVzdGVkIHtcbiAgICBtYXJnaW4tbGVmdDogMXJlbTsgfVxuICAubWVudSAuYWN0aXZlID4gYSB7XG4gICAgY29sb3I6ICNkZDMzMzM7XG4gICAgYmFja2dyb3VuZDogIzBhMGEwYTsgfVxuXG4ubWVudS10ZXh0IHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGNvbG9yOiBpbmhlcml0O1xuICBsaW5lLWhlaWdodDogMTtcbiAgcGFkZGluZy10b3A6IDA7XG4gIHBhZGRpbmctYm90dG9tOiAwO1xuICBwYWRkaW5nOiAwLjdyZW0gMXJlbTsgfVxuXG4ubWVudS1jZW50ZXJlZCB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAubWVudS1jZW50ZXJlZCA+IC5tZW51IHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cblxuLm5vLWpzIFtkYXRhLXJlc3BvbnNpdmUtbWVudV0gdWwge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbmh0bWwsXG5ib2R5IHtcbiAgaGVpZ2h0OiAxMDAlOyB9XG5cbi5vZmYtY2FudmFzLXdyYXBwZXIge1xuICB3aWR0aDogMTAwJTtcbiAgb3ZlcmZsb3cteDogaGlkZGVuO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IGF1dG87IH1cblxuLm9mZi1jYW52YXMtd3JhcHBlci1pbm5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjVzIGVhc2U7IH1cbiAgLm9mZi1jYW52YXMtd3JhcHBlci1pbm5lcjo6YmVmb3JlLCAub2ZmLWNhbnZhcy13cmFwcGVyLWlubmVyOjphZnRlciB7XG4gICAgY29udGVudDogJyAnO1xuICAgIGRpc3BsYXk6IHRhYmxlOyB9XG4gIC5vZmYtY2FudmFzLXdyYXBwZXItaW5uZXI6OmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDsgfVxuXG4ub2ZmLWNhbnZhcy1jb250ZW50LFxuLm9mZi1jYW52YXMtY29udGVudCB7XG4gIG1pbi1oZWlnaHQ6IDEwMCU7XG4gIGJhY2tncm91bmQ6ICNmN2Y3Zjc7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjVzIGVhc2U7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgei1pbmRleDogMTtcbiAgcGFkZGluZy1ib3R0b206IDAuMXB4O1xuICBib3gtc2hhZG93OiAwIDAgMTBweCByZ2JhKDEwLCAxMCwgMTAsIDAuNSk7IH1cblxuLmpzLW9mZi1jYW52YXMtZXhpdCB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDI0NywgMjQ3LCAyNDcsIDAuMjUpO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQgMC41cyBlYXNlOyB9XG5cbi5vZmYtY2FudmFzIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBiYWNrZ3JvdW5kOiAjRTBFMEUwO1xuICB6LWluZGV4OiAtMTtcbiAgbWF4LWhlaWdodDogMTAwJTtcbiAgb3ZlcmZsb3cteTogYXV0bztcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApOyB9XG4gIFtkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSAub2ZmLWNhbnZhcyB7XG4gICAgb3V0bGluZTogMDsgfVxuICAub2ZmLWNhbnZhcy5wb3NpdGlvbi1sZWZ0IHtcbiAgICBsZWZ0OiAtMjUwcHg7XG4gICAgdG9wOiAwO1xuICAgIHdpZHRoOiAyNTBweDsgfVxuICAgIC5pcy1vcGVuLWxlZnQge1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDI1MHB4KTsgfVxuICAub2ZmLWNhbnZhcy5wb3NpdGlvbi1yaWdodCB7XG4gICAgcmlnaHQ6IC0yNTBweDtcbiAgICB0b3A6IDA7XG4gICAgd2lkdGg6IDI1MHB4OyB9XG4gICAgLmlzLW9wZW4tcmlnaHQge1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0yNTBweCk7IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAucG9zaXRpb24tbGVmdC5yZXZlYWwtZm9yLW1lZGl1bSB7XG4gICAgbGVmdDogMDtcbiAgICB6LWluZGV4OiBhdXRvO1xuICAgIHBvc2l0aW9uOiBmaXhlZDsgfVxuICAgIC5wb3NpdGlvbi1sZWZ0LnJldmVhbC1mb3ItbWVkaXVtIH4gLm9mZi1jYW52YXMtY29udGVudCB7XG4gICAgICBtYXJnaW4tbGVmdDogMjUwcHg7IH1cbiAgLnBvc2l0aW9uLXJpZ2h0LnJldmVhbC1mb3ItbWVkaXVtIHtcbiAgICByaWdodDogMDtcbiAgICB6LWluZGV4OiBhdXRvO1xuICAgIHBvc2l0aW9uOiBmaXhlZDsgfVxuICAgIC5wb3NpdGlvbi1yaWdodC5yZXZlYWwtZm9yLW1lZGl1bSB+IC5vZmYtY2FudmFzLWNvbnRlbnQge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAyNTBweDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnBvc2l0aW9uLWxlZnQucmV2ZWFsLWZvci1sYXJnZSB7XG4gICAgbGVmdDogMDtcbiAgICB6LWluZGV4OiBhdXRvO1xuICAgIHBvc2l0aW9uOiBmaXhlZDsgfVxuICAgIC5wb3NpdGlvbi1sZWZ0LnJldmVhbC1mb3ItbGFyZ2UgfiAub2ZmLWNhbnZhcy1jb250ZW50IHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAyNTBweDsgfVxuICAucG9zaXRpb24tcmlnaHQucmV2ZWFsLWZvci1sYXJnZSB7XG4gICAgcmlnaHQ6IDA7XG4gICAgei1pbmRleDogYXV0bztcbiAgICBwb3NpdGlvbjogZml4ZWQ7IH1cbiAgICAucG9zaXRpb24tcmlnaHQucmV2ZWFsLWZvci1sYXJnZSB+IC5vZmYtY2FudmFzLWNvbnRlbnQge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAyNTBweDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLnBvc2l0aW9uLWxlZnQucmV2ZWFsLWZvci14bGFyZ2Uge1xuICAgIGxlZnQ6IDA7XG4gICAgei1pbmRleDogYXV0bztcbiAgICBwb3NpdGlvbjogZml4ZWQ7IH1cbiAgICAucG9zaXRpb24tbGVmdC5yZXZlYWwtZm9yLXhsYXJnZSB+IC5vZmYtY2FudmFzLWNvbnRlbnQge1xuICAgICAgbWFyZ2luLWxlZnQ6IDI1MHB4OyB9XG4gIC5wb3NpdGlvbi1yaWdodC5yZXZlYWwtZm9yLXhsYXJnZSB7XG4gICAgcmlnaHQ6IDA7XG4gICAgei1pbmRleDogYXV0bztcbiAgICBwb3NpdGlvbjogZml4ZWQ7IH1cbiAgICAucG9zaXRpb24tcmlnaHQucmV2ZWFsLWZvci14bGFyZ2UgfiAub2ZmLWNhbnZhcy1jb250ZW50IHtcbiAgICAgIG1hcmdpbi1yaWdodDogMjUwcHg7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gIC5wb3NpdGlvbi1sZWZ0LnJldmVhbC1mb3IteHhsYXJnZSB7XG4gICAgbGVmdDogMDtcbiAgICB6LWluZGV4OiBhdXRvO1xuICAgIHBvc2l0aW9uOiBmaXhlZDsgfVxuICAgIC5wb3NpdGlvbi1sZWZ0LnJldmVhbC1mb3IteHhsYXJnZSB+IC5vZmYtY2FudmFzLWNvbnRlbnQge1xuICAgICAgbWFyZ2luLWxlZnQ6IDI1MHB4OyB9XG4gIC5wb3NpdGlvbi1yaWdodC5yZXZlYWwtZm9yLXh4bGFyZ2Uge1xuICAgIHJpZ2h0OiAwO1xuICAgIHotaW5kZXg6IGF1dG87XG4gICAgcG9zaXRpb246IGZpeGVkOyB9XG4gICAgLnBvc2l0aW9uLXJpZ2h0LnJldmVhbC1mb3IteHhsYXJnZSB+IC5vZmYtY2FudmFzLWNvbnRlbnQge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAyNTBweDsgfSB9XG5cbi5vcmJpdCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG4ub3JiaXQtY29udGFpbmVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW46IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGxpc3Qtc3R5bGU6IG5vbmU7IH1cblxuLm9yYml0LXNsaWRlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC1oZWlnaHQ6IDEwMCU7IH1cbiAgLm9yYml0LXNsaWRlLm5vLW1vdGlvbnVpLmlzLWFjdGl2ZSB7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7IH1cblxuLm9yYml0LWZpZ3VyZSB7XG4gIG1hcmdpbjogMDsgfVxuXG4ub3JiaXQtaW1hZ2Uge1xuICBtYXJnaW46IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDEwMCU7IH1cblxuLm9yYml0LWNhcHRpb24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDFyZW07XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGNvbG9yOiAjZjdmN2Y3O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDEwLCAxMCwgMTAsIDAuNSk7IH1cblxuLm9yYml0LXByZXZpb3VzLCAub3JiaXQtbmV4dCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgei1pbmRleDogMTA7XG4gIHBhZGRpbmc6IDFyZW07XG4gIGNvbG9yOiAjZjdmN2Y3OyB9XG4gIFtkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSAub3JiaXQtcHJldmlvdXMsIFtkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSAub3JiaXQtbmV4dCB7XG4gICAgb3V0bGluZTogMDsgfVxuICAub3JiaXQtcHJldmlvdXM6aG92ZXIsIC5vcmJpdC1uZXh0OmhvdmVyLCAub3JiaXQtcHJldmlvdXM6YWN0aXZlLCAub3JiaXQtbmV4dDphY3RpdmUsIC5vcmJpdC1wcmV2aW91czpmb2N1cywgLm9yYml0LW5leHQ6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMTAsIDEwLCAxMCwgMC41KTsgfVxuXG4ub3JiaXQtcHJldmlvdXMge1xuICBsZWZ0OiAwOyB9XG5cbi5vcmJpdC1uZXh0IHtcbiAgbGVmdDogYXV0bztcbiAgcmlnaHQ6IDA7IH1cblxuLm9yYml0LWJ1bGxldHMge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbi10b3A6IDAuOHJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMC44cmVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddIC5vcmJpdC1idWxsZXRzIHtcbiAgICBvdXRsaW5lOiAwOyB9XG4gIC5vcmJpdC1idWxsZXRzIGJ1dHRvbiB7XG4gICAgd2lkdGg6IDEuMnJlbTtcbiAgICBoZWlnaHQ6IDEuMnJlbTtcbiAgICBtYXJnaW46IDAuMXJlbTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjREREO1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTsgfVxuICAgIC5vcmJpdC1idWxsZXRzIGJ1dHRvbjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjOGE4YThhOyB9XG4gICAgLm9yYml0LWJ1bGxldHMgYnV0dG9uLmlzLWFjdGl2ZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjOGE4YThhOyB9XG5cbi5wYWdpbmF0aW9uIHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07IH1cbiAgLnBhZ2luYXRpb246OmJlZm9yZSwgLnBhZ2luYXRpb246OmFmdGVyIHtcbiAgICBjb250ZW50OiAnICc7XG4gICAgZGlzcGxheTogdGFibGU7IH1cbiAgLnBhZ2luYXRpb246OmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDsgfVxuICAucGFnaW5hdGlvbiBsaSB7XG4gICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICBtYXJnaW4tcmlnaHQ6IDAuMDYyNXJlbTtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAucGFnaW5hdGlvbiBsaTpsYXN0LWNoaWxkLCAucGFnaW5hdGlvbiBsaTpmaXJzdC1jaGlsZCB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAucGFnaW5hdGlvbiBsaSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfSB9XG4gIC5wYWdpbmF0aW9uIGEsXG4gIC5wYWdpbmF0aW9uIGJ1dHRvbiB7XG4gICAgY29sb3I6ICMwYTBhMGE7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZzogMC4xODc1cmVtIDAuNjI1cmVtO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7IH1cbiAgICAucGFnaW5hdGlvbiBhOmhvdmVyLFxuICAgIC5wYWdpbmF0aW9uIGJ1dHRvbjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kOiAjRTBFMEUwOyB9XG4gIC5wYWdpbmF0aW9uIC5jdXJyZW50IHtcbiAgICBwYWRkaW5nOiAwLjE4NzVyZW0gMC42MjVyZW07XG4gICAgYmFja2dyb3VuZDogI2RkMzMzMztcbiAgICBjb2xvcjogI2Y3ZjdmNztcbiAgICBjdXJzb3I6IGRlZmF1bHQ7IH1cbiAgLnBhZ2luYXRpb24gLmRpc2FibGVkIHtcbiAgICBwYWRkaW5nOiAwLjE4NzVyZW0gMC42MjVyZW07XG4gICAgY29sb3I6ICNEREQ7XG4gICAgY3Vyc29yOiBub3QtYWxsb3dlZDsgfVxuICAgIC5wYWdpbmF0aW9uIC5kaXNhYmxlZDpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDsgfVxuICAucGFnaW5hdGlvbiAuZWxsaXBzaXM6OmFmdGVyIHtcbiAgICBjb250ZW50OiAnXFwyMDI2JztcbiAgICBwYWRkaW5nOiAwLjE4NzVyZW0gMC42MjVyZW07XG4gICAgY29sb3I6ICMwYTBhMGE7IH1cblxuLnBhZ2luYXRpb24tcHJldmlvdXMgYTo6YmVmb3JlLFxuLnBhZ2luYXRpb24tcHJldmlvdXMuZGlzYWJsZWQ6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6ICdcXDAwYWInO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi1yaWdodDogMC41cmVtOyB9XG5cbi5wYWdpbmF0aW9uLW5leHQgYTo6YWZ0ZXIsXG4ucGFnaW5hdGlvbi1uZXh0LmRpc2FibGVkOjphZnRlciB7XG4gIGNvbnRlbnQ6ICdcXDAwYmInO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi1sZWZ0OiAwLjVyZW07IH1cblxuLnByb2dyZXNzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0RERDtcbiAgaGVpZ2h0OiAxcmVtO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBib3JkZXItcmFkaXVzOiAwOyB9XG4gIC5wcm9ncmVzcy5wcmltYXJ5IC5wcm9ncmVzcy1tZXRlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzIxOTllODsgfVxuICAucHJvZ3Jlc3Muc2Vjb25kYXJ5IC5wcm9ncmVzcy1tZXRlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzc3NzsgfVxuICAucHJvZ3Jlc3Muc3VjY2VzcyAucHJvZ3Jlc3MtbWV0ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMzYWRiNzY7IH1cbiAgLnByb2dyZXNzLndhcm5pbmcgLnByb2dyZXNzLW1ldGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZhZTAwOyB9XG4gIC5wcm9ncmVzcy5hbGVydCAucHJvZ3Jlc3MtbWV0ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNlYzU4NDA7IH1cblxuLnByb2dyZXNzLW1ldGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkZDMzMzM7IH1cblxuLnByb2dyZXNzLW1ldGVyLXRleHQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIG1hcmdpbjogMDtcbiAgZm9udC1zaXplOiAwLjc1cmVtO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgY29sb3I6ICNmN2Y3Zjc7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7IH1cblxuLnNsaWRlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaGVpZ2h0OiAwLjVyZW07XG4gIG1hcmdpbi10b3A6IDEuMjVyZW07XG4gIG1hcmdpbi1ib3R0b206IDIuMjVyZW07XG4gIGJhY2tncm91bmQtY29sb3I6ICNFMEUwRTA7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIHRvdWNoLWFjdGlvbjogbm9uZTsgfVxuXG4uc2xpZGVyLWZpbGwge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMC41cmVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjREREO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLWluLW91dDsgfVxuICAuc2xpZGVyLWZpbGwuaXMtZHJhZ2dpbmcge1xuICAgIHRyYW5zaXRpb246IGFsbCAwcyBsaW5lYXI7IH1cblxuLnNsaWRlci1oYW5kbGUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogMTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMS40cmVtO1xuICBoZWlnaHQ6IDEuNHJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2RkMzMzMztcbiAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbi1vdXQ7XG4gIHRvdWNoLWFjdGlvbjogbWFuaXB1bGF0aW9uO1xuICBib3JkZXItcmFkaXVzOiAwOyB9XG4gIFtkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSAuc2xpZGVyLWhhbmRsZSB7XG4gICAgb3V0bGluZTogMDsgfVxuICAuc2xpZGVyLWhhbmRsZTpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2M2MjEyMTsgfVxuICAuc2xpZGVyLWhhbmRsZS5pcy1kcmFnZ2luZyB7XG4gICAgdHJhbnNpdGlvbjogYWxsIDBzIGxpbmVhcjsgfVxuXG4uc2xpZGVyLmRpc2FibGVkLFxuLnNsaWRlcltkaXNhYmxlZF0ge1xuICBvcGFjaXR5OiAwLjI1O1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkOyB9XG5cbi5zbGlkZXIudmVydGljYWwge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAwLjVyZW07XG4gIGhlaWdodDogMTIuNXJlbTtcbiAgbWFyZ2luOiAwIDEuMjVyZW07XG4gIHRyYW5zZm9ybTogc2NhbGUoMSwgLTEpOyB9XG4gIC5zbGlkZXIudmVydGljYWwgLnNsaWRlci1maWxsIHtcbiAgICB0b3A6IDA7XG4gICAgd2lkdGg6IDAuNXJlbTtcbiAgICBtYXgtaGVpZ2h0OiAxMDAlOyB9XG4gIC5zbGlkZXIudmVydGljYWwgLnNsaWRlci1oYW5kbGUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogNTAlO1xuICAgIHdpZHRoOiAxLjRyZW07XG4gICAgaGVpZ2h0OiAxLjRyZW07XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpOyB9XG5cbi5zdGlja3ktY29udGFpbmVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG5cbi5zdGlja3kge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IDA7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7IH1cblxuLnN0aWNreS5pcy1zdHVjayB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgei1pbmRleDogNTsgfVxuICAuc3RpY2t5LmlzLXN0dWNrLmlzLWF0LXRvcCB7XG4gICAgdG9wOiAwOyB9XG4gIC5zdGlja3kuaXMtc3R1Y2suaXMtYXQtYm90dG9tIHtcbiAgICBib3R0b206IDA7IH1cblxuLnN0aWNreS5pcy1hbmNob3JlZCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogYXV0bztcbiAgcmlnaHQ6IGF1dG87IH1cbiAgLnN0aWNreS5pcy1hbmNob3JlZC5pcy1hdC1ib3R0b20ge1xuICAgIGJvdHRvbTogMDsgfVxuXG5ib2R5LmlzLXJldmVhbC1vcGVuIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuXG4ucmV2ZWFsLW92ZXJsYXkge1xuICBkaXNwbGF5OiBub25lO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgei1pbmRleDogMTAwNTtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgxMCwgMTAsIDEwLCAwLjQ1KTtcbiAgb3ZlcmZsb3cteTogc2Nyb2xsOyB9XG5cbi5yZXZlYWwge1xuICBkaXNwbGF5OiBub25lO1xuICB6LWluZGV4OiAxMDA2O1xuICBwYWRkaW5nOiAxcmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCAjREREO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjdmN2Y3O1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogMTAwcHg7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG92ZXJmbG93LXk6IGF1dG87IH1cbiAgW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddIC5yZXZlYWwge1xuICAgIG91dGxpbmU6IDA7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5yZXZlYWwge1xuICAgICAgbWluLWhlaWdodDogMDsgfSB9XG4gIC5yZXZlYWwgLmNvbHVtbiwgLnJldmVhbCAuY29sdW1ucyxcbiAgLnJldmVhbCAuY29sdW1ucyB7XG4gICAgbWluLXdpZHRoOiAwOyB9XG4gIC5yZXZlYWwgPiA6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLnJldmVhbCB7XG4gICAgICB3aWR0aDogNjAwcHg7XG4gICAgICBtYXgtd2lkdGg6IDc1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5yZXZlYWwgLnJldmVhbCB7XG4gICAgICBsZWZ0OiBhdXRvO1xuICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICBtYXJnaW46IDAgYXV0bzsgfSB9XG4gIC5yZXZlYWwuY29sbGFwc2Uge1xuICAgIHBhZGRpbmc6IDA7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5yZXZlYWwudGlueSB7XG4gICAgICB3aWR0aDogMzAlO1xuICAgICAgbWF4LXdpZHRoOiA3NXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAucmV2ZWFsLnNtYWxsIHtcbiAgICAgIHdpZHRoOiA1MCU7XG4gICAgICBtYXgtd2lkdGg6IDc1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5yZXZlYWwubGFyZ2Uge1xuICAgICAgd2lkdGg6IDkwJTtcbiAgICAgIG1heC13aWR0aDogNzVyZW07IH0gfVxuICAucmV2ZWFsLmZ1bGwge1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMHZoO1xuICAgIG1pbi1oZWlnaHQ6IDEwMHZoO1xuICAgIG1heC13aWR0aDogbm9uZTtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBib3JkZXI6IDA7XG4gICAgYm9yZGVyLXJhZGl1czogMDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45Mzc1ZW0pIHtcbiAgICAucmV2ZWFsIHtcbiAgICAgIHRvcDogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIGhlaWdodDogMTAwdmg7XG4gICAgICBtaW4taGVpZ2h0OiAxMDB2aDtcbiAgICAgIG1heC13aWR0aDogbm9uZTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgYm9yZGVyOiAwO1xuICAgICAgYm9yZGVyLXJhZGl1czogMDsgfSB9XG4gIC5yZXZlYWwud2l0aG91dC1vdmVybGF5IHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7IH1cblxuLnN3aXRjaCB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIG91dGxpbmU6IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIGNvbG9yOiAjZjdmN2Y3O1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTsgfVxuXG4uc3dpdGNoLWlucHV0IHtcbiAgb3BhY2l0eTogMDtcbiAgcG9zaXRpb246IGFic29sdXRlOyB9XG5cbi5zd2l0Y2gtcGFkZGxlIHtcbiAgYmFja2dyb3VuZDogI0RERDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogNHJlbTtcbiAgaGVpZ2h0OiAycmVtO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4yNXMgZWFzZS1vdXQ7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGNvbG9yOiBpbmhlcml0O1xuICBmb250LXdlaWdodDogaW5oZXJpdDsgfVxuICBpbnB1dCArIC5zd2l0Y2gtcGFkZGxlIHtcbiAgICBtYXJnaW46IDA7IH1cbiAgLnN3aXRjaC1wYWRkbGU6OmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kOiAjZjdmN2Y3O1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBoZWlnaHQ6IDEuNXJlbTtcbiAgICBsZWZ0OiAwLjI1cmVtO1xuICAgIHRvcDogMC4yNXJlbTtcbiAgICB3aWR0aDogMS41cmVtO1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjI1cyBlYXNlLW91dDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7IH1cbiAgaW5wdXQ6Y2hlY2tlZCB+IC5zd2l0Y2gtcGFkZGxlIHtcbiAgICBiYWNrZ3JvdW5kOiAjZGQzMzMzOyB9XG4gICAgaW5wdXQ6Y2hlY2tlZCB+IC5zd2l0Y2gtcGFkZGxlOjphZnRlciB7XG4gICAgICBsZWZ0OiAyLjI1cmVtOyB9XG4gIFtkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSBpbnB1dDpmb2N1cyB+IC5zd2l0Y2gtcGFkZGxlIHtcbiAgICBvdXRsaW5lOiAwOyB9XG5cbi5zd2l0Y2gtYWN0aXZlLCAuc3dpdGNoLWluYWN0aXZlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpOyB9XG5cbi5zd2l0Y2gtYWN0aXZlIHtcbiAgbGVmdDogOCU7XG4gIGRpc3BsYXk6IG5vbmU7IH1cbiAgaW5wdXQ6Y2hlY2tlZCArIGxhYmVsID4gLnN3aXRjaC1hY3RpdmUge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi5zd2l0Y2gtaW5hY3RpdmUge1xuICByaWdodDogMTUlOyB9XG4gIGlucHV0OmNoZWNrZWQgKyBsYWJlbCA+IC5zd2l0Y2gtaW5hY3RpdmUge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cblxuLnN3aXRjaC50aW55IC5zd2l0Y2gtcGFkZGxlIHtcbiAgd2lkdGg6IDNyZW07XG4gIGhlaWdodDogMS41cmVtO1xuICBmb250LXNpemU6IDAuNjI1cmVtOyB9XG5cbi5zd2l0Y2gudGlueSAuc3dpdGNoLXBhZGRsZTo6YWZ0ZXIge1xuICB3aWR0aDogMXJlbTtcbiAgaGVpZ2h0OiAxcmVtOyB9XG5cbi5zd2l0Y2gudGlueSBpbnB1dDpjaGVja2VkIH4gLnN3aXRjaC1wYWRkbGU6OmFmdGVyIHtcbiAgbGVmdDogMS43NXJlbTsgfVxuXG4uc3dpdGNoLnNtYWxsIC5zd2l0Y2gtcGFkZGxlIHtcbiAgd2lkdGg6IDMuNXJlbTtcbiAgaGVpZ2h0OiAxLjc1cmVtO1xuICBmb250LXNpemU6IDAuNzVyZW07IH1cblxuLnN3aXRjaC5zbWFsbCAuc3dpdGNoLXBhZGRsZTo6YWZ0ZXIge1xuICB3aWR0aDogMS4yNXJlbTtcbiAgaGVpZ2h0OiAxLjI1cmVtOyB9XG5cbi5zd2l0Y2guc21hbGwgaW5wdXQ6Y2hlY2tlZCB+IC5zd2l0Y2gtcGFkZGxlOjphZnRlciB7XG4gIGxlZnQ6IDJyZW07IH1cblxuLnN3aXRjaC5sYXJnZSAuc3dpdGNoLXBhZGRsZSB7XG4gIHdpZHRoOiA1cmVtO1xuICBoZWlnaHQ6IDIuNXJlbTtcbiAgZm9udC1zaXplOiAxcmVtOyB9XG5cbi5zd2l0Y2gubGFyZ2UgLnN3aXRjaC1wYWRkbGU6OmFmdGVyIHtcbiAgd2lkdGg6IDJyZW07XG4gIGhlaWdodDogMnJlbTsgfVxuXG4uc3dpdGNoLmxhcmdlIGlucHV0OmNoZWNrZWQgfiAuc3dpdGNoLXBhZGRsZTo6YWZ0ZXIge1xuICBsZWZ0OiAyLjc1cmVtOyB9XG5cbnRhYmxlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGJvcmRlci1yYWRpdXM6IDA7IH1cbiAgdGhlYWQsXG4gIHRib2R5LFxuICB0Zm9vdCB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2ViZWJlYjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjdmN2Y3OyB9XG4gIGNhcHRpb24ge1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIHBhZGRpbmc6IDAuNXJlbSAwLjYyNXJlbSAwLjYyNXJlbTsgfVxuICB0aGVhZCxcbiAgdGZvb3Qge1xuICAgIGJhY2tncm91bmQ6ICNmMWYxZjE7XG4gICAgY29sb3I6ICMxZDJhMjk7IH1cbiAgICB0aGVhZCB0cixcbiAgICB0Zm9vdCB0ciB7XG4gICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDsgfVxuICAgIHRoZWFkIHRoLFxuICAgIHRoZWFkIHRkLFxuICAgIHRmb290IHRoLFxuICAgIHRmb290IHRkIHtcbiAgICAgIHBhZGRpbmc6IDAuNXJlbSAwLjYyNXJlbSAwLjYyNXJlbTtcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgdGV4dC1hbGlnbjogbGVmdDsgfVxuICB0Ym9keSB0cjpudGgtY2hpbGQoZXZlbikge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNlYmViZWI7IH1cbiAgdGJvZHkgdGgsXG4gIHRib2R5IHRkIHtcbiAgICBwYWRkaW5nOiAwLjVyZW0gMC42MjVyZW0gMC42MjVyZW07IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gIHRhYmxlLnN0YWNrIHRoZWFkIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIHRhYmxlLnN0YWNrIHRmb290IHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIHRhYmxlLnN0YWNrIHRyLFxuICB0YWJsZS5zdGFjayB0aCxcbiAgdGFibGUuc3RhY2sgdGQge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gIHRhYmxlLnN0YWNrIHRkIHtcbiAgICBib3JkZXItdG9wOiAwOyB9IH1cblxudGFibGUuc2Nyb2xsIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBvdmVyZmxvdy14OiBhdXRvOyB9XG5cbnRhYmxlLmhvdmVyIHRyOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YyZjJmMjsgfVxuXG50YWJsZS5ob3ZlciB0cjpudGgtb2YtdHlwZShldmVuKTpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlNWU1ZTU7IH1cblxuLnRhYmxlLXNjcm9sbCB7XG4gIG92ZXJmbG93LXg6IGF1dG87IH1cbiAgLnRhYmxlLXNjcm9sbCB0YWJsZSB7XG4gICAgd2lkdGg6IGF1dG87IH1cblxuLnRhYnMge1xuICBtYXJnaW46IDA7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgYmFja2dyb3VuZDogI2Y3ZjdmNztcbiAgYm9yZGVyOiAxcHggc29saWQgI0UwRTBFMDsgfVxuICAudGFiczo6YmVmb3JlLCAudGFiczo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcgJztcbiAgICBkaXNwbGF5OiB0YWJsZTsgfVxuICAudGFiczo6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoOyB9XG5cbi50YWJzLnZlcnRpY2FsID4gbGkge1xuICB3aWR0aDogYXV0bztcbiAgZmxvYXQ6IG5vbmU7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi50YWJzLnNpbXBsZSA+IGxpID4gYSB7XG4gIHBhZGRpbmc6IDA7IH1cbiAgLnRhYnMuc2ltcGxlID4gbGkgPiBhOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDsgfVxuXG4udGFicy5wcmltYXJ5IHtcbiAgYmFja2dyb3VuZDogIzIxOTllODsgfVxuICAudGFicy5wcmltYXJ5ID4gbGkgPiBhIHtcbiAgICBjb2xvcjogI2Y3ZjdmNzsgfVxuICAgIC50YWJzLnByaW1hcnkgPiBsaSA+IGE6aG92ZXIsIC50YWJzLnByaW1hcnkgPiBsaSA+IGE6Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZDogIzE4OTNlNDsgfVxuXG4udGFicy10aXRsZSB7XG4gIGZsb2F0OiBsZWZ0OyB9XG4gIC50YWJzLXRpdGxlID4gYSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZzogMS4yNXJlbSAxLjVyZW07XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgZm9udC1zaXplOiAwLjc1cmVtOyB9XG4gICAgLnRhYnMtdGl0bGUgPiBhOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQ6ICNmN2Y3Zjc7IH1cbiAgICAudGFicy10aXRsZSA+IGE6Zm9jdXMsIC50YWJzLXRpdGxlID4gYVthcmlhLXNlbGVjdGVkPSd0cnVlJ10ge1xuICAgICAgYmFja2dyb3VuZDogI0UwRTBFMDsgfVxuXG4udGFicy1jb250ZW50IHtcbiAgYmFja2dyb3VuZDogI2Y3ZjdmNztcbiAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZTtcbiAgYm9yZGVyOiAxcHggc29saWQgI0UwRTBFMDtcbiAgYm9yZGVyLXRvcDogMDsgfVxuXG4udGFicy1jb250ZW50LnZlcnRpY2FsIHtcbiAgYm9yZGVyOiAxcHggc29saWQgI0UwRTBFMDtcbiAgYm9yZGVyLWxlZnQ6IDA7IH1cblxuLnRhYnMtcGFuZWwge1xuICBkaXNwbGF5OiBub25lO1xuICBwYWRkaW5nOiAxcmVtOyB9XG4gIC50YWJzLXBhbmVsLmlzLWFjdGl2ZSB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cblxuLnRodW1ibmFpbCB7XG4gIGJvcmRlcjogc29saWQgNHB4ICNmN2Y3Zjc7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDFweCByZ2JhKDEwLCAxMCwgMTAsIDAuMik7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAyMDBtcyBlYXNlLW91dDtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTsgfVxuICAudGh1bWJuYWlsOmhvdmVyLCAudGh1bWJuYWlsOmZvY3VzIHtcbiAgICBib3gtc2hhZG93OiAwIDAgNnB4IDFweCByZ2JhKDIyMSwgNTEsIDUxLCAwLjUpOyB9XG5cbi50aXRsZS1iYXIge1xuICBiYWNrZ3JvdW5kOiAjMGEwYTBhO1xuICBjb2xvcjogI2Y3ZjdmNztcbiAgcGFkZGluZzogMC41cmVtOyB9XG4gIC50aXRsZS1iYXI6OmJlZm9yZSwgLnRpdGxlLWJhcjo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcgJztcbiAgICBkaXNwbGF5OiB0YWJsZTsgfVxuICAudGl0bGUtYmFyOjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgLnRpdGxlLWJhciAubWVudS1pY29uIHtcbiAgICBtYXJnaW4tbGVmdDogMC4yNXJlbTtcbiAgICBtYXJnaW4tcmlnaHQ6IDAuNXJlbTsgfVxuXG4udGl0bGUtYmFyLWxlZnQge1xuICBmbG9hdDogbGVmdDsgfVxuXG4udGl0bGUtYmFyLXJpZ2h0IHtcbiAgZmxvYXQ6IHJpZ2h0O1xuICB0ZXh0LWFsaWduOiByaWdodDsgfVxuXG4udGl0bGUtYmFyLXRpdGxlIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuXG4ubWVudS1pY29uLmRhcmsge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB3aWR0aDogMjBweDtcbiAgaGVpZ2h0OiAxNnB4OyB9XG4gIC5tZW51LWljb24uZGFyazo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDJweDtcbiAgICBiYWNrZ3JvdW5kOiAjMGEwYTBhO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIGJveC1zaGFkb3c6IDAgN3B4IDAgIzBhMGEwYSwgMCAxNHB4IDAgIzBhMGEwYTsgfVxuICAubWVudS1pY29uLmRhcms6aG92ZXI6OmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kOiAjOGE4YThhO1xuICAgIGJveC1zaGFkb3c6IDAgN3B4IDAgIzhhOGE4YSwgMCAxNHB4IDAgIzhhOGE4YTsgfVxuXG4ubWVudS1pY29uIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgd2lkdGg6IDIwcHg7XG4gIGhlaWdodDogMTZweDsgfVxuICAubWVudS1pY29uOjphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMnB4O1xuICAgIGJhY2tncm91bmQ6ICNmN2Y3Zjc7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgYm94LXNoYWRvdzogMCA3cHggMCAjZjdmN2Y3LCAwIDE0cHggMCAjZjdmN2Y3OyB9XG4gIC5tZW51LWljb246aG92ZXI6OmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kOiAjREREO1xuICAgIGJveC1zaGFkb3c6IDAgN3B4IDAgI0RERCwgMCAxNHB4IDAgI0RERDsgfVxuXG4ubWVudS1pY29uLmRhcmsge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB3aWR0aDogMjBweDtcbiAgaGVpZ2h0OiAxNnB4OyB9XG4gIC5tZW51LWljb24uZGFyazo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDJweDtcbiAgICBiYWNrZ3JvdW5kOiAjMGEwYTBhO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIGJveC1zaGFkb3c6IDAgN3B4IDAgIzBhMGEwYSwgMCAxNHB4IDAgIzBhMGEwYTsgfVxuICAubWVudS1pY29uLmRhcms6aG92ZXI6OmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kOiAjOGE4YThhO1xuICAgIGJveC1zaGFkb3c6IDAgN3B4IDAgIzhhOGE4YSwgMCAxNHB4IDAgIzhhOGE4YTsgfVxuXG4uaGFzLXRpcCB7XG4gIGJvcmRlci1ib3R0b206IGRvdHRlZCAxcHggIzhhOGE4YTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBjdXJzb3I6IGhlbHA7IH1cblxuLnRvb2x0aXAge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGEwYTBhO1xuICBjb2xvcjogI2Y3ZjdmNztcbiAgZm9udC1zaXplOiA4MCU7XG4gIHBhZGRpbmc6IDAuNzVyZW07XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTA7XG4gIHRvcDogY2FsYygxMDAlICsgMC42NDk1cmVtKTtcbiAgbWF4LXdpZHRoOiAxMHJlbSAhaW1wb3J0YW50O1xuICBib3JkZXItcmFkaXVzOiAwOyB9XG4gIC50b29sdGlwOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXI6IGluc2V0IDAuNzVyZW07XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAjMGEwYTBhO1xuICAgIGJvcmRlci1ib3R0b20tc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci10b3Atd2lkdGg6IDA7XG4gICAgYm90dG9tOiAxMDAlO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpOyB9XG4gIC50b29sdGlwLnRvcDo6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgYm9yZGVyOiBpbnNldCAwLjc1cmVtO1xuICAgIGJvcmRlci1jb2xvcjogIzBhMGEwYSB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItdG9wLXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xuICAgIHRvcDogMTAwJTtcbiAgICBib3R0b206IGF1dG87IH1cbiAgLnRvb2x0aXAubGVmdDo6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgYm9yZGVyOiBpbnNldCAwLjc1cmVtO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgIzBhMGEwYTtcbiAgICBib3JkZXItbGVmdC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLXJpZ2h0LXdpZHRoOiAwO1xuICAgIGJvdHRvbTogYXV0bztcbiAgICBsZWZ0OiAxMDAlO1xuICAgIHRvcDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTsgfVxuICAudG9vbHRpcC5yaWdodDo6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgYm9yZGVyOiBpbnNldCAwLjc1cmVtO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgIzBhMGEwYSB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItcmlnaHQtc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xuICAgIGJvdHRvbTogYXV0bztcbiAgICBsZWZ0OiBhdXRvO1xuICAgIHJpZ2h0OiAxMDAlO1xuICAgIHRvcDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTsgfVxuXG4udG9wLWJhciB7XG4gIHBhZGRpbmc6IDAuNXJlbTsgfVxuICAudG9wLWJhcjo6YmVmb3JlLCAudG9wLWJhcjo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcgJztcbiAgICBkaXNwbGF5OiB0YWJsZTsgfVxuICAudG9wLWJhcjo6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIC50b3AtYmFyLFxuICAudG9wLWJhciB1bCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzBhMGEwYTsgfVxuICAudG9wLWJhciBpbnB1dCB7XG4gICAgbWF4LXdpZHRoOiAyMDBweDtcbiAgICBtYXJnaW4tcmlnaHQ6IDFyZW07IH1cbiAgLnRvcC1iYXIgLmlucHV0LWdyb3VwLWZpZWxkIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7IH1cbiAgLnRvcC1iYXIgaW5wdXQuYnV0dG9uIHtcbiAgICB3aWR0aDogYXV0bzsgfVxuICAudG9wLWJhciAudG9wLWJhci1sZWZ0LFxuICAudG9wLWJhciAudG9wLWJhci1yaWdodCB7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC50b3AtYmFyIC50b3AtYmFyLWxlZnQsXG4gICAgLnRvcC1iYXIgLnRvcC1iYXItcmlnaHQge1xuICAgICAgd2lkdGg6IGF1dG87IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgICAudG9wLWJhci5zdGFja2VkLWZvci1tZWRpdW0gLnRvcC1iYXItbGVmdCxcbiAgICAudG9wLWJhci5zdGFja2VkLWZvci1tZWRpdW0gLnRvcC1iYXItcmlnaHQge1xuICAgICAgd2lkdGg6IDEwMCU7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NC45Mzc1ZW0pIHtcbiAgICAudG9wLWJhci5zdGFja2VkLWZvci1sYXJnZSAudG9wLWJhci1sZWZ0LFxuICAgIC50b3AtYmFyLnN0YWNrZWQtZm9yLWxhcmdlIC50b3AtYmFyLXJpZ2h0IHtcbiAgICAgIHdpZHRoOiAxMDAlOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogODkuOTM3NWVtKSB7XG4gICAgLnRvcC1iYXIuc3RhY2tlZC1mb3IteGxhcmdlIC50b3AtYmFyLWxlZnQsXG4gICAgLnRvcC1iYXIuc3RhY2tlZC1mb3IteGxhcmdlIC50b3AtYmFyLXJpZ2h0IHtcbiAgICAgIHdpZHRoOiAxMDAlOyB9IH1cbiAgLnRvcC1iYXIuc3RhY2tlZC1mb3IteHhsYXJnZSAudG9wLWJhci1sZWZ0LFxuICAudG9wLWJhci5zdGFja2VkLWZvci14eGxhcmdlIC50b3AtYmFyLXJpZ2h0IHtcbiAgICB3aWR0aDogMTAwJTsgfVxuXG4udG9wLWJhci10aXRsZSB7XG4gIGZsb2F0OiBsZWZ0O1xuICBtYXJnaW4tcmlnaHQ6IDFyZW07IH1cblxuLnRvcC1iYXItbGVmdCB7XG4gIGZsb2F0OiBsZWZ0OyB9XG5cbi50b3AtYmFyLXJpZ2h0IHtcbiAgZmxvYXQ6IHJpZ2h0OyB9XG5cbi5zbGlkZS1pbi1kb3duLm11aS1lbnRlciB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAwJSk7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOyB9XG5cbi5zbGlkZS1pbi1kb3duLm11aS1lbnRlci5tdWktZW50ZXItYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApOyB9XG5cbi5zbGlkZS1pbi1sZWZ0Lm11aS1lbnRlciB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSk7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOyB9XG5cbi5zbGlkZS1pbi1sZWZ0Lm11aS1lbnRlci5tdWktZW50ZXItYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApOyB9XG5cbi5zbGlkZS1pbi11cC5tdWktZW50ZXIge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTAwJSk7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOyB9XG5cbi5zbGlkZS1pbi11cC5tdWktZW50ZXIubXVpLWVudGVyLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTsgfVxuXG4uc2xpZGUtaW4tcmlnaHQubXVpLWVudGVyIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsgfVxuXG4uc2xpZGUtaW4tcmlnaHQubXVpLWVudGVyLm11aS1lbnRlci1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7IH1cblxuLnNsaWRlLW91dC1kb3duLm11aS1sZWF2ZSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47IH1cblxuLnNsaWRlLW91dC1kb3duLm11aS1sZWF2ZS5tdWktbGVhdmUtYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwMCUpOyB9XG5cbi5zbGlkZS1vdXQtcmlnaHQubXVpLWxlYXZlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsgfVxuXG4uc2xpZGUtb3V0LXJpZ2h0Lm11aS1sZWF2ZS5tdWktbGVhdmUtYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpOyB9XG5cbi5zbGlkZS1vdXQtdXAubXVpLWxlYXZlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsgfVxuXG4uc2xpZGUtb3V0LXVwLm11aS1sZWF2ZS5tdWktbGVhdmUtYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDAlKTsgfVxuXG4uc2xpZGUtb3V0LWxlZnQubXVpLWxlYXZlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsgfVxuXG4uc2xpZGUtb3V0LWxlZnQubXVpLWxlYXZlLm11aS1sZWF2ZS1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpOyB9XG5cbi5mYWRlLWluLm11aS1lbnRlciB7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IG9wYWNpdHk7IH1cblxuLmZhZGUtaW4ubXVpLWVudGVyLm11aS1lbnRlci1hY3RpdmUge1xuICBvcGFjaXR5OiAxOyB9XG5cbi5mYWRlLW91dC5tdWktbGVhdmUge1xuICBvcGFjaXR5OiAxO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5OyB9XG5cbi5mYWRlLW91dC5tdWktbGVhdmUubXVpLWxlYXZlLWFjdGl2ZSB7XG4gIG9wYWNpdHk6IDA7IH1cblxuLmhpbmdlLWluLWZyb20tdG9wLm11aS1lbnRlciB7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGVYKC05MGRlZyk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IHRvcDtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAwOyB9XG5cbi5oaW5nZS1pbi1mcm9tLXRvcC5tdWktZW50ZXIubXVpLWVudGVyLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGUoMGRlZyk7XG4gIG9wYWNpdHk6IDE7IH1cblxuLmhpbmdlLWluLWZyb20tcmlnaHQubXVpLWVudGVyIHtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVkoLTkwZGVnKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQ7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMDsgfVxuXG4uaGluZ2UtaW4tZnJvbS1yaWdodC5tdWktZW50ZXIubXVpLWVudGVyLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGUoMGRlZyk7XG4gIG9wYWNpdHk6IDE7IH1cblxuLmhpbmdlLWluLWZyb20tYm90dG9tLm11aS1lbnRlciB7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGVYKDkwZGVnKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogYm90dG9tO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDA7IH1cblxuLmhpbmdlLWluLWZyb20tYm90dG9tLm11aS1lbnRlci5tdWktZW50ZXItYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZSgwZGVnKTtcbiAgb3BhY2l0eTogMTsgfVxuXG4uaGluZ2UtaW4tZnJvbS1sZWZ0Lm11aS1lbnRlciB7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGVZKDkwZGVnKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdDtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAwOyB9XG5cbi5oaW5nZS1pbi1mcm9tLWxlZnQubXVpLWVudGVyLm11aS1lbnRlci1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlKDBkZWcpO1xuICBvcGFjaXR5OiAxOyB9XG5cbi5oaW5nZS1pbi1mcm9tLW1pZGRsZS14Lm11aS1lbnRlciB7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGVYKC05MGRlZyk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAwOyB9XG5cbi5oaW5nZS1pbi1mcm9tLW1pZGRsZS14Lm11aS1lbnRlci5tdWktZW50ZXItYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZSgwZGVnKTtcbiAgb3BhY2l0eTogMTsgfVxuXG4uaGluZ2UtaW4tZnJvbS1taWRkbGUteS5tdWktZW50ZXIge1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlWSgtOTBkZWcpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMDsgfVxuXG4uaGluZ2UtaW4tZnJvbS1taWRkbGUteS5tdWktZW50ZXIubXVpLWVudGVyLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGUoMGRlZyk7XG4gIG9wYWNpdHk6IDE7IH1cblxuLmhpbmdlLW91dC1mcm9tLXRvcC5tdWktbGVhdmUge1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlKDBkZWcpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiB0b3A7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMTsgfVxuXG4uaGluZ2Utb3V0LWZyb20tdG9wLm11aS1sZWF2ZS5tdWktbGVhdmUtYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVgoLTkwZGVnKTtcbiAgb3BhY2l0eTogMDsgfVxuXG4uaGluZ2Utb3V0LWZyb20tcmlnaHQubXVpLWxlYXZlIHtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZSgwZGVnKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQ7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMTsgfVxuXG4uaGluZ2Utb3V0LWZyb20tcmlnaHQubXVpLWxlYXZlLm11aS1sZWF2ZS1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlWSgtOTBkZWcpO1xuICBvcGFjaXR5OiAwOyB9XG5cbi5oaW5nZS1vdXQtZnJvbS1ib3R0b20ubXVpLWxlYXZlIHtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZSgwZGVnKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogYm90dG9tO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDE7IH1cblxuLmhpbmdlLW91dC1mcm9tLWJvdHRvbS5tdWktbGVhdmUubXVpLWxlYXZlLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGVYKDkwZGVnKTtcbiAgb3BhY2l0eTogMDsgfVxuXG4uaGluZ2Utb3V0LWZyb20tbGVmdC5tdWktbGVhdmUge1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlKDBkZWcpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0O1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDE7IH1cblxuLmhpbmdlLW91dC1mcm9tLWxlZnQubXVpLWxlYXZlLm11aS1sZWF2ZS1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlWSg5MGRlZyk7XG4gIG9wYWNpdHk6IDA7IH1cblxuLmhpbmdlLW91dC1mcm9tLW1pZGRsZS14Lm11aS1sZWF2ZSB7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGUoMGRlZyk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAxOyB9XG5cbi5oaW5nZS1vdXQtZnJvbS1taWRkbGUteC5tdWktbGVhdmUubXVpLWxlYXZlLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGVYKC05MGRlZyk7XG4gIG9wYWNpdHk6IDA7IH1cblxuLmhpbmdlLW91dC1mcm9tLW1pZGRsZS15Lm11aS1sZWF2ZSB7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGUoMGRlZyk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAxOyB9XG5cbi5oaW5nZS1vdXQtZnJvbS1taWRkbGUteS5tdWktbGVhdmUubXVpLWxlYXZlLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGVZKC05MGRlZyk7XG4gIG9wYWNpdHk6IDA7IH1cblxuLnNjYWxlLWluLXVwLm11aS1lbnRlciB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMC41KTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAwOyB9XG5cbi5zY2FsZS1pbi11cC5tdWktZW50ZXIubXVpLWVudGVyLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIG9wYWNpdHk6IDE7IH1cblxuLnNjYWxlLWluLWRvd24ubXVpLWVudGVyIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxLjUpO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDA7IH1cblxuLnNjYWxlLWluLWRvd24ubXVpLWVudGVyLm11aS1lbnRlci1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICBvcGFjaXR5OiAxOyB9XG5cbi5zY2FsZS1vdXQtdXAubXVpLWxlYXZlIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAxOyB9XG5cbi5zY2FsZS1vdXQtdXAubXVpLWxlYXZlLm11aS1sZWF2ZS1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHNjYWxlKDEuNSk7XG4gIG9wYWNpdHk6IDA7IH1cblxuLnNjYWxlLW91dC1kb3duLm11aS1sZWF2ZSB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMTsgfVxuXG4uc2NhbGUtb3V0LWRvd24ubXVpLWxlYXZlLm11aS1sZWF2ZS1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHNjYWxlKDAuNSk7XG4gIG9wYWNpdHk6IDA7IH1cblxuLnNwaW4taW4ubXVpLWVudGVyIHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoLTAuNzV0dXJuKTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAwOyB9XG5cbi5zcGluLWluLm11aS1lbnRlci5tdWktZW50ZXItYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMCk7XG4gIG9wYWNpdHk6IDE7IH1cblxuLnNwaW4tb3V0Lm11aS1sZWF2ZSB7XG4gIHRyYW5zZm9ybTogcm90YXRlKDApO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDE7IH1cblxuLnNwaW4tb3V0Lm11aS1sZWF2ZS5tdWktbGVhdmUtYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMC43NXR1cm4pO1xuICBvcGFjaXR5OiAwOyB9XG5cbi5zcGluLWluLWNjdy5tdWktZW50ZXIge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgwLjc1dHVybik7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMDsgfVxuXG4uc3Bpbi1pbi1jY3cubXVpLWVudGVyLm11aS1lbnRlci1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgwKTtcbiAgb3BhY2l0eTogMTsgfVxuXG4uc3Bpbi1vdXQtY2N3Lm11aS1sZWF2ZSB7XG4gIHRyYW5zZm9ybTogcm90YXRlKDApO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDE7IH1cblxuLnNwaW4tb3V0LWNjdy5tdWktbGVhdmUubXVpLWxlYXZlLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogcm90YXRlKC0wLjc1dHVybik7XG4gIG9wYWNpdHk6IDA7IH1cblxuLnNsb3cge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA3NTBtcyAhaW1wb3J0YW50OyB9XG5cbi5mYXN0IHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMjUwbXMgIWltcG9ydGFudDsgfVxuXG4ubGluZWFyIHtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhciAhaW1wb3J0YW50OyB9XG5cbi5lYXNlIHtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UgIWltcG9ydGFudDsgfVxuXG4uZWFzZS1pbiB7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluICFpbXBvcnRhbnQ7IH1cblxuLmVhc2Utb3V0IHtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0ICFpbXBvcnRhbnQ7IH1cblxuLmVhc2UtaW4tb3V0IHtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0ICFpbXBvcnRhbnQ7IH1cblxuLmJvdW5jZS1pbiB7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC40ODUsIDAuMTU1LCAwLjI0LCAxLjI0NSkgIWltcG9ydGFudDsgfVxuXG4uYm91bmNlLW91dCB7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC40ODUsIDAuMTU1LCAwLjUxNSwgMC44NDUpICFpbXBvcnRhbnQ7IH1cblxuLmJvdW5jZS1pbi1vdXQge1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNzYsIC0wLjI0NSwgMC4yNCwgMS4yNDUpICFpbXBvcnRhbnQ7IH1cblxuLnNob3J0LWRlbGF5IHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMzAwbXMgIWltcG9ydGFudDsgfVxuXG4ubG9uZy1kZWxheSB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDcwMG1zICFpbXBvcnRhbnQ7IH1cblxuLnNoYWtlIHtcbiAgYW5pbWF0aW9uLW5hbWU6IHNoYWtlLTc7IH1cblxuQGtleWZyYW1lcyBzaGFrZS03IHtcbiAgMCUsIDEwJSwgMjAlLCAzMCUsIDQwJSwgNTAlLCA2MCUsIDcwJSwgODAlLCA5MCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCg3JSk7IH1cbiAgNSUsIDE1JSwgMjUlLCAzNSUsIDQ1JSwgNTUlLCA2NSUsIDc1JSwgODUlLCA5NSUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNyUpOyB9IH1cblxuLnNwaW4tY3cge1xuICBhbmltYXRpb24tbmFtZTogc3Bpbi1jdy0xdHVybjsgfVxuXG5Aa2V5ZnJhbWVzIHNwaW4tY3ctMXR1cm4ge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoLTF0dXJuKTsgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwKTsgfSB9XG5cbi5zcGluLWNjdyB7XG4gIGFuaW1hdGlvbi1uYW1lOiBzcGluLWN3LTF0dXJuOyB9XG5cbkBrZXlmcmFtZXMgc3Bpbi1jdy0xdHVybiB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwKTsgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxdHVybik7IH0gfVxuXG4ud2lnZ2xlIHtcbiAgYW5pbWF0aW9uLW5hbWU6IHdpZ2dsZS03ZGVnOyB9XG5cbkBrZXlmcmFtZXMgd2lnZ2xlLTdkZWcge1xuICA0MCUsIDUwJSwgNjAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSg3ZGVnKTsgfVxuICAzNSUsIDQ1JSwgNTUlLCA2NSUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKC03ZGVnKTsgfVxuICAwJSwgMzAlLCA3MCUsIDEwMCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDApOyB9IH1cblxuLmluZmluaXRlIHtcbiAgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogaW5maW5pdGU7IH1cblxuLnNsb3cge1xuICBhbmltYXRpb24tZHVyYXRpb246IDc1MG1zICFpbXBvcnRhbnQ7IH1cblxuLmZhc3Qge1xuICBhbmltYXRpb24tZHVyYXRpb246IDI1MG1zICFpbXBvcnRhbnQ7IH1cblxuLmxpbmVhciB7XG4gIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhciAhaW1wb3J0YW50OyB9XG5cbi5lYXNlIHtcbiAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZSAhaW1wb3J0YW50OyB9XG5cbi5lYXNlLWluIHtcbiAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbiAhaW1wb3J0YW50OyB9XG5cbi5lYXNlLW91dCB7XG4gIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0ICFpbXBvcnRhbnQ7IH1cblxuLmVhc2UtaW4tb3V0IHtcbiAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQgIWltcG9ydGFudDsgfVxuXG4uYm91bmNlLWluIHtcbiAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNDg1LCAwLjE1NSwgMC4yNCwgMS4yNDUpICFpbXBvcnRhbnQ7IH1cblxuLmJvdW5jZS1vdXQge1xuICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC40ODUsIDAuMTU1LCAwLjUxNSwgMC44NDUpICFpbXBvcnRhbnQ7IH1cblxuLmJvdW5jZS1pbi1vdXQge1xuICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC43NiwgLTAuMjQ1LCAwLjI0LCAxLjI0NSkgIWltcG9ydGFudDsgfVxuXG4uc2hvcnQtZGVsYXkge1xuICBhbmltYXRpb24tZGVsYXk6IDMwMG1zICFpbXBvcnRhbnQ7IH1cblxuLmxvbmctZGVsYXkge1xuICBhbmltYXRpb24tZGVsYXk6IDcwMG1zICFpbXBvcnRhbnQ7IH1cblxuLypcbiAqIEFkZCBzb21lIHJ1bGVzIHRvIG11bHRpcGx5IGEgc2l6ZSAodXNpbmcgRU0pLCBkZWZhdWx0IGlzXG4gKiBmb3IgJ2ZvbnQtc2l6ZScgcHJvcGVydHlcbiAqXG4gKiBVc2luZzpcbiAqXG4gKiAgICAgLmZvb3tcbiAqICAgICAgICAgQGluY2x1ZGUgZm9udC1tdWx0aXBsaWVyKDIgNCA2KTtcbiAqICAgICB9XG4gKlxuICogV2lsbCBwcm9kdWNlIHNvbWV0aGluZyBsaWtlOlxuICpcbiAqICAgIC5mb28uMnh7IGZvbnQtc2l6ZTogMmVtIH1cbiAqICAgIC5mb28uNHh7IGZvbnQtc2l6ZTogNGVtIH1cbiAqICAgIC5mb28uNHh7IGZvbnQtc2l6ZTogNmVtIH1cbiAqXG4gKiBVc2luZyBhbGwgb3B0aW9uYWwgYXJndW1lbnRzOlxuICpcbiAqICAgICAuZm9ve1xuICogICAgICAgICBAaW5jbHVkZSBmb250LW11bHRpcGxpZXIoMiA0IDYsICRzZWxlY3Rvci1wcmVmaXg6IFwiaWNvblwiLCAkc2VsZWN0b3ItcHNldWRvOiBcImJlZm9yZVwiLCAkcHJvcGVydHk6IFwicGFkZGluZy1sZWZ0XCIpO1xuICogICAgIH1cbiAqXG4gKiBXaWxsIHByb2R1Y2Ugc29tZXRoaW5nIGxpa2U6XG4gKlxuICogICAgLmZvby5pY29uLTJ4OjpiZWZvcmV7IHBhZGRpbmctbGVmdDogMmVtIH1cbiAqICAgIC5mb28uaWNvbi00eDo6YmVmb3JleyBwYWRkaW5nLWxlZnQ6IDRlbSB9XG4gKiAgICAuZm9vLmljb24tNHg6OmJlZm9yZXsgcGFkZGluZy1sZWZ0OiA2ZW0gfVxuICpcbiAqL1xuLypcbiAqIE1peGluIHRvIGFkZCBmb250IGFuZCBiYWNrZ3JvdW5kIGNvbG9ycyBpbnRvIGEgY29udGFpbmVyIGFuZCBlbmZvcmNlIHRoZXNlXG4gKiBjb2xvcnMgb24gaXRzIGVsZW1lbnRzXG4gKi9cbi8qXG4gKiBWZW5kb3IgcHJlZml4IGZvciBsYXN0IGJyZWFrLWluc2lkZSBzeW50YXggKG5vdCBzdXBwb3J0ZWQgaW4gQ29tcGFzcyAwLngpXG4gKi9cbi8qXG4gKiBDcmVhdGUgZmxleCBjZWxsIHdpZHRoIHJ1bGVzXG4gKi9cbi8qXG4gKiBNaXhpbiB0byBjcmVhdGUgY2VsbHMgd2lkdGhzIHdpdGggZmxleGJveFxuICpcbiAqIFdpbGwgcHJvZHVjZSByZXNwb25zaXZlIGNsYXNzIGxpa2U6XG4gKlxuICogICAuc21hbGwtNTB7Li4ufVxuICogICAubWVkaXVtLTUwey4uLn1cbiAqICAgZXRjLi5cbiAqXG4gKiBEZXBlbmRpbmcgb24gbWl4aW4gZGVjbGFyYXRpb25zLlxuICpcbiAqIFVzYWJsZSBpbiBjb25qdW5jdGlvbiB3aXRoIFwiLmNlbGxcIi5cbiAqL1xuLypcbiAqIE1peGluIHRvIGNyZWF0ZSBmbGV4Ym94IGRpc3BsYXkgY2xhc3Nlc1xuICpcbiAqIFdpbGwgcHJvZHVjZSBnbG9iYWwgYW5kIHJlc3BvbnNpdmUgY2xhc3NlcyBsaWtlOlxuICpcbiAqICAgLmZsZXh7Li4ufVxuICogICAuZmxleC1zbWFsbHsuLi59XG4gKiAgIC5mbGV4LW1lZGl1bXsuLi59XG4gKiAgIGV0Yy4uXG4gKlxuICovXG4vKlxuICogTWl4aW4gdG8gY3JlYXRlIFwic2ltcGxlXCIgY2VsbHMgd2lkdGhzXG4gKiBNaXhpbiB0byBzaW11bGF0ZSBpbmxpbmUgbGlzdCwgdXNlZCBhcyBhIGZhbGxiYWNrXG4gKlxuICogUmVwcm9kdWNlIHRoZSBzYW1lIG5hbWUgcGF0dGVybiBhcyBpbiBtaXhpbiBcIi1lbWVuY2lhLWZsZXgtZ3JpZC1jbGFzc2VzXCJcbiAqL1xuLypcbiAqIElubGluZSBsaXN0IHdpdGggZmxleGJveFxuICovXG5odG1sIC5mbGV4IHtcbiAgZGlzcGxheTogZmxleDsgfVxuXG5AbWVkaWEgc2NyZWVuIHtcbiAgaHRtbCAuZmxleC1zbWFsbCB7XG4gICAgZGlzcGxheTogZmxleDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgaHRtbCAuZmxleC1tZWRpdW0ge1xuICAgIGRpc3BsYXk6IGZsZXg7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIGh0bWwgLmZsZXgtbGFyZ2Uge1xuICAgIGRpc3BsYXk6IGZsZXg7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIGh0bWwgLmZsZXgteGxhcmdlIHtcbiAgICBkaXNwbGF5OiBmbGV4OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICBodG1sIC5mbGV4LXh4bGFyZ2Uge1xuICAgIGRpc3BsYXk6IGZsZXg7IH0gfVxuXG5odG1sIC5mbGV4LWdyaWQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBtYXJnaW4tbGVmdDogMDtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICAvKlxuICAgICAqIFJlc3BvbnNpdmUgY2VsbCBzaXplc1xuICAgICAqL1xuICAvKlxuICAgICAqIFJlc3BvbnNpdmUgcGFkZGluZyBpbiBhbGwgY29udGFpbmVkIGNlbGxzXG4gICAgICovXG4gIC8qXG4gICAgICogUmVzcG9uc2l2ZSBtYXJnaW4gb24gYWxsIGNvbnRhaW5lZCBjZWxsc1xuICAgICAqLyB9XG4gIGh0bWwgLmZsZXgtZ3JpZCA+IC5jZWxsIHtcbiAgICBmbGV4OiAxIDAgYXV0bztcbiAgICBtYXgtd2lkdGg6IGF1dG87XG4gICAgbWFyZ2luOiAwO1xuICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgICAvKlxuICAgICAgICogU29tZSBjZWxsIGNvbnRlbnRzIGFsaWdubWVudHNcbiAgICAgICAqLyB9XG4gICAgaHRtbCAuZmxleC1ncmlkID4gLmNlbGwgPiBwOmxhc3QtY2hpbGQge1xuICAgICAgbWFyZ2luOiAwOyB9XG4gICAgaHRtbCAuZmxleC1ncmlkID4gLmNlbGwuZmxleC12ZXJ0aWNhbC1zdGFydC1zdGFjayB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDsgfVxuICAgIGh0bWwgLmZsZXgtZ3JpZCA+IC5jZWxsLmZsZXgtdmVydGljYWwtZW5kLXN0YWNrIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuOyB9XG4gICAgaHRtbCAuZmxleC1ncmlkID4gLmNlbGwuZmxleC12ZXJ0aWNhbC1jZW50ZXItc3RhY2sge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfVxuICAgIGh0bWwgLmZsZXgtZ3JpZCA+IC5jZWxsLmZsZXgtc3BhY2UtYXJvdW5kLXN0YWNrIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQ7IH1cbiAgICBodG1sIC5mbGV4LWdyaWQgPiAuY2VsbC5mbGV4LXNwYWNlLWJldHdlZW4tc3RhY2sge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IH1cbiAgQG1lZGlhIHNjcmVlbiB7XG4gICAgaHRtbCAuZmxleC1ncmlkID4gLnNtYWxsLTIzIHtcbiAgICAgIGZsZXg6IDEgMCAyMyU7XG4gICAgICBtYXgtd2lkdGg6IDIzJTsgfVxuICAgIGh0bWwgLmZsZXgtZ3JpZCA+IC5zbWFsbC0yNSB7XG4gICAgICBmbGV4OiAxIDAgMjUlO1xuICAgICAgbWF4LXdpZHRoOiAyNSU7IH1cbiAgICBodG1sIC5mbGV4LWdyaWQgPiAuc21hbGwtMzEge1xuICAgICAgZmxleDogMSAwIDMxLjMzMzMlO1xuICAgICAgbWF4LXdpZHRoOiAzMS4zMzMzJTsgfVxuICAgIGh0bWwgLmZsZXgtZ3JpZCA+IC5zbWFsbC0zMyB7XG4gICAgICBmbGV4OiAxIDAgMzMuMzMzMyU7XG4gICAgICBtYXgtd2lkdGg6IDMzLjMzMzMlOyB9XG4gICAgaHRtbCAuZmxleC1ncmlkID4gLnNtYWxsLTQ4IHtcbiAgICAgIGZsZXg6IDEgMCA0OCU7XG4gICAgICBtYXgtd2lkdGg6IDQ4JTsgfVxuICAgIGh0bWwgLmZsZXgtZ3JpZCA+IC5zbWFsbC01MCB7XG4gICAgICBmbGV4OiAxIDAgNTAlO1xuICAgICAgbWF4LXdpZHRoOiA1MCU7IH1cbiAgICBodG1sIC5mbGV4LWdyaWQgPiAuc21hbGwtNzMge1xuICAgICAgZmxleDogMSAwIDczJTtcbiAgICAgIG1heC13aWR0aDogNzMlOyB9XG4gICAgaHRtbCAuZmxleC1ncmlkID4gLnNtYWxsLTc1IHtcbiAgICAgIGZsZXg6IDEgMCA3NSU7XG4gICAgICBtYXgtd2lkdGg6IDc1JTsgfVxuICAgIGh0bWwgLmZsZXgtZ3JpZCA+IC5zbWFsbC05OCB7XG4gICAgICBmbGV4OiAxIDAgOTglO1xuICAgICAgbWF4LXdpZHRoOiA5OCU7IH1cbiAgICBodG1sIC5mbGV4LWdyaWQgPiAuc21hbGwtMTAwIHtcbiAgICAgIGZsZXg6IDEgMCAxMDAlO1xuICAgICAgbWF4LXdpZHRoOiAxMDAlOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIGh0bWwgLmZsZXgtZ3JpZCA+IC5tZWRpdW0tMjMge1xuICAgICAgZmxleDogMSAwIDIzJTtcbiAgICAgIG1heC13aWR0aDogMjMlOyB9XG4gICAgaHRtbCAuZmxleC1ncmlkID4gLm1lZGl1bS0yNSB7XG4gICAgICBmbGV4OiAxIDAgMjUlO1xuICAgICAgbWF4LXdpZHRoOiAyNSU7IH1cbiAgICBodG1sIC5mbGV4LWdyaWQgPiAubWVkaXVtLTMxIHtcbiAgICAgIGZsZXg6IDEgMCAzMS4zMzMzJTtcbiAgICAgIG1heC13aWR0aDogMzEuMzMzMyU7IH1cbiAgICBodG1sIC5mbGV4LWdyaWQgPiAubWVkaXVtLTMzIHtcbiAgICAgIGZsZXg6IDEgMCAzMy4zMzMzJTtcbiAgICAgIG1heC13aWR0aDogMzMuMzMzMyU7IH1cbiAgICBodG1sIC5mbGV4LWdyaWQgPiAubWVkaXVtLTQ4IHtcbiAgICAgIGZsZXg6IDEgMCA0OCU7XG4gICAgICBtYXgtd2lkdGg6IDQ4JTsgfVxuICAgIGh0bWwgLmZsZXgtZ3JpZCA+IC5tZWRpdW0tNTAge1xuICAgICAgZmxleDogMSAwIDUwJTtcbiAgICAgIG1heC13aWR0aDogNTAlOyB9XG4gICAgaHRtbCAuZmxleC1ncmlkID4gLm1lZGl1bS03MyB7XG4gICAgICBmbGV4OiAxIDAgNzMlO1xuICAgICAgbWF4LXdpZHRoOiA3MyU7IH1cbiAgICBodG1sIC5mbGV4LWdyaWQgPiAubWVkaXVtLTc1IHtcbiAgICAgIGZsZXg6IDEgMCA3NSU7XG4gICAgICBtYXgtd2lkdGg6IDc1JTsgfVxuICAgIGh0bWwgLmZsZXgtZ3JpZCA+IC5tZWRpdW0tOTgge1xuICAgICAgZmxleDogMSAwIDk4JTtcbiAgICAgIG1heC13aWR0aDogOTglOyB9XG4gICAgaHRtbCAuZmxleC1ncmlkID4gLm1lZGl1bS0xMDAge1xuICAgICAgZmxleDogMSAwIDEwMCU7XG4gICAgICBtYXgtd2lkdGg6IDEwMCU7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgaHRtbCAuZmxleC1ncmlkID4gLmxhcmdlLTIzIHtcbiAgICAgIGZsZXg6IDEgMCAyMyU7XG4gICAgICBtYXgtd2lkdGg6IDIzJTsgfVxuICAgIGh0bWwgLmZsZXgtZ3JpZCA+IC5sYXJnZS0yNSB7XG4gICAgICBmbGV4OiAxIDAgMjUlO1xuICAgICAgbWF4LXdpZHRoOiAyNSU7IH1cbiAgICBodG1sIC5mbGV4LWdyaWQgPiAubGFyZ2UtMzEge1xuICAgICAgZmxleDogMSAwIDMxLjMzMzMlO1xuICAgICAgbWF4LXdpZHRoOiAzMS4zMzMzJTsgfVxuICAgIGh0bWwgLmZsZXgtZ3JpZCA+IC5sYXJnZS0zMyB7XG4gICAgICBmbGV4OiAxIDAgMzMuMzMzMyU7XG4gICAgICBtYXgtd2lkdGg6IDMzLjMzMzMlOyB9XG4gICAgaHRtbCAuZmxleC1ncmlkID4gLmxhcmdlLTQ4IHtcbiAgICAgIGZsZXg6IDEgMCA0OCU7XG4gICAgICBtYXgtd2lkdGg6IDQ4JTsgfVxuICAgIGh0bWwgLmZsZXgtZ3JpZCA+IC5sYXJnZS01MCB7XG4gICAgICBmbGV4OiAxIDAgNTAlO1xuICAgICAgbWF4LXdpZHRoOiA1MCU7IH1cbiAgICBodG1sIC5mbGV4LWdyaWQgPiAubGFyZ2UtNzMge1xuICAgICAgZmxleDogMSAwIDczJTtcbiAgICAgIG1heC13aWR0aDogNzMlOyB9XG4gICAgaHRtbCAuZmxleC1ncmlkID4gLmxhcmdlLTc1IHtcbiAgICAgIGZsZXg6IDEgMCA3NSU7XG4gICAgICBtYXgtd2lkdGg6IDc1JTsgfVxuICAgIGh0bWwgLmZsZXgtZ3JpZCA+IC5sYXJnZS05OCB7XG4gICAgICBmbGV4OiAxIDAgOTglO1xuICAgICAgbWF4LXdpZHRoOiA5OCU7IH1cbiAgICBodG1sIC5mbGV4LWdyaWQgPiAubGFyZ2UtMTAwIHtcbiAgICAgIGZsZXg6IDEgMCAxMDAlO1xuICAgICAgbWF4LXdpZHRoOiAxMDAlOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIGh0bWwgLmZsZXgtZ3JpZCA+IC54bGFyZ2UtMjMge1xuICAgICAgZmxleDogMSAwIDIzJTtcbiAgICAgIG1heC13aWR0aDogMjMlOyB9XG4gICAgaHRtbCAuZmxleC1ncmlkID4gLnhsYXJnZS0yNSB7XG4gICAgICBmbGV4OiAxIDAgMjUlO1xuICAgICAgbWF4LXdpZHRoOiAyNSU7IH1cbiAgICBodG1sIC5mbGV4LWdyaWQgPiAueGxhcmdlLTMxIHtcbiAgICAgIGZsZXg6IDEgMCAzMS4zMzMzJTtcbiAgICAgIG1heC13aWR0aDogMzEuMzMzMyU7IH1cbiAgICBodG1sIC5mbGV4LWdyaWQgPiAueGxhcmdlLTMzIHtcbiAgICAgIGZsZXg6IDEgMCAzMy4zMzMzJTtcbiAgICAgIG1heC13aWR0aDogMzMuMzMzMyU7IH1cbiAgICBodG1sIC5mbGV4LWdyaWQgPiAueGxhcmdlLTQ4IHtcbiAgICAgIGZsZXg6IDEgMCA0OCU7XG4gICAgICBtYXgtd2lkdGg6IDQ4JTsgfVxuICAgIGh0bWwgLmZsZXgtZ3JpZCA+IC54bGFyZ2UtNTAge1xuICAgICAgZmxleDogMSAwIDUwJTtcbiAgICAgIG1heC13aWR0aDogNTAlOyB9XG4gICAgaHRtbCAuZmxleC1ncmlkID4gLnhsYXJnZS03MyB7XG4gICAgICBmbGV4OiAxIDAgNzMlO1xuICAgICAgbWF4LXdpZHRoOiA3MyU7IH1cbiAgICBodG1sIC5mbGV4LWdyaWQgPiAueGxhcmdlLTc1IHtcbiAgICAgIGZsZXg6IDEgMCA3NSU7XG4gICAgICBtYXgtd2lkdGg6IDc1JTsgfVxuICAgIGh0bWwgLmZsZXgtZ3JpZCA+IC54bGFyZ2UtOTgge1xuICAgICAgZmxleDogMSAwIDk4JTtcbiAgICAgIG1heC13aWR0aDogOTglOyB9XG4gICAgaHRtbCAuZmxleC1ncmlkID4gLnhsYXJnZS0xMDAge1xuICAgICAgZmxleDogMSAwIDEwMCU7XG4gICAgICBtYXgtd2lkdGg6IDEwMCU7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgaHRtbCAuZmxleC1ncmlkID4gLnh4bGFyZ2UtMjMge1xuICAgICAgZmxleDogMSAwIDIzJTtcbiAgICAgIG1heC13aWR0aDogMjMlOyB9XG4gICAgaHRtbCAuZmxleC1ncmlkID4gLnh4bGFyZ2UtMjUge1xuICAgICAgZmxleDogMSAwIDI1JTtcbiAgICAgIG1heC13aWR0aDogMjUlOyB9XG4gICAgaHRtbCAuZmxleC1ncmlkID4gLnh4bGFyZ2UtMzEge1xuICAgICAgZmxleDogMSAwIDMxLjMzMzMlO1xuICAgICAgbWF4LXdpZHRoOiAzMS4zMzMzJTsgfVxuICAgIGh0bWwgLmZsZXgtZ3JpZCA+IC54eGxhcmdlLTMzIHtcbiAgICAgIGZsZXg6IDEgMCAzMy4zMzMzJTtcbiAgICAgIG1heC13aWR0aDogMzMuMzMzMyU7IH1cbiAgICBodG1sIC5mbGV4LWdyaWQgPiAueHhsYXJnZS00OCB7XG4gICAgICBmbGV4OiAxIDAgNDglO1xuICAgICAgbWF4LXdpZHRoOiA0OCU7IH1cbiAgICBodG1sIC5mbGV4LWdyaWQgPiAueHhsYXJnZS01MCB7XG4gICAgICBmbGV4OiAxIDAgNTAlO1xuICAgICAgbWF4LXdpZHRoOiA1MCU7IH1cbiAgICBodG1sIC5mbGV4LWdyaWQgPiAueHhsYXJnZS03MyB7XG4gICAgICBmbGV4OiAxIDAgNzMlO1xuICAgICAgbWF4LXdpZHRoOiA3MyU7IH1cbiAgICBodG1sIC5mbGV4LWdyaWQgPiAueHhsYXJnZS03NSB7XG4gICAgICBmbGV4OiAxIDAgNzUlO1xuICAgICAgbWF4LXdpZHRoOiA3NSU7IH1cbiAgICBodG1sIC5mbGV4LWdyaWQgPiAueHhsYXJnZS05OCB7XG4gICAgICBmbGV4OiAxIDAgOTglO1xuICAgICAgbWF4LXdpZHRoOiA5OCU7IH1cbiAgICBodG1sIC5mbGV4LWdyaWQgPiAueHhsYXJnZS0xMDAge1xuICAgICAgZmxleDogMSAwIDEwMCU7XG4gICAgICBtYXgtd2lkdGg6IDEwMCU7IH0gfVxuICBodG1sIC5mbGV4LWdyaWQucGFkZGVkIC5jZWxsIHtcbiAgICBwYWRkaW5nOiAwIDElOyB9XG4gIEBtZWRpYSBzY3JlZW4ge1xuICAgIGh0bWwgLmZsZXgtZ3JpZC5zbWFsbC1wYWRkZWQgLmNlbGwge1xuICAgICAgcGFkZGluZzogMCAxJTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICBodG1sIC5mbGV4LWdyaWQubWVkaXVtLXBhZGRlZCAuY2VsbCB7XG4gICAgICBwYWRkaW5nOiAwIDElOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIGh0bWwgLmZsZXgtZ3JpZC5sYXJnZS1wYWRkZWQgLmNlbGwge1xuICAgICAgcGFkZGluZzogMCAxJTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICBodG1sIC5mbGV4LWdyaWQueGxhcmdlLXBhZGRlZCAuY2VsbCB7XG4gICAgICBwYWRkaW5nOiAwIDElOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgIGh0bWwgLmZsZXgtZ3JpZC54eGxhcmdlLXBhZGRlZCAuY2VsbCB7XG4gICAgICBwYWRkaW5nOiAwIDElOyB9IH1cbiAgaHRtbCAuZmxleC1ncmlkLm1hcmdlZCAuY2VsbCB7XG4gICAgbWFyZ2luOiAwIDElOyB9XG4gIEBtZWRpYSBzY3JlZW4ge1xuICAgIGh0bWwgLmZsZXgtZ3JpZC5zbWFsbC1tYXJnZWQgLmNlbGwge1xuICAgICAgbWFyZ2luOiAwIDElOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIGh0bWwgLmZsZXgtZ3JpZC5tZWRpdW0tbWFyZ2VkIC5jZWxsIHtcbiAgICAgIG1hcmdpbjogMCAxJTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICBodG1sIC5mbGV4LWdyaWQubGFyZ2UtbWFyZ2VkIC5jZWxsIHtcbiAgICAgIG1hcmdpbjogMCAxJTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICBodG1sIC5mbGV4LWdyaWQueGxhcmdlLW1hcmdlZCAuY2VsbCB7XG4gICAgICBtYXJnaW46IDAgMSU7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgaHRtbCAuZmxleC1ncmlkLnh4bGFyZ2UtbWFyZ2VkIC5jZWxsIHtcbiAgICAgIG1hcmdpbjogMCAxJTsgfSB9XG5cbi8qXG4gKiBWYXJpb3VzIHN0dWZmIHRoYXQgZG9uJ3QgZml0IGVsc2V3aGVyZVxuICovXG4vKlxuICogU29tZSBzdHlsaW5nIGZvciB0aGlzIEpTIGNvbXBvbmVudCBzdHVmZiAocmVhZCBtb3JlIG9uICdqcy9qcXVlcnkvYWRkb25zLmpzJylcbiAqL1xuI3dhdGNoLWZvci1jdXJyZW50LW1xdWVyeSB7XG4gIHBhZGRpbmc6IDAuMHJlbSAwLjVyZW07XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAxMHB4O1xuICByaWdodDogMzVweDtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBib3JkZXI6IDJweCBzb2xpZCAjZGQzMzMzO1xuICB6LWluZGV4OiA5MDAwOyB9XG4gICN3YXRjaC1mb3ItY3VycmVudC1tcXVlcnkgc21hbGwge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi5yZWxhdGl2ZS1wb3NpdGlvbiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG4udW5tYXJnZWQge1xuICBtYXJnaW46IDAgIWltcG9ydGFudDsgfVxuXG4udW5wYWQge1xuICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7IH1cblxuLm1pbmltaXplIHtcbiAgdGV4dC10cmFuc2Zvcm06IGluaGVyaXQ7IH1cbiAgLm1pbmltaXplOmZpcnN0LWxldHRlciB7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxuXG4uZGl2aWRlcjpub3QobGkpIHtcbiAgbWFyZ2luLWJvdHRvbTogMnJlbSAhaW1wb3J0YW50OyB9XG4gIC5kaXZpZGVyOm5vdChsaSkudGlueS1kaXZpZGUge1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW0gIWltcG9ydGFudDsgfVxuICAuZGl2aWRlcjpub3QobGkpLmJpZy1kaXZpZGUge1xuICAgIG1hcmdpbi1ib3R0b206IDNyZW0gIWltcG9ydGFudDsgfVxuXG4vKiBWZXJ0aWNhbCBzcGFjZXMgKi9cbi52ZXJ0bWFyZ2Uge1xuICBtYXJnaW4tdG9wOiAxcmVtO1xuICBtYXJnaW4tdG9wOiAxcmVtOyB9XG5cbi52ZXJ0c3BhY2Uge1xuICBwYWRkaW5nLWJvdHRvbTogMXJlbTtcbiAgcGFkZGluZy10b3A6IDFyZW07IH1cblxuLnZlcnRzcGFjZVgyIHtcbiAgcGFkZGluZy1ib3R0b206IDJyZW07XG4gIHBhZGRpbmctdG9wOiAycmVtOyB9XG5cbi52ZXJ0c3BhY2VUb3BYMiB7XG4gIHBhZGRpbmctdG9wOiAycmVtOyB9XG5cbi52ZXJ0c3BhY2VYMyB7XG4gIHBhZGRpbmctYm90dG9tOiAzcmVtO1xuICBwYWRkaW5nLXRvcDogM3JlbTsgfVxuXG4uc2l6ZVgyIHtcbiAgZm9udC1zaXplOiAycmVtO1xuICBmb250LXdlaWdodDogMzAwO1xuICBsaW5lLWhlaWdodDogMi40cmVtOyB9XG4gIC5zaXplWDIgc3Ryb25nIHtcbiAgICBmb250LXdlaWdodDogNDAwOyB9XG5cbi8qXG4gKiBWZXJ0aWNhbCBzcGFjZXMgYXJvdW5kIGVsZW1lbnRcbiAqL1xuLnNwYWNlLWFyb3VuZCB7XG4gIHBhZGRpbmc6IC43cmVtIDA7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5zcGFjZS1hcm91bmQge1xuICAgICAgcGFkZGluZzogMS4ycmVtIDA7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnNwYWNlLWFyb3VuZCB7XG4gICAgICBwYWRkaW5nOiAxLjVyZW0gMDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAuc3BhY2UtYXJvdW5kIHtcbiAgICAgIHBhZGRpbmc6IDJyZW0gMDsgfSB9XG4gIC5zcGFjZS1hcm91bmQudGlueS1zcGFjZSB7XG4gICAgcGFkZGluZzogMC43NXJlbSAwOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLnNwYWNlLWFyb3VuZC50aW55LXNwYWNlIHtcbiAgICAgICAgcGFkZGluZzogMXJlbSAwOyB9IH1cbiAgLnNwYWNlLWFyb3VuZC5tZWRpdW0tc3BhY2Uge1xuICAgIHBhZGRpbmc6IDFyZW0gMDsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5zcGFjZS1hcm91bmQubWVkaXVtLXNwYWNlIHtcbiAgICAgICAgcGFkZGluZzogMS41cmVtIDA7IH0gfVxuICAuc3BhY2UtYXJvdW5kLndpZGUtc3BhY2Uge1xuICAgIHBhZGRpbmc6IDEuNXJlbSAwOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLnNwYWNlLWFyb3VuZC53aWRlLXNwYWNlIHtcbiAgICAgICAgcGFkZGluZzogMi41cmVtIDA7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5zcGFjZS1hcm91bmQud2lkZS1zcGFjZSB7XG4gICAgICAgIHBhZGRpbmc6IDRyZW0gMDsgfSB9XG4gIC5zcGFjZS1hcm91bmQudG9wLW9ubHkge1xuICAgIHBhZGRpbmctYm90dG9tOiAwOyB9XG4gIC5zcGFjZS1hcm91bmQuYm90dG9tLW9ubHkge1xuICAgIHBhZGRpbmctdG9wOiAwOyB9XG5cbi5ib3R0b20tdHJpYW5nbGUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLmJvdHRvbS10cmlhbmdsZTphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiAtMS4yNXJlbTtcbiAgICBsZWZ0OiA1MCU7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAwJSk7XG4gICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAwJSk7XG4gICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgMCUpO1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAwJSk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgMCUpO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXItbGVmdDogMS4yNXJlbSBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItcmlnaHQ6IDEuMjVyZW0gc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLXRvcDogMS4yNXJlbSBzb2xpZCAjMGEwYTBhOyB9XG5cbi5tb3JlIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIC5tb3JlIGEge1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgcGFkZGluZzogMTBweCAzMHB4O1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgZm9udC1zaXplOiAxMnB4OyB9XG4gIC5tb3JlIGJ1dHRvbiwgLm1vcmUgLmJ1dHRvbiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwKTtcbiAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci13aWR0aDogMXB4O1xuICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogNXB4O1xuICAgIC1tb3otYm9yZGVyLXJhZGl1czogNXB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDVweDsgfVxuXG4vKlxuICogQ2FyZGJveCwgbGlrZSBhIHBhbmVsIGJ1dCB3aXRoIGhpZ2ggdmlzdWFsIHRpdGxlXG4gKi9cbi5jYXJkYm94Lm1hcmdlZCB7XG4gIG1hcmdpbi10b3A6IDFlbSAhaW1wb3J0YW50O1xuICBtYXJnaW4tYm90dG9tOiAxZW0gIWltcG9ydGFudDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmNhcmRib3gubWFyZ2VkIHtcbiAgICAgIG1hcmdpbi10b3A6IDEuNWVtICFpbXBvcnRhbnQ7XG4gICAgICBtYXJnaW4tYm90dG9tOiAyZW0gIWltcG9ydGFudDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuY2FyZGJveC5tYXJnZWQge1xuICAgICAgbWFyZ2luLXRvcDogMmVtICFpbXBvcnRhbnQ7XG4gICAgICBtYXJnaW4tYm90dG9tOiAzZW0gIWltcG9ydGFudDsgfSB9XG5cbi5jYXJkYm94IC5oZWFkLFxuLmNhcmRib3ggLmNvbnRlbnQge1xuICBwYWRkaW5nOiAwLjc1cmVtIDEuNXJlbTsgfVxuXG4uY2FyZGJveCAuaGVhZCB7XG4gIG1hcmdpbi1ib3R0b206IDFweDsgfVxuICAuY2FyZGJveCAuaGVhZCBwIHtcbiAgICBtYXJnaW46IDA7IH1cblxuLmNhcmRib3ggLmNvbnRlbnQge1xuICBwYWRkaW5nLXRvcDogMS41cmVtO1xuICBwYWRkaW5nLWJvdHRvbTogMS41cmVtOyB9XG4gIC5jYXJkYm94IC5jb250ZW50IGE6bm90KC5idXR0b24pIHtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgfVxuXG4jaGVhZHBhZ2Uge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGZsb2F0OiBsZWZ0O1xuICB3aWR0aDogMTAwJTsgfVxuICAjaGVhZHBhZ2U6YmVmb3JlIHtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBjb250ZW50OiBhdHRyKGRhdGEtdGl0bGUpO1xuICAgIGZvbnQtc2l6ZTogMTJyZW07XG4gICAgdG9wOiAtOHJlbTtcbiAgICBsZWZ0OiAyM3JlbTtcbiAgICB6LWluZGV4OiAtMTtcbiAgICBvcGFjaXR5OiAwLjA3NTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgbWF4LXdpZHRoOiBjYWxjKDEwMHZ3IC0gMTZweCAtIDIzcmVtKTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gICNoZWFkcGFnZTphZnRlciB7XG4gICAgY29udGVudDogJ+6kgic7XG4gICAgZm9udC1zaXplOiAxNHJlbTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAtMTByZW07XG4gICAgbGVmdDogOC41cmVtO1xuICAgIHotaW5kZXg6IC0xO1xuICAgIG9wYWNpdHk6IDAuMDc1O1xuICAgIGZvbnQtZmFtaWx5OiBpY29tb29uOyB9XG4gICNoZWFkcGFnZS5leHBvc2l0aW9uc19pY286YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICfupI4nOyB9XG4gICNoZWFkcGFnZS52aXNpdGVzX2ljbzphZnRlciB7XG4gICAgY29udGVudDogJ+6kgic7IH1cbiAgI2hlYWRwYWdlLmNvbGxlY3Rpb25zX2ljbzphZnRlciB7XG4gICAgY29udGVudDogJ+6kjSc7IH1cbiAgI2hlYWRwYWdlLnJlcGVyZXNfaWNvOmFmdGVyIHtcbiAgICBjb250ZW50OiAn7qSQJzsgfVxuICAjaGVhZHBhZ2Uub3V0aWxzX2ljbzphZnRlciB7XG4gICAgY29udGVudDogJ+6kjyc7IH1cblxuLypsZWZ0RmxhZyAlKi9cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLmxlZnRGbGFnOmJlZm9yZSB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHRvcDogMjUwcHg7XG4gICAgbGVmdDogMDtcbiAgICBjb250ZW50OiB1cmwoXCIvc3RhdGljL2ltYWdlcy90aGVtZS9sZWZ0RmxhZy5wbmdcIik7XG4gICAgei1pbmRleDogLTE7IH0gfVxuXG4uaXMtYWNjb3JkaW9uLXN1Ym1lbnUtcGFyZW50OmFmdGVyIHtcbiAgY29udGVudDogJyc7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuICBib3JkZXI6IGluc2V0IDVweDtcbiAgYm9yZGVyLWNvbG9yOiAjZGQzMzMzIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICBib3JkZXItdG9wLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgcmlnaHQ6IDVweDtcbiAgbWFyZ2luLXRvcDogLTJyZW07XG4gIGZsb2F0OiByaWdodDsgfVxuXG4uYmlnaHIge1xuICBib3JkZXItd2lkdGg6IDZweDtcbiAgYm9yZGVyLWNvbG9yOiAjRTBFMEUwO1xuICBtYXJnaW4tbGVmdDogMDtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBtYXgtd2lkdGg6IG5vbmU7IH1cblxuLnBhbmVsIHtcbiAgYm9yZGVyLXJhZGl1czogMnB4O1xuICBmbG9hdDogbGVmdDtcbiAgd2lkdGg6IDEwMCU7IH1cblxuLypGb250cyBsaWJyYXJ5Ki9cbi8qRm9udHMgbGlicmFyeSovXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdpY29tb29uJztcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9pY29tb29uLmVvdD83cXFqZHNcIik7XG4gIHNyYzogdXJsKFwiLi4vZm9udHMvaWNvbW9vbi5lb3Q/N3FxamRzI2llZml4XCIpIGZvcm1hdChcImVtYmVkZGVkLW9wZW50eXBlXCIpLCB1cmwoXCIuLi9mb250cy9pY29tb29uLndvZmYyPzdxcWoyc1wiKSBmb3JtYXQoXCJ3b2ZmMlwiKSwgdXJsKFwiLi4vZm9udHMvaWNvbW9vbi50dGY/N3FxajJzXCIpIGZvcm1hdChcInRydWV0eXBlXCIpLCB1cmwoXCIuLi9mb250cy9pY29tb29uLndvZmY/N3FxajJzXCIpIGZvcm1hdChcIndvZmZcIiksIHVybChcIi4uL2ZvbnRzL2ljb21vb24uc3ZnPzdxcWoycyNpY29tb29uXCIpIGZvcm1hdChcInN2Z1wiKTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgZm9udC1zdHlsZTogbm9ybWFsOyB9XG5cbi8qXG4gKiBEZWZhdWx0IHVzYWdlLCBmb3Igc2VsZiBjbG9zZWQgZWxlbWVudCBsaWtlIGluIDxpIGNsYXNzPVwiLi5cIj48L2k+XG4gKi9cbi5pY29uY29udCwgLnNsaWNrLXByZXYsIC5zbGljay1uZXh0LCBbY2xhc3NePVwiaWNvbi1cIl06bm90KHApOm5vdChkaXYpOm5vdChoMSk6bm90KC50aXRsZS0xKTpub3QoXG5oMik6bm90KFxuLnRpdGxlLTIpOm5vdChcbmgzKTpub3QoXG4uaDMpOm5vdChcbi50aXRsZS0zKTpub3QoXG5oNCk6bm90KFxuLnRpdGxlLTQpLFxuW2NsYXNzKj1cIiBpY29uLVwiXTpub3QocCk6bm90KGRpdik6bm90KGgxKTpub3QoLnRpdGxlLTEpOm5vdChcbmgyKTpub3QoXG4udGl0bGUtMik6bm90KFxuaDMpOm5vdChcbi5oMyk6bm90KFxuLnRpdGxlLTMpOm5vdChcbmg0KTpub3QoXG4udGl0bGUtNCksIFtjbGFzc149XCJpY29uLVwiXTpiZWZvcmUsIFtjbGFzcyo9XCIgaWNvbi1cIl06YmVmb3JlIHtcbiAgZm9udC1mYW1pbHk6ICdpY29tb29uJztcbiAgc3BlYWs6IG5vbmU7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZm9udC12YXJpYW50OiBub3JtYWw7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICBsaW5lLWhlaWdodDogMTtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7IH1cbiAgLmljb25jb250Lmljb24tMngsIC5pY29uLTJ4LnNsaWNrLXByZXYsIC5pY29uLTJ4LnNsaWNrLW5leHQsIFtjbGFzc149XCJpY29uLVwiXTpub3QocCk6bm90KGRpdik6bm90KGgxKTpub3QoLnRpdGxlLTEpOm5vdChcbiAgaDIpOm5vdChcbiAgLnRpdGxlLTIpOm5vdChcbiAgaDMpOm5vdChcbiAgLmgzKTpub3QoXG4gIC50aXRsZS0zKTpub3QoXG4gIGg0KTpub3QoXG4gIC50aXRsZS00KS5pY29uLTJ4LFxuICBbY2xhc3MqPVwiIGljb24tXCJdOm5vdChwKTpub3QoZGl2KTpub3QoaDEpOm5vdCgudGl0bGUtMSk6bm90KFxuICBoMik6bm90KFxuICAudGl0bGUtMik6bm90KFxuICBoMyk6bm90KFxuICAuaDMpOm5vdChcbiAgLnRpdGxlLTMpOm5vdChcbiAgaDQpOm5vdChcbiAgLnRpdGxlLTQpLmljb24tMngsIFtjbGFzc149XCJpY29uLVwiXTpiZWZvcmUuaWNvbi0yeCwgW2NsYXNzKj1cIiBpY29uLVwiXTpiZWZvcmUuaWNvbi0yeCB7XG4gICAgZm9udC1zaXplOiAycmVtOyB9XG4gIC5pY29uY29udC5pY29uLTN4LCAuaWNvbi0zeC5zbGljay1wcmV2LCAuaWNvbi0zeC5zbGljay1uZXh0LCBbY2xhc3NePVwiaWNvbi1cIl06bm90KHApOm5vdChkaXYpOm5vdChoMSk6bm90KC50aXRsZS0xKTpub3QoXG4gIGgyKTpub3QoXG4gIC50aXRsZS0yKTpub3QoXG4gIGgzKTpub3QoXG4gIC5oMyk6bm90KFxuICAudGl0bGUtMyk6bm90KFxuICBoNCk6bm90KFxuICAudGl0bGUtNCkuaWNvbi0zeCxcbiAgW2NsYXNzKj1cIiBpY29uLVwiXTpub3QocCk6bm90KGRpdik6bm90KGgxKTpub3QoLnRpdGxlLTEpOm5vdChcbiAgaDIpOm5vdChcbiAgLnRpdGxlLTIpOm5vdChcbiAgaDMpOm5vdChcbiAgLmgzKTpub3QoXG4gIC50aXRsZS0zKTpub3QoXG4gIGg0KTpub3QoXG4gIC50aXRsZS00KS5pY29uLTN4LCBbY2xhc3NePVwiaWNvbi1cIl06YmVmb3JlLmljb24tM3gsIFtjbGFzcyo9XCIgaWNvbi1cIl06YmVmb3JlLmljb24tM3gge1xuICAgIGZvbnQtc2l6ZTogM3JlbTsgfVxuICAuaWNvbmNvbnQuaWNvbi00eCwgLmljb24tNHguc2xpY2stcHJldiwgLmljb24tNHguc2xpY2stbmV4dCwgW2NsYXNzXj1cImljb24tXCJdOm5vdChwKTpub3QoZGl2KTpub3QoaDEpOm5vdCgudGl0bGUtMSk6bm90KFxuICBoMik6bm90KFxuICAudGl0bGUtMik6bm90KFxuICBoMyk6bm90KFxuICAuaDMpOm5vdChcbiAgLnRpdGxlLTMpOm5vdChcbiAgaDQpOm5vdChcbiAgLnRpdGxlLTQpLmljb24tNHgsXG4gIFtjbGFzcyo9XCIgaWNvbi1cIl06bm90KHApOm5vdChkaXYpOm5vdChoMSk6bm90KC50aXRsZS0xKTpub3QoXG4gIGgyKTpub3QoXG4gIC50aXRsZS0yKTpub3QoXG4gIGgzKTpub3QoXG4gIC5oMyk6bm90KFxuICAudGl0bGUtMyk6bm90KFxuICBoNCk6bm90KFxuICAudGl0bGUtNCkuaWNvbi00eCwgW2NsYXNzXj1cImljb24tXCJdOmJlZm9yZS5pY29uLTR4LCBbY2xhc3MqPVwiIGljb24tXCJdOmJlZm9yZS5pY29uLTR4IHtcbiAgICBmb250LXNpemU6IDRyZW07IH1cbiAgLmljb25jb250Lmljb24tNXgsIC5pY29uLTV4LnNsaWNrLXByZXYsIC5pY29uLTV4LnNsaWNrLW5leHQsIFtjbGFzc149XCJpY29uLVwiXTpub3QocCk6bm90KGRpdik6bm90KGgxKTpub3QoLnRpdGxlLTEpOm5vdChcbiAgaDIpOm5vdChcbiAgLnRpdGxlLTIpOm5vdChcbiAgaDMpOm5vdChcbiAgLmgzKTpub3QoXG4gIC50aXRsZS0zKTpub3QoXG4gIGg0KTpub3QoXG4gIC50aXRsZS00KS5pY29uLTV4LFxuICBbY2xhc3MqPVwiIGljb24tXCJdOm5vdChwKTpub3QoZGl2KTpub3QoaDEpOm5vdCgudGl0bGUtMSk6bm90KFxuICBoMik6bm90KFxuICAudGl0bGUtMik6bm90KFxuICBoMyk6bm90KFxuICAuaDMpOm5vdChcbiAgLnRpdGxlLTMpOm5vdChcbiAgaDQpOm5vdChcbiAgLnRpdGxlLTQpLmljb24tNXgsIFtjbGFzc149XCJpY29uLVwiXTpiZWZvcmUuaWNvbi01eCwgW2NsYXNzKj1cIiBpY29uLVwiXTpiZWZvcmUuaWNvbi01eCB7XG4gICAgZm9udC1zaXplOiA1cmVtOyB9XG4gIC5pY29uY29udC5pY29uLWJsb2NrLCAuaWNvbi1ibG9jay5zbGljay1wcmV2LCAuaWNvbi1ibG9jay5zbGljay1uZXh0LCBbY2xhc3NePVwiaWNvbi1cIl06bm90KHApOm5vdChkaXYpOm5vdChoMSk6bm90KC50aXRsZS0xKTpub3QoXG4gIGgyKTpub3QoXG4gIC50aXRsZS0yKTpub3QoXG4gIGgzKTpub3QoXG4gIC5oMyk6bm90KFxuICAudGl0bGUtMyk6bm90KFxuICBoNCk6bm90KFxuICAudGl0bGUtNCkuaWNvbi1ibG9jayxcbiAgW2NsYXNzKj1cIiBpY29uLVwiXTpub3QocCk6bm90KGRpdik6bm90KGgxKTpub3QoLnRpdGxlLTEpOm5vdChcbiAgaDIpOm5vdChcbiAgLnRpdGxlLTIpOm5vdChcbiAgaDMpOm5vdChcbiAgLmgzKTpub3QoXG4gIC50aXRsZS0zKTpub3QoXG4gIGg0KTpub3QoXG4gIC50aXRsZS00KS5pY29uLWJsb2NrLCBbY2xhc3NePVwiaWNvbi1cIl06YmVmb3JlLmljb24tYmxvY2ssIFtjbGFzcyo9XCIgaWNvbi1cIl06YmVmb3JlLmljb24tYmxvY2sge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi8qXG4gKiBJY29uIGluc2VydCBpbiBhIGNvbnRhaW5lclxuICpcbiAqIENvbnRyYXJ5IHRvIHRoZSBkZWZhdWx0IHNlbGVjdG9yLCB0aGlzIGRvZXMgbm90IHBlcnR1cmIgY29udGFpbmVyXG4gKiBlbGVtZW50cyBmb250LCBzbyBpdCdzIHNhZmUgdG8gaGF2ZSB0ZXh0IGluIGNvbnRhaW5lclxuICovXG5wW2NsYXNzXj1cImljb24tXCJdOmJlZm9yZSwgcFtjbGFzcyo9XCIgaWNvbi1cIl06YmVmb3JlLCBkaXZbY2xhc3NePVwiaWNvbi1cIl06YmVmb3JlLCBkaXZbY2xhc3MqPVwiIGljb24tXCJdOmJlZm9yZSwgaDFbY2xhc3NePVwiaWNvbi1cIl06YmVmb3JlLCAudGl0bGUtMVtjbGFzc149XCJpY29uLVwiXTpiZWZvcmUsIGgxW2NsYXNzKj1cIiBpY29uLVwiXTpiZWZvcmUsIC50aXRsZS0xW2NsYXNzKj1cIiBpY29uLVwiXTpiZWZvcmUsIGgyW2NsYXNzXj1cImljb24tXCJdOmJlZm9yZSwgLnJzdCBoMVtjbGFzc149XCJpY29uLVwiXTpiZWZvcmUsIC5yc3QgLnRpdGxlLTFbY2xhc3NePVwiaWNvbi1cIl06YmVmb3JlLCAudGl0bGUtMltjbGFzc149XCJpY29uLVwiXTpiZWZvcmUsIGgyW2NsYXNzKj1cIiBpY29uLVwiXTpiZWZvcmUsIC5yc3QgaDFbY2xhc3MqPVwiIGljb24tXCJdOmJlZm9yZSwgLnJzdCAudGl0bGUtMVtjbGFzcyo9XCIgaWNvbi1cIl06YmVmb3JlLCAudGl0bGUtMltjbGFzcyo9XCIgaWNvbi1cIl06YmVmb3JlLCBoM1tjbGFzc149XCJpY29uLVwiXTpiZWZvcmUsIC5oM1tjbGFzc149XCJpY29uLVwiXTpiZWZvcmUsIC5yc3QgaDJbY2xhc3NePVwiaWNvbi1cIl06YmVmb3JlLCAucnN0IGgxW2NsYXNzXj1cImljb24tXCJdOmJlZm9yZSwgLnJzdCAudGl0bGUtMVtjbGFzc149XCJpY29uLVwiXTpiZWZvcmUsIC5yc3QgLnRpdGxlLTJbY2xhc3NePVwiaWNvbi1cIl06YmVmb3JlLCAudGl0bGUtM1tjbGFzc149XCJpY29uLVwiXTpiZWZvcmUsIGgzW2NsYXNzKj1cIiBpY29uLVwiXTpiZWZvcmUsIC5oM1tjbGFzcyo9XCIgaWNvbi1cIl06YmVmb3JlLCAucnN0IGgyW2NsYXNzKj1cIiBpY29uLVwiXTpiZWZvcmUsIC5yc3QgaDFbY2xhc3MqPVwiIGljb24tXCJdOmJlZm9yZSwgLnJzdCAudGl0bGUtMVtjbGFzcyo9XCIgaWNvbi1cIl06YmVmb3JlLCAucnN0IC50aXRsZS0yW2NsYXNzKj1cIiBpY29uLVwiXTpiZWZvcmUsIC50aXRsZS0zW2NsYXNzKj1cIiBpY29uLVwiXTpiZWZvcmUsIGg0W2NsYXNzXj1cImljb24tXCJdOmJlZm9yZSwgLnJzdCBoM1tjbGFzc149XCJpY29uLVwiXTpiZWZvcmUsIC5yc3QgLmgzW2NsYXNzXj1cImljb24tXCJdOmJlZm9yZSwgLnJzdCBoMltjbGFzc149XCJpY29uLVwiXTpiZWZvcmUsIC5yc3QgaDFbY2xhc3NePVwiaWNvbi1cIl06YmVmb3JlLCAucnN0IC50aXRsZS0xW2NsYXNzXj1cImljb24tXCJdOmJlZm9yZSwgLnJzdCAudGl0bGUtMltjbGFzc149XCJpY29uLVwiXTpiZWZvcmUsIC5yc3QgLnRpdGxlLTNbY2xhc3NePVwiaWNvbi1cIl06YmVmb3JlLCAudGl0bGUtNFtjbGFzc149XCJpY29uLVwiXTpiZWZvcmUsIGg0W2NsYXNzKj1cIiBpY29uLVwiXTpiZWZvcmUsIC5yc3QgaDNbY2xhc3MqPVwiIGljb24tXCJdOmJlZm9yZSwgLnJzdCAuaDNbY2xhc3MqPVwiIGljb24tXCJdOmJlZm9yZSwgLnJzdCBoMltjbGFzcyo9XCIgaWNvbi1cIl06YmVmb3JlLCAucnN0IGgxW2NsYXNzKj1cIiBpY29uLVwiXTpiZWZvcmUsIC5yc3QgLnRpdGxlLTFbY2xhc3MqPVwiIGljb24tXCJdOmJlZm9yZSwgLnJzdCAudGl0bGUtMltjbGFzcyo9XCIgaWNvbi1cIl06YmVmb3JlLCAucnN0IC50aXRsZS0zW2NsYXNzKj1cIiBpY29uLVwiXTpiZWZvcmUsIC50aXRsZS00W2NsYXNzKj1cIiBpY29uLVwiXTpiZWZvcmUsICpbY2xhc3NePVwiaWNvbi1cIl06YmVmb3JlLCAqW2NsYXNzKj1cIiBpY29uLVwiXTpiZWZvcmUge1xuICBmb250LWZhbWlseTogJ2ljb21vb24nO1xuICBzcGVhazogbm9uZTtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBmb250LXZhcmlhbnQ6IG5vcm1hbDtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTsgfVxuXG5wW2NsYXNzXj1cImljb24tXCJdLmljb24tMng6OmJlZm9yZSwgcFtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi0yeDo6YmVmb3JlLCBkaXZbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi0yeDo6YmVmb3JlLCBkaXZbY2xhc3MqPVwiIGljb24tXCJdLmljb24tMng6OmJlZm9yZSwgaDFbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi0yeDo6YmVmb3JlLCAudGl0bGUtMVtjbGFzc149XCJpY29uLVwiXS5pY29uLTJ4OjpiZWZvcmUsIGgxW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLTJ4OjpiZWZvcmUsIC50aXRsZS0xW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLTJ4OjpiZWZvcmUsIGgyW2NsYXNzXj1cImljb24tXCJdLmljb24tMng6OmJlZm9yZSwgLnJzdCBoMVtjbGFzc149XCJpY29uLVwiXS5pY29uLTJ4OjpiZWZvcmUsIC5yc3QgLnRpdGxlLTFbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi0yeDo6YmVmb3JlLCAudGl0bGUtMltjbGFzc149XCJpY29uLVwiXS5pY29uLTJ4OjpiZWZvcmUsIGgyW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLTJ4OjpiZWZvcmUsIC5yc3QgaDFbY2xhc3MqPVwiIGljb24tXCJdLmljb24tMng6OmJlZm9yZSwgLnJzdCAudGl0bGUtMVtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi0yeDo6YmVmb3JlLCAudGl0bGUtMltjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi0yeDo6YmVmb3JlLCBoM1tjbGFzc149XCJpY29uLVwiXS5pY29uLTJ4OjpiZWZvcmUsIC5oM1tjbGFzc149XCJpY29uLVwiXS5pY29uLTJ4OjpiZWZvcmUsIC5yc3QgaDJbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi0yeDo6YmVmb3JlLCAucnN0IGgxW2NsYXNzXj1cImljb24tXCJdLmljb24tMng6OmJlZm9yZSwgLnJzdCAudGl0bGUtMVtjbGFzc149XCJpY29uLVwiXS5pY29uLTJ4OjpiZWZvcmUsIC5yc3QgLnRpdGxlLTJbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi0yeDo6YmVmb3JlLCAudGl0bGUtM1tjbGFzc149XCJpY29uLVwiXS5pY29uLTJ4OjpiZWZvcmUsIGgzW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLTJ4OjpiZWZvcmUsIC5oM1tjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi0yeDo6YmVmb3JlLCAucnN0IGgyW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLTJ4OjpiZWZvcmUsIC5yc3QgaDFbY2xhc3MqPVwiIGljb24tXCJdLmljb24tMng6OmJlZm9yZSwgLnJzdCAudGl0bGUtMVtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi0yeDo6YmVmb3JlLCAucnN0IC50aXRsZS0yW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLTJ4OjpiZWZvcmUsIC50aXRsZS0zW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLTJ4OjpiZWZvcmUsIGg0W2NsYXNzXj1cImljb24tXCJdLmljb24tMng6OmJlZm9yZSwgLnJzdCBoM1tjbGFzc149XCJpY29uLVwiXS5pY29uLTJ4OjpiZWZvcmUsIC5yc3QgLmgzW2NsYXNzXj1cImljb24tXCJdLmljb24tMng6OmJlZm9yZSwgLnJzdCBoMltjbGFzc149XCJpY29uLVwiXS5pY29uLTJ4OjpiZWZvcmUsIC5yc3QgaDFbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi0yeDo6YmVmb3JlLCAucnN0IC50aXRsZS0xW2NsYXNzXj1cImljb24tXCJdLmljb24tMng6OmJlZm9yZSwgLnJzdCAudGl0bGUtMltjbGFzc149XCJpY29uLVwiXS5pY29uLTJ4OjpiZWZvcmUsIC5yc3QgLnRpdGxlLTNbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi0yeDo6YmVmb3JlLCAudGl0bGUtNFtjbGFzc149XCJpY29uLVwiXS5pY29uLTJ4OjpiZWZvcmUsIGg0W2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLTJ4OjpiZWZvcmUsIC5yc3QgaDNbY2xhc3MqPVwiIGljb24tXCJdLmljb24tMng6OmJlZm9yZSwgLnJzdCAuaDNbY2xhc3MqPVwiIGljb24tXCJdLmljb24tMng6OmJlZm9yZSwgLnJzdCBoMltjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi0yeDo6YmVmb3JlLCAucnN0IGgxW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLTJ4OjpiZWZvcmUsIC5yc3QgLnRpdGxlLTFbY2xhc3MqPVwiIGljb24tXCJdLmljb24tMng6OmJlZm9yZSwgLnJzdCAudGl0bGUtMltjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi0yeDo6YmVmb3JlLCAucnN0IC50aXRsZS0zW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLTJ4OjpiZWZvcmUsIC50aXRsZS00W2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLTJ4OjpiZWZvcmUsICpbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi0yeDo6YmVmb3JlLCAqW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLTJ4OjpiZWZvcmUge1xuICBmb250LXNpemU6IDJyZW07IH1cblxucFtjbGFzc149XCJpY29uLVwiXS5pY29uLTN4OjpiZWZvcmUsIHBbY2xhc3MqPVwiIGljb24tXCJdLmljb24tM3g6OmJlZm9yZSwgZGl2W2NsYXNzXj1cImljb24tXCJdLmljb24tM3g6OmJlZm9yZSwgZGl2W2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLTN4OjpiZWZvcmUsIGgxW2NsYXNzXj1cImljb24tXCJdLmljb24tM3g6OmJlZm9yZSwgLnRpdGxlLTFbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi0zeDo6YmVmb3JlLCBoMVtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi0zeDo6YmVmb3JlLCAudGl0bGUtMVtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi0zeDo6YmVmb3JlLCBoMltjbGFzc149XCJpY29uLVwiXS5pY29uLTN4OjpiZWZvcmUsIC5yc3QgaDFbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi0zeDo6YmVmb3JlLCAucnN0IC50aXRsZS0xW2NsYXNzXj1cImljb24tXCJdLmljb24tM3g6OmJlZm9yZSwgLnRpdGxlLTJbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi0zeDo6YmVmb3JlLCBoMltjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi0zeDo6YmVmb3JlLCAucnN0IGgxW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLTN4OjpiZWZvcmUsIC5yc3QgLnRpdGxlLTFbY2xhc3MqPVwiIGljb24tXCJdLmljb24tM3g6OmJlZm9yZSwgLnRpdGxlLTJbY2xhc3MqPVwiIGljb24tXCJdLmljb24tM3g6OmJlZm9yZSwgaDNbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi0zeDo6YmVmb3JlLCAuaDNbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi0zeDo6YmVmb3JlLCAucnN0IGgyW2NsYXNzXj1cImljb24tXCJdLmljb24tM3g6OmJlZm9yZSwgLnJzdCBoMVtjbGFzc149XCJpY29uLVwiXS5pY29uLTN4OjpiZWZvcmUsIC5yc3QgLnRpdGxlLTFbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi0zeDo6YmVmb3JlLCAucnN0IC50aXRsZS0yW2NsYXNzXj1cImljb24tXCJdLmljb24tM3g6OmJlZm9yZSwgLnRpdGxlLTNbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi0zeDo6YmVmb3JlLCBoM1tjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi0zeDo6YmVmb3JlLCAuaDNbY2xhc3MqPVwiIGljb24tXCJdLmljb24tM3g6OmJlZm9yZSwgLnJzdCBoMltjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi0zeDo6YmVmb3JlLCAucnN0IGgxW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLTN4OjpiZWZvcmUsIC5yc3QgLnRpdGxlLTFbY2xhc3MqPVwiIGljb24tXCJdLmljb24tM3g6OmJlZm9yZSwgLnJzdCAudGl0bGUtMltjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi0zeDo6YmVmb3JlLCAudGl0bGUtM1tjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi0zeDo6YmVmb3JlLCBoNFtjbGFzc149XCJpY29uLVwiXS5pY29uLTN4OjpiZWZvcmUsIC5yc3QgaDNbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi0zeDo6YmVmb3JlLCAucnN0IC5oM1tjbGFzc149XCJpY29uLVwiXS5pY29uLTN4OjpiZWZvcmUsIC5yc3QgaDJbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi0zeDo6YmVmb3JlLCAucnN0IGgxW2NsYXNzXj1cImljb24tXCJdLmljb24tM3g6OmJlZm9yZSwgLnJzdCAudGl0bGUtMVtjbGFzc149XCJpY29uLVwiXS5pY29uLTN4OjpiZWZvcmUsIC5yc3QgLnRpdGxlLTJbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi0zeDo6YmVmb3JlLCAucnN0IC50aXRsZS0zW2NsYXNzXj1cImljb24tXCJdLmljb24tM3g6OmJlZm9yZSwgLnRpdGxlLTRbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi0zeDo6YmVmb3JlLCBoNFtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi0zeDo6YmVmb3JlLCAucnN0IGgzW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLTN4OjpiZWZvcmUsIC5yc3QgLmgzW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLTN4OjpiZWZvcmUsIC5yc3QgaDJbY2xhc3MqPVwiIGljb24tXCJdLmljb24tM3g6OmJlZm9yZSwgLnJzdCBoMVtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi0zeDo6YmVmb3JlLCAucnN0IC50aXRsZS0xW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLTN4OjpiZWZvcmUsIC5yc3QgLnRpdGxlLTJbY2xhc3MqPVwiIGljb24tXCJdLmljb24tM3g6OmJlZm9yZSwgLnJzdCAudGl0bGUtM1tjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi0zeDo6YmVmb3JlLCAudGl0bGUtNFtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi0zeDo6YmVmb3JlLCAqW2NsYXNzXj1cImljb24tXCJdLmljb24tM3g6OmJlZm9yZSwgKltjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi0zeDo6YmVmb3JlIHtcbiAgZm9udC1zaXplOiAzcmVtOyB9XG5cbnBbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi00eDo6YmVmb3JlLCBwW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLTR4OjpiZWZvcmUsIGRpdltjbGFzc149XCJpY29uLVwiXS5pY29uLTR4OjpiZWZvcmUsIGRpdltjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi00eDo6YmVmb3JlLCBoMVtjbGFzc149XCJpY29uLVwiXS5pY29uLTR4OjpiZWZvcmUsIC50aXRsZS0xW2NsYXNzXj1cImljb24tXCJdLmljb24tNHg6OmJlZm9yZSwgaDFbY2xhc3MqPVwiIGljb24tXCJdLmljb24tNHg6OmJlZm9yZSwgLnRpdGxlLTFbY2xhc3MqPVwiIGljb24tXCJdLmljb24tNHg6OmJlZm9yZSwgaDJbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi00eDo6YmVmb3JlLCAucnN0IGgxW2NsYXNzXj1cImljb24tXCJdLmljb24tNHg6OmJlZm9yZSwgLnJzdCAudGl0bGUtMVtjbGFzc149XCJpY29uLVwiXS5pY29uLTR4OjpiZWZvcmUsIC50aXRsZS0yW2NsYXNzXj1cImljb24tXCJdLmljb24tNHg6OmJlZm9yZSwgaDJbY2xhc3MqPVwiIGljb24tXCJdLmljb24tNHg6OmJlZm9yZSwgLnJzdCBoMVtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi00eDo6YmVmb3JlLCAucnN0IC50aXRsZS0xW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLTR4OjpiZWZvcmUsIC50aXRsZS0yW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLTR4OjpiZWZvcmUsIGgzW2NsYXNzXj1cImljb24tXCJdLmljb24tNHg6OmJlZm9yZSwgLmgzW2NsYXNzXj1cImljb24tXCJdLmljb24tNHg6OmJlZm9yZSwgLnJzdCBoMltjbGFzc149XCJpY29uLVwiXS5pY29uLTR4OjpiZWZvcmUsIC5yc3QgaDFbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi00eDo6YmVmb3JlLCAucnN0IC50aXRsZS0xW2NsYXNzXj1cImljb24tXCJdLmljb24tNHg6OmJlZm9yZSwgLnJzdCAudGl0bGUtMltjbGFzc149XCJpY29uLVwiXS5pY29uLTR4OjpiZWZvcmUsIC50aXRsZS0zW2NsYXNzXj1cImljb24tXCJdLmljb24tNHg6OmJlZm9yZSwgaDNbY2xhc3MqPVwiIGljb24tXCJdLmljb24tNHg6OmJlZm9yZSwgLmgzW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLTR4OjpiZWZvcmUsIC5yc3QgaDJbY2xhc3MqPVwiIGljb24tXCJdLmljb24tNHg6OmJlZm9yZSwgLnJzdCBoMVtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi00eDo6YmVmb3JlLCAucnN0IC50aXRsZS0xW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLTR4OjpiZWZvcmUsIC5yc3QgLnRpdGxlLTJbY2xhc3MqPVwiIGljb24tXCJdLmljb24tNHg6OmJlZm9yZSwgLnRpdGxlLTNbY2xhc3MqPVwiIGljb24tXCJdLmljb24tNHg6OmJlZm9yZSwgaDRbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi00eDo6YmVmb3JlLCAucnN0IGgzW2NsYXNzXj1cImljb24tXCJdLmljb24tNHg6OmJlZm9yZSwgLnJzdCAuaDNbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi00eDo6YmVmb3JlLCAucnN0IGgyW2NsYXNzXj1cImljb24tXCJdLmljb24tNHg6OmJlZm9yZSwgLnJzdCBoMVtjbGFzc149XCJpY29uLVwiXS5pY29uLTR4OjpiZWZvcmUsIC5yc3QgLnRpdGxlLTFbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi00eDo6YmVmb3JlLCAucnN0IC50aXRsZS0yW2NsYXNzXj1cImljb24tXCJdLmljb24tNHg6OmJlZm9yZSwgLnJzdCAudGl0bGUtM1tjbGFzc149XCJpY29uLVwiXS5pY29uLTR4OjpiZWZvcmUsIC50aXRsZS00W2NsYXNzXj1cImljb24tXCJdLmljb24tNHg6OmJlZm9yZSwgaDRbY2xhc3MqPVwiIGljb24tXCJdLmljb24tNHg6OmJlZm9yZSwgLnJzdCBoM1tjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi00eDo6YmVmb3JlLCAucnN0IC5oM1tjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi00eDo6YmVmb3JlLCAucnN0IGgyW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLTR4OjpiZWZvcmUsIC5yc3QgaDFbY2xhc3MqPVwiIGljb24tXCJdLmljb24tNHg6OmJlZm9yZSwgLnJzdCAudGl0bGUtMVtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi00eDo6YmVmb3JlLCAucnN0IC50aXRsZS0yW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLTR4OjpiZWZvcmUsIC5yc3QgLnRpdGxlLTNbY2xhc3MqPVwiIGljb24tXCJdLmljb24tNHg6OmJlZm9yZSwgLnRpdGxlLTRbY2xhc3MqPVwiIGljb24tXCJdLmljb24tNHg6OmJlZm9yZSwgKltjbGFzc149XCJpY29uLVwiXS5pY29uLTR4OjpiZWZvcmUsICpbY2xhc3MqPVwiIGljb24tXCJdLmljb24tNHg6OmJlZm9yZSB7XG4gIGZvbnQtc2l6ZTogNHJlbTsgfVxuXG5wW2NsYXNzXj1cImljb24tXCJdLmljb24tYmxvY2s6YmVmb3JlLCBwW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWJsb2NrOmJlZm9yZSwgZGl2W2NsYXNzXj1cImljb24tXCJdLmljb24tYmxvY2s6YmVmb3JlLCBkaXZbY2xhc3MqPVwiIGljb24tXCJdLmljb24tYmxvY2s6YmVmb3JlLCBoMVtjbGFzc149XCJpY29uLVwiXS5pY29uLWJsb2NrOmJlZm9yZSwgLnRpdGxlLTFbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1ibG9jazpiZWZvcmUsIGgxW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWJsb2NrOmJlZm9yZSwgLnRpdGxlLTFbY2xhc3MqPVwiIGljb24tXCJdLmljb24tYmxvY2s6YmVmb3JlLCBoMltjbGFzc149XCJpY29uLVwiXS5pY29uLWJsb2NrOmJlZm9yZSwgLnJzdCBoMVtjbGFzc149XCJpY29uLVwiXS5pY29uLWJsb2NrOmJlZm9yZSwgLnJzdCAudGl0bGUtMVtjbGFzc149XCJpY29uLVwiXS5pY29uLWJsb2NrOmJlZm9yZSwgLnRpdGxlLTJbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1ibG9jazpiZWZvcmUsIGgyW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWJsb2NrOmJlZm9yZSwgLnJzdCBoMVtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1ibG9jazpiZWZvcmUsIC5yc3QgLnRpdGxlLTFbY2xhc3MqPVwiIGljb24tXCJdLmljb24tYmxvY2s6YmVmb3JlLCAudGl0bGUtMltjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1ibG9jazpiZWZvcmUsIGgzW2NsYXNzXj1cImljb24tXCJdLmljb24tYmxvY2s6YmVmb3JlLCAuaDNbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1ibG9jazpiZWZvcmUsIC5yc3QgaDJbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1ibG9jazpiZWZvcmUsIC5yc3QgaDFbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1ibG9jazpiZWZvcmUsIC5yc3QgLnRpdGxlLTFbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1ibG9jazpiZWZvcmUsIC5yc3QgLnRpdGxlLTJbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1ibG9jazpiZWZvcmUsIC50aXRsZS0zW2NsYXNzXj1cImljb24tXCJdLmljb24tYmxvY2s6YmVmb3JlLCBoM1tjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1ibG9jazpiZWZvcmUsIC5oM1tjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1ibG9jazpiZWZvcmUsIC5yc3QgaDJbY2xhc3MqPVwiIGljb24tXCJdLmljb24tYmxvY2s6YmVmb3JlLCAucnN0IGgxW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWJsb2NrOmJlZm9yZSwgLnJzdCAudGl0bGUtMVtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1ibG9jazpiZWZvcmUsIC5yc3QgLnRpdGxlLTJbY2xhc3MqPVwiIGljb24tXCJdLmljb24tYmxvY2s6YmVmb3JlLCAudGl0bGUtM1tjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1ibG9jazpiZWZvcmUsIGg0W2NsYXNzXj1cImljb24tXCJdLmljb24tYmxvY2s6YmVmb3JlLCAucnN0IGgzW2NsYXNzXj1cImljb24tXCJdLmljb24tYmxvY2s6YmVmb3JlLCAucnN0IC5oM1tjbGFzc149XCJpY29uLVwiXS5pY29uLWJsb2NrOmJlZm9yZSwgLnJzdCBoMltjbGFzc149XCJpY29uLVwiXS5pY29uLWJsb2NrOmJlZm9yZSwgLnJzdCBoMVtjbGFzc149XCJpY29uLVwiXS5pY29uLWJsb2NrOmJlZm9yZSwgLnJzdCAudGl0bGUtMVtjbGFzc149XCJpY29uLVwiXS5pY29uLWJsb2NrOmJlZm9yZSwgLnJzdCAudGl0bGUtMltjbGFzc149XCJpY29uLVwiXS5pY29uLWJsb2NrOmJlZm9yZSwgLnJzdCAudGl0bGUtM1tjbGFzc149XCJpY29uLVwiXS5pY29uLWJsb2NrOmJlZm9yZSwgLnRpdGxlLTRbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1ibG9jazpiZWZvcmUsIGg0W2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWJsb2NrOmJlZm9yZSwgLnJzdCBoM1tjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1ibG9jazpiZWZvcmUsIC5yc3QgLmgzW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWJsb2NrOmJlZm9yZSwgLnJzdCBoMltjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1ibG9jazpiZWZvcmUsIC5yc3QgaDFbY2xhc3MqPVwiIGljb24tXCJdLmljb24tYmxvY2s6YmVmb3JlLCAucnN0IC50aXRsZS0xW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWJsb2NrOmJlZm9yZSwgLnJzdCAudGl0bGUtMltjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1ibG9jazpiZWZvcmUsIC5yc3QgLnRpdGxlLTNbY2xhc3MqPVwiIGljb24tXCJdLmljb24tYmxvY2s6YmVmb3JlLCAudGl0bGUtNFtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1ibG9jazpiZWZvcmUsICpbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1ibG9jazpiZWZvcmUsICpbY2xhc3MqPVwiIGljb24tXCJdLmljb24tYmxvY2s6YmVmb3JlIHtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxucFtjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0LCBwW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0LCBkaXZbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdCwgZGl2W2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0LCBoMVtjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0LCAudGl0bGUtMVtjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0LCBoMVtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdCwgLnRpdGxlLTFbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQsIGgyW2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQsIC5yc3QgaDFbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdCwgLnJzdCAudGl0bGUtMVtjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0LCAudGl0bGUtMltjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0LCBoMltjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdCwgLnJzdCBoMVtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdCwgLnJzdCAudGl0bGUtMVtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdCwgLnRpdGxlLTJbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQsIGgzW2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQsIC5oM1tjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0LCAucnN0IGgyW2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQsIC5yc3QgaDFbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdCwgLnJzdCAudGl0bGUtMVtjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0LCAucnN0IC50aXRsZS0yW2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQsIC50aXRsZS0zW2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQsIGgzW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0LCAuaDNbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQsIC5yc3QgaDJbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQsIC5yc3QgaDFbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQsIC5yc3QgLnRpdGxlLTFbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQsIC5yc3QgLnRpdGxlLTJbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQsIC50aXRsZS0zW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0LCBoNFtjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0LCAucnN0IGgzW2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQsIC5yc3QgLmgzW2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQsIC5yc3QgaDJbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdCwgLnJzdCBoMVtjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0LCAucnN0IC50aXRsZS0xW2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQsIC5yc3QgLnRpdGxlLTJbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdCwgLnJzdCAudGl0bGUtM1tjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0LCAudGl0bGUtNFtjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0LCBoNFtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdCwgLnJzdCBoM1tjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdCwgLnJzdCAuaDNbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQsIC5yc3QgaDJbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQsIC5yc3QgaDFbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQsIC5yc3QgLnRpdGxlLTFbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQsIC5yc3QgLnRpdGxlLTJbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQsIC5yc3QgLnRpdGxlLTNbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQsIC50aXRsZS00W2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0LCAqW2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQsICpbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmctbGVmdDogMWVtOyB9XG4gIHBbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTJ4LCBwW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tMngsIGRpdltjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tMngsIGRpdltjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTJ4LCBoMVtjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tMngsIC50aXRsZS0xW2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi0yeCwgaDFbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi0yeCwgLnRpdGxlLTFbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi0yeCwgaDJbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTJ4LCAucnN0IGgxW2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi0yeCwgLnJzdCAudGl0bGUtMVtjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tMngsIC50aXRsZS0yW2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi0yeCwgaDJbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi0yeCwgLnJzdCBoMVtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTJ4LCAucnN0IC50aXRsZS0xW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tMngsIC50aXRsZS0yW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tMngsIGgzW2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi0yeCwgLmgzW2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi0yeCwgLnJzdCBoMltjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tMngsIC5yc3QgaDFbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTJ4LCAucnN0IC50aXRsZS0xW2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi0yeCwgLnJzdCAudGl0bGUtMltjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tMngsIC50aXRsZS0zW2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi0yeCwgaDNbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi0yeCwgLmgzW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tMngsIC5yc3QgaDJbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi0yeCwgLnJzdCBoMVtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTJ4LCAucnN0IC50aXRsZS0xW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tMngsIC5yc3QgLnRpdGxlLTJbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi0yeCwgLnRpdGxlLTNbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi0yeCwgaDRbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTJ4LCAucnN0IGgzW2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi0yeCwgLnJzdCAuaDNbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTJ4LCAucnN0IGgyW2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi0yeCwgLnJzdCBoMVtjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tMngsIC5yc3QgLnRpdGxlLTFbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTJ4LCAucnN0IC50aXRsZS0yW2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi0yeCwgLnJzdCAudGl0bGUtM1tjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tMngsIC50aXRsZS00W2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi0yeCwgaDRbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi0yeCwgLnJzdCBoM1tjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTJ4LCAucnN0IC5oM1tjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTJ4LCAucnN0IGgyW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tMngsIC5yc3QgaDFbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi0yeCwgLnJzdCAudGl0bGUtMVtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTJ4LCAucnN0IC50aXRsZS0yW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tMngsIC5yc3QgLnRpdGxlLTNbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi0yeCwgLnRpdGxlLTRbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi0yeCwgKltjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tMngsICpbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi0yeCB7XG4gICAgcGFkZGluZy1sZWZ0OiAycmVtOyB9XG4gIHBbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTN4LCBwW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tM3gsIGRpdltjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tM3gsIGRpdltjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTN4LCBoMVtjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tM3gsIC50aXRsZS0xW2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi0zeCwgaDFbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi0zeCwgLnRpdGxlLTFbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi0zeCwgaDJbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTN4LCAucnN0IGgxW2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi0zeCwgLnJzdCAudGl0bGUtMVtjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tM3gsIC50aXRsZS0yW2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi0zeCwgaDJbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi0zeCwgLnJzdCBoMVtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTN4LCAucnN0IC50aXRsZS0xW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tM3gsIC50aXRsZS0yW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tM3gsIGgzW2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi0zeCwgLmgzW2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi0zeCwgLnJzdCBoMltjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tM3gsIC5yc3QgaDFbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTN4LCAucnN0IC50aXRsZS0xW2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi0zeCwgLnJzdCAudGl0bGUtMltjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tM3gsIC50aXRsZS0zW2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi0zeCwgaDNbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi0zeCwgLmgzW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tM3gsIC5yc3QgaDJbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi0zeCwgLnJzdCBoMVtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTN4LCAucnN0IC50aXRsZS0xW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tM3gsIC5yc3QgLnRpdGxlLTJbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi0zeCwgLnRpdGxlLTNbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi0zeCwgaDRbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTN4LCAucnN0IGgzW2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi0zeCwgLnJzdCAuaDNbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTN4LCAucnN0IGgyW2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi0zeCwgLnJzdCBoMVtjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tM3gsIC5yc3QgLnRpdGxlLTFbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTN4LCAucnN0IC50aXRsZS0yW2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi0zeCwgLnJzdCAudGl0bGUtM1tjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tM3gsIC50aXRsZS00W2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi0zeCwgaDRbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi0zeCwgLnJzdCBoM1tjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTN4LCAucnN0IC5oM1tjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTN4LCAucnN0IGgyW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tM3gsIC5yc3QgaDFbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi0zeCwgLnJzdCAudGl0bGUtMVtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTN4LCAucnN0IC50aXRsZS0yW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tM3gsIC5yc3QgLnRpdGxlLTNbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi0zeCwgLnRpdGxlLTRbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi0zeCwgKltjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tM3gsICpbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi0zeCB7XG4gICAgcGFkZGluZy1sZWZ0OiAzcmVtOyB9XG4gIHBbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTR4LCBwW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tNHgsIGRpdltjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tNHgsIGRpdltjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTR4LCBoMVtjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tNHgsIC50aXRsZS0xW2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi00eCwgaDFbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi00eCwgLnRpdGxlLTFbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi00eCwgaDJbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTR4LCAucnN0IGgxW2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi00eCwgLnJzdCAudGl0bGUtMVtjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tNHgsIC50aXRsZS0yW2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi00eCwgaDJbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi00eCwgLnJzdCBoMVtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTR4LCAucnN0IC50aXRsZS0xW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tNHgsIC50aXRsZS0yW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tNHgsIGgzW2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi00eCwgLmgzW2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi00eCwgLnJzdCBoMltjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tNHgsIC5yc3QgaDFbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTR4LCAucnN0IC50aXRsZS0xW2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi00eCwgLnJzdCAudGl0bGUtMltjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tNHgsIC50aXRsZS0zW2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi00eCwgaDNbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi00eCwgLmgzW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tNHgsIC5yc3QgaDJbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi00eCwgLnJzdCBoMVtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTR4LCAucnN0IC50aXRsZS0xW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tNHgsIC5yc3QgLnRpdGxlLTJbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi00eCwgLnRpdGxlLTNbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi00eCwgaDRbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTR4LCAucnN0IGgzW2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi00eCwgLnJzdCAuaDNbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTR4LCAucnN0IGgyW2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi00eCwgLnJzdCBoMVtjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tNHgsIC5yc3QgLnRpdGxlLTFbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTR4LCAucnN0IC50aXRsZS0yW2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi00eCwgLnJzdCAudGl0bGUtM1tjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tNHgsIC50aXRsZS00W2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi00eCwgaDRbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi00eCwgLnJzdCBoM1tjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTR4LCAucnN0IC5oM1tjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTR4LCAucnN0IGgyW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tNHgsIC5yc3QgaDFbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi00eCwgLnJzdCAudGl0bGUtMVtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTR4LCAucnN0IC50aXRsZS0yW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tNHgsIC5yc3QgLnRpdGxlLTNbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi00eCwgLnRpdGxlLTRbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi00eCwgKltjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tNHgsICpbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi00eCB7XG4gICAgcGFkZGluZy1sZWZ0OiA0cmVtOyB9XG4gIHBbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdDpiZWZvcmUsIHBbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQ6YmVmb3JlLCBkaXZbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdDpiZWZvcmUsIGRpdltjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdDpiZWZvcmUsIGgxW2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQ6YmVmb3JlLCAudGl0bGUtMVtjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0OmJlZm9yZSwgaDFbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQ6YmVmb3JlLCAudGl0bGUtMVtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdDpiZWZvcmUsIGgyW2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQ6YmVmb3JlLCAucnN0IGgxW2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQ6YmVmb3JlLCAucnN0IC50aXRsZS0xW2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQ6YmVmb3JlLCAudGl0bGUtMltjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0OmJlZm9yZSwgaDJbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQ6YmVmb3JlLCAucnN0IGgxW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0OmJlZm9yZSwgLnJzdCAudGl0bGUtMVtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdDpiZWZvcmUsIC50aXRsZS0yW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0OmJlZm9yZSwgaDNbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdDpiZWZvcmUsIC5oM1tjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0OmJlZm9yZSwgLnJzdCBoMltjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0OmJlZm9yZSwgLnJzdCBoMVtjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0OmJlZm9yZSwgLnJzdCAudGl0bGUtMVtjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0OmJlZm9yZSwgLnJzdCAudGl0bGUtMltjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0OmJlZm9yZSwgLnRpdGxlLTNbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdDpiZWZvcmUsIGgzW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0OmJlZm9yZSwgLmgzW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0OmJlZm9yZSwgLnJzdCBoMltjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdDpiZWZvcmUsIC5yc3QgaDFbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQ6YmVmb3JlLCAucnN0IC50aXRsZS0xW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0OmJlZm9yZSwgLnJzdCAudGl0bGUtMltjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdDpiZWZvcmUsIC50aXRsZS0zW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0OmJlZm9yZSwgaDRbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdDpiZWZvcmUsIC5yc3QgaDNbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdDpiZWZvcmUsIC5yc3QgLmgzW2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQ6YmVmb3JlLCAucnN0IGgyW2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQ6YmVmb3JlLCAucnN0IGgxW2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQ6YmVmb3JlLCAucnN0IC50aXRsZS0xW2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQ6YmVmb3JlLCAucnN0IC50aXRsZS0yW2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQ6YmVmb3JlLCAucnN0IC50aXRsZS0zW2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQ6YmVmb3JlLCAudGl0bGUtNFtjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0OmJlZm9yZSwgaDRbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQ6YmVmb3JlLCAucnN0IGgzW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0OmJlZm9yZSwgLnJzdCAuaDNbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQ6YmVmb3JlLCAucnN0IGgyW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0OmJlZm9yZSwgLnJzdCBoMVtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdDpiZWZvcmUsIC5yc3QgLnRpdGxlLTFbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQ6YmVmb3JlLCAucnN0IC50aXRsZS0yW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0OmJlZm9yZSwgLnJzdCAudGl0bGUtM1tjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdDpiZWZvcmUsIC50aXRsZS00W2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0OmJlZm9yZSwgKltjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0OmJlZm9yZSwgKltjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdDpiZWZvcmUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDAuMWVtO1xuICAgIGxlZnQ6IDA7IH1cbiAgcFtjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0ID4gKiwgcFtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdCA+ICosIGRpdltjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0ID4gKiwgZGl2W2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0ID4gKiwgaDFbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdCA+ICosIC50aXRsZS0xW2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQgPiAqLCBoMVtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdCA+ICosIC50aXRsZS0xW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0ID4gKiwgaDJbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdCA+ICosIC5yc3QgaDFbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdCA+ICosIC5yc3QgLnRpdGxlLTFbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdCA+ICosIC50aXRsZS0yW2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQgPiAqLCBoMltjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdCA+ICosIC5yc3QgaDFbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQgPiAqLCAucnN0IC50aXRsZS0xW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0ID4gKiwgLnRpdGxlLTJbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQgPiAqLCBoM1tjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0ID4gKiwgLmgzW2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQgPiAqLCAucnN0IGgyW2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQgPiAqLCAucnN0IGgxW2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQgPiAqLCAucnN0IC50aXRsZS0xW2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQgPiAqLCAucnN0IC50aXRsZS0yW2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQgPiAqLCAudGl0bGUtM1tjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0ID4gKiwgaDNbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQgPiAqLCAuaDNbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQgPiAqLCAucnN0IGgyW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0ID4gKiwgLnJzdCBoMVtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdCA+ICosIC5yc3QgLnRpdGxlLTFbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQgPiAqLCAucnN0IC50aXRsZS0yW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0ID4gKiwgLnRpdGxlLTNbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQgPiAqLCBoNFtjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0ID4gKiwgLnJzdCBoM1tjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0ID4gKiwgLnJzdCAuaDNbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdCA+ICosIC5yc3QgaDJbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdCA+ICosIC5yc3QgaDFbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdCA+ICosIC5yc3QgLnRpdGxlLTFbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdCA+ICosIC5yc3QgLnRpdGxlLTJbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdCA+ICosIC5yc3QgLnRpdGxlLTNbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdCA+ICosIC50aXRsZS00W2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQgPiAqLCBoNFtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdCA+ICosIC5yc3QgaDNbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQgPiAqLCAucnN0IC5oM1tjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdCA+ICosIC5yc3QgaDJbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQgPiAqLCAucnN0IGgxW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0ID4gKiwgLnJzdCAudGl0bGUtMVtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdCA+ICosIC5yc3QgLnRpdGxlLTJbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQgPiAqLCAucnN0IC50aXRsZS0zW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0ID4gKiwgLnRpdGxlLTRbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQgPiAqLCAqW2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQgPiAqLCAqW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0ID4gKiB7XG4gICAgbWFyZ2luLWxlZnQ6IDAuMzEyNXJlbTsgfVxuXG5wW2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQsIHBbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQsIGRpdltjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0LCBkaXZbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQsIGgxW2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQsIC50aXRsZS0xW2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQsIGgxW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0LCAudGl0bGUtMVtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdCwgaDJbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdCwgLnJzdCBoMVtjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0LCAucnN0IC50aXRsZS0xW2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQsIC50aXRsZS0yW2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQsIGgyW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0LCAucnN0IGgxW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0LCAucnN0IC50aXRsZS0xW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0LCAudGl0bGUtMltjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdCwgaDNbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdCwgLmgzW2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQsIC5yc3QgaDJbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdCwgLnJzdCBoMVtjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0LCAucnN0IC50aXRsZS0xW2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQsIC5yc3QgLnRpdGxlLTJbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdCwgLnRpdGxlLTNbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdCwgaDNbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQsIC5oM1tjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdCwgLnJzdCBoMltjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdCwgLnJzdCBoMVtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdCwgLnJzdCAudGl0bGUtMVtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdCwgLnJzdCAudGl0bGUtMltjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdCwgLnRpdGxlLTNbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQsIGg0W2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQsIC5yc3QgaDNbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdCwgLnJzdCAuaDNbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdCwgLnJzdCBoMltjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0LCAucnN0IGgxW2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQsIC5yc3QgLnRpdGxlLTFbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdCwgLnJzdCAudGl0bGUtMltjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0LCAucnN0IC50aXRsZS0zW2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQsIC50aXRsZS00W2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQsIGg0W2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0LCAucnN0IGgzW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0LCAucnN0IC5oM1tjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdCwgLnJzdCBoMltjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdCwgLnJzdCBoMVtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdCwgLnJzdCAudGl0bGUtMVtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdCwgLnJzdCAudGl0bGUtMltjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdCwgLnJzdCAudGl0bGUtM1tjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdCwgLnRpdGxlLTRbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQsICpbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdCwgKltjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZy1sZWZ0OiAxZW07IH1cbiAgcFtjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tMngsIHBbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi0yeCwgZGl2W2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi0yeCwgZGl2W2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tMngsIGgxW2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi0yeCwgLnRpdGxlLTFbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTJ4LCBoMVtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTJ4LCAudGl0bGUtMVtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTJ4LCBoMltjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tMngsIC5yc3QgaDFbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTJ4LCAucnN0IC50aXRsZS0xW2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi0yeCwgLnRpdGxlLTJbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTJ4LCBoMltjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTJ4LCAucnN0IGgxW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tMngsIC5yc3QgLnRpdGxlLTFbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi0yeCwgLnRpdGxlLTJbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi0yeCwgaDNbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTJ4LCAuaDNbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTJ4LCAucnN0IGgyW2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi0yeCwgLnJzdCBoMVtjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tMngsIC5yc3QgLnRpdGxlLTFbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTJ4LCAucnN0IC50aXRsZS0yW2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi0yeCwgLnRpdGxlLTNbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTJ4LCBoM1tjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTJ4LCAuaDNbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi0yeCwgLnJzdCBoMltjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTJ4LCAucnN0IGgxW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tMngsIC5yc3QgLnRpdGxlLTFbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi0yeCwgLnJzdCAudGl0bGUtMltjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTJ4LCAudGl0bGUtM1tjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTJ4LCBoNFtjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tMngsIC5yc3QgaDNbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTJ4LCAucnN0IC5oM1tjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tMngsIC5yc3QgaDJbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTJ4LCAucnN0IGgxW2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi0yeCwgLnJzdCAudGl0bGUtMVtjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tMngsIC5yc3QgLnRpdGxlLTJbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTJ4LCAucnN0IC50aXRsZS0zW2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi0yeCwgLnRpdGxlLTRbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTJ4LCBoNFtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTJ4LCAucnN0IGgzW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tMngsIC5yc3QgLmgzW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tMngsIC5yc3QgaDJbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi0yeCwgLnJzdCBoMVtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTJ4LCAucnN0IC50aXRsZS0xW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tMngsIC5yc3QgLnRpdGxlLTJbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi0yeCwgLnJzdCAudGl0bGUtM1tjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTJ4LCAudGl0bGUtNFtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTJ4LCAqW2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi0yeCwgKltjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTJ4IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDJyZW07IH1cbiAgcFtjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tM3gsIHBbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi0zeCwgZGl2W2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi0zeCwgZGl2W2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tM3gsIGgxW2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi0zeCwgLnRpdGxlLTFbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTN4LCBoMVtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTN4LCAudGl0bGUtMVtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTN4LCBoMltjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tM3gsIC5yc3QgaDFbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTN4LCAucnN0IC50aXRsZS0xW2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi0zeCwgLnRpdGxlLTJbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTN4LCBoMltjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTN4LCAucnN0IGgxW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tM3gsIC5yc3QgLnRpdGxlLTFbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi0zeCwgLnRpdGxlLTJbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi0zeCwgaDNbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTN4LCAuaDNbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTN4LCAucnN0IGgyW2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi0zeCwgLnJzdCBoMVtjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tM3gsIC5yc3QgLnRpdGxlLTFbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTN4LCAucnN0IC50aXRsZS0yW2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi0zeCwgLnRpdGxlLTNbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTN4LCBoM1tjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTN4LCAuaDNbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi0zeCwgLnJzdCBoMltjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTN4LCAucnN0IGgxW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tM3gsIC5yc3QgLnRpdGxlLTFbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi0zeCwgLnJzdCAudGl0bGUtMltjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTN4LCAudGl0bGUtM1tjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTN4LCBoNFtjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tM3gsIC5yc3QgaDNbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTN4LCAucnN0IC5oM1tjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tM3gsIC5yc3QgaDJbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTN4LCAucnN0IGgxW2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi0zeCwgLnJzdCAudGl0bGUtMVtjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tM3gsIC5yc3QgLnRpdGxlLTJbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTN4LCAucnN0IC50aXRsZS0zW2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi0zeCwgLnRpdGxlLTRbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTN4LCBoNFtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTN4LCAucnN0IGgzW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tM3gsIC5yc3QgLmgzW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tM3gsIC5yc3QgaDJbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi0zeCwgLnJzdCBoMVtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTN4LCAucnN0IC50aXRsZS0xW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tM3gsIC5yc3QgLnRpdGxlLTJbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi0zeCwgLnJzdCAudGl0bGUtM1tjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTN4LCAudGl0bGUtNFtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTN4LCAqW2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi0zeCwgKltjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTN4IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDNyZW07IH1cbiAgcFtjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tNHgsIHBbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi00eCwgZGl2W2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi00eCwgZGl2W2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tNHgsIGgxW2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi00eCwgLnRpdGxlLTFbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTR4LCBoMVtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTR4LCAudGl0bGUtMVtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTR4LCBoMltjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tNHgsIC5yc3QgaDFbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTR4LCAucnN0IC50aXRsZS0xW2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi00eCwgLnRpdGxlLTJbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTR4LCBoMltjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTR4LCAucnN0IGgxW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tNHgsIC5yc3QgLnRpdGxlLTFbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi00eCwgLnRpdGxlLTJbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi00eCwgaDNbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTR4LCAuaDNbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTR4LCAucnN0IGgyW2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi00eCwgLnJzdCBoMVtjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tNHgsIC5yc3QgLnRpdGxlLTFbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTR4LCAucnN0IC50aXRsZS0yW2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi00eCwgLnRpdGxlLTNbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTR4LCBoM1tjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTR4LCAuaDNbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi00eCwgLnJzdCBoMltjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTR4LCAucnN0IGgxW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tNHgsIC5yc3QgLnRpdGxlLTFbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi00eCwgLnJzdCAudGl0bGUtMltjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTR4LCAudGl0bGUtM1tjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTR4LCBoNFtjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tNHgsIC5yc3QgaDNbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTR4LCAucnN0IC5oM1tjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tNHgsIC5yc3QgaDJbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTR4LCAucnN0IGgxW2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi00eCwgLnJzdCAudGl0bGUtMVtjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tNHgsIC5yc3QgLnRpdGxlLTJbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTR4LCAucnN0IC50aXRsZS0zW2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi00eCwgLnRpdGxlLTRbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTR4LCBoNFtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTR4LCAucnN0IGgzW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tNHgsIC5yc3QgLmgzW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tNHgsIC5yc3QgaDJbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi00eCwgLnJzdCBoMVtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTR4LCAucnN0IC50aXRsZS0xW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tNHgsIC5yc3QgLnRpdGxlLTJbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi00eCwgLnJzdCAudGl0bGUtM1tjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTR4LCAudGl0bGUtNFtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTR4LCAqW2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi00eCwgKltjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTR4IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDRyZW07IH1cbiAgcFtjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0OmJlZm9yZSwgcFtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdDpiZWZvcmUsIGRpdltjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0OmJlZm9yZSwgZGl2W2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0OmJlZm9yZSwgaDFbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdDpiZWZvcmUsIC50aXRsZS0xW2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQ6YmVmb3JlLCBoMVtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdDpiZWZvcmUsIC50aXRsZS0xW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0OmJlZm9yZSwgaDJbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdDpiZWZvcmUsIC5yc3QgaDFbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdDpiZWZvcmUsIC5yc3QgLnRpdGxlLTFbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdDpiZWZvcmUsIC50aXRsZS0yW2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQ6YmVmb3JlLCBoMltjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdDpiZWZvcmUsIC5yc3QgaDFbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQ6YmVmb3JlLCAucnN0IC50aXRsZS0xW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0OmJlZm9yZSwgLnRpdGxlLTJbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQ6YmVmb3JlLCBoM1tjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0OmJlZm9yZSwgLmgzW2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQ6YmVmb3JlLCAucnN0IGgyW2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQ6YmVmb3JlLCAucnN0IGgxW2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQ6YmVmb3JlLCAucnN0IC50aXRsZS0xW2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQ6YmVmb3JlLCAucnN0IC50aXRsZS0yW2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQ6YmVmb3JlLCAudGl0bGUtM1tjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0OmJlZm9yZSwgaDNbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQ6YmVmb3JlLCAuaDNbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQ6YmVmb3JlLCAucnN0IGgyW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0OmJlZm9yZSwgLnJzdCBoMVtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdDpiZWZvcmUsIC5yc3QgLnRpdGxlLTFbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQ6YmVmb3JlLCAucnN0IC50aXRsZS0yW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0OmJlZm9yZSwgLnRpdGxlLTNbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQ6YmVmb3JlLCBoNFtjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0OmJlZm9yZSwgLnJzdCBoM1tjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0OmJlZm9yZSwgLnJzdCAuaDNbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdDpiZWZvcmUsIC5yc3QgaDJbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdDpiZWZvcmUsIC5yc3QgaDFbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdDpiZWZvcmUsIC5yc3QgLnRpdGxlLTFbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdDpiZWZvcmUsIC5yc3QgLnRpdGxlLTJbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdDpiZWZvcmUsIC5yc3QgLnRpdGxlLTNbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdDpiZWZvcmUsIC50aXRsZS00W2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQ6YmVmb3JlLCBoNFtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdDpiZWZvcmUsIC5yc3QgaDNbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQ6YmVmb3JlLCAucnN0IC5oM1tjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdDpiZWZvcmUsIC5yc3QgaDJbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQ6YmVmb3JlLCAucnN0IGgxW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0OmJlZm9yZSwgLnJzdCAudGl0bGUtMVtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdDpiZWZvcmUsIC5yc3QgLnRpdGxlLTJbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQ6YmVmb3JlLCAucnN0IC50aXRsZS0zW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0OmJlZm9yZSwgLnRpdGxlLTRbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQ6YmVmb3JlLCAqW2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQ6YmVmb3JlLCAqW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0OmJlZm9yZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTAlO1xuICAgIGxlZnQ6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcbiAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC01MCUpO1xuICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC01MCUpO1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTsgfVxuICBwW2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQgPiAqLCBwW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0ID4gKiwgZGl2W2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQgPiAqLCBkaXZbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQgPiAqLCBoMVtjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0ID4gKiwgLnRpdGxlLTFbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdCA+ICosIGgxW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0ID4gKiwgLnRpdGxlLTFbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQgPiAqLCBoMltjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0ID4gKiwgLnJzdCBoMVtjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0ID4gKiwgLnJzdCAudGl0bGUtMVtjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0ID4gKiwgLnRpdGxlLTJbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdCA+ICosIGgyW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0ID4gKiwgLnJzdCBoMVtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdCA+ICosIC5yc3QgLnRpdGxlLTFbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQgPiAqLCAudGl0bGUtMltjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdCA+ICosIGgzW2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQgPiAqLCAuaDNbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdCA+ICosIC5yc3QgaDJbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdCA+ICosIC5yc3QgaDFbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdCA+ICosIC5yc3QgLnRpdGxlLTFbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdCA+ICosIC5yc3QgLnRpdGxlLTJbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdCA+ICosIC50aXRsZS0zW2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQgPiAqLCBoM1tjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdCA+ICosIC5oM1tjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdCA+ICosIC5yc3QgaDJbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQgPiAqLCAucnN0IGgxW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0ID4gKiwgLnJzdCAudGl0bGUtMVtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdCA+ICosIC5yc3QgLnRpdGxlLTJbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQgPiAqLCAudGl0bGUtM1tjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdCA+ICosIGg0W2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQgPiAqLCAucnN0IGgzW2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQgPiAqLCAucnN0IC5oM1tjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0ID4gKiwgLnJzdCBoMltjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0ID4gKiwgLnJzdCBoMVtjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0ID4gKiwgLnJzdCAudGl0bGUtMVtjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0ID4gKiwgLnJzdCAudGl0bGUtMltjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0ID4gKiwgLnJzdCAudGl0bGUtM1tjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0ID4gKiwgLnRpdGxlLTRbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdCA+ICosIGg0W2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0ID4gKiwgLnJzdCBoM1tjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdCA+ICosIC5yc3QgLmgzW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0ID4gKiwgLnJzdCBoMltjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdCA+ICosIC5yc3QgaDFbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQgPiAqLCAucnN0IC50aXRsZS0xW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0ID4gKiwgLnJzdCAudGl0bGUtMltjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdCA+ICosIC5yc3QgLnRpdGxlLTNbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQgPiAqLCAudGl0bGUtNFtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdCA+ICosICpbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdCA+ICosICpbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQgPiAqIHtcbiAgICBtYXJnaW4tbGVmdDogMC4zMTI1cmVtOyB9XG5cbi5idXR0b25bY2xhc3NePVwiaWNvbi1cIl0sIC5idXR0b25bY2xhc3MqPVwiIGljb24tXCJdIHtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7IH1cbiAgLmJ1dHRvbltjbGFzc149XCJpY29uLVwiXTpiZWZvcmUsIC5idXR0b25bY2xhc3MqPVwiIGljb24tXCJdOmJlZm9yZSB7XG4gICAgZm9udC1mYW1pbHk6ICdpY29tb29uJztcbiAgICBtYXJnaW4tcmlnaHQ6IDAuMzEyNXJlbTtcbiAgICBzcGVhazogbm9uZTtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBmb250LXZhcmlhbnQ6IG5vcm1hbDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICAvKiBCZXR0ZXIgRm9udCBSZW5kZXJpbmcgPT09PT09PT09PT0gKi9cbiAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlOyB9XG4gIC5idXR0b25bY2xhc3NePVwiaWNvbi1cIl0uaWNvQWZ0OmJlZm9yZSwgLmJ1dHRvbltjbGFzcyo9XCIgaWNvbi1cIl0uaWNvQWZ0OmJlZm9yZSB7XG4gICAgcG9zaXRpb246IHJlbHRpdmU7XG4gICAgcmlnaHQ6IDAuNXJlbTtcbiAgICB3aWR0aDogMnJlbTsgfVxuXG4uaWNvbi0yeCB7XG4gIGZvbnQtc2l6ZTogMnJlbTsgfVxuXG4uaWNvbi0zeCB7XG4gIGZvbnQtc2l6ZTogM3JlbTsgfVxuXG4uaWNvbi00eCB7XG4gIGZvbnQtc2l6ZTogNHJlbTsgfVxuXG4uaWNvbi1jb2xsZWN0aW9uczpiZWZvcmUge1xuICBjb250ZW50OiBcIu6knlwiOyB9XG5cbi5pY29uLXRhZzpiZWZvcmUge1xuICBjb250ZW50OiBcIu6kn1wiOyB9XG5cbi5pY29uLWNsb3NlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7qSdXCI7IH1cblxuLmljb24tbG9uZ19hcnJvd19sZWZ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7qScXCI7IH1cblxuLmljb24tbG9uZ19hcnJvd19yaWdodDpiZWZvcmUge1xuICBmb250LXNpemU6IDEuOHJlbTtcbiAgY29udGVudDogXCLupJtcIjsgfVxuXG4uaWNvbi1hcnJvdy1yaWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIu6klVwiOyB9XG5cbi5pY29uLWFycm93LXJpZ2h0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7qSVXCI7IH1cblxuLmljb24tZG93bmxvYWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLupJZcIjsgfVxuXG4uaWNvbi1maWxtMTpiZWZvcmUge1xuICBjb250ZW50OiBcIu6kl1wiOyB9XG5cbi5pY29uLW1hcDE6YmVmb3JlIHtcbiAgY29udGVudDogXCLupJhcIjsgfVxuXG4uaWNvbi1tZXNzYWdlLWNpcmNsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu6kmVwiOyB9XG5cbi5pY29uLXZpZGVvY2FtOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7qSaXCI7IH1cblxuLmljb24tY29sbGVjdGlvbjpiZWZvcmUge1xuICBjb250ZW50OiBcIu6kjVwiOyB9XG5cbi5pY29uLWV4cG9zaXRpb25zOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7qSOXCI7IH1cblxuLmljb24tb3V0aWxzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7qSPXCI7IH1cblxuLmljb24tcmVwZXJlczpiZWZvcmUge1xuICBjb250ZW50OiBcIu6kkFwiOyB9XG5cbi5pY29uLWNhbGVuZGFyOmJlZm9yZSwgLmljb24tdmlzaXRtb3JlMjpiZWZvcmUge1xuICBjb250ZW50OiBcIu6kilwiOyB9XG5cbi5pY29uLW11c2V1bW1vcmU6YmVmb3JlLCAuaWNvbi12aXNpdG1vcmUzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7qSLXCI7IH1cblxuLmljb24tcGxhbjpiZWZvcmUsIC5pY29uLXZpc2l0bW9yZTE6YmVmb3JlIHtcbiAgY29udGVudDogXCLupIxcIjsgfVxuXG4uaWNvbi1wbGF5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7qSJXCI7IH1cblxuLmljb24tbWFpbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu6khFwiOyB9XG5cbi5pY29uLWNsb3VkX2RvYzpiZWZvcmUge1xuICBjb250ZW50OiBcIu6khVwiOyB9XG5cbi5pY29uLWNvbW1lbnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLupIZcIjsgfVxuXG4uaWNvbi1kb2M6YmVmb3JlIHtcbiAgY29udGVudDogXCLupIdcIjsgfVxuXG4uaWNvbi1saW5rZG9jOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7qSIXCI7IH1cblxuLmljb24tbGluazpiZWZvcmUge1xuICBjb250ZW50OiBcIu6kg1wiOyB9XG5cbi5pY29uLWFycm9fbGVmdDpiZWZvcmUsIC5mYS1jaGV2cm9uLWxlZnQ6YmVmb3JlLCAuc2xpY2stcHJldjpiZWZvcmUge1xuICBjb250ZW50OiBcIu6kgFwiOyB9XG5cbi5pY29uLWFycm9fcmlnaHQ6YmVmb3JlLCAuZmEtY2hldnJvbi1yaWdodDpiZWZvcmUsIHVsLmFycm93LTIgbGk6bm90KC5uby1idWxsZXQpOmJlZm9yZSwgdWwuY2hldnJvbjpub3QoLmRlZmVyKSBsaTpub3QoLm5vLWJ1bGxldCk6YmVmb3JlLCB1bC5jaGV2cm9uLmRlZmVyIGxpOm5vdCgubm8tYnVsbGV0KSA+IDpmaXJzdC1jaGlsZDpiZWZvcmUsIHVsLmNoZXZyb24uc21hbGxlciBsaTpub3QoLm5vLWJ1bGxldCk6YmVmb3JlLCAuc2xpY2stbmV4dDpiZWZvcmUge1xuICBjb250ZW50OiBcIu6kgVwiOyB9XG5cbi5pY29uLW1hcDpiZWZvcmUge1xuICBjb250ZW50OiBcIu6kglwiOyB9XG5cbi5pY29uLWltYWdlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7qSTXCI7IH1cblxuLmljb24tdmlkZW86YmVmb3JlIHtcbiAgY29udGVudDogXCLupJRcIjsgfVxuXG4uaWNvbi1zb3VuZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu6kklwiOyB9XG5cbi5pY29uLXNlYXJjaDpiZWZvcmUsIC5mYS1zZWFyY2g6YmVmb3JlIHtcbiAgY29udGVudDogXCLupJFcIjsgfVxuXG4uaWNvbi1tdXNpYzpiZWZvcmUge1xuICBjb250ZW50OiBcIu+AgVwiOyB9XG5cbi5pY29uLWZpbG06YmVmb3JlIHtcbiAgY29udGVudDogXCLvgIhcIjsgfVxuXG4uaWNvbi12b2x1bWUtdXA6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgKhcIjsgfVxuXG4uaWNvbi12aWRlby1jYW1lcmE6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgL1cIjsgfVxuXG4uaWNvbi1pbWFnZTI6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgL5cIjsgfVxuXG4uaWNvbi1waG90bzpiZWZvcmUge1xuICBjb250ZW50OiBcIu+AvlwiOyB9XG5cbi5pY29uLXBpY3R1cmUtbzpiZWZvcmUge1xuICBjb250ZW50OiBcIu+AvlwiOyB9XG5cbi5pY29uLXBlbmNpbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+BgFwiOyB9XG5cbi5pY29uLXF1ZXN0aW9uLWNpcmNsZTpiZWZvcmUsIC5mYS1xdWVzdGlvbi1jaXJjbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgZlcIjsgfVxuXG4uaWNvbi1leWU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvga5cIjsgfVxuXG4uaWNvbi1leWUtc2xhc2g6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgbBcIjsgfVxuXG4uaWNvbi10d2l0dGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74KZXCI7IH1cblxuLmljb24tZmFjZWJvb2s6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgppcIjsgfVxuXG4uaWNvbi1maWx0ZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgrBcIjsgfVxuXG4uaWNvbi1maWxlLXRleHQtbzpiZWZvcmUge1xuICBjb250ZW50OiBcIu+DtlwiOyB9XG5cbi5pY29uLW9yZGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74WQXCI7IH1cblxuLmljb24teW91dHViZS1zcXVhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhaZcIjsgfVxuXG4uaWNvbi15b3V0dWJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74WnXCI7IH1cblxuLmljb24tbmV3c3BhcGVyLW86YmVmb3JlIHtcbiAgY29udGVudDogXCLvh6pcIjsgfVxuXG51bC5hcnJvdyB7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTsgfVxuICB1bC5hcnJvdzpub3QoLmRlZmVyKSBsaSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmctbGVmdDogMXJlbTsgfVxuICAgIHVsLmFycm93Om5vdCguZGVmZXIpIGxpOmJlZm9yZSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDAuNzVyZW07XG4gICAgICBsZWZ0OiAtMC4xMjVyZW07XG4gICAgICB3aWR0aDogMC43NXJlbTtcbiAgICAgIGZvbnQtZmFtaWx5OiBpY29tb29uO1xuICAgICAgY29udGVudDogXCI+XCI7XG4gICAgICBjb2xvcjogI2RkMzMzMztcbiAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCUsIC01MCUpO1xuICAgICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwJSwgLTUwJSk7XG4gICAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwJSwgLTUwJSk7XG4gICAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCUsIC01MCUpO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCUsIC01MCUpOyB9XG4gIHVsLmFycm93LmRlZmVyIGxpIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICB1bC5hcnJvdy5kZWZlciBsaSA+ICo6Zmlyc3QtY2hpbGQge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgcGFkZGluZy1sZWZ0OiAxLjVyZW07IH1cbiAgICAgIHVsLmFycm93LmRlZmVyIGxpID4gKjpmaXJzdC1jaGlsZDpiZWZvcmUge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMC42cmVtO1xuICAgICAgICBsZWZ0OiAtMC4xMjVyZW07XG4gICAgICAgIHdpZHRoOiAwLjc1cmVtO1xuICAgICAgICBmb250LWZhbWlseTogaWNvbW9vbjtcbiAgICAgICAgY29udGVudDogXCI+XCI7XG4gICAgICAgIGNvbG9yOiAjZGQzMzMzO1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKDAlLCAtNTAlKTtcbiAgICAgICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwJSwgLTUwJSk7XG4gICAgICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlKDAlLCAtNTAlKTtcbiAgICAgICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKDAlLCAtNTAlKTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCUsIC01MCUpOyB9XG5cbi8qXG4gKiB1bC5hcnJvdyBhbGlrZSBidXQgd2l0aCBhbm90aGVyIGFycm93IGljb24gaW5zdGVhZFxuICovXG51bC5hcnJvdy0yIHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lOyB9XG4gIHVsLmFycm93LTIgbGkge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nLWxlZnQ6IDEuMnJlbTsgfVxuICAgIHVsLmFycm93LTIgbGk6bm90KC5uby1idWxsZXQpOmJlZm9yZSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDAuNzVyZW07XG4gICAgICBsZWZ0OiAtMC4xMjVyZW07XG4gICAgICB3aWR0aDogMC43NXJlbTtcbiAgICAgIGZvbnQtZmFtaWx5OiBpY29tb29uO1xuICAgICAgY29sb3I6IGJsYWNrO1xuICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwJSwgLTUwJSk7XG4gICAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlKDAlLCAtNTAlKTtcbiAgICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlKDAlLCAtNTAlKTtcbiAgICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwJSwgLTUwJSk7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwJSwgLTUwJSk7IH1cbiAgICB1bC5hcnJvdy0yIGxpICsgbGkge1xuICAgICAgbWFyZ2luLXRvcDogMC41cmVtOyB9XG5cbi8qXG4gKiBVc2UgYSBjaGV2cm9uIGljb25cbiAqL1xudWwuY2hldnJvbiB7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTsgfVxuICB1bC5jaGV2cm9uOm5vdCguZGVmZXIpIGxpIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZy1sZWZ0OiAxLjFlbTsgfVxuICAgIHVsLmNoZXZyb246bm90KC5kZWZlcikgbGk6bm90KC5uby1idWxsZXQpOmJlZm9yZSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBsZWZ0OiAtMC4xMjVyZW07XG4gICAgICB3aWR0aDogMC43NXJlbTtcbiAgICAgIGZvbnQtZmFtaWx5OiBpY29tb29uO1xuICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgIGNvbG9yOiAjZGQzMzMzOyB9XG4gIHVsLmNoZXZyb24uZGVmZXIgbGkgPiAqOmZpcnN0LWNoaWxkIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZy1sZWZ0OiAxLjVlbTsgfVxuICB1bC5jaGV2cm9uLmRlZmVyIGxpOm5vdCgubm8tYnVsbGV0KSA+ICo6Zmlyc3QtY2hpbGQ6YmVmb3JlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwLjZyZW07XG4gICAgbGVmdDogLTAuMTI1cmVtO1xuICAgIHdpZHRoOiAwLjc1cmVtO1xuICAgIGZvbnQtZmFtaWx5OiBpY29tb29uO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgY29sb3I6ICNkZDMzMzM7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwJSwgLTUwJSk7XG4gICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwJSwgLTUwJSk7XG4gICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCUsIC01MCUpO1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwJSwgLTUwJSk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCUsIC01MCUpOyB9XG4gIHVsLmNoZXZyb24uYmlnZ2VyOm5vdCguZGVmZXIpIGxpOm5vdCgubm8tYnVsbGV0KSxcbiAgdWwuY2hldnJvbi5iaWdnZXIuZGVmZXIgbGk6bm90KC5uby1idWxsZXQpIHtcbiAgICBmb250LXNpemU6IDEuM2VtOyB9XG4gICAgdWwuY2hldnJvbi5iaWdnZXI6bm90KC5kZWZlcikgbGk6bm90KC5uby1idWxsZXQpOmJlZm9yZSxcbiAgICB1bC5jaGV2cm9uLmJpZ2dlcjpub3QoLmRlZmVyKSBsaTpub3QoLm5vLWJ1bGxldCkgPiAqOmZpcnN0LWNoaWxkOmJlZm9yZSxcbiAgICB1bC5jaGV2cm9uLmJpZ2dlci5kZWZlciBsaTpub3QoLm5vLWJ1bGxldCk6YmVmb3JlLFxuICAgIHVsLmNoZXZyb24uYmlnZ2VyLmRlZmVyIGxpOm5vdCgubm8tYnVsbGV0KSA+ICo6Zmlyc3QtY2hpbGQ6YmVmb3JlIHtcbiAgICAgIGZvbnQtc2l6ZTogMS4yZW07XG4gICAgICB0b3A6IDAuNzVyZW07IH1cbiAgdWwuY2hldnJvbi5zbWFsbGVyIGxpIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDEuMWVtOyB9XG4gICAgdWwuY2hldnJvbi5zbWFsbGVyIGxpOm5vdCgubm8tYnVsbGV0KTpiZWZvcmUge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgbGVmdDogLTAuMTI1cmVtO1xuICAgICAgd2lkdGg6IDAuNzVyZW07XG4gICAgICBmb250LWZhbWlseTogaWNvbW9vbjtcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICBjb2xvcjogIzBhMGEwYTsgfVxuXG4vKlxuICogTGlzdCBpdGVtcyBkaXZpZGVkIGJ5IGEgYm9sZCBib3JkZXJcbiAqL1xudWwuZGl2aWRlZCxcbm9sLmRpdmlkZWQge1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7IH1cbiAgdWwuZGl2aWRlZCBsaSArIGxpLFxuICBvbC5kaXZpZGVkIGxpICsgbGkge1xuICAgIG1hcmdpbi10b3A6IGVtLWNhbGMoMTBweCk7XG4gICAgcGFkZGluZy10b3A6IGVtLWNhbGMoMTBweCk7XG4gICAgYm9yZGVyLXRvcDogZW0tY2FsYyg0cHgpIHNvbGlkICNEREQ7IH1cblxuLypcbiAqIExpc3QgaXRlbXMgZGl2aWRlZCBieSBhIGJvbGQgYm9yZGVyIGFuZCBhbHNvIGJvcmRlciBvbiB0b3AgYW5kIGJvdHRvbSBvZlxuICogdGhlIGxpc3QgZWxlbWVudFxuICovXG51bC5saW5lLXN1cnJvdW5kLFxub2wubGluZS1zdXJyb3VuZCB7XG4gIGJvcmRlci10b3A6IDRweCBzb2xpZCAjREREO1xuICBib3JkZXItYm90dG9tOiA0cHggc29saWQgI0RERDsgfVxuICB1bC5saW5lLXN1cnJvdW5kIGxpLFxuICBvbC5saW5lLXN1cnJvdW5kIGxpIHtcbiAgICBwYWRkaW5nLXRvcDogMC44ZW07XG4gICAgcGFkZGluZy1ib3R0b206IDAuOGVtOyB9XG4gICAgdWwubGluZS1zdXJyb3VuZCBsaSArIGxpLFxuICAgIG9sLmxpbmUtc3Vycm91bmQgbGkgKyBsaSB7XG4gICAgICBib3JkZXItdG9wOiA0cHggc29saWQgI0RERDsgfVxuXG4vKlxuICogTmljZWx5IGxpc3RlZCBpdGVtIHdpdGggc29tZSBtaW5vciB2ZXJ0aWNhbCBzcGFjZXMgYW5kIHJpZ2h0IHBhZGRpbmdcbiAqIChtb3N0bHkgaW50ZW5kZWQgdG8gdXNlIHdpdGggZmxleCBsaXN0cylcbiAqL1xuLm5pY2UtbGlzdGluZyB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDsgfVxuICAubmljZS1saXN0aW5nLmd1dHRlciB7XG4gICAgbWFyZ2luOiAxcmVtOyB9XG4gIC5uaWNlLWxpc3RpbmcgPiBsaSB7XG4gICAgbWFyZ2luOiAwIDAgMXJlbSAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNzVyZW07IH1cblxuLypcbiAqIEFub3RoZXIgbGlzdCB3aXRoIGFycm93IGljb25cbiAqL1xuLmFycm93TGlzdCB7XG4gIG1hcmdpbjogMDsgfVxuICAuYXJyb3dMaXN0IGxpIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgY29sb3I6ICMwYTBhMGE7IH1cbiAgICAuYXJyb3dMaXN0IGxpIGEge1xuICAgICAgY29sb3I6ICMwYTBhMGE7XG4gICAgICBtYXJnaW4tbGVmdDogMC4ycmVtO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG4gICAgICAuYXJyb3dMaXN0IGxpIGE6aG92ZXIge1xuICAgICAgICBjb2xvcjogI2RkMzMzMzsgfVxuICAgIC5hcnJvd0xpc3QgbGk6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6ICfuobYnO1xuICAgICAgZm9udC1mYW1pbHk6IGljb21vb247XG4gICAgICBmb250LXNpemU6IDAuN3JlbTtcbiAgICAgIGNvbG9yOiAjZGQzMzMzO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHRvcDogMC4ycmVtOyB9XG5cbi5saXN0QW5kTGluZSB7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgYm9yZGVyLXRvcDogNHB4IHNvbGlkICNEREQ7XG4gIG1hcmdpbjogMDtcbiAgbWFyZ2luLXRvcDogMS41cmVtO1xuICBmbG9hdDogbGVmdDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMTAwJTsgfVxuICAubGlzdEFuZExpbmUgbGkge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW46IDA7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNEREQ7XG4gICAgcGFkZGluZy10b3A6IDAuODRyZW07XG4gICAgcGFkZGluZy1ib3R0b206IDAuODRyZW07IH1cbiAgICAubGlzdEFuZExpbmUgbGkgYSB7XG4gICAgICBjb2xvcjogIzBhMGEwYTsgfVxuICAubGlzdEFuZExpbmUuYmlnbGluZXMgbGkge1xuICAgIHBhZGRpbmctdG9wOiAxLjFyZW07XG4gICAgcGFkZGluZy1ib3R0b206IDEuMXJlbTtcbiAgICBib3JkZXItYm90dG9tOiA0cHggc29saWQgI2Y3ZjdmNzsgfVxuICAgIC5saXN0QW5kTGluZS5iaWdsaW5lcyBsaTpsYXN0LWNoaWxkIHtcbiAgICAgIGJvcmRlci1ib3R0b206IDBweCBzb2xpZCAjZjdmN2Y3OyB9XG5cbi5iaWdBcnJvdyBsaSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZy1sZWZ0OiAxLjc1cmVtOyB9XG4gIC5iaWdBcnJvdyBsaTpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICc+JztcbiAgICBmb250LWZhbWlseTogaWNvbW9vbjtcbiAgICBmb250LXNpemU6IDEuMnJlbTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwLjY1cmVtO1xuICAgIGxlZnQ6IDA7XG4gICAgY29sb3I6ICNkZDMzMzM7IH1cblxuLmRvdExpc3QgdWwuZG90dGVkIHtcbiAgbWFyZ2luOiAwOyB9XG5cbi5kb3RMaXN0IGxpIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBjb2xvcjogIzBhMGEwYTtcbiAgbWFyaW5nLWxlZnQ6IDA7XG4gIHBhZGRpbmctbGVmdDogMXJlbTsgfVxuICAuZG90TGlzdCBsaSBhIHtcbiAgICBjb2xvcjogIzhhOGE4YTtcbiAgICBtYXJnaW4tbGVmdDogMC4ycmVtO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICAuZG90TGlzdCBsaTpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICfigKInO1xuICAgIGZvbnQtc2l6ZTogMS40cmVtO1xuICAgIGNvbG9yOiAjZGQzMzMzO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogMHJlbTtcbiAgICBsaW5lLWhlaWdodDogMC45ZW07IH1cblxuLmRvdExpc3RzbWFsbCB1bC5kb3R0ZWQge1xuICBtYXJnaW46IDA7IH1cblxuLmRvdExpc3RzbWFsbCBsaSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgY29sb3I6ICMwYTBhMGE7XG4gIG1hcmluZy1sZWZ0OiAwO1xuICBwYWRkaW5nLWxlZnQ6IDAuN3JlbTsgfVxuICAuZG90TGlzdHNtYWxsIGxpIGEge1xuICAgIGNvbG9yOiAjOGE4YThhO1xuICAgIG1hcmdpbi1sZWZ0OiAwLjFyZW07XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG4gIC5kb3RMaXN0c21hbGwgbGk6YmVmb3JlIHtcbiAgICBjb250ZW50OiAn4oCiJztcbiAgICBmb250LXNpemU6IDAuN3JlbTtcbiAgICBjb2xvcjogIzBhMGEwYTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMDtcbiAgICB0b3A6IDAuNXJlbTtcbiAgICBsaW5lLWhlaWdodDogMC45ZW07IH1cblxuLyogSnVzdCBhIGxpc3Qgd2l0aG91dCBidWxsZXQgYW5kIG1hcmdpbiAqL1xuLmJsb2NrbGlzdCB7XG4gIG1hcmdpbjogMDtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lOyB9XG5cbi8qIGNvdW50ZXIgbGlzdCAqL1xudWwuY291bnRlckxpc3Qge1xuICBtYXJnaW46IDA7XG4gIGNvdW50ZXItcmVzZXQ6IGxpYztcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lOyB9XG4gIHVsLmNvdW50ZXJMaXN0IGxpIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZy1sZWZ0OiAyLjRyZW07XG4gICAgY291bnRlci1pbmNyZW1lbnQ6IGxpYztcbiAgICBtYXJnaW4tdG9wOiAwLjJyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMC40cmVtOyB9XG4gICAgdWwuY291bnRlckxpc3QgbGk6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IGNvdW50ZXIobGljKTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIHdpZHRoOiAxLjZyZW07XG4gICAgICBoZWlnaHQ6IDEuNnJlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjZyZW07XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgYmFja2dyb3VuZDogIzhhOGE4YTtcbiAgICAgIGNvbG9yOiAjZjdmN2Y3O1xuICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcbiAgICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwJSk7XG4gICAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcbiAgICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC01MCUpOyB9XG5cbi8qIGRhc2hMaXN0ICovXG4uZGFzaC1saXN0IGxpIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nLXJpZ2h0OiAycmVtOyB9XG4gIC5kYXNoLWxpc3QgbGk6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgIHBhZGRpbmctbGVmdDogMnJlbTsgfVxuICAgIC5kYXNoLWxpc3QgbGk6bm90KDpmaXJzdC1jaGlsZCk6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6ICd8JztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC01MCUpOyB9XG5cbi8qIGlubGluZSAqL1xuLmlubGluZS1saXN0IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG4gIC5pbmxpbmUtbGlzdCBsaSB7XG4gICAgZGlzcGxheTogaW5saW5lOyB9XG5cbi8qIGZsZXhMaXN0ICovXG4uZmxleC1saXN0IHtcbiAgZGlzcGxheTogZmxleDsgfVxuICAuZmxleC1saXN0IGxpIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG5cbi5ibGFja2xpc3QgbGkgYSB7XG4gIGNvbG9yOiAjMGEwYTBhOyB9XG5cbi5zbGlkZXItd3JhcHBlci50aGVtZS1kZWZhdWx0IHtcbiAgbWF4LXdpZHRoOiAxMDAlOyB9XG5cbi50aGVtZS1kZWZhdWx0IC5uaXZvU2xpZGVyIGltZyB7XG4gIG1heC13aWR0aDogMTAwJTsgfVxuXG4udGhlbWUtZGVmYXVsdCAubml2by1jYXB0aW9uIGEge1xuICBib3JkZXI6IDA7IH1cblxuLnRoZW1lLWRlZmF1bHQgLm5pdm8tY2FwdGlvbiAuc2hvd2hpZGUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAwcmVtO1xuICB0b3A6IDByZW07XG4gIGJvcmRlcjogMDtcbiAgbWFyZ2luOiAwOyB9XG5cbi5ub3RzZWUge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5uaXZvRGVzY3JpcHRpb24ge1xuICBoZWlnaHQ6IDIuN3JlbTsgfVxuICAubml2b0Rlc2NyaXB0aW9uIGgzLCAubml2b0Rlc2NyaXB0aW9uIC5oMywgLm5pdm9EZXNjcmlwdGlvbiAucnN0IGgyLCAucnN0IC5uaXZvRGVzY3JpcHRpb24gaDIsIC5uaXZvRGVzY3JpcHRpb24gLnJzdCBoMSwgLnJzdCAubml2b0Rlc2NyaXB0aW9uIGgxLCAubml2b0Rlc2NyaXB0aW9uIC5yc3QgLnRpdGxlLTEsIC5yc3QgLm5pdm9EZXNjcmlwdGlvbiAudGl0bGUtMSwgLm5pdm9EZXNjcmlwdGlvbiAucnN0IC50aXRsZS0yLCAucnN0IC5uaXZvRGVzY3JpcHRpb24gLnRpdGxlLTIsIC5uaXZvRGVzY3JpcHRpb24gLnRpdGxlLTMge1xuICAgIG1hcmdpbi1yaWdodDogNnJlbTsgfVxuXG4uc2hvd01vcmUgLm5pdm9EZXNjcmlwdGlvbiB7XG4gIGhlaWdodDogYXV0bzsgfVxuXG4uc2hvd01vcmUgLm5vdHNlZSB7XG4gIGRpc3BsYXk6IGlubGluZTsgfVxuXG4uc2hvd01vcmUgLnNlZSB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLnNob3dNb3JlIC5uaXZvLWNhcHRpb24ge1xuICBwYWRkaW5nOiAwIDEwcHg7IH1cblxuLm5pdm9EZXNjcmlwdGlvbiB7XG4gIG92ZXJmbG93OiBzY3JvbGw7IH1cblxuLypcbiAqXG4gKiBSZXN0eWxpbmcgYW5kIGFkZG9ucyBvbiBGb3VuZGF0aW9uIGZvcm1zXG4gKlxuICovXG5mb3JtIHtcbiAgLypcbiAgICAgKiBTaW1wbGUgZm9ybSB3aXRoIG5pY2VseSBzdGFja2VkIGxhYmVsK2lucHV0XG4gICAgICovXG4gIC8qXG4gICAgICogQXZvaWQgdG8gZGlzcGxheSByZXF1aXJlZCBtYXJrcyBvbiBmaWVsZHNcbiAgICAgKi8gfVxuICBmb3JtLmNvb2wtc3RhY2sgaW5wdXQsXG4gIGZvcm0uY29vbC1zdGFjayB0ZXh0YXJlYSxcbiAgZm9ybS5jb29sLXN0YWNrIHNlbGVjdCB7XG4gICAgYm9yZGVyLXJhZGl1czogMC4zcmVtOyB9XG4gIGZvcm0uY29vbC1zdGFjayBsYWJlbCAuYXN0ZXJpc2sge1xuICAgIGNvbG9yOiBsaWdudGVuKCNkZDMzMzMsIDEwJSk7IH1cbiAgZm9ybS5jb29sLXN0YWNrIC5pbmxpbmUtcmFkaW8gPiB1bCB7XG4gICAgbWFyZ2luOiAwOyB9XG4gICAgZm9ybS5jb29sLXN0YWNrIC5pbmxpbmUtcmFkaW8gPiB1bCA+IGxpIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICAgICAgZm9ybS5jb29sLXN0YWNrIC5pbmxpbmUtcmFkaW8gPiB1bCA+IGxpICsgbGkge1xuICAgICAgICBtYXJnaW4tbGVmdDogMXJlbTsgfVxuICBmb3JtLmNvb2wtc3RhY2sgLnJvdyArIC5yb3cge1xuICAgIG1hcmdpbi10b3A6IDFyZW07IH1cbiAgZm9ybS5jb29sLXN0YWNrIC5maWVsZC13cmFwcGVyIGxhYmVsLFxuICBmb3JtLmNvb2wtc3RhY2sgLmZpZWxkLXdyYXBwZXIgLmxhYmVsIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjVyZW07IH1cbiAgZm9ybS5jb29sLXN0YWNrIC5maWVsZC13cmFwcGVyICsgLmZpZWxkLXdyYXBwZXIge1xuICAgIG1hcmdpbi10b3A6IDAuNXJlbTsgfVxuICBmb3JtIC5kaXNjcmVldCBsYWJlbCAuYXN0ZXJpc2sge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cblxuLypcbiAqIENsZWFuIGZsYXQgZm9ybSB3aXRoIGxhYmVsIGFuZCBpbnB1dCBvbiB0aGUgc2FtZSBiYXNlbGluZVxuICpcbiAqIEJvdGggc3VwcG9ydCByZWFjdC1mb3JtIChzbWFydC0qKikgYW5kIGNyaXNweSBmb3JtcyAoaG9sZGVyKVxuICovXG4uZmxhdC1mb3JtIHtcbiAgLyogV2hlbiB0aGVyZSBpcyBhIGZvcm0gd2l0aG91dCBmaWVsZHNldCwgbmVlZCB0byBmaWxsIGJnICovIH1cbiAgLmZsYXQtZm9ybSBmb3JtIC5zbWFydC1maWVsZDo6YmVmb3JlLCAuZmxhdC1mb3JtIGZvcm0gLnNtYXJ0LWZpZWxkOjphZnRlcixcbiAgLmZsYXQtZm9ybSBmb3JtIC5ob2xkZXI6OmJlZm9yZSxcbiAgLmZsYXQtZm9ybSBmb3JtIC5ob2xkZXI6OmFmdGVyLFxuICAuZmxhdC1mb3JtIC53cmFwcGVyIC5zbWFydC1maWVsZDo6YmVmb3JlLFxuICAuZmxhdC1mb3JtIC53cmFwcGVyIC5zbWFydC1maWVsZDo6YWZ0ZXIsXG4gIC5mbGF0LWZvcm0gLndyYXBwZXIgLmhvbGRlcjo6YmVmb3JlLFxuICAuZmxhdC1mb3JtIC53cmFwcGVyIC5ob2xkZXI6OmFmdGVyIHtcbiAgICBjb250ZW50OiAnICc7XG4gICAgZGlzcGxheTogdGFibGU7IH1cbiAgLmZsYXQtZm9ybSBmb3JtIC5zbWFydC1maWVsZDo6YWZ0ZXIsXG4gIC5mbGF0LWZvcm0gZm9ybSAuaG9sZGVyOjphZnRlcixcbiAgLmZsYXQtZm9ybSAud3JhcHBlciAuc21hcnQtZmllbGQ6OmFmdGVyLFxuICAuZmxhdC1mb3JtIC53cmFwcGVyIC5ob2xkZXI6OmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDsgfVxuICAuZmxhdC1mb3JtIGZvcm0gLnNtYXJ0LWZpZWxkIGxhYmVsLFxuICAuZmxhdC1mb3JtIGZvcm0gLmhvbGRlciBsYWJlbCxcbiAgLmZsYXQtZm9ybSAud3JhcHBlciAuc21hcnQtZmllbGQgbGFiZWwsXG4gIC5mbGF0LWZvcm0gLndyYXBwZXIgLmhvbGRlciBsYWJlbCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgY29sb3I6ICMwYTBhMGE7XG4gICAgcGFkZGluZzogMC41cmVtIDEuNXJlbSAwLjVyZW0gMC41cmVtOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmZsYXQtZm9ybSBmb3JtIC5zbWFydC1maWVsZCBsYWJlbCxcbiAgICAgIC5mbGF0LWZvcm0gZm9ybSAuaG9sZGVyIGxhYmVsLFxuICAgICAgLmZsYXQtZm9ybSAud3JhcHBlciAuc21hcnQtZmllbGQgbGFiZWwsXG4gICAgICAuZmxhdC1mb3JtIC53cmFwcGVyIC5ob2xkZXIgbGFiZWwge1xuICAgICAgICB3aWR0aDogMzMlO1xuICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMS41cmVtOyB9IH1cbiAgLmZsYXQtZm9ybSBmb3JtIC5zbWFydC1maWVsZCBzZWxlY3QsXG4gIC5mbGF0LWZvcm0gZm9ybSAuc21hcnQtZmllbGQgaW5wdXRbdHlwZT1cInRleHRcIl0sXG4gIC5mbGF0LWZvcm0gZm9ybSAuc21hcnQtZmllbGQgaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdLFxuICAuZmxhdC1mb3JtIGZvcm0gLnNtYXJ0LWZpZWxkIGlucHV0W3R5cGU9XCJkYXRlXCJdLFxuICAuZmxhdC1mb3JtIGZvcm0gLnNtYXJ0LWZpZWxkIGlucHV0W3R5cGU9XCJkYXRldGltZVwiXSxcbiAgLmZsYXQtZm9ybSBmb3JtIC5zbWFydC1maWVsZCBpbnB1dFt0eXBlPVwiZGF0ZXRpbWUtbG9jYWxcIl0sXG4gIC5mbGF0LWZvcm0gZm9ybSAuc21hcnQtZmllbGQgaW5wdXRbdHlwZT1cIm1vbnRoXCJdLFxuICAuZmxhdC1mb3JtIGZvcm0gLnNtYXJ0LWZpZWxkIGlucHV0W3R5cGU9XCJ3ZWVrXCJdLFxuICAuZmxhdC1mb3JtIGZvcm0gLnNtYXJ0LWZpZWxkIGlucHV0W3R5cGU9XCJlbWFpbFwiXSxcbiAgLmZsYXQtZm9ybSBmb3JtIC5zbWFydC1maWVsZCBpbnB1dFt0eXBlPVwibnVtYmVyXCJdLFxuICAuZmxhdC1mb3JtIGZvcm0gLnNtYXJ0LWZpZWxkIGlucHV0W3R5cGU9XCJzZWFyY2hcIl0sXG4gIC5mbGF0LWZvcm0gZm9ybSAuc21hcnQtZmllbGQgaW5wdXRbdHlwZT1cInRlbFwiXSxcbiAgLmZsYXQtZm9ybSBmb3JtIC5zbWFydC1maWVsZCBpbnB1dFt0eXBlPVwidGltZVwiXSxcbiAgLmZsYXQtZm9ybSBmb3JtIC5zbWFydC1maWVsZCBpbnB1dFt0eXBlPVwidXJsXCJdLFxuICAuZmxhdC1mb3JtIGZvcm0gLnNtYXJ0LWZpZWxkIGlucHV0W3R5cGU9XCJjb2xvclwiXSxcbiAgLmZsYXQtZm9ybSBmb3JtIC5zbWFydC1maWVsZCB0ZXh0YXJlYSxcbiAgLmZsYXQtZm9ybSBmb3JtIC5ob2xkZXIgc2VsZWN0LFxuICAuZmxhdC1mb3JtIGZvcm0gLmhvbGRlciBpbnB1dFt0eXBlPVwidGV4dFwiXSxcbiAgLmZsYXQtZm9ybSBmb3JtIC5ob2xkZXIgaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdLFxuICAuZmxhdC1mb3JtIGZvcm0gLmhvbGRlciBpbnB1dFt0eXBlPVwiZGF0ZVwiXSxcbiAgLmZsYXQtZm9ybSBmb3JtIC5ob2xkZXIgaW5wdXRbdHlwZT1cImRhdGV0aW1lXCJdLFxuICAuZmxhdC1mb3JtIGZvcm0gLmhvbGRlciBpbnB1dFt0eXBlPVwiZGF0ZXRpbWUtbG9jYWxcIl0sXG4gIC5mbGF0LWZvcm0gZm9ybSAuaG9sZGVyIGlucHV0W3R5cGU9XCJtb250aFwiXSxcbiAgLmZsYXQtZm9ybSBmb3JtIC5ob2xkZXIgaW5wdXRbdHlwZT1cIndlZWtcIl0sXG4gIC5mbGF0LWZvcm0gZm9ybSAuaG9sZGVyIGlucHV0W3R5cGU9XCJlbWFpbFwiXSxcbiAgLmZsYXQtZm9ybSBmb3JtIC5ob2xkZXIgaW5wdXRbdHlwZT1cIm51bWJlclwiXSxcbiAgLmZsYXQtZm9ybSBmb3JtIC5ob2xkZXIgaW5wdXRbdHlwZT1cInNlYXJjaFwiXSxcbiAgLmZsYXQtZm9ybSBmb3JtIC5ob2xkZXIgaW5wdXRbdHlwZT1cInRlbFwiXSxcbiAgLmZsYXQtZm9ybSBmb3JtIC5ob2xkZXIgaW5wdXRbdHlwZT1cInRpbWVcIl0sXG4gIC5mbGF0LWZvcm0gZm9ybSAuaG9sZGVyIGlucHV0W3R5cGU9XCJ1cmxcIl0sXG4gIC5mbGF0LWZvcm0gZm9ybSAuaG9sZGVyIGlucHV0W3R5cGU9XCJjb2xvclwiXSxcbiAgLmZsYXQtZm9ybSBmb3JtIC5ob2xkZXIgdGV4dGFyZWEsXG4gIC5mbGF0LWZvcm0gLndyYXBwZXIgLnNtYXJ0LWZpZWxkIHNlbGVjdCxcbiAgLmZsYXQtZm9ybSAud3JhcHBlciAuc21hcnQtZmllbGQgaW5wdXRbdHlwZT1cInRleHRcIl0sXG4gIC5mbGF0LWZvcm0gLndyYXBwZXIgLnNtYXJ0LWZpZWxkIGlucHV0W3R5cGU9XCJwYXNzd29yZFwiXSxcbiAgLmZsYXQtZm9ybSAud3JhcHBlciAuc21hcnQtZmllbGQgaW5wdXRbdHlwZT1cImRhdGVcIl0sXG4gIC5mbGF0LWZvcm0gLndyYXBwZXIgLnNtYXJ0LWZpZWxkIGlucHV0W3R5cGU9XCJkYXRldGltZVwiXSxcbiAgLmZsYXQtZm9ybSAud3JhcHBlciAuc21hcnQtZmllbGQgaW5wdXRbdHlwZT1cImRhdGV0aW1lLWxvY2FsXCJdLFxuICAuZmxhdC1mb3JtIC53cmFwcGVyIC5zbWFydC1maWVsZCBpbnB1dFt0eXBlPVwibW9udGhcIl0sXG4gIC5mbGF0LWZvcm0gLndyYXBwZXIgLnNtYXJ0LWZpZWxkIGlucHV0W3R5cGU9XCJ3ZWVrXCJdLFxuICAuZmxhdC1mb3JtIC53cmFwcGVyIC5zbWFydC1maWVsZCBpbnB1dFt0eXBlPVwiZW1haWxcIl0sXG4gIC5mbGF0LWZvcm0gLndyYXBwZXIgLnNtYXJ0LWZpZWxkIGlucHV0W3R5cGU9XCJudW1iZXJcIl0sXG4gIC5mbGF0LWZvcm0gLndyYXBwZXIgLnNtYXJ0LWZpZWxkIGlucHV0W3R5cGU9XCJzZWFyY2hcIl0sXG4gIC5mbGF0LWZvcm0gLndyYXBwZXIgLnNtYXJ0LWZpZWxkIGlucHV0W3R5cGU9XCJ0ZWxcIl0sXG4gIC5mbGF0LWZvcm0gLndyYXBwZXIgLnNtYXJ0LWZpZWxkIGlucHV0W3R5cGU9XCJ0aW1lXCJdLFxuICAuZmxhdC1mb3JtIC53cmFwcGVyIC5zbWFydC1maWVsZCBpbnB1dFt0eXBlPVwidXJsXCJdLFxuICAuZmxhdC1mb3JtIC53cmFwcGVyIC5zbWFydC1maWVsZCBpbnB1dFt0eXBlPVwiY29sb3JcIl0sXG4gIC5mbGF0LWZvcm0gLndyYXBwZXIgLnNtYXJ0LWZpZWxkIHRleHRhcmVhLFxuICAuZmxhdC1mb3JtIC53cmFwcGVyIC5ob2xkZXIgc2VsZWN0LFxuICAuZmxhdC1mb3JtIC53cmFwcGVyIC5ob2xkZXIgaW5wdXRbdHlwZT1cInRleHRcIl0sXG4gIC5mbGF0LWZvcm0gLndyYXBwZXIgLmhvbGRlciBpbnB1dFt0eXBlPVwicGFzc3dvcmRcIl0sXG4gIC5mbGF0LWZvcm0gLndyYXBwZXIgLmhvbGRlciBpbnB1dFt0eXBlPVwiZGF0ZVwiXSxcbiAgLmZsYXQtZm9ybSAud3JhcHBlciAuaG9sZGVyIGlucHV0W3R5cGU9XCJkYXRldGltZVwiXSxcbiAgLmZsYXQtZm9ybSAud3JhcHBlciAuaG9sZGVyIGlucHV0W3R5cGU9XCJkYXRldGltZS1sb2NhbFwiXSxcbiAgLmZsYXQtZm9ybSAud3JhcHBlciAuaG9sZGVyIGlucHV0W3R5cGU9XCJtb250aFwiXSxcbiAgLmZsYXQtZm9ybSAud3JhcHBlciAuaG9sZGVyIGlucHV0W3R5cGU9XCJ3ZWVrXCJdLFxuICAuZmxhdC1mb3JtIC53cmFwcGVyIC5ob2xkZXIgaW5wdXRbdHlwZT1cImVtYWlsXCJdLFxuICAuZmxhdC1mb3JtIC53cmFwcGVyIC5ob2xkZXIgaW5wdXRbdHlwZT1cIm51bWJlclwiXSxcbiAgLmZsYXQtZm9ybSAud3JhcHBlciAuaG9sZGVyIGlucHV0W3R5cGU9XCJzZWFyY2hcIl0sXG4gIC5mbGF0LWZvcm0gLndyYXBwZXIgLmhvbGRlciBpbnB1dFt0eXBlPVwidGVsXCJdLFxuICAuZmxhdC1mb3JtIC53cmFwcGVyIC5ob2xkZXIgaW5wdXRbdHlwZT1cInRpbWVcIl0sXG4gIC5mbGF0LWZvcm0gLndyYXBwZXIgLmhvbGRlciBpbnB1dFt0eXBlPVwidXJsXCJdLFxuICAuZmxhdC1mb3JtIC53cmFwcGVyIC5ob2xkZXIgaW5wdXRbdHlwZT1cImNvbG9yXCJdLFxuICAuZmxhdC1mb3JtIC53cmFwcGVyIC5ob2xkZXIgdGV4dGFyZWEge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xuICAgIGJvcmRlci1yYWRpdXM6IDAuM3JlbTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjREREOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmZsYXQtZm9ybSBmb3JtIC5zbWFydC1maWVsZCBzZWxlY3QsXG4gICAgICAuZmxhdC1mb3JtIGZvcm0gLnNtYXJ0LWZpZWxkIGlucHV0W3R5cGU9XCJ0ZXh0XCJdLFxuICAgICAgLmZsYXQtZm9ybSBmb3JtIC5zbWFydC1maWVsZCBpbnB1dFt0eXBlPVwicGFzc3dvcmRcIl0sXG4gICAgICAuZmxhdC1mb3JtIGZvcm0gLnNtYXJ0LWZpZWxkIGlucHV0W3R5cGU9XCJkYXRlXCJdLFxuICAgICAgLmZsYXQtZm9ybSBmb3JtIC5zbWFydC1maWVsZCBpbnB1dFt0eXBlPVwiZGF0ZXRpbWVcIl0sXG4gICAgICAuZmxhdC1mb3JtIGZvcm0gLnNtYXJ0LWZpZWxkIGlucHV0W3R5cGU9XCJkYXRldGltZS1sb2NhbFwiXSxcbiAgICAgIC5mbGF0LWZvcm0gZm9ybSAuc21hcnQtZmllbGQgaW5wdXRbdHlwZT1cIm1vbnRoXCJdLFxuICAgICAgLmZsYXQtZm9ybSBmb3JtIC5zbWFydC1maWVsZCBpbnB1dFt0eXBlPVwid2Vla1wiXSxcbiAgICAgIC5mbGF0LWZvcm0gZm9ybSAuc21hcnQtZmllbGQgaW5wdXRbdHlwZT1cImVtYWlsXCJdLFxuICAgICAgLmZsYXQtZm9ybSBmb3JtIC5zbWFydC1maWVsZCBpbnB1dFt0eXBlPVwibnVtYmVyXCJdLFxuICAgICAgLmZsYXQtZm9ybSBmb3JtIC5zbWFydC1maWVsZCBpbnB1dFt0eXBlPVwic2VhcmNoXCJdLFxuICAgICAgLmZsYXQtZm9ybSBmb3JtIC5zbWFydC1maWVsZCBpbnB1dFt0eXBlPVwidGVsXCJdLFxuICAgICAgLmZsYXQtZm9ybSBmb3JtIC5zbWFydC1maWVsZCBpbnB1dFt0eXBlPVwidGltZVwiXSxcbiAgICAgIC5mbGF0LWZvcm0gZm9ybSAuc21hcnQtZmllbGQgaW5wdXRbdHlwZT1cInVybFwiXSxcbiAgICAgIC5mbGF0LWZvcm0gZm9ybSAuc21hcnQtZmllbGQgaW5wdXRbdHlwZT1cImNvbG9yXCJdLFxuICAgICAgLmZsYXQtZm9ybSBmb3JtIC5zbWFydC1maWVsZCB0ZXh0YXJlYSxcbiAgICAgIC5mbGF0LWZvcm0gZm9ybSAuaG9sZGVyIHNlbGVjdCxcbiAgICAgIC5mbGF0LWZvcm0gZm9ybSAuaG9sZGVyIGlucHV0W3R5cGU9XCJ0ZXh0XCJdLFxuICAgICAgLmZsYXQtZm9ybSBmb3JtIC5ob2xkZXIgaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdLFxuICAgICAgLmZsYXQtZm9ybSBmb3JtIC5ob2xkZXIgaW5wdXRbdHlwZT1cImRhdGVcIl0sXG4gICAgICAuZmxhdC1mb3JtIGZvcm0gLmhvbGRlciBpbnB1dFt0eXBlPVwiZGF0ZXRpbWVcIl0sXG4gICAgICAuZmxhdC1mb3JtIGZvcm0gLmhvbGRlciBpbnB1dFt0eXBlPVwiZGF0ZXRpbWUtbG9jYWxcIl0sXG4gICAgICAuZmxhdC1mb3JtIGZvcm0gLmhvbGRlciBpbnB1dFt0eXBlPVwibW9udGhcIl0sXG4gICAgICAuZmxhdC1mb3JtIGZvcm0gLmhvbGRlciBpbnB1dFt0eXBlPVwid2Vla1wiXSxcbiAgICAgIC5mbGF0LWZvcm0gZm9ybSAuaG9sZGVyIGlucHV0W3R5cGU9XCJlbWFpbFwiXSxcbiAgICAgIC5mbGF0LWZvcm0gZm9ybSAuaG9sZGVyIGlucHV0W3R5cGU9XCJudW1iZXJcIl0sXG4gICAgICAuZmxhdC1mb3JtIGZvcm0gLmhvbGRlciBpbnB1dFt0eXBlPVwic2VhcmNoXCJdLFxuICAgICAgLmZsYXQtZm9ybSBmb3JtIC5ob2xkZXIgaW5wdXRbdHlwZT1cInRlbFwiXSxcbiAgICAgIC5mbGF0LWZvcm0gZm9ybSAuaG9sZGVyIGlucHV0W3R5cGU9XCJ0aW1lXCJdLFxuICAgICAgLmZsYXQtZm9ybSBmb3JtIC5ob2xkZXIgaW5wdXRbdHlwZT1cInVybFwiXSxcbiAgICAgIC5mbGF0LWZvcm0gZm9ybSAuaG9sZGVyIGlucHV0W3R5cGU9XCJjb2xvclwiXSxcbiAgICAgIC5mbGF0LWZvcm0gZm9ybSAuaG9sZGVyIHRleHRhcmVhLFxuICAgICAgLmZsYXQtZm9ybSAud3JhcHBlciAuc21hcnQtZmllbGQgc2VsZWN0LFxuICAgICAgLmZsYXQtZm9ybSAud3JhcHBlciAuc21hcnQtZmllbGQgaW5wdXRbdHlwZT1cInRleHRcIl0sXG4gICAgICAuZmxhdC1mb3JtIC53cmFwcGVyIC5zbWFydC1maWVsZCBpbnB1dFt0eXBlPVwicGFzc3dvcmRcIl0sXG4gICAgICAuZmxhdC1mb3JtIC53cmFwcGVyIC5zbWFydC1maWVsZCBpbnB1dFt0eXBlPVwiZGF0ZVwiXSxcbiAgICAgIC5mbGF0LWZvcm0gLndyYXBwZXIgLnNtYXJ0LWZpZWxkIGlucHV0W3R5cGU9XCJkYXRldGltZVwiXSxcbiAgICAgIC5mbGF0LWZvcm0gLndyYXBwZXIgLnNtYXJ0LWZpZWxkIGlucHV0W3R5cGU9XCJkYXRldGltZS1sb2NhbFwiXSxcbiAgICAgIC5mbGF0LWZvcm0gLndyYXBwZXIgLnNtYXJ0LWZpZWxkIGlucHV0W3R5cGU9XCJtb250aFwiXSxcbiAgICAgIC5mbGF0LWZvcm0gLndyYXBwZXIgLnNtYXJ0LWZpZWxkIGlucHV0W3R5cGU9XCJ3ZWVrXCJdLFxuICAgICAgLmZsYXQtZm9ybSAud3JhcHBlciAuc21hcnQtZmllbGQgaW5wdXRbdHlwZT1cImVtYWlsXCJdLFxuICAgICAgLmZsYXQtZm9ybSAud3JhcHBlciAuc21hcnQtZmllbGQgaW5wdXRbdHlwZT1cIm51bWJlclwiXSxcbiAgICAgIC5mbGF0LWZvcm0gLndyYXBwZXIgLnNtYXJ0LWZpZWxkIGlucHV0W3R5cGU9XCJzZWFyY2hcIl0sXG4gICAgICAuZmxhdC1mb3JtIC53cmFwcGVyIC5zbWFydC1maWVsZCBpbnB1dFt0eXBlPVwidGVsXCJdLFxuICAgICAgLmZsYXQtZm9ybSAud3JhcHBlciAuc21hcnQtZmllbGQgaW5wdXRbdHlwZT1cInRpbWVcIl0sXG4gICAgICAuZmxhdC1mb3JtIC53cmFwcGVyIC5zbWFydC1maWVsZCBpbnB1dFt0eXBlPVwidXJsXCJdLFxuICAgICAgLmZsYXQtZm9ybSAud3JhcHBlciAuc21hcnQtZmllbGQgaW5wdXRbdHlwZT1cImNvbG9yXCJdLFxuICAgICAgLmZsYXQtZm9ybSAud3JhcHBlciAuc21hcnQtZmllbGQgdGV4dGFyZWEsXG4gICAgICAuZmxhdC1mb3JtIC53cmFwcGVyIC5ob2xkZXIgc2VsZWN0LFxuICAgICAgLmZsYXQtZm9ybSAud3JhcHBlciAuaG9sZGVyIGlucHV0W3R5cGU9XCJ0ZXh0XCJdLFxuICAgICAgLmZsYXQtZm9ybSAud3JhcHBlciAuaG9sZGVyIGlucHV0W3R5cGU9XCJwYXNzd29yZFwiXSxcbiAgICAgIC5mbGF0LWZvcm0gLndyYXBwZXIgLmhvbGRlciBpbnB1dFt0eXBlPVwiZGF0ZVwiXSxcbiAgICAgIC5mbGF0LWZvcm0gLndyYXBwZXIgLmhvbGRlciBpbnB1dFt0eXBlPVwiZGF0ZXRpbWVcIl0sXG4gICAgICAuZmxhdC1mb3JtIC53cmFwcGVyIC5ob2xkZXIgaW5wdXRbdHlwZT1cImRhdGV0aW1lLWxvY2FsXCJdLFxuICAgICAgLmZsYXQtZm9ybSAud3JhcHBlciAuaG9sZGVyIGlucHV0W3R5cGU9XCJtb250aFwiXSxcbiAgICAgIC5mbGF0LWZvcm0gLndyYXBwZXIgLmhvbGRlciBpbnB1dFt0eXBlPVwid2Vla1wiXSxcbiAgICAgIC5mbGF0LWZvcm0gLndyYXBwZXIgLmhvbGRlciBpbnB1dFt0eXBlPVwiZW1haWxcIl0sXG4gICAgICAuZmxhdC1mb3JtIC53cmFwcGVyIC5ob2xkZXIgaW5wdXRbdHlwZT1cIm51bWJlclwiXSxcbiAgICAgIC5mbGF0LWZvcm0gLndyYXBwZXIgLmhvbGRlciBpbnB1dFt0eXBlPVwic2VhcmNoXCJdLFxuICAgICAgLmZsYXQtZm9ybSAud3JhcHBlciAuaG9sZGVyIGlucHV0W3R5cGU9XCJ0ZWxcIl0sXG4gICAgICAuZmxhdC1mb3JtIC53cmFwcGVyIC5ob2xkZXIgaW5wdXRbdHlwZT1cInRpbWVcIl0sXG4gICAgICAuZmxhdC1mb3JtIC53cmFwcGVyIC5ob2xkZXIgaW5wdXRbdHlwZT1cInVybFwiXSxcbiAgICAgIC5mbGF0LWZvcm0gLndyYXBwZXIgLmhvbGRlciBpbnB1dFt0eXBlPVwiY29sb3JcIl0sXG4gICAgICAuZmxhdC1mb3JtIC53cmFwcGVyIC5ob2xkZXIgdGV4dGFyZWEge1xuICAgICAgICB3aWR0aDogMzMlOyB9IH1cbiAgICAuZmxhdC1mb3JtIGZvcm0gLnNtYXJ0LWZpZWxkIHNlbGVjdDpmb2N1cyxcbiAgICAuZmxhdC1mb3JtIGZvcm0gLnNtYXJ0LWZpZWxkIGlucHV0W3R5cGU9XCJ0ZXh0XCJdOmZvY3VzLFxuICAgIC5mbGF0LWZvcm0gZm9ybSAuc21hcnQtZmllbGQgaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdOmZvY3VzLFxuICAgIC5mbGF0LWZvcm0gZm9ybSAuc21hcnQtZmllbGQgaW5wdXRbdHlwZT1cImRhdGVcIl06Zm9jdXMsXG4gICAgLmZsYXQtZm9ybSBmb3JtIC5zbWFydC1maWVsZCBpbnB1dFt0eXBlPVwiZGF0ZXRpbWVcIl06Zm9jdXMsXG4gICAgLmZsYXQtZm9ybSBmb3JtIC5zbWFydC1maWVsZCBpbnB1dFt0eXBlPVwiZGF0ZXRpbWUtbG9jYWxcIl06Zm9jdXMsXG4gICAgLmZsYXQtZm9ybSBmb3JtIC5zbWFydC1maWVsZCBpbnB1dFt0eXBlPVwibW9udGhcIl06Zm9jdXMsXG4gICAgLmZsYXQtZm9ybSBmb3JtIC5zbWFydC1maWVsZCBpbnB1dFt0eXBlPVwid2Vla1wiXTpmb2N1cyxcbiAgICAuZmxhdC1mb3JtIGZvcm0gLnNtYXJ0LWZpZWxkIGlucHV0W3R5cGU9XCJlbWFpbFwiXTpmb2N1cyxcbiAgICAuZmxhdC1mb3JtIGZvcm0gLnNtYXJ0LWZpZWxkIGlucHV0W3R5cGU9XCJudW1iZXJcIl06Zm9jdXMsXG4gICAgLmZsYXQtZm9ybSBmb3JtIC5zbWFydC1maWVsZCBpbnB1dFt0eXBlPVwic2VhcmNoXCJdOmZvY3VzLFxuICAgIC5mbGF0LWZvcm0gZm9ybSAuc21hcnQtZmllbGQgaW5wdXRbdHlwZT1cInRlbFwiXTpmb2N1cyxcbiAgICAuZmxhdC1mb3JtIGZvcm0gLnNtYXJ0LWZpZWxkIGlucHV0W3R5cGU9XCJ0aW1lXCJdOmZvY3VzLFxuICAgIC5mbGF0LWZvcm0gZm9ybSAuc21hcnQtZmllbGQgaW5wdXRbdHlwZT1cInVybFwiXTpmb2N1cyxcbiAgICAuZmxhdC1mb3JtIGZvcm0gLnNtYXJ0LWZpZWxkIGlucHV0W3R5cGU9XCJjb2xvclwiXTpmb2N1cyxcbiAgICAuZmxhdC1mb3JtIGZvcm0gLnNtYXJ0LWZpZWxkIHRleHRhcmVhOmZvY3VzLFxuICAgIC5mbGF0LWZvcm0gZm9ybSAuaG9sZGVyIHNlbGVjdDpmb2N1cyxcbiAgICAuZmxhdC1mb3JtIGZvcm0gLmhvbGRlciBpbnB1dFt0eXBlPVwidGV4dFwiXTpmb2N1cyxcbiAgICAuZmxhdC1mb3JtIGZvcm0gLmhvbGRlciBpbnB1dFt0eXBlPVwicGFzc3dvcmRcIl06Zm9jdXMsXG4gICAgLmZsYXQtZm9ybSBmb3JtIC5ob2xkZXIgaW5wdXRbdHlwZT1cImRhdGVcIl06Zm9jdXMsXG4gICAgLmZsYXQtZm9ybSBmb3JtIC5ob2xkZXIgaW5wdXRbdHlwZT1cImRhdGV0aW1lXCJdOmZvY3VzLFxuICAgIC5mbGF0LWZvcm0gZm9ybSAuaG9sZGVyIGlucHV0W3R5cGU9XCJkYXRldGltZS1sb2NhbFwiXTpmb2N1cyxcbiAgICAuZmxhdC1mb3JtIGZvcm0gLmhvbGRlciBpbnB1dFt0eXBlPVwibW9udGhcIl06Zm9jdXMsXG4gICAgLmZsYXQtZm9ybSBmb3JtIC5ob2xkZXIgaW5wdXRbdHlwZT1cIndlZWtcIl06Zm9jdXMsXG4gICAgLmZsYXQtZm9ybSBmb3JtIC5ob2xkZXIgaW5wdXRbdHlwZT1cImVtYWlsXCJdOmZvY3VzLFxuICAgIC5mbGF0LWZvcm0gZm9ybSAuaG9sZGVyIGlucHV0W3R5cGU9XCJudW1iZXJcIl06Zm9jdXMsXG4gICAgLmZsYXQtZm9ybSBmb3JtIC5ob2xkZXIgaW5wdXRbdHlwZT1cInNlYXJjaFwiXTpmb2N1cyxcbiAgICAuZmxhdC1mb3JtIGZvcm0gLmhvbGRlciBpbnB1dFt0eXBlPVwidGVsXCJdOmZvY3VzLFxuICAgIC5mbGF0LWZvcm0gZm9ybSAuaG9sZGVyIGlucHV0W3R5cGU9XCJ0aW1lXCJdOmZvY3VzLFxuICAgIC5mbGF0LWZvcm0gZm9ybSAuaG9sZGVyIGlucHV0W3R5cGU9XCJ1cmxcIl06Zm9jdXMsXG4gICAgLmZsYXQtZm9ybSBmb3JtIC5ob2xkZXIgaW5wdXRbdHlwZT1cImNvbG9yXCJdOmZvY3VzLFxuICAgIC5mbGF0LWZvcm0gZm9ybSAuaG9sZGVyIHRleHRhcmVhOmZvY3VzLFxuICAgIC5mbGF0LWZvcm0gLndyYXBwZXIgLnNtYXJ0LWZpZWxkIHNlbGVjdDpmb2N1cyxcbiAgICAuZmxhdC1mb3JtIC53cmFwcGVyIC5zbWFydC1maWVsZCBpbnB1dFt0eXBlPVwidGV4dFwiXTpmb2N1cyxcbiAgICAuZmxhdC1mb3JtIC53cmFwcGVyIC5zbWFydC1maWVsZCBpbnB1dFt0eXBlPVwicGFzc3dvcmRcIl06Zm9jdXMsXG4gICAgLmZsYXQtZm9ybSAud3JhcHBlciAuc21hcnQtZmllbGQgaW5wdXRbdHlwZT1cImRhdGVcIl06Zm9jdXMsXG4gICAgLmZsYXQtZm9ybSAud3JhcHBlciAuc21hcnQtZmllbGQgaW5wdXRbdHlwZT1cImRhdGV0aW1lXCJdOmZvY3VzLFxuICAgIC5mbGF0LWZvcm0gLndyYXBwZXIgLnNtYXJ0LWZpZWxkIGlucHV0W3R5cGU9XCJkYXRldGltZS1sb2NhbFwiXTpmb2N1cyxcbiAgICAuZmxhdC1mb3JtIC53cmFwcGVyIC5zbWFydC1maWVsZCBpbnB1dFt0eXBlPVwibW9udGhcIl06Zm9jdXMsXG4gICAgLmZsYXQtZm9ybSAud3JhcHBlciAuc21hcnQtZmllbGQgaW5wdXRbdHlwZT1cIndlZWtcIl06Zm9jdXMsXG4gICAgLmZsYXQtZm9ybSAud3JhcHBlciAuc21hcnQtZmllbGQgaW5wdXRbdHlwZT1cImVtYWlsXCJdOmZvY3VzLFxuICAgIC5mbGF0LWZvcm0gLndyYXBwZXIgLnNtYXJ0LWZpZWxkIGlucHV0W3R5cGU9XCJudW1iZXJcIl06Zm9jdXMsXG4gICAgLmZsYXQtZm9ybSAud3JhcHBlciAuc21hcnQtZmllbGQgaW5wdXRbdHlwZT1cInNlYXJjaFwiXTpmb2N1cyxcbiAgICAuZmxhdC1mb3JtIC53cmFwcGVyIC5zbWFydC1maWVsZCBpbnB1dFt0eXBlPVwidGVsXCJdOmZvY3VzLFxuICAgIC5mbGF0LWZvcm0gLndyYXBwZXIgLnNtYXJ0LWZpZWxkIGlucHV0W3R5cGU9XCJ0aW1lXCJdOmZvY3VzLFxuICAgIC5mbGF0LWZvcm0gLndyYXBwZXIgLnNtYXJ0LWZpZWxkIGlucHV0W3R5cGU9XCJ1cmxcIl06Zm9jdXMsXG4gICAgLmZsYXQtZm9ybSAud3JhcHBlciAuc21hcnQtZmllbGQgaW5wdXRbdHlwZT1cImNvbG9yXCJdOmZvY3VzLFxuICAgIC5mbGF0LWZvcm0gLndyYXBwZXIgLnNtYXJ0LWZpZWxkIHRleHRhcmVhOmZvY3VzLFxuICAgIC5mbGF0LWZvcm0gLndyYXBwZXIgLmhvbGRlciBzZWxlY3Q6Zm9jdXMsXG4gICAgLmZsYXQtZm9ybSAud3JhcHBlciAuaG9sZGVyIGlucHV0W3R5cGU9XCJ0ZXh0XCJdOmZvY3VzLFxuICAgIC5mbGF0LWZvcm0gLndyYXBwZXIgLmhvbGRlciBpbnB1dFt0eXBlPVwicGFzc3dvcmRcIl06Zm9jdXMsXG4gICAgLmZsYXQtZm9ybSAud3JhcHBlciAuaG9sZGVyIGlucHV0W3R5cGU9XCJkYXRlXCJdOmZvY3VzLFxuICAgIC5mbGF0LWZvcm0gLndyYXBwZXIgLmhvbGRlciBpbnB1dFt0eXBlPVwiZGF0ZXRpbWVcIl06Zm9jdXMsXG4gICAgLmZsYXQtZm9ybSAud3JhcHBlciAuaG9sZGVyIGlucHV0W3R5cGU9XCJkYXRldGltZS1sb2NhbFwiXTpmb2N1cyxcbiAgICAuZmxhdC1mb3JtIC53cmFwcGVyIC5ob2xkZXIgaW5wdXRbdHlwZT1cIm1vbnRoXCJdOmZvY3VzLFxuICAgIC5mbGF0LWZvcm0gLndyYXBwZXIgLmhvbGRlciBpbnB1dFt0eXBlPVwid2Vla1wiXTpmb2N1cyxcbiAgICAuZmxhdC1mb3JtIC53cmFwcGVyIC5ob2xkZXIgaW5wdXRbdHlwZT1cImVtYWlsXCJdOmZvY3VzLFxuICAgIC5mbGF0LWZvcm0gLndyYXBwZXIgLmhvbGRlciBpbnB1dFt0eXBlPVwibnVtYmVyXCJdOmZvY3VzLFxuICAgIC5mbGF0LWZvcm0gLndyYXBwZXIgLmhvbGRlciBpbnB1dFt0eXBlPVwic2VhcmNoXCJdOmZvY3VzLFxuICAgIC5mbGF0LWZvcm0gLndyYXBwZXIgLmhvbGRlciBpbnB1dFt0eXBlPVwidGVsXCJdOmZvY3VzLFxuICAgIC5mbGF0LWZvcm0gLndyYXBwZXIgLmhvbGRlciBpbnB1dFt0eXBlPVwidGltZVwiXTpmb2N1cyxcbiAgICAuZmxhdC1mb3JtIC53cmFwcGVyIC5ob2xkZXIgaW5wdXRbdHlwZT1cInVybFwiXTpmb2N1cyxcbiAgICAuZmxhdC1mb3JtIC53cmFwcGVyIC5ob2xkZXIgaW5wdXRbdHlwZT1cImNvbG9yXCJdOmZvY3VzLFxuICAgIC5mbGF0LWZvcm0gLndyYXBwZXIgLmhvbGRlciB0ZXh0YXJlYTpmb2N1cyB7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCBsaWdudGVuKCNkZDMzMzMsIDEwJSk7IH1cbiAgLmZsYXQtZm9ybSBmb3JtIC5zbWFydC1maWVsZCBpbnB1dFt0eXBlPVwicmFkaW9cIl0sXG4gIC5mbGF0LWZvcm0gZm9ybSAuaG9sZGVyIGlucHV0W3R5cGU9XCJyYWRpb1wiXSxcbiAgLmZsYXQtZm9ybSAud3JhcHBlciAuc21hcnQtZmllbGQgaW5wdXRbdHlwZT1cInJhZGlvXCJdLFxuICAuZmxhdC1mb3JtIC53cmFwcGVyIC5ob2xkZXIgaW5wdXRbdHlwZT1cInJhZGlvXCJdIHtcbiAgICBtYXJnaW46IDAuOHJlbSAwLjRyZW0gMXJlbTsgfVxuICAuZmxhdC1mb3JtIGZvcm0gLnNtYXJ0LWZpZWxkIHNlbGVjdCxcbiAgLmZsYXQtZm9ybSBmb3JtIC5ob2xkZXIgc2VsZWN0LFxuICAuZmxhdC1mb3JtIC53cmFwcGVyIC5zbWFydC1maWVsZCBzZWxlY3QsXG4gIC5mbGF0LWZvcm0gLndyYXBwZXIgLmhvbGRlciBzZWxlY3Qge1xuICAgIGhlaWdodDogM3JlbTsgfVxuICAuZmxhdC1mb3JtIGZvcm0gLnNtYXJ0LWZpZWxkLnNtYXJ0LWVycm9yIGlucHV0LFxuICAuZmxhdC1mb3JtIGZvcm0gLmhvbGRlci5zbWFydC1lcnJvciBpbnB1dCxcbiAgLmZsYXQtZm9ybSAud3JhcHBlciAuc21hcnQtZmllbGQuc21hcnQtZXJyb3IgaW5wdXQsXG4gIC5mbGF0LWZvcm0gLndyYXBwZXIgLmhvbGRlci5zbWFydC1lcnJvciBpbnB1dCB7XG4gICAgYm9yZGVyLWNvbG9yOiByZWQ7IH1cbiAgLmZsYXQtZm9ybSBmb3JtIC5zbWFydC1maWVsZC5zbWFydC1lcnJvciAuZXJyb3ItbWVzc2FnZSxcbiAgLmZsYXQtZm9ybSBmb3JtIC5ob2xkZXIuc21hcnQtZXJyb3IgLmVycm9yLW1lc3NhZ2UsXG4gIC5mbGF0LWZvcm0gLndyYXBwZXIgLnNtYXJ0LWZpZWxkLnNtYXJ0LWVycm9yIC5lcnJvci1tZXNzYWdlLFxuICAuZmxhdC1mb3JtIC53cmFwcGVyIC5ob2xkZXIuc21hcnQtZXJyb3IgLmVycm9yLW1lc3NhZ2Uge1xuICAgIGNvbG9yOiByZWQ7XG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgIG1hcmdpbi1sZWZ0OiAxZW07IH1cbiAgLmZsYXQtZm9ybSBmb3JtIC5zbWFydC1maWVsZC5lcnJvciBzZWxlY3QsXG4gIC5mbGF0LWZvcm0gZm9ybSAuc21hcnQtZmllbGQuZXJyb3IgaW5wdXQsXG4gIC5mbGF0LWZvcm0gZm9ybSAuaG9sZGVyLmVycm9yIHNlbGVjdCxcbiAgLmZsYXQtZm9ybSBmb3JtIC5ob2xkZXIuZXJyb3IgaW5wdXQsXG4gIC5mbGF0LWZvcm0gLndyYXBwZXIgLnNtYXJ0LWZpZWxkLmVycm9yIHNlbGVjdCxcbiAgLmZsYXQtZm9ybSAud3JhcHBlciAuc21hcnQtZmllbGQuZXJyb3IgaW5wdXQsXG4gIC5mbGF0LWZvcm0gLndyYXBwZXIgLmhvbGRlci5lcnJvciBzZWxlY3QsXG4gIC5mbGF0LWZvcm0gLndyYXBwZXIgLmhvbGRlci5lcnJvciBpbnB1dCB7XG4gICAgYm9yZGVyLWNvbG9yOiByZWQ7XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTsgfVxuICAuZmxhdC1mb3JtIGZvcm0gLnNtYXJ0LWZpZWxkLmVycm9yIHNtYWxsLmVycm9yLFxuICAuZmxhdC1mb3JtIGZvcm0gLmhvbGRlci5lcnJvciBzbWFsbC5lcnJvcixcbiAgLmZsYXQtZm9ybSAud3JhcHBlciAuc21hcnQtZmllbGQuZXJyb3Igc21hbGwuZXJyb3IsXG4gIC5mbGF0LWZvcm0gLndyYXBwZXIgLmhvbGRlci5lcnJvciBzbWFsbC5lcnJvciB7XG4gICAgbWFyZ2luLWxlZnQ6IDFlbTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgY29sb3I6IHJlZDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAuZmxhdC1mb3JtIGZvcm0gLnNtYXJ0LWZpZWxkIC5pbmxpbmUtcmFkaW8sXG4gIC5mbGF0LWZvcm0gZm9ybSAuaG9sZGVyIC5pbmxpbmUtcmFkaW8sXG4gIC5mbGF0LWZvcm0gLndyYXBwZXIgLnNtYXJ0LWZpZWxkIC5pbmxpbmUtcmFkaW8sXG4gIC5mbGF0LWZvcm0gLndyYXBwZXIgLmhvbGRlciAuaW5saW5lLXJhZGlvIHtcbiAgICBmbG9hdDogbGVmdDsgfVxuICAgIC5mbGF0LWZvcm0gZm9ybSAuc21hcnQtZmllbGQgLmlubGluZS1yYWRpbyBsYWJlbCxcbiAgICAuZmxhdC1mb3JtIGZvcm0gLmhvbGRlciAuaW5saW5lLXJhZGlvIGxhYmVsLFxuICAgIC5mbGF0LWZvcm0gLndyYXBwZXIgLnNtYXJ0LWZpZWxkIC5pbmxpbmUtcmFkaW8gbGFiZWwsXG4gICAgLmZsYXQtZm9ybSAud3JhcHBlciAuaG9sZGVyIC5pbmxpbmUtcmFkaW8gbGFiZWwge1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwOyB9XG4gIC5mbGF0LWZvcm0gZm9ybSAuc21hcnQtZmllbGQuaG9sZGVyLWlubGluZS1yYWRpbyB1bCxcbiAgLmZsYXQtZm9ybSBmb3JtIC5ob2xkZXIuaG9sZGVyLWlubGluZS1yYWRpbyB1bCxcbiAgLmZsYXQtZm9ybSAud3JhcHBlciAuc21hcnQtZmllbGQuaG9sZGVyLWlubGluZS1yYWRpbyB1bCxcbiAgLmZsYXQtZm9ybSAud3JhcHBlciAuaG9sZGVyLmhvbGRlci1pbmxpbmUtcmFkaW8gdWwge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIGZsb2F0OiBsZWZ0OyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmZsYXQtZm9ybSBmb3JtIC5zbWFydC1maWVsZC5ob2xkZXItaW5saW5lLXJhZGlvIHVsLFxuICAgICAgLmZsYXQtZm9ybSBmb3JtIC5ob2xkZXIuaG9sZGVyLWlubGluZS1yYWRpbyB1bCxcbiAgICAgIC5mbGF0LWZvcm0gLndyYXBwZXIgLnNtYXJ0LWZpZWxkLmhvbGRlci1pbmxpbmUtcmFkaW8gdWwsXG4gICAgICAuZmxhdC1mb3JtIC53cmFwcGVyIC5ob2xkZXIuaG9sZGVyLWlubGluZS1yYWRpbyB1bCB7XG4gICAgICAgIHdpZHRoOiAzMyU7IH0gfVxuICAgIC5mbGF0LWZvcm0gZm9ybSAuc21hcnQtZmllbGQuaG9sZGVyLWlubGluZS1yYWRpbyB1bCBsaSxcbiAgICAuZmxhdC1mb3JtIGZvcm0gLmhvbGRlci5ob2xkZXItaW5saW5lLXJhZGlvIHVsIGxpLFxuICAgIC5mbGF0LWZvcm0gLndyYXBwZXIgLnNtYXJ0LWZpZWxkLmhvbGRlci1pbmxpbmUtcmFkaW8gdWwgbGksXG4gICAgLmZsYXQtZm9ybSAud3JhcHBlciAuaG9sZGVyLmhvbGRlci1pbmxpbmUtcmFkaW8gdWwgbGkge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gICAgICBsaW5lLWhlaWdodDogMTsgfVxuICAgICAgLmZsYXQtZm9ybSBmb3JtIC5zbWFydC1maWVsZC5ob2xkZXItaW5saW5lLXJhZGlvIHVsIGxpIGxhYmVsLFxuICAgICAgLmZsYXQtZm9ybSBmb3JtIC5ob2xkZXIuaG9sZGVyLWlubGluZS1yYWRpbyB1bCBsaSBsYWJlbCxcbiAgICAgIC5mbGF0LWZvcm0gLndyYXBwZXIgLnNtYXJ0LWZpZWxkLmhvbGRlci1pbmxpbmUtcmFkaW8gdWwgbGkgbGFiZWwsXG4gICAgICAuZmxhdC1mb3JtIC53cmFwcGVyIC5ob2xkZXIuaG9sZGVyLWlubGluZS1yYWRpbyB1bCBsaSBsYWJlbCB7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE7IH1cbiAgICAgIC5mbGF0LWZvcm0gZm9ybSAuc21hcnQtZmllbGQuaG9sZGVyLWlubGluZS1yYWRpbyB1bCBsaSBpbnB1dCxcbiAgICAgIC5mbGF0LWZvcm0gZm9ybSAuaG9sZGVyLmhvbGRlci1pbmxpbmUtcmFkaW8gdWwgbGkgaW5wdXQsXG4gICAgICAuZmxhdC1mb3JtIC53cmFwcGVyIC5zbWFydC1maWVsZC5ob2xkZXItaW5saW5lLXJhZGlvIHVsIGxpIGlucHV0LFxuICAgICAgLmZsYXQtZm9ybSAud3JhcHBlciAuaG9sZGVyLmhvbGRlci1pbmxpbmUtcmFkaW8gdWwgbGkgaW5wdXQge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICAgICAgICBtYXJnaW4tdG9wOiAwOyB9XG4gIC5mbGF0LWZvcm0gZm9ybSAuYnV0dG9uLWhvbGRlcixcbiAgLmZsYXQtZm9ybSAud3JhcHBlciAuYnV0dG9uLWhvbGRlciB7XG4gICAgcGFkZGluZzogMXJlbSAwO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAuZmxhdC1mb3JtIGZvcm0gZmllbGRzZXQsXG4gIC5mbGF0LWZvcm0gZm9ybSAuZmllbGRzZXQsXG4gIC5mbGF0LWZvcm0gLndyYXBwZXIgZmllbGRzZXQsXG4gIC5mbGF0LWZvcm0gLndyYXBwZXIgLmZpZWxkc2V0IHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMnJlbSAyLjVyZW07XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzhhOGE4YTtcbiAgICBib3JkZXI6IDA7IH1cbiAgICAuZmxhdC1mb3JtIGZvcm0gZmllbGRzZXQgZmllbGRzZXQsXG4gICAgLmZsYXQtZm9ybSBmb3JtIC5maWVsZHNldCBmaWVsZHNldCxcbiAgICAuZmxhdC1mb3JtIC53cmFwcGVyIGZpZWxkc2V0IGZpZWxkc2V0LFxuICAgIC5mbGF0LWZvcm0gLndyYXBwZXIgLmZpZWxkc2V0IGZpZWxkc2V0IHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDJyZW0gMHJlbTsgfVxuICAgIC5mbGF0LWZvcm0gZm9ybSBmaWVsZHNldCAubGVnZW5kLFxuICAgIC5mbGF0LWZvcm0gZm9ybSAuZmllbGRzZXQgLmxlZ2VuZCxcbiAgICAuZmxhdC1mb3JtIC53cmFwcGVyIGZpZWxkc2V0IC5sZWdlbmQsXG4gICAgLmZsYXQtZm9ybSAud3JhcHBlciAuZmllbGRzZXQgLmxlZ2VuZCB7XG4gICAgICBtYXJnaW46IDAgMCAyLjVyZW07XG4gICAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICBjb2xvcjogIzhhOGE4YTtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjOGE4YThhO1xuICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogNXB4OyB9XG4gICAgLmZsYXQtZm9ybSBmb3JtIGZpZWxkc2V0ICsgZmllbGRzZXQsXG4gICAgLmZsYXQtZm9ybSBmb3JtIGZpZWxkc2V0ICsgZGl2LFxuICAgIC5mbGF0LWZvcm0gZm9ybSAuZmllbGRzZXQgKyBmaWVsZHNldCxcbiAgICAuZmxhdC1mb3JtIGZvcm0gLmZpZWxkc2V0ICsgZGl2LFxuICAgIC5mbGF0LWZvcm0gLndyYXBwZXIgZmllbGRzZXQgKyBmaWVsZHNldCxcbiAgICAuZmxhdC1mb3JtIC53cmFwcGVyIGZpZWxkc2V0ICsgZGl2LFxuICAgIC5mbGF0LWZvcm0gLndyYXBwZXIgLmZpZWxkc2V0ICsgZmllbGRzZXQsXG4gICAgLmZsYXQtZm9ybSAud3JhcHBlciAuZmllbGRzZXQgKyBkaXYge1xuICAgICAgYm9yZGVyLXRvcDogMC4yNXJlbSBzb2xpZCAjZjdmN2Y3OyB9XG4gIC5mbGF0LWZvcm0gZm9ybSAuZ2VyYW5jZSBmaWVsZHNldCxcbiAgLmZsYXQtZm9ybSAud3JhcHBlciAuZ2VyYW5jZSBmaWVsZHNldCB7XG4gICAgcGFkZGluZy1ib3R0b206IDRyZW07IH1cbiAgLmZsYXQtZm9ybS5uby1maWVsZHNldHMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM4YThhOGE7XG4gICAgYm9yZGVyOiAwOyB9XG5cbi5maWVsZHNldFNlYXJjaCB7XG4gIGJvcmRlcjogMDtcbiAgcGFkZGluZzogMDsgfVxuICAuZmllbGRzZXRTZWFyY2ggbGVnZW5kIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG5cbi8qXG4gKiBcbiAqIFBhZ2luYXRpb25cbiAqIFxuICovXG51bC5wYWdpbmF0aW9uIHtcbiAgYm9yZGVyLXRvcDogNHB4ICNFMEUwRTAgc29saWQ7XG4gIG1hcmdpbi10b3A6IDFyZW07XG4gIHBhZGRpbmctdG9wOiAxcmVtO1xuICBmbG9hdDogbGVmdDtcbiAgd2lkdGg6IDEwMCU7XG4gIGNsZWFyOiBib3RoOyB9XG4gIHVsLnBhZ2luYXRpb24gbGkge1xuICAgIGZvbnQtc2l6ZTogMS4zcmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7IH1cbiAgICB1bC5wYWdpbmF0aW9uIGxpIGEsIHVsLnBhZ2luYXRpb24gbGkgc3BhbiB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgYm9yZGVyOiAjOGE4YThhIDFweCBzb2xpZDtcbiAgICAgIGJhY2tncm91bmQ6ICMwYTBhMGE7XG4gICAgICBjb2xvcjogI2Y3ZjdmNztcbiAgICAgIHBhZGRpbmc6IDAuMXJlbSAwLjRyZW07XG4gICAgICBtYXJnaW4tdG9wOiAwLjRyZW07IH1cbiAgICB1bC5wYWdpbmF0aW9uIGxpLmFjdGl2ZSBhLCB1bC5wYWdpbmF0aW9uIGxpLmFjdGl2ZSBzcGFuIHtcbiAgICAgIGJvcmRlcjogIzhhOGE4YSAxcHggc29saWQ7XG4gICAgICBiYWNrZ3JvdW5kOiAjZGQzMzMzO1xuICAgICAgY29sb3I6ICNmN2Y3Zjc7IH1cbiAgICB1bC5wYWdpbmF0aW9uIGxpLmRpc2FibGVkIHtcbiAgICAgIHBhZGRpbmc6IDBweDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTsgfVxuXG4vKlxuICogQ29tbW9uIGFkZG9uc1xuICovXG4qOmZvY3VzIHtcbiAgb3V0bGluZTogMDsgfVxuXG4ucmVsYXRpdmUtcG9zaXRpb24ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cblxuaW1nLmNlbnRlcmVkIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87IH1cblxuaW1nLmV4cGFuZGVkIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bzsgfVxuXG4ucm93LnJvdy1mbHVpZCB7XG4gIG1heC13aWR0aDogMTAwJTsgfVxuICAucm93LnJvdy1mbHVpZCAucm93IHtcbiAgICBtYXJnaW46IGF1dG87XG4gICAgbWF4LXdpZHRoOiA3NXJlbTtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87IH1cbiAgICAucm93LnJvdy1mbHVpZCAucm93OjpiZWZvcmUsIC5yb3cucm93LWZsdWlkIC5yb3c6OmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6ICcgJztcbiAgICAgIGRpc3BsYXk6IHRhYmxlOyB9XG4gICAgLnJvdy5yb3ctZmx1aWQgLnJvdzo6YWZ0ZXIge1xuICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAucm93LnJvdy1mbHVpZCAucm93LnJvdy1mbHVpZCB7XG4gICAgICBtYXgtd2lkdGg6IDEwMCU7IH1cblxuLyogdmVydHNwYWNlIGZvciBhIHRvcCBhbmQgYm90dG9tIG1hcmdpbiovXG4udmVydFNwYWNlIHtcbiAgcGFkZGluZy1ib3R0b206IDFyZW07XG4gIHBhZGRpbmctdG9wOiAxcmVtOyB9XG5cbi52ZXJ0U3BhY2VYMiB7XG4gIHBhZGRpbmctYm90dG9tOiAycmVtO1xuICBwYWRkaW5nLXRvcDogMnJlbTsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5tYXJnaW5Ub3BMYXJnZSB7XG4gICAgbWFyZ2luLXRvcDogMXJlbTsgfSB9XG5cbi5lbXBoYXRpc20ge1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBmb250LXN0eWxlOiBpdGFsaWM7IH1cblxuLmNhcGl0dW5kZXIge1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgfVxuXG4ubGluZVVuZGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC5saW5lVW5kZXI6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGJhY2tncm91bmQ6ICMwMDA7XG4gICAgd2lkdGg6IDNyZW07XG4gICAgaGVpZ2h0OiAzcHg7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogLTAuNXJlbTtcbiAgICBsZWZ0OiA1MCU7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAwJSk7XG4gICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAwJSk7XG4gICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgMCUpO1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAwJSk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgMCUpOyB9XG5cbi51bnBhZGRlZCB7XG4gIHBhZGRpbmc6IDA7IH1cblxuLnVubWFyZ2luIHtcbiAgbWFyZ2luOiAwOyB9XG5cbi5jb2x1bW5zLnVucGFkZGVkIHtcbiAgcGFkZGluZzogMDsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45Mzc1ZW0pIHtcbiAgLmNvbHVtbnMuc21hbGwtdW5wYWRkZWQge1xuICAgIHBhZGRpbmc6IDA7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gIC5jb2x1bW5zLm1lZGl1bS11bnBhZGRlZCB7XG4gICAgcGFkZGluZzogMDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWF4LXdpZHRoOiA3NC45Mzc1ZW0pIHtcbiAgLmNvbHVtbnMubGFyZ2UtdW5wYWRkZWQge1xuICAgIHBhZGRpbmc6IDA7IH0gfVxuXG5ib2R5Lm1vZGFsLW9wZW4ge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBtaW4taGVpZ2h0OiAxMDB2aDsgfVxuXG4ucmVsYXRpdmUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cblxuLnVubWFyZ2VkIHtcbiAgbWFyZ2luOiAwOyB9XG5cbi8qXG4gKiBTdXBwbGVtZW50YXJ5IGRpdmlkZXIgY2xhc3Nlc1xuICovXG4ucm93LmRpdmlkZXIge1xuICBtYXJnaW4tYm90dG9tOiAwLjYyNXJlbTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLnJvdy5kaXZpZGVyIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDEuODc1cmVtOyB9IH1cblxuLmNvbHVtbnMuZGl2aWRlciB7XG4gIG1hcmdpbi1ib3R0b206IDAuMzEyNXJlbTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmNvbHVtbnMuZGl2aWRlciB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwOyB9IH1cblxuaW1nLmRpdmlkZXIge1xuICBtYXJnaW4tYm90dG9tOiAxcmVtOyB9XG5cbi8qXG4gKiBWaXN1YWxseSB0cmFuc2Zvcm0gYSBkcm9wZG93biBidXR0b24gaW4udG8gYSBzZWxlY3QgbGlzdCB3aXRoIHZlcnRpY2FsXG4gKiBzY3JvbGxiYXIuIFRoaXMgaXMgdXNlZnVsIGZvciBsb25nIGxpc3QgaXRlbXMgdGhhdCBjYW4gaW1wYWN0IG9uIHBhZ2Ugc2l6ZVxuICovXG4uZi1kcm9wZG93bi5vdmVyZmxvdyB7XG4gIG92ZXJmbG93OiBhdXRvO1xuICBoZWlnaHQ6IDIwMHB4OyB9XG4gIC5mLWRyb3Bkb3duLm92ZXJmbG93Lm92ZXJmbG93LTEwMCB7XG4gICAgaGVpZ2h0OiAxMDBweDsgfVxuICAuZi1kcm9wZG93bi5vdmVyZmxvdy5vdmVyZmxvdy0xNTAge1xuICAgIGhlaWdodDogMTUwcHg7IH1cbiAgLmYtZHJvcGRvd24ub3ZlcmZsb3cub3ZlcmZsb3ctMjAwIHtcbiAgICBoZWlnaHQ6IDIwMHB4OyB9XG4gIC5mLWRyb3Bkb3duLm92ZXJmbG93Lm92ZXJmbG93LTI1MCB7XG4gICAgaGVpZ2h0OiAyNTBweDsgfVxuICAuZi1kcm9wZG93bi5vdmVyZmxvdy5vdmVyZmxvdy0zMDAge1xuICAgIGhlaWdodDogMzAwcHg7IH1cblxuLnNtYWxscm91bmRlZCB7XG4gIGJvcmRlci1yYWRpdXM6IDZweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgei1pbmRleDogMDsgfVxuXG4uY2VudGVyYWJzIHtcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IDUwJTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTsgfVxuXG4uYm90dG9tUmlnaHRhYnMge1xuICBib3R0b206IDAlO1xuICByaWdodDogMCU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTsgfVxuXG4uYm90dG9tYWJzIHtcbiAgYm90dG9tOiAwJTtcbiAgbGVmdDogMCU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTsgfVxuXG4ubWFyZ2luIHtcbiAgbWFyZ2luOiAxLjVyZW07IH1cblxuLnJvdW5kIHtcbiAgYm9yZGVyLXJhZGl1czogNTAwcHg7IH1cblxuLmJ1dHRvbi5ibGFja2J1dHRvbiB7XG4gIGJhY2tncm91bmQ6ICMwYTBhMGE7IH1cbiAgLmJ1dHRvbi5ibGFja2J1dHRvbmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kOiAjZGQzMzMzOyB9XG5cbi5pcy1hY3RpdmUge1xuICBiYWNrZ3JvdW5kOiAjREREOyB9XG5cbi5pbnB1dC1ncm91cCAuc3RhcnQsIC5pbnB1dC1ncm91cCAuZW5kIHtcbiAgd2lkdGg6IDQ4JTtcbiAgZmxvYXQ6IGxlZnQ7IH1cblxuLmlucHV0LWdyb3VwIC5pbnB1dC1ncm91cC1hZGRvbiB7XG4gIHdpZHRoOiBhdXRvO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGZsb2F0OiBsZWZ0O1xuICB3aGl0ZS1zcGFjZTogbm93cmFwOyB9XG5cbi5ib3gge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogMDtcbiAgb3BhY2l0eTogMTtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHBhZGRpbmc6IDYwcHggNTBweCA0MHB4IDUwcHg7XG4gIHdpZHRoOiAxMDAlO1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIC1tcy10cmFuc2Zvcm06IHNjYWxlKDEpO1xuICB6LWluZGV4OiA1OyB9XG4gIC5ib3guYmFjayB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwLjk1KTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMC45NSk7XG4gICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMC45NSk7XG4gICAgdG9wOiAtMjBweDtcbiAgICBvcGFjaXR5OiAuODtcbiAgICB6LWluZGV4OiAtMTsgfVxuICAuYm94OmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDMwcHg7XG4gICAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAtMTBweDtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNik7XG4gICAgbGVmdDogMDtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDAuOTUpO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwLjk1KTtcbiAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgwLjk1KTtcbiAgICB6LWluZGV4OiAtMTsgfVxuXG4ub3ZlcmJveCAudGl0bGUge1xuICBjb2xvcjogI2ZmZjsgfVxuICAub3ZlcmJveCAudGl0bGU6YmVmb3JlIHtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmOyB9XG5cbi5tYXRlcmlhbENvbnRhaW5lciAudGl0bGUge1xuICB3aWR0aDogMTAwJTtcbiAgZmxvYXQ6IGxlZnQ7XG4gIGxpbmUtaGVpZ2h0OiA0NnB4O1xuICBmb250LXNpemU6IDM0cHg7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGxldHRlci1zcGFjaW5nOiAycHg7XG4gIGNvbG9yOiAjRUQyNTUzO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLm1hdGVyaWFsQ29udGFpbmVyIC50aXRsZTpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgd2lkdGg6IDVweDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAtNTBweDtcbiAgICBiYWNrZ3JvdW5kOiAjRUQyNTUzOyB9XG5cbi5tYXRlcmlhbENvbnRhaW5lciAuaW5wdXQge1xuICB0cmFuc2l0aW9uOiAzMDBtcyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIsIDEpO1xuICAtd2Via2l0LXRyYW5zaXRpb246IDMwMG1zIGN1YmljLWJlemllcigwLjQsIDAsIDAuMiwgMSk7XG4gIC1tcy10cmFuc2l0aW9uOiAzMDBtcyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIsIDEpOyB9XG4gIC5tYXRlcmlhbENvbnRhaW5lciAuaW5wdXQgbGFiZWwsIC5tYXRlcmlhbENvbnRhaW5lciAuaW5wdXQgaW5wdXQsIC5tYXRlcmlhbENvbnRhaW5lciAuaW5wdXQgLnNwaW4ge1xuICAgIHRyYW5zaXRpb246IDMwMG1zIGN1YmljLWJlemllcigwLjQsIDAsIDAuMiwgMSk7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiAzMDBtcyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIsIDEpO1xuICAgIC1tcy10cmFuc2l0aW9uOiAzMDBtcyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIsIDEpOyB9XG5cbi5tYXRlcmlhbENvbnRhaW5lciAuYnV0dG9uIHtcbiAgdHJhbnNpdGlvbjogMzAwbXMgY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC4yLCAxKTtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiAzMDBtcyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIsIDEpO1xuICAtbXMtdHJhbnNpdGlvbjogMzAwbXMgY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC4yLCAxKTsgfVxuICAubWF0ZXJpYWxDb250YWluZXIgLmJ1dHRvbiBidXR0b24gLmJ1dHRvbi5sb2dpbiBidXR0b24gaS5mYSB7XG4gICAgdHJhbnNpdGlvbjogMzAwbXMgY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC4yLCAxKTtcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IDMwMG1zIGN1YmljLWJlemllcigwLjQsIDAsIDAuMiwgMSk7XG4gICAgLW1zLXRyYW5zaXRpb246IDMwMG1zIGN1YmljLWJlemllcigwLjQsIDAsIDAuMiwgMSk7IH1cblxuLm1hdGVyaWFsQ29udGFpbmVyIC5tYXRlcmlhbC1idXR0b24gLnNoYXBlOmJlZm9yZSwgLm1hdGVyaWFsQ29udGFpbmVyIC5tYXRlcmlhbC1idXR0b24gLnNoYXBlOmFmdGVyIHtcbiAgdHJhbnNpdGlvbjogMzAwbXMgY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC4yLCAxKTtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiAzMDBtcyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIsIDEpO1xuICAtbXMtdHJhbnNpdGlvbjogMzAwbXMgY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC4yLCAxKTsgfVxuXG4ubWF0ZXJpYWxDb250YWluZXIgLmJ1dHRvbi5sb2dpbiBidXR0b24ge1xuICB0cmFuc2l0aW9uOiAzMDBtcyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIsIDEpO1xuICAtd2Via2l0LXRyYW5zaXRpb246IDMwMG1zIGN1YmljLWJlemllcigwLjQsIDAsIDAuMiwgMSk7XG4gIC1tcy10cmFuc2l0aW9uOiAzMDBtcyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIsIDEpOyB9XG5cbi5tYXRlcmlhbC1idXR0b24sIC5hbHQtMiwgLm1hdGVyaWFsLWJ1dHRvbiAuc2hhcGUsIC5hbHQtMiAuc2hhcGUsIC5ib3gge1xuICB0cmFuc2l0aW9uOiA0MDBtcyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIsIDEpO1xuICAtd2Via2l0LXRyYW5zaXRpb246IDQwMG1zIGN1YmljLWJlemllcigwLjQsIDAsIDAuMiwgMSk7XG4gIC1tcy10cmFuc2l0aW9uOiA0MDBtcyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIsIDEpOyB9XG5cbi5tYXRlcmlhbENvbnRhaW5lciBpbnB1dDotd2Via2l0LWF1dG9maWxsIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y3ZjdmNyAhaW1wb3J0YW50OyB9XG5cbi5tYXRlcmlhbENvbnRhaW5lciAuaW5wdXQge1xuICB3aWR0aDogMTAwJTtcbiAgZmxvYXQ6IGxlZnQ7IH1cbiAgLm1hdGVyaWFsQ29udGFpbmVyIC5pbnB1dCBsYWJlbCwgLm1hdGVyaWFsQ29udGFpbmVyIC5pbnB1dCBpbnB1dCwgLm1hdGVyaWFsQ29udGFpbmVyIC5pbnB1dCAuc3BpbiB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZmxvYXQ6IGxlZnQ7IH1cbiAgICAubWF0ZXJpYWxDb250YWluZXIgLmlucHV0IGxhYmVsOi13ZWJraXQtYXV0b2ZpbGwsIC5tYXRlcmlhbENvbnRhaW5lciAuaW5wdXQgaW5wdXQ6LXdlYmtpdC1hdXRvZmlsbCwgLm1hdGVyaWFsQ29udGFpbmVyIC5pbnB1dCAuc3Bpbjotd2Via2l0LWF1dG9maWxsIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDA7IH1cblxuLm1hdGVyaWFsQ29udGFpbmVyIC5idXR0b24ge1xuICB3aWR0aDogMTAwJTtcbiAgZmxvYXQ6IGxlZnQ7IH1cbiAgLm1hdGVyaWFsQ29udGFpbmVyIC5idXR0b24gYnV0dG9uIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBmbG9hdDogbGVmdDsgfVxuXG4ubWF0ZXJpYWxDb250YWluZXIgLmlucHV0LCAubWF0ZXJpYWxDb250YWluZXIgLmJ1dHRvbiB7XG4gIG1hcmdpbi10b3A6IDMwcHg7XG4gIGhlaWdodDogYXV0bzsgfVxuXG4ubWF0ZXJpYWxDb250YWluZXIgLmlucHV0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC5tYXRlcmlhbENvbnRhaW5lciAuaW5wdXQgaW5wdXQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG4ubWF0ZXJpYWxDb250YWluZXIgLmJ1dHRvbiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAubWF0ZXJpYWxDb250YWluZXIgLmJ1dHRvbiBidXR0b24ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG4ubWF0ZXJpYWxDb250YWluZXIgLmlucHV0IGlucHV0IHtcbiAgaGVpZ2h0OiA2MHB4O1xuICB0b3A6IDEwcHg7XG4gIGJvcmRlcjogbm9uZTtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGZvbnQtc2l6ZTogMjRweDtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44KTtcbiAgZm9udC13ZWlnaHQ6IDMwMDsgfVxuXG4ubWF0ZXJpYWxDb250YWluZXIgLmlucHV0IGlucHV0W3R5cGU9XCJ0ZXh0XCJdLCAubWF0ZXJpYWxDb250YWluZXIgLmlucHV0IGlucHV0W3R5cGU9XCJwYXNzd29yZFwiXSB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIHJnYmEoMCwgMCwgMCwgMCk7IH1cbiAgLm1hdGVyaWFsQ29udGFpbmVyIC5pbnB1dCBpbnB1dFt0eXBlPVwidGV4dFwiXTpmb2N1cywgLm1hdGVyaWFsQ29udGFpbmVyIC5pbnB1dCBpbnB1dFt0eXBlPVwicGFzc3dvcmRcIl06Zm9jdXMge1xuICAgIGJvcmRlcjogMDtcbiAgICBib3gtc2hhZG93OiAwIDAgMCByZ2JhKDAsIDAsIDAsIDApOyB9XG5cbi5tYXRlcmlhbENvbnRhaW5lciAuaW5wdXQgbGFiZWwge1xuICBmb250LXNpemU6IDI0cHg7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOCk7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7IH1cblxuLm1hdGVyaWFsQ29udGFpbmVyIC5idXR0b24gYnV0dG9uIHtcbiAgcGFkZGluZzogMDtcbiAgZm9udC1zaXplOiAyNHB4O1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjgpO1xuICBmb250LXdlaWdodDogMzAwOyB9XG5cbi5tYXRlcmlhbENvbnRhaW5lciAuaW5wdXQ6YmVmb3JlLCAubWF0ZXJpYWxDb250YWluZXIgLmlucHV0IC5zcGluIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMXB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDsgfVxuXG4ubWF0ZXJpYWxDb250YWluZXIgLmlucHV0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgei1pbmRleDogMzsgfVxuXG4ubWF0ZXJpYWxDb250YWluZXIgLmlucHV0IC5zcGluIHtcbiAgYmFja2dyb3VuZDogI0VEMjU1MztcbiAgei1pbmRleDogNDtcbiAgd2lkdGg6IDA7IH1cblxuLm92ZXJib3ggLmlucHV0IC5zcGluIHtcbiAgYmFja2dyb3VuZDogd2hpdGU7IH1cblxuLm92ZXJib3ggLmlucHV0OmJlZm9yZSB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTsgfVxuXG4ubWF0ZXJpYWxDb250YWluZXIgLmlucHV0IGxhYmVsIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDEwcHg7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IDI7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgbGluZS1oZWlnaHQ6IDYwcHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGRkY7IH1cblxuLm1hdGVyaWFsQ29udGFpbmVyIC5idXR0b24ge1xuICBtYXJnaW4tdG9wOiAyMHB4O1xuICBtYXJnaW46IDQwcHggMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgei1pbmRleDogMjsgfVxuICAubWF0ZXJpYWxDb250YWluZXIgLmJ1dHRvbi5sb2dpbiB7XG4gICAgd2lkdGg6IDYwJTtcbiAgICBsZWZ0OiAyMCU7XG4gICAgcGFkZGluZzogMDsgfVxuICAgIC5tYXRlcmlhbENvbnRhaW5lciAuYnV0dG9uLmxvZ2luIGJ1dHRvbiB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGxpbmUtaGVpZ2h0OiA2NHB4O1xuICAgICAgbGVmdDogMCU7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlcjogM3B4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA5MDA7XG4gICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjIpOyB9XG4gIC5tYXRlcmlhbENvbnRhaW5lciAuYnV0dG9uIGJ1dHRvbiB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbGluZS1oZWlnaHQ6IDY0cHg7XG4gICAgbGVmdDogMCU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyOiAzcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjEpO1xuICAgIGZvbnQtd2VpZ2h0OiA5MDA7XG4gICAgZm9udC1zaXplOiAxOHB4O1xuICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMik7IH1cbiAgLm1hdGVyaWFsQ29udGFpbmVyIC5idXR0b24ubG9naW4ge1xuICAgIG1hcmdpbi10b3A6IDMwcHg7IH1cbiAgLm1hdGVyaWFsQ29udGFpbmVyIC5idXR0b24gYnV0dG9uIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgIGNvbG9yOiAjRUQyNTUzO1xuICAgIGJvcmRlcjogbm9uZTsgfVxuICAubWF0ZXJpYWxDb250YWluZXIgLmJ1dHRvbi5sb2dpbiBidXR0b24uYWN0aXZlIHtcbiAgICBib3JkZXI6IDNweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50OyB9XG4gICAgLm1hdGVyaWFsQ29udGFpbmVyIC5idXR0b24ubG9naW4gYnV0dG9uLmFjdGl2ZSBzcGFuIHtcbiAgICAgIG9wYWNpdHk6IDA7XG4gICAgICB0cmFuc2Zvcm06IHNjYWxlKDApO1xuICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDApO1xuICAgICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMCk7IH1cbiAgICAubWF0ZXJpYWxDb250YWluZXIgLmJ1dHRvbi5sb2dpbiBidXR0b24uYWN0aXZlIGkuZmEge1xuICAgICAgb3BhY2l0eTogMTtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSkgcm90YXRlKDBkZWcpO1xuICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpIHJvdGF0ZSgwZGVnKTtcbiAgICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlKDEpIHJvdGF0ZSgwZGVnKTsgfVxuICAubWF0ZXJpYWxDb250YWluZXIgLmJ1dHRvbi5sb2dpbiBidXR0b24gaS5mYSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICBsaW5lLWhlaWdodDogNjBweDtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDApIHJvdGF0ZSgtNDVkZWcpO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwKSByb3RhdGUoLTQ1ZGVnKTtcbiAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgwKSByb3RhdGUoLTQ1ZGVnKTsgfVxuICAubWF0ZXJpYWxDb250YWluZXIgLmJ1dHRvbi5sb2dpbiBidXR0b246aG92ZXIge1xuICAgIGNvbG9yOiAjRUQyNTUzO1xuICAgIGJvcmRlci1jb2xvcjogI0VEMjU1MzsgfVxuICAubWF0ZXJpYWxDb250YWluZXIgLmJ1dHRvbiBidXR0b24ge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMjsgfVxuXG4ucGFzcy1mb3Jnb3Qge1xuICB3aWR0aDogMTAwJTtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC40KTtcbiAgZm9udC1zaXplOiAxNHB4OyB9XG5cbi5jbGljay1lZmVjdCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICBiYWNrZ3JvdW5kOiAjRUQyNTUzO1xuICBib3JkZXItcmFkaXVzOiA1MCU7IH1cblxuLm92ZXJib3gge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgb3ZlcmZsb3c6IGluaGVyaXQ7XG4gIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gIHBhZGRpbmc6IDYwcHggNTBweCA0MHB4IDUwcHg7IH1cbiAgLm92ZXJib3ggLnRpdGxlLCAub3ZlcmJveCAuYnV0dG9uLCAub3ZlcmJveCAuaW5wdXQge1xuICAgIHotaW5kZXg6IDExMTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIC5vdmVyYm94IC50aXRsZSB7XG4gICAgd2lkdGg6IDgwJTsgfVxuICAub3ZlcmJveCAuaW5wdXQge1xuICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgYm9yZGVyOiAwO1xuICAgIGJveC1zaGFkb3c6IDAgMCAwIHJnYmEoMCwgMCwgMCwgMCk7IH1cbiAgICAub3ZlcmJveCAuaW5wdXQ6Zm9jdXMge1xuICAgICAgYm9yZGVyOiAwO1xuICAgICAgYm94LXNoYWRvdzogMCAwIDAgcmdiYSgwLCAwLCAwLCAwKTsgfVxuICAgIC5vdmVyYm94IC5pbnB1dCBsYWJlbCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGQzMzMzOyB9XG4gICAgLm92ZXJib3ggLmlucHV0IGlucHV0LCAub3ZlcmJveCAuaW5wdXQgbGFiZWwge1xuICAgICAgY29sb3I6ICNmN2Y3Zjc7IH1cbiAgLm92ZXJib3ggLm1hdGVyaWFsLWJ1dHRvbiwgLm92ZXJib3ggLmFsdC0yIHtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuICAgIC5vdmVyYm94IC5tYXRlcmlhbC1idXR0b24gLnNoYXBlLCAub3ZlcmJveCAuYWx0LTIgLnNoYXBlIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi5tYXRlcmlhbC1idXR0b24sIC5hbHQtMiB7XG4gIHdpZHRoOiAxMDBweDtcbiAgaGVpZ2h0OiAxMDBweDtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBiYWNrZ3JvdW5kOiAjRUQyNTUzO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNDBweDtcbiAgcmlnaHQ6IC00MHB4O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHotaW5kZXg6IDEwMDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCUsIDAlKTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwJSwgMCUpO1xuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCUsIDAlKTsgfVxuICAubWF0ZXJpYWwtYnV0dG9uIC5zaGFwZSwgLmFsdC0yIC5zaGFwZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7IH1cbiAgICAubWF0ZXJpYWwtYnV0dG9uIC5zaGFwZTpiZWZvcmUsIC5tYXRlcmlhbC1idXR0b24gLnNoYXBlOmFmdGVyLCAuYWx0LTIgLnNoYXBlOmJlZm9yZSwgLmFsdC0yIC5zaGFwZTphZnRlciB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgbGVmdDogNTAlO1xuICAgICAgd2lkdGg6IDI1cHg7XG4gICAgICBoZWlnaHQ6IDRweDtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpIHJvdGF0ZSgzNjBkZWcpO1xuICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKSByb3RhdGUoMzYwZGVnKTtcbiAgICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKSByb3RhdGUoMzYwZGVnKTsgfVxuICAgIC5tYXRlcmlhbC1idXR0b24gLnNoYXBlOmJlZm9yZSwgLmFsdC0yIC5zaGFwZTpiZWZvcmUge1xuICAgICAgd2lkdGg6IDI1cHg7XG4gICAgICBoZWlnaHQ6IDRweDsgfVxuICAgIC5tYXRlcmlhbC1idXR0b24gLnNoYXBlOmFmdGVyLCAuYWx0LTIgLnNoYXBlOmFmdGVyIHtcbiAgICAgIHdpZHRoOiA0cHg7XG4gICAgICBoZWlnaHQ6IDI1cHg7IH1cbiAgLm1hdGVyaWFsLWJ1dHRvbi5hY3RpdmUsIC5hbHQtMi5hY3RpdmUge1xuICAgIHRvcDogNTAlO1xuICAgIHJpZ2h0OiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoNTAlLCAtNTAlKSByb3RhdGUoMGRlZyk7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSg1MCUsIC01MCUpIHJvdGF0ZSgwZGVnKTtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUoNTAlLCAtNTAlKSByb3RhdGUoMGRlZyk7IH1cblxuLm1hdGVyaWFsQ29udGFpbmVyIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogNDYwcHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTsgfVxuXG4ucmV2ZWFsLW1vZGFsIC5jbG9zZS1yZXZlYWwtbW9kYWwge1xuICBjb2xvcjogI2RkMzMzMztcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBmb250LXNpemU6IDIuNXJlbTtcbiAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IC0xLjYyNXJlbTtcbiAgcmlnaHQ6IC0xLjM3NXJlbTtcbiAgYmFja2dyb3VuZDogI2Y3ZjdmNztcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAzcmVtO1xuICBoZWlnaHQ6IDNyZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYm9yZGVyLXJhZGl1czogNTAwcHg7XG4gIGxpbmUtaGVpZ2h0OiAyLjZyZW07IH1cblxuLmNsb3NlLXJldmVhbC1tb2RhbCB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLmNsZWFyIHtcbiAgY2xlYXI6IGJvdGg7IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzQuOTM3NWVtKSB7XG4gIC51bnBhZGRlZC1zbWFsbCB7XG4gICAgcGFkZGluZzogMDsgfSB9XG5cbltkYXRhLWxpbmtdOmhvdmVyIHtcbiAgY3Vyc29yOiBwb2ludGVyOyB9XG5cbi5jaXJjbGUtaWNvbiB7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTtcbiAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiA1MCU7XG4gIC1tb3otYm9yZGVyLXJhZGl1czogNTAlO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIHBhZGRpbmc6IDRweDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogNHB4O1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuODIpO1xuICB3aWR0aDogNHJlbTtcbiAgaGVpZ2h0OiA0cmVtOyB9XG4gIC5jaXJjbGUtaWNvbjpiZWZvcmUge1xuICAgIGxpbmUtaGVpZ2h0OiAzLjRyZW07IH1cblxuLmNpcmNsZS1zb2NpYWwge1xuICBib3JkZXI6IDJweCBzb2xpZCAjMDAwO1xuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDUwJTtcbiAgLW1vei1ib3JkZXItcmFkaXVzOiA1MCU7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgcGFkZGluZzogNHB4O1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiA0cHg7XG4gIGNvbG9yOiAjMDAwOyB9XG5cbi5idXR0b24uZnVsbCB7XG4gIHdpZHRoOiAtbW96LWNhbGMoMTAwJSAtIDNweCk7XG4gIHdpZHRoOiAtd2Via2l0LWNhbGMoMTAwJSAtIDNweCk7XG4gIHdpZHRoOiBjYWxjKDEwMCUgLSAzcHgpO1xuICBtYXJnaW46IDFweDtcbiAgbWFyZ2luLWJvdHRvbTogMnB4OyB9XG5cbiNsYW5nQ2hvb3NlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAjbGFuZ0Nob29zZXIgYSB7XG4gICAgcGFkZGluZy1sZWZ0OiAycmVtO1xuICAgIHBhZGRpbmctcmlnaHQ6IDFyZW07IH1cbiAgICAjbGFuZ0Nob29zZXIgYTpiZWZvcmUge1xuICAgICAgdG9wOiAtMnB4O1xuICAgICAgbGVmdDogMnB4OyB9XG4gICNsYW5nQ2hvb3NlciAuc2hvd2luVVAge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgei1pbmRleDogLTEwO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogMTAwJTtcbiAgICBib3JkZXItYm90dG9tOiAwO1xuICAgIGJvcmRlci1sZWZ0OiAwOyB9XG4gICAgI2xhbmdDaG9vc2VyIC5zaG93aW5VUCBhIHtcbiAgICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgI2xhbmdDaG9vc2VyIC5zaG93aW5VUCAucmFuZ2Utc2xpZGVyLnZlcnRpY2FsLXJhbmdlIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGxlZnQ6IDUwJTsgfVxuICAgICNsYW5nQ2hvb3NlciAuc2hvd2luVVAgLnJhbmdlLXNsaWRlci1oYW5kbGUsICNsYW5nQ2hvb3NlciAuc2hvd2luVVAgLnJhbmdlLXNsaWRlci1oYW5kbGU6aG92ZXIge1xuICAgICAgaGVpZ2h0OiAxLjlyZW07XG4gICAgICB3aWR0aDogMS45cmVtO1xuICAgICAgYm9yZGVyLXJhZGl1czogMS45cmVtOyB9XG4gICAgI2xhbmdDaG9vc2VyIC5zaG93aW5VUCAucmFuZ2Utc2xpZGVyLWFjdGl2ZS1zZWdtZW50LCAjbGFuZ0Nob29zZXIgLnNob3dpblVQIC5yYW5nZS1zbGlkZXIudmVydGljYWwtcmFuZ2Uge1xuICAgICAgYm9yZGVyLXJhZGl1czogMnJlbTsgfVxuICAjbGFuZ0Nob29zZXI6aG92ZXIgLnNob3dpblVQIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHotaW5kZXg6IDE7IH1cblxuLmZ1bGwtd2lkdGgge1xuICBtYXgtd2lkdGg6IDEwMCU7IH1cblxuLm9uZ2xldHMge1xuICBtYXJnaW46IDA7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgYmFja2dyb3VuZDogI2Y3ZjdmNztcbiAgYm9yZGVyOiAxcHggc29saWQgI0UwRTBFMDtcbiAgYm9yZGVyOiBub25lO1xuICBiYWNrZ3JvdW5kOiAjNTc1NzU3OyB9XG4gIC5vbmdsZXRzOjpiZWZvcmUsIC5vbmdsZXRzOjphZnRlciB7XG4gICAgY29udGVudDogJyAnO1xuICAgIGRpc3BsYXk6IHRhYmxlOyB9XG4gIC5vbmdsZXRzOjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgLm9uZ2xldHMgLnRhYiB7XG4gICAgcGFkZGluZzogMC4ycmVtIDFyZW07XG4gICAgYmFja2dyb3VuZDogIzhhOGE4YSwgMjAlO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIGNvbG9yOiAjZjdmN2Y3OyB9XG4gICAgLm9uZ2xldHMgLnRhYiA+IGEge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBwYWRkaW5nOiAxLjI1cmVtIDEuNXJlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgZm9udC1zaXplOiAwLjc1cmVtOyB9XG4gICAgICAub25nbGV0cyAudGFiID4gYTpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQ6ICNmN2Y3Zjc7IH1cbiAgICAgIC5vbmdsZXRzIC50YWIgPiBhOmZvY3VzLCAub25nbGV0cyAudGFiID4gYVthcmlhLXNlbGVjdGVkPSd0cnVlJ10ge1xuICAgICAgICBiYWNrZ3JvdW5kOiAjRTBFMEUwOyB9XG4gICAgLm9uZ2xldHMgLnRhYi5zZWxlY3Rpb25uZWQge1xuICAgICAgYmFja2dyb3VuZDogI2Y3ZjdmNztcbiAgICAgIGNvbG9yOiAjMGEwYTBhOyB9XG4gICAgICAub25nbGV0cyAudGFiLnNlbGVjdGlvbm5lZDpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQ6ICNmN2Y3Zjc7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjsgfVxuICAgIC5vbmdsZXRzIC50YWI6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZDogIzBhMGEwYTtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjsgfVxuXG4uaXMtZHJvcGRvd24tc3VibWVudSB7XG4gIHotaW5kZXg6IDEwMDsgfVxuXG4vKiBBdXRvY29tcGxldGVcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLnVpLWF1dG9jb21wbGV0ZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgY3Vyc29yOiBkZWZhdWx0O1xuICB6LWluZGV4OiAyMDsgfVxuXG4udWktYXV0b2NvbXBsZXRlLWxvYWRpbmcge1xuICBiYWNrZ3JvdW5kOiB3aGl0ZSB1cmwoXCJpbWFnZXMvdWktYW5pbV9iYXNpY18xNngxNi5naWZcIikgcmlnaHQgY2VudGVyIG5vLXJlcGVhdDsgfVxuXG4udWktaGVscGVyLWhpZGRlbi1hY2Nlc3NpYmxlIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4vKiB3b3JrYXJvdW5kcyAqL1xuKiBodG1sIC51aS1hdXRvY29tcGxldGUge1xuICB3aWR0aDogMXB4OyB9XG5cbi8qIHdpdGhvdXQgdGhpcywgdGhlIG1lbnUgZXhwYW5kcyB0byAxMDAlIGluIElFNiAqL1xuLyogTWVudVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4udWktbWVudSB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIHBhZGRpbmc6IDEwcHg7XG4gIG1hcmdpbjogMDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiBhdXRvO1xuICBiYWNrZ3JvdW5kOiAjRkRGRUZGO1xuICBib3JkZXI6IDFweCBzb2xpZCAjMGEwYTBhOyB9XG5cbi51aS1tZW51IC51aS1tZW51IHtcbiAgbWFyZ2luLXRvcDogLTNweDsgfVxuXG4udWktbWVudSAudWktbWVudS1pdGVtIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICB3aWR0aDogYXV0bztcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNFMEUwRTA7IH1cbiAgLnVpLW1lbnUgLnVpLW1lbnUtaXRlbTpob3ZlciB7XG4gICAgY29sb3I6ICNkZDMzMzM7IH1cblxuLnVpLW1lbnUgLnVpLW1lbnUtaXRlbSBhIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogLjJlbSAuNGVtO1xuICBsaW5lLWhlaWdodDogMS41O1xuICB6b29tOiAxOyB9XG5cbi51aS1tZW51IC51aS1tZW51LWl0ZW0gYS51aS1zdGF0ZS1ob3Zlcixcbi51aS1tZW51IC51aS1tZW51LWl0ZW0gYS51aS1zdGF0ZS1hY3RpdmUge1xuICBtYXJnaW46IC0xcHg7IH1cblxuLyoqKioqKiByZXN1bHRzICoqKioqKiovXG4ucmVzdWx0cy5tZWRpYS1saXN0IHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tdG9wOiAxcmVtO1xuICBwYWRkaW5nLXRvcDogMXJlbTsgfVxuICAucmVzdWx0cy5tZWRpYS1saXN0IC5tZWRpYSB7XG4gICAgcGFkZGluZzogMC42NHJlbTtcbiAgICBib3JkZXItdG9wOiAxcHggZGFzaGVkICNEREQ7XG4gICAgZGlzcGxheTogZmxleDsgfVxuICAgIC5yZXN1bHRzLm1lZGlhLWxpc3QgLm1lZGlhIC5maWd1cmUge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwLjY0cmVtOyB9XG4gICAgICAucmVzdWx0cy5tZWRpYS1saXN0IC5tZWRpYSAuZmlndXJlIGltZyB7XG4gICAgICAgIG1pbi13aWR0aDogMjQwcHg7IH1cblxuI2dsb2JhbC1hc2lkZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG5kaXYudGFibGUtY29udGFpbmVyIHtcbiAgd2lkdGg6IDEwMCU7IH1cblxuLmxpYnJhcnkgLmhlYWRlciB7XG4gIG1hcmdpbjogMTVweCAwOyB9XG5cbi5saWJyYXJ5IC50aHVtYm5haWxzIGltZyB7XG4gIG1hcmdpbjogMTBweCAwOyB9XG5cbi5saWJyYXJ5IC5tZW51LXRodW1ibmFpbHMge1xuICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG5cbi5yZWFkZXIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBhZGRpbmctdG9wOiAycmVtO1xuICBwYWRkaW5nLWJvdHRvbTogMnJlbTsgfVxuICAucmVhZGVyIC5idG4tZ3JvdXAge1xuICAgIG1hcmdpbi1ib3R0b206IDVweDsgfVxuICAgIC5yZWFkZXIgLmJ0bi1ncm91cC5tb3JlRm9yaW1nIC5idXR0b24ge1xuICAgICAgZm9udC1zaXplOiAxLjhyZW07XG4gICAgICBwYWRkaW5nOiAwLjRyZW07IH1cbiAgICAgIC5yZWFkZXIgLmJ0bi1ncm91cC5tb3JlRm9yaW1nIC5idXR0b24uem9vbSB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMDsgfVxuICAucmVhZGVyIC5yb3cge1xuICAgIG1hcmdpbjogMDsgfVxuICAgIC5yZWFkZXIgLnJvdyAucHJldiwgLnJlYWRlciAucm93IC5uZXh0LCAucmVhZGVyIC5yb3cgLnNwaW5uZXItY29udGFpbmVyLCAucmVhZGVyIC5yb3cgLmltZy1jb250YWluZXIge1xuICAgICAgaGVpZ2h0OiA4MDBweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiA4MDBweDtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IH1cbiAgICAucmVhZGVyIC5yb3cgLm1haW4tY29udGFpbmVyIHtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBiYWNrZ3JvdW5kOiAjMGEwYTBhOyB9XG4gICAgLnJlYWRlciAucm93IC5zcGlubmVyLWNvbnRhaW5lciB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHRleHQtc2hhZG93OiAwIDAgNDBweCB3aGl0ZTtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAucmVhZGVyIC5yb3cgLmltZy1jb250YWluZXIuem9vbWVkIHtcbiAgICAgIG92ZXJmbG93OiBzY3JvbGw7IH1cbiAgICAgIC5yZWFkZXIgLnJvdyAuaW1nLWNvbnRhaW5lci56b29tZWQgaW1nIHtcbiAgICAgICAgbWF4LXdpZHRoOiBub25lO1xuICAgICAgICBtYXgtaGVpZ2h0OiBub25lO1xuICAgICAgICBjdXJzb3I6IHpvb20tb3V0OyB9XG4gICAgICAgIC5yZWFkZXIgLnJvdyAuaW1nLWNvbnRhaW5lci56b29tZWQgaW1nLmRyYWdnZWQge1xuICAgICAgICAgIGN1cnNvcjogbW92ZTsgfVxuICAgIC5yZWFkZXIgLnJvdyAuaW1nLWNvbnRhaW5lciBpbWcge1xuICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgbWF4LWhlaWdodDogMTAwJTtcbiAgICAgIGN1cnNvcjogem9vbS1pbjsgfVxuICAucmVhZGVyIC5wYWdlLWZvcm0ge1xuICAgIHdpZHRoOiAxMDBweDtcbiAgICBtYXJnaW46IDhweCBhdXRvIDJyZW0gLyAyOyB9XG4gICAgLnJlYWRlciAucGFnZS1mb3JtIGlucHV0W25hbWU9J3BhZ2UnXSB7XG4gICAgICB0ZXh0LWFsaWduOiByaWdodDsgfVxuXG4jb2ZmZW5zaXZlLW1vZGFsIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHotaW5kZXg6IDMwO1xuICBjb2xvcjogI2Y3ZjdmNztcbiAgYmFja2dyb3VuZC1jb2xvcjogIzBhMGEwYTsgfVxuICAjb2ZmZW5zaXZlLW1vZGFsIG1haW4ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgICAjb2ZmZW5zaXZlLW1vZGFsIG1haW4gaDEsICNvZmZlbnNpdmUtbW9kYWwgbWFpbiAudGl0bGUtMSwgI29mZmVuc2l2ZS1tb2RhbCBtYWluIHAge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgICAjb2ZmZW5zaXZlLW1vZGFsIG1haW4gaDEgYSwgI29mZmVuc2l2ZS1tb2RhbCBtYWluIC50aXRsZS0xIGEsICNvZmZlbnNpdmUtbW9kYWwgbWFpbiBwIGEge1xuICAgICAgICBwYWRkaW5nOiAycmVtOyB9XG5cbiNudW1iZXJwYWdlIHtcbiAgd2lkdGg6IGF1dG87IH1cbiAgI251bWJlcnBhZ2UgI3BhZ2VfbnVtYmVyIHtcbiAgICB3aWR0aDogOTBweDtcbiAgICBmbG9hdDogbGVmdDsgfVxuICAjbnVtYmVycGFnZSAuaW5wdXQtZ3JvdXAtYWRkb24ge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBmbG9hdDogbGVmdDtcbiAgICBsaW5lLWhlaWdodDogMi40Mzc1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC42cmVtOyB9XG5cbi5pc01vYmlsZSAuaG9tYmFuX3ZpZCB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLmlzTW9iaWxlIC5ob21iYW5faW1nIHtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuLmhvbWJhbl9pbWcge1xuICBtaW4td2lkdGg6IDEwMCU7XG4gIGhlaWdodDogNTB2aDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBub25lOyB9XG4gIC5ob21iYW5faW1nIGltZyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlOyB9XG5cbmRsLmRsLWhvcml6b250YWwge1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIGZsb2F0OiBsZWZ0OyB9XG4gIGRsLmRsLWhvcml6b250YWwgZHQge1xuICAgIG1hcmdpbi1ib3R0b206IDAuM3JlbTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBjbGVhcjogbGVmdDtcbiAgICBjb2xvcjogIzY2NjtcbiAgICB3aWR0aDogMTJyZW07IH1cbiAgICBkbC5kbC1ob3Jpem9udGFsIGR0OmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6ICcgOiAnOyB9XG4gIGRsLmRsLWhvcml6b250YWwgZGQge1xuICAgIG1hcmdpbi1ib3R0b206IDAuM3JlbTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBtYXJnaW4tbGVmdDogMC40cmVtO1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAxNXJlbSk7IH1cblxuZGwuZGwtaG9yaXpvbnRhbC10aWdodCB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgZmxvYXQ6IGxlZnQ7IH1cbiAgZGwuZGwtaG9yaXpvbnRhbC10aWdodCBkdCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMC4zcmVtO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIGNsZWFyOiBsZWZ0O1xuICAgIGNvbG9yOiAjNjY2O1xuICAgIHdpZHRoOiA4cmVtOyB9XG4gICAgZGwuZGwtaG9yaXpvbnRhbC10aWdodCBkdDphZnRlciB7XG4gICAgICBjb250ZW50OiAnIDogJzsgfVxuICBkbC5kbC1ob3Jpem9udGFsLXRpZ2h0IGRkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjNyZW07XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgbWFyZ2luLWxlZnQ6IDAuNHJlbTtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gMTVyZW0pOyB9XG5cbi8qXG4gKlxuICogQWxsIHN0dWZmIGZvciBmb290ZXJcbiAqXG4gKi9cbi5mb290ZXIge1xuICBmbG9hdDogbGVmdDtcbiAgbWFyZ2luOiAxcmVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRUNFQ0VGO1xuICBwYWRkaW5nOiAycmVtIDFyZW07XG4gIHRleHQtYWxpZ246IGxlZnQ7IH1cbiAgLmZvb3RlciBpIHtcbiAgICBmb250LXNpemU6IDEwMHB4OyB9XG5cbi5mb290ZXIgcCwgLmZvb3RlciBhIHtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgZm9udC1zaXplOiAuOGVtOyB9XG5cbi5mb290ZXIgaDU6YmVmb3JlLCAuZm9vdGVyIC5yc3QgaDQ6YmVmb3JlLCAucnN0IC5mb290ZXIgaDQ6YmVmb3JlLCAuZm9vdGVyIC5yc3QgaDM6YmVmb3JlLCAucnN0IC5mb290ZXIgaDM6YmVmb3JlLCAuZm9vdGVyIC5yc3QgLmgzOmJlZm9yZSwgLnJzdCAuZm9vdGVyIC5oMzpiZWZvcmUsIC5mb290ZXIgLnJzdCBoMjpiZWZvcmUsIC5yc3QgLmZvb3RlciBoMjpiZWZvcmUsIC5mb290ZXIgLnJzdCBoMTpiZWZvcmUsIC5yc3QgLmZvb3RlciBoMTpiZWZvcmUsIC5mb290ZXIgLnJzdCAudGl0bGUtMTpiZWZvcmUsIC5yc3QgLmZvb3RlciAudGl0bGUtMTpiZWZvcmUsIC5mb290ZXIgLnJzdCAudGl0bGUtMjpiZWZvcmUsIC5yc3QgLmZvb3RlciAudGl0bGUtMjpiZWZvcmUsIC5mb290ZXIgLnJzdCAudGl0bGUtMzpiZWZvcmUsIC5yc3QgLmZvb3RlciAudGl0bGUtMzpiZWZvcmUsIC5mb290ZXIgLnJzdCAudGl0bGUtNDpiZWZvcmUsIC5yc3QgLmZvb3RlciAudGl0bGUtNDpiZWZvcmUsIC5mb290ZXIgLnRpdGxlLTU6YmVmb3JlIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4uZm9vdGVyLWxpbmtzIHtcbiAgbWFyZ2luLWxlZnQ6IDAuMjVyZW07XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTsgfVxuICAuZm9vdGVyLWxpbmtzIGxpIHtcbiAgICBtYXJnaW4tdG9wOiAuMWVtOyB9XG4gICAgLmZvb3Rlci1saW5rcyBsaSBhIHtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cblxuLnByZWZvb3RlciBhOmhvdmVyIHtcbiAgY29sb3I6ICNmN2Y3ZjcgIWltcG9ydGFudDsgfVxuXG4jcHJlZm9vdGVyIHtcbiAgbWl4LWJsZW5kLW1vZGU6IG11bHRpcGx5O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGJhY2tncm91bmQ6ICMwYTBhMGE7IH1cbiAgI3ByZWZvb3RlcjphZnRlciB7XG4gICAgY29udGVudDogaW1hZ2UtdXJsKFwidGhlbWUvcGFwZXIucG5nXCIpO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIG1heC1oZWlnaHQ6IDEwMCU7XG4gICAgei1pbmRleDogLTE7XG4gICAgb3BhY2l0eTogMC40OyB9XG4gICNwcmVmb290ZXIgLmNpcmNsZUljbyArIHAge1xuICAgIGNvbG9yOiAjZjdmN2Y3OyB9XG4gICNwcmVmb290ZXIgI3ByZUZvb3Rlckljb25zIC5jb2x1bW5zIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjZyZW07IH1cbiAgI3ByZWZvb3RlciAjcHJlRm9vdGVySWNvbnMgLm1vcmUgcCB7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICAgIGZvbnQtc3R5bGU6IGl0YWxpYzsgfVxuXG5mb290ZXIgPiAuc2VjdGlvbiB7XG4gIHBhZGRpbmctdG9wOiAxcmVtICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmctYm90dG9tOiAxcmVtICFpbXBvcnRhbnQ7IH1cbiAgZm9vdGVyID4gLnNlY3Rpb24gcCwgZm9vdGVyID4gLnNlY3Rpb24gbGkge1xuICAgIGZvbnQtc2l6ZTogMS4xcmVtOyB9XG5cbmZvb3RlciAuY3JlZGl0cyBwIHtcbiAgbWFyZ2luOiAwO1xuICBmb250LXNpemU6IDEuMnJlbTsgfVxuXG5mb290ZXIgLm1lbnUgdWwge1xuICBtYXJnaW46IDA7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIGZvb3RlciAubWVudSB1bCB7XG4gICAgICBmbG9hdDogcmlnaHQ7IH0gfVxuICBmb290ZXIgLm1lbnUgdWwgbGkge1xuICAgIG1hcmdpbjogMDsgfVxuICAgIGZvb3RlciAubWVudSB1bCBsaSA+IGEge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG4gICAgICBmb290ZXIgLm1lbnUgdWwgbGkgPiBhOmhvdmVyIHtcbiAgICAgICAgY29sb3I6ICNmN2Y3ZjcgIWltcG9ydGFudDsgfVxuICAgIGZvb3RlciAubWVudSB1bCBsaSArIGxpIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMXJlbTsgfVxuICAgICAgZm9vdGVyIC5tZW51IHVsIGxpICsgbGk6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogXCJ8XCI7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgbGVmdDogLTAuNXJlbTsgfVxuXG5mb290ZXIgLm1lbnUgbGkgaSB7XG4gIGZvbnQtc2l6ZTogMC45NHJlbTsgfVxuXG4jY29udGVudEZvb3RlciBINCB7XG4gIG1pbi1oZWlnaHQ6IDRyZW07IH1cbiAgI2NvbnRlbnRGb290ZXIgSDQgc3Ryb25nIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgZmxvYXQ6IGxlZnQ7IH1cblxuLnRpdGxlLWJhciB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC43NSk7XG4gIHBhZGRpbmc6IDAuOXJlbTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NC45Mzc1ZW0pIHtcbiAgICAudGl0bGUtYmFyIHtcbiAgICAgIGhlaWdodDogNXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAgIC50aXRsZS1iYXIge1xuICAgICAgaGVpZ2h0OiA1cmVtO1xuICAgICAgYmFja2dyb3VuZDogIzBhMGEwYSAhaW1wb3J0YW50OyB9IH1cbiAgLnRpdGxlLWJhciAubWVudS1pY29uIHtcbiAgICB6LWluZGV4OiAxMDtcbiAgICB6b29tOiAyO1xuICAgIG1hcmdpbi10b3A6IDAuNHJlbTsgfVxuICAudGl0bGUtYmFyIC5sb2dvIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc0LjkzNzVlbSkge1xuICAgICAgLnRpdGxlLWJhciAubG9nbyB7XG4gICAgICAgIG1heC1oZWlnaHQ6IDEwMCU7IH1cbiAgICAgICAgLnRpdGxlLWJhciAubG9nbyBpbWcge1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICBoZWlnaHQ6IDMuNnJlbTsgfSB9XG4gIC50aXRsZS1iYXIgLnNsb2dhbiB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NC45Mzc1ZW0pIHtcbiAgICAgIC50aXRsZS1iYXIgLnNsb2dhbiB7XG4gICAgICAgIG1heC13aWR0aDogNjAlO1xuICAgICAgICBtYXJnaW4tbGVmdDogMjAlOyB9IH1cbiAgICAudGl0bGUtYmFyIC5zbG9nYW4gLnRpdGxlLTQge1xuICAgICAgbGluZS1oZWlnaHQ6IDE7IH1cblxuLnRpdGxlLWJhci10aXRsZSB7XG4gIGJhY2tncm91bmQ6ICMwYTBhMGE7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDA7XG4gIHRvcDogMDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NC45Mzc1ZW0pIHtcbiAgICAudGl0bGUtYmFyLXRpdGxlIHtcbiAgICAgIGJvcmRlcjogMTBweCBzb2xpZCAjMGEwYTBhOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gICAgLnRpdGxlLWJhci10aXRsZSB7XG4gICAgICB3aWR0aDogN3JlbTtcbiAgICAgIGJvcmRlcjogMTBweCBzb2xpZCAjMGEwYTBhOyB9IH1cblxuLmhlYWRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IC1tb3otY2FsYygxMDAlIC0gKCAxcmVtICogMiApKTtcbiAgd2lkdGg6IC13ZWJraXQtY2FsYygxMDAlIC0gKCAxcmVtICogMiApKTtcbiAgd2lkdGg6IGNhbGMoMTAwJSAtICggMXJlbSAqIDIgKSk7XG4gIG1hcmdpbjogMXJlbTtcbiAgei1pbmRleDogMjsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgICAuaGVhZGVyIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgbWFyZ2luOiAwcmVtOyB9IH1cbiAgLmhlYWRlciAubWVudS50b3BiYXJtZW51ID4gbGkuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgYTo6YWZ0ZXIge1xuICAgIHRvcDogNzAlOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuaGVhZGVyIC5tZW51LnRvcGJhcm1lbnUgPiBsaSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgdmVydGljYWwtYWxpZ246IHRvcDsgfVxuICAgICAgLmhlYWRlciAubWVudS50b3BiYXJtZW51ID4gbGkgPiBhIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwcmVtO1xuICAgICAgICBwYWRkaW5nLXRvcDogMXJlbTsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5oZWFkZXIgLm1lbnUudG9wYmFybWVudSA+IGxpID4gYSB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMC45cmVtO1xuICAgICAgICBwYWRkaW5nLXRvcDogMS43cmVtOyB9IH1cbiAgLmhlYWRlciAubWVudS50b3BiYXJtZW51ID4gbGkubWVudS1sb2dvIHtcbiAgICBwYWRkaW5nOiAwZW07XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIHdpZHRoOiAxMTBweDsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5oZWFkZXIgLm1lbnUudG9wYmFybWVudSA+IGxpLm1lbnUtbG9nbyB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrICAhaW1wb3J0YW50OyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAuaGVhZGVyIC5tZW51LnRvcGJhcm1lbnUgPiBsaS5tZW51LWxvZ28ge1xuICAgICAgICB3aWR0aDogYXV0bzsgfSB9XG4gICAgLmhlYWRlciAubWVudS50b3BiYXJtZW51ID4gbGkubWVudS1sb2dvIGEge1xuICAgICAgcGFkZGluZy10b3A6IDBlbTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAwZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuOXJlbTsgfVxuICAuaGVhZGVyIC5zaWduYXR1cmUge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHBhZGRpbmc6IDFyZW07XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5oZWFkZXIgLnNpZ25hdHVyZSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDNyZW07XG4gICAgICAgIGxlZnQ6IDcuNHJlbTsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLmhlYWRlciAuc2lnbmF0dXJlIHtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIHBhZGRpbmc6IDFyZW07XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiA0cmVtO1xuICAgICAgICBsZWZ0OiAxMC4ycmVtOyB9IH1cbiAgICAuaGVhZGVyIC5zaWduYXR1cmUgaDEsIC5oZWFkZXIgLnNpZ25hdHVyZSAudGl0bGUtMSB7XG4gICAgICBjb2xvcjogI2Y3ZjdmNztcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgZm9udC1zaXplOiAxLjM3NXJlbTsgfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgICAuaGVhZGVyIC5zaWduYXR1cmUgaDEsIC5oZWFkZXIgLnNpZ25hdHVyZSAudGl0bGUtMSB7XG4gICAgICAgICAgZm9udC1zaXplOiAxLjc1cmVtOyB9IH1cbiAgLmhlYWRlciAucmlnaHRzZWFyY2gge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB6LWluZGV4OiAyO1xuICAgIHJpZ2h0OiAxcmVtO1xuICAgIHRvcDogMXJlbTsgfVxuICAuaGVhZGVyLmludGVybiB7XG4gICAgYmFja2dyb3VuZDogIzBhMGEwYTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzQuOTM3NWVtKSB7XG4gICAgLmhlYWRlciAudGl0bGUtYmFyIHtcbiAgICAgIGJhY2tncm91bmQ6ICMwYTBhMGE7IH0gfVxuXG4udG9wLWJhciB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC43NSk7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gICAgLnRvcC1iYXIgLnRvcC1iYXItbGVmdCwgLnRvcC1iYXIgLnRvcC1iYXIgLnRvcC1iYXItcmlnaHQge1xuICAgICAgd2lkdGg6IDEwMCU7IH0gfVxuICAudG9wLWJhciB1bCB7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgICAgIC50b3AtYmFyIHVsLm1lbnUgbGkuaGFzLXN1Ym1lbnUge1xuICAgICAgICBwb3NpdGlvbjogaW5pdGlhbDsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gICAgICAudG9wLWJhciB1bC5tZW51IGxpIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7IH0gfVxuICAgIC50b3AtYmFyIHVsLm1lbnUgbGkgLmlzLXN1Ym1lbnUtaXRlbSB7XG4gICAgICBiYWNrZ3JvdW5kOiAjMGEwYTBhOyB9XG4gICAgLnRvcC1iYXIgdWwubWVudSA+IGxpIHtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAudG9wLWJhciB1bC5tZW51IC5zdWJtZW51IHtcbiAgICAgIGJhY2tncm91bmQ6ICMwYTBhMGE7IH1cbiAgICAudG9wLWJhciB1bCBsaSB7XG4gICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDsgfVxuICAgICAgLnRvcC1iYXIgdWwgbGkgYSB7XG4gICAgICAgIGNvbG9yOiAjZmZmOyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc0LjkzNzVlbSkge1xuICAjbGlzdC1tZW51IC5pcy1kcmlsbGRvd24ge1xuICAgIG1heC13aWR0aDogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzQuOTM3NWVtKSB7XG4gICNsaXN0LW1lbnUgLmlzLWRyaWxsZG93biA+IC5tZW51IHtcbiAgICB3aWR0aDogLW1vei1jYWxjKDEwMHZ3IC0gKCAxcmVtICogMiApKTtcbiAgICB3aWR0aDogLXdlYmtpdC1jYWxjKDEwMHZ3IC0gKCAxcmVtICogMiApKTtcbiAgICB3aWR0aDogY2FsYygxMDB2dyAtICggMXJlbSAqIDIgKSk7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICNsaXN0LW1lbnUsIC5zaWduYXR1cmUge1xuICAgIHdpZHRoOiAtbW96LWNhbGMoMTAwJSAtIDEyNHB4IC0gMnJlbSk7XG4gICAgd2lkdGg6IC13ZWJraXQtY2FsYygxMDAlIC0gMTI0cHggLSAycmVtKTtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gMTI0cHggLSAycmVtKTsgfSB9XG5cbi5tZW51LXRleHQge1xuICBjb2xvcjogI2ZmZjsgfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQwZW0pIHtcbiAgICAubWVudS10ZXh0IHtcbiAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAubWVudTpsYXN0LWNoaWxkIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICM0ZTRlNGU7IH1cbiAgLm1lbnU6Zmlyc3QtY2hpbGQge1xuICAgIGJvcmRlci1sZWZ0OiBub25lOyB9XG4gICNsaXN0LW1lbnUgPiAubWVudSA+IGxpOm5vdCg6bGFzdC1jaGlsZCk6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGhlaWdodDogMXJlbTtcbiAgICB3aWR0aDogMXB4O1xuICAgIGJhY2tncm91bmQ6ICNkZDMzMzM7XG4gICAgcmlnaHQ6IDA7XG4gICAgdG9wOiAwLjc1cmVtO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsgfSB9XG5cbi5kcm9wZG93bi5tZW51IC5zdWJtZW51IHtcbiAgYm9yZGVyOiBub25lOyB9XG5cbi5kcm9wZG93bi5tZW51IC5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudC5pcy1yaWdodC1hcnJvdyA+IGE6OmFmdGVyIHtcbiAgYm9yZGVyLWNvbG9yOiAjZmZmIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50OyB9XG5cbi5pcy1kcmlsbGRvd24tc3VibWVudS1wYXJlbnQgPiBhOjphZnRlciB7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgI2ZmZjsgfVxuXG4uanMtZHJpbGxkb3duLWJhY2s6OmJlZm9yZSB7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgI2ZmZiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDsgfVxuXG4ubmF2LXRhYnMge1xuICBtYXJnaW4tdG9wOiAxcmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCAjOGE4YThhO1xuICBib3JkZXItYm90dG9tOiAwOyB9XG4gIC5uYXYtdGFicyAudGFiID4gYSB7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICAgIGNvbG9yOiAjZjdmN2Y3OyB9XG4gICAgLm5hdi10YWJzIC50YWIgPiBhOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50OyB9XG4gIC5uYXYtdGFicyAudGFiLnNlbGVjdGlvbm5lZCA+IGEge1xuICAgIGNvbG9yOiAjZGQzMzMzOyB9XG5cbiNoZWFkZXIgLnRvcC1iYXIge1xuICBwb3NpdGlvbjogaW5pdGlhbDtcbiAgZGlzcGxheTogYmxvY2s7IH1cbiAgI2hlYWRlciAudG9wLWJhciAuaW5wdXQtZ3JvdXAge1xuICAgIHBhZGRpbmc6IDFyZW07XG4gICAgbWFyZ2luOiAwcmVtO1xuICAgIHdpZHRoOiAyNDBweDsgfVxuICAgICNoZWFkZXIgLnRvcC1iYXIgLmlucHV0LWdyb3VwIGlucHV0IHtcbiAgICAgIG1heC13aWR0aDogbm9uZTtcbiAgICAgIG1hcmdpbjogMDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgICAjaGVhZGVyIC50b3AtYmFyIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2U7IH1cbiAgICAgICNoZWFkZXIgLnRvcC1iYXIgLmxhbmd1YWdlX2Nob29zZSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAxLjRyZW07XG4gICAgICAgIHotaW5kZXg6IDIwMDtcbiAgICAgICAgYmFja2dyb3VuZDogYmxhY2sgbm9uZSByZXBlYXQgc2Nyb2xsIDAlIDAlO1xuICAgICAgICBoZWlnaHQ6IDIuNnJlbTsgfVxuICAgICAgI2hlYWRlciAudG9wLWJhciAuaW5wdXQtZ3JvdXAge1xuICAgICAgICBwYWRkaW5nOiAxcmVtO1xuICAgICAgICBtYXJnaW46IDByZW07XG4gICAgICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgICAgICNoZWFkZXIgLnRvcC1iYXIgLmlucHV0LWdyb3VwIGlucHV0IHtcbiAgICAgICAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSA2cmVtKTsgfSB9XG5cbi50b3BNZWRpYSB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtaGVpZ2h0OiA3NXZoO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cblxuLnRvcE1lZGlhIC5tZWRpYSB7XG4gIG1heC13aWR0aDogbm9uZTtcbiAgbWluLXdpZHRoOiAxMDAlO1xuICBtYXgtaGVpZ2h0OiBub25lO1xuICBtaW4taGVpZ2h0OiAxMDAlO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDUwJTtcbiAgdG9wOiA1MCU7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpOyB9XG5cbi5jdXN0b20tZmxleC12aWRlby1jbGFzcyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaGVpZ2h0OiAwO1xuICBwYWRkaW5nLWJvdHRvbTogNTYuNDE3NDklO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLmN1c3RvbS1mbGV4LXZpZGVvLWNsYXNzIGlmcmFtZSxcbiAgLmN1c3RvbS1mbGV4LXZpZGVvLWNsYXNzIG9iamVjdCxcbiAgLmN1c3RvbS1mbGV4LXZpZGVvLWNsYXNzIGVtYmVkLFxuICAuY3VzdG9tLWZsZXgtdmlkZW8tY2xhc3MgdmlkZW8ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7IH1cbiAgLmN1c3RvbS1mbGV4LXZpZGVvLWNsYXNzOmJlZm9yZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHotaW5kZXg6IDE7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY29udGVudDogJyc7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4yKTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmN1c3RvbS1mbGV4LXZpZGVvLWNsYXNzIGlmcmFtZSB7XG4gICAgICB0b3A6IDA7IH0gfVxuXG4uaGVhZGVyU2xpZGVyLnNsaWNrLXNsaWRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiAwJTtcbiAgd2lkdGg6IDgwJTtcbiAgbGVmdDogNTAlO1xuICB6LWluZGV4OiAxO1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC00MCUpO1xuICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC00MCUpO1xuICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNDAlKTtcbiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC00MCUpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNDAlKTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgICAuaGVhZGVyU2xpZGVyLnNsaWNrLXNsaWRlciAueGxhcmdlLTI1IHtcbiAgICAgIHdpZHRoOiAzMyU7IH1cbiAgICAuaGVhZGVyU2xpZGVyLnNsaWNrLXNsaWRlciAubWVkaXVtLTc1IHtcbiAgICAgIHdpZHRoOiA2NiU7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmhlYWRlclNsaWRlci5zbGljay1zbGlkZXIge1xuICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtMzAlKTtcbiAgICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTMwJSk7XG4gICAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtMzAlKTtcbiAgICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtMzAlKTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC0zMCUpOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5oZWFkZXJTbGlkZXIuc2xpY2stc2xpZGVyIHtcbiAgICAgIG1pbi1oZWlnaHQ6IDUwJTtcbiAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTIwJSk7XG4gICAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC0yMCUpO1xuICAgICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTIwJSk7XG4gICAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTIwJSk7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtMjAlKTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAuaGVhZGVyU2xpZGVyLnNsaWNrLXNsaWRlciB7XG4gICAgICBtaW4taGVpZ2h0OiA2MCU7XG4gICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIGJvdHRvbTogYXV0bzsgfSB9XG4gIC5oZWFkZXJTbGlkZXIuc2xpY2stc2xpZGVyIC5zbGljay1zbGlkZSAuZmxleC1ncmlkIHtcbiAgICBtYXJnaW46IDQlOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTM3NWVtKSB7XG4gICAgICAuaGVhZGVyU2xpZGVyLnNsaWNrLXNsaWRlciAuc2xpY2stc2xpZGUgLmZsZXgtZ3JpZCB7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cbiAgICAgICAgLmhlYWRlclNsaWRlci5zbGljay1zbGlkZXIgLnNsaWNrLXNsaWRlIC5mbGV4LWdyaWQgcCB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAgIC5oZWFkZXJTbGlkZXIuc2xpY2stc2xpZGVyIHtcbiAgICAgIHdpZHRoOiAxMDAlOyB9IH1cbiAgLmhlYWRlclNsaWRlci5zbGljay1zbGlkZXIgKiB7XG4gICAgY29sb3I6ICNmN2Y3Zjc7IH1cbiAgLmhlYWRlclNsaWRlci5zbGljay1zbGlkZXIgLnNsaWNrLXNsaWRlIHtcbiAgICBwYWRkaW5nOiAwIDRyZW07IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgICAgIC5oZWFkZXJTbGlkZXIuc2xpY2stc2xpZGVyIC5zbGljay1zbGlkZSB7XG4gICAgICAgIHBhZGRpbmc6IDByZW07IH0gfVxuICAuaGVhZGVyU2xpZGVyLnNsaWNrLXNsaWRlciBoMiwgLmhlYWRlclNsaWRlci5zbGljay1zbGlkZXIgLnJzdCBoMSwgLnJzdCAuaGVhZGVyU2xpZGVyLnNsaWNrLXNsaWRlciBoMSwgLmhlYWRlclNsaWRlci5zbGljay1zbGlkZXIgLnJzdCAudGl0bGUtMSwgLnJzdCAuaGVhZGVyU2xpZGVyLnNsaWNrLXNsaWRlciAudGl0bGUtMSwgLmhlYWRlclNsaWRlci5zbGljay1zbGlkZXIgLnRpdGxlLTIge1xuICAgIGZvbnQtc2l6ZTogNC43NXJlbTtcbiAgICBmb250LXdlaWdodDogODAwOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gICAgICAuaGVhZGVyU2xpZGVyLnNsaWNrLXNsaWRlciBoMiwgLmhlYWRlclNsaWRlci5zbGljay1zbGlkZXIgLnJzdCBoMSwgLnJzdCAuaGVhZGVyU2xpZGVyLnNsaWNrLXNsaWRlciBoMSwgLmhlYWRlclNsaWRlci5zbGljay1zbGlkZXIgLnJzdCAudGl0bGUtMSwgLnJzdCAuaGVhZGVyU2xpZGVyLnNsaWNrLXNsaWRlciAudGl0bGUtMSwgLmhlYWRlclNsaWRlci5zbGljay1zbGlkZXIgLnRpdGxlLTIge1xuICAgICAgICBmb250LXNpemU6IDEuNzVyZW07IH0gfVxuICAuaGVhZGVyU2xpZGVyLnNsaWNrLXNsaWRlciBwIHtcbiAgICBmb250LXNpemU6IDEuNHJlbTtcbiAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgICAgIC5oZWFkZXJTbGlkZXIuc2xpY2stc2xpZGVyIHAge1xuICAgICAgICBmb250LXNpemU6IDEuMnJlbTsgfSB9XG4gIC5oZWFkZXJTbGlkZXIuc2xpY2stc2xpZGVyIC5zbGljay1wcmV2LCAuaGVhZGVyU2xpZGVyLnNsaWNrLXNsaWRlciAuc2xpY2stbmV4dCB7XG4gICAgdG9wOiA1MCU7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcbiAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC01MCUpO1xuICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC01MCUpO1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcbiAgICBsZWZ0OiAwO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB6LWluZGV4OiAxMjtcbiAgICB3aWR0aDogNHJlbTsgfVxuICAuaGVhZGVyU2xpZGVyLnNsaWNrLXNsaWRlciAuc2xpY2stbmV4dCB7XG4gICAgcmlnaHQ6IDA7XG4gICAgbGVmdDogYXV0bzsgfVxuXG4ubGFuZ3VhZ2VfY2hvb3NlIHtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IDByZW07XG4gIHJpZ2h0OiAxcmVtO1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBjb2xvcjogI2RkMzMzMztcbiAgbWFyZ2luOiAwOyB9XG4gIC5sYW5ndWFnZV9jaG9vc2UgbGkge1xuICAgIG1hcmdpbjogMDtcbiAgICBkaXNwbGF5OiBpbmxpbmU7IH1cbiAgLmxhbmd1YWdlX2Nob29zZSBhIHtcbiAgICBjb2xvcjogI2Y3ZjdmNzsgfVxuICAgIC5sYW5ndWFnZV9jaG9vc2UgYS5hY3RpdmUge1xuICAgICAgY29sb3I6ICNkZDMzMzM7IH1cbiAgLmxhbmd1YWdlX2Nob29zZSAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgbWluLXdpZHRoOiAwOyB9XG4gIC5sYW5ndWFnZV9jaG9vc2UgLmRyb3Bkb3duLm1lbnUgPiBsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCB7XG4gICAgZmxvYXQ6IGxlZnQ7IH1cbiAgICAubGFuZ3VhZ2VfY2hvb3NlIC5kcm9wZG93bi5tZW51ID4gbGkuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgPiBhIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgZmxvYXQ6IGxlZnQ7IH1cblxuLyogZW50eXBvICovXG5bY2xhc3MqPVwiZW50eXBvLVwiXTpiZWZvcmUge1xuICBmb250LWZhbWlseTogJ2VudHlwbycsIHNhbnMtc2VyaWY7IH1cblxuLndhbGxncmlkLWl0ZW0gLnBhbmVsIHtcbiAgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG4vKiAtLS0tIGdyaWQgLS0tLSAqL1xuLmdyaWQge1xuICBtYXJnaW46IDhweDtcbiAgLyogLS0tLSBncmlkIHNpemVyIHdpZHRoLS0tLSAqLyB9XG4gIC5ncmlkI2NvbnRhaW5lciB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtICAxNnB4KTsgfVxuICAuZ3JpZCAuZ3JpZC1pdGVtIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7IH1cbiAgICAuZ3JpZCAuZ3JpZC1pdGVtOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgZmxvYXQ6IHJpZ2h0OyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmdyaWQgLmdyaWQtaXRlbSB7XG4gICAgICAgIHdpZHRoOiA1MCU7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7IH1cbiAgICAgICAgLmdyaWQgLmdyaWQtaXRlbTpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICBmbG9hdDogcmlnaHQ7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5ncmlkIC5ncmlkLWl0ZW0ge1xuICAgICAgICB3aWR0aDogMzMuMzMzMzMlO1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwOyB9XG4gICAgICAgIC5ncmlkIC5ncmlkLWl0ZW06bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgZmxvYXQ6IHJpZ2h0OyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAuZ3JpZCAuZ3JpZC1pdGVtIHtcbiAgICAgICAgd2lkdGg6IDI1JTtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMDsgfVxuICAgICAgICAuZ3JpZCAuZ3JpZC1pdGVtOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgIGZsb2F0OiByaWdodDsgfSB9XG5cbi8qIGNsZWFyIGZpeCAqL1xuLmdyaWQ6YWZ0ZXIge1xuICBjb250ZW50OiAnJztcbiAgZGlzcGxheTogYmxvY2s7XG4gIGNsZWFyOiBib3RoOyB9XG5cbi8qIC0tLS0gLmdyaWQtaXRlbSAtLS0tICovXG4uZ3JpZC1pdGVtIHtcbiAgaGVpZ2h0OiAyNjRweDtcbiAgZmxvYXQ6IGxlZnQ7XG4gIGJvcmRlcjogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC5ncmlkLWl0ZW0gZmlndXJlIHtcbiAgICBoZWlnaHQ6IDI0OHB4OyB9XG4gIC5ncmlkLWl0ZW0udHlwZTEsIC5ncmlkLWl0ZW0udHlwZUV4cG8sIC5ncmlkLWl0ZW10eXBlNCB7XG4gICAgaGVpZ2h0OiAyNjRweDsgfVxuICAuZ3JpZC1pdGVtLnR5cGUyLCAuZ3JpZC1pdGVtLnR5cGUzIHtcbiAgICBoZWlnaHQ6IDUyOHB4OyB9XG4gIC5ncmlkLWl0ZW0udHlwZTIgLmluZm9Db250IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAyNjRweDsgfVxuICAuZ3JpZC1pdGVtIC5pbmZvQ29udCB7XG4gICAgcGFkZGluZzogMTFweCAyMnB4OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZ3JpZC1pdGVtIHtcbiAgICAgIGhlaWdodDogMzI0cHg7IH1cbiAgICAgIC5ncmlkLWl0ZW0gZmlndXJlIHtcbiAgICAgICAgaGVpZ2h0OiAzMDhweDsgfVxuICAgICAgLmdyaWQtaXRlbS50eXBlMSwgLmdyaWQtaXRlbS50eXBlRXhwbywgLmdyaWQtaXRlbXR5cGU0IHtcbiAgICAgICAgaGVpZ2h0OiAzMjRweDsgfVxuICAgICAgLmdyaWQtaXRlbS50eXBlMiwgLmdyaWQtaXRlbS50eXBlMyB7XG4gICAgICAgIGhlaWdodDogNjQ4cHg7IH1cbiAgICAgIC5ncmlkLWl0ZW0udHlwZTIgLmluZm9Db250IHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDMyNHB4OyB9XG4gICAgICAuZ3JpZC1pdGVtIC5pbmZvQ29udCB7XG4gICAgICAgIHBhZGRpbmc6IDEzLjVweCAyN3B4OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5ncmlkLWl0ZW0ge1xuICAgICAgaGVpZ2h0OiAzMjRweDsgfVxuICAgICAgLmdyaWQtaXRlbSBmaWd1cmUge1xuICAgICAgICBoZWlnaHQ6IDMwOHB4OyB9XG4gICAgICAuZ3JpZC1pdGVtLnR5cGUxLCAuZ3JpZC1pdGVtLnR5cGVFeHBvLCAuZ3JpZC1pdGVtdHlwZTQge1xuICAgICAgICBoZWlnaHQ6IDMyNHB4OyB9XG4gICAgICAuZ3JpZC1pdGVtLnR5cGUyLCAuZ3JpZC1pdGVtLnR5cGUzIHtcbiAgICAgICAgaGVpZ2h0OiA2NDhweDsgfVxuICAgICAgLmdyaWQtaXRlbS50eXBlMiAuaW5mb0NvbnQge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMzI0cHg7IH1cbiAgICAgIC5ncmlkLWl0ZW0gLmluZm9Db250IHtcbiAgICAgICAgcGFkZGluZzogMTMuNXB4IDI3cHg7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLmdyaWQtaXRlbSB7XG4gICAgICBoZWlnaHQ6IDM4NHB4OyB9XG4gICAgICAuZ3JpZC1pdGVtIGZpZ3VyZSB7XG4gICAgICAgIGhlaWdodDogMzY4cHg7IH1cbiAgICAgIC5ncmlkLWl0ZW0udHlwZTEsIC5ncmlkLWl0ZW0udHlwZUV4cG8sIC5ncmlkLWl0ZW10eXBlNCB7XG4gICAgICAgIGhlaWdodDogMzg0cHg7IH1cbiAgICAgIC5ncmlkLWl0ZW0udHlwZTIsIC5ncmlkLWl0ZW0udHlwZTMge1xuICAgICAgICBoZWlnaHQ6IDc2OHB4OyB9XG4gICAgICAuZ3JpZC1pdGVtLnR5cGUyIC5pbmZvQ29udCB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAzODRweDsgfVxuICAgICAgLmdyaWQtaXRlbSAuaW5mb0NvbnQge1xuICAgICAgICBwYWRkaW5nOiAxNnB4IDMycHg7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAyKSwgKG1pbi1yZXNvbHV0aW9uOiAxOTJkcGkpIHtcbiAgICAuZ3JpZC1pdGVtIHtcbiAgICAgIGhlaWdodDogNDY0cHg7IH1cbiAgICAgIC5ncmlkLWl0ZW0gZmlndXJlIHtcbiAgICAgICAgaGVpZ2h0OiA0NDhweDsgfVxuICAgICAgLmdyaWQtaXRlbS50eXBlMSwgLmdyaWQtaXRlbS50eXBlRXhwbywgLmdyaWQtaXRlbXR5cGU0IHtcbiAgICAgICAgaGVpZ2h0OiA0NjRweDsgfVxuICAgICAgLmdyaWQtaXRlbS50eXBlMiwgLmdyaWQtaXRlbS50eXBlMyB7XG4gICAgICAgIGhlaWdodDogOTI4cHg7IH1cbiAgICAgIC5ncmlkLWl0ZW0udHlwZTIgLmluZm9Db250IHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDQ2NHB4OyB9XG4gICAgICAuZ3JpZC1pdGVtIC5pbmZvQ29udCB7XG4gICAgICAgIHBhZGRpbmc6IDE5LjMzMzMzcHggMzguNjY2NjdweDsgfSB9XG4gIC5ncmlkLWl0ZW0gLmNvbnRlbnRHcmlkIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBtYXJnaW46IDhweDtcbiAgICBiYWNrZ3JvdW5kOiAjRTBFMEUwO1xuICAgIHdpZHRoOiAtbW96LWNhbGMoMTAwJSAtIDFyZW0pO1xuICAgIHdpZHRoOiAtd2Via2l0LWNhbGMoMTAwJSAtIDFyZW0pO1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAxcmVtKTtcbiAgICBoZWlnaHQ6IC1tb3otY2FsYygxMDAlIC0gMXJlbSk7XG4gICAgaGVpZ2h0OiAtd2Via2l0LWNhbGMoMTAwJSAtIDFyZW0pO1xuICAgIGhlaWdodDogY2FsYygxMDAlIC0gMXJlbSk7IH1cbiAgLmdyaWQtaXRlbSAuaW5mb0NvbnQge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB6LWluZGV4OiAyOyB9XG4gIC5ncmlkLWl0ZW0gaDIsIC5ncmlkLWl0ZW0gLnJzdCBoMSwgLnJzdCAuZ3JpZC1pdGVtIGgxLCAuZ3JpZC1pdGVtIC5yc3QgLnRpdGxlLTEsIC5yc3QgLmdyaWQtaXRlbSAudGl0bGUtMSwgLmdyaWQtaXRlbSAudGl0bGUtMiB7XG4gICAgZm9udC1zaXplOiAxcmVtOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmdyaWQtaXRlbSBoMiwgLmdyaWQtaXRlbSAucnN0IGgxLCAucnN0IC5ncmlkLWl0ZW0gaDEsIC5ncmlkLWl0ZW0gLnJzdCAudGl0bGUtMSwgLnJzdCAuZ3JpZC1pdGVtIC50aXRsZS0xLCAuZ3JpZC1pdGVtIC50aXRsZS0yIHtcbiAgICAgICAgZm9udC1zaXplOiAxcmVtOyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAuZ3JpZC1pdGVtIGgyLCAuZ3JpZC1pdGVtIC5yc3QgaDEsIC5yc3QgLmdyaWQtaXRlbSBoMSwgLmdyaWQtaXRlbSAucnN0IC50aXRsZS0xLCAucnN0IC5ncmlkLWl0ZW0gLnRpdGxlLTEsIC5ncmlkLWl0ZW0gLnRpdGxlLTIge1xuICAgICAgICBmb250LXNpemU6IDEuMTByZW07IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAgIC5ncmlkLWl0ZW0gaDIsIC5ncmlkLWl0ZW0gLnJzdCBoMSwgLnJzdCAuZ3JpZC1pdGVtIGgxLCAuZ3JpZC1pdGVtIC5yc3QgLnRpdGxlLTEsIC5yc3QgLmdyaWQtaXRlbSAudGl0bGUtMSwgLmdyaWQtaXRlbSAudGl0bGUtMiB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4yMHJlbTsgfSB9XG4gIC5ncmlkLWl0ZW0gaDU6YWZ0ZXIsIC5ncmlkLWl0ZW0gLnJzdCBoNDphZnRlciwgLnJzdCAuZ3JpZC1pdGVtIGg0OmFmdGVyLCAuZ3JpZC1pdGVtIC5yc3QgaDM6YWZ0ZXIsIC5yc3QgLmdyaWQtaXRlbSBoMzphZnRlciwgLmdyaWQtaXRlbSAucnN0IC5oMzphZnRlciwgLnJzdCAuZ3JpZC1pdGVtIC5oMzphZnRlciwgLmdyaWQtaXRlbSAucnN0IGgyOmFmdGVyLCAucnN0IC5ncmlkLWl0ZW0gaDI6YWZ0ZXIsIC5ncmlkLWl0ZW0gLnJzdCBoMTphZnRlciwgLnJzdCAuZ3JpZC1pdGVtIGgxOmFmdGVyLCAuZ3JpZC1pdGVtIC5yc3QgLnRpdGxlLTE6YWZ0ZXIsIC5yc3QgLmdyaWQtaXRlbSAudGl0bGUtMTphZnRlciwgLmdyaWQtaXRlbSAucnN0IC50aXRsZS0yOmFmdGVyLCAucnN0IC5ncmlkLWl0ZW0gLnRpdGxlLTI6YWZ0ZXIsIC5ncmlkLWl0ZW0gLnJzdCAudGl0bGUtMzphZnRlciwgLnJzdCAuZ3JpZC1pdGVtIC50aXRsZS0zOmFmdGVyLCAuZ3JpZC1pdGVtIC5yc3QgLnRpdGxlLTQ6YWZ0ZXIsIC5yc3QgLmdyaWQtaXRlbSAudGl0bGUtNDphZnRlciwgLmdyaWQtaXRlbSAudGl0bGUtNTphZnRlciwgLmdyaWQtaXRlbSBoNTpiZWZvcmUsIC5ncmlkLWl0ZW0gLnJzdCBoNDpiZWZvcmUsIC5yc3QgLmdyaWQtaXRlbSBoNDpiZWZvcmUsIC5ncmlkLWl0ZW0gLnJzdCBoMzpiZWZvcmUsIC5yc3QgLmdyaWQtaXRlbSBoMzpiZWZvcmUsIC5ncmlkLWl0ZW0gLnJzdCAuaDM6YmVmb3JlLCAucnN0IC5ncmlkLWl0ZW0gLmgzOmJlZm9yZSwgLmdyaWQtaXRlbSAucnN0IGgyOmJlZm9yZSwgLnJzdCAuZ3JpZC1pdGVtIGgyOmJlZm9yZSwgLmdyaWQtaXRlbSAucnN0IGgxOmJlZm9yZSwgLnJzdCAuZ3JpZC1pdGVtIGgxOmJlZm9yZSwgLmdyaWQtaXRlbSAucnN0IC50aXRsZS0xOmJlZm9yZSwgLnJzdCAuZ3JpZC1pdGVtIC50aXRsZS0xOmJlZm9yZSwgLmdyaWQtaXRlbSAucnN0IC50aXRsZS0yOmJlZm9yZSwgLnJzdCAuZ3JpZC1pdGVtIC50aXRsZS0yOmJlZm9yZSwgLmdyaWQtaXRlbSAucnN0IC50aXRsZS0zOmJlZm9yZSwgLnJzdCAuZ3JpZC1pdGVtIC50aXRsZS0zOmJlZm9yZSwgLmdyaWQtaXRlbSAucnN0IC50aXRsZS00OmJlZm9yZSwgLnJzdCAuZ3JpZC1pdGVtIC50aXRsZS00OmJlZm9yZSwgLmdyaWQtaXRlbSAudGl0bGUtNTpiZWZvcmUge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgLmdyaWQtaXRlbSBwLnN1YnRpdGxlIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBiYWNrZ3JvdW5kOiAjMDAwMDAwO1xuICAgIHBhZGRpbmc6IDAgMC4zcmVtO1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICAgIHRleHQtdHJhbnNmb3JtOiBub25lOyB9XG4gIC5ncmlkLWl0ZW0gLmRlc2Mge1xuICAgIGZvbnQtd2VpZ2h0OiAyMDA7IH1cbiAgLmdyaWQtaXRlbSBmaWd1cmUge1xuICAgIG1hcmdpbjogMDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAgIC5ncmlkLWl0ZW0gZmlndXJlIGltZyB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBsZWZ0OiA1MCU7XG4gICAgICBtaW4td2lkdGg6IDEwMCU7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTsgfVxuICAuZ3JpZC1pdGVtLnR5cGVFeHBvIHtcbiAgICBoZWlnaHQ6IDI2NHB4OyB9XG4gICAgLmdyaWQtaXRlbS50eXBlRXhwbyBmaWd1cmUge1xuICAgICAgaGVpZ2h0OiAyNDhweDsgfVxuICAgIC5ncmlkLWl0ZW0udHlwZUV4cG8udHlwZTEsIC5ncmlkLWl0ZW0udHlwZUV4cG8sIC5ncmlkLWl0ZW0udHlwZUV4cG90eXBlNCB7XG4gICAgICBoZWlnaHQ6IDI2NHB4OyB9XG4gICAgLmdyaWQtaXRlbS50eXBlRXhwby50eXBlMiwgLmdyaWQtaXRlbS50eXBlRXhwby50eXBlMyB7XG4gICAgICBoZWlnaHQ6IDUyOHB4OyB9XG4gICAgLmdyaWQtaXRlbS50eXBlRXhwby50eXBlMiAuaW5mb0NvbnQge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAyNjRweDsgfVxuICAgIC5ncmlkLWl0ZW0udHlwZUV4cG8gLmluZm9Db250IHtcbiAgICAgIHBhZGRpbmc6IDExcHggMjJweDsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5ncmlkLWl0ZW0udHlwZUV4cG8ge1xuICAgICAgICBoZWlnaHQ6IDMyNHB4OyB9XG4gICAgICAgIC5ncmlkLWl0ZW0udHlwZUV4cG8gZmlndXJlIHtcbiAgICAgICAgICBoZWlnaHQ6IDMwOHB4OyB9XG4gICAgICAgIC5ncmlkLWl0ZW0udHlwZUV4cG8udHlwZTEsIC5ncmlkLWl0ZW0udHlwZUV4cG8sIC5ncmlkLWl0ZW0udHlwZUV4cG90eXBlNCB7XG4gICAgICAgICAgaGVpZ2h0OiAzMjRweDsgfVxuICAgICAgICAuZ3JpZC1pdGVtLnR5cGVFeHBvLnR5cGUyLCAuZ3JpZC1pdGVtLnR5cGVFeHBvLnR5cGUzIHtcbiAgICAgICAgICBoZWlnaHQ6IDY0OHB4OyB9XG4gICAgICAgIC5ncmlkLWl0ZW0udHlwZUV4cG8udHlwZTIgLmluZm9Db250IHtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgdG9wOiAzMjRweDsgfVxuICAgICAgICAuZ3JpZC1pdGVtLnR5cGVFeHBvIC5pbmZvQ29udCB7XG4gICAgICAgICAgcGFkZGluZzogMTMuNXB4IDI3cHg7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5ncmlkLWl0ZW0udHlwZUV4cG8ge1xuICAgICAgICBoZWlnaHQ6IDMyNHB4OyB9XG4gICAgICAgIC5ncmlkLWl0ZW0udHlwZUV4cG8gZmlndXJlIHtcbiAgICAgICAgICBoZWlnaHQ6IDMwOHB4OyB9XG4gICAgICAgIC5ncmlkLWl0ZW0udHlwZUV4cG8udHlwZTEsIC5ncmlkLWl0ZW0udHlwZUV4cG8sIC5ncmlkLWl0ZW0udHlwZUV4cG90eXBlNCB7XG4gICAgICAgICAgaGVpZ2h0OiAzMjRweDsgfVxuICAgICAgICAuZ3JpZC1pdGVtLnR5cGVFeHBvLnR5cGUyLCAuZ3JpZC1pdGVtLnR5cGVFeHBvLnR5cGUzIHtcbiAgICAgICAgICBoZWlnaHQ6IDY0OHB4OyB9XG4gICAgICAgIC5ncmlkLWl0ZW0udHlwZUV4cG8udHlwZTIgLmluZm9Db250IHtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgdG9wOiAzMjRweDsgfVxuICAgICAgICAuZ3JpZC1pdGVtLnR5cGVFeHBvIC5pbmZvQ29udCB7XG4gICAgICAgICAgcGFkZGluZzogMTMuNXB4IDI3cHg7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAgIC5ncmlkLWl0ZW0udHlwZUV4cG8ge1xuICAgICAgICBoZWlnaHQ6IDM4NHB4OyB9XG4gICAgICAgIC5ncmlkLWl0ZW0udHlwZUV4cG8gZmlndXJlIHtcbiAgICAgICAgICBoZWlnaHQ6IDM2OHB4OyB9XG4gICAgICAgIC5ncmlkLWl0ZW0udHlwZUV4cG8udHlwZTEsIC5ncmlkLWl0ZW0udHlwZUV4cG8sIC5ncmlkLWl0ZW0udHlwZUV4cG90eXBlNCB7XG4gICAgICAgICAgaGVpZ2h0OiAzODRweDsgfVxuICAgICAgICAuZ3JpZC1pdGVtLnR5cGVFeHBvLnR5cGUyLCAuZ3JpZC1pdGVtLnR5cGVFeHBvLnR5cGUzIHtcbiAgICAgICAgICBoZWlnaHQ6IDc2OHB4OyB9XG4gICAgICAgIC5ncmlkLWl0ZW0udHlwZUV4cG8udHlwZTIgLmluZm9Db250IHtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgdG9wOiAzODRweDsgfVxuICAgICAgICAuZ3JpZC1pdGVtLnR5cGVFeHBvIC5pbmZvQ29udCB7XG4gICAgICAgICAgcGFkZGluZzogMTZweCAzMnB4OyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAyKSwgKG1pbi1yZXNvbHV0aW9uOiAxOTJkcGkpIHtcbiAgICAgIC5ncmlkLWl0ZW0udHlwZUV4cG8ge1xuICAgICAgICBoZWlnaHQ6IDQ2NHB4OyB9XG4gICAgICAgIC5ncmlkLWl0ZW0udHlwZUV4cG8gZmlndXJlIHtcbiAgICAgICAgICBoZWlnaHQ6IDQ0OHB4OyB9XG4gICAgICAgIC5ncmlkLWl0ZW0udHlwZUV4cG8udHlwZTEsIC5ncmlkLWl0ZW0udHlwZUV4cG8sIC5ncmlkLWl0ZW0udHlwZUV4cG90eXBlNCB7XG4gICAgICAgICAgaGVpZ2h0OiA0NjRweDsgfVxuICAgICAgICAuZ3JpZC1pdGVtLnR5cGVFeHBvLnR5cGUyLCAuZ3JpZC1pdGVtLnR5cGVFeHBvLnR5cGUzIHtcbiAgICAgICAgICBoZWlnaHQ6IDkyOHB4OyB9XG4gICAgICAgIC5ncmlkLWl0ZW0udHlwZUV4cG8udHlwZTIgLmluZm9Db250IHtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgdG9wOiA0NjRweDsgfVxuICAgICAgICAuZ3JpZC1pdGVtLnR5cGVFeHBvIC5pbmZvQ29udCB7XG4gICAgICAgICAgcGFkZGluZzogMTkuMzMzMzNweCAzOC42NjY2N3B4OyB9IH1cbiAgICAuZ3JpZC1pdGVtLnR5cGVFeHBvIC5zaG9ydGRlc2NjIHtcbiAgICAgIHRvcDogNjUlO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgZm9udC13ZWlnaHQ6IDIwMDtcbiAgICAgIHBhZGRpbmctdG9wOiAwLjQycmVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuMjsgfVxuICAgIC5ncmlkLWl0ZW0udHlwZUV4cG8gLmZpZ3VyZXRvRXhwIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiA2NSU7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgYmFja2dyb3VuZDogIzAwMDsgfVxuICAgICAgLmdyaWQtaXRlbS50eXBlRXhwbyAuZmlndXJldG9FeHAgZmlndXJlIHtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7IH1cbiAgICAuZ3JpZC1pdGVtLnR5cGVFeHBvIC5jb250ZW50R3JpZCB7XG4gICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDsgfVxuICAuZ3JpZC1pdGVtLnR5cGUzIGZpZ3VyZSwgLmdyaWQtaXRlbS50eXBlNCBmaWd1cmUge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgLmdyaWQtaXRlbS53aXRoQ29udCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTAlOyB9XG4gICAgLmdyaWQtaXRlbS53aXRoQ29udCBmaWd1cmUge1xuICAgICAgaGVpZ2h0OiA1MCU7IH1cbiAgICAuZ3JpZC1pdGVtLndpdGhDb250IC5zaG9ydGRlc2Mge1xuICAgICAgZm9udC13ZWlnaHQ6IDMwMDsgfVxuICAuZ3JpZC1pdGVtLnBpY3RvLXZpZGVvIC5jb250ZW50R3JpZCA+IGE6YmVmb3JlIHtcbiAgICBjb2xvcjogI0ZGRjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgY29udGVudDogXCJcXGYwMDhcIjtcbiAgICBmb250LWZhbWlseTogaWNvbW9vbjtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm9yZGVyLXJhZGl1czogMCU7XG4gICAgaGVpZ2h0OiAzcmVtO1xuICAgIHdpZHRoOiAzcmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAzcmVtO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGJhY2tncm91bmQ6ICMwYTBhMGE7XG4gICAgei1pbmRleDogMjsgfVxuICAuZ3JpZC1pdGVtLnBpY3RvLXNvdW5kIC5jb250ZW50R3JpZCA+IGE6YmVmb3JlIHtcbiAgICBjb2xvcjogI0ZGRjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgY29udGVudDogXCJcXGU5MTJcIjtcbiAgICBmb250LWZhbWlseTogaWNvbW9vbjtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm9yZGVyLXJhZGl1czogMCU7XG4gICAgaGVpZ2h0OiAzcmVtO1xuICAgIHdpZHRoOiAzcmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAzcmVtO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGJhY2tncm91bmQ6ICMwYTBhMGE7XG4gICAgei1pbmRleDogMjsgfVxuICAuZ3JpZC1pdGVtLnBpY3RvLWltZyAuY29udGVudEdyaWQgPiBhOmJlZm9yZSB7XG4gICAgY29sb3I6ICNGRkY7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGNvbnRlbnQ6IFwiXFxmMDNlXCI7XG4gICAgZm9udC1mYW1pbHk6IGljb21vb247XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvcmRlci1yYWRpdXM6IDAlO1xuICAgIGhlaWdodDogM3JlbTtcbiAgICB3aWR0aDogM3JlbTtcbiAgICBsaW5lLWhlaWdodDogM3JlbTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBiYWNrZ3JvdW5kOiAjMGEwYTBhO1xuICAgIHotaW5kZXg6IDI7IH1cbiAgLmdyaWQtaXRlbS5waWN0by1tdXNpYyAuY29udGVudEdyaWQgPiBhOmJlZm9yZSB7XG4gICAgY29sb3I6ICNGRkY7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGNvbnRlbnQ6IFwiXFxmMDAxXCI7XG4gICAgZm9udC1mYW1pbHk6IGljb21vb247XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvcmRlci1yYWRpdXM6IDAlO1xuICAgIGhlaWdodDogM3JlbTtcbiAgICB3aWR0aDogM3JlbTtcbiAgICBsaW5lLWhlaWdodDogM3JlbTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBiYWNrZ3JvdW5kOiAjMGEwYTBhO1xuICAgIHotaW5kZXg6IDI7IH1cbiAgLmdyaWQtaXRlbS5waWN0by1wcmVzc2UgLmNvbnRlbnRHcmlkID4gYTpiZWZvcmUge1xuICAgIGNvbG9yOiAjRkZGO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBjb250ZW50OiBcIlxcZjFlYVwiO1xuICAgIGZvbnQtZmFtaWx5OiBpY29tb29uO1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3JkZXItcmFkaXVzOiAwJTtcbiAgICBoZWlnaHQ6IDNyZW07XG4gICAgd2lkdGg6IDNyZW07XG4gICAgbGluZS1oZWlnaHQ6IDNyZW07XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgYmFja2dyb3VuZDogIzBhMGEwYTtcbiAgICB6LWluZGV4OiAyOyB9XG4gIC5ncmlkLWl0ZW0ucGljdG8tdGV4dCAuY29udGVudEdyaWQgPiBhOmJlZm9yZSB7XG4gICAgY29sb3I6ICNGRkY7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGNvbnRlbnQ6IFwiXFxmMGY2XCI7XG4gICAgZm9udC1mYW1pbHk6IGljb21vb247XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvcmRlci1yYWRpdXM6IDAlO1xuICAgIGhlaWdodDogM3JlbTtcbiAgICB3aWR0aDogM3JlbTtcbiAgICBsaW5lLWhlaWdodDogM3JlbTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBiYWNrZ3JvdW5kOiAjMGEwYTBhO1xuICAgIHotaW5kZXg6IDI7IH1cbiAgLmdyaWQtaXRlbS5iaWcge1xuICAgIGhlaWdodDogNTI4cHg7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07XG4gICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgIHBhZGRpbmc6IDA7IH1cbiAgICAuZ3JpZC1pdGVtLmJpZyBmaWd1cmUge1xuICAgICAgaGVpZ2h0OiA1MTJweDsgfVxuICAgIC5ncmlkLWl0ZW0uYmlnLnR5cGUxLCAuZ3JpZC1pdGVtLmJpZy50eXBlRXhwbywgLmdyaWQtaXRlbS5iaWd0eXBlNCB7XG4gICAgICBoZWlnaHQ6IDUyOHB4OyB9XG4gICAgLmdyaWQtaXRlbS5iaWcudHlwZTIsIC5ncmlkLWl0ZW0uYmlnLnR5cGUzIHtcbiAgICAgIGhlaWdodDogMTA1NnB4OyB9XG4gICAgLmdyaWQtaXRlbS5iaWcudHlwZTIgLmluZm9Db250IHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogNTI4cHg7IH1cbiAgICAuZ3JpZC1pdGVtLmJpZyAuaW5mb0NvbnQge1xuICAgICAgcGFkZGluZzogMjJweCA0NHB4OyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmdyaWQtaXRlbS5iaWcge1xuICAgICAgICBoZWlnaHQ6IDY0OHB4OyB9XG4gICAgICAgIC5ncmlkLWl0ZW0uYmlnIGZpZ3VyZSB7XG4gICAgICAgICAgaGVpZ2h0OiA2MzJweDsgfVxuICAgICAgICAuZ3JpZC1pdGVtLmJpZy50eXBlMSwgLmdyaWQtaXRlbS5iaWcudHlwZUV4cG8sIC5ncmlkLWl0ZW0uYmlndHlwZTQge1xuICAgICAgICAgIGhlaWdodDogNjQ4cHg7IH1cbiAgICAgICAgLmdyaWQtaXRlbS5iaWcudHlwZTIsIC5ncmlkLWl0ZW0uYmlnLnR5cGUzIHtcbiAgICAgICAgICBoZWlnaHQ6IDEyOTZweDsgfVxuICAgICAgICAuZ3JpZC1pdGVtLmJpZy50eXBlMiAuaW5mb0NvbnQge1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICB0b3A6IDY0OHB4OyB9XG4gICAgICAgIC5ncmlkLWl0ZW0uYmlnIC5pbmZvQ29udCB7XG4gICAgICAgICAgcGFkZGluZzogMjdweCA1NHB4OyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAuZ3JpZC1pdGVtLmJpZyB7XG4gICAgICAgIGhlaWdodDogNjQ4cHg7IH1cbiAgICAgICAgLmdyaWQtaXRlbS5iaWcgZmlndXJlIHtcbiAgICAgICAgICBoZWlnaHQ6IDYzMnB4OyB9XG4gICAgICAgIC5ncmlkLWl0ZW0uYmlnLnR5cGUxLCAuZ3JpZC1pdGVtLmJpZy50eXBlRXhwbywgLmdyaWQtaXRlbS5iaWd0eXBlNCB7XG4gICAgICAgICAgaGVpZ2h0OiA2NDhweDsgfVxuICAgICAgICAuZ3JpZC1pdGVtLmJpZy50eXBlMiwgLmdyaWQtaXRlbS5iaWcudHlwZTMge1xuICAgICAgICAgIGhlaWdodDogMTI5NnB4OyB9XG4gICAgICAgIC5ncmlkLWl0ZW0uYmlnLnR5cGUyIC5pbmZvQ29udCB7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIHRvcDogNjQ4cHg7IH1cbiAgICAgICAgLmdyaWQtaXRlbS5iaWcgLmluZm9Db250IHtcbiAgICAgICAgICBwYWRkaW5nOiAyN3B4IDU0cHg7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAgIC5ncmlkLWl0ZW0uYmlnIHtcbiAgICAgICAgaGVpZ2h0OiA3NjhweDsgfVxuICAgICAgICAuZ3JpZC1pdGVtLmJpZyBmaWd1cmUge1xuICAgICAgICAgIGhlaWdodDogNzUycHg7IH1cbiAgICAgICAgLmdyaWQtaXRlbS5iaWcudHlwZTEsIC5ncmlkLWl0ZW0uYmlnLnR5cGVFeHBvLCAuZ3JpZC1pdGVtLmJpZ3R5cGU0IHtcbiAgICAgICAgICBoZWlnaHQ6IDc2OHB4OyB9XG4gICAgICAgIC5ncmlkLWl0ZW0uYmlnLnR5cGUyLCAuZ3JpZC1pdGVtLmJpZy50eXBlMyB7XG4gICAgICAgICAgaGVpZ2h0OiAxNTM2cHg7IH1cbiAgICAgICAgLmdyaWQtaXRlbS5iaWcudHlwZTIgLmluZm9Db250IHtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgdG9wOiA3NjhweDsgfVxuICAgICAgICAuZ3JpZC1pdGVtLmJpZyAuaW5mb0NvbnQge1xuICAgICAgICAgIHBhZGRpbmc6IDMycHggNjRweDsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzogMiksIChtaW4tcmVzb2x1dGlvbjogMTkyZHBpKSB7XG4gICAgICAuZ3JpZC1pdGVtLmJpZyB7XG4gICAgICAgIGhlaWdodDogOTI4cHg7IH1cbiAgICAgICAgLmdyaWQtaXRlbS5iaWcgZmlndXJlIHtcbiAgICAgICAgICBoZWlnaHQ6IDkxMnB4OyB9XG4gICAgICAgIC5ncmlkLWl0ZW0uYmlnLnR5cGUxLCAuZ3JpZC1pdGVtLmJpZy50eXBlRXhwbywgLmdyaWQtaXRlbS5iaWd0eXBlNCB7XG4gICAgICAgICAgaGVpZ2h0OiA5MjhweDsgfVxuICAgICAgICAuZ3JpZC1pdGVtLmJpZy50eXBlMiwgLmdyaWQtaXRlbS5iaWcudHlwZTMge1xuICAgICAgICAgIGhlaWdodDogMTg1NnB4OyB9XG4gICAgICAgIC5ncmlkLWl0ZW0uYmlnLnR5cGUyIC5pbmZvQ29udCB7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIHRvcDogOTI4cHg7IH1cbiAgICAgICAgLmdyaWQtaXRlbS5iaWcgLmluZm9Db250IHtcbiAgICAgICAgICBwYWRkaW5nOiAzOC42NjY2N3B4IDc3LjMzMzMzcHg7IH0gfVxuICAgIC5ncmlkLWl0ZW0uYmlnOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgZmxvYXQ6IHJpZ2h0OyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmdyaWQtaXRlbS5iaWcge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMDsgfVxuICAgICAgICAuZ3JpZC1pdGVtLmJpZzpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICBmbG9hdDogcmlnaHQ7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5ncmlkLWl0ZW0uYmlnIHtcbiAgICAgICAgd2lkdGg6IDY2LjY2NjY3JTtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMDsgfVxuICAgICAgICAuZ3JpZC1pdGVtLmJpZzpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICBmbG9hdDogcmlnaHQ7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAgIC5ncmlkLWl0ZW0uYmlnIHtcbiAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMDsgfVxuICAgICAgICAuZ3JpZC1pdGVtLmJpZzpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICBmbG9hdDogcmlnaHQ7IH0gfVxuXG4udHlwZTEgLmluZm9Db250LCAudHlwZUV4cG8gLmluZm9Db250IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IDFyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjI0O1xuICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7IH1cblxuLnR5cGUxIC50YWd0aXRsZSwgLnR5cGVFeHBvIC50YWd0aXRsZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmbG9hdDogbm9uZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGxpbmUtaGVpZ2h0OiAxLjY7IH1cblxuLnR5cGUxLndpdGhDb250IC5pbmZvQ29udCwgLndpdGhDb250LnR5cGVFeHBvIC5pbmZvQ29udCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiAzNiU7IH1cblxuLnR5cGUxIGg1LCAudHlwZUV4cG8gaDUsIC50eXBlMSAucnN0IGg0LCAucnN0IC50eXBlMSBoNCwgLnR5cGVFeHBvIC5yc3QgaDQsIC5yc3QgLnR5cGVFeHBvIGg0LCAudHlwZTEgLnJzdCBoMywgLnJzdCAudHlwZTEgaDMsIC50eXBlRXhwbyAucnN0IGgzLCAucnN0IC50eXBlRXhwbyBoMywgLnR5cGUxIC5yc3QgLmgzLCAucnN0IC50eXBlMSAuaDMsIC50eXBlRXhwbyAucnN0IC5oMywgLnJzdCAudHlwZUV4cG8gLmgzLCAudHlwZTEgLnJzdCBoMiwgLnJzdCAudHlwZTEgaDIsIC50eXBlRXhwbyAucnN0IGgyLCAucnN0IC50eXBlRXhwbyBoMiwgLnR5cGUxIC5yc3QgaDEsIC5yc3QgLnR5cGUxIGgxLCAudHlwZUV4cG8gLnJzdCBoMSwgLnJzdCAudHlwZUV4cG8gaDEsIC50eXBlMSAucnN0IC50aXRsZS0xLCAucnN0IC50eXBlMSAudGl0bGUtMSwgLnR5cGVFeHBvIC5yc3QgLnRpdGxlLTEsIC5yc3QgLnR5cGVFeHBvIC50aXRsZS0xLCAudHlwZTEgLnJzdCAudGl0bGUtMiwgLnJzdCAudHlwZTEgLnRpdGxlLTIsIC50eXBlRXhwbyAucnN0IC50aXRsZS0yLCAucnN0IC50eXBlRXhwbyAudGl0bGUtMiwgLnR5cGUxIC5yc3QgLnRpdGxlLTMsIC5yc3QgLnR5cGUxIC50aXRsZS0zLCAudHlwZUV4cG8gLnJzdCAudGl0bGUtMywgLnJzdCAudHlwZUV4cG8gLnRpdGxlLTMsIC50eXBlMSAucnN0IC50aXRsZS00LCAucnN0IC50eXBlMSAudGl0bGUtNCwgLnR5cGVFeHBvIC5yc3QgLnRpdGxlLTQsIC5yc3QgLnR5cGVFeHBvIC50aXRsZS00LCAudHlwZTEgLnRpdGxlLTUsIC50eXBlRXhwbyAudGl0bGUtNSB7XG4gIG1hcmdpbjogMDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZsb2F0OiBub25lO1xuICBjb2xvcjogI2RkMzMzMzsgfVxuICAudHlwZTEgaDUgc3BhbiwgLnR5cGVFeHBvIGg1IHNwYW4sIC50eXBlMSAucnN0IGg0IHNwYW4sIC5yc3QgLnR5cGUxIGg0IHNwYW4sIC50eXBlRXhwbyAucnN0IGg0IHNwYW4sIC5yc3QgLnR5cGVFeHBvIGg0IHNwYW4sIC50eXBlMSAucnN0IGgzIHNwYW4sIC5yc3QgLnR5cGUxIGgzIHNwYW4sIC50eXBlRXhwbyAucnN0IGgzIHNwYW4sIC5yc3QgLnR5cGVFeHBvIGgzIHNwYW4sIC50eXBlMSAucnN0IC5oMyBzcGFuLCAucnN0IC50eXBlMSAuaDMgc3BhbiwgLnR5cGVFeHBvIC5yc3QgLmgzIHNwYW4sIC5yc3QgLnR5cGVFeHBvIC5oMyBzcGFuLCAudHlwZTEgLnJzdCBoMiBzcGFuLCAucnN0IC50eXBlMSBoMiBzcGFuLCAudHlwZUV4cG8gLnJzdCBoMiBzcGFuLCAucnN0IC50eXBlRXhwbyBoMiBzcGFuLCAudHlwZTEgLnJzdCBoMSBzcGFuLCAucnN0IC50eXBlMSBoMSBzcGFuLCAudHlwZUV4cG8gLnJzdCBoMSBzcGFuLCAucnN0IC50eXBlRXhwbyBoMSBzcGFuLCAudHlwZTEgLnJzdCAudGl0bGUtMSBzcGFuLCAucnN0IC50eXBlMSAudGl0bGUtMSBzcGFuLCAudHlwZUV4cG8gLnJzdCAudGl0bGUtMSBzcGFuLCAucnN0IC50eXBlRXhwbyAudGl0bGUtMSBzcGFuLCAudHlwZTEgLnJzdCAudGl0bGUtMiBzcGFuLCAucnN0IC50eXBlMSAudGl0bGUtMiBzcGFuLCAudHlwZUV4cG8gLnJzdCAudGl0bGUtMiBzcGFuLCAucnN0IC50eXBlRXhwbyAudGl0bGUtMiBzcGFuLCAudHlwZTEgLnJzdCAudGl0bGUtMyBzcGFuLCAucnN0IC50eXBlMSAudGl0bGUtMyBzcGFuLCAudHlwZUV4cG8gLnJzdCAudGl0bGUtMyBzcGFuLCAucnN0IC50eXBlRXhwbyAudGl0bGUtMyBzcGFuLCAudHlwZTEgLnJzdCAudGl0bGUtNCBzcGFuLCAucnN0IC50eXBlMSAudGl0bGUtNCBzcGFuLCAudHlwZUV4cG8gLnJzdCAudGl0bGUtNCBzcGFuLCAucnN0IC50eXBlRXhwbyAudGl0bGUtNCBzcGFuLCAudHlwZTEgLnRpdGxlLTUgc3BhbiwgLnR5cGVFeHBvIC50aXRsZS01IHNwYW4ge1xuICAgIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gICAgYmFja2dyb3VuZDogI2Y3ZjdmNztcbiAgICBwYWRkaW5nOiAwLjVyZW07XG4gICAgcGFkZGluZy10b3A6IDA7XG4gICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgLXdlYmtpdC1ib3gtZGVjb3JhdGlvbi1icmVhazogY2xvbmU7XG4gICAgLW1zLWJveC1kZWNvcmF0aW9uLWJyZWFrOiBjbG9uZTtcbiAgICAtby1ib3gtZGVjb3JhdGlvbi1icmVhazogY2xvbmU7XG4gICAgYm94LWRlY29yYXRpb24tYnJlYWs6IGNsb25lOyB9XG5cbi50eXBlMSBoMiwgLnR5cGVFeHBvIGgyLCAudHlwZTEgLnJzdCBoMSwgLnJzdCAudHlwZTEgaDEsIC50eXBlRXhwbyAucnN0IGgxLCAucnN0IC50eXBlRXhwbyBoMSwgLnR5cGUxIC5yc3QgLnRpdGxlLTEsIC5yc3QgLnR5cGUxIC50aXRsZS0xLCAudHlwZUV4cG8gLnJzdCAudGl0bGUtMSwgLnJzdCAudHlwZUV4cG8gLnRpdGxlLTEsIC50eXBlMSAudGl0bGUtMiwgLnR5cGVFeHBvIC50aXRsZS0yIHtcbiAgZGlzcGxheTogaW5saW5lO1xuICBiYWNrZ3JvdW5kOiAjMGEwYTBhO1xuICBjb2xvcjogd2hpdGU7XG4gIGZvbnQtd2VpZ2h0OiA4MDA7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICBsaW5lLWhlaWdodDogMS4zMTtcbiAgcGFkZGluZzogMC41cmVtO1xuICBwYWRkaW5nLXRvcDogMDtcbiAgcGFkZGluZy1ib3R0b206IDA7XG4gIC13ZWJraXQtYm94LWRlY29yYXRpb24tYnJlYWs6IGNsb25lO1xuICAtbXMtYm94LWRlY29yYXRpb24tYnJlYWs6IGNsb25lO1xuICAtby1ib3gtZGVjb3JhdGlvbi1icmVhazogY2xvbmU7XG4gIGJveC1kZWNvcmF0aW9uLWJyZWFrOiBjbG9uZTsgfVxuICAudHlwZTEgaDIgYSwgLnR5cGVFeHBvIGgyIGEsIC50eXBlMSAucnN0IGgxIGEsIC5yc3QgLnR5cGUxIGgxIGEsIC50eXBlRXhwbyAucnN0IGgxIGEsIC5yc3QgLnR5cGVFeHBvIGgxIGEsIC50eXBlMSAucnN0IC50aXRsZS0xIGEsIC5yc3QgLnR5cGUxIC50aXRsZS0xIGEsIC50eXBlRXhwbyAucnN0IC50aXRsZS0xIGEsIC5yc3QgLnR5cGVFeHBvIC50aXRsZS0xIGEsIC50eXBlMSAudGl0bGUtMiBhLCAudHlwZUV4cG8gLnRpdGxlLTIgYSB7XG4gICAgY29sb3I6IHdoaXRlOyB9XG5cbi50eXBlMSAuZGVzYywgLnR5cGVFeHBvIC5kZXNjLCAudHlwZTEgLnNob3J0ZGVzYywgLnR5cGVFeHBvIC5zaG9ydGRlc2Mge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi50eXBlMiAuY29udGVudEdyaWQge1xuICBib3JkZXItYm90dG9tOiA0cHggc29saWQgI0VDRUNFRjsgfVxuXG4udHlwZTIgLmluZm9Db250IHtcbiAgbGluZS1oZWlnaHQ6IDEuMjQ7IH1cblxuLnR5cGUyIC50YWd0aXRsZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmbG9hdDogbGVmdDtcbiAgd2lkdGg6IDEwMCU7XG4gIGxpbmUtaGVpZ2h0OiAxLjY7IH1cblxuLnR5cGUyIGg1LCAudHlwZTIgLnJzdCBoNCwgLnJzdCAudHlwZTIgaDQsIC50eXBlMiAucnN0IGgzLCAucnN0IC50eXBlMiBoMywgLnR5cGUyIC5yc3QgLmgzLCAucnN0IC50eXBlMiAuaDMsIC50eXBlMiAucnN0IGgyLCAucnN0IC50eXBlMiBoMiwgLnR5cGUyIC5yc3QgaDEsIC5yc3QgLnR5cGUyIGgxLCAudHlwZTIgLnJzdCAudGl0bGUtMSwgLnJzdCAudHlwZTIgLnRpdGxlLTEsIC50eXBlMiAucnN0IC50aXRsZS0yLCAucnN0IC50eXBlMiAudGl0bGUtMiwgLnR5cGUyIC5yc3QgLnRpdGxlLTMsIC5yc3QgLnR5cGUyIC50aXRsZS0zLCAudHlwZTIgLnJzdCAudGl0bGUtNCwgLnJzdCAudHlwZTIgLnRpdGxlLTQsIC50eXBlMiAudGl0bGUtNSB7XG4gIG1hcmdpbjogMDtcbiAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IH1cblxuLnR5cGUyIGgyLCAudHlwZTIgLnJzdCBoMSwgLnJzdCAudHlwZTIgaDEsIC50eXBlMiAucnN0IC50aXRsZS0xLCAucnN0IC50eXBlMiAudGl0bGUtMSwgLnR5cGUyIC50aXRsZS0yIHtcbiAgbGluZS1oZWlnaHQ6IDEuMTI1O1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgZm9udC13ZWlnaHQ6IDIwMDsgfVxuXG4udHlwZTIgLnNob3J0ZGVzYyB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLnR5cGUzIC5jb250ZW50R3JpZCwgLnR5cGU0IC5jb250ZW50R3JpZCB7XG4gIGJvcmRlci1ib3R0b206IDRweCBzb2xpZCAjRUNFQ0VGOyB9XG5cbi50eXBlMyAuaW5mb0NvbnQsIC50eXBlNCAuaW5mb0NvbnQge1xuICBsaW5lLWhlaWdodDogMS4yNDsgfVxuXG4udHlwZTMgLnRhZ3RpdGxlLCAudHlwZTQgLnRhZ3RpdGxlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZsb2F0OiBsZWZ0O1xuICB3aWR0aDogMTAwJTtcbiAgbGluZS1oZWlnaHQ6IDEuNjsgfVxuXG4udHlwZTMgaDUsIC50eXBlMyAucnN0IGg0LCAucnN0IC50eXBlMyBoNCwgLnR5cGUzIC5yc3QgaDMsIC5yc3QgLnR5cGUzIGgzLCAudHlwZTMgLnJzdCAuaDMsIC5yc3QgLnR5cGUzIC5oMywgLnR5cGUzIC5yc3QgaDIsIC5yc3QgLnR5cGUzIGgyLCAudHlwZTMgLnJzdCBoMSwgLnJzdCAudHlwZTMgaDEsIC50eXBlMyAucnN0IC50aXRsZS0xLCAucnN0IC50eXBlMyAudGl0bGUtMSwgLnR5cGUzIC5yc3QgLnRpdGxlLTIsIC5yc3QgLnR5cGUzIC50aXRsZS0yLCAudHlwZTMgLnJzdCAudGl0bGUtMywgLnJzdCAudHlwZTMgLnRpdGxlLTMsIC50eXBlMyAucnN0IC50aXRsZS00LCAucnN0IC50eXBlMyAudGl0bGUtNCwgLnR5cGUzIC50aXRsZS01LCAudHlwZTQgaDUsIC50eXBlNCAucnN0IGg0LCAucnN0IC50eXBlNCBoNCwgLnR5cGU0IC5yc3QgaDMsIC5yc3QgLnR5cGU0IGgzLCAudHlwZTQgLnJzdCAuaDMsIC5yc3QgLnR5cGU0IC5oMywgLnR5cGU0IC5yc3QgaDIsIC5yc3QgLnR5cGU0IGgyLCAudHlwZTQgLnJzdCBoMSwgLnJzdCAudHlwZTQgaDEsIC50eXBlNCAucnN0IC50aXRsZS0xLCAucnN0IC50eXBlNCAudGl0bGUtMSwgLnR5cGU0IC5yc3QgLnRpdGxlLTIsIC5yc3QgLnR5cGU0IC50aXRsZS0yLCAudHlwZTQgLnJzdCAudGl0bGUtMywgLnJzdCAudHlwZTQgLnRpdGxlLTMsIC50eXBlNCAucnN0IC50aXRsZS00LCAucnN0IC50eXBlNCAudGl0bGUtNCwgLnR5cGU0IC50aXRsZS01IHtcbiAgbWFyZ2luOiAwO1xuICBsaW5lLWhlaWdodDogMS42O1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgfVxuXG4udHlwZTMgaDIsIC50eXBlMyAucnN0IGgxLCAucnN0IC50eXBlMyBoMSwgLnR5cGUzIC5yc3QgLnRpdGxlLTEsIC5yc3QgLnR5cGUzIC50aXRsZS0xLCAudHlwZTMgLnRpdGxlLTIsIC50eXBlNCBoMiwgLnR5cGU0IC5yc3QgaDEsIC5yc3QgLnR5cGU0IGgxLCAudHlwZTQgLnJzdCAudGl0bGUtMSwgLnJzdCAudHlwZTQgLnRpdGxlLTEsIC50eXBlNCAudGl0bGUtMiB7XG4gIGxpbmUtaGVpZ2h0OiAxLjEyNTtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIGZvbnQtd2VpZ2h0OiAxMDA7IH1cblxuLnR5cGUzIC5kZXNjLCAudHlwZTMgLnNob3J0ZGVzYywgLnR5cGU0IC5kZXNjLCAudHlwZTQgLnNob3J0ZGVzYyB7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi50eXBlNCAuc2hvcnRkZXNjIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4uZ3JpZC1pdGVtLS13aWR0aDIge1xuICB3aWR0aDogMjAwcHg7IH1cblxuLnR5cGVFeHBvIC5kZXNjLCAudHlwZUV4cG8gLnNob3J0ZGVzYyB7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi50eXBlRXhwby53aXRoQ29udCAuaW5mb0NvbnQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogNTAlO1xuICB3aWR0aDogMTAwJTsgfVxuICAudHlwZUV4cG8ud2l0aENvbnQgLmluZm9Db250IC5kZXNjIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIC50eXBlRXhwby53aXRoQ29udCAuaW5mb0NvbnQgLnNob3J0ZGVzYyB7XG4gICAgbWFyZ2luLXRvcDogMXJlbTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgdG9wOiAxMDAlOyB9XG5cbiNjb250cm9scywgI2NvbnRyb2xzX2xpa2Uge1xuICBtYXJnaW4tbGVmdDogMXJlbTtcbiAgbWFyZ2luLXJpZ2h0OiAxcmVtO1xuICBtYXJnaW4tdG9wOiAxcmVtO1xuICBmbG9hdDogbGVmdDtcbiAgY2xlYXI6IGJvdGg7XG4gIHdpZHRoOiBjYWxjKDEwMCUgLSAycmVtKTsgfVxuICAjY29udHJvbHMgYSwgI2NvbnRyb2xzX2xpa2UgYSB7XG4gICAgYmFja2dyb3VuZDogIzBhMGEwYTtcbiAgICBjb2xvcjogI2Y3ZjdmNztcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIG1hcmdpbi1yaWdodDogMC4yNXJlbTsgfVxuICAgICNjb250cm9scyBhLmlzLWNoZWNrZWQsICNjb250cm9sc19saWtlIGEuaXMtY2hlY2tlZCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGQzMzMzOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAgICNjb250cm9scyAubWVudSBsaSwgI2NvbnRyb2xzX2xpa2UgLm1lbnUgbGkge1xuICAgICAgZGlzcGxheTogYmxvY2s7IH0gfVxuICAjY29udHJvbHMgW2RhdGEtZmlsdGVyPVwibm9uZVwiXSwgI2NvbnRyb2xzX2xpa2UgW2RhdGEtZmlsdGVyPVwibm9uZVwiXSB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuXG4jdGhlbWVDb250cm9scywgI2NvbnRyb2xzX2xpa2Uge1xuICBtYXJnaW4tbGVmdDogMXJlbTtcbiAgbWFyZ2luLXJpZ2h0OiAxcmVtO1xuICBtYXJnaW4tdG9wOiAxcmVtO1xuICBmbG9hdDogbGVmdDtcbiAgY2xlYXI6IGJvdGg7XG4gIHdpZHRoOiBjYWxjKDEwMCUgLSAycmVtKTsgfVxuICAjdGhlbWVDb250cm9scyBhLCAjY29udHJvbHNfbGlrZSBhIHtcbiAgICBiYWNrZ3JvdW5kOiAjMGEwYTBhO1xuICAgIGNvbG9yOiAjZjdmN2Y3O1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgbWFyZ2luLXJpZ2h0OiAwLjI1cmVtOyB9XG4gICAgI3RoZW1lQ29udHJvbHMgYS5pcy1jaGVja2VkLCAjY29udHJvbHNfbGlrZSBhLmlzLWNoZWNrZWQge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2RkMzMzMzsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgI3RoZW1lQ29udHJvbHMgLm1lbnUsICNjb250cm9sc19saWtlIC5tZW51IHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgICAgIGZsZXgtd3JhcDogd3JhcDsgfVxuICAgICAgI3RoZW1lQ29udHJvbHMgLm1lbnUgbGksICNjb250cm9sc19saWtlIC5tZW51IGxpIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNHB4OyB9XG4gICAgICAgICN0aGVtZUNvbnRyb2xzIC5tZW51IGxpIGEsICNjb250cm9sc19saWtlIC5tZW51IGxpIGEge1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAgICN0aGVtZUNvbnRyb2xzIC5tZW51IGxpLCAjY29udHJvbHNfbGlrZSAubWVudSBsaSB7XG4gICAgICBkaXNwbGF5OiBibG9jazsgfSB9XG4gICN0aGVtZUNvbnRyb2xzIFtkYXRhLWZpbHRlcj1cIm5vbmVcIl0sICNjb250cm9sc19saWtlIFtkYXRhLWZpbHRlcj1cIm5vbmVcIl0ge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cblxuLmZpZnRlZW4ge1xuICBtYXgtd2lkdGg6IDc1cmVtO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XG4gIC5maWZ0ZWVuOjpiZWZvcmUsIC5maWZ0ZWVuOjphZnRlciB7XG4gICAgY29udGVudDogJyAnO1xuICAgIGRpc3BsYXk6IHRhYmxlOyB9XG4gIC5maWZ0ZWVuOjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgLmZpZnRlZW4gLmdyaWQtaXRlbSB7XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XG4gIC5maWZ0ZWVuIC5maWZ0ZWVuMSB7XG4gICAgd2lkdGg6IDYuNjY2NjclO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtO1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTsgfVxuICAgIC5maWZ0ZWVuIC5maWZ0ZWVuMTpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgIGZsb2F0OiByaWdodDsgfVxuICAuZmlmdGVlbiAuZmlmdGVlbjMge1xuICAgIHdpZHRoOiAzMy4zMzMzMyU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07XG4gICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtOyB9XG4gICAgLmZpZnRlZW4gLmZpZnRlZW4zOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgZmxvYXQ6IHJpZ2h0OyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLmZpZnRlZW4gLmZpZnRlZW4zIHtcbiAgICAgICAgd2lkdGg6IDIwJTtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07IH1cbiAgICAgICAgLmZpZnRlZW4gLmZpZnRlZW4zOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgIGZsb2F0OiByaWdodDsgfSB9XG5cbi8qRm9udHMgbGlicmFyeSovXG4vKkZvbnRzIGxpYnJhcnkqL1xuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnaWNvbW9vbic7XG4gIHNyYzogdXJsKFwiLi4vZm9udHMvaWNvbW9vbi5lb3Q/N3FxamRzXCIpO1xuICBzcmM6IHVybChcIi4uL2ZvbnRzL2ljb21vb24uZW90PzdxcWpkcyNpZWZpeFwiKSBmb3JtYXQoXCJlbWJlZGRlZC1vcGVudHlwZVwiKSwgdXJsKFwiLi4vZm9udHMvaWNvbW9vbi53b2ZmMj83cXFqMnNcIikgZm9ybWF0KFwid29mZjJcIiksIHVybChcIi4uL2ZvbnRzL2ljb21vb24udHRmPzdxcWoyc1wiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKSwgdXJsKFwiLi4vZm9udHMvaWNvbW9vbi53b2ZmPzdxcWoyc1wiKSBmb3JtYXQoXCJ3b2ZmXCIpLCB1cmwoXCIuLi9mb250cy9pY29tb29uLnN2Zz83cXFqMnMjaWNvbW9vblwiKSBmb3JtYXQoXCJzdmdcIik7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDsgfVxuXG4vKlxuICogRGVmYXVsdCB1c2FnZSwgZm9yIHNlbGYgY2xvc2VkIGVsZW1lbnQgbGlrZSBpbiA8aSBjbGFzcz1cIi4uXCI+PC9pPlxuICovXG4uaWNvbmNvbnQsIC5zbGljay1wcmV2LCAuc2xpY2stbmV4dCwgW2NsYXNzXj1cImljb24tXCJdOm5vdChwKTpub3QoZGl2KTpub3QoaDEpOm5vdCgudGl0bGUtMSk6bm90KFxuaDIpOm5vdChcbi50aXRsZS0yKTpub3QoXG5oMyk6bm90KFxuLmgzKTpub3QoXG4udGl0bGUtMyk6bm90KFxuaDQpOm5vdChcbi50aXRsZS00KSxcbltjbGFzcyo9XCIgaWNvbi1cIl06bm90KHApOm5vdChkaXYpOm5vdChoMSk6bm90KC50aXRsZS0xKTpub3QoXG5oMik6bm90KFxuLnRpdGxlLTIpOm5vdChcbmgzKTpub3QoXG4uaDMpOm5vdChcbi50aXRsZS0zKTpub3QoXG5oNCk6bm90KFxuLnRpdGxlLTQpLCBbY2xhc3NePVwiaWNvbi1cIl06YmVmb3JlLCBbY2xhc3MqPVwiIGljb24tXCJdOmJlZm9yZSB7XG4gIGZvbnQtZmFtaWx5OiAnaWNvbW9vbic7XG4gIHNwZWFrOiBub25lO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZvbnQtdmFyaWFudDogbm9ybWFsO1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlOyB9XG4gIC5pY29uY29udC5pY29uLTJ4LCAuaWNvbi0yeC5zbGljay1wcmV2LCAuaWNvbi0yeC5zbGljay1uZXh0LCBbY2xhc3NePVwiaWNvbi1cIl06bm90KHApOm5vdChkaXYpOm5vdChoMSk6bm90KC50aXRsZS0xKTpub3QoXG4gIGgyKTpub3QoXG4gIC50aXRsZS0yKTpub3QoXG4gIGgzKTpub3QoXG4gIC5oMyk6bm90KFxuICAudGl0bGUtMyk6bm90KFxuICBoNCk6bm90KFxuICAudGl0bGUtNCkuaWNvbi0yeCxcbiAgW2NsYXNzKj1cIiBpY29uLVwiXTpub3QocCk6bm90KGRpdik6bm90KGgxKTpub3QoLnRpdGxlLTEpOm5vdChcbiAgaDIpOm5vdChcbiAgLnRpdGxlLTIpOm5vdChcbiAgaDMpOm5vdChcbiAgLmgzKTpub3QoXG4gIC50aXRsZS0zKTpub3QoXG4gIGg0KTpub3QoXG4gIC50aXRsZS00KS5pY29uLTJ4LCBbY2xhc3NePVwiaWNvbi1cIl06YmVmb3JlLmljb24tMngsIFtjbGFzcyo9XCIgaWNvbi1cIl06YmVmb3JlLmljb24tMngge1xuICAgIGZvbnQtc2l6ZTogMnJlbTsgfVxuICAuaWNvbmNvbnQuaWNvbi0zeCwgLmljb24tM3guc2xpY2stcHJldiwgLmljb24tM3guc2xpY2stbmV4dCwgW2NsYXNzXj1cImljb24tXCJdOm5vdChwKTpub3QoZGl2KTpub3QoaDEpOm5vdCgudGl0bGUtMSk6bm90KFxuICBoMik6bm90KFxuICAudGl0bGUtMik6bm90KFxuICBoMyk6bm90KFxuICAuaDMpOm5vdChcbiAgLnRpdGxlLTMpOm5vdChcbiAgaDQpOm5vdChcbiAgLnRpdGxlLTQpLmljb24tM3gsXG4gIFtjbGFzcyo9XCIgaWNvbi1cIl06bm90KHApOm5vdChkaXYpOm5vdChoMSk6bm90KC50aXRsZS0xKTpub3QoXG4gIGgyKTpub3QoXG4gIC50aXRsZS0yKTpub3QoXG4gIGgzKTpub3QoXG4gIC5oMyk6bm90KFxuICAudGl0bGUtMyk6bm90KFxuICBoNCk6bm90KFxuICAudGl0bGUtNCkuaWNvbi0zeCwgW2NsYXNzXj1cImljb24tXCJdOmJlZm9yZS5pY29uLTN4LCBbY2xhc3MqPVwiIGljb24tXCJdOmJlZm9yZS5pY29uLTN4IHtcbiAgICBmb250LXNpemU6IDNyZW07IH1cbiAgLmljb25jb250Lmljb24tNHgsIC5pY29uLTR4LnNsaWNrLXByZXYsIC5pY29uLTR4LnNsaWNrLW5leHQsIFtjbGFzc149XCJpY29uLVwiXTpub3QocCk6bm90KGRpdik6bm90KGgxKTpub3QoLnRpdGxlLTEpOm5vdChcbiAgaDIpOm5vdChcbiAgLnRpdGxlLTIpOm5vdChcbiAgaDMpOm5vdChcbiAgLmgzKTpub3QoXG4gIC50aXRsZS0zKTpub3QoXG4gIGg0KTpub3QoXG4gIC50aXRsZS00KS5pY29uLTR4LFxuICBbY2xhc3MqPVwiIGljb24tXCJdOm5vdChwKTpub3QoZGl2KTpub3QoaDEpOm5vdCgudGl0bGUtMSk6bm90KFxuICBoMik6bm90KFxuICAudGl0bGUtMik6bm90KFxuICBoMyk6bm90KFxuICAuaDMpOm5vdChcbiAgLnRpdGxlLTMpOm5vdChcbiAgaDQpOm5vdChcbiAgLnRpdGxlLTQpLmljb24tNHgsIFtjbGFzc149XCJpY29uLVwiXTpiZWZvcmUuaWNvbi00eCwgW2NsYXNzKj1cIiBpY29uLVwiXTpiZWZvcmUuaWNvbi00eCB7XG4gICAgZm9udC1zaXplOiA0cmVtOyB9XG4gIC5pY29uY29udC5pY29uLTV4LCAuaWNvbi01eC5zbGljay1wcmV2LCAuaWNvbi01eC5zbGljay1uZXh0LCBbY2xhc3NePVwiaWNvbi1cIl06bm90KHApOm5vdChkaXYpOm5vdChoMSk6bm90KC50aXRsZS0xKTpub3QoXG4gIGgyKTpub3QoXG4gIC50aXRsZS0yKTpub3QoXG4gIGgzKTpub3QoXG4gIC5oMyk6bm90KFxuICAudGl0bGUtMyk6bm90KFxuICBoNCk6bm90KFxuICAudGl0bGUtNCkuaWNvbi01eCxcbiAgW2NsYXNzKj1cIiBpY29uLVwiXTpub3QocCk6bm90KGRpdik6bm90KGgxKTpub3QoLnRpdGxlLTEpOm5vdChcbiAgaDIpOm5vdChcbiAgLnRpdGxlLTIpOm5vdChcbiAgaDMpOm5vdChcbiAgLmgzKTpub3QoXG4gIC50aXRsZS0zKTpub3QoXG4gIGg0KTpub3QoXG4gIC50aXRsZS00KS5pY29uLTV4LCBbY2xhc3NePVwiaWNvbi1cIl06YmVmb3JlLmljb24tNXgsIFtjbGFzcyo9XCIgaWNvbi1cIl06YmVmb3JlLmljb24tNXgge1xuICAgIGZvbnQtc2l6ZTogNXJlbTsgfVxuICAuaWNvbmNvbnQuaWNvbi1ibG9jaywgLmljb24tYmxvY2suc2xpY2stcHJldiwgLmljb24tYmxvY2suc2xpY2stbmV4dCwgW2NsYXNzXj1cImljb24tXCJdOm5vdChwKTpub3QoZGl2KTpub3QoaDEpOm5vdCgudGl0bGUtMSk6bm90KFxuICBoMik6bm90KFxuICAudGl0bGUtMik6bm90KFxuICBoMyk6bm90KFxuICAuaDMpOm5vdChcbiAgLnRpdGxlLTMpOm5vdChcbiAgaDQpOm5vdChcbiAgLnRpdGxlLTQpLmljb24tYmxvY2ssXG4gIFtjbGFzcyo9XCIgaWNvbi1cIl06bm90KHApOm5vdChkaXYpOm5vdChoMSk6bm90KC50aXRsZS0xKTpub3QoXG4gIGgyKTpub3QoXG4gIC50aXRsZS0yKTpub3QoXG4gIGgzKTpub3QoXG4gIC5oMyk6bm90KFxuICAudGl0bGUtMyk6bm90KFxuICBoNCk6bm90KFxuICAudGl0bGUtNCkuaWNvbi1ibG9jaywgW2NsYXNzXj1cImljb24tXCJdOmJlZm9yZS5pY29uLWJsb2NrLCBbY2xhc3MqPVwiIGljb24tXCJdOmJlZm9yZS5pY29uLWJsb2NrIHtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuXG4vKlxuICogSWNvbiBpbnNlcnQgaW4gYSBjb250YWluZXJcbiAqXG4gKiBDb250cmFyeSB0byB0aGUgZGVmYXVsdCBzZWxlY3RvciwgdGhpcyBkb2VzIG5vdCBwZXJ0dXJiIGNvbnRhaW5lclxuICogZWxlbWVudHMgZm9udCwgc28gaXQncyBzYWZlIHRvIGhhdmUgdGV4dCBpbiBjb250YWluZXJcbiAqL1xucFtjbGFzc149XCJpY29uLVwiXTpiZWZvcmUsIHBbY2xhc3MqPVwiIGljb24tXCJdOmJlZm9yZSwgZGl2W2NsYXNzXj1cImljb24tXCJdOmJlZm9yZSwgZGl2W2NsYXNzKj1cIiBpY29uLVwiXTpiZWZvcmUsIGgxW2NsYXNzXj1cImljb24tXCJdOmJlZm9yZSwgLnRpdGxlLTFbY2xhc3NePVwiaWNvbi1cIl06YmVmb3JlLCBoMVtjbGFzcyo9XCIgaWNvbi1cIl06YmVmb3JlLCAudGl0bGUtMVtjbGFzcyo9XCIgaWNvbi1cIl06YmVmb3JlLCBoMltjbGFzc149XCJpY29uLVwiXTpiZWZvcmUsIC5yc3QgaDFbY2xhc3NePVwiaWNvbi1cIl06YmVmb3JlLCAucnN0IC50aXRsZS0xW2NsYXNzXj1cImljb24tXCJdOmJlZm9yZSwgLnRpdGxlLTJbY2xhc3NePVwiaWNvbi1cIl06YmVmb3JlLCBoMltjbGFzcyo9XCIgaWNvbi1cIl06YmVmb3JlLCAucnN0IGgxW2NsYXNzKj1cIiBpY29uLVwiXTpiZWZvcmUsIC5yc3QgLnRpdGxlLTFbY2xhc3MqPVwiIGljb24tXCJdOmJlZm9yZSwgLnRpdGxlLTJbY2xhc3MqPVwiIGljb24tXCJdOmJlZm9yZSwgaDNbY2xhc3NePVwiaWNvbi1cIl06YmVmb3JlLCAuaDNbY2xhc3NePVwiaWNvbi1cIl06YmVmb3JlLCAucnN0IGgyW2NsYXNzXj1cImljb24tXCJdOmJlZm9yZSwgLnJzdCBoMVtjbGFzc149XCJpY29uLVwiXTpiZWZvcmUsIC5yc3QgLnRpdGxlLTFbY2xhc3NePVwiaWNvbi1cIl06YmVmb3JlLCAucnN0IC50aXRsZS0yW2NsYXNzXj1cImljb24tXCJdOmJlZm9yZSwgLnRpdGxlLTNbY2xhc3NePVwiaWNvbi1cIl06YmVmb3JlLCBoM1tjbGFzcyo9XCIgaWNvbi1cIl06YmVmb3JlLCAuaDNbY2xhc3MqPVwiIGljb24tXCJdOmJlZm9yZSwgLnJzdCBoMltjbGFzcyo9XCIgaWNvbi1cIl06YmVmb3JlLCAucnN0IGgxW2NsYXNzKj1cIiBpY29uLVwiXTpiZWZvcmUsIC5yc3QgLnRpdGxlLTFbY2xhc3MqPVwiIGljb24tXCJdOmJlZm9yZSwgLnJzdCAudGl0bGUtMltjbGFzcyo9XCIgaWNvbi1cIl06YmVmb3JlLCAudGl0bGUtM1tjbGFzcyo9XCIgaWNvbi1cIl06YmVmb3JlLCBoNFtjbGFzc149XCJpY29uLVwiXTpiZWZvcmUsIC5yc3QgaDNbY2xhc3NePVwiaWNvbi1cIl06YmVmb3JlLCAucnN0IC5oM1tjbGFzc149XCJpY29uLVwiXTpiZWZvcmUsIC5yc3QgaDJbY2xhc3NePVwiaWNvbi1cIl06YmVmb3JlLCAucnN0IGgxW2NsYXNzXj1cImljb24tXCJdOmJlZm9yZSwgLnJzdCAudGl0bGUtMVtjbGFzc149XCJpY29uLVwiXTpiZWZvcmUsIC5yc3QgLnRpdGxlLTJbY2xhc3NePVwiaWNvbi1cIl06YmVmb3JlLCAucnN0IC50aXRsZS0zW2NsYXNzXj1cImljb24tXCJdOmJlZm9yZSwgLnRpdGxlLTRbY2xhc3NePVwiaWNvbi1cIl06YmVmb3JlLCBoNFtjbGFzcyo9XCIgaWNvbi1cIl06YmVmb3JlLCAucnN0IGgzW2NsYXNzKj1cIiBpY29uLVwiXTpiZWZvcmUsIC5yc3QgLmgzW2NsYXNzKj1cIiBpY29uLVwiXTpiZWZvcmUsIC5yc3QgaDJbY2xhc3MqPVwiIGljb24tXCJdOmJlZm9yZSwgLnJzdCBoMVtjbGFzcyo9XCIgaWNvbi1cIl06YmVmb3JlLCAucnN0IC50aXRsZS0xW2NsYXNzKj1cIiBpY29uLVwiXTpiZWZvcmUsIC5yc3QgLnRpdGxlLTJbY2xhc3MqPVwiIGljb24tXCJdOmJlZm9yZSwgLnJzdCAudGl0bGUtM1tjbGFzcyo9XCIgaWNvbi1cIl06YmVmb3JlLCAudGl0bGUtNFtjbGFzcyo9XCIgaWNvbi1cIl06YmVmb3JlLCAqW2NsYXNzXj1cImljb24tXCJdOmJlZm9yZSwgKltjbGFzcyo9XCIgaWNvbi1cIl06YmVmb3JlIHtcbiAgZm9udC1mYW1pbHk6ICdpY29tb29uJztcbiAgc3BlYWs6IG5vbmU7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZm9udC12YXJpYW50OiBub3JtYWw7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICBsaW5lLWhlaWdodDogMTtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7IH1cblxucFtjbGFzc149XCJpY29uLVwiXS5pY29uLTJ4OjpiZWZvcmUsIHBbY2xhc3MqPVwiIGljb24tXCJdLmljb24tMng6OmJlZm9yZSwgZGl2W2NsYXNzXj1cImljb24tXCJdLmljb24tMng6OmJlZm9yZSwgZGl2W2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLTJ4OjpiZWZvcmUsIGgxW2NsYXNzXj1cImljb24tXCJdLmljb24tMng6OmJlZm9yZSwgLnRpdGxlLTFbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi0yeDo6YmVmb3JlLCBoMVtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi0yeDo6YmVmb3JlLCAudGl0bGUtMVtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi0yeDo6YmVmb3JlLCBoMltjbGFzc149XCJpY29uLVwiXS5pY29uLTJ4OjpiZWZvcmUsIC5yc3QgaDFbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi0yeDo6YmVmb3JlLCAucnN0IC50aXRsZS0xW2NsYXNzXj1cImljb24tXCJdLmljb24tMng6OmJlZm9yZSwgLnRpdGxlLTJbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi0yeDo6YmVmb3JlLCBoMltjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi0yeDo6YmVmb3JlLCAucnN0IGgxW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLTJ4OjpiZWZvcmUsIC5yc3QgLnRpdGxlLTFbY2xhc3MqPVwiIGljb24tXCJdLmljb24tMng6OmJlZm9yZSwgLnRpdGxlLTJbY2xhc3MqPVwiIGljb24tXCJdLmljb24tMng6OmJlZm9yZSwgaDNbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi0yeDo6YmVmb3JlLCAuaDNbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi0yeDo6YmVmb3JlLCAucnN0IGgyW2NsYXNzXj1cImljb24tXCJdLmljb24tMng6OmJlZm9yZSwgLnJzdCBoMVtjbGFzc149XCJpY29uLVwiXS5pY29uLTJ4OjpiZWZvcmUsIC5yc3QgLnRpdGxlLTFbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi0yeDo6YmVmb3JlLCAucnN0IC50aXRsZS0yW2NsYXNzXj1cImljb24tXCJdLmljb24tMng6OmJlZm9yZSwgLnRpdGxlLTNbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi0yeDo6YmVmb3JlLCBoM1tjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi0yeDo6YmVmb3JlLCAuaDNbY2xhc3MqPVwiIGljb24tXCJdLmljb24tMng6OmJlZm9yZSwgLnJzdCBoMltjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi0yeDo6YmVmb3JlLCAucnN0IGgxW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLTJ4OjpiZWZvcmUsIC5yc3QgLnRpdGxlLTFbY2xhc3MqPVwiIGljb24tXCJdLmljb24tMng6OmJlZm9yZSwgLnJzdCAudGl0bGUtMltjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi0yeDo6YmVmb3JlLCAudGl0bGUtM1tjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi0yeDo6YmVmb3JlLCBoNFtjbGFzc149XCJpY29uLVwiXS5pY29uLTJ4OjpiZWZvcmUsIC5yc3QgaDNbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi0yeDo6YmVmb3JlLCAucnN0IC5oM1tjbGFzc149XCJpY29uLVwiXS5pY29uLTJ4OjpiZWZvcmUsIC5yc3QgaDJbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi0yeDo6YmVmb3JlLCAucnN0IGgxW2NsYXNzXj1cImljb24tXCJdLmljb24tMng6OmJlZm9yZSwgLnJzdCAudGl0bGUtMVtjbGFzc149XCJpY29uLVwiXS5pY29uLTJ4OjpiZWZvcmUsIC5yc3QgLnRpdGxlLTJbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi0yeDo6YmVmb3JlLCAucnN0IC50aXRsZS0zW2NsYXNzXj1cImljb24tXCJdLmljb24tMng6OmJlZm9yZSwgLnRpdGxlLTRbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi0yeDo6YmVmb3JlLCBoNFtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi0yeDo6YmVmb3JlLCAucnN0IGgzW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLTJ4OjpiZWZvcmUsIC5yc3QgLmgzW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLTJ4OjpiZWZvcmUsIC5yc3QgaDJbY2xhc3MqPVwiIGljb24tXCJdLmljb24tMng6OmJlZm9yZSwgLnJzdCBoMVtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi0yeDo6YmVmb3JlLCAucnN0IC50aXRsZS0xW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLTJ4OjpiZWZvcmUsIC5yc3QgLnRpdGxlLTJbY2xhc3MqPVwiIGljb24tXCJdLmljb24tMng6OmJlZm9yZSwgLnJzdCAudGl0bGUtM1tjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi0yeDo6YmVmb3JlLCAudGl0bGUtNFtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi0yeDo6YmVmb3JlLCAqW2NsYXNzXj1cImljb24tXCJdLmljb24tMng6OmJlZm9yZSwgKltjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi0yeDo6YmVmb3JlIHtcbiAgZm9udC1zaXplOiAycmVtOyB9XG5cbnBbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi0zeDo6YmVmb3JlLCBwW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLTN4OjpiZWZvcmUsIGRpdltjbGFzc149XCJpY29uLVwiXS5pY29uLTN4OjpiZWZvcmUsIGRpdltjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi0zeDo6YmVmb3JlLCBoMVtjbGFzc149XCJpY29uLVwiXS5pY29uLTN4OjpiZWZvcmUsIC50aXRsZS0xW2NsYXNzXj1cImljb24tXCJdLmljb24tM3g6OmJlZm9yZSwgaDFbY2xhc3MqPVwiIGljb24tXCJdLmljb24tM3g6OmJlZm9yZSwgLnRpdGxlLTFbY2xhc3MqPVwiIGljb24tXCJdLmljb24tM3g6OmJlZm9yZSwgaDJbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi0zeDo6YmVmb3JlLCAucnN0IGgxW2NsYXNzXj1cImljb24tXCJdLmljb24tM3g6OmJlZm9yZSwgLnJzdCAudGl0bGUtMVtjbGFzc149XCJpY29uLVwiXS5pY29uLTN4OjpiZWZvcmUsIC50aXRsZS0yW2NsYXNzXj1cImljb24tXCJdLmljb24tM3g6OmJlZm9yZSwgaDJbY2xhc3MqPVwiIGljb24tXCJdLmljb24tM3g6OmJlZm9yZSwgLnJzdCBoMVtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi0zeDo6YmVmb3JlLCAucnN0IC50aXRsZS0xW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLTN4OjpiZWZvcmUsIC50aXRsZS0yW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLTN4OjpiZWZvcmUsIGgzW2NsYXNzXj1cImljb24tXCJdLmljb24tM3g6OmJlZm9yZSwgLmgzW2NsYXNzXj1cImljb24tXCJdLmljb24tM3g6OmJlZm9yZSwgLnJzdCBoMltjbGFzc149XCJpY29uLVwiXS5pY29uLTN4OjpiZWZvcmUsIC5yc3QgaDFbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi0zeDo6YmVmb3JlLCAucnN0IC50aXRsZS0xW2NsYXNzXj1cImljb24tXCJdLmljb24tM3g6OmJlZm9yZSwgLnJzdCAudGl0bGUtMltjbGFzc149XCJpY29uLVwiXS5pY29uLTN4OjpiZWZvcmUsIC50aXRsZS0zW2NsYXNzXj1cImljb24tXCJdLmljb24tM3g6OmJlZm9yZSwgaDNbY2xhc3MqPVwiIGljb24tXCJdLmljb24tM3g6OmJlZm9yZSwgLmgzW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLTN4OjpiZWZvcmUsIC5yc3QgaDJbY2xhc3MqPVwiIGljb24tXCJdLmljb24tM3g6OmJlZm9yZSwgLnJzdCBoMVtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi0zeDo6YmVmb3JlLCAucnN0IC50aXRsZS0xW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLTN4OjpiZWZvcmUsIC5yc3QgLnRpdGxlLTJbY2xhc3MqPVwiIGljb24tXCJdLmljb24tM3g6OmJlZm9yZSwgLnRpdGxlLTNbY2xhc3MqPVwiIGljb24tXCJdLmljb24tM3g6OmJlZm9yZSwgaDRbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi0zeDo6YmVmb3JlLCAucnN0IGgzW2NsYXNzXj1cImljb24tXCJdLmljb24tM3g6OmJlZm9yZSwgLnJzdCAuaDNbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi0zeDo6YmVmb3JlLCAucnN0IGgyW2NsYXNzXj1cImljb24tXCJdLmljb24tM3g6OmJlZm9yZSwgLnJzdCBoMVtjbGFzc149XCJpY29uLVwiXS5pY29uLTN4OjpiZWZvcmUsIC5yc3QgLnRpdGxlLTFbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi0zeDo6YmVmb3JlLCAucnN0IC50aXRsZS0yW2NsYXNzXj1cImljb24tXCJdLmljb24tM3g6OmJlZm9yZSwgLnJzdCAudGl0bGUtM1tjbGFzc149XCJpY29uLVwiXS5pY29uLTN4OjpiZWZvcmUsIC50aXRsZS00W2NsYXNzXj1cImljb24tXCJdLmljb24tM3g6OmJlZm9yZSwgaDRbY2xhc3MqPVwiIGljb24tXCJdLmljb24tM3g6OmJlZm9yZSwgLnJzdCBoM1tjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi0zeDo6YmVmb3JlLCAucnN0IC5oM1tjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi0zeDo6YmVmb3JlLCAucnN0IGgyW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLTN4OjpiZWZvcmUsIC5yc3QgaDFbY2xhc3MqPVwiIGljb24tXCJdLmljb24tM3g6OmJlZm9yZSwgLnJzdCAudGl0bGUtMVtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi0zeDo6YmVmb3JlLCAucnN0IC50aXRsZS0yW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLTN4OjpiZWZvcmUsIC5yc3QgLnRpdGxlLTNbY2xhc3MqPVwiIGljb24tXCJdLmljb24tM3g6OmJlZm9yZSwgLnRpdGxlLTRbY2xhc3MqPVwiIGljb24tXCJdLmljb24tM3g6OmJlZm9yZSwgKltjbGFzc149XCJpY29uLVwiXS5pY29uLTN4OjpiZWZvcmUsICpbY2xhc3MqPVwiIGljb24tXCJdLmljb24tM3g6OmJlZm9yZSB7XG4gIGZvbnQtc2l6ZTogM3JlbTsgfVxuXG5wW2NsYXNzXj1cImljb24tXCJdLmljb24tNHg6OmJlZm9yZSwgcFtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi00eDo6YmVmb3JlLCBkaXZbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi00eDo6YmVmb3JlLCBkaXZbY2xhc3MqPVwiIGljb24tXCJdLmljb24tNHg6OmJlZm9yZSwgaDFbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi00eDo6YmVmb3JlLCAudGl0bGUtMVtjbGFzc149XCJpY29uLVwiXS5pY29uLTR4OjpiZWZvcmUsIGgxW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLTR4OjpiZWZvcmUsIC50aXRsZS0xW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLTR4OjpiZWZvcmUsIGgyW2NsYXNzXj1cImljb24tXCJdLmljb24tNHg6OmJlZm9yZSwgLnJzdCBoMVtjbGFzc149XCJpY29uLVwiXS5pY29uLTR4OjpiZWZvcmUsIC5yc3QgLnRpdGxlLTFbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi00eDo6YmVmb3JlLCAudGl0bGUtMltjbGFzc149XCJpY29uLVwiXS5pY29uLTR4OjpiZWZvcmUsIGgyW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLTR4OjpiZWZvcmUsIC5yc3QgaDFbY2xhc3MqPVwiIGljb24tXCJdLmljb24tNHg6OmJlZm9yZSwgLnJzdCAudGl0bGUtMVtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi00eDo6YmVmb3JlLCAudGl0bGUtMltjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi00eDo6YmVmb3JlLCBoM1tjbGFzc149XCJpY29uLVwiXS5pY29uLTR4OjpiZWZvcmUsIC5oM1tjbGFzc149XCJpY29uLVwiXS5pY29uLTR4OjpiZWZvcmUsIC5yc3QgaDJbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi00eDo6YmVmb3JlLCAucnN0IGgxW2NsYXNzXj1cImljb24tXCJdLmljb24tNHg6OmJlZm9yZSwgLnJzdCAudGl0bGUtMVtjbGFzc149XCJpY29uLVwiXS5pY29uLTR4OjpiZWZvcmUsIC5yc3QgLnRpdGxlLTJbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi00eDo6YmVmb3JlLCAudGl0bGUtM1tjbGFzc149XCJpY29uLVwiXS5pY29uLTR4OjpiZWZvcmUsIGgzW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLTR4OjpiZWZvcmUsIC5oM1tjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi00eDo6YmVmb3JlLCAucnN0IGgyW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLTR4OjpiZWZvcmUsIC5yc3QgaDFbY2xhc3MqPVwiIGljb24tXCJdLmljb24tNHg6OmJlZm9yZSwgLnJzdCAudGl0bGUtMVtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi00eDo6YmVmb3JlLCAucnN0IC50aXRsZS0yW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLTR4OjpiZWZvcmUsIC50aXRsZS0zW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLTR4OjpiZWZvcmUsIGg0W2NsYXNzXj1cImljb24tXCJdLmljb24tNHg6OmJlZm9yZSwgLnJzdCBoM1tjbGFzc149XCJpY29uLVwiXS5pY29uLTR4OjpiZWZvcmUsIC5yc3QgLmgzW2NsYXNzXj1cImljb24tXCJdLmljb24tNHg6OmJlZm9yZSwgLnJzdCBoMltjbGFzc149XCJpY29uLVwiXS5pY29uLTR4OjpiZWZvcmUsIC5yc3QgaDFbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi00eDo6YmVmb3JlLCAucnN0IC50aXRsZS0xW2NsYXNzXj1cImljb24tXCJdLmljb24tNHg6OmJlZm9yZSwgLnJzdCAudGl0bGUtMltjbGFzc149XCJpY29uLVwiXS5pY29uLTR4OjpiZWZvcmUsIC5yc3QgLnRpdGxlLTNbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi00eDo6YmVmb3JlLCAudGl0bGUtNFtjbGFzc149XCJpY29uLVwiXS5pY29uLTR4OjpiZWZvcmUsIGg0W2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLTR4OjpiZWZvcmUsIC5yc3QgaDNbY2xhc3MqPVwiIGljb24tXCJdLmljb24tNHg6OmJlZm9yZSwgLnJzdCAuaDNbY2xhc3MqPVwiIGljb24tXCJdLmljb24tNHg6OmJlZm9yZSwgLnJzdCBoMltjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi00eDo6YmVmb3JlLCAucnN0IGgxW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLTR4OjpiZWZvcmUsIC5yc3QgLnRpdGxlLTFbY2xhc3MqPVwiIGljb24tXCJdLmljb24tNHg6OmJlZm9yZSwgLnJzdCAudGl0bGUtMltjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi00eDo6YmVmb3JlLCAucnN0IC50aXRsZS0zW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLTR4OjpiZWZvcmUsIC50aXRsZS00W2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLTR4OjpiZWZvcmUsICpbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi00eDo6YmVmb3JlLCAqW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLTR4OjpiZWZvcmUge1xuICBmb250LXNpemU6IDRyZW07IH1cblxucFtjbGFzc149XCJpY29uLVwiXS5pY29uLWJsb2NrOmJlZm9yZSwgcFtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1ibG9jazpiZWZvcmUsIGRpdltjbGFzc149XCJpY29uLVwiXS5pY29uLWJsb2NrOmJlZm9yZSwgZGl2W2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWJsb2NrOmJlZm9yZSwgaDFbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1ibG9jazpiZWZvcmUsIC50aXRsZS0xW2NsYXNzXj1cImljb24tXCJdLmljb24tYmxvY2s6YmVmb3JlLCBoMVtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1ibG9jazpiZWZvcmUsIC50aXRsZS0xW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWJsb2NrOmJlZm9yZSwgaDJbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1ibG9jazpiZWZvcmUsIC5yc3QgaDFbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1ibG9jazpiZWZvcmUsIC5yc3QgLnRpdGxlLTFbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1ibG9jazpiZWZvcmUsIC50aXRsZS0yW2NsYXNzXj1cImljb24tXCJdLmljb24tYmxvY2s6YmVmb3JlLCBoMltjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1ibG9jazpiZWZvcmUsIC5yc3QgaDFbY2xhc3MqPVwiIGljb24tXCJdLmljb24tYmxvY2s6YmVmb3JlLCAucnN0IC50aXRsZS0xW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWJsb2NrOmJlZm9yZSwgLnRpdGxlLTJbY2xhc3MqPVwiIGljb24tXCJdLmljb24tYmxvY2s6YmVmb3JlLCBoM1tjbGFzc149XCJpY29uLVwiXS5pY29uLWJsb2NrOmJlZm9yZSwgLmgzW2NsYXNzXj1cImljb24tXCJdLmljb24tYmxvY2s6YmVmb3JlLCAucnN0IGgyW2NsYXNzXj1cImljb24tXCJdLmljb24tYmxvY2s6YmVmb3JlLCAucnN0IGgxW2NsYXNzXj1cImljb24tXCJdLmljb24tYmxvY2s6YmVmb3JlLCAucnN0IC50aXRsZS0xW2NsYXNzXj1cImljb24tXCJdLmljb24tYmxvY2s6YmVmb3JlLCAucnN0IC50aXRsZS0yW2NsYXNzXj1cImljb24tXCJdLmljb24tYmxvY2s6YmVmb3JlLCAudGl0bGUtM1tjbGFzc149XCJpY29uLVwiXS5pY29uLWJsb2NrOmJlZm9yZSwgaDNbY2xhc3MqPVwiIGljb24tXCJdLmljb24tYmxvY2s6YmVmb3JlLCAuaDNbY2xhc3MqPVwiIGljb24tXCJdLmljb24tYmxvY2s6YmVmb3JlLCAucnN0IGgyW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWJsb2NrOmJlZm9yZSwgLnJzdCBoMVtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1ibG9jazpiZWZvcmUsIC5yc3QgLnRpdGxlLTFbY2xhc3MqPVwiIGljb24tXCJdLmljb24tYmxvY2s6YmVmb3JlLCAucnN0IC50aXRsZS0yW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWJsb2NrOmJlZm9yZSwgLnRpdGxlLTNbY2xhc3MqPVwiIGljb24tXCJdLmljb24tYmxvY2s6YmVmb3JlLCBoNFtjbGFzc149XCJpY29uLVwiXS5pY29uLWJsb2NrOmJlZm9yZSwgLnJzdCBoM1tjbGFzc149XCJpY29uLVwiXS5pY29uLWJsb2NrOmJlZm9yZSwgLnJzdCAuaDNbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1ibG9jazpiZWZvcmUsIC5yc3QgaDJbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1ibG9jazpiZWZvcmUsIC5yc3QgaDFbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1ibG9jazpiZWZvcmUsIC5yc3QgLnRpdGxlLTFbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1ibG9jazpiZWZvcmUsIC5yc3QgLnRpdGxlLTJbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1ibG9jazpiZWZvcmUsIC5yc3QgLnRpdGxlLTNbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1ibG9jazpiZWZvcmUsIC50aXRsZS00W2NsYXNzXj1cImljb24tXCJdLmljb24tYmxvY2s6YmVmb3JlLCBoNFtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1ibG9jazpiZWZvcmUsIC5yc3QgaDNbY2xhc3MqPVwiIGljb24tXCJdLmljb24tYmxvY2s6YmVmb3JlLCAucnN0IC5oM1tjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1ibG9jazpiZWZvcmUsIC5yc3QgaDJbY2xhc3MqPVwiIGljb24tXCJdLmljb24tYmxvY2s6YmVmb3JlLCAucnN0IGgxW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWJsb2NrOmJlZm9yZSwgLnJzdCAudGl0bGUtMVtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1ibG9jazpiZWZvcmUsIC5yc3QgLnRpdGxlLTJbY2xhc3MqPVwiIGljb24tXCJdLmljb24tYmxvY2s6YmVmb3JlLCAucnN0IC50aXRsZS0zW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWJsb2NrOmJlZm9yZSwgLnRpdGxlLTRbY2xhc3MqPVwiIGljb24tXCJdLmljb24tYmxvY2s6YmVmb3JlLCAqW2NsYXNzXj1cImljb24tXCJdLmljb24tYmxvY2s6YmVmb3JlLCAqW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWJsb2NrOmJlZm9yZSB7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbnBbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdCwgcFtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdCwgZGl2W2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQsIGRpdltjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdCwgaDFbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdCwgLnRpdGxlLTFbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdCwgaDFbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQsIC50aXRsZS0xW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0LCBoMltjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0LCAucnN0IGgxW2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQsIC5yc3QgLnRpdGxlLTFbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdCwgLnRpdGxlLTJbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdCwgaDJbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQsIC5yc3QgaDFbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQsIC5yc3QgLnRpdGxlLTFbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQsIC50aXRsZS0yW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0LCBoM1tjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0LCAuaDNbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdCwgLnJzdCBoMltjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0LCAucnN0IGgxW2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQsIC5yc3QgLnRpdGxlLTFbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdCwgLnJzdCAudGl0bGUtMltjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0LCAudGl0bGUtM1tjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0LCBoM1tjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdCwgLmgzW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0LCAucnN0IGgyW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0LCAucnN0IGgxW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0LCAucnN0IC50aXRsZS0xW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0LCAucnN0IC50aXRsZS0yW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0LCAudGl0bGUtM1tjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdCwgaDRbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdCwgLnJzdCBoM1tjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0LCAucnN0IC5oM1tjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0LCAucnN0IGgyW2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQsIC5yc3QgaDFbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdCwgLnJzdCAudGl0bGUtMVtjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0LCAucnN0IC50aXRsZS0yW2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQsIC5yc3QgLnRpdGxlLTNbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdCwgLnRpdGxlLTRbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdCwgaDRbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQsIC5yc3QgaDNbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQsIC5yc3QgLmgzW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0LCAucnN0IGgyW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0LCAucnN0IGgxW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0LCAucnN0IC50aXRsZS0xW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0LCAucnN0IC50aXRsZS0yW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0LCAucnN0IC50aXRsZS0zW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0LCAudGl0bGUtNFtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdCwgKltjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0LCAqW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nLWxlZnQ6IDFlbTsgfVxuICBwW2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi0yeCwgcFtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTJ4LCBkaXZbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTJ4LCBkaXZbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi0yeCwgaDFbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTJ4LCAudGl0bGUtMVtjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tMngsIGgxW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tMngsIC50aXRsZS0xW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tMngsIGgyW2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi0yeCwgLnJzdCBoMVtjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tMngsIC5yc3QgLnRpdGxlLTFbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTJ4LCAudGl0bGUtMltjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tMngsIGgyW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tMngsIC5yc3QgaDFbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi0yeCwgLnJzdCAudGl0bGUtMVtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTJ4LCAudGl0bGUtMltjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTJ4LCBoM1tjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tMngsIC5oM1tjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tMngsIC5yc3QgaDJbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTJ4LCAucnN0IGgxW2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi0yeCwgLnJzdCAudGl0bGUtMVtjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tMngsIC5yc3QgLnRpdGxlLTJbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTJ4LCAudGl0bGUtM1tjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tMngsIGgzW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tMngsIC5oM1tjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTJ4LCAucnN0IGgyW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tMngsIC5yc3QgaDFbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi0yeCwgLnJzdCAudGl0bGUtMVtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTJ4LCAucnN0IC50aXRsZS0yW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tMngsIC50aXRsZS0zW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tMngsIGg0W2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi0yeCwgLnJzdCBoM1tjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tMngsIC5yc3QgLmgzW2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi0yeCwgLnJzdCBoMltjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tMngsIC5yc3QgaDFbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTJ4LCAucnN0IC50aXRsZS0xW2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi0yeCwgLnJzdCAudGl0bGUtMltjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tMngsIC5yc3QgLnRpdGxlLTNbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTJ4LCAudGl0bGUtNFtjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tMngsIGg0W2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tMngsIC5yc3QgaDNbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi0yeCwgLnJzdCAuaDNbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi0yeCwgLnJzdCBoMltjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTJ4LCAucnN0IGgxW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tMngsIC5yc3QgLnRpdGxlLTFbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi0yeCwgLnJzdCAudGl0bGUtMltjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTJ4LCAucnN0IC50aXRsZS0zW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tMngsIC50aXRsZS00W2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tMngsICpbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTJ4LCAqW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tMngge1xuICAgIHBhZGRpbmctbGVmdDogMnJlbTsgfVxuICBwW2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi0zeCwgcFtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTN4LCBkaXZbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTN4LCBkaXZbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi0zeCwgaDFbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTN4LCAudGl0bGUtMVtjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tM3gsIGgxW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tM3gsIC50aXRsZS0xW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tM3gsIGgyW2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi0zeCwgLnJzdCBoMVtjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tM3gsIC5yc3QgLnRpdGxlLTFbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTN4LCAudGl0bGUtMltjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tM3gsIGgyW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tM3gsIC5yc3QgaDFbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi0zeCwgLnJzdCAudGl0bGUtMVtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTN4LCAudGl0bGUtMltjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTN4LCBoM1tjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tM3gsIC5oM1tjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tM3gsIC5yc3QgaDJbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTN4LCAucnN0IGgxW2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi0zeCwgLnJzdCAudGl0bGUtMVtjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tM3gsIC5yc3QgLnRpdGxlLTJbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTN4LCAudGl0bGUtM1tjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tM3gsIGgzW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tM3gsIC5oM1tjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTN4LCAucnN0IGgyW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tM3gsIC5yc3QgaDFbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi0zeCwgLnJzdCAudGl0bGUtMVtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTN4LCAucnN0IC50aXRsZS0yW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tM3gsIC50aXRsZS0zW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tM3gsIGg0W2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi0zeCwgLnJzdCBoM1tjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tM3gsIC5yc3QgLmgzW2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi0zeCwgLnJzdCBoMltjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tM3gsIC5yc3QgaDFbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTN4LCAucnN0IC50aXRsZS0xW2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi0zeCwgLnJzdCAudGl0bGUtMltjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tM3gsIC5yc3QgLnRpdGxlLTNbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTN4LCAudGl0bGUtNFtjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tM3gsIGg0W2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tM3gsIC5yc3QgaDNbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi0zeCwgLnJzdCAuaDNbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi0zeCwgLnJzdCBoMltjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTN4LCAucnN0IGgxW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tM3gsIC5yc3QgLnRpdGxlLTFbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi0zeCwgLnJzdCAudGl0bGUtMltjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTN4LCAucnN0IC50aXRsZS0zW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tM3gsIC50aXRsZS00W2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tM3gsICpbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTN4LCAqW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tM3gge1xuICAgIHBhZGRpbmctbGVmdDogM3JlbTsgfVxuICBwW2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi00eCwgcFtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTR4LCBkaXZbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTR4LCBkaXZbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi00eCwgaDFbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTR4LCAudGl0bGUtMVtjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tNHgsIGgxW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tNHgsIC50aXRsZS0xW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tNHgsIGgyW2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi00eCwgLnJzdCBoMVtjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tNHgsIC5yc3QgLnRpdGxlLTFbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTR4LCAudGl0bGUtMltjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tNHgsIGgyW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tNHgsIC5yc3QgaDFbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi00eCwgLnJzdCAudGl0bGUtMVtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTR4LCAudGl0bGUtMltjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTR4LCBoM1tjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tNHgsIC5oM1tjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tNHgsIC5yc3QgaDJbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTR4LCAucnN0IGgxW2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi00eCwgLnJzdCAudGl0bGUtMVtjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tNHgsIC5yc3QgLnRpdGxlLTJbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTR4LCAudGl0bGUtM1tjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tNHgsIGgzW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tNHgsIC5oM1tjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTR4LCAucnN0IGgyW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tNHgsIC5yc3QgaDFbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi00eCwgLnJzdCAudGl0bGUtMVtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTR4LCAucnN0IC50aXRsZS0yW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tNHgsIC50aXRsZS0zW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tNHgsIGg0W2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi00eCwgLnJzdCBoM1tjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tNHgsIC5yc3QgLmgzW2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi00eCwgLnJzdCBoMltjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tNHgsIC5yc3QgaDFbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTR4LCAucnN0IC50aXRsZS0xW2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi00eCwgLnJzdCAudGl0bGUtMltjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tNHgsIC5yc3QgLnRpdGxlLTNbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTR4LCAudGl0bGUtNFtjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tNHgsIGg0W2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tNHgsIC5yc3QgaDNbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi00eCwgLnJzdCAuaDNbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi00eCwgLnJzdCBoMltjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTR4LCAucnN0IGgxW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tNHgsIC5yc3QgLnRpdGxlLTFbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi00eCwgLnJzdCAudGl0bGUtMltjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTR4LCAucnN0IC50aXRsZS0zW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tNHgsIC50aXRsZS00W2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tNHgsICpbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTR4LCAqW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tNHgge1xuICAgIHBhZGRpbmctbGVmdDogNHJlbTsgfVxuICBwW2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQ6YmVmb3JlLCBwW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0OmJlZm9yZSwgZGl2W2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQ6YmVmb3JlLCBkaXZbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQ6YmVmb3JlLCBoMVtjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0OmJlZm9yZSwgLnRpdGxlLTFbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdDpiZWZvcmUsIGgxW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0OmJlZm9yZSwgLnRpdGxlLTFbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQ6YmVmb3JlLCBoMltjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0OmJlZm9yZSwgLnJzdCBoMVtjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0OmJlZm9yZSwgLnJzdCAudGl0bGUtMVtjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0OmJlZm9yZSwgLnRpdGxlLTJbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdDpiZWZvcmUsIGgyW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0OmJlZm9yZSwgLnJzdCBoMVtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdDpiZWZvcmUsIC5yc3QgLnRpdGxlLTFbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQ6YmVmb3JlLCAudGl0bGUtMltjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdDpiZWZvcmUsIGgzW2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQ6YmVmb3JlLCAuaDNbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdDpiZWZvcmUsIC5yc3QgaDJbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdDpiZWZvcmUsIC5yc3QgaDFbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdDpiZWZvcmUsIC5yc3QgLnRpdGxlLTFbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdDpiZWZvcmUsIC5yc3QgLnRpdGxlLTJbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdDpiZWZvcmUsIC50aXRsZS0zW2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQ6YmVmb3JlLCBoM1tjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdDpiZWZvcmUsIC5oM1tjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdDpiZWZvcmUsIC5yc3QgaDJbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQ6YmVmb3JlLCAucnN0IGgxW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0OmJlZm9yZSwgLnJzdCAudGl0bGUtMVtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdDpiZWZvcmUsIC5yc3QgLnRpdGxlLTJbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQ6YmVmb3JlLCAudGl0bGUtM1tjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdDpiZWZvcmUsIGg0W2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQ6YmVmb3JlLCAucnN0IGgzW2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQ6YmVmb3JlLCAucnN0IC5oM1tjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0OmJlZm9yZSwgLnJzdCBoMltjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0OmJlZm9yZSwgLnJzdCBoMVtjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0OmJlZm9yZSwgLnJzdCAudGl0bGUtMVtjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0OmJlZm9yZSwgLnJzdCAudGl0bGUtMltjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0OmJlZm9yZSwgLnJzdCAudGl0bGUtM1tjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0OmJlZm9yZSwgLnRpdGxlLTRbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdDpiZWZvcmUsIGg0W2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0OmJlZm9yZSwgLnJzdCBoM1tjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdDpiZWZvcmUsIC5yc3QgLmgzW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0OmJlZm9yZSwgLnJzdCBoMltjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdDpiZWZvcmUsIC5yc3QgaDFbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQ6YmVmb3JlLCAucnN0IC50aXRsZS0xW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0OmJlZm9yZSwgLnJzdCAudGl0bGUtMltjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdDpiZWZvcmUsIC5yc3QgLnRpdGxlLTNbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQ6YmVmb3JlLCAudGl0bGUtNFtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdDpiZWZvcmUsICpbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdDpiZWZvcmUsICpbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQ6YmVmb3JlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwLjFlbTtcbiAgICBsZWZ0OiAwOyB9XG4gIHBbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdCA+ICosIHBbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQgPiAqLCBkaXZbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdCA+ICosIGRpdltjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdCA+ICosIGgxW2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQgPiAqLCAudGl0bGUtMVtjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0ID4gKiwgaDFbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQgPiAqLCAudGl0bGUtMVtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdCA+ICosIGgyW2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQgPiAqLCAucnN0IGgxW2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQgPiAqLCAucnN0IC50aXRsZS0xW2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQgPiAqLCAudGl0bGUtMltjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0ID4gKiwgaDJbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQgPiAqLCAucnN0IGgxW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0ID4gKiwgLnJzdCAudGl0bGUtMVtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdCA+ICosIC50aXRsZS0yW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0ID4gKiwgaDNbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdCA+ICosIC5oM1tjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0ID4gKiwgLnJzdCBoMltjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0ID4gKiwgLnJzdCBoMVtjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0ID4gKiwgLnJzdCAudGl0bGUtMVtjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0ID4gKiwgLnJzdCAudGl0bGUtMltjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0ID4gKiwgLnRpdGxlLTNbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdCA+ICosIGgzW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0ID4gKiwgLmgzW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0ID4gKiwgLnJzdCBoMltjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdCA+ICosIC5yc3QgaDFbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQgPiAqLCAucnN0IC50aXRsZS0xW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0ID4gKiwgLnJzdCAudGl0bGUtMltjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdCA+ICosIC50aXRsZS0zW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0ID4gKiwgaDRbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdCA+ICosIC5yc3QgaDNbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdCA+ICosIC5yc3QgLmgzW2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQgPiAqLCAucnN0IGgyW2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQgPiAqLCAucnN0IGgxW2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQgPiAqLCAucnN0IC50aXRsZS0xW2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQgPiAqLCAucnN0IC50aXRsZS0yW2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQgPiAqLCAucnN0IC50aXRsZS0zW2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQgPiAqLCAudGl0bGUtNFtjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0ID4gKiwgaDRbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQgPiAqLCAucnN0IGgzW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0ID4gKiwgLnJzdCAuaDNbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQgPiAqLCAucnN0IGgyW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0ID4gKiwgLnJzdCBoMVtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdCA+ICosIC5yc3QgLnRpdGxlLTFbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQgPiAqLCAucnN0IC50aXRsZS0yW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0ID4gKiwgLnJzdCAudGl0bGUtM1tjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdCA+ICosIC50aXRsZS00W2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0ID4gKiwgKltjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0ID4gKiwgKltjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdCA+ICoge1xuICAgIG1hcmdpbi1sZWZ0OiAwLjMxMjVyZW07IH1cblxucFtjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0LCBwW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0LCBkaXZbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdCwgZGl2W2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0LCBoMVtjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0LCAudGl0bGUtMVtjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0LCBoMVtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdCwgLnRpdGxlLTFbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQsIGgyW2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQsIC5yc3QgaDFbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdCwgLnJzdCAudGl0bGUtMVtjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0LCAudGl0bGUtMltjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0LCBoMltjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdCwgLnJzdCBoMVtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdCwgLnJzdCAudGl0bGUtMVtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdCwgLnRpdGxlLTJbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQsIGgzW2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQsIC5oM1tjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0LCAucnN0IGgyW2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQsIC5yc3QgaDFbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdCwgLnJzdCAudGl0bGUtMVtjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0LCAucnN0IC50aXRsZS0yW2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQsIC50aXRsZS0zW2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQsIGgzW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0LCAuaDNbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQsIC5yc3QgaDJbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQsIC5yc3QgaDFbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQsIC5yc3QgLnRpdGxlLTFbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQsIC5yc3QgLnRpdGxlLTJbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQsIC50aXRsZS0zW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0LCBoNFtjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0LCAucnN0IGgzW2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQsIC5yc3QgLmgzW2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQsIC5yc3QgaDJbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdCwgLnJzdCBoMVtjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0LCAucnN0IC50aXRsZS0xW2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQsIC5yc3QgLnRpdGxlLTJbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdCwgLnJzdCAudGl0bGUtM1tjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0LCAudGl0bGUtNFtjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0LCBoNFtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdCwgLnJzdCBoM1tjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdCwgLnJzdCAuaDNbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQsIC5yc3QgaDJbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQsIC5yc3QgaDFbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQsIC5yc3QgLnRpdGxlLTFbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQsIC5yc3QgLnRpdGxlLTJbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQsIC5yc3QgLnRpdGxlLTNbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQsIC50aXRsZS00W2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0LCAqW2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQsICpbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmctbGVmdDogMWVtOyB9XG4gIHBbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTJ4LCBwW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tMngsIGRpdltjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tMngsIGRpdltjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTJ4LCBoMVtjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tMngsIC50aXRsZS0xW2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi0yeCwgaDFbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi0yeCwgLnRpdGxlLTFbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi0yeCwgaDJbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTJ4LCAucnN0IGgxW2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi0yeCwgLnJzdCAudGl0bGUtMVtjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tMngsIC50aXRsZS0yW2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi0yeCwgaDJbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi0yeCwgLnJzdCBoMVtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTJ4LCAucnN0IC50aXRsZS0xW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tMngsIC50aXRsZS0yW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tMngsIGgzW2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi0yeCwgLmgzW2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi0yeCwgLnJzdCBoMltjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tMngsIC5yc3QgaDFbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTJ4LCAucnN0IC50aXRsZS0xW2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi0yeCwgLnJzdCAudGl0bGUtMltjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tMngsIC50aXRsZS0zW2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi0yeCwgaDNbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi0yeCwgLmgzW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tMngsIC5yc3QgaDJbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi0yeCwgLnJzdCBoMVtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTJ4LCAucnN0IC50aXRsZS0xW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tMngsIC5yc3QgLnRpdGxlLTJbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi0yeCwgLnRpdGxlLTNbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi0yeCwgaDRbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTJ4LCAucnN0IGgzW2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi0yeCwgLnJzdCAuaDNbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTJ4LCAucnN0IGgyW2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi0yeCwgLnJzdCBoMVtjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tMngsIC5yc3QgLnRpdGxlLTFbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTJ4LCAucnN0IC50aXRsZS0yW2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi0yeCwgLnJzdCAudGl0bGUtM1tjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tMngsIC50aXRsZS00W2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi0yeCwgaDRbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi0yeCwgLnJzdCBoM1tjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTJ4LCAucnN0IC5oM1tjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTJ4LCAucnN0IGgyW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tMngsIC5yc3QgaDFbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi0yeCwgLnJzdCAudGl0bGUtMVtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTJ4LCAucnN0IC50aXRsZS0yW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tMngsIC5yc3QgLnRpdGxlLTNbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi0yeCwgLnRpdGxlLTRbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi0yeCwgKltjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tMngsICpbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi0yeCB7XG4gICAgcGFkZGluZy1sZWZ0OiAycmVtOyB9XG4gIHBbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTN4LCBwW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tM3gsIGRpdltjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tM3gsIGRpdltjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTN4LCBoMVtjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tM3gsIC50aXRsZS0xW2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi0zeCwgaDFbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi0zeCwgLnRpdGxlLTFbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi0zeCwgaDJbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTN4LCAucnN0IGgxW2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi0zeCwgLnJzdCAudGl0bGUtMVtjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tM3gsIC50aXRsZS0yW2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi0zeCwgaDJbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi0zeCwgLnJzdCBoMVtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTN4LCAucnN0IC50aXRsZS0xW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tM3gsIC50aXRsZS0yW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tM3gsIGgzW2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi0zeCwgLmgzW2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi0zeCwgLnJzdCBoMltjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tM3gsIC5yc3QgaDFbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTN4LCAucnN0IC50aXRsZS0xW2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi0zeCwgLnJzdCAudGl0bGUtMltjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tM3gsIC50aXRsZS0zW2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi0zeCwgaDNbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi0zeCwgLmgzW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tM3gsIC5yc3QgaDJbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi0zeCwgLnJzdCBoMVtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTN4LCAucnN0IC50aXRsZS0xW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tM3gsIC5yc3QgLnRpdGxlLTJbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi0zeCwgLnRpdGxlLTNbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi0zeCwgaDRbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTN4LCAucnN0IGgzW2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi0zeCwgLnJzdCAuaDNbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTN4LCAucnN0IGgyW2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi0zeCwgLnJzdCBoMVtjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tM3gsIC5yc3QgLnRpdGxlLTFbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTN4LCAucnN0IC50aXRsZS0yW2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi0zeCwgLnJzdCAudGl0bGUtM1tjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tM3gsIC50aXRsZS00W2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi0zeCwgaDRbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi0zeCwgLnJzdCBoM1tjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTN4LCAucnN0IC5oM1tjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTN4LCAucnN0IGgyW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tM3gsIC5yc3QgaDFbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi0zeCwgLnJzdCAudGl0bGUtMVtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTN4LCAucnN0IC50aXRsZS0yW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tM3gsIC5yc3QgLnRpdGxlLTNbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi0zeCwgLnRpdGxlLTRbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi0zeCwgKltjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tM3gsICpbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi0zeCB7XG4gICAgcGFkZGluZy1sZWZ0OiAzcmVtOyB9XG4gIHBbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTR4LCBwW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tNHgsIGRpdltjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tNHgsIGRpdltjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTR4LCBoMVtjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tNHgsIC50aXRsZS0xW2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi00eCwgaDFbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi00eCwgLnRpdGxlLTFbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi00eCwgaDJbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTR4LCAucnN0IGgxW2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi00eCwgLnJzdCAudGl0bGUtMVtjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tNHgsIC50aXRsZS0yW2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi00eCwgaDJbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi00eCwgLnJzdCBoMVtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTR4LCAucnN0IC50aXRsZS0xW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tNHgsIC50aXRsZS0yW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tNHgsIGgzW2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi00eCwgLmgzW2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi00eCwgLnJzdCBoMltjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tNHgsIC5yc3QgaDFbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTR4LCAucnN0IC50aXRsZS0xW2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi00eCwgLnJzdCAudGl0bGUtMltjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tNHgsIC50aXRsZS0zW2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi00eCwgaDNbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi00eCwgLmgzW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tNHgsIC5yc3QgaDJbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi00eCwgLnJzdCBoMVtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTR4LCAucnN0IC50aXRsZS0xW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tNHgsIC5yc3QgLnRpdGxlLTJbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi00eCwgLnRpdGxlLTNbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi00eCwgaDRbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTR4LCAucnN0IGgzW2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi00eCwgLnJzdCAuaDNbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTR4LCAucnN0IGgyW2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi00eCwgLnJzdCBoMVtjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tNHgsIC5yc3QgLnRpdGxlLTFbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTR4LCAucnN0IC50aXRsZS0yW2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi00eCwgLnJzdCAudGl0bGUtM1tjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tNHgsIC50aXRsZS00W2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi00eCwgaDRbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi00eCwgLnJzdCBoM1tjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTR4LCAucnN0IC5oM1tjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTR4LCAucnN0IGgyW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tNHgsIC5yc3QgaDFbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi00eCwgLnJzdCAudGl0bGUtMVtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTR4LCAucnN0IC50aXRsZS0yW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tNHgsIC5yc3QgLnRpdGxlLTNbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi00eCwgLnRpdGxlLTRbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi00eCwgKltjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tNHgsICpbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi00eCB7XG4gICAgcGFkZGluZy1sZWZ0OiA0cmVtOyB9XG4gIHBbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdDpiZWZvcmUsIHBbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQ6YmVmb3JlLCBkaXZbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdDpiZWZvcmUsIGRpdltjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdDpiZWZvcmUsIGgxW2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQ6YmVmb3JlLCAudGl0bGUtMVtjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0OmJlZm9yZSwgaDFbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQ6YmVmb3JlLCAudGl0bGUtMVtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdDpiZWZvcmUsIGgyW2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQ6YmVmb3JlLCAucnN0IGgxW2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQ6YmVmb3JlLCAucnN0IC50aXRsZS0xW2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQ6YmVmb3JlLCAudGl0bGUtMltjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0OmJlZm9yZSwgaDJbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQ6YmVmb3JlLCAucnN0IGgxW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0OmJlZm9yZSwgLnJzdCAudGl0bGUtMVtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdDpiZWZvcmUsIC50aXRsZS0yW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0OmJlZm9yZSwgaDNbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdDpiZWZvcmUsIC5oM1tjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0OmJlZm9yZSwgLnJzdCBoMltjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0OmJlZm9yZSwgLnJzdCBoMVtjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0OmJlZm9yZSwgLnJzdCAudGl0bGUtMVtjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0OmJlZm9yZSwgLnJzdCAudGl0bGUtMltjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0OmJlZm9yZSwgLnRpdGxlLTNbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdDpiZWZvcmUsIGgzW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0OmJlZm9yZSwgLmgzW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0OmJlZm9yZSwgLnJzdCBoMltjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdDpiZWZvcmUsIC5yc3QgaDFbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQ6YmVmb3JlLCAucnN0IC50aXRsZS0xW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0OmJlZm9yZSwgLnJzdCAudGl0bGUtMltjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdDpiZWZvcmUsIC50aXRsZS0zW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0OmJlZm9yZSwgaDRbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdDpiZWZvcmUsIC5yc3QgaDNbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdDpiZWZvcmUsIC5yc3QgLmgzW2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQ6YmVmb3JlLCAucnN0IGgyW2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQ6YmVmb3JlLCAucnN0IGgxW2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQ6YmVmb3JlLCAucnN0IC50aXRsZS0xW2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQ6YmVmb3JlLCAucnN0IC50aXRsZS0yW2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQ6YmVmb3JlLCAucnN0IC50aXRsZS0zW2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQ6YmVmb3JlLCAudGl0bGUtNFtjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0OmJlZm9yZSwgaDRbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQ6YmVmb3JlLCAucnN0IGgzW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0OmJlZm9yZSwgLnJzdCAuaDNbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQ6YmVmb3JlLCAucnN0IGgyW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0OmJlZm9yZSwgLnJzdCBoMVtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdDpiZWZvcmUsIC5yc3QgLnRpdGxlLTFbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQ6YmVmb3JlLCAucnN0IC50aXRsZS0yW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0OmJlZm9yZSwgLnJzdCAudGl0bGUtM1tjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdDpiZWZvcmUsIC50aXRsZS00W2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0OmJlZm9yZSwgKltjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0OmJlZm9yZSwgKltjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdDpiZWZvcmUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICBsZWZ0OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwJSk7XG4gICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcbiAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwJSk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwJSk7IH1cbiAgcFtjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0ID4gKiwgcFtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdCA+ICosIGRpdltjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0ID4gKiwgZGl2W2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0ID4gKiwgaDFbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdCA+ICosIC50aXRsZS0xW2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQgPiAqLCBoMVtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdCA+ICosIC50aXRsZS0xW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0ID4gKiwgaDJbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdCA+ICosIC5yc3QgaDFbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdCA+ICosIC5yc3QgLnRpdGxlLTFbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdCA+ICosIC50aXRsZS0yW2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQgPiAqLCBoMltjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdCA+ICosIC5yc3QgaDFbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQgPiAqLCAucnN0IC50aXRsZS0xW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0ID4gKiwgLnRpdGxlLTJbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQgPiAqLCBoM1tjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0ID4gKiwgLmgzW2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQgPiAqLCAucnN0IGgyW2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQgPiAqLCAucnN0IGgxW2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQgPiAqLCAucnN0IC50aXRsZS0xW2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQgPiAqLCAucnN0IC50aXRsZS0yW2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQgPiAqLCAudGl0bGUtM1tjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0ID4gKiwgaDNbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQgPiAqLCAuaDNbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQgPiAqLCAucnN0IGgyW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0ID4gKiwgLnJzdCBoMVtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdCA+ICosIC5yc3QgLnRpdGxlLTFbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQgPiAqLCAucnN0IC50aXRsZS0yW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0ID4gKiwgLnRpdGxlLTNbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQgPiAqLCBoNFtjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0ID4gKiwgLnJzdCBoM1tjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0ID4gKiwgLnJzdCAuaDNbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdCA+ICosIC5yc3QgaDJbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdCA+ICosIC5yc3QgaDFbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdCA+ICosIC5yc3QgLnRpdGxlLTFbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdCA+ICosIC5yc3QgLnRpdGxlLTJbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdCA+ICosIC5yc3QgLnRpdGxlLTNbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdCA+ICosIC50aXRsZS00W2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQgPiAqLCBoNFtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdCA+ICosIC5yc3QgaDNbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQgPiAqLCAucnN0IC5oM1tjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdCA+ICosIC5yc3QgaDJbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQgPiAqLCAucnN0IGgxW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0ID4gKiwgLnJzdCAudGl0bGUtMVtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdCA+ICosIC5yc3QgLnRpdGxlLTJbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQgPiAqLCAucnN0IC50aXRsZS0zW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0ID4gKiwgLnRpdGxlLTRbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQgPiAqLCAqW2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQgPiAqLCAqW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0ID4gKiB7XG4gICAgbWFyZ2luLWxlZnQ6IDAuMzEyNXJlbTsgfVxuXG4uYnV0dG9uW2NsYXNzXj1cImljb24tXCJdLCAuYnV0dG9uW2NsYXNzKj1cIiBpY29uLVwiXSB7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0OyB9XG4gIC5idXR0b25bY2xhc3NePVwiaWNvbi1cIl06YmVmb3JlLCAuYnV0dG9uW2NsYXNzKj1cIiBpY29uLVwiXTpiZWZvcmUge1xuICAgIGZvbnQtZmFtaWx5OiAnaWNvbW9vbic7XG4gICAgbWFyZ2luLXJpZ2h0OiAwLjMxMjVyZW07XG4gICAgc3BlYWs6IG5vbmU7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgZm9udC12YXJpYW50OiBub3JtYWw7XG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgLyogQmV0dGVyIEZvbnQgUmVuZGVyaW5nID09PT09PT09PT09ICovXG4gICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTsgfVxuICAuYnV0dG9uW2NsYXNzXj1cImljb24tXCJdLmljb0FmdDpiZWZvcmUsIC5idXR0b25bY2xhc3MqPVwiIGljb24tXCJdLmljb0FmdDpiZWZvcmUge1xuICAgIHBvc2l0aW9uOiByZWx0aXZlO1xuICAgIHJpZ2h0OiAwLjVyZW07XG4gICAgd2lkdGg6IDJyZW07IH1cblxuLmljb24tMngge1xuICBmb250LXNpemU6IDJyZW07IH1cblxuLmljb24tM3gge1xuICBmb250LXNpemU6IDNyZW07IH1cblxuLmljb24tNHgge1xuICBmb250LXNpemU6IDRyZW07IH1cblxuLmljb24tY29sbGVjdGlvbnM6YmVmb3JlIHtcbiAgY29udGVudDogXCLupJ5cIjsgfVxuXG4uaWNvbi10YWc6YmVmb3JlIHtcbiAgY29udGVudDogXCLupJ9cIjsgfVxuXG4uaWNvbi1jbG9zZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu6knVwiOyB9XG5cbi5pY29uLWxvbmdfYXJyb3dfbGVmdDpiZWZvcmUge1xuICBjb250ZW50OiBcIu6knFwiOyB9XG5cbi5pY29uLWxvbmdfYXJyb3dfcmlnaHQ6YmVmb3JlIHtcbiAgZm9udC1zaXplOiAxLjhyZW07XG4gIGNvbnRlbnQ6IFwi7qSbXCI7IH1cblxuLmljb24tYXJyb3ctcmlnaHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLupJVcIjsgfVxuXG4uaWNvbi1hcnJvdy1yaWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIu6klVwiOyB9XG5cbi5pY29uLWRvd25sb2FkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7qSWXCI7IH1cblxuLmljb24tZmlsbTE6YmVmb3JlIHtcbiAgY29udGVudDogXCLupJdcIjsgfVxuXG4uaWNvbi1tYXAxOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7qSYXCI7IH1cblxuLmljb24tbWVzc2FnZS1jaXJjbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLupJlcIjsgfVxuXG4uaWNvbi12aWRlb2NhbTpiZWZvcmUge1xuICBjb250ZW50OiBcIu6kmlwiOyB9XG5cbi5pY29uLWNvbGxlY3Rpb246YmVmb3JlIHtcbiAgY29udGVudDogXCLupI1cIjsgfVxuXG4uaWNvbi1leHBvc2l0aW9uczpiZWZvcmUge1xuICBjb250ZW50OiBcIu6kjlwiOyB9XG5cbi5pY29uLW91dGlsczpiZWZvcmUge1xuICBjb250ZW50OiBcIu6kj1wiOyB9XG5cbi5pY29uLXJlcGVyZXM6YmVmb3JlIHtcbiAgY29udGVudDogXCLupJBcIjsgfVxuXG4uaWNvbi1jYWxlbmRhcjpiZWZvcmUsIC5pY29uLXZpc2l0bW9yZTI6YmVmb3JlIHtcbiAgY29udGVudDogXCLupIpcIjsgfVxuXG4uaWNvbi1tdXNldW1tb3JlOmJlZm9yZSwgLmljb24tdmlzaXRtb3JlMzpiZWZvcmUge1xuICBjb250ZW50OiBcIu6ki1wiOyB9XG5cbi5pY29uLXBsYW46YmVmb3JlLCAuaWNvbi12aXNpdG1vcmUxOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7qSMXCI7IH1cblxuLmljb24tcGxheTpiZWZvcmUge1xuICBjb250ZW50OiBcIu6kiVwiOyB9XG5cbi5pY29uLW1haWw6YmVmb3JlIHtcbiAgY29udGVudDogXCLupIRcIjsgfVxuXG4uaWNvbi1jbG91ZF9kb2M6YmVmb3JlIHtcbiAgY29udGVudDogXCLupIVcIjsgfVxuXG4uaWNvbi1jb21tZW50OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7qSGXCI7IH1cblxuLmljb24tZG9jOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7qSHXCI7IH1cblxuLmljb24tbGlua2RvYzpiZWZvcmUge1xuICBjb250ZW50OiBcIu6kiFwiOyB9XG5cbi5pY29uLWxpbms6YmVmb3JlIHtcbiAgY29udGVudDogXCLupINcIjsgfVxuXG4uaWNvbi1hcnJvX2xlZnQ6YmVmb3JlLCAuZmEtY2hldnJvbi1sZWZ0OmJlZm9yZSwgLnNsaWNrLXByZXY6YmVmb3JlIHtcbiAgY29udGVudDogXCLupIBcIjsgfVxuXG4uaWNvbi1hcnJvX3JpZ2h0OmJlZm9yZSwgLmZhLWNoZXZyb24tcmlnaHQ6YmVmb3JlLCB1bC5hcnJvdy0yIGxpOm5vdCgubm8tYnVsbGV0KTpiZWZvcmUsIHVsLmNoZXZyb246bm90KC5kZWZlcikgbGk6bm90KC5uby1idWxsZXQpOmJlZm9yZSwgdWwuY2hldnJvbi5kZWZlciBsaTpub3QoLm5vLWJ1bGxldCkgPiA6Zmlyc3QtY2hpbGQ6YmVmb3JlLCB1bC5jaGV2cm9uLnNtYWxsZXIgbGk6bm90KC5uby1idWxsZXQpOmJlZm9yZSwgLnNsaWNrLW5leHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLupIFcIjsgfVxuXG4uaWNvbi1tYXA6YmVmb3JlIHtcbiAgY29udGVudDogXCLupIJcIjsgfVxuXG4uaWNvbi1pbWFnZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu6kk1wiOyB9XG5cbi5pY29uLXZpZGVvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7qSUXCI7IH1cblxuLmljb24tc291bmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLupJJcIjsgfVxuXG4uaWNvbi1zZWFyY2g6YmVmb3JlLCAuZmEtc2VhcmNoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7qSRXCI7IH1cblxuLmljb24tbXVzaWM6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgIFcIjsgfVxuXG4uaWNvbi1maWxtOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74CIXCI7IH1cblxuLmljb24tdm9sdW1lLXVwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74CoXCI7IH1cblxuLmljb24tdmlkZW8tY2FtZXJhOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74C9XCI7IH1cblxuLmljb24taW1hZ2UyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74C+XCI7IH1cblxuLmljb24tcGhvdG86YmVmb3JlIHtcbiAgY29udGVudDogXCLvgL5cIjsgfVxuXG4uaWNvbi1waWN0dXJlLW86YmVmb3JlIHtcbiAgY29udGVudDogXCLvgL5cIjsgfVxuXG4uaWNvbi1wZW5jaWw6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgYBcIjsgfVxuXG4uaWNvbi1xdWVzdGlvbi1jaXJjbGU6YmVmb3JlLCAuZmEtcXVlc3Rpb24tY2lyY2xlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74GZXCI7IH1cblxuLmljb24tZXllOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74GuXCI7IH1cblxuLmljb24tZXllLXNsYXNoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74GwXCI7IH1cblxuLmljb24tdHdpdHRlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+CmVwiOyB9XG5cbi5pY29uLWZhY2Vib29rOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74KaXCI7IH1cblxuLmljb24tZmlsdGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74KwXCI7IH1cblxuLmljb24tZmlsZS10ZXh0LW86YmVmb3JlIHtcbiAgY29udGVudDogXCLvg7ZcIjsgfVxuXG4uaWNvbi1vcmRlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+FkFwiOyB9XG5cbi5pY29uLXlvdXR1YmUtc3F1YXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74WmXCI7IH1cblxuLmljb24teW91dHViZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+Fp1wiOyB9XG5cbi5pY29uLW5ld3NwYXBlci1vOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74eqXCI7IH1cblxuLyogU2xpZGVyICovXG4uc2xpY2stc2xpZGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgLXdlYmtpdC10b3VjaC1jYWxsb3V0OiBub25lO1xuICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICAta2h0bWwtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tcy11c2VyLXNlbGVjdDogbm9uZTtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tcy10b3VjaC1hY3Rpb246IHBhbi15O1xuICB0b3VjaC1hY3Rpb246IHBhbi15O1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG5cbi5zbGljay1saXN0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwOyB9XG4gIC5zbGljay1saXN0OmZvY3VzIHtcbiAgICBvdXRsaW5lOiBub25lOyB9XG4gIC5zbGljay1saXN0LmRyYWdnaW5nIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgY3Vyc29yOiBoYW5kOyB9XG5cbi5zbGljay1zbGlkZXIgLnNsaWNrLXRyYWNrLFxuLnNsaWNrLXNsaWRlciAuc2xpY2stbGlzdCB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTsgfVxuXG4uc2xpY2stdHJhY2sge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbiAgZGlzcGxheTogYmxvY2s7IH1cbiAgLnNsaWNrLXRyYWNrOmJlZm9yZSwgLnNsaWNrLXRyYWNrOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGRpc3BsYXk6IHRhYmxlOyB9XG4gIC5zbGljay10cmFjazphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgLnNsaWNrLWxvYWRpbmcgLnNsaWNrLXRyYWNrIHtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47IH1cblxuLnNsaWNrLXNsaWRlIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIGhlaWdodDogMTAwJTtcbiAgbWluLWhlaWdodDogMXB4O1xuICBkaXNwbGF5OiBub25lOyB9XG4gIFtkaXI9XCJydGxcIl0gLnNsaWNrLXNsaWRlIHtcbiAgICBmbG9hdDogcmlnaHQ7IH1cbiAgLnNsaWNrLXNsaWRlIGltZyB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cbiAgLnNsaWNrLXNsaWRlLnNsaWNrLWxvYWRpbmcgaW1nIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIC5zbGljay1zbGlkZS5kcmFnZ2luZyBpbWcge1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lOyB9XG4gIC5zbGljay1pbml0aWFsaXplZCAuc2xpY2stc2xpZGUge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gIC5zbGljay1sb2FkaW5nIC5zbGljay1zbGlkZSB7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuOyB9XG4gIC5zbGljay12ZXJ0aWNhbCAuc2xpY2stc2xpZGUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDsgfVxuXG4uc2xpY2stYXJyb3cuc2xpY2staGlkZGVuIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4uc2xpY2stYXJyb3cge1xuICBmb250LWZhbWlseTogJ2ljb21vb24nOyB9XG4gIC5zbGljay1hcnJvdzpiZWZvcmUge1xuICAgIGZvbnQtZmFtaWx5OiAnaWNvbW9vbic7IH1cblxuLnNsaWNrLXByZXYge1xuICBmb250LXNpemU6IDA7IH1cbiAgLnNsaWNrLXByZXY6YmVmb3JlIHtcbiAgICBmb250LXNpemU6IDRyZW07IH1cblxuLnNsaWNrLW5leHQge1xuICBmb250LXNpemU6IDA7IH1cbiAgLnNsaWNrLW5leHQ6YmVmb3JlIHtcbiAgICBmb250LXNpemU6IDRyZW07IH1cblxuLnJldmVhbCAuc2xpY2stcHJldiwgLnJldmVhbCAuc2xpY2stbmV4dCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIHdpZHRoOiAycmVtO1xuICBoZWlnaHQ6IDJyZW07XG4gIHotaW5kZXg6IDIwO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwJSwgLTUwJSk7IH1cbiAgLnJldmVhbCAuc2xpY2stcHJldjpiZWZvcmUsIC5yZXZlYWwgLnNsaWNrLW5leHQ6YmVmb3JlIHtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuNSk7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDUwJTtcbiAgICB0b3A6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICBjb2xvcjogI0ZGRjtcbiAgICBib3JkZXItcmFkaXVzOiAxMDBweDtcbiAgICBmb250LXNpemU6IDEuMXJlbTtcbiAgICBwYWRkaW5nOiAwLjVyZW07IH1cblxuLnJldmVhbCAuc2xpY2stcHJldiB7XG4gIGxlZnQ6IDAuMnJlbTsgfVxuXG4ucmV2ZWFsIC5jbG9zZS1idXR0b24ge1xuICBoZWlnaHQ6IDJyZW07XG4gIHdpZHRoOiAycmVtO1xuICB6LWluZGV4OiAzMDsgfVxuXG4ucmV2ZWFsIC5zbGljay1uZXh0IHtcbiAgcmlnaHQ6IDAuMnJlbTsgfVxuXG4vKiBTbGlkZXIgKi9cbi5zbGljay1sb2FkaW5nIC5zbGljay1saXN0IHtcbiAgYmFja2dyb3VuZDogI2ZmZiB1cmwoXCIuL2FqYXgtbG9hZGVyLmdpZlwiKSBjZW50ZXIgY2VudGVyIG5vLXJlcGVhdDsgfVxuXG4vKiBJY29ucyAqL1xuLnJldmVhbCAuY2xvc2UtYnV0dG9uIHtcbiAgaGVpZ2h0OiAzcmVtO1xuICB3aWR0aDogM3JlbTtcbiAgYm9yZGVyLXJhZGl1czogMTAwcHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjFyZW07XG4gIGJhY2tncm91bmQ6ICMwMDA7IH1cbiAgLnJldmVhbCAuY2xvc2UtYnV0dG9uIHNwYW4ge1xuICAgIHdpZHRoOiAzcmVtO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBsaW5lLWhlaWdodDogMXJlbTtcbiAgICBjb2xvcjogI0ZGRjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA1MCU7XG4gICAgbGVmdDogNTAlO1xuICAgIGZvbnQtc2l6ZTogM3JlbTtcbiAgICBoZWlnaHQ6IDEuNXJlbTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpOyB9XG5cbi8qIEFycm93cyAqL1xuLm1lbnUtZ2FsbGVyeSBhIHtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBjb2xvcjogIzBhMGEwYTsgfVxuICAubWVudS1nYWxsZXJ5IGE6aG92ZXIge1xuICAgIGNvbG9yOiAjZGQzMzMzOyB9XG5cbi5tZW51LWdhbGxlcnkgLmRyb3Bkb3duLXBhbmUge1xuICBwYWRkaW5nOiAwOyB9XG4gIC5tZW51LWdhbGxlcnkgLmRyb3Bkb3duLXBhbmUgbGkge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZGRkOyB9XG4gICAgLm1lbnUtZ2FsbGVyeSAuZHJvcGRvd24tcGFuZSBsaTpsYXN0LWNoaWxkIHtcbiAgICAgIGJvcmRlci1ib3R0b206IDA7IH1cblxuLm1lbnUtZ2FsbGVyeSAuZHJvcGRvd24ubWVudSAuZmlyc3Qtc3ViIHtcbiAgYm9yZGVyOiAxcHggc29saWQgI0RERDsgfVxuXG4uYnV0dG9uLmV4cG8ge1xuICBiYWNrZ3JvdW5kOiAjZjdmN2Y3O1xuICBib3JkZXI6ICM4YThhOGEgM3B4IHNvbGlkO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGNvbG9yOiAjMGEwYTBhO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBwYWRkaW5nLXJpZ2h0OiA0cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIHRleHQtaW5kZW50OiAxcmVtOyB9XG4gIC5idXR0b24uZXhwbzphZnRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAwO1xuICAgIHRvcDogMDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgd2lkdGg6IDNyZW07XG4gICAgbGluZS1oZWlnaHQ6IDEwMCU7XG4gICAgY29udGVudDogXCIrXCI7XG4gICAgYm9yZGVyOiAjOGE4YThhIDNweCBzb2xpZDtcbiAgICBiYWNrZ3JvdW5kOiAjOGE4YThhO1xuICAgIGNvbG9yOiB3aGl0ZTtcbiAgICBmb250LXNpemU6IDJyZW07XG4gICAgbGluZS1oZWlnaHQ6IDJyZW07XG4gICAgdGV4dC1pbmRlbnQ6IDByZW07IH1cblxuLmdhbGxlcnlFeHBvIHtcbiAgLyogRG90cyAqLyB9XG4gIC5nYWxsZXJ5RXhwbyAuZGVzY1NsaWRlIHtcbiAgICBwYWRkaW5nOiAwIDJyZW0gMCAwOyB9XG4gIC5nYWxsZXJ5RXhwbyAudGl0bGVTbGlkZSAqIHtcbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTsgfVxuICAuZ2FsbGVyeUV4cG8gLnRpdGxlU2xpZGUgaDMsIC5nYWxsZXJ5RXhwbyAudGl0bGVTbGlkZSAuaDMsIC5nYWxsZXJ5RXhwbyAudGl0bGVTbGlkZSAucnN0IGgyLCAucnN0IC5nYWxsZXJ5RXhwbyAudGl0bGVTbGlkZSBoMiwgLmdhbGxlcnlFeHBvIC50aXRsZVNsaWRlIC5yc3QgaDEsIC5yc3QgLmdhbGxlcnlFeHBvIC50aXRsZVNsaWRlIGgxLCAuZ2FsbGVyeUV4cG8gLnRpdGxlU2xpZGUgLnJzdCAudGl0bGUtMSwgLnJzdCAuZ2FsbGVyeUV4cG8gLnRpdGxlU2xpZGUgLnRpdGxlLTEsIC5nYWxsZXJ5RXhwbyAudGl0bGVTbGlkZSAucnN0IC50aXRsZS0yLCAucnN0IC5nYWxsZXJ5RXhwbyAudGl0bGVTbGlkZSAudGl0bGUtMiwgLmdhbGxlcnlFeHBvIC50aXRsZVNsaWRlIC50aXRsZS0zIHtcbiAgICBmb250LXdlaWdodDogODAwOyB9XG4gIC5nYWxsZXJ5RXhwbyAuc2xpY2stY3VycmVudCB7XG4gICAgaGVpZ2h0OiBhdXRvOyB9XG4gIC5nYWxsZXJ5RXhwbyAuc2xpY2stc2xpZGU6bm90KC5zbGljay1jdXJyZW50KSB7XG4gICAgaGVpZ2h0OiAwOyB9XG4gIC5nYWxsZXJ5RXhwbyAuc2xpZGVyLWZvciB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7IH1cbiAgICAuZ2FsbGVyeUV4cG8gLnNsaWRlci1mb3IgLnNsaWNrLXByZXYsIC5nYWxsZXJ5RXhwbyAuc2xpZGVyLWZvciAuc2xpY2stYXJyb3cge1xuICAgICAgdG9wOiAwO1xuICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbiAgICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7XG4gICAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbiAgICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApOyB9XG4gIC5nYWxsZXJ5RXhwbyAuc2xpZGVyLW5hdiB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50OyB9XG4gICAgLmdhbGxlcnlFeHBvIC5zbGlkZXItbmF2IGltZyB7XG4gICAgICBtYXJnaW46IDMlO1xuICAgICAgbWF4LXdpZHRoOiA5NiU7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAjREREOyB9XG4gIC5nYWxsZXJ5RXhwbyAuaW1hZ2Utc2xpZGVyLWNvbnRhaW5lciB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgICAuZ2FsbGVyeUV4cG8gLmltYWdlLXNsaWRlci1jb250YWluZXIgYSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgICAgLmdhbGxlcnlFeHBvIC5pbWFnZS1zbGlkZXItY29udGFpbmVyIGE6aG92ZXI6YWZ0ZXIge1xuICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgICAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgICAgICBjb250ZW50OiBcIlxcZTkxMVwiO1xuICAgICAgICBmb250LWZhbWlseTogaWNvbW9vbjtcbiAgICAgICAgZm9udC1zaXplOiAycmVtO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogNTAlO1xuICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgICAgIGNvbG9yOiAjRkZGO1xuICAgICAgICBsaW5lLWhlaWdodDogMnJlbTtcbiAgICAgICAgcGFkZGluZzogMC44cmVtO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgei1pbmRleDogMTAwO1xuICAgICAgICBiYWNrZ3JvdW5kOiAjMDAwO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDEwMCU7IH1cbiAgICAgIC5nYWxsZXJ5RXhwbyAuaW1hZ2Utc2xpZGVyLWNvbnRhaW5lciBhOmhvdmVyOmJlZm9yZSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuNSk7IH1cbiAgICAuZ2FsbGVyeUV4cG8gLmltYWdlLXNsaWRlci1jb250YWluZXIgLmltYWdlLXNsaWRlciB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLmdhbGxlcnlFeHBvIC5zbGljay1wcmV2LFxuICAuZ2FsbGVyeUV4cG8gLnNsaWNrLW5leHQge1xuICAgIGxlZnQ6IDA7XG4gICAgei1pbmRleDogMTAwO1xuICAgIGJhY2tncm91bmQ6ICNmN2Y3Zjc7XG4gICAgcGFkZGluZzogMC4zcmVtO1xuICAgIGhlaWdodDogMi4ycmVtO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAyLjJyZW07XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxpbmUtaGVpZ2h0OiAwcHg7XG4gICAgZm9udC1zaXplOiAwcHg7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB0b3A6IDUwJTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC01MCUpO1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgb3V0bGluZTogbm9uZTsgfVxuICAgIC5nYWxsZXJ5RXhwbyAuc2xpY2stcHJldjpob3ZlciwgLmdhbGxlcnlFeHBvIC5zbGljay1wcmV2OmZvY3VzLFxuICAgIC5nYWxsZXJ5RXhwbyAuc2xpY2stbmV4dDpob3ZlcixcbiAgICAuZ2FsbGVyeUV4cG8gLnNsaWNrLW5leHQ6Zm9jdXMge1xuICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgIGNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAgICAgLmdhbGxlcnlFeHBvIC5zbGljay1wcmV2OmhvdmVyOmJlZm9yZSwgLmdhbGxlcnlFeHBvIC5zbGljay1wcmV2OmZvY3VzOmJlZm9yZSxcbiAgICAgIC5nYWxsZXJ5RXhwbyAuc2xpY2stbmV4dDpob3ZlcjpiZWZvcmUsXG4gICAgICAuZ2FsbGVyeUV4cG8gLnNsaWNrLW5leHQ6Zm9jdXM6YmVmb3JlIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgY29sb3I6ICNkZDMzMzM7IH1cbiAgICAuZ2FsbGVyeUV4cG8gLnNsaWNrLXByZXYuc2xpY2stZGlzYWJsZWQ6YmVmb3JlLFxuICAgIC5nYWxsZXJ5RXhwbyAuc2xpY2stbmV4dC5zbGljay1kaXNhYmxlZDpiZWZvcmUge1xuICAgICAgb3BhY2l0eTogMC4yNTsgfVxuICAgIC5nYWxsZXJ5RXhwbyAuc2xpY2stcHJldjpiZWZvcmUsXG4gICAgLmdhbGxlcnlFeHBvIC5zbGljay1uZXh0OmJlZm9yZSB7XG4gICAgICBmb250LWZhbWlseTogXCJpY29tb29uXCI7XG4gICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgIGNvbG9yOiBibGFjaztcbiAgICAgIG9wYWNpdHk6IDAuNzU7XG4gICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7IH1cbiAgLmdhbGxlcnlFeHBvIC5zbGljay1wcmV2IHtcbiAgICBsZWZ0OiAwcHg7IH1cbiAgICBbZGlyPVwicnRsXCJdIC5nYWxsZXJ5RXhwbyAuc2xpY2stcHJldiB7XG4gICAgICBsZWZ0OiBhdXRvO1xuICAgICAgcmlnaHQ6IDBweDsgfVxuICAgIC5nYWxsZXJ5RXhwbyAuc2xpY2stcHJldjpiZWZvcmUge1xuICAgICAgY29udGVudDogXCLupIBcIjsgfVxuICAgICAgW2Rpcj1cInJ0bFwiXSAuZ2FsbGVyeUV4cG8gLnNsaWNrLXByZXY6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogXCLupIFcIjsgfVxuICAuZ2FsbGVyeUV4cG8gLnNsaWNrLW5leHQge1xuICAgIHJpZ2h0OiAwcHg7XG4gICAgbGVmdDogYXV0bzsgfVxuICAgIFtkaXI9XCJydGxcIl0gLmdhbGxlcnlFeHBvIC5zbGljay1uZXh0IHtcbiAgICAgIGxlZnQ6IDBweDtcbiAgICAgIHJpZ2h0OiBhdXRvOyB9XG4gICAgLmdhbGxlcnlFeHBvIC5zbGljay1uZXh0OmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBcIu6kgVwiOyB9XG4gICAgICBbZGlyPVwicnRsXCJdIC5nYWxsZXJ5RXhwbyAuc2xpY2stbmV4dDpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiBcIu6kgFwiOyB9XG4gIC5nYWxsZXJ5RXhwbyAuc2xpY2stZG90dGVkLnNsaWNrLXNsaWRlciB7XG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDsgfVxuICAuZ2FsbGVyeUV4cG8gLnNsaWNrLWRvdHMge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3R0b206IC0yNXB4O1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbWFyZ2luOiAwO1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgLmdhbGxlcnlFeHBvIC5zbGljay1kb3RzIGxpIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIGhlaWdodDogMjBweDtcbiAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgbWFyZ2luOiAwIDVweDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgICAgIC5nYWxsZXJ5RXhwbyAuc2xpY2stZG90cyBsaSBidXR0b24ge1xuICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgaGVpZ2h0OiAyMHB4O1xuICAgICAgICB3aWR0aDogMjBweDtcbiAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDBweDtcbiAgICAgICAgZm9udC1zaXplOiAwcHg7XG4gICAgICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgcGFkZGluZzogNXB4O1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgICAgICAgLmdhbGxlcnlFeHBvIC5zbGljay1kb3RzIGxpIGJ1dHRvbjpob3ZlciwgLmdhbGxlcnlFeHBvIC5zbGljay1kb3RzIGxpIGJ1dHRvbjpmb2N1cyB7XG4gICAgICAgICAgb3V0bGluZTogbm9uZTsgfVxuICAgICAgICAgIC5nYWxsZXJ5RXhwbyAuc2xpY2stZG90cyBsaSBidXR0b246aG92ZXI6YmVmb3JlLCAuZ2FsbGVyeUV4cG8gLnNsaWNrLWRvdHMgbGkgYnV0dG9uOmZvY3VzOmJlZm9yZSB7XG4gICAgICAgICAgICBvcGFjaXR5OiAxOyB9XG4gICAgICAgIC5nYWxsZXJ5RXhwbyAuc2xpY2stZG90cyBsaSBidXR0b246YmVmb3JlIHtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgY29udGVudDogXCLvhZBcIjtcbiAgICAgICAgICB3aWR0aDogMjBweDtcbiAgICAgICAgICBoZWlnaHQ6IDIwcHg7XG4gICAgICAgICAgZm9udC1mYW1pbHk6IFwiaWNvbW9vblwiO1xuICAgICAgICAgIGZvbnQtc2l6ZTogNnB4O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICBjb2xvcjogYmxhY2s7XG4gICAgICAgICAgb3BhY2l0eTogMC4yNTtcbiAgICAgICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgICAgICAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlOyB9XG4gICAgICAuZ2FsbGVyeUV4cG8gLnNsaWNrLWRvdHMgbGkuc2xpY2stYWN0aXZlIGJ1dHRvbjpiZWZvcmUge1xuICAgICAgICBjb2xvcjogYmxhY2s7XG4gICAgICAgIG9wYWNpdHk6IDAuNzU7IH1cblxuLypGb250cyBsaWJyYXJ5Ki9cbi8qRm9udHMgbGlicmFyeSovXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdJbnRlcic7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDEwMDtcbiAgZm9udC1kaXNwbGF5OiBzd2FwO1xuICBzcmM6IHVybChcIi4uL2ZvbnRzL2ludGVyL0ludGVyLVRoaW4ud29mZjI/dj0zLjE1XCIpIGZvcm1hdChcIndvZmYyXCIpLCB1cmwoXCIuLi9mb250cy9pbnRlci9JbnRlci1UaGluLndvZmY/dj0zLjE1XCIpIGZvcm1hdChcIndvZmZcIik7IH1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnSW50ZXInO1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIGZvbnQtd2VpZ2h0OiAxMDA7XG4gIGZvbnQtZGlzcGxheTogc3dhcDtcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9pbnRlci9JbnRlci1UaGluSXRhbGljLndvZmYyP3Y9My4xNVwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSwgdXJsKFwiLi4vZm9udHMvaW50ZXIvSW50ZXItVGhpbkl0YWxpYy53b2ZmP3Y9My4xNVwiKSBmb3JtYXQoXCJ3b2ZmXCIpOyB9XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ0ludGVyJztcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogMjAwO1xuICBmb250LWRpc3BsYXk6IHN3YXA7XG4gIHNyYzogdXJsKFwiLi4vZm9udHMvaW50ZXIvSW50ZXItRXh0cmFMaWdodC53b2ZmMj92PTMuMTVcIikgZm9ybWF0KFwid29mZjJcIiksIHVybChcIi4uL2ZvbnRzL2ludGVyL0ludGVyLUV4dHJhTGlnaHQud29mZj92PTMuMTVcIikgZm9ybWF0KFwid29mZlwiKTsgfVxuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdJbnRlcic7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgZm9udC13ZWlnaHQ6IDIwMDtcbiAgZm9udC1kaXNwbGF5OiBzd2FwO1xuICBzcmM6IHVybChcIi4uL2ZvbnRzL2ludGVyL0ludGVyLUV4dHJhTGlnaHRJdGFsaWMud29mZjI/dj0zLjE1XCIpIGZvcm1hdChcIndvZmYyXCIpLCB1cmwoXCIuLi9mb250cy9pbnRlci9JbnRlci1FeHRyYUxpZ2h0SXRhbGljLndvZmY/dj0zLjE1XCIpIGZvcm1hdChcIndvZmZcIik7IH1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnSW50ZXInO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIGZvbnQtZGlzcGxheTogc3dhcDtcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9pbnRlci9JbnRlci1MaWdodC53b2ZmMj92PTMuMTVcIikgZm9ybWF0KFwid29mZjJcIiksIHVybChcIi4uL2ZvbnRzL2ludGVyL0ludGVyLUxpZ2h0LndvZmY/dj0zLjE1XCIpIGZvcm1hdChcIndvZmZcIik7IH1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnSW50ZXInO1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIGZvbnQtZGlzcGxheTogc3dhcDtcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9pbnRlci9JbnRlci1MaWdodEl0YWxpYy53b2ZmMj92PTMuMTVcIikgZm9ybWF0KFwid29mZjJcIiksIHVybChcIi4uL2ZvbnRzL2ludGVyL0ludGVyLUxpZ2h0SXRhbGljLndvZmY/dj0zLjE1XCIpIGZvcm1hdChcIndvZmZcIik7IH1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnSW50ZXInO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGZvbnQtZGlzcGxheTogc3dhcDtcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9pbnRlci9JbnRlci1SZWd1bGFyLndvZmYyP3Y9My4xNVwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSwgdXJsKFwiLi4vZm9udHMvaW50ZXIvSW50ZXItUmVndWxhci53b2ZmP3Y9My4xNVwiKSBmb3JtYXQoXCJ3b2ZmXCIpOyB9XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ0ludGVyJztcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICBmb250LXdlaWdodDogNDAwO1xuICBmb250LWRpc3BsYXk6IHN3YXA7XG4gIHNyYzogdXJsKFwiLi4vZm9udHMvaW50ZXIvSW50ZXItSXRhbGljLndvZmYyP3Y9My4xNVwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSwgdXJsKFwiLi4vZm9udHMvaW50ZXIvSW50ZXItSXRhbGljLndvZmY/dj0zLjE1XCIpIGZvcm1hdChcIndvZmZcIik7IH1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnSW50ZXInO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGZvbnQtZGlzcGxheTogc3dhcDtcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9pbnRlci9JbnRlci1NZWRpdW0ud29mZjI/dj0zLjE1XCIpIGZvcm1hdChcIndvZmYyXCIpLCB1cmwoXCIuLi9mb250cy9pbnRlci9JbnRlci1NZWRpdW0ud29mZj92PTMuMTVcIikgZm9ybWF0KFwid29mZlwiKTsgfVxuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdJbnRlcic7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgZm9udC1kaXNwbGF5OiBzd2FwO1xuICBzcmM6IHVybChcIi4uL2ZvbnRzL2ludGVyL0ludGVyLU1lZGl1bUl0YWxpYy53b2ZmMj92PTMuMTVcIikgZm9ybWF0KFwid29mZjJcIiksIHVybChcIi4uL2ZvbnRzL2ludGVyL0ludGVyLU1lZGl1bUl0YWxpYy53b2ZmP3Y9My4xNVwiKSBmb3JtYXQoXCJ3b2ZmXCIpOyB9XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ0ludGVyJztcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogNjAwO1xuICBmb250LWRpc3BsYXk6IHN3YXA7XG4gIHNyYzogdXJsKFwiLi4vZm9udHMvaW50ZXIvSW50ZXItU2VtaUJvbGQud29mZjI/dj0zLjE1XCIpIGZvcm1hdChcIndvZmYyXCIpLCB1cmwoXCIuLi9mb250cy9pbnRlci9JbnRlci1TZW1pQm9sZC53b2ZmP3Y9My4xNVwiKSBmb3JtYXQoXCJ3b2ZmXCIpOyB9XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ0ludGVyJztcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICBmb250LXdlaWdodDogNjAwO1xuICBmb250LWRpc3BsYXk6IHN3YXA7XG4gIHNyYzogdXJsKFwiLi4vZm9udHMvaW50ZXIvSW50ZXItU2VtaUJvbGRJdGFsaWMud29mZjI/dj0zLjE1XCIpIGZvcm1hdChcIndvZmYyXCIpLCB1cmwoXCIuLi9mb250cy9pbnRlci9JbnRlci1TZW1pQm9sZEl0YWxpYy53b2ZmP3Y9My4xNVwiKSBmb3JtYXQoXCJ3b2ZmXCIpOyB9XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ0ludGVyJztcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogNzAwO1xuICBmb250LWRpc3BsYXk6IHN3YXA7XG4gIHNyYzogdXJsKFwiLi4vZm9udHMvaW50ZXIvSW50ZXItQm9sZC53b2ZmMj92PTMuMTVcIikgZm9ybWF0KFwid29mZjJcIiksIHVybChcIi4uL2ZvbnRzL2ludGVyL0ludGVyLUJvbGQud29mZj92PTMuMTVcIikgZm9ybWF0KFwid29mZlwiKTsgfVxuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdJbnRlcic7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgZm9udC1kaXNwbGF5OiBzd2FwO1xuICBzcmM6IHVybChcIi4uL2ZvbnRzL2ludGVyL0ludGVyLUJvbGRJdGFsaWMud29mZjI/dj0zLjE1XCIpIGZvcm1hdChcIndvZmYyXCIpLCB1cmwoXCIuLi9mb250cy9pbnRlci9JbnRlci1Cb2xkSXRhbGljLndvZmY/dj0zLjE1XCIpIGZvcm1hdChcIndvZmZcIik7IH1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnSW50ZXInO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA4MDA7XG4gIGZvbnQtZGlzcGxheTogc3dhcDtcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9pbnRlci9JbnRlci1FeHRyYUJvbGQud29mZjI/dj0zLjE1XCIpIGZvcm1hdChcIndvZmYyXCIpLCB1cmwoXCIuLi9mb250cy9pbnRlci9JbnRlci1FeHRyYUJvbGQud29mZj92PTMuMTVcIikgZm9ybWF0KFwid29mZlwiKTsgfVxuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdJbnRlcic7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgZm9udC13ZWlnaHQ6IDgwMDtcbiAgZm9udC1kaXNwbGF5OiBzd2FwO1xuICBzcmM6IHVybChcIi4uL2ZvbnRzL2ludGVyL0ludGVyLUV4dHJhQm9sZEl0YWxpYy53b2ZmMj92PTMuMTVcIikgZm9ybWF0KFwid29mZjJcIiksIHVybChcIi4uL2ZvbnRzL2ludGVyL0ludGVyLUV4dHJhQm9sZEl0YWxpYy53b2ZmP3Y9My4xNVwiKSBmb3JtYXQoXCJ3b2ZmXCIpOyB9XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ0ludGVyJztcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogOTAwO1xuICBmb250LWRpc3BsYXk6IHN3YXA7XG4gIHNyYzogdXJsKFwiLi4vZm9udHMvaW50ZXIvSW50ZXItQmxhY2sud29mZjI/dj0zLjE1XCIpIGZvcm1hdChcIndvZmYyXCIpLCB1cmwoXCIuLi9mb250cy9pbnRlci9JbnRlci1CbGFjay53b2ZmP3Y9My4xNVwiKSBmb3JtYXQoXCJ3b2ZmXCIpOyB9XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ0ludGVyJztcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICBmb250LXdlaWdodDogOTAwO1xuICBmb250LWRpc3BsYXk6IHN3YXA7XG4gIHNyYzogdXJsKFwiLi4vZm9udHMvaW50ZXIvSW50ZXItQmxhY2tJdGFsaWMud29mZjI/dj0zLjE1XCIpIGZvcm1hdChcIndvZmYyXCIpLCB1cmwoXCIuLi9mb250cy9pbnRlci9JbnRlci1CbGFja0l0YWxpYy53b2ZmP3Y9My4xNVwiKSBmb3JtYXQoXCJ3b2ZmXCIpOyB9XG5cbi8qXG4gKiBWYXJpb3VzIGNvbnRlbnQgc3R5bGVzIHJlbGF0ZWQgdG8gc3BlY2lmaWMgd2ViYXBwIHBhcnRzIChjbXMsIGJsb2csXG4gKiBhY2NvdW50cywgZXRjLi4pXG4gKlxuICogRm9yIG1vcmUgY29tbW9uIGFuZCBnbG9iYWwgY29udGVudHMsIHByZWZlciB0byBwdXQgdGhlbSBpbiBhZGRvbnMvXG4gKlxuICogUmVtZW1iZXIgdGhlc2Ugc3R5bGUgYXJlIGVuZm9yY2VkIHdpdGhpbiAjYm9keV9jb250ZW50IHNvIHRoZXkgd2lsbFxuICogb3ZlcnJpZGUgYW55IGJhc2ljIHN0eWxlIHdpdGhvdXQgYW4gaWRcbiAqL1xuYXVkaW8sIHZpZGVvIHtcbiAgd2lkdGg6IDEwMCU7IH1cblxuLnJpZ2h0IHtcbiAgZmxvYXQ6IHJpZ2h0O1xuICB3aWR0aDogYXV0bzsgfVxuXG4ubGVmdCB7XG4gIGZsb2F0OiBsZWZ0OyB9XG5cbi5hYnNvUmlnaHQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7IH1cblxuaSB7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDsgfVxuXG5cbmgzLFxuLmgzLFxuLnJzdCBoMixcbi5yc3QgaDEsXG4ucnN0IC50aXRsZS0xLFxuLnJzdCAudGl0bGUtMixcbi50aXRsZS0zIHtcbiAgZm9udC13ZWlnaHQ6IDIwMDsgfVxuXG5cbmg1LFxuLnJzdCBoNCxcbi5yc3QgaDMsXG4ucnN0IC5oMyxcbi5yc3QgaDIsXG4ucnN0IGgxLFxuLnJzdCAudGl0bGUtMSxcbi5yc3QgLnRpdGxlLTIsXG4ucnN0IC50aXRsZS0zLFxuLnJzdCAudGl0bGUtNCxcbi50aXRsZS01IHtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIGg1OmJlZm9yZSwgLnJzdCBoNDpiZWZvcmUsIC5yc3QgaDM6YmVmb3JlLCAucnN0IC5oMzpiZWZvcmUsIC5yc3QgaDI6YmVmb3JlLCAucnN0IGgxOmJlZm9yZSwgLnJzdCAudGl0bGUtMTpiZWZvcmUsIC5yc3QgLnRpdGxlLTI6YmVmb3JlLCAucnN0IC50aXRsZS0zOmJlZm9yZSwgLnJzdCAudGl0bGUtNDpiZWZvcmUsIC50aXRsZS01OmJlZm9yZSB7XG4gICAgY29udGVudDogJyc7XG4gICAgYmFja2dyb3VuZDogI2RkMzMzMztcbiAgICBoZWlnaHQ6IDJweDtcbiAgICB3aWR0aDogMXJlbTtcbiAgICBib3R0b206IC00cHg7XG4gICAgbGVmdDogMDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7IH1cblxuLmJhc2VsaW5lIHN2ZyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdG9wOiAxcmVtO1xuICBsZWZ0OiAwLjRyZW07IH1cblxuKjpub3QoLnNlY3Rpb24ucmVkKSAucmVkLFxuYS5yZWQge1xuICBjb2xvcjogI2RkMzMzMzsgfVxuXG5oMS5hcnRpY2xlLXRpdGxlLCAuYXJ0aWNsZS10aXRsZS50aXRsZS0xIHtcbiAgZm9udC13ZWlnaHQ6IDQwMCAhaW1wb3J0YW50O1xuICBsaW5lLWhlaWdodDogMS4xO1xuICBmb250LWZhbWlseTogJ1NvdXJjZSBTYW5zIFBybycsIHNhbnMtc2VyaWY7XG4gIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjQ0NDO1xuICBwYWRkaW5nLWJvdHRvbTogMXJlbTtcbiAgdGV4dC10cmFuc2Zvcm06IG5vcm1hbDtcbiAgZm9udC1zaXplOiAyLjNyZW07IH1cblxuLmhlYWRlckF0dGljbGUgaDEsIC5oZWFkZXJBdHRpY2xlIC50aXRsZS0xLCAjdmlzaXQtZGVjcmlwdGlvbiBoMSwgI3Zpc2l0LWRlY3JpcHRpb24gLnRpdGxlLTEge1xuICBmb250LXdlaWdodDogNDAwICFpbXBvcnRhbnQ7XG4gIGxpbmUtaGVpZ2h0OiAxLjE7XG4gIGZvbnQtZmFtaWx5OiAnU291cmNlIFNhbnMgUHJvJywgc2Fucy1zZXJpZjtcbiAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICNDQ0M7XG4gIHBhZGRpbmctYm90dG9tOiAxcmVtO1xuICB0ZXh0LXRyYW5zZm9ybTogbm9ybWFsO1xuICBmb250LXNpemU6IDIuM3JlbTsgfVxuXG4uaGVhZGVyQXR0aWNsZSBoNCwgLmhlYWRlckF0dGljbGUgLnJzdCBoMywgLnJzdCAuaGVhZGVyQXR0aWNsZSBoMywgLmhlYWRlckF0dGljbGUgLnJzdCAuaDMsIC5yc3QgLmhlYWRlckF0dGljbGUgLmgzLCAuaGVhZGVyQXR0aWNsZSAucnN0IGgyLCAucnN0IC5oZWFkZXJBdHRpY2xlIGgyLCAuaGVhZGVyQXR0aWNsZSAucnN0IGgxLCAucnN0IC5oZWFkZXJBdHRpY2xlIGgxLCAuaGVhZGVyQXR0aWNsZSAucnN0IC50aXRsZS0xLCAucnN0IC5oZWFkZXJBdHRpY2xlIC50aXRsZS0xLCAuaGVhZGVyQXR0aWNsZSAucnN0IC50aXRsZS0yLCAucnN0IC5oZWFkZXJBdHRpY2xlIC50aXRsZS0yLCAuaGVhZGVyQXR0aWNsZSAucnN0IC50aXRsZS0zLCAucnN0IC5oZWFkZXJBdHRpY2xlIC50aXRsZS0zLCAuaGVhZGVyQXR0aWNsZSAudGl0bGUtNCwgI3Zpc2l0LWRlY3JpcHRpb24gaDQsICN2aXNpdC1kZWNyaXB0aW9uIC5yc3QgaDMsIC5yc3QgI3Zpc2l0LWRlY3JpcHRpb24gaDMsICN2aXNpdC1kZWNyaXB0aW9uIC5yc3QgLmgzLCAucnN0ICN2aXNpdC1kZWNyaXB0aW9uIC5oMywgI3Zpc2l0LWRlY3JpcHRpb24gLnJzdCBoMiwgLnJzdCAjdmlzaXQtZGVjcmlwdGlvbiBoMiwgI3Zpc2l0LWRlY3JpcHRpb24gLnJzdCBoMSwgLnJzdCAjdmlzaXQtZGVjcmlwdGlvbiBoMSwgI3Zpc2l0LWRlY3JpcHRpb24gLnJzdCAudGl0bGUtMSwgLnJzdCAjdmlzaXQtZGVjcmlwdGlvbiAudGl0bGUtMSwgI3Zpc2l0LWRlY3JpcHRpb24gLnJzdCAudGl0bGUtMiwgLnJzdCAjdmlzaXQtZGVjcmlwdGlvbiAudGl0bGUtMiwgI3Zpc2l0LWRlY3JpcHRpb24gLnJzdCAudGl0bGUtMywgLnJzdCAjdmlzaXQtZGVjcmlwdGlvbiAudGl0bGUtMywgI3Zpc2l0LWRlY3JpcHRpb24gLnRpdGxlLTQge1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYzsgfVxuXG4uaDMge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZy1ib3R0b206IDJyZW07XG4gIHBhZGRpbmctdG9wOiAycmVtOyB9XG5cbltkYXRhLWxpbmtdOmhvdmVyIHtcbiAgY3Vyc29yOiBwb2ludGVyOyB9XG4gIFtkYXRhLWxpbmtdOmhvdmVyIEgxLCBbZGF0YS1saW5rXTpob3ZlciBIMiwgW2RhdGEtbGlua106aG92ZXIgSDMsIFtkYXRhLWxpbmtdOmhvdmVyIGg0LCBbZGF0YS1saW5rXTpob3ZlciAucnN0IGgzLCAucnN0IFtkYXRhLWxpbmtdOmhvdmVyIGgzLCBbZGF0YS1saW5rXTpob3ZlciAucnN0IC5oMywgLnJzdCBbZGF0YS1saW5rXTpob3ZlciAuaDMsIFtkYXRhLWxpbmtdOmhvdmVyIC5yc3QgaDIsIC5yc3QgW2RhdGEtbGlua106aG92ZXIgaDIsIFtkYXRhLWxpbmtdOmhvdmVyIC5yc3QgaDEsIC5yc3QgW2RhdGEtbGlua106aG92ZXIgaDEsIFtkYXRhLWxpbmtdOmhvdmVyIC5yc3QgLnRpdGxlLTEsIC5yc3QgW2RhdGEtbGlua106aG92ZXIgLnRpdGxlLTEsIFtkYXRhLWxpbmtdOmhvdmVyIC5yc3QgLnRpdGxlLTIsIC5yc3QgW2RhdGEtbGlua106aG92ZXIgLnRpdGxlLTIsIFtkYXRhLWxpbmtdOmhvdmVyIC5yc3QgLnRpdGxlLTMsIC5yc3QgW2RhdGEtbGlua106aG92ZXIgLnRpdGxlLTMsIFtkYXRhLWxpbmtdOmhvdmVyIC50aXRsZS00IHtcbiAgICBjb2xvcjogI2RkMzMzMzsgfVxuXG4ubm93YXJwIHtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgfVxuXG5oci5kYXNoZWQge1xuICBib3JkZXItc3R5bGU6IGRhc2hlZDsgfVxuXG5maWd1cmUubGVmdCB7XG4gIGZsb2F0OiBsZWZ0O1xuICBtYXJnaW4tcmlnaHQ6IDFlbTsgfVxuXG5maWd1cmUucmlnaHQge1xuICBmbG9hdDogcmlnaHQ7XG4gIG1hcmdpbi1sZWZ0OiAxZW07IH1cblxuZmlndXJlLmludGV4dCB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgcGFkZGluZzogLjJlbTtcbiAgbWFyZ2luOiAwOyB9XG4gIGZpZ3VyZS5pbnRleHQgaW1nIHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7IH1cblxuLmJ1dHRvbi53aGl0ZSB7XG4gIGJhY2tncm91bmQ6ICNmN2Y3Zjc7XG4gIGNvbG9yOiAjMGEwYTBhO1xuICBib3JkZXI6IDFweCBzb2xpZCAjREREOyB9XG5cbi5hZ2VuZGEge1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBiYWNrZ3JvdW5kLWF0dGFjaG1lbnQ6IGZpeGVkO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyOyB9XG4gIC5hZ2VuZGEgaDIsIC5hZ2VuZGEgLnJzdCBoMSwgLnJzdCAuYWdlbmRhIGgxLCAuYWdlbmRhIC5yc3QgLnRpdGxlLTEsIC5yc3QgLmFnZW5kYSAudGl0bGUtMSwgLmFnZW5kYSAudGl0bGUtMiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBjb2xvcjogI2Y3ZjdmNzsgfVxuXG4jbGlzdCB7XG4gIG1hcmdpbi10b3A6IC03MHB4ICFpbXBvcnRhbnQ7IH1cbiAgI2xpc3QgcCB7XG4gICAgZm9udC1zaXplOiAwLjk0cmVtO1xuICAgIG1hcmdpbi10b3A6IC0yMHB4O1xuICAgIGNvbG9yOiAjODM4MzdGOyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5LjkzNzVlbSkge1xuICAuY2xlYWxsZXN0c21hbGwge1xuICAgIGNsZWFyOiBsZWZ0OyB9IH1cblxuLnJvdy5ibGFjayB7XG4gIGNvbG9yOiAjZjdmN2Y3O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGEwYTBhOyB9XG5cbi5yb3cub24tYmxhY2sge1xuICBjb2xvcjogI2Y3ZjdmNztcbiAgYmFja2dyb3VuZC1jb2xvcjogIzBhMGEwYTsgfVxuICAucm93Lm9uLWJsYWNrIGgyLCAucm93Lm9uLWJsYWNrIC5yc3QgaDEsIC5yc3QgLnJvdy5vbi1ibGFjayBoMSwgLnJvdy5vbi1ibGFjayAucnN0IC50aXRsZS0xLCAucnN0IC5yb3cub24tYmxhY2sgLnRpdGxlLTEsIC5yb3cub24tYmxhY2sgLnRpdGxlLTIsIC5yb3cub24tYmxhY2sgaDMsIC5yb3cub24tYmxhY2sgLmgzLCAucm93Lm9uLWJsYWNrIC5yc3QgaDIsIC5yc3QgLnJvdy5vbi1ibGFjayBoMiwgLnJvdy5vbi1ibGFjayAucnN0IGgxLCAucnN0IC5yb3cub24tYmxhY2sgaDEsIC5yb3cub24tYmxhY2sgLnJzdCAudGl0bGUtMSwgLnJzdCAucm93Lm9uLWJsYWNrIC50aXRsZS0xLCAucm93Lm9uLWJsYWNrIC5yc3QgLnRpdGxlLTIsIC5yc3QgLnJvdy5vbi1ibGFjayAudGl0bGUtMiwgLnJvdy5vbi1ibGFjayAudGl0bGUtMywgLnJvdy5vbi1ibGFjayBoNCwgLnJvdy5vbi1ibGFjayAucnN0IGgzLCAucnN0IC5yb3cub24tYmxhY2sgaDMsIC5yb3cub24tYmxhY2sgLnJzdCAuaDMsIC5yc3QgLnJvdy5vbi1ibGFjayAuaDMsIC5yb3cub24tYmxhY2sgLnJzdCBoMiwgLnJzdCAucm93Lm9uLWJsYWNrIGgyLCAucm93Lm9uLWJsYWNrIC5yc3QgaDEsIC5yc3QgLnJvdy5vbi1ibGFjayBoMSwgLnJvdy5vbi1ibGFjayAucnN0IC50aXRsZS0xLCAucnN0IC5yb3cub24tYmxhY2sgLnRpdGxlLTEsIC5yb3cub24tYmxhY2sgLnJzdCAudGl0bGUtMiwgLnJzdCAucm93Lm9uLWJsYWNrIC50aXRsZS0yLCAucm93Lm9uLWJsYWNrIC5yc3QgLnRpdGxlLTMsIC5yc3QgLnJvdy5vbi1ibGFjayAudGl0bGUtMywgLnJvdy5vbi1ibGFjayAudGl0bGUtNCwgLnJvdy5vbi1ibGFjayBoNSwgLnJvdy5vbi1ibGFjayAucnN0IGg0LCAucnN0IC5yb3cub24tYmxhY2sgaDQsIC5yb3cub24tYmxhY2sgLnJzdCBoMywgLnJzdCAucm93Lm9uLWJsYWNrIGgzLCAucm93Lm9uLWJsYWNrIC5yc3QgLmgzLCAucnN0IC5yb3cub24tYmxhY2sgLmgzLCAucm93Lm9uLWJsYWNrIC5yc3QgaDIsIC5yc3QgLnJvdy5vbi1ibGFjayBoMiwgLnJvdy5vbi1ibGFjayAucnN0IGgxLCAucnN0IC5yb3cub24tYmxhY2sgaDEsIC5yb3cub24tYmxhY2sgLnJzdCAudGl0bGUtMSwgLnJzdCAucm93Lm9uLWJsYWNrIC50aXRsZS0xLCAucm93Lm9uLWJsYWNrIC5yc3QgLnRpdGxlLTIsIC5yc3QgLnJvdy5vbi1ibGFjayAudGl0bGUtMiwgLnJvdy5vbi1ibGFjayAucnN0IC50aXRsZS0zLCAucnN0IC5yb3cub24tYmxhY2sgLnRpdGxlLTMsIC5yb3cub24tYmxhY2sgLnJzdCAudGl0bGUtNCwgLnJzdCAucm93Lm9uLWJsYWNrIC50aXRsZS00LCAucm93Lm9uLWJsYWNrIC50aXRsZS01LCAucm93Lm9uLWJsYWNrIGg2LCAucm93Lm9uLWJsYWNrIHAsIC5yb3cub24tYmxhY2sgbGkge1xuICAgIGNvbG9yOiAjZjdmN2Y3OyB9XG5cbi5yb3cud2hpdGUge1xuICBjb2xvcjogIzBhMGEwYTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y3ZjdmNzsgfVxuXG4ucm93LnJlZCB7XG4gIGNvbG9yOiAjZjdmN2Y3O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGQzMzMzOyB9XG5cbioub24tcmVkIHtcbiAgY29sb3I6ICNmN2Y3Zjc7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkZDMzMzM7IH1cbiAgKi5vbi1yZWQgaDIsICoub24tcmVkIC5yc3QgaDEsIC5yc3QgKi5vbi1yZWQgaDEsICoub24tcmVkIC5yc3QgLnRpdGxlLTEsIC5yc3QgKi5vbi1yZWQgLnRpdGxlLTEsICoub24tcmVkIC50aXRsZS0yIHtcbiAgICBmb250LXNpemU6IDEuNnJlbTtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIG1hcmdpbi1ib3R0b206IDIuNnJlbTsgfVxuICAqLm9uLXJlZCBoMiwgKi5vbi1yZWQgLnJzdCBoMSwgLnJzdCAqLm9uLXJlZCBoMSwgKi5vbi1yZWQgLnJzdCAudGl0bGUtMSwgLnJzdCAqLm9uLXJlZCAudGl0bGUtMSwgKi5vbi1yZWQgLnRpdGxlLTIsICoub24tcmVkIGgzLCAqLm9uLXJlZCAuaDMsICoub24tcmVkIC5yc3QgaDIsIC5yc3QgKi5vbi1yZWQgaDIsICoub24tcmVkIC5yc3QgaDEsIC5yc3QgKi5vbi1yZWQgaDEsICoub24tcmVkIC5yc3QgLnRpdGxlLTEsIC5yc3QgKi5vbi1yZWQgLnRpdGxlLTEsICoub24tcmVkIC5yc3QgLnRpdGxlLTIsIC5yc3QgKi5vbi1yZWQgLnRpdGxlLTIsICoub24tcmVkIC50aXRsZS0zLCAqLm9uLXJlZCBoNCwgKi5vbi1yZWQgLnJzdCBoMywgLnJzdCAqLm9uLXJlZCBoMywgKi5vbi1yZWQgLnJzdCAuaDMsIC5yc3QgKi5vbi1yZWQgLmgzLCAqLm9uLXJlZCAucnN0IGgyLCAucnN0ICoub24tcmVkIGgyLCAqLm9uLXJlZCAucnN0IGgxLCAucnN0ICoub24tcmVkIGgxLCAqLm9uLXJlZCAucnN0IC50aXRsZS0xLCAucnN0ICoub24tcmVkIC50aXRsZS0xLCAqLm9uLXJlZCAucnN0IC50aXRsZS0yLCAucnN0ICoub24tcmVkIC50aXRsZS0yLCAqLm9uLXJlZCAucnN0IC50aXRsZS0zLCAucnN0ICoub24tcmVkIC50aXRsZS0zLCAqLm9uLXJlZCAudGl0bGUtNCwgKi5vbi1yZWQgaDUsICoub24tcmVkIC5yc3QgaDQsIC5yc3QgKi5vbi1yZWQgaDQsICoub24tcmVkIC5yc3QgaDMsIC5yc3QgKi5vbi1yZWQgaDMsICoub24tcmVkIC5yc3QgLmgzLCAucnN0ICoub24tcmVkIC5oMywgKi5vbi1yZWQgLnJzdCBoMiwgLnJzdCAqLm9uLXJlZCBoMiwgKi5vbi1yZWQgLnJzdCBoMSwgLnJzdCAqLm9uLXJlZCBoMSwgKi5vbi1yZWQgLnJzdCAudGl0bGUtMSwgLnJzdCAqLm9uLXJlZCAudGl0bGUtMSwgKi5vbi1yZWQgLnJzdCAudGl0bGUtMiwgLnJzdCAqLm9uLXJlZCAudGl0bGUtMiwgKi5vbi1yZWQgLnJzdCAudGl0bGUtMywgLnJzdCAqLm9uLXJlZCAudGl0bGUtMywgKi5vbi1yZWQgLnJzdCAudGl0bGUtNCwgLnJzdCAqLm9uLXJlZCAudGl0bGUtNCwgKi5vbi1yZWQgLnRpdGxlLTUsICoub24tcmVkIGg2LCAqLm9uLXJlZCBwLCAqLm9uLXJlZCBsaSB7XG4gICAgY29sb3I6ICNmN2Y3Zjc7IH1cblxuLmRhcmsge1xuICBjb2xvcjogI2Y3ZjdmNztcbiAgYmFja2dyb3VuZC1jb2xvcjogIzE3MTcxNzsgfVxuICAuZGFyayBoMiwgLmRhcmsgLnJzdCBoMSwgLnJzdCAuZGFyayBoMSwgLmRhcmsgLnJzdCAudGl0bGUtMSwgLnJzdCAuZGFyayAudGl0bGUtMSwgLmRhcmsgLnRpdGxlLTIsIC5kYXJrIGgzLCAuZGFyayAuaDMsIC5kYXJrIC5yc3QgaDIsIC5yc3QgLmRhcmsgaDIsIC5kYXJrIC5yc3QgaDEsIC5yc3QgLmRhcmsgaDEsIC5kYXJrIC5yc3QgLnRpdGxlLTEsIC5yc3QgLmRhcmsgLnRpdGxlLTEsIC5kYXJrIC5yc3QgLnRpdGxlLTIsIC5yc3QgLmRhcmsgLnRpdGxlLTIsIC5kYXJrIC50aXRsZS0zLCAuZGFyayBoNCwgLmRhcmsgLnJzdCBoMywgLnJzdCAuZGFyayBoMywgLmRhcmsgLnJzdCAuaDMsIC5yc3QgLmRhcmsgLmgzLCAuZGFyayAucnN0IGgyLCAucnN0IC5kYXJrIGgyLCAuZGFyayAucnN0IGgxLCAucnN0IC5kYXJrIGgxLCAuZGFyayAucnN0IC50aXRsZS0xLCAucnN0IC5kYXJrIC50aXRsZS0xLCAuZGFyayAucnN0IC50aXRsZS0yLCAucnN0IC5kYXJrIC50aXRsZS0yLCAuZGFyayAucnN0IC50aXRsZS0zLCAucnN0IC5kYXJrIC50aXRsZS0zLCAuZGFyayAudGl0bGUtNCwgLmRhcmsgaDUsIC5kYXJrIC5yc3QgaDQsIC5yc3QgLmRhcmsgaDQsIC5kYXJrIC5yc3QgaDMsIC5yc3QgLmRhcmsgaDMsIC5kYXJrIC5yc3QgLmgzLCAucnN0IC5kYXJrIC5oMywgLmRhcmsgLnJzdCBoMiwgLnJzdCAuZGFyayBoMiwgLmRhcmsgLnJzdCBoMSwgLnJzdCAuZGFyayBoMSwgLmRhcmsgLnJzdCAudGl0bGUtMSwgLnJzdCAuZGFyayAudGl0bGUtMSwgLmRhcmsgLnJzdCAudGl0bGUtMiwgLnJzdCAuZGFyayAudGl0bGUtMiwgLmRhcmsgLnJzdCAudGl0bGUtMywgLnJzdCAuZGFyayAudGl0bGUtMywgLmRhcmsgLnJzdCAudGl0bGUtNCwgLnJzdCAuZGFyayAudGl0bGUtNCwgLmRhcmsgLnRpdGxlLTUsIC5kYXJrIGg2LCAuZGFyayBwLCAuZGFyayBsaSB7XG4gICAgY29sb3I6ICNmN2Y3Zjc7IH1cblxuLnRyYW5zcGFyZW50IHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7IH1cblxuLnJlbGF0aXZlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG5cbi8qXG4gKiBzdmcgaW1hZ2VzXG4gKiBUT0RPOiBtb3ZlIGludG8gYWRkb25zL3N2ZywgYnV0IGFjdHVhbGx5IGRvZXNudCB3b3JrcyBiZWNhdXNlIG9mIHNlbGVjdG9yIG92ZXJyaWRlIHNvbWV3aGVyZSBlbHNlXG4gKi9cbmltZy5zdmcge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5zdmcuaW52ZXJzZSAjYmxhY2sge1xuICBmaWxsOiAjZjdmN2Y3OyB9XG4gIC5zdmcuaW52ZXJzZSAjYmxhY2sgKiB7XG4gICAgZmlsbDogI2Y3ZjdmNzsgfVxuXG4uc3ZnLmludmVyc2U6bm90KC5zdGF0aWMpOmhvdmVyICNibGFjayB7XG4gIGZpbGw6ICMwYTBhMGE7IH1cbiAgLnN2Zy5pbnZlcnNlOm5vdCguc3RhdGljKTpob3ZlciAjYmxhY2sgKiB7XG4gICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogZmlsbDtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjJzO1xuICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xuICAgIGZpbGw6ICMwYTBhMGE7IH1cblxuYS5pbnZlcnNlICNibGFjayB7XG4gIGZpbGw6ICNmN2Y3Zjc7IH1cbiAgYS5pbnZlcnNlICNibGFjayAqIHtcbiAgICBmaWxsOiAjZjdmN2Y3OyB9XG5cbmEuaW52ZXJzZTpub3QoLnN0YXRpYyk6aG92ZXIgI2JsYWNrIHtcbiAgZmlsbDogIzBhMGEwYTsgfVxuICBhLmludmVyc2U6bm90KC5zdGF0aWMpOmhvdmVyICNibGFjayAqIHtcbiAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiBmaWxsO1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDAuMnM7XG4gICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47XG4gICAgZmlsbDogIzBhMGEwYTsgfVxuXG4ucGFkZGVydGV4dCB7XG4gIHBhZGRpbmc6IDNweDsgfVxuXG4ubGVmdENvbnRlbnQgLm1lbnUge1xuICBib3JkZXItbGVmdDogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItbGVmdDogMXB4IHNvbGlkIHRyYW5zcGFyZW50OyB9XG4gIC5sZWZ0Q29udGVudCAubWVudSA+IGxpID4gYSB7XG4gICAgY29sb3I6ICNkZDMzMzM7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7IH1cbiAgICAubGVmdENvbnRlbnQgLm1lbnUgPiBsaSA+IGE6aG92ZXIge1xuICAgICAgY29sb3I6ICNkZDMzMzM7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDsgfVxuICAubGVmdENvbnRlbnQgLm1lbnUgPiBsaS5hY3RpdmUgYSB7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7IH1cbiAgLmxlZnRDb250ZW50IC5tZW51IHVsIGEge1xuICAgIGNvbG9yOiAjMGEwYTBhOyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmZsZXhMYXJnZUNlbnRlciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudHJlcjsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmZsZXhMYXJnZUVuZCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7IH0gfVxuXG51bC5kb3Qge1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gIG1hcmdpbi1sZWZ0OiAxcmVtOyB9XG4gIHVsLmRvdCBsaSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgdWwuZG90IGxpOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBcIuKAolwiO1xuICAgICAgZm9udC1zaXplOiAxMjAlO1xuICAgICAgLyogb3Igd2hhdGV2ZXIgKi9cbiAgICAgIGxlZnQ6IC0xMHB4O1xuICAgICAgdG9wOiAtNHB4O1xuICAgICAgcG9zaXRpb246IGFic29sdXRlOyB9XG5cbi5pbnRyb0ZpcnN0IC5tb3JlaW5mbyB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjZGQzMzMzO1xuICBkaXNwbGF5OiBibG9jaztcbiAgZmxvYXQ6IGxlZnQ7IH1cblxuLmludHJvU2Vjb25kIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgZmxvYXQ6IGxlZnQ7XG4gIGNsZWFyOiBib3RoOyB9XG5cbi5jbXMtYXJ0aWNsZSAubGVmdENvbnRlbnQgcCB7XG4gIG1hcmdpbjogMDtcbiAgbWFyZ2luLXRvcDogMXJlbTsgfVxuXG4uYmlibGlvZ3JhcGhpZSBoNCwgLmJpYmxpb2dyYXBoaWUgLnJzdCBoMywgLnJzdCAuYmlibGlvZ3JhcGhpZSBoMywgLmJpYmxpb2dyYXBoaWUgLnJzdCAuaDMsIC5yc3QgLmJpYmxpb2dyYXBoaWUgLmgzLCAuYmlibGlvZ3JhcGhpZSAucnN0IGgyLCAucnN0IC5iaWJsaW9ncmFwaGllIGgyLCAuYmlibGlvZ3JhcGhpZSAucnN0IGgxLCAucnN0IC5iaWJsaW9ncmFwaGllIGgxLCAuYmlibGlvZ3JhcGhpZSAucnN0IC50aXRsZS0xLCAucnN0IC5iaWJsaW9ncmFwaGllIC50aXRsZS0xLCAuYmlibGlvZ3JhcGhpZSAucnN0IC50aXRsZS0yLCAucnN0IC5iaWJsaW9ncmFwaGllIC50aXRsZS0yLCAuYmlibGlvZ3JhcGhpZSAucnN0IC50aXRsZS0zLCAucnN0IC5iaWJsaW9ncmFwaGllIC50aXRsZS0zLCAuYmlibGlvZ3JhcGhpZSAudGl0bGUtNCB7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lOyB9XG5cbi5kbC12aWQgaDQsIC5kbC12aWQgLnJzdCBoMywgLnJzdCAuZGwtdmlkIGgzLCAuZGwtdmlkIC5yc3QgLmgzLCAucnN0IC5kbC12aWQgLmgzLCAuZGwtdmlkIC5yc3QgaDIsIC5yc3QgLmRsLXZpZCBoMiwgLmRsLXZpZCAucnN0IGgxLCAucnN0IC5kbC12aWQgaDEsIC5kbC12aWQgLnJzdCAudGl0bGUtMSwgLnJzdCAuZGwtdmlkIC50aXRsZS0xLCAuZGwtdmlkIC5yc3QgLnRpdGxlLTIsIC5yc3QgLmRsLXZpZCAudGl0bGUtMiwgLmRsLXZpZCAucnN0IC50aXRsZS0zLCAucnN0IC5kbC12aWQgLnRpdGxlLTMsIC5kbC12aWQgLnRpdGxlLTQge1xuICBjb2xvcjogIzY2NjsgfVxuXG4uZm9udEVwaSB7XG4gIGZvbnQtZmFtaWx5OiBcIkVwaWxvZ3VlXCIsXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIEFyaWFsLCBzYW5zLXNlcmlmOyB9XG5cbi50ZXh0LXN0cm9uZ2VyIHtcbiAgZm9udC13ZWlnaHQ6IDkwMDsgfVxuXG4udi1zcGFjZS1ub3JtYWwge1xuICBwYWRkaW5nLXRvcDogNXJlbTtcbiAgcGFkZGluZy1ib3R0b206IDVyZW07IH1cblxudmlkZW9bcG9zdGVyXSB7XG4gIHdpZHRoOiAxMDAlO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBvYmplY3QtZml0OiBjb3ZlcjsgfVxuXG50YWJsZS5leHBhbmQge1xuICB3aWR0aDogMTAwJTsgfVxuXG4vKlxuICogU2ltdWxhdGluZyB0YWJsZVxuICovXG4udGFibGUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7IH1cbiAgLnRhYmxlID4gLnRhYmxlcm93IHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAudGFibGUgPiAudGFibGVyb3cge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IH0gfVxuICAgIC50YWJsZSA+IC50YWJsZXJvdyA+IC5jb2x0YWJsZSB7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICBwYWRkaW5nOiAwLjZyZW07IH1cbiAgICAgIC50YWJsZSA+IC50YWJsZXJvdyA+IC5jb2x0YWJsZSBhIHtcbiAgICAgICAgZm9udC1zaXplOiAwLjc0cmVtO1xuICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyB9XG5cbi8qKiB0YWJsZWF1IHJlc3BvbnNpdmUgKiovXG4ucmVzcG9uc2l2ZS10YWJsZSB7XG4gIHdpZHRoOiAxMDAlOyB9XG4gIC5yZXNwb25zaXZlLXRhYmxlIHRyOm50aC1jaGlsZCgybisyKSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0Y3RjdGNzsgfVxuICAucmVzcG9uc2l2ZS10YWJsZSB0aCB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAucmVzcG9uc2l2ZS10YWJsZSB0aCwgLnJlc3BvbnNpdmUtdGFibGUgdGQge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7IH1cbiAgLnJlc3BvbnNpdmUtdGFibGUgdGg6Zmlyc3QtY2hpbGQsIC5yZXNwb25zaXZlLXRhYmxlIHRkOmZpcnN0LWNoaWxkIHtcbiAgICBib3JkZXI6IG5vbmU7IH1cbiAgLnJlc3BvbnNpdmUtdGFibGUgdGQge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gIC5yZXNwb25zaXZlLXRhYmxlIHRkOmxhc3QtY2hpbGQge1xuICAgIHBhZGRpbmctYm90dG9tOiAuNWVtOyB9XG5cbi5yZXNwb25zaXZlLXRhYmxlIHRkOmJlZm9yZSwgLmRldXhfYXhlcyB0ZDpiZWZvcmUge1xuICBjb250ZW50OiBhdHRyKGRhdGEtdGgpIFwiIFwiO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgd2lkdGg6IDEwMCU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuXG4uZGV1eF9heGVzIHRkOm50aC1jaGlsZCgybisyKSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGN0Y3Rjc7XG4gIHBhZGRpbmc6IDAuOGVtO1xuICBtYXJnaW46IDA7IH1cblxudHIudGl0cmVfdGFibGUgdGgge1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQSBwYXJ0aXIgZGUgOTgwcHhcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5yZXNwb25zaXZlLXRhYmxlIHRoLCAucmVzcG9uc2l2ZS10YWJsZSB0ZCB7XG4gICAgZGlzcGxheTogdGFibGUtY2VsbDsgfVxuICAucmVzcG9uc2l2ZS10YWJsZSB0ZDpiZWZvcmUge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgdHIudGl0cmVfdGFibGUge1xuICAgIGJvcmRlci10b3A6IG5vbmU7IH1cbiAgICB0ci50aXRyZV90YWJsZSB0aCB7XG4gICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsOyB9IH1cblxuaDMueWVhciwgLnllYXIuaDMsIC5yc3QgaDIueWVhciwgLnJzdCBoMS55ZWFyLCAucnN0IC55ZWFyLnRpdGxlLTEsIC5yc3QgLnllYXIudGl0bGUtMiwgLnllYXIudGl0bGUtMyB7XG4gIHdpZHRoOiAxNjBweDtcbiAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkIHJlZDsgfVxuXG4uY2hyb25vbG9neSB0ZCB7XG4gIGJhY2tncm91bmQ6ICNGRkY7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7IH1cbiAgLmNocm9ub2xvZ3kgdGQ6Zmlyc3QtY2hpbGQge1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIHBhZGRpbmctcmlnaHQ6IDEwcHg7XG4gICAgd2lkdGg6IDE2MHB4OyB9XG5cbi5jaHJvbm9sb2d5IHRyICsgdHIgdGQ6bGFzdC1jaGlsZCB7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCBsaWdodEdyZXk7IH1cblxuLmNocm9ub2xvZ3kgcCB7XG4gIG1hcmdpbi10b3A6IDVweDsgfVxuXG4uc2ltaWxlVGltZWxpbmUgaDEsIC5zaW1pbGVUaW1lbGluZSAudGl0bGUtMSB7XG4gIGZvbnQtc2l6ZTogMS40cmVtOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuc2ltaWxlVGltZWxpbmUgaDEsIC5zaW1pbGVUaW1lbGluZSAudGl0bGUtMSB7XG4gICAgICBmb250LXNpemU6IDJyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLnNpbWlsZVRpbWVsaW5lIGgxLCAuc2ltaWxlVGltZWxpbmUgLnRpdGxlLTEge1xuICAgICAgZm9udC1zaXplOiAyLjFyZW07IH0gfVxuXG4ubGlzdC1ncm91cCB7XG4gIG1hcmdpbi10b3A6IDAuNHJlbTsgfVxuICAubGlzdC1ncm91cCBhIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmbG9hdDogbGVmdDtcbiAgICBib3JkZXI6ICM4YThhOGEgMXB4IHNvbGlkO1xuICAgIGJhY2tncm91bmQ6ICNFMEUwRTA7XG4gICAgY29sb3I6ICMwYTBhMGE7XG4gICAgcGFkZGluZzogMC4ycmVtO1xuICAgIG1hcmdpbi10b3A6IDAuNHJlbTtcbiAgICBjbGVhcjogYm90aDsgfVxuXG4uY29udGVuZXVyIC5hcnRpY2xlIHtcbiAgYm9yZGVyOiAxcHggc29saWQgI0NDQztcbiAgYmFja2dyb3VuZDogI2Y3ZjdmNztcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTsgfVxuICAuY29udGVuZXVyIC5hcnRpY2xlIC5hcnRpY2xlLXRvcCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgLmNvbnRlbmV1ciAuYXJ0aWNsZSAuYXJ0aWNsZS10b3AgSDQge1xuICAgICAgYmFja2dyb3VuZDogIzU3NTc1NztcbiAgICAgIGNvbG9yOiAjRkZGO1xuICAgICAgcGFkZGluZzogMC43NXJlbSAxcmVtO1xuICAgICAgbWFyZ2luOiAwOyB9XG4gICAgICAuY29udGVuZXVyIC5hcnRpY2xlIC5hcnRpY2xlLXRvcCBINCBhIHtcbiAgICAgICAgY29sb3I6ICNmN2Y3Zjc7IH1cbiAgICAuY29udGVuZXVyIC5hcnRpY2xlIC5hcnRpY2xlLXRvcCAubWV0YWRvbm5lZXMge1xuICAgICAgbWFyZ2luOiAxcmVtO1xuICAgICAgZm9udC1zaXplOiAwLjc1cmVtOyB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgIC5jb250ZW5ldXIgLmFydGljbGUgLmFydGljbGUtdG9wIC5tZXRhZG9ubmVlcyB7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgIHRvcDogMDsgfSB9XG4gICAgICAuY29udGVuZXVyIC5hcnRpY2xlIC5hcnRpY2xlLXRvcCAubWV0YWRvbm5lZXMgLnBhbmVsIHtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMC4yNXJlbTsgfVxuXG4uY29udGVuZXVyIC5sb2FkQ29udCB7XG4gIHBhZGRpbmc6IDFyZW07IH1cblxuLmNvbnRlbmV1ciAuY29udGVuZXVyLWhlYWQge1xuICBiYWNrZ3JvdW5kOiAjRkZGO1xuICBib3JkZXI6IDFweCBzb2xpZCAjQ0NDO1xuICBwYWRkaW5nOiAxcmVtO1xuICBtYXJnaW4tdG9wOiAycmVtO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtOyB9XG5cbi5jb250ZW5ldXIgLmNvbnRhaW5lci1kb3duIHtcbiAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07XG4gIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTsgfVxuXG4jc2VsZWN0ZXVyIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDB2dztcbiAgYmFja2dyb3VuZDogI2RkMzMzMztcbiAgei1pbmRleDogMjtcbiAgaGVpZ2h0OiA0cmVtOyB9XG4gICNzZWxlY3RldXIgLmlucHV0LWdyb3VwLWxhYmVsIHtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBjb2xvcjogI2Y3ZjdmNztcbiAgICBib3JkZXI6IDA7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgICAgICNzZWxlY3RldXIgLmlucHV0LWdyb3VwLWxhYmVsIHtcbiAgICAgICAgcGFkZGluZzogMHJlbTsgfSB9XG4gICNzZWxlY3RldXIgI2lkX2RhdGUge1xuICAgIHdpZHRoOiBhdXRvOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gICAgICAjc2VsZWN0ZXVyICNpZF9kYXRlIHtcbiAgICAgICAgd2lkdGg6IDYuNHJlbTsgfSB9XG4gICNzZWxlY3RldXIgLmlucHV0LWdyb3VwIHtcbiAgICBtYXJnaW46IDAuNXJlbTsgfVxuICAjc2VsZWN0ZXVyIC5pbnB1dC1ncm91cC1idXR0b24ge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7IH1cbiAgI3NlbGVjdGV1ciBhIHtcbiAgICBjb2xvcjogI2Y3ZjdmNzsgfVxuICAjc2VsZWN0ZXVyIC5mbGV4IHtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGRpc3BsYXk6IGZsZXg7IH1cblxuLmN1cnRhaW4ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgd2lkdGg6IDEwMCU7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBhbGlnbi1jb250ZW50OiBzdHJldGNoO1xuICBib3JkZXI6IHRyYW5zcGFyZW50IDFweCBzb2xpZDtcbiAgei1pbmRleDogMTA7IH1cbiAgLmN1cnRhaW4gPiAucGFuZWwge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMwYTBhMGE7XG4gICAgaGVpZ2h0OiA2MHZoO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAjRkZGO1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjZzIGVhc2U7XG4gICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogd2lkdGg7XG4gICAgd2lsbC1jaGFuZ2U6IHdpZHRoOyB9XG4gICAgLmN1cnRhaW4gPiAucGFuZWwuYmlnIHtcbiAgICAgIHdpZHRoOiAxNjYlOyB9XG4gICAgLmN1cnRhaW4gPiAucGFuZWwgPiAuaW1nYmcge1xuICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICAgIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2U7XG4gICAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBtaW4taGVpZ2h0OiAxMDAlO1xuICAgICAgbWluLXdpZHRoOiAxMDAlO1xuICAgICAgb3BhY2l0eTogMTtcbiAgICAgIHotaW5kZXg6IDEwO1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICAgICAgLmN1cnRhaW4gPiAucGFuZWwgPiAuaW1nYmcgPiBpbWcge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgICAgICBtaW4taGVpZ2h0OiAxMDAlO1xuICAgICAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgICAgIG1heC1oZWlnaHQ6IDEwMCU7XG4gICAgICAgIHRyYW5zaXRpb246IGZpbHRlciAwLjJzIGxpbmVhcjtcbiAgICAgICAgZmlsdGVyOiBibHVyKDBweCk7IH1cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgICAgIC5jdXJ0YWluID4gLnBhbmVsID4gLmltZ2JnID4gaW1nIHtcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICBtaW4td2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgICAgICAgICBtYXgtaGVpZ2h0OiBub25lOyB9IH1cbiAgICAgIC5jdXJ0YWluID4gLnBhbmVsID4gLmltZ2JnOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudChyZ2JhKDAsIDAsIDAsIDAuMiksIHJnYmEoMCwgMCwgMCwgMC40KSk7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZTtcbiAgICAgICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogYmFja2dyb3VuLWltYWdlOyB9XG4gICAgLmN1cnRhaW4gPiAucGFuZWwgaDIsIC5jdXJ0YWluID4gLnBhbmVsIC5yc3QgaDEsIC5yc3QgLmN1cnRhaW4gPiAucGFuZWwgaDEsIC5jdXJ0YWluID4gLnBhbmVsIC5yc3QgLnRpdGxlLTEsIC5yc3QgLmN1cnRhaW4gPiAucGFuZWwgLnRpdGxlLTEsIC5jdXJ0YWluID4gLnBhbmVsIC50aXRsZS0yIHtcbiAgICAgIHotaW5kZXg6IDIwO1xuICAgICAgdHJhbnNpdGlvbjogY29sb3IgMC4ycyBsaW5lYXI7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIGxlZnQ6IDUwJTtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHdpZHRoOiAxMHB4O1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgaGVpZ2h0OiAxMHB4O1xuICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgIGZvbnQtc2l6ZTogMi42cmVtO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA5MDA7XG4gICAgICBjb2xvcjogcmdiYSgyNDAsIDI0MCwgMjQwLCAwLjkpOyB9XG4gICAgICAuY3VydGFpbiA+IC5wYW5lbCBoMi50ZXh0VmVydCwgLmN1cnRhaW4gPiAucGFuZWwgLnJzdCBoMS50ZXh0VmVydCwgLnJzdCAuY3VydGFpbiA+IC5wYW5lbCBoMS50ZXh0VmVydCwgLmN1cnRhaW4gPiAucGFuZWwgLnJzdCAudGV4dFZlcnQudGl0bGUtMSwgLnJzdCAuY3VydGFpbiA+IC5wYW5lbCAudGV4dFZlcnQudGl0bGUtMSwgLmN1cnRhaW4gPiAucGFuZWwgLnRleHRWZXJ0LnRpdGxlLTIge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpIHRyYW5zbGF0ZSgtNXB4LCAtNXB4KTtcbiAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogNTAlIDUwJTsgfVxuICAgICAgLmN1cnRhaW4gPiAucGFuZWwgaDIgc3BhbiwgLmN1cnRhaW4gPiAucGFuZWwgLnJzdCBoMSBzcGFuLCAucnN0IC5jdXJ0YWluID4gLnBhbmVsIGgxIHNwYW4sIC5jdXJ0YWluID4gLnBhbmVsIC5yc3QgLnRpdGxlLTEgc3BhbiwgLnJzdCAuY3VydGFpbiA+IC5wYW5lbCAudGl0bGUtMSBzcGFuLCAuY3VydGFpbiA+IC5wYW5lbCAudGl0bGUtMiBzcGFuIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlOyB9XG4gICAgLmN1cnRhaW4gPiAucGFuZWwuYW5pbWF0ZTpob3ZlciB7XG4gICAgICB6LWluZGV4OiAyMDtcbiAgICAgIHdpZHRoOiAxMzQlOyB9XG4gICAgICAuY3VydGFpbiA+IC5wYW5lbC5hbmltYXRlOmhvdmVyLmJpZyB7XG4gICAgICAgIHdpZHRoOiAxODYlOyB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAgIC5jdXJ0YWluID4gLnBhbmVsLmFuaW1hdGU6aG92ZXIge1xuICAgICAgICAgIHdpZHRoOiAxMTclOyB9XG4gICAgICAgICAgLmN1cnRhaW4gPiAucGFuZWwuYW5pbWF0ZTpob3Zlci5iaWcge1xuICAgICAgICAgICAgd2lkdGg6IDE4NiU7IH0gfVxuICAgICAgLmN1cnRhaW4gPiAucGFuZWwuYW5pbWF0ZTpob3ZlcjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMyk7XG4gICAgICAgIGhlaWdodDogMTBweDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgICAgICAgZmlsdGVyOiBibHVyKDNweCk7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgd2lkdGg6IDEyMCU7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBib3R0b206IC0yMHB4O1xuICAgICAgICBsZWZ0OiAtMTAlOyB9XG4gICAgICAuY3VydGFpbiA+IC5wYW5lbC5hbmltYXRlOmhvdmVyIGgyLCAuY3VydGFpbiA+IC5wYW5lbC5hbmltYXRlOmhvdmVyIC5yc3QgaDEsIC5yc3QgLmN1cnRhaW4gPiAucGFuZWwuYW5pbWF0ZTpob3ZlciBoMSwgLmN1cnRhaW4gPiAucGFuZWwuYW5pbWF0ZTpob3ZlciAucnN0IC50aXRsZS0xLCAucnN0IC5jdXJ0YWluID4gLnBhbmVsLmFuaW1hdGU6aG92ZXIgLnRpdGxlLTEsIC5jdXJ0YWluID4gLnBhbmVsLmFuaW1hdGU6aG92ZXIgLnRpdGxlLTIge1xuICAgICAgICBjb2xvcjogcmdiYSgyNDAsIDI0MCwgMjQwLCAwLjkpOyB9XG4gICAgICAuY3VydGFpbiA+IC5wYW5lbC5hbmltYXRlOmhvdmVyID4gLmltZ2JnIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgZmlsdGVyOiBncmF5c2NhbGUoODAlKTtcbiAgICAgICAgYm9yZGVyOiAycHggc29saWQgI0ZGRjtcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjA4KTsgfVxuICAgICAgICAuY3VydGFpbiA+IC5wYW5lbC5hbmltYXRlOmhvdmVyID4gLmltZ2JnOmFmdGVyIHtcbiAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQocmdiYSgzMCwgMCwgMCwgMC44KSwgcmdiYSgwLCAwLCAwLCAwLjYpKTsgfVxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAgICAgLmN1cnRhaW4gPiAucGFuZWwuYW5pbWF0ZTpob3ZlciA+IC5pbWdiZyB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMDQpOyB9IH1cbiAgICAgICAgLmN1cnRhaW4gPiAucGFuZWwuYW5pbWF0ZTpob3ZlciA+IC5pbWdiZyA+IGltZyB7XG4gICAgICAgICAgZmlsdGVyOiBibHVyKDRweCk7IH1cbiAgLmN1cnRhaW4udmVydGljYWxDdXJ0YWluIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gICAgICAuY3VydGFpbi52ZXJ0aWNhbEN1cnRhaW4ge1xuICAgICAgICBoZWlnaHQ6IDc0MHB4ICFpbXBvcnRhbnQ7IH0gfVxuICAgIC5jdXJ0YWluLnZlcnRpY2FsQ3VydGFpbiA+IC5wYW5lbCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGEwYTBhO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICByaWdodDogMHB4IHNvbGlkICNGRkY7XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI0ZGRjtcbiAgICAgIGJvcmRlci1yaWdodDogMDsgfVxuXG4uY3VydGFpbi52aXNpdGUtdml0dWVsIHtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmN1cnRhaW4udmlzaXRlLXZpdHVlbCB7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93OyB9IH1cbiAgLmN1cnRhaW4udmlzaXRlLXZpdHVlbCBzdmcge1xuICAgIGZsb2F0OiBsZWZ0OyB9XG4gIC5jdXJ0YWluLnZpc2l0ZS12aXR1ZWwgPiAucGFuZWwge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNFQ0VDRUY7XG4gICAgaGVpZ2h0OiBpbml0aWFsOyB9XG4gICAgLmN1cnRhaW4udmlzaXRlLXZpdHVlbCA+IC5wYW5lbDpsYXN0LWNoaWxkIHtcbiAgICAgIGJvcmRlcjogMHB4OyB9XG4gICAgLmN1cnRhaW4udmlzaXRlLXZpdHVlbCA+IC5wYW5lbC52ZXJ0aWNhbEN1cnRhaW4gPiAucGFuZWwge1xuICAgICAgaGVpZ2h0OiBpbml0aWFsO1xuICAgICAgZmxleC1ncm93OiAxO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzBhMGEwYTsgfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgICAuY3VydGFpbi52aXNpdGUtdml0dWVsID4gLnBhbmVsLnZlcnRpY2FsQ3VydGFpbiA+IC5wYW5lbCB7XG4gICAgICAgICAgaGVpZ2h0OiAxMDAlOyB9IH1cbiAgICAgIC5jdXJ0YWluLnZpc2l0ZS12aXR1ZWwgPiAucGFuZWwudmVydGljYWxDdXJ0YWluID4gLnBhbmVsOmxhc3QtY2hpbGQge1xuICAgICAgICBib3JkZXI6IDBweDsgfVxuICAgICAgLmN1cnRhaW4udmlzaXRlLXZpdHVlbCA+IC5wYW5lbC52ZXJ0aWNhbEN1cnRhaW4gPiAucGFuZWwgaDIsIC5jdXJ0YWluLnZpc2l0ZS12aXR1ZWwgPiAucGFuZWwudmVydGljYWxDdXJ0YWluID4gLnBhbmVsIC5yc3QgaDEsIC5yc3QgLmN1cnRhaW4udmlzaXRlLXZpdHVlbCA+IC5wYW5lbC52ZXJ0aWNhbEN1cnRhaW4gPiAucGFuZWwgaDEsIC5jdXJ0YWluLnZpc2l0ZS12aXR1ZWwgPiAucGFuZWwudmVydGljYWxDdXJ0YWluID4gLnBhbmVsIC5yc3QgLnRpdGxlLTEsIC5yc3QgLmN1cnRhaW4udmlzaXRlLXZpdHVlbCA+IC5wYW5lbC52ZXJ0aWNhbEN1cnRhaW4gPiAucGFuZWwgLnRpdGxlLTEsIC5jdXJ0YWluLnZpc2l0ZS12aXR1ZWwgPiAucGFuZWwudmVydGljYWxDdXJ0YWluID4gLnBhbmVsIC50aXRsZS0yIHtcbiAgICAgICAgY29sb3I6ICNGRkY7IH1cbiAgICAgIC5jdXJ0YWluLnZpc2l0ZS12aXR1ZWwgPiAucGFuZWwudmVydGljYWxDdXJ0YWluID4gLnBhbmVsI3Zpc2l0LW5hdmlnYXRpb24ge1xuICAgICAgICBmbGV4LWdyb3c6IDAuNTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0VDRUNFRjsgfVxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgICAgICAgICAuY3VydGFpbi52aXNpdGUtdml0dWVsID4gLnBhbmVsLnZlcnRpY2FsQ3VydGFpbiA+IC5wYW5lbCN2aXNpdC1uYXZpZ2F0aW9uIHtcbiAgICAgICAgICAgIGhlaWdodDogOTZweDtcbiAgICAgICAgICAgIGZsZXgtZ3JvdzogaW5pdGlhbDsgfSB9XG4gICAgICAgIC5jdXJ0YWluLnZpc2l0ZS12aXR1ZWwgPiAucGFuZWwudmVydGljYWxDdXJ0YWluID4gLnBhbmVsI3Zpc2l0LW5hdmlnYXRpb24gLmRyb3Bkb3duLm1lbnUgPiBsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGEge1xuICAgICAgICAgIHBhZGRpbmctdG9wOiAwLjRyZW07XG4gICAgICAgICAgcGFkZGluZy1ib3R0b206IDAuNHJlbTsgfVxuICAgIC5jdXJ0YWluLnZpc2l0ZS12aXR1ZWwgPiAucGFuZWwgLmltZ2JnIHtcbiAgICAgIG9wYWNpdHk6IDAuNztcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwYTBhMGE7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7IH1cbiAgICAgIC5jdXJ0YWluLnZpc2l0ZS12aXR1ZWwgPiAucGFuZWwgLmltZ2JnOmFmdGVyIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgIC5jdXJ0YWluLnZpc2l0ZS12aXR1ZWwgPiAucGFuZWwuYmlnIHtcbiAgICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgIC5jdXJ0YWluLnZpc2l0ZS12aXR1ZWwgPiAucGFuZWwuYmlnIHtcbiAgICAgICAgICB3aWR0aDogMTMwJTsgfSB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAgIC5jdXJ0YWluLnZpc2l0ZS12aXR1ZWwgPiAucGFuZWwuYmlnIHtcbiAgICAgICAgICB3aWR0aDogMTMwJTsgfSB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgICAgIC5jdXJ0YWluLnZpc2l0ZS12aXR1ZWwgPiAucGFuZWwuYmlnIHtcbiAgICAgICAgICB3aWR0aDogMTEwJTsgfSB9XG4gICAgLmN1cnRhaW4udmlzaXRlLXZpdHVlbCA+IC5wYW5lbC5jdXJ0YWluIHtcbiAgICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgIC5jdXJ0YWluLnZpc2l0ZS12aXR1ZWwgPiAucGFuZWwuY3VydGFpbiB7XG4gICAgICAgICAgd2lkdGg6IDcwJTsgfSB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAgIC5jdXJ0YWluLnZpc2l0ZS12aXR1ZWwgPiAucGFuZWwuY3VydGFpbiB7XG4gICAgICAgICAgd2lkdGg6IDcwJTsgfSB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgICAgIC5jdXJ0YWluLnZpc2l0ZS12aXR1ZWwgPiAucGFuZWwuY3VydGFpbiB7XG4gICAgICAgICAgd2lkdGg6IDkwJTsgfSB9XG5cbiN2aXNpdC1uYXZpZ2F0aW9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0VDRUNFRjtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICN2aXNpdC1uYXZpZ2F0aW9uIGg0LCAjdmlzaXQtbmF2aWdhdGlvbiAucnN0IGgzLCAucnN0ICN2aXNpdC1uYXZpZ2F0aW9uIGgzLCAjdmlzaXQtbmF2aWdhdGlvbiAucnN0IC5oMywgLnJzdCAjdmlzaXQtbmF2aWdhdGlvbiAuaDMsICN2aXNpdC1uYXZpZ2F0aW9uIC5yc3QgaDIsIC5yc3QgI3Zpc2l0LW5hdmlnYXRpb24gaDIsICN2aXNpdC1uYXZpZ2F0aW9uIC5yc3QgaDEsIC5yc3QgI3Zpc2l0LW5hdmlnYXRpb24gaDEsICN2aXNpdC1uYXZpZ2F0aW9uIC5yc3QgLnRpdGxlLTEsIC5yc3QgI3Zpc2l0LW5hdmlnYXRpb24gLnRpdGxlLTEsICN2aXNpdC1uYXZpZ2F0aW9uIC5yc3QgLnRpdGxlLTIsIC5yc3QgI3Zpc2l0LW5hdmlnYXRpb24gLnRpdGxlLTIsICN2aXNpdC1uYXZpZ2F0aW9uIC5yc3QgLnRpdGxlLTMsIC5yc3QgI3Zpc2l0LW5hdmlnYXRpb24gLnRpdGxlLTMsICN2aXNpdC1uYXZpZ2F0aW9uIC50aXRsZS00IHtcbiAgICBjb2xvcjogI2RkMzMzMztcbiAgICBmb250LXdlaWdodDogODAwOyB9XG4gICN2aXNpdC1uYXZpZ2F0aW9uID4gZGl2IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7IH1cblxuLnBhbmVsLWluZm9zIHtcbiAgZm9udC13ZWlnaHQ6IDIwMDsgfVxuICAucGFuZWwtaW5mb3Mgc3Ryb25nIHtcbiAgICBmb250LXdlaWdodDogMzAwOyB9XG4gIC5wYW5lbC1pbmZvcyAudGVhbS1jb250ZW50IHtcbiAgICBwYWRkaW5nOiAxcmVtO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJvcmRlcjogMTBweCBzb2xpZCAjRTBFMEUwOyB9XG4gICAgLnBhbmVsLWluZm9zIC50ZWFtLWNvbnRlbnQgaDIsIC5wYW5lbC1pbmZvcyAudGVhbS1jb250ZW50IC5yc3QgaDEsIC5yc3QgLnBhbmVsLWluZm9zIC50ZWFtLWNvbnRlbnQgaDEsIC5wYW5lbC1pbmZvcyAudGVhbS1jb250ZW50IC5yc3QgLnRpdGxlLTEsIC5yc3QgLnBhbmVsLWluZm9zIC50ZWFtLWNvbnRlbnQgLnRpdGxlLTEsIC5wYW5lbC1pbmZvcyAudGVhbS1jb250ZW50IC50aXRsZS0yIHtcbiAgICAgIG1hcmdpbi10b3A6IDFyZW07XG4gICAgICBtYXJnaW4tYm90dG9tOiAycmVtOyB9XG4gICAgLnBhbmVsLWluZm9zIC50ZWFtLWNvbnRlbnQgaDMsIC5wYW5lbC1pbmZvcyAudGVhbS1jb250ZW50IC5oMywgLnBhbmVsLWluZm9zIC50ZWFtLWNvbnRlbnQgLnJzdCBoMiwgLnJzdCAucGFuZWwtaW5mb3MgLnRlYW0tY29udGVudCBoMiwgLnBhbmVsLWluZm9zIC50ZWFtLWNvbnRlbnQgLnJzdCBoMSwgLnJzdCAucGFuZWwtaW5mb3MgLnRlYW0tY29udGVudCBoMSwgLnBhbmVsLWluZm9zIC50ZWFtLWNvbnRlbnQgLnJzdCAudGl0bGUtMSwgLnJzdCAucGFuZWwtaW5mb3MgLnRlYW0tY29udGVudCAudGl0bGUtMSwgLnBhbmVsLWluZm9zIC50ZWFtLWNvbnRlbnQgLnJzdCAudGl0bGUtMiwgLnJzdCAucGFuZWwtaW5mb3MgLnRlYW0tY29udGVudCAudGl0bGUtMiwgLnBhbmVsLWluZm9zIC50ZWFtLWNvbnRlbnQgLnRpdGxlLTMge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTsgfVxuICAgIC5wYW5lbC1pbmZvcyAudGVhbS1jb250ZW50IGg1LCAucGFuZWwtaW5mb3MgLnRlYW0tY29udGVudCAucnN0IGg0LCAucnN0IC5wYW5lbC1pbmZvcyAudGVhbS1jb250ZW50IGg0LCAucGFuZWwtaW5mb3MgLnRlYW0tY29udGVudCAucnN0IGgzLCAucnN0IC5wYW5lbC1pbmZvcyAudGVhbS1jb250ZW50IGgzLCAucGFuZWwtaW5mb3MgLnRlYW0tY29udGVudCAucnN0IC5oMywgLnJzdCAucGFuZWwtaW5mb3MgLnRlYW0tY29udGVudCAuaDMsIC5wYW5lbC1pbmZvcyAudGVhbS1jb250ZW50IC5yc3QgaDIsIC5yc3QgLnBhbmVsLWluZm9zIC50ZWFtLWNvbnRlbnQgaDIsIC5wYW5lbC1pbmZvcyAudGVhbS1jb250ZW50IC5yc3QgaDEsIC5yc3QgLnBhbmVsLWluZm9zIC50ZWFtLWNvbnRlbnQgaDEsIC5wYW5lbC1pbmZvcyAudGVhbS1jb250ZW50IC5yc3QgLnRpdGxlLTEsIC5yc3QgLnBhbmVsLWluZm9zIC50ZWFtLWNvbnRlbnQgLnRpdGxlLTEsIC5wYW5lbC1pbmZvcyAudGVhbS1jb250ZW50IC5yc3QgLnRpdGxlLTIsIC5yc3QgLnBhbmVsLWluZm9zIC50ZWFtLWNvbnRlbnQgLnRpdGxlLTIsIC5wYW5lbC1pbmZvcyAudGVhbS1jb250ZW50IC5yc3QgLnRpdGxlLTMsIC5yc3QgLnBhbmVsLWluZm9zIC50ZWFtLWNvbnRlbnQgLnRpdGxlLTMsIC5wYW5lbC1pbmZvcyAudGVhbS1jb250ZW50IC5yc3QgLnRpdGxlLTQsIC5yc3QgLnBhbmVsLWluZm9zIC50ZWFtLWNvbnRlbnQgLnRpdGxlLTQsIC5wYW5lbC1pbmZvcyAudGVhbS1jb250ZW50IC50aXRsZS01IHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDAuNzJyZW07IH1cblxuLnByZXNlbnRhdGlvbiBwIHtcbiAgY29sb3I6ICM2YjZiNmQ7IH1cblxuLnByZXNlbnRhdGlvbiBoMiwgLnByZXNlbnRhdGlvbiAucnN0IGgxLCAucnN0IC5wcmVzZW50YXRpb24gaDEsIC5wcmVzZW50YXRpb24gLnJzdCAudGl0bGUtMSwgLnJzdCAucHJlc2VudGF0aW9uIC50aXRsZS0xLCAucHJlc2VudGF0aW9uIC50aXRsZS0yIHtcbiAgZm9udC1zaXplOiAyLjc1cmVtO1xuICBmb250LXdlaWdodDogNjAwO1xuICBwYWRkaW5nLXRvcDogMnJlbTtcbiAgcGFkZGluZy1ib3R0b206IDEuNHJlbTtcbiAgYm9yZGVyLXRvcDogMTBweCBzb2xpZCAjREREOyB9XG5cbi5wcmVzZW50YXRpb24gaDQsIC5wcmVzZW50YXRpb24gLnJzdCBoMywgLnJzdCAucHJlc2VudGF0aW9uIGgzLCAucHJlc2VudGF0aW9uIC5yc3QgLmgzLCAucnN0IC5wcmVzZW50YXRpb24gLmgzLCAucHJlc2VudGF0aW9uIC5yc3QgaDIsIC5yc3QgLnByZXNlbnRhdGlvbiBoMiwgLnByZXNlbnRhdGlvbiAucnN0IGgxLCAucnN0IC5wcmVzZW50YXRpb24gaDEsIC5wcmVzZW50YXRpb24gLnJzdCAudGl0bGUtMSwgLnJzdCAucHJlc2VudGF0aW9uIC50aXRsZS0xLCAucHJlc2VudGF0aW9uIC5yc3QgLnRpdGxlLTIsIC5yc3QgLnByZXNlbnRhdGlvbiAudGl0bGUtMiwgLnByZXNlbnRhdGlvbiAucnN0IC50aXRsZS0zLCAucnN0IC5wcmVzZW50YXRpb24gLnRpdGxlLTMsIC5wcmVzZW50YXRpb24gLnRpdGxlLTQge1xuICBtYXJnaW4tYm90dG9tOiAxcmVtOyB9XG5cbi5wcmVzZW50YXRpb24gaHIge1xuICB3aWR0aDogNTAlO1xuICBtYXJnaW4tbGVmdDogMjUlO1xuICBiYWNrZ3JvdW5kOiAjREREO1xuICBib3JkZXItY29sb3I6ICNEREQ7IH1cblxuLnByZXNlbnRhdGlvbiArIC5jdXJ0YWluIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmbG9hdDogbGVmdDtcbiAgbWFyZ2luLXRvcDogM3JlbTsgfVxuICAucHJlc2VudGF0aW9uICsgLmN1cnRhaW46YmVmb3JlIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBjb250ZW50OiAnJztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAtMnJlbTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBib3JkZXItdG9wOiAxMHB4IHNvbGlkICNEREQ7IH1cblxuLnZpc2l0ZV9mb290bmF2IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgbWFyZ2luOiAwOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAudmlzaXRlX2Zvb3RuYXYge1xuICAgICAgZGlzcGxheTogZmxleDsgfSB9XG4gIC52aXNpdGVfZm9vdG5hdiBsaSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBmb250LXNpemU6IDEuNHJlbTsgfVxuICAgIC52aXNpdGVfZm9vdG5hdiBsaSBhIHtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBjb2xvcjogIzBhMGEwYTsgfVxuICAgIC52aXNpdGVfZm9vdG5hdiBsaS5hY3RpdmUgYSB7XG4gICAgICBjb2xvcjogI2RkMzMzMzsgfVxuXG4uc3ZnY29udGVudCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAuc3ZnY29udGVudCBzdmcgcGF0aCB7XG4gICAgZmlsbC1vcGFjaXR5OiAwLjU7XG4gICAgc3Ryb2tlLW9wYWNpdHk6IDAuNztcbiAgICBzdHJva2Utd2lkdGg6IDJweDsgfVxuICAuc3ZnY29udGVudCBzdmcgYSB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAgIC5zdmdjb250ZW50IHN2ZyBhLmFjdGl2ZSB7XG4gICAgICBkaXNwbGF5OiBibG9jazsgfVxuICAuc3ZnY29udGVudCAjb3ZlcmxheSB7XG4gICAgb3BhY2l0eTogMDsgfVxuXG4jdmlzaXQtZm9vdGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiAwIDEwMCU7XG4gIHRyYW5zZm9ybTogcm90YXRlKC05MGRlZykgdHJhbnNsYXRlKDAlLCAxMDAlKTtcbiAgYmFja2dyb3VuZDogIzAwMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwcHg7XG4gIHBhZGRpbmc6IDAgMC40cmVtO1xuICBmb250LXNpemU6IDFyZW07IH1cblxuLmN1cnRhaW4gPiAucGFuZWwgaDIsIC5jdXJ0YWluID4gLnBhbmVsIC5yc3QgaDEsIC5yc3QgLmN1cnRhaW4gPiAucGFuZWwgaDEsIC5jdXJ0YWluID4gLnBhbmVsIC5yc3QgLnRpdGxlLTEsIC5yc3QgLmN1cnRhaW4gPiAucGFuZWwgLnRpdGxlLTEsIC5jdXJ0YWluID4gLnBhbmVsIC50aXRsZS0yIHtcbiAgYm9yZGVyOiAwcHg7IH1cbiAgLmN1cnRhaW4gPiAucGFuZWwgaDIgc3Bhbi50aXRsZXBhbmVsLCAuY3VydGFpbiA+IC5wYW5lbCAucnN0IGgxIHNwYW4udGl0bGVwYW5lbCwgLnJzdCAuY3VydGFpbiA+IC5wYW5lbCBoMSBzcGFuLnRpdGxlcGFuZWwsIC5jdXJ0YWluID4gLnBhbmVsIC5yc3QgLnRpdGxlLTEgc3Bhbi50aXRsZXBhbmVsLCAucnN0IC5jdXJ0YWluID4gLnBhbmVsIC50aXRsZS0xIHNwYW4udGl0bGVwYW5lbCwgLmN1cnRhaW4gPiAucGFuZWwgLnRpdGxlLTIgc3Bhbi50aXRsZXBhbmVsIHtcbiAgICBmb250LXNpemU6IDEuM3JlbTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAxMDAlKTsgfVxuXG4ub3Blbi1leWVkLXZpc2l0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDZlXCI7XG4gIGZvbnQtZmFtaWx5OiBpY29tb29uOyB9XG5cbi5jbG9zZS1leWVkLXZpc2l0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDcwXCI7XG4gIGZvbnQtZmFtaWx5OiBpY29tb29uOyB9XG5cbi5yc3QgYS5mbi1iYWNrcmVmIHtcbiAgY29sb3I6ICNmN2Y3Zjc7IH1cblxuLnJzdCAuZm9vdG5vdGUgdGQge1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogMC4ycmVtOyB9XG4gIC5yc3QgLmZvb3Rub3RlIHRkLmxhYmVsIHtcbiAgICB3aWR0aDogYXV0bztcbiAgICBwYWRkaW5nOiAwLjZyZW07IH1cblxuI2Nvb2tpZS1sYXctY29udGFpbmVyIHtcbiAgYmFja2dyb3VuZDogIzViNWI1YjtcbiAgei1pbmRleDogMzAwMDtcbiAgcG9zaXRpb246IGZpeGVkO1xuICBib3R0b206IDIwcHg7XG4gIHJpZ2h0OiAyMHB4O1xuICBtYXJnaW4tbGVmdDogMjBweDtcbiAgY29sb3I6ICNmZmZmZmY7XG4gIHBhZGRpbmc6IDEzcHg7XG4gIG1heC13aWR0aDogMzcwcHg7IH1cbiAgI2Nvb2tpZS1sYXctY29udGFpbmVyIC5idXR0b24ge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cbiAgI2Nvb2tpZS1sYXctY29udGFpbmVyIHAge1xuICAgIGZvbnQtc2l6ZTogLjlyZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuMjsgfVxuXG4jdGFibGUgaGVhZGVyIHtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tcy11c2VyLXNlbGVjdDogbm9uZTtcbiAgbWFyZ2luLWJvdHRvbTogMTVweDsgfVxuICAjdGFibGUgaGVhZGVyIC5jb3VudCwgI3RhYmxlIGhlYWRlciAuc3Bpbm5lciB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGhlaWdodDogMzRweDtcbiAgICBsaW5lLWhlaWdodDogMzRweDtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIGN1cnNvcjogZGVmYXVsdDsgfVxuICAjdGFibGUgaGVhZGVyIC5wYWdpbmF0aW9uIHtcbiAgICBtYXJnaW46IDA7IH1cblxuI3RhYmxlIC5kcm9wZG93biB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG4jdGFibGUgLnRhYmxlLXJlc3BvbnNpdmUge1xuICBib3JkZXI6IDFweCBzb2xpZCAjQ0NDO1xuICBvdmVyZmxvdzogc2Nyb2xsO1xuICBtaW4taGVpZ2h0OiA2MDBweDsgfVxuICAjdGFibGUgLnRhYmxlLXJlc3BvbnNpdmUgdGFibGUge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNkZGQ7IH1cbiAgICAjdGFibGUgLnRhYmxlLXJlc3BvbnNpdmUgdGFibGUgdGhlYWQge1xuICAgICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICAgICAgLW1vei11c2VyLXNlbGVjdDogbm9uZTtcbiAgICAgIC1tcy11c2VyLXNlbGVjdDogbm9uZTsgfVxuICAgICAgI3RhYmxlIC50YWJsZS1yZXNwb25zaXZlIHRhYmxlIHRoZWFkIHRoIHtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgY3Vyc29yOiBkZWZhdWx0O1xuICAgICAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgICAgICAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcbiAgICAgICAgLW1vei11c2VyLXNlbGVjdDogbm9uZTtcbiAgICAgICAgLW1zLXVzZXItc2VsZWN0OiBub25lOyB9XG4gICAgICAgICN0YWJsZSAudGFibGUtcmVzcG9uc2l2ZSB0YWJsZSB0aGVhZCB0aCAuZmxleCB7XG4gICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICBmbGV4LWZsb3c6IHJvdyB3cmFwOyB9XG4gICAgICAgICAgI3RhYmxlIC50YWJsZS1yZXNwb25zaXZlIHRhYmxlIHRoZWFkIHRoIC5mbGV4IC5jb2x1bW4tbmFtZSB7XG4gICAgICAgICAgICBwYWRkaW5nOiA1cHg7XG4gICAgICAgICAgICBmbGV4OiAyIDEwMCU7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDsgfVxuICAgICAgICAgICAgI3RhYmxlIC50YWJsZS1yZXNwb25zaXZlIHRhYmxlIHRoZWFkIHRoIC5mbGV4IC5jb2x1bW4tbmFtZSB+IC5zb3J0YWJsZSwgI3RhYmxlIC50YWJsZS1yZXNwb25zaXZlIHRhYmxlIHRoZWFkIHRoIC5mbGV4IC5jb2x1bW4tbmFtZSB+IC5maWx0ZXIge1xuICAgICAgICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgI2RkZDsgfVxuICAgICAgICAgICN0YWJsZSAudGFibGUtcmVzcG9uc2l2ZSB0YWJsZSB0aGVhZCB0aCAuZmxleCAuc29ydGFibGUsICN0YWJsZSAudGFibGUtcmVzcG9uc2l2ZSB0YWJsZSB0aGVhZCB0aCAuZmxleCAuZmlsdGVyIHtcbiAgICAgICAgICAgIGZsZXg6IDEgNTAlO1xuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgICAgICAgICAjdGFibGUgLnRhYmxlLXJlc3BvbnNpdmUgdGFibGUgdGhlYWQgdGggLmZsZXggLnNvcnRhYmxlLmRpc2FibGVkLCAjdGFibGUgLnRhYmxlLXJlc3BvbnNpdmUgdGFibGUgdGhlYWQgdGggLmZsZXggLmZpbHRlci5kaXNhYmxlZCB7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAgICAgICAjdGFibGUgLnRhYmxlLXJlc3BvbnNpdmUgdGFibGUgdGhlYWQgdGggLmZsZXggLnNvcnRhYmxlLmFjdGl2ZSwgI3RhYmxlIC50YWJsZS1yZXNwb25zaXZlIHRhYmxlIHRoZWFkIHRoIC5mbGV4IC5maWx0ZXIuYWN0aXZlIC5maWx0ZXItYnV0dG9uIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICNlYzgwNTU7XG4gICAgICAgICAgICBjb2xvcjogd2hpdGU7IH1cbiAgICAgICAgICAjdGFibGUgLnRhYmxlLXJlc3BvbnNpdmUgdGFibGUgdGhlYWQgdGggLmZsZXggLnNvcnRhYmxlIHtcbiAgICAgICAgICAgIG9yZGVyOiAxO1xuICAgICAgICAgICAgcGFkZGluZzogNXB4OyB9XG4gICAgICAgICAgI3RhYmxlIC50YWJsZS1yZXNwb25zaXZlIHRhYmxlIHRoZWFkIHRoIC5mbGV4IC5maWx0ZXIge1xuICAgICAgICAgICAgb3JkZXI6IDI7IH1cbiAgICAgICAgICAgICN0YWJsZSAudGFibGUtcmVzcG9uc2l2ZSB0YWJsZSB0aGVhZCB0aCAuZmxleCAuZmlsdGVyIC5maWx0ZXItYnV0dG9uIHtcbiAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgICBwYWRkaW5nOiA1cHg7IH1cbiAgICAgICAgICAgICN0YWJsZSAudGFibGUtcmVzcG9uc2l2ZSB0YWJsZSB0aGVhZCB0aCAuZmxleCAuZmlsdGVyIC5kcm9wZG93bi1tZW51IHtcbiAgICAgICAgICAgICAgbWF4LWhlaWdodDogMzAwcHg7XG4gICAgICAgICAgICAgIG92ZXJmbG93LXk6IGF1dG87IH1cbiAgICAjdGFibGUgLnRhYmxlLXJlc3BvbnNpdmUgdGFibGUgdGJvZHkge1xuICAgICAgZm9udC1zaXplOiAxMnB4OyB9XG4gICAgICAjdGFibGUgLnRhYmxlLXJlc3BvbnNpdmUgdGFibGUgdGJvZHkuZ3JhYmJhYmxlIHtcbiAgICAgICAgY3Vyc29yOiBtb3ZlO1xuICAgICAgICAvKiBmYWxsYmFjayBpZiBncmFiIGN1cnNvciBpcyB1bnN1cHBvcnRlZCAqL1xuICAgICAgICBjdXJzb3I6IGdyYWI7XG4gICAgICAgIGN1cnNvcjogLW1vei1ncmFiO1xuICAgICAgICBjdXJzb3I6IC13ZWJraXQtZ3JhYjtcbiAgICAgICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgICAgIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgICAgIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgICAgIC1tcy11c2VyLXNlbGVjdDogbm9uZTsgfVxuICAgICAgICAjdGFibGUgLnRhYmxlLXJlc3BvbnNpdmUgdGFibGUgdGJvZHkuZ3JhYmJhYmxlLmdyYWJiaW5nIHtcbiAgICAgICAgICBjdXJzb3I6IG1vdmU7IH1cbiAgICAgICN0YWJsZSAudGFibGUtcmVzcG9uc2l2ZSB0YWJsZSB0Ym9keSB0ZCB7XG4gICAgICAgIHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQ7XG4gICAgICAgIC1tb3otaHlwaGVuczogYXV0bztcbiAgICAgICAgaHlwaGVuczogYXV0bzsgfVxuXG4jdGFibGUgLmRyb3Bkb3duIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG5cbiN0YWJsZSAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgKm1hcmdpbi1ib3R0b206IC0zcHg7IH1cblxuI3RhYmxlIC5kcm9wZG93bi10b2dnbGU6YWN0aXZlLFxuI3RhYmxlIC5vcGVuIC5kcm9wZG93bi10b2dnbGUge1xuICBvdXRsaW5lOiAwOyB9XG5cbiN0YWJsZSAuY2FyZXQge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gIGJvcmRlci10b3A6IDRweCBzb2xpZCAjMDAwMDAwO1xuICBib3JkZXItcmlnaHQ6IDRweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWxlZnQ6IDRweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgY29udGVudDogXCJcIjsgfVxuXG4jdGFibGUgLmRyb3Bkb3duIC5jYXJldCB7XG4gIG1hcmdpbi10b3A6IDhweDtcbiAgbWFyZ2luLWxlZnQ6IDJweDsgfVxuXG4jdGFibGUgLmRyb3Bkb3duLW1lbnUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMTAwJTtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogMTAwMDtcbiAgZGlzcGxheTogbm9uZTtcbiAgZmxvYXQ6IGxlZnQ7XG4gIG1pbi13aWR0aDogMTYwcHg7XG4gIHBhZGRpbmc6IDVweCAwO1xuICBtYXJnaW46IDJweCAwIDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjY2M7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4yKTtcbiAgKmJvcmRlci1yaWdodC13aWR0aDogMnB4O1xuICAqYm9yZGVyLWJvdHRvbS13aWR0aDogMnB4O1xuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDZweDtcbiAgLW1vei1ib3JkZXItcmFkaXVzOiA2cHg7XG4gIGJvcmRlci1yYWRpdXM6IDZweDtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwIDVweCAxMHB4IHJnYmEoMCwgMCwgMCwgMC4yKTtcbiAgLW1vei1ib3gtc2hhZG93OiAwIDVweCAxMHB4IHJnYmEoMCwgMCwgMCwgMC4yKTtcbiAgYm94LXNoYWRvdzogMCA1cHggMTBweCByZ2JhKDAsIDAsIDAsIDAuMik7XG4gIC13ZWJraXQtYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgLW1vei1iYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmc7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7IH1cblxuI3RhYmxlIC5kcm9wZG93bi1tZW51LnB1bGwtcmlnaHQge1xuICByaWdodDogMDtcbiAgbGVmdDogYXV0bzsgfVxuXG4jdGFibGUgLmRyb3Bkb3duLW1lbnUgLmRpdmlkZXIge1xuICAqd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMXB4O1xuICBtYXJnaW46IDlweCAxcHg7XG4gICptYXJnaW46IC01cHggMCA1cHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGJhY2tncm91bmQtY29sb3I6ICNlNWU1ZTU7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZmZmZmZmOyB9XG5cbiN0YWJsZSAuZHJvcGRvd24tbWVudSA+IGxpID4gYSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAzcHggMjBweDtcbiAgY2xlYXI6IGJvdGg7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICBjb2xvcjogIzMzMzMzMztcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgfVxuXG4jdGFibGUgLmRyb3Bkb3duLW1lbnUgPiBsaSA+IGE6aG92ZXIsXG4jdGFibGUgLmRyb3Bkb3duLW1lbnUgPiBsaSA+IGE6Zm9jdXMsXG4jdGFibGUgLmRyb3Bkb3duLXN1Ym1lbnU6aG92ZXIgPiBhLFxuI3RhYmxlIC5kcm9wZG93bi1zdWJtZW51OmZvY3VzID4gYSB7XG4gIGNvbG9yOiAjZmZmZmZmO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDgxYzI7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC1tb3otbGluZWFyLWdyYWRpZW50KHRvcCwgIzAwODhjYywgIzAwNzdiMyk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtZ3JhZGllbnQobGluZWFyLCAwIDAsIDAgMTAwJSwgZnJvbSgjMDA4OGNjKSwgdG8oIzAwNzdiMykpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCh0b3AsICMwMDg4Y2MsICMwMDc3YjMpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtby1saW5lYXItZ3JhZGllbnQodG9wLCAjMDA4OGNjLCAjMDA3N2IzKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgIzAwODhjYywgIzAwNzdiMyk7XG4gIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcbiAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoc3RhcnRDb2xvcnN0cj0nI2ZmMDA4OGNjJywgZW5kQ29sb3JzdHI9JyNmZjAwNzdiMycsIEdyYWRpZW50VHlwZT0wKTsgfVxuXG4jdGFibGUgLmRyb3Bkb3duLW1lbnUgPiAuYWN0aXZlID4gYSxcbiN0YWJsZSAuZHJvcGRvd24tbWVudSA+IC5hY3RpdmUgPiBhOmhvdmVyLFxuI3RhYmxlIC5kcm9wZG93bi1tZW51ID4gLmFjdGl2ZSA+IGE6Zm9jdXMge1xuICBjb2xvcjogI2ZmZmZmZjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA4MWMyO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtbW96LWxpbmVhci1ncmFkaWVudCh0b3AsICMwMDg4Y2MsICMwMDc3YjMpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWdyYWRpZW50KGxpbmVhciwgMCAwLCAwIDEwMCUsIGZyb20oIzAwODhjYyksIHRvKCMwMDc3YjMpKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQodG9wLCAjMDA4OGNjLCAjMDA3N2IzKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogLW8tbGluZWFyLWdyYWRpZW50KHRvcCwgIzAwODhjYywgIzAwNzdiMyk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICMwMDg4Y2MsICMwMDc3YjMpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XG4gIG91dGxpbmU6IDA7XG4gIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KHN0YXJ0Q29sb3JzdHI9JyNmZjAwODhjYycsIGVuZENvbG9yc3RyPScjZmYwMDc3YjMnLCBHcmFkaWVudFR5cGU9MCk7IH1cblxuI3RhYmxlIC5kcm9wZG93bi1tZW51ID4gLmRpc2FibGVkID4gYSxcbiN0YWJsZSAuZHJvcGRvd24tbWVudSA+IC5kaXNhYmxlZCA+IGE6aG92ZXIsXG4jdGFibGUgLmRyb3Bkb3duLW1lbnUgPiAuZGlzYWJsZWQgPiBhOmZvY3VzIHtcbiAgY29sb3I6ICM5OTk5OTk7IH1cblxuI3RhYmxlIC5kcm9wZG93bi1tZW51ID4gLmRpc2FibGVkID4gYTpob3ZlcixcbiN0YWJsZSAuZHJvcGRvd24tbWVudSA+IC5kaXNhYmxlZCA+IGE6Zm9jdXMge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGN1cnNvcjogZGVmYXVsdDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KGVuYWJsZWQ9ZmFsc2UpOyB9XG5cbiN0YWJsZSAub3BlbiB7XG4gICp6LWluZGV4OiAxMDAwOyB9XG5cbiN0YWJsZSAub3BlbiA+IC5kcm9wZG93bi1tZW51IHtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuI3RhYmxlIC5kcm9wZG93bi1iYWNrZHJvcCB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiA5OTA7IH1cblxudWwucGFnaW5hdGlvbiBsaS5kaXNhYmxlZC5uYXZpZ2F0aW9uIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG5hcnRpY2xlLnRhYmxlYXUtc3RhdGlzdGljIGgxOmZpcnN0LWNoaWxkLCBhcnRpY2xlLnRhYmxlYXUtc3RhdGlzdGljIC50aXRsZS0xOmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLXRvcDogNXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgZm9udC1zaXplOiAzcmVtOyB9XG5cbi5oZWFkZXJDb250YWluZXIge1xuICBiYWNrZ3JvdW5kOiAjMGEwYTBhOyB9XG4gIC5oZWFkZXJDb250YWluZXIgI2hlYWRlciB7XG4gICAgbWFyZ2luOiBhdXRvO1xuICAgIG1heC13aWR0aDogMTAyLjVyZW07IH1cblxuI3RpbWVTY3JvbGwge1xuICB3aWR0aDogNDJweDtcbiAgcG9zaXRpb246IHN0aWNreTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICBiYWNrZ3JvdW5kOiAjMGEwYTBhO1xuICBwYWRkaW5nOiAwOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAjdGltZVNjcm9sbCB7XG4gICAgICB3aWR0aDogODJweDsgfSB9XG5cbiN0aW1lU2Nyb2xsYmFyIHtcbiAgaGVpZ2h0OiBjYWxjKDEwMHZoKTtcbiAgd2lkdGg6IDEwMCU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiAwJTtcbiAgbWFyZ2luLXRvcDogMHJlbTsgfVxuXG4jdG90U2Nyb2xsYmFyIHtcbiAgaGVpZ2h0OiAxMDAlO1xuICB3aWR0aDogMnB4O1xuICB0b3A6IC0wMCU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYmFja2dyb3VuZDogI0UwRTBFMDtcbiAgei1pbmRleDogLTE7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAwKTsgfVxuXG4jZG90U2Nyb2xsYmFyIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgbWFyZ2luOiAwZW0gMDtcbiAgaGVpZ2h0OiAxMDAlOyB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjUwcHgpIHtcbiAgICAjZG90U2Nyb2xsYmFyIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrOyB9IH1cbiAgI2RvdFNjcm9sbGJhciAuc2hpbSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAjZG90U2Nyb2xsYmFyIC5ob2xkZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBmb250LXNpemU6IDg1JTtcbiAgICBwYWRkaW5nOiAwZW0gMCAwIDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzBhMGEwYTsgfVxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzUwcHgpIHtcbiAgICAgICNkb3RTY3JvbGxiYXIgLmhvbGRlciB7XG4gICAgICAgIGZvbnQtc2l6ZTogOTAlOyB9IH1cbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwMHB4KSB7XG4gICAgICAjZG90U2Nyb2xsYmFyIC5ob2xkZXIge1xuICAgICAgICBmb250LXNpemU6IDk1JTsgfSB9XG4gICAgI2RvdFNjcm9sbGJhciAuaG9sZGVyIC5iYXIge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgd2lkdGg6IDJweDtcbiAgICAgIGxlZnQ6IDUwJTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwYTBhMGE7IH1cbiAgICAgICNkb3RTY3JvbGxiYXIgLmhvbGRlciAuYmFyIC5pbmRpY2F0b3Ige1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGQzMzMzO1xuICAgICAgICB3aWR0aDogMnB4OyB9XG4gICAgI2RvdFNjcm9sbGJhciAuaG9sZGVyIC5sYWJlbHMge1xuICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBwYWRkaW5nOiAwIDBlbTsgfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgICAjZG90U2Nyb2xsYmFyIC5ob2xkZXIgLmxhYmVscyB7XG4gICAgICAgICAgcGFkZGluZzogMCAyZW07IH0gfVxuICAgICAgI2RvdFNjcm9sbGJhciAuaG9sZGVyIC5sYWJlbHMgaSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgICAgICNkb3RTY3JvbGxiYXIgLmhvbGRlciAubGFiZWxzIGk6OmJlZm9yZSB7XG4gICAgICAgICAgei1pbmRleDogMjtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgYm90dG9tOiA1MCU7XG4gICAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgIHdpZHRoOiAwLjc1cmVtO1xuICAgICAgICAgIGhlaWdodDogMC43NXJlbTtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0UwRTBFMDtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSkgdHJhbnNsYXRlWSg1MCUpO1xuICAgICAgICAgIHRyYW5zaXRpb246IGJvcmRlci1jb2xvciAxMDBtcyBlYXNlLWluLCBiYWNrZ3JvdW5kLWNvbG9yIDE1MG1zIGVhc2UtaW47IH1cbiAgICAgICAgI2RvdFNjcm9sbGJhciAuaG9sZGVyIC5sYWJlbHMgaTo6YWZ0ZXIge1xuICAgICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgY29udGVudDogYXR0cihkYXRhLWxhYmVsKTtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgcmlnaHQ6IDByZW07XG4gICAgICAgICAgcGFkZGluZzogMC4zNzVyZW07XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwJSk7XG4gICAgICAgICAgZm9udC1mYW1pbHk6ICdJbnRlcic7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICBjb2xvcjogI2Y3ZjdmNztcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAjMGEwYTBhO1xuICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiAwLjVyZW07XG4gICAgICAgICAgdHJhbnNpdGlvbjogY29sb3IgMTUwbXMgZWFzZS1pbiwgb3BhY2l0eSAxNTBtcyBlYXNlLWluLCBwYWRkaW5nLXJpZ2h0IDEwMG1zIGVhc2Utb3V0OyB9XG4gICAgICAgICNkb3RTY3JvbGxiYXIgLmhvbGRlciAubGFiZWxzIGk6aG92ZXI6OmJlZm9yZSwgI2RvdFNjcm9sbGJhciAuaG9sZGVyIC5sYWJlbHMgaTpmb2N1czo6YmVmb3JlIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGQzMzMzOyB9XG4gICAgICAgICNkb3RTY3JvbGxiYXIgLmhvbGRlciAubGFiZWxzIGk6aG92ZXI6OmFmdGVyLCAjZG90U2Nyb2xsYmFyIC5ob2xkZXIgLmxhYmVscyBpOmZvY3VzOjphZnRlciB7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogMmVtO1xuICAgICAgICAgIG9wYWNpdHk6IDE7IH1cbiAgICAgICAgI2RvdFNjcm9sbGJhciAuaG9sZGVyIC5sYWJlbHMgaS5yZWFkOjpiZWZvcmUge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNkZDMzMzM7IH1cbiAgICAgICAgI2RvdFNjcm9sbGJhciAuaG9sZGVyIC5sYWJlbHMgaS5yZWFkOmhvdmVyOjpiZWZvcmUsICNkb3RTY3JvbGxiYXIgLmhvbGRlciAubGFiZWxzIGkucmVhZDpmb2N1czo6YmVmb3JlIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRTBFMEUwOyB9XG4gICAgICAgICNkb3RTY3JvbGxiYXIgLmhvbGRlciAubGFiZWxzIGkucmVhZGluZzo6YWZ0ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQ6ICNkZDMzMzM7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogMmVtOyB9XG4gICAgICAgICNkb3RTY3JvbGxiYXIgLmhvbGRlciAubGFiZWxzIGkucmVhZGluZzpob3Zlcjo6YWZ0ZXIsICNkb3RTY3JvbGxiYXIgLmhvbGRlciAubGFiZWxzIGkucmVhZGluZzpmb2N1czo6YWZ0ZXIge1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDJlbTtcbiAgICAgICAgICBvcGFjaXR5OiAxOyB9XG4gICNkb3RTY3JvbGxiYXIuZml4ZWQgLmhvbGRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB3aWR0aDogNDJweDtcbiAgICB6LWluZGV4OiAxOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgI2RvdFNjcm9sbGJhci5maXhlZCAuaG9sZGVyIHtcbiAgICAgICAgd2lkdGg6IDgycHg7IH0gfVxuICAjZG90U2Nyb2xsYmFyLmZpeGVkIC5zaGltIHtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuXG4udW5wYWRkZWQge1xuICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7IH1cblxuLnJvdy1sYXJnZXIge1xuICBtYXgtd2lkdGg6IDEwMi41cmVtOyB9XG5cbi5wYWRkaW5nMSB7XG4gIHBhZGRpbmc6IDFyZW07IH1cblxuLnYtYm90dG9tLWxhcmdlIHtcbiAgcGFkZGluZy1ib3R0b206IDYuNXJlbTsgfVxuXG4uZXhwb19jb250ZW50IHtcbiAgYmFja2dyb3VuZDogI0Y4RjdGNDsgfVxuICAuZXhwb19jb250ZW50LmJsYWNrY29udGVudCB7XG4gICAgYmFja2dyb3VuZDogIzBhMGEwYTsgfVxuICAuZXhwb19jb250ZW50IGhlYWRlciB7XG4gICAgYmFja2dyb3VuZDogIzBhMGEwYTtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5leHBvX2NvbnRlbnQgaGVhZGVyIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7IH0gfVxuICAgIC5leHBvX2NvbnRlbnQgaGVhZGVyIC50aXRsZSB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIG1hcmdpbi1ib3R0b206IDByZW07XG4gICAgICBtYXJnaW4tdG9wOiAwcmVtOyB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgIC5leHBvX2NvbnRlbnQgaGVhZGVyIC50aXRsZSB7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMHJlbTtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAwcmVtOyB9IH1cbiAgICAgIC5leHBvX2NvbnRlbnQgaGVhZGVyIC50aXRsZS51bmRlcmxpbmUge1xuICAgICAgICBib3JkZXItYm90dG9tOiAycHggIzlCOUI5QiBzb2xpZDsgfVxuICAgICAgLmV4cG9fY29udGVudCBoZWFkZXIgLnRpdGxlICoge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICBmb250LXNpemU6IDAuOHJlbTsgfVxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gICAgICAgICAgLmV4cG9fY29udGVudCBoZWFkZXIgLnRpdGxlICoge1xuICAgICAgICAgICAgZm9udC1zaXplOiAwLjhyZW07IH0gfVxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSBhbmQgKG1heC13aWR0aDogNzQuOTM3NWVtKSB7XG4gICAgICAgICAgLmV4cG9fY29udGVudCBoZWFkZXIgLnRpdGxlICoge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjNyZW07IH0gfVxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAgICAgLmV4cG9fY29udGVudCBoZWFkZXIgLnRpdGxlICoge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjVyZW07IH0gfVxuICAgICAgLmV4cG9fY29udGVudCBoZWFkZXIgLnRpdGxlIFtjbGFzcyo9XCIgaWNvbi1cIl0ge1xuICAgICAgICBtYXJnaW46IDAgMC4yNXJlbTtcbiAgICAgICAgZm9udC1zaXplOiAxLjRyZW07IH1cbiAgICAgICAgLmV4cG9fY29udGVudCBoZWFkZXIgLnRpdGxlIFtjbGFzcyo9XCIgaWNvbi1cIl06YmVmb3JlIHtcbiAgICAgICAgICBmb250LXNpemU6IDEuNHJlbTsgfVxuICAgIC5leHBvX2NvbnRlbnQgaGVhZGVyIGgxLCAuZXhwb19jb250ZW50IGhlYWRlciAudGl0bGUtMSB7XG4gICAgICBmb250LXNpemU6IDIuMjVyZW07XG4gICAgICBmb250LXdlaWdodDogNjAwOyB9XG4gICAgLmV4cG9fY29udGVudCBoZWFkZXIgaDMsIC5leHBvX2NvbnRlbnQgaGVhZGVyIC5oMywgLmV4cG9fY29udGVudCBoZWFkZXIgLnJzdCBoMiwgLnJzdCAuZXhwb19jb250ZW50IGhlYWRlciBoMiwgLmV4cG9fY29udGVudCBoZWFkZXIgLnJzdCBoMSwgLnJzdCAuZXhwb19jb250ZW50IGhlYWRlciBoMSwgLmV4cG9fY29udGVudCBoZWFkZXIgLnJzdCAudGl0bGUtMSwgLnJzdCAuZXhwb19jb250ZW50IGhlYWRlciAudGl0bGUtMSwgLmV4cG9fY29udGVudCBoZWFkZXIgLnJzdCAudGl0bGUtMiwgLnJzdCAuZXhwb19jb250ZW50IGhlYWRlciAudGl0bGUtMiwgLmV4cG9fY29udGVudCBoZWFkZXIgLnRpdGxlLTMge1xuICAgICAgZm9udC13ZWlnaHQ6IDcwMDsgfVxuXG4uYmxvY2suYmxhY2sge1xuICBiYWNrZ3JvdW5kOiAjMGEwYTBhOyB9XG4gIC5ibG9jay5ibGFjayAqIHtcbiAgICBjb2xvcjogI2Y3ZjdmNzsgfVxuXG4uYmxvY2suZ3JheSB7XG4gIGJhY2tncm91bmQ6ICMyMjIyMjI7IH1cbiAgLmJsb2NrLmdyYXkgKiB7XG4gICAgY29sb3I6ICNmN2Y3Zjc7IH1cblxuLmJsb2NrLndoaXRlIHtcbiAgYmFja2dyb3VuZDogI0VDRUNGMjsgfVxuICAuYmxvY2sud2hpdGUgKiB7XG4gICAgY29sb3I6ICMwYTBhMGE7IH1cblxuLmJsb2NrLndoaXRlciB7XG4gIGJhY2tncm91bmQ6ICNGOEY3RjQ7IH1cbiAgLmJsb2NrLndoaXRlciAqIHtcbiAgICBjb2xvcjogIzBhMGEwYTsgfVxuXG4uY29udGVudC1ib3guYmxhY2sge1xuICBiYWNrZ3JvdW5kOiAjMGEwYTBhOyB9XG4gIC5jb250ZW50LWJveC5ibGFjayBhIHtcbiAgICBjb2xvcjogI2RkMzMzMzsgfVxuXG4uZXhwb19ib2R5IGZvb3RlciB7XG4gIG1hcmdpbjogMDsgfVxuXG4uZXhwb19ib2R5IC5oZWFkZXJDb250YWluZXIge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIvc3RhdGljL2ltYWdlcy90aGVtZS9iYW4tZXhwby5wbmdcIik7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciByaWdodDtcbiAgYmFja2dyb3VuZC1zaXplOiBjb250YWluOyB9XG4gIC5leHBvX2JvZHkgLmhlYWRlckNvbnRhaW5lciAjaGVhZGVyLmludGVybiB7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7IH1cbiAgLmV4cG9fYm9keSAuaGVhZGVyQ29udGFpbmVyIC50b3AtYmFyIHtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDsgfVxuXG4jY29udGVudGV4cG9fY29udGFpbmVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6IGF1dG87XG4gIG1hcmdpbi10b3A6IC02cmVtO1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAjY29udGVudGV4cG9fY29udGFpbmVyIHtcbiAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdzsgfSB9XG5cbi5leHBvX2NvbnRlbnQgYXNpZGUsIC5leHBvX2NvbnRlbnQgbWFpbiB7XG4gIHBhZGRpbmctdG9wOiAyLjVyZW07IH1cblxuLmV4cG9fY29udGVudCBhc2lkZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdG9wOiAwO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuZXhwb19jb250ZW50IGFzaWRlIHtcbiAgICAgIHBvc2l0aW9uOiBzdGlja3k7IH0gfVxuXG4uZ29iYWNrc2lkZSB7XG4gIHBvc2l0aW9uOiBzdGlja3k7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IDkwdmg7IH1cbiAgLmdvYmFja3NpZGUgPiBkaXYge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICBsZWZ0OiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSkgcm90YXRlKC05MGRlZyk7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyO1xuICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICAgIGZvbnQtZmFtaWx5OiAnZXBpbG9ndWUnO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxuXG4jbmF2YmFyLXRoZW1hdGljcy1sZWZ0IHtcbiAgcG9zaXRpb246IHN0aWNreTtcbiAgdG9wOiAwOyB9XG4gICNuYXZiYXItdGhlbWF0aWNzLWxlZnQgdWwge1xuICAgIGJhY2tncm91bmQ6ICMwYTBhMGE7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIG1hcmdpbjogMDtcbiAgICBib3JkZXI6IDJweCAjMGEwYTBhIHNvbGlkOyB9XG4gICAgI25hdmJhci10aGVtYXRpY3MtbGVmdCB1bCBsaSB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICMwYTBhMGE7IH1cbiAgICAgICNuYXZiYXItdGhlbWF0aWNzLWxlZnQgdWwgbGk6bGFzdC1jaGlsZCB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDA7IH1cbiAgICAjbmF2YmFyLXRoZW1hdGljcy1sZWZ0IHVsIGEge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICAgIHBhZGRpbmc6IDAuNXJlbTtcbiAgICAgIGZvbnQtZmFtaWx5OiAndmFydGEnO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgICBsaW5lLWhlaWdodDogMXJlbTtcbiAgICAgIGNvbG9yOiAjMGEwYTBhOyB9XG4gICAgICAjbmF2YmFyLXRoZW1hdGljcy1sZWZ0IHVsIGE6aG92ZXIge1xuICAgICAgICBjb2xvcjogI2RkMzMzMzsgfVxuXG4jaXRlbXMtZXhwbywgI2l0ZW1zLXRoZW1zIHtcbiAgZmxvYXQ6IG5vbmU7XG4gIHdpZHRoOiA5NSU7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICNpdGVtcy1leHBvLCAjaXRlbXMtdGhlbXMge1xuICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgd2lkdGg6IDkwJTsgfSB9XG4gICNpdGVtcy1leHBvLmxpc3QtY2hhcCwgI2l0ZW1zLXRoZW1zLmxpc3QtY2hhcCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgY2xlYXI6IGJvdGg7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgcGFkZGluZy1ib3R0b206IDVyZW07IH1cbiAgI2l0ZW1zLWV4cG8gLmdyaWRzaXplciwgI2l0ZW1zLXRoZW1zIC5ncmlkc2l6ZXIge1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLyAyKTsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICNpdGVtcy1leHBvIC5ncmlkc2l6ZXIsICNpdGVtcy10aGVtcyAuZ3JpZHNpemVyIHtcbiAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAvIDMpOyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAjaXRlbXMtZXhwbyAuZ3JpZHNpemVyLCAjaXRlbXMtdGhlbXMgLmdyaWRzaXplciB7XG4gICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLyA0KTsgfSB9XG5cbiNpdGVtcy1leHBvIHtcbiAgd2lkdGg6IDkwJTtcbiAgbWFyZ2luOiAwJTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgI2l0ZW1zLWV4cG8ge1xuICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgd2lkdGg6IDkwJTtcbiAgICAgIG1hcmdpbjogYXV0bzsgfSB9XG5cbiNpdGVtcy10aGVtcyB7XG4gIHdpZHRoOiAxMDAlO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogMHJlbTsgfVxuICAjaXRlbXMtdGhlbXMgLmNhcmQtZXhwbyBmaWdjYXB0aW9uIGEge1xuICAgIGNvbG9yOiAjMGEwYTBhOyB9XG5cbi5pbkV4cG8ge1xuICBmb250LXNpemU6IDY2JTtcbiAgY29sb3I6IGJsYWNrICFpbXBvcnRhbnQ7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgY2xlYXI6IGJvdGg7XG4gIGZsb2F0OiBsZWZ0OyB9XG4gIC5pbkV4cG8gKiB7XG4gICAgY29sb3I6IGJsYWNrICFpbXBvcnRhbnQ7IH1cblxuLmFydGljbGVnb3RvIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi10b3A6IDRyZW07XG4gIGZsb2F0OiBsZWZ0O1xuICB3aWR0aDogMTAwJTsgfVxuICAuYXJ0aWNsZWdvdG8gaDEsIC5hcnRpY2xlZ290byAudGl0bGUtMSB7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuMnM7XG4gICAgY29sb3I6ICNmN2Y3ZjcgIWltcG9ydGFudDtcbiAgICB0ZXh0LXNoYWRvdzogMCAwIDBweCByZ2JhKDAsIDAsIDAsIDAuNSk7IH1cbiAgLmFydGljbGVnb3RvOmhvdmVyIGgxLCAuYXJ0aWNsZWdvdG86aG92ZXIgLnRpdGxlLTEge1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjJzO1xuICAgIGNvbG9yOiAjZGQzMzMzICFpbXBvcnRhbnQ7XG4gICAgdGV4dC1zaGFkb3c6IDAgMCA0MHB4IGJsYWNrLCAwIDAgNHB4IGJsYWNrOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5LjkzNzVlbSkge1xuICAgIC5hcnRpY2xlZ290byAudGh1bWIge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgaGVpZ2h0OiAzMHZ3O1xuICAgICAgbWluLWhlaWdodDogMTIwcHg7XG4gICAgICBtYXgtaGVpZ2h0OiAxNjBweDtcbiAgICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgICAuYXJ0aWNsZWdvdG8gLnRodW1iIGltZyB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgbWluLXdpZHRoOiAxMDAlO1xuICAgICAgICBtaW4taGVpZ2h0OiAxMDAlO1xuICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgIHRvcDogNTAlO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgICAuYXJ0aWNsZWdvdG8gLnRodW1iIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGhlaWdodDogMjB2dztcbiAgICAgIG1heC1oZWlnaHQ6IDMyMHB4O1xuICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgICAgIC5hcnRpY2xlZ290byAudGh1bWIgaW1nIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBtaW4td2lkdGg6IDEwMCU7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDEwMCU7XG4gICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpOyB9IH1cblxuLmxpc3RleHBvcyB7XG4gIHBhZGRpbmctYm90dG9tOiA0cmVtO1xuICBmbG9hdDogbGVmdDtcbiAgd2lkdGg6IDEwMCU7IH1cblxuLmNhcmQtZXhwbyB7XG4gIHdpZHRoOiBjYWxjKDEwMCUgIC8gMiAtIDE2cHgpO1xuICBmb250LWZhbWlseTogXCJWYXJ0YVwiO1xuICBwYWRkaW5nLWJvdHRvbTogMXJlbTtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC5jYXJkLWV4cG86aG92ZXIge1xuICAgIGNvbG9yOiAjZGQzMzMzICFpbXBvcnRhbnQ7IH1cbiAgICAuY2FyZC1leHBvOmhvdmVyIGZpZ2NhcHRpb24ge1xuICAgICAgY29sb3I6ICNkZDMzMzMgIWltcG9ydGFudDsgfVxuICAgICAgLmNhcmQtZXhwbzpob3ZlciBmaWdjYXB0aW9uIGEge1xuICAgICAgICBjb2xvcjogI2RkMzMzMyAhaW1wb3J0YW50OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuY2FyZC1leHBvIHtcbiAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLyAzIC0gMTZweCk7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLmNhcmQtZXhwbyB7XG4gICAgICB3aWR0aDogY2FsYygxMDAlIC8gNCAtIDE2cHgpOyB9IH1cbiAgLmNhcmQtZXhwby5iaWdjYXJkIHtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAgIC5jYXJkLWV4cG8uYmlnY2FyZCAuaW5mby1leHBvc2l0aW9uLXJpZ2h0LWRvd24ge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlOyB9XG4gICAgICAuY2FyZC1leHBvLmJpZ2NhcmQgLmluZm8tZXhwb3NpdGlvbi1yaWdodC1kb3duIC5pbmZvZXhwbyB7XG4gICAgICAgIG1hcmdpbjogM3JlbTtcbiAgICAgICAgbWF4LWhlaWdodDogY2FsYygxMDAlIC0gM3JlbSk7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICAgICAgICAuY2FyZC1leHBvLmJpZ2NhcmQgLmluZm8tZXhwb3NpdGlvbi1yaWdodC1kb3duIC5pbmZvZXhwbyBwIHtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBqdXN0aWZ5OyB9XG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5LjkzNzVlbSkge1xuICAgICAgICAgIC5jYXJkLWV4cG8uYmlnY2FyZCAuaW5mby1leHBvc2l0aW9uLXJpZ2h0LWRvd24gLmluZm9leHBvIHtcbiAgICAgICAgICAgIG1hcmdpbjogMXJlbTtcbiAgICAgICAgICAgIG1heC1oZWlnaHQ6IGNhbGMoMTAwJSAtIDNyZW0pO1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgc2Nyb2xsLWJlaGF2aW9yOiBzbW9vdGg7XG4gICAgICAgICAgICBvdmVyZmxvdy15OiBzY3JvbGw7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAxcmVtKTsgfSB9XG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgICAgICAgICAuY2FyZC1leHBvLmJpZ2NhcmQgLmluZm8tZXhwb3NpdGlvbi1yaWdodC1kb3duIC5pbmZvZXhwbyB7XG4gICAgICAgICAgICBtYXJnaW46IDFyZW07XG4gICAgICAgICAgICBtYXgtaGVpZ2h0OiBjYWxjKDEwMCUgLSAzcmVtKTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIHNjcm9sbC1iZWhhdmlvcjogc21vb3RoO1xuICAgICAgICAgICAgb3ZlcmZsb3cteTogc2Nyb2xsO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMXJlbSk7IH0gfVxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgICAgLmNhcmQtZXhwby5iaWdjYXJkIC5pbmZvLWV4cG9zaXRpb24tcmlnaHQtZG93biAuaW5mb2V4cG8gcCB7XG4gICAgICAgICAgICBmb250LXNpemU6IDAuOTVyZW07XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS4yZW07IH0gfVxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgICAgLmNhcmQtZXhwby5iaWdjYXJkIC5pbmZvLWV4cG9zaXRpb24tcmlnaHQtZG93biAuaW5mb2V4cG8gcCB7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuMXJlbTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjI1ZW07IH0gfVxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAgICAgLmNhcmQtZXhwby5iaWdjYXJkIC5pbmZvLWV4cG9zaXRpb24tcmlnaHQtZG93biAuaW5mb2V4cG8gcCB7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuM3JlbTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjI1ZW07IH0gfVxuICAgIC5jYXJkLWV4cG8uYmlnY2FyZCAudmlkLWV4cG8ge1xuICAgICAgYmFja2dyb3VuZDogIzBhMGEwYTtcbiAgICAgIGNvbG9yOiAjZjdmN2Y3O1xuICAgICAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gICAgICAuY2FyZC1leHBvLmJpZ2NhcmQgLnZpZC1leHBvID4gKiB7XG4gICAgICAgIGNvbG9yOiAjZjdmN2Y3O1xuICAgICAgICBmb250LWZhbWlseTogXCJpbnRlclwiO1xuICAgICAgICBmb250LXdlaWdodDogNjAwOyB9XG4gICAgICAuY2FyZC1leHBvLmJpZ2NhcmQgLnZpZC1leHBvLm9uLWJsYWNrID4gKiwgLmNhcmQtZXhwby5iaWdjYXJkIC52aWQtZXhwby5vbi1ibGFjayA+ICogKiB7XG4gICAgICAgIGNvbG9yOiAjZjdmN2Y3OyB9XG4gICAgLmNhcmQtZXhwby5iaWdjYXJkIGZpZ2NhcHRpb24ge1xuICAgICAgYm90dG9tOiBhdXRvO1xuICAgICAgdG9wOiA1MCU7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50OyB9XG4gICAgICAuY2FyZC1leHBvLmJpZ2NhcmQgZmlnY2FwdGlvbiBoMSwgLmNhcmQtZXhwby5iaWdjYXJkIGZpZ2NhcHRpb24gLnRpdGxlLTEge1xuICAgICAgICBmb250LXNpemU6IDEuNjI1cmVtO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMTtcbiAgICAgICAgbWFyZ2luLXRvcDogMS4zNzVyZW07XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwLjc1cmVtOyB9XG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgICAuY2FyZC1leHBvLmJpZ2NhcmQgZmlnY2FwdGlvbiBoMSwgLmNhcmQtZXhwby5iaWdjYXJkIGZpZ2NhcHRpb24gLnRpdGxlLTEge1xuICAgICAgICAgICAgZm9udC1zaXplOiAycmVtOyB9IH1cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgICAgIC5jYXJkLWV4cG8uYmlnY2FyZCBmaWdjYXB0aW9uIGgxLCAuY2FyZC1leHBvLmJpZ2NhcmQgZmlnY2FwdGlvbiAudGl0bGUtMSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDIuNzVyZW07IH0gfVxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAgICAgLmNhcmQtZXhwby5iaWdjYXJkIGZpZ2NhcHRpb24gaDEsIC5jYXJkLWV4cG8uYmlnY2FyZCBmaWdjYXB0aW9uIC50aXRsZS0xIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMy40cmVtOyB9IH1cbiAgICAuY2FyZC1leHBvLmJpZ2NhcmQgLmluZm8tZXhwb3NpdGlvbi1yaWdodC1kb3duIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMTAwJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgYmFja2dyb3VuZDogI0VDRUNGMjtcbiAgICAgIGNvbG9yOiAjMGEwYTBhO1xuICAgICAgdHJhbnNpdGlvbjogYWxsIDAuNXM7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAgIC5jYXJkLWV4cG8uYmlnY2FyZCAudGh1bWIge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgICAuY2FyZC1leHBvLmJpZ2NhcmQgLnRodW1iIGltZyB7XG4gICAgICAgIG9iamVjdC1maXQ6IGNvdmVyOyB9XG4gICAgICAuY2FyZC1leHBvLmJpZ2NhcmQgLnRodW1iOmFmdGVyIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4zOCk7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7IH1cbiAgICAuY2FyZC1leHBvLmJpZ2NhcmQgLmluZm8tZXhwb3NpdGlvbiB7XG4gICAgICBwYWRkaW5nOiAwLjg3NXJlbSAwIDEuOHJlbTtcbiAgICAgIGZvbnQtZmFtaWx5OiAnaW50ZXInO1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICM5QjlCOUI7IH1cbiAgICAgIC5jYXJkLWV4cG8uYmlnY2FyZCAuaW5mby1leHBvc2l0aW9uIC5hdXRoLWV4cG8ge1xuICAgICAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgICAgICBjb2xvcjogI2Y3ZjdmNztcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7IH1cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAgIC5jYXJkLWV4cG8uYmlnY2FyZCAuaW5mby1leHBvc2l0aW9uIC5hdXRoLWV4cG8ge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjEyNXJlbTsgfSB9XG4gICAgICAuY2FyZC1leHBvLmJpZ2NhcmQgLmluZm8tZXhwb3NpdGlvbiAuZGF0ZS1leHBvLCAuY2FyZC1leHBvLmJpZ2NhcmQgLmluZm8tZXhwb3NpdGlvbiAuZGF0ZS1leHBvICoge1xuICAgICAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgICAgICBjb2xvcjogIzlGOUM5QyAhaW1wb3J0YW50O1xuICAgICAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDsgfVxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgICAgLmNhcmQtZXhwby5iaWdjYXJkIC5pbmZvLWV4cG9zaXRpb24gLmRhdGUtZXhwbywgLmNhcmQtZXhwby5iaWdjYXJkIC5pbmZvLWV4cG9zaXRpb24gLmRhdGUtZXhwbyAqIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMC43NXJlbTsgfSB9XG4gICAgICAgIC5jYXJkLWV4cG8uYmlnY2FyZCAuaW5mby1leHBvc2l0aW9uIC5kYXRlLWV4cG8gc3BhbiwgLmNhcmQtZXhwby5iaWdjYXJkIC5pbmZvLWV4cG9zaXRpb24gLmRhdGUtZXhwbyAqIHNwYW4ge1xuICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7IH1cbiAgLmNhcmQtZXhwby5zbWFsbGNhcmQgZmlnY2FwdGlvbiB7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDEuMTI1cmVtKTtcbiAgICBib3gtc2hhZG93OiAtNHB4IDZweCByZ2JhKDAsIDAsIDAsIDAuNCk7IH1cbiAgLmNhcmQtZXhwby5zbWFsbGNhcmQgLmluZm8tZXhwb3NpdGlvbiB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxLjVyZW07IH1cbiAgICAuY2FyZC1leHBvLnNtYWxsY2FyZCAuaW5mby1leHBvc2l0aW9uIC5hdXRoLWV4cG8ge1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgIGZvbnQtc2l6ZTogMC43NXJlbTsgfVxuICAuY2FyZC1leHBvIGZpZ3VyZSB7XG4gICAgcGFkZGluZzogMDtcbiAgICBtYXJnaW46IDA7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgICAuY2FyZC1leHBvIGZpZ3VyZSBpbWcge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDI0NywgMjQ3LCAyNDcsIDAuOSk7IH1cbiAgLmNhcmQtZXhwbyBmaWdjYXB0aW9uIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiAxcmVtO1xuICAgIGJhY2tncm91bmQ6ICNGOEY3RjQ7XG4gICAgZm9udC1mYW1pbHk6IFwiSW50ZXJcIjtcbiAgICBmb250LXdlaWdodDogODAwO1xuICAgIGNvbG9yOiAjMGEwYTBhO1xuICAgIHBhZGRpbmc6IDAuMTI1cmVtO1xuICAgIGZvbnQtc2l6ZTogMC43NXJlbTsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5jYXJkLWV4cG8gZmlnY2FwdGlvbiB7XG4gICAgICAgIGZvbnQtc2l6ZTogMC44MjVyZW07IH0gfVxuICAgIC5jYXJkLWV4cG8gZmlnY2FwdGlvbiBhIHtcbiAgICAgIGNvbG9yOiAjMGEwYTBhOyB9XG4gIC5jYXJkLWV4cG8gLnZpZC1leHBvIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgYmFja2dyb3VuZDogI0Y4RjdGNDtcbiAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgIGZvbnQtZmFtaWx5OiBcIlZhcnRhXCI7XG4gICAgei1pbmRleDogMTA7IH1cbiAgICAuY2FyZC1leHBvIC52aWQtZXhwbyA+ICogKiB7XG4gICAgICBjb2xvcjogIzBhMGEwYTsgfVxuICAgIC5jYXJkLWV4cG8gLnZpZC1leHBvID4gKiB7XG4gICAgICBjb2xvcjogIzBhMGEwYTtcbiAgICAgIHBhZGRpbmc6IDAuMTI1cmVtIDAuNzVyZW07XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAgICAgLmNhcmQtZXhwbyAudmlkLWV4cG8gPiAqIGkge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwLjFyZW07IH1cbiAgICAgIC5jYXJkLWV4cG8gLnZpZC1leHBvID4gKiBzcGFuIHtcbiAgICAgICAgbWFyZ2luOiAwLjRyZW07XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDAuMnJlbTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDAuMnJlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgIGZvbnQtc2l6ZTogMC43NXJlbTsgfVxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgICAgLmNhcmQtZXhwbyAudmlkLWV4cG8gPiAqIHNwYW4ge1xuICAgICAgICAgICAgZm9udC1zaXplOiAwLjgyNXJlbTsgfSB9XG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgICAuY2FyZC1leHBvIC52aWQtZXhwbyA+ICogc3BhbiB7XG4gICAgICAgICAgICBmb250LXNpemU6IDAuODI1cmVtOyB9IH1cbiAgICAgICAgLmNhcmQtZXhwbyAudmlkLWV4cG8gPiAqIHNwYW4gaSB7XG4gICAgICAgICAgZm9udC1zaXplOiAwLjc1cmVtOyB9XG4gICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAgICAgLmNhcmQtZXhwbyAudmlkLWV4cG8gPiAqIHNwYW4gaSB7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMC44MjVyZW07IH0gfVxuICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgICAgIC5jYXJkLWV4cG8gLnZpZC1leHBvID4gKiBzcGFuIGkge1xuICAgICAgICAgICAgICBmb250LXNpemU6IDAuODI1cmVtOyB9IH1cbiAgLmNhcmQtZXhwby5vbi1ibGFjayBmaWdjYXB0aW9uIHtcbiAgICBiYWNrZ3JvdW5kOiAjMGEwYTBhOyB9XG4gICAgLmNhcmQtZXhwby5vbi1ibGFjayBmaWdjYXB0aW9uIGEge1xuICAgICAgY29sb3I6ICNmN2Y3Zjc7IH1cbiAgLmNhcmQtZXhwby5vbi1ibGFjayAudmlkLWV4cG8ge1xuICAgIGJhY2tncm91bmQ6ICMwYTBhMGE7XG4gICAgY29sb3I6ICNmN2Y3Zjc7IH1cbiAgLmNhcmQtZXhwby5vbi1ibGFjayBmaWd1cmUgaW1nIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDI0NywgMjQ3LCAyNDcsIDAuOSk7IH1cbiAgLmNhcmQtZXhwby5vbi1ibGFjayAudmlkLWV4cG8gPiAqLCAuY2FyZC1leHBvLm9uLWJsYWNrIC52aWQtZXhwbyA+ICogKiB7XG4gICAgY29sb3I6ICNmN2Y3Zjc7IH1cbiAgLmNhcmQtZXhwbzpub3QoLm9uLWJsYWNrKSBmaWdjYXB0aW9uIGEge1xuICAgIGNvbG9yOiAjMGEwYTBhOyB9XG4gIC5jYXJkLWV4cG86bm90KC5vbi1ibGFjaykgLnZpZC1leHBvIHtcbiAgICBjb2xvcjogIzBhMGEwYTsgfVxuICAuY2FyZC1leHBvOm5vdCgub24tYmxhY2spIGZpZ3VyZSBpbWcge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMTU5LCAxNTksIDE1OSwgMC45KTsgfVxuICAuY2FyZC1leHBvIC5pbmZvLWV4cG9zaXRpb24ge1xuICAgIHBhZGRpbmc6IDAuMTI1cmVtOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmNhcmQtZXhwbyAuaW5mby1leHBvc2l0aW9uIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC13cmFwOiBub3dyYXA7IH0gfVxuICAgIC5jYXJkLWV4cG8gLmluZm8tZXhwb3NpdGlvbiAuYXV0aC1leHBvIHtcbiAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgIGNvbG9yOiAjMGEwYTBhO1xuICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgICAuY2FyZC1leHBvIC5pbmZvLWV4cG9zaXRpb24gLmRhdGUtZXhwbyB7XG4gICAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuNXJlbTtcbiAgICAgIGNvbG9yOiAjOUY5QzlDO1xuICAgICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgICB3aGl0ZS1zcGFjZTogbm93cmFwOyB9XG4gICAgICAuY2FyZC1leHBvIC5pbmZvLWV4cG9zaXRpb24gLmRhdGUtZXhwbyBzcGFuIHtcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgfVxuXG4jdGhlbUhlYWRlciB7XG4gIG1hcmdpbjogYXV0bztcbiAgd2lkdGg6IDEwMCU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGhlaWdodDogMjV2aDtcbiAgbWluLWhlaWdodDogMTkwcHg7XG4gIG1heC1oZWlnaHQ6IDMyMHB4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyICFpbXBvcnRhbnQ7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAjdGhlbUhlYWRlciBoMSwgI3RoZW1IZWFkZXIgLnRpdGxlLTEge1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICN0aGVtSGVhZGVyIGgxLCAjdGhlbUhlYWRlciAudGl0bGUtMSB7XG4gICAgICAgIGZvbnQtc2l6ZTogM3JlbTsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgI3RoZW1IZWFkZXIgaDEsICN0aGVtSGVhZGVyIC50aXRsZS0xIHtcbiAgICAgICAgZm9udC1zaXplOiA0cmVtOyB9IH1cblxuLmNvbnRhaW5lckdyaWRleHBvcyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbjogMHB4IGF1dG87XG4gIGhlaWdodDogMTAwJTtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiA0MnB4IDFmcjtcbiAgZ3JpZC1nYXA6IDBweDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmNvbnRhaW5lckdyaWRleHBvcyB7XG4gICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDgycHggMWZyOyB9IH1cbiAgLmNvbnRhaW5lckdyaWRleHBvcyAjdGhlbUhlYWRlciB7XG4gICAgaGVpZ2h0OiAyMHZoO1xuICAgIG1pbi1oZWlnaHQ6IDE2MHB4O1xuICAgIG1heC1oZWlnaHQ6IDMyMHB4OyB9XG4gIC5jb250YWluZXJHcmlkZXhwb3MuZXhwb2RldGFpbCB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiA0MnB4IDQycHggMWZyOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLmNvbnRhaW5lckdyaWRleHBvcy5leHBvZGV0YWlsIHtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiA4MnB4IDgycHggMWZyOyB9IH1cbiAgICAuY29udGFpbmVyR3JpZGV4cG9zLmV4cG9kZXRhaWwgLmhlYWRlcmdyaWQge1xuICAgICAgZ3JpZC1jb2x1bW46IHNwYW4gMzsgfVxuICAgIC5jb250YWluZXJHcmlkZXhwb3MuZXhwb2RldGFpbCAubWFpbmdyaWRleHBvcywgLmNvbnRhaW5lckdyaWRleHBvcy5leHBvZGV0YWlsIC5jb250ZW50LWJveCB7XG4gICAgICBncmlkLWNvbHVtbjogMy8zOyB9XG4gICAgICAuY29udGFpbmVyR3JpZGV4cG9zLmV4cG9kZXRhaWwgLm1haW5ncmlkZXhwb3MgYTpob3ZlciwgLmNvbnRhaW5lckdyaWRleHBvcy5leHBvZGV0YWlsIC5jb250ZW50LWJveCBhOmhvdmVyIHtcbiAgICAgICAgY29sb3I6ICNkZDMzMzMgIWltcG9ydGFudDsgfVxuICAgICAgLmNvbnRhaW5lckdyaWRleHBvcy5leHBvZGV0YWlsIC5tYWluZ3JpZGV4cG9zLnRvcDNyZWwsIC5jb250YWluZXJHcmlkZXhwb3MuZXhwb2RldGFpbCAuY29udGVudC1ib3gudG9wM3JlbCB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgdG9wOiAtM3JlbTsgfVxuICAgIC5jb250YWluZXJHcmlkZXhwb3MuZXhwb2RldGFpbCAudG90YWwge1xuICAgICAgZ3JpZC1jb2x1bW46IHNwYW4gMzsgfVxuICAgIC5jb250YWluZXJHcmlkZXhwb3MuZXhwb2RldGFpbCAuc2lkZWJhci5ibGFjayB7XG4gICAgICBiYWNrZ3JvdW5kOiAjMGEwYTBhOyB9XG4gICAgLmNvbnRhaW5lckdyaWRleHBvcy5leHBvZGV0YWlsIC5yZWNlbnRlci1zaWRlMSB7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDI0cHgpOyB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgIC5jb250YWluZXJHcmlkZXhwb3MuZXhwb2RldGFpbCAucmVjZW50ZXItc2lkZTEge1xuICAgICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSA4MnB4KTsgfSB9XG4gICAgICAuY29udGFpbmVyR3JpZGV4cG9zLmV4cG9kZXRhaWwgLnJlY2VudGVyLXNpZGUxLnNsaWRldGhlbXMge1xuICAgICAgICBtYXJnaW46IGF1dG87IH1cbiAgICAuY29udGFpbmVyR3JpZGV4cG9zLmV4cG9kZXRhaWwgI3RoZW1IZWFkZXIge1xuICAgICAgaGVpZ2h0OiAzNXZoO1xuICAgICAgbWluLWhlaWdodDogMjgwcHg7XG4gICAgICBtYXgtaGVpZ2h0OiAzODBweDsgfVxuICAgICAgLmNvbnRhaW5lckdyaWRleHBvcy5leHBvZGV0YWlsICN0aGVtSGVhZGVyIGgxLCAuY29udGFpbmVyR3JpZGV4cG9zLmV4cG9kZXRhaWwgI3RoZW1IZWFkZXIgLnRpdGxlLTEge1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDsgfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgICAuY29udGFpbmVyR3JpZGV4cG9zLmV4cG9kZXRhaWwgI3RoZW1IZWFkZXIge1xuICAgICAgICAgIGhlaWdodDogMzh2aDtcbiAgICAgICAgICBtaW4taGVpZ2h0OiAzMDBweDsgfSB9XG4gIC5jb250YWluZXJHcmlkZXhwb3MuY2hhcHRkZXRhaWwge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogNDJweCA0MnB4IDFmcjsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5jb250YWluZXJHcmlkZXhwb3MuY2hhcHRkZXRhaWwge1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDgycHggODJweCAxZnIgODJweDsgfSB9XG4gICAgLmNvbnRhaW5lckdyaWRleHBvcy5jaGFwdGRldGFpbCAuaGVhZGVyZ3JpZCB7XG4gICAgICBncmlkLWNvbHVtbjogc3BhbiA0OyB9XG4gICAgLmNvbnRhaW5lckdyaWRleHBvcy5jaGFwdGRldGFpbCAubWFpbmdyaWRleHBvcywgLmNvbnRhaW5lckdyaWRleHBvcy5jaGFwdGRldGFpbCAuY29udGVudC1ib3gge1xuICAgICAgZ3JpZC1jb2x1bW46IDMvMztcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICBncmlkLXJvdzogMSAvIDEwMDsgfVxuICAgIC5jb250YWluZXJHcmlkZXhwb3MuY2hhcHRkZXRhaWwgLnRvdGFsIHtcbiAgICAgIGdyaWQtY29sdW1uOiBzcGFuIDQ7IH1cbiAgICAuY29udGFpbmVyR3JpZGV4cG9zLmNoYXB0ZGV0YWlsIC5zaWRlYmFyLmJsYWNrIHtcbiAgICAgIGJhY2tncm91bmQ6ICMwYTBhMGE7IH1cbiAgICAuY29udGFpbmVyR3JpZGV4cG9zLmNoYXB0ZGV0YWlsIC5zaWRlYmFyLnJpZ2h0YmFyIHtcbiAgICAgIGdyaWQtY29sdW1uOiA0LzQ7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgIC5jb250YWluZXJHcmlkZXhwb3MuY2hhcHRkZXRhaWwgLnNpZGViYXIucmlnaHRiYXIge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrOyB9IH1cbiAgICAuY29udGFpbmVyR3JpZGV4cG9zLmNoYXB0ZGV0YWlsIC5yZWNlbnRlci1zaWRlMSB7XG4gICAgICB3aWR0aDogMTAwJTsgfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgICAuY29udGFpbmVyR3JpZGV4cG9zLmNoYXB0ZGV0YWlsIC5yZWNlbnRlci1zaWRlMSB7XG4gICAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDQxcHgpOyB9IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAgICAgLmNvbnRhaW5lckdyaWRleHBvcy5jaGFwdGRldGFpbCAucmVjZW50ZXItc2lkZTEge1xuICAgICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSA4MnB4KTsgfSB9XG4gICAgLmNvbnRhaW5lckdyaWRleHBvcy5jaGFwdGRldGFpbCAjdGhlbUhlYWRlciB7XG4gICAgICBoZWlnaHQ6IDMwdmg7XG4gICAgICBtYXgtaGVpZ2h0OiAzMjBweDsgfVxuICAuY29udGFpbmVyR3JpZGV4cG9zIC5yZWNlbnRlci1zaWRlMSB7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuY29udGFpbmVyR3JpZGV4cG9zIC5yZWNlbnRlci1zaWRlMSB7XG4gICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSA4MnB4KTsgfSB9XG4gIC5jb250YWluZXJHcmlkZXhwb3MgLnNpZGViYXIge1xuICAgIGdyaWQtcm93OiAxIC8gMTAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNkZDMzMzM7IH1cbiAgLmNvbnRhaW5lckdyaWRleHBvcyAuaGVhZGVyZ3JpZCB7XG4gICAgZ3JpZC1jb2x1bW46IHNwYW4gMjsgfVxuICAuY29udGFpbmVyR3JpZGV4cG9zIC5tYWluZ3JpZGV4cG9zIHtcbiAgICBncmlkLWNvbHVtbjogMi8yOyB9XG4gIC5jb250YWluZXJHcmlkZXhwb3MgLnRvdGFsIHtcbiAgICBncmlkLWNvbHVtbjogc3BhbiAyOyB9XG4gIC5jb250YWluZXJHcmlkZXhwb3MgLmNyZWRpdHMge1xuICAgIG1hcmdpbi10b3A6IDMuMjVyZW07XG4gICAgY2xlYXI6IGJvdGg7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLWJvdHRvbTogMy4yNXJlbTsgfVxuICAgIC5jb250YWluZXJHcmlkZXhwb3MgLmNyZWRpdHMgLmNyZWRsaXN0IHtcbiAgICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgICBvcGFjaXR5OiAwLjY2OyB9XG5cbi5lbmQtYm94LmJsYWNrIGEge1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgfVxuICAuZW5kLWJveC5ibGFjayBhOmhvdmVyIHtcbiAgICBjb2xvcjogI2RkMzMzMyAhaW1wb3J0YW50OyB9XG5cbi5tYXJxdWVlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW46IDAgMTZweCAwcmVtIDA7IH1cbiAgLm1hcnF1ZWUgLmxpc3RhdXQge1xuICAgIGZvbnQtc2l6ZTogMC44NzVyZW07IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAubWFycXVlZSAubGlzdGF1dCB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICAgICAgICB0cmFuc2l0aW9uOiAxcztcbiAgICAgICAgZGlzcGxheTogZmxleDsgfVxuICAgICAgICAubWFycXVlZSAubGlzdGF1dCBzcGFuIHtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lOyB9IH1cblxuLnByZXNleHBvIHtcbiAgbWFyZ2luLXRvcDogNHJlbTtcbiAgcGFkZGluZy1ib3R0b206IDNyZW07XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKDIyNCwgMjI0LCAyMjQsIDAuNSk7XG4gIG1hcmdpbi1ib3R0b206IDIuNHJlbTsgfVxuICAucHJlc2V4cG8gYXJ0aWNsZSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLnByZXNleHBvIGFydGljbGUge1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93OyB9IH1cbiAgLnByZXNleHBvIC5pbnRyb0ZpcnN0IHtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIHRleHQtYWxpZ246IGp1c3RpZnk7IH1cbiAgLnByZXNleHBvIC5jaXRlRm9yRXhwbyB7XG4gICAgbWFyZ2luLXRvcDogMXJlbTsgfVxuICAucHJlc2V4cG8gLmNpdGF0aW9uIHtcbiAgICBmb250LXNpemU6IDEuMTI1cmVtO1xuICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICBtYXJnaW4tYm90dG9tOiAwLjYyNXJlbTsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAgIC5wcmVzZXhwbyAuY2l0YXRpb24ge1xuICAgICAgICBmb250LXNpemU6IDEuMTI1cmVtOyB9IH1cbiAgLnByZXNleHBvIC5jaXRhdGlvbl9hdXRoIHtcbiAgICBmb250LXNpemU6IDFyZW07XG4gICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICBjb2xvcjogI0UwRTBFMDsgfVxuICAucHJlc2V4cG8gLmV4cG8tcGljdHVyZSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgbWFyZ2luLXJpZ2h0OiAycmVtOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTM3NWVtKSB7XG4gICAgICAucHJlc2V4cG8gLmV4cG8tcGljdHVyZSB7XG4gICAgICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgICAgIC5wcmVzZXhwbyAuZXhwby1waWN0dXJlIGltZyB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDJyZW07IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5wcmVzZXhwbyAuZXhwby1waWN0dXJlIHtcbiAgICAgICAgd2lkdGg6IDI4MHB4OyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAucHJlc2V4cG8gLmV4cG8tcGljdHVyZSB7XG4gICAgICAgIHdpZHRoOiAzNjBweDsgfSB9XG4gIC5wcmVzZXhwbyBhIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgfVxuXG4uZXhwby1waWN0dXJlIHtcbiAgd2lkdGg6IDM2MHB4OyB9XG4gIC5leHBvLXBpY3R1cmUgZmlndXJlIHtcbiAgICBtYXJnaW46IDA7IH1cblxuLmV4cG8taW50cm8ge1xuICBtYXJnaW4tbGVmdDogMHJlbTtcbiAgd2lkdGg6IDEwMCU7XG4gIGZvbnQtc2l6ZTogMXJlbTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgLmV4cG8taW50cm8ge1xuICAgICAgbWFyZ2luLWxlZnQ6IDByZW07XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGZvbnQtc2l6ZTogMXJlbTsgfVxuICAgICAgLmV4cG8taW50cm8gcCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMXJlbTsgfSB9XG4gIC5leHBvLWludHJvIC5pbnRyb01vcmUge1xuICAgIGZvbnQtZmFtaWx5OiAnSW5yaWEgU2VyaWYnO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgdGV4dC1hbGlnbjoganVzdGlmeTsgfVxuICAgIC5leHBvLWludHJvIC5pbnRyb01vcmUgYSB7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAgIC5leHBvLWludHJvIC5pbnRyb01vcmUge1xuICAgICAgICBmb250LXNpemU6IDFyZW07IH1cbiAgICAgICAgLmV4cG8taW50cm8gLmludHJvTW9yZSBwIHtcbiAgICAgICAgICBmb250LXNpemU6IDFyZW07IH0gfVxuXG4uZXhwb1BsYW4ge1xuICBtYXJnaW4tdG9wOiAxLjVlbTtcbiAgbWFyZ2luLWJvdHRvbTogMy41cmVtOyB9XG4gIC5leHBvUGxhbiBoMiwgLmV4cG9QbGFuIC5yc3QgaDEsIC5yc3QgLmV4cG9QbGFuIGgxLCAuZXhwb1BsYW4gLnJzdCAudGl0bGUtMSwgLnJzdCAuZXhwb1BsYW4gLnRpdGxlLTEsIC5leHBvUGxhbiAudGl0bGUtMiB7XG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICBmb250LXNpemU6IDIuMjVyZW07IH1cblxuLmNhcHRsX2gyIHtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgZm9udC1zaXplOiAyLjI1cmVtOyB9XG5cbiNyZWNhcENyZWQge1xuICBtYXJnaW4tdG9wOiA1cmVtO1xuICBtYXJnaW4tYm90dG9tOiA1cmVtOyB9XG5cbi5saXN0Y2hhcHRlciB7XG4gIHBhZGRpbmctdG9wOiAzcmVtO1xuICBwYWRkaW5nLWJvdHRvbTogM3JlbTsgfVxuICAubGlzdGNoYXB0ZXIgLmNoYXB0ZXJJdGVtIHtcbiAgICBwYWRkaW5nOiAwLjVyZW07IH1cbiAgICAubGlzdGNoYXB0ZXIgLmNoYXB0ZXJJdGVtLmFjdGl2ZSB7XG4gICAgICBib3JkZXI6IDFweCAjZGQzMzMzIHNvbGlkOyB9XG4gIC5saXN0Y2hhcHRlciAubmF2c2xpZGVyYnkzIGE6aG92ZXIgLmljb24tMng6YmVmb3JlIHtcbiAgICBjb2xvcjogI2RkMzMzMyAhaW1wb3J0YW50OyB9XG4gIC5saXN0Y2hhcHRlciAuaWNvbi0yeDpiZWZvcmUge1xuICAgIGNvbG9yOiAjZjdmN2Y3ICFpbXBvcnRhbnQ7IH1cblxuI3BhcmFnaE1lbnUge1xuICBtYXJnaW46IDIuNXJlbSAwO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgI3BhcmFnaE1lbnUgLm1lbnVjaGFwSXRlbTpob3ZlciAudGl0bGVwYXIge1xuICAgIGNvbG9yOiAjZGQzMzMzICFpbXBvcnRhbnQ7IH1cbiAgICAjcGFyYWdoTWVudSAubWVudWNoYXBJdGVtOmhvdmVyIC50aXRsZXBhciAqIHtcbiAgICAgIGNvbG9yOiAjZGQzMzMzICFpbXBvcnRhbnQ7IH1cbiAgI3BhcmFnaE1lbnUgPiBkaXYge1xuICAgIHdpZHRoOiA1MCU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIG1hcmdpbjogMC41cmVtIDA7XG4gICAgY3Vyc29yOiBwb2ludGVyOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgI3BhcmFnaE1lbnUgPiBkaXYge1xuICAgICAgICB3aWR0aDogMjUlOyB9IH1cbiAgICAjcGFyYWdoTWVudSA+IGRpdiA+IC50aXRsZXBhciB7XG4gICAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgICAgcGFkZGluZzogMCAwLjc1cmVtOyB9XG4gICAgI3BhcmFnaE1lbnUgPiBkaXYgPiAuaW1ncGFyIHtcbiAgICAgIHdpZHRoOiA1MHB4O1xuICAgICAgaGVpZ2h0OiA0MHB4O1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgZmxleDogMCAwIDUwcHg7IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgI3BhcmFnaE1lbnUgPiBkaXYgPiAuaW1ncGFyIHtcbiAgICAgICAgICB3aWR0aDogMTAwcHg7XG4gICAgICAgICAgaGVpZ2h0OiA3MnB4O1xuICAgICAgICAgIGZsZXg6IDAgMCAxMDBweDsgfSB9XG4gICAgICAjcGFyYWdoTWVudSA+IGRpdiA+IC5pbWdwYXIgaW1nIHtcbiAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgbWluLXdpZHRoOiAxMDAlO1xuICAgICAgICBtaW4taGVpZ2h0OiAxMDAlO1xuICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTsgfVxuXG4uaW50cm9mb2xkLCAuZGVzY3Jmb2xkIHtcbiAgZm9udC1mYW1pbHk6ICdJbnJpYSBTZXJpZicsIHNlcmlmOyB9XG4gIC5pbnRyb2ZvbGQgKiwgLmRlc2NyZm9sZCAqIHtcbiAgICBsaW5lLWhlaWdodDogMS44NzVyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAuaW50cm9mb2xkIGEsIC5kZXNjcmZvbGQgYSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IH1cblxuLmludHJvZm9sZCB7XG4gIHRleHQtYWxpZ246IGp1c3RpZnk7IH1cblxuLmRlc2NyZm9sZCBwIHtcbiAgdGV4dC1hbGlnbjoganVzdGlmeTsgfVxuXG4uZm9sZGVyIHtcbiAgbWFyZ2luLXRvcDogMnJlbTtcbiAgZmxvYXQ6IGxlZnQ7IH1cbiAgLmZvbGRlciBoMywgLmZvbGRlciAuaDMsIC5mb2xkZXIgLnJzdCBoMiwgLnJzdCAuZm9sZGVyIGgyLCAuZm9sZGVyIC5yc3QgaDEsIC5yc3QgLmZvbGRlciBoMSwgLmZvbGRlciAucnN0IC50aXRsZS0xLCAucnN0IC5mb2xkZXIgLnRpdGxlLTEsIC5mb2xkZXIgLnJzdCAudGl0bGUtMiwgLnJzdCAuZm9sZGVyIC50aXRsZS0yLCAuZm9sZGVyIC50aXRsZS0zIHtcbiAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgICBmb250LXN0eWxlOiBpdGFsaWM7IH1cblxuLmNpdGF0aW9uRm9sZGVyIC5pcy1jb250ZW50IHtcbiAgd2lkdGg6IDEwMCU7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCg5MGRlZywgd2hpdGUsIHRyYW5zcGFyZW50KTtcbiAgcGFkZGluZzogMnJlbTtcbiAgcGFkZGluZy1sZWZ0OiA0cmVtOyB9XG5cbi5tb3JlYmxvY2sge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZmxvYXQ6IGxlZnQ7XG4gIHdpZHRoOiAxMDAlO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgxNTUsIDE1NSwgMTU1LCAwLjUpOyB9XG4gIC5tb3JlYmxvY2sgLnNob3dmb2xkZXIgPiBzcGFuIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZmxvYXQ6IHJpZ2h0OyB9XG4gICAgLm1vcmVibG9jayAuc2hvd2ZvbGRlciA+IHNwYW4gc3Bhbi5tb3JlIHtcbiAgICAgIGZvbnQtc2l6ZTogMmVtO1xuICAgICAgZm9udC13ZWlnaHQ6IDEwMDtcbiAgICAgIHBhZGRpbmctbGVmdDogMC4zZW07IH1cbiAgLm1vcmVibG9jayAuc2hvd2ZvbGRlciAubW9yZWJ1dCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG4gIC5tb3JlYmxvY2sgLnNob3dmb2xkZXIgLmxlc3NidXQge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgLm1vcmVibG9jayAuc2hvd2ZvbGRlci5vcGVuZWQgLm1vcmVidXQge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgLm1vcmVibG9jayAuc2hvd2ZvbGRlci5vcGVuZWQgLmxlc3NidXQge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuXG4uaXRhbGljIHtcbiAgZm9udC1zdHlsZTogaXRhbGljOyB9XG5cbi5kZXRhaWxmb2xkZXIge1xuICB3aWR0aDogMTAwJTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgbWFyZ2luLXRvcDogMXJlbTtcbiAgZmxvYXQ6IGxlZnQ7IH1cbiAgLmRldGFpbGZvbGRlciAuc21hbGwtdGV4dCAqIHtcbiAgICBmb250LXNpemU6IDAuNjI1cmVtOyB9XG4gICAgLmRldGFpbGZvbGRlciAuc21hbGwtdGV4dCAqOmJlZm9yZSB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG4gIC5kZXRhaWxmb2xkZXIgLnNsaWNrLWFycm93IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiAxcmVtO1xuICAgIHotaW5kZXg6IDEwOyB9XG4gICAgLmRldGFpbGZvbGRlciAuc2xpY2stYXJyb3c6YmVmb3JlIHtcbiAgICAgIGZvbnQtc2l6ZTogMnJlbTsgfVxuICAuZGV0YWlsZm9sZGVyIC5zbGljay1wcmV2IHtcbiAgICBsZWZ0OiAtMXJlbTsgfVxuICAuZGV0YWlsZm9sZGVyIC5zbGljay1uZXh0IHtcbiAgICByaWdodDogLTFyZW07IH1cbiAgLmRldGFpbGZvbGRlciAuc2xpY2stc2xpZGUge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBjb2xvcjogIzQxOWJlMDtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBtYXJnaW46IDFweDsgfVxuICAgIC5kZXRhaWxmb2xkZXIgLnNsaWNrLXNsaWRlIGltZyB7XG4gICAgICB3aWR0aDogMTAwJTsgfVxuXG4uY29udGFpbmVyUGFyYSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH1cbiAgLmNvbnRhaW5lclBhcmEgPiBoMywgLmNvbnRhaW5lclBhcmEgPiAuaDMsIC5yc3QgLmNvbnRhaW5lclBhcmEgPiBoMiwgLnJzdCAuY29udGFpbmVyUGFyYSA+IGgxLCAucnN0IC5jb250YWluZXJQYXJhID4gLnRpdGxlLTEsIC5yc3QgLmNvbnRhaW5lclBhcmEgPiAudGl0bGUtMiwgLmNvbnRhaW5lclBhcmEgPiAudGl0bGUtMyB7XG4gICAgYm9yZGVyLWxlZnQ6IDNweCBzb2xpZCAjZGQzMzMzO1xuICAgIHBhZGRpbmctbGVmdDogMC43NXJlbTsgfVxuXG4uZm9sZGVyLWRldGFpbCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9XG4gIC5mb2xkZXItZGV0YWlsLmZfY2l0YXRpb24ge1xuICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG4gICAgbWFyZ2luLXRvcDogMnJlbTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAuZm9sZGVyLWRldGFpbC5mX2NpdGF0aW9uOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgdG9wOiAwO1xuICAgICAgd2lkdGg6IDJweDtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIGJhY2tncm91bmQ6ICNkZDMzMzM7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5mb2xkZXItZGV0YWlsIHtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7IH0gfVxuICAuZm9sZGVyLWRldGFpbC5hbGlnbnJpZ2h0IHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgLmZvbGRlci1kZXRhaWwuYWxpZ25yaWdodCB7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTsgfSB9XG4gIC5mb2xkZXItZGV0YWlsLmFsaWduZnVsbCB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfVxuICAgIC5mb2xkZXItZGV0YWlsLmFsaWduZnVsbCA+IC5jb2x1bW4sIC5mb2xkZXItZGV0YWlsLmFsaWduZnVsbCA+IC5jb2x1bW5zIHtcbiAgICAgIHdpZHRoOiAxMDAlOyB9XG4gIC5mb2xkZXItZGV0YWlsIC50YWcge1xuICAgIG1hcmdpbi10b3A6IDFyZW07IH1cbiAgLmZvbGRlci1kZXRhaWwuaXMtd2l0aC1pbWFnZSB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cbiAgICAuZm9sZGVyLWRldGFpbC5pcy13aXRoLWltYWdlIC5kZXNjcmZvbGQge1xuICAgICAgZmxvYXQ6IGluaXRpYWw7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgbWFyZ2luOiAwIDAuN3JlbTsgfVxuICAgIC5mb2xkZXItZGV0YWlsLmlzLXdpdGgtaW1hZ2UgLnN0b3JlLWFsYnVtIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIG1hcmdpbjogMS43NXJlbTtcbiAgICAgIG1hcmdpbi10b3A6IDA7IH1cbiAgICAgIC5mb2xkZXItZGV0YWlsLmlzLXdpdGgtaW1hZ2UgLnN0b3JlLWFsYnVtIC5zbGljay1zbGlkZSB7XG4gICAgICAgIGJhY2tncm91bmQ6ICNkZmRmZGY7IH1cbiAgICAgIC5mb2xkZXItZGV0YWlsLmlzLXdpdGgtaW1hZ2UgLnN0b3JlLWFsYnVtIGJ1dHRvbjpob3ZlciB7XG4gICAgICAgIGNvbG9yOiAjZGQzMzMzOyB9XG4gICAgICAuZm9sZGVyLWRldGFpbC5pcy13aXRoLWltYWdlIC5zdG9yZS1hbGJ1bSAuZGVzY3JpbWdmb2xkIHtcbiAgICAgICAgcGFkZGluZzogMC41cmVtIDFyZW07IH1cbiAgICAuZm9sZGVyLWRldGFpbC5pcy13aXRoLWltYWdlLmFsaWducmlnaHQgLnN0b3JlLWFsYnVtIHtcbiAgICAgIGZsb2F0OiByaWdodDsgfVxuXG4uc2xpZGVyLWltZy1mb2xkZXJieS0zIHtcbiAgd2lkdGg6IDEwMCU7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5zbGlkZXItaW1nLWZvbGRlcmJ5LTMge1xuICAgICAgd2lkdGg6IDc2dnc7IH0gfVxuICAuc2xpZGVyLWltZy1mb2xkZXJieS0zIC5pdGVtLWltZy1mb2xkZXIge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNXJlbTsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5zbGlkZXItaW1nLWZvbGRlcmJ5LTMgLml0ZW0taW1nLWZvbGRlciB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDIuNXJlbTsgfSB9XG4gICAgLnNsaWRlci1pbWctZm9sZGVyYnktMyAuaXRlbS1pbWctZm9sZGVyIC5zbWFsbC10ZXh0IHtcbiAgICAgIG1pbi1oZWlnaHQ6IDNyZW07IH1cblxuLnN0b3JlLWFsYnVtIC5pdGVtLWltZy1mb2xkZXIgaDYge1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG5cbnNlY3Rpb24uYmxvY2suYmxhY2sgLmljb24tMng6YmVmb3JlIHtcbiAgY29sb3I6ICNmN2Y3Zjc7XG4gIGZvbnQtc2l6ZTogMS44cmVtOyB9XG5cbi5yZWNlbnRlci1zaWRlLXJlc3VtZSB7XG4gIHBhZGRpbmctdG9wOiAycmVtO1xuICBwYWRkaW5nLWJvdHRvbTogMC4yNXJlbTsgfVxuICAucmVjZW50ZXItc2lkZS1yZXN1bWUgLnNsaWRlci1pbWctZm9sZGVyYnktMyB7XG4gICAgbWFyZ2luLXRvcDogMnJlbTsgfVxuICAucmVjZW50ZXItc2lkZS1yZXN1bWUgLnJvdy5sYXJnZXIge1xuICAgIG1heC13aWR0aDogODByZW07IH1cblxuLm5hdnNsaWRlcmJ5MyB7XG4gIG1hcmdpbi10b3A6IDFyZW07XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XG4gIC5uYXZzbGlkZXJieTMgYSB7XG4gICAgcGFkZGluZzogMXJlbTtcbiAgICBvcGFjaXR5OiAwLjU7IH1cbiAgICAubmF2c2xpZGVyYnkzIGE6aG92ZXIge1xuICAgICAgb3BhY2l0eTogMTsgfVxuXG4ubmF2YmFyLXRoZW1hdGljcy1tb3JlIHtcbiAgcG9zaXRpb246IHN0aWNreTtcbiAgdG9wOiAwOyB9XG4gIC5uYXZiYXItdGhlbWF0aWNzLW1vcmUgdWwge1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICBtYXJnaW46IDA7XG4gICAgbWFyZ2luLXRvcDogMS41cmVtO1xuICAgIGJvcmRlci10b3A6IDFweCByZ2JhKDI0NywgMjQ3LCAyNDcsIDAuNSkgc29saWQ7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCByZ2JhKDI0NywgMjQ3LCAyNDcsIDAuNSkgc29saWQ7XG4gICAgZmxleC13cmFwOiB3cmFwOyB9XG4gICAgLm5hdmJhci10aGVtYXRpY3MtbW9yZSB1bCBsaSB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoMjQ3LCAyNDcsIDI0NywgMC41KTtcbiAgICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkIHJnYmEoMjQ3LCAyNDcsIDI0NywgMC41KTtcbiAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLyAzKTsgfVxuICAgIC5uYXZiYXItdGhlbWF0aWNzLW1vcmUgdWwgYSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBiYWNrZ3JvdW5kOiAjMGEwYTBhO1xuICAgICAgcGFkZGluZzogMXJlbSAycmVtO1xuICAgICAgZm9udC1mYW1pbHk6ICd2YXJ0YSc7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxcmVtO1xuICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgIGNvbG9yOiAjMGEwYTBhOyB9XG4gICAgICAubmF2YmFyLXRoZW1hdGljcy1tb3JlIHVsIGE6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiAjZGQzMzMzOyB9XG4gIC5uYXZiYXItdGhlbWF0aWNzLW1vcmUgdWwubGFyZ2UtOCBsaSB7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAvIDIpOyB9XG4gIC5uYXZiYXItdGhlbWF0aWNzLW1vcmUgdWwubGFyZ2UtNCBsaSB7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSk7IH1cblxuI2NoYXB0ZXJzU2xpZGUgLnNsaWNrLXRyYWNrIHtcbiAgZGlzcGxheTogZmxleDsgfVxuXG4jY2hhcHRlcnNTbGlkZSAuY2FyZC1leHBvIGZpZ2NhcHRpb24ge1xuICBmb250LXNpemU6IDAuNzVyZW07IH1cblxuLm5vcG9pbnQge1xuICBwb2ludGVyLWV2ZW50czogbm9uZTsgfVxuXG4jdGhlbUhlYWRlciAucGVybWFsaW5rcyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAxcmVtO1xuICByaWdodDogMXJlbTsgfVxuICAjdGhlbUhlYWRlciAucGVybWFsaW5rcyBhLmNpdGV1cmwge1xuICAgIGNvbG9yOiAjZjdmN2Y3O1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzBhMGEwYTtcbiAgICBib3JkZXItcmFkaXVzOiA2cHg7IH1cblxuLmltZy1hdWQge1xuICBtYXJnaW4tYm90dG9tOiAxcmVtOyB9XG5cbi50cmFja2xpc3Qge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAxcmVtIDA7XG4gIGNvdW50ZXItcmVzZXQ6IG51bTtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgLnRyYWNrbGlzdCBwIHtcbiAgICBjb3VudGVyLWluY3JlbWVudDogbnVtO1xuICAgIGRpc3BsYXk6IGxpc3QtaXRlbTtcbiAgICBmb250LXNpemU6IDAuNzVyZW07XG4gICAgbWFyZ2luOiAwIDAuNXJlbTtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIGJvcmRlci1yYWRpdXM6IDZweDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgICAudHJhY2tsaXN0IHA6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IGNvdW50ZXIobnVtKSBcIikgXCI7IH1cblxuLypcbiAqIEZseWluZyBzbGljayBwbHVnaW4gc3R5bGVzaGVldHNcbiAqL1xuLmZseWluZ3NsaWNrLW92ZXJsYXkge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgaGVpZ2h0OiAxMDB2aDtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgxMCwgMTAsIDEwLCAwLjkpO1xuICB6LWluZGV4OiAzMDAwO1xuICBiYWNrZHJvcC1maWx0ZXI6IGJsdXIoNXB4KTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cbiAgLmZseWluZ3NsaWNrLW92ZXJsYXkgLmZseWluZ3NsaWNrLWNsb3NlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAxcmVtO1xuICAgIHJpZ2h0OiAxcmVtO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAxLjVyZW07XG4gICAgYm9yZGVyOiAwO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB6LWluZGV4OiAzMDA7IH1cbiAgICAuZmx5aW5nc2xpY2stb3ZlcmxheSAuZmx5aW5nc2xpY2stY2xvc2U6OmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiXFxlOTFkXCI7XG4gICAgICBmb250LWZhbWlseTogJ2ljb21vb24nO1xuICAgICAgZm9udC1zaXplOiAyLjVyZW07XG4gICAgICBjb2xvcjogI2Y3ZjdmNztcbiAgICAgIHRyYW5zaXRpb246IDAuMnM7IH1cbiAgICAuZmx5aW5nc2xpY2stb3ZlcmxheSAuZmx5aW5nc2xpY2stY2xvc2U6aG92ZXI6OmFmdGVyIHtcbiAgICAgIGZvbnQtc2l6ZTogM3JlbTsgfVxuXG4uZmx5aW5nc2xpY2stYWxidW0ge1xuICBmbGV4OiAxIDAgMTAwJTtcbiAgbWF4LXdpZHRoOiAxMDAlOyB9XG4gIC5mbHlpbmdzbGljay1hbGJ1bS5zbGljay1zbGlkZXIuc2xpY2staW5pdGlhbGl6ZWQgLnNsaWNrLXByZXYsXG4gIC5mbHlpbmdzbGljay1hbGJ1bS5zbGljay1zbGlkZXIuc2xpY2staW5pdGlhbGl6ZWQgLnNsaWNrLW5leHQge1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBtYXJnaW46IDA7XG4gICAgdG9wOiBjYWxjKDUwJSAtIDJyZW0pO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB6LWluZGV4OiAyMDsgfVxuICAgIC5mbHlpbmdzbGljay1hbGJ1bS5zbGljay1zbGlkZXIuc2xpY2staW5pdGlhbGl6ZWQgLnNsaWNrLXByZXY6YmVmb3JlLFxuICAgIC5mbHlpbmdzbGljay1hbGJ1bS5zbGljay1zbGlkZXIuc2xpY2staW5pdGlhbGl6ZWQgLnNsaWNrLW5leHQ6YmVmb3JlIHtcbiAgICAgIGZvbnQtc2l6ZTogMS44cmVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICBjb2xvcjogI0ZGRjtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgICB0ZXh0LXNoYWRvdzogMHB4IDBweCAxNXB4ICNmZmZmZmY5OTsgfVxuICAuZmx5aW5nc2xpY2stYWxidW0uc2xpY2stc2xpZGVyLnNsaWNrLWluaXRpYWxpemVkIC5zbGljay1wcmV2IHtcbiAgICBsZWZ0OiAycmVtOyB9XG4gICAgLmZseWluZ3NsaWNrLWFsYnVtLnNsaWNrLXNsaWRlci5zbGljay1pbml0aWFsaXplZCAuc2xpY2stcHJldjpiZWZvcmUge1xuICAgICAgY29udGVudDogXCJcXGU5MWNcIjsgfVxuICAuZmx5aW5nc2xpY2stYWxidW0uc2xpY2stc2xpZGVyLnNsaWNrLWluaXRpYWxpemVkIC5zbGljay1uZXh0IHtcbiAgICByaWdodDogMnJlbTsgfVxuICAgIC5mbHlpbmdzbGljay1hbGJ1bS5zbGljay1zbGlkZXIuc2xpY2staW5pdGlhbGl6ZWQgLnNsaWNrLW5leHQ6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IFwiXFxlOTFiXCI7IH1cbiAgLmZseWluZ3NsaWNrLWFsYnVtLnNsaWNrLXNsaWRlci5zbGljay1pbml0aWFsaXplZCAuc2xpY2stbGlzdCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XG4gICAgLmZseWluZ3NsaWNrLWFsYnVtLnNsaWNrLXNsaWRlci5zbGljay1pbml0aWFsaXplZCAuc2xpY2stbGlzdCAuc2xpY2stc2xpZGUge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cbiAgICAgIC5mbHlpbmdzbGljay1hbGJ1bS5zbGljay1zbGlkZXIuc2xpY2staW5pdGlhbGl6ZWQgLnNsaWNrLWxpc3QgLnNsaWNrLXNsaWRlIHNwYW4ge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgIHdpZHRoOiA5OCU7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgb3ZlcmZsb3cteTogc2Nyb2xsO1xuICAgICAgICBtYXgtaGVpZ2h0OiAxMDB2aDsgfVxuICAgICAgICAuZmx5aW5nc2xpY2stYWxidW0uc2xpY2stc2xpZGVyLnNsaWNrLWluaXRpYWxpemVkIC5zbGljay1saXN0IC5zbGljay1zbGlkZSBzcGFuOjpiZWZvcmUge1xuICAgICAgICAgIGNvbnRlbnQ6IGF0dHIoZGF0YS1uYW1lKTtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgcGFkZGluZzogMC43cmVtIDFyZW07XG4gICAgICAgICAgZm9udC1zaXplOiAwLjY1cmVtO1xuICAgICAgICAgIGNvbG9yOiAjZjdmN2Y3O1xuICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDsgfVxuICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgICAgIC5mbHlpbmdzbGljay1hbGJ1bS5zbGljay1zbGlkZXIuc2xpY2staW5pdGlhbGl6ZWQgLnNsaWNrLWxpc3QgLnNsaWNrLXNsaWRlIHNwYW46OmJlZm9yZSB7XG4gICAgICAgICAgICAgIHBhZGRpbmc6IDAuOHJlbSAxLjJyZW07IH0gfVxuICAgICAgICAuZmx5aW5nc2xpY2stYWxidW0uc2xpY2stc2xpZGVyLnNsaWNrLWluaXRpYWxpemVkIC5zbGljay1saXN0IC5zbGljay1zbGlkZSBzcGFuIGltZyB7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgIHRyYW5zaXRpb246IGFsbCA1MDBtcyBlYXNlOyB9XG4gICAgICAuZmx5aW5nc2xpY2stYWxidW0uc2xpY2stc2xpZGVyLnNsaWNrLWluaXRpYWxpemVkIC5zbGljay1saXN0IC5zbGljay1zbGlkZTpub3QoLnNsaWNrLWFjdGl2ZSkgaW1nIHtcbiAgICAgICAgaGVpZ2h0OiBjYWxjKDUwdncvMik7XG4gICAgICAgIG9wYWNpdHk6IDAuNTsgfVxuICAgICAgLmZseWluZ3NsaWNrLWFsYnVtLnNsaWNrLXNsaWRlci5zbGljay1pbml0aWFsaXplZCAuc2xpY2stbGlzdCAuc2xpY2stc2xpZGU6bm90KC5zbGljay1hY3RpdmUpIHNwYW46OmJlZm9yZSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgLmZseWluZ3NsaWNrLWFsYnVtIC5zbGljay1kb3RzIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgYm90dG9tOiAxcmVtOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmZseWluZ3NsaWNrLWFsYnVtIC5zbGljay1kb3RzIHtcbiAgICAgICAgYm90dG9tOiA1dmg7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5mbHlpbmdzbGljay1hbGJ1bSAuc2xpY2stZG90cyB7XG4gICAgICAgIGJvdHRvbTogMTB2aDtcbiAgICAgICAgcGFkZGluZzogMCAxNSU7IH0gfVxuICAgIC5mbHlpbmdzbGljay1hbGJ1bSAuc2xpY2stZG90cyBsaSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBoZWlnaHQ6IDE1cHg7XG4gICAgICB3aWR0aDogMTVweDtcbiAgICAgIG1hcmdpbjogMCAwIDNweDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgLmZseWluZ3NsaWNrLWFsYnVtIC5zbGljay1kb3RzIGxpIHtcbiAgICAgICAgICBtYXJnaW46IDAgMCA1cHg7IH0gfVxuICAgICAgLmZseWluZ3NsaWNrLWFsYnVtIC5zbGljay1kb3RzIGxpICsgbGkge1xuICAgICAgICBtYXJnaW4tbGVmdDogM3B4OyB9XG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgICAuZmx5aW5nc2xpY2stYWxidW0gLnNsaWNrLWRvdHMgbGkgKyBsaSB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogNXB4OyB9IH1cbiAgICAgIC5mbHlpbmdzbGljay1hbGJ1bSAuc2xpY2stZG90cyBsaSBidXR0b24ge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE1cHg7XG4gICAgICAgIGZvbnQtc2l6ZTogMC41cmVtO1xuICAgICAgICBjb2xvcjogIzBhMGEwYTtcbiAgICAgICAgcGFkZGluZzogMHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgIzBhMGEwYTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNXJlbTtcbiAgICAgICAgYmFja2dyb3VuZDogIzBhMGEwYTsgfVxuICAgICAgICAuZmx5aW5nc2xpY2stYWxidW0gLnNsaWNrLWRvdHMgbGkgYnV0dG9uOmJlZm9yZSB7XG4gICAgICAgICAgcG9zaXRpb246IHN0YXRpYztcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgIGZvbnQtc2l6ZTogMDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMDsgfVxuICAgICAgLmZseWluZ3NsaWNrLWFsYnVtIC5zbGljay1kb3RzIGxpLnNsaWNrLWFjdGl2ZSBidXR0b24ge1xuICAgICAgICBjb2xvcjogI2Y3ZjdmNztcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgIzBhMGEwYTtcbiAgICAgICAgYmFja2dyb3VuZDogI2Y3ZjdmNzsgfVxuXG5odG1sLmlzTW9iaWxlIHtcbiAgLyogU21hbGwgc2NyZWVuLCByZXRpbmEsIHN0dWZmIHRvIG92ZXJyaWRlIGFib3ZlIG1lZGlhIHF1ZXJ5ICovIH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAyKSBhbmQgKG1heC13aWR0aDogMTUzNnB4KSwgb25seSBzY3JlZW4gYW5kIChtaW4tLW1vei1kZXZpY2UtcGl4ZWwtcmF0aW86IDIpIGFuZCAobWF4LXdpZHRoOiAxNTM2cHgpLCBvbmx5IHNjcmVlbiBhbmQgKC1vLW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDIgLyAxKSBhbmQgKG1heC13aWR0aDogMTUzNnB4KSwgb25seSBzY3JlZW4gYW5kIChtaW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAyKSBhbmQgKG1heC13aWR0aDogMTUzNnB4KSwgb25seSBzY3JlZW4gYW5kIChtaW4tcmVzb2x1dGlvbjogMTkyZHBpKSBhbmQgKG1heC13aWR0aDogMTUzNnB4KSwgb25seSBzY3JlZW4gYW5kIChtaW4tcmVzb2x1dGlvbjogMmRwcHgpIGFuZCAobWF4LXdpZHRoOiAxNTM2cHgpIHtcbiAgICBodG1sLmlzTW9iaWxlIHtcbiAgICAgIGZvbnQtc2l6ZTogMTYwJTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kICgtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDIpLCAobWluLXJlc29sdXRpb246IDE5MmRwaSkge1xuICAgIGh0bWwuaXNNb2JpbGUgLnNxdWFyZSB7XG4gICAgICBoZWlnaHQ6IDYwcHg7XG4gICAgICB3aWR0aDogNjBweDsgfVxuICAgIGh0bWwuaXNNb2JpbGUgLmZvb3Rlci1saW5rcyB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB3aWR0aDogMTAwJTsgfSB9XG5cbi8qXG4gKiBUeXBvZ3JhcGh5IGFuZCBhbGlrZVxuICovXG5iIHtcbiAgZm9udC13ZWlnaHQ6IDYwMDsgfVxuXG5zdHJvbmcge1xuICBmb250LXdlaWdodDogNzAwOyB9XG5cbi50ZXh0LXVwcGVyIHtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZSAhaW1wb3J0YW50OyB9XG5cbi50ZXh0LWltcG9ydGFudCB7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lICFpbXBvcnRhbnQ7IH1cblxuLnRleHQtdGhpbiB7XG4gIGZvbnQtd2VpZ2h0OiAzMDAgIWltcG9ydGFudDsgfVxuXG4udGV4dC1ib2xkIHtcbiAgZm9udC13ZWlnaHQ6IDQwMCAhaW1wb3J0YW50OyB9XG5cbi50ZXh0LXN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiA3MDAgIWltcG9ydGFudDsgfVxuXG4udGV4dC1zdHJvbmdlc3Qge1xuICBmb250LXdlaWdodDogOTAwICFpbXBvcnRhbnQ7IH1cblxuLnRleHQtcmVkIHtcbiAgY29sb3I6ICNkZDMzMzMgIWltcG9ydGFudDsgfVxuXG4udGV4dC1ibGFjayB7XG4gIGNvbG9yOiAjMGEwYTBhICFpbXBvcnRhbnQ7IH1cblxuLnRleHQtd2hpdGUge1xuICBjb2xvcjogI2Y3ZjdmNyAhaW1wb3J0YW50OyB9XG5cbnNtYWxsLnNtYWxsIHtcbiAgZm9udC1zaXplOiA0MCU7IH1cblxuc21hbGwubWVkaXVtIHtcbiAgZm9udC1zaXplOiA2MCU7IH1cblxuc21hbGwuYmlnIHtcbiAgZm9udC1zaXplOiA4MCU7IH1cblxuaDEsIC50aXRsZS0xIHtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgbGluZS1oZWlnaHQ6IDAuODsgfVxuXG5oMS50ZXh0LXRoaW4sIC50ZXh0LXRoaW4udGl0bGUtMSwgaDIudGV4dC10aGluLCAucnN0IGgxLnRleHQtdGhpbiwgLnJzdCAudGV4dC10aGluLnRpdGxlLTEsIC50ZXh0LXRoaW4udGl0bGUtMiwgaDMudGV4dC10aGluLCAudGV4dC10aGluLmgzLCAucnN0IGgyLnRleHQtdGhpbiwgLnJzdCBoMS50ZXh0LXRoaW4sIC5yc3QgLnRleHQtdGhpbi50aXRsZS0xLCAucnN0IC50ZXh0LXRoaW4udGl0bGUtMiwgLnRleHQtdGhpbi50aXRsZS0zLCBoNC50ZXh0LXRoaW4sIC5yc3QgaDMudGV4dC10aGluLCAucnN0IC50ZXh0LXRoaW4uaDMsIC5yc3QgaDIudGV4dC10aGluLCAucnN0IGgxLnRleHQtdGhpbiwgLnJzdCAudGV4dC10aGluLnRpdGxlLTEsIC5yc3QgLnRleHQtdGhpbi50aXRsZS0yLCAucnN0IC50ZXh0LXRoaW4udGl0bGUtMywgLnRleHQtdGhpbi50aXRsZS00LCBoNS50ZXh0LXRoaW4sIC5yc3QgaDQudGV4dC10aGluLCAucnN0IGgzLnRleHQtdGhpbiwgLnJzdCAudGV4dC10aGluLmgzLCAucnN0IGgyLnRleHQtdGhpbiwgLnJzdCBoMS50ZXh0LXRoaW4sIC5yc3QgLnRleHQtdGhpbi50aXRsZS0xLCAucnN0IC50ZXh0LXRoaW4udGl0bGUtMiwgLnJzdCAudGV4dC10aGluLnRpdGxlLTMsIC5yc3QgLnRleHQtdGhpbi50aXRsZS00LCAudGV4dC10aGluLnRpdGxlLTUsIGg2LnRleHQtdGhpbiB7XG4gIGZvbnQtd2VpZ2h0OiAxMDAgIWltcG9ydGFudDsgfVxuXG5oMS50ZXh0LW5vcm1hbCwgLnRleHQtbm9ybWFsLnRpdGxlLTEsIGgyLnRleHQtbm9ybWFsLCAucnN0IGgxLnRleHQtbm9ybWFsLCAucnN0IC50ZXh0LW5vcm1hbC50aXRsZS0xLCAudGV4dC1ub3JtYWwudGl0bGUtMiwgaDMudGV4dC1ub3JtYWwsIC50ZXh0LW5vcm1hbC5oMywgLnJzdCBoMi50ZXh0LW5vcm1hbCwgLnJzdCBoMS50ZXh0LW5vcm1hbCwgLnJzdCAudGV4dC1ub3JtYWwudGl0bGUtMSwgLnJzdCAudGV4dC1ub3JtYWwudGl0bGUtMiwgLnRleHQtbm9ybWFsLnRpdGxlLTMsIGg0LnRleHQtbm9ybWFsLCAucnN0IGgzLnRleHQtbm9ybWFsLCAucnN0IC50ZXh0LW5vcm1hbC5oMywgLnJzdCBoMi50ZXh0LW5vcm1hbCwgLnJzdCBoMS50ZXh0LW5vcm1hbCwgLnJzdCAudGV4dC1ub3JtYWwudGl0bGUtMSwgLnJzdCAudGV4dC1ub3JtYWwudGl0bGUtMiwgLnJzdCAudGV4dC1ub3JtYWwudGl0bGUtMywgLnRleHQtbm9ybWFsLnRpdGxlLTQsIGg1LnRleHQtbm9ybWFsLCAucnN0IGg0LnRleHQtbm9ybWFsLCAucnN0IGgzLnRleHQtbm9ybWFsLCAucnN0IC50ZXh0LW5vcm1hbC5oMywgLnJzdCBoMi50ZXh0LW5vcm1hbCwgLnJzdCBoMS50ZXh0LW5vcm1hbCwgLnJzdCAudGV4dC1ub3JtYWwudGl0bGUtMSwgLnJzdCAudGV4dC1ub3JtYWwudGl0bGUtMiwgLnJzdCAudGV4dC1ub3JtYWwudGl0bGUtMywgLnJzdCAudGV4dC1ub3JtYWwudGl0bGUtNCwgLnRleHQtbm9ybWFsLnRpdGxlLTUsIGg2LnRleHQtbm9ybWFsIHtcbiAgZm9udC13ZWlnaHQ6IDQwMCAhaW1wb3J0YW50OyB9XG5cbmgxLnRleHQtc3Ryb25nLCAudGV4dC1zdHJvbmcudGl0bGUtMSwgaDIudGV4dC1zdHJvbmcsIC5yc3QgaDEudGV4dC1zdHJvbmcsIC5yc3QgLnRleHQtc3Ryb25nLnRpdGxlLTEsIC50ZXh0LXN0cm9uZy50aXRsZS0yLCBoMy50ZXh0LXN0cm9uZywgLnRleHQtc3Ryb25nLmgzLCAucnN0IGgyLnRleHQtc3Ryb25nLCAucnN0IGgxLnRleHQtc3Ryb25nLCAucnN0IC50ZXh0LXN0cm9uZy50aXRsZS0xLCAucnN0IC50ZXh0LXN0cm9uZy50aXRsZS0yLCAudGV4dC1zdHJvbmcudGl0bGUtMywgaDQudGV4dC1zdHJvbmcsIC5yc3QgaDMudGV4dC1zdHJvbmcsIC5yc3QgLnRleHQtc3Ryb25nLmgzLCAucnN0IGgyLnRleHQtc3Ryb25nLCAucnN0IGgxLnRleHQtc3Ryb25nLCAucnN0IC50ZXh0LXN0cm9uZy50aXRsZS0xLCAucnN0IC50ZXh0LXN0cm9uZy50aXRsZS0yLCAucnN0IC50ZXh0LXN0cm9uZy50aXRsZS0zLCAudGV4dC1zdHJvbmcudGl0bGUtNCwgaDUudGV4dC1zdHJvbmcsIC5yc3QgaDQudGV4dC1zdHJvbmcsIC5yc3QgaDMudGV4dC1zdHJvbmcsIC5yc3QgLnRleHQtc3Ryb25nLmgzLCAucnN0IGgyLnRleHQtc3Ryb25nLCAucnN0IGgxLnRleHQtc3Ryb25nLCAucnN0IC50ZXh0LXN0cm9uZy50aXRsZS0xLCAucnN0IC50ZXh0LXN0cm9uZy50aXRsZS0yLCAucnN0IC50ZXh0LXN0cm9uZy50aXRsZS0zLCAucnN0IC50ZXh0LXN0cm9uZy50aXRsZS00LCAudGV4dC1zdHJvbmcudGl0bGUtNSwgaDYudGV4dC1zdHJvbmcge1xuICBmb250LXdlaWdodDogNjAwICFpbXBvcnRhbnQ7IH1cblxuLmgzIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmctYm90dG9tOiAycmVtO1xuICBwYWRkaW5nLXRvcDogMnJlbTsgfVxuXG5oNiB7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7IH1cblxuLmJpZzpub3Qoc21hbGwpIHtcbiAgZm9udC1zaXplOiAxLjRyZW07XG4gIGZvbnQtd2VpZ2h0OiA2MDA7IH1cblxuLypibG9ja3F1b3RlIHtcbiAgICBib3JkZXItbGVmdDogMDtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBzdmcge1xuICAgICAgICAjYmxhY2sge1xuICAgICAgICAgICAgZmlsbDogI0ZGRkZGRjtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNGRkY7XG4gICAgICAgIH1cbiAgICB9XG59Ki9cbmhyIHtcbiAgYm9yZGVyLXdpZHRoOiAwcHg7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIGJvcmRlci10b3A6IDA7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKDEwLCAxMCwgMTAsIDAuNSk7IH1cblxuZm9vdGVyIGhyIHtcbiAgYm9yZGVyLWNvbG9yOiAjRkZGOyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICBmb290ZXIgLmJ0bi1ncm91cCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9IH1cblxuLmhsaW5lIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogMnB4O1xuICBib3JkZXI6IDA7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBwYWRkaW5nOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDEwLCAxMCwgMTAsIDAuMik7XG4gIHdpZHRoOiAzMCU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTsgfVxuXG4uYmFja2dyb3VuZC1ibGFjayB7XG4gIGJhY2tncm91bmQtY29sb3I6IGJsYWNrOyB9XG5cbi5iYWNrZ3JvdW5kLXdoaXRlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y3ZjdmNzsgfVxuXG4ucm91bmRlZCB7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTsgfVxuXG4uc3F1YXJlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBoZWlnaHQ6IDMycHg7XG4gIHdpZHRoOiAzMnB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLnNxdWFyZSAuaWNvbiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTAlO1xuICAgIGxlZnQ6IDUwJTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpOyB9XG5cbi5tZW51LnNvY2lhbCBsaSB7XG4gIHBhZGRpbmctcmlnaHQ6IDAuNXJlbTsgfVxuICAubWVudS5zb2NpYWwgbGkgYSB7XG4gICAgY29sb3I6ICNmN2Y3Zjc7IH1cblxuLnVuZGVybGluZTphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogNTAlO1xuICBoZWlnaHQ6IDAuMTg3NXJlbTtcbiAgbWFyZ2luOiAxcmVtIDA7XG4gIGJvcmRlci1ib3R0b206IDAuMTg3NXJlbSBzb2xpZCAjMGEwYTBhOyB9XG5cbi51bmRlcmxpbmUudGV4dC1jZW50ZXI6YWZ0ZXIge1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XG5cbi51bmRlcmxpbmUudGhpbjphZnRlciB7XG4gIGhlaWdodDogMC4wNjI1cmVtO1xuICBib3JkZXItYm90dG9tOiAwLjA2MjVyZW0gc29saWQgIzBhMGEwYTsgfVxuXG4udW5kZXJsaW5lLmJvbGQ6YWZ0ZXIge1xuICBoZWlnaHQ6IDAuMzEyNXJlbTtcbiAgYm9yZGVyLWJvdHRvbTogMC4zMTI1cmVtIHNvbGlkICMwYTBhMGE7IH1cblxuLnVuZGVybGluZS50aW55OmFmdGVyIHtcbiAgd2lkdGg6IDUlOyB9XG5cbi51bmRlcmxpbmUuc2hvcnQ6YWZ0ZXIge1xuICB3aWR0aDogMTUlOyB9XG5cbi51bmRlcmxpbmUubm9ybWFsOmFmdGVyIHtcbiAgd2lkdGg6IDQwJTsgfVxuXG4udW5kZXJsaW5lLmxhcmdlOmFmdGVyIHtcbiAgd2lkdGg6IDcwJTsgfVxuXG4udW5kZXJsaW5lLmZ1bGw6YWZ0ZXIge1xuICB3aWR0aDogMTAwJTsgfVxuXG4udW5kZXJsaW5lLmZhcjphZnRlciB7XG4gIG1hcmdpbjogMnJlbSAwOyB9XG5cbi51bmRlcmxpbmUuZmFyLnRleHQtY2VudGVyOmFmdGVyIHtcbiAgbWFyZ2luOiAycmVtIGF1dG87IH1cblxuLnVuZGVybGluZS5uZWFyOmFmdGVyIHtcbiAgbWFyZ2luOiAwLjVyZW0gMDsgfVxuXG4udW5kZXJsaW5lLm5lYXIudGV4dC1jZW50ZXI6YWZ0ZXIge1xuICBtYXJnaW46IDAuNXJlbSBhdXRvOyB9XG5cbi51bmRlcmxpbmUuc3RpY2tlZDphZnRlciB7XG4gIG1hcmdpbjogMCAwOyB9XG5cbi51bmRlcmxpbmUuc3RpY2tlZC50ZXh0LWNlbnRlcjphZnRlciB7XG4gIG1hcmdpbjogMCBhdXRvOyB9XG5cbi8qXG4gKiBWYXJpb3VzIG1pbm9yIHJ1bGVzXG4gKi9cbltkYXRhLWxpbmtdOmhvdmVyIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBjb2xvcjogI2RkMzMzMzsgfVxuXG4udG90YWwge1xuICB3aWR0aDogMTAwJTsgfVxuXG4uZ3V0dGVyLCAqLmd1dHRlciB7XG4gIG1hcmdpbjogMXJlbTsgfVxuXG4uZnVsbC5ndXR0ZXIge1xuICB3aWR0aDogLW1vei1jYWxjKDEwMCUgLSAycmVtKTtcbiAgd2lkdGg6IC13ZWJraXQtY2FsYygxMDAlIC0gMnJlbSk7XG4gIHdpZHRoOiBjYWxjKDEwMCUgLSAycmVtKTsgfVxuXG5AbWVkaWEgcHJpbnQge1xuICBmb290ZXIsIC5oZWFkZXIsXG4gICNjb250cm9sc19saWtlLCAubWVudS5zb2NpYWwsXG4gIGFbdGl0bGU9XCJDb21wYXRpYmxlIFpvdGVyb1wiXSxcbiAgLmNtcy10b29sYmFyLCAuY21zLXRvb2xiYXItdHJpZ2dlciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47IH0gfVxuIiwiLyoqXG4gKiBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4gKiBWZXJzaW9uIDYuMi4xXG4gKiBmb3VuZGF0aW9uLnp1cmIuY29tXG4gKiBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcbiAqL1xuXG4vLyBTYXNzIHV0aWxpdGllc1xuQGltcG9ydCAndXRpbC91dGlsJztcblxuLy8gR2xvYmFsIHZhcmlhYmxlcyBhbmQgc3R5bGVzXG5AaW1wb3J0ICdnbG9iYWwnO1xuXG4vLyBDb21wb25lbnRzXG5AaW1wb3J0ICdncmlkL2dyaWQnO1xuQGltcG9ydCAndHlwb2dyYXBoeS90eXBvZ3JhcGh5JztcbkBpbXBvcnQgJ2Zvcm1zL2Zvcm1zJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvdmlzaWJpbGl0eSc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2Zsb2F0JztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvYnV0dG9uJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvYnV0dG9uLWdyb3VwJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvYWNjb3JkaW9uLW1lbnUnO1xuQGltcG9ydCAnY29tcG9uZW50cy9hY2NvcmRpb24nO1xuQGltcG9ydCAnY29tcG9uZW50cy9iYWRnZSc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2JyZWFkY3J1bWJzJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvY2FsbG91dCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2Nsb3NlLWJ1dHRvbic7XG5AaW1wb3J0ICdjb21wb25lbnRzL2RyaWxsZG93bic7XG5AaW1wb3J0ICdjb21wb25lbnRzL2Ryb3Bkb3duLW1lbnUnO1xuQGltcG9ydCAnY29tcG9uZW50cy9kcm9wZG93bic7XG5AaW1wb3J0ICdjb21wb25lbnRzL2ZsZXgnO1xuQGltcG9ydCAnY29tcG9uZW50cy9mbGV4LXZpZGVvJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvbGFiZWwnO1xuQGltcG9ydCAnY29tcG9uZW50cy9tZWRpYS1vYmplY3QnO1xuQGltcG9ydCAnY29tcG9uZW50cy9tZW51JztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvbWVudS1pY29uJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvb2ZmLWNhbnZhcyc7XG5AaW1wb3J0ICdjb21wb25lbnRzL29yYml0JztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvcGFnaW5hdGlvbic7XG5AaW1wb3J0ICdjb21wb25lbnRzL3Byb2dyZXNzLWJhcic7XG5AaW1wb3J0ICdjb21wb25lbnRzL3JldmVhbCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3NsaWRlcic7XG5AaW1wb3J0ICdjb21wb25lbnRzL3N0aWNreSc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3N3aXRjaCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3RhYmxlJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvdGFicyc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3RpdGxlLWJhcic7XG5AaW1wb3J0ICdjb21wb25lbnRzL3RvcC1iYXInO1xuQGltcG9ydCAnY29tcG9uZW50cy90aHVtYm5haWwnO1xuQGltcG9ydCAnY29tcG9uZW50cy90b29sdGlwJztcblxuQG1peGluIGZvdW5kYXRpb24tZXZlcnl0aGluZygkZmxleDogZmFsc2UpIHtcbiAgQGlmICRmbGV4IHtcbiAgICAkZ2xvYmFsLWZsZXhib3g6IHRydWUgIWdsb2JhbDtcbiAgfVxuXG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tZ2xvYmFsLXN0eWxlcztcbiAgQGlmIG5vdCAkZmxleCB7XG4gICAgQGluY2x1ZGUgZm91bmRhdGlvbi1ncmlkO1xuICB9XG4gIEBlbHNlIHtcbiAgICBAaW5jbHVkZSBmb3VuZGF0aW9uLWZsZXgtZ3JpZDtcbiAgfVxuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXR5cG9ncmFwaHk7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tZm9ybXM7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tYnV0dG9uO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWFjY29yZGlvbjtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1hY2NvcmRpb24tbWVudTtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1iYWRnZTtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1icmVhZGNydW1icztcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1idXR0b24tZ3JvdXA7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tY2FsbG91dDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1jbG9zZS1idXR0b247XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tbWVudTtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1tZW51LWljb247XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tZHJpbGxkb3duLW1lbnU7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tZHJvcGRvd247XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tZHJvcGRvd24tbWVudTtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1mbGV4LXZpZGVvO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWxhYmVsO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLW1lZGlhLW9iamVjdDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1vZmYtY2FudmFzO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLW9yYml0O1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXBhZ2luYXRpb247XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tcHJvZ3Jlc3MtYmFyO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXNsaWRlcjtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1zdGlja3k7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tcmV2ZWFsO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXN3aXRjaDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi10YWJsZTtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi10YWJzO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXRodW1ibmFpbDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi10aXRsZS1iYXI7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tdG9vbHRpcDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi10b3AtYmFyO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXZpc2liaWxpdHktY2xhc3NlcztcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1mbG9hdC1jbGFzc2VzO1xuXG4gIEBpZiAkZmxleCB7XG4gICAgQGluY2x1ZGUgZm91bmRhdGlvbi1mbGV4LWNsYXNzZXM7XG4gIH1cbn1cbiIsIkBpbXBvcnQgdXJsKGh0dHA6Ly93ZWxvdmVpY29uZm9udHMuY29tL2FwaS8/ZmFtaWx5PWVudHlwbyk7XG5cbi8qIGVudHlwbyAqL1xuW2NsYXNzKj1cImVudHlwby1cIl06YmVmb3JlIHtcbiAgZm9udC1mYW1pbHk6ICdlbnR5cG8nLCBzYW5zLXNlcmlmO1xufSIsIi8vIHNjc3MtbGludDpkaXNhYmxlIEltcG9ydGFudFJ1bGUsIFNwYWNlQWZ0ZXJDb21tYSwgU2luZ2xlTGluZVBlclByb3BlcnR5XG5cbiVtdWktZGVmYXVsdHMge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiBtYXAtZ2V0KCRtb3Rpb24tdWktc3BlZWRzLCBkZWZhdWx0KTtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IG1hcC1nZXQoJG1vdGlvbi11aS1lYXNpbmdzLCBkZWZhdWx0KTtcbn1cblxuLy8gVHJhbnNpdGlvbnNcbi8vIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtXG5AbWl4aW4gbW90aW9uLXVpLXRyYW5zaXRpb25zIHtcbiAgLy8gU2xpZGVcbiAgLnNsaWRlLWluLWRvd24gICAgeyBAaW5jbHVkZSBtdWktc2xpZGUoaW4sICBkb3duKTsgfVxuICAuc2xpZGUtaW4tbGVmdCAgICB7IEBpbmNsdWRlIG11aS1zbGlkZShpbiwgIHJpZ2h0KTsgfVxuICAuc2xpZGUtaW4tdXAgICAgICB7IEBpbmNsdWRlIG11aS1zbGlkZShpbiwgIGJvdHRvbSk7IH1cbiAgLnNsaWRlLWluLXJpZ2h0ICAgeyBAaW5jbHVkZSBtdWktc2xpZGUoaW4sICBsZWZ0KTsgfVxuICAuc2xpZGUtb3V0LWRvd24gICB7IEBpbmNsdWRlIG11aS1zbGlkZShvdXQsIGRvd24pOyB9XG4gIC5zbGlkZS1vdXQtcmlnaHQgIHsgQGluY2x1ZGUgbXVpLXNsaWRlKG91dCwgcmlnaHQpOyB9XG4gIC5zbGlkZS1vdXQtdXAgICAgIHsgQGluY2x1ZGUgbXVpLXNsaWRlKG91dCwgdG9wKTsgfVxuICAuc2xpZGUtb3V0LWxlZnQgICB7IEBpbmNsdWRlIG11aS1zbGlkZShvdXQsIGxlZnQpOyB9XG5cbiAgLy8gRmFkZVxuICAuZmFkZS1pbiAgeyBAaW5jbHVkZSBtdWktZmFkZShpbiwgIDAsIDEpOyB9XG4gIC5mYWRlLW91dCB7IEBpbmNsdWRlIG11aS1mYWRlKG91dCwgMSwgMCk7IH1cblxuICAvLyBIaW5nZVxuICAuaGluZ2UtaW4tZnJvbS10b3AgICAgICB7IEBpbmNsdWRlIG11aS1oaW5nZShpbiwgIHRvcCk7IH1cbiAgLmhpbmdlLWluLWZyb20tcmlnaHQgICAgeyBAaW5jbHVkZSBtdWktaGluZ2UoaW4sICByaWdodCk7IH1cbiAgLmhpbmdlLWluLWZyb20tYm90dG9tICAgeyBAaW5jbHVkZSBtdWktaGluZ2UoaW4sICBib3R0b20pOyB9XG4gIC5oaW5nZS1pbi1mcm9tLWxlZnQgICAgIHsgQGluY2x1ZGUgbXVpLWhpbmdlKGluLCAgbGVmdCk7IH1cbiAgLmhpbmdlLWluLWZyb20tbWlkZGxlLXggIHsgQGluY2x1ZGUgbXVpLWhpbmdlKGluLCAgdG9wLCAgIGNlbnRlcik7IH1cbiAgLmhpbmdlLWluLWZyb20tbWlkZGxlLXkgIHsgQGluY2x1ZGUgbXVpLWhpbmdlKGluLCAgcmlnaHQsIGNlbnRlcik7IH1cbiAgLmhpbmdlLW91dC1mcm9tLXRvcCAgICAgeyBAaW5jbHVkZSBtdWktaGluZ2Uob3V0LCB0b3ApOyB9XG4gIC5oaW5nZS1vdXQtZnJvbS1yaWdodCAgIHsgQGluY2x1ZGUgbXVpLWhpbmdlKG91dCwgcmlnaHQpOyB9XG4gIC5oaW5nZS1vdXQtZnJvbS1ib3R0b20gIHsgQGluY2x1ZGUgbXVpLWhpbmdlKG91dCwgYm90dG9tKTsgfVxuICAuaGluZ2Utb3V0LWZyb20tbGVmdCAgICB7IEBpbmNsdWRlIG11aS1oaW5nZShvdXQsIGxlZnQpOyB9XG4gIC5oaW5nZS1vdXQtZnJvbS1taWRkbGUteCB7IEBpbmNsdWRlIG11aS1oaW5nZShvdXQsIHRvcCwgICBjZW50ZXIpOyB9XG4gIC5oaW5nZS1vdXQtZnJvbS1taWRkbGUteSB7IEBpbmNsdWRlIG11aS1oaW5nZShvdXQsIHJpZ2h0LCBjZW50ZXIpOyB9XG5cbiAgLy8gU2NhbGVcbiAgLnNjYWxlLWluLXVwICAgIHsgQGluY2x1ZGUgbXVpLXpvb20oaW4sICAwLjUsIDEpOyB9XG4gIC5zY2FsZS1pbi1kb3duICB7IEBpbmNsdWRlIG11aS16b29tKGluLCAgMS41LCAxKTsgfVxuICAuc2NhbGUtb3V0LXVwICAgeyBAaW5jbHVkZSBtdWktem9vbShvdXQsIDEsIDEuNSk7IH1cbiAgLnNjYWxlLW91dC1kb3duIHsgQGluY2x1ZGUgbXVpLXpvb20ob3V0LCAxLCAwLjUpOyB9XG5cbiAgLy8gU3BpblxuICAuc3Bpbi1pbiAgICAgeyBAaW5jbHVkZSBtdWktc3BpbihpbiwgIGN3KTsgfVxuICAuc3Bpbi1vdXQgICAgeyBAaW5jbHVkZSBtdWktc3BpbihvdXQsIGN3KTsgfVxuICAuc3Bpbi1pbi1jY3cgIHsgQGluY2x1ZGUgbXVpLXNwaW4oaW4sICBjY3cpOyB9XG4gIC5zcGluLW91dC1jY3cgeyBAaW5jbHVkZSBtdWktc3BpbihvdXQsIGNjdyk7IH1cblxuICAvLyBUcmFuc2l0aW9uIE1vZGlmaWVyc1xuICAvLyAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLVxuXG4gIEBlYWNoICRuYW1lLCAkdmFsdWUgaW4gJG1vdGlvbi11aS1zcGVlZHMge1xuICAgIEBpZiAkbmFtZSAhPSBkZWZhdWx0IHtcbiAgICAgIC4jeyRuYW1lfSB7IHRyYW5zaXRpb24tZHVyYXRpb246ICR2YWx1ZSAhaW1wb3J0YW50OyB9XG4gICAgfVxuICB9XG5cbiAgQGVhY2ggJG5hbWUsICR2YWx1ZSBpbiAkbW90aW9uLXVpLWVhc2luZ3Mge1xuICAgIEBpZiAkbmFtZSAhPSBkZWZhdWx0IHtcbiAgICAgIC4jeyRuYW1lfSB7IHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiAkdmFsdWUgIWltcG9ydGFudDsgfVxuICAgIH1cbiAgfVxuXG4gIEBlYWNoICRuYW1lLCAkdmFsdWUgaW4gJG1vdGlvbi11aS1kZWxheXMge1xuICAgIEBpZiAkbmFtZSAhPSBkZWZhdWx0IHtcbiAgICAgIC4jeyRuYW1lfS1kZWxheSB7IHRyYW5zaXRpb24tZGVsYXk6ICR2YWx1ZSAhaW1wb3J0YW50OyB9XG4gICAgfVxuICB9XG59XG5cbi8vIEFuaW1hdGlvbnNcbi8vIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtXG5AbWl4aW4gbW90aW9uLXVpLWFuaW1hdGlvbnMge1xuICAuc2hha2UgICAgeyBAaW5jbHVkZSBtdWktYW5pbWF0aW9uKHNoYWtlKTsgfVxuICAuc3Bpbi1jdyAgeyBAaW5jbHVkZSBtdWktYW5pbWF0aW9uKHNwaW4pOyB9XG4gIC5zcGluLWNjdyB7IEBpbmNsdWRlIG11aS1hbmltYXRpb24oc3BpbihjY3cpKTsgfVxuICAud2lnZ2xlICAgeyBAaW5jbHVkZSBtdWktYW5pbWF0aW9uKHdpZ2dsZSk7IH1cblxuICAvLyBBbmltYXRpb24gTW9kaWZpZXJzXG4gIC8vIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtXG4gIC5pbmZpbml0ZSB7IGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IGluZmluaXRlOyB9XG5cbiAgQGVhY2ggJG5hbWUsICR2YWx1ZSBpbiAkbW90aW9uLXVpLXNwZWVkcyB7XG4gICAgQGlmICRuYW1lICE9IGRlZmF1bHQge1xuICAgICAgLiN7JG5hbWV9IHsgYW5pbWF0aW9uLWR1cmF0aW9uOiAkdmFsdWUgIWltcG9ydGFudDsgfVxuICAgIH1cbiAgfVxuXG4gIEBlYWNoICRuYW1lLCAkdmFsdWUgaW4gJG1vdGlvbi11aS1lYXNpbmdzIHtcbiAgICBAaWYgJG5hbWUgIT0gZGVmYXVsdCB7XG4gICAgICAuI3skbmFtZX0geyBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiAkdmFsdWUgIWltcG9ydGFudDsgfVxuICAgIH1cbiAgfVxuXG4gIEBlYWNoICRuYW1lLCAkdmFsdWUgaW4gJG1vdGlvbi11aS1kZWxheXMge1xuICAgIEBpZiAkbmFtZSAhPSBkZWZhdWx0IHtcbiAgICAgIC4jeyRuYW1lfS1kZWxheSB7IGFuaW1hdGlvbi1kZWxheTogJHZhbHVlICFpbXBvcnRhbnQ7IH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vLyBGb3JtYXQgZm9yIENTUyBjbGFzc2VzIGNyZWF0ZWQgd2l0aCBNb3Rpb24gVUkuXG4vLy8gQHR5cGUgTWFwXG4vLy8gQHByb3Age0Jvb2xlYW59IGFwcGVuZCBbdHJ1ZV0gLSBEZWZpbmVzIGlmIHNlbGVjdG9ycyBhcmUgY2hhaW5lZCB0byB0aGUgc2VsZWN0b3IgKGAuY2xhc3MuZW50ZXJgKSwgb3IgYXBwZW5kZWQgYXMgYSBuZXcgY2xhc3MgKGAuY2xhc3MtZW50ZXJgKS5cbi8vLyBAcHJvcCB7U3RyaW5nfSBwcmVmaXggWydtdWktJ10gLSBQcmVmaXggdG8gYWRkIGJlZm9yZSB0aGUgc3RhdGUgb2YgYSBjbGFzcy4gRW50ZXIgYW4gZW1wdHkgc3RyaW5nIHRvIHVzZSBubyBwcmVmaXguXG4vLy8gQHByb3Age1N0cmluZ30gcHJlZml4IFsnLWFjdGl2ZSddIC0gU3VmZml4IHRvIGFkZCB0byB0aGUgYWN0aXZlIHN0YXRlIGNsYXNzLlxuJG1vdGlvbi11aS1jbGFzc2VzOiAoXG4gIGNoYWluOiB0cnVlLFxuICBwcmVmaXg6ICdtdWktJyxcbiAgYWN0aXZlOiAnLWFjdGl2ZScsXG4pICFkZWZhdWx0O1xuXG4vLy8gU3RhdGUgbmFtZXMgdG8gcmVmZXJlbmNlIHdoZW4gd3JpdGluZyBtb3Rpb24gY2xhc3Nlcy4gVG8gdXNlIG11bHRpcGxlIGNsYXNzIG5hbWVzIGZvciBvbmUgc3RhdGUsIGVudGVyIGEgbGlzdCBvZiBzdHJpbmdzIGluc3RlYWQgb2Ygb25lIHN0cmluZy5cbi8vLyBAdHlwZSBNYXBcbiRtb3Rpb24tdWktc3RhdGVzOiAoXG4gIGluOiAnZW50ZXInLFxuICBvdXQ6ICdsZWF2ZScsXG4pICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBzcGVlZCB0aGF0IHRyYW5zaXRpb25zIGFuZCBhbmltYXRpb25zIHBsYXkgYXQsIGFsb25nIHdpdGggdmFsdWVzIGZvciBtb2RpZmllciBjbGFzc2VzIHRvIGNoYW5nZSB0aGUgc3BlZWQuXG4vLy8gQHR5cGUgTWFwXG4kbW90aW9uLXVpLXNwZWVkczogKFxuICBkZWZhdWx0OiA1MDBtcyxcbiAgc2xvdzogNzUwbXMsXG4gIGZhc3Q6IDI1MG1zLFxuKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZGVsYXkgdG8gYWRkIGJlZm9yZSBtb3Rpb24sIGFsb25nIHdpdGggdmFsdWVzIGZvciBtb2RpZmllciBjbGFzc2VzIHRvIGNoYW5nZSB0aGUgZGVsYXkuXG4vLy8gQHR5cGUgTWFwXG4kbW90aW9uLXVpLWRlbGF5czogKFxuICBkZWZhdWx0OiAwLFxuICBzaG9ydDogMzAwbXMsXG4gIGxvbmc6IDcwMG1zLFxuKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZWFzaW5nIGZvciB0cmFuc2l0aW9ucyBhbmQgYW5pbWF0aW9ucywgYWxvbmcgd2l0aCB2YWx1ZXMgZm9yIG1vZGlmaWVyIGNsYXNzZXMgdG8gY2hhbmdlIHRoZSBlYXNpbmcuXG4vLy8gQHR5cGUgTWFwXG4kbW90aW9uLXVpLWVhc2luZ3M6IChcbiAgZGVmYXVsdDogbGluZWFyLFxuICBsaW5lYXI6IGxpbmVhcixcbiAgZWFzZTogZWFzZSxcbiAgZWFzZS1pbjogZWFzZS1pbixcbiAgZWFzZS1vdXQ6IGVhc2Utb3V0LFxuICBlYXNlLWluLW91dDogZWFzZS1pbi1vdXQsXG4gIGJvdW5jZS1pbjogY3ViaWMtYmV6aWVyKDAuNDg1LCAwLjE1NSwgMC4yNCwgMS4yNDUpLFxuICBib3VuY2Utb3V0OiBjdWJpYy1iZXppZXIoMC40ODUsIDAuMTU1LCAwLjUxNSwgMC44NDUpLFxuICBib3VuY2UtaW4tb3V0OiBjdWJpYy1iZXppZXIoMC43NiwgLTAuMjQ1LCAwLjI0LCAxLjI0NSksXG4pICFkZWZhdWx0O1xuXG4vLy8gTWlzY2VsbGFuZW91cyBzZXR0aW5ncyByZWxhdGVkIHRvIE1vdGlvbiBVSS5cbi8vLyBAdHlwZSBNYXBcbi8vLyBAcHJvcCB7Qm9vbGVhbn0gc2xpZGUtYW5kLWZhZGUgW2ZhbHNlXSAtIERlZmluZXMgaWYgc2xpZGUgbW90aW9ucyBzaG91bGQgYWxzbyBmYWRlIGluL291dC5cbi8vLyBAcHJvcCB7Qm9vbGVhbn0gc2xpZGUtYW5kLWZhZGUgW3RydWVdIC0gRGVmaW5lcyBpZiBoaW5nZSBtb3Rpb25zIHNob3VsZCBhbHNvIGZhZGUgaW4vb3V0LlxuLy8vIEBwcm9wIHtCb29sZWFufSBzbGlkZS1hbmQtZmFkZSBbdHJ1ZV0gLSBEZWZpbmVzIGlmIHNjYWxlIG1vdGlvbnMgc2hvdWxkIGFsc28gZmFkZSBpbi9vdXQuXG4vLy8gQHByb3Age0Jvb2xlYW59IHNsaWRlLWFuZC1mYWRlIFt0cnVlXSAtIERlZmluZXMgaWYgc3BpbiBtb3Rpb25zIHNob3VsZCBhbHNvIGZhZGUgaW4vb3V0LlxuJG1vdGlvbi11aS1zZXR0aW5nczogKFxuICBzbGlkZS1hbmQtZmFkZTogZmFsc2UsXG4gIGhpbmdlLWFuZC1mYWRlOiB0cnVlLFxuICBzY2FsZS1hbmQtZmFkZTogdHJ1ZSxcbiAgc3Bpbi1hbmQtZmFkZTogdHJ1ZSxcbiAgYWN0aXZhdGUtcXVldWUtY2xhc3M6ICdpcy1hbmltYXRpbmcnLFxuKSAhZGVmYXVsdDtcbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLyBzY3NzLWxpbnQ6ZGlzYWJsZSBDb2xvclZhcmlhYmxlLCBRdWFsaWZ5aW5nRWxlbWVudCwgVmVuZG9yUHJlZml4XG5cbi8vLy9cbi8vLyBAZ3JvdXAgZ2xvYmFsXG4vLy8vXG5cbi8vLyBGb250IHNpemUgYXR0cmlidXRlIGFwcGxpZWQgdG8gYDxodG1sPmAgYW5kIGA8Ym9keT5gLiBXZSB1c2UgMTAwJSBieSBkZWZhdWx0IHNvIHRoZSB2YWx1ZSBpcyBpbmhlcml0ZWQgZnJvbSB0aGUgdXNlcidzIGJyb3dzZXIgc2V0dGluZ3MuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLWZvbnQtc2l6ZTogMTAwJSAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCB3aWR0aCBvZiB5b3VyIHNpdGUuIFVzZWQgYnkgdGhlIGdyaWQgdG8gZGV0ZXJtaW5lIHJvdyB3aWR0aC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtd2lkdGg6IHJlbS1jYWxjKDEyMDApICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBsaW5lIGhlaWdodCBmb3IgYWxsIHR5cGUuIGAkZ2xvYmFsLWxpbmVoZWlnaHRgIGlzIDI0cHggd2hpbGUgYCRnbG9iYWwtZm9udC1zaXplYCBpcyAxNnB4XG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLWxpbmVoZWlnaHQ6IDEuNSAhZGVmYXVsdDtcblxuLy8vIENvbG9ycyB1c2VkIGZvciBidXR0b25zLCBjYWxsb3V0cywgbGlua3MsIGV0Yy4gVGhlcmUgbXVzdCBhbHdheXMgYmUgYSBjb2xvciBjYWxsZWQgYHByaW1hcnlgLlxuLy8vIEB0eXBlIE1hcFxuJGZvdW5kYXRpb24tcGFsZXR0ZTogKFxuICBwcmltYXJ5OiAjMjE5OWU4LFxuICBzZWNvbmRhcnk6ICM3NzcsXG4gIHN1Y2Nlc3M6ICMzYWRiNzYsXG4gIHdhcm5pbmc6ICNmZmFlMDAsXG4gIGFsZXJ0OiAjZWM1ODQwLFxuKSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIHVzZWQgZm9yIGxpZ2h0IGdyYXkgVUkgaXRlbXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRsaWdodC1ncmF5OiAjZTZlNmU2ICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdXNlZCBmb3IgbWVkaXVtIGdyYXkgVUkgaXRlbXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRtZWRpdW0tZ3JheTogI2NhY2FjYSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIHVzZWQgZm9yIGRhcmsgZ3JheSBVSSBpdGVtcy5cbi8vLyBAdHlwZSBDb2xvclxuJGRhcmstZ3JheTogIzhhOGE4YSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIHVzZWQgZm9yIGJsYWNrIHVpIGl0ZW1zLlxuLy8vIEB0eXBlIENvbG9yXG4kYmxhY2s6ICMwYTBhMGEgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciB1c2VkIGZvciB3aGl0ZSB1aSBpdGVtcy5cbi8vLyBAdHlwZSBDb2xvclxuJHdoaXRlOiAjZmVmZWZlICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiB0aGUgYm9keS5cbi8vLyBAdHlwZSBDb2xvclxuJGJvZHktYmFja2dyb3VuZDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gVGV4dCBjb2xvciBvZiB0aGUgYm9keS5cbi8vLyBAdHlwZSBDb2xvclxuJGJvZHktZm9udC1jb2xvcjogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gRm9udCBzdGFjayBvZiB0aGUgYm9keS5cbi8vLyBAdHlwZSBMaXN0XG4kYm9keS1mb250LWZhbWlseTogJ0hlbHZldGljYSBOZXVlJywgSGVsdmV0aWNhLCBSb2JvdG8sIEFyaWFsLCBzYW5zLXNlcmlmICFkZWZhdWx0O1xuXG4vLy8gU2V0IHRvIGB0cnVlYCB0byBlbmFibGUgYW50aWFsaWFzZWQgdHlwZSwgdXNpbmcgdGhlIGAtd2Via2l0LWZvbnQtc21vb3RoaW5nYCBhbmQgYC1tb3otb3N4LWZvbnQtc21vb3RoaW5nYCBDU1MgcHJvcGVydGllcy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kYm9keS1hbnRpYWxpYXNlZDogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCB2YWx1ZSB1c2VkIGZvciBtYXJnaW4gb24gY29tcG9uZW50cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtbWFyZ2luOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gR2xvYmFsIHZhbHVlIHVzZWQgZm9yIHBhZGRpbmcgb24gY29tcG9uZW50cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtcGFkZGluZzogMXJlbSAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCBmb250IHdlaWdodCB1c2VkIGZvciBub3JtYWwgdHlwZS5cbi8vLyBAdHlwZSBLZXl3b3JkIHwgTnVtYmVyXG4kZ2xvYmFsLXdlaWdodC1ub3JtYWw6IG5vcm1hbCAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCBmb250IHdlaWdodCB1c2VkIGZvciBib2xkIHR5cGUuXG4vLy8gQHR5cGUgS2V5d29yZCB8IE51bWJlclxuJGdsb2JhbC13ZWlnaHQtYm9sZDogYm9sZCAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCB2YWx1ZSB1c2VkIGZvciBhbGwgZWxlbWVudHMgdGhhdCBoYXZlIGEgYm9yZGVyIHJhZGl1cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtcmFkaXVzOiAwICFkZWZhdWx0O1xuXG4vLy8gU2V0cyB0aGUgdGV4dCBkaXJlY3Rpb24gb2YgdGhlIENTUy4gQ2FuIGJlIGVpdGhlciBgbHRyYCBvciBgcnRsYC5cbi8vLyBAdHlwZSBLZXl3b3JkXG4kZ2xvYmFsLXRleHQtZGlyZWN0aW9uOiBsdHIgIWRlZmF1bHQ7XG5cbi8vLyBFbmFibGVzIGZsZXhib3ggZm9yIGNvbXBvbmVudHMgdGhhdCBzdXBwb3J0IGl0LlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRnbG9iYWwtZmxleGJveDogZmFsc2UgIWRlZmF1bHQ7XG5cbkBpZiBub3QgbWFwLWhhcy1rZXkoJGZvdW5kYXRpb24tcGFsZXR0ZSwgcHJpbWFyeSkge1xuICBAZXJyb3IgJ0luICRmb3VuZGF0aW9uLXBhbGV0dGUsIHlvdSBtdXN0IGhhdmUgYSBjb2xvciBuYW1lZCBcInByaW1hcnlcIi4nO1xufVxuXG4vLyBJbnRlcm5hbCB2YXJpYWJsZXMgdXNlZCBmb3IgdGV4dCBkaXJlY3Rpb25cbiRnbG9iYWwtbGVmdDogaWYoJGdsb2JhbC10ZXh0LWRpcmVjdGlvbiA9PSBydGwsIHJpZ2h0LCBsZWZ0KTtcbiRnbG9iYWwtcmlnaHQ6IGlmKCRnbG9iYWwtdGV4dC1kaXJlY3Rpb24gPT0gcnRsLCBsZWZ0LCByaWdodCk7XG5cbi8vIEludGVybmFsIHZhcmlhYmxlcyB1c2VkIGZvciBjb2xvcnNcbiRwcmltYXJ5LWNvbG9yOiBtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHByaW1hcnkpO1xuJHNlY29uZGFyeS1jb2xvcjogbWFwLWdldCgkZm91bmRhdGlvbi1wYWxldHRlLCBzZWNvbmRhcnkpO1xuJHN1Y2Nlc3MtY29sb3I6IG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgc3VjY2Vzcyk7XG4kd2FybmluZy1jb2xvcjogbWFwLWdldCgkZm91bmRhdGlvbi1wYWxldHRlLCB3YXJuaW5nKTtcbiRhbGVydC1jb2xvcjogbWFwLWdldCgkZm91bmRhdGlvbi1wYWxldHRlLCBhbGVydCk7XG5cbi8vIFJlbW92ZSB0aGlzIGluIDYuM1xuJC16Zi1tZW51LWljb24taW1wb3J0ZWQ6IGZhbHNlO1xuJC16Zi1mbGV4LWNsYXNzZXMtaW1wb3J0ZWQ6IGZhbHNlO1xuXG5AbWl4aW4gZm91bmRhdGlvbi1nbG9iYWwtc3R5bGVzIHtcbiAgQGluY2x1ZGUgLXpmLW5vcm1hbGl6ZTtcblxuICAvLyBUaGVzZSBzdHlsZXMgYXJlIGFwcGxpZWQgdG8gYSA8bWV0YT4gdGFnLCB3aGljaCBpcyByZWFkIGJ5IHRoZSBGb3VuZGF0aW9uIEphdmFTY3JpcHRcbiAgLmZvdW5kYXRpb24tbXEge1xuICAgIGZvbnQtZmFtaWx5OiAnI3stemYtYnAtc2VyaWFsaXplKCRicmVha3BvaW50cyl9JztcbiAgfVxuXG4gIGh0bWwge1xuICAgIGZvbnQtc2l6ZTogJGdsb2JhbC1mb250LXNpemU7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgfVxuXG4gIC8vIFNldCBib3gtc2l6aW5nIGdsb2JhbGx5IHRvIGhhbmRsZSBwYWRkaW5nIGFuZCBib3JkZXIgd2lkdGhzXG4gICosXG4gICo6OmJlZm9yZSxcbiAgKjo6YWZ0ZXIge1xuICAgIGJveC1zaXppbmc6IGluaGVyaXQ7XG4gIH1cblxuICAvLyBEZWZhdWx0IGJvZHkgc3R5bGVzXG4gIGJvZHkge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbWFyZ2luOiAwO1xuICAgIGZvbnQtZmFtaWx5OiAkYm9keS1mb250LWZhbWlseTtcbiAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsO1xuICAgIGxpbmUtaGVpZ2h0OiAkZ2xvYmFsLWxpbmVoZWlnaHQ7XG4gICAgY29sb3I6ICRib2R5LWZvbnQtY29sb3I7XG4gICAgYmFja2dyb3VuZDogJGJvZHktYmFja2dyb3VuZDtcblxuICAgIEBpZiAoJGJvZHktYW50aWFsaWFzZWQpIHtcbiAgICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAgICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgICB9XG4gIH1cblxuICBpbWcge1xuICAgIC8vIEdyaWQgZGVmYXVsdHMgdG8gZ2V0IGltYWdlcyBhbmQgZW1iZWRzIHRvIHdvcmsgcHJvcGVybHlcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIC1tcy1pbnRlcnBvbGF0aW9uLW1vZGU6IGJpY3ViaWM7XG5cbiAgICAvLyBHZXQgcmlkIG9mIGdhcCB1bmRlciBpbWFnZXMgYnkgbWFraW5nIHRoZW0gZGlzcGxheTogaW5saW5lLWJsb2NrOyBieSBkZWZhdWx0XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIH1cblxuICAvLyBNYWtlIHN1cmUgdGV4dGFyZWEgdGFrZXMgb24gaGVpZ2h0IGF1dG9tYXRpY2FsbHlcbiAgdGV4dGFyZWEge1xuICAgIGhlaWdodDogYXV0bztcbiAgICBtaW4taGVpZ2h0OiA1MHB4O1xuICAgIGJvcmRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuICB9XG5cbiAgLy8gTWFrZSBzZWxlY3QgZWxlbWVudHMgYXJlIDEwMCUgd2lkdGggYnkgZGVmYXVsdFxuICBzZWxlY3Qge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJvcmRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuICB9XG5cbiAgLy8gU3R5bGVzIEdvb2dsZSBNYXBzIGFuZCBNYXBRdWVzdCBlbWJlZHMgcHJvcGVybHlcbiAgLy8gc2Nzcy1saW50OmRpc2FibGUgSWRTZWxlY3RvclxuICAjbWFwX2NhbnZhcyxcbiAgLm1hcF9jYW52YXMsXG4gIC5tcWEtZGlzcGxheSB7XG4gICAgaW1nLFxuICAgIGVtYmVkLFxuICAgIG9iamVjdCB7XG4gICAgICBtYXgtd2lkdGg6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cblxuICAvLyBSZXNldCA8YnV0dG9uPiBzdHlsZXMgY3JlYXRlZCBieSBtb3N0IGJyb3dzZXJzXG4gIGJ1dHRvbiB7XG4gICAgQGluY2x1ZGUgZGlzYWJsZS1tb3VzZS1vdXRsaW5lO1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICAtbW96LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgcGFkZGluZzogMDtcbiAgICBib3JkZXI6IDA7XG4gICAgYm9yZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gIH1cblxuICAvLyBJbnRlcm5hbCBjbGFzc2VzIHRvIHNob3cvaGlkZSBlbGVtZW50cyBpbiBKYXZhU2NyaXB0XG4gIC5pcy12aXNpYmxlIHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmlzLWhpZGRlbiB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi8vLyBMb2FkcyBub3JtYWxpemUuY3NzLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuQG1peGluIC16Zi1ub3JtYWxpemUge1xuICAvKiEgbm9ybWFsaXplLmNzcyB2My4wLjMgfCBNSVQgTGljZW5zZSB8IGdpdGh1Yi5jb20vbmVjb2xhcy9ub3JtYWxpemUuY3NzICovXG5cbiAgLyoqXG4gICAqIDEuIFNldCBkZWZhdWx0IGZvbnQgZmFtaWx5IHRvIHNhbnMtc2VyaWYuXG4gICAqIDIuIFByZXZlbnQgaU9TIGFuZCBJRSB0ZXh0IHNpemUgYWRqdXN0IGFmdGVyIGRldmljZSBvcmllbnRhdGlvbiBjaGFuZ2UsXG4gICAqICAgIHdpdGhvdXQgZGlzYWJsaW5nIHVzZXIgem9vbS5cbiAgICovXG5cbiAgaHRtbCB7XG4gICAgZm9udC1mYW1pbHk6IHNhbnMtc2VyaWY7IC8qIDEgKi9cbiAgICAtbXMtdGV4dC1zaXplLWFkanVzdDogMTAwJTsgLyogMiAqL1xuICAgIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTsgLyogMiAqL1xuICB9XG5cbiAgLyoqXG4gICAqIFJlbW92ZSBkZWZhdWx0IG1hcmdpbi5cbiAgICovXG5cbiAgYm9keSB7XG4gICAgbWFyZ2luOiAwO1xuICB9XG5cbiAgLyogSFRNTDUgZGlzcGxheSBkZWZpbml0aW9uc1xuICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4gIC8qKlxuICAgKiBDb3JyZWN0IGBibG9ja2AgZGlzcGxheSBub3QgZGVmaW5lZCBmb3IgYW55IEhUTUw1IGVsZW1lbnQgaW4gSUUgOC85LlxuICAgKiBDb3JyZWN0IGBibG9ja2AgZGlzcGxheSBub3QgZGVmaW5lZCBmb3IgYGRldGFpbHNgIG9yIGBzdW1tYXJ5YCBpbiBJRSAxMC8xMVxuICAgKiBhbmQgRmlyZWZveC5cbiAgICogQ29ycmVjdCBgYmxvY2tgIGRpc3BsYXkgbm90IGRlZmluZWQgZm9yIGBtYWluYCBpbiBJRSAxMS5cbiAgICovXG5cbiAgYXJ0aWNsZSxcbiAgYXNpZGUsXG4gIGRldGFpbHMsXG4gIGZpZ2NhcHRpb24sXG4gIGZpZ3VyZSxcbiAgZm9vdGVyLFxuICBoZWFkZXIsXG4gIGhncm91cCxcbiAgbWFpbixcbiAgbWVudSxcbiAgbmF2LFxuICBzZWN0aW9uLFxuICBzdW1tYXJ5IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuXG4gIC8qKlxuICAgKiAxLiBDb3JyZWN0IGBpbmxpbmUtYmxvY2tgIGRpc3BsYXkgbm90IGRlZmluZWQgaW4gSUUgOC85LlxuICAgKiAyLiBOb3JtYWxpemUgdmVydGljYWwgYWxpZ25tZW50IG9mIGBwcm9ncmVzc2AgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgT3BlcmEuXG4gICAqL1xuXG4gIGF1ZGlvLFxuICBjYW52YXMsXG4gIHByb2dyZXNzLFxuICB2aWRlbyB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyAvKiAxICovXG4gICAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lOyAvKiAyICovXG4gIH1cblxuICAvKipcbiAgICogUHJldmVudCBtb2Rlcm4gYnJvd3NlcnMgZnJvbSBkaXNwbGF5aW5nIGBhdWRpb2Agd2l0aG91dCBjb250cm9scy5cbiAgICogUmVtb3ZlIGV4Y2VzcyBoZWlnaHQgaW4gaU9TIDUgZGV2aWNlcy5cbiAgICovXG5cbiAgYXVkaW86bm90KFtjb250cm9sc10pIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIGhlaWdodDogMDtcbiAgfVxuXG4gIC8qKlxuICAgKiBBZGRyZXNzIGBbaGlkZGVuXWAgc3R5bGluZyBub3QgcHJlc2VudCBpbiBJRSA4LzkvMTAuXG4gICAqIEhpZGUgdGhlIGB0ZW1wbGF0ZWAgZWxlbWVudCBpbiBJRSA4LzkvMTAvMTEsIFNhZmFyaSwgYW5kIEZpcmVmb3ggPCAyMi5cbiAgICovXG5cbiAgW2hpZGRlbl0sXG4gIHRlbXBsYXRlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgLyogTGlua3NcbiAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuICAvKipcbiAgICogUmVtb3ZlIHRoZSBncmF5IGJhY2tncm91bmQgY29sb3IgZnJvbSBhY3RpdmUgbGlua3MgaW4gSUUgMTAuXG4gICAqL1xuXG4gIGEge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICB9XG5cbiAgLyoqXG4gICAqIEltcHJvdmUgcmVhZGFiaWxpdHkgb2YgZm9jdXNlZCBlbGVtZW50cyB3aGVuIHRoZXkgYXJlIGFsc28gaW4gYW5cbiAgICogYWN0aXZlL2hvdmVyIHN0YXRlLlxuICAgKi9cblxuICBhOmFjdGl2ZSxcbiAgYTpob3ZlciB7XG4gICAgb3V0bGluZTogMDtcbiAgfVxuXG4gIC8qIFRleHQtbGV2ZWwgc2VtYW50aWNzXG4gICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbiAgLyoqXG4gICAqIEFkZHJlc3Mgc3R5bGluZyBub3QgcHJlc2VudCBpbiBJRSA4LzkvMTAvMTEsIFNhZmFyaSwgYW5kIENocm9tZS5cbiAgICovXG5cbiAgYWJiclt0aXRsZV0ge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBkb3R0ZWQ7XG4gIH1cblxuICAvKipcbiAgICogQWRkcmVzcyBzdHlsZSBzZXQgdG8gYGJvbGRlcmAgaW4gRmlyZWZveCA0KywgU2FmYXJpLCBhbmQgQ2hyb21lLlxuICAgKi9cblxuICBiLFxuICBzdHJvbmcge1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZHJlc3Mgc3R5bGluZyBub3QgcHJlc2VudCBpbiBTYWZhcmkgYW5kIENocm9tZS5cbiAgICovXG5cbiAgZGZuIHtcbiAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIH1cblxuICAvKipcbiAgICogQWRkcmVzcyB2YXJpYWJsZSBgaDFgIGZvbnQtc2l6ZSBhbmQgbWFyZ2luIHdpdGhpbiBgc2VjdGlvbmAgYW5kIGBhcnRpY2xlYFxuICAgKiBjb250ZXh0cyBpbiBGaXJlZm94IDQrLCBTYWZhcmksIGFuZCBDaHJvbWUuXG4gICAqL1xuXG4gIGgxIHtcbiAgICBmb250LXNpemU6IDJlbTtcbiAgICBtYXJnaW46IDAuNjdlbSAwO1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZHJlc3Mgc3R5bGluZyBub3QgcHJlc2VudCBpbiBJRSA4LzkuXG4gICAqL1xuXG4gIG1hcmsge1xuICAgIGJhY2tncm91bmQ6ICNmZjA7XG4gICAgY29sb3I6ICMwMDA7XG4gIH1cblxuICAvKipcbiAgICogQWRkcmVzcyBpbmNvbnNpc3RlbnQgYW5kIHZhcmlhYmxlIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gICAqL1xuXG4gIHNtYWxsIHtcbiAgICBmb250LXNpemU6IDgwJTtcbiAgfVxuXG4gIC8qKlxuICAgKiBQcmV2ZW50IGBzdWJgIGFuZCBgc3VwYCBhZmZlY3RpbmcgYGxpbmUtaGVpZ2h0YCBpbiBhbGwgYnJvd3NlcnMuXG4gICAqL1xuXG4gIHN1YixcbiAgc3VwIHtcbiAgICBmb250LXNpemU6IDc1JTtcbiAgICBsaW5lLWhlaWdodDogMDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICB9XG5cbiAgc3VwIHtcbiAgICB0b3A6IC0wLjVlbTtcbiAgfVxuXG4gIHN1YiB7XG4gICAgYm90dG9tOiAtMC4yNWVtO1xuICB9XG5cbiAgLyogRW1iZWRkZWQgY29udGVudFxuICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4gIC8qKlxuICAgKiBSZW1vdmUgYm9yZGVyIHdoZW4gaW5zaWRlIGBhYCBlbGVtZW50IGluIElFIDgvOS8xMC5cbiAgICovXG5cbiAgaW1nIHtcbiAgICBib3JkZXI6IDA7XG4gIH1cblxuICAvKipcbiAgICogQ29ycmVjdCBvdmVyZmxvdyBub3QgaGlkZGVuIGluIElFIDkvMTAvMTEuXG4gICAqL1xuXG4gIHN2Zzpub3QoOnJvb3QpIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICB9XG5cbiAgLyogR3JvdXBpbmcgY29udGVudFxuICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4gIC8qKlxuICAgKiBBZGRyZXNzIG1hcmdpbiBub3QgcHJlc2VudCBpbiBJRSA4LzkgYW5kIFNhZmFyaS5cbiAgICovXG5cbiAgZmlndXJlIHtcbiAgICBtYXJnaW46IDFlbSA0MHB4O1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZHJlc3MgZGlmZmVyZW5jZXMgYmV0d2VlbiBGaXJlZm94IGFuZCBvdGhlciBicm93c2Vycy5cbiAgICovXG5cbiAgaHIge1xuICAgIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICAgIGhlaWdodDogMDtcbiAgfVxuXG4gIC8qKlxuICAgKiBDb250YWluIG92ZXJmbG93IGluIGFsbCBicm93c2Vycy5cbiAgICovXG5cbiAgcHJlIHtcbiAgICBvdmVyZmxvdzogYXV0bztcbiAgfVxuXG4gIC8qKlxuICAgKiBBZGRyZXNzIG9kZCBgZW1gLXVuaXQgZm9udCBzaXplIHJlbmRlcmluZyBpbiBhbGwgYnJvd3NlcnMuXG4gICAqL1xuXG4gIGNvZGUsXG4gIGtiZCxcbiAgcHJlLFxuICBzYW1wIHtcbiAgICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7XG4gICAgZm9udC1zaXplOiAxZW07XG4gIH1cblxuICAvKiBGb3Jtc1xuICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4gIC8qKlxuICAgKiBLbm93biBsaW1pdGF0aW9uOiBieSBkZWZhdWx0LCBDaHJvbWUgYW5kIFNhZmFyaSBvbiBPUyBYIGFsbG93IHZlcnkgbGltaXRlZFxuICAgKiBzdHlsaW5nIG9mIGBzZWxlY3RgLCB1bmxlc3MgYSBgYm9yZGVyYCBwcm9wZXJ0eSBpcyBzZXQuXG4gICAqL1xuXG4gIC8qKlxuICAgKiAxLiBDb3JyZWN0IGNvbG9yIG5vdCBiZWluZyBpbmhlcml0ZWQuXG4gICAqICAgIEtub3duIGlzc3VlOiBhZmZlY3RzIGNvbG9yIG9mIGRpc2FibGVkIGVsZW1lbnRzLlxuICAgKiAyLiBDb3JyZWN0IGZvbnQgcHJvcGVydGllcyBub3QgYmVpbmcgaW5oZXJpdGVkLlxuICAgKiAzLiBBZGRyZXNzIG1hcmdpbnMgc2V0IGRpZmZlcmVudGx5IGluIEZpcmVmb3ggNCssIFNhZmFyaSwgYW5kIENocm9tZS5cbiAgICovXG5cbiAgYnV0dG9uLFxuICBpbnB1dCxcbiAgb3B0Z3JvdXAsXG4gIHNlbGVjdCxcbiAgdGV4dGFyZWEge1xuICAgIGNvbG9yOiBpbmhlcml0OyAvKiAxICovXG4gICAgZm9udDogaW5oZXJpdDsgLyogMiAqL1xuICAgIG1hcmdpbjogMDsgLyogMyAqL1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZHJlc3MgYG92ZXJmbG93YCBzZXQgdG8gYGhpZGRlbmAgaW4gSUUgOC85LzEwLzExLlxuICAgKi9cblxuICBidXR0b24ge1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZHJlc3MgaW5jb25zaXN0ZW50IGB0ZXh0LXRyYW5zZm9ybWAgaW5oZXJpdGFuY2UgZm9yIGBidXR0b25gIGFuZCBgc2VsZWN0YC5cbiAgICogQWxsIG90aGVyIGZvcm0gY29udHJvbCBlbGVtZW50cyBkbyBub3QgaW5oZXJpdCBgdGV4dC10cmFuc2Zvcm1gIHZhbHVlcy5cbiAgICogQ29ycmVjdCBgYnV0dG9uYCBzdHlsZSBpbmhlcml0YW5jZSBpbiBGaXJlZm94LCBJRSA4LzkvMTAvMTEsIGFuZCBPcGVyYS5cbiAgICogQ29ycmVjdCBgc2VsZWN0YCBzdHlsZSBpbmhlcml0YW5jZSBpbiBGaXJlZm94LlxuICAgKi9cblxuICBidXR0b24sXG4gIHNlbGVjdCB7XG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIH1cblxuICAvKipcbiAgICogMS4gQXZvaWQgdGhlIFdlYktpdCBidWcgaW4gQW5kcm9pZCA0LjAuKiB3aGVyZSAoMikgZGVzdHJveXMgbmF0aXZlIGBhdWRpb2BcbiAgICogICAgYW5kIGB2aWRlb2AgY29udHJvbHMuXG4gICAqIDIuIENvcnJlY3QgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSBgaW5wdXRgIHR5cGVzIGluIGlPUy5cbiAgICogMy4gSW1wcm92ZSB1c2FiaWxpdHkgYW5kIGNvbnNpc3RlbmN5IG9mIGN1cnNvciBzdHlsZSBiZXR3ZWVuIGltYWdlLXR5cGVcbiAgICogICAgYGlucHV0YCBhbmQgb3RoZXJzLlxuICAgKi9cblxuICBidXR0b24sXG4gIGh0bWwgaW5wdXRbdHlwZT1cImJ1dHRvblwiXSwgLyogMSAqL1xuICBpbnB1dFt0eXBlPVwicmVzZXRcIl0sXG4gIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uOyAvKiAyICovXG4gICAgY3Vyc29yOiBwb2ludGVyOyAvKiAzICovXG4gIH1cblxuICAvKipcbiAgICogUmUtc2V0IGRlZmF1bHQgY3Vyc29yIGZvciBkaXNhYmxlZCBlbGVtZW50cy5cbiAgICovXG5cbiAgYnV0dG9uW2Rpc2FibGVkXSxcbiAgaHRtbCBpbnB1dFtkaXNhYmxlZF0ge1xuICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG4gIH1cblxuICAvKipcbiAgICogUmVtb3ZlIGlubmVyIHBhZGRpbmcgYW5kIGJvcmRlciBpbiBGaXJlZm94IDQrLlxuICAgKi9cblxuICBidXR0b246Oi1tb3otZm9jdXMtaW5uZXIsXG4gIGlucHV0OjotbW96LWZvY3VzLWlubmVyIHtcbiAgICBib3JkZXI6IDA7XG4gICAgcGFkZGluZzogMDtcbiAgfVxuXG4gIC8qKlxuICAgKiBBZGRyZXNzIEZpcmVmb3ggNCsgc2V0dGluZyBgbGluZS1oZWlnaHRgIG9uIGBpbnB1dGAgdXNpbmcgYCFpbXBvcnRhbnRgIGluXG4gICAqIHRoZSBVQSBzdHlsZXNoZWV0LlxuICAgKi9cblxuICBpbnB1dCB7XG4gICAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbiAgfVxuXG4gIC8qKlxuICAgKiBJdCdzIHJlY29tbWVuZGVkIHRoYXQgeW91IGRvbid0IGF0dGVtcHQgdG8gc3R5bGUgdGhlc2UgZWxlbWVudHMuXG4gICAqIEZpcmVmb3gncyBpbXBsZW1lbnRhdGlvbiBkb2Vzbid0IHJlc3BlY3QgYm94LXNpemluZywgcGFkZGluZywgb3Igd2lkdGguXG4gICAqXG4gICAqIDEuIEFkZHJlc3MgYm94IHNpemluZyBzZXQgdG8gYGNvbnRlbnQtYm94YCBpbiBJRSA4LzkvMTAuXG4gICAqIDIuIFJlbW92ZSBleGNlc3MgcGFkZGluZyBpbiBJRSA4LzkvMTAuXG4gICAqL1xuXG4gIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSxcbiAgaW5wdXRbdHlwZT1cInJhZGlvXCJdIHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94OyAvKiAxICovXG4gICAgcGFkZGluZzogMDsgLyogMiAqL1xuICB9XG5cbiAgLyoqXG4gICAqIEZpeCB0aGUgY3Vyc29yIHN0eWxlIGZvciBDaHJvbWUncyBpbmNyZW1lbnQvZGVjcmVtZW50IGJ1dHRvbnMuIEZvciBjZXJ0YWluXG4gICAqIGBmb250LXNpemVgIHZhbHVlcyBvZiB0aGUgYGlucHV0YCwgaXQgY2F1c2VzIHRoZSBjdXJzb3Igc3R5bGUgb2YgdGhlXG4gICAqIGRlY3JlbWVudCBidXR0b24gdG8gY2hhbmdlIGZyb20gYGRlZmF1bHRgIHRvIGB0ZXh0YC5cbiAgICovXG5cbiAgaW5wdXRbdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcbiAgaW5wdXRbdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICB9XG5cbiAgLyoqXG4gICAqIDEuIEFkZHJlc3MgYGFwcGVhcmFuY2VgIHNldCB0byBgc2VhcmNoZmllbGRgIGluIFNhZmFyaSBhbmQgQ2hyb21lLlxuICAgKiAyLiBBZGRyZXNzIGBib3gtc2l6aW5nYCBzZXQgdG8gYGJvcmRlci1ib3hgIGluIFNhZmFyaSBhbmQgQ2hyb21lLlxuICAgKi9cblxuICBpbnB1dFt0eXBlPVwic2VhcmNoXCJdIHtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDsgLyogMSAqL1xuICAgIGJveC1zaXppbmc6IGNvbnRlbnQtYm94OyAvKiAyICovXG4gIH1cblxuICAvKipcbiAgICogUmVtb3ZlIGlubmVyIHBhZGRpbmcgYW5kIHNlYXJjaCBjYW5jZWwgYnV0dG9uIGluIFNhZmFyaSBhbmQgQ2hyb21lIG9uIE9TIFguXG4gICAqIFNhZmFyaSAoYnV0IG5vdCBDaHJvbWUpIGNsaXBzIHRoZSBjYW5jZWwgYnV0dG9uIHdoZW4gdGhlIHNlYXJjaCBpbnB1dCBoYXNcbiAgICogcGFkZGluZyAoYW5kIGB0ZXh0ZmllbGRgIGFwcGVhcmFuY2UpLlxuICAgKi9cblxuICBpbnB1dFt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1jYW5jZWwtYnV0dG9uLFxuICBpbnB1dFt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIH1cblxuICAvKipcbiAgICogRGVmaW5lIGNvbnNpc3RlbnQgYm9yZGVyLCBtYXJnaW4sIGFuZCBwYWRkaW5nLlxuICAgKiBbTk9URV0gV2UgZG9uJ3QgZW5hYmxlIHRoaXMgcnVsZXNldCBpbiBGb3VuZGF0aW9uLCBiZWNhdXNlIHdlIHdhbnQgdGhlIDxmaWVsZHNldD4gZWxlbWVudCB0byBoYXZlIHBsYWluIHN0eWxpbmcuXG4gICAqL1xuXG4gIC8qIGZpZWxkc2V0IHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjYzBjMGMwO1xuICAgIG1hcmdpbjogMCAycHg7XG4gICAgcGFkZGluZzogMC4zNWVtIDAuNjI1ZW0gMC43NWVtO1xuICB9ICovXG5cbiAgLyoqXG4gICAqIDEuIENvcnJlY3QgYGNvbG9yYCBub3QgYmVpbmcgaW5oZXJpdGVkIGluIElFIDgvOS8xMC8xMS5cbiAgICogMi4gUmVtb3ZlIHBhZGRpbmcgc28gcGVvcGxlIGFyZW4ndCBjYXVnaHQgb3V0IGlmIHRoZXkgemVybyBvdXQgZmllbGRzZXRzLlxuICAgKi9cblxuICBsZWdlbmQge1xuICAgIGJvcmRlcjogMDsgLyogMSAqL1xuICAgIHBhZGRpbmc6IDA7IC8qIDIgKi9cbiAgfVxuXG4gIC8qKlxuICAgKiBSZW1vdmUgZGVmYXVsdCB2ZXJ0aWNhbCBzY3JvbGxiYXIgaW4gSUUgOC85LzEwLzExLlxuICAgKi9cblxuICB0ZXh0YXJlYSB7XG4gICAgb3ZlcmZsb3c6IGF1dG87XG4gIH1cblxuICAvKipcbiAgICogRG9uJ3QgaW5oZXJpdCB0aGUgYGZvbnQtd2VpZ2h0YCAoYXBwbGllZCBieSBhIHJ1bGUgYWJvdmUpLlxuICAgKiBOT1RFOiB0aGUgZGVmYXVsdCBjYW5ub3Qgc2FmZWx5IGJlIGNoYW5nZWQgaW4gQ2hyb21lIGFuZCBTYWZhcmkgb24gT1MgWC5cbiAgICovXG5cbiAgb3B0Z3JvdXAge1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICB9XG5cbiAgLyogVGFibGVzXG4gICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbiAgLyoqXG4gICAqIFJlbW92ZSBtb3N0IHNwYWNpbmcgYmV0d2VlbiB0YWJsZSBjZWxscy5cbiAgICovXG5cbiAgdGFibGUge1xuICAgIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG4gICAgYm9yZGVyLXNwYWNpbmc6IDA7XG4gIH1cblxuICB0ZCxcbiAgdGgge1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cbn1cbiIsIi8vICBGb3VuZGF0aW9uIGZvciBTaXRlcyBTZXR0aW5nc1xuLy8gIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vL1xuLy8gIFRhYmxlIG9mIENvbnRlbnRzOlxuLy9cbi8vICAgMS4gR2xvYmFsXG4vLyAgIDIuIEJyZWFrcG9pbnRzXG4vLyAgIDMuIFRoZSBHcmlkXG4vLyAgIDQuIEJhc2UgVHlwb2dyYXBoeVxuLy8gICA1LiBUeXBvZ3JhcGh5IEhlbHBlcnNcbi8vICAgNi4gQWJpZGVcbi8vICAgNy4gQWNjb3JkaW9uXG4vLyAgIDguIEFjY29yZGlvbiBNZW51XG4vLyAgIDkuIEJhZGdlXG4vLyAgMTAuIEJyZWFkY3J1bWJzXG4vLyAgMTEuIEJ1dHRvblxuLy8gIDEyLiBCdXR0b24gR3JvdXBcbi8vICAxMy4gQ2FsbG91dFxuLy8gIDE0LiBDbG9zZSBCdXR0b25cbi8vICAxNS4gRHJpbGxkb3duXG4vLyAgMTYuIERyb3Bkb3duXG4vLyAgMTcuIERyb3Bkb3duIE1lbnVcbi8vICAxOC4gRmxleCBWaWRlb1xuLy8gIDE5LiBGb3Jtc1xuLy8gIDIwLiBMYWJlbFxuLy8gIDIxLiBNZWRpYSBPYmplY3Rcbi8vICAyMi4gTWVudVxuLy8gIDIzLiBPZmYtY2FudmFzXG4vLyAgMjQuIE9yYml0XG4vLyAgMjUuIFBhZ2luYXRpb25cbi8vICAyNi4gUHJvZ3Jlc3MgQmFyXG4vLyAgMjcuIFJldmVhbFxuLy8gIDI4LiBTbGlkZXJcbi8vICAyOS4gU3dpdGNoXG4vLyAgMzAuIFRhYmxlXG4vLyAgMzEuIFRhYnNcbi8vICAzMi4gVGh1bWJuYWlsXG4vLyAgMzMuIFRvb2x0aXBcbi8vICAzNC4gVG9wIEJhclxuXG5AaW1wb3J0ICd1dGlsL3V0aWwnO1xuXG4vLyAxLiBHbG9iYWxcbi8vIC0tLS0tLS0tLVxuXG4kZ2xvYmFsLXdpZHRoOiByZW0tY2FsYygxMjAwKTtcbiRnbG9iYWwtZm9udC1zaXplOiAxMDAlO1xuJGdsb2JhbC1saW5laGVpZ2h0OiAxLjU7XG4kcHJpbWFyeS1jb2xvcjogI2RkMzMzMztcbiRzZWNvbmRhcnktY29sb3I6ICM3Nzc7XG4kc3VjY2Vzcy1jb2xvcjogIzNhZGI3NjtcbiR3YXJuaW5nLWNvbG9yOiAjZmZhZTAwO1xuJGFsZXJ0LWNvbG9yOiAjZWM1ODQwO1xuJGhpZ2hsaWdodC1ncmF5OiAjRUNFQ0VGO1xuJGhpZ2hsaWdodC1ncmF5MjogI0VDRUNGMjtcbiRsaWdodC1ncmF5OiAjRTBFMEUwO1xuJG1lZGl1bS1ncmF5OiAjREREO1xuJGRhcmstZ3JheTogIzhhOGE4YTtcbiRkYXJrLWdyYXkyOiAjOUI5QjlCIDtcbiRrYXNpLWdyYXk6ICM5RjlDOUMgO1xuJGthc2ktZ3JheTI6ICNCQUI5QjcgO1xuJGV4cG9fd2hpdGUgOiAjRjhGN0Y0O1xuJG5lYXJibGFjazogIzFkMmEyOTtcbiRibGFjazogIzBhMGEwYTtcbiR3aGl0ZTogI2Y3ZjdmNztcbiR3aGl0ZXI6ICNGRkY7XG4kcmVkOiAjZGQzMzMzO1xuJGJvZHktYmFja2dyb3VuZDogJHdoaXRlO1xuJGJvZHktZm9udC1jb2xvcjogJG5lYXJibGFjaztcbiRib2R5LWZvbnQtZmFtaWx5OiAnSW50ZXInLFwiSGVsdmV0aWNhIE5ldWVcIiwgSGVsdmV0aWNhLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiRib2R5LWFudGlhbGlhc2VkOiB0cnVlO1xuJHRleHQtZGlyZWN0aW9uOiBsdHI7XG4kZ2xvYmFsLW1hcmdpbjogMXJlbTtcbiRnbG9iYWwtcGFkZGluZzogMXJlbTtcbiRnbG9iYWwtbWFyZ2luOiAxcmVtO1xuJGdsb2JhbC13ZWlnaHQtbm9ybWFsOiBub3JtYWw7XG4kZ2xvYmFsLXdlaWdodC1ib2xkOiBib2xkO1xuJGdsb2JhbC1yYWRpdXM6IDA7XG4kZ2xvYmFsLXRleHQtZGlyZWN0aW9uOiBsdHI7XG4kcmVtLWJhc2U6IDE2cHg7XG5cblxuLy8vU3BlY2lhbCBoZWFkZXIgZm9udFxuXG4kaGVhZGVyLWZvbnQtZmFtaWx5OiAnSW50ZXInLCBIZWx2ZXRpY2Esc2Fucy1zZXJpZjtcbi8vIDIuIEJyZWFrcG9pbnRzXG4vLyAtLS0tLS0tLS0tLS0tLVxuXG4kYnJlYWtwb2ludHM6IChcbiAgICAgICAgc21hbGw6IDAsXG4gICAgICAgIG1lZGl1bTogNjQwcHgsXG4gICAgICAgIGxhcmdlOiAxMDI0cHgsXG4gICAgICAgIHhsYXJnZTogMTIwMHB4LFxuICAgICAgICB4eGxhcmdlOiAxNDQwcHgsXG4pO1xuJGJyZWFrcG9pbnQtY2xhc3NlczogKHNtYWxsIG1lZGl1bSBsYXJnZSB4bGFyZ2UgeHhsYXJnZSk7XG5cbi8vIDMuIFRoZSBHcmlkXG4vLyAtLS0tLS0tLS0tLVxuXG4kZ3JpZC1yb3ctd2lkdGg6ICRnbG9iYWwtd2lkdGg7XG4kZ3JpZC1jb2x1bW4tY291bnQ6IDEyO1xuJGdyaWQtY29sdW1uLWd1dHRlcjogMzBweDtcbiRibG9jay1ncmlkLW1heDogNjtcblxuLy8gNC4gQmFzZSBUeXBvZ3JhcGh5XG4vLyAtLS0tLS0tLS0tLS0tLS0tLS1cblxuJGhlYWRlci1mb250LWZhbWlseTogJGhlYWRlci1mb250LWZhbWlseTtcbiRoZWFkZXItZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbDtcbiRoZWFkZXItZm9udC1zdHlsZTogbm9ybWFsO1xuJGZvbnQtZmFtaWx5LW1vbm9zcGFjZTogQ29uc29sYXMsIFwiTGliZXJhdGlvbiBNb25vXCIsIENvdXJpZXIsIG1vbm9zcGFjZTtcbiRoZWFkZXItc2l6ZXM6IChcbiAgICAgICAgc21hbGw6IChcbiAgICAgICAgICAgICAgICAnaDEnOiAzMixcbiAgICAgICAgICAgICAgICAnaDInOiAyMCxcbiAgICAgICAgICAgICAgICAnaDMnOiAxOSxcbiAgICAgICAgICAgICAgICAnaDQnOiAxOCxcbiAgICAgICAgICAgICAgICAnaDUnOiAxNyxcbiAgICAgICAgICAgICAgICAnaDYnOiAxNixcbiAgICAgICAgKSxcbiAgICAgICAgbWVkaXVtOiAoXG4gICAgICAgICAgICAgICAgJ2gxJzogNDYsXG4gICAgICAgICAgICAgICAgJ2gyJzogMzYsXG4gICAgICAgICAgICAgICAgJ2gzJzogMjYsXG4gICAgICAgICAgICAgICAgJ2g0JzogMjAsXG4gICAgICAgICAgICAgICAgJ2g1JzogMTgsXG4gICAgICAgICAgICAgICAgJ2g2JzogMTYsXG4gICAgICAgICksXG4gICAgICAgIGxhcmdlOiAoXG4gICAgICAgICAgICAgICAgJ2gxJzogNjQsXG4gICAgICAgICksXG4pO1xuJGhlYWRlci1jb2xvcjogaW5oZXJpdDtcbiRoZWFkZXItbGluZWhlaWdodDogMS40O1xuJGhlYWRlci1tYXJnaW4tYm90dG9tOiAwLjVyZW07XG4kaGVhZGVyLXRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHk7XG4kc21hbGwtZm9udC1zaXplOiA4MCU7XG4kaGVhZGVyLXNtYWxsLWZvbnQtY29sb3I6ICRtZWRpdW0tZ3JheTtcbiRwYXJhZ3JhcGgtbGluZWhlaWdodDogMS42O1xuJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tOiAxcmVtO1xuJHBhcmFncmFwaC10ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5O1xuJGNvZGUtY29sb3I6ICRibGFjaztcbiRjb2RlLWZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktbW9ub3NwYWNlO1xuJGNvZGUtZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbDtcbiRjb2RlLWJhY2tncm91bmQ6ICRsaWdodC1ncmF5O1xuJGNvZGUtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5O1xuJGNvZGUtcGFkZGluZzogcmVtLWNhbGMoMiA1IDEpO1xuJGFuY2hvci1jb2xvcjogJHByaW1hcnktY29sb3I7XG4kYW5jaG9yLWNvbG9yLWhvdmVyOiBzY2FsZS1jb2xvcigkYW5jaG9yLWNvbG9yLCAkbGlnaHRuZXNzOiAtMTQlKTtcbiRhbmNob3ItdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuJGFuY2hvci10ZXh0LWRlY29yYXRpb24taG92ZXI6IG5vbmU7XG4kaHItd2lkdGg6ICRnbG9iYWwtd2lkdGg7XG4kaHItYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5O1xuJGhyLW1hcmdpbjogcmVtLWNhbGMoMjApIGF1dG87XG4kbGlzdC1saW5laGVpZ2h0OiAkcGFyYWdyYXBoLWxpbmVoZWlnaHQ7XG4kbGlzdC1tYXJnaW4tYm90dG9tOiAkcGFyYWdyYXBoLW1hcmdpbi1ib3R0b207XG4kbGlzdC1zdHlsZS10eXBlOiBkaXNjO1xuJGxpc3Qtc3R5bGUtcG9zaXRpb246IG91dHNpZGU7XG4kbGlzdC1zaWRlLW1hcmdpbjogMS4yNXJlbTtcbiRsaXN0LW5lc3RlZC1zaWRlLW1hcmdpbjogMS4yNXJlbTtcbiRkZWZubGlzdC1tYXJnaW4tYm90dG9tOiAxcmVtO1xuJGRlZm5saXN0LXRlcm0td2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkO1xuJGRlZm5saXN0LXRlcm0tbWFyZ2luLWJvdHRvbTogMC4zcmVtO1xuJGJsb2NrcXVvdGUtY29sb3I6ICRkYXJrLWdyYXk7XG4kYmxvY2txdW90ZS1wYWRkaW5nOiByZW0tY2FsYyg5IDIwIDAgMTkpO1xuJGJsb2NrcXVvdGUtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5O1xuJGNpdGUtZm9udC1zaXplOiByZW0tY2FsYygxMyk7XG4kY2l0ZS1jb2xvcjogJGRhcmstZ3JheTtcbiRrZXlzdHJva2UtZm9udDogJGZvbnQtZmFtaWx5LW1vbm9zcGFjZTtcbiRrZXlzdHJva2UtY29sb3I6ICRibGFjaztcbiRrZXlzdHJva2UtYmFja2dyb3VuZDogJGxpZ2h0LWdyYXk7XG4ka2V5c3Ryb2tlLXBhZGRpbmc6IHJlbS1jYWxjKDIgNCAwKTtcbiRrZXlzdHJva2UtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiRhYmJyLXVuZGVybGluZTogMXB4IGRvdHRlZCAkYmxhY2s7XG5cbi8vIDUuIFR5cG9ncmFwaHkgSGVscGVyc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRsZWFkLWZvbnQtc2l6ZTogJGdsb2JhbC1mb250LXNpemUgKiAxLjI1O1xuJGxlYWQtbGluZWhlaWdodDogMS42O1xuJHN1YmhlYWRlci1saW5laGVpZ2h0OiAxLjQ7XG4kc3ViaGVhZGVyLWNvbG9yOiAkZGFyay1ncmF5O1xuJHN1YmhlYWRlci1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsO1xuJHN1YmhlYWRlci1tYXJnaW4tdG9wOiAwLjJyZW07XG4kc3ViaGVhZGVyLW1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiRzdGF0LWZvbnQtc2l6ZTogMi41cmVtO1xuXG4vLyA2LiBBYmlkZVxuLy8gLS0tLS0tLS1cblxuJGFiaWRlLWlucHV0czogdHJ1ZTtcbiRhYmlkZS1sYWJlbHM6IHRydWU7XG4kaW5wdXQtYmFja2dyb3VuZC1pbnZhbGlkOiAkYWxlcnQtY29sb3I7XG4kZm9ybS1sYWJlbC1jb2xvci1pbnZhbGlkOiAkYWxlcnQtY29sb3I7XG4kaW5wdXQtZXJyb3ItY29sb3I6ICRhbGVydC1jb2xvcjtcbiRpbnB1dC1lcnJvci1mb250LXNpemU6IHJlbS1jYWxjKDEyKTtcbiRpbnB1dC1lcnJvci1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcblxuLy8gNy4gQWNjb3JkaW9uXG4vLyAtLS0tLS0tLS0tLS1cblxuJGFjY29yZGlvbi1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kYWNjb3JkaW9uLXBsdXNtaW51czogdHJ1ZTtcbiRhY2NvcmRpb24taXRlbS1jb2xvcjogZm9yZWdyb3VuZCgkYWNjb3JkaW9uLWJhY2tncm91bmQsICRwcmltYXJ5LWNvbG9yKTtcbiRhY2NvcmRpb24taXRlbS1iYWNrZ3JvdW5kLWhvdmVyOiAkbGlnaHQtZ3JheTtcbiRhY2NvcmRpb24taXRlbS1wYWRkaW5nOiAxLjI1cmVtIDFyZW07XG4kYWNjb3JkaW9uLWNvbnRlbnQtYmFja2dyb3VuZDogJHdoaXRlO1xuJGFjY29yZGlvbi1jb250ZW50LWJvcmRlcjogMXB4IHNvbGlkICRsaWdodC1ncmF5O1xuJGFjY29yZGlvbi1jb250ZW50LWNvbG9yOiBmb3JlZ3JvdW5kKCRhY2NvcmRpb24tYmFja2dyb3VuZCwgJHByaW1hcnktY29sb3IpO1xuJGFjY29yZGlvbi1jb250ZW50LXBhZGRpbmc6IDFyZW07XG5cbi8vIDguIEFjY29yZGlvbiBNZW51XG4vLyAtLS0tLS0tLS0tLS0tLS0tLVxuXG4kYWNjb3JkaW9ubWVudS1hcnJvd3M6IHRydWU7XG5cbi8vIDkuIEJhZGdlXG4vLyAtLS0tLS0tLVxuXG4kYmFkZ2UtYmFja2dyb3VuZDogJHByaW1hcnktY29sb3I7XG4kYmFkZ2UtY29sb3I6IGZvcmVncm91bmQoJGJhZGdlLWJhY2tncm91bmQpO1xuJGJhZGdlLXBhZGRpbmc6IDAuM2VtO1xuJGJhZGdlLW1pbndpZHRoOiAyLjFlbTtcbiRiYWRnZS1mb250LXNpemU6IDAuNnJlbTtcblxuLy8gMTAuIEJyZWFkY3J1bWJzXG4vLyAtLS0tLS0tLS0tLS0tLS1cblxuJGJyZWFkY3J1bWJzLW1hcmdpbjogMCAwICRnbG9iYWwtbWFyZ2luIDA7XG4kYnJlYWRjcnVtYnMtaXRlbS1mb250LXNpemU6IHJlbS1jYWxjKDExKTtcbiRicmVhZGNydW1icy1pdGVtLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiRicmVhZGNydW1icy1pdGVtLWNvbG9yLWN1cnJlbnQ6ICRibGFjaztcbiRicmVhZGNydW1icy1pdGVtLWNvbG9yLWRpc2FibGVkOiAkbWVkaXVtLWdyYXk7XG4kYnJlYWRjcnVtYnMtaXRlbS1tYXJnaW46IDAuNzVyZW07XG4kYnJlYWRjcnVtYnMtaXRlbS11cHBlcmNhc2U6IHRydWU7XG4kYnJlYWRjcnVtYnMtaXRlbS1zbGFzaDogdHJ1ZTtcblxuLy8gMTEuIEJ1dHRvblxuLy8gLS0tLS0tLS0tLVxuXG4kYnV0dG9uLXBhZGRpbmc6IDAuODVlbSAxZW07XG4kYnV0dG9uLW1hcmdpbjogMCAkZ2xvYmFsLW1hcmdpbiAkZ2xvYmFsLW1hcmdpbiAwO1xuJGJ1dHRvbi1maWxsOiBzb2xpZDtcbiRidXR0b24tYmFja2dyb3VuZDogJHByaW1hcnktY29sb3I7XG4kYnV0dG9uLWJhY2tncm91bmQtaG92ZXI6IHNjYWxlLWNvbG9yKCRidXR0b24tYmFja2dyb3VuZCwgJGxpZ2h0bmVzczogLTE1JSk7XG4kYnV0dG9uLWNvbG9yOiAjZmZmO1xuJGJ1dHRvbi1jb2xvci1hbHQ6ICMwMDA7XG4kYnV0dG9uLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4kYnV0dG9uLXNpemVzOiAoXG4gICAgICAgIHRpbnk6IDAuNnJlbSxcbiAgICAgICAgc21hbGw6IDAuNzVyZW0sXG4gICAgICAgIGRlZmF1bHQ6IDAuOXJlbSxcbiAgICAgICAgbGFyZ2U6IDEuMjVyZW0sXG4pO1xuJGJ1dHRvbi1vcGFjaXR5LWRpc2FibGVkOiAwLjI1O1xuXG4vLyAxMi4gQnV0dG9uIEdyb3VwXG4vLyAtLS0tLS0tLS0tLS0tLS0tXG5cbiRidXR0b25ncm91cC1tYXJnaW46IDFyZW07XG4kYnV0dG9uZ3JvdXAtc3BhY2luZzogMXB4O1xuJGJ1dHRvbmdyb3VwLWNoaWxkLXNlbGVjdG9yOiAnLmJ1dHRvbic7XG4kYnV0dG9uZ3JvdXAtZXhwYW5kLW1heDogNjtcblxuLy8gMTMuIENhbGxvdXRcbi8vIC0tLS0tLS0tLS0tXG5cbiRjYWxsb3V0LWJhY2tncm91bmQ6ICR3aGl0ZTtcbiRjYWxsb3V0LWJhY2tncm91bmQtZmFkZTogODUlO1xuJGNhbGxvdXQtYm9yZGVyOiAxcHggc29saWQgcmdiYSgkYmxhY2ssIDAuMjUpO1xuJGNhbGxvdXQtbWFyZ2luOiAwIDAgMXJlbSAwO1xuJGNhbGxvdXQtcGFkZGluZzogMXJlbTtcbiRjYWxsb3V0LWZvbnQtY29sb3I6ICRib2R5LWZvbnQtY29sb3I7XG4kY2FsbG91dC1mb250LWNvbG9yLWFsdDogJGJvZHktYmFja2dyb3VuZDtcbiRjYWxsb3V0LXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4kY2FsbG91dC1saW5rLXRpbnQ6IDMwJTtcblxuLy8gMTQuIENsb3NlIEJ1dHRvblxuLy8gLS0tLS0tLS0tLS0tLS0tLVxuXG4kY2xvc2VidXR0b24tcG9zaXRpb246IHJpZ2h0IHRvcDtcbiRjbG9zZWJ1dHRvbi1vZmZzZXQtaG9yaXpvbnRhbDogMXJlbTtcbiRjbG9zZWJ1dHRvbi1vZmZzZXQtdmVydGljYWw6IDAuNXJlbTtcbiRjbG9zZWJ1dHRvbi1zaXplOiAyZW07XG4kY2xvc2VidXR0b24tbGluZWhlaWdodDogMTtcbiRjbG9zZWJ1dHRvbi1jb2xvcjogJGRhcmstZ3JheTtcbiRjbG9zZWJ1dHRvbi1jb2xvci1ob3ZlcjogJGJsYWNrO1xuXG4vLyAxNS4gRHJpbGxkb3duXG4vLyAtLS0tLS0tLS0tLS0tXG5cbiRkcmlsbGRvd24tdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMTVzIGxpbmVhcjtcbiRkcmlsbGRvd24tYXJyb3dzOiB0cnVlO1xuXG4vLyAxNi4gRHJvcGRvd25cbi8vIC0tLS0tLS0tLS0tLVxuXG4kZHJvcGRvd24tcGFkZGluZzogMXJlbTtcbiRkcm9wZG93bi1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XG4kZHJvcGRvd24tZm9udC1zaXplOiAxNnJlbTtcbiRkcm9wZG93bi13aWR0aDogMzAwcHg7XG4kZHJvcGRvd24tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiRkcm9wZG93bi1zaXplczogKFxuICAgICAgICB0aW55OiAxMDBweCxcbiAgICAgICAgc21hbGw6IDIwMHB4LFxuICAgICAgICBsYXJnZTogNDAwcHgsXG4pO1xuXG4vLyAxNy4gRHJvcGRvd24gTWVudVxuLy8gLS0tLS0tLS0tLS0tLS0tLS1cblxuJGRyb3Bkb3dubWVudS1hcnJvd3M6IHRydWU7XG4kZHJvcGRvd25tZW51LW1pbi13aWR0aDogMjAwcHg7XG4kZHJvcGRvd25tZW51LWJhY2tncm91bmQ6ICR3aGl0ZTtcbiRkcm9wZG93bi1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XG5cbi8vIDE4LiBGbGV4IFZpZGVvXG4vLyAtLS0tLS0tLS0tLS0tLVxuXG4kZmxleHZpZGVvLXBhZGRpbmctdG9wOiByZW0tY2FsYygyNSk7XG4kZmxleHZpZGVvLW1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDE2KTtcbiRmbGV4dmlkZW8tcmF0aW86IDQgYnkgMztcbiRmbGV4dmlkZW8tcmF0aW8td2lkZXNjcmVlbjogMTYgYnkgOTtcblxuLy8gMTkuIEZvcm1zXG4vLyAtLS0tLS0tLS1cblxuJGZpZWxkc2V0LWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheTtcbiRmaWVsZHNldC1wYWRkaW5nOiByZW0tY2FsYygyMCk7XG4kZmllbGRzZXQtbWFyZ2luOiByZW0tY2FsYygxOCAwKTtcbiRsZWdlbmQtcGFkZGluZzogcmVtLWNhbGMoMCAzKTtcbiRmb3JtLXNwYWNpbmc6IHJlbS1jYWxjKDE2KTtcbiRoZWxwdGV4dC1jb2xvcjogIzMzMztcbiRoZWxwdGV4dC1mb250LXNpemU6IHJlbS1jYWxjKDEzKTtcbiRoZWxwdGV4dC1mb250LXN0eWxlOiBpdGFsaWM7XG4kaW5wdXQtcHJlZml4LWNvbG9yOiAkYmxhY2s7XG4kaW5wdXQtcHJlZml4LWJhY2tncm91bmQ6ICRsaWdodC1ncmF5O1xuJGlucHV0LXByZWZpeC1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XG4kaW5wdXQtcHJlZml4LXBhZGRpbmc6IDFyZW07XG4kZm9ybS1sYWJlbC1jb2xvcjogJGJsYWNrO1xuJGZvcm0tbGFiZWwtZm9udC1zaXplOiByZW0tY2FsYygxNCk7XG4kZm9ybS1sYWJlbC1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsO1xuJGZvcm0tbGFiZWwtbGluZS1oZWlnaHQ6IDEuODtcbiRzZWxlY3QtYmFja2dyb3VuZDogI2ZhZmFmYTtcbiRzZWxlY3QtdHJpYW5nbGUtY29sb3I6ICMzMzM7XG4kc2VsZWN0LXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4kaW5wdXQtY29sb3I6ICRkYXJrLWdyYXk7XG4kaW5wdXQtZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4kaW5wdXQtZm9udC1zaXplOiByZW0tY2FsYygxNik7XG4kaW5wdXQtYmFja2dyb3VuZDogJHdoaXRlO1xuJGlucHV0LWJhY2tncm91bmQtZm9jdXM6ICR3aGl0ZTtcbiRpbnB1dC1iYWNrZ3JvdW5kLWRpc2FibGVkOiAkbGlnaHQtZ3JheTtcbiRpbnB1dC1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XG4kaW5wdXQtYm9yZGVyLWZvY3VzOiAxcHggc29saWQgJGRhcmstZ3JheTtcbiRpbnB1dC1zaGFkb3c6IGluc2V0IDAgMXB4IDJweCByZ2JhKCRibGFjaywgMC4xKTtcbiRpbnB1dC1zaGFkb3ctZm9jdXM6IDAgMCA1cHggJG1lZGl1bS1ncmF5O1xuJGlucHV0LWN1cnNvci1kaXNhYmxlZDogZGVmYXVsdDtcbiRpbnB1dC10cmFuc2l0aW9uOiBib3gtc2hhZG93IDAuNXMsIGJvcmRlci1jb2xvciAwLjI1cyBlYXNlLWluLW91dDtcbiRpbnB1dC1udW1iZXItc3Bpbm5lcnM6IHRydWU7XG4kaW5wdXQtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcblxuLy8gMjAuIExhYmVsXG4vLyAtLS0tLS0tLS1cblxuJGxhYmVsLWJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xuJGxhYmVsLWNvbG9yOiBmb3JlZ3JvdW5kKCRsYWJlbC1iYWNrZ3JvdW5kKTtcbiRsYWJlbC1mb250LXNpemU6IDAuOHJlbTtcbiRsYWJlbC1wYWRkaW5nOiAwLjMzMzMzcmVtIDAuNXJlbTtcbiRsYWJlbC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuXG4vLyAyMS4gTWVkaWEgT2JqZWN0XG4vLyAtLS0tLS0tLS0tLS0tLS0tXG5cbiRtZWRpYW9iamVjdC1tYXJnaW4tYm90dG9tOiAkZ2xvYmFsLW1hcmdpbjtcbiRtZWRpYW9iamVjdC1zZWN0aW9uLXBhZGRpbmc6ICRnbG9iYWwtcGFkZGluZztcbiRtZWRpYW9iamVjdC1pbWFnZS13aWR0aC1zdGFja2VkOiAxMDAlO1xuXG4vLyAyMi4gTWVudVxuLy8gLS0tLS0tLS1cblxuJG1lbnUtbWFyZ2luOiAwO1xuJG1lbnUtbWFyZ2luLW5lc3RlZDogMXJlbTtcbiRtZW51LWl0ZW0tcGFkZGluZzogMC43cmVtIDFyZW07XG4kbWVudS1pY29uLXNwYWNpbmc6IDAuMjVyZW07XG4kbWVudS1leHBhbmQtbWF4OiA2O1xuXG4vLyAyMy4gT2ZmLWNhbnZhc1xuLy8gLS0tLS0tLS0tLS0tLS1cblxuJG9mZmNhbnZhcy1zaXplOiAyNTBweDtcbiRvZmZjYW52YXMtYmFja2dyb3VuZDogJGxpZ2h0LWdyYXk7XG4kb2ZmY2FudmFzLXppbmRleDogLTE7XG4kb2ZmY2FudmFzLXRyYW5zaXRpb24tbGVuZ3RoOiAwLjVzO1xuJG9mZmNhbnZhcy10cmFuc2l0aW9uLXRpbWluZzogZWFzZTtcbiRvZmZjYW52YXMtZXhpdC1iYWNrZ3JvdW5kOiByZ2JhKCR3aGl0ZSwgMC4yNSk7XG4kbWFpbmNvbnRlbnQtY2xhc3M6ICdvZmYtY2FudmFzLWNvbnRlbnQnO1xuJG1haW5jb250ZW50LXNoYWRvdzogMCAwIDEwcHggcmdiYSgkYmxhY2ssIDAuNSk7XG5cbi8vIDI0LiBPcmJpdFxuLy8gLS0tLS0tLS0tXG5cbiRvcmJpdC1idWxsZXQtYmFja2dyb3VuZDogJG1lZGl1bS1ncmF5O1xuJG9yYml0LWJ1bGxldC1iYWNrZ3JvdW5kLWFjdGl2ZTogJGRhcmstZ3JheTtcbiRvcmJpdC1idWxsZXQtZGlhbWV0ZXI6IDEuMnJlbTtcbiRvcmJpdC1idWxsZXQtbWFyZ2luOiAwLjFyZW07XG4kb3JiaXQtYnVsbGV0LW1hcmdpbi10b3A6IDAuOHJlbTtcbiRvcmJpdC1idWxsZXQtbWFyZ2luLWJvdHRvbTogMC44cmVtO1xuJG9yYml0LWNhcHRpb24tYmFja2dyb3VuZDogcmdiYSgkYmxhY2ssIDAuNSk7XG4kb3JiaXQtY2FwdGlvbi1wYWRkaW5nOiAxcmVtO1xuJG9yYml0LWNvbnRyb2wtYmFja2dyb3VuZC1ob3ZlcjogcmdiYSgkYmxhY2ssIDAuNSk7XG4kb3JiaXQtY29udHJvbC1wYWRkaW5nOiAxcmVtO1xuJG9yYml0LWNvbnRyb2wtemluZGV4OiAxMDtcblxuLy8gMjUuIFBhZ2luYXRpb25cbi8vIC0tLS0tLS0tLS0tLS0tXG5cbiRwYWdpbmF0aW9uLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpO1xuJHBhZ2luYXRpb24tbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW47XG4kcGFnaW5hdGlvbi1pdGVtLWNvbG9yOiAkYmxhY2s7XG4kcGFnaW5hdGlvbi1pdGVtLXBhZGRpbmc6IHJlbS1jYWxjKDMgMTApO1xuJHBhZ2luYXRpb24taXRlbS1zcGFjaW5nOiByZW0tY2FsYygxKTtcbiRwYWdpbmF0aW9uLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4kcGFnaW5hdGlvbi1pdGVtLWJhY2tncm91bmQtaG92ZXI6ICRsaWdodC1ncmF5O1xuJHBhZ2luYXRpb24taXRlbS1iYWNrZ3JvdW5kLWN1cnJlbnQ6ICRwcmltYXJ5LWNvbG9yO1xuJHBhZ2luYXRpb24taXRlbS1jb2xvci1jdXJyZW50OiBmb3JlZ3JvdW5kKCRwYWdpbmF0aW9uLWl0ZW0tYmFja2dyb3VuZC1jdXJyZW50KTtcbiRwYWdpbmF0aW9uLWl0ZW0tY29sb3ItZGlzYWJsZWQ6ICRtZWRpdW0tZ3JheTtcbiRwYWdpbmF0aW9uLWVsbGlwc2lzLWNvbG9yOiAkYmxhY2s7XG4kcGFnaW5hdGlvbi1tb2JpbGUtaXRlbXM6IGZhbHNlO1xuJHBhZ2luYXRpb24tYXJyb3dzOiB0cnVlO1xuXG4vLyAyNi4gUHJvZ3Jlc3MgQmFyXG4vLyAtLS0tLS0tLS0tLS0tLS0tXG5cbiRwcm9ncmVzcy1oZWlnaHQ6IDFyZW07XG4kcHJvZ3Jlc3MtYmFja2dyb3VuZDogJG1lZGl1bS1ncmF5O1xuJHByb2dyZXNzLW1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luO1xuJHByb2dyZXNzLW1ldGVyLWJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xuJHByb2dyZXNzLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG5cbi8vIDI3LiBSZXZlYWxcbi8vIC0tLS0tLS0tLS1cblxuJHJldmVhbC1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kcmV2ZWFsLXdpZHRoOiA2MDBweDtcbiRyZXZlYWwtbWF4LXdpZHRoOiAkZ2xvYmFsLXdpZHRoO1xuJHJldmVhbC1vZmZzZXQ6IHJlbS1jYWxjKDEwMCk7XG4kcmV2ZWFsLXBhZGRpbmc6ICRnbG9iYWwtcGFkZGluZztcbiRyZXZlYWwtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5O1xuJHJldmVhbC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuJHJldmVhbC16aW5kZXg6IDEwMDU7XG4kcmV2ZWFsLW92ZXJsYXktYmFja2dyb3VuZDogcmdiYSgkYmxhY2ssIDAuNDUpO1xuXG4vLyAyOC4gU2xpZGVyXG4vLyAtLS0tLS0tLS0tXG5cbiRzbGlkZXItaGVpZ2h0OiAwLjVyZW07XG4kc2xpZGVyLXdpZHRoLXZlcnRpY2FsOiAkc2xpZGVyLWhlaWdodDtcbiRzbGlkZXItYmFja2dyb3VuZDogJGxpZ2h0LWdyYXk7XG4kc2xpZGVyLWZpbGwtYmFja2dyb3VuZDogJG1lZGl1bS1ncmF5O1xuJHNsaWRlci1oYW5kbGUtaGVpZ2h0OiAxLjRyZW07XG4kc2xpZGVyLWhhbmRsZS13aWR0aDogMS40cmVtO1xuJHNsaWRlci1oYW5kbGUtYmFja2dyb3VuZDogJHByaW1hcnktY29sb3I7XG4kc2xpZGVyLW9wYWNpdHktZGlzYWJsZWQ6IDAuMjU7XG4kc2xpZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4kc2xpZGVyLXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0O1xuXG4vLyAyOS4gU3dpdGNoXG4vLyAtLS0tLS0tLS0tXG5cbiRzd2l0Y2gtYmFja2dyb3VuZDogJG1lZGl1bS1ncmF5O1xuJHN3aXRjaC1iYWNrZ3JvdW5kLWFjdGl2ZTogJHByaW1hcnktY29sb3I7XG4kc3dpdGNoLWhlaWdodDogMnJlbTtcbiRzd2l0Y2gtaGVpZ2h0LXRpbnk6IDEuNXJlbTtcbiRzd2l0Y2gtaGVpZ2h0LXNtYWxsOiAxLjc1cmVtO1xuJHN3aXRjaC1oZWlnaHQtbGFyZ2U6IDIuNXJlbTtcbiRzd2l0Y2gtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiRzd2l0Y2gtbWFyZ2luOiAkZ2xvYmFsLW1hcmdpbjtcbiRzd2l0Y2gtcGFkZGxlLWJhY2tncm91bmQ6ICR3aGl0ZTtcbiRzd2l0Y2gtcGFkZGxlLW9mZnNldDogMC4yNXJlbTtcbiRzd2l0Y2gtcGFkZGxlLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4kc3dpdGNoLXBhZGRsZS10cmFuc2l0aW9uOiBhbGwgMC4yNXMgZWFzZS1vdXQ7XG5cbi8vIDMwLiBUYWJsZVxuLy8gLS0tLS0tLS0tXG5cbiR0YWJsZS1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kdGFibGUtY29sb3Itc2NhbGU6IDUlO1xuJHRhYmxlLWJvcmRlcjogMXB4IHNvbGlkIHNtYXJ0LXNjYWxlKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtY29sb3Itc2NhbGUpO1xuJHRhYmxlLXBhZGRpbmc6IHJlbS1jYWxjKDggMTAgMTApO1xuJHRhYmxlLWhvdmVyLXNjYWxlOiAyJTtcbiR0YWJsZS1yb3ctaG92ZXI6IGRhcmtlbigkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWhvdmVyLXNjYWxlKTtcbiR0YWJsZS1yb3ctc3RyaXBlLWhvdmVyOiBkYXJrZW4oJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1jb2xvci1zY2FsZSArICR0YWJsZS1ob3Zlci1zY2FsZSk7XG4kdGFibGUtc3RyaXBlZC1iYWNrZ3JvdW5kOiBzbWFydC1zY2FsZSgkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWNvbG9yLXNjYWxlKTtcbiR0YWJsZS1zdHJpcGU6IGV2ZW47XG4kdGFibGUtaGVhZC1iYWNrZ3JvdW5kOiBzbWFydC1zY2FsZSgkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWNvbG9yLXNjYWxlIC8gMik7XG4kdGFibGUtZm9vdC1iYWNrZ3JvdW5kOiBzbWFydC1zY2FsZSgkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWNvbG9yLXNjYWxlKTtcbiR0YWJsZS1oZWFkLWZvbnQtY29sb3I6ICRib2R5LWZvbnQtY29sb3I7XG4kc2hvdy1oZWFkZXItZm9yLXN0YWNrZWQ6IGZhbHNlO1xuXG4vLyAzMS4gVGFic1xuLy8gLS0tLS0tLS1cblxuJHRhYi1tYXJnaW46IDA7XG4kdGFiLWJhY2tncm91bmQ6ICR3aGl0ZTtcbiR0YWItYmFja2dyb3VuZC1hY3RpdmU6ICRsaWdodC1ncmF5O1xuJHRhYi1ib3JkZXI6ICRsaWdodC1ncmF5O1xuJHRhYi1pdGVtLWNvbG9yOiBmb3JlZ3JvdW5kKCR0YWItYmFja2dyb3VuZCwgJHByaW1hcnktY29sb3IpO1xuJHRhYi1pdGVtLWJhY2tncm91bmQtaG92ZXI6ICR3aGl0ZTtcbiR0YWItaXRlbS1wYWRkaW5nOiAxLjI1cmVtIDEuNXJlbTtcbiR0YWItZXhwYW5kLW1heDogNjtcbiR0YWItY29udGVudC1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kdGFiLWNvbnRlbnQtYm9yZGVyOiAkbGlnaHQtZ3JheTtcbiR0YWItY29udGVudC1jb2xvcjogZm9yZWdyb3VuZCgkdGFiLWJhY2tncm91bmQsICRwcmltYXJ5LWNvbG9yKTtcbiR0YWItY29udGVudC1wYWRkaW5nOiAxcmVtO1xuXG4vLyAzMi4gVGh1bWJuYWlsXG4vLyAtLS0tLS0tLS0tLS0tXG5cbiR0aHVtYm5haWwtYm9yZGVyOiBzb2xpZCA0cHggJHdoaXRlO1xuJHRodW1ibmFpbC1tYXJnaW4tYm90dG9tOiAkZ2xvYmFsLW1hcmdpbjtcbiR0aHVtYm5haWwtc2hhZG93OiAwIDAgMCAxcHggcmdiYSgkYmxhY2ssIDAuMik7XG4kdGh1bWJuYWlsLXNoYWRvdy1ob3ZlcjogMCAwIDZweCAxcHggcmdiYSgkcHJpbWFyeS1jb2xvciwgMC41KTtcbiR0aHVtYm5haWwtdHJhbnNpdGlvbjogYm94LXNoYWRvdyAyMDBtcyBlYXNlLW91dDtcbiR0aHVtYm5haWwtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcblxuLy8gMzMuIFRvb2x0aXBcbi8vIC0tLS0tLS0tLS0tXG5cbiR0b29sdGlwLWJhY2tncm91bmQtY29sb3I6ICRibGFjaztcbiR0b29sdGlwLWNvbG9yOiAkd2hpdGU7XG4kdG9vbHRpcC1wYWRkaW5nOiAwLjc1cmVtO1xuJHRvb2x0aXAtZm9udC1zaXplOiAkc21hbGwtZm9udC1zaXplO1xuJHRvb2x0aXAtcGlwLXdpZHRoOiAwLjc1cmVtO1xuJHRvb2x0aXAtcGlwLWhlaWdodDogJHRvb2x0aXAtcGlwLXdpZHRoICogMC44NjY7XG4kdG9vbHRpcC1waXAtb2Zmc2V0OiAxLjI1cmVtO1xuJHRvb2x0aXAtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcblxuLy8gMzQuIFRvcCBCYXJcbi8vIC0tLS0tLS0tLS0tXG5cbiR0b3BiYXItcGFkZGluZzogMC41cmVtO1xuJHRvcGJhci1iYWNrZ3JvdW5kOiAkYmxhY2s7XG4kdG9wYmFyLWxpbmstY29sb3I6ICNmZmY7XG4kdG9wYmFyLWlucHV0LXdpZHRoOiAyMDBweDtcbiR0b3BiYXItbGluay1iZy1hY3RpdmU6ICRibGFjaztcblxuJG1lbnUtaXRlbS1iYWNrZ3JvdW5kLWFjdGl2ZTogJGJsYWNrO1xuJG1lbnUtaXRlbS1jb2xvci1hY3RpdmU6JHJlZDtcbi8vIFNldCB0aGUgbGluayBjb2xvcnMgYW5kIHN0eWxlcyBmb3IgdG9wLWxldmVsIG5hdlxuLy8gJHRvcGJhci1saW5rLWNvbG9yOiAkd2hpdGU7XG4vLyAkdG9wYmFyLWxpbmstY29sb3ItaG92ZXI6ICR3aGl0ZTtcbi8vICR0b3BiYXItbGluay1jb2xvci1hY3RpdmU6ICR3aGl0ZTtcbi8vICR0b3BiYXItbGluay1jb2xvci1hY3RpdmUtaG92ZXI6ICR3aGl0ZTtcbi8vICR0b3BiYXItbGluay13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWw7XG4vLyAkdG9wYmFyLWxpbmstZm9udC1zaXplOiByZW0tY2FsYygxMyk7XG4vLyAkdG9wYmFyLWxpbmstaG92ZXItbGlnaHRuZXNzOiAtMTAlOyAvLyBEYXJrZW4gYnkgMTAlXG4vLyAkdG9wYmFyLWxpbmstYmc6ICR0b3BiYXItYmc7XG4vLyAkdG9wYmFyLWxpbmstYmctaG92ZXI6ICRqZXQ7XG4vLyAkdG9wYmFyLWxpbmstYmctY29sb3ItaG92ZXI6ICRjaGFyY29hbDtcbiAkdG9wYmFyLWxpbmstYmctYWN0aXZlOiAkcHJpbWFyeS1jb2xvcjtcbi8vICR0b3BiYXItbGluay1iZy1hY3RpdmUtaG92ZXI6IHNjYWxlLWNvbG9yKCRwcmltYXJ5LWNvbG9yLCAkbGlnaHRuZXNzOiAtMTQlKTtcbi8vICR0b3BiYXItbGluay1mb250LWZhbWlseTogJGJvZHktZm9udC1mYW1pbHk7XG4vLyAkdG9wYmFyLWxpbmstdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4vLyAkdG9wYmFyLWxpbmstcGFkZGluZzogKCR0b3BiYXItaGVpZ2h0IC8gMyk7XG4vLyAkdG9wYmFyLWJhY2stbGluay1zaXplOiByZW0tY2FsYygxOCk7XG4vLyAkdG9wYmFyLWxpbmstZHJvcGRvd24tcGFkZGluZzogcmVtLWNhbGMoMjApO1xuLy8gJHRvcGJhci1idXR0b24tZm9udC1zaXplOiAuNzVyZW07XG4vLyAkdG9wYmFyLWJ1dHRvbi10b3A6IDdweDtcbi8vXG5cbiRsYXJnZXItcm93OjEwMi41cmVtO1xuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZnVuY3Rpb25zXG4vLy8vXG5cbi8vLyBDcmVhdGVzIGEgQ1NTIHRyaWFuZ2xlLCB3aGljaCBjYW4gYmUgdXNlZCBmb3IgZHJvcGRvd24gYXJyb3dzLCBkcm9wZG93biBwaXBzLCBhbmQgbW9yZS4gVXNlIHRoaXMgbWl4aW4gaW5zaWRlIGEgYCY6OmJlZm9yZWAgb3IgYCY6OmFmdGVyYCBzZWxlY3RvciwgdG8gYXR0YWNoIHRoZSB0cmlhbmdsZSB0byBhbiBleGlzdGluZyBlbGVtZW50LlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR0cmlhbmdsZS1zaXplIC0gV2lkdGggb2YgdGhlIHRyaWFuZ2xlLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICR0cmlhbmdsZS1jb2xvciAtIENvbG9yIG9mIHRoZSB0cmlhbmdsZS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICR0cmlhbmdsZS1kaXJlY3Rpb24gLSBEaXJlY3Rpb24gdGhlIHRyaWFuZ2xlIHBvaW50cy4gQ2FuIGJlIGB1cGAsIGByaWdodGAsIGBkb3duYCwgb3IgYGxlZnRgLlxuQG1peGluIGNzcy10cmlhbmdsZShcbiAgJHRyaWFuZ2xlLXNpemUsXG4gICR0cmlhbmdsZS1jb2xvcixcbiAgJHRyaWFuZ2xlLWRpcmVjdGlvblxuKSB7XG4gIGNvbnRlbnQ6ICcnO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbiAgYm9yZGVyOiBpbnNldCAkdHJpYW5nbGUtc2l6ZTtcblxuICBAaWYgKCR0cmlhbmdsZS1kaXJlY3Rpb24gPT0gZG93bikge1xuICAgIGJvcmRlci1jb2xvcjogJHRyaWFuZ2xlLWNvbG9yIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci10b3Atc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gIH1cbiAgQGlmICgkdHJpYW5nbGUtZGlyZWN0aW9uID09IHVwKSB7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAkdHJpYW5nbGUtY29sb3I7XG4gICAgYm9yZGVyLWJvdHRvbS1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLXRvcC13aWR0aDogMDtcbiAgfVxuICBAaWYgKCR0cmlhbmdsZS1kaXJlY3Rpb24gPT0gcmlnaHQpIHtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICR0cmlhbmdsZS1jb2xvcjtcbiAgICBib3JkZXItbGVmdC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLXJpZ2h0LXdpZHRoOiAwO1xuICB9XG4gIEBpZiAoJHRyaWFuZ2xlLWRpcmVjdGlvbiA9PSBsZWZ0KSB7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCAkdHJpYW5nbGUtY29sb3IgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLXJpZ2h0LXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItbGVmdC13aWR0aDogMDtcbiAgfVxufVxuXG4vLy8gQ3JlYXRlcyBhIG1lbnUgaWNvbiB3aXRoIGEgc2V0IHdpZHRoLCBoZWlnaHQsIG51bWJlciBvZiBiYXJzLCBhbmQgY29sb3JzLiBUaGUgbWl4aW4gdXNlcyB0aGUgaGVpZ2h0IG9mIHRoZSBpY29uIGFuZCB0aGUgd2VpZ2h0IG9mIHRoZSBiYXJzIHRvIGRldGVybWluZSBzcGFjaW5nLiA8ZGl2IGNsYXNzPVwiZG9jcy1leGFtcGxlLWJ1cmdlclwiPjwvZGl2PlxuLy8vXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIFskYmxhY2tdIC0gQ29sb3IgdG8gdXNlIGZvciB0aGUgaWNvbi5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3ItaG92ZXIgWyRkYXJrLWdyYXldIC0gQ29sb3IgdG8gdXNlIHdoZW4gdGhlIGljb24gaXMgaG92ZXJlZCBvdmVyLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkd2lkdGggWzIwcHhdIC0gV2lkdGggb2YgdGhlIGljb24uXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRoZWlnaHQgWzE2cHhdIC0gSGVpZ2h0IG9mIHRoZSBpY29uLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkd2VpZ2h0IFsycHhdIC0gSGVpZ2h0IG9mIGluZGl2aWR1YWwgYmFycyBpbiB0aGUgaWNvbi5cbi8vLyBAcGFyYW0ge051bWJlcn0gJGJhcnMgWzNdIC0gTnVtYmVyIG9mIGJhcnMgaW4gdGhlIGljb24uXG5AbWl4aW4gaGFtYnVyZ2VyKFxuICAkY29sb3I6ICRibGFjayxcbiAgJGNvbG9yLWhvdmVyOiAkZGFyay1ncmF5LFxuICAkd2lkdGg6IDIwcHgsXG4gICRoZWlnaHQ6IDE2cHgsXG4gICR3ZWlnaHQ6IDJweCxcbiAgJGJhcnM6IDNcbikge1xuICAvLyBib3gtc2hhZG93IENTUyBvdXRwdXRcbiAgJHNoYWRvdzogKCk7XG4gICRob3Zlci1zaGFkb3c6ICgpO1xuXG4gIC8vIFNwYWNpbmcgYmV0d2VlbiBiYXJzIGlzIGNhbGN1bGF0ZWQgYmFzZWQgb24gdGhlIHRvdGFsIGhlaWdodCBvZiB0aGUgaWNvbiBhbmQgdGhlIHdlaWdodCBvZiBlYWNoIGJhclxuICAkc3BhY2luZzogZmxvb3IoKCRoZWlnaHQgLSAoJHdlaWdodCAqICRiYXJzKSkgLyAoJGJhcnMgLSAxKSk7XG5cbiAgLy8gSWNvbiBjb250YWluZXJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgd2lkdGg6ICR3aWR0aDtcbiAgaGVpZ2h0OiAkaGVpZ2h0O1xuXG4gIC8vIEljb24gYmFyc1xuICAmOjphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogJHdlaWdodDtcbiAgICBiYWNrZ3JvdW5kOiAkY29sb3I7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG5cbiAgICBAZm9yICRpIGZyb20gMiB0aHJvdWdoICRiYXJzIHtcbiAgICAgICRvZmZzZXQ6ICgkd2VpZ2h0ICsgJHNwYWNpbmcpICogKCRpIC0gMSk7XG4gICAgICAkc2hhZG93OiBhcHBlbmQoJHNoYWRvdywgMCAkb2Zmc2V0IDAgJGNvbG9yLCBjb21tYSk7XG4gICAgfVxuXG4gICAgYm94LXNoYWRvdzogJHNoYWRvdztcbiAgfVxuXG4gIC8vIEhvdmVyIHN0YXRlXG4gIEBpZiAkY29sb3ItaG92ZXIge1xuICAgIC8vIEdlbmVyYXRlIENTU1xuICAgIEBmb3IgJGkgZnJvbSAyIHRocm91Z2ggJGJhcnMge1xuICAgICAgJG9mZnNldDogKCR3ZWlnaHQgKyAkc3BhY2luZykgKiAoJGkgLSAxKTtcbiAgICAgICRob3Zlci1zaGFkb3c6IGFwcGVuZCgkaG92ZXItc2hhZG93LCAwICRvZmZzZXQgMCAkY29sb3ItaG92ZXIsIGNvbW1hKTtcbiAgICB9XG5cbiAgICAmOmhvdmVyOjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kOiAkY29sb3ItaG92ZXI7XG4gICAgICBib3gtc2hhZG93OiAkaG92ZXItc2hhZG93O1xuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyBhIGRvd253YXJkLWZhY2luZyB0cmlhbmdsZSBhcyBhIGJhY2tncm91bmQgaW1hZ2UgdG8gYW4gZWxlbWVudC4gVGhlIGltYWdlIGlzIGZvcm1hdHRlZCBhcyBhbiBTVkcsIG1ha2luZyBpdCBlYXN5IHRvIGNoYW5nZSB0aGUgY29sb3IuIEJlY2F1c2UgSW50ZXJuZXQgRXhwbG9yZXIgZG9lc24ndCBzdXBwb3J0IGVuY29kZWQgU1ZHcyBhcyBiYWNrZ3JvdW5kIGltYWdlcywgYSBQTkcgZmFsbGJhY2sgaXMgYWxzbyBpbmNsdWRlZC5cbi8vLyBUaGVyZSBhcmUgdHdvIFBORyBmYWxsYmFja3M6IGEgYmxhY2sgdHJpYW5nbGUgYW5kIGEgd2hpdGUgdHJpYW5nbGUuIFRoZSBvbmUgdXNlZCBkZXBlbmRzIG9uIHRoZSBsaWdodG5lc3Mgb2YgdGhlIGlucHV0IGNvbG9yLlxuLy8vXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIFskYmxhY2tdIC0gQ29sb3IgdG8gdXNlIGZvciB0aGUgdHJpYW5nbGUuXG5AbWl4aW4gYmFja2dyb3VuZC10cmlhbmdsZSgkY29sb3I6ICRibGFjaykge1xuICAkcmdiOiAncmdiJTI4I3tyZWQoJGNvbG9yKX0sICN7Z3JlZW4oJGNvbG9yKX0sICN7Ymx1ZSgkY29sb3IpfSUyOSc7XG5cbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCdkYXRhOmltYWdlL3N2Zyt4bWw7dXRmOCw8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB2ZXJzaW9uPVwiMS4xXCIgd2lkdGg9XCIzMlwiIGhlaWdodD1cIjI0XCIgdmlld0JveD1cIjAgMCAzMiAyNFwiPjxwb2x5Z29uIHBvaW50cz1cIjAsMCAzMiwwIDE2LDI0XCIgc3R5bGU9XCJmaWxsOiAjeyRyZ2J9XCI+PC9wb2x5Z29uPjwvc3ZnPicpO1xuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6MFxcMCkge1xuICAgIEBpZiBsaWdodG5lc3MoJGNvbG9yKSA8IDYwJSB7XG4gICAgICAvLyBXaGl0ZSB0cmlhbmdsZVxuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCdkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUNBQUFBQVlDQVlBQUFDYlUvODBBQUFBR1hSRldIUlRiMlowZDJGeVpRQkJaRzlpWlNCSmJXRm5aVkpsWVdSNWNjbGxQQUFBQUlwSlJFRlVlTnJFa2NrTmdEQU1CQmZSa0V0ME9iUkJCZHNHWFVEZ21RZks0WGhIMm04Y3pRQUF5MjdSM3RzdzRRZmUyeDh1T082b1lMYjZHbE9vcjNHRitzd1VSQU9tVUorUnd0RUpzOVd2VEdFWXhCWHFJMU1RQVpoQ2ZVUUtSekRNVmorVHdyQUlWNmp2U1VFa1lBcjFMU2tjeVRCYi9WK0tZZlg3eEFldXNxM3NMRHRHSDNrRUdBQ1BXSWZsTlpmaFJRQUFBQUJKUlU1RXJrSmdnZz09Jyk7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIC8vIEJsYWNrIHRyaWFuZ2xlXG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2RhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBQ0FBQUFBWUNBWUFBQUNiVS84MEFBQUFHWFJGV0hSVGIyWjBkMkZ5WlFCQlpHOWlaU0JKYldGblpWSmxZV1I1Y2NsbFBBQUFBTUJKUkVGVWVOckVsbHNPaENBTVJWc3pDOUlselU3S0NtVkhUSnNvTVdZTVV0cHl2OUJnYnVYUUI1WlNkZ0JZWVk0eWNnQml2azhLWUZzUU1mTWlUVEJQNG8zblV6Q0t6T2FiTEpiTHkyL2czMWV2R2tBZ2luUjQvWmVnS0g1cVgzYkpDc2NBM3QweDNrZ081dFFGeWhoRmY1MHhScUZMYnlNVU5KUXpneWpHUy93Z0Nwdktxa1JCcHVXckU0VjlkKzFFNGRQVVhxSWcxMDdTUU9FLzJEUlF4TXdURHlnSUluVkRFVDlUM2xDb2ovNmovVkNtR2paT2wybEtwWjhBQXdEUVA3eklpbURHRlFBQUFBQkpSVTVFcmtKZ2dnPT0nKTtcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFwcGxpZXMgdGhlIG1pY3JvIGNsZWFyZml4IGhhY2sgcG9wdWxhcml6ZWQgYnkgTmljb2xhcyBHYWxsYWdoZXIuIEluY2x1ZGUgdGhpcyBtaXhpbiBvbiBhIGNvbnRhaW5lciBpZiBpdHMgY2hpbGRyZW4gYXJlIGFsbCBmbG9hdGVkLCB0byBnaXZlIHRoZSBjb250YWluZXIgYSBwcm9wZXIgaGVpZ2h0LlxuLy8vIFRoZSBjbGVhcmZpeCBpcyBhdWdtZW50ZWQgd2l0aCBzcGVjaWZpYyBzdHlsZXMgdG8gcHJldmVudCBib3JkZXJzIGluIGZsZXhib3ggZW52aXJvbm1lbnRzXG4vLy8gQGxpbmsgaHR0cDovL25pY29sYXNnYWxsYWdoZXIuY29tL21pY3JvLWNsZWFyZml4LWhhY2svIE1pY3JvIENsZWFyZml4IEhhY2tcbi8vLyBAbGluayBodHRwOi8vZGFuaXNhZGVzaWduZXIuY29tL2Jsb2cvZmxleGJveC1jbGVhci1maXgtcHNldWRvLWVsZW1lbnRzLyBGbGV4Ym94IGZpeFxuQG1peGluIGNsZWFyZml4IHtcbiAgJjo6YmVmb3JlLFxuICAmOjphZnRlciB7XG4gICAgY29udGVudDogJyAnO1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgZmxleC1iYXNpczogMDtcbiAgICAgIG9yZGVyOiAxO1xuICAgIH1cbiAgfVxuXG4gICY6OmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDtcbiAgfVxufVxuXG4vLy8gQWRkcyBDU1MgZm9yIGEgXCJxdWFudGl0eSBxdWVyeVwiIHNlbGVjdG9yIHRoYXQgYXV0b21hdGljYWxseSBzaXplcyBlbGVtZW50cyBiYXNlZCBvbiBob3cgbWFueSB0aGVyZSBhcmUgaW5zaWRlIGEgY29udGFpbmVyLlxuLy8vIEBsaW5rIGh0dHA6Ly9hbGlzdGFwYXJ0LmNvbS9hcnRpY2xlL3F1YW50aXR5LXF1ZXJpZXMtZm9yLWNzcyBRdWFudGl0eSBRdWVyaWVzIGZvciBDU1Ncbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkbWF4IC0gTWF4aW11bSBudW1iZXIgb2YgaXRlbXMgdG8gZGV0ZWN0LiBUaGUgaGlnaGVyIHRoaXMgbnVtYmVyIGlzLCB0aGUgbW9yZSBDU1MgdGhhdCdzIHJlcXVpcmVkIHRvIGNvdmVyIGVhY2ggbnVtYmVyIG9mIGl0ZW1zLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGVsZW0gW2xpXSAtIFRhZyB0byB1c2UgZm9yIHNpYmxpbmcgc2VsZWN0b3JzLlxuQG1peGluIGF1dG8td2lkdGgoJG1heCwgJGVsZW06IGxpKSB7XG4gIEBmb3IgJGkgZnJvbSAyIHRocm91Z2ggJG1heCB7XG4gICAgJjpudGgtbGFzdC1jaGlsZCgjeyRpfSk6Zmlyc3QtY2hpbGQsXG4gICAgJjpudGgtbGFzdC1jaGlsZCgjeyRpfSk6Zmlyc3QtY2hpbGQgfiAjeyRlbGVtfSB7XG4gICAgICB3aWR0aDogcGVyY2VudGFnZSgxIC8gJGkpO1xuICAgIH1cbiAgfVxufVxuXG4vLy8gUmVtb3ZlcyB0aGUgZm9jdXMgcmluZyBhcm91bmQgYW4gZWxlbWVudCB3aGVuIGEgbW91c2UgaW5wdXQgaXMgZGV0ZWN0ZWQuXG5AbWl4aW4gZGlzYWJsZS1tb3VzZS1vdXRsaW5lIHtcbiAgW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddICYge1xuICAgIG91dGxpbmU6IDA7XG4gIH1cbn1cblxuLy8vIE1ha2VzIGFuIGVsZW1lbnQgdmlzdWFsbHkgaGlkZGVuLCBidXQgc3RpbGwgYWNjZXNzaWJsZSB0byBrZXlib2FyZHMgYW5kIGFzc2lzdGl2ZSBkZXZpY2VzLlxuLy8vIEBsaW5rIGh0dHA6Ly9zbm9vay5jYS9hcmNoaXZlcy9odG1sX2FuZF9jc3MvaGlkaW5nLWNvbnRlbnQtZm9yLWFjY2Vzc2liaWxpdHkgSGlkaW5nIENvbnRlbnQgZm9yIEFjY2Vzc2liaWxpdHlcbkBtaXhpbiBlbGVtZW50LWludmlzaWJsZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICB3aWR0aDogMXB4O1xuICBoZWlnaHQ6IDFweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgY2xpcDogcmVjdCgwLCAwLCAwLCAwKTtcbn1cblxuLy8vIFJldmVyc2VzIHRoZSBDU1Mgb3V0cHV0IGNyZWF0ZWQgYnkgdGhlIGBlbGVtZW50LWludmlzaWJsZSgpYCBtaXhpbi5cbkBtaXhpbiBlbGVtZW50LWludmlzaWJsZS1vZmYge1xuICBwb3NpdGlvbjogc3RhdGljICFpbXBvcnRhbnQ7XG4gIGhlaWdodDogYXV0bztcbiAgd2lkdGg6IGF1dG87XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xuICBjbGlwOiBhdXRvO1xufVxuXG4vLy8gVmVydGljYWxseSBjZW50ZXJzIHRoZSBlbGVtZW50IGluc2lkZSBvZiBpdHMgZmlyc3Qgbm9uLXN0YXRpYyBwYXJlbnQsXG4vLy8gQGxpbmsgaHR0cDovL3d3dy5zaXRlcG9pbnQuY29tL2NlbnRlcmluZy13aXRoLXNhc3MvIENlbnRlcmluZyBXaXRoIFNhc3NcbkBtaXhpbiB2ZXJ0aWNhbC1jZW50ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG59XG5cbi8vLyBIb3Jpem9udGFsbHkgY2VudGVycyB0aGUgZWxlbWVudCBpbnNpZGUgb2YgaXRzIGZpcnN0IG5vbi1zdGF0aWMgcGFyZW50LFxuLy8vIEBsaW5rIGh0dHA6Ly93d3cuc2l0ZXBvaW50LmNvbS9jZW50ZXJpbmctd2l0aC1zYXNzLyBDZW50ZXJpbmcgV2l0aCBTYXNzXG5AbWl4aW4gaG9yaXpvbnRhbC1jZW50ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xufVxuXG4vLy8gQWJzb2x1dGVseSBjZW50ZXJzIHRoZSBlbGVtZW50IGluc2lkZSBvZiBpdHMgZmlyc3Qgbm9uLXN0YXRpYyBwYXJlbnQsXG4vLy8gQGxpbmsgaHR0cDovL3d3dy5zaXRlcG9pbnQuY29tL2NlbnRlcmluZy13aXRoLXNhc3MvIENlbnRlcmluZyBXaXRoIFNhc3NcbkBtaXhpbiBhYnNvbHV0ZS1jZW50ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xufVxuXG4vLy8gSXRlcmF0ZXMgdGhyb3VnaCBicmVha3BvaW50cyBkZWZpbmVkIGluIGAkYnJlYWtwb2ludC1jbGFzc2VzYCBhbmQgcHJpbnRzIHRoZSBDU1MgaW5zaWRlIHRoZSBtaXhpbiBhdCBlYWNoIGJyZWFrcG9pbnQncyBtZWRpYSBxdWVyeS4gVXNlIHRoaXMgd2l0aCB0aGUgZ3JpZCwgb3IgYW55IG90aGVyIGNvbXBvbmVudCB0aGF0IGhhcyByZXNwb25zaXZlIGNsYXNzZXMuXG4vLy9cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRzbWFsbCBbdHJ1ZV0gLSBJZiBgZmFsc2VgLCB0aGUgbWl4aW4gd2lsbCBza2lwIHRoZSBgc21hbGxgIGJyZWFrcG9pbnQuIFVzZSB0aGlzIHdpdGggY29tcG9uZW50cyB0aGF0IGRvbid0IHByZWZpeCBjbGFzc2VzIHdpdGggYHNtYWxsLWAsIG9ubHkgYG1lZGl1bS1gIGFuZCB1cC5cbkBtaXhpbiAtemYtZWFjaC1icmVha3BvaW50KCRzbWFsbDogdHJ1ZSkge1xuICAkbWFwOiAkYnJlYWtwb2ludC1jbGFzc2VzO1xuXG4gIEBpZiBub3QgJHNtYWxsIHtcbiAgICAkbWFwOiBtYXAtcmVtb3ZlKCRtYXAsICQtemYtemVyby1icmVha3BvaW50KTtcbiAgfVxuXG4gIEBlYWNoICRzaXplIGluICRtYXAge1xuICAgICQtemYtc2l6ZTogJHNpemUgIWdsb2JhbDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZ3JpZFxuLy8vL1xuXG4vLy8gT3V0cHV0cyBDU1MgY2xhc3NlcyBmb3IgdGhlIGdyaWQuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG5AbWl4aW4gZm91bmRhdGlvbi1ncmlkKFxuICAkcm93OiAncm93JyxcbiAgJGNvbHVtbjogJ2NvbHVtbicsXG4gICRjb2x1bW4tcm93OiAnY29sdW1uLXJvdycsXG4gICRwdXNoOiAncHVzaCcsXG4gICRwdWxsOiAncHVsbCcsXG4gICRjZW50ZXI6ICdjZW50ZXJlZCcsXG4gICR1bmNlbnRlcjogJ3VuY2VudGVyZWQnLFxuICAkY29sbGFwc2U6ICdjb2xsYXBzZScsXG4gICR1bmNvbGxhcHNlOiAndW5jb2xsYXBzZScsXG4gICRvZmZzZXQ6ICdvZmZzZXQnLFxuICAkZW5kOiAnZW5kJyxcbiAgJGV4cGFuZGVkOiAnZXhwYW5kZWQnXG4pIHtcbiAgLy8gUm93XG4gIC4jeyRyb3d9IHtcbiAgICBAaW5jbHVkZSBncmlkLXJvdztcblxuICAgIC8vIENvbGxhcHNpbmdcbiAgICAmLiN7JGNvbGxhcHNlfSB7XG4gICAgICA+IC4jeyRjb2x1bW59IHtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2wtY29sbGFwc2U7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gTmVzdGluZ1xuICAgICYgJiB7XG4gICAgICBAaW5jbHVkZSBncmlkLXJvdy1uZXN0KCRncmlkLWNvbHVtbi1ndXR0ZXIpO1xuXG4gICAgICAmLiN7JGNvbGxhcHNlfSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gRXhwYW5kZWQgKGZ1bGwtd2lkdGgpIHJvd1xuICAgICYuI3skZXhwYW5kZWR9IHtcbiAgICAgIG1heC13aWR0aDogbm9uZTtcblxuICAgICAgLiN7JHJvd30ge1xuICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIENvbHVtblxuICAuI3skY29sdW1ufSB7XG4gICAgQGluY2x1ZGUgZ3JpZC1jb2w7XG5cbiAgICBAaWYgJGdyaWQtY29sdW1uLWFsaWduLWVkZ2Uge1xuICAgICAgJi4jeyRlbmR9IHtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2wtZW5kO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIENvbHVtbiByb3dcbiAgLy8gVGhlIGRvdWJsZSAucm93IGNsYXNzIGlzIG5lZWRlZCB0byBidW1wIHVwIHRoZSBzcGVjaWZpY2l0eVxuICAuI3skY29sdW1ufS4jeyRyb3d9LiN7JHJvd30ge1xuICAgIGZsb2F0OiBub25lO1xuXG4gICAgLy8gVG8gcHJvcGVybHkgbmVzdCBhIGNvbHVtbiByb3csIHBhZGRpbmcgYW5kIG1hcmdpbiBpcyByZW1vdmVkXG4gICAgLiN7JHJvd30gJiB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludCB7XG4gICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkZ3JpZC1jb2x1bW4tY291bnQge1xuICAgICAgLy8gQ29sdW1uIHdpZHRoXG4gICAgICAuI3skLXpmLXNpemV9LSN7JGl9IHtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2wtc2l6ZSgkaSk7XG4gICAgICB9XG5cbiAgICAgIC8vIFNvdXJjZSBvcmRlcmluZ1xuICAgICAgQGlmICRpIDwgJGdyaWQtY29sdW1uLWNvdW50IHtcbiAgICAgICAgLiN7JC16Zi1zaXplfS0jeyRwdXNofS0jeyRpfSB7XG4gICAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2wtcG9zKCRpKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC4jeyQtemYtc2l6ZX0tI3skcHVsbH0tI3skaX0ge1xuICAgICAgICAgIEBpbmNsdWRlIGdyaWQtY29sLXBvcygtJGkpO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC8vIE9mZnNldHNcbiAgICAgICRvOiAkaSAtIDE7XG5cbiAgICAgIC4jeyQtemYtc2l6ZX0tI3skb2Zmc2V0fS0jeyRvfSB7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQtY29sLW9mZigkbyk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gQmxvY2sgZ3JpZFxuICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGJsb2NrLWdyaWQtbWF4IHtcbiAgICAgIC4jeyQtemYtc2l6ZX0tdXAtI3skaX0ge1xuICAgICAgICBAaW5jbHVkZSBncmlkLWxheW91dCgkaSwgXCIuI3skY29sdW1ufVwiKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBSZXNwb25zaXZlIGNvbGxhcHNpbmdcbiAgICAuI3skLXpmLXNpemV9LSN7JGNvbGxhcHNlfSB7XG4gICAgICA+IC4jeyRjb2x1bW59IHsgQGluY2x1ZGUgZ3JpZC1jb2wtY29sbGFwc2U7IH1cblxuICAgICAgLiN7JHJvd30ge1xuICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgfVxuICAgIH1cblxuICAgIC4jeyQtemYtc2l6ZX0tI3skdW5jb2xsYXBzZX0ge1xuICAgICAgJGd1dHRlcjogLXpmLWdldC1icC12YWwoJGdyaWQtY29sdW1uLWd1dHRlciwgJC16Zi1zaXplKTtcblxuICAgICAgPiAuI3skY29sdW1ufSB7IEBpbmNsdWRlIGdyaWQtY29sLXVuY29sbGFwc2UoJGd1dHRlcik7IH1cbiAgICB9XG5cbiAgICAvLyBQb3NpdGlvbmluZ1xuICAgIC4jeyQtemYtc2l6ZX0tI3skY2VudGVyfSB7XG4gICAgICBAaW5jbHVkZSBncmlkLWNvbC1wb3MoY2VudGVyKTtcbiAgICB9XG5cbiAgICAvLyBHdXR0ZXIgYWRqdXN0bWVudFxuICAgIC4jeyQtemYtc2l6ZX0tI3skdW5jZW50ZXJ9LFxuICAgIC4jeyQtemYtc2l6ZX0tI3skcHVzaH0tMCxcbiAgICAuI3skLXpmLXNpemV9LSN7JHB1bGx9LTAge1xuICAgICAgQGluY2x1ZGUgZ3JpZC1jb2wtdW5wb3M7XG4gICAgfVxuICB9XG5cbiAgQGlmICRjb2x1bW4gPT0gJ2NvbHVtbicge1xuICAgIC5jb2x1bW5zIHtcbiAgICAgIC8vIHNjc3MtbGludDpkaXNhYmxlIFBsYWNlaG9sZGVySW5FeHRlbmRcbiAgICAgIEBleHRlbmQgLmNvbHVtbjtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGdyaWRcbi8vLy9cblxuLy8vIENoYW5nZSB0aGUgYmVoYXZpb3Igb2YgY29sdW1ucyBkZWZpbmVkIGluc2lkZSB0aGlzIG1peGluIHRvIHVzZSBhIGRpZmZlcmVudCBjb2x1bW4gY291bnQuXG4vLy8gQGNvbnRlbnRcbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkY29sdW1ucyAtIE51bWJlciBvZiBjb2x1bW5zIHRvIHVzZS5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRyb290IFtmYWxzZV1cbi8vLyAgIElmIGBmYWxzZWAsIHNlbGVjdG9ycyBpbnNpZGUgdGhpcyBtaXhpbiB3aWxsIG5lc3QgaW5zaWRlIHRoZSBwYXJlbnQgc2VsZWN0b3IuXG4vLy8gICBJZiBgdHJ1ZWAsIHNlbGVjdG9ycyB3aWxsIG5vdCBuZXN0LlxuQG1peGluIGdyaWQtY29udGV4dChcbiAgJGNvbHVtbnMsXG4gICRyb290OiBmYWxzZVxuKSB7XG4gIC8vIFN0b3JlIHRoZSBjdXJyZW50IGNvbHVtbiBjb3VudCBzbyBpdCBjYW4gYmUgcmUtc2V0IGxhdGVyXG4gICRvbGQtZ3JpZC1jb2x1bW4tY291bnQ6ICRncmlkLWNvbHVtbi1jb3VudDtcbiAgJGdyaWQtY29sdW1uLWNvdW50OiAkY29sdW1ucyAhZ2xvYmFsO1xuXG4gIEBpZiAkcm9vdCB7XG4gICAgQGF0LXJvb3QgeyBAY29udGVudDsgfVxuICB9XG4gIEBlbHNlIHtcbiAgICBAY29udGVudDtcbiAgfVxuXG4gIC8vIFJlc3RvcmUgdGhlIG9sZCBjb2x1bW4gY291bnRcbiAgJGdyaWQtY29sdW1uLWNvdW50OiAkb2xkLWdyaWQtY29sdW1uLWNvdW50O1xufVxuXG4vLy8gQ3JlYXRlcyBhIGdyaWQgcm93LlxuLy8vIEBjb250ZW50XG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJGNvbHVtbnMgW251bGxdIC0gQ29sdW1uIGNvdW50IGZvciB0aGlzIHJvdy4gYG51bGxgIHdpbGwgdXNlIHRoZSBkZWZhdWx0IGNvbHVtbiBjb3VudC5cbi8vLyBAcGFyYW0ge0tleXdvcmRzfSAkYmVoYXZpb3IgW251bGxdXG4vLy8gICBNb2RpZmljYXRpb25zIHRvIHRoZSBkZWZhdWx0IGdyaWQgc3R5bGVzLiBgbmVzdGAgaW5kaWNhdGVzIHRoZSByb3cgd2lsbCBiZSBwbGFjZWQgaW5zaWRlIGFub3RoZXIgcm93LiBgY29sbGFwc2VgIGluZGljYXRlcyB0aGF0IHRoZSBjb2x1bW5zIGluc2lkZSB0aGlzIHJvdyB3aWxsIG5vdCBoYXZlIHBhZGRpbmcuIGBuZXN0IGNvbGxhcHNlYCBjb21iaW5lcyBib3RoIGJlaGF2aW9ycy5cbi8vLyBAcGFyYW0ge051bWJlcn0gJHdpZHRoIFskZ3JpZC1yb3ctd2lkdGhdIC0gTWF4aW11bSB3aWR0aCBvZiB0aGUgcm93LlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGNmIFt0cnVlXSAtIFdoZXRoZXIgb3Igbm90IHRvIGluY2x1ZGUgYSBjbGVhcmZpeC5cbi8vLyBAcGFyYW0ge051bWJlcn0gJGd1dHRlciBbJGdyaWQtY29sdW1uLWd1dHRlcl0gLSBHdXR0ZXIgdG8gdXNlIHdoZW4gaW52ZXJ0aW5nIG1hcmdpbnMsIGluIGNhc2UgdGhlIHJvdyBpcyBuZXN0ZWQuXG5AbWl4aW4gZ3JpZC1yb3coXG4gICRjb2x1bW5zOiBudWxsLFxuICAkYmVoYXZpb3I6IG51bGwsXG4gICR3aWR0aDogJGdyaWQtcm93LXdpZHRoLFxuICAkY2Y6IHRydWUsXG4gICRndXR0ZXI6ICRncmlkLWNvbHVtbi1ndXR0ZXJcbikge1xuICAkbWFyZ2luOiBhdXRvO1xuXG4gIEBpZiBpbmRleCgkYmVoYXZpb3IsIG5lc3QpICE9IG51bGwge1xuICAgIEBpbmNsdWRlIGdyaWQtcm93LW5lc3QoJGd1dHRlcik7XG5cbiAgICBAaWYgaW5kZXgoJGJlaGF2aW9yLCBjb2xsYXBzZSkgIT0gbnVsbCB7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIG1heC13aWR0aDogJHdpZHRoO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgfVxuXG4gIEBpZiAkY2Yge1xuICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuICB9XG5cbiAgQGlmICRjb2x1bW5zICE9IG51bGwge1xuICAgIEBpbmNsdWRlIGdyaWQtY29udGV4dCgkY29sdW1ucykge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG5cbi8vLyBJbnZlcnRzIHRoZSBtYXJnaW5zIG9mIGEgcm93IHRvIG5lc3QgaXQgaW5zaWRlIG9mIGEgY29sdW1uLlxuLy8vXG4vLy8gQHBhcmFtIHtNYXB8bnVsbH0gJGd1dHRlciBbbnVsbF0gLSBHdXR0ZXIgdmFsdWUgdG8gdXNlIHdoZW4gaW52ZXJ0aW5nIHRoZSBtYXJnaW5zLiBTZXQgdG8gYG51bGxgIHRvIHJlZmVyIHRvIHRoZSByZXNwb25zaXZlIGd1dHRlciBzZXR0aW5ncy5cbkBtaXhpbiBncmlkLXJvdy1uZXN0KCRndXR0ZXI6ICRncmlkLWNvbHVtbi1ndXR0ZXIpIHtcbiAgQGlmIHR5cGUtb2YoJGd1dHRlcikgPT0gJ251bWJlcicge1xuICAgICRndXR0ZXI6ICgkLXpmLXplcm8tYnJlYWtwb2ludDogJGd1dHRlcik7XG4gIH1cblxuICBAZWFjaCAkYnJlYWtwb2ludCwgJHZhbHVlIGluICRndXR0ZXIge1xuICAgICRtYXJnaW46IHJlbS1jYWxjKCR2YWx1ZSkgLyAyICogLTE7XG4gICAgbWF4LXdpZHRoOiBub25lO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnJlYWtwb2ludCkge1xuICAgICAgbWFyZ2luLWxlZnQ6ICRtYXJnaW47XG4gICAgICBtYXJnaW4tcmlnaHQ6ICRtYXJnaW47XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmdW5jdGlvbnNcbi8vLy9cblxuJGdsb2JhbC1mb250LXNpemU6IDEwMCUgIWRlZmF1bHQ7XG5cbi8vIHNjc3MtbGludDpkaXNhYmxlIFplcm9Vbml0XG5cbi8vLyBSZW1vdmVzIHRoZSB1bml0IChlLmcuIHB4LCBlbSwgcmVtKSBmcm9tIGEgdmFsdWUsIHJldHVybmluZyB0aGUgbnVtYmVyIG9ubHkuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJG51bSAtIE51bWJlciB0byBzdHJpcCB1bml0IGZyb20uXG4vLy9cbi8vLyBAcmV0dXJucyB7TnVtYmVyfSBUaGUgc2FtZSBudW1iZXIsIHNhbnMgdW5pdC5cbkBmdW5jdGlvbiBzdHJpcC11bml0KCRudW0pIHtcbiAgQHJldHVybiAkbnVtIC8gKCRudW0gKiAwICsgMSk7XG59XG5cbi8vLyBDb252ZXJ0cyBvbmUgb3IgbW9yZSBwaXhlbCB2YWx1ZXMgaW50byBtYXRjaGluZyByZW0gdmFsdWVzLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TGlzdH0gJHZhbHVlcyAtIE9uZSBvciBtb3JlIHZhbHVlcyB0byBjb252ZXJ0LiBCZSBzdXJlIHRvIHNlcGFyYXRlIHRoZW0gd2l0aCBzcGFjZXMgYW5kIG5vdCBjb21tYXMuIElmIHlvdSBuZWVkIHRvIGNvbnZlcnQgYSBjb21tYS1zZXBhcmF0ZWQgbGlzdCwgd3JhcCB0aGUgbGlzdCBpbiBwYXJlbnRoZXNlcy5cbi8vLyBAcGFyYW0ge051bWJlcn0gJGJhc2UgW251bGxdIC0gVGhlIGJhc2UgdmFsdWUgdG8gdXNlIHdoZW4gY2FsY3VsYXRpbmcgdGhlIGByZW1gLiBJZiB5b3UncmUgdXNpbmcgRm91bmRhdGlvbiBvdXQgb2YgdGhlIGJveCwgdGhpcyBpcyAxNnB4LiBJZiB0aGlzIHBhcmFtZXRlciBpcyBgbnVsbGAsIHRoZSBmdW5jdGlvbiB3aWxsIHJlZmVyZW5jZSB0aGUgYCRiYXNlLWZvbnQtc2l6ZWAgdmFyaWFibGUgYXMgdGhlIGJhc2UuXG4vLy9cbi8vLyBAcmV0dXJucyB7TGlzdH0gQSBsaXN0IG9mIGNvbnZlcnRlZCB2YWx1ZXMuXG5AZnVuY3Rpb24gcmVtLWNhbGMoJHZhbHVlcywgJGJhc2U6IG51bGwpIHtcbiAgJHJlbS12YWx1ZXM6ICgpO1xuICAkY291bnQ6IGxlbmd0aCgkdmFsdWVzKTtcblxuICAvLyBJZiBubyBiYXNlIGlzIGRlZmluZWQsIGRlZmVyIHRvIHRoZSBnbG9iYWwgZm9udCBzaXplXG4gIEBpZiAkYmFzZSA9PSBudWxsIHtcbiAgICAkYmFzZTogJGdsb2JhbC1mb250LXNpemU7XG4gIH1cblxuICAvLyBJZiB0aGUgYmFzZSBmb250IHNpemUgaXMgYSAlLCB0aGVuIG11bHRpcGx5IGl0IGJ5IDE2cHhcbiAgLy8gVGhpcyBpcyBiZWNhdXNlIDEwMCUgZm9udCBzaXplID0gMTZweCBpbiBtb3N0IGFsbCBicm93c2Vyc1xuICBAaWYgdW5pdCgkYmFzZSkgPT0gJyUnIHtcbiAgICAkYmFzZTogKCRiYXNlIC8gMTAwJSkgKiAxNnB4O1xuICB9XG5cbiAgQGlmICRjb3VudCA9PSAxIHtcbiAgICBAcmV0dXJuIC16Zi10by1yZW0oJHZhbHVlcywgJGJhc2UpO1xuICB9XG5cbiAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkY291bnQge1xuICAgICRyZW0tdmFsdWVzOiBhcHBlbmQoJHJlbS12YWx1ZXMsIC16Zi10by1yZW0obnRoKCR2YWx1ZXMsICRpKSwgJGJhc2UpKTtcbiAgfVxuXG4gIEByZXR1cm4gJHJlbS12YWx1ZXM7XG59XG5cbi8vIENvbnZlcnRzIGEgdW5pdGxlc3MsIHBpeGVsLCBvciByZW0gdmFsdWUgdG8gZW0sIGZvciB1c2UgaW4gYnJlYWtwb2ludHMuXG5AZnVuY3Rpb24gLXpmLWJwLXRvLWVtKCR2YWx1ZSkge1xuICAvLyBQaXhlbCBhbmQgdW5pdGxlc3MgdmFsdWVzIGFyZSBjb252ZXJ0ZWQgdG8gcmVtc1xuICBAaWYgdW5pdCgkdmFsdWUpID09ICdweCcgb3IgdW5pdGxlc3MoJHZhbHVlKSB7XG4gICAgJHZhbHVlOiByZW0tY2FsYygkdmFsdWUsICRiYXNlOiAxNnB4KTtcbiAgfVxuXG4gIC8vIFRoZW4gdGhlIHZhbHVlIGlzIGNvbnZlcnRlZCB0byBlbXNcbiAgQHJldHVybiBzdHJpcC11bml0KCR2YWx1ZSkgKiAxZW07XG59XG5cbi8vLyBDb252ZXJ0cyBhIHBpeGVsIHZhbHVlIHRvIG1hdGNoaW5nIHJlbSB2YWx1ZS4gKkFueSogdmFsdWUgcGFzc2VkLCByZWdhcmRsZXNzIG9mIHVuaXQsIGlzIGFzc3VtZWQgdG8gYmUgYSBwaXhlbCB2YWx1ZS4gQnkgZGVmYXVsdCwgdGhlIGJhc2UgcGl4ZWwgdmFsdWUgdXNlZCB0byBjYWxjdWxhdGUgdGhlIHJlbSB2YWx1ZSBpcyB0YWtlbiBmcm9tIHRoZSBgJGdsb2JhbC1mb250LXNpemVgIHZhcmlhYmxlLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR2YWx1ZSAtIFBpeGVsIHZhbHVlIHRvIGNvbnZlcnQuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRiYXNlIFtudWxsXSAtIEJhc2UgZm9yIHBpeGVsIGNvbnZlcnNpb24uXG4vLy9cbi8vLyBAcmV0dXJucyB7TnVtYmVyfSBBIG51bWJlciBpbiByZW1zLCBjYWxjdWxhdGVkIGJhc2VkIG9uIHRoZSBnaXZlbiB2YWx1ZSBhbmQgdGhlIGJhc2UgcGl4ZWwgdmFsdWUuIHJlbSB2YWx1ZXMgYXJlIHBhc3NlZCB0aHJvdWdoIGFzIGlzLlxuQGZ1bmN0aW9uIC16Zi10by1yZW0oJHZhbHVlLCAkYmFzZTogbnVsbCkge1xuICAvLyBDaGVjayBpZiB0aGUgdmFsdWUgaXMgYSBudW1iZXJcbiAgQGlmIHR5cGUtb2YoJHZhbHVlKSAhPSAnbnVtYmVyJyB7XG4gICAgQHdhcm4gaW5zcGVjdCgkdmFsdWUpICsgJyB3YXMgcGFzc2VkIHRvIHJlbS1jYWxjKCksIHdoaWNoIGlzIG5vdCBhIG51bWJlci4nO1xuICAgIEByZXR1cm4gJHZhbHVlO1xuICB9XG5cbiAgLy8gQ2FsY3VsYXRlIHJlbSBpZiB1bml0cyBmb3IgJHZhbHVlIGlzIG5vdCByZW1cbiAgQGlmIHVuaXQoJHZhbHVlKSAhPSAncmVtJyB7XG4gICAgJHZhbHVlOiBzdHJpcC11bml0KCR2YWx1ZSkgLyBzdHJpcC11bml0KCRiYXNlKSAqIDFyZW07XG4gIH1cblxuICAvLyBUdXJuIDByZW0gaW50byAwXG4gIEBpZiAkdmFsdWUgPT0gMHJlbSB7XG4gICAgJHZhbHVlOiAwO1xuICB9XG5cbiAgQHJldHVybiAkdmFsdWU7XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBncmlkXG4vLy8vXG5cbi8vLyBDb2xsYXBzZSB0aGUgZ3V0dGVycyBvbiBhIGNvbHVtbiBieSByZW1vdmluZyB0aGUgcGFkZGluZy4gKipOb3RlOioqIG9ubHkgdXNlIHRoaXMgbWl4aW4gd2l0aGluIGEgYnJlYWtwb2ludC4gVG8gY29sbGFwc2UgYSBjb2x1bW4ncyBndXR0ZXJzIG9uIGFsbCBzY3JlZW4gc2l6ZXMsIHVzZSB0aGUgYCRndXR0ZXJgIHBhcmFtZXRlciBvZiB0aGUgYGdyaWQtY29sdW1uKClgIG1peGluIGluc3RlYWQuXG5AbWl4aW4gZ3JpZC1jb2x1bW4tY29sbGFwc2Uge1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG59XG5cbi8vLyBVbi1jb2xsYXBzZSB0aGUgZ3V0dGVycyBvbiBhIGNvbHVtbiBieSByZS1hZGRpbmcgdGhlIHBhZGRpbmcuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJGd1dHRlciBbJGdyaWQtY29sdW1uLWd1dHRlcl0gLSBTcGFjaW5nIGJldHdlZW4gY29sdW1ucy5cbkBtaXhpbiBncmlkLWNvbHVtbi11bmNvbGxhcHNlKCRndXR0ZXI6ICRncmlkLWNvbHVtbi1ndXR0ZXIpIHtcbiAgJGd1dHRlcjogcmVtLWNhbGMoJGd1dHRlcikgLyAyO1xuICBwYWRkaW5nLWxlZnQ6ICRndXR0ZXI7XG4gIHBhZGRpbmctcmlnaHQ6ICRndXR0ZXI7XG59XG5cbi8vLyBTaG9ydGhhbmQgZm9yIGBncmlkLWNvbHVtbi1jb2xsYXBzZSgpYC5cbi8vLyBAYWxpYXMgZ3JpZC1jb2x1bW4tY29sbGFwc2VcbkBtaXhpbiBncmlkLWNvbC1jb2xsYXBzZSB7XG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uLWNvbGxhcHNlO1xufVxuXG4vLy8gU2hvcnRoYW5kIGZvciBgZ3JpZC1jb2x1bW4tdW5jb2xsYXBzZSgpYC5cbi8vLyBAYWxpYXMgZ3JpZC1jb2x1bW4tdW5jb2xsYXBzZVxuQG1peGluIGdyaWQtY29sLXVuY29sbGFwc2UoJGd1dHRlcjogJGdyaWQtY29sdW1uLWd1dHRlcikge1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbi11bmNvbGxhcHNlKCRndXR0ZXIpO1xufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZ3JpZFxuLy8vL1xuXG4vLy8gU2V0IHRoZSB3aWR0aCBvZiBhIGdyaWQgY29sdW1uLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TGlzdH0gJHdpZHRoIFskZ3JpZC1jb2x1bW4tY291bnRdIC0gV2lkdGggdG8gbWFrZSB0aGUgY29sdW1uLiBZb3UgY2FuIHBhc3MgaW4gYW55IHZhbHVlIGFjY2VwdGVkIGJ5IHRoZSBgZ3JpZC1jb2x1bW4oKWAgZnVuY3Rpb24sIHN1Y2ggYXMgYDZgLCBgNTAlYCwgb3IgYDEgb2YgMmAuXG5AbWl4aW4gZ3JpZC1jb2x1bW4tc2l6ZShcbiAgJGNvbHVtbnM6ICRncmlkLWNvbHVtbi1jb3VudFxuKSB7XG4gIHdpZHRoOiBncmlkLWNvbHVtbigkY29sdW1ucyk7XG59XG5cbi8vLyBTaG9ydGhhbmQgZm9yIGBncmlkLWNvbHVtbi1zaXplKClgLlxuLy8vIEBhbGlhcyBncmlkLWNvbHVtbi1zaXplXG5AbWl4aW4gZ3JpZC1jb2wtc2l6ZShcbiAgJGNvbHVtbnM6ICRncmlkLWNvbHVtbi1jb3VudFxuKSB7XG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uLXNpemUoJGNvbHVtbnMpO1xufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZ3JpZFxuLy8vL1xuXG4vLy8gQ2FsY3VsYXRlcyB0aGUgd2lkdGggb2YgYSBjb2x1bW4gYmFzZWQgb24gYSBudW1iZXIgb2YgZmFjdG9ycy5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfExpc3R9ICRjb2x1bW5zXG4vLy8gICBXaWR0aCBvZiB0aGUgY29sdW1uLiBBY2NlcHRzIG11bHRpcGxlIHZhbHVlczpcbi8vLyAgIC0gQSBwZXJjZW50YWdlIHZhbHVlIHdpbGwgbWFrZSB0aGUgY29sdW1uIHRoYXQgZXhhY3Qgc2l6ZS5cbi8vLyAgIC0gQSBzaW5nbGUgZGlnaXQgd2lsbCBtYWtlIHRoZSBjb2x1bW4gc3BhbiB0aGF0IG51bWJlciBvZiBjb2x1bW5zIHdpZGUsIHRha2luZyBpbnRvIGFjY291bnQgdGhlIGNvbHVtbiBjb3VudCBvZiB0aGUgcGFyZW50IHJvdy5cbi8vLyAgIC0gQSBzdHJpbmcgb2YgdGhlIGZvcm1hdCBcInggb2YgeVwiIHdpbGwgbWFrZSBhIGNvbHVtbiB0aGF0IGlzICp4KiBjb2x1bW5zIHdpZGUsIGFzc3VtaW5nICp5KiB0b3RhbCBjb2x1bW5zIGZvciB0aGUgcGFyZW50LlxuLy8vXG4vLy8gQHJldHVybnMge051bWJlcn0gQSBjYWxjdWxhdGVkIHBlcmNlbnRhZ2UgdmFsdWUuXG5AZnVuY3Rpb24gZ3JpZC1jb2x1bW4oJGNvbHVtbnMpIHtcbiAgJHdpZHRoOiAwJTtcblxuICAvLyBQYXJzaW5nIHBlcmNlbnRzLCBkZWNpbWFscywgYW5kIGNvbHVtbiBjb3VudHNcbiAgQGlmIHR5cGUtb2YoJGNvbHVtbnMpID09ICdudW1iZXInIHtcbiAgICBAaWYgdW5pdCgkY29sdW1ucykgPT0gJyUnIHtcbiAgICAgICR3aWR0aDogJGNvbHVtbnM7XG4gICAgfVxuICAgIEBlbHNlIGlmICRjb2x1bW5zIDwgMSB7XG4gICAgICAkd2lkdGg6IHBlcmNlbnRhZ2UoJGNvbHVtbnMpO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICAkd2lkdGg6IHBlcmNlbnRhZ2UoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW4tY291bnQpO1xuICAgIH1cbiAgfVxuXG4gIC8vIFBhcnNpbmcgXCJuIG9mIG5cIiBleHByZXNzaW9uc1xuICBAZWxzZSBpZiB0eXBlLW9mKCRjb2x1bW5zKSA9PSAnbGlzdCcge1xuICAgIEBpZiBsZW5ndGgoJGNvbHVtbnMpICE9IDMge1xuICAgICAgQGVycm9yICdXcm9uZyBzeW50YXggZm9yIGdyaWQtY29sdW1uKCkuIFVzZSB0aGUgZm9ybWF0IFwibiBvZiBuXCIuJztcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgJHdpZHRoOiBwZXJjZW50YWdlKG50aCgkY29sdW1ucywgMSkgLyBudGgoJGNvbHVtbnMsIDMpKTtcbiAgICB9XG4gIH1cblxuICAvLyBBbnl0aGluZyBlbHNlIGlzIGluY29ycmVjdFxuICBAZWxzZSB7XG4gICAgQGVycm9yICdXcm9uZyBzeW50YXggZm9yIGdyaWQtY29sdW1uKCkuIFVzZSBhIG51bWJlciwgZGVjaW1hbCwgcGVyY2VudGFnZSwgb3IgXCJuIG9mIG5cIi4nO1xuICB9XG5cbiAgQHJldHVybiAkd2lkdGg7XG59XG5cbi8vLyBDcmVhdGVzIGEgZ3JpZCBjb2x1bW4uXG4vLy9cbi8vLyBAcGFyYW0ge01peGVkfSAkY29sdW1ucyBbJGdyaWQtY29sdW1uLWNvdW50XSAtIFdpZHRoIG9mIHRoZSBjb2x1bW4uIFJlZmVyIHRvIHRoZSBgZ3JpZC1jb2x1bW4oKWAgZnVuY3Rpb24gdG8gc2VlIHBvc3NpYmxlIHZhbHVlcy5cbi8vLyBAcGFyYW0ge051bWJlcn0gJGd1dHRlciBbJGdyaWQtY29sdW1uLWd1dHRlcl0gLSBTcGFjaW5nIGJldHdlZW4gY29sdW1ucy5cbkBtaXhpbiBncmlkLWNvbHVtbihcbiAgJGNvbHVtbnM6ICRncmlkLWNvbHVtbi1jb3VudCxcbiAgJGd1dHRlcjogJGdyaWQtY29sdW1uLWd1dHRlclxuKSB7XG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uLXNpemUoJGNvbHVtbnMpO1xuICBmbG9hdDogJGdsb2JhbC1sZWZ0O1xuXG4gIC8vIEd1dHRlcnNcbiAgQGlmIHR5cGUtb2YoJGd1dHRlcikgPT0gJ21hcCcge1xuICAgIEBlYWNoICRicmVha3BvaW50LCAkdmFsdWUgaW4gJGd1dHRlciB7XG4gICAgICAkcGFkZGluZzogcmVtLWNhbGMoJHZhbHVlKSAvIDI7XG5cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJyZWFrcG9pbnQpIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAkcGFkZGluZztcbiAgICAgICAgcGFkZGluZy1yaWdodDogJHBhZGRpbmc7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIGlmIHR5cGUtb2YoJGd1dHRlcikgPT0gJ251bWJlcicgYW5kIHN0cmlwLXVuaXQoJGd1dHRlcikgPiAwIHtcbiAgICAkcGFkZGluZzogcmVtLWNhbGMoJGd1dHRlcikgLyAyO1xuICAgIHBhZGRpbmctbGVmdDogJHBhZGRpbmc7XG4gICAgcGFkZGluZy1yaWdodDogJHBhZGRpbmc7XG4gIH1cblxuICAvLyBMYXN0IGNvbHVtbiBhbGlnbm1lbnRcbiAgQGlmICRncmlkLWNvbHVtbi1hbGlnbi1lZGdlIHtcbiAgICAmOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgZmxvYXQ6ICRnbG9iYWwtcmlnaHQ7XG4gICAgfVxuICB9XG59XG5cbi8vLyBDcmVhdGVzIGEgZ3JpZCBjb2x1bW4gcm93LiBUaGlzIGlzIHRoZSBlcXVpdmFsZW50IG9mIGFkZGluZyBgLnJvd2AgYW5kIGAuY29sdW1uYCB0byB0aGUgc2FtZSBlbGVtZW50LlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRndXR0ZXIgWyRncmlkLWNvbHVtbi1ndXR0ZXJdIC0gV2lkdGggb2YgdGhlIGd1dHRlcnMgb24gZWl0aGVyIHNpZGUgb2YgdGhlIGNvbHVtbiByb3cuXG5AbWl4aW4gZ3JpZC1jb2x1bW4tcm93KFxuICAkZ3V0dGVyOiAkZ3JpZC1jb2x1bW4tZ3V0dGVyXG4pIHtcbiAgQGluY2x1ZGUgZ3JpZC1yb3c7XG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uKCRndXR0ZXI6ICRndXR0ZXIpO1xuXG4gICYsXG4gICY6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IG5vbmU7XG4gIH1cbn1cblxuLy8vIFNob3J0aGFuZCBmb3IgYGdyaWQtY29sdW1uKClgLlxuLy8vIEBhbGlhcyBncmlkLWNvbHVtblxuQGZ1bmN0aW9uIGdyaWQtY29sKFxuICAkY29sdW1uczogJGdyaWQtY29sdW1uLWNvdW50XG4pIHtcbiAgQHJldHVybiBncmlkLWNvbHVtbigkY29sdW1ucyk7XG59XG5cbi8vLyBTaG9ydGhhbmQgZm9yIGBncmlkLWNvbHVtbigpYC5cbi8vLyBAYWxpYXMgZ3JpZC1jb2x1bW5cbkBtaXhpbiBncmlkLWNvbChcbiAgJGNvbHVtbnM6ICRncmlkLWNvbHVtbi1jb3VudCxcbiAgJGd1dHRlcjogJGdyaWQtY29sdW1uLWd1dHRlclxuKSB7XG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uKCRjb2x1bW5zLCAkZ3V0dGVyKTtcbn1cblxuLy8vIFNob3J0aGFuZCBmb3IgYGdyaWQtY29sdW1uLXJvdygpYC5cbi8vLyBAYWxpYXMgZ3JpZC1jb2x1bW4tcm93XG5AbWl4aW4gZ3JpZC1jb2wtcm93KFxuICAkZ3V0dGVyOiAkZ3JpZC1jb2x1bW4tZ3V0dGVyXG4pIHtcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tcm93KCRndXR0ZXIpO1xufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZ3JpZFxuLy8vL1xuXG4vLy8gUmVwb3NpdGlvbiBhIGNvbHVtbi5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkcG9zaXRpb24gLSBEaXJlY3Rpb24gYW5kIGFtb3VudCB0byBtb3ZlLiBUaGUgY29sdW1uIHdpbGwgbW92ZSBlcXVhbCB0byB0aGUgd2lkdGggb2YgdGhlIGNvbHVtbiBjb3VudCBzcGVjaWZpZWQuIEEgcG9zaXRpdmUgbnVtYmVyIHdpbGwgcHVzaCB0aGUgY29sdW1uIHRvIHRoZSByaWdodCwgd2hpbGUgYSBuZWdhdGl2ZSBudW1iZXIgd2lsbCBwdWxsIGl0IHRvIHRoZSBsZWZ0LlxuQG1peGluIGdyaWQtY29sdW1uLXBvc2l0aW9uKCRwb3NpdGlvbikge1xuICBAaWYgdHlwZS1vZigkcG9zaXRpb24pID09ICdudW1iZXInIHtcbiAgICAkb2Zmc2V0OiBwZXJjZW50YWdlKCRwb3NpdGlvbiAvICRncmlkLWNvbHVtbi1jb3VudCk7XG5cbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgI3skZ2xvYmFsLWxlZnR9OiAkb2Zmc2V0O1xuICB9XG4gIEBlbHNlIGlmICRwb3NpdGlvbiA9PSBjZW50ZXIge1xuICAgIGZsb2F0OiBub25lO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgfVxuICBAZWxzZSB7XG4gICAgQHdhcm4gJ1dyb25nIHN5bnRheCBmb3IgZ3JpZC1jb2x1bW4tcG9zaXRpb24oKS4gRW50ZXIgYSBwb3NpdGl2ZSBvciBuZWdhdGl2ZSBudW1iZXIsIG9yIGNlbnRlci4nO1xuICB9XG59XG5cbi8vLyBSZXNldCBhIHBvc2l0aW9uIGRlZmluaXRpb24uXG5AbWl4aW4gZ3JpZC1jb2x1bW4tdW5wb3NpdGlvbiB7XG4gIHBvc2l0aW9uOiBzdGF0aWM7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIGZsb2F0OiBsZWZ0O1xufVxuXG4vLy8gT2Zmc2V0cyBhIGNvbHVtbiB0byB0aGUgcmlnaHQgYnkgYCRuYCBjb2x1bW5zLlxuLy8vIEBwYXJhbSB7TnVtYmVyfExpc3R9ICRuIC0gV2lkdGggdG8gb2Zmc2V0IGJ5LiBZb3UgY2FuIHBhc3MgaW4gYW55IHZhbHVlIGFjY2VwdGVkIGJ5IHRoZSBgZ3JpZC1jb2x1bW4oKWAgbWl4aW4sIHN1Y2ggYXMgYDZgLCBgNTAlYCwgb3IgYDEgb2YgMmAuXG5AbWl4aW4gZ3JpZC1jb2x1bW4tb2Zmc2V0KCRuKSB7XG4gIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06IGdyaWQtY29sdW1uKCRuKTtcbn1cblxuLy8vIERpc2FibGUgdGhlIGRlZmF1bHQgYmVoYXZpb3Igb2YgdGhlIGxhc3QgY29sdW1uIGluIGEgcm93IGFsaWduaW5nIHRvIHRoZSBvcHBvc2l0ZSBlZGdlLlxuQG1peGluIGdyaWQtY29sdW1uLWVuZCB7XG4gIC8vIFRoaXMgZXh0cmEgc3BlY2lmaWNpdHkgaXMgcmVxdWlyZWQgZm9yIHRoZSBwcm9wZXJ0eSB0byBiZSBhcHBsaWVkXG4gICY6bGFzdC1jaGlsZDpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogJGdsb2JhbC1sZWZ0O1xuICB9XG59XG5cbi8vLyBTaG9ydGhhbmQgZm9yIGBncmlkLWNvbHVtbi1wb3NpdGlvbigpYC5cbi8vLyBAYWxpYXMgZ3JpZC1jb2x1bW4tcG9zaXRpb25cbkBtaXhpbiBncmlkLWNvbC1wb3MoJHBvc2l0aW9uKSB7XG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uLXBvc2l0aW9uKCRwb3NpdGlvbik7XG59XG5cbi8vLyBTaG9ydGhhbmQgZm9yIGBncmlkLWNvbHVtbi11bnBvc2l0aW9uKClgLlxuLy8vIEBhbGlhcyBncmlkLWNvbHVtbi11bnBvc2l0aW9uXG5AbWl4aW4gZ3JpZC1jb2wtdW5wb3Mge1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbi11bnBvc2l0aW9uO1xufVxuXG4vLy8gU2hvcnRoYW5kIGZvciBgZ3JpZC1jb2x1bW4tb2Zmc2V0KClgLlxuLy8vIEBhbGlhcyBncmlkLWNvbHVtbi1vZmZzZXRcbkBtaXhpbiBncmlkLWNvbC1vZmYoJG4pIHtcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tb2Zmc2V0KCRuKTtcbn1cblxuLy8vIFNob3J0aGFuZCBmb3IgYGdyaWQtY29sdW1uLWVuZCgpYC5cbi8vLyBAYWxpYXMgZ3JpZC1jb2x1bW4tZW5kXG5AbWl4aW4gZ3JpZC1jb2wtZW5kIHtcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tZW5kO1xufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZ3JpZFxuLy8vL1xuXG4vLy8gU2l6ZXMgY2hpbGQgZWxlbWVudHMgc28gdGhhdCBgJG5gIG51bWJlciBvZiBpdGVtcyBhcHBlYXIgb24gZWFjaCByb3cuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJG4gLSBOdW1iZXIgb2YgZWxlbWVudHMgdG8gZGlzcGxheSBwZXIgcm93LlxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkc2VsZWN0b3IgWycuY29sdW1uJ10gLSBTZWxlY3RvcihzKSB0byB1c2UgZm9yIGNoaWxkIGVsZW1lbnRzLlxuQG1peGluIGdyaWQtbGF5b3V0KFxuICAkbixcbiAgJHNlbGVjdG9yOiAnLmNvbHVtbidcbikge1xuICAmID4gI3skc2VsZWN0b3J9IHtcbiAgICB3aWR0aDogcGVyY2VudGFnZSgxLyRuKTtcbiAgICBmbG9hdDogJGdsb2JhbC1sZWZ0O1xuXG4gICAgJjpudGgtb2YtdHlwZSgxbikge1xuICAgICAgY2xlYXI6IG5vbmU7XG4gICAgfVxuXG4gICAgJjpudGgtb2YtdHlwZSgjeyRufW4rMSkge1xuICAgICAgY2xlYXI6IGJvdGg7XG4gICAgfVxuXG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyBleHRyYSBDU1MgdG8gYmxvY2sgZ3JpZCBjaGlsZHJlbiBzbyB0aGUgbGFzdCBpdGVtcyBpbiB0aGUgcm93IGNlbnRlciBhdXRvbWF0aWNhbGx5LiBBcHBseSB0aGlzIHRvIHRoZSBjb2x1bW5zLCBub3QgdGhlIHJvdy5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkbiAtIE51bWJlciBvZiBpdGVtcyB0aGF0IGFwcGVhciBpbiBlYWNoIHJvdy5cbkBtaXhpbiBncmlkLWxheW91dC1jZW50ZXItbGFzdCgkbikge1xuICBAZm9yICRpIGZyb20gMSB0byAkbiB7XG4gICAgQGlmICRpID09IDEge1xuICAgICAgJjpudGgtY2hpbGQoI3skbn1uKzEpOmxhc3QtY2hpbGQge1xuICAgICAgICBtYXJnaW4tbGVmdDogKDEwMCAtIDEwMC8kbiAqICRpKSAvIDIgKiAxJTtcbiAgICAgIH1cbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgJjpudGgtY2hpbGQoI3skbn1uKzEpOm50aC1sYXN0LWNoaWxkKCN7JGl9KSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAoMTAwIC0gMTAwLyRuICogJGkpIC8gMiAqIDElO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgYnJlYWtwb2ludHNcbi8vLy9cblxuLy8gc2Nzcy1saW50OmRpc2FibGUgWmVyb1VuaXRcblxuLy8vIEEgbGlzdCBvZiBuYW1lZCBicmVha3BvaW50cy4gWW91IGNhbiB1c2UgdGhlc2Ugd2l0aCB0aGUgYGJyZWFrcG9pbnQoKWAgbWl4aW4gdG8gcXVpY2tseSBjcmVhdGUgbWVkaWEgcXVlcmllcy5cbi8vLyBAdHlwZSBNYXBcbiRicmVha3BvaW50czogKFxuICBzbWFsbDogMCxcbiAgbWVkaXVtOiA2NDBweCxcbiAgbGFyZ2U6IDEwMjRweCxcbiAgeGxhcmdlOiAxMjAwcHgsXG4gIHh4bGFyZ2U6IDE0NDBweCxcbikgIWRlZmF1bHQ7XG5cbiQtemYtemVyby1icmVha3BvaW50OiBzbWFsbCAhZGVmYXVsdDtcblxuQGlmIG50aChtYXAtdmFsdWVzKCRicmVha3BvaW50cyksMSkgIT0gMCB7XG4gIEBlcnJvciAnWW91ciBzbWFsbGVzdCBicmVha3BvaW50IChkZWZpbmVkIGluICRicmVha3BvaW50cykgbXVzdCBiZSBzZXQgdG8gXCIwXCIuJztcbn0gQGVsc2Uge1xuICAkLXpmLXplcm8tYnJlYWtwb2ludDogbnRoKG1hcC1rZXlzKCRicmVha3BvaW50cyksMSk7XG59XG5cbi8vLyBBbGwgb2YgdGhlIG5hbWVzIGluIHRoaXMgbGlzdCB3aWxsIGJlIG91dHB1dCBhcyBjbGFzc2VzIGluIHlvdXIgQ1NTLCBsaWtlIGAuc21hbGwtMTJgLCBgLm1lZGl1bS02YCwgYW5kIHNvIG9uLiBFYWNoIHZhbHVlIGluIHRoaXMgbGlzdCBtdXN0IGFsc28gYmUgaW4gdGhlIGAkYnJlYWtwb2ludHNgIG1hcC5cbi8vLyBAdHlwZSBMaXN0XG4kYnJlYWtwb2ludC1jbGFzc2VzOiAoc21hbGwgbWVkaXVtIGxhcmdlKSAhZGVmYXVsdDtcblxuLy8vIEdlbmVyYXRlcyBhIG1lZGlhIHF1ZXJ5IHN0cmluZyBtYXRjaGluZyB0aGUgaW5wdXQgdmFsdWUuIFJlZmVyIHRvIHRoZSBkb2N1bWVudGF0aW9uIGZvciB0aGUgYGJyZWFrcG9pbnQoKWAgbWl4aW4gdG8gc2VlIHdoYXQgdGhlIHBvc3NpYmxlIGlucHV0cyBhcmUuXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR8TnVtYmVyfSAkdmFsIFtzbWFsbF0gLSBCcmVha3BvaW50IG5hbWUsIG9yIHB4LCByZW0sIG9yIGVtIHZhbHVlIHRvIHByb2Nlc3MuXG5AZnVuY3Rpb24gYnJlYWtwb2ludCgkdmFsOiAkLXpmLXplcm8tYnJlYWtwb2ludCkge1xuICAvLyBTaXplIG9yIGtleXdvcmRcbiAgJGJwOiBudGgoJHZhbCwgMSk7XG4gIC8vIFZhbHVlIGZvciBtYXgtd2lkdGggbWVkaWEgcXVlcmllc1xuICAkYnAtbWF4OiAwO1xuICAvLyBEaXJlY3Rpb24gb2YgbWVkaWEgcXVlcnkgKHVwLCBkb3duLCBvciBvbmx5KVxuICAkZGlyOiBpZihsZW5ndGgoJHZhbCkgPiAxLCBudGgoJHZhbCwgMiksIHVwKTtcbiAgLy8gRXZlbnR1YWwgb3V0cHV0XG4gICRzdHI6ICcnO1xuICAvLyBJcyBpdCBhIG5hbWVkIG1lZGlhIHF1ZXJ5P1xuICAkbmFtZWQ6IGZhbHNlO1xuXG4gIC8vIE9yaWVudGF0aW9uIG1lZGlhIHF1ZXJpZXMgaGF2ZSBhIHVuaXF1ZSBzeW50YXhcbiAgQGlmICRicCA9PSAnbGFuZHNjYXBlJyBvciAkYnAgPT0gJ3BvcnRyYWl0JyB7XG4gICAgQHJldHVybiAnKG9yaWVudGF0aW9uOiAjeyRicH0pJztcbiAgfVxuICBAZWxzZSBpZiAkYnAgPT0gJ3JldGluYScge1xuICAgIEByZXR1cm4gJygtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDIpLCAobWluLXJlc29sdXRpb246IDE5MmRwaSknO1xuICB9XG5cbiAgLy8gVHJ5IHRvIHB1bGwgYSBuYW1lZCBicmVha3BvaW50IG91dCBvZiB0aGUgJGJyZWFrcG9pbnRzIG1hcFxuICBAaWYgdHlwZS1vZigkYnApID09ICdzdHJpbmcnIHtcbiAgICBAaWYgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCAkYnApIHtcbiAgICAgIEBpZiAkZGlyID09ICdvbmx5JyBvciAkZGlyID09ICdkb3duJyB7XG4gICAgICAgICRicC1tYXg6IC16Zi1tYXAtbmV4dCgkYnJlYWtwb2ludHMsICRicCk7XG4gICAgICB9XG5cbiAgICAgICRicDogbWFwLWdldCgkYnJlYWtwb2ludHMsICRicCk7XG4gICAgICAkbmFtZWQ6IHRydWU7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgICRicDogMDtcbiAgICAgIEB3YXJuICdicmVha3BvaW50KCk6IFwiI3skdmFsfVwiIGlzIG5vdCBkZWZpbmVkIGluIHlvdXIgJGJyZWFrcG9pbnRzIHNldHRpbmcuJztcbiAgICB9XG4gIH1cblxuICAvLyBDb252ZXJ0IGFueSBwaXhlbCwgcmVtLCBvciB1bml0bGVzcyB2YWx1ZSB0byBlbVxuICAkYnA6IC16Zi1icC10by1lbSgkYnApO1xuICBAaWYgJGJwLW1heCB7XG4gICAgJGJwLW1heDogLXpmLWJwLXRvLWVtKCRicC1tYXgpIC0gKDEvMTYpO1xuICB9XG5cbiAgLy8gQ29uZGl0aW9ucyB0byBza2lwIG1lZGlhIHF1ZXJ5IGNyZWF0aW9uXG4gIC8vIC0gSXQncyBhIG5hbWVkIGJyZWFrcG9pbnQgdGhhdCByZXNvbHZlZCB0byBcIjAgZG93blwiIG9yIFwiMCB1cFwiXG4gIC8vIC0gSXQncyBhIG51bWVyaWMgYnJlYWtwb2ludCB0aGF0IHJlc29sdmVkIHRvIFwiMCBcIiArIGFueXRoaW5nXG4gIEBpZiAkYnAgPiAwZW0gb3IgJGRpciA9PSAnb25seScgb3IgJGRpciA9PSAnZG93bicge1xuICAgIC8vIGBvbmx5YCByYW5nZXMgdXNlIHRoZSBmb3JtYXQgYChtaW4td2lkdGg6IG4pIGFuZCAobWF4LXdpZHRoOiBuKWBcbiAgICBAaWYgJGRpciA9PSAnb25seScge1xuICAgICAgLy8gT25seSBuYW1lZCBtZWRpYSBxdWVyaWVzIGNhbiBoYXZlIGFuIFwib25seVwiIHJhbmdlXG4gICAgICBAaWYgJG5hbWVkID09IHRydWUge1xuICAgICAgICAvLyBPbmx5IHVzZSBcIm1pbi13aWR0aFwiIGlmIHRoZSBmbG9vciBpcyBncmVhdGVyIHRoYW4gMFxuICAgICAgICBAaWYgJGJwID4gMGVtIHtcbiAgICAgICAgICAkc3RyOiAkc3RyICsgJyhtaW4td2lkdGg6ICN7JGJwfSknO1xuXG4gICAgICAgICAgLy8gT25seSBhZGQgXCJhbmRcIiB0byB0aGUgbWVkaWEgcXVlcnkgaWYgdGhlcmUncyBhIGNlaWxpbmdcbiAgICAgICAgICBAaWYgJGJwLW1heCAhPSBudWxsIHtcbiAgICAgICAgICAgICRzdHI6ICRzdHIgKyAnIGFuZCAnO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8vIE9ubHkgdXNlIFwibWF4LXdpZHRoXCIgaWYgdGhlcmUncyBhIGNlaWxpbmdcbiAgICAgICAgQGlmICRicC1tYXggIT0gbnVsbCB7XG4gICAgICAgICAgJHN0cjogJHN0ciArICcobWF4LXdpZHRoOiAjeyRicC1tYXh9KSc7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgQHdhcm4gJ2JyZWFrcG9pbnQoKTogT25seSBuYW1lZCBtZWRpYSBxdWVyaWVzIGNhbiBoYXZlIGFuIGBvbmx5YCByYW5nZS4nO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIGBkb3duYCByYW5nZXMgdXNlIHRoZSBmb3JtYXQgYChtYXgtd2lkdGg6IG4pYFxuICAgIEBlbHNlIGlmICRkaXIgPT0gJ2Rvd24nIHtcbiAgICAgICRtYXg6IGlmKCRuYW1lZCwgJGJwLW1heCwgJGJwKTtcblxuICAgICAgLy8gU2tpcCBtZWRpYSBxdWVyeSBjcmVhdGlvbiBpZiBpbnB1dCB2YWx1ZSBpcyBleGFjdGx5IFwiMCBkb3duXCIsXG4gICAgICAvLyB1bmxlc3MgdGhlIGZ1bmN0aW9uIHdhcyBjYWxsZWQgYXMgXCJzbWFsbCBkb3duXCIsIGluIHdoaWNoIGNhc2UgaXQncyBqdXN0IFwic21hbGwgb25seVwiXG4gICAgICBAaWYgJG5hbWVkIG9yICRicCA+IDBlbSB7XG4gICAgICAgIEBpZiAkbWF4ICE9IG51bGwge1xuICAgICAgICAgICRzdHI6ICRzdHIgKyAnKG1heC13aWR0aDogI3skbWF4fSknO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gYHVwYCByYW5nZXMgdXNlIHRoZSBmb3JtYXQgYChtaW4td2lkdGg6IG4pYFxuICAgIEBlbHNlIGlmICRicCA+IDBlbSB7XG4gICAgICAkc3RyOiAkc3RyICsgJyhtaW4td2lkdGg6ICN7JGJwfSknO1xuICAgIH1cbiAgfVxuXG4gIEByZXR1cm4gJHN0cjtcbn1cblxuLy8vIFdyYXBzIGEgbWVkaWEgcXVlcnkgYXJvdW5kIHRoZSBjb250ZW50IHlvdSBwdXQgaW5zaWRlIHRoZSBtaXhpbi4gVGhpcyBtaXhpbiBhY2NlcHRzIGEgbnVtYmVyIG9mIHZhbHVlczpcbi8vLyAgLSBJZiBhIHN0cmluZyBpcyBwYXNzZWQsIHRoZSBtaXhpbiB3aWxsIGxvb2sgZm9yIGl0IGluIHRoZSBgJGJyZWFrcG9pbnRzYCBtYXAsIGFuZCB1c2UgYSBtZWRpYSBxdWVyeSB0aGVyZS5cbi8vLyAgLSBJZiBhIHBpeGVsIHZhbHVlIGlzIHBhc3NlZCwgaXQgd2lsbCBiZSBjb252ZXJ0ZWQgdG8gYW4gZW0gdmFsdWUgdXNpbmcgYCRnbG9iYWwtZm9udC1zaXplYCBhcyB0aGUgYmFzZS5cbi8vLyAgLSBJZiBhIHJlbSB2YWx1ZSBpcyBwYXNzZWQsIHRoZSB1bml0IHdpbGwgYmUgY2hhbmdlZCB0byBlbS5cbi8vLyAgLSBJZiBhbiBlbSB2YWx1ZSBpcyBwYXNzZWQsIHRoZSB2YWx1ZSB3aWxsIGJlIHVzZWQgYXMtaXMuXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR8TnVtYmVyfSAkdmFsdWUgLSBCcmVha3BvaW50IG5hbWUsIG9yIHB4LCByZW0sIG9yIGVtIHZhbHVlIHRvIHByb2Nlc3MuXG4vLy9cbi8vLyBAb3V0cHV0IElmIHRoZSBicmVha3BvaW50IGlzIFwiMHB4IGFuZCBsYXJnZXJcIiwgb3V0cHV0cyB0aGUgY29udGVudCBhcy1pcy4gT3RoZXJ3aXNlLCBvdXRwdXRzIHRoZSBjb250ZW50IHdyYXBwZWQgaW4gYSBtZWRpYSBxdWVyeS5cbkBtaXhpbiBicmVha3BvaW50KCR2YWx1ZSkge1xuICAkc3RyOiBicmVha3BvaW50KCR2YWx1ZSk7XG5cbiAgLy8gSWYgJHN0ciBpcyBzdGlsbCBhbiBlbXB0eSBzdHJpbmcsIG5vIG1lZGlhIHF1ZXJ5IGlzIG5lZWRlZFxuICBAaWYgJHN0ciA9PSAnJyB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cblxuICAvLyBPdGhlcndpc2UsIHdyYXAgdGhlIGNvbnRlbnQgaW4gYSBtZWRpYSBxdWVyeVxuICBAZWxzZSB7XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgI3skc3RyfSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cblxuLy8vIENvbnZlcnMgdGhlIGJyZWFrcG9pbnRzIG1hcCB0byBhIFVSTC1lbmNvZGVkIHN0cmluZywgbGlrZSB0aGlzOiBga2V5MT12YWx1ZTEma2V5Mj12YWx1ZTJgLiBUaGUgdmFsdWUgaXMgdGhlbiBkcm9wcGVkIGludG8gdGhlIENTUyBmb3IgYSBzcGVjaWFsIGA8bWV0YT5gIHRhZywgd2hpY2ggaXMgcmVhZCBieSB0aGUgRm91bmRhdGlvbiBKYXZhU2NyaXB0LiBUaGlzIGlzIGhvdyB3ZSB0cmFuc2ZlciB2YWx1ZXMgZnJvbSBTYXNzIHRvIEphdmFTY3JpcHQsIHNvIHRoZXkgY2FuIGJlIGRlZmluZWQgaW4gb25lIHBsYWNlLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vXG4vLy8gQHBhcmFtIHtNYXB9ICRtYXAgLSBNYXAgdG8gY29udmVydC5cbi8vL1xuLy8vIEByZXR1cm5zIHtTdHJpbmd9IEEgc3RyaW5nIGNvbnRhaW5pbmcgdGhlIG1hcCdzIGNvbnRlbnRzLlxuQGZ1bmN0aW9uIC16Zi1icC1zZXJpYWxpemUoJG1hcCkge1xuICAkc3RyOiAnJztcbiAgQGVhY2ggJGtleSwgJHZhbHVlIGluICRtYXAge1xuICAgICRzdHI6ICRzdHIgKyAka2V5ICsgJz0nICsgLXpmLWJwLXRvLWVtKCR2YWx1ZSkgKyAnJic7XG4gIH1cbiAgJHN0cjogc3RyLXNsaWNlKCRzdHIsIDEsIC0yKTtcblxuICBAcmV0dXJuICRzdHI7XG59XG5cbi8vLyBGaW5kIHRoZSBuZXh0IGtleSBpbiBhIG1hcC5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7TWFwfSAkbWFwIC0gTWFwIHRvIHRyYXZlcnNlLlxuLy8vIEBwYXJhbSB7TWl4ZWR9ICRrZXkgLSBLZXkgdG8gdXNlIGFzIGEgc3RhcnRpbmcgcG9pbnQuXG4vLy9cbi8vLyBAcmV0dXJucyB7TWl4ZWR9IFRoZSB2YWx1ZSBmb3IgdGhlIGtleSBhZnRlciBgJGtleWAsIGlmIGAka2V5YCB3YXMgZm91bmQuIElmIGAka2V5YCB3YXMgbm90IGZvdW5kLCBvciBgJGtleWAgd2FzIHRoZSBsYXN0IHZhbHVlIGluIHRoZSBtYXAsIHJldHVybnMgYG51bGxgLlxuQGZ1bmN0aW9uIC16Zi1tYXAtbmV4dCgkbWFwLCAka2V5KSB7XG4gIC8vIFN0b3JlIHRoZSB2YWx1ZXMgb2YgdGhlIG1hcCBhcyBhIGxpc3QsIHNvIHdlIGNhbiBhY2Nlc3MgdGhlbSB3aXRoIG50aFxuICAkdmFsdWVzOiBtYXAtdmFsdWVzKCRtYXApO1xuXG4gIC8vIEdoZXR0byBmb3IgbG9vcFxuICAkaTogMTtcbiAgJGZvdW5kOiBmYWxzZTtcbiAgQGVhY2ggJHZhbCBpbiBtYXAta2V5cygkbWFwKSB7XG4gICAgQGlmICRmb3VuZCA9PSBmYWxzZSB7XG4gICAgICBAaWYgKCRrZXkgPT0gJHZhbCkge1xuICAgICAgICAkZm91bmQ6IHRydWU7XG4gICAgICB9XG4gICAgICAkaTogJGkgKyAxO1xuICAgIH1cbiAgfVxuXG4gIC8vIElmIHRoZSBrZXkgZG9lc24ndCBleGlzdCwgb3IgaXQncyB0aGUgbGFzdCBrZXkgaW4gdGhlIG1hcCwgcmV0dXJuIG51bGxcbiAgQGlmICRpID4gbGVuZ3RoKCRtYXApIHtcbiAgICBAcmV0dXJuIG51bGw7XG4gIH1cbiAgLy8gT3RoZXJ3aXNlLCByZXR1cm4gdGhlIHZhbHVlXG4gIEBlbHNlIHtcbiAgICBAcmV0dXJuIG50aCgkdmFsdWVzLCAkaSk7XG4gIH1cbn1cblxuLy8vIEdldCBhIHZhbHVlIGZvciBhIGJyZWFrcG9pbnQgZnJvbSBhIHJlc3BvbnNpdmUgY29uZmlnIG1hcC4gSWYgdGhlIGNvbmZpZyBtYXAgaGFzIHRoZSBrZXkgYCR2YWx1ZWAsIHRoZSBleGFjdCBicmVha3BvaW50IHZhbHVlIGlzIHJldHVybmVkLiBJZiB0aGUgY29uZmlnIG1hcCBkb2VzICpub3QqIGhhdmUgdGhlIGJyZWFrcG9pbnQsIHRoZSB2YWx1ZSBtYXRjaGluZyB0aGUgbmV4dCBsb3dlc3QgYnJlYWtwb2ludCBpbiB0aGUgY29uZmlnIG1hcCBpcyByZXR1cm5lZC5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7TWFwfSAkbWFwIC0gSW5wdXQgY29uZmlnIG1hcC5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICR2YWx1ZSAtIEJyZWFrcG9pbnQgbmFtZSB0byB1c2UuXG4vLy9cbi8vLyBAcmV0dXJuIHtNaXhlZH0gVGhlIGNvcnJlc3BvbmRpbmcgYnJlYWtwb2ludCB2YWx1ZS5cbkBmdW5jdGlvbiAtemYtZ2V0LWJwLXZhbCgkbWFwLCAkdmFsdWUpIHtcbiAgLy8gQ2hlY2sgaWYgdGhlIGJyZWFrcG9pbnQgbmFtZSBleGlzdHMgZ2xvYmFsbHlcbiAgQGlmIG5vdCBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsICR2YWx1ZSkge1xuICAgIEByZXR1cm4gbnVsbDtcbiAgfVxuICAvLyBDaGVjayBpZiB0aGUgYnJlYWtwb2ludCBuYW1lIGV4aXN0cyBpbiB0aGUgbG9jYWwgY29uZmlnIG1hcFxuICBAZWxzZSBpZiBtYXAtaGFzLWtleSgkbWFwLCAkdmFsdWUpIHtcbiAgICAvLyBJZiBpdCBkb2VzLCBqdXN0IHJldHVybiB0aGUgdmFsdWVcbiAgICBAcmV0dXJuIG1hcC1nZXQoJG1hcCwgJHZhbHVlKTtcbiAgfVxuICAvLyBPdGhlcndpc2UsIGZpbmQgdGhlIG5leHQgbG93ZXN0IGJyZWFrcG9pbnQgYW5kIHJldHVybiB0aGF0IHZhbHVlXG4gIEBlbHNlIHtcbiAgICAkYW5jaG9yOiBudWxsO1xuICAgICRmb3VuZDogZmFsc2U7XG5cbiAgICBAZWFjaCAka2V5LCAkdmFsIGluICRicmVha3BvaW50cyB7XG4gICAgICBAaWYgbm90ICRmb3VuZCB7XG4gICAgICAgIEBpZiBtYXAtaGFzLWtleSgkbWFwLCAka2V5KSB7XG4gICAgICAgICAgJGFuY2hvcjogJGtleTtcbiAgICAgICAgfVxuICAgICAgICBAaWYgJGtleSA9PSAkdmFsdWUge1xuICAgICAgICAgICRmb3VuZDogdHJ1ZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIEByZXR1cm4gbWFwLWdldCgkbWFwLCAkYW5jaG9yKTtcbiAgfVxufVxuXG4vLyBMZWdhY3kgYnJlYWtwb2ludCB2YXJpYWJsZXNcbi8vIFRoZXNlIHdpbGwgYmUgcmVtb3ZlZCBpbiA2LjNcbiRzbWFsbC11cDogbnVsbDtcbiRzbWFsbC1vbmx5OiBudWxsO1xuJG1lZGl1bS11cDogbnVsbDtcbiRtZWRpdW0tb25seTogbnVsbDtcbiRsYXJnZS11cDogbnVsbDtcbiRsYXJnZS1vbmx5OiBudWxsO1xuJHhsYXJnZS11cDogbnVsbDtcbiR4bGFyZ2Utb25seTogbnVsbDtcbiR4eGxhcmdlLXVwOiBudWxsO1xuJHh4bGFyZ2Utb25seTogbnVsbDtcblxuQGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgc21hbGwpIHtcbiAgJHNtYWxsLXVwOiBzY3JlZW47XG4gICRzbWFsbC1vbmx5OiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludChzbWFsbCBvbmx5KX0nKTtcbn1cblxuQGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgbWVkaXVtKSB7XG4gICRtZWRpdW0tdXA6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KG1lZGl1bSl9Jyk7XG4gICRtZWRpdW0tb25seTogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobWVkaXVtIG9ubHkpfScpO1xufVxuXG5AaWYgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCBsYXJnZSkge1xuICAkbGFyZ2UtdXA6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KGxhcmdlKX0nKTtcbiAgJGxhcmdlLW9ubHk6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KGxhcmdlIG9ubHkpfScpO1xufVxuXG5AaWYgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCB4bGFyZ2UpIHtcbiAgJHhsYXJnZS11cDogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQoeGxhcmdlKX0nKTtcbiAgJHhsYXJnZS1vbmx5OiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludCh4bGFyZ2Ugb25seSl9Jyk7XG59XG5cbkBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsIHh4bGFyZ2UpIHtcbiAgJHh4bGFyZ2UtdXA6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KHh4bGFyZ2UpfScpO1xufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgdHlwb2dyYXBoeS1iYXNlXG4vLy8vXG5cbi8vIEJhc2UgVHlwb2dyYXBoeVxuLy8gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC1cbi8vIFRoZXNlIGFyZSBzdHlsZXMgYXBwbGllZCB0byBiYXNpYyBIVE1MIHRhZ3MsIGluY2x1ZGluZzpcbi8vICAgLSBQYXJhZ3JhcGhzIDxwPlxuLy8gICAtIEJvbGQvaXRhbGljcyA8Yj4gPHN0cm9uZz4gPGk+IDxlbT5cbi8vICAgLSBTbWFsbCB0ZXh0IDxzbWFsbD5cbi8vICAgLSBIZWFkaW5ncyA8aDE+4oCUPGg2PlxuLy8gICAtIEFuY2hvcnMgPGE+XG4vLyAgIC0gRGl2aWRlcnMgPGhyPlxuLy8gICAtIExpc3RzIDx1bD4gPG9sPiA8ZGw+XG4vLyAgIC0gQmxvY2txdW90ZXMgPGJsb2NrcXVvdGU+XG4vLyAgIC0gQ29kZSBibG9ja3MgPGNvZGU+XG4vLyAgIC0gQWJicmV2aWF0aW9ucyA8YWJicj5cbi8vICAgLSBDaXRhdGlvbnMgPGNpdGU+XG4vLyAgIC0gS2V5c3Ryb2tlcyA8a2JkPlxuXG4vLy8gRm9udCBmYW1pbHkgZm9yIGhlYWRlciBlbGVtZW50cy5cbi8vLyBAdHlwZSBTdHJpbmcgfCBMaXN0XG4kaGVhZGVyLWZvbnQtZmFtaWx5OiAkYm9keS1mb250LWZhbWlseSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgd2VpZ2h0IG9mIGhlYWRlcnMuXG4vLy8gQHR5cGUgU3RyaW5nXG4kaGVhZGVyLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWwgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHN0eWxlIChlLmcuIGl0YWxpY2l6ZWQpIG9mIGhlYWRlcnMuXG4vLy8gQHR5cGUgU3RyaW5nXG4kaGVhZGVyLWZvbnQtc3R5bGU6IG5vcm1hbCAhZGVmYXVsdDtcblxuLy8vIEZvbnQgc3RhY2sgdXNlZCBmb3IgZWxlbWVudHMgdGhhdCB1c2UgbW9ub3NwYWNlZCB0eXBlLCBzdWNoIGFzIGNvZGUgc2FtcGxlc1xuLy8vIEB0eXBlIFN0cmluZyB8IExpc3RcbiRmb250LWZhbWlseS1tb25vc3BhY2U6IENvbnNvbGFzLCAnTGliZXJhdGlvbiBNb25vJywgQ291cmllciwgbW9ub3NwYWNlICFkZWZhdWx0O1xuXG4vLy8gU2l6ZXMgb2YgaGVhZGluZ3MgYXQgdmFyaW91cyBzY3JlZW4gc2l6ZXMuIEVhY2gga2V5IGlzIGEgYnJlYWtwb2ludCwgYW5kIGVhY2ggdmFsdWUgaXMgYSBtYXAgb2YgaGVhZGluZyBzaXplcy5cbi8vLyBAdHlwZSBNYXBcbiRoZWFkZXItc2l6ZXM6IChcbiAgc21hbGw6IChcbiAgICAnaDEnOiAyNCxcbiAgICAnaDInOiAyMCxcbiAgICAnaDMnOiAxOSxcbiAgICAnaDQnOiAxOCxcbiAgICAnaDUnOiAxNyxcbiAgICAnaDYnOiAxNixcbiAgKSxcbiAgbWVkaXVtOiAoXG4gICAgJ2gxJzogNDgsXG4gICAgJ2gyJzogNDAsXG4gICAgJ2gzJzogMzEsXG4gICAgJ2g0JzogMjUsXG4gICAgJ2g1JzogMjAsXG4gICAgJ2g2JzogMTYsXG4gICksXG4pICFkZWZhdWx0O1xuXG4vLy8gQ29sb3Igb2YgaGVhZGVycy5cbi8vLyBAdHlwZSBDb2xvclxuJGhlYWRlci1jb2xvcjogaW5oZXJpdCAhZGVmYXVsdDtcblxuLy8vIExpbmUgaGVpZ2h0IG9mIGhlYWRlcnMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kaGVhZGVyLWxpbmVoZWlnaHQ6IDEuNCAhZGVmYXVsdDtcblxuLy8vIEJvdHRvbSBtYXJnaW4gb2YgaGVhZGVycy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRoZWFkZXItbWFyZ2luLWJvdHRvbTogMC41cmVtICFkZWZhdWx0O1xuXG4vLy8gVGV4dCByZW5kZXJpbmcgbWV0aG9kIG9mIGhlYWRlcnMuXG4vLy8gQHR5cGUgU3RyaW5nXG4kaGVhZGVyLXRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHkgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHNpemUgb2YgYDxzbWFsbD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIE51bWJlclxuJHNtYWxsLWZvbnQtc2l6ZTogODAlICFkZWZhdWx0O1xuXG4vLy8gQ29sb3Igb2YgYDxzbWFsbD5gIGVsZW1lbnRzIHdoZW4gcGxhY2VkIGluc2lkZSBoZWFkZXJzLlxuLy8vIEB0eXBlIENvbG9yXG4kaGVhZGVyLXNtYWxsLWZvbnQtY29sb3I6ICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIExpbmUgaGVpZ2h0IG9mIHRleHQgaW5zaWRlIGA8cD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIE51bWJlclxuJHBhcmFncmFwaC1saW5laGVpZ2h0OiAxLjYgIWRlZmF1bHQ7XG5cbi8vLyBCb3R0b20gbWFyZ2luIG9mIHBhcmFncmFwaHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kcGFyYWdyYXBoLW1hcmdpbi1ib3R0b206IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBUZXh0IHJlbmRlcmluZyBtZXRob2QgZm9yIHBhcmFncmFwaCB0ZXh0LlxuLy8vIEB0eXBlIFN0cmluZ1xuJHBhcmFncmFwaC10ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5ICFkZWZhdWx0O1xuXG4vLy8gVGV4dCBjb2xvciBvZiBjb2RlIHNhbXBsZXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRjb2RlLWNvbG9yOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBGb250IGZhbWlseSBvZiBjb2RlIHNhbXBsZXMuXG4vLy8gQHR5cGUgU3RyaW5nIHwgTGlzdFxuJGNvZGUtZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1tb25vc3BhY2UgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHdlaWdodCBvZiB0ZXh0IGluIGNvZGUgc2FtcGxlcy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRjb2RlLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWwgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIGNvZGUgc2FtcGxlcy5cbi8vLyBAdHlwZSBDb2xvclxuJGNvZGUtYmFja2dyb3VuZDogJGxpZ2h0LWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgYXJvdW5kIGNvZGUgc2FtcGxlcy5cbi8vLyBAdHlwZSBMaXN0XG4kY29kZS1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBQYWRkaW5nIGFyb3VuZCB0ZXh0IG9mIGNvZGUgc2FtcGxlcy5cbi8vLyBAdHlwZSBOdW1iZXIgfCBMaXN0XG4kY29kZS1wYWRkaW5nOiByZW0tY2FsYygyIDUgMSkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGNvbG9yIGZvciBsaW5rcy5cbi8vLyBAdHlwZSBDb2xvclxuJGFuY2hvci1jb2xvcjogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGNvbG9yIGZvciBsaW5rcyBvbiBob3Zlci5cbi8vLyBAdHlwZSBDb2xvclxuJGFuY2hvci1jb2xvci1ob3Zlcjogc2NhbGUtY29sb3IoJGFuY2hvci1jb2xvciwgJGxpZ2h0bmVzczogLTE0JSkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHRleHQgZGVvY3JhdGlvbiBmb3IgbGlua3MuXG4vLy8gQHR5cGUgU3RyaW5nXG4kYW5jaG9yLXRleHQtZGVjb3JhdGlvbjogbm9uZSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgdGV4dCBkZWNvcmF0aW9uIGZvciBsaW5rcyBvbiBob3Zlci5cbi8vLyBAdHlwZSBTdHJpbmdcbiRhbmNob3ItdGV4dC1kZWNvcmF0aW9uLWhvdmVyOiBub25lICFkZWZhdWx0O1xuXG4vLy8gTWF4aW11bSB3aWR0aCBvZiBhIGRpdmlkZXIuXG4vLy8gQHR5cGUgTnVtYmVyXG4kaHItd2lkdGg6ICRnbG9iYWwtd2lkdGggIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJvcmRlciBmb3IgYSBkaXZpZGVyLlxuLy8vIEB0eXBlIExpc3RcbiRoci1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IG1hcmdpbiBmb3IgYSBkaXZpZGVyLlxuLy8vIEB0eXBlIE51bWJlciB8IExpc3RcbiRoci1tYXJnaW46IHJlbS1jYWxjKDIwKSBhdXRvICFkZWZhdWx0O1xuXG4vLy8gTGluZSBoZWlnaHQgZm9yIGl0ZW1zIGluIGEgbGlzdC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRsaXN0LWxpbmVoZWlnaHQ6ICRwYXJhZ3JhcGgtbGluZWhlaWdodCAhZGVmYXVsdDtcblxuLy8vIEJvdHRvbSBtYXJnaW4gZm9yIGl0ZW1zIGluIGEgbGlzdC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRsaXN0LW1hcmdpbi1ib3R0b206ICRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbSAhZGVmYXVsdDtcblxuLy8vIEJ1bGxldCB0eXBlIHRvIHVzZSBmb3IgdW5vcmRlcmVkIGxpc3RzIChlLmcuLCBgc3F1YXJlYCwgYGNpcmNsZWAsIGBkaXNjYCkuXG4vLy8gQHR5cGUgU3RyaW5nXG4kbGlzdC1zdHlsZS10eXBlOiBkaXNjICFkZWZhdWx0O1xuXG4vLy8gUG9zaXRpb25pbmcgZm9yIGJ1bGxldHMgb24gdW5vcmRlcmVkIGxpc3QgaXRlbXMuXG4vLy8gQHR5cGUgU3RyaW5nXG4kbGlzdC1zdHlsZS1wb3NpdGlvbjogb3V0c2lkZSAhZGVmYXVsdDtcblxuLy8vIExlZnQgKG9yIHJpZ2h0KSBtYXJnaW4gZm9yIGxpc3RzLlxuLy8vIEB0eXBlIE51bWJlclxuJGxpc3Qtc2lkZS1tYXJnaW46IDEuMjVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBMZWZ0IChvciByaWdodCkgbWFyZ2luIGZvciBhIGxpc3QgaW5zaWRlIGEgbGlzdC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRsaXN0LW5lc3RlZC1zaWRlLW1hcmdpbjogMS4yNXJlbSAhZGVmYXVsdDtcblxuLy8vIEJvdHRvbSBtYXJnaW4gZm9yIGA8ZGw+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRkZWZubGlzdC1tYXJnaW4tYm90dG9tOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gRm9udCB3ZWlnaHQgZm9yIGA8ZHQ+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRkZWZubGlzdC10ZXJtLXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZCAhZGVmYXVsdDtcblxuLy8vIFNwYWNpbmcgYmV0d2VlbiBgPGR0PmAgYW5kIGA8ZGQ+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRkZWZubGlzdC10ZXJtLW1hcmdpbi1ib3R0b206IDAuM3JlbSAhZGVmYXVsdDtcblxuLy8vIFRleHQgY29sb3Igb2YgYDxibG9ja3F1b3RlPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRibG9ja3F1b3RlLWNvbG9yOiAkZGFyay1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gUGFkZGluZyBpbnNpZGUgYSBgPGJsb2NrcXVvdGU+YCBlbGVtZW50LlxuLy8vIEB0eXBlIE51bWJlciB8IExpc3RcbiRibG9ja3F1b3RlLXBhZGRpbmc6IHJlbS1jYWxjKDkgMjAgMCAxOSkgIWRlZmF1bHQ7XG5cbi8vLyBTaWRlIGJvcmRlciBmb3IgYDxibG9ja3F1b3RlPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgTGlzdFxuJGJsb2NrcXVvdGUtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRm9udCBzaXplIGZvciBgPGNpdGU+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRjaXRlLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTMpICFkZWZhdWx0O1xuXG4vLy8gVGV4dCBjb2xvciBmb3IgYDxjaXRlPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRjaXRlLWNvbG9yOiAkZGFyay1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRm9udCBmYW1pbHkgZm9yIGA8a2JkPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgU3RyaW5nIHwgTGlzdFxuJGtleXN0cm9rZS1mb250OiAkZm9udC1mYW1pbHktbW9ub3NwYWNlICFkZWZhdWx0O1xuXG4vLy8gVGV4dCBjb2xvciBmb3IgYDxrYmQ+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBDb2xvclxuJGtleXN0cm9rZS1jb2xvcjogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBmb3IgYDxrYmQ+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBDb2xvclxuJGtleXN0cm9rZS1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIFBhZGRpbmcgZm9yIGA8a2JkPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgTnVtYmVyIHwgTGlzdFxuJGtleXN0cm9rZS1wYWRkaW5nOiByZW0tY2FsYygyIDQgMCkgIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgcmFkaXVzIGZvciBgPGtiZD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIE51bWJlciB8IExpc3RcbiRrZXlzdHJva2UtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuLy8vIEJvdHRvbSBib3JkZXIgc3R5bGUgZm9yIGA8YWJicj5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIExpc3RcbiRhYmJyLXVuZGVybGluZTogMXB4IGRvdHRlZCAkYmxhY2sgIWRlZmF1bHQ7XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXR5cG9ncmFwaHktYmFzZSB7XG4gIC8vIFR5cG9ncmFwaHkgcmVzZXRzXG4gIGRpdixcbiAgZGwsXG4gIGR0LFxuICBkZCxcbiAgdWwsXG4gIG9sLFxuICBsaSxcbiAgaDEsXG4gIGgyLFxuICBoMyxcbiAgaDQsXG4gIGg1LFxuICBoNixcbiAgcHJlLFxuICBmb3JtLFxuICBwLFxuICBibG9ja3F1b3RlLFxuICB0aCxcbiAgdGQge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG5cbiAgLy8gUGFyYWdyYXBoc1xuICBwIHtcbiAgICBmb250LXNpemU6IGluaGVyaXQ7XG4gICAgbGluZS1oZWlnaHQ6ICRwYXJhZ3JhcGgtbGluZWhlaWdodDtcbiAgICBtYXJnaW4tYm90dG9tOiAkcGFyYWdyYXBoLW1hcmdpbi1ib3R0b207XG4gICAgdGV4dC1yZW5kZXJpbmc6ICRwYXJhZ3JhcGgtdGV4dC1yZW5kZXJpbmc7XG4gIH1cblxuICAvLyBFbXBoYXNpemVkIHRleHRcbiAgZW0sXG4gIGkge1xuICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgfVxuXG4gIC8vIFN0cm9uZyB0ZXh0XG4gIHN0cm9uZyxcbiAgYiB7XG4gICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQ7XG4gICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gIH1cblxuICAvLyBTbWFsbCB0ZXh0XG4gIHNtYWxsIHtcbiAgICBmb250LXNpemU6ICRzbWFsbC1mb250LXNpemU7XG4gICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gIH1cblxuICAvLyBIZWFkaW5nc1xuICBoMSxcbiAgaDIsXG4gIGgzLFxuICBoNCxcbiAgaDUsXG4gIGg2IHtcbiAgICBmb250LWZhbWlseTogJGhlYWRlci1mb250LWZhbWlseTtcbiAgICBmb250LXdlaWdodDogJGhlYWRlci1mb250LXdlaWdodDtcbiAgICBmb250LXN0eWxlOiAkaGVhZGVyLWZvbnQtc3R5bGU7XG4gICAgY29sb3I6ICRoZWFkZXItY29sb3I7XG4gICAgdGV4dC1yZW5kZXJpbmc6ICRoZWFkZXItdGV4dC1yZW5kZXJpbmc7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXJnaW4tYm90dG9tOiAkaGVhZGVyLW1hcmdpbi1ib3R0b207XG4gICAgbGluZS1oZWlnaHQ6ICRoZWFkZXItbGluZWhlaWdodDtcblxuICAgIHNtYWxsIHtcbiAgICAgIGNvbG9yOiAkaGVhZGVyLXNtYWxsLWZvbnQtY29sb3I7XG4gICAgICBsaW5lLWhlaWdodDogMDtcbiAgICB9XG4gIH1cblxuICAvLyBIZWFkaW5nIHNpemVzXG4gIEBlYWNoICRzaXplLCAkaGVhZGVycyBpbiAkaGVhZGVyLXNpemVzIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRzaXplKSB7XG4gICAgICBAZWFjaCAkaGVhZGVyLCAkZm9udC1zaXplIGluICRoZWFkZXJzIHtcbiAgICAgICAgI3skaGVhZGVyfSB7XG4gICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygkZm9udC1zaXplKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIExpbmtzXG4gIGEge1xuICAgIGNvbG9yOiAkYW5jaG9yLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogJGFuY2hvci10ZXh0LWRlY29yYXRpb247XG4gICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIGNvbG9yOiAkYW5jaG9yLWNvbG9yLWhvdmVyO1xuICAgICAgQGlmICRhbmNob3ItdGV4dC1kZWNvcmF0aW9uLWhvdmVyICE9ICRhbmNob3ItdGV4dC1kZWNvcmF0aW9uIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiAkYW5jaG9yLXRleHQtZGVjb3JhdGlvbi1ob3ZlcjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBpbWcge1xuICAgICAgYm9yZGVyOiAwO1xuICAgIH1cbiAgfVxuXG4gIC8vIEhvcml6b250YWwgcnVsZVxuICBociB7XG4gICAgbWF4LXdpZHRoOiAkaHItd2lkdGg7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJvcmRlci1yaWdodDogMDtcbiAgICBib3JkZXItdG9wOiAwO1xuICAgIGJvcmRlci1ib3R0b206ICRoci1ib3JkZXI7XG4gICAgYm9yZGVyLWxlZnQ6IDA7XG4gICAgbWFyZ2luOiAkaHItbWFyZ2luO1xuICAgIGNsZWFyOiBib3RoO1xuICB9XG5cbiAgLy8gTGlzdHNcbiAgdWwsXG4gIG9sLFxuICBkbCB7XG4gICAgbGluZS1oZWlnaHQ6ICRsaXN0LWxpbmVoZWlnaHQ7XG4gICAgbWFyZ2luLWJvdHRvbTogJGxpc3QtbWFyZ2luLWJvdHRvbTtcbiAgICBsaXN0LXN0eWxlLXBvc2l0aW9uOiAkbGlzdC1zdHlsZS1wb3NpdGlvbjtcbiAgfVxuXG4gIC8vIExpc3QgaXRlbXNcbiAgbGkge1xuICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgfVxuXG4gIC8vIFVub3JkZXJlZCBsaXN0c1xuICB1bCB7XG4gICAgbGlzdC1zdHlsZS10eXBlOiAkbGlzdC1zdHlsZS10eXBlO1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06ICRsaXN0LXNpZGUtbWFyZ2luO1xuICB9XG5cbiAgLy8gT3JkZXJlZCBsaXN0c1xuICBvbCB7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogJGxpc3Qtc2lkZS1tYXJnaW47XG4gIH1cblxuICAvLyBOZXN0ZWQgdW5vcmRlcmVkL29yZGVyZWQgbGlzdHNcbiAgdWwsIG9sIHtcbiAgICAmICYge1xuICAgICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogJGxpc3QtbmVzdGVkLXNpZGUtbWFyZ2luO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gIH1cblxuICAvLyBEZWZpbml0aW9uIGxpc3RzXG4gIGRsIHtcbiAgICBtYXJnaW4tYm90dG9tOiAkZGVmbmxpc3QtbWFyZ2luLWJvdHRvbTtcblxuICAgIGR0IHtcbiAgICAgIG1hcmdpbi1ib3R0b206ICRkZWZubGlzdC10ZXJtLW1hcmdpbi1ib3R0b207XG4gICAgICBmb250LXdlaWdodDogJGRlZm5saXN0LXRlcm0td2VpZ2h0O1xuICAgIH1cbiAgfVxuXG4gIC8vIEJsb2NrcXVvdGVzXG4gIGJsb2NrcXVvdGUge1xuICAgIG1hcmdpbjogMCAwICRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTtcbiAgICBwYWRkaW5nOiAkYmxvY2txdW90ZS1wYWRkaW5nO1xuICAgIGJvcmRlci0jeyRnbG9iYWwtbGVmdH06ICRibG9ja3F1b3RlLWJvcmRlcjtcblxuICAgICYsIHAge1xuICAgICAgbGluZS1oZWlnaHQ6ICRwYXJhZ3JhcGgtbGluZWhlaWdodDtcbiAgICAgIGNvbG9yOiAkYmxvY2txdW90ZS1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAvLyBDaXRhdGlvbnNcbiAgY2l0ZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZm9udC1zaXplOiAkY2l0ZS1mb250LXNpemU7XG4gICAgY29sb3I6ICRjaXRlLWNvbG9yO1xuXG4gICAgJjpiZWZvcmUge1xuICAgICAgY29udGVudDogJ1xcMjAxNCBcXDAwMjAnO1xuICAgIH1cbiAgfVxuXG4gIC8vIEFiYnJldmlhdGlvbnNcbiAgYWJiciB7XG4gICAgY29sb3I6ICRib2R5LWZvbnQtY29sb3I7XG4gICAgY3Vyc29yOiBoZWxwO1xuICAgIGJvcmRlci1ib3R0b206ICRhYmJyLXVuZGVybGluZTtcbiAgfVxuXG4gIC8vIENvZGVcbiAgY29kZSB7XG4gICAgZm9udC1mYW1pbHk6ICRjb2RlLWZvbnQtZmFtaWx5O1xuICAgIGZvbnQtd2VpZ2h0OiAkY29kZS1mb250LXdlaWdodDtcbiAgICBjb2xvcjogJGNvZGUtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvZGUtYmFja2dyb3VuZDtcbiAgICBib3JkZXI6ICRjb2RlLWJvcmRlcjtcbiAgICBwYWRkaW5nOiAkY29kZS1wYWRkaW5nO1xuICB9XG5cbiAgLy8gS2V5c3Ryb2tlc1xuICBrYmQge1xuICAgIHBhZGRpbmc6ICRrZXlzdHJva2UtcGFkZGluZztcbiAgICBtYXJnaW46IDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGtleXN0cm9rZS1iYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiAka2V5c3Ryb2tlLWNvbG9yO1xuICAgIGZvbnQtZmFtaWx5OiAka2V5c3Ryb2tlLWZvbnQ7XG5cbiAgICBAaWYgaGFzLXZhbHVlKCRrZXlzdHJva2UtcmFkaXVzKSB7XG4gICAgICBib3JkZXItcmFkaXVzOiAka2V5c3Ryb2tlLXJhZGl1cztcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHR5cG9ncmFwaHktaGVscGVyc1xuLy8vL1xuXG4vLy8gRGVmYXVsdCBmb250IHNpemUgZm9yIGxlYWQgcGFyYWdyYXBocy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRsZWFkLWZvbnQtc2l6ZTogJGdsb2JhbC1mb250LXNpemUgKiAxLjI1ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBsaW5lIGhlaWdodCBmb3IgbGVhZCBwYXJhZ3JhcGhzLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGxlYWQtbGluZWhlaWdodDogMS42ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBsaW5lIGhlaWdodCBmb3Igc3ViaGVhZGVycy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRzdWJoZWFkZXItbGluZWhlaWdodDogMS40ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IGNvbG9yIGZvciBzdWJoZWFkZXJzLlxuLy8vIEB0eXBlIENvbG9yXG4kc3ViaGVhZGVyLWNvbG9yOiAkZGFyay1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IHdlaWdodCBmb3Igc3ViaGVhZGVycy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRzdWJoZWFkZXItZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgdG9wIG1hcmdpbiBmb3Igc3ViaGhlYWRlcnMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kc3ViaGVhZGVyLW1hcmdpbi10b3A6IDAuMnJlbSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYm90dG9tIG1hcmdpbiBmb3Igc3ViaGVhZGVycy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRzdWJoZWFkZXItbWFyZ2luLWJvdHRvbTogMC41cmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IHNpemUgZm9yIHN0YXRpc3RpYyBudW1iZXJzLlxuLy8vIEB0eXBlIE51bWJlclxuJHN0YXQtZm9udC1zaXplOiAyLjVyZW0gIWRlZmF1bHQ7XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXR5cG9ncmFwaHktaGVscGVycyB7XG4gIC8vIFVzZSB0byBjcmVhdGUgYSBzdWJoZWFkaW5nIHVuZGVyIGEgbWFpbiBoZWFkZXJcbiAgLy8gTWFrZSBzdXJlIHlvdSBwYWlyIHRoZSB0d28gZWxlbWVudHMgaW4gYSA8aGVhZGVyPiBlbGVtZW50LCBsaWtlIHRoaXM6XG4gIC8vIDxoZWFkZXI+XG4gIC8vICAgPGgxPkhlYWRpbmc8L2gxPlxuICAvLyAgIDxoMj5TdWJoZWFkaW5nPC9oMj5cbiAgLy8gPC9oZWFkZXI+XG4gIC5zdWJoZWFkZXIge1xuICAgIG1hcmdpbi10b3A6ICRzdWJoZWFkZXItbWFyZ2luLXRvcDtcbiAgICBtYXJnaW4tYm90dG9tOiAkc3ViaGVhZGVyLW1hcmdpbi1ib3R0b207XG4gICAgZm9udC13ZWlnaHQ6ICRzdWJoZWFkZXItZm9udC13ZWlnaHQ7XG4gICAgbGluZS1oZWlnaHQ6ICRzdWJoZWFkZXItbGluZWhlaWdodDtcbiAgICBjb2xvcjogJHN1YmhlYWRlci1jb2xvcjtcbiAgfVxuXG4gIC8vIFVzZSB0byBzdHlsZSBhbiBpbnRyb2R1Y3RvcnkgbGVhZCwgZGVjaywgYmx1cmIsIGV0Yy5cbiAgLmxlYWQge1xuICAgIGZvbnQtc2l6ZTogJGxlYWQtZm9udC1zaXplO1xuICAgIGxpbmUtaGVpZ2h0OiAkbGVhZC1saW5laGVpZ2h0O1xuICB9XG5cbiAgLy8gVXNlIHRvIHN0eWxlIGEgbGFyZ2UgbnVtYmVyIHRvIGRpc3BsYXkgYSBzdGF0aXN0aWNcbiAgLnN0YXQge1xuICAgIGZvbnQtc2l6ZTogJHN0YXQtZm9udC1zaXplO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuXG4gICAgcCArICYge1xuICAgICAgbWFyZ2luLXRvcDogLTFyZW07XG4gICAgfVxuICB9XG5cbiAgLy8gVXNlIHRvIHJlbW92ZSB0aGUgYnVsbGV0cyBmcm9tIGFuIHVub3JkZXJlZCBsaXN0XG4gIC5uby1idWxsZXQge1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06IDA7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbkBtaXhpbiBmb3VuZGF0aW9uLXRleHQtYWxpZ25tZW50IHtcbiAgQGVhY2ggJHNpemUgaW4gJGJyZWFrcG9pbnQtY2xhc3NlcyB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSkge1xuICAgICAgQGVhY2ggJGFsaWduIGluIChsZWZ0LCByaWdodCwgY2VudGVyLCBqdXN0aWZ5KSB7XG4gICAgICAgIEBpZiAkc2l6ZSAhPSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICAgICAgLiN7JHNpemV9LXRleHQtI3skYWxpZ259IHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246ICRhbGlnbjtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgQGVsc2Uge1xuICAgICAgICAgIC50ZXh0LSN7JGFsaWdufSB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiAkYWxpZ247XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vIElmIGB0cnVlYCwgYWxsIGVsZW1lbnRzIHdpbGwgaGF2ZSB0cmFuc3BhcmVudCBiYWNrZ3JvdW5kcyB3aGVuIHByaW50ZWQsIHRvIHNhdmUgb24gaW5rLlxuLy8vIEB0eXBlIEJvb2xlYW5cbi8vLyBAZ3JvdXAgZ2xvYmFsXG4kcHJpbnQtdHJhbnNwYXJlbnQtYmFja2dyb3VuZHM6IHRydWUgIWRlZmF1bHQ7XG5cbi8vIHNjc3MtbGludDpkaXNhYmxlIGFsbFxuXG5AbWl4aW4gZm91bmRhdGlvbi1wcmludC1zdHlsZXMge1xuICAuc2hvdy1mb3ItcHJpbnQgeyBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cblxuICBAbWVkaWEgcHJpbnQge1xuICAgICoge1xuICAgICAgQGlmICRwcmludC10cmFuc3BhcmVudC1iYWNrZ3JvdW5kcyB7XG4gICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgICB9XG5cbiAgICAgIGNvbG9yOiBibGFjayAhaW1wb3J0YW50OyAvLyBCbGFjayBwcmludHMgZmFzdGVyOiBoNWJwLmNvbS9zXG4gICAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICB0ZXh0LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC5zaG93LWZvci1wcmludCB7IGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH1cbiAgICAuaGlkZS1mb3ItcHJpbnQgeyBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cblxuICAgIHRhYmxlLnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogdGFibGUgIWltcG9ydGFudDsgfVxuICAgIHRoZWFkLnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogdGFibGUtaGVhZGVyLWdyb3VwICFpbXBvcnRhbnQ7IH1cbiAgICB0Ym9keS5zaG93LWZvci1wcmludCB7IGRpc3BsYXk6IHRhYmxlLXJvdy1ncm91cCAhaW1wb3J0YW50OyB9XG4gICAgdHIuc2hvdy1mb3ItcHJpbnQgeyBkaXNwbGF5OiB0YWJsZS1yb3cgIWltcG9ydGFudDsgfVxuICAgIHRkLnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50OyB9XG4gICAgdGguc2hvdy1mb3ItcHJpbnQgeyBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQ7IH1cblxuICAgIC8vIERpc3BsYXkgdGhlIFVSTCBvZiBhIGxpbmsgYWZ0ZXIgdGhlIHRleHRcbiAgICBhLFxuICAgIGE6dmlzaXRlZCB7IHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO31cbiAgICBhW2hyZWZdOmFmdGVyIHsgY29udGVudDogJyAoJyBhdHRyKGhyZWYpICcpJzsgfVxuXG4gICAgLy8gRG9uJ3QgZGlzcGxheSB0aGUgVVJMIGZvciBpbWFnZXMgb3IgSmF2YVNjcmlwdC9pbnRlcm5hbCBsaW5rc1xuICAgIC5pciBhOmFmdGVyLFxuICAgIGFbaHJlZl49J2phdmFzY3JpcHQ6J106YWZ0ZXIsXG4gICAgYVtocmVmXj0nIyddOmFmdGVyIHsgY29udGVudDogJyc7IH1cblxuICAgIC8vIERpc3BsYXkgd2hhdCBhbiBhYmJyZXZpYXRpb24gc3RhbmRzIGZvciBhZnRlciB0aGUgdGV4dFxuICAgIGFiYnJbdGl0bGVdOmFmdGVyIHsgY29udGVudDogJyAoJyBhdHRyKHRpdGxlKSAnKSc7IH1cblxuICAgIC8vIFByZXZlbnQgcGFnZSBicmVha3MgaW4gdGhlIG1pZGRsZSBvZiBhIGJsb2NrcXVvdGUgb3IgcHJlZm9ybWF0dGVkIHRleHQgYmxvY2tcbiAgICBwcmUsXG4gICAgYmxvY2txdW90ZSB7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAkZGFyay1ncmF5O1xuICAgICAgcGFnZS1icmVhay1pbnNpZGU6IGF2b2lkO1xuICAgIH1cblxuICAgIC8vIGg1YnAuY29tL3RcbiAgICB0aGVhZCB7IGRpc3BsYXk6IHRhYmxlLWhlYWRlci1ncm91cDsgfVxuXG4gICAgdHIsXG4gICAgaW1nIHsgcGFnZS1icmVhay1pbnNpZGU6IGF2b2lkOyB9XG5cbiAgICBpbWcgeyBtYXgtd2lkdGg6IDEwMCUgIWltcG9ydGFudDsgfVxuXG4gICAgQHBhZ2UgeyBtYXJnaW46IDAuNWNtOyB9XG5cbiAgICBwLFxuICAgIGgyLFxuICAgIGgzIHtcbiAgICAgIG9ycGhhbnM6IDM7XG4gICAgICB3aWRvd3M6IDM7XG4gICAgfVxuXG4gICAgLy8gQXZvaWQgcGFnZSBicmVha3MgYWZ0ZXIgYSBoZWFkaW5nXG4gICAgaDIsXG4gICAgaDMgeyBwYWdlLWJyZWFrLWFmdGVyOiBhdm9pZDsgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBidXR0b25cbi8vLy9cblxuLy8vIFBhZGRpbmcgaW5zaWRlIGJ1dHRvbnMuXG4vLy8gQHR5cGUgTGlzdFxuJGJ1dHRvbi1wYWRkaW5nOiAwLjg1ZW0gMWVtICFkZWZhdWx0O1xuXG4vLy8gTWFyZ2luIGFyb3VuZCBidXR0b25zLlxuLy8vIEB0eXBlIExpc3RcbiRidXR0b24tbWFyZ2luOiAwIDAgJGdsb2JhbC1tYXJnaW4gMCAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZmlsbCBmb3IgYnV0dG9ucy4gQ2FuIGVpdGhlciBiZSBgc29saWRgIG9yIGBob2xsb3dgLlxuLy8vIEB0eXBlIEtleXdvcmRcbiRidXR0b24tZmlsbDogc29saWQgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJhY2tncm91bmQgY29sb3IgZm9yIGJ1dHRvbnMuXG4vLy8gQHR5cGUgQ29sb3JcbiRidXR0b24tYmFja2dyb3VuZDogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9uIGhvdmVyIGZvciBidXR0b25zLlxuLy8vIEB0eXBlIENvbG9yXG4kYnV0dG9uLWJhY2tncm91bmQtaG92ZXI6IHNjYWxlLWNvbG9yKCRidXR0b24tYmFja2dyb3VuZCwgJGxpZ2h0bmVzczogLTE1JSkgIWRlZmF1bHQ7XG5cbi8vLyBGb250IGNvbG9yIGZvciBidXR0b25zLlxuLy8vIEB0eXBlIExpc3RcbiRidXR0b24tY29sb3I6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgY29sb3IgZm9yIGJ1dHRvbnMsIGlmIHRoZSBiYWNrZ3JvdW5kIGlzIGxpZ2h0LlxuLy8vIEB0eXBlIExpc3RcbiRidXR0b24tY29sb3ItYWx0OiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgcmFkaXVzIGZvciBidXR0b25zLCBkZWZhdWx0ZWQgdG8gZ2xvYmFsLXJhZGl1cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRidXR0b24tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuLy8vIFNpemVzIGZvciBidXR0b25zLlxuLy8vIEB0eXBlIE1hcFxuJGJ1dHRvbi1zaXplczogKFxuICB0aW55OiAwLjZyZW0sXG4gIHNtYWxsOiAwLjc1cmVtLFxuICBkZWZhdWx0OiAwLjlyZW0sXG4gIGxhcmdlOiAxLjI1cmVtLFxuKSAhZGVmYXVsdDtcblxuLy8vIG9wYWNpdHkgZm9yIGEgZGlzYWJsZWQgYnV0dG9uLlxuLy8vIEB0eXBlIExpc3RcbiRidXR0b24tb3BhY2l0eS1kaXNhYmxlZDogMC4yNSAhZGVmYXVsdDtcblxuLy8gSW50ZXJuYWw6IGZsaXAgZnJvbSBtYXJnaW4tcmlnaHQgdG8gbWFyZ2luLWxlZnQgZm9yIGRlZmF1bHRzXG5AaWYgJGdsb2JhbC10ZXh0LWRpcmVjdGlvbiA9PSAncnRsJyB7XG4gICRidXR0b24tbWFyZ2luOiAwIDAgJGdsb2JhbC1tYXJnaW4gJGdsb2JhbC1tYXJnaW4gIWRlZmF1bHQ7XG59XG5cbi8vIFRPRE86IERvY3VtZW50IGJ1dHRvbi1iYXNlKCkgbWl4aW5cbkBtaXhpbiBidXR0b24tYmFzZSB7XG4gIEBpbmNsdWRlIGRpc2FibGUtbW91c2Utb3V0bGluZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjI1cyBlYXNlLW91dCwgY29sb3IgMC4yNXMgZWFzZS1vdXQ7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmFkaXVzOiAkYnV0dG9uLXJhZGl1cztcbiAgcGFkZGluZzogJGJ1dHRvbi1wYWRkaW5nO1xuICBtYXJnaW46ICRidXR0b24tbWFyZ2luO1xuICBmb250LXNpemU6IG1hcC1nZXQoJGJ1dHRvbi1zaXplcywgZGVmYXVsdCk7XG59XG5cbi8vLyBFeHBhbmRzIGEgYnV0dG9uIHRvIG1ha2UgaXQgZnVsbC13aWR0aC5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRleHBhbmQgW3RydWVdIC0gU2V0IHRvIGB0cnVlYCB0byBlbmFibGUgdGhlIGV4cGFuZCBiZWhhdmlvci4gU2V0IHRvIGBmYWxzZWAgdG8gcmV2ZXJzZSB0aGlzIGJlaGF2aW9yLlxuQG1peGluIGJ1dHRvbi1leHBhbmQoJGV4cGFuZDogdHJ1ZSkge1xuICBAaWYgJGV4cGFuZCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICB9XG4gIEBlbHNlIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgbWFyZ2luOiAkYnV0dG9uLW1hcmdpbjtcbiAgfVxufVxuXG4vLy8gU2V0cyB0aGUgdmlzdWFsIHN0eWxlIG9mIGEgYnV0dG9uLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRiYWNrZ3JvdW5kIFskYnV0dG9uLWJhY2tncm91bmRdIC0gQmFja2dyb3VuZCBjb2xvciBvZiB0aGUgYnV0dG9uLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRiYWNrZ3JvdW5kLWhvdmVyIFskYnV0dG9uLWJhY2tncm91bmQtaG92ZXJdIC0gQmFja2dyb3VuZCBjb2xvciBvZiB0aGUgYnV0dG9uIG9uIGhvdmVyLiBTZXQgdG8gYGF1dG9gIHRvIGhhdmUgdGhlIG1peGluIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGUgYSBob3ZlciBjb2xvci5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgWyRidXR0b24tY29sb3JdIC0gVGV4dCBjb2xvciBvZiB0aGUgYnV0dG9uLiBTZXQgdG8gYGF1dG9gIHRvIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGUgYSBjb2xvciBiYXNlZCBvbiB0aGUgYmFja2dyb3VuZCBjb2xvci5cbkBtaXhpbiBidXR0b24tc3R5bGUoXG4gICRiYWNrZ3JvdW5kOiAkYnV0dG9uLWJhY2tncm91bmQsXG4gICRiYWNrZ3JvdW5kLWhvdmVyOiAkYnV0dG9uLWJhY2tncm91bmQtaG92ZXIsXG4gICRjb2xvcjogJGJ1dHRvbi1jb2xvclxuKSB7XG4gIEBpZiAkY29sb3IgPT0gYXV0byB7XG4gICAgJGNvbG9yOiBmb3JlZ3JvdW5kKCRiYWNrZ3JvdW5kLCAkYnV0dG9uLWNvbG9yLWFsdCwgJGJ1dHRvbi1jb2xvcik7XG4gIH1cblxuICBAaWYgJGJhY2tncm91bmQtaG92ZXIgPT0gYXV0byB7XG4gICAgJGJhY2tncm91bmQtaG92ZXI6IHNjYWxlLWNvbG9yKCRiYWNrZ3JvdW5kLCAkbGlnaHRuZXNzOiAtMjAlKTtcbiAgfVxuXG4gIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICBjb2xvcjogJGNvbG9yO1xuXG4gICY6aG92ZXIsICY6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kLWhvdmVyO1xuICAgIGNvbG9yOiAkY29sb3I7XG4gIH1cbn1cblxuLy8vIFJlbW92ZXMgYmFja2dyb3VuZCBmaWxsIG9uIGhvdmVyIGFuZCBmb2N1cyBmb3IgaG9sbG93IGJ1dHRvbnMuXG5AbWl4aW4gYnV0dG9uLWhvbGxvdyB7XG4gICYsXG4gICY6aG92ZXIsICY6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICB9XG59XG5cbkBtaXhpbiBidXR0b24taG9sbG93LXN0eWxlKCRjb2xvcjogJHByaW1hcnktY29sb3IpIHtcbiAgJGNvbG9yLWhvdmVyOiBzY2FsZS1jb2xvcigkY29sb3IsICRsaWdodG5lc3M6IC01MCUpO1xuXG4gIGJvcmRlcjogMXB4IHNvbGlkICRjb2xvcjtcbiAgY29sb3I6ICRjb2xvcjtcblxuICAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICBib3JkZXItY29sb3I6ICRjb2xvci1ob3ZlcjtcbiAgICBjb2xvcjogJGNvbG9yLWhvdmVyO1xuICB9XG59XG5cbi8vLyBBZGRzIGRpc2FibGVkIHN0eWxlcyB0byBhIGJ1dHRvbiBieSBmYWRpbmcgdGhlIGVsZW1lbnQsIHJlc2V0aW5nIHRoZSBjdXJzb3IsIGFuZCBkaXNhYmxpbmcgcG9pbnRlciBldmVudHMuXG5AbWl4aW4gYnV0dG9uLWRpc2FibGVkIHtcbiAgb3BhY2l0eTogJGJ1dHRvbi1vcGFjaXR5LWRpc2FibGVkO1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xufVxuXG4vLy8gQWRkcyBhIGRyb3Bkb3duIGFycm93IHRvIGEgYnV0dG9uLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkc2l6ZSBbMC40ZW1dIC0gU2l6ZSBvZiB0aGUgYXJyb3cuIFdlIHJlY29tbWVuZCB1c2luZyBhbiBgZW1gIHZhbHVlIHNvIHRoZSB0cmlhbmdsZSBzY2FsZXMgd2hlbiB1c2VkIGluc2lkZSBkaWZmZXJlbnQgc2l6ZXMgb2YgYnV0dG9ucy5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgW3doaXRlXSAtIENvbG9yIG9mIHRoZSBhcnJvdy5cbi8vLyBAcGFyYW0ge051bWJlcn0gJG9mZnNldCBbJGJ1dHRvbi1wYWRkaW5nXSAtIERpc3RhbmNlIGJldHdlZW4gdGhlIGFycm93IGFuZCB0aGUgdGV4dCBvZiB0aGUgYnV0dG9uLiBEZWZhdWx0cyB0byB3aGF0ZXZlciB0aGUgcmlnaHQgcGFkZGluZyBvZiBhIGJ1dHRvbiBpcy5cbkBtaXhpbiBidXR0b24tZHJvcGRvd24oXG4gICRzaXplOiAwLjRlbSxcbiAgJGNvbG9yOiAkd2hpdGUsXG4gICRvZmZzZXQ6IGdldC1zaWRlKCRidXR0b24tcGFkZGluZywgcmlnaHQpXG4pIHtcbiAgJjo6YWZ0ZXIge1xuICAgIEBpbmNsdWRlIGNzcy10cmlhbmdsZSgkc2l6ZSwgJGNvbG9yLCBkb3duKTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiAwLjRlbTsgLy8gQWxpZ25zIHRoZSBhcnJvdyB3aXRoIHRoZSB0ZXh0IG9mIHRoZSBidXR0b25cbiAgICBmbG9hdDogI3skZ2xvYmFsLXJpZ2h0fTtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiBnZXQtc2lkZSgkYnV0dG9uLXBhZGRpbmcsIHJpZ2h0KTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIH1cbn1cblxuLy8vIEFkZHMgYWxsIHN0eWxlcyBmb3IgYSBidXR0b24uIEZvciBtb3JlIGdyYW51bGFyIGNvbnRyb2wgb3ZlciBzdHlsZXMsIHVzZSB0aGUgaW5kaXZpZHVhbCBidXR0b24gbWl4aW5zLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGV4cGFuZCBbZmFsc2VdIC0gU2V0IHRvIGB0cnVlYCB0byBtYWtlIHRoZSBidXR0b24gZnVsbC13aWR0aC5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkYmFja2dyb3VuZCBbJGJ1dHRvbi1iYWNrZ3JvdW5kXSAtIEJhY2tncm91bmQgY29sb3Igb2YgdGhlIGJ1dHRvbi5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkYmFja2dyb3VuZC1ob3ZlciBbJGJ1dHRvbi1iYWNrZ3JvdW5kLWhvdmVyXSAtIEJhY2tncm91bmQgY29sb3Igb2YgdGhlIGJ1dHRvbiBvbiBob3Zlci4gU2V0IHRvIGBhdXRvYCB0byBoYXZlIHRoZSBtaXhpbiBhdXRvbWF0aWNhbGx5IGdlbmVyYXRlIGEgaG92ZXIgY29sb3IuXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIFskYnV0dG9uLWNvbG9yXSAtIFRleHQgY29sb3Igb2YgdGhlIGJ1dHRvbi4gU2V0IHRvIGBhdXRvYCB0byBhdXRvbWF0aWNhbGx5IGdlbmVyYXRlIGEgY29sb3IgYmFzZWQgb24gdGhlIGJhY2tncm91bmQgY29sb3IuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc3R5bGUgW3NvbGlkXSAtIFNldCB0byBgaG9sbG93YCB0byBjcmVhdGUgYSBob2xsb3cgYnV0dG9uLiBUaGUgY29sb3IgZGVmaW5lZCBpbiBgJGJhY2tncm91bmRgIHdpbGwgYmUgdXNlZCBhcyB0aGUgcHJpbWFyeSBjb2xvciBvZiB0aGUgYnV0dG9uLlxuQG1peGluIGJ1dHRvbihcbiAgJGV4cGFuZDogZmFsc2UsXG4gICRiYWNrZ3JvdW5kOiAkYnV0dG9uLWJhY2tncm91bmQsXG4gICRiYWNrZ3JvdW5kLWhvdmVyOiAkYnV0dG9uLWJhY2tncm91bmQtaG92ZXIsXG4gICRjb2xvcjogJGJ1dHRvbi1jb2xvcixcbiAgJHN0eWxlOiAkYnV0dG9uLWZpbGxcbikge1xuICBAaW5jbHVkZSBidXR0b24tYmFzZTtcblxuICBAaWYgJHN0eWxlID09IHNvbGlkIHtcbiAgICBAaW5jbHVkZSBidXR0b24tc3R5bGUoJGJhY2tncm91bmQsICRiYWNrZ3JvdW5kLWhvdmVyLCAkY29sb3IpO1xuICB9XG4gIEBlbHNlIGlmICRzdHlsZSA9PSBob2xsb3cge1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1ob2xsb3c7XG4gICAgQGluY2x1ZGUgYnV0dG9uLWhvbGxvdy1zdHlsZSgkYmFja2dyb3VuZCk7XG4gIH1cblxuICBAaWYgJGV4cGFuZCB7XG4gICAgQGluY2x1ZGUgYnV0dG9uLWV4cGFuZDtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1idXR0b24ge1xuICAuYnV0dG9uIHtcbiAgICBAaW5jbHVkZSBidXR0b247XG5cbiAgICAvLyBTaXplc1xuICAgIEBlYWNoICRzaXplLCAkdmFsdWUgaW4gbWFwLXJlbW92ZSgkYnV0dG9uLXNpemVzLCBkZWZhdWx0KSB7XG4gICAgICAmLiN7JHNpemV9IHtcbiAgICAgICAgZm9udC1zaXplOiAkdmFsdWU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5leHBhbmRlZCB7IEBpbmNsdWRlIGJ1dHRvbi1leHBhbmQ7IH1cblxuICAgIC8vIENvbG9yc1xuICAgIEBlYWNoICRuYW1lLCAkY29sb3IgaW4gJGZvdW5kYXRpb24tcGFsZXR0ZSB7XG4gICAgICBAaWYgJGJ1dHRvbi1maWxsICE9IGhvbGxvdyB7XG4gICAgICAgICYuI3skbmFtZX0ge1xuICAgICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1zdHlsZSgkY29sb3IsIGF1dG8sIGF1dG8pO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgICYuI3skbmFtZX0ge1xuICAgICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1ob2xsb3ctc3R5bGUoJGNvbG9yKTtcbiAgICAgICAgfVxuXG4gICAgICAgICYuI3skbmFtZX0uZHJvcGRvd246OmFmdGVyIHtcbiAgICAgICAgICBib3JkZXItdG9wLWNvbG9yOiAkY29sb3I7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBIb2xsb3cgc3R5bGVcbiAgICBAaWYgJGJ1dHRvbi1maWxsICE9IGhvbGxvdyB7XG4gICAgICAmLmhvbGxvdyB7XG4gICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1ob2xsb3c7XG4gICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1ob2xsb3ctc3R5bGU7XG5cbiAgICAgICAgQGVhY2ggJG5hbWUsICRjb2xvciBpbiAkZm91bmRhdGlvbi1wYWxldHRlIHtcbiAgICAgICAgICAmLiN7JG5hbWV9IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1ob2xsb3ctc3R5bGUoJGNvbG9yKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBEaXNhYmxlZCBzdHlsZVxuICAgICYuZGlzYWJsZWQsXG4gICAgJltkaXNhYmxlZF0ge1xuICAgICAgQGluY2x1ZGUgYnV0dG9uLWRpc2FibGVkO1xuICAgIH1cblxuICAgIC8vIERyb3Bkb3duIGFycm93XG4gICAgJi5kcm9wZG93biB7XG4gICAgICBAaW5jbHVkZSBidXR0b24tZHJvcGRvd247XG5cbiAgICAgIEBpZiAkYnV0dG9uLWZpbGwgPT0gaG9sbG93IHtcbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIGJvcmRlci10b3AtY29sb3I6ICRidXR0b24tYmFja2dyb3VuZDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIEJ1dHRvbiB3aXRoIGRyb3Bkb3duIGFycm93IG9ubHlcbiAgICAmLmFycm93LW9ubHk6OmFmdGVyIHtcbiAgICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06IDA7XG4gICAgICBmbG9hdDogbm9uZTtcbiAgICAgIHRvcDogLTAuMWVtO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZm9ybXNcbi8vLy9cblxuLy8vIEZvbnQgY29sb3Igb2YgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRpbnB1dC1jb2xvcjogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gRm9udCBjb2xvciBvZiBwbGFjZWhvbGRlciB0ZXh0IHdpdGhpbiB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LXBsYWNlaG9sZGVyLWNvbG9yOiAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBGb250IGZhbWlseSBvZiB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBGb250XG4kaW5wdXQtZm9udC1mYW1pbHk6IGluaGVyaXQgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHNpemUgb2YgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kaW5wdXQtZm9udC1zaXplOiByZW0tY2FsYygxNikgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtYmFja2dyb3VuZDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiBmb2N1c2VkIG9mIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtYmFja2dyb3VuZC1mb2N1czogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiBkaXNhYmxlZCB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LWJhY2tncm91bmQtZGlzYWJsZWQ6ICRsaWdodC1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gQm9yZGVyIGFyb3VuZCB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBCb3JkZXJcbiRpbnB1dC1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgYXJvdW5kIGZvY3VzZWQgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRpbnB1dC1ib3JkZXItZm9jdXM6IDFweCBzb2xpZCAkZGFyay1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gQm94IHNoYWRvdyBpbnNpZGUgdGV4dCBpbnB1dHMgd2hlbiBub3QgZm9jdXNlZC5cbi8vLyBAdHlwZSBTaGFkb3dcbiRpbnB1dC1zaGFkb3c6IGluc2V0IDAgMXB4IDJweCByZ2JhKCRibGFjaywgMC4xKSAhZGVmYXVsdDtcblxuLy8vIEJveCBzaGFkb3cgb3V0c2lkZSB0ZXh0IGlucHV0cyB3aGVuIGZvY3VzZWQuXG4vLy8gQHR5cGUgU2hhZG93XG4kaW5wdXQtc2hhZG93LWZvY3VzOiAwIDAgNXB4ICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIEN1cnNvciB0byB1c2Ugd2hlbiBob3ZlcmluZyBvdmVyIGEgZGlzYWJsZWQgdGV4dCBpbnB1dC5cbi8vLyBAdHlwZSBDdXJzb3JcbiRpbnB1dC1jdXJzb3ItZGlzYWJsZWQ6IG5vdC1hbGxvd2VkICFkZWZhdWx0O1xuXG4vLy8gUHJvcGVydGllcyB0byB0cmFuc2l0aW9uIG9uIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIFRyYW5zaXRpb25cbiRpbnB1dC10cmFuc2l0aW9uOiBib3gtc2hhZG93IDAuNXMsIGJvcmRlci1jb2xvciAwLjI1cyBlYXNlLWluLW91dCAhZGVmYXVsdDtcblxuLy8vIEVuYWJsZXMgdGhlIHVwL2Rvd24gYnV0dG9ucyB0aGF0IENocm9tZSBhbmQgRmlyZWZveCBhZGQgdG8gYDxpbnB1dCB0eXBlPSdudW1iZXInPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGlucHV0LW51bWJlci1zcGlubmVyczogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIFJhZGl1cyBmb3IgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgQm9yZGVyXG4kaW5wdXQtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuQG1peGluIGZvcm0tZWxlbWVudCB7XG4gICRoZWlnaHQ6ICgkaW5wdXQtZm9udC1zaXplICsgKCRmb3JtLXNwYWNpbmcgKiAxLjUpIC0gcmVtLWNhbGMoMSkpO1xuXG4gIGRpc3BsYXk6IGJsb2NrO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAkaGVpZ2h0O1xuICBwYWRkaW5nOiAkZm9ybS1zcGFjaW5nIC8gMjtcbiAgYm9yZGVyOiAkaW5wdXQtYm9yZGVyO1xuICBtYXJnaW46IDAgMCAkZm9ybS1zcGFjaW5nO1xuXG4gIGZvbnQtZmFtaWx5OiAkaW5wdXQtZm9udC1mYW1pbHk7XG4gIGZvbnQtc2l6ZTogJGlucHV0LWZvbnQtc2l6ZTtcbiAgY29sb3I6ICRpbnB1dC1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWJhY2tncm91bmQ7XG4gIGJveC1zaGFkb3c6ICRpbnB1dC1zaGFkb3c7XG4gIGJvcmRlci1yYWRpdXM6ICRpbnB1dC1yYWRpdXM7XG5cbiAgQGlmIGhhcy12YWx1ZSgkaW5wdXQtdHJhbnNpdGlvbikge1xuICAgIHRyYW5zaXRpb246ICRpbnB1dC10cmFuc2l0aW9uO1xuICB9XG5cbiAgLy8gRm9jdXMgc3RhdGVcbiAgJjpmb2N1cyB7XG4gICAgYm9yZGVyOiAkaW5wdXQtYm9yZGVyLWZvY3VzO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1iYWNrZ3JvdW5kLWZvY3VzO1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgYm94LXNoYWRvdzogJGlucHV0LXNoYWRvdy1mb2N1cztcblxuICAgIEBpZiBoYXMtdmFsdWUoJGlucHV0LXRyYW5zaXRpb24pIHtcbiAgICAgIHRyYW5zaXRpb246ICRpbnB1dC10cmFuc2l0aW9uO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1mb3JtLXRleHQge1xuICAvLyBUZXh0IGlucHV0c1xuICAje3RleHQtaW5wdXRzKCl9LFxuICB0ZXh0YXJlYSB7XG4gICAgQGluY2x1ZGUgZm9ybS1lbGVtZW50O1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICAtbW96LWFwcGVhcmFuY2U6IG5vbmU7XG4gIH1cblxuICAvLyBUZXh0IGFyZWFzXG4gIHRleHRhcmVhIHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG5cbiAgICAmW3Jvd3NdIHtcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICB9XG4gIH1cblxuICBpbnB1dCxcbiAgdGV4dGFyZWEge1xuICAgIC8vIFBsYWNlaG9sZGVyIHRleHRcbiAgICAmOjpwbGFjZWhvbGRlciB7XG4gICAgICBjb2xvcjogJGlucHV0LXBsYWNlaG9sZGVyLWNvbG9yO1xuICAgIH1cblxuICAgIC8vIERpc2FibGVkL3JlYWRvbmx5IHN0YXRlXG4gICAgJjpkaXNhYmxlZCxcbiAgICAmW3JlYWRvbmx5XSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtYmFja2dyb3VuZC1kaXNhYmxlZDtcbiAgICAgIGN1cnNvcjogJGlucHV0LWN1cnNvci1kaXNhYmxlZDtcbiAgICB9XG4gIH1cblxuICAvLyBSZXNldCBzdHlsZXMgb24gYnV0dG9uLWxpa2UgaW5wdXRzXG4gIFt0eXBlPSdzdWJtaXQnXSxcbiAgW3R5cGU9J2J1dHRvbiddIHtcbiAgICBib3JkZXItcmFkaXVzOiAkYnV0dG9uLXJhZGl1cztcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgLW1vei1hcHBlYXJhbmNlOiBub25lO1xuICB9XG5cbiAgLy8gUmVzZXQgTm9ybWFsaXplIHNldHRpbmcgY29udGVudC1ib3ggdG8gc2VhcmNoIGVsZW1lbnRzXG4gIC8vIHNjc3MtbGludDpkaXNhYmxlIFF1YWxpZnlpbmdFbGVtZW50XG4gIGlucHV0W3R5cGU9J3NlYXJjaCddIHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICB9XG5cbiAgLy8gTnVtYmVyIGlucHV0IHN0eWxlc1xuICBbdHlwZT0nbnVtYmVyJ10ge1xuICAgIEBpZiBub3QgJGlucHV0LW51bWJlci1zcGlubmVycyB7XG4gICAgICAtbW96LWFwcGVhcmFuY2U6IHRleHRmaWVsZDtcblxuICAgICAgW3R5cGU9J251bWJlciddOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuICAgICAgW3R5cGU9J251bWJlciddOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgICAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmb3Jtc1xuLy8vL1xuXG5AbWl4aW4gZm91bmRhdGlvbi1mb3JtLWNoZWNrYm94IHtcbiAgW3R5cGU9J2ZpbGUnXSxcbiAgW3R5cGU9J2NoZWNrYm94J10sXG4gIFt0eXBlPSdyYWRpbyddIHtcbiAgICBtYXJnaW46IDAgMCAkZm9ybS1zcGFjaW5nO1xuICB9XG5cbiAgLy8gU3R5bGVzIGZvciBpbnB1dC9sYWJlbCBzaWJsaW5nc1xuICBbdHlwZT0nY2hlY2tib3gnXSArIGxhYmVsLFxuICBbdHlwZT0ncmFkaW8nXSArIGxhYmVsIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogJGZvcm0tc3BhY2luZyAqIDAuNTtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogJGZvcm0tc3BhY2luZztcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcblxuICAgICZbZm9yXSB7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgfVxuICB9XG5cbiAgLy8gU3R5bGVzIGZvciBpbnB1dHMgaW5zaWRlIGxhYmVsc1xuICBsYWJlbCA+IFt0eXBlPSdjaGVja2JveCddLFxuICBsYWJlbCA+IFt0eXBlPSdyYWRpbyddIHtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogJGZvcm0tc3BhY2luZyAqIDAuNTtcbiAgfVxuXG4gIC8vIE5vcm1hbGl6ZSBmaWxlIGlucHV0IHdpZHRoXG4gIFt0eXBlPSdmaWxlJ10ge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmb3Jtc1xuLy8vL1xuXG4vLy8gQ29sb3IgZm9yIGZvcm0gbGFiZWxzLlxuLy8vIEB0eXBlIENvbG9yXG4kZm9ybS1sYWJlbC1jb2xvcjogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gRm9udCBzaXplIGZvciBmb3JtIGxhYmVscy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRmb3JtLWxhYmVsLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpICFkZWZhdWx0O1xuXG4vLy8gRm9udCB3ZWlnaHQgZm9yIGZvcm0gbGFiZWxzLlxuLy8vIEB0eXBlIEtleXdvcmRcbiRmb3JtLWxhYmVsLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWwgIWRlZmF1bHQ7XG5cbi8vLyBMaW5lIGhlaWdodCBmb3IgZm9ybSBsYWJlbHMuIFRoZSBoaWdoZXIgdGhlIG51bWJlciwgdGhlIG1vcmUgc3BhY2UgYmV0d2VlbiB0aGUgbGFiZWwgYW5kIGl0cyBpbnB1dCBmaWVsZC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRmb3JtLWxhYmVsLWxpbmUtaGVpZ2h0OiAxLjggIWRlZmF1bHQ7XG5cbkBtaXhpbiBmb3JtLWxhYmVsIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMDtcbiAgZm9udC1zaXplOiAkZm9ybS1sYWJlbC1mb250LXNpemU7XG4gIGZvbnQtd2VpZ2h0OiAkZm9ybS1sYWJlbC1mb250LXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRmb3JtLWxhYmVsLWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogJGZvcm0tbGFiZWwtY29sb3I7XG59XG5cbkBtaXhpbiBmb3JtLWxhYmVsLW1pZGRsZSB7XG4gICRpbnB1dC1ib3JkZXItd2lkdGg6IGdldC1ib3JkZXItdmFsdWUoJGlucHV0LWJvcmRlciwgd2lkdGgpO1xuICBtYXJnaW46IDAgMCAkZm9ybS1zcGFjaW5nO1xuICBwYWRkaW5nOiAoJGZvcm0tc3BhY2luZyAvIDIgKyByZW0tY2FsYygkaW5wdXQtYm9yZGVyLXdpZHRoKSkgMDtcbn1cblxuQG1peGluIGZvdW5kYXRpb24tZm9ybS1sYWJlbCB7XG4gIGxhYmVsIHtcbiAgICBAaW5jbHVkZSBmb3JtLWxhYmVsO1xuXG4gICAgJi5taWRkbGUge1xuICAgICAgQGluY2x1ZGUgZm9ybS1sYWJlbC1taWRkbGU7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmb3Jtc1xuLy8vL1xuXG4vLy8gRGVmYXVsdCBjb2xvciBmb3IgaGVscCB0ZXh0LlxuLy8vIEB0eXBlIENvbG9yXG4kaGVscHRleHQtY29sb3I6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBzaXplIGZvciBoZWxwIHRleHQuXG4vLy8gQHR5cGUgTnVtYmVyXG4kaGVscHRleHQtZm9udC1zaXplOiByZW0tY2FsYygxMykgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgc3R5bGUgZm9yIGhlbHAgdGV4dC5cbi8vLyBAdHlwZSBLZXl3b3JkXG4kaGVscHRleHQtZm9udC1zdHlsZTogaXRhbGljICFkZWZhdWx0O1xuXG5AbWl4aW4gZm91bmRhdGlvbi1mb3JtLWhlbHB0ZXh0IHtcbiAgLmhlbHAtdGV4dCB7XG4gICAgJG1hcmdpbi10b3A6ICgkZm9ybS1zcGFjaW5nICogMC41KSAqIC0xO1xuXG4gICAgbWFyZ2luLXRvcDogJG1hcmdpbi10b3A7XG4gICAgZm9udC1zaXplOiAkaGVscHRleHQtZm9udC1zaXplO1xuICAgIGZvbnQtc3R5bGU6ICRoZWxwdGV4dC1mb250LXN0eWxlO1xuICAgIGNvbG9yOiAkaGVscHRleHQtY29sb3I7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZvcm1zXG4vLy8vXG5cbi8vLyBDb2xvciBvZiBsYWJlbHMgcHJlZml4ZWQgdG8gYW4gaW5wdXQuXG4vLy8gQHR5cGUgQ29sb3JcbiRpbnB1dC1wcmVmaXgtY29sb3I6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgbGFiZWxzIHByZWZpeGVkIHRvIGFuIGlucHV0LlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtcHJlZml4LWJhY2tncm91bmQ6ICRsaWdodC1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gQm9yZGVyIGFyb3VuZCBsYWJlbHMgcHJlZml4ZWQgdG8gYW4gaW5wdXQuXG4vLy8gQHR5cGUgQm9yZGVyXG4kaW5wdXQtcHJlZml4LWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIExlZnQvcmlnaHQgcGFkZGluZyBvZiBhbiBwcmUvcG9zdGZpeGVkIGlucHV0IGxhYmVsXG4kaW5wdXQtcHJlZml4LXBhZGRpbmc6IDFyZW0gIWRlZmF1bHQ7XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWZvcm0tcHJlcG9zdGZpeCB7XG4gICRoZWlnaHQ6ICgkaW5wdXQtZm9udC1zaXplICsgJGZvcm0tc3BhY2luZyAqIDEuNSk7XG5cbiAgLmlucHV0LWdyb3VwIHtcbiAgICBkaXNwbGF5OiBpZigkZ2xvYmFsLWZsZXhib3gsIGZsZXgsIHRhYmxlKTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tYm90dG9tOiAkZm9ybS1zcGFjaW5nO1xuXG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgICB9XG5cbiAgICA+IDpmaXJzdC1jaGlsZCB7XG4gICAgICBib3JkZXItcmFkaXVzOiBpZigkZ2xvYmFsLXRleHQtZGlyZWN0aW9uID09IHJ0bCwgMCAkZ2xvYmFsLXJhZGl1cyAkZ2xvYmFsLXJhZGl1cyAwLCAkZ2xvYmFsLXJhZGl1cyAwIDAgJGdsb2JhbC1yYWRpdXMpO1xuICAgIH1cblxuICAgID4gOmxhc3QtY2hpbGQge1xuICAgICAgPiAqIHtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogaWYoJGdsb2JhbC10ZXh0LWRpcmVjdGlvbiA9PSBydGwsICRnbG9iYWwtcmFkaXVzIDAgMCAkZ2xvYmFsLXJhZGl1cywgMCAkZ2xvYmFsLXJhZGl1cyAkZ2xvYmFsLXJhZGl1cyAwKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAlaW5wdXQtZ3JvdXAtY2hpbGQge1xuICAgIG1hcmdpbjogMDtcblxuICAgIEBpZiBub3QgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIH1cbiAgfVxuXG4gIC5pbnB1dC1ncm91cC1sYWJlbCB7XG4gICAgQGV4dGVuZCAlaW5wdXQtZ3JvdXAtY2hpbGQ7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHBhZGRpbmc6IDAgJGlucHV0LXByZWZpeC1wYWRkaW5nO1xuICAgIGJhY2tncm91bmQ6ICRpbnB1dC1wcmVmaXgtYmFja2dyb3VuZDtcbiAgICBjb2xvcjogJGlucHV0LXByZWZpeC1jb2xvcjtcbiAgICBib3JkZXI6ICRpbnB1dC1wcmVmaXgtYm9yZGVyO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIHdpZHRoOiAxJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICB9XG5cbiAgICBAaWYgaGFzLXZhbHVlKCRpbnB1dC1wcmVmaXgtYm9yZGVyKSB7XG4gICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgYm9yZGVyLSN7JGdsb2JhbC1yaWdodH06IDA7XG4gICAgICB9XG5cbiAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgIGJvcmRlci0jeyRnbG9iYWwtbGVmdH06IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmlucHV0LWdyb3VwLWZpZWxkIHtcbiAgICBAZXh0ZW5kICVpbnB1dC1ncm91cC1jaGlsZDtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuXG4gICAgLy8gc2Nzcy1saW50OmRpc2FibGUgWmVyb1VuaXRcbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGZsZXg6IDEgMSAwcHg7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgaGVpZ2h0OiAkaGVpZ2h0O1xuICAgIH1cbiAgfVxuXG4gIC5pbnB1dC1ncm91cC1idXR0b24ge1xuICAgIEBleHRlbmQgJWlucHV0LWdyb3VwLWNoaWxkO1xuICAgIHBhZGRpbmctdG9wOiAwO1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgZmxleDogMCAwIGF1dG87XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIHdpZHRoOiAxJTtcbiAgICB9XG5cbiAgICBhLFxuICAgIGlucHV0LFxuICAgIGJ1dHRvbiB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgfVxuICB9XG5cbiAgLy8gU3BlY2lmaWNpdHkgYnVtcCBuZWVkZWQgdG8gcHJldmVudCBvdmVycmlkZSBieSBidXR0b25zXG4gIC8vIHNjc3MtbGludDpkaXNhYmxlIFF1YWxpZnlpbmdTZWxlY3RvclxuICAuaW5wdXQtZ3JvdXAgLmlucHV0LWdyb3VwLWJ1dHRvbiB7XG4gICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZm9ybXNcbi8vLy9cblxuLy8vIERlZmF1bHQgYm9yZGVyIGFyb3VuZCBjdXN0b20gZmllbGRzZXRzLlxuLy8vIEB0eXBlIEJvcmRlclxuJGZpZWxkc2V0LWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcGFkZGluZyBpbnNpZGUgY3VzdG9tIGZpZWxkc2V0cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRmaWVsZHNldC1wYWRkaW5nOiByZW0tY2FsYygyMCkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IG1hcmdpbiBhcm91bmQgY3VzdG9tIGZpZWxkc2V0cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRmaWVsZHNldC1tYXJnaW46IHJlbS1jYWxjKDE4IDApICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwYWRkaW5nIGJldHdlZW4gdGhlIGxlZ2VuZCB0ZXh0IGFuZCBmaWVsZHNldCBib3JkZXIuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbGVnZW5kLXBhZGRpbmc6IHJlbS1jYWxjKDAgMykgIWRlZmF1bHQ7XG5cbkBtaXhpbiBmaWVsZHNldCB7XG4gIGJvcmRlcjogJGZpZWxkc2V0LWJvcmRlcjtcbiAgcGFkZGluZzogJGZpZWxkc2V0LXBhZGRpbmc7XG4gIG1hcmdpbjogJGZpZWxkc2V0LW1hcmdpbjtcblxuICBsZWdlbmQge1xuICAgIC8vIENvdmVycyB1cCB0aGUgZmllbGRzZXQncyBib3JkZXIgdG8gY3JlYXRlIGFydGlmaWNpYWwgcGFkZGluZ1xuICAgIGJhY2tncm91bmQ6ICRib2R5LWJhY2tncm91bmQ7XG4gICAgcGFkZGluZzogJGxlZ2VuZC1wYWRkaW5nO1xuICAgIG1hcmdpbjogMDtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiByZW0tY2FsYygtMyk7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tZm9ybS1maWVsZHNldCB7XG4gIGZpZWxkc2V0IHtcbiAgICBib3JkZXI6IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBtYXJnaW46IDA7XG4gIH1cblxuICBsZWdlbmQge1xuICAgIG1hcmdpbi1ib3R0b206ICRmb3JtLXNwYWNpbmcgKiAwLjU7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG5cbiAgLmZpZWxkc2V0IHtcbiAgICBAaW5jbHVkZSBmaWVsZHNldDtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZm9ybXNcbi8vLy9cblxuLy8vIEJhY2tncm91bmQgY29sb3IgZm9yIHNlbGVjdCBtZW51cy5cbi8vLyBAdHlwZSBDb2xvclxuJHNlbGVjdC1iYWNrZ3JvdW5kOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciBvZiB0aGUgZHJvcGRvd24gdHJpYW5nbGUgaW5zaWRlIHNlbGVjdCBtZW51cy4gU2V0IHRvIGB0cmFuc3BhcmVudGAgdG8gcmVtb3ZlIGl0IGVudGlyZWx5LlxuLy8vIEB0eXBlIENvbG9yXG4kc2VsZWN0LXRyaWFuZ2xlLWNvbG9yOiAkZGFyay1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCByYWRpdXMgZm9yIHNlbGVjdCBtZW51cy5cbi8vLyBAdHlwZSBDb2xvclxuJHNlbGVjdC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG5AbWl4aW4gZm9ybS1zZWxlY3Qge1xuICAkaGVpZ2h0OiAoJGlucHV0LWZvbnQtc2l6ZSArICgkZm9ybS1zcGFjaW5nICogMS41KSAtIHJlbS1jYWxjKDEpKTtcblxuICBoZWlnaHQ6ICRoZWlnaHQ7XG4gIHBhZGRpbmc6ICgkZm9ybS1zcGFjaW5nIC8gMik7XG4gIGJvcmRlcjogJGlucHV0LWJvcmRlcjtcbiAgbWFyZ2luOiAwIDAgJGZvcm0tc3BhY2luZztcbiAgZm9udC1zaXplOiAkaW5wdXQtZm9udC1zaXplO1xuICBmb250LWZhbWlseTogJGlucHV0LWZvbnQtZmFtaWx5O1xuICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICBjb2xvcjogJGlucHV0LWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2VsZWN0LWJhY2tncm91bmQ7XG4gIGJvcmRlci1yYWRpdXM6ICRzZWxlY3QtcmFkaXVzO1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIC1tb3otYXBwZWFyYW5jZTogbm9uZTtcblxuICBAaWYgJHNlbGVjdC10cmlhbmdsZS1jb2xvciAhPSB0cmFuc3BhcmVudCB7XG4gICAgQGluY2x1ZGUgYmFja2dyb3VuZC10cmlhbmdsZSgkc2VsZWN0LXRyaWFuZ2xlLWNvbG9yKTtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDlweCA2cHg7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogJGdsb2JhbC1yaWdodCBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1vcmlnaW46IGNvbnRlbnQtYm94O1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIH1cblxuICAvLyBEaXNhYmxlZCBzdGF0ZVxuICAmOmRpc2FibGVkIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtYmFja2dyb3VuZC1kaXNhYmxlZDtcbiAgICBjdXJzb3I6ICRpbnB1dC1jdXJzb3ItZGlzYWJsZWQ7XG4gIH1cblxuICAvLyBIaWRlIHRoZSBkcm9wZG93biBhcnJvdyBzaG93biBpbiBuZXdlciBJRSB2ZXJzaW9uc1xuICAmOjotbXMtZXhwYW5kIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgJlttdWx0aXBsZV0ge1xuICAgIGhlaWdodDogYXV0bztcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWZvcm0tc2VsZWN0IHtcbiAgc2VsZWN0IHtcbiAgICBAaW5jbHVkZSBmb3JtLXNlbGVjdDtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgYWJpZGVcbi8vLy9cblxuLy8vIFNldHMgaWYgZXJyb3Igc3R5bGVzIHNob3VsZCBiZSBhZGRlZCB0byBpbnB1dHMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGFiaWRlLWlucHV0czogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIFNldHMgaWYgZXJyb3Igc3R5bGVzIHNob3VsZCBiZSBhZGRlZCB0byBsYWJlbHMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGFiaWRlLWxhYmVsczogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3IgdG8gdXNlIGZvciBpbnZhbGlkIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtYmFja2dyb3VuZC1pbnZhbGlkOiBtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsIGFsZXJ0KSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIHRvIHVzZSBmb3IgbGFiZWxzIG9mIGludmFsaWQgaW5wdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kZm9ybS1sYWJlbC1jb2xvci1pbnZhbGlkOiBtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsIGFsZXJ0KSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBjb2xvciBmb3IgZm9ybSBlcnJvciB0ZXh0LlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtZXJyb3ItY29sb3I6IG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgYWxlcnQpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IHNpemUgZm9yIGZvcm0gZXJyb3IgdGV4dC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRpbnB1dC1lcnJvci1mb250LXNpemU6IHJlbS1jYWxjKDEyKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCB3ZWlnaHQgZm9yIGZvcm0gZXJyb3IgdGV4dC5cbi8vLyBAdHlwZSBLZXl3b3JkXG4kaW5wdXQtZXJyb3ItZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG5cbi8vLyBTdHlsZXMgdGhlIGJhY2tncm91bmQgYW5kIGJvcmRlciBvZiBhbiBpbnB1dCBmaWVsZCB0byBoYXZlIGFuIGVycm9yIHN0YXRlLlxuLy8vXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGJhY2tncm91bmQgWyRhbGVydC1jb2xvcl0gLSBDb2xvciB0byB1c2UgZm9yIHRoZSBiYWNrZ3JvdW5kIGFuZCBib3JkZXIuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRiYWNrZ3JvdW5kLWFscGhhIFswLjFdIC0gVHJhbnNwYXJlbmN5IGxldmVsIG9mIHRoZSBiYWNrZ3JvdW5kIGNvbG9yLlxuQG1peGluIGZvcm0taW5wdXQtZXJyb3IoXG4gICRiYWNrZ3JvdW5kOiAkaW5wdXQtYmFja2dyb3VuZC1pbnZhbGlkLFxuICAkYmFja2dyb3VuZC1hbHBoYTogMC4xXG4pIHtcbiAgJjpub3QoOmZvY3VzKSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkYmFja2dyb3VuZCwgJGJhY2tncm91bmQtYWxwaGEpO1xuICAgIGJvcmRlci1jb2xvcjogJGJhY2tncm91bmQ7XG4gIH1cbn1cblxuLy8vIEFkZHMgZXJyb3Igc3R5bGVzIHRvIGEgZm9ybSBlbGVtZW50LCB1c2luZyB0aGUgdmFsdWVzIGluIHRoZSBzZXR0aW5ncyBmaWxlLlxuQG1peGluIGZvcm0tZXJyb3Ige1xuICBkaXNwbGF5OiBub25lO1xuICBtYXJnaW4tdG9wOiAkZm9ybS1zcGFjaW5nICogLTAuNTtcbiAgbWFyZ2luLWJvdHRvbTogJGZvcm0tc3BhY2luZztcbiAgZm9udC1zaXplOiAkaW5wdXQtZXJyb3ItZm9udC1zaXplO1xuICBmb250LXdlaWdodDogJGlucHV0LWVycm9yLWZvbnQtd2VpZ2h0O1xuICBjb2xvcjogJGlucHV0LWVycm9yLWNvbG9yO1xufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1mb3JtLWVycm9yIHtcbiAgQGlmICRhYmlkZS1pbnB1dHMge1xuICAgIC8vIEVycm9yIGNsYXNzIGZvciBpbnZhbGlkIGlucHV0c1xuICAgIC5pcy1pbnZhbGlkLWlucHV0IHtcbiAgICAgIEBpbmNsdWRlIGZvcm0taW5wdXQtZXJyb3I7XG4gICAgfVxuICB9XG5cbiAgQGlmICRhYmlkZS1sYWJlbHMge1xuICAgIC8vIEVycm9yIGNsYXNzIGZvciBsYWJlbHMgb2YgaW52YWxpZCBvdXRwdXRzXG4gICAgLmlzLWludmFsaWQtbGFiZWwge1xuICAgICAgY29sb3I6ICRmb3JtLWxhYmVsLWNvbG9yLWludmFsaWQ7XG4gICAgfVxuICB9XG5cbiAgLy8gRm9ybSBlcnJvciBlbGVtZW50XG4gIC5mb3JtLWVycm9yIHtcbiAgICBAaW5jbHVkZSBmb3JtLWVycm9yO1xuXG4gICAgJi5pcy12aXNpYmxlIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLyBIaWRlIGFuIGVsZW1lbnQgYnkgZGVmYXVsdCwgb25seSBkaXNwbGF5aW5nIGl0IGFib3ZlIGEgY2VydGFpbiBzY3JlZW4gc2l6ZS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzaXplIC0gQnJlYWtwb2ludCB0byB1c2UuICoqTXVzdCBiZSBhIGJyZWFrcG9pbnQgZGVmaW5lZCBpbiBgJGJyZWFrcG9pbnRzYC4qKlxuQG1peGluIHNob3ctZm9yKCRzaXplKSB7XG4gICRzaXplOiBtYXAtZ2V0KCRicmVha3BvaW50cywgJHNpemUpO1xuICAkc2l6ZTogLXpmLWJwLXRvLWVtKCRzaXplKSAtICgxIC8gMTYpO1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUgZG93bikge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4vLy8gSGlkZSBhbiBlbGVtZW50IGJ5IGRlZmF1bHQsIG9ubHkgZGlzcGxheWluZyBpdCB3aXRoaW4gYSBjZXJ0YWluIGJyZWFrcG9pbnQuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc2l6ZSAtIEJyZWFrcG9pbnQgdG8gdXNlLiAqKk11c3QgYmUgYSBicmVha3BvaW50IGRlZmluZWQgaW4gYCRicmVha3BvaW50c2AuKipcbkBtaXhpbiBzaG93LWZvci1vbmx5KCRzaXplKSB7XG4gICRsb3dlci1ib3VuZC1zaXplOiBtYXAtZ2V0KCRicmVha3BvaW50cywgJHNpemUpO1xuICAkdXBwZXItYm91bmQtc2l6ZTogLXpmLW1hcC1uZXh0KCRicmVha3BvaW50cywgJHNpemUpO1xuXG4gIC8vIG1vcmUgb2Z0ZW4gdGhhbiBub3QgdGhpcyB3aWxsIGJlIGNvcnJlY3QsIGp1c3Qgb25lIHRpbWUgcm91bmQgdGhlIGxvb3AgaXQgd29uJ3Qgc28gc2V0IGluIHNjb3BlIGhlcmVcbiAgJGxvd2VyLWJvdW5kOiAtemYtYnAtdG8tZW0oJGxvd2VyLWJvdW5kLXNpemUpIC0gKDEgLyAxNik7XG4gIC8vIHRlc3QgYWN0dWFsIGxvd2VyLWJvdW5kLXNpemUsIGlmIDAgc2V0IGl0IHRvIDBlbVxuICBAaWYgc3RyaXAtdW5pdCgkbG93ZXItYm91bmQtc2l6ZSkgPT0gMCB7XG4gICAgJGxvd2VyLWJvdW5kOiAtemYtYnAtdG8tZW0oJGxvd2VyLWJvdW5kLXNpemUpO1xuICB9XG5cbiAgQGlmICR1cHBlci1ib3VuZC1zaXplID09IG51bGwge1xuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRsb3dlci1ib3VuZCkge1xuICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgJHVwcGVyLWJvdW5kOiAtemYtYnAtdG8tZW0oJHVwcGVyLWJvdW5kLXNpemUpO1xuXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJGxvd2VyLWJvdW5kKSwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkdXBwZXItYm91bmQpIHtcbiAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbn1cblxuXG4vLy8gU2hvdyBhbiBlbGVtZW50IGJ5IGRlZmF1bHQsIGFuZCBoaWRlIGl0IGFib3ZlIGEgY2VydGFpbiBzY3JlZW4gc2l6ZS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzaXplIC0gQnJlYWtwb2ludCB0byB1c2UuICoqTXVzdCBiZSBhIGJyZWFrcG9pbnQgZGVmaW5lZCBpbiBgJGJyZWFrcG9pbnRzYC4qKlxuQG1peGluIGhpZGUtZm9yKCRzaXplKSB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUpIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLy8vIFNob3cgYW4gZWxlbWVudCBieSBkZWZhdWx0LCBhbmQgaGlkZSBpdCBhYm92ZSBhIGNlcnRhaW4gc2NyZWVuIHNpemUuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc2l6ZSAtIEJyZWFrcG9pbnQgdG8gdXNlLiAqKk11c3QgYmUgYSBicmVha3BvaW50IGRlZmluZWQgaW4gYCRicmVha3BvaW50c2AuKipcbkBtaXhpbiBoaWRlLWZvci1vbmx5KCRzaXplKSB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUgb25seSkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi12aXNpYmlsaXR5LWNsYXNzZXMge1xuICAvLyBCYXNpYyBoaWRpbmcgY2xhc3Nlc1xuICAuaGlkZSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmludmlzaWJsZSB7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB9XG5cbiAgLy8gUmVzcG9uc2l2ZSB2aXNpYmlsaXR5IGNsYXNzZXNcbiAgQGVhY2ggJHNpemUgaW4gJGJyZWFrcG9pbnQtY2xhc3NlcyB7XG4gICAgQGlmICRzaXplICE9ICQtemYtemVyby1icmVha3BvaW50IHtcbiAgICAgIC5oaWRlLWZvci0jeyRzaXplfSB7XG4gICAgICAgIEBpbmNsdWRlIGhpZGUtZm9yKCRzaXplKTtcbiAgICAgIH1cblxuICAgICAgLnNob3ctZm9yLSN7JHNpemV9IHtcbiAgICAgICAgQGluY2x1ZGUgc2hvdy1mb3IoJHNpemUpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5oaWRlLWZvci0jeyRzaXplfS1vbmx5IHtcbiAgICAgIEBpbmNsdWRlIGhpZGUtZm9yLW9ubHkoJHNpemUpO1xuICAgIH1cblxuICAgIC5zaG93LWZvci0jeyRzaXplfS1vbmx5IHtcbiAgICAgIEBpbmNsdWRlIHNob3ctZm9yLW9ubHkoJHNpemUpO1xuICAgIH1cbiAgfVxuXG4gIC8vIFNjcmVlbiByZWFkZXIgdmlzaWJpbGl0eSBjbGFzc2VzXG4gIC8vIE5lZWQgYSBcImhpZGUtZm9yLXNyXCIgY2xhc3M/IEFkZCBhcmlhLWhpZGRlbj0ndHJ1ZScgdG8gdGhlIGVsZW1lbnRcbiAgLnNob3ctZm9yLXNyLFxuICAuc2hvdy1vbi1mb2N1cyB7XG4gICAgQGluY2x1ZGUgZWxlbWVudC1pbnZpc2libGU7XG4gIH1cblxuICAvLyBPbmx5IGRpc3BsYXkgdGhlIGVsZW1lbnQgd2hlbiBpdCdzIGZvY3VzZWRcbiAgLnNob3ctb24tZm9jdXMge1xuICAgICY6YWN0aXZlLFxuICAgICY6Zm9jdXMge1xuICAgICAgQGluY2x1ZGUgZWxlbWVudC1pbnZpc2libGUtb2ZmO1xuICAgIH1cbiAgfVxuXG4gIC8vIExhbmRzY2FwZSBhbmQgcG9ydHJhaXQgdmlzaWJpbGl0eVxuICAuc2hvdy1mb3ItbGFuZHNjYXBlLFxuICAuaGlkZS1mb3ItcG9ydHJhaXQge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhbmRzY2FwZSkge1xuICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHBvcnRyYWl0KSB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG5cbiAgLmhpZGUtZm9yLWxhbmRzY2FwZSxcbiAgLnNob3ctZm9yLXBvcnRyYWl0IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhbmRzY2FwZSkge1xuICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQocG9ydHJhaXQpIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmbG9hdFxuLy8vL1xuXG5AbWl4aW4gZm91bmRhdGlvbi1mbG9hdC1jbGFzc2VzIHtcbiAgLmZsb2F0LWxlZnQge1xuICAgIGZsb2F0OiBsZWZ0ICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZmxvYXQtcmlnaHQge1xuICAgIGZsb2F0OiByaWdodCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmZsb2F0LWNlbnRlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICB9XG5cbiAgLmNsZWFyZml4IHtcbiAgICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgYWNjb3JkaW9uXG4vLy8vXG5cbi8vLyBEZWZhdWx0IGJhY2tncm91bmQgY29sb3Igb2YgYW4gYWNjb3JkaW9uIGdyb3VwLlxuLy8vIEB0eXBlIENvbG9yXG4kYWNjb3JkaW9uLWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIElmIGB0cnVlYCwgYWRkcyBwbHVzIGFuZCBtaW51cyBpY29ucyB0byB0aGUgc2lkZSBvZiBlYWNoIGFjY29yZGlvbiB0aXRsZS5cbi8vLyBAdHlwZSBCb29sZWFuXG4kYWNjb3JkaW9uLXBsdXNtaW51czogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgdGV4dCBjb2xvciBmb3IgaXRlbXMgaW4gYSBNZW51LlxuLy8vIEB0eXBlIENvbG9yXG4kYWNjb3JkaW9uLWl0ZW0tY29sb3I6IGZvcmVncm91bmQoJGFjY29yZGlvbi1iYWNrZ3JvdW5kLCAkcHJpbWFyeS1jb2xvcikgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJhY2tncm91bmQgY29sb3Igb24gaG92ZXIgZm9yIGl0ZW1zIGluIGEgTWVudS5cbi8vLyBAdHlwZSBDb2xvclxuJGFjY29yZGlvbi1pdGVtLWJhY2tncm91bmQtaG92ZXI6ICRsaWdodC1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwYWRkaW5nIG9mIGFuIGFjY29yZGlvbiBpdGVtLlxuLy8vIEB0eXBlIE51bWJlciB8IExpc3RcbiRhY2NvcmRpb24taXRlbS1wYWRkaW5nOiAxLjI1cmVtIDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJhY2tncm91bmQgY29sb3Igb2YgdGFiIGNvbnRlbnQuXG4vLy8gQHR5cGUgQ29sb3JcbiRhY2NvcmRpb24tY29udGVudC1iYWNrZ3JvdW5kOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJvcmRlciBjb2xvciBvZiB0YWIgY29udGVudC5cbi8vLyBAdHlwZSBDb2xvclxuJGFjY29yZGlvbi1jb250ZW50LWJvcmRlcjogMXB4IHNvbGlkICRsaWdodC1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCB0ZXh0IGNvbG9yIG9mIHRhYiBjb250ZW50LlxuLy8vIEB0eXBlIENvbG9yXG4kYWNjb3JkaW9uLWNvbnRlbnQtY29sb3I6IGZvcmVncm91bmQoJGFjY29yZGlvbi1iYWNrZ3JvdW5kLCAkcHJpbWFyeS1jb2xvcikgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBhZGRpbmcgZm9yIHRhYiBjb250ZW50LlxuLy8vIEB0eXBlIE51bWJlciB8IExpc3RcbiRhY2NvcmRpb24tY29udGVudC1wYWRkaW5nOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGFuIGFjY29yZGlvbiBjb250YWluZXIuIEFwcGx5IHRoaXMgdG8gdGhlIHNhbWUgZWxlbWVudCB0aGF0IGdldHMgYGRhdGEtYWNjb3JkaW9uYC5cbkBtaXhpbiBhY2NvcmRpb24tY29udGFpbmVyIHtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICBiYWNrZ3JvdW5kOiAkYWNjb3JkaW9uLWJhY2tncm91bmQ7XG4gIGJvcmRlcjogJGFjY29yZGlvbi1jb250ZW50LWJvcmRlcjtcbiAgYm9yZGVyLWJvdHRvbTogMDtcbiAgYm9yZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4gIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06IDA7XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgdGhlIHRpdGxlIG9mIGFuIGFjY29yZGlvbiBpdGVtLiBBcHBseSB0aGlzIHRvIHRoZSBsaW5rIHdpdGhpbiBhbiBhY2NvcmRpb24gaXRlbS5cbkBtaXhpbiBhY2NvcmRpb24tdGl0bGUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogJGFjY29yZGlvbi1pdGVtLXBhZGRpbmc7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBmb250LXNpemU6IHJlbS1jYWxjKDEyKTtcbiAgY29sb3I6ICRhY2NvcmRpb24taXRlbS1jb2xvcjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBib3JkZXItYm90dG9tOiAkYWNjb3JkaW9uLWNvbnRlbnQtYm9yZGVyO1xuXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRhY2NvcmRpb24taXRlbS1iYWNrZ3JvdW5kLWhvdmVyO1xuICB9XG5cbiAgQGlmICRhY2NvcmRpb24tcGx1c21pbnVzIHtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgY29udGVudDogJysnO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgI3skZ2xvYmFsLXJpZ2h0fTogMXJlbTtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgbWFyZ2luLXRvcDogLTAuNXJlbTtcbiAgICB9XG5cbiAgICAuaXMtYWN0aXZlID4gJjo6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6ICfigJMnO1xuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGFjY29yZGlvbiBjb250ZW50LiBBcHBseSB0aGlzIHRvIHRoZSBjb250ZW50IHBhbmUgYmVsb3cgYW4gYWNjb3JkaW9uIGl0ZW0ncyB0aXRsZS5cbkBtaXhpbiBhY2NvcmRpb24tY29udGVudCB7XG4gIHBhZGRpbmc6ICRhY2NvcmRpb24tY29udGVudC1wYWRkaW5nO1xuICBkaXNwbGF5OiBub25lO1xuICBib3JkZXItYm90dG9tOiAkYWNjb3JkaW9uLWNvbnRlbnQtYm9yZGVyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYWNjb3JkaW9uLWNvbnRlbnQtYmFja2dyb3VuZDtcbn1cblxuQG1peGluIGZvdW5kYXRpb24tYWNjb3JkaW9uIHtcbiAgLmFjY29yZGlvbiB7XG4gICAgQGluY2x1ZGUgYWNjb3JkaW9uLWNvbnRhaW5lcjtcbiAgfVxuXG4gIC5hY2NvcmRpb24taXRlbSB7XG4gICAgLy8gVGhpcyBjbGFzcyBkb2Vzbid0IG5lZWQgc3R5bGVzIVxuICB9XG5cbiAgLmFjY29yZGlvbi10aXRsZSB7XG4gICAgQGluY2x1ZGUgYWNjb3JkaW9uLXRpdGxlO1xuICB9XG5cbiAgLmFjY29yZGlvbi1jb250ZW50IHtcbiAgICBAaW5jbHVkZSBhY2NvcmRpb24tY29udGVudDtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgYmFkZ2Vcbi8vLy9cblxuLy8vIERlZmF1bHQgYmFja2dyb3VuZCBjb2xvciBmb3IgYmFkZ2VzLlxuLy8vIEB0eXBlIENvbG9yXG4kYmFkZ2UtYmFja2dyb3VuZDogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHRleHQgY29sb3IgZm9yIGJhZGdlcy5cbi8vLyBAdHlwZSBDb2xvclxuJGJhZGdlLWNvbG9yOiBmb3JlZ3JvdW5kKCRiYWRnZS1iYWNrZ3JvdW5kKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcGFkZGluZyBpbnNpZGUgYmFkZ2VzLlxuLy8vIEB0eXBlIE51bWJlclxuJGJhZGdlLXBhZGRpbmc6IDAuM2VtICFkZWZhdWx0O1xuXG4vLy8gTWluaW11bSB3aWR0aCBvZiBhIGJhZGdlLlxuLy8vIEB0eXBlIE51bWJlclxuJGJhZGdlLW1pbndpZHRoOiAyLjFlbSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBzaXplIGZvciBiYWRnZXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kYmFkZ2UtZm9udC1zaXplOiAwLjZyZW0gIWRlZmF1bHQ7XG5cbi8vLyBHZW5lcmF0ZXMgdGhlIGJhc2Ugc3R5bGVzIGZvciBhIGJhZGdlLlxuQG1peGluIGJhZGdlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nOiAkYmFkZ2UtcGFkZGluZztcbiAgbWluLXdpZHRoOiAkYmFkZ2UtbWlud2lkdGg7XG4gIGZvbnQtc2l6ZTogJGJhZGdlLWZvbnQtc2l6ZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWJhZGdlIHtcbiAgLmJhZGdlIHtcbiAgICBAaW5jbHVkZSBiYWRnZTtcblxuICAgIGJhY2tncm91bmQ6ICRiYWRnZS1iYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiAkYmFkZ2UtY29sb3I7XG5cbiAgICBAZWFjaCAkbmFtZSwgJGNvbG9yIGluICRmb3VuZGF0aW9uLXBhbGV0dGUge1xuICAgICAgQGlmICRuYW1lICE9IHByaW1hcnkge1xuICAgICAgICAmLiN7JG5hbWV9IHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAkY29sb3I7XG4gICAgICAgICAgY29sb3I6IGZvcmVncm91bmQoJGNvbG9yKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgYnJlYWRjcnVtYnNcbi8vLy9cblxuLy8vIE1hcmdpbiBhcm91bmQgYSBicmVhZGNydW1icyBjb250YWluZXIuXG4vLy8gQHR5cGUgTnVtYmVyXG4kYnJlYWRjcnVtYnMtbWFyZ2luOiAwIDAgJGdsb2JhbC1tYXJnaW4gMCAhZGVmYXVsdDtcblxuLy8vIEZvbnQgc2l6ZSBvZiBicmVhZGNydW1iIGxpbmtzLlxuLy8vIEB0eXBlIE51bWJlclxuJGJyZWFkY3J1bWJzLWl0ZW0tZm9udC1zaXplOiByZW0tY2FsYygxMSkgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciBvZiBicmVhZGNydW1iIGxpbmtzLlxuLy8vIEB0eXBlIENvbG9yXG4kYnJlYWRjcnVtYnMtaXRlbS1jb2xvcjogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciBvZiB0aGUgYWN0aXZlIGJyZWFkY3J1bWIgbGluay5cbi8vLyBAdHlwZSBDb2xvclxuJGJyZWFkY3J1bWJzLWl0ZW0tY29sb3ItY3VycmVudDogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gT3BhY2l0eSBvZiBkaXNhYmxlZCBicmVhZGNydW1iIGxpbmtzLlxuLy8vIEB0eXBlIE51bWJlclxuJGJyZWFkY3J1bWJzLWl0ZW0tY29sb3ItZGlzYWJsZWQ6ICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIE1hcmdpbiBiZXR3ZWVuIGJyZWFkY3J1bWIgaXRlbXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kYnJlYWRjcnVtYnMtaXRlbS1tYXJnaW46IDAuNzVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBJZiBgdHJ1ZWAsIG1ha2VzIGJyZWFkY3J1bWIgbGlua3MgdXBwZXJjYXNlLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRicmVhZGNydW1icy1pdGVtLXVwcGVyY2FzZTogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIElmIGB0cnVlYCwgYWRkcyBhIHNsYXNoIGJldHdlZW4gYnJlYWRjcnVtYiBsaW5rcy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kYnJlYWRjcnVtYnMtaXRlbS1zbGFzaDogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIGJyZWFkY3J1bWJzIGNvbnRhaW5lciwgYWxvbmcgd2l0aCB0aGUgc3R5bGVzIGZvciB0aGUgYDxsaT5gIGFuZCBgPGE+YCBlbGVtZW50cyBpbnNpZGUgb2YgaXQuXG5AbWl4aW4gYnJlYWRjcnVtYnMtY29udGFpbmVyIHtcbiAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIG1hcmdpbjogJGJyZWFkY3J1bWJzLW1hcmdpbjtcblxuICAvLyBJdGVtIHdyYXBwZXJcbiAgbGkge1xuICAgIGZsb2F0OiAjeyRnbG9iYWwtbGVmdH07XG4gICAgY29sb3I6ICRicmVhZGNydW1icy1pdGVtLWNvbG9yLWN1cnJlbnQ7XG4gICAgZm9udC1zaXplOiAkYnJlYWRjcnVtYnMtaXRlbS1mb250LXNpemU7XG4gICAgY3Vyc29yOiBkZWZhdWx0O1xuXG4gICAgQGlmICRicmVhZGNydW1icy1pdGVtLXVwcGVyY2FzZSB7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIH1cblxuICAgIEBpZiAkYnJlYWRjcnVtYnMtaXRlbS1zbGFzaCB7XG4gICAgICAvLyBOZWVkIHRvIGVzY2FwZSB0aGUgYmFja3NsYXNoXG4gICAgICAkc2xhc2g6IGlmKCRnbG9iYWwtdGV4dC1kaXJlY3Rpb24gPT0gJ2x0cicsICcvJywgJ1xcXFwnKTtcblxuICAgICAgJjpub3QoOmxhc3QtY2hpbGQpOjphZnRlciB7XG4gICAgICAgIGNvbG9yOiAkbWVkaXVtLWdyYXk7XG4gICAgICAgIGNvbnRlbnQ6ICRzbGFzaDtcbiAgICAgICAgbWFyZ2luOiAwICRicmVhZGNydW1icy1pdGVtLW1hcmdpbjtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB0b3A6IDFweDtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgIH1cbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06ICRicmVhZGNydW1icy1pdGVtLW1hcmdpbjtcbiAgICB9XG4gIH1cblxuICAvLyBQYWdlIGxpbmtzXG4gIGEge1xuICAgIGNvbG9yOiAkYnJlYWRjcnVtYnMtaXRlbS1jb2xvcjtcblxuICAgICY6aG92ZXIge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWJyZWFkY3J1bWJzIHtcbiAgLmJyZWFkY3J1bWJzIHtcbiAgICBAaW5jbHVkZSBicmVhZGNydW1icy1jb250YWluZXI7XG5cbiAgICAuZGlzYWJsZWQge1xuICAgICAgY29sb3I6ICRicmVhZGNydW1icy1pdGVtLWNvbG9yLWRpc2FibGVkO1xuICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGJ1dHRvbi1ncm91cFxuLy8vL1xuXG4vLy8gTWFyZ2luIGZvciBidXR0b24gZ3JvdXBzLlxuLy8vIEB0eXBlIE51bWJlclxuJGJ1dHRvbmdyb3VwLW1hcmdpbjogMXJlbSAhZGVmYXVsdDtcblxuLy8vIE1hcmdpbiBiZXR3ZWVuIGJ1dHRvbnMgaW4gYSBidXR0b24gZ3JvdXAuXG4vLy8gQHR5cGUgQm9yZGVyXG4kYnV0dG9uZ3JvdXAtc3BhY2luZzogMXB4ICFkZWZhdWx0O1xuXG4vLy8gU2VsZWN0b3IgZm9yIHRoZSBidXR0b25zIGluc2lkZSBhIGJ1dHRvbiBncm91cC5cbi8vLyBAdHlwZSBTdHJpbmdcbiRidXR0b25ncm91cC1jaGlsZC1zZWxlY3RvcjogJy5idXR0b24nICFkZWZhdWx0O1xuXG4vLy8gTWF4aW11bSBudW1iZXIgb2YgYnV0dG9ucyB0aGF0IGNhbiBiZSBpbiBhbiBldmVuLXdpZHRoIGJ1dHRvbiBncm91cC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRidXR0b25ncm91cC1leHBhbmQtbWF4OiA2ICFkZWZhdWx0O1xuXG4vLy8gQWRkIHN0eWxlcyBmb3IgYSBidXR0b24gZ3JvdXAgY29udGFpbmVyLlxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkY2hpbGQtc2VsZWN0b3IgWyRidXR0b25ncm91cC1jaGlsZC1zZWxlY3Rvcl0gLSBTZWxlY3RvciBmb3IgdGhlIGJ1dHRvbnMgaW5zaWRlIGEgYnV0dG9uIGdyb3VwLlxuQG1peGluIGJ1dHRvbi1ncm91cChcbiAgJGNoaWxkLXNlbGVjdG9yOiAkYnV0dG9uZ3JvdXAtY2hpbGQtc2VsZWN0b3Jcbikge1xuICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgbWFyZ2luLWJvdHRvbTogJGJ1dHRvbmdyb3VwLW1hcmdpbjtcblxuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICB9XG4gIEBlbHNlIHtcbiAgICBmb250LXNpemU6IDA7XG4gIH1cblxuICAjeyRjaGlsZC1zZWxlY3Rvcn0ge1xuICAgIG1hcmdpbjogMDtcbiAgICBmb250LXNpemU6IG1hcC1nZXQoJGJ1dHRvbi1zaXplcywgZGVmYXVsdCk7XG5cbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIH1cblxuICAgICY6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICBtYXJnaW4tcmlnaHQ6ICRidXR0b25ncm91cC1zcGFjaW5nO1xuICAgIH1cbiAgfVxufVxuXG4vLy8gQ3JlYXRlcyBhIGZ1bGwtd2lkdGggYnV0dG9uIGdyb3VwLCBtYWtpbmcgZWFjaCBidXR0b24gZXF1YWwgd2lkdGguXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRzZWxlY3RvciBbJGJ1dHRvbmdyb3VwLWNoaWxkLXNlbGVjdG9yXSAtIFNlbGVjdG9yIGZvciB0aGUgYnV0dG9ucyBpbnNpZGUgYSBidXR0b24gZ3JvdXAuXG5AbWl4aW4gYnV0dG9uLWdyb3VwLWV4cGFuZChcbiAgJHNlbGVjdG9yOiAkYnV0dG9uZ3JvdXAtY2hpbGQtc2VsZWN0b3IsXG4gICRjb3VudDogbnVsbFxuKSB7XG4gIEBpZiBub3QgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICBtYXJnaW4tcmlnaHQ6IC0kYnV0dG9uZ3JvdXAtc3BhY2luZztcblxuICAgICY6OmJlZm9yZSxcbiAgICAmOjphZnRlciB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxuXG4gIC8vIHNjc3MtbGludDpkaXNhYmxlIFplcm9Vbml0XG4gICN7JHNlbGVjdG9yfSB7XG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBmbGV4OiAxIDEgMHB4O1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBAZm9yICRpIGZyb20gMiB0aHJvdWdoICRidXR0b25ncm91cC1leHBhbmQtbWF4IHtcbiAgICAgICAgJjpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCgjeyRpfSkge1xuICAgICAgICAgICYsICY6Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoI3skaX0pIH4gI3skc2VsZWN0b3J9IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIEBpZiAjeyRidXR0b25ncm91cC1zcGFjaW5nfSA9PSAnMCcge1xuICAgICAgICAgICAgICB3aWR0aDogI3twZXJjZW50YWdlKDEgLyAkaSl9O1xuICAgICAgICAgICAgfSBAZWxzZSB7XG4gICAgICAgICAgICAgIHdpZHRoOiBjYWxjKCN7cGVyY2VudGFnZSgxIC8gJGkpfSAtICN7JGJ1dHRvbmdyb3VwLXNwYWNpbmd9KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogJGJ1dHRvbmdyb3VwLXNwYWNpbmc7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vLyBTdGFja3MgdGhlIGJ1dHRvbnMgaW4gYSBidXR0b24gZ3JvdXAuXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRzZWxlY3RvciBbJGJ1dHRvbmdyb3VwLWNoaWxkLXNlbGVjdG9yXSAtIFNlbGVjdG9yIGZvciB0aGUgYnV0dG9ucyBpbnNpZGUgdGhlIGJ1dHRvbiBncm91cC5cbkBtaXhpbiBidXR0b24tZ3JvdXAtc3RhY2soXG4gICRzZWxlY3RvcjogJGJ1dHRvbmdyb3VwLWNoaWxkLXNlbGVjdG9yXG4pIHtcbiAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICB9XG5cbiAgI3skc2VsZWN0b3J9IHtcbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGZsZXg6IDAgMCAxMDAlO1xuICAgICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06IDA7IFxuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGJvcmRlci0jeyRnbG9iYWwtcmlnaHR9OiAkYnV0dG9uZ3JvdXAtc3BhY2luZyBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICB9XG4gICAgXG4gICAgJjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAkYnV0dG9uZ3JvdXAtc3BhY2luZztcbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogJGJ1dHRvbmdyb3VwLXNwYWNpbmcgc29saWQgJGJvZHktYmFja2dyb3VuZDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8vIFVuLXN0YWNrcyB0aGUgYnV0dG9ucyBpbiBhIGJ1dHRvbiBncm91cC5cbi8vLyBAcGFyYW0ge1N0cmluZ30gJHNlbGVjdG9yIFskYnV0dG9uZ3JvdXAtY2hpbGQtc2VsZWN0b3JdIC0gU2VsZWN0b3IgZm9yIHRoZSBidXR0b25zIGluc2lkZSB0aGUgYnV0dG9uIGdyb3VwLlxuQG1peGluIGJ1dHRvbi1ncm91cC11bnN0YWNrKFxuICAkc2VsZWN0b3I6ICRidXR0b25ncm91cC1jaGlsZC1zZWxlY3RvclxuKSB7XG4gIC8vIHNjc3MtbGludDpkaXNhYmxlIFplcm9Vbml0XG4gICN7JHNlbGVjdG9yfSB7XG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBmbGV4OiAxIDEgMHB4O1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICB9XG5cbiAgICAmOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06ICRidXR0b25ncm91cC1zcGFjaW5nO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1idXR0b24tZ3JvdXAge1xuICAuYnV0dG9uLWdyb3VwIHtcbiAgICBAaW5jbHVkZSBidXR0b24tZ3JvdXA7XG5cbiAgICAvLyBTaXplc1xuICAgIEBlYWNoICRzaXplLCAkdmFsdWUgaW4gbWFwLXJlbW92ZSgkYnV0dG9uLXNpemVzLCBkZWZhdWx0KSB7XG4gICAgICAmLiN7JHNpemV9ICN7JGJ1dHRvbmdyb3VwLWNoaWxkLXNlbGVjdG9yfSB7XG4gICAgICAgIGZvbnQtc2l6ZTogJHZhbHVlO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIEV2ZW4td2lkdGggR3JvdXBcbiAgICAmLmV4cGFuZGVkIHsgQGluY2x1ZGUgYnV0dG9uLWdyb3VwLWV4cGFuZDsgfVxuXG4gICAgLy8gQ29sb3JzXG4gICAgQGVhY2ggJG5hbWUsICRjb2xvciBpbiAkZm91bmRhdGlvbi1wYWxldHRlIHtcbiAgICAgIEBpZiAkYnV0dG9uLWZpbGwgIT0gaG9sbG93IHtcbiAgICAgICAgJi4jeyRuYW1lfSAjeyRidXR0b25ncm91cC1jaGlsZC1zZWxlY3Rvcn0ge1xuICAgICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1zdHlsZSgkY29sb3IsIGF1dG8sIGF1dG8pO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgICYuI3skbmFtZX0gI3skYnV0dG9uZ3JvdXAtY2hpbGQtc2VsZWN0b3J9IHtcbiAgICAgICAgICBAaW5jbHVkZSBidXR0b24taG9sbG93O1xuICAgICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1ob2xsb3ctc3R5bGUoJGNvbG9yKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgICYuc3RhY2tlZCxcbiAgICAmLnN0YWNrZWQtZm9yLXNtYWxsLFxuICAgICYuc3RhY2tlZC1mb3ItbWVkaXVtIHtcbiAgICAgIEBpbmNsdWRlIGJ1dHRvbi1ncm91cC1zdGFjaztcbiAgICB9XG5cbiAgICAmLnN0YWNrZWQtZm9yLXNtYWxsIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1ncm91cC11bnN0YWNrO1xuICAgICAgfVxuICAgIH1cblxuICAgICYuc3RhY2tlZC1mb3ItbWVkaXVtIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWdyb3VwLXVuc3RhY2s7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gc2Nzcy1saW50OmRpc2FibGUgTWVyZ2VhYmxlU2VsZWN0b3JcbiAgICAmLnN0YWNrZWQtZm9yLXNtYWxsLmV4cGFuZGVkIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcblxuICAgICAgICAjeyRidXR0b25ncm91cC1jaGlsZC1zZWxlY3Rvcn0ge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgY2FsbG91dFxuLy8vL1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yLlxuLy8vIEB0eXBlIENvbG9yXG4kY2FsbG91dC1iYWNrZ3JvdW5kOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZhZGUgdmFsdWUgZm9yIGNhbGxvdXQgYmFja2dyb3VuZHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kY2FsbG91dC1iYWNrZ3JvdW5kLWZhZGU6IDg1JSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYm9yZGVyIHN0eWxlIGZvciBjYWxsb3V0cy5cbi8vLyBAdHlwZSBMaXN0XG4kY2FsbG91dC1ib3JkZXI6IDFweCBzb2xpZCByZ2JhKCRibGFjaywgMC4yNSkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJvdHRvbSBtYXJnaW4gZm9yIGNhbGxvdXRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGNhbGxvdXQtbWFyZ2luOiAwIDAgMXJlbSAwICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBpbm5lciBwYWRkaW5nIGZvciBjYWxsb3V0cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRjYWxsb3V0LXBhZGRpbmc6IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgY29sb3IgZm9yIGNhbGxvdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kY2FsbG91dC1mb250LWNvbG9yOiAkYm9keS1mb250LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IGNvbG9yIGZvciBjYWxsb3V0cywgaWYgdGhlIGNhbGxvdXQgaGFzIGEgZGFyayBiYWNrZ3JvdW5kLlxuLy8vIEB0eXBlIENvbG9yXG4kY2FsbG91dC1mb250LWNvbG9yLWFsdDogJGJvZHktYmFja2dyb3VuZCAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYm9yZGVyIHJhZGl1cyBmb3IgY2FsbG91dHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRjYWxsb3V0LXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XG5cbi8vLyBBbW91bnQgdG8gdGludCBsaW5rcyB1c2VkIHdpdGhpbiBjb2xvcmVkIHBhbmVscy4gU2V0IHRvIGBmYWxzZWAgdG8gZGlzYWJsZSB0aGlzIGZlYXR1cmUuXG4vLy8gQHR5cGUgTnVtYmVyIHwgQm9vbGVhblxuJGNhbGxvdXQtbGluay10aW50OiAzMCUgIWRlZmF1bHQ7XG5cbi8vLyBBZGRzIGJhc2ljIHN0eWxlcyBmb3IgYSBjYWxsb3V0LCBpbmNsdWRpbmcgcGFkZGluZyBhbmQgbWFyZ2luLlxuQG1peGluIGNhbGxvdXQtYmFzZSgpIHtcbiAgbWFyZ2luOiAkY2FsbG91dC1tYXJnaW47XG4gIHBhZGRpbmc6ICRjYWxsb3V0LXBhZGRpbmc7XG4gIGJvcmRlcjogJGNhbGxvdXQtYm9yZGVyO1xuICBib3JkZXItcmFkaXVzOiAkY2FsbG91dC1yYWRpdXM7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgY29sb3I6ICRjYWxsb3V0LWZvbnQtY29sb3I7XG5cbiAgLy8gUmVzcGVjdCB0aGUgcGFkZGluZywgZm9vbC5cbiAgPiA6Zmlyc3QtY2hpbGQge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gIH1cblxuICA+IDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG5cbi8vLyBHZW5lcmF0ZSBxdWljayBzdHlsZXMgZm9yIGEgY2FsbG91dCB1c2luZyBhIHNpbmdsZSBjb2xvciBhcyBhIGJhc2VsaW5lLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciBbJGNhbGxvdXQtYmFja2dyb3VuZF0gLSBDb2xvciB0byB1c2UuXG5AbWl4aW4gY2FsbG91dC1zdHlsZSgkY29sb3I6ICRjYWxsb3V0LWJhY2tncm91bmQpIHtcbiAgJGJhY2tncm91bmQ6IHNjYWxlLWNvbG9yKCRjb2xvciwgJGxpZ2h0bmVzczogJGNhbGxvdXQtYmFja2dyb3VuZC1mYWRlKTtcblxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcbn1cblxuQG1peGluIGNhbGxvdXQtc2l6ZSgkcGFkZGluZykge1xuICBwYWRkaW5nLXRvcDogJHBhZGRpbmc7XG4gIHBhZGRpbmctcmlnaHQ6ICRwYWRkaW5nO1xuICBwYWRkaW5nLWJvdHRvbTogJHBhZGRpbmc7XG4gIHBhZGRpbmctbGVmdDogJHBhZGRpbmc7XG59XG5cblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIGNhbGxvdXQuXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIFskY2FsbG91dC1iYWNrZ3JvdW5kXSAtIENvbG9yIHRvIHVzZS5cbkBtaXhpbiBjYWxsb3V0KCRjb2xvcjogJGNhbGxvdXQtYmFja2dyb3VuZCkge1xuICBAaW5jbHVkZSBjYWxsb3V0LWJhc2U7XG4gIEBpbmNsdWRlIGNhbGxvdXQtc3R5bGUoJGNvbG9yKTtcbn1cblxuQG1peGluIGZvdW5kYXRpb24tY2FsbG91dCB7XG4gIC5jYWxsb3V0IHtcbiAgICBAaW5jbHVkZSBjYWxsb3V0O1xuXG4gICAgQGVhY2ggJG5hbWUsICRjb2xvciBpbiAkZm91bmRhdGlvbi1wYWxldHRlIHtcbiAgICAgICYuI3skbmFtZX0ge1xuICAgICAgICBAaW5jbHVkZSBjYWxsb3V0LXN0eWxlKCRjb2xvcik7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5zbWFsbCB7XG4gICAgICBAaW5jbHVkZSBjYWxsb3V0LXNpemUoMC41cmVtKTtcbiAgICB9XG5cbiAgICAmLmxhcmdlIHtcbiAgICAgIEBpbmNsdWRlIGNhbGxvdXQtc2l6ZSgzcmVtKTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGNsb3NlLWJ1dHRvblxuLy8vL1xuXG4vLy8gRGVmYXVsdCBwb3NpdGlvbiBvZiB0aGUgY2xvc2UgYnV0dG9uLiBUaGUgZmlyc3QgdmFsdWUgc2hvdWxkIGJlIGByaWdodGAgb3IgYGxlZnRgLCBhbmQgdGhlIHNlY29uZCB2YWx1ZSBzaG91bGQgYmUgYHRvcGAgb3IgYGJvdHRvbWAuXG4vLy8gQHR5cGUgTGlzdFxuJGNsb3NlYnV0dG9uLXBvc2l0aW9uOiByaWdodCB0b3AgIWRlZmF1bHQ7XG5cbi8vLyBSaWdodCAob3IgbGVmdCkgb2Zmc2V0IGZvciBhIGNsb3NlIGJ1dHRvbi5cbi8vLyBAdHlwZSBOdW1iZXJcbiRjbG9zZWJ1dHRvbi1vZmZzZXQtaG9yaXpvbnRhbDogMXJlbSAhZGVmYXVsdDtcblxuLy8vIFRvcCAob3IgYm90dG9tKSBvZmZzZXQgZm9yIGEgY2xvc2UgYnV0dG9uLlxuLy8vIEB0eXBlIE51bWJlclxuJGNsb3NlYnV0dG9uLW9mZnNldC12ZXJ0aWNhbDogMC41cmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IHNpemUgb2YgdGhlIGNsb3NlIGJ1dHRvbi5cbi8vLyBAdHlwZSBOdW1iZXJcbiRjbG9zZWJ1dHRvbi1zaXplOiAyZW0gIWRlZmF1bHQ7XG5cbi8vLyBUaGUgbGluZS1oZWlnaHQgb2YgdGhlIGNsb3NlIGJ1dHRvbi4gSXQgYWZmZWN0cyB0aGUgc3BhY2luZyBvZiB0aGUgZWxlbWVudC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRjbG9zZWJ1dHRvbi1saW5laGVpZ2h0OiAxICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBjb2xvciBvZiB0aGUgY2xvc2UgYnV0dG9uLlxuLy8vIEB0eXBlIENvbG9yXG4kY2xvc2VidXR0b24tY29sb3I6ICRkYXJrLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGNvbG9yIG9mIHRoZSBjbG9zZSBidXR0b24gd2hlbiBiZWluZyBob3ZlcmVkIG9uLlxuLy8vIEB0eXBlIENvbG9yXG4kY2xvc2VidXR0b24tY29sb3ItaG92ZXI6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIGNsb3NlIGJ1dHRvbiwgdXNpbmcgdGhlIHN0eWxlcyBpbiB0aGUgc2V0dGluZ3MgdmFyaWFibGVzLlxuQG1peGluIGNsb3NlLWJ1dHRvbiB7XG4gICR4OiBudGgoJGNsb3NlYnV0dG9uLXBvc2l0aW9uLCAxKTtcbiAgJHk6IG50aCgkY2xvc2VidXR0b24tcG9zaXRpb24sIDIpO1xuXG4gIEBpbmNsdWRlIGRpc2FibGUtbW91c2Utb3V0bGluZTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBjb2xvcjogJGNsb3NlYnV0dG9uLWNvbG9yO1xuICAjeyR4fTogJGNsb3NlYnV0dG9uLW9mZnNldC1ob3Jpem9udGFsO1xuICAjeyR5fTogJGNsb3NlYnV0dG9uLW9mZnNldC12ZXJ0aWNhbDtcbiAgZm9udC1zaXplOiAkY2xvc2VidXR0b24tc2l6ZTtcbiAgbGluZS1oZWlnaHQ6ICRjbG9zZWJ1dHRvbi1saW5laGVpZ2h0O1xuICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgY29sb3I6ICRjbG9zZWJ1dHRvbi1jb2xvci1ob3ZlcjtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1jbG9zZS1idXR0b24ge1xuICAuY2xvc2UtYnV0dG9uIHtcbiAgICBAaW5jbHVkZSBjbG9zZS1idXR0b247XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGRyaWxsZG93blxuLy8vL1xuXG4vLy8gVHJhbnNpdGlvbiBwcm9wZXJ0eSB0byB1c2UgZm9yIGFuaW1hdGluZyBtZW51cy5cbi8vLyBAdHlwZSBUcmFuc2l0aW9uXG4kZHJpbGxkb3duLXRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjE1cyBsaW5lYXIgIWRlZmF1bHQ7XG5cbi8vLyBBZGRzIGFycm93cyB0byBkcmlsbGRvd24gaXRlbXMgd2l0aCBzdWJtZW51cywgYXMgd2VsbCBhcyB0aGUgYmFjayBidXR0b24uXG4vLy8gQHR5cGUgQm9vbGVhblxuJGRyaWxsZG93bi1hcnJvd3M6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBTZXRzIGRyaWxsZG93biBhcnJvdyBjb2xvciBpZiBhcnJvdyBpcyB1c2VkLlxuLy8vIEB0eXBlIENvbG9yXG4kZHJpbGxkb3duLWFycm93LWNvbG9yOiAkcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3IgZm9yIGRyaWxsZG93biBzdWJtZW51cy5cbi8vLyBAdHlwZSBDb2xvclxuJGRyaWxsZG93bi1iYWNrZ3JvdW5kOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWRyaWxsZG93bi1tZW51IHtcbiAgLy8gQXBwbGllZCB0byB0aGUgTWVudSBjb250YWluZXJcbiAgLmlzLWRyaWxsZG93biB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICBsaSB7XG4gICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuXG4gIC8vIEFwcGxpZWQgdG8gbmVzdGVkIDx1bD5zXG4gIC5pcy1kcmlsbGRvd24tc3VibWVudSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICAjeyRnbG9iYWwtbGVmdH06IDEwMCU7XG4gICAgei1pbmRleDogLTE7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJhY2tncm91bmQ6ICRkcmlsbGRvd24tYmFja2dyb3VuZDtcbiAgICB0cmFuc2l0aW9uOiAkZHJpbGxkb3duLXRyYW5zaXRpb247XG5cbiAgICAmLmlzLWFjdGl2ZSB7XG4gICAgICB6LWluZGV4OiAxO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoaWYoJGdsb2JhbC10ZXh0LWRpcmVjdGlvbiA9PSBsdHIsIC0xMDAlLCAxMDAlKSk7XG4gICAgfVxuXG4gICAgJi5pcy1jbG9zaW5nIHtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWChpZigkZ2xvYmFsLXRleHQtZGlyZWN0aW9uID09IGx0ciwgMTAwJSwgLTEwMCUpKTtcbiAgICB9XG4gIH1cblxuICBAaWYgJGRyaWxsZG93bi1hcnJvd3Mge1xuICAgIC5pcy1kcmlsbGRvd24tc3VibWVudS1wYXJlbnQgPiBhIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICBAaW5jbHVkZSBjc3MtdHJpYW5nbGUoNnB4LCAkZHJpbGxkb3duLWFycm93LWNvbG9yLCAkZ2xvYmFsLXJpZ2h0KTtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgbWFyZ2luLXRvcDogLTZweDtcbiAgICAgICAgI3skZ2xvYmFsLXJpZ2h0fTogMXJlbTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuanMtZHJpbGxkb3duLWJhY2sgPiBhOjpiZWZvcmUge1xuICAgICAgQGluY2x1ZGUgY3NzLXRyaWFuZ2xlKDZweCwgJGRyaWxsZG93bi1hcnJvdy1jb2xvciwgJGdsb2JhbC1sZWZ0KTtcbiAgICAgIGJvcmRlci0jeyRnbG9iYWwtbGVmdH0td2lkdGg6IDA7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06IDAuNzVyZW07IC8vIENyZWF0ZXMgc3BhY2UgYmV0d2VlbiB0aGUgYXJyb3cgYW5kIHRoZSB0ZXh0XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBkcm9wZG93blxuLy8vL1xuXG4vLy8gUGFkZGluZyBmb3IgZHJvcGRvd24gcGFuZXMuXG4vLy8gQHR5cGUgTGlzdFxuJGRyb3Bkb3duLXBhZGRpbmc6IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgZm9yIGRyb3Bkb3duIHBhbmVzLlxuLy8vIEB0eXBlIExpc3RcbiRkcm9wZG93bi1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHNpemUgZm9yIGRyb3Bkb3duIHBhbmVzLlxuLy8vIEB0eXBlIExpc3RcbiRkcm9wZG93bi1mb250LXNpemU6IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBXaWR0aCBmb3IgZHJvcGRvd24gcGFuZXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZHJvcGRvd24td2lkdGg6IDMwMHB4ICFkZWZhdWx0O1xuXG4vLy8gQm9yZGVyIHJhZGl1cyBkcm9wZG93biBwYW5lcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRkcm9wZG93bi1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG4vLy8gU2l6ZXMgZm9yIGRyb3Bkb3duIHBhbmVzLiBFYWNoIHNpemUgaXMgYSBDU1MgY2xhc3MgeW91IGNhbiBhcHBseS5cbi8vLyBAdHlwZSBNYXBcbiRkcm9wZG93bi1zaXplczogKFxuICB0aW55OiAxMDBweCxcbiAgc21hbGw6IDIwMHB4LFxuICBsYXJnZTogNDAwcHgsXG4pICFkZWZhdWx0O1xuXG4vLy8gQXBwbGllcyBzdHlsZXMgZm9yIGEgYmFzaWMgZHJvcGRvd24uXG5AbWl4aW4gZHJvcGRvd24tY29udGFpbmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJvZHktYmFja2dyb3VuZDtcbiAgYm9yZGVyOiAkZHJvcGRvd24tYm9yZGVyO1xuICBib3JkZXItcmFkaXVzOiAkZHJvcGRvd24tcmFkaXVzO1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1zaXplOiAkZHJvcGRvd24tZm9udC1zaXplO1xuICBwYWRkaW5nOiAkZHJvcGRvd24tcGFkZGluZztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIHdpZHRoOiAkZHJvcGRvd24td2lkdGg7XG4gIHotaW5kZXg6IDEwO1xuXG4gICYuaXMtb3BlbiB7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1kcm9wZG93biB7XG4gIC5kcm9wZG93bi1wYW5lIHtcbiAgICBAaW5jbHVkZSBkcm9wZG93bi1jb250YWluZXI7XG4gIH1cblxuICBAZWFjaCAkbmFtZSwgJHNpemUgaW4gJGRyb3Bkb3duLXNpemVzIHtcbiAgICAuZHJvcGRvd24tcGFuZS4jeyRuYW1lfSB7XG4gICAgICB3aWR0aDogJHNpemU7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBkcm9wZG93bi1tZW51XG4vLy8vXG5cbi8vLyBFbmFibGVzIGFycm93cyBmb3IgaXRlbXMgd2l0aCBkcm9wZG93biBtZW51cy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kZHJvcGRvd25tZW51LWFycm93czogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIFNldHMgZHJvcGRvd24gbWVudSBhcnJvdyBjb2xvciBpZiBhcnJvdyBpcyB1c2VkLlxuLy8vIEB0eXBlIENvbG9yXG4kZHJvcGRvd25tZW51LWFycm93LWNvbG9yOiAkYW5jaG9yLWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gTWluaW11bSB3aWR0aCBvZiBkcm9wZG93biBzdWItbWVudXMuXG4vLy8gQHR5cGUgTGVuZ3RoXG4kZHJvcGRvd25tZW51LW1pbi13aWR0aDogMjAwcHggIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIGZvciBkcm9wZG93bnMuXG4vLy8gQHR5cGUgQ29sb3JcbiRkcm9wZG93bm1lbnUtYmFja2dyb3VuZDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gQm9yZGVyIGZvciBkcm9wZG93biBzdWItbWVudXMuXG4vLy8gQHR5cGUgTGlzdFxuJGRyb3Bkb3dubWVudS1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vIEJvcmRlciB3aWR0aCBmb3IgZHJvcGRvd24gc3ViLW1lbnVzLlxuLy8gVXNlZCB0byBhZGp1c3QgdG9wIG1hcmdpbiBvZiBhIHN1Yi1tZW51IGlmIGEgYm9yZGVyIGlzIHVzZWQuXG4vLyBAdHlwZSBMZW5ndGhcbiRkcm9wZG93bm1lbnUtYm9yZGVyLXdpZHRoOiBudGgoJGRyb3Bkb3dubWVudS1ib3JkZXIsIDEpO1xuXG5AbWl4aW4gbGVmdC1yaWdodC1hcnJvd3Mge1xuICA+IGE6OmFmdGVyIHtcbiAgICAjeyRnbG9iYWwtcmlnaHR9OiAxNHB4O1xuICAgIG1hcmdpbi10b3A6IC0zcHg7XG4gIH1cblxuICAmLm9wZW5zLWxlZnQgPiBhOjphZnRlciB7XG4gICAgQGluY2x1ZGUgY3NzLXRyaWFuZ2xlKDVweCwgJGRyb3Bkb3dubWVudS1hcnJvdy1jb2xvciwgbGVmdCk7XG4gIH1cblxuICAmLm9wZW5zLXJpZ2h0ID4gYTo6YWZ0ZXIge1xuICAgIEBpbmNsdWRlIGNzcy10cmlhbmdsZSg1cHgsICRkcm9wZG93bm1lbnUtYXJyb3ctY29sb3IsIHJpZ2h0KTtcbiAgfVxufVxuXG5AbWl4aW4gZHJvcGRvd24tbWVudS1kaXJlY3Rpb24oJGRpcjogaG9yaXpvbnRhbCkge1xuICBAaWYgJGRpciA9PSBob3Jpem9udGFsIHtcbiAgICA+IGxpLm9wZW5zLWxlZnQge1xuICAgICAgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICB0b3A6IDEwMCU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgPiBsaS5vcGVucy1yaWdodCB7XG4gICAgICA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHRvcDogMTAwJTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAaWYgJGRyb3Bkb3dubWVudS1hcnJvd3Mge1xuICAgICAgPiBsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGEge1xuICAgICAgICBwYWRkaW5nLSN7JGdsb2JhbC1yaWdodH06IDEuNXJlbTtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgfVxuXG4gICAgICA+IGxpLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50ID4gYTo6YWZ0ZXIge1xuICAgICAgICBAaW5jbHVkZSBjc3MtdHJpYW5nbGUoNXB4LCAkZHJvcGRvd25tZW51LWFycm93LWNvbG9yLCBkb3duKTtcbiAgICAgICAgI3skZ2xvYmFsLXJpZ2h0fTogNXB4O1xuICAgICAgICBtYXJnaW4tdG9wOiAtMnB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSBpZiAkZGlyID09IHZlcnRpY2FsIHtcbiAgICA+IGxpIHtcbiAgICAgIC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgfVxuXG4gICAgICAmLm9wZW5zLWxlZnQge1xuICAgICAgICAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgICAgICAgbGVmdDogYXV0bztcbiAgICAgICAgICByaWdodDogMTAwJTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLm9wZW5zLXJpZ2h0IHtcbiAgICAgICAgLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgICAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgICAgIGxlZnQ6IDEwMCU7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgQGlmICRkcm9wZG93bm1lbnUtYXJyb3dzIHtcbiAgICAgICAgQGluY2x1ZGUgbGVmdC1yaWdodC1hcnJvd3M7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICBAd2FybiAnVGhlIGRpcmVjdGlvbiB1c2VkIGZvciBkcm9wZG93bi1tZW51LWRpcmVjdGlvbigpIG11c3QgYmUgaG9yaXpvbnRhbCBvciB2ZXJ0aWNhbC4nO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWRyb3Bkb3duLW1lbnUge1xuICAuZHJvcGRvd24ubWVudSB7XG4gICAgQGluY2x1ZGUgZHJvcGRvd24tbWVudS1kaXJlY3Rpb24oaG9yaXpvbnRhbCk7XG5cbiAgICBhIHtcbiAgICAgIEBpbmNsdWRlIGRpc2FibGUtbW91c2Utb3V0bGluZTtcbiAgICB9XG5cbiAgICAubm8tanMgJiB1bCB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgICYudmVydGljYWwge1xuICAgICAgQGluY2x1ZGUgZHJvcGRvd24tbWVudS1kaXJlY3Rpb24odmVydGljYWwpO1xuICAgIH1cblxuICAgIEBlYWNoICRzaXplIGluICRicmVha3BvaW50LWNsYXNzZXMge1xuICAgICAgQGlmICRzaXplICE9ICQtemYtemVyby1icmVha3BvaW50IHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSkge1xuICAgICAgICAgICYuI3skc2l6ZX0taG9yaXpvbnRhbCB7XG4gICAgICAgICAgICBAaW5jbHVkZSBkcm9wZG93bi1tZW51LWRpcmVjdGlvbihob3Jpem9udGFsKTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmLiN7JHNpemV9LXZlcnRpY2FsIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGRyb3Bkb3duLW1lbnUtZGlyZWN0aW9uKHZlcnRpY2FsKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmFsaWduLXJpZ2h0IHtcbiAgICAgIC5pcy1kcm9wZG93bi1zdWJtZW51LmZpcnN0LXN1YiB7XG4gICAgICAgIHRvcDogMTAwJTtcbiAgICAgICAgbGVmdDogYXV0bztcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmlzLWRyb3Bkb3duLW1lbnUudmVydGljYWwge1xuICAgIHdpZHRoOiAxMDBweDtcblxuICAgICYuYWxpZ24tcmlnaHQge1xuICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgIH1cbiAgfVxuXG4gIC5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgYTo6YWZ0ZXIge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiA1MCU7XG4gICAgICAjeyRnbG9iYWwtcmlnaHR9OiA1cHg7XG4gICAgICBtYXJnaW4tdG9wOiAtMnB4O1xuICAgIH1cblxuICAgICYub3BlbnMtaW5uZXIgLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgICAgdG9wOiAxMDAlO1xuICAgIH1cblxuICAgICYub3BlbnMtbGVmdCAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgICBsZWZ0OiBhdXRvO1xuICAgICAgcmlnaHQ6IDEwMCU7XG4gICAgfVxuICB9XG5cbiAgLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICAjeyRnbG9iYWwtbGVmdH06IDEwMCU7XG4gICAgbWluLXdpZHRoOiAkZHJvcGRvd25tZW51LW1pbi13aWR0aDtcbiAgICB6LWluZGV4OiAxO1xuICAgIGJhY2tncm91bmQ6ICRkcm9wZG93bm1lbnUtYmFja2dyb3VuZDtcbiAgICBib3JkZXI6ICRkcm9wZG93bm1lbnUtYm9yZGVyO1xuXG4gICAgLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50IHtcbiAgICAgIEBpZiAkZHJvcGRvd25tZW51LWFycm93cyB7XG4gICAgICAgIEBpbmNsdWRlIGxlZnQtcmlnaHQtYXJyb3dzO1xuICAgICAgfVxuICAgIH1cblxuICAgIEBpZiAodHlwZS1vZigkZHJvcGRvd25tZW51LWJvcmRlci13aWR0aCkgPT0gJ251bWJlcicpIHtcbiAgICAgIC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICAgICAgbWFyZ2luLXRvcDogKC0kZHJvcGRvd25tZW51LWJvcmRlci13aWR0aCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgPiBsaSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICAvLyBbVE9ET10gQ3V0IGJhY2sgc3BlY2lmaWNpdHlcbiAgICAvLyBzY3NzLWxpbnQ6ZGlzYWJsZSBTZWxlY3RvckRlcHRoXG4gICAgJjpub3QoLmpzLWRyb3Bkb3duLW5vaG92ZXIpID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50OmhvdmVyID4gJixcbiAgICAmLmpzLWRyb3Bkb3duLWFjdGl2ZSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZsZXgtdmlkZW9cbi8vLy9cblxuLy8vIE1hcmdpbiBiZWxvdyBhIGZsZXggdmlkZW8gY29udGFpbmVyLlxuLy8vIEB0eXBlIE51bWJlclxuJGZsZXh2aWRlby1tYXJnaW4tYm90dG9tOiByZW0tY2FsYygxNikgIWRlZmF1bHQ7XG5cbi8vLyBQYWRkaW5nIHVzZWQgdG8gY3JlYXRlIGEgNDozIGFzcGVjdCByYXRpby5cbi8vLyBAdHlwZSBOdW1iZXJcbiRmbGV4dmlkZW8tcmF0aW86IDQgYnkgMyAhZGVmYXVsdDtcblxuLy8vIFBhZGRpbmcgdXNlZCB0byBjcmVhdGUgYSAxNjo5IGFzcGVjdCByYXRpby5cbi8vLyBAdHlwZSBOdW1iZXJcbiRmbGV4dmlkZW8tcmF0aW8td2lkZXNjcmVlbjogMTYgYnkgOSAhZGVmYXVsdDtcblxuLy8vIENyZWF0ZXMgYSBwZXJjZW50YWdlIGhlaWdodCB0aGF0IGNhbiBiZSB1c2VkIGFzIHBhZGRpbmcgaW4gYSBmbGV4IHZpZGVvIGNvbnRhaW5lci5cbi8vLyBAcGFyYW0ge0xpc3R9ICRyYXRpbyAtIFJhdGlvIHRvIHVzZSB0byBjYWxjdWxhdGUgdGhlIGhlaWdodCwgZm9ybWF0dGVkIGFzIGB4IGJ5IHlgLlxuLy8vIEByZXR1cm4ge051bWJlcn0gQSBwZXJjZW50YWdlIHZhbHVlIHRoYXQgY2FuIGJlIHVzZWQgYXMgdGhlIGBwYWRkaW5nLWJvdHRvbWAgcGFyYW1ldGVyIG9mIGEgZmxleCB2aWRlbyBjb250YWluZXIuXG5AZnVuY3Rpb24gZmxleC12aWRlbygkcmF0aW8pIHtcbiAgJHc6IG50aCgkcmF0aW8sIDEpO1xuICAkaDogbnRoKCRyYXRpbywgMyk7XG4gIEByZXR1cm4gJGggLyAkdyAqIDEwMCU7XG59XG5cbi8vLyBDcmVhdGVzIGEgZmxleCB2aWRlbyBjb250YWluZXIuXG4vLy8gQHBhcmFtIHtMaXN0fSAkcmF0aW8gWyRmbGV4dmlkZW8tcmF0aW9dIC0gUmF0aW8gdG8gdXNlIGZvciB0aGUgY29udGFpbmVyLCBmb3JtYXR0ZWQgYXMgYHggYnkgeWAuXG5AbWl4aW4gZmxleC12aWRlbygkcmF0aW86ICRmbGV4dmlkZW8tcmF0aW8pIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6IDA7XG4gIHBhZGRpbmctYm90dG9tOiBmbGV4LXZpZGVvKCRyYXRpbyk7XG4gIG1hcmdpbi1ib3R0b206ICRmbGV4dmlkZW8tbWFyZ2luLWJvdHRvbTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICBpZnJhbWUsXG4gIG9iamVjdCxcbiAgZW1iZWQsXG4gIHZpZGVvIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgICN7JGdsb2JhbC1sZWZ0fTogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tZmxleC12aWRlbyB7XG4gIC5mbGV4LXZpZGVvIHtcbiAgICBAaW5jbHVkZSBmbGV4LXZpZGVvO1xuXG4gICAgJi53aWRlc2NyZWVuIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiBmbGV4LXZpZGVvKCRmbGV4dmlkZW8tcmF0aW8td2lkZXNjcmVlbik7XG4gICAgfVxuXG4gICAgJi52aW1lbyB7XG4gICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGxhYmVsXG4vLy8vXG5cbi8vLyBEZWZhdWx0IGJhY2tncm91bmQgY29sb3IgZm9yIGxhYmVscy5cbi8vLyBAdHlwZSBDb2xvclxuJGxhYmVsLWJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCB0ZXh0IGNvbG9yIGZvciBsYWJlbHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRsYWJlbC1jb2xvcjogZm9yZWdyb3VuZCgkbGFiZWwtYmFja2dyb3VuZCkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgc2l6ZSBmb3IgbGFiZWxzLlxuLy8vIEB0eXBlIE51bWJlclxuJGxhYmVsLWZvbnQtc2l6ZTogMC44cmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwYWRkaW5nIGluc2lkZSBsYWJlbHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbGFiZWwtcGFkZGluZzogMC4zMzMzM3JlbSAwLjVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHJhZGl1cyBvZiBsYWJlbHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbGFiZWwtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuLy8vIEdlbmVyYXRlcyBiYXNlIHN0eWxlcyBmb3IgYSBsYWJlbC5cbkBtaXhpbiBsYWJlbCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZzogJGxhYmVsLXBhZGRpbmc7XG4gIGZvbnQtc2l6ZTogJGxhYmVsLWZvbnQtc2l6ZTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGN1cnNvcjogZGVmYXVsdDtcbiAgYm9yZGVyLXJhZGl1czogJGxhYmVsLXJhZGl1cztcbn1cblxuQG1peGluIGZvdW5kYXRpb24tbGFiZWwge1xuICAubGFiZWwge1xuICAgIEBpbmNsdWRlIGxhYmVsO1xuXG4gICAgYmFja2dyb3VuZDogJGxhYmVsLWJhY2tncm91bmQ7XG4gICAgY29sb3I6ICRsYWJlbC1jb2xvcjtcblxuICAgIEBlYWNoICRuYW1lLCAkY29sb3IgaW4gJGZvdW5kYXRpb24tcGFsZXR0ZSB7XG4gICAgICBAaWYgJG5hbWUgIT0gcHJpbWFyeSB7XG4gICAgICAgICYuI3skbmFtZX0ge1xuICAgICAgICAgIGJhY2tncm91bmQ6ICRjb2xvcjtcbiAgICAgICAgICBjb2xvcjogZm9yZWdyb3VuZCgkY29sb3IpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBtZWRpYS1vYmplY3Rcbi8vLy9cblxuLy8vIEJvdHRvbSBtYXJnaW4gb2YgYSBtZWRpYSBvYmplY3QuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbWVkaWFvYmplY3QtbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW4gIWRlZmF1bHQ7XG5cbi8vLyBMZWZ0IGFuZCByaWdodCBwYWRkaW5nIG9uIHNlY3Rpb25zIHdpdGhpbiBhIG1lZGlhIG9iamVjdC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRtZWRpYW9iamVjdC1zZWN0aW9uLXBhZGRpbmc6ICRnbG9iYWwtcGFkZGluZyAhZGVmYXVsdDtcblxuLy8vIFdpZHRoIG9mIGltYWdlcyB3aXRoaW4gYSBtZWRpYSBvYmplY3QsIHdoZW4gdGhlIG9iamVjdCBpcyBzdGFja2VkIHZlcnRpY2FsbHkuIFNldCB0byAnYXV0bycgdG8gdXNlIHRoZSBpbWFnZSdzIG5hdHVyYWwgd2lkdGguXG4vLy8gQHR5cGUgTnVtYmVyXG4kbWVkaWFvYmplY3QtaW1hZ2Utd2lkdGgtc3RhY2tlZDogMTAwJSAhZGVmYXVsdDtcblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIG1lZGlhIG9iamVjdCBjb250YWluZXIuXG5AbWl4aW4gbWVkaWEtb2JqZWN0LWNvbnRhaW5lciB7XG4gIG1hcmdpbi1ib3R0b206ICRtZWRpYW9iamVjdC1tYXJnaW4tYm90dG9tO1xuICBkaXNwbGF5OiBpZigkZ2xvYmFsLWZsZXhib3gsIGZsZXgsIGJsb2NrKTtcblxuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIHNlY3Rpb25zIHdpdGhpbiBhIG1lZGlhIG9iamVjdC5cbi8vLyBAcGFyYW0ge051bWJlcn0gJHBhZGRpbmcgWyRtZWRpYW9iamVjdC1zZWN0aW9uLXBhZGRpbmddIC0gUGFkZGluZyBiZXR3ZWVuIHNlY3Rpb25zLlxuQG1peGluIG1lZGlhLW9iamVjdC1zZWN0aW9uKCRwYWRkaW5nOiAkbWVkaWFvYmplY3Qtc2VjdGlvbi1wYWRkaW5nKSB7XG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICB9XG4gIEBlbHNlIHtcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gIH1cblxuICAmOmZpcnN0LWNoaWxkIHtcbiAgICBwYWRkaW5nLSN7JGdsb2JhbC1yaWdodH06ICRwYWRkaW5nO1xuICB9XG5cbiAgJjpsYXN0LWNoaWxkOm5vdCg6bnRoLWNoaWxkKDIpKSB7XG4gICAgcGFkZGluZy0jeyRnbG9iYWwtbGVmdH06ICRwYWRkaW5nO1xuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyB0byBzdGFjayBzZWN0aW9ucyBvZiBhIG1lZGlhIG9iamVjdC4gQXBwbHkgdGhpcyB0byB0aGUgc2VjdGlvbiBlbGVtZW50cywgbm90IHRoZSBjb250YWluZXIuXG5AbWl4aW4gbWVkaWEtb2JqZWN0LXN0YWNrIHtcbiAgcGFkZGluZzogMDtcbiAgcGFkZGluZy1ib3R0b206ICRtZWRpYW9iamVjdC1zZWN0aW9uLXBhZGRpbmc7XG5cbiAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgZmxleC1iYXNpczogMTAwJTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gIH1cbiAgQGVsc2Uge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgaW1nIHtcbiAgICB3aWR0aDogJG1lZGlhb2JqZWN0LWltYWdlLXdpZHRoLXN0YWNrZWQ7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tbWVkaWEtb2JqZWN0IHtcbiAgLm1lZGlhLW9iamVjdCB7XG4gICAgQGluY2x1ZGUgbWVkaWEtb2JqZWN0LWNvbnRhaW5lcjtcblxuICAgIGltZyB7XG4gICAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgfVxuXG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICAmLnN0YWNrLWZvci0jeyQtemYtemVyby1icmVha3BvaW50fSB7XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLnN0YWNrLWZvci0jeyQtemYtemVyby1icmVha3BvaW50fSAubWVkaWEtb2JqZWN0LXNlY3Rpb24ge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkLXpmLXplcm8tYnJlYWtwb2ludCBvbmx5KSB7XG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLW9iamVjdC1zdGFjaztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAubWVkaWEtb2JqZWN0LXNlY3Rpb24ge1xuICAgIEBpbmNsdWRlIG1lZGlhLW9iamVjdC1zZWN0aW9uO1xuXG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICAvLyBzY3NzLWxpbnQ6ZGlzYWJsZSBaZXJvVW5pdFxuICAgICAgJi5tYWluLXNlY3Rpb24ge1xuICAgICAgICBmbGV4OiAxIDEgMHB4O1xuICAgICAgfVxuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICAmLm1pZGRsZSB7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICB9XG5cbiAgICAgICYuYm90dG9tIHtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IGJvdHRvbTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIG1lbnVcbi8vLy9cblxuLy8vIE1hcmdpbiBvZiBhIG1lbnUuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbWVudS1tYXJnaW46IDAgIWRlZmF1bHQ7XG5cbi8vLyBMZWZ0LWhhbmQgbWFyZ2luIG9mIGEgbmVzdGVkIG1lbnUuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbWVudS1tYXJnaW4tbmVzdGVkOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gUGFkZGluZyBmb3IgaXRlbXMgaW4gYSBtZW51LlxuLy8vIEB0eXBlIE51bWJlclxuJG1lbnUtaXRlbS1wYWRkaW5nOiAwLjdyZW0gMXJlbSAhZGVmYXVsdDtcblxuLy8vIFRleHQgY29sb3Igb2YgYW4gYWN0aXZlIG1lbnUgaXRlbS5cbi8vLyBAdHlwZSBDb2xvclxuJG1lbnUtaXRlbS1jb2xvci1hY3RpdmU6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgYW4gYWN0aXZlIG1lbnUgaXRlbS5cbi8vLyBAdHlwZSBDb2xvclxuJG1lbnUtaXRlbS1iYWNrZ3JvdW5kLWFjdGl2ZTogbWFwLWdldCgkZm91bmRhdGlvbi1wYWxldHRlLCBwcmltYXJ5KSAhZGVmYXVsdDtcblxuLy8vIFNwYWNpbmcgYmV0d2VlbiBhbiBpY29uIGFuZCB0ZXh0IGluIGEgbWVudSBpdGVtLlxuLy8vIEB0eXBlIE51bWJlclxuJG1lbnUtaWNvbi1zcGFjaW5nOiAwLjI1cmVtICFkZWZhdWx0O1xuXG4vLy8gQ3JlYXRlcyB0aGUgYmFzZSBzdHlsZXMgZm9yIGEgTWVudS5cbkBtaXhpbiBtZW51LWJhc2Uge1xuICBtYXJnaW46ICRtZW51LW1hcmdpbjtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuXG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgfVxuXG4gIC8vIExpc3QgaXRlbXMgYXJlIHRhYmxlIGNlbGwgdG8gYWxsb3cgZm9yIHZlcnRpY2FsIGFsaWdubWVudFxuICA+IGxpIHtcbiAgICBAaW5jbHVkZSBkaXNhYmxlLW1vdXNlLW91dGxpbmU7XG5cbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICB9XG4gIH1cblxuICAvLyBSZXNldCBsaW5lIGhlaWdodCB0byBtYWtlIHRoZSBoZWlnaHQgb2YgdGhlIG92ZXJhbGwgaXRlbSBlYXNpZXIgdG8gY2FsY3VsYXRlXG4gID4gbGkgPiBhIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiAkbWVudS1pdGVtLXBhZGRpbmc7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gIH1cblxuICAvLyBSZXNldCBzdHlsZXMgb2YgaW5uZXIgZWxlbWVudHNcbiAgaW5wdXQsXG4gIGEsXG4gIGJ1dHRvbiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuXG4vLy8gRXhwYW5kcyB0aGUgaXRlbXMgb2YgYSBNZW51LCBzbyBlYWNoIGl0ZW0gaXMgdGhlIHNhbWUgd2lkdGguXG5AbWl4aW4gbWVudS1leHBhbmQge1xuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAvLyBzY3NzLWxpbnQ6ZGlzYWJsZSBaZXJvVW5pdFxuICAgID4gbGkge1xuICAgICAgZmxleDogMSAxIDBweDtcbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIHRhYmxlLWxheW91dDogZml4ZWQ7XG4gIH1cbn1cblxuLy8vIFNldHMgdGhlIGRpcmVjdGlvbiBvZiBhIE1lbnUuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZGlyIFtob3Jpem9udGFsXSAtIERpcmVjdGlvbiBvZiB0aGUgTWVudS4gQ2FuIGJlIGBob3Jpem9udGFsYCBvciBgdmVydGljYWxgLlxuQG1peGluIG1lbnUtZGlyZWN0aW9uKCRkaXI6IGhvcml6b250YWwpIHtcbiAgQGlmICRkaXIgPT0gaG9yaXpvbnRhbCB7XG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBmbGV4LXdyYXA6IG5vd3JhcDtcblxuICAgICAgPiBsaSB7XG4gICAgICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgICAgfVxuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICA+IGxpIHtcbiAgICAgICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2UgaWYgJGRpciA9PSB2ZXJ0aWNhbCB7XG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7XG5cbiAgICAgID4gbGkge1xuICAgICAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgfVxuXG4gICAgICA+IGxpICA+IGEge1xuICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgICAgfVxuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICA+IGxpIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICBAd2FybiAnVGhlIGRpcmVjdGlvbiB1c2VkIGZvciBtZW51LWRpcmVjdGlvbigpIG11c3QgYmUgaG9yaXpvbnRhbCBvciB2ZXJ0aWNhbC4nO1xuICB9XG59XG5cbi8vLyBDcmVhdGVzIGEgc2ltcGxlIE1lbnUsIHdoaWNoIGhhcyBubyBwYWRkaW5nIG9yIGhvdmVyIHN0YXRlLlxuQG1peGluIG1lbnUtc2ltcGxlIHtcbiAgbGkge1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogZ2V0LXNpZGUoJG1lbnUtaXRlbS1wYWRkaW5nLCAkZ2xvYmFsLXJpZ2h0KTtcbiAgfVxuXG4gIGEge1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIG5lc3RlZCBNZW51LCBieSBhZGRpbmcgYG1hcmdpbi1sZWZ0YCB0byB0aGUgbWVudS5cbi8vLyBAcGFyYW0ge0tleXdvcmR8TnVtYmVyfSAkcGFkZGluZyBbYXV0b10gLSBMZW5ndGggb2YgdGhlIG1hcmdpbi5cbkBtaXhpbiBtZW51LW5lc3RlZCgkbWFyZ2luOiAkbWVudS1tYXJnaW4tbmVzdGVkKSB7XG4gIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06ICRtYXJnaW47XG59XG5cbi8vLyBBZGRzIHN1cHBvcnQgZm9yIGljb25zIHRvIE1lbnUgaXRlbXMuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkcG9zaXRpb24gW3NpZGVdIC0gUG9zaXRpb25pbmcgZm9yIGljb25zLiBDYW4gYmUgYHNpZGVgIChsZWZ0LCBvciByaWdodCBvbiBSVEwpIG9yIGB0b3BgLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGJhc2UgW3RydWVdIC0gU2V0IHRvIGBmYWxzZWAgdG8gcHJldmVudCB0aGUgc2hhcmVkIENTUyBiZXR3ZWVuIHNpZGUtIGFuZCB0b3AtYWxpZ25lZCBpY29ucyBmcm9tIGJlaW5nIHByaW50ZWQuIFNldCB0aGlzIHRvIGBmYWxzZWAgaWYgeW91J3JlIGNhbGxpbmcgdGhlIG1peGluIG11bHRpcGxlIHRpbWVzIG9uIHRoZSBzYW1lIGVsZW1lbnQuXG5AbWl4aW4gbWVudS1pY29ucygkcG9zaXRpb246IHNpZGUsICRiYXNlOiB0cnVlKSB7XG4gIEBpZiAkYmFzZSB7XG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICA+IGxpID4gYSB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICB9XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgID4gbGkgPiBhIHtcbiAgICAgICAgaW1nLFxuICAgICAgICBpIHtcbiAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICB9XG5cbiAgICAgICAgaSArIHNwYW4sXG4gICAgICAgIGltZyArIHNwYW4ge1xuICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAaWYgJHBvc2l0aW9uID09IHNpZGUge1xuICAgID4gbGkgPiBhIHtcbiAgICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgICBmbGV4LWZsb3c6IHJvdyBub3dyYXA7XG4gICAgICB9XG5cbiAgICAgIGltZyxcbiAgICAgIGkge1xuICAgICAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogJG1lbnUtaWNvbi1zcGFjaW5nO1xuXG4gICAgICAgIEBpZiBub3QgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2UgaWYgJHBvc2l0aW9uID09IHRvcCB7XG4gICAgPiBsaSA+IGEge1xuICAgICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICAgIGZsZXgtZmxvdzogY29sdW1uIG5vd3JhcDtcbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgfVxuXG4gICAgICBpbWcsXG4gICAgICBpIHtcbiAgICAgICAgQGlmIG5vdCAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIG1hcmdpbjogMCBhdXRvICRtZW51LWljb24tc3BhY2luZztcbiAgICAgICAgfVxuICAgICAgICBAZWxzZSB7XG4gICAgICAgICAgYWxpZ24tc2VsZjogc3RyZXRjaDtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogJG1lbnUtaWNvbi1zcGFjaW5nO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBtZW51LXRleHQge1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBwYWRkaW5nLXRvcDogMDtcbiAgcGFkZGluZy1ib3R0b206IDA7XG4gIHBhZGRpbmc6ICRtZW51LWl0ZW0tcGFkZGluZztcbn1cblxuQG1peGluIGZvdW5kYXRpb24tbWVudSB7XG4gIC5tZW51IHtcbiAgICBAaW5jbHVkZSBtZW51LWJhc2U7XG4gICAgQGluY2x1ZGUgbWVudS1pY29ucztcblxuICAgIC8vIE9yaWVudGF0aW9uXG4gICAgQGluY2x1ZGUgbWVudS1kaXJlY3Rpb24oaG9yaXpvbnRhbCk7XG5cbiAgICAmLnZlcnRpY2FsIHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtZGlyZWN0aW9uKHZlcnRpY2FsKTtcbiAgICB9XG5cbiAgICBAZWFjaCAkc2l6ZSBpbiAkYnJlYWtwb2ludC1jbGFzc2VzIHtcbiAgICAgIEBpZiAkc2l6ZSAhPSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUpIHtcbiAgICAgICAgICAmLiN7JHNpemV9LWhvcml6b250YWwge1xuICAgICAgICAgICAgQGluY2x1ZGUgbWVudS1kaXJlY3Rpb24oaG9yaXpvbnRhbCk7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgJi4jeyRzaXplfS12ZXJ0aWNhbCB7XG4gICAgICAgICAgICBAaW5jbHVkZSBtZW51LWRpcmVjdGlvbih2ZXJ0aWNhbCk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gU2ltcGxlXG4gICAgJi5zaW1wbGUge1xuICAgICAgQGluY2x1ZGUgbWVudS1zaW1wbGU7XG4gICAgfVxuXG4gICAgLy8gQWxpZ24gcmlnaHRcbiAgICAmLmFsaWduLSN7JGdsb2JhbC1yaWdodH0ge1xuICAgICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuXG4gICAgICAgID4gbGkge1xuICAgICAgICAgIGZsb2F0OiAkZ2xvYmFsLXJpZ2h0O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gRXZlbi13aWR0aFxuICAgICYuZXhwYW5kZWQge1xuICAgICAgQGluY2x1ZGUgbWVudS1leHBhbmQ7XG5cbiAgICAgID4gbGk6Zmlyc3QtY2hpbGQ6bGFzdC1jaGlsZCB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIFZlcnRpY2FsIGljb25zXG4gICAgJi5pY29uLXRvcCB7XG4gICAgICBAaW5jbHVkZSBtZW51LWljb25zKHRvcCwgJGJhc2U6IGZhbHNlKTtcbiAgICB9XG5cbiAgICAvLyBOZXN0aW5nXG4gICAgJi5uZXN0ZWQge1xuICAgICAgQGluY2x1ZGUgbWVudS1uZXN0ZWQ7XG4gICAgfVxuXG4gICAgLy8gQWN0aXZlIHN0YXRlXG4gICAgLmFjdGl2ZSA+IGEge1xuICAgICAgY29sb3I6ICRtZW51LWl0ZW0tY29sb3ItYWN0aXZlO1xuICAgICAgYmFja2dyb3VuZDogJG1lbnUtaXRlbS1iYWNrZ3JvdW5kLWFjdGl2ZTtcbiAgICB9XG4gIH1cblxuICAubWVudS10ZXh0IHtcbiAgICBAaW5jbHVkZSBtZW51LXRleHQ7XG4gIH1cblxuICAvLyBBbGlnbiBjZW50ZXJcbiAgLm1lbnUtY2VudGVyZWQge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgID4gLm1lbnUge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIH1cbiAgfVxuXG4gIC8vIFByZXZlbnQgRk9VQyB3aGVuIHVzaW5nIHRoZSBSZXNwb25zaXZlIE1lbnUgcGx1Z2luXG4gIC5uby1qcyBbZGF0YS1yZXNwb25zaXZlLW1lbnVdIHVsIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBvZmYtY2FudmFzXG4vLy8vXG5cbi8vLyBXaWR0aCBvZiBhbiBvZmYtY2FudmFzIG1lbnUuXG4vLy8gQHR5cGUgTnVtYmVyXG4kb2ZmY2FudmFzLXNpemU6IDI1MHB4ICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiBhbiBvZmYtY2FudmFzIG1lbnUuXG4vLy8gQHR5cGUgQ29sb3JcbiRvZmZjYW52YXMtYmFja2dyb3VuZDogJGxpZ2h0LWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBaLWluZGV4IG9mIGFuIG9mZi1jYW52YXMgbWVudS5cbi8vLyBAdHlwZSBOdW1iZXJcbiRvZmZjYW52YXMtemluZGV4OiAtMSAhZGVmYXVsdDtcblxuLy8vIExlbmd0aCBvZiB0aGUgYW5pbWF0aW9uIG9uIGFuIG9mZi1jYW52YXMgbWVudS5cbi8vLyBAdHlwZSBOdW1iZXJcbiRvZmZjYW52YXMtdHJhbnNpdGlvbi1sZW5ndGg6IDAuNXMgIWRlZmF1bHQ7XG5cbi8vLyBUaW1pbmcgZnVuY3Rpb24gb2YgdGhlIGFuaW1hdGlvbiBvbiBhbiBvZmYtY2FudmFzIG1lbnUuXG4vLy8gQHR5cGUgS2V5d29yZFxuJG9mZmNhbnZhcy10cmFuc2l0aW9uLXRpbWluZzogZWFzZSAhZGVmYXVsdDtcblxuLy8vIElmIGB0cnVlYCwgYSByZXZlYWxlZCBvZmYtY2FudmFzIHdpbGwgYmUgZml4ZWQtcG9zaXRpb24sIGFuZCBzY3JvbGwgd2l0aCB0aGUgc2NyZWVuLlxuJG9mZmNhbnZhcy1maXhlZC1yZXZlYWw6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIGZvciB0aGUgb3ZlcmxheSB0aGF0IGFwcGVhcnMgd2hlbiBhbiBvZmYtY2FudmFzIG1lbnUgaXMgb3Blbi5cbi8vLyBAdHlwZSBDb2xvclxuJG9mZmNhbnZhcy1leGl0LWJhY2tncm91bmQ6IHJnYmEoJHdoaXRlLCAwLjI1KSAhZGVmYXVsdDtcblxuLy8vIENTUyBjbGFzcyB1c2VkIGZvciB0aGUgbWFpbiBjb250ZW50IGFyZWEuIFRoZSBvZmYtY2FudmFzIG1peGlucyB1c2UgdGhpcyB0byB0YXJnZXQgdGhlIHBhZ2UgYm9keS5cbiRtYWluY29udGVudC1jbGFzczogJ29mZi1jYW52YXMtY29udGVudCcgIWRlZmF1bHQ7XG5cbi8vLyBCb3ggc2hhZG93IHRvIHBsYWNlIHVuZGVyIHRoZSBtYWluIGNvbnRlbnQgYXJlYS4gVGhpcyBzaGFkb3cgb3ZlcmxhcHMgdGhlIG9mZi1jYW52YXMgbWVudXMuXG4vLy8gQHR5cGUgU2hhZG93XG4kbWFpbmNvbnRlbnQtc2hhZG93OiAwIDAgMTBweCByZ2JhKCRibGFjaywgMC41KSAhZGVmYXVsdDtcblxuLy8vIEFkZHMgYmFzZWxpbmUgc3R5bGVzIGZvciBvZmYtY2FudmFzLiBUaGlzIENTUyBpcyByZXF1aXJlZCB0byBtYWtlIHRoZSBvdGhlciBwaWVjZXMgd29yay5cbkBtaXhpbiBvZmYtY2FudmFzLWJhc2ljcyB7XG4gIC8vIEV4dHJhIHByb3BlcnRpZXMgbmVlZGVkIG9uIDxodG1sPiBhbmQgPGJvZHk+IHRvIG1ha2Ugb2ZmLWNhbnZhcyB3b3JrXG4gIGh0bWwsXG4gIGJvZHkge1xuICAgIGhlaWdodDogMTAwJTtcbiAgfVxuXG4gIC5vZmYtY2FudmFzLXdyYXBwZXIge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiBhdXRvO1xuICB9XG5cbiAgLm9mZi1jYW52YXMtd3JhcHBlci1pbm5lciB7XG4gICAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAkb2ZmY2FudmFzLXRyYW5zaXRpb24tbGVuZ3RoICRvZmZjYW52YXMtdHJhbnNpdGlvbi10aW1pbmc7XG4gIH1cblxuICAvLyBDb250YWluZXIgZm9yIHBhZ2UgY29udGVudFxuICAub2ZmLWNhbnZhcy1jb250ZW50LFxuICAuI3skbWFpbmNvbnRlbnQtY2xhc3N9IHtcbiAgICBtaW4taGVpZ2h0OiAxMDAlO1xuICAgIGJhY2tncm91bmQ6ICRib2R5LWJhY2tncm91bmQ7XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtICRvZmZjYW52YXMtdHJhbnNpdGlvbi1sZW5ndGggJG9mZmNhbnZhcy10cmFuc2l0aW9uLXRpbWluZztcbiAgICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgei1pbmRleDogMTtcbiAgICBwYWRkaW5nLWJvdHRvbTogMC4xcHg7IC8vIFByZXZlbnRzIG1hcmdpbiBjb2xsYXBzaW5nLCB3aGljaCB3b3VsZCByZXZlYWwgdGhlIGJveCBzaGFkb3cgb2YgdGhlIHdyYXBwZXJcblxuICAgIEBpZiBoYXMtdmFsdWUoJG1haW5jb250ZW50LXNoYWRvdykge1xuICAgICAgYm94LXNoYWRvdzogJG1haW5jb250ZW50LXNoYWRvdztcbiAgICB9XG4gIH1cblxuICAvLyBDbGljay10by1leGl0IG92ZXJsYXkgKGdlbmVyYXRlZCBieSBKYXZhU2NyaXB0KVxuICAuanMtb2ZmLWNhbnZhcy1leGl0IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgYmFja2dyb3VuZDogJG9mZmNhbnZhcy1leGl0LWJhY2tncm91bmQ7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQgJG9mZmNhbnZhcy10cmFuc2l0aW9uLWxlbmd0aCAkb2ZmY2FudmFzLXRyYW5zaXRpb24tdGltaW5nO1xuICB9XG59XG5cbi8vLyBBZGRzIGJhc2ljIHN0eWxlcyBmb3IgYW4gb2ZmLWNhbnZhcyBtZW51LlxuQG1peGluIG9mZi1jYW52YXMtYmFzZSB7XG4gIEBpbmNsdWRlIGRpc2FibGUtbW91c2Utb3V0bGluZTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBiYWNrZ3JvdW5kOiAkb2ZmY2FudmFzLWJhY2tncm91bmQ7XG4gIHotaW5kZXg6ICRvZmZjYW52YXMtemluZGV4O1xuICBtYXgtaGVpZ2h0OiAxMDAlO1xuICBvdmVyZmxvdy15OiBhdXRvO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG59XG5cbkBtaXhpbiBvZmYtY2FudmFzLXBvc2l0aW9uKFxuICAkcG9zaXRpb246IGxlZnQsXG4gICRzaXplOiAkb2ZmY2FudmFzLXNpemUsXG4gICRmaXhlZDogZmFsc2Vcbikge1xuICBAaWYgJHBvc2l0aW9uID09IGxlZnQge1xuICAgIGxlZnQ6IC0kc2l6ZTtcbiAgICB0b3A6IDA7XG4gICAgd2lkdGg6ICRzaXplO1xuICB9XG4gIEBlbHNlIGlmICRwb3NpdGlvbiA9PSByaWdodCB7XG4gICAgcmlnaHQ6IC0kc2l6ZTtcbiAgICB0b3A6IDA7XG4gICAgd2lkdGg6ICRzaXplO1xuICB9XG5cbiAgLy8gR2VuZXJhdGVzIGFuIG9wZW4gc3RhdGUgY2xhc3MgdGhhdCBtYXRjaGVzIHRoZSB3aWR0aCBvZiB0aGUgbWVudVxuICBAYXQtcm9vdCB7XG4gICAgLmlzLW9wZW4tI3skcG9zaXRpb259IHtcbiAgICAgIEBpZiAkcG9zaXRpb24gPT0gbGVmdCB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgkc2l6ZSk7XG4gICAgICB9XG4gICAgICBAZWxzZSBpZiAkcG9zaXRpb24gPT0gcmlnaHQge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLSRzaXplKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIHRoYXQgcmV2ZWFsIGFuIG9mZi1jYW52YXMgbWVudS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRwb3NpdGlvbiBbbGVmdF0gLSBQb3NpdGlvbiBvZiB0aGUgb2ZmLWNhbnZhcyBtZW51IGJlaW5nIHJldmVhbGVkLlxuQG1peGluIG9mZi1jYW52YXMtcmV2ZWFsKFxuICAkcG9zaXRpb246IGxlZnRcbikge1xuICAjeyRwb3NpdGlvbn06IDA7XG4gIHotaW5kZXg6IGF1dG87XG5cbiAgQGlmICRvZmZjYW52YXMtZml4ZWQtcmV2ZWFsIHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gIH1cblxuICAmIH4gLiN7JG1haW5jb250ZW50LWNsYXNzfSB7XG4gICAgbWFyZ2luLSN7JHBvc2l0aW9ufTogJG9mZmNhbnZhcy1zaXplO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLW9mZi1jYW52YXMge1xuICBAaW5jbHVkZSBvZmYtY2FudmFzLWJhc2ljcztcblxuICAvLyBPZmYtY2FudmFzIGNvbnRhaW5lclxuICAub2ZmLWNhbnZhcyB7XG4gICAgQGluY2x1ZGUgb2ZmLWNhbnZhcy1iYXNlO1xuXG4gICAgJi5wb3NpdGlvbi1sZWZ0ICAgeyBAaW5jbHVkZSBvZmYtY2FudmFzLXBvc2l0aW9uKGxlZnQpOyB9XG4gICAgJi5wb3NpdGlvbi1yaWdodCAgeyBAaW5jbHVkZSBvZmYtY2FudmFzLXBvc2l0aW9uKHJpZ2h0KTsgfVxuICB9XG5cbiAgLy8gUmV2ZWFsIG9mZi1jYW52YXMgbWVudSBvbiBsYXJnZXIgc2NyZWVuc1xuICBAZWFjaCAkbmFtZSwgJHZhbHVlIGluICRicmVha3BvaW50LWNsYXNzZXMge1xuICAgIEBpZiAkbmFtZSAhPSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRuYW1lKSB7XG4gICAgICAgIC5wb3NpdGlvbi1sZWZ0LnJldmVhbC1mb3ItI3skbmFtZX0ge1xuICAgICAgICAgIEBpbmNsdWRlIG9mZi1jYW52YXMtcmV2ZWFsKGxlZnQpO1xuICAgICAgICB9XG5cbiAgICAgICAgLnBvc2l0aW9uLXJpZ2h0LnJldmVhbC1mb3ItI3skbmFtZX0ge1xuICAgICAgICAgIEBpbmNsdWRlIG9mZi1jYW52YXMtcmV2ZWFsKHJpZ2h0KTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgb3JiaXRcbi8vLy9cblxuLy8vIERlZmF1bHQgY29sb3IgZm9yIE9yYml0J3MgYnVsbGV0cy5cbi8vLyBAdHlwZSBDb2xvclxuJG9yYml0LWJ1bGxldC1iYWNrZ3JvdW5kOiAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGFjdGl2ZSBjb2xvciBmb3IgT3JiaXQncyBidWxsZXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kb3JiaXQtYnVsbGV0LWJhY2tncm91bmQtYWN0aXZlOiAkZGFyay1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBkaWFtZXRlciBmb3IgT3JiaXQncyBidWxsZXRzLlxuLy8vIEB0eXBlIE51bWJlclxuJG9yYml0LWJ1bGxldC1kaWFtZXRlcjogMS4ycmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBtYXJnaW4gYmV0d2VlbiBPcmJpdCdzIGJ1bGxldHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kb3JiaXQtYnVsbGV0LW1hcmdpbjogMC4xcmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBkaXN0YW5jZSBmcm9tIHNsaWRlIHJlZ2lvbiBmb3IgT3JiaXQncyBidWxsZXRzLlxuLy8vIEB0eXBlIE51bWJlclxuJG9yYml0LWJ1bGxldC1tYXJnaW4tdG9wOiAwLjhyZW0gIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJvdHRvbSBtYXJnaW4gZnJvbSBPcmJpdCdzIGJ1bGxldHMgdG8gd2hhdGV2ZXIgY29udGVudCBtYXkgbHVyayBiZWxvdyBpdC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRvcmJpdC1idWxsZXQtbWFyZ2luLWJvdHRvbTogMC44cmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIGZvciBPcmJpdCdzIGNhcHRpb24uXG4vLy8gQHR5cGUgQ29sb3JcbiRvcmJpdC1jYXB0aW9uLWJhY2tncm91bmQ6IHJnYmEoJGJsYWNrLCAwLjUpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwYWRkaW5nIGZvciBPcmJpdCdzIGNhcHRpb24uXG4vLy8gQHR5cGUgTnVtYmVyXG4kb3JiaXQtY2FwdGlvbi1wYWRkaW5nOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIGZvciBPcmJpdCdzIGNvbnRyb2xzIHdoZW4gaG92ZXJlZC5cbi8vLyBAdHlwZSBDb2xvclxuJG9yYml0LWNvbnRyb2wtYmFja2dyb3VuZC1ob3ZlcjogcmdiYSgkYmxhY2ssIDAuNSkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBhZGRpbmcgZm9yIE9yYml0J3MgY29udHJvbHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kb3JiaXQtY29udHJvbC1wYWRkaW5nOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCB6LWluZGV4IGZvciBPcmJpdCdzIGNvbnRyb2xzLlxuLy8vIEB0eXBlIE51bWJlclxuJG9yYml0LWNvbnRyb2wtemluZGV4OiAxMCAhZGVmYXVsdDtcblxuLy8vIEFkZHMgc3R5bGVzIGZvciB0aGUgb3V0ZXIgT3JiaXQgd3JhcHBlci4gVGhlc2Ugc3R5bGVzIGFyZSB1c2VkIG9uIHRoZSBgLm9yYml0YCBjbGFzcy5cbkBtaXhpbiBvcmJpdC13cmFwcGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIHRoZSBpbm5lciBPcmJpdCBzbGlkZSBjb250YWluZXIuIFRoZXNlIHN0eWxlcyBhcmUgdXNlZCBvbiB0aGUgYC5vcmJpdC1jb250YWluZXJgIGNsYXNzLlxuQG1peGluIG9yYml0LWNvbnRhaW5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luOiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIHRoZSBpbmRpdmlkdWFsIHNsaWRlcyBvZiBhbiBPcmJpdCBzbGlkZXIuIFRoZXNlIHN0eWxlcyBhcmUgdXNlZCBvbiB0aGUgYC5vcmJpdC1zbGlkZWAgY2xhc3MuXG5AbWl4aW4gb3JiaXQtc2xpZGUge1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LWhlaWdodDogMTAwJTtcblxuICAmLm5vLW1vdGlvbnVpIHtcbiAgICAmLmlzLWFjdGl2ZSB7XG4gICAgICB0b3A6IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gb3JiaXQtZmlndXJlIHtcbiAgbWFyZ2luOiAwO1xufVxuXG5AbWl4aW4gb3JiaXQtaW1hZ2Uge1xuICBtYXJnaW46IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDEwMCU7XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYW4gb3JiaXQgc2xpZGUgY2FwdGlvbi4gVGhlc2Ugc3R5bGVzIGFyZSB1c2VkIG9uIHRoZSBgLm9yYml0LWNhcHRpb25gIGNsYXNzLlxuQG1peGluIG9yYml0LWNhcHRpb24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6ICRvcmJpdC1jYXB0aW9uLXBhZGRpbmc7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGNvbG9yOiBmb3JlZ3JvdW5kKCRvcmJpdC1jYXB0aW9uLWJhY2tncm91bmQpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkb3JiaXQtY2FwdGlvbi1iYWNrZ3JvdW5kO1xufVxuXG4vLy8gQWRkcyBiYXNlIHN0eWxlcyBmb3IgdGhlIG5leHQvcHJldmlvdXMgYnV0dG9ucyBpbiBhbiBPcmJpdCBzbGlkZXIuIFRoZXNlIHN0eWxlcyBhcmUgc2hhcmVkIGJldHdlZW4gdGhlIGAub3JiaXQtbmV4dGAgYW5kIGAub3JiaXQtcHJldmlvdXNgIGNsYXNzZXMgaW4gdGhlIGRlZmF1bHQgQ1NTLlxuQG1peGluIG9yYml0LWNvbnRyb2wge1xuICBAaW5jbHVkZSBkaXNhYmxlLW1vdXNlLW91dGxpbmU7XG4gIEBpbmNsdWRlIHZlcnRpY2FsLWNlbnRlcjtcbiAgei1pbmRleDogJG9yYml0LWNvbnRyb2wtemluZGV4O1xuICBwYWRkaW5nOiAkb3JiaXQtY29udHJvbC1wYWRkaW5nO1xuICBjb2xvcjogJHdoaXRlO1xuXG4gICY6aG92ZXIsXG4gICY6YWN0aXZlLFxuICAmOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkb3JiaXQtY29udHJvbC1iYWNrZ3JvdW5kLWhvdmVyO1xuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgdGhlIE9yYml0IHByZXZpb3VzIGJ1dHRvbi4gVGhlc2Ugc3R5bGVzIGFyZSB1c2VkIG9uIHRoZSBgLm9yYml0LXByZXZpb3VzYCBjbGFzcy5cbkBtaXhpbiBvcmJpdC1wcmV2aW91cyB7XG4gICN7JGdsb2JhbC1sZWZ0fTogMDtcbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciB0aGUgT3JiaXQgbmV4dCBidXR0b24uIFRoZXNlIHN0eWxlcyBhcmUgdXNlZCBvbiB0aGUgYC5vcmJpdC1uZXh0YCBjbGFzcy5cbkBtaXhpbiBvcmJpdC1uZXh0IHtcbiAgI3skZ2xvYmFsLWxlZnR9OiBhdXRvO1xuICAjeyRnbG9iYWwtcmlnaHR9OiAwO1xufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgY29udGFpbmVyIG9mIE9yYml0IGJ1bGxldHMuIC8vLyBBZGRzIHN0eWxlcyBmb3IgdGhlIE9yYml0IHByZXZpb3VzIGJ1dHRvbi4gVGhlc2Ugc3R5bGVzIGFyZSB1c2VkIG9uIHRoZSBgLm9yYml0LWJ1bGxldHNgIGNsYXNzLlxuQG1peGluIG9yYml0LWJ1bGxldHMge1xuICBAaW5jbHVkZSBkaXNhYmxlLW1vdXNlLW91dGxpbmU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luLXRvcDogJG9yYml0LWJ1bGxldC1tYXJnaW4tdG9wO1xuICBtYXJnaW4tYm90dG9tOiAkb3JiaXQtYnVsbGV0LW1hcmdpbi1ib3R0b207XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICBidXR0b24ge1xuICAgIHdpZHRoOiAkb3JiaXQtYnVsbGV0LWRpYW1ldGVyO1xuICAgIGhlaWdodDogJG9yYml0LWJ1bGxldC1kaWFtZXRlcjtcbiAgICBtYXJnaW46ICRvcmJpdC1idWxsZXQtbWFyZ2luO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRvcmJpdC1idWxsZXQtYmFja2dyb3VuZDtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRvcmJpdC1idWxsZXQtYmFja2dyb3VuZC1hY3RpdmU7XG4gICAgfVxuXG4gICAgJi5pcy1hY3RpdmUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG9yYml0LWJ1bGxldC1iYWNrZ3JvdW5kLWFjdGl2ZTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tb3JiaXQge1xuICAub3JiaXQge1xuICAgIEBpbmNsdWRlIG9yYml0LXdyYXBwZXI7XG4gIH1cblxuICAub3JiaXQtY29udGFpbmVyIHtcbiAgICBAaW5jbHVkZSBvcmJpdC1jb250YWluZXI7XG4gIH1cblxuICAub3JiaXQtc2xpZGUge1xuICAgIEBpbmNsdWRlIG9yYml0LXNsaWRlO1xuICB9XG5cbiAgLm9yYml0LWZpZ3VyZSB7XG4gICAgQGluY2x1ZGUgb3JiaXQtZmlndXJlO1xuICB9XG5cbiAgLm9yYml0LWltYWdlIHtcbiAgICBAaW5jbHVkZSBvcmJpdC1pbWFnZTtcbiAgfVxuXG4gIC5vcmJpdC1jYXB0aW9uIHtcbiAgICBAaW5jbHVkZSBvcmJpdC1jYXB0aW9uO1xuICB9XG5cbiAgJW9yYml0LWNvbnRyb2wge1xuICAgIEBpbmNsdWRlIG9yYml0LWNvbnRyb2w7XG4gIH1cblxuICAub3JiaXQtcHJldmlvdXMge1xuICAgIEBleHRlbmQgJW9yYml0LWNvbnRyb2w7XG4gICAgQGluY2x1ZGUgb3JiaXQtcHJldmlvdXM7XG4gIH1cblxuICAub3JiaXQtbmV4dCB7XG4gICAgQGV4dGVuZCAlb3JiaXQtY29udHJvbDtcbiAgICBAaW5jbHVkZSBvcmJpdC1uZXh0O1xuICB9XG5cbiAgLm9yYml0LWJ1bGxldHMge1xuICAgIEBpbmNsdWRlIG9yYml0LWJ1bGxldHM7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHBhZ2luYXRpb25cbi8vLy9cblxuLy8vIEZvbnQgc2l6ZSBvZiBwYWdpbmF0aW9uIGl0ZW1zLlxuLy8vIEB0eXBlIE51bWJlclxuJHBhZ2luYXRpb24tZm9udC1zaXplOiByZW0tY2FsYygxNCkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJvdHRvbSBtYXJnaW4gb2YgdGhlIG1lZGlhIG9iamVjdC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRwYWdpbmF0aW9uLW1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luICFkZWZhdWx0O1xuXG4vLy8gVGV4dCBjb2xvciBvZiBwYWdpbmF0aW9uIGl0ZW1zLlxuLy8vIEB0eXBlIENvbG9yXG4kcGFnaW5hdGlvbi1pdGVtLWNvbG9yOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBQYWRkaW5nIGluc2lkZSBvZiBwYWdpbmF0aW9uIGl0ZW1zLlxuLy8vIEB0eXBlIE51bWJlclxuJHBhZ2luYXRpb24taXRlbS1wYWRkaW5nOiByZW0tY2FsYygzIDEwKSAhZGVmYXVsdDtcblxuLy8vIFJpZ2h0IG1hcmdpbiB0byBzZXBhcmF0ZSBwYWdpbmF0aW9uIGl0ZW1zLlxuLy8vIEB0eXBlIE51bWJlclxuJHBhZ2luYXRpb24taXRlbS1zcGFjaW5nOiByZW0tY2FsYygxKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcmFkaXVzIGZvciBwYWdpbmF0aW9uIGl0ZW1zLlxuLy8vIEB0eXBlIE51bWJlclxuJHBhZ2luYXRpb24tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgcGFnaW5hdGlvbiBpdGVtcyBvbiBob3Zlci5cbi8vLyBAdHlwZSBDb2xvclxuJHBhZ2luYXRpb24taXRlbS1iYWNrZ3JvdW5kLWhvdmVyOiAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgcGFnaW5hdGlvbiBpdGVtIGZvciB0aGUgY3VycmVudCBwYWdlLlxuLy8vIEB0eXBlIENvbG9yXG4kcGFnaW5hdGlvbi1pdGVtLWJhY2tncm91bmQtY3VycmVudDogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBUZXh0IGNvbG9yIG9mIHRoZSBwYWdpbmF0aW9uIGl0ZW0gZm9yIHRoZSBjdXJyZW50IHBhZ2UuXG4vLy8gQHR5cGUgQ29sb3JcbiRwYWdpbmF0aW9uLWl0ZW0tY29sb3ItY3VycmVudDogZm9yZWdyb3VuZCgkcGFnaW5hdGlvbi1pdGVtLWJhY2tncm91bmQtY3VycmVudCkgIWRlZmF1bHQ7XG5cbi8vLyBUZXh0IGNvbG9yIG9mIGEgZGlzYWJsZWQgcGFnaW5hdGlvbiBpdGVtLlxuLy8vIEB0eXBlIENvbG9yXG4kcGFnaW5hdGlvbi1pdGVtLWNvbG9yLWRpc2FibGVkOiAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciBvZiB0aGUgZWxsaXBzaXMgaW4gYSBwYWdpbmF0aW9uIG1lbnUuXG4vLy8gQHR5cGUgQ29sb3JcbiRwYWdpbmF0aW9uLWVsbGlwc2lzLWNvbG9yOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBJZiBgZmFsc2VgLCBkb24ndCBkaXNwbGF5IHBhZ2UgbnVtYmVyIGxpbmtzIG9uIG1vYmlsZSwgb25seSBuZXh0L3ByZXZpb3VzIGxpbmtzLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRwYWdpbmF0aW9uLW1vYmlsZS1pdGVtczogZmFsc2UgIWRlZmF1bHQ7XG5cbi8vLyBJZiBgdHJ1ZWAsIGFycm93cyBhcmUgYWRkZWQgdG8gdGhlIG5leHQgYW5kIHByZXZpb3VzIGxpbmtzIG9mIHBhZ2luYXRpb24uXG4vLy8gQHR5cGUgQm9vbGVhblxuJHBhZ2luYXRpb24tYXJyb3dzOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgcGFnaW5hdGlvbiBjb250YWluZXIuIEFwcGx5IHRoaXMgdG8gYSBgPHVsPmAuXG5AbWl4aW4gcGFnaW5hdGlvbi1jb250YWluZXIge1xuICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogMDtcbiAgbWFyZ2luLWJvdHRvbTogJHBhZ2luYXRpb24tbWFyZ2luLWJvdHRvbTtcblxuICAvLyBMaXN0IGl0ZW1cbiAgbGkge1xuICAgIGZvbnQtc2l6ZTogJHBhZ2luYXRpb24tZm9udC1zaXplO1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAkcGFnaW5hdGlvbi1pdGVtLXNwYWNpbmc7XG4gICAgYm9yZGVyLXJhZGl1czogJHBhZ2luYXRpb24tcmFkaXVzO1xuXG4gICAgQGlmICRwYWdpbmF0aW9uLW1vYmlsZS1pdGVtcyB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICAgICY6bGFzdC1jaGlsZCxcbiAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBQYWdlIGxpbmtzXG4gIGEsXG4gIGJ1dHRvbiB7XG4gICAgY29sb3I6ICRwYWdpbmF0aW9uLWl0ZW0tY29sb3I7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZzogJHBhZ2luYXRpb24taXRlbS1wYWRkaW5nO1xuICAgIGJvcmRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kOiAkcGFnaW5hdGlvbi1pdGVtLWJhY2tncm91bmQtaG92ZXI7XG4gICAgfVxuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgdGhlIGN1cnJlbnQgcGFnaW5hdGlvbiBpdGVtLiBBcHBseSB0aGlzIHRvIGFuIGA8YT5gLlxuQG1peGluIHBhZ2luYXRpb24taXRlbS1jdXJyZW50IHtcbiAgcGFkZGluZzogJHBhZ2luYXRpb24taXRlbS1wYWRkaW5nO1xuICBiYWNrZ3JvdW5kOiAkcGFnaW5hdGlvbi1pdGVtLWJhY2tncm91bmQtY3VycmVudDtcbiAgY29sb3I6ICRwYWdpbmF0aW9uLWl0ZW0tY29sb3ItY3VycmVudDtcbiAgY3Vyc29yOiBkZWZhdWx0O1xufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgZGlzYWJsZWQgcGFnaW5hdGlvbiBpdGVtLiBBcHBseSB0aGlzIHRvIGFuIGA8YT5gLlxuQG1peGluIHBhZ2luYXRpb24taXRlbS1kaXNhYmxlZCB7XG4gIHBhZGRpbmc6ICRwYWdpbmF0aW9uLWl0ZW0tcGFkZGluZztcbiAgY29sb3I6ICRwYWdpbmF0aW9uLWl0ZW0tY29sb3ItZGlzYWJsZWQ7XG4gIGN1cnNvcjogbm90LWFsbG93ZWQ7XG5cbiAgJjpob3ZlciB7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhbiBlbGxpcHNpcyBmb3IgdXNlIGluIGEgcGFnaW5hdGlvbiBsaXN0LlxuQG1peGluIHBhZ2luYXRpb24tZWxsaXBzaXMge1xuICBjb250ZW50OiAnXFwyMDI2JztcbiAgcGFkZGluZzogJHBhZ2luYXRpb24taXRlbS1wYWRkaW5nO1xuICBjb2xvcjogJHBhZ2luYXRpb24tZWxsaXBzaXMtY29sb3I7XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXBhZ2luYXRpb24ge1xuICAucGFnaW5hdGlvbiB7XG4gICAgQGluY2x1ZGUgcGFnaW5hdGlvbi1jb250YWluZXI7XG5cbiAgICAuY3VycmVudCB7XG4gICAgICBAaW5jbHVkZSBwYWdpbmF0aW9uLWl0ZW0tY3VycmVudDtcbiAgICB9XG5cbiAgICAuZGlzYWJsZWQge1xuICAgICAgQGluY2x1ZGUgcGFnaW5hdGlvbi1pdGVtLWRpc2FibGVkO1xuICAgIH1cblxuICAgIC5lbGxpcHNpczo6YWZ0ZXIge1xuICAgICAgQGluY2x1ZGUgcGFnaW5hdGlvbi1lbGxpcHNpcztcbiAgICB9XG4gIH1cblxuICBAaWYgJHBhZ2luYXRpb24tYXJyb3dzIHtcbiAgICAucGFnaW5hdGlvbi1wcmV2aW91cyBhOjpiZWZvcmUsXG4gICAgLnBhZ2luYXRpb24tcHJldmlvdXMuZGlzYWJsZWQ6OmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAnXFwwMGFiJztcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAwLjVyZW07XG4gICAgfVxuXG4gICAgLnBhZ2luYXRpb24tbmV4dCBhOjphZnRlcixcbiAgICAucGFnaW5hdGlvbi1uZXh0LmRpc2FibGVkOjphZnRlciB7XG4gICAgICBjb250ZW50OiAnXFwwMGJiJztcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06IDAuNXJlbTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgcHJvZ3Jlc3MgYmFyIGNvbnRhaW5lci5cbkBtaXhpbiBwcm9ncmVzcy1jb250YWluZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJvZ3Jlc3MtYmFja2dyb3VuZDtcbiAgaGVpZ2h0OiAkcHJvZ3Jlc3MtaGVpZ2h0O1xuICBtYXJnaW4tYm90dG9tOiAkcHJvZ3Jlc3MtbWFyZ2luLWJvdHRvbTtcbiAgYm9yZGVyLXJhZGl1czogJHByb2dyZXNzLXJhZGl1cztcbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciB0aGUgaW5uZXIgbWV0ZXIgb2YgYSBwcm9ncmVzcyBiYXIuXG5AbWl4aW4gcHJvZ3Jlc3MtbWV0ZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHByb2dyZXNzLW1ldGVyLWJhY2tncm91bmQ7XG5cbiAgQGlmIGhhcy12YWx1ZSgkcHJvZ3Jlc3MtcmFkaXVzKSB7XG4gICAgYm9yZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciB0ZXh0IGluIHRoZSBwcm9ncmVzcyBtZXRlci5cbkBtaXhpbiBwcm9ncmVzcy1tZXRlci10ZXh0IHtcbiAgQGluY2x1ZGUgYWJzb2x1dGUtY2VudGVyO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIG1hcmdpbjogMDtcbiAgZm9udC1zaXplOiAwLjc1cmVtO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgY29sb3I6ICR3aGl0ZTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcblxuICBAaWYgaGFzLXZhbHVlKCRwcm9ncmVzcy1yYWRpdXMpIHtcbiAgICBib3JkZXItcmFkaXVzOiAkcHJvZ3Jlc3MtcmFkaXVzO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXByb2dyZXNzLWJhciB7XG4gIC8vIFByb2dyZXNzIGJhclxuICAucHJvZ3Jlc3Mge1xuICAgIEBpbmNsdWRlIHByb2dyZXNzLWNvbnRhaW5lcjtcblxuICAgIEBlYWNoICRuYW1lLCAkY29sb3IgaW4gJGZvdW5kYXRpb24tcGFsZXR0ZSB7XG4gICAgICAmLiN7JG5hbWV9IHtcbiAgICAgICAgLnByb2dyZXNzLW1ldGVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBJbm5lciBtZXRlclxuICAucHJvZ3Jlc3MtbWV0ZXIge1xuICAgIEBpbmNsdWRlIHByb2dyZXNzLW1ldGVyO1xuICB9XG5cbiAgLy8gSW5uZXIgbWV0ZXIgdGV4dFxuICAucHJvZ3Jlc3MtbWV0ZXItdGV4dCB7XG4gICAgQGluY2x1ZGUgcHJvZ3Jlc3MtbWV0ZXItdGV4dDtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vIFtUT0RPXSBDaGVjayBob3cgcGx1Z2luIGNvbmZpcm1zIGRpc2FibGVkIG9yIHZlcnRpY2FsIHN0YXR1c1xuLy8gW1RPRE9dIENoZWNrIGlmIHRyYW5zaXRpb246IGFsbDsgaXMgbmVjZXNzYXJ5XG5cbi8vLy9cbi8vLyBAZ3JvdXAgc2xpZGVyXG4vLy8vXG5cbi8vLyBEZWZhdWx0IHNsaWRlciB3aWR0aCBvZiBhIHZlcnRpY2FsIHNsaWRlci4gKERvZXNuJ3QgYXBwbHkgdG8gdGhlIG5hdGl2ZSBzbGlkZXIuKVxuLy8vIEB0eXBlIE51bWJlclxuJHNsaWRlci13aWR0aC12ZXJ0aWNhbDogMC41cmVtICFkZWZhdWx0O1xuXG4vLy8gVHJhbnNpdGlvbiBwcm9wZXJ0aWVzIHRvIGFwcGx5IHRvIHRoZSBzbGlkZXIgaGFuZGxlIGFuZCBmaWxsLiAoRG9lc24ndCBhcHBseSB0byB0aGUgbmF0aXZlIHNsaWRlci4pXG4vLy8gQHR5cGUgVHJhbnNpdGlvblxuJHNsaWRlci10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLWluLW91dCAhZGVmYXVsdDtcblxuLy8vIEFkZHMgdGhlIGdlbmVyYWwgc3R5bGVzIGZvciBzbGlkZXJzLlxuQG1peGluIHNsaWRlci1jb250YWluZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGhlaWdodDogJHNsaWRlci1oZWlnaHQ7XG4gIG1hcmdpbi10b3A6IDEuMjVyZW07XG4gIG1hcmdpbi1ib3R0b206IDIuMjVyZW07XG4gIGJhY2tncm91bmQtY29sb3I6ICRzbGlkZXItYmFja2dyb3VuZDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgdG91Y2gtYWN0aW9uOiBub25lO1xufVxuXG4vLy8gQWRkcyB0aGUgZ2VuZXJhbCBzdHlsZXMgZm9yIGFjdGl2ZSBmaWxsIGZvciBzbGlkZXJzLlxuQG1peGluIHNsaWRlci1maWxsIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6ICRzbGlkZXItaGVpZ2h0O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2xpZGVyLWZpbGwtYmFja2dyb3VuZDtcbiAgdHJhbnNpdGlvbjogJHNsaWRlci10cmFuc2l0aW9uO1xuXG4gICYuaXMtZHJhZ2dpbmcge1xuICAgIHRyYW5zaXRpb246IGFsbCAwcyBsaW5lYXI7XG4gIH1cbn1cblxuLy8vIEFkZHMgdGhlIGdlbmVyYWwgc3R5bGVzIGZvciB0aGUgc2xpZGVyIGhhbmRsZXMuXG5AbWl4aW4gc2xpZGVyLWhhbmRsZSB7XG4gIEBpbmNsdWRlIGRpc2FibGUtbW91c2Utb3V0bGluZTtcbiAgQGluY2x1ZGUgdmVydGljYWwtY2VudGVyO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IDE7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6ICRzbGlkZXItaGFuZGxlLXdpZHRoO1xuICBoZWlnaHQ6ICRzbGlkZXItaGFuZGxlLWhlaWdodDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHNsaWRlci1oYW5kbGUtYmFja2dyb3VuZDtcbiAgdHJhbnNpdGlvbjogJHNsaWRlci10cmFuc2l0aW9uO1xuICB0b3VjaC1hY3Rpb246IG1hbmlwdWxhdGlvbjtcbiAgYm9yZGVyLXJhZGl1czogJHNsaWRlci1yYWRpdXM7XG5cbiAgJjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogc2NhbGUtY29sb3IoJHNsaWRlci1oYW5kbGUtYmFja2dyb3VuZCwgJGxpZ2h0bmVzczogLTE1JSk7XG4gIH1cblxuICAmLmlzLWRyYWdnaW5nIHtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMHMgbGluZWFyO1xuICB9XG59XG5cbkBtaXhpbiBzbGlkZXItZGlzYWJsZWQge1xuICBvcGFjaXR5OiAkc2xpZGVyLW9wYWNpdHktZGlzYWJsZWQ7XG4gIGN1cnNvcjogbm90LWFsbG93ZWQ7XG59XG5cbkBtaXhpbiBzbGlkZXItdmVydGljYWwge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAkc2xpZGVyLXdpZHRoLXZlcnRpY2FsO1xuICBoZWlnaHQ6IDEyLjVyZW07XG4gIG1hcmdpbjogMCAxLjI1cmVtO1xuICB0cmFuc2Zvcm06IHNjYWxlKDEsIC0xKTtcblxuICAuc2xpZGVyLWZpbGwge1xuICAgIHRvcDogMDtcbiAgICB3aWR0aDogJHNsaWRlci13aWR0aC12ZXJ0aWNhbDtcbiAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICB9XG5cbiAgLnNsaWRlci1oYW5kbGUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogNTAlO1xuICAgIHdpZHRoOiAkc2xpZGVyLWhhbmRsZS1oZWlnaHQ7XG4gICAgaGVpZ2h0OiAkc2xpZGVyLWhhbmRsZS13aWR0aDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tc2xpZGVyIHtcbiAgLy8gQ29udGFpbmVyXG4gIC5zbGlkZXIge1xuICAgIEBpbmNsdWRlIHNsaWRlci1jb250YWluZXI7XG4gIH1cblxuICAvLyBGaWxsIGFyZWFcbiAgLnNsaWRlci1maWxsIHtcbiAgICBAaW5jbHVkZSBzbGlkZXItZmlsbDtcbiAgfVxuXG4gIC8vIERyYWdnYWJsZSBoYW5kbGVcbiAgLnNsaWRlci1oYW5kbGUge1xuICAgIEBpbmNsdWRlIHNsaWRlci1oYW5kbGU7XG4gIH1cblxuICAvLyBEaXNhYmxlZCBzdGF0ZVxuICAuc2xpZGVyLmRpc2FibGVkLFxuICAuc2xpZGVyW2Rpc2FibGVkXSB7XG4gICAgQGluY2x1ZGUgc2xpZGVyLWRpc2FibGVkO1xuICB9XG5cbiAgLy8gVmVydGljYWwgc2xpZGVyXG4gIC5zbGlkZXIudmVydGljYWwge1xuICAgIEBpbmNsdWRlIHNsaWRlci12ZXJ0aWNhbDtcbiAgfVxuXG4gIC8vIFJUTCBzdXBwb3J0XG4gIEBpZiAkZ2xvYmFsLXRleHQtZGlyZWN0aW9uID09IHJ0bCB7XG4gICAgLnNsaWRlcjpub3QoLnZlcnRpY2FsKSB7XG4gICAgICB0cmFuc2Zvcm06IHNjYWxlKC0xLCAxKTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG5AbWl4aW4gZm91bmRhdGlvbi1zdGlja3kge1xuICAuc3RpY2t5LWNvbnRhaW5lciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB9XG5cbiAgLnN0aWNreSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHotaW5kZXg6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgfVxuXG4gIC5zdGlja3kuaXMtc3R1Y2sge1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB6LWluZGV4OiA1O1xuXG4gICAgJi5pcy1hdC10b3Age1xuICAgICAgdG9wOiAwO1xuICAgIH1cblxuICAgICYuaXMtYXQtYm90dG9tIHtcbiAgICAgIGJvdHRvbTogMDtcbiAgICB9XG4gIH1cblxuICAuc3RpY2t5LmlzLWFuY2hvcmVkIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogYXV0bztcbiAgICByaWdodDogYXV0bztcblxuICAgICYuaXMtYXQtYm90dG9tIHtcbiAgICAgIGJvdHRvbTogMDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHJldmVhbFxuLy8vL1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIG9mIGEgbW9kYWwuXG4vLy8gQHR5cGUgQ29sb3JcbiRyZXZlYWwtYmFja2dyb3VuZDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCB3aWR0aCBvZiBhIG1vZGFsLCB3aXRoIG5vIGNsYXNzIGFwcGxpZWQuXG4vLy8gQHR5cGUgTnVtYmVyXG4kcmV2ZWFsLXdpZHRoOiA2MDBweCAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgbWF4aW11bSB3aWR0aCBvZiBhIG1vZGFsLlxuLy8vIEB0eXBlIE51bWJlclxuJHJldmVhbC1tYXgtd2lkdGg6ICRnbG9iYWwtd2lkdGggIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBhZGRpbmcgaW5zaWRlIGEgbW9kYWwuXG4vLy8gQHR5cGUgTnVtYmVyXG4kcmV2ZWFsLXBhZGRpbmc6ICRnbG9iYWwtcGFkZGluZyAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYm9yZGVyIGFyb3VuZCBhIG1vZGFsLlxuLy8vIEB0eXBlIE51bWJlclxuJHJldmVhbC1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHJhZGl1cyBmb3IgbW9kYWwuXG4vLy8gQHR5cGUgTnVtYmVyXG4kcmV2ZWFsLXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XG5cbi8vLyB6LWluZGV4IGZvciBtb2RhbHMuIFRoZSBvdmVybGF5IHVzZXMgdGhpcyB2YWx1ZSwgd2hpbGUgdGhlIG1vZGFsIGl0c2VsZiB1c2VzIHRoaXMgdmFsdWUgcGx1cyBvbmUuXG4vLy8gQHR5cGUgTnVtYmVyXG4kcmV2ZWFsLXppbmRleDogMTAwNSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgbW9kYWwgb3ZlcmxheXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRyZXZlYWwtb3ZlcmxheS1iYWNrZ3JvdW5kOiByZ2JhKCRibGFjaywgMC40NSkgIWRlZmF1bHQ7XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSBtb2RhbCBvdmVybGF5LlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRiYWNrZ3JvdW5kIFskcmV2ZWFsLW92ZXJsYXktYmFja2dyb3VuZF0gLSBCYWNrZ3JvdW5kIGNvbG9yIG9mIHRoZSBvdmVybGF5LlxuQG1peGluIHJldmVhbC1vdmVybGF5IHtcbiAgZGlzcGxheTogbm9uZTtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIHotaW5kZXg6ICRyZXZlYWwtemluZGV4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcmV2ZWFsLW92ZXJsYXktYmFja2dyb3VuZDtcbiAgb3ZlcmZsb3cteTogc2Nyb2xsO1xufVxuXG4vLy8gQWRkcyBiYXNlIHN0eWxlcyBmb3IgYSBtb2RhbC5cbkBtaXhpbiByZXZlYWwtbW9kYWwtYmFzZSB7XG4gIEBpbmNsdWRlIGRpc2FibGUtbW91c2Utb3V0bGluZTtcbiAgZGlzcGxheTogbm9uZTtcbiAgei1pbmRleDogJHJldmVhbC16aW5kZXggKyAxO1xuICBwYWRkaW5nOiAkcmV2ZWFsLXBhZGRpbmc7XG4gIGJvcmRlcjogJHJldmVhbC1ib3JkZXI7XG4gIGJhY2tncm91bmQtY29sb3I6ICRyZXZlYWwtYmFja2dyb3VuZDtcbiAgYm9yZGVyLXJhZGl1czogJHJldmVhbC1yYWRpdXM7XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICBtaW4taGVpZ2h0OiAwO1xuICB9XG5cbiAgLy8gTWFrZSBzdXJlIHJvd3MgZG9uJ3QgaGF2ZSBhIG1pbi13aWR0aCBvbiB0aGVtXG4gIC5jb2x1bW4sXG4gIC5jb2x1bW5zIHtcbiAgICBtaW4td2lkdGg6IDA7XG4gIH1cblxuICAvLyBTdHJpcCBtYXJnaW5zIGZyb20gdGhlIGxhc3QgaXRlbSBpbiB0aGUgbW9kYWxcbiAgPiA6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuXG4vLy8gQWRqdXN0cyB0aGUgd2lkdGggb2YgYSBtb2RhbC5cbi8vLyBAcGFyYW0ge051bWJlcn0gJHdpZHRoIC0gV2lkdGggb2YgdGhlIG1vZGFsLiBHZW5lcmFsbHkgYSBwZXJjZW50YWdlLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkbWF4LXdpZHRoIFskcmV2ZWFsLW1heC13aWR0aF0gLSBNYXhpbXVtIHdpZHRoIG9mIHRoZSBtb2RhbC5cbkBtaXhpbiByZXZlYWwtbW9kYWwtd2lkdGgoXG4gICR3aWR0aDogJHJldmVhbC13aWR0aCxcbiAgJG1heC13aWR0aDogJHJldmVhbC1tYXgtd2lkdGhcbikge1xuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgIEBleHRlbmQgJXJldmVhbC1jZW50ZXJlZDtcbiAgICB3aWR0aDogJHdpZHRoO1xuICAgIG1heC13aWR0aDogJHJldmVhbC1tYXgtd2lkdGg7XG4gIH1cbn1cblxuLy8vIENyZWF0ZXMgYSBmdWxsLXNjcmVlbiBtb2RhbCwgd2hpY2ggc3RyZXRjaGVzIHRoZSBmdWxsIHdpZHRoIGFuZCBoZWlnaHQgb2YgdGhlIHdpbmRvdy5cbkBtaXhpbiByZXZlYWwtbW9kYWwtZnVsbHNjcmVlbiB7XG4gIC8vIHNjc3MtbGludDpkaXNhYmxlIER1cGxpY2F0ZVByb3BlcnR5XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgaGVpZ2h0OiAxMDB2aDtcbiAgbWluLWhlaWdodDogMTAwdmg7XG4gIG1heC13aWR0aDogbm9uZTtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXJhZGl1czogMDtcbn1cblxuQG1peGluIGZvdW5kYXRpb24tcmV2ZWFsIHtcbiAgLy8gW1RPRE9dIElzIHRoaXMgbmVjZXNzYXJ5P1xuICAvLyBzY3NzLWxpbnQ6ZGlzYWJsZSBRdWFsaWZ5aW5nRWxlbWVudFxuICBib2R5LmlzLXJldmVhbC1vcGVuIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICB9XG5cbiAgLy8gT3ZlcmxheVxuICAucmV2ZWFsLW92ZXJsYXkge1xuICAgIEBpbmNsdWRlIHJldmVhbC1vdmVybGF5O1xuICB9XG5cbiAgLy8gTW9kYWwgY29udGFpbmVyXG4gIC5yZXZlYWwge1xuICAgIEBpbmNsdWRlIHJldmVhbC1tb2RhbC1iYXNlO1xuICAgIEBpbmNsdWRlIHJldmVhbC1tb2RhbC13aWR0aCgkcmV2ZWFsLXdpZHRoKTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiAxMDBweDtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgb3ZlcmZsb3cteTogYXV0bztcblxuICAgIC8vIFBsYWNlaG9sZGVyIHNlbGVjdG9yIGZvciBtZWRpdW0tYW5kLXVwIG1vZGFsc1xuICAgIC8vIFByZXZlbnRzIGR1cGxpY2F0ZSBDU1Mgd2hlbiBkZWZpbmluZyBtdWx0aXBsZSBSZXZlYWwgc2l6ZXNcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgJXJldmVhbC1jZW50ZXJlZCB7XG4gICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBSZW1vdmUgcGFkZGluZ1xuICAgICYuY29sbGFwc2Uge1xuICAgICAgcGFkZGluZzogMDtcbiAgICB9XG5cbiAgICAvLyBTaXppbmcgY2xhc3Nlc1xuICAgICYudGlueSAgeyBAaW5jbHVkZSByZXZlYWwtbW9kYWwtd2lkdGgoMzAlKTsgfVxuICAgICYuc21hbGwgeyBAaW5jbHVkZSByZXZlYWwtbW9kYWwtd2lkdGgoNTAlKTsgfVxuICAgICYubGFyZ2UgeyBAaW5jbHVkZSByZXZlYWwtbW9kYWwtd2lkdGgoOTAlKTsgfVxuXG4gICAgLy8gRnVsbC1zY3JlZW4gbW9kZVxuICAgICYuZnVsbCB7XG4gICAgICBAaW5jbHVkZSByZXZlYWwtbW9kYWwtZnVsbHNjcmVlbjtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCQtemYtemVyby1icmVha3BvaW50IG9ubHkpIHtcbiAgICAgIEBpbmNsdWRlIHJldmVhbC1tb2RhbC1mdWxsc2NyZWVuO1xuICAgIH1cblxuICAgICYud2l0aG91dC1vdmVybGF5IHtcbiAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHN3aXRjaFxuLy8vL1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiBhIHN3aXRjaC5cbi8vLyBAdHlwZSBDb2xvclxuJHN3aXRjaC1iYWNrZ3JvdW5kOiAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGFjdGl2ZSBjb2xvciBvZiBhIHN3aXRjaC5cbi8vLyBAdHlwZSBDb2xvclxuJHN3aXRjaC1iYWNrZ3JvdW5kLWFjdGl2ZTogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBIZWlnaHQgb2YgYSBzd2l0Y2gsIHdpdGggbm8gY2xhc3MgYXBwbGllZC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRzd2l0Y2gtaGVpZ2h0OiAycmVtICFkZWZhdWx0O1xuXG4vLy8gSGVpZ2h0IG9mIGEgc3dpdGNoIHdpdGggLnRpbnkgY2xhc3MuXG4vLy8gQHR5cGUgTnVtYmVyXG4kc3dpdGNoLWhlaWdodC10aW55OiAxLjVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBIZWlnaHQgb2YgYSBzd2l0Y2ggd2l0aCAuc21hbGwgY2xhc3MuXG4vLy8gQHR5cGUgTnVtYmVyXG4kc3dpdGNoLWhlaWdodC1zbWFsbDogMS43NXJlbSAhZGVmYXVsdDtcblxuLy8vIEhlaWdodCBvZiBhIHN3aXRjaCB3aXRoIC5sYXJnZSBjbGFzcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRzd2l0Y2gtaGVpZ2h0LWxhcmdlOiAyLjVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgcmFkaXVzIG9mIHRoZSBzd2l0Y2hcbi8vLyBAdHlwZSBOdW1iZXJcbiRzd2l0Y2gtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuLy8vIGJvcmRlciBhcm91bmQgYSBtb2RhbC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRzd2l0Y2gtbWFyZ2luOiAkZ2xvYmFsLW1hcmdpbiAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3IgZm9yIHRoZSBzd2l0Y2ggY29udGFpbmVyIGFuZCBwYWRkbGUuXG4vLy8gQHR5cGUgQ29sb3JcbiRzd2l0Y2gtcGFkZGxlLWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIFNwYWNpbmcgYmV0d2VlbiBhIHN3aXRjaCBwYWRkbGUgYW5kIHRoZSBlZGdlIG9mIHRoZSBib2R5LlxuLy8vIEB0eXBlIE51bWJlclxuJHN3aXRjaC1wYWRkbGUtb2Zmc2V0OiAwLjI1cmVtICFkZWZhdWx0O1xuXG4vLy8gYm9yZGVyIHJhZGl1cyBvZiB0aGUgc3dpdGNoIHBhZGRsZVxuLy8vIEB0eXBlIE51bWJlclxuJHN3aXRjaC1wYWRkbGUtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuLy8vIHN3aXRjaCB0cmFuc2l0aW9uLlxuLy8vIEB0eXBlIE51bWJlclxuJHN3aXRjaC1wYWRkbGUtdHJhbnNpdGlvbjogYWxsIDAuMjVzIGVhc2Utb3V0ICFkZWZhdWx0O1xuXG4vLyBtYWtlIHRoZW0gdmFyaWFibGVzXG4vLyBhc2sgYWJvdXQgYWNjZXNzaWJpbGl0eSBvbiBsYWJlbFxuLy8gY2hhbmdlIGNsYXNzIG5hbWUgZm9yIHRleHRcblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIHN3aXRjaCBjb250YWluZXIuIEFwcGx5IHRoaXMgdG8gYSBjb250YWluZXIgY2xhc3MuXG5AbWl4aW4gc3dpdGNoLWNvbnRhaW5lciB7XG4gIG1hcmdpbi1ib3R0b206ICRzd2l0Y2gtbWFyZ2luO1xuICBvdXRsaW5lOiAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuXG4gIC8vIFRoZXNlIHByb3BlcnRpZXMgY2FzY2FkZSBkb3duIHRvIHRoZSBzd2l0Y2ggdGV4dFxuICBjb2xvcjogJHdoaXRlO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgZm9udC1zaXplOiByZW0tY2FsYygxNCk7XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSBzd2l0Y2ggaW5wdXQuIEFwcGx5IHRoaXMgdG8gYW4gYDxpbnB1dD5gIHdpdGhpbiBhIHN3aXRjaC5cbkBtaXhpbiBzd2l0Y2gtaW5wdXQge1xuICBvcGFjaXR5OiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgdGhlIGJhY2tncm91bmQgYW5kIHBhZGRsZSBvZiBhIHN3aXRjaC4gQXBwbHkgdGhpcyB0byBhIGA8bGFiZWw+YCB3aXRoaW4gYSBzd2l0Y2guXG5AbWl4aW4gc3dpdGNoLXBhZGRsZSB7XG4gIGJhY2tncm91bmQ6ICRzd2l0Y2gtYmFja2dyb3VuZDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogNHJlbTtcbiAgaGVpZ2h0OiAkc3dpdGNoLWhlaWdodDtcbiAgdHJhbnNpdGlvbjogJHN3aXRjaC1wYWRkbGUtdHJhbnNpdGlvbjtcbiAgYm9yZGVyLXJhZGl1czogJHN3aXRjaC1yYWRpdXM7XG5cbiAgLy8gUmVzZXR0aW5nIHRoZXNlIDxsYWJlbD4gcHJlc2V0cyBzbyB0eXBlIHN0eWxlcyBjYXNjYWRlIGRvd25cbiAgY29sb3I6IGluaGVyaXQ7XG4gIGZvbnQtd2VpZ2h0OiBpbmhlcml0O1xuXG4gIC8vIE5lZWRlZCB0byBvdmVycmlkZSBzcGVjaWZpY2l0eVxuICBpbnB1dCArICYge1xuICAgIG1hcmdpbjogMDtcbiAgfVxuXG4gIC8vIFRoZSBwYWRkbGUgaXRzZWxmXG4gICY6OmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kOiAkc3dpdGNoLXBhZGRsZS1iYWNrZ3JvdW5kO1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBoZWlnaHQ6IDEuNXJlbTtcbiAgICAjeyRnbG9iYWwtbGVmdH06IDAuMjVyZW07XG4gICAgdG9wOiAwLjI1cmVtO1xuICAgIHdpZHRoOiAxLjVyZW07XG4gICAgdHJhbnNpdGlvbjogJHN3aXRjaC1wYWRkbGUtdHJhbnNpdGlvbjtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIGJvcmRlci1yYWRpdXM6ICRzd2l0Y2gtcGFkZGxlLXJhZGl1cztcbiAgfVxuXG4gIC8vIENoYW5nZSB0aGUgdmlzdWFsIHN0eWxlIHdoZW4gdGhlIHN3aXRjaCBpcyBhY3RpdmVcbiAgaW5wdXQ6Y2hlY2tlZCB+ICYge1xuICAgIGJhY2tncm91bmQ6ICRzd2l0Y2gtYmFja2dyb3VuZC1hY3RpdmU7XG5cbiAgICAmOjphZnRlciB7XG4gICAgICAjeyRnbG9iYWwtbGVmdH06IDIuMjVyZW07XG4gICAgfVxuICB9XG5cbiAgaW5wdXQ6Zm9jdXMgfiAmIHtcbiAgICBAaW5jbHVkZSBkaXNhYmxlLW1vdXNlLW91dGxpbmU7XG4gIH1cbn1cblxuLy8vIEFkZHMgYmFzZSBzdHlsZXMgZm9yIGFjdGl2ZS9pbmFjdGl2ZSB0ZXh0IGluc2lkZSBhIHN3aXRjaC4gQXBwbHkgdGhpcyB0byB0ZXh0IGVsZW1lbnRzIGluc2lkZSB0aGUgc3dpdGNoIGA8bGFiZWw+YC5cbkBtaXhpbiBzd2l0Y2gtdGV4dCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciB0aGUgYWN0aXZlIHN0YXRlIHRleHQgd2l0aGluIGEgc3dpdGNoLlxuQG1peGluIHN3aXRjaC10ZXh0LWFjdGl2ZSB7XG4gICN7JGdsb2JhbC1sZWZ0fTogOCU7XG4gIGRpc3BsYXk6IG5vbmU7XG5cbiAgaW5wdXQ6Y2hlY2tlZCArIGxhYmVsID4gJiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciB0aGUgaW5hY3RpdmUgc3RhdGUgdGV4dCB3aXRoaW4gYSBzd2l0Y2guXG5AbWl4aW4gc3dpdGNoLXRleHQtaW5hY3RpdmUge1xuICAjeyRnbG9iYWwtcmlnaHR9OiAxNSU7XG5cbiAgaW5wdXQ6Y2hlY2tlZCArIGxhYmVsID4gJiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4vLy8gQ2hhbmdlcyB0aGUgc2l6ZSBvZiBhIHN3aXRjaCBieSBtb2RpZnlpbmcgdGhlIHNpemUgb2YgdGhlIGJvZHkgYW5kIHBhZGRsZS4gQXBwbHkgdGhpcyB0byBhIHN3aXRjaCBjb250YWluZXIuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRmb250LXNpemUgWzFyZW1dIC0gRm9udCBzaXplIG9mIGxhYmVsIHRleHQgd2l0aGluIHRoZSBzd2l0Y2guXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR3aWR0aCBbNHJlbV0gLSBXaWR0aCBvZiB0aGUgc3dpdGNoIGJvZHkuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRoZWlnaHQgWzJyZW1dIC0gSGVpZ2h0IG9mIHRoZSBzd2l0Y2ggYm9keS5cbi8vLyBAcGFyYW0ge051bWJlcn0gJHBhZGRsZS13aWR0aCBbMS41cmVtXSAtIFdpZHRoIG9mIHRoZSBzd2l0Y2ggcGFkZGxlLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkcGFkZGxlLW9mZnNldCBbMC4yNXJlbV0gLSBTcGFjaW5nIGJldHdlZW4gdGhlIHN3aXRjaCBwYWRkbGUgYW5kIHRoZSBlZGdlIG9mIHRoZSBzd2l0Y2ggYm9keS5cbkBtaXhpbiBzd2l0Y2gtc2l6ZShcbiAgJGZvbnQtc2l6ZTogMXJlbSxcbiAgJHdpZHRoOiA0cmVtLFxuICAkaGVpZ2h0OiAycmVtLFxuICAkcGFkZGxlLXdpZHRoOiAxLjVyZW0sXG4gICRwYWRkbGUtb2Zmc2V0OiAwLjI1cmVtXG4pIHtcbiAgJHBhZGRsZS1oZWlnaHQ6ICRoZWlnaHQgLSAoJHBhZGRsZS1vZmZzZXQgKiAyKTtcbiAgJHBhZGRsZS1sZWZ0LWFjdGl2ZTogJHdpZHRoIC0gJHBhZGRsZS13aWR0aCAtICRwYWRkbGUtb2Zmc2V0O1xuXG4gIC5zd2l0Y2gtcGFkZGxlIHtcbiAgICB3aWR0aDogJHdpZHRoO1xuICAgIGhlaWdodDogJGhlaWdodDtcbiAgICBmb250LXNpemU6ICRmb250LXNpemU7XG4gIH1cblxuICAuc3dpdGNoLXBhZGRsZTo6YWZ0ZXIge1xuICAgIHdpZHRoOiAkcGFkZGxlLXdpZHRoO1xuICAgIGhlaWdodDogJHBhZGRsZS1oZWlnaHQ7XG4gIH1cblxuICBpbnB1dDpjaGVja2VkIH4gLnN3aXRjaC1wYWRkbGU6OmFmdGVyIHtcbiAgICAjeyRnbG9iYWwtbGVmdH06ICRwYWRkbGUtbGVmdC1hY3RpdmU7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tc3dpdGNoIHtcbiAgLy8gQ29udGFpbmVyIGNsYXNzXG4gIC5zd2l0Y2gge1xuICAgIEBpbmNsdWRlIHN3aXRjaC1jb250YWluZXI7XG4gIH1cblxuICAvLyA8aW5wdXQ+IGVsZW1lbnRcbiAgLnN3aXRjaC1pbnB1dCB7XG4gICAgQGluY2x1ZGUgc3dpdGNoLWlucHV0O1xuICB9XG5cbiAgLy8gPGxhYmVsPiBlbGVtZW50XG4gIC5zd2l0Y2gtcGFkZGxlIHtcbiAgICBAaW5jbHVkZSBzd2l0Y2gtcGFkZGxlO1xuICB9XG5cbiAgLy8gQmFzZSBsYWJlbCB0ZXh0IHN0eWxlc1xuICAlc3dpdGNoLXRleHQge1xuICAgIEBpbmNsdWRlIHN3aXRjaC10ZXh0O1xuICB9XG5cbiAgLy8gQWN0aXZlIGxhYmVsIHRleHQgc3R5bGVzXG4gIC5zd2l0Y2gtYWN0aXZlIHtcbiAgICBAZXh0ZW5kICVzd2l0Y2gtdGV4dDtcbiAgICBAaW5jbHVkZSBzd2l0Y2gtdGV4dC1hY3RpdmU7XG4gIH1cblxuICAvLyBJbmFjdGl2ZSBsYWJlbCB0ZXh0IHN0eWxlc1xuICAuc3dpdGNoLWluYWN0aXZlIHtcbiAgICBAZXh0ZW5kICVzd2l0Y2gtdGV4dDtcbiAgICBAaW5jbHVkZSBzd2l0Y2gtdGV4dC1pbmFjdGl2ZTtcbiAgfVxuXG4gIC8vIFN3aXRjaCBzaXplc1xuICAuc3dpdGNoLnRpbnkge1xuICAgIEBpbmNsdWRlIHN3aXRjaC1zaXplKHJlbS1jYWxjKDEwKSwgM3JlbSwgJHN3aXRjaC1oZWlnaHQtdGlueSwgMXJlbSwgJHN3aXRjaC1wYWRkbGUtb2Zmc2V0KTtcbiAgfVxuXG4gIC5zd2l0Y2guc21hbGwge1xuICAgIEBpbmNsdWRlIHN3aXRjaC1zaXplKHJlbS1jYWxjKDEyKSwgMy41cmVtLCAkc3dpdGNoLWhlaWdodC1zbWFsbCwgMS4yNXJlbSwgJHN3aXRjaC1wYWRkbGUtb2Zmc2V0KTtcbiAgfVxuXG4gIC5zd2l0Y2gubGFyZ2Uge1xuICAgIEBpbmNsdWRlIHN3aXRjaC1zaXplKHJlbS1jYWxjKDE2KSwgNXJlbSwgJHN3aXRjaC1oZWlnaHQtbGFyZ2UsIDJyZW0sICRzd2l0Y2gtcGFkZGxlLW9mZnNldCk7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLyBzY3NzLWxpbnQ6ZGlzYWJsZSBNZXJnZWFibGVTZWxlY3RvciwgUXVhbGlmeWluZ0VsZW1lbnRcblxuLy8vL1xuLy8vIEBncm91cCB0YWJsZVxuLy8vL1xuXG4vLy8gRGVmYXVsdCBjb2xvciBmb3IgdGFibGUgYmFja2dyb3VuZC5cbi8vLyBAdHlwZSBDb2xvclxuJHRhYmxlLWJhY2tncm91bmQ6ICR3aGl0ZSAgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHNjYWxlIGZvciBkYXJrZW5pbmcgdGhlIHN0cmlwZWQgdGFibGUgcm93cyBhbmQgdGhlIHRhYmxlIGJvcmRlci5cbi8vLyBAdHlwZSBOdW1iZXJcbiR0YWJsZS1jb2xvci1zY2FsZTogNSUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHN0eWxlIGZvciB0YWJsZSBib3JkZXIuXG4vLy8gQHR5cGUgTGlzdFxuJHRhYmxlLWJvcmRlcjogMXB4IHNvbGlkIHNtYXJ0LXNjYWxlKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtY29sb3Itc2NhbGUpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwYWRkaW5nIGZvciB0YWJsZS5cbi8vLyBAdHlwZSBOdW1iZXJcbiR0YWJsZS1wYWRkaW5nOiByZW0tY2FsYyg4IDEwIDEwKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgc2NhbGUgZm9yIGRhcmtlbmluZyB0aGUgdGFibGUgcm93cyBvbiBob3Zlci5cbi8vLyBAdHlwZSBOdW1iZXJcbiR0YWJsZS1ob3Zlci1zY2FsZTogMiUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGNvbG9yIG9mIHN0YW5kYXJkIHJvd3Mgb24gaG92ZXIuXG4vLy8gQHR5cGUgTGlzdFxuJHRhYmxlLXJvdy1ob3ZlcjogZGFya2VuKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtaG92ZXItc2NhbGUpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBjb2xvciBvZiBzdHJpcGVkIHJvd3Mgb24gaG92ZXIuXG4vLy8gQHR5cGUgTGlzdFxuJHRhYmxlLXJvdy1zdHJpcGUtaG92ZXI6IGRhcmtlbigkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWNvbG9yLXNjYWxlICsgJHRhYmxlLWhvdmVyLXNjYWxlKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYmFja2dyb3VuZCBjb2xvciBmb3Igc3RyaXBlZCByb3dzLlxuLy8vIEB0eXBlIENvbG9yXG4kdGFibGUtc3RyaXBlZC1iYWNrZ3JvdW5kOiBzbWFydC1zY2FsZSgkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWNvbG9yLXNjYWxlKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgdmFsdWUgZm9yIHNob3dpbmcgdGhlIHN0cmlwZSBvbiByb3dzIG9mIHRoZSB0YWJsZXMsIGV4Y2x1ZGluZyB0aGUgaGVhZGVyIGFuZCBmb290ZXIuIElmIGV2ZW4sIHRoZSBldmVuIHJvd3Mgd2lsbCBoYXZlIGEgYmFja2dyb3VuZCBjb2xvci4gSWYgb2RkLCB0aGUgb2RkIHJvd3Mgd2lsbCBoYXZlIGEgYmFja2dyb3VuZCBjb2xvci4gSWYgZW1wdHksIG9yIGFueSBvdGhlciB2YWx1ZSwgdGhlIHRhYmxlIHJvd3Mgd2lsbCBoYXZlIG5vIHN0cmlwaW5nLlxuLy8vIEB0eXBlIEtleXdvcmRcbiR0YWJsZS1zdHJpcGU6IGV2ZW4gIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGNvbG9yIGZvciBoZWFkZXIgYmFja2dyb3VuZC5cbi8vLyBAdHlwZSBDb2xvclxuJHRhYmxlLWhlYWQtYmFja2dyb3VuZDogc21hcnQtc2NhbGUoJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1jb2xvci1zY2FsZSAvIDIpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBjb2xvciBmb3IgZm9vdGVyIGJhY2tncm91bmQuXG4vLy8gQHR5cGUgQ29sb3JcbiR0YWJsZS1mb290LWJhY2tncm91bmQ6IHNtYXJ0LXNjYWxlKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtY29sb3Itc2NhbGUpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IGNvbG9yIGZvciBoZWFkZXIuXG4vLy8gQHR5cGUgQ29sb3JcbiR0YWJsZS1oZWFkLWZvbnQtY29sb3I6ICRib2R5LWZvbnQtY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHZhbHVlIGZvciBzaG93aW5nIHRoZSBoZWFkZXIgd2hlbiB1c2luZyBzdGFja2VkIHRhYmxlcy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kc2hvdy1oZWFkZXItZm9yLXN0YWNrZWQ6IGZhbHNlICFkZWZhdWx0O1xuXG5AbWl4aW4gLXpmLXRhYmxlLWNoaWxkcmVuLXN0eWxlcygkc3RyaXBlOiAkdGFibGUtc3RyaXBlKSB7XG4gIHRoZWFkLFxuICB0Ym9keSxcbiAgdGZvb3Qge1xuICAgIGJvcmRlcjogJHRhYmxlLWJvcmRlcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtYmFja2dyb3VuZDtcbiAgfVxuXG4gIC8vIENhcHRpb25cbiAgY2FwdGlvbiB7XG4gICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQ7XG4gICAgcGFkZGluZzogJHRhYmxlLXBhZGRpbmc7XG4gIH1cblxuICAvLyBUYWJsZSBoZWFkIGFuZCBmb290XG4gIHRoZWFkLFxuICB0Zm9vdCB7XG4gICAgYmFja2dyb3VuZDogJHRhYmxlLWhlYWQtYmFja2dyb3VuZDtcbiAgICBjb2xvcjogJHRhYmxlLWhlYWQtZm9udC1jb2xvcjtcblxuICAgIC8vIFJvd3Mgd2l0aGluIGhlYWQgYW5kIGZvb3RcbiAgICB0ciB7XG4gICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICB9XG5cbiAgICAvLyBDZWxscyB3aXRoaW4gaGVhZCBhbmQgZm9vdFxuICAgIHRoLFxuICAgIHRkIHtcbiAgICAgIHBhZGRpbmc6ICR0YWJsZS1wYWRkaW5nO1xuICAgICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQ7XG4gICAgICB0ZXh0LWFsaWduOiAjeyRnbG9iYWwtbGVmdH07XG4gICAgfVxuICB9XG5cbiAgLy8gVGFibGUgcm93c1xuICB0Ym9keSB7XG4gICAgdHIge1xuICAgICAgLy8gSWYgc3RyaXBlIGlzIHNldCB0byBldmVuLCBkYXJrZW4gdGhlIGV2ZW4gcm93cy5cbiAgICAgIEBpZiAkc3RyaXBlID09IGV2ZW4ge1xuICAgICAgICAmOm50aC1jaGlsZChldmVuKSB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLXN0cmlwZWQtYmFja2dyb3VuZDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAvLyBJZiBzdHJpcGUgaXMgc2V0IHRvIG9kZCwgZGFya2VuIHRoZSBvZGQgcm93cy5cbiAgICAgIEBlbHNlIGlmICRzdHJpcGUgPT0gb2RkIHtcbiAgICAgICAgJjpudGgtY2hpbGQob2RkKSB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLXN0cmlwZWQtYmFja2dyb3VuZDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIHRoLFxuICAgIHRkIHtcbiAgICAgIHBhZGRpbmc6ICR0YWJsZS1wYWRkaW5nO1xuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyB0aGUgZ2VuZXJhbCBzdHlsZXMgZm9yIHRhYmxlcy5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzdHJpcGUgWyR0YWJsZS1zdHJpcGVdIC0gVXNlcyBrZXl3b3JkcyBldmVuLCBvZGQsIG9yIG5vbmUgdG8gZGFya2VuIHJvd3Mgb2YgdGhlIHRhYmxlLiBUaGUgZGVmYXVsdCB2YWx1ZSBpcyBldmVuLlxuQG1peGluIHRhYmxlKFxuICAkc3RyaXBlOiAkdGFibGUtc3RyaXBlLFxuICAkbmVzdDogZmFsc2Vcbikge1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW47XG4gIGJvcmRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuXG4gIEBpZiAkbmVzdCB7XG4gICAgQGluY2x1ZGUgLXpmLXRhYmxlLWNoaWxkcmVuLXN0eWxlcygkc3RyaXBlKTtcbiAgfVxuICBAZWxzZSB7XG4gICAgQGF0LXJvb3Qge1xuICAgICAgQGluY2x1ZGUgLXpmLXRhYmxlLWNoaWxkcmVuLXN0eWxlcygkc3RyaXBlKTtcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgdGhlIGFiaWxpdHkgdG8gaG9yaXpvbnRhbGx5IHNjcm9sbCB0aGUgdGFibGUgd2hlbiB0aGUgY29udGVudCBvdmVyZmxvd3MgaG9yaXpvbnRhbGx5LlxuQG1peGluIHRhYmxlLXNjcm9sbCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgb3ZlcmZsb3cteDogYXV0bztcbn1cblxuLy8vIFNsaWdodGx5IGRhcmtlbnMgdGhlIHRhYmxlIHJvd3Mgb24gaG92ZXIuXG5AbWl4aW4gdGFibGUtaG92ZXIge1xuICB0ciB7XG4gICAgLy9EYXJrZW5zIHRoZSBub24tc3RyaXBlZCB0YWJsZSByb3dzIG9uIGhvdmVyLlxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLXJvdy1ob3ZlcjtcbiAgICB9XG5cbiAgICAvL0RhcmtlbnMgdGhlIGV2ZW4gc3RyaXBlZCB0YWJsZSByb3dzLlxuICAgIEBpZigkdGFibGUtc3RyaXBlID09IGV2ZW4pIHtcbiAgICAgICY6bnRoLW9mLXR5cGUoZXZlbik6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtcm93LXN0cmlwZS1ob3ZlcjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvL0RhcmtlbnMgdGhlIG9kZCBzdHJpcGVkIHRhYmxlIHJvd3MuXG4gICAgQGVsc2VpZigkdGFibGUtc3RyaXBlID09IG9kZCkge1xuICAgICAgJjpudGgtb2YtdHlwZShvZGQpOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLXJvdy1zdHJpcGUtaG92ZXI7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSBzdGFja2VkIHRhYmxlLiBVc2VmdWwgZm9yIHNtYWxsLXNjcmVlbiBsYXlvdXRzLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGhlYWRlciBbJHNob3ctaGVhZGVyLWZvci1zdGFja2VkXSAtIFNob3cgdGhlIGZpcnN0IHRoIG9mIGhlYWRlciB3aGVuIHN0YWNrZWQuXG5AbWl4aW4gdGFibGUtc3RhY2soJGhlYWRlcjogJHNob3ctaGVhZGVyLWZvci1zdGFja2VkKSB7XG4gIEBpZiAkaGVhZGVyIHtcbiAgICB0aGVhZCB7XG4gICAgICB0aDpmaXJzdC1jaGlsZCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuXG4gICAgICB0aCB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICB0aGVhZCB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxuXG4gIHRmb290IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgdHIsXG4gIHRoLFxuICB0ZCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICB0ZCB7XG4gICAgYm9yZGVyLXRvcDogMDtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi10YWJsZSgkbmVzdDogZmFsc2UpIHtcbiAgdGFibGUge1xuICAgIEBpbmNsdWRlIHRhYmxlKCRuZXN0OiAkbmVzdCk7XG4gIH1cblxuICB0YWJsZS5zdGFjayB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuICAgICAgQGluY2x1ZGUgdGFibGUtc3RhY2s7XG4gICAgfVxuICB9XG5cbiAgdGFibGUuc2Nyb2xsIHtcbiAgICBAaW5jbHVkZSB0YWJsZS1zY3JvbGw7XG4gIH1cblxuICB0YWJsZS5ob3ZlciB7XG4gICAgQGluY2x1ZGUgdGFibGUtaG92ZXI7XG4gIH1cblxuICAudGFibGUtc2Nyb2xsIHtcbiAgICBvdmVyZmxvdy14OiBhdXRvO1xuXG4gICAgdGFibGUge1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmdW5jdGlvbnNcbi8vLy9cblxuLy8vIENoZWNrcyB0aGUgbGlnaHRuZXNzIG9mIGAkY29sb3JgLCBhbmQgaWYgaXQgcGFzc2VzIHRoZSBgJHRocmVzaG9sZGAgb2YgbGlnaHRuZXNzLCBpdCByZXR1cm5zIHRoZSBgJHllc2AgY29sb3IuIE90aGVyd2lzZSwgaXQgcmV0dXJucyB0aGUgYCRub2AgY29sb3IuIFVzZSB0aGlzIGZ1bmN0aW9uIHRvIGR5bmFtaWNhbGx5IG91dHB1dCBhIGZvcmVncm91bmQgY29sb3IgYmFzZWQgb24gYSBnaXZlbiBiYWNrZ3JvdW5kIGNvbG9yLlxuLy8vXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIC0gQ29sb3IgdG8gY2hlY2sgdGhlIGxpZ2h0bmVzcyBvZi5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkeWVzIFskYmxhY2tdIC0gQ29sb3IgdG8gcmV0dXJuIGlmIGAkY29sb3JgIGlzIGxpZ2h0LlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRubyBbJHdoaXRlXSAtIENvbG9yIHRvIHJldHVybiBpZiBgJGNvbG9yYCBpcyBkYXJrLlxuLy8vIEBwYXJhbSB7UGVyY2VudGFnZX0gJHRocmVzaG9sZCBbNjAlXSAtIFRocmVzaG9sZCBvZiBsaWdodG5lc3MgdG8gY2hlY2sgYWdhaW5zdC5cbi8vL1xuLy8vIEByZXR1cm5zIHtDb2xvcn0gVGhlICR5ZXMgY29sb3Igb3IgJG5vIGNvbG9yLlxuQGZ1bmN0aW9uIGZvcmVncm91bmQoJGNvbG9yLCAkeWVzOiAkYmxhY2ssICRubzogJHdoaXRlLCAkdGhyZXNob2xkOiA2MCUpIHtcbiAgQGlmICRjb2xvciA9PSB0cmFuc3BhcmVudCB7XG4gICAgJGNvbG9yOiAkYm9keS1iYWNrZ3JvdW5kO1xuICB9XG4gIEBpZiAobGlnaHRuZXNzKCRjb2xvcikgPiAkdGhyZXNob2xkKSB7XG4gICAgQHJldHVybiAkeWVzO1xuICB9XG4gIEBlbHNlIHtcbiAgICBAcmV0dXJuICRubztcbiAgfVxufVxuXG4vLy8gU2NhbGVzIGEgY29sb3IgdG8gYmUgbGlnaHRlciBpZiBpdCdzIGxpZ2h0LCBvciBkYXJrZXIgaWYgaXQncyBkYXJrLiBVc2UgdGhpcyBmdW5jdGlvbiB0byB0aW50IGEgY29sb3IgYXBwcm9wcmlhdGUgdG8gaXRzIGxpZ2h0bmVzcy5cbi8vL1xuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciAtIENvbG9yIHRvIHNjYWxlLlxuLy8vIEBwYXJhbSB7UGVyY2VudGFnZX0gJHNjYWxlIFs1JV0gLSBBbW91bnQgdG8gc2NhbGUgdXAgb3IgZG93bi5cbi8vLyBAcGFyYW0ge1BlcmNlbnRhZ2V9ICR0aHJlc2hvbGQgWzQwJV0gLSBUaHJlc2hvbGQgb2YgbGlnaHRuZXNzIHRvIGNoZWNrIGFnYWluc3QuXG4vLy9cbi8vLyBAcmV0dXJucyB7Q29sb3J9IEEgc2NhbGVkIGNvbG9yLlxuQGZ1bmN0aW9uIHNtYXJ0LXNjYWxlKCRjb2xvciwgJHNjYWxlOiA1JSwgJHRocmVzaG9sZDogNDAlKSB7XG4gIEBpZiBsaWdodG5lc3MoJGNvbG9yKSA+ICR0aHJlc2hvbGQge1xuICAgICRzY2FsZTogLSRzY2FsZTtcbiAgfVxuICBAcmV0dXJuIHNjYWxlLWNvbG9yKCRjb2xvciwgJGxpZ2h0bmVzczogJHNjYWxlKTtcbn1cblxuLy8vIFRyYW5zZmVycyB0aGUgY29sb3JzIGluIHRoZSBgJGZvdW5kYXRpb24tcGFsZXR0ZWAgdmFyaWFibGUgaW50byB0aGUgbGVnYWN5IGNvbG9yIHZhcmlhYmxlcywgc3VjaCBhcyBgJHByaW1hcnktY29sb3JgIGFuZCBgJHNlY29uZGFyeS1jb2xvcmAuIENhbGwgdGhpcyBtaXhpbiBiZWxvdyB0aGUgR2xvYmFsIHNlY3Rpb24gb2YgeW91ciBzZXR0aW5ncyBmaWxlIHRvIHByb3Blcmx5IG1pZ3JhdGUgeW91ciBjb2RlYmFzZS5cbkBtaXhpbiBhZGQtZm91bmRhdGlvbi1jb2xvcnMoKSB7XG4gIEBpZiBtYXAtaGFzLWtleSgkZm91bmRhdGlvbi1wYWxldHRlLCBwcmltYXJ5KSB7XG4gICAgJHByaW1hcnktY29sb3I6IG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgcHJpbWFyeSkgIWdsb2JhbDtcbiAgfVxuICBAaWYgbWFwLWhhcy1rZXkoJGZvdW5kYXRpb24tcGFsZXR0ZSwgc2Vjb25kYXJ5KSB7XG4gICAgJHNlY29uZGFyeS1jb2xvcjogbWFwLWdldCgkZm91bmRhdGlvbi1wYWxldHRlLCBzZWNvbmRhcnkpICFnbG9iYWw7XG4gIH1cbiAgQGlmIG1hcC1oYXMta2V5KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHN1Y2Nlc3MpIHtcbiAgICAkc3VjY2Vzcy1jb2xvcjogbWFwLWdldCgkZm91bmRhdGlvbi1wYWxldHRlLCBzdWNjZXNzKSAhZ2xvYmFsO1xuICB9XG4gIEBpZiBtYXAtaGFzLWtleSgkZm91bmRhdGlvbi1wYWxldHRlLCB3YXJuaW5nKSB7XG4gICAgJHdhcm5pbmctY29sb3I6IG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgd2FybmluZykgIWdsb2JhbDtcbiAgfVxuICBAaWYgbWFwLWhhcy1rZXkoJGZvdW5kYXRpb24tcGFsZXR0ZSwgYWxlcnQpIHtcbiAgICAkYWxlcnQtY29sb3I6IG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgYWxlcnQpICFnbG9iYWw7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHRhYnNcbi8vLy9cblxuLy8vIERlZmF1bHQgbWFyZ2luIG9mIHRoZSB0YWIgYmFyLlxuLy8vIEB0eXBlIE51bWJlclxuJHRhYi1tYXJnaW46IDAgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJhY2tncm91bmQgY29sb3Igb2YgYSB0YWIgYmFyLlxuLy8vIEB0eXBlIENvbG9yXG4kdGFiLWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIGFjdGl2ZSBiYWNrZ3JvdW5kIGNvbG9yIG9mIGEgdGFiIGJhci5cbi8vLyBAdHlwZSBDb2xvclxuJHRhYi1iYWNrZ3JvdW5kLWFjdGl2ZTogJGxpZ2h0LWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHNpemUgb2YgdGFiIGl0ZW1zLlxuLy8vIEB0eXBlIE51bWJlclxuJHRhYi1pdGVtLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTIpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIG9uIGhvdmVyIGZvciBpdGVtcyBpbiBhIE1lbnUuXG4kdGFiLWl0ZW0tYmFja2dyb3VuZC1ob3ZlcjogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwYWRkaW5nIG9mIGEgdGFiIGl0ZW0uXG4vLy8gQHR5cGUgTnVtYmVyXG4kdGFiLWl0ZW0tcGFkZGluZzogMS4yNXJlbSAxLjVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBNYXhpbXVtIG51bWJlciBvZiBgZXhwYW5kLW5gIGNsYXNzZXMgdG8gaW5jbHVkZSBpbiB0aGUgQ1NTLlxuLy8vIEB0eXBlIE51bWJlclxuJHRhYi1leHBhbmQtbWF4OiA2ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIG9mIHRhYiBjb250ZW50LlxuLy8vIEB0eXBlIENvbG9yXG4kdGFiLWNvbnRlbnQtYmFja2dyb3VuZDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBib3JkZXIgY29sb3Igb2YgdGFiIGNvbnRlbnQuXG4vLy8gQHR5cGUgQ29sb3JcbiR0YWItY29udGVudC1ib3JkZXI6ICRsaWdodC1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCB0ZXh0IGNvbG9yIG9mIHRhYiBjb250ZW50LlxuLy8vIEB0eXBlIENvbG9yXG4kdGFiLWNvbnRlbnQtY29sb3I6IGZvcmVncm91bmQoJHRhYi1iYWNrZ3JvdW5kLCAkcHJpbWFyeS1jb2xvcikgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBhZGRpbmcgZm9yIHRhYiBjb250ZW50LlxuLy8vIEB0eXBlIE51bWJlciB8IExpc3RcbiR0YWItY29udGVudC1wYWRkaW5nOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgdGFiIGNvbnRhaW5lci4gQXBwbHkgdGhpcyB0byBhIGA8dWw+YC5cbkBtaXhpbiB0YWJzLWNvbnRhaW5lciB7XG4gIEBpbmNsdWRlIGNsZWFyZml4O1xuICBtYXJnaW46ICR0YWItbWFyZ2luO1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gIGJhY2tncm91bmQ6ICR0YWItYmFja2dyb3VuZDtcbiAgYm9yZGVyOiAxcHggc29saWQgJHRhYi1jb250ZW50LWJvcmRlcjtcbn1cblxuLy8vIEF1Z21lbnRzIGEgdGFiIGNvbnRhaW5lciB0byBoYXZlIHZlcnRpY2FsIHRhYnMuIFVzZSB0aGlzIGluIGNvbmp1bmN0aW9uIHdpdGggYHRhYnMtY29udGFpbmVyKClgLlxuQG1peGluIHRhYnMtY29udGFpbmVyLXZlcnRpY2FsIHtcbiAgPiBsaSB7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciB0aGUgbGlua3Mgd2l0aGluIGEgdGFiIGNvbnRhaW5lci4gQXBwbHkgdGhpcyB0byB0aGUgYDxsaT5gIGVsZW1lbnRzIGluc2lkZSBhIHRhYiBjb250YWluZXIuXG5AbWl4aW4gdGFicy10aXRsZSB7XG4gIGZsb2F0OiAjeyRnbG9iYWwtbGVmdH07XG5cbiAgPiBhIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiAkdGFiLWl0ZW0tcGFkZGluZztcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBmb250LXNpemU6ICR0YWItaXRlbS1mb250LXNpemU7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQ6ICR0YWItaXRlbS1iYWNrZ3JvdW5kLWhvdmVyO1xuICAgIH1cblxuICAgICY6Zm9jdXMsXG4gICAgJlthcmlhLXNlbGVjdGVkPSd0cnVlJ10ge1xuICAgICAgYmFja2dyb3VuZDogJHRhYi1iYWNrZ3JvdW5kLWFjdGl2ZTtcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciB0aGUgd3JhcHBlciB0aGF0IHN1cnJvdW5kcyBhIHRhYiBncm91cCdzIGNvbnRlbnQgcGFuZXMuXG5AbWl4aW4gdGFicy1jb250ZW50IHtcbiAgYmFja2dyb3VuZDogJHRhYi1jb250ZW50LWJhY2tncm91bmQ7XG4gIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2U7XG4gIGJvcmRlcjogMXB4IHNvbGlkICR0YWItY29udGVudC1ib3JkZXI7XG4gIGJvcmRlci10b3A6IDA7XG59XG5cbi8vLyBBdWdtZW50cyBhIHRhYiBjb250ZW50IGNvbnRhaW5lciB0byBoYXZlIGEgdmVydGljYWwgc3R5bGUsIGJ5IHNoaWZ0aW5nIHRoZSBib3JkZXIgYXJvdW5kLiBVc2UgdGhpcyBpbiBjb25qdW5jdGlvbiB3aXRoIGB0YWJzLWNvbnRlbnQoKWAuXG5AbWl4aW4gdGFicy1jb250ZW50LXZlcnRpY2FsIHtcbiAgYm9yZGVyOiAxcHggc29saWQgJHRhYi1jb250ZW50LWJvcmRlcjtcbiAgYm9yZGVyLSN7JGdsb2JhbC1sZWZ0fTogMDtcbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhbiBpbmRpdmlkdWFsIHRhYiBjb250ZW50IHBhbmVsIHdpdGhpbiB0aGUgdGFiIGNvbnRlbnQgY29udGFpbmVyLlxuQG1peGluIHRhYnMtcGFuZWwge1xuICBkaXNwbGF5OiBub25lO1xuICBwYWRkaW5nOiAkdGFiLWNvbnRlbnQtcGFkZGluZztcblxuICAmLmlzLWFjdGl2ZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tdGFicyB7XG4gIC50YWJzIHtcbiAgICBAaW5jbHVkZSB0YWJzLWNvbnRhaW5lcjtcbiAgfVxuXG4gIC8vIFZlcnRpY2FsXG4gIC50YWJzLnZlcnRpY2FsIHtcbiAgICBAaW5jbHVkZSB0YWJzLWNvbnRhaW5lci12ZXJ0aWNhbDtcbiAgfVxuXG4gIC8vIFNpbXBsZVxuICAudGFicy5zaW1wbGUge1xuICAgID4gbGkgPiBhIHtcbiAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBQcmltYXJ5IGNvbG9yXG4gIC50YWJzLnByaW1hcnkge1xuICAgIGJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xuXG4gICAgPiBsaSA+IGEge1xuICAgICAgY29sb3I6IGZvcmVncm91bmQoJHByaW1hcnktY29sb3IpO1xuXG4gICAgICAmOmhvdmVyLFxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGJhY2tncm91bmQ6IHNtYXJ0LXNjYWxlKCRwcmltYXJ5LWNvbG9yKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAudGFicy10aXRsZSB7XG4gICAgQGluY2x1ZGUgdGFicy10aXRsZTtcbiAgfVxuXG4gIC50YWJzLWNvbnRlbnQge1xuICAgIEBpbmNsdWRlIHRhYnMtY29udGVudDtcbiAgfVxuXG4gIC50YWJzLWNvbnRlbnQudmVydGljYWwge1xuICAgIEBpbmNsdWRlIHRhYnMtY29udGVudC12ZXJ0aWNhbDtcbiAgfVxuXG4gIC50YWJzLXBhbmVsIHtcbiAgICBAaW5jbHVkZSB0YWJzLXBhbmVsO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCB0aHVtYm5haWxcbi8vLy9cblxuLy8vIEJvcmRlciBhcm91bmQgdGh1bWJuYWlsIGltYWdlcy5cbi8vLyBAdHlwZSBCb3JkZXJcbiR0aHVtYm5haWwtYm9yZGVyOiBzb2xpZCA0cHggJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gQm90dG9tIG1hcmdpbiBmb3IgdGh1bWJuYWlsIGltYWdlcy5cbi8vLyBAdHlwZSBMZW5ndGhcbiR0aHVtYm5haWwtbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW4gIWRlZmF1bHQ7XG5cbi8vLyBCb3ggc2hhZG93IHVuZGVyIHRodW1ibmFpbCBpbWFnZXMuXG4vLy8gQHR5cGUgU2hhZG93XG4kdGh1bWJuYWlsLXNoYWRvdzogMCAwIDAgMXB4IHJnYmEoJGJsYWNrLCAwLjIpICFkZWZhdWx0O1xuXG4vLy8gQm94IHNoYWRvdyB1bmRlciB0aHVtYm5haWwgaW1hZ2VzLlxuLy8vIEB0eXBlIFNoYWRvd1xuJHRodW1ibmFpbC1zaGFkb3ctaG92ZXI6IDAgMCA2cHggMXB4IHJnYmEoJHByaW1hcnktY29sb3IsIDAuNSkgIWRlZmF1bHQ7XG5cbi8vLyBUcmFuc2l0aW9uIHByb3BydGllcyBmb3IgdGh1bWJuYWlsIGltYWdlcy5cbi8vLyBAdHlwZSBUcmFuc2l0aW9uXG4kdGh1bWJuYWlsLXRyYW5zaXRpb246IGJveC1zaGFkb3cgMjAwbXMgZWFzZS1vdXQgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHJhZGl1cyBmb3IgdGh1bWJuYWlsIGltYWdlcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiR0aHVtYm5haWwtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuLy8vIEFkZHMgdGh1bWJuYWlsIHN0eWxlcyB0byBhbiBlbGVtZW50LlxuQG1peGluIHRodW1ibmFpbCB7XG4gIGJvcmRlcjogJHRodW1ibmFpbC1ib3JkZXI7XG4gIGJveC1zaGFkb3c6ICR0aHVtYm5haWwtc2hhZG93O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGxpbmUtaGVpZ2h0OiAwO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIHRyYW5zaXRpb246ICR0aHVtYm5haWwtdHJhbnNpdGlvbjtcbiAgYm9yZGVyLXJhZGl1czogJHRodW1ibmFpbC1yYWRpdXM7XG4gIG1hcmdpbi1ib3R0b206ICR0aHVtYm5haWwtbWFyZ2luLWJvdHRvbTtcblxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICBib3gtc2hhZG93OiAkdGh1bWJuYWlsLXNoYWRvdy1ob3ZlcjtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi10aHVtYm5haWwge1xuICAudGh1bWJuYWlsIHtcbiAgICBAaW5jbHVkZSB0aHVtYm5haWw7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHRpdGxlLWJhclxuLy8vL1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiBhIHRpdGxlIGJhci5cbi8vLyBAdHlwZSBDb2xvclxuJHRpdGxlYmFyLWJhY2tncm91bmQ6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIENvbG9yIG9mIHRleHQgaW5zaWRlIGEgdGl0bGUgYmFyLlxuLy8vIEB0eXBlIENvbG9yXG4kdGl0bGViYXItY29sb3I6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIFBhZGRpbmcgaW5zaWRlIGEgdGl0bGUgYmFyLlxuLy8vIEB0eXBlIExlbmd0aFxuJHRpdGxlYmFyLXBhZGRpbmc6IDAuNXJlbSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgd2VpZ2h0IG9mIHRleHQgaW5zaWRlIGEgdGl0bGUgYmFyLlxuLy8vIEB0eXBlIFdlaWdodFxuJHRpdGxlYmFyLXRleHQtZm9udC13ZWlnaHQ6IGJvbGQgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciBvZiBtZW51IGljb25zIGluc2lkZSBhIHRpdGxlIGJhci5cbi8vLyBAdHlwZSBDb2xvclxuJHRpdGxlYmFyLWljb24tY29sb3I6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIG9mIG1lbnUgaWNvbnMgaW5zaWRlIGEgdGl0bGUgYmFyIG9uIGhvdmVyLlxuLy8vIEB0eXBlIENvbG9yXG4kdGl0bGViYXItaWNvbi1jb2xvci1ob3ZlcjogJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gU3BhY2luZyBiZXR3ZWVuIHRoZSBtZW51IGljb24gYW5kIHRleHQgaW5zaWRlIGEgdGl0bGUgYmFyLlxuLy8vIEB0eXBlIExlbmd0aFxuJHRpdGxlYmFyLWljb24tc3BhY2luZzogMC4yNXJlbSAhZGVmYXVsdDtcblxuQG1peGluIGZvdW5kYXRpb24tdGl0bGUtYmFyIHtcbiAgLnRpdGxlLWJhciB7XG4gICAgYmFja2dyb3VuZDogJHRpdGxlYmFyLWJhY2tncm91bmQ7XG4gICAgY29sb3I6ICR0aXRsZWJhci1jb2xvcjtcbiAgICBwYWRkaW5nOiAkdGl0bGViYXItcGFkZGluZztcblxuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuICAgIH1cblxuICAgIC5tZW51LWljb24ge1xuICAgICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogJHRpdGxlYmFyLWljb24tc3BhY2luZztcbiAgICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAkdGl0bGViYXItcGFkZGluZztcbiAgICB9XG4gIH1cblxuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAvLyBzY3NzLWxpbnQ6ZGlzYWJsZSBaZXJvVW5pdFxuICAgIC50aXRsZS1iYXItbGVmdCxcbiAgICAudGl0bGUtYmFyLXJpZ2h0IHtcbiAgICAgIGZsZXg6IDEgMSAwcHg7XG4gICAgfVxuXG4gICAgLnRpdGxlLWJhci1yaWdodCB7XG4gICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIC50aXRsZS1iYXItbGVmdCB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICB9XG5cbiAgICAudGl0bGUtYmFyLXJpZ2h0IHtcbiAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgIH1cbiAgfVxuXG4gIC50aXRsZS1iYXItdGl0bGUge1xuICAgIGZvbnQtd2VpZ2h0OiAkdGl0bGViYXItdGV4dC1mb250LXdlaWdodDtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgfVxuXG4gIC5tZW51LWljb24uZGFyayB7XG4gICAgQGluY2x1ZGUgaGFtYnVyZ2VyO1xuICB9XG59XG4iLCJAbWl4aW4gZm91bmRhdGlvbi1tZW51LWljb24ge1xuICAubWVudS1pY29uIHtcbiAgICBAaW5jbHVkZSBoYW1idXJnZXIoJGNvbG9yOiAkdGl0bGViYXItaWNvbi1jb2xvciwgJGNvbG9yLWhvdmVyOiAkdGl0bGViYXItaWNvbi1jb2xvci1ob3Zlcik7XG4gIH1cblxuICAubWVudS1pY29uLmRhcmsge1xuICAgIEBpbmNsdWRlIGhhbWJ1cmdlcjtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgdG9vbHRpcFxuLy8vL1xuXG4vLy8gRGVmYXVsdCBmb250IHdlaWdodCBvZiB0aGUgZGVmaW5lZCB0ZXJtLlxuLy8vIEB0eXBlIEtleXdvcmQgfCBOdW1iZXJcbiRoYXMtdGlwLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBib3JkZXIgYm90dG9tIG9mIHRoZSBkZWZpbmVkIHRlcm0uXG4vLy8gQHR5cGUgTGlzdFxuJGhhcy10aXAtYm9yZGVyLWJvdHRvbTogZG90dGVkIDFweCAkZGFyay1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBjb2xvciBvZiB0aGUgdG9vbHRpcCBiYWNrZ3JvdW5kLlxuLy8vIEB0eXBlIENvbG9yXG4kdG9vbHRpcC1iYWNrZ3JvdW5kLWNvbG9yOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGNvbG9yIG9mIHRoZSB0b29sdGlwIGZvbnQuXG4vLy8gQHR5cGUgQ29sb3JcbiR0b29sdGlwLWNvbG9yOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBhZGRpbmcgb2YgdGhlIHRvb2x0aXAgYmFja2dyb3VuZC5cbi8vLyBAdHlwZSBOdW1iZXJcbiR0b29sdGlwLXBhZGRpbmc6IDAuNzVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgc2l6ZSBvZiB0aGUgdG9vbHRpcCB0ZXh0LiBCeSBkZWZhdWx0LCB3ZSByZWNvbW1lbmQgYSBzbWFsbGVyIGZvbnQgc2l6ZSB0aGFuIHRoZSBib2R5IGNvcHkuXG4vLy8gQHR5cGUgTnVtYmVyXG4kdG9vbHRpcC1mb250LXNpemU6ICRzbWFsbC1mb250LXNpemUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBpcCB3aWR0aCBmb3IgdG9vbHRpcHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kdG9vbHRpcC1waXAtd2lkdGg6IDAuNzVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBpcCBoZWlnaHQgZm9yIHRvb2x0aXBzLiBUaGlzIGlzIGhlbHBmdWwgZm9yIGNhbGN1bGF0aW5nIHRoZSBkaXN0YW5jZSBvZiB0aGUgdG9vbHRpcCBmcm9tIHRoZSB0b29sdGlwIHdvcmQuXG4vLy8gQHR5cGUgTnVtYmVyXG4kdG9vbHRpcC1waXAtaGVpZ2h0OiAkdG9vbHRpcC1waXAtd2lkdGggKiAwLjg2NiAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcmFkaXVzIGZvciB0b29sdGlwcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiR0b29sdGlwLXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XG5cbkBtaXhpbiBoYXMtdGlwIHtcbiAgYm9yZGVyLWJvdHRvbTogJGhhcy10aXAtYm9yZGVyLWJvdHRvbTtcbiAgZm9udC13ZWlnaHQ6ICRoYXMtdGlwLWZvbnQtd2VpZ2h0O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgY3Vyc29yOiBoZWxwO1xufVxuXG5AbWl4aW4gdG9vbHRpcCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICR0b29sdGlwLWJhY2tncm91bmQtY29sb3I7XG4gIGNvbG9yOiAkdG9vbHRpcC1jb2xvcjtcbiAgZm9udC1zaXplOiAkdG9vbHRpcC1mb250LXNpemU7XG4gIHBhZGRpbmc6ICR0b29sdGlwLXBhZGRpbmc7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTA7XG4gIHRvcDogY2FsYygxMDAlICsgI3skdG9vbHRpcC1waXAtaGVpZ2h0fSk7XG4gIG1heC13aWR0aDogMTByZW0gIWltcG9ydGFudDtcbiAgYm9yZGVyLXJhZGl1czogJHRvb2x0aXAtcmFkaXVzO1xuXG4gICY6OmJlZm9yZSB7XG4gICAgQGluY2x1ZGUgY3NzLXRyaWFuZ2xlKCR0b29sdGlwLXBpcC13aWR0aCwgJHRvb2x0aXAtYmFja2dyb3VuZC1jb2xvciwgdXApO1xuICAgIGJvdHRvbTogMTAwJTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgfVxuXG4gICYudG9wOjpiZWZvcmUge1xuICAgIEBpbmNsdWRlIGNzcy10cmlhbmdsZSgkdG9vbHRpcC1waXAtd2lkdGgsICR0b29sdGlwLWJhY2tncm91bmQtY29sb3IsIGRvd24pO1xuICAgIHRvcDogMTAwJTtcbiAgICBib3R0b206IGF1dG87XG4gIH1cblxuICAmLmxlZnQ6OmJlZm9yZSB7XG4gICAgQGluY2x1ZGUgY3NzLXRyaWFuZ2xlKCR0b29sdGlwLXBpcC13aWR0aCwgJHRvb2x0aXAtYmFja2dyb3VuZC1jb2xvciwgcmlnaHQpO1xuICAgIGJvdHRvbTogYXV0bztcbiAgICBsZWZ0OiAxMDAlO1xuICAgIHRvcDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgfVxuXG4gICYucmlnaHQ6OmJlZm9yZSB7XG4gICAgQGluY2x1ZGUgY3NzLXRyaWFuZ2xlKCR0b29sdGlwLXBpcC13aWR0aCwgJHRvb2x0aXAtYmFja2dyb3VuZC1jb2xvciwgbGVmdCk7XG4gICAgYm90dG9tOiBhdXRvO1xuICAgIGxlZnQ6IGF1dG87XG4gICAgcmlnaHQ6IDEwMCU7XG4gICAgdG9wOiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXRvb2x0aXAge1xuICAuaGFzLXRpcCB7XG4gICAgQGluY2x1ZGUgaGFzLXRpcDtcbiAgfVxuXG4gIC50b29sdGlwIHtcbiAgICBAaW5jbHVkZSB0b29sdGlwO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCB0b3AtYmFyXG4vLy8vXG5cbi8vLyBQYWRkaW5nIGZvciB0aGUgdG9wIGJhci5cbi8vLyBAdHlwZSBOdW1iZXJcbiR0b3BiYXItcGFkZGluZzogMC41cmVtICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBmb3IgdGhlIHRvcCBiYXIuIFRoaXMgY29sb3IgYWxzbyBjYXNjYWRlcyB0byBtZW51cyB3aXRoaW4gdGhlIHRvcCBiYXIuXG4vLy8gQHR5cGUgQ29sb3JcbiR0b3BiYXItYmFja2dyb3VuZDogJGxpZ2h0LWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIHN1Ym1lbnVzIHdpdGhpbiB0aGUgdG9wIGJhci4gVXNlZnVsbCBpZiAkdG9wYmFyLWJhY2tncm91bmQgaXMgdHJhbnNwYXJlbnQuXG4vLy8gQHR5cGUgQ29sb3JcbiR0b3BiYXItc3VibWVudS1iYWNrZ3JvdW5kOiAkdG9wYmFyLWJhY2tncm91bmQgIWRlZmF1bHQ7XG5cbi8vLyBTcGFjaW5nIGZvciB0aGUgdG9wIGJhciB0aXRsZS5cbi8vLyBAdHlwZSBOdW1iZXJcbiR0b3BiYXItdGl0bGUtc3BhY2luZzogMXJlbSAhZGVmYXVsdDtcblxuLy8vIE1heGltdW0gd2lkdGggb2YgYDxpbnB1dD5gIGVsZW1lbnRzIGluc2lkZSB0aGUgdG9wIGJhci5cbi8vLyBAdHlwZSBOdW1iZXJcbiR0b3BiYXItaW5wdXQtd2lkdGg6IDIwMHB4ICFkZWZhdWx0O1xuXG4vLy8gQnJlYWtwb2ludCBhdCB3aGljaCB0b3AgYmFyIHN3aXRjaGVzIGZyb20gbW9iaWxlIHRvIGRlc2t0b3Agdmlldy5cbi8vLyBAdHlwZSBCcmVha3BvaW50XG4kdG9wYmFyLXVuc3RhY2stYnJlYWtwb2ludDogbWVkaXVtICFkZWZhdWx0O1xuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgdG9wIGJhciBjb250YWluZXIuXG5AbWl4aW4gdG9wLWJhci1jb250YWluZXIge1xuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICB9XG4gIEBlbHNlIHtcbiAgICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgfVxuXG4gIHBhZGRpbmc6ICR0b3BiYXItcGFkZGluZztcblxuICAmLFxuICB1bCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHRvcGJhci1iYWNrZ3JvdW5kO1xuICB9XG5cbiAgLy8gQ2hlY2sgaWYgJHRvcGJhci1iYWNrZ3JvdW5kIGlzIGRpZmZlcm50IGZyb20gJHRvcGJhci1iYWNrZ3JvdW5kLXN1Ym1lbnVcbiAgQGlmICgkdG9wYmFyLWJhY2tncm91bmQgIT0gJHRvcGJhci1zdWJtZW51LWJhY2tncm91bmQpIHtcbiAgICB1bCB1bCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdG9wYmFyLXN1Ym1lbnUtYmFja2dyb3VuZDtcbiAgICB9XG4gIH1cblxuICAvLyBSZXN0cmFpbiB3aWR0aCBvZiBpbnB1dHMgYnkgZGVmYXVsdCB0byBtYWtlIHRoZW0gZWFzaWVyIHRvIGFycmFuZ2VcbiAgaW5wdXQge1xuICAgIG1heC13aWR0aDogJHRvcGJhci1pbnB1dC13aWR0aDtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogMXJlbTtcbiAgfVxuXG4gIC8vIFRoZSBhYm92ZSBzdHlsZXMgc2hvdWxkbid0IGFwcGx5IHRvIGlucHV0IGdyb3VwIGZpZWxkc1xuICAuaW5wdXQtZ3JvdXAtZmllbGQge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAwO1xuICB9XG5cbiAgLy8gc2Nzcy1saW50OmRpc2FibGUgUXVhbGlmeWluZ0VsZW1lbnRcbiAgaW5wdXQuYnV0dG9uIHtcbiAgICB3aWR0aDogYXV0bztcbiAgfVxufVxuXG4vLy8gTWFrZXMgc2VjdGlvbnMgb2YgYSB0b3AgYmFyIHN0YWNrIG9uIHRvcCBvZiBlYWNoIG90aGVyLlxuQG1peGluIHRvcC1iYXItc3RhY2tlZCB7XG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgIGZsZXgtd3JhcDogd3JhcDtcblxuICAgIC8vIFN1Yi1zZWN0aW9uc1xuICAgIC50b3AtYmFyLWxlZnQsXG4gICAgLnRvcC1iYXItcmlnaHQge1xuICAgICAgZmxleDogMCAwIDEwMCU7XG4gICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICAvLyBTdWItc2VjdGlvbnNcbiAgICAudG9wLWJhci1sZWZ0LFxuICAgIC50b3AtYmFyLXJpZ2h0IHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbiAgfVxufVxuXG4vLy8gVW5kb2VzIHRoZSBDU1MgYXBwbGllZCBieSB0aGUgYHRvcC1iYXItc3RhY2tlZCgpYCBtaXhpbi5cbkBtaXhpbiB0b3AtYmFyLXVuc3RhY2sge1xuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcblxuICAgIC8vIHNjc3MtbGludDpkaXNhYmxlIFplcm9Vbml0XG4gICAgLnRvcC1iYXItbGVmdCxcbiAgICAudG9wLWJhci1yaWdodCB7XG4gICAgICBmbGV4OiAxIDEgMHB4O1xuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgLnRvcC1iYXItbGVmdCxcbiAgICAudG9wLWJhci1yaWdodCB7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tdG9wLWJhciB7XG4gIC8vIFRvcCBiYXIgY29udGFpbmVyXG4gIC50b3AtYmFyIHtcbiAgICBAaW5jbHVkZSB0b3AtYmFyLWNvbnRhaW5lcjtcblxuICAgIC8vIFN0YWNrIG9uIHNtYWxsIHNjcmVlbnMgYnkgZGVmYXVsdFxuICAgIEBpbmNsdWRlIHRvcC1iYXItc3RhY2tlZDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHRvcGJhci11bnN0YWNrLWJyZWFrcG9pbnQpIHtcbiAgICAgIEBpbmNsdWRlIHRvcC1iYXItdW5zdGFjaztcbiAgICB9XG5cbiAgICAvLyBHZW5lcmF0ZSBjbGFzc2VzIGZvciBzdGFja2luZyBvbiBlYWNoIHNjcmVlbiBzaXplIChkZWZpbmVkIGluICRicmVha3BvaW50LWNsYXNzZXMpXG4gICAgQGVhY2ggJHNpemUgaW4gJGJyZWFrcG9pbnQtY2xhc3NlcyB7XG4gICAgICBAaWYgJHNpemUgIT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgICAmLnN0YWNrZWQtZm9yLSN7JHNpemV9IHtcbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRzaXplIGRvd24pIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHRvcC1iYXItc3RhY2tlZDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBTdWItc2VjdGlvbnNcbiAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgLnRvcC1iYXItdGl0bGUge1xuICAgICAgZmxleDogMCAwIGF1dG87XG4gICAgICBtYXJnaW4tcmlnaHQ6ICR0b3BiYXItdGl0bGUtc3BhY2luZztcbiAgICB9XG5cbiAgICAudG9wLWJhci1sZWZ0LFxuICAgIC50b3AtYmFyLXJpZ2h0IHtcbiAgICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgLnRvcC1iYXItdGl0bGUge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBtYXJnaW4tcmlnaHQ6ICR0b3BiYXItdGl0bGUtc3BhY2luZztcblxuICAgIH1cblxuICAgIC50b3AtYmFyLWxlZnQge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgfVxuXG4gICAgLnRvcC1iYXItcmlnaHQge1xuICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgIH1cbiAgfVxufVxuIiwiLy8vIEFwcGxpZXMgYmFzaWMgdHJhbnNpdGlvbiBzZXR0aW5ncyB0byBhbiBlbGVtZW50LlxuLy8vIEBwYXJhbSB7RHVyYXRpb259ICRkdXJhdGlvbiBbbnVsbF0gLSBMZW5ndGggKHNwZWVkKSBvZiB0aGUgdHJhbnNpdGlvbi5cbi8vLyBAcGFyYW0ge0tleXdvcmR8RnVuY3Rpb259ICR0aW1pbmcgW251bGxdIC0gRWFzaW5nIG9mIHRoZSB0cmFuc2l0aW9uLlxuLy8vIEBwYXJhbSB7RHVyYXRpb259ICRkZWxheSBbbnVsbF0gLSBEZWxheSBpbiBzZWNvbmRzIG9yIG1pbGxpc2Vjb25kcyBiZWZvcmUgdGhlIHRyYW5zaXRpb24gc3RhcnRzLlxuQG1peGluIHRyYW5zaXRpb24tYmFzaWNzKFxuICAkZHVyYXRpb246IG51bGwsXG4gICR0aW1pbmc6IG51bGwsXG4gICRkZWxheTogbnVsbFxuKSB7XG4gIEBleHRlbmQgJW11aS1kZWZhdWx0cztcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogJGR1cmF0aW9uO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogJHRpbWluZztcbiAgdHJhbnNpdGlvbi1kZWxheTogJGRlbGF5O1xufVxuXG4vLy8gV3JhcHMgdGhlIGNvbnRlbnQgaW4gdGhlIHNldHVwIGNsYXNzIGZvciBhIHRyYW5zaXRpb24uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZGlyIC0gU3RhdGUgdG8gc2V0dXAgZm9yIHRyYW5zaXRpb24uXG5AbWl4aW4gdHJhbnNpdGlvbi1zdGFydCgkZGlyKSB7XG4gICRzZWxlY3RvcjogLW11aS1idWlsZC1zZWxlY3RvcihtYXAtZ2V0KCRtb3Rpb24tdWktc3RhdGVzLCAkZGlyKSk7XG5cbiAgQGF0LXJvb3Qge1xuICAgICN7JHNlbGVjdG9yfSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cblxuLy8vIFdyYXBzIHRoZSBjb250ZW50IGluIHRoZSBhY3RpdmUgY2xhc3MgZm9yIGEgdHJhbnNpdGlvbi5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRkaXIgLSBTdGF0ZSB0byBhY3RpdmF0ZSBhIHRyYW5zaXRpb24gb24uXG5AbWl4aW4gdHJhbnNpdGlvbi1lbmQoJGRpcikge1xuICAkc2VsZWN0b3I6IC1tdWktYnVpbGQtc2VsZWN0b3IobWFwLWdldCgkbW90aW9uLXVpLXN0YXRlcywgJGRpciksIHRydWUpO1xuXG4gIEBhdC1yb290IHtcbiAgICAjeyRzZWxlY3Rvcn0ge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSBzdGFnZ2VyIGFuaW1hdGlvbiwgd2hpY2ggY2FuIGJlIHVzZWQgd2l0aCBBbmd1bGFyJ3MgYG5nLXJlcGVhdGAuXG4vLy8gQHBhcmFtIHtEdXJhdGlvbn0gJGRlbGF5LWFtb3VudCAtIEFtb3VudCBvZiB0aW1lIGluIHNlY29uZHMgb3IgbWlsbGlzZWNvbmRzIHRvIGFkZCBiZXR3ZWVuIGVhY2ggaXRlbSdzIGFuaW1hdGlvbi5cbkBtaXhpbiBzdGFnZ2VyKCRkZWxheS1hbW91bnQpIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogJGRlbGF5LWFtb3VudDtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMDsgLy8gUHJldmVudCBhY2NpZGVudGFsIENTUyBpbmhlcml0YW5jZVxufVxuIiwiLy8gSW50ZXJuYWwgY291bnRlciBmb3IgY3JlYXRpbmcgdW5pcXVlIGtleWZyYW1lIG5hbWVzXG4kLW11aS1jdXN0b206IDA7XG5cbi8vLyBDcmVhdGVzIGEga2V5ZnJhbWUgZnJvbSBvbmUgb3IgbW9yZSBlZmZlY3QgZnVuY3Rpb25zLiBVc2UgdGhpcyBmdW5jdGlvbiBpbnN0ZWFkIG9mIGBtdWktYW5pbWF0aW9uYCBpZiB5b3Ugd2FudCB0byBjcmVhdGUgYSBrZXlmcmFtZSBhbmltYXRpb24gKndpdGhvdXQqIGF1dG9tYXRpY2FsbHkgYXNzaWduaW5nIGl0IHRvIHRoZSBlbGVtZW50LlxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkbmFtZSAtIE5hbWUgb2YgdGhlIGtleWZyYW1lLlxuLy8vIEBwYXJhbSB7RnVuY3Rpb259ICRlZmZlY3RzLi4uIC0gT25lIG9yIG1vcmUgZWZmZWN0IGZ1bmN0aW9ucyB0byBidWlsZCB0aGUga2V5ZnJhbWUgd2l0aC5cbkBtaXhpbiBtdWkta2V5ZnJhbWVzKCRuYW1lLCAkZWZmZWN0cy4uLikge1xuICAkb2JqOiAtbXVpLXByb2Nlc3MtYXJncygkZWZmZWN0cy4uLik7XG4gICRvYmo6IG1hcC1yZW1vdmUoJG9iaiwgbmFtZSk7XG5cbiAgQGtleWZyYW1lcyAjeyRuYW1lfSB7XG4gICAgLy8gTm93IGl0ZXJhdGUgdGhyb3VnaCBlYWNoIGtleWZyYW1lIHBlcmNlbnRhZ2VcbiAgICBAZWFjaCAkcGN0LCAkcHJvcHMgaW4gJG9iaiB7XG4gICAgICAjey1tdWkta2V5ZnJhbWUtcGN0KCRwY3QpfSB7XG4gICAgICAgIC8vIExhc3RseSwgaXRlcmF0ZSB0aHJvdWdoIGVhY2ggQ1NTIHByb3BlcnR5IHdpdGhpbiBhIHBlcmNlbnRhZ2UgYW5kIHByaW50IGl0IG91dFxuICAgICAgICBAZWFjaCAkcHJvcCwgJHZhbHVlIGluICRwcm9wcyB7XG4gICAgICAgICAgI3skcHJvcH06ICN7JHZhbHVlfTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLy8gQ3JlYXRlcyBhIHN0cmluZyBmb3IgYSBDU1Mga2V5ZnJhbWUsIGJ5IGNvbnZlcnRpbmcgYSBsaXN0IG9mIG51bWJlcnMgdG8gYSBjb21tYS1zZXBhcmF0ZWQgbGlzdCBvZiBwZXJjZW50YWdlIHZhbHVlcy5cbi8vLyBAcGFyYW0ge051bWJlcnxMaXN0fSAkaW5wdXQgLSBMaXN0IG9mIG51bWJlcnMgdG8gdXNlLlxuLy8vIEByZXR1cm4ge1N0cmluZ30gQSBzZXQgb2YgY29tbWEtc2VwYXJhdGVkIHBlcmNlbnRhZ2UgdmFsdWVzLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuQGZ1bmN0aW9uIC1tdWkta2V5ZnJhbWUtcGN0KCRpbnB1dCkge1xuICAkb3V0cHV0OiAoKTtcblxuICBAaWYgdHlwZS1vZigkaW5wdXQpID09ICdudW1iZXInIHtcbiAgICAkb3V0cHV0OiAoJGlucHV0ICogMSUpO1xuICB9IEBlbHNlIGlmIHR5cGUtb2YoJGlucHV0KSA9PSAnbGlzdCcge1xuICAgIEBlYWNoICRpIGluICRpbnB1dCB7XG4gICAgICAkb3V0cHV0OiBhcHBlbmQoJG91dHB1dCwgKCRpICogMSUpLCBjb21tYSk7XG4gICAgfVxuICB9XG5cbiAgQHJldHVybiAkb3V0cHV0O1xufVxuXG4vLy8gUHJpbnRzIHRoZSBDU1MgcHJvcGVydGllcyBmcm9tIGEgc3BlY2lmaWMga2V5IGluIGEga2V5ZnJhbWVzIG1hcC4gVXNlZCB0byBib3Jyb3cgQ1NTIGZyb20ga2V5ZnJhbWUgZnVuY3Rpb25zIGZvciB1c2UgaW4gdHJhbnNpdGlvbnMuXG4vLy8gQHBhcmFtIHtNYXB9ICRrZiAtIEtleWZyYW1lIG1hcCB0byBleHRyYWN0IGZyb20uXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRrZXkgLSBLZXkgaW4gdGhlIG1hcCB0byBwcmludCB0aGUgQ1NTIG9mLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuQG1peGluIC1tdWkta2V5ZnJhbWUtZ2V0KCRrZiwgJGtleSkge1xuICAkbWFwOiBtYXAtZ2V0KCRrZiwgJGtleSk7XG5cbiAgQGVhY2ggJHByb3AsICR2YWx1ZSBpbiAkbWFwIG9yICgpIHtcbiAgICAvLyBTb21lIGtleWZyYW1lIG1hcHMgc3RvcmUgdHJhbnNmb3JtcyBhcyBxdW90ZWQgc3RyaW5nc1xuICAgIEBpZiB0eXBlLW9mKCR2YWx1ZSkgPT0gJ3N0cmluZycge1xuICAgICAgJHZhbHVlOiB1bnF1b3RlKCR2YWx1ZSk7XG4gICAgfVxuICAgICN7JHByb3B9OiAkdmFsdWU7XG4gIH1cbn1cblxuLy8vIFJlZm9ybWF0cyBhIG1hcCBjb250YWluaW5nIGtleXMgd2l0aCBhIGxpc3Qgb2YgdmFsdWVzLCBzbyB0aGF0IGVhY2gga2V5IGlzIGEgc2luZ2xlIHZhbHVlLlxuLy8vIEBwYXJhbSB7TWFwfSAkbWFwIC0gTWFwIHRvIHNwbGl0IHVwLlxuLy8vIEByZXR1cm4ge01hcH0gQSByZWZvcm1hdHRlZCBtYXAuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG5AZnVuY3Rpb24gLW11aS1rZXlmcmFtZS1zcGxpdCgkbWFwKSB7XG4gICRuZXctbWFwOiAoKTtcblxuICAvLyBTcGxpdCBrZXlzIHdpdGggbXVsdGlwbGUgdmFsdWVzIGludG8gaW5kaXZpZHVhbCBrZXlzXG4gIEBlYWNoICRrZXksICRpdGVtIGluICRtYXAge1xuICAgICRrZXktdHlwZTogdHlwZS1vZigka2V5KTtcblxuICAgIEBpZiAka2V5LXR5cGUgPT0gJ251bWJlcicge1xuICAgICAgJG5ldy1tYXA6IG1hcC1tZXJnZSgkbmV3LW1hcCwgKCRrZXk6ICRpdGVtKSk7XG4gICAgfSBAZWxzZSBpZiAka2V5LXR5cGUgPT0gJ2xpc3QnIHtcbiAgICAgIEBlYWNoICRrIGluICRrZXkge1xuICAgICAgICAkbmV3LW1hcDogbWFwLW1lcmdlKCRuZXctbWFwLCAoJGs6ICRpdGVtKSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQHJldHVybiAkbmV3LW1hcDtcbn1cblxuLy8vIENvbWJpbmVzIGEgc2VyaWVzIG9mIGtleWZyYW1lIG9iamVjdHMgaW50byBvbmUuXG4vLy8gQHBhcmFtIHtNYXB9ICRtYXBzLi4uIC0gQSBzZXJpZXMgb2YgbWFwcyB0byBtZXJnZSwgYXMgaW5kaXZpZHVhbCBwYXJhbWV0ZXJzLlxuLy8vIEByZXR1cm4ge01hcH0gQSBjb21iaW5lZCBrZXlmcmFtZSBvYmplY3QuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG5AZnVuY3Rpb24gLW11aS1rZXlmcmFtZS1jb21iaW5lKCRtYXBzLi4uKSB7XG4gICRuZXctbWFwOiAoKTtcblxuICAvLyBJdGVyYXRlIHRocm91Z2ggZWFjaCBtYXAgcGFzc2VkIGluXG4gIEBlYWNoICRtYXAgaW4gJG1hcHMge1xuICAgIEBpZiB0eXBlLW9mKCRtYXApID09ICdzdHJpbmcnIHtcbiAgICAgICRtYXA6IGNhbGwoJG1hcCk7XG4gICAgfVxuXG4gICAgJG1hcDogLW11aS1rZXlmcmFtZS1zcGxpdCgkbWFwKTtcblxuICAgIC8vIEl0ZXJhdGUgdGhyb3VnaCBlYWNoIGtleWZyYW1lIGluIHRoZSBtYXBcbiAgICAvLyAka2V5IGlzIHRoZSBrZXlmcmFtZSBwZXJjZW50YWdlXG4gICAgLy8gJHZhbHVlIGlzIGEgbWFwIG9mIENTUyBwcm9wZXJ0aWVzXG4gICAgQGVhY2ggJGtleSwgJHZhbHVlIGluICRtYXAge1xuICAgICAgJG5ldy12YWx1ZTogKCk7XG5cbiAgICAgIEBpZiBtYXAtaGFzLWtleSgkbmV3LW1hcCwgJGtleSkge1xuICAgICAgICAvLyBJZiB0aGUgbWFwIGFscmVhZHkgaGFzIHRoZSBrZXlmcmFtZSAlLCBhcHBlbmQgdGhlIG5ldyBwcm9wZXJ0eVxuICAgICAgICAkbmV3LXZhbHVlOiAtbXVpLW1lcmdlLXByb3BlcnRpZXMobWFwLWdldCgkbmV3LW1hcCwgJGtleSksICR2YWx1ZSk7XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgLy8gT3RoZXJ3aXNlLCBjcmVhdGUgYSBuZXcgbWFwIHdpdGggdGhlIG5ldyBwcm9wZXJ0eVxuICAgICAgICAkbmV3LXZhbHVlOiAkdmFsdWU7XG4gICAgICB9XG5cbiAgICAgIC8vIEZpbmFsbHksIG1lcmdlIHRoZSBtb2RpZmllZCBrZXlmcmFtZSB2YWx1ZSBpbnRvIHRoZSBvdXRwdXQgbWFwXG4gICAgICAkbmV3LW1hcDogbWFwLW1lcmdlKCRuZXctbWFwLCAoJGtleTogJG5ldy12YWx1ZSkpO1xuICAgIH1cbiAgfVxuXG4gIC8vIE1ha2UgYSBuYW1lIGZvciB0aGUga2V5ZnJhbWVzXG4gICQtbXVpLWN1c3RvbTogJC1tdWktY3VzdG9tICsgMSAhZ2xvYmFsO1xuICAkbWFwLW5hbWU6IChuYW1lOiAnY3VzdG9tLSN7JC1tdWktY3VzdG9tfScpO1xuICAkbmV3LW1hcDogbWFwLW1lcmdlKCRuZXctbWFwLCAkbWFwLW5hbWUpO1xuXG4gIEByZXR1cm4gJG5ldy1tYXA7XG59XG5cbi8vLyBDb21iaW5lcyB0d28gbWFwcyBvZiBDU1MgcHJvcGVydGllcyBpbnRvIG9uZSBtYXAuIElmIGJvdGggbWFwcyBoYXZlIGEgdHJhbnNmb3JtIHByb3BlcnR5LCB0aGUgdmFsdWVzIGZyb20gZWFjaCB3aWxsIGJlIGNvbWJpbmVkIGludG8gb25lIHByb3BlcnR5LlxuLy8vIEBwYXJhbSB7TWFwfSAkb25lIC0gRmlyc3QgbWFwIHRvIG1lcmdlLlxuLy8vIEBwYXJhbSB7TWFwfSAkdHdvIC0gU2Vjb25kIG1hcCB0byBtZXJnZS5cbi8vLyBAcmV0dXJuIHtNYXB9IEEgY29tYmluZWQgbWFwLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuQGZ1bmN0aW9uIC1tdWktbWVyZ2UtcHJvcGVydGllcygkb25lLCAkdHdvKSB7XG4gIEBpZiBtYXAtaGFzLWtleSgkb25lLCB0cmFuc2Zvcm0pIGFuZCBtYXAtaGFzLWtleSgkdHdvLCB0cmFuc2Zvcm0pIHtcbiAgICAkdHJhbnNmb3JtOiBqb2luKG1hcC1nZXQoJG9uZSwgdHJhbnNmb3JtKSwgbWFwLWdldCgkdHdvLCB0cmFuc2Zvcm0pKTtcbiAgICAkb25lOiBtYXAtbWVyZ2UoJG9uZSwgKHRyYW5zZm9ybTogJHRyYW5zZm9ybSkpO1xuICAgICR0d286IG1hcC1yZW1vdmUoJHR3bywgdHJhbnNmb3JtKTtcbiAgfVxuXG4gIEByZXR1cm4gbWFwLW1lcmdlKCRvbmUsICR0d28pO1xufVxuIiwiLy8vIENyZWF0ZXMgYSBzbGlkaW5nIHRyYW5zaXRpb24gYnkgdHJhbnNsYXRpbmcgdGhlIGVsZW1lbnQgaG9yaXpvbnRhbGx5IG9yIHZlcnRpY2FsbHkuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc3RhdGUgW2luXSAtIFN0YXRlIHRvIHRyYW5zaXRpb24gdG8uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZGlyZWN0aW9uIFtsZWZ0XSAtIFNpZGUgb2YgdGhlIGVsZW1lbnQgdG8gc2xpZGUgZnJvbS4gQ2FuIGJlIGB0b3BgLCBgcmlnaHRgLCBgYm90dG9tYCwgb3IgYGxlZnRgLlxuLy8vIEBwYXJhbSB7TGVuZ3RofSAkYW1vdW50IFsxMDAlXSAtIExlbmd0aCBvZiB0aGUgc2xpZGUgYXMgYSBwZXJjZW50YWdlIHZhbHVlLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGZhZGUgW2ZhbHNlXSAtIFNldCB0byBgdHJ1ZWAgdG8gZmFkZSB0aGUgZWxlbWVudCBpbiBvciBvdXQgc2ltdWx0YW5lb3VzbHkuXG4vLy8gQHBhcmFtIHtEdXJhdGlvbn0gJGR1cmF0aW9uIFtudWxsXSAtIExlbmd0aCAoc3BlZWQpIG9mIHRoZSB0cmFuc2l0aW9uLlxuLy8vIEBwYXJhbSB7S2V5d29yZHxGdW5jdGlvbn0gJHRpbWluZyBbbnVsbF0gLSBFYXNpbmcgb2YgdGhlIHRyYW5zaXRpb24uXG4vLy8gQHBhcmFtIHtEdXJhdGlvbn0gJGRlbGF5IFtudWxsXSAtIERlbGF5IGluIHNlY29uZHMgb3IgbWlsbGlzZWNvbmRzIGJlZm9yZSB0aGUgdHJhbnNpdGlvbiBzdGFydHMuXG5AbWl4aW4gbXVpLXNsaWRlIChcbiAgJHN0YXRlOiBpbixcbiAgJGRpcmVjdGlvbjogbGVmdCxcbiAgJGFtb3VudDogMTAwJSxcbiAgJGZhZGU6IG1hcC1nZXQoJG1vdGlvbi11aS1zZXR0aW5ncywgc2xpZGUtYW5kLWZhZGUpLFxuICAkZHVyYXRpb246IG51bGwsXG4gICR0aW1pbmc6IG51bGwsXG4gICRkZWxheTogbnVsbFxuKSB7XG4gICRzbGlkZTogc2xpZGUoJHN0YXRlLCAkZGlyZWN0aW9uLCAkYW1vdW50KTtcblxuICAvLyBDU1MgT3V0cHV0XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24tc3RhcnQoJHN0YXRlKSB7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbi1iYXNpY3MoJGR1cmF0aW9uLCAkdGltaW5nLCAkZGVsYXkpO1xuICAgIEBpbmNsdWRlIC1tdWkta2V5ZnJhbWUtZ2V0KCRzbGlkZSwgMCk7XG5cbiAgICBAaWYgJGZhZGUge1xuICAgICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICAgICAgb3BhY2l0eTogaWYoJHN0YXRlID09IGluLCAwLCAxKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgICB9XG5cbiAgICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIH1cblxuICBAaW5jbHVkZSB0cmFuc2l0aW9uLWVuZCgkc3RhdGUpIHtcbiAgICBAaW5jbHVkZSAtbXVpLWtleWZyYW1lLWdldCgkc2xpZGUsIDEwMCk7XG5cbiAgICBAaWYgJGZhZGUge1xuICAgICAgb3BhY2l0eTogaWYoJHN0YXRlID09IGluLCAxLCAwKTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vLyBDcmVhdGVzIGEgZmFkZSB0cmFuc2l0aW9uIGJ5IGFkanVzdGluZyB0aGUgb3BhY2l0eSBvZiB0aGUgZWxlbWVudC5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzdGF0ZSBbaW5dIC0gU3RhdGUgdG8gdHJhbnNpdGlvbiB0by5cbi8vLyBAcGFyYW0ge051bWJlcn0gJGZyb20gWzBdIC0gT3BhY2l0eSB0byBzdGFydCBhdC4gTXVzdCBiZSBhIG51bWJlciBiZXR3ZWVuIDAgYW5kIDEuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR0byBbMV0gLSBPcGFjaXR5IHRvIGVuZCBvbi5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRkdXJhdGlvbiBbbnVsbF0gLSBMZW5ndGggKHNwZWVkKSBvZiB0aGUgdHJhbnNpdGlvbi5cbi8vLyBAcGFyYW0ge0tleXdvcmR8RnVuY3Rpb259ICR0aW1pbmcgW251bGxdIC0gRWFzaW5nIG9mIHRoZSB0cmFuc2l0aW9uLlxuLy8vIEBwYXJhbSB7RHVyYXRpb259ICRkZWxheSBbbnVsbF0gLSBEZWxheSBpbiBzZWNvbmRzIG9yIG1pbGxpc2Vjb25kcyBiZWZvcmUgdGhlIHRyYW5zaXRpb24gc3RhcnRzLlxuQG1peGluIG11aS1mYWRlKFxuICAkc3RhdGU6IGluLFxuICAkZnJvbTogMCxcbiAgJHRvOiAxLFxuICAkZHVyYXRpb246IG51bGwsXG4gICR0aW1pbmc6IG51bGwsXG4gICRkZWxheTogbnVsbFxuKSB7XG4gICRmYWRlOiBmYWRlKCRmcm9tLCAkdG8pO1xuXG4gIEBpbmNsdWRlIHRyYW5zaXRpb24tc3RhcnQoJHN0YXRlKSB7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbi1iYXNpY3MoJGR1cmF0aW9uLCAkdGltaW5nLCAkZGVsYXkpO1xuICAgIEBpbmNsdWRlIC1tdWkta2V5ZnJhbWUtZ2V0KCRmYWRlLCAwKTtcblxuICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IG9wYWNpdHk7XG4gIH1cblxuICBAaW5jbHVkZSB0cmFuc2l0aW9uLWVuZCgkc3RhdGUpIHtcbiAgICBAaW5jbHVkZSAtbXVpLWtleWZyYW1lLWdldCgkZmFkZSwgMTAwKTtcbiAgfVxufVxuIiwiLy8vIENyZWF0ZXMgYSBoaW5nZSBlZmZlY3QgYnkgcm90YXRpbmcgdGhlIGVsZW1lbnQuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc3RhdGUgW2luXSAtIFN0YXRlIHRvIHRyYW5zaXRpb24gdG8uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZnJvbSBbbGVmdF0gLSBFZGdlIG9mIHRoZSBlbGVtZW50IHRvIHJvdGF0ZSBmcm9tLiBDYW4gYmUgYHRvcGAsIGByaWdodGAsIGBib3R0b21gLCBvciBgbGVmdGAuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkYXhpcyBbZWRnZV0gLSBBeGlzIG9mIHRoZSBlbGVtZW50IHRvIHJvdGF0ZSBvbi4gQ2FuIGJlIGBlZGdlYCBvciBgY2VudGVyYC5cbi8vLyBAcGFyYW0ge051bWJlcn0gJHBlcnNwZWN0aXZlIFsyMDAwcHhdIC0gUGVyY2VpdmVkIGRpc3RhbmNlIGJldHdlZW4gdGhlIHZpZXdlciBhbmQgdGhlIGVsZW1lbnQuIEEgaGlnaGVyIG51bWJlciB3aWxsIG1ha2UgdGhlIHJvdGF0aW9uIGVmZmVjdCBtb3JlIHByb25vdW5jZWQuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkdHVybi1vcmlnaW4gW2Zyb20tYmFja10gLSBTaWRlIG9mIHRoZSBlbGVtZW50IHRvIHN0YXJ0IHRoZSByb3RhdGlvbiBmcm9tLiBDYW4gYmUgYGZyb20tYmFja2Agb3IgYGZyb20tZnJvbnRgLlxuQGZ1bmN0aW9uIGhpbmdlIChcbiAgJHN0YXRlOiBpbixcbiAgJGZyb206IGxlZnQsXG4gICRheGlzOiBlZGdlLFxuICAkcGVyc3BlY3RpdmU6IDIwMDBweCxcbiAgJHR1cm4tb3JpZ2luOiBmcm9tLWJhY2tcbikge1xuICAvLyBSb3RhdGlvbiBkaXJlY3Rpb25zIHdoZW4gaGluZ2luZyBmcm9tIGJhY2sgdnMuIGZyb250XG4gICRyb3RhdGlvbi1hbW91bnQ6IDkwZGVnO1xuICAkcm90YXRpb25zLWJhY2s6IChcbiAgICB0b3A6IHJvdGF0ZVgoJHJvdGF0aW9uLWFtb3VudCAqIC0xKSxcbiAgICByaWdodDogcm90YXRlWSgkcm90YXRpb24tYW1vdW50ICogLTEpLFxuICAgIGJvdHRvbTogcm90YXRlWCgkcm90YXRpb24tYW1vdW50KSxcbiAgICBsZWZ0OiByb3RhdGVZKCRyb3RhdGlvbi1hbW91bnQpLFxuICApO1xuICAkcm90YXRpb25zLWZyb206IChcbiAgICB0b3A6IHJvdGF0ZVgoJHJvdGF0aW9uLWFtb3VudCksXG4gICAgcmlnaHQ6IHJvdGF0ZVkoJHJvdGF0aW9uLWFtb3VudCksXG4gICAgYm90dG9tOiByb3RhdGVYKCRyb3RhdGlvbi1hbW91bnQgKiAtMSksXG4gICAgbGVmdDogcm90YXRlWSgkcm90YXRpb24tYW1vdW50ICogLTEpLFxuICApO1xuXG4gIC8vIFJvdGF0aW9uIG9yaWdpblxuICAkcm90YXRpb246ICcnO1xuICBAaWYgJHR1cm4tb3JpZ2luID09IGZyb20tZnJvbnQge1xuICAgICRyb3RhdGlvbjogbWFwLWdldCgkcm90YXRpb25zLWZyb20sICRmcm9tKTtcbiAgfSBAZWxzZSBpZiAkdHVybi1vcmlnaW4gPT0gZnJvbS1iYWNrIHtcbiAgICAkcm90YXRpb246IG1hcC1nZXQoJHJvdGF0aW9ucy1iYWNrLCAkZnJvbSk7XG4gIH0gQGVsc2Uge1xuICAgIEB3YXJuICckdHVybi1vcmlnaW4gbXVzdCBiZSBlaXRoZXIgXCJmcm9tLWJhY2tcIiBvciBcImZyb20tZnJvbnRcIic7XG4gIH1cblxuICAvLyBTdGFydCBhbmQgZW5kIHN0YXRlXG4gICRzdGFydDogJyc7XG4gICRlbmQ6ICcnO1xuICBAaWYgJHN0YXRlID09IGluIHtcbiAgICAkc3RhcnQ6IHBlcnNwZWN0aXZlKCRwZXJzcGVjdGl2ZSkgJHJvdGF0aW9uO1xuICAgICRlbmQ6IHBlcnNwZWN0aXZlKCRwZXJzcGVjdGl2ZSkgcm90YXRlKDBkZWcpO1xuICB9IEBlbHNlIHtcbiAgICAkc3RhcnQ6IHBlcnNwZWN0aXZlKCRwZXJzcGVjdGl2ZSkgcm90YXRlKDBkZWcpO1xuICAgICRlbmQ6IHBlcnNwZWN0aXZlKCRwZXJzcGVjdGl2ZSkgJHJvdGF0aW9uO1xuICB9XG5cbiAgLy8gVHVybiBheGlzXG4gICRvcmlnaW46ICcnO1xuICBAaWYgJGF4aXMgPT0gZWRnZSB7XG4gICAgJG9yaWdpbjogJGZyb207XG4gIH0gQGVsc2Uge1xuICAgICRvcmlnaW46IGNlbnRlcjtcbiAgfVxuXG4gICRrZXlmcmFtZXM6IChcbiAgICBuYW1lOiAnaGluZ2UtI3skc3RhdGV9LSN7JGZyb219LSN7JGF4aXN9LSN7JHR1cm4tb3JpZ2lufScsXG4gICAgMDogKHRyYW5zZm9ybTogJHN0YXJ0LCB0cmFuc2Zvcm0tb3JpZ2luOiAkb3JpZ2luKSxcbiAgICAxMDA6ICh0cmFuc2Zvcm06ICRlbmQpLFxuICApO1xuXG4gIEByZXR1cm4gJGtleWZyYW1lcztcbn1cbiIsIi8vLyBDcmVhdGVzIGEgaGluZ2UgdHJhbnNpdGlvbiBieSByb3RhdGluZyB0aGUgZWxlbWVudC5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzdGF0ZSBbaW5dIC0gU3RhdGUgdG8gdHJhbnNpdGlvbiB0by5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRmcm9tIFtsZWZ0XSAtIEVkZ2Ugb2YgdGhlIGVsZW1lbnQgdG8gcm90YXRlIGZyb20uIENhbiBiZSBgdG9wYCwgYHJpZ2h0YCwgYGJvdHRvbWAsIG9yIGBsZWZ0YC5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRheGlzIFtlZGdlXSAtIEF4aXMgb2YgdGhlIGVsZW1lbnQgdG8gcm90YXRlIG9uLiBDYW4gYmUgYGVkZ2VgIG9yIGBjZW50ZXJgLlxuLy8vIEBwYXJhbSB7TGVuZ3RofSAkcGVyc3BlY3RpdmUgWzIwMDBweF0gLSBQZXJjZWl2ZWQgZGlzdGFuY2UgYmV0d2VlbiB0aGUgdmlld2VyIGFuZCB0aGUgZWxlbWVudC4gQSBoaWdoZXIgbnVtYmVyIHdpbGwgbWFrZSB0aGUgcm90YXRpb24gZWZmZWN0IG1vcmUgcHJvbm91bmNlZC5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICR0dXJuLW9yaWdpbiBbZnJvbS1iYWNrXSAtIFNpZGUgb2YgdGhlIGVsZW1lbnQgdG8gc3RhcnQgdGhlIHJvdGF0aW9uIGZyb20uIENhbiBiZSBgZnJvbS1iYWNrYCBvciBgZnJvbS1mcm9udGAuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkZmFkZSBbdHJ1ZV0gLSBTZXQgdG8gYHRydWVgIHRvIGZhZGUgdGhlIGVsZW1lbnQgaW4gb3Igb3V0IHNpbXVsdGFuZW91c2x5LlxuLy8vIEBwYXJhbSB7RHVyYXRpb259ICRkdXJhdGlvbiBbbnVsbF0gLSBMZW5ndGggKHNwZWVkKSBvZiB0aGUgdHJhbnNpdGlvbi5cbi8vLyBAcGFyYW0ge0tleXdvcmR8RnVuY3Rpb259ICR0aW1pbmcgW251bGxdIC0gRWFzaW5nIG9mIHRoZSB0cmFuc2l0aW9uLlxuLy8vIEBwYXJhbSB7RHVyYXRpb259ICRkZWxheSBbbnVsbF0gLSBEZWxheSBpbiBzZWNvbmRzIG9yIG1pbGxpc2Vjb25kcyBiZWZvcmUgdGhlIHRyYW5zaXRpb24gc3RhcnRzLlxuQG1peGluIG11aS1oaW5nZSAoXG4gICRzdGF0ZTogaW4sXG4gICRmcm9tOiBsZWZ0LFxuICAkYXhpczogZWRnZSxcbiAgJHBlcnNwZWN0aXZlOiAyMDAwcHgsXG4gICR0dXJuLW9yaWdpbjogZnJvbS1iYWNrLFxuICAkZmFkZTogbWFwLWdldCgkbW90aW9uLXVpLXNldHRpbmdzLCBoaW5nZS1hbmQtZmFkZSksXG4gICRkdXJhdGlvbjogbnVsbCxcbiAgJHRpbWluZzogbnVsbCxcbiAgJGRlbGF5OiBudWxsXG4pIHtcbiAgJGhpbmdlOiBoaW5nZSgkc3RhdGUsICRmcm9tLCAkYXhpcywgJHBlcnNwZWN0aXZlLCAkdHVybi1vcmlnaW4pO1xuXG4gIEBpbmNsdWRlIHRyYW5zaXRpb24tc3RhcnQoJHN0YXRlKSB7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbi1iYXNpY3MoJGR1cmF0aW9uLCAkdGltaW5nLCAkZGVsYXkpO1xuICAgIEBpbmNsdWRlIC1tdWkta2V5ZnJhbWUtZ2V0KCRoaW5nZSwgMCk7XG5cbiAgICBAaWYgJGZhZGUge1xuICAgICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICAgICAgb3BhY2l0eTogaWYoJHN0YXRlID09IGluLCAwLCAxKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSB0cmFuc2l0aW9uLWVuZCgkc3RhdGUpIHtcbiAgICBAaW5jbHVkZSAtbXVpLWtleWZyYW1lLWdldCgkaGluZ2UsIDEwMCk7XG5cbiAgICBAaWYgJGZhZGUge1xuICAgICAgb3BhY2l0eTogaWYoJHN0YXRlID09IGluLCAxLCAwKTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vLyBDcmVhdGVzIGEgc2NhbGluZyB0cmFuc2l0aW9uLiBBIHNjYWxlIG9mIGAxYCBtZWFucyB0aGUgZWxlbWVudCBpcyB0aGUgc2FtZSBzaXplLiBMYXJnZXIgbnVtYmVycyBtYWtlIHRoZSBlbGVtZW50IGJpZ2dlciwgd2hpbGUgbnVtYmVycyBsZXNzIHRoYW4gMSBtYWtlIHRoZSBlbGVtZW50IHNtYWxsZXIuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc3RhdGUgW2luXSAtIFN0YXRlIHRvIHRyYW5zaXRpb24gdG8uXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRmcm9tIFsxLjVdIC0gU2l6ZSB0byBzdGFydCBhdC5cbi8vLyBAcGFyYW0ge051bWJlcn0gJGZyb20gWzFdIC0gU2l6ZSB0byBlbmQgYXQuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkZmFkZSBbdHJ1ZV0gLSBTZXQgdG8gYHRydWVgIHRvIGZhZGUgdGhlIGVsZW1lbnQgaW4gb3Igb3V0IHNpbXVsdGFuZW91c2x5LlxuLy8vIEBwYXJhbSB7RHVyYXRpb259ICRkdXJhdGlvbiBbbnVsbF0gLSBMZW5ndGggKHNwZWVkKSBvZiB0aGUgdHJhbnNpdGlvbi5cbi8vLyBAcGFyYW0ge0tleXdvcmR8RnVuY3Rpb259ICR0aW1pbmcgW251bGxdIC0gRWFzaW5nIG9mIHRoZSB0cmFuc2l0aW9uLlxuLy8vIEBwYXJhbSB7RHVyYXRpb259ICRkZWxheSBbbnVsbF0gLSBEZWxheSBpbiBzZWNvbmRzIG9yIG1pbGxpc2Vjb25kcyBiZWZvcmUgdGhlIHRyYW5zaXRpb24gc3RhcnRzLlxuQG1peGluIG11aS16b29tKFxuICAkc3RhdGU6IGluLFxuICAkZnJvbTogMS41LFxuICAkdG86IDEsXG4gICRmYWRlOiBtYXAtZ2V0KCRtb3Rpb24tdWktc2V0dGluZ3MsIHNjYWxlLWFuZC1mYWRlKSxcbiAgJGR1cmF0aW9uOiBudWxsLFxuICAkdGltaW5nOiBudWxsLFxuICAkZGVsYXk6IG51bGxcbikge1xuICAkc2NhbGU6IHpvb20oJGZyb20sICR0byk7XG5cbiAgQGluY2x1ZGUgdHJhbnNpdGlvbi1zdGFydCgkc3RhdGUpIHtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uLWJhc2ljcygkZHVyYXRpb24sICR0aW1pbmcsICRkZWxheSk7XG4gICAgQGluY2x1ZGUgLW11aS1rZXlmcmFtZS1nZXQoJHNjYWxlLCAwKTtcblxuICAgIEBpZiAkZmFkZSB7XG4gICAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gICAgICBvcGFjaXR5OiBpZigkc3RhdGUgPT0gaW4sIDAsIDEpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIHRyYW5zaXRpb24tZW5kKCRzdGF0ZSkge1xuICAgIEBpbmNsdWRlIC1tdWkta2V5ZnJhbWUtZ2V0KCRzY2FsZSwgMTAwKTtcblxuICAgIEBpZiAkZmFkZSB7XG4gICAgICBvcGFjaXR5OiBpZigkc3RhdGUgPT0gaW4sIDEsIDApO1xuICAgIH1cbiAgfVxufVxuIiwiLy8vIENyZWF0ZXMgYSBzcGlubmluZyB0cmFuc2l0aW9uIGJ5IHJvdGF0aW5nIHRoZSBlbGVtZW50LiBUaGUgYHR1cm5gIHVuaXQgaXMgdXNlZCB0byBzcGVjaWZ5IGhvdyBmYXIgdG8gcm90YXRlLiBgMXR1cm5gIGlzIGVxdWFsIHRvIGEgMzYwLWRlZ3JlZSBzcGluLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHN0YXRlIFtpbl0gLSBTdGF0ZSB0byB0cmFuc2l0aW9uIHRvLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGRpcmVjdGlvbiBbY3ddIC0gRGlyZWN0aW9uIHRvIHNwaW4uIFNob3VsZCBiZSBgY3dgIChjbG9ja3dpc2UpIG9yIGBjY3dgIChjb3VudGVyY2xvY2t3aXNlKS5cbi8vLyBAcGFyYW0ge051bWJlcn0gJGFtb3VudCBbMC43NXR1cm5dIC0gQW1vdW50IHRvIGVsZW1lbnQgdGhlIGVsZW1lbnQuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkZmFkZSBbZmFsc2VdIC0gU2V0IHRvIGB0cnVlYCB0byBmYWRlIHRoZSBlbGVtZW50IGluIG9yIG91dCBzaW11bHRhbmVvdXNseS5cbi8vLyBAcGFyYW0ge0R1cmF0aW9ufSAkZHVyYXRpb24gW251bGxdIC0gTGVuZ3RoIChzcGVlZCkgb2YgdGhlIHRyYW5zaXRpb24uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfEZ1bmN0aW9ufSAkdGltaW5nIFtudWxsXSAtIEVhc2luZyBvZiB0aGUgdHJhbnNpdGlvbi5cbi8vLyBAcGFyYW0ge0R1cmF0aW9ufSAkZGVsYXkgW251bGxdIC0gRGVsYXkgaW4gc2Vjb25kcyBvciBtaWxsaXNlY29uZHMgYmVmb3JlIHRoZSB0cmFuc2l0aW9uIHN0YXJ0cy5cbkBtaXhpbiBtdWktc3BpbihcbiAgJHN0YXRlOiBpbixcbiAgJGRpcmVjdGlvbjogY3csXG4gICRhbW91bnQ6IDAuNzV0dXJuLFxuICAkZmFkZTogbWFwLWdldCgkbW90aW9uLXVpLXNldHRpbmdzLCBzcGluLWFuZC1mYWRlKSxcbiAgJGR1cmF0aW9uOiBudWxsLFxuICAkdGltaW5nOiBudWxsLFxuICAkZGVsYXk6IG51bGxcbikge1xuICAkc3Bpbjogc3Bpbigkc3RhdGUsICRkaXJlY3Rpb24sICRhbW91bnQpO1xuXG4gIEBpbmNsdWRlIHRyYW5zaXRpb24tc3RhcnQoJHN0YXRlKSB7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbi1iYXNpY3MoJGR1cmF0aW9uLCAkdGltaW5nLCAkZGVsYXkpO1xuICAgIEBpbmNsdWRlIC1tdWkta2V5ZnJhbWUtZ2V0KCRzcGluLCAwKTtcblxuICAgIEBpZiAkZmFkZSB7XG4gICAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gICAgICBvcGFjaXR5OiBpZigkc3RhdGUgPT0gaW4sIDAsIDEpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIHRyYW5zaXRpb24tZW5kKCRzdGF0ZSkge1xuICAgIEBpbmNsdWRlIC1tdWkta2V5ZnJhbWUtZ2V0KCRzcGluLCAxMDApO1xuXG4gICAgQGlmICRmYWRlIHtcbiAgICAgIG9wYWNpdHk6IGlmKCRzdGF0ZSA9PSBpbiwgMSwgMCk7XG4gICAgfVxuICB9XG59XG4iLCIvLy8gQ3JlYXRlcyBhIGtleWZyYW1lIGZyb20gb25lIG9yIG1vcmUgZWZmZWN0IGZ1bmN0aW9ucyBhbmQgYXNzaWducyBpdCB0byB0aGUgZWxlbWVudCBieSBhZGRpbmcgdGhlIGBhbmltYXRpb24tbmFtZWAgcHJvcGVydHkuXG4vLy8gQHBhcmFtIHtGdW5jdGlvbn0gJGVmZmVjdHMuLi4gLSBPbmUgb3IgbW9yZSBlZmZlY3QgZnVuY3Rpb25zIHRvIGJ1aWxkIHRoZSBrZXlmcmFtZSB3aXRoLlxuQG1peGluIG11aS1hbmltYXRpb24oJGFyZ3MuLi4pIHtcbiAgJG5hbWU6IG1hcC1nZXQoLW11aS1wcm9jZXNzLWFyZ3MoJGFyZ3MuLi4pLCBuYW1lKTtcbiAgQGluY2x1ZGUgbXVpLWtleWZyYW1lcygkbmFtZSwgJGFyZ3MuLi4pO1xuICBhbmltYXRpb24tbmFtZTogdW5xdW90ZSgkbmFtZSk7XG59XG4iLCIvLyBTdHJpcCB1bml0IGZyb20gYSBudW1iZXIgdmFsdWVcbi8vIFVzYWdlIDpcbi8vICAgIHN0cmlwLXVuaXRzKDE2cHgpO1xuLy8gV2lsbCByZXR1cm4gXCIxNlwiIChhcyBhIG51bWJlcilcbkBmdW5jdGlvbiBzdHJpcC11bml0cygkbnVtYmVyKSB7XG4gICAgQHJldHVybiAkbnVtYmVyIC8gKCRudW1iZXIgKiAwICsgMSk7XG59XG5cbi8qXG4gKiBBZGQgc29tZSBydWxlcyB0byBtdWx0aXBseSBhIHNpemUgKHVzaW5nIEVNKSwgZGVmYXVsdCBpc1xuICogZm9yICdmb250LXNpemUnIHByb3BlcnR5XG4gKlxuICogVXNpbmc6XG4gKlxuICogICAgIC5mb297XG4gKiAgICAgICAgIEBpbmNsdWRlIGZvbnQtbXVsdGlwbGllcigyIDQgNik7XG4gKiAgICAgfVxuICpcbiAqIFdpbGwgcHJvZHVjZSBzb21ldGhpbmcgbGlrZTpcbiAqXG4gKiAgICAuZm9vLjJ4eyBmb250LXNpemU6IDJlbSB9XG4gKiAgICAuZm9vLjR4eyBmb250LXNpemU6IDRlbSB9XG4gKiAgICAuZm9vLjR4eyBmb250LXNpemU6IDZlbSB9XG4gKlxuICogVXNpbmcgYWxsIG9wdGlvbmFsIGFyZ3VtZW50czpcbiAqXG4gKiAgICAgLmZvb3tcbiAqICAgICAgICAgQGluY2x1ZGUgZm9udC1tdWx0aXBsaWVyKDIgNCA2LCAkc2VsZWN0b3ItcHJlZml4OiBcImljb25cIiwgJHNlbGVjdG9yLXBzZXVkbzogXCJiZWZvcmVcIiwgJHByb3BlcnR5OiBcInBhZGRpbmctbGVmdFwiKTtcbiAqICAgICB9XG4gKlxuICogV2lsbCBwcm9kdWNlIHNvbWV0aGluZyBsaWtlOlxuICpcbiAqICAgIC5mb28uaWNvbi0yeDo6YmVmb3JleyBwYWRkaW5nLWxlZnQ6IDJlbSB9XG4gKiAgICAuZm9vLmljb24tNHg6OmJlZm9yZXsgcGFkZGluZy1sZWZ0OiA0ZW0gfVxuICogICAgLmZvby5pY29uLTR4OjpiZWZvcmV7IHBhZGRpbmctbGVmdDogNmVtIH1cbiAqXG4gKi9cbkBtaXhpbiBmb250LW11bHRpcGxpZXIoJHNpemVzLCAkc2VsZWN0b3ItcHJlZml4OiBudWxsLCAkc2VsZWN0b3ItcHNldWRvOiBudWxsLCAkcHJvcGVydHk6IFwiZm9udC1zaXplXCIpIHtcbiAgICAkcHJlZml4OiBpZigkc2VsZWN0b3ItcHJlZml4LCBcIiN7JHNlbGVjdG9yLXByZWZpeH0tXCIsIFwiXCIpO1xuICAgICRwc2V1ZG86IGlmKCRzZWxlY3Rvci1wc2V1ZG8sIFwiOjojeyRzZWxlY3Rvci1wc2V1ZG99XCIsIFwiXCIpO1xuICAgIEBlYWNoICRzaXplIGluICRzaXplcyB7XG4gICAgICAgICYuI3skcHJlZml4fSN7JHNpemV9eCN7JHBzZXVkb30ge1xuICAgICAgICAgICAgI3skcHJvcGVydHl9OiAjeyRzaXplfXJlbTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLy8gTWl4aW4gdG8gbWFrZSBwb3NpdGlvbm5pbmdcbkBtaXhpbiBwb3NpdGlvbm5pbmcoJG5hbWU6IGFic29sdXRlLCAkdG9wOiBudWxsLCAkcmlnaHQ6IG51bGwsICRib3R0b206IG51bGwsICRsZWZ0OiBudWxsKSB7XG4gICAgcG9zaXRpb246ICRuYW1lO1xuICAgIEBpZiAkdG9wIHtcbiAgICAgICAgdG9wOiAkdG9wO1xuICAgIH1cbiAgICBAaWYgJHJpZ2h0IHtcbiAgICAgICAgcmlnaHQ6ICRyaWdodDtcbiAgICB9XG4gICAgQGlmICRib3R0b20ge1xuICAgICAgICBib3R0b206ICRib3R0b207XG4gICAgfVxuICAgIEBpZiAkbGVmdCB7XG4gICAgICAgIGxlZnQ6ICRsZWZ0O1xuICAgIH1cbn1cblxuXG4vKlxuICogTWl4aW4gdG8gYWRkIGZvbnQgYW5kIGJhY2tncm91bmQgY29sb3JzIGludG8gYSBjb250YWluZXIgYW5kIGVuZm9yY2UgdGhlc2VcbiAqIGNvbG9ycyBvbiBpdHMgZWxlbWVudHNcbiAqL1xuQG1peGluIGVtZW5jaWEtY29udGFpbmVyLWNvbG9ycygkZm9udC1jb2xvciwgJGJhY2tncm91bmQtY29sb3IsICRoMS1jb2xvcjogbnVsbCwgJGgyLWNvbG9yOiBudWxsLCAkaDMtY29sb3I6IG51bGwsICRoNC1jb2xvcjogbnVsbCwgJGg1LWNvbG9yOiBudWxsLCAkbGluay1jb2xvcjogbnVsbCwgJGxpbmstaG92ZXItY29sb3I6IG51bGwpIHtcbiAgICBjb2xvcjogJGZvbnQtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQtY29sb3I7XG4gICAgLy8gb3B0aW9ubmFsIGN1c3RvbSB0aXRsZXMgZm9udCBjb2xvciwgZmFsbGJhY2sgdG8gY29tbW9uIGZvbnQgY29sb3JcbiAgICAkdGl0bGUtbGV2ZWwtMS1jb2xvcjogaWYoJGgxLWNvbG9yLCAkaDEtY29sb3IsICRmb250LWNvbG9yKTtcbiAgICAkdGl0bGUtbGV2ZWwtMi1jb2xvcjogaWYoJGgyLWNvbG9yLCAkaDItY29sb3IsICRmb250LWNvbG9yKTtcbiAgICAkdGl0bGUtbGV2ZWwtMy1jb2xvcjogaWYoJGgzLWNvbG9yLCAkaDMtY29sb3IsICRmb250LWNvbG9yKTtcbiAgICAkdGl0bGUtbGV2ZWwtNC1jb2xvcjogaWYoJGg0LWNvbG9yLCAkaDQtY29sb3IsICRmb250LWNvbG9yKTtcbiAgICAkdGl0bGUtbGV2ZWwtNS1jb2xvcjogaWYoJGg1LWNvbG9yLCAkaDUtY29sb3IsICRmb250LWNvbG9yKTtcbiAgICAkY29tbW9uLWxpbmstY29sb3I6IGlmKCRsaW5rLWNvbG9yLCAkbGluay1jb2xvciwgaW5oZXJpdCk7XG4gICAgJGNvbW1vbi1saW5rLWhvdmVyLWNvbG9yOiBpZigkbGluay1ob3Zlci1jb2xvciwgJGxpbmstaG92ZXItY29sb3IsIGluaGVyaXQpO1xuXG4gICAgaDEsIC50aXRsZS0xe1xuICAgICAgICBjb2xvcjogJHRpdGxlLWxldmVsLTEtY29sb3I7XG4gICAgfVxuICAgIGgyLCAudGl0bGUtMntcbiAgICAgICAgY29sb3I6ICR0aXRsZS1sZXZlbC0yLWNvbG9yO1xuICAgIH1cbiAgICBoMywgLnRpdGxlLTN7XG4gICAgICAgIGNvbG9yOiAkdGl0bGUtbGV2ZWwtMy1jb2xvcjtcbiAgICB9XG4gICAgaDQsIC50aXRsZS00e1xuICAgICAgICBjb2xvcjogJHRpdGxlLWxldmVsLTQtY29sb3I7XG4gICAgfVxuICAgIGg1LCAudGl0bGUtNXtcbiAgICAgICAgY29sb3I6ICR0aXRsZS1sZXZlbC01LWNvbG9yO1xuICAgIH1cbiAgICBoNiwgLnRpdGxlLTZ7XG4gICAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIH1cblxuICAgIGE6bm90KC5idXR0b24pe1xuICAgICAgICBjb2xvcjogJGNvbW1vbi1saW5rLWNvbG9yO1xuICAgICAgICAmOmhvdmVye1xuICAgICAgICAgICAgY29sb3I6ICRjb21tb24tbGluay1ob3Zlci1jb2xvcjtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuXG4vKlxuICogVmVuZG9yIHByZWZpeCBmb3IgbGFzdCBicmVhay1pbnNpZGUgc3ludGF4IChub3Qgc3VwcG9ydGVkIGluIENvbXBhc3MgMC54KVxuICovXG5AbWl4aW4gYnJlYWstaW5zaWRlKCRrZXl3b3JkOiBhdXRvKSB7XG4gICAgLXdlYmtpdC1jb2x1bW4tYnJlYWstaW5zaWRlOiAka2V5d29yZDtcbiAgICAgICAgICAgIHBhZ2UtYnJlYWstaW5zaWRlOiAka2V5d29yZDtcbiAgICAgICAgICAgICAgICBicmVhay1pbnNpZGU6ICRrZXl3b3JkO1xufVxuXG4vLyBCYXNlIHN0dWZmIHRvIGFkZCBmb3IgY29udGVudCB3aXRoIEZvdW5kYXRpb25cbkBtaXhpbiBnbG9iYWwtYWRkb25zIHtcbiAgICAvLyBJbWFnZSBlbiBibG9jIGNlbnRyw6lcbiAgICBpbWcuY2VudGVyZWQge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICB9XG4gICAgLy8gRXRpcmUgcHJvcG9ydGlvbmVsbGVtZW50IGwnaW1hZ2Ugw6AgbGEgbGFyZ2V1ciBkZSBzb24gY29udGVuZXVyXG4gICAgaW1nLmV4cGFuZGVkIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICB9XG59XG5cblxuXG4vL0NhbGMgcGx1Z2luXG5AbWl4aW4gY2FsYygkcHJvcGVydHksICRleHByZXNzaW9uKSB7XG4gICAgI3skcHJvcGVydHl9OiAtbW96LWNhbGMoI3skZXhwcmVzc2lvbn0pO1xuICAgICN7JHByb3BlcnR5fTogLXdlYmtpdC1jYWxjKCN7JGV4cHJlc3Npb259KTtcbiAgICAjeyRwcm9wZXJ0eX06IGNhbGMoI3skZXhwcmVzc2lvbn0pO1xufVxuXG4vL3RyYW5zbGF0ZSBwbHVnaW5cbkBtaXhpbiB0cmFuc2xhdGUoJHgsICR5KSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgkeCwgJHkpO1xuICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUoJHgsICR5KTtcbiAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZSgkeCwgJHkpO1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSgkeCwgJHkpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKCR4LCAkeSk7XG59XG5cbi8vIFB1dCBhIHRyaWFuZ2xlIGljb24gYXMgYSBwc2V1ZG8gZWxlbWVudFxuQG1peGluIGFycm93X2FmdGVyKCRjb2xvcjogYmxhY2ssJHdpZHRoOiAyMCkge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXJnaW4tYm90dG9tOiAkd2lkdGggLSAxICsgcHg7XG4gICAgJjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHJpZ2h0OiA1MCU7XG4gICAgICAgIHRvcDogMTAwJTtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNmb3JtKHRyYW5zbGF0ZSg1MCUsIDAlKSk7XG4gICAgICAgIHotaW5kZXg6IDIwO1xuICAgICAgICB3aWR0aDogMDtcbiAgICAgICAgaGVpZ2h0OiAwO1xuICAgICAgICBib3JkZXItcmlnaHQ6ICR3aWR0aCArIHB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICBib3JkZXItbGVmdDogJHdpZHRoICsgcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgIGJvcmRlci10b3A6ICR3aWR0aCArIHB4IHNvbGlkICRjb2xvcjtcbiAgICB9XG59XG5cbi8vIFNvbWUgdGV4dCBzaGFkb3cgZm9yIGEgbGlua1xuQG1peGluIGFjdGl2ZV9saW5rIHtcbiAgICB0ZXh0LXNoYWRvdzogMHB4IDBweCAxMHB4IHJnYmEoMCwgMCwgMCwgMC44KTtcbn1cblxuLy8gQnVpbGQgYSBsaXR0bGUgdGhpbiBsaW5lXG5AbWl4aW4gaGxpbmUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGhlaWdodDogMnB4O1xuICAgIGJvcmRlcjogMDtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICBwYWRkaW5nOiAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGJsYWNrLDAuMik7XG4gICAgd2lkdGg6IDMwJTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbn1cblxuLy8gQ29tbW9uIHRyYW5zcGFyZW50IEJHXG5AbWl4aW4gYmdfdHJhbnNwYXJlbnQge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMCk7XG59XG5cbi8vIFVudXNlZnVsIG1peGluIHRvIHVzZSBib3gtc2hhZG93IHdpdGggZGVwcmVjYXJlZCB2ZW5kb3IgcHJlZml4ZXMuLlxuQG1peGluIGJveC1zaGFkb3ctbW9yZSgkdG9wLCAkbGVmdCwgJGJsdXIsICRjb2xvciwgJGluc2V0OiBcIlwiKSB7XG4gICAgLXdlYmtpdC1ib3gtc2hhZG93OiAkdG9wICRsZWZ0ICRibHVyICRjb2xvciAjeyRpbnNldH07XG4gICAgLW1vei1ib3gtc2hhZG93OiAkdG9wICRsZWZ0ICRibHVyICRjb2xvciAjeyRpbnNldH07XG4gICAgYm94LXNoYWRvdzogJHRvcCAkbGVmdCAkYmx1ciAkY29sb3IgI3skaW5zZXR9O1xufVxuXG5AbWl4aW4gc3Znbm9yIHtcbiAgICAjYmxhY2sge1xuICAgICAgICBmaWxsOiAkYmxhY2s7XG4gICAgICAgICoge1xuICAgICAgICAgICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTpmaWxsO1xuICAgICAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjowLjJzO1xuICAgICAgICAgICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246ZWFzZS1pbjtcbiAgICAgICAgICAgIGZpbGw6ICRibGFjaztcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLy8vLypzdmcgaW1hZ2VzKi9cbkBtaXhpbiBzdmdpbnZlcnMge1xuXG59XG4iLCJcblxuLy8gQXZhaWxhYmxlIGRlZmF1bHQgcGVyY2VudGFnZSBzaXplcyAocmVhbCB1c2VkIHNpemVzIHNob3VsZCBiZSBpbiBzZXR0aW5ncylcbi8vXG4vLyBTaXplcyBsaWtlICcxOCcgaXMgd2hlbiB5b3Ugd2FudCBhICcyMCUnIGNvbnRhaW5lciBidXQgd2l0aCAnMSUnIGhvcml6b250YWxcbi8vIG1hcmdpbmcgKGFrYTogMSUgKyAxOCUgKyAxJSA9IDIwJSlcbiRmbGV4LWdyaWQtc2l6ZXM6IDIzIDI1IDMxLjMzMzMgMzMuMzMzMyA0OCA1MCA3MyA3NSA5OCAxMDAgIWRlZmF1bHQ7XG4vKlxuICogQ3JlYXRlIGZsZXggY2VsbCB3aWR0aCBydWxlc1xuICovXG5AbWl4aW4gLWVtZW5jaWEtZmxleC1jZWxsLXdpZHRoKCR3aWR0aCkge1xuICAvL2Rpc3BsYXk6IGZsZXg7XG4gICBmbGV4OjEgMCAkd2lkdGg7XG4gIG1heC13aWR0aDogJHdpZHRoO1xufVxuXG4vKlxuICogTWl4aW4gdG8gY3JlYXRlIGNlbGxzIHdpZHRocyB3aXRoIGZsZXhib3hcbiAqXG4gKiBXaWxsIHByb2R1Y2UgcmVzcG9uc2l2ZSBjbGFzcyBsaWtlOlxuICpcbiAqICAgLnNtYWxsLTUwey4uLn1cbiAqICAgLm1lZGl1bS01MHsuLi59XG4gKiAgIGV0Yy4uXG4gKlxuICogRGVwZW5kaW5nIG9uIG1peGluIGRlY2xhcmF0aW9ucy5cbiAqXG4gKiBVc2FibGUgaW4gY29uanVuY3Rpb24gd2l0aCBcIi5jZWxsXCIuXG4gKi9cbkBtaXhpbiAtZW1lbmNpYS1mbGV4LWdyaWQtY2xhc3Nlcygkc2l6ZXMsICR2aWV3cG9ydDogc21hbGwpIHtcbiAgQGVhY2ggJHNpemUgaW4gJHNpemVzIHtcbiAgICAkd2lkdGg6IHBlcmNlbnRhZ2UoJHNpemUgLyAxMDApO1xuICAgICRuYW1lOiBmbG9vcigkc2l6ZSk7XG4gICAgLy8gV2lsbCBuYW1lIGl0IGxpa2UgXCImLnNtYWxsLTUwXCJcbiAgICAmID4gLiN7JHZpZXdwb3J0fS0jeyRuYW1lfSB7XG4gICAgICBAaW5jbHVkZSAtZW1lbmNpYS1mbGV4LWNlbGwtd2lkdGgoJHdpZHRoKTtcbiAgICB9XG4gIH1cbn1cblxuLypcbiAqIE1peGluIHRvIGNyZWF0ZSBmbGV4Ym94IGRpc3BsYXkgY2xhc3Nlc1xuICpcbiAqIFdpbGwgcHJvZHVjZSBnbG9iYWwgYW5kIHJlc3BvbnNpdmUgY2xhc3NlcyBsaWtlOlxuICpcbiAqICAgLmZsZXh7Li4ufVxuICogICAuZmxleC1zbWFsbHsuLi59XG4gKiAgIC5mbGV4LW1lZGl1bXsuLi59XG4gKiAgIGV0Yy4uXG4gKlxuICovXG5AbWl4aW4gZW1lbmNpYS1mbGV4LWRpc3BsYXkoJHZpZXdwb3J0OiBudWxsKSB7XG4gICRwcmVmaXg6IGlmKCR2aWV3cG9ydCwgXCItI3skdmlld3BvcnR9XCIsIFwiXCIpO1xuICAuZmxleCN7JHByZWZpeH0ge1xuICAgIGRpc3BsYXk6ZmxleDtcbiAgfVxufVxuXG4vKlxuICogTWl4aW4gdG8gY3JlYXRlIFwic2ltcGxlXCIgY2VsbHMgd2lkdGhzXG4gKiBNaXhpbiB0byBzaW11bGF0ZSBpbmxpbmUgbGlzdCwgdXNlZCBhcyBhIGZhbGxiYWNrXG4gKlxuICogUmVwcm9kdWNlIHRoZSBzYW1lIG5hbWUgcGF0dGVybiBhcyBpbiBtaXhpbiBcIi1lbWVuY2lhLWZsZXgtZ3JpZC1jbGFzc2VzXCJcbiAqL1xuQG1peGluIC1lbWVuY2lhLXNpbXVsYXRlLWdyaWQtY29sdW1ucygkc2l6ZXMsICR2aWV3cG9ydDogc21hbGwpIHtcbiAgQGVhY2ggJHNpemUgaW4gJHNpemVzIHtcbiAgICAkd2lkdGg6ICRzaXplIC8gMTAwO1xuICAgICRuYW1lOiBmbG9vcigkc2l6ZSk7XG4gICAgLy8gV2lsbCBuYW1lIGl0IGxpa2UgXCImLnNtYWxsLTUwXCJcbiAgICAmID4gLiN7JHZpZXdwb3J0fS0jeyRuYW1lfSB7XG4gICAgICB3aWR0aDogcGVyY2VudGFnZSgkd2lkdGgpO1xuICAgIH1cbiAgfVxufVxuXG4vKlxuICogSW5saW5lIGxpc3Qgd2l0aCBmbGV4Ym94XG4gKi9cbi8vIEZvciBicm93c2VyIHdpdGggZmxleGJveCBjYXBhYmlsaXR5IChkZXRlY3RlZCBmcm9tIG1vZGVybml6cilcbmh0bWx7XG4gIEBpbmNsdWRlIGVtZW5jaWEtZmxleC1kaXNwbGF5O1xuICBAbWVkaWEgI3skc21hbGwtdXB9IHtcbiAgICBAaW5jbHVkZSBlbWVuY2lhLWZsZXgtZGlzcGxheSgkdmlld3BvcnQ6IHNtYWxsKTtcbiAgfVxuICBAbWVkaWEgI3skbWVkaXVtLXVwfSB7XG4gICAgQGluY2x1ZGUgZW1lbmNpYS1mbGV4LWRpc3BsYXkoJHZpZXdwb3J0OiBtZWRpdW0pO1xuICB9XG4gIEBtZWRpYSAjeyRsYXJnZS11cH0ge1xuICAgIEBpbmNsdWRlIGVtZW5jaWEtZmxleC1kaXNwbGF5KCR2aWV3cG9ydDogbGFyZ2UpO1xuICB9XG4gIEBtZWRpYSAjeyR4bGFyZ2UtdXB9IHtcbiAgICBAaW5jbHVkZSBlbWVuY2lhLWZsZXgtZGlzcGxheSgkdmlld3BvcnQ6IHhsYXJnZSk7XG4gIH1cbiAgQG1lZGlhICN7JHh4bGFyZ2UtdXB9IHtcbiAgICBAaW5jbHVkZSBlbWVuY2lhLWZsZXgtZGlzcGxheSgkdmlld3BvcnQ6IHh4bGFyZ2UpO1xuICB9XG4gIC5mbGV4LWdyaWQge1xuICAgIGRpc3BsYXk6ZmxleDtcbiAgICAvL0BpbmNsdWRlIGZsZXgtd3JhcCh3cmFwKTtcbiAgICAvLyBFbmZvcmNlIG5vIGhvcml6b250YWwgbWFyZ2lucyB0byBhdm9pZCBiYWQgY2VsbCB3aWR0aHNcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG5cbiAgICAmID4gLmNlbGwge1xuICAgICAgLy8gRGVmYXVsdCBpcyB0byBoYXZlIHRoZSBzYW1lIHdpZHRoIGFuZCBoZWlnaHQgZm9yIGFsbCBpdGVtcyB1c2luZ1xuICAgICAgLy8gdGhlIGxhcmdlc3QgdmFsdWUgZnJvbSBhbGwgaXRlbXMgKGRlZmF1bHQgZmxleCBkaXNwbGF5IGJlaGF2aW9yKVxuICAgICAgZmxleDoxIDAgYXV0bztcbiAgICAgIG1heC13aWR0aDogYXV0bztcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcblxuICAgICAgLy8gTGFzdCBlbGVtZW50IHBhcmFncmFwaCBkb250IGhhdmUgYm90dG9tIG1hcmdpblxuICAgICAgJiA+IHA6bGFzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgIH1cblxuICAgICAgLypcbiAgICAgICAqIFNvbWUgY2VsbCBjb250ZW50cyBhbGlnbm1lbnRzXG4gICAgICAgKi9cbiAgICAgIC8vIEFsbCBjb250YWluZXIgZWxlbWVudHMgYXJlIHZlcnRpY2FsbHkgc3RhY2tlZCBvbiBjZW50ZXJcbiAgICAgICYuZmxleC12ZXJ0aWNhbC1zdGFydC1zdGFjayB7XG4gICAgICAgIGRpc3BsYXk6ZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246Y29sdW1uO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1zdGFydDtcbiAgICAgIH1cbiAgICAgIC8vIEFsbCBjb250YWluZXIgZWxlbWVudHMgYXJlIHZlcnRpY2FsbHkgc3RhY2tlZCBvbiBjZW50ZXJcbiAgICAgICYuZmxleC12ZXJ0aWNhbC1lbmQtc3RhY2sge1xuICAgICAgICBkaXNwbGF5OmZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOmNvbHVtbjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OmZsZXgtZW47XG4gICAgICB9XG4gICAgICAvLyBBbGwgY29udGFpbmVyIGVsZW1lbnRzIGFyZSB2ZXJ0aWNhbGx5IHN0YWNrZWQgb24gY2VudGVyXG4gICAgICAmLmZsZXgtdmVydGljYWwtY2VudGVyLXN0YWNrIHtcbiAgICAgICAgZGlzcGxheTpmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjpjb2x1bW47XG4gICAgICAgIGp1c3RpZnktY29udGVudDpjZW50ZXI7XG4gICAgICB9XG4gICAgICAvLyBBbGwgY29udGFpbmVyIGVsZW1lbnRzIGFyZSBzdGFja2VkIHdpdGggc3BhY2UgYXJvdW5kXG4gICAgICAmLmZsZXgtc3BhY2UtYXJvdW5kLXN0YWNrIHtcbiAgICAgICAgZGlzcGxheTpmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjpjb2x1bW47XG4gICAgICAgIGp1c3RpZnktY29udGVudDpzcGFjZS1hcm91bmQ7XG4gICAgICB9XG4gICAgICAvLyBBbGwgY29udGFpbmVyIGVsZW1lbnRzIGFyZSBzdGFja2VkIHdpdGggc3BhY2UgYmV0d2VlblxuICAgICAgJi5mbGV4LXNwYWNlLWJldHdlZW4tc3RhY2sge1xuICAgICAgICBkaXNwbGF5OmZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOmNvbHVtbjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OnNwYWNlLWJldHdlZW47XG4gICAgICB9XG4gICAgfVxuXG4gICAgLypcbiAgICAgKiBSZXNwb25zaXZlIGNlbGwgc2l6ZXNcbiAgICAgKi9cbiAgICBAbWVkaWEgI3skc21hbGwtdXB9IHtcbiAgICAgIEBpbmNsdWRlIC1lbWVuY2lhLWZsZXgtZ3JpZC1jbGFzc2VzKCRmbGV4LWdyaWQtc2l6ZXMsICR2aWV3cG9ydDogc21hbGwpO1xuICAgIH1cbiAgICBAbWVkaWEgI3skbWVkaXVtLXVwfSB7XG4gICAgICBAaW5jbHVkZSAtZW1lbmNpYS1mbGV4LWdyaWQtY2xhc3NlcygkZmxleC1ncmlkLXNpemVzLCAkdmlld3BvcnQ6IG1lZGl1bSk7XG4gICAgfVxuICAgIEBtZWRpYSAjeyRsYXJnZS11cH0ge1xuICAgICAgQGluY2x1ZGUgLWVtZW5jaWEtZmxleC1ncmlkLWNsYXNzZXMoJGZsZXgtZ3JpZC1zaXplcywgJHZpZXdwb3J0OiBsYXJnZSk7XG4gICAgfVxuICAgIEBtZWRpYSAjeyR4bGFyZ2UtdXB9IHtcbiAgICAgIEBpbmNsdWRlIC1lbWVuY2lhLWZsZXgtZ3JpZC1jbGFzc2VzKCRmbGV4LWdyaWQtc2l6ZXMsICR2aWV3cG9ydDogeGxhcmdlKTtcbiAgICB9XG4gICAgQG1lZGlhICN7JHh4bGFyZ2UtdXB9IHtcbiAgICAgIEBpbmNsdWRlIC1lbWVuY2lhLWZsZXgtZ3JpZC1jbGFzc2VzKCRmbGV4LWdyaWQtc2l6ZXMsICR2aWV3cG9ydDogeHhsYXJnZSk7XG4gICAgfVxuLy9UT1RPVE9UT1xuICAgIC8qXG4gICAgICogUmVzcG9uc2l2ZSBwYWRkaW5nIGluIGFsbCBjb250YWluZWQgY2VsbHNcbiAgICAgKi9cbiAgICAmLnBhZGRlZCAuY2VsbCB7XG4gICAgICBwYWRkaW5nOiAwIDElO1xuICAgIH1cbiAgICBAbWVkaWEgI3skc21hbGwtdXB9IHtcbiAgICAgICYuc21hbGwtcGFkZGVkIC5jZWxsIHtcbiAgICAgICAgcGFkZGluZzogMCAxJTtcbiAgICAgIH1cbiAgICB9XG4gICAgQG1lZGlhICN7JG1lZGl1bS11cH0ge1xuICAgICAgJi5tZWRpdW0tcGFkZGVkIC5jZWxsIHtcbiAgICAgICAgcGFkZGluZzogMCAxJTtcbiAgICAgIH1cbiAgICB9XG4gICAgQG1lZGlhICN7JGxhcmdlLXVwfSB7XG4gICAgICAmLmxhcmdlLXBhZGRlZCAuY2VsbCB7XG4gICAgICAgIHBhZGRpbmc6IDAgMSU7XG4gICAgICB9XG4gICAgfVxuICAgIEBtZWRpYSAjeyR4bGFyZ2UtdXB9IHtcbiAgICAgICYueGxhcmdlLXBhZGRlZCAuY2VsbCB7XG4gICAgICAgIHBhZGRpbmc6IDAgMSU7XG4gICAgICB9XG4gICAgfVxuICAgIEBtZWRpYSAjeyR4eGxhcmdlLXVwfSB7XG4gICAgICAmLnh4bGFyZ2UtcGFkZGVkIC5jZWxsIHtcbiAgICAgICAgcGFkZGluZzogMCAxJTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvKlxuICAgICAqIFJlc3BvbnNpdmUgbWFyZ2luIG9uIGFsbCBjb250YWluZWQgY2VsbHNcbiAgICAgKi9cbiAgICAmLm1hcmdlZCAuY2VsbCB7XG4gICAgICBtYXJnaW46IDAgMSU7XG4gICAgfVxuICAgIEBtZWRpYSAjeyRzbWFsbC11cH0ge1xuICAgICAgJi5zbWFsbC1tYXJnZWQgLmNlbGwge1xuICAgICAgICBtYXJnaW46IDAgMSU7XG4gICAgICB9XG4gICAgfVxuICAgIEBtZWRpYSAjeyRtZWRpdW0tdXB9IHtcbiAgICAgICYubWVkaXVtLW1hcmdlZCAuY2VsbCB7XG4gICAgICAgIG1hcmdpbjogMCAxJTtcbiAgICAgIH1cbiAgICB9XG4gICAgQG1lZGlhICN7JGxhcmdlLXVwfSB7XG4gICAgICAmLmxhcmdlLW1hcmdlZCAuY2VsbCB7XG4gICAgICAgIG1hcmdpbjogMCAxJTtcbiAgICAgIH1cbiAgICB9XG4gICAgQG1lZGlhICN7JHhsYXJnZS11cH0ge1xuICAgICAgJi54bGFyZ2UtbWFyZ2VkIC5jZWxsIHtcbiAgICAgICAgbWFyZ2luOiAwIDElO1xuICAgICAgfVxuICAgIH1cbiAgICBAbWVkaWEgI3skeHhsYXJnZS11cH0ge1xuICAgICAgJi54eGxhcmdlLW1hcmdlZCAuY2VsbCB7XG4gICAgICAgIG1hcmdpbjogMCAxJTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8vLyBGYWxsYmFjayBmb3IgYnJvd3NlcnMgdGhhdCBkb250IGhhdmUgZmxleGJveCBjYXBhYmlsaXR5LCB3ZSBpbmhlcml0IGZyb20gRm91bmRhdGlvbiBncmlkIHJvd1xuLy8vLyBUaGlzIG1heSBzb29uIGJlIGRlcHJlY2F0ZWQgYXJvdW5kIDIwMTZcbi8vaHRtbC5uby1mbGV4Ym94IHtcbi8vICAuZmxleC1ncmlke1xuLy8gICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuLy8gICAgQGV4dGVuZCAucm93O1xuLy8gICAgJiA+IC5jZWxsIHtcbi8vICAgICAgQGV4dGVuZCAuY29sdW1ucztcbi8vICAgIH1cbi8vICAgIEBtZWRpYSAjeyRzbWFsbC11cH0ge1xuLy8gICAgICBAaW5jbHVkZSAtZW1lbmNpYS1zaW11bGF0ZS1ncmlkLWNvbHVtbnMoJGZsZXgtZ3JpZC1zaXplcywgJHZpZXdwb3J0OiBzbWFsbCk7XG4vLyAgICB9XG4vLyAgICBAbWVkaWEgI3skbWVkaXVtLXVwfSB7XG4vLyAgICAgIEBpbmNsdWRlIC1lbWVuY2lhLXNpbXVsYXRlLWdyaWQtY29sdW1ucygkZmxleC1ncmlkLXNpemVzLCAkdmlld3BvcnQ6IG1lZGl1bSk7XG4vLyAgICB9XG4vLyAgICBAbWVkaWEgI3skbGFyZ2UtdXB9IHtcbi8vICAgICAgQGluY2x1ZGUgLWVtZW5jaWEtc2ltdWxhdGUtZ3JpZC1jb2x1bW5zKCRmbGV4LWdyaWQtc2l6ZXMsICR2aWV3cG9ydDogbGFyZ2UpO1xuLy8gICAgfVxuLy8gICAgQG1lZGlhICN7JHhsYXJnZS11cH0ge1xuLy8gICAgICBAaW5jbHVkZSAtZW1lbmNpYS1zaW11bGF0ZS1ncmlkLWNvbHVtbnMoJGZsZXgtZ3JpZC1zaXplcywgJHZpZXdwb3J0OiB4bGFyZ2UpO1xuLy8gICAgfVxuLy8gICAgQG1lZGlhICN7JHh4bGFyZ2UtdXB9IHtcbi8vICAgICAgQGluY2x1ZGUgLWVtZW5jaWEtc2ltdWxhdGUtZ3JpZC1jb2x1bW5zKCRmbGV4LWdyaWQtc2l6ZXMsICR2aWV3cG9ydDogeHhsYXJnZSk7XG4vLyAgICB9XG4vLyAgfVxuLy99XG4iLCIvKlxuICogVmFyaW91cyBzdHVmZiB0aGF0IGRvbid0IGZpdCBlbHNld2hlcmVcbiAqL1xuXG4vKlxuICogU29tZSBzdHlsaW5nIGZvciB0aGlzIEpTIGNvbXBvbmVudCBzdHVmZiAocmVhZCBtb3JlIG9uICdqcy9qcXVlcnkvYWRkb25zLmpzJylcbiAqL1xuI3dhdGNoLWZvci1jdXJyZW50LW1xdWVyeXtcbiAgICBwYWRkaW5nOiAwLjByZW0gMC41cmVtO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDEwcHg7XG4gICAgcmlnaHQ6IDM1cHg7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICAgIGZvbnQtd2VpZ2h0OmJvbGQ7XG4gICAgbGluZS1oZWlnaHQ6MS40O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGJvcmRlcjogMnB4IHNvbGlkICRyZWQ7XG4gICAgei1pbmRleDogOTAwMDtcblxuICAgIHNtYWxse1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG59XG5cblxuLy8gU2hvcnRjdXQgcmVsYXRpdmUgcG9zaXRpb25cbi5yZWxhdGl2ZS1wb3NpdGlvbiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4vLyBSZW1vdmUgYWxsIG1hcmdpbnNcbi51bm1hcmdlZCB7XG4gICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG59XG4vLyBSZW1vdmUgYWxsIHBhZGRpbmdcbi51bnBhZHtcbiAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG59XG4vLyBSZW1vdmUgYWxsIHBhZGRpbmdcbi5taW5pbWl6ZXtcbiAgICB0ZXh0LXRyYW5zZm9ybTogaW5oZXJpdDtcbiAgICAmOmZpcnN0LWxldHRlcntcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblxuICAgIH1cbn1cblxuXG5cbi8vIFNvbWV0aW1lIHdlIG5lZWQgdG8gc2VwYXJhdGUgYW4gZWxlbWVudCBmcm9tIGFuIGFub3RoZXIgYWRqYWNlbnQgZWxlbWVudFxuLmRpdmlkZXI6bm90KGxpKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMnJlbSAhaW1wb3J0YW50O1xuXG4gICAgJi50aW55LWRpdmlkZXtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgICYuYmlnLWRpdmlkZXtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogM3JlbSAhaW1wb3J0YW50O1xuICAgIH1cbn1cblxuLyogVmVydGljYWwgc3BhY2VzICovXG5cbi8vYnkgbWFyZ2luXG4udmVydG1hcmdlIHtcbiAgICBtYXJnaW4tdG9wOiAxcmVtO1xuICAgIG1hcmdpbi10b3A6IDFyZW07XG59XG5cbi8vbGFyZ2VyIHJvd1xuLnZlcnRzcGFjZSB7XG4gICAgcGFkZGluZy1ib3R0b206IDFyZW07XG4gICAgcGFkZGluZy10b3A6IDFyZW07XG59XG5cbi8vbGFyZ2VyIHJvdyBYMlxuLnZlcnRzcGFjZVgyIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMnJlbTtcbiAgICBwYWRkaW5nLXRvcDogMnJlbTtcbn1cblxuLnZlcnRzcGFjZVRvcFgyIHtcbiAgICBwYWRkaW5nLXRvcDogMnJlbTtcbn1cblxuLy9sYXJnZXIgcm93IFgzXG4udmVydHNwYWNlWDMge1xuICAgIHBhZGRpbmctYm90dG9tOiAzcmVtO1xuICAgIHBhZGRpbmctdG9wOiAzcmVtO1xufVxuXG4vL2ZvbnQgc2l6ZVxuLnNpemVYMiB7XG4gICAgZm9udC1zaXplOiAycmVtO1xuICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgbGluZS1oZWlnaHQ6IDIuNHJlbTtcbiAgICBzdHJvbmcge1xuICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgIH1cbn1cblxuLypcbiAqIFZlcnRpY2FsIHNwYWNlcyBhcm91bmQgZWxlbWVudFxuICovXG4uc3BhY2UtYXJvdW5ke1xuICAgIHBhZGRpbmc6IC43cmVtIDA7XG5cbiAgICBAbWVkaWEgI3skbWVkaXVtLXVwfSB7XG4gICAgICAgIHBhZGRpbmc6IDEuMnJlbSAwO1xuICAgIH1cbiAgICBAbWVkaWEgI3skbGFyZ2UtdXB9IHtcbiAgICAgICAgcGFkZGluZzogMS41cmVtIDA7XG4gICAgfVxuICAgIEBtZWRpYSAjeyR4bGFyZ2UtdXB9IHtcbiAgICAgICAgcGFkZGluZzogMnJlbSAwO1xuICAgIH1cblxuICAgIC8vIFRpbnkgc3BhY2VzXG4gICAgJi50aW55LXNwYWNle1xuICAgICAgICBwYWRkaW5nOiAwLjc1cmVtIDA7XG5cbiAgICAgICAgQG1lZGlhICN7JG1lZGl1bS11cH0ge1xuICAgICAgICAgICAgcGFkZGluZzogMXJlbSAwO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gTWVkaXVtIHNwYWNlc1xuICAgICYubWVkaXVtLXNwYWNle1xuICAgICAgICBwYWRkaW5nOiAxcmVtIDA7XG5cbiAgICAgICAgQG1lZGlhICN7JG1lZGl1bS11cH0ge1xuICAgICAgICAgICAgcGFkZGluZzogMS41cmVtIDA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBXaWRlciBzcGFjZXNcbiAgICAmLndpZGUtc3BhY2V7XG4gICAgICAgIHBhZGRpbmc6IDEuNXJlbSAwO1xuXG4gICAgICAgIEBtZWRpYSAjeyRtZWRpdW0tdXB9IHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDIuNXJlbSAwO1xuICAgICAgICB9XG4gICAgICAgIEBtZWRpYSAjeyRsYXJnZS11cH0ge1xuICAgICAgICAgICAgcGFkZGluZzogNHJlbSAwO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gRm9yIG9ubHkgdG9wIG9yIGJvdHRvbSBzcGFjZVxuICAgICYudG9wLW9ubHl7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgIH1cbiAgICAmLmJvdHRvbS1vbmx5e1xuICAgICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICB9XG59XG5cbi8vIFB1dCBhIHRyaWFuZ2xlIHBvaW50aW5nIHRvIGJvdHRvbSwgaG9yaXpvbnRhbGx5IGNlbnRlcmVkIGFuZCBhdFxuLy8gYm90dG9tIG9mIGVsZW1lbnRcbiRib3R0b20tdHJpYW5nbGUtc2l6ZTogcmVtLWNhbGMoMjBweCkgIWRlZmF1bHQ7XG4uYm90dG9tLXRyaWFuZ2xle1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAmOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBib3R0b206IC0kYm90dG9tLXRyaWFuZ2xlLXNpemU7XG4gICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNsYXRlKC01MCUsIDAlKTtcbiAgICAgICAgd2lkdGg6IDA7XG4gICAgICAgIGhlaWdodDogMDtcbiAgICAgICAgYm9yZGVyLWxlZnQ6ICRib3R0b20tdHJpYW5nbGUtc2l6ZSBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgICAgYm9yZGVyLXJpZ2h0OiAkYm90dG9tLXRyaWFuZ2xlLXNpemUgc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgIGJvcmRlci10b3A6ICRib3R0b20tdHJpYW5nbGUtc2l6ZSBzb2xpZCAkYmxhY2s7XG4gICAgfVxufVxuXG4vLyBjb250ZW50QmxvY2tzXG4ubW9yZSB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGEge1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBwYWRkaW5nOiAxMHB4IDMwcHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICB9XG4gICAgYnV0dG9uLCAuYnV0dG9uIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwKTtcbiAgICAgICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICAgICAgYm9yZGVyLXdpZHRoOiAxcHg7XG4gICAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgICAtbW96LWJvcmRlci1yYWRpdXM6IDVweDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuXG4vKlxuICogQ2FyZGJveCwgbGlrZSBhIHBhbmVsIGJ1dCB3aXRoIGhpZ2ggdmlzdWFsIHRpdGxlXG4gKi9cbi5jYXJkYm94e1xuICAgICYubWFyZ2Vke1xuICAgICAgICBtYXJnaW4tdG9wOiAxZW0gIWltcG9ydGFudDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMWVtICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgQG1lZGlhICN7JG1lZGl1bS11cH0ge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMS41ZW0gIWltcG9ydGFudDtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDJlbSAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICAgIEBtZWRpYSAjeyRsYXJnZS11cH0ge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMmVtICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzZW0gIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5oZWFkLFxuICAgIC5jb250ZW50e1xuICAgICAgICBwYWRkaW5nOiAwLjc1cmVtIDEuNXJlbTtcbiAgICB9XG5cbiAgICAuaGVhZHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMXB4O1xuICAgICAgICBwe1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmNvbnRlbnR7XG4gICAgICAgIHBhZGRpbmctdG9wOiAxLjVyZW07XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAxLjVyZW07XG5cbiAgICAgICAgYTpub3QoLmJ1dHRvbil7XG4gICAgICAgICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICB9XG4gICAgfVxuXG59XG4vLyp0b3BGbGFnICovXG5cbiNoZWFkcGFnZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGZsb2F0OmxlZnQ7XG4gICAgd2lkdGg6MTAwJTtcbiAgICAmOmJlZm9yZSB7XG4gICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xuICAgICAgICBjb250ZW50OiBhdHRyKGRhdGEtdGl0bGUpO1xuICAgICAgICBmb250LXNpemU6MTJyZW07XG4gICAgICAgIHRvcDotOHJlbTtcbiAgICAgICAgbGVmdDoyM3JlbTtcbiAgICAgICAgei1pbmRleDogLTE7XG4gICAgICAgIG9wYWNpdHk6IDAuMDc1O1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICBtYXgtd2lkdGg6IGNhbGMoMTAwdncgLSAxNnB4IC0gMjNyZW0pO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICBkaXNwbGF5OmJsb2NrO1xuICAgIH1cblxuICAgICY6YWZ0ZXJ7XG4gICAgICAgIGNvbnRlbnQ6J+6kgic7XG4gICAgICAgIGZvbnQtc2l6ZToxNHJlbTtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6LTEwcmVtO1xuICAgICAgICBsZWZ0OjguNXJlbTtcbiAgICAgICAgei1pbmRleDogLTE7XG4gICAgICAgIG9wYWNpdHk6IDAuMDc1O1xuICAgICAgICBmb250LWZhbWlseTogaWNvbW9vbjtcbiAgICB9XG5cblxuICAgICYuZXhwb3NpdGlvbnNfaWNvOmFmdGVyIHtcbiAgICAgICAgY29udGVudDon7qSOJztcbiAgICB9XG4gICAgJi52aXNpdGVzX2ljbzphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6J+6kgic7XG4gICAgfVxuICAgICYuY29sbGVjdGlvbnNfaWNvOmFmdGVyIHtcbiAgICAgICAgY29udGVudDon7qSNJztcbiAgICB9XG4gICAgJi5yZXBlcmVzX2ljbzphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6J+6kkCc7XG4gICAgfVxuICAgICYub3V0aWxzX2ljbzphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6J+6kjyc7XG4gICAgfVxufVxuLypsZWZ0RmxhZyAlKi9cblxuLmxlZnRGbGFnIHtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlIHVwKSB7XG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOmZpeGVkO1xuICAgICAgICAgICAgdG9wOjI1MHB4O1xuICAgICAgICAgICAgbGVmdDowO1xuICAgICAgICAgICAgY29udGVudDp1cmwoJy9zdGF0aWMvaW1hZ2VzL3RoZW1lL2xlZnRGbGFnLnBuZycpO1xuICAgICAgICAgICAgei1pbmRleDogLTE7XG4gICAgICAgIH1cblxuICAgIH1cbn1cblxuXG4uaXMtYWNjb3JkaW9uLXN1Ym1lbnUtcGFyZW50IHtcbiAgICAmOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB3aWR0aDogMDtcbiAgICAgICAgaGVpZ2h0OiAwO1xuICAgICAgICBib3JkZXI6IGluc2V0IDVweDtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAjZGQzMzMzIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICAgICAgICBib3JkZXItdG9wLXN0eWxlOiBzb2xpZDtcbiAgICAgICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgICAgICAgcmlnaHQ6IDVweDtcbiAgICAgICAgbWFyZ2luLXRvcDogLTJyZW07XG4gICAgICAgIGZsb2F0OnJpZ2h0O1xuICAgIH1cbn1cblxuXG4vL2JpZ2hyXG4uYmlnaHIgeyBib3JkZXItd2lkdGg6IDZweDsgYm9yZGVyLWNvbG9yOiAkbGlnaHQtZ3JheTttYXJnaW4tbGVmdDowO21hcmdpbi1yaWdodDowO21heC13aWR0aDogbm9uZX1cblxuXG4vLyBwYW5lbFxuLnBhbmVsIHtcbiAgICBib3JkZXItcmFkaXVzOiAycHg7XG4gICAgZmxvYXQ6bGVmdDtcbiAgICB3aWR0aDoxMDAlO1xuXG59IiwiLypGb250cyBsaWJyYXJ5Ki9cbiRpY29tb29uUGF0aDogXCIuLi9mb250c1wiICFkZWZhdWx0O1xuXG4vKkZvbnRzIGxpYnJhcnkqL1xuQGZvbnQtZmFjZSB7XG4gICAgZm9udC1mYW1pbHk6ICdpY29tb29uJztcbiAgICBzcmM6ICB1cmwoJyN7JGljb21vb25QYXRofS9pY29tb29uLmVvdD83cXFqZHMnKTtcbiAgICBzcmM6ICB1cmwoJyN7JGljb21vb25QYXRofS9pY29tb29uLmVvdD83cXFqZHMjaWVmaXgnKSBmb3JtYXQoJ2VtYmVkZGVkLW9wZW50eXBlJyksXG4gICAgICB1cmwoJyN7JGljb21vb25QYXRofS9pY29tb29uLndvZmYyPzdxcWoycycpIGZvcm1hdCgnd29mZjInKSxcbiAgICAgIHVybCgnI3skaWNvbW9vblBhdGh9L2ljb21vb24udHRmPzdxcWoycycpIGZvcm1hdCgndHJ1ZXR5cGUnKSxcbiAgICAgIHVybCgnI3skaWNvbW9vblBhdGh9L2ljb21vb24ud29mZj83cXFqMnMnKSBmb3JtYXQoJ3dvZmYnKSxcbiAgICAgIHVybCgnI3skaWNvbW9vblBhdGh9L2ljb21vb24uc3ZnPzdxcWoycyNpY29tb29uJykgZm9ybWF0KCdzdmcnKTtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cblxuXG4vKlxuICogRGVmYXVsdCB1c2FnZSwgZm9yIHNlbGYgY2xvc2VkIGVsZW1lbnQgbGlrZSBpbiA8aSBjbGFzcz1cIi4uXCI+PC9pPlxuICovXG4uaWNvbmNvbnQsW2NsYXNzXj1cImljb24tXCJdOm5vdChwKTpub3QoZGl2KTpub3QoaDEpOm5vdChoMik6bm90KGgzKTpub3QoaDQpLFxuW2NsYXNzKj1cIiBpY29uLVwiXTpub3QocCk6bm90KGRpdik6bm90KGgxKTpub3QoaDIpOm5vdChoMyk6bm90KGg0KSAsW2NsYXNzXj1cImljb24tXCJdOmJlZm9yZSxbY2xhc3MqPVwiIGljb24tXCJdOmJlZm9yZXtcbiAgICBmb250LWZhbWlseTogJ2ljb21vb24nO1xuICAgIHNwZWFrOiBub25lO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIGZvbnQtdmFyaWFudDogbm9ybWFsO1xuICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIC8vIEJldHRlciBGb250IFJlbmRlcmluZ1xuICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gICAgLy8gRm9udCBzaXplcyAoaWNvbi0yeCA9IDJlbSwgaWNvbi0zeCA9IDNlbSwgZXRjLi4pXG4gICAgQGluY2x1ZGUgZm9udC1tdWx0aXBsaWVyKDIgMyA0IDUsICRzZWxlY3Rvci1wcmVmaXg6IFwiaWNvblwiKTtcblxuICAgICYuaWNvbi1ibG9ja3tcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxufVxuXG5cbi8qXG4gKiBJY29uIGluc2VydCBpbiBhIGNvbnRhaW5lclxuICpcbiAqIENvbnRyYXJ5IHRvIHRoZSBkZWZhdWx0IHNlbGVjdG9yLCB0aGlzIGRvZXMgbm90IHBlcnR1cmIgY29udGFpbmVyXG4gKiBlbGVtZW50cyBmb250LCBzbyBpdCdzIHNhZmUgdG8gaGF2ZSB0ZXh0IGluIGNvbnRhaW5lclxuICovXG5wLGRpdixoMSxoMixoMyxoNCwqIHtcbiAgICAmW2NsYXNzXj1cImljb24tXCJdLFxuICAgICZbY2xhc3MqPVwiIGljb24tXCJde1xuICAgICY6YmVmb3Jle1xuICAgICAgICBmb250LWZhbWlseTogJ2ljb21vb24nO1xuICAgICAgICBzcGVhazogbm9uZTtcbiAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICBmb250LXZhcmlhbnQ6IG5vcm1hbDtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICAvLyBCZXR0ZXIgRm9udCBSZW5kZXJpbmdcbiAgICAgICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gICAgICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gICAgfVxuICAgIEBpbmNsdWRlIGZvbnQtbXVsdGlwbGllcigyIDMgNCwgJHNlbGVjdG9yLXByZWZpeDogXCJpY29uXCIsICRzZWxlY3Rvci1wc2V1ZG86IFwiYmVmb3JlXCIpO1xuXG4gICAgLy8gSWNvbiBmb3JjZWQgYXMgYSBibG9jayBlbGVtZW50XG4gICAgJi5pY29uLWJsb2Nre1xuICAgICAgICAmOmJlZm9yZXtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi5pY29uLWNvcm5lci1sZWZ0e1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIC8vIEdldCBzb21lIHBsYWNlIGZvciBpY29uXG4gICAgICAgIHBhZGRpbmctbGVmdDogMWVtO1xuICAgICAgICBAaW5jbHVkZSBmb250LW11bHRpcGxpZXIoMiAzIDQsICRzZWxlY3Rvci1wcmVmaXg6IFwiaWNvblwiLCAkcHJvcGVydHk6IFwicGFkZGluZy1sZWZ0XCIpO1xuXG4gICAgICAgIC8vIFNpbXBsZSBwb3NpdGlvbiBmb3IgaWNvblxuICAgICAgICAmOmJlZm9yZXtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiAwLjFlbTtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBTb21lIHRpbnkgZGl2aWRlciBiZXR3ZWVuIGljb24gYW5kIGFsbCBlbGVtZW50c1xuICAgICAgICAmPip7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogcmVtLWNhbGMoNXB4KTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAmLmljb24tY2VudGVyLWxlZnR7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgLy8gR2V0IHNvbWUgcGxhY2UgZm9yIGljb25cbiAgICAgICAgcGFkZGluZy1sZWZ0OiAxZW07XG4gICAgICAgIEBpbmNsdWRlIGZvbnQtbXVsdGlwbGllcigyIDMgNCwgJHNlbGVjdG9yLXByZWZpeDogXCJpY29uXCIsICRwcm9wZXJ0eTogXCJwYWRkaW5nLWxlZnRcIik7XG5cbiAgICAgICAgLy8gU2ltcGxlIHBvc2l0aW9uIGZvciBpY29uXG4gICAgICAgICY6YmVmb3Jle1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2xhdGUoMCwtNTAlKVxuICAgICAgICB9XG5cbiAgICAgICAgLy8gU29tZSB0aW55IGRpdmlkZXIgYmV0d2VlbiBpY29uIGFuZCBhbGwgZWxlbWVudHNcbiAgICAgICAgJj4qe1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IHJlbS1jYWxjKDVweCk7XG4gICAgICAgIH1cbiAgICB9XG59XG59XG5cbi8vIFByZXBlbmQgdGV4dCBidXR0b24gd2l0aCBhbiBpY29uIGZyb20gYSBjbGFzcyAod2l0aG91dCA8aSBjbGFzcz1cIlwiPilcbi5idXR0b25bY2xhc3NePVwiaWNvbi1cIl0sIC5idXR0b25bY2xhc3MqPVwiIGljb24tXCJdIHtcbiAgICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgICAmOmJlZm9yZSB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAnaWNvbW9vbic7XG4gICAgICAgIG1hcmdpbi1yaWdodDogcmVtLWNhbGMoNXB4KTtcbiAgICAgICAgc3BlYWs6IG5vbmU7XG4gICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgZm9udC12YXJpYW50OiBub3JtYWw7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgLyogQmV0dGVyIEZvbnQgUmVuZGVyaW5nID09PT09PT09PT09ICovXG4gICAgICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAgICAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICAgIH1cbiAgICAmLmljb0FmdCB7XG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWx0aXZlO1xuICAgICAgICAgICAgcmlnaHQ6IDAuNXJlbTtcbiAgICAgICAgICAgIHdpZHRoOiAycmVtO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4vLyBJY29uIFNpemVzXG4uaWNvbi0yeHtcbiAgICBmb250LXNpemU6IDJyZW07XG59XG4uaWNvbi0zeHtcbiAgICBmb250LXNpemU6IDNyZW07XG59XG4uaWNvbi00eHtcbiAgICBmb250LXNpemU6IDRyZW07XG59XG4vLyBJbXBvcnQgaWNvbiBtYXAgcGFydFxuQGltcG9ydCBcImNvbXBvbmVudHMvX2ljb21vb25faWNvbnNcIjtcbiIsIiRpY29uLWNvbGxlY3Rpb25zOiBcIlxcZTkxZVwiO1xuJGljb24tdGFnOiBcIlxcZTkxZlwiO1xuJGljb24tYXJyb3ctcmlnaHQ6IFwiXFxlOTE1XCI7XG4kaWNvbi1kb3dubG9hZDogXCJcXGU5MTZcIjtcbiRpY29uLWZpbG0xOiBcIlxcZTkxN1wiO1xuJGljb24tbWFwMTogXCJcXGU5MThcIjtcbiRpY29uLW1lc3NhZ2UtY2lyY2xlOiBcIlxcZTkxOVwiO1xuJGljb24tdmlkZW9jYW06IFwiXFxlOTFhXCI7XG4kaWNvbi1jb2xsZWN0aW9uOiBcIlxcZTkwZFwiO1xuJGljb24tZXhwb3NpdGlvbnM6IFwiXFxlOTBlXCI7XG4kaWNvbi1vdXRpbHM6IFwiXFxlOTBmXCI7XG4kaWNvbi1yZXBlcmVzOiBcIlxcZTkxMFwiO1xuJGljb24tY2FsZW5kYXI6IFwiXFxlOTBhXCI7XG4kaWNvbi1tdXNldW1tb3JlOiBcIlxcZTkwYlwiO1xuJGljb24tcGxhbjogXCJcXGU5MGNcIjtcbiRpY29uLXBsYXk6IFwiXFxlOTA5XCI7XG4kaWNvbi1tYWlsOiBcIlxcZTkwNFwiO1xuJGljb24tY2xvdWRfZG9jOiBcIlxcZTkwNVwiO1xuJGljb24tY29tbWVudDogXCJcXGU5MDZcIjtcbiRpY29uLWRvYzogXCJcXGU5MDdcIjtcbiRpY29uLWxpbmtkb2M6IFwiXFxlOTA4XCI7XG4kaWNvbi1saW5rOiBcIlxcZTkwM1wiO1xuJGljb24tYXJyb19sZWZ0OiBcIlxcZTkwMFwiO1xuJGljb24tYXJyb19yaWdodDogXCJcXGU5MDFcIjtcbiRpY29uLW1hcDogXCJcXGU5MDJcIjtcbiRpY29uLWltYWdlOiBcIlxcZTkxM1wiO1xuJGljb24tdmlkZW86IFwiXFxlOTE0XCI7XG4kaWNvbi1zb3VuZDogXCJcXGU5MTJcIjtcbiRpY29uLXNlYXJjaDogXCJcXGU5MTFcIjtcbiRpY29uLW11c2ljOiBcIlxcZjAwMVwiO1xuJGljb24tZmlsbTogXCJcXGYwMDhcIjtcbiRpY29uLXZvbHVtZS11cDogXCJcXGYwMjhcIjtcbiRpY29uLXZpZGVvLWNhbWVyYTogXCJcXGYwM2RcIjtcbiRpY29uLWltYWdlMjogXCJcXGYwM2VcIjtcbiRpY29uLXBob3RvOiBcIlxcZjAzZVwiO1xuJGljb24tcGljdHVyZS1vOiBcIlxcZjAzZVwiO1xuJGljb24tcGVuY2lsOiBcIlxcZjA0MFwiO1xuJGljb24tcXVlc3Rpb24tY2lyY2xlOiBcIlxcZjA1OVwiO1xuJGljb24tZXllOiBcIlxcZjA2ZVwiO1xuJGljb24tZXllLXNsYXNoOiBcIlxcZjA3MFwiO1xuJGljb24tdHdpdHRlcjogXCJcXGYwOTlcIjtcbiRpY29uLWZhY2Vib29rOiBcIlxcZjA5YVwiO1xuJGljb24tZmlsdGVyOiBcIlxcZjBiMFwiO1xuJGljb24tZmlsZS10ZXh0LW86IFwiXFxmMGY2XCI7XG4kaWNvbi1vcmRlcjogXCJcXGYxNTBcIjtcbiRpY29uLXlvdXR1YmUtc3F1YXJlOiBcIlxcZjE2NlwiO1xuJGljb24teW91dHViZTogXCJcXGYxNjdcIjtcbiRpY29uLW5ld3NwYXBlci1vOiBcIlxcZjFlYVwiO1xuJGljb24tbG9uZ19hcnJvd19sZWZ0OiBcIlxcZTkxY1wiO1xuJGljb24tbG9uZ19hcnJvd19yaWdodDogXCJcXGU5MWJcIjtcbiRpY29uLWNsb3NlOiBcIlxcZTkxZFwiO1xuXG4uaWNvbi1jb2xsZWN0aW9ucyB7XG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiAkaWNvbi1jb2xsZWN0aW9ucztcbiAgfVxufVxuLmljb24tdGFnIHtcbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICRpY29uLXRhZztcbiAgfVxufVxuLmljb24tY2xvc2Uge1xuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJGljb24tY2xvc2U7XG4gIH1cbn1cbi5pY29uLWxvbmdfYXJyb3dfbGVmdCB7XG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiAkaWNvbi1sb25nX2Fycm93X2xlZnQ7XG4gIH1cbn1cbi5pY29uLWxvbmdfYXJyb3dfcmlnaHQge1xuICAgJjpiZWZvcmUge1xuICAgICBmb250LXNpemU6IDEuOHJlbTtcbiAgICAgY29udGVudDogJGljb24tbG9uZ19hcnJvd19yaWdodDtcbiAgIH1cbiB9XG4uaWNvbi1hcnJvdy1yaWdodCB7XG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiAkaWNvbi1hcnJvd19yaWdodDtcbiAgfVxufVxuLmljb24tYXJyb3ctcmlnaHQge1xuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJGljb24tYXJyb3ctcmlnaHQ7XG4gIH1cbn1cbi5pY29uLWRvd25sb2FkIHtcbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICRpY29uLWRvd25sb2FkO1xuICB9XG59XG4uaWNvbi1maWxtMSB7XG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiAkaWNvbi1maWxtMTtcbiAgfVxufVxuLmljb24tbWFwMSB7XG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiAkaWNvbi1tYXAxO1xuICB9XG59XG4uaWNvbi1tZXNzYWdlLWNpcmNsZSB7XG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiAkaWNvbi1tZXNzYWdlLWNpcmNsZTtcbiAgfVxufVxuLmljb24tdmlkZW9jYW0ge1xuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJGljb24tdmlkZW9jYW07XG4gIH1cbn1cbi5pY29uLWNvbGxlY3Rpb24ge1xuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJGljb24tY29sbGVjdGlvbjtcbiAgfVxufVxuLmljb24tZXhwb3NpdGlvbnMge1xuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJGljb24tZXhwb3NpdGlvbnM7XG4gIH1cbn1cbi5pY29uLW91dGlscyB7XG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiAkaWNvbi1vdXRpbHM7XG4gIH1cbn1cbi5pY29uLXJlcGVyZXMge1xuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJGljb24tcmVwZXJlcztcbiAgfVxufVxuLmljb24tY2FsZW5kYXIge1xuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJGljb24tY2FsZW5kYXI7XG4gIH1cbn1cbi5pY29uLW11c2V1bW1vcmUge1xuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJGljb24tbXVzZXVtbW9yZTtcbiAgfVxufVxuLmljb24tcGxhbiB7XG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiAkaWNvbi1wbGFuO1xuICB9XG59XG4uaWNvbi1wbGF5IHtcbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICRpY29uLXBsYXk7XG4gIH1cbn1cbi5pY29uLW1haWwge1xuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJGljb24tbWFpbDtcbiAgfVxufVxuLmljb24tY2xvdWRfZG9jIHtcbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICRpY29uLWNsb3VkX2RvYztcbiAgfVxufVxuLmljb24tY29tbWVudCB7XG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiAkaWNvbi1jb21tZW50O1xuICB9XG59XG4uaWNvbi1kb2Mge1xuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJGljb24tZG9jO1xuICB9XG59XG4uaWNvbi1saW5rZG9jIHtcbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICRpY29uLWxpbmtkb2M7XG4gIH1cbn1cbi5pY29uLWxpbmsge1xuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJGljb24tbGluaztcbiAgfVxufVxuLmljb24tYXJyb19sZWZ0IHtcbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICRpY29uLWFycm9fbGVmdDtcbiAgfVxufVxuLmljb24tYXJyb19yaWdodCB7XG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiAkaWNvbi1hcnJvX3JpZ2h0O1xuICB9XG59XG4uaWNvbi1tYXAge1xuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJGljb24tbWFwO1xuICB9XG59XG4uaWNvbi1pbWFnZSB7XG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiAkaWNvbi1pbWFnZTtcbiAgfVxufVxuLmljb24tdmlkZW8ge1xuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJGljb24tdmlkZW87XG4gIH1cbn1cbi5pY29uLXNvdW5kIHtcbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICRpY29uLXNvdW5kO1xuICB9XG59XG4uaWNvbi1zZWFyY2gge1xuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJGljb24tc2VhcmNoO1xuICB9XG59XG4uaWNvbi1tdXNpYyB7XG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiAkaWNvbi1tdXNpYztcbiAgfVxufVxuLmljb24tZmlsbSB7XG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiAkaWNvbi1maWxtO1xuICB9XG59XG4uaWNvbi12b2x1bWUtdXAge1xuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJGljb24tdm9sdW1lLXVwO1xuICB9XG59XG4uaWNvbi12aWRlby1jYW1lcmEge1xuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJGljb24tdmlkZW8tY2FtZXJhO1xuICB9XG59XG4uaWNvbi1pbWFnZTIge1xuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJGljb24taW1hZ2UyO1xuICB9XG59XG4uaWNvbi1waG90byB7XG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiAkaWNvbi1waG90bztcbiAgfVxufVxuLmljb24tcGljdHVyZS1vIHtcbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICRpY29uLXBpY3R1cmUtbztcbiAgfVxufVxuLmljb24tcGVuY2lsIHtcbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICRpY29uLXBlbmNpbDtcbiAgfVxufVxuLmljb24tcXVlc3Rpb24tY2lyY2xlIHtcbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICRpY29uLXF1ZXN0aW9uLWNpcmNsZTtcbiAgfVxufVxuLmljb24tZXllIHtcbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICRpY29uLWV5ZTtcbiAgfVxufVxuLmljb24tZXllLXNsYXNoIHtcbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICRpY29uLWV5ZS1zbGFzaDtcbiAgfVxufVxuLmljb24tdHdpdHRlciB7XG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiAkaWNvbi10d2l0dGVyO1xuICB9XG59XG4uaWNvbi1mYWNlYm9vayB7XG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiAkaWNvbi1mYWNlYm9vaztcbiAgfVxufVxuLmljb24tZmlsdGVyIHtcbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICRpY29uLWZpbHRlcjtcbiAgfVxufVxuLmljb24tZmlsZS10ZXh0LW8ge1xuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJGljb24tZmlsZS10ZXh0LW87XG4gIH1cbn1cbi5pY29uLW9yZGVyIHtcbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICRpY29uLW9yZGVyO1xuICB9XG59XG4uaWNvbi15b3V0dWJlLXNxdWFyZSB7XG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiAkaWNvbi15b3V0dWJlLXNxdWFyZTtcbiAgfVxufVxuLmljb24teW91dHViZSB7XG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiAkaWNvbi15b3V0dWJlO1xuICB9XG59XG4uaWNvbi1uZXdzcGFwZXItbyB7XG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiAkaWNvbi1uZXdzcGFwZXItbztcbiAgfVxufVxuXG5cbi5mYS1xdWVzdGlvbi1jaXJjbGV7XG4gIEBleHRlbmQgIC5pY29uLXF1ZXN0aW9uLWNpcmNsZTtcbn1cblxuLmZhLWNoZXZyb24tcmlnaHQge1xuICBAZXh0ZW5kICAuaWNvbi1hcnJvX3JpZ2h0O1xufVxuLmZhLWNoZXZyb24tbGVmdCB7XG4gIEBleHRlbmQgIC5pY29uLWFycm9fbGVmdDtcbn1cbi5mYS1zZWFyY2gge1xuICBAZXh0ZW5kICAuaWNvbi1zZWFyY2ggO1xufVxuXG4iLCJAaW1wb3J0IFwiY29tcG9uZW50cy9pY29tb29uXCI7XG5cbkBtaXhpbiAtZW1lbmNpYS1saXN0LWFycm93LXR5cGUoXG4gICAgJHdpZHRoOiByZW0tY2FsYygxMnB4KSxcbiAgICAkdG9wLXBvc2l0aW9uOiAwLjc1cmVtLFxuICAgICRsZWZ0LXBvc2l0aW9uOiByZW0tY2FsYygtMnB4KSxcbiAgICAkZm9udC1zaXplOiBudWxsLFxuICAgICRmb250LXdlaWdodDogbnVsbCxcbiAgICAkY29udGVudDogXCI+XCIsXG4gICAgJGNvbnRlbnQtY29sb3I6ICRyZWQsXG4gICAgJHZlcnRpY2FsLXRyYW5zbGF0ZTogdHJ1ZSxcbiAgICAkZXh0ZW5kZWQtaWNvbjogbnVsbFxuKSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIEBpZiAkdG9wLXBvc2l0aW9uIHtcbiAgICAgICAgdG9wOiAkdG9wLXBvc2l0aW9uO1xuICAgIH1cbiAgICBsZWZ0OiAkbGVmdC1wb3NpdGlvbjtcbiAgICB3aWR0aDogJHdpZHRoO1xuICAgIGZvbnQtZmFtaWx5OiBpY29tb29uO1xuICAgIEBpZiAkZm9udC1zaXplIHtcbiAgICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplO1xuICAgIH1cbiAgICBAaWYgJGZvbnQtd2VpZ2h0IHtcbiAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodDtcbiAgICB9XG4gICAgQGlmICRleHRlbmRlZC1pY29uIHtcbiAgICAgICAgQGV4dGVuZCAuaWNvbi1hcnJvX3JpZ2h0XG4gICAgfSBAZWxzZSB7XG4gICAgICAgIGNvbnRlbnQ6ICRjb250ZW50O1xuICAgIH1cbiAgICBjb2xvcjogJGNvbnRlbnQtY29sb3I7XG4gICAgQGlmICR2ZXJ0aWNhbC10cmFuc2xhdGUge1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2xhdGUoMCUsIC01MCUpO1xuICAgIH1cbn1cblxuXG4vLyBCdWxsZXQgbGlzdCB1c2luZyBhcnJvdyBpY29uIGFzIGJ1bGxldFxudWwuYXJyb3d7XG4gICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuXG4gICAgJjpub3QoLmRlZmVyKXtcbiAgICAgICAgbGkge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAxcmVtO1xuXG4gICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgLWVtZW5jaWEtbGlzdC1hcnJvdy10eXBlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIC8vIERlZmVyIGFycm93IHBzZXVkbyBlbGVtZW50IHRvIGZpcnN0IGRpcmVjdCBjaGlsZCBlbGVtZW50IG9mIGxpc3QgaXRlbXNcbiAgICAmLmRlZmVye1xuICAgICAgICBsaSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgICAgICY+KjpmaXJzdC1jaGlsZHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAxLjVyZW07XG5cbiAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIC1lbWVuY2lhLWxpc3QtYXJyb3ctdHlwZSgkdG9wLXBvc2l0aW9uOiAwLjYwcmVtKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8qXG4gKiB1bC5hcnJvdyBhbGlrZSBidXQgd2l0aCBhbm90aGVyIGFycm93IGljb24gaW5zdGVhZFxuICovXG51bC5hcnJvdy0yIHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuXG4gICAgbGkge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMS4ycmVtO1xuXG4gICAgICAgICY6bm90KC5uby1idWxsZXQpOmJlZm9yZSB7XG4gICAgICAgICAgICBAaW5jbHVkZSAtZW1lbmNpYS1saXN0LWFycm93LXR5cGUoXG4gICAgICAgICAgICAgICAgJGV4dGVuZGVkLWljb246IHRydWUsXG4gICAgICAgICAgICAgICAgJGNvbnRlbnQtY29sb3I6IGJsYWNrXG4gICAgICAgICAgICApXG4gICAgICAgIH1cblxuICAgICAgICAmK2xpe1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMC41cmVtO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4vKlxuICogVXNlIGEgY2hldnJvbiBpY29uXG4gKi9cbnVsLmNoZXZyb257XG4gICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuXG4gICAgJjpub3QoLmRlZmVyKXtcbiAgICAgICAgbGl7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDEuMWVtO1xuXG4gICAgICAgICAgICAmOm5vdCgubm8tYnVsbGV0KSB7XG5cbiAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIC1lbWVuY2lhLWxpc3QtYXJyb3ctdHlwZShcbiAgICAgICAgICAgICAgICAgICAgICAgICRleHRlbmRlZC1pY29uOiB0cnVlLFxuICAgICAgICAgICAgICAgICAgICAgICAgJHRvcC1wb3NpdGlvbjogbnVsbCxcbiAgICAgICAgICAgICAgICAgICAgICAgICR2ZXJ0aWNhbC10cmFuc2xhdGU6IG51bGwsXG4gICAgICAgICAgICAgICAgICAgICAgICAkZm9udC13ZWlnaHQ6IDYwMFxuICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIC8vIERlZmVyIGFycm93IHBzZXVkbyBlbGVtZW50IHRvIGZpcnN0IGRpcmVjdCBjaGlsZCBlbGVtZW50IG9mIGxpc3QgaXRlbXNcbiAgICAmLmRlZmVye1xuICAgICAgICBsaXtcbiAgICAgICAgICAgICY+KjpmaXJzdC1jaGlsZHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAxLjVlbTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjpub3QoLm5vLWJ1bGxldCkge1xuICAgICAgICAgICAgICAgICY+KjpmaXJzdC1jaGlsZHtcbiAgICAgICAgICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgLWVtZW5jaWEtbGlzdC1hcnJvdy10eXBlKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICRleHRlbmRlZC1pY29uOiB0cnVlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICRmb250LXdlaWdodDogNjAwLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICR0b3AtcG9zaXRpb246IDAuNjByZW1cbiAgICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIEJpZ2dlciBhcnJvdyBhbmQgdGV4dFxuICAgICYuYmlnZ2VyIHtcbiAgICAgICAgJjpub3QoLmRlZmVyKSBsaTpub3QoLm5vLWJ1bGxldCksXG4gICAgICAgICYuZGVmZXIgbGk6bm90KC5uby1idWxsZXQpe1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjNlbTtcbiAgICAgICAgICAgICY6YmVmb3JlLFxuICAgICAgICAgICAgJj4gKjpmaXJzdC1jaGlsZDpiZWZvcmV7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjJlbTtcbiAgICAgICAgICAgICAgICB0b3A6IDAuNzVyZW07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgJi5zbWFsbGVyIHtcbiAgICAgICAgbGl7XG4gICAgICAgICAgICAvL3Bvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMS4xZW07XG5cbiAgICAgICAgICAgICY6bm90KC5uby1idWxsZXQpIHtcblxuICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgLWVtZW5jaWEtbGlzdC1hcnJvdy10eXBlKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICRleHRlbmRlZC1pY29uOiB0cnVlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICR0b3AtcG9zaXRpb246IG51bGwsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJHZlcnRpY2FsLXRyYW5zbGF0ZTogbnVsbCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZm9udC13ZWlnaHQ6IDYwMCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAkY29udGVudC1jb2xvcjogJGJsYWNrXG4gICAgICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4vKlxuICogTGlzdCBpdGVtcyBkaXZpZGVkIGJ5IGEgYm9sZCBib3JkZXJcbiAqL1xudWwuZGl2aWRlZCxcbm9sLmRpdmlkZWR7XG4gICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuXG4gICAgbGl7XG4gICAgICAgICYrbGl7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiBlbS1jYWxjKDEwcHgpO1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IGVtLWNhbGMoMTBweCk7XG4gICAgICAgICAgICBib3JkZXItdG9wOiBlbS1jYWxjKDRweCkgc29saWQgJG1lZGl1bS1ncmF5O1xuICAgICAgICB9XG4gICAgfVxufVxuXG4vKlxuICogTGlzdCBpdGVtcyBkaXZpZGVkIGJ5IGEgYm9sZCBib3JkZXIgYW5kIGFsc28gYm9yZGVyIG9uIHRvcCBhbmQgYm90dG9tIG9mXG4gKiB0aGUgbGlzdCBlbGVtZW50XG4gKi9cbnVsLmxpbmUtc3Vycm91bmQsXG5vbC5saW5lLXN1cnJvdW5ke1xuICAgIGJvcmRlci10b3A6IDRweCBzb2xpZCAkbWVkaXVtLWdyYXk7XG4gICAgYm9yZGVyLWJvdHRvbTogNHB4IHNvbGlkICRtZWRpdW0tZ3JheTtcblxuICAgIGxpe1xuICAgICAgICBwYWRkaW5nLXRvcDogMC44ZW07XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAwLjhlbTtcblxuICAgICAgICAmK2xpe1xuICAgICAgICAgICAgYm9yZGVyLXRvcDogNHB4IHNvbGlkICRtZWRpdW0tZ3JheTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuXG4vKlxuICogTmljZWx5IGxpc3RlZCBpdGVtIHdpdGggc29tZSBtaW5vciB2ZXJ0aWNhbCBzcGFjZXMgYW5kIHJpZ2h0IHBhZGRpbmdcbiAqIChtb3N0bHkgaW50ZW5kZWQgdG8gdXNlIHdpdGggZmxleCBsaXN0cylcbiAqL1xuLm5pY2UtbGlzdGluZ3tcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICAmLmd1dHRlciB7XG4gICAgICAgIG1hcmdpbjogMXJlbTtcbiAgICB9XG4gICAgJj5saXtcbiAgICAgICAgbWFyZ2luOiAwIDAgMXJlbSAhaW1wb3J0YW50O1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjc1cmVtO1xuICAgIH1cbn1cblxuXG4vKlxuICogQW5vdGhlciBsaXN0IHdpdGggYXJyb3cgaWNvblxuICovXG4uYXJyb3dMaXN0IHtcbiAgICBtYXJnaW46IDA7XG4gICAgbGkge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICAgIGEge1xuICAgICAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwLjJyZW07XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHJlZDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiAn7qG2JztcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBpY29tb29uO1xuICAgICAgICAgICAgZm9udC1zaXplOiAwLjdyZW07XG4gICAgICAgICAgICBjb2xvcjogJHJlZDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICB0b3A6IDAuMnJlbTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmxpc3RBbmRMaW5lIHtcbiAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gICAgYm9yZGVyLXRvcDogNHB4IHNvbGlkICRtZWRpdW0tZ3JheTtcbiAgICBtYXJnaW46IDA7XG4gICAgbWFyZ2luLXRvcDogMS41cmVtO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB3aWR0aDogMTAwJTtcblxuICAgIGxpIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJG1lZGl1bS1ncmF5O1xuICAgICAgICBwYWRkaW5nLXRvcDogMC44NHJlbTtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDAuODRyZW07XG4gICAgICAgIGEge1xuICAgICAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYuYmlnbGluZXMge1xuICAgICAgICBsaSB7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogMS4xcmVtO1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDEuMXJlbTtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDRweCBzb2xpZCBsaWdodGVuKCRtZWRpdW0tZ3JheSwgMTAlKTtcbiAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMHB4IHNvbGlkIGxpZ2h0ZW4oJG1lZGl1bS1ncmF5LCAxMCUpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4uYmlnQXJyb3cge1xuICAgIGxpIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDEuNzVyZW07XG5cbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgY29udGVudDogJz4nO1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6IGljb21vb247XG4gICAgICAgICAgICBmb250LXNpemU6IDEuMnJlbTtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogMC42NXJlbTtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICBjb2xvcjogJHJlZDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuXG5cbi5kb3RMaXN0IHtcbiAgICB1bC5kb3R0ZWQge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgfVxuICAgIGxpIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgICBtYXJpbmctbGVmdDogMDtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAxcmVtO1xuICAgICAgICBhIHtcbiAgICAgICAgICAgIGNvbG9yOiAkZGFyay1ncmF5O1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDAuMnJlbTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgfVxuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiAn4oCiJztcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS40cmVtO1xuICAgICAgICAgICAgY29sb3I6ICRyZWQ7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgdG9wOiAwcmVtO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDAuOWVtO1xuICAgICAgICB9XG4gICAgfVxufVxuLmRvdExpc3RzbWFsbCB7XG4gICAgdWwuZG90dGVkIHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgIH1cbiAgICBsaSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgICAgbWFyaW5nLWxlZnQ6IDA7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMC43cmVtO1xuICAgICAgICBhIHtcbiAgICAgICAgICAgIGNvbG9yOiAkZGFyay1ncmF5O1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDAuMXJlbTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgfVxuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiAn4oCiJztcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMC43cmVtO1xuICAgICAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICB0b3A6IDAuNXJlbTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAwLjllbTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLyogSnVzdCBhIGxpc3Qgd2l0aG91dCBidWxsZXQgYW5kIG1hcmdpbiAqL1xuLmJsb2NrbGlzdCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbn1cblxuXG5cblxuLyogY291bnRlciBsaXN0ICovXG51bC5jb3VudGVyTGlzdCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIGNvdW50ZXItcmVzZXQ6IGxpYztcbiAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gICAgbGkge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHBhZGRpbmctbGVmdDoyLjRyZW07XG4gICAgICAgIGNvdW50ZXItaW5jcmVtZW50OiBsaWM7XG4gICAgICAgIG1hcmdpbi10b3A6MC4ycmVtO1xuICAgICAgICBtYXJnaW4tYm90dG9tOjAuNHJlbTtcbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgY29udGVudDpjb3VudGVyKGxpYyk7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOjUwJTtcbiAgICAgICAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xuICAgICAgICAgICAgbGVmdDowO1xuICAgICAgICAgICAgdG9wOjUwJTtcbiAgICAgICAgICAgIHdpZHRoOjEuNnJlbTtcbiAgICAgICAgICAgIGhlaWdodDoxLjZyZW07XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS42cmVtO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRkYXJrLWdyYXk7XG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNsYXRlKDAsLTUwJSlcbiAgICAgICAgfVxuICAgIH1cbn1cbi8qIGRhc2hMaXN0ICovXG4uZGFzaC1saXN0IHtcbmxpIHtcbiAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgICBwYWRkaW5nLXJpZ2h0OjJyZW07XG4gICAgJjpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgIHBhZGRpbmctbGVmdDoycmVtO1xuICAgICY6YmVmb3Jle1xuICAgICAgICBjb250ZW50Oid8Jztwb3NpdGlvbjphYnNvbHV0ZTtsZWZ0OjA7dG9wOjUwJTt0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLC01MCUpO1xuICAgIH1cbiAgICB9XG59XG59XG5cbi8qIGlubGluZSAqL1xuLmlubGluZS1saXN0IHtcblxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBsaSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICB9XG59XG5cbi8qIGZsZXhMaXN0ICovXG4uZmxleC1saXN0IHtcblxuICAgLy8gQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCkge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBsaSB7XG4gICAgICAgICAgICB3aWR0aDoxMDAlO1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OnNwYWNlLWJldHdlZW47XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIH1cbiAgICAvL31cbn1cblxuLy9jb2xvciBsaXN0IHtcbi5ibGFja2xpc3Qge1xuICAgIGxpIHtcbiAgICAgICAgYSB7XG4gICAgICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiLy9hZGQgcnVsZXMgZm9yIHJlc3BvbnNpdmUgYWN0aW9uIGluIG5pdm8gc2xpZGVycy8vXG4uc2xpZGVyLXdyYXBwZXIudGhlbWUtZGVmYXVsdCB7XG4gIG1heC13aWR0aDogMTAwJTtcbn1cbi50aGVtZS1kZWZhdWx0IC5uaXZvU2xpZGVyIGltZyAge1xuICBtYXgtd2lkdGg6IDEwMCU7XG59XG4udGhlbWUtZGVmYXVsdCAubml2by1jYXB0aW9uIHtcbiAgYSB7XG4gIGJvcmRlcjowO1xuICB9XG4gIC5zaG93aGlkZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OjByZW07XG4gICAgdG9wOjByZW07XG4gICAgYm9yZGVyOjA7XG4gICAgbWFyZ2luOiAwO1xuICB9XG5cbn1cbi5ub3RzZWUge1xuICBkaXNwbGF5Om5vbmU7XG59XG4ubml2b0Rlc2NyaXB0aW9uIHtcbiAgaGVpZ2h0OjIuN3JlbTtcbiAgaDMge1xuICAgIG1hcmdpbi1yaWdodDo2cmVtO1xuICB9XG59XG5cbi5zaG93TW9yZSB7XG4gIC5uaXZvRGVzY3JpcHRpb24ge1xuICAgIGhlaWdodDphdXRvXG4gIH1cbiAgLm5vdHNlZSB7XG4gICAgZGlzcGxheTppbmxpbmU7XG4gIH1cbiAgLnNlZSB7XG4gICAgZGlzcGxheTpub25lO1xuICB9XG5cbiAgLm5pdm8tY2FwdGlvbiAge1xuICAgIHBhZGRpbmc6IDAgMTBweDtcbiAgfVxufVxuXG4ubml2b0Rlc2NyaXB0aW9uIHtcbiAgb3ZlcmZsb3c6IHNjcm9sbDtcbn1cbiIsIi8qXG4gKlxuICogUmVzdHlsaW5nIGFuZCBhZGRvbnMgb24gRm91bmRhdGlvbiBmb3Jtc1xuICpcbiAqL1xuJGZsYXRmb3JtLWxhYmVsLXdpZHRoOiAyMjBweCAhZGVmYXVsdDtcblxuZm9ybXtcblxuICAgIC8qXG4gICAgICogU2ltcGxlIGZvcm0gd2l0aCBuaWNlbHkgc3RhY2tlZCBsYWJlbCtpbnB1dFxuICAgICAqL1xuICAgICYuY29vbC1zdGFja3tcbiAgICAgICAgaW5wdXQsXG4gICAgICAgIHRleHRhcmVhLFxuICAgICAgICBzZWxlY3R7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwLjNyZW07XG4gICAgICAgIH1cblxuICAgICAgICBsYWJlbCAuYXN0ZXJpc2t7XG4gICAgICAgICAgICBjb2xvcjogbGlnbnRlbigkcmVkLDEwJSk7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBEaXJlY3QgcmFkaW8gYnVsbGV0IGxpc3Qgd2lsbCBiZSBpbmxpbmVcbiAgICAgICAgLmlubGluZS1yYWRpb3tcbiAgICAgICAgICAgICY+dWx7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuXG4gICAgICAgICAgICAgICAgJj5saXtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG4gICAgICAgICAgICAgICAgICAgICYrbGl7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMXJlbTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5yb3d7XG4gICAgICAgICAgICAmKy5yb3d7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMXJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5maWVsZC13cmFwcGVye1xuICAgICAgICAgICAgbGFiZWwsXG4gICAgICAgICAgICAubGFiZWx7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmKy5maWVsZC13cmFwcGVye1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDAuNXJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qXG4gICAgICogQXZvaWQgdG8gZGlzcGxheSByZXF1aXJlZCBtYXJrcyBvbiBmaWVsZHNcbiAgICAgKi9cbiAgICAuZGlzY3JlZXR7XG4gICAgICAgIGxhYmVsIC5hc3Rlcmlza3tcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG5cblxuXG5cbn1cblxuLypcbiAqIENsZWFuIGZsYXQgZm9ybSB3aXRoIGxhYmVsIGFuZCBpbnB1dCBvbiB0aGUgc2FtZSBiYXNlbGluZVxuICpcbiAqIEJvdGggc3VwcG9ydCByZWFjdC1mb3JtIChzbWFydC0qKikgYW5kIGNyaXNweSBmb3JtcyAoaG9sZGVyKVxuICovXG4uZmxhdC1mb3Jte1xuICAgIGZvcm0sXG4gICAgLndyYXBwZXJ7XG4gICAgICAgIC5zbWFydC1maWVsZCxcbiAgICAgICAgLmhvbGRlcntcbiAgICAgICAgICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuICAgICAgICAgICAgLy8gRmllbGQgbGFiZWxcbiAgICAgICAgICAgIGxhYmVsIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjJyZW07XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAuNXJlbSAxLjVyZW0gMC41cmVtIDAuNXJlbTtcbiAgICAgICAgICAgICAgICBAbWVkaWEgI3skbWVkaXVtLXVwfSB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAzMyU7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxLjVyZW07XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAvLyBCYXNlIHN0eWxpbmcgZm9yIEFMTCBpbnB1dCBraW5kXG4gICAgICAgICAgICBzZWxlY3QsXG4gICAgICAgICAgICBpbnB1dFt0eXBlPVwidGV4dFwiXSxcbiAgICAgICAgICAgIGlucHV0W3R5cGU9XCJwYXNzd29yZFwiXSxcbiAgICAgICAgICAgIGlucHV0W3R5cGU9XCJkYXRlXCJdLFxuICAgICAgICAgICAgaW5wdXRbdHlwZT1cImRhdGV0aW1lXCJdLFxuICAgICAgICAgICAgaW5wdXRbdHlwZT1cImRhdGV0aW1lLWxvY2FsXCJdLFxuICAgICAgICAgICAgaW5wdXRbdHlwZT1cIm1vbnRoXCJdLFxuICAgICAgICAgICAgaW5wdXRbdHlwZT1cIndlZWtcIl0sXG4gICAgICAgICAgICBpbnB1dFt0eXBlPVwiZW1haWxcIl0sXG4gICAgICAgICAgICBpbnB1dFt0eXBlPVwibnVtYmVyXCJdLFxuICAgICAgICAgICAgaW5wdXRbdHlwZT1cInNlYXJjaFwiXSxcbiAgICAgICAgICAgIGlucHV0W3R5cGU9XCJ0ZWxcIl0sXG4gICAgICAgICAgICBpbnB1dFt0eXBlPVwidGltZVwiXSxcbiAgICAgICAgICAgIGlucHV0W3R5cGU9XCJ1cmxcIl0sXG4gICAgICAgICAgICBpbnB1dFt0eXBlPVwiY29sb3JcIl0sXG4gICAgICAgICAgICB0ZXh0YXJlYSB7XG4gICAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjJyZW07XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMC4zcmVtO1xuICAgICAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheTtcbiAgICAgICAgICAgICAgICBAbWVkaWEgI3skbWVkaXVtLXVwfSB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAzMyU7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIGxpZ250ZW4oJHJlZCwxMCUpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLy8gUG9zaXRpb24gYWRqdXN0bWVudCBmb3IgcmFkaW9cbiAgICAgICAgICAgIGlucHV0W3R5cGU9XCJyYWRpb1wiXSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwLjhyZW0gMC40cmVtIDFyZW07XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHNlbGVjdCB7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAzcmVtO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAvLyBSZXF1aXJlZCBmaWVsZCBtYXJrXG4gICAgICAgICAgICAmLnNtYXJ0LXJlcXVpcmVkIHt9XG5cbiAgICAgICAgICAgIC8vIEZpZWxkIHZhbGlkYXRpb24gZXJyb3IgZm9yIHJlYWN0LWpzXG4gICAgICAgICAgICAmLnNtYXJ0LWVycm9ye1xuICAgICAgICAgICAgICAgIGlucHV0IHtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiByZWQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIC5lcnJvci1tZXNzYWdlIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IHJlZDtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMWVtO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC8vIEZpZWxkIHZhbGlkYXRpb24gZXJyb3IgZm9yIGNyaXNweS1mb3JtL2FiaWRlXG4gICAgICAgICAgICAmLmVycm9ye1xuICAgICAgICAgICAgICAgIHNlbGVjdCxcbiAgICAgICAgICAgICAgICBpbnB1dCB7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogcmVkO1xuICAgICAgICAgICAgICAgICAgICAvLyBHZXQgYmFjayBtYXJnaW4gbG9zdCBpbiBlcnJvciBraW5kXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDE2KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgc21hbGwuZXJyb3J7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxZW07XG4gICAgICAgICAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgICAgICAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiByZWQ7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLy8gTW9zdGx5IGZvciByZWFjdC1qc1xuICAgICAgICAgICAgLmlubGluZS1yYWRpbyB7XG4gICAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICAgICAgbGFiZWwge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDowO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLy8gTW9zdGx5IGZvciBjcmlzcHkgZm9ybXNcbiAgICAgICAgICAgICYuaG9sZGVyLWlubGluZS1yYWRpbyB7XG4gICAgICAgICAgICAgICAgQGV4dGVuZCAuY2xlYXJmaXg7XG5cbiAgICAgICAgICAgICAgICB1bHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgICAgICAgICBAbWVkaWEgI3skbWVkaXVtLXVwfSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMzMlO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgbGl7XG4gICAgICAgICAgICAgICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBsYWJlbCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgaW5wdXR7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmJ1dHRvbi1ob2xkZXJ7XG4gICAgICAgICAgICBwYWRkaW5nOiAxcmVtIDA7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIH1cblxuICAgICAgICBmaWVsZHNldCxcbiAgICAgICAgLmZpZWxkc2V0e1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgcGFkZGluZzogMnJlbSAyLjVyZW07XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZGFyay1ncmF5O1xuICAgICAgICAgICAgYm9yZGVyOiAwO1xuXG4gICAgICAgICAgICBmaWVsZHNldCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDJyZW0gMHJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5sZWdlbmQge1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMCAwIDIuNXJlbTtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDo2MDA7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRkYXJrLWdyYXk7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRkYXJrLWdyYXk7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDVweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJitmaWVsZHNldCxcbiAgICAgICAgICAgICYrZGl2e1xuICAgICAgICAgICAgICAgIGJvcmRlci10b3A6IHJlbS1jYWxjKDRweCkgc29saWQgJHdoaXRlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5nZXJhbmNlIHtcbiAgICAgICAgICAgIGZpZWxkc2V0IHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTo0cmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyogV2hlbiB0aGVyZSBpcyBhIGZvcm0gd2l0aG91dCBmaWVsZHNldCwgbmVlZCB0byBmaWxsIGJnICovXG4gICAgJi5uby1maWVsZHNldHN7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRkYXJrLWdyYXk7XG4gICAgICAgIGJvcmRlcjogMDtcbiAgICB9XG59XG5cbi5maWVsZHNldFNlYXJjaCB7XG4gICAgYm9yZGVyOjA7XG4gICAgcGFkZGluZzowO1xuICAgIGxlZ2VuZCB7ZGlzcGxheTpub25lfVxufVxuIiwiLypcbiAqIFxuICogUGFnaW5hdGlvblxuICogXG4gKi9cblxudWwucGFnaW5hdGlvbntcbiAgICBib3JkZXItdG9wOjRweCAkbGlnaHQtZ3JheSBzb2xpZDtcbiAgICBtYXJnaW4tdG9wOjFyZW07XG4gICAgcGFkZGluZy10b3A6MXJlbTtcbiAgICBmbG9hdDpsZWZ0O1xuICAgIHdpZHRoOjEwMCU7XG4gICAgY2xlYXI6IGJvdGg7XG4gICAgbGkge1xuICAgICAgICBmb250LXNpemU6IDEuM3JlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgYSAsc3BhbntcbiAgICAgICAgICAgICAgICBkaXNwbGF5OmJsb2NrO1xuICAgICAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgICAgIGJvcmRlcjokZGFyay1ncmF5IDFweCBzb2xpZCA7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJGJsYWNrO1xuICAgICAgICAgICAgICAgIGNvbG9yOiR3aGl0ZTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwLjFyZW0gMC40cmVtO1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6MC40cmVtO1xuXG4gICAgICAgIH1cbiAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgICAgYSAsc3BhbntcbiAgICAgICAgICAgIGJvcmRlcjokZGFyay1ncmF5IDFweCBzb2xpZCA7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkcmVkO1xuICAgICAgICAgICAgY29sb3I6JHdoaXRlO1xuXG4gICAgICAgIH1cblxuICAgICAgICB9XG4gICAgICAgICYuZGlzYWJsZWQge1xuICAgICAgICAgICAgcGFkZGluZzowcHg7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07fVxuICAgIH1cblxufVxuIiwiLypcbiAqIENvbW1vbiBhZGRvbnNcbiAqL1xuKjpmb2N1cyB7XG4gIG91dGxpbmU6IDA7XG59XG5cblxuLy8gUmFjY291cmNpIGRlIHBvc2l0aW9ubmVtZW50IHJlbGF0aWZcbi5yZWxhdGl2ZS1wb3NpdGlvbntcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi8vIEltYWdlIGVuIGJsb2MgY2VudHJlXG5pbWcuY2VudGVyZWR7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBcbn1cbi8vIEV0aXJlIHByb3BvcnRpb25lbGxlbWVudCBsJ2ltYWdlIGEgbGEgbGFyZ2V1ciBkZSBzb24gY29udGVuZXVyXG5pbWcuZXhwYW5kZWR7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiBhdXRvO1xufVxuXG4vLyBGbHVpZCByb3csIHRha2UgdGhlIGZ1bGwgd2lkdGggYnV0IGtlZXAgbm9ybWFsIHJvdyBhbmQgY29sdW1ucyBiZWhhdmlvcnNcbi5yb3cucm93LWZsdWlke1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAvLyBSZXN0b3JlIHRoZSBpbml0aWFsIGJlaGF2aW9yIHJlc3RyYWluZWQgdG8gdGhlIGdyaWRcbiAgICAucm93e1xuICAgICAgICBtYXJnaW46IGF1dG87XG4gICAgICAgIEBpbmNsdWRlIGdyaWQtcm93O1xuICAgICAgICAvLyBQcmVzZXJ2ZSBuZXN0ZWQgZmx1aWQgYmVoYXZpb3JcbiAgICAgICAgJi5yb3ctZmx1aWR7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cbiAgICB9XG59XG5cblxuLyogdmVydHNwYWNlIGZvciBhIHRvcCBhbmQgYm90dG9tIG1hcmdpbiovXG5cbi8vbGFyZ2VyIHJvd1xuLnZlcnRTcGFjZSB7XG4gIHBhZGRpbmctYm90dG9tOjFyZW07XG4gIHBhZGRpbmctdG9wOjFyZW07XG59XG5cblxuLy9sYXJnZXIgcm93IFgyXG4udmVydFNwYWNlWDIge1xuICBwYWRkaW5nLWJvdHRvbToycmVtO1xuICBwYWRkaW5nLXRvcDoycmVtO1xufVxuXG5cbi5tYXJnaW5Ub3BMYXJnZSB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlIHVwKSB7XG4gICAgbWFyZ2luLXRvcDogMXJlbTtcbiAgfVxufVxuXG4uZW1waGF0aXNtIHtcbnRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cbi5jYXBpdHVuZGVyIHtcbnRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIHRleHQtZGVjb3JhdGlvbjp1bmRlcmxpbmU7XG59XG4vL2xpbmUgdW5kZXJcbi5saW5lVW5kZXIge1xuICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgJjphZnRlciB7XG4gICAgY29udGVudDonJztcbiAgICBiYWNrZ3JvdW5kOiMwMDA7XG4gICAgd2lkdGg6M3JlbTtcbiAgICBoZWlnaHQ6M3B4O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3R0b206LTAuNXJlbTtcbiAgICBsZWZ0OjUwJTtcblxuICAgIEBpbmNsdWRlIHRyYW5zbGF0ZSgtNTAlLDAlKTtcblxuICB9XG59XG5cbi51bnBhZGRlZCB7XG5wYWRkaW5nOjA7XG59XG4udW5tYXJnaW4ge1xuICBtYXJnaW46MDtcbn1cblxuLy8gUmVtb3ZlIGNvbHVtbiBwYWRkaW5nIGZvciBzaW1wbGUgaW5uZXJcbi8vLnJvdyAuY29sdW1ucyA+IC5yb3ctaW5uZXJ7XG4vLyAgICBtYXJnaW4tbGVmdDogLSgkY29sdW1uLWd1dHRlci8yKTtcbi8vICAgIG1hcmdpbi1yaWdodDogLSgkY29sdW1uLWd1dHRlci8yKTtcbi8vfVxuXG4vLyBSZW1vdmUgcGFkZGluZyBvbiBjb2x1bW5zXG4uY29sdW1uc3tcbiAgICAmLnVucGFkZGVke1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgJi5zbWFsbC11bnBhZGRlZHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIH1cbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gb25seSkgIHtcbiAgICAgICAgJi5tZWRpdW0tdW5wYWRkZWR7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICB9XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2Ugb25seSkge1xuICAgICAgICAmLmxhcmdlLXVucGFkZGVke1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgfVxuICAgIH1cbn1cbi8vLy9tb2RhbCBleHRlbmRcbmJvZHkubW9kYWwtb3BlbiB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIG1pbi1oZWlnaHQ6IDEwMHZoO1xufVxuLy8ucmV2ZWFsLW1vZGFsIHtcbi8vIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuLy8gIGhlaWdodDoxMDB2aDtcbi8vICB3aWR0aDoxMDAlO1xuLy8gIGJveC1zaGFkb3c6IG5vbmU7XG4vLyAgcG9zaXRpb246Zml4ZWQ7XG4vLyAgQGluY2x1ZGUgcmV2ZWFsLW1vZGFsLXN0eWxlKFxuLy8gICAgLy8gU2V0cyBiYWNrZ3JvdW5kIGNvbG9yIG9mIHJldmVhbCBtb2RhbC4gRGVmYXVsdDogJHJldmVhbC1tb2RhbC1iZyBvciAjZmZmXG4vLyAgICAkYmc6dHJhbnNwYXJlbnQsXG4vLyAgICAgIC8vIFNldCByZXZlYWwgYm9yZGVyIHN0eWxlLiBEZWZhdWx0OiAkcmV2ZWFsLWJvcmRlci1zdHlsZSBvciBzb2xpZFxuLy8gICAgJGJvcmRlcjpmYWxzZSxcbi8vICAgICAgLy8gQ29sb3Igb2YgYm9yZGVyLiBEZWZhdWx0OiAkcmV2ZWFsLWJvcmRlci1jb2xvci5cbi8vICAgICRib3JkZXItd2lkdGg6MHB4LFxuLy8gICAgICAvLyBDaG9vc2Ugd2hldGhlciBvciBub3QgdG8gaW5jbHVkZSB0aGUgZGVmYXVsdCBib3gtc2hhZG93LiBEZWZhdWx0OiB0cnVlLCBPcHRpb25zOiBmYWxzZVxuLy8gICAgJGJveC1zaGFkb3c6dHJ1ZSxcbi8vICAgICAgLy8gRGVmYXVsdDogJHJldmVhbC1wb3NpdGlvbi10b3Agb3IgNTBweFxuLy8gICAgJHRvcC1vZmZzZXQ6MHB4XG4vLyAgKTtcbi8vXG4vL31cblxuLy8gcmVsYXRpdmUgYmxvY2tcbi5yZWxhdGl2ZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi8vIFJlbW92ZSBhbGwgbWFyZ2luc1xuLnVubWFyZ2Vke1xuICAgIG1hcmdpbjogMDtcbn1cblxuLypcbiAqIFN1cHBsZW1lbnRhcnkgZGl2aWRlciBjbGFzc2VzXG4gKi9cbi8vIEFwcGx5IG1hcmdpbiBib3R0b20gb24gcm93c1xuLnJvdy5kaXZpZGVye1xuICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDEwcHgpO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIHVwKSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDMwcHgpO1xuICAgIH1cbn1cbi8vIEJ5IGRlZmF1bHQsIGNvbHVtbnMgZG9udCBuZWVkcyBvZiBhIGRpdmlkZXIgaW4gbWVkaXVtIGRpc3BsYXkgYW5kIHVwLFxuLy8gYmVjYXVzZSB0aGV5IHNob3VsZCBwcm9iYWJseSBmbG9hdGluZ1xuLmNvbHVtbnMuZGl2aWRlcntcbiAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYyg1cHgpO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIHVwKSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxufVxuXG4vLyBTb21ldGltZSB3ZSBuZWVkIHRvIHNlcGFyYXRlIGFuIGltZyBmcm9tIGFuIGFub3RoZXIgYWRqYWNlbnQgZWxlbWVudFxuaW1nLmRpdmlkZXJ7XG4gICAgbWFyZ2luLWJvdHRvbTogJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tO1xufVxuXG5cbi8qXG4gKiBWaXN1YWxseSB0cmFuc2Zvcm0gYSBkcm9wZG93biBidXR0b24gaW4udG8gYSBzZWxlY3QgbGlzdCB3aXRoIHZlcnRpY2FsXG4gKiBzY3JvbGxiYXIuIFRoaXMgaXMgdXNlZnVsIGZvciBsb25nIGxpc3QgaXRlbXMgdGhhdCBjYW4gaW1wYWN0IG9uIHBhZ2Ugc2l6ZVxuICovXG4uZi1kcm9wZG93bi5vdmVyZmxvd3tcbiAgICBvdmVyZmxvdzogYXV0bztcbiAgICBoZWlnaHQ6IDIwMHB4O1xuICAgIC8vIFZhcmlvdXMgc2l6ZXNcbiAgICAmLm92ZXJmbG93LTEwMHsgaGVpZ2h0OiAxMDBweDsgfVxuICAgICYub3ZlcmZsb3ctMTUweyBoZWlnaHQ6IDE1MHB4OyB9XG4gICAgJi5vdmVyZmxvdy0yMDB7IGhlaWdodDogMjAwcHg7IH1cbiAgICAmLm92ZXJmbG93LTI1MHsgaGVpZ2h0OiAyNTBweDsgfVxuICAgICYub3ZlcmZsb3ctMzAweyBoZWlnaHQ6IDMwMHB4OyB9XG59XG5cbi5zbWFsbHJvdW5kZWQge1xuICBib3JkZXItcmFkaXVzOiA2cHg7XG4gIG92ZXJmbG93OmhpZGRlbjtcbiAgei1pbmRleDogMDtcbn1cblxuLmNlbnRlcmFicyB7XG4gIHRvcDo1MCU7XG4gIGxlZnQ6NTAlO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIEBpbmNsdWRlIHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbn1cblxuLmJvdHRvbVJpZ2h0YWJzIHtcbiAgYm90dG9tOjAlO1xuICByaWdodDowJTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuXG59XG5cbi5ib3R0b21hYnMge1xuICBib3R0b206MCU7XG4gIGxlZnQ6MCU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcblxufVxuXG4ubWFyZ2luIHtcbiAgbWFyZ2luOjEuNXJlbTtcbn1cblxuLnJvdW5kIHtcbiAgYm9yZGVyLXJhZGl1czogNTAwcHg7XG59XG5cblxuXG5cbi5idXR0b24uYmxhY2tidXR0b24ge1xuICBiYWNrZ3JvdW5kOiAkYmxhY2s7XG4gICZob3ZlciB7XG4gICAgYmFja2dyb3VuZDogJHJlZDtcbiAgfVxufVxuXG4uaXMtYWN0aXZlIHtcbiAgYmFja2dyb3VuZDogJG1lZGl1bS1ncmF5O1xufVxuXG4uaW5wdXQtZ3JvdXAge1xuICAuc3RhcnQsLmVuZCB7XG4gICAgd2lkdGg6NDglO1xuICAgIGZsb2F0OiBsZWZ0O1xuXG4gIH1cbiAgLmlucHV0LWdyb3VwLWFkZG9uIHtcbiAgICB3aWR0aDogYXV0bztcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgZmxvYXQ6bGVmdDtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB9XG59XG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vY29ubmVjdGlvbiBib3hcbi5ib3gge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogMDtcbiAgb3BhY2l0eTogMTtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHBhZGRpbmc6IDYwcHggNTBweCA0MHB4IDUwcHg7XG4gIHdpZHRoOiAxMDAlO1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIC1tcy10cmFuc2Zvcm06IHNjYWxlKDEpO1xuICB6LWluZGV4OiA1O1xuICAmLmJhY2sge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMC45NSk7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDAuOTUpO1xuICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlKDAuOTUpO1xuICAgIHRvcDogLTIwcHg7XG4gICAgb3BhY2l0eTogLjg7XG4gICAgei1pbmRleDogLTE7XG4gIH1cbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAzMHB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogLTEwcHg7XG4gICAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjYpO1xuICAgIGxlZnQ6IDA7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwLjk1KTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMC45NSk7XG4gICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMC45NSk7XG4gICAgei1pbmRleDogLTE7XG4gIH1cbn1cblxuLm92ZXJib3ggLnRpdGxlIHtcbiAgY29sb3I6ICNmZmY7XG4gICY6YmVmb3JlIHtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICB9XG59XG5cbi5tYXRlcmlhbENvbnRhaW5lciB7XG4gIC50aXRsZSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgbGluZS1oZWlnaHQ6IDQ2cHg7XG4gICAgZm9udC1zaXplOiAzNHB4O1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDJweDtcbiAgICBjb2xvcjogI0VEMjU1MztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgJjpiZWZvcmUge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIHdpZHRoOiA1cHg7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICBsZWZ0OiAtNTBweDtcbiAgICAgIGJhY2tncm91bmQ6ICNFRDI1NTM7XG4gICAgfVxuICB9XG4gIC5pbnB1dCB7XG4gICAgdHJhbnNpdGlvbjogMzAwbXMgY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC4yLCAxKTtcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IDMwMG1zIGN1YmljLWJlemllcigwLjQsIDAsIDAuMiwgMSk7XG4gICAgLW1zLXRyYW5zaXRpb246IDMwMG1zIGN1YmljLWJlemllcigwLjQsIDAsIDAuMiwgMSk7XG4gICAgbGFiZWwsIGlucHV0LCAuc3BpbiB7XG4gICAgICB0cmFuc2l0aW9uOiAzMDBtcyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIsIDEpO1xuICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiAzMDBtcyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIsIDEpO1xuICAgICAgLW1zLXRyYW5zaXRpb246IDMwMG1zIGN1YmljLWJlemllcigwLjQsIDAsIDAuMiwgMSk7XG4gICAgfVxuICB9XG4gIC5idXR0b24ge1xuICAgIHRyYW5zaXRpb246IDMwMG1zIGN1YmljLWJlemllcigwLjQsIDAsIDAuMiwgMSk7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiAzMDBtcyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIsIDEpO1xuICAgIC1tcy10cmFuc2l0aW9uOiAzMDBtcyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIsIDEpO1xuICAgIGJ1dHRvbiAuYnV0dG9uLmxvZ2luIGJ1dHRvbiBpLmZhIHtcbiAgICAgIHRyYW5zaXRpb246IDMwMG1zIGN1YmljLWJlemllcigwLjQsIDAsIDAuMiwgMSk7XG4gICAgICAtd2Via2l0LXRyYW5zaXRpb246IDMwMG1zIGN1YmljLWJlemllcigwLjQsIDAsIDAuMiwgMSk7XG4gICAgICAtbXMtdHJhbnNpdGlvbjogMzAwbXMgY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC4yLCAxKTtcbiAgICB9XG4gIH1cbiAgLm1hdGVyaWFsLWJ1dHRvbiAuc2hhcGUge1xuICAgICY6YmVmb3JlLCAmOmFmdGVyIHtcbiAgICAgIHRyYW5zaXRpb246IDMwMG1zIGN1YmljLWJlemllcigwLjQsIDAsIDAuMiwgMSk7XG4gICAgICAtd2Via2l0LXRyYW5zaXRpb246IDMwMG1zIGN1YmljLWJlemllcigwLjQsIDAsIDAuMiwgMSk7XG4gICAgICAtbXMtdHJhbnNpdGlvbjogMzAwbXMgY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC4yLCAxKTtcbiAgICB9XG4gIH1cbiAgLmJ1dHRvbi5sb2dpbiBidXR0b24ge1xuICAgIHRyYW5zaXRpb246IDMwMG1zIGN1YmljLWJlemllcigwLjQsIDAsIDAuMiwgMSk7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiAzMDBtcyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIsIDEpO1xuICAgIC1tcy10cmFuc2l0aW9uOiAzMDBtcyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIsIDEpO1xuICB9XG59XG5cbi5tYXRlcmlhbC1idXR0b24sIC5hbHQtMiwgLm1hdGVyaWFsLWJ1dHRvbiAuc2hhcGUsIC5hbHQtMiAuc2hhcGUsIC5ib3gge1xuICB0cmFuc2l0aW9uOiA0MDBtcyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIsIDEpO1xuICAtd2Via2l0LXRyYW5zaXRpb246IDQwMG1zIGN1YmljLWJlemllcigwLjQsIDAsIDAuMiwgMSk7XG4gIC1tcy10cmFuc2l0aW9uOiA0MDBtcyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIsIDEpO1xufVxuXG4ubWF0ZXJpYWxDb250YWluZXIge1xuICBpbnB1dDotd2Via2l0LWF1dG9maWxsIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGUgIWltcG9ydGFudDtcbiAgfVxuICAuaW5wdXQge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIGxhYmVsLCBpbnB1dCwgLnNwaW4ge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgICY6LXdlYmtpdC1hdXRvZmlsbCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IzAwMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLmJ1dHRvbiB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgYnV0dG9uIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgfVxuICB9XG4gIC5pbnB1dCwgLmJ1dHRvbiB7XG4gICAgbWFyZ2luLXRvcDogMzBweDtcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cbiAgLmlucHV0IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgaW5wdXQge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIH1cbiAgfVxuICAuYnV0dG9uIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgYnV0dG9uIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB9XG4gIH1cbiAgLmlucHV0IHtcbiAgICBpbnB1dCB7XG4gICAgICBoZWlnaHQ6IDYwcHg7XG4gICAgICB0b3A6IDEwcHg7XG4gICAgICBib3JkZXI6IG5vbmU7XG4gICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOCk7XG4gICAgICBmb250LXdlaWdodDogMzAwO1xuICAgIH1cbiAgICBpbnB1dFt0eXBlPVwidGV4dFwiXSAsaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdIHtcblxuICAgICAgIGJveC1zaGFkb3c6MCAwIDAgcmdiYSgwLDAsMCwwKTtcbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBib3JkZXI6MDtcbiAgICAgICAgIGJveC1zaGFkb3c6MCAwIDAgcmdiYSgwLDAsMCwwKTtcblxuICAgICAgfX1cbiAgICBsYWJlbCB7XG4gICAgICBmb250LXNpemU6IDI0cHg7XG4gICAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjgpO1xuICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICB9XG4gIH1cbiAgLmJ1dHRvbiBidXR0b24ge1xuICAgIHBhZGRpbmc6MDtcbiAgICBmb250LXNpemU6IDI0cHg7XG4gICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44KTtcbiAgICBmb250LXdlaWdodDogMzAwO1xuICB9XG4gIC5pbnB1dCB7XG4gICAgJjpiZWZvcmUsIC5zcGluIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxcHg7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBib3R0b206IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgIH1cbiAgICAmOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjEpO1xuICAgICAgei1pbmRleDogMztcbiAgICB9XG4gICAgLnNwaW4ge1xuICAgICAgYmFja2dyb3VuZDogI0VEMjU1MztcbiAgICAgIHotaW5kZXg6IDQ7XG4gICAgICB3aWR0aDogMDtcbiAgICB9XG4gIH1cbn1cblxuLm92ZXJib3ggLmlucHV0IHtcbiAgLnNwaW4ge1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMSk7XG4gIH1cbiAgJjpiZWZvcmUge1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTtcbiAgfVxufVxuXG4ubWF0ZXJpYWxDb250YWluZXIge1xuXG4gIC5pbnB1dCBsYWJlbCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMTBweDtcbiAgICBsZWZ0OiAwO1xuICAgIHotaW5kZXg6IDI7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGxpbmUtaGVpZ2h0OiA2MHB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNGRkY7XG4gIH1cblxuICAuYnV0dG9uIHtcbiAgICAmLmxvZ2luIHtcbiAgICAgIHdpZHRoOiA2MCU7XG4gICAgICBsZWZ0OiAyMCU7XG4gICAgICBwYWRkaW5nOjA7XG4gICAgICBidXR0b24ge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDY0cHg7XG4gICAgICAgIGxlZnQ6IDAlO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgYm9yZGVyOiAzcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjEpO1xuICAgICAgICBmb250LXdlaWdodDogOTAwO1xuICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMik7XG4gICAgICB9XG4gICAgfVxuICAgIGJ1dHRvbiB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGxpbmUtaGVpZ2h0OiA2NHB4O1xuICAgICAgbGVmdDogMCU7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlcjogM3B4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA5MDA7XG4gICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjIpO1xuICAgIH1cbiAgICAmLmxvZ2luIHtcbiAgICAgIG1hcmdpbi10b3A6IDMwcHg7XG4gICAgfVxuICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgYnV0dG9uIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgICBjb2xvcjogI0VEMjU1MztcbiAgICAgIGJvcmRlcjogbm9uZTtcbiAgICB9XG4gICAgJi5sb2dpbiBidXR0b24ge1xuICAgICAgJi5hY3RpdmUge1xuICAgICAgICBib3JkZXI6IDNweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgICAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgICAgICAgc3BhbiB7XG4gICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDApO1xuICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgICAgICAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgICAgICAgfVxuICAgICAgICBpLmZhIHtcbiAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSkgcm90YXRlKC0wZGVnKTtcbiAgICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSkgcm90YXRlKC0wZGVnKTtcbiAgICAgICAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgxKSByb3RhdGUoLTBkZWcpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBpLmZhIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiA2MHB4O1xuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDApIHJvdGF0ZSgtNDVkZWcpO1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMCkgcm90YXRlKC00NWRlZyk7XG4gICAgICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlKDApIHJvdGF0ZSgtNDVkZWcpO1xuICAgICAgfVxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGNvbG9yOiAjRUQyNTUzO1xuICAgICAgICBib3JkZXItY29sb3I6ICNFRDI1NTM7XG4gICAgICB9XG4gICAgfVxuICAgIG1hcmdpbjogNDBweCAwO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgei1pbmRleDogMjtcbiAgICBidXR0b24ge1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgei1pbmRleDogMjtcbiAgICB9XG4gIH1cbn1cblxuLnBhc3MtZm9yZ290IHtcbiAgd2lkdGg6IDEwMCU7XG4gIGZsb2F0OiBsZWZ0O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNCk7XG4gIGZvbnQtc2l6ZTogMTRweDtcbn1cblxuLmNsaWNrLWVmZWN0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIGJhY2tncm91bmQ6ICNFRDI1NTM7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbn1cblxuLm92ZXJib3gge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgb3ZlcmZsb3c6IGluaGVyaXQ7XG4gIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gIHBhZGRpbmc6IDYwcHggNTBweCA0MHB4IDUwcHg7XG4gIC50aXRsZSwgLmJ1dHRvbiwgLmlucHV0IHtcbiAgICB6LWluZGV4OiAxMTE7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAudGl0bGUge1xuICAgIHdpZHRoOiA4MCU7XG4gIH1cbiAgLmlucHV0IHtcbiAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgIGJvcmRlcjowO1xuICAgICBib3gtc2hhZG93OjAgMCAwIHJnYmEoMCwwLDAsMCk7XG4gICAgJjpmb2N1cyB7XG4gICAgICBib3JkZXI6MDtcbiAgICAgICBib3gtc2hhZG93OjAgMCAwIHJnYmEoMCwwLDAsMCk7XG5cbiAgICB9XG4gICAgbGFiZWwge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjokcmVkO1xuICAgIH1cbiAgICBpbnB1dCwgbGFiZWwge1xuICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICB9XG4gIH1cbiAgLm1hdGVyaWFsLWJ1dHRvbiwgLmFsdC0yIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICAuc2hhcGUge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICB9XG59XG5cblxuXG4ubWF0ZXJpYWwtYnV0dG9uLC5hbHQtMiB7XG4gIHdpZHRoOiAxMDBweDtcbiAgaGVpZ2h0OiAxMDBweDtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBiYWNrZ3JvdW5kOiAjRUQyNTUzO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNDBweDtcbiAgcmlnaHQ6IC00MHB4O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHotaW5kZXg6IDEwMDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCUsIDAlKTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwJSwgMCUpO1xuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCUsIDAlKTtcbiAgLnNoYXBlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICAgICY6YmVmb3JlLCY6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIGxlZnQ6IDUwJTtcbiAgICAgIHdpZHRoOiAyNXB4O1xuICAgICAgaGVpZ2h0OiA0cHg7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKSByb3RhdGUoMzYwZGVnKTtcbiAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSkgcm90YXRlKDM2MGRlZyk7XG4gICAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSkgcm90YXRlKDM2MGRlZyk7XG4gICAgfVxuICAgICY6YmVmb3JlIHtcbiAgICAgIHdpZHRoOiAyNXB4O1xuICAgICAgaGVpZ2h0OiA0cHg7XG5cbiAgICB9XG4gICAgJjphZnRlciB7XG4gICAgICB3aWR0aDogNHB4O1xuICAgICAgaGVpZ2h0OiAyNXB4O1xuXG4gICAgfVxufVxuICAmLmFjdGl2ZSB7XG4gICAgdG9wOiA1MCU7XG4gICAgcmlnaHQ6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSg1MCUsIC01MCUpIHJvdGF0ZSgwZGVnKTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKDUwJSwgLTUwJSkgcm90YXRlKDBkZWcpO1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSg1MCUsIC01MCUpIHJvdGF0ZSgwZGVnKTtcblxuICB9XG5cbn1cblxuXG5cbi5tYXRlcmlhbENvbnRhaW5lciB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDQ2MHB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG59XG5cbi5yZXZlYWwtbW9kYWwgLmNsb3NlLXJldmVhbC1tb2RhbCB7XG4gIGNvbG9yOiAkcmVkO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGZvbnQtc2l6ZTogMi41cmVtO1xuICBmb250LXdlaWdodDogOTAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogLTEuNjI1cmVtO1xuICByaWdodDogLTEuMzc1cmVtO1xuICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogM3JlbTtcbiAgaGVpZ2h0OiAzcmVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJvcmRlci1yYWRpdXM6IDUwMHB4O1xuICBsaW5lLWhlaWdodDogMi42cmVtO1xufVxuLmNsb3NlLXJldmVhbC1tb2RhbCB7ZGlzcGxheTpub25lfVxuXG4uY2xlYXIge1xuICBjbGVhcjpib3RoO1xufVxuXG4udW5wYWRkZWQtc21hbGwge1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgZG93bikge1xuICAgIHBhZGRpbmc6MDtcbiAgfVxufVxuW2RhdGEtbGlua10ge1xuICAmOmhvdmVyIHtcbiAgY3Vyc29yOnBvaW50ZXI7XG4gIH1cbn1cblxuLmNpcmNsZS1pY29uIHtcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgyNTUsMjU1LDI1NSwwLjUpO1xuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6NTAlO1xuICAtbW96LWJvcmRlci1yYWRpdXM6NTAlO1xuICBib3JkZXItcmFkaXVzOjUwJTtcbiAgcGFkZGluZzogNHB4O1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiA0cHg7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwwLDAsMC44Mik7XG4gIHdpZHRoOjRyZW07XG4gIGhlaWdodDo0cmVtO1xuICAmOmJlZm9yZSB7XG4gICAgbGluZS1oZWlnaHQ6My40cmVtO1xuICB9XG59XG5cbi5jaXJjbGUtc29jaWFsIHtcbiAgYm9yZGVyOjJweCBzb2xpZCAjMDAwO1xuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6NTAlO1xuICAtbW96LWJvcmRlci1yYWRpdXM6NTAlO1xuICBib3JkZXItcmFkaXVzOjUwJTtcbiAgcGFkZGluZzogNHB4O1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiA0cHg7XG4gIGNvbG9yOiAjMDAwO1xufVxuXG4uYnV0dG9uLmZ1bGwge1xuICBAaW5jbHVkZSBjYWxjKCd3aWR0aCcsJzEwMCUgLSAzcHgnKTtcbiAgbWFyZ2luOjFweDtcbiAgbWFyZ2luLWJvdHRvbToycHg7XG59XG5cbiNsYW5nQ2hvb3NlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYSB7cGFkZGluZy1sZWZ0OjJyZW07cGFkZGluZy1yaWdodDoxcmVtOyY6YmVmb3Jle3RvcDotMnB4O2xlZnQ6MnB4O319XG4gIC5zaG93aW5VUCB7XG4gICAgd2lkdGg6MTAwJTtcbiAgICBhIHt3aWR0aDoxMDAlO31cbiAgICBvcGFjaXR5OiAwO1xuICAgIHotaW5kZXg6IC0xMDtcbiAgICBvdmVyZmxvdzpoaWRkZW47XG4gICAgcG9zaXRpb246YWJzb2x1dGU7XG4gICAgYm90dG9tOjEwMCU7XG5cbiAgICBib3JkZXItYm90dG9tOiAwO1xuICAgIGJvcmRlci1sZWZ0OiAwO1xuICAgIC5yYW5nZS1zbGlkZXIudmVydGljYWwtcmFuZ2Uge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgbGVmdDo1MCU7XG4gICAgfVxuICAgIC5yYW5nZS1zbGlkZXItaGFuZGxlLC5yYW5nZS1zbGlkZXItaGFuZGxlOmhvdmVyIHtcbiAgICAgIGhlaWdodDoxLjlyZW07XG4gICAgICB3aWR0aDoxLjlyZW07XG4gICAgICBib3JkZXItcmFkaXVzOiAxLjlyZW07XG5cbiAgICB9XG4gICAgLnJhbmdlLXNsaWRlci1hY3RpdmUtc2VnbWVudCwucmFuZ2Utc2xpZGVyLnZlcnRpY2FsLXJhbmdlIHtcbiAgICAgIGJvcmRlci1yYWRpdXMgOjJyZW07XG4gICAgfVxuICB9XG4gICY6aG92ZXIge1xuICAgIC5zaG93aW5VUCB7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgICAgei1pbmRleDogMTtcblxuXG4gICAgfVxuICB9XG59XG5cblxuXG4uZnVsbC13aWR0aCB7XG4gIG1heC13aWR0aDogMTAwJTtcbn1cblxuXG4vL29uZ2xldCBzaW1cbi5vbmdsZXRzIHtcbiAgQGluY2x1ZGUgdGFicy1jb250YWluZXI7XG4gIGJvcmRlcjpub25lO1xuICBiYWNrZ3JvdW5kOmRhcmtlbigkZGFyay1ncmF5LDIwJSk7XG4gIC50YWJ7XG4gICAgcGFkZGluZzowLjJyZW0gMXJlbTtcbiAgICBiYWNrZ3JvdW5kOigkZGFyay1ncmF5LDIwJSk7XG4gICAgQGluY2x1ZGUgdGFicy10aXRsZTtcbiAgICBjb2xvcjogJHdoaXRlO1xuICAgICYuc2VsZWN0aW9ubmVkIHtcbiAgICAgIGJhY2tncm91bmQ6JHdoaXRlO1xuICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiR3aGl0ZTtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgfVxuICAgIH1cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQ6ICRibGFjaztcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB9XG4gIH1cbn1cblxuLy96LWluZGV4IG5hdlxuLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICB6LWluZGV4OiAxMDA7fVxuXG5cblxuXG4vKiBBdXRvY29tcGxldGVcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLnVpLWF1dG9jb21wbGV0ZSB7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgY3Vyc29yOiBkZWZhdWx0O3otaW5kZXg6IDIwIH1cbi51aS1hdXRvY29tcGxldGUtbG9hZGluZyB7IGJhY2tncm91bmQ6IHdoaXRlIHVybCgnaW1hZ2VzL3VpLWFuaW1fYmFzaWNfMTZ4MTYuZ2lmJykgcmlnaHQgY2VudGVyIG5vLXJlcGVhdDsgfVxuLnVpLWhlbHBlci1oaWRkZW4tYWNjZXNzaWJsZSB7XG4gIGRpc3BsYXk6bm9uZTtcbn1cblxuLyogd29ya2Fyb3VuZHMgKi9cbiogaHRtbCAudWktYXV0b2NvbXBsZXRlIHsgd2lkdGg6MXB4OyB9IC8qIHdpdGhvdXQgdGhpcywgdGhlIG1lbnUgZXhwYW5kcyB0byAxMDAlIGluIElFNiAqL1xuXG4vKiBNZW51XG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi51aS1tZW51IHtcbiAgbGlzdC1zdHlsZTpub25lO1xuICBwYWRkaW5nOiAxMHB4O1xuICBtYXJnaW46IDA7XG4gIGRpc3BsYXk6YmxvY2s7XG4gIHdpZHRoOmF1dG87XG4gIGJhY2tncm91bmQ6I0ZERkVGRjtcbiAgYm9yZGVyOjFweCBzb2xpZCAkYmxhY2s7XG59XG4udWktbWVudSAudWktbWVudSB7XG4gIG1hcmdpbi10b3A6IC0zcHg7XG59XG4udWktbWVudSAudWktbWVudS1pdGVtIHtcbiAgbWFyZ2luOjA7XG4gIHBhZGRpbmc6IDA7XG4gIHdpZHRoOiBhdXRvO1xuICBib3JkZXItYm90dG9tOjFweCBzb2xpZCAkbGlnaHQtZ3JheTtcbiAgJjpob3ZlciB7Y29sb3I6JHJlZDt9XG59XG4udWktbWVudSAudWktbWVudS1pdGVtIGEge1xuICB0ZXh0LWRlY29yYXRpb246bm9uZTtcbiAgZGlzcGxheTpibG9jaztcbiAgcGFkZGluZzouMmVtIC40ZW07XG4gIGxpbmUtaGVpZ2h0OjEuNTtcbiAgem9vbToxO1xufVxuLnVpLW1lbnUgLnVpLW1lbnUtaXRlbSBhLnVpLXN0YXRlLWhvdmVyLFxuLnVpLW1lbnUgLnVpLW1lbnUtaXRlbSBhLnVpLXN0YXRlLWFjdGl2ZSB7XG4gIG1hcmdpbjogLTFweDtcbn1cblxuLyoqKioqKiByZXN1bHRzICoqKioqKiovXG4ucmVzdWx0cy5tZWRpYS1saXN0IHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tdG9wOjFyZW07cGFkZGluZy10b3A6MXJlbTtcbiAgLm1lZGlhIHtcbiAgICBwYWRkaW5nOjAuNjRyZW07XG4gICAgYm9yZGVyLXRvcDoxcHggZGFzaGVkICRtZWRpdW0tZ3JheTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIC5maWd1cmUge1xuICAgICAgbWFyZ2luLXJpZ2h0OjAuNjRyZW07XG4gICAgICBpbWcge1xuICAgICAgICBtaW4td2lkdGg6IDI0MHB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5cblxuLy8vKioqZ2xvYmFsLWFzaWRlKioqLi8vXG5cbiNnbG9iYWwtYXNpZGUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbmRpdi50YWJsZS1jb250YWluZXIge1xuICB3aWR0aDoxMDAlO1xufVxuXG5cblxuLy8vKioqbGliICoqKioqL1xuXG4ubGlicmFyeSB7XG4gIC5oZWFkZXIge1xuICAgIG1hcmdpbjogMTVweCAwO1xuICB9XG5cbiAgLnRodW1ibmFpbHMgaW1nIHtcbiAgICBtYXJnaW46IDEwcHggMDtcbiAgfVxuICAubWVudS10aHVtYm5haWxzIHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB9XG59XG5cbi5yZWFkZXIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBhZGRpbmctdG9wOiAycmVtO1xuICBwYWRkaW5nLWJvdHRvbTogMnJlbTtcblxuICAuYnRuLWdyb3VwIHtcbiAgICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gICAgJi5tb3JlRm9yaW1nIHtcbiAgICAgIC5idXR0b24ge1xuICAgICAgICBmb250LXNpemU6MS44cmVtO1xuICAgICAgICBwYWRkaW5nOiAwLjRyZW07XG4gICAgICAgICYuem9vbXttYXJnaW4tcmlnaHQ6MCA7fVxuICAgICAgfVxuICAgIH1cbiAgfVxuICAucm93IHtcbiAgICBtYXJnaW46IDA7XG4gICAgLnByZXYsIC5uZXh0LCAuc3Bpbm5lci1jb250YWluZXIsIC5pbWctY29udGFpbmVyIHtcbiAgICAgICRoZWlnaHQ6IDgwMHB4O1xuICAgICAgaGVpZ2h0OiRoZWlnaHQ7XG4gICAgICBsaW5lLWhlaWdodDogJGhlaWdodDtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgfVxuICAgIC5tYWluLWNvbnRhaW5lciB7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgcG9zaXRpb246cmVsYXRpdmU7XG4gICAgICBiYWNrZ3JvdW5kOiAkYmxhY2s7XG4gICAgfVxuICAgIC5zcGlubmVyLWNvbnRhaW5lciB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHRleHQtc2hhZG93OiAwIDAgNDBweCB3aGl0ZTtcbiAgICAgIGRpc3BsYXk6bm9uZTtcbiAgICB9XG4gICAgLmltZy1jb250YWluZXIge1xuICAgICAgJi56b29tZWQge1xuICAgICAgICBvdmVyZmxvdzogc2Nyb2xsO1xuICAgICAgICBpbWcge1xuICAgICAgICAgIG1heC13aWR0aDogbm9uZTtcbiAgICAgICAgICBtYXgtaGVpZ2h0OiBub25lO1xuICAgICAgICAgIGN1cnNvcjogem9vbS1vdXQ7XG4gICAgICAgICAgJi5kcmFnZ2VkIHtcbiAgICAgICAgICAgIGN1cnNvcjogbW92ZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIGltZyB7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgbWF4LWhlaWdodDogMTAwJTtcbiAgICAgICAgY3Vyc29yOiB6b29tLWluO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAucGFnZS1mb3JtIHtcbiAgICB3aWR0aDogMTAwcHg7XG4gICAgbWFyZ2luOiA4cHggYXV0byAycmVtIC8gMjtcbiAgICBpbnB1dFtuYW1lPSdwYWdlJ10ge1xuICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgfVxuICB9XG59XG5cbiNvZmZlbnNpdmUtbW9kYWwge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgei1pbmRleDogMzA7XG4gIGNvbG9yOiAkd2hpdGU7XG4gIGJhY2tncm91bmQtY29sb3I6ICRibGFjaztcbiAgbWFpbiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoMSwgcCB7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBhIHtcbiAgICAgICAgcGFkZGluZzogMnJlbTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuI251bWJlcnBhZ2Uge1xuICB3aWR0aDphdXRvO1xuICAjcGFnZV9udW1iZXIge1xuICAgIHdpZHRoOjkwcHg7XG4gICAgZmxvYXQ6bGVmdDtcbiAgfVxuICAuaW5wdXQtZ3JvdXAtYWRkb24ge1xuICAgIGRpc3BsYXk6aW5saW5lLWJsb2NrO1xuICAgIGZsb2F0OmxlZnQ7XG4gICAgbGluZS1oZWlnaHQ6Mi40Mzc1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC42cmVtO1xuICB9XG5cbn1cblxuXG5cbi8vLy9cbi5pc01vYmlsZSB7XG4gIC5ob21iYW5fdmlkIHtcbiAgICBkaXNwbGF5OiBub25lO1xuXG4gIH1cbiAgLmhvbWJhbl9pbWcge1xuICAgIGRpc3BsYXk6YmxvY2tcbiAgfVxufVxuXG4uaG9tYmFuX2ltZyB7XG4gIG1pbi13aWR0aDoxMDAlIDtcbiAgaGVpZ2h0OjUwdmg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogbm9uZTtcbiAgaW1nIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIH1cbn1cblxuLy8vZGwtaG9yaXpvbnRhbFxuZGwuZGwtaG9yaXpvbnRhbCB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgZmxvYXQ6IGxlZnQ7XG4gZHQge1xuICAgIG1hcmdpbi1ib3R0b206IDAuM3JlbTtcbiAgICBmbG9hdDogbGVmdDtcbiAgIGNsZWFyOmxlZnQ7XG4gICBjb2xvcjojNjY2O1xuICAgd2lkdGg6MTJyZW07XG4gICAmOmFmdGVyIHtcbiAgICAgY29udGVudDonIDogJztcbiAgIH07XG4gIH1cbiAgZGQge1xuICAgIG1hcmdpbi1ib3R0b206IDAuM3JlbTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBtYXJnaW4tbGVmdDowLjRyZW07XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDE1cmVtKTtcbiAgfVxufVxuXG5kbC5kbC1ob3Jpem9udGFsLXRpZ2h0IHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBmbG9hdDogbGVmdDtcbiBkdCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMC4zcmVtO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgY2xlYXI6bGVmdDtcbiAgIGNvbG9yOiM2NjY7XG4gICB3aWR0aDo4cmVtO1xuICAgJjphZnRlciB7XG4gICAgIGNvbnRlbnQ6JyA6ICc7XG4gICB9O1xuICB9XG4gIGRkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjNyZW07XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgbWFyZ2luLWxlZnQ6MC40cmVtO1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAxNXJlbSk7XG4gIH1cbn1cbiIsIi8qXG4gKlxuICogQWxsIHN0dWZmIGZvciBmb290ZXJcbiAqXG4gKi9cblxuLy8gZm9vdGVyIENTU1xuXG4uZm9vdGVyIHtcbiAgICBmbG9hdDpsZWZ0O1xuICAgIG1hcmdpbjoxcmVtO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRoaWdobGlnaHQtZ3JheTtcbiAgICBwYWRkaW5nOiAycmVtIDFyZW07XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICBpIHtcbiAgICAgICAgZm9udC1zaXplOiAxMDBweDtcbiAgICB9XG59XG5cbi5mb290ZXIge1xuXG4gICAgcCwgYSB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgICAgIGZvbnQtc2l6ZTogLjhlbTtcbiAgICB9XG5cbiAgICBoNSB7XG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIGRpc3BsYXk6bm9uZTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MC4wNjNlbSkge1xuICAgIC5mb290ZXIge1xuICAgICAgICAuY29sdW1uczpudGgtY2hpbGQobisyKSB7XG4gICAgICAgICAgICAvL2JvcmRlci1sZWZ0OiAxcHggc29saWQgc2NhbGUtY29sb3IoJHdoaXRlLCAkbGlnaHRuZXNzOiAtMzAlKTtcbiAgICAgICAgICAgIC8vbWluLWhlaWdodDogMjgwcHg7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5mb290ZXItbGlua3Mge1xuICAgIG1hcmdpbi1sZWZ0OiAwLjI1cmVtO1xuICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgICBsaSB7XG4gICAgICAgIG1hcmdpbi10b3A6IC4xZW07XG4gICAgICAgIGEge3RleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7fVxuICAgIH1cbn1cblxuLnByZWZvb3RlciB7XG4gICAgYTpob3ZlciB7XG4gICAgICAgIGNvbG9yOiAkd2hpdGUgIWltcG9ydGFudDtcbiAgICB9XG59XG5cbi8vL3ByZWZvb3RlclxuI3ByZWZvb3RlciB7XG4gICAgbWl4LWJsZW5kLW1vZGU6IG11bHRpcGx5O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGJhY2tncm91bmQ6ICRibGFjaztcbiAgICBcbiAgICAmOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogaW1hZ2UtdXJsKFwidGhlbWUvcGFwZXIucG5nXCIpO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICBib3R0b206IDA7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgbWF4LWhlaWdodDogMTAwJTtcbiAgICAgICAgei1pbmRleDogLTE7XG4gICAgICAgIG9wYWNpdHk6IDAuNDtcbiAgICB9XG4gICAgXG4gICAgLmNpcmNsZUljbyB7XG4gICAgICAgICYgKyBwIHtcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgI3ByZUZvb3Rlckljb25zIHtcbiAgICAgICAgLmNvbHVtbnMge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMC42cmVtO1xuICAgICAgICB9XG4gICAgICAgIC5tb3JlIHtcbiAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgICAgICAgICAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbmZvb3RlciB7XG4gICAgJj4uc2VjdGlvbntcbiAgICAgICAgcGFkZGluZy10b3A6IDFyZW0gIWltcG9ydGFudDtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDFyZW0gIWltcG9ydGFudDtcbiAgICAgICAgXG4gICAgICAgIHAsIGxpe1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjFyZW1cbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAvLyBMb2dvL3RpdGxlXG4gICAgLmNyZWRpdHMge1xuICAgICAgICBwe1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjJyZW1cbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAvLyBTaG9ydCBtZW51XG4gICAgLm1lbnUge1xuICAgICAgICB1bHtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApIHtcbiAgICAgICAgICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIGxpe1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICAmPmF7XG4gICAgICAgICAgICAgICAgICAgIC8vIFJlc3RvcmUgaW5saW5lIG1vZGUgaW5zdGVhZCBvZiBpbmxpbmUtbGlzdCBiZWhhdmlvclxuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgICY6aG92ZXJ7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgLy8gQWRkIHNvbWUgZGl2aWRlclxuICAgICAgICAgICAgICAgICYrbGl7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMXJlbTtcbiAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgICY6YmVmb3Jle1xuICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudDogXCJ8XCI7XG4gICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiAtMC41cmVtO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGxpIHtcbiAgICAgICAgICAgIGkge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTowLjk0cmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4jY29udGVudEZvb3RlciB7XG4gICAgSDQge1xuICAgICAgICBtaW4taGVpZ2h0OjRyZW07XG4gICAgICAgIHN0cm9uZyB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIkbWVudS1iYWNrZ3JvdW5kOiByZ2JhKDAsMCwwLDAuNzUpO1xuJGhlYWRlci1tYXJnaW4gOiAxcmVtO1xuXG4udGl0bGUtYmFyIHtcbiAgYmFja2dyb3VuZDogJG1lbnUtYmFja2dyb3VuZDtcbiAgcGFkZGluZzogMC45cmVtO1xuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIGRvd24pIHtcbiAgICBoZWlnaHQ6NXJlbTtcbiAgfVxuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgaGVpZ2h0OjVyZW07XG4gICAgYmFja2dyb3VuZDogJGJsYWNrICFpbXBvcnRhbnQ7XG4gIH1cbiAgIC5tZW51LWljb24ge1xuICAgICB6LWluZGV4OiAxMDtcbiAgICAgem9vbToyO1xuICAgICBtYXJnaW4tdG9wOjAuNHJlbTtcbiAgIH1cbiAgLmxvZ28gIHtcbiAgICBmbG9hdDpsZWZ0O1xuICAgIGRpc3BsYXk6YmxvY2s7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIGRvd24pIHtcbiAgICAgIG1heC1oZWlnaHQ6IDEwMCU7XG4gICAgICBpbWcge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGhlaWdodDozLjZyZW07XG5cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLnNsb2dhbiAge1xuICAgIGZsb2F0OmxlZnQ7XG4gICAgZGlzcGxheTpibG9jaztcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgZG93bikge1xuICAgICAgbWF4LXdpZHRoOiA2MCU7XG4gICAgICBtYXJnaW4tbGVmdDoyMCU7XG4gICAgfVxuICAgIC50aXRsZS00IHtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIH1cbiAgfVxufVxuLnRpdGxlLWJhci10aXRsZSB7XG4gIGJhY2tncm91bmQ6ICRibGFjaztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMDtcbiAgdG9wOiAwO1xuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIGRvd24pIHtcbiAgICBib3JkZXI6MTBweCBzb2xpZCAkYmxhY2s7XG4gIH1cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuICAgIHdpZHRoOjdyZW07XG4gICAgYm9yZGVyOjEwcHggc29saWQgJGJsYWNrO1xuICB9XG5cbn1cbi5oZWFkZXIge1xuICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgQGluY2x1ZGUgY2FsYyh3aWR0aCwgXCIxMDAlIC0gKCAjeyRoZWFkZXItbWFyZ2lufSAqIDIgKVwiKTtcbiAgbWFyZ2luOjFyZW07XG4gIHotaW5kZXg6IDI7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcbiAgICB3aWR0aDoxMDAlO1xuICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xuICAgIG1hcmdpbjowcmVtO1xuICB9XG4gIC5tZW51LnRvcGJhcm1lbnUgPiBsaSB7XG4gICAgJi5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCBhOjphZnRlciB7XG4gICAgICB0b3A6IDcwJTtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCkge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgICA+YSB7XG4gICAgICAgIHBhZGRpbmctbGVmdDowcmVtO1xuICAgICAgICBwYWRkaW5nLXRvcDogMXJlbTtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCkge1xuICAgICAgICAgIHBhZGRpbmctbGVmdDowLjlyZW07XG4gICAgICAgICAgcGFkZGluZy10b3A6IDEuN3JlbTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAmLm1lbnUtbG9nbyB7XG4gICAgICBwYWRkaW5nOiAwZW07XG4gICAgICBkaXNwbGF5Om5vbmUgIWltcG9ydGFudDtcbiAgICAgIHdpZHRoOjExMHB4O1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCkge1xuICAgICAgICBkaXNwbGF5OmJsb2NrICAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCkge1xuICAgICAgICB3aWR0aDphdXRvO1xuICAgICAgfVxuICAgICAgYSB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAwZW07XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAwZW07XG4gICAgICAgIHBhZGRpbmctbGVmdDowLjlyZW07XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5zaWduYXR1cmUge1xuICAgIGZsb2F0OmxlZnQ7XG4gICAgcGFkZGluZzoxcmVtO1xuICBkaXNwbGF5Om5vbmU7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XG4gICAgICBkaXNwbGF5OmJsb2NrO1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAzcmVtO1xuICAgICAgbGVmdDogNy40cmVtO1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIHBhZGRpbmc6IDFyZW07XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDRyZW07XG4gICAgICBsZWZ0OiAxMC4ycmVtO1xuICAgIH1cbiAgICBoMSB7XG4gICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDIyKTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApIHtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyOCk7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5yaWdodHNlYXJjaCB7XG4gICAgcG9zaXRpb246YWJzb2x1dGU7XG4gICAgei1pbmRleDogMjtcbiAgICByaWdodDoxcmVtO1xuICAgIHRvcDoxcmVtO1xuICB9XG4gICYuaW50ZXJuIHtcbiAgICBiYWNrZ3JvdW5kOiAkYmxhY2s7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB9XG5cbiAgLnRpdGxlLWJhciB7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIGRvd24pIHtcblxuICAgICAgYmFja2dyb3VuZDogJGJsYWNrO1xuICAgIH1cbiAgfVxufVxuLnRvcC1iYXIge1xuXG4gIGJhY2tncm91bmQ6ICRtZW51LWJhY2tncm91bmQ7XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuICAgIC50b3AtYmFyLWxlZnQsIC50b3AtYmFyIC50b3AtYmFyLXJpZ2h0IHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbiAgfVxuICB1bCB7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgJi5tZW51IHtcbiAgICAgIGxpIHtcbiAgICAgICAgJi5oYXMtc3VibWVudSB7XG5cbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogaW5pdGlhbDtcbiAgICAgICAgICAgIC8vd2lkdGg6OTAlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgLy93aWR0aDo5MCU7XG4gICAgICAgIH1cbiAgICAgICAgLmlzLXN1Ym1lbnUtaXRlbSB7XG4gICAgICAgICAgYmFja2dyb3VuZDogJGJsYWNrO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICA+IGxpIHtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgfVxuICAgICAgLnN1Ym1lbnUge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkYmxhY2s7XG5cbiAgICAgIH1cbiAgICB9XG4gICAgbGkge1xuICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG5cbiAgICAgIGEge1xuICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiNsaXN0LW1lbnUgLmlzLWRyaWxsZG93biB7XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSBkb3duKSB7XG4gICAgLy9AaW5jbHVkZSBjYWxjKHdpZHRoLCBcIjEwMHZ3IC0gKCAjeyRoZWFkZXItbWFyZ2lufSAqIDIgKVwiKTtcbiAgICBtYXgtd2lkdGg6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxuICA+IC5tZW51e1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgZG93bikge1xuICAgIEBpbmNsdWRlIGNhbGMod2lkdGgsIFwiMTAwdncgLSAoICN7JGhlYWRlci1tYXJnaW59ICogMiApXCIpO1xuICB9XG5cbiAgfVxufVxuI2xpc3QtbWVudSwuc2lnbmF0dXJlIHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCkge1xuICAgIEBpbmNsdWRlIGNhbGMoJ3dpZHRoJywgJzEwMCUgLSAxMjRweCAtIDJyZW0nKVxuICB9XG59XG4ubWVudS10ZXh0IHtcbiAgY29sb3I6ICNmZmY7XG5cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0MGVtKSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAubWVudTpsYXN0LWNoaWxkIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICM0ZTRlNGU7XG4gIH1cblxuICAubWVudTpmaXJzdC1jaGlsZCB7XG4gICAgYm9yZGVyLWxlZnQ6IG5vbmU7XG4gIH1cblxuICAjbGlzdC1tZW51ID4gLm1lbnUge1xuICAgID4gbGk6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICY6YWZ0ZXIge1xuICAgICAgIGNvbnRlbnQ6Jyc7XG4gICAgICAgaGVpZ2h0OjFyZW07XG4gICAgICAgd2lkdGg6MXB4O1xuICAgICAgIGJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgIHJpZ2h0OjA7XG4gICAgICAgdG9wOjAuNzVyZW07XG4gICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICB9XG4gICAgfVxuICB9XG59XG5cblxuLmRyb3Bkb3duLm1lbnUgLnN1Ym1lbnUge1xuICBib3JkZXI6IG5vbmU7XG59XG5cbi5kcm9wZG93bi5tZW51IC5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudC5pcy1yaWdodC1hcnJvdz5hOjphZnRlciB7XG4gIGJvcmRlci1jb2xvcjogI2ZmZiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbn1cblxuLmlzLWRyaWxsZG93bi1zdWJtZW51LXBhcmVudD5hOjphZnRlciB7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgI2ZmZjtcbn1cblxuLmpzLWRyaWxsZG93bi1iYWNrOjpiZWZvcmUge1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50ICNmZmYgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG59XG5cblxuLy8gLmNvbnRyb2xzX2xpa2Uge1xuLy8gICBAZXh0ZW5kIC5jb250cm9scztcbi8vIH1cblxuXG4vLy9uYXYtdGFic1xuLm5hdi10YWJzIHtcbiAgbWFyZ2luLXRvcDoxcmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCAkZGFyay1ncmF5O1xuICBib3JkZXItYm90dG9tOjA7XG5cbiAgIC50YWIge1xuICAgICA+IGF7XG4gICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgJjpob3ZlciB7XG4gICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICB9XG4gICAgfVxuICAgICAmLnNlbGVjdGlvbm5lZCB7XG4gICAgICAgPmEge1xuICAgICAgIGNvbG9yOiRwcmltYXJ5LWNvbG9yXG4gICAgIH1cbiAgICAgfVxuICAgfVxufVxuXG5cbi8vc3BlY2lhbCBpbnZlcnNlIHRvcCBiYXIgZm9yIHNtYWxsXG5cbiNoZWFkZXIgLnRvcC1iYXIge1xuXG4gICAgcG9zaXRpb246aW5pdGlhbDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICAuaW5wdXQtZ3JvdXAge1xuICAgICAgcGFkZGluZzogMXJlbTtcbiAgICAgIG1hcmdpbjogMHJlbTtcbiAgICAgIHdpZHRoOjI0MHB4O1xuICAgICAgaW5wdXQge1xuICAgICAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgcG9zaXRpb246cmVsYXRpdmU7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlO1xuICAgIC5sYW5ndWFnZV9jaG9vc2V7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDEuNHJlbTtcbiAgICAgIHotaW5kZXg6IDIwMDtcbiAgICAgIGJhY2tncm91bmQ6IHJnYigwLCAwLCAwKSBub25lIHJlcGVhdCBzY3JvbGwgMCUgMCU7XG4gICAgICBoZWlnaHQ6IDIuNnJlbTtcbiAgICB9XG4gIC5pbnB1dC1ncm91cCB7XG4gICAgcGFkZGluZzogMXJlbTtcbiAgICBtYXJnaW46IDByZW07XG4gICAgd2lkdGg6MTAwJTtcbiAgICBpbnB1dCB7XG4gICAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICB3aWR0aDpjYWxjKDEwMCUgLSA2cmVtKTtcbiAgICAgfVxuICAgIH1cbiAgfVxufSIsIi50b3BNZWRpYSB7XG4gIHdpZHRoOjEwMCU7XG4gIC8vaGVpZ2h0OjY2dnc7XG4gIG1heC1oZWlnaHQ6NzV2aDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuLnRvcE1lZGlhIHtcbiAgLm1lZGlhe1xuICAgIG1heC13aWR0aDpub25lO1xuICAgIG1pbi13aWR0aDoxMDAlO1xuICAgIG1heC1oZWlnaHQ6IG5vbmU7XG4gICAgbWluLWhlaWdodDoxMDAlO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OjUwJTtcbiAgICB0b3A6NTAlO1xuICAgIEBpbmNsdWRlIHRyYW5zbGF0ZSgtNTAlLCAtNTAlKVxuICB9XG5cbn1cblxuXG4uY3VzdG9tLWZsZXgtdmlkZW8tY2xhc3Mge1xuICBAaW5jbHVkZSBmbGV4LXZpZGVvKDcwOSBieSA0MDApO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICY6YmVmb3JlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgei1pbmRleDogMTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjb250ZW50OiAnJztcbiAgICB0b3A6MDtcbiAgICBsZWZ0OjA7XG4gICAgd2lkdGg6MTAwJTtcbiAgICBoZWlnaHQ6MTAwJTtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsMCwwLDAuMik7XG4gIH1cbiAgaWZyYW1lIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XG4gICAgICB0b3A6IDA7XG4gICAgfVxuICB9XG59XG5cblxuLmhlYWRlclNsaWRlci5zbGljay1zbGlkZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMCU7XG4gIHdpZHRoOjgwJTtcbiAgbGVmdDo1MCU7XG4gIHotaW5kZXg6IDE7XG4gIEBpbmNsdWRlIHRyYW5zbGF0ZSgtNTAlLC00MCUpO1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcbiAgLnhsYXJnZS0yNSB7XG4gICAgd2lkdGg6MzMlO1xuICB9XG4gIC5tZWRpdW0tNzUge1xuICAgIHdpZHRoOjY2JTtcbiAgfVxuICB9XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIHVwKSB7XG4gICAgQGluY2x1ZGUgdHJhbnNsYXRlKC01MCUsIC0zMCUpO1xuICB9XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApIHtcblxuICAgIG1pbi1oZWlnaHQ6NTAlO1xuICAgIEBpbmNsdWRlIHRyYW5zbGF0ZSgtNTAlLC0yMCUpO1xuXG4gIH1cbiAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UgdXApIHtcbiAgICBtaW4taGVpZ2h0OjYwJTtcbiAgICBAaW5jbHVkZSB0cmFuc2xhdGUoLTUwJSwtNTAlKTtcbiAgICB0b3A6NTAlO1xuICAgIGJvdHRvbTphdXRvO1xuICB9XG4gIC5zbGljay1zbGlkZSB7XG4gICAgLmZsZXgtZ3JpZCB7XG4gICAgICBtYXJnaW46NCU7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIGRvd24pIHtcblxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBwIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcbiAgICB3aWR0aDoxMDAlO1xuICB9XG4gICp7Y29sb3I6JHdoaXRlfTtcbiAgLnNsaWNrLXNsaWRlIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgICBwYWRkaW5nOiAwcmVtO1xuICAgIH1cbiAgICBwYWRkaW5nOiAwIDRyZW07XG4gIH1cbiAgaDIge1xuICAgIGZvbnQtc2l6ZTogNC43NXJlbTtcbiAgICBmb250LXdlaWdodDo4MDA7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuXG4gICAgICBmb250LXNpemU6IDEuNzVyZW07XG4gICAgfVxuICB9XG5cbiAgcCB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuXG4gICAgICBmb250LXNpemU6IDEuMnJlbTtcbiAgICB9XG4gICAgZm9udC1zaXplOiAxLjRyZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICB9XG5cbiAgLnNsaWNrLXByZXYsLnNsaWNrLW5leHQge1xuICAgIHRvcDo1MCU7XG4gICAgQGluY2x1ZGUgdHJhbnNsYXRlKDAsLTUwJSk7XG4gICAgbGVmdDowO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB6LWluZGV4OiAxMjtcbiAgICB3aWR0aDo0cmVtO1xuICB9XG4gIC5zbGljay1uZXh0IHtcbiAgICAgcmlnaHQ6MDtcbiAgICBsZWZ0OiBhdXRvO1xuICAgfVxuXG59XG5cbi5sYW5ndWFnZV9jaG9vc2Uge1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTowcmVtO1xuICByaWdodDoxcmVtO1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBjb2xvcjokcHJpbWFyeS1jb2xvcjtcbiAgbWFyZ2luOiAwO1xuICBsaSB7XG4gICAgbWFyZ2luOiAwO1xuICAgIGRpc3BsYXk6IGlubGluZTtcbiAgfVxuICBhe1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gICAmLmFjdGl2ZSB7XG4gICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgIH1cbiAgfVxuICAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgbWluLXdpZHRoOiAwO1xuICB9XG4gIC5kcm9wZG93bi5tZW51IHtcbiAgPiBsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudHtmbG9hdDogbGVmdDtcbiAgICA+IGEge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmbG9hdDogbGVmdDt9XG4gIH1cbiAgfVxufSIsIi8vaW4gdGVzdGltb25pYWxzXG5cbiRiYXNlSGVpZ2h0OiAyNjQ7XG4kYmFzZW1hcmdpbjogMTY7XG5cbiRpdGVtc0hlaWdodDogKFxuICAgICAgICBcInNtYWxsXCI6IDI2NCxcbiAgICAgICAgXCJtZWRpdW1cIjogMzI0LFxuICAgICAgICBcImxhcmdlXCI6IDMyNCxcbiAgICAgICAgXCJ4bGFyZ2VcIjogMzg0LFxuICAgICAgICBcInJldGluYVwiOiA0NjQsXG4pO1xuXG4kaUV4cG9IZWlnaHQ6IChcbiAgICAgICAgXCJzbWFsbFwiOiAyNjQsXG4gICAgICAgIFwibWVkaXVtXCI6IDMyNCxcbiAgICAgICAgXCJsYXJnZVwiOiAzMjQsXG4gICAgICAgIFwieGxhcmdlXCI6IDM4NCxcbiAgICAgICAgXCJyZXRpbmFcIjogNDY0LFxuKTtcblxuJGJpZ0hlaWdodDogKFxuICAgICAgICBcInNtYWxsXCI6IDUyOCxcbiAgICAgICAgXCJtZWRpdW1cIjogNjQ4LFxuICAgICAgICBcImxhcmdlXCI6IDY0OCxcbiAgICAgICAgXCJ4bGFyZ2VcIjogNzY4LFxuICAgICAgICBcInJldGluYVwiOiA5MjgsXG4pO1xuXG4ud2FsbGdyaWQtaXRlbSB7XG4gIC5wYW5lbCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuXG4vKiAtLS0tIGdyaWQgLS0tLSAqL1xuXG4uZ3JpZCB7XG4gIG1hcmdpbjogI3skYmFzZW1hcmdpbi8yfXB4O1xuICAmI2NvbnRhaW5lciB7XG4gICAgZmxvYXQ6bGVmdDtcbiAgICB3aWR0aDpjYWxjKDEwMCUgLSAgI3skYmFzZW1hcmdpbn1weCApIDtcbiAgfVxuXG4gIC8qIC0tLS0gZ3JpZCBzaXplciB3aWR0aC0tLS0gKi9cbiAgLmdyaWQtaXRlbSB7XG4gICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oMTIgKTtcbiAgICBAaW5jbHVkZSBncmlkLWNvbC1jb2xsYXBzZSgpO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDYgKTtcbiAgICAgIEBpbmNsdWRlIGdyaWQtY29sLWNvbGxhcHNlKCk7XG5cbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oNCApO1xuICAgICAgQGluY2x1ZGUgZ3JpZC1jb2wtY29sbGFwc2UoKTtcblxuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oMyApO1xuICAgICAgQGluY2x1ZGUgZ3JpZC1jb2wtY29sbGFwc2UoKTtcblxuICAgIH1cbiAgfVxuXG59XG5cbi8qIGNsZWFyIGZpeCAqL1xuLmdyaWQ6YWZ0ZXIge1xuICBjb250ZW50OiAnJztcbiAgZGlzcGxheTogYmxvY2s7XG4gIGNsZWFyOiBib3RoO1xufVxuXG4vKiAtLS0tIC5ncmlkLWl0ZW0gLS0tLSAqL1xuXG4vLyByZXNwb25zaXZlIGhlaWdodFxuQG1peGluIHJlc3BIZWlnaHQoJGFycmF5aGVpZ2h0OiAkaXRlbXNIZWlnaHQpIHtcbiAgQGVhY2ggJGhlaWdodCwgJGhlaWdodF92YWx1ZSBpbiAkYXJyYXloZWlnaHQge1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgjeyRoZWlnaHR9IHVwKSB7XG4gICAgICBoZWlnaHQ6ICN7JGhlaWdodF92YWx1ZX1weDtcblxuICAgICAgZmlndXJlIHtcbiAgICAgICAgaGVpZ2h0OiAjeygkaGVpZ2h0X3ZhbHVlIC0gJGJhc2VtYXJnaW4pfXB4O1xuICAgICAgfVxuICAgICAgJi50eXBlMSwgJnR5cGU0IHtcbiAgICAgICAgaGVpZ2h0OiAjeyRoZWlnaHRfdmFsdWV9cHg7XG4gICAgICB9XG4gICAgICAmLnR5cGUyLCAmLnR5cGUzIHtcbiAgICAgICAgaGVpZ2h0OiAjeygkaGVpZ2h0X3ZhbHVlICogMil9cHg7XG4gICAgICB9XG5cbiAgICAgICYudHlwZTIge1xuICAgICAgICAuaW5mb0NvbnQge1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICB0b3A6ICN7KCRoZWlnaHRfdmFsdWUpfXB4O1xuICAgICAgICB9XG5cbiAgICAgIH1cbiAgICAgIC5pbmZvQ29udCB7XG4gICAgICAgIHBhZGRpbmc6ICN7KCRoZWlnaHRfdmFsdWUgLyAyNCl9cHggI3soJGhlaWdodF92YWx1ZSAvIDEyKX1weDtcbiAgICAgIH1cbiAgICB9XG5cbiAgfVxufVxuXG4vLyBnZW5lcmljIGl0ZW0gc3R5bGVcbi5ncmlkLWl0ZW0ge1xuICBAaW5jbHVkZSByZXNwSGVpZ2h0KCRpdGVtc0hlaWdodCk7XG4gIGZsb2F0OiBsZWZ0O1xuICBib3JkZXI6IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAuY29udGVudEdyaWQge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIG1hcmdpbjogI3skYmFzZW1hcmdpbi8yfXB4O1xuICAgIGJhY2tncm91bmQ6ICRsaWdodC1ncmF5O1xuICAgIEBpbmNsdWRlIGNhbGMoJ3dpZHRoJywgJzEwMCUgLSAxcmVtJyk7XG4gICAgQGluY2x1ZGUgY2FsYygnaGVpZ2h0JywgJzEwMCUgLSAxcmVtJyk7XG4gIH1cbiAgLmluZm9Db250IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgei1pbmRleDogMjtcblxuICB9XG4gIGgyIHtcbiAgICBmb250LXNpemU6MXJlbTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSB1cCkge1xuICAgICAgZm9udC1zaXplOjFyZW07XG5cbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCkge1xuICAgICAgZm9udC1zaXplOjEuMTByZW07XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeHhsYXJnZSB1cCkge1xuICAgICAgZm9udC1zaXplOiAxLjIwcmVtO1xuICAgIH1cbiAgfVxuICBoNSB7XG4gICAgLy9mb250LXNpemU6IDAuODc1cmVtO1xuICAgICY6YWZ0ZXIsJjpiZWZvcmV7ZGlzcGxheTogbm9uZX1cblxuICB9XG5cbiAgcC5zdWJ0aXRsZSB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgYmFja2dyb3VuZDogIzAwMDAwMDtcbiAgICBwYWRkaW5nOiAwIDAuM3JlbTtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBmb250LXdlaWdodDogMzAwO1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgfVxuXG4gIC5kZXNjIHtcbiAgICBmb250LXdlaWdodDogMjAwO1xuICAgIC8vZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgfVxuICBmaWd1cmUge1xuICAgIG1hcmdpbjogMDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBpbWcge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgbGVmdDogNTAlO1xuICAgICAgbWluLXdpZHRoOiAxMDAlO1xuICAgICAgdG9wOiA1MCU7XG4gICAgICBAaW5jbHVkZSB0cmFuc2xhdGUoLTUwJSwgLTUwJSlcbiAgICB9XG4gIH1cbiAgJi50eXBlRXhwbyB7XG4gICAgQGluY2x1ZGUgcmVzcEhlaWdodCgkaUV4cG9IZWlnaHQpO1xuICAgIC5zaG9ydGRlc2NjIHtcbiAgICAgIHRvcDogNjUlO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgZm9udC13ZWlnaHQ6IDIwMDtcbiAgICAgIC8vZm9udC1zaXplOiAwLjg0cmVtO1xuICAgICAgcGFkZGluZy10b3A6IDAuNDJyZW07XG4gICAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgIH1cbiAgICAuZmlndXJldG9FeHAge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDY1JTtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBiYWNrZ3JvdW5kOiAjMDAwO1xuXG4gICAgICBmaWd1cmUge1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIH1cbiAgICB9XG4gICAgLmNvbnRlbnRHcmlkIHtcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50XG4gICAgfVxuICB9XG5cbiAgJi50eXBlMywgJi50eXBlNCB7XG4gICAgZmlndXJlIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgJi53aXRoQ29udCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTAlO1xuXG4gICAgZmlndXJlIHtcbiAgICAgIGhlaWdodDogNTAlO1xuICAgIH1cblxuICAgIC5zaG9ydGRlc2Mge1xuICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICB9XG4gIH1cblxuICAvLyAmLnZpZGVvLCYuYXVkaW8sJi5zb3VuZCwmLnR5cGVJbWFnZSwmLmltYWdle1xuXG4gIC8vICAgQGV4dGVuZCAucGljdG8tdmlkZW87XG4gIC8vICAgLmNvbnRlbnRHcmlkICB7XG4gIC8vICAgICA+IGEge1xuICAvLyAgICAgICAmOmJlZm9yZSB7XG4gIC8vICAgICAgICAgY29udGVudDogXCJcXGYwM2RcIjtcbiAgLy8gICAgICAgICBjb2xvcjojRkZGO1xuICAvLyAgICAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xuICAvLyAgICAgICAgIGZvbnQtZmFtaWx5OiBpY29tb29uO1xuICAvLyAgICAgICAgIC8vZm9udC1zaXplOjFyZW07XG4gIC8vICAgICAgICAgdG9wOjA7XG4gIC8vICAgICAgICAgcmlnaHQ6MDtcbiAgLy8gICAgICAgICBib3JkZXItcmFkaXVzOjAlO1xuICAvLyAgICAgICAgIGhlaWdodDozcmVtO1xuICAvLyAgICAgICAgIHdpZHRoOjNyZW07XG4gIC8vICAgICAgICAgbGluZS1oZWlnaHQ6IDNyZW07XG4gIC8vICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAvLyAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gIC8vICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gIC8vICAgICAgICAgYmFja2dyb3VuZDogJGJsYWNrO1xuICAvLyAgICAgICAgIHotaW5kZXg6IDI7XG4gIC8vICAgICAgIH1cbiAgLy8gICAgIH1cbiAgLy8gICB9XG4gIC8vIH1cbiAgJi5waWN0by12aWRlbyB7XG5cbiAgICAuY29udGVudEdyaWQgIHtcbiAgICAgID4gYSB7XG4gICAgICAgICY6YmVmb3Jle1xuICAgICAgICAgIGNvbG9yOiNGRkY7XG4gICAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7XG4gICAgICAgICAgY29udGVudDogXCJcXGYwMDhcIjtcbiAgICAgICAgICBmb250LWZhbWlseTogaWNvbW9vbjtcbiAgICAgICAgICB0b3A6MDtcbiAgICAgICAgICByaWdodDowO1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6MCU7XG4gICAgICAgICAgaGVpZ2h0OjNyZW07XG4gICAgICAgICAgd2lkdGg6M3JlbTtcbiAgICAgICAgICBsaW5lLWhlaWdodDogM3JlbTtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAkYmxhY2s7XG4gICAgICAgICAgei1pbmRleDogMjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICAmLnBpY3RvLXNvdW5kIHtcblxuICAgIC5jb250ZW50R3JpZCAge1xuICAgICAgPiBhIHtcbiAgICAgICAgJjpiZWZvcmV7XG4gICAgICAgICAgY29sb3I6I0ZGRjtcbiAgICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgICAgICAgICBjb250ZW50OiBcIlxcZTkxMlwiO1xuICAgICAgICAgIGZvbnQtZmFtaWx5OiBpY29tb29uO1xuICAgICAgICAgIHRvcDowO1xuICAgICAgICAgIHJpZ2h0OjA7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czowJTtcbiAgICAgICAgICBoZWlnaHQ6M3JlbTtcbiAgICAgICAgICB3aWR0aDozcmVtO1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAzcmVtO1xuICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIGJhY2tncm91bmQ6ICRibGFjaztcbiAgICAgICAgICB6LWluZGV4OiAyO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gICYucGljdG8taW1nIHtcblxuICAgIC5jb250ZW50R3JpZCAge1xuICAgICAgPiBhIHtcbiAgICAgICAgJjpiZWZvcmV7XG4gICAgICAgICAgY29sb3I6I0ZGRjtcbiAgICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgICAgICAgICBjb250ZW50OiBcIlxcZjAzZVwiO1xuICAgICAgICAgIGZvbnQtZmFtaWx5OiBpY29tb29uO1xuICAgICAgICAgIHRvcDowO1xuICAgICAgICAgIHJpZ2h0OjA7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czowJTtcbiAgICAgICAgICBoZWlnaHQ6M3JlbTtcbiAgICAgICAgICB3aWR0aDozcmVtO1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAzcmVtO1xuICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIGJhY2tncm91bmQ6ICRibGFjaztcbiAgICAgICAgICB6LWluZGV4OiAyO1xuXG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgJi5waWN0by1tdXNpYyB7XG5cbiAgICAuY29udGVudEdyaWQgIHtcbiAgICAgID4gYSB7XG4gICAgICAgICY6YmVmb3Jle1xuICAgICAgICAgIGNvbG9yOiNGRkY7XG4gICAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7XG4gICAgICAgICAgY29udGVudDogXCJcXGYwMDFcIjtcbiAgICAgICAgICBmb250LWZhbWlseTogaWNvbW9vbjtcbiAgICAgICAgICB0b3A6MDtcbiAgICAgICAgICByaWdodDowO1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6MCU7XG4gICAgICAgICAgaGVpZ2h0OjNyZW07XG4gICAgICAgICAgd2lkdGg6M3JlbTtcbiAgICAgICAgICBsaW5lLWhlaWdodDogM3JlbTtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAkYmxhY2s7XG4gICAgICAgICAgei1pbmRleDogMjtcblxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gICYucGljdG8tcHJlc3NlIHtcblxuICAgIC5jb250ZW50R3JpZCAge1xuICAgICAgPiBhIHtcbiAgICAgICAgJjpiZWZvcmV7XG4gICAgICAgICAgY29sb3I6I0ZGRjtcbiAgICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgICAgICAgICBjb250ZW50OiBcIlxcZjFlYVwiO1xuICAgICAgICAgIGZvbnQtZmFtaWx5OiBpY29tb29uO1xuICAgICAgICAgIHRvcDowO1xuICAgICAgICAgIHJpZ2h0OjA7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czowJTtcbiAgICAgICAgICBoZWlnaHQ6M3JlbTtcbiAgICAgICAgICB3aWR0aDozcmVtO1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAzcmVtO1xuICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIGJhY2tncm91bmQ6ICRibGFjaztcbiAgICAgICAgICB6LWluZGV4OiAyO1xuXG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgJi5waWN0by10ZXh0IHtcblxuICAgIC5jb250ZW50R3JpZCAge1xuICAgICAgPiBhIHtcbiAgICAgICAgJjpiZWZvcmV7XG4gICAgICAgICAgY29sb3I6I0ZGRjtcbiAgICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgICAgICAgICBjb250ZW50OiBcIlxcZjBmNlwiO1xuICAgICAgICAgIGZvbnQtZmFtaWx5OiBpY29tb29uO1xuICAgICAgICAgIHRvcDowO1xuICAgICAgICAgIHJpZ2h0OjA7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czowJTtcbiAgICAgICAgICBoZWlnaHQ6M3JlbTtcbiAgICAgICAgICB3aWR0aDozcmVtO1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAzcmVtO1xuICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIGJhY2tncm91bmQ6ICRibGFjaztcbiAgICAgICAgICB6LWluZGV4OiAyO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi5iaWcge1xuICAgIEBpbmNsdWRlIHJlc3BIZWlnaHQoJGJpZ0hlaWdodCk7XG4gICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oMTIpO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbigxMiApO1xuICAgICAgQGluY2x1ZGUgZ3JpZC1jb2wtY29sbGFwc2UoKTtcblxuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbig4ICk7XG4gICAgICBAaW5jbHVkZSBncmlkLWNvbC1jb2xsYXBzZSgpO1xuXG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbig2ICk7XG4gICAgICBAaW5jbHVkZSBncmlkLWNvbC1jb2xsYXBzZSgpO1xuXG4gICAgfVxuXG4gICAgcGFkZGluZzowO1xuICB9XG5cbn1cblxuLy8vIGNzcyBmb3IgdHlwZSBjb250ZW50XG4kcGFkZGluZzogMC41cmVtO1xuJHNoYWRvdzogJGJsYWNrO1xuXG4udHlwZTEge1xuXG4gIC5pbmZvQ29udCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogMXJlbTtcbiAgICBsaW5lLWhlaWdodDogMS4yNDtcbiAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnRhZ3RpdGxlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmbG9hdDogbm9uZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBsaW5lLWhlaWdodDogMS42O1xuICB9XG5cbiAgJi53aXRoQ29udCB7XG4gICAgLmluZm9Db250IHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGJvdHRvbTogMzYlO1xuICAgIH1cbiAgfVxuXG4gIGg1IHtcbiAgICBtYXJnaW46IDA7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgIHNwYW4ge1xuICAgICAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgICAgIGJhY2tncm91bmQ6JHdoaXRlO1xuICAgICAgcGFkZGluZzogJHBhZGRpbmc7XG4gICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgICAgLXdlYmtpdC1ib3gtZGVjb3JhdGlvbi1icmVhazogY2xvbmU7XG4gICAgICAtbXMtYm94LWRlY29yYXRpb24tYnJlYWs6IGNsb25lO1xuICAgICAgLW8tYm94LWRlY29yYXRpb24tYnJlYWs6IGNsb25lO1xuICAgICAgYm94LWRlY29yYXRpb24tYnJlYWs6IGNsb25lO1xuICAgIH1cbiAgfVxuICBoMiB7XG4gICAgLy9mb250LXNpemU6IDFyZW07XG4gICAgZGlzcGxheTogaW5saW5lO1xuICAgIGJhY2tncm91bmQ6ICRzaGFkb3c7XG4gICAgY29sb3I6IHdoaXRlO1xuICAgIGZvbnQtd2VpZ2h0OiA4MDA7XG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgbGluZS1oZWlnaHQ6IDEuMzE7XG4gICAgcGFkZGluZzogJHBhZGRpbmc7XG4gICAgcGFkZGluZy10b3A6IDA7XG4gICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgLXdlYmtpdC1ib3gtZGVjb3JhdGlvbi1icmVhazogY2xvbmU7XG4gICAgLW1zLWJveC1kZWNvcmF0aW9uLWJyZWFrOiBjbG9uZTtcbiAgICAtby1ib3gtZGVjb3JhdGlvbi1icmVhazogY2xvbmU7XG4gICAgYm94LWRlY29yYXRpb24tYnJlYWs6IGNsb25lO1xuICAgIGEge1xuICAgICAgY29sb3I6IHdoaXRlO1xuICAgIH1cbiAgfVxuICAuZGVzYywgLnNob3J0ZGVzYyB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4udHlwZTIge1xuICAuY29udGVudEdyaWQge1xuICAgIGJvcmRlci1ib3R0b206IDRweCBzb2xpZCAkaGlnaGxpZ2h0LWdyYXk7XG4gIH1cbiAgLmluZm9Db250IHtcblxuICAgIGxpbmUtaGVpZ2h0OiAxLjI0O1xuICB9XG4gIC50YWd0aXRsZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgfVxuICBoNSB7XG4gICAgbWFyZ2luOiAwO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjY7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG5cbiAgfVxuICBoMiB7XG4gICAgLy9mb250LXNpemU6IDEuMTI1cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjEyNTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICBmb250LXdlaWdodDogMjAwO1xuXG4gIH1cbiAgLnNob3J0ZGVzYyB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4udHlwZTMsIC50eXBlNCB7XG4gIC5jb250ZW50R3JpZCB7XG4gICAgYm9yZGVyLWJvdHRvbTogNHB4IHNvbGlkICRoaWdobGlnaHQtZ3JheTtcbiAgfVxuICAuaW5mb0NvbnQge1xuXG4gICAgbGluZS1oZWlnaHQ6IDEuMjQ7XG4gIH1cbiAgLnRhZ3RpdGxlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBsaW5lLWhlaWdodDogMS42O1xuICB9XG4gIGg1IHtcbiAgICBtYXJnaW46IDA7XG4gICAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcblxuICB9XG4gIGgyIHtcbiAgICAvL2ZvbnQtc2l6ZTogMnJlbTtcbiAgICBsaW5lLWhlaWdodDogMS4xMjU7XG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgZm9udC13ZWlnaHQ6IDEwMDtcblxuICB9XG5cbiAgLmRlc2MsIC5zaG9ydGRlc2Mge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbn1cblxuLnR5cGU0IHtcblxuICAuc2hvcnRkZXNjIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi5ncmlkLWl0ZW0tLXdpZHRoMiB7XG4gIHdpZHRoOiAyMDBweDtcbn1cblxuLnR5cGVFeHBvIHtcbiAgQGV4dGVuZCAudHlwZTE7XG4gIC5kZXNjLCAuc2hvcnRkZXNjIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuICAmLndpdGhDb250IHtcbiAgLmluZm9Db250IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiA1MCUgO1xuICAgIHdpZHRoOjEwMCU7XG4gICAgLmRlc2Mge1xuICAgICAgZGlzcGxheTpub25lO1xuICAgIH1cbiAgICAuc2hvcnRkZXNjIHtcbiAgICAgIG1hcmdpbi10b3A6MXJlbTtcbiAgICAgIC8vZm9udC1zaXplOiAwLjhyZW07XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHRvcDoxMDAlO1xuICAgIH1cbiAgfVxuICB9XG5cbn1cblxuLy8vIGNvbnRyb2xzXG4jY29udHJvbHMsICNjb250cm9sc19saWtlIHtcblxuICBtYXJnaW4tbGVmdDogMXJlbTtcbiAgbWFyZ2luLXJpZ2h0OiAxcmVtO1xuICBtYXJnaW4tdG9wOiAxcmVtO1xuICBmbG9hdDogbGVmdDtcbiAgY2xlYXI6IGJvdGg7XG4gIHdpZHRoOiBjYWxjKDEwMCUgLSAycmVtKTtcbiAgYSB7XG4gICAgYmFja2dyb3VuZDogJGJsYWNrO1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBtYXJnaW4tcmlnaHQ6IDAuMjVyZW07XG4gICAgLy9mb250LXNpemU6IDAuN3JlbTtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAvL2ZvbnQtc2l6ZTogMXJlbTtcbiAgICB9XG4gICAgJi5pcy1jaGVja2VkIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNkZDMzMzM7XG4gICAgfVxuICB9XG4gIC5tZW51IHtcbiAgICBsaSB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgICBkaXNwbGF5OiBibG9jazt9XG4gICAgfVxuICB9XG4gIFtkYXRhLWZpbHRlcj1cIm5vbmVcIl0ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuXG4jdGhlbWVDb250cm9scywgI2NvbnRyb2xzX2xpa2Uge1xuICBtYXJnaW4tbGVmdDogMXJlbTtcbiAgbWFyZ2luLXJpZ2h0OiAxcmVtO1xuICBtYXJnaW4tdG9wOiAxcmVtO1xuICBmbG9hdDogbGVmdDtcbiAgY2xlYXI6IGJvdGg7XG4gIHdpZHRoOiBjYWxjKDEwMCUgLSAycmVtKTtcbiAgYSB7XG4gICAgYmFja2dyb3VuZDogJGJsYWNrO1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBtYXJnaW4tcmlnaHQ6IDAuMjVyZW07XG4gICAgLy9mb250LXNpemU6IDAuN3JlbTtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAvL2ZvbnQtc2l6ZTogMXJlbTtcbiAgICB9XG4gICAgJi5pcy1jaGVja2VkIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNkZDMzMzM7XG4gICAgfVxuICB9XG4gIC5tZW51IHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlICkge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgbGkge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA0cHg7XG4gICAgICAgIGEge1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIGxpIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO31cbiAgICB9XG4gIH1cbiAgW2RhdGEtZmlsdGVyPVwibm9uZVwiXSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuIiwiLmZpZnRlZW4ge1xuICBAaW5jbHVkZSBncmlkLXJvdygxNSkge1xuICAgIC5ncmlkLWl0ZW0ge1xuICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tcG9zaXRpb24oY2VudGVyKTtcbiAgICB9XG4gICAgLmZpZnRlZW4xIHtcbiAgICAgIC8vIDUvMTYgPSAzMS4yNSVcbiAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDEpO1xuICAgIH1cbiAgICAuZmlmdGVlbjMge1xuICAgICAgLy8gMTEvMTYgPSA2OC43NSVcbiAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDUpO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbigzKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn0iLCIvKiBTbGlkZXIgKi9cblxuLnNsaWNrLXNsaWRlciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgLXdlYmtpdC10b3VjaC1jYWxsb3V0OiBub25lO1xuICAgIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgLWtodG1sLXVzZXItc2VsZWN0OiBub25lO1xuICAgIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xuICAgIHVzZXItc2VsZWN0OiBub25lO1xuICAgIC1tcy10b3VjaC1hY3Rpb246IHBhbi15O1xuICAgIHRvdWNoLWFjdGlvbjogcGFuLXk7XG4gICAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cbi5zbGljay1saXN0IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcblxuICAgICY6Zm9jdXMge1xuICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgIH1cblxuICAgICYuZHJhZ2dpbmcge1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIGN1cnNvcjogaGFuZDtcbiAgICB9XG59XG4uc2xpY2stc2xpZGVyIC5zbGljay10cmFjayxcbi5zbGljay1zbGlkZXIgLnNsaWNrLWxpc3Qge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xufVxuXG4uc2xpY2stdHJhY2sge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogMDtcbiAgICBkaXNwbGF5OiBibG9jaztcblxuICAgICY6YmVmb3JlLFxuICAgICY6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICB9XG5cbiAgICAmOmFmdGVyIHtcbiAgICAgICAgY2xlYXI6IGJvdGg7XG4gICAgfVxuXG4gICAgLnNsaWNrLWxvYWRpbmcgJiB7XG4gICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICB9XG59XG4uc2xpY2stc2xpZGUge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBtaW4taGVpZ2h0OiAxcHg7XG4gICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgIH1cbiAgICBpbWcge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG4gICAgJi5zbGljay1sb2FkaW5nIGltZyB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgZGlzcGxheTogbm9uZTtcblxuICAgICYuZHJhZ2dpbmcgaW1nIHtcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgfVxuXG4gICAgLnNsaWNrLWluaXRpYWxpemVkICYge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG5cbiAgICAuc2xpY2stbG9hZGluZyAmIHtcbiAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIH1cblxuICAgIC5zbGljay12ZXJ0aWNhbCAmIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgfVxufVxuLnNsaWNrLWFycm93LnNsaWNrLWhpZGRlbiB7XG4gICAgZGlzcGxheTogbm9uZTtcbn1cblxuXG5cbi8vZXh0ZW5kXG4uc2xpY2stYXJyb3cge1xuICAgIGZvbnQtZmFtaWx5OiAnaWNvbW9vbic7XG4gICAgJjpiZWZvcmUge1xuICAgICAgICBmb250LWZhbWlseTogJ2ljb21vb24nO1xuICAgIH1cbn1cbi5zbGljay1wcmV2IHtcbiAgICBmb250LXNpemU6MDtcbiAgICAmOmJlZm9yZSB7XG4gICAgICAgIGZvbnQtc2l6ZTo0cmVtO1xuICAgIH1cbiAgICBAZXh0ZW5kIC5pY29uY29udDtcbiAgICBAZXh0ZW5kIC5pY29uLWFycm9fbGVmdDtcblxufVxuXG4uc2xpY2stbmV4dCB7XG4gICAgZm9udC1zaXplOjA7XG4gICAgJjpiZWZvcmUge1xuICAgICAgICBmb250LXNpemU6NHJlbTtcbiAgICB9XG4gICAgQGV4dGVuZCAuaWNvbmNvbnQ7XG4gICAgQGV4dGVuZCAuaWNvbi1hcnJvX3JpZ2h0O1xuXG59XG5cblxuLy9zbGljayBpbiBtb2RhbFxuXG4ucmV2ZWFsIHtcbiAgICAuc2xpY2stcHJldiwgLnNsaWNrLW5leHR7XG4gICAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xuICAgICAgICB0b3A6NTAlO1xuICAgICAgICB3aWR0aDoycmVtO1xuICAgICAgICBoZWlnaHQ6MnJlbTtcbiAgICAgICAgei1pbmRleDogMjA7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAlLC01MCUpO1xuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsMCwwLDAuNSk7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsLTUwJSk7XG4gICAgICAgICAgICBjb2xvcjogI0ZGRjtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDEwMHB4O1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjFyZW07XG4gICAgICAgICAgICBwYWRkaW5nOiAwLjVyZW07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuc2xpY2stcHJldntcbiAgICAgICAgbGVmdDowLjJyZW07XG5cbiAgICAgICAgJjpiZWZvcmUge1xuXG4gICAgICAgIH1cbiAgICB9XG4gICAgLmNsb3NlLWJ1dHRvbiB7XG4gICAgICAgIGhlaWdodDogMnJlbTtcbiAgICAgICAgd2lkdGg6IDJyZW07XG4gICAgICAgIHotaW5kZXg6IDMwO31cbiAgICAuc2xpY2stbmV4dHtcbiAgICAgICAgcmlnaHQ6MC4ycmVtO1xuXG4gICAgICAgICY6YmVmb3JlIHtcblxuICAgICAgICB9XG4gICAgfVxufSIsIkBjaGFyc2V0IFwiVVRGLThcIjtcblxuLy8gRGVmYXVsdCBWYXJpYWJsZXNcblxuLy8gU2xpY2sgaWNvbiBlbnRpdHkgY29kZXMgb3V0cHV0cyB0aGUgZm9sbG93aW5nXG4vLyBcIlxcMjE5MFwiIG91dHB1dHMgYXNjaWkgY2hhcmFjdGVyIFwi4oaQXCJcbi8vIFwiXFwyMTkyXCIgb3V0cHV0cyBhc2NpaSBjaGFyYWN0ZXIgXCLihpJcIlxuLy8gXCJcXDIwMjJcIiBvdXRwdXRzIGFzY2lpIGNoYXJhY3RlciBcIuKAolwiXG5cbiRzbGljay1mb250LXBhdGg6IFwiLi9mb250cy9cIiAhZGVmYXVsdDtcbiRzbGljay1mb250LWZhbWlseTogXCJpY29tb29uXCIgIWRlZmF1bHQ7XG4kc2xpY2stbG9hZGVyLXBhdGg6IFwiLi9cIiAhZGVmYXVsdDtcbiRzbGljay1hcnJvdy1jb2xvcjogYmxhY2sgIWRlZmF1bHQ7XG4kc2xpY2stZG90LWNvbG9yOiBibGFjayAhZGVmYXVsdDtcbiRzbGljay1kb3QtY29sb3ItYWN0aXZlOiAkc2xpY2stZG90LWNvbG9yICFkZWZhdWx0O1xuJHNsaWNrLXByZXYtY2hhcmFjdGVyOiBcIlxcZTkwMFwiICFkZWZhdWx0O1xuJHNsaWNrLW5leHQtY2hhcmFjdGVyOiBcIlxcZTkwMVwiICFkZWZhdWx0O1xuJHNsaWNrLWRvdC1jaGFyYWN0ZXI6IFwiXFxmMTUwXCIgIWRlZmF1bHQ7XG4kc2xpY2stZG90LXNpemU6IDZweCAhZGVmYXVsdDtcbiRzbGljay1vcGFjaXR5LWRlZmF1bHQ6IDAuNzUgIWRlZmF1bHQ7XG4kc2xpY2stb3BhY2l0eS1vbi1ob3ZlcjogMSAhZGVmYXVsdDtcbiRzbGljay1vcGFjaXR5LW5vdC1hY3RpdmU6IDAuMjUgIWRlZmF1bHQ7XG4kc2xpY2tJbWFnZUhlaWdodDogYXV0bztcblxuQGZ1bmN0aW9uIHNsaWNrLWltYWdlLXVybCgkdXJsKSB7XG4gICAgQGlmIGZ1bmN0aW9uLWV4aXN0cyhpbWFnZS11cmwpIHtcbiAgICAgICAgQHJldHVybiBpbWFnZS11cmwoJHVybCk7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgICAgQHJldHVybiB1cmwoJHNsaWNrLWxvYWRlci1wYXRoICsgJHVybCk7XG4gICAgfVxufVxuXG5AZnVuY3Rpb24gc2xpY2stZm9udC11cmwoJHVybCkge1xuICAgIEBpZiBmdW5jdGlvbi1leGlzdHMoZm9udC11cmwpIHtcbiAgICAgICAgQHJldHVybiBmb250LXVybCgkdXJsKTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgICBAcmV0dXJuIHVybCgkc2xpY2stZm9udC1wYXRoICsgJHVybCk7XG4gICAgfVxufVxuXG4vKiBTbGlkZXIgKi9cblxuLnNsaWNrLWxpc3Qge1xuICAgIC5zbGljay1sb2FkaW5nICYge1xuICAgICAgICBiYWNrZ3JvdW5kOiAjZmZmIHNsaWNrLWltYWdlLXVybChcImFqYXgtbG9hZGVyLmdpZlwiKSBjZW50ZXIgY2VudGVyIG5vLXJlcGVhdDtcbiAgICB9XG59XG5cbi8qIEljb25zICovXG5AaWYgJHNsaWNrLWZvbnQtZmFtaWx5ID09IFwic2xpY2tcIiB7XG4gICAgQGZvbnQtZmFjZSB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiBcInNsaWNrXCI7XG4gICAgICAgIHNyYzogc2xpY2stZm9udC11cmwoXCJzbGljay5lb3RcIik7XG4gICAgICAgIHNyYzogc2xpY2stZm9udC11cmwoXCJzbGljay5lb3Q/I2llZml4XCIpIGZvcm1hdChcImVtYmVkZGVkLW9wZW50eXBlXCIpLCBzbGljay1mb250LXVybChcInNsaWNrLndvZmZcIikgZm9ybWF0KFwid29mZlwiKSwgc2xpY2stZm9udC11cmwoXCJzbGljay50dGZcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIiksIHNsaWNrLWZvbnQtdXJsKFwic2xpY2suc3ZnI3NsaWNrXCIpIGZvcm1hdChcInN2Z1wiKTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIH1cbn1cblxuXG4ucmV2ZWFsIC5jbG9zZS1idXR0b24ge1xuXG4gIGhlaWdodDogM3JlbTtcbiAgd2lkdGg6IDNyZW07XG4gIGJvcmRlci1yYWRpdXM6IDEwMHB4O1xuICBsaW5lLWhlaWdodDogMS4xcmVtO1xuICBiYWNrZ3JvdW5kOiMwMDA7XG4gIHNwYW4ge1xuICAgIHdpZHRoOiAzcmVtO1xuICAgIGRpc3BsYXk6aW5saW5lLWJsb2NrO1xuICAgIGxpbmUtaGVpZ2h0OiAxcmVtO1xuICAgIGNvbG9yOiAjRkZGO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICBsZWZ0OiA1MCU7XG4gICAgZm9udC1zaXplOiAzcmVtO1xuICAgIGhlaWdodDoxLjVyZW07XG4gICAgQGluY2x1ZGUgdHJhbnNsYXRlKC01MCUsLTUwJSlcbiAgfVxufVxuXG4vKiBBcnJvd3MgKi9cbi5tZW51LWdhbGxlcnkge1xuICAgIGEge1xuICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgY29sb3I6JGJsYWNrO1xuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGNvbG9yOiAkcmVkO1xuICAgICAgfVxuICAgIH1cblxuICAuZHJvcGRvd24tcGFuZSB7XG4gICAgcGFkZGluZzogMDtcbiAgICBsaSB7XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2RkZDtcbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgYm9yZGVyLWJvdHRvbTowO1xuICAgIH19XG4gIH1cblxuICAgIC5kcm9wZG93bi5tZW51ICAgLmZpcnN0LXN1YiB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI0RERDs7XG4gIH1cbn1cblxuLmJ1dHRvbi5leHBvIHtcbiAgICBiYWNrZ3JvdW5kOiR3aGl0ZTtcbiAgICBib3JkZXI6JGRhcmstZ3JheSAzcHggc29saWQgO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgY29sb3I6ICRibGFjaztcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgcGFkZGluZy1yaWdodDogNHJlbTtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICB0ZXh0LWluZGVudDogMXJlbTtcbiAgICAmOmFmdGVyIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICByaWdodDowO1xuICAgICAgICB0b3A6MDtcbiAgICAgICAgaGVpZ2h0OjEwMCU7XG4gICAgICAgIHdpZHRoOjNyZW07XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxMDAlO1xuICAgICAgICBjb250ZW50OiBcIitcIjtcbiAgICAgIGJvcmRlcjokZGFyay1ncmF5IDNweCBzb2xpZCA7XG4gICAgICBiYWNrZ3JvdW5kOiRkYXJrLWdyYXkgO1xuICAgICAgY29sb3I6d2hpdGU7XG4gICAgICBmb250LXNpemU6IDJyZW07XG4gICAgICBsaW5lLWhlaWdodDogMnJlbTtcbiAgICAgIHRleHQtaW5kZW50OiAwcmVtO1xuICAgIH1cbn1cblxuLmdhbGxlcnlFeHBvIHtcbiAgICAuZGVzY1NsaWRlIHtcbiAgICAgICAgcGFkZGluZzogMCAycmVtIDAgMDtcbiAgICB9XG4gICAgLnRpdGxlU2xpZGUge1xuICAgICAgICAqIHtcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgICAgICB9XG4gICAgICAgIGgzIHtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA4MDA7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLnNsaWNrLWN1cnJlbnQge1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgfVxuICAgIC5zbGljay1zbGlkZTpub3QoLnNsaWNrLWN1cnJlbnQpIHtcbiAgICAgICAgaGVpZ2h0OjA7XG4gICAgfVxuICAgIC5zbGlkZXItZm9yIHtcbiAgICAgICAgaGVpZ2h0OiRzbGlja0ltYWdlSGVpZ2h0O1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcblxuICAgICAgICAuc2xpY2stcHJldiwgLnNsaWNrLWFycm93IHtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zbGF0ZSgwLDApO1xuICAgICAgICB9XG4gICAgfVxuICAgIC5zbGlkZXItbmF2IHtcbiAgICAgICAgaGVpZ2h0OmF1dG87XG4gICAgICAgIGJhY2tncm91bmQ6dHJhbnNwYXJlbnQ7XG4gICAgICAgIGltZyB7XG4gICAgICAgICAgICBtYXJnaW46MyU7XG4gICAgICAgICAgICBtYXgtd2lkdGg6OTYlO1xuICAgICAgICAgICAgYm9yZGVyOjFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLmltYWdlLXNsaWRlci1jb250YWluZXIge1xuICAgICAgICBoZWlnaHQ6JHNsaWNrSW1hZ2VIZWlnaHQ7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgdGV4dC1hbGlnbjpjZW50ZXI7XG4gICAgICAgIGEge1xuICAgICAgICAgICAgd2lkdGg6MTAwJTtcbiAgICAgICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGRpc3BsYXk6aW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6NTAlO1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2xhdGUoLTUwJSwtNTAlKTtcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogXCJcXGU5MTFcIjtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6IGljb21vb247XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICAgICAgICAgICAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogI0ZGRjtcbiAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDJyZW07XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAuOHJlbTtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIHotaW5kZXg6IDEwMDtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogIzAwMDtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICB6LWluZGV4OjE7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDoxMDAlO1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogcmdiYSgwLDAsMCwwLjUpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5pbWFnZS1zbGlkZXIgeztcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIC8vdG9wOjUwJTtcbiAgICAgICAgICAgIC8vbGVmdDogNTAlO1xuICAgICAgICAgICAgLy9AaW5jbHVkZSB0cmFuc2xhdGUoLTUwJSwtNTAlKVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnNsaWNrLXByZXYsXG4gICAgLnNsaWNrLW5leHQge1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB6LWluZGV4OiAxMDA7XG4gICAgICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcbiAgICAgICAgcGFkZGluZzogMC4zcmVtO1xuICAgICAgICBoZWlnaHQ6IDIuMnJlbTtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHdpZHRoOiAyLjJyZW07XG5cbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBsaW5lLWhlaWdodDogMHB4O1xuICAgICAgICBmb250LXNpemU6IDBweDtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIHRvcDogNTAlO1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC01MCUpO1xuICAgICAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwJSk7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC01MCUpO1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICAgICY6aG92ZXIsICY6Zm9jdXMge1xuICAgICAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgICAgICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAkc2xpY2stb3BhY2l0eS1vbi1ob3ZlcjtcbiAgICAgICAgICAgICAgICBjb2xvcjokcmVkO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgICYuc2xpY2stZGlzYWJsZWQ6YmVmb3JlIHtcbiAgICAgICAgICAgIG9wYWNpdHk6ICRzbGljay1vcGFjaXR5LW5vdC1hY3RpdmU7XG4gICAgICAgIH1cbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRzbGljay1mb250LWZhbWlseTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICAgICAgY29sb3I6ICRzbGljay1hcnJvdy1jb2xvcjtcbiAgICAgICAgICAgIG9wYWNpdHk6ICRzbGljay1vcGFjaXR5LWRlZmF1bHQ7XG4gICAgICAgICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgICAgICAgICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuc2xpY2stcHJldiB7XG4gICAgICAgIGxlZnQ6IDBweDtcbiAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICAgICAgICByaWdodDogMHB4O1xuICAgICAgICB9XG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICRzbGljay1wcmV2LWNoYXJhY3RlcjtcbiAgICAgICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICAgICAgY29udGVudDogJHNsaWNrLW5leHQtY2hhcmFjdGVyO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnNsaWNrLW5leHQge1xuICAgICAgICByaWdodDogMHB4O1xuICAgICAgICBsZWZ0OmF1dG87XG4gICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICBsZWZ0OiAwcHg7XG4gICAgICAgICAgICByaWdodDogYXV0bztcbiAgICAgICAgfVxuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiAkc2xpY2stbmV4dC1jaGFyYWN0ZXI7XG4gICAgICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICRzbGljay1wcmV2LWNoYXJhY3RlcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qIERvdHMgKi9cblxuICAgIC5zbGljay1kb3R0ZWQuc2xpY2stc2xpZGVyIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICB9XG5cbiAgICAuc2xpY2stZG90cyB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgYm90dG9tOiAtMjVweDtcbiAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbGkge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgaGVpZ2h0OiAyMHB4O1xuICAgICAgICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICAgICAgICBtYXJnaW46IDAgNXB4O1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgIGJ1dHRvbiB7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIGhlaWdodDogMjBweDtcbiAgICAgICAgICAgICAgICB3aWR0aDogMjBweDtcbiAgICAgICAgICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAwcHg7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAwcHg7XG4gICAgICAgICAgICAgICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDVweDtcbiAgICAgICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICAgICAgJjpob3ZlciwgJjpmb2N1cyB7XG4gICAgICAgICAgICAgICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6ICRzbGljay1vcGFjaXR5LW9uLWhvdmVyO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICRzbGljay1kb3QtY2hhcmFjdGVyO1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMjBweDtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAyMHB4O1xuICAgICAgICAgICAgICAgICAgICBmb250LWZhbWlseTogJHNsaWNrLWZvbnQtZmFtaWx5O1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6ICRzbGljay1kb3Qtc2l6ZTtcbiAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRzbGljay1kb3QtY29sb3I7XG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6ICRzbGljay1vcGFjaXR5LW5vdC1hY3RpdmU7XG4gICAgICAgICAgICAgICAgICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAgICAgICAgICAgICAgICAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYuc2xpY2stYWN0aXZlIGJ1dHRvbjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkc2xpY2stZG90LWNvbG9yLWFjdGl2ZTtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAkc2xpY2stb3BhY2l0eS1kZWZhdWx0O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG59XG4iLCIvKkZvbnRzIGxpYnJhcnkqL1xuJGZvbnRzUGF0aDogXCIuLi9mb250cy9pbnRlclwiICFkZWZhdWx0O1xuXG5cbi8qRm9udHMgbGlicmFyeSovXG5cbkBmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5OiAnSW50ZXInO1xuICAgIGZvbnQtc3R5bGU6ICBub3JtYWw7XG4gICAgZm9udC13ZWlnaHQ6IDEwMDtcbiAgICBmb250LWRpc3BsYXk6IHN3YXA7XG4gICAgc3JjOiB1cmwoXCIjeyRmb250c1BhdGh9L0ludGVyLVRoaW4ud29mZjI/dj0zLjE1XCIpIGZvcm1hdChcIndvZmYyXCIpLFxuICAgIHVybChcIiN7JGZvbnRzUGF0aH0vSW50ZXItVGhpbi53b2ZmP3Y9My4xNVwiKSBmb3JtYXQoXCJ3b2ZmXCIpO1xufVxuQGZvbnQtZmFjZSB7XG4gICAgZm9udC1mYW1pbHk6ICdJbnRlcic7XG4gICAgZm9udC1zdHlsZTogIGl0YWxpYztcbiAgICBmb250LXdlaWdodDogMTAwO1xuICAgIGZvbnQtZGlzcGxheTogc3dhcDtcbiAgICBzcmM6IHVybChcIiN7JGZvbnRzUGF0aH0vSW50ZXItVGhpbkl0YWxpYy53b2ZmMj92PTMuMTVcIikgZm9ybWF0KFwid29mZjJcIiksXG4gICAgdXJsKFwiI3skZm9udHNQYXRofS9JbnRlci1UaGluSXRhbGljLndvZmY/dj0zLjE1XCIpIGZvcm1hdChcIndvZmZcIik7XG59XG5cbkBmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5OiAnSW50ZXInO1xuICAgIGZvbnQtc3R5bGU6ICBub3JtYWw7XG4gICAgZm9udC13ZWlnaHQ6IDIwMDtcbiAgICBmb250LWRpc3BsYXk6IHN3YXA7XG4gICAgc3JjOiB1cmwoXCIjeyRmb250c1BhdGh9L0ludGVyLUV4dHJhTGlnaHQud29mZjI/dj0zLjE1XCIpIGZvcm1hdChcIndvZmYyXCIpLFxuICAgIHVybChcIiN7JGZvbnRzUGF0aH0vSW50ZXItRXh0cmFMaWdodC53b2ZmP3Y9My4xNVwiKSBmb3JtYXQoXCJ3b2ZmXCIpO1xufVxuQGZvbnQtZmFjZSB7XG4gICAgZm9udC1mYW1pbHk6ICdJbnRlcic7XG4gICAgZm9udC1zdHlsZTogIGl0YWxpYztcbiAgICBmb250LXdlaWdodDogMjAwO1xuICAgIGZvbnQtZGlzcGxheTogc3dhcDtcbiAgICBzcmM6IHVybChcIiN7JGZvbnRzUGF0aH0vSW50ZXItRXh0cmFMaWdodEl0YWxpYy53b2ZmMj92PTMuMTVcIikgZm9ybWF0KFwid29mZjJcIiksXG4gICAgdXJsKFwiI3skZm9udHNQYXRofS9JbnRlci1FeHRyYUxpZ2h0SXRhbGljLndvZmY/dj0zLjE1XCIpIGZvcm1hdChcIndvZmZcIik7XG59XG5cbkBmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5OiAnSW50ZXInO1xuICAgIGZvbnQtc3R5bGU6ICBub3JtYWw7XG4gICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICBmb250LWRpc3BsYXk6IHN3YXA7XG4gICAgc3JjOiB1cmwoXCIjeyRmb250c1BhdGh9L0ludGVyLUxpZ2h0LndvZmYyP3Y9My4xNVwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSxcbiAgICB1cmwoXCIjeyRmb250c1BhdGh9L0ludGVyLUxpZ2h0LndvZmY/dj0zLjE1XCIpIGZvcm1hdChcIndvZmZcIik7XG59XG5AZm9udC1mYWNlIHtcbiAgICBmb250LWZhbWlseTogJ0ludGVyJztcbiAgICBmb250LXN0eWxlOiAgaXRhbGljO1xuICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgZm9udC1kaXNwbGF5OiBzd2FwO1xuICAgIHNyYzogdXJsKFwiI3skZm9udHNQYXRofS9JbnRlci1MaWdodEl0YWxpYy53b2ZmMj92PTMuMTVcIikgZm9ybWF0KFwid29mZjJcIiksXG4gICAgdXJsKFwiI3skZm9udHNQYXRofS9JbnRlci1MaWdodEl0YWxpYy53b2ZmP3Y9My4xNVwiKSBmb3JtYXQoXCJ3b2ZmXCIpO1xufVxuXG5AZm9udC1mYWNlIHtcbiAgICBmb250LWZhbWlseTogJ0ludGVyJztcbiAgICBmb250LXN0eWxlOiAgbm9ybWFsO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgZm9udC1kaXNwbGF5OiBzd2FwO1xuICAgIHNyYzogdXJsKFwiI3skZm9udHNQYXRofS9JbnRlci1SZWd1bGFyLndvZmYyP3Y9My4xNVwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSxcbiAgICB1cmwoXCIjeyRmb250c1BhdGh9L0ludGVyLVJlZ3VsYXIud29mZj92PTMuMTVcIikgZm9ybWF0KFwid29mZlwiKTtcbn1cbkBmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5OiAnSW50ZXInO1xuICAgIGZvbnQtc3R5bGU6ICBpdGFsaWM7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBmb250LWRpc3BsYXk6IHN3YXA7XG4gICAgc3JjOiB1cmwoXCIjeyRmb250c1BhdGh9L0ludGVyLUl0YWxpYy53b2ZmMj92PTMuMTVcIikgZm9ybWF0KFwid29mZjJcIiksXG4gICAgdXJsKFwiI3skZm9udHNQYXRofS9JbnRlci1JdGFsaWMud29mZj92PTMuMTVcIikgZm9ybWF0KFwid29mZlwiKTtcbn1cblxuQGZvbnQtZmFjZSB7XG4gICAgZm9udC1mYW1pbHk6ICdJbnRlcic7XG4gICAgZm9udC1zdHlsZTogIG5vcm1hbDtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICAgIGZvbnQtZGlzcGxheTogc3dhcDtcbiAgICBzcmM6IHVybChcIiN7JGZvbnRzUGF0aH0vSW50ZXItTWVkaXVtLndvZmYyP3Y9My4xNVwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSxcbiAgICB1cmwoXCIjeyRmb250c1BhdGh9L0ludGVyLU1lZGl1bS53b2ZmP3Y9My4xNVwiKSBmb3JtYXQoXCJ3b2ZmXCIpO1xufVxuQGZvbnQtZmFjZSB7XG4gICAgZm9udC1mYW1pbHk6ICdJbnRlcic7XG4gICAgZm9udC1zdHlsZTogIGl0YWxpYztcbiAgICBmb250LXdlaWdodDogNTAwO1xuICAgIGZvbnQtZGlzcGxheTogc3dhcDtcbiAgICBzcmM6IHVybChcIiN7JGZvbnRzUGF0aH0vSW50ZXItTWVkaXVtSXRhbGljLndvZmYyP3Y9My4xNVwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSxcbiAgICB1cmwoXCIjeyRmb250c1BhdGh9L0ludGVyLU1lZGl1bUl0YWxpYy53b2ZmP3Y9My4xNVwiKSBmb3JtYXQoXCJ3b2ZmXCIpO1xufVxuXG5AZm9udC1mYWNlIHtcbiAgICBmb250LWZhbWlseTogJ0ludGVyJztcbiAgICBmb250LXN0eWxlOiAgbm9ybWFsO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgZm9udC1kaXNwbGF5OiBzd2FwO1xuICAgIHNyYzogdXJsKFwiI3skZm9udHNQYXRofS9JbnRlci1TZW1pQm9sZC53b2ZmMj92PTMuMTVcIikgZm9ybWF0KFwid29mZjJcIiksXG4gICAgdXJsKFwiI3skZm9udHNQYXRofS9JbnRlci1TZW1pQm9sZC53b2ZmP3Y9My4xNVwiKSBmb3JtYXQoXCJ3b2ZmXCIpO1xufVxuQGZvbnQtZmFjZSB7XG4gICAgZm9udC1mYW1pbHk6ICdJbnRlcic7XG4gICAgZm9udC1zdHlsZTogIGl0YWxpYztcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGZvbnQtZGlzcGxheTogc3dhcDtcbiAgICBzcmM6IHVybChcIiN7JGZvbnRzUGF0aH0vSW50ZXItU2VtaUJvbGRJdGFsaWMud29mZjI/dj0zLjE1XCIpIGZvcm1hdChcIndvZmYyXCIpLFxuICAgIHVybChcIiN7JGZvbnRzUGF0aH0vSW50ZXItU2VtaUJvbGRJdGFsaWMud29mZj92PTMuMTVcIikgZm9ybWF0KFwid29mZlwiKTtcbn1cblxuQGZvbnQtZmFjZSB7XG4gICAgZm9udC1mYW1pbHk6ICdJbnRlcic7XG4gICAgZm9udC1zdHlsZTogIG5vcm1hbDtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIGZvbnQtZGlzcGxheTogc3dhcDtcbiAgICBzcmM6IHVybChcIiN7JGZvbnRzUGF0aH0vSW50ZXItQm9sZC53b2ZmMj92PTMuMTVcIikgZm9ybWF0KFwid29mZjJcIiksXG4gICAgdXJsKFwiI3skZm9udHNQYXRofS9JbnRlci1Cb2xkLndvZmY/dj0zLjE1XCIpIGZvcm1hdChcIndvZmZcIik7XG59XG5AZm9udC1mYWNlIHtcbiAgICBmb250LWZhbWlseTogJ0ludGVyJztcbiAgICBmb250LXN0eWxlOiAgaXRhbGljO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgZm9udC1kaXNwbGF5OiBzd2FwO1xuICAgIHNyYzogdXJsKFwiI3skZm9udHNQYXRofS9JbnRlci1Cb2xkSXRhbGljLndvZmYyP3Y9My4xNVwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSxcbiAgICB1cmwoXCIjeyRmb250c1BhdGh9L0ludGVyLUJvbGRJdGFsaWMud29mZj92PTMuMTVcIikgZm9ybWF0KFwid29mZlwiKTtcbn1cblxuQGZvbnQtZmFjZSB7XG4gICAgZm9udC1mYW1pbHk6ICdJbnRlcic7XG4gICAgZm9udC1zdHlsZTogIG5vcm1hbDtcbiAgICBmb250LXdlaWdodDogODAwO1xuICAgIGZvbnQtZGlzcGxheTogc3dhcDtcbiAgICBzcmM6IHVybChcIiN7JGZvbnRzUGF0aH0vSW50ZXItRXh0cmFCb2xkLndvZmYyP3Y9My4xNVwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSxcbiAgICB1cmwoXCIjeyRmb250c1BhdGh9L0ludGVyLUV4dHJhQm9sZC53b2ZmP3Y9My4xNVwiKSBmb3JtYXQoXCJ3b2ZmXCIpO1xufVxuQGZvbnQtZmFjZSB7XG4gICAgZm9udC1mYW1pbHk6ICdJbnRlcic7XG4gICAgZm9udC1zdHlsZTogIGl0YWxpYztcbiAgICBmb250LXdlaWdodDogODAwO1xuICAgIGZvbnQtZGlzcGxheTogc3dhcDtcbiAgICBzcmM6IHVybChcIiN7JGZvbnRzUGF0aH0vSW50ZXItRXh0cmFCb2xkSXRhbGljLndvZmYyP3Y9My4xNVwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSxcbiAgICB1cmwoXCIjeyRmb250c1BhdGh9L0ludGVyLUV4dHJhQm9sZEl0YWxpYy53b2ZmP3Y9My4xNVwiKSBmb3JtYXQoXCJ3b2ZmXCIpO1xufVxuXG5AZm9udC1mYWNlIHtcbiAgICBmb250LWZhbWlseTogJ0ludGVyJztcbiAgICBmb250LXN0eWxlOiAgbm9ybWFsO1xuICAgIGZvbnQtd2VpZ2h0OiA5MDA7XG4gICAgZm9udC1kaXNwbGF5OiBzd2FwO1xuICAgIHNyYzogdXJsKFwiI3skZm9udHNQYXRofS9JbnRlci1CbGFjay53b2ZmMj92PTMuMTVcIikgZm9ybWF0KFwid29mZjJcIiksXG4gICAgdXJsKFwiI3skZm9udHNQYXRofS9JbnRlci1CbGFjay53b2ZmP3Y9My4xNVwiKSBmb3JtYXQoXCJ3b2ZmXCIpO1xufVxuQGZvbnQtZmFjZSB7XG4gICAgZm9udC1mYW1pbHk6ICdJbnRlcic7XG4gICAgZm9udC1zdHlsZTogIGl0YWxpYztcbiAgICBmb250LXdlaWdodDogOTAwO1xuICAgIGZvbnQtZGlzcGxheTogc3dhcDtcbiAgICBzcmM6IHVybChcIiN7JGZvbnRzUGF0aH0vSW50ZXItQmxhY2tJdGFsaWMud29mZjI/dj0zLjE1XCIpIGZvcm1hdChcIndvZmYyXCIpLFxuICAgIHVybChcIiN7JGZvbnRzUGF0aH0vSW50ZXItQmxhY2tJdGFsaWMud29mZj92PTMuMTVcIikgZm9ybWF0KFwid29mZlwiKTtcbn1cblxuXG4vKlxuICogVmFyaW91cyBjb250ZW50IHN0eWxlcyByZWxhdGVkIHRvIHNwZWNpZmljIHdlYmFwcCBwYXJ0cyAoY21zLCBibG9nLFxuICogYWNjb3VudHMsIGV0Yy4uKVxuICpcbiAqIEZvciBtb3JlIGNvbW1vbiBhbmQgZ2xvYmFsIGNvbnRlbnRzLCBwcmVmZXIgdG8gcHV0IHRoZW0gaW4gYWRkb25zL1xuICpcbiAqIFJlbWVtYmVyIHRoZXNlIHN0eWxlIGFyZSBlbmZvcmNlZCB3aXRoaW4gI2JvZHlfY29udGVudCBzbyB0aGV5IHdpbGxcbiAqIG92ZXJyaWRlIGFueSBiYXNpYyBzdHlsZSB3aXRob3V0IGFuIGlkXG4gKi9cbmF1ZGlvLHZpZGVvIHtcbiAgICB3aWR0aDoxMDAlO1xufVxuLnJpZ2h0IHtcbiAgICBmbG9hdDpyaWdodDtcbiAgICB3aWR0aDogYXV0bztcbn1cbi5sZWZ0IHtcbiAgICBmbG9hdDogbGVmdDtcbn1cbi5hYnNvUmlnaHQge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6MDtcbiAgICByaWdodDowO1xuXG59XG5pIHtcbiAgICBmb250LXN0eWxlOm5vcm1hbDtcbn1cbmE6aG92ZXIge1xuICAgIC5zdmcge1xuICAgICAgICBAaW5jbHVkZSBzdmdpbnZlcnM7XG4gICAgfVxufVxuXG5oMSxoMixoMyxoNCB7XG4gICAgLy90ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuaDMge1xuICAgIGZvbnQtd2VpZ2h0OiAyMDA7XG59XG5cbmg1IHtcbiAgICBmb250LXdlaWdodDogMzAwO1xuICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xuICAgICY6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDonJztcbiAgICAgICAgYmFja2dyb3VuZDogJHJlZDtcbiAgICAgICAgaGVpZ2h0OjJweDtcbiAgICAgICAgd2lkdGg6MXJlbTtcbiAgICAgICAgYm90dG9tOi00cHg7XG4gICAgICAgIGxlZnQ6MDtcbiAgICAgICAgZGlzcGxheTpibG9jaztcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIH1cbn1cbi5iYXNlbGluZSBzdmcge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IDFyZW07XG4gICAgbGVmdDogMC40cmVtO1xufVxuXG4vLyBOT1RFOiBTaG91bGQgYmUgbW92ZWQgdG8gYSB0ZXh0LXJlZCBzZWxlY3RvciBpbnN0ZWFkXG4qOm5vdCguc2VjdGlvbi5yZWQpIC5yZWQsXG5hLnJlZCB7XG4gICAgY29sb3I6ICRyZWQ7XG59XG5cblxuLy8gQXdmdWwuLlxuaDEuYXJ0aWNsZS10aXRsZSB7XG5mb250LXdlaWdodDogNDAwICFpbXBvcnRhbnQ7XG5saW5lLWhlaWdodDogMS4xO1xuICAgIGZvbnQtZmFtaWx5OiAnU291cmNlIFNhbnMgUHJvJywgc2Fucy1zZXJpZjtcbmJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjQ0NDO1xucGFkZGluZy1ib3R0b206IDFyZW07XG4gICAgdGV4dC10cmFuc2Zvcm06IG5vcm1hbDtcbiAgICBmb250LXNpemU6IDIuM3JlbTtcbn1cblxuLmhlYWRlckF0dGljbGUsI3Zpc2l0LWRlY3JpcHRpb24ge1xuICAgIGgxIHtcblxuICAgICAgICBmb250LXdlaWdodDogNDAwICFpbXBvcnRhbnQ7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjE7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAnU291cmNlIFNhbnMgUHJvJywgc2Fucy1zZXJpZjtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICNDQ0M7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAxcmVtO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbm9ybWFsO1xuICAgICAgICBmb250LXNpemU6IDIuM3JlbTtcbiAgICB9XG4gICAgaDQge1xuICAgICAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICB9XG5cbn1cbi5oMyB7XG4gICAgQGV4dGVuZCBoMztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nLWJvdHRvbTogMnJlbTtcbiAgICBwYWRkaW5nLXRvcDogMnJlbTtcbn1cblxuW2RhdGEtbGlua10ge1xuICAgICY6aG92ZXIge1xuICAgICAgICBjdXJzb3I6cG9pbnRlcjtcbiAgICAgICAgSDEsSDIsSDMsaDQge1xuICAgICAgICAgICAgY29sb3I6JHJlZDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLy9ub3dhcnBcbi5ub3dhcnAge1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG4vLyB0eXBlIG9mIGhyXG5oci5kYXNoZWQge1xuICAgIGJvcmRlci1zdHlsZTogZGFzaGVkO1xufVxuXG4vL2ZpZ3VyZSBhbGlnblxuLy9maWd1cmUgdGV4dCBhcnJvdW5kXG5cbmZpZ3VyZS5sZWZ0IHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBtYXJnaW4tcmlnaHQ6IDFlbTtcbn1cblxuZmlndXJlLnJpZ2h0IHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgbWFyZ2luLWxlZnQ6IDFlbTtcbn1cblxuZmlndXJlLmludGV4dCB7XG5cbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBwYWRkaW5nOiAuMmVtO1xuICAgIG1hcmdpbjogMDtcblxuXG4gICAgaW1nIHtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIH1cbn1cblxuXG4vL2V4dHJhIGJ1dHRvblxuLmJ1dHRvbiB7XG4gICAgJi53aGl0ZSB7XG4gICAgICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcbiAgICAgICAgY29sb3I6JGJsYWNrO1xuICAgICAgICBib3JkZXI6MXB4IHNvbGlkICRtZWRpdW0tZ3JheTtcbiAgICB9XG59XG4vLy9hZ2VuZGFcblxuLmFnZW5kYSB7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICBiYWNrZ3JvdW5kLWF0dGFjaG1lbnQ6IGZpeGVkO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG4gICAgaDIge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgIH1cbn1cblxuI2xpc3Qge1xuICAgIG1hcmdpbi10b3A6IC03MHB4ICFpbXBvcnRhbnQ7XG4gICAgcCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMC45NHJlbTtcbiAgICAgICAgbWFyZ2luLXRvcDogLTIwcHg7XG4gICAgICAgIGNvbG9yOiAjODM4MzdGO1xuICAgIH1cbn1cblxuLmNsZWFsbGVzdHNtYWxsIHtcbiAgICBAbWVkaWEgI3skc21hbGwtb25seX0ge1xuICAgICAgICBjbGVhcjogbGVmdDtcbiAgICB9XG59XG5cbi8vIEZvcmNlcyB3aGl0ZSB3cml0aW5nIG9uIGJsYWNrIGJhY2tncm91bmRcbi5yb3cge1xuICAgICYuYmxhY2sge1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmxhY2s7XG4gICAgfVxuICAgICYub24tYmxhY2sge1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmxhY2s7XG4gICAgICAgIGgyLCBoMywgaDQsIGg1LCBoNiwgcCwgbGkge1xuICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAvLyBGb3JjZXMgYmxhY2sgd3JpdGluZyBvbiB3aGl0ZSBiYWNrZ3JvdW5kXG4gICAgJi53aGl0ZSB7XG4gICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICB9XG5cbiAgICAvLyBGb3JjZXMgd2hpdGUgd3JpdGluZyBvbiByZWQgYmFja2dyb3VuZFxuICAgICYucmVkIHtcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHJlZDtcbiAgICB9XG59XG5cbioub24tcmVkIHtcbiAgICBjb2xvcjogJHdoaXRlO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRyZWQ7XG4gICAgaDIge1xuICAgICAgICBmb250LXNpemU6IDEuNnJlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMi42cmVtO1xuICAgIH1cbiAgICBoMiwgaDMsIGg0LCBoNSwgaDYsIHAsIGxpIHtcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICB9XG59XG5cbi5kYXJrIHtcbiAgICBjb2xvcjogJHdoaXRlO1xuICAgIGJhY2tncm91bmQtY29sb3I6IGxpZ2h0ZW4oJGJsYWNrLDUlKTtcbiAgICBoMiwgaDMsIGg0LCBoNSwgaDYsIHAsIGxpIHtcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICB9XG59XG5cbi50cmFuc3BhcmVudCB7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG59XG5cbi5yZWxhdGl2ZSB7XG4gICAgcG9zaXRpb246cmVsYXRpdmU7XG59XG4vKlxuICogc3ZnIGltYWdlc1xuICogVE9ETzogbW92ZSBpbnRvIGFkZG9ucy9zdmcsIGJ1dCBhY3R1YWxseSBkb2VzbnQgd29ya3MgYmVjYXVzZSBvZiBzZWxlY3RvciBvdmVycmlkZSBzb21ld2hlcmUgZWxzZVxuICovXG5pbWcuc3ZnIHtcbiAgICBkaXNwbGF5OiBub25lO1xufVxuXG4uc3ZnIHtcbiAgICAmLmljb25lIHtcbiAgICAgICAgJjpub3QoLnN0YXRpYykge1xuICAgICAgICAgICAgJjpob3ZlciwmLmFjdGl2ZSwuYWN0aXZlIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBzdmdpbnZlcnM7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgJi5pbnZlcnNlIHtcbiAgICAgICAgI2JsYWNrIHtcbiAgICAgICAgICAgIGZpbGw6ICR3aGl0ZTtcbiAgICAgICAgICAgICoge1xuICAgICAgICAgICAgICAgIGZpbGw6ICR3aGl0ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAmOm5vdCguc3RhdGljKSB7XG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBzdmdub3I7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbmEuaW52ZXJzZSB7XG4gICAgI2JsYWNrIHtcbiAgICAgICAgZmlsbDogJHdoaXRlO1xuICAgICAgICAqIHtcbiAgICAgICAgICAgIGZpbGw6ICR3aGl0ZTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAmOm5vdCguc3RhdGljKSB7XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgQGluY2x1ZGUgc3Znbm9yO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4ucGFkZGVydGV4dCB7XG4gICAgcGFkZGluZzozcHg7XG59XG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBGT09URVJcbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cblxuXG5cbi8vIGZvb3RlciBDU1NcblxuXG4vL2xlZnRDb250ZW50XG4ubGVmdENvbnRlbnQge1xuICAgIC5tZW51IHtcbiAgICAgICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgICAgJiA+IGxpe1xuICAgICAgICAgICAgPiBhIHtcbiAgICAgICAgICAgICBjb2xvcjokcmVkO1xuICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjokcmVkO1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmLmFjdGl2ZSAge1xuICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHVsIHtcbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIGNvbG9yOiRibGFjaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbi5mbGV4TGFyZ2VDZW50ZXIge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRyZXI7XG4gICAgfVxufVxuXG4vL2ZsZXggZG93biBmb3IgbGFyZ2Vcbi5mbGV4TGFyZ2VFbmQge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xuICAgIH1cbn1cblxuXG4vLyByZXNpemUgZG90XG51bC5kb3Qge1xuICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgICBtYXJnaW4tbGVmdDogMXJlbTtcblxuICAgIGxpe1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogXCLigKJcIjtcbiAgICAgICAgZm9udC1zaXplOiAxMjAlOyAvKiBvciB3aGF0ZXZlciAqL1xuXG4gICAgICAgIGxlZnQ6LTEwcHg7XG4gICAgICAgICAgICB0b3A6LTRweDtcbiAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5pbnRyb0ZpcnN0IHtcbiAgICAubW9yZWluZm8ge1xuICAgICAgICBtYXJnaW4tYm90dG9tOjFyZW07XG4gICAgICAgIGJvcmRlci1ib3R0b206MnB4IHNvbGlkICRyZWQ7XG4gICAgICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgICAgIGZsb2F0OmxlZnQ7XG4gICAgfVxufVxuICAgIC5pbnRyb1NlY29uZCB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIGZsb2F0OmxlZnQ7XG4gICAgICAgIGNsZWFyOiBib3RoO1xuICAgIH1cblxuLmNtcy1hcnRpY2xlIC5sZWZ0Q29udGVudHtcbiAgICBwIHtcbiAgICAgICAgbWFyZ2luOjA7XG4gICAgICAgIG1hcmdpbi10b3A6MXJlbTtcbiAgICB9XG59XG4uYmlibGlvZ3JhcGhpZSB7XG4gICAgIGg0IHtcbiAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuXG4gICAgIH1cbiB9XG5cbi5kbC12aWQgaDQge1xuICBjb2xvcjogIzY2Njtcbn1cblxuLmZvbnRFcGkge1xuICAgIGZvbnQtZmFtaWx5OiBcIkVwaWxvZ3VlXCIsXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIEFyaWFsLCBzYW5zLXNlcmlmO1xufVxuLnRleHQtc3Ryb25nZXIge1xuICAgIGZvbnQtd2VpZ2h0OiA5MDA7XG59XG5cbi52LXNwYWNlLW5vcm1hbCB7XG4gICAgcGFkZGluZy10b3A6NXJlbTtcbiAgICBwYWRkaW5nLWJvdHRvbTo1cmVtO1xuXG59XG5cbnZpZGVvW3Bvc3Rlcl17XG4gICAgd2lkdGg6MTAwJTtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgIG9iamVjdC1maXQ6IGNvdmVyO1xufVxuIiwidGFibGV7XG4gICAgJi5leHBhbmR7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbn1cblxuLypcbiAqIFNpbXVsYXRpbmcgdGFibGVcbiAqL1xuLnRhYmxlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBcbiAgICAmPiAudGFibGVyb3cge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBAbWVkaWEgI3skbWVkaXVtLXVwfSB7XG4gICAgICAgICAgICBkaXNwbGF5OmZsZXg7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2VlbjtcbiAgICAgICAgfVxuICAgICAgICAmPiAuY29sdGFibGUge1xuICAgICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICAgICAgcGFkZGluZzogMC42cmVtO1xuICAgICAgICAgICAgXG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDAuNzRyZW07XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG5cbi8qKiB0YWJsZWF1IHJlc3BvbnNpdmUgKiovXG4ucmVzcG9uc2l2ZS10YWJsZSB7XG4gICAgd2lkdGg6IDEwMCU7XG5cbiAgICB0cjpudGgtY2hpbGQoMm4rMikge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjdGN0Y3O1xuXG4gICAgfVxuICAgIHRoIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gICAgdGgsIHRkIHtcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICB9XG4gICAgdGg6Zmlyc3QtY2hpbGQsIHRkOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgIH1cblxuICAgIHRkIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuXG4gICAgdGQ6Zmlyc3QtY2hpbGQge1xuICAgIH1cblxuICAgIHRkOmxhc3QtY2hpbGQge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogLjVlbTtcbiAgICB9XG59XG5cbi5yZXNwb25zaXZlLXRhYmxlIHRkOmJlZm9yZSwgLmRldXhfYXhlcyB0ZDpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IGF0dHIoZGF0YS10aCkgXCIgXCI7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG5cblxuLmRldXhfYXhlcyB0ZDpudGgtY2hpbGQoMm4rMikge1xuICAgIGJhY2tncm91bmQtY29sb3I6I0Y3RjdGNztcbiAgICBwYWRkaW5nOiAwLjhlbTtcbiAgICBtYXJnaW46IDA7XG59XG5cblxudHIudGl0cmVfdGFibGUgdGgge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQSBwYXJ0aXIgZGUgOTgwcHhcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5AaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XG4gICAgLnJlc3BvbnNpdmUtdGFibGUge1xuICAgICAgICB0aCwgdGQge1xuICAgICAgICAgICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICAgICAgfVxuICAgICAgICB0ZDpiZWZvcmUge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cblxuXG5cblxuICAgIHRyLnRpdHJlX3RhYmxlIHtcbiAgICAgICAgYm9yZGVyLXRvcDpub25lO1xuICAgICAgICB0aCB7XG4gICAgICAgICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgICAgICB9XG4gICAgfVxufSIsIlxuaDMueWVhciB7XG4gIHdpZHRoOiAxNjBweDtcbiAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkIHJlZDtcbn1cblxuLmNocm9ub2xvZ3kge1xuICB0ZCB7XG4gICAgYmFja2dyb3VuZDojRkZGO1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDEwcHg7XG4gICAgICB3aWR0aDogMTYwcHg7XG4gICAgfVxuICB9XG4gIHRyK3RyIHRkOmxhc3QtY2hpbGQge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCBsaWdodEdyZXk7XG4gIH1cblxuICBwIHtcbiAgICBtYXJnaW4tdG9wOiA1cHg7XG4gIH1cbn1cbi5zaW1pbGVUaW1lbGluZSB7XG4gIGgxIHtcbiAgICBmb250LXNpemU6MS40cmVtO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApIHtcbiAgICAgIGZvbnQtc2l6ZToycmVtO1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSB1cCkge1xuICAgICAgZm9udC1zaXplOjIuMXJlbTtcbiAgICB9XG4gIH1cbiB9IiwiLmxpc3QtZ3JvdXAge1xuICBhIHtcbiAgICBkaXNwbGF5OmJsb2NrO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIGJvcmRlcjokZGFyay1ncmF5IDFweCBzb2xpZCA7XG4gICAgYmFja2dyb3VuZDogJGxpZ2h0LWdyYXk7XG4gICAgY29sb3I6JGJsYWNrO1xuICAgIHBhZGRpbmc6IDAuMnJlbTtcbiAgICBtYXJnaW4tdG9wOjAuNHJlbTtcbiAgICBjbGVhcjpib3RoO1xuICB9XG4gIG1hcmdpbi10b3A6MC40cmVtO1xufSIsIi5jb250ZW5ldXIge1xuICAuYXJ0aWNsZSB7XG4gICAgYm9yZGVyOjFweCBzb2xpZCAjQ0NDO1xuICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcbiAgICBtYXJnaW4tYm90dG9tOjFyZW07XG4gICAgLmFydGljbGUtdG9wIHtcbiAgICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xuICAgICAgSDQge1xuICAgICAgICBiYWNrZ3JvdW5kOiBkYXJrZW4oJGRhcmstZ3JheSwyMCUpOztcbiAgICAgICAgY29sb3I6I0ZGRjtcbiAgICAgICAgcGFkZGluZzowLjc1cmVtIDFyZW07XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgYSB7XG4gICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAubWV0YWRvbm5lZXMge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSB1cCkge1xuICAgICAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xuICAgICAgICAgIHJpZ2h0OjA7XG4gICAgICAgICAgdG9wOjA7XG4gICAgICAgIH1cbiAgICAgICAgbWFyZ2luOjFyZW07XG4gICAgICAgIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgICAgICAgLnBhbmVsIHtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiAwLjI1cmVtO1xuXG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLmxvYWRDb250IHtcbiAgICBwYWRkaW5nOiAxcmVtO1xuICB9XG4gIC5jb250ZW5ldXItaGVhZCB7XG4gICAgYmFja2dyb3VuZDojRkZGO2JvcmRlcjoxcHggc29saWQgI0NDQztcbiAgICBwYWRkaW5nOjFyZW07XG4gICAgbWFyZ2luLXRvcDoycmVtO1xuICAgIG1hcmdpbi1ib3R0b206MXJlbTtcbiAgfVxuICAuY29udGFpbmVyLWRvd24gIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gIH1cbn1cblxuI3NlbGVjdGV1ciB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgYm90dG9tOjA7bGVmdDowO3dpZHRoOjEwMHZ3O1xuICBiYWNrZ3JvdW5kOiRyZWQ7XG4gIHotaW5kZXg6IDI7XG4gIGhlaWdodDo0cmVtO1xuICAuaW5wdXQtZ3JvdXAtbGFiZWwge1xuICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgY29sb3I6JHdoaXRlO1xuICAgIGJvcmRlcjowO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtwYWRkaW5nOjByZW07fVxuICB9XG4gICNpZF9kYXRlIHtcbiAgICB3aWR0aDphdXRvO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHt3aWR0aDo2LjRyZW07fVxuICB9XG4gIC5pbnB1dC1ncm91cCB7XG4gICBtYXJnaW46IDAuNXJlbTtcbiAgfVxuICAuaW5wdXQtZ3JvdXAtYnV0dG9uIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB9XG4gIGEge1xuICAgIGNvbG9yOiR3aGl0ZTtcbiAgfVxuICAuZmxleCB7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBkaXNwbGF5OmZsZXhcbiAgfVxufVxuIiwiLmN1cnRhaW4ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgd2lkdGg6MTAwJTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGFsaWduLWNvbnRlbnQ6IHN0cmV0Y2g7XG4gIC8vYm94LXNoYWRvdzogMCAwIDMycHggcmdiYSgwLDAsMCwwLjIpIDtcbiAgYm9yZGVyOnRyYW5zcGFyZW50IDFweCBzb2xpZDtcbiAgei1pbmRleDoxMDtcbiAgPiAucGFuZWwge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRibGFjaztcbiAgICBoZWlnaHQ6NjB2aDtcbiAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgICB3aWR0aDoxMDAlO1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICNGRkY7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuNnMgZWFzZTtcbiAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB3aWR0aDtcbiAgICB3aWxsLWNoYW5nZTp3aWR0aDtcbiAgICAmLmJpZyB7XG4gICAgICB3aWR0aDoxNjYlO1xuICAgIH1cbiAgICA+IC5pbWdiZyB7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjpjZW50ZXI7XG4gICAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlO1xuICAgICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgbWluLWhlaWdodDoxMDAlO1xuICAgICAgbWluLXdpZHRoOjEwMCU7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgICAgei1pbmRleDoxMDtcbiAgICAgIG92ZXJmbG93OmhpZGRlbjtcbiAgICAgID4gaW1nIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgIHRvcDogNTAlO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICAgICAgbWluLWhlaWdodDogMTAwJTtcbiAgICAgICAgbWF4LXdpZHRoOiBub25lO1xuICAgICAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgICAgICB0cmFuc2l0aW9uOiBmaWx0ZXIgMC4ycyBsaW5lYXI7XG4gICAgICAgIGZpbHRlcjogYmx1cigwcHgpO1xuICAgICAgICBAbWVkaWEgI3skeGxhcmdlLXVwfSB7XG4gICAgICAgICAgbWluLWhlaWdodDogMTAwJTtcbiAgICAgICAgICBtaW4td2lkdGg6IDEwMCU7XG4gICAgICAgICAgbWF4LXdpZHRoOiBub25lO1xuICAgICAgICAgIG1heC1oZWlnaHQ6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgfVxuICAgICAgJjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6Jyc7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6bGluZWFyLWdyYWRpZW50KHJnYmEoMCwgMCwgMCwgMC4yKSwgcmdiYSgwLCAwLCAwLCAwLjQpKTtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB6LWluZGV4OjE7XG4gICAgICAgIGhlaWdodDoxMDAlO1xuICAgICAgICB3aWR0aDoxMDAlO1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlO1xuICAgICAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiBiYWNrZ3JvdW4taW1hZ2U7XG4gICAgICB9XG5cbiAgICB9XG5cbiAgICAgICAgaDIge1xuICAgICAgICAgIHotaW5kZXg6MjA7XG4gICAgICAgICAgdHJhbnNpdGlvbjogY29sb3IgMC4ycyBsaW5lYXI7XG4gICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICB3aWR0aDogMTBweDtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgaGVpZ2h0OiAxMHB4O1xuICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICAgICAgZm9udC1zaXplOiAyLjZyZW07XG4gICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICBmb250LXdlaWdodDogOTAwO1xuICAgICAgICAgIGNvbG9yOiByZ2JhKDI0MCwyNDAsMjQwLDAuOSk7XG4gICAgICAgICAgJi50ZXh0VmVydCB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpIHRyYW5zbGF0ZSgtNXB4LC01cHgpO1xuICAgICAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogNTAlIDUwJTt9XG4gICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLC01MCUpO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAmLmFuaW1hdGUge1xuICAgICAgJjpob3ZlciB7XG4gICAgICAgIHotaW5kZXg6MjA7XG4gICAgICAgIHdpZHRoOjEzNCU7XG4gICAgICAgICYuYmlnIHtcbiAgICAgICAgICB3aWR0aDoxODYlO1xuICAgICAgICB9XG4gICAgICAgIEBtZWRpYSAjeyR4bGFyZ2UtdXB9IHtcbiAgICAgICAgICB3aWR0aDoxMTclO1xuICAgICAgICAgICYuYmlnIHtcbiAgICAgICAgICAgIHdpZHRoOjE4NiU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgIGNvbnRlbnQ6Jyc7XG4gICAgICAgICAgYmFja2dyb3VuZDogcmdiYSgwLDAsMCwwLjMpO1xuICAgICAgICAgIGhlaWdodDoxMHB4O1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6MTAwJTtcbiAgICAgICAgICBmaWx0ZXI6Ymx1cigzcHgpO1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICB3aWR0aDoxMjAlO1xuICAgICAgICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgICAgICAgYm90dG9tOi0yMHB4O1xuICAgICAgICAgIGxlZnQ6LTEwJTtcblxuICAgICAgICB9XG4gICAgICAgIGgyIHtcblxuICAgICAgICAgIGNvbG9yOiByZ2JhKDI0MCwyNDAsMjQwLDAuOSk7XG4gICAgICAgIH1cbiAgICAgICAgPiAuaW1nYmcge1xuICAgICAgICAgIG9wYWNpdHk6MTtcbiAgICAgICAgICBmaWx0ZXI6IGdyYXlzY2FsZSg4MCUpO1xuICAgICAgICAgIGJvcmRlcjoycHggc29saWQgI0ZGRjtcbiAgICAgICAgICB0cmFuc2Zvcm06ICBzY2FsZSgxLjA4KTtcbiAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6Jyc7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOmxpbmVhci1ncmFkaWVudChyZ2JhKDMwLCAwLCAwLCAwLjgpLCByZ2JhKDAsIDAsIDAsIDAuNikpO1xuICAgICAgICAgIH1cbiAgICAgICAgICBAbWVkaWEgI3skeGxhcmdlLXVwfSB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06ICBzY2FsZSgxLjA0KTtcbiAgICAgICAgICB9XG4gICAgICAgICAgPiBpbWcge1xuXG4gICAgICAgICAgICBmaWx0ZXI6IGJsdXIoNHB4KTtcbiAgICAgICAgICB9XG5cblxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gICYudmVydGljYWxDdXJ0YWluIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuICAgICAgaGVpZ2h0OiA3NDBweCAhaW1wb3J0YW50O1xuICAgIH1cbiAgICA+IC5wYW5lbCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmxhY2s7XG4gICAgICBoZWlnaHQ6MTAwJTtcbiAgICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xuICAgICAgd2lkdGg6MTAwJTtcbiAgICAgIHJpZ2h0OiAwcHggc29saWQgI0ZGRjtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjRkZGO1xuICAgICAgYm9yZGVyLXJpZ2h0OjA7XG4gICAgfVxuICB9XG59XG5cblxuXG4vLyBjdXJ0YWluIGZvciB2aXNpdC12aXJ0dWVsbGVcblxuLmN1cnRhaW4udmlzaXRlLXZpdHVlbCB7XG5cbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCkge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG5cbiAgfVxuICBzdmcge1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG4gID4gLnBhbmVsIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaGlnaGxpZ2h0LWdyYXk7XG4gICAgaGVpZ2h0OmluaXRpYWw7XG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgIGJvcmRlcjowcHg7XG4gICAgfVxuICAgICYudmVydGljYWxDdXJ0YWluID4gLnBhbmVse1xuICAgICAgaGVpZ2h0OiBpbml0aWFsO2ZsZXgtZ3JvdzoxO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJsYWNrO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCkge1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICB9XG4gICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICBib3JkZXI6MHB4O1xuICAgICAgfVxuXG5cbiAgICAgICAgaDIge1xuICAgICAgICAgIGNvbG9yOiAjRkZGO1xuICAgICAgICB9XG5cbiAgICAgICYjdmlzaXQtbmF2aWdhdGlvbntcbiAgICAgICAgZmxleC1ncm93OiAwLjU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRoaWdobGlnaHQtZ3JheTtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuICAgICAgICAgICAgaGVpZ2h0Ojk2cHg7XG4gICAgICAgICAgZmxleC1ncm93OiBpbml0aWFsO1xuICAgICAgICB9XG5cbiAgICAgICAgLmRyb3Bkb3duLm1lbnUgPiBsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGEge1xuICAgICAgICAgIHBhZGRpbmctdG9wOiAwLjRyZW07XG4gICAgICAgICAgcGFkZGluZy1ib3R0b206IDAuNHJlbTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAuaW1nYmcge1xuICAgICAgb3BhY2l0eTogMC43O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJsYWNrO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgICAgJjphZnRlciB7XG4gICAgICAgIGRpc3BsYXk6bm9uZTtcbiAgICAgIH1cbiAgICB9XG4gICAgJi5iaWcge1xuICAgICAgd2lkdGg6MTAwJTtcblxuICAgICAgQG1lZGlhICN7JGxhcmdlLXVwfSB7XG4gICAgICAgIHdpZHRoOjEzMCU7fVxuXG4gICAgICBAbWVkaWEgI3skeGxhcmdlLXVwfSB7XG4gICAgICAgIHdpZHRoOjEzMCU7fVxuXG4gICAgICBAbWVkaWEgI3skeHhsYXJnZS11cH0ge1xuICAgICAgICB3aWR0aDoxMTAlO31cbiAgICB9XG4gICAgJi5jdXJ0YWluIHtcbiAgICAgIHdpZHRoOjEwMCU7XG5cbiAgICAgIEBtZWRpYSAjeyRsYXJnZS11cH0ge1xuICAgICAgICB3aWR0aDo3MCU7fVxuXG4gICAgICBAbWVkaWEgI3skeGxhcmdlLXVwfSB7XG4gICAgICAgIHdpZHRoOjcwJTt9XG5cbiAgICAgIEBtZWRpYSAjeyR4eGxhcmdlLXVwfSB7XG4gICAgICAgIHdpZHRoOjkwJTt9XG4gICAgfVxuICB9XG59XG5cbi8vI3Zpc2l0LW5hdmlnYXRpb25cblxuI3Zpc2l0LW5hdmlnYXRpb24gIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGhpZ2hsaWdodC1ncmF5O1xuICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgaDQge1xuICAgIGNvbG9yOiRyZWQ7XG4gICAgZm9udC13ZWlnaHQ6IDgwMDtcbiAgICAvL21hcmdpbjogMXJlbTtcbiAgfVxuICA+ZGl2IHtcbiAgICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgfVxufVxuXG4vL3RlYW0gcHJlc2VudGF0aW9uXG5cbi5wYW5lbC1pbmZvc3tcbiAgZm9udC13ZWlnaHQ6MjAwO1xuICBzdHJvbmcge1xuICAgIGZvbnQtd2VpZ2h0OjMwMDtcbiAgfVxuICAudGVhbS1jb250ZW50IHtcbiAgICBwYWRkaW5nOiAxcmVtO1xuICAgIGgyIHtcbiAgICAgIG1hcmdpbi10b3A6IDFyZW07XG4gICAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICAgIH1cbiAgICBoMyB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgIH1cbiAgICBoNSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwLjcycmVtO1xuICAgIH1cbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBib3JkZXI6MTBweCBzb2xpZCAkbGlnaHQtZ3JheTtcbiAgfVxufVxuXG5cbi5wcmVzZW50YXRpb24ge1xuICBwIHtjb2xvcjojNmI2YjZkO31cbiAgaDIge1xuICAgIGZvbnQtc2l6ZToyLjc1cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgcGFkZGluZy10b3A6MnJlbTtcbiAgICBwYWRkaW5nLWJvdHRvbToxLjRyZW07XG4gICAgYm9yZGVyLXRvcDoxMHB4IHNvbGlkICRtZWRpdW0tZ3JheTtcbiAgfVxuICBoNCB7XG4gICAgbWFyZ2luLWJvdHRvbToxcmVtXG4gIH1cbiAgaHIge1xuICAgIHdpZHRoOjUwJTtcbiAgICBtYXJnaW4tbGVmdDoyNSU7XG4gICAgYmFja2dyb3VuZDogJG1lZGl1bS1ncmF5O1xuICAgIGJvcmRlci1jb2xvcjokbWVkaXVtLWdyYXk7XG4gIH1cbiAgJisuY3VydGFpbiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGZsb2F0OmxlZnQ7XG4gICAgbWFyZ2luLXRvcDozcmVtO1xuICAgICY6YmVmb3JlIHtcbiAgICAgIHdpZHRoOjEwMCU7XG4gICAgICBjb250ZW50OicnO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOi0ycmVtO1xuICAgICAgZGlzcGxheTpibG9jaztcbiAgICAgIGJvcmRlci10b3A6MTBweCBzb2xpZCAkbWVkaXVtLWdyYXk7fVxuICB9XG59XG5cblxuXG4udmlzaXRlX2Zvb3RuYXYge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICBtYXJnaW46IDA7XG5cbiAgQG1lZGlhICN7JGxhcmdlLXVwfSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgfVxuICBsaSB7XG4gICAgd2lkdGg6MTAwJTtcbiAgICB0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7XG4gICAgZm9udC1zaXplOjEuNHJlbTtcblxuICAgIGEge1xuICAgICAgdGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlO1xuICAgICAgY29sb3I6JGJsYWNrO1xuICAgIH1cblxuICAgICYuYWN0aXZlIHtcbiAgICAgIGEge1xuICAgICAgICBjb2xvcjogJHJlZDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuXG4uc3ZnY29udGVudCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICBzdmcge1xuICAgIHBhdGgge1xuICAgICAgZmlsbC1vcGFjaXR5OiAwLjU7XG4gICAgICBzdHJva2Utb3BhY2l0eTogMC43O1xuICAgICAgc3Ryb2tlLXdpZHRoOiAycHg7XG4gICAgfVxuXG4gICAgYSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgICAmLmFjdGl2ZSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICNvdmVybGF5IHtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG5cbn1cblxuLmljb24tdmlzaXRtb3JlMSB7XG5AZXh0ZW5kIC5pY29uLXBsYW5cbn1cbi5pY29uLXZpc2l0bW9yZTIge1xuICBAZXh0ZW5kIC5pY29uLWNhbGVuZGFyXG5cbn1cbi5pY29uLXZpc2l0bW9yZTMge1xuICBAZXh0ZW5kIC5pY29uLW11c2V1bW1vcmVcblxufVxuXG4jdmlzaXQtZm9vdGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiAwIDEwMCU7XG4gIHRyYW5zZm9ybTogcm90YXRlKC05MGRlZykgdHJhbnNsYXRlKDAlLCAxMDAlKTtcbiAgYmFja2dyb3VuZDogIzAwMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwcHg7XG4gIHBhZGRpbmc6IDAgMC40cmVtIDtcblxuICBmb250LXNpemU6IDFyZW07XG59XG4uY3VydGFpbiA+IC5wYW5lbCBoMiAge1xuICBib3JkZXI6MHB4O1xuICBzcGFuLnRpdGxlcGFuZWwge1xuICAgIGZvbnQtc2l6ZTogMS4zcmVtO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIDEwMCUpO1xuICB9XG59XG5cbi5vcGVuLWV5ZWQtdmlzaXQ6YmVmb3Jle1xuICAgIGNvbnRlbnQ6IFwiXFxmMDZlXCI7XG4gICAgZm9udC1mYW1pbHk6IGljb21vb247XG59XG5cblxuLmNsb3NlLWV5ZWQtdmlzaXQ6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlxcZjA3MFwiO1xuICAgIGZvbnQtZmFtaWx5OiBpY29tb29uO1xufVxuIiwiLnJzdCB7XG4gIGgxIHtcbiAgICBAZXh0ZW5kIGgyO1xuICB9XG4gIGgyIHtcblxuICAgIEBleHRlbmQgaDM7XG4gIH1cbiAgaDMge1xuXG4gICAgQGV4dGVuZCBoNDtcbiAgfVxuICBoNCB7XG5cbiAgICBAZXh0ZW5kIGg1O1xuICB9XG4gIGEuZm4tYmFja3JlZiB7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgfVxuICAuZm9vdG5vdGUge1xuICAgIHRkIHtcbiAgICAgIHdpZHRoOjEwMCU7XG5cbiAgICAgIHBhZGRpbmc6MC4ycmVtO1xuICAgICYubGFiZWwge1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgICBwYWRkaW5nOjAuNnJlbTtcbiAgICB9XG4gICAgfVxuXG4gIH1cbn0iLCIjY29va2llLWxhdy1jb250YWluZXIge1xuICBiYWNrZ3JvdW5kOiAjNWI1YjViO1xuICB6LWluZGV4OiAzMDAwO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIGJvdHRvbTogMjBweDtcbiAgcmlnaHQ6IDIwcHg7XG4gIG1hcmdpbi1sZWZ0OiAyMHB4O1xuICBjb2xvcjogI2ZmZmZmZjtcbiAgcGFkZGluZzogMTNweDtcbiAgbWF4LXdpZHRoOiAzNzBweDtcbiAgLmJ1dHRvbiB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgfVxuICBwIHtcbiAgICBmb250LXNpemU6IC45cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gIH1cbn1cbiIsIi8vIEJvb3RzdHJhcCB2YXJpYWJsZXNcblxuJGdyYXk6ICM1NTU7XG4kYnJhbmQtcHJpbWFyeTogI2VjODA1NTtcbiR0YWJsZS1ib3JkZXItY29sb3I6ICNkZGQ7XG4kZ3JpZC1ndXR0ZXItd2lkdGg6IDMwcHg7XG5cbi8vIE1peGluc1xuXG5AbWl4aW4gY3Vyc29yR3JhYigpIHtcbiAgY3Vyc29yOiBtb3ZlOyAvKiBmYWxsYmFjayBpZiBncmFiIGN1cnNvciBpcyB1bnN1cHBvcnRlZCAqL1xuICBjdXJzb3I6IGdyYWI7XG4gIGN1cnNvcjogLW1vei1ncmFiO1xuICBjdXJzb3I6IC13ZWJraXQtZ3JhYjtcbn1cblxuQG1peGluIG5vVXNlclNlbGVjdCgpIHtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tcy11c2VyLXNlbGVjdDogbm9uZTtcbn1cblxuLy8gU3R5bGluZ1xuXG4jdGFibGUge1xuICAkcGFkZGluZzogNXB4O1xuICAkaGVhZGVyLWhlaWdodDogMzRweDtcbiAgJGRyb3Bkb3duLW1heC1oZWlnaHQ6IDMwMHB4O1xuICBoZWFkZXIge1xuICAgIEBpbmNsdWRlIG5vVXNlclNlbGVjdDtcbiAgICBtYXJnaW4tYm90dG9tOiAkZ3JpZC1ndXR0ZXItd2lkdGggLyAyO1xuICAgIC5jb3VudCwgLnNwaW5uZXIge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgaGVpZ2h0OiAkaGVhZGVyLWhlaWdodDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAkaGVhZGVyLWhlaWdodDtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgfVxuICAgIC5wYWdpbmF0aW9uIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICB9XG4gIH1cbiAgLmRyb3Bkb3duIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB9XG4gIC50YWJsZS1yZXNwb25zaXZlIHtcblxuICAgIGJvcmRlcjogMXB4IHNvbGlkICNDQ0M7XG4gICAgb3ZlcmZsb3c6IHNjcm9sbDtcbiAgICAvLyBGSVhNRTogVGhpcyBpcyBhIGNoZWFwIHdvcmthcm91bmQgdG8gdGhpcyBpc3N1ZTpcbiAgICAvLyAgICAgICAgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xMTAzN1xuICAgIG1pbi1oZWlnaHQ6ICRkcm9wZG93bi1tYXgtaGVpZ2h0ICogMjtcbiAgICB0YWJsZSB7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAkdGFibGUtYm9yZGVyLWNvbG9yO1xuICAgICAgdGhlYWQge1xuICAgICAgICBAaW5jbHVkZSBub1VzZXJTZWxlY3Q7XG4gICAgICAgIHRoIHtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgICAgICAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgICAgICAgICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICAgICAgICAgIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgICAgICAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xuICAgICAgICAgIC5mbGV4IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICAgICAgICAgICAgLmNvbHVtbi1uYW1lIHtcbiAgICAgICAgICAgICAgcGFkZGluZzogJHBhZGRpbmc7XG4gICAgICAgICAgICAgIGZsZXg6IDIgMTAwJTtcbiAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICAgICAgfiAuc29ydGFibGUsIH4gLmZpbHRlciB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICR0YWJsZS1ib3JkZXItY29sb3I7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5zb3J0YWJsZSwgLmZpbHRlciB7XG4gICAgICAgICAgICAgIGZsZXg6IDEgNTAlO1xuICAgICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgJi5kaXNhYmxlZCB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLnNvcnRhYmxlLmFjdGl2ZSwgLmZpbHRlci5hY3RpdmUgLmZpbHRlci1idXR0b24ge1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkYnJhbmQtcHJpbWFyeTtcbiAgICAgICAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLnNvcnRhYmxlIHtcbiAgICAgICAgICAgICAgb3JkZXI6IDE7XG4gICAgICAgICAgICAgIHBhZGRpbmc6ICRwYWRkaW5nO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmZpbHRlciB7XG4gICAgICAgICAgICAgIG9yZGVyOiAyO1xuICAgICAgICAgICAgICAuZmlsdGVyLWJ1dHRvbiB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAkcGFkZGluZztcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAuZHJvcGRvd24tbWVudSB7XG4gICAgICAgICAgICAgICAgbWF4LWhlaWdodDogJGRyb3Bkb3duLW1heC1oZWlnaHQ7XG4gICAgICAgICAgICAgICAgb3ZlcmZsb3cteTogYXV0bztcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgdGJvZHkge1xuICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgICYuZ3JhYmJhYmxlIHtcbiAgICAgICAgICBAaW5jbHVkZSBjdXJzb3JHcmFiO1xuICAgICAgICAgIEBpbmNsdWRlIG5vVXNlclNlbGVjdDtcbiAgICAgICAgICAmLmdyYWJiaW5nIHtcbiAgICAgICAgICAgIGN1cnNvcjogbW92ZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgdGQge1xuICAgICAgICAgIHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQ7XG4gICAgICAgICAgLW1vei1oeXBoZW5zOiBhdXRvO1xuICAgICAgICAgIGh5cGhlbnM6IGF1dG87XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuXG4gIC5kcm9wZG93biB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB9XG5cbiAgLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgKm1hcmdpbi1ib3R0b206IC0zcHg7XG4gIH1cblxuICAuZHJvcGRvd24tdG9nZ2xlOmFjdGl2ZSxcbiAgLm9wZW4gLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgb3V0bGluZTogMDtcbiAgfVxuXG4gIC5jYXJldCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgIGJvcmRlci10b3A6IDRweCBzb2xpZCAjMDAwMDAwO1xuICAgIGJvcmRlci1yaWdodDogNHB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1sZWZ0OiA0cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgY29udGVudDogXCJcIjtcbiAgfVxuXG4gIC5kcm9wZG93biAuY2FyZXQge1xuICAgIG1hcmdpbi10b3A6IDhweDtcbiAgICBtYXJnaW4tbGVmdDogMnB4O1xuICB9XG5cbiAgLmRyb3Bkb3duLW1lbnUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDEwMCU7XG4gICAgbGVmdDogMDtcbiAgICB6LWluZGV4OiAxMDAwO1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgbWluLXdpZHRoOiAxNjBweDtcbiAgICBwYWRkaW5nOiA1cHggMDtcbiAgICBtYXJnaW46IDJweCAwIDA7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNjY2M7XG4gICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjIpO1xuICAgICpib3JkZXItcmlnaHQtd2lkdGg6IDJweDtcbiAgICAqYm9yZGVyLWJvdHRvbS13aWR0aDogMnB4O1xuICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogNnB4O1xuICAgIC1tb3otYm9yZGVyLXJhZGl1czogNnB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDZweDtcbiAgICAtd2Via2l0LWJveC1zaGFkb3c6IDAgNXB4IDEwcHggcmdiYSgwLCAwLCAwLCAwLjIpO1xuICAgIC1tb3otYm94LXNoYWRvdzogMCA1cHggMTBweCByZ2JhKDAsIDAsIDAsIDAuMik7XG4gICAgYm94LXNoYWRvdzogMCA1cHggMTBweCByZ2JhKDAsIDAsIDAsIDAuMik7XG4gICAgLXdlYmtpdC1iYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICAgIC1tb3otYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nO1xuICAgIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIH1cblxuICAuZHJvcGRvd24tbWVudS5wdWxsLXJpZ2h0IHtcbiAgICByaWdodDogMDtcbiAgICBsZWZ0OiBhdXRvO1xuICB9XG5cbiAgLmRyb3Bkb3duLW1lbnUgLmRpdmlkZXIge1xuICAgICp3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDFweDtcbiAgICBtYXJnaW46IDlweCAxcHg7XG4gICAgKm1hcmdpbjogLTVweCAwIDVweDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNlNWU1ZTU7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNmZmZmZmY7XG4gIH1cblxuICAuZHJvcGRvd24tbWVudSA+IGxpID4gYSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZzogM3B4IDIwcHg7XG4gICAgY2xlYXI6IGJvdGg7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBsaW5lLWhlaWdodDogMjBweDtcbiAgICBjb2xvcjogIzMzMzMzMztcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB9XG5cbiAgLmRyb3Bkb3duLW1lbnUgPiBsaSA+IGE6aG92ZXIsXG4gIC5kcm9wZG93bi1tZW51ID4gbGkgPiBhOmZvY3VzLFxuICAuZHJvcGRvd24tc3VibWVudTpob3ZlciA+IGEsXG4gIC5kcm9wZG93bi1zdWJtZW51OmZvY3VzID4gYSB7XG4gICAgY29sb3I6ICNmZmZmZmY7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDgxYzI7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogLW1vei1saW5lYXItZ3JhZGllbnQodG9wLCAjMDA4OGNjLCAjMDA3N2IzKTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWdyYWRpZW50KGxpbmVhciwgMCAwLCAwIDEwMCUsIGZyb20oIzAwODhjYyksIHRvKCMwMDc3YjMpKTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCh0b3AsICMwMDg4Y2MsICMwMDc3YjMpO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudCh0b3AsICMwMDg4Y2MsICMwMDc3YjMpO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICMwMDg4Y2MsICMwMDc3YjMpO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcbiAgICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChzdGFydENvbG9yc3RyPScjZmYwMDg4Y2MnLCBlbmRDb2xvcnN0cj0nI2ZmMDA3N2IzJywgR3JhZGllbnRUeXBlPTApO1xuICB9XG5cbiAgLmRyb3Bkb3duLW1lbnUgPiAuYWN0aXZlID4gYSxcbiAgLmRyb3Bkb3duLW1lbnUgPiAuYWN0aXZlID4gYTpob3ZlcixcbiAgLmRyb3Bkb3duLW1lbnUgPiAuYWN0aXZlID4gYTpmb2N1cyB7XG4gICAgY29sb3I6ICNmZmZmZmY7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDgxYzI7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogLW1vei1saW5lYXItZ3JhZGllbnQodG9wLCAjMDA4OGNjLCAjMDA3N2IzKTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWdyYWRpZW50KGxpbmVhciwgMCAwLCAwIDEwMCUsIGZyb20oIzAwODhjYyksIHRvKCMwMDc3YjMpKTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCh0b3AsICMwMDg4Y2MsICMwMDc3YjMpO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudCh0b3AsICMwMDg4Y2MsICMwMDc3YjMpO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICMwMDg4Y2MsICMwMDc3YjMpO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcbiAgICBvdXRsaW5lOiAwO1xuICAgIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KHN0YXJ0Q29sb3JzdHI9JyNmZjAwODhjYycsIGVuZENvbG9yc3RyPScjZmYwMDc3YjMnLCBHcmFkaWVudFR5cGU9MCk7XG4gIH1cblxuICAuZHJvcGRvd24tbWVudSA+IC5kaXNhYmxlZCA+IGEsXG4gIC5kcm9wZG93bi1tZW51ID4gLmRpc2FibGVkID4gYTpob3ZlcixcbiAgLmRyb3Bkb3duLW1lbnUgPiAuZGlzYWJsZWQgPiBhOmZvY3VzIHtcbiAgICBjb2xvcjogIzk5OTk5OTtcbiAgfVxuXG4gIC5kcm9wZG93bi1tZW51ID4gLmRpc2FibGVkID4gYTpob3ZlcixcbiAgLmRyb3Bkb3duLW1lbnUgPiAuZGlzYWJsZWQgPiBhOmZvY3VzIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgY3Vyc29yOiBkZWZhdWx0O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gICAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoZW5hYmxlZD1mYWxzZSk7XG4gIH1cblxuICAub3BlbiB7XG4gICAgKnotaW5kZXg6IDEwMDA7XG4gIH1cblxuICAub3BlbiA+IC5kcm9wZG93bi1tZW51IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuXG4gIC5kcm9wZG93bi1iYWNrZHJvcCB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICB6LWluZGV4OiA5OTA7XG4gIH1cblxufVxuXG51bC5wYWdpbmF0aW9uIGxpLmRpc2FibGVkLm5hdmlnYXRpb24ge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG5hcnRpY2xlLnRhYmxlYXUtc3RhdGlzdGljIHtcbiAgaDE6Zmlyc3QtY2hpbGQge1xuICAgIG1hcmdpbi10b3A6IDVyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgICBmb250LXNpemU6IDNyZW07XG4gIH1cbn1cblxuLnRvb2x0aXAge1xuXG59XG4iLCIuaGVhZGVyQ29udGFpbmVyIHtcbiAgYmFja2dyb3VuZDogJGJsYWNrO1xuICAjaGVhZGVyIHtcbiAgICBtYXJnaW46YXV0bztcbiAgICBtYXgtd2lkdGg6JGxhcmdlci1yb3c7XG4gIH1cblxufSIsIiN0aW1lU2Nyb2xsIHtcbiAgd2lkdGg6IDQycHg7XG4gIEBtZWRpYSAjeyRsYXJnZS11cH0ge1xuICAgIHdpZHRoOiA4MnB4O1xuICB9XG4gIHBvc2l0aW9uOiBzdGlja3k7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgYmFja2dyb3VuZDogJGJsYWNrO1xuICBwYWRkaW5nOiAwO1xufVxuXG4jdGltZVNjcm9sbGJhcntcbiAgaGVpZ2h0OiBjYWxjKDEwMHZoKTtcbiAgd2lkdGg6IDEwMCU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO2xlZnQ6MCU7bWFyZ2luLXRvcDowcmVtO1xufVxuXG4jdG90U2Nyb2xsYmFye1xuICBoZWlnaHQ6IDEwMCU7XG4gIHdpZHRoOiAycHg7XG4gIHRvcDotMDAlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJhY2tncm91bmQ6ICRsaWdodC1ncmF5O1xuICB6LWluZGV4OiAtMTtcbiAgcG9zaXRpb246IGFic29sdXRlO2xlZnQ6NTAlO3RyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsMCk7XG59XG5cblxuXG4vLy8vXG4kYmFja2dyb3VuZDogJGJsYWNrO1xuJHN1YnRsZTogJGJsYWNrO1xuJGgxOiAjREI1QjMzO1xuJGgyOiAjNDU5OEI1O1xuJGJvZHk6ICM2QjcwNzI7XG4kZGFyazogIzIyMjtcblxuI2RvdFNjcm9sbGJhciB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjUwcHgpIHsgZGlzcGxheTogYmxvY2s7IH1cbiAgbWFyZ2luOiAwZW0gMDtcbiAgaGVpZ2h0OjEwMCU7XG4gIC5zaGltIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG5cbiAgLmhvbGRlciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGZvbnQtc2l6ZTogODUlO1xuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzUwcHgpIHsgZm9udC1zaXplOiA5MCU7IH1cbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwMHB4KSB7IGZvbnQtc2l6ZTogOTUlOyB9XG4gICAgcGFkZGluZzogMGVtIDAgMCAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuXG4gICAgLmJhciB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBib3R0b206IDA7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICB3aWR0aDogMnB4O1xuICAgICAgbGVmdDogNTAlO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHN1YnRsZTtcblxuICAgICAgLmluZGljYXRvciB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRyZWQ7XG4gICAgICAgIHdpZHRoOiAycHg7XG4gICAgICB9XG5cbiAgICB9XG5cbiAgICAubGFiZWxzIHtcbiAgICAgIC8vbWF4LXdpZHRoOiAxMjgwcHg7XG4gICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIGhlaWdodDoxMDAlO1xuICAgICAgcGFkZGluZzogMCAwZW07XG4gICAgICBAbWVkaWEgI3skbGFyZ2UtdXB9IHtcbiAgICAgICAgcGFkZGluZzogMCAyZW07XG4gICAgICB9XG4gICAgICBpIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgd2lkdGg6MTAwJTtcbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICB6LWluZGV4OiAyO1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICBib3R0b206IDUwJTtcbiAgICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgd2lkdGg6IDAuNzVyZW07XG4gICAgICAgICAgaGVpZ2h0OiAwLjc1cmVtO1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtZ3JheTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSkgdHJhbnNsYXRlWSg1MCUpO1xuICAgICAgICAgIHRyYW5zaXRpb246XG4gICAgICAgICAgICAgICAgICBib3JkZXItY29sb3IgMTAwbXMgZWFzZS1pbixcbiAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3IgMTUwbXMgZWFzZS1pbjtcbiAgICAgICAgfVxuXG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIGNvbnRlbnQ6IGF0dHIoZGF0YS1sYWJlbCk7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgIHJpZ2h0OjByZW07XG4gICAgICAgICAgcGFkZGluZzogMC4zNzVyZW07XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwtNTAlKSA7XG4gICAgICAgICAgZm9udC1mYW1pbHk6ICdJbnRlcic7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgIGJhY2tncm91bmQ6ICRibGFjaztcbiAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6MDtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiAwLjVyZW07XG4gICAgICAgICAgdHJhbnNpdGlvbjpcbiAgICAgICAgICAgICAgICAgIGNvbG9yIDE1MG1zIGVhc2UtaW4sXG4gICAgICAgICAgICAgICAgICBvcGFjaXR5IDE1MG1zIGVhc2UtaW4sXG4gICAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0IDEwMG1zIGVhc2Utb3V0O1xuICAgICAgICB9XG5cbiAgICAgICAgJjpob3ZlciwgJjpmb2N1cyB7XG4gICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRyZWQ7XG4gICAgICAgICAgfVxuICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6MmVtO1xuICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLnJlYWQge1xuICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcmVkO1xuICAgICAgICAgIH1cbiAgICAgICAgICAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWdodC1ncmF5O1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYucmVhZGluZyB7XG4gICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJHJlZDtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6MmVtO1xuICAgICAgICAgIH1cbiAgICAgICAgICAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDoyZW07XG4gICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG5cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cblxuICAmLmZpeGVkIHtcblxuICAgIC5ob2xkZXIge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIHdpZHRoOiA0MnB4O1xuICAgICAgQG1lZGlhICN7JGxhcmdlLXVwfSB7XG4gICAgICAgIHdpZHRoOiA4MnB4O1xuICAgICAgfVxuICAgICAgei1pbmRleDogMTtcbiAgICB9XG5cbiAgICAuc2hpbSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG5cbiAgfVxuXG59IiwiXG5AaW1wb3J0ICdjb21wb25lbnRzL2V4cG8vaGVhZGVyJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvZXhwby9kb3RuYXYnO1xuXG4udW5wYWRkZWQge1xuICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG59XG4ucm93LWxhcmdlciB7XG4gIG1heC13aWR0aDogJGxhcmdlci1yb3c7XG59XG4ucGFkZGluZzEge1xuICBwYWRkaW5nOiAxcmVtO1xufVxuXG4udi1ib3R0b20tbGFyZ2Uge1xuICBwYWRkaW5nLWJvdHRvbTogNi41cmVtO1xufVxuLmV4cG9fY29udGVudCB7XG4gIGJhY2tncm91bmQ6ICRleHBvX3doaXRlO1xuICAmLmJsYWNrY29udGVudCB7XG4gICAgYmFja2dyb3VuZDogJGJsYWNrO1xuICB9XG4gIGhlYWRlciB7XG4gICAgYmFja2dyb3VuZDogJGJsYWNrO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIEBtZWRpYSAjeyRtZWRpdW0tdXB9IHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgICAudGl0bGUge1xuICAgICAgZGlzcGxheTogZmxleDthbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMHJlbTtcbiAgICAgIG1hcmdpbi10b3A6IDByZW07XG5cbiAgICAgIEBtZWRpYSAjeyRsYXJnZS11cH0ge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwcmVtO1xuICAgICAgICBtYXJnaW4tdG9wOiAwcmVtO1xuICAgICAgfVxuICAgICAgJi51bmRlcmxpbmUge1xuICAgICAgICBib3JkZXItYm90dG9tOjJweCAkZGFyay1ncmF5MiBzb2xpZDtcbiAgICAgIH1cbiAgICAgICoge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICBmb250LXNpemU6IDAuOHJlbTtcbiAgICAgICAgQG1lZGlhICN7JG1lZGl1bS1vbmx5fSB7XG4gICAgICAgICAgZm9udC1zaXplOiAwLjhyZW07XG4gICAgICAgIH1cbiAgICAgICAgQG1lZGlhICN7JGxhcmdlLW9ubHl9IHtcbiAgICAgICAgICBmb250LXNpemU6IDEuM3JlbTtcbiAgICAgICAgfVxuICAgICAgICBAbWVkaWEgI3skeGxhcmdlLXVwfSB7XG4gICAgICAgICAgZm9udC1zaXplOiAxLjVyZW07XG5cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgW2NsYXNzKj1cIiBpY29uLVwiXSB7XG4gICAgICAgIG1hcmdpbjowIDAuMjVyZW07XG4gICAgICAgIGZvbnQtc2l6ZTogMS40cmVtO1xuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgZm9udC1zaXplOiAxLjRyZW07XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgaDEge1xuICAgICAgZm9udC1zaXplOiAyLjI1cmVtO1xuICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICB9XG4gICAgaDMge1xuICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICB9XG4gIH1cbn1cbi5ibG9jayB7XG4gICYuYmxhY2sge1xuICAgIGJhY2tncm91bmQ6ICRibGFjaztcbiAgICAqIHtcbiAgICAgIGNvbG9yOiR3aGl0ZTtcbiAgICB9XG4gIH1cbiAgJi5ncmF5IHtcbiAgICBiYWNrZ3JvdW5kOiBkYXJrZW4oJGdyYXksIDIwJSk7XG4gICAgKiB7XG4gICAgICBjb2xvcjokd2hpdGU7XG4gICAgfVxuICB9XG4gICYud2hpdGUge1xuICAgIGJhY2tncm91bmQ6ICRoaWdobGlnaHQtZ3JheTI7XG4gICAgKiB7XG4gICAgICBjb2xvcjokYmxhY2s7XG4gICAgfVxuICB9XG4gICYud2hpdGVyIHtcbiAgICBiYWNrZ3JvdW5kOiAkZXhwb193aGl0ZTtcbiAgICAqIHtcbiAgICAgIGNvbG9yOiRibGFjaztcbiAgICB9XG4gIH1cbn1cblxuLmNvbnRlbnQtYm94IHtcbiAgJi5ibGFjayB7XG4gICAgYmFja2dyb3VuZDogJGJsYWNrO1xuICAgIGEge1xuICAgICAgY29sb3I6JHJlZDtcbiAgICB9XG4gIH1cbn1cbi8vL2Zvb3RlclxuLmV4cG9fYm9keSB7XG4gIGZvb3RlciB7XG4gICAgbWFyZ2luOiAwO1xuICB9XG4gIC5oZWFkZXJDb250YWluZXIge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi9zdGF0aWMvaW1hZ2VzL3RoZW1lL2Jhbi1leHBvLnBuZ1wiKTtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciByaWdodDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gICAgI2hlYWRlci5pbnRlcm4ge1xuICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgfVxuICAgIC50b3AtYmFyIHtcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIH1cbiAgfVxufVxuXG4jY29udGVudGV4cG9fY29udGFpbmVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6IGF1dG87XG4gIG1hcmdpbi10b3A6IC02cmVtO1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIEBtZWRpYSAjeyRsYXJnZS11cH0ge1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICB9XG59XG4uZXhwb19jb250ZW50IHtcbiAgYXNpZGUsbWFpbiB7XG4gICAgcGFkZGluZy10b3A6IDIuNXJlbTtcbiAgfVxuICBhc2lkZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDowO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgQG1lZGlhICN7JGxhcmdlLXVwfSB7XG4gICAgICBwb3NpdGlvbjogc3RpY2t5O1xuICAgIH1cbiAgfVxufVxuXG4uZ29iYWNrc2lkZSB7XG4gIHBvc2l0aW9uOiBzdGlja3k7XG4gIGRpc3BsYXk6YmxvY2s7XG4gIGhlaWdodDogOTB2aDtcbiAgPiBkaXYgIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA1MCU7XG4gICAgbGVmdDo1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwtNTAlKSByb3RhdGUoLTkwZGVnKTtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7XG4gICAgZm9udC1zaXplOiAxLjVyZW07XG4gICAgZm9udC1mYW1pbHk6ICdlcGlsb2d1ZSc7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB9XG59XG4jbmF2YmFyLXRoZW1hdGljcy1sZWZ0ICB7XG4gIHBvc2l0aW9uOiBzdGlja3k7XG4gIHRvcDogMDtcbiAgdWwge1xuICAgIGJhY2tncm91bmQ6ICRibGFjaztcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgbWFyZ2luOiAwO1xuICAgIGJvcmRlcjoycHggJGJsYWNrIHNvbGlkO1xuICAgIC8vbWFyZ2luLWJvdHRvbTogMC41ZW07XG4gICAgbGl7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYm9yZGVyLWJvdHRvbToycHggc29saWQgJGJsYWNrO1xuICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICAgIH1cbiAgICB9IGEge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOjEwMCU7XG4gICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICBwYWRkaW5nOiAwLjVyZW07XG4gICAgZm9udC1mYW1pbHk6ICd2YXJ0YSc7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICBsaW5lLWhlaWdodDogMXJlbTtcbiAgICBjb2xvcjokYmxhY2s7XG4gICAgJjpob3ZlciB7XG4gICAgICBjb2xvcjogJHJlZDtcbiAgICB9XG4gICAgfVxuICB9XG59XG5cbiNpdGVtcy1leHBvICwjaXRlbXMtdGhlbXN7XG4gIGZsb2F0OiBub25lO1xuICB3aWR0aDo5NSU7XG4gIEBtZWRpYSAjeyR4bGFyZ2UtdXB9IHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgd2lkdGg6OTAlO1xuICB9XG4gICYubGlzdC1jaGFwIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBjbGVhcjogYm90aDtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBwYWRkaW5nLWJvdHRvbTo1cmVtIDtcbiAgfVxuICAuZ3JpZHNpemVyIHtcbiAgICB3aWR0aDogY2FsYygxMDAlIC8gMik7XG4gICAgQG1lZGlhICN7JGxhcmdlLXVwfSB7XG4gICAgICB3aWR0aDogY2FsYygxMDAlIC8gMyk7XG4gICAgfVxuICAgIEBtZWRpYSAjeyR4bGFyZ2UtdXB9IHtcbiAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLyA0KTtcbiAgICB9XG4gIH1cbn1cblxuI2l0ZW1zLWV4cG8ge1xuICB3aWR0aDo5MCU7XG4gIG1hcmdpbjowJTtcbiAgQG1lZGlhICN7JHhsYXJnZS11cH0ge1xuICAgIGZsb2F0OiByaWdodDtcbiAgICB3aWR0aDogOTAlO1xuICAgIG1hcmdpbjphdXRvO1xuICB9XG59XG4jaXRlbXMtdGhlbXMge1xuICB3aWR0aDogMTAwJTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0b3A6MHJlbTtcbiAgLmNhcmQtZXhwbyBmaWdjYXB0aW9uIGEge1xuICAgIGNvbG9yOiRibGFja1xuICB9XG59XG4uaW5FeHBvIHtcbiAgZm9udC1zaXplOiA2NiU7XG4gIGNvbG9yOiBibGFjayAhaW1wb3J0YW50O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGNsZWFyOiBib3RoO1xuICAqIHtcbiAgICBjb2xvcjogYmxhY2sgIWltcG9ydGFudDtcbiAgfVxuICBmbG9hdDogbGVmdDtcbn1cbi5hcnRpY2xlZ290byB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tdG9wOjRyZW07XG4gIGZsb2F0OiBsZWZ0O1xuICAvLy9cbiAgd2lkdGg6IDEwMCU7XG4gIC8vXG4gIC8vJjpob3ZlciB7XG4gIC8vICAuY2FyZC1leHBvLmJpZ2NhcmQge1xuICAvLyAgICAuaW5mby1leHBvc2l0aW9uLXJpZ2h0LWRvd24ge1xuICAvLyAgICAgIHRvcDowO1xuICAvLyAgICB9XG4gIC8vICB9XG4gIC8vfVxuXG4gIGgxIHtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycyA7XG4gICAgY29sb3I6JHdoaXRlICFpbXBvcnRhbnQ7XG4gICAgdGV4dC1zaGFkb3c6IDAgMCAwcHggcmdiYSgwLDAsMCwwLjUpO1xuICB9XG4gICY6aG92ZXIge1xuICAgIGgxIHtcbiAgICAgIHRyYW5zaXRpb246IGFsbCAwLjJzIDtcbiAgICAgIGNvbG9yOiRyZWQgIWltcG9ydGFudDtcbiAgICAgIHRleHQtc2hhZG93OiAwIDAgNDBweCAgcmdiYSgwLDAsMCwxKSwwIDAgNHB4ICByZ2JhKDAsMCwwLDEpO1xuICAgIH1cbiAgfVxuICBAbWVkaWEgI3skc21hbGwtb25seX0ge1xuICAgIC50aHVtYiB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBoZWlnaHQ6IDMwdnc7XG4gICAgICBtaW4taGVpZ2h0OiAxMjBweDtcbiAgICAgIG1heC1oZWlnaHQ6IDE2MHB4O1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBpbWcge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIG1pbi13aWR0aDogMTAwJTtcbiAgICAgICAgbWluLWhlaWdodDogMTAwJTtcbiAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICB0b3A6IDUwJSA7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsLTUwJSk7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBtZWRpYSAjeyRtZWRpdW0tb25seX0ge1xuICAgIC50aHVtYiB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBoZWlnaHQ6IDIwdnc7XG4gICAgICBtYXgtaGVpZ2h0OiAzMjBweDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaW1nIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBtaW4td2lkdGg6IDEwMCU7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDEwMCU7XG4gICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgdG9wOiA1MCUgO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLC01MCUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuLmxpc3RleHBvcyB7XG4gIHBhZGRpbmctYm90dG9tOjRyZW07ZmxvYXQ6IGxlZnQ7d2lkdGg6IDEwMCU7XG59XG4uY2FyZC1leHBvIHtcbiAgJjpob3ZlciB7XG4gICAgY29sb3I6JHJlZCAhaW1wb3J0YW50OztcbiAgICBmaWdjYXB0aW9uIHtcbiAgICAgIGNvbG9yOiRyZWQgIWltcG9ydGFudDs7XG4gICAgICBhIHtcbiAgICAgICAgY29sb3I6ICRyZWQgIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgd2lkdGg6IGNhbGMoMTAwJSAgLyAyIC0gMTZweCk7XG4gIGZvbnQtZmFtaWx5OiBcIlZhcnRhXCI7XG4gIHBhZGRpbmctYm90dG9tOjFyZW07XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgQG1lZGlhICN7JGxhcmdlLXVwfSB7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAvIDMgLSAxNnB4KTtcbiAgfVxuICBAbWVkaWEgI3skeGxhcmdlLXVwfSB7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAvIDQgLSAxNnB4KTtcbiAgfVxuXG4gICYuYmlnY2FyZCB7XG4gICAgd2lkdGg6MTAwJTtcbiAgICAuaW5mby1leHBvc2l0aW9uLXJpZ2h0LWRvd24ge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuXG4gICAgICAuaW5mb2V4cG8ge1xuICAgICAgICBtYXJnaW46IDNyZW07XG4gICAgICAgIG1heC1oZWlnaHQ6IGNhbGMoMTAwJSAtIDNyZW0pO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHAge1xuICAgICAgICAgIHRleHQtYWxpZ246IGp1c3RpZnk7XG4gICAgICAgIH1cblxuICAgICAgICBAbWVkaWEgI3skc21hbGwtb25seX0ge1xuICAgICAgICBtYXJnaW46IDFyZW07XG4gICAgICAgIG1heC1oZWlnaHQ6IGNhbGMoMTAwJSAtIDNyZW0pO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHNjcm9sbC1iZWhhdmlvcjogc21vb3RoO1xuICAgICAgICBvdmVyZmxvdy15OiBzY3JvbGw7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsMXJlbSk7XG4gICAgICAgIH1cbiAgICAgICAgQG1lZGlhICN7JG1lZGl1bS1vbmx5fSB7XG4gICAgICAgIG1hcmdpbjogMXJlbTtcbiAgICAgICAgbWF4LWhlaWdodDogY2FsYygxMDAlIC0gM3JlbSk7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgc2Nyb2xsLWJlaGF2aW9yOiBzbW9vdGg7XG4gICAgICAgIG92ZXJmbG93LXk6IHNjcm9sbDtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwxcmVtKTtcbiAgICAgICAgfVxuICAgICAgICBAbWVkaWEgI3skbWVkaXVtLXVwfSB7XG5cbiAgICAgICAgICBwIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMC45NXJlbTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjJlbTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgQG1lZGlhICN7JGxhcmdlLXVwfSB7XG4gICAgICAgICAgcCB7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuMXJlbTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjI1ZW07XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIEBtZWRpYSAjeyR4bGFyZ2UtdXB9IHtcbiAgICAgICAgICBwIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4zcmVtO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMjVlbTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLnZpZC1leHBvIHtcbiAgICAgIGJhY2tncm91bmQ6ICRibGFjaztcbiAgICAgIGNvbG9yOiR3aGl0ZTtcbiAgICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgID4gKiB7XG4gICAgICAgIGNvbG9yOiR3aGl0ZTtcbiAgICAgICAgZm9udC1mYW1pbHk6IFwiaW50ZXJcIjtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgIH1cbiAgICAgICYub24tYmxhY2sge1xuXG4gICAgICAgID4gKiAsPiAqICp7XG4gICAgICAgICAgY29sb3I6JHdoaXRlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIGZpZ2NhcHRpb24ge1xuICAgICAgYm90dG9tOmF1dG87XG4gICAgICB0b3A6NTAlO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwtNTAlKTtcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgaDEge1xuICAgICAgICBmb250LXNpemU6IDEuNjI1cmVtO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMTtcbiAgICAgICAgbWFyZ2luLXRvcDogMS4zNzVyZW07XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwLjc1cmVtO1xuICAgICAgICBAbWVkaWEgI3skbWVkaXVtLXVwfSB7XG4gICAgICAgICAgZm9udC1zaXplOiAycmVtO1xuICAgICAgICB9XG4gICAgICAgIEBtZWRpYSAjeyRsYXJnZS11cH0ge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMi43NXJlbTtcbiAgICAgICAgfVxuICAgICAgICBAbWVkaWEgI3skeGxhcmdlLXVwfSB7XG4gICAgICAgICAgZm9udC1zaXplOiAzLjRyZW07XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLmluZm8tZXhwb3NpdGlvbi1yaWdodC1kb3duIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMTAwJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgYmFja2dyb3VuZDogJGhpZ2hsaWdodC1ncmF5MjtcbiAgICAgIGNvbG9yOiRibGFjaztcbiAgICAgIHRyYW5zaXRpb246IGFsbCAwLjVzIDtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIH1cbiAgICAudGh1bWIge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgaW1nIHtcbiAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICB9XG4gICAgICAmOmFmdGVyIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6MDtsZWZ0OjA7XG4gICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMCwwLDAsMC4zOCk7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICB9XG4gICAgfVxuICAgIC5pbmZvLWV4cG9zaXRpb24ge1xuICAgICAgcGFkZGluZzogMC44NzVyZW0gMCAxLjhyZW07Zm9udC1mYW1pbHk6ICdpbnRlcic7XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGRhcmstZ3JheTI7XG4gICAgICAuYXV0aC1leHBvIHtcbiAgICAgICAgZm9udC1zaXplOjAuODc1cmVtO1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcblxuICAgICAgICBAbWVkaWEgI3skbWVkaXVtLXVwfSB7XG4gICAgICAgICAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLmRhdGUtZXhwbyAsLmRhdGUtZXhwbyAqe1xuICAgICAgICBmb250LXNpemU6MC44NzVyZW07XG4gICAgICAgIGNvbG9yOiAka2FzaS1ncmF5ICFpbXBvcnRhbnQ7XG4gICAgICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICBmb250LXdlaWdodDo1MDA7XG4gICAgICAgIEBtZWRpYSAjeyRtZWRpdW0tdXB9IHtcbiAgICAgICAgICBmb250LXNpemU6IDAuNzVyZW07XG4gICAgICAgIH1cbiAgICAgICAgc3BhbiB7d2hpdGUtc3BhY2U6IG5vd3JhcH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgJi5zbWFsbGNhcmQge1xuICAgIGZpZ2NhcHRpb24ge1xuICAgICAgd2lkdGggOiBjYWxjKDEwMCUgLSAxLjEyNXJlbSk7Ym94LXNoYWRvdzogLTRweCA2cHggcmdiYSgwLDAsMCwwLjQpO1xuICAgIH1cbiAgICAuaW5mby1leHBvc2l0aW9uIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxLjVyZW07XG4gICAgICAuYXV0aC1leHBvIHtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgZm9udC1zaXplOiAwLjc1cmVtO31cbiAgICB9XG4gIH1cbiAgZmlndXJlIHtcbiAgICBwYWRkaW5nOiAwO21hcmdpbjogMDtwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBpbWd7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGJvcmRlcjoxcHggc29saWQgcmdiYSgkd2hpdGUsMC45KTtcbiAgICB9XG4gIH1cbiAgZmlnY2FwdGlvbiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbToxcmVtO1xuICAgIGJhY2tncm91bmQ6ICRleHBvX3doaXRlO1xuICAgIGZvbnQtZmFtaWx5OiBcIkludGVyXCI7XG4gICAgZm9udC13ZWlnaHQ6IDgwMDtcbiAgICBjb2xvcjogJGJsYWNrO1xuICAgIHBhZGRpbmc6IDAuMTI1cmVtO1xuICAgIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgICBAbWVkaWEgI3skbWVkaXVtLXVwfSB7XG4gICAgICBmb250LXNpemU6IDAuODI1cmVtO1xuICAgIH1cbiAgICBhIHtcbiAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgfVxuICB9XG5cbiAgLnZpZC1leHBvIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOjA7XG4gICAgbGVmdDowO1xuICAgIGJhY2tncm91bmQ6ICRleHBvX3doaXRlO1xuICAgIGZvbnQtc2l6ZTowLjg3NXJlbTtcbiAgICBmb250LWZhbWlseTogXCJWYXJ0YVwiO1xuICAgIHotaW5kZXg6IDEwO1xuICAgID4gKiAqe1xuICAgICAgY29sb3I6ICRibGFjazt9XG4gICAgPiAqIHtcbiAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICBwYWRkaW5nOiAwLjEyNXJlbSAwLjc1cmVtO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBpIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTowLjFyZW07XG5cbiAgICAgIH1cbiAgICAgIHNwYW4ge1xuICAgICAgICBtYXJnaW46IDAuNHJlbTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMC4ycmVtO1xuICAgICAgICBtYXJnaW4tbGVmdDogMC4ycmVtO1xuICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgZm9udC1zaXplOiAwLjc1cmVtO1xuICAgICAgICBAbWVkaWEgI3skbWVkaXVtLXVwfSB7XG4gICAgICAgICAgZm9udC1zaXplOiAwLjgyNXJlbTtcbiAgICAgICAgfVxuICAgICAgICBAbWVkaWEgI3skbWVkaXVtLXVwfSB7XG4gICAgICAgICAgZm9udC1zaXplOiAwLjgyNXJlbTtcbiAgICAgICAgfVxuICAgICAgICBpIHtcblxuICAgICAgICAgIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgICAgICAgICBAbWVkaWEgI3skbWVkaXVtLXVwfSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDAuODI1cmVtO1xuICAgICAgICAgIH1cbiAgICAgICAgICBAbWVkaWEgI3skbWVkaXVtLXVwfSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDAuODI1cmVtO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICYub24tYmxhY2sge1xuICAgIGZpZ2NhcHRpb24ge1xuICAgICAgYmFja2dyb3VuZDogJGJsYWNrO1xuICAgICAgYSB7XG4gICAgICBjb2xvcjokd2hpdGU7XG4gICAgICB9XG4gICAgfVxuICAgIC52aWQtZXhwbyB7XG4gICAgICBiYWNrZ3JvdW5kOiAkYmxhY2s7XG4gICAgICBjb2xvcjokd2hpdGU7XG4gICAgfVxuICAgIGZpZ3VyZSBpbWcge1xuICAgICAgYm9yZGVyOjFweCBzb2xpZCByZ2JhKCR3aGl0ZSwwLjkpXG4gICAgfVxuICAgIC52aWQtZXhwbyA+ICogLC52aWQtZXhwbyA+ICogKntcbiAgICAgIGNvbG9yOiR3aGl0ZTtcbiAgICB9XG4gIH1cbiAgJjpub3QoLm9uLWJsYWNrKSB7XG4gICAgZmlnY2FwdGlvbiB7XG4gICAgICBhIHtcbiAgICAgICAgY29sb3I6JGJsYWNrO1xuICAgICAgfVxuICAgIH1cbiAgICAudmlkLWV4cG8ge1xuICAgICAgY29sb3I6JGJsYWNrO1xuICAgIH1cbiAgICBmaWd1cmUgaW1nIHtcbiAgICAgIGJvcmRlcjoxcHggc29saWQgcmdiYSgjOUY5RjlGLDAuOSlcbiAgICB9XG4gIH1cblxuICAuaW5mby1leHBvc2l0aW9uIHtcbiAgICBwYWRkaW5nOjAuMTI1cmVtO1xuICAgIEBtZWRpYSAjeyRtZWRpdW0tdXB9IHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7ZmxleC13cmFwOiBub3dyYXA7XG5cbiAgICB9XG4gICAgLmF1dGgtZXhwbyB7Zm9udC1zaXplOiAxcmVtO2NvbG9yOiAkYmxhY2s7IHdpZHRoOiAxMDAlfVxuICAgIC5kYXRlLWV4cG8ge2ZvbnQtc2l6ZTogMC44NzVyZW07IGxpbmUtaGVpZ2h0OjEuNXJlbTtjb2xvcjogJGthc2ktZ3JheTtmbGV4LXdyYXA6IG5vd3JhcDt3aGl0ZS1zcGFjZTogbm93cmFwO3NwYW4ge3doaXRlLXNwYWNlOiBub3dyYXB9IH1cbiAgfVxufVxuXG4vLy9pbm5lciBleHBvIGxpc3RcbiN0aGVtSGVhZGVyIHtcbiAgbWFyZ2luOiBhdXRvO1xuICB3aWR0aDogMTAwJTtcbiAgZGlzcGxheTogZmxleDtcbiAgaGVpZ2h0OiAyNXZoO1xuICBtaW4taGVpZ2h0OiAxOTBweDtcbiAgbWF4LWhlaWdodDogMzIwcHg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXIgIWltcG9ydGFudDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoMSB7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgZm9udC1zaXplOiAycmVtO1xuICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgIEBtZWRpYSAjeyRsYXJnZS11cH0ge1xuICAgICAgZm9udC1zaXplOiAzcmVtO1xuICAgIH1cbiAgICBAbWVkaWEgI3skeGxhcmdlLXVwfSB7XG4gICAgICBmb250LXNpemU6IDRyZW07XG4gICAgfVxuICB9XG59XG4uY29udGFpbmVyR3JpZGV4cG9zIHtcbiAgcG9zaXRpb246cmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW46IDBweCBhdXRvO1xuICBoZWlnaHQ6MTAwJTtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiA0MnB4IDFmcjtcbiAgZ3JpZC1nYXA6IDBweDtcbiAgQG1lZGlhICN7JGxhcmdlLXVwfSB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiA4MnB4IDFmcjtcbiAgfVxuXG4gICN0aGVtSGVhZGVyIHtcbiAgICBoZWlnaHQ6IDIwdmg7XG4gICAgbWluLWhlaWdodDogMTYwcHg7XG4gICAgbWF4LWhlaWdodDogMzIwcHg7XG4gIH1cbiAgJi5leHBvZGV0YWlsIHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDQycHggNDJweCAxZnI7XG5cbiAgICBAbWVkaWEgI3skbGFyZ2UtdXB9IHtcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogODJweCA4MnB4IDFmcjtcbiAgICB9XG4gICAgLmhlYWRlcmdyaWQge1xuICAgICAgZ3JpZC1jb2x1bW46IHNwYW4gMztcbiAgICB9XG4gICAgLm1haW5ncmlkZXhwb3MgLC5jb250ZW50LWJveHtcbiAgICAgIGdyaWQtY29sdW1uOiAgMy8zO1xuICAgICAgYSB7XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGNvbG9yOiAkcmVkICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICYudG9wM3JlbCB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgdG9wOi0zcmVtO1xuICAgICAgfVxuICAgIH1cbiAgICAudG90YWwge1xuICAgICAgZ3JpZC1jb2x1bW46IHNwYW4gMztcbiAgICB9XG4gICAgLnNpZGViYXIge1xuICAgICAgJi5ibGFjayB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRibGFjaztcbiAgICAgIH1cbiAgICB9XG4gICAgLnJlY2VudGVyLXNpZGUxIHtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICB3aWR0aDogY2FsYygxMDAlIC0gMjRweCk7XG4gICAgICBAbWVkaWEgI3skbGFyZ2UtdXB9IHtcbiAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDgycHgpO1xuICAgICAgfVxuICAgICAgJi5zbGlkZXRoZW1zIHtcbiAgICAgICAgbWFyZ2luOiBhdXRvO1xuICAgICAgfVxuICAgIH1cbiAgICAjdGhlbUhlYWRlciB7XG4gICAgICBoZWlnaHQ6IDM1dmg7XG4gICAgICBtaW4taGVpZ2h0OiAyODBweDtcbiAgICAgIG1heC1oZWlnaHQ6IDM4MHB4O1xuICAgICAgaDEge1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgIH1cbiAgICAgIEBtZWRpYSAjeyRsYXJnZS11cH0ge1xuICAgICAgICBoZWlnaHQ6IDM4dmg7XG4gICAgICAgICAgbWluLWhlaWdodDogMzAwcHg7XG4gICAgICB9XG4gICAgfVxuICB9XG4gICYuY2hhcHRkZXRhaWwge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogNDJweCA0MnB4IDFmciAgO1xuICAgIEBtZWRpYSAjeyRsYXJnZS11cH0ge1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiA4MnB4IDgycHggMWZyIDgycHg7XG4gICAgfVxuICAgIC5oZWFkZXJncmlkIHtcbiAgICAgIGdyaWQtY29sdW1uOiBzcGFuIDQ7XG4gICAgfVxuICAgIC5tYWluZ3JpZGV4cG9zICwuY29udGVudC1ib3h7XG4gICAgICBncmlkLWNvbHVtbjogIDMvMztcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICBncmlkLXJvdzogMSAvIDEwMDtcbiAgICB9XG4gICAgLnRvdGFsIHtcbiAgICAgIGdyaWQtY29sdW1uOiBzcGFuIDQ7XG4gICAgfVxuICAgIC5zaWRlYmFyIHtcbiAgICAgICYuYmxhY2sge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkYmxhY2s7XG4gICAgICB9XG4gICAgICAmLnJpZ2h0YmFyIHtcbiAgICAgICAgZ3JpZC1jb2x1bW46ICA0LzQ7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIEBtZWRpYSAjeyRtZWRpdW0tdXB9IHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgfVxuICAgIC5yZWNlbnRlci1zaWRlMSB7XG4gICAgICB3aWR0aDogMTAwJSA7XG4gICAgICBAbWVkaWEgI3skbGFyZ2UtdXB9IHtcbiAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDQxcHgpO1xuICAgICAgfVxuXG4gICAgICBAbWVkaWEgI3skeGxhcmdlLXVwfSB7XG4gICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSA4MnB4KTtcbiAgICAgIH1cbiAgICB9XG4gICAgI3RoZW1IZWFkZXIge1xuICAgICAgaGVpZ2h0OiAzMHZoO1xuICAgICAgbWF4LWhlaWdodDogMzIwcHg7XG4gICAgfVxuICB9XG4gIC5yZWNlbnRlci1zaWRlMSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgQG1lZGlhICN7JG1lZGl1bS11cH0ge1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDgycHgpO1xuICAgIH1cbiAgfVxuICAuc2lkZWJhciB7XG4gICAgZ3JpZC1yb3c6IDEgLyAxMDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHJlZDtcbiAgfVxuICAuaGVhZGVyZ3JpZCB7XG4gICAgZ3JpZC1jb2x1bW46IHNwYW4gMjtcbiAgfVxuXG4gIC5tYWluZ3JpZGV4cG9zIHtcbiAgICBncmlkLWNvbHVtbjogIDIvMjtcbiAgfVxuICAudG90YWwge1xuICAgIGdyaWQtY29sdW1uOiBzcGFuIDI7XG4gIH1cbiAgLmNyZWRpdHMge1xuICAgIG1hcmdpbi10b3A6My4yNXJlbTtcbiAgICBjbGVhcjpib3RoO1xuICAgIGZsb2F0OiBsZWZ0O3dpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi1ib3R0b206My4yNXJlbTtcbiAgICAuY3JlZGxpc3Qge1xuICAgICAgZm9udC1zaXplOjAuODc1cmVtO29wYWNpdHk6IDAuNjY7XG4gICAgfVxuICB9XG59XG5cblxuLmVuZC1ib3guYmxhY2sge1xuICBhIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAmOmhvdmVyIHtcbiAgICAgIGNvbG9yOiAkcmVkICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG59XG5cbi8vLy8gbWFycXVlZVxuLm1hcnF1ZWUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbjogMCAxNnB4IDByZW0gMDtcbiAgLmxpc3RhdXQge1xuICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgQG1lZGlhICN7JG1lZGl1bS11cH0ge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgICAgIHRyYW5zaXRpb246IDFzO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIHNwYW4ge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAmOmhvdmVyIHtzcGFuIHtcblxuICB9XG4gIH1cbn1cblxuLnByZXNleHBvIHtcbiAgbWFyZ2luLXRvcDo0cmVtO1xuICBwYWRkaW5nLWJvdHRvbTogM3JlbTtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoJGxpZ2h0LWdyYXksMC41KTtcbiAgbWFyZ2luLWJvdHRvbTogMi40cmVtO1xuICBhcnRpY2xle1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBAbWVkaWEgI3skbGFyZ2UtdXB9IHtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgfVxuICB9XG4gIC5pbnRyb0ZpcnN0IHtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIHRleHQtYWxpZ246anVzdGlmeTtcblxuICB9XG4gIC5jaXRlRm9yRXhwbyB7XG4gICAgbWFyZ2luLXRvcDoxcmVtO1xuXG4gIH1cbiAgLmNpdGF0aW9uIHtcbiAgICBmb250LXNpemU6IDEuMTI1cmVtO1xuICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICBtYXJnaW4tYm90dG9tOiAwLjYyNXJlbTtcbiAgICBAbWVkaWEgI3skeHhsYXJnZS11cH0ge1xuICAgICAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgICB9XG4gIH1cbiAgLmNpdGF0aW9uX2F1dGgge1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICBmb250LXdlaWdodDogMzAwO1xuICAgIGNvbG9yOiAkbGlnaHQtZ3JheTtcbiAgfVxuICAuZXhwby1waWN0dXJlIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBtYXJnaW4tcmlnaHQ6IDJyZW07XG4gICAgQG1lZGlhICN7JHNtYWxsLW9ubHl9IHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaW1nIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbToycmVtO1xuICAgICAgfVxuICAgIH1cbiAgICBAbWVkaWEgI3skbWVkaXVtLXVwfSB7XG4gICAgICB3aWR0aDogMjgwcHg7XG4gICAgfVxuICAgIEBtZWRpYSAjeyRsYXJnZS11cH0ge1xuICAgICAgd2lkdGg6IDM2MHB4O1xuICAgIH1cbiAgfVxuICBhIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgfVxufVxuLmV4cG8tcGljdHVyZSB7XG4gIGZpZ3VyZSB7XG4gICAgbWFyZ2luOiAwO1xuICB9XG4gIHdpZHRoOjM2MHB4O1xufVxuLmV4cG8taW50cm8ge1xuICBtYXJnaW4tbGVmdDogMHJlbTtcbiAgd2lkdGg6IDEwMCU7XG4gIGZvbnQtc2l6ZTogMXJlbTtcblxuICBAbWVkaWEgI3skeHhsYXJnZS11cH0ge1xuICAgIG1hcmdpbi1sZWZ0OiAwcmVtO1xuICAgIHdpZHRoOiAxMDAlIDtcbiAgICBmb250LXNpemU6IDFyZW07XG4gICAgcCB7Zm9udC1zaXplOiAxcmVtO31cbiAgfVxuICAuaW50cm9Nb3JlIHtcbiAgICBmb250LWZhbWlseTogJ0lucmlhIFNlcmlmJztcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIHRleHQtYWxpZ246anVzdGlmeTtcbiAgICBhIHsgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmV9XG4gICAgQG1lZGlhICN7JHh4bGFyZ2UtdXB9IHtcbiAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgIHAge2ZvbnQtc2l6ZTogMXJlbTt9XG4gICAgfVxuICB9XG59XG4uZXhwb1BsYW4ge1xuICBtYXJnaW4tdG9wOjEuNWVtO1xuICBtYXJnaW4tYm90dG9tOjMuNXJlbTtcbiAgaDIge1xuICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgZm9udC1zaXplOiAyLjI1cmVtO1xuICB9XG59XG5cbi5jYXB0bF9oMiB7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGZvbnQtd2VpZ2h0OiA5MDA7XG4gIGZvbnQtc2l6ZTogMi4yNXJlbTtcbn1cblxuI3JlY2FwQ3JlZCB7XG4gIG1hcmdpbi10b3A6IDVyZW07XG4gIG1hcmdpbi1ib3R0b206IDVyZW07XG59XG5cbi5saXN0Y2hhcHRlciB7XG4gIHBhZGRpbmctdG9wOjNyZW07XG4gIHBhZGRpbmctYm90dG9tOjNyZW07XG4gIC5jaGFwdGVySXRlbSB7XG4gICAgcGFkZGluZzogMC41cmVtO1xuXG4gICAgJi5hY3RpdmUge1xuICAgICAgYm9yZGVyOjFweCAkcmVkIHNvbGlkO1xuXG4gICAgfVxuICB9XG4gIC5uYXZzbGlkZXJieTMgYTpob3ZlciB7XG4gICAgLmljb24tMnh7XG4gICAgICAmOmJlZm9yZXtjb2xvcjokcmVkICFpbXBvcnRhbnQ7IH1cbiAgICB9XG4gIH1cbiAgLmljb24tMnh7XG4gICAgJjpiZWZvcmV7Y29sb3I6JHdoaXRlICFpbXBvcnRhbnQ7IH1cbiAgfVxufVxuXG5cbiNwYXJhZ2hNZW51IHtcbiAgbWFyZ2luOiAyLjVyZW0gMDtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICAubWVudWNoYXBJdGVtIHtcbiAgICAmOmhvdmVyIHtcbiAgICAgIC50aXRsZXBhciB7XG4gICAgICAgIGNvbG9yOiRyZWQgIWltcG9ydGFudDtcbiAgICAgICAgKiB7XG4gICAgICAgICAgY29sb3I6JHJlZCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gID4gZGl2IHtcbiAgICB3aWR0aDo1MCU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIG1hcmdpbjogMC41cmVtIDA7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIEBtZWRpYSAjeyRsYXJnZS11cH0ge1xuICAgICAgd2lkdGg6MjUlO1xuICAgIH1cblxuICAgID4udGl0bGVwYXIgIHtcbiAgICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgICBwYWRkaW5nOiAwIDAuNzVyZW07XG4gICAgfVxuICAgID4uaW1ncGFyIHtcbiAgICAgIHdpZHRoOiA1MHB4O1xuICAgICAgaGVpZ2h0OjQwcHg7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBmbGV4OiAwIDAgNTBweDtcbiAgICAgIEBtZWRpYSAjeyRsYXJnZS11cH0ge1xuICAgICAgICB3aWR0aDogMTAwcHg7XG4gICAgICAgIGhlaWdodDo3MnB4O1xuICAgICAgICBmbGV4OiAwIDAgMTAwcHg7XG4gICAgICB9XG4gICAgICBpbWcge1xuICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBtaW4td2lkdGg6IDEwMCU7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDEwMCU7XG4gICAgICAgIHRvcDogNTAlO1xuICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsLTUwJSk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5pbnRyb2ZvbGQsLmRlc2NyZm9sZCB7XG4gIGZvbnQtZmFtaWx5OiAnSW5yaWEgU2VyaWYnLCBzZXJpZjtcbiAgKntcbiAgICBsaW5lLWhlaWdodDogMS44NzVyZW07bWFyZ2luLWJvdHRvbTogMDtcbiAgfVxuICBhIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgfVxufVxuLmludHJvZm9sZCB7XG4gIHRleHQtYWxpZ246IGp1c3RpZnk7XG59XG5cbi5kZXNjcmZvbGQge1xuIHAge1xuICAgdGV4dC1hbGlnbjoganVzdGlmeTtcbiB9XG59XG5cbi5mb2xkZXIge1xuICBtYXJnaW4tdG9wOjJyZW07ZmxvYXQ6IGxlZnQ7XG4gIGgzIHtcbiAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIH1cblxufVxuXG4uY2l0YXRpb25Gb2xkZXIgeztcbiAgLmlzLWNvbnRlbnQge1xuICAgIC8vYm9yZGVyLWxlZnQ6IDAuMjVyZW0gc29saWQgI2RkZDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoOTBkZWcsIHdoaXRlLCB0cmFuc3BhcmVudCk7XG4gICAgcGFkZGluZzogMnJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDRyZW07XG4gICAgLy9ib3gtc2hhZG93OiAtMjFweCAwcHggMjBweCAtMTdweCByZ2JhKCRibGFjaywwLjEpO1xuICB9XG59XG5cbi5tb3JlYmxvY2sge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZmxvYXQ6IGxlZnQ7XG4gIHdpZHRoOiAxMDAlO1xuICBib3JkZXItYm90dG9tOjFweCBzb2xpZCAgcmdiYSgkZGFyay1ncmF5MiwwLjUpO1xuICAuc2hvd2ZvbGRlciB7XG4gICAgICA+IHNwYW4ge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICBzcGFuLm1vcmUge1xuICAgICAgICBmb250LXNpemU6IDJlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDEwMDtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjNlbTtcbiAgICAgIH1cbiAgICB9XG4gICAgLm1vcmVidXQge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIH1cbiAgICAubGVzc2J1dCB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgICAmLm9wZW5lZCB7XG4gICAgICAubW9yZWJ1dCB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG4gICAgICAubGVzc2J1dCB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbi5pdGFsaWMge1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG59XG4uZGV0YWlsZm9sZGVyIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIG1hcmdpbi10b3A6MXJlbTtcbiAgZmxvYXQ6IGxlZnQ7XG4gIC5zbWFsbC10ZXh0IHtcbiAgICAqIHtcbiAgICAgIGZvbnQtc2l6ZTogMC42MjVyZW07XG4gICAgICAmOmJlZm9yZXtkaXNwbGF5OiBub25lfVxuICAgIH1cbiAgfVxuICAuc2xpY2stYXJyb3cge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3R0b206MXJlbTtcbiAgICB6LWluZGV4OiAxMDtcbiAgICY6YmVmb3JlIHtcbiAgICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgICB9XG4gIH1cbiAgLnNsaWNrLXByZXYge2xlZnQ6LTFyZW19XG4gIC5zbGljay1uZXh0IHtyaWdodDotMXJlbX1cbiAgLnNsaWNrLXNsaWRlIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgY29sb3I6ICM0MTliZTA7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgbWFyZ2luOiAxcHg7XG4gICAgaW1nIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbiAgfVxufVxuLmNvbnRhaW5lclBhcmEge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICA+IGgzIHtcbiAgICBib3JkZXItbGVmdCA6IDNweCBzb2xpZCAkcmVkO1xuICAgIHBhZGRpbmctbGVmdCA6MC43NXJlbTtcbiAgfVxufVxuXG5cbi5mb2xkZXItZGV0YWlsICB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAmLmZfY2l0YXRpb24ge1xuICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG4gICAgbWFyZ2luLXRvcDogMnJlbTtcbiAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgICAmOmJlZm9yZSB7XG4gICAgICBjb250ZW50OlwiXCI7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB0b3A6IDA7XG4gICAgICB3aWR0aDogMnB4O1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgYmFja2dyb3VuZDogJHJlZDtcbiAgICB9XG4gIH1cbiAgQG1lZGlhICN7JHhsYXJnZS11cH0ge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG5cbiAgfVxuICAmLmFsaWducmlnaHQge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgQG1lZGlhICN7JHhsYXJnZS11cH0ge1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlO1xuICAgIH1cbiAgfVxuICAmLmFsaWduZnVsbCB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICA+IC5jb2x1bW4ge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICB9XG4gIC50YWcge1xuICAgIG1hcmdpbi10b3A6MXJlbTtcbiAgfVxuICAmLmlzLXdpdGgtaW1hZ2Uge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIC5kZXNjcmZvbGQge1xuICAgICAgZmxvYXQ6IGluaXRpYWw7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgbWFyZ2luOiAwIDAuN3JlbTtcbiAgICB9XG4gICAgLnN0b3JlLWFsYnVtIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIG1hcmdpbjogMS43NXJlbTtcbiAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAuc2xpY2stc2xpZGUge1xuICAgICAgICBiYWNrZ3JvdW5kOiAjZGZkZmRmO1xuICAgICAgfVxuICAgICAgYnV0dG9uIHtcbiAgICAgICY6aG92ZXIge1xuICAgICAgICBjb2xvcjokcmVkXG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5kZXNjcmltZ2ZvbGQge1xuICAgICAgICBwYWRkaW5nOiAwLjVyZW0gMXJlbTtcbiAgICAgIH1cbiAgICB9XG4gICAgJi5hbGlnbnJpZ2h0IHtcbiAgICAgIC5zdG9yZS1hbGJ1bSB7XG4gICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLnNsaWRlci1pbWctZm9sZGVyYnktMyB7XG4gIHdpZHRoOiAxMDAlO1xuICBAbWVkaWEgI3skbGFyZ2UtdXB9IHtcbiAgICB3aWR0aDogNzZ2dztcbiAgfVxuICAuaXRlbS1pbWctZm9sZGVyIHtcbiAgcGFkZGluZy1yaWdodDogMC41cmVtO1xuICAgIEBtZWRpYSAjeyRsYXJnZS11cH0ge1xuICAgICAgcGFkZGluZy1yaWdodDogMi41cmVtO1xuICAgIH1cbiAgICAuc21hbGwtdGV4dCB7XG4gICAgICBtaW4taGVpZ2h0OiAzcmVtO1xuICAgIH1cbiAgfVxufVxuLnN0b3JlLWFsYnVtIHtcbiAgLml0ZW0taW1nLWZvbGRlciB7XG4gICAgaDYge1xuICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgfVxuICB9XG59XG5zZWN0aW9uLmJsb2NrLmJsYWNrIHtcbiAgLmljb24tMng6YmVmb3JlIHtcbiAgICBjb2xvcjokd2hpdGU7XG4gICAgZm9udC1zaXplOiAxLjhyZW07O1xuICB9XG5cbn1cbi5yZWNlbnRlci1zaWRlLXJlc3VtZSB7XG4gIHBhZGRpbmctdG9wOjJyZW07XG4gIHBhZGRpbmctYm90dG9tOiAwLjI1cmVtO1xuICAuc2xpZGVyLWltZy1mb2xkZXJieS0zIHtcbiAgICBtYXJnaW4tdG9wOjJyZW07XG4gIH1cbiAgLnJvdy5sYXJnZXIge1xuICAgIG1heC13aWR0aDogODByZW07XG4gIH1cbn1cbi5uYXZzbGlkZXJieTMge1xuICBtYXJnaW4tdG9wOjFyZW07XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhIHtcbiAgICBwYWRkaW5nOiAxcmVtO1xuICAgIG9wYWNpdHk6IDAuNTtcbiAgICAmOmhvdmVyIHtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgfVxuICB9XG59XG5cblxuLm5hdmJhci10aGVtYXRpY3MtbW9yZSAge1xuICBwb3NpdGlvbjogc3RpY2t5O1xuICB0b3A6IDA7XG4gIHVsIHtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgbWFyZ2luOiAwO1xuICAgIG1hcmdpbi10b3A6IDEuNXJlbTtcbiAgICBib3JkZXItdG9wOiAxcHggcmdiYSgkd2hpdGUsMC41KSBzb2xpZDtcbiAgICBib3JkZXItbGVmdDogMXB4IHJnYmEoJHdoaXRlLDAuNSkgc29saWQ7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIC8vbWFyZ2luLWJvdHRvbTogMC41ZW07XG4gICAgbGl7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoJHdoaXRlLDAuNSk7XG4gICAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCByZ2JhKCR3aGl0ZSwwLjUpO1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSAvIDMpO1xuXG4gICAgfSBhIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICB3aWR0aDoxMDAlO1xuICAgICAgICBiYWNrZ3JvdW5kOiAkYmxhY2s7XG4gICAgICAgIHBhZGRpbmc6IDFyZW0gMnJlbTtcbiAgICAgICAgZm9udC1mYW1pbHk6ICd2YXJ0YSc7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDFyZW07XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgY29sb3I6JGJsYWNrO1xuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZDogJHJlZDtcblxuICAgIH1cblxuICAgICAgfVxuICB9XG4gIHVsLmxhcmdlLTgge1xuICAgIGxpIHtcbiAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLyAyKTtcbiAgICB9XG4gIH1cbiAgdWwubGFyZ2UtNCB7XG4gICAgbGkge1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSk7XG4gICAgfVxuICB9XG59XG5cblxuI2NoYXB0ZXJzU2xpZGUge1xuICAuc2xpY2stdHJhY2sge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gIH1cbiAgLmNhcmQtZXhwbyAge1xuICAgIGZpZ2NhcHRpb24ge1xuICAgICAgZm9udC1zaXplOjAuNzVyZW07XG4gICAgfVxuICB9XG59XG4ubm9wb2ludCB7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lICA7XG59XG4jdGhlbUhlYWRlciB7XG4gIC5wZXJtYWxpbmtzIHtcbiAgICBhLmNpdGV1cmwge1xuICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmxhY2s7XG4gICAgICBib3JkZXItcmFkaXVzOiA2cHg7XG4gICAgfVxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDFyZW07XG4gICAgcmlnaHQ6IDFyZW07XG4gIH1cbn1cblxuXG4uaW1nLWF1ZCB7XG4gIG1hcmdpbi1ib3R0b206MXJlbTtcbn1cblxuXG4vL3ZpZGVvIHRyYWNrIGxpc3Rcbi50cmFja2xpc3Qge1xuICBkaXNwbGF5OiBibG9jazttYXJnaW46IDFyZW0gMDtcbiAgY291bnRlci1yZXNldDogbnVtO1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tbGVmdDowO1xuICBwIHtcbiAgICBjb3VudGVyLWluY3JlbWVudDogbnVtO1xuICAgIGRpc3BsYXk6IGxpc3QtaXRlbSA7XG4gICAgZm9udC1zaXplOiAwLjc1cmVtO1xuICAgIG1hcmdpbjogMCAwLjVyZW07XG4gICAgbWFyZ2luLWxlZnQ6MDtcbiAgICBsaXN0LXN0eWxlOm5vbmU7XG4gICAgYm9yZGVyLXJhZGl1czogNnB4O2N1cnNvcjpwb2ludGVyO1xuICAgICY6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6Y291bnRlcihudW0pJykgJztcbiAgICB9XG4gIH1cbn0iLCIvKlxuICogRmx5aW5nIHNsaWNrIHBsdWdpbiBzdHlsZXNoZWV0c1xuICovXG4uZmx5aW5nc2xpY2stb3ZlcmxheXtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgdG9wOiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGhlaWdodDogMTAwdmg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkYmxhY2ssIDAuOSk7XG4gICAgei1pbmRleDogMzAwMDtcbiAgICBiYWNrZHJvcC1maWx0ZXI6IGJsdXIoNXB4KTtcbiAgICBkaXNwbGF5OmZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuICAgIC5mbHlpbmdzbGljay1jbG9zZXtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDFyZW07XG4gICAgICAgIHJpZ2h0OiAxcmVtO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDEuNXJlbTtcbiAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIHotaW5kZXg6IDMwMDtcblxuICAgICAgICAmOjphZnRlcntcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXFxlOTFkXCI7XG4gICAgICAgICAgICBmb250LWZhbWlseTogJ2ljb21vb24nO1xuICAgICAgICAgICAgZm9udC1zaXplOiAyLjVyZW07XG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogMC4ycztcbiAgICAgICAgfVxuXG4gICAgICAgICY6aG92ZXJ7XG4gICAgICAgICAgICAmOjphZnRlcntcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDNyZW07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5mbHlpbmdzbGljay1hbGJ1bXtcbiAgICBmbGV4OiAxIDAgMTAwJTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG5cbiAgICAmLnNsaWNrLXNsaWRlci5zbGljay1pbml0aWFsaXplZHtcbiAgICAgICAgLnNsaWNrLXByZXYsXG4gICAgICAgIC5zbGljay1uZXh0e1xuICAgICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICB0b3A6IGNhbGMoNTAlIC0gMnJlbSk7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB6LWluZGV4OiAyMDtcblxuICAgICAgICAgICAgJjpiZWZvcmV7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjhyZW07XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZXI7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICB0ZXh0LXNoYWRvdzogMHB4IDBweCAxNXB4ICNmZmZmZmY5OTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5zbGljay1wcmV2IHtcbiAgICAgICAgICAgIGxlZnQ6IDJyZW07XG4gICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgY29udGVudDogXCJcXGU5MWNcIjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5zbGljay1uZXh0IHtcbiAgICAgICAgICAgIHJpZ2h0OiAycmVtO1xuICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXFxlOTFiXCI7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuXG4gICAgICAgIC5zbGljay1saXN0e1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cbiAgICAgICAgICAgIC5zbGljay1zbGlkZXtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuICAgICAgICAgICAgICAgIHNwYW57XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDk4JTtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICBvdmVyZmxvdy15OiBzY3JvbGw7XG4gICAgICAgICAgICAgICAgICAgIG1heC1oZWlnaHQ6IDEwMHZoO1xuICAgICAgICAgICAgICAgICAgICAmOjpiZWZvcmV7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50OiBhdHRyKGRhdGEtbmFtZSk7XG4gICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMC43cmVtIDFyZW07XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDAuNjVyZW07XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgICAgICAgICAgICAgICBAbWVkaWEgI3skbGFyZ2UtdXB9IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwLjhyZW0gMS4ycmVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgaW1ne2Rpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCA1MDBtcyBlYXNlO1xuICAgICAgICAgICAgICAgICAgICAgICAgLy9oZWlnaHQ6IGNhbGMoNjN2dy8yKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAmOm5vdCguc2xpY2stYWN0aXZlKSB7XG4gICAgICAgICAgICAgICAgICAgIGltZ3tcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogY2FsYyg1MHZ3LzIpO1xuICAgICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMC41O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIHNwYW57XG4gICAgICAgICAgICAgICAgICAgICAgJjo6YmVmb3Jle1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuc2xpY2stZG90c3tcbiAgICAgICAgZGlzcGxheTpub25lICFpbXBvcnRhbnQ7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgYm90dG9tOiAxcmVtO1xuICAgICAgICBAbWVkaWEgI3skbWVkaXVtLXVwfSB7XG4gICAgICAgICAgICBib3R0b206IDV2aDtcbiAgICAgICAgfVxuICAgICAgICBAbWVkaWEgI3skbGFyZ2UtdXB9IHtcbiAgICAgICAgICAgIGJvdHRvbTogMTB2aDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgMTUlO1xuICAgICAgICB9XG5cbiAgICAgICAgbGkge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgaGVpZ2h0OiAxNXB4O1xuICAgICAgICAgICAgd2lkdGg6IDE1cHg7XG4gICAgICAgICAgICBtYXJnaW46IDAgMCAzcHg7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgQG1lZGlhICN7JG1lZGl1bS11cH0ge1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMCAwIDVweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJiArIGxpe1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAzcHg7XG4gICAgICAgICAgICAgICAgQG1lZGlhICN7JG1lZGl1bS11cH0ge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogNXB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgYnV0dG9uIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE1cHg7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAwLjVyZW07XG4gICAgICAgICAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwcHggIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGJsYWNrO1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDVyZW07XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJGJsYWNrO1xuXG4gICAgICAgICAgICAgICAgLy8gRGlzYWJsZSB1bnVzZWQgYmVmb3JlXG4gICAgICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDA7XG4gICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAwO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi5zbGljay1hY3RpdmV7XG4gICAgICAgICAgICAgICAgYnV0dG9uIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGJsYWNrO1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICB9XG59XG4iLCIgICAgaHRtbC5pc01vYmlsZSB7XG5cblxuXG5cbiAgICAgICAgICAgIEBtZWRpYVxuICAgICAgICAgICAgb25seSBzY3JlZW4gYW5kICgtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDIpICAgICAgYW5kIChtYXgtd2lkdGg6IDE1MzZweCksXG4gICAgICAgICAgICBvbmx5IHNjcmVlbiBhbmQgKCAgIG1pbi0tbW96LWRldmljZS1waXhlbC1yYXRpbzogMikgICAgICBhbmQgKG1heC13aWR0aDogMTUzNnB4KSxcbiAgICAgICAgICAgIG9ubHkgc2NyZWVuIGFuZCAoICAgICAtby1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAyLzEpICAgIGFuZCAobWF4LXdpZHRoOiAxNTM2cHgpLFxuICAgICAgICAgICAgb25seSBzY3JlZW4gYW5kICggICAgICAgIG1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDIpICAgICAgYW5kIChtYXgtd2lkdGg6IDE1MzZweCksXG4gICAgICAgICAgICBvbmx5IHNjcmVlbiBhbmQgKCAgICAgICAgICAgICAgICBtaW4tcmVzb2x1dGlvbjogMTkyZHBpKSBhbmQgKG1heC13aWR0aDogMTUzNnB4KSxcbiAgICAgICAgICAgIG9ubHkgc2NyZWVuIGFuZCAoICAgICAgICAgICAgICAgIG1pbi1yZXNvbHV0aW9uOiAyZHBweCkgIGFuZCAobWF4LXdpZHRoOiAxNTM2cHgpIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZToxNjAlO1xuXG4gICAgICAgIH1cbiAgICAgICAgLyogU21hbGwgc2NyZWVuLCByZXRpbmEsIHN0dWZmIHRvIG92ZXJyaWRlIGFib3ZlIG1lZGlhIHF1ZXJ5ICovXG5cblxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChyZXRpbmEpIHtcbiAgICAgICAgLy9mb250LXNpemU6NDAwJTtcblxuXG4gICAgICAgIC5zcXVhcmV7XG4gICAgICAgICAgICBoZWlnaHQ6IDYwcHg7XG4gICAgICAgICAgICB3aWR0aDogNjBweDtcbiAgICAgICAgfVxuICAgICAgICAuZm9vdGVyLWxpbmtzIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB9XG4gICAgfVxufVxuXG5cbi8qXG4gKiBUeXBvZ3JhcGh5IGFuZCBhbGlrZVxuICovXG5cbi8vIERvbnQgdXNlIHRoZSBzYW1lIGZvbnQgd2VpZ2h0IGZvciBiL3N0cm9uZ1xuYntcbiAgICBmb250LXdlaWdodDogNjAwO1xufVxuc3Ryb25ne1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG59XG5cbi8vIHRleHQtKioqIG5hbWUgZm9ybWF0c1xuLnRleHQtdXBwZXJ7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZSAhaW1wb3J0YW50O1xufVxuLnRleHQtaW1wb3J0YW50e1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lICFpbXBvcnRhbnQ7XG59XG5cbi50ZXh0LXRoaW57XG4gICAgZm9udC13ZWlnaHQ6IDMwMCAhaW1wb3J0YW50O1xufVxuLnRleHQtYm9sZHtcbiAgICBmb250LXdlaWdodDogNDAwICFpbXBvcnRhbnQ7XG59XG4udGV4dC1zdHJvbmd7XG4gICAgZm9udC13ZWlnaHQ6IDcwMCAhaW1wb3J0YW50O1xufVxuLnRleHQtc3Ryb25nZXN0e1xuICAgIGZvbnQtd2VpZ2h0OiA5MDAgIWltcG9ydGFudDtcbn1cblxuLy8gVGV4dCBjb2xvcnNcbi50ZXh0LXJlZHtcbiAgICBjb2xvcjogJHJlZCAhaW1wb3J0YW50O1xufVxuLnRleHQtYmxhY2t7XG4gICAgY29sb3I6ICRibGFjayAhaW1wb3J0YW50O1xufVxuLnRleHQtd2hpdGV7XG4gICAgY29sb3I6ICR3aGl0ZSAhaW1wb3J0YW50O1xufVxuXG4vLyBWYXJpb3VzIDxzbWFsbD4gbW9kaWZpZXJcbnNtYWxse1xuICAgICYuc21hbGx7XG4gICAgICAgIGZvbnQtc2l6ZTogNDAlO1xuICAgIH1cbiAgICAmLm1lZGl1bXtcbiAgICAgICAgZm9udC1zaXplOiA2MCU7IC8vZXF1aXZhbGVudCB0byBkZWZhdWx0IDxzbWFsbD4gYmVoYXZpb3JcbiAgICB9XG4gICAgJi5iaWd7XG4gICAgICAgIGZvbnQtc2l6ZTogODAlO1xuICAgIH1cbn1cbmgxIHtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGxpbmUtaGVpZ2h0OiAwLjg7XG59XG5oMSwgaDIsIGgzLCBoNCwgaDUsIGg2e1xuICAgICYudGV4dC10aGlue1xuICAgICAgICBmb250LXdlaWdodDogMTAwICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgICYudGV4dC1ub3JtYWx7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA0MDAgIWltcG9ydGFudDtcbiAgICB9XG4gICAgJi50ZXh0LXN0cm9uZ3tcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMCAhaW1wb3J0YW50O1xuICAgIH1cbn1cblxuLnRpdGxlLTF7XG4gICAgQGV4dGVuZCBoMTtcbn1cbi50aXRsZS0ye1xuICAgIEBleHRlbmQgaDI7XG59XG4udGl0bGUtM3tcbiAgICBAZXh0ZW5kIGgzO1xufVxuLnRpdGxlLTR7XG4gICAgQGV4dGVuZCBoNDtcbn1cbi50aXRsZS01e1xuICAgIEBleHRlbmQgaDU7XG59XG5zcGFuIHtcbiAgICAmLnRpdGxlLTEsJi50aXRsZS0yLCYudGl0bGUtMyAsJi50aXRsZS00ICwmLnRpdGxlLTV7XG5cbiAgICB9XG59XG4vLyA/Pz9cbi5oMyB7XG4gICAgQGV4dGVuZCBoMztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nLWJvdHRvbTogMnJlbTtcbiAgICBwYWRkaW5nLXRvcDogMnJlbTtcbn1cbmg2IHtcbiAgICB0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7XG4gICAgZm9udC13ZWlnaHQ6NjAwO1xufVxuXG4vLyBCaWdnZXIgdGV4dFxuLmJpZzpub3Qoc21hbGwpIHtcbiAgICBmb250LXNpemU6IDEuNHJlbTtcbiAgICBmb250LXdlaWdodDogNjAwO1xufVxuXG4vKmJsb2NrcXVvdGUge1xuICAgIGJvcmRlci1sZWZ0OiAwO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHN2ZyB7XG4gICAgICAgICNibGFjayB7XG4gICAgICAgICAgICBmaWxsOiAjRkZGRkZGO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRjtcbiAgICAgICAgfVxuICAgIH1cbn0qL1xuXG5ociB7XG4gICAgYm9yZGVyLXdpZHRoOiAwcHg7XG4gICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItdG9wOiAwO1xuICAgIGJvcmRlci1ib3R0b206MXB4IHNvbGlkIHJnYmEoJGJsYWNrLDAuNSk7O1xuXG59XG5mb290ZXIge1xuICAgIGhyIHtib3JkZXItY29sb3I6I0ZGRn1cbiAgICAuYnRuLWdyb3VwIHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikgeyBkaXNwbGF5OiBpbmxpbmUtYmxvY2t9XG4gICAgfVxufVxuLmhsaW5lIHtcbiAgICBAaW5jbHVkZSBobGluZTtcbn1cblxuLy8gYmFja2dyb3VuZHNcbi5iYWNrZ3JvdW5kLWJsYWNrIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBibGFjaztcbn1cbi5iYWNrZ3JvdW5kLXdoaXRlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG59XG4ucm91bmRlZCB7XG4gICAgYm9yZGVyLXJhZGl1czo1MCU7XG59XG4uc3F1YXJlIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgaGVpZ2h0OiAzMnB4O1xuICAgIHdpZHRoOjMycHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIC5pY29uIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6NTAlO1xuICAgICAgICBsZWZ0OjUwJTtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNsYXRlKC01MCUsLTUwJSlcbiAgICB9XG59XG4ubWVudS5zb2NpYWwge1xuICAgIGxpIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDowLjVyZW07XG4gICAgICAgIGEge1xuICAgICAgICAgICAgY29sb3I6JHdoaXRlO1xuICAgICAgICB9XG4gICAgfVxufVxuLy8gVW5kZXJsaW5lZCBlbGVtZW50XG4udW5kZXJsaW5le1xuICAgIC8vIEJhc2VcbiAgICAmOmFmdGVye1xuICAgICAgICBjb250ZW50OlwiXCI7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgICBoZWlnaHQ6IHJlbS1jYWxjKDNweCk7XG4gICAgICAgIG1hcmdpbjogMXJlbSAwO1xuICAgICAgICBib3JkZXItYm90dG9tOiByZW0tY2FsYygzcHgpIHNvbGlkICRibGFjaztcbiAgICB9XG5cbiAgICAvLyBPbiBjZW50ZXJlZCB0ZXh0XG4gICAgJi50ZXh0LWNlbnRlcntcbiAgICAgICAgJjphZnRlcntcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gQm9yZGVyIHdlaWdodFxuICAgICYudGhpbntcbiAgICAgICAgJjphZnRlcntcbiAgICAgICAgICAgIGhlaWdodDogcmVtLWNhbGMoMXB4KTtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IHJlbS1jYWxjKDFweCkgc29saWQgJGJsYWNrO1xuICAgICAgICB9XG4gICAgfVxuICAgICYuYm9sZHtcbiAgICAgICAgJjphZnRlcntcbiAgICAgICAgICAgIGhlaWdodDogcmVtLWNhbGMoNXB4KTtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IHJlbS1jYWxjKDVweCkgc29saWQgJGJsYWNrO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gQm9yZGVyIHdpZHRoIHNpemVcbiAgICAmLnRpbnl7XG4gICAgICAgICY6YWZ0ZXJ7XG4gICAgICAgICAgICB3aWR0aDogNSU7XG4gICAgICAgIH1cbiAgICB9XG4gICAgJi5zaG9ydHtcbiAgICAgICAgJjphZnRlcntcbiAgICAgICAgICAgIHdpZHRoOiAxNSU7XG4gICAgICAgIH1cbiAgICB9XG4gICAgJi5ub3JtYWx7XG4gICAgICAgICY6YWZ0ZXJ7XG4gICAgICAgICAgICB3aWR0aDogNDAlO1xuICAgICAgICB9XG4gICAgfVxuICAgICYubGFyZ2V7XG4gICAgICAgICY6YWZ0ZXJ7XG4gICAgICAgICAgICB3aWR0aDogNzAlO1xuICAgICAgICB9XG4gICAgfVxuICAgICYuZnVsbHtcbiAgICAgICAgJjphZnRlcntcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gQm9yZGVyIGRpc3RhbmNlIGZyb20gdGV4dFxuICAgICYuZmFye1xuICAgICAgICAmOmFmdGVye1xuICAgICAgICAgICAgbWFyZ2luOiAycmVtIDA7XG4gICAgICAgIH1cbiAgICAgICAgJi50ZXh0LWNlbnRlcntcbiAgICAgICAgICAgICY6YWZ0ZXJ7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAycmVtIGF1dG87XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgJi5uZWFye1xuICAgICAgICAmOmFmdGVye1xuICAgICAgICAgICAgbWFyZ2luOiAwLjVyZW0gMDtcbiAgICAgICAgfVxuICAgICAgICAmLnRleHQtY2VudGVye1xuICAgICAgICAgICAgJjphZnRlcntcbiAgICAgICAgICAgICAgICBtYXJnaW46IDAuNXJlbSBhdXRvO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgICYuc3RpY2tlZHtcbiAgICAgICAgJjphZnRlcntcbiAgICAgICAgICAgIG1hcmdpbjogMCAwO1xuICAgICAgICB9XG4gICAgICAgICYudGV4dC1jZW50ZXJ7XG4gICAgICAgICAgICAmOmFmdGVye1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4vKlxuICogVmFyaW91cyBtaW5vciBydWxlc1xuICovXG5cbltkYXRhLWxpbmtdIHtcbiAgICAmOmhvdmVyIHtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBjb2xvcjogJHJlZDtcbiAgICB9XG59XG5cbi50b3RhbCB7XG4gICAgd2lkdGg6IDEwMCU7XG59XG5cblxuLmd1dHRlciAsKi5ndXR0ZXJ7XG4gICAgbWFyZ2luOjFyZW07XG59XG4uZnVsbC5ndXR0ZXIge1xuICAgIEBpbmNsdWRlIGNhbGMoJ3dpZHRoJywnMTAwJSAtIDJyZW0nKVxufVxuIiwiQG1lZGlhIHByaW50IHtcbiAgZm9vdGVyLCAuaGVhZGVyLFxuICAjY29udHJvbHNfbGlrZSwgLm1lbnUuc29jaWFsLFxuICBhW3RpdGxlPVwiQ29tcGF0aWJsZSBab3Rlcm9cIl0sXG4gIC5jbXMtdG9vbGJhciwgLmNtcy10b29sYmFyLXRyaWdnZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB9XG59XG4iXSwic291cmNlUm9vdCI6Ii9zb3VyY2UvIn0= */
