@charset "UTF-8";
/**
 * Foundation for Sites by ZURB
 * Version 6.2.1
 * foundation.zurb.com
 * Licensed under MIT Open Source
 */

/*
 * weloveiconfonts service is dead since 2022
 *@import url(https://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: 110; }

  .dropdown-pane.is-open {
    visibility: visible; 
  z-index: 110; }

.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;
          pointer-events: none;
          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%); }

#folder p a {
  color: #dd3333 !important; }
  #folder p a span,
  #folder p a b,
  #folder p a em,
  #folder p a i {
    color: #dd3333 !important; }

.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; }
  .folder a {
    color: #dd3333 !important; }
    .folder a span,
    .folder a b,
    .folder a em,
    .folder a i {
      color: #dd3333 !important; }
  .folder .descrimgfold a {
    color: #0a0a0a !important; }
    .folder .descrimgfold a span,
    .folder .descrimgfold a b,
    .folder .descrimgfold a em,
    .folder .descrimgfold a i {
      color: #0a0a0a !important; }
  .folder .descrimgfold span,
  .folder .descrimgfold b,
  .folder .descrimgfold em,
  .folder .descrimgfold i {
    color: #0a0a0a !important; }

.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-folder .slick-track {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-line-pack: stretch;
      align-content: stretch; }
  .slider-img-folder .slick-track .slick-slide {
    -ms-flex-item-align: stretch;
        align-self: stretch;
    height: auto;
    -ms-flex-align: center;
        align-items: center;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
        flex-direction: column;
    -ms-flex-pack: space-evenly;
        justify-content: space-evenly; }
    .slider-img-folder .slick-track .slick-slide .img-sl-cont {
      height: 100%;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-pack: center;
          justify-content: center;
      -ms-flex-align: center;
          align-items: center; }

.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,
  .cms-toolbar, .cms-toolbar-trigger {
    display: none;
    visibility: hidden; } }

/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFwcC5jc3MiLCIuLi8uLi8uLi8uLi9ib3dlcl9jb21wb25lbnRzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9mb3VuZGF0aW9uLnNjc3MiLCJjb21wb25lbnRzL19pY29uLnNjc3MiLCIuLi8uLi8uLi8uLi9ib3dlcl9jb21wb25lbnRzL21vdGlvbi11aS9zcmMvX2NsYXNzZXMuc2NzcyIsIi4uLy4uLy4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvbW90aW9uLXVpL3NyYy9fc2V0dGluZ3Muc2NzcyIsIi4uLy4uLy4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL19nbG9iYWwuc2NzcyIsIl9zZXR0aW5ncy5zY3NzIiwiLi4vLi4vLi4vLi4vYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdXRpbC9fbWl4aW5zLnNjc3MiLCIuLi8uLi8uLi8uLi9ib3dlcl9jb21wb25lbnRzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19jbGFzc2VzLnNjc3MiLCIuLi8uLi8uLi8uLi9ib3dlcl9jb21wb25lbnRzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19yb3cuc2NzcyIsIi4uLy4uLy4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3V0aWwvX3VuaXQuc2NzcyIsIi4uLy4uLy4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2d1dHRlci5zY3NzIiwiLi4vLi4vLi4vLi4vYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fc2l6ZS5zY3NzIiwiLi4vLi4vLi4vLi4vYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fY29sdW1uLnNjc3MiLCIuLi8uLi8uLi8uLi9ib3dlcl9jb21wb25lbnRzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19wb3NpdGlvbi5zY3NzIiwiLi4vLi4vLi4vLi4vYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fbGF5b3V0LnNjc3MiLCIuLi8uLi8uLi8uLi9ib3dlcl9jb21wb25lbnRzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy91dGlsL19icmVha3BvaW50LnNjc3MiLCIuLi8uLi8uLi8uLi9ib3dlcl9jb21wb25lbnRzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy90eXBvZ3JhcGh5L19iYXNlLnNjc3MiLCIuLi8uLi8uLi8uLi9ib3dlcl9jb21wb25lbnRzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy90eXBvZ3JhcGh5L19oZWxwZXJzLnNjc3MiLCIuLi8uLi8uLi8uLi9ib3dlcl9jb21wb25lbnRzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy90eXBvZ3JhcGh5L19hbGlnbm1lbnQuc2NzcyIsIi4uLy4uLy4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3R5cG9ncmFwaHkvX3ByaW50LnNjc3MiLCIuLi8uLi8uLi8uLi9ib3dlcl9jb21wb25lbnRzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19idXR0b24uc2NzcyIsIi4uLy4uLy4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL190ZXh0LnNjc3MiLCIuLi8uLi8uLi8uLi9ib3dlcl9jb21wb25lbnRzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9mb3Jtcy9fY2hlY2tib3guc2NzcyIsIi4uLy4uLy4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL19sYWJlbC5zY3NzIiwiLi4vLi4vLi4vLi4vYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm9ybXMvX2hlbHAtdGV4dC5zY3NzIiwiLi4vLi4vLi4vLi4vYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm9ybXMvX2lucHV0LWdyb3VwLnNjc3MiLCIuLi8uLi8uLi8uLi9ib3dlcl9jb21wb25lbnRzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9mb3Jtcy9fZmllbGRzZXQuc2NzcyIsIi4uLy4uLy4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL19zZWxlY3Quc2NzcyIsIi4uLy4uLy4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL19lcnJvci5zY3NzIiwiLi4vLi4vLi4vLi4vYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fdmlzaWJpbGl0eS5zY3NzIiwiLi4vLi4vLi4vLi4vYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fZmxvYXQuc2NzcyIsIi4uLy4uLy4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2FjY29yZGlvbi5zY3NzIiwiLi4vLi4vLi4vLi4vYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fYmFkZ2Uuc2NzcyIsIi4uLy4uLy4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2JyZWFkY3J1bWJzLnNjc3MiLCIuLi8uLi8uLi8uLi9ib3dlcl9jb21wb25lbnRzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19idXR0b24tZ3JvdXAuc2NzcyIsIi4uLy4uLy4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2NhbGxvdXQuc2NzcyIsIi4uLy4uLy4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2Nsb3NlLWJ1dHRvbi5zY3NzIiwiLi4vLi4vLi4vLi4vYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fZHJpbGxkb3duLnNjc3MiLCIuLi8uLi8uLi8uLi9ib3dlcl9jb21wb25lbnRzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19kcm9wZG93bi5zY3NzIiwiLi4vLi4vLi4vLi4vYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fZHJvcGRvd24tbWVudS5zY3NzIiwiLi4vLi4vLi4vLi4vYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fZmxleC12aWRlby5zY3NzIiwiLi4vLi4vLi4vLi4vYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fbGFiZWwuc2NzcyIsIi4uLy4uLy4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX21lZGlhLW9iamVjdC5zY3NzIiwiLi4vLi4vLi4vLi4vYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fbWVudS5zY3NzIiwiLi4vLi4vLi4vLi4vYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fb2ZmLWNhbnZhcy5zY3NzIiwiLi4vLi4vLi4vLi4vYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fb3JiaXQuc2NzcyIsIi4uLy4uLy4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3BhZ2luYXRpb24uc2NzcyIsIi4uLy4uLy4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3Byb2dyZXNzLWJhci5zY3NzIiwiLi4vLi4vLi4vLi4vYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fc2xpZGVyLnNjc3MiLCIuLi8uLi8uLi8uLi9ib3dlcl9jb21wb25lbnRzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19zdGlja3kuc2NzcyIsIi4uLy4uLy4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3JldmVhbC5zY3NzIiwiLi4vLi4vLi4vLi4vYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fc3dpdGNoLnNjc3MiLCIuLi8uLi8uLi8uLi9ib3dlcl9jb21wb25lbnRzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL190YWJsZS5zY3NzIiwiLi4vLi4vLi4vLi4vYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdXRpbC9fY29sb3Iuc2NzcyIsIi4uLy4uLy4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3RhYnMuc2NzcyIsIi4uLy4uLy4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3RodW1ibmFpbC5zY3NzIiwiLi4vLi4vLi4vLi4vYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fdGl0bGUtYmFyLnNjc3MiLCIuLi8uLi8uLi8uLi9ib3dlcl9jb21wb25lbnRzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19tZW51LWljb24uc2NzcyIsIi4uLy4uLy4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3Rvb2x0aXAuc2NzcyIsIi4uLy4uLy4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3RvcC1iYXIuc2NzcyIsIi4uLy4uLy4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvbW90aW9uLXVpL3NyYy91dGlsL190cmFuc2l0aW9uLnNjc3MiLCIuLi8uLi8uLi8uLi9ib3dlcl9jb21wb25lbnRzL21vdGlvbi11aS9zcmMvdXRpbC9fa2V5ZnJhbWUuc2NzcyIsIi4uLy4uLy4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvbW90aW9uLXVpL3NyYy90cmFuc2l0aW9ucy9fc2xpZGUuc2NzcyIsIi4uLy4uLy4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvbW90aW9uLXVpL3NyYy90cmFuc2l0aW9ucy9fZmFkZS5zY3NzIiwiLi4vLi4vLi4vLi4vYm93ZXJfY29tcG9uZW50cy9tb3Rpb24tdWkvc3JjL2VmZmVjdHMvX2hpbmdlLnNjc3MiLCIuLi8uLi8uLi8uLi9ib3dlcl9jb21wb25lbnRzL21vdGlvbi11aS9zcmMvdHJhbnNpdGlvbnMvX2hpbmdlLnNjc3MiLCIuLi8uLi8uLi8uLi9ib3dlcl9jb21wb25lbnRzL21vdGlvbi11aS9zcmMvdHJhbnNpdGlvbnMvX3pvb20uc2NzcyIsIi4uLy4uLy4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvbW90aW9uLXVpL3NyYy90cmFuc2l0aW9ucy9fc3Bpbi5zY3NzIiwiLi4vLi4vLi4vLi4vYm93ZXJfY29tcG9uZW50cy9tb3Rpb24tdWkvc3JjL3V0aWwvX2FuaW1hdGlvbi5zY3NzIiwidXRpbHMvX21peGlucy5zY3NzIiwiYWRkb25zL19mbGV4LnNjc3MiLCJhZGRvbnMvX2dsb2JhbC5zY3NzIiwiY29tcG9uZW50cy9faWNvbW9vbi5zY3NzIiwiY29tcG9uZW50cy9faWNvbW9vbl9pY29ucy5zY3NzIiwiYWRkb25zL19saXN0cy5zY3NzIiwiYWRkb25zL19uaXZvX2FkZG9uLnNjc3MiLCJhZGRvbnMvX2Zvcm1zLnNjc3MiLCJhZGRvbnMvX3BhZ2luYXRpb24uc2NzcyIsImNvbXBvbmVudHMvX2FkZG9ucy5zY3NzIiwiY29tcG9uZW50cy9fZm9vdGVyLnNjc3MiLCJjb21wb25lbnRzL19uYXYuc2NzcyIsImNvbXBvbmVudHMvX3RvcG1lZGlhLnNjc3MiLCJjb21wb25lbnRzL193YWxsZ3JpZC5zY3NzIiwiY29tcG9uZW50cy9fZ3JpZDE1LnNjc3MiLCJjb21wb25lbnRzL3NsaWNrLnNjc3MiLCJjb21wb25lbnRzL3NsaWNrLXRoZW1lLnNjc3MiLCJjb21wb25lbnRzL19jb250ZW50cy5zY3NzIiwiYWRkb25zL190YWJsZXMuc2NzcyIsImNvbXBvbmVudHMvaGlzdG9yeS5zY3NzIiwiY29tcG9uZW50cy9fc2VhcmNoLnNjc3MiLCJjb21wb25lbnRzL19sZWdpc2xldHVkZS5zY3NzIiwiY29tcG9uZW50cy9fdmlzaXRlcy5zY3NzIiwiY29tcG9uZW50cy9yc3Quc2NzcyIsImNvbXBvbmVudHMvY29va2llY29uc2VudC5zY3NzIiwiY29tcG9uZW50cy9fdGFibGF0dXJlLnNjc3MiLCJjb21wb25lbnRzL2V4cG8vX2hlYWRlci5zY3NzIiwiY29tcG9uZW50cy9leHBvL19kb3RuYXYuc2NzcyIsImNvbXBvbmVudHMvX2V4cG8uc2NzcyIsImFkZG9ucy9fZmx5aW5nc2xpY2suc2NzcyIsImFkZG9ucy9fdHlwZS5zY3NzIiwidXRpbHMvX3ByaW50LnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsaUJBQWlCO0FDQWpCOzs7OztHQUtHO0FDTEgsMkRBQVk7QUNFWjtFQUNFLDJCQ2tCYztFRGpCZCxtQ0NpQ2UsRURoQ2hCOztBRStNQyw0RUFBNEU7QUFFNUU7Ozs7S0FJRztBQUVIO0VBQ0Usd0JBQXVCO0VBQUUsT0FBTztFQUNoQywyQkFBMEI7RUFBRSxPQUFPO0VBQ25DLCtCQUE4QjtFQUFFLE9BQU8sRUFDeEM7O0FBRUQ7O0tBRUc7QUFFSDtFQUNFLFVBQVMsRUFDVjs7QUFFRDtrRkFDZ0Y7QUFFaEY7Ozs7O0tBS0c7QUFFSDs7Ozs7Ozs7Ozs7OztFQWFFLGVBQWMsRUFDZjs7QUFFRDs7O0tBR0c7QUFFSDs7OztFQUlFLHNCQUFxQjtFQUFFLE9BQU87RUFDOUIseUJBQXdCO0VBQUUsT0FBTyxFQUNsQzs7QUFFRDs7O0tBR0c7QUFFSDtFQUNFLGNBQWE7RUFDYixVQUFTLEVBQ1Y7O0FBRUQ7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SG1ELEVObUY5Qzs7QUFNSDtFTS9ESixnQkRiZ0MsRUw4RTNCOztBQXBCRDtFSXRFSixpQkNlcUQsRUx5RGhEOztBQUlDO0VNM0VKLG1CQUFrQjtFQUNsQixnQkFIbUQsRU4rRTlDOztBQUVEO0VNL0VKLG1CQUFrQjtFQUNsQixpQkFIbUQsRU5tRjlDOztBQU1IO0VNL0RKLHNCRFZxRCxFTDJFaEQ7O0FBcEJEO0VJdEVKLFdDZXFELEVMeURoRDs7QUFJQztFTTNFSixtQkFBa0I7RUFDbEIsVUFIbUQsRU4rRTlDOztBQUVEO0VNL0VKLG1CQUFrQjtFQUNsQixXQUhtRCxFTm1GOUM7O0FBTUg7RU0vREosdUJEVnFELEVMMkVoRDs7QUFwQkQ7RUl0RUosaUJDZXFELEVMeURoRDs7QUFJQztFTTNFSixtQkFBa0I7RUFDbEIsZ0JBSG1ELEVOK0U5Qzs7QUFFRDtFTS9FSixtQkFBa0I7RUFDbEIsaUJBSG1ELEVObUY5Qzs7QUFNSDtFTS9ESixpQkRWcUQsRUwyRWhEOztBQXBCRDtFSXRFSixpQkNlcUQsRUx5RGhEOztBQUlDO0VNM0VKLG1CQUFrQjtFQUNsQixnQkFIbUQsRU4rRTlDOztBQUVEO0VNL0VKLG1CQUFrQjtFQUNsQixpQkFIbUQsRU5tRjlDOztBQU1IO0VNL0RKLHVCRFZxRCxFTDJFaEQ7O0FBcEJEO0VJdEVKLFdDZXFELEVMeURoRDs7QUFJQztFTTNFSixtQkFBa0I7RUFDbEIsVUFIbUQsRU4rRTlDOztBQUVEO0VNL0VKLG1CQUFrQjtFQUNsQixXQUhtRCxFTm1GOUM7O0FBTUg7RU0vREosdUJEVnFELEVMMkVoRDs7QUFwQkQ7RUl0RUosaUJDZXFELEVMeURoRDs7QUFJQztFTTNFSixtQkFBa0I7RUFDbEIsZ0JBSG1ELEVOK0U5Qzs7QUFFRDtFTS9FSixtQkFBa0I7RUFDbEIsaUJBSG1ELEVObUY5Qzs7QUFNSDtFTS9ESixpQkRWcUQsRUwyRWhEOztBQXBCRDtFSXRFSixpQkNlcUQsRUx5RGhEOztBQUlDO0VNM0VKLG1CQUFrQjtFQUNsQixnQkFIbUQsRU4rRTlDOztBQUVEO0VNL0VKLG1CQUFrQjtFQUNsQixpQkFIbUQsRU5tRjlDOztBQU1IO0VNL0RKLHVCRFZxRCxFTDJFaEQ7O0FBcEJEO0VJdEVKLFdDZXFELEVMeURoRDs7QUFJQztFTTNFSixtQkFBa0I7RUFDbEIsVUFIbUQsRU4rRTlDOztBQUVEO0VNL0VKLG1CQUFrQjtFQUNsQixXQUhtRCxFTm1GOUM7O0FBTUg7RU0vREosdUJEVnFELEVMMkVoRDs7QUFwQkQ7RUl0RUosaUJDZXFELEVMeURoRDs7QUFJQztFTTNFSixtQkFBa0I7RUFDbEIsZ0JBSG1ELEVOK0U5Qzs7QUFFRDtFTS9FSixtQkFBa0I7RUFDbEIsaUJBSG1ELEVObUY5Qzs7QUFNSDtFTS9ESixpQkRWcUQsRUwyRWhEOztBQXBCRDtFSXRFSixpQkNlcUQsRUx5RGhEOztBQUlDO0VNM0VKLG1CQUFrQjtFQUNsQixnQkFIbUQsRU4rRTlDOztBQUVEO0VNL0VKLG1CQUFrQjtFQUNsQixpQkFIbUQsRU5tRjlDOztBQU1IO0VNL0RKLHVCRFZxRCxFTDJFaEQ7O0FBcEJEO0VJdEVKLFlDZXFELEVMeURoRDs7QUFnQkQ7RU0vREosdUJEVnFELEVMMkVoRDs7QUFLRDtFTzVGRixZQUF1QjtFQUN2QixZVm1GdUQsRVV0RXhEO0VQOEVHO0lPeEZBLFlBQVcsRUFDWjtFUHVGQztJT3BGQSxZQUFXLEVBQ1o7RVBtRkM7SU9oRkEsWUFBVyxFQUNaOztBQWRIO0VBQ0UsV0FBdUI7RUFDdkIsWVZtRnVELEVVdEV4RDtFUDhFRztJT3hGQSxZQUFXLEVBQ1o7RVB1RkM7SU9wRkEsWUFBVyxFQUNaO0VBRUQ7SUFDRSxZQUFXLEVBQ1o7O0FQK0VDO0VPNUZGLGlCQUF1QjtFQUN2QixZVm1GdUQsRVV0RXhEO0VQOEVHO0lPeEZBLFlBQVcsRUFDWjtFUHVGQztJT3BGQSxZQUFXLEVBQ1o7RVBtRkM7SU9oRkEsWUFBVyxFQUNaOztBQWRIO0VBQ0UsV0FBdUI7RUFDdkIsWVZtRnVELEVVdEV4RDtFQVhDO0lBQ0UsWUFBVyxFQUNaO0VQdUZDO0lPcEZBLFlBQVcsRUFDWjtFQUVEO0lBQ0UsWUFBVyxFQUNaOztBUCtFQztFTzVGRixXQUF1QjtFQUN2QixZVm1GdUQsRVV0RXhEO0VQOEVHO0lPeEZBLFlBQVcsRUFDWjtFQUVEO0lBQ0UsWUFBVyxFQUNaO0VQbUZDO0lPaEZBLFlBQVcsRUFDWjs7QVArRUM7RU81RkYsaUJBQXVCO0VBQ3ZCLFlWbUZ1RCxFVXRFeEQ7RVA4RUc7SU94RkEsWUFBVyxFQUNaO0VQdUZDO0lPcEZBLFlBQVcsRUFDWjtFUG1GQztJT2hGQSxZQUFXLEVBQ1o7O0FQcUZEO0VHekdGLGdCQUFlO0VBQ2YsaUJBQWdCLEVIeUdrQzs7QUFEaEQ7RUFJSSxlQUFjO0VBQ2QsZ0JBQWUsRUFDaEI7O0FBTUQ7RUc1R0osd0JBRDhCO0VBRTlCLHlCQUY4QixFSDZHK0I7O0FBSTNEO0VNaEhBLFlBQVc7RUFDWCxrQkFBaUI7RUFDakIsbUJBQWtCLEVOZ0hqQjs7QUFHRDs7O0VNMUdGLGlCQUFnQjtFQUNoQixlQUFjO0VBQ2QsZ0JBQWU7RUFDZixZQUFXLEVOMkdSOztBUU1EO0VSOURFO0lJdEVKLGdCQ2VxRCxFTHlEaEQ7RUFJQztJTTNFSixtQkFBa0I7SUFDbEIsZUFIbUQsRU4rRTlDO0VBRUQ7SU0vRUosbUJBQWtCO0lBQ2xCLGdCQUhtRCxFTm1GOUM7RUFNSDtJTS9ESixnQkRiZ0MsRUw4RTNCO0VBcEJEO0lJdEVKLGlCQ2VxRCxFTHlEaEQ7RUFJQztJTTNFSixtQkFBa0I7SUFDbEIsZ0JBSG1ELEVOK0U5QztFQUVEO0lNL0VKLG1CQUFrQjtJQUNsQixpQkFIbUQsRU5tRjlDO0VBTUg7SU0vREosc0JEVnFELEVMMkVoRDtFQXBCRDtJSXRFSixXQ2VxRCxFTHlEaEQ7RUFJQztJTTNFSixtQkFBa0I7SUFDbEIsVUFIbUQsRU4rRTlDO0VBRUQ7SU0vRUosbUJBQWtCO0lBQ2xCLFdBSG1ELEVObUY5QztFQU1IO0lNL0RKLHVCRFZxRCxFTDJFaEQ7RUFwQkQ7SUl0RUosaUJDZXFELEVMeURoRDtFQUlDO0lNM0VKLG1CQUFrQjtJQUNsQixnQkFIbUQsRU4rRTlDO0VBRUQ7SU0vRUosbUJBQWtCO0lBQ2xCLGlCQUhtRCxFTm1GOUM7RUFNSDtJTS9ESixpQkRWcUQsRUwyRWhEO0VBcEJEO0lJdEVKLGlCQ2VxRCxFTHlEaEQ7RUFJQztJTTNFSixtQkFBa0I7SUFDbEIsZ0JBSG1ELEVOK0U5QztFQUVEO0lNL0VKLG1CQUFrQjtJQUNsQixpQkFIbUQsRU5tRjlDO0VBTUg7SU0vREosdUJEVnFELEVMMkVoRDtFQXBCRDtJSXRFSixXQ2VxRCxFTHlEaEQ7RUFJQztJTTNFSixtQkFBa0I7SUFDbEIsVUFIbUQsRU4rRTlDO0VBRUQ7SU0vRUosbUJBQWtCO0lBQ2xCLFdBSG1ELEVObUY5QztFQU1IO0lNL0RKLHVCRFZxRCxFTDJFaEQ7RUFwQkQ7SUl0RUosaUJDZXFELEVMeURoRDtFQUlDO0lNM0VKLG1CQUFrQjtJQUNsQixnQkFIbUQsRU4rRTlDO0VBRUQ7SU0vRUosbUJBQWtCO0lBQ2xCLGlCQUhtRCxFTm1GOUM7RUFNSDtJTS9ESixpQkRWcUQsRUwyRWhEO0VBcEJEO0lJdEVKLGlCQ2VxRCxFTHlEaEQ7RUFJQztJTTNFSixtQkFBa0I7SUFDbEIsZ0JBSG1ELEVOK0U5QztFQUVEO0lNL0VKLG1CQUFrQjtJQUNsQixpQkFIbUQsRU5tRjlDO0VBTUg7SU0vREosdUJEVnFELEVMMkVoRDtFQXBCRDtJSXRFSixXQ2VxRCxFTHlEaEQ7RUFJQztJTTNFSixtQkFBa0I7SUFDbEIsVUFIbUQsRU4rRTlDO0VBRUQ7SU0vRUosbUJBQWtCO0lBQ2xCLFdBSG1ELEVObUY5QztFQU1IO0lNL0RKLHVCRFZxRCxFTDJFaEQ7RUFwQkQ7SUl0RUosaUJDZXFELEVMeURoRDtFQUlDO0lNM0VKLG1CQUFrQjtJQUNsQixnQkFIbUQsRU4rRTlDO0VBRUQ7SU0vRUosbUJBQWtCO0lBQ2xCLGlCQUhtRCxFTm1GOUM7RUFNSDtJTS9ESixpQkRWcUQsRUwyRWhEO0VBcEJEO0lJdEVKLGlCQ2VxRCxFTHlEaEQ7RUFJQztJTTNFSixtQkFBa0I7SUFDbEIsZ0JBSG1ELEVOK0U5QztFQUVEO0lNL0VKLG1CQUFrQjtJQUNsQixpQkFIbUQsRU5tRjlDO0VBTUg7SU0vREosdUJEVnFELEVMMkVoRDtFQXBCRDtJSXRFSixZQ2VxRCxFTHlEaEQ7RUFnQkQ7SU0vREosdUJEVnFELEVMMkVoRDtFT3hGTDtJQUNFLFlBQXVCO0lBQ3ZCLFlWbUZ1RCxFVXRFeEQ7SVA4RUc7TU94RkEsWUFBVyxFQUNaO0lQdUZDO01PcEZBLFlBQVcsRUFDWjtJQUVEO01BQ0UsWUFBVyxFQUNaO0VQK0VDO0lPNUZGLFdBQXVCO0lBQ3ZCLFlWbUZ1RCxFVXRFeEQ7SVA4RUc7TU94RkEsWUFBVyxFQUNaO0lQdUZDO01PcEZBLFlBQVcsRUFDWjtJUG1GQztNT2hGQSxZQUFXLEVBQ1o7RUFkSDtJQUNFLGlCQUF1QjtJQUN2QixZVm1GdUQsRVV0RXhEO0lBWEM7TUFDRSxZQUFXLEVBQ1o7SVB1RkM7TU9wRkEsWUFBVyxFQUNaO0lBRUQ7TUFDRSxZQUFXLEVBQ1o7RUFkSDtJQUNFLFdBQXVCO0lBQ3ZCLFlWbUZ1RCxFVXRFeEQ7SUFYQztNQUNFLFlBQVcsRUFDWjtJUHVGQztNT3BGQSxZQUFXLEVBQ1o7SUFFRDtNQUNFLFlBQVcsRUFDWjtFQWRIO0lBQ0UsV0FBdUI7SUFDdkIsWVZtRnVELEVVdEV4RDtJQVhDO01BQ0UsWUFBVyxFQUNaO0lQdUZDO01PcEZBLFlBQVcsRUFDWjtJUG1GQztNT2hGQSxZQUFXLEVBQ1o7RUFkSDtJQUNFLGlCQUF1QjtJQUN2QixZVm1GdUQsRVV0RXhEO0lBWEM7TUFDRSxZQUFXLEVBQ1o7SVB1RkM7TU9wRkEsWUFBVyxFQUNaO0lBRUQ7TUFDRSxZQUFXLEVBQ1o7RVBzRkM7SUcxR0osZ0JBQWU7SUFDZixpQkFBZ0IsRUh5R2tDO0VBRGhEO0lBSUksZUFBYztJQUNkLGdCQUFlLEVBQ2hCO0VBR0g7SUd6R0Ysd0JBRDhCO0lBRTlCLHlCQUY4QixFSDZHK0I7RUFJM0Q7SU1oSEEsWUFBVztJQUNYLGtCQUFpQjtJQUNqQixtQkFBa0IsRU5nSGpCO0VBR0Q7OztJTTFHRixpQkFBZ0I7SUFDaEIsZUFBYztJQUNkLGdCQUFlO0lBQ2YsWUFBVyxFTjJHUixFQUFBOztBUU1EO0VSOURFO0lJdEVKLGdCQ2VxRCxFTHlEaEQ7RUFJQztJTTNFSixtQkFBa0I7SUFDbEIsZUFIbUQsRU4rRTlDO0VBRUQ7SU0vRUosbUJBQWtCO0lBQ2xCLGdCQUhtRCxFTm1GOUM7RUFNSDtJTS9ESixnQkRiZ0MsRUw4RTNCO0VBcEJEO0lJdEVKLGlCQ2VxRCxFTHlEaEQ7RUFJQztJTTNFSixtQkFBa0I7SUFDbEIsZ0JBSG1ELEVOK0U5QztFQUVEO0lNL0VKLG1CQUFrQjtJQUNsQixpQkFIbUQsRU5tRjlDO0VBTUg7SU0vREosc0JEVnFELEVMMkVoRDtFQXBCRDtJSXRFSixXQ2VxRCxFTHlEaEQ7RUFJQztJTTNFSixtQkFBa0I7SUFDbEIsVUFIbUQsRU4rRTlDO0VBRUQ7SU0vRUosbUJBQWtCO0lBQ2xCLFdBSG1ELEVObUY5QztFQU1IO0lNL0RKLHVCRFZxRCxFTDJFaEQ7RUFwQkQ7SUl0RUosaUJDZXFELEVMeURoRDtFQUlDO0lNM0VKLG1CQUFrQjtJQUNsQixnQkFIbUQsRU4rRTlDO0VBRUQ7SU0vRUosbUJBQWtCO0lBQ2xCLGlCQUhtRCxFTm1GOUM7RUFNSDtJTS9ESixpQkRWcUQsRUwyRWhEO0VBcEJEO0lJdEVKLGlCQ2VxRCxFTHlEaEQ7RUFJQztJTTNFSixtQkFBa0I7SUFDbEIsZ0JBSG1ELEVOK0U5QztFQUVEO0lNL0VKLG1CQUFrQjtJQUNsQixpQkFIbUQsRU5tRjlDO0VBTUg7SU0vREosdUJEVnFELEVMMkVoRDtFQXBCRDtJSXRFSixXQ2VxRCxFTHlEaEQ7RUFJQztJTTNFSixtQkFBa0I7SUFDbEIsVUFIbUQsRU4rRTlDO0VBRUQ7SU0vRUosbUJBQWtCO0lBQ2xCLFdBSG1ELEVObUY5QztFQU1IO0lNL0RKLHVCRFZxRCxFTDJFaEQ7RUFwQkQ7SUl0RUosaUJDZXFELEVMeURoRDtFQUlDO0lNM0VKLG1CQUFrQjtJQUNsQixnQkFIbUQsRU4rRTlDO0VBRUQ7SU0vRUosbUJBQWtCO0lBQ2xCLGlCQUhtRCxFTm1GOUM7RUFNSDtJTS9ESixpQkRWcUQsRUwyRWhEO0VBcEJEO0lJdEVKLGlCQ2Vx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SG1ELEVOK0U5QztFQUVEO0lNL0VKLG1CQUFrQjtJQUNsQixpQkFIbUQsRU5tRjlDO0VBTUg7SU0vREosaUJEVnFELEVMMkVoRDtFQXBCRDtJSXRFSixpQkNlcUQsRUx5RGhEO0VBSUM7SU0zRUosbUJBQWtCO0lBQ2xCLGdCQUhtRCxFTitFOUM7RUFFRDtJTS9FSixtQkFBa0I7SUFDbEIsaUJBSG1ELEVObUY5QztFQU1IO0lNL0RKLHVCRFZxRCxFTDJFaEQ7RUFwQkQ7SUl0RUosV0NlcUQsRUx5RGhEO0VBSUM7SU0zRUosbUJBQWtCO0lBQ2xCLFVBSG1ELEVOK0U5QztFQUVEO0lNL0VKLG1CQUFrQjtJQUNsQixXQUhtRCxFTm1GOUM7RUFNSDtJTS9ESix1QkRWcUQsRUwyRWhEO0VBcEJEO0lJdEVKLGlCQ2VxRCxFTHlEaEQ7RUFJQztJTTNFSixtQkFBa0I7SUFDbEIsZ0JBSG1ELEVOK0U5QztFQUVEO0lNL0VKLG1CQUFrQjtJQUNsQixpQkFIbUQsRU5tRjlDO0VBTUg7SU0vREosaUJEVnFELEVMMkVoRDtFQXBCRDtJSXRFSixpQkNlcUQsRUx5RGhEO0VBSUM7SU0zRUosbUJBQWtCO0lBQ2xCLGdCQUhtRCxFTitFOUM7RUFFRDtJTS9FSixtQkFBa0I7SUFDbEIsaUJBSG1ELEVObUY5QztFQU1IO0lNL0RKLHVCRFZxRCxFTDJFaEQ7RUFwQkQ7SUl0RUosV0NlcUQsRUx5RGhEO0VBSUM7SU0zRUosbUJBQWtCO0lBQ2xCLFVBSG1ELEVOK0U5QztFQUVEO0lNL0VKLG1CQUFrQjtJQUNsQixXQUhtRCxFTm1GOUM7RUFNSDtJTS9ESix1QkRWcUQsRUwyRWhEO0VBcEJEO0lJdEVKLGlCQ2VxRCxFTHlEaEQ7RUFJQztJTTNFSixtQkFBa0I7SUFDbEIsZ0JBSG1ELEVOK0U5QztFQUVEO0lNL0VKLG1CQUFrQjtJQUNsQixpQkFIbUQsRU5tRjlDO0VBTUg7SU0vREosaUJEVnFELEVMMkVoRDtFQXBCRDtJSXRFSixpQkNlcUQsRUx5RGhEO0VBSUM7SU0zRUosbUJBQWtCO0lBQ2xCLGdCQUhtRCxFTitFOUM7RUFFRDtJ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QlhoS3lCO0VXaUt6QixpQlhsS21CLEVXd0twQjtFQW5CRDs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0lBZ0JJLFlYblBZO0lXb1BaLGVBQWMsRUFDZjs7QVo4Q0g7RVl0Q1EsZ0JQck8rQyxFT3NPaEQ7OztBQXZFUDs7OztFQXNFUSxtQlByTytDLEVPc09oRDs7O0FBRkQ7Ozs7Ozs7RUFDRSxxQlByTytDLEVPc09oRDs7O0FBRkQ7Ozs7Ozs7OztFQUNFLG9CUHJPK0MsRU9zT2hEOzs7QUFwRVA7Ozs7Ozs7Ozs7O0VBbUVRLHFCUHJPK0MsRU9zT2hEOztBQUZEO0VBQ0UsZ0JQck8rQyxFT3NPaEQ7O0FEcEtMO0VYeU1GO0lZdENRLG9CUHJPK0MsRU9zT2hEOztFQUZEOzs7O0lBQ0UsbUJQck8rQyxFT3NPaEQ7O0VBRkQ7Ozs7Ozs7SUFDRSxvQlByTytDLEVPc09oRDs7RUFGRDs7Ozs7Ozs7O0lBQ0UsbUJQck8rQyxFT3NPaEQ7O0VBcEVQOzs7Ozs7Ozs7OztJQW1FUSxvQlByTytDLEVPc09oRDtFQUZEO0lBQ0UsZ0JQck8rQyxFT3NPaEQsRUFBQTs7QURwS0w7RVh5TUY7SVl0Q1EsZ0JQck8rQyxFT3NPaEQsRUFBQTs7QVpWUDtFWWlCRSxlWDdRbUI7RVc4UW5CLHNCWHhLeUI7RVd5S3pCLHFCQUFvQjtFQUNwQixnQkFBZSxFQWFoQjtFQWpCRDtJQVFJLGVYL0syRCxFV21MNUQ7RUFaSDtJQWVJLFVBQVMsRUFDVjs7QVoyRkg7RVl0RkUsaUJQalFxRDtFT2tRckQsVUFBUztFQUNULGdCQUFlO0VBQ2YsY0FBYTtFQUNiLDhCWDdSYztFVzhSZCxlQUFjO0VBQ2QscUJYN0x5QjtFVzhMekIsWUFBVyxFQUNaOztBQUdEOzs7RUFHRSxpQlhwTnNCO0VXcU50QixvQlhwTjBCO0VXcU4xQiw2QlhuTXlCLEVXb00xQjs7QUFHRDtFQUNFLG1CQUFrQixFQUNuQjs7QUFHRDtFQUNFLHNCWDlNa0I7RVcrTWxCLHFCWDdNc0IsRVc4TXZCOztBQUdEO0VBQ0UscUJYbE5zQixFV21OdkI7O0FBR0Q7RUFF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NkJBQTRCLEVIRTNCOztBMURESDtFMkQrQkUsVzNEL0JxQyxFMERhcEM7O0FBZEQ7RUNnQ0EsK0NHckNtQztFSHFDbkMsMEIzRDVCbUQ7TTJENEJuRCxzQjNENUJtRDtFK0RHakQsd0NBQXVDO0VBQ3ZDLFdBQTJCLEVMTjVCOztBMURFSDtFMkQ0QkUsNENHVjRDO0VDSjFDLFdBQTJCLEVMSjVCOztBMURUSDtFMkQyQkUsK0NHcENxQztFSG9DckMsNEIzRDNCcUQ7TTJEMkJyRCx3QjNEM0JxRDtFK0RFbkQsd0NBQXVDO0VBQ3ZDLFdBQTJCLEVMTjVCOztBQVVEO0VDb0JBLDRDR1Y0QztFQ0oxQyxXQUEyQixFTEo1Qjs7QUFkRDtFQ2dDQSw4Q0duQ2lDO0VIbUNqQyw2QjNEMUJzRDtNMkQwQnRELHlCM0QxQnNEO0UrRENwRCx3Q0FBdUM7RUFDdkMsV0FBMkIsRUxONUI7O0ExRElIO0UyRDBCRSw0Q0dWNEM7RUNKMUMsV0FBMkIsRUxKNUI7O0ExRFBIO0UyRHlCRSw4Q0dsQytCO0VIa0MvQiwyQjNEekJvRDtNMkR5QnBELHVCM0R6Qm9EO0UrREFsRCx3Q0FBdUM7RUFDdkMsV0FBMkIsRUxONUI7O0ExREtIO0UyRHlCRSw0Q0dWNEM7RUNKMUMsV0FBMkIsRUxKNUI7O0ExRE5IO0UyRHdCRSwrQ0dyQ21DO0VIcUNuQyw2QkdDZTtNSERmLHlCR0NlO0VDMUJiLHdDQUF1QztFQUN2QyxXQUEyQixFTE41Qjs7QUFVRDtFQ29CQSw0Q0dWNEM7RUNKMUMsV0FBMkIsRUxKNUI7O0FBZEQ7RUNnQ0EsK0NHcENxQztFSG9DckMsNkJHQ2U7TUhEZix5QkdDZTtFQzFCYix3Q0FBdUM7RUFDdkMsV0FBMkIsRUxONUI7O0ExRE9IO0UyRHVCRSw0Q0dWNEM7RUNKMUMsV0FBMkIsRUxKNUI7O0ExREpIO0UyRHNCRSw0Q0dSOEM7RUhROUMsMEIzRHRCbUQ7TTJEc0JuRCxzQjNEdEJtRDtFK0RIakQsd0NBQXVDO0VBQ3ZDLFdBQThCLEVMTi9COztBMURRSDtFMkRzQkUsK0NHckNtQztFQ3VCakMsV0FBOEIsRUxKL0I7O0ExREhIO0UyRHFCRSw0Q0dSOEM7RUhROUMsNEIzRHJCcUQ7TTJEcUJyRCx3QjNEckJxRDtFK0RKbkQsd0NBQXVDO0VBQ3ZDLFdBQThCLEVMTi9COztBMURTSDtFMkRxQkUsK0NHcENxQztFQ3NCbkMsV0FBOEIsRUxKL0I7O0ExREZIO0UyRG9CRSw0Q0dSOEM7RUhROUMsNkIzRHBCc0Q7TTJEb0J0RCx5QjNEcEJzRDtFK0RMcEQsd0NBQXVDO0VBQ3ZDLFdBQThCLEVMTi9COztBQVVEO0VDb0JBLDhDR25DaUM7RUNxQi9CLFdBQThCLEVMSi9COztBQWREO0VDZ0NBLDRDR1I4QztFSFE5QywyQjNEbkJvRDtNMkRtQnBELHVCM0RuQm9EO0UrRE5sRCx3Q0FBdUM7RUFDdkMsV0FBOEIsRUxOL0I7O0ExRFdIO0UyRG1CRSw4Q0dsQytCO0VDb0I3QixXQUE4QixFTEovQjs7QTFEQUg7RTJEa0JFLDRDR1I4QztFSFE5Qyw2QkdDZTtNSERmLHlCR0NlO0VDMUJiLHdDQUF1QztFQUN2QyxXQUE4QixFTE4vQjs7QTFEWUg7RTJEa0JFLCtDR3JDbUM7RUN1QmpDLFdBQThCLEVMSi9COztBMURDSDtFMkRpQkUsNENHUjhDO0VIUTlDLDZCR0NlO01IRGYseUJHQ2U7RUMxQmIsd0NBQXVDO0VBQ3ZDLFdBQThCLEVMTi9COztBQVVEO0VDb0JBLCtDR3BDcUM7RUNzQm5DLFdBQThCLEVMSi9COztBMURJSDtFMkRjRSwwQkFGeUI7TUFFekIsc0JBRnlCO0VLM0J2Qix3Q0FBdUM7RUFDdkMsV0FBMkIsRU5GNUI7O0FBVUQ7RUNvQkEsd0JBRnlCO01BRXpCLG9CQUZ5QjtFS2hCdkIsV0FBMkIsRU5BNUI7O0ExREtIO0UyRGFFLDBCQUZ5QjtNQUV6QixzQkFGeUI7RUszQnZCLHdDQUF1QztFQUN2QyxXQUEyQixFTkY1Qjs7QTFEaUJIO0UyRGFFLHdCQUZ5QjtNQUV6QixvQkFGeUI7RUtoQnZCLFdBQTJCLEVOQTVCOztBMURNSDtFMkRZRSx3QkFGeUI7TUFFekIsb0JBRnlCO0VLM0J2Qix3Q0FBdUM7RUFDdkMsV0FBOEIsRU5GL0I7O0Ex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Q0Q7RUFDSSxzQkFBcUI7RUFDckIsYUFBWTtFQUNaLFlBQVU7RUFDVixtQkFBa0IsRUFPckI7RUFYRDtJQU1RLG1CQUFrQjtJQUNsQixTQUFPO0lBQ1AsVUFBUTtJOUI5Q1oscUNBQWdDO0lBQ2hDLGlDQUE0QixFOEIrQzNCOztBQUVMO0VBRVEsc0JBQW9CLEVBSXZCO0VBTkw7SUFJWSxlOUZ6SUcsRThGMElOOztBQU1MO0VBQ0ksWUFBVTtFQUNWLGVBQWM7RUFDZCxXQUFVO0VBQ1Ysa0IxRnBJaUQ7RTBGcUlqRCxlQUFjO0VBQ2QsdUM5RnZKTyxFOEZ3SlY7O0FBVEw7RUFjWSxrQkFBaUI7RUFDakIsbUJBQWtCLEVBQ3JCOztBQWhCVDtFQXNCWSxrQjFGcEo2QztFMEZxSjdDLHVDOUZ0S0csRThGdUtOOztBQUdEO0VBQ0ksa0IxRjFKNkM7RTBGMko3Qyx1QzlGNUtHLEU4RjZLTjs7QUFLRDtFQUNJLFVBQVMsRUFDWjs7QUFyQ1Q7RUF5Q1ksV0FBVSxFQUNiOztBQTFDVDtFQThDWSxXQUFVLEVBQ2I7O0FBR0Q7RUFDSSxXQUFVLEVBQ2I7O0FBR0Q7RUFDSSxZQUFXLEVBQ2Q7O0FBekRUO0VBK0RZLGVBQWMsRUFDakI7O0FBaEVUO0VBbUVnQixrQkFBaUIsRUFDcEI7O0FBSUw7RUFDSSxpQkFBZ0IsRUFDbkI7O0FBRUc7RUFDSSxvQkFBbUIsRUFDdEI7O0FBOUViO0VBbUZZLFlBQVcsRUFDZDs7QUFwRlQ7RUF1RmdCLGVBQWMsRUFDakI7O0FBS2I7O0dBRUc7QXBHOHZXSDtFb0cxdldRLGdCQUFlO0VBQ2YsZTlGaFBLLEU4RmlQUjs7QUFHTDtFQUNJLFlBQVcsRUFDZDs7QUFHRDtFQUNJLGFBQVcsRUFDZDs7QUFDRDtFOUJuTEkseUJBQWtDLEU4QnFMckM7O0FDaFVEO0VBQ0U7Ozs7SUFJRSxjQUFhO0lBQ2IsbUJBQWtCLEVBQ25CLEVBQUEiLCJmaWxlIjoiYXBwLmNzcyIsInNvdXJjZXNDb250ZW50IjpbIkBjaGFyc2V0IFwiVVRGLThcIjtcbi8qKlxuICogRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuICogVmVyc2lvbiA2LjIuMVxuICogZm91bmRhdGlvbi56dXJiLmNvbVxuICogTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG4gKi9cbkBpbXBvcnQgdXJsKGh0dHA6Ly93ZWxvdmVpY29uZm9udHMuY29tL2FwaS8/ZmFtaWx5PWVudHlwbyk7XG4uc2xpZGUtaW4tZG93bi5tdWktZW50ZXIsIC5zbGlkZS1pbi1sZWZ0Lm11aS1lbnRlciwgLnNsaWRlLWluLXVwLm11aS1lbnRlciwgLnNsaWRlLWluLXJpZ2h0Lm11aS1lbnRlciwgLnNsaWRlLW91dC1kb3duLm11aS1sZWF2ZSwgLnNsaWRlLW91dC1yaWdodC5tdWktbGVhdmUsIC5zbGlkZS1vdXQtdXAubXVpLWxlYXZlLCAuc2xpZGUtb3V0LWxlZnQubXVpLWxlYXZlLCAuZmFkZS1pbi5tdWktZW50ZXIsIC5mYWRlLW91dC5tdWktbGVhdmUsIC5oaW5nZS1pbi1mcm9tLXRvcC5tdWktZW50ZXIsIC5oaW5nZS1pbi1mcm9tLXJpZ2h0Lm11aS1lbnRlciwgLmhpbmdlLWluLWZyb20tYm90dG9tLm11aS1lbnRlciwgLmhpbmdlLWluLWZyb20tbGVmdC5tdWktZW50ZXIsIC5oaW5nZS1pbi1mcm9tLW1pZGRsZS14Lm11aS1lbnRlciwgLmhpbmdlLWluLWZyb20tbWlkZGxlLXkubXVpLWVudGVyLCAuaGluZ2Utb3V0LWZyb20tdG9wLm11aS1sZWF2ZSwgLmhpbmdlLW91dC1mcm9tLXJpZ2h0Lm11aS1sZWF2ZSwgLmhpbmdlLW91dC1mcm9tLWJvdHRvbS5tdWktbGVhdmUsIC5oaW5nZS1vdXQtZnJvbS1sZWZ0Lm11aS1sZWF2ZSwgLmhpbmdlLW91dC1mcm9tLW1pZGRsZS14Lm11aS1sZWF2ZSwgLmhpbmdlLW91dC1mcm9tLW1pZGRsZS15Lm11aS1sZWF2ZSwgLnNjYWxlLWluLXVwLm11aS1lbnRlciwgLnNjYWxlLWluLWRvd24ubXVpLWVudGVyLCAuc2NhbGUtb3V0LXVwLm11aS1sZWF2ZSwgLnNjYWxlLW91dC1kb3duLm11aS1sZWF2ZSwgLnNwaW4taW4ubXVpLWVudGVyLCAuc3Bpbi1vdXQubXVpLWxlYXZlLCAuc3Bpbi1pbi1jY3cubXVpLWVudGVyLCAuc3Bpbi1vdXQtY2N3Lm11aS1sZWF2ZSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyOyB9XG5cbi8qISBub3JtYWxpemUuY3NzIHYzLjAuMyB8IE1JVCBMaWNlbnNlIHwgZ2l0aHViLmNvbS9uZWNvbGFzL25vcm1hbGl6ZS5jc3MgKi9cbi8qKlxuICAgKiAxLiBTZXQgZGVmYXVsdCBmb250IGZhbWlseSB0byBzYW5zLXNlcmlmLlxuICAgKiAyLiBQcmV2ZW50IGlPUyBhbmQgSUUgdGV4dCBzaXplIGFkanVzdCBhZnRlciBkZXZpY2Ugb3JpZW50YXRpb24gY2hhbmdlLFxuICAgKiAgICB3aXRob3V0IGRpc2FibGluZyB1c2VyIHpvb20uXG4gICAqL1xuaHRtbCB7XG4gIGZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmO1xuICAvKiAxICovXG4gIC1tcy10ZXh0LXNpemUtYWRqdXN0OiAxMDAlO1xuICAvKiAyICovXG4gIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTtcbiAgLyogMiAqLyB9XG5cbi8qKlxuICAgKiBSZW1vdmUgZGVmYXVsdCBtYXJnaW4uXG4gICAqL1xuYm9keSB7XG4gIG1hcmdpbjogMDsgfVxuXG4vKiBIVE1MNSBkaXNwbGF5IGRlZmluaXRpb25zXG4gICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAgICogQ29ycmVjdCBgYmxvY2tgIGRpc3BsYXkgbm90IGRlZmluZWQgZm9yIGFueSBIVE1MNSBlbGVtZW50IGluIElFIDgvOS5cbiAgICogQ29ycmVjdCBgYmxvY2tgIGRpc3BsYXkgbm90IGRlZmluZWQgZm9yIGBkZXRhaWxzYCBvciBgc3VtbWFyeWAgaW4gSUUgMTAvMTFcbiAgICogYW5kIEZpcmVmb3guXG4gICAqIENvcnJlY3QgYGJsb2NrYCBkaXNwbGF5IG5vdCBkZWZpbmVkIGZvciBgbWFpbmAgaW4gSUUgMTEuXG4gICAqL1xuYXJ0aWNsZSxcbmFzaWRlLFxuZGV0YWlscyxcbmZpZ2NhcHRpb24sXG5maWd1cmUsXG5mb290ZXIsXG5oZWFkZXIsXG5oZ3JvdXAsXG5tYWluLFxubWVudSxcbm5hdixcbnNlY3Rpb24sXG5zdW1tYXJ5IHtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuLyoqXG4gICAqIDEuIENvcnJlY3QgYGlubGluZS1ibG9ja2AgZGlzcGxheSBub3QgZGVmaW5lZCBpbiBJRSA4LzkuXG4gICAqIDIuIE5vcm1hbGl6ZSB2ZXJ0aWNhbCBhbGlnbm1lbnQgb2YgYHByb2dyZXNzYCBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBPcGVyYS5cbiAgICovXG5hdWRpbyxcbmNhbnZhcyxcbnByb2dyZXNzLFxudmlkZW8ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIC8qIDEgKi9cbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICAvKiAyICovIH1cblxuLyoqXG4gICAqIFByZXZlbnQgbW9kZXJuIGJyb3dzZXJzIGZyb20gZGlzcGxheWluZyBgYXVkaW9gIHdpdGhvdXQgY29udHJvbHMuXG4gICAqIFJlbW92ZSBleGNlc3MgaGVpZ2h0IGluIGlPUyA1IGRldmljZXMuXG4gICAqL1xuYXVkaW86bm90KFtjb250cm9sc10pIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgaGVpZ2h0OiAwOyB9XG5cbi8qKlxuICAgKiBBZGRyZXNzIGBbaGlkZGVuXWAgc3R5bGluZyBub3QgcHJlc2VudCBpbiBJRSA4LzkvMTAuXG4gICAqIEhpZGUgdGhlIGB0ZW1wbGF0ZWAgZWxlbWVudCBpbiBJRSA4LzkvMTAvMTEsIFNhZmFyaSwgYW5kIEZpcmVmb3ggPCAyMi5cbiAgICovXG5baGlkZGVuXSxcbnRlbXBsYXRlIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4vKiBMaW5rc1xuICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gICAqIFJlbW92ZSB0aGUgZ3JheSBiYWNrZ3JvdW5kIGNvbG9yIGZyb20gYWN0aXZlIGxpbmtzIGluIElFIDEwLlxuICAgKi9cbmEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuXG4vKipcbiAgICogSW1wcm92ZSByZWFkYWJpbGl0eSBvZiBmb2N1c2VkIGVsZW1lbnRzIHdoZW4gdGhleSBhcmUgYWxzbyBpbiBhblxuICAgKiBhY3RpdmUvaG92ZXIgc3RhdGUuXG4gICAqL1xuYTphY3RpdmUsXG5hOmhvdmVyIHtcbiAgb3V0bGluZTogMDsgfVxuXG4vKiBUZXh0LWxldmVsIHNlbWFudGljc1xuICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gICAqIEFkZHJlc3Mgc3R5bGluZyBub3QgcHJlc2VudCBpbiBJRSA4LzkvMTAvMTEsIFNhZmFyaSwgYW5kIENocm9tZS5cbiAgICovXG5hYmJyW3RpdGxlXSB7XG4gIGJvcmRlci1ib3R0b206IDFweCBkb3R0ZWQ7IH1cblxuLyoqXG4gICAqIEFkZHJlc3Mgc3R5bGUgc2V0IHRvIGBib2xkZXJgIGluIEZpcmVmb3ggNCssIFNhZmFyaSwgYW5kIENocm9tZS5cbiAgICovXG5iLFxuc3Ryb25nIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7IH1cblxuLyoqXG4gICAqIEFkZHJlc3Mgc3R5bGluZyBub3QgcHJlc2VudCBpbiBTYWZhcmkgYW5kIENocm9tZS5cbiAgICovXG5kZm4ge1xuICBmb250LXN0eWxlOiBpdGFsaWM7IH1cblxuLyoqXG4gICAqIEFkZHJlc3MgdmFyaWFibGUgYGgxYCBmb250LXNpemUgYW5kIG1hcmdpbiB3aXRoaW4gYHNlY3Rpb25gIGFuZCBgYXJ0aWNsZWBcbiAgICogY29udGV4dHMgaW4gRmlyZWZveCA0KywgU2FmYXJpLCBhbmQgQ2hyb21lLlxuICAgKi9cbmgxLCAudGl0bGUtMSB7XG4gIGZvbnQtc2l6ZTogMmVtO1xuICBtYXJnaW46IDAuNjdlbSAwOyB9XG5cbi8qKlxuICAgKiBBZGRyZXNzIHN0eWxpbmcgbm90IHByZXNlbnQgaW4gSUUgOC85LlxuICAgKi9cbm1hcmsge1xuICBiYWNrZ3JvdW5kOiAjZmYwO1xuICBjb2xvcjogIzAwMDsgfVxuXG4vKipcbiAgICogQWRkcmVzcyBpbmNvbnNpc3RlbnQgYW5kIHZhcmlhYmxlIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gICAqL1xuc21hbGwge1xuICBmb250LXNpemU6IDgwJTsgfVxuXG4vKipcbiAgICogUHJldmVudCBgc3ViYCBhbmQgYHN1cGAgYWZmZWN0aW5nIGBsaW5lLWhlaWdodGAgaW4gYWxsIGJyb3dzZXJzLlxuICAgKi9cbnN1YixcbnN1cCB7XG4gIGZvbnQtc2l6ZTogNzUlO1xuICBsaW5lLWhlaWdodDogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7IH1cblxuc3VwIHtcbiAgdG9wOiAtMC41ZW07IH1cblxuc3ViIHtcbiAgYm90dG9tOiAtMC4yNWVtOyB9XG5cbi8qIEVtYmVkZGVkIGNvbnRlbnRcbiAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICAgKiBSZW1vdmUgYm9yZGVyIHdoZW4gaW5zaWRlIGBhYCBlbGVtZW50IGluIElFIDgvOS8xMC5cbiAgICovXG5pbWcge1xuICBib3JkZXI6IDA7IH1cblxuLyoqXG4gICAqIENvcnJlY3Qgb3ZlcmZsb3cgbm90IGhpZGRlbiBpbiBJRSA5LzEwLzExLlxuICAgKi9cbnN2Zzpub3QoOnJvb3QpIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuXG4vKiBHcm91cGluZyBjb250ZW50XG4gICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAgICogQWRkcmVzcyBtYXJnaW4gbm90IHByZXNlbnQgaW4gSUUgOC85IGFuZCBTYWZhcmkuXG4gICAqL1xuZmlndXJlIHtcbiAgbWFyZ2luOiAxZW0gNDBweDsgfVxuXG4vKipcbiAgICogQWRkcmVzcyBkaWZmZXJlbmNlcyBiZXR3ZWVuIEZpcmVmb3ggYW5kIG90aGVyIGJyb3dzZXJzLlxuICAgKi9cbmhyIHtcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7XG4gIGhlaWdodDogMDsgfVxuXG4vKipcbiAgICogQ29udGFpbiBvdmVyZmxvdyBpbiBhbGwgYnJvd3NlcnMuXG4gICAqL1xucHJlIHtcbiAgb3ZlcmZsb3c6IGF1dG87IH1cblxuLyoqXG4gICAqIEFkZHJlc3Mgb2RkIGBlbWAtdW5pdCBmb250IHNpemUgcmVuZGVyaW5nIGluIGFsbCBicm93c2Vycy5cbiAgICovXG5jb2RlLFxua2JkLFxucHJlLFxuc2FtcCB7XG4gIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTtcbiAgZm9udC1zaXplOiAxZW07IH1cblxuLyogRm9ybXNcbiAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICAgKiBLbm93biBsaW1pdGF0aW9uOiBieSBkZWZhdWx0LCBDaHJvbWUgYW5kIFNhZmFyaSBvbiBPUyBYIGFsbG93IHZlcnkgbGltaXRlZFxuICAgKiBzdHlsaW5nIG9mIGBzZWxlY3RgLCB1bmxlc3MgYSBgYm9yZGVyYCBwcm9wZXJ0eSBpcyBzZXQuXG4gICAqL1xuLyoqXG4gICAqIDEuIENvcnJlY3QgY29sb3Igbm90IGJlaW5nIGluaGVyaXRlZC5cbiAgICogICAgS25vd24gaXNzdWU6IGFmZmVjdHMgY29sb3Igb2YgZGlzYWJsZWQgZWxlbWVudHMuXG4gICAqIDIuIENvcnJlY3QgZm9udCBwcm9wZXJ0aWVzIG5vdCBiZWluZyBpbmhlcml0ZWQuXG4gICAqIDMuIEFkZHJlc3MgbWFyZ2lucyBzZXQgZGlmZmVyZW50bHkgaW4gRmlyZWZveCA0KywgU2FmYXJpLCBhbmQgQ2hyb21lLlxuICAgKi9cbmJ1dHRvbixcbmlucHV0LFxub3B0Z3JvdXAsXG5zZWxlY3QsXG50ZXh0YXJlYSB7XG4gIGNvbG9yOiBpbmhlcml0O1xuICAvKiAxICovXG4gIGZvbnQ6IGluaGVyaXQ7XG4gIC8qIDIgKi9cbiAgbWFyZ2luOiAwO1xuICAvKiAzICovIH1cblxuLyoqXG4gICAqIEFkZHJlc3MgYG92ZXJmbG93YCBzZXQgdG8gYGhpZGRlbmAgaW4gSUUgOC85LzEwLzExLlxuICAgKi9cbmJ1dHRvbiB7XG4gIG92ZXJmbG93OiB2aXNpYmxlOyB9XG5cbi8qKlxuICAgKiBBZGRyZXNzIGluY29uc2lzdGVudCBgdGV4dC10cmFuc2Zvcm1gIGluaGVyaXRhbmNlIGZvciBgYnV0dG9uYCBhbmQgYHNlbGVjdGAuXG4gICAqIEFsbCBvdGhlciBmb3JtIGNvbnRyb2wgZWxlbWVudHMgZG8gbm90IGluaGVyaXQgYHRleHQtdHJhbnNmb3JtYCB2YWx1ZXMuXG4gICAqIENvcnJlY3QgYGJ1dHRvbmAgc3R5bGUgaW5oZXJpdGFuY2UgaW4gRmlyZWZveCwgSUUgOC85LzEwLzExLCBhbmQgT3BlcmEuXG4gICAqIENvcnJlY3QgYHNlbGVjdGAgc3R5bGUgaW5oZXJpdGFuY2UgaW4gRmlyZWZveC5cbiAgICovXG5idXR0b24sXG5zZWxlY3Qge1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTsgfVxuXG4vKipcbiAgICogMS4gQXZvaWQgdGhlIFdlYktpdCBidWcgaW4gQW5kcm9pZCA0LjAuKiB3aGVyZSAoMikgZGVzdHJveXMgbmF0aXZlIGBhdWRpb2BcbiAgICogICAgYW5kIGB2aWRlb2AgY29udHJvbHMuXG4gICAqIDIuIENvcnJlY3QgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSBgaW5wdXRgIHR5cGVzIGluIGlPUy5cbiAgICogMy4gSW1wcm92ZSB1c2FiaWxpdHkgYW5kIGNvbnNpc3RlbmN5IG9mIGN1cnNvciBzdHlsZSBiZXR3ZWVuIGltYWdlLXR5cGVcbiAgICogICAgYGlucHV0YCBhbmQgb3RoZXJzLlxuICAgKi9cbmJ1dHRvbixcbmh0bWwgaW5wdXRbdHlwZT1cImJ1dHRvblwiXSxcbmlucHV0W3R5cGU9XCJyZXNldFwiXSxcbmlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjtcbiAgLyogMiAqL1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIC8qIDMgKi8gfVxuXG4vKipcbiAgICogUmUtc2V0IGRlZmF1bHQgY3Vyc29yIGZvciBkaXNhYmxlZCBlbGVtZW50cy5cbiAgICovXG5idXR0b25bZGlzYWJsZWRdLFxuaHRtbCBpbnB1dFtkaXNhYmxlZF0ge1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkOyB9XG5cbi8qKlxuICAgKiBSZW1vdmUgaW5uZXIgcGFkZGluZyBhbmQgYm9yZGVyIGluIEZpcmVmb3ggNCsuXG4gICAqL1xuYnV0dG9uOjotbW96LWZvY3VzLWlubmVyLFxuaW5wdXQ6Oi1tb3otZm9jdXMtaW5uZXIge1xuICBib3JkZXI6IDA7XG4gIHBhZGRpbmc6IDA7IH1cblxuLyoqXG4gICAqIEFkZHJlc3MgRmlyZWZveCA0KyBzZXR0aW5nIGBsaW5lLWhlaWdodGAgb24gYGlucHV0YCB1c2luZyBgIWltcG9ydGFudGAgaW5cbiAgICogdGhlIFVBIHN0eWxlc2hlZXQuXG4gICAqL1xuaW5wdXQge1xuICBsaW5lLWhlaWdodDogbm9ybWFsOyB9XG5cbi8qKlxuICAgKiBJdCdzIHJlY29tbWVuZGVkIHRoYXQgeW91IGRvbid0IGF0dGVtcHQgdG8gc3R5bGUgdGhlc2UgZWxlbWVudHMuXG4gICAqIEZpcmVmb3gncyBpbXBsZW1lbnRhdGlvbiBkb2Vzbid0IHJlc3BlY3QgYm94LXNpemluZywgcGFkZGluZywgb3Igd2lkdGguXG4gICAqXG4gICAqIDEuIEFkZHJlc3MgYm94IHNpemluZyBzZXQgdG8gYGNvbnRlbnQtYm94YCBpbiBJRSA4LzkvMTAuXG4gICAqIDIuIFJlbW92ZSBleGNlc3MgcGFkZGluZyBpbiBJRSA4LzkvMTAuXG4gICAqL1xuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdLFxuaW5wdXRbdHlwZT1cInJhZGlvXCJdIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgLyogMSAqL1xuICBwYWRkaW5nOiAwO1xuICAvKiAyICovIH1cblxuLyoqXG4gICAqIEZpeCB0aGUgY3Vyc29yIHN0eWxlIGZvciBDaHJvbWUncyBpbmNyZW1lbnQvZGVjcmVtZW50IGJ1dHRvbnMuIEZvciBjZXJ0YWluXG4gICAqIGBmb250LXNpemVgIHZhbHVlcyBvZiB0aGUgYGlucHV0YCwgaXQgY2F1c2VzIHRoZSBjdXJzb3Igc3R5bGUgb2YgdGhlXG4gICAqIGRlY3JlbWVudCBidXR0b24gdG8gY2hhbmdlIGZyb20gYGRlZmF1bHRgIHRvIGB0ZXh0YC5cbiAgICovXG5pbnB1dFt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuaW5wdXRbdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7XG4gIGhlaWdodDogYXV0bzsgfVxuXG4vKipcbiAgICogMS4gQWRkcmVzcyBgYXBwZWFyYW5jZWAgc2V0IHRvIGBzZWFyY2hmaWVsZGAgaW4gU2FmYXJpIGFuZCBDaHJvbWUuXG4gICAqIDIuIEFkZHJlc3MgYGJveC1zaXppbmdgIHNldCB0byBgYm9yZGVyLWJveGAgaW4gU2FmYXJpIGFuZCBDaHJvbWUuXG4gICAqL1xuaW5wdXRbdHlwZT1cInNlYXJjaFwiXSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogdGV4dGZpZWxkO1xuICAvKiAxICovXG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICAvKiAyICovIH1cblxuLyoqXG4gICAqIFJlbW92ZSBpbm5lciBwYWRkaW5nIGFuZCBzZWFyY2ggY2FuY2VsIGJ1dHRvbiBpbiBTYWZhcmkgYW5kIENocm9tZSBvbiBPUyBYLlxuICAgKiBTYWZhcmkgKGJ1dCBub3QgQ2hyb21lKSBjbGlwcyB0aGUgY2FuY2VsIGJ1dHRvbiB3aGVuIHRoZSBzZWFyY2ggaW5wdXQgaGFzXG4gICAqIHBhZGRpbmcgKGFuZCBgdGV4dGZpZWxkYCBhcHBlYXJhbmNlKS5cbiAgICovXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1jYW5jZWwtYnV0dG9uLFxuaW5wdXRbdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTsgfVxuXG4vKipcbiAgICogRGVmaW5lIGNvbnNpc3RlbnQgYm9yZGVyLCBtYXJnaW4sIGFuZCBwYWRkaW5nLlxuICAgKiBbTk9URV0gV2UgZG9uJ3QgZW5hYmxlIHRoaXMgcnVsZXNldCBpbiBGb3VuZGF0aW9uLCBiZWNhdXNlIHdlIHdhbnQgdGhlIDxmaWVsZHNldD4gZWxlbWVudCB0byBoYXZlIHBsYWluIHN0eWxpbmcuXG4gICAqL1xuLyogZmllbGRzZXQge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNjMGMwYzA7XG4gICAgbWFyZ2luOiAwIDJweDtcbiAgICBwYWRkaW5nOiAwLjM1ZW0gMC42MjVlbSAwLjc1ZW07XG4gIH0gKi9cbi8qKlxuICAgKiAxLiBDb3JyZWN0IGBjb2xvcmAgbm90IGJlaW5nIGluaGVyaXRlZCBpbiBJRSA4LzkvMTAvMTEuXG4gICAqIDIuIFJlbW92ZSBwYWRkaW5nIHNvIHBlb3BsZSBhcmVuJ3QgY2F1Z2h0IG91dCBpZiB0aGV5IHplcm8gb3V0IGZpZWxkc2V0cy5cbiAgICovXG5sZWdlbmQge1xuICBib3JkZXI6IDA7XG4gIC8qIDEgKi9cbiAgcGFkZGluZzogMDtcbiAgLyogMiAqLyB9XG5cbi8qKlxuICAgKiBSZW1vdmUgZGVmYXVsdCB2ZXJ0aWNhbCBzY3JvbGxiYXIgaW4gSUUgOC85LzEwLzExLlxuICAgKi9cbnRleHRhcmVhIHtcbiAgb3ZlcmZsb3c6IGF1dG87IH1cblxuLyoqXG4gICAqIERvbid0IGluaGVyaXQgdGhlIGBmb250LXdlaWdodGAgKGFwcGxpZWQgYnkgYSBydWxlIGFib3ZlKS5cbiAgICogTk9URTogdGhlIGRlZmF1bHQgY2Fubm90IHNhZmVseSBiZSBjaGFuZ2VkIGluIENocm9tZSBhbmQgU2FmYXJpIG9uIE9TIFguXG4gICAqL1xub3B0Z3JvdXAge1xuICBmb250LXdlaWdodDogYm9sZDsgfVxuXG4vKiBUYWJsZXNcbiAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICAgKiBSZW1vdmUgbW9zdCBzcGFjaW5nIGJldHdlZW4gdGFibGUgY2VsbHMuXG4gICAqL1xudGFibGUge1xuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuICBib3JkZXItc3BhY2luZzogMDsgfVxuXG50ZCxcbnRoIHtcbiAgcGFkZGluZzogMDsgfVxuXG4uZm91bmRhdGlvbi1tcSB7XG4gIGZvbnQtZmFtaWx5OiBcInNtYWxsPTBlbSZtZWRpdW09NDBlbSZsYXJnZT02NGVtJnhsYXJnZT03NWVtJnh4bGFyZ2U9OTBlbVwiOyB9XG5cbmh0bWwge1xuICBmb250LXNpemU6IDEwMCU7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IH1cblxuKixcbio6OmJlZm9yZSxcbio6OmFmdGVyIHtcbiAgYm94LXNpemluZzogaW5oZXJpdDsgfVxuXG5ib2R5IHtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAwO1xuICBmb250LWZhbWlseTogXCJJbnRlclwiLCBcIkhlbHZldGljYSBOZXVlXCIsIEhlbHZldGljYSwgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIGNvbG9yOiAjMWQyYTI5O1xuICBiYWNrZ3JvdW5kOiAjZjdmN2Y3O1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTsgfVxuXG5pbWcge1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bztcbiAgLW1zLWludGVycG9sYXRpb24tbW9kZTogYmljdWJpYztcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyB9XG5cbnRleHRhcmVhIHtcbiAgaGVpZ2h0OiBhdXRvO1xuICBtaW4taGVpZ2h0OiA1MHB4O1xuICBib3JkZXItcmFkaXVzOiAwOyB9XG5cbnNlbGVjdCB7XG4gIHdpZHRoOiAxMDAlO1xuICBib3JkZXItcmFkaXVzOiAwOyB9XG5cbiNtYXBfY2FudmFzIGltZyxcbiNtYXBfY2FudmFzIGVtYmVkLFxuI21hcF9jYW52YXMgb2JqZWN0LFxuLm1hcF9jYW52YXMgaW1nLFxuLm1hcF9jYW52YXMgZW1iZWQsXG4ubWFwX2NhbnZhcyBvYmplY3QsXG4ubXFhLWRpc3BsYXkgaW1nLFxuLm1xYS1kaXNwbGF5IGVtYmVkLFxuLm1xYS1kaXNwbGF5IG9iamVjdCB7XG4gIG1heC13aWR0aDogbm9uZSAhaW1wb3J0YW50OyB9XG5cbmJ1dHRvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgLW1vei1hcHBlYXJhbmNlOiBub25lO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgcGFkZGluZzogMDtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBsaW5lLWhlaWdodDogMTsgfVxuICBbZGF0YS13aGF0aW5wdXQ9J21vdXNlJ10gYnV0dG9uIHtcbiAgICBvdXRsaW5lOiAwOyB9XG5cbi5pcy12aXNpYmxlIHtcbiAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDsgfVxuXG4uaXMtaGlkZGVuIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbi5yb3cge1xuICBtYXgtd2lkdGg6IDc1cmVtO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XG4gIC5yb3c6OmJlZm9yZSwgLnJvdzo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcgJztcbiAgICBkaXNwbGF5OiB0YWJsZTsgfVxuICAucm93OjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgLnJvdy5jb2xsYXBzZSA+IC5jb2x1bW4sIC5yb3cuY29sbGFwc2UgPiAuY29sdW1ucyB7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7IH1cbiAgLnJvdyAucm93IHtcbiAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgbWFyZ2luLWxlZnQ6IC0wLjkzNzVyZW07XG4gICAgbWFyZ2luLXJpZ2h0OiAtMC45Mzc1cmVtOyB9XG4gICAgLnJvdyAucm93LmNvbGxhcHNlIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwOyB9XG4gIC5yb3cuZXhwYW5kZWQge1xuICAgIG1heC13aWR0aDogbm9uZTsgfVxuICAgIC5yb3cuZXhwYW5kZWQgLnJvdyB7XG4gICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0bzsgfVxuXG4uY29sdW1uLCAuY29sdW1ucyB7XG4gIHdpZHRoOiAxMDAlO1xuICBmbG9hdDogbGVmdDtcbiAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07XG4gIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTsgfVxuICAuY29sdW1uOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCksIC5jb2x1bW5zOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgIGZsb2F0OiByaWdodDsgfVxuICAuY29sdW1uLmVuZDpsYXN0LWNoaWxkOmxhc3QtY2hpbGQsIC5lbmQuY29sdW1uczpsYXN0LWNoaWxkOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiBsZWZ0OyB9XG5cbi5jb2x1bW4ucm93LnJvdywgLnJvdy5yb3cuY29sdW1ucyB7XG4gIGZsb2F0OiBub25lOyB9XG4gIC5yb3cgLmNvbHVtbi5yb3cucm93LCAucm93IC5yb3cucm93LmNvbHVtbnMge1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIG1hcmdpbi1yaWdodDogMDsgfVxuXG4uc21hbGwtMSB7XG4gIHdpZHRoOiA4LjMzMzMzJTsgfVxuXG4uc21hbGwtcHVzaC0xIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiA4LjMzMzMzJTsgfVxuXG4uc21hbGwtcHVsbC0xIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiAtOC4zMzMzMyU7IH1cblxuLnNtYWxsLW9mZnNldC0wIHtcbiAgbWFyZ2luLWxlZnQ6IDAlOyB9XG5cbi5zbWFsbC0yIHtcbiAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuXG4uc21hbGwtcHVzaC0yIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiAxNi42NjY2NyU7IH1cblxuLnNtYWxsLXB1bGwtMiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogLTE2LjY2NjY3JTsgfVxuXG4uc21hbGwtb2Zmc2V0LTEge1xuICBtYXJnaW4tbGVmdDogOC4zMzMzMyU7IH1cblxuLnNtYWxsLTMge1xuICB3aWR0aDogMjUlOyB9XG5cbi5zbWFsbC1wdXNoLTMge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IDI1JTsgfVxuXG4uc21hbGwtcHVsbC0zIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiAtMjUlOyB9XG5cbi5zbWFsbC1vZmZzZXQtMiB7XG4gIG1hcmdpbi1sZWZ0OiAxNi42NjY2NyU7IH1cblxuLnNtYWxsLTQge1xuICB3aWR0aDogMzMuMzMzMzMlOyB9XG5cbi5zbWFsbC1wdXNoLTQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IDMzLjMzMzMzJTsgfVxuXG4uc21hbGwtcHVsbC00IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiAtMzMuMzMzMzMlOyB9XG5cbi5zbWFsbC1vZmZzZXQtMyB7XG4gIG1hcmdpbi1sZWZ0OiAyNSU7IH1cblxuLnNtYWxsLTUge1xuICB3aWR0aDogNDEuNjY2NjclOyB9XG5cbi5zbWFsbC1wdXNoLTUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IDQxLjY2NjY3JTsgfVxuXG4uc21hbGwtcHVsbC01IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiAtNDEuNjY2NjclOyB9XG5cbi5zbWFsbC1vZmZzZXQtNCB7XG4gIG1hcmdpbi1sZWZ0OiAzMy4zMzMzMyU7IH1cblxuLnNtYWxsLTYge1xuICB3aWR0aDogNTAlOyB9XG5cbi5zbWFsbC1wdXNoLTYge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IDUwJTsgfVxuXG4uc21hbGwtcHVsbC02IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiAtNTAlOyB9XG5cbi5zbWFsbC1vZmZzZXQtNSB7XG4gIG1hcmdpbi1sZWZ0OiA0MS42NjY2NyU7IH1cblxuLnNtYWxsLTcge1xuICB3aWR0aDogNTguMzMzMzMlOyB9XG5cbi5zbWFsbC1wdXNoLTcge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IDU4LjMzMzMzJTsgfVxuXG4uc21hbGwtcHVsbC03IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiAtNTguMzMzMzMlOyB9XG5cbi5zbWFsbC1vZmZzZXQtNiB7XG4gIG1hcmdpbi1sZWZ0OiA1MCU7IH1cblxuLnNtYWxsLTgge1xuICB3aWR0aDogNjYuNjY2NjclOyB9XG5cbi5zbWFsbC1wdXNoLTgge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IDY2LjY2NjY3JTsgfVxuXG4uc21hbGwtcHVsbC04IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiAtNjYuNjY2NjclOyB9XG5cbi5zbWFsbC1vZmZzZXQtNyB7XG4gIG1hcmdpbi1sZWZ0OiA1OC4zMzMzMyU7IH1cblxuLnNtYWxsLTkge1xuICB3aWR0aDogNzUlOyB9XG5cbi5zbWFsbC1wdXNoLTkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IDc1JTsgfVxuXG4uc21hbGwtcHVsbC05IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiAtNzUlOyB9XG5cbi5zbWFsbC1vZmZzZXQtOCB7XG4gIG1hcmdpbi1sZWZ0OiA2Ni42NjY2NyU7IH1cblxuLnNtYWxsLTEwIHtcbiAgd2lkdGg6IDgzLjMzMzMzJTsgfVxuXG4uc21hbGwtcHVzaC0xMCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogODMuMzMzMzMlOyB9XG5cbi5zbWFsbC1wdWxsLTEwIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiAtODMuMzMzMzMlOyB9XG5cbi5zbWFsbC1vZmZzZXQtOSB7XG4gIG1hcmdpbi1sZWZ0OiA3NSU7IH1cblxuLnNtYWxsLTExIHtcbiAgd2lkdGg6IDkxLjY2NjY3JTsgfVxuXG4uc21hbGwtcHVzaC0xMSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogOTEuNjY2NjclOyB9XG5cbi5zbWFsbC1wdWxsLTExIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiAtOTEuNjY2NjclOyB9XG5cbi5zbWFsbC1vZmZzZXQtMTAge1xuICBtYXJnaW4tbGVmdDogODMuMzMzMzMlOyB9XG5cbi5zbWFsbC0xMiB7XG4gIHdpZHRoOiAxMDAlOyB9XG5cbi5zbWFsbC1vZmZzZXQtMTEge1xuICBtYXJnaW4tbGVmdDogOTEuNjY2NjclOyB9XG5cbi5zbWFsbC11cC0xID4gLmNvbHVtbiwgLnNtYWxsLXVwLTEgPiAuY29sdW1ucyB7XG4gIHdpZHRoOiAxMDAlO1xuICBmbG9hdDogbGVmdDsgfVxuICAuc21hbGwtdXAtMSA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAuc21hbGwtdXAtMSA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgY2xlYXI6IG5vbmU7IH1cbiAgLnNtYWxsLXVwLTEgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKzEpLCAuc21hbGwtdXAtMSA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKzEpIHtcbiAgICBjbGVhcjogYm90aDsgfVxuICAuc21hbGwtdXAtMSA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLnNtYWxsLXVwLTEgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogbGVmdDsgfVxuXG4uc21hbGwtdXAtMiA+IC5jb2x1bW4sIC5zbWFsbC11cC0yID4gLmNvbHVtbnMge1xuICB3aWR0aDogNTAlO1xuICBmbG9hdDogbGVmdDsgfVxuICAuc21hbGwtdXAtMiA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAuc21hbGwtdXAtMiA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgY2xlYXI6IG5vbmU7IH1cbiAgLnNtYWxsLXVwLTIgPiAuY29sdW1uOm50aC1vZi10eXBlKDJuKzEpLCAuc21hbGwtdXAtMiA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDJuKzEpIHtcbiAgICBjbGVhcjogYm90aDsgfVxuICAuc21hbGwtdXAtMiA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLnNtYWxsLXVwLTIgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogbGVmdDsgfVxuXG4uc21hbGwtdXAtMyA+IC5jb2x1bW4sIC5zbWFsbC11cC0zID4gLmNvbHVtbnMge1xuICB3aWR0aDogMzMuMzMzMzMlO1xuICBmbG9hdDogbGVmdDsgfVxuICAuc21hbGwtdXAtMyA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAuc21hbGwtdXAtMyA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgY2xlYXI6IG5vbmU7IH1cbiAgLnNtYWxsLXVwLTMgPiAuY29sdW1uOm50aC1vZi10eXBlKDNuKzEpLCAuc21hbGwtdXAtMyA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDNuKzEpIHtcbiAgICBjbGVhcjogYm90aDsgfVxuICAuc21hbGwtdXAtMyA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLnNtYWxsLXVwLTMgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogbGVmdDsgfVxuXG4uc21hbGwtdXAtNCA+IC5jb2x1bW4sIC5zbWFsbC11cC00ID4gLmNvbHVtbnMge1xuICB3aWR0aDogMjUlO1xuICBmbG9hdDogbGVmdDsgfVxuICAuc21hbGwtdXAtNCA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAuc21hbGwtdXAtNCA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgY2xlYXI6IG5vbmU7IH1cbiAgLnNtYWxsLXVwLTQgPiAuY29sdW1uOm50aC1vZi10eXBlKDRuKzEpLCAuc21hbGwtdXAtNCA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDRuKzEpIHtcbiAgICBjbGVhcjogYm90aDsgfVxuICAuc21hbGwtdXAtNCA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLnNtYWxsLXVwLTQgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogbGVmdDsgfVxuXG4uc21hbGwtdXAtNSA+IC5jb2x1bW4sIC5zbWFsbC11cC01ID4gLmNvbHVtbnMge1xuICB3aWR0aDogMjAlO1xuICBmbG9hdDogbGVmdDsgfVxuICAuc21hbGwtdXAtNSA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAuc21hbGwtdXAtNSA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgY2xlYXI6IG5vbmU7IH1cbiAgLnNtYWxsLXVwLTUgPiAuY29sdW1uOm50aC1vZi10eXBlKDVuKzEpLCAuc21hbGwtdXAtNSA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDVuKzEpIHtcbiAgICBjbGVhcjogYm90aDsgfVxuICAuc21hbGwtdXAtNSA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLnNtYWxsLXVwLTUgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogbGVmdDsgfVxuXG4uc21hbGwtdXAtNiA+IC5jb2x1bW4sIC5zbWFsbC11cC02ID4gLmNvbHVtbnMge1xuICB3aWR0aDogMTYuNjY2NjclO1xuICBmbG9hdDogbGVmdDsgfVxuICAuc21hbGwtdXAtNiA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAuc21hbGwtdXAtNiA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgY2xlYXI6IG5vbmU7IH1cbiAgLnNtYWxsLXVwLTYgPiAuY29sdW1uOm50aC1vZi10eXBlKDZuKzEpLCAuc21hbGwtdXAtNiA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDZuKzEpIHtcbiAgICBjbGVhcjogYm90aDsgfVxuICAuc21hbGwtdXAtNiA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLnNtYWxsLXVwLTYgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogbGVmdDsgfVxuXG4uc21hbGwtY29sbGFwc2UgPiAuY29sdW1uLCAuc21hbGwtY29sbGFwc2UgPiAuY29sdW1ucyB7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgcGFkZGluZy1yaWdodDogMDsgfVxuXG4uc21hbGwtY29sbGFwc2UgLnJvdyB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBtYXJnaW4tcmlnaHQ6IDA7IH1cblxuLnNtYWxsLXVuY29sbGFwc2UgPiAuY29sdW1uLCAuc21hbGwtdW5jb2xsYXBzZSA+IC5jb2x1bW5zIHtcbiAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07XG4gIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTsgfVxuXG4uc21hbGwtY2VudGVyZWQge1xuICBmbG9hdDogbm9uZTtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bzsgfVxuXG4uc21hbGwtdW5jZW50ZXJlZCxcbi5zbWFsbC1wdXNoLTAsXG4uc21hbGwtcHVsbC0wIHtcbiAgcG9zaXRpb246IHN0YXRpYztcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgZmxvYXQ6IGxlZnQ7IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAubWVkaXVtLTEge1xuICAgIHdpZHRoOiA4LjMzMzMzJTsgfVxuICAubWVkaXVtLXB1c2gtMSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDguMzMzMzMlOyB9XG4gIC5tZWRpdW0tcHVsbC0xIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTguMzMzMzMlOyB9XG4gIC5tZWRpdW0tb2Zmc2V0LTAge1xuICAgIG1hcmdpbi1sZWZ0OiAwJTsgfVxuICAubWVkaXVtLTIge1xuICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLm1lZGl1bS1wdXNoLTIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAxNi42NjY2NyU7IH1cbiAgLm1lZGl1bS1wdWxsLTIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtMTYuNjY2NjclOyB9XG4gIC5tZWRpdW0tb2Zmc2V0LTEge1xuICAgIG1hcmdpbi1sZWZ0OiA4LjMzMzMzJTsgfVxuICAubWVkaXVtLTMge1xuICAgIHdpZHRoOiAyNSU7IH1cbiAgLm1lZGl1bS1wdXNoLTMge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAyNSU7IH1cbiAgLm1lZGl1bS1wdWxsLTMge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtMjUlOyB9XG4gIC5tZWRpdW0tb2Zmc2V0LTIge1xuICAgIG1hcmdpbi1sZWZ0OiAxNi42NjY2NyU7IH1cbiAgLm1lZGl1bS00IHtcbiAgICB3aWR0aDogMzMuMzMzMzMlOyB9XG4gIC5tZWRpdW0tcHVzaC00IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogMzMuMzMzMzMlOyB9XG4gIC5tZWRpdW0tcHVsbC00IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTMzLjMzMzMzJTsgfVxuICAubWVkaXVtLW9mZnNldC0zIHtcbiAgICBtYXJnaW4tbGVmdDogMjUlOyB9XG4gIC5tZWRpdW0tNSB7XG4gICAgd2lkdGg6IDQxLjY2NjY3JTsgfVxuICAubWVkaXVtLXB1c2gtNSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDQxLjY2NjY3JTsgfVxuICAubWVkaXVtLXB1bGwtNSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC00MS42NjY2NyU7IH1cbiAgLm1lZGl1bS1vZmZzZXQtNCB7XG4gICAgbWFyZ2luLWxlZnQ6IDMzLjMzMzMzJTsgfVxuICAubWVkaXVtLTYge1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgLm1lZGl1bS1wdXNoLTYge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA1MCU7IH1cbiAgLm1lZGl1bS1wdWxsLTYge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtNTAlOyB9XG4gIC5tZWRpdW0tb2Zmc2V0LTUge1xuICAgIG1hcmdpbi1sZWZ0OiA0MS42NjY2NyU7IH1cbiAgLm1lZGl1bS03IHtcbiAgICB3aWR0aDogNTguMzMzMzMlOyB9XG4gIC5tZWRpdW0tcHVzaC03IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogNTguMzMzMzMlOyB9XG4gIC5tZWRpdW0tcHVsbC03IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTU4LjMzMzMzJTsgfVxuICAubWVkaXVtLW9mZnNldC02IHtcbiAgICBtYXJnaW4tbGVmdDogNTAlOyB9XG4gIC5tZWRpdW0tOCB7XG4gICAgd2lkdGg6IDY2LjY2NjY3JTsgfVxuICAubWVkaXVtLXB1c2gtOCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDY2LjY2NjY3JTsgfVxuICAubWVkaXVtLXB1bGwtOCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC02Ni42NjY2NyU7IH1cbiAgLm1lZGl1bS1vZmZzZXQtNyB7XG4gICAgbWFyZ2luLWxlZnQ6IDU4LjMzMzMzJTsgfVxuICAubWVkaXVtLTkge1xuICAgIHdpZHRoOiA3NSU7IH1cbiAgLm1lZGl1bS1wdXNoLTkge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA3NSU7IH1cbiAgLm1lZGl1bS1wdWxsLTkge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtNzUlOyB9XG4gIC5tZWRpdW0tb2Zmc2V0LTgge1xuICAgIG1hcmdpbi1sZWZ0OiA2Ni42NjY2NyU7IH1cbiAgLm1lZGl1bS0xMCB7XG4gICAgd2lkdGg6IDgzLjMzMzMzJTsgfVxuICAubWVkaXVtLXB1c2gtMTAge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA4My4zMzMzMyU7IH1cbiAgLm1lZGl1bS1wdWxsLTEwIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTgzLjMzMzMzJTsgfVxuICAubWVkaXVtLW9mZnNldC05IHtcbiAgICBtYXJnaW4tbGVmdDogNzUlOyB9XG4gIC5tZWRpdW0tMTEge1xuICAgIHdpZHRoOiA5MS42NjY2NyU7IH1cbiAgLm1lZGl1bS1wdXNoLTExIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogOTEuNjY2NjclOyB9XG4gIC5tZWRpdW0tcHVsbC0xMSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC05MS42NjY2NyU7IH1cbiAgLm1lZGl1bS1vZmZzZXQtMTAge1xuICAgIG1hcmdpbi1sZWZ0OiA4My4zMzMzMyU7IH1cbiAgLm1lZGl1bS0xMiB7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgLm1lZGl1bS1vZmZzZXQtMTEge1xuICAgIG1hcmdpbi1sZWZ0OiA5MS42NjY2NyU7IH1cbiAgLm1lZGl1bS11cC0xID4gLmNvbHVtbiwgLm1lZGl1bS11cC0xID4gLmNvbHVtbnMge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGZsb2F0OiBsZWZ0OyB9XG4gICAgLm1lZGl1bS11cC0xID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5tZWRpdW0tdXAtMSA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICBjbGVhcjogbm9uZTsgfVxuICAgIC5tZWRpdW0tdXAtMSA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4rMSksIC5tZWRpdW0tdXAtMSA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKzEpIHtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgLm1lZGl1bS11cC0xID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAubWVkaXVtLXVwLTEgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICAgIGZsb2F0OiBsZWZ0OyB9XG4gIC5tZWRpdW0tdXAtMiA+IC5jb2x1bW4sIC5tZWRpdW0tdXAtMiA+IC5jb2x1bW5zIHtcbiAgICB3aWR0aDogNTAlO1xuICAgIGZsb2F0OiBsZWZ0OyB9XG4gICAgLm1lZGl1bS11cC0yID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5tZWRpdW0tdXAtMiA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICBjbGVhcjogbm9uZTsgfVxuICAgIC5tZWRpdW0tdXAtMiA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMm4rMSksIC5tZWRpdW0tdXAtMiA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDJuKzEpIHtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgLm1lZGl1bS11cC0yID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAubWVkaXVtLXVwLTIgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICAgIGZsb2F0OiBsZWZ0OyB9XG4gIC5tZWRpdW0tdXAtMyA+IC5jb2x1bW4sIC5tZWRpdW0tdXAtMyA+IC5jb2x1bW5zIHtcbiAgICB3aWR0aDogMzMuMzMzMzMlO1xuICAgIGZsb2F0OiBsZWZ0OyB9XG4gICAgLm1lZGl1bS11cC0zID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5tZWRpdW0tdXAtMyA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICBjbGVhcjogbm9uZTsgfVxuICAgIC5tZWRpdW0tdXAtMyA+IC5jb2x1bW46bnRoLW9mLXR5cGUoM24rMSksIC5tZWRpdW0tdXAtMyA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDNuKzEpIHtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgLm1lZGl1bS11cC0zID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAubWVkaXVtLXVwLTMgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICAgIGZsb2F0OiBsZWZ0OyB9XG4gIC5tZWRpdW0tdXAtNCA+IC5jb2x1bW4sIC5tZWRpdW0tdXAtNCA+IC5jb2x1bW5zIHtcbiAgICB3aWR0aDogMjUlO1xuICAgIGZsb2F0OiBsZWZ0OyB9XG4gICAgLm1lZGl1bS11cC00ID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5tZWRpdW0tdXAtNCA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICBjbGVhcjogbm9uZTsgfVxuICAgIC5tZWRpdW0tdXAtNCA+IC5jb2x1bW46bnRoLW9mLXR5cGUoNG4rMSksIC5tZWRpdW0tdXAtNCA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDRuKzEpIHtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgLm1lZGl1bS11cC00ID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAubWVkaXVtLXVwLTQgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICAgIGZsb2F0OiBsZWZ0OyB9XG4gIC5tZWRpdW0tdXAtNSA+IC5jb2x1bW4sIC5tZWRpdW0tdXAtNSA+IC5jb2x1bW5zIHtcbiAgICB3aWR0aDogMjAlO1xuICAgIGZsb2F0OiBsZWZ0OyB9XG4gICAgLm1lZGl1bS11cC01ID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5tZWRpdW0tdXAtNSA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICBjbGVhcjogbm9uZTsgfVxuICAgIC5tZWRpdW0tdXAtNSA+IC5jb2x1bW46bnRoLW9mLXR5cGUoNW4rMSksIC5tZWRpdW0tdXAtNSA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDVuKzEpIHtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgLm1lZGl1bS11cC01ID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAubWVkaXVtLXVwLTUgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICAgIGZsb2F0OiBsZWZ0OyB9XG4gIC5tZWRpdW0tdXAtNiA+IC5jb2x1bW4sIC5tZWRpdW0tdXAtNiA+IC5jb2x1bW5zIHtcbiAgICB3aWR0aDogMTYuNjY2NjclO1xuICAgIGZsb2F0OiBsZWZ0OyB9XG4gICAgLm1lZGl1bS11cC02ID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5tZWRpdW0tdXAtNiA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICBjbGVhcjogbm9uZTsgfVxuICAgIC5tZWRpdW0tdXAtNiA+IC5jb2x1bW46bnRoLW9mLXR5cGUoNm4rMSksIC5tZWRpdW0tdXAtNiA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDZuKzEpIHtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgLm1lZGl1bS11cC02ID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAubWVkaXVtLXVwLTYgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICAgIGZsb2F0OiBsZWZ0OyB9XG4gIC5tZWRpdW0tY29sbGFwc2UgPiAuY29sdW1uLCAubWVkaXVtLWNvbGxhcHNlID4gLmNvbHVtbnMge1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwOyB9XG4gIC5tZWRpdW0tY29sbGFwc2UgLnJvdyB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgbWFyZ2luLXJpZ2h0OiAwOyB9XG4gIC5tZWRpdW0tdW5jb2xsYXBzZSA+IC5jb2x1bW4sIC5tZWRpdW0tdW5jb2xsYXBzZSA+IC5jb2x1bW5zIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07IH1cbiAgLm1lZGl1bS1jZW50ZXJlZCB7XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XG4gIC5tZWRpdW0tdW5jZW50ZXJlZCxcbiAgLm1lZGl1bS1wdXNoLTAsXG4gIC5tZWRpdW0tcHVsbC0wIHtcbiAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBmbG9hdDogbGVmdDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmxhcmdlLTEge1xuICAgIHdpZHRoOiA4LjMzMzMzJTsgfVxuICAubGFyZ2UtcHVzaC0xIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogOC4zMzMzMyU7IH1cbiAgLmxhcmdlLXB1bGwtMSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC04LjMzMzMzJTsgfVxuICAubGFyZ2Utb2Zmc2V0LTAge1xuICAgIG1hcmdpbi1sZWZ0OiAwJTsgfVxuICAubGFyZ2UtMiB7XG4gICAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAubGFyZ2UtcHVzaC0yIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogMTYuNjY2NjclOyB9XG4gIC5sYXJnZS1wdWxsLTIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtMTYuNjY2NjclOyB9XG4gIC5sYXJnZS1vZmZzZXQtMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDguMzMzMzMlOyB9XG4gIC5sYXJnZS0zIHtcbiAgICB3aWR0aDogMjUlOyB9XG4gIC5sYXJnZS1wdXNoLTMge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAyNSU7IH1cbiAgLmxhcmdlLXB1bGwtMyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC0yNSU7IH1cbiAgLmxhcmdlLW9mZnNldC0yIHtcbiAgICBtYXJnaW4tbGVmdDogMTYuNjY2NjclOyB9XG4gIC5sYXJnZS00IHtcbiAgICB3aWR0aDogMzMuMzMzMzMlOyB9XG4gIC5sYXJnZS1wdXNoLTQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAzMy4zMzMzMyU7IH1cbiAgLmxhcmdlLXB1bGwtNCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC0zMy4zMzMzMyU7IH1cbiAgLmxhcmdlLW9mZnNldC0zIHtcbiAgICBtYXJnaW4tbGVmdDogMjUlOyB9XG4gIC5sYXJnZS01IHtcbiAgICB3aWR0aDogNDEuNjY2NjclOyB9XG4gIC5sYXJnZS1wdXNoLTUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA0MS42NjY2NyU7IH1cbiAgLmxhcmdlLXB1bGwtNSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC00MS42NjY2NyU7IH1cbiAgLmxhcmdlLW9mZnNldC00IHtcbiAgICBtYXJnaW4tbGVmdDogMzMuMzMzMzMlOyB9XG4gIC5sYXJnZS02IHtcbiAgICB3aWR0aDogNTAlOyB9XG4gIC5sYXJnZS1wdXNoLTYge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA1MCU7IH1cbiAgLmxhcmdlLXB1bGwtNiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC01MCU7IH1cbiAgLmxhcmdlLW9mZnNldC01IHtcbiAgICBtYXJnaW4tbGVmdDogNDEuNjY2NjclOyB9XG4gIC5sYXJnZS03IHtcbiAgICB3aWR0aDogNTguMzMzMzMlOyB9XG4gIC5sYXJnZS1wdXNoLTcge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA1OC4zMzMzMyU7IH1cbiAgLmxhcmdlLXB1bGwtNyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC01OC4zMzMzMyU7IH1cbiAgLmxhcmdlLW9mZnNldC02IHtcbiAgICBtYXJnaW4tbGVmdDogNTAlOyB9XG4gIC5sYXJnZS04IHtcbiAgICB3aWR0aDogNjYuNjY2NjclOyB9XG4gIC5sYXJnZS1wdXNoLTgge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA2Ni42NjY2NyU7IH1cbiAgLmxhcmdlLXB1bGwtOCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC02Ni42NjY2NyU7IH1cbiAgLmxhcmdlLW9mZnNldC03IHtcbiAgICBtYXJnaW4tbGVmdDogNTguMzMzMzMlOyB9XG4gIC5sYXJnZS05IHtcbiAgICB3aWR0aDogNzUlOyB9XG4gIC5sYXJnZS1wdXNoLTkge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA3NSU7IH1cbiAgLmxhcmdlLXB1bGwtOSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC03NSU7IH1cbiAgLmxhcmdlLW9mZnNldC04IHtcbiAgICBtYXJnaW4tbGVmdDogNjYuNjY2NjclOyB9XG4gIC5sYXJnZS0xMCB7XG4gICAgd2lkdGg6IDgzLjMzMzMzJTsgfVxuICAubGFyZ2UtcHVzaC0xMCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDgzLjMzMzMzJTsgfVxuICAubGFyZ2UtcHVsbC0xMCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC04My4zMzMzMyU7IH1cbiAgLmxhcmdlLW9mZnNldC05IHtcbiAgICBtYXJnaW4tbGVmdDogNzUlOyB9XG4gIC5sYXJnZS0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAubGFyZ2UtcHVzaC0xMSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDkxLjY2NjY3JTsgfVxuICAubGFyZ2UtcHVsbC0xMSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC05MS42NjY2NyU7IH1cbiAgLmxhcmdlLW9mZnNldC0xMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDgzLjMzMzMzJTsgfVxuICAubGFyZ2UtMTIge1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gIC5sYXJnZS1vZmZzZXQtMTEge1xuICAgIG1hcmdpbi1sZWZ0OiA5MS42NjY2NyU7IH1cbiAgLmxhcmdlLXVwLTEgPiAuY29sdW1uLCAubGFyZ2UtdXAtMSA+IC5jb2x1bW5zIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBmbG9hdDogbGVmdDsgfVxuICAgIC5sYXJnZS11cC0xID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5sYXJnZS11cC0xID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgLmxhcmdlLXVwLTEgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKzEpLCAubGFyZ2UtdXAtMSA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKzEpIHtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgLmxhcmdlLXVwLTEgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5sYXJnZS11cC0xID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgICBmbG9hdDogbGVmdDsgfVxuICAubGFyZ2UtdXAtMiA+IC5jb2x1bW4sIC5sYXJnZS11cC0yID4gLmNvbHVtbnMge1xuICAgIHdpZHRoOiA1MCU7XG4gICAgZmxvYXQ6IGxlZnQ7IH1cbiAgICAubGFyZ2UtdXAtMiA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAubGFyZ2UtdXAtMiA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICBjbGVhcjogbm9uZTsgfVxuICAgIC5sYXJnZS11cC0yID4gLmNvbHVtbjpudGgtb2YtdHlwZSgybisxKSwgLmxhcmdlLXVwLTIgPiAuY29sdW1uczpudGgtb2YtdHlwZSgybisxKSB7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIC5sYXJnZS11cC0yID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAubGFyZ2UtdXAtMiA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgICAgZmxvYXQ6IGxlZnQ7IH1cbiAgLmxhcmdlLXVwLTMgPiAuY29sdW1uLCAubGFyZ2UtdXAtMyA+IC5jb2x1bW5zIHtcbiAgICB3aWR0aDogMzMuMzMzMzMlO1xuICAgIGZsb2F0OiBsZWZ0OyB9XG4gICAgLmxhcmdlLXVwLTMgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLmxhcmdlLXVwLTMgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAubGFyZ2UtdXAtMyA+IC5jb2x1bW46bnRoLW9mLXR5cGUoM24rMSksIC5sYXJnZS11cC0zID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoM24rMSkge1xuICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAubGFyZ2UtdXAtMyA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLmxhcmdlLXVwLTMgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICAgIGZsb2F0OiBsZWZ0OyB9XG4gIC5sYXJnZS11cC00ID4gLmNvbHVtbiwgLmxhcmdlLXVwLTQgPiAuY29sdW1ucyB7XG4gICAgd2lkdGg6IDI1JTtcbiAgICBmbG9hdDogbGVmdDsgfVxuICAgIC5sYXJnZS11cC00ID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5sYXJnZS11cC00ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgLmxhcmdlLXVwLTQgPiAuY29sdW1uOm50aC1vZi10eXBlKDRuKzEpLCAubGFyZ2UtdXAtNCA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDRuKzEpIHtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgLmxhcmdlLXVwLTQgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5sYXJnZS11cC00ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgICBmbG9hdDogbGVmdDsgfVxuICAubGFyZ2UtdXAtNSA+IC5jb2x1bW4sIC5sYXJnZS11cC01ID4gLmNvbHVtbnMge1xuICAgIHdpZHRoOiAyMCU7XG4gICAgZmxvYXQ6IGxlZnQ7IH1cbiAgICAubGFyZ2UtdXAtNSA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAubGFyZ2UtdXAtNSA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICBjbGVhcjogbm9uZTsgfVxuICAgIC5sYXJnZS11cC01ID4gLmNvbHVtbjpudGgtb2YtdHlwZSg1bisxKSwgLmxhcmdlLXVwLTUgPiAuY29sdW1uczpudGgtb2YtdHlwZSg1bisxKSB7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIC5sYXJnZS11cC01ID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAubGFyZ2UtdXAtNSA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgICAgZmxvYXQ6IGxlZnQ7IH1cbiAgLmxhcmdlLXVwLTYgPiAuY29sdW1uLCAubGFyZ2UtdXAtNiA+IC5jb2x1bW5zIHtcbiAgICB3aWR0aDogMTYuNjY2NjclO1xuICAgIGZsb2F0OiBsZWZ0OyB9XG4gICAgLmxhcmdlLXVwLTYgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLmxhcmdlLXVwLTYgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAubGFyZ2UtdXAtNiA+IC5jb2x1bW46bnRoLW9mLXR5cGUoNm4rMSksIC5sYXJnZS11cC02ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoNm4rMSkge1xuICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAubGFyZ2UtdXAtNiA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLmxhcmdlLXVwLTYgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICAgIGZsb2F0OiBsZWZ0OyB9XG4gIC5sYXJnZS1jb2xsYXBzZSA+IC5jb2x1bW4sIC5sYXJnZS1jb2xsYXBzZSA+IC5jb2x1bW5zIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgcGFkZGluZy1yaWdodDogMDsgfVxuICAubGFyZ2UtY29sbGFwc2UgLnJvdyB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgbWFyZ2luLXJpZ2h0OiAwOyB9XG4gIC5sYXJnZS11bmNvbGxhcHNlID4gLmNvbHVtbiwgLmxhcmdlLXVuY29sbGFwc2UgPiAuY29sdW1ucyB7XG4gICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07XG4gICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtOyB9XG4gIC5sYXJnZS1jZW50ZXJlZCB7XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XG4gIC5sYXJnZS11bmNlbnRlcmVkLFxuICAubGFyZ2UtcHVzaC0wLFxuICAubGFyZ2UtcHVsbC0wIHtcbiAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBmbG9hdDogbGVmdDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLnhsYXJnZS0xIHtcbiAgICB3aWR0aDogOC4zMzMzMyU7IH1cbiAgLnhsYXJnZS1wdXNoLTEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA4LjMzMzMzJTsgfVxuICAueGxhcmdlLXB1bGwtMSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC04LjMzMzMzJTsgfVxuICAueGxhcmdlLW9mZnNldC0wIHtcbiAgICBtYXJnaW4tbGVmdDogMCU7IH1cbiAgLnhsYXJnZS0yIHtcbiAgICB3aWR0aDogMTYuNjY2NjclOyB9XG4gIC54bGFyZ2UtcHVzaC0yIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogMTYuNjY2NjclOyB9XG4gIC54bGFyZ2UtcHVsbC0yIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTE2LjY2NjY3JTsgfVxuICAueGxhcmdlLW9mZnNldC0xIHtcbiAgICBtYXJnaW4tbGVmdDogOC4zMzMzMyU7IH1cbiAgLnhsYXJnZS0zIHtcbiAgICB3aWR0aDogMjUlOyB9XG4gIC54bGFyZ2UtcHVzaC0zIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogMjUlOyB9XG4gIC54bGFyZ2UtcHVsbC0zIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTI1JTsgfVxuICAueGxhcmdlLW9mZnNldC0yIHtcbiAgICBtYXJnaW4tbGVmdDogMTYuNjY2NjclOyB9XG4gIC54bGFyZ2UtNCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAueGxhcmdlLXB1c2gtNCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDMzLjMzMzMzJTsgfVxuICAueGxhcmdlLXB1bGwtNCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC0zMy4zMzMzMyU7IH1cbiAgLnhsYXJnZS1vZmZzZXQtMyB7XG4gICAgbWFyZ2luLWxlZnQ6IDI1JTsgfVxuICAueGxhcmdlLTUge1xuICAgIHdpZHRoOiA0MS42NjY2NyU7IH1cbiAgLnhsYXJnZS1wdXNoLTUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA0MS42NjY2NyU7IH1cbiAgLnhsYXJnZS1wdWxsLTUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtNDEuNjY2NjclOyB9XG4gIC54bGFyZ2Utb2Zmc2V0LTQge1xuICAgIG1hcmdpbi1sZWZ0OiAzMy4zMzMzMyU7IH1cbiAgLnhsYXJnZS02IHtcbiAgICB3aWR0aDogNTAlOyB9XG4gIC54bGFyZ2UtcHVzaC02IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogNTAlOyB9XG4gIC54bGFyZ2UtcHVsbC02IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTUwJTsgfVxuICAueGxhcmdlLW9mZnNldC01IHtcbiAgICBtYXJnaW4tbGVmdDogNDEuNjY2NjclOyB9XG4gIC54bGFyZ2UtNyB7XG4gICAgd2lkdGg6IDU4LjMzMzMzJTsgfVxuICAueGxhcmdlLXB1c2gtNyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDU4LjMzMzMzJTsgfVxuICAueGxhcmdlLXB1bGwtNyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC01OC4zMzMzMyU7IH1cbiAgLnhsYXJnZS1vZmZzZXQtNiB7XG4gICAgbWFyZ2luLWxlZnQ6IDUwJTsgfVxuICAueGxhcmdlLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgLnhsYXJnZS1wdXNoLTgge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA2Ni42NjY2NyU7IH1cbiAgLnhsYXJnZS1wdWxsLTgge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtNjYuNjY2NjclOyB9XG4gIC54bGFyZ2Utb2Zmc2V0LTcge1xuICAgIG1hcmdpbi1sZWZ0OiA1OC4zMzMzMyU7IH1cbiAgLnhsYXJnZS05IHtcbiAgICB3aWR0aDogNzUlOyB9XG4gIC54bGFyZ2UtcHVzaC05IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogNzUlOyB9XG4gIC54bGFyZ2UtcHVsbC05IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTc1JTsgfVxuICAueGxhcmdlLW9mZnNldC04IHtcbiAgICBtYXJnaW4tbGVmdDogNjYuNjY2NjclOyB9XG4gIC54bGFyZ2UtMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMyU7IH1cbiAgLnhsYXJnZS1wdXNoLTEwIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogODMuMzMzMzMlOyB9XG4gIC54bGFyZ2UtcHVsbC0xMCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC04My4zMzMzMyU7IH1cbiAgLnhsYXJnZS1vZmZzZXQtOSB7XG4gICAgbWFyZ2luLWxlZnQ6IDc1JTsgfVxuICAueGxhcmdlLTExIHtcbiAgICB3aWR0aDogOTEuNjY2NjclOyB9XG4gIC54bGFyZ2UtcHVzaC0xMSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDkxLjY2NjY3JTsgfVxuICAueGxhcmdlLXB1bGwtMTEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtOTEuNjY2NjclOyB9XG4gIC54bGFyZ2Utb2Zmc2V0LTEwIHtcbiAgICBtYXJnaW4tbGVmdDogODMuMzMzMzMlOyB9XG4gIC54bGFyZ2UtMTIge1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gIC54bGFyZ2Utb2Zmc2V0LTExIHtcbiAgICBtYXJnaW4tbGVmdDogOTEuNjY2NjclOyB9XG4gIC54bGFyZ2UtdXAtMSA+IC5jb2x1bW4sIC54bGFyZ2UtdXAtMSA+IC5jb2x1bW5zIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBmbG9hdDogbGVmdDsgfVxuICAgIC54bGFyZ2UtdXAtMSA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAueGxhcmdlLXVwLTEgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAueGxhcmdlLXVwLTEgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKzEpLCAueGxhcmdlLXVwLTEgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbisxKSB7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIC54bGFyZ2UtdXAtMSA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLnhsYXJnZS11cC0xID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgICBmbG9hdDogbGVmdDsgfVxuICAueGxhcmdlLXVwLTIgPiAuY29sdW1uLCAueGxhcmdlLXVwLTIgPiAuY29sdW1ucyB7XG4gICAgd2lkdGg6IDUwJTtcbiAgICBmbG9hdDogbGVmdDsgfVxuICAgIC54bGFyZ2UtdXAtMiA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAueGxhcmdlLXVwLTIgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAueGxhcmdlLXVwLTIgPiAuY29sdW1uOm50aC1vZi10eXBlKDJuKzEpLCAueGxhcmdlLXVwLTIgPiAuY29sdW1uczpudGgtb2YtdHlwZSgybisxKSB7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIC54bGFyZ2UtdXAtMiA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLnhsYXJnZS11cC0yID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgICBmbG9hdDogbGVmdDsgfVxuICAueGxhcmdlLXVwLTMgPiAuY29sdW1uLCAueGxhcmdlLXVwLTMgPiAuY29sdW1ucyB7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTtcbiAgICBmbG9hdDogbGVmdDsgfVxuICAgIC54bGFyZ2UtdXAtMyA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAueGxhcmdlLXVwLTMgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAueGxhcmdlLXVwLTMgPiAuY29sdW1uOm50aC1vZi10eXBlKDNuKzEpLCAueGxhcmdlLXVwLTMgPiAuY29sdW1uczpudGgtb2YtdHlwZSgzbisxKSB7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIC54bGFyZ2UtdXAtMyA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLnhsYXJnZS11cC0zID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgICBmbG9hdDogbGVmdDsgfVxuICAueGxhcmdlLXVwLTQgPiAuY29sdW1uLCAueGxhcmdlLXVwLTQgPiAuY29sdW1ucyB7XG4gICAgd2lkdGg6IDI1JTtcbiAgICBmbG9hdDogbGVmdDsgfVxuICAgIC54bGFyZ2UtdXAtNCA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAueGxhcmdlLXVwLTQgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAueGxhcmdlLXVwLTQgPiAuY29sdW1uOm50aC1vZi10eXBlKDRuKzEpLCAueGxhcmdlLXVwLTQgPiAuY29sdW1uczpudGgtb2YtdHlwZSg0bisxKSB7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIC54bGFyZ2UtdXAtNCA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLnhsYXJnZS11cC00ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgICBmbG9hdDogbGVmdDsgfVxuICAueGxhcmdlLXVwLTUgPiAuY29sdW1uLCAueGxhcmdlLXVwLTUgPiAuY29sdW1ucyB7XG4gICAgd2lkdGg6IDIwJTtcbiAgICBmbG9hdDogbGVmdDsgfVxuICAgIC54bGFyZ2UtdXAtNSA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAueGxhcmdlLXVwLTUgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAueGxhcmdlLXVwLTUgPiAuY29sdW1uOm50aC1vZi10eXBlKDVuKzEpLCAueGxhcmdlLXVwLTUgPiAuY29sdW1uczpudGgtb2YtdHlwZSg1bisxKSB7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIC54bGFyZ2UtdXAtNSA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLnhsYXJnZS11cC01ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgICBmbG9hdDogbGVmdDsgfVxuICAueGxhcmdlLXVwLTYgPiAuY29sdW1uLCAueGxhcmdlLXVwLTYgPiAuY29sdW1ucyB7XG4gICAgd2lkdGg6IDE2LjY2NjY3JTtcbiAgICBmbG9hdDogbGVmdDsgfVxuICAgIC54bGFyZ2UtdXAtNiA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAueGxhcmdlLXVwLTYgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAueGxhcmdlLXVwLTYgPiAuY29sdW1uOm50aC1vZi10eXBlKDZuKzEpLCAueGxhcmdlLXVwLTYgPiAuY29sdW1uczpudGgtb2YtdHlwZSg2bisxKSB7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIC54bGFyZ2UtdXAtNiA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLnhsYXJnZS11cC02ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgICBmbG9hdDogbGVmdDsgfVxuICAueGxhcmdlLWNvbGxhcHNlID4gLmNvbHVtbiwgLnhsYXJnZS1jb2xsYXBzZSA+IC5jb2x1bW5zIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgcGFkZGluZy1yaWdodDogMDsgfVxuICAueGxhcmdlLWNvbGxhcHNlIC5yb3cge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIG1hcmdpbi1yaWdodDogMDsgfVxuICAueGxhcmdlLXVuY29sbGFwc2UgPiAuY29sdW1uLCAueGxhcmdlLXVuY29sbGFwc2UgPiAuY29sdW1ucyB7XG4gICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07XG4gICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtOyB9XG4gIC54bGFyZ2UtY2VudGVyZWQge1xuICAgIGZsb2F0OiBub25lO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bzsgfVxuICAueGxhcmdlLXVuY2VudGVyZWQsXG4gIC54bGFyZ2UtcHVzaC0wLFxuICAueGxhcmdlLXB1bGwtMCB7XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgZmxvYXQ6IGxlZnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gIC54eGxhcmdlLTEge1xuICAgIHdpZHRoOiA4LjMzMzMzJTsgfVxuICAueHhsYXJnZS1wdXNoLTEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA4LjMzMzMzJTsgfVxuICAueHhsYXJnZS1wdWxsLTEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtOC4zMzMzMyU7IH1cbiAgLnh4bGFyZ2Utb2Zmc2V0LTAge1xuICAgIG1hcmdpbi1sZWZ0OiAwJTsgfVxuICAueHhsYXJnZS0yIHtcbiAgICB3aWR0aDogMTYuNjY2NjclOyB9XG4gIC54eGxhcmdlLXB1c2gtMiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDE2LjY2NjY3JTsgfVxuICAueHhsYXJnZS1wdWxsLTIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtMTYuNjY2NjclOyB9XG4gIC54eGxhcmdlLW9mZnNldC0xIHtcbiAgICBtYXJnaW4tbGVmdDogOC4zMzMzMyU7IH1cbiAgLnh4bGFyZ2UtMyB7XG4gICAgd2lkdGg6IDI1JTsgfVxuICAueHhsYXJnZS1wdXNoLTMge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAyNSU7IH1cbiAgLnh4bGFyZ2UtcHVsbC0zIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTI1JTsgfVxuICAueHhsYXJnZS1vZmZzZXQtMiB7XG4gICAgbWFyZ2luLWxlZnQ6IDE2LjY2NjY3JTsgfVxuICAueHhsYXJnZS00IHtcbiAgICB3aWR0aDogMzMuMzMzMzMlOyB9XG4gIC54eGxhcmdlLXB1c2gtNCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDMzLjMzMzMzJTsgfVxuICAueHhsYXJnZS1wdWxsLTQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtMzMuMzMzMzMlOyB9XG4gIC54eGxhcmdlLW9mZnNldC0zIHtcbiAgICBtYXJnaW4tbGVmdDogMjUlOyB9XG4gIC54eGxhcmdlLTUge1xuICAgIHdpZHRoOiA0MS42NjY2NyU7IH1cbiAgLnh4bGFyZ2UtcHVzaC01IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogNDEuNjY2NjclOyB9XG4gIC54eGxhcmdlLXB1bGwtNSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC00MS42NjY2NyU7IH1cbiAgLnh4bGFyZ2Utb2Zmc2V0LTQge1xuICAgIG1hcmdpbi1sZWZ0OiAzMy4zMzMzMyU7IH1cbiAgLnh4bGFyZ2UtNiB7XG4gICAgd2lkdGg6IDUwJTsgfVxuICAueHhsYXJnZS1wdXNoLTYge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA1MCU7IH1cbiAgLnh4bGFyZ2UtcHVsbC02IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTUwJTsgfVxuICAueHhsYXJnZS1vZmZzZXQtNSB7XG4gICAgbWFyZ2luLWxlZnQ6IDQxLjY2NjY3JTsgfVxuICAueHhsYXJnZS03IHtcbiAgICB3aWR0aDogNTguMzMzMzMlOyB9XG4gIC54eGxhcmdlLXB1c2gtNyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDU4LjMzMzMzJTsgfVxuICAueHhsYXJnZS1wdWxsLTcge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtNTguMzMzMzMlOyB9XG4gIC54eGxhcmdlLW9mZnNldC02IHtcbiAgICBtYXJnaW4tbGVmdDogNTAlOyB9XG4gIC54eGxhcmdlLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgLnh4bGFyZ2UtcHVzaC04IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogNjYuNjY2NjclOyB9XG4gIC54eGxhcmdlLXB1bGwtOCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC02Ni42NjY2NyU7IH1cbiAgLnh4bGFyZ2Utb2Zmc2V0LTcge1xuICAgIG1hcmdpbi1sZWZ0OiA1OC4zMzMzMyU7IH1cbiAgLnh4bGFyZ2UtOSB7XG4gICAgd2lkdGg6IDc1JTsgfVxuICAueHhsYXJnZS1wdXNoLTkge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA3NSU7IH1cbiAgLnh4bGFyZ2UtcHVsbC05IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTc1JTsgfVxuICAueHhsYXJnZS1vZmZzZXQtOCB7XG4gICAgbWFyZ2luLWxlZnQ6IDY2LjY2NjY3JTsgfVxuICAueHhsYXJnZS0xMCB7XG4gICAgd2lkdGg6IDgzLjMzMzMzJTsgfVxuICAueHhsYXJnZS1wdXNoLTEwIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogODMuMzMzMzMlOyB9XG4gIC54eGxhcmdlLXB1bGwtMTAge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtODMuMzMzMzMlOyB9XG4gIC54eGxhcmdlLW9mZnNldC05IHtcbiAgICBtYXJnaW4tbGVmdDogNzUlOyB9XG4gIC54eGxhcmdlLTExIHtcbiAgICB3aWR0aDogOTEuNjY2NjclOyB9XG4gIC54eGxhcmdlLXB1c2gtMTEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA5MS42NjY2NyU7IH1cbiAgLnh4bGFyZ2UtcHVsbC0xMSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC05MS42NjY2NyU7IH1cbiAgLnh4bGFyZ2Utb2Zmc2V0LTEwIHtcbiAgICBtYXJnaW4tbGVmdDogODMuMzMzMzMlOyB9XG4gIC54eGxhcmdlLTEyIHtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAueHhsYXJnZS1vZmZzZXQtMTEge1xuICAgIG1hcmdpbi1sZWZ0OiA5MS42NjY2NyU7IH1cbiAgLnh4bGFyZ2UtdXAtMSA+IC5jb2x1bW4sIC54eGxhcmdlLXVwLTEgPiAuY29sdW1ucyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZmxvYXQ6IGxlZnQ7IH1cbiAgICAueHhsYXJnZS11cC0xID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC54eGxhcmdlLXVwLTEgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAueHhsYXJnZS11cC0xID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbisxKSwgLnh4bGFyZ2UtdXAtMSA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKzEpIHtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgLnh4bGFyZ2UtdXAtMSA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLnh4bGFyZ2UtdXAtMSA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgICAgZmxvYXQ6IGxlZnQ7IH1cbiAgLnh4bGFyZ2UtdXAtMiA+IC5jb2x1bW4sIC54eGxhcmdlLXVwLTIgPiAuY29sdW1ucyB7XG4gICAgd2lkdGg6IDUwJTtcbiAgICBmbG9hdDogbGVmdDsgfVxuICAgIC54eGxhcmdlLXVwLTIgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLnh4bGFyZ2UtdXAtMiA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICBjbGVhcjogbm9uZTsgfVxuICAgIC54eGxhcmdlLXVwLTIgPiAuY29sdW1uOm50aC1vZi10eXBlKDJuKzEpLCAueHhsYXJnZS11cC0yID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMm4rMSkge1xuICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAueHhsYXJnZS11cC0yID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAueHhsYXJnZS11cC0yID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgICBmbG9hdDogbGVmdDsgfVxuICAueHhsYXJnZS11cC0zID4gLmNvbHVtbiwgLnh4bGFyZ2UtdXAtMyA+IC5jb2x1bW5zIHtcbiAgICB3aWR0aDogMzMuMzMzMzMlO1xuICAgIGZsb2F0OiBsZWZ0OyB9XG4gICAgLnh4bGFyZ2UtdXAtMyA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAueHhsYXJnZS11cC0zID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgLnh4bGFyZ2UtdXAtMyA+IC5jb2x1bW46bnRoLW9mLXR5cGUoM24rMSksIC54eGxhcmdlLXVwLTMgPiAuY29sdW1uczpudGgtb2YtdHlwZSgzbisxKSB7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIC54eGxhcmdlLXVwLTMgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC54eGxhcmdlLXVwLTMgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICAgIGZsb2F0OiBsZWZ0OyB9XG4gIC54eGxhcmdlLXVwLTQgPiAuY29sdW1uLCAueHhsYXJnZS11cC00ID4gLmNvbHVtbnMge1xuICAgIHdpZHRoOiAyNSU7XG4gICAgZmxvYXQ6IGxlZnQ7IH1cbiAgICAueHhsYXJnZS11cC00ID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC54eGxhcmdlLXVwLTQgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgICAgY2xlYXI6IG5vbmU7IH1cbiAgICAueHhsYXJnZS11cC00ID4gLmNvbHVtbjpudGgtb2YtdHlwZSg0bisxKSwgLnh4bGFyZ2UtdXAtNCA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDRuKzEpIHtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgLnh4bGFyZ2UtdXAtNCA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLnh4bGFyZ2UtdXAtNCA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgICAgZmxvYXQ6IGxlZnQ7IH1cbiAgLnh4bGFyZ2UtdXAtNSA+IC5jb2x1bW4sIC54eGxhcmdlLXVwLTUgPiAuY29sdW1ucyB7XG4gICAgd2lkdGg6IDIwJTtcbiAgICBmbG9hdDogbGVmdDsgfVxuICAgIC54eGxhcmdlLXVwLTUgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLnh4bGFyZ2UtdXAtNSA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICBjbGVhcjogbm9uZTsgfVxuICAgIC54eGxhcmdlLXVwLTUgPiAuY29sdW1uOm50aC1vZi10eXBlKDVuKzEpLCAueHhsYXJnZS11cC01ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoNW4rMSkge1xuICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAueHhsYXJnZS11cC01ID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAueHhsYXJnZS11cC01ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgICBmbG9hdDogbGVmdDsgfVxuICAueHhsYXJnZS11cC02ID4gLmNvbHVtbiwgLnh4bGFyZ2UtdXAtNiA+IC5jb2x1bW5zIHtcbiAgICB3aWR0aDogMTYuNjY2NjclO1xuICAgIGZsb2F0OiBsZWZ0OyB9XG4gICAgLnh4bGFyZ2UtdXAtNiA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAueHhsYXJnZS11cC02ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgLnh4bGFyZ2UtdXAtNiA+IC5jb2x1bW46bnRoLW9mLXR5cGUoNm4rMSksIC54eGxhcmdlLXVwLTYgPiAuY29sdW1uczpudGgtb2YtdHlwZSg2bisxKSB7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIC54eGxhcmdlLXVwLTYgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC54eGxhcmdlLXVwLTYgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICAgIGZsb2F0OiBsZWZ0OyB9XG4gIC54eGxhcmdlLWNvbGxhcHNlID4gLmNvbHVtbiwgLnh4bGFyZ2UtY29sbGFwc2UgPiAuY29sdW1ucyB7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7IH1cbiAgLnh4bGFyZ2UtY29sbGFwc2UgLnJvdyB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgbWFyZ2luLXJpZ2h0OiAwOyB9XG4gIC54eGxhcmdlLXVuY29sbGFwc2UgPiAuY29sdW1uLCAueHhsYXJnZS11bmNvbGxhcHNlID4gLmNvbHVtbnMge1xuICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtO1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTsgfVxuICAueHhsYXJnZS1jZW50ZXJlZCB7XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XG4gIC54eGxhcmdlLXVuY2VudGVyZWQsXG4gIC54eGxhcmdlLXB1c2gtMCxcbiAgLnh4bGFyZ2UtcHVsbC0wIHtcbiAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBmbG9hdDogbGVmdDsgfSB9XG5cbmRpdixcbmRsLFxuZHQsXG5kZCxcbnVsLFxub2wsXG5saSwgaDEsIC50aXRsZS0xLFxuaDIsXG4ucnN0IGgxLFxuLnJzdCAudGl0bGUtMSxcbi50aXRsZS0yLFxuaDMsXG4uaDMsXG4ucnN0IGgyLFxuLnJzdCBoMSxcbi5yc3QgLnRpdGxlLTEsXG4ucnN0IC50aXRsZS0yLFxuLnRpdGxlLTMsXG5oNCxcbi5yc3QgaDMsXG4ucnN0IC5oMyxcbi5yc3QgaDIsXG4ucnN0IGgxLFxuLnJzdCAudGl0bGUtMSxcbi5yc3QgLnRpdGxlLTIsXG4ucnN0IC50aXRsZS0zLFxuLnRpdGxlLTQsXG5oNSxcbi5yc3QgaDQsXG4ucnN0IGgzLFxuLnJzdCAuaDMsXG4ucnN0IGgyLFxuLnJzdCBoMSxcbi5yc3QgLnRpdGxlLTEsXG4ucnN0IC50aXRsZS0yLFxuLnJzdCAudGl0bGUtMyxcbi5yc3QgLnRpdGxlLTQsXG4udGl0bGUtNSxcbmg2LFxucHJlLFxuZm9ybSxcbnAsXG5ibG9ja3F1b3RlLFxudGgsXG50ZCB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDsgfVxuXG5wIHtcbiAgZm9udC1zaXplOiBpbmhlcml0O1xuICBsaW5lLWhlaWdodDogMS42O1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICB0ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5OyB9XG5cbmVtLFxuaSB7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7IH1cblxuc3Ryb25nLFxuYiB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDsgfVxuXG5zbWFsbCB7XG4gIGZvbnQtc2l6ZTogODAlO1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDsgfVxuXG5oMSwgLnRpdGxlLTEsXG5oMixcbi5yc3QgaDEsXG4ucnN0IC50aXRsZS0xLFxuLnRpdGxlLTIsXG5oMyxcbi5oMyxcbi5yc3QgaDIsXG4ucnN0IGgxLFxuLnJzdCAudGl0bGUtMSxcbi5yc3QgLnRpdGxlLTIsXG4udGl0bGUtMyxcbmg0LFxuLnJzdCBoMyxcbi5yc3QgLmgzLFxuLnJzdCBoMixcbi5yc3QgaDEsXG4ucnN0IC50aXRsZS0xLFxuLnJzdCAudGl0bGUtMixcbi5yc3QgLnRpdGxlLTMsXG4udGl0bGUtNCxcbmg1LFxuLnJzdCBoNCxcbi5yc3QgaDMsXG4ucnN0IC5oMyxcbi5yc3QgaDIsXG4ucnN0IGgxLFxuLnJzdCAudGl0bGUtMSxcbi5yc3QgLnRpdGxlLTIsXG4ucnN0IC50aXRsZS0zLFxuLnJzdCAudGl0bGUtNCxcbi50aXRsZS01LFxuaDYge1xuICBmb250LWZhbWlseTogXCJJbnRlclwiLCBIZWx2ZXRpY2EsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIHRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHk7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNDsgfVxuICBoMSBzbWFsbCwgLnRpdGxlLTEgc21hbGwsXG4gIGgyIHNtYWxsLFxuICAucnN0IGgxIHNtYWxsLFxuICAucnN0IC50aXRsZS0xIHNtYWxsLFxuICAudGl0bGUtMiBzbWFsbCxcbiAgaDMgc21hbGwsXG4gIC5oMyBzbWFsbCxcbiAgLnJzdCBoMiBzbWFsbCxcbiAgLnJzdCBoMSBzbWFsbCxcbiAgLnJzdCAudGl0bGUtMSBzbWFsbCxcbiAgLnJzdCAudGl0bGUtMiBzbWFsbCxcbiAgLnRpdGxlLTMgc21hbGwsXG4gIGg0IHNtYWxsLFxuICAucnN0IGgzIHNtYWxsLFxuICAucnN0IC5oMyBzbWFsbCxcbiAgLnJzdCBoMiBzbWFsbCxcbiAgLnJzdCBoMSBzbWFsbCxcbiAgLnJzdCAudGl0bGUtMSBzbWFsbCxcbiAgLnJzdCAudGl0bGUtMiBzbWFsbCxcbiAgLnJzdCAudGl0bGUtMyBzbWFsbCxcbiAgLnRpdGxlLTQgc21hbGwsXG4gIGg1IHNtYWxsLFxuICAucnN0IGg0IHNtYWxsLFxuICAucnN0IGgzIHNtYWxsLFxuICAucnN0IC5oMyBzbWFsbCxcbiAgLnJzdCBoMiBzbWFsbCxcbiAgLnJzdCBoMSBzbWFsbCxcbiAgLnJzdCAudGl0bGUtMSBzbWFsbCxcbiAgLnJzdCAudGl0bGUtMiBzbWFsbCxcbiAgLnJzdCAudGl0bGUtMyBzbWFsbCxcbiAgLnJzdCAudGl0bGUtNCBzbWFsbCxcbiAgLnRpdGxlLTUgc21hbGwsXG4gIGg2IHNtYWxsIHtcbiAgICBjb2xvcjogI0RERDtcbiAgICBsaW5lLWhlaWdodDogMDsgfVxuXG5oMSwgLnRpdGxlLTEge1xuICBmb250LXNpemU6IDJyZW07IH1cblxuXG5oMixcbi5yc3QgaDEsXG4ucnN0IC50aXRsZS0xLFxuLnRpdGxlLTIge1xuICBmb250LXNpemU6IDEuMjVyZW07IH1cblxuXG5oMyxcbi5oMyxcbi5yc3QgaDIsXG4ucnN0IGgxLFxuLnJzdCAudGl0bGUtMSxcbi5yc3QgLnRpdGxlLTIsXG4udGl0bGUtMyB7XG4gIGZvbnQtc2l6ZTogMS4xODc1cmVtOyB9XG5cblxuaDQsXG4ucnN0IGgzLFxuLnJzdCAuaDMsXG4ucnN0IGgyLFxuLnJzdCBoMSxcbi5yc3QgLnRpdGxlLTEsXG4ucnN0IC50aXRsZS0yLFxuLnJzdCAudGl0bGUtMyxcbi50aXRsZS00IHtcbiAgZm9udC1zaXplOiAxLjEyNXJlbTsgfVxuXG5cbmg1LFxuLnJzdCBoNCxcbi5yc3QgaDMsXG4ucnN0IC5oMyxcbi5yc3QgaDIsXG4ucnN0IGgxLFxuLnJzdCAudGl0bGUtMSxcbi5yc3QgLnRpdGxlLTIsXG4ucnN0IC50aXRsZS0zLFxuLnJzdCAudGl0bGUtNCxcbi50aXRsZS01IHtcbiAgZm9udC1zaXplOiAxLjA2MjVyZW07IH1cblxuaDYge1xuICBmb250LXNpemU6IDFyZW07IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICBoMSwgLnRpdGxlLTEge1xuICAgIGZvbnQtc2l6ZTogMi44NzVyZW07IH1cbiAgXG4gIGgyLFxuICAucnN0IGgxLFxuICAucnN0IC50aXRsZS0xLFxuICAudGl0bGUtMiB7XG4gICAgZm9udC1zaXplOiAyLjI1cmVtOyB9XG4gIFxuICBoMyxcbiAgLmgzLFxuICAucnN0IGgyLFxuICAucnN0IGgxLFxuICAucnN0IC50aXRsZS0xLFxuICAucnN0IC50aXRsZS0yLFxuICAudGl0bGUtMyB7XG4gICAgZm9udC1zaXplOiAxLjYyNXJlbTsgfVxuICBcbiAgaDQsXG4gIC5yc3QgaDMsXG4gIC5yc3QgLmgzLFxuICAucnN0IGgyLFxuICAucnN0IGgxLFxuICAucnN0IC50aXRsZS0xLFxuICAucnN0IC50aXRsZS0yLFxuICAucnN0IC50aXRsZS0zLFxuICAudGl0bGUtNCB7XG4gICAgZm9udC1zaXplOiAxLjI1cmVtOyB9XG4gIFxuICBoNSxcbiAgLnJzdCBoNCxcbiAgLnJzdCBoMyxcbiAgLnJzdCAuaDMsXG4gIC5yc3QgaDIsXG4gIC5yc3QgaDEsXG4gIC5yc3QgLnRpdGxlLTEsXG4gIC5yc3QgLnRpdGxlLTIsXG4gIC5yc3QgLnRpdGxlLTMsXG4gIC5yc3QgLnRpdGxlLTQsXG4gIC50aXRsZS01IHtcbiAgICBmb250LXNpemU6IDEuMTI1cmVtOyB9XG4gIGg2IHtcbiAgICBmb250LXNpemU6IDFyZW07IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIGgxLCAudGl0bGUtMSB7XG4gICAgZm9udC1zaXplOiA0cmVtOyB9IH1cblxuYSB7XG4gIGNvbG9yOiAjZGQzMzMzO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgYTpob3ZlciwgYTpmb2N1cyB7XG4gICAgY29sb3I6ICNjOTIxMjE7IH1cbiAgYSBpbWcge1xuICAgIGJvcmRlcjogMDsgfVxuXG5ociB7XG4gIG1heC13aWR0aDogNzVyZW07XG4gIGhlaWdodDogMDtcbiAgYm9yZGVyLXJpZ2h0OiAwO1xuICBib3JkZXItdG9wOiAwO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI0RERDtcbiAgYm9yZGVyLWxlZnQ6IDA7XG4gIG1hcmdpbjogMS4yNXJlbSBhdXRvO1xuICBjbGVhcjogYm90aDsgfVxuXG51bCxcbm9sLFxuZGwge1xuICBsaW5lLWhlaWdodDogMS42O1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBsaXN0LXN0eWxlLXBvc2l0aW9uOiBvdXRzaWRlOyB9XG5cbmxpIHtcbiAgZm9udC1zaXplOiBpbmhlcml0OyB9XG5cbnVsIHtcbiAgbGlzdC1zdHlsZS10eXBlOiBkaXNjO1xuICBtYXJnaW4tbGVmdDogMS4yNXJlbTsgfVxuXG5vbCB7XG4gIG1hcmdpbi1sZWZ0OiAxLjI1cmVtOyB9XG5cbnVsIHVsLCBvbCB1bCwgdWwgb2wsIG9sIG9sIHtcbiAgbWFyZ2luLWxlZnQ6IDEuMjVyZW07XG4gIG1hcmdpbi1ib3R0b206IDA7IH1cblxuZGwge1xuICBtYXJnaW4tYm90dG9tOiAxcmVtOyB9XG4gIGRsIGR0IHtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjNyZW07XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7IH1cblxuYmxvY2txdW90ZSB7XG4gIG1hcmdpbjogMCAwIDFyZW07XG4gIHBhZGRpbmc6IDAuNTYyNXJlbSAxLjI1cmVtIDAgMS4xODc1cmVtO1xuICBib3JkZXItbGVmdDogMXB4IHNvbGlkICNEREQ7IH1cbiAgYmxvY2txdW90ZSwgYmxvY2txdW90ZSBwIHtcbiAgICBsaW5lLWhlaWdodDogMS42O1xuICAgIGNvbG9yOiAjOGE4YThhOyB9XG5cbmNpdGUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1zaXplOiAwLjgxMjVyZW07XG4gIGNvbG9yOiAjOGE4YThhOyB9XG4gIGNpdGU6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnXFwyMDE0IFxcMDAyMCc7IH1cblxuYWJiciB7XG4gIGNvbG9yOiAjMWQyYTI5O1xuICBjdXJzb3I6IGhlbHA7XG4gIGJvcmRlci1ib3R0b206IDFweCBkb3R0ZWQgIzBhMGEwYTsgfVxuXG5jb2RlIHtcbiAgZm9udC1mYW1pbHk6IENvbnNvbGFzLCBcIkxpYmVyYXRpb24gTW9ub1wiLCBDb3VyaWVyLCBtb25vc3BhY2U7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGNvbG9yOiAjMGEwYTBhO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRTBFMEUwO1xuICBib3JkZXI6IDFweCBzb2xpZCAjREREO1xuICBwYWRkaW5nOiAwLjEyNXJlbSAwLjMxMjVyZW0gMC4wNjI1cmVtOyB9XG5cbmtiZCB7XG4gIHBhZGRpbmc6IDAuMTI1cmVtIDAuMjVyZW0gMDtcbiAgbWFyZ2luOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRTBFMEUwO1xuICBjb2xvcjogIzBhMGEwYTtcbiAgZm9udC1mYW1pbHk6IENvbnNvbGFzLCBcIkxpYmVyYXRpb24gTW9ub1wiLCBDb3VyaWVyLCBtb25vc3BhY2U7IH1cblxuLnN1YmhlYWRlciB7XG4gIG1hcmdpbi10b3A6IDAuMnJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBsaW5lLWhlaWdodDogMS40O1xuICBjb2xvcjogIzhhOGE4YTsgfVxuXG4ubGVhZCB7XG4gIGZvbnQtc2l6ZTogMTI1JTtcbiAgbGluZS1oZWlnaHQ6IDEuNjsgfVxuXG4uc3RhdCB7XG4gIGZvbnQtc2l6ZTogMi41cmVtO1xuICBsaW5lLWhlaWdodDogMTsgfVxuICBwICsgLnN0YXQge1xuICAgIG1hcmdpbi10b3A6IC0xcmVtOyB9XG5cbi5uby1idWxsZXQge1xuICBtYXJnaW4tbGVmdDogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTsgfVxuXG4udGV4dC1sZWZ0IHtcbiAgdGV4dC1hbGlnbjogbGVmdDsgfVxuXG4udGV4dC1yaWdodCB7XG4gIHRleHQtYWxpZ246IHJpZ2h0OyB9XG5cbi50ZXh0LWNlbnRlciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuXG4udGV4dC1qdXN0aWZ5IHtcbiAgdGV4dC1hbGlnbjoganVzdGlmeTsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5tZWRpdW0tdGV4dC1sZWZ0IHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG4gIC5tZWRpdW0tdGV4dC1yaWdodCB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7IH1cbiAgLm1lZGl1bS10ZXh0LWNlbnRlciB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIC5tZWRpdW0tdGV4dC1qdXN0aWZ5IHtcbiAgICB0ZXh0LWFsaWduOiBqdXN0aWZ5OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubGFyZ2UtdGV4dC1sZWZ0IHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG4gIC5sYXJnZS10ZXh0LXJpZ2h0IHtcbiAgICB0ZXh0LWFsaWduOiByaWdodDsgfVxuICAubGFyZ2UtdGV4dC1jZW50ZXIge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAubGFyZ2UtdGV4dC1qdXN0aWZ5IHtcbiAgICB0ZXh0LWFsaWduOiBqdXN0aWZ5OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAueGxhcmdlLXRleHQtbGVmdCB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDsgfVxuICAueGxhcmdlLXRleHQtcmlnaHQge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0OyB9XG4gIC54bGFyZ2UtdGV4dC1jZW50ZXIge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAueGxhcmdlLXRleHQtanVzdGlmeSB7XG4gICAgdGV4dC1hbGlnbjoganVzdGlmeTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgLnh4bGFyZ2UtdGV4dC1sZWZ0IHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG4gIC54eGxhcmdlLXRleHQtcmlnaHQge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0OyB9XG4gIC54eGxhcmdlLXRleHQtY2VudGVyIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgLnh4bGFyZ2UtdGV4dC1qdXN0aWZ5IHtcbiAgICB0ZXh0LWFsaWduOiBqdXN0aWZ5OyB9IH1cblxuLnNob3ctZm9yLXByaW50IHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbkBtZWRpYSBwcmludCB7XG4gICoge1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6IGJsYWNrICFpbXBvcnRhbnQ7XG4gICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgIHRleHQtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7IH1cbiAgLnNob3ctZm9yLXByaW50IHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50OyB9XG4gIC5oaWRlLWZvci1wcmludCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG4gIHRhYmxlLnNob3ctZm9yLXByaW50IHtcbiAgICBkaXNwbGF5OiB0YWJsZSAhaW1wb3J0YW50OyB9XG4gIHRoZWFkLnNob3ctZm9yLXByaW50IHtcbiAgICBkaXNwbGF5OiB0YWJsZS1oZWFkZXItZ3JvdXAgIWltcG9ydGFudDsgfVxuICB0Ym9keS5zaG93LWZvci1wcmludCB7XG4gICAgZGlzcGxheTogdGFibGUtcm93LWdyb3VwICFpbXBvcnRhbnQ7IH1cbiAgdHIuc2hvdy1mb3ItcHJpbnQge1xuICAgIGRpc3BsYXk6IHRhYmxlLXJvdyAhaW1wb3J0YW50OyB9XG4gIHRkLnNob3ctZm9yLXByaW50IHtcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQ7IH1cbiAgdGguc2hvdy1mb3ItcHJpbnQge1xuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGwgIWltcG9ydGFudDsgfVxuICBhLFxuICBhOnZpc2l0ZWQge1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyB9XG4gIGFbaHJlZl06YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiIChcIiBhdHRyKGhyZWYpIFwiKVwiOyB9XG4gIC5pciBhOmFmdGVyLFxuICBhW2hyZWZePSdqYXZhc2NyaXB0OiddOmFmdGVyLFxuICBhW2hyZWZePScjJ106YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnOyB9XG4gIGFiYnJbdGl0bGVdOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIiAoXCIgYXR0cih0aXRsZSkgXCIpXCI7IH1cbiAgcHJlLFxuICBibG9ja3F1b3RlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjOGE4YThhO1xuICAgIHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDsgfVxuICB0aGVhZCB7XG4gICAgZGlzcGxheTogdGFibGUtaGVhZGVyLWdyb3VwOyB9XG4gIHRyLFxuICBpbWcge1xuICAgIHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDsgfVxuICBpbWcge1xuICAgIG1heC13aWR0aDogMTAwJSAhaW1wb3J0YW50OyB9XG4gIEBwYWdlIHtcbiAgICBtYXJnaW46IDAuNWNtOyB9XG4gIHAsXG4gIGgyLFxuICAucnN0IGgxLFxuICAucnN0IC50aXRsZS0xLFxuICAudGl0bGUtMixcbiAgaDMsXG4gIC5oMyxcbiAgLnJzdCBoMixcbiAgLnJzdCBoMSxcbiAgLnJzdCAudGl0bGUtMSxcbiAgLnJzdCAudGl0bGUtMixcbiAgLnRpdGxlLTMge1xuICAgIG9ycGhhbnM6IDM7XG4gICAgd2lkb3dzOiAzOyB9XG4gIFxuICBoMixcbiAgLnJzdCBoMSxcbiAgLnJzdCAudGl0bGUtMSxcbiAgLnRpdGxlLTIsXG4gIGgzLFxuICAuaDMsXG4gIC5yc3QgaDIsXG4gIC5yc3QgaDEsXG4gIC5yc3QgLnRpdGxlLTEsXG4gIC5yc3QgLnRpdGxlLTIsXG4gIC50aXRsZS0zIHtcbiAgICBwYWdlLWJyZWFrLWFmdGVyOiBhdm9pZDsgfSB9XG5cbi5idXR0b24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMjVzIGVhc2Utb3V0LCBjb2xvciAwLjI1cyBlYXNlLW91dDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIHBhZGRpbmc6IDAuODVlbSAxZW07XG4gIG1hcmdpbjogMCAxcmVtIDFyZW0gMDtcbiAgZm9udC1zaXplOiAwLjlyZW07XG4gIGJhY2tncm91bmQtY29sb3I6ICNkZDMzMzM7XG4gIGNvbG9yOiAjZmZmOyB9XG4gIFtkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSAuYnV0dG9uIHtcbiAgICBvdXRsaW5lOiAwOyB9XG4gIC5idXR0b246aG92ZXIsIC5idXR0b246Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNjNjIxMjE7XG4gICAgY29sb3I6ICNmZmY7IH1cbiAgLmJ1dHRvbi50aW55IHtcbiAgICBmb250LXNpemU6IDAuNnJlbTsgfVxuICAuYnV0dG9uLnNtYWxsIHtcbiAgICBmb250LXNpemU6IDAuNzVyZW07IH1cbiAgLmJ1dHRvbi5sYXJnZSB7XG4gICAgZm9udC1zaXplOiAxLjI1cmVtOyB9XG4gIC5idXR0b24uZXhwYW5kZWQge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIG1hcmdpbi1yaWdodDogMDsgfVxuICAuYnV0dG9uLnByaW1hcnkge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMyMTk5ZTg7XG4gICAgY29sb3I6ICNmZmY7IH1cbiAgICAuYnV0dG9uLnByaW1hcnk6aG92ZXIsIC5idXR0b24ucHJpbWFyeTpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTQ3Y2MwO1xuICAgICAgY29sb3I6ICNmZmY7IH1cbiAgLmJ1dHRvbi5zZWNvbmRhcnkge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM3Nzc7XG4gICAgY29sb3I6ICNmZmY7IH1cbiAgICAuYnV0dG9uLnNlY29uZGFyeTpob3ZlciwgLmJ1dHRvbi5zZWNvbmRhcnk6Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzVmNWY1ZjtcbiAgICAgIGNvbG9yOiAjZmZmOyB9XG4gIC5idXR0b24uc3VjY2VzcyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzNhZGI3NjtcbiAgICBjb2xvcjogI2ZmZjsgfVxuICAgIC5idXR0b24uc3VjY2Vzczpob3ZlciwgLmJ1dHRvbi5zdWNjZXNzOmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMyMmJiNWI7XG4gICAgICBjb2xvcjogI2ZmZjsgfVxuICAuYnV0dG9uLndhcm5pbmcge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmFlMDA7XG4gICAgY29sb3I6ICNmZmY7IH1cbiAgICAuYnV0dG9uLndhcm5pbmc6aG92ZXIsIC5idXR0b24ud2FybmluZzpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2M4YjAwO1xuICAgICAgY29sb3I6ICNmZmY7IH1cbiAgLmJ1dHRvbi5hbGVydCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2VjNTg0MDtcbiAgICBjb2xvcjogI2ZmZjsgfVxuICAgIC5idXR0b24uYWxlcnQ6aG92ZXIsIC5idXR0b24uYWxlcnQ6Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2RhMzExNjtcbiAgICAgIGNvbG9yOiAjZmZmOyB9XG4gIC5idXR0b24uaG9sbG93IHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjMjE5OWU4O1xuICAgIGNvbG9yOiAjMjE5OWU4OyB9XG4gICAgLmJ1dHRvbi5ob2xsb3csIC5idXR0b24uaG9sbG93OmhvdmVyLCAuYnV0dG9uLmhvbGxvdzpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAgIC5idXR0b24uaG9sbG93OmhvdmVyLCAuYnV0dG9uLmhvbGxvdzpmb2N1cyB7XG4gICAgICBib3JkZXItY29sb3I6ICMwYzRkNzg7XG4gICAgICBjb2xvcjogIzBjNGQ3ODsgfVxuICAgIC5idXR0b24uaG9sbG93LnByaW1hcnkge1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgIzIxOTllODtcbiAgICAgIGNvbG9yOiAjMjE5OWU4OyB9XG4gICAgICAuYnV0dG9uLmhvbGxvdy5wcmltYXJ5OmhvdmVyLCAuYnV0dG9uLmhvbGxvdy5wcmltYXJ5OmZvY3VzIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAjMGM0ZDc4O1xuICAgICAgICBjb2xvcjogIzBjNGQ3ODsgfVxuICAgIC5idXR0b24uaG9sbG93LnNlY29uZGFyeSB7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAjNzc3O1xuICAgICAgY29sb3I6ICM3Nzc7IH1cbiAgICAgIC5idXR0b24uaG9sbG93LnNlY29uZGFyeTpob3ZlciwgLmJ1dHRvbi5ob2xsb3cuc2Vjb25kYXJ5OmZvY3VzIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAjM2MzYzNjO1xuICAgICAgICBjb2xvcjogIzNjM2MzYzsgfVxuICAgIC5idXR0b24uaG9sbG93LnN1Y2Nlc3Mge1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgIzNhZGI3NjtcbiAgICAgIGNvbG9yOiAjM2FkYjc2OyB9XG4gICAgICAuYnV0dG9uLmhvbGxvdy5zdWNjZXNzOmhvdmVyLCAuYnV0dG9uLmhvbGxvdy5zdWNjZXNzOmZvY3VzIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAjMTU3NTM5O1xuICAgICAgICBjb2xvcjogIzE1NzUzOTsgfVxuICAgIC5idXR0b24uaG9sbG93Lndhcm5pbmcge1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgI2ZmYWUwMDtcbiAgICAgIGNvbG9yOiAjZmZhZTAwOyB9XG4gICAgICAuYnV0dG9uLmhvbGxvdy53YXJuaW5nOmhvdmVyLCAuYnV0dG9uLmhvbGxvdy53YXJuaW5nOmZvY3VzIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAjODA1NzAwO1xuICAgICAgICBjb2xvcjogIzgwNTcwMDsgfVxuICAgIC5idXR0b24uaG9sbG93LmFsZXJ0IHtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNlYzU4NDA7XG4gICAgICBjb2xvcjogI2VjNTg0MDsgfVxuICAgICAgLmJ1dHRvbi5ob2xsb3cuYWxlcnQ6aG92ZXIsIC5idXR0b24uaG9sbG93LmFsZXJ0OmZvY3VzIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAjODgxZjBlO1xuICAgICAgICBjb2xvcjogIzg4MWYwZTsgfVxuICAuYnV0dG9uLmRpc2FibGVkLCAuYnV0dG9uW2Rpc2FibGVkXSB7XG4gICAgb3BhY2l0eTogMC4yNTtcbiAgICBjdXJzb3I6IG5vdC1hbGxvd2VkOyB9XG4gIC5idXR0b24uZHJvcGRvd246OmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgYm9yZGVyOiBpbnNldCAwLjRlbTtcbiAgICBib3JkZXItY29sb3I6ICNmN2Y3ZjcgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLXRvcC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiAwLjRlbTtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgbWFyZ2luLWxlZnQ6IDFlbTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cbiAgLmJ1dHRvbi5hcnJvdy1vbmx5OjphZnRlciB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgdG9wOiAtMC4xZW07IH1cblxuW3R5cGU9J3RleHQnXSwgW3R5cGU9J3Bhc3N3b3JkJ10sIFt0eXBlPSdkYXRlJ10sIFt0eXBlPSdkYXRldGltZSddLCBbdHlwZT0nZGF0ZXRpbWUtbG9jYWwnXSwgW3R5cGU9J21vbnRoJ10sIFt0eXBlPSd3ZWVrJ10sIFt0eXBlPSdlbWFpbCddLCBbdHlwZT0nbnVtYmVyJ10sIFt0eXBlPSdzZWFyY2gnXSwgW3R5cGU9J3RlbCddLCBbdHlwZT0ndGltZSddLCBbdHlwZT0ndXJsJ10sIFt0eXBlPSdjb2xvciddLFxudGV4dGFyZWEge1xuICBkaXNwbGF5OiBibG9jaztcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMi40Mzc1cmVtO1xuICBwYWRkaW5nOiAwLjVyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkICNEREQ7XG4gIG1hcmdpbjogMCAwIDFyZW07XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBmb250LXNpemU6IDFyZW07XG4gIGNvbG9yOiAjOGE4YThhO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjdmN2Y3O1xuICBib3gtc2hhZG93OiBpbnNldCAwIDFweCAycHggcmdiYSgxMCwgMTAsIDEwLCAwLjEpO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICB0cmFuc2l0aW9uOiBib3gtc2hhZG93IDAuNXMsIGJvcmRlci1jb2xvciAwLjI1cyBlYXNlLWluLW91dDtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAtbW96LWFwcGVhcmFuY2U6IG5vbmU7IH1cbiAgW3R5cGU9J3RleHQnXTpmb2N1cywgW3R5cGU9J3Bhc3N3b3JkJ106Zm9jdXMsIFt0eXBlPSdkYXRlJ106Zm9jdXMsIFt0eXBlPSdkYXRldGltZSddOmZvY3VzLCBbdHlwZT0nZGF0ZXRpbWUtbG9jYWwnXTpmb2N1cywgW3R5cGU9J21vbnRoJ106Zm9jdXMsIFt0eXBlPSd3ZWVrJ106Zm9jdXMsIFt0eXBlPSdlbWFpbCddOmZvY3VzLCBbdHlwZT0nbnVtYmVyJ106Zm9jdXMsIFt0eXBlPSdzZWFyY2gnXTpmb2N1cywgW3R5cGU9J3RlbCddOmZvY3VzLCBbdHlwZT0ndGltZSddOmZvY3VzLCBbdHlwZT0ndXJsJ106Zm9jdXMsIFt0eXBlPSdjb2xvciddOmZvY3VzLFxuICB0ZXh0YXJlYTpmb2N1cyB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIzhhOGE4YTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjdmN2Y3O1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgYm94LXNoYWRvdzogMCAwIDVweCAjREREO1xuICAgIHRyYW5zaXRpb246IGJveC1zaGFkb3cgMC41cywgYm9yZGVyLWNvbG9yIDAuMjVzIGVhc2UtaW4tb3V0OyB9XG5cbnRleHRhcmVhIHtcbiAgbWF4LXdpZHRoOiAxMDAlOyB9XG4gIHRleHRhcmVhW3Jvd3NdIHtcbiAgICBoZWlnaHQ6IGF1dG87IH1cblxuaW5wdXQ6OnBsYWNlaG9sZGVyLFxudGV4dGFyZWE6OnBsYWNlaG9sZGVyIHtcbiAgY29sb3I6ICNEREQ7IH1cblxuaW5wdXQ6ZGlzYWJsZWQsIGlucHV0W3JlYWRvbmx5XSxcbnRleHRhcmVhOmRpc2FibGVkLFxudGV4dGFyZWFbcmVhZG9ubHldIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0UwRTBFMDtcbiAgY3Vyc29yOiBkZWZhdWx0OyB9XG5cblt0eXBlPSdzdWJtaXQnXSxcblt0eXBlPSdidXR0b24nXSB7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgLW1vei1hcHBlYXJhbmNlOiBub25lOyB9XG5cbmlucHV0W3R5cGU9XCJzZWFyY2hcIl0ge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94OyB9XG5cblt0eXBlPSdmaWxlJ10sXG5bdHlwZT0nY2hlY2tib3gnXSxcblt0eXBlPSdyYWRpbyddIHtcbiAgbWFyZ2luOiAwIDAgMXJlbTsgfVxuXG5bdHlwZT0nY2hlY2tib3gnXSArIGxhYmVsLFxuW3R5cGU9J3JhZGlvJ10gKyBsYWJlbCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLWxlZnQ6IDAuNXJlbTtcbiAgbWFyZ2luLXJpZ2h0OiAxcmVtO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7IH1cbiAgW3R5cGU9J2NoZWNrYm94J10gKyBsYWJlbFtmb3JdLFxuICBbdHlwZT0ncmFkaW8nXSArIGxhYmVsW2Zvcl0ge1xuICAgIGN1cnNvcjogcG9pbnRlcjsgfVxuXG5sYWJlbCA+IFt0eXBlPSdjaGVja2JveCddLFxubGFiZWwgPiBbdHlwZT0ncmFkaW8nXSB7XG4gIG1hcmdpbi1yaWdodDogMC41cmVtOyB9XG5cblt0eXBlPSdmaWxlJ10ge1xuICB3aWR0aDogMTAwJTsgfVxuXG5sYWJlbCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDA7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiAxLjg7XG4gIGNvbG9yOiAjMGEwYTBhOyB9XG4gIGxhYmVsLm1pZGRsZSB7XG4gICAgbWFyZ2luOiAwIDAgMXJlbTtcbiAgICBwYWRkaW5nOiAwLjU2MjVyZW0gMDsgfVxuXG4uaGVscC10ZXh0IHtcbiAgbWFyZ2luLXRvcDogLTAuNXJlbTtcbiAgZm9udC1zaXplOiAwLjgxMjVyZW07XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgY29sb3I6ICMzMzM7IH1cblxuLmlucHV0LWdyb3VwIHtcbiAgZGlzcGxheTogdGFibGU7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtOyB9XG4gIC5pbnB1dC1ncm91cCA+IDpmaXJzdC1jaGlsZCB7XG4gICAgYm9yZGVyLXJhZGl1czogMCAwIDAgMDsgfVxuICAuaW5wdXQtZ3JvdXAgPiA6bGFzdC1jaGlsZCA+ICoge1xuICAgIGJvcmRlci1yYWRpdXM6IDAgMCAwIDA7IH1cblxuLmlucHV0LWdyb3VwLWxhYmVsLCAuaW5wdXQtZ3JvdXAtZmllbGQsIC5pbnB1dC1ncm91cC1idXR0b24ge1xuICBtYXJnaW46IDA7XG4gIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IH1cblxuLmlucHV0LWdyb3VwLWxhYmVsIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwYWRkaW5nOiAwIDFyZW07XG4gIGJhY2tncm91bmQ6ICNFMEUwRTA7XG4gIGNvbG9yOiAjMGEwYTBhO1xuICBib3JkZXI6IDFweCBzb2xpZCAjREREO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB3aWR0aDogMSU7XG4gIGhlaWdodDogMTAwJTsgfVxuICAuaW5wdXQtZ3JvdXAtbGFiZWw6Zmlyc3QtY2hpbGQge1xuICAgIGJvcmRlci1yaWdodDogMDsgfVxuICAuaW5wdXQtZ3JvdXAtbGFiZWw6bGFzdC1jaGlsZCB7XG4gICAgYm9yZGVyLWxlZnQ6IDA7IH1cblxuLmlucHV0LWdyb3VwLWZpZWxkIHtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgaGVpZ2h0OiAyLjVyZW07IH1cblxuLmlucHV0LWdyb3VwLWJ1dHRvbiB7XG4gIHBhZGRpbmctdG9wOiAwO1xuICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHdpZHRoOiAxJTsgfVxuICAuaW5wdXQtZ3JvdXAtYnV0dG9uIGEsXG4gIC5pbnB1dC1ncm91cC1idXR0b24gaW5wdXQsXG4gIC5pbnB1dC1ncm91cC1idXR0b24gYnV0dG9uIHtcbiAgICBtYXJnaW46IDA7IH1cblxuLmlucHV0LWdyb3VwIC5pbnB1dC1ncm91cC1idXR0b24ge1xuICBkaXNwbGF5OiB0YWJsZS1jZWxsOyB9XG5cbmZpZWxkc2V0IHtcbiAgYm9yZGVyOiAwO1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7IH1cblxubGVnZW5kIHtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuICBtYXgtd2lkdGg6IDEwMCU7IH1cblxuLmZpZWxkc2V0IHtcbiAgYm9yZGVyOiAxcHggc29saWQgI0RERDtcbiAgcGFkZGluZzogMS4yNXJlbTtcbiAgbWFyZ2luOiAxLjEyNXJlbSAwOyB9XG4gIC5maWVsZHNldCBsZWdlbmQge1xuICAgIGJhY2tncm91bmQ6ICNmN2Y3Zjc7XG4gICAgcGFkZGluZzogMCAwLjE4NzVyZW07XG4gICAgbWFyZ2luOiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAtMC4xODc1cmVtOyB9XG5cbnNlbGVjdCB7XG4gIGhlaWdodDogMi40Mzc1cmVtO1xuICBwYWRkaW5nOiAwLjVyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkICNEREQ7XG4gIG1hcmdpbjogMCAwIDFyZW07XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gIGNvbG9yOiAjOGE4YThhO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmFmYWZhO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIC1tb3otYXBwZWFyYW5jZTogbm9uZTtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCdkYXRhOmltYWdlL3N2Zyt4bWw7dXRmOCw8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB2ZXJzaW9uPVwiMS4xXCIgd2lkdGg9XCIzMlwiIGhlaWdodD1cIjI0XCIgdmlld0JveD1cIjAgMCAzMiAyNFwiPjxwb2x5Z29uIHBvaW50cz1cIjAsMCAzMiwwIDE2LDI0XCIgc3R5bGU9XCJmaWxsOiByZ2IlMjg1MSwgNTEsIDUxJTI5XCI+PC9wb2x5Z29uPjwvc3ZnPicpO1xuICBiYWNrZ3JvdW5kLXNpemU6IDlweCA2cHg7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1vcmlnaW46IGNvbnRlbnQtYm94O1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDBcXDApIHtcbiAgICBzZWxlY3Qge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFDQUFBQUFZQ0FZQUFBQ2JVLzgwQUFBQUdYUkZXSFJUYjJaMGQyRnlaUUJCWkc5aVpTQkpiV0ZuWlZKbFlXUjVjY2xsUEFBQUFJcEpSRUZVZU5yRWtja05nREFNQkJmUmtFdDBPYlJCQmRzR1hVRGdtUWZLNFhoSDJtOGN6UUFBeTI3UjN0c3c0UWZlMng4dU9PNm9ZTGI2R2xPb3IzR0Yrc3dVUkFPbVVKK1J3dEVKczlXdlRHRVl4QlhxSTFNUUFaaENmVVFLUnpETVZqK1R3ckFJVjZqdlNVRWtZQXIxTFNrY3lUQmIvVitLWWZYN3hBZXVzcTNzTER0R0gza0VHQUNQV0lmbE5aZmhSUUFBQUFCSlJVNUVya0pnZ2c9PVwiKTsgfSB9XG4gIHNlbGVjdDpkaXNhYmxlZCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0UwRTBFMDtcbiAgICBjdXJzb3I6IGRlZmF1bHQ7IH1cbiAgc2VsZWN0OjotbXMtZXhwYW5kIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIHNlbGVjdFttdWx0aXBsZV0ge1xuICAgIGhlaWdodDogYXV0bztcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lOyB9XG5cbi5pcy1pbnZhbGlkLWlucHV0Om5vdCg6Zm9jdXMpIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyMzYsIDg4LCA2NCwgMC4xKTtcbiAgYm9yZGVyLWNvbG9yOiAjZWM1ODQwOyB9XG5cbi5pcy1pbnZhbGlkLWxhYmVsIHtcbiAgY29sb3I6ICNlYzU4NDA7IH1cblxuLmZvcm0tZXJyb3Ige1xuICBkaXNwbGF5OiBub25lO1xuICBtYXJnaW4tdG9wOiAtMC41cmVtO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBmb250LXNpemU6IDAuNzVyZW07XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBjb2xvcjogI2VjNTg0MDsgfVxuICAuZm9ybS1lcnJvci5pcy12aXNpYmxlIHtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuXG4uaGlkZSB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuXG4uaW52aXNpYmxlIHtcbiAgdmlzaWJpbGl0eTogaGlkZGVuOyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5LjkzNzVlbSkge1xuICAuaGlkZS1mb3Itc21hbGwtb25seSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMGVtKSwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5zaG93LWZvci1zbWFsbC1vbmx5IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5oaWRlLWZvci1tZWRpdW0ge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5LjkzNzVlbSkge1xuICAuc2hvdy1mb3ItbWVkaXVtIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gIC5oaWRlLWZvci1tZWRpdW0tb25seSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTM3NWVtKSwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5zaG93LWZvci1tZWRpdW0tb25seSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuaGlkZS1mb3ItbGFyZ2Uge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAuc2hvdy1mb3ItbGFyZ2Uge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWF4LXdpZHRoOiA3NC45Mzc1ZW0pIHtcbiAgLmhpZGUtZm9yLWxhcmdlLW9ubHkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSksIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAuc2hvdy1mb3ItbGFyZ2Utb25seSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAuaGlkZS1mb3IteGxhcmdlIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NC45Mzc1ZW0pIHtcbiAgLnNob3ctZm9yLXhsYXJnZSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkgYW5kIChtYXgtd2lkdGg6IDg5LjkzNzVlbSkge1xuICAuaGlkZS1mb3IteGxhcmdlLW9ubHkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc0LjkzNzVlbSksIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAuc2hvdy1mb3IteGxhcmdlLW9ubHkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgLmhpZGUtZm9yLXh4bGFyZ2Uge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDg5LjkzNzVlbSkge1xuICAuc2hvdy1mb3IteHhsYXJnZSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAuaGlkZS1mb3IteHhsYXJnZS1vbmx5IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4OS45Mzc1ZW0pIHtcbiAgLnNob3ctZm9yLXh4bGFyZ2Utb25seSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuLnNob3ctZm9yLXNyLFxuLnNob3ctb24tZm9jdXMge1xuICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcbiAgd2lkdGg6IDFweDtcbiAgaGVpZ2h0OiAxcHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCk7IH1cblxuLnNob3ctb24tZm9jdXM6YWN0aXZlLCAuc2hvdy1vbi1mb2N1czpmb2N1cyB7XG4gIHBvc2l0aW9uOiBzdGF0aWMgIWltcG9ydGFudDtcbiAgaGVpZ2h0OiBhdXRvO1xuICB3aWR0aDogYXV0bztcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIGNsaXA6IGF1dG87IH1cblxuLnNob3ctZm9yLWxhbmRzY2FwZSxcbi5oaWRlLWZvci1wb3J0cmFpdCB7XG4gIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG9yaWVudGF0aW9uOiBsYW5kc2NhcGUpIHtcbiAgICAuc2hvdy1mb3ItbGFuZHNjYXBlLFxuICAgIC5oaWRlLWZvci1wb3J0cmFpdCB7XG4gICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG9yaWVudGF0aW9uOiBwb3J0cmFpdCkge1xuICAgIC5zaG93LWZvci1sYW5kc2NhcGUsXG4gICAgLmhpZGUtZm9yLXBvcnRyYWl0IHtcbiAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbi5oaWRlLWZvci1sYW5kc2NhcGUsXG4uc2hvdy1mb3ItcG9ydHJhaXQge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG9yaWVudGF0aW9uOiBsYW5kc2NhcGUpIHtcbiAgICAuaGlkZS1mb3ItbGFuZHNjYXBlLFxuICAgIC5zaG93LWZvci1wb3J0cmFpdCB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAob3JpZW50YXRpb246IHBvcnRyYWl0KSB7XG4gICAgLmhpZGUtZm9yLWxhbmRzY2FwZSxcbiAgICAuc2hvdy1mb3ItcG9ydHJhaXQge1xuICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDsgfSB9XG5cbi5mbG9hdC1sZWZ0IHtcbiAgZmxvYXQ6IGxlZnQgIWltcG9ydGFudDsgfVxuXG4uZmxvYXQtcmlnaHQge1xuICBmbG9hdDogcmlnaHQgIWltcG9ydGFudDsgfVxuXG4uZmxvYXQtY2VudGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87IH1cblxuLmNsZWFyZml4OjpiZWZvcmUsIC5mbGF0LWZvcm0gZm9ybSAuc21hcnQtZmllbGQuaG9sZGVyLWlubGluZS1yYWRpbzo6YmVmb3JlLFxuLmZsYXQtZm9ybSBmb3JtIC5ob2xkZXIuaG9sZGVyLWlubGluZS1yYWRpbzo6YmVmb3JlLFxuLmZsYXQtZm9ybSAud3JhcHBlciAuc21hcnQtZmllbGQuaG9sZGVyLWlubGluZS1yYWRpbzo6YmVmb3JlLFxuLmZsYXQtZm9ybSAud3JhcHBlciAuaG9sZGVyLmhvbGRlci1pbmxpbmUtcmFkaW86OmJlZm9yZSwgLmNsZWFyZml4OjphZnRlciwgLmZsYXQtZm9ybSBmb3JtIC5zbWFydC1maWVsZC5ob2xkZXItaW5saW5lLXJhZGlvOjphZnRlcixcbi5mbGF0LWZvcm0gZm9ybSAuaG9sZGVyLmhvbGRlci1pbmxpbmUtcmFkaW86OmFmdGVyLFxuLmZsYXQtZm9ybSAud3JhcHBlciAuc21hcnQtZmllbGQuaG9sZGVyLWlubGluZS1yYWRpbzo6YWZ0ZXIsXG4uZmxhdC1mb3JtIC53cmFwcGVyIC5ob2xkZXIuaG9sZGVyLWlubGluZS1yYWRpbzo6YWZ0ZXIge1xuICBjb250ZW50OiAnICc7XG4gIGRpc3BsYXk6IHRhYmxlOyB9XG5cbi5jbGVhcmZpeDo6YWZ0ZXIsIC5mbGF0LWZvcm0gZm9ybSAuc21hcnQtZmllbGQuaG9sZGVyLWlubGluZS1yYWRpbzo6YWZ0ZXIsXG4uZmxhdC1mb3JtIGZvcm0gLmhvbGRlci5ob2xkZXItaW5saW5lLXJhZGlvOjphZnRlcixcbi5mbGF0LWZvcm0gLndyYXBwZXIgLnNtYXJ0LWZpZWxkLmhvbGRlci1pbmxpbmUtcmFkaW86OmFmdGVyLFxuLmZsYXQtZm9ybSAud3JhcHBlciAuaG9sZGVyLmhvbGRlci1pbmxpbmUtcmFkaW86OmFmdGVyIHtcbiAgY2xlYXI6IGJvdGg7IH1cblxuLmFjY29yZGlvbiB7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgYmFja2dyb3VuZDogI2Y3ZjdmNztcbiAgYm9yZGVyOiAxcHggc29saWQgI0UwRTBFMDtcbiAgYm9yZGVyLWJvdHRvbTogMDtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgbWFyZ2luLWxlZnQ6IDA7IH1cblxuLmFjY29yZGlvbi10aXRsZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAxLjI1cmVtIDFyZW07XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBmb250LXNpemU6IDAuNzVyZW07XG4gIGNvbG9yOiAjZGQzMzMzO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjRTBFMEUwOyB9XG4gIC5hY2NvcmRpb24tdGl0bGU6aG92ZXIsIC5hY2NvcmRpb24tdGl0bGU6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNFMEUwRTA7IH1cbiAgLmFjY29yZGlvbi10aXRsZTo6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnKyc7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAxcmVtO1xuICAgIHRvcDogNTAlO1xuICAgIG1hcmdpbi10b3A6IC0wLjVyZW07IH1cbiAgLmlzLWFjdGl2ZSA+IC5hY2NvcmRpb24tdGl0bGU6OmJlZm9yZSB7XG4gICAgY29udGVudDogJ+KAkyc7IH1cblxuLmFjY29yZGlvbi1jb250ZW50IHtcbiAgcGFkZGluZzogMXJlbTtcbiAgZGlzcGxheTogbm9uZTtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNFMEUwRTA7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmN2Y3Zjc7IH1cblxuLmJhZGdlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nOiAwLjNlbTtcbiAgbWluLXdpZHRoOiAyLjFlbTtcbiAgZm9udC1zaXplOiAwLjZyZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBiYWNrZ3JvdW5kOiAjZGQzMzMzO1xuICBjb2xvcjogI2Y3ZjdmNzsgfVxuICAuYmFkZ2Uuc2Vjb25kYXJ5IHtcbiAgICBiYWNrZ3JvdW5kOiAjNzc3O1xuICAgIGNvbG9yOiAjZjdmN2Y3OyB9XG4gIC5iYWRnZS5zdWNjZXNzIHtcbiAgICBiYWNrZ3JvdW5kOiAjM2FkYjc2O1xuICAgIGNvbG9yOiAjZjdmN2Y3OyB9XG4gIC5iYWRnZS53YXJuaW5nIHtcbiAgICBiYWNrZ3JvdW5kOiAjZmZhZTAwO1xuICAgIGNvbG9yOiAjZjdmN2Y3OyB9XG4gIC5iYWRnZS5hbGVydCB7XG4gICAgYmFja2dyb3VuZDogI2VjNTg0MDtcbiAgICBjb2xvcjogI2Y3ZjdmNzsgfVxuXG4uYnJlYWRjcnVtYnMge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBtYXJnaW46IDAgMCAxcmVtIDA7IH1cbiAgLmJyZWFkY3J1bWJzOjpiZWZvcmUsIC5icmVhZGNydW1iczo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcgJztcbiAgICBkaXNwbGF5OiB0YWJsZTsgfVxuICAuYnJlYWRjcnVtYnM6OmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDsgfVxuICAuYnJlYWRjcnVtYnMgbGkge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIGNvbG9yOiAjMGEwYTBhO1xuICAgIGZvbnQtc2l6ZTogMC42ODc1cmVtO1xuICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyB9XG4gICAgLmJyZWFkY3J1bWJzIGxpOm5vdCg6bGFzdC1jaGlsZCk6OmFmdGVyIHtcbiAgICAgIGNvbG9yOiAjREREO1xuICAgICAgY29udGVudDogXCIvXCI7XG4gICAgICBtYXJnaW46IDAgMC43NXJlbTtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHRvcDogMXB4O1xuICAgICAgb3BhY2l0eTogMTsgfVxuICAuYnJlYWRjcnVtYnMgYSB7XG4gICAgY29sb3I6ICNkZDMzMzM7IH1cbiAgICAuYnJlYWRjcnVtYnMgYTpob3ZlciB7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgfVxuICAuYnJlYWRjcnVtYnMgLmRpc2FibGVkIHtcbiAgICBjb2xvcjogI0RERDtcbiAgICBjdXJzb3I6IG5vdC1hbGxvd2VkOyB9XG5cbi5idXR0b24tZ3JvdXAge1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBmb250LXNpemU6IDA7IH1cbiAgLmJ1dHRvbi1ncm91cDo6YmVmb3JlLCAuYnV0dG9uLWdyb3VwOjphZnRlciB7XG4gICAgY29udGVudDogJyAnO1xuICAgIGRpc3BsYXk6IHRhYmxlOyB9XG4gIC5idXR0b24tZ3JvdXA6OmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDsgfVxuICAuYnV0dG9uLWdyb3VwIC5idXR0b24ge1xuICAgIG1hcmdpbjogMDtcbiAgICBmb250LXNpemU6IDAuOXJlbTsgfVxuICAgIC5idXR0b24tZ3JvdXAgLmJ1dHRvbjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMXB4OyB9XG4gIC5idXR0b24tZ3JvdXAudGlueSAuYnV0dG9uIHtcbiAgICBmb250LXNpemU6IDAuNnJlbTsgfVxuICAuYnV0dG9uLWdyb3VwLnNtYWxsIC5idXR0b24ge1xuICAgIGZvbnQtc2l6ZTogMC43NXJlbTsgfVxuICAuYnV0dG9uLWdyb3VwLmxhcmdlIC5idXR0b24ge1xuICAgIGZvbnQtc2l6ZTogMS4yNXJlbTsgfVxuICAuYnV0dG9uLWdyb3VwLmV4cGFuZGVkIHtcbiAgICBtYXJnaW4tcmlnaHQ6IC0xcHg7IH1cbiAgICAuYnV0dG9uLWdyb3VwLmV4cGFuZGVkOjpiZWZvcmUsIC5idXR0b24tZ3JvdXAuZXhwYW5kZWQ6OmFmdGVyIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAuYnV0dG9uLWdyb3VwLmV4cGFuZGVkIC5idXR0b246Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoMiksIC5idXR0b24tZ3JvdXAuZXhwYW5kZWQgLmJ1dHRvbjpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCgyKTpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCgyKSB+IC5idXR0b24ge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgd2lkdGg6IDUwJTtcbiAgICAgIG1hcmdpbi1yaWdodDogMXB4OyB9XG4gICAgLmJ1dHRvbi1ncm91cC5leHBhbmRlZCAuYnV0dG9uOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDMpLCAuYnV0dG9uLWdyb3VwLmV4cGFuZGVkIC5idXR0b246Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoMyk6Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoMykgfiAuYnV0dG9uIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHdpZHRoOiAzMy4zMzMzMyU7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDFweDsgfVxuICAgIC5idXR0b24tZ3JvdXAuZXhwYW5kZWQgLmJ1dHRvbjpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCg0KSwgLmJ1dHRvbi1ncm91cC5leHBhbmRlZCAuYnV0dG9uOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDQpOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDQpIH4gLmJ1dHRvbiB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB3aWR0aDogMjUlO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAxcHg7IH1cbiAgICAuYnV0dG9uLWdyb3VwLmV4cGFuZGVkIC5idXR0b246Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoNSksIC5idXR0b24tZ3JvdXAuZXhwYW5kZWQgLmJ1dHRvbjpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCg1KTpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCg1KSB+IC5idXR0b24ge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgd2lkdGg6IDIwJTtcbiAgICAgIG1hcmdpbi1yaWdodDogMXB4OyB9XG4gICAgLmJ1dHRvbi1ncm91cC5leHBhbmRlZCAuYnV0dG9uOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDYpLCAuYnV0dG9uLWdyb3VwLmV4cGFuZGVkIC5idXR0b246Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoNik6Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoNikgfiAuYnV0dG9uIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHdpZHRoOiAxNi42NjY2NyU7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDFweDsgfVxuICAuYnV0dG9uLWdyb3VwLnByaW1hcnkgLmJ1dHRvbiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzIxOTllODtcbiAgICBjb2xvcjogI2ZmZjsgfVxuICAgIC5idXR0b24tZ3JvdXAucHJpbWFyeSAuYnV0dG9uOmhvdmVyLCAuYnV0dG9uLWdyb3VwLnByaW1hcnkgLmJ1dHRvbjpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTQ3Y2MwO1xuICAgICAgY29sb3I6ICNmZmY7IH1cbiAgLmJ1dHRvbi1ncm91cC5zZWNvbmRhcnkgLmJ1dHRvbiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzc3NztcbiAgICBjb2xvcjogI2ZmZjsgfVxuICAgIC5idXR0b24tZ3JvdXAuc2Vjb25kYXJ5IC5idXR0b246aG92ZXIsIC5idXR0b24tZ3JvdXAuc2Vjb25kYXJ5IC5idXR0b246Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzVmNWY1ZjtcbiAgICAgIGNvbG9yOiAjZmZmOyB9XG4gIC5idXR0b24tZ3JvdXAuc3VjY2VzcyAuYnV0dG9uIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjM2FkYjc2O1xuICAgIGNvbG9yOiAjZmZmOyB9XG4gICAgLmJ1dHRvbi1ncm91cC5zdWNjZXNzIC5idXR0b246aG92ZXIsIC5idXR0b24tZ3JvdXAuc3VjY2VzcyAuYnV0dG9uOmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMyMmJiNWI7XG4gICAgICBjb2xvcjogI2ZmZjsgfVxuICAuYnV0dG9uLWdyb3VwLndhcm5pbmcgLmJ1dHRvbiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmYWUwMDtcbiAgICBjb2xvcjogI2ZmZjsgfVxuICAgIC5idXR0b24tZ3JvdXAud2FybmluZyAuYnV0dG9uOmhvdmVyLCAuYnV0dG9uLWdyb3VwLndhcm5pbmcgLmJ1dHRvbjpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2M4YjAwO1xuICAgICAgY29sb3I6ICNmZmY7IH1cbiAgLmJ1dHRvbi1ncm91cC5hbGVydCAuYnV0dG9uIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWM1ODQwO1xuICAgIGNvbG9yOiAjZmZmOyB9XG4gICAgLmJ1dHRvbi1ncm91cC5hbGVydCAuYnV0dG9uOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmFsZXJ0IC5idXR0b246Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2RhMzExNjtcbiAgICAgIGNvbG9yOiAjZmZmOyB9XG4gIC5idXR0b24tZ3JvdXAuc3RhY2tlZCAuYnV0dG9uLCAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLXNtYWxsIC5idXR0b24sIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3ItbWVkaXVtIC5idXR0b24ge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkIHRyYW5zcGFyZW50OyB9XG4gICAgLmJ1dHRvbi1ncm91cC5zdGFja2VkIC5idXR0b246bm90KDpsYXN0LWNoaWxkKSwgLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1zbWFsbCAuYnV0dG9uOm5vdCg6bGFzdC1jaGlsZCksIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3ItbWVkaXVtIC5idXR0b246bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2Y3ZjdmNzsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1zbWFsbCAuYnV0dG9uIHtcbiAgICAgIHdpZHRoOiBhdXRvOyB9XG4gICAgICAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLXNtYWxsIC5idXR0b246bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMXB4OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3ItbWVkaXVtIC5idXR0b24ge1xuICAgICAgd2lkdGg6IGF1dG87IH1cbiAgICAgIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3ItbWVkaXVtIC5idXR0b246bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMXB4OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTM3NWVtKSB7XG4gICAgLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1zbWFsbC5leHBhbmRlZCB7XG4gICAgICBkaXNwbGF5OiBibG9jazsgfVxuICAgICAgLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1zbWFsbC5leHBhbmRlZCAuYnV0dG9uIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMDsgfSB9XG5cbi5jYWxsb3V0IHtcbiAgbWFyZ2luOiAwIDAgMXJlbSAwO1xuICBwYWRkaW5nOiAxcmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDEwLCAxMCwgMTAsIDAuMjUpO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGNvbG9yOiAjMWQyYTI5O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmVmZWZlOyB9XG4gIC5jYWxsb3V0ID4gOmZpcnN0LWNoaWxkIHtcbiAgICBtYXJnaW4tdG9wOiAwOyB9XG4gIC5jYWxsb3V0ID4gOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgLmNhbGxvdXQucHJpbWFyeSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2RlZjBmYzsgfVxuICAuY2FsbG91dC5zZWNvbmRhcnkge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNlYmViZWI7IH1cbiAgLmNhbGxvdXQuc3VjY2VzcyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2UxZmFlYTsgfVxuICAuY2FsbG91dC53YXJuaW5nIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmM2Q5OyB9XG4gIC5jYWxsb3V0LmFsZXJ0IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmNlNmUyOyB9XG4gIC5jYWxsb3V0LnNtYWxsIHtcbiAgICBwYWRkaW5nLXRvcDogMC41cmVtO1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNXJlbTtcbiAgICBwYWRkaW5nLWJvdHRvbTogMC41cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC41cmVtOyB9XG4gIC5jYWxsb3V0LmxhcmdlIHtcbiAgICBwYWRkaW5nLXRvcDogM3JlbTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAzcmVtO1xuICAgIHBhZGRpbmctYm90dG9tOiAzcmVtO1xuICAgIHBhZGRpbmctbGVmdDogM3JlbTsgfVxuXG4uY2xvc2UtYnV0dG9uIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBjb2xvcjogIzhhOGE4YTtcbiAgcmlnaHQ6IDFyZW07XG4gIHRvcDogMC41cmVtO1xuICBmb250LXNpemU6IDJlbTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGN1cnNvcjogcG9pbnRlcjsgfVxuICBbZGF0YS13aGF0aW5wdXQ9J21vdXNlJ10gLmNsb3NlLWJ1dHRvbiB7XG4gICAgb3V0bGluZTogMDsgfVxuICAuY2xvc2UtYnV0dG9uOmhvdmVyLCAuY2xvc2UtYnV0dG9uOmZvY3VzIHtcbiAgICBjb2xvcjogIzBhMGEwYTsgfVxuXG4uaXMtZHJpbGxkb3duIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gIC5pcy1kcmlsbGRvd24gbGkge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH1cblxuLmlzLWRyaWxsZG93bi1zdWJtZW51IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDEwMCU7XG4gIHotaW5kZXg6IC0xO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHdpZHRoOiAxMDAlO1xuICBiYWNrZ3JvdW5kOiAjZjdmN2Y3O1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4xNXMgbGluZWFyOyB9XG4gIC5pcy1kcmlsbGRvd24tc3VibWVudS5pcy1hY3RpdmUge1xuICAgIHotaW5kZXg6IDE7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTsgfVxuICAuaXMtZHJpbGxkb3duLXN1Ym1lbnUuaXMtY2xvc2luZyB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpOyB9XG5cbi5pcy1kcmlsbGRvd24tc3VibWVudS1wYXJlbnQgPiBhIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC5pcy1kcmlsbGRvd24tc3VibWVudS1wYXJlbnQgPiBhOjphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJvcmRlcjogaW5zZXQgNnB4O1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgIzIxOTllODtcbiAgICBib3JkZXItbGVmdC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLXJpZ2h0LXdpZHRoOiAwO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICBtYXJnaW4tdG9wOiAtNnB4O1xuICAgIHJpZ2h0OiAxcmVtOyB9XG5cbi5qcy1kcmlsbGRvd24tYmFjayA+IGE6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6ICcnO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbiAgYm9yZGVyOiBpbnNldCA2cHg7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgIzIxOTllOCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJpZ2h0LXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7XG4gIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIG1hcmdpbi1yaWdodDogMC43NXJlbTsgfVxuXG4uZHJvcGRvd24tcGFuZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmN2Y3Zjc7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNEREQ7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LXNpemU6IDE2cmVtO1xuICBwYWRkaW5nOiAxcmVtO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgd2lkdGg6IDMwMHB4O1xuICB6LWluZGV4OiAxMDsgfVxuICAuZHJvcGRvd24tcGFuZS5pcy1vcGVuIHtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlOyB9XG5cbi5kcm9wZG93bi1wYW5lLnRpbnkge1xuICB3aWR0aDogMTAwcHg7IH1cblxuLmRyb3Bkb3duLXBhbmUuc21hbGwge1xuICB3aWR0aDogMjAwcHg7IH1cblxuLmRyb3Bkb3duLXBhbmUubGFyZ2Uge1xuICB3aWR0aDogNDAwcHg7IH1cblxuLmRyb3Bkb3duLm1lbnUgPiBsaS5vcGVucy1sZWZ0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICBsZWZ0OiBhdXRvO1xuICByaWdodDogMDtcbiAgdG9wOiAxMDAlOyB9XG5cbi5kcm9wZG93bi5tZW51ID4gbGkub3BlbnMtcmlnaHQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gIHJpZ2h0OiBhdXRvO1xuICBsZWZ0OiAwO1xuICB0b3A6IDEwMCU7IH1cblxuLmRyb3Bkb3duLm1lbnUgPiBsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGEge1xuICBwYWRkaW5nLXJpZ2h0OiAxLjVyZW07XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG4uZHJvcGRvd24ubWVudSA+IGxpLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50ID4gYTo6YWZ0ZXIge1xuICBjb250ZW50OiAnJztcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG4gIGJvcmRlcjogaW5zZXQgNXB4O1xuICBib3JkZXItY29sb3I6ICNkZDMzMzMgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci10b3Atc3R5bGU6IHNvbGlkO1xuICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xuICByaWdodDogNXB4O1xuICBtYXJnaW4tdG9wOiAtMnB4OyB9XG5cbltkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSAuZHJvcGRvd24ubWVudSBhIHtcbiAgb3V0bGluZTogMDsgfVxuXG4ubm8tanMgLmRyb3Bkb3duLm1lbnUgdWwge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5kcm9wZG93bi5tZW51LnZlcnRpY2FsID4gbGkgLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICB0b3A6IDA7IH1cblxuLmRyb3Bkb3duLm1lbnUudmVydGljYWwgPiBsaS5vcGVucy1sZWZ0IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgbGVmdDogYXV0bztcbiAgcmlnaHQ6IDEwMCU7IH1cblxuLmRyb3Bkb3duLm1lbnUudmVydGljYWwgPiBsaS5vcGVucy1yaWdodCAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gIHJpZ2h0OiBhdXRvO1xuICBsZWZ0OiAxMDAlOyB9XG5cbi5kcm9wZG93bi5tZW51LnZlcnRpY2FsID4gbGkgPiBhOjphZnRlciB7XG4gIHJpZ2h0OiAxNHB4O1xuICBtYXJnaW4tdG9wOiAtM3B4OyB9XG5cbi5kcm9wZG93bi5tZW51LnZlcnRpY2FsID4gbGkub3BlbnMtbGVmdCA+IGE6OmFmdGVyIHtcbiAgY29udGVudDogJyc7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuICBib3JkZXI6IGluc2V0IDVweDtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCAjZGQzMzMzIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICBib3JkZXItcmlnaHQtc3R5bGU6IHNvbGlkO1xuICBib3JkZXItbGVmdC13aWR0aDogMDsgfVxuXG4uZHJvcGRvd24ubWVudS52ZXJ0aWNhbCA+IGxpLm9wZW5zLXJpZ2h0ID4gYTo6YWZ0ZXIge1xuICBjb250ZW50OiAnJztcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG4gIGJvcmRlcjogaW5zZXQgNXB4O1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICNkZDMzMzM7XG4gIGJvcmRlci1sZWZ0LXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLXJpZ2h0LXdpZHRoOiAwOyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmRyb3Bkb3duLm1lbnUubWVkaXVtLWhvcml6b250YWwgPiBsaS5vcGVucy1sZWZ0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIGxlZnQ6IGF1dG87XG4gICAgcmlnaHQ6IDA7XG4gICAgdG9wOiAxMDAlOyB9XG4gIC5kcm9wZG93bi5tZW51Lm1lZGl1bS1ob3Jpem9udGFsID4gbGkub3BlbnMtcmlnaHQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogMDtcbiAgICB0b3A6IDEwMCU7IH1cbiAgLmRyb3Bkb3duLm1lbnUubWVkaXVtLWhvcml6b250YWwgPiBsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGEge1xuICAgIHBhZGRpbmctcmlnaHQ6IDEuNXJlbTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLmRyb3Bkb3duLm1lbnUubWVkaXVtLWhvcml6b250YWwgPiBsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGE6OmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgYm9yZGVyOiBpbnNldCA1cHg7XG4gICAgYm9yZGVyLWNvbG9yOiAjZGQzMzMzIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci10b3Atc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gICAgcmlnaHQ6IDVweDtcbiAgICBtYXJnaW4tdG9wOiAtMnB4OyB9XG4gIC5kcm9wZG93bi5tZW51Lm1lZGl1bS12ZXJ0aWNhbCA+IGxpIC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICB0b3A6IDA7IH1cbiAgLmRyb3Bkb3duLm1lbnUubWVkaXVtLXZlcnRpY2FsID4gbGkub3BlbnMtbGVmdCAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgbGVmdDogYXV0bztcbiAgICByaWdodDogMTAwJTsgfVxuICAuZHJvcGRvd24ubWVudS5tZWRpdW0tdmVydGljYWwgPiBsaS5vcGVucy1yaWdodCAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogMTAwJTsgfVxuICAuZHJvcGRvd24ubWVudS5tZWRpdW0tdmVydGljYWwgPiBsaSA+IGE6OmFmdGVyIHtcbiAgICByaWdodDogMTRweDtcbiAgICBtYXJnaW4tdG9wOiAtM3B4OyB9XG4gIC5kcm9wZG93bi5tZW51Lm1lZGl1bS12ZXJ0aWNhbCA+IGxpLm9wZW5zLWxlZnQgPiBhOjphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJvcmRlcjogaW5zZXQgNXB4O1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgI2RkMzMzMyB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItcmlnaHQtc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1sZWZ0LXdpZHRoOiAwOyB9XG4gIC5kcm9wZG93bi5tZW51Lm1lZGl1bS12ZXJ0aWNhbCA+IGxpLm9wZW5zLXJpZ2h0ID4gYTo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXI6IGluc2V0IDVweDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICNkZDMzMzM7XG4gICAgYm9yZGVyLWxlZnQtc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1yaWdodC13aWR0aDogMDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmRyb3Bkb3duLm1lbnUubGFyZ2UtaG9yaXpvbnRhbCA+IGxpLm9wZW5zLWxlZnQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgbGVmdDogYXV0bztcbiAgICByaWdodDogMDtcbiAgICB0b3A6IDEwMCU7IH1cbiAgLmRyb3Bkb3duLm1lbnUubGFyZ2UtaG9yaXpvbnRhbCA+IGxpLm9wZW5zLXJpZ2h0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDA7XG4gICAgdG9wOiAxMDAlOyB9XG4gIC5kcm9wZG93bi5tZW51LmxhcmdlLWhvcml6b250YWwgPiBsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGEge1xuICAgIHBhZGRpbmctcmlnaHQ6IDEuNXJlbTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLmRyb3Bkb3duLm1lbnUubGFyZ2UtaG9yaXpvbnRhbCA+IGxpLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50ID4gYTo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXI6IGluc2V0IDVweDtcbiAgICBib3JkZXItY29sb3I6ICNkZDMzMzMgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLXRvcC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgICByaWdodDogNXB4O1xuICAgIG1hcmdpbi10b3A6IC0ycHg7IH1cbiAgLmRyb3Bkb3duLm1lbnUubGFyZ2UtdmVydGljYWwgPiBsaSAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgdG9wOiAwOyB9XG4gIC5kcm9wZG93bi5tZW51LmxhcmdlLXZlcnRpY2FsID4gbGkub3BlbnMtbGVmdCAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgbGVmdDogYXV0bztcbiAgICByaWdodDogMTAwJTsgfVxuICAuZHJvcGRvd24ubWVudS5sYXJnZS12ZXJ0aWNhbCA+IGxpLm9wZW5zLXJpZ2h0IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiAxMDAlOyB9XG4gIC5kcm9wZG93bi5tZW51LmxhcmdlLXZlcnRpY2FsID4gbGkgPiBhOjphZnRlciB7XG4gICAgcmlnaHQ6IDE0cHg7XG4gICAgbWFyZ2luLXRvcDogLTNweDsgfVxuICAuZHJvcGRvd24ubWVudS5sYXJnZS12ZXJ0aWNhbCA+IGxpLm9wZW5zLWxlZnQgPiBhOjphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJvcmRlcjogaW5zZXQgNXB4O1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgI2RkMzMzMyB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItcmlnaHQtc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1sZWZ0LXdpZHRoOiAwOyB9XG4gIC5kcm9wZG93bi5tZW51LmxhcmdlLXZlcnRpY2FsID4gbGkub3BlbnMtcmlnaHQgPiBhOjphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJvcmRlcjogaW5zZXQgNXB4O1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgI2RkMzMzMztcbiAgICBib3JkZXItbGVmdC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLXJpZ2h0LXdpZHRoOiAwOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAuZHJvcGRvd24ubWVudS54bGFyZ2UtaG9yaXpvbnRhbCA+IGxpLm9wZW5zLWxlZnQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgbGVmdDogYXV0bztcbiAgICByaWdodDogMDtcbiAgICB0b3A6IDEwMCU7IH1cbiAgLmRyb3Bkb3duLm1lbnUueGxhcmdlLWhvcml6b250YWwgPiBsaS5vcGVucy1yaWdodCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogMTAwJTsgfVxuICAuZHJvcGRvd24ubWVudS54bGFyZ2UtaG9yaXpvbnRhbCA+IGxpLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50ID4gYSB7XG4gICAgcGFkZGluZy1yaWdodDogMS41cmVtO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAuZHJvcGRvd24ubWVudS54bGFyZ2UtaG9yaXpvbnRhbCA+IGxpLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50ID4gYTo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXI6IGluc2V0IDVweDtcbiAgICBib3JkZXItY29sb3I6ICNkZDMzMzMgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLXRvcC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgICByaWdodDogNXB4O1xuICAgIG1hcmdpbi10b3A6IC0ycHg7IH1cbiAgLmRyb3Bkb3duLm1lbnUueGxhcmdlLXZlcnRpY2FsID4gbGkgLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHRvcDogMDsgfVxuICAuZHJvcGRvd24ubWVudS54bGFyZ2UtdmVydGljYWwgPiBsaS5vcGVucy1sZWZ0IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICBsZWZ0OiBhdXRvO1xuICAgIHJpZ2h0OiAxMDAlOyB9XG4gIC5kcm9wZG93bi5tZW51LnhsYXJnZS12ZXJ0aWNhbCA+IGxpLm9wZW5zLXJpZ2h0IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiAxMDAlOyB9XG4gIC5kcm9wZG93bi5tZW51LnhsYXJnZS12ZXJ0aWNhbCA+IGxpID4gYTo6YWZ0ZXIge1xuICAgIHJpZ2h0OiAxNHB4O1xuICAgIG1hcmdpbi10b3A6IC0zcHg7IH1cbiAgLmRyb3Bkb3duLm1lbnUueGxhcmdlLXZlcnRpY2FsID4gbGkub3BlbnMtbGVmdCA+IGE6OmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgYm9yZGVyOiBpbnNldCA1cHg7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCAjZGQzMzMzIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1yaWdodC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7IH1cbiAgLmRyb3Bkb3duLm1lbnUueGxhcmdlLXZlcnRpY2FsID4gbGkub3BlbnMtcmlnaHQgPiBhOjphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJvcmRlcjogaW5zZXQgNXB4O1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgI2RkMzMzMztcbiAgICBib3JkZXItbGVmdC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLXJpZ2h0LXdpZHRoOiAwOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAuZHJvcGRvd24ubWVudS54eGxhcmdlLWhvcml6b250YWwgPiBsaS5vcGVucy1sZWZ0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIGxlZnQ6IGF1dG87XG4gICAgcmlnaHQ6IDA7XG4gICAgdG9wOiAxMDAlOyB9XG4gIC5kcm9wZG93bi5tZW51Lnh4bGFyZ2UtaG9yaXpvbnRhbCA+IGxpLm9wZW5zLXJpZ2h0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDA7XG4gICAgdG9wOiAxMDAlOyB9XG4gIC5kcm9wZG93bi5tZW51Lnh4bGFyZ2UtaG9yaXpvbnRhbCA+IGxpLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50ID4gYSB7XG4gICAgcGFkZGluZy1yaWdodDogMS41cmVtO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAuZHJvcGRvd24ubWVudS54eGxhcmdlLWhvcml6b250YWwgPiBsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGE6OmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgYm9yZGVyOiBpbnNldCA1cHg7XG4gICAgYm9yZGVyLWNvbG9yOiAjZGQzMzMzIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci10b3Atc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gICAgcmlnaHQ6IDVweDtcbiAgICBtYXJnaW4tdG9wOiAtMnB4OyB9XG4gIC5kcm9wZG93bi5tZW51Lnh4bGFyZ2UtdmVydGljYWwgPiBsaSAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgdG9wOiAwOyB9XG4gIC5kcm9wZG93bi5tZW51Lnh4bGFyZ2UtdmVydGljYWwgPiBsaS5vcGVucy1sZWZ0IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICBsZWZ0OiBhdXRvO1xuICAgIHJpZ2h0OiAxMDAlOyB9XG4gIC5kcm9wZG93bi5tZW51Lnh4bGFyZ2UtdmVydGljYWwgPiBsaS5vcGVucy1yaWdodCAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogMTAwJTsgfVxuICAuZHJvcGRvd24ubWVudS54eGxhcmdlLXZlcnRpY2FsID4gbGkgPiBhOjphZnRlciB7XG4gICAgcmlnaHQ6IDE0cHg7XG4gICAgbWFyZ2luLXRvcDogLTNweDsgfVxuICAuZHJvcGRvd24ubWVudS54eGxhcmdlLXZlcnRpY2FsID4gbGkub3BlbnMtbGVmdCA+IGE6OmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgYm9yZGVyOiBpbnNldCA1cHg7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCAjZGQzMzMzIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1yaWdodC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7IH1cbiAgLmRyb3Bkb3duLm1lbnUueHhsYXJnZS12ZXJ0aWNhbCA+IGxpLm9wZW5zLXJpZ2h0ID4gYTo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXI6IGluc2V0IDVweDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICNkZDMzMzM7XG4gICAgYm9yZGVyLWxlZnQtc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1yaWdodC13aWR0aDogMDsgfSB9XG5cbi5kcm9wZG93bi5tZW51LmFsaWduLXJpZ2h0IC5pcy1kcm9wZG93bi1zdWJtZW51LmZpcnN0LXN1YiB7XG4gIHRvcDogMTAwJTtcbiAgbGVmdDogYXV0bztcbiAgcmlnaHQ6IDA7IH1cblxuLmlzLWRyb3Bkb3duLW1lbnUudmVydGljYWwge1xuICB3aWR0aDogMTAwcHg7IH1cbiAgLmlzLWRyb3Bkb3duLW1lbnUudmVydGljYWwuYWxpZ24tcmlnaHQge1xuICAgIGZsb2F0OiByaWdodDsgfVxuXG4uaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50IGE6OmFmdGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA1MCU7XG4gICAgcmlnaHQ6IDVweDtcbiAgICBtYXJnaW4tdG9wOiAtMnB4OyB9XG4gIC5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudC5vcGVucy1pbm5lciAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgdG9wOiAxMDAlOyB9XG4gIC5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudC5vcGVucy1sZWZ0IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICBsZWZ0OiBhdXRvO1xuICAgIHJpZ2h0OiAxMDAlOyB9XG5cbi5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgZGlzcGxheTogbm9uZTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDEwMCU7XG4gIG1pbi13aWR0aDogMjAwcHg7XG4gIHotaW5kZXg6IDE7XG4gIGJhY2tncm91bmQ6ICNmN2Y3Zjc7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNEREQ7IH1cbiAgLmlzLWRyb3Bkb3duLXN1Ym1lbnUgLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50ID4gYTo6YWZ0ZXIge1xuICAgIHJpZ2h0OiAxNHB4O1xuICAgIG1hcmdpbi10b3A6IC0zcHg7IH1cbiAgLmlzLWRyb3Bkb3duLXN1Ym1lbnUgLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50Lm9wZW5zLWxlZnQgPiBhOjphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJvcmRlcjogaW5zZXQgNXB4O1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgI2RkMzMzMyB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItcmlnaHQtc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1sZWZ0LXdpZHRoOiAwOyB9XG4gIC5pcy1kcm9wZG93bi1zdWJtZW51IC5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudC5vcGVucy1yaWdodCA+IGE6OmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgYm9yZGVyOiBpbnNldCA1cHg7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAjZGQzMzMzO1xuICAgIGJvcmRlci1sZWZ0LXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItcmlnaHQtd2lkdGg6IDA7IH1cbiAgLmlzLWRyb3Bkb3duLXN1Ym1lbnUgLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIG1hcmdpbi10b3A6IC0xcHg7IH1cbiAgLmlzLWRyb3Bkb3duLXN1Ym1lbnUgPiBsaSB7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgLmlzLWRyb3Bkb3duLXN1Ym1lbnU6bm90KC5qcy1kcm9wZG93bi1ub2hvdmVyKSA+IC5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudDpob3ZlciA+IC5pcy1kcm9wZG93bi1zdWJtZW51LCAuaXMtZHJvcGRvd24tc3VibWVudS5qcy1kcm9wZG93bi1hY3RpdmUge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi5mbGV4LXZpZGVvIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6IDA7XG4gIHBhZGRpbmctYm90dG9tOiA3NSU7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgLmZsZXgtdmlkZW8gaWZyYW1lLFxuICAuZmxleC12aWRlbyBvYmplY3QsXG4gIC5mbGV4LXZpZGVvIGVtYmVkLFxuICAuZmxleC12aWRlbyB2aWRlbyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTsgfVxuICAuZmxleC12aWRlby53aWRlc2NyZWVuIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogNTYuMjUlOyB9XG4gIC5mbGV4LXZpZGVvLnZpbWVvIHtcbiAgICBwYWRkaW5nLXRvcDogMDsgfVxuXG4ubGFiZWwge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmc6IDAuMzMzMzNyZW0gMC41cmVtO1xuICBmb250LXNpemU6IDAuOHJlbTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGN1cnNvcjogZGVmYXVsdDtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgYmFja2dyb3VuZDogI2RkMzMzMztcbiAgY29sb3I6ICNmN2Y3Zjc7IH1cbiAgLmxhYmVsLnNlY29uZGFyeSB7XG4gICAgYmFja2dyb3VuZDogIzc3NztcbiAgICBjb2xvcjogI2Y3ZjdmNzsgfVxuICAubGFiZWwuc3VjY2VzcyB7XG4gICAgYmFja2dyb3VuZDogIzNhZGI3NjtcbiAgICBjb2xvcjogI2Y3ZjdmNzsgfVxuICAubGFiZWwud2FybmluZyB7XG4gICAgYmFja2dyb3VuZDogI2ZmYWUwMDtcbiAgICBjb2xvcjogI2Y3ZjdmNzsgfVxuICAubGFiZWwuYWxlcnQge1xuICAgIGJhY2tncm91bmQ6ICNlYzU4NDA7XG4gICAgY29sb3I6ICNmN2Y3Zjc7IH1cblxuLm1lZGlhLW9iamVjdCB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG4gIC5tZWRpYS1vYmplY3QgaW1nIHtcbiAgICBtYXgtd2lkdGg6IG5vbmU7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTM3NWVtKSB7XG4gICAgLm1lZGlhLW9iamVjdC5zdGFjay1mb3Itc21hbGwgLm1lZGlhLW9iamVjdC1zZWN0aW9uIHtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMXJlbTtcbiAgICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgICAubWVkaWEtb2JqZWN0LnN0YWNrLWZvci1zbWFsbCAubWVkaWEtb2JqZWN0LXNlY3Rpb24gaW1nIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7IH0gfVxuXG4ubWVkaWEtb2JqZWN0LXNlY3Rpb24ge1xuICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wOyB9XG4gIC5tZWRpYS1vYmplY3Qtc2VjdGlvbjpmaXJzdC1jaGlsZCB7XG4gICAgcGFkZGluZy1yaWdodDogMXJlbTsgfVxuICAubWVkaWEtb2JqZWN0LXNlY3Rpb246bGFzdC1jaGlsZDpub3QoOm50aC1jaGlsZCgyKSkge1xuICAgIHBhZGRpbmctbGVmdDogMXJlbTsgfVxuICAubWVkaWEtb2JqZWN0LXNlY3Rpb24ubWlkZGxlIHtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyB9XG4gIC5tZWRpYS1vYmplY3Qtc2VjdGlvbi5ib3R0b20ge1xuICAgIHZlcnRpY2FsLWFsaWduOiBib3R0b207IH1cblxuLm1lbnUge1xuICBtYXJnaW46IDA7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTsgfVxuICAubWVudSA+IGxpIHtcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IH1cbiAgICBbZGF0YS13aGF0aW5wdXQ9J21vdXNlJ10gLm1lbnUgPiBsaSB7XG4gICAgICBvdXRsaW5lOiAwOyB9XG4gIC5tZW51ID4gbGkgPiBhIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiAwLjdyZW0gMXJlbTtcbiAgICBsaW5lLWhlaWdodDogMTsgfVxuICAubWVudSBpbnB1dCxcbiAgLm1lbnUgYSxcbiAgLm1lbnUgYnV0dG9uIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIC5tZW51ID4gbGkgPiBhIGltZyxcbiAgLm1lbnUgPiBsaSA+IGEgaSB7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgfVxuICAubWVudSA+IGxpID4gYSBpICsgc3BhbixcbiAgLm1lbnUgPiBsaSA+IGEgaW1nICsgc3BhbiB7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgfVxuICAubWVudSA+IGxpID4gYSBpbWcsXG4gIC5tZW51ID4gbGkgPiBhIGkge1xuICAgIG1hcmdpbi1yaWdodDogMC4yNXJlbTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cbiAgLm1lbnUgPiBsaSB7XG4gICAgZGlzcGxheTogdGFibGUtY2VsbDsgfVxuICAubWVudS52ZXJ0aWNhbCA+IGxpIHtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLm1lbnUubWVkaXVtLWhvcml6b250YWwgPiBsaSB7XG4gICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsOyB9XG4gICAgLm1lbnUubWVkaXVtLXZlcnRpY2FsID4gbGkge1xuICAgICAgZGlzcGxheTogYmxvY2s7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLm1lbnUubGFyZ2UtaG9yaXpvbnRhbCA+IGxpIHtcbiAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7IH1cbiAgICAubWVudS5sYXJnZS12ZXJ0aWNhbCA+IGxpIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5tZW51LnhsYXJnZS1ob3Jpem9udGFsID4gbGkge1xuICAgICAgZGlzcGxheTogdGFibGUtY2VsbDsgfVxuICAgIC5tZW51LnhsYXJnZS12ZXJ0aWNhbCA+IGxpIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgIC5tZW51Lnh4bGFyZ2UtaG9yaXpvbnRhbCA+IGxpIHtcbiAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7IH1cbiAgICAubWVudS54eGxhcmdlLXZlcnRpY2FsID4gbGkge1xuICAgICAgZGlzcGxheTogYmxvY2s7IH0gfVxuICAubWVudS5zaW1wbGUgbGkge1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW4tcmlnaHQ6IDFyZW07IH1cbiAgLm1lbnUuc2ltcGxlIGEge1xuICAgIHBhZGRpbmc6IDA7IH1cbiAgLm1lbnUuYWxpZ24tcmlnaHQ6OmJlZm9yZSwgLm1lbnUuYWxpZ24tcmlnaHQ6OmFmdGVyIHtcbiAgICBjb250ZW50OiAnICc7XG4gICAgZGlzcGxheTogdGFibGU7IH1cbiAgLm1lbnUuYWxpZ24tcmlnaHQ6OmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDsgfVxuICAubWVudS5hbGlnbi1yaWdodCA+IGxpIHtcbiAgICBmbG9hdDogcmlnaHQ7IH1cbiAgLm1lbnUuZXhwYW5kZWQge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIHRhYmxlLWxheW91dDogZml4ZWQ7IH1cbiAgICAubWVudS5leHBhbmRlZCA+IGxpOmZpcnN0LWNoaWxkOmxhc3QtY2hpbGQge1xuICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgLm1lbnUuaWNvbi10b3AgPiBsaSA+IGEge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAgIC5tZW51Lmljb24tdG9wID4gbGkgPiBhIGltZyxcbiAgICAubWVudS5pY29uLXRvcCA+IGxpID4gYSBpIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgbWFyZ2luOiAwIGF1dG8gMC4yNXJlbTsgfVxuICAubWVudS5uZXN0ZWQge1xuICAgIG1hcmdpbi1sZWZ0OiAxcmVtOyB9XG4gIC5tZW51IC5hY3RpdmUgPiBhIHtcbiAgICBjb2xvcjogI2RkMzMzMztcbiAgICBiYWNrZ3JvdW5kOiAjMGEwYTBhOyB9XG5cbi5tZW51LXRleHQge1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBwYWRkaW5nLXRvcDogMDtcbiAgcGFkZGluZy1ib3R0b206IDA7XG4gIHBhZGRpbmc6IDAuN3JlbSAxcmVtOyB9XG5cbi5tZW51LWNlbnRlcmVkIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIC5tZW51LWNlbnRlcmVkID4gLm1lbnUge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuXG4ubm8tanMgW2RhdGEtcmVzcG9uc2l2ZS1tZW51XSB1bCB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuaHRtbCxcbmJvZHkge1xuICBoZWlnaHQ6IDEwMCU7IH1cblxuLm9mZi1jYW52YXMtd3JhcHBlciB7XG4gIHdpZHRoOiAxMDAlO1xuICBvdmVyZmxvdy14OiBoaWRkZW47XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogYXV0bzsgfVxuXG4ub2ZmLWNhbnZhcy13cmFwcGVyLWlubmVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuNXMgZWFzZTsgfVxuICAub2ZmLWNhbnZhcy13cmFwcGVyLWlubmVyOjpiZWZvcmUsIC5vZmYtY2FudmFzLXdyYXBwZXItaW5uZXI6OmFmdGVyIHtcbiAgICBjb250ZW50OiAnICc7XG4gICAgZGlzcGxheTogdGFibGU7IH1cbiAgLm9mZi1jYW52YXMtd3JhcHBlci1pbm5lcjo6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoOyB9XG5cbi5vZmYtY2FudmFzLWNvbnRlbnQsXG4ub2ZmLWNhbnZhcy1jb250ZW50IHtcbiAgbWluLWhlaWdodDogMTAwJTtcbiAgYmFja2dyb3VuZDogI2Y3ZjdmNztcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuNXMgZWFzZTtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICB6LWluZGV4OiAxO1xuICBwYWRkaW5nLWJvdHRvbTogMC4xcHg7XG4gIGJveC1zaGFkb3c6IDAgMCAxMHB4IHJnYmEoMTAsIDEwLCAxMCwgMC41KTsgfVxuXG4uanMtb2ZmLWNhbnZhcy1leGl0IHtcbiAgZGlzcGxheTogbm9uZTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGJhY2tncm91bmQ6IHJnYmEoMjQ3LCAyNDcsIDI0NywgMC4yNSk7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjVzIGVhc2U7IH1cblxuLm9mZi1jYW52YXMge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJhY2tncm91bmQ6ICNFMEUwRTA7XG4gIHotaW5kZXg6IC0xO1xuICBtYXgtaGVpZ2h0OiAxMDAlO1xuICBvdmVyZmxvdy15OiBhdXRvO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7IH1cbiAgW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddIC5vZmYtY2FudmFzIHtcbiAgICBvdXRsaW5lOiAwOyB9XG4gIC5vZmYtY2FudmFzLnBvc2l0aW9uLWxlZnQge1xuICAgIGxlZnQ6IC0yNTBweDtcbiAgICB0b3A6IDA7XG4gICAgd2lkdGg6IDI1MHB4OyB9XG4gICAgLmlzLW9wZW4tbGVmdCB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjUwcHgpOyB9XG4gIC5vZmYtY2FudmFzLnBvc2l0aW9uLXJpZ2h0IHtcbiAgICByaWdodDogLTI1MHB4O1xuICAgIHRvcDogMDtcbiAgICB3aWR0aDogMjUwcHg7IH1cbiAgICAuaXMtb3Blbi1yaWdodCB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTI1MHB4KTsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5wb3NpdGlvbi1sZWZ0LnJldmVhbC1mb3ItbWVkaXVtIHtcbiAgICBsZWZ0OiAwO1xuICAgIHotaW5kZXg6IGF1dG87XG4gICAgcG9zaXRpb246IGZpeGVkOyB9XG4gICAgLnBvc2l0aW9uLWxlZnQucmV2ZWFsLWZvci1tZWRpdW0gfiAub2ZmLWNhbnZhcy1jb250ZW50IHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAyNTBweDsgfVxuICAucG9zaXRpb24tcmlnaHQucmV2ZWFsLWZvci1tZWRpdW0ge1xuICAgIHJpZ2h0OiAwO1xuICAgIHotaW5kZXg6IGF1dG87XG4gICAgcG9zaXRpb246IGZpeGVkOyB9XG4gICAgLnBvc2l0aW9uLXJpZ2h0LnJldmVhbC1mb3ItbWVkaXVtIH4gLm9mZi1jYW52YXMtY29udGVudCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDI1MHB4OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAucG9zaXRpb24tbGVmdC5yZXZlYWwtZm9yLWxhcmdlIHtcbiAgICBsZWZ0OiAwO1xuICAgIHotaW5kZXg6IGF1dG87XG4gICAgcG9zaXRpb246IGZpeGVkOyB9XG4gICAgLnBvc2l0aW9uLWxlZnQucmV2ZWFsLWZvci1sYXJnZSB+IC5vZmYtY2FudmFzLWNvbnRlbnQge1xuICAgICAgbWFyZ2luLWxlZnQ6IDI1MHB4OyB9XG4gIC5wb3NpdGlvbi1yaWdodC5yZXZlYWwtZm9yLWxhcmdlIHtcbiAgICByaWdodDogMDtcbiAgICB6LWluZGV4OiBhdXRvO1xuICAgIHBvc2l0aW9uOiBmaXhlZDsgfVxuICAgIC5wb3NpdGlvbi1yaWdodC5yZXZlYWwtZm9yLWxhcmdlIH4gLm9mZi1jYW52YXMtY29udGVudCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDI1MHB4OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAucG9zaXRpb24tbGVmdC5yZXZlYWwtZm9yLXhsYXJnZSB7XG4gICAgbGVmdDogMDtcbiAgICB6LWluZGV4OiBhdXRvO1xuICAgIHBvc2l0aW9uOiBmaXhlZDsgfVxuICAgIC5wb3NpdGlvbi1sZWZ0LnJldmVhbC1mb3IteGxhcmdlIH4gLm9mZi1jYW52YXMtY29udGVudCB7XG4gICAgICBtYXJnaW4tbGVmdDogMjUwcHg7IH1cbiAgLnBvc2l0aW9uLXJpZ2h0LnJldmVhbC1mb3IteGxhcmdlIHtcbiAgICByaWdodDogMDtcbiAgICB6LWluZGV4OiBhdXRvO1xuICAgIHBvc2l0aW9uOiBmaXhlZDsgfVxuICAgIC5wb3NpdGlvbi1yaWdodC5yZXZlYWwtZm9yLXhsYXJnZSB+IC5vZmYtY2FudmFzLWNvbnRlbnQge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAyNTBweDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgLnBvc2l0aW9uLWxlZnQucmV2ZWFsLWZvci14eGxhcmdlIHtcbiAgICBsZWZ0OiAwO1xuICAgIHotaW5kZXg6IGF1dG87XG4gICAgcG9zaXRpb246IGZpeGVkOyB9XG4gICAgLnBvc2l0aW9uLWxlZnQucmV2ZWFsLWZvci14eGxhcmdlIH4gLm9mZi1jYW52YXMtY29udGVudCB7XG4gICAgICBtYXJnaW4tbGVmdDogMjUwcHg7IH1cbiAgLnBvc2l0aW9uLXJpZ2h0LnJldmVhbC1mb3IteHhsYXJnZSB7XG4gICAgcmlnaHQ6IDA7XG4gICAgei1pbmRleDogYXV0bztcbiAgICBwb3NpdGlvbjogZml4ZWQ7IH1cbiAgICAucG9zaXRpb24tcmlnaHQucmV2ZWFsLWZvci14eGxhcmdlIH4gLm9mZi1jYW52YXMtY29udGVudCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDI1MHB4OyB9IH1cblxuLm9yYml0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG5cbi5vcmJpdC1jb250YWluZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbjogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgbGlzdC1zdHlsZTogbm9uZTsgfVxuXG4ub3JiaXQtc2xpZGUge1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LWhlaWdodDogMTAwJTsgfVxuICAub3JiaXQtc2xpZGUubm8tbW90aW9udWkuaXMtYWN0aXZlIHtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDsgfVxuXG4ub3JiaXQtZmlndXJlIHtcbiAgbWFyZ2luOiAwOyB9XG5cbi5vcmJpdC1pbWFnZSB7XG4gIG1hcmdpbjogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogMTAwJTsgfVxuXG4ub3JiaXQtY2FwdGlvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogMXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgY29sb3I6ICNmN2Y3Zjc7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMTAsIDEwLCAxMCwgMC41KTsgfVxuXG4ub3JiaXQtcHJldmlvdXMsIC5vcmJpdC1uZXh0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICB6LWluZGV4OiAxMDtcbiAgcGFkZGluZzogMXJlbTtcbiAgY29sb3I6ICNmN2Y3Zjc7IH1cbiAgW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddIC5vcmJpdC1wcmV2aW91cywgW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddIC5vcmJpdC1uZXh0IHtcbiAgICBvdXRsaW5lOiAwOyB9XG4gIC5vcmJpdC1wcmV2aW91czpob3ZlciwgLm9yYml0LW5leHQ6aG92ZXIsIC5vcmJpdC1wcmV2aW91czphY3RpdmUsIC5vcmJpdC1uZXh0OmFjdGl2ZSwgLm9yYml0LXByZXZpb3VzOmZvY3VzLCAub3JiaXQtbmV4dDpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgxMCwgMTAsIDEwLCAwLjUpOyB9XG5cbi5vcmJpdC1wcmV2aW91cyB7XG4gIGxlZnQ6IDA7IH1cblxuLm9yYml0LW5leHQge1xuICBsZWZ0OiBhdXRvO1xuICByaWdodDogMDsgfVxuXG4ub3JiaXQtYnVsbGV0cyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luLXRvcDogMC44cmVtO1xuICBtYXJnaW4tYm90dG9tOiAwLjhyZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICBbZGF0YS13aGF0aW5wdXQ9J21vdXNlJ10gLm9yYml0LWJ1bGxldHMge1xuICAgIG91dGxpbmU6IDA7IH1cbiAgLm9yYml0LWJ1bGxldHMgYnV0dG9uIHtcbiAgICB3aWR0aDogMS4ycmVtO1xuICAgIGhlaWdodDogMS4ycmVtO1xuICAgIG1hcmdpbjogMC4xcmVtO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNEREQ7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlOyB9XG4gICAgLm9yYml0LWJ1bGxldHMgYnV0dG9uOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICM4YThhOGE7IH1cbiAgICAub3JiaXQtYnVsbGV0cyBidXR0b24uaXMtYWN0aXZlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICM4YThhOGE7IH1cblxuLnBhZ2luYXRpb24ge1xuICBtYXJnaW4tbGVmdDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTsgfVxuICAucGFnaW5hdGlvbjo6YmVmb3JlLCAucGFnaW5hdGlvbjo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcgJztcbiAgICBkaXNwbGF5OiB0YWJsZTsgfVxuICAucGFnaW5hdGlvbjo6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIC5wYWdpbmF0aW9uIGxpIHtcbiAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgIG1hcmdpbi1yaWdodDogMC4wNjI1cmVtO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAgIC5wYWdpbmF0aW9uIGxpOmxhc3QtY2hpbGQsIC5wYWdpbmF0aW9uIGxpOmZpcnN0LWNoaWxkIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5wYWdpbmF0aW9uIGxpIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9IH1cbiAgLnBhZ2luYXRpb24gYSxcbiAgLnBhZ2luYXRpb24gYnV0dG9uIHtcbiAgICBjb2xvcjogIzBhMGEwYTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiAwLjE4NzVyZW0gMC42MjVyZW07XG4gICAgYm9yZGVyLXJhZGl1czogMDsgfVxuICAgIC5wYWdpbmF0aW9uIGE6aG92ZXIsXG4gICAgLnBhZ2luYXRpb24gYnV0dG9uOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQ6ICNFMEUwRTA7IH1cbiAgLnBhZ2luYXRpb24gLmN1cnJlbnQge1xuICAgIHBhZGRpbmc6IDAuMTg3NXJlbSAwLjYyNXJlbTtcbiAgICBiYWNrZ3JvdW5kOiAjZGQzMzMzO1xuICAgIGNvbG9yOiAjZjdmN2Y3O1xuICAgIGN1cnNvcjogZGVmYXVsdDsgfVxuICAucGFnaW5hdGlvbiAuZGlzYWJsZWQge1xuICAgIHBhZGRpbmc6IDAuMTg3NXJlbSAwLjYyNXJlbTtcbiAgICBjb2xvcjogI0RERDtcbiAgICBjdXJzb3I6IG5vdC1hbGxvd2VkOyB9XG4gICAgLnBhZ2luYXRpb24gLmRpc2FibGVkOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50OyB9XG4gIC5wYWdpbmF0aW9uIC5lbGxpcHNpczo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICdcXDIwMjYnO1xuICAgIHBhZGRpbmc6IDAuMTg3NXJlbSAwLjYyNXJlbTtcbiAgICBjb2xvcjogIzBhMGEwYTsgfVxuXG4ucGFnaW5hdGlvbi1wcmV2aW91cyBhOjpiZWZvcmUsXG4ucGFnaW5hdGlvbi1wcmV2aW91cy5kaXNhYmxlZDo6YmVmb3JlIHtcbiAgY29udGVudDogJ1xcMDBhYic7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLXJpZ2h0OiAwLjVyZW07IH1cblxuLnBhZ2luYXRpb24tbmV4dCBhOjphZnRlcixcbi5wYWdpbmF0aW9uLW5leHQuZGlzYWJsZWQ6OmFmdGVyIHtcbiAgY29udGVudDogJ1xcMDBiYic7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLWxlZnQ6IDAuNXJlbTsgfVxuXG4ucHJvZ3Jlc3Mge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjREREO1xuICBoZWlnaHQ6IDFyZW07XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGJvcmRlci1yYWRpdXM6IDA7IH1cbiAgLnByb2dyZXNzLnByaW1hcnkgLnByb2dyZXNzLW1ldGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjE5OWU4OyB9XG4gIC5wcm9ncmVzcy5zZWNvbmRhcnkgLnByb2dyZXNzLW1ldGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNzc3OyB9XG4gIC5wcm9ncmVzcy5zdWNjZXNzIC5wcm9ncmVzcy1tZXRlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzNhZGI3NjsgfVxuICAucHJvZ3Jlc3Mud2FybmluZyAucHJvZ3Jlc3MtbWV0ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmFlMDA7IH1cbiAgLnByb2dyZXNzLmFsZXJ0IC5wcm9ncmVzcy1tZXRlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2VjNTg0MDsgfVxuXG4ucHJvZ3Jlc3MtbWV0ZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2RkMzMzMzsgfVxuXG4ucHJvZ3Jlc3MtbWV0ZXItdGV4dCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbWFyZ2luOiAwO1xuICBmb250LXNpemU6IDAuNzVyZW07XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBjb2xvcjogI2Y3ZjdmNztcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgfVxuXG4uc2xpZGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6IDAuNXJlbTtcbiAgbWFyZ2luLXRvcDogMS4yNXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMi4yNXJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0UwRTBFMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgdG91Y2gtYWN0aW9uOiBub25lOyB9XG5cbi5zbGlkZXItZmlsbCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAwLjVyZW07XG4gIGJhY2tncm91bmQtY29sb3I6ICNEREQ7XG4gIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0OyB9XG4gIC5zbGlkZXItZmlsbC5pcy1kcmFnZ2luZyB7XG4gICAgdHJhbnNpdGlvbjogYWxsIDBzIGxpbmVhcjsgfVxuXG4uc2xpZGVyLWhhbmRsZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAxO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAxLjRyZW07XG4gIGhlaWdodDogMS40cmVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGQzMzMzO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLWluLW91dDtcbiAgdG91Y2gtYWN0aW9uOiBtYW5pcHVsYXRpb247XG4gIGJvcmRlci1yYWRpdXM6IDA7IH1cbiAgW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddIC5zbGlkZXItaGFuZGxlIHtcbiAgICBvdXRsaW5lOiAwOyB9XG4gIC5zbGlkZXItaGFuZGxlOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYzYyMTIxOyB9XG4gIC5zbGlkZXItaGFuZGxlLmlzLWRyYWdnaW5nIHtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMHMgbGluZWFyOyB9XG5cbi5zbGlkZXIuZGlzYWJsZWQsXG4uc2xpZGVyW2Rpc2FibGVkXSB7XG4gIG9wYWNpdHk6IDAuMjU7XG4gIGN1cnNvcjogbm90LWFsbG93ZWQ7IH1cblxuLnNsaWRlci52ZXJ0aWNhbCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDAuNXJlbTtcbiAgaGVpZ2h0OiAxMi41cmVtO1xuICBtYXJnaW46IDAgMS4yNXJlbTtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxLCAtMSk7IH1cbiAgLnNsaWRlci52ZXJ0aWNhbCAuc2xpZGVyLWZpbGwge1xuICAgIHRvcDogMDtcbiAgICB3aWR0aDogMC41cmVtO1xuICAgIG1heC1oZWlnaHQ6IDEwMCU7IH1cbiAgLnNsaWRlci52ZXJ0aWNhbCAuc2xpZGVyLWhhbmRsZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiA1MCU7XG4gICAgd2lkdGg6IDEuNHJlbTtcbiAgICBoZWlnaHQ6IDEuNHJlbTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7IH1cblxuLnN0aWNreS1jb250YWluZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cblxuLnN0aWNreSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTsgfVxuXG4uc3RpY2t5LmlzLXN0dWNrIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB6LWluZGV4OiA1OyB9XG4gIC5zdGlja3kuaXMtc3R1Y2suaXMtYXQtdG9wIHtcbiAgICB0b3A6IDA7IH1cbiAgLnN0aWNreS5pcy1zdHVjay5pcy1hdC1ib3R0b20ge1xuICAgIGJvdHRvbTogMDsgfVxuXG4uc3RpY2t5LmlzLWFuY2hvcmVkIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiBhdXRvO1xuICByaWdodDogYXV0bzsgfVxuICAuc3RpY2t5LmlzLWFuY2hvcmVkLmlzLWF0LWJvdHRvbSB7XG4gICAgYm90dG9tOiAwOyB9XG5cbmJvZHkuaXMtcmV2ZWFsLW9wZW4ge1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG5cbi5yZXZlYWwtb3ZlcmxheSB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuICB6LWluZGV4OiAxMDA1O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDEwLCAxMCwgMTAsIDAuNDUpO1xuICBvdmVyZmxvdy15OiBzY3JvbGw7IH1cblxuLnJldmVhbCB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHotaW5kZXg6IDEwMDY7XG4gIHBhZGRpbmc6IDFyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkICNEREQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmN2Y3Zjc7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdG9wOiAxMDBweDtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgb3ZlcmZsb3cteTogYXV0bzsgfVxuICBbZGF0YS13aGF0aW5wdXQ9J21vdXNlJ10gLnJldmVhbCB7XG4gICAgb3V0bGluZTogMDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLnJldmVhbCB7XG4gICAgICBtaW4taGVpZ2h0OiAwOyB9IH1cbiAgLnJldmVhbCAuY29sdW1uLCAucmV2ZWFsIC5jb2x1bW5zLFxuICAucmV2ZWFsIC5jb2x1bW5zIHtcbiAgICBtaW4td2lkdGg6IDA7IH1cbiAgLnJldmVhbCA+IDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAucmV2ZWFsIHtcbiAgICAgIHdpZHRoOiA2MDBweDtcbiAgICAgIG1heC13aWR0aDogNzVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLnJldmVhbCAucmV2ZWFsIHtcbiAgICAgIGxlZnQ6IGF1dG87XG4gICAgICByaWdodDogYXV0bztcbiAgICAgIG1hcmdpbjogMCBhdXRvOyB9IH1cbiAgLnJldmVhbC5jb2xsYXBzZSB7XG4gICAgcGFkZGluZzogMDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLnJldmVhbC50aW55IHtcbiAgICAgIHdpZHRoOiAzMCU7XG4gICAgICBtYXgtd2lkdGg6IDc1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5yZXZlYWwuc21hbGwge1xuICAgICAgd2lkdGg6IDUwJTtcbiAgICAgIG1heC13aWR0aDogNzVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLnJldmVhbC5sYXJnZSB7XG4gICAgICB3aWR0aDogOTAlO1xuICAgICAgbWF4LXdpZHRoOiA3NXJlbTsgfSB9XG4gIC5yZXZlYWwuZnVsbCB7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGhlaWdodDogMTAwdmg7XG4gICAgbWluLWhlaWdodDogMTAwdmg7XG4gICAgbWF4LXdpZHRoOiBub25lO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIGJvcmRlcjogMDtcbiAgICBib3JkZXItcmFkaXVzOiAwOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5LjkzNzVlbSkge1xuICAgIC5yZXZlYWwge1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDB2aDtcbiAgICAgIG1pbi1oZWlnaHQ6IDEwMHZoO1xuICAgICAgbWF4LXdpZHRoOiBub25lO1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICBib3JkZXI6IDA7XG4gICAgICBib3JkZXItcmFkaXVzOiAwOyB9IH1cbiAgLnJldmVhbC53aXRob3V0LW92ZXJsYXkge1xuICAgIHBvc2l0aW9uOiBmaXhlZDsgfVxuXG4uc3dpdGNoIHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgb3V0bGluZTogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgY29sb3I6ICNmN2Y3Zjc7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBmb250LXNpemU6IDAuODc1cmVtOyB9XG5cbi5zd2l0Y2gtaW5wdXQge1xuICBvcGFjaXR5OiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7IH1cblxuLnN3aXRjaC1wYWRkbGUge1xuICBiYWNrZ3JvdW5kOiAjREREO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiA0cmVtO1xuICBoZWlnaHQ6IDJyZW07XG4gIHRyYW5zaXRpb246IGFsbCAwLjI1cyBlYXNlLW91dDtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIGZvbnQtd2VpZ2h0OiBpbmhlcml0OyB9XG4gIGlucHV0ICsgLnN3aXRjaC1wYWRkbGUge1xuICAgIG1hcmdpbjogMDsgfVxuICAuc3dpdGNoLXBhZGRsZTo6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQ6ICNmN2Y3Zjc7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGhlaWdodDogMS41cmVtO1xuICAgIGxlZnQ6IDAuMjVyZW07XG4gICAgdG9wOiAwLjI1cmVtO1xuICAgIHdpZHRoOiAxLjVyZW07XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuMjVzIGVhc2Utb3V0O1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgYm9yZGVyLXJhZGl1czogMDsgfVxuICBpbnB1dDpjaGVja2VkIH4gLnN3aXRjaC1wYWRkbGUge1xuICAgIGJhY2tncm91bmQ6ICNkZDMzMzM7IH1cbiAgICBpbnB1dDpjaGVja2VkIH4gLnN3aXRjaC1wYWRkbGU6OmFmdGVyIHtcbiAgICAgIGxlZnQ6IDIuMjVyZW07IH1cbiAgW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddIGlucHV0OmZvY3VzIH4gLnN3aXRjaC1wYWRkbGUge1xuICAgIG91dGxpbmU6IDA7IH1cblxuLnN3aXRjaC1hY3RpdmUsIC5zd2l0Y2gtaW5hY3RpdmUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7IH1cblxuLnN3aXRjaC1hY3RpdmUge1xuICBsZWZ0OiA4JTtcbiAgZGlzcGxheTogbm9uZTsgfVxuICBpbnB1dDpjaGVja2VkICsgbGFiZWwgPiAuc3dpdGNoLWFjdGl2ZSB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cblxuLnN3aXRjaC1pbmFjdGl2ZSB7XG4gIHJpZ2h0OiAxNSU7IH1cbiAgaW5wdXQ6Y2hlY2tlZCArIGxhYmVsID4gLnN3aXRjaC1pbmFjdGl2ZSB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuXG4uc3dpdGNoLnRpbnkgLnN3aXRjaC1wYWRkbGUge1xuICB3aWR0aDogM3JlbTtcbiAgaGVpZ2h0OiAxLjVyZW07XG4gIGZvbnQtc2l6ZTogMC42MjVyZW07IH1cblxuLnN3aXRjaC50aW55IC5zd2l0Y2gtcGFkZGxlOjphZnRlciB7XG4gIHdpZHRoOiAxcmVtO1xuICBoZWlnaHQ6IDFyZW07IH1cblxuLnN3aXRjaC50aW55IGlucHV0OmNoZWNrZWQgfiAuc3dpdGNoLXBhZGRsZTo6YWZ0ZXIge1xuICBsZWZ0OiAxLjc1cmVtOyB9XG5cbi5zd2l0Y2guc21hbGwgLnN3aXRjaC1wYWRkbGUge1xuICB3aWR0aDogMy41cmVtO1xuICBoZWlnaHQ6IDEuNzVyZW07XG4gIGZvbnQtc2l6ZTogMC43NXJlbTsgfVxuXG4uc3dpdGNoLnNtYWxsIC5zd2l0Y2gtcGFkZGxlOjphZnRlciB7XG4gIHdpZHRoOiAxLjI1cmVtO1xuICBoZWlnaHQ6IDEuMjVyZW07IH1cblxuLnN3aXRjaC5zbWFsbCBpbnB1dDpjaGVja2VkIH4gLnN3aXRjaC1wYWRkbGU6OmFmdGVyIHtcbiAgbGVmdDogMnJlbTsgfVxuXG4uc3dpdGNoLmxhcmdlIC5zd2l0Y2gtcGFkZGxlIHtcbiAgd2lkdGg6IDVyZW07XG4gIGhlaWdodDogMi41cmVtO1xuICBmb250LXNpemU6IDFyZW07IH1cblxuLnN3aXRjaC5sYXJnZSAuc3dpdGNoLXBhZGRsZTo6YWZ0ZXIge1xuICB3aWR0aDogMnJlbTtcbiAgaGVpZ2h0OiAycmVtOyB9XG5cbi5zd2l0Y2gubGFyZ2UgaW5wdXQ6Y2hlY2tlZCB+IC5zd2l0Y2gtcGFkZGxlOjphZnRlciB7XG4gIGxlZnQ6IDIuNzVyZW07IH1cblxudGFibGUge1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgYm9yZGVyLXJhZGl1czogMDsgfVxuICB0aGVhZCxcbiAgdGJvZHksXG4gIHRmb290IHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjZWJlYmViO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmN2Y3Zjc7IH1cbiAgY2FwdGlvbiB7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgcGFkZGluZzogMC41cmVtIDAuNjI1cmVtIDAuNjI1cmVtOyB9XG4gIHRoZWFkLFxuICB0Zm9vdCB7XG4gICAgYmFja2dyb3VuZDogI2YxZjFmMTtcbiAgICBjb2xvcjogIzFkMmEyOTsgfVxuICAgIHRoZWFkIHRyLFxuICAgIHRmb290IHRyIHtcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50OyB9XG4gICAgdGhlYWQgdGgsXG4gICAgdGhlYWQgdGQsXG4gICAgdGZvb3QgdGgsXG4gICAgdGZvb3QgdGQge1xuICAgICAgcGFkZGluZzogMC41cmVtIDAuNjI1cmVtIDAuNjI1cmVtO1xuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG4gIHRib2R5IHRyOm50aC1jaGlsZChldmVuKSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ViZWJlYjsgfVxuICB0Ym9keSB0aCxcbiAgdGJvZHkgdGQge1xuICAgIHBhZGRpbmc6IDAuNXJlbSAwLjYyNXJlbSAwLjYyNXJlbTsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgdGFibGUuc3RhY2sgdGhlYWQge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgdGFibGUuc3RhY2sgdGZvb3Qge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgdGFibGUuc3RhY2sgdHIsXG4gIHRhYmxlLnN0YWNrIHRoLFxuICB0YWJsZS5zdGFjayB0ZCB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cbiAgdGFibGUuc3RhY2sgdGQge1xuICAgIGJvcmRlci10b3A6IDA7IH0gfVxuXG50YWJsZS5zY3JvbGwge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIG92ZXJmbG93LXg6IGF1dG87IH1cblxudGFibGUuaG92ZXIgdHI6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjJmMmYyOyB9XG5cbnRhYmxlLmhvdmVyIHRyOm50aC1vZi10eXBlKGV2ZW4pOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U1ZTVlNTsgfVxuXG4udGFibGUtc2Nyb2xsIHtcbiAgb3ZlcmZsb3cteDogYXV0bzsgfVxuICAudGFibGUtc2Nyb2xsIHRhYmxlIHtcbiAgICB3aWR0aDogYXV0bzsgfVxuXG4udGFicyB7XG4gIG1hcmdpbjogMDtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICBiYWNrZ3JvdW5kOiAjZjdmN2Y3O1xuICBib3JkZXI6IDFweCBzb2xpZCAjRTBFMEUwOyB9XG4gIC50YWJzOjpiZWZvcmUsIC50YWJzOjphZnRlciB7XG4gICAgY29udGVudDogJyAnO1xuICAgIGRpc3BsYXk6IHRhYmxlOyB9XG4gIC50YWJzOjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7IH1cblxuLnRhYnMudmVydGljYWwgPiBsaSB7XG4gIHdpZHRoOiBhdXRvO1xuICBmbG9hdDogbm9uZTtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuLnRhYnMuc2ltcGxlID4gbGkgPiBhIHtcbiAgcGFkZGluZzogMDsgfVxuICAudGFicy5zaW1wbGUgPiBsaSA+IGE6aG92ZXIge1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50OyB9XG5cbi50YWJzLnByaW1hcnkge1xuICBiYWNrZ3JvdW5kOiAjMjE5OWU4OyB9XG4gIC50YWJzLnByaW1hcnkgPiBsaSA+IGEge1xuICAgIGNvbG9yOiAjZjdmN2Y3OyB9XG4gICAgLnRhYnMucHJpbWFyeSA+IGxpID4gYTpob3ZlciwgLnRhYnMucHJpbWFyeSA+IGxpID4gYTpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kOiAjMTg5M2U0OyB9XG5cbi50YWJzLXRpdGxlIHtcbiAgZmxvYXQ6IGxlZnQ7IH1cbiAgLnRhYnMtdGl0bGUgPiBhIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiAxLjI1cmVtIDEuNXJlbTtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBmb250LXNpemU6IDAuNzVyZW07IH1cbiAgICAudGFicy10aXRsZSA+IGE6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZDogI2Y3ZjdmNzsgfVxuICAgIC50YWJzLXRpdGxlID4gYTpmb2N1cywgLnRhYnMtdGl0bGUgPiBhW2FyaWEtc2VsZWN0ZWQ9J3RydWUnXSB7XG4gICAgICBiYWNrZ3JvdW5kOiAjRTBFMEUwOyB9XG5cbi50YWJzLWNvbnRlbnQge1xuICBiYWNrZ3JvdW5kOiAjZjdmN2Y3O1xuICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlO1xuICBib3JkZXI6IDFweCBzb2xpZCAjRTBFMEUwO1xuICBib3JkZXItdG9wOiAwOyB9XG5cbi50YWJzLWNvbnRlbnQudmVydGljYWwge1xuICBib3JkZXI6IDFweCBzb2xpZCAjRTBFMEUwO1xuICBib3JkZXItbGVmdDogMDsgfVxuXG4udGFicy1wYW5lbCB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBhZGRpbmc6IDFyZW07IH1cbiAgLnRhYnMtcGFuZWwuaXMtYWN0aXZlIHtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuXG4udGh1bWJuYWlsIHtcbiAgYm9yZGVyOiBzb2xpZCA0cHggI2Y3ZjdmNztcbiAgYm94LXNoYWRvdzogMCAwIDAgMXB4IHJnYmEoMTAsIDEwLCAxMCwgMC4yKTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBsaW5lLWhlaWdodDogMDtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICB0cmFuc2l0aW9uOiBib3gtc2hhZG93IDIwMG1zIGVhc2Utb3V0O1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtOyB9XG4gIC50aHVtYm5haWw6aG92ZXIsIC50aHVtYm5haWw6Zm9jdXMge1xuICAgIGJveC1zaGFkb3c6IDAgMCA2cHggMXB4IHJnYmEoMjIxLCA1MSwgNTEsIDAuNSk7IH1cblxuLnRpdGxlLWJhciB7XG4gIGJhY2tncm91bmQ6ICMwYTBhMGE7XG4gIGNvbG9yOiAjZjdmN2Y3O1xuICBwYWRkaW5nOiAwLjVyZW07IH1cbiAgLnRpdGxlLWJhcjo6YmVmb3JlLCAudGl0bGUtYmFyOjphZnRlciB7XG4gICAgY29udGVudDogJyAnO1xuICAgIGRpc3BsYXk6IHRhYmxlOyB9XG4gIC50aXRsZS1iYXI6OmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDsgfVxuICAudGl0bGUtYmFyIC5tZW51LWljb24ge1xuICAgIG1hcmdpbi1sZWZ0OiAwLjI1cmVtO1xuICAgIG1hcmdpbi1yaWdodDogMC41cmVtOyB9XG5cbi50aXRsZS1iYXItbGVmdCB7XG4gIGZsb2F0OiBsZWZ0OyB9XG5cbi50aXRsZS1iYXItcmlnaHQge1xuICBmbG9hdDogcmlnaHQ7XG4gIHRleHQtYWxpZ246IHJpZ2h0OyB9XG5cbi50aXRsZS1iYXItdGl0bGUge1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG5cbi5tZW51LWljb24uZGFyayB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHdpZHRoOiAyMHB4O1xuICBoZWlnaHQ6IDE2cHg7IH1cbiAgLm1lbnUtaWNvbi5kYXJrOjphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMnB4O1xuICAgIGJhY2tncm91bmQ6ICMwYTBhMGE7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgYm94LXNoYWRvdzogMCA3cHggMCAjMGEwYTBhLCAwIDE0cHggMCAjMGEwYTBhOyB9XG4gIC5tZW51LWljb24uZGFyazpob3Zlcjo6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQ6ICM4YThhOGE7XG4gICAgYm94LXNoYWRvdzogMCA3cHggMCAjOGE4YThhLCAwIDE0cHggMCAjOGE4YThhOyB9XG5cbi5tZW51LWljb24ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB3aWR0aDogMjBweDtcbiAgaGVpZ2h0OiAxNnB4OyB9XG4gIC5tZW51LWljb246OmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAycHg7XG4gICAgYmFja2dyb3VuZDogI2Y3ZjdmNztcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICBib3gtc2hhZG93OiAwIDdweCAwICNmN2Y3ZjcsIDAgMTRweCAwICNmN2Y3Zjc7IH1cbiAgLm1lbnUtaWNvbjpob3Zlcjo6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQ6ICNEREQ7XG4gICAgYm94LXNoYWRvdzogMCA3cHggMCAjRERELCAwIDE0cHggMCAjREREOyB9XG5cbi5tZW51LWljb24uZGFyayB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHdpZHRoOiAyMHB4O1xuICBoZWlnaHQ6IDE2cHg7IH1cbiAgLm1lbnUtaWNvbi5kYXJrOjphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMnB4O1xuICAgIGJhY2tncm91bmQ6ICMwYTBhMGE7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgYm94LXNoYWRvdzogMCA3cHggMCAjMGEwYTBhLCAwIDE0cHggMCAjMGEwYTBhOyB9XG4gIC5tZW51LWljb24uZGFyazpob3Zlcjo6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQ6ICM4YThhOGE7XG4gICAgYm94LXNoYWRvdzogMCA3cHggMCAjOGE4YThhLCAwIDE0cHggMCAjOGE4YThhOyB9XG5cbi5oYXMtdGlwIHtcbiAgYm9yZGVyLWJvdHRvbTogZG90dGVkIDFweCAjOGE4YThhO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGN1cnNvcjogaGVscDsgfVxuXG4udG9vbHRpcCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwYTBhMGE7XG4gIGNvbG9yOiAjZjdmN2Y3O1xuICBmb250LXNpemU6IDgwJTtcbiAgcGFkZGluZzogMC43NXJlbTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAxMDtcbiAgdG9wOiBjYWxjKDEwMCUgKyAwLjY0OTVyZW0pO1xuICBtYXgtd2lkdGg6IDEwcmVtICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1yYWRpdXM6IDA7IH1cbiAgLnRvb2x0aXA6OmJlZm9yZSB7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJvcmRlcjogaW5zZXQgMC43NXJlbTtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICMwYTBhMGE7XG4gICAgYm9yZGVyLWJvdHRvbS1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLXRvcC13aWR0aDogMDtcbiAgICBib3R0b206IDEwMCU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7IH1cbiAgLnRvb2x0aXAudG9wOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXI6IGluc2V0IDAuNzVyZW07XG4gICAgYm9yZGVyLWNvbG9yOiAjMGEwYTBhIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci10b3Atc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gICAgdG9wOiAxMDAlO1xuICAgIGJvdHRvbTogYXV0bzsgfVxuICAudG9vbHRpcC5sZWZ0OjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXI6IGluc2V0IDAuNzVyZW07XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAjMGEwYTBhO1xuICAgIGJvcmRlci1sZWZ0LXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItcmlnaHQtd2lkdGg6IDA7XG4gICAgYm90dG9tOiBhdXRvO1xuICAgIGxlZnQ6IDEwMCU7XG4gICAgdG9wOiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpOyB9XG4gIC50b29sdGlwLnJpZ2h0OjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXI6IGluc2V0IDAuNzVyZW07XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCAjMGEwYTBhIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1yaWdodC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7XG4gICAgYm90dG9tOiBhdXRvO1xuICAgIGxlZnQ6IGF1dG87XG4gICAgcmlnaHQ6IDEwMCU7XG4gICAgdG9wOiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpOyB9XG5cbi50b3AtYmFyIHtcbiAgcGFkZGluZzogMC41cmVtOyB9XG4gIC50b3AtYmFyOjpiZWZvcmUsIC50b3AtYmFyOjphZnRlciB7XG4gICAgY29udGVudDogJyAnO1xuICAgIGRpc3BsYXk6IHRhYmxlOyB9XG4gIC50b3AtYmFyOjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgLnRvcC1iYXIsXG4gIC50b3AtYmFyIHVsIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGEwYTBhOyB9XG4gIC50b3AtYmFyIGlucHV0IHtcbiAgICBtYXgtd2lkdGg6IDIwMHB4O1xuICAgIG1hcmdpbi1yaWdodDogMXJlbTsgfVxuICAudG9wLWJhciAuaW5wdXQtZ3JvdXAtZmllbGQge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi1yaWdodDogMDsgfVxuICAudG9wLWJhciBpbnB1dC5idXR0b24ge1xuICAgIHdpZHRoOiBhdXRvOyB9XG4gIC50b3AtYmFyIC50b3AtYmFyLWxlZnQsXG4gIC50b3AtYmFyIC50b3AtYmFyLXJpZ2h0IHtcbiAgICB3aWR0aDogMTAwJTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLnRvcC1iYXIgLnRvcC1iYXItbGVmdCxcbiAgICAudG9wLWJhciAudG9wLWJhci1yaWdodCB7XG4gICAgICB3aWR0aDogYXV0bzsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAgIC50b3AtYmFyLnN0YWNrZWQtZm9yLW1lZGl1bSAudG9wLWJhci1sZWZ0LFxuICAgIC50b3AtYmFyLnN0YWNrZWQtZm9yLW1lZGl1bSAudG9wLWJhci1yaWdodCB7XG4gICAgICB3aWR0aDogMTAwJTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc0LjkzNzVlbSkge1xuICAgIC50b3AtYmFyLnN0YWNrZWQtZm9yLWxhcmdlIC50b3AtYmFyLWxlZnQsXG4gICAgLnRvcC1iYXIuc3RhY2tlZC1mb3ItbGFyZ2UgLnRvcC1iYXItcmlnaHQge1xuICAgICAgd2lkdGg6IDEwMCU7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4OS45Mzc1ZW0pIHtcbiAgICAudG9wLWJhci5zdGFja2VkLWZvci14bGFyZ2UgLnRvcC1iYXItbGVmdCxcbiAgICAudG9wLWJhci5zdGFja2VkLWZvci14bGFyZ2UgLnRvcC1iYXItcmlnaHQge1xuICAgICAgd2lkdGg6IDEwMCU7IH0gfVxuICAudG9wLWJhci5zdGFja2VkLWZvci14eGxhcmdlIC50b3AtYmFyLWxlZnQsXG4gIC50b3AtYmFyLnN0YWNrZWQtZm9yLXh4bGFyZ2UgLnRvcC1iYXItcmlnaHQge1xuICAgIHdpZHRoOiAxMDAlOyB9XG5cbi50b3AtYmFyLXRpdGxlIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIG1hcmdpbi1yaWdodDogMXJlbTsgfVxuXG4udG9wLWJhci1sZWZ0IHtcbiAgZmxvYXQ6IGxlZnQ7IH1cblxuLnRvcC1iYXItcmlnaHQge1xuICBmbG9hdDogcmlnaHQ7IH1cblxuLnNsaWRlLWluLWRvd24ubXVpLWVudGVyIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDAlKTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47IH1cblxuLnNsaWRlLWluLWRvd24ubXVpLWVudGVyLm11aS1lbnRlci1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7IH1cblxuLnNsaWRlLWluLWxlZnQubXVpLWVudGVyIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47IH1cblxuLnNsaWRlLWluLWxlZnQubXVpLWVudGVyLm11aS1lbnRlci1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7IH1cblxuLnNsaWRlLWluLXVwLm11aS1lbnRlciB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMDAlKTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47IH1cblxuLnNsaWRlLWluLXVwLm11aS1lbnRlci5tdWktZW50ZXItYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApOyB9XG5cbi5zbGlkZS1pbi1yaWdodC5tdWktZW50ZXIge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSk7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOyB9XG5cbi5zbGlkZS1pbi1yaWdodC5tdWktZW50ZXIubXVpLWVudGVyLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTsgfVxuXG4uc2xpZGUtb3V0LWRvd24ubXVpLWxlYXZlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsgfVxuXG4uc2xpZGUtb3V0LWRvd24ubXVpLWxlYXZlLm11aS1sZWF2ZS1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTAwJSk7IH1cblxuLnNsaWRlLW91dC1yaWdodC5tdWktbGVhdmUge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOyB9XG5cbi5zbGlkZS1vdXQtcmlnaHQubXVpLWxlYXZlLm11aS1sZWF2ZS1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSk7IH1cblxuLnNsaWRlLW91dC11cC5tdWktbGVhdmUge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOyB9XG5cbi5zbGlkZS1vdXQtdXAubXVpLWxlYXZlLm11aS1sZWF2ZS1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMCUpOyB9XG5cbi5zbGlkZS1vdXQtbGVmdC5tdWktbGVhdmUge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOyB9XG5cbi5zbGlkZS1vdXQtbGVmdC5tdWktbGVhdmUubXVpLWxlYXZlLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSk7IH1cblxuLmZhZGUtaW4ubXVpLWVudGVyIHtcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eTsgfVxuXG4uZmFkZS1pbi5tdWktZW50ZXIubXVpLWVudGVyLWFjdGl2ZSB7XG4gIG9wYWNpdHk6IDE7IH1cblxuLmZhZGUtb3V0Lm11aS1sZWF2ZSB7XG4gIG9wYWNpdHk6IDE7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IG9wYWNpdHk7IH1cblxuLmZhZGUtb3V0Lm11aS1sZWF2ZS5tdWktbGVhdmUtYWN0aXZlIHtcbiAgb3BhY2l0eTogMDsgfVxuXG4uaGluZ2UtaW4tZnJvbS10b3AubXVpLWVudGVyIHtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVgoLTkwZGVnKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogdG9wO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDA7IH1cblxuLmhpbmdlLWluLWZyb20tdG9wLm11aS1lbnRlci5tdWktZW50ZXItYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZSgwZGVnKTtcbiAgb3BhY2l0eTogMTsgfVxuXG4uaGluZ2UtaW4tZnJvbS1yaWdodC5tdWktZW50ZXIge1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlWSgtOTBkZWcpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiByaWdodDtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAwOyB9XG5cbi5oaW5nZS1pbi1mcm9tLXJpZ2h0Lm11aS1lbnRlci5tdWktZW50ZXItYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZSgwZGVnKTtcbiAgb3BhY2l0eTogMTsgfVxuXG4uaGluZ2UtaW4tZnJvbS1ib3R0b20ubXVpLWVudGVyIHtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVgoOTBkZWcpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBib3R0b207XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMDsgfVxuXG4uaGluZ2UtaW4tZnJvbS1ib3R0b20ubXVpLWVudGVyLm11aS1lbnRlci1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlKDBkZWcpO1xuICBvcGFjaXR5OiAxOyB9XG5cbi5oaW5nZS1pbi1mcm9tLWxlZnQubXVpLWVudGVyIHtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVkoOTBkZWcpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0O1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDA7IH1cblxuLmhpbmdlLWluLWZyb20tbGVmdC5tdWktZW50ZXIubXVpLWVudGVyLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGUoMGRlZyk7XG4gIG9wYWNpdHk6IDE7IH1cblxuLmhpbmdlLWluLWZyb20tbWlkZGxlLXgubXVpLWVudGVyIHtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVgoLTkwZGVnKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDA7IH1cblxuLmhpbmdlLWluLWZyb20tbWlkZGxlLXgubXVpLWVudGVyLm11aS1lbnRlci1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlKDBkZWcpO1xuICBvcGFjaXR5OiAxOyB9XG5cbi5oaW5nZS1pbi1mcm9tLW1pZGRsZS15Lm11aS1lbnRlciB7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGVZKC05MGRlZyk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAwOyB9XG5cbi5oaW5nZS1pbi1mcm9tLW1pZGRsZS15Lm11aS1lbnRlci5tdWktZW50ZXItYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZSgwZGVnKTtcbiAgb3BhY2l0eTogMTsgfVxuXG4uaGluZ2Utb3V0LWZyb20tdG9wLm11aS1sZWF2ZSB7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGUoMGRlZyk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IHRvcDtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAxOyB9XG5cbi5oaW5nZS1vdXQtZnJvbS10b3AubXVpLWxlYXZlLm11aS1sZWF2ZS1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlWCgtOTBkZWcpO1xuICBvcGFjaXR5OiAwOyB9XG5cbi5oaW5nZS1vdXQtZnJvbS1yaWdodC5tdWktbGVhdmUge1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlKDBkZWcpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiByaWdodDtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAxOyB9XG5cbi5oaW5nZS1vdXQtZnJvbS1yaWdodC5tdWktbGVhdmUubXVpLWxlYXZlLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGVZKC05MGRlZyk7XG4gIG9wYWNpdHk6IDA7IH1cblxuLmhpbmdlLW91dC1mcm9tLWJvdHRvbS5tdWktbGVhdmUge1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlKDBkZWcpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBib3R0b207XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMTsgfVxuXG4uaGluZ2Utb3V0LWZyb20tYm90dG9tLm11aS1sZWF2ZS5tdWktbGVhdmUtYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVgoOTBkZWcpO1xuICBvcGFjaXR5OiAwOyB9XG5cbi5oaW5nZS1vdXQtZnJvbS1sZWZ0Lm11aS1sZWF2ZSB7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGUoMGRlZyk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQ7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMTsgfVxuXG4uaGluZ2Utb3V0LWZyb20tbGVmdC5tdWktbGVhdmUubXVpLWxlYXZlLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGVZKDkwZGVnKTtcbiAgb3BhY2l0eTogMDsgfVxuXG4uaGluZ2Utb3V0LWZyb20tbWlkZGxlLXgubXVpLWxlYXZlIHtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZSgwZGVnKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDE7IH1cblxuLmhpbmdlLW91dC1mcm9tLW1pZGRsZS14Lm11aS1sZWF2ZS5tdWktbGVhdmUtYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVgoLTkwZGVnKTtcbiAgb3BhY2l0eTogMDsgfVxuXG4uaGluZ2Utb3V0LWZyb20tbWlkZGxlLXkubXVpLWxlYXZlIHtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZSgwZGVnKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDE7IH1cblxuLmhpbmdlLW91dC1mcm9tLW1pZGRsZS15Lm11aS1sZWF2ZS5tdWktbGVhdmUtYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVkoLTkwZGVnKTtcbiAgb3BhY2l0eTogMDsgfVxuXG4uc2NhbGUtaW4tdXAubXVpLWVudGVyIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwLjUpO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDA7IH1cblxuLnNjYWxlLWluLXVwLm11aS1lbnRlci5tdWktZW50ZXItYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgb3BhY2l0eTogMTsgfVxuXG4uc2NhbGUtaW4tZG93bi5tdWktZW50ZXIge1xuICB0cmFuc2Zvcm06IHNjYWxlKDEuNSk7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMDsgfVxuXG4uc2NhbGUtaW4tZG93bi5tdWktZW50ZXIubXVpLWVudGVyLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIG9wYWNpdHk6IDE7IH1cblxuLnNjYWxlLW91dC11cC5tdWktbGVhdmUge1xuICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDE7IH1cblxuLnNjYWxlLW91dC11cC5tdWktbGVhdmUubXVpLWxlYXZlLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMS41KTtcbiAgb3BhY2l0eTogMDsgfVxuXG4uc2NhbGUtb3V0LWRvd24ubXVpLWxlYXZlIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAxOyB9XG5cbi5zY2FsZS1vdXQtZG93bi5tdWktbGVhdmUubXVpLWxlYXZlLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMC41KTtcbiAgb3BhY2l0eTogMDsgfVxuXG4uc3Bpbi1pbi5tdWktZW50ZXIge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgtMC43NXR1cm4pO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDA7IH1cblxuLnNwaW4taW4ubXVpLWVudGVyLm11aS1lbnRlci1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgwKTtcbiAgb3BhY2l0eTogMTsgfVxuXG4uc3Bpbi1vdXQubXVpLWxlYXZlIHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMCk7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMTsgfVxuXG4uc3Bpbi1vdXQubXVpLWxlYXZlLm11aS1sZWF2ZS1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgwLjc1dHVybik7XG4gIG9wYWNpdHk6IDA7IH1cblxuLnNwaW4taW4tY2N3Lm11aS1lbnRlciB7XG4gIHRyYW5zZm9ybTogcm90YXRlKDAuNzV0dXJuKTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAwOyB9XG5cbi5zcGluLWluLWNjdy5tdWktZW50ZXIubXVpLWVudGVyLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogcm90YXRlKDApO1xuICBvcGFjaXR5OiAxOyB9XG5cbi5zcGluLW91dC1jY3cubXVpLWxlYXZlIHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMCk7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMTsgfVxuXG4uc3Bpbi1vdXQtY2N3Lm11aS1sZWF2ZS5tdWktbGVhdmUtYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoLTAuNzV0dXJuKTtcbiAgb3BhY2l0eTogMDsgfVxuXG4uc2xvdyB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDc1MG1zICFpbXBvcnRhbnQ7IH1cblxuLmZhc3Qge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAyNTBtcyAhaW1wb3J0YW50OyB9XG5cbi5saW5lYXIge1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyICFpbXBvcnRhbnQ7IH1cblxuLmVhc2Uge1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZSAhaW1wb3J0YW50OyB9XG5cbi5lYXNlLWluIHtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4gIWltcG9ydGFudDsgfVxuXG4uZWFzZS1vdXQge1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQgIWltcG9ydGFudDsgfVxuXG4uZWFzZS1pbi1vdXQge1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQgIWltcG9ydGFudDsgfVxuXG4uYm91bmNlLWluIHtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjQ4NSwgMC4xNTUsIDAuMjQsIDEuMjQ1KSAhaW1wb3J0YW50OyB9XG5cbi5ib3VuY2Utb3V0IHtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjQ4NSwgMC4xNTUsIDAuNTE1LCAwLjg0NSkgIWltcG9ydGFudDsgfVxuXG4uYm91bmNlLWluLW91dCB7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC43NiwgLTAuMjQ1LCAwLjI0LCAxLjI0NSkgIWltcG9ydGFudDsgfVxuXG4uc2hvcnQtZGVsYXkge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAzMDBtcyAhaW1wb3J0YW50OyB9XG5cbi5sb25nLWRlbGF5IHtcbiAgdHJhbnNpdGlvbi1kZWxheTogNzAwbXMgIWltcG9ydGFudDsgfVxuXG4uc2hha2Uge1xuICBhbmltYXRpb24tbmFtZTogc2hha2UtNzsgfVxuXG5Aa2V5ZnJhbWVzIHNoYWtlLTcge1xuICAwJSwgMTAlLCAyMCUsIDMwJSwgNDAlLCA1MCUsIDYwJSwgNzAlLCA4MCUsIDkwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDclKTsgfVxuICA1JSwgMTUlLCAyNSUsIDM1JSwgNDUlLCA1NSUsIDY1JSwgNzUlLCA4NSUsIDk1JSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC03JSk7IH0gfVxuXG4uc3Bpbi1jdyB7XG4gIGFuaW1hdGlvbi1uYW1lOiBzcGluLWN3LTF0dXJuOyB9XG5cbkBrZXlmcmFtZXMgc3Bpbi1jdy0xdHVybiB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtMXR1cm4pOyB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDApOyB9IH1cblxuLnNwaW4tY2N3IHtcbiAgYW5pbWF0aW9uLW5hbWU6IHNwaW4tY3ctMXR1cm47IH1cblxuQGtleWZyYW1lcyBzcGluLWN3LTF0dXJuIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDApOyB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDF0dXJuKTsgfSB9XG5cbi53aWdnbGUge1xuICBhbmltYXRpb24tbmFtZTogd2lnZ2xlLTdkZWc7IH1cblxuQGtleWZyYW1lcyB3aWdnbGUtN2RlZyB7XG4gIDQwJSwgNTAlLCA2MCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDdkZWcpOyB9XG4gIDM1JSwgNDUlLCA1NSUsIDY1JSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoLTdkZWcpOyB9XG4gIDAlLCAzMCUsIDcwJSwgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMCk7IH0gfVxuXG4uaW5maW5pdGUge1xuICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiBpbmZpbml0ZTsgfVxuXG4uc2xvdyB7XG4gIGFuaW1hdGlvbi1kdXJhdGlvbjogNzUwbXMgIWltcG9ydGFudDsgfVxuXG4uZmFzdCB7XG4gIGFuaW1hdGlvbi1kdXJhdGlvbjogMjUwbXMgIWltcG9ydGFudDsgfVxuXG4ubGluZWFyIHtcbiAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyICFpbXBvcnRhbnQ7IH1cblxuLmVhc2Uge1xuICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlICFpbXBvcnRhbnQ7IH1cblxuLmVhc2UtaW4ge1xuICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluICFpbXBvcnRhbnQ7IH1cblxuLmVhc2Utb3V0IHtcbiAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQgIWltcG9ydGFudDsgfVxuXG4uZWFzZS1pbi1vdXQge1xuICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluLW91dCAhaW1wb3J0YW50OyB9XG5cbi5ib3VuY2UtaW4ge1xuICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC40ODUsIDAuMTU1LCAwLjI0LCAxLjI0NSkgIWltcG9ydGFudDsgfVxuXG4uYm91bmNlLW91dCB7XG4gIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjQ4NSwgMC4xNTUsIDAuNTE1LCAwLjg0NSkgIWltcG9ydGFudDsgfVxuXG4uYm91bmNlLWluLW91dCB7XG4gIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjc2LCAtMC4yNDUsIDAuMjQsIDEuMjQ1KSAhaW1wb3J0YW50OyB9XG5cbi5zaG9ydC1kZWxheSB7XG4gIGFuaW1hdGlvbi1kZWxheTogMzAwbXMgIWltcG9ydGFudDsgfVxuXG4ubG9uZy1kZWxheSB7XG4gIGFuaW1hdGlvbi1kZWxheTogNzAwbXMgIWltcG9ydGFudDsgfVxuXG4vKlxuICogQWRkIHNvbWUgcnVsZXMgdG8gbXVsdGlwbHkgYSBzaXplICh1c2luZyBFTSksIGRlZmF1bHQgaXNcbiAqIGZvciAnZm9udC1zaXplJyBwcm9wZXJ0eVxuICpcbiAqIFVzaW5nOlxuICpcbiAqICAgICAuZm9ve1xuICogICAgICAgICBAaW5jbHVkZSBmb250LW11bHRpcGxpZXIoMiA0IDYpO1xuICogICAgIH1cbiAqXG4gKiBXaWxsIHByb2R1Y2Ugc29tZXRoaW5nIGxpa2U6XG4gKlxuICogICAgLmZvby4yeHsgZm9udC1zaXplOiAyZW0gfVxuICogICAgLmZvby40eHsgZm9udC1zaXplOiA0ZW0gfVxuICogICAgLmZvby40eHsgZm9udC1zaXplOiA2ZW0gfVxuICpcbiAqIFVzaW5nIGFsbCBvcHRpb25hbCBhcmd1bWVudHM6XG4gKlxuICogICAgIC5mb297XG4gKiAgICAgICAgIEBpbmNsdWRlIGZvbnQtbXVsdGlwbGllcigyIDQgNiwgJHNlbGVjdG9yLXByZWZpeDogXCJpY29uXCIsICRzZWxlY3Rvci1wc2V1ZG86IFwiYmVmb3JlXCIsICRwcm9wZXJ0eTogXCJwYWRkaW5nLWxlZnRcIik7XG4gKiAgICAgfVxuICpcbiAqIFdpbGwgcHJvZHVjZSBzb21ldGhpbmcgbGlrZTpcbiAqXG4gKiAgICAuZm9vLmljb24tMng6OmJlZm9yZXsgcGFkZGluZy1sZWZ0OiAyZW0gfVxuICogICAgLmZvby5pY29uLTR4OjpiZWZvcmV7IHBhZGRpbmctbGVmdDogNGVtIH1cbiAqICAgIC5mb28uaWNvbi00eDo6YmVmb3JleyBwYWRkaW5nLWxlZnQ6IDZlbSB9XG4gKlxuICovXG4vKlxuICogTWl4aW4gdG8gYWRkIGZvbnQgYW5kIGJhY2tncm91bmQgY29sb3JzIGludG8gYSBjb250YWluZXIgYW5kIGVuZm9yY2UgdGhlc2VcbiAqIGNvbG9ycyBvbiBpdHMgZWxlbWVudHNcbiAqL1xuLypcbiAqIFZlbmRvciBwcmVmaXggZm9yIGxhc3QgYnJlYWstaW5zaWRlIHN5bnRheCAobm90IHN1cHBvcnRlZCBpbiBDb21wYXNzIDAueClcbiAqL1xuLypcbiAqIENyZWF0ZSBmbGV4IGNlbGwgd2lkdGggcnVsZXNcbiAqL1xuLypcbiAqIE1peGluIHRvIGNyZWF0ZSBjZWxscyB3aWR0aHMgd2l0aCBmbGV4Ym94XG4gKlxuICogV2lsbCBwcm9kdWNlIHJlc3BvbnNpdmUgY2xhc3MgbGlrZTpcbiAqXG4gKiAgIC5zbWFsbC01MHsuLi59XG4gKiAgIC5tZWRpdW0tNTB7Li4ufVxuICogICBldGMuLlxuICpcbiAqIERlcGVuZGluZyBvbiBtaXhpbiBkZWNsYXJhdGlvbnMuXG4gKlxuICogVXNhYmxlIGluIGNvbmp1bmN0aW9uIHdpdGggXCIuY2VsbFwiLlxuICovXG4vKlxuICogTWl4aW4gdG8gY3JlYXRlIGZsZXhib3ggZGlzcGxheSBjbGFzc2VzXG4gKlxuICogV2lsbCBwcm9kdWNlIGdsb2JhbCBhbmQgcmVzcG9uc2l2ZSBjbGFzc2VzIGxpa2U6XG4gKlxuICogICAuZmxleHsuLi59XG4gKiAgIC5mbGV4LXNtYWxsey4uLn1cbiAqICAgLmZsZXgtbWVkaXVtey4uLn1cbiAqICAgZXRjLi5cbiAqXG4gKi9cbi8qXG4gKiBNaXhpbiB0byBjcmVhdGUgXCJzaW1wbGVcIiBjZWxscyB3aWR0aHNcbiAqIE1peGluIHRvIHNpbXVsYXRlIGlubGluZSBsaXN0LCB1c2VkIGFzIGEgZmFsbGJhY2tcbiAqXG4gKiBSZXByb2R1Y2UgdGhlIHNhbWUgbmFtZSBwYXR0ZXJuIGFzIGluIG1peGluIFwiLWVtZW5jaWEtZmxleC1ncmlkLWNsYXNzZXNcIlxuICovXG4vKlxuICogSW5saW5lIGxpc3Qgd2l0aCBmbGV4Ym94XG4gKi9cbmh0bWwgLmZsZXgge1xuICBkaXNwbGF5OiBmbGV4OyB9XG5cbkBtZWRpYSBzY3JlZW4ge1xuICBodG1sIC5mbGV4LXNtYWxsIHtcbiAgICBkaXNwbGF5OiBmbGV4OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICBodG1sIC5mbGV4LW1lZGl1bSB7XG4gICAgZGlzcGxheTogZmxleDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgaHRtbCAuZmxleC1sYXJnZSB7XG4gICAgZGlzcGxheTogZmxleDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgaHRtbCAuZmxleC14bGFyZ2Uge1xuICAgIGRpc3BsYXk6IGZsZXg7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gIGh0bWwgLmZsZXgteHhsYXJnZSB7XG4gICAgZGlzcGxheTogZmxleDsgfSB9XG5cbmh0bWwgLmZsZXgtZ3JpZCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIC8qXG4gICAgICogUmVzcG9uc2l2ZSBjZWxsIHNpemVzXG4gICAgICovXG4gIC8qXG4gICAgICogUmVzcG9uc2l2ZSBwYWRkaW5nIGluIGFsbCBjb250YWluZWQgY2VsbHNcbiAgICAgKi9cbiAgLypcbiAgICAgKiBSZXNwb25zaXZlIG1hcmdpbiBvbiBhbGwgY29udGFpbmVkIGNlbGxzXG4gICAgICovIH1cbiAgaHRtbCAuZmxleC1ncmlkID4gLmNlbGwge1xuICAgIGZsZXg6IDEgMCBhdXRvO1xuICAgIG1heC13aWR0aDogYXV0bztcbiAgICBtYXJnaW46IDA7XG4gICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICAgIC8qXG4gICAgICAgKiBTb21lIGNlbGwgY29udGVudHMgYWxpZ25tZW50c1xuICAgICAgICovIH1cbiAgICBodG1sIC5mbGV4LWdyaWQgPiAuY2VsbCA+IHA6bGFzdC1jaGlsZCB7XG4gICAgICBtYXJnaW46IDA7IH1cbiAgICBodG1sIC5mbGV4LWdyaWQgPiAuY2VsbC5mbGV4LXZlcnRpY2FsLXN0YXJ0LXN0YWNrIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0OyB9XG4gICAgaHRtbCAuZmxleC1ncmlkID4gLmNlbGwuZmxleC12ZXJ0aWNhbC1lbmQtc3RhY2sge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW47IH1cbiAgICBodG1sIC5mbGV4LWdyaWQgPiAuY2VsbC5mbGV4LXZlcnRpY2FsLWNlbnRlci1zdGFjayB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XG4gICAgaHRtbCAuZmxleC1ncmlkID4gLmNlbGwuZmxleC1zcGFjZS1hcm91bmQtc3RhY2sge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZDsgfVxuICAgIGh0bWwgLmZsZXgtZ3JpZCA+IC5jZWxsLmZsZXgtc3BhY2UtYmV0d2Vlbi1zdGFjayB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgfVxuICBAbWVkaWEgc2NyZWVuIHtcbiAgICBodG1sIC5mbGV4LWdyaWQgPiAuc21hbGwtMjMge1xuICAgICAgZmxleDogMSAwIDIzJTtcbiAgICAgIG1heC13aWR0aDogMjMlOyB9XG4gICAgaHRtbCAuZmxleC1ncmlkID4gLnNtYWxsLTI1IHtcbiAgICAgIGZsZXg6IDEgMCAyNSU7XG4gICAgICBtYXgtd2lkdGg6IDI1JTsgfVxuICAgIGh0bWwgLmZsZXgtZ3JpZCA+IC5zbWFsbC0zMSB7XG4gICAgICBmbGV4OiAxIDAgMzEuMzMzMyU7XG4gICAgICBtYXgtd2lkdGg6IDMxLjMzMzMlOyB9XG4gICAgaHRtbCAuZmxleC1ncmlkID4gLnNtYWxsLTMzIHtcbiAgICAgIGZsZXg6IDEgMCAzMy4zMzMzJTtcbiAgICAgIG1heC13aWR0aDogMzMuMzMzMyU7IH1cbiAgICBodG1sIC5mbGV4LWdyaWQgPiAuc21hbGwtNDgge1xuICAgICAgZmxleDogMSAwIDQ4JTtcbiAgICAgIG1heC13aWR0aDogNDglOyB9XG4gICAgaHRtbCAuZmxleC1ncmlkID4gLnNtYWxsLTUwIHtcbiAgICAgIGZsZXg6IDEgMCA1MCU7XG4gICAgICBtYXgtd2lkdGg6IDUwJTsgfVxuICAgIGh0bWwgLmZsZXgtZ3JpZCA+IC5zbWFsbC03MyB7XG4gICAgICBmbGV4OiAxIDAgNzMlO1xuICAgICAgbWF4LXdpZHRoOiA3MyU7IH1cbiAgICBodG1sIC5mbGV4LWdyaWQgPiAuc21hbGwtNzUge1xuICAgICAgZmxleDogMSAwIDc1JTtcbiAgICAgIG1heC13aWR0aDogNzUlOyB9XG4gICAgaHRtbCAuZmxleC1ncmlkID4gLnNtYWxsLTk4IHtcbiAgICAgIGZsZXg6IDEgMCA5OCU7XG4gICAgICBtYXgtd2lkdGg6IDk4JTsgfVxuICAgIGh0bWwgLmZsZXgtZ3JpZCA+IC5zbWFsbC0xMDAge1xuICAgICAgZmxleDogMSAwIDEwMCU7XG4gICAgICBtYXgtd2lkdGg6IDEwMCU7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgaHRtbCAuZmxleC1ncmlkID4gLm1lZGl1bS0yMyB7XG4gICAgICBmbGV4OiAxIDAgMjMlO1xuICAgICAgbWF4LXdpZHRoOiAyMyU7IH1cbiAgICBodG1sIC5mbGV4LWdyaWQgPiAubWVkaXVtLTI1IHtcbiAgICAgIGZsZXg6IDEgMCAyNSU7XG4gICAgICBtYXgtd2lkdGg6IDI1JTsgfVxuICAgIGh0bWwgLmZsZXgtZ3JpZCA+IC5tZWRpdW0tMzEge1xuICAgICAgZmxleDogMSAwIDMxLjMzMzMlO1xuICAgICAgbWF4LXdpZHRoOiAzMS4zMzMzJTsgfVxuICAgIGh0bWwgLmZsZXgtZ3JpZCA+IC5tZWRpdW0tMzMge1xuICAgICAgZmxleDogMSAwIDMzLjMzMzMlO1xuICAgICAgbWF4LXdpZHRoOiAzMy4zMzMzJTsgfVxuICAgIGh0bWwgLmZsZXgtZ3JpZCA+IC5tZWRpdW0tNDgge1xuICAgICAgZmxleDogMSAwIDQ4JTtcbiAgICAgIG1heC13aWR0aDogNDglOyB9XG4gICAgaHRtbCAuZmxleC1ncmlkID4gLm1lZGl1bS01MCB7XG4gICAgICBmbGV4OiAxIDAgNTAlO1xuICAgICAgbWF4LXdpZHRoOiA1MCU7IH1cbiAgICBodG1sIC5mbGV4LWdyaWQgPiAubWVkaXVtLTczIHtcbiAgICAgIGZsZXg6IDEgMCA3MyU7XG4gICAgICBtYXgtd2lkdGg6IDczJTsgfVxuICAgIGh0bWwgLmZsZXgtZ3JpZCA+IC5tZWRpdW0tNzUge1xuICAgICAgZmxleDogMSAwIDc1JTtcbiAgICAgIG1heC13aWR0aDogNzUlOyB9XG4gICAgaHRtbCAuZmxleC1ncmlkID4gLm1lZGl1bS05OCB7XG4gICAgICBmbGV4OiAxIDAgOTglO1xuICAgICAgbWF4LXdpZHRoOiA5OCU7IH1cbiAgICBodG1sIC5mbGV4LWdyaWQgPiAubWVkaXVtLTEwMCB7XG4gICAgICBmbGV4OiAxIDAgMTAwJTtcbiAgICAgIG1heC13aWR0aDogMTAwJTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICBodG1sIC5mbGV4LWdyaWQgPiAubGFyZ2UtMjMge1xuICAgICAgZmxleDogMSAwIDIzJTtcbiAgICAgIG1heC13aWR0aDogMjMlOyB9XG4gICAgaHRtbCAuZmxleC1ncmlkID4gLmxhcmdlLTI1IHtcbiAgICAgIGZsZXg6IDEgMCAyNSU7XG4gICAgICBtYXgtd2lkdGg6IDI1JTsgfVxuICAgIGh0bWwgLmZsZXgtZ3JpZCA+IC5sYXJnZS0zMSB7XG4gICAgICBmbGV4OiAxIDAgMzEuMzMzMyU7XG4gICAgICBtYXgtd2lkdGg6IDMxLjMzMzMlOyB9XG4gICAgaHRtbCAuZmxleC1ncmlkID4gLmxhcmdlLTMzIHtcbiAgICAgIGZsZXg6IDEgMCAzMy4zMzMzJTtcbiAgICAgIG1heC13aWR0aDogMzMuMzMzMyU7IH1cbiAgICBodG1sIC5mbGV4LWdyaWQgPiAubGFyZ2UtNDgge1xuICAgICAgZmxleDogMSAwIDQ4JTtcbiAgICAgIG1heC13aWR0aDogNDglOyB9XG4gICAgaHRtbCAuZmxleC1ncmlkID4gLmxhcmdlLTUwIHtcbiAgICAgIGZsZXg6IDEgMCA1MCU7XG4gICAgICBtYXgtd2lkdGg6IDUwJTsgfVxuICAgIGh0bWwgLmZsZXgtZ3JpZCA+IC5sYXJnZS03MyB7XG4gICAgICBmbGV4OiAxIDAgNzMlO1xuICAgICAgbWF4LXdpZHRoOiA3MyU7IH1cbiAgICBodG1sIC5mbGV4LWdyaWQgPiAubGFyZ2UtNzUge1xuICAgICAgZmxleDogMSAwIDc1JTtcbiAgICAgIG1heC13aWR0aDogNzUlOyB9XG4gICAgaHRtbCAuZmxleC1ncmlkID4gLmxhcmdlLTk4IHtcbiAgICAgIGZsZXg6IDEgMCA5OCU7XG4gICAgICBtYXgtd2lkdGg6IDk4JTsgfVxuICAgIGh0bWwgLmZsZXgtZ3JpZCA+IC5sYXJnZS0xMDAge1xuICAgICAgZmxleDogMSAwIDEwMCU7XG4gICAgICBtYXgtd2lkdGg6IDEwMCU7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgaHRtbCAuZmxleC1ncmlkID4gLnhsYXJnZS0yMyB7XG4gICAgICBmbGV4OiAxIDAgMjMlO1xuICAgICAgbWF4LXdpZHRoOiAyMyU7IH1cbiAgICBodG1sIC5mbGV4LWdyaWQgPiAueGxhcmdlLTI1IHtcbiAgICAgIGZsZXg6IDEgMCAyNSU7XG4gICAgICBtYXgtd2lkdGg6IDI1JTsgfVxuICAgIGh0bWwgLmZsZXgtZ3JpZCA+IC54bGFyZ2UtMzEge1xuICAgICAgZmxleDogMSAwIDMxLjMzMzMlO1xuICAgICAgbWF4LXdpZHRoOiAzMS4zMzMzJTsgfVxuICAgIGh0bWwgLmZsZXgtZ3JpZCA+IC54bGFyZ2UtMzMge1xuICAgICAgZmxleDogMSAwIDMzLjMzMzMlO1xuICAgICAgbWF4LXdpZHRoOiAzMy4zMzMzJTsgfVxuICAgIGh0bWwgLmZsZXgtZ3JpZCA+IC54bGFyZ2UtNDgge1xuICAgICAgZmxleDogMSAwIDQ4JTtcbiAgICAgIG1heC13aWR0aDogNDglOyB9XG4gICAgaHRtbCAuZmxleC1ncmlkID4gLnhsYXJnZS01MCB7XG4gICAgICBmbGV4OiAxIDAgNTAlO1xuICAgICAgbWF4LXdpZHRoOiA1MCU7IH1cbiAgICBodG1sIC5mbGV4LWdyaWQgPiAueGxhcmdlLTczIHtcbiAgICAgIGZsZXg6IDEgMCA3MyU7XG4gICAgICBtYXgtd2lkdGg6IDczJTsgfVxuICAgIGh0bWwgLmZsZXgtZ3JpZCA+IC54bGFyZ2UtNzUge1xuICAgICAgZmxleDogMSAwIDc1JTtcbiAgICAgIG1heC13aWR0aDogNzUlOyB9XG4gICAgaHRtbCAuZmxleC1ncmlkID4gLnhsYXJnZS05OCB7XG4gICAgICBmbGV4OiAxIDAgOTglO1xuICAgICAgbWF4LXdpZHRoOiA5OCU7IH1cbiAgICBodG1sIC5mbGV4LWdyaWQgPiAueGxhcmdlLTEwMCB7XG4gICAgICBmbGV4OiAxIDAgMTAwJTtcbiAgICAgIG1heC13aWR0aDogMTAwJTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICBodG1sIC5mbGV4LWdyaWQgPiAueHhsYXJnZS0yMyB7XG4gICAgICBmbGV4OiAxIDAgMjMlO1xuICAgICAgbWF4LXdpZHRoOiAyMyU7IH1cbiAgICBodG1sIC5mbGV4LWdyaWQgPiAueHhsYXJnZS0yNSB7XG4gICAgICBmbGV4OiAxIDAgMjUlO1xuICAgICAgbWF4LXdpZHRoOiAyNSU7IH1cbiAgICBodG1sIC5mbGV4LWdyaWQgPiAueHhsYXJnZS0zMSB7XG4gICAgICBmbGV4OiAxIDAgMzEuMzMzMyU7XG4gICAgICBtYXgtd2lkdGg6IDMxLjMzMzMlOyB9XG4gICAgaHRtbCAuZmxleC1ncmlkID4gLnh4bGFyZ2UtMzMge1xuICAgICAgZmxleDogMSAwIDMzLjMzMzMlO1xuICAgICAgbWF4LXdpZHRoOiAzMy4zMzMzJTsgfVxuICAgIGh0bWwgLmZsZXgtZ3JpZCA+IC54eGxhcmdlLTQ4IHtcbiAgICAgIGZsZXg6IDEgMCA0OCU7XG4gICAgICBtYXgtd2lkdGg6IDQ4JTsgfVxuICAgIGh0bWwgLmZsZXgtZ3JpZCA+IC54eGxhcmdlLTUwIHtcbiAgICAgIGZsZXg6IDEgMCA1MCU7XG4gICAgICBtYXgtd2lkdGg6IDUwJTsgfVxuICAgIGh0bWwgLmZsZXgtZ3JpZCA+IC54eGxhcmdlLTczIHtcbiAgICAgIGZsZXg6IDEgMCA3MyU7XG4gICAgICBtYXgtd2lkdGg6IDczJTsgfVxuICAgIGh0bWwgLmZsZXgtZ3JpZCA+IC54eGxhcmdlLTc1IHtcbiAgICAgIGZsZXg6IDEgMCA3NSU7XG4gICAgICBtYXgtd2lkdGg6IDc1JTsgfVxuICAgIGh0bWwgLmZsZXgtZ3JpZCA+IC54eGxhcmdlLTk4IHtcbiAgICAgIGZsZXg6IDEgMCA5OCU7XG4gICAgICBtYXgtd2lkdGg6IDk4JTsgfVxuICAgIGh0bWwgLmZsZXgtZ3JpZCA+IC54eGxhcmdlLTEwMCB7XG4gICAgICBmbGV4OiAxIDAgMTAwJTtcbiAgICAgIG1heC13aWR0aDogMTAwJTsgfSB9XG4gIGh0bWwgLmZsZXgtZ3JpZC5wYWRkZWQgLmNlbGwge1xuICAgIHBhZGRpbmc6IDAgMSU7IH1cbiAgQG1lZGlhIHNjcmVlbiB7XG4gICAgaHRtbCAuZmxleC1ncmlkLnNtYWxsLXBhZGRlZCAuY2VsbCB7XG4gICAgICBwYWRkaW5nOiAwIDElOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIGh0bWwgLmZsZXgtZ3JpZC5tZWRpdW0tcGFkZGVkIC5jZWxsIHtcbiAgICAgIHBhZGRpbmc6IDAgMSU7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgaHRtbCAuZmxleC1ncmlkLmxhcmdlLXBhZGRlZCAuY2VsbCB7XG4gICAgICBwYWRkaW5nOiAwIDElOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIGh0bWwgLmZsZXgtZ3JpZC54bGFyZ2UtcGFkZGVkIC5jZWxsIHtcbiAgICAgIHBhZGRpbmc6IDAgMSU7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgaHRtbCAuZmxleC1ncmlkLnh4bGFyZ2UtcGFkZGVkIC5jZWxsIHtcbiAgICAgIHBhZGRpbmc6IDAgMSU7IH0gfVxuICBodG1sIC5mbGV4LWdyaWQubWFyZ2VkIC5jZWxsIHtcbiAgICBtYXJnaW46IDAgMSU7IH1cbiAgQG1lZGlhIHNjcmVlbiB7XG4gICAgaHRtbCAuZmxleC1ncmlkLnNtYWxsLW1hcmdlZCAuY2VsbCB7XG4gICAgICBtYXJnaW46IDAgMSU7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgaHRtbCAuZmxleC1ncmlkLm1lZGl1bS1tYXJnZWQgLmNlbGwge1xuICAgICAgbWFyZ2luOiAwIDElOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIGh0bWwgLmZsZXgtZ3JpZC5sYXJnZS1tYXJnZWQgLmNlbGwge1xuICAgICAgbWFyZ2luOiAwIDElOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIGh0bWwgLmZsZXgtZ3JpZC54bGFyZ2UtbWFyZ2VkIC5jZWxsIHtcbiAgICAgIG1hcmdpbjogMCAxJTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICBodG1sIC5mbGV4LWdyaWQueHhsYXJnZS1tYXJnZWQgLmNlbGwge1xuICAgICAgbWFyZ2luOiAwIDElOyB9IH1cblxuLypcbiAqIFZhcmlvdXMgc3R1ZmYgdGhhdCBkb24ndCBmaXQgZWxzZXdoZXJlXG4gKi9cbi8qXG4gKiBTb21lIHN0eWxpbmcgZm9yIHRoaXMgSlMgY29tcG9uZW50IHN0dWZmIChyZWFkIG1vcmUgb24gJ2pzL2pxdWVyeS9hZGRvbnMuanMnKVxuICovXG4jd2F0Y2gtZm9yLWN1cnJlbnQtbXF1ZXJ5IHtcbiAgcGFkZGluZzogMC4wcmVtIDAuNXJlbTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDEwcHg7XG4gIHJpZ2h0OiAzNXB4O1xuICBmb250LXNpemU6IDE0cHg7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBsaW5lLWhlaWdodDogMS40O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGJvcmRlcjogMnB4IHNvbGlkICNkZDMzMzM7XG4gIHotaW5kZXg6IDkwMDA7IH1cbiAgI3dhdGNoLWZvci1jdXJyZW50LW1xdWVyeSBzbWFsbCB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cblxuLnJlbGF0aXZlLXBvc2l0aW9uIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG5cbi51bm1hcmdlZCB7XG4gIG1hcmdpbjogMCAhaW1wb3J0YW50OyB9XG5cbi51bnBhZCB7XG4gIHBhZGRpbmc6IDAgIWltcG9ydGFudDsgfVxuXG4ubWluaW1pemUge1xuICB0ZXh0LXRyYW5zZm9ybTogaW5oZXJpdDsgfVxuICAubWluaW1pemU6Zmlyc3QtbGV0dGVyIHtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyB9XG5cbi5kaXZpZGVyOm5vdChsaSkge1xuICBtYXJnaW4tYm90dG9tOiAycmVtICFpbXBvcnRhbnQ7IH1cbiAgLmRpdmlkZXI6bm90KGxpKS50aW55LWRpdmlkZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbSAhaW1wb3J0YW50OyB9XG4gIC5kaXZpZGVyOm5vdChsaSkuYmlnLWRpdmlkZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogM3JlbSAhaW1wb3J0YW50OyB9XG5cbi8qIFZlcnRpY2FsIHNwYWNlcyAqL1xuLnZlcnRtYXJnZSB7XG4gIG1hcmdpbi10b3A6IDFyZW07XG4gIG1hcmdpbi10b3A6IDFyZW07IH1cblxuLnZlcnRzcGFjZSB7XG4gIHBhZGRpbmctYm90dG9tOiAxcmVtO1xuICBwYWRkaW5nLXRvcDogMXJlbTsgfVxuXG4udmVydHNwYWNlWDIge1xuICBwYWRkaW5nLWJvdHRvbTogMnJlbTtcbiAgcGFkZGluZy10b3A6IDJyZW07IH1cblxuLnZlcnRzcGFjZVRvcFgyIHtcbiAgcGFkZGluZy10b3A6IDJyZW07IH1cblxuLnZlcnRzcGFjZVgzIHtcbiAgcGFkZGluZy1ib3R0b206IDNyZW07XG4gIHBhZGRpbmctdG9wOiAzcmVtOyB9XG5cbi5zaXplWDIge1xuICBmb250LXNpemU6IDJyZW07XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIGxpbmUtaGVpZ2h0OiAyLjRyZW07IH1cbiAgLnNpemVYMiBzdHJvbmcge1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7IH1cblxuLypcbiAqIFZlcnRpY2FsIHNwYWNlcyBhcm91bmQgZWxlbWVudFxuICovXG4uc3BhY2UtYXJvdW5kIHtcbiAgcGFkZGluZzogLjdyZW0gMDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLnNwYWNlLWFyb3VuZCB7XG4gICAgICBwYWRkaW5nOiAxLjJyZW0gMDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuc3BhY2UtYXJvdW5kIHtcbiAgICAgIHBhZGRpbmc6IDEuNXJlbSAwOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5zcGFjZS1hcm91bmQge1xuICAgICAgcGFkZGluZzogMnJlbSAwOyB9IH1cbiAgLnNwYWNlLWFyb3VuZC50aW55LXNwYWNlIHtcbiAgICBwYWRkaW5nOiAwLjc1cmVtIDA7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuc3BhY2UtYXJvdW5kLnRpbnktc3BhY2Uge1xuICAgICAgICBwYWRkaW5nOiAxcmVtIDA7IH0gfVxuICAuc3BhY2UtYXJvdW5kLm1lZGl1bS1zcGFjZSB7XG4gICAgcGFkZGluZzogMXJlbSAwOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLnNwYWNlLWFyb3VuZC5tZWRpdW0tc3BhY2Uge1xuICAgICAgICBwYWRkaW5nOiAxLjVyZW0gMDsgfSB9XG4gIC5zcGFjZS1hcm91bmQud2lkZS1zcGFjZSB7XG4gICAgcGFkZGluZzogMS41cmVtIDA7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuc3BhY2UtYXJvdW5kLndpZGUtc3BhY2Uge1xuICAgICAgICBwYWRkaW5nOiAyLjVyZW0gMDsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLnNwYWNlLWFyb3VuZC53aWRlLXNwYWNlIHtcbiAgICAgICAgcGFkZGluZzogNHJlbSAwOyB9IH1cbiAgLnNwYWNlLWFyb3VuZC50b3Atb25seSB7XG4gICAgcGFkZGluZy1ib3R0b206IDA7IH1cbiAgLnNwYWNlLWFyb3VuZC5ib3R0b20tb25seSB7XG4gICAgcGFkZGluZy10b3A6IDA7IH1cblxuLmJvdHRvbS10cmlhbmdsZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAuYm90dG9tLXRyaWFuZ2xlOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3R0b206IC0xLjI1cmVtO1xuICAgIGxlZnQ6IDUwJTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIDAlKTtcbiAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIDAlKTtcbiAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAwJSk7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIDAlKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAwJSk7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJvcmRlci1sZWZ0OiAxLjI1cmVtIHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1yaWdodDogMS4yNXJlbSBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItdG9wOiAxLjI1cmVtIHNvbGlkICMwYTBhMGE7IH1cblxuLm1vcmUge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgLm1vcmUgYSB7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBwYWRkaW5nOiAxMHB4IDMwcHg7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBmb250LXNpemU6IDEycHg7IH1cbiAgLm1vcmUgYnV0dG9uLCAubW9yZSAuYnV0dG9uIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDApO1xuICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLXdpZHRoOiAxcHg7XG4gICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgLW1vei1ib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgYm9yZGVyLXJhZGl1czogNXB4OyB9XG5cbi8qXG4gKiBDYXJkYm94LCBsaWtlIGEgcGFuZWwgYnV0IHdpdGggaGlnaCB2aXN1YWwgdGl0bGVcbiAqL1xuLmNhcmRib3gubWFyZ2VkIHtcbiAgbWFyZ2luLXRvcDogMWVtICFpbXBvcnRhbnQ7XG4gIG1hcmdpbi1ib3R0b206IDFlbSAhaW1wb3J0YW50OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuY2FyZGJveC5tYXJnZWQge1xuICAgICAgbWFyZ2luLXRvcDogMS41ZW0gIWltcG9ydGFudDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDJlbSAhaW1wb3J0YW50OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5jYXJkYm94Lm1hcmdlZCB7XG4gICAgICBtYXJnaW4tdG9wOiAyZW0gIWltcG9ydGFudDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDNlbSAhaW1wb3J0YW50OyB9IH1cblxuLmNhcmRib3ggLmhlYWQsXG4uY2FyZGJveCAuY29udGVudCB7XG4gIHBhZGRpbmc6IDAuNzVyZW0gMS41cmVtOyB9XG5cbi5jYXJkYm94IC5oZWFkIHtcbiAgbWFyZ2luLWJvdHRvbTogMXB4OyB9XG4gIC5jYXJkYm94IC5oZWFkIHAge1xuICAgIG1hcmdpbjogMDsgfVxuXG4uY2FyZGJveCAuY29udGVudCB7XG4gIHBhZGRpbmctdG9wOiAxLjVyZW07XG4gIHBhZGRpbmctYm90dG9tOiAxLjVyZW07IH1cbiAgLmNhcmRib3ggLmNvbnRlbnQgYTpub3QoLmJ1dHRvbikge1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyB9XG5cbiNoZWFkcGFnZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHdpZHRoOiAxMDAlOyB9XG4gICNoZWFkcGFnZTpiZWZvcmUge1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGNvbnRlbnQ6IGF0dHIoZGF0YS10aXRsZSk7XG4gICAgZm9udC1zaXplOiAxMnJlbTtcbiAgICB0b3A6IC04cmVtO1xuICAgIGxlZnQ6IDIzcmVtO1xuICAgIHotaW5kZXg6IC0xO1xuICAgIG9wYWNpdHk6IDAuMDc1O1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBtYXgtd2lkdGg6IGNhbGMoMTAwdncgLSAxNnB4IC0gMjNyZW0pO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgZGlzcGxheTogYmxvY2s7IH1cbiAgI2hlYWRwYWdlOmFmdGVyIHtcbiAgICBjb250ZW50OiAn7qSCJztcbiAgICBmb250LXNpemU6IDE0cmVtO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IC0xMHJlbTtcbiAgICBsZWZ0OiA4LjVyZW07XG4gICAgei1pbmRleDogLTE7XG4gICAgb3BhY2l0eTogMC4wNzU7XG4gICAgZm9udC1mYW1pbHk6IGljb21vb247IH1cbiAgI2hlYWRwYWdlLmV4cG9zaXRpb25zX2ljbzphZnRlciB7XG4gICAgY29udGVudDogJ+6kjic7IH1cbiAgI2hlYWRwYWdlLnZpc2l0ZXNfaWNvOmFmdGVyIHtcbiAgICBjb250ZW50OiAn7qSCJzsgfVxuICAjaGVhZHBhZ2UuY29sbGVjdGlvbnNfaWNvOmFmdGVyIHtcbiAgICBjb250ZW50OiAn7qSNJzsgfVxuICAjaGVhZHBhZ2UucmVwZXJlc19pY286YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICfupJAnOyB9XG4gICNoZWFkcGFnZS5vdXRpbHNfaWNvOmFmdGVyIHtcbiAgICBjb250ZW50OiAn7qSPJzsgfVxuXG4vKmxlZnRGbGFnICUqL1xuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAubGVmdEZsYWc6YmVmb3JlIHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgdG9wOiAyNTBweDtcbiAgICBsZWZ0OiAwO1xuICAgIGNvbnRlbnQ6IHVybChcIi9zdGF0aWMvaW1hZ2VzL3RoZW1lL2xlZnRGbGFnLnBuZ1wiKTtcbiAgICB6LWluZGV4OiAtMTsgfSB9XG5cbi5pcy1hY2NvcmRpb24tc3VibWVudS1wYXJlbnQ6YWZ0ZXIge1xuICBjb250ZW50OiAnJztcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG4gIGJvcmRlcjogaW5zZXQgNXB4O1xuICBib3JkZXItY29sb3I6ICNkZDMzMzMgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci10b3Atc3R5bGU6IHNvbGlkO1xuICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xuICByaWdodDogNXB4O1xuICBtYXJnaW4tdG9wOiAtMnJlbTtcbiAgZmxvYXQ6IHJpZ2h0OyB9XG5cbi5iaWdociB7XG4gIGJvcmRlci13aWR0aDogNnB4O1xuICBib3JkZXItY29sb3I6ICNFMEUwRTA7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIG1heC13aWR0aDogbm9uZTsgfVxuXG4ucGFuZWwge1xuICBib3JkZXItcmFkaXVzOiAycHg7XG4gIGZsb2F0OiBsZWZ0O1xuICB3aWR0aDogMTAwJTsgfVxuXG4vKkZvbnRzIGxpYnJhcnkqL1xuLypGb250cyBsaWJyYXJ5Ki9cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ2ljb21vb24nO1xuICBzcmM6IHVybChcIi4uL2ZvbnRzL2ljb21vb24uZW90PzdxcWpkc1wiKTtcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9pY29tb29uLmVvdD83cXFqZHMjaWVmaXhcIikgZm9ybWF0KFwiZW1iZWRkZWQtb3BlbnR5cGVcIiksIHVybChcIi4uL2ZvbnRzL2ljb21vb24ud29mZjI/N3FxajJzXCIpIGZvcm1hdChcIndvZmYyXCIpLCB1cmwoXCIuLi9mb250cy9pY29tb29uLnR0Zj83cXFqMnNcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIiksIHVybChcIi4uL2ZvbnRzL2ljb21vb24ud29mZj83cXFqMnNcIikgZm9ybWF0KFwid29mZlwiKSwgdXJsKFwiLi4vZm9udHMvaWNvbW9vbi5zdmc/N3FxajJzI2ljb21vb25cIikgZm9ybWF0KFwic3ZnXCIpO1xuICBmb250LXdlaWdodDogNDAwO1xuICBmb250LXN0eWxlOiBub3JtYWw7IH1cblxuLypcbiAqIERlZmF1bHQgdXNhZ2UsIGZvciBzZWxmIGNsb3NlZCBlbGVtZW50IGxpa2UgaW4gPGkgY2xhc3M9XCIuLlwiPjwvaT5cbiAqL1xuLmljb25jb250LCAuc2xpY2stcHJldiwgLnNsaWNrLW5leHQsIFtjbGFzc149XCJpY29uLVwiXTpub3QocCk6bm90KGRpdik6bm90KGgxKTpub3QoLnRpdGxlLTEpOm5vdChcbmgyKTpub3QoXG4udGl0bGUtMik6bm90KFxuaDMpOm5vdChcbi5oMyk6bm90KFxuLnRpdGxlLTMpOm5vdChcbmg0KTpub3QoXG4udGl0bGUtNCksXG5bY2xhc3MqPVwiIGljb24tXCJdOm5vdChwKTpub3QoZGl2KTpub3QoaDEpOm5vdCgudGl0bGUtMSk6bm90KFxuaDIpOm5vdChcbi50aXRsZS0yKTpub3QoXG5oMyk6bm90KFxuLmgzKTpub3QoXG4udGl0bGUtMyk6bm90KFxuaDQpOm5vdChcbi50aXRsZS00KSwgW2NsYXNzXj1cImljb24tXCJdOmJlZm9yZSwgW2NsYXNzKj1cIiBpY29uLVwiXTpiZWZvcmUge1xuICBmb250LWZhbWlseTogJ2ljb21vb24nO1xuICBzcGVhazogbm9uZTtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBmb250LXZhcmlhbnQ6IG5vcm1hbDtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTsgfVxuICAuaWNvbmNvbnQuaWNvbi0yeCwgLmljb24tMnguc2xpY2stcHJldiwgLmljb24tMnguc2xpY2stbmV4dCwgW2NsYXNzXj1cImljb24tXCJdOm5vdChwKTpub3QoZGl2KTpub3QoaDEpOm5vdCgudGl0bGUtMSk6bm90KFxuICBoMik6bm90KFxuICAudGl0bGUtMik6bm90KFxuICBoMyk6bm90KFxuICAuaDMpOm5vdChcbiAgLnRpdGxlLTMpOm5vdChcbiAgaDQpOm5vdChcbiAgLnRpdGxlLTQpLmljb24tMngsXG4gIFtjbGFzcyo9XCIgaWNvbi1cIl06bm90KHApOm5vdChkaXYpOm5vdChoMSk6bm90KC50aXRsZS0xKTpub3QoXG4gIGgyKTpub3QoXG4gIC50aXRsZS0yKTpub3QoXG4gIGgzKTpub3QoXG4gIC5oMyk6bm90KFxuICAudGl0bGUtMyk6bm90KFxuICBoNCk6bm90KFxuICAudGl0bGUtNCkuaWNvbi0yeCwgW2NsYXNzXj1cImljb24tXCJdOmJlZm9yZS5pY29uLTJ4LCBbY2xhc3MqPVwiIGljb24tXCJdOmJlZm9yZS5pY29uLTJ4IHtcbiAgICBmb250LXNpemU6IDJyZW07IH1cbiAgLmljb25jb250Lmljb24tM3gsIC5pY29uLTN4LnNsaWNrLXByZXYsIC5pY29uLTN4LnNsaWNrLW5leHQsIFtjbGFzc149XCJpY29uLVwiXTpub3QocCk6bm90KGRpdik6bm90KGgxKTpub3QoLnRpdGxlLTEpOm5vdChcbiAgaDIpOm5vdChcbiAgLnRpdGxlLTIpOm5vdChcbiAgaDMpOm5vdChcbiAgLmgzKTpub3QoXG4gIC50aXRsZS0zKTpub3QoXG4gIGg0KTpub3QoXG4gIC50aXRsZS00KS5pY29uLTN4LFxuICBbY2xhc3MqPVwiIGljb24tXCJdOm5vdChwKTpub3QoZGl2KTpub3QoaDEpOm5vdCgudGl0bGUtMSk6bm90KFxuICBoMik6bm90KFxuICAudGl0bGUtMik6bm90KFxuICBoMyk6bm90KFxuICAuaDMpOm5vdChcbiAgLnRpdGxlLTMpOm5vdChcbiAgaDQpOm5vdChcbiAgLnRpdGxlLTQpLmljb24tM3gsIFtjbGFzc149XCJpY29uLVwiXTpiZWZvcmUuaWNvbi0zeCwgW2NsYXNzKj1cIiBpY29uLVwiXTpiZWZvcmUuaWNvbi0zeCB7XG4gICAgZm9udC1zaXplOiAzcmVtOyB9XG4gIC5pY29uY29udC5pY29uLTR4LCAuaWNvbi00eC5zbGljay1wcmV2LCAuaWNvbi00eC5zbGljay1uZXh0LCBbY2xhc3NePVwiaWNvbi1cIl06bm90KHApOm5vdChkaXYpOm5vdChoMSk6bm90KC50aXRsZS0xKTpub3QoXG4gIGgyKTpub3QoXG4gIC50aXRsZS0yKTpub3QoXG4gIGgzKTpub3QoXG4gIC5oMyk6bm90KFxuICAudGl0bGUtMyk6bm90KFxuICBoNCk6bm90KFxuICAudGl0bGUtNCkuaWNvbi00eCxcbiAgW2NsYXNzKj1cIiBpY29uLVwiXTpub3QocCk6bm90KGRpdik6bm90KGgxKTpub3QoLnRpdGxlLTEpOm5vdChcbiAgaDIpOm5vdChcbiAgLnRpdGxlLTIpOm5vdChcbiAgaDMpOm5vdChcbiAgLmgzKTpub3QoXG4gIC50aXRsZS0zKTpub3QoXG4gIGg0KTpub3QoXG4gIC50aXRsZS00KS5pY29uLTR4LCBbY2xhc3NePVwiaWNvbi1cIl06YmVmb3JlLmljb24tNHgsIFtjbGFzcyo9XCIgaWNvbi1cIl06YmVmb3JlLmljb24tNHgge1xuICAgIGZvbnQtc2l6ZTogNHJlbTsgfVxuICAuaWNvbmNvbnQuaWNvbi01eCwgLmljb24tNXguc2xpY2stcHJldiwgLmljb24tNXguc2xpY2stbmV4dCwgW2NsYXNzXj1cImljb24tXCJdOm5vdChwKTpub3QoZGl2KTpub3QoaDEpOm5vdCgudGl0bGUtMSk6bm90KFxuICBoMik6bm90KFxuICAudGl0bGUtMik6bm90KFxuICBoMyk6bm90KFxuICAuaDMpOm5vdChcbiAgLnRpdGxlLTMpOm5vdChcbiAgaDQpOm5vdChcbiAgLnRpdGxlLTQpLmljb24tNXgsXG4gIFtjbGFzcyo9XCIgaWNvbi1cIl06bm90KHApOm5vdChkaXYpOm5vdChoMSk6bm90KC50aXRsZS0xKTpub3QoXG4gIGgyKTpub3QoXG4gIC50aXRsZS0yKTpub3QoXG4gIGgzKTpub3QoXG4gIC5oMyk6bm90KFxuICAudGl0bGUtMyk6bm90KFxuICBoNCk6bm90KFxuICAudGl0bGUtNCkuaWNvbi01eCwgW2NsYXNzXj1cImljb24tXCJdOmJlZm9yZS5pY29uLTV4LCBbY2xhc3MqPVwiIGljb24tXCJdOmJlZm9yZS5pY29uLTV4IHtcbiAgICBmb250LXNpemU6IDVyZW07IH1cbiAgLmljb25jb250Lmljb24tYmxvY2ssIC5pY29uLWJsb2NrLnNsaWNrLXByZXYsIC5pY29uLWJsb2NrLnNsaWNrLW5leHQsIFtjbGFzc149XCJpY29uLVwiXTpub3QocCk6bm90KGRpdik6bm90KGgxKTpub3QoLnRpdGxlLTEpOm5vdChcbiAgaDIpOm5vdChcbiAgLnRpdGxlLTIpOm5vdChcbiAgaDMpOm5vdChcbiAgLmgzKTpub3QoXG4gIC50aXRsZS0zKTpub3QoXG4gIGg0KTpub3QoXG4gIC50aXRsZS00KS5pY29uLWJsb2NrLFxuICBbY2xhc3MqPVwiIGljb24tXCJdOm5vdChwKTpub3QoZGl2KTpub3QoaDEpOm5vdCgudGl0bGUtMSk6bm90KFxuICBoMik6bm90KFxuICAudGl0bGUtMik6bm90KFxuICBoMyk6bm90KFxuICAuaDMpOm5vdChcbiAgLnRpdGxlLTMpOm5vdChcbiAgaDQpOm5vdChcbiAgLnRpdGxlLTQpLmljb24tYmxvY2ssIFtjbGFzc149XCJpY29uLVwiXTpiZWZvcmUuaWNvbi1ibG9jaywgW2NsYXNzKj1cIiBpY29uLVwiXTpiZWZvcmUuaWNvbi1ibG9jayB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cblxuLypcbiAqIEljb24gaW5zZXJ0IGluIGEgY29udGFpbmVyXG4gKlxuICogQ29udHJhcnkgdG8gdGhlIGRlZmF1bHQgc2VsZWN0b3IsIHRoaXMgZG9lcyBub3QgcGVydHVyYiBjb250YWluZXJcbiAqIGVsZW1lbnRzIGZvbnQsIHNvIGl0J3Mgc2FmZSB0byBoYXZlIHRleHQgaW4gY29udGFpbmVyXG4gKi9cbnBbY2xhc3NePVwiaWNvbi1cIl06YmVmb3JlLCBwW2NsYXNzKj1cIiBpY29uLVwiXTpiZWZvcmUsIGRpdltjbGFzc149XCJpY29uLVwiXTpiZWZvcmUsIGRpdltjbGFzcyo9XCIgaWNvbi1cIl06YmVmb3JlLCBoMVtjbGFzc149XCJpY29uLVwiXTpiZWZvcmUsIC50aXRsZS0xW2NsYXNzXj1cImljb24tXCJdOmJlZm9yZSwgaDFbY2xhc3MqPVwiIGljb24tXCJdOmJlZm9yZSwgLnRpdGxlLTFbY2xhc3MqPVwiIGljb24tXCJdOmJlZm9yZSwgaDJbY2xhc3NePVwiaWNvbi1cIl06YmVmb3JlLCAucnN0IGgxW2NsYXNzXj1cImljb24tXCJdOmJlZm9yZSwgLnJzdCAudGl0bGUtMVtjbGFzc149XCJpY29uLVwiXTpiZWZvcmUsIC50aXRsZS0yW2NsYXNzXj1cImljb24tXCJdOmJlZm9yZSwgaDJbY2xhc3MqPVwiIGljb24tXCJdOmJlZm9yZSwgLnJzdCBoMVtjbGFzcyo9XCIgaWNvbi1cIl06YmVmb3JlLCAucnN0IC50aXRsZS0xW2NsYXNzKj1cIiBpY29uLVwiXTpiZWZvcmUsIC50aXRsZS0yW2NsYXNzKj1cIiBpY29uLVwiXTpiZWZvcmUsIGgzW2NsYXNzXj1cImljb24tXCJdOmJlZm9yZSwgLmgzW2NsYXNzXj1cImljb24tXCJdOmJlZm9yZSwgLnJzdCBoMltjbGFzc149XCJpY29uLVwiXTpiZWZvcmUsIC5yc3QgaDFbY2xhc3NePVwiaWNvbi1cIl06YmVmb3JlLCAucnN0IC50aXRsZS0xW2NsYXNzXj1cImljb24tXCJdOmJlZm9yZSwgLnJzdCAudGl0bGUtMltjbGFzc149XCJpY29uLVwiXTpiZWZvcmUsIC50aXRsZS0zW2NsYXNzXj1cImljb24tXCJdOmJlZm9yZSwgaDNbY2xhc3MqPVwiIGljb24tXCJdOmJlZm9yZSwgLmgzW2NsYXNzKj1cIiBpY29uLVwiXTpiZWZvcmUsIC5yc3QgaDJbY2xhc3MqPVwiIGljb24tXCJdOmJlZm9yZSwgLnJzdCBoMVtjbGFzcyo9XCIgaWNvbi1cIl06YmVmb3JlLCAucnN0IC50aXRsZS0xW2NsYXNzKj1cIiBpY29uLVwiXTpiZWZvcmUsIC5yc3QgLnRpdGxlLTJbY2xhc3MqPVwiIGljb24tXCJdOmJlZm9yZSwgLnRpdGxlLTNbY2xhc3MqPVwiIGljb24tXCJdOmJlZm9yZSwgaDRbY2xhc3NePVwiaWNvbi1cIl06YmVmb3JlLCAucnN0IGgzW2NsYXNzXj1cImljb24tXCJdOmJlZm9yZSwgLnJzdCAuaDNbY2xhc3NePVwiaWNvbi1cIl06YmVmb3JlLCAucnN0IGgyW2NsYXNzXj1cImljb24tXCJdOmJlZm9yZSwgLnJzdCBoMVtjbGFzc149XCJpY29uLVwiXTpiZWZvcmUsIC5yc3QgLnRpdGxlLTFbY2xhc3NePVwiaWNvbi1cIl06YmVmb3JlLCAucnN0IC50aXRsZS0yW2NsYXNzXj1cImljb24tXCJdOmJlZm9yZSwgLnJzdCAudGl0bGUtM1tjbGFzc149XCJpY29uLVwiXTpiZWZvcmUsIC50aXRsZS00W2NsYXNzXj1cImljb24tXCJdOmJlZm9yZSwgaDRbY2xhc3MqPVwiIGljb24tXCJdOmJlZm9yZSwgLnJzdCBoM1tjbGFzcyo9XCIgaWNvbi1cIl06YmVmb3JlLCAucnN0IC5oM1tjbGFzcyo9XCIgaWNvbi1cIl06YmVmb3JlLCAucnN0IGgyW2NsYXNzKj1cIiBpY29uLVwiXTpiZWZvcmUsIC5yc3QgaDFbY2xhc3MqPVwiIGljb24tXCJdOmJlZm9yZSwgLnJzdCAudGl0bGUtMVtjbGFzcyo9XCIgaWNvbi1cIl06YmVmb3JlLCAucnN0IC50aXRsZS0yW2NsYXNzKj1cIiBpY29uLVwiXTpiZWZvcmUsIC5yc3QgLnRpdGxlLTNbY2xhc3MqPVwiIGljb24tXCJdOmJlZm9yZSwgLnRpdGxlLTRbY2xhc3MqPVwiIGljb24tXCJdOmJlZm9yZSwgKltjbGFzc149XCJpY29uLVwiXTpiZWZvcmUsICpbY2xhc3MqPVwiIGljb24tXCJdOmJlZm9yZSB7XG4gIGZvbnQtZmFtaWx5OiAnaWNvbW9vbic7XG4gIHNwZWFrOiBub25lO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZvbnQtdmFyaWFudDogbm9ybWFsO1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlOyB9XG5cbnBbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi0yeDo6YmVmb3JlLCBwW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLTJ4OjpiZWZvcmUsIGRpdltjbGFzc149XCJpY29uLVwiXS5pY29uLTJ4OjpiZWZvcmUsIGRpdltjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi0yeDo6YmVmb3JlLCBoMVtjbGFzc149XCJpY29uLVwiXS5pY29uLTJ4OjpiZWZvcmUsIC50aXRsZS0xW2NsYXNzXj1cImljb24tXCJdLmljb24tMng6OmJlZm9yZSwgaDFbY2xhc3MqPVwiIGljb24tXCJdLmljb24tMng6OmJlZm9yZSwgLnRpdGxlLTFbY2xhc3MqPVwiIGljb24tXCJdLmljb24tMng6OmJlZm9yZSwgaDJbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi0yeDo6YmVmb3JlLCAucnN0IGgxW2NsYXNzXj1cImljb24tXCJdLmljb24tMng6OmJlZm9yZSwgLnJzdCAudGl0bGUtMVtjbGFzc149XCJpY29uLVwiXS5pY29uLTJ4OjpiZWZvcmUsIC50aXRsZS0yW2NsYXNzXj1cImljb24tXCJdLmljb24tMng6OmJlZm9yZSwgaDJbY2xhc3MqPVwiIGljb24tXCJdLmljb24tMng6OmJlZm9yZSwgLnJzdCBoMVtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi0yeDo6YmVmb3JlLCAucnN0IC50aXRsZS0xW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLTJ4OjpiZWZvcmUsIC50aXRsZS0yW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLTJ4OjpiZWZvcmUsIGgzW2NsYXNzXj1cImljb24tXCJdLmljb24tMng6OmJlZm9yZSwgLmgzW2NsYXNzXj1cImljb24tXCJdLmljb24tMng6OmJlZm9yZSwgLnJzdCBoMltjbGFzc149XCJpY29uLVwiXS5pY29uLTJ4OjpiZWZvcmUsIC5yc3QgaDFbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi0yeDo6YmVmb3JlLCAucnN0IC50aXRsZS0xW2NsYXNzXj1cImljb24tXCJdLmljb24tMng6OmJlZm9yZSwgLnJzdCAudGl0bGUtMltjbGFzc149XCJpY29uLVwiXS5pY29uLTJ4OjpiZWZvcmUsIC50aXRsZS0zW2NsYXNzXj1cImljb24tXCJdLmljb24tMng6OmJlZm9yZSwgaDNbY2xhc3MqPVwiIGljb24tXCJdLmljb24tMng6OmJlZm9yZSwgLmgzW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLTJ4OjpiZWZvcmUsIC5yc3QgaDJbY2xhc3MqPVwiIGljb24tXCJdLmljb24tMng6OmJlZm9yZSwgLnJzdCBoMVtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi0yeDo6YmVmb3JlLCAucnN0IC50aXRsZS0xW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLTJ4OjpiZWZvcmUsIC5yc3QgLnRpdGxlLTJbY2xhc3MqPVwiIGljb24tXCJdLmljb24tMng6OmJlZm9yZSwgLnRpdGxlLTNbY2xhc3MqPVwiIGljb24tXCJdLmljb24tMng6OmJlZm9yZSwgaDRbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi0yeDo6YmVmb3JlLCAucnN0IGgzW2NsYXNzXj1cImljb24tXCJdLmljb24tMng6OmJlZm9yZSwgLnJzdCAuaDNbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi0yeDo6YmVmb3JlLCAucnN0IGgyW2NsYXNzXj1cImljb24tXCJdLmljb24tMng6OmJlZm9yZSwgLnJzdCBoMVtjbGFzc149XCJpY29uLVwiXS5pY29uLTJ4OjpiZWZvcmUsIC5yc3QgLnRpdGxlLTFbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi0yeDo6YmVmb3JlLCAucnN0IC50aXRsZS0yW2NsYXNzXj1cImljb24tXCJdLmljb24tMng6OmJlZm9yZSwgLnJzdCAudGl0bGUtM1tjbGFzc149XCJpY29uLVwiXS5pY29uLTJ4OjpiZWZvcmUsIC50aXRsZS00W2NsYXNzXj1cImljb24tXCJdLmljb24tMng6OmJlZm9yZSwgaDRbY2xhc3MqPVwiIGljb24tXCJdLmljb24tMng6OmJlZm9yZSwgLnJzdCBoM1tjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi0yeDo6YmVmb3JlLCAucnN0IC5oM1tjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi0yeDo6YmVmb3JlLCAucnN0IGgyW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLTJ4OjpiZWZvcmUsIC5yc3QgaDFbY2xhc3MqPVwiIGljb24tXCJdLmljb24tMng6OmJlZm9yZSwgLnJzdCAudGl0bGUtMVtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi0yeDo6YmVmb3JlLCAucnN0IC50aXRsZS0yW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLTJ4OjpiZWZvcmUsIC5yc3QgLnRpdGxlLTNbY2xhc3MqPVwiIGljb24tXCJdLmljb24tMng6OmJlZm9yZSwgLnRpdGxlLTRbY2xhc3MqPVwiIGljb24tXCJdLmljb24tMng6OmJlZm9yZSwgKltjbGFzc149XCJpY29uLVwiXS5pY29uLTJ4OjpiZWZvcmUsICpbY2xhc3MqPVwiIGljb24tXCJdLmljb24tMng6OmJlZm9yZSB7XG4gIGZvbnQtc2l6ZTogMnJlbTsgfVxuXG5wW2NsYXNzXj1cImljb24tXCJdLmljb24tM3g6OmJlZm9yZSwgcFtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi0zeDo6YmVmb3JlLCBkaXZbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi0zeDo6YmVmb3JlLCBkaXZbY2xhc3MqPVwiIGljb24tXCJdLmljb24tM3g6OmJlZm9yZSwgaDFbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi0zeDo6YmVmb3JlLCAudGl0bGUtMVtjbGFzc149XCJpY29uLVwiXS5pY29uLTN4OjpiZWZvcmUsIGgxW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLTN4OjpiZWZvcmUsIC50aXRsZS0xW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLTN4OjpiZWZvcmUsIGgyW2NsYXNzXj1cImljb24tXCJdLmljb24tM3g6OmJlZm9yZSwgLnJzdCBoMVtjbGFzc149XCJpY29uLVwiXS5pY29uLTN4OjpiZWZvcmUsIC5yc3QgLnRpdGxlLTFbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi0zeDo6YmVmb3JlLCAudGl0bGUtMltjbGFzc149XCJpY29uLVwiXS5pY29uLTN4OjpiZWZvcmUsIGgyW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLTN4OjpiZWZvcmUsIC5yc3QgaDFbY2xhc3MqPVwiIGljb24tXCJdLmljb24tM3g6OmJlZm9yZSwgLnJzdCAudGl0bGUtMVtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi0zeDo6YmVmb3JlLCAudGl0bGUtMltjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi0zeDo6YmVmb3JlLCBoM1tjbGFzc149XCJpY29uLVwiXS5pY29uLTN4OjpiZWZvcmUsIC5oM1tjbGFzc149XCJpY29uLVwiXS5pY29uLTN4OjpiZWZvcmUsIC5yc3QgaDJbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi0zeDo6YmVmb3JlLCAucnN0IGgxW2NsYXNzXj1cImljb24tXCJdLmljb24tM3g6OmJlZm9yZSwgLnJzdCAudGl0bGUtMVtjbGFzc149XCJpY29uLVwiXS5pY29uLTN4OjpiZWZvcmUsIC5yc3QgLnRpdGxlLTJbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi0zeDo6YmVmb3JlLCAudGl0bGUtM1tjbGFzc149XCJpY29uLVwiXS5pY29uLTN4OjpiZWZvcmUsIGgzW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLTN4OjpiZWZvcmUsIC5oM1tjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi0zeDo6YmVmb3JlLCAucnN0IGgyW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLTN4OjpiZWZvcmUsIC5yc3QgaDFbY2xhc3MqPVwiIGljb24tXCJdLmljb24tM3g6OmJlZm9yZSwgLnJzdCAudGl0bGUtMVtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi0zeDo6YmVmb3JlLCAucnN0IC50aXRsZS0yW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLTN4OjpiZWZvcmUsIC50aXRsZS0zW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLTN4OjpiZWZvcmUsIGg0W2NsYXNzXj1cImljb24tXCJdLmljb24tM3g6OmJlZm9yZSwgLnJzdCBoM1tjbGFzc149XCJpY29uLVwiXS5pY29uLTN4OjpiZWZvcmUsIC5yc3QgLmgzW2NsYXNzXj1cImljb24tXCJdLmljb24tM3g6OmJlZm9yZSwgLnJzdCBoMltjbGFzc149XCJpY29uLVwiXS5pY29uLTN4OjpiZWZvcmUsIC5yc3QgaDFbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi0zeDo6YmVmb3JlLCAucnN0IC50aXRsZS0xW2NsYXNzXj1cImljb24tXCJdLmljb24tM3g6OmJlZm9yZSwgLnJzdCAudGl0bGUtMltjbGFzc149XCJpY29uLVwiXS5pY29uLTN4OjpiZWZvcmUsIC5yc3QgLnRpdGxlLTNbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi0zeDo6YmVmb3JlLCAudGl0bGUtNFtjbGFzc149XCJpY29uLVwiXS5pY29uLTN4OjpiZWZvcmUsIGg0W2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLTN4OjpiZWZvcmUsIC5yc3QgaDNbY2xhc3MqPVwiIGljb24tXCJdLmljb24tM3g6OmJlZm9yZSwgLnJzdCAuaDNbY2xhc3MqPVwiIGljb24tXCJdLmljb24tM3g6OmJlZm9yZSwgLnJzdCBoMltjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi0zeDo6YmVmb3JlLCAucnN0IGgxW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLTN4OjpiZWZvcmUsIC5yc3QgLnRpdGxlLTFbY2xhc3MqPVwiIGljb24tXCJdLmljb24tM3g6OmJlZm9yZSwgLnJzdCAudGl0bGUtMltjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi0zeDo6YmVmb3JlLCAucnN0IC50aXRsZS0zW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLTN4OjpiZWZvcmUsIC50aXRsZS00W2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLTN4OjpiZWZvcmUsICpbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi0zeDo6YmVmb3JlLCAqW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLTN4OjpiZWZvcmUge1xuICBmb250LXNpemU6IDNyZW07IH1cblxucFtjbGFzc149XCJpY29uLVwiXS5pY29uLTR4OjpiZWZvcmUsIHBbY2xhc3MqPVwiIGljb24tXCJdLmljb24tNHg6OmJlZm9yZSwgZGl2W2NsYXNzXj1cImljb24tXCJdLmljb24tNHg6OmJlZm9yZSwgZGl2W2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLTR4OjpiZWZvcmUsIGgxW2NsYXNzXj1cImljb24tXCJdLmljb24tNHg6OmJlZm9yZSwgLnRpdGxlLTFbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi00eDo6YmVmb3JlLCBoMVtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi00eDo6YmVmb3JlLCAudGl0bGUtMVtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi00eDo6YmVmb3JlLCBoMltjbGFzc149XCJpY29uLVwiXS5pY29uLTR4OjpiZWZvcmUsIC5yc3QgaDFbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi00eDo6YmVmb3JlLCAucnN0IC50aXRsZS0xW2NsYXNzXj1cImljb24tXCJdLmljb24tNHg6OmJlZm9yZSwgLnRpdGxlLTJbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi00eDo6YmVmb3JlLCBoMltjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi00eDo6YmVmb3JlLCAucnN0IGgxW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLTR4OjpiZWZvcmUsIC5yc3QgLnRpdGxlLTFbY2xhc3MqPVwiIGljb24tXCJdLmljb24tNHg6OmJlZm9yZSwgLnRpdGxlLTJbY2xhc3MqPVwiIGljb24tXCJdLmljb24tNHg6OmJlZm9yZSwgaDNbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi00eDo6YmVmb3JlLCAuaDNbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi00eDo6YmVmb3JlLCAucnN0IGgyW2NsYXNzXj1cImljb24tXCJdLmljb24tNHg6OmJlZm9yZSwgLnJzdCBoMVtjbGFzc149XCJpY29uLVwiXS5pY29uLTR4OjpiZWZvcmUsIC5yc3QgLnRpdGxlLTFbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi00eDo6YmVmb3JlLCAucnN0IC50aXRsZS0yW2NsYXNzXj1cImljb24tXCJdLmljb24tNHg6OmJlZm9yZSwgLnRpdGxlLTNbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi00eDo6YmVmb3JlLCBoM1tjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi00eDo6YmVmb3JlLCAuaDNbY2xhc3MqPVwiIGljb24tXCJdLmljb24tNHg6OmJlZm9yZSwgLnJzdCBoMltjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi00eDo6YmVmb3JlLCAucnN0IGgxW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLTR4OjpiZWZvcmUsIC5yc3QgLnRpdGxlLTFbY2xhc3MqPVwiIGljb24tXCJdLmljb24tNHg6OmJlZm9yZSwgLnJzdCAudGl0bGUtMltjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi00eDo6YmVmb3JlLCAudGl0bGUtM1tjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi00eDo6YmVmb3JlLCBoNFtjbGFzc149XCJpY29uLVwiXS5pY29uLTR4OjpiZWZvcmUsIC5yc3QgaDNbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi00eDo6YmVmb3JlLCAucnN0IC5oM1tjbGFzc149XCJpY29uLVwiXS5pY29uLTR4OjpiZWZvcmUsIC5yc3QgaDJbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi00eDo6YmVmb3JlLCAucnN0IGgxW2NsYXNzXj1cImljb24tXCJdLmljb24tNHg6OmJlZm9yZSwgLnJzdCAudGl0bGUtMVtjbGFzc149XCJpY29uLVwiXS5pY29uLTR4OjpiZWZvcmUsIC5yc3QgLnRpdGxlLTJbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi00eDo6YmVmb3JlLCAucnN0IC50aXRsZS0zW2NsYXNzXj1cImljb24tXCJdLmljb24tNHg6OmJlZm9yZSwgLnRpdGxlLTRbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi00eDo6YmVmb3JlLCBoNFtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi00eDo6YmVmb3JlLCAucnN0IGgzW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLTR4OjpiZWZvcmUsIC5yc3QgLmgzW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLTR4OjpiZWZvcmUsIC5yc3QgaDJbY2xhc3MqPVwiIGljb24tXCJdLmljb24tNHg6OmJlZm9yZSwgLnJzdCBoMVtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi00eDo6YmVmb3JlLCAucnN0IC50aXRsZS0xW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLTR4OjpiZWZvcmUsIC5yc3QgLnRpdGxlLTJbY2xhc3MqPVwiIGljb24tXCJdLmljb24tNHg6OmJlZm9yZSwgLnJzdCAudGl0bGUtM1tjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi00eDo6YmVmb3JlLCAudGl0bGUtNFtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi00eDo6YmVmb3JlLCAqW2NsYXNzXj1cImljb24tXCJdLmljb24tNHg6OmJlZm9yZSwgKltjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi00eDo6YmVmb3JlIHtcbiAgZm9udC1zaXplOiA0cmVtOyB9XG5cbnBbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1ibG9jazpiZWZvcmUsIHBbY2xhc3MqPVwiIGljb24tXCJdLmljb24tYmxvY2s6YmVmb3JlLCBkaXZbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1ibG9jazpiZWZvcmUsIGRpdltjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1ibG9jazpiZWZvcmUsIGgxW2NsYXNzXj1cImljb24tXCJdLmljb24tYmxvY2s6YmVmb3JlLCAudGl0bGUtMVtjbGFzc149XCJpY29uLVwiXS5pY29uLWJsb2NrOmJlZm9yZSwgaDFbY2xhc3MqPVwiIGljb24tXCJdLmljb24tYmxvY2s6YmVmb3JlLCAudGl0bGUtMVtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1ibG9jazpiZWZvcmUsIGgyW2NsYXNzXj1cImljb24tXCJdLmljb24tYmxvY2s6YmVmb3JlLCAucnN0IGgxW2NsYXNzXj1cImljb24tXCJdLmljb24tYmxvY2s6YmVmb3JlLCAucnN0IC50aXRsZS0xW2NsYXNzXj1cImljb24tXCJdLmljb24tYmxvY2s6YmVmb3JlLCAudGl0bGUtMltjbGFzc149XCJpY29uLVwiXS5pY29uLWJsb2NrOmJlZm9yZSwgaDJbY2xhc3MqPVwiIGljb24tXCJdLmljb24tYmxvY2s6YmVmb3JlLCAucnN0IGgxW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWJsb2NrOmJlZm9yZSwgLnJzdCAudGl0bGUtMVtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1ibG9jazpiZWZvcmUsIC50aXRsZS0yW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWJsb2NrOmJlZm9yZSwgaDNbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1ibG9jazpiZWZvcmUsIC5oM1tjbGFzc149XCJpY29uLVwiXS5pY29uLWJsb2NrOmJlZm9yZSwgLnJzdCBoMltjbGFzc149XCJpY29uLVwiXS5pY29uLWJsb2NrOmJlZm9yZSwgLnJzdCBoMVtjbGFzc149XCJpY29uLVwiXS5pY29uLWJsb2NrOmJlZm9yZSwgLnJzdCAudGl0bGUtMVtjbGFzc149XCJpY29uLVwiXS5pY29uLWJsb2NrOmJlZm9yZSwgLnJzdCAudGl0bGUtMltjbGFzc149XCJpY29uLVwiXS5pY29uLWJsb2NrOmJlZm9yZSwgLnRpdGxlLTNbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1ibG9jazpiZWZvcmUsIGgzW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWJsb2NrOmJlZm9yZSwgLmgzW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWJsb2NrOmJlZm9yZSwgLnJzdCBoMltjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1ibG9jazpiZWZvcmUsIC5yc3QgaDFbY2xhc3MqPVwiIGljb24tXCJdLmljb24tYmxvY2s6YmVmb3JlLCAucnN0IC50aXRsZS0xW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWJsb2NrOmJlZm9yZSwgLnJzdCAudGl0bGUtMltjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1ibG9jazpiZWZvcmUsIC50aXRsZS0zW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWJsb2NrOmJlZm9yZSwgaDRbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1ibG9jazpiZWZvcmUsIC5yc3QgaDNbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1ibG9jazpiZWZvcmUsIC5yc3QgLmgzW2NsYXNzXj1cImljb24tXCJdLmljb24tYmxvY2s6YmVmb3JlLCAucnN0IGgyW2NsYXNzXj1cImljb24tXCJdLmljb24tYmxvY2s6YmVmb3JlLCAucnN0IGgxW2NsYXNzXj1cImljb24tXCJdLmljb24tYmxvY2s6YmVmb3JlLCAucnN0IC50aXRsZS0xW2NsYXNzXj1cImljb24tXCJdLmljb24tYmxvY2s6YmVmb3JlLCAucnN0IC50aXRsZS0yW2NsYXNzXj1cImljb24tXCJdLmljb24tYmxvY2s6YmVmb3JlLCAucnN0IC50aXRsZS0zW2NsYXNzXj1cImljb24tXCJdLmljb24tYmxvY2s6YmVmb3JlLCAudGl0bGUtNFtjbGFzc149XCJpY29uLVwiXS5pY29uLWJsb2NrOmJlZm9yZSwgaDRbY2xhc3MqPVwiIGljb24tXCJdLmljb24tYmxvY2s6YmVmb3JlLCAucnN0IGgzW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWJsb2NrOmJlZm9yZSwgLnJzdCAuaDNbY2xhc3MqPVwiIGljb24tXCJdLmljb24tYmxvY2s6YmVmb3JlLCAucnN0IGgyW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWJsb2NrOmJlZm9yZSwgLnJzdCBoMVtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1ibG9jazpiZWZvcmUsIC5yc3QgLnRpdGxlLTFbY2xhc3MqPVwiIGljb24tXCJdLmljb24tYmxvY2s6YmVmb3JlLCAucnN0IC50aXRsZS0yW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWJsb2NrOmJlZm9yZSwgLnJzdCAudGl0bGUtM1tjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1ibG9jazpiZWZvcmUsIC50aXRsZS00W2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWJsb2NrOmJlZm9yZSwgKltjbGFzc149XCJpY29uLVwiXS5pY29uLWJsb2NrOmJlZm9yZSwgKltjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1ibG9jazpiZWZvcmUge1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG5wW2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQsIHBbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQsIGRpdltjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0LCBkaXZbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQsIGgxW2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQsIC50aXRsZS0xW2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQsIGgxW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0LCAudGl0bGUtMVtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdCwgaDJbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdCwgLnJzdCBoMVtjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0LCAucnN0IC50aXRsZS0xW2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQsIC50aXRsZS0yW2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQsIGgyW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0LCAucnN0IGgxW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0LCAucnN0IC50aXRsZS0xW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0LCAudGl0bGUtMltjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdCwgaDNbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdCwgLmgzW2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQsIC5yc3QgaDJbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdCwgLnJzdCBoMVtjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0LCAucnN0IC50aXRsZS0xW2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQsIC5yc3QgLnRpdGxlLTJbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdCwgLnRpdGxlLTNbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdCwgaDNbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQsIC5oM1tjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdCwgLnJzdCBoMltjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdCwgLnJzdCBoMVtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdCwgLnJzdCAudGl0bGUtMVtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdCwgLnJzdCAudGl0bGUtMltjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdCwgLnRpdGxlLTNbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQsIGg0W2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQsIC5yc3QgaDNbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdCwgLnJzdCAuaDNbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdCwgLnJzdCBoMltjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0LCAucnN0IGgxW2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQsIC5yc3QgLnRpdGxlLTFbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdCwgLnJzdCAudGl0bGUtMltjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0LCAucnN0IC50aXRsZS0zW2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQsIC50aXRsZS00W2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQsIGg0W2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0LCAucnN0IGgzW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0LCAucnN0IC5oM1tjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdCwgLnJzdCBoMltjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdCwgLnJzdCBoMVtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdCwgLnJzdCAudGl0bGUtMVtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdCwgLnJzdCAudGl0bGUtMltjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdCwgLnJzdCAudGl0bGUtM1tjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdCwgLnRpdGxlLTRbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQsICpbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdCwgKltjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZy1sZWZ0OiAxZW07IH1cbiAgcFtjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tMngsIHBbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi0yeCwgZGl2W2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi0yeCwgZGl2W2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tMngsIGgxW2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi0yeCwgLnRpdGxlLTFbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTJ4LCBoMVtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTJ4LCAudGl0bGUtMVtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTJ4LCBoMltjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tMngsIC5yc3QgaDFbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTJ4LCAucnN0IC50aXRsZS0xW2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi0yeCwgLnRpdGxlLTJbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTJ4LCBoMltjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTJ4LCAucnN0IGgxW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tMngsIC5yc3QgLnRpdGxlLTFbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi0yeCwgLnRpdGxlLTJbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi0yeCwgaDNbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTJ4LCAuaDNbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTJ4LCAucnN0IGgyW2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi0yeCwgLnJzdCBoMVtjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tMngsIC5yc3QgLnRpdGxlLTFbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTJ4LCAucnN0IC50aXRsZS0yW2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi0yeCwgLnRpdGxlLTNbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTJ4LCBoM1tjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTJ4LCAuaDNbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi0yeCwgLnJzdCBoMltjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTJ4LCAucnN0IGgxW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tMngsIC5yc3QgLnRpdGxlLTFbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi0yeCwgLnJzdCAudGl0bGUtMltjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTJ4LCAudGl0bGUtM1tjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTJ4LCBoNFtjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tMngsIC5yc3QgaDNbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTJ4LCAucnN0IC5oM1tjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tMngsIC5yc3QgaDJbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTJ4LCAucnN0IGgxW2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi0yeCwgLnJzdCAudGl0bGUtMVtjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tMngsIC5yc3QgLnRpdGxlLTJbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTJ4LCAucnN0IC50aXRsZS0zW2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi0yeCwgLnRpdGxlLTRbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTJ4LCBoNFtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTJ4LCAucnN0IGgzW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tMngsIC5yc3QgLmgzW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tMngsIC5yc3QgaDJbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi0yeCwgLnJzdCBoMVtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTJ4LCAucnN0IC50aXRsZS0xW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tMngsIC5yc3QgLnRpdGxlLTJbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi0yeCwgLnJzdCAudGl0bGUtM1tjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTJ4LCAudGl0bGUtNFtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTJ4LCAqW2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi0yeCwgKltjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTJ4IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDJyZW07IH1cbiAgcFtjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tM3gsIHBbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi0zeCwgZGl2W2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi0zeCwgZGl2W2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tM3gsIGgxW2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi0zeCwgLnRpdGxlLTFbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTN4LCBoMVtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTN4LCAudGl0bGUtMVtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTN4LCBoMltjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tM3gsIC5yc3QgaDFbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTN4LCAucnN0IC50aXRsZS0xW2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi0zeCwgLnRpdGxlLTJbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTN4LCBoMltjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTN4LCAucnN0IGgxW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tM3gsIC5yc3QgLnRpdGxlLTFbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi0zeCwgLnRpdGxlLTJbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi0zeCwgaDNbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTN4LCAuaDNbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTN4LCAucnN0IGgyW2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi0zeCwgLnJzdCBoMVtjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tM3gsIC5yc3QgLnRpdGxlLTFbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTN4LCAucnN0IC50aXRsZS0yW2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi0zeCwgLnRpdGxlLTNbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTN4LCBoM1tjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTN4LCAuaDNbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi0zeCwgLnJzdCBoMltjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTN4LCAucnN0IGgxW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tM3gsIC5yc3QgLnRpdGxlLTFbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi0zeCwgLnJzdCAudGl0bGUtMltjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTN4LCAudGl0bGUtM1tjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTN4LCBoNFtjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tM3gsIC5yc3QgaDNbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTN4LCAucnN0IC5oM1tjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tM3gsIC5yc3QgaDJbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTN4LCAucnN0IGgxW2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi0zeCwgLnJzdCAudGl0bGUtMVtjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tM3gsIC5yc3QgLnRpdGxlLTJbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTN4LCAucnN0IC50aXRsZS0zW2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi0zeCwgLnRpdGxlLTRbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTN4LCBoNFtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTN4LCAucnN0IGgzW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tM3gsIC5yc3QgLmgzW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tM3gsIC5yc3QgaDJbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi0zeCwgLnJzdCBoMVtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTN4LCAucnN0IC50aXRsZS0xW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tM3gsIC5yc3QgLnRpdGxlLTJbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi0zeCwgLnJzdCAudGl0bGUtM1tjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTN4LCAudGl0bGUtNFtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTN4LCAqW2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi0zeCwgKltjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTN4IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDNyZW07IH1cbiAgcFtjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tNHgsIHBbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi00eCwgZGl2W2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi00eCwgZGl2W2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tNHgsIGgxW2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi00eCwgLnRpdGxlLTFbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTR4LCBoMVtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTR4LCAudGl0bGUtMVtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTR4LCBoMltjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tNHgsIC5yc3QgaDFbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTR4LCAucnN0IC50aXRsZS0xW2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi00eCwgLnRpdGxlLTJbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTR4LCBoMltjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTR4LCAucnN0IGgxW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tNHgsIC5yc3QgLnRpdGxlLTFbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi00eCwgLnRpdGxlLTJbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi00eCwgaDNbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTR4LCAuaDNbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTR4LCAucnN0IGgyW2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi00eCwgLnJzdCBoMVtjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tNHgsIC5yc3QgLnRpdGxlLTFbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTR4LCAucnN0IC50aXRsZS0yW2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi00eCwgLnRpdGxlLTNbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTR4LCBoM1tjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTR4LCAuaDNbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi00eCwgLnJzdCBoMltjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTR4LCAucnN0IGgxW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tNHgsIC5yc3QgLnRpdGxlLTFbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi00eCwgLnJzdCAudGl0bGUtMltjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTR4LCAudGl0bGUtM1tjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTR4LCBoNFtjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tNHgsIC5yc3QgaDNbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTR4LCAucnN0IC5oM1tjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tNHgsIC5yc3QgaDJbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTR4LCAucnN0IGgxW2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi00eCwgLnJzdCAudGl0bGUtMVtjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tNHgsIC5yc3QgLnRpdGxlLTJbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTR4LCAucnN0IC50aXRsZS0zW2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi00eCwgLnRpdGxlLTRbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTR4LCBoNFtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTR4LCAucnN0IGgzW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tNHgsIC5yc3QgLmgzW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tNHgsIC5yc3QgaDJbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi00eCwgLnJzdCBoMVtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTR4LCAucnN0IC50aXRsZS0xW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0Lmljb24tNHgsIC5yc3QgLnRpdGxlLTJbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi00eCwgLnJzdCAudGl0bGUtM1tjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTR4LCAudGl0bGUtNFtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTR4LCAqW2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQuaWNvbi00eCwgKltjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdC5pY29uLTR4IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDRyZW07IH1cbiAgcFtjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0OmJlZm9yZSwgcFtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdDpiZWZvcmUsIGRpdltjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0OmJlZm9yZSwgZGl2W2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0OmJlZm9yZSwgaDFbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdDpiZWZvcmUsIC50aXRsZS0xW2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQ6YmVmb3JlLCBoMVtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdDpiZWZvcmUsIC50aXRsZS0xW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0OmJlZm9yZSwgaDJbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdDpiZWZvcmUsIC5yc3QgaDFbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdDpiZWZvcmUsIC5yc3QgLnRpdGxlLTFbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdDpiZWZvcmUsIC50aXRsZS0yW2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQ6YmVmb3JlLCBoMltjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdDpiZWZvcmUsIC5yc3QgaDFbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQ6YmVmb3JlLCAucnN0IC50aXRsZS0xW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0OmJlZm9yZSwgLnRpdGxlLTJbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQ6YmVmb3JlLCBoM1tjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0OmJlZm9yZSwgLmgzW2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQ6YmVmb3JlLCAucnN0IGgyW2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQ6YmVmb3JlLCAucnN0IGgxW2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQ6YmVmb3JlLCAucnN0IC50aXRsZS0xW2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQ6YmVmb3JlLCAucnN0IC50aXRsZS0yW2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQ6YmVmb3JlLCAudGl0bGUtM1tjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0OmJlZm9yZSwgaDNbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQ6YmVmb3JlLCAuaDNbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQ6YmVmb3JlLCAucnN0IGgyW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0OmJlZm9yZSwgLnJzdCBoMVtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdDpiZWZvcmUsIC5yc3QgLnRpdGxlLTFbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQ6YmVmb3JlLCAucnN0IC50aXRsZS0yW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0OmJlZm9yZSwgLnRpdGxlLTNbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQ6YmVmb3JlLCBoNFtjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0OmJlZm9yZSwgLnJzdCBoM1tjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0OmJlZm9yZSwgLnJzdCAuaDNbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdDpiZWZvcmUsIC5yc3QgaDJbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdDpiZWZvcmUsIC5yc3QgaDFbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdDpiZWZvcmUsIC5yc3QgLnRpdGxlLTFbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdDpiZWZvcmUsIC5yc3QgLnRpdGxlLTJbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdDpiZWZvcmUsIC5yc3QgLnRpdGxlLTNbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdDpiZWZvcmUsIC50aXRsZS00W2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQ6YmVmb3JlLCBoNFtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdDpiZWZvcmUsIC5yc3QgaDNbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQ6YmVmb3JlLCAucnN0IC5oM1tjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdDpiZWZvcmUsIC5yc3QgaDJbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQ6YmVmb3JlLCAucnN0IGgxW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0OmJlZm9yZSwgLnJzdCAudGl0bGUtMVtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdDpiZWZvcmUsIC5yc3QgLnRpdGxlLTJbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQ6YmVmb3JlLCAucnN0IC50aXRsZS0zW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0OmJlZm9yZSwgLnRpdGxlLTRbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQ6YmVmb3JlLCAqW2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQ6YmVmb3JlLCAqW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0OmJlZm9yZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMC4xZW07XG4gICAgbGVmdDogMDsgfVxuICBwW2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQgPiAqLCBwW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0ID4gKiwgZGl2W2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQgPiAqLCBkaXZbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQgPiAqLCBoMVtjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0ID4gKiwgLnRpdGxlLTFbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdCA+ICosIGgxW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0ID4gKiwgLnRpdGxlLTFbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQgPiAqLCBoMltjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0ID4gKiwgLnJzdCBoMVtjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0ID4gKiwgLnJzdCAudGl0bGUtMVtjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0ID4gKiwgLnRpdGxlLTJbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdCA+ICosIGgyW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0ID4gKiwgLnJzdCBoMVtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdCA+ICosIC5yc3QgLnRpdGxlLTFbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQgPiAqLCAudGl0bGUtMltjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdCA+ICosIGgzW2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQgPiAqLCAuaDNbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdCA+ICosIC5yc3QgaDJbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdCA+ICosIC5yc3QgaDFbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdCA+ICosIC5yc3QgLnRpdGxlLTFbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdCA+ICosIC5yc3QgLnRpdGxlLTJbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdCA+ICosIC50aXRsZS0zW2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQgPiAqLCBoM1tjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdCA+ICosIC5oM1tjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdCA+ICosIC5yc3QgaDJbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQgPiAqLCAucnN0IGgxW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0ID4gKiwgLnJzdCAudGl0bGUtMVtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdCA+ICosIC5yc3QgLnRpdGxlLTJbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQgPiAqLCAudGl0bGUtM1tjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdCA+ICosIGg0W2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQgPiAqLCAucnN0IGgzW2NsYXNzXj1cImljb24tXCJdLmljb24tY29ybmVyLWxlZnQgPiAqLCAucnN0IC5oM1tjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0ID4gKiwgLnJzdCBoMltjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0ID4gKiwgLnJzdCBoMVtjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0ID4gKiwgLnJzdCAudGl0bGUtMVtjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0ID4gKiwgLnJzdCAudGl0bGUtMltjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0ID4gKiwgLnJzdCAudGl0bGUtM1tjbGFzc149XCJpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0ID4gKiwgLnRpdGxlLTRbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdCA+ICosIGg0W2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0ID4gKiwgLnJzdCBoM1tjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdCA+ICosIC5yc3QgLmgzW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0ID4gKiwgLnJzdCBoMltjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdCA+ICosIC5yc3QgaDFbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQgPiAqLCAucnN0IC50aXRsZS0xW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNvcm5lci1sZWZ0ID4gKiwgLnJzdCAudGl0bGUtMltjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdCA+ICosIC5yc3QgLnRpdGxlLTNbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQgPiAqLCAudGl0bGUtNFtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdCA+ICosICpbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jb3JuZXItbGVmdCA+ICosICpbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY29ybmVyLWxlZnQgPiAqIHtcbiAgICBtYXJnaW4tbGVmdDogMC4zMTI1cmVtOyB9XG5cbnBbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdCwgcFtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdCwgZGl2W2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQsIGRpdltjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdCwgaDFbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdCwgLnRpdGxlLTFbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdCwgaDFbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQsIC50aXRsZS0xW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0LCBoMltjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0LCAucnN0IGgxW2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQsIC5yc3QgLnRpdGxlLTFbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdCwgLnRpdGxlLTJbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdCwgaDJbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQsIC5yc3QgaDFbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQsIC5yc3QgLnRpdGxlLTFbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQsIC50aXRsZS0yW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0LCBoM1tjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0LCAuaDNbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdCwgLnJzdCBoMltjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0LCAucnN0IGgxW2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQsIC5yc3QgLnRpdGxlLTFbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdCwgLnJzdCAudGl0bGUtMltjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0LCAudGl0bGUtM1tjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0LCBoM1tjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdCwgLmgzW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0LCAucnN0IGgyW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0LCAucnN0IGgxW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0LCAucnN0IC50aXRsZS0xW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0LCAucnN0IC50aXRsZS0yW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0LCAudGl0bGUtM1tjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdCwgaDRbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdCwgLnJzdCBoM1tjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0LCAucnN0IC5oM1tjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0LCAucnN0IGgyW2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQsIC5yc3QgaDFbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdCwgLnJzdCAudGl0bGUtMVtjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0LCAucnN0IC50aXRsZS0yW2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQsIC5yc3QgLnRpdGxlLTNbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdCwgLnRpdGxlLTRbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdCwgaDRbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQsIC5yc3QgaDNbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQsIC5yc3QgLmgzW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0LCAucnN0IGgyW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0LCAucnN0IGgxW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0LCAucnN0IC50aXRsZS0xW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0LCAucnN0IC50aXRsZS0yW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0LCAucnN0IC50aXRsZS0zW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0LCAudGl0bGUtNFtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdCwgKltjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0LCAqW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nLWxlZnQ6IDFlbTsgfVxuICBwW2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi0yeCwgcFtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTJ4LCBkaXZbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTJ4LCBkaXZbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi0yeCwgaDFbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTJ4LCAudGl0bGUtMVtjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tMngsIGgxW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tMngsIC50aXRsZS0xW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tMngsIGgyW2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi0yeCwgLnJzdCBoMVtjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tMngsIC5yc3QgLnRpdGxlLTFbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTJ4LCAudGl0bGUtMltjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tMngsIGgyW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tMngsIC5yc3QgaDFbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi0yeCwgLnJzdCAudGl0bGUtMVtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTJ4LCAudGl0bGUtMltjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTJ4LCBoM1tjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tMngsIC5oM1tjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tMngsIC5yc3QgaDJbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTJ4LCAucnN0IGgxW2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi0yeCwgLnJzdCAudGl0bGUtMVtjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tMngsIC5yc3QgLnRpdGxlLTJbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTJ4LCAudGl0bGUtM1tjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tMngsIGgzW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tMngsIC5oM1tjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTJ4LCAucnN0IGgyW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tMngsIC5yc3QgaDFbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi0yeCwgLnJzdCAudGl0bGUtMVtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTJ4LCAucnN0IC50aXRsZS0yW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tMngsIC50aXRsZS0zW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tMngsIGg0W2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi0yeCwgLnJzdCBoM1tjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tMngsIC5yc3QgLmgzW2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi0yeCwgLnJzdCBoMltjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tMngsIC5yc3QgaDFbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTJ4LCAucnN0IC50aXRsZS0xW2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi0yeCwgLnJzdCAudGl0bGUtMltjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tMngsIC5yc3QgLnRpdGxlLTNbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTJ4LCAudGl0bGUtNFtjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tMngsIGg0W2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tMngsIC5yc3QgaDNbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi0yeCwgLnJzdCAuaDNbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi0yeCwgLnJzdCBoMltjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTJ4LCAucnN0IGgxW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tMngsIC5yc3QgLnRpdGxlLTFbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi0yeCwgLnJzdCAudGl0bGUtMltjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTJ4LCAucnN0IC50aXRsZS0zW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tMngsIC50aXRsZS00W2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tMngsICpbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTJ4LCAqW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tMngge1xuICAgIHBhZGRpbmctbGVmdDogMnJlbTsgfVxuICBwW2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi0zeCwgcFtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTN4LCBkaXZbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTN4LCBkaXZbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi0zeCwgaDFbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTN4LCAudGl0bGUtMVtjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tM3gsIGgxW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tM3gsIC50aXRsZS0xW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tM3gsIGgyW2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi0zeCwgLnJzdCBoMVtjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tM3gsIC5yc3QgLnRpdGxlLTFbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTN4LCAudGl0bGUtMltjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tM3gsIGgyW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tM3gsIC5yc3QgaDFbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi0zeCwgLnJzdCAudGl0bGUtMVtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTN4LCAudGl0bGUtMltjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTN4LCBoM1tjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tM3gsIC5oM1tjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tM3gsIC5yc3QgaDJbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTN4LCAucnN0IGgxW2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi0zeCwgLnJzdCAudGl0bGUtMVtjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tM3gsIC5yc3QgLnRpdGxlLTJbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTN4LCAudGl0bGUtM1tjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tM3gsIGgzW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tM3gsIC5oM1tjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTN4LCAucnN0IGgyW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tM3gsIC5yc3QgaDFbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi0zeCwgLnJzdCAudGl0bGUtMVtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTN4LCAucnN0IC50aXRsZS0yW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tM3gsIC50aXRsZS0zW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tM3gsIGg0W2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi0zeCwgLnJzdCBoM1tjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tM3gsIC5yc3QgLmgzW2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi0zeCwgLnJzdCBoMltjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tM3gsIC5yc3QgaDFbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTN4LCAucnN0IC50aXRsZS0xW2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi0zeCwgLnJzdCAudGl0bGUtMltjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tM3gsIC5yc3QgLnRpdGxlLTNbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTN4LCAudGl0bGUtNFtjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tM3gsIGg0W2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tM3gsIC5yc3QgaDNbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi0zeCwgLnJzdCAuaDNbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi0zeCwgLnJzdCBoMltjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTN4LCAucnN0IGgxW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tM3gsIC5yc3QgLnRpdGxlLTFbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi0zeCwgLnJzdCAudGl0bGUtMltjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTN4LCAucnN0IC50aXRsZS0zW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tM3gsIC50aXRsZS00W2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tM3gsICpbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTN4LCAqW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tM3gge1xuICAgIHBhZGRpbmctbGVmdDogM3JlbTsgfVxuICBwW2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi00eCwgcFtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTR4LCBkaXZbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTR4LCBkaXZbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi00eCwgaDFbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTR4LCAudGl0bGUtMVtjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tNHgsIGgxW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tNHgsIC50aXRsZS0xW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tNHgsIGgyW2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi00eCwgLnJzdCBoMVtjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tNHgsIC5yc3QgLnRpdGxlLTFbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTR4LCAudGl0bGUtMltjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tNHgsIGgyW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tNHgsIC5yc3QgaDFbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi00eCwgLnJzdCAudGl0bGUtMVtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTR4LCAudGl0bGUtMltjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTR4LCBoM1tjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tNHgsIC5oM1tjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tNHgsIC5yc3QgaDJbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTR4LCAucnN0IGgxW2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi00eCwgLnJzdCAudGl0bGUtMVtjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tNHgsIC5yc3QgLnRpdGxlLTJbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTR4LCAudGl0bGUtM1tjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tNHgsIGgzW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tNHgsIC5oM1tjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTR4LCAucnN0IGgyW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tNHgsIC5yc3QgaDFbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi00eCwgLnJzdCAudGl0bGUtMVtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTR4LCAucnN0IC50aXRsZS0yW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tNHgsIC50aXRsZS0zW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tNHgsIGg0W2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi00eCwgLnJzdCBoM1tjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tNHgsIC5yc3QgLmgzW2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi00eCwgLnJzdCBoMltjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tNHgsIC5yc3QgaDFbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTR4LCAucnN0IC50aXRsZS0xW2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi00eCwgLnJzdCAudGl0bGUtMltjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tNHgsIC5yc3QgLnRpdGxlLTNbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTR4LCAudGl0bGUtNFtjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tNHgsIGg0W2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tNHgsIC5yc3QgaDNbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi00eCwgLnJzdCAuaDNbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi00eCwgLnJzdCBoMltjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTR4LCAucnN0IGgxW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tNHgsIC5yc3QgLnRpdGxlLTFbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQuaWNvbi00eCwgLnJzdCAudGl0bGUtMltjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTR4LCAucnN0IC50aXRsZS0zW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tNHgsIC50aXRsZS00W2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tNHgsICpbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdC5pY29uLTR4LCAqW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0Lmljb24tNHgge1xuICAgIHBhZGRpbmctbGVmdDogNHJlbTsgfVxuICBwW2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQ6YmVmb3JlLCBwW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0OmJlZm9yZSwgZGl2W2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQ6YmVmb3JlLCBkaXZbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQ6YmVmb3JlLCBoMVtjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0OmJlZm9yZSwgLnRpdGxlLTFbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdDpiZWZvcmUsIGgxW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0OmJlZm9yZSwgLnRpdGxlLTFbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQ6YmVmb3JlLCBoMltjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0OmJlZm9yZSwgLnJzdCBoMVtjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0OmJlZm9yZSwgLnJzdCAudGl0bGUtMVtjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0OmJlZm9yZSwgLnRpdGxlLTJbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdDpiZWZvcmUsIGgyW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0OmJlZm9yZSwgLnJzdCBoMVtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdDpiZWZvcmUsIC5yc3QgLnRpdGxlLTFbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQ6YmVmb3JlLCAudGl0bGUtMltjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdDpiZWZvcmUsIGgzW2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQ6YmVmb3JlLCAuaDNbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdDpiZWZvcmUsIC5yc3QgaDJbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdDpiZWZvcmUsIC5yc3QgaDFbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdDpiZWZvcmUsIC5yc3QgLnRpdGxlLTFbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdDpiZWZvcmUsIC5yc3QgLnRpdGxlLTJbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdDpiZWZvcmUsIC50aXRsZS0zW2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQ6YmVmb3JlLCBoM1tjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdDpiZWZvcmUsIC5oM1tjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdDpiZWZvcmUsIC5yc3QgaDJbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQ6YmVmb3JlLCAucnN0IGgxW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0OmJlZm9yZSwgLnJzdCAudGl0bGUtMVtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdDpiZWZvcmUsIC5yc3QgLnRpdGxlLTJbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQ6YmVmb3JlLCAudGl0bGUtM1tjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdDpiZWZvcmUsIGg0W2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQ6YmVmb3JlLCAucnN0IGgzW2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQ6YmVmb3JlLCAucnN0IC5oM1tjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0OmJlZm9yZSwgLnJzdCBoMltjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0OmJlZm9yZSwgLnJzdCBoMVtjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0OmJlZm9yZSwgLnJzdCAudGl0bGUtMVtjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0OmJlZm9yZSwgLnJzdCAudGl0bGUtMltjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0OmJlZm9yZSwgLnJzdCAudGl0bGUtM1tjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0OmJlZm9yZSwgLnRpdGxlLTRbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdDpiZWZvcmUsIGg0W2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0OmJlZm9yZSwgLnJzdCBoM1tjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdDpiZWZvcmUsIC5yc3QgLmgzW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0OmJlZm9yZSwgLnJzdCBoMltjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdDpiZWZvcmUsIC5yc3QgaDFbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQ6YmVmb3JlLCAucnN0IC50aXRsZS0xW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0OmJlZm9yZSwgLnJzdCAudGl0bGUtMltjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdDpiZWZvcmUsIC5yc3QgLnRpdGxlLTNbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQ6YmVmb3JlLCAudGl0bGUtNFtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdDpiZWZvcmUsICpbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdDpiZWZvcmUsICpbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQ6YmVmb3JlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA1MCU7XG4gICAgbGVmdDogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC01MCUpO1xuICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwJSk7XG4gICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwJSk7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC01MCUpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC01MCUpOyB9XG4gIHBbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdCA+ICosIHBbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQgPiAqLCBkaXZbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdCA+ICosIGRpdltjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdCA+ICosIGgxW2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQgPiAqLCAudGl0bGUtMVtjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0ID4gKiwgaDFbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQgPiAqLCAudGl0bGUtMVtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdCA+ICosIGgyW2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQgPiAqLCAucnN0IGgxW2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQgPiAqLCAucnN0IC50aXRsZS0xW2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQgPiAqLCAudGl0bGUtMltjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0ID4gKiwgaDJbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQgPiAqLCAucnN0IGgxW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0ID4gKiwgLnJzdCAudGl0bGUtMVtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdCA+ICosIC50aXRsZS0yW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0ID4gKiwgaDNbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdCA+ICosIC5oM1tjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0ID4gKiwgLnJzdCBoMltjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0ID4gKiwgLnJzdCBoMVtjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0ID4gKiwgLnJzdCAudGl0bGUtMVtjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0ID4gKiwgLnJzdCAudGl0bGUtMltjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0ID4gKiwgLnRpdGxlLTNbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdCA+ICosIGgzW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0ID4gKiwgLmgzW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0ID4gKiwgLnJzdCBoMltjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdCA+ICosIC5yc3QgaDFbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQgPiAqLCAucnN0IC50aXRsZS0xW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0ID4gKiwgLnJzdCAudGl0bGUtMltjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdCA+ICosIC50aXRsZS0zW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0ID4gKiwgaDRbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdCA+ICosIC5yc3QgaDNbY2xhc3NePVwiaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdCA+ICosIC5yc3QgLmgzW2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQgPiAqLCAucnN0IGgyW2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQgPiAqLCAucnN0IGgxW2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQgPiAqLCAucnN0IC50aXRsZS0xW2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQgPiAqLCAucnN0IC50aXRsZS0yW2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQgPiAqLCAucnN0IC50aXRsZS0zW2NsYXNzXj1cImljb24tXCJdLmljb24tY2VudGVyLWxlZnQgPiAqLCAudGl0bGUtNFtjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0ID4gKiwgaDRbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQgPiAqLCAucnN0IGgzW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0ID4gKiwgLnJzdCAuaDNbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQgPiAqLCAucnN0IGgyW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0ID4gKiwgLnJzdCBoMVtjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdCA+ICosIC5yc3QgLnRpdGxlLTFbY2xhc3MqPVwiIGljb24tXCJdLmljb24tY2VudGVyLWxlZnQgPiAqLCAucnN0IC50aXRsZS0yW2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0ID4gKiwgLnJzdCAudGl0bGUtM1tjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdCA+ICosIC50aXRsZS00W2NsYXNzKj1cIiBpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0ID4gKiwgKltjbGFzc149XCJpY29uLVwiXS5pY29uLWNlbnRlci1sZWZ0ID4gKiwgKltjbGFzcyo9XCIgaWNvbi1cIl0uaWNvbi1jZW50ZXItbGVmdCA+ICoge1xuICAgIG1hcmdpbi1sZWZ0OiAwLjMxMjVyZW07IH1cblxuLmJ1dHRvbltjbGFzc149XCJpY29uLVwiXSwgLmJ1dHRvbltjbGFzcyo9XCIgaWNvbi1cIl0ge1xuICBmb250LWZhbWlseTogaW5oZXJpdDsgfVxuICAuYnV0dG9uW2NsYXNzXj1cImljb24tXCJdOmJlZm9yZSwgLmJ1dHRvbltjbGFzcyo9XCIgaWNvbi1cIl06YmVmb3JlIHtcbiAgICBmb250LWZhbWlseTogJ2ljb21vb24nO1xuICAgIG1hcmdpbi1yaWdodDogMC4zMTI1cmVtO1xuICAgIHNwZWFrOiBub25lO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIGZvbnQtdmFyaWFudDogbm9ybWFsO1xuICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIC8qIEJldHRlciBGb250IFJlbmRlcmluZyA9PT09PT09PT09PSAqL1xuICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7IH1cbiAgLmJ1dHRvbltjbGFzc149XCJpY29uLVwiXS5pY29BZnQ6YmVmb3JlLCAuYnV0dG9uW2NsYXNzKj1cIiBpY29uLVwiXS5pY29BZnQ6YmVmb3JlIHtcbiAgICBwb3NpdGlvbjogcmVsdGl2ZTtcbiAgICByaWdodDogMC41cmVtO1xuICAgIHdpZHRoOiAycmVtOyB9XG5cbi5pY29uLTJ4IHtcbiAgZm9udC1zaXplOiAycmVtOyB9XG5cbi5pY29uLTN4IHtcbiAgZm9udC1zaXplOiAzcmVtOyB9XG5cbi5pY29uLTR4IHtcbiAgZm9udC1zaXplOiA0cmVtOyB9XG5cbi5pY29uLWNvbGxlY3Rpb25zOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7qSeXCI7IH1cblxuLmljb24tdGFnOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7qSfXCI7IH1cblxuLmljb24tY2xvc2U6YmVmb3JlIHtcbiAgY29udGVudDogXCLupJ1cIjsgfVxuXG4uaWNvbi1sb25nX2Fycm93X2xlZnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLupJxcIjsgfVxuXG4uaWNvbi1sb25nX2Fycm93X3JpZ2h0OmJlZm9yZSB7XG4gIGZvbnQtc2l6ZTogMS44cmVtO1xuICBjb250ZW50OiBcIu6km1wiOyB9XG5cbi5pY29uLWFycm93LXJpZ2h0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7qSVXCI7IH1cblxuLmljb24tYXJyb3ctcmlnaHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLupJVcIjsgfVxuXG4uaWNvbi1kb3dubG9hZDpiZWZvcmUge1xuICBjb250ZW50OiBcIu6kllwiOyB9XG5cbi5pY29uLWZpbG0xOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7qSXXCI7IH1cblxuLmljb24tbWFwMTpiZWZvcmUge1xuICBjb250ZW50OiBcIu6kmFwiOyB9XG5cbi5pY29uLW1lc3NhZ2UtY2lyY2xlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7qSZXCI7IH1cblxuLmljb24tdmlkZW9jYW06YmVmb3JlIHtcbiAgY29udGVudDogXCLupJpcIjsgfVxuXG4uaWNvbi1jb2xsZWN0aW9uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7qSNXCI7IH1cblxuLmljb24tZXhwb3NpdGlvbnM6YmVmb3JlIHtcbiAgY29udGVudDogXCLupI5cIjsgfVxuXG4uaWNvbi1vdXRpbHM6YmVmb3JlIHtcbiAgY29udGVudDogXCLupI9cIjsgfVxuXG4uaWNvbi1yZXBlcmVzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7qSQXCI7IH1cblxuLmljb24tY2FsZW5kYXI6YmVmb3JlLCAuaWNvbi12aXNpdG1vcmUyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7qSKXCI7IH1cblxuLmljb24tbXVzZXVtbW9yZTpiZWZvcmUsIC5pY29uLXZpc2l0bW9yZTM6YmVmb3JlIHtcbiAgY29udGVudDogXCLupItcIjsgfVxuXG4uaWNvbi1wbGFuOmJlZm9yZSwgLmljb24tdmlzaXRtb3JlMTpiZWZvcmUge1xuICBjb250ZW50OiBcIu6kjFwiOyB9XG5cbi5pY29uLXBsYXk6YmVmb3JlIHtcbiAgY29udGVudDogXCLupIlcIjsgfVxuXG4uaWNvbi1tYWlsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7qSEXCI7IH1cblxuLmljb24tY2xvdWRfZG9jOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7qSFXCI7IH1cblxuLmljb24tY29tbWVudDpiZWZvcmUge1xuICBjb250ZW50OiBcIu6khlwiOyB9XG5cbi5pY29uLWRvYzpiZWZvcmUge1xuICBjb250ZW50OiBcIu6kh1wiOyB9XG5cbi5pY29uLWxpbmtkb2M6YmVmb3JlIHtcbiAgY29udGVudDogXCLupIhcIjsgfVxuXG4uaWNvbi1saW5rOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7qSDXCI7IH1cblxuLmljb24tYXJyb19sZWZ0OmJlZm9yZSwgLmZhLWNoZXZyb24tbGVmdDpiZWZvcmUsIC5zbGljay1wcmV2OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7qSAXCI7IH1cblxuLmljb24tYXJyb19yaWdodDpiZWZvcmUsIC5mYS1jaGV2cm9uLXJpZ2h0OmJlZm9yZSwgdWwuYXJyb3ctMiBsaTpub3QoLm5vLWJ1bGxldCk6YmVmb3JlLCB1bC5jaGV2cm9uOm5vdCguZGVmZXIpIGxpOm5vdCgubm8tYnVsbGV0KTpiZWZvcmUsIHVsLmNoZXZyb24uZGVmZXIgbGk6bm90KC5uby1idWxsZXQpID4gOmZpcnN0LWNoaWxkOmJlZm9yZSwgdWwuY2hldnJvbi5zbWFsbGVyIGxpOm5vdCgubm8tYnVsbGV0KTpiZWZvcmUsIC5zbGljay1uZXh0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7qSBXCI7IH1cblxuLmljb24tbWFwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7qSCXCI7IH1cblxuLmljb24taW1hZ2U6YmVmb3JlIHtcbiAgY29udGVudDogXCLupJNcIjsgfVxuXG4uaWNvbi12aWRlbzpiZWZvcmUge1xuICBjb250ZW50OiBcIu6klFwiOyB9XG5cbi5pY29uLXNvdW5kOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7qSSXCI7IH1cblxuLmljb24tc2VhcmNoOmJlZm9yZSwgLmZhLXNlYXJjaDpiZWZvcmUge1xuICBjb250ZW50OiBcIu6kkVwiOyB9XG5cbi5pY29uLW11c2ljOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74CBXCI7IH1cblxuLmljb24tZmlsbTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+AiFwiOyB9XG5cbi5pY29uLXZvbHVtZS11cDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+AqFwiOyB9XG5cbi5pY29uLXZpZGVvLWNhbWVyYTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+AvVwiOyB9XG5cbi5pY29uLWltYWdlMjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+AvlwiOyB9XG5cbi5pY29uLXBob3RvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74C+XCI7IH1cblxuLmljb24tcGljdHVyZS1vOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74C+XCI7IH1cblxuLmljb24tcGVuY2lsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74GAXCI7IH1cblxuLmljb24tcXVlc3Rpb24tY2lyY2xlOmJlZm9yZSwgLmZhLXF1ZXN0aW9uLWNpcmNsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+BmVwiOyB9XG5cbi5pY29uLWV5ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+BrlwiOyB9XG5cbi5pY29uLWV5ZS1zbGFzaDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+BsFwiOyB9XG5cbi5pY29uLXR3aXR0ZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgplcIjsgfVxuXG4uaWNvbi1mYWNlYm9vazpiZWZvcmUge1xuICBjb250ZW50OiBcIu+CmlwiOyB9XG5cbi5pY29uLWZpbHRlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu+CsFwiOyB9XG5cbi5pY29uLWZpbGUtdGV4dC1vOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74O2XCI7IH1cblxuLmljb24tb3JkZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhZBcIjsgfVxuXG4uaWNvbi15b3V0dWJlLXNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIu+FplwiOyB9XG5cbi5pY29uLXlvdXR1YmU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhadcIjsgfVxuXG4uaWNvbi1uZXdzcGFwZXItbzpiZWZvcmUge1xuICBjb250ZW50OiBcIu+HqlwiOyB9XG5cbnVsLmFycm93IHtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lOyB9XG4gIHVsLmFycm93Om5vdCguZGVmZXIpIGxpIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZy1sZWZ0OiAxcmVtOyB9XG4gICAgdWwuYXJyb3c6bm90KC5kZWZlcikgbGk6YmVmb3JlIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMC43NXJlbTtcbiAgICAgIGxlZnQ6IC0wLjEyNXJlbTtcbiAgICAgIHdpZHRoOiAwLjc1cmVtO1xuICAgICAgZm9udC1mYW1pbHk6IGljb21vb247XG4gICAgICBjb250ZW50OiBcIj5cIjtcbiAgICAgIGNvbG9yOiAjZGQzMzMzO1xuICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwJSwgLTUwJSk7XG4gICAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlKDAlLCAtNTAlKTtcbiAgICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlKDAlLCAtNTAlKTtcbiAgICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwJSwgLTUwJSk7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwJSwgLTUwJSk7IH1cbiAgdWwuYXJyb3cuZGVmZXIgbGkge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgIHVsLmFycm93LmRlZmVyIGxpID4gKjpmaXJzdC1jaGlsZCB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDEuNXJlbTsgfVxuICAgICAgdWwuYXJyb3cuZGVmZXIgbGkgPiAqOmZpcnN0LWNoaWxkOmJlZm9yZSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwLjZyZW07XG4gICAgICAgIGxlZnQ6IC0wLjEyNXJlbTtcbiAgICAgICAgd2lkdGg6IDAuNzVyZW07XG4gICAgICAgIGZvbnQtZmFtaWx5OiBpY29tb29uO1xuICAgICAgICBjb250ZW50OiBcIj5cIjtcbiAgICAgICAgY29sb3I6ICNkZDMzMzM7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCUsIC01MCUpO1xuICAgICAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlKDAlLCAtNTAlKTtcbiAgICAgICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCUsIC01MCUpO1xuICAgICAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCUsIC01MCUpO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwJSwgLTUwJSk7IH1cblxuLypcbiAqIHVsLmFycm93IGFsaWtlIGJ1dCB3aXRoIGFub3RoZXIgYXJyb3cgaWNvbiBpbnN0ZWFkXG4gKi9cbnVsLmFycm93LTIge1xuICBtYXJnaW4tbGVmdDogMDtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7IH1cbiAgdWwuYXJyb3ctMiBsaSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmctbGVmdDogMS4ycmVtOyB9XG4gICAgdWwuYXJyb3ctMiBsaTpub3QoLm5vLWJ1bGxldCk6YmVmb3JlIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMC43NXJlbTtcbiAgICAgIGxlZnQ6IC0wLjEyNXJlbTtcbiAgICAgIHdpZHRoOiAwLjc1cmVtO1xuICAgICAgZm9udC1mYW1pbHk6IGljb21vb247XG4gICAgICBjb2xvcjogYmxhY2s7XG4gICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKDAlLCAtNTAlKTtcbiAgICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCUsIC01MCUpO1xuICAgICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCUsIC01MCUpO1xuICAgICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKDAlLCAtNTAlKTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAlLCAtNTAlKTsgfVxuICAgIHVsLmFycm93LTIgbGkgKyBsaSB7XG4gICAgICBtYXJnaW4tdG9wOiAwLjVyZW07IH1cblxuLypcbiAqIFVzZSBhIGNoZXZyb24gaWNvblxuICovXG51bC5jaGV2cm9uIHtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lOyB9XG4gIHVsLmNoZXZyb246bm90KC5kZWZlcikgbGkge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nLWxlZnQ6IDEuMWVtOyB9XG4gICAgdWwuY2hldnJvbjpub3QoLmRlZmVyKSBsaTpub3QoLm5vLWJ1bGxldCk6YmVmb3JlIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGxlZnQ6IC0wLjEyNXJlbTtcbiAgICAgIHdpZHRoOiAwLjc1cmVtO1xuICAgICAgZm9udC1mYW1pbHk6IGljb21vb247XG4gICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgY29sb3I6ICNkZDMzMzM7IH1cbiAgdWwuY2hldnJvbi5kZWZlciBsaSA+ICo6Zmlyc3QtY2hpbGQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nLWxlZnQ6IDEuNWVtOyB9XG4gIHVsLmNoZXZyb24uZGVmZXIgbGk6bm90KC5uby1idWxsZXQpID4gKjpmaXJzdC1jaGlsZDpiZWZvcmUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDAuNnJlbTtcbiAgICBsZWZ0OiAtMC4xMjVyZW07XG4gICAgd2lkdGg6IDAuNzVyZW07XG4gICAgZm9udC1mYW1pbHk6IGljb21vb247XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBjb2xvcjogI2RkMzMzMztcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKDAlLCAtNTAlKTtcbiAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlKDAlLCAtNTAlKTtcbiAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwJSwgLTUwJSk7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKDAlLCAtNTAlKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwJSwgLTUwJSk7IH1cbiAgdWwuY2hldnJvbi5iaWdnZXI6bm90KC5kZWZlcikgbGk6bm90KC5uby1idWxsZXQpLFxuICB1bC5jaGV2cm9uLmJpZ2dlci5kZWZlciBsaTpub3QoLm5vLWJ1bGxldCkge1xuICAgIGZvbnQtc2l6ZTogMS4zZW07IH1cbiAgICB1bC5jaGV2cm9uLmJpZ2dlcjpub3QoLmRlZmVyKSBsaTpub3QoLm5vLWJ1bGxldCk6YmVmb3JlLFxuICAgIHVsLmNoZXZyb24uYmlnZ2VyOm5vdCguZGVmZXIpIGxpOm5vdCgubm8tYnVsbGV0KSA+ICo6Zmlyc3QtY2hpbGQ6YmVmb3JlLFxuICAgIHVsLmNoZXZyb24uYmlnZ2VyLmRlZmVyIGxpOm5vdCgubm8tYnVsbGV0KTpiZWZvcmUsXG4gICAgdWwuY2hldnJvbi5iaWdnZXIuZGVmZXIgbGk6bm90KC5uby1idWxsZXQpID4gKjpmaXJzdC1jaGlsZDpiZWZvcmUge1xuICAgICAgZm9udC1zaXplOiAxLjJlbTtcbiAgICAgIHRvcDogMC43NXJlbTsgfVxuICB1bC5jaGV2cm9uLnNtYWxsZXIgbGkge1xuICAgIHBhZGRpbmctbGVmdDogMS4xZW07IH1cbiAgICB1bC5jaGV2cm9uLnNtYWxsZXIgbGk6bm90KC5uby1idWxsZXQpOmJlZm9yZSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBsZWZ0OiAtMC4xMjVyZW07XG4gICAgICB3aWR0aDogMC43NXJlbTtcbiAgICAgIGZvbnQtZmFtaWx5OiBpY29tb29uO1xuICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgIGNvbG9yOiAjMGEwYTBhOyB9XG5cbi8qXG4gKiBMaXN0IGl0ZW1zIGRpdmlkZWQgYnkgYSBib2xkIGJvcmRlclxuICovXG51bC5kaXZpZGVkLFxub2wuZGl2aWRlZCB7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTsgfVxuICB1bC5kaXZpZGVkIGxpICsgbGksXG4gIG9sLmRpdmlkZWQgbGkgKyBsaSB7XG4gICAgbWFyZ2luLXRvcDogZW0tY2FsYygxMHB4KTtcbiAgICBwYWRkaW5nLXRvcDogZW0tY2FsYygxMHB4KTtcbiAgICBib3JkZXItdG9wOiBlbS1jYWxjKDRweCkgc29saWQgI0RERDsgfVxuXG4vKlxuICogTGlzdCBpdGVtcyBkaXZpZGVkIGJ5IGEgYm9sZCBib3JkZXIgYW5kIGFsc28gYm9yZGVyIG9uIHRvcCBhbmQgYm90dG9tIG9mXG4gKiB0aGUgbGlzdCBlbGVtZW50XG4gKi9cbnVsLmxpbmUtc3Vycm91bmQsXG5vbC5saW5lLXN1cnJvdW5kIHtcbiAgYm9yZGVyLXRvcDogNHB4IHNvbGlkICNEREQ7XG4gIGJvcmRlci1ib3R0b206IDRweCBzb2xpZCAjREREOyB9XG4gIHVsLmxpbmUtc3Vycm91bmQgbGksXG4gIG9sLmxpbmUtc3Vycm91bmQgbGkge1xuICAgIHBhZGRpbmctdG9wOiAwLjhlbTtcbiAgICBwYWRkaW5nLWJvdHRvbTogMC44ZW07IH1cbiAgICB1bC5saW5lLXN1cnJvdW5kIGxpICsgbGksXG4gICAgb2wubGluZS1zdXJyb3VuZCBsaSArIGxpIHtcbiAgICAgIGJvcmRlci10b3A6IDRweCBzb2xpZCAjREREOyB9XG5cbi8qXG4gKiBOaWNlbHkgbGlzdGVkIGl0ZW0gd2l0aCBzb21lIG1pbm9yIHZlcnRpY2FsIHNwYWNlcyBhbmQgcmlnaHQgcGFkZGluZ1xuICogKG1vc3RseSBpbnRlbmRlZCB0byB1c2Ugd2l0aCBmbGV4IGxpc3RzKVxuICovXG4ubmljZS1saXN0aW5nIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwOyB9XG4gIC5uaWNlLWxpc3RpbmcuZ3V0dGVyIHtcbiAgICBtYXJnaW46IDFyZW07IH1cbiAgLm5pY2UtbGlzdGluZyA+IGxpIHtcbiAgICBtYXJnaW46IDAgMCAxcmVtICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZy1yaWdodDogMC43NXJlbTsgfVxuXG4vKlxuICogQW5vdGhlciBsaXN0IHdpdGggYXJyb3cgaWNvblxuICovXG4uYXJyb3dMaXN0IHtcbiAgbWFyZ2luOiAwOyB9XG4gIC5hcnJvd0xpc3QgbGkge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBjb2xvcjogIzBhMGEwYTsgfVxuICAgIC5hcnJvd0xpc3QgbGkgYSB7XG4gICAgICBjb2xvcjogIzBhMGEwYTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwLjJyZW07XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cbiAgICAgIC5hcnJvd0xpc3QgbGkgYTpob3ZlciB7XG4gICAgICAgIGNvbG9yOiAjZGQzMzMzOyB9XG4gICAgLmFycm93TGlzdCBsaTpiZWZvcmUge1xuICAgICAgY29udGVudDogJ+6htic7XG4gICAgICBmb250LWZhbWlseTogaWNvbW9vbjtcbiAgICAgIGZvbnQtc2l6ZTogMC43cmVtO1xuICAgICAgY29sb3I6ICNkZDMzMzM7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgdG9wOiAwLjJyZW07IH1cblxuLmxpc3RBbmRMaW5lIHtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICBib3JkZXItdG9wOiA0cHggc29saWQgI0RERDtcbiAgbWFyZ2luOiAwO1xuICBtYXJnaW4tdG9wOiAxLjVyZW07XG4gIGZsb2F0OiBsZWZ0O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAxMDAlOyB9XG4gIC5saXN0QW5kTGluZSBsaSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbjogMDtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI0RERDtcbiAgICBwYWRkaW5nLXRvcDogMC44NHJlbTtcbiAgICBwYWRkaW5nLWJvdHRvbTogMC44NHJlbTsgfVxuICAgIC5saXN0QW5kTGluZSBsaSBhIHtcbiAgICAgIGNvbG9yOiAjMGEwYTBhOyB9XG4gIC5saXN0QW5kTGluZS5iaWdsaW5lcyBsaSB7XG4gICAgcGFkZGluZy10b3A6IDEuMXJlbTtcbiAgICBwYWRkaW5nLWJvdHRvbTogMS4xcmVtO1xuICAgIGJvcmRlci1ib3R0b206IDRweCBzb2xpZCAjZjdmN2Y3OyB9XG4gICAgLmxpc3RBbmRMaW5lLmJpZ2xpbmVzIGxpOmxhc3QtY2hpbGQge1xuICAgICAgYm9yZGVyLWJvdHRvbTogMHB4IHNvbGlkICNmN2Y3Zjc7IH1cblxuLmJpZ0Fycm93IGxpIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nLWxlZnQ6IDEuNzVyZW07IH1cbiAgLmJpZ0Fycm93IGxpOmJlZm9yZSB7XG4gICAgY29udGVudDogJz4nO1xuICAgIGZvbnQtZmFtaWx5OiBpY29tb29uO1xuICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDAuNjVyZW07XG4gICAgbGVmdDogMDtcbiAgICBjb2xvcjogI2RkMzMzMzsgfVxuXG4uZG90TGlzdCB1bC5kb3R0ZWQge1xuICBtYXJnaW46IDA7IH1cblxuLmRvdExpc3QgbGkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGNvbG9yOiAjMGEwYTBhO1xuICBtYXJpbmctbGVmdDogMDtcbiAgcGFkZGluZy1sZWZ0OiAxcmVtOyB9XG4gIC5kb3RMaXN0IGxpIGEge1xuICAgIGNvbG9yOiAjOGE4YThhO1xuICAgIG1hcmdpbi1sZWZ0OiAwLjJyZW07XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG4gIC5kb3RMaXN0IGxpOmJlZm9yZSB7XG4gICAgY29udGVudDogJ+KAoic7XG4gICAgZm9udC1zaXplOiAxLjRyZW07XG4gICAgY29sb3I6ICNkZDMzMzM7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDA7XG4gICAgdG9wOiAwcmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAwLjllbTsgfVxuXG4uZG90TGlzdHNtYWxsIHVsLmRvdHRlZCB7XG4gIG1hcmdpbjogMDsgfVxuXG4uZG90TGlzdHNtYWxsIGxpIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBjb2xvcjogIzBhMGEwYTtcbiAgbWFyaW5nLWxlZnQ6IDA7XG4gIHBhZGRpbmctbGVmdDogMC43cmVtOyB9XG4gIC5kb3RMaXN0c21hbGwgbGkgYSB7XG4gICAgY29sb3I6ICM4YThhOGE7XG4gICAgbWFyZ2luLWxlZnQ6IDAuMXJlbTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cbiAgLmRvdExpc3RzbWFsbCBsaTpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICfigKInO1xuICAgIGZvbnQtc2l6ZTogMC43cmVtO1xuICAgIGNvbG9yOiAjMGEwYTBhO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogMC41cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAwLjllbTsgfVxuXG4vKiBKdXN0IGEgbGlzdCB3aXRob3V0IGJ1bGxldCBhbmQgbWFyZ2luICovXG4uYmxvY2tsaXN0IHtcbiAgbWFyZ2luOiAwO1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7IH1cblxuLyogY291bnRlciBsaXN0ICovXG51bC5jb3VudGVyTGlzdCB7XG4gIG1hcmdpbjogMDtcbiAgY291bnRlci1yZXNldDogbGljO1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7IH1cbiAgdWwuY291bnRlckxpc3QgbGkge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nLWxlZnQ6IDIuNHJlbTtcbiAgICBjb3VudGVyLWluY3JlbWVudDogbGljO1xuICAgIG1hcmdpbi10b3A6IDAuMnJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjRyZW07IH1cbiAgICB1bC5jb3VudGVyTGlzdCBsaTpiZWZvcmUge1xuICAgICAgY29udGVudDogY291bnRlcihsaWMpO1xuICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgd2lkdGg6IDEuNnJlbTtcbiAgICAgIGhlaWdodDogMS42cmVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuNnJlbTtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICBiYWNrZ3JvdW5kOiAjOGE4YThhO1xuICAgICAgY29sb3I6ICNmN2Y3Zjc7XG4gICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC01MCUpO1xuICAgICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcbiAgICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC01MCUpO1xuICAgICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC01MCUpO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwJSk7IH1cblxuLyogZGFzaExpc3QgKi9cbi5kYXNoLWxpc3QgbGkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmctcmlnaHQ6IDJyZW07IH1cbiAgLmRhc2gtbGlzdCBsaTpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgcGFkZGluZy1sZWZ0OiAycmVtOyB9XG4gICAgLmRhc2gtbGlzdCBsaTpub3QoOmZpcnN0LWNoaWxkKTpiZWZvcmUge1xuICAgICAgY29udGVudDogJ3wnO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwJSk7IH1cblxuLyogaW5saW5lICovXG4uaW5saW5lLWxpc3Qge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cbiAgLmlubGluZS1saXN0IGxpIHtcbiAgICBkaXNwbGF5OiBpbmxpbmU7IH1cblxuLyogZmxleExpc3QgKi9cbi5mbGV4LWxpc3Qge1xuICBkaXNwbGF5OiBmbGV4OyB9XG4gIC5mbGV4LWxpc3QgbGkge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cblxuLmJsYWNrbGlzdCBsaSBhIHtcbiAgY29sb3I6ICMwYTBhMGE7IH1cblxuLnNsaWRlci13cmFwcGVyLnRoZW1lLWRlZmF1bHQge1xuICBtYXgtd2lkdGg6IDEwMCU7IH1cblxuLnRoZW1lLWRlZmF1bHQgLm5pdm9TbGlkZXIgaW1nIHtcbiAgbWF4LXdpZHRoOiAxMDAlOyB9XG5cbi50aGVtZS1kZWZhdWx0IC5uaXZvLWNhcHRpb24gYSB7XG4gIGJvcmRlcjogMDsgfVxuXG4udGhlbWUtZGVmYXVsdCAubml2by1jYXB0aW9uIC5zaG93aGlkZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDByZW07XG4gIHRvcDogMHJlbTtcbiAgYm9yZGVyOiAwO1xuICBtYXJnaW46IDA7IH1cblxuLm5vdHNlZSB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLm5pdm9EZXNjcmlwdGlvbiB7XG4gIGhlaWdodDogMi43cmVtOyB9XG4gIC5uaXZvRGVzY3JpcHRpb24gaDMsIC5uaXZvRGVzY3JpcHRpb24gLmgzLCAubml2b0Rlc2NyaXB0aW9uIC5yc3QgaDIsIC5yc3QgLm5pdm9EZXNjcmlwdGlvbiBoMiwgLm5pdm9EZXNjcmlwdGlvbiAucnN0IGgxLCAucnN0IC5uaXZvRGVzY3JpcHRpb24gaDEsIC5uaXZvRGVzY3JpcHRpb24gLnJzdCAudGl0bGUtMSwgLnJzdCAubml2b0Rlc2NyaXB0aW9uIC50aXRsZS0xLCAubml2b0Rlc2NyaXB0aW9uIC5yc3QgLnRpdGxlLTIsIC5yc3QgLm5pdm9EZXNjcmlwdGlvbiAudGl0bGUtMiwgLm5pdm9EZXNjcmlwdGlvbiAudGl0bGUtMyB7XG4gICAgbWFyZ2luLXJpZ2h0OiA2cmVtOyB9XG5cbi5zaG93TW9yZSAubml2b0Rlc2NyaXB0aW9uIHtcbiAgaGVpZ2h0OiBhdXRvOyB9XG5cbi5zaG93TW9yZSAubm90c2VlIHtcbiAgZGlzcGxheTogaW5saW5lOyB9XG5cbi5zaG93TW9yZSAuc2VlIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4uc2hvd01vcmUgLm5pdm8tY2FwdGlvbiB7XG4gIHBhZGRpbmc6IDAgMTBweDsgfVxuXG4ubml2b0Rlc2NyaXB0aW9uIHtcbiAgb3ZlcmZsb3c6IHNjcm9sbDsgfVxuXG4vKlxuICpcbiAqIFJlc3R5bGluZyBhbmQgYWRkb25zIG9uIEZvdW5kYXRpb24gZm9ybXNcbiAqXG4gKi9cbmZvcm0ge1xuICAvKlxuICAgICAqIFNpbXBsZSBmb3JtIHdpdGggbmljZWx5IHN0YWNrZWQgbGFiZWwraW5wdXRcbiAgICAgKi9cbiAgLypcbiAgICAgKiBBdm9pZCB0byBkaXNwbGF5IHJlcXVpcmVkIG1hcmtzIG9uIGZpZWxkc1xuICAgICAqLyB9XG4gIGZvcm0uY29vbC1zdGFjayBpbnB1dCxcbiAgZm9ybS5jb29sLXN0YWNrIHRleHRhcmVhLFxuICBmb3JtLmNvb2wtc3RhY2sgc2VsZWN0IHtcbiAgICBib3JkZXItcmFkaXVzOiAwLjNyZW07IH1cbiAgZm9ybS5jb29sLXN0YWNrIGxhYmVsIC5hc3RlcmlzayB7XG4gICAgY29sb3I6IGxpZ250ZW4oI2RkMzMzMywgMTAlKTsgfVxuICBmb3JtLmNvb2wtc3RhY2sgLmlubGluZS1yYWRpbyA+IHVsIHtcbiAgICBtYXJnaW46IDA7IH1cbiAgICBmb3JtLmNvb2wtc3RhY2sgLmlubGluZS1yYWRpbyA+IHVsID4gbGkge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG4gICAgICBmb3JtLmNvb2wtc3RhY2sgLmlubGluZS1yYWRpbyA+IHVsID4gbGkgKyBsaSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAxcmVtOyB9XG4gIGZvcm0uY29vbC1zdGFjayAucm93ICsgLnJvdyB7XG4gICAgbWFyZ2luLXRvcDogMXJlbTsgfVxuICBmb3JtLmNvb2wtc3RhY2sgLmZpZWxkLXdyYXBwZXIgbGFiZWwsXG4gIGZvcm0uY29vbC1zdGFjayAuZmllbGQtd3JhcHBlciAubGFiZWwge1xuICAgIG1hcmdpbi1ib3R0b206IDAuNXJlbTsgfVxuICBmb3JtLmNvb2wtc3RhY2sgLmZpZWxkLXdyYXBwZXIgKyAuZmllbGQtd3JhcHBlciB7XG4gICAgbWFyZ2luLXRvcDogMC41cmVtOyB9XG4gIGZvcm0gLmRpc2NyZWV0IGxhYmVsIC5hc3RlcmlzayB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuXG4vKlxuICogQ2xlYW4gZmxhdCBmb3JtIHdpdGggbGFiZWwgYW5kIGlucHV0IG9uIHRoZSBzYW1lIGJhc2VsaW5lXG4gKlxuICogQm90aCBzdXBwb3J0IHJlYWN0LWZvcm0gKHNtYXJ0LSoqKSBhbmQgY3Jpc3B5IGZvcm1zIChob2xkZXIpXG4gKi9cbi5mbGF0LWZvcm0ge1xuICAvKiBXaGVuIHRoZXJlIGlzIGEgZm9ybSB3aXRob3V0IGZpZWxkc2V0LCBuZWVkIHRvIGZpbGwgYmcgKi8gfVxuICAuZmxhdC1mb3JtIGZvcm0gLnNtYXJ0LWZpZWxkOjpiZWZvcmUsIC5mbGF0LWZvcm0gZm9ybSAuc21hcnQtZmllbGQ6OmFmdGVyLFxuICAuZmxhdC1mb3JtIGZvcm0gLmhvbGRlcjo6YmVmb3JlLFxuICAuZmxhdC1mb3JtIGZvcm0gLmhvbGRlcjo6YWZ0ZXIsXG4gIC5mbGF0LWZvcm0gLndyYXBwZXIgLnNtYXJ0LWZpZWxkOjpiZWZvcmUsXG4gIC5mbGF0LWZvcm0gLndyYXBwZXIgLnNtYXJ0LWZpZWxkOjphZnRlcixcbiAgLmZsYXQtZm9ybSAud3JhcHBlciAuaG9sZGVyOjpiZWZvcmUsXG4gIC5mbGF0LWZvcm0gLndyYXBwZXIgLmhvbGRlcjo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcgJztcbiAgICBkaXNwbGF5OiB0YWJsZTsgfVxuICAuZmxhdC1mb3JtIGZvcm0gLnNtYXJ0LWZpZWxkOjphZnRlcixcbiAgLmZsYXQtZm9ybSBmb3JtIC5ob2xkZXI6OmFmdGVyLFxuICAuZmxhdC1mb3JtIC53cmFwcGVyIC5zbWFydC1maWVsZDo6YWZ0ZXIsXG4gIC5mbGF0LWZvcm0gLndyYXBwZXIgLmhvbGRlcjo6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIC5mbGF0LWZvcm0gZm9ybSAuc21hcnQtZmllbGQgbGFiZWwsXG4gIC5mbGF0LWZvcm0gZm9ybSAuaG9sZGVyIGxhYmVsLFxuICAuZmxhdC1mb3JtIC53cmFwcGVyIC5zbWFydC1maWVsZCBsYWJlbCxcbiAgLmZsYXQtZm9ybSAud3JhcHBlciAuaG9sZGVyIGxhYmVsIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgZm9udC1zaXplOiAxLjJyZW07XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBjb2xvcjogIzBhMGEwYTtcbiAgICBwYWRkaW5nOiAwLjVyZW0gMS41cmVtIDAuNXJlbSAwLjVyZW07IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuZmxhdC1mb3JtIGZvcm0gLnNtYXJ0LWZpZWxkIGxhYmVsLFxuICAgICAgLmZsYXQtZm9ybSBmb3JtIC5ob2xkZXIgbGFiZWwsXG4gICAgICAuZmxhdC1mb3JtIC53cmFwcGVyIC5zbWFydC1maWVsZCBsYWJlbCxcbiAgICAgIC5mbGF0LWZvcm0gLndyYXBwZXIgLmhvbGRlciBsYWJlbCB7XG4gICAgICAgIHdpZHRoOiAzMyU7XG4gICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxLjVyZW07IH0gfVxuICAuZmxhdC1mb3JtIGZvcm0gLnNtYXJ0LWZpZWxkIHNlbGVjdCxcbiAgLmZsYXQtZm9ybSBmb3JtIC5zbWFydC1maWVsZCBpbnB1dFt0eXBlPVwidGV4dFwiXSxcbiAgLmZsYXQtZm9ybSBmb3JtIC5zbWFydC1maWVsZCBpbnB1dFt0eXBlPVwicGFzc3dvcmRcIl0sXG4gIC5mbGF0LWZvcm0gZm9ybSAuc21hcnQtZmllbGQgaW5wdXRbdHlwZT1cImRhdGVcIl0sXG4gIC5mbGF0LWZvcm0gZm9ybSAuc21hcnQtZmllbGQgaW5wdXRbdHlwZT1cImRhdGV0aW1lXCJdLFxuICAuZmxhdC1mb3JtIGZvcm0gLnNtYXJ0LWZpZWxkIGlucHV0W3R5cGU9XCJkYXRldGltZS1sb2NhbFwiXSxcbiAgLmZsYXQtZm9ybSBmb3JtIC5zbWFydC1maWVsZCBpbnB1dFt0eXBlPVwibW9udGhcIl0sXG4gIC5mbGF0LWZvcm0gZm9ybSAuc21hcnQtZmllbGQgaW5wdXRbdHlwZT1cIndlZWtcIl0sXG4gIC5mbGF0LWZvcm0gZm9ybSAuc21hcnQtZmllbGQgaW5wdXRbdHlwZT1cImVtYWlsXCJdLFxuICAuZmxhdC1mb3JtIGZvcm0gLnNtYXJ0LWZpZWxkIGlucHV0W3R5cGU9XCJudW1iZXJcIl0sXG4gIC5mbGF0LWZvcm0gZm9ybSAuc21hcnQtZmllbGQgaW5wdXRbdHlwZT1cInNlYXJjaFwiXSxcbiAgLmZsYXQtZm9ybSBmb3JtIC5zbWFydC1maWVsZCBpbnB1dFt0eXBlPVwidGVsXCJdLFxuICAuZmxhdC1mb3JtIGZvcm0gLnNtYXJ0LWZpZWxkIGlucHV0W3R5cGU9XCJ0aW1lXCJdLFxuICAuZmxhdC1mb3JtIGZvcm0gLnNtYXJ0LWZpZWxkIGlucHV0W3R5cGU9XCJ1cmxcIl0sXG4gIC5mbGF0LWZvcm0gZm9ybSAuc21hcnQtZmllbGQgaW5wdXRbdHlwZT1cImNvbG9yXCJdLFxuICAuZmxhdC1mb3JtIGZvcm0gLnNtYXJ0LWZpZWxkIHRleHRhcmVhLFxuICAuZmxhdC1mb3JtIGZvcm0gLmhvbGRlciBzZWxlY3QsXG4gIC5mbGF0LWZvcm0gZm9ybSAuaG9sZGVyIGlucHV0W3R5cGU9XCJ0ZXh0XCJdLFxuICAuZmxhdC1mb3JtIGZvcm0gLmhvbGRlciBpbnB1dFt0eXBlPVwicGFzc3dvcmRcIl0sXG4gIC5mbGF0LWZvcm0gZm9ybSAuaG9sZGVyIGlucHV0W3R5cGU9XCJkYXRlXCJdLFxuICAuZmxhdC1mb3JtIGZvcm0gLmhvbGRlciBpbnB1dFt0eXBlPVwiZGF0ZXRpbWVcIl0sXG4gIC5mbGF0LWZvcm0gZm9ybSAuaG9sZGVyIGlucHV0W3R5cGU9XCJkYXRldGltZS1sb2NhbFwiXSxcbiAgLmZsYXQtZm9ybSBmb3JtIC5ob2xkZXIgaW5wdXRbdHlwZT1cIm1vbnRoXCJdLFxuICAuZmxhdC1mb3JtIGZvcm0gLmhvbGRlciBpbnB1dFt0eXBlPVwid2Vla1wiXSxcbiAgLmZsYXQtZm9ybSBmb3JtIC5ob2xkZXIgaW5wdXRbdHlwZT1cImVtYWlsXCJdLFxuICAuZmxhdC1mb3JtIGZvcm0gLmhvbGRlciBpbnB1dFt0eXBlPVwibnVtYmVyXCJdLFxuICAuZmxhdC1mb3JtIGZvcm0gLmhvbGRlciBpbnB1dFt0eXBlPVwic2VhcmNoXCJdLFxuICAuZmxhdC1mb3JtIGZvcm0gLmhvbGRlciBpbnB1dFt0eXBlPVwidGVsXCJdLFxuICAuZmxhdC1mb3JtIGZvcm0gLmhvbGRlciBpbnB1dFt0eXBlPVwidGltZVwiXSxcbiAgLmZsYXQtZm9ybSBmb3JtIC5ob2xkZXIgaW5wdXRbdHlwZT1cInVybFwiXSxcbiAgLmZsYXQtZm9ybSBmb3JtIC5ob2xkZXIgaW5wdXRbdHlwZT1cImNvbG9yXCJdLFxuICAuZmxhdC1mb3JtIGZvcm0gLmhvbGRlciB0ZXh0YXJlYSxcbiAgLmZsYXQtZm9ybSAud3JhcHBlciAuc21hcnQtZmllbGQgc2VsZWN0LFxuICAuZmxhdC1mb3JtIC53cmFwcGVyIC5zbWFydC1maWVsZCBpbnB1dFt0eXBlPVwidGV4dFwiXSxcbiAgLmZsYXQtZm9ybSAud3JhcHBlciAuc21hcnQtZmllbGQgaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdLFxuICAuZmxhdC1mb3JtIC53cmFwcGVyIC5zbWFydC1maWVsZCBpbnB1dFt0eXBlPVwiZGF0ZVwiXSxcbiAgLmZsYXQtZm9ybSAud3JhcHBlciAuc21hcnQtZmllbGQgaW5wdXRbdHlwZT1cImRhdGV0aW1lXCJdLFxuICAuZmxhdC1mb3JtIC53cmFwcGVyIC5zbWFydC1maWVsZCBpbnB1dFt0eXBlPVwiZGF0ZXRpbWUtbG9jYWxcIl0sXG4gIC5mbGF0LWZvcm0gLndyYXBwZXIgLnNtYXJ0LWZpZWxkIGlucHV0W3R5cGU9XCJtb250aFwiXSxcbiAgLmZsYXQtZm9ybSAud3JhcHBlciAuc21hcnQtZmllbGQgaW5wdXRbdHlwZT1cIndlZWtcIl0sXG4gIC5mbGF0LWZvcm0gLndyYXBwZXIgLnNtYXJ0LWZpZWxkIGlucHV0W3R5cGU9XCJlbWFpbFwiXSxcbiAgLmZsYXQtZm9ybSAud3JhcHBlciAuc21hcnQtZmllbGQgaW5wdXRbdHlwZT1cIm51bWJlclwiXSxcbiAgLmZsYXQtZm9ybSAud3JhcHBlciAuc21hcnQtZmllbGQgaW5wdXRbdHlwZT1cInNlYXJjaFwiXSxcbiAgLmZsYXQtZm9ybSAud3JhcHBlciAuc21hcnQtZmllbGQgaW5wdXRbdHlwZT1cInRlbFwiXSxcbiAgLmZsYXQtZm9ybSAud3JhcHBlciAuc21hcnQtZmllbGQgaW5wdXRbdHlwZT1cInRpbWVcIl0sXG4gIC5mbGF0LWZvcm0gLndyYXBwZXIgLnNtYXJ0LWZpZWxkIGlucHV0W3R5cGU9XCJ1cmxcIl0sXG4gIC5mbGF0LWZvcm0gLndyYXBwZXIgLnNtYXJ0LWZpZWxkIGlucHV0W3R5cGU9XCJjb2xvclwiXSxcbiAgLmZsYXQtZm9ybSAud3JhcHBlciAuc21hcnQtZmllbGQgdGV4dGFyZWEsXG4gIC5mbGF0LWZvcm0gLndyYXBwZXIgLmhvbGRlciBzZWxlY3QsXG4gIC5mbGF0LWZvcm0gLndyYXBwZXIgLmhvbGRlciBpbnB1dFt0eXBlPVwidGV4dFwiXSxcbiAgLmZsYXQtZm9ybSAud3JhcHBlciAuaG9sZGVyIGlucHV0W3R5cGU9XCJwYXNzd29yZFwiXSxcbiAgLmZsYXQtZm9ybSAud3JhcHBlciAuaG9sZGVyIGlucHV0W3R5cGU9XCJkYXRlXCJdLFxuICAuZmxhdC1mb3JtIC53cmFwcGVyIC5ob2xkZXIgaW5wdXRbdHlwZT1cImRhdGV0aW1lXCJdLFxuICAuZmxhdC1mb3JtIC53cmFwcGVyIC5ob2xkZXIgaW5wdXRbdHlwZT1cImRhdGV0aW1lLWxvY2FsXCJdLFxuICAuZmxhdC1mb3JtIC53cmFwcGVyIC5ob2xkZXIgaW5wdXRbdHlwZT1cIm1vbnRoXCJdLFxuICAuZmxhdC1mb3JtIC53cmFwcGVyIC5ob2xkZXIgaW5wdXRbdHlwZT1cIndlZWtcIl0sXG4gIC5mbGF0LWZvcm0gLndyYXBwZXIgLmhvbGRlciBpbnB1dFt0eXBlPVwiZW1haWxcIl0sXG4gIC5mbGF0LWZvcm0gLndyYXBwZXIgLmhvbGRlciBpbnB1dFt0eXBlPVwibnVtYmVyXCJdLFxuICAuZmxhdC1mb3JtIC53cmFwcGVyIC5ob2xkZXIgaW5wdXRbdHlwZT1cInNlYXJjaFwiXSxcbiAgLmZsYXQtZm9ybSAud3JhcHBlciAuaG9sZGVyIGlucHV0W3R5cGU9XCJ0ZWxcIl0sXG4gIC5mbGF0LWZvcm0gLndyYXBwZXIgLmhvbGRlciBpbnB1dFt0eXBlPVwidGltZVwiXSxcbiAgLmZsYXQtZm9ybSAud3JhcHBlciAuaG9sZGVyIGlucHV0W3R5cGU9XCJ1cmxcIl0sXG4gIC5mbGF0LWZvcm0gLndyYXBwZXIgLmhvbGRlciBpbnB1dFt0eXBlPVwiY29sb3JcIl0sXG4gIC5mbGF0LWZvcm0gLndyYXBwZXIgLmhvbGRlciB0ZXh0YXJlYSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgZm9udC1zaXplOiAxLjJyZW07XG4gICAgYm9yZGVyLXJhZGl1czogMC4zcmVtO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNEREQ7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuZmxhdC1mb3JtIGZvcm0gLnNtYXJ0LWZpZWxkIHNlbGVjdCxcbiAgICAgIC5mbGF0LWZvcm0gZm9ybSAuc21hcnQtZmllbGQgaW5wdXRbdHlwZT1cInRleHRcIl0sXG4gICAgICAuZmxhdC1mb3JtIGZvcm0gLnNtYXJ0LWZpZWxkIGlucHV0W3R5cGU9XCJwYXNzd29yZFwiXSxcbiAgICAgIC5mbGF0LWZvcm0gZm9ybSAuc21hcnQtZmllbGQgaW5wdXRbdHlwZT1cImRhdGVcIl0sXG4gICAgICAuZmxhdC1mb3JtIGZvcm0gLnNtYXJ0LWZpZWxkIGlucHV0W3R5cGU9XCJkYXRldGltZVwiXSxcbiAgICAgIC5mbGF0LWZvcm0gZm9ybSAuc21hcnQtZmllbGQgaW5wdXRbdHlwZT1cImRhdGV0aW1lLWxvY2FsXCJdLFxuICAgICAgLmZsYXQtZm9ybSBmb3JtIC5zbWFydC1maWVsZCBpbnB1dFt0eXBlPVwibW9udGhcIl0sXG4gICAgICAuZmxhdC1mb3JtIGZvcm0gLnNtYXJ0LWZpZWxkIGlucHV0W3R5cGU9XCJ3ZWVrXCJdLFxuICAgICAgLmZsYXQtZm9ybSBmb3JtIC5zbWFydC1maWVsZCBpbnB1dFt0eXBlPVwiZW1haWxcIl0sXG4gICAgICAuZmxhdC1mb3JtIGZvcm0gLnNtYXJ0LWZpZWxkIGlucHV0W3R5cGU9XCJudW1iZXJcIl0sXG4gICAgICAuZmxhdC1mb3JtIGZvcm0gLnNtYXJ0LWZpZWxkIGlucHV0W3R5cGU9XCJzZWFyY2hcIl0sXG4gICAgICAuZmxhdC1mb3JtIGZvcm0gLnNtYXJ0LWZpZWxkIGlucHV0W3R5cGU9XCJ0ZWxcIl0sXG4gICAgICAuZmxhdC1mb3JtIGZvcm0gLnNtYXJ0LWZpZWxkIGlucHV0W3R5cGU9XCJ0aW1lXCJdLFxuICAgICAgLmZsYXQtZm9ybSBmb3JtIC5zbWFydC1maWVsZCBpbnB1dFt0eXBlPVwidXJsXCJdLFxuICAgICAgLmZsYXQtZm9ybSBmb3JtIC5zbWFydC1maWVsZCBpbnB1dFt0eXBlPVwiY29sb3JcIl0sXG4gICAgICAuZmxhdC1mb3JtIGZvcm0gLnNtYXJ0LWZpZWxkIHRleHRhcmVhLFxuICAgICAgLmZsYXQtZm9ybSBmb3JtIC5ob2xkZXIgc2VsZWN0LFxuICAgICAgLmZsYXQtZm9ybSBmb3JtIC5ob2xkZXIgaW5wdXRbdHlwZT1cInRleHRcIl0sXG4gICAgICAuZmxhdC1mb3JtIGZvcm0gLmhvbGRlciBpbnB1dFt0eXBlPVwicGFzc3dvcmRcIl0sXG4gICAgICAuZmxhdC1mb3JtIGZvcm0gLmhvbGRlciBpbnB1dFt0eXBlPVwiZGF0ZVwiXSxcbiAgICAgIC5mbGF0LWZvcm0gZm9ybSAuaG9sZGVyIGlucHV0W3R5cGU9XCJkYXRldGltZVwiXSxcbiAgICAgIC5mbGF0LWZvcm0gZm9ybSAuaG9sZGVyIGlucHV0W3R5cGU9XCJkYXRldGltZS1sb2NhbFwiXSxcbiAgICAgIC5mbGF0LWZvcm0gZm9ybSAuaG9sZGVyIGlucHV0W3R5cGU9XCJtb250aFwiXSxcbiAgICAgIC5mbGF0LWZvcm0gZm9ybSAuaG9sZGVyIGlucHV0W3R5cGU9XCJ3ZWVrXCJdLFxuICAgICAgLmZsYXQtZm9ybSBmb3JtIC5ob2xkZXIgaW5wdXRbdHlwZT1cImVtYWlsXCJdLFxuICAgICAgLmZsYXQtZm9ybSBmb3JtIC5ob2xkZXIgaW5wdXRbdHlwZT1cIm51bWJlclwiXSxcbiAgICAgIC5mbGF0LWZvcm0gZm9ybSAuaG9sZGVyIGlucHV0W3R5cGU9XCJzZWFyY2hcIl0sXG4gICAgICAuZmxhdC1mb3JtIGZvcm0gLmhvbGRlciBpbnB1dFt0eXBlPVwidGVsXCJdLFxuICAgICAgLmZsYXQtZm9ybSBmb3JtIC5ob2xkZXIgaW5wdXRbdHlwZT1cInRpbWVcIl0sXG4gICAgICAuZmxhdC1mb3JtIGZvcm0gLmhvbGRlciBpbnB1dFt0eXBlPVwidXJsXCJdLFxuICAgICAgLmZsYXQtZm9ybSBmb3JtIC5ob2xkZXIgaW5wdXRbdHlwZT1cImNvbG9yXCJdLFxuICAgICAgLmZsYXQtZm9ybSBmb3JtIC5ob2xkZXIgdGV4dGFyZWEsXG4gICAgICAuZmxhdC1mb3JtIC53cmFwcGVyIC5zbWFydC1maWVsZCBzZWxlY3QsXG4gICAgICAuZmxhdC1mb3JtIC53cmFwcGVyIC5zbWFydC1maWVsZCBpbnB1dFt0eXBlPVwidGV4dFwiXSxcbiAgICAgIC5mbGF0LWZvcm0gLndyYXBwZXIgLnNtYXJ0LWZpZWxkIGlucHV0W3R5cGU9XCJwYXNzd29yZFwiXSxcbiAgICAgIC5mbGF0LWZvcm0gLndyYXBwZXIgLnNtYXJ0LWZpZWxkIGlucHV0W3R5cGU9XCJkYXRlXCJdLFxuICAgICAgLmZsYXQtZm9ybSAud3JhcHBlciAuc21hcnQtZmllbGQgaW5wdXRbdHlwZT1cImRhdGV0aW1lXCJdLFxuICAgICAgLmZsYXQtZm9ybSAud3JhcHBlciAuc21hcnQtZmllbGQgaW5wdXRbdHlwZT1cImRhdGV0aW1lLWxvY2FsXCJdLFxuICAgICAgLmZsYXQtZm9ybSAud3JhcHBlciAuc21hcnQtZmllbGQgaW5wdXRbdHlwZT1cIm1vbnRoXCJdLFxuICAgICAgLmZsYXQtZm9ybSAud3JhcHBlciAuc21hcnQtZmllbGQgaW5wdXRbdHlwZT1cIndlZWtcIl0sXG4gICAgICAuZmxhdC1mb3JtIC53cmFwcGVyIC5zbWFydC1maWVsZCBpbnB1dFt0eXBlPVwiZW1haWxcIl0sXG4gICAgICAuZmxhdC1mb3JtIC53cmFwcGVyIC5zbWFydC1maWVsZCBpbnB1dFt0eXBlPVwibnVtYmVyXCJdLFxuICAgICAgLmZsYXQtZm9ybSAud3JhcHBlciAuc21hcnQtZmllbGQgaW5wdXRbdHlwZT1cInNlYXJjaFwiXSxcbiAgICAgIC5mbGF0LWZvcm0gLndyYXBwZXIgLnNtYXJ0LWZpZWxkIGlucHV0W3R5cGU9XCJ0ZWxcIl0sXG4gICAgICAuZmxhdC1mb3JtIC53cmFwcGVyIC5zbWFydC1maWVsZCBpbnB1dFt0eXBlPVwidGltZVwiXSxcbiAgICAgIC5mbGF0LWZvcm0gLndyYXBwZXIgLnNtYXJ0LWZpZWxkIGlucHV0W3R5cGU9XCJ1cmxcIl0sXG4gICAgICAuZmxhdC1mb3JtIC53cmFwcGVyIC5zbWFydC1maWVsZCBpbnB1dFt0eXBlPVwiY29sb3JcIl0sXG4gICAgICAuZmxhdC1mb3JtIC53cmFwcGVyIC5zbWFydC1maWVsZCB0ZXh0YXJlYSxcbiAgICAgIC5mbGF0LWZvcm0gLndyYXBwZXIgLmhvbGRlciBzZWxlY3QsXG4gICAgICAuZmxhdC1mb3JtIC53cmFwcGVyIC5ob2xkZXIgaW5wdXRbdHlwZT1cInRleHRcIl0sXG4gICAgICAuZmxhdC1mb3JtIC53cmFwcGVyIC5ob2xkZXIgaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdLFxuICAgICAgLmZsYXQtZm9ybSAud3JhcHBlciAuaG9sZGVyIGlucHV0W3R5cGU9XCJkYXRlXCJdLFxuICAgICAgLmZsYXQtZm9ybSAud3JhcHBlciAuaG9sZGVyIGlucHV0W3R5cGU9XCJkYXRldGltZVwiXSxcbiAgICAgIC5mbGF0LWZvcm0gLndyYXBwZXIgLmhvbGRlciBpbnB1dFt0eXBlPVwiZGF0ZXRpbWUtbG9jYWxcIl0sXG4gICAgICAuZmxhdC1mb3JtIC53cmFwcGVyIC5ob2xkZXIgaW5wdXRbdHlwZT1cIm1vbnRoXCJdLFxuICAgICAgLmZsYXQtZm9ybSAud3JhcHBlciAuaG9sZGVyIGlucHV0W3R5cGU9XCJ3ZWVrXCJdLFxuICAgICAgLmZsYXQtZm9ybSAud3JhcHBlciAuaG9sZGVyIGlucHV0W3R5cGU9XCJlbWFpbFwiXSxcbiAgICAgIC5mbGF0LWZvcm0gLndyYXBwZXIgLmhvbGRlciBpbnB1dFt0eXBlPVwibnVtYmVyXCJdLFxuICAgICAgLmZsYXQtZm9ybSAud3JhcHBlciAuaG9sZGVyIGlucHV0W3R5cGU9XCJzZWFyY2hcIl0sXG4gICAgICAuZmxhdC1mb3JtIC53cmFwcGVyIC5ob2xkZXIgaW5wdXRbdHlwZT1cInRlbFwiXSxcbiAgICAgIC5mbGF0LWZvcm0gLndyYXBwZXIgLmhvbGRlciBpbnB1dFt0eXBlPVwidGltZVwiXSxcbiAgICAgIC5mbGF0LWZvcm0gLndyYXBwZXIgLmhvbGRlciBpbnB1dFt0eXBlPVwidXJsXCJdLFxuICAgICAgLmZsYXQtZm9ybSAud3JhcHBlciAuaG9sZGVyIGlucHV0W3R5cGU9XCJjb2xvclwiXSxcbiAgICAgIC5mbGF0LWZvcm0gLndyYXBwZXIgLmhvbGRlciB0ZXh0YXJlYSB7XG4gICAgICAgIHdpZHRoOiAzMyU7IH0gfVxuICAgIC5mbGF0LWZvcm0gZm9ybSAuc21hcnQtZmllbGQgc2VsZWN0OmZvY3VzLFxuICAgIC5mbGF0LWZvcm0gZm9ybSAuc21hcnQtZmllbGQgaW5wdXRbdHlwZT1cInRleHRcIl06Zm9jdXMsXG4gICAgLmZsYXQtZm9ybSBmb3JtIC5zbWFydC1maWVsZCBpbnB1dFt0eXBlPVwicGFzc3dvcmRcIl06Zm9jdXMsXG4gICAgLmZsYXQtZm9ybSBmb3JtIC5zbWFydC1maWVsZCBpbnB1dFt0eXBlPVwiZGF0ZVwiXTpmb2N1cyxcbiAgICAuZmxhdC1mb3JtIGZvcm0gLnNtYXJ0LWZpZWxkIGlucHV0W3R5cGU9XCJkYXRldGltZVwiXTpmb2N1cyxcbiAgICAuZmxhdC1mb3JtIGZvcm0gLnNtYXJ0LWZpZWxkIGlucHV0W3R5cGU9XCJkYXRldGltZS1sb2NhbFwiXTpmb2N1cyxcbiAgICAuZmxhdC1mb3JtIGZvcm0gLnNtYXJ0LWZpZWxkIGlucHV0W3R5cGU9XCJtb250aFwiXTpmb2N1cyxcbiAgICAuZmxhdC1mb3JtIGZvcm0gLnNtYXJ0LWZpZWxkIGlucHV0W3R5cGU9XCJ3ZWVrXCJdOmZvY3VzLFxuICAgIC5mbGF0LWZvcm0gZm9ybSAuc21hcnQtZmllbGQgaW5wdXRbdHlwZT1cImVtYWlsXCJdOmZvY3VzLFxuICAgIC5mbGF0LWZvcm0gZm9ybSAuc21hcnQtZmllbGQgaW5wdXRbdHlwZT1cIm51bWJlclwiXTpmb2N1cyxcbiAgICAuZmxhdC1mb3JtIGZvcm0gLnNtYXJ0LWZpZWxkIGlucHV0W3R5cGU9XCJzZWFyY2hcIl06Zm9jdXMsXG4gICAgLmZsYXQtZm9ybSBmb3JtIC5zbWFydC1maWVsZCBpbnB1dFt0eXBlPVwidGVsXCJdOmZvY3VzLFxuICAgIC5mbGF0LWZvcm0gZm9ybSAuc21hcnQtZmllbGQgaW5wdXRbdHlwZT1cInRpbWVcIl06Zm9jdXMsXG4gICAgLmZsYXQtZm9ybSBmb3JtIC5zbWFydC1maWVsZCBpbnB1dFt0eXBlPVwidXJsXCJdOmZvY3VzLFxuICAgIC5mbGF0LWZvcm0gZm9ybSAuc21hcnQtZmllbGQgaW5wdXRbdHlwZT1cImNvbG9yXCJdOmZvY3VzLFxuICAgIC5mbGF0LWZvcm0gZm9ybSAuc21hcnQtZmllbGQgdGV4dGFyZWE6Zm9jdXMsXG4gICAgLmZsYXQtZm9ybSBmb3JtIC5ob2xkZXIgc2VsZWN0OmZvY3VzLFxuICAgIC5mbGF0LWZvcm0gZm9ybSAuaG9sZGVyIGlucHV0W3R5cGU9XCJ0ZXh0XCJdOmZvY3VzLFxuICAgIC5mbGF0LWZvcm0gZm9ybSAuaG9sZGVyIGlucHV0W3R5cGU9XCJwYXNzd29yZFwiXTpmb2N1cyxcbiAgICAuZmxhdC1mb3JtIGZvcm0gLmhvbGRlciBpbnB1dFt0eXBlPVwiZGF0ZVwiXTpmb2N1cyxcbiAgICAuZmxhdC1mb3JtIGZvcm0gLmhvbGRlciBpbnB1dFt0eXBlPVwiZGF0ZXRpbWVcIl06Zm9jdXMsXG4gICAgLmZsYXQtZm9ybSBmb3JtIC5ob2xkZXIgaW5wdXRbdHlwZT1cImRhdGV0aW1lLWxvY2FsXCJdOmZvY3VzLFxuICAgIC5mbGF0LWZvcm0gZm9ybSAuaG9sZGVyIGlucHV0W3R5cGU9XCJtb250aFwiXTpmb2N1cyxcbiAgICAuZmxhdC1mb3JtIGZvcm0gLmhvbGRlciBpbnB1dFt0eXBlPVwid2Vla1wiXTpmb2N1cyxcbiAgICAuZmxhdC1mb3JtIGZvcm0gLmhvbGRlciBpbnB1dFt0eXBlPVwiZW1haWxcIl06Zm9jdXMsXG4gICAgLmZsYXQtZm9ybSBmb3JtIC5ob2xkZXIgaW5wdXRbdHlwZT1cIm51bWJlclwiXTpmb2N1cyxcbiAgICAuZmxhdC1mb3JtIGZvcm0gLmhvbGRlciBpbnB1dFt0eXBlPVwic2VhcmNoXCJdOmZvY3VzLFxuICAgIC5mbGF0LWZvcm0gZm9ybSAuaG9sZGVyIGlucHV0W3R5cGU9XCJ0ZWxcIl06Zm9jdXMsXG4gICAgLmZsYXQtZm9ybSBmb3JtIC5ob2xkZXIgaW5wdXRbdHlwZT1cInRpbWVcIl06Zm9jdXMsXG4gICAgLmZsYXQtZm9ybSBmb3JtIC5ob2xkZXIgaW5wdXRbdHlwZT1cInVybFwiXTpmb2N1cyxcbiAgICAuZmxhdC1mb3JtIGZvcm0gLmhvbGRlciBpbnB1dFt0eXBlPVwiY29sb3JcIl06Zm9jdXMsXG4gICAgLmZsYXQtZm9ybSBmb3JtIC5ob2xkZXIgdGV4dGFyZWE6Zm9jdXMsXG4gICAgLmZsYXQtZm9ybSAud3JhcHBlciAuc21hcnQtZmllbGQgc2VsZWN0OmZvY3VzLFxuICAgIC5mbGF0LWZvcm0gLndyYXBwZXIgLnNtYXJ0LWZpZWxkIGlucHV0W3R5cGU9XCJ0ZXh0XCJdOmZvY3VzLFxuICAgIC5mbGF0LWZvcm0gLndyYXBwZXIgLnNtYXJ0LWZpZWxkIGlucHV0W3R5cGU9XCJwYXNzd29yZFwiXTpmb2N1cyxcbiAgICAuZmxhdC1mb3JtIC53cmFwcGVyIC5zbWFydC1maWVsZCBpbnB1dFt0eXBlPVwiZGF0ZVwiXTpmb2N1cyxcbiAgICAuZmxhdC1mb3JtIC53cmFwcGVyIC5zbWFydC1maWVsZCBpbnB1dFt0eXBlPVwiZGF0ZXRpbWVcIl06Zm9jdXMsXG4gICAgLmZsYXQtZm9ybSAud3JhcHBlciAuc21hcnQtZmllbGQgaW5wdXRbdHlwZT1cImRhdGV0aW1lLWxvY2FsXCJdOmZvY3VzLFxuICAgIC5mbGF0LWZvcm0gLndyYXBwZXIgLnNtYXJ0LWZpZWxkIGlucHV0W3R5cGU9XCJtb250aFwiXTpmb2N1cyxcbiAgICAuZmxhdC1mb3JtIC53cmFwcGVyIC5zbWFydC1maWVsZCBpbnB1dFt0eXBlPVwid2Vla1wiXTpmb2N1cyxcbiAgICAuZmxhdC1mb3JtIC53cmFwcGVyIC5zbWFydC1maWVsZCBpbnB1dFt0eXBlPVwiZW1haWxcIl06Zm9jdXMsXG4gICAgLmZsYXQtZm9ybSAud3JhcHBlciAuc21hcnQtZmllbGQgaW5wdXRbdHlwZT1cIm51bWJlclwiXTpmb2N1cyxcbiAgICAuZmxhdC1mb3JtIC53cmFwcGVyIC5zbWFydC1maWVsZCBpbnB1dFt0eXBlPVwic2VhcmNoXCJdOmZvY3VzLFxuICAgIC5mbGF0LWZvcm0gLndyYXBwZXIgLnNtYXJ0LWZpZWxkIGlucHV0W3R5cGU9XCJ0ZWxcIl06Zm9jdXMsXG4gICAgLmZsYXQtZm9ybSAud3JhcHBlciAuc21hcnQtZmllbGQgaW5wdXRbdHlwZT1cInRpbWVcIl06Zm9jdXMsXG4gICAgLmZsYXQtZm9ybSAud3JhcHBlciAuc21hcnQtZmllbGQgaW5wdXRbdHlwZT1cInVybFwiXTpmb2N1cyxcbiAgICAuZmxhdC1mb3JtIC53cmFwcGVyIC5zbWFydC1maWVsZCBpbnB1dFt0eXBlPVwiY29sb3JcIl06Zm9jdXMsXG4gICAgLmZsYXQtZm9ybSAud3JhcHBlciAuc21hcnQtZmllbGQgdGV4dGFyZWE6Zm9jdXMsXG4gICAgLmZsYXQtZm9ybSAud3JhcHBlciAuaG9sZGVyIHNlbGVjdDpmb2N1cyxcbiAgICAuZmxhdC1mb3JtIC53cmFwcGVyIC5ob2xkZXIgaW5wdXRbdHlwZT1cInRleHRcIl06Zm9jdXMsXG4gICAgLmZsYXQtZm9ybSAud3JhcHBlciAuaG9sZGVyIGlucHV0W3R5cGU9XCJwYXNzd29yZFwiXTpmb2N1cyxcbiAgICAuZmxhdC1mb3JtIC53cmFwcGVyIC5ob2xkZXIgaW5wdXRbdHlwZT1cImRhdGVcIl06Zm9jdXMsXG4gICAgLmZsYXQtZm9ybSAud3JhcHBlciAuaG9sZGVyIGlucHV0W3R5cGU9XCJkYXRldGltZVwiXTpmb2N1cyxcbiAgICAuZmxhdC1mb3JtIC53cmFwcGVyIC5ob2xkZXIgaW5wdXRbdHlwZT1cImRhdGV0aW1lLWxvY2FsXCJdOmZvY3VzLFxuICAgIC5mbGF0LWZvcm0gLndyYXBwZXIgLmhvbGRlciBpbnB1dFt0eXBlPVwibW9udGhcIl06Zm9jdXMsXG4gICAgLmZsYXQtZm9ybSAud3JhcHBlciAuaG9sZGVyIGlucHV0W3R5cGU9XCJ3ZWVrXCJdOmZvY3VzLFxuICAgIC5mbGF0LWZvcm0gLndyYXBwZXIgLmhvbGRlciBpbnB1dFt0eXBlPVwiZW1haWxcIl06Zm9jdXMsXG4gICAgLmZsYXQtZm9ybSAud3JhcHBlciAuaG9sZGVyIGlucHV0W3R5cGU9XCJudW1iZXJcIl06Zm9jdXMsXG4gICAgLmZsYXQtZm9ybSAud3JhcHBlciAuaG9sZGVyIGlucHV0W3R5cGU9XCJzZWFyY2hcIl06Zm9jdXMsXG4gICAgLmZsYXQtZm9ybSAud3JhcHBlciAuaG9sZGVyIGlucHV0W3R5cGU9XCJ0ZWxcIl06Zm9jdXMsXG4gICAgLmZsYXQtZm9ybSAud3JhcHBlciAuaG9sZGVyIGlucHV0W3R5cGU9XCJ0aW1lXCJdOmZvY3VzLFxuICAgIC5mbGF0LWZvcm0gLndyYXBwZXIgLmhvbGRlciBpbnB1dFt0eXBlPVwidXJsXCJdOmZvY3VzLFxuICAgIC5mbGF0LWZvcm0gLndyYXBwZXIgLmhvbGRlciBpbnB1dFt0eXBlPVwiY29sb3JcIl06Zm9jdXMsXG4gICAgLmZsYXQtZm9ybSAud3JhcHBlciAuaG9sZGVyIHRleHRhcmVhOmZvY3VzIHtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkIGxpZ250ZW4oI2RkMzMzMywgMTAlKTsgfVxuICAuZmxhdC1mb3JtIGZvcm0gLnNtYXJ0LWZpZWxkIGlucHV0W3R5cGU9XCJyYWRpb1wiXSxcbiAgLmZsYXQtZm9ybSBmb3JtIC5ob2xkZXIgaW5wdXRbdHlwZT1cInJhZGlvXCJdLFxuICAuZmxhdC1mb3JtIC53cmFwcGVyIC5zbWFydC1maWVsZCBpbnB1dFt0eXBlPVwicmFkaW9cIl0sXG4gIC5mbGF0LWZvcm0gLndyYXBwZXIgLmhvbGRlciBpbnB1dFt0eXBlPVwicmFkaW9cIl0ge1xuICAgIG1hcmdpbjogMC44cmVtIDAuNHJlbSAxcmVtOyB9XG4gIC5mbGF0LWZvcm0gZm9ybSAuc21hcnQtZmllbGQgc2VsZWN0LFxuICAuZmxhdC1mb3JtIGZvcm0gLmhvbGRlciBzZWxlY3QsXG4gIC5mbGF0LWZvcm0gLndyYXBwZXIgLnNtYXJ0LWZpZWxkIHNlbGVjdCxcbiAgLmZsYXQtZm9ybSAud3JhcHBlciAuaG9sZGVyIHNlbGVjdCB7XG4gICAgaGVpZ2h0OiAzcmVtOyB9XG4gIC5mbGF0LWZvcm0gZm9ybSAuc21hcnQtZmllbGQuc21hcnQtZXJyb3IgaW5wdXQsXG4gIC5mbGF0LWZvcm0gZm9ybSAuaG9sZGVyLnNtYXJ0LWVycm9yIGlucHV0LFxuICAuZmxhdC1mb3JtIC53cmFwcGVyIC5zbWFydC1maWVsZC5zbWFydC1lcnJvciBpbnB1dCxcbiAgLmZsYXQtZm9ybSAud3JhcHBlciAuaG9sZGVyLnNtYXJ0LWVycm9yIGlucHV0IHtcbiAgICBib3JkZXItY29sb3I6IHJlZDsgfVxuICAuZmxhdC1mb3JtIGZvcm0gLnNtYXJ0LWZpZWxkLnNtYXJ0LWVycm9yIC5lcnJvci1tZXNzYWdlLFxuICAuZmxhdC1mb3JtIGZvcm0gLmhvbGRlci5zbWFydC1lcnJvciAuZXJyb3ItbWVzc2FnZSxcbiAgLmZsYXQtZm9ybSAud3JhcHBlciAuc21hcnQtZmllbGQuc21hcnQtZXJyb3IgLmVycm9yLW1lc3NhZ2UsXG4gIC5mbGF0LWZvcm0gLndyYXBwZXIgLmhvbGRlci5zbWFydC1lcnJvciAuZXJyb3ItbWVzc2FnZSB7XG4gICAgY29sb3I6IHJlZDtcbiAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgbWFyZ2luLWxlZnQ6IDFlbTsgfVxuICAuZmxhdC1mb3JtIGZvcm0gLnNtYXJ0LWZpZWxkLmVycm9yIHNlbGVjdCxcbiAgLmZsYXQtZm9ybSBmb3JtIC5zbWFydC1maWVsZC5lcnJvciBpbnB1dCxcbiAgLmZsYXQtZm9ybSBmb3JtIC5ob2xkZXIuZXJyb3Igc2VsZWN0LFxuICAuZmxhdC1mb3JtIGZvcm0gLmhvbGRlci5lcnJvciBpbnB1dCxcbiAgLmZsYXQtZm9ybSAud3JhcHBlciAuc21hcnQtZmllbGQuZXJyb3Igc2VsZWN0LFxuICAuZmxhdC1mb3JtIC53cmFwcGVyIC5zbWFydC1maWVsZC5lcnJvciBpbnB1dCxcbiAgLmZsYXQtZm9ybSAud3JhcHBlciAuaG9sZGVyLmVycm9yIHNlbGVjdCxcbiAgLmZsYXQtZm9ybSAud3JhcHBlciAuaG9sZGVyLmVycm9yIGlucHV0IHtcbiAgICBib3JkZXItY29sb3I6IHJlZDtcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtOyB9XG4gIC5mbGF0LWZvcm0gZm9ybSAuc21hcnQtZmllbGQuZXJyb3Igc21hbGwuZXJyb3IsXG4gIC5mbGF0LWZvcm0gZm9ybSAuaG9sZGVyLmVycm9yIHNtYWxsLmVycm9yLFxuICAuZmxhdC1mb3JtIC53cmFwcGVyIC5zbWFydC1maWVsZC5lcnJvciBzbWFsbC5lcnJvcixcbiAgLmZsYXQtZm9ybSAud3JhcHBlciAuaG9sZGVyLmVycm9yIHNtYWxsLmVycm9yIHtcbiAgICBtYXJnaW4tbGVmdDogMWVtO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICBjb2xvcjogcmVkO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gIC5mbGF0LWZvcm0gZm9ybSAuc21hcnQtZmllbGQgLmlubGluZS1yYWRpbyxcbiAgLmZsYXQtZm9ybSBmb3JtIC5ob2xkZXIgLmlubGluZS1yYWRpbyxcbiAgLmZsYXQtZm9ybSAud3JhcHBlciAuc21hcnQtZmllbGQgLmlubGluZS1yYWRpbyxcbiAgLmZsYXQtZm9ybSAud3JhcHBlciAuaG9sZGVyIC5pbmxpbmUtcmFkaW8ge1xuICAgIGZsb2F0OiBsZWZ0OyB9XG4gICAgLmZsYXQtZm9ybSBmb3JtIC5zbWFydC1maWVsZCAuaW5saW5lLXJhZGlvIGxhYmVsLFxuICAgIC5mbGF0LWZvcm0gZm9ybSAuaG9sZGVyIC5pbmxpbmUtcmFkaW8gbGFiZWwsXG4gICAgLmZsYXQtZm9ybSAud3JhcHBlciAuc21hcnQtZmllbGQgLmlubGluZS1yYWRpbyBsYWJlbCxcbiAgICAuZmxhdC1mb3JtIC53cmFwcGVyIC5ob2xkZXIgLmlubGluZS1yYWRpbyBsYWJlbCB7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDA7IH1cbiAgLmZsYXQtZm9ybSBmb3JtIC5zbWFydC1maWVsZC5ob2xkZXItaW5saW5lLXJhZGlvIHVsLFxuICAuZmxhdC1mb3JtIGZvcm0gLmhvbGRlci5ob2xkZXItaW5saW5lLXJhZGlvIHVsLFxuICAuZmxhdC1mb3JtIC53cmFwcGVyIC5zbWFydC1maWVsZC5ob2xkZXItaW5saW5lLXJhZGlvIHVsLFxuICAuZmxhdC1mb3JtIC53cmFwcGVyIC5ob2xkZXIuaG9sZGVyLWlubGluZS1yYWRpbyB1bCB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgZmxvYXQ6IGxlZnQ7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuZmxhdC1mb3JtIGZvcm0gLnNtYXJ0LWZpZWxkLmhvbGRlci1pbmxpbmUtcmFkaW8gdWwsXG4gICAgICAuZmxhdC1mb3JtIGZvcm0gLmhvbGRlci5ob2xkZXItaW5saW5lLXJhZGlvIHVsLFxuICAgICAgLmZsYXQtZm9ybSAud3JhcHBlciAuc21hcnQtZmllbGQuaG9sZGVyLWlubGluZS1yYWRpbyB1bCxcbiAgICAgIC5mbGF0LWZvcm0gLndyYXBwZXIgLmhvbGRlci5ob2xkZXItaW5saW5lLXJhZGlvIHVsIHtcbiAgICAgICAgd2lkdGg6IDMzJTsgfSB9XG4gICAgLmZsYXQtZm9ybSBmb3JtIC5zbWFydC1maWVsZC5ob2xkZXItaW5saW5lLXJhZGlvIHVsIGxpLFxuICAgIC5mbGF0LWZvcm0gZm9ybSAuaG9sZGVyLmhvbGRlci1pbmxpbmUtcmFkaW8gdWwgbGksXG4gICAgLmZsYXQtZm9ybSAud3JhcHBlciAuc21hcnQtZmllbGQuaG9sZGVyLWlubGluZS1yYWRpbyB1bCBsaSxcbiAgICAuZmxhdC1mb3JtIC53cmFwcGVyIC5ob2xkZXIuaG9sZGVyLWlubGluZS1yYWRpbyB1bCBsaSB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxOyB9XG4gICAgICAuZmxhdC1mb3JtIGZvcm0gLnNtYXJ0LWZpZWxkLmhvbGRlci1pbmxpbmUtcmFkaW8gdWwgbGkgbGFiZWwsXG4gICAgICAuZmxhdC1mb3JtIGZvcm0gLmhvbGRlci5ob2xkZXItaW5saW5lLXJhZGlvIHVsIGxpIGxhYmVsLFxuICAgICAgLmZsYXQtZm9ybSAud3JhcHBlciAuc21hcnQtZmllbGQuaG9sZGVyLWlubGluZS1yYWRpbyB1bCBsaSBsYWJlbCxcbiAgICAgIC5mbGF0LWZvcm0gLndyYXBwZXIgLmhvbGRlci5ob2xkZXItaW5saW5lLXJhZGlvIHVsIGxpIGxhYmVsIHtcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgICAgICBsaW5lLWhlaWdodDogMTsgfVxuICAgICAgLmZsYXQtZm9ybSBmb3JtIC5zbWFydC1maWVsZC5ob2xkZXItaW5saW5lLXJhZGlvIHVsIGxpIGlucHV0LFxuICAgICAgLmZsYXQtZm9ybSBmb3JtIC5ob2xkZXIuaG9sZGVyLWlubGluZS1yYWRpbyB1bCBsaSBpbnB1dCxcbiAgICAgIC5mbGF0LWZvcm0gLndyYXBwZXIgLnNtYXJ0LWZpZWxkLmhvbGRlci1pbmxpbmUtcmFkaW8gdWwgbGkgaW5wdXQsXG4gICAgICAuZmxhdC1mb3JtIC53cmFwcGVyIC5ob2xkZXIuaG9sZGVyLWlubGluZS1yYWRpbyB1bCBsaSBpbnB1dCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7IH1cbiAgLmZsYXQtZm9ybSBmb3JtIC5idXR0b24taG9sZGVyLFxuICAuZmxhdC1mb3JtIC53cmFwcGVyIC5idXR0b24taG9sZGVyIHtcbiAgICBwYWRkaW5nOiAxcmVtIDA7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIC5mbGF0LWZvcm0gZm9ybSBmaWVsZHNldCxcbiAgLmZsYXQtZm9ybSBmb3JtIC5maWVsZHNldCxcbiAgLmZsYXQtZm9ybSAud3JhcHBlciBmaWVsZHNldCxcbiAgLmZsYXQtZm9ybSAud3JhcHBlciAuZmllbGRzZXQge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAycmVtIDIuNXJlbTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjOGE4YThhO1xuICAgIGJvcmRlcjogMDsgfVxuICAgIC5mbGF0LWZvcm0gZm9ybSBmaWVsZHNldCBmaWVsZHNldCxcbiAgICAuZmxhdC1mb3JtIGZvcm0gLmZpZWxkc2V0IGZpZWxkc2V0LFxuICAgIC5mbGF0LWZvcm0gLndyYXBwZXIgZmllbGRzZXQgZmllbGRzZXQsXG4gICAgLmZsYXQtZm9ybSAud3JhcHBlciAuZmllbGRzZXQgZmllbGRzZXQge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogMnJlbSAwcmVtOyB9XG4gICAgLmZsYXQtZm9ybSBmb3JtIGZpZWxkc2V0IC5sZWdlbmQsXG4gICAgLmZsYXQtZm9ybSBmb3JtIC5maWVsZHNldCAubGVnZW5kLFxuICAgIC5mbGF0LWZvcm0gLndyYXBwZXIgZmllbGRzZXQgLmxlZ2VuZCxcbiAgICAuZmxhdC1mb3JtIC53cmFwcGVyIC5maWVsZHNldCAubGVnZW5kIHtcbiAgICAgIG1hcmdpbjogMCAwIDIuNXJlbTtcbiAgICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgIGNvbG9yOiAjOGE4YThhO1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICM4YThhOGE7XG4gICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiA1cHg7IH1cbiAgICAuZmxhdC1mb3JtIGZvcm0gZmllbGRzZXQgKyBmaWVsZHNldCxcbiAgICAuZmxhdC1mb3JtIGZvcm0gZmllbGRzZXQgKyBkaXYsXG4gICAgLmZsYXQtZm9ybSBmb3JtIC5maWVsZHNldCArIGZpZWxkc2V0LFxuICAgIC5mbGF0LWZvcm0gZm9ybSAuZmllbGRzZXQgKyBkaXYsXG4gICAgLmZsYXQtZm9ybSAud3JhcHBlciBmaWVsZHNldCArIGZpZWxkc2V0LFxuICAgIC5mbGF0LWZvcm0gLndyYXBwZXIgZmllbGRzZXQgKyBkaXYsXG4gICAgLmZsYXQtZm9ybSAud3JhcHBlciAuZmllbGRzZXQgKyBmaWVsZHNldCxcbiAgICAuZmxhdC1mb3JtIC53cmFwcGVyIC5maWVsZHNldCArIGRpdiB7XG4gICAgICBib3JkZXItdG9wOiAwLjI1cmVtIHNvbGlkICNmN2Y3Zjc7IH1cbiAgLmZsYXQtZm9ybSBmb3JtIC5nZXJhbmNlIGZpZWxkc2V0LFxuICAuZmxhdC1mb3JtIC53cmFwcGVyIC5nZXJhbmNlIGZpZWxkc2V0IHtcbiAgICBwYWRkaW5nLWJvdHRvbTogNHJlbTsgfVxuICAuZmxhdC1mb3JtLm5vLWZpZWxkc2V0cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzhhOGE4YTtcbiAgICBib3JkZXI6IDA7IH1cblxuLmZpZWxkc2V0U2VhcmNoIHtcbiAgYm9yZGVyOiAwO1xuICBwYWRkaW5nOiAwOyB9XG4gIC5maWVsZHNldFNlYXJjaCBsZWdlbmQge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cblxuLypcbiAqIFxuICogUGFnaW5hdGlvblxuICogXG4gKi9cbnVsLnBhZ2luYXRpb24ge1xuICBib3JkZXItdG9wOiA0cHggI0UwRTBFMCBzb2xpZDtcbiAgbWFyZ2luLXRvcDogMXJlbTtcbiAgcGFkZGluZy10b3A6IDFyZW07XG4gIGZsb2F0OiBsZWZ0O1xuICB3aWR0aDogMTAwJTtcbiAgY2xlYXI6IGJvdGg7IH1cbiAgdWwucGFnaW5hdGlvbiBsaSB7XG4gICAgZm9udC1zaXplOiAxLjNyZW07XG4gICAgZm9udC13ZWlnaHQ6IDQwMDsgfVxuICAgIHVsLnBhZ2luYXRpb24gbGkgYSwgdWwucGFnaW5hdGlvbiBsaSBzcGFuIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBib3JkZXI6ICM4YThhOGEgMXB4IHNvbGlkO1xuICAgICAgYmFja2dyb3VuZDogIzBhMGEwYTtcbiAgICAgIGNvbG9yOiAjZjdmN2Y3O1xuICAgICAgcGFkZGluZzogMC4xcmVtIDAuNHJlbTtcbiAgICAgIG1hcmdpbi10b3A6IDAuNHJlbTsgfVxuICAgIHVsLnBhZ2luYXRpb24gbGkuYWN0aXZlIGEsIHVsLnBhZ2luYXRpb24gbGkuYWN0aXZlIHNwYW4ge1xuICAgICAgYm9yZGVyOiAjOGE4YThhIDFweCBzb2xpZDtcbiAgICAgIGJhY2tncm91bmQ6ICNkZDMzMzM7XG4gICAgICBjb2xvcjogI2Y3ZjdmNzsgfVxuICAgIHVsLnBhZ2luYXRpb24gbGkuZGlzYWJsZWQge1xuICAgICAgcGFkZGluZzogMHB4O1xuICAgICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtOyB9XG5cbi8qXG4gKiBDb21tb24gYWRkb25zXG4gKi9cbio6Zm9jdXMge1xuICBvdXRsaW5lOiAwOyB9XG5cbi5yZWxhdGl2ZS1wb3NpdGlvbiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG5pbWcuY2VudGVyZWQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bzsgfVxuXG5pbWcuZXhwYW5kZWQge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhdXRvOyB9XG5cbi5yb3cucm93LWZsdWlkIHtcbiAgbWF4LXdpZHRoOiAxMDAlOyB9XG4gIC5yb3cucm93LWZsdWlkIC5yb3cge1xuICAgIG1hcmdpbjogYXV0bztcbiAgICBtYXgtd2lkdGg6IDc1cmVtO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bzsgfVxuICAgIC5yb3cucm93LWZsdWlkIC5yb3c6OmJlZm9yZSwgLnJvdy5yb3ctZmx1aWQgLnJvdzo6YWZ0ZXIge1xuICAgICAgY29udGVudDogJyAnO1xuICAgICAgZGlzcGxheTogdGFibGU7IH1cbiAgICAucm93LnJvdy1mbHVpZCAucm93OjphZnRlciB7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIC5yb3cucm93LWZsdWlkIC5yb3cucm93LWZsdWlkIHtcbiAgICAgIG1heC13aWR0aDogMTAwJTsgfVxuXG4vKiB2ZXJ0c3BhY2UgZm9yIGEgdG9wIGFuZCBib3R0b20gbWFyZ2luKi9cbi52ZXJ0U3BhY2Uge1xuICBwYWRkaW5nLWJvdHRvbTogMXJlbTtcbiAgcGFkZGluZy10b3A6IDFyZW07IH1cblxuLnZlcnRTcGFjZVgyIHtcbiAgcGFkZGluZy1ib3R0b206IDJyZW07XG4gIHBhZGRpbmctdG9wOiAycmVtOyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLm1hcmdpblRvcExhcmdlIHtcbiAgICBtYXJnaW4tdG9wOiAxcmVtOyB9IH1cblxuLmVtcGhhdGlzbSB7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYzsgfVxuXG4uY2FwaXR1bmRlciB7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyB9XG5cbi5saW5lVW5kZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLmxpbmVVbmRlcjphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gICAgYmFja2dyb3VuZDogIzAwMDtcbiAgICB3aWR0aDogM3JlbTtcbiAgICBoZWlnaHQ6IDNweDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiAtMC41cmVtO1xuICAgIGxlZnQ6IDUwJTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIDAlKTtcbiAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIDAlKTtcbiAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAwJSk7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIDAlKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAwJSk7IH1cblxuLnVucGFkZGVkIHtcbiAgcGFkZGluZzogMDsgfVxuXG4udW5tYXJnaW4ge1xuICBtYXJnaW46IDA7IH1cblxuLmNvbHVtbnMudW5wYWRkZWQge1xuICBwYWRkaW5nOiAwOyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5LjkzNzVlbSkge1xuICAuY29sdW1ucy5zbWFsbC11bnBhZGRlZCB7XG4gICAgcGFkZGluZzogMDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgLmNvbHVtbnMubWVkaXVtLXVucGFkZGVkIHtcbiAgICBwYWRkaW5nOiAwOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtYXgtd2lkdGg6IDc0LjkzNzVlbSkge1xuICAuY29sdW1ucy5sYXJnZS11bnBhZGRlZCB7XG4gICAgcGFkZGluZzogMDsgfSB9XG5cbmJvZHkubW9kYWwtb3BlbiB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIG1pbi1oZWlnaHQ6IDEwMHZoOyB9XG5cbi5yZWxhdGl2ZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG4udW5tYXJnZWQge1xuICBtYXJnaW46IDA7IH1cblxuLypcbiAqIFN1cHBsZW1lbnRhcnkgZGl2aWRlciBjbGFzc2VzXG4gKi9cbi5yb3cuZGl2aWRlciB7XG4gIG1hcmdpbi1ib3R0b206IDAuNjI1cmVtOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAucm93LmRpdmlkZXIge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMS44NzVyZW07IH0gfVxuXG4uY29sdW1ucy5kaXZpZGVyIHtcbiAgbWFyZ2luLWJvdHRvbTogMC4zMTI1cmVtOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuY29sdW1ucy5kaXZpZGVyIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7IH0gfVxuXG5pbWcuZGl2aWRlciB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07IH1cblxuLypcbiAqIFZpc3VhbGx5IHRyYW5zZm9ybSBhIGRyb3Bkb3duIGJ1dHRvbiBpbi50byBhIHNlbGVjdCBsaXN0IHdpdGggdmVydGljYWxcbiAqIHNjcm9sbGJhci4gVGhpcyBpcyB1c2VmdWwgZm9yIGxvbmcgbGlzdCBpdGVtcyB0aGF0IGNhbiBpbXBhY3Qgb24gcGFnZSBzaXplXG4gKi9cbi5mLWRyb3Bkb3duLm92ZXJmbG93IHtcbiAgb3ZlcmZsb3c6IGF1dG87XG4gIGhlaWdodDogMjAwcHg7IH1cbiAgLmYtZHJvcGRvd24ub3ZlcmZsb3cub3ZlcmZsb3ctMTAwIHtcbiAgICBoZWlnaHQ6IDEwMHB4OyB9XG4gIC5mLWRyb3Bkb3duLm92ZXJmbG93Lm92ZXJmbG93LTE1MCB7XG4gICAgaGVpZ2h0OiAxNTBweDsgfVxuICAuZi1kcm9wZG93bi5vdmVyZmxvdy5vdmVyZmxvdy0yMDAge1xuICAgIGhlaWdodDogMjAwcHg7IH1cbiAgLmYtZHJvcGRvd24ub3ZlcmZsb3cub3ZlcmZsb3ctMjUwIHtcbiAgICBoZWlnaHQ6IDI1MHB4OyB9XG4gIC5mLWRyb3Bkb3duLm92ZXJmbG93Lm92ZXJmbG93LTMwMCB7XG4gICAgaGVpZ2h0OiAzMDBweDsgfVxuXG4uc21hbGxyb3VuZGVkIHtcbiAgYm9yZGVyLXJhZGl1czogNnB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB6LWluZGV4OiAwOyB9XG5cbi5jZW50ZXJhYnMge1xuICB0b3A6IDUwJTtcbiAgbGVmdDogNTAlO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpOyB9XG5cbi5ib3R0b21SaWdodGFicyB7XG4gIGJvdHRvbTogMCU7XG4gIHJpZ2h0OiAwJTtcbiAgcG9zaXRpb246IGFic29sdXRlOyB9XG5cbi5ib3R0b21hYnMge1xuICBib3R0b206IDAlO1xuICBsZWZ0OiAwJTtcbiAgcG9zaXRpb246IGFic29sdXRlOyB9XG5cbi5tYXJnaW4ge1xuICBtYXJnaW46IDEuNXJlbTsgfVxuXG4ucm91bmQge1xuICBib3JkZXItcmFkaXVzOiA1MDBweDsgfVxuXG4uYnV0dG9uLmJsYWNrYnV0dG9uIHtcbiAgYmFja2dyb3VuZDogIzBhMGEwYTsgfVxuICAuYnV0dG9uLmJsYWNrYnV0dG9uaG92ZXIge1xuICAgIGJhY2tncm91bmQ6ICNkZDMzMzM7IH1cblxuLmlzLWFjdGl2ZSB7XG4gIGJhY2tncm91bmQ6ICNEREQ7IH1cblxuLmlucHV0LWdyb3VwIC5zdGFydCwgLmlucHV0LWdyb3VwIC5lbmQge1xuICB3aWR0aDogNDglO1xuICBmbG9hdDogbGVmdDsgfVxuXG4uaW5wdXQtZ3JvdXAgLmlucHV0LWdyb3VwLWFkZG9uIHtcbiAgd2lkdGg6IGF1dG87XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7IH1cblxuLmJveCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdG9wOiAwO1xuICBvcGFjaXR5OiAxO1xuICBmbG9hdDogbGVmdDtcbiAgcGFkZGluZzogNjBweCA1MHB4IDQwcHggNTBweDtcbiAgd2lkdGg6IDEwMCU7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIHotaW5kZXg6IDU7IH1cbiAgLmJveC5iYWNrIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDAuOTUpO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwLjk1KTtcbiAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgwLjk1KTtcbiAgICB0b3A6IC0yMHB4O1xuICAgIG9wYWNpdHk6IC44O1xuICAgIHotaW5kZXg6IC0xOyB9XG4gIC5ib3g6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMzBweDtcbiAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IC0xMHB4O1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC42KTtcbiAgICBsZWZ0OiAwO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMC45NSk7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDAuOTUpO1xuICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlKDAuOTUpO1xuICAgIHotaW5kZXg6IC0xOyB9XG5cbi5vdmVyYm94IC50aXRsZSB7XG4gIGNvbG9yOiAjZmZmOyB9XG4gIC5vdmVyYm94IC50aXRsZTpiZWZvcmUge1xuICAgIGJhY2tncm91bmQ6ICNmZmY7IH1cblxuLm1hdGVyaWFsQ29udGFpbmVyIC50aXRsZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBmbG9hdDogbGVmdDtcbiAgbGluZS1oZWlnaHQ6IDQ2cHg7XG4gIGZvbnQtc2l6ZTogMzRweDtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IDJweDtcbiAgY29sb3I6ICNFRDI1NTM7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAubWF0ZXJpYWxDb250YWluZXIgLnRpdGxlOmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICB3aWR0aDogNXB4O1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IC01MHB4O1xuICAgIGJhY2tncm91bmQ6ICNFRDI1NTM7IH1cblxuLm1hdGVyaWFsQ29udGFpbmVyIC5pbnB1dCB7XG4gIHRyYW5zaXRpb246IDMwMG1zIGN1YmljLWJlemllcigwLjQsIDAsIDAuMiwgMSk7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogMzAwbXMgY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC4yLCAxKTtcbiAgLW1zLXRyYW5zaXRpb246IDMwMG1zIGN1YmljLWJlemllcigwLjQsIDAsIDAuMiwgMSk7IH1cbiAgLm1hdGVyaWFsQ29udGFpbmVyIC5pbnB1dCBsYWJlbCwgLm1hdGVyaWFsQ29udGFpbmVyIC5pbnB1dCBpbnB1dCwgLm1hdGVyaWFsQ29udGFpbmVyIC5pbnB1dCAuc3BpbiB7XG4gICAgdHJhbnNpdGlvbjogMzAwbXMgY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC4yLCAxKTtcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IDMwMG1zIGN1YmljLWJlemllcigwLjQsIDAsIDAuMiwgMSk7XG4gICAgLW1zLXRyYW5zaXRpb246IDMwMG1zIGN1YmljLWJlemllcigwLjQsIDAsIDAuMiwgMSk7IH1cblxuLm1hdGVyaWFsQ29udGFpbmVyIC5idXR0b24ge1xuICB0cmFuc2l0aW9uOiAzMDBtcyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIsIDEpO1xuICAtd2Via2l0LXRyYW5zaXRpb246IDMwMG1zIGN1YmljLWJlemllcigwLjQsIDAsIDAuMiwgMSk7XG4gIC1tcy10cmFuc2l0aW9uOiAzMDBtcyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIsIDEpOyB9XG4gIC5tYXRlcmlhbENvbnRhaW5lciAuYnV0dG9uIGJ1dHRvbiAuYnV0dG9uLmxvZ2luIGJ1dHRvbiBpLmZhIHtcbiAgICB0cmFuc2l0aW9uOiAzMDBtcyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIsIDEpO1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogMzAwbXMgY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC4yLCAxKTtcbiAgICAtbXMtdHJhbnNpdGlvbjogMzAwbXMgY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC4yLCAxKTsgfVxuXG4ubWF0ZXJpYWxDb250YWluZXIgLm1hdGVyaWFsLWJ1dHRvbiAuc2hhcGU6YmVmb3JlLCAubWF0ZXJpYWxDb250YWluZXIgLm1hdGVyaWFsLWJ1dHRvbiAuc2hhcGU6YWZ0ZXIge1xuICB0cmFuc2l0aW9uOiAzMDBtcyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIsIDEpO1xuICAtd2Via2l0LXRyYW5zaXRpb246IDMwMG1zIGN1YmljLWJlemllcigwLjQsIDAsIDAuMiwgMSk7XG4gIC1tcy10cmFuc2l0aW9uOiAzMDBtcyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIsIDEpOyB9XG5cbi5tYXRlcmlhbENvbnRhaW5lciAuYnV0dG9uLmxvZ2luIGJ1dHRvbiB7XG4gIHRyYW5zaXRpb246IDMwMG1zIGN1YmljLWJlemllcigwLjQsIDAsIDAuMiwgMSk7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogMzAwbXMgY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC4yLCAxKTtcbiAgLW1zLXRyYW5zaXRpb246IDMwMG1zIGN1YmljLWJlemllcigwLjQsIDAsIDAuMiwgMSk7IH1cblxuLm1hdGVyaWFsLWJ1dHRvbiwgLmFsdC0yLCAubWF0ZXJpYWwtYnV0dG9uIC5zaGFwZSwgLmFsdC0yIC5zaGFwZSwgLmJveCB7XG4gIHRyYW5zaXRpb246IDQwMG1zIGN1YmljLWJlemllcigwLjQsIDAsIDAuMiwgMSk7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogNDAwbXMgY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC4yLCAxKTtcbiAgLW1zLXRyYW5zaXRpb246IDQwMG1zIGN1YmljLWJlemllcigwLjQsIDAsIDAuMiwgMSk7IH1cblxuLm1hdGVyaWFsQ29udGFpbmVyIGlucHV0Oi13ZWJraXQtYXV0b2ZpbGwge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjdmN2Y3ICFpbXBvcnRhbnQ7IH1cblxuLm1hdGVyaWFsQ29udGFpbmVyIC5pbnB1dCB7XG4gIHdpZHRoOiAxMDAlO1xuICBmbG9hdDogbGVmdDsgfVxuICAubWF0ZXJpYWxDb250YWluZXIgLmlucHV0IGxhYmVsLCAubWF0ZXJpYWxDb250YWluZXIgLmlucHV0IGlucHV0LCAubWF0ZXJpYWxDb250YWluZXIgLmlucHV0IC5zcGluIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBmbG9hdDogbGVmdDsgfVxuICAgIC5tYXRlcmlhbENvbnRhaW5lciAuaW5wdXQgbGFiZWw6LXdlYmtpdC1hdXRvZmlsbCwgLm1hdGVyaWFsQ29udGFpbmVyIC5pbnB1dCBpbnB1dDotd2Via2l0LWF1dG9maWxsLCAubWF0ZXJpYWxDb250YWluZXIgLmlucHV0IC5zcGluOi13ZWJraXQtYXV0b2ZpbGwge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDsgfVxuXG4ubWF0ZXJpYWxDb250YWluZXIgLmJ1dHRvbiB7XG4gIHdpZHRoOiAxMDAlO1xuICBmbG9hdDogbGVmdDsgfVxuICAubWF0ZXJpYWxDb250YWluZXIgLmJ1dHRvbiBidXR0b24ge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGZsb2F0OiBsZWZ0OyB9XG5cbi5tYXRlcmlhbENvbnRhaW5lciAuaW5wdXQsIC5tYXRlcmlhbENvbnRhaW5lciAuYnV0dG9uIHtcbiAgbWFyZ2luLXRvcDogMzBweDtcbiAgaGVpZ2h0OiBhdXRvOyB9XG5cbi5tYXRlcmlhbENvbnRhaW5lciAuaW5wdXQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLm1hdGVyaWFsQ29udGFpbmVyIC5pbnB1dCBpbnB1dCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG5cbi5tYXRlcmlhbENvbnRhaW5lciAuYnV0dG9uIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC5tYXRlcmlhbENvbnRhaW5lciAuYnV0dG9uIGJ1dHRvbiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG5cbi5tYXRlcmlhbENvbnRhaW5lciAuaW5wdXQgaW5wdXQge1xuICBoZWlnaHQ6IDYwcHg7XG4gIHRvcDogMTBweDtcbiAgYm9yZGVyOiBub25lO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgZm9udC1zaXplOiAyNHB4O1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjgpO1xuICBmb250LXdlaWdodDogMzAwOyB9XG5cbi5tYXRlcmlhbENvbnRhaW5lciAuaW5wdXQgaW5wdXRbdHlwZT1cInRleHRcIl0sIC5tYXRlcmlhbENvbnRhaW5lciAuaW5wdXQgaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgcmdiYSgwLCAwLCAwLCAwKTsgfVxuICAubWF0ZXJpYWxDb250YWluZXIgLmlucHV0IGlucHV0W3R5cGU9XCJ0ZXh0XCJdOmZvY3VzLCAubWF0ZXJpYWxDb250YWluZXIgLmlucHV0IGlucHV0W3R5cGU9XCJwYXNzd29yZFwiXTpmb2N1cyB7XG4gICAgYm9yZGVyOiAwO1xuICAgIGJveC1zaGFkb3c6IDAgMCAwIHJnYmEoMCwgMCwgMCwgMCk7IH1cblxuLm1hdGVyaWFsQ29udGFpbmVyIC5pbnB1dCBsYWJlbCB7XG4gIGZvbnQtc2l6ZTogMjRweDtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44KTtcbiAgZm9udC13ZWlnaHQ6IDMwMDsgfVxuXG4ubWF0ZXJpYWxDb250YWluZXIgLmJ1dHRvbiBidXR0b24ge1xuICBwYWRkaW5nOiAwO1xuICBmb250LXNpemU6IDI0cHg7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOCk7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7IH1cblxuLm1hdGVyaWFsQ29udGFpbmVyIC5pbnB1dDpiZWZvcmUsIC5tYXRlcmlhbENvbnRhaW5lciAuaW5wdXQgLnNwaW4ge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxcHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwOyB9XG5cbi5tYXRlcmlhbENvbnRhaW5lciAuaW5wdXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcIjtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjEpO1xuICB6LWluZGV4OiAzOyB9XG5cbi5tYXRlcmlhbENvbnRhaW5lciAuaW5wdXQgLnNwaW4ge1xuICBiYWNrZ3JvdW5kOiAjRUQyNTUzO1xuICB6LWluZGV4OiA0O1xuICB3aWR0aDogMDsgfVxuXG4ub3ZlcmJveCAuaW5wdXQgLnNwaW4ge1xuICBiYWNrZ3JvdW5kOiB3aGl0ZTsgfVxuXG4ub3ZlcmJveCAuaW5wdXQ6YmVmb3JlIHtcbiAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpOyB9XG5cbi5tYXRlcmlhbENvbnRhaW5lciAuaW5wdXQgbGFiZWwge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMTBweDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogMjtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBsaW5lLWhlaWdodDogNjBweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRjsgfVxuXG4ubWF0ZXJpYWxDb250YWluZXIgLmJ1dHRvbiB7XG4gIG1hcmdpbi10b3A6IDIwcHg7XG4gIG1hcmdpbjogNDBweCAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB6LWluZGV4OiAyOyB9XG4gIC5tYXRlcmlhbENvbnRhaW5lciAuYnV0dG9uLmxvZ2luIHtcbiAgICB3aWR0aDogNjAlO1xuICAgIGxlZnQ6IDIwJTtcbiAgICBwYWRkaW5nOiAwOyB9XG4gICAgLm1hdGVyaWFsQ29udGFpbmVyIC5idXR0b24ubG9naW4gYnV0dG9uIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgbGluZS1oZWlnaHQ6IDY0cHg7XG4gICAgICBsZWZ0OiAwJTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyOiAzcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjEpO1xuICAgICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMik7IH1cbiAgLm1hdGVyaWFsQ29udGFpbmVyIC5idXR0b24gYnV0dG9uIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBsaW5lLWhlaWdodDogNjRweDtcbiAgICBsZWZ0OiAwJTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXI6IDNweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICBmb250LXNpemU6IDE4cHg7XG4gICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4yKTsgfVxuICAubWF0ZXJpYWxDb250YWluZXIgLmJ1dHRvbi5sb2dpbiB7XG4gICAgbWFyZ2luLXRvcDogMzBweDsgfVxuICAubWF0ZXJpYWxDb250YWluZXIgLmJ1dHRvbiBidXR0b24ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgY29sb3I6ICNFRDI1NTM7XG4gICAgYm9yZGVyOiBub25lOyB9XG4gIC5tYXRlcmlhbENvbnRhaW5lciAuYnV0dG9uLmxvZ2luIGJ1dHRvbi5hY3RpdmUge1xuICAgIGJvcmRlcjogM3B4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7IH1cbiAgICAubWF0ZXJpYWxDb250YWluZXIgLmJ1dHRvbi5sb2dpbiBidXR0b24uYWN0aXZlIHNwYW4ge1xuICAgICAgb3BhY2l0eTogMDtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XG4gICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMCk7XG4gICAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgwKTsgfVxuICAgIC5tYXRlcmlhbENvbnRhaW5lciAuYnV0dG9uLmxvZ2luIGJ1dHRvbi5hY3RpdmUgaS5mYSB7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKSByb3RhdGUoMGRlZyk7XG4gICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSkgcm90YXRlKDBkZWcpO1xuICAgICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMSkgcm90YXRlKDBkZWcpOyB9XG4gIC5tYXRlcmlhbENvbnRhaW5lciAuYnV0dG9uLmxvZ2luIGJ1dHRvbiBpLmZhIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIGxpbmUtaGVpZ2h0OiA2MHB4O1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMCkgcm90YXRlKC00NWRlZyk7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDApIHJvdGF0ZSgtNDVkZWcpO1xuICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlKDApIHJvdGF0ZSgtNDVkZWcpOyB9XG4gIC5tYXRlcmlhbENvbnRhaW5lciAuYnV0dG9uLmxvZ2luIGJ1dHRvbjpob3ZlciB7XG4gICAgY29sb3I6ICNFRDI1NTM7XG4gICAgYm9yZGVyLWNvbG9yOiAjRUQyNTUzOyB9XG4gIC5tYXRlcmlhbENvbnRhaW5lciAuYnV0dG9uIGJ1dHRvbiB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAyOyB9XG5cbi5wYXNzLWZvcmdvdCB7XG4gIHdpZHRoOiAxMDAlO1xuICBmbG9hdDogbGVmdDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjQpO1xuICBmb250LXNpemU6IDE0cHg7IH1cblxuLmNsaWNrLWVmZWN0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIGJhY2tncm91bmQ6ICNFRDI1NTM7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTsgfVxuXG4ub3ZlcmJveCB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICBvdmVyZmxvdzogaW5oZXJpdDtcbiAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgcGFkZGluZzogNjBweCA1MHB4IDQwcHggNTBweDsgfVxuICAub3ZlcmJveCAudGl0bGUsIC5vdmVyYm94IC5idXR0b24sIC5vdmVyYm94IC5pbnB1dCB7XG4gICAgei1pbmRleDogMTExO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgLm92ZXJib3ggLnRpdGxlIHtcbiAgICB3aWR0aDogODAlOyB9XG4gIC5vdmVyYm94IC5pbnB1dCB7XG4gICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICBib3JkZXI6IDA7XG4gICAgYm94LXNoYWRvdzogMCAwIDAgcmdiYSgwLCAwLCAwLCAwKTsgfVxuICAgIC5vdmVyYm94IC5pbnB1dDpmb2N1cyB7XG4gICAgICBib3JkZXI6IDA7XG4gICAgICBib3gtc2hhZG93OiAwIDAgMCByZ2JhKDAsIDAsIDAsIDApOyB9XG4gICAgLm92ZXJib3ggLmlucHV0IGxhYmVsIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNkZDMzMzM7IH1cbiAgICAub3ZlcmJveCAuaW5wdXQgaW5wdXQsIC5vdmVyYm94IC5pbnB1dCBsYWJlbCB7XG4gICAgICBjb2xvcjogI2Y3ZjdmNzsgfVxuICAub3ZlcmJveCAubWF0ZXJpYWwtYnV0dG9uLCAub3ZlcmJveCAuYWx0LTIge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgLm92ZXJib3ggLm1hdGVyaWFsLWJ1dHRvbiAuc2hhcGUsIC5vdmVyYm94IC5hbHQtMiAuc2hhcGUge1xuICAgICAgZGlzcGxheTogYmxvY2s7IH1cblxuLm1hdGVyaWFsLWJ1dHRvbiwgLmFsdC0yIHtcbiAgd2lkdGg6IDEwMHB4O1xuICBoZWlnaHQ6IDEwMHB4O1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGJhY2tncm91bmQ6ICNFRDI1NTM7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA0MHB4O1xuICByaWdodDogLTQwcHg7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgei1pbmRleDogMTAwO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwJSwgMCUpO1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKDAlLCAwJSk7XG4gIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwJSwgMCUpOyB9XG4gIC5tYXRlcmlhbC1idXR0b24gLnNoYXBlLCAuYWx0LTIgLnNoYXBlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTsgfVxuICAgIC5tYXRlcmlhbC1idXR0b24gLnNoYXBlOmJlZm9yZSwgLm1hdGVyaWFsLWJ1dHRvbiAuc2hhcGU6YWZ0ZXIsIC5hbHQtMiAuc2hhcGU6YmVmb3JlLCAuYWx0LTIgLnNoYXBlOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiA1MCU7XG4gICAgICBsZWZ0OiA1MCU7XG4gICAgICB3aWR0aDogMjVweDtcbiAgICAgIGhlaWdodDogNHB4O1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSkgcm90YXRlKDM2MGRlZyk7XG4gICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpIHJvdGF0ZSgzNjBkZWcpO1xuICAgICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpIHJvdGF0ZSgzNjBkZWcpOyB9XG4gICAgLm1hdGVyaWFsLWJ1dHRvbiAuc2hhcGU6YmVmb3JlLCAuYWx0LTIgLnNoYXBlOmJlZm9yZSB7XG4gICAgICB3aWR0aDogMjVweDtcbiAgICAgIGhlaWdodDogNHB4OyB9XG4gICAgLm1hdGVyaWFsLWJ1dHRvbiAuc2hhcGU6YWZ0ZXIsIC5hbHQtMiAuc2hhcGU6YWZ0ZXIge1xuICAgICAgd2lkdGg6IDRweDtcbiAgICAgIGhlaWdodDogMjVweDsgfVxuICAubWF0ZXJpYWwtYnV0dG9uLmFjdGl2ZSwgLmFsdC0yLmFjdGl2ZSB7XG4gICAgdG9wOiA1MCU7XG4gICAgcmlnaHQ6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSg1MCUsIC01MCUpIHJvdGF0ZSgwZGVnKTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKDUwJSwgLTUwJSkgcm90YXRlKDBkZWcpO1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSg1MCUsIC01MCUpIHJvdGF0ZSgwZGVnKTsgfVxuXG4ubWF0ZXJpYWxDb250YWluZXIge1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiA0NjBweDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgbGVmdDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpOyB9XG5cbi5yZXZlYWwtbW9kYWwgLmNsb3NlLXJldmVhbC1tb2RhbCB7XG4gIGNvbG9yOiAjZGQzMzMzO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGZvbnQtc2l6ZTogMi41cmVtO1xuICBmb250LXdlaWdodDogOTAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogLTEuNjI1cmVtO1xuICByaWdodDogLTEuMzc1cmVtO1xuICBiYWNrZ3JvdW5kOiAjZjdmN2Y3O1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDNyZW07XG4gIGhlaWdodDogM3JlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBib3JkZXItcmFkaXVzOiA1MDBweDtcbiAgbGluZS1oZWlnaHQ6IDIuNnJlbTsgfVxuXG4uY2xvc2UtcmV2ZWFsLW1vZGFsIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4uY2xlYXIge1xuICBjbGVhcjogYm90aDsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NC45Mzc1ZW0pIHtcbiAgLnVucGFkZGVkLXNtYWxsIHtcbiAgICBwYWRkaW5nOiAwOyB9IH1cblxuW2RhdGEtbGlua106aG92ZXIge1xuICBjdXJzb3I6IHBvaW50ZXI7IH1cblxuLmNpcmNsZS1pY29uIHtcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpO1xuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDUwJTtcbiAgLW1vei1ib3JkZXItcmFkaXVzOiA1MCU7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgcGFkZGluZzogNHB4O1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiA0cHg7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC44Mik7XG4gIHdpZHRoOiA0cmVtO1xuICBoZWlnaHQ6IDRyZW07IH1cbiAgLmNpcmNsZS1pY29uOmJlZm9yZSB7XG4gICAgbGluZS1oZWlnaHQ6IDMuNHJlbTsgfVxuXG4uY2lyY2xlLXNvY2lhbCB7XG4gIGJvcmRlcjogMnB4IHNvbGlkICMwMDA7XG4gIC13ZWJraXQtYm9yZGVyLXJhZGl1czogNTAlO1xuICAtbW96LWJvcmRlci1yYWRpdXM6IDUwJTtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBwYWRkaW5nOiA0cHg7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDRweDtcbiAgY29sb3I6ICMwMDA7IH1cblxuLmJ1dHRvbi5mdWxsIHtcbiAgd2lkdGg6IC1tb3otY2FsYygxMDAlIC0gM3B4KTtcbiAgd2lkdGg6IC13ZWJraXQtY2FsYygxMDAlIC0gM3B4KTtcbiAgd2lkdGg6IGNhbGMoMTAwJSAtIDNweCk7XG4gIG1hcmdpbjogMXB4O1xuICBtYXJnaW4tYm90dG9tOiAycHg7IH1cblxuI2xhbmdDaG9vc2VyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICNsYW5nQ2hvb3NlciBhIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDJyZW07XG4gICAgcGFkZGluZy1yaWdodDogMXJlbTsgfVxuICAgICNsYW5nQ2hvb3NlciBhOmJlZm9yZSB7XG4gICAgICB0b3A6IC0ycHg7XG4gICAgICBsZWZ0OiAycHg7IH1cbiAgI2xhbmdDaG9vc2VyIC5zaG93aW5VUCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgb3BhY2l0eTogMDtcbiAgICB6LWluZGV4OiAtMTA7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiAxMDAlO1xuICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgYm9yZGVyLWxlZnQ6IDA7IH1cbiAgICAjbGFuZ0Nob29zZXIgLnNob3dpblVQIGEge1xuICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgICAjbGFuZ0Nob29zZXIgLnNob3dpblVQIC5yYW5nZS1zbGlkZXIudmVydGljYWwtcmFuZ2Uge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgbGVmdDogNTAlOyB9XG4gICAgI2xhbmdDaG9vc2VyIC5zaG93aW5VUCAucmFuZ2Utc2xpZGVyLWhhbmRsZSwgI2xhbmdDaG9vc2VyIC5zaG93aW5VUCAucmFuZ2Utc2xpZGVyLWhhbmRsZTpob3ZlciB7XG4gICAgICBoZWlnaHQ6IDEuOXJlbTtcbiAgICAgIHdpZHRoOiAxLjlyZW07XG4gICAgICBib3JkZXItcmFkaXVzOiAxLjlyZW07IH1cbiAgICAjbGFuZ0Nob29zZXIgLnNob3dpblVQIC5yYW5nZS1zbGlkZXItYWN0aXZlLXNlZ21lbnQsICNsYW5nQ2hvb3NlciAuc2hvd2luVVAgLnJhbmdlLXNsaWRlci52ZXJ0aWNhbC1yYW5nZSB7XG4gICAgICBib3JkZXItcmFkaXVzOiAycmVtOyB9XG4gICNsYW5nQ2hvb3Nlcjpob3ZlciAuc2hvd2luVVAge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgei1pbmRleDogMTsgfVxuXG4uZnVsbC13aWR0aCB7XG4gIG1heC13aWR0aDogMTAwJTsgfVxuXG4ub25nbGV0cyB7XG4gIG1hcmdpbjogMDtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICBiYWNrZ3JvdW5kOiAjZjdmN2Y3O1xuICBib3JkZXI6IDFweCBzb2xpZCAjRTBFMEUwO1xuICBib3JkZXI6IG5vbmU7XG4gIGJhY2tncm91bmQ6ICM1NzU3NTc7IH1cbiAgLm9uZ2xldHM6OmJlZm9yZSwgLm9uZ2xldHM6OmFmdGVyIHtcbiAgICBjb250ZW50OiAnICc7XG4gICAgZGlzcGxheTogdGFibGU7IH1cbiAgLm9uZ2xldHM6OmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDsgfVxuICAub25nbGV0cyAudGFiIHtcbiAgICBwYWRkaW5nOiAwLjJyZW0gMXJlbTtcbiAgICBiYWNrZ3JvdW5kOiAjOGE4YThhLCAyMCU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgY29sb3I6ICNmN2Y3Zjc7IH1cbiAgICAub25nbGV0cyAudGFiID4gYSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHBhZGRpbmc6IDEuMjVyZW0gMS41cmVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICBmb250LXNpemU6IDAuNzVyZW07IH1cbiAgICAgIC5vbmdsZXRzIC50YWIgPiBhOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZDogI2Y3ZjdmNzsgfVxuICAgICAgLm9uZ2xldHMgLnRhYiA+IGE6Zm9jdXMsIC5vbmdsZXRzIC50YWIgPiBhW2FyaWEtc2VsZWN0ZWQ9J3RydWUnXSB7XG4gICAgICAgIGJhY2tncm91bmQ6ICNFMEUwRTA7IH1cbiAgICAub25nbGV0cyAudGFiLnNlbGVjdGlvbm5lZCB7XG4gICAgICBiYWNrZ3JvdW5kOiAjZjdmN2Y3O1xuICAgICAgY29sb3I6ICMwYTBhMGE7IH1cbiAgICAgIC5vbmdsZXRzIC50YWIuc2VsZWN0aW9ubmVkOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZDogI2Y3ZjdmNztcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyOyB9XG4gICAgLm9uZ2xldHMgLnRhYjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kOiAjMGEwYTBhO1xuICAgICAgY3Vyc29yOiBwb2ludGVyOyB9XG5cbi5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgei1pbmRleDogMTAwOyB9XG5cbi8qIEF1dG9jb21wbGV0ZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4udWktYXV0b2NvbXBsZXRlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBjdXJzb3I6IGRlZmF1bHQ7XG4gIHotaW5kZXg6IDIwOyB9XG5cbi51aS1hdXRvY29tcGxldGUtbG9hZGluZyB7XG4gIGJhY2tncm91bmQ6IHdoaXRlIHVybChcImltYWdlcy91aS1hbmltX2Jhc2ljXzE2eDE2LmdpZlwiKSByaWdodCBjZW50ZXIgbm8tcmVwZWF0OyB9XG5cbi51aS1oZWxwZXItaGlkZGVuLWFjY2Vzc2libGUge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi8qIHdvcmthcm91bmRzICovXG4qIGh0bWwgLnVpLWF1dG9jb21wbGV0ZSB7XG4gIHdpZHRoOiAxcHg7IH1cblxuLyogd2l0aG91dCB0aGlzLCB0aGUgbWVudSBleHBhbmRzIHRvIDEwMCUgaW4gSUU2ICovXG4vKiBNZW51XG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi51aS1tZW51IHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgcGFkZGluZzogMTBweDtcbiAgbWFyZ2luOiAwO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IGF1dG87XG4gIGJhY2tncm91bmQ6ICNGREZFRkY7XG4gIGJvcmRlcjogMXB4IHNvbGlkICMwYTBhMGE7IH1cblxuLnVpLW1lbnUgLnVpLW1lbnUge1xuICBtYXJnaW4tdG9wOiAtM3B4OyB9XG5cbi51aS1tZW51IC51aS1tZW51LWl0ZW0ge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIHdpZHRoOiBhdXRvO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI0UwRTBFMDsgfVxuICAudWktbWVudSAudWktbWVudS1pdGVtOmhvdmVyIHtcbiAgICBjb2xvcjogI2RkMzMzMzsgfVxuXG4udWktbWVudSAudWktbWVudS1pdGVtIGEge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAuMmVtIC40ZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIHpvb206IDE7IH1cblxuLnVpLW1lbnUgLnVpLW1lbnUtaXRlbSBhLnVpLXN0YXRlLWhvdmVyLFxuLnVpLW1lbnUgLnVpLW1lbnUtaXRlbSBhLnVpLXN0YXRlLWFjdGl2ZSB7XG4gIG1hcmdpbjogLTFweDsgfVxuXG4vKioqKioqIHJlc3VsdHMgKioqKioqKi9cbi5yZXN1bHRzLm1lZGlhLWxpc3Qge1xuICBmbG9hdDogbGVmdDtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi10b3A6IDFyZW07XG4gIHBhZGRpbmctdG9wOiAxcmVtOyB9XG4gIC5yZXN1bHRzLm1lZGlhLWxpc3QgLm1lZGlhIHtcbiAgICBwYWRkaW5nOiAwLjY0cmVtO1xuICAgIGJvcmRlci10b3A6IDFweCBkYXNoZWQgI0RERDtcbiAgICBkaXNwbGF5OiBmbGV4OyB9XG4gICAgLnJlc3VsdHMubWVkaWEtbGlzdCAubWVkaWEgLmZpZ3VyZSB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDAuNjRyZW07IH1cbiAgICAgIC5yZXN1bHRzLm1lZGlhLWxpc3QgLm1lZGlhIC5maWd1cmUgaW1nIHtcbiAgICAgICAgbWluLXdpZHRoOiAyNDBweDsgfVxuXG4jZ2xvYmFsLWFzaWRlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG5cbmRpdi50YWJsZS1jb250YWluZXIge1xuICB3aWR0aDogMTAwJTsgfVxuXG4ubGlicmFyeSAuaGVhZGVyIHtcbiAgbWFyZ2luOiAxNXB4IDA7IH1cblxuLmxpYnJhcnkgLnRodW1ibmFpbHMgaW1nIHtcbiAgbWFyZ2luOiAxMHB4IDA7IH1cblxuLmxpYnJhcnkgLm1lbnUtdGh1bWJuYWlscyB7XG4gIHRleHQtYWxpZ246IGxlZnQ7IH1cblxuLnJlYWRlciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcGFkZGluZy10b3A6IDJyZW07XG4gIHBhZGRpbmctYm90dG9tOiAycmVtOyB9XG4gIC5yZWFkZXIgLmJ0bi1ncm91cCB7XG4gICAgbWFyZ2luLWJvdHRvbTogNXB4OyB9XG4gICAgLnJlYWRlciAuYnRuLWdyb3VwLm1vcmVGb3JpbWcgLmJ1dHRvbiB7XG4gICAgICBmb250LXNpemU6IDEuOHJlbTtcbiAgICAgIHBhZGRpbmc6IDAuNHJlbTsgfVxuICAgICAgLnJlYWRlciAuYnRuLWdyb3VwLm1vcmVGb3JpbWcgLmJ1dHRvbi56b29tIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwOyB9XG4gIC5yZWFkZXIgLnJvdyB7XG4gICAgbWFyZ2luOiAwOyB9XG4gICAgLnJlYWRlciAucm93IC5wcmV2LCAucmVhZGVyIC5yb3cgLm5leHQsIC5yZWFkZXIgLnJvdyAuc3Bpbm5lci1jb250YWluZXIsIC5yZWFkZXIgLnJvdyAuaW1nLWNvbnRhaW5lciB7XG4gICAgICBoZWlnaHQ6IDgwMHB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDgwMHB4O1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgfVxuICAgIC5yZWFkZXIgLnJvdyAubWFpbi1jb250YWluZXIge1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGJhY2tncm91bmQ6ICMwYTBhMGE7IH1cbiAgICAucmVhZGVyIC5yb3cgLnNwaW5uZXItY29udGFpbmVyIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgdGV4dC1zaGFkb3c6IDAgMCA0MHB4IHdoaXRlO1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgIC5yZWFkZXIgLnJvdyAuaW1nLWNvbnRhaW5lci56b29tZWQge1xuICAgICAgb3ZlcmZsb3c6IHNjcm9sbDsgfVxuICAgICAgLnJlYWRlciAucm93IC5pbWctY29udGFpbmVyLnpvb21lZCBpbWcge1xuICAgICAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgICAgIG1heC1oZWlnaHQ6IG5vbmU7XG4gICAgICAgIGN1cnNvcjogem9vbS1vdXQ7IH1cbiAgICAgICAgLnJlYWRlciAucm93IC5pbWctY29udGFpbmVyLnpvb21lZCBpbWcuZHJhZ2dlZCB7XG4gICAgICAgICAgY3Vyc29yOiBtb3ZlOyB9XG4gICAgLnJlYWRlciAucm93IC5pbWctY29udGFpbmVyIGltZyB7XG4gICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgICAgY3Vyc29yOiB6b29tLWluOyB9XG4gIC5yZWFkZXIgLnBhZ2UtZm9ybSB7XG4gICAgd2lkdGg6IDEwMHB4O1xuICAgIG1hcmdpbjogOHB4IGF1dG8gMnJlbSAvIDI7IH1cbiAgICAucmVhZGVyIC5wYWdlLWZvcm0gaW5wdXRbbmFtZT0ncGFnZSddIHtcbiAgICAgIHRleHQtYWxpZ246IHJpZ2h0OyB9XG5cbiNvZmZlbnNpdmUtbW9kYWwge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgei1pbmRleDogMzA7XG4gIGNvbG9yOiAjZjdmN2Y3O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGEwYTBhOyB9XG4gICNvZmZlbnNpdmUtbW9kYWwgbWFpbiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAgICNvZmZlbnNpdmUtbW9kYWwgbWFpbiBoMSwgI29mZmVuc2l2ZS1tb2RhbCBtYWluIC50aXRsZS0xLCAjb2ZmZW5zaXZlLW1vZGFsIG1haW4gcCB7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgICAgICNvZmZlbnNpdmUtbW9kYWwgbWFpbiBoMSBhLCAjb2ZmZW5zaXZlLW1vZGFsIG1haW4gLnRpdGxlLTEgYSwgI29mZmVuc2l2ZS1tb2RhbCBtYWluIHAgYSB7XG4gICAgICAgIHBhZGRpbmc6IDJyZW07IH1cblxuI251bWJlcnBhZ2Uge1xuICB3aWR0aDogYXV0bzsgfVxuICAjbnVtYmVycGFnZSAjcGFnZV9udW1iZXIge1xuICAgIHdpZHRoOiA5MHB4O1xuICAgIGZsb2F0OiBsZWZ0OyB9XG4gICNudW1iZXJwYWdlIC5pbnB1dC1ncm91cC1hZGRvbiB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIGxpbmUtaGVpZ2h0OiAyLjQzNzVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjZyZW07IH1cblxuLmlzTW9iaWxlIC5ob21iYW5fdmlkIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4uaXNNb2JpbGUgLmhvbWJhbl9pbWcge1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG4uaG9tYmFuX2ltZyB7XG4gIG1pbi13aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiA1MHZoO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IG5vbmU7IH1cbiAgLmhvbWJhbl9pbWcgaW1nIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7IH1cblxuZGwuZGwtaG9yaXpvbnRhbCB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgZmxvYXQ6IGxlZnQ7IH1cbiAgZGwuZGwtaG9yaXpvbnRhbCBkdCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMC4zcmVtO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIGNsZWFyOiBsZWZ0O1xuICAgIGNvbG9yOiAjNjY2O1xuICAgIHdpZHRoOiAxMnJlbTsgfVxuICAgIGRsLmRsLWhvcml6b250YWwgZHQ6YWZ0ZXIge1xuICAgICAgY29udGVudDogJyA6ICc7IH1cbiAgZGwuZGwtaG9yaXpvbnRhbCBkZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMC4zcmVtO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIG1hcmdpbi1sZWZ0OiAwLjRyZW07XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDE1cmVtKTsgfVxuXG5kbC5kbC1ob3Jpem9udGFsLXRpZ2h0IHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBmbG9hdDogbGVmdDsgfVxuICBkbC5kbC1ob3Jpem9udGFsLXRpZ2h0IGR0IHtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjNyZW07XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgY2xlYXI6IGxlZnQ7XG4gICAgY29sb3I6ICM2NjY7XG4gICAgd2lkdGg6IDhyZW07IH1cbiAgICBkbC5kbC1ob3Jpem9udGFsLXRpZ2h0IGR0OmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6ICcgOiAnOyB9XG4gIGRsLmRsLWhvcml6b250YWwtdGlnaHQgZGQge1xuICAgIG1hcmdpbi1ib3R0b206IDAuM3JlbTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBtYXJnaW4tbGVmdDogMC40cmVtO1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAxNXJlbSk7IH1cblxuLypcbiAqXG4gKiBBbGwgc3R1ZmYgZm9yIGZvb3RlclxuICpcbiAqL1xuLmZvb3RlciB7XG4gIGZsb2F0OiBsZWZ0O1xuICBtYXJnaW46IDFyZW07XG4gIGJhY2tncm91bmQtY29sb3I6ICNFQ0VDRUY7XG4gIHBhZGRpbmc6IDJyZW0gMXJlbTtcbiAgdGV4dC1hbGlnbjogbGVmdDsgfVxuICAuZm9vdGVyIGkge1xuICAgIGZvbnQtc2l6ZTogMTAwcHg7IH1cblxuLmZvb3RlciBwLCAuZm9vdGVyIGEge1xuICBmb250LXdlaWdodDogMzAwO1xuICBmb250LXNpemU6IC44ZW07IH1cblxuLmZvb3RlciBoNTpiZWZvcmUsIC5mb290ZXIgLnJzdCBoNDpiZWZvcmUsIC5yc3QgLmZvb3RlciBoNDpiZWZvcmUsIC5mb290ZXIgLnJzdCBoMzpiZWZvcmUsIC5yc3QgLmZvb3RlciBoMzpiZWZvcmUsIC5mb290ZXIgLnJzdCAuaDM6YmVmb3JlLCAucnN0IC5mb290ZXIgLmgzOmJlZm9yZSwgLmZvb3RlciAucnN0IGgyOmJlZm9yZSwgLnJzdCAuZm9vdGVyIGgyOmJlZm9yZSwgLmZvb3RlciAucnN0IGgxOmJlZm9yZSwgLnJzdCAuZm9vdGVyIGgxOmJlZm9yZSwgLmZvb3RlciAucnN0IC50aXRsZS0xOmJlZm9yZSwgLnJzdCAuZm9vdGVyIC50aXRsZS0xOmJlZm9yZSwgLmZvb3RlciAucnN0IC50aXRsZS0yOmJlZm9yZSwgLnJzdCAuZm9vdGVyIC50aXRsZS0yOmJlZm9yZSwgLmZvb3RlciAucnN0IC50aXRsZS0zOmJlZm9yZSwgLnJzdCAuZm9vdGVyIC50aXRsZS0zOmJlZm9yZSwgLmZvb3RlciAucnN0IC50aXRsZS00OmJlZm9yZSwgLnJzdCAuZm9vdGVyIC50aXRsZS00OmJlZm9yZSwgLmZvb3RlciAudGl0bGUtNTpiZWZvcmUge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5mb290ZXItbGlua3Mge1xuICBtYXJnaW4tbGVmdDogMC4yNXJlbTtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lOyB9XG4gIC5mb290ZXItbGlua3MgbGkge1xuICAgIG1hcmdpbi10b3A6IC4xZW07IH1cbiAgICAuZm9vdGVyLWxpbmtzIGxpIGEge1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxuXG4ucHJlZm9vdGVyIGE6aG92ZXIge1xuICBjb2xvcjogI2Y3ZjdmNyAhaW1wb3J0YW50OyB9XG5cbiNwcmVmb290ZXIge1xuICBtaXgtYmxlbmQtbW9kZTogbXVsdGlwbHk7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYmFja2dyb3VuZDogIzBhMGEwYTsgfVxuICAjcHJlZm9vdGVyOmFmdGVyIHtcbiAgICBjb250ZW50OiBpbWFnZS11cmwoXCJ0aGVtZS9wYXBlci5wbmdcIik7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgbWF4LWhlaWdodDogMTAwJTtcbiAgICB6LWluZGV4OiAtMTtcbiAgICBvcGFjaXR5OiAwLjQ7IH1cbiAgI3ByZWZvb3RlciAuY2lyY2xlSWNvICsgcCB7XG4gICAgY29sb3I6ICNmN2Y3Zjc7IH1cbiAgI3ByZWZvb3RlciAjcHJlRm9vdGVySWNvbnMgLmNvbHVtbnMge1xuICAgIG1hcmdpbi1ib3R0b206IDAuNnJlbTsgfVxuICAjcHJlZm9vdGVyICNwcmVGb290ZXJJY29ucyAubW9yZSBwIHtcbiAgICBmb250LXNpemU6IDFyZW07XG4gICAgZm9udC1zdHlsZTogaXRhbGljOyB9XG5cbmZvb3RlciA+IC5zZWN0aW9uIHtcbiAgcGFkZGluZy10b3A6IDFyZW0gIWltcG9ydGFudDtcbiAgcGFkZGluZy1ib3R0b206IDFyZW0gIWltcG9ydGFudDsgfVxuICBmb290ZXIgPiAuc2VjdGlvbiBwLCBmb290ZXIgPiAuc2VjdGlvbiBsaSB7XG4gICAgZm9udC1zaXplOiAxLjFyZW07IH1cblxuZm9vdGVyIC5jcmVkaXRzIHAge1xuICBtYXJnaW46IDA7XG4gIGZvbnQtc2l6ZTogMS4ycmVtOyB9XG5cbmZvb3RlciAubWVudSB1bCB7XG4gIG1hcmdpbjogMDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgZm9vdGVyIC5tZW51IHVsIHtcbiAgICAgIGZsb2F0OiByaWdodDsgfSB9XG4gIGZvb3RlciAubWVudSB1bCBsaSB7XG4gICAgbWFyZ2luOiAwOyB9XG4gICAgZm9vdGVyIC5tZW51IHVsIGxpID4gYSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cbiAgICAgIGZvb3RlciAubWVudSB1bCBsaSA+IGE6aG92ZXIge1xuICAgICAgICBjb2xvcjogI2Y3ZjdmNyAhaW1wb3J0YW50OyB9XG4gICAgZm9vdGVyIC5tZW51IHVsIGxpICsgbGkge1xuICAgICAgcGFkZGluZy1sZWZ0OiAxcmVtOyB9XG4gICAgICBmb290ZXIgLm1lbnUgdWwgbGkgKyBsaTpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiBcInxcIjtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBsZWZ0OiAtMC41cmVtOyB9XG5cbmZvb3RlciAubWVudSBsaSBpIHtcbiAgZm9udC1zaXplOiAwLjk0cmVtOyB9XG5cbiNjb250ZW50Rm9vdGVyIEg0IHtcbiAgbWluLWhlaWdodDogNHJlbTsgfVxuICAjY29udGVudEZvb3RlciBINCBzdHJvbmcge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBmbG9hdDogbGVmdDsgfVxuXG4udGl0bGUtYmFyIHtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjc1KTtcbiAgcGFkZGluZzogMC45cmVtOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc0LjkzNzVlbSkge1xuICAgIC50aXRsZS1iYXIge1xuICAgICAgaGVpZ2h0OiA1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gICAgLnRpdGxlLWJhciB7XG4gICAgICBoZWlnaHQ6IDVyZW07XG4gICAgICBiYWNrZ3JvdW5kOiAjMGEwYTBhICFpbXBvcnRhbnQ7IH0gfVxuICAudGl0bGUtYmFyIC5tZW51LWljb24ge1xuICAgIHotaW5kZXg6IDEwO1xuICAgIHpvb206IDI7XG4gICAgbWFyZ2luLXRvcDogMC40cmVtOyB9XG4gIC50aXRsZS1iYXIgLmxvZ28ge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzQuOTM3NWVtKSB7XG4gICAgICAudGl0bGUtYmFyIC5sb2dvIHtcbiAgICAgICAgbWF4LWhlaWdodDogMTAwJTsgfVxuICAgICAgICAudGl0bGUtYmFyIC5sb2dvIGltZyB7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIGhlaWdodDogMy42cmVtOyB9IH1cbiAgLnRpdGxlLWJhciAuc2xvZ2FuIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc0LjkzNzVlbSkge1xuICAgICAgLnRpdGxlLWJhciAuc2xvZ2FuIHtcbiAgICAgICAgbWF4LXdpZHRoOiA2MCU7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAyMCU7IH0gfVxuICAgIC50aXRsZS1iYXIgLnNsb2dhbiAudGl0bGUtNCB7XG4gICAgICBsaW5lLWhlaWdodDogMTsgfVxuXG4udGl0bGUtYmFyLXRpdGxlIHtcbiAgYmFja2dyb3VuZDogIzBhMGEwYTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMDtcbiAgdG9wOiAwOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc0LjkzNzVlbSkge1xuICAgIC50aXRsZS1iYXItdGl0bGUge1xuICAgICAgYm9yZGVyOiAxMHB4IHNvbGlkICMwYTBhMGE7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgICAudGl0bGUtYmFyLXRpdGxlIHtcbiAgICAgIHdpZHRoOiA3cmVtO1xuICAgICAgYm9yZGVyOiAxMHB4IHNvbGlkICMwYTBhMGE7IH0gfVxuXG4uaGVhZGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogLW1vei1jYWxjKDEwMCUgLSAoIDFyZW0gKiAyICkpO1xuICB3aWR0aDogLXdlYmtpdC1jYWxjKDEwMCUgLSAoIDFyZW0gKiAyICkpO1xuICB3aWR0aDogY2FsYygxMDAlIC0gKCAxcmVtICogMiApKTtcbiAgbWFyZ2luOiAxcmVtO1xuICB6LWluZGV4OiAyOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAgIC5oZWFkZXIge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBtYXJnaW46IDByZW07IH0gfVxuICAuaGVhZGVyIC5tZW51LnRvcGJhcm1lbnUgPiBsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCBhOjphZnRlciB7XG4gICAgdG9wOiA3MCU7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5oZWFkZXIgLm1lbnUudG9wYmFybWVudSA+IGxpIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wOyB9XG4gICAgICAuaGVhZGVyIC5tZW51LnRvcGJhcm1lbnUgPiBsaSA+IGEge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDByZW07XG4gICAgICAgIHBhZGRpbmctdG9wOiAxcmVtOyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLmhlYWRlciAubWVudS50b3BiYXJtZW51ID4gbGkgPiBhIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjlyZW07XG4gICAgICAgIHBhZGRpbmctdG9wOiAxLjdyZW07IH0gfVxuICAuaGVhZGVyIC5tZW51LnRvcGJhcm1lbnUgPiBsaS5tZW51LWxvZ28ge1xuICAgIHBhZGRpbmc6IDBlbTtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgd2lkdGg6IDExMHB4OyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLmhlYWRlciAubWVudS50b3BiYXJtZW51ID4gbGkubWVudS1sb2dvIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2sgICFpbXBvcnRhbnQ7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5oZWFkZXIgLm1lbnUudG9wYmFybWVudSA+IGxpLm1lbnUtbG9nbyB7XG4gICAgICAgIHdpZHRoOiBhdXRvOyB9IH1cbiAgICAuaGVhZGVyIC5tZW51LnRvcGJhcm1lbnUgPiBsaS5tZW51LWxvZ28gYSB7XG4gICAgICBwYWRkaW5nLXRvcDogMGVtO1xuICAgICAgcGFkZGluZy1ib3R0b206IDBlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC45cmVtOyB9XG4gIC5oZWFkZXIgLnNpZ25hdHVyZSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgcGFkZGluZzogMXJlbTtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLmhlYWRlciAuc2lnbmF0dXJlIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogM3JlbTtcbiAgICAgICAgbGVmdDogNy40cmVtOyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAuaGVhZGVyIC5zaWduYXR1cmUge1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgcGFkZGluZzogMXJlbTtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDRyZW07XG4gICAgICAgIGxlZnQ6IDEwLjJyZW07IH0gfVxuICAgIC5oZWFkZXIgLnNpZ25hdHVyZSBoMSwgLmhlYWRlciAuc2lnbmF0dXJlIC50aXRsZS0xIHtcbiAgICAgIGNvbG9yOiAjZjdmN2Y3O1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICBmb250LXNpemU6IDEuMzc1cmVtOyB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgIC5oZWFkZXIgLnNpZ25hdHVyZSBoMSwgLmhlYWRlciAuc2lnbmF0dXJlIC50aXRsZS0xIHtcbiAgICAgICAgICBmb250LXNpemU6IDEuNzVyZW07IH0gfVxuICAuaGVhZGVyIC5yaWdodHNlYXJjaCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHotaW5kZXg6IDI7XG4gICAgcmlnaHQ6IDFyZW07XG4gICAgdG9wOiAxcmVtOyB9XG4gIC5oZWFkZXIuaW50ZXJuIHtcbiAgICBiYWNrZ3JvdW5kOiAjMGEwYTBhO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NC45Mzc1ZW0pIHtcbiAgICAuaGVhZGVyIC50aXRsZS1iYXIge1xuICAgICAgYmFja2dyb3VuZDogIzBhMGEwYTsgfSB9XG5cbi50b3AtYmFyIHtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjc1KTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgICAudG9wLWJhciAudG9wLWJhci1sZWZ0LCAudG9wLWJhciAudG9wLWJhciAudG9wLWJhci1yaWdodCB7XG4gICAgICB3aWR0aDogMTAwJTsgfSB9XG4gIC50b3AtYmFyIHVsIHtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAgICAgLnRvcC1iYXIgdWwubWVudSBsaS5oYXMtc3VibWVudSB7XG4gICAgICAgIHBvc2l0aW9uOiBpbml0aWFsOyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgICAgIC50b3AtYmFyIHVsLm1lbnUgbGkge1xuICAgICAgICBkaXNwbGF5OiBibG9jazsgfSB9XG4gICAgLnRvcC1iYXIgdWwubWVudSBsaSAuaXMtc3VibWVudS1pdGVtIHtcbiAgICAgIGJhY2tncm91bmQ6ICMwYTBhMGE7IH1cbiAgICAudG9wLWJhciB1bC5tZW51ID4gbGkge1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgIC50b3AtYmFyIHVsLm1lbnUgLnN1Ym1lbnUge1xuICAgICAgYmFja2dyb3VuZDogIzBhMGEwYTsgfVxuICAgIC50b3AtYmFyIHVsIGxpIHtcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50OyB9XG4gICAgICAudG9wLWJhciB1bCBsaSBhIHtcbiAgICAgICAgY29sb3I6ICNmZmY7IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzQuOTM3NWVtKSB7XG4gICNsaXN0LW1lbnUgLmlzLWRyaWxsZG93biB7XG4gICAgbWF4LXdpZHRoOiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NC45Mzc1ZW0pIHtcbiAgI2xpc3QtbWVudSAuaXMtZHJpbGxkb3duID4gLm1lbnUge1xuICAgIHdpZHRoOiAtbW96LWNhbGMoMTAwdncgLSAoIDFyZW0gKiAyICkpO1xuICAgIHdpZHRoOiAtd2Via2l0LWNhbGMoMTAwdncgLSAoIDFyZW0gKiAyICkpO1xuICAgIHdpZHRoOiBjYWxjKDEwMHZ3IC0gKCAxcmVtICogMiApKTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgI2xpc3QtbWVudSwgLnNpZ25hdHVyZSB7XG4gICAgd2lkdGg6IC1tb3otY2FsYygxMDAlIC0gMTI0cHggLSAycmVtKTtcbiAgICB3aWR0aDogLXdlYmtpdC1jYWxjKDEwMCUgLSAxMjRweCAtIDJyZW0pO1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAxMjRweCAtIDJyZW0pOyB9IH1cblxuLm1lbnUtdGV4dCB7XG4gIGNvbG9yOiAjZmZmOyB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDBlbSkge1xuICAgIC5tZW51LXRleHQge1xuICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5tZW51Omxhc3QtY2hpbGQge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIzRlNGU0ZTsgfVxuICAubWVudTpmaXJzdC1jaGlsZCB7XG4gICAgYm9yZGVyLWxlZnQ6IG5vbmU7IH1cbiAgI2xpc3QtbWVudSA+IC5tZW51ID4gbGk6bm90KDpsYXN0LWNoaWxkKTphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gICAgaGVpZ2h0OiAxcmVtO1xuICAgIHdpZHRoOiAxcHg7XG4gICAgYmFja2dyb3VuZDogI2RkMzMzMztcbiAgICByaWdodDogMDtcbiAgICB0b3A6IDAuNzVyZW07XG4gICAgcG9zaXRpb246IGFic29sdXRlOyB9IH1cblxuLmRyb3Bkb3duLm1lbnUgLnN1Ym1lbnUge1xuICBib3JkZXI6IG5vbmU7IH1cblxuLmRyb3Bkb3duLm1lbnUgLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50LmlzLXJpZ2h0LWFycm93ID4gYTo6YWZ0ZXIge1xuICBib3JkZXItY29sb3I6ICNmZmYgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7IH1cblxuLmlzLWRyaWxsZG93bi1zdWJtZW51LXBhcmVudCA+IGE6OmFmdGVyIHtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAjZmZmOyB9XG5cbi5qcy1kcmlsbGRvd24tYmFjazo6YmVmb3JlIHtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCAjZmZmIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50OyB9XG5cbi5uYXYtdGFicyB7XG4gIG1hcmdpbi10b3A6IDFyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkICM4YThhOGE7XG4gIGJvcmRlci1ib3R0b206IDA7IH1cbiAgLm5hdi10YWJzIC50YWIgPiBhIHtcbiAgICBmb250LXNpemU6IDFyZW07XG4gICAgY29sb3I6ICNmN2Y3Zjc7IH1cbiAgICAubmF2LXRhYnMgLnRhYiA+IGE6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7IH1cbiAgLm5hdi10YWJzIC50YWIuc2VsZWN0aW9ubmVkID4gYSB7XG4gICAgY29sb3I6ICNkZDMzMzM7IH1cblxuI2hlYWRlciAudG9wLWJhciB7XG4gIHBvc2l0aW9uOiBpbml0aWFsO1xuICBkaXNwbGF5OiBibG9jazsgfVxuICAjaGVhZGVyIC50b3AtYmFyIC5pbnB1dC1ncm91cCB7XG4gICAgcGFkZGluZzogMXJlbTtcbiAgICBtYXJnaW46IDByZW07XG4gICAgd2lkdGg6IDI0MHB4OyB9XG4gICAgI2hlYWRlciAudG9wLWJhciAuaW5wdXQtZ3JvdXAgaW5wdXQge1xuICAgICAgbWF4LXdpZHRoOiBub25lO1xuICAgICAgbWFyZ2luOiAwOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAgICNoZWFkZXIgLnRvcC1iYXIge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTsgfVxuICAgICAgI2hlYWRlciAudG9wLWJhciAubGFuZ3VhZ2VfY2hvb3NlIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDEuNHJlbTtcbiAgICAgICAgei1pbmRleDogMjAwO1xuICAgICAgICBiYWNrZ3JvdW5kOiBibGFjayBub25lIHJlcGVhdCBzY3JvbGwgMCUgMCU7XG4gICAgICAgIGhlaWdodDogMi42cmVtOyB9XG4gICAgICAjaGVhZGVyIC50b3AtYmFyIC5pbnB1dC1ncm91cCB7XG4gICAgICAgIHBhZGRpbmc6IDFyZW07XG4gICAgICAgIG1hcmdpbjogMHJlbTtcbiAgICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgICAgICAgI2hlYWRlciAudG9wLWJhciAuaW5wdXQtZ3JvdXAgaW5wdXQge1xuICAgICAgICAgIG1heC13aWR0aDogbm9uZTtcbiAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDZyZW0pOyB9IH1cblxuLnRvcE1lZGlhIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC1oZWlnaHQ6IDc1dmg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuXG4udG9wTWVkaWEgLm1lZGlhIHtcbiAgbWF4LXdpZHRoOiBub25lO1xuICBtaW4td2lkdGg6IDEwMCU7XG4gIG1heC1oZWlnaHQ6IG5vbmU7XG4gIG1pbi1oZWlnaHQ6IDEwMCU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogNTAlO1xuICB0b3A6IDUwJTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7IH1cblxuLmN1c3RvbS1mbGV4LXZpZGVvLWNsYXNzIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6IDA7XG4gIHBhZGRpbmctYm90dG9tOiA1Ni40MTc0OSU7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAuY3VzdG9tLWZsZXgtdmlkZW8tY2xhc3MgaWZyYW1lLFxuICAuY3VzdG9tLWZsZXgtdmlkZW8tY2xhc3Mgb2JqZWN0LFxuICAuY3VzdG9tLWZsZXgtdmlkZW8tY2xhc3MgZW1iZWQsXG4gIC5jdXN0b20tZmxleC12aWRlby1jbGFzcyB2aWRlbyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTsgfVxuICAuY3VzdG9tLWZsZXgtdmlkZW8tY2xhc3M6YmVmb3JlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgei1pbmRleDogMTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjb250ZW50OiAnJztcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjIpOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuY3VzdG9tLWZsZXgtdmlkZW8tY2xhc3MgaWZyYW1lIHtcbiAgICAgIHRvcDogMDsgfSB9XG5cbi5oZWFkZXJTbGlkZXIuc2xpY2stc2xpZGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IDAlO1xuICB3aWR0aDogODAlO1xuICBsZWZ0OiA1MCU7XG4gIHotaW5kZXg6IDE7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTQwJSk7XG4gIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTQwJSk7XG4gIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC00MCUpO1xuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTQwJSk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC00MCUpOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAgIC5oZWFkZXJTbGlkZXIuc2xpY2stc2xpZGVyIC54bGFyZ2UtMjUge1xuICAgICAgd2lkdGg6IDMzJTsgfVxuICAgIC5oZWFkZXJTbGlkZXIuc2xpY2stc2xpZGVyIC5tZWRpdW0tNzUge1xuICAgICAgd2lkdGg6IDY2JTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuaGVhZGVyU2xpZGVyLnNsaWNrLXNsaWRlciB7XG4gICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC0zMCUpO1xuICAgICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtMzAlKTtcbiAgICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC0zMCUpO1xuICAgICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC0zMCUpO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTMwJSk7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmhlYWRlclNsaWRlci5zbGljay1zbGlkZXIge1xuICAgICAgbWluLWhlaWdodDogNTAlO1xuICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtMjAlKTtcbiAgICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTIwJSk7XG4gICAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtMjAlKTtcbiAgICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtMjAlKTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC0yMCUpOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5oZWFkZXJTbGlkZXIuc2xpY2stc2xpZGVyIHtcbiAgICAgIG1pbi1oZWlnaHQ6IDYwJTtcbiAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgYm90dG9tOiBhdXRvOyB9IH1cbiAgLmhlYWRlclNsaWRlci5zbGljay1zbGlkZXIgLnNsaWNrLXNsaWRlIC5mbGV4LWdyaWQge1xuICAgIG1hcmdpbjogNCU7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45Mzc1ZW0pIHtcbiAgICAgIC5oZWFkZXJTbGlkZXIuc2xpY2stc2xpZGVyIC5zbGljay1zbGlkZSAuZmxleC1ncmlkIHtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAgICAgICAuaGVhZGVyU2xpZGVyLnNsaWNrLXNsaWRlciAuc2xpY2stc2xpZGUgLmZsZXgtZ3JpZCBwIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gICAgLmhlYWRlclNsaWRlci5zbGljay1zbGlkZXIge1xuICAgICAgd2lkdGg6IDEwMCU7IH0gfVxuICAuaGVhZGVyU2xpZGVyLnNsaWNrLXNsaWRlciAqIHtcbiAgICBjb2xvcjogI2Y3ZjdmNzsgfVxuICAuaGVhZGVyU2xpZGVyLnNsaWNrLXNsaWRlciAuc2xpY2stc2xpZGUge1xuICAgIHBhZGRpbmc6IDAgNHJlbTsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAgICAgLmhlYWRlclNsaWRlci5zbGljay1zbGlkZXIgLnNsaWNrLXNsaWRlIHtcbiAgICAgICAgcGFkZGluZzogMHJlbTsgfSB9XG4gIC5oZWFkZXJTbGlkZXIuc2xpY2stc2xpZGVyIGgyLCAuaGVhZGVyU2xpZGVyLnNsaWNrLXNsaWRlciAucnN0IGgxLCAucnN0IC5oZWFkZXJTbGlkZXIuc2xpY2stc2xpZGVyIGgxLCAuaGVhZGVyU2xpZGVyLnNsaWNrLXNsaWRlciAucnN0IC50aXRsZS0xLCAucnN0IC5oZWFkZXJTbGlkZXIuc2xpY2stc2xpZGVyIC50aXRsZS0xLCAuaGVhZGVyU2xpZGVyLnNsaWNrLXNsaWRlciAudGl0bGUtMiB7XG4gICAgZm9udC1zaXplOiA0Ljc1cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA4MDA7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgICAgIC5oZWFkZXJTbGlkZXIuc2xpY2stc2xpZGVyIGgyLCAuaGVhZGVyU2xpZGVyLnNsaWNrLXNsaWRlciAucnN0IGgxLCAucnN0IC5oZWFkZXJTbGlkZXIuc2xpY2stc2xpZGVyIGgxLCAuaGVhZGVyU2xpZGVyLnNsaWNrLXNsaWRlciAucnN0IC50aXRsZS0xLCAucnN0IC5oZWFkZXJTbGlkZXIuc2xpY2stc2xpZGVyIC50aXRsZS0xLCAuaGVhZGVyU2xpZGVyLnNsaWNrLXNsaWRlciAudGl0bGUtMiB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS43NXJlbTsgfSB9XG4gIC5oZWFkZXJTbGlkZXIuc2xpY2stc2xpZGVyIHAge1xuICAgIGZvbnQtc2l6ZTogMS40cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAgICAgLmhlYWRlclNsaWRlci5zbGljay1zbGlkZXIgcCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4ycmVtOyB9IH1cbiAgLmhlYWRlclNsaWRlci5zbGljay1zbGlkZXIgLnNsaWNrLXByZXYsIC5oZWFkZXJTbGlkZXIuc2xpY2stc2xpZGVyIC5zbGljay1uZXh0IHtcbiAgICB0b3A6IDUwJTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC01MCUpO1xuICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwJSk7XG4gICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwJSk7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC01MCUpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC01MCUpO1xuICAgIGxlZnQ6IDA7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHotaW5kZXg6IDEyO1xuICAgIHdpZHRoOiA0cmVtOyB9XG4gIC5oZWFkZXJTbGlkZXIuc2xpY2stc2xpZGVyIC5zbGljay1uZXh0IHtcbiAgICByaWdodDogMDtcbiAgICBsZWZ0OiBhdXRvOyB9XG5cbi5sYW5ndWFnZV9jaG9vc2Uge1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMHJlbTtcbiAgcmlnaHQ6IDFyZW07XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGNvbG9yOiAjZGQzMzMzO1xuICBtYXJnaW46IDA7IH1cbiAgLmxhbmd1YWdlX2Nob29zZSBsaSB7XG4gICAgbWFyZ2luOiAwO1xuICAgIGRpc3BsYXk6IGlubGluZTsgfVxuICAubGFuZ3VhZ2VfY2hvb3NlIGEge1xuICAgIGNvbG9yOiAjZjdmN2Y3OyB9XG4gICAgLmxhbmd1YWdlX2Nob29zZSBhLmFjdGl2ZSB7XG4gICAgICBjb2xvcjogI2RkMzMzMzsgfVxuICAubGFuZ3VhZ2VfY2hvb3NlIC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICBtaW4td2lkdGg6IDA7IH1cbiAgLmxhbmd1YWdlX2Nob29zZSAuZHJvcGRvd24ubWVudSA+IGxpLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50IHtcbiAgICBmbG9hdDogbGVmdDsgfVxuICAgIC5sYW5ndWFnZV9jaG9vc2UgLmRyb3Bkb3duLm1lbnUgPiBsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGEge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBmbG9hdDogbGVmdDsgfVxuXG4vKiBlbnR5cG8gKi9cbltjbGFzcyo9XCJlbnR5cG8tXCJdOmJlZm9yZSB7XG4gIGZvbnQtZmFtaWx5OiAnZW50eXBvJywgc2Fucy1zZXJpZjsgfVxuXG4ud2FsbGdyaWQtaXRlbSAucGFuZWwge1xuICBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbi8qIC0tLS0gZ3JpZCAtLS0tICovXG4uZ3JpZCB7XG4gIG1hcmdpbjogOHB4O1xuICAvKiAtLS0tIGdyaWQgc2l6ZXIgd2lkdGgtLS0tICovIH1cbiAgLmdyaWQjY29udGFpbmVyIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gIDE2cHgpOyB9XG4gIC5ncmlkIC5ncmlkLWl0ZW0ge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtO1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgcGFkZGluZy1yaWdodDogMDsgfVxuICAgIC5ncmlkIC5ncmlkLWl0ZW06bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICBmbG9hdDogcmlnaHQ7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuZ3JpZCAuZ3JpZC1pdGVtIHtcbiAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMDsgfVxuICAgICAgICAuZ3JpZCAuZ3JpZC1pdGVtOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgIGZsb2F0OiByaWdodDsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLmdyaWQgLmdyaWQtaXRlbSB7XG4gICAgICAgIHdpZHRoOiAzMy4zMzMzMyU7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7IH1cbiAgICAgICAgLmdyaWQgLmdyaWQtaXRlbTpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICBmbG9hdDogcmlnaHQ7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAgIC5ncmlkIC5ncmlkLWl0ZW0ge1xuICAgICAgICB3aWR0aDogMjUlO1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwOyB9XG4gICAgICAgIC5ncmlkIC5ncmlkLWl0ZW06bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgZmxvYXQ6IHJpZ2h0OyB9IH1cblxuLyogY2xlYXIgZml4ICovXG4uZ3JpZDphZnRlciB7XG4gIGNvbnRlbnQ6ICcnO1xuICBkaXNwbGF5OiBibG9jaztcbiAgY2xlYXI6IGJvdGg7IH1cblxuLyogLS0tLSAuZ3JpZC1pdGVtIC0tLS0gKi9cbi5ncmlkLWl0ZW0ge1xuICBoZWlnaHQ6IDI2NHB4O1xuICBmbG9hdDogbGVmdDtcbiAgYm9yZGVyOiAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLmdyaWQtaXRlbSBmaWd1cmUge1xuICAgIGhlaWdodDogMjQ4cHg7IH1cbiAgLmdyaWQtaXRlbS50eXBlMSwgLmdyaWQtaXRlbS50eXBlRXhwbywgLmdyaWQtaXRlbXR5cGU0IHtcbiAgICBoZWlnaHQ6IDI2NHB4OyB9XG4gIC5ncmlkLWl0ZW0udHlwZTIsIC5ncmlkLWl0ZW0udHlwZTMge1xuICAgIGhlaWdodDogNTI4cHg7IH1cbiAgLmdyaWQtaXRlbS50eXBlMiAuaW5mb0NvbnQge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDI2NHB4OyB9XG4gIC5ncmlkLWl0ZW0gLmluZm9Db250IHtcbiAgICBwYWRkaW5nOiAxMXB4IDIycHg7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5ncmlkLWl0ZW0ge1xuICAgICAgaGVpZ2h0OiAzMjRweDsgfVxuICAgICAgLmdyaWQtaXRlbSBmaWd1cmUge1xuICAgICAgICBoZWlnaHQ6IDMwOHB4OyB9XG4gICAgICAuZ3JpZC1pdGVtLnR5cGUxLCAuZ3JpZC1pdGVtLnR5cGVFeHBvLCAuZ3JpZC1pdGVtdHlwZTQge1xuICAgICAgICBoZWlnaHQ6IDMyNHB4OyB9XG4gICAgICAuZ3JpZC1pdGVtLnR5cGUyLCAuZ3JpZC1pdGVtLnR5cGUzIHtcbiAgICAgICAgaGVpZ2h0OiA2NDhweDsgfVxuICAgICAgLmdyaWQtaXRlbS50eXBlMiAuaW5mb0NvbnQge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMzI0cHg7IH1cbiAgICAgIC5ncmlkLWl0ZW0gLmluZm9Db250IHtcbiAgICAgICAgcGFkZGluZzogMTMuNXB4IDI3cHg7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmdyaWQtaXRlbSB7XG4gICAgICBoZWlnaHQ6IDMyNHB4OyB9XG4gICAgICAuZ3JpZC1pdGVtIGZpZ3VyZSB7XG4gICAgICAgIGhlaWdodDogMzA4cHg7IH1cbiAgICAgIC5ncmlkLWl0ZW0udHlwZTEsIC5ncmlkLWl0ZW0udHlwZUV4cG8sIC5ncmlkLWl0ZW10eXBlNCB7XG4gICAgICAgIGhlaWdodDogMzI0cHg7IH1cbiAgICAgIC5ncmlkLWl0ZW0udHlwZTIsIC5ncmlkLWl0ZW0udHlwZTMge1xuICAgICAgICBoZWlnaHQ6IDY0OHB4OyB9XG4gICAgICAuZ3JpZC1pdGVtLnR5cGUyIC5pbmZvQ29udCB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAzMjRweDsgfVxuICAgICAgLmdyaWQtaXRlbSAuaW5mb0NvbnQge1xuICAgICAgICBwYWRkaW5nOiAxMy41cHggMjdweDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAuZ3JpZC1pdGVtIHtcbiAgICAgIGhlaWdodDogMzg0cHg7IH1cbiAgICAgIC5ncmlkLWl0ZW0gZmlndXJlIHtcbiAgICAgICAgaGVpZ2h0OiAzNjhweDsgfVxuICAgICAgLmdyaWQtaXRlbS50eXBlMSwgLmdyaWQtaXRlbS50eXBlRXhwbywgLmdyaWQtaXRlbXR5cGU0IHtcbiAgICAgICAgaGVpZ2h0OiAzODRweDsgfVxuICAgICAgLmdyaWQtaXRlbS50eXBlMiwgLmdyaWQtaXRlbS50eXBlMyB7XG4gICAgICAgIGhlaWdodDogNzY4cHg7IH1cbiAgICAgIC5ncmlkLWl0ZW0udHlwZTIgLmluZm9Db250IHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDM4NHB4OyB9XG4gICAgICAuZ3JpZC1pdGVtIC5pbmZvQ29udCB7XG4gICAgICAgIHBhZGRpbmc6IDE2cHggMzJweDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kICgtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDIpLCAobWluLXJlc29sdXRpb246IDE5MmRwaSkge1xuICAgIC5ncmlkLWl0ZW0ge1xuICAgICAgaGVpZ2h0OiA0NjRweDsgfVxuICAgICAgLmdyaWQtaXRlbSBmaWd1cmUge1xuICAgICAgICBoZWlnaHQ6IDQ0OHB4OyB9XG4gICAgICAuZ3JpZC1pdGVtLnR5cGUxLCAuZ3JpZC1pdGVtLnR5cGVFeHBvLCAuZ3JpZC1pdGVtdHlwZTQge1xuICAgICAgICBoZWlnaHQ6IDQ2NHB4OyB9XG4gICAgICAuZ3JpZC1pdGVtLnR5cGUyLCAuZ3JpZC1pdGVtLnR5cGUzIHtcbiAgICAgICAgaGVpZ2h0OiA5MjhweDsgfVxuICAgICAgLmdyaWQtaXRlbS50eXBlMiAuaW5mb0NvbnQge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogNDY0cHg7IH1cbiAgICAgIC5ncmlkLWl0ZW0gLmluZm9Db250IHtcbiAgICAgICAgcGFkZGluZzogMTkuMzMzMzNweCAzOC42NjY2N3B4OyB9IH1cbiAgLmdyaWQtaXRlbSAuY29udGVudEdyaWQge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIG1hcmdpbjogOHB4O1xuICAgIGJhY2tncm91bmQ6ICNFMEUwRTA7XG4gICAgd2lkdGg6IC1tb3otY2FsYygxMDAlIC0gMXJlbSk7XG4gICAgd2lkdGg6IC13ZWJraXQtY2FsYygxMDAlIC0gMXJlbSk7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDFyZW0pO1xuICAgIGhlaWdodDogLW1vei1jYWxjKDEwMCUgLSAxcmVtKTtcbiAgICBoZWlnaHQ6IC13ZWJraXQtY2FsYygxMDAlIC0gMXJlbSk7XG4gICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAxcmVtKTsgfVxuICAuZ3JpZC1pdGVtIC5pbmZvQ29udCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHotaW5kZXg6IDI7IH1cbiAgLmdyaWQtaXRlbSBoMiwgLmdyaWQtaXRlbSAucnN0IGgxLCAucnN0IC5ncmlkLWl0ZW0gaDEsIC5ncmlkLWl0ZW0gLnJzdCAudGl0bGUtMSwgLnJzdCAuZ3JpZC1pdGVtIC50aXRsZS0xLCAuZ3JpZC1pdGVtIC50aXRsZS0yIHtcbiAgICBmb250LXNpemU6IDFyZW07IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuZ3JpZC1pdGVtIGgyLCAuZ3JpZC1pdGVtIC5yc3QgaDEsIC5yc3QgLmdyaWQtaXRlbSBoMSwgLmdyaWQtaXRlbSAucnN0IC50aXRsZS0xLCAucnN0IC5ncmlkLWl0ZW0gLnRpdGxlLTEsIC5ncmlkLWl0ZW0gLnRpdGxlLTIge1xuICAgICAgICBmb250LXNpemU6IDFyZW07IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5ncmlkLWl0ZW0gaDIsIC5ncmlkLWl0ZW0gLnJzdCBoMSwgLnJzdCAuZ3JpZC1pdGVtIGgxLCAuZ3JpZC1pdGVtIC5yc3QgLnRpdGxlLTEsIC5yc3QgLmdyaWQtaXRlbSAudGl0bGUtMSwgLmdyaWQtaXRlbSAudGl0bGUtMiB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4xMHJlbTsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgICAgLmdyaWQtaXRlbSBoMiwgLmdyaWQtaXRlbSAucnN0IGgxLCAucnN0IC5ncmlkLWl0ZW0gaDEsIC5ncmlkLWl0ZW0gLnJzdCAudGl0bGUtMSwgLnJzdCAuZ3JpZC1pdGVtIC50aXRsZS0xLCAuZ3JpZC1pdGVtIC50aXRsZS0yIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjIwcmVtOyB9IH1cbiAgLmdyaWQtaXRlbSBoNTphZnRlciwgLmdyaWQtaXRlbSAucnN0IGg0OmFmdGVyLCAucnN0IC5ncmlkLWl0ZW0gaDQ6YWZ0ZXIsIC5ncmlkLWl0ZW0gLnJzdCBoMzphZnRlciwgLnJzdCAuZ3JpZC1pdGVtIGgzOmFmdGVyLCAuZ3JpZC1pdGVtIC5yc3QgLmgzOmFmdGVyLCAucnN0IC5ncmlkLWl0ZW0gLmgzOmFmdGVyLCAuZ3JpZC1pdGVtIC5yc3QgaDI6YWZ0ZXIsIC5yc3QgLmdyaWQtaXRlbSBoMjphZnRlciwgLmdyaWQtaXRlbSAucnN0IGgxOmFmdGVyLCAucnN0IC5ncmlkLWl0ZW0gaDE6YWZ0ZXIsIC5ncmlkLWl0ZW0gLnJzdCAudGl0bGUtMTphZnRlciwgLnJzdCAuZ3JpZC1pdGVtIC50aXRsZS0xOmFmdGVyLCAuZ3JpZC1pdGVtIC5yc3QgLnRpdGxlLTI6YWZ0ZXIsIC5yc3QgLmdyaWQtaXRlbSAudGl0bGUtMjphZnRlciwgLmdyaWQtaXRlbSAucnN0IC50aXRsZS0zOmFmdGVyLCAucnN0IC5ncmlkLWl0ZW0gLnRpdGxlLTM6YWZ0ZXIsIC5ncmlkLWl0ZW0gLnJzdCAudGl0bGUtNDphZnRlciwgLnJzdCAuZ3JpZC1pdGVtIC50aXRsZS00OmFmdGVyLCAuZ3JpZC1pdGVtIC50aXRsZS01OmFmdGVyLCAuZ3JpZC1pdGVtIGg1OmJlZm9yZSwgLmdyaWQtaXRlbSAucnN0IGg0OmJlZm9yZSwgLnJzdCAuZ3JpZC1pdGVtIGg0OmJlZm9yZSwgLmdyaWQtaXRlbSAucnN0IGgzOmJlZm9yZSwgLnJzdCAuZ3JpZC1pdGVtIGgzOmJlZm9yZSwgLmdyaWQtaXRlbSAucnN0IC5oMzpiZWZvcmUsIC5yc3QgLmdyaWQtaXRlbSAuaDM6YmVmb3JlLCAuZ3JpZC1pdGVtIC5yc3QgaDI6YmVmb3JlLCAucnN0IC5ncmlkLWl0ZW0gaDI6YmVmb3JlLCAuZ3JpZC1pdGVtIC5yc3QgaDE6YmVmb3JlLCAucnN0IC5ncmlkLWl0ZW0gaDE6YmVmb3JlLCAuZ3JpZC1pdGVtIC5yc3QgLnRpdGxlLTE6YmVmb3JlLCAucnN0IC5ncmlkLWl0ZW0gLnRpdGxlLTE6YmVmb3JlLCAuZ3JpZC1pdGVtIC5yc3QgLnRpdGxlLTI6YmVmb3JlLCAucnN0IC5ncmlkLWl0ZW0gLnRpdGxlLTI6YmVmb3JlLCAuZ3JpZC1pdGVtIC5yc3QgLnRpdGxlLTM6YmVmb3JlLCAucnN0IC5ncmlkLWl0ZW0gLnRpdGxlLTM6YmVmb3JlLCAuZ3JpZC1pdGVtIC5yc3QgLnRpdGxlLTQ6YmVmb3JlLCAucnN0IC5ncmlkLWl0ZW0gLnRpdGxlLTQ6YmVmb3JlLCAuZ3JpZC1pdGVtIC50aXRsZS01OmJlZm9yZSB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAuZ3JpZC1pdGVtIHAuc3VidGl0bGUge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIGJhY2tncm91bmQ6ICMwMDAwMDA7XG4gICAgcGFkZGluZzogMCAwLjNyZW07XG4gICAgY29sb3I6ICNmZmY7XG4gICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICBmb250LXNpemU6IDFyZW07XG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7IH1cbiAgLmdyaWQtaXRlbSAuZGVzYyB7XG4gICAgZm9udC13ZWlnaHQ6IDIwMDsgfVxuICAuZ3JpZC1pdGVtIGZpZ3VyZSB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgLmdyaWQtaXRlbSBmaWd1cmUgaW1nIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGxlZnQ6IDUwJTtcbiAgICAgIG1pbi13aWR0aDogMTAwJTtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpOyB9XG4gIC5ncmlkLWl0ZW0udHlwZUV4cG8ge1xuICAgIGhlaWdodDogMjY0cHg7IH1cbiAgICAuZ3JpZC1pdGVtLnR5cGVFeHBvIGZpZ3VyZSB7XG4gICAgICBoZWlnaHQ6IDI0OHB4OyB9XG4gICAgLmdyaWQtaXRlbS50eXBlRXhwby50eXBlMSwgLmdyaWQtaXRlbS50eXBlRXhwbywgLmdyaWQtaXRlbS50eXBlRXhwb3R5cGU0IHtcbiAgICAgIGhlaWdodDogMjY0cHg7IH1cbiAgICAuZ3JpZC1pdGVtLnR5cGVFeHBvLnR5cGUyLCAuZ3JpZC1pdGVtLnR5cGVFeHBvLnR5cGUzIHtcbiAgICAgIGhlaWdodDogNTI4cHg7IH1cbiAgICAuZ3JpZC1pdGVtLnR5cGVFeHBvLnR5cGUyIC5pbmZvQ29udCB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDI2NHB4OyB9XG4gICAgLmdyaWQtaXRlbS50eXBlRXhwbyAuaW5mb0NvbnQge1xuICAgICAgcGFkZGluZzogMTFweCAyMnB4OyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmdyaWQtaXRlbS50eXBlRXhwbyB7XG4gICAgICAgIGhlaWdodDogMzI0cHg7IH1cbiAgICAgICAgLmdyaWQtaXRlbS50eXBlRXhwbyBmaWd1cmUge1xuICAgICAgICAgIGhlaWdodDogMzA4cHg7IH1cbiAgICAgICAgLmdyaWQtaXRlbS50eXBlRXhwby50eXBlMSwgLmdyaWQtaXRlbS50eXBlRXhwbywgLmdyaWQtaXRlbS50eXBlRXhwb3R5cGU0IHtcbiAgICAgICAgICBoZWlnaHQ6IDMyNHB4OyB9XG4gICAgICAgIC5ncmlkLWl0ZW0udHlwZUV4cG8udHlwZTIsIC5ncmlkLWl0ZW0udHlwZUV4cG8udHlwZTMge1xuICAgICAgICAgIGhlaWdodDogNjQ4cHg7IH1cbiAgICAgICAgLmdyaWQtaXRlbS50eXBlRXhwby50eXBlMiAuaW5mb0NvbnQge1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICB0b3A6IDMyNHB4OyB9XG4gICAgICAgIC5ncmlkLWl0ZW0udHlwZUV4cG8gLmluZm9Db250IHtcbiAgICAgICAgICBwYWRkaW5nOiAxMy41cHggMjdweDsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLmdyaWQtaXRlbS50eXBlRXhwbyB7XG4gICAgICAgIGhlaWdodDogMzI0cHg7IH1cbiAgICAgICAgLmdyaWQtaXRlbS50eXBlRXhwbyBmaWd1cmUge1xuICAgICAgICAgIGhlaWdodDogMzA4cHg7IH1cbiAgICAgICAgLmdyaWQtaXRlbS50eXBlRXhwby50eXBlMSwgLmdyaWQtaXRlbS50eXBlRXhwbywgLmdyaWQtaXRlbS50eXBlRXhwb3R5cGU0IHtcbiAgICAgICAgICBoZWlnaHQ6IDMyNHB4OyB9XG4gICAgICAgIC5ncmlkLWl0ZW0udHlwZUV4cG8udHlwZTIsIC5ncmlkLWl0ZW0udHlwZUV4cG8udHlwZTMge1xuICAgICAgICAgIGhlaWdodDogNjQ4cHg7IH1cbiAgICAgICAgLmdyaWQtaXRlbS50eXBlRXhwby50eXBlMiAuaW5mb0NvbnQge1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICB0b3A6IDMyNHB4OyB9XG4gICAgICAgIC5ncmlkLWl0ZW0udHlwZUV4cG8gLmluZm9Db250IHtcbiAgICAgICAgICBwYWRkaW5nOiAxMy41cHggMjdweDsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgLmdyaWQtaXRlbS50eXBlRXhwbyB7XG4gICAgICAgIGhlaWdodDogMzg0cHg7IH1cbiAgICAgICAgLmdyaWQtaXRlbS50eXBlRXhwbyBmaWd1cmUge1xuICAgICAgICAgIGhlaWdodDogMzY4cHg7IH1cbiAgICAgICAgLmdyaWQtaXRlbS50eXBlRXhwby50eXBlMSwgLmdyaWQtaXRlbS50eXBlRXhwbywgLmdyaWQtaXRlbS50eXBlRXhwb3R5cGU0IHtcbiAgICAgICAgICBoZWlnaHQ6IDM4NHB4OyB9XG4gICAgICAgIC5ncmlkLWl0ZW0udHlwZUV4cG8udHlwZTIsIC5ncmlkLWl0ZW0udHlwZUV4cG8udHlwZTMge1xuICAgICAgICAgIGhlaWdodDogNzY4cHg7IH1cbiAgICAgICAgLmdyaWQtaXRlbS50eXBlRXhwby50eXBlMiAuaW5mb0NvbnQge1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICB0b3A6IDM4NHB4OyB9XG4gICAgICAgIC5ncmlkLWl0ZW0udHlwZUV4cG8gLmluZm9Db250IHtcbiAgICAgICAgICBwYWRkaW5nOiAxNnB4IDMycHg7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kICgtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDIpLCAobWluLXJlc29sdXRpb246IDE5MmRwaSkge1xuICAgICAgLmdyaWQtaXRlbS50eXBlRXhwbyB7XG4gICAgICAgIGhlaWdodDogNDY0cHg7IH1cbiAgICAgICAgLmdyaWQtaXRlbS50eXBlRXhwbyBmaWd1cmUge1xuICAgICAgICAgIGhlaWdodDogNDQ4cHg7IH1cbiAgICAgICAgLmdyaWQtaXRlbS50eXBlRXhwby50eXBlMSwgLmdyaWQtaXRlbS50eXBlRXhwbywgLmdyaWQtaXRlbS50eXBlRXhwb3R5cGU0IHtcbiAgICAgICAgICBoZWlnaHQ6IDQ2NHB4OyB9XG4gICAgICAgIC5ncmlkLWl0ZW0udHlwZUV4cG8udHlwZTIsIC5ncmlkLWl0ZW0udHlwZUV4cG8udHlwZTMge1xuICAgICAgICAgIGhlaWdodDogOTI4cHg7IH1cbiAgICAgICAgLmdyaWQtaXRlbS50eXBlRXhwby50eXBlMiAuaW5mb0NvbnQge1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICB0b3A6IDQ2NHB4OyB9XG4gICAgICAgIC5ncmlkLWl0ZW0udHlwZUV4cG8gLmluZm9Db250IHtcbiAgICAgICAgICBwYWRkaW5nOiAxOS4zMzMzM3B4IDM4LjY2NjY3cHg7IH0gfVxuICAgIC5ncmlkLWl0ZW0udHlwZUV4cG8gLnNob3J0ZGVzY2Mge1xuICAgICAgdG9wOiA2NSU7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBmb250LXdlaWdodDogMjAwO1xuICAgICAgcGFkZGluZy10b3A6IDAuNDJyZW07XG4gICAgICBsaW5lLWhlaWdodDogMS4yOyB9XG4gICAgLmdyaWQtaXRlbS50eXBlRXhwbyAuZmlndXJldG9FeHAge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDY1JTtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBiYWNrZ3JvdW5kOiAjMDAwOyB9XG4gICAgICAuZ3JpZC1pdGVtLnR5cGVFeHBvIC5maWd1cmV0b0V4cCBmaWd1cmUge1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBkaXNwbGF5OiBibG9jazsgfVxuICAgIC5ncmlkLWl0ZW0udHlwZUV4cG8gLmNvbnRlbnRHcmlkIHtcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50OyB9XG4gIC5ncmlkLWl0ZW0udHlwZTMgZmlndXJlLCAuZ3JpZC1pdGVtLnR5cGU0IGZpZ3VyZSB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAuZ3JpZC1pdGVtLndpdGhDb250IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA1MCU7IH1cbiAgICAuZ3JpZC1pdGVtLndpdGhDb250IGZpZ3VyZSB7XG4gICAgICBoZWlnaHQ6IDUwJTsgfVxuICAgIC5ncmlkLWl0ZW0ud2l0aENvbnQgLnNob3J0ZGVzYyB7XG4gICAgICBmb250LXdlaWdodDogMzAwOyB9XG4gIC5ncmlkLWl0ZW0ucGljdG8tdmlkZW8gLmNvbnRlbnRHcmlkID4gYTpiZWZvcmUge1xuICAgIGNvbG9yOiAjRkZGO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBjb250ZW50OiBcIlxcZjAwOFwiO1xuICAgIGZvbnQtZmFtaWx5OiBpY29tb29uO1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3JkZXItcmFkaXVzOiAwJTtcbiAgICBoZWlnaHQ6IDNyZW07XG4gICAgd2lkdGg6IDNyZW07XG4gICAgbGluZS1oZWlnaHQ6IDNyZW07XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgYmFja2dyb3VuZDogIzBhMGEwYTtcbiAgICB6LWluZGV4OiAyOyB9XG4gIC5ncmlkLWl0ZW0ucGljdG8tc291bmQgLmNvbnRlbnRHcmlkID4gYTpiZWZvcmUge1xuICAgIGNvbG9yOiAjRkZGO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBjb250ZW50OiBcIlxcZTkxMlwiO1xuICAgIGZvbnQtZmFtaWx5OiBpY29tb29uO1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3JkZXItcmFkaXVzOiAwJTtcbiAgICBoZWlnaHQ6IDNyZW07XG4gICAgd2lkdGg6IDNyZW07XG4gICAgbGluZS1oZWlnaHQ6IDNyZW07XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgYmFja2dyb3VuZDogIzBhMGEwYTtcbiAgICB6LWluZGV4OiAyOyB9XG4gIC5ncmlkLWl0ZW0ucGljdG8taW1nIC5jb250ZW50R3JpZCA+IGE6YmVmb3JlIHtcbiAgICBjb2xvcjogI0ZGRjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgY29udGVudDogXCJcXGYwM2VcIjtcbiAgICBmb250LWZhbWlseTogaWNvbW9vbjtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm9yZGVyLXJhZGl1czogMCU7XG4gICAgaGVpZ2h0OiAzcmVtO1xuICAgIHdpZHRoOiAzcmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAzcmVtO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGJhY2tncm91bmQ6ICMwYTBhMGE7XG4gICAgei1pbmRleDogMjsgfVxuICAuZ3JpZC1pdGVtLnBpY3RvLW11c2ljIC5jb250ZW50R3JpZCA+IGE6YmVmb3JlIHtcbiAgICBjb2xvcjogI0ZGRjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgY29udGVudDogXCJcXGYwMDFcIjtcbiAgICBmb250LWZhbWlseTogaWNvbW9vbjtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm9yZGVyLXJhZGl1czogMCU7XG4gICAgaGVpZ2h0OiAzcmVtO1xuICAgIHdpZHRoOiAzcmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAzcmVtO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGJhY2tncm91bmQ6ICMwYTBhMGE7XG4gICAgei1pbmRleDogMjsgfVxuICAuZ3JpZC1pdGVtLnBpY3RvLXByZXNzZSAuY29udGVudEdyaWQgPiBhOmJlZm9yZSB7XG4gICAgY29sb3I6ICNGRkY7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGNvbnRlbnQ6IFwiXFxmMWVhXCI7XG4gICAgZm9udC1mYW1pbHk6IGljb21vb247XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvcmRlci1yYWRpdXM6IDAlO1xuICAgIGhlaWdodDogM3JlbTtcbiAgICB3aWR0aDogM3JlbTtcbiAgICBsaW5lLWhlaWdodDogM3JlbTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBiYWNrZ3JvdW5kOiAjMGEwYTBhO1xuICAgIHotaW5kZXg6IDI7IH1cbiAgLmdyaWQtaXRlbS5waWN0by10ZXh0IC5jb250ZW50R3JpZCA+IGE6YmVmb3JlIHtcbiAgICBjb2xvcjogI0ZGRjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgY29udGVudDogXCJcXGYwZjZcIjtcbiAgICBmb250LWZhbWlseTogaWNvbW9vbjtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm9yZGVyLXJhZGl1czogMCU7XG4gICAgaGVpZ2h0OiAzcmVtO1xuICAgIHdpZHRoOiAzcmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAzcmVtO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGJhY2tncm91bmQ6ICMwYTBhMGE7XG4gICAgei1pbmRleDogMjsgfVxuICAuZ3JpZC1pdGVtLmJpZyB7XG4gICAgaGVpZ2h0OiA1MjhweDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgcGFkZGluZzogMDsgfVxuICAgIC5ncmlkLWl0ZW0uYmlnIGZpZ3VyZSB7XG4gICAgICBoZWlnaHQ6IDUxMnB4OyB9XG4gICAgLmdyaWQtaXRlbS5iaWcudHlwZTEsIC5ncmlkLWl0ZW0uYmlnLnR5cGVFeHBvLCAuZ3JpZC1pdGVtLmJpZ3R5cGU0IHtcbiAgICAgIGhlaWdodDogNTI4cHg7IH1cbiAgICAuZ3JpZC1pdGVtLmJpZy50eXBlMiwgLmdyaWQtaXRlbS5iaWcudHlwZTMge1xuICAgICAgaGVpZ2h0OiAxMDU2cHg7IH1cbiAgICAuZ3JpZC1pdGVtLmJpZy50eXBlMiAuaW5mb0NvbnQge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiA1MjhweDsgfVxuICAgIC5ncmlkLWl0ZW0uYmlnIC5pbmZvQ29udCB7XG4gICAgICBwYWRkaW5nOiAyMnB4IDQ0cHg7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuZ3JpZC1pdGVtLmJpZyB7XG4gICAgICAgIGhlaWdodDogNjQ4cHg7IH1cbiAgICAgICAgLmdyaWQtaXRlbS5iaWcgZmlndXJlIHtcbiAgICAgICAgICBoZWlnaHQ6IDYzMnB4OyB9XG4gICAgICAgIC5ncmlkLWl0ZW0uYmlnLnR5cGUxLCAuZ3JpZC1pdGVtLmJpZy50eXBlRXhwbywgLmdyaWQtaXRlbS5iaWd0eXBlNCB7XG4gICAgICAgICAgaGVpZ2h0OiA2NDhweDsgfVxuICAgICAgICAuZ3JpZC1pdGVtLmJpZy50eXBlMiwgLmdyaWQtaXRlbS5iaWcudHlwZTMge1xuICAgICAgICAgIGhlaWdodDogMTI5NnB4OyB9XG4gICAgICAgIC5ncmlkLWl0ZW0uYmlnLnR5cGUyIC5pbmZvQ29udCB7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIHRvcDogNjQ4cHg7IH1cbiAgICAgICAgLmdyaWQtaXRlbS5iaWcgLmluZm9Db250IHtcbiAgICAgICAgICBwYWRkaW5nOiAyN3B4IDU0cHg7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5ncmlkLWl0ZW0uYmlnIHtcbiAgICAgICAgaGVpZ2h0OiA2NDhweDsgfVxuICAgICAgICAuZ3JpZC1pdGVtLmJpZyBmaWd1cmUge1xuICAgICAgICAgIGhlaWdodDogNjMycHg7IH1cbiAgICAgICAgLmdyaWQtaXRlbS5iaWcudHlwZTEsIC5ncmlkLWl0ZW0uYmlnLnR5cGVFeHBvLCAuZ3JpZC1pdGVtLmJpZ3R5cGU0IHtcbiAgICAgICAgICBoZWlnaHQ6IDY0OHB4OyB9XG4gICAgICAgIC5ncmlkLWl0ZW0uYmlnLnR5cGUyLCAuZ3JpZC1pdGVtLmJpZy50eXBlMyB7XG4gICAgICAgICAgaGVpZ2h0OiAxMjk2cHg7IH1cbiAgICAgICAgLmdyaWQtaXRlbS5iaWcudHlwZTIgLmluZm9Db250IHtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgdG9wOiA2NDhweDsgfVxuICAgICAgICAuZ3JpZC1pdGVtLmJpZyAuaW5mb0NvbnQge1xuICAgICAgICAgIHBhZGRpbmc6IDI3cHggNTRweDsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgLmdyaWQtaXRlbS5iaWcge1xuICAgICAgICBoZWlnaHQ6IDc2OHB4OyB9XG4gICAgICAgIC5ncmlkLWl0ZW0uYmlnIGZpZ3VyZSB7XG4gICAgICAgICAgaGVpZ2h0OiA3NTJweDsgfVxuICAgICAgICAuZ3JpZC1pdGVtLmJpZy50eXBlMSwgLmdyaWQtaXRlbS5iaWcudHlwZUV4cG8sIC5ncmlkLWl0ZW0uYmlndHlwZTQge1xuICAgICAgICAgIGhlaWdodDogNzY4cHg7IH1cbiAgICAgICAgLmdyaWQtaXRlbS5iaWcudHlwZTIsIC5ncmlkLWl0ZW0uYmlnLnR5cGUzIHtcbiAgICAgICAgICBoZWlnaHQ6IDE1MzZweDsgfVxuICAgICAgICAuZ3JpZC1pdGVtLmJpZy50eXBlMiAuaW5mb0NvbnQge1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICB0b3A6IDc2OHB4OyB9XG4gICAgICAgIC5ncmlkLWl0ZW0uYmlnIC5pbmZvQ29udCB7XG4gICAgICAgICAgcGFkZGluZzogMzJweCA2NHB4OyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAyKSwgKG1pbi1yZXNvbHV0aW9uOiAxOTJkcGkpIHtcbiAgICAgIC5ncmlkLWl0ZW0uYmlnIHtcbiAgICAgICAgaGVpZ2h0OiA5MjhweDsgfVxuICAgICAgICAuZ3JpZC1pdGVtLmJpZyBmaWd1cmUge1xuICAgICAgICAgIGhlaWdodDogOTEycHg7IH1cbiAgICAgICAgLmdyaWQtaXRlbS5iaWcudHlwZTEsIC5ncmlkLWl0ZW0uYmlnLnR5cGVFeHBvLCAuZ3JpZC1pdGVtLmJpZ3R5cGU0IHtcbiAgICAgICAgICBoZWlnaHQ6IDkyOHB4OyB9XG4gICAgICAgIC5ncmlkLWl0ZW0uYmlnLnR5cGUyLCAuZ3JpZC1pdGVtLmJpZy50eXBlMyB7XG4gICAgICAgICAgaGVpZ2h0OiAxODU2cHg7IH1cbiAgICAgICAgLmdyaWQtaXRlbS5iaWcudHlwZTIgLmluZm9Db250IHtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgdG9wOiA5MjhweDsgfVxuICAgICAgICAuZ3JpZC1pdGVtLmJpZyAuaW5mb0NvbnQge1xuICAgICAgICAgIHBhZGRpbmc6IDM4LjY2NjY3cHggNzcuMzMzMzNweDsgfSB9XG4gICAgLmdyaWQtaXRlbS5iaWc6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICBmbG9hdDogcmlnaHQ7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuZ3JpZC1pdGVtLmJpZyB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwOyB9XG4gICAgICAgIC5ncmlkLWl0ZW0uYmlnOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgIGZsb2F0OiByaWdodDsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLmdyaWQtaXRlbS5iaWcge1xuICAgICAgICB3aWR0aDogNjYuNjY2NjclO1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwOyB9XG4gICAgICAgIC5ncmlkLWl0ZW0uYmlnOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgIGZsb2F0OiByaWdodDsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgLmdyaWQtaXRlbS5iaWcge1xuICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwOyB9XG4gICAgICAgIC5ncmlkLWl0ZW0uYmlnOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgIGZsb2F0OiByaWdodDsgfSB9XG5cbi50eXBlMSAuaW5mb0NvbnQsIC50eXBlRXhwbyAuaW5mb0NvbnQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMjQ7XG4gIHBhZGRpbmc6IDAgIWltcG9ydGFudDsgfVxuXG4udHlwZTEgLnRhZ3RpdGxlLCAudHlwZUV4cG8gLnRhZ3RpdGxlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZsb2F0OiBub25lO1xuICB3aWR0aDogMTAwJTtcbiAgbGluZS1oZWlnaHQ6IDEuNjsgfVxuXG4udHlwZTEud2l0aENvbnQgLmluZm9Db250LCAud2l0aENvbnQudHlwZUV4cG8gLmluZm9Db250IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IDM2JTsgfVxuXG4udHlwZTEgaDUsIC50eXBlRXhwbyBoNSwgLnR5cGUxIC5yc3QgaDQsIC5yc3QgLnR5cGUxIGg0LCAudHlwZUV4cG8gLnJzdCBoNCwgLnJzdCAudHlwZUV4cG8gaDQsIC50eXBlMSAucnN0IGgzLCAucnN0IC50eXBlMSBoMywgLnR5cGVFeHBvIC5yc3QgaDMsIC5yc3QgLnR5cGVFeHBvIGgzLCAudHlwZTEgLnJzdCAuaDMsIC5yc3QgLnR5cGUxIC5oMywgLnR5cGVFeHBvIC5yc3QgLmgzLCAucnN0IC50eXBlRXhwbyAuaDMsIC50eXBlMSAucnN0IGgyLCAucnN0IC50eXBlMSBoMiwgLnR5cGVFeHBvIC5yc3QgaDIsIC5yc3QgLnR5cGVFeHBvIGgyLCAudHlwZTEgLnJzdCBoMSwgLnJzdCAudHlwZTEgaDEsIC50eXBlRXhwbyAucnN0IGgxLCAucnN0IC50eXBlRXhwbyBoMSwgLnR5cGUxIC5yc3QgLnRpdGxlLTEsIC5yc3QgLnR5cGUxIC50aXRsZS0xLCAudHlwZUV4cG8gLnJzdCAudGl0bGUtMSwgLnJzdCAudHlwZUV4cG8gLnRpdGxlLTEsIC50eXBlMSAucnN0IC50aXRsZS0yLCAucnN0IC50eXBlMSAudGl0bGUtMiwgLnR5cGVFeHBvIC5yc3QgLnRpdGxlLTIsIC5yc3QgLnR5cGVFeHBvIC50aXRsZS0yLCAudHlwZTEgLnJzdCAudGl0bGUtMywgLnJzdCAudHlwZTEgLnRpdGxlLTMsIC50eXBlRXhwbyAucnN0IC50aXRsZS0zLCAucnN0IC50eXBlRXhwbyAudGl0bGUtMywgLnR5cGUxIC5yc3QgLnRpdGxlLTQsIC5yc3QgLnR5cGUxIC50aXRsZS00LCAudHlwZUV4cG8gLnJzdCAudGl0bGUtNCwgLnJzdCAudHlwZUV4cG8gLnRpdGxlLTQsIC50eXBlMSAudGl0bGUtNSwgLnR5cGVFeHBvIC50aXRsZS01IHtcbiAgbWFyZ2luOiAwO1xuICBkaXNwbGF5OiBibG9jaztcbiAgZmxvYXQ6IG5vbmU7XG4gIGNvbG9yOiAjZGQzMzMzOyB9XG4gIC50eXBlMSBoNSBzcGFuLCAudHlwZUV4cG8gaDUgc3BhbiwgLnR5cGUxIC5yc3QgaDQgc3BhbiwgLnJzdCAudHlwZTEgaDQgc3BhbiwgLnR5cGVFeHBvIC5yc3QgaDQgc3BhbiwgLnJzdCAudHlwZUV4cG8gaDQgc3BhbiwgLnR5cGUxIC5yc3QgaDMgc3BhbiwgLnJzdCAudHlwZTEgaDMgc3BhbiwgLnR5cGVFeHBvIC5yc3QgaDMgc3BhbiwgLnJzdCAudHlwZUV4cG8gaDMgc3BhbiwgLnR5cGUxIC5yc3QgLmgzIHNwYW4sIC5yc3QgLnR5cGUxIC5oMyBzcGFuLCAudHlwZUV4cG8gLnJzdCAuaDMgc3BhbiwgLnJzdCAudHlwZUV4cG8gLmgzIHNwYW4sIC50eXBlMSAucnN0IGgyIHNwYW4sIC5yc3QgLnR5cGUxIGgyIHNwYW4sIC50eXBlRXhwbyAucnN0IGgyIHNwYW4sIC5yc3QgLnR5cGVFeHBvIGgyIHNwYW4sIC50eXBlMSAucnN0IGgxIHNwYW4sIC5yc3QgLnR5cGUxIGgxIHNwYW4sIC50eXBlRXhwbyAucnN0IGgxIHNwYW4sIC5yc3QgLnR5cGVFeHBvIGgxIHNwYW4sIC50eXBlMSAucnN0IC50aXRsZS0xIHNwYW4sIC5yc3QgLnR5cGUxIC50aXRsZS0xIHNwYW4sIC50eXBlRXhwbyAucnN0IC50aXRsZS0xIHNwYW4sIC5yc3QgLnR5cGVFeHBvIC50aXRsZS0xIHNwYW4sIC50eXBlMSAucnN0IC50aXRsZS0yIHNwYW4sIC5yc3QgLnR5cGUxIC50aXRsZS0yIHNwYW4sIC50eXBlRXhwbyAucnN0IC50aXRsZS0yIHNwYW4sIC5yc3QgLnR5cGVFeHBvIC50aXRsZS0yIHNwYW4sIC50eXBlMSAucnN0IC50aXRsZS0zIHNwYW4sIC5yc3QgLnR5cGUxIC50aXRsZS0zIHNwYW4sIC50eXBlRXhwbyAucnN0IC50aXRsZS0zIHNwYW4sIC5yc3QgLnR5cGVFeHBvIC50aXRsZS0zIHNwYW4sIC50eXBlMSAucnN0IC50aXRsZS00IHNwYW4sIC5yc3QgLnR5cGUxIC50aXRsZS00IHNwYW4sIC50eXBlRXhwbyAucnN0IC50aXRsZS00IHNwYW4sIC5yc3QgLnR5cGVFeHBvIC50aXRsZS00IHNwYW4sIC50eXBlMSAudGl0bGUtNSBzcGFuLCAudHlwZUV4cG8gLnRpdGxlLTUgc3BhbiB7XG4gICAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgICBiYWNrZ3JvdW5kOiAjZjdmN2Y3O1xuICAgIHBhZGRpbmc6IDAuNXJlbTtcbiAgICBwYWRkaW5nLXRvcDogMDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICAtd2Via2l0LWJveC1kZWNvcmF0aW9uLWJyZWFrOiBjbG9uZTtcbiAgICAtbXMtYm94LWRlY29yYXRpb24tYnJlYWs6IGNsb25lO1xuICAgIC1vLWJveC1kZWNvcmF0aW9uLWJyZWFrOiBjbG9uZTtcbiAgICBib3gtZGVjb3JhdGlvbi1icmVhazogY2xvbmU7IH1cblxuLnR5cGUxIGgyLCAudHlwZUV4cG8gaDIsIC50eXBlMSAucnN0IGgxLCAucnN0IC50eXBlMSBoMSwgLnR5cGVFeHBvIC5yc3QgaDEsIC5yc3QgLnR5cGVFeHBvIGgxLCAudHlwZTEgLnJzdCAudGl0bGUtMSwgLnJzdCAudHlwZTEgLnRpdGxlLTEsIC50eXBlRXhwbyAucnN0IC50aXRsZS0xLCAucnN0IC50eXBlRXhwbyAudGl0bGUtMSwgLnR5cGUxIC50aXRsZS0yLCAudHlwZUV4cG8gLnRpdGxlLTIge1xuICBkaXNwbGF5OiBpbmxpbmU7XG4gIGJhY2tncm91bmQ6ICMwYTBhMGE7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgZm9udC13ZWlnaHQ6IDgwMDtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIGxpbmUtaGVpZ2h0OiAxLjMxO1xuICBwYWRkaW5nOiAwLjVyZW07XG4gIHBhZGRpbmctdG9wOiAwO1xuICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgLXdlYmtpdC1ib3gtZGVjb3JhdGlvbi1icmVhazogY2xvbmU7XG4gIC1tcy1ib3gtZGVjb3JhdGlvbi1icmVhazogY2xvbmU7XG4gIC1vLWJveC1kZWNvcmF0aW9uLWJyZWFrOiBjbG9uZTtcbiAgYm94LWRlY29yYXRpb24tYnJlYWs6IGNsb25lOyB9XG4gIC50eXBlMSBoMiBhLCAudHlwZUV4cG8gaDIgYSwgLnR5cGUxIC5yc3QgaDEgYSwgLnJzdCAudHlwZTEgaDEgYSwgLnR5cGVFeHBvIC5yc3QgaDEgYSwgLnJzdCAudHlwZUV4cG8gaDEgYSwgLnR5cGUxIC5yc3QgLnRpdGxlLTEgYSwgLnJzdCAudHlwZTEgLnRpdGxlLTEgYSwgLnR5cGVFeHBvIC5yc3QgLnRpdGxlLTEgYSwgLnJzdCAudHlwZUV4cG8gLnRpdGxlLTEgYSwgLnR5cGUxIC50aXRsZS0yIGEsIC50eXBlRXhwbyAudGl0bGUtMiBhIHtcbiAgICBjb2xvcjogd2hpdGU7IH1cblxuLnR5cGUxIC5kZXNjLCAudHlwZUV4cG8gLmRlc2MsIC50eXBlMSAuc2hvcnRkZXNjLCAudHlwZUV4cG8gLnNob3J0ZGVzYyB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLnR5cGUyIC5jb250ZW50R3JpZCB7XG4gIGJvcmRlci1ib3R0b206IDRweCBzb2xpZCAjRUNFQ0VGOyB9XG5cbi50eXBlMiAuaW5mb0NvbnQge1xuICBsaW5lLWhlaWdodDogMS4yNDsgfVxuXG4udHlwZTIgLnRhZ3RpdGxlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZsb2F0OiBsZWZ0O1xuICB3aWR0aDogMTAwJTtcbiAgbGluZS1oZWlnaHQ6IDEuNjsgfVxuXG4udHlwZTIgaDUsIC50eXBlMiAucnN0IGg0LCAucnN0IC50eXBlMiBoNCwgLnR5cGUyIC5yc3QgaDMsIC5yc3QgLnR5cGUyIGgzLCAudHlwZTIgLnJzdCAuaDMsIC5yc3QgLnR5cGUyIC5oMywgLnR5cGUyIC5yc3QgaDIsIC5yc3QgLnR5cGUyIGgyLCAudHlwZTIgLnJzdCBoMSwgLnJzdCAudHlwZTIgaDEsIC50eXBlMiAucnN0IC50aXRsZS0xLCAucnN0IC50eXBlMiAudGl0bGUtMSwgLnR5cGUyIC5yc3QgLnRpdGxlLTIsIC5yc3QgLnR5cGUyIC50aXRsZS0yLCAudHlwZTIgLnJzdCAudGl0bGUtMywgLnJzdCAudHlwZTIgLnRpdGxlLTMsIC50eXBlMiAucnN0IC50aXRsZS00LCAucnN0IC50eXBlMiAudGl0bGUtNCwgLnR5cGUyIC50aXRsZS01IHtcbiAgbWFyZ2luOiAwO1xuICBsaW5lLWhlaWdodDogMS42O1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgfVxuXG4udHlwZTIgaDIsIC50eXBlMiAucnN0IGgxLCAucnN0IC50eXBlMiBoMSwgLnR5cGUyIC5yc3QgLnRpdGxlLTEsIC5yc3QgLnR5cGUyIC50aXRsZS0xLCAudHlwZTIgLnRpdGxlLTIge1xuICBsaW5lLWhlaWdodDogMS4xMjU7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICBmb250LXdlaWdodDogMjAwOyB9XG5cbi50eXBlMiAuc2hvcnRkZXNjIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4udHlwZTMgLmNvbnRlbnRHcmlkLCAudHlwZTQgLmNvbnRlbnRHcmlkIHtcbiAgYm9yZGVyLWJvdHRvbTogNHB4IHNvbGlkICNFQ0VDRUY7IH1cblxuLnR5cGUzIC5pbmZvQ29udCwgLnR5cGU0IC5pbmZvQ29udCB7XG4gIGxpbmUtaGVpZ2h0OiAxLjI0OyB9XG5cbi50eXBlMyAudGFndGl0bGUsIC50eXBlNCAudGFndGl0bGUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZmxvYXQ6IGxlZnQ7XG4gIHdpZHRoOiAxMDAlO1xuICBsaW5lLWhlaWdodDogMS42OyB9XG5cbi50eXBlMyBoNSwgLnR5cGUzIC5yc3QgaDQsIC5yc3QgLnR5cGUzIGg0LCAudHlwZTMgLnJzdCBoMywgLnJzdCAudHlwZTMgaDMsIC50eXBlMyAucnN0IC5oMywgLnJzdCAudHlwZTMgLmgzLCAudHlwZTMgLnJzdCBoMiwgLnJzdCAudHlwZTMgaDIsIC50eXBlMyAucnN0IGgxLCAucnN0IC50eXBlMyBoMSwgLnR5cGUzIC5yc3QgLnRpdGxlLTEsIC5yc3QgLnR5cGUzIC50aXRsZS0xLCAudHlwZTMgLnJzdCAudGl0bGUtMiwgLnJzdCAudHlwZTMgLnRpdGxlLTIsIC50eXBlMyAucnN0IC50aXRsZS0zLCAucnN0IC50eXBlMyAudGl0bGUtMywgLnR5cGUzIC5yc3QgLnRpdGxlLTQsIC5yc3QgLnR5cGUzIC50aXRsZS00LCAudHlwZTMgLnRpdGxlLTUsIC50eXBlNCBoNSwgLnR5cGU0IC5yc3QgaDQsIC5yc3QgLnR5cGU0IGg0LCAudHlwZTQgLnJzdCBoMywgLnJzdCAudHlwZTQgaDMsIC50eXBlNCAucnN0IC5oMywgLnJzdCAudHlwZTQgLmgzLCAudHlwZTQgLnJzdCBoMiwgLnJzdCAudHlwZTQgaDIsIC50eXBlNCAucnN0IGgxLCAucnN0IC50eXBlNCBoMSwgLnR5cGU0IC5yc3QgLnRpdGxlLTEsIC5yc3QgLnR5cGU0IC50aXRsZS0xLCAudHlwZTQgLnJzdCAudGl0bGUtMiwgLnJzdCAudHlwZTQgLnRpdGxlLTIsIC50eXBlNCAucnN0IC50aXRsZS0zLCAucnN0IC50eXBlNCAudGl0bGUtMywgLnR5cGU0IC5yc3QgLnRpdGxlLTQsIC5yc3QgLnR5cGU0IC50aXRsZS00LCAudHlwZTQgLnRpdGxlLTUge1xuICBtYXJnaW46IDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjY7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyB9XG5cbi50eXBlMyBoMiwgLnR5cGUzIC5yc3QgaDEsIC5yc3QgLnR5cGUzIGgxLCAudHlwZTMgLnJzdCAudGl0bGUtMSwgLnJzdCAudHlwZTMgLnRpdGxlLTEsIC50eXBlMyAudGl0bGUtMiwgLnR5cGU0IGgyLCAudHlwZTQgLnJzdCBoMSwgLnJzdCAudHlwZTQgaDEsIC50eXBlNCAucnN0IC50aXRsZS0xLCAucnN0IC50eXBlNCAudGl0bGUtMSwgLnR5cGU0IC50aXRsZS0yIHtcbiAgbGluZS1oZWlnaHQ6IDEuMTI1O1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgZm9udC13ZWlnaHQ6IDEwMDsgfVxuXG4udHlwZTMgLmRlc2MsIC50eXBlMyAuc2hvcnRkZXNjLCAudHlwZTQgLmRlc2MsIC50eXBlNCAuc2hvcnRkZXNjIHtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuLnR5cGU0IC5zaG9ydGRlc2Mge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5ncmlkLWl0ZW0tLXdpZHRoMiB7XG4gIHdpZHRoOiAyMDBweDsgfVxuXG4udHlwZUV4cG8gLmRlc2MsIC50eXBlRXhwbyAuc2hvcnRkZXNjIHtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuLnR5cGVFeHBvLndpdGhDb250IC5pbmZvQ29udCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiA1MCU7XG4gIHdpZHRoOiAxMDAlOyB9XG4gIC50eXBlRXhwby53aXRoQ29udCAuaW5mb0NvbnQgLmRlc2Mge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgLnR5cGVFeHBvLndpdGhDb250IC5pbmZvQ29udCAuc2hvcnRkZXNjIHtcbiAgICBtYXJnaW4tdG9wOiAxcmVtO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICB0b3A6IDEwMCU7IH1cblxuI2NvbnRyb2xzLCAjY29udHJvbHNfbGlrZSB7XG4gIG1hcmdpbi1sZWZ0OiAxcmVtO1xuICBtYXJnaW4tcmlnaHQ6IDFyZW07XG4gIG1hcmdpbi10b3A6IDFyZW07XG4gIGZsb2F0OiBsZWZ0O1xuICBjbGVhcjogYm90aDtcbiAgd2lkdGg6IGNhbGMoMTAwJSAtIDJyZW0pOyB9XG4gICNjb250cm9scyBhLCAjY29udHJvbHNfbGlrZSBhIHtcbiAgICBiYWNrZ3JvdW5kOiAjMGEwYTBhO1xuICAgIGNvbG9yOiAjZjdmN2Y3O1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgbWFyZ2luLXJpZ2h0OiAwLjI1cmVtOyB9XG4gICAgI2NvbnRyb2xzIGEuaXMtY2hlY2tlZCwgI2NvbnRyb2xzX2xpa2UgYS5pcy1jaGVja2VkIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNkZDMzMzM7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gICAgI2NvbnRyb2xzIC5tZW51IGxpLCAjY29udHJvbHNfbGlrZSAubWVudSBsaSB7XG4gICAgICBkaXNwbGF5OiBibG9jazsgfSB9XG4gICNjb250cm9scyBbZGF0YS1maWx0ZXI9XCJub25lXCJdLCAjY29udHJvbHNfbGlrZSBbZGF0YS1maWx0ZXI9XCJub25lXCJdIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG5cbiN0aGVtZUNvbnRyb2xzLCAjY29udHJvbHNfbGlrZSB7XG4gIG1hcmdpbi1sZWZ0OiAxcmVtO1xuICBtYXJnaW4tcmlnaHQ6IDFyZW07XG4gIG1hcmdpbi10b3A6IDFyZW07XG4gIGZsb2F0OiBsZWZ0O1xuICBjbGVhcjogYm90aDtcbiAgd2lkdGg6IGNhbGMoMTAwJSAtIDJyZW0pOyB9XG4gICN0aGVtZUNvbnRyb2xzIGEsICNjb250cm9sc19saWtlIGEge1xuICAgIGJhY2tncm91bmQ6ICMwYTBhMGE7XG4gICAgY29sb3I6ICNmN2Y3Zjc7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBtYXJnaW4tcmlnaHQ6IDAuMjVyZW07IH1cbiAgICAjdGhlbWVDb250cm9scyBhLmlzLWNoZWNrZWQsICNjb250cm9sc19saWtlIGEuaXMtY2hlY2tlZCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGQzMzMzOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAjdGhlbWVDb250cm9scyAubWVudSwgI2NvbnRyb2xzX2xpa2UgLm1lbnUge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICAgICAgZmxleC13cmFwOiB3cmFwOyB9XG4gICAgICAjdGhlbWVDb250cm9scyAubWVudSBsaSwgI2NvbnRyb2xzX2xpa2UgLm1lbnUgbGkge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA0cHg7IH1cbiAgICAgICAgI3RoZW1lQ29udHJvbHMgLm1lbnUgbGkgYSwgI2NvbnRyb2xzX2xpa2UgLm1lbnUgbGkgYSB7XG4gICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gICAgI3RoZW1lQ29udHJvbHMgLm1lbnUgbGksICNjb250cm9sc19saWtlIC5tZW51IGxpIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrOyB9IH1cbiAgI3RoZW1lQ29udHJvbHMgW2RhdGEtZmlsdGVyPVwibm9uZVwiXSwgI2NvbnRyb2xzX2xpa2UgW2RhdGEtZmlsdGVyPVwibm9uZVwiXSB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuXG4uZmlmdGVlbiB7XG4gIG1heC13aWR0aDogNzVyZW07XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87IH1cbiAgLmZpZnRlZW46OmJlZm9yZSwgLmZpZnRlZW46OmFmdGVyIHtcbiAgICBjb250ZW50OiAnICc7XG4gICAgZGlzcGxheTogdGFibGU7IH1cbiAgLmZpZnRlZW46OmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDsgfVxuICAuZmlmdGVlbiAuZ3JpZC1pdGVtIHtcbiAgICBmbG9hdDogbm9uZTtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87IH1cbiAgLmZpZnRlZW4gLmZpZnRlZW4xIHtcbiAgICB3aWR0aDogNi42NjY2NyU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07XG4gICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtOyB9XG4gICAgLmZpZnRlZW4gLmZpZnRlZW4xOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgZmxvYXQ6IHJpZ2h0OyB9XG4gIC5maWZ0ZWVuIC5maWZ0ZWVuMyB7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07IH1cbiAgICAuZmlmdGVlbiAuZmlmdGVlbjM6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICBmbG9hdDogcmlnaHQ7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAuZmlmdGVlbiAuZmlmdGVlbjMge1xuICAgICAgICB3aWR0aDogMjAlO1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTsgfVxuICAgICAgICAuZmlmdGVlbiAuZmlmdGVlbjM6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgZmxvYXQ6IHJpZ2h0OyB9IH1cblxuLypGb250cyBsaWJyYXJ5Ki9cbi8qRm9udHMgbGlicmFyeSovXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdpY29tb29uJztcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9pY29tb29uLmVvdD83cXFqZHNcIik7XG4gIHNyYzogdXJsKFwiLi4vZm9udHMvaWNvbW9vbi5lb3Q/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+DtlwiOyB9XG5cbi5pY29uLW9yZGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74WQXCI7IH1cblxuLmljb24teW91dHViZS1zcXVhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhaZcIjsgfVxuXG4uaWNvbi15b3V0dWJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74WnXCI7IH1cblxuLmljb24tbmV3c3BhcGVyLW86YmVmb3JlIHtcbiAgY29udGVudDogXCLvh6pcIjsgfVxuXG4vKiBTbGlkZXIgKi9cbi5zbGljay1zbGlkZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAtd2Via2l0LXRvdWNoLWNhbGxvdXQ6IG5vbmU7XG4gIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1raHRtbC11c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1vei11c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1zLXRvdWNoLWFjdGlvbjogcGFuLXk7XG4gIHRvdWNoLWFjdGlvbjogcGFuLXk7XG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cblxuLnNsaWNrLWxpc3Qge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7IH1cbiAgLnNsaWNrLWxpc3Q6Zm9jdXMge1xuICAgIG91dGxpbmU6IG5vbmU7IH1cbiAgLnNsaWNrLWxpc3QuZHJhZ2dpbmcge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBjdXJzb3I6IGhhbmQ7IH1cblxuLnNsaWNrLXNsaWRlciAuc2xpY2stdHJhY2ssXG4uc2xpY2stc2xpZGVyIC5zbGljay1saXN0IHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApOyB9XG5cbi5zbGljay10cmFjayB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xuICBkaXNwbGF5OiBibG9jazsgfVxuICAuc2xpY2stdHJhY2s6YmVmb3JlLCAuc2xpY2stdHJhY2s6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgZGlzcGxheTogdGFibGU7IH1cbiAgLnNsaWNrLXRyYWNrOmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDsgfVxuICAuc2xpY2stbG9hZGluZyAuc2xpY2stdHJhY2sge1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjsgfVxuXG4uc2xpY2stc2xpZGUge1xuICBmbG9hdDogbGVmdDtcbiAgaGVpZ2h0OiAxMDAlO1xuICBtaW4taGVpZ2h0OiAxcHg7XG4gIGRpc3BsYXk6IG5vbmU7IH1cbiAgW2Rpcj1cInJ0bFwiXSAuc2xpY2stc2xpZGUge1xuICAgIGZsb2F0OiByaWdodDsgfVxuICAuc2xpY2stc2xpZGUgaW1nIHtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuICAuc2xpY2stc2xpZGUuc2xpY2stbG9hZGluZyBpbWcge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgLnNsaWNrLXNsaWRlLmRyYWdnaW5nIGltZyB7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7IH1cbiAgLnNsaWNrLWluaXRpYWxpemVkIC5zbGljay1zbGlkZSB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cbiAgLnNsaWNrLWxvYWRpbmcgLnNsaWNrLXNsaWRlIHtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47IH1cbiAgLnNsaWNrLXZlcnRpY2FsIC5zbGljay1zbGlkZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50OyB9XG5cbi5zbGljay1hcnJvdy5zbGljay1oaWRkZW4ge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5zbGljay1hcnJvdyB7XG4gIGZvbnQtZmFtaWx5OiAnaWNvbW9vbic7IH1cbiAgLnNsaWNrLWFycm93OmJlZm9yZSB7XG4gICAgZm9udC1mYW1pbHk6ICdpY29tb29uJzsgfVxuXG4uc2xpY2stcHJldiB7XG4gIGZvbnQtc2l6ZTogMDsgfVxuICAuc2xpY2stcHJldjpiZWZvcmUge1xuICAgIGZvbnQtc2l6ZTogNHJlbTsgfVxuXG4uc2xpY2stbmV4dCB7XG4gIGZvbnQtc2l6ZTogMDsgfVxuICAuc2xpY2stbmV4dDpiZWZvcmUge1xuICAgIGZvbnQtc2l6ZTogNHJlbTsgfVxuXG4ucmV2ZWFsIC5zbGljay1wcmV2LCAucmV2ZWFsIC5zbGljay1uZXh0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgd2lkdGg6IDJyZW07XG4gIGhlaWdodDogMnJlbTtcbiAgei1pbmRleDogMjA7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAlLCAtNTAlKTsgfVxuICAucmV2ZWFsIC5zbGljay1wcmV2OmJlZm9yZSwgLnJldmVhbCAuc2xpY2stbmV4dDpiZWZvcmUge1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC41KTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogNTAlO1xuICAgIHRvcDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgIGNvbG9yOiAjRkZGO1xuICAgIGJvcmRlci1yYWRpdXM6IDEwMHB4O1xuICAgIGZvbnQtc2l6ZTogMS4xcmVtO1xuICAgIHBhZGRpbmc6IDAuNXJlbTsgfVxuXG4ucmV2ZWFsIC5zbGljay1wcmV2IHtcbiAgbGVmdDogMC4ycmVtOyB9XG5cbi5yZXZlYWwgLmNsb3NlLWJ1dHRvbiB7XG4gIGhlaWdodDogMnJlbTtcbiAgd2lkdGg6IDJyZW07XG4gIHotaW5kZXg6IDMwOyB9XG5cbi5yZXZlYWwgLnNsaWNrLW5leHQge1xuICByaWdodDogMC4ycmVtOyB9XG5cbi8qIFNsaWRlciAqL1xuLnNsaWNrLWxvYWRpbmcgLnNsaWNrLWxpc3Qge1xuICBiYWNrZ3JvdW5kOiAjZmZmIHVybChcIi4vYWpheC1sb2FkZXIuZ2lmXCIpIGNlbnRlciBjZW50ZXIgbm8tcmVwZWF0OyB9XG5cbi8qIEljb25zICovXG4ucmV2ZWFsIC5jbG9zZS1idXR0b24ge1xuICBoZWlnaHQ6IDNyZW07XG4gIHdpZHRoOiAzcmVtO1xuICBib3JkZXItcmFkaXVzOiAxMDBweDtcbiAgbGluZS1oZWlnaHQ6IDEuMXJlbTtcbiAgYmFja2dyb3VuZDogIzAwMDsgfVxuICAucmV2ZWFsIC5jbG9zZS1idXR0b24gc3BhbiB7XG4gICAgd2lkdGg6IDNyZW07XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGxpbmUtaGVpZ2h0OiAxcmVtO1xuICAgIGNvbG9yOiAjRkZGO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICBsZWZ0OiA1MCU7XG4gICAgZm9udC1zaXplOiAzcmVtO1xuICAgIGhlaWdodDogMS41cmVtO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7IH1cblxuLyogQXJyb3dzICovXG4ubWVudS1nYWxsZXJ5IGEge1xuICBmb250LXNpemU6IDFyZW07XG4gIGNvbG9yOiAjMGEwYTBhOyB9XG4gIC5tZW51LWdhbGxlcnkgYTpob3ZlciB7XG4gICAgY29sb3I6ICNkZDMzMzM7IH1cblxuLm1lbnUtZ2FsbGVyeSAuZHJvcGRvd24tcGFuZSB7XG4gIHBhZGRpbmc6IDA7IH1cbiAgLm1lbnUtZ2FsbGVyeSAuZHJvcGRvd24tcGFuZSBsaSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNkZGQ7IH1cbiAgICAubWVudS1nYWxsZXJ5IC5kcm9wZG93bi1wYW5lIGxpOmxhc3QtY2hpbGQge1xuICAgICAgYm9yZGVyLWJvdHRvbTogMDsgfVxuXG4ubWVudS1nYWxsZXJ5IC5kcm9wZG93bi5tZW51IC5maXJzdC1zdWIge1xuICBib3JkZXI6IDFweCBzb2xpZCAjREREOyB9XG5cbi5idXR0b24uZXhwbyB7XG4gIGJhY2tncm91bmQ6ICNmN2Y3Zjc7XG4gIGJvcmRlcjogIzhhOGE4YSAzcHggc29saWQ7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgY29sb3I6ICMwYTBhMGE7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIHBhZGRpbmctcmlnaHQ6IDRyZW07XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgdGV4dC1pbmRlbnQ6IDFyZW07IH1cbiAgLmJ1dHRvbi5leHBvOmFmdGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDA7XG4gICAgdG9wOiAwO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB3aWR0aDogM3JlbTtcbiAgICBsaW5lLWhlaWdodDogMTAwJTtcbiAgICBjb250ZW50OiBcIitcIjtcbiAgICBib3JkZXI6ICM4YThhOGEgM3B4IHNvbGlkO1xuICAgIGJhY2tncm91bmQ6ICM4YThhOGE7XG4gICAgY29sb3I6IHdoaXRlO1xuICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgICBsaW5lLWhlaWdodDogMnJlbTtcbiAgICB0ZXh0LWluZGVudDogMHJlbTsgfVxuXG4uZ2FsbGVyeUV4cG8ge1xuICAvKiBEb3RzICovIH1cbiAgLmdhbGxlcnlFeHBvIC5kZXNjU2xpZGUge1xuICAgIHBhZGRpbmc6IDAgMnJlbSAwIDA7IH1cbiAgLmdhbGxlcnlFeHBvIC50aXRsZVNsaWRlICoge1xuICAgIHRleHQtdHJhbnNmb3JtOiBub25lOyB9XG4gIC5nYWxsZXJ5RXhwbyAudGl0bGVTbGlkZSBoMywgLmdhbGxlcnlFeHBvIC50aXRsZVNsaWRlIC5oMywgLmdhbGxlcnlFeHBvIC50aXRsZVNsaWRlIC5yc3QgaDIsIC5yc3QgLmdhbGxlcnlFeHBvIC50aXRsZVNsaWRlIGgyLCAuZ2FsbGVyeUV4cG8gLnRpdGxlU2xpZGUgLnJzdCBoMSwgLnJzdCAuZ2FsbGVyeUV4cG8gLnRpdGxlU2xpZGUgaDEsIC5nYWxsZXJ5RXhwbyAudGl0bGVTbGlkZSAucnN0IC50aXRsZS0xLCAucnN0IC5nYWxsZXJ5RXhwbyAudGl0bGVTbGlkZSAudGl0bGUtMSwgLmdhbGxlcnlFeHBvIC50aXRsZVNsaWRlIC5yc3QgLnRpdGxlLTIsIC5yc3QgLmdhbGxlcnlFeHBvIC50aXRsZVNsaWRlIC50aXRsZS0yLCAuZ2FsbGVyeUV4cG8gLnRpdGxlU2xpZGUgLnRpdGxlLTMge1xuICAgIGZvbnQtd2VpZ2h0OiA4MDA7IH1cbiAgLmdhbGxlcnlFeHBvIC5zbGljay1jdXJyZW50IHtcbiAgICBoZWlnaHQ6IGF1dG87IH1cbiAgLmdhbGxlcnlFeHBvIC5zbGljay1zbGlkZTpub3QoLnNsaWNrLWN1cnJlbnQpIHtcbiAgICBoZWlnaHQ6IDA7IH1cbiAgLmdhbGxlcnlFeHBvIC5zbGlkZXItZm9yIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDsgfVxuICAgIC5nYWxsZXJ5RXhwbyAuc2xpZGVyLWZvciAuc2xpY2stcHJldiwgLmdhbGxlcnlFeHBvIC5zbGlkZXItZm9yIC5zbGljay1hcnJvdyB7XG4gICAgICB0b3A6IDA7XG4gICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xuICAgICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbiAgICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xuICAgICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7IH1cbiAgLmdhbGxlcnlFeHBvIC5zbGlkZXItbmF2IHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7IH1cbiAgICAuZ2FsbGVyeUV4cG8gLnNsaWRlci1uYXYgaW1nIHtcbiAgICAgIG1hcmdpbjogMyU7XG4gICAgICBtYXgtd2lkdGg6IDk2JTtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNEREQ7IH1cbiAgLmdhbGxlcnlFeHBvIC5pbWFnZS1zbGlkZXItY29udGFpbmVyIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAgIC5nYWxsZXJ5RXhwbyAuaW1hZ2Utc2xpZGVyLWNvbnRhaW5lciBhIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgICAuZ2FsbGVyeUV4cG8gLmltYWdlLXNsaWRlci1jb250YWluZXIgYTpob3ZlcjphZnRlciB7XG4gICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICAgICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICAgICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgICAgIGNvbnRlbnQ6IFwiXFxlOTExXCI7XG4gICAgICAgIGZvbnQtZmFtaWx5OiBpY29tb29uO1xuICAgICAgICBmb250LXNpemU6IDJyZW07XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICAgICAgY29sb3I6ICNGRkY7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAycmVtO1xuICAgICAgICBwYWRkaW5nOiAwLjhyZW07XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB6LWluZGV4OiAxMDA7XG4gICAgICAgIGJhY2tncm91bmQ6ICMwMDA7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMTAwJTsgfVxuICAgICAgLmdhbGxlcnlFeHBvIC5pbWFnZS1zbGlkZXItY29udGFpbmVyIGE6aG92ZXI6YmVmb3JlIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC41KTsgfVxuICAgIC5nYWxsZXJ5RXhwbyAuaW1hZ2Utc2xpZGVyLWNvbnRhaW5lciAuaW1hZ2Utc2xpZGVyIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAuZ2FsbGVyeUV4cG8gLnNsaWNrLXByZXYsXG4gIC5nYWxsZXJ5RXhwbyAuc2xpY2stbmV4dCB7XG4gICAgbGVmdDogMDtcbiAgICB6LWluZGV4OiAxMDA7XG4gICAgYmFja2dyb3VuZDogI2Y3ZjdmNztcbiAgICBwYWRkaW5nOiAwLjNyZW07XG4gICAgaGVpZ2h0OiAyLjJyZW07XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDIuMnJlbTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGluZS1oZWlnaHQ6IDBweDtcbiAgICBmb250LXNpemU6IDBweDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIHRvcDogNTAlO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwJSk7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC01MCUpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC01MCUpO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBvdXRsaW5lOiBub25lOyB9XG4gICAgLmdhbGxlcnlFeHBvIC5zbGljay1wcmV2OmhvdmVyLCAuZ2FsbGVyeUV4cG8gLnNsaWNrLXByZXY6Zm9jdXMsXG4gICAgLmdhbGxlcnlFeHBvIC5zbGljay1uZXh0OmhvdmVyLFxuICAgIC5nYWxsZXJ5RXhwbyAuc2xpY2stbmV4dDpmb2N1cyB7XG4gICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gICAgICAuZ2FsbGVyeUV4cG8gLnNsaWNrLXByZXY6aG92ZXI6YmVmb3JlLCAuZ2FsbGVyeUV4cG8gLnNsaWNrLXByZXY6Zm9jdXM6YmVmb3JlLFxuICAgICAgLmdhbGxlcnlFeHBvIC5zbGljay1uZXh0OmhvdmVyOmJlZm9yZSxcbiAgICAgIC5nYWxsZXJ5RXhwbyAuc2xpY2stbmV4dDpmb2N1czpiZWZvcmUge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICBjb2xvcjogI2RkMzMzMzsgfVxuICAgIC5nYWxsZXJ5RXhwbyAuc2xpY2stcHJldi5zbGljay1kaXNhYmxlZDpiZWZvcmUsXG4gICAgLmdhbGxlcnlFeHBvIC5zbGljay1uZXh0LnNsaWNrLWRpc2FibGVkOmJlZm9yZSB7XG4gICAgICBvcGFjaXR5OiAwLjI1OyB9XG4gICAgLmdhbGxlcnlFeHBvIC5zbGljay1wcmV2OmJlZm9yZSxcbiAgICAuZ2FsbGVyeUV4cG8gLnNsaWNrLW5leHQ6YmVmb3JlIHtcbiAgICAgIGZvbnQtZmFtaWx5OiBcImljb21vb25cIjtcbiAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgY29sb3I6IGJsYWNrO1xuICAgICAgb3BhY2l0eTogMC43NTtcbiAgICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAgICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTsgfVxuICAuZ2FsbGVyeUV4cG8gLnNsaWNrLXByZXYge1xuICAgIGxlZnQ6IDBweDsgfVxuICAgIFtkaXI9XCJydGxcIl0gLmdhbGxlcnlFeHBvIC5zbGljay1wcmV2IHtcbiAgICAgIGxlZnQ6IGF1dG87XG4gICAgICByaWdodDogMHB4OyB9XG4gICAgLmdhbGxlcnlFeHBvIC5zbGljay1wcmV2OmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBcIu6kgFwiOyB9XG4gICAgICBbZGlyPVwicnRsXCJdIC5nYWxsZXJ5RXhwbyAuc2xpY2stcHJldjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiBcIu6kgVwiOyB9XG4gIC5nYWxsZXJ5RXhwbyAuc2xpY2stbmV4dCB7XG4gICAgcmlnaHQ6IDBweDtcbiAgICBsZWZ0OiBhdXRvOyB9XG4gICAgW2Rpcj1cInJ0bFwiXSAuZ2FsbGVyeUV4cG8gLnNsaWNrLW5leHQge1xuICAgICAgbGVmdDogMHB4O1xuICAgICAgcmlnaHQ6IGF1dG87IH1cbiAgICAuZ2FsbGVyeUV4cG8gLnNsaWNrLW5leHQ6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IFwi7qSBXCI7IH1cbiAgICAgIFtkaXI9XCJydGxcIl0gLmdhbGxlcnlFeHBvIC5zbGljay1uZXh0OmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6IFwi7qSAXCI7IH1cbiAgLmdhbGxlcnlFeHBvIC5zbGljay1kb3R0ZWQuc2xpY2stc2xpZGVyIHtcbiAgICBtYXJnaW4tYm90dG9tOiAzMHB4OyB9XG4gIC5nYWxsZXJ5RXhwbyAuc2xpY2stZG90cyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogLTI1cHg7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgcGFkZGluZzogMDtcbiAgICBtYXJnaW46IDA7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgICAuZ2FsbGVyeUV4cG8gLnNsaWNrLWRvdHMgbGkge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgaGVpZ2h0OiAyMHB4O1xuICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICBtYXJnaW46IDAgNXB4O1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjsgfVxuICAgICAgLmdhbGxlcnlFeHBvIC5zbGljay1kb3RzIGxpIGJ1dHRvbiB7XG4gICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBoZWlnaHQ6IDIwcHg7XG4gICAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgICBsaW5lLWhlaWdodDogMHB4O1xuICAgICAgICBmb250LXNpemU6IDBweDtcbiAgICAgICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICBwYWRkaW5nOiA1cHg7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjsgfVxuICAgICAgICAuZ2FsbGVyeUV4cG8gLnNsaWNrLWRvdHMgbGkgYnV0dG9uOmhvdmVyLCAuZ2FsbGVyeUV4cG8gLnNsaWNrLWRvdHMgbGkgYnV0dG9uOmZvY3VzIHtcbiAgICAgICAgICBvdXRsaW5lOiBub25lOyB9XG4gICAgICAgICAgLmdhbGxlcnlFeHBvIC5zbGljay1kb3RzIGxpIGJ1dHRvbjpob3ZlcjpiZWZvcmUsIC5nYWxsZXJ5RXhwbyAuc2xpY2stZG90cyBsaSBidXR0b246Zm9jdXM6YmVmb3JlIHtcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7IH1cbiAgICAgICAgLmdhbGxlcnlFeHBvIC5zbGljay1kb3RzIGxpIGJ1dHRvbjpiZWZvcmUge1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICBjb250ZW50OiBcIu+FkFwiO1xuICAgICAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgICAgIGhlaWdodDogMjBweDtcbiAgICAgICAgICBmb250LWZhbWlseTogXCJpY29tb29uXCI7XG4gICAgICAgICAgZm9udC1zaXplOiA2cHg7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgIGNvbG9yOiBibGFjaztcbiAgICAgICAgICBvcGFjaXR5OiAwLjI1O1xuICAgICAgICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAgICAgICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7IH1cbiAgICAgIC5nYWxsZXJ5RXhwbyAuc2xpY2stZG90cyBsaS5zbGljay1hY3RpdmUgYnV0dG9uOmJlZm9yZSB7XG4gICAgICAgIGNvbG9yOiBibGFjaztcbiAgICAgICAgb3BhY2l0eTogMC43NTsgfVxuXG4vKkZvbnRzIGxpYnJhcnkqL1xuLypGb250cyBsaWJyYXJ5Ki9cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ0ludGVyJztcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogMTAwO1xuICBmb250LWRpc3BsYXk6IHN3YXA7XG4gIHNyYzogdXJsKFwiLi4vZm9udHMvaW50ZXIvSW50ZXItVGhpbi53b2ZmMj92PTMuMTVcIikgZm9ybWF0KFwid29mZjJcIiksIHVybChcIi4uL2ZvbnRzL2ludGVyL0ludGVyLVRoaW4ud29mZj92PTMuMTVcIikgZm9ybWF0KFwid29mZlwiKTsgfVxuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdJbnRlcic7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgZm9udC13ZWlnaHQ6IDEwMDtcbiAgZm9udC1kaXNwbGF5OiBzd2FwO1xuICBzcmM6IHVybChcIi4uL2ZvbnRzL2ludGVyL0ludGVyLVRoaW5JdGFsaWMud29mZjI/dj0zLjE1XCIpIGZvcm1hdChcIndvZmYyXCIpLCB1cmwoXCIuLi9mb250cy9pbnRlci9JbnRlci1UaGluSXRhbGljLndvZmY/dj0zLjE1XCIpIGZvcm1hdChcIndvZmZcIik7IH1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnSW50ZXInO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiAyMDA7XG4gIGZvbnQtZGlzcGxheTogc3dhcDtcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9pbnRlci9JbnRlci1FeHRyYUxpZ2h0LndvZmYyP3Y9My4xNVwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSwgdXJsKFwiLi4vZm9udHMvaW50ZXIvSW50ZXItRXh0cmFMaWdodC53b2ZmP3Y9My4xNVwiKSBmb3JtYXQoXCJ3b2ZmXCIpOyB9XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ0ludGVyJztcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICBmb250LXdlaWdodDogMjAwO1xuICBmb250LWRpc3BsYXk6IHN3YXA7XG4gIHNyYzogdXJsKFwiLi4vZm9udHMvaW50ZXIvSW50ZXItRXh0cmFMaWdodEl0YWxpYy53b2ZmMj92PTMuMTVcIikgZm9ybWF0KFwid29mZjJcIiksIHVybChcIi4uL2ZvbnRzL2ludGVyL0ludGVyLUV4dHJhTGlnaHRJdGFsaWMud29mZj92PTMuMTVcIikgZm9ybWF0KFwid29mZlwiKTsgfVxuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdJbnRlcic7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgZm9udC1kaXNwbGF5OiBzd2FwO1xuICBzcmM6IHVybChcIi4uL2ZvbnRzL2ludGVyL0ludGVyLUxpZ2h0LndvZmYyP3Y9My4xNVwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSwgdXJsKFwiLi4vZm9udHMvaW50ZXIvSW50ZXItTGlnaHQud29mZj92PTMuMTVcIikgZm9ybWF0KFwid29mZlwiKTsgfVxuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdJbnRlcic7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgZm9udC1kaXNwbGF5OiBzd2FwO1xuICBzcmM6IHVybChcIi4uL2ZvbnRzL2ludGVyL0ludGVyLUxpZ2h0SXRhbGljLndvZmYyP3Y9My4xNVwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSwgdXJsKFwiLi4vZm9udHMvaW50ZXIvSW50ZXItTGlnaHRJdGFsaWMud29mZj92PTMuMTVcIikgZm9ybWF0KFwid29mZlwiKTsgfVxuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdJbnRlcic7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgZm9udC1kaXNwbGF5OiBzd2FwO1xuICBzcmM6IHVybChcIi4uL2ZvbnRzL2ludGVyL0ludGVyLVJlZ3VsYXIud29mZjI/dj0zLjE1XCIpIGZvcm1hdChcIndvZmYyXCIpLCB1cmwoXCIuLi9mb250cy9pbnRlci9JbnRlci1SZWd1bGFyLndvZmY/dj0zLjE1XCIpIGZvcm1hdChcIndvZmZcIik7IH1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnSW50ZXInO1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGZvbnQtZGlzcGxheTogc3dhcDtcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9pbnRlci9JbnRlci1JdGFsaWMud29mZjI/dj0zLjE1XCIpIGZvcm1hdChcIndvZmYyXCIpLCB1cmwoXCIuLi9mb250cy9pbnRlci9JbnRlci1JdGFsaWMud29mZj92PTMuMTVcIikgZm9ybWF0KFwid29mZlwiKTsgfVxuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdJbnRlcic7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgZm9udC1kaXNwbGF5OiBzd2FwO1xuICBzcmM6IHVybChcIi4uL2ZvbnRzL2ludGVyL0ludGVyLU1lZGl1bS53b2ZmMj92PTMuMTVcIikgZm9ybWF0KFwid29mZjJcIiksIHVybChcIi4uL2ZvbnRzL2ludGVyL0ludGVyLU1lZGl1bS53b2ZmP3Y9My4xNVwiKSBmb3JtYXQoXCJ3b2ZmXCIpOyB9XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ0ludGVyJztcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICBmb250LXdlaWdodDogNTAwO1xuICBmb250LWRpc3BsYXk6IHN3YXA7XG4gIHNyYzogdXJsKFwiLi4vZm9udHMvaW50ZXIvSW50ZXItTWVkaXVtSXRhbGljLndvZmYyP3Y9My4xNVwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSwgdXJsKFwiLi4vZm9udHMvaW50ZXIvSW50ZXItTWVkaXVtSXRhbGljLndvZmY/dj0zLjE1XCIpIGZvcm1hdChcIndvZmZcIik7IH1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnSW50ZXInO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGZvbnQtZGlzcGxheTogc3dhcDtcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9pbnRlci9JbnRlci1TZW1pQm9sZC53b2ZmMj92PTMuMTVcIikgZm9ybWF0KFwid29mZjJcIiksIHVybChcIi4uL2ZvbnRzL2ludGVyL0ludGVyLVNlbWlCb2xkLndvZmY/dj0zLjE1XCIpIGZvcm1hdChcIndvZmZcIik7IH1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnSW50ZXInO1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGZvbnQtZGlzcGxheTogc3dhcDtcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9pbnRlci9JbnRlci1TZW1pQm9sZEl0YWxpYy53b2ZmMj92PTMuMTVcIikgZm9ybWF0KFwid29mZjJcIiksIHVybChcIi4uL2ZvbnRzL2ludGVyL0ludGVyLVNlbWlCb2xkSXRhbGljLndvZmY/dj0zLjE1XCIpIGZvcm1hdChcIndvZmZcIik7IH1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnSW50ZXInO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGZvbnQtZGlzcGxheTogc3dhcDtcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9pbnRlci9JbnRlci1Cb2xkLndvZmYyP3Y9My4xNVwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSwgdXJsKFwiLi4vZm9udHMvaW50ZXIvSW50ZXItQm9sZC53b2ZmP3Y9My4xNVwiKSBmb3JtYXQoXCJ3b2ZmXCIpOyB9XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ0ludGVyJztcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICBmb250LXdlaWdodDogNzAwO1xuICBmb250LWRpc3BsYXk6IHN3YXA7XG4gIHNyYzogdXJsKFwiLi4vZm9udHMvaW50ZXIvSW50ZXItQm9sZEl0YWxpYy53b2ZmMj92PTMuMTVcIikgZm9ybWF0KFwid29mZjJcIiksIHVybChcIi4uL2ZvbnRzL2ludGVyL0ludGVyLUJvbGRJdGFsaWMud29mZj92PTMuMTVcIikgZm9ybWF0KFwid29mZlwiKTsgfVxuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdJbnRlcic7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDgwMDtcbiAgZm9udC1kaXNwbGF5OiBzd2FwO1xuICBzcmM6IHVybChcIi4uL2ZvbnRzL2ludGVyL0ludGVyLUV4dHJhQm9sZC53b2ZmMj92PTMuMTVcIikgZm9ybWF0KFwid29mZjJcIiksIHVybChcIi4uL2ZvbnRzL2ludGVyL0ludGVyLUV4dHJhQm9sZC53b2ZmP3Y9My4xNVwiKSBmb3JtYXQoXCJ3b2ZmXCIpOyB9XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ0ludGVyJztcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICBmb250LXdlaWdodDogODAwO1xuICBmb250LWRpc3BsYXk6IHN3YXA7XG4gIHNyYzogdXJsKFwiLi4vZm9udHMvaW50ZXIvSW50ZXItRXh0cmFCb2xkSXRhbGljLndvZmYyP3Y9My4xNVwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSwgdXJsKFwiLi4vZm9udHMvaW50ZXIvSW50ZXItRXh0cmFCb2xkSXRhbGljLndvZmY/dj0zLjE1XCIpIGZvcm1hdChcIndvZmZcIik7IH1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnSW50ZXInO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA5MDA7XG4gIGZvbnQtZGlzcGxheTogc3dhcDtcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9pbnRlci9JbnRlci1CbGFjay53b2ZmMj92PTMuMTVcIikgZm9ybWF0KFwid29mZjJcIiksIHVybChcIi4uL2ZvbnRzL2ludGVyL0ludGVyLUJsYWNrLndvZmY/dj0zLjE1XCIpIGZvcm1hdChcIndvZmZcIik7IH1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnSW50ZXInO1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIGZvbnQtd2VpZ2h0OiA5MDA7XG4gIGZvbnQtZGlzcGxheTogc3dhcDtcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9pbnRlci9JbnRlci1CbGFja0l0YWxpYy53b2ZmMj92PTMuMTVcIikgZm9ybWF0KFwid29mZjJcIiksIHVybChcIi4uL2ZvbnRzL2ludGVyL0ludGVyLUJsYWNrSXRhbGljLndvZmY/dj0zLjE1XCIpIGZvcm1hdChcIndvZmZcIik7IH1cblxuLypcbiAqIFZhcmlvdXMgY29udGVudCBzdHlsZXMgcmVsYXRlZCB0byBzcGVjaWZpYyB3ZWJhcHAgcGFydHMgKGNtcywgYmxvZyxcbiAqIGFjY291bnRzLCBldGMuLilcbiAqXG4gKiBGb3IgbW9yZSBjb21tb24gYW5kIGdsb2JhbCBjb250ZW50cywgcHJlZmVyIHRvIHB1dCB0aGVtIGluIGFkZG9ucy9cbiAqXG4gKiBSZW1lbWJlciB0aGVzZSBzdHlsZSBhcmUgZW5mb3JjZWQgd2l0aGluICNib2R5X2NvbnRlbnQgc28gdGhleSB3aWxsXG4gKiBvdmVycmlkZSBhbnkgYmFzaWMgc3R5bGUgd2l0aG91dCBhbiBpZFxuICovXG5hdWRpbywgdmlkZW8ge1xuICB3aWR0aDogMTAwJTsgfVxuXG4ucmlnaHQge1xuICBmbG9hdDogcmlnaHQ7XG4gIHdpZHRoOiBhdXRvOyB9XG5cbi5sZWZ0IHtcbiAgZmxvYXQ6IGxlZnQ7IH1cblxuLmFic29SaWdodCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICByaWdodDogMDsgfVxuXG5pIHtcbiAgZm9udC1zdHlsZTogbm9ybWFsOyB9XG5cblxuaDMsXG4uaDMsXG4ucnN0IGgyLFxuLnJzdCBoMSxcbi5yc3QgLnRpdGxlLTEsXG4ucnN0IC50aXRsZS0yLFxuLnRpdGxlLTMge1xuICBmb250LXdlaWdodDogMjAwOyB9XG5cblxuaDUsXG4ucnN0IGg0LFxuLnJzdCBoMyxcbi5yc3QgLmgzLFxuLnJzdCBoMixcbi5yc3QgaDEsXG4ucnN0IC50aXRsZS0xLFxuLnJzdCAudGl0bGUtMixcbi5yc3QgLnRpdGxlLTMsXG4ucnN0IC50aXRsZS00LFxuLnRpdGxlLTUge1xuICBmb250LXdlaWdodDogMzAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgaDU6YmVmb3JlLCAucnN0IGg0OmJlZm9yZSwgLnJzdCBoMzpiZWZvcmUsIC5yc3QgLmgzOmJlZm9yZSwgLnJzdCBoMjpiZWZvcmUsIC5yc3QgaDE6YmVmb3JlLCAucnN0IC50aXRsZS0xOmJlZm9yZSwgLnJzdCAudGl0bGUtMjpiZWZvcmUsIC5yc3QgLnRpdGxlLTM6YmVmb3JlLCAucnN0IC50aXRsZS00OmJlZm9yZSwgLnRpdGxlLTU6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBiYWNrZ3JvdW5kOiAjZGQzMzMzO1xuICAgIGhlaWdodDogMnB4O1xuICAgIHdpZHRoOiAxcmVtO1xuICAgIGJvdHRvbTogLTRweDtcbiAgICBsZWZ0OiAwO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsgfVxuXG4uYmFzZWxpbmUgc3ZnIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0b3A6IDFyZW07XG4gIGxlZnQ6IDAuNHJlbTsgfVxuXG4qOm5vdCguc2VjdGlvbi5yZWQpIC5yZWQsXG5hLnJlZCB7XG4gIGNvbG9yOiAjZGQzMzMzOyB9XG5cbmgxLmFydGljbGUtdGl0bGUsIC5hcnRpY2xlLXRpdGxlLnRpdGxlLTEge1xuICBmb250LXdlaWdodDogNDAwICFpbXBvcnRhbnQ7XG4gIGxpbmUtaGVpZ2h0OiAxLjE7XG4gIGZvbnQtZmFtaWx5OiAnU291cmNlIFNhbnMgUHJvJywgc2Fucy1zZXJpZjtcbiAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICNDQ0M7XG4gIHBhZGRpbmctYm90dG9tOiAxcmVtO1xuICB0ZXh0LXRyYW5zZm9ybTogbm9ybWFsO1xuICBmb250LXNpemU6IDIuM3JlbTsgfVxuXG4uaGVhZGVyQXR0aWNsZSBoMSwgLmhlYWRlckF0dGljbGUgLnRpdGxlLTEsICN2aXNpdC1kZWNyaXB0aW9uIGgxLCAjdmlzaXQtZGVjcmlwdGlvbiAudGl0bGUtMSB7XG4gIGZvbnQtd2VpZ2h0OiA0MDAgIWltcG9ydGFudDtcbiAgbGluZS1oZWlnaHQ6IDEuMTtcbiAgZm9udC1mYW1pbHk6ICdTb3VyY2UgU2FucyBQcm8nLCBzYW5zLXNlcmlmO1xuICBib3JkZXItYm90dG9tOiAycHggc29saWQgI0NDQztcbiAgcGFkZGluZy1ib3R0b206IDFyZW07XG4gIHRleHQtdHJhbnNmb3JtOiBub3JtYWw7XG4gIGZvbnQtc2l6ZTogMi4zcmVtOyB9XG5cbi5oZWFkZXJBdHRpY2xlIGg0LCAuaGVhZGVyQXR0aWNsZSAucnN0IGgzLCAucnN0IC5oZWFkZXJBdHRpY2xlIGgzLCAuaGVhZGVyQXR0aWNsZSAucnN0IC5oMywgLnJzdCAuaGVhZGVyQXR0aWNsZSAuaDMsIC5oZWFkZXJBdHRpY2xlIC5yc3QgaDIsIC5yc3QgLmhlYWRlckF0dGljbGUgaDIsIC5oZWFkZXJBdHRpY2xlIC5yc3QgaDEsIC5yc3QgLmhlYWRlckF0dGljbGUgaDEsIC5oZWFkZXJBdHRpY2xlIC5yc3QgLnRpdGxlLTEsIC5yc3QgLmhlYWRlckF0dGljbGUgLnRpdGxlLTEsIC5oZWFkZXJBdHRpY2xlIC5yc3QgLnRpdGxlLTIsIC5yc3QgLmhlYWRlckF0dGljbGUgLnRpdGxlLTIsIC5oZWFkZXJBdHRpY2xlIC5yc3QgLnRpdGxlLTMsIC5yc3QgLmhlYWRlckF0dGljbGUgLnRpdGxlLTMsIC5oZWFkZXJBdHRpY2xlIC50aXRsZS00LCAjdmlzaXQtZGVjcmlwdGlvbiBoNCwgI3Zpc2l0LWRlY3JpcHRpb24gLnJzdCBoMywgLnJzdCAjdmlzaXQtZGVjcmlwdGlvbiBoMywgI3Zpc2l0LWRlY3JpcHRpb24gLnJzdCAuaDMsIC5yc3QgI3Zpc2l0LWRlY3JpcHRpb24gLmgzLCAjdmlzaXQtZGVjcmlwdGlvbiAucnN0IGgyLCAucnN0ICN2aXNpdC1kZWNyaXB0aW9uIGgyLCAjdmlzaXQtZGVjcmlwdGlvbiAucnN0IGgxLCAucnN0ICN2aXNpdC1kZWNyaXB0aW9uIGgxLCAjdmlzaXQtZGVjcmlwdGlvbiAucnN0IC50aXRsZS0xLCAucnN0ICN2aXNpdC1kZWNyaXB0aW9uIC50aXRsZS0xLCAjdmlzaXQtZGVjcmlwdGlvbiAucnN0IC50aXRsZS0yLCAucnN0ICN2aXNpdC1kZWNyaXB0aW9uIC50aXRsZS0yLCAjdmlzaXQtZGVjcmlwdGlvbiAucnN0IC50aXRsZS0zLCAucnN0ICN2aXNpdC1kZWNyaXB0aW9uIC50aXRsZS0zLCAjdmlzaXQtZGVjcmlwdGlvbiAudGl0bGUtNCB7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC1zdHlsZTogaXRhbGljOyB9XG5cbi5oMyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nLWJvdHRvbTogMnJlbTtcbiAgcGFkZGluZy10b3A6IDJyZW07IH1cblxuW2RhdGEtbGlua106aG92ZXIge1xuICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgW2RhdGEtbGlua106aG92ZXIgSDEsIFtkYXRhLWxpbmtdOmhvdmVyIEgyLCBbZGF0YS1saW5rXTpob3ZlciBIMywgW2RhdGEtbGlua106aG92ZXIgaDQsIFtkYXRhLWxpbmtdOmhvdmVyIC5yc3QgaDMsIC5yc3QgW2RhdGEtbGlua106aG92ZXIgaDMsIFtkYXRhLWxpbmtdOmhvdmVyIC5yc3QgLmgzLCAucnN0IFtkYXRhLWxpbmtdOmhvdmVyIC5oMywgW2RhdGEtbGlua106aG92ZXIgLnJzdCBoMiwgLnJzdCBbZGF0YS1saW5rXTpob3ZlciBoMiwgW2RhdGEtbGlua106aG92ZXIgLnJzdCBoMSwgLnJzdCBbZGF0YS1saW5rXTpob3ZlciBoMSwgW2RhdGEtbGlua106aG92ZXIgLnJzdCAudGl0bGUtMSwgLnJzdCBbZGF0YS1saW5rXTpob3ZlciAudGl0bGUtMSwgW2RhdGEtbGlua106aG92ZXIgLnJzdCAudGl0bGUtMiwgLnJzdCBbZGF0YS1saW5rXTpob3ZlciAudGl0bGUtMiwgW2RhdGEtbGlua106aG92ZXIgLnJzdCAudGl0bGUtMywgLnJzdCBbZGF0YS1saW5rXTpob3ZlciAudGl0bGUtMywgW2RhdGEtbGlua106aG92ZXIgLnRpdGxlLTQge1xuICAgIGNvbG9yOiAjZGQzMzMzOyB9XG5cbi5ub3dhcnAge1xuICB3aGl0ZS1zcGFjZTogbm93cmFwOyB9XG5cbmhyLmRhc2hlZCB7XG4gIGJvcmRlci1zdHlsZTogZGFzaGVkOyB9XG5cbmZpZ3VyZS5sZWZ0IHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIG1hcmdpbi1yaWdodDogMWVtOyB9XG5cbmZpZ3VyZS5yaWdodCB7XG4gIGZsb2F0OiByaWdodDtcbiAgbWFyZ2luLWxlZnQ6IDFlbTsgfVxuXG5maWd1cmUuaW50ZXh0IHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBwYWRkaW5nOiAuMmVtO1xuICBtYXJnaW46IDA7IH1cbiAgZmlndXJlLmludGV4dCBpbWcge1xuICAgIG1heC13aWR0aDogMTAwJTsgfVxuXG4uYnV0dG9uLndoaXRlIHtcbiAgYmFja2dyb3VuZDogI2Y3ZjdmNztcbiAgY29sb3I6ICMwYTBhMGE7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNEREQ7IH1cblxuLmFnZW5kYSB7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGJhY2tncm91bmQtYXR0YWNobWVudDogZml4ZWQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7IH1cbiAgLmFnZW5kYSBoMiwgLmFnZW5kYSAucnN0IGgxLCAucnN0IC5hZ2VuZGEgaDEsIC5hZ2VuZGEgLnJzdCAudGl0bGUtMSwgLnJzdCAuYWdlbmRhIC50aXRsZS0xLCAuYWdlbmRhIC50aXRsZS0yIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIGNvbG9yOiAjZjdmN2Y3OyB9XG5cbiNsaXN0IHtcbiAgbWFyZ2luLXRvcDogLTcwcHggIWltcG9ydGFudDsgfVxuICAjbGlzdCBwIHtcbiAgICBmb250LXNpemU6IDAuOTRyZW07XG4gICAgbWFyZ2luLXRvcDogLTIwcHg7XG4gICAgY29sb3I6ICM4MzgzN0Y7IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTM3NWVtKSB7XG4gIC5jbGVhbGxlc3RzbWFsbCB7XG4gICAgY2xlYXI6IGxlZnQ7IH0gfVxuXG4ucm93LmJsYWNrIHtcbiAgY29sb3I6ICNmN2Y3Zjc7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwYTBhMGE7IH1cblxuLnJvdy5vbi1ibGFjayB7XG4gIGNvbG9yOiAjZjdmN2Y3O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGEwYTBhOyB9XG4gIC5yb3cub24tYmxhY2sgaDIsIC5yb3cub24tYmxhY2sgLnJzdCBoMSwgLnJzdCAucm93Lm9uLWJsYWNrIGgxLCAucm93Lm9uLWJsYWNrIC5yc3QgLnRpdGxlLTEsIC5yc3QgLnJvdy5vbi1ibGFjayAudGl0bGUtMSwgLnJvdy5vbi1ibGFjayAudGl0bGUtMiwgLnJvdy5vbi1ibGFjayBoMywgLnJvdy5vbi1ibGFjayAuaDMsIC5yb3cub24tYmxhY2sgLnJzdCBoMiwgLnJzdCAucm93Lm9uLWJsYWNrIGgyLCAucm93Lm9uLWJsYWNrIC5yc3QgaDEsIC5yc3QgLnJvdy5vbi1ibGFjayBoMSwgLnJvdy5vbi1ibGFjayAucnN0IC50aXRsZS0xLCAucnN0IC5yb3cub24tYmxhY2sgLnRpdGxlLTEsIC5yb3cub24tYmxhY2sgLnJzdCAudGl0bGUtMiwgLnJzdCAucm93Lm9uLWJsYWNrIC50aXRsZS0yLCAucm93Lm9uLWJsYWNrIC50aXRsZS0zLCAucm93Lm9uLWJsYWNrIGg0LCAucm93Lm9uLWJsYWNrIC5yc3QgaDMsIC5yc3QgLnJvdy5vbi1ibGFjayBoMywgLnJvdy5vbi1ibGFjayAucnN0IC5oMywgLnJzdCAucm93Lm9uLWJsYWNrIC5oMywgLnJvdy5vbi1ibGFjayAucnN0IGgyLCAucnN0IC5yb3cub24tYmxhY2sgaDIsIC5yb3cub24tYmxhY2sgLnJzdCBoMSwgLnJzdCAucm93Lm9uLWJsYWNrIGgxLCAucm93Lm9uLWJsYWNrIC5yc3QgLnRpdGxlLTEsIC5yc3QgLnJvdy5vbi1ibGFjayAudGl0bGUtMSwgLnJvdy5vbi1ibGFjayAucnN0IC50aXRsZS0yLCAucnN0IC5yb3cub24tYmxhY2sgLnRpdGxlLTIsIC5yb3cub24tYmxhY2sgLnJzdCAudGl0bGUtMywgLnJzdCAucm93Lm9uLWJsYWNrIC50aXRsZS0zLCAucm93Lm9uLWJsYWNrIC50aXRsZS00LCAucm93Lm9uLWJsYWNrIGg1LCAucm93Lm9uLWJsYWNrIC5yc3QgaDQsIC5yc3QgLnJvdy5vbi1ibGFjayBoNCwgLnJvdy5vbi1ibGFjayAucnN0IGgzLCAucnN0IC5yb3cub24tYmxhY2sgaDMsIC5yb3cub24tYmxhY2sgLnJzdCAuaDMsIC5yc3QgLnJvdy5vbi1ibGFjayAuaDMsIC5yb3cub24tYmxhY2sgLnJzdCBoMiwgLnJzdCAucm93Lm9uLWJsYWNrIGgyLCAucm93Lm9uLWJsYWNrIC5yc3QgaDEsIC5yc3QgLnJvdy5vbi1ibGFjayBoMSwgLnJvdy5vbi1ibGFjayAucnN0IC50aXRsZS0xLCAucnN0IC5yb3cub24tYmxhY2sgLnRpdGxlLTEsIC5yb3cub24tYmxhY2sgLnJzdCAudGl0bGUtMiwgLnJzdCAucm93Lm9uLWJsYWNrIC50aXRsZS0yLCAucm93Lm9uLWJsYWNrIC5yc3QgLnRpdGxlLTMsIC5yc3QgLnJvdy5vbi1ibGFjayAudGl0bGUtMywgLnJvdy5vbi1ibGFjayAucnN0IC50aXRsZS00LCAucnN0IC5yb3cub24tYmxhY2sgLnRpdGxlLTQsIC5yb3cub24tYmxhY2sgLnRpdGxlLTUsIC5yb3cub24tYmxhY2sgaDYsIC5yb3cub24tYmxhY2sgcCwgLnJvdy5vbi1ibGFjayBsaSB7XG4gICAgY29sb3I6ICNmN2Y3Zjc7IH1cblxuLnJvdy53aGl0ZSB7XG4gIGNvbG9yOiAjMGEwYTBhO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjdmN2Y3OyB9XG5cbi5yb3cucmVkIHtcbiAgY29sb3I6ICNmN2Y3Zjc7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkZDMzMzM7IH1cblxuKi5vbi1yZWQge1xuICBjb2xvcjogI2Y3ZjdmNztcbiAgYmFja2dyb3VuZC1jb2xvcjogI2RkMzMzMzsgfVxuICAqLm9uLXJlZCBoMiwgKi5vbi1yZWQgLnJzdCBoMSwgLnJzdCAqLm9uLXJlZCBoMSwgKi5vbi1yZWQgLnJzdCAudGl0bGUtMSwgLnJzdCAqLm9uLXJlZCAudGl0bGUtMSwgKi5vbi1yZWQgLnRpdGxlLTIge1xuICAgIGZvbnQtc2l6ZTogMS42cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgbWFyZ2luLWJvdHRvbTogMi42cmVtOyB9XG4gICoub24tcmVkIGgyLCAqLm9uLXJlZCAucnN0IGgxLCAucnN0ICoub24tcmVkIGgxLCAqLm9uLXJlZCAucnN0IC50aXRsZS0xLCAucnN0ICoub24tcmVkIC50aXRsZS0xLCAqLm9uLXJlZCAudGl0bGUtMiwgKi5vbi1yZWQgaDMsICoub24tcmVkIC5oMywgKi5vbi1yZWQgLnJzdCBoMiwgLnJzdCAqLm9uLXJlZCBoMiwgKi5vbi1yZWQgLnJzdCBoMSwgLnJzdCAqLm9uLXJlZCBoMSwgKi5vbi1yZWQgLnJzdCAudGl0bGUtMSwgLnJzdCAqLm9uLXJlZCAudGl0bGUtMSwgKi5vbi1yZWQgLnJzdCAudGl0bGUtMiwgLnJzdCAqLm9uLXJlZCAudGl0bGUtMiwgKi5vbi1yZWQgLnRpdGxlLTMsICoub24tcmVkIGg0LCAqLm9uLXJlZCAucnN0IGgzLCAucnN0ICoub24tcmVkIGgzLCAqLm9uLXJlZCAucnN0IC5oMywgLnJzdCAqLm9uLXJlZCAuaDMsICoub24tcmVkIC5yc3QgaDIsIC5yc3QgKi5vbi1yZWQgaDIsICoub24tcmVkIC5yc3QgaDEsIC5yc3QgKi5vbi1yZWQgaDEsICoub24tcmVkIC5yc3QgLnRpdGxlLTEsIC5yc3QgKi5vbi1yZWQgLnRpdGxlLTEsICoub24tcmVkIC5yc3QgLnRpdGxlLTIsIC5yc3QgKi5vbi1yZWQgLnRpdGxlLTIsICoub24tcmVkIC5yc3QgLnRpdGxlLTMsIC5yc3QgKi5vbi1yZWQgLnRpdGxlLTMsICoub24tcmVkIC50aXRsZS00LCAqLm9uLXJlZCBoNSwgKi5vbi1yZWQgLnJzdCBoNCwgLnJzdCAqLm9uLXJlZCBoNCwgKi5vbi1yZWQgLnJzdCBoMywgLnJzdCAqLm9uLXJlZCBoMywgKi5vbi1yZWQgLnJzdCAuaDMsIC5yc3QgKi5vbi1yZWQgLmgzLCAqLm9uLXJlZCAucnN0IGgyLCAucnN0ICoub24tcmVkIGgyLCAqLm9uLXJlZCAucnN0IGgxLCAucnN0ICoub24tcmVkIGgxLCAqLm9uLXJlZCAucnN0IC50aXRsZS0xLCAucnN0ICoub24tcmVkIC50aXRsZS0xLCAqLm9uLXJlZCAucnN0IC50aXRsZS0yLCAucnN0ICoub24tcmVkIC50aXRsZS0yLCAqLm9uLXJlZCAucnN0IC50aXRsZS0zLCAucnN0ICoub24tcmVkIC50aXRsZS0zLCAqLm9uLXJlZCAucnN0IC50aXRsZS00LCAucnN0ICoub24tcmVkIC50aXRsZS00LCAqLm9uLXJlZCAudGl0bGUtNSwgKi5vbi1yZWQgaDYsICoub24tcmVkIHAsICoub24tcmVkIGxpIHtcbiAgICBjb2xvcjogI2Y3ZjdmNzsgfVxuXG4uZGFyayB7XG4gIGNvbG9yOiAjZjdmN2Y3O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTcxNzE3OyB9XG4gIC5kYXJrIGgyLCAuZGFyayAucnN0IGgxLCAucnN0IC5kYXJrIGgxLCAuZGFyayAucnN0IC50aXRsZS0xLCAucnN0IC5kYXJrIC50aXRsZS0xLCAuZGFyayAudGl0bGUtMiwgLmRhcmsgaDMsIC5kYXJrIC5oMywgLmRhcmsgLnJzdCBoMiwgLnJzdCAuZGFyayBoMiwgLmRhcmsgLnJzdCBoMSwgLnJzdCAuZGFyayBoMSwgLmRhcmsgLnJzdCAudGl0bGUtMSwgLnJzdCAuZGFyayAudGl0bGUtMSwgLmRhcmsgLnJzdCAudGl0bGUtMiwgLnJzdCAuZGFyayAudGl0bGUtMiwgLmRhcmsgLnRpdGxlLTMsIC5kYXJrIGg0LCAuZGFyayAucnN0IGgzLCAucnN0IC5kYXJrIGgzLCAuZGFyayAucnN0IC5oMywgLnJzdCAuZGFyayAuaDMsIC5kYXJrIC5yc3QgaDIsIC5yc3QgLmRhcmsgaDIsIC5kYXJrIC5yc3QgaDEsIC5yc3QgLmRhcmsgaDEsIC5kYXJrIC5yc3QgLnRpdGxlLTEsIC5yc3QgLmRhcmsgLnRpdGxlLTEsIC5kYXJrIC5yc3QgLnRpdGxlLTIsIC5yc3QgLmRhcmsgLnRpdGxlLTIsIC5kYXJrIC5yc3QgLnRpdGxlLTMsIC5yc3QgLmRhcmsgLnRpdGxlLTMsIC5kYXJrIC50aXRsZS00LCAuZGFyayBoNSwgLmRhcmsgLnJzdCBoNCwgLnJzdCAuZGFyayBoNCwgLmRhcmsgLnJzdCBoMywgLnJzdCAuZGFyayBoMywgLmRhcmsgLnJzdCAuaDMsIC5yc3QgLmRhcmsgLmgzLCAuZGFyayAucnN0IGgyLCAucnN0IC5kYXJrIGgyLCAuZGFyayAucnN0IGgxLCAucnN0IC5kYXJrIGgxLCAuZGFyayAucnN0IC50aXRsZS0xLCAucnN0IC5kYXJrIC50aXRsZS0xLCAuZGFyayAucnN0IC50aXRsZS0yLCAucnN0IC5kYXJrIC50aXRsZS0yLCAuZGFyayAucnN0IC50aXRsZS0zLCAucnN0IC5kYXJrIC50aXRsZS0zLCAuZGFyayAucnN0IC50aXRsZS00LCAucnN0IC5kYXJrIC50aXRsZS00LCAuZGFyayAudGl0bGUtNSwgLmRhcmsgaDYsIC5kYXJrIHAsIC5kYXJrIGxpIHtcbiAgICBjb2xvcjogI2Y3ZjdmNzsgfVxuXG4udHJhbnNwYXJlbnQge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDsgfVxuXG4ucmVsYXRpdmUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cblxuLypcbiAqIHN2ZyBpbWFnZXNcbiAqIFRPRE86IG1vdmUgaW50byBhZGRvbnMvc3ZnLCBidXQgYWN0dWFsbHkgZG9lc250IHdvcmtzIGJlY2F1c2Ugb2Ygc2VsZWN0b3Igb3ZlcnJpZGUgc29tZXdoZXJlIGVsc2VcbiAqL1xuaW1nLnN2ZyB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLnN2Zy5pbnZlcnNlICNibGFjayB7XG4gIGZpbGw6ICNmN2Y3Zjc7IH1cbiAgLnN2Zy5pbnZlcnNlICNibGFjayAqIHtcbiAgICBmaWxsOiAjZjdmN2Y3OyB9XG5cbi5zdmcuaW52ZXJzZTpub3QoLnN0YXRpYyk6aG92ZXIgI2JsYWNrIHtcbiAgZmlsbDogIzBhMGEwYTsgfVxuICAuc3ZnLmludmVyc2U6bm90KC5zdGF0aWMpOmhvdmVyICNibGFjayAqIHtcbiAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiBmaWxsO1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDAuMnM7XG4gICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47XG4gICAgZmlsbDogIzBhMGEwYTsgfVxuXG5hLmludmVyc2UgI2JsYWNrIHtcbiAgZmlsbDogI2Y3ZjdmNzsgfVxuICBhLmludmVyc2UgI2JsYWNrICoge1xuICAgIGZpbGw6ICNmN2Y3Zjc7IH1cblxuYS5pbnZlcnNlOm5vdCguc3RhdGljKTpob3ZlciAjYmxhY2sge1xuICBmaWxsOiAjMGEwYTBhOyB9XG4gIGEuaW52ZXJzZTpub3QoLnN0YXRpYyk6aG92ZXIgI2JsYWNrICoge1xuICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IGZpbGw7XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4ycztcbiAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjtcbiAgICBmaWxsOiAjMGEwYTBhOyB9XG5cbi5wYWRkZXJ0ZXh0IHtcbiAgcGFkZGluZzogM3B4OyB9XG5cbi5sZWZ0Q29udGVudCAubWVudSB7XG4gIGJvcmRlci1sZWZ0OiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1sZWZ0OiAxcHggc29saWQgdHJhbnNwYXJlbnQ7IH1cbiAgLmxlZnRDb250ZW50IC5tZW51ID4gbGkgPiBhIHtcbiAgICBjb2xvcjogI2RkMzMzMztcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDsgfVxuICAgIC5sZWZ0Q29udGVudCAubWVudSA+IGxpID4gYTpob3ZlciB7XG4gICAgICBjb2xvcjogI2RkMzMzMztcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50OyB9XG4gIC5sZWZ0Q29udGVudCAubWVudSA+IGxpLmFjdGl2ZSBhIHtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDsgfVxuICAubGVmdENvbnRlbnQgLm1lbnUgdWwgYSB7XG4gICAgY29sb3I6ICMwYTBhMGE7IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuZmxleExhcmdlQ2VudGVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50cmVyOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuZmxleExhcmdlRW5kIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDsgfSB9XG5cbnVsLmRvdCB7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgbWFyZ2luLWxlZnQ6IDFyZW07IH1cbiAgdWwuZG90IGxpIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICB1bC5kb3QgbGk6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IFwi4oCiXCI7XG4gICAgICBmb250LXNpemU6IDEyMCU7XG4gICAgICAvKiBvciB3aGF0ZXZlciAqL1xuICAgICAgbGVmdDogLTEwcHg7XG4gICAgICB0b3A6IC00cHg7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7IH1cblxuLmludHJvRmlyc3QgLm1vcmVpbmZvIHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICNkZDMzMzM7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmbG9hdDogbGVmdDsgfVxuXG4uaW50cm9TZWNvbmQge1xuICBkaXNwbGF5OiBub25lO1xuICBmbG9hdDogbGVmdDtcbiAgY2xlYXI6IGJvdGg7IH1cblxuLmNtcy1hcnRpY2xlIC5sZWZ0Q29udGVudCBwIHtcbiAgbWFyZ2luOiAwO1xuICBtYXJnaW4tdG9wOiAxcmVtOyB9XG5cbi5iaWJsaW9ncmFwaGllIGg0LCAuYmlibGlvZ3JhcGhpZSAucnN0IGgzLCAucnN0IC5iaWJsaW9ncmFwaGllIGgzLCAuYmlibGlvZ3JhcGhpZSAucnN0IC5oMywgLnJzdCAuYmlibGlvZ3JhcGhpZSAuaDMsIC5iaWJsaW9ncmFwaGllIC5yc3QgaDIsIC5yc3QgLmJpYmxpb2dyYXBoaWUgaDIsIC5iaWJsaW9ncmFwaGllIC5yc3QgaDEsIC5yc3QgLmJpYmxpb2dyYXBoaWUgaDEsIC5iaWJsaW9ncmFwaGllIC5yc3QgLnRpdGxlLTEsIC5yc3QgLmJpYmxpb2dyYXBoaWUgLnRpdGxlLTEsIC5iaWJsaW9ncmFwaGllIC5yc3QgLnRpdGxlLTIsIC5yc3QgLmJpYmxpb2dyYXBoaWUgLnRpdGxlLTIsIC5iaWJsaW9ncmFwaGllIC5yc3QgLnRpdGxlLTMsIC5yc3QgLmJpYmxpb2dyYXBoaWUgLnRpdGxlLTMsIC5iaWJsaW9ncmFwaGllIC50aXRsZS00IHtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7IH1cblxuLmRsLXZpZCBoNCwgLmRsLXZpZCAucnN0IGgzLCAucnN0IC5kbC12aWQgaDMsIC5kbC12aWQgLnJzdCAuaDMsIC5yc3QgLmRsLXZpZCAuaDMsIC5kbC12aWQgLnJzdCBoMiwgLnJzdCAuZGwtdmlkIGgyLCAuZGwtdmlkIC5yc3QgaDEsIC5yc3QgLmRsLXZpZCBoMSwgLmRsLXZpZCAucnN0IC50aXRsZS0xLCAucnN0IC5kbC12aWQgLnRpdGxlLTEsIC5kbC12aWQgLnJzdCAudGl0bGUtMiwgLnJzdCAuZGwtdmlkIC50aXRsZS0yLCAuZGwtdmlkIC5yc3QgLnRpdGxlLTMsIC5yc3QgLmRsLXZpZCAudGl0bGUtMywgLmRsLXZpZCAudGl0bGUtNCB7XG4gIGNvbG9yOiAjNjY2OyB9XG5cbi5mb250RXBpIHtcbiAgZm9udC1mYW1pbHk6IFwiRXBpbG9ndWVcIixcIkhlbHZldGljYSBOZXVlXCIsIEhlbHZldGljYSwgQXJpYWwsIHNhbnMtc2VyaWY7IH1cblxuLnRleHQtc3Ryb25nZXIge1xuICBmb250LXdlaWdodDogOTAwOyB9XG5cbi52LXNwYWNlLW5vcm1hbCB7XG4gIHBhZGRpbmctdG9wOiA1cmVtO1xuICBwYWRkaW5nLWJvdHRvbTogNXJlbTsgfVxuXG52aWRlb1twb3N0ZXJdIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIG9iamVjdC1maXQ6IGNvdmVyOyB9XG5cbnRhYmxlLmV4cGFuZCB7XG4gIHdpZHRoOiAxMDAlOyB9XG5cbi8qXG4gKiBTaW11bGF0aW5nIHRhYmxlXG4gKi9cbi50YWJsZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTsgfVxuICAudGFibGUgPiAudGFibGVyb3cge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC50YWJsZSA+IC50YWJsZXJvdyB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgfSB9XG4gICAgLnRhYmxlID4gLnRhYmxlcm93ID4gLmNvbHRhYmxlIHtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgIHBhZGRpbmc6IDAuNnJlbTsgfVxuICAgICAgLnRhYmxlID4gLnRhYmxlcm93ID4gLmNvbHRhYmxlIGEge1xuICAgICAgICBmb250LXNpemU6IDAuNzRyZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cblxuLyoqIHRhYmxlYXUgcmVzcG9uc2l2ZSAqKi9cbi5yZXNwb25zaXZlLXRhYmxlIHtcbiAgd2lkdGg6IDEwMCU7IH1cbiAgLnJlc3BvbnNpdmUtdGFibGUgdHI6bnRoLWNoaWxkKDJuKzIpIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjdGN0Y3OyB9XG4gIC5yZXNwb25zaXZlLXRhYmxlIHRoIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIC5yZXNwb25zaXZlLXRhYmxlIHRoLCAucmVzcG9uc2l2ZS10YWJsZSB0ZCB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDsgfVxuICAucmVzcG9uc2l2ZS10YWJsZSB0aDpmaXJzdC1jaGlsZCwgLnJlc3BvbnNpdmUtdGFibGUgdGQ6Zmlyc3QtY2hpbGQge1xuICAgIGJvcmRlcjogbm9uZTsgfVxuICAucmVzcG9uc2l2ZS10YWJsZSB0ZCB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cbiAgLnJlc3BvbnNpdmUtdGFibGUgdGQ6bGFzdC1jaGlsZCB7XG4gICAgcGFkZGluZy1ib3R0b206IC41ZW07IH1cblxuLnJlc3BvbnNpdmUtdGFibGUgdGQ6YmVmb3JlLCAuZGV1eF9heGVzIHRkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IGF0dHIoZGF0YS10aCkgXCIgXCI7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICB3aWR0aDogMTAwJTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG5cbi5kZXV4X2F4ZXMgdGQ6bnRoLWNoaWxkKDJuKzIpIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0Y3RjdGNztcbiAgcGFkZGluZzogMC44ZW07XG4gIG1hcmdpbjogMDsgfVxuXG50ci50aXRyZV90YWJsZSB0aCB7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBBIHBhcnRpciBkZSA5ODBweFxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnJlc3BvbnNpdmUtdGFibGUgdGgsIC5yZXNwb25zaXZlLXRhYmxlIHRkIHtcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsOyB9XG4gIC5yZXNwb25zaXZlLXRhYmxlIHRkOmJlZm9yZSB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICB0ci50aXRyZV90YWJsZSB7XG4gICAgYm9yZGVyLXRvcDogbm9uZTsgfVxuICAgIHRyLnRpdHJlX3RhYmxlIHRoIHtcbiAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7IH0gfVxuXG5oMy55ZWFyLCAueWVhci5oMywgLnJzdCBoMi55ZWFyLCAucnN0IGgxLnllYXIsIC5yc3QgLnllYXIudGl0bGUtMSwgLnJzdCAueWVhci50aXRsZS0yLCAueWVhci50aXRsZS0zIHtcbiAgd2lkdGg6IDE2MHB4O1xuICBib3JkZXItYm90dG9tOiAycHggc29saWQgcmVkOyB9XG5cbi5jaHJvbm9sb2d5IHRkIHtcbiAgYmFja2dyb3VuZDogI0ZGRjtcbiAgdmVydGljYWwtYWxpZ246IHRvcDsgfVxuICAuY2hyb25vbG9neSB0ZDpmaXJzdC1jaGlsZCB7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgcGFkZGluZy1yaWdodDogMTBweDtcbiAgICB3aWR0aDogMTYwcHg7IH1cblxuLmNocm9ub2xvZ3kgdHIgKyB0ciB0ZDpsYXN0LWNoaWxkIHtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIGxpZ2h0R3JleTsgfVxuXG4uY2hyb25vbG9neSBwIHtcbiAgbWFyZ2luLXRvcDogNXB4OyB9XG5cbi5zaW1pbGVUaW1lbGluZSBoMSwgLnNpbWlsZVRpbWVsaW5lIC50aXRsZS0xIHtcbiAgZm9udC1zaXplOiAxLjRyZW07IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5zaW1pbGVUaW1lbGluZSBoMSwgLnNpbWlsZVRpbWVsaW5lIC50aXRsZS0xIHtcbiAgICAgIGZvbnQtc2l6ZTogMnJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAuc2ltaWxlVGltZWxpbmUgaDEsIC5zaW1pbGVUaW1lbGluZSAudGl0bGUtMSB7XG4gICAgICBmb250LXNpemU6IDIuMXJlbTsgfSB9XG5cbi5saXN0LWdyb3VwIHtcbiAgbWFyZ2luLXRvcDogMC40cmVtOyB9XG4gIC5saXN0LWdyb3VwIGEge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIGJvcmRlcjogIzhhOGE4YSAxcHggc29saWQ7XG4gICAgYmFja2dyb3VuZDogI0UwRTBFMDtcbiAgICBjb2xvcjogIzBhMGEwYTtcbiAgICBwYWRkaW5nOiAwLjJyZW07XG4gICAgbWFyZ2luLXRvcDogMC40cmVtO1xuICAgIGNsZWFyOiBib3RoOyB9XG5cbi5jb250ZW5ldXIgLmFydGljbGUge1xuICBib3JkZXI6IDFweCBzb2xpZCAjQ0NDO1xuICBiYWNrZ3JvdW5kOiAjZjdmN2Y3O1xuICBtYXJnaW4tYm90dG9tOiAxcmVtOyB9XG4gIC5jb250ZW5ldXIgLmFydGljbGUgLmFydGljbGUtdG9wIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAuY29udGVuZXVyIC5hcnRpY2xlIC5hcnRpY2xlLXRvcCBINCB7XG4gICAgICBiYWNrZ3JvdW5kOiAjNTc1NzU3O1xuICAgICAgY29sb3I6ICNGRkY7XG4gICAgICBwYWRkaW5nOiAwLjc1cmVtIDFyZW07XG4gICAgICBtYXJnaW46IDA7IH1cbiAgICAgIC5jb250ZW5ldXIgLmFydGljbGUgLmFydGljbGUtdG9wIEg0IGEge1xuICAgICAgICBjb2xvcjogI2Y3ZjdmNzsgfVxuICAgIC5jb250ZW5ldXIgLmFydGljbGUgLmFydGljbGUtdG9wIC5tZXRhZG9ubmVlcyB7XG4gICAgICBtYXJnaW46IDFyZW07XG4gICAgICBmb250LXNpemU6IDAuNzVyZW07IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgLmNvbnRlbmV1ciAuYXJ0aWNsZSAuYXJ0aWNsZS10b3AgLm1ldGFkb25uZWVzIHtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgdG9wOiAwOyB9IH1cbiAgICAgIC5jb250ZW5ldXIgLmFydGljbGUgLmFydGljbGUtdG9wIC5tZXRhZG9ubmVlcyAucGFuZWwge1xuICAgICAgICBib3JkZXItcmFkaXVzOiAwLjI1cmVtOyB9XG5cbi5jb250ZW5ldXIgLmxvYWRDb250IHtcbiAgcGFkZGluZzogMXJlbTsgfVxuXG4uY29udGVuZXVyIC5jb250ZW5ldXItaGVhZCB7XG4gIGJhY2tncm91bmQ6ICNGRkY7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNDQ0M7XG4gIHBhZGRpbmc6IDFyZW07XG4gIG1hcmdpbi10b3A6IDJyZW07XG4gIG1hcmdpbi1ib3R0b206IDFyZW07IH1cblxuLmNvbnRlbmV1ciAuY29udGFpbmVyLWRvd24ge1xuICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTtcbiAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtOyB9XG5cbiNzZWxlY3RldXIge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMHZ3O1xuICBiYWNrZ3JvdW5kOiAjZGQzMzMzO1xuICB6LWluZGV4OiAyO1xuICBoZWlnaHQ6IDRyZW07IH1cbiAgI3NlbGVjdGV1ciAuaW5wdXQtZ3JvdXAtbGFiZWwge1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIGNvbG9yOiAjZjdmN2Y3O1xuICAgIGJvcmRlcjogMDsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAgICAgI3NlbGVjdGV1ciAuaW5wdXQtZ3JvdXAtbGFiZWwge1xuICAgICAgICBwYWRkaW5nOiAwcmVtOyB9IH1cbiAgI3NlbGVjdGV1ciAjaWRfZGF0ZSB7XG4gICAgd2lkdGg6IGF1dG87IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgICAgICNzZWxlY3RldXIgI2lkX2RhdGUge1xuICAgICAgICB3aWR0aDogNi40cmVtOyB9IH1cbiAgI3NlbGVjdGV1ciAuaW5wdXQtZ3JvdXAge1xuICAgIG1hcmdpbjogMC41cmVtOyB9XG4gICNzZWxlY3RldXIgLmlucHV0LWdyb3VwLWJ1dHRvbiB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgdGV4dC1hbGlnbjogbGVmdDsgfVxuICAjc2VsZWN0ZXVyIGEge1xuICAgIGNvbG9yOiAjZjdmN2Y3OyB9XG4gICNzZWxlY3RldXIgLmZsZXgge1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZGlzcGxheTogZmxleDsgfVxuXG4uY3VydGFpbiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICB3aWR0aDogMTAwJTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGFsaWduLWNvbnRlbnQ6IHN0cmV0Y2g7XG4gIGJvcmRlcjogdHJhbnNwYXJlbnQgMXB4IHNvbGlkO1xuICB6LWluZGV4OiAxMDsgfVxuICAuY3VydGFpbiA+IC5wYW5lbCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzBhMGEwYTtcbiAgICBoZWlnaHQ6IDYwdmg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICNGRkY7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuNnMgZWFzZTtcbiAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB3aWR0aDtcbiAgICB3aWxsLWNoYW5nZTogd2lkdGg7IH1cbiAgICAuY3VydGFpbiA+IC5wYW5lbC5iaWcge1xuICAgICAgd2lkdGg6IDE2NiU7IH1cbiAgICAuY3VydGFpbiA+IC5wYW5lbCA+IC5pbWdiZyB7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgICAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZTtcbiAgICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIG1pbi1oZWlnaHQ6IDEwMCU7XG4gICAgICBtaW4td2lkdGg6IDEwMCU7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgICAgei1pbmRleDogMTA7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gICAgICAuY3VydGFpbiA+IC5wYW5lbCA+IC5pbWdiZyA+IGltZyB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDEwMCU7XG4gICAgICAgIG1heC13aWR0aDogbm9uZTtcbiAgICAgICAgbWF4LWhlaWdodDogMTAwJTtcbiAgICAgICAgdHJhbnNpdGlvbjogZmlsdGVyIDAuMnMgbGluZWFyO1xuICAgICAgICBmaWx0ZXI6IGJsdXIoMHB4KTsgfVxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAgICAgLmN1cnRhaW4gPiAucGFuZWwgPiAuaW1nYmcgPiBpbWcge1xuICAgICAgICAgICAgbWluLWhlaWdodDogMTAwJTtcbiAgICAgICAgICAgIG1pbi13aWR0aDogMTAwJTtcbiAgICAgICAgICAgIG1heC13aWR0aDogbm9uZTtcbiAgICAgICAgICAgIG1heC1oZWlnaHQ6IG5vbmU7IH0gfVxuICAgICAgLmN1cnRhaW4gPiAucGFuZWwgPiAuaW1nYmc6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHJnYmEoMCwgMCwgMCwgMC4yKSwgcmdiYSgwLCAwLCAwLCAwLjQpKTtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlO1xuICAgICAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiBiYWNrZ3JvdW4taW1hZ2U7IH1cbiAgICAuY3VydGFpbiA+IC5wYW5lbCBoMiwgLmN1cnRhaW4gPiAucGFuZWwgLnJzdCBoMSwgLnJzdCAuY3VydGFpbiA+IC5wYW5lbCBoMSwgLmN1cnRhaW4gPiAucGFuZWwgLnJzdCAudGl0bGUtMSwgLnJzdCAuY3VydGFpbiA+IC5wYW5lbCAudGl0bGUtMSwgLmN1cnRhaW4gPiAucGFuZWwgLnRpdGxlLTIge1xuICAgICAgei1pbmRleDogMjA7XG4gICAgICB0cmFuc2l0aW9uOiBjb2xvciAwLjJzIGxpbmVhcjtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgbGVmdDogNTAlO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgd2lkdGg6IDEwcHg7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBoZWlnaHQ6IDEwcHg7XG4gICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgZm9udC1zaXplOiAyLjZyZW07XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICAgIGNvbG9yOiByZ2JhKDI0MCwgMjQwLCAyNDAsIDAuOSk7IH1cbiAgICAgIC5jdXJ0YWluID4gLnBhbmVsIGgyLnRleHRWZXJ0LCAuY3VydGFpbiA+IC5wYW5lbCAucnN0IGgxLnRleHRWZXJ0LCAucnN0IC5jdXJ0YWluID4gLnBhbmVsIGgxLnRleHRWZXJ0LCAuY3VydGFpbiA+IC5wYW5lbCAucnN0IC50ZXh0VmVydC50aXRsZS0xLCAucnN0IC5jdXJ0YWluID4gLnBhbmVsIC50ZXh0VmVydC50aXRsZS0xLCAuY3VydGFpbiA+IC5wYW5lbCAudGV4dFZlcnQudGl0bGUtMiB7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC05MGRlZykgdHJhbnNsYXRlKC01cHgsIC01cHgpO1xuICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiA1MCUgNTAlOyB9XG4gICAgICAuY3VydGFpbiA+IC5wYW5lbCBoMiBzcGFuLCAuY3VydGFpbiA+IC5wYW5lbCAucnN0IGgxIHNwYW4sIC5yc3QgLmN1cnRhaW4gPiAucGFuZWwgaDEgc3BhbiwgLmN1cnRhaW4gPiAucGFuZWwgLnJzdCAudGl0bGUtMSBzcGFuLCAucnN0IC5jdXJ0YWluID4gLnBhbmVsIC50aXRsZS0xIHNwYW4sIC5jdXJ0YWluID4gLnBhbmVsIC50aXRsZS0yIHNwYW4ge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7IH1cbiAgICAuY3VydGFpbiA+IC5wYW5lbC5hbmltYXRlOmhvdmVyIHtcbiAgICAgIHotaW5kZXg6IDIwO1xuICAgICAgd2lkdGg6IDEzNCU7IH1cbiAgICAgIC5jdXJ0YWluID4gLnBhbmVsLmFuaW1hdGU6aG92ZXIuYmlnIHtcbiAgICAgICAgd2lkdGg6IDE4NiU7IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAgICAgLmN1cnRhaW4gPiAucGFuZWwuYW5pbWF0ZTpob3ZlciB7XG4gICAgICAgICAgd2lkdGg6IDExNyU7IH1cbiAgICAgICAgICAuY3VydGFpbiA+IC5wYW5lbC5hbmltYXRlOmhvdmVyLmJpZyB7XG4gICAgICAgICAgICB3aWR0aDogMTg2JTsgfSB9XG4gICAgICAuY3VydGFpbiA+IC5wYW5lbC5hbmltYXRlOmhvdmVyOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4zKTtcbiAgICAgICAgaGVpZ2h0OiAxMHB4O1xuICAgICAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICAgICAgICBmaWx0ZXI6IGJsdXIoM3B4KTtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB3aWR0aDogMTIwJTtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGJvdHRvbTogLTIwcHg7XG4gICAgICAgIGxlZnQ6IC0xMCU7IH1cbiAgICAgIC5jdXJ0YWluID4gLnBhbmVsLmFuaW1hdGU6aG92ZXIgaDIsIC5jdXJ0YWluID4gLnBhbmVsLmFuaW1hdGU6aG92ZXIgLnJzdCBoMSwgLnJzdCAuY3VydGFpbiA+IC5wYW5lbC5hbmltYXRlOmhvdmVyIGgxLCAuY3VydGFpbiA+IC5wYW5lbC5hbmltYXRlOmhvdmVyIC5yc3QgLnRpdGxlLTEsIC5yc3QgLmN1cnRhaW4gPiAucGFuZWwuYW5pbWF0ZTpob3ZlciAudGl0bGUtMSwgLmN1cnRhaW4gPiAucGFuZWwuYW5pbWF0ZTpob3ZlciAudGl0bGUtMiB7XG4gICAgICAgIGNvbG9yOiByZ2JhKDI0MCwgMjQwLCAyNDAsIDAuOSk7IH1cbiAgICAgIC5jdXJ0YWluID4gLnBhbmVsLmFuaW1hdGU6aG92ZXIgPiAuaW1nYmcge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICBmaWx0ZXI6IGdyYXlzY2FsZSg4MCUpO1xuICAgICAgICBib3JkZXI6IDJweCBzb2xpZCAjRkZGO1xuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMDgpOyB9XG4gICAgICAgIC5jdXJ0YWluID4gLnBhbmVsLmFuaW1hdGU6aG92ZXIgPiAuaW1nYmc6YWZ0ZXIge1xuICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudChyZ2JhKDMwLCAwLCAwLCAwLjgpLCByZ2JhKDAsIDAsIDAsIDAuNikpOyB9XG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAgICAgICAuY3VydGFpbiA+IC5wYW5lbC5hbmltYXRlOmhvdmVyID4gLmltZ2JnIHtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4wNCk7IH0gfVxuICAgICAgICAuY3VydGFpbiA+IC5wYW5lbC5hbmltYXRlOmhvdmVyID4gLmltZ2JnID4gaW1nIHtcbiAgICAgICAgICBmaWx0ZXI6IGJsdXIoNHB4KTsgfVxuICAuY3VydGFpbi52ZXJ0aWNhbEN1cnRhaW4ge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgICAgIC5jdXJ0YWluLnZlcnRpY2FsQ3VydGFpbiB7XG4gICAgICAgIGhlaWdodDogNzQwcHggIWltcG9ydGFudDsgfSB9XG4gICAgLmN1cnRhaW4udmVydGljYWxDdXJ0YWluID4gLnBhbmVsIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwYTBhMGE7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHJpZ2h0OiAwcHggc29saWQgI0ZGRjtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjRkZGO1xuICAgICAgYm9yZGVyLXJpZ2h0OiAwOyB9XG5cbi5jdXJ0YWluLnZpc2l0ZS12aXR1ZWwge1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuY3VydGFpbi52aXNpdGUtdml0dWVsIHtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7IH0gfVxuICAuY3VydGFpbi52aXNpdGUtdml0dWVsIHN2ZyB7XG4gICAgZmxvYXQ6IGxlZnQ7IH1cbiAgLmN1cnRhaW4udmlzaXRlLXZpdHVlbCA+IC5wYW5lbCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0VDRUNFRjtcbiAgICBoZWlnaHQ6IGluaXRpYWw7IH1cbiAgICAuY3VydGFpbi52aXNpdGUtdml0dWVsID4gLnBhbmVsOmxhc3QtY2hpbGQge1xuICAgICAgYm9yZGVyOiAwcHg7IH1cbiAgICAuY3VydGFpbi52aXNpdGUtdml0dWVsID4gLnBhbmVsLnZlcnRpY2FsQ3VydGFpbiA+IC5wYW5lbCB7XG4gICAgICBoZWlnaHQ6IGluaXRpYWw7XG4gICAgICBmbGV4LWdyb3c6IDE7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGEwYTBhOyB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgIC5jdXJ0YWluLnZpc2l0ZS12aXR1ZWwgPiAucGFuZWwudmVydGljYWxDdXJ0YWluID4gLnBhbmVsIHtcbiAgICAgICAgICBoZWlnaHQ6IDEwMCU7IH0gfVxuICAgICAgLmN1cnRhaW4udmlzaXRlLXZpdHVlbCA+IC5wYW5lbC52ZXJ0aWNhbEN1cnRhaW4gPiAucGFuZWw6bGFzdC1jaGlsZCB7XG4gICAgICAgIGJvcmRlcjogMHB4OyB9XG4gICAgICAuY3VydGFpbi52aXNpdGUtdml0dWVsID4gLnBhbmVsLnZlcnRpY2FsQ3VydGFpbiA+IC5wYW5lbCBoMiwgLmN1cnRhaW4udmlzaXRlLXZpdHVlbCA+IC5wYW5lbC52ZXJ0aWNhbEN1cnRhaW4gPiAucGFuZWwgLnJzdCBoMSwgLnJzdCAuY3VydGFpbi52aXNpdGUtdml0dWVsID4gLnBhbmVsLnZlcnRpY2FsQ3VydGFpbiA+IC5wYW5lbCBoMSwgLmN1cnRhaW4udmlzaXRlLXZpdHVlbCA+IC5wYW5lbC52ZXJ0aWNhbEN1cnRhaW4gPiAucGFuZWwgLnJzdCAudGl0bGUtMSwgLnJzdCAuY3VydGFpbi52aXNpdGUtdml0dWVsID4gLnBhbmVsLnZlcnRpY2FsQ3VydGFpbiA+IC5wYW5lbCAudGl0bGUtMSwgLmN1cnRhaW4udmlzaXRlLXZpdHVlbCA+IC5wYW5lbC52ZXJ0aWNhbEN1cnRhaW4gPiAucGFuZWwgLnRpdGxlLTIge1xuICAgICAgICBjb2xvcjogI0ZGRjsgfVxuICAgICAgLmN1cnRhaW4udmlzaXRlLXZpdHVlbCA+IC5wYW5lbC52ZXJ0aWNhbEN1cnRhaW4gPiAucGFuZWwjdmlzaXQtbmF2aWdhdGlvbiB7XG4gICAgICAgIGZsZXgtZ3JvdzogMC41O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRUNFQ0VGOyB9XG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAgICAgICAgIC5jdXJ0YWluLnZpc2l0ZS12aXR1ZWwgPiAucGFuZWwudmVydGljYWxDdXJ0YWluID4gLnBhbmVsI3Zpc2l0LW5hdmlnYXRpb24ge1xuICAgICAgICAgICAgaGVpZ2h0OiA5NnB4O1xuICAgICAgICAgICAgZmxleC1ncm93OiBpbml0aWFsOyB9IH1cbiAgICAgICAgLmN1cnRhaW4udmlzaXRlLXZpdHVlbCA+IC5wYW5lbC52ZXJ0aWNhbEN1cnRhaW4gPiAucGFuZWwjdmlzaXQtbmF2aWdhdGlvbiAuZHJvcGRvd24ubWVudSA+IGxpLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50ID4gYSB7XG4gICAgICAgICAgcGFkZGluZy10b3A6IDAuNHJlbTtcbiAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMC40cmVtOyB9XG4gICAgLmN1cnRhaW4udmlzaXRlLXZpdHVlbCA+IC5wYW5lbCAuaW1nYmcge1xuICAgICAgb3BhY2l0eTogMC43O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzBhMGEwYTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjsgfVxuICAgICAgLmN1cnRhaW4udmlzaXRlLXZpdHVlbCA+IC5wYW5lbCAuaW1nYmc6YWZ0ZXIge1xuICAgICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgLmN1cnRhaW4udmlzaXRlLXZpdHVlbCA+IC5wYW5lbC5iaWcge1xuICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgLmN1cnRhaW4udmlzaXRlLXZpdHVlbCA+IC5wYW5lbC5iaWcge1xuICAgICAgICAgIHdpZHRoOiAxMzAlOyB9IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAgICAgLmN1cnRhaW4udmlzaXRlLXZpdHVlbCA+IC5wYW5lbC5iaWcge1xuICAgICAgICAgIHdpZHRoOiAxMzAlOyB9IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAgICAgLmN1cnRhaW4udmlzaXRlLXZpdHVlbCA+IC5wYW5lbC5iaWcge1xuICAgICAgICAgIHdpZHRoOiAxMTAlOyB9IH1cbiAgICAuY3VydGFpbi52aXNpdGUtdml0dWVsID4gLnBhbmVsLmN1cnRhaW4ge1xuICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgLmN1cnRhaW4udmlzaXRlLXZpdHVlbCA+IC5wYW5lbC5jdXJ0YWluIHtcbiAgICAgICAgICB3aWR0aDogNzAlOyB9IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAgICAgLmN1cnRhaW4udmlzaXRlLXZpdHVlbCA+IC5wYW5lbC5jdXJ0YWluIHtcbiAgICAgICAgICB3aWR0aDogNzAlOyB9IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAgICAgLmN1cnRhaW4udmlzaXRlLXZpdHVlbCA+IC5wYW5lbC5jdXJ0YWluIHtcbiAgICAgICAgICB3aWR0aDogOTAlOyB9IH1cblxuI3Zpc2l0LW5hdmlnYXRpb24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRUNFQ0VGO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgI3Zpc2l0LW5hdmlnYXRpb24gaDQsICN2aXNpdC1uYXZpZ2F0aW9uIC5yc3QgaDMsIC5yc3QgI3Zpc2l0LW5hdmlnYXRpb24gaDMsICN2aXNpdC1uYXZpZ2F0aW9uIC5yc3QgLmgzLCAucnN0ICN2aXNpdC1uYXZpZ2F0aW9uIC5oMywgI3Zpc2l0LW5hdmlnYXRpb24gLnJzdCBoMiwgLnJzdCAjdmlzaXQtbmF2aWdhdGlvbiBoMiwgI3Zpc2l0LW5hdmlnYXRpb24gLnJzdCBoMSwgLnJzdCAjdmlzaXQtbmF2aWdhdGlvbiBoMSwgI3Zpc2l0LW5hdmlnYXRpb24gLnJzdCAudGl0bGUtMSwgLnJzdCAjdmlzaXQtbmF2aWdhdGlvbiAudGl0bGUtMSwgI3Zpc2l0LW5hdmlnYXRpb24gLnJzdCAudGl0bGUtMiwgLnJzdCAjdmlzaXQtbmF2aWdhdGlvbiAudGl0bGUtMiwgI3Zpc2l0LW5hdmlnYXRpb24gLnJzdCAudGl0bGUtMywgLnJzdCAjdmlzaXQtbmF2aWdhdGlvbiAudGl0bGUtMywgI3Zpc2l0LW5hdmlnYXRpb24gLnRpdGxlLTQge1xuICAgIGNvbG9yOiAjZGQzMzMzO1xuICAgIGZvbnQtd2VpZ2h0OiA4MDA7IH1cbiAgI3Zpc2l0LW5hdmlnYXRpb24gPiBkaXYge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsgfVxuXG4ucGFuZWwtaW5mb3Mge1xuICBmb250LXdlaWdodDogMjAwOyB9XG4gIC5wYW5lbC1pbmZvcyBzdHJvbmcge1xuICAgIGZvbnQtd2VpZ2h0OiAzMDA7IH1cbiAgLnBhbmVsLWluZm9zIC50ZWFtLWNvbnRlbnQge1xuICAgIHBhZGRpbmc6IDFyZW07XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYm9yZGVyOiAxMHB4IHNvbGlkICNFMEUwRTA7IH1cbiAgICAucGFuZWwtaW5mb3MgLnRlYW0tY29udGVudCBoMiwgLnBhbmVsLWluZm9zIC50ZWFtLWNvbnRlbnQgLnJzdCBoMSwgLnJzdCAucGFuZWwtaW5mb3MgLnRlYW0tY29udGVudCBoMSwgLnBhbmVsLWluZm9zIC50ZWFtLWNvbnRlbnQgLnJzdCAudGl0bGUtMSwgLnJzdCAucGFuZWwtaW5mb3MgLnRlYW0tY29udGVudCAudGl0bGUtMSwgLnBhbmVsLWluZm9zIC50ZWFtLWNvbnRlbnQgLnRpdGxlLTIge1xuICAgICAgbWFyZ2luLXRvcDogMXJlbTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDJyZW07IH1cbiAgICAucGFuZWwtaW5mb3MgLnRlYW0tY29udGVudCBoMywgLnBhbmVsLWluZm9zIC50ZWFtLWNvbnRlbnQgLmgzLCAucGFuZWwtaW5mb3MgLnRlYW0tY29udGVudCAucnN0IGgyLCAucnN0IC5wYW5lbC1pbmZvcyAudGVhbS1jb250ZW50IGgyLCAucGFuZWwtaW5mb3MgLnRlYW0tY29udGVudCAucnN0IGgxLCAucnN0IC5wYW5lbC1pbmZvcyAudGVhbS1jb250ZW50IGgxLCAucGFuZWwtaW5mb3MgLnRlYW0tY29udGVudCAucnN0IC50aXRsZS0xLCAucnN0IC5wYW5lbC1pbmZvcyAudGVhbS1jb250ZW50IC50aXRsZS0xLCAucGFuZWwtaW5mb3MgLnRlYW0tY29udGVudCAucnN0IC50aXRsZS0yLCAucnN0IC5wYW5lbC1pbmZvcyAudGVhbS1jb250ZW50IC50aXRsZS0yLCAucGFuZWwtaW5mb3MgLnRlYW0tY29udGVudCAudGl0bGUtMyB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxcmVtOyB9XG4gICAgLnBhbmVsLWluZm9zIC50ZWFtLWNvbnRlbnQgaDUsIC5wYW5lbC1pbmZvcyAudGVhbS1jb250ZW50IC5yc3QgaDQsIC5yc3QgLnBhbmVsLWluZm9zIC50ZWFtLWNvbnRlbnQgaDQsIC5wYW5lbC1pbmZvcyAudGVhbS1jb250ZW50IC5yc3QgaDMsIC5yc3QgLnBhbmVsLWluZm9zIC50ZWFtLWNvbnRlbnQgaDMsIC5wYW5lbC1pbmZvcyAudGVhbS1jb250ZW50IC5yc3QgLmgzLCAucnN0IC5wYW5lbC1pbmZvcyAudGVhbS1jb250ZW50IC5oMywgLnBhbmVsLWluZm9zIC50ZWFtLWNvbnRlbnQgLnJzdCBoMiwgLnJzdCAucGFuZWwtaW5mb3MgLnRlYW0tY29udGVudCBoMiwgLnBhbmVsLWluZm9zIC50ZWFtLWNvbnRlbnQgLnJzdCBoMSwgLnJzdCAucGFuZWwtaW5mb3MgLnRlYW0tY29udGVudCBoMSwgLnBhbmVsLWluZm9zIC50ZWFtLWNvbnRlbnQgLnJzdCAudGl0bGUtMSwgLnJzdCAucGFuZWwtaW5mb3MgLnRlYW0tY29udGVudCAudGl0bGUtMSwgLnBhbmVsLWluZm9zIC50ZWFtLWNvbnRlbnQgLnJzdCAudGl0bGUtMiwgLnJzdCAucGFuZWwtaW5mb3MgLnRlYW0tY29udGVudCAudGl0bGUtMiwgLnBhbmVsLWluZm9zIC50ZWFtLWNvbnRlbnQgLnJzdCAudGl0bGUtMywgLnJzdCAucGFuZWwtaW5mb3MgLnRlYW0tY29udGVudCAudGl0bGUtMywgLnBhbmVsLWluZm9zIC50ZWFtLWNvbnRlbnQgLnJzdCAudGl0bGUtNCwgLnJzdCAucGFuZWwtaW5mb3MgLnRlYW0tY29udGVudCAudGl0bGUtNCwgLnBhbmVsLWluZm9zIC50ZWFtLWNvbnRlbnQgLnRpdGxlLTUge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMC43MnJlbTsgfVxuXG4ucHJlc2VudGF0aW9uIHAge1xuICBjb2xvcjogIzZiNmI2ZDsgfVxuXG4ucHJlc2VudGF0aW9uIGgyLCAucHJlc2VudGF0aW9uIC5yc3QgaDEsIC5yc3QgLnByZXNlbnRhdGlvbiBoMSwgLnByZXNlbnRhdGlvbiAucnN0IC50aXRsZS0xLCAucnN0IC5wcmVzZW50YXRpb24gLnRpdGxlLTEsIC5wcmVzZW50YXRpb24gLnRpdGxlLTIge1xuICBmb250LXNpemU6IDIuNzVyZW07XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIHBhZGRpbmctdG9wOiAycmVtO1xuICBwYWRkaW5nLWJvdHRvbTogMS40cmVtO1xuICBib3JkZXItdG9wOiAxMHB4IHNvbGlkICNEREQ7IH1cblxuLnByZXNlbnRhdGlvbiBoNCwgLnByZXNlbnRhdGlvbiAucnN0IGgzLCAucnN0IC5wcmVzZW50YXRpb24gaDMsIC5wcmVzZW50YXRpb24gLnJzdCAuaDMsIC5yc3QgLnByZXNlbnRhdGlvbiAuaDMsIC5wcmVzZW50YXRpb24gLnJzdCBoMiwgLnJzdCAucHJlc2VudGF0aW9uIGgyLCAucHJlc2VudGF0aW9uIC5yc3QgaDEsIC5yc3QgLnByZXNlbnRhdGlvbiBoMSwgLnByZXNlbnRhdGlvbiAucnN0IC50aXRsZS0xLCAucnN0IC5wcmVzZW50YXRpb24gLnRpdGxlLTEsIC5wcmVzZW50YXRpb24gLnJzdCAudGl0bGUtMiwgLnJzdCAucHJlc2VudGF0aW9uIC50aXRsZS0yLCAucHJlc2VudGF0aW9uIC5yc3QgLnRpdGxlLTMsIC5yc3QgLnByZXNlbnRhdGlvbiAudGl0bGUtMywgLnByZXNlbnRhdGlvbiAudGl0bGUtNCB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07IH1cblxuLnByZXNlbnRhdGlvbiBociB7XG4gIHdpZHRoOiA1MCU7XG4gIG1hcmdpbi1sZWZ0OiAyNSU7XG4gIGJhY2tncm91bmQ6ICNEREQ7XG4gIGJvcmRlci1jb2xvcjogI0RERDsgfVxuXG4ucHJlc2VudGF0aW9uICsgLmN1cnRhaW4ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGZsb2F0OiBsZWZ0O1xuICBtYXJnaW4tdG9wOiAzcmVtOyB9XG4gIC5wcmVzZW50YXRpb24gKyAuY3VydGFpbjpiZWZvcmUge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IC0ycmVtO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGJvcmRlci10b3A6IDEwcHggc29saWQgI0RERDsgfVxuXG4udmlzaXRlX2Zvb3RuYXYge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICBtYXJnaW46IDA7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC52aXNpdGVfZm9vdG5hdiB7XG4gICAgICBkaXNwbGF5OiBmbGV4OyB9IH1cbiAgLnZpc2l0ZV9mb290bmF2IGxpIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGZvbnQtc2l6ZTogMS40cmVtOyB9XG4gICAgLnZpc2l0ZV9mb290bmF2IGxpIGEge1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIGNvbG9yOiAjMGEwYTBhOyB9XG4gICAgLnZpc2l0ZV9mb290bmF2IGxpLmFjdGl2ZSBhIHtcbiAgICAgIGNvbG9yOiAjZGQzMzMzOyB9XG5cbi5zdmdjb250ZW50IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC5zdmdjb250ZW50IHN2ZyBwYXRoIHtcbiAgICBmaWxsLW9wYWNpdHk6IDAuNTtcbiAgICBzdHJva2Utb3BhY2l0eTogMC43O1xuICAgIHN0cm9rZS13aWR0aDogMnB4OyB9XG4gIC5zdmdjb250ZW50IHN2ZyBhIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgLnN2Z2NvbnRlbnQgc3ZnIGEuYWN0aXZlIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gIC5zdmdjb250ZW50ICNvdmVybGF5IHtcbiAgICBvcGFjaXR5OiAwOyB9XG5cbiN2aXNpdC1mb290ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRyYW5zZm9ybS1vcmlnaW46IDAgMTAwJTtcbiAgdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKSB0cmFuc2xhdGUoMCUsIDEwMCUpO1xuICBiYWNrZ3JvdW5kOiAjMDAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDBweDtcbiAgcGFkZGluZzogMCAwLjRyZW07XG4gIGZvbnQtc2l6ZTogMXJlbTsgfVxuXG4uY3VydGFpbiA+IC5wYW5lbCBoMiwgLmN1cnRhaW4gPiAucGFuZWwgLnJzdCBoMSwgLnJzdCAuY3VydGFpbiA+IC5wYW5lbCBoMSwgLmN1cnRhaW4gPiAucGFuZWwgLnJzdCAudGl0bGUtMSwgLnJzdCAuY3VydGFpbiA+IC5wYW5lbCAudGl0bGUtMSwgLmN1cnRhaW4gPiAucGFuZWwgLnRpdGxlLTIge1xuICBib3JkZXI6IDBweDsgfVxuICAuY3VydGFpbiA+IC5wYW5lbCBoMiBzcGFuLnRpdGxlcGFuZWwsIC5jdXJ0YWluID4gLnBhbmVsIC5yc3QgaDEgc3Bhbi50aXRsZXBhbmVsLCAucnN0IC5jdXJ0YWluID4gLnBhbmVsIGgxIHNwYW4udGl0bGVwYW5lbCwgLmN1cnRhaW4gPiAucGFuZWwgLnJzdCAudGl0bGUtMSBzcGFuLnRpdGxlcGFuZWwsIC5yc3QgLmN1cnRhaW4gPiAucGFuZWwgLnRpdGxlLTEgc3Bhbi50aXRsZXBhbmVsLCAuY3VydGFpbiA+IC5wYW5lbCAudGl0bGUtMiBzcGFuLnRpdGxlcGFuZWwge1xuICAgIGZvbnQtc2l6ZTogMS4zcmVtO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIDEwMCUpOyB9XG5cbi5vcGVuLWV5ZWQtdmlzaXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNmVcIjtcbiAgZm9udC1mYW1pbHk6IGljb21vb247IH1cblxuLmNsb3NlLWV5ZWQtdmlzaXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNzBcIjtcbiAgZm9udC1mYW1pbHk6IGljb21vb247IH1cblxuLnJzdCBhLmZuLWJhY2tyZWYge1xuICBjb2xvcjogI2Y3ZjdmNzsgfVxuXG4ucnN0IC5mb290bm90ZSB0ZCB7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAwLjJyZW07IH1cbiAgLnJzdCAuZm9vdG5vdGUgdGQubGFiZWwge1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIHBhZGRpbmc6IDAuNnJlbTsgfVxuXG4jY29va2llLWxhdy1jb250YWluZXIge1xuICBiYWNrZ3JvdW5kOiAjNWI1YjViO1xuICB6LWluZGV4OiAzMDAwO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIGJvdHRvbTogMjBweDtcbiAgcmlnaHQ6IDIwcHg7XG4gIG1hcmdpbi1sZWZ0OiAyMHB4O1xuICBjb2xvcjogI2ZmZmZmZjtcbiAgcGFkZGluZzogMTNweDtcbiAgbWF4LXdpZHRoOiAzNzBweDsgfVxuICAjY29va2llLWxhdy1jb250YWluZXIgLmJ1dHRvbiB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxuICAjY29va2llLWxhdy1jb250YWluZXIgcCB7XG4gICAgZm9udC1zaXplOiAuOXJlbTtcbiAgICBsaW5lLWhlaWdodDogMS4yOyB9XG5cbiN0YWJsZSBoZWFkZXIge1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1vei11c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xuICBtYXJnaW4tYm90dG9tOiAxNXB4OyB9XG4gICN0YWJsZSBoZWFkZXIgLmNvdW50LCAjdGFibGUgaGVhZGVyIC5zcGlubmVyIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgaGVpZ2h0OiAzNHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAzNHB4O1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgY3Vyc29yOiBkZWZhdWx0OyB9XG4gICN0YWJsZSBoZWFkZXIgLnBhZ2luYXRpb24ge1xuICAgIG1hcmdpbjogMDsgfVxuXG4jdGFibGUgLmRyb3Bkb3duIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG5cbiN0YWJsZSAudGFibGUtcmVzcG9uc2l2ZSB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNDQ0M7XG4gIG92ZXJmbG93OiBzY3JvbGw7XG4gIG1pbi1oZWlnaHQ6IDYwMHB4OyB9XG4gICN0YWJsZSAudGFibGUtcmVzcG9uc2l2ZSB0YWJsZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2RkZDsgfVxuICAgICN0YWJsZSAudGFibGUtcmVzcG9uc2l2ZSB0YWJsZSB0aGVhZCB7XG4gICAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgICAgIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xuICAgICAgLW1zLXVzZXItc2VsZWN0OiBub25lOyB9XG4gICAgICAjdGFibGUgLnRhYmxlLXJlc3BvbnNpdmUgdGFibGUgdGhlYWQgdGgge1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgICAgIHVzZXItc2VsZWN0OiBub25lO1xuICAgICAgICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICAgICAgICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xuICAgICAgICAtbXMtdXNlci1zZWxlY3Q6IG5vbmU7IH1cbiAgICAgICAgI3RhYmxlIC50YWJsZS1yZXNwb25zaXZlIHRhYmxlIHRoZWFkIHRoIC5mbGV4IHtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgIGZsZXgtZmxvdzogcm93IHdyYXA7IH1cbiAgICAgICAgICAjdGFibGUgLnRhYmxlLXJlc3BvbnNpdmUgdGFibGUgdGhlYWQgdGggLmZsZXggLmNvbHVtbi1uYW1lIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDVweDtcbiAgICAgICAgICAgIGZsZXg6IDIgMTAwJTtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNDAwOyB9XG4gICAgICAgICAgICAjdGFibGUgLnRhYmxlLXJlc3BvbnNpdmUgdGFibGUgdGhlYWQgdGggLmZsZXggLmNvbHVtbi1uYW1lIH4gLnNvcnRhYmxlLCAjdGFibGUgLnRhYmxlLXJlc3BvbnNpdmUgdGFibGUgdGhlYWQgdGggLmZsZXggLmNvbHVtbi1uYW1lIH4gLmZpbHRlciB7XG4gICAgICAgICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZGRkOyB9XG4gICAgICAgICAgI3RhYmxlIC50YWJsZS1yZXNwb25zaXZlIHRhYmxlIHRoZWFkIHRoIC5mbGV4IC5zb3J0YWJsZSwgI3RhYmxlIC50YWJsZS1yZXNwb25zaXZlIHRhYmxlIHRoZWFkIHRoIC5mbGV4IC5maWx0ZXIge1xuICAgICAgICAgICAgZmxleDogMSA1MCU7XG4gICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgICAgICAgICAgICN0YWJsZSAudGFibGUtcmVzcG9uc2l2ZSB0YWJsZSB0aGVhZCB0aCAuZmxleCAuc29ydGFibGUuZGlzYWJsZWQsICN0YWJsZSAudGFibGUtcmVzcG9uc2l2ZSB0YWJsZSB0aGVhZCB0aCAuZmxleCAuZmlsdGVyLmRpc2FibGVkIHtcbiAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgICAgICAgICN0YWJsZSAudGFibGUtcmVzcG9uc2l2ZSB0YWJsZSB0aGVhZCB0aCAuZmxleCAuc29ydGFibGUuYWN0aXZlLCAjdGFibGUgLnRhYmxlLXJlc3BvbnNpdmUgdGFibGUgdGhlYWQgdGggLmZsZXggLmZpbHRlci5hY3RpdmUgLmZpbHRlci1idXR0b24ge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogI2VjODA1NTtcbiAgICAgICAgICAgIGNvbG9yOiB3aGl0ZTsgfVxuICAgICAgICAgICN0YWJsZSAudGFibGUtcmVzcG9uc2l2ZSB0YWJsZSB0aGVhZCB0aCAuZmxleCAuc29ydGFibGUge1xuICAgICAgICAgICAgb3JkZXI6IDE7XG4gICAgICAgICAgICBwYWRkaW5nOiA1cHg7IH1cbiAgICAgICAgICAjdGFibGUgLnRhYmxlLXJlc3BvbnNpdmUgdGFibGUgdGhlYWQgdGggLmZsZXggLmZpbHRlciB7XG4gICAgICAgICAgICBvcmRlcjogMjsgfVxuICAgICAgICAgICAgI3RhYmxlIC50YWJsZS1yZXNwb25zaXZlIHRhYmxlIHRoZWFkIHRoIC5mbGV4IC5maWx0ZXIgLmZpbHRlci1idXR0b24ge1xuICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICAgIHBhZGRpbmc6IDVweDsgfVxuICAgICAgICAgICAgI3RhYmxlIC50YWJsZS1yZXNwb25zaXZlIHRhYmxlIHRoZWFkIHRoIC5mbGV4IC5maWx0ZXIgLmRyb3Bkb3duLW1lbnUge1xuICAgICAgICAgICAgICBtYXgtaGVpZ2h0OiAzMDBweDtcbiAgICAgICAgICAgICAgb3ZlcmZsb3cteTogYXV0bzsgfVxuICAgICN0YWJsZSAudGFibGUtcmVzcG9uc2l2ZSB0YWJsZSB0Ym9keSB7XG4gICAgICBmb250LXNpemU6IDEycHg7IH1cbiAgICAgICN0YWJsZSAudGFibGUtcmVzcG9uc2l2ZSB0YWJsZSB0Ym9keS5ncmFiYmFibGUge1xuICAgICAgICBjdXJzb3I6IG1vdmU7XG4gICAgICAgIC8qIGZhbGxiYWNrIGlmIGdyYWIgY3Vyc29yIGlzIHVuc3VwcG9ydGVkICovXG4gICAgICAgIGN1cnNvcjogZ3JhYjtcbiAgICAgICAgY3Vyc29yOiAtbW96LWdyYWI7XG4gICAgICAgIGN1cnNvcjogLXdlYmtpdC1ncmFiO1xuICAgICAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgICAgICAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcbiAgICAgICAgLW1vei11c2VyLXNlbGVjdDogbm9uZTtcbiAgICAgICAgLW1zLXVzZXItc2VsZWN0OiBub25lOyB9XG4gICAgICAgICN0YWJsZSAudGFibGUtcmVzcG9uc2l2ZSB0YWJsZSB0Ym9keS5ncmFiYmFibGUuZ3JhYmJpbmcge1xuICAgICAgICAgIGN1cnNvcjogbW92ZTsgfVxuICAgICAgI3RhYmxlIC50YWJsZS1yZXNwb25zaXZlIHRhYmxlIHRib2R5IHRkIHtcbiAgICAgICAgd29yZC1icmVhazogYnJlYWstd29yZDtcbiAgICAgICAgLW1vei1oeXBoZW5zOiBhdXRvO1xuICAgICAgICBoeXBoZW5zOiBhdXRvOyB9XG5cbiN0YWJsZSAuZHJvcGRvd24ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cblxuI3RhYmxlIC5kcm9wZG93bi10b2dnbGUge1xuICAqbWFyZ2luLWJvdHRvbTogLTNweDsgfVxuXG4jdGFibGUgLmRyb3Bkb3duLXRvZ2dsZTphY3RpdmUsXG4jdGFibGUgLm9wZW4gLmRyb3Bkb3duLXRvZ2dsZSB7XG4gIG91dGxpbmU6IDA7IH1cblxuI3RhYmxlIC5jYXJldCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgYm9yZGVyLXRvcDogNHB4IHNvbGlkICMwMDAwMDA7XG4gIGJvcmRlci1yaWdodDogNHB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItbGVmdDogNHB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBjb250ZW50OiBcIlwiOyB9XG5cbiN0YWJsZSAuZHJvcGRvd24gLmNhcmV0IHtcbiAgbWFyZ2luLXRvcDogOHB4O1xuICBtYXJnaW4tbGVmdDogMnB4OyB9XG5cbiN0YWJsZSAuZHJvcGRvd24tbWVudSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAxMDAlO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAxMDAwO1xuICBkaXNwbGF5OiBub25lO1xuICBmbG9hdDogbGVmdDtcbiAgbWluLXdpZHRoOiAxNjBweDtcbiAgcGFkZGluZzogNXB4IDA7XG4gIG1hcmdpbjogMnB4IDAgMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbiAgYm9yZGVyOiAxcHggc29saWQgI2NjYztcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjIpO1xuICAqYm9yZGVyLXJpZ2h0LXdpZHRoOiAycHg7XG4gICpib3JkZXItYm90dG9tLXdpZHRoOiAycHg7XG4gIC13ZWJraXQtYm9yZGVyLXJhZGl1czogNnB4O1xuICAtbW96LWJvcmRlci1yYWRpdXM6IDZweDtcbiAgYm9yZGVyLXJhZGl1czogNnB4O1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDAgNXB4IDEwcHggcmdiYSgwLCAwLCAwLCAwLjIpO1xuICAtbW96LWJveC1zaGFkb3c6IDAgNXB4IDEwcHggcmdiYSgwLCAwLCAwLCAwLjIpO1xuICBib3gtc2hhZG93OiAwIDVweCAxMHB4IHJnYmEoMCwgMCwgMCwgMC4yKTtcbiAgLXdlYmtpdC1iYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICAtbW96LWJhY2tncm91bmQtY2xpcDogcGFkZGluZztcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDsgfVxuXG4jdGFibGUgLmRyb3Bkb3duLW1lbnUucHVsbC1yaWdodCB7XG4gIHJpZ2h0OiAwO1xuICBsZWZ0OiBhdXRvOyB9XG5cbiN0YWJsZSAuZHJvcGRvd24tbWVudSAuZGl2aWRlciB7XG4gICp3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxcHg7XG4gIG1hcmdpbjogOXB4IDFweDtcbiAgKm1hcmdpbjogLTVweCAwIDVweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U1ZTVlNTtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNmZmZmZmY7IH1cblxuI3RhYmxlIC5kcm9wZG93bi1tZW51ID4gbGkgPiBhIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IDNweCAyMHB4O1xuICBjbGVhcjogYm90aDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gIGNvbG9yOiAjMzMzMzMzO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwOyB9XG5cbiN0YWJsZSAuZHJvcGRvd24tbWVudSA+IGxpID4gYTpob3ZlcixcbiN0YWJsZSAuZHJvcGRvd24tbWVudSA+IGxpID4gYTpmb2N1cyxcbiN0YWJsZSAuZHJvcGRvd24tc3VibWVudTpob3ZlciA+IGEsXG4jdGFibGUgLmRyb3Bkb3duLXN1Ym1lbnU6Zm9jdXMgPiBhIHtcbiAgY29sb3I6ICNmZmZmZmY7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwODFjMjtcbiAgYmFja2dyb3VuZC1pbWFnZTogLW1vei1saW5lYXItZ3JhZGllbnQodG9wLCAjMDA4OGNjLCAjMDA3N2IzKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1ncmFkaWVudChsaW5lYXIsIDAgMCwgMCAxMDAlLCBmcm9tKCMwMDg4Y2MpLCB0bygjMDA3N2IzKSk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgIzAwODhjYywgIzAwNzdiMyk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudCh0b3AsICMwMDg4Y2MsICMwMDc3YjMpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAjMDA4OGNjLCAjMDA3N2IzKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14O1xuICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChzdGFydENvbG9yc3RyPScjZmYwMDg4Y2MnLCBlbmRDb2xvcnN0cj0nI2ZmMDA3N2IzJywgR3JhZGllbnRUeXBlPTApOyB9XG5cbiN0YWJsZSAuZHJvcGRvd24tbWVudSA+IC5hY3RpdmUgPiBhLFxuI3RhYmxlIC5kcm9wZG93bi1tZW51ID4gLmFjdGl2ZSA+IGE6aG92ZXIsXG4jdGFibGUgLmRyb3Bkb3duLW1lbnUgPiAuYWN0aXZlID4gYTpmb2N1cyB7XG4gIGNvbG9yOiAjZmZmZmZmO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDgxYzI7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC1tb3otbGluZWFyLWdyYWRpZW50KHRvcCwgIzAwODhjYywgIzAwNzdiMyk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtZ3JhZGllbnQobGluZWFyLCAwIDAsIDAgMTAwJSwgZnJvbSgjMDA4OGNjKSwgdG8oIzAwNzdiMykpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCh0b3AsICMwMDg4Y2MsICMwMDc3YjMpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtby1saW5lYXItZ3JhZGllbnQodG9wLCAjMDA4OGNjLCAjMDA3N2IzKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgIzAwODhjYywgIzAwNzdiMyk7XG4gIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcbiAgb3V0bGluZTogMDtcbiAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoc3RhcnRDb2xvcnN0cj0nI2ZmMDA4OGNjJywgZW5kQ29sb3JzdHI9JyNmZjAwNzdiMycsIEdyYWRpZW50VHlwZT0wKTsgfVxuXG4jdGFibGUgLmRyb3Bkb3duLW1lbnUgPiAuZGlzYWJsZWQgPiBhLFxuI3RhYmxlIC5kcm9wZG93bi1tZW51ID4gLmRpc2FibGVkID4gYTpob3ZlcixcbiN0YWJsZSAuZHJvcGRvd24tbWVudSA+IC5kaXNhYmxlZCA+IGE6Zm9jdXMge1xuICBjb2xvcjogIzk5OTk5OTsgfVxuXG4jdGFibGUgLmRyb3Bkb3duLW1lbnUgPiAuZGlzYWJsZWQgPiBhOmhvdmVyLFxuI3RhYmxlIC5kcm9wZG93bi1tZW51ID4gLmRpc2FibGVkID4gYTpmb2N1cyB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgY3Vyc29yOiBkZWZhdWx0O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoZW5hYmxlZD1mYWxzZSk7IH1cblxuI3RhYmxlIC5vcGVuIHtcbiAgKnotaW5kZXg6IDEwMDA7IH1cblxuI3RhYmxlIC5vcGVuID4gLmRyb3Bkb3duLW1lbnUge1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG4jdGFibGUgLmRyb3Bkb3duLWJhY2tkcm9wIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IDk5MDsgfVxuXG51bC5wYWdpbmF0aW9uIGxpLmRpc2FibGVkLm5hdmlnYXRpb24ge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbmFydGljbGUudGFibGVhdS1zdGF0aXN0aWMgaDE6Zmlyc3QtY2hpbGQsIGFydGljbGUudGFibGVhdS1zdGF0aXN0aWMgLnRpdGxlLTE6Zmlyc3QtY2hpbGQge1xuICBtYXJnaW4tdG9wOiA1cmVtO1xuICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICBmb250LXNpemU6IDNyZW07IH1cblxuLmhlYWRlckNvbnRhaW5lciB7XG4gIGJhY2tncm91bmQ6ICMwYTBhMGE7IH1cbiAgLmhlYWRlckNvbnRhaW5lciAjaGVhZGVyIHtcbiAgICBtYXJnaW46IGF1dG87XG4gICAgbWF4LXdpZHRoOiAxMDIuNXJlbTsgfVxuXG4jdGltZVNjcm9sbCB7XG4gIHdpZHRoOiA0MnB4O1xuICBwb3NpdGlvbjogc3RpY2t5O1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIGJhY2tncm91bmQ6ICMwYTBhMGE7XG4gIHBhZGRpbmc6IDA7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICN0aW1lU2Nyb2xsIHtcbiAgICAgIHdpZHRoOiA4MnB4OyB9IH1cblxuI3RpbWVTY3JvbGxiYXIge1xuICBoZWlnaHQ6IGNhbGMoMTAwdmgpO1xuICB3aWR0aDogMTAwJTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IDAlO1xuICBtYXJnaW4tdG9wOiAwcmVtOyB9XG5cbiN0b3RTY3JvbGxiYXIge1xuICBoZWlnaHQ6IDEwMCU7XG4gIHdpZHRoOiAycHg7XG4gIHRvcDogLTAwJTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kOiAjRTBFMEUwO1xuICB6LWluZGV4OiAtMTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIDApOyB9XG5cbiNkb3RTY3JvbGxiYXIge1xuICBkaXNwbGF5OiBub25lO1xuICBtYXJnaW46IDBlbSAwO1xuICBoZWlnaHQ6IDEwMCU7IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NTBweCkge1xuICAgICNkb3RTY3JvbGxiYXIge1xuICAgICAgZGlzcGxheTogYmxvY2s7IH0gfVxuICAjZG90U2Nyb2xsYmFyIC5zaGltIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gICNkb3RTY3JvbGxiYXIgLmhvbGRlciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGZvbnQtc2l6ZTogODUlO1xuICAgIHBhZGRpbmc6IDBlbSAwIDAgMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGEwYTBhOyB9XG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NTBweCkge1xuICAgICAgI2RvdFNjcm9sbGJhciAuaG9sZGVyIHtcbiAgICAgICAgZm9udC1zaXplOiA5MCU7IH0gfVxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTAwcHgpIHtcbiAgICAgICNkb3RTY3JvbGxiYXIgLmhvbGRlciB7XG4gICAgICAgIGZvbnQtc2l6ZTogOTUlOyB9IH1cbiAgICAjZG90U2Nyb2xsYmFyIC5ob2xkZXIgLmJhciB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBib3R0b206IDA7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICB3aWR0aDogMnB4O1xuICAgICAgbGVmdDogNTAlO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzBhMGEwYTsgfVxuICAgICAgI2RvdFNjcm9sbGJhciAuaG9sZGVyIC5iYXIgLmluZGljYXRvciB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNkZDMzMzM7XG4gICAgICAgIHdpZHRoOiAycHg7IH1cbiAgICAjZG90U2Nyb2xsYmFyIC5ob2xkZXIgLmxhYmVscyB7XG4gICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIHBhZGRpbmc6IDAgMGVtOyB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgICNkb3RTY3JvbGxiYXIgLmhvbGRlciAubGFiZWxzIHtcbiAgICAgICAgICBwYWRkaW5nOiAwIDJlbTsgfSB9XG4gICAgICAjZG90U2Nyb2xsYmFyIC5ob2xkZXIgLmxhYmVscyBpIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgICAgICAgI2RvdFNjcm9sbGJhciAuaG9sZGVyIC5sYWJlbHMgaTo6YmVmb3JlIHtcbiAgICAgICAgICB6LWluZGV4OiAyO1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICBib3R0b206IDUwJTtcbiAgICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgd2lkdGg6IDAuNzVyZW07XG4gICAgICAgICAgaGVpZ2h0OiAwLjc1cmVtO1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRTBFMEUwO1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKSB0cmFuc2xhdGVZKDUwJSk7XG4gICAgICAgICAgdHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yIDEwMG1zIGVhc2UtaW4sIGJhY2tncm91bmQtY29sb3IgMTUwbXMgZWFzZS1pbjsgfVxuICAgICAgICAjZG90U2Nyb2xsYmFyIC5ob2xkZXIgLmxhYmVscyBpOjphZnRlciB7XG4gICAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBjb250ZW50OiBhdHRyKGRhdGEtbGFiZWwpO1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICByaWdodDogMHJlbTtcbiAgICAgICAgICBwYWRkaW5nOiAwLjM3NXJlbTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcbiAgICAgICAgICBmb250LWZhbWlseTogJ0ludGVyJztcbiAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgIGNvbG9yOiAjZjdmN2Y3O1xuICAgICAgICAgIGJhY2tncm91bmQ6ICMwYTBhMGE7XG4gICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDAuNXJlbTtcbiAgICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgICAgICB0cmFuc2l0aW9uOiBjb2xvciAxNTBtcyBlYXNlLWluLCBvcGFjaXR5IDE1MG1zIGVhc2UtaW4sIHBhZGRpbmctcmlnaHQgMTAwbXMgZWFzZS1vdXQ7IH1cbiAgICAgICAgI2RvdFNjcm9sbGJhciAuaG9sZGVyIC5sYWJlbHMgaTpob3Zlcjo6YmVmb3JlLCAjZG90U2Nyb2xsYmFyIC5ob2xkZXIgLmxhYmVscyBpOmZvY3VzOjpiZWZvcmUge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNkZDMzMzM7IH1cbiAgICAgICAgI2RvdFNjcm9sbGJhciAuaG9sZGVyIC5sYWJlbHMgaTpob3Zlcjo6YWZ0ZXIsICNkb3RTY3JvbGxiYXIgLmhvbGRlciAubGFiZWxzIGk6Zm9jdXM6OmFmdGVyIHtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAyZW07XG4gICAgICAgICAgb3BhY2l0eTogMTsgfVxuICAgICAgICAjZG90U2Nyb2xsYmFyIC5ob2xkZXIgLmxhYmVscyBpLnJlYWQ6OmJlZm9yZSB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2RkMzMzMzsgfVxuICAgICAgICAjZG90U2Nyb2xsYmFyIC5ob2xkZXIgLmxhYmVscyBpLnJlYWQ6aG92ZXI6OmJlZm9yZSwgI2RvdFNjcm9sbGJhciAuaG9sZGVyIC5sYWJlbHMgaS5yZWFkOmZvY3VzOjpiZWZvcmUge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNFMEUwRTA7IH1cbiAgICAgICAgI2RvdFNjcm9sbGJhciAuaG9sZGVyIC5sYWJlbHMgaS5yZWFkaW5nOjphZnRlciB7XG4gICAgICAgICAgYmFja2dyb3VuZDogI2RkMzMzMztcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAyZW07IH1cbiAgICAgICAgI2RvdFNjcm9sbGJhciAuaG9sZGVyIC5sYWJlbHMgaS5yZWFkaW5nOmhvdmVyOjphZnRlciwgI2RvdFNjcm9sbGJhciAuaG9sZGVyIC5sYWJlbHMgaS5yZWFkaW5nOmZvY3VzOjphZnRlciB7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogMmVtO1xuICAgICAgICAgIG9wYWNpdHk6IDE7IH1cbiAgI2RvdFNjcm9sbGJhci5maXhlZCAuaG9sZGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHdpZHRoOiA0MnB4O1xuICAgIHotaW5kZXg6IDE7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAjZG90U2Nyb2xsYmFyLmZpeGVkIC5ob2xkZXIge1xuICAgICAgICB3aWR0aDogODJweDsgfSB9XG4gICNkb3RTY3JvbGxiYXIuZml4ZWQgLnNoaW0ge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi51bnBhZGRlZCB7XG4gIHBhZGRpbmc6IDAgIWltcG9ydGFudDsgfVxuXG4ucm93LWxhcmdlciB7XG4gIG1heC13aWR0aDogMTAyLjVyZW07IH1cblxuLnBhZGRpbmcxIHtcbiAgcGFkZGluZzogMXJlbTsgfVxuXG4udi1ib3R0b20tbGFyZ2Uge1xuICBwYWRkaW5nLWJvdHRvbTogNi41cmVtOyB9XG5cbi5leHBvX2NvbnRlbnQge1xuICBiYWNrZ3JvdW5kOiAjRjhGN0Y0OyB9XG4gIC5leHBvX2NvbnRlbnQuYmxhY2tjb250ZW50IHtcbiAgICBiYWNrZ3JvdW5kOiAjMGEwYTBhOyB9XG4gIC5leHBvX2NvbnRlbnQgaGVhZGVyIHtcbiAgICBiYWNrZ3JvdW5kOiAjMGEwYTBhO1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmV4cG9fY29udGVudCBoZWFkZXIge1xuICAgICAgICBkaXNwbGF5OiBibG9jazsgfSB9XG4gICAgLmV4cG9fY29udGVudCBoZWFkZXIgLnRpdGxlIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMHJlbTtcbiAgICAgIG1hcmdpbi10b3A6IDByZW07IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgLmV4cG9fY29udGVudCBoZWFkZXIgLnRpdGxlIHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwcmVtO1xuICAgICAgICAgIG1hcmdpbi10b3A6IDByZW07IH0gfVxuICAgICAgLmV4cG9fY29udGVudCBoZWFkZXIgLnRpdGxlLnVuZGVybGluZSB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDJweCAjOUI5QjlCIHNvbGlkOyB9XG4gICAgICAuZXhwb19jb250ZW50IGhlYWRlciAudGl0bGUgKiB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIGZvbnQtc2l6ZTogMC44cmVtOyB9XG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgICAgICAgICAuZXhwb19jb250ZW50IGhlYWRlciAudGl0bGUgKiB7XG4gICAgICAgICAgICBmb250LXNpemU6IDAuOHJlbTsgfSB9XG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWF4LXdpZHRoOiA3NC45Mzc1ZW0pIHtcbiAgICAgICAgICAuZXhwb19jb250ZW50IGhlYWRlciAudGl0bGUgKiB7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuM3JlbTsgfSB9XG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAgICAgICAuZXhwb19jb250ZW50IGhlYWRlciAudGl0bGUgKiB7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuNXJlbTsgfSB9XG4gICAgICAuZXhwb19jb250ZW50IGhlYWRlciAudGl0bGUgW2NsYXNzKj1cIiBpY29uLVwiXSB7XG4gICAgICAgIG1hcmdpbjogMCAwLjI1cmVtO1xuICAgICAgICBmb250LXNpemU6IDEuNHJlbTsgfVxuICAgICAgICAuZXhwb19jb250ZW50IGhlYWRlciAudGl0bGUgW2NsYXNzKj1cIiBpY29uLVwiXTpiZWZvcmUge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMS40cmVtOyB9XG4gICAgLmV4cG9fY29udGVudCBoZWFkZXIgaDEsIC5leHBvX2NvbnRlbnQgaGVhZGVyIC50aXRsZS0xIHtcbiAgICAgIGZvbnQtc2l6ZTogMi4yNXJlbTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7IH1cbiAgICAuZXhwb19jb250ZW50IGhlYWRlciBoMywgLmV4cG9fY29udGVudCBoZWFkZXIgLmgzLCAuZXhwb19jb250ZW50IGhlYWRlciAucnN0IGgyLCAucnN0IC5leHBvX2NvbnRlbnQgaGVhZGVyIGgyLCAuZXhwb19jb250ZW50IGhlYWRlciAucnN0IGgxLCAucnN0IC5leHBvX2NvbnRlbnQgaGVhZGVyIGgxLCAuZXhwb19jb250ZW50IGhlYWRlciAucnN0IC50aXRsZS0xLCAucnN0IC5leHBvX2NvbnRlbnQgaGVhZGVyIC50aXRsZS0xLCAuZXhwb19jb250ZW50IGhlYWRlciAucnN0IC50aXRsZS0yLCAucnN0IC5leHBvX2NvbnRlbnQgaGVhZGVyIC50aXRsZS0yLCAuZXhwb19jb250ZW50IGhlYWRlciAudGl0bGUtMyB7XG4gICAgICBmb250LXdlaWdodDogNzAwOyB9XG5cbi5ibG9jay5ibGFjayB7XG4gIGJhY2tncm91bmQ6ICMwYTBhMGE7IH1cbiAgLmJsb2NrLmJsYWNrICoge1xuICAgIGNvbG9yOiAjZjdmN2Y3OyB9XG5cbi5ibG9jay5ncmF5IHtcbiAgYmFja2dyb3VuZDogIzIyMjIyMjsgfVxuICAuYmxvY2suZ3JheSAqIHtcbiAgICBjb2xvcjogI2Y3ZjdmNzsgfVxuXG4uYmxvY2sud2hpdGUge1xuICBiYWNrZ3JvdW5kOiAjRUNFQ0YyOyB9XG4gIC5ibG9jay53aGl0ZSAqIHtcbiAgICBjb2xvcjogIzBhMGEwYTsgfVxuXG4uYmxvY2sud2hpdGVyIHtcbiAgYmFja2dyb3VuZDogI0Y4RjdGNDsgfVxuICAuYmxvY2sud2hpdGVyICoge1xuICAgIGNvbG9yOiAjMGEwYTBhOyB9XG5cbi5jb250ZW50LWJveC5ibGFjayB7XG4gIGJhY2tncm91bmQ6ICMwYTBhMGE7IH1cbiAgLmNvbnRlbnQtYm94LmJsYWNrIGEge1xuICAgIGNvbG9yOiAjZGQzMzMzOyB9XG5cbi5leHBvX2JvZHkgZm9vdGVyIHtcbiAgbWFyZ2luOiAwOyB9XG5cbi5leHBvX2JvZHkgLmhlYWRlckNvbnRhaW5lciB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi9zdGF0aWMvaW1hZ2VzL3RoZW1lL2Jhbi1leHBvLnBuZ1wiKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIHJpZ2h0O1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47IH1cbiAgLmV4cG9fYm9keSAuaGVhZGVyQ29udGFpbmVyICNoZWFkZXIuaW50ZXJuIHtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDsgfVxuICAuZXhwb19ib2R5IC5oZWFkZXJDb250YWluZXIgLnRvcC1iYXIge1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50OyB9XG5cbiNjb250ZW50ZXhwb19jb250YWluZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGhlaWdodDogYXV0bztcbiAgbWFyZ2luLXRvcDogLTZyZW07XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICNjb250ZW50ZXhwb19jb250YWluZXIge1xuICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93OyB9IH1cblxuLmV4cG9fY29udGVudCBhc2lkZSxcbi5leHBvX2NvbnRlbnQgbWFpbiB7XG4gIHBhZGRpbmctdG9wOiAyLjVyZW07IH1cblxuLmV4cG9fY29udGVudCBhc2lkZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdG9wOiAwO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuZXhwb19jb250ZW50IGFzaWRlIHtcbiAgICAgIHBvc2l0aW9uOiBzdGlja3k7IH0gfVxuXG4uZ29iYWNrc2lkZSB7XG4gIHBvc2l0aW9uOiBzdGlja3k7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IDkwdmg7IH1cbiAgLmdvYmFja3NpZGUgPiBkaXYge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICBsZWZ0OiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSkgcm90YXRlKC05MGRlZyk7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyO1xuICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICAgIGZvbnQtZmFtaWx5OiAnZXBpbG9ndWUnO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxuXG4jbmF2YmFyLXRoZW1hdGljcy1sZWZ0IHtcbiAgcG9zaXRpb246IHN0aWNreTtcbiAgdG9wOiAwOyB9XG4gICNuYXZiYXItdGhlbWF0aWNzLWxlZnQgdWwge1xuICAgIGJhY2tncm91bmQ6ICMwYTBhMGE7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIG1hcmdpbjogMDtcbiAgICBib3JkZXI6IDJweCAjMGEwYTBhIHNvbGlkOyB9XG4gICAgI25hdmJhci10aGVtYXRpY3MtbGVmdCB1bCBsaSB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICMwYTBhMGE7IH1cbiAgICAgICNuYXZiYXItdGhlbWF0aWNzLWxlZnQgdWwgbGk6bGFzdC1jaGlsZCB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDA7IH1cbiAgICAjbmF2YmFyLXRoZW1hdGljcy1sZWZ0IHVsIGEge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICAgIHBhZGRpbmc6IDAuNXJlbTtcbiAgICAgIGZvbnQtZmFtaWx5OiAndmFydGEnO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgICBsaW5lLWhlaWdodDogMXJlbTtcbiAgICAgIGNvbG9yOiAjMGEwYTBhOyB9XG4gICAgICAjbmF2YmFyLXRoZW1hdGljcy1sZWZ0IHVsIGE6aG92ZXIge1xuICAgICAgICBjb2xvcjogI2RkMzMzMzsgfVxuXG4jaXRlbXMtZXhwbyxcbiNpdGVtcy10aGVtcyB7XG4gIGZsb2F0OiBub25lO1xuICB3aWR0aDogOTUlOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAjaXRlbXMtZXhwbyxcbiAgICAjaXRlbXMtdGhlbXMge1xuICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgd2lkdGg6IDkwJTsgfSB9XG4gICNpdGVtcy1leHBvLmxpc3QtY2hhcCxcbiAgI2l0ZW1zLXRoZW1zLmxpc3QtY2hhcCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgY2xlYXI6IGJvdGg7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgcGFkZGluZy1ib3R0b206IDVyZW07IH1cbiAgI2l0ZW1zLWV4cG8gLmdyaWRzaXplcixcbiAgI2l0ZW1zLXRoZW1zIC5ncmlkc2l6ZXIge1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLyAyKTsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICNpdGVtcy1leHBvIC5ncmlkc2l6ZXIsXG4gICAgICAjaXRlbXMtdGhlbXMgLmdyaWRzaXplciB7XG4gICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLyAzKTsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgI2l0ZW1zLWV4cG8gLmdyaWRzaXplcixcbiAgICAgICNpdGVtcy10aGVtcyAuZ3JpZHNpemVyIHtcbiAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAvIDQpOyB9IH1cblxuI2l0ZW1zLWV4cG8ge1xuICB3aWR0aDogOTAlO1xuICBtYXJnaW46IDAlOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAjaXRlbXMtZXhwbyB7XG4gICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICB3aWR0aDogOTAlO1xuICAgICAgbWFyZ2luOiBhdXRvOyB9IH1cblxuI2l0ZW1zLXRoZW1zIHtcbiAgd2lkdGg6IDEwMCU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdG9wOiAwcmVtOyB9XG4gICNpdGVtcy10aGVtcyAuY2FyZC1leHBvIGZpZ2NhcHRpb24gYSB7XG4gICAgY29sb3I6ICMwYTBhMGE7IH1cblxuLmluRXhwbyB7XG4gIGZvbnQtc2l6ZTogNjYlO1xuICBjb2xvcjogYmxhY2sgIWltcG9ydGFudDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBjbGVhcjogYm90aDtcbiAgZmxvYXQ6IGxlZnQ7IH1cbiAgLmluRXhwbyAqIHtcbiAgICBjb2xvcjogYmxhY2sgIWltcG9ydGFudDsgfVxuXG4uYXJ0aWNsZWdvdG8ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLXRvcDogNHJlbTtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHdpZHRoOiAxMDAlOyB9XG4gIC5hcnRpY2xlZ290byBoMSwgLmFydGljbGVnb3RvIC50aXRsZS0xIHtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycztcbiAgICBjb2xvcjogI2Y3ZjdmNyAhaW1wb3J0YW50O1xuICAgIHRleHQtc2hhZG93OiAwIDAgMHB4IHJnYmEoMCwgMCwgMCwgMC41KTsgfVxuICAuYXJ0aWNsZWdvdG86aG92ZXIgaDEsIC5hcnRpY2xlZ290bzpob3ZlciAudGl0bGUtMSB7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuMnM7XG4gICAgY29sb3I6ICNkZDMzMzMgIWltcG9ydGFudDtcbiAgICB0ZXh0LXNoYWRvdzogMCAwIDQwcHggYmxhY2ssIDAgMCA0cHggYmxhY2s7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTM3NWVtKSB7XG4gICAgLmFydGljbGVnb3RvIC50aHVtYiB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBoZWlnaHQ6IDMwdnc7XG4gICAgICBtaW4taGVpZ2h0OiAxMjBweDtcbiAgICAgIG1heC1oZWlnaHQ6IDE2MHB4O1xuICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgICAgIC5hcnRpY2xlZ290byAudGh1bWIgaW1nIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBtaW4td2lkdGg6IDEwMCU7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDEwMCU7XG4gICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAgIC5hcnRpY2xlZ290byAudGh1bWIge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgaGVpZ2h0OiAyMHZ3O1xuICAgICAgbWF4LWhlaWdodDogMzIwcHg7XG4gICAgICB3aWR0aDogMTAwJTsgfVxuICAgICAgLmFydGljbGVnb3RvIC50aHVtYiBpbWcge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIG1pbi13aWR0aDogMTAwJTtcbiAgICAgICAgbWluLWhlaWdodDogMTAwJTtcbiAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7IH0gfVxuXG4ubGlzdGV4cG9zIHtcbiAgcGFkZGluZy1ib3R0b206IDRyZW07XG4gIGZsb2F0OiBsZWZ0O1xuICB3aWR0aDogMTAwJTsgfVxuXG4uY2FyZC1leHBvIHtcbiAgd2lkdGg6IGNhbGMoMTAwJSAvIDIgLSAxNnB4KTtcbiAgZm9udC1mYW1pbHk6IFwiVmFydGFcIjtcbiAgcGFkZGluZy1ib3R0b206IDFyZW07XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAuY2FyZC1leHBvOmhvdmVyIHtcbiAgICBjb2xvcjogI2RkMzMzMyAhaW1wb3J0YW50OyB9XG4gICAgLmNhcmQtZXhwbzpob3ZlciBmaWdjYXB0aW9uIHtcbiAgICAgIGNvbG9yOiAjZGQzMzMzICFpbXBvcnRhbnQ7IH1cbiAgICAgIC5jYXJkLWV4cG86aG92ZXIgZmlnY2FwdGlvbiBhIHtcbiAgICAgICAgY29sb3I6ICNkZDMzMzMgIWltcG9ydGFudDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmNhcmQtZXhwbyB7XG4gICAgICB3aWR0aDogY2FsYygxMDAlIC8gMyAtIDE2cHgpOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5jYXJkLWV4cG8ge1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSAvIDQgLSAxNnB4KTsgfSB9XG4gIC5jYXJkLWV4cG8uYmlnY2FyZCB7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgICAuY2FyZC1leHBvLmJpZ2NhcmQgLmluZm8tZXhwb3NpdGlvbi1yaWdodC1kb3duIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsgfVxuICAgICAgLmNhcmQtZXhwby5iaWdjYXJkIC5pbmZvLWV4cG9zaXRpb24tcmlnaHQtZG93biAuaW5mb2V4cG8ge1xuICAgICAgICBtYXJnaW46IDNyZW07XG4gICAgICAgIG1heC1oZWlnaHQ6IGNhbGMoMTAwJSAtIDNyZW0pO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cbiAgICAgICAgLmNhcmQtZXhwby5iaWdjYXJkIC5pbmZvLWV4cG9zaXRpb24tcmlnaHQtZG93biAuaW5mb2V4cG8gcCB7XG4gICAgICAgICAgdGV4dC1hbGlnbjoganVzdGlmeTsgfVxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45Mzc1ZW0pIHtcbiAgICAgICAgICAuY2FyZC1leHBvLmJpZ2NhcmQgLmluZm8tZXhwb3NpdGlvbi1yaWdodC1kb3duIC5pbmZvZXhwbyB7XG4gICAgICAgICAgICBtYXJnaW46IDFyZW07XG4gICAgICAgICAgICBtYXgtaGVpZ2h0OiBjYWxjKDEwMCUgLSAzcmVtKTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIHNjcm9sbC1iZWhhdmlvcjogc21vb3RoO1xuICAgICAgICAgICAgb3ZlcmZsb3cteTogc2Nyb2xsO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMXJlbSk7IH0gfVxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gICAgICAgICAgLmNhcmQtZXhwby5iaWdjYXJkIC5pbmZvLWV4cG9zaXRpb24tcmlnaHQtZG93biAuaW5mb2V4cG8ge1xuICAgICAgICAgICAgbWFyZ2luOiAxcmVtO1xuICAgICAgICAgICAgbWF4LWhlaWdodDogY2FsYygxMDAlIC0gM3JlbSk7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICBzY3JvbGwtYmVoYXZpb3I6IHNtb290aDtcbiAgICAgICAgICAgIG92ZXJmbG93LXk6IHNjcm9sbDtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDFyZW0pOyB9IH1cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAgIC5jYXJkLWV4cG8uYmlnY2FyZCAuaW5mby1leHBvc2l0aW9uLXJpZ2h0LWRvd24gLmluZm9leHBvIHAge1xuICAgICAgICAgICAgZm9udC1zaXplOiAwLjk1cmVtO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMmVtOyB9IH1cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgICAgIC5jYXJkLWV4cG8uYmlnY2FyZCAuaW5mby1leHBvc2l0aW9uLXJpZ2h0LWRvd24gLmluZm9leHBvIHAge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjFyZW07XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS4yNWVtOyB9IH1cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgICAgIC5jYXJkLWV4cG8uYmlnY2FyZCAuaW5mby1leHBvc2l0aW9uLXJpZ2h0LWRvd24gLmluZm9leHBvIHAge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjNyZW07XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS4yNWVtOyB9IH1cbiAgICAuY2FyZC1leHBvLmJpZ2NhcmQgLnZpZC1leHBvIHtcbiAgICAgIGJhY2tncm91bmQ6ICMwYTBhMGE7XG4gICAgICBjb2xvcjogI2Y3ZjdmNztcbiAgICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAgICAgLmNhcmQtZXhwby5iaWdjYXJkIC52aWQtZXhwbyA+ICoge1xuICAgICAgICBjb2xvcjogI2Y3ZjdmNztcbiAgICAgICAgZm9udC1mYW1pbHk6IFwiaW50ZXJcIjtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDsgfVxuICAgICAgLmNhcmQtZXhwby5iaWdjYXJkIC52aWQtZXhwby5vbi1ibGFjayA+ICosXG4gICAgICAuY2FyZC1leHBvLmJpZ2NhcmQgLnZpZC1leHBvLm9uLWJsYWNrID4gKiAqIHtcbiAgICAgICAgY29sb3I6ICNmN2Y3Zjc7IH1cbiAgICAuY2FyZC1leHBvLmJpZ2NhcmQgZmlnY2FwdGlvbiB7XG4gICAgICBib3R0b206IGF1dG87XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC01MCUpO1xuICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7IH1cbiAgICAgIC5jYXJkLWV4cG8uYmlnY2FyZCBmaWdjYXB0aW9uIGgxLCAuY2FyZC1leHBvLmJpZ2NhcmQgZmlnY2FwdGlvbiAudGl0bGUtMSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS42MjVyZW07XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgICAgICBmb250LXdlaWdodDogOTAwO1xuICAgICAgICBsaW5lLWhlaWdodDogMS4xO1xuICAgICAgICBtYXJnaW4tdG9wOiAxLjM3NXJlbTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDAuNzVyZW07IH1cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAgIC5jYXJkLWV4cG8uYmlnY2FyZCBmaWdjYXB0aW9uIGgxLCAuY2FyZC1leHBvLmJpZ2NhcmQgZmlnY2FwdGlvbiAudGl0bGUtMSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDJyZW07IH0gfVxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgICAgLmNhcmQtZXhwby5iaWdjYXJkIGZpZ2NhcHRpb24gaDEsIC5jYXJkLWV4cG8uYmlnY2FyZCBmaWdjYXB0aW9uIC50aXRsZS0xIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMi43NXJlbTsgfSB9XG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAgICAgICAuY2FyZC1leHBvLmJpZ2NhcmQgZmlnY2FwdGlvbiBoMSwgLmNhcmQtZXhwby5iaWdjYXJkIGZpZ2NhcHRpb24gLnRpdGxlLTEge1xuICAgICAgICAgICAgZm9udC1zaXplOiAzLjRyZW07IH0gfVxuICAgIC5jYXJkLWV4cG8uYmlnY2FyZCAuaW5mby1leHBvc2l0aW9uLXJpZ2h0LWRvd24ge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBiYWNrZ3JvdW5kOiAjRUNFQ0YyO1xuICAgICAgY29sb3I6ICMwYTBhMGE7XG4gICAgICB0cmFuc2l0aW9uOiBhbGwgMC41cztcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gICAgLmNhcmQtZXhwby5iaWdjYXJkIC50aHVtYiB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAgIC5jYXJkLWV4cG8uYmlnY2FyZCAudGh1bWIgaW1nIHtcbiAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7IH1cbiAgICAgIC5jYXJkLWV4cG8uYmlnY2FyZCAudGh1bWI6YWZ0ZXIge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjM4KTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgY29udGVudDogXCJcIjsgfVxuICAgIC5jYXJkLWV4cG8uYmlnY2FyZCAuaW5mby1leHBvc2l0aW9uIHtcbiAgICAgIHBhZGRpbmc6IDAuODc1cmVtIDAgMS44cmVtO1xuICAgICAgZm9udC1mYW1pbHk6ICdpbnRlcic7XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzlCOUI5QjsgfVxuICAgICAgLmNhcmQtZXhwby5iaWdjYXJkIC5pbmZvLWV4cG9zaXRpb24gLmF1dGgtZXhwbyB7XG4gICAgICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgICAgIGNvbG9yOiAjZjdmN2Y3O1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDsgfVxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgICAgLmNhcmQtZXhwby5iaWdjYXJkIC5pbmZvLWV4cG9zaXRpb24gLmF1dGgtZXhwbyB7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuMTI1cmVtOyB9IH1cbiAgICAgIC5jYXJkLWV4cG8uYmlnY2FyZCAuaW5mby1leHBvc2l0aW9uIC5kYXRlLWV4cG8sXG4gICAgICAuY2FyZC1leHBvLmJpZ2NhcmQgLmluZm8tZXhwb3NpdGlvbiAuZGF0ZS1leHBvICoge1xuICAgICAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgICAgICBjb2xvcjogIzlGOUM5QyAhaW1wb3J0YW50O1xuICAgICAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDsgfVxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgICAgLmNhcmQtZXhwby5iaWdjYXJkIC5pbmZvLWV4cG9zaXRpb24gLmRhdGUtZXhwbyxcbiAgICAgICAgICAuY2FyZC1leHBvLmJpZ2NhcmQgLmluZm8tZXhwb3NpdGlvbiAuZGF0ZS1leHBvICoge1xuICAgICAgICAgICAgZm9udC1zaXplOiAwLjc1cmVtOyB9IH1cbiAgICAgICAgLmNhcmQtZXhwby5iaWdjYXJkIC5pbmZvLWV4cG9zaXRpb24gLmRhdGUtZXhwbyBzcGFuLFxuICAgICAgICAuY2FyZC1leHBvLmJpZ2NhcmQgLmluZm8tZXhwb3NpdGlvbiAuZGF0ZS1leHBvICogc3BhbiB7XG4gICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgfVxuICAuY2FyZC1leHBvLnNtYWxsY2FyZCBmaWdjYXB0aW9uIHtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gMS4xMjVyZW0pO1xuICAgIGJveC1zaGFkb3c6IC00cHggNnB4IHJnYmEoMCwgMCwgMCwgMC40KTsgfVxuICAuY2FyZC1leHBvLnNtYWxsY2FyZCAuaW5mby1leHBvc2l0aW9uIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEuNXJlbTsgfVxuICAgIC5jYXJkLWV4cG8uc21hbGxjYXJkIC5pbmZvLWV4cG9zaXRpb24gLmF1dGgtZXhwbyB7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgZm9udC1zaXplOiAwLjc1cmVtOyB9XG4gIC5jYXJkLWV4cG8gZmlndXJlIHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG1hcmdpbjogMDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICAgIC5jYXJkLWV4cG8gZmlndXJlIGltZyB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMjQ3LCAyNDcsIDI0NywgMC45KTsgfVxuICAuY2FyZC1leHBvIGZpZ2NhcHRpb24ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3R0b206IDFyZW07XG4gICAgYmFja2dyb3VuZDogI0Y4RjdGNDtcbiAgICBmb250LWZhbWlseTogXCJJbnRlclwiO1xuICAgIGZvbnQtd2VpZ2h0OiA4MDA7XG4gICAgY29sb3I6ICMwYTBhMGE7XG4gICAgcGFkZGluZzogMC4xMjVyZW07XG4gICAgZm9udC1zaXplOiAwLjc1cmVtOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmNhcmQtZXhwbyBmaWdjYXB0aW9uIHtcbiAgICAgICAgZm9udC1zaXplOiAwLjgyNXJlbTsgfSB9XG4gICAgLmNhcmQtZXhwbyBmaWdjYXB0aW9uIGEge1xuICAgICAgY29sb3I6ICMwYTBhMGE7IH1cbiAgLmNhcmQtZXhwbyAudmlkLWV4cG8ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICBiYWNrZ3JvdW5kOiAjRjhGN0Y0O1xuICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgZm9udC1mYW1pbHk6IFwiVmFydGFcIjtcbiAgICB6LWluZGV4OiAxMDsgfVxuICAgIC5jYXJkLWV4cG8gLnZpZC1leHBvID4gKiAqIHtcbiAgICAgIGNvbG9yOiAjMGEwYTBhOyB9XG4gICAgLmNhcmQtZXhwbyAudmlkLWV4cG8gPiAqIHtcbiAgICAgIGNvbG9yOiAjMGEwYTBhO1xuICAgICAgcGFkZGluZzogMC4xMjVyZW0gMC43NXJlbTtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gICAgICAuY2FyZC1leHBvIC52aWQtZXhwbyA+ICogaSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDAuMXJlbTsgfVxuICAgICAgLmNhcmQtZXhwbyAudmlkLWV4cG8gPiAqIHNwYW4ge1xuICAgICAgICBtYXJnaW46IDAuNHJlbTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMC4ycmVtO1xuICAgICAgICBtYXJnaW4tbGVmdDogMC4ycmVtO1xuICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgZm9udC1zaXplOiAwLjc1cmVtOyB9XG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgICAuY2FyZC1leHBvIC52aWQtZXhwbyA+ICogc3BhbiB7XG4gICAgICAgICAgICBmb250LXNpemU6IDAuODI1cmVtOyB9IH1cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAgIC5jYXJkLWV4cG8gLnZpZC1leHBvID4gKiBzcGFuIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMC44MjVyZW07IH0gfVxuICAgICAgICAuY2FyZC1leHBvIC52aWQtZXhwbyA+ICogc3BhbiBpIHtcbiAgICAgICAgICBmb250LXNpemU6IDAuNzVyZW07IH1cbiAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgICAgICAuY2FyZC1leHBvIC52aWQtZXhwbyA+ICogc3BhbiBpIHtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAwLjgyNXJlbTsgfSB9XG4gICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAgICAgLmNhcmQtZXhwbyAudmlkLWV4cG8gPiAqIHNwYW4gaSB7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMC44MjVyZW07IH0gfVxuICAuY2FyZC1leHBvLm9uLWJsYWNrIGZpZ2NhcHRpb24ge1xuICAgIGJhY2tncm91bmQ6ICMwYTBhMGE7IH1cbiAgICAuY2FyZC1leHBvLm9uLWJsYWNrIGZpZ2NhcHRpb24gYSB7XG4gICAgICBjb2xvcjogI2Y3ZjdmNzsgfVxuICAuY2FyZC1leHBvLm9uLWJsYWNrIC52aWQtZXhwbyB7XG4gICAgYmFja2dyb3VuZDogIzBhMGEwYTtcbiAgICBjb2xvcjogI2Y3ZjdmNzsgfVxuICAuY2FyZC1leHBvLm9uLWJsYWNrIGZpZ3VyZSBpbWcge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMjQ3LCAyNDcsIDI0NywgMC45KTsgfVxuICAuY2FyZC1leHBvLm9uLWJsYWNrIC52aWQtZXhwbyA+ICosXG4gIC5jYXJkLWV4cG8ub24tYmxhY2sgLnZpZC1leHBvID4gKiAqIHtcbiAgICBjb2xvcjogI2Y3ZjdmNzsgfVxuICAuY2FyZC1leHBvOm5vdCgub24tYmxhY2spIGZpZ2NhcHRpb24gYSB7XG4gICAgY29sb3I6ICMwYTBhMGE7IH1cbiAgLmNhcmQtZXhwbzpub3QoLm9uLWJsYWNrKSAudmlkLWV4cG8ge1xuICAgIGNvbG9yOiAjMGEwYTBhOyB9XG4gIC5jYXJkLWV4cG86bm90KC5vbi1ibGFjaykgZmlndXJlIGltZyB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgxNTksIDE1OSwgMTU5LCAwLjkpOyB9XG4gIC5jYXJkLWV4cG8gLmluZm8tZXhwb3NpdGlvbiB7XG4gICAgcGFkZGluZzogMC4xMjVyZW07IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuY2FyZC1leHBvIC5pbmZvLWV4cG9zaXRpb24ge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LXdyYXA6IG5vd3JhcDsgfSB9XG4gICAgLmNhcmQtZXhwbyAuaW5mby1leHBvc2l0aW9uIC5hdXRoLWV4cG8ge1xuICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgY29sb3I6ICMwYTBhMGE7XG4gICAgICB3aWR0aDogMTAwJTsgfVxuICAgIC5jYXJkLWV4cG8gLmluZm8tZXhwb3NpdGlvbiAuZGF0ZS1leHBvIHtcbiAgICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgICBsaW5lLWhlaWdodDogMS41cmVtO1xuICAgICAgY29sb3I6ICM5RjlDOUM7XG4gICAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7IH1cbiAgICAgIC5jYXJkLWV4cG8gLmluZm8tZXhwb3NpdGlvbiAuZGF0ZS1leHBvIHNwYW4ge1xuICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwOyB9XG5cbiN0aGVtSGVhZGVyIHtcbiAgbWFyZ2luOiBhdXRvO1xuICB3aWR0aDogMTAwJTtcbiAgZGlzcGxheTogZmxleDtcbiAgaGVpZ2h0OiAyNXZoO1xuICBtaW4taGVpZ2h0OiAxOTBweDtcbiAgbWF4LWhlaWdodDogMzIwcHg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXIgIWltcG9ydGFudDtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICN0aGVtSGVhZGVyIGgxLCAjdGhlbUhlYWRlciAudGl0bGUtMSB7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgZm9udC1zaXplOiAycmVtO1xuICAgIHRleHQtdHJhbnNmb3JtOiBub25lOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgI3RoZW1IZWFkZXIgaDEsICN0aGVtSGVhZGVyIC50aXRsZS0xIHtcbiAgICAgICAgZm9udC1zaXplOiAzcmVtOyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAjdGhlbUhlYWRlciBoMSwgI3RoZW1IZWFkZXIgLnRpdGxlLTEge1xuICAgICAgICBmb250LXNpemU6IDRyZW07IH0gfVxuXG4uY29udGFpbmVyR3JpZGV4cG9zIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luOiAwcHggYXV0bztcbiAgaGVpZ2h0OiAxMDAlO1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDQycHggMWZyO1xuICBncmlkLWdhcDogMHB4OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuY29udGFpbmVyR3JpZGV4cG9zIHtcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogODJweCAxZnI7IH0gfVxuICAuY29udGFpbmVyR3JpZGV4cG9zICN0aGVtSGVhZGVyIHtcbiAgICBoZWlnaHQ6IDIwdmg7XG4gICAgbWluLWhlaWdodDogMTYwcHg7XG4gICAgbWF4LWhlaWdodDogMzIwcHg7IH1cbiAgLmNvbnRhaW5lckdyaWRleHBvcy5leHBvZGV0YWlsIHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDQycHggNDJweCAxZnI7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAuY29udGFpbmVyR3JpZGV4cG9zLmV4cG9kZXRhaWwge1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDgycHggODJweCAxZnI7IH0gfVxuICAgIC5jb250YWluZXJHcmlkZXhwb3MuZXhwb2RldGFpbCAuaGVhZGVyZ3JpZCB7XG4gICAgICBncmlkLWNvbHVtbjogc3BhbiAzOyB9XG4gICAgLmNvbnRhaW5lckdyaWRleHBvcy5leHBvZGV0YWlsIC5tYWluZ3JpZGV4cG9zLFxuICAgIC5jb250YWluZXJHcmlkZXhwb3MuZXhwb2RldGFpbCAuY29udGVudC1ib3gge1xuICAgICAgZ3JpZC1jb2x1bW46IDMvMzsgfVxuICAgICAgLmNvbnRhaW5lckdyaWRleHBvcy5leHBvZGV0YWlsIC5tYWluZ3JpZGV4cG9zIGE6aG92ZXIsXG4gICAgICAuY29udGFpbmVyR3JpZGV4cG9zLmV4cG9kZXRhaWwgLmNvbnRlbnQtYm94IGE6aG92ZXIge1xuICAgICAgICBjb2xvcjogI2RkMzMzMyAhaW1wb3J0YW50OyB9XG4gICAgICAuY29udGFpbmVyR3JpZGV4cG9zLmV4cG9kZXRhaWwgLm1haW5ncmlkZXhwb3MudG9wM3JlbCxcbiAgICAgIC5jb250YWluZXJHcmlkZXhwb3MuZXhwb2RldGFpbCAuY29udGVudC1ib3gudG9wM3JlbCB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgdG9wOiAtM3JlbTsgfVxuICAgIC5jb250YWluZXJHcmlkZXhwb3MuZXhwb2RldGFpbCAudG90YWwge1xuICAgICAgZ3JpZC1jb2x1bW46IHNwYW4gMzsgfVxuICAgIC5jb250YWluZXJHcmlkZXhwb3MuZXhwb2RldGFpbCAuc2lkZWJhci5ibGFjayB7XG4gICAgICBiYWNrZ3JvdW5kOiAjMGEwYTBhOyB9XG4gICAgLmNvbnRhaW5lckdyaWRleHBvcy5leHBvZGV0YWlsIC5yZWNlbnRlci1zaWRlMSB7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDI0cHgpOyB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgIC5jb250YWluZXJHcmlkZXhwb3MuZXhwb2RldGFpbCAucmVjZW50ZXItc2lkZTEge1xuICAgICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSA4MnB4KTsgfSB9XG4gICAgICAuY29udGFpbmVyR3JpZGV4cG9zLmV4cG9kZXRhaWwgLnJlY2VudGVyLXNpZGUxLnNsaWRldGhlbXMge1xuICAgICAgICBtYXJnaW46IGF1dG87IH1cbiAgICAuY29udGFpbmVyR3JpZGV4cG9zLmV4cG9kZXRhaWwgI3RoZW1IZWFkZXIge1xuICAgICAgaGVpZ2h0OiAzNXZoO1xuICAgICAgbWluLWhlaWdodDogMjgwcHg7XG4gICAgICBtYXgtaGVpZ2h0OiAzODBweDsgfVxuICAgICAgLmNvbnRhaW5lckdyaWRleHBvcy5leHBvZGV0YWlsICN0aGVtSGVhZGVyIGgxLCAuY29udGFpbmVyR3JpZGV4cG9zLmV4cG9kZXRhaWwgI3RoZW1IZWFkZXIgLnRpdGxlLTEge1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDsgfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgICAuY29udGFpbmVyR3JpZGV4cG9zLmV4cG9kZXRhaWwgI3RoZW1IZWFkZXIge1xuICAgICAgICAgIGhlaWdodDogMzh2aDtcbiAgICAgICAgICBtaW4taGVpZ2h0OiAzMDBweDsgfSB9XG4gIC5jb250YWluZXJHcmlkZXhwb3MuY2hhcHRkZXRhaWwge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogNDJweCA0MnB4IDFmcjsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5jb250YWluZXJHcmlkZXhwb3MuY2hhcHRkZXRhaWwge1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDgycHggODJweCAxZnIgODJweDsgfSB9XG4gICAgLmNvbnRhaW5lckdyaWRleHBvcy5jaGFwdGRldGFpbCAuaGVhZGVyZ3JpZCB7XG4gICAgICBncmlkLWNvbHVtbjogc3BhbiA0OyB9XG4gICAgLmNvbnRhaW5lckdyaWRleHBvcy5jaGFwdGRldGFpbCAubWFpbmdyaWRleHBvcyxcbiAgICAuY29udGFpbmVyR3JpZGV4cG9zLmNoYXB0ZGV0YWlsIC5jb250ZW50LWJveCB7XG4gICAgICBncmlkLWNvbHVtbjogMy8zO1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgIGdyaWQtcm93OiAxIC8gMTAwOyB9XG4gICAgLmNvbnRhaW5lckdyaWRleHBvcy5jaGFwdGRldGFpbCAudG90YWwge1xuICAgICAgZ3JpZC1jb2x1bW46IHNwYW4gNDsgfVxuICAgIC5jb250YWluZXJHcmlkZXhwb3MuY2hhcHRkZXRhaWwgLnNpZGViYXIuYmxhY2sge1xuICAgICAgYmFja2dyb3VuZDogIzBhMGEwYTsgfVxuICAgIC5jb250YWluZXJHcmlkZXhwb3MuY2hhcHRkZXRhaWwgLnNpZGViYXIucmlnaHRiYXIge1xuICAgICAgZ3JpZC1jb2x1bW46IDQvNDtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgLmNvbnRhaW5lckdyaWRleHBvcy5jaGFwdGRldGFpbCAuc2lkZWJhci5yaWdodGJhciB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7IH0gfVxuICAgIC5jb250YWluZXJHcmlkZXhwb3MuY2hhcHRkZXRhaWwgLnJlY2VudGVyLXNpZGUxIHtcbiAgICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgIC5jb250YWluZXJHcmlkZXhwb3MuY2hhcHRkZXRhaWwgLnJlY2VudGVyLXNpZGUxIHtcbiAgICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gNDFweCk7IH0gfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgICAuY29udGFpbmVyR3JpZGV4cG9zLmNoYXB0ZGV0YWlsIC5yZWNlbnRlci1zaWRlMSB7XG4gICAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDgycHgpOyB9IH1cbiAgICAuY29udGFpbmVyR3JpZGV4cG9zLmNoYXB0ZGV0YWlsICN0aGVtSGVhZGVyIHtcbiAgICAgIGhlaWdodDogMzB2aDtcbiAgICAgIG1heC1oZWlnaHQ6IDMyMHB4OyB9XG4gIC5jb250YWluZXJHcmlkZXhwb3MgLnJlY2VudGVyLXNpZGUxIHtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5jb250YWluZXJHcmlkZXhwb3MgLnJlY2VudGVyLXNpZGUxIHtcbiAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDgycHgpOyB9IH1cbiAgLmNvbnRhaW5lckdyaWRleHBvcyAuc2lkZWJhciB7XG4gICAgZ3JpZC1yb3c6IDEgLyAxMDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2RkMzMzMzsgfVxuICAuY29udGFpbmVyR3JpZGV4cG9zIC5oZWFkZXJncmlkIHtcbiAgICBncmlkLWNvbHVtbjogc3BhbiAyOyB9XG4gIC5jb250YWluZXJHcmlkZXhwb3MgLm1haW5ncmlkZXhwb3Mge1xuICAgIGdyaWQtY29sdW1uOiAyLzI7IH1cbiAgLmNvbnRhaW5lckdyaWRleHBvcyAudG90YWwge1xuICAgIGdyaWQtY29sdW1uOiBzcGFuIDI7IH1cbiAgLmNvbnRhaW5lckdyaWRleHBvcyAuY3JlZGl0cyB7XG4gICAgbWFyZ2luLXRvcDogMy4yNXJlbTtcbiAgICBjbGVhcjogYm90aDtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tYm90dG9tOiAzLjI1cmVtOyB9XG4gICAgLmNvbnRhaW5lckdyaWRleHBvcyAuY3JlZGl0cyAuY3JlZGxpc3Qge1xuICAgICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICAgIG9wYWNpdHk6IDAuNjY7IH1cblxuLmVuZC1ib3guYmxhY2sgYSB7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyB9XG4gIC5lbmQtYm94LmJsYWNrIGE6aG92ZXIge1xuICAgIGNvbG9yOiAjZGQzMzMzICFpbXBvcnRhbnQ7IH1cblxuLm1hcnF1ZWUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbjogMCAxNnB4IDByZW0gMDsgfVxuICAubWFycXVlZSAubGlzdGF1dCB7XG4gICAgZm9udC1zaXplOiAwLjg3NXJlbTsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5tYXJxdWVlIC5saXN0YXV0IHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gICAgICAgIHRyYW5zaXRpb246IDFzO1xuICAgICAgICBkaXNwbGF5OiBmbGV4OyB9XG4gICAgICAgIC5tYXJxdWVlIC5saXN0YXV0IHNwYW4ge1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7IH0gfVxuXG4ucHJlc2V4cG8ge1xuICBtYXJnaW4tdG9wOiA0cmVtO1xuICBwYWRkaW5nLWJvdHRvbTogM3JlbTtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoMjI0LCAyMjQsIDIyNCwgMC41KTtcbiAgbWFyZ2luLWJvdHRvbTogMi40cmVtOyB9XG4gIC5wcmVzZXhwbyBhcnRpY2xlIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAucHJlc2V4cG8gYXJ0aWNsZSB7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7IH0gfVxuICAucHJlc2V4cG8gLmludHJvRmlyc3Qge1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgdGV4dC1hbGlnbjoganVzdGlmeTsgfVxuICAucHJlc2V4cG8gLmNpdGVGb3JFeHBvIHtcbiAgICBtYXJnaW4tdG9wOiAxcmVtOyB9XG4gIC5wcmVzZXhwbyAuY2l0YXRpb24ge1xuICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgIG1hcmdpbi1ib3R0b206IDAuNjI1cmVtOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgICAgLnByZXNleHBvIC5jaXRhdGlvbiB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07IH0gfVxuICAucHJlc2V4cG8gLmNpdGF0aW9uX2F1dGgge1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICBmb250LXdlaWdodDogMzAwO1xuICAgIGNvbG9yOiAjRTBFMEUwOyB9XG4gIC5wcmVzZXhwbyAuZXhwby1waWN0dXJlIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBtYXJnaW4tcmlnaHQ6IDJyZW07IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45Mzc1ZW0pIHtcbiAgICAgIC5wcmVzZXhwbyAuZXhwby1waWN0dXJlIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgICAgICAgLnByZXNleHBvIC5leHBvLXBpY3R1cmUgaW1nIHtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMnJlbTsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLnByZXNleHBvIC5leHBvLXBpY3R1cmUge1xuICAgICAgICB3aWR0aDogMjgwcHg7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5wcmVzZXhwbyAuZXhwby1waWN0dXJlIHtcbiAgICAgICAgd2lkdGg6IDM2MHB4OyB9IH1cbiAgLnByZXNleHBvIGEge1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyB9XG5cbi5leHBvLXBpY3R1cmUge1xuICB3aWR0aDogMzYwcHg7IH1cbiAgLmV4cG8tcGljdHVyZSBmaWd1cmUge1xuICAgIG1hcmdpbjogMDsgfVxuXG4uZXhwby1pbnRybyB7XG4gIG1hcmdpbi1sZWZ0OiAwcmVtO1xuICB3aWR0aDogMTAwJTtcbiAgZm9udC1zaXplOiAxcmVtOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAuZXhwby1pbnRybyB7XG4gICAgICBtYXJnaW4tbGVmdDogMHJlbTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgZm9udC1zaXplOiAxcmVtOyB9XG4gICAgICAuZXhwby1pbnRybyBwIHtcbiAgICAgICAgZm9udC1zaXplOiAxcmVtOyB9IH1cbiAgLmV4cG8taW50cm8gLmludHJvTW9yZSB7XG4gICAgZm9udC1mYW1pbHk6ICdJbnJpYSBTZXJpZic7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICB0ZXh0LWFsaWduOiBqdXN0aWZ5OyB9XG4gICAgLmV4cG8taW50cm8gLmludHJvTW9yZSBhIHtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgICAgLmV4cG8taW50cm8gLmludHJvTW9yZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMXJlbTsgfVxuICAgICAgICAuZXhwby1pbnRybyAuaW50cm9Nb3JlIHAge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMXJlbTsgfSB9XG5cbi5leHBvUGxhbiB7XG4gIG1hcmdpbi10b3A6IDEuNWVtO1xuICBtYXJnaW4tYm90dG9tOiAzLjVyZW07IH1cbiAgLmV4cG9QbGFuIGgyLCAuZXhwb1BsYW4gLnJzdCBoMSwgLnJzdCAuZXhwb1BsYW4gaDEsIC5leHBvUGxhbiAucnN0IC50aXRsZS0xLCAucnN0IC5leHBvUGxhbiAudGl0bGUtMSwgLmV4cG9QbGFuIC50aXRsZS0yIHtcbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICAgIGZvbnQtc2l6ZTogMi4yNXJlbTsgfVxuXG4uY2FwdGxfaDIge1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBmb250LXdlaWdodDogOTAwO1xuICBmb250LXNpemU6IDIuMjVyZW07IH1cblxuI3JlY2FwQ3JlZCB7XG4gIG1hcmdpbi10b3A6IDVyZW07XG4gIG1hcmdpbi1ib3R0b206IDVyZW07IH1cblxuLmxpc3RjaGFwdGVyIHtcbiAgcGFkZGluZy10b3A6IDNyZW07XG4gIHBhZGRpbmctYm90dG9tOiAzcmVtOyB9XG4gIC5saXN0Y2hhcHRlciAuY2hhcHRlckl0ZW0ge1xuICAgIHBhZGRpbmc6IDAuNXJlbTsgfVxuICAgIC5saXN0Y2hhcHRlciAuY2hhcHRlckl0ZW0uYWN0aXZlIHtcbiAgICAgIGJvcmRlcjogMXB4ICNkZDMzMzMgc29saWQ7IH1cbiAgLmxpc3RjaGFwdGVyIC5uYXZzbGlkZXJieTMgYTpob3ZlciAuaWNvbi0yeDpiZWZvcmUge1xuICAgIGNvbG9yOiAjZGQzMzMzICFpbXBvcnRhbnQ7IH1cbiAgLmxpc3RjaGFwdGVyIC5pY29uLTJ4OmJlZm9yZSB7XG4gICAgY29sb3I6ICNmN2Y3ZjcgIWltcG9ydGFudDsgfVxuXG4jcGFyYWdoTWVudSB7XG4gIG1hcmdpbjogMi41cmVtIDA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDsgfVxuICAjcGFyYWdoTWVudSAubWVudWNoYXBJdGVtOmhvdmVyIC50aXRsZXBhciB7XG4gICAgY29sb3I6ICNkZDMzMzMgIWltcG9ydGFudDsgfVxuICAgICNwYXJhZ2hNZW51IC5tZW51Y2hhcEl0ZW06aG92ZXIgLnRpdGxlcGFyICoge1xuICAgICAgY29sb3I6ICNkZDMzMzMgIWltcG9ydGFudDsgfVxuICAjcGFyYWdoTWVudSA+IGRpdiB7XG4gICAgd2lkdGg6IDUwJTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgbWFyZ2luOiAwLjVyZW0gMDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAjcGFyYWdoTWVudSA+IGRpdiB7XG4gICAgICAgIHdpZHRoOiAyNSU7IH0gfVxuICAgICNwYXJhZ2hNZW51ID4gZGl2ID4gLnRpdGxlcGFyIHtcbiAgICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgICBwYWRkaW5nOiAwIDAuNzVyZW07IH1cbiAgICAjcGFyYWdoTWVudSA+IGRpdiA+IC5pbWdwYXIge1xuICAgICAgd2lkdGg6IDUwcHg7XG4gICAgICBoZWlnaHQ6IDQwcHg7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBmbGV4OiAwIDAgNTBweDsgfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgICAjcGFyYWdoTWVudSA+IGRpdiA+IC5pbWdwYXIge1xuICAgICAgICAgIHdpZHRoOiAxMDBweDtcbiAgICAgICAgICBoZWlnaHQ6IDcycHg7XG4gICAgICAgICAgZmxleDogMCAwIDEwMHB4OyB9IH1cbiAgICAgICNwYXJhZ2hNZW51ID4gZGl2ID4gLmltZ3BhciBpbWcge1xuICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBtaW4td2lkdGg6IDEwMCU7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDEwMCU7XG4gICAgICAgIHRvcDogNTAlO1xuICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpOyB9XG5cbiNmb2xkZXIgcCBhIHtcbiAgY29sb3I6ICNkZDMzMzMgIWltcG9ydGFudDsgfVxuICAjZm9sZGVyIHAgYSBzcGFuLFxuICAjZm9sZGVyIHAgYSBiLFxuICAjZm9sZGVyIHAgYSBlbSxcbiAgI2ZvbGRlciBwIGEgaSB7XG4gICAgY29sb3I6ICNkZDMzMzMgIWltcG9ydGFudDsgfVxuXG4uaW50cm9mb2xkLFxuLmRlc2NyZm9sZCB7XG4gIGZvbnQtZmFtaWx5OiAnSW5yaWEgU2VyaWYnLCBzZXJpZjsgfVxuICAuaW50cm9mb2xkICosXG4gIC5kZXNjcmZvbGQgKiB7XG4gICAgbGluZS1oZWlnaHQ6IDEuODc1cmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgLmludHJvZm9sZCBhLFxuICAuZGVzY3Jmb2xkIGEge1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyB9XG5cbi5pbnRyb2ZvbGQge1xuICB0ZXh0LWFsaWduOiBqdXN0aWZ5OyB9XG5cbi5kZXNjcmZvbGQgcCB7XG4gIHRleHQtYWxpZ246IGp1c3RpZnk7IH1cblxuLmZvbGRlciB7XG4gIG1hcmdpbi10b3A6IDJyZW07XG4gIGZsb2F0OiBsZWZ0OyB9XG4gIC5mb2xkZXIgaDMsIC5mb2xkZXIgLmgzLCAuZm9sZGVyIC5yc3QgaDIsIC5yc3QgLmZvbGRlciBoMiwgLmZvbGRlciAucnN0IGgxLCAucnN0IC5mb2xkZXIgaDEsIC5mb2xkZXIgLnJzdCAudGl0bGUtMSwgLnJzdCAuZm9sZGVyIC50aXRsZS0xLCAuZm9sZGVyIC5yc3QgLnRpdGxlLTIsIC5yc3QgLmZvbGRlciAudGl0bGUtMiwgLmZvbGRlciAudGl0bGUtMyB7XG4gICAgZm9udC1zaXplOiAxLjVyZW07XG4gICAgZm9udC1zdHlsZTogaXRhbGljOyB9XG4gIC5mb2xkZXIgYSB7XG4gICAgY29sb3I6ICNkZDMzMzMgIWltcG9ydGFudDsgfVxuICAgIC5mb2xkZXIgYSBzcGFuLFxuICAgIC5mb2xkZXIgYSBiLFxuICAgIC5mb2xkZXIgYSBlbSxcbiAgICAuZm9sZGVyIGEgaSB7XG4gICAgICBjb2xvcjogI2RkMzMzMyAhaW1wb3J0YW50OyB9XG4gIC5mb2xkZXIgLmRlc2NyaW1nZm9sZCBhIHtcbiAgICBjb2xvcjogIzBhMGEwYSAhaW1wb3J0YW50OyB9XG4gICAgLmZvbGRlciAuZGVzY3JpbWdmb2xkIGEgc3BhbixcbiAgICAuZm9sZGVyIC5kZXNjcmltZ2ZvbGQgYSBiLFxuICAgIC5mb2xkZXIgLmRlc2NyaW1nZm9sZCBhIGVtLFxuICAgIC5mb2xkZXIgLmRlc2NyaW1nZm9sZCBhIGkge1xuICAgICAgY29sb3I6ICMwYTBhMGEgIWltcG9ydGFudDsgfVxuICAuZm9sZGVyIC5kZXNjcmltZ2ZvbGQgc3BhbixcbiAgLmZvbGRlciAuZGVzY3JpbWdmb2xkIGIsXG4gIC5mb2xkZXIgLmRlc2NyaW1nZm9sZCBlbSxcbiAgLmZvbGRlciAuZGVzY3JpbWdmb2xkIGkge1xuICAgIGNvbG9yOiAjMGEwYTBhICFpbXBvcnRhbnQ7IH1cblxuLmNpdGF0aW9uRm9sZGVyIC5pcy1jb250ZW50IHtcbiAgd2lkdGg6IDEwMCU7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCg5MGRlZywgd2hpdGUsIHRyYW5zcGFyZW50KTtcbiAgcGFkZGluZzogMnJlbTtcbiAgcGFkZGluZy1sZWZ0OiA0cmVtOyB9XG5cbi5tb3JlYmxvY2sge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZmxvYXQ6IGxlZnQ7XG4gIHdpZHRoOiAxMDAlO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgxNTUsIDE1NSwgMTU1LCAwLjUpOyB9XG4gIC5tb3JlYmxvY2sgLnNob3dmb2xkZXIgPiBzcGFuIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZmxvYXQ6IHJpZ2h0OyB9XG4gICAgLm1vcmVibG9jayAuc2hvd2ZvbGRlciA+IHNwYW4gc3Bhbi5tb3JlIHtcbiAgICAgIGZvbnQtc2l6ZTogMmVtO1xuICAgICAgZm9udC13ZWlnaHQ6IDEwMDtcbiAgICAgIHBhZGRpbmctbGVmdDogMC4zZW07IH1cbiAgLm1vcmVibG9jayAuc2hvd2ZvbGRlciAubW9yZWJ1dCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG4gIC5tb3JlYmxvY2sgLnNob3dmb2xkZXIgLmxlc3NidXQge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgLm1vcmVibG9jayAuc2hvd2ZvbGRlci5vcGVuZWQgLm1vcmVidXQge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgLm1vcmVibG9jayAuc2hvd2ZvbGRlci5vcGVuZWQgLmxlc3NidXQge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuXG4uaXRhbGljIHtcbiAgZm9udC1zdHlsZTogaXRhbGljOyB9XG5cbi5kZXRhaWxmb2xkZXIge1xuICB3aWR0aDogMTAwJTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgbWFyZ2luLXRvcDogMXJlbTtcbiAgZmxvYXQ6IGxlZnQ7IH1cbiAgLmRldGFpbGZvbGRlciAuc21hbGwtdGV4dCAqIHtcbiAgICBmb250LXNpemU6IDAuNjI1cmVtOyB9XG4gICAgLmRldGFpbGZvbGRlciAuc21hbGwtdGV4dCAqOmJlZm9yZSB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG4gIC5kZXRhaWxmb2xkZXIgLnNsaWNrLWFycm93IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiAxcmVtO1xuICAgIHotaW5kZXg6IDEwOyB9XG4gICAgLmRldGFpbGZvbGRlciAuc2xpY2stYXJyb3c6YmVmb3JlIHtcbiAgICAgIGZvbnQtc2l6ZTogMnJlbTsgfVxuICAuZGV0YWlsZm9sZGVyIC5zbGljay1wcmV2IHtcbiAgICBsZWZ0OiAtMXJlbTsgfVxuICAuZGV0YWlsZm9sZGVyIC5zbGljay1uZXh0IHtcbiAgICByaWdodDogLTFyZW07IH1cbiAgLmRldGFpbGZvbGRlciAuc2xpY2stc2xpZGUge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBjb2xvcjogIzQxOWJlMDtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBtYXJnaW46IDFweDsgfVxuICAgIC5kZXRhaWxmb2xkZXIgLnNsaWNrLXNsaWRlIGltZyB7XG4gICAgICB3aWR0aDogMTAwJTsgfVxuXG4uY29udGFpbmVyUGFyYSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH1cbiAgLmNvbnRhaW5lclBhcmEgPiBoMywgLmNvbnRhaW5lclBhcmEgPiAuaDMsIC5yc3QgLmNvbnRhaW5lclBhcmEgPiBoMiwgLnJzdCAuY29udGFpbmVyUGFyYSA+IGgxLCAucnN0IC5jb250YWluZXJQYXJhID4gLnRpdGxlLTEsIC5yc3QgLmNvbnRhaW5lclBhcmEgPiAudGl0bGUtMiwgLmNvbnRhaW5lclBhcmEgPiAudGl0bGUtMyB7XG4gICAgYm9yZGVyLWxlZnQ6IDNweCBzb2xpZCAjZGQzMzMzO1xuICAgIHBhZGRpbmctbGVmdDogMC43NXJlbTsgfVxuXG4uZm9sZGVyLWRldGFpbCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9XG4gIC5mb2xkZXItZGV0YWlsLmZfY2l0YXRpb24ge1xuICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG4gICAgbWFyZ2luLXRvcDogMnJlbTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAuZm9sZGVyLWRldGFpbC5mX2NpdGF0aW9uOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgdG9wOiAwO1xuICAgICAgd2lkdGg6IDJweDtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIGJhY2tncm91bmQ6ICNkZDMzMzM7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5mb2xkZXItZGV0YWlsIHtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7IH0gfVxuICAuZm9sZGVyLWRldGFpbC5hbGlnbnJpZ2h0IHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgLmZvbGRlci1kZXRhaWwuYWxpZ25yaWdodCB7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTsgfSB9XG4gIC5mb2xkZXItZGV0YWlsLmFsaWduZnVsbCB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfVxuICAgIC5mb2xkZXItZGV0YWlsLmFsaWduZnVsbCA+IC5jb2x1bW4sIC5mb2xkZXItZGV0YWlsLmFsaWduZnVsbCA+IC5jb2x1bW5zIHtcbiAgICAgIHdpZHRoOiAxMDAlOyB9XG4gIC5mb2xkZXItZGV0YWlsIC50YWcge1xuICAgIG1hcmdpbi10b3A6IDFyZW07IH1cbiAgLmZvbGRlci1kZXRhaWwuaXMtd2l0aC1pbWFnZSB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cbiAgICAuZm9sZGVyLWRldGFpbC5pcy13aXRoLWltYWdlIC5kZXNjcmZvbGQge1xuICAgICAgZmxvYXQ6IGluaXRpYWw7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgbWFyZ2luOiAwIDAuN3JlbTsgfVxuICAgIC5mb2xkZXItZGV0YWlsLmlzLXdpdGgtaW1hZ2UgLnN0b3JlLWFsYnVtIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIG1hcmdpbjogMS43NXJlbTtcbiAgICAgIG1hcmdpbi10b3A6IDA7IH1cbiAgICAgIC5mb2xkZXItZGV0YWlsLmlzLXdpdGgtaW1hZ2UgLnN0b3JlLWFsYnVtIC5zbGljay1zbGlkZSB7XG4gICAgICAgIGJhY2tncm91bmQ6ICNkZmRmZGY7IH1cbiAgICAgIC5mb2xkZXItZGV0YWlsLmlzLXdpdGgtaW1hZ2UgLnN0b3JlLWFsYnVtIGJ1dHRvbjpob3ZlciB7XG4gICAgICAgIGNvbG9yOiAjZGQzMzMzOyB9XG4gICAgICAuZm9sZGVyLWRldGFpbC5pcy13aXRoLWltYWdlIC5zdG9yZS1hbGJ1bSAuZGVzY3JpbWdmb2xkIHtcbiAgICAgICAgcGFkZGluZzogMC41cmVtIDFyZW07IH1cbiAgICAuZm9sZGVyLWRldGFpbC5pcy13aXRoLWltYWdlLmFsaWducmlnaHQgLnN0b3JlLWFsYnVtIHtcbiAgICAgIGZsb2F0OiByaWdodDsgfVxuXG4uc2xpZGVyLWltZy1mb2xkZXIgLnNsaWNrLXRyYWNrIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24tY29udGVudDogc3RyZXRjaDsgfVxuICAuc2xpZGVyLWltZy1mb2xkZXIgLnNsaWNrLXRyYWNrIC5zbGljay1zbGlkZSB7XG4gICAgYWxpZ24tc2VsZjogc3RyZXRjaDtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1ldmVubHk7IH1cbiAgICAuc2xpZGVyLWltZy1mb2xkZXIgLnNsaWNrLXRyYWNrIC5zbGljay1zbGlkZSAuaW1nLXNsLWNvbnQge1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuXG4uc2xpZGVyLWltZy1mb2xkZXJieS0zIHtcbiAgd2lkdGg6IDEwMCU7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5zbGlkZXItaW1nLWZvbGRlcmJ5LTMge1xuICAgICAgd2lkdGg6IDc2dnc7IH0gfVxuICAuc2xpZGVyLWltZy1mb2xkZXJieS0zIC5pdGVtLWltZy1mb2xkZXIge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNXJlbTsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5zbGlkZXItaW1nLWZvbGRlcmJ5LTMgLml0ZW0taW1nLWZvbGRlciB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDIuNXJlbTsgfSB9XG4gICAgLnNsaWRlci1pbWctZm9sZGVyYnktMyAuaXRlbS1pbWctZm9sZGVyIC5zbWFsbC10ZXh0IHtcbiAgICAgIG1pbi1oZWlnaHQ6IDNyZW07IH1cblxuLnN0b3JlLWFsYnVtIC5pdGVtLWltZy1mb2xkZXIgaDYge1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG5cbnNlY3Rpb24uYmxvY2suYmxhY2sgLmljb24tMng6YmVmb3JlIHtcbiAgY29sb3I6ICNmN2Y3Zjc7XG4gIGZvbnQtc2l6ZTogMS44cmVtOyB9XG5cbi5yZWNlbnRlci1zaWRlLXJlc3VtZSB7XG4gIHBhZGRpbmctdG9wOiAycmVtO1xuICBwYWRkaW5nLWJvdHRvbTogMC4yNXJlbTsgfVxuICAucmVjZW50ZXItc2lkZS1yZXN1bWUgLnNsaWRlci1pbWctZm9sZGVyYnktMyB7XG4gICAgbWFyZ2luLXRvcDogMnJlbTsgfVxuICAucmVjZW50ZXItc2lkZS1yZXN1bWUgLnJvdy5sYXJnZXIge1xuICAgIG1heC13aWR0aDogODByZW07IH1cblxuLm5hdnNsaWRlcmJ5MyB7XG4gIG1hcmdpbi10b3A6IDFyZW07XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XG4gIC5uYXZzbGlkZXJieTMgYSB7XG4gICAgcGFkZGluZzogMXJlbTtcbiAgICBvcGFjaXR5OiAwLjU7IH1cbiAgICAubmF2c2xpZGVyYnkzIGE6aG92ZXIge1xuICAgICAgb3BhY2l0eTogMTsgfVxuXG4ubmF2YmFyLXRoZW1hdGljcy1tb3JlIHtcbiAgcG9zaXRpb246IHN0aWNreTtcbiAgdG9wOiAwOyB9XG4gIC5uYXZiYXItdGhlbWF0aWNzLW1vcmUgdWwge1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICBtYXJnaW46IDA7XG4gICAgbWFyZ2luLXRvcDogMS41cmVtO1xuICAgIGJvcmRlci10b3A6IDFweCByZ2JhKDI0NywgMjQ3LCAyNDcsIDAuNSkgc29saWQ7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCByZ2JhKDI0NywgMjQ3LCAyNDcsIDAuNSkgc29saWQ7XG4gICAgZmxleC13cmFwOiB3cmFwOyB9XG4gICAgLm5hdmJhci10aGVtYXRpY3MtbW9yZSB1bCBsaSB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoMjQ3LCAyNDcsIDI0NywgMC41KTtcbiAgICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkIHJnYmEoMjQ3LCAyNDcsIDI0NywgMC41KTtcbiAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLyAzKTsgfVxuICAgIC5uYXZiYXItdGhlbWF0aWNzLW1vcmUgdWwgYSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBiYWNrZ3JvdW5kOiAjMGEwYTBhO1xuICAgICAgcGFkZGluZzogMXJlbSAycmVtO1xuICAgICAgZm9udC1mYW1pbHk6ICd2YXJ0YSc7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxcmVtO1xuICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgIGNvbG9yOiAjMGEwYTBhOyB9XG4gICAgICAubmF2YmFyLXRoZW1hdGljcy1tb3JlIHVsIGE6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiAjZGQzMzMzOyB9XG4gIC5uYXZiYXItdGhlbWF0aWNzLW1vcmUgdWwubGFyZ2UtOCBsaSB7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAvIDIpOyB9XG4gIC5uYXZiYXItdGhlbWF0aWNzLW1vcmUgdWwubGFyZ2UtNCBsaSB7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSk7IH1cblxuI2NoYXB0ZXJzU2xpZGUgLnNsaWNrLXRyYWNrIHtcbiAgZGlzcGxheTogZmxleDsgfVxuXG4jY2hhcHRlcnNTbGlkZSAuY2FyZC1leHBvIGZpZ2NhcHRpb24ge1xuICBmb250LXNpemU6IDAuNzVyZW07IH1cblxuLm5vcG9pbnQge1xuICBwb2ludGVyLWV2ZW50czogbm9uZTsgfVxuXG4jdGhlbUhlYWRlciAucGVybWFsaW5rcyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAxcmVtO1xuICByaWdodDogMXJlbTsgfVxuICAjdGhlbUhlYWRlciAucGVybWFsaW5rcyBhLmNpdGV1cmwge1xuICAgIGNvbG9yOiAjZjdmN2Y3O1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzBhMGEwYTtcbiAgICBib3JkZXItcmFkaXVzOiA2cHg7IH1cblxuLmltZy1hdWQge1xuICBtYXJnaW4tYm90dG9tOiAxcmVtOyB9XG5cbi50cmFja2xpc3Qge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAxcmVtIDA7XG4gIGNvdW50ZXItcmVzZXQ6IG51bTtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgLnRyYWNrbGlzdCBwIHtcbiAgICBjb3VudGVyLWluY3JlbWVudDogbnVtO1xuICAgIGRpc3BsYXk6IGxpc3QtaXRlbTtcbiAgICBmb250LXNpemU6IDAuNzVyZW07XG4gICAgbWFyZ2luOiAwIDAuNXJlbTtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIGJvcmRlci1yYWRpdXM6IDZweDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgICAudHJhY2tsaXN0IHA6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IGNvdW50ZXIobnVtKSBcIikgXCI7IH1cblxuLypcbiAqIEZseWluZyBzbGljayBwbHVnaW4gc3R5bGVzaGVldHNcbiAqL1xuLmZseWluZ3NsaWNrLW92ZXJsYXkge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgaGVpZ2h0OiAxMDB2aDtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgxMCwgMTAsIDEwLCAwLjkpO1xuICB6LWluZGV4OiAzMDAwO1xuICBiYWNrZHJvcC1maWx0ZXI6IGJsdXIoNXB4KTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cbiAgLmZseWluZ3NsaWNrLW92ZXJsYXkgLmZseWluZ3NsaWNrLWNsb3NlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAxcmVtO1xuICAgIHJpZ2h0OiAxcmVtO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAxLjVyZW07XG4gICAgYm9yZGVyOiAwO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB6LWluZGV4OiAzMDA7IH1cbiAgICAuZmx5aW5nc2xpY2stb3ZlcmxheSAuZmx5aW5nc2xpY2stY2xvc2U6OmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiXFxlOTFkXCI7XG4gICAgICBmb250LWZhbWlseTogJ2ljb21vb24nO1xuICAgICAgZm9udC1zaXplOiAyLjVyZW07XG4gICAgICBjb2xvcjogI2Y3ZjdmNztcbiAgICAgIHRyYW5zaXRpb246IDAuMnM7IH1cbiAgICAuZmx5aW5nc2xpY2stb3ZlcmxheSAuZmx5aW5nc2xpY2stY2xvc2U6aG92ZXI6OmFmdGVyIHtcbiAgICAgIGZvbnQtc2l6ZTogM3JlbTsgfVxuXG4uZmx5aW5nc2xpY2stYWxidW0ge1xuICBmbGV4OiAxIDAgMTAwJTtcbiAgbWF4LXdpZHRoOiAxMDAlOyB9XG4gIC5mbHlpbmdzbGljay1hbGJ1bS5zbGljay1zbGlkZXIuc2xpY2staW5pdGlhbGl6ZWQgLnNsaWNrLXByZXYsXG4gIC5mbHlpbmdzbGljay1hbGJ1bS5zbGljay1zbGlkZXIuc2xpY2staW5pdGlhbGl6ZWQgLnNsaWNrLW5leHQge1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBtYXJnaW46IDA7XG4gICAgdG9wOiBjYWxjKDUwJSAtIDJyZW0pO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB6LWluZGV4OiAyMDsgfVxuICAgIC5mbHlpbmdzbGljay1hbGJ1bS5zbGljay1zbGlkZXIuc2xpY2staW5pdGlhbGl6ZWQgLnNsaWNrLXByZXY6YmVmb3JlLFxuICAgIC5mbHlpbmdzbGljay1hbGJ1bS5zbGljay1zbGlkZXIuc2xpY2staW5pdGlhbGl6ZWQgLnNsaWNrLW5leHQ6YmVmb3JlIHtcbiAgICAgIGZvbnQtc2l6ZTogMS44cmVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICBjb2xvcjogI0ZGRjtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgICB0ZXh0LXNoYWRvdzogMHB4IDBweCAxNXB4ICNmZmZmZmY5OTsgfVxuICAuZmx5aW5nc2xpY2stYWxidW0uc2xpY2stc2xpZGVyLnNsaWNrLWluaXRpYWxpemVkIC5zbGljay1wcmV2IHtcbiAgICBsZWZ0OiAycmVtOyB9XG4gICAgLmZseWluZ3NsaWNrLWFsYnVtLnNsaWNrLXNsaWRlci5zbGljay1pbml0aWFsaXplZCAuc2xpY2stcHJldjpiZWZvcmUge1xuICAgICAgY29udGVudDogXCJcXGU5MWNcIjsgfVxuICAuZmx5aW5nc2xpY2stYWxidW0uc2xpY2stc2xpZGVyLnNsaWNrLWluaXRpYWxpemVkIC5zbGljay1uZXh0IHtcbiAgICByaWdodDogMnJlbTsgfVxuICAgIC5mbHlpbmdzbGljay1hbGJ1bS5zbGljay1zbGlkZXIuc2xpY2staW5pdGlhbGl6ZWQgLnNsaWNrLW5leHQ6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IFwiXFxlOTFiXCI7IH1cbiAgLmZseWluZ3NsaWNrLWFsYnVtLnNsaWNrLXNsaWRlci5zbGljay1pbml0aWFsaXplZCAuc2xpY2stbGlzdCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XG4gICAgLmZseWluZ3NsaWNrLWFsYnVtLnNsaWNrLXNsaWRlci5zbGljay1pbml0aWFsaXplZCAuc2xpY2stbGlzdCAuc2xpY2stc2xpZGUge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cbiAgICAgIC5mbHlpbmdzbGljay1hbGJ1bS5zbGljay1zbGlkZXIuc2xpY2staW5pdGlhbGl6ZWQgLnNsaWNrLWxpc3QgLnNsaWNrLXNsaWRlIHNwYW4ge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgIHdpZHRoOiA5OCU7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgb3ZlcmZsb3cteTogc2Nyb2xsO1xuICAgICAgICBtYXgtaGVpZ2h0OiAxMDB2aDsgfVxuICAgICAgICAuZmx5aW5nc2xpY2stYWxidW0uc2xpY2stc2xpZGVyLnNsaWNrLWluaXRpYWxpemVkIC5zbGljay1saXN0IC5zbGljay1zbGlkZSBzcGFuOjpiZWZvcmUge1xuICAgICAgICAgIGNvbnRlbnQ6IGF0dHIoZGF0YS1uYW1lKTtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgcGFkZGluZzogMC43cmVtIDFyZW07XG4gICAgICAgICAgZm9udC1zaXplOiAwLjY1cmVtO1xuICAgICAgICAgIGNvbG9yOiAjZjdmN2Y3O1xuICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDsgfVxuICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgICAgIC5mbHlpbmdzbGljay1hbGJ1bS5zbGljay1zbGlkZXIuc2xpY2staW5pdGlhbGl6ZWQgLnNsaWNrLWxpc3QgLnNsaWNrLXNsaWRlIHNwYW46OmJlZm9yZSB7XG4gICAgICAgICAgICAgIHBhZGRpbmc6IDAuOHJlbSAxLjJyZW07IH0gfVxuICAgICAgICAuZmx5aW5nc2xpY2stYWxidW0uc2xpY2stc2xpZGVyLnNsaWNrLWluaXRpYWxpemVkIC5zbGljay1saXN0IC5zbGljay1zbGlkZSBzcGFuIGltZyB7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgIHRyYW5zaXRpb246IGFsbCA1MDBtcyBlYXNlOyB9XG4gICAgICAuZmx5aW5nc2xpY2stYWxidW0uc2xpY2stc2xpZGVyLnNsaWNrLWluaXRpYWxpemVkIC5zbGljay1saXN0IC5zbGljay1zbGlkZTpub3QoLnNsaWNrLWFjdGl2ZSkgaW1nIHtcbiAgICAgICAgaGVpZ2h0OiBjYWxjKDUwdncvMik7XG4gICAgICAgIG9wYWNpdHk6IDAuNTsgfVxuICAgICAgLmZseWluZ3NsaWNrLWFsYnVtLnNsaWNrLXNsaWRlci5zbGljay1pbml0aWFsaXplZCAuc2xpY2stbGlzdCAuc2xpY2stc2xpZGU6bm90KC5zbGljay1hY3RpdmUpIHNwYW46OmJlZm9yZSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgLmZseWluZ3NsaWNrLWFsYnVtIC5zbGljay1kb3RzIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgYm90dG9tOiAxcmVtOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmZseWluZ3NsaWNrLWFsYnVtIC5zbGljay1kb3RzIHtcbiAgICAgICAgYm90dG9tOiA1dmg7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5mbHlpbmdzbGljay1hbGJ1bSAuc2xpY2stZG90cyB7XG4gICAgICAgIGJvdHRvbTogMTB2aDtcbiAgICAgICAgcGFkZGluZzogMCAxNSU7IH0gfVxuICAgIC5mbHlpbmdzbGljay1hbGJ1bSAuc2xpY2stZG90cyBsaSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBoZWlnaHQ6IDE1cHg7XG4gICAgICB3aWR0aDogMTVweDtcbiAgICAgIG1hcmdpbjogMCAwIDNweDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgLmZseWluZ3NsaWNrLWFsYnVtIC5zbGljay1kb3RzIGxpIHtcbiAgICAgICAgICBtYXJnaW46IDAgMCA1cHg7IH0gfVxuICAgICAgLmZseWluZ3NsaWNrLWFsYnVtIC5zbGljay1kb3RzIGxpICsgbGkge1xuICAgICAgICBtYXJnaW4tbGVmdDogM3B4OyB9XG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgICAuZmx5aW5nc2xpY2stYWxidW0gLnNsaWNrLWRvdHMgbGkgKyBsaSB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogNXB4OyB9IH1cbiAgICAgIC5mbHlpbmdzbGljay1hbGJ1bSAuc2xpY2stZG90cyBsaSBidXR0b24ge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE1cHg7XG4gICAgICAgIGZvbnQtc2l6ZTogMC41cmVtO1xuICAgICAgICBjb2xvcjogIzBhMGEwYTtcbiAgICAgICAgcGFkZGluZzogMHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgIzBhMGEwYTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNXJlbTtcbiAgICAgICAgYmFja2dyb3VuZDogIzBhMGEwYTsgfVxuICAgICAgICAuZmx5aW5nc2xpY2stYWxidW0gLnNsaWNrLWRvdHMgbGkgYnV0dG9uOmJlZm9yZSB7XG4gICAgICAgICAgcG9zaXRpb246IHN0YXRpYztcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgIGZvbnQtc2l6ZTogMDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMDsgfVxuICAgICAgLmZseWluZ3NsaWNrLWFsYnVtIC5zbGljay1kb3RzIGxpLnNsaWNrLWFjdGl2ZSBidXR0b24ge1xuICAgICAgICBjb2xvcjogI2Y3ZjdmNztcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgIzBhMGEwYTtcbiAgICAgICAgYmFja2dyb3VuZDogI2Y3ZjdmNzsgfVxuXG5odG1sLmlzTW9iaWxlIHtcbiAgLyogU21hbGwgc2NyZWVuLCByZXRpbmEsIHN0dWZmIHRvIG92ZXJyaWRlIGFib3ZlIG1lZGlhIHF1ZXJ5ICovIH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAyKSBhbmQgKG1heC13aWR0aDogMTUzNnB4KSwgb25seSBzY3JlZW4gYW5kIChtaW4tLW1vei1kZXZpY2UtcGl4ZWwtcmF0aW86IDIpIGFuZCAobWF4LXdpZHRoOiAxNTM2cHgpLCBvbmx5IHNjcmVlbiBhbmQgKC1vLW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDIgLyAxKSBhbmQgKG1heC13aWR0aDogMTUzNnB4KSwgb25seSBzY3JlZW4gYW5kIChtaW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAyKSBhbmQgKG1heC13aWR0aDogMTUzNnB4KSwgb25seSBzY3JlZW4gYW5kIChtaW4tcmVzb2x1dGlvbjogMTkyZHBpKSBhbmQgKG1heC13aWR0aDogMTUzNnB4KSwgb25seSBzY3JlZW4gYW5kIChtaW4tcmVzb2x1dGlvbjogMmRwcHgpIGFuZCAobWF4LXdpZHRoOiAxNTM2cHgpIHtcbiAgICBodG1sLmlzTW9iaWxlIHtcbiAgICAgIGZvbnQtc2l6ZTogMTYwJTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kICgtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDIpLCAobWluLXJlc29sdXRpb246IDE5MmRwaSkge1xuICAgIGh0bWwuaXNNb2JpbGUgLnNxdWFyZSB7XG4gICAgICBoZWlnaHQ6IDYwcHg7XG4gICAgICB3aWR0aDogNjBweDsgfVxuICAgIGh0bWwuaXNNb2JpbGUgLmZvb3Rlci1saW5rcyB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB3aWR0aDogMTAwJTsgfSB9XG5cbi8qXG4gKiBUeXBvZ3JhcGh5IGFuZCBhbGlrZVxuICovXG5iIHtcbiAgZm9udC13ZWlnaHQ6IDYwMDsgfVxuXG5zdHJvbmcge1xuICBmb250LXdlaWdodDogNzAwOyB9XG5cbi50ZXh0LXVwcGVyIHtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZSAhaW1wb3J0YW50OyB9XG5cbi50ZXh0LWltcG9ydGFudCB7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lICFpbXBvcnRhbnQ7IH1cblxuLnRleHQtdGhpbiB7XG4gIGZvbnQtd2VpZ2h0OiAzMDAgIWltcG9ydGFudDsgfVxuXG4udGV4dC1ib2xkIHtcbiAgZm9udC13ZWlnaHQ6IDQwMCAhaW1wb3J0YW50OyB9XG5cbi50ZXh0LXN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiA3MDAgIWltcG9ydGFudDsgfVxuXG4udGV4dC1zdHJvbmdlc3Qge1xuICBmb250LXdlaWdodDogOTAwICFpbXBvcnRhbnQ7IH1cblxuLnRleHQtcmVkIHtcbiAgY29sb3I6ICNkZDMzMzMgIWltcG9ydGFudDsgfVxuXG4udGV4dC1ibGFjayB7XG4gIGNvbG9yOiAjMGEwYTBhICFpbXBvcnRhbnQ7IH1cblxuLnRleHQtd2hpdGUge1xuICBjb2xvcjogI2Y3ZjdmNyAhaW1wb3J0YW50OyB9XG5cbnNtYWxsLnNtYWxsIHtcbiAgZm9udC1zaXplOiA0MCU7IH1cblxuc21hbGwubWVkaXVtIHtcbiAgZm9udC1zaXplOiA2MCU7IH1cblxuc21hbGwuYmlnIHtcbiAgZm9udC1zaXplOiA4MCU7IH1cblxuaDEsIC50aXRsZS0xIHtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgbGluZS1oZWlnaHQ6IDAuODsgfVxuXG5oMS50ZXh0LXRoaW4sIC50ZXh0LXRoaW4udGl0bGUtMSwgaDIudGV4dC10aGluLCAucnN0IGgxLnRleHQtdGhpbiwgLnJzdCAudGV4dC10aGluLnRpdGxlLTEsIC50ZXh0LXRoaW4udGl0bGUtMiwgaDMudGV4dC10aGluLCAudGV4dC10aGluLmgzLCAucnN0IGgyLnRleHQtdGhpbiwgLnJzdCBoMS50ZXh0LXRoaW4sIC5yc3QgLnRleHQtdGhpbi50aXRsZS0xLCAucnN0IC50ZXh0LXRoaW4udGl0bGUtMiwgLnRleHQtdGhpbi50aXRsZS0zLCBoNC50ZXh0LXRoaW4sIC5yc3QgaDMudGV4dC10aGluLCAucnN0IC50ZXh0LXRoaW4uaDMsIC5yc3QgaDIudGV4dC10aGluLCAucnN0IGgxLnRleHQtdGhpbiwgLnJzdCAudGV4dC10aGluLnRpdGxlLTEsIC5yc3QgLnRleHQtdGhpbi50aXRsZS0yLCAucnN0IC50ZXh0LXRoaW4udGl0bGUtMywgLnRleHQtdGhpbi50aXRsZS00LCBoNS50ZXh0LXRoaW4sIC5yc3QgaDQudGV4dC10aGluLCAucnN0IGgzLnRleHQtdGhpbiwgLnJzdCAudGV4dC10aGluLmgzLCAucnN0IGgyLnRleHQtdGhpbiwgLnJzdCBoMS50ZXh0LXRoaW4sIC5yc3QgLnRleHQtdGhpbi50aXRsZS0xLCAucnN0IC50ZXh0LXRoaW4udGl0bGUtMiwgLnJzdCAudGV4dC10aGluLnRpdGxlLTMsIC5yc3QgLnRleHQtdGhpbi50aXRsZS00LCAudGV4dC10aGluLnRpdGxlLTUsIGg2LnRleHQtdGhpbiB7XG4gIGZvbnQtd2VpZ2h0OiAxMDAgIWltcG9ydGFudDsgfVxuXG5oMS50ZXh0LW5vcm1hbCwgLnRleHQtbm9ybWFsLnRpdGxlLTEsIGgyLnRleHQtbm9ybWFsLCAucnN0IGgxLnRleHQtbm9ybWFsLCAucnN0IC50ZXh0LW5vcm1hbC50aXRsZS0xLCAudGV4dC1ub3JtYWwudGl0bGUtMiwgaDMudGV4dC1ub3JtYWwsIC50ZXh0LW5vcm1hbC5oMywgLnJzdCBoMi50ZXh0LW5vcm1hbCwgLnJzdCBoMS50ZXh0LW5vcm1hbCwgLnJzdCAudGV4dC1ub3JtYWwudGl0bGUtMSwgLnJzdCAudGV4dC1ub3JtYWwudGl0bGUtMiwgLnRleHQtbm9ybWFsLnRpdGxlLTMsIGg0LnRleHQtbm9ybWFsLCAucnN0IGgzLnRleHQtbm9ybWFsLCAucnN0IC50ZXh0LW5vcm1hbC5oMywgLnJzdCBoMi50ZXh0LW5vcm1hbCwgLnJzdCBoMS50ZXh0LW5vcm1hbCwgLnJzdCAudGV4dC1ub3JtYWwudGl0bGUtMSwgLnJzdCAudGV4dC1ub3JtYWwudGl0bGUtMiwgLnJzdCAudGV4dC1ub3JtYWwudGl0bGUtMywgLnRleHQtbm9ybWFsLnRpdGxlLTQsIGg1LnRleHQtbm9ybWFsLCAucnN0IGg0LnRleHQtbm9ybWFsLCAucnN0IGgzLnRleHQtbm9ybWFsLCAucnN0IC50ZXh0LW5vcm1hbC5oMywgLnJzdCBoMi50ZXh0LW5vcm1hbCwgLnJzdCBoMS50ZXh0LW5vcm1hbCwgLnJzdCAudGV4dC1ub3JtYWwudGl0bGUtMSwgLnJzdCAudGV4dC1ub3JtYWwudGl0bGUtMiwgLnJzdCAudGV4dC1ub3JtYWwudGl0bGUtMywgLnJzdCAudGV4dC1ub3JtYWwudGl0bGUtNCwgLnRleHQtbm9ybWFsLnRpdGxlLTUsIGg2LnRleHQtbm9ybWFsIHtcbiAgZm9udC13ZWlnaHQ6IDQwMCAhaW1wb3J0YW50OyB9XG5cbmgxLnRleHQtc3Ryb25nLCAudGV4dC1zdHJvbmcudGl0bGUtMSwgaDIudGV4dC1zdHJvbmcsIC5yc3QgaDEudGV4dC1zdHJvbmcsIC5yc3QgLnRleHQtc3Ryb25nLnRpdGxlLTEsIC50ZXh0LXN0cm9uZy50aXRsZS0yLCBoMy50ZXh0LXN0cm9uZywgLnRleHQtc3Ryb25nLmgzLCAucnN0IGgyLnRleHQtc3Ryb25nLCAucnN0IGgxLnRleHQtc3Ryb25nLCAucnN0IC50ZXh0LXN0cm9uZy50aXRsZS0xLCAucnN0IC50ZXh0LXN0cm9uZy50aXRsZS0yLCAudGV4dC1zdHJvbmcudGl0bGUtMywgaDQudGV4dC1zdHJvbmcsIC5yc3QgaDMudGV4dC1zdHJvbmcsIC5yc3QgLnRleHQtc3Ryb25nLmgzLCAucnN0IGgyLnRleHQtc3Ryb25nLCAucnN0IGgxLnRleHQtc3Ryb25nLCAucnN0IC50ZXh0LXN0cm9uZy50aXRsZS0xLCAucnN0IC50ZXh0LXN0cm9uZy50aXRsZS0yLCAucnN0IC50ZXh0LXN0cm9uZy50aXRsZS0zLCAudGV4dC1zdHJvbmcudGl0bGUtNCwgaDUudGV4dC1zdHJvbmcsIC5yc3QgaDQudGV4dC1zdHJvbmcsIC5yc3QgaDMudGV4dC1zdHJvbmcsIC5yc3QgLnRleHQtc3Ryb25nLmgzLCAucnN0IGgyLnRleHQtc3Ryb25nLCAucnN0IGgxLnRleHQtc3Ryb25nLCAucnN0IC50ZXh0LXN0cm9uZy50aXRsZS0xLCAucnN0IC50ZXh0LXN0cm9uZy50aXRsZS0yLCAucnN0IC50ZXh0LXN0cm9uZy50aXRsZS0zLCAucnN0IC50ZXh0LXN0cm9uZy50aXRsZS00LCAudGV4dC1zdHJvbmcudGl0bGUtNSwgaDYudGV4dC1zdHJvbmcge1xuICBmb250LXdlaWdodDogNjAwICFpbXBvcnRhbnQ7IH1cblxuLmgzIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmctYm90dG9tOiAycmVtO1xuICBwYWRkaW5nLXRvcDogMnJlbTsgfVxuXG5oNiB7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7IH1cblxuLmJpZzpub3Qoc21hbGwpIHtcbiAgZm9udC1zaXplOiAxLjRyZW07XG4gIGZvbnQtd2VpZ2h0OiA2MDA7IH1cblxuLypibG9ja3F1b3RlIHtcbiAgICBib3JkZXItbGVmdDogMDtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBzdmcge1xuICAgICAgICAjYmxhY2sge1xuICAgICAgICAgICAgZmlsbDogI0ZGRkZGRjtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNGRkY7XG4gICAgICAgIH1cbiAgICB9XG59Ki9cbmhyIHtcbiAgYm9yZGVyLXdpZHRoOiAwcHg7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIGJvcmRlci10b3A6IDA7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKDEwLCAxMCwgMTAsIDAuNSk7IH1cblxuZm9vdGVyIGhyIHtcbiAgYm9yZGVyLWNvbG9yOiAjRkZGOyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICBmb290ZXIgLmJ0bi1ncm91cCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9IH1cblxuLmhsaW5lIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogMnB4O1xuICBib3JkZXI6IDA7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBwYWRkaW5nOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDEwLCAxMCwgMTAsIDAuMik7XG4gIHdpZHRoOiAzMCU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTsgfVxuXG4uYmFja2dyb3VuZC1ibGFjayB7XG4gIGJhY2tncm91bmQtY29sb3I6IGJsYWNrOyB9XG5cbi5iYWNrZ3JvdW5kLXdoaXRlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y3ZjdmNzsgfVxuXG4ucm91bmRlZCB7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTsgfVxuXG4uc3F1YXJlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBoZWlnaHQ6IDMycHg7XG4gIHdpZHRoOiAzMnB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLnNxdWFyZSAuaWNvbiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTAlO1xuICAgIGxlZnQ6IDUwJTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpOyB9XG5cbi5tZW51LnNvY2lhbCBsaSB7XG4gIHBhZGRpbmctcmlnaHQ6IDAuNXJlbTsgfVxuICAubWVudS5zb2NpYWwgbGkgYSB7XG4gICAgY29sb3I6ICNmN2Y3Zjc7IH1cblxuLnVuZGVybGluZTphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogNTAlO1xuICBoZWlnaHQ6IDAuMTg3NXJlbTtcbiAgbWFyZ2luOiAxcmVtIDA7XG4gIGJvcmRlci1ib3R0b206IDAuMTg3NXJlbSBzb2xpZCAjMGEwYTBhOyB9XG5cbi51bmRlcmxpbmUudGV4dC1jZW50ZXI6YWZ0ZXIge1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XG5cbi51bmRlcmxpbmUudGhpbjphZnRlciB7XG4gIGhlaWdodDogMC4wNjI1cmVtO1xuICBib3JkZXItYm90dG9tOiAwLjA2MjVyZW0gc29saWQgIzBhMGEwYTsgfVxuXG4udW5kZXJsaW5lLmJvbGQ6YWZ0ZXIge1xuICBoZWlnaHQ6IDAuMzEyNXJlbTtcbiAgYm9yZGVyLWJvdHRvbTogMC4zMTI1cmVtIHNvbGlkICMwYTBhMGE7IH1cblxuLnVuZGVybGluZS50aW55OmFmdGVyIHtcbiAgd2lkdGg6IDUlOyB9XG5cbi51bmRlcmxpbmUuc2hvcnQ6YWZ0ZXIge1xuICB3aWR0aDogMTUlOyB9XG5cbi51bmRlcmxpbmUubm9ybWFsOmFmdGVyIHtcbiAgd2lkdGg6IDQwJTsgfVxuXG4udW5kZXJsaW5lLmxhcmdlOmFmdGVyIHtcbiAgd2lkdGg6IDcwJTsgfVxuXG4udW5kZXJsaW5lLmZ1bGw6YWZ0ZXIge1xuICB3aWR0aDogMTAwJTsgfVxuXG4udW5kZXJsaW5lLmZhcjphZnRlciB7XG4gIG1hcmdpbjogMnJlbSAwOyB9XG5cbi51bmRlcmxpbmUuZmFyLnRleHQtY2VudGVyOmFmdGVyIHtcbiAgbWFyZ2luOiAycmVtIGF1dG87IH1cblxuLnVuZGVybGluZS5uZWFyOmFmdGVyIHtcbiAgbWFyZ2luOiAwLjVyZW0gMDsgfVxuXG4udW5kZXJsaW5lLm5lYXIudGV4dC1jZW50ZXI6YWZ0ZXIge1xuICBtYXJnaW46IDAuNXJlbSBhdXRvOyB9XG5cbi51bmRlcmxpbmUuc3RpY2tlZDphZnRlciB7XG4gIG1hcmdpbjogMCAwOyB9XG5cbi51bmRlcmxpbmUuc3RpY2tlZC50ZXh0LWNlbnRlcjphZnRlciB7XG4gIG1hcmdpbjogMCBhdXRvOyB9XG5cbi8qXG4gKiBWYXJpb3VzIG1pbm9yIHJ1bGVzXG4gKi9cbltkYXRhLWxpbmtdOmhvdmVyIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBjb2xvcjogI2RkMzMzMzsgfVxuXG4udG90YWwge1xuICB3aWR0aDogMTAwJTsgfVxuXG4uZ3V0dGVyLCAqLmd1dHRlciB7XG4gIG1hcmdpbjogMXJlbTsgfVxuXG4uZnVsbC5ndXR0ZXIge1xuICB3aWR0aDogLW1vei1jYWxjKDEwMCUgLSAycmVtKTtcbiAgd2lkdGg6IC13ZWJraXQtY2FsYygxMDAlIC0gMnJlbSk7XG4gIHdpZHRoOiBjYWxjKDEwMCUgLSAycmVtKTsgfVxuXG5AbWVkaWEgcHJpbnQge1xuICBmb290ZXIsIC5oZWFkZXIsXG4gICNjb250cm9sc19saWtlLCAubWVudS5zb2NpYWwsXG4gIGFbdGl0bGU9XCJDb21wYXRpYmxlIFpvdGVyb1wiXSxcbiAgLmNtcy10b29sYmFyLCAuY21zLXRvb2xiYXItdHJpZ2dlciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47IH0gfVxuIiwiLyoqXG4gKiBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4gKiBWZXJzaW9uIDYuMi4xXG4gKiBmb3VuZGF0aW9uLnp1cmIuY29tXG4gKiBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcbiAqL1xuXG4vLyBTYXNzIHV0aWxpdGllc1xuQGltcG9ydCAndXRpbC91dGlsJztcblxuLy8gR2xvYmFsIHZhcmlhYmxlcyBhbmQgc3R5bGVzXG5AaW1wb3J0ICdnbG9iYWwnO1xuXG4vLyBDb21wb25lbnRzXG5AaW1wb3J0ICdncmlkL2dyaWQnO1xuQGltcG9ydCAndHlwb2dyYXBoeS90eXBvZ3JhcGh5JztcbkBpbXBvcnQgJ2Zvcm1zL2Zvcm1zJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvdmlzaWJpbGl0eSc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2Zsb2F0JztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvYnV0dG9uJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvYnV0dG9uLWdyb3VwJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvYWNjb3JkaW9uLW1lbnUnO1xuQGltcG9ydCAnY29tcG9uZW50cy9hY2NvcmRpb24nO1xuQGltcG9ydCAnY29tcG9uZW50cy9iYWRnZSc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2JyZWFkY3J1bWJzJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvY2FsbG91dCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2Nsb3NlLWJ1dHRvbic7XG5AaW1wb3J0ICdjb21wb25lbnRzL2RyaWxsZG93bic7XG5AaW1wb3J0ICdjb21wb25lbnRzL2Ryb3Bkb3duLW1lbnUnO1xuQGltcG9ydCAnY29tcG9uZW50cy9kcm9wZG93bic7XG5AaW1wb3J0ICdjb21wb25lbnRzL2ZsZXgnO1xuQGltcG9ydCAnY29tcG9uZW50cy9mbGV4LXZpZGVvJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvbGFiZWwnO1xuQGltcG9ydCAnY29tcG9uZW50cy9tZWRpYS1vYmplY3QnO1xuQGltcG9ydCAnY29tcG9uZW50cy9tZW51JztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvbWVudS1pY29uJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvb2ZmLWNhbnZhcyc7XG5AaW1wb3J0ICdjb21wb25lbnRzL29yYml0JztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvcGFnaW5hdGlvbic7XG5AaW1wb3J0ICdjb21wb25lbnRzL3Byb2dyZXNzLWJhcic7XG5AaW1wb3J0ICdjb21wb25lbnRzL3JldmVhbCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3NsaWRlcic7XG5AaW1wb3J0ICdjb21wb25lbnRzL3N0aWNreSc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3N3aXRjaCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3RhYmxlJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvdGFicyc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3RpdGxlLWJhcic7XG5AaW1wb3J0ICdjb21wb25lbnRzL3RvcC1iYXInO1xuQGltcG9ydCAnY29tcG9uZW50cy90aHVtYm5haWwnO1xuQGltcG9ydCAnY29tcG9uZW50cy90b29sdGlwJztcblxuQG1peGluIGZvdW5kYXRpb24tZXZlcnl0aGluZygkZmxleDogZmFsc2UpIHtcbiAgQGlmICRmbGV4IHtcbiAgICAkZ2xvYmFsLWZsZXhib3g6IHRydWUgIWdsb2JhbDtcbiAgfVxuXG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tZ2xvYmFsLXN0eWxlcztcbiAgQGlmIG5vdCAkZmxleCB7XG4gICAgQGluY2x1ZGUgZm91bmRhdGlvbi1ncmlkO1xuICB9XG4gIEBlbHNlIHtcbiAgICBAaW5jbHVkZSBmb3VuZGF0aW9uLWZsZXgtZ3JpZDtcbiAgfVxuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXR5cG9ncmFwaHk7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tZm9ybXM7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tYnV0dG9uO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWFjY29yZGlvbjtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1hY2NvcmRpb24tbWVudTtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1iYWRnZTtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1icmVhZGNydW1icztcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1idXR0b24tZ3JvdXA7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tY2FsbG91dDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1jbG9zZS1idXR0b247XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tbWVudTtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1tZW51LWljb247XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tZHJpbGxkb3duLW1lbnU7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tZHJvcGRvd247XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tZHJvcGRvd24tbWVudTtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1mbGV4LXZpZGVvO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWxhYmVsO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLW1lZGlhLW9iamVjdDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1vZmYtY2FudmFzO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLW9yYml0O1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXBhZ2luYXRpb247XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tcHJvZ3Jlc3MtYmFyO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXNsaWRlcjtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1zdGlja3k7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tcmV2ZWFsO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXN3aXRjaDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi10YWJsZTtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi10YWJzO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXRodW1ibmFpbDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi10aXRsZS1iYXI7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tdG9vbHRpcDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi10b3AtYmFyO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXZpc2liaWxpdHktY2xhc3NlcztcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1mbG9hdC1jbGFzc2VzO1xuXG4gIEBpZiAkZmxleCB7XG4gICAgQGluY2x1ZGUgZm91bmRhdGlvbi1mbGV4LWNsYXNzZXM7XG4gIH1cbn1cbiIsIkBpbXBvcnQgdXJsKGh0dHA6Ly93ZWxvdmVpY29uZm9udHMuY29tL2FwaS8/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+IC5kcm9wZG93bi1tZW51IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuXG4gIC5kcm9wZG93bi1iYWNrZHJvcCB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICB6LWluZGV4OiA5OTA7XG4gIH1cblxufVxuXG51bC5wYWdpbmF0aW9uIGxpLmRpc2FibGVkLm5hdmlnYXRpb24ge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG5hcnRpY2xlLnRhYmxlYXUtc3RhdGlzdGljIHtcbiAgaDE6Zmlyc3QtY2hpbGQge1xuICAgIG1hcmdpbi10b3A6IDVyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgICBmb250LXNpemU6IDNyZW07XG4gIH1cbn1cblxuLnRvb2x0aXAge1xuXG59XG4iLCIuaGVhZGVyQ29udGFpbmVyIHtcbiAgYmFja2dyb3VuZDogJGJsYWNrO1xuICAjaGVhZGVyIHtcbiAgICBtYXJnaW46YXV0bztcbiAgICBtYXgtd2lkdGg6JGxhcmdlci1yb3c7XG4gIH1cblxufSIsIiN0aW1lU2Nyb2xsIHtcbiAgd2lkdGg6IDQycHg7XG4gIEBtZWRpYSAjeyRsYXJnZS11cH0ge1xuICAgIHdpZHRoOiA4MnB4O1xuICB9XG4gIHBvc2l0aW9uOiBzdGlja3k7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgYmFja2dyb3VuZDogJGJsYWNrO1xuICBwYWRkaW5nOiAwO1xufVxuXG4jdGltZVNjcm9sbGJhcntcbiAgaGVpZ2h0OiBjYWxjKDEwMHZoKTtcbiAgd2lkdGg6IDEwMCU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO2xlZnQ6MCU7bWFyZ2luLXRvcDowcmVtO1xufVxuXG4jdG90U2Nyb2xsYmFye1xuICBoZWlnaHQ6IDEwMCU7XG4gIHdpZHRoOiAycHg7XG4gIHRvcDotMDAlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJhY2tncm91bmQ6ICRsaWdodC1ncmF5O1xuICB6LWluZGV4OiAtMTtcbiAgcG9zaXRpb246IGFic29sdXRlO2xlZnQ6NTAlO3RyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsMCk7XG59XG5cblxuXG4vLy8vXG4kYmFja2dyb3VuZDogJGJsYWNrO1xuJHN1YnRsZTogJGJsYWNrO1xuJGgxOiAjREI1QjMzO1xuJGgyOiAjNDU5OEI1O1xuJGJvZHk6ICM2QjcwNzI7XG4kZGFyazogIzIyMjtcblxuI2RvdFNjcm9sbGJhciB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjUwcHgpIHsgZGlzcGxheTogYmxvY2s7IH1cbiAgbWFyZ2luOiAwZW0gMDtcbiAgaGVpZ2h0OjEwMCU7XG4gIC5zaGltIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG5cbiAgLmhvbGRlciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGZvbnQtc2l6ZTogODUlO1xuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzUwcHgpIHsgZm9udC1zaXplOiA5MCU7IH1cbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwMHB4KSB7IGZvbnQtc2l6ZTogOTUlOyB9XG4gICAgcGFkZGluZzogMGVtIDAgMCAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuXG4gICAgLmJhciB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBib3R0b206IDA7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICB3aWR0aDogMnB4O1xuICAgICAgbGVmdDogNTAlO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHN1YnRsZTtcblxuICAgICAgLmluZGljYXRvciB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRyZWQ7XG4gICAgICAgIHdpZHRoOiAycHg7XG4gICAgICB9XG5cbiAgICB9XG5cbiAgICAubGFiZWxzIHtcbiAgICAgIC8vbWF4LXdpZHRoOiAxMjgwcHg7XG4gICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIGhlaWdodDoxMDAlO1xuICAgICAgcGFkZGluZzogMCAwZW07XG4gICAgICBAbWVkaWEgI3skbGFyZ2UtdXB9IHtcbiAgICAgICAgcGFkZGluZzogMCAyZW07XG4gICAgICB9XG4gICAgICBpIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgd2lkdGg6MTAwJTtcbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICB6LWluZGV4OiAyO1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICBib3R0b206IDUwJTtcbiAgICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgd2lkdGg6IDAuNzVyZW07XG4gICAgICAgICAgaGVpZ2h0OiAwLjc1cmVtO1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtZ3JheTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSkgdHJhbnNsYXRlWSg1MCUpO1xuICAgICAgICAgIHRyYW5zaXRpb246XG4gICAgICAgICAgICAgICAgICBib3JkZXItY29sb3IgMTAwbXMgZWFzZS1pbixcbiAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3IgMTUwbXMgZWFzZS1pbjtcbiAgICAgICAgfVxuXG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIGNvbnRlbnQ6IGF0dHIoZGF0YS1sYWJlbCk7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgIHJpZ2h0OjByZW07XG4gICAgICAgICAgcGFkZGluZzogMC4zNzVyZW07XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwtNTAlKSA7XG4gICAgICAgICAgZm9udC1mYW1pbHk6ICdJbnRlcic7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgIGJhY2tncm91bmQ6ICRibGFjaztcbiAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6MDtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiAwLjVyZW07XG4gICAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG5cbiAgICAgICAgICB0cmFuc2l0aW9uOlxuICAgICAgICAgICAgICAgICAgY29sb3IgMTUwbXMgZWFzZS1pbixcbiAgICAgICAgICAgICAgICAgIG9wYWNpdHkgMTUwbXMgZWFzZS1pbixcbiAgICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQgMTAwbXMgZWFzZS1vdXQ7XG4gICAgICAgIH1cblxuICAgICAgICAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHJlZDtcbiAgICAgICAgICB9XG4gICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDoyZW07XG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYucmVhZCB7XG4gICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRyZWQ7XG4gICAgICAgICAgfVxuICAgICAgICAgICY6aG92ZXIsICY6Zm9jdXMge1xuICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0LWdyYXk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi5yZWFkaW5nIHtcbiAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkcmVkO1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDoyZW07XG4gICAgICAgICAgfVxuICAgICAgICAgICY6aG92ZXIsICY6Zm9jdXMge1xuICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OjJlbTtcbiAgICAgICAgICAgICAgb3BhY2l0eTogMTtcblxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG4gICYuZml4ZWQge1xuXG4gICAgLmhvbGRlciB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgd2lkdGg6IDQycHg7XG4gICAgICBAbWVkaWEgI3skbGFyZ2UtdXB9IHtcbiAgICAgICAgd2lkdGg6IDgycHg7XG4gICAgICB9XG4gICAgICB6LWluZGV4OiAxO1xuICAgIH1cblxuICAgIC5zaGltIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cblxuICB9XG5cbn0iLCJAaW1wb3J0ICdjb21wb25lbnRzL2V4cG8vaGVhZGVyJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvZXhwby9kb3RuYXYnO1xuLnVucGFkZGVkIHtcbiAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG59XG5cbi5yb3ctbGFyZ2VyIHtcbiAgICBtYXgtd2lkdGg6ICRsYXJnZXItcm93O1xufVxuXG4ucGFkZGluZzEge1xuICAgIHBhZGRpbmc6IDFyZW07XG59XG5cbi52LWJvdHRvbS1sYXJnZSB7XG4gICAgcGFkZGluZy1ib3R0b206IDYuNXJlbTtcbn1cblxuLmV4cG9fY29udGVudCB7XG4gICAgYmFja2dyb3VuZDogJGV4cG9fd2hpdGU7XG4gICAgJi5ibGFja2NvbnRlbnQge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkYmxhY2s7XG4gICAgfVxuICAgIGhlYWRlciB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRibGFjaztcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIEBtZWRpYSAjeyRtZWRpdW0tdXB9IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG4gICAgICAgIC50aXRsZSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDByZW07XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwcmVtO1xuICAgICAgICAgICAgQG1lZGlhICN7JGxhcmdlLXVwfSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMHJlbTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAwcmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJi51bmRlcmxpbmUge1xuICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDJweCAkZGFyay1ncmF5MiBzb2xpZDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICoge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAwLjhyZW07XG4gICAgICAgICAgICAgICAgQG1lZGlhICN7JG1lZGl1bS1vbmx5fSB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMC44cmVtO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBAbWVkaWEgI3skbGFyZ2Utb25seX0ge1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuM3JlbTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgQG1lZGlhICN7JHhsYXJnZS11cH0ge1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBbY2xhc3MqPVwiIGljb24tXCJdIHtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDAgMC4yNXJlbTtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuNHJlbTtcbiAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS40cmVtO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBoMSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDIuMjVyZW07XG4gICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICB9XG4gICAgICAgIGgzIHtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5ibG9jayB7XG4gICAgJi5ibGFjayB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRibGFjaztcbiAgICAgICAgKiB7XG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICB9XG4gICAgfVxuICAgICYuZ3JheSB7XG4gICAgICAgIGJhY2tncm91bmQ6IGRhcmtlbigkZ3JheSwgMjAlKTtcbiAgICAgICAgKiB7XG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICB9XG4gICAgfVxuICAgICYud2hpdGUge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkaGlnaGxpZ2h0LWdyYXkyO1xuICAgICAgICAqIHtcbiAgICAgICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICAgIH1cbiAgICB9XG4gICAgJi53aGl0ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkZXhwb193aGl0ZTtcbiAgICAgICAgKiB7XG4gICAgICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uY29udGVudC1ib3gge1xuICAgICYuYmxhY2sge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkYmxhY2s7XG4gICAgICAgIGEge1xuICAgICAgICAgICAgY29sb3I6ICRyZWQ7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8vL2Zvb3RlclxuLmV4cG9fYm9keSB7XG4gICAgZm9vdGVyIHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgIH1cbiAgICAuaGVhZGVyQ29udGFpbmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiL3N0YXRpYy9pbWFnZXMvdGhlbWUvYmFuLWV4cG8ucG5nXCIpO1xuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgcmlnaHQ7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgICAgICAgI2hlYWRlci5pbnRlcm4ge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgIH1cbiAgICAgICAgLnRvcC1iYXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbiNjb250ZW50ZXhwb19jb250YWluZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBtYXJnaW4tdG9wOiAtNnJlbTtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgQG1lZGlhICN7JGxhcmdlLXVwfSB7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIH1cbn1cblxuLmV4cG9fY29udGVudCB7XG4gICAgYXNpZGUsXG4gICAgbWFpbiB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAyLjVyZW07XG4gICAgfVxuICAgIGFzaWRlIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICAgIEBtZWRpYSAjeyRsYXJnZS11cH0ge1xuICAgICAgICAgICAgcG9zaXRpb246IHN0aWNreTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmdvYmFja3NpZGUge1xuICAgIHBvc2l0aW9uOiBzdGlja3k7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgaGVpZ2h0OiA5MHZoO1xuICAgID5kaXYge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogNTAlO1xuICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpIHJvdGF0ZSgtOTBkZWcpO1xuICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7XG4gICAgICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICAgICAgICBmb250LWZhbWlseTogJ2VwaWxvZ3VlJztcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICB9XG59XG5cbiNuYXZiYXItdGhlbWF0aWNzLWxlZnQge1xuICAgIHBvc2l0aW9uOiBzdGlja3k7XG4gICAgdG9wOiAwO1xuICAgIHVsIHtcbiAgICAgICAgYmFja2dyb3VuZDogJGJsYWNrO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIGJvcmRlcjogMnB4ICRibGFjayBzb2xpZDtcbiAgICAgICAgLy9tYXJnaW4tYm90dG9tOiAwLjVlbTtcbiAgICAgICAgbGkge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAkYmxhY2s7XG4gICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgYSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgICAgICAgICAgcGFkZGluZzogMC41cmVtO1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6ICd2YXJ0YSc7XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxcmVtO1xuICAgICAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkcmVkO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4jaXRlbXMtZXhwbyxcbiNpdGVtcy10aGVtcyB7XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgd2lkdGg6IDk1JTtcbiAgICBAbWVkaWEgI3skeGxhcmdlLXVwfSB7XG4gICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgd2lkdGg6IDkwJTtcbiAgICB9XG4gICAgJi5saXN0LWNoYXAge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgY2xlYXI6IGJvdGg7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogNXJlbTtcbiAgICB9XG4gICAgLmdyaWRzaXplciB7XG4gICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLyAyKTtcbiAgICAgICAgQG1lZGlhICN7JGxhcmdlLXVwfSB7XG4gICAgICAgICAgICB3aWR0aDogY2FsYygxMDAlIC8gMyk7XG4gICAgICAgIH1cbiAgICAgICAgQG1lZGlhICN7JHhsYXJnZS11cH0ge1xuICAgICAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAvIDQpO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4jaXRlbXMtZXhwbyB7XG4gICAgd2lkdGg6IDkwJTtcbiAgICBtYXJnaW46IDAlO1xuICAgIEBtZWRpYSAjeyR4bGFyZ2UtdXB9IHtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICB3aWR0aDogOTAlO1xuICAgICAgICBtYXJnaW46IGF1dG87XG4gICAgfVxufVxuXG4jaXRlbXMtdGhlbXMge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IDByZW07XG4gICAgLmNhcmQtZXhwbyBmaWdjYXB0aW9uIGEge1xuICAgICAgICBjb2xvcjogJGJsYWNrXG4gICAgfVxufVxuXG4uaW5FeHBvIHtcbiAgICBmb250LXNpemU6IDY2JTtcbiAgICBjb2xvcjogYmxhY2sgIWltcG9ydGFudDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgY2xlYXI6IGJvdGg7XG4gICAgKiB7XG4gICAgICAgIGNvbG9yOiBibGFjayAhaW1wb3J0YW50O1xuICAgIH1cbiAgICBmbG9hdDogbGVmdDtcbn1cblxuLmFydGljbGVnb3RvIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tdG9wOiA0cmVtO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIC8vL1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIC8vXG4gICAgLy8mOmhvdmVyIHtcbiAgICAvLyAgLmNhcmQtZXhwby5iaWdjYXJkIHtcbiAgICAvLyAgICAuaW5mby1leHBvc2l0aW9uLXJpZ2h0LWRvd24ge1xuICAgIC8vICAgICAgdG9wOjA7XG4gICAgLy8gICAgfVxuICAgIC8vICB9XG4gICAgLy99XG4gICAgaDEge1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycztcbiAgICAgICAgY29sb3I6ICR3aGl0ZSAhaW1wb3J0YW50O1xuICAgICAgICB0ZXh0LXNoYWRvdzogMCAwIDBweCByZ2JhKDAsIDAsIDAsIDAuNSk7XG4gICAgfVxuICAgICY6aG92ZXIge1xuICAgICAgICBoMSB7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycztcbiAgICAgICAgICAgIGNvbG9yOiAkcmVkICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB0ZXh0LXNoYWRvdzogMCAwIDQwcHggcmdiYSgwLCAwLCAwLCAxKSwgMCAwIDRweCByZ2JhKDAsIDAsIDAsIDEpO1xuICAgICAgICB9XG4gICAgfVxuICAgIEBtZWRpYSAjeyRzbWFsbC1vbmx5fSB7XG4gICAgICAgIC50aHVtYiB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICBoZWlnaHQ6IDMwdnc7XG4gICAgICAgICAgICBtaW4taGVpZ2h0OiAxMjBweDtcbiAgICAgICAgICAgIG1heC1oZWlnaHQ6IDE2MHB4O1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICBtaW4td2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgbWluLWhlaWdodDogMTAwJTtcbiAgICAgICAgICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgQG1lZGlhICN7JG1lZGl1bS1vbmx5fSB7XG4gICAgICAgIC50aHVtYiB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICBoZWlnaHQ6IDIwdnc7XG4gICAgICAgICAgICBtYXgtaGVpZ2h0OiAzMjBweDtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgbWluLXdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4ubGlzdGV4cG9zIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogNHJlbTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMTAwJTtcbn1cblxuLmNhcmQtZXhwbyB7XG4gICAgJjpob3ZlciB7XG4gICAgICAgIGNvbG9yOiAkcmVkICFpbXBvcnRhbnQ7XG4gICAgICAgIDtcbiAgICAgICAgZmlnY2FwdGlvbiB7XG4gICAgICAgICAgICBjb2xvcjogJHJlZCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgO1xuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRyZWQgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICB3aWR0aDogY2FsYygxMDAlIC8gMiAtIDE2cHgpO1xuICAgIGZvbnQtZmFtaWx5OiBcIlZhcnRhXCI7XG4gICAgcGFkZGluZy1ib3R0b206MXJlbTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgQG1lZGlhICN7JGxhcmdlLXVwfSB7XG4gICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLyAzIC0gMTZweCk7XG4gICAgfVxuICAgIEBtZWRpYSAjeyR4bGFyZ2UtdXB9IHtcbiAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAvIDQgLSAxNnB4KTtcbiAgICB9XG4gICAgJi5iaWdjYXJkIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIC5pbmZvLWV4cG9zaXRpb24tcmlnaHQtZG93biB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAuaW5mb2V4cG8ge1xuICAgICAgICAgICAgICAgIG1hcmdpbjogM3JlbTtcbiAgICAgICAgICAgICAgICBtYXgtaGVpZ2h0OiBjYWxjKDEwMCUgLSAzcmVtKTtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGp1c3RpZnk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIEBtZWRpYSAjeyRzbWFsbC1vbmx5fSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMXJlbTtcbiAgICAgICAgICAgICAgICAgICAgbWF4LWhlaWdodDogY2FsYygxMDAlIC0gM3JlbSk7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICAgICAgc2Nyb2xsLWJlaGF2aW9yOiBzbW9vdGg7XG4gICAgICAgICAgICAgICAgICAgIG92ZXJmbG93LXk6IHNjcm9sbDtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMXJlbSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIEBtZWRpYSAjeyRtZWRpdW0tb25seX0ge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDFyZW07XG4gICAgICAgICAgICAgICAgICAgIG1heC1oZWlnaHQ6IGNhbGMoMTAwJSAtIDNyZW0pO1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIHNjcm9sbC1iZWhhdmlvcjogc21vb3RoO1xuICAgICAgICAgICAgICAgICAgICBvdmVyZmxvdy15OiBzY3JvbGw7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDFyZW0pO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBAbWVkaWEgI3skbWVkaXVtLXVwfSB7XG4gICAgICAgICAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAwLjk1cmVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMmVtO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIEBtZWRpYSAjeyRsYXJnZS11cH0ge1xuICAgICAgICAgICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4xcmVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMjVlbTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBAbWVkaWEgI3skeGxhcmdlLXVwfSB7XG4gICAgICAgICAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjNyZW07XG4gICAgICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS4yNWVtO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC52aWQtZXhwbyB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkYmxhY2s7XG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgPioge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6IFwiaW50ZXJcIjtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJi5vbi1ibGFjayB7XG4gICAgICAgICAgICAgICAgPiosXG4gICAgICAgICAgICAgICAgPiogKiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGZpZ2NhcHRpb24ge1xuICAgICAgICAgICAgYm90dG9tOiBhdXRvO1xuICAgICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgaDEge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS42MjVyZW07XG4gICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS4xO1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDEuMzc1cmVtO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDAuNzVyZW07XG4gICAgICAgICAgICAgICAgQG1lZGlhICN7JG1lZGl1bS11cH0ge1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDJyZW07XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIEBtZWRpYSAjeyRsYXJnZS11cH0ge1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDIuNzVyZW07XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIEBtZWRpYSAjeyR4bGFyZ2UtdXB9IHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAzLjRyZW07XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5pbmZvLWV4cG9zaXRpb24tcmlnaHQtZG93biB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDEwMCU7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRoaWdobGlnaHQtZ3JheTI7XG4gICAgICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuNXM7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgfVxuICAgICAgICAudGh1bWIge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMzgpO1xuICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5pbmZvLWV4cG9zaXRpb24ge1xuICAgICAgICAgICAgcGFkZGluZzogMC44NzVyZW0gMCAxLjhyZW07XG4gICAgICAgICAgICBmb250LWZhbWlseTogJ2ludGVyJztcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkZGFyay1ncmF5MjtcbiAgICAgICAgICAgIC5hdXRoLWV4cG8ge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAgICAgICAgIEBtZWRpYSAjeyRtZWRpdW0tdXB9IHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuZGF0ZS1leHBvLFxuICAgICAgICAgICAgLmRhdGUtZXhwbyAqIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAka2FzaS1ncmF5ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgICAgICAgIEBtZWRpYSAjeyRtZWRpdW0tdXB9IHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAwLjc1cmVtO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcFxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAmLnNtYWxsY2FyZCB7XG4gICAgICAgIGZpZ2NhcHRpb24ge1xuICAgICAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDEuMTI1cmVtKTtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IC00cHggNnB4IHJnYmEoMCwgMCwgMCwgMC40KTtcbiAgICAgICAgfVxuICAgICAgICAuaW5mby1leHBvc2l0aW9uIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgaGVpZ2h0OiAxLjVyZW07XG4gICAgICAgICAgICAuYXV0aC1leHBvIHtcbiAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICBmaWd1cmUge1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgkd2hpdGUsIDAuOSk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgZmlnY2FwdGlvbiB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgYm90dG9tOiAxcmVtO1xuICAgICAgICBiYWNrZ3JvdW5kOiAkZXhwb193aGl0ZTtcbiAgICAgICAgZm9udC1mYW1pbHk6IFwiSW50ZXJcIjtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDgwMDtcbiAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgICAgcGFkZGluZzogMC4xMjVyZW07XG4gICAgICAgIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgICAgICAgQG1lZGlhICN7JG1lZGl1bS11cH0ge1xuICAgICAgICAgICAgZm9udC1zaXplOiAwLjgyNXJlbTtcbiAgICAgICAgfVxuICAgICAgICBhIHtcbiAgICAgICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLnZpZC1leHBvIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIGJhY2tncm91bmQ6ICRleHBvX3doaXRlO1xuICAgICAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgICAgICBmb250LWZhbWlseTogXCJWYXJ0YVwiO1xuICAgICAgICB6LWluZGV4OiAxMDtcbiAgICAgICAgPiogKiB7XG4gICAgICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgICB9XG4gICAgICAgID4qIHtcbiAgICAgICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICAgICAgICBwYWRkaW5nOiAwLjEyNXJlbSAwLjc1cmVtO1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBpIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwLjFyZW07XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDAuNHJlbTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwLjJyZW07XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDAuMnJlbTtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDAuNzVyZW07XG4gICAgICAgICAgICAgICAgQG1lZGlhICN7JG1lZGl1bS11cH0ge1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDAuODI1cmVtO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBAbWVkaWEgI3skbWVkaXVtLXVwfSB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMC44MjVyZW07XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGkge1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDAuNzVyZW07XG4gICAgICAgICAgICAgICAgICAgIEBtZWRpYSAjeyRtZWRpdW0tdXB9IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMC44MjVyZW07XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgQG1lZGlhICN7JG1lZGl1bS11cH0ge1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAwLjgyNXJlbTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAmLm9uLWJsYWNrIHtcbiAgICAgICAgZmlnY2FwdGlvbiB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkYmxhY2s7XG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC52aWQtZXhwbyB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkYmxhY2s7XG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICB9XG4gICAgICAgIGZpZ3VyZSBpbWcge1xuICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgkd2hpdGUsIDAuOSlcbiAgICAgICAgfVxuICAgICAgICAudmlkLWV4cG8+KixcbiAgICAgICAgLnZpZC1leHBvPiogKiB7XG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICB9XG4gICAgfVxuICAgICY6bm90KC5vbi1ibGFjaykge1xuICAgICAgICBmaWdjYXB0aW9uIHtcbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLnZpZC1leHBvIHtcbiAgICAgICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICAgIH1cbiAgICAgICAgZmlndXJlIGltZyB7XG4gICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKCM5RjlGOUYsIDAuOSlcbiAgICAgICAgfVxuICAgIH1cbiAgICAuaW5mby1leHBvc2l0aW9uIHtcbiAgICAgICAgcGFkZGluZzogMC4xMjVyZW07XG4gICAgICAgIEBtZWRpYSAjeyRtZWRpdW0tdXB9IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICAgICAgfVxuICAgICAgICAuYXV0aC1leHBvIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICAgICAgICB3aWR0aDogMTAwJVxuICAgICAgICB9XG4gICAgICAgIC5kYXRlLWV4cG8ge1xuICAgICAgICAgICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjVyZW07XG4gICAgICAgICAgICBjb2xvcjogJGthc2ktZ3JheTtcbiAgICAgICAgICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXBcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLy8vaW5uZXIgZXhwbyBsaXN0XG4jdGhlbUhlYWRlciB7XG4gICAgbWFyZ2luOiBhdXRvO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgaGVpZ2h0OiAyNXZoO1xuICAgIG1pbi1oZWlnaHQ6IDE5MHB4O1xuICAgIG1heC1oZWlnaHQ6IDMyMHB4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyICFpbXBvcnRhbnQ7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGgxIHtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgIEBtZWRpYSAjeyRsYXJnZS11cH0ge1xuICAgICAgICAgICAgZm9udC1zaXplOiAzcmVtO1xuICAgICAgICB9XG4gICAgICAgIEBtZWRpYSAjeyR4bGFyZ2UtdXB9IHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogNHJlbTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmNvbnRhaW5lckdyaWRleHBvcyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbjogMHB4IGF1dG87XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiA0MnB4IDFmcjtcbiAgICBncmlkLWdhcDogMHB4O1xuICAgIEBtZWRpYSAjeyRsYXJnZS11cH0ge1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDgycHggMWZyO1xuICAgIH1cbiAgICAjdGhlbUhlYWRlciB7XG4gICAgICAgIGhlaWdodDogMjB2aDtcbiAgICAgICAgbWluLWhlaWdodDogMTYwcHg7XG4gICAgICAgIG1heC1oZWlnaHQ6IDMyMHB4O1xuICAgIH1cbiAgICAmLmV4cG9kZXRhaWwge1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDQycHggNDJweCAxZnI7XG4gICAgICAgIEBtZWRpYSAjeyRsYXJnZS11cH0ge1xuICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiA4MnB4IDgycHggMWZyO1xuICAgICAgICB9XG4gICAgICAgIC5oZWFkZXJncmlkIHtcbiAgICAgICAgICAgIGdyaWQtY29sdW1uOiBzcGFuIDM7XG4gICAgICAgIH1cbiAgICAgICAgLm1haW5ncmlkZXhwb3MsXG4gICAgICAgIC5jb250ZW50LWJveCB7XG4gICAgICAgICAgICBncmlkLWNvbHVtbjogMy8zO1xuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkcmVkICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJi50b3AzcmVsIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgdG9wOiAtM3JlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAudG90YWwge1xuICAgICAgICAgICAgZ3JpZC1jb2x1bW46IHNwYW4gMztcbiAgICAgICAgfVxuICAgICAgICAuc2lkZWJhciB7XG4gICAgICAgICAgICAmLmJsYWNrIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkYmxhY2s7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLnJlY2VudGVyLXNpZGUxIHtcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gMjRweCk7XG4gICAgICAgICAgICBAbWVkaWEgI3skbGFyZ2UtdXB9IHtcbiAgICAgICAgICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gODJweCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmLnNsaWRldGhlbXMge1xuICAgICAgICAgICAgICAgIG1hcmdpbjogYXV0bztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAjdGhlbUhlYWRlciB7XG4gICAgICAgICAgICBoZWlnaHQ6IDM1dmg7XG4gICAgICAgICAgICBtaW4taGVpZ2h0OiAyODBweDtcbiAgICAgICAgICAgIG1heC1oZWlnaHQ6IDM4MHB4O1xuICAgICAgICAgICAgaDEge1xuICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBAbWVkaWEgI3skbGFyZ2UtdXB9IHtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDM4dmg7XG4gICAgICAgICAgICAgICAgbWluLWhlaWdodDogMzAwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgJi5jaGFwdGRldGFpbCB7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogNDJweCA0MnB4IDFmcjtcbiAgICAgICAgQG1lZGlhICN7JGxhcmdlLXVwfSB7XG4gICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDgycHggODJweCAxZnIgODJweDtcbiAgICAgICAgfVxuICAgICAgICAuaGVhZGVyZ3JpZCB7XG4gICAgICAgICAgICBncmlkLWNvbHVtbjogc3BhbiA0O1xuICAgICAgICB9XG4gICAgICAgIC5tYWluZ3JpZGV4cG9zLFxuICAgICAgICAuY29udGVudC1ib3gge1xuICAgICAgICAgICAgZ3JpZC1jb2x1bW46IDMvMztcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICBncmlkLXJvdzogMSAvIDEwMDtcbiAgICAgICAgfVxuICAgICAgICAudG90YWwge1xuICAgICAgICAgICAgZ3JpZC1jb2x1bW46IHNwYW4gNDtcbiAgICAgICAgfVxuICAgICAgICAuc2lkZWJhciB7XG4gICAgICAgICAgICAmLmJsYWNrIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkYmxhY2s7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmLnJpZ2h0YmFyIHtcbiAgICAgICAgICAgICAgICBncmlkLWNvbHVtbjogNC80O1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgQG1lZGlhICN7JG1lZGl1bS11cH0ge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLnJlY2VudGVyLXNpZGUxIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgQG1lZGlhICN7JGxhcmdlLXVwfSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDQxcHgpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgQG1lZGlhICN7JHhsYXJnZS11cH0ge1xuICAgICAgICAgICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSA4MnB4KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAjdGhlbUhlYWRlciB7XG4gICAgICAgICAgICBoZWlnaHQ6IDMwdmg7XG4gICAgICAgICAgICBtYXgtaGVpZ2h0OiAzMjBweDtcbiAgICAgICAgfVxuICAgIH1cbiAgICAucmVjZW50ZXItc2lkZTEge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgQG1lZGlhICN7JG1lZGl1bS11cH0ge1xuICAgICAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDgycHgpO1xuICAgICAgICB9XG4gICAgfVxuICAgIC5zaWRlYmFyIHtcbiAgICAgICAgZ3JpZC1yb3c6IDEgLyAxMDA7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRyZWQ7XG4gICAgfVxuICAgIC5oZWFkZXJncmlkIHtcbiAgICAgICAgZ3JpZC1jb2x1bW46IHNwYW4gMjtcbiAgICB9XG4gICAgLm1haW5ncmlkZXhwb3Mge1xuICAgICAgICBncmlkLWNvbHVtbjogMi8yO1xuICAgIH1cbiAgICAudG90YWwge1xuICAgICAgICBncmlkLWNvbHVtbjogc3BhbiAyO1xuICAgIH1cbiAgICAuY3JlZGl0cyB7XG4gICAgICAgIG1hcmdpbi10b3A6IDMuMjVyZW07XG4gICAgICAgIGNsZWFyOiBib3RoO1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDMuMjVyZW07XG4gICAgICAgIC5jcmVkbGlzdCB7XG4gICAgICAgICAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgICAgICAgICAgb3BhY2l0eTogMC42NjtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmVuZC1ib3guYmxhY2sge1xuICAgIGEge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBjb2xvcjogJHJlZCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgfVxufVxuXG4vLy8vIG1hcnF1ZWVcbi5tYXJxdWVlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWFyZ2luOiAwIDE2cHggMHJlbSAwO1xuICAgIC5saXN0YXV0IHtcbiAgICAgICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICAgICAgQG1lZGlhICN7JG1lZGl1bS11cH0ge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IDFzO1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgJjpob3ZlciB7XG4gICAgICAgIHNwYW4ge31cbiAgICB9XG59XG5cbi5wcmVzZXhwbyB7XG4gICAgbWFyZ2luLXRvcDogNHJlbTtcbiAgICBwYWRkaW5nLWJvdHRvbTogM3JlbTtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgkbGlnaHQtZ3JheSwgMC41KTtcbiAgICBtYXJnaW4tYm90dG9tOiAyLjRyZW07XG4gICAgYXJ0aWNsZSB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIEBtZWRpYSAjeyRsYXJnZS11cH0ge1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgICAgfVxuICAgIH1cbiAgICAuaW50cm9GaXJzdCB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgIHRleHQtYWxpZ246IGp1c3RpZnk7XG4gICAgfVxuICAgIC5jaXRlRm9yRXhwbyB7XG4gICAgICAgIG1hcmdpbi10b3A6IDFyZW07XG4gICAgfVxuICAgIC5jaXRhdGlvbiB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gICAgICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMC42MjVyZW07XG4gICAgICAgIEBtZWRpYSAjeyR4eGxhcmdlLXVwfSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuMTI1cmVtO1xuICAgICAgICB9XG4gICAgfVxuICAgIC5jaXRhdGlvbl9hdXRoIHtcbiAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgICBjb2xvcjogJGxpZ2h0LWdyYXk7XG4gICAgfVxuICAgIC5leHBvLXBpY3R1cmUge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMnJlbTtcbiAgICAgICAgQG1lZGlhICN7JHNtYWxsLW9ubHl9IHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBAbWVkaWEgI3skbWVkaXVtLXVwfSB7XG4gICAgICAgICAgICB3aWR0aDogMjgwcHg7XG4gICAgICAgIH1cbiAgICAgICAgQG1lZGlhICN7JGxhcmdlLXVwfSB7XG4gICAgICAgICAgICB3aWR0aDogMzYwcHg7XG4gICAgICAgIH1cbiAgICB9XG4gICAgYSB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgIH1cbn1cblxuLmV4cG8tcGljdHVyZSB7XG4gICAgZmlndXJlIHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgIH1cbiAgICB3aWR0aDozNjBweDtcbn1cblxuLmV4cG8taW50cm8ge1xuICAgIG1hcmdpbi1sZWZ0OiAwcmVtO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICBAbWVkaWEgI3skeHhsYXJnZS11cH0ge1xuICAgICAgICBtYXJnaW4tbGVmdDogMHJlbTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgICAgcCB7XG4gICAgICAgICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICAgIH1cbiAgICB9XG4gICAgLmludHJvTW9yZSB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAnSW5yaWEgU2VyaWYnO1xuICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICB0ZXh0LWFsaWduOiBqdXN0aWZ5O1xuICAgICAgICBhIHtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lXG4gICAgICAgIH1cbiAgICAgICAgQG1lZGlhICN7JHh4bGFyZ2UtdXB9IHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmV4cG9QbGFuIHtcbiAgICBtYXJnaW4tdG9wOiAxLjVlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAzLjVyZW07XG4gICAgaDIge1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgZm9udC1zaXplOiAyLjI1cmVtO1xuICAgIH1cbn1cblxuLmNhcHRsX2gyIHtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGZvbnQtd2VpZ2h0OiA5MDA7XG4gICAgZm9udC1zaXplOiAyLjI1cmVtO1xufVxuXG4jcmVjYXBDcmVkIHtcbiAgICBtYXJnaW4tdG9wOiA1cmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDVyZW07XG59XG5cbi5saXN0Y2hhcHRlciB7XG4gICAgcGFkZGluZy10b3A6IDNyZW07XG4gICAgcGFkZGluZy1ib3R0b206IDNyZW07XG4gICAgLmNoYXB0ZXJJdGVtIHtcbiAgICAgICAgcGFkZGluZzogMC41cmVtO1xuICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgICBib3JkZXI6IDFweCAkcmVkIHNvbGlkO1xuICAgICAgICB9XG4gICAgfVxuICAgIC5uYXZzbGlkZXJieTMgYTpob3ZlciB7XG4gICAgICAgIC5pY29uLTJ4IHtcbiAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHJlZCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIC5pY29uLTJ4IHtcbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgY29sb3I6ICR3aGl0ZSAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgfVxufVxuXG4jcGFyYWdoTWVudSB7XG4gICAgbWFyZ2luOiAyLjVyZW0gMDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAubWVudWNoYXBJdGVtIHtcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAudGl0bGVwYXIge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkcmVkICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgKiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkcmVkICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgID5kaXYge1xuICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgbWFyZ2luOiAwLjVyZW0gMDtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBAbWVkaWEgI3skbGFyZ2UtdXB9IHtcbiAgICAgICAgICAgIHdpZHRoOiAyNSU7XG4gICAgICAgIH1cbiAgICAgICAgPi50aXRsZXBhciB7XG4gICAgICAgICAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgICAgICAgICAgcGFkZGluZzogMCAwLjc1cmVtO1xuICAgICAgICB9XG4gICAgICAgID4uaW1ncGFyIHtcbiAgICAgICAgICAgIHdpZHRoOiA1MHB4O1xuICAgICAgICAgICAgaGVpZ2h0OiA0MHB4O1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgZmxleDogMCAwIDUwcHg7XG4gICAgICAgICAgICBAbWVkaWEgI3skbGFyZ2UtdXB9IHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwcHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA3MnB4O1xuICAgICAgICAgICAgICAgIGZsZXg6IDAgMCAxMDBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIG1pbi13aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBtaW4taGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuI2ZvbGRlciB7XG4gICAgcCB7XG4gICAgICAgIGEge1xuICAgICAgICAgICAgY29sb3I6ICRyZWQgIWltcG9ydGFudDtcbiAgICAgICAgICAgIHNwYW4sXG4gICAgICAgICAgICBiLFxuICAgICAgICAgICAgZW0sXG4gICAgICAgICAgICBpIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHJlZCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4uaW50cm9mb2xkLFxuLmRlc2NyZm9sZCB7XG4gICAgZm9udC1mYW1pbHk6ICdJbnJpYSBTZXJpZicsIHNlcmlmO1xuICAgICoge1xuICAgICAgICBsaW5lLWhlaWdodDogMS44NzVyZW07XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuICAgIGEge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICB9XG59XG5cbi5pbnRyb2ZvbGQge1xuICAgIHRleHQtYWxpZ246IGp1c3RpZnk7XG59XG5cbi5kZXNjcmZvbGQge1xuICAgIHAge1xuICAgICAgICB0ZXh0LWFsaWduOiBqdXN0aWZ5O1xuICAgIH1cbn1cblxuLmZvbGRlciB7XG4gICAgbWFyZ2luLXRvcDogMnJlbTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBoMyB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICAgICAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgfVxuICAgIGEge1xuICAgICAgICBjb2xvcjogJHJlZCAhaW1wb3J0YW50O1xuICAgICAgICBzcGFuLFxuICAgICAgICBiLFxuICAgICAgICBlbSxcbiAgICAgICAgaSB7XG4gICAgICAgICAgICBjb2xvcjogJHJlZCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgfVxuICAgIC5kZXNjcmltZ2ZvbGQge1xuICAgICAgICBhIHtcbiAgICAgICAgICAgIGNvbG9yOiAkYmxhY2sgIWltcG9ydGFudDtcbiAgICAgICAgICAgIHNwYW4sXG4gICAgICAgICAgICBiLFxuICAgICAgICAgICAgZW0sXG4gICAgICAgICAgICBpIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGJsYWNrICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgc3BhbixcbiAgICAgICAgYixcbiAgICAgICAgZW0sXG4gICAgICAgIGkge1xuICAgICAgICAgICAgY29sb3I6ICRibGFjayAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uY2l0YXRpb25Gb2xkZXIge1xuICAgIDtcbiAgICAuaXMtY29udGVudCB7XG4gICAgICAgIC8vYm9yZGVyLWxlZnQ6IDAuMjVyZW0gc29saWQgI2RkZDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCg5MGRlZywgd2hpdGUsIHRyYW5zcGFyZW50KTtcbiAgICAgICAgcGFkZGluZzogMnJlbTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiA0cmVtO1xuICAgICAgICAvL2JveC1zaGFkb3c6IC0yMXB4IDBweCAyMHB4IC0xN3B4IHJnYmEoJGJsYWNrLDAuMSk7XG4gICAgfVxufVxuXG4ubW9yZWJsb2NrIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgkZGFyay1ncmF5MiwgMC41KTtcbiAgICAuc2hvd2ZvbGRlciB7XG4gICAgICAgID5zcGFuIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICAgICAgc3Bhbi5tb3JlIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDJlbTtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogMTAwO1xuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMC4zZW07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLm1vcmVidXQge1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB9XG4gICAgICAgIC5sZXNzYnV0IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgICAgJi5vcGVuZWQge1xuICAgICAgICAgICAgLm1vcmVidXQge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAubGVzc2J1dCB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4uaXRhbGljIHtcbiAgICBmb250LXN0eWxlOiBpdGFsaWM7XG59XG5cbi5kZXRhaWxmb2xkZXIge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgbWFyZ2luLXRvcDogMXJlbTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICAuc21hbGwtdGV4dCB7XG4gICAgICAgICoge1xuICAgICAgICAgICAgZm9udC1zaXplOiAwLjYyNXJlbTtcbiAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lXG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgLnNsaWNrLWFycm93IHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBib3R0b206IDFyZW07XG4gICAgICAgIHotaW5kZXg6IDEwO1xuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDJyZW07XG4gICAgICAgIH1cbiAgICB9XG4gICAgLnNsaWNrLXByZXYge1xuICAgICAgICBsZWZ0OiAtMXJlbVxuICAgIH1cbiAgICAuc2xpY2stbmV4dCB7XG4gICAgICAgIHJpZ2h0OiAtMXJlbVxuICAgIH1cbiAgICAuc2xpY2stc2xpZGUge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIGNvbG9yOiAjNDE5YmUwO1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgbWFyZ2luOiAxcHg7XG4gICAgICAgIGltZyB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmNvbnRhaW5lclBhcmEge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICA+aDMge1xuICAgICAgICBib3JkZXItbGVmdDogM3B4IHNvbGlkICRyZWQ7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMC43NXJlbTtcbiAgICB9XG59XG5cbi5mb2xkZXItZGV0YWlsIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgJi5mX2NpdGF0aW9uIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgICAgICAgbWFyZ2luLXRvcDogMnJlbTtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgd2lkdGg6IDJweDtcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRyZWQ7XG4gICAgICAgIH1cbiAgICB9XG4gICAgQG1lZGlhICN7JHhsYXJnZS11cH0ge1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIH1cbiAgICAmLmFsaWducmlnaHQge1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBAbWVkaWEgI3skeGxhcmdlLXVwfSB7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7XG4gICAgICAgIH1cbiAgICB9XG4gICAgJi5hbGlnbmZ1bGwge1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICA+LmNvbHVtbiB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAudGFnIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMXJlbTtcbiAgICB9XG4gICAgJi5pcy13aXRoLWltYWdlIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIC5kZXNjcmZvbGQge1xuICAgICAgICAgICAgZmxvYXQ6IGluaXRpYWw7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgbWFyZ2luOiAwIDAuN3JlbTtcbiAgICAgICAgfVxuICAgICAgICAuc3RvcmUtYWxidW0ge1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgbWFyZ2luOiAxLjc1cmVtO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgICAgIC5zbGljay1zbGlkZSB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogI2RmZGZkZjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGJ1dHRvbiB7XG4gICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkcmVkXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmRlc2NyaW1nZm9sZCB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMC41cmVtIDFyZW07XG4gICAgICAgICAgICAgICAgYSAqIHt9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgJi5hbGlnbnJpZ2h0IHtcbiAgICAgICAgICAgIC5zdG9yZS1hbGJ1bSB7XG4gICAgICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4uc2xpZGVyLWltZy1mb2xkZXIge1xuICAgIC5zbGljay10cmFjayB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWNvbnRlbnQ6IHN0cmV0Y2g7XG4gICAgICAgIC5zbGljay1zbGlkZSB7XG4gICAgICAgICAgICBhbGlnbi1zZWxmOiBzdHJldGNoO1xuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1ldmVubHk7XG4gICAgICAgICAgICAuaW1nLXNsLWNvbnQge1xuICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5zbGlkZXItaW1nLWZvbGRlcmJ5LTMge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIEBtZWRpYSAjeyRsYXJnZS11cH0ge1xuICAgICAgICB3aWR0aDogNzZ2dztcbiAgICB9XG4gICAgLml0ZW0taW1nLWZvbGRlciB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNXJlbTtcbiAgICAgICAgQG1lZGlhICN7JGxhcmdlLXVwfSB7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAyLjVyZW07XG4gICAgICAgIH1cbiAgICAgICAgLnNtYWxsLXRleHQge1xuICAgICAgICAgICAgbWluLWhlaWdodDogM3JlbTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnN0b3JlLWFsYnVtIHtcbiAgICAuaXRlbS1pbWctZm9sZGVyIHtcbiAgICAgICAgaDYge1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbnNlY3Rpb24uYmxvY2suYmxhY2sge1xuICAgIC5pY29uLTJ4OmJlZm9yZSB7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIGZvbnQtc2l6ZTogMS44cmVtO1xuICAgICAgICA7XG4gICAgfVxufVxuXG4ucmVjZW50ZXItc2lkZS1yZXN1bWUge1xuICAgIHBhZGRpbmctdG9wOiAycmVtO1xuICAgIHBhZGRpbmctYm90dG9tOiAwLjI1cmVtO1xuICAgIC5zbGlkZXItaW1nLWZvbGRlcmJ5LTMge1xuICAgICAgICBtYXJnaW4tdG9wOiAycmVtO1xuICAgIH1cbiAgICAucm93LmxhcmdlciB7XG4gICAgICAgIG1heC13aWR0aDogODByZW07XG4gICAgfVxufVxuXG4ubmF2c2xpZGVyYnkzIHtcbiAgICBtYXJnaW4tdG9wOiAxcmVtO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBhIHtcbiAgICAgICAgcGFkZGluZzogMXJlbTtcbiAgICAgICAgb3BhY2l0eTogMC41O1xuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5uYXZiYXItdGhlbWF0aWNzLW1vcmUge1xuICAgIHBvc2l0aW9uOiBzdGlja3k7XG4gICAgdG9wOiAwO1xuICAgIHVsIHtcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgbWFyZ2luLXRvcDogMS41cmVtO1xuICAgICAgICBib3JkZXItdG9wOiAxcHggcmdiYSgkd2hpdGUsIDAuNSkgc29saWQ7XG4gICAgICAgIGJvcmRlci1sZWZ0OiAxcHggcmdiYSgkd2hpdGUsIDAuNSkgc29saWQ7XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgLy9tYXJnaW4tYm90dG9tOiAwLjVlbTtcbiAgICAgICAgbGkge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKCR3aGl0ZSwgMC41KTtcbiAgICAgICAgICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkIHJnYmEoJHdoaXRlLCAwLjUpO1xuICAgICAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAvIDMpO1xuICAgICAgICB9XG4gICAgICAgIGEge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJGJsYWNrO1xuICAgICAgICAgICAgcGFkZGluZzogMXJlbSAycmVtO1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6ICd2YXJ0YSc7XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxcmVtO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkcmVkO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIHVsLmxhcmdlLTgge1xuICAgICAgICBsaSB7XG4gICAgICAgICAgICB3aWR0aDogY2FsYygxMDAlIC8gMik7XG4gICAgICAgIH1cbiAgICB9XG4gICAgdWwubGFyZ2UtNCB7XG4gICAgICAgIGxpIHtcbiAgICAgICAgICAgIHdpZHRoOiBjYWxjKDEwMCUpO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4jY2hhcHRlcnNTbGlkZSB7XG4gICAgLnNsaWNrLXRyYWNrIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICB9XG4gICAgLmNhcmQtZXhwbyB7XG4gICAgICAgIGZpZ2NhcHRpb24ge1xuICAgICAgICAgICAgZm9udC1zaXplOiAwLjc1cmVtO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4ubm9wb2ludCB7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG5cbiN0aGVtSGVhZGVyIHtcbiAgICAucGVybWFsaW5rcyB7XG4gICAgICAgIGEuY2l0ZXVybCB7XG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRibGFjaztcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDZweDtcbiAgICAgICAgfVxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMXJlbTtcbiAgICAgICAgcmlnaHQ6IDFyZW07XG4gICAgfVxufVxuXG4uaW1nLWF1ZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbn1cblxuLy92aWRlbyB0cmFjayBsaXN0XG4udHJhY2tsaXN0IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW46IDFyZW0gMDtcbiAgICBjb3VudGVyLXJlc2V0OiBudW07XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBwIHtcbiAgICAgICAgY291bnRlci1pbmNyZW1lbnQ6IG51bTtcbiAgICAgICAgZGlzcGxheTogbGlzdC1pdGVtO1xuICAgICAgICBmb250LXNpemU6IDAuNzVyZW07XG4gICAgICAgIG1hcmdpbjogMCAwLjVyZW07XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA2cHg7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgY29udGVudDogY291bnRlcihudW0pJykgJztcbiAgICAgICAgfVxuICAgIH1cbn0iLCIvKlxuICogRmx5aW5nIHNsaWNrIHBsdWdpbiBzdHlsZXNoZWV0c1xuICovXG4uZmx5aW5nc2xpY2stb3ZlcmxheXtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgdG9wOiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGhlaWdodDogMTAwdmg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkYmxhY2ssIDAuOSk7XG4gICAgei1pbmRleDogMzAwMDtcbiAgICBiYWNrZHJvcC1maWx0ZXI6IGJsdXIoNXB4KTtcbiAgICBkaXNwbGF5OmZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuICAgIC5mbHlpbmdzbGljay1jbG9zZXtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDFyZW07XG4gICAgICAgIHJpZ2h0OiAxcmVtO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDEuNXJlbTtcbiAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIHotaW5kZXg6IDMwMDtcblxuICAgICAgICAmOjphZnRlcntcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXFxlOTFkXCI7XG4gICAgICAgICAgICBmb250LWZhbWlseTogJ2ljb21vb24nO1xuICAgICAgICAgICAgZm9udC1zaXplOiAyLjVyZW07XG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogMC4ycztcbiAgICAgICAgfVxuXG4gICAgICAgICY6aG92ZXJ7XG4gICAgICAgICAgICAmOjphZnRlcntcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDNyZW07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5mbHlpbmdzbGljay1hbGJ1bXtcbiAgICBmbGV4OiAxIDAgMTAwJTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG5cbiAgICAmLnNsaWNrLXNsaWRlci5zbGljay1pbml0aWFsaXplZHtcbiAgICAgICAgLnNsaWNrLXByZXYsXG4gICAgICAgIC5zbGljay1uZXh0e1xuICAgICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICB0b3A6IGNhbGMoNTAlIC0gMnJlbSk7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB6LWluZGV4OiAyMDtcblxuICAgICAgICAgICAgJjpiZWZvcmV7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjhyZW07XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZXI7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICB0ZXh0LXNoYWRvdzogMHB4IDBweCAxNXB4ICNmZmZmZmY5OTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5zbGljay1wcmV2IHtcbiAgICAgICAgICAgIGxlZnQ6IDJyZW07XG4gICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgY29udGVudDogXCJcXGU5MWNcIjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5zbGljay1uZXh0IHtcbiAgICAgICAgICAgIHJpZ2h0OiAycmVtO1xuICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXFxlOTFiXCI7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuXG4gICAgICAgIC5zbGljay1saXN0e1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cbiAgICAgICAgICAgIC5zbGljay1zbGlkZXtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuICAgICAgICAgICAgICAgIHNwYW57XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDk4JTtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICBvdmVyZmxvdy15OiBzY3JvbGw7XG4gICAgICAgICAgICAgICAgICAgIG1heC1oZWlnaHQ6IDEwMHZoO1xuICAgICAgICAgICAgICAgICAgICAmOjpiZWZvcmV7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50OiBhdHRyKGRhdGEtbmFtZSk7XG4gICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMC43cmVtIDFyZW07XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDAuNjVyZW07XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgICAgICAgICAgICAgICBAbWVkaWEgI3skbGFyZ2UtdXB9IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwLjhyZW0gMS4ycmVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgaW1ne2Rpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCA1MDBtcyBlYXNlO1xuICAgICAgICAgICAgICAgICAgICAgICAgLy9oZWlnaHQ6IGNhbGMoNjN2dy8yKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAmOm5vdCguc2xpY2stYWN0aXZlKSB7XG4gICAgICAgICAgICAgICAgICAgIGltZ3tcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogY2FsYyg1MHZ3LzIpO1xuICAgICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMC41O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIHNwYW57XG4gICAgICAgICAgICAgICAgICAgICAgJjo6YmVmb3Jle1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuc2xpY2stZG90c3tcbiAgICAgICAgZGlzcGxheTpub25lICFpbXBvcnRhbnQ7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgYm90dG9tOiAxcmVtO1xuICAgICAgICBAbWVkaWEgI3skbWVkaXVtLXVwfSB7XG4gICAgICAgICAgICBib3R0b206IDV2aDtcbiAgICAgICAgfVxuICAgICAgICBAbWVkaWEgI3skbGFyZ2UtdXB9IHtcbiAgICAgICAgICAgIGJvdHRvbTogMTB2aDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgMTUlO1xuICAgICAgICB9XG5cbiAgICAgICAgbGkge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgaGVpZ2h0OiAxNXB4O1xuICAgICAgICAgICAgd2lkdGg6IDE1cHg7XG4gICAgICAgICAgICBtYXJnaW46IDAgMCAzcHg7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgQG1lZGlhICN7JG1lZGl1bS11cH0ge1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMCAwIDVweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJiArIGxpe1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAzcHg7XG4gICAgICAgICAgICAgICAgQG1lZGlhICN7JG1lZGl1bS11cH0ge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogNXB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgYnV0dG9uIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE1cHg7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAwLjVyZW07XG4gICAgICAgICAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwcHggIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGJsYWNrO1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDVyZW07XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJGJsYWNrO1xuXG4gICAgICAgICAgICAgICAgLy8gRGlzYWJsZSB1bnVzZWQgYmVmb3JlXG4gICAgICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDA7XG4gICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAwO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi5zbGljay1hY3RpdmV7XG4gICAgICAgICAgICAgICAgYnV0dG9uIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGJsYWNrO1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICB9XG59XG4iLCIgICAgaHRtbC5pc01vYmlsZSB7XG5cblxuXG5cbiAgICAgICAgICAgIEBtZWRpYVxuICAgICAgICAgICAgb25seSBzY3JlZW4gYW5kICgtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDIpICAgICAgYW5kIChtYXgtd2lkdGg6IDE1MzZweCksXG4gICAgICAgICAgICBvbmx5IHNjcmVlbiBhbmQgKCAgIG1pbi0tbW96LWRldmljZS1waXhlbC1yYXRpbzogMikgICAgICBhbmQgKG1heC13aWR0aDogMTUzNnB4KSxcbiAgICAgICAgICAgIG9ubHkgc2NyZWVuIGFuZCAoICAgICAtby1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAyLzEpICAgIGFuZCAobWF4LXdpZHRoOiAxNTM2cHgpLFxuICAgICAgICAgICAgb25seSBzY3JlZW4gYW5kICggICAgICAgIG1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDIpICAgICAgYW5kIChtYXgtd2lkdGg6IDE1MzZweCksXG4gICAgICAgICAgICBvbmx5IHNjcmVlbiBhbmQgKCAgICAgICAgICAgICAgICBtaW4tcmVzb2x1dGlvbjogMTkyZHBpKSBhbmQgKG1heC13aWR0aDogMTUzNnB4KSxcbiAgICAgICAgICAgIG9ubHkgc2NyZWVuIGFuZCAoICAgICAgICAgICAgICAgIG1pbi1yZXNvbHV0aW9uOiAyZHBweCkgIGFuZCAobWF4LXdpZHRoOiAxNTM2cHgpIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZToxNjAlO1xuXG4gICAgICAgIH1cbiAgICAgICAgLyogU21hbGwgc2NyZWVuLCByZXRpbmEsIHN0dWZmIHRvIG92ZXJyaWRlIGFib3ZlIG1lZGlhIHF1ZXJ5ICovXG5cblxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChyZXRpbmEpIHtcbiAgICAgICAgLy9mb250LXNpemU6NDAwJTtcblxuXG4gICAgICAgIC5zcXVhcmV7XG4gICAgICAgICAgICBoZWlnaHQ6IDYwcHg7XG4gICAgICAgICAgICB3aWR0aDogNjBweDtcbiAgICAgICAgfVxuICAgICAgICAuZm9vdGVyLWxpbmtzIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB9XG4gICAgfVxufVxuXG5cbi8qXG4gKiBUeXBvZ3JhcGh5IGFuZCBhbGlrZVxuICovXG5cbi8vIERvbnQgdXNlIHRoZSBzYW1lIGZvbnQgd2VpZ2h0IGZvciBiL3N0cm9uZ1xuYntcbiAgICBmb250LXdlaWdodDogNjAwO1xufVxuc3Ryb25ne1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG59XG5cbi8vIHRleHQtKioqIG5hbWUgZm9ybWF0c1xuLnRleHQtdXBwZXJ7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZSAhaW1wb3J0YW50O1xufVxuLnRleHQtaW1wb3J0YW50e1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lICFpbXBvcnRhbnQ7XG59XG5cbi50ZXh0LXRoaW57XG4gICAgZm9udC13ZWlnaHQ6IDMwMCAhaW1wb3J0YW50O1xufVxuLnRleHQtYm9sZHtcbiAgICBmb250LXdlaWdodDogNDAwICFpbXBvcnRhbnQ7XG59XG4udGV4dC1zdHJvbmd7XG4gICAgZm9udC13ZWlnaHQ6IDcwMCAhaW1wb3J0YW50O1xufVxuLnRleHQtc3Ryb25nZXN0e1xuICAgIGZvbnQtd2VpZ2h0OiA5MDAgIWltcG9ydGFudDtcbn1cblxuLy8gVGV4dCBjb2xvcnNcbi50ZXh0LXJlZHtcbiAgICBjb2xvcjogJHJlZCAhaW1wb3J0YW50O1xufVxuLnRleHQtYmxhY2t7XG4gICAgY29sb3I6ICRibGFjayAhaW1wb3J0YW50O1xufVxuLnRleHQtd2hpdGV7XG4gICAgY29sb3I6ICR3aGl0ZSAhaW1wb3J0YW50O1xufVxuXG4vLyBWYXJpb3VzIDxzbWFsbD4gbW9kaWZpZXJcbnNtYWxse1xuICAgICYuc21hbGx7XG4gICAgICAgIGZvbnQtc2l6ZTogNDAlO1xuICAgIH1cbiAgICAmLm1lZGl1bXtcbiAgICAgICAgZm9udC1zaXplOiA2MCU7IC8vZXF1aXZhbGVudCB0byBkZWZhdWx0IDxzbWFsbD4gYmVoYXZpb3JcbiAgICB9XG4gICAgJi5iaWd7XG4gICAgICAgIGZvbnQtc2l6ZTogODAlO1xuICAgIH1cbn1cbmgxIHtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGxpbmUtaGVpZ2h0OiAwLjg7XG59XG5oMSwgaDIsIGgzLCBoNCwgaDUsIGg2e1xuICAgICYudGV4dC10aGlue1xuICAgICAgICBmb250LXdlaWdodDogMTAwICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgICYudGV4dC1ub3JtYWx7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA0MDAgIWltcG9ydGFudDtcbiAgICB9XG4gICAgJi50ZXh0LXN0cm9uZ3tcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMCAhaW1wb3J0YW50O1xuICAgIH1cbn1cblxuLnRpdGxlLTF7XG4gICAgQGV4dGVuZCBoMTtcbn1cbi50aXRsZS0ye1xuICAgIEBleHRlbmQgaDI7XG59XG4udGl0bGUtM3tcbiAgICBAZXh0ZW5kIGgzO1xufVxuLnRpdGxlLTR7XG4gICAgQGV4dGVuZCBoNDtcbn1cbi50aXRsZS01e1xuICAgIEBleHRlbmQgaDU7XG59XG5zcGFuIHtcbiAgICAmLnRpdGxlLTEsJi50aXRsZS0yLCYudGl0bGUtMyAsJi50aXRsZS00ICwmLnRpdGxlLTV7XG5cbiAgICB9XG59XG4vLyA/Pz9cbi5oMyB7XG4gICAgQGV4dGVuZCBoMztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nLWJvdHRvbTogMnJlbTtcbiAgICBwYWRkaW5nLXRvcDogMnJlbTtcbn1cbmg2IHtcbiAgICB0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7XG4gICAgZm9udC13ZWlnaHQ6NjAwO1xufVxuXG4vLyBCaWdnZXIgdGV4dFxuLmJpZzpub3Qoc21hbGwpIHtcbiAgICBmb250LXNpemU6IDEuNHJlbTtcbiAgICBmb250LXdlaWdodDogNjAwO1xufVxuXG4vKmJsb2NrcXVvdGUge1xuICAgIGJvcmRlci1sZWZ0OiAwO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHN2ZyB7XG4gICAgICAgICNibGFjayB7XG4gICAgICAgICAgICBmaWxsOiAjRkZGRkZGO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRjtcbiAgICAgICAgfVxuICAgIH1cbn0qL1xuXG5ociB7XG4gICAgYm9yZGVyLXdpZHRoOiAwcHg7XG4gICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItdG9wOiAwO1xuICAgIGJvcmRlci1ib3R0b206MXB4IHNvbGlkIHJnYmEoJGJsYWNrLDAuNSk7O1xuXG59XG5mb290ZXIge1xuICAgIGhyIHtib3JkZXItY29sb3I6I0ZGRn1cbiAgICAuYnRuLWdyb3VwIHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikgeyBkaXNwbGF5OiBpbmxpbmUtYmxvY2t9XG4gICAgfVxufVxuLmhsaW5lIHtcbiAgICBAaW5jbHVkZSBobGluZTtcbn1cblxuLy8gYmFja2dyb3VuZHNcbi5iYWNrZ3JvdW5kLWJsYWNrIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBibGFjaztcbn1cbi5iYWNrZ3JvdW5kLXdoaXRlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG59XG4ucm91bmRlZCB7XG4gICAgYm9yZGVyLXJhZGl1czo1MCU7XG59XG4uc3F1YXJlIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgaGVpZ2h0OiAzMnB4O1xuICAgIHdpZHRoOjMycHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIC5pY29uIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6NTAlO1xuICAgICAgICBsZWZ0OjUwJTtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNsYXRlKC01MCUsLTUwJSlcbiAgICB9XG59XG4ubWVudS5zb2NpYWwge1xuICAgIGxpIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDowLjVyZW07XG4gICAgICAgIGEge1xuICAgICAgICAgICAgY29sb3I6JHdoaXRlO1xuICAgICAgICB9XG4gICAgfVxufVxuLy8gVW5kZXJsaW5lZCBlbGVtZW50XG4udW5kZXJsaW5le1xuICAgIC8vIEJhc2VcbiAgICAmOmFmdGVye1xuICAgICAgICBjb250ZW50OlwiXCI7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgICBoZWlnaHQ6IHJlbS1jYWxjKDNweCk7XG4gICAgICAgIG1hcmdpbjogMXJlbSAwO1xuICAgICAgICBib3JkZXItYm90dG9tOiByZW0tY2FsYygzcHgpIHNvbGlkICRibGFjaztcbiAgICB9XG5cbiAgICAvLyBPbiBjZW50ZXJlZCB0ZXh0XG4gICAgJi50ZXh0LWNlbnRlcntcbiAgICAgICAgJjphZnRlcntcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gQm9yZGVyIHdlaWdodFxuICAgICYudGhpbntcbiAgICAgICAgJjphZnRlcntcbiAgICAgICAgICAgIGhlaWdodDogcmVtLWNhbGMoMXB4KTtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IHJlbS1jYWxjKDFweCkgc29saWQgJGJsYWNrO1xuICAgICAgICB9XG4gICAgfVxuICAgICYuYm9sZHtcbiAgICAgICAgJjphZnRlcntcbiAgICAgICAgICAgIGhlaWdodDogcmVtLWNhbGMoNXB4KTtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IHJlbS1jYWxjKDVweCkgc29saWQgJGJsYWNrO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gQm9yZGVyIHdpZHRoIHNpemVcbiAgICAmLnRpbnl7XG4gICAgICAgICY6YWZ0ZXJ7XG4gICAgICAgICAgICB3aWR0aDogNSU7XG4gICAgICAgIH1cbiAgICB9XG4gICAgJi5zaG9ydHtcbiAgICAgICAgJjphZnRlcntcbiAgICAgICAgICAgIHdpZHRoOiAxNSU7XG4gICAgICAgIH1cbiAgICB9XG4gICAgJi5ub3JtYWx7XG4gICAgICAgICY6YWZ0ZXJ7XG4gICAgICAgICAgICB3aWR0aDogNDAlO1xuICAgICAgICB9XG4gICAgfVxuICAgICYubGFyZ2V7XG4gICAgICAgICY6YWZ0ZXJ7XG4gICAgICAgICAgICB3aWR0aDogNzAlO1xuICAgICAgICB9XG4gICAgfVxuICAgICYuZnVsbHtcbiAgICAgICAgJjphZnRlcntcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gQm9yZGVyIGRpc3RhbmNlIGZyb20gdGV4dFxuICAgICYuZmFye1xuICAgICAgICAmOmFmdGVye1xuICAgICAgICAgICAgbWFyZ2luOiAycmVtIDA7XG4gICAgICAgIH1cbiAgICAgICAgJi50ZXh0LWNlbnRlcntcbiAgICAgICAgICAgICY6YWZ0ZXJ7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAycmVtIGF1dG87XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgJi5uZWFye1xuICAgICAgICAmOmFmdGVye1xuICAgICAgICAgICAgbWFyZ2luOiAwLjVyZW0gMDtcbiAgICAgICAgfVxuICAgICAgICAmLnRleHQtY2VudGVye1xuICAgICAgICAgICAgJjphZnRlcntcbiAgICAgICAgICAgICAgICBtYXJnaW46IDAuNXJlbSBhdXRvO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgICYuc3RpY2tlZHtcbiAgICAgICAgJjphZnRlcntcbiAgICAgICAgICAgIG1hcmdpbjogMCAwO1xuICAgICAgICB9XG4gICAgICAgICYudGV4dC1jZW50ZXJ7XG4gICAgICAgICAgICAmOmFmdGVye1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4vKlxuICogVmFyaW91cyBtaW5vciBydWxlc1xuICovXG5cbltkYXRhLWxpbmtdIHtcbiAgICAmOmhvdmVyIHtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBjb2xvcjogJHJlZDtcbiAgICB9XG59XG5cbi50b3RhbCB7XG4gICAgd2lkdGg6IDEwMCU7XG59XG5cblxuLmd1dHRlciAsKi5ndXR0ZXJ7XG4gICAgbWFyZ2luOjFyZW07XG59XG4uZnVsbC5ndXR0ZXIge1xuICAgIEBpbmNsdWRlIGNhbGMoJ3dpZHRoJywnMTAwJSAtIDJyZW0nKVxufVxuIiwiQG1lZGlhIHByaW50IHtcbiAgZm9vdGVyLCAuaGVhZGVyLFxuICAjY29udHJvbHNfbGlrZSwgLm1lbnUuc29jaWFsLFxuICBhW3RpdGxlPVwiQ29tcGF0aWJsZSBab3Rlcm9cIl0sXG4gIC5jbXMtdG9vbGJhciwgLmNtcy10b29sYmFyLXRyaWdnZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB9XG59XG4iXSwic291cmNlUm9vdCI6Ii9zb3VyY2UvIn0= */
