@charset "UTF-8";
/*! normalize.css v8.0.0 | MIT License | github.com/necolas/normalize.css */
/* Document
   ========================================================================== */
/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */
html {
  line-height: 1.2;
  /* 1 */
  -webkit-text-size-adjust: 100%;
  /* 2 */
}

/* Sections
   ========================================================================== */
/**
 * Remove the margin in all browsers.
 */
body {
  margin: 0;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */
h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

/* Grouping content
   ========================================================================== */
/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
  box-sizing: content-box;
  /* 1 */
  height: 0;
  /* 1 */
  overflow: visible;
  /* 2 */
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
pre {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */
}

/* Text-level semantics
   ========================================================================== */
/**
 * Remove the gray background on active links in IE 10.
 */
a {
  background-color: transparent;
}

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
  border-bottom: none;
  /* 1 */
  text-decoration: underline;
  /* 2 */
  -webkit-text-decoration: underline dotted;
          text-decoration: underline dotted;
  /* 2 */
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
  font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
samp {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */
}

/**
 * Add the correct font size in all browsers.
 */
small {
  font-size: 80%;
}

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

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* Embedded content
   ========================================================================== */
/**
 * Remove the border on images inside links in IE 10.
 */
img {
  border-style: none;
}

/* Forms
   ========================================================================== */
/**
 * 1. Change the font styles in all browsers.
 * 2. Remove the margin in Firefox and Safari.
 */
button,
input,
optgroup,
select,
textarea {
  font-family: inherit;
  /* 1 */
  font-size: 100%;
  /* 1 */
  line-height: 1.15;
  /* 1 */
  margin: 0;
  /* 2 */
}

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */
button,
input {
  /* 1 */
  overflow: visible;
}

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */
button,
select {
  /* 1 */
  text-transform: none;
}

/**
 * Correct the inability to style clickable types in iOS and Safari.
 */
button,
[type=button],
[type=reset],
[type=submit] {
  -webkit-appearance: button;
}

/**
 * Remove the inner border and padding in Firefox.
 */
button::-moz-focus-inner,
[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

/**
 * Restore the focus styles unset by the previous rule.
 */
button:-moz-focusring,
[type=button]:-moz-focusring,
[type=reset]:-moz-focusring,
[type=submit]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

/**
 * Correct the padding in Firefox.
 */
fieldset {
  padding: 0.35em 0.75em 0.625em;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *    `fieldset` elements in all browsers.
 */
legend {
  box-sizing: border-box;
  /* 1 */
  color: inherit;
  /* 2 */
  display: table;
  /* 1 */
  max-width: 100%;
  /* 1 */
  padding: 0;
  /* 3 */
  white-space: normal;
  /* 1 */
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
  vertical-align: baseline;
}

/**
 * Remove the default vertical scrollbar in IE 10+.
 */
textarea {
  overflow: auto;
}

/**
 * 1. Add the correct box sizing in IE 10.
 * 2. Remove the padding in IE 10.
 */
[type=checkbox],
[type=radio] {
  box-sizing: border-box;
  /* 1 */
  padding: 0;
  /* 2 */
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */
[type=search] {
  -webkit-appearance: textfield;
  /* 1 */
  outline-offset: -2px;
  /* 2 */
}

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */
[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */
::-webkit-file-upload-button {
  -webkit-appearance: button;
  /* 1 */
  font: inherit;
  /* 2 */
}

/* Interactive
   ========================================================================== */
/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */
details {
  display: block;
}

/*
 * Add the correct display in all browsers.
 */
summary {
  display: list-item;
}

/* Misc
   ========================================================================== */
/**
 * Add the correct display in IE 10+.
 */
template {
  display: none;
}

/**
 * Add the correct display in IE 10.
 */
[hidden] {
  display: none;
}

*,
*::after,
*::before {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

:root {
  --reflex-columns: 12;
  --reflex-grid-spacing: 15px;
  --reflex-xs: 576px;
  --reflex-sm: 768px;
  --reflex-md: 992px;
  --reflex-lg: 1200px;
  --reflex-xlg: 1600px;
  --reflex-xxs-max: 575px;
  --reflex-xs-max: 767px;
  --reflex-sm-max: 991px;
  --reflex-md-max: 1199px;
  --reflex-lg-max: 1599px;
}

.container,
.container-full {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  width: 100%;
  margin-right: auto;
  margin-left: auto;
  padding-right: 30px;
  padding-left: 30px;
}
.container .grid,
.container-full .grid {
  margin-right: -15px;
  margin-left: -15px;
}

@media (min-width: 576px) {
  .container {
    max-width: 576px;
  }
}
@media (min-width: 768px) {
  .container {
    max-width: 768px;
  }
}
@media (min-width: 992px) {
  .container {
    max-width: 992px;
  }
}
@media (min-width: 1200px) {
  .container {
    max-width: 1200px;
  }
}
@media (min-width: 1600px) {
  .container {
    max-width: 1600px;
  }
}

.grid {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  display: block;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -ms-flex-wrap: wrap;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  padding: 0;
  margin: 0 auto;
  position: relative;
  letter-spacing: -0.31em;
  *letter-spacing: normal;
  word-spacing: -0.43em;
  list-style-type: none;
}
.grid::before, .grid::after {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  letter-spacing: normal;
  word-spacing: normal;
  white-space: normal;
}

[class*=col-] {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  letter-spacing: normal;
  word-spacing: normal;
  white-space: normal;
  position: relative;
  width: 100%;
  vertical-align: top;
  padding: 15px;
  display: inline-block;
  *display: inline;
  zoom: 1;
}
[class*=col-]::before, [class*=col-]::after {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  letter-spacing: normal;
  word-spacing: normal;
  white-space: normal;
}
[class*=col-] .grid {
  -ms-flex: 1 1 auto;
  -webkit-flex: 1 1 auto;
  flex: 1 1 auto;
  margin: -15px;
}

.col-12 {
  width: 100%;
  *width: 99.9%;
}

.col-11 {
  width: 91.6666666667%;
  *width: 91.5666666667%;
}

.col-10 {
  width: 83.3333333333%;
  *width: 83.2333333333%;
}

.col-9 {
  width: 75%;
  *width: 74.9%;
}

.col-8 {
  width: 66.6666666667%;
  *width: 66.5666666667%;
}

.col-7 {
  width: 58.3333333333%;
  *width: 58.2333333333%;
}

.col-6 {
  width: 50%;
  *width: 49.9%;
}

.col-5 {
  width: 41.6666666667%;
  *width: 41.5666666667%;
}

.col-4 {
  width: 33.3333333333%;
  *width: 33.2333333333%;
}

.col-3 {
  width: 25%;
  *width: 24.9%;
}

.col-2 {
  width: 16.6666666667%;
  *width: 16.5666666667%;
}

.col-1 {
  width: 8.3333333333%;
  *width: 8.2333333333%;
}

@media (min-width: 576px) {
  .col-xs-12 {
    width: 100%;
    *width: 99.9%;
  }

  .col-xs-11 {
    width: 91.6666666667%;
    *width: 91.5666666667%;
  }

  .col-xs-10 {
    width: 83.3333333333%;
    *width: 83.2333333333%;
  }

  .col-xs-9 {
    width: 75%;
    *width: 74.9%;
  }

  .col-xs-8 {
    width: 66.6666666667%;
    *width: 66.5666666667%;
  }

  .col-xs-7 {
    width: 58.3333333333%;
    *width: 58.2333333333%;
  }

  .col-xs-6 {
    width: 50%;
    *width: 49.9%;
  }

  .col-xs-5 {
    width: 41.6666666667%;
    *width: 41.5666666667%;
  }

  .col-xs-4 {
    width: 33.3333333333%;
    *width: 33.2333333333%;
  }

  .col-xs-3 {
    width: 25%;
    *width: 24.9%;
  }

  .col-xs-2 {
    width: 16.6666666667%;
    *width: 16.5666666667%;
  }

  .col-xs-1 {
    width: 8.3333333333%;
    *width: 8.2333333333%;
  }
}
@media (min-width: 768px) {
  .col-sm-12 {
    width: 100%;
    *width: 99.9%;
  }

  .col-sm-11 {
    width: 91.6666666667%;
    *width: 91.5666666667%;
  }

  .col-sm-10 {
    width: 83.3333333333%;
    *width: 83.2333333333%;
  }

  .col-sm-9 {
    width: 75%;
    *width: 74.9%;
  }

  .col-sm-8 {
    width: 66.6666666667%;
    *width: 66.5666666667%;
  }

  .col-sm-7 {
    width: 58.3333333333%;
    *width: 58.2333333333%;
  }

  .col-sm-6 {
    width: 50%;
    *width: 49.9%;
  }

  .col-sm-5 {
    width: 41.6666666667%;
    *width: 41.5666666667%;
  }

  .col-sm-4 {
    width: 33.3333333333%;
    *width: 33.2333333333%;
  }

  .col-sm-3 {
    width: 25%;
    *width: 24.9%;
  }

  .col-sm-2 {
    width: 16.6666666667%;
    *width: 16.5666666667%;
  }

  .col-sm-1 {
    width: 8.3333333333%;
    *width: 8.2333333333%;
  }
}
@media (min-width: 992px) {
  .col-md-12 {
    width: 100%;
    *width: 99.9%;
  }

  .col-md-11 {
    width: 91.6666666667%;
    *width: 91.5666666667%;
  }

  .col-md-10 {
    width: 83.3333333333%;
    *width: 83.2333333333%;
  }

  .col-md-9 {
    width: 75%;
    *width: 74.9%;
  }

  .col-md-8 {
    width: 66.6666666667%;
    *width: 66.5666666667%;
  }

  .col-md-7 {
    width: 58.3333333333%;
    *width: 58.2333333333%;
  }

  .col-md-6 {
    width: 50%;
    *width: 49.9%;
  }

  .col-md-5 {
    width: 41.6666666667%;
    *width: 41.5666666667%;
  }

  .col-md-4 {
    width: 33.3333333333%;
    *width: 33.2333333333%;
  }

  .col-md-3 {
    width: 25%;
    *width: 24.9%;
  }

  .col-md-2 {
    width: 16.6666666667%;
    *width: 16.5666666667%;
  }

  .col-md-1 {
    width: 8.3333333333%;
    *width: 8.2333333333%;
  }
}
@media (min-width: 1200px) {
  .col-lg-12 {
    width: 100%;
    *width: 99.9%;
  }

  .col-lg-11 {
    width: 91.6666666667%;
    *width: 91.5666666667%;
  }

  .col-lg-10 {
    width: 83.3333333333%;
    *width: 83.2333333333%;
  }

  .col-lg-9 {
    width: 75%;
    *width: 74.9%;
  }

  .col-lg-8 {
    width: 66.6666666667%;
    *width: 66.5666666667%;
  }

  .col-lg-7 {
    width: 58.3333333333%;
    *width: 58.2333333333%;
  }

  .col-lg-6 {
    width: 50%;
    *width: 49.9%;
  }

  .col-lg-5 {
    width: 41.6666666667%;
    *width: 41.5666666667%;
  }

  .col-lg-4 {
    width: 33.3333333333%;
    *width: 33.2333333333%;
  }

  .col-lg-3 {
    width: 25%;
    *width: 24.9%;
  }

  .col-lg-2 {
    width: 16.6666666667%;
    *width: 16.5666666667%;
  }

  .col-lg-1 {
    width: 8.3333333333%;
    *width: 8.2333333333%;
  }
}
@media (min-width: 1600px) {
  .col-xlg-12 {
    width: 100%;
    *width: 99.9%;
  }

  .col-xlg-11 {
    width: 91.6666666667%;
    *width: 91.5666666667%;
  }

  .col-xlg-10 {
    width: 83.3333333333%;
    *width: 83.2333333333%;
  }

  .col-xlg-9 {
    width: 75%;
    *width: 74.9%;
  }

  .col-xlg-8 {
    width: 66.6666666667%;
    *width: 66.5666666667%;
  }

  .col-xlg-7 {
    width: 58.3333333333%;
    *width: 58.2333333333%;
  }

  .col-xlg-6 {
    width: 50%;
    *width: 49.9%;
  }

  .col-xlg-5 {
    width: 41.6666666667%;
    *width: 41.5666666667%;
  }

  .col-xlg-4 {
    width: 33.3333333333%;
    *width: 33.2333333333%;
  }

  .col-xlg-3 {
    width: 25%;
    *width: 24.9%;
  }

  .col-xlg-2 {
    width: 16.6666666667%;
    *width: 16.5666666667%;
  }

  .col-xlg-1 {
    width: 8.3333333333%;
    *width: 8.2333333333%;
  }
}
.col-auto {
  -ms-flex: 1 0 0px;
  -webkit-flex: 1 0 0px;
  flex: 1 0 0px;
  width: auto;
}

@media (min-width: 576px) {
  .col-xs-auto {
    -ms-flex: 1 0 0px;
    -webkit-flex: 1 0 0px;
    flex: 1 0 0px;
    width: auto;
  }
}
@media (min-width: 768px) {
  .col-sm-auto {
    -ms-flex: 1 0 0px;
    -webkit-flex: 1 0 0px;
    flex: 1 0 0px;
    width: auto;
  }
}
@media (min-width: 992px) {
  .col-md-auto {
    -ms-flex: 1 0 0px;
    -webkit-flex: 1 0 0px;
    flex: 1 0 0px;
    width: auto;
  }
}
@media (min-width: 1200px) {
  .col-lg-auto {
    -ms-flex: 1 0 0px;
    -webkit-flex: 1 0 0px;
    flex: 1 0 0px;
    width: auto;
  }
}
@media (min-width: 1600px) {
  .col-xlg-auto {
    -ms-flex: 1 0 0px;
    -webkit-flex: 1 0 0px;
    flex: 1 0 0px;
    width: auto;
  }
}
.order-12 {
  -ms-flex-order: 12;
  -webkit-order: 12;
  order: 12;
}

.order-11 {
  -ms-flex-order: 11;
  -webkit-order: 11;
  order: 11;
}

.order-10 {
  -ms-flex-order: 10;
  -webkit-order: 10;
  order: 10;
}

.order-9 {
  -ms-flex-order: 9;
  -webkit-order: 9;
  order: 9;
}

.order-8 {
  -ms-flex-order: 8;
  -webkit-order: 8;
  order: 8;
}

.order-7 {
  -ms-flex-order: 7;
  -webkit-order: 7;
  order: 7;
}

.order-6 {
  -ms-flex-order: 6;
  -webkit-order: 6;
  order: 6;
}

.order-5 {
  -ms-flex-order: 5;
  -webkit-order: 5;
  order: 5;
}

.order-4 {
  -ms-flex-order: 4;
  -webkit-order: 4;
  order: 4;
}

.order-3 {
  -ms-flex-order: 3;
  -webkit-order: 3;
  order: 3;
}

.order-2 {
  -ms-flex-order: 2;
  -webkit-order: 2;
  order: 2;
}

.order-1 {
  -ms-flex-order: 1;
  -webkit-order: 1;
  order: 1;
}

.order-0 {
  -ms-flex-order: 0;
  -webkit-order: 0;
  order: 0;
}

@media (min-width: 576px) {
  .order-xs-12 {
    -ms-flex-order: 12;
    -webkit-order: 12;
    order: 12;
  }

  .order-xs-11 {
    -ms-flex-order: 11;
    -webkit-order: 11;
    order: 11;
  }

  .order-xs-10 {
    -ms-flex-order: 10;
    -webkit-order: 10;
    order: 10;
  }

  .order-xs-9 {
    -ms-flex-order: 9;
    -webkit-order: 9;
    order: 9;
  }

  .order-xs-8 {
    -ms-flex-order: 8;
    -webkit-order: 8;
    order: 8;
  }

  .order-xs-7 {
    -ms-flex-order: 7;
    -webkit-order: 7;
    order: 7;
  }

  .order-xs-6 {
    -ms-flex-order: 6;
    -webkit-order: 6;
    order: 6;
  }

  .order-xs-5 {
    -ms-flex-order: 5;
    -webkit-order: 5;
    order: 5;
  }

  .order-xs-4 {
    -ms-flex-order: 4;
    -webkit-order: 4;
    order: 4;
  }

  .order-xs-3 {
    -ms-flex-order: 3;
    -webkit-order: 3;
    order: 3;
  }

  .order-xs-2 {
    -ms-flex-order: 2;
    -webkit-order: 2;
    order: 2;
  }

  .order-xs-1 {
    -ms-flex-order: 1;
    -webkit-order: 1;
    order: 1;
  }

  .order-xs-0 {
    -ms-flex-order: 0;
    -webkit-order: 0;
    order: 0;
  }
}
@media (min-width: 768px) {
  .order-sm-12 {
    -ms-flex-order: 12;
    -webkit-order: 12;
    order: 12;
  }

  .order-sm-11 {
    -ms-flex-order: 11;
    -webkit-order: 11;
    order: 11;
  }

  .order-sm-10 {
    -ms-flex-order: 10;
    -webkit-order: 10;
    order: 10;
  }

  .order-sm-9 {
    -ms-flex-order: 9;
    -webkit-order: 9;
    order: 9;
  }

  .order-sm-8 {
    -ms-flex-order: 8;
    -webkit-order: 8;
    order: 8;
  }

  .order-sm-7 {
    -ms-flex-order: 7;
    -webkit-order: 7;
    order: 7;
  }

  .order-sm-6 {
    -ms-flex-order: 6;
    -webkit-order: 6;
    order: 6;
  }

  .order-sm-5 {
    -ms-flex-order: 5;
    -webkit-order: 5;
    order: 5;
  }

  .order-sm-4 {
    -ms-flex-order: 4;
    -webkit-order: 4;
    order: 4;
  }

  .order-sm-3 {
    -ms-flex-order: 3;
    -webkit-order: 3;
    order: 3;
  }

  .order-sm-2 {
    -ms-flex-order: 2;
    -webkit-order: 2;
    order: 2;
  }

  .order-sm-1 {
    -ms-flex-order: 1;
    -webkit-order: 1;
    order: 1;
  }

  .order-sm-0 {
    -ms-flex-order: 0;
    -webkit-order: 0;
    order: 0;
  }
}
@media (min-width: 992px) {
  .order-md-12 {
    -ms-flex-order: 12;
    -webkit-order: 12;
    order: 12;
  }

  .order-md-11 {
    -ms-flex-order: 11;
    -webkit-order: 11;
    order: 11;
  }

  .order-md-10 {
    -ms-flex-order: 10;
    -webkit-order: 10;
    order: 10;
  }

  .order-md-9 {
    -ms-flex-order: 9;
    -webkit-order: 9;
    order: 9;
  }

  .order-md-8 {
    -ms-flex-order: 8;
    -webkit-order: 8;
    order: 8;
  }

  .order-md-7 {
    -ms-flex-order: 7;
    -webkit-order: 7;
    order: 7;
  }

  .order-md-6 {
    -ms-flex-order: 6;
    -webkit-order: 6;
    order: 6;
  }

  .order-md-5 {
    -ms-flex-order: 5;
    -webkit-order: 5;
    order: 5;
  }

  .order-md-4 {
    -ms-flex-order: 4;
    -webkit-order: 4;
    order: 4;
  }

  .order-md-3 {
    -ms-flex-order: 3;
    -webkit-order: 3;
    order: 3;
  }

  .order-md-2 {
    -ms-flex-order: 2;
    -webkit-order: 2;
    order: 2;
  }

  .order-md-1 {
    -ms-flex-order: 1;
    -webkit-order: 1;
    order: 1;
  }

  .order-md-0 {
    -ms-flex-order: 0;
    -webkit-order: 0;
    order: 0;
  }
}
@media (min-width: 1200px) {
  .order-lg-12 {
    -ms-flex-order: 12;
    -webkit-order: 12;
    order: 12;
  }

  .order-lg-11 {
    -ms-flex-order: 11;
    -webkit-order: 11;
    order: 11;
  }

  .order-lg-10 {
    -ms-flex-order: 10;
    -webkit-order: 10;
    order: 10;
  }

  .order-lg-9 {
    -ms-flex-order: 9;
    -webkit-order: 9;
    order: 9;
  }

  .order-lg-8 {
    -ms-flex-order: 8;
    -webkit-order: 8;
    order: 8;
  }

  .order-lg-7 {
    -ms-flex-order: 7;
    -webkit-order: 7;
    order: 7;
  }

  .order-lg-6 {
    -ms-flex-order: 6;
    -webkit-order: 6;
    order: 6;
  }

  .order-lg-5 {
    -ms-flex-order: 5;
    -webkit-order: 5;
    order: 5;
  }

  .order-lg-4 {
    -ms-flex-order: 4;
    -webkit-order: 4;
    order: 4;
  }

  .order-lg-3 {
    -ms-flex-order: 3;
    -webkit-order: 3;
    order: 3;
  }

  .order-lg-2 {
    -ms-flex-order: 2;
    -webkit-order: 2;
    order: 2;
  }

  .order-lg-1 {
    -ms-flex-order: 1;
    -webkit-order: 1;
    order: 1;
  }

  .order-lg-0 {
    -ms-flex-order: 0;
    -webkit-order: 0;
    order: 0;
  }
}
@media (min-width: 1600px) {
  .order-xlg-12 {
    -ms-flex-order: 12;
    -webkit-order: 12;
    order: 12;
  }

  .order-xlg-11 {
    -ms-flex-order: 11;
    -webkit-order: 11;
    order: 11;
  }

  .order-xlg-10 {
    -ms-flex-order: 10;
    -webkit-order: 10;
    order: 10;
  }

  .order-xlg-9 {
    -ms-flex-order: 9;
    -webkit-order: 9;
    order: 9;
  }

  .order-xlg-8 {
    -ms-flex-order: 8;
    -webkit-order: 8;
    order: 8;
  }

  .order-xlg-7 {
    -ms-flex-order: 7;
    -webkit-order: 7;
    order: 7;
  }

  .order-xlg-6 {
    -ms-flex-order: 6;
    -webkit-order: 6;
    order: 6;
  }

  .order-xlg-5 {
    -ms-flex-order: 5;
    -webkit-order: 5;
    order: 5;
  }

  .order-xlg-4 {
    -ms-flex-order: 4;
    -webkit-order: 4;
    order: 4;
  }

  .order-xlg-3 {
    -ms-flex-order: 3;
    -webkit-order: 3;
    order: 3;
  }

  .order-xlg-2 {
    -ms-flex-order: 2;
    -webkit-order: 2;
    order: 2;
  }

  .order-xlg-1 {
    -ms-flex-order: 1;
    -webkit-order: 1;
    order: 1;
  }

  .order-xlg-0 {
    -ms-flex-order: 0;
    -webkit-order: 0;
    order: 0;
  }
}
.offset-11 {
  margin-left: 91.6666666667%;
  *margin-left: 91.5666666667%;
}

.offset-10 {
  margin-left: 83.3333333333%;
  *margin-left: 83.2333333333%;
}

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

.offset-8 {
  margin-left: 66.6666666667%;
  *margin-left: 66.5666666667%;
}

.offset-7 {
  margin-left: 58.3333333333%;
  *margin-left: 58.2333333333%;
}

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

.offset-5 {
  margin-left: 41.6666666667%;
  *margin-left: 41.5666666667%;
}

.offset-4 {
  margin-left: 33.3333333333%;
  *margin-left: 33.2333333333%;
}

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

.offset-2 {
  margin-left: 16.6666666667%;
  *margin-left: 16.5666666667%;
}

.offset-1 {
  margin-left: 8.3333333333%;
  *margin-left: 8.2333333333%;
}

@media (min-width: 576px) {
  .offset-xs-11 {
    margin-left: 91.6666666667%;
    *margin-left: 91.5666666667%;
  }

  .offset-xs-10 {
    margin-left: 83.3333333333%;
    *margin-left: 83.2333333333%;
  }

  .offset-xs-9 {
    margin-left: 75%;
    *margin-left: 74.9%;
  }

  .offset-xs-8 {
    margin-left: 66.6666666667%;
    *margin-left: 66.5666666667%;
  }

  .offset-xs-7 {
    margin-left: 58.3333333333%;
    *margin-left: 58.2333333333%;
  }

  .offset-xs-6 {
    margin-left: 50%;
    *margin-left: 49.9%;
  }

  .offset-xs-5 {
    margin-left: 41.6666666667%;
    *margin-left: 41.5666666667%;
  }

  .offset-xs-4 {
    margin-left: 33.3333333333%;
    *margin-left: 33.2333333333%;
  }

  .offset-xs-3 {
    margin-left: 25%;
    *margin-left: 24.9%;
  }

  .offset-xs-2 {
    margin-left: 16.6666666667%;
    *margin-left: 16.5666666667%;
  }

  .offset-xs-1 {
    margin-left: 8.3333333333%;
    *margin-left: 8.2333333333%;
  }

  .offset-xs-0 {
    margin-left: 0;
    *margin-left: -0.1%;
  }
}
@media (min-width: 768px) {
  .offset-sm-11 {
    margin-left: 91.6666666667%;
    *margin-left: 91.5666666667%;
  }

  .offset-sm-10 {
    margin-left: 83.3333333333%;
    *margin-left: 83.2333333333%;
  }

  .offset-sm-9 {
    margin-left: 75%;
    *margin-left: 74.9%;
  }

  .offset-sm-8 {
    margin-left: 66.6666666667%;
    *margin-left: 66.5666666667%;
  }

  .offset-sm-7 {
    margin-left: 58.3333333333%;
    *margin-left: 58.2333333333%;
  }

  .offset-sm-6 {
    margin-left: 50%;
    *margin-left: 49.9%;
  }

  .offset-sm-5 {
    margin-left: 41.6666666667%;
    *margin-left: 41.5666666667%;
  }

  .offset-sm-4 {
    margin-left: 33.3333333333%;
    *margin-left: 33.2333333333%;
  }

  .offset-sm-3 {
    margin-left: 25%;
    *margin-left: 24.9%;
  }

  .offset-sm-2 {
    margin-left: 16.6666666667%;
    *margin-left: 16.5666666667%;
  }

  .offset-sm-1 {
    margin-left: 8.3333333333%;
    *margin-left: 8.2333333333%;
  }

  .offset-sm-0 {
    margin-left: 0;
    *margin-left: -0.1%;
  }
}
@media (min-width: 992px) {
  .offset-md-11 {
    margin-left: 91.6666666667%;
    *margin-left: 91.5666666667%;
  }

  .offset-md-10 {
    margin-left: 83.3333333333%;
    *margin-left: 83.2333333333%;
  }

  .offset-md-9 {
    margin-left: 75%;
    *margin-left: 74.9%;
  }

  .offset-md-8 {
    margin-left: 66.6666666667%;
    *margin-left: 66.5666666667%;
  }

  .offset-md-7 {
    margin-left: 58.3333333333%;
    *margin-left: 58.2333333333%;
  }

  .offset-md-6 {
    margin-left: 50%;
    *margin-left: 49.9%;
  }

  .offset-md-5 {
    margin-left: 41.6666666667%;
    *margin-left: 41.5666666667%;
  }

  .offset-md-4 {
    margin-left: 33.3333333333%;
    *margin-left: 33.2333333333%;
  }

  .offset-md-3 {
    margin-left: 25%;
    *margin-left: 24.9%;
  }

  .offset-md-2 {
    margin-left: 16.6666666667%;
    *margin-left: 16.5666666667%;
  }

  .offset-md-1 {
    margin-left: 8.3333333333%;
    *margin-left: 8.2333333333%;
  }

  .offset-md-0 {
    margin-left: 0;
    *margin-left: -0.1%;
  }
}
@media (min-width: 1200px) {
  .offset-lg-11 {
    margin-left: 91.6666666667%;
    *margin-left: 91.5666666667%;
  }

  .offset-lg-10 {
    margin-left: 83.3333333333%;
    *margin-left: 83.2333333333%;
  }

  .offset-lg-9 {
    margin-left: 75%;
    *margin-left: 74.9%;
  }

  .offset-lg-8 {
    margin-left: 66.6666666667%;
    *margin-left: 66.5666666667%;
  }

  .offset-lg-7 {
    margin-left: 58.3333333333%;
    *margin-left: 58.2333333333%;
  }

  .offset-lg-6 {
    margin-left: 50%;
    *margin-left: 49.9%;
  }

  .offset-lg-5 {
    margin-left: 41.6666666667%;
    *margin-left: 41.5666666667%;
  }

  .offset-lg-4 {
    margin-left: 33.3333333333%;
    *margin-left: 33.2333333333%;
  }

  .offset-lg-3 {
    margin-left: 25%;
    *margin-left: 24.9%;
  }

  .offset-lg-2 {
    margin-left: 16.6666666667%;
    *margin-left: 16.5666666667%;
  }

  .offset-lg-1 {
    margin-left: 8.3333333333%;
    *margin-left: 8.2333333333%;
  }

  .offset-lg-0 {
    margin-left: 0;
    *margin-left: -0.1%;
  }
}
@media (min-width: 1600px) {
  .offset-xlg-11 {
    margin-left: 91.6666666667%;
    *margin-left: 91.5666666667%;
  }

  .offset-xlg-10 {
    margin-left: 83.3333333333%;
    *margin-left: 83.2333333333%;
  }

  .offset-xlg-9 {
    margin-left: 75%;
    *margin-left: 74.9%;
  }

  .offset-xlg-8 {
    margin-left: 66.6666666667%;
    *margin-left: 66.5666666667%;
  }

  .offset-xlg-7 {
    margin-left: 58.3333333333%;
    *margin-left: 58.2333333333%;
  }

  .offset-xlg-6 {
    margin-left: 50%;
    *margin-left: 49.9%;
  }

  .offset-xlg-5 {
    margin-left: 41.6666666667%;
    *margin-left: 41.5666666667%;
  }

  .offset-xlg-4 {
    margin-left: 33.3333333333%;
    *margin-left: 33.2333333333%;
  }

  .offset-xlg-3 {
    margin-left: 25%;
    *margin-left: 24.9%;
  }

  .offset-xlg-2 {
    margin-left: 16.6666666667%;
    *margin-left: 16.5666666667%;
  }

  .offset-xlg-1 {
    margin-left: 8.3333333333%;
    *margin-left: 8.2333333333%;
  }

  .offset-xlg-0 {
    margin-left: 0;
    *margin-left: -0.1%;
  }
}
.wrap {
  -ms-flex-wrap: wrap;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
}

.no-wrap {
  -ms-flex-wrap: nowrap;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap;
}
.no-wrap [class*=col-] {
  -ms-flex-negative: 1;
  -webkit-flex-shrink: 1;
  flex-shrink: 1;
}

.wrap-reverse {
  -ms-flex-wrap: wrap-reverse;
  -webkit-flex-wrap: wrap-reverse;
  flex-wrap: wrap-reverse;
}

.direction-row {
  -ms-flex-direction: row;
  -webkit-flex-direction: row;
  flex-direction: row;
}

.direction-row-reverse {
  -ms-flex-direction: row-reverse;
  -webkit-flex-direction: row-reverse;
  flex-direction: row-reverse;
}

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

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

.align-start {
  -ms-flex-align: start;
  -webkit-align-items: flex-start;
  align-items: flex-start;
}

.align-end {
  -ms-flex-align: end;
  -webkit-align-items: flex-end;
  align-items: flex-end;
}
.align-end [class*=col-] {
  vertical-align: bottom;
}

.align-center {
  -ms-flex-align: center;
  -webkit-align-items: center;
  align-items: center;
}
.align-center [class*=col-] {
  vertical-align: middle;
}

.align-baseline {
  -ms-flex-align: baseline;
  -webkit-align-items: baseline;
  align-items: baseline;
}

.align-content-start {
  -ms-flex-line-pack: start;
  -webkit-align-content: flex-start;
  align-content: flex-start;
}

.align-content-end {
  -ms-flex-line-pack: end;
  -webkit-align-content: flex-end;
  align-content: flex-end;
}
.align-content-end [class*=col-] {
  vertical-align: bottom;
}

.align-content-center {
  -ms-flex-line-pack: center;
  -webkit-align-content: center;
  align-content: center;
}

.align-content-space-between {
  -ms-flex-line-pack: justify;
  -webkit-align-content: space-between;
  align-content: space-between;
}

.align-content-space-around {
  -ms-flex-line-pack: distribute;
  -webkit-align-content: space-around;
  align-content: space-around;
}

.align-self-stretch {
  -ms-flex-item-align: stretch;
  -webkit-align-self: stretch;
  align-self: stretch;
}

.align-self-start {
  -ms-flex-item-align: start;
  -webkit-align-self: flex-start;
  align-self: flex-start;
}

.align-self-end {
  -ms-flex-item-align: end;
  -webkit-align-self: flex-end;
  align-self: flex-end;
  vertical-align: bottom;
}

.align-self-center {
  -ms-flex-item-align: center;
  -webkit-align-self: center;
  align-self: center;
  vertical-align: middle;
}

.align-self-baseline {
  -ms-flex-item-align: baseline;
  -webkit-align-self: baseline;
  align-self: baseline;
  vertical-align: baseline;
}

.justify-start {
  -ms-flex-pack: start;
  -webkit-justify-content: flex-start;
  justify-content: flex-start;
}
.justify-start.grid {
  text-align: left;
}

.justify-end {
  -ms-flex-pack: end;
  -webkit-justify-content: flex-end;
  justify-content: flex-end;
}
.justify-end.grid {
  text-align: right;
  -moz-text-align-last: right;
  text-align-last: right;
}
.justify-end.grid [class*=col-] {
  text-align: left;
  text-align: start;
  -moz-text-align-last: left;
  -moz-text-align-last: start;
  text-align-last: left;
  text-align-last: start;
}

.justify-center {
  -ms-flex-pack: center;
  -webkit-justify-content: center;
  justify-content: center;
}
.justify-center.grid {
  text-align: center;
  -moz-text-align-last: center;
  text-align-last: center;
}
.justify-center.grid [class*=col-] {
  text-align: left;
  text-align: start;
  -moz-text-align-last: left;
  -moz-text-align-last: start;
  text-align-last: left;
  text-align-last: start;
}

.justify-space-between {
  -ms-flex-pack: justify;
  -webkit-justify-content: space-between;
  justify-content: space-between;
}
.justify-space-between.grid {
  text-align: justify;
  -moz-text-align-last: justify;
  text-align-last: justify;
}
.justify-space-between.grid [class*=col-] {
  text-align: left;
  text-align: start;
  -moz-text-align-last: left;
  -moz-text-align-last: start;
  text-align-last: left;
  text-align-last: start;
}

.justify-space-around {
  -ms-flex-pack: distribute;
  -webkit-justify-content: space-around;
  justify-content: space-around;
}
.justify-space-around.grid {
  text-align: justify;
  -moz-text-align-last: justify;
  text-align-last: justify;
}
.justify-space-around.grid [class*=col-] {
  text-align: left;
  text-align: start;
  -moz-text-align-last: left;
  -moz-text-align-last: start;
  text-align-last: left;
  text-align-last: start;
}

.grid-bleed [class*=col-] {
  padding: 0;
}

.col-grid {
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -ms-flex-direction: column;
  -webkit-flex-direction: column;
  flex-direction: column;
}
.col-grid.direction-row {
  -ms-flex-direction: row;
  -webkit-flex-direction: row;
  flex-direction: row;
}

.col-bleed {
  padding: 0;
}

.col-bleed-x {
  padding: 15px 0;
}

.col-bleed-y {
  padding: 0 15px;
}

.flex-img {
  display: block;
  -ms-flex: 0 0 auto;
  -webkit-flex: 0 0 auto;
  flex: 0 0 auto;
  max-width: 100%;
  height: auto;
  width: 100%;
  *width: auto;
}

.flex-footer {
  width: 100%;
  margin-top: auto;
  margin-bottom: 0;
}
.flex-footer > :last-child {
  margin-bottom: 0;
}

@media (min-width: 0px) and (max-width: 575px) {
  .hidden-xxs {
    display: none;
  }
}

@media (min-width: 576px) {
  .hidden-xs-up {
    display: none;
  }
}

@media (max-width: 767px) {
  .hidden-xs-down {
    display: none;
  }
}

@media (min-width: 576px) and (max-width: 767px) {
  .hidden-xs {
    display: none;
  }
}

@media (min-width: 768px) {
  .hidden-sm-up {
    display: none;
  }
}

@media (max-width: 991px) {
  .hidden-sm-down {
    display: none;
  }
}

@media (min-width: 768px) and (max-width: 991px) {
  .hidden-sm {
    display: none;
  }
}

@media (min-width: 992px) {
  .hidden-md-up {
    display: none;
  }
}

@media (max-width: 1199px) {
  .hidden-md-down {
    display: none;
  }
}

@media (min-width: 992px) and (max-width: 1199px) {
  .hidden-md {
    display: none;
  }
}

@media (min-width: 1200px) {
  .hidden-lg-up {
    display: none;
  }
}

@media (max-width: 1599px) {
  .hidden-lg-down {
    display: none;
  }
}

@media (min-width: 1200px) and (max-width: 1599px) {
  .hidden-lg {
    display: none;
  }
}

@media (min-width: 1600px) {
  .hidden-xlg {
    display: none;
  }
}

/* --- Media queries --- */
/**
 * Focus Visible
 * https://github.com/WICG/focus-visible
 * Override base focus styles for mouse and touch interactions
 */
/* --- Fonts --- */
@font-face {
  font-family: "montserratregular";
  src: url("../fonts/montserrat-regular-webfont.woff2") format("woff2"), url("../fonts/montserrat-regular-webfont.woff") format("woff");
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: "montserratsemibold";
  src: url("../fonts/montserrat-semibold-webfont.woff2") format("woff2"), url("../fonts/montserrat-semibold-webfont.woff") format("woff");
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: "montserratitalic";
  src: url("../fonts/montserrat-regularitalic-webfont.woff2") format("woff2"), url("../fonts/montserrat-regularitalic-webfont.woff") format("woff");
  font-weight: normal;
  font-style: normal;
}
em {
  font-family: "montserratitalic";
}

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

@keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@-webkit-keyframes fadeOut {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
@keyframes fadeOut {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
/*!
 * baguetteBox.js
 * @author  feimosi
 * @version %%INJECT_VERSION%%
 * @url https://github.com/feimosi/baguetteBox.js
 */
#baguetteBox-overlay {
  display: none;
  opacity: 0;
  position: fixed;
  overflow: hidden;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1000000;
  background-color: #222;
  background-color: rgba(0, 0, 0, 0.8);
  transition: opacity 0.5s ease;
}
#baguetteBox-overlay.visible {
  opacity: 1;
}
#baguetteBox-overlay .full-image {
  display: inline-block;
  position: relative;
  width: 100%;
  height: 100%;
  text-align: center;
}
#baguetteBox-overlay .full-image figure {
  display: inline;
  margin: 0;
  height: 100%;
}
#baguetteBox-overlay .full-image img {
  display: inline-block;
  width: auto;
  height: auto;
  max-height: 100%;
  max-width: 100%;
  vertical-align: middle;
  box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
}
#baguetteBox-overlay .full-image figcaption {
  display: block;
  position: absolute;
  bottom: 0;
  width: 100%;
  text-align: center;
  line-height: 1.8;
  white-space: normal;
  color: #ccc;
  background-color: #000;
  background-color: rgba(0, 0, 0, 0.6);
  font-family: sans-serif;
}
#baguetteBox-overlay .full-image:before {
  content: "";
  display: inline-block;
  height: 50%;
  width: 1px;
  margin-right: -1px;
}

#baguetteBox-slider {
  position: absolute;
  left: 0;
  top: 0;
  height: 100%;
  width: 100%;
  white-space: nowrap;
  transition: left 0.4s ease, transform 0.4s ease;
}
#baguetteBox-slider.bounce-from-right {
  -webkit-animation: bounceFromRight 0.4s ease-out;
          animation: bounceFromRight 0.4s ease-out;
}
#baguetteBox-slider.bounce-from-left {
  -webkit-animation: bounceFromLeft 0.4s ease-out;
          animation: bounceFromLeft 0.4s ease-out;
}

@-webkit-keyframes bounceFromRight {
  0% {
    margin-left: 0;
  }
  50% {
    margin-left: -30px;
  }
  100% {
    margin-left: 0;
  }
}

@keyframes bounceFromRight {
  0% {
    margin-left: 0;
  }
  50% {
    margin-left: -30px;
  }
  100% {
    margin-left: 0;
  }
}
@-webkit-keyframes bounceFromLeft {
  0% {
    margin-left: 0;
  }
  50% {
    margin-left: 30px;
  }
  100% {
    margin-left: 0;
  }
}
@keyframes bounceFromLeft {
  0% {
    margin-left: 0;
  }
  50% {
    margin-left: 30px;
  }
  100% {
    margin-left: 0;
  }
}
.baguetteBox-button#previous-button, .baguetteBox-button#next-button {
  top: 50%;
  top: calc(50% - 30px);
  width: 44px;
  height: 60px;
}

.baguetteBox-button {
  position: absolute;
  cursor: pointer;
  outline: none;
  padding: 0;
  margin: 0;
  border: 0;
  border-radius: 15%;
  background-color: #323232;
  background-color: rgba(50, 50, 50, 0.5);
  color: #ddd;
  font: 1.6em sans-serif;
  transition: background-color 0.4s ease;
}
.baguetteBox-button:focus, .baguetteBox-button:hover {
  background-color: rgba(50, 50, 50, 0.9);
}
.baguetteBox-button#next-button {
  right: 2%;
}
.baguetteBox-button#previous-button {
  left: 2%;
}
.baguetteBox-button#close-button {
  top: 20px;
  right: 2%;
  right: calc(2% + 6px);
  width: 30px;
  height: 30px;
}
.baguetteBox-button svg {
  position: absolute;
  left: 0;
  top: 0;
}

/*
    Preloader
    Borrowed from http://tobiasahlin.com/spinkit/
*/
.baguetteBox-spinner {
  width: 40px;
  height: 40px;
  display: inline-block;
  position: absolute;
  top: 50%;
  left: 50%;
  margin-top: -20px;
  margin-left: -20px;
}

.baguetteBox-double-bounce1,
.baguetteBox-double-bounce2 {
  width: 100%;
  height: 100%;
  border-radius: 50%;
  background-color: #fff;
  opacity: 0.6;
  position: absolute;
  top: 0;
  left: 0;
  -webkit-animation: bounce 2s infinite ease-in-out;
          animation: bounce 2s infinite ease-in-out;
}

.baguetteBox-double-bounce2 {
  -webkit-animation-delay: -1s;
          animation-delay: -1s;
}

@-webkit-keyframes bounce {
  0%, 100% {
    transform: scale(0);
  }
  50% {
    transform: scale(1);
  }
}

@keyframes bounce {
  0%, 100% {
    transform: scale(0);
  }
  50% {
    transform: scale(1);
  }
}
/*===============================
=            Choices            =
===============================*/
.choices {
  position: relative;
  margin-bottom: 24px;
  font-size: 16px;
}
.choices:focus {
  outline: none;
}
.choices:last-child {
  margin-bottom: 0;
}
.choices.is-disabled .choices__inner, .choices.is-disabled .choices__input {
  background-color: #EAEAEA;
  cursor: not-allowed;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
}
.choices.is-disabled .choices__item {
  cursor: not-allowed;
}

.choices[data-type*=select-one] {
  cursor: pointer;
}
.choices[data-type*=select-one] .choices__inner {
  padding-bottom: 7.5px;
}
.choices[data-type*=select-one] .choices__input {
  display: block;
  width: 100%;
  padding: 10px;
  border-bottom: 1px solid #DDDDDD;
  background-color: #FFFFFF;
  margin: 0;
}
.choices[data-type*=select-one] .choices__button {
  background-image: url("../../icons/cross-inverse.svg");
  padding: 0;
  background-size: 8px;
  height: 100%;
  position: absolute;
  top: 50%;
  right: 0;
  margin-top: -10px;
  margin-right: 25px;
  height: 20px;
  width: 20px;
  border-radius: 10em;
  opacity: 0.5;
}
.choices[data-type*=select-one] .choices__button:hover, .choices[data-type*=select-one] .choices__button:focus {
  opacity: 1;
}
.choices[data-type*=select-one] .choices__button:focus {
  box-shadow: 0px 0px 0px 2px #00BCD4;
}
.choices[data-type*=select-one]:after {
  content: "";
  height: 0;
  width: 0;
  border-style: solid;
  border-color: #333333 transparent transparent transparent;
  border-width: 5px;
  position: absolute;
  right: 11.5px;
  top: 50%;
  margin-top: -2.5px;
  pointer-events: none;
}
.choices[data-type*=select-one].is-open:after {
  border-color: transparent transparent #333333 transparent;
  margin-top: -7.5px;
}
.choices[data-type*=select-one][dir=rtl]:after {
  left: 11.5px;
  right: auto;
}
.choices[data-type*=select-one][dir=rtl] .choices__button {
  right: auto;
  left: 0;
  margin-left: 25px;
  margin-right: 0;
}

.choices[data-type*=select-multiple] .choices__inner, .choices[data-type*=text] .choices__inner {
  cursor: text;
}
.choices[data-type*=select-multiple] .choices__button, .choices[data-type*=text] .choices__button {
  position: relative;
  display: inline-block;
  margin-top: 0;
  margin-right: -4px;
  margin-bottom: 0;
  margin-left: 8px;
  padding-left: 16px;
  border-left: 1px solid #008fa1;
  background-image: url("../../icons/cross.svg");
  background-size: 8px;
  width: 8px;
  line-height: 1;
  opacity: 0.75;
}
.choices[data-type*=select-multiple] .choices__button:hover, .choices[data-type*=select-multiple] .choices__button:focus, .choices[data-type*=text] .choices__button:hover, .choices[data-type*=text] .choices__button:focus {
  opacity: 1;
}

.choices__inner {
  display: inline-block;
  vertical-align: top;
  width: 100%;
  background-color: #f9f9f9;
  padding: 7.5px 7.5px 3.75px;
  border: 1px solid #DDDDDD;
  border-radius: 2.5px;
  font-size: 14px;
  min-height: 44px;
  overflow: hidden;
}
.is-focused .choices__inner, .is-open .choices__inner {
  border-color: #b7b7b7;
}
.is-open .choices__inner {
  border-radius: 2.5px 2.5px 0 0;
}
.is-flipped.is-open .choices__inner {
  border-radius: 0 0 2.5px 2.5px;
}

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

.choices__list--single {
  display: inline-block;
  padding: 4px 16px 4px 4px;
  width: 100%;
}
[dir=rtl] .choices__list--single {
  padding-right: 4px;
  padding-left: 16px;
}
.choices__list--single .choices__item {
  width: 100%;
}

.choices__list--multiple {
  display: inline;
}
.choices__list--multiple .choices__item {
  display: inline-block;
  vertical-align: middle;
  border-radius: 20px;
  padding: 4px 10px;
  font-size: 12px;
  font-weight: 500;
  margin-right: 3.75px;
  margin-bottom: 3.75px;
  background-color: #00BCD4;
  border: 1px solid #00a5bb;
  color: #FFFFFF;
  word-break: break-all;
}
.choices__list--multiple .choices__item[data-deletable] {
  padding-right: 5px;
}
[dir=rtl] .choices__list--multiple .choices__item {
  margin-right: 0;
  margin-left: 3.75px;
}
.choices__list--multiple .choices__item.is-highlighted {
  background-color: #00a5bb;
  border: 1px solid #008fa1;
}
.is-disabled .choices__list--multiple .choices__item {
  background-color: #aaaaaa;
  border: 1px solid #919191;
}

.choices__list--dropdown {
  display: none;
  z-index: 1;
  position: absolute;
  width: 100%;
  background-color: #FFFFFF;
  border: 1px solid #DDDDDD;
  top: 100%;
  margin-top: -1px;
  border-bottom-left-radius: 2.5px;
  border-bottom-right-radius: 2.5px;
  overflow: hidden;
  word-break: break-all;
}
.choices__list--dropdown.is-active {
  display: block;
}
.is-open .choices__list--dropdown {
  border-color: #b7b7b7;
}
.is-flipped .choices__list--dropdown {
  top: auto;
  bottom: 100%;
  margin-top: 0;
  margin-bottom: -1px;
  border-radius: 0.25rem 0.25rem 0 0;
}
.choices__list--dropdown .choices__list {
  position: relative;
  max-height: 300px;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
  will-change: scroll-position;
}
.choices__list--dropdown .choices__item {
  position: relative;
  padding: 10px;
  font-size: 14px;
}
[dir=rtl] .choices__list--dropdown .choices__item {
  text-align: right;
}
@media (min-width: 640px) {
  .choices__list--dropdown .choices__item--selectable {
    padding-right: 100px;
  }
  .choices__list--dropdown .choices__item--selectable:after {
    content: attr(data-select-text);
    font-size: 12px;
    opacity: 0;
    position: absolute;
    right: 10px;
    top: 50%;
    transform: translateY(-50%);
  }
  [dir=rtl] .choices__list--dropdown .choices__item--selectable {
    text-align: right;
    padding-left: 100px;
    padding-right: 10px;
  }
  [dir=rtl] .choices__list--dropdown .choices__item--selectable:after {
    right: auto;
    left: 10px;
  }
}
.choices__list--dropdown .choices__item--selectable.is-highlighted {
  background-color: #f2f2f2;
}
.choices__list--dropdown .choices__item--selectable.is-highlighted:after {
  opacity: 0.5;
}

.choices__item {
  cursor: default;
}

.choices__item--selectable {
  cursor: pointer;
}

.choices__item--disabled {
  cursor: not-allowed;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  opacity: 0.5;
}

.choices__heading {
  font-weight: 600;
  font-size: 12px;
  padding: 10px;
  border-bottom: 1px solid #f7f7f7;
  color: gray;
}

.choices__button {
  text-indent: -9999px;
  -webkit-appearance: none;
  -moz-appearance: none;
       appearance: none;
  border: 0;
  background-color: transparent;
  background-repeat: no-repeat;
  background-position: center;
  cursor: pointer;
}
.choices__button:focus {
  outline: none;
}

.choices__input {
  display: inline-block;
  vertical-align: baseline;
  background-color: #f9f9f9;
  font-size: 14px;
  margin-bottom: 5px;
  border: 0;
  border-radius: 0;
  max-width: 100%;
  padding: 4px 0 4px 2px;
}
.choices__input:focus {
  outline: 0;
}
[dir=rtl] .choices__input {
  padding-right: 2px;
  padding-left: 0;
}

.choices__placeholder {
  opacity: 0.5;
}

/*=====  End of Choices  ======*/
.grid {
  max-width: 1848px;
}
@media (min-width: 370px) {
  .grid--xxs-reverse {
    flex-direction: row-reverse;
  }
}
@media (min-width: 576px) {
  .grid--xs-reverse {
    flex-direction: row-reverse;
  }
}
@media (min-width: 768px) {
  .grid--sm-reverse {
    flex-direction: row-reverse;
  }
}
@media (min-width: 992px) {
  .grid--md-reverse {
    flex-direction: row-reverse;
  }
}
@media (min-width: 1200px) {
  .grid--lg-reverse {
    flex-direction: row-reverse;
  }
}
@media (min-width: 1600px) {
  .grid--xlg-reverse {
    flex-direction: row-reverse;
  }
}
@media (min-width: 1848px) {
  .grid--page-reverse {
    flex-direction: row-reverse;
  }
}
@media (min-width: 992px) and (max-width: 1199px) {
  .grid--page {
    padding: 0 30px;
  }
}

.col--center {
  margin-left: auto;
  margin-right: auto;
}

.container-full > .grid {
  max-width: none;
}

@media (max-width: 991px) {
  .container-full {
    padding: 0 15px;
  }
}
.matchheight > * {
  height: 100%;
}

body,
html {
  font-family: "montserratregular", arial, sans-serif;
  font-size: 18px;
  line-height: 32px;
  color: #12212b;
}

body {
  background-position: center center;
  background-repeat: no-repeat;
  background-size: contain;
  background-image: url("../img/background-hf.svg");
  background-position: 0 50%;
  background-size: 100%;
  -moz-font-smoothing: grayscale;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
}

::-moz-selection {
  background-color: #12212b;
  color: #fff;
}

::selection {
  background-color: #12212b;
  color: #fff;
}

h1,
.h1,
h2,
.h2,
h3,
.h3,
h4,
.h4,
h5,
.h5,
h6,
.h6 {
  font-family: "montserratsemibold", sans-serif;
  font-weight: 400;
  margin: 0 0 15px;
}
h1 span,
.h1 span,
h2 span,
.h2 span,
h3 span,
.h3 span,
h4 span,
.h4 span,
h5 span,
.h5 span,
h6 span,
.h6 span {
  font-family: "montserratregular", arial, sans-serif;
  font-size: 18px;
  line-height: 32px;
  font-size: inherit;
  line-height: inherit;
}

.featured {
  font-size: 123px;
  line-height: 133px;
  letter-spacing: -4px;
}
@media (max-width: 1199px) {
  .featured {
    font-size: 83px;
    line-height: 93px;
  }
}
.h1,
h1 {
  font-size: 76px;
  line-height: 86px;
  letter-spacing: -3px;
}
@media (max-width: 767px) {
  .h1,
h1 {
    font-size: 47px;
    line-height: 57px;
    letter-spacing: -2px;
  }
}

.h2,
h2 {
  font-size: 47px;
  line-height: 57px;
  letter-spacing: -2px;
}
@media (max-width: 767px) {
  .h2,
h2 {
    font-size: 35px;
    line-height: 45px;
    letter-spacing: -1px;
  }
}

.h3,
h3 {
  font-size: 29px;
  line-height: 39px;
  letter-spacing: -1px;
}

.h4,
h4 {
  font-size: 18px;
  line-height: 28px;
  letter-spacing: -0.5px;
}

p {
  margin-top: 0;
}
p:last-child {
  margin: 0;
}

.text-centered {
  text-align: center;
  -moz-text-align-last: center;
       text-align-last: center;
}

strong {
  font-family: "montserratsemibold", sans-serif;
  font-weight: normal;
}

em {
  font-style: italic;
}

small {
  font-size: 90%;
}

a {
  font-family: "montserratsemibold", sans-serif;
  font-weight: normal;
  text-decoration: none;
  transition: all 0.2s cubic-bezier(0.64, 0.04, 0.35, 1);
  color: #12212b;
}
a:hover {
  color: #12212b;
  text-decoration: underline;
}
a:focus {
  outline: 3px dashed currentColor;
}
.js-focus-visible a:focus:not(.focus-visible) {
  outline: 0;
}
a.no-click {
  pointer-events: none;
}

button:focus {
  outline: 3px dashed currentColor;
}
.js-focus-visible button:focus:not(.focus-visible) {
  outline: 0;
}

.btn {
  font-family: "montserratsemibold", sans-serif;
  font-weight: normal;
  display: inline-block;
  border-top-left-radius: 30px;
  border-bottom-left-radius: 30px;
  color: #fff;
  background-color: #00a1ab;
  padding: 24px 52.5px 23.0769230769px 24px;
  line-height: 1;
  cursor: pointer;
  text-decoration: none;
  position: relative;
  margin-right: 30px;
  transition: all 0.1s cubic-bezier(0.64, 0.04, 0.35, 1);
  box-shadow: inset 0 0 0 4px #fff;
}
.btn::before, .btn::after {
  background-position: center center;
  background-repeat: no-repeat;
  background-size: contain;
  background-image: url("../img/icon-smile.svg");
  background-size: 20px;
  background-position: 50% 55%;
  content: "";
  border: 4px solid #fff;
  border-radius: 50%;
  background-color: #00a1ab;
  height: 100%;
  width: 66px;
  display: inline-block;
  position: absolute;
  top: 0;
  right: -32px;
  transition: all 0.5s cubic-bezier(0.64, 0.04, 0.35, 1);
  z-index: 1;
}
.btn::before {
  border: none;
  background-color: #12212b;
  height: calc(100% - 8px);
  width: 58px;
  top: 4px;
  right: -28px;
  z-index: 2;
  transform: rotate(360deg) scale(0);
  transition: all 0.5s cubic-bezier(0.64, 0.04, 0.35, 1);
}
.btn:hover {
  text-decoration: none;
  color: #fff;
}
.btn:hover::before {
  transform: rotate(0) scale(1);
}
.btn:hover::after {
  transform: rotate(-360deg);
}
.btn:focus {
  outline-color: #12212b;
}
.btn--alt {
  font-family: "montserratsemibold", sans-serif;
  font-weight: normal;
  display: inline-block;
  border-top-left-radius: 30px;
  border-bottom-left-radius: 30px;
  color: #fff;
  background-color: #00a1ab;
  padding: 24px 52.5px 23.0769230769px 24px;
  line-height: 1;
  cursor: pointer;
  text-decoration: none;
  position: relative;
  margin-right: 30px;
  transition: all 0.1s cubic-bezier(0.64, 0.04, 0.35, 1);
  box-shadow: inset 0 0 0 4px #fff;
  box-shadow: inset 0 0 0 4px #12212b;
  color: #12212b;
  background-color: #fff;
}
.btn--alt::before, .btn--alt::after {
  background-position: center center;
  background-repeat: no-repeat;
  background-size: contain;
  background-image: url("../img/icon-smile.svg");
  background-size: 20px;
  background-position: 50% 55%;
  content: "";
  border: 4px solid #fff;
  border-radius: 50%;
  background-color: #00a1ab;
  height: 100%;
  width: 66px;
  display: inline-block;
  position: absolute;
  top: 0;
  right: -32px;
  transition: all 0.5s cubic-bezier(0.64, 0.04, 0.35, 1);
  z-index: 1;
}
.btn--alt::before {
  border: none;
  background-color: #12212b;
  height: calc(100% - 8px);
  width: 58px;
  top: 4px;
  right: -28px;
  z-index: 2;
  transform: rotate(360deg) scale(0);
  transition: all 0.5s cubic-bezier(0.64, 0.04, 0.35, 1);
}
.btn--alt:hover {
  text-decoration: none;
  color: #fff;
}
.btn--alt:hover::before {
  transform: rotate(0) scale(1);
}
.btn--alt:hover::after {
  transform: rotate(-360deg);
}
.btn--alt:focus {
  outline-color: #12212b;
}
.btn--alt::before {
  background-color: #12212b;
}
.btn--alt::after {
  background-image: url("../img/icon-smile-wh.svg");
  border-color: #12212b;
  background-color: #fff;
}
.btn--alt:hover {
  color: #12212b;
}
.btn--wide {
  width: calc(100% - 30px);
}
.btn--no-border {
  box-shadow: none;
}
.btn--footer {
  margin-top: 10px;
}
@media (min-width: 768px) {
  .btn--footer {
    margin-top: 20px;
  }
}
.btn--global {
  background-color: #12212b;
}
.btn--global::after {
  background-color: #12212b;
}
.btn--global::before {
  background-color: #ee2737;
}
.btn--primary {
  background-color: #00a1ab;
  color: #fff;
  box-shadow: inset 0 0 0 4px #fff;
}
.btn--primary::after {
  background-color: #00a1ab;
  border-color: #fff;
  background-image: url("../img/icon-smile.svg");
}
.btn--primary::before {
  background-color: #00a1ab;
  border-color: #fff;
}
.btn--primary:hover {
  background-color: #fff;
  color: #00a1ab;
  box-shadow: inset 0 0 0 4px #00a1ab;
}
.btn--primary:hover::after {
  background-color: #fff;
  border-color: #00a1ab;
}
.btn--primary:hover::before {
  background-color: #fff;
  border-color: #00a1ab;
  background-image: url("../img/icon-smile-primary.svg");
}

.cta {
  font-family: "montserratsemibold", sans-serif;
  font-weight: normal;
  display: inline-block;
  color: #fff;
  background-color: #12212b;
  padding: 12px;
  line-height: 1;
  text-decoration: none;
  transition: all 0.2s cubic-bezier(0.64, 0.04, 0.35, 1);
  border: none;
}
.cta:hover, .cta:focus, .cta.active {
  background-color: #6d6e71;
  text-decoration: none;
  color: #fff;
}
.cta:focus {
  outline-color: #12212b;
}

.icon {
  display: flex;
  align-items: center;
}
.icon svg {
  width: 20px;
  height: 20px;
  margin-right: 8.5714285714px;
}
.icon .svg-icon {
  transition: fill 0.2s cubic-bezier(0.64, 0.04, 0.35, 1);
}
.icon:hover {
  color: #00a1ab;
  text-decoration: none;
}
.icon:hover .svg-icon {
  fill: #00a1ab;
}
.icon--social svg {
  width: 45px;
  height: 45px;
  margin: 0;
}
@media (min-width: 768px) {
  .icon--social svg {
    width: 76.5px;
    height: 76.5px;
  }
}
.icon--social .svg-icon {
  fill: #12212b;
  stroke: #fff;
}

img {
  -webkit-backface-visibility: hidden;
}

.fg,
.bg {
  transition: all 0.2s cubic-bezier(0.64, 0.04, 0.35, 1);
}

.svg {
  transition: all 0.2s cubic-bezier(0.64, 0.04, 0.35, 1);
}

.pointer-disabled {
  pointer-events: none;
}

.hidden {
  display: none !important;
  visibility: hidden !important;
}

.video-container,
.media-vimeo-video {
  position: relative;
  padding-bottom: 56.25%;
  padding-top: 25px;
  height: 0;
}
.video-container iframe,
.media-vimeo-video iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.media-soundcloud-audio iframe {
  width: 100%;
  max-height: 150px;
}

.listing {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  margin-left: -15px;
  width: calc(100% + 30px);
}
.listing li {
  list-style: none;
  margin: 0;
  padding: 0;
}
@media (max-width: 768px) {
  .listing {
    margin: 0 -10px;
    width: calc(100% + 20px);
  }
}
@media (max-width: 576px) {
  .listing {
    margin: 0;
    width: 100%;
  }
}
.listing > li {
  padding: 15px;
}
@media (max-width: 768px) {
  .listing > li {
    padding: 0 10px 20px;
  }
}
@media (max-width: 576px) {
  .listing > li {
    padding: 0 0 30px;
  }
}
.listing--one-col > li {
  width: 100%;
}
.listing--two-col > li {
  width: 50%;
}
@media (max-width: 576px) {
  .listing--two-col > li {
    width: 100%;
  }
}
.listing--three-col > li {
  width: 33.3333%;
}
@media (max-width: 1200px) {
  .listing--three-col > li {
    width: 50%;
  }
}
@media (max-width: 576px) {
  .listing--three-col > li {
    width: 100%;
  }
}
.listing--four-col > li {
  width: 25%;
}
@media (max-width: 768px) {
  .listing--four-col > li {
    width: 50%;
  }
}
@media (max-width: 576px) {
  .listing--four-col > li {
    width: 100%;
  }
}
.listing--five-col > li {
  width: 20%;
}
@media (max-width: 768px) {
  .listing--five-col > li {
    width: 33.3333%;
  }
}
@media (max-width: 576px) {
  .listing--five-col > li {
    width: 100%;
  }
}
.listing--six-col > li {
  width: 16.6666%;
}
@media (max-width: 768px) {
  .listing--six-col > li {
    width: 33.3333%;
  }
}
@media (max-width: 576px) {
  .listing--six-col > li {
    width: 100%;
  }
}

.pager {
  list-style: none;
  margin: 0;
  padding: 0;
  text-align: center;
  display: block;
  clear: both;
  margin: 45px 0 90px;
}
.pager li {
  list-style: none;
  margin: 0;
  padding: 0;
}
@media (max-width: 1199px) {
  .pager {
    margin: 30px 0 60px;
  }
}
.pager li {
  display: inline-block;
  margin: 0 12px;
}
@media (max-width: 1199px) {
  .pager li {
    margin: 0 7.5px 7.5px;
  }
}
.pager li a {
  padding: 10px 23.0769230769px 8.5714285714px;
  display: block;
  background-color: #12212b;
  color: #fff;
}
.pager li a:hover {
  background-color: #00a1ab;
  text-decoration: none;
}
.pager li.is-active a {
  background-color: #00a1ab;
  pointer-events: none;
}
.pager li.pager-current {
  padding: 10px 20px;
}

.admin-functions {
  padding: 0;
  position: fixed;
  top: auto;
  width: 100%;
  background-color: #00a1ab;
  max-width: 100%;
  z-index: 31;
}
.admin-functions [class*=col-] {
  padding: 0;
}
.admin-functions ul {
  list-style: none;
  margin: 0;
  padding: 0;
  border: 0;
  margin: 15px 0;
  padding: 0;
}
.admin-functions ul li {
  list-style: none;
  margin: 0;
  padding: 0;
}
.admin-functions ul li {
  margin-right: 45px;
  display: inline-block;
}
.admin-functions ul li a {
  color: #fff;
  margin: 0;
  display: block;
  background-color: transparent;
  padding: 0;
  opacity: 0.6;
}
.admin-functions ul li a.is-active, .admin-functions ul li a:hover {
  color: #fff;
  background: transparent;
  opacity: 1;
  text-decoration: none;
}

input[type=text],
input[type=email],
input[type=password],
input[type=number],
input[type=search],
input[type=tel],
input[type=date],
textarea,
select {
  font-family: "montserratregular", arial, sans-serif;
  font-size: 18px;
  line-height: 32px;
  color: #12212b;
  resize: none;
  padding: 11.25px 22.5px;
  -webkit-border-radius: 0px;
  border-radius: 0;
  outline: 0;
  border: 4px solid #12212b;
  border-radius: 30px;
  transition: all 0.2s cubic-bezier(0.64, 0.04, 0.35, 1);
  background-color: #fff;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  min-height: 65px;
  width: 100%;
}
input[type=text]:focus, input[type=text]:active,
input[type=email]:focus,
input[type=email]:active,
input[type=password]:focus,
input[type=password]:active,
input[type=number]:focus,
input[type=number]:active,
input[type=search]:focus,
input[type=search]:active,
input[type=tel]:focus,
input[type=tel]:active,
input[type=date]:focus,
input[type=date]:active,
textarea:focus,
textarea:active,
select:focus,
select:active {
  background-color: #12212b;
  color: #fff;
}
input[type=text]:focus::-moz-placeholder, input[type=text]:active::-moz-placeholder, input[type=email]:focus::-moz-placeholder, input[type=email]:active::-moz-placeholder, input[type=password]:focus::-moz-placeholder, input[type=password]:active::-moz-placeholder, input[type=number]:focus::-moz-placeholder, input[type=number]:active::-moz-placeholder, input[type=search]:focus::-moz-placeholder, input[type=search]:active::-moz-placeholder, input[type=tel]:focus::-moz-placeholder, input[type=tel]:active::-moz-placeholder, input[type=date]:focus::-moz-placeholder, input[type=date]:active::-moz-placeholder, textarea:focus::-moz-placeholder, textarea:active::-moz-placeholder, select:focus::-moz-placeholder, select:active::-moz-placeholder {
  color: #fff;
}
input[type=text]:focus:-ms-input-placeholder, input[type=text]:active:-ms-input-placeholder, input[type=email]:focus:-ms-input-placeholder, input[type=email]:active:-ms-input-placeholder, input[type=password]:focus:-ms-input-placeholder, input[type=password]:active:-ms-input-placeholder, input[type=number]:focus:-ms-input-placeholder, input[type=number]:active:-ms-input-placeholder, input[type=search]:focus:-ms-input-placeholder, input[type=search]:active:-ms-input-placeholder, input[type=tel]:focus:-ms-input-placeholder, input[type=tel]:active:-ms-input-placeholder, input[type=date]:focus:-ms-input-placeholder, input[type=date]:active:-ms-input-placeholder, textarea:focus:-ms-input-placeholder, textarea:active:-ms-input-placeholder, select:focus:-ms-input-placeholder, select:active:-ms-input-placeholder {
  color: #fff;
}
input[type=text]:focus::placeholder, input[type=text]:active::placeholder,
input[type=email]:focus::placeholder,
input[type=email]:active::placeholder,
input[type=password]:focus::placeholder,
input[type=password]:active::placeholder,
input[type=number]:focus::placeholder,
input[type=number]:active::placeholder,
input[type=search]:focus::placeholder,
input[type=search]:active::placeholder,
input[type=tel]:focus::placeholder,
input[type=tel]:active::placeholder,
input[type=date]:focus::placeholder,
input[type=date]:active::placeholder,
textarea:focus::placeholder,
textarea:active::placeholder,
select:focus::placeholder,
select:active::placeholder {
  color: #fff;
}
input[type=text]::-moz-placeholder, input[type=email]::-moz-placeholder, input[type=password]::-moz-placeholder, input[type=number]::-moz-placeholder, input[type=search]::-moz-placeholder, input[type=tel]::-moz-placeholder, input[type=date]::-moz-placeholder, textarea::-moz-placeholder, select::-moz-placeholder {
  color: #12212b;
}
input[type=text]:-ms-input-placeholder, input[type=email]:-ms-input-placeholder, input[type=password]:-ms-input-placeholder, input[type=number]:-ms-input-placeholder, input[type=search]:-ms-input-placeholder, input[type=tel]:-ms-input-placeholder, input[type=date]:-ms-input-placeholder, textarea:-ms-input-placeholder, select:-ms-input-placeholder {
  color: #12212b;
}
input[type=text]::placeholder,
input[type=email]::placeholder,
input[type=password]::placeholder,
input[type=number]::placeholder,
input[type=search]::placeholder,
input[type=tel]::placeholder,
input[type=date]::placeholder,
textarea::placeholder,
select::placeholder {
  color: #12212b;
}
input[type=text]::-ms-clear,
input[type=email]::-ms-clear,
input[type=password]::-ms-clear,
input[type=number]::-ms-clear,
input[type=search]::-ms-clear,
input[type=tel]::-ms-clear,
input[type=date]::-ms-clear,
textarea::-ms-clear,
select::-ms-clear {
  display: none;
}

input[type=search],
input[type=text],
input[type=submit] {
  -webkit-appearance: none;
}

.form-actions input,
input[type=submit] {
  cursor: pointer;
}

input[type=submit] {
  font-family: "montserratsemibold", sans-serif;
  font-weight: normal;
  display: inline-block;
  color: #fff;
  background-color: #12212b;
  padding: 12px;
  line-height: 1;
  text-decoration: none;
  transition: all 0.2s cubic-bezier(0.64, 0.04, 0.35, 1);
  border: none;
}
input[type=submit]:hover, input[type=submit]:focus, input[type=submit].active {
  background-color: #6d6e71;
  text-decoration: none;
  color: #fff;
}
input[type=submit]:focus {
  outline-color: #12212b;
}

label {
  display: block;
}

textarea {
  height: 120px;
}

select {
  background: #fff url("../img/cta-arrow-down--inverted.svg") no-repeat right 22.5px center;
  background-size: 36px;
  padding-right: 60px;
  min-width: 280px;
}
select::-ms-expand {
  display: none;
}
select:focus, select:active {
  background: #12212b url("../img/cta-arrow-down.svg") no-repeat right 22.5px center;
  background-size: 36px;
}

[type=checkbox]:checked,
[type=checkbox]:not(:checked) {
  position: absolute;
  left: -9999px;
}

[type=checkbox]:checked + label,
[type=checkbox]:not(:checked) + label {
  position: relative;
  padding-left: 32px;
  cursor: pointer;
  line-height: 20px;
  display: inline-block;
}

[type=checkbox]:checked + label:before,
[type=checkbox]:not(:checked) + label:before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 24px;
  height: 24px;
  border: 3px solid #12212b;
  border-radius: 7px;
  background-color: #fff;
}

[type=checkbox]:checked + label:after,
[type=checkbox]:not(:checked) + label:after {
  content: "✔ ";
  color: #12212b;
  position: absolute;
  top: 2px;
  left: 4.5px;
  transition: all 0.2s cubic-bezier(0.64, 0.04, 0.35, 1);
}

[type=checkbox]:not(:checked) + label:after {
  opacity: 0;
  transform: scale(0);
}

[type=checkbox]:checked + label:after {
  opacity: 1;
  transform: scale(1);
}

[type=radio]:checked,
[type=radio]:not(:checked) {
  position: absolute;
  left: -9999px;
}

[type=radio]:checked + label,
[type=radio]:not(:checked) + label {
  position: relative;
  padding-left: 28px;
  cursor: pointer;
  line-height: 20px;
  display: inline-block;
  color: #12212b;
}

[type=radio]:checked + label:before,
[type=radio]:not(:checked) + label:before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 20px;
  height: 20px;
  border: 2px solid #12212b;
  border-radius: 100%;
  background-color: #fff;
}

[type=radio]:checked + label:after,
[type=radio]:not(:checked) + label:after {
  content: "";
  width: 12px;
  height: 12px;
  background: #12212b;
  position: absolute;
  top: 4px;
  left: 4px;
  border-radius: 100%;
  transition: all 0.2s cubic-bezier(0.64, 0.04, 0.35, 1);
}

[type=radio]:not(:checked) + label:after {
  opacity: 0;
  transform: scale(0);
}

[type=radio]:checked + label:after {
  opacity: 1;
  transform: scale(1);
}

button {
  padding: 0;
  background-color: transparent;
  border: 0;
}

.header {
  background-color: #fff;
  width: 100%;
  position: relative;
  z-index: 41;
  /**
   * Overrides
   */
}
@media (min-width: 992px) {
  .header {
    height: 130px;
    border-top: 4px solid #12212b;
  }
}
.header__outer {
  display: flex;
  flex-direction: column-reverse;
  height: 100%;
  max-width: 1848px;
  margin: 0 auto;
  align-items: center;
  justify-content: space-between;
}
@media (min-width: 992px) {
  .header__outer {
    flex-direction: row;
    padding: 0 15px;
  }
}
.header--inner {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  flex: 0 1 auto;
}
@media (max-width: 992px) {
  .header--inner {
    width: 100%;
  }
}
@media (max-width: 992px) {
  .header__left {
    padding: 20px 15px;
    justify-content: space-between;
  }
}
.header__logo {
  background-position: center center;
  background-repeat: no-repeat;
  background-size: contain;
  width: 130px;
  height: 130px;
  margin-right: 45px;
  display: flex;
  justify-content: center;
  align-items: center;
}
@media (max-width: 992px) {
  .header__logo {
    width: 70px;
    height: 70px;
    margin-right: 16px;
  }
}
.header__logo svg {
  height: 65%;
  width: auto;
  display: block;
}
.header__logo:hover {
  opacity: 0.6;
}
.header__search {
  display: none;
}
@media (max-width: 992px) {
  .header__search {
    display: flex;
    align-items: center;
    font-family: "montserratregular", arial, sans-serif;
    font-size: 18px;
    line-height: 32px;
    margin: 0 16px 0 auto;
  }
}
.header__search path,
.header__search g {
  fill: #12212b;
}
.nav-open .header__search {
  display: none;
}
.header__widget {
  position: relative;
  z-index: 10;
  display: flex;
  align-items: flex-start;
  flex: 0 0 auto;
  height: calc(130px + 30px);
  border-bottom-left-radius: 15px;
  border-bottom-right-radius: 15px;
  background-color: #12212b;
  top: 15px;
}
@media (max-width: 992px) {
  .header__widget {
    border-radius: 0;
    height: auto;
    width: 100%;
    top: 0;
  }
}
.header__widget::before, .header__widget::after {
  content: "";
  width: 17px;
  height: 12px;
  position: absolute;
  top: -2px;
  display: block;
  content: none;
}
@media (min-width: 992px) and (min-height: 576px) {
  .header__widget::before, .header__widget::after {
    content: "";
  }
}
.header__widget::before {
  left: -8px;
  background: url("../img/arch.svg") no-repeat center center;
  background-size: contain;
}
.header__widget::after {
  background: url("../img/arch--right.svg") no-repeat center center;
  background-size: contain;
  right: -9px;
}
.header__widget-inner {
  padding: 20px;
  color: #fff;
  transition: all 2s cubic-bezier(0.64, 0.04, 0.35, 1);
  display: flex;
  flex-direction: column;
  align-items: center;
}
@media (max-width: 992px) {
  .header__widget-inner {
    width: 100%;
  }
}
.header__widget-links {
  display: flex;
  justify-content: center;
  align-items: center;
}
@media (max-width: 992px) {
  .header__widget-links {
    display: none;
  }
}
.header__widget-links .icon {
  font-family: "montserratregular", arial, sans-serif;
  font-size: 18px;
  line-height: 32px;
  color: #fff;
  margin: 0 15px;
}
.header__widget-links .icon .svg-icon {
  fill: #fff;
}
.header__widget-links .icon:hover {
  color: #00a1ab;
}
.header__widget-links .icon:hover .svg-icon {
  fill: #00a1ab;
}
@media (max-width: 992px) {
  .header .btn--discover {
    margin-bottom: 0;
  }
}
@media (max-width: 992px) {
  .nav-open .header .header__right {
    display: none;
  }
}
@media (max-width: 992px) {
  .nav-open .header .header__left {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    background: #fff;
    z-index: 40;
    width: 100%;
    height: 100vh;
    height: calc(var(--vh, 1vh) * 100);
    align-items: flex-start;
  }
}

@media (max-width: 992px) {
  .nav-open {
    overflow-y: hidden;
  }
}

.user-logged-in .header {
  top: 62px;
}

.pttc-logos {
  display: grid;
  gap: 20px;
  margin-top: 40px;
  grid-template-columns: auto 1fr;
}
.adminimal-admin-toolbar .pttc-logos {
  margin-top: 100px;
}
@media (max-width: 767px) {
  .pttc-logos {
    margin-top: 0;
    grid-template-columns: auto 1fr;
  }
}
.pttc-logos--secondary img {
  max-width: 100px;
  max-height: 50px;
}
@media (max-width: 767px) {
  .pttc-logos--secondary img {
    max-width: 75px;
    max-height: 30px;
  }
}
@media (max-width: 575px) {
  .pttc-logos--secondary img {
    max-width: 55px;
  }
}
.pttc-logos--main img {
  max-width: 210px;
  max-height: 50px;
}
@media (max-width: 767px) {
  .pttc-logos--main img {
    max-width: 150px;
  }
}
@media (max-width: 575px) {
  .pttc-logos--main img {
    max-width: 125px;
  }
}
.pttc-logos--items {
  display: flex;
  gap: 20px;
  flex-wrap: wrap;
}

spektrix-gift-vouchers {
  display: grid;
  grid-gap: 30px;
}
spektrix-gift-vouchers .choices__inner {
  border: none;
}
spektrix-gift-vouchers .choices__list {
  border: none;
}
spektrix-gift-vouchers .choices__list input {
  display: none !important;
}

.footer {
  background-color: #12212b;
  color: #fff;
  padding: 90px 0;
}
@media (max-width: 1199px) {
  .footer {
    padding: 45px 0;
  }
}
.footer .btn {
  background-color: #12212b;
}
.footer .btn::after {
  background-color: #12212b;
}
.footer .btn::before {
  background-color: #ee2737;
}
.footer__inner {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  flex-wrap: wrap;
}
@media (max-width: 1199px) {
  .footer__inner {
    flex-direction: column;
    align-items: center;
  }
}
.footer__inner--info {
  margin-top: 10px;
}
@media (min-width: 768px) and (min-height: 576px) {
  .footer__inner--info {
    margin-top: 0;
  }
}
.footer__inner-col {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: space-between;
  flex-wrap: wrap;
}
.footer__inner-left svg {
  margin-bottom: 30px;
  display: block;
  max-width: 100%;
}
@media (max-width: 1199px) {
  .footer__inner-left svg {
    margin: 0 auto 30px;
  }
}
.footer__inner-right {
  align-items: flex-end;
}
@media (max-width: 1199px) {
  .footer__inner-right {
    flex-direction: row;
    align-items: center;
    width: 100%;
    margin-top: 45px;
  }
}
@media (max-width: 991px) {
  .footer__inner-right {
    flex-direction: column;
  }
}
.footer__inner-right .block {
  text-align: right;
}
.footer__inner-right .block h3 {
  margin-bottom: 30px;
}
.footer__inner--credits .block {
  flex: 0 1 auto;
  margin-right: 30px;
}
@media (max-width: 1599px) {
  .footer__inner--credits .block {
    max-width: 680px;
  }
}
@media (max-width: 1199px) {
  .footer__inner--credits .block {
    margin: 15px auto 0;
    text-align: center;
  }
}
.footer__inner--credits .block:last-child {
  margin-right: 0;
}
@media (max-width: 1199px) {
  .footer__inner--credits .block:last-child {
    margin-right: auto;
  }
}
.footer__inner--credits .block:first-child {
  margin-top: 0;
}
.footer__support {
  text-align: center;
  color: #fff;
  -moz-text-align-last: center;
       text-align-last: center;
  border-bottom: 4px solid #fff;
  padding-bottom: 40px;
}
@media (min-width: 768px) and (min-height: 576px) {
  .footer__support {
    background-color: #fff;
    color: #12212b;
    padding: 45px 90px;
    border-radius: 135px;
    margin-bottom: 30px;
    border: none;
  }
}
@media (min-width: 992px) {
  .footer__support {
    margin-bottom: 45px;
  }
}
@media (min-width: 1200px) {
  .footer__support {
    margin-bottom: 90px;
  }
}
.footer__support p:not(:last-child) {
  font-family: "montserratsemibold", sans-serif;
  font-weight: 400;
  font-size: 29px;
  line-height: 39px;
  letter-spacing: -1px;
  max-width: 80%;
  margin: 0 auto;
}
@media (max-width: 1199px) {
  .footer__support p:not(:last-child) {
    max-width: none;
  }
}
@media (max-width: 991px) {
  .footer__support p:not(:last-child) {
    font-size: 1.2em;
    line-height: calc(1em + 10px);
  }
}
.footer__support .btn--alt {
  margin-top: 45px;
  box-shadow: none;
}
@media (max-width: 991px) {
  .footer__support .btn--alt {
    margin-top: 30px;
  }
}
@media (min-width: 768px) and (min-height: 576px) {
  .footer__support .btn--alt {
    box-shadow: inset 0 0 0 4px #12212b;
  }
}
.footer__partners {
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  padding: 45px;
  border: 4px solid #fff;
  border-left: 0;
  border-right: 0;
}
@media (max-width: 991px) {
  .footer__partners {
    padding: 30px 0 0;
    flex-direction: column;
    flex-wrap: wrap;
  }
}
.footer__partners a {
  display: block;
  margin: 0 45px;
}
@media (max-width: 1199px) {
  .footer__partners a {
    margin: 0 30px;
  }
}
@media (max-width: 991px) {
  .footer__partners a {
    margin-bottom: 45px;
  }
}
.footer__partners a img {
  max-height: 80px;
  width: auto;
  display: block;
  max-width: 100%;
}
@media (max-width: 1199px) {
  .footer__partners a img {
    max-height: 60px;
  }
}
.footer__partners a:hover {
  opacity: 0.6;
}
.footer__social {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  margin-bottom: 67.5px;
}
@media (max-width: 1199px) {
  .footer__social {
    margin-bottom: 0;
  }
}
@media (max-width: 991px) {
  .footer__social {
    margin-bottom: 30px;
  }
}
.footer__social a {
  margin-left: 15px;
}
.footer a:not(.btn):not(.btn--alt) {
  color: #fff;
}
.footer ul.menu {
  list-style: none;
  margin: 0;
  padding: 0;
  margin-top: 15px;
  display: flex;
  flex-direction: column;
  align-items: center;
  flex-wrap: wrap;
  justify-content: center;
}
.footer ul.menu li {
  list-style: none;
  margin: 0;
  padding: 0;
}
@media (min-width: 576px) {
  .footer ul.menu {
    flex-direction: row;
  }
}
@media (max-width: 1199px) {
  .footer ul.menu {
    margin: 15px auto 0;
  }
}
@media (min-width: 576px) {
  .footer ul.menu li::after {
    font-family: "montserratsemibold", sans-serif;
    font-weight: normal;
    content: "|";
    margin: 0 15px;
  }
}
@media (min-width: 576px) {
  .footer ul.menu li:last-child::after {
    display: none;
  }
}
.footer ul.menu a.is-active {
  text-decoration: underline;
}

.nav {
  /** 
   * Overrides
   */
}
@media (max-width: 992px) {
  .nav {
    position: absolute;
    bottom: -30px;
    left: 0;
    width: 100%;
    padding: 0 10px;
    height: calc(100vh - 110px);
    height: calc(var(--vh, 1vh) * 100 - 110px);
    visibility: hidden;
    opacity: 0;
    transition: none;
  }
}
@media (max-width: 992px) and (max-height: 576px) {
  .nav {
    height: calc(100vh - 90px);
    height: calc(var(--vh, 1vh) * 100 - 90px);
  }
}
.nav ::marker {
  display: none;
}
.nav ul.menu {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  flex-wrap: wrap;
}
.nav ul.menu li {
  list-style: none;
  margin: 0;
  padding: 0;
}
@media (max-width: 992px) {
  .nav ul.menu {
    flex-direction: column;
    align-items: center;
  }
}
.nav ul.menu li {
  margin: 0 22.5px 0 0;
}
@media (min-width: 1200px) {
  .nav ul.menu li {
    margin-right: 45px;
  }
}
.nav ul.menu .menu-item--active-trail > a::after {
  transform: scaleX(1);
}
.nav a {
  color: #12212b;
  transition: none;
}
.nav a::after {
  content: "";
  display: block;
  width: 100%;
  border-bottom: 3px solid #00a1ab;
  transition: all 0.2s cubic-bezier(0.64, 0.04, 0.35, 1);
  transform: scaleX(0);
}
.nav a.is-active, .nav a:hover {
  text-decoration: none;
}
.nav a.is-active::after, .nav a:hover::after {
  transform: scaleX(1);
}
.nav__toggle {
  display: none;
  position: relative;
  align-items: center;
  font-family: "montserratregular", arial, sans-serif;
  font-size: 18px;
  line-height: 32px;
  transition: none;
}
@media (max-width: 992px) {
  .nav__toggle {
    display: flex;
  }
}
.nav__toggle-icon {
  position: relative;
  display: block;
  width: 24px;
  height: 19px;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  border: solid #12212b;
  border-width: 1px 0;
  color: #12212b;
  text-indent: -999em;
  transition: all 0.25s ease-in-out;
  margin-right: 8px;
}
.nav__toggle-icon:before, .nav__toggle-icon:after {
  content: "";
  display: block;
  width: 100%;
  height: 1px;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  background: currentColor;
  transition: transform 0.25s ease-in-out;
}
@media (max-width: 992px) {
  .nav--main {
    padding: 40px 0 60px;
  }
}
@media (max-width: 992px) and (max-height: 576px) {
  .nav--main {
    padding: 20px 0 40px;
  }
}
.nav--main a {
  font-size: 29px;
  line-height: 39px;
  letter-spacing: -1px;
  display: block;
}
@media (min-width: 768px) and (max-width: 991px) and (min-height: 576px) {
  .nav--main a {
    font-size: 47px;
    line-height: 57px;
    letter-spacing: -2px;
  }
}
@media (min-width: 768px) and (max-width: 991px) and (min-height: 576px) and (max-width: 767px) {
  .nav--main a {
    font-size: 35px;
    line-height: 45px;
    letter-spacing: -1px;
  }
}
@media (min-width: 992px) and (max-width: 1199px) and (min-height: 576px) {
  .nav--main a {
    font-size: 18px;
    line-height: 28px;
    letter-spacing: -0.5px;
  }
}
@media (max-width: 992px) {
  .nav--main ul.menu li {
    margin: 24px 0 0 0;
  }
}
@media (max-width: 992px) and (max-height: 576px) {
  .nav--main ul.menu li {
    margin-top: 16px;
  }
}
.nav--main ul.menu li:first-child {
  margin-top: 0;
}
.nav--main ul.menu li:last-child {
  margin-right: 0;
}
.nav--secondary ul.menu li {
  margin: 0 0 0 45px;
}
.nav__sub-nav {
  display: none;
  text-align: center;
  margin-top: 60px;
  position: relative;
}
@media (max-width: 992px) {
  .nav__sub-nav {
    display: block;
    opacity: 0;
    bottom: -30px;
  }
}
@media (max-width: 992px) and (max-height: 576px) {
  .nav__sub-nav {
    margin-top: 40px;
  }
}
.nav__sub-nav a {
  font-size: 18px;
  line-height: 28px;
  letter-spacing: -0.5px;
}
@media (min-width: 577px) and (max-width: 992px) and (min-height: 576px) {
  .nav__sub-nav a {
    font-size: 29px;
    line-height: 39px;
    letter-spacing: -1px;
  }
}
@media (max-width: 992px) {
  .nav__sub-nav ul.menu li {
    margin-top: 16px;
  }
}
@media (max-width: 992px) and (max-height: 576px) {
  .nav__sub-nav ul.menu li {
    margin-top: 8px;
  }
}
.nav__links {
  margin-top: 60px;
  display: block;
}
@media (max-width: 992px) and (max-height: 576px) {
  .nav__links {
    margin-top: 40px;
  }
}
.nav .header__link {
  display: block;
  align-items: center;
  transition: 0.25s color ease-in-out;
  margin-top: 15px;
}
.nav .header__link:after {
  content: none;
}
.nav .header__link:first-of-type {
  margin-top: 0;
}
.nav .header__link-text {
  display: inline-block;
  vertical-align: middle;
}
.nav .header__link svg {
  flex: 0 0 auto;
  width: 35px;
  height: 35px;
  margin-right: 12px;
  display: inline-block;
  vertical-align: middle;
}
@media (max-width: 992px) and (max-height: 576px) {
  .nav .header__link svg {
    width: 24px;
    height: 24px;
    margin-right: 8px;
  }
}
.nav .header__link g,
.nav .header__link path {
  transition: 0.25s fill ease-in-out;
  fill: #12212b;
}
.nav .header__link:hover g,
.nav .header__link:hover path, .nav .header__link:focus g,
.nav .header__link:focus path, .nav .header__link:active g,
.nav .header__link:active path {
  fill: currentColor;
}
@media (max-width: 992px) {
  .nav-open .nav--main {
    overflow-y: scroll;
    visibility: visible;
    opacity: 1;
    bottom: 0;
    transition: 0.25s bottom ease-in-out, 0.25s opacity ease-in-out;
  }
}
@media (max-width: 992px) {
  .nav-open .nav__sub-nav {
    opacity: 1;
    bottom: 0;
    transition: 0.15s 0.25s bottom ease-in-out, 0.15s 0.25s opacity ease-in-out;
  }
}
.nav-open .nav__toggle {
  text-decoration: none;
}
@media (max-width: 992px) {
  .nav-open .nav__toggle {
    margin-top: 18px;
  }
}
@media (max-width: 992px) and (max-height: 576px) {
  .nav-open .nav__toggle {
    margin-top: 15px;
  }
}
@media (max-width: 370px) {
  .nav-open .nav__toggle {
    margin-top: 8px;
  }
}
.nav-open .nav__toggle-icon {
  border-color: transparent;
}
.nav-open .nav__toggle-icon:before {
  transform: rotate(45deg);
}
.nav-open .nav__toggle-icon:after {
  transform: rotate(-45deg);
}

/**
 * Form
 */
.form {
  /**
   * Modifiers
   */
}
.form__row {
  position: relative;
  margin: 22.5px 0 0;
  width: 100%;
}
.form__row:first-child {
  margin-top: 0;
}
.form__label {
  display: block;
}
.form__label + .form__field {
  margin-top: 15px;
}
.form__field--submit {
  margin-top: 22.5px;
}
@media (min-width: 1600px) {
  .form__field--submit {
    margin-top: 45px;
  }
}
.form .form__label.option {
  display: block;
}
.form-actions {
  margin: 0;
  width: 100%;
}
.form .description {
  margin: 11.25px 0 0 0;
}
.form.user-login-form {
  max-width: 600px;
}

@-webkit-keyframes discIn {
  0% {
    top: 100%;
  }
  100% {
    top: 0;
  }
}

@keyframes discIn {
  0% {
    top: 100%;
  }
  100% {
    top: 0;
  }
}
@-webkit-keyframes discOut {
  0% {
    top: 0;
  }
  100% {
    top: -100%;
  }
}
@keyframes discOut {
  0% {
    top: 0;
  }
  100% {
    top: -100%;
  }
}
@-webkit-keyframes contentIn {
  0% {
    opacity: 0;
    transform: translateY(20%) scale(0.85);
  }
  100% {
    opacity: 1;
    transform: translateY(0) scale(1);
  }
}
@keyframes contentIn {
  0% {
    opacity: 0;
    transform: translateY(20%) scale(0.85);
  }
  100% {
    opacity: 1;
    transform: translateY(0) scale(1);
  }
}
@-webkit-keyframes contentOut {
  0% {
    opacity: 1;
    transform: translateY(0) scale(1);
  }
  100% {
    opacity: 0;
    transform: translateY(-20%) scale(0.85);
  }
}
@keyframes contentOut {
  0% {
    opacity: 1;
    transform: translateY(0) scale(1);
  }
  100% {
    opacity: 0;
    transform: translateY(-20%) scale(0.85);
  }
}
.modal {
  position: fixed;
  background-color: #fff;
  left: 0;
  height: 100%;
  width: 100%;
  overflow: hidden;
  transition: all 0.5s ease;
  z-index: 50;
}
.modal__inner {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  position: relative;
  z-index: 10;
  opacity: 0;
}
.modal__inner .grid {
  width: 100%;
}
@media (max-width: 991px) and (max-height: 576px) {
  .modal > .grid {
    height: 85vh;
    height: calc(var(--vh, 1vh) * 85);
    overflow-y: scroll;
  }
}
.modal__logo, .modal__close {
  position: absolute;
  top: 45px;
  z-index: 10;
}
@media (max-width: 1599px) {
  .modal__logo, .modal__close {
    top: 20px;
  }
}
@media (max-width: 991px) and (max-height: 576px) {
  .modal__logo, .modal__close {
    top: 15px;
  }
}
.modal__logo {
  left: 15px;
}
@media (min-width: 768px) and (min-height: 576px) {
  .modal__logo {
    left: 90px;
  }
}
.modal__logo svg {
  max-width: 79px;
  height: auto;
}
@media (min-width: 768px) and (min-height: 576px) {
  .modal__logo svg {
    max-width: 100%;
  }
}
@media (max-width: 1599px) {
  .modal__logo {
    left: 20px;
  }
}
.modal__logo:hover {
  opacity: 0.6;
}
.modal__close {
  right: 90px;
  display: block;
  height: 76.5px;
  width: 76.5px;
  transition: all 0.5s cubic-bezier(0.64, 0.04, 0.35, 1);
}
@media (max-width: 1599px) {
  .modal__close {
    right: 20px;
  }
}
@media (max-width: 1199px) {
  .modal__close {
    right: 30px;
    height: 45px;
    width: 45px;
  }
}
@media (max-width: 991px) and (max-height: 576px) {
  .modal__close {
    right: 15px;
  }
}
.modal__close:active {
  background-color: red;
}
.modal__close svg {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}
.modal__close .svg-modal {
  fill: #00a1ab;
  stroke: #fff;
  transition: fill 0.2s cubic-bezier(0.64, 0.04, 0.35, 1);
}
.modal__close:hover {
  transform: rotate(360deg);
}
.modal__close:hover .svg-modal {
  fill: #12212b;
}

#search-form {
  display: none;
  visibility: hidden;
}

.search-results-wrapper {
  margin-bottom: 45px;
}
.search-results-wrapper .result__title {
  margin-bottom: 0;
}

.search-results {
  margin-bottom: 90px;
}
.search-results ol {
  list-style: none;
  margin: 0;
  padding: 0;
}
.search-results ol li {
  list-style: none;
  margin: 0;
  padding: 0;
}
.search-results ol li {
  position: relative;
  margin-bottom: 45px;
}

.modal--search__inner {
  margin-top: 135px;
}
@media (max-width: 991px) and (max-height: 576px) {
  .modal--search__inner {
    margin-top: 0;
    top: 0;
    height: 100vh;
  }
}
.modal--search__inner h2 {
  margin: 0;
}
@media (max-width: 1024px) {
  .modal--search__inner h2 {
    font-size: 47px;
    line-height: 57px;
    letter-spacing: -2px;
  }
}
@media (max-width: 1024px) and (max-width: 767px) {
  .modal--search__inner h2 {
    font-size: 35px;
    line-height: 45px;
    letter-spacing: -1px;
  }
}
@media (max-width: 991px) and (max-height: 576px) {
  .modal--search__inner h2 {
    text-align: center;
    -moz-text-align-last: center;
         text-align-last: center;
  }
}
@media (min-width: 1200px) and (min-height: 576px) {
  .modal--search__inner {
    padding: 0 15px;
  }
}
@media (min-width: 1200px) {
  .modal--search__close {
    right: 30px;
  }
}
@media (min-width: 1848px) {
  .modal--search__close {
    right: 90px;
  }
}
.modal--search__form {
  box-shadow: 0 0 20px 0 rgba(18, 33, 43, 0.08);
  border-radius: 30px;
  padding: 45px;
  margin-top: 90px;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
@media (max-width: 1200px) {
  .modal--search__form {
    margin-top: 45px;
  }
}
@media (max-width: 576px) {
  .modal--search__form {
    margin-top: 22.5px;
    padding: 15px;
    flex-direction: column;
    justify-content: center;
    align-items: center;
  }
}
.modal--search__form form {
  width: 100%;
  margin-right: 0;
  display: flex;
  justify-content: flex-start;
  align-items: center;
}
.modal--search__form .form-item {
  width: 100%;
  margin: 0 45px 0 0;
}
@media (max-width: 576px) {
  .modal--search__form .form-item {
    margin-right: 0 !important;
  }
}
.modal--search__form .form-item input[type=text] {
  width: 100%;
  background-color: #12212b;
  color: #fff;
  border: 4px solid #12212b;
  border-radius: 45px;
  padding: 10px 30px;
}
.modal--search__form .form-item input[type=text]::-moz-placeholder {
  color: #fff;
}
.modal--search__form .form-item input[type=text]:-ms-input-placeholder {
  color: #fff;
}
.modal--search__form .form-item input[type=text]::placeholder {
  color: #fff;
}
.modal--search__form .form-item input[type=text]:focus {
  background-color: #fff;
  color: #12212b;
}
.modal--search__form .form-item input[type=text]:focus::-moz-placeholder {
  color: #12212b;
}
.modal--search__form .form-item input[type=text]:focus:-ms-input-placeholder {
  color: #12212b;
}
.modal--search__form .form-item input[type=text]:focus::placeholder {
  color: #12212b;
}
.modal--search__form ::-moz-placeholder {
  opacity: 1;
  color: #fff;
}
.modal--search__form :-ms-input-placeholder {
  opacity: 1;
  color: #fff;
}
.modal--search__form ::placeholder {
  opacity: 1;
  color: #fff;
}
.modal--search__form .form-actions {
  display: none;
}
.modal--search .btn {
  min-width: 175px;
  box-shadow: none;
}
@media (max-width: 576px) {
  .modal--search .btn {
    margin-top: 22.5px;
    width: calc(100% - 30px);
    margin-top: 22.5px;
  }
}
.modal--search .form__field--submit {
  position: absolute;
  left: -999em;
}

.open-search {
  overflow: hidden;
}
.open-search .modal--search {
  -webkit-animation: discIn 0.25s cubic-bezier(0.64, 0.04, 0.35, 1) normal both;
          animation: discIn 0.25s cubic-bezier(0.64, 0.04, 0.35, 1) normal both;
}
.open-search .modal--search__inner {
  -webkit-animation: contentIn 0.2s 0.15s cubic-bezier(0.64, 0.04, 0.35, 1) normal both;
          animation: contentIn 0.2s 0.15s cubic-bezier(0.64, 0.04, 0.35, 1) normal both;
}

.close-search .modal--search {
  -webkit-animation: discOut 0.2s 0.2s cubic-bezier(0.64, 0.04, 0.35, 1) normal both;
          animation: discOut 0.2s 0.2s cubic-bezier(0.64, 0.04, 0.35, 1) normal both;
}
.close-search .modal--search__inner {
  -webkit-animation: contentOut 0.2s cubic-bezier(0.64, 0.04, 0.35, 1) normal both;
          animation: contentOut 0.2s cubic-bezier(0.64, 0.04, 0.35, 1) normal both;
}

.entity {
  margin: 67.5px 0;
}
@media (max-width: 1599px) {
  .entity {
    margin: 45px 0;
  }
}
@media (max-width: 767px) {
  .entity {
    margin: 30px 0;
  }
}
.entity img {
  width: 100%;
  height: auto;
}
.entity .image {
  position: relative;
}
.entity__body {
  margin-top: 0;
}
.entity__video iframe {
  width: 100%;
}
.entity__quote blockquote {
  font-family: "montserratsemibold", sans-serif;
  font-weight: 400;
  margin: 0;
  font-size: 42px;
  line-height: 52px;
}
@media (max-width: 767px) {
  .entity__quote blockquote {
    font-size: 25px;
    line-height: 35px;
  }
}
.entity__quote footer {
  display: flex;
  align-items: center;
}
.entity__quote p {
  margin-bottom: 0;
}
.entity__quote cite {
  font-family: "montserratregular", arial, sans-serif;
  font-size: 18px;
  line-height: 32px;
  font-style: normal;
}
.entity__quote cite .name {
  font-family: "montserratsemibold", sans-serif;
  font-weight: normal;
}
.entity__quote .rating {
  display: inline-flex;
  margin-right: 15px;
}
.entity__quote .rating__star {
  width: 24px;
  height: 24px;
  margin-right: 5px;
}
.entity__quote .rating__star:last-child {
  margin-right: 0;
}
.entity__quote .rating--1 .rating__star:nth-child(-n+1) path {
  fill: #00a1ab;
  stroke: #00a1ab;
}
.entity__quote .rating--2 .rating__star:nth-child(-n+2) path {
  fill: #00a1ab;
  stroke: #00a1ab;
}
.entity__quote .rating--3 .rating__star:nth-child(-n+3) path {
  fill: #00a1ab;
  stroke: #00a1ab;
}
.entity__quote .rating--4 .rating__star:nth-child(-n+4) path {
  fill: #00a1ab;
  stroke: #00a1ab;
}
.entity__quote .rating--5 .rating__star:nth-child(-n+5) path {
  fill: #00a1ab;
  stroke: #00a1ab;
}
.entity__gallery a {
  display: block;
  opacity: 1;
}
.entity__gallery a img {
  display: block;
}
.entity__gallery a:hover {
  opacity: 0.6;
}
.entity__linked-logos {
  display: flex;
  flex-direction: column;
  align-items: center;
}
@media (min-width: 768px) {
  .entity__linked-logos {
    align-items: flex-start;
  }
}
.entity__linked-logos h3 {
  margin: 0;
}
.entity__linked-logos .logos {
  display: flex;
  flex-wrap: wrap;
  margin: 40px 0 0;
}
@media (min-width: 768px) {
  .entity__linked-logos .logos {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
}
.entity__linked-logos a {
  display: block;
  margin-bottom: 40px;
}
@media (min-width: 768px) {
  .entity__linked-logos a {
    width: calc(50% - 15px);
  }
}
.entity__linked-logos a:hover, .entity__linked-logos a:focus {
  opacity: 0.7;
}
.entity__linked-logos img {
  width: auto;
  display: block;
}
.entity__view:first-child {
  margin-top: 0;
}
.entity__embed iframe {
  width: 100%;
}
.entity__accordion {
  /* title opened */
  /* title closed */
}
.entity__accordion .js-accordion {
  border: 4px solid #12212b;
  border-radius: 45px;
  padding: 15px 30px;
  margin-bottom: 30px;
}
.entity__accordion .js-accordion:last-child {
  margin-bottom: 0;
}
.entity__accordion .js-accordion__panel {
  display: none;
}
.entity__accordion .accordion__title {
  margin: 0;
  padding-top: 6px;
}
.entity__accordion .accordion__header {
  display: flex;
  width: 100%;
  border: 0;
  background-color: transparent;
  -moz-text-align-last: left;
       text-align-last: left;
  justify-content: space-between;
  padding: 0;
  align-items: center;
}
.entity__accordion .accordion__header::after {
  background-position: center center;
  background-repeat: no-repeat;
  background-size: contain;
  content: "" !important;
  transition: all 0.2s cubic-bezier(0.64, 0.04, 0.35, 1);
  background-image: url("../img/icon-arrow-left.svg");
  transform: rotate(180deg);
  height: 20px;
  width: 20px;
}
.entity__accordion .accordion__header:hover::after, .entity__accordion .accordion__header[aria-expanded=true]::after {
  transform: rotate(270deg);
}
.entity__accordion .accordion__header:focus {
  outline: 0;
}
.entity__accordion .accordion__panel {
  display: block;
  overflow: hidden;
  opacity: 1;
  transition: all 0s ease, max-height 0.2s ease, opacity 0.2s ease, padding 0.2s ease, margin 0.2s ease;
  max-height: 100em;
  visibility: visible;
  transition-delay: 0s;
  border-top: 4px solid #12212b;
  padding-top: 20px;
  margin-top: 20px;
}
.entity__accordion .accordion__panel[aria-hidden=true] {
  display: block;
  max-height: 0;
  opacity: 0;
  visibility: hidden;
  transition-delay: 0.2s, 0s, 0s;
  padding-top: 0;
  margin-top: 0;
}
.entity__accordion .accordion__panel p:last-child {
  margin-bottom: 20px;
}
.entity__accordion [aria-expanded=true]:after {
  content: "-";
}
.entity__accordion [aria-expanded=false]:after {
  content: "+";
}
.entity .signpost {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.entity .signpost--reverse {
  flex-direction: row-reverse;
}
@media (max-width: 767px) {
  .entity .signpost {
    flex-direction: column;
  }
}
.entity .signpost img {
  width: 50%;
  height: auto;
  display: block;
}
@media (max-width: 767px) {
  .entity .signpost img {
    width: 100%;
    margin-bottom: 30px;
  }
}
.entity .signpost .entity {
  margin-bottom: 0;
}
.entity__signpost .signpost {
  margin-top: 67.5px;
}
@media (max-width: 1199px) {
  .entity__signpost .signpost {
    margin-top: 45px;
  }
}
@media (max-width: 991px) {
  .entity__signpost .signpost {
    margin-top: 30px;
  }
}
.entity__signpost .signpost__content {
  width: 35%;
}
@media (max-width: 1599px) {
  .entity__signpost .signpost__content {
    width: 45%;
  }
}
@media (max-width: 767px) {
  .entity__signpost .signpost__content {
    width: 100%;
  }
}
.entity__image-text .signpost {
  align-items: flex-start;
}
.entity__image-text .signpost img {
  width: 40%;
  margin-right: 45px;
}
@media (max-width: 767px) {
  .entity__image-text .signpost img {
    margin-right: 0;
    width: 100%;
  }
}
.entity__image-text .signpost__content {
  width: 60%;
}
@media (max-width: 767px) {
  .entity__image-text .signpost__content {
    width: 100%;
  }
}
.entity__spektrix-component {
  border: 4px solid #12212b;
  border-right: 0;
  border-left: 0;
  padding: 45px 0;
}
.entity__statistics {
  background-color: #00a1ab;
  color: #fff;
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 67.5px 90px;
  border-radius: 200px;
  flex-wrap: wrap;
  justify-content: center;
}
@media (max-width: 1599px) {
  .entity__statistics {
    padding: 45px;
  }
}
@media (max-width: 1199px) {
  .entity__statistics {
    padding: 60px 60px 30px;
  }
}
@media (max-width: 767px) {
  .entity__statistics {
    border-radius: 90px;
  }
}
.entity__statistics h2 {
  text-align: center;
  -moz-text-align-last: center;
       text-align-last: center;
}
@media (max-width: 1599px) {
  .entity__statistics h2 {
    width: 100%;
  }
}
.entity__statistics .stat {
  margin: 0 45px;
  display: flex;
  flex-direction: column;
  align-items: center;
}
@media (max-width: 1199px) {
  .entity__statistics .stat {
    margin-bottom: 30px;
  }
}
.entity__statistics .stat__value {
  margin-bottom: 0;
}
@media (max-width: 767px) {
  .entity__statistics .stat__value {
    font-size: 2.5em;
    line-height: 1.5;
    letter-spacing: normal;
  }
}
.entity__statistics .stat__title {
  text-align: center;
  -moz-text-align-last: center;
       text-align-last: center;
}
.entity__downloads a {
  text-decoration: underline;
}
.entity__downloads a:hover {
  text-decoration: none;
}
.entity__site-links .listing {
  margin: 90px 0 90px -15px;
}
@media (max-width: 1599px) {
  .entity__site-links .listing {
    margin: 22.5px 0 22.5px -15px;
  }
}
.entity__site-links .site-link {
  box-shadow: 0 0 20px 0 rgba(18, 33, 43, 0.08);
  display: block;
  height: 100%;
  width: 100%;
  background-color: #fff;
  padding-top: 80%;
  border-radius: 16px;
  position: relative;
}
@media (max-width: 767px) {
  .entity__site-links .site-link {
    padding-top: 15%;
  }
}
.entity__site-links .site-link span {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
}
.entity__site-links .site-link:hover {
  background-color: #00a1ab;
  text-decoration: none;
  color: #fff;
}
.entity__title {
  margin-top: 0;
}
.entity__title h1 {
  margin-bottom: 0;
}
.entity__title .dates {
  margin-top: 30px;
}
.entity__spektrix-donation {
  padding-top: 40px;
  padding-bottom: 40px;
  border-top: 4px solid #12212b;
  border-bottom: 4px solid #12212b;
}
.entity__spektrix-donation .donate {
  display: flex;
  flex-wrap: wrap;
  flex-direction: row;
  margin-top: 30px;
}
@media (max-width: 767px) {
  .entity__spektrix-donation .donate {
    flex-direction: column;
  }
}
.entity__spektrix-donation .donate > input[type=number] {
  max-width: 250px;
  width: 100%;
  margin-right: 20px;
}
@media (max-width: 767px) {
  .entity__spektrix-donation .donate > input[type=number] {
    margin-right: 0;
  }
}
.entity__spektrix-donation .donate > .btn {
  box-shadow: none;
}
@media (max-width: 767px) {
  .entity__spektrix-donation .donate > .btn {
    align-self: flex-start;
    margin-top: 30px;
  }
}
.entity__spektrix-donation .messages {
  border-width: 1px;
  margin-top: 30px;
}

.gift-vouchers__container .invalid-form-message {
  display: none;
}
.gift-vouchers__container.invalid-form .invalid-form-message {
  display: block;
  color: red;
}
.gift-vouchers > .gift-vouchers__row label span {
  display: none;
}
.gift-vouchers > .gift-vouchers__row.invalid label span {
  display: block;
  color: red;
}
.gift-vouchers .choices {
  background: none !important;
  background-color: transparent !important;
}
.gift-vouchers .choices.is-focused .choices__list--single {
  background: #12212b url(/themes/pippip/dist/img/cta-arrow-down.svg) no-repeat right 22.5px center !important;
  background-color: #12212b !important;
  color: #fff !important;
}
.gift-vouchers .choices__list--single {
  background: #fff url(/themes/pippip/dist/img/cta-arrow-down--inverted.svg) no-repeat right 22.5px center;
  background-size: 36px;
  min-width: 280px;
  padding-right: 60px;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background-color: #fff;
  border: 4px solid #12212b;
  -webkit-border-radius: 0;
  border-radius: 0;
  border-radius: 30px;
  color: #12212b;
  font-family: montserratregular, arial, sans-serif;
  font-size: 18px;
  line-height: 32px;
  min-height: 65px;
  outline: 0;
  display: flex;
  align-items: center;
}
.is-focused .gift-vouchers .choices__list--single {
  background: #12212b url(/themes/pippip/dist/img/cta-arrow-down.svg) no-repeat right 22.5px center;
  background-color: #000;
  color: #fff;
}
.gift-vouchers .choices__list--single .choices__item--selectable {
  padding-left: 20px;
}
.gift-vouchers .choices__inner {
  padding: 0;
  background: none !important;
}
.gift-vouchers .choices[data-type*=select-one]:after {
  display: none;
}

@-webkit-keyframes slideInUp {
  0% {
    opacity: 0;
    transform: translateY(100%);
  }
  80% {
    transform: scale(1.02);
  }
  100% {
    opacity: 1;
    transform: translateY(0) scale(1);
  }
}

@keyframes slideInUp {
  0% {
    opacity: 0;
    transform: translateY(100%);
  }
  80% {
    transform: scale(1.02);
  }
  100% {
    opacity: 1;
    transform: translateY(0) scale(1);
  }
}
.emmsg {
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  background-color: #12212b;
  z-index: 100;
  color: #fff;
  border-top: 1px solid #fff;
  overflow-y: scroll;
  max-height: 40vh;
}
@media (orientation: landscape) and (max-width: 991px) and (max-height: 575px) {
  .emmsg {
    max-height: 50vh;
  }
}
@media (min-width: 768px) and (min-height: 576px) {
  .emmsg {
    overflow-y: visible;
    max-height: none;
    padding: 22.5px 0;
  }
}
.emmsg:not(.hidden) {
  opacity: 0;
  transform: translateY(100%);
  -webkit-animation: slideInUp 0.2s 0.3s cubic-bezier(0.77, 0.29, 0.35, 0.72) 1 forwards;
          animation: slideInUp 0.2s 0.3s cubic-bezier(0.77, 0.29, 0.35, 0.72) 1 forwards;
}
.emmsg__inner {
  display: flex;
  flex-direction: column;
  width: 100%;
  align-items: center;
}
@media (min-width: 768px) and (min-height: 576px) {
  .emmsg__inner {
    flex-direction: row-reverse;
    justify-content: space-between;
    align-items: flex-start;
  }
}
.emmsg__inner--center {
  align-items: center;
}
.emmsg__inner--center + .emmsg__content {
  margin-top: 15px;
}
.emmsg__title {
  margin: 0;
  display: flex;
  align-items: center;
}
.emmsg__title:before {
  content: "";
  background: url("../img/icon-warning--white.svg") no-repeat center center;
  background-size: contain;
  width: 24px;
  height: 22px;
  display: inline-block;
  margin-right: 22.5px;
}
.emmsg__content p {
  margin: 15px 0 0;
}
.emmsg__content p:first-of-type {
  margin-top: 0;
}
.emmsg__close {
  height: 42px;
  width: 42px;
  flex: 0 0 auto;
}
@media (min-width: 768px) and (min-height: 576px) {
  .emmsg__close {
    margin-left: 30px;
  }
}
.emmsg__close .svg {
  fill: #fff;
}
.emmsg__close:hover .svg {
  fill: #fff;
}
@media (max-width: 991px) and (max-height: 575px) {
  .emmsg--body {
    overflow-y: hidden;
  }
}

.banner {
  position: relative;
  overflow: hidden;
  margin-bottom: 135px;
  height: 45vh;
  z-index: 1;
}
@media (max-width: 1199px) {
  .banner {
    margin-bottom: 90px;
  }
}
@media (max-width: 991px) {
  .banner {
    margin-bottom: 45px;
  }
}
.banner .credit {
  z-index: 50;
}
.banner img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  display: block;
  z-index: 10;
}
.banner__video {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  z-index: 10;
}
.banner__control {
  display: block;
  height: 45px;
  width: 45px;
  border-radius: 50%;
  border: 3px solid #fff;
  position: absolute;
  right: 10px;
  bottom: 10px;
  z-index: 40;
  text-indent: -999em;
  background-color: #00a1ab;
  transition: 0.2s background-color cubic-bezier(0.64, 0.04, 0.35, 1);
  overflow: hidden;
}
.banner__control:hover, .banner__control:focus, .banner__control:active {
  background-color: #12212b;
}
@media (min-width: 370px) {
  .banner__control {
    right: 20px;
    bottom: 20px;
  }
}
@media (min-width: 768px) and (min-height: 576px) {
  .banner__control {
    height: 56.25px;
    width: 56.25px;
    right: 35px;
    bottom: 35px;
  }
}
@media (min-width: 1200px) and (min-height: 900px) {
  .banner__control {
    width: 72px;
    height: 72px;
    border-width: 4px;
  }
}
.banner__control--pause {
  background: #00a1ab url("../img/icon-pause--white.svg") no-repeat center center;
  background-size: 45%;
}
.banner__control--play {
  background: #00a1ab url("../img/icon-play--white.svg") no-repeat center center;
  background-size: 50%;
}
.banner::after {
  content: "";
  background-color: #12212b;
  opacity: 0.6;
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  z-index: 20;
}
.banner__inner {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  display: flex;
  align-items: center;
  color: #fff;
  z-index: 40;
}
.banner__inner > .grid {
  width: 100%;
}
.banner__inner h1 {
  max-width: 1100px;
}
.banner__inner p {
  font-family: "montserratsemibold", sans-serif;
  font-weight: normal;
  max-width: 750px;
}
.banner .entity {
  margin-bottom: 0;
}
.banner--home {
  height: 75vh;
}
@media (min-width: 370px) and (max-height: 575px) {
  .banner--home.banner--media {
    min-height: 400px;
  }
}
@media (max-width: 369px) and (max-height: 575px) {
  .banner--home.banner--media h1 {
    font-size: 29px;
    line-height: 39px;
    letter-spacing: -1px;
  }
}
.banner--media h1 {
  font-size: 47px;
  line-height: 57px;
  letter-spacing: -2px;
}
@media (max-width: 767px) {
  .banner--media h1 {
    font-size: 35px;
    line-height: 45px;
    letter-spacing: -1px;
  }
}
@media (min-width: 1200px) and (min-height: 768px) {
  .banner--media h1 {
    font-size: 76px;
    line-height: 86px;
    letter-spacing: -3px;
  }
}
.banner .btn {
  box-shadow: inset 0 0 0 4px #fff;
}
.banner .btn:focus {
  outline-color: #fff;
}

.no-banner {
  margin-top: 90px;
}
@media (max-width: 1599px) {
  .no-banner {
    margin-top: 45px;
  }
}
.my-account .no-banner {
  margin-top: 0;
}

.overlay {
  position: absolute;
  height: auto;
  width: 100%;
  -o-object-fit: fill;
     object-fit: fill;
  bottom: -60%;
  left: 0;
  z-index: 30;
}
.overlay .overlay {
  fill: #fff;
}

.credit {
  position: absolute;
  bottom: 45px;
  right: 45px;
  z-index: 4;
  cursor: help !important;
  height: 42px;
  width: 42px;
}
@media (max-width: 991px) {
  .credit {
    bottom: 30px;
    right: 30px;
  }
}
@media (max-width: 767px) {
  .credit {
    bottom: 15px;
    right: 15px;
  }
}
.credit span {
  display: block;
  height: 100%;
  width: 100%;
}
.credit .bg {
  fill: #fff;
}
.credit .fg {
  font-family: "montserratsemibold", sans-serif;
  font-weight: normal;
  font-size: 1.2em;
  fill: #12212b;
}
.credit:before {
  content: attr(data-credit);
  text-indent: 0;
  background: #12212b;
  color: #fff;
  opacity: 0;
  position: absolute;
  right: 42px;
  top: 0;
  z-index: -1;
  padding: 0 21px;
  height: 42px;
  line-height: 42px;
  white-space: nowrap;
  transition: opacity 0.2s cubic-bezier(0.64, 0.04, 0.35, 1);
  pointer-events: none;
  border-radius: 3px;
  letter-spacing: 0;
  word-spacing: 0;
}
.credit:hover .bg {
  fill: #12212b;
}
.credit:hover .fg {
  fill: #fff;
}
.credit:hover::before {
  opacity: 1;
}

.sidebar {
  margin-bottom: 45px;
  background-color: #00a1ab;
  padding: 30px;
  padding-top: 45px;
  border-bottom-right-radius: 20px;
  border-bottom-left-radius: 20px;
  color: #fff;
}
@media (max-width: 991px) {
  .sidebar {
    padding: 15px;
    border-bottom-right-radius: 15px;
    border-bottom-left-radius: 15px;
  }
}
.sidebar--event {
  padding: 20px;
}
@media (min-width: 1200px) {
  .sidebar--event {
    padding: 40px;
  }
}
.sidebar__events {
  margin-top: 24px;
}
.sidebar__events-title {
  margin-top: 24px;
  font-size: 18px;
  line-height: 28px;
  letter-spacing: -0.5px;
}
.sidebar__events-title:first-child {
  margin-top: 0;
}
.sidebar__events-empty {
  font-size: 18px;
  line-height: 28px;
  letter-spacing: -0.5px;
  margin: 0 0 16px;
}
.sidebar__event-list {
  width: 100%;
  margin: 0;
}
.sidebar__event-list li {
  padding: 24px 0 0;
  margin-top: 24px;
}
.sidebar__event {
  display: flex;
  align-items: center;
  border-top: 2px solid #fff;
}
.sidebar__event:first-child {
  margin-top: 0;
}
.sidebar__event-content {
  display: flex;
  flex-direction: column;
}
.sidebar__event-time {
  flex: 0 0 auto;
  width: 107px;
  height: 97px;
  background-color: #fff;
  color: #12212b;
  font-family: "montserratsemibold", sans-serif;
  font-weight: normal;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 16px;
  margin-right: 24px;
}
.sidebar__event-venue {
  font-family: "montserratsemibold", sans-serif;
  font-weight: normal;
}
.sidebar__event + .sidebar__event {
  border-top: none;
  padding-top: 0;
}
.sidebar__row {
  width: 100%;
  margin-top: 24px;
}
.sidebar__row:first-child {
  margin-top: 0;
}
.sidebar .cta {
  font-family: "montserratsemibold", sans-serif;
  font-weight: normal;
  display: inline-block;
  color: #fff;
  background-color: #12212b;
  padding: 12px;
  line-height: 1;
  text-decoration: none;
  transition: all 0.2s cubic-bezier(0.64, 0.04, 0.35, 1);
  border: none;
  background-color: #fff;
  color: #00a1ab;
}
.sidebar .cta:hover, .sidebar .cta:focus, .sidebar .cta.active {
  background-color: #6d6e71;
  text-decoration: none;
  color: #fff;
}
.sidebar .cta:focus {
  outline-color: #12212b;
}
.sidebar .cta:hover {
  background-color: #6d6e71;
}
.sidebar ul.menu {
  list-style: none;
  margin: 0;
  padding: 0;
}
.sidebar ul.menu li {
  list-style: none;
  margin: 0;
  padding: 0;
}
.sidebar ul.menu ul.menu {
  padding-left: 30px;
}
.sidebar ul.menu a {
  font-family: "montserratregular", arial, sans-serif;
  font-size: 18px;
  line-height: 32px;
  color: #fff;
}
.sidebar ul.menu a.is-active {
  font-family: "montserratsemibold", sans-serif;
  font-weight: normal;
}
.sidebar ul.menu .menu-item--active-trail > a {
  font-family: "montserratsemibold", sans-serif;
  font-weight: normal;
}
.sidebar h3 a {
  color: #fff;
}
.sidebar__latest-news .listing {
  margin-left: 0;
  width: 100%;
}
.sidebar__latest-news .listing li {
  padding: 0 0 30px;
  margin-bottom: 30px;
  border-bottom: 2px solid #fff;
}
.sidebar__info {
  display: flex;
  flex-wrap: wrap;
}
.sidebar__info-break {
  margin-top: 30px;
}
.sidebar__info strong {
  margin-right: 10px;
}
.sidebar__info a {
  font-family: "montserratregular", arial, sans-serif;
  font-size: 18px;
  line-height: 32px;
  color: #fff;
}
.sidebar--book {
  background-color: transparent;
  padding: 0;
}
.sidebar .entity__embed {
  margin: 30px 0;
}

.btn--book a {
  font-family: "montserratsemibold", sans-serif;
  font-weight: normal;
  display: inline-block;
  border-top-left-radius: 30px;
  border-bottom-left-radius: 30px;
  color: #fff;
  background-color: #00a1ab;
  padding: 24px 52.5px 23.0769230769px 24px;
  line-height: 1;
  cursor: pointer;
  text-decoration: none;
  position: relative;
  margin-right: 30px;
  transition: all 0.1s cubic-bezier(0.64, 0.04, 0.35, 1);
  box-shadow: inset 0 0 0 4px #fff;
  width: calc(100% - 30px);
  text-align: center;
  -moz-text-align-last: center;
       text-align-last: center;
  box-shadow: none;
}
.btn--book a::before, .btn--book a::after {
  background-position: center center;
  background-repeat: no-repeat;
  background-size: contain;
  background-image: url("../img/icon-smile.svg");
  background-size: 20px;
  background-position: 50% 55%;
  content: "";
  border: 4px solid #fff;
  border-radius: 50%;
  background-color: #00a1ab;
  height: 100%;
  width: 66px;
  display: inline-block;
  position: absolute;
  top: 0;
  right: -32px;
  transition: all 0.5s cubic-bezier(0.64, 0.04, 0.35, 1);
  z-index: 1;
}
.btn--book a::before {
  border: none;
  background-color: #12212b;
  height: calc(100% - 8px);
  width: 58px;
  top: 4px;
  right: -28px;
  z-index: 2;
  transform: rotate(360deg) scale(0);
  transition: all 0.5s cubic-bezier(0.64, 0.04, 0.35, 1);
}
.btn--book a:hover {
  text-decoration: none;
  color: #fff;
}
.btn--book a:hover::before {
  transform: rotate(0) scale(1);
}
.btn--book a:hover::after {
  transform: rotate(-360deg);
}
.btn--book a:focus {
  outline-color: #12212b;
}

/*
  Discover modal
*/
.btn--discover {
  min-width: 390px;
  margin-right: 0;
  border-radius: 30px;
  padding: 24px 24px 23.0769230769px;
  text-align: center;
  margin-bottom: 15px;
  background-color: #12212b;
  position: relative;
}
@media (max-width: 1599px) {
  .btn--discover {
    min-width: 0;
  }
}
.btn--discover::before, .btn--discover::after {
  display: none;
}
.btn--discover svg {
  display: block;
  margin: 0 auto;
}
.btn--discover svg path {
  transition: fill 0.2s cubic-bezier(0.64, 0.04, 0.35, 1);
}
.btn--discover:hover, .btn--discover:focus {
  background-color: #fff;
  color: #12212b;
}
.btn--discover:hover g:not(.circle),
.btn--discover:hover path:not(.circle), .btn--discover:focus g:not(.circle),
.btn--discover:focus path:not(.circle) {
  fill: #12212b;
}

.modal--discover {
  background-position: center center;
  background-repeat: no-repeat;
  background-size: contain;
  background-size: cover;
  background-color: #12212b;
  display: flex;
  justify-content: center;
  align-items: center;
  color: #fff;
}
@media (max-width: 991px) and (max-height: 576px) {
  .modal--discover {
    align-items: flex-end;
  }
}
.modal--discover::before {
  content: "";
  background-color: #12212b;
  opacity: 0.9;
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  z-index: 2;
}
@media (min-width: 1200px) {
  .modal--discover__logo {
    left: 30px;
  }
}
@media (min-width: 1848px) {
  .modal--discover__logo {
    left: 90px;
  }
}
@media (min-width: 1200px) {
  .modal--discover__close {
    right: 30px;
  }
}
@media (min-width: 1848px) {
  .modal--discover__close {
    right: 90px;
  }
}
.modal--discover__inner {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  position: relative;
  z-index: 10;
  opacity: 0;
  padding: 15px 0;
}
@media (min-width: 1200px) and (min-height: 576px) {
  .modal--discover__inner {
    flex-direction: row;
    justify-content: flex-start;
    padding: 0 15px;
  }
}
@media (max-width: 991px) and (max-height: 576px) {
  .modal--discover > .grid {
    height: 80vh;
    height: calc(var(--vh, 1vh) * 80);
  }
}
.modal--discover__content {
  width: 100%;
  margin: 0;
}
@media (min-width: 768px) and (min-height: 576px) {
  .modal--discover__content {
    margin: 30px 0;
  }
}
@media (min-width: 1200px) {
  .modal--discover__content {
    min-width: 40vw;
    width: 50%;
    margin-right: 67.5px;
  }
}
@media (min-width: 1600px) {
  .modal--discover__content {
    min-width: 0;
    min-width: 30vw;
    margin-right: 90px;
  }
}
.modal--discover__content h2 {
  font-size: 29px;
  line-height: 39px;
  letter-spacing: -1px;
}
@media (min-width: 410px) and (max-width: 1600px) and (min-height: 576px) {
  .modal--discover__content h2 {
    font-size: 47px;
    line-height: 57px;
    letter-spacing: -2px;
  }
}
@media (min-width: 410px) and (max-width: 1600px) and (min-height: 576px) and (max-width: 767px) {
  .modal--discover__content h2 {
    font-size: 35px;
    line-height: 45px;
    letter-spacing: -1px;
  }
}
@media (min-width: 1600px) {
  .modal--discover__content h2 {
    font-size: 76px;
    line-height: 86px;
    letter-spacing: -3px;
  }
}
.modal--discover__content p {
  font-family: "montserratsemibold", sans-serif;
  font-weight: normal;
  font-size: 1em;
}
@media (min-width: 410px) and (min-height: 576px) {
  .modal--discover__content p {
    font-size: 1.2em;
  }
}
.modal--discover__content .btn {
  margin-top: 30px;
}
.modal--discover__links {
  align-items: center;
  margin-top: 45px;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
}
@media (min-width: 576px) and (max-width: 1199px) {
  .modal--discover__links {
    justify-content: center;
  }
}
@media (min-width: 768px) and (min-height: 576px) {
  .modal--discover__links {
    margin-top: 0;
  }
}
.modal--discover__links a {
  text-decoration: none;
}
.modal--discover__links a:hover p, .modal--discover__links a:focus p {
  color: var(--link-body-colour);
}
.modal--discover__links a p {
  margin-top: 15px;
  color: #fff;
  transition: 0.2s;
}
.modal--discover__pattern, .modal--discover__image {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  opacity: 0;
  -webkit-animation: fadeIn 0.2s cubic-bezier(0.64, 0.04, 0.35, 1) forwards;
          animation: fadeIn 0.2s cubic-bezier(0.64, 0.04, 0.35, 1) forwards;
  -webkit-animation-play-state: paused;
          animation-play-state: paused;
}
.modal--discover__image {
  background-color: #12212b;
  z-index: 5;
  -o-object-fit: cover;
     object-fit: cover;
  opacity: 0;
  display: block;
  -webkit-animation-delay: 0.05s;
          animation-delay: 0.05s;
}
.modal--discover__image.shown {
  -webkit-animation-play-state: running;
          animation-play-state: running;
}
.modal--discover__image.hiding {
  -webkit-animation: fadeOut 0.2s cubic-bezier(0.64, 0.04, 0.35, 1) forwards;
          animation: fadeOut 0.2s cubic-bezier(0.64, 0.04, 0.35, 1) forwards;
}
.modal--discover__pattern {
  background-position: center center;
  background-repeat: no-repeat;
  background-size: contain;
  z-index: 6;
  background-size: cover;
  opacity: 0;
  -webkit-animation-duration: 0.15s;
          animation-duration: 0.15s;
  background-color: rgba(18, 33, 43, 0.9);
}
.modal--discover__pattern.vertical--pttc {
  background-image: url("../img/background-pttc-wh.svg");
}
.modal--discover__pattern.vertical--hf {
  background-image: url("../img/background-hf-wh.svg");
}
.modal--discover__pattern.vertical--trw {
  background-image: url("../img/background-trw-wh.svg");
}
.modal--discover__pattern.vertical--pm {
  background-image: url("../img/background-pm-wh.svg");
}
.modal--discover__pattern.shown {
  -webkit-animation-play-state: running;
          animation-play-state: running;
}
.modal--discover__pattern.hiding {
  opacity: 1;
  -webkit-animation: fadeOut 0.2s 0.1s cubic-bezier(0.64, 0.04, 0.35, 1) forwards;
          animation: fadeOut 0.2s 0.1s cubic-bezier(0.64, 0.04, 0.35, 1) forwards;
}
.modal--discover .overlay {
  z-index: 3;
}
.modal--discover .vertical-link {
  display: grid;
  margin: 0 15px;
  grid-template-rows: 1fr auto;
  grid-gap: 20px;
  align-items: center;
}
@media (min-width: 576px) and (max-width: 1199px) {
  .modal--discover .vertical-link {
    margin: 0 30px;
  }
}
@media (min-width: 1200px) {
  .modal--discover .vertical-link {
    margin: 0 30px;
  }
}
.modal--discover .vertical-link .vertical-link__content {
  display: flex;
  align-items: flex-end;
}
.modal--discover .vertical-link img {
  width: 100%;
  height: auto;
  display: block;
  max-height: 65px;
  -o-object-fit: contain;
     object-fit: contain;
}
@media (min-width: 768px) {
  .modal--discover .vertical-link img {
    max-height: 80px;
  }
}
@media (min-width: 992px) and (min-height: 576px) {
  .modal--discover .vertical-link img {
    max-height: 125px;
  }
}
.modal--discover .vertical-link:hover, .modal--discover .vertical-link:focus {
  transform: scale(1.2);
}
.modal--discover .vertical-link:hover .vertical-link__content, .modal--discover .vertical-link:focus .vertical-link__content {
  display: block;
}
.modal--discover .vertical-link:hover .vertical-link__content p, .modal--discover .vertical-link:focus .vertical-link__content p {
  color: #fff;
}

.open-discover {
  overflow: hidden;
}
.open-discover .modal--discover {
  -webkit-animation: discIn 0.25s cubic-bezier(0.64, 0.04, 0.35, 1) normal both;
          animation: discIn 0.25s cubic-bezier(0.64, 0.04, 0.35, 1) normal both;
}
.open-discover .modal--discover__inner {
  -webkit-animation: contentIn 0.2s 0.15s cubic-bezier(0.64, 0.04, 0.35, 1) normal both;
          animation: contentIn 0.2s 0.15s cubic-bezier(0.64, 0.04, 0.35, 1) normal both;
}

.close-discover .modal--discover {
  -webkit-animation: discOut 0.2s 0.2s cubic-bezier(0.64, 0.04, 0.35, 1) normal both;
          animation: discOut 0.2s 0.2s cubic-bezier(0.64, 0.04, 0.35, 1) normal both;
}
.close-discover .modal--discover__inner {
  -webkit-animation: contentOut 0.2s cubic-bezier(0.64, 0.04, 0.35, 1) normal both;
          animation: contentOut 0.2s cubic-bezier(0.64, 0.04, 0.35, 1) normal both;
}

/*
  View filters
*/
.filters {
  margin-bottom: 90px;
}

.filters,
.views-exposed-form {
  display: flex;
  justify-content: flex-start;
  align-items: center;
}
.filters h3,
.views-exposed-form h3 {
  margin-bottom: 0;
  width: 100%;
}
.filters .see-all,
.views-exposed-form .see-all {
  margin-left: auto;
}

.views-exposed-form label {
  display: none;
}
.views-exposed-form .js-form-item,
.views-exposed-form .js-form-actions {
  margin: 0 45px 0 0;
  padding: 0;
}

.choices {
  min-width: 180px;
  font-family: "montserratsemibold", sans-serif;
  font-weight: normal;
  background-color: #12212b;
  color: #fff;
  transition: all 0.2s cubic-bezier(0.64, 0.04, 0.35, 1);
}
.choices.is-open {
  background-color: #6d6e71;
}
.choices__inner {
  background-color: transparent;
  font-size: 18px;
  line-height: 28px;
  letter-spacing: -0.5px;
  border: 0;
  border-radius: 0;
  padding: 8px 12px;
  transition: all 0.2s cubic-bezier(0.64, 0.04, 0.35, 1);
}
.choices__inner:hover {
  background-color: #6d6e71;
}
.choices__list {
  padding: 0;
}
.choices__list--dropdown .choices__item {
  padding: 6px 10px;
  color: #12212b;
  transition: all 0.2s cubic-bezier(0.64, 0.04, 0.35, 1);
}
.choices__list--dropdown .choices__item::after {
  display: none;
}
.choices__list--dropdown .choices__item.is-highlighted {
  background-color: #12212b;
  color: #fff;
}
.choices[data-type*=select-one] .choices__inner {
  padding-bottom: 8px;
}
.choices[data-type*=select-one]::after {
  border-color: #fff transparent transparent transparent;
}

/**
 * Responsive Styles
 */
.filters,
.filters .views-exposed-form {
  position: relative;
}
@media (max-width: 1200px) {
  .filters,
.filters .views-exposed-form {
    width: 100%;
    flex-wrap: wrap;
    justify-content: space-between;
  }
}
.filters select,
.filters .views-exposed-form select {
  display: none !important;
}

.filters input[type=submit] {
  width: 100%;
  text-align: left;
  margin: 0;
  background: none;
  color: #12212b;
  padding: 0;
  font-family: "montserratsemibold", sans-serif;
  font-weight: normal;
}
@media (min-width: 1200px) {
  .filters input[type=submit] {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 119%;
  }
}
@media (max-width: 1200px) {
  .filters .form-item,
.filters .form-actions {
    width: calc(33.3333333333% - 15px);
    margin: 15px 0 0;
  }
}
@media (max-width: 768px) {
  .filters .form-item,
.filters .form-actions {
    width: calc(50% - 15px);
  }
}
@media (max-width: 576px) {
  .filters .form-item,
.filters .form-actions {
    width: 100%;
  }
}
@media (max-width: 1200px) and (min-width: 769px) {
  .filters .form-item:nth-child(-n+3),
.filters .form-actions:nth-child(-n+3) {
    margin-top: 0;
  }
}
@media (max-width: 768px) and (min-width: 577px) {
  .filters .form-item:nth-child(-n+2),
.filters .form-actions:nth-child(-n+2) {
    margin-top: 0;
  }
}
@media (max-width: 576px) {
  .filters .form-item:first-child,
.filters .form-actions:first-child {
    margin-top: 0;
  }
}
@media (max-width: 1200px) {
  .filters .cta {
    width: calc(33.3333333333% - 15px);
    margin: 15px 0 0;
  }
}
@media (max-width: 768px) {
  .filters .cta {
    width: calc(50% - 15px);
  }
}
@media (max-width: 576px) {
  .filters .cta {
    width: 100%;
  }
}
@media (max-width: 1200px) {
  .filters .cta:last-of-type {
    margin: 15px auto 0 20px;
  }
}
@media (max-width: 768px) {
  .filters .cta:last-of-type {
    margin: 15px 0 0;
  }
}

.schedule .view__performances_by_events, .schedule .view__whats_on_show_times, .schedule .view__events_by_venue {
  width: 100%;
}
.schedule .view__performances_by_events > header, .schedule .view__whats_on_show_times > header, .schedule .view__events_by_venue > header {
  display: flex;
  justify-content: center;
  margin: 30px 0;
}
.schedule .view__performances_by_events > div, .schedule .view__whats_on_show_times > div, .schedule .view__events_by_venue > div {
  display: flex;
  flex-direction: column;
  margin-bottom: 30px;
}
@media (max-width: 768px) {
  .schedule .view__performances_by_events h3, .schedule .view__whats_on_show_times h3, .schedule .view__events_by_venue h3 {
    margin: auto;
  }
}
.schedule .view__performances_by_events .listing, .schedule .view__whats_on_show_times .listing, .schedule .view__events_by_venue .listing {
  margin-top: 0;
}
.schedule .view__performances_by_events .listing > li > .schedule__row .schedule__item, .schedule .view__whats_on_show_times .listing > li > .schedule__row .schedule__item, .schedule .view__events_by_venue .listing > li > .schedule__row .schedule__item {
  border-radius: 0;
  background-color: transparent;
  box-shadow: none;
  border-bottom: 1px solid #000000;
  padding: 0.5rem 0;
}
.schedule .view__performances_by_events .listing > li > .schedule__row .schedule__item .schedule__info, .schedule .view__whats_on_show_times .listing > li > .schedule__row .schedule__item .schedule__info, .schedule .view__events_by_venue .listing > li > .schedule__row .schedule__item .schedule__info {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
}
@media (max-width: 768px) {
  .schedule .view__performances_by_events .listing > li > .schedule__row .schedule__item .schedule__info, .schedule .view__whats_on_show_times .listing > li > .schedule__row .schedule__item .schedule__info, .schedule .view__events_by_venue .listing > li > .schedule__row .schedule__item .schedule__info {
    align-items: center;
  }
}
@media (max-width: 370px) {
  .schedule .view__performances_by_events .listing > li > .schedule__row .schedule__item .schedule__info, .schedule .view__whats_on_show_times .listing > li > .schedule__row .schedule__item .schedule__info, .schedule .view__events_by_venue .listing > li > .schedule__row .schedule__item .schedule__info {
    align-items: flex-start;
  }
}
.schedule .view__performances_by_events .listing > li > .schedule__row .schedule__item .schedule__info > .schedule__duration, .schedule .view__whats_on_show_times .listing > li > .schedule__row .schedule__item .schedule__info > .schedule__duration, .schedule .view__events_by_venue .listing > li > .schedule__row .schedule__item .schedule__info > .schedule__duration {
  display: block;
  text-align: left;
}
.schedule .view__performances_by_events .listing > li > .schedule__row .schedule__item .schedule__info > .schedule__sold-out, .schedule .view__whats_on_show_times .listing > li > .schedule__row .schedule__item .schedule__info > .schedule__sold-out, .schedule .view__events_by_venue .listing > li > .schedule__row .schedule__item .schedule__info > .schedule__sold-out {
  font-weight: bold;
}
.schedule .view__performances_by_events .listing > li > .schedule__row .schedule__item .schedule__info > .schedule__venue:before, .schedule .view__whats_on_show_times .listing > li > .schedule__row .schedule__item .schedule__info > .schedule__venue:before, .schedule .view__events_by_venue .listing > li > .schedule__row .schedule__item .schedule__info > .schedule__venue:before {
  content: "";
  background: url("../img/map-marker-2.svg") no-repeat center center;
  background-size: contain;
  width: 20px;
  height: 20px;
  display: inline-block;
  margin-right: 10px;
}
@media (max-width: 768px) {
  .schedule .view__performances_by_events .listing > li > .schedule__row .schedule__item, .schedule .view__whats_on_show_times .listing > li > .schedule__row .schedule__item, .schedule .view__events_by_venue .listing > li > .schedule__row .schedule__item {
    border-bottom: none;
    flex-direction: column;
  }
}
.schedule .view__performances_by_events .listing > li > .schedule__row .node, .schedule .view__whats_on_show_times .listing > li > .schedule__row .node, .schedule .view__events_by_venue .listing > li > .schedule__row .node {
  display: flex;
  justify-content: space-between;
  align-items: stretch;
  align-self: flex-start;
}
@media (max-width: 768px) {
  .schedule .view__performances_by_events .listing > li > .schedule__row .node, .schedule .view__whats_on_show_times .listing > li > .schedule__row .node, .schedule .view__events_by_venue .listing > li > .schedule__row .node {
    flex-direction: column;
    align-self: center;
  }
}
.schedule .view__performances_by_events .listing > li > .schedule__row .node > .schedule__time, .schedule .view__whats_on_show_times .listing > li > .schedule__row .node > .schedule__time, .schedule .view__events_by_venue .listing > li > .schedule__row .node > .schedule__time {
  font-size: 16px;
  font-weight: bold;
  letter-spacing: 0;
  line-height: 22px;
  text-align: center;
  border-radius: 0;
  margin: auto;
}
.schedule .view__performances_by_events .listing > li > .schedule__row .node > .schedule__details, .schedule .view__whats_on_show_times .listing > li > .schedule__row .node > .schedule__details, .schedule .view__events_by_venue .listing > li > .schedule__row .node > .schedule__details {
  margin-top: 0;
  margin-left: 20px;
  width: 100%;
  display: flex;
  justify-content: space-between;
}
@media (max-width: 768px) {
  .schedule .view__performances_by_events .listing > li > .schedule__row .node > .schedule__details, .schedule .view__whats_on_show_times .listing > li > .schedule__row .node > .schedule__details, .schedule .view__events_by_venue .listing > li > .schedule__row .node > .schedule__details {
    justify-content: center;
    flex-direction: column;
    margin-left: 0;
    margin-top: 10px;
  }
}
.schedule .view__performances_by_events .listing > li > .schedule__row .node > .schedule__details > .schedule__title, .schedule .view__whats_on_show_times .listing > li > .schedule__row .node > .schedule__details > .schedule__title, .schedule .view__events_by_venue .listing > li > .schedule__row .node > .schedule__details > .schedule__title {
  display: flex;
  justify-content: center;
  flex-direction: column;
  font-size: 18px;
  line-height: 28px;
  letter-spacing: -0.5px;
  margin-top: 0;
}
@media (max-width: 768px) {
  .schedule .view__performances_by_events .listing > li > .schedule__row .node > .schedule__details > .schedule__title > a, .schedule .view__whats_on_show_times .listing > li > .schedule__row .node > .schedule__details > .schedule__title > a, .schedule .view__events_by_venue .listing > li > .schedule__row .node > .schedule__details > .schedule__title > a {
    margin: auto;
  }
}
.schedule .view__performances_by_events .listing > li > .schedule__row .node > .schedule__details > .schedule__title > .schedule__name, .schedule .view__whats_on_show_times .listing > li > .schedule__row .node > .schedule__details > .schedule__title > .schedule__name, .schedule .view__events_by_venue .listing > li > .schedule__row .node > .schedule__details > .schedule__title > .schedule__name {
  font-size: 18px;
  font-weight: bold;
  letter-spacing: 0;
  line-height: 24px;
}
@media (max-width: 768px) {
  .schedule .view__performances_by_events .listing > li > .schedule__row .node > .schedule__details > .schedule__title > .schedule__name, .schedule .view__whats_on_show_times .listing > li > .schedule__row .node > .schedule__details > .schedule__title > .schedule__name, .schedule .view__events_by_venue .listing > li > .schedule__row .node > .schedule__details > .schedule__title > .schedule__name {
    margin: auto;
  }
}
@media (max-width: 370px) {
  .schedule .view__performances_by_events .listing > li > .schedule__row .node > .schedule__details > .schedule__title > .schedule__name, .schedule .view__whats_on_show_times .listing > li > .schedule__row .node > .schedule__details > .schedule__title > .schedule__name, .schedule .view__events_by_venue .listing > li > .schedule__row .node > .schedule__details > .schedule__title > .schedule__name {
    margin: 0;
  }
}
.ct__event .schedule .view__performances_by_events .listing > li > .schedule__row .node > .schedule__details > .schedule__title > .schedule__pretitle, .ct__event .schedule .view__performances_by_events .listing > li > .schedule__row .node > .schedule__details > .schedule__title > .schedule__subtitle, .ct__event .schedule .view__whats_on_show_times .listing > li > .schedule__row .node > .schedule__details > .schedule__title > .schedule__pretitle, .ct__event .schedule .view__whats_on_show_times .listing > li > .schedule__row .node > .schedule__details > .schedule__title > .schedule__subtitle, .ct__event .schedule .view__events_by_venue .listing > li > .schedule__row .node > .schedule__details > .schedule__title > .schedule__pretitle, .ct__event .schedule .view__events_by_venue .listing > li > .schedule__row .node > .schedule__details > .schedule__title > .schedule__subtitle {
  display: none;
}
@media (max-width: 768px) {
  .schedule .view__performances_by_events .listing > li > .schedule__row .node > .schedule__details > .schedule__title > .schedule__pretitle, .schedule .view__performances_by_events .listing > li > .schedule__row .node > .schedule__details > .schedule__title > .schedule__subtitle, .schedule .view__whats_on_show_times .listing > li > .schedule__row .node > .schedule__details > .schedule__title > .schedule__pretitle, .schedule .view__whats_on_show_times .listing > li > .schedule__row .node > .schedule__details > .schedule__title > .schedule__subtitle, .schedule .view__events_by_venue .listing > li > .schedule__row .node > .schedule__details > .schedule__title > .schedule__pretitle, .schedule .view__events_by_venue .listing > li > .schedule__row .node > .schedule__details > .schedule__title > .schedule__subtitle {
    margin: auto;
  }
}
@media (max-width: 370px) {
  .schedule .view__performances_by_events .listing > li > .schedule__row .node > .schedule__details > .schedule__title > .schedule__pretitle, .schedule .view__performances_by_events .listing > li > .schedule__row .node > .schedule__details > .schedule__title > .schedule__subtitle, .schedule .view__whats_on_show_times .listing > li > .schedule__row .node > .schedule__details > .schedule__title > .schedule__pretitle, .schedule .view__whats_on_show_times .listing > li > .schedule__row .node > .schedule__details > .schedule__title > .schedule__subtitle, .schedule .view__events_by_venue .listing > li > .schedule__row .node > .schedule__details > .schedule__title > .schedule__pretitle, .schedule .view__events_by_venue .listing > li > .schedule__row .node > .schedule__details > .schedule__title > .schedule__subtitle {
    margin: 0;
  }
}
.schedule .view__performances_by_events ~ .schedule__heading, .schedule .view__whats_on_show_times ~ .schedule__heading, .schedule .view__events_by_venue ~ .schedule__heading {
  display: flex;
  flex-direction: column;
  align-items: center;
}
.view__performances_by_events__whats_on_show_times > header, .view__whats_on_show_times__whats_on_show_times > header, .view__events_by_venue__whats_on_show_times > header {
  justify-content: flex-start;
}

.modal--calendar {
  display: flex;
  justify-content: center;
  align-items: center;
  overflow-y: scroll;
  /**
   * Overrides
   */
}
.modal--calendar__inner {
  width: 100%;
  display: block;
  margin: auto;
}
.modal--calendar__content {
  display: flex;
  justify-content: center;
}
.modal--calendar__title {
  font-size: 47px;
  line-height: 57px;
  letter-spacing: -2px;
}
@media (max-width: 767px) {
  .modal--calendar__title {
    font-size: 35px;
    line-height: 45px;
    letter-spacing: -1px;
  }
}
@media (min-width: 1600px) and (min-height: 992px) {
  .modal--calendar__title {
    font-size: 76px;
    line-height: 86px;
    letter-spacing: -3px;
  }
}
@media (min-width: 1600px) and (min-height: 992px) and (max-width: 767px) {
  .modal--calendar__title {
    font-size: 47px;
    line-height: 57px;
    letter-spacing: -2px;
  }
}
.modal--calendar__close .svg-modal {
  fill: #12212b;
}
.modal--calendar__close:hover .svg-modal {
  fill: #00a1ab;
}
.modal--calendar .zabuto_calendar {
  margin-top: 22.5px;
}
@media (min-width: 768px) {
  .modal--calendar .zabuto_calendar {
    margin-top: 45px;
  }
}
@media (min-width: 1600px) and (min-height: 992px) {
  .modal--calendar .zabuto_calendar {
    margin-top: 67.5px;
  }
}

.open-calendar {
  overflow: hidden;
}
.open-calendar .modal--calendar {
  -webkit-animation: discIn 0.25s cubic-bezier(0.64, 0.04, 0.35, 1) normal both;
          animation: discIn 0.25s cubic-bezier(0.64, 0.04, 0.35, 1) normal both;
}
.open-calendar .modal--calendar__inner {
  -webkit-animation: contentIn 0.2s 0.15s cubic-bezier(0.64, 0.04, 0.35, 1) normal both;
          animation: contentIn 0.2s 0.15s cubic-bezier(0.64, 0.04, 0.35, 1) normal both;
}

.close-calendar .modal--calendar {
  -webkit-animation: discOut 0.2s 0.2s cubic-bezier(0.64, 0.04, 0.35, 1) normal both;
          animation: discOut 0.2s 0.2s cubic-bezier(0.64, 0.04, 0.35, 1) normal both;
}
.close-calendar .modal--calendar__inner {
  -webkit-animation: contentOut 0.2s cubic-bezier(0.64, 0.04, 0.35, 1) normal both;
          animation: contentOut 0.2s cubic-bezier(0.64, 0.04, 0.35, 1) normal both;
}

/**
 * General
 */
div.zabuto_calendar {
  box-shadow: 0 0 20px 0 rgba(18, 33, 43, 0.08);
  border-radius: 16px;
  padding: 15px;
  position: relative;
  min-height: 380px;
}
@media (min-width: 768px) and (min-height: 576px) {
  div.zabuto_calendar {
    padding: 22.5px;
    min-height: 575px;
  }
}
@media (min-width: 1200px) and (min-height: 992px) {
  div.zabuto_calendar {
    min-height: 685px;
  }
}
@media (min-width: 1600px) {
  div.zabuto_calendar {
    padding: 45px;
  }
}
@media (min-width: 1600px) and (min-height: 992px) {
  div.zabuto_calendar {
    min-height: 780px;
  }
}

div.zabuto_calendar .table tr th,
div.zabuto_calendar .table tr td {
  background-color: transparent;
}

@media (min-width: 768px) {
  div.zabuto_calendar .table tr td {
    padding: 15px;
  }
}
@media (min-width: 1200px) and (min-height: 992px) {
  div.zabuto_calendar .table tr td {
    padding: 25px;
  }
}
@media (min-width: 1600px) {
  div.zabuto_calendar .table tr td {
    padding: 20px 45px;
  }
}

div.zabuto_calendar .table tr:last-child {
  border-bottom: none;
}

div.zabuto_calendar .table tr:last-child td {
  padding-bottom: 0;
}

/**
 * Month Header
 */
div.zabuto_calendar .table tr.calendar-month-header td {
  background-color: transparent;
  padding: 0 0 15px;
  position: relative;
  font-family: "montserratsemibold", sans-serif;
  font-weight: 400;
}
@media (min-width: 768px) and (min-height: 576px) {
  div.zabuto_calendar .table tr.calendar-month-header td {
    padding: 0 0 22.5px;
  }
}
@media (min-width: 1600px) {
  div.zabuto_calendar .table tr.calendar-month-header td {
    padding: 0 0 45px;
  }
}
div.zabuto_calendar .table tr.calendar-month-header td:first-child {
  text-align: left;
}
@media (min-width: 768px) and (min-height: 576px) {
  div.zabuto_calendar .table tr.calendar-month-header td:first-child {
    font-size: 29px;
    line-height: 39px;
    letter-spacing: -1px;
  }
}
@media (min-width: 1600px) and (min-height: 992px) {
  div.zabuto_calendar .table tr.calendar-month-header td:first-child {
    font-size: 47px;
    line-height: 57px;
    letter-spacing: -2px;
  }
}
@media (min-width: 1600px) and (min-height: 992px) and (max-width: 767px) {
  div.zabuto_calendar .table tr.calendar-month-header td:first-child {
    font-size: 35px;
    line-height: 45px;
    letter-spacing: -1px;
  }
}

div.zabuto_calendar .table tr.calendar-month-header td span {
  padding-bottom: 0;
}

/**
 * Day of Week Header
 */
div.zabuto_calendar .table tr.calendar-dow-header {
  border: solid #12212b;
  border-width: 4px 0;
}

div.zabuto_calendar .table tr.calendar-dow-header th {
  background-color: transparent;
  padding: 10px 1px;
  font-family: "montserratsemibold", sans-serif;
  font-weight: normal;
}
@media (min-width: 768px) and (min-height: 576px) {
  div.zabuto_calendar .table tr.calendar-dow-header th {
    text-transform: uppercase;
    padding: 20px;
  }
}
@media (min-width: 1600px) and (min-height: 992px) {
  div.zabuto_calendar .table tr.calendar-dow-header th {
    padding: 45px;
  }
}

div.zabuto_calendar tr.calendar-dow-header {
  border-bottom: 1px solid #fff;
}

/**
 * Event
 */
div.zabuto_calendar .table tr td div.day {
  font-family: "montserratsemibold", sans-serif;
  font-weight: normal;
  padding: 0;
  width: 36px;
  height: 36px;
  margin: 0 auto;
  display: flex;
  align-items: center;
  justify-content: center;
}

div.zabuto_calendar .table tr td.event div.day {
  border-radius: 50%;
  border: 4px solid #12212b;
  background-color: #fff;
  transition: 0.25s background-color cubic-bezier(0.64, 0.04, 0.35, 1), 0.25s color cubic-bezier(0.64, 0.04, 0.35, 1);
}
div.zabuto_calendar .table tr td.event div.day:hover, div.zabuto_calendar .table tr td.event div.day:focus, div.zabuto_calendar .table tr td.event div.day:active {
  background-color: #12212b;
  color: #fff;
}

/**
 * Navigation
 */
div.zabuto_calendar div.calendar-month-navigation {
  padding-top: 0;
  position: relative;
  margin-left: auto;
  z-index: 20;
  left: -10px;
}
@media (min-width: 370px) {
  div.zabuto_calendar div.calendar-month-navigation {
    left: 0;
  }
}
@media (min-width: 768px) and (min-height: 576px) {
  div.zabuto_calendar div.calendar-month-navigation {
    width: 40px;
    height: 40px;
    left: 30%;
  }
}
@media (min-width: 1600px) and (min-height: 992px) {
  div.zabuto_calendar div.calendar-month-navigation {
    width: 72px;
    height: 72px;
  }
}
div.zabuto_calendar div.calendar-month-navigation::before {
  content: "";
  background: url(../img/cta-arrow-down--inverted.svg) no-repeat center center;
  transform: rotate(90deg);
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
  border: 4px solid #12212b;
  border-radius: 50%;
  display: block;
  width: 40px;
  height: 40px;
  right: 0;
}
@media (min-width: 1600px) and (min-height: 992px) {
  div.zabuto_calendar div.calendar-month-navigation::before {
    width: 72px;
    height: 72px;
  }
}

div.zabuto_calendar .calendar-month-header td:last-child .calendar-month-navigation {
  left: 0;
  z-index: 10;
}
div.zabuto_calendar .calendar-month-header td:last-child .calendar-month-navigation::before {
  transform: rotate(-90deg);
}

.no-js .ui-dialog.ui-widget.ui-widget-content,
.js .ui-dialog.ui-widget.ui-widget-content {
  width: 100% !important;
  height: 100% !important;
  left: 0 !important;
  top: 0 !important;
  padding: 10px;
  background: #fff url("../img/background-hf.svg") no-repeat top left;
  background-size: cover;
  /**
   * IE 11 Fix
   * Prevents book now button colour 
   * being overidden
   */
}
@media (min-width: 992px) {
  .no-js .ui-dialog.ui-widget.ui-widget-content,
.js .ui-dialog.ui-widget.ui-widget-content {
    padding: 24px;
  }
}
.no-js .ui-dialog.ui-widget.ui-widget-content .ui-dialog-titlebar,
.js .ui-dialog.ui-widget.ui-widget-content .ui-dialog-titlebar {
  position: relative;
  background-color: transparent;
  border: none;
  padding: 0;
}
.no-js .ui-dialog.ui-widget.ui-widget-content .ui-dialog-titlebar-close,
.js .ui-dialog.ui-widget.ui-widget-content .ui-dialog-titlebar-close {
  margin: 0 0 0 auto;
  display: block;
  display: block;
  height: 45px;
  width: 45px;
  transition: all 0.5s cubic-bezier(0.64, 0.04, 0.35, 1);
  position: relative;
  border-radius: 50%;
  background-color: #12212b;
  border: 3px solid #fff;
}
@media (min-width: 1200px) and (min-height: 768px) {
  .no-js .ui-dialog.ui-widget.ui-widget-content .ui-dialog-titlebar-close,
.js .ui-dialog.ui-widget.ui-widget-content .ui-dialog-titlebar-close {
    width: 72px;
    height: 72px;
    border-width: 4px;
  }
}
.no-js .ui-dialog.ui-widget.ui-widget-content .ui-dialog-titlebar-close::before, .no-js .ui-dialog.ui-widget.ui-widget-content .ui-dialog-titlebar-close::after,
.js .ui-dialog.ui-widget.ui-widget-content .ui-dialog-titlebar-close::before,
.js .ui-dialog.ui-widget.ui-widget-content .ui-dialog-titlebar-close::after {
  width: 50%;
  height: 3px;
  background-color: #fff;
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
}
@media (min-width: 1200px) {
  .no-js .ui-dialog.ui-widget.ui-widget-content .ui-dialog-titlebar-close::before, .no-js .ui-dialog.ui-widget.ui-widget-content .ui-dialog-titlebar-close::after,
.js .ui-dialog.ui-widget.ui-widget-content .ui-dialog-titlebar-close::before,
.js .ui-dialog.ui-widget.ui-widget-content .ui-dialog-titlebar-close::after {
    height: 4px;
  }
}
.no-js .ui-dialog.ui-widget.ui-widget-content .ui-dialog-titlebar-close::before,
.js .ui-dialog.ui-widget.ui-widget-content .ui-dialog-titlebar-close::before {
  transform: rotate(-45deg);
}
.no-js .ui-dialog.ui-widget.ui-widget-content .ui-dialog-titlebar-close::after,
.js .ui-dialog.ui-widget.ui-widget-content .ui-dialog-titlebar-close::after {
  transform: rotate(45deg);
}
.no-js .ui-dialog.ui-widget.ui-widget-content .ui-dialog-titlebar-close:hover, .no-js .ui-dialog.ui-widget.ui-widget-content .ui-dialog-titlebar-close:focus, .no-js .ui-dialog.ui-widget.ui-widget-content .ui-dialog-titlebar-close:active,
.js .ui-dialog.ui-widget.ui-widget-content .ui-dialog-titlebar-close:hover,
.js .ui-dialog.ui-widget.ui-widget-content .ui-dialog-titlebar-close:focus,
.js .ui-dialog.ui-widget.ui-widget-content .ui-dialog-titlebar-close:active {
  background-color: #00a1ab;
}
.no-js .ui-dialog.ui-widget.ui-widget-content .ui-dialog-titlebar-close:hover,
.js .ui-dialog.ui-widget.ui-widget-content .ui-dialog-titlebar-close:hover {
  transform: rotate(360deg);
}
.no-js .ui-dialog.ui-widget.ui-widget-content .ui-dialog-titlebar-close span,
.js .ui-dialog.ui-widget.ui-widget-content .ui-dialog-titlebar-close span {
  position: absolute;
  left: -999em;
}
.no-js .ui-dialog.ui-widget.ui-widget-content .ui-dialog-title,
.js .ui-dialog.ui-widget.ui-widget-content .ui-dialog-title {
  position: absolute;
  left: -999em;
}
.no-js .ui-dialog.ui-widget.ui-widget-content .ui-dialog-content,
.js .ui-dialog.ui-widget.ui-widget-content .ui-dialog-content {
  height: auto !important;
  max-height: none !important;
  padding: 0;
}
.no-js .ui-dialog.ui-widget.ui-widget-content a,
.js .ui-dialog.ui-widget.ui-widget-content a {
  color: #fff;
}

.open-dialog {
  overflow-y: hidden;
}

.performances {
  padding: 0;
  overflow: hidden;
  height: calc(100vh - 75px);
  margin: 10px auto 0;
  display: flex;
  flex-direction: column;
}
@media (min-width: 992px) {
  .performances {
    margin-top: 20px;
    height: calc(100vh - 113px);
  }
}
@media (min-width: 992px) and (min-height: 900px) {
  .performances {
    height: calc(100vh - 142px);
  }
}
.performances__logo {
  display: none;
}
@media (min-width: 768px) and (max-width: 1199px) and (min-height: 576px) {
  .performances__logo {
    display: inline-flex;
  }
}
@media (min-width: 1200px) and (min-height: 900px) {
  .performances__logo {
    display: inline-flex;
  }
}
.performances__logo-item {
  width: 160px;
  height: 70px;
  display: flex;
  position: relative;
}
.performances__logo-item:first-child {
  width: 70px;
}
.performances__logo-item:last-child {
  padding-left: 30px;
}
.performances__logo-item:last-child:before {
  content: "";
  height: 100%;
  width: 1px;
  background-color: #00a1ab;
  display: block;
  position: absolute;
  left: 26px;
}
.performances__logo svg {
  display: block;
  width: 100%;
  height: auto;
}
.performances__logo g,
.performances__logo path,
.performances__logo polygon {
  fill: #00a1ab;
}
.performances__title {
  margin: 0;
}
@media (min-width: 768px) and (min-height: 768px) {
  .performances__title {
    margin-top: 22.5px;
  }
}
@media (min-width: 1200px) and (min-height: 992px) {
  .performances__title {
    margin-top: 45px;
  }
}
@media (min-width: 1600px) and (min-height: 992px) {
  .performances__title {
    font-size: 76px;
    line-height: 86px;
    letter-spacing: -3px;
    margin-top: 81px;
  }
}
@media (min-width: 1600px) and (min-height: 992px) and (max-width: 767px) {
  .performances__title {
    font-size: 47px;
    line-height: 57px;
    letter-spacing: -2px;
  }
}
.performances__title + h2 {
  font-size: 18px;
  line-height: 28px;
  letter-spacing: -0.5px;
  margin: 15px 0 0;
}
@media (min-width: 1200px) and (min-height: 992px) {
  .performances__title + h2 {
    font-size: 47px;
    line-height: 57px;
    letter-spacing: -2px;
    max-width: 780px;
    margin-top: 33.75px;
  }
}
@media (min-width: 1200px) and (min-height: 992px) and (max-width: 767px) {
  .performances__title + h2 {
    font-size: 35px;
    line-height: 45px;
    letter-spacing: -1px;
  }
}
.performances__rows {
  margin-top: 22.5px;
  flex: 1 1 auto;
  overflow-y: scroll;
}
@media (min-width: 992px) {
  .performances__rows {
    margin-top: 45px;
  }
}
@media (min-width: 1200px) and (min-height: 992px) {
  .performances__rows {
    margin-top: 81px;
  }
}
.performances__row {
  border-radius: 10px;
  background-color: #fff;
  padding: 20px;
  box-shadow: 0 0 20px 0 rgba(18, 33, 43, 0.08);
  display: flex;
  flex-direction: column;
  margin-top: 15px;
}
@media (min-width: 992px) {
  .performances__row {
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    margin-top: 22.5px;
  }
}
@media (min-width: 1200px) {
  .performances__row {
    padding: 20px 40px;
  }
}
.performances__row:first-child {
  margin-top: 0;
}
.performances__meta {
  display: block;
}
.performances__meta--date {
  font-size: 29px;
  line-height: 39px;
  letter-spacing: -1px;
  font-family: "montserratsemibold", sans-serif;
  font-weight: normal;
}
.performances__meta--title {
  font-family: "montserratregular", arial, sans-serif;
  font-size: 18px;
  line-height: 32px;
  margin-top: 11.25px;
}
@media (min-width: 992px) {
  .performances__meta--title {
    margin-top: 0;
  }
}
@media (min-width: 1200px) and (min-height: 992px) {
  .performances__meta--title {
    font-size: 29px;
    line-height: 39px;
    letter-spacing: -1px;
  }
}
.performances__booking {
  margin-top: 15px;
}
@media (min-width: 576px) {
  .performances__booking {
    margin: 11.25px 0 0 auto;
  }
}
@media (min-width: 992px) {
  .performances__booking {
    margin: 0;
  }
}
.performances__booking a {
  font-family: "montserratsemibold", sans-serif;
  font-weight: normal;
  display: inline-block;
  border-top-left-radius: 30px;
  border-bottom-left-radius: 30px;
  color: #fff;
  background-color: #00a1ab;
  padding: 24px 52.5px 23.0769230769px 24px;
  line-height: 1;
  cursor: pointer;
  text-decoration: none;
  position: relative;
  margin-right: 30px;
  transition: all 0.1s cubic-bezier(0.64, 0.04, 0.35, 1);
  width: 190px;
}
.performances__booking a::before, .performances__booking a::after {
  background-position: center center;
  background-repeat: no-repeat;
  background-size: contain;
  background-image: url("../img/icon-smile.svg");
  background-size: 20px;
  background-position: 50% 55%;
  content: "";
  border: 4px solid #fff;
  border-radius: 50%;
  background-color: #00a1ab;
  height: 100%;
  width: 66px;
  display: inline-block;
  position: absolute;
  top: 0;
  right: -32px;
  transition: all 0.5s cubic-bezier(0.64, 0.04, 0.35, 1);
  z-index: 1;
}
.performances__booking a::before {
  border: none;
  background-color: #12212b;
  height: calc(100% - 8px);
  width: 58px;
  top: 4px;
  right: -28px;
  z-index: 2;
  transform: rotate(360deg) scale(0);
  transition: all 0.5s cubic-bezier(0.64, 0.04, 0.35, 1);
}
.performances__booking a:hover {
  text-decoration: none;
  color: #fff;
}
.performances__booking a:hover::before {
  transform: rotate(0) scale(1);
}
.performances__booking a:hover::after {
  transform: rotate(-360deg);
}
.performances__booking a:focus {
  outline-color: #12212b;
}
@media (max-width: 576px) {
  .performances__booking a {
    width: calc(100% - 30px);
  }
}
.performances__booking a > span {
  display: block;
  text-transform: lowercase;
}
.performances__booking a > span:first-letter {
  text-transform: uppercase;
}
.performances__booking a.going-fast {
  font-family: "montserratsemibold", sans-serif;
  font-weight: normal;
  display: inline-block;
  border-top-left-radius: 30px;
  border-bottom-left-radius: 30px;
  color: #fff;
  background-color: #00a1ab;
  padding: 24px 52.5px 23.0769230769px 24px;
  line-height: 1;
  cursor: pointer;
  text-decoration: none;
  position: relative;
  margin-right: 30px;
  transition: all 0.1s cubic-bezier(0.64, 0.04, 0.35, 1);
  box-shadow: inset 0 0 0 4px #fff;
  color: #12212b;
  background-color: #fff;
  box-shadow: inset 0 0 0 4px #00a1ab !important;
  color: #12212b !important;
}
.performances__booking a.going-fast::before, .performances__booking a.going-fast::after {
  background-position: center center;
  background-repeat: no-repeat;
  background-size: contain;
  background-image: url("../img/icon-smile.svg");
  background-size: 20px;
  background-position: 50% 55%;
  content: "";
  border: 4px solid #fff;
  border-radius: 50%;
  background-color: #00a1ab;
  height: 100%;
  width: 66px;
  display: inline-block;
  position: absolute;
  top: 0;
  right: -32px;
  transition: all 0.5s cubic-bezier(0.64, 0.04, 0.35, 1);
  z-index: 1;
}
.performances__booking a.going-fast::before {
  border: none;
  background-color: #12212b;
  height: calc(100% - 8px);
  width: 58px;
  top: 4px;
  right: -28px;
  z-index: 2;
  transform: rotate(360deg) scale(0);
  transition: all 0.5s cubic-bezier(0.64, 0.04, 0.35, 1);
}
.performances__booking a.going-fast:hover {
  text-decoration: none;
  color: #fff;
}
.performances__booking a.going-fast:hover::before {
  transform: rotate(0) scale(1);
}
.performances__booking a.going-fast:hover::after {
  transform: rotate(-360deg);
}
.performances__booking a.going-fast:focus {
  outline-color: #12212b;
}
.performances__booking a.going-fast::before {
  background-color: #00a1ab;
}
.performances__booking a.going-fast::after {
  background-image: url("../img/icon-smile-wh.svg");
  border-color: #00a1ab;
  background-color: #fff;
}
.performances__booking a.going-fast:hover {
  color: #12212b;
}
.performances__booking a.sold-out {
  font-family: "montserratsemibold", sans-serif;
  font-weight: normal;
  display: inline-block;
  border-top-left-radius: 30px;
  border-bottom-left-radius: 30px;
  color: #fff;
  background-color: #00a1ab;
  padding: 24px 52.5px 23.0769230769px 24px;
  line-height: 1;
  cursor: pointer;
  text-decoration: none;
  position: relative;
  margin-right: 30px;
  transition: all 0.1s cubic-bezier(0.64, 0.04, 0.35, 1);
  pointer-events: none;
  color: #12212b;
  background-color: #adaeb0;
  color: #12212b !important;
  pointer-events: all;
}
.performances__booking a.sold-out::before, .performances__booking a.sold-out::after {
  background-position: center center;
  background-repeat: no-repeat;
  background-size: contain;
  background-image: url("../img/icon-smile.svg");
  background-size: 20px;
  background-position: 50% 55%;
  content: "";
  border: 4px solid #fff;
  border-radius: 50%;
  background-color: #00a1ab;
  height: 100%;
  width: 66px;
  display: inline-block;
  position: absolute;
  top: 0;
  right: -32px;
  transition: all 0.5s cubic-bezier(0.64, 0.04, 0.35, 1);
  z-index: 1;
}
.performances__booking a.sold-out::before {
  border: none;
  background-color: #12212b;
  height: calc(100% - 8px);
  width: 58px;
  top: 4px;
  right: -28px;
  z-index: 2;
  transform: rotate(360deg) scale(0);
  transition: all 0.5s cubic-bezier(0.64, 0.04, 0.35, 1);
}
.performances__booking a.sold-out:hover {
  text-decoration: none;
  color: #fff;
}
.performances__booking a.sold-out:hover::before {
  transform: rotate(0) scale(1);
}
.performances__booking a.sold-out:hover::after {
  transform: rotate(-360deg);
}
.performances__booking a.sold-out:focus {
  outline-color: #12212b;
}
.performances__booking a.sold-out::before {
  background-color: #12212b;
}
.performances__booking a.sold-out::after {
  background-image: url("../img/icon-smile.svg");
  border-color: #fff;
  background-color: #adaeb0;
}
.performances__booking a.sold-out:hover {
  color: #12212b;
}
.performances__booking a.sold-out:hover::before {
  transform: rotate(0) scale(0);
}
.performances__booking a.sold-out:hover::after {
  transform: rotate(0deg);
}

/**
 * Spektrix
 */
.spektrix__container {
  margin: 0 auto;
}
.spektrix__inner {
  max-width: 780px;
}
.spektrix__membership-grid {
  display: grid;
  grid-gap: 20px;
  grid-template-columns: repeat(2, 1fr);
}
@media (max-width: 767px) {
  .spektrix__membership-grid {
    grid-template-columns: 1fr;
  }
}
.spektrix__membership-grid--item {
  border: 1px solid #eee;
}
.spektrix__membership-grid--item--content {
  width: 100%;
  padding: 15px;
}
.spektrix__membership-grid--item--content .spektrix-membership__checkbox {
  margin-bottom: 20px;
}
.spektrix__membership-grid--item--content .spektrix-membership__checkbox input {
  position: relative;
  left: 0;
  margin-right: 10px;
}

.schedule {
  /**
   * Modifiers
   */
}
.schedule__inner {
  padding-top: 0;
  padding-bottom: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
}
.schedule__heading {
  margin: 0 auto;
  text-align: center;
  display: inline-block;
}
@media (max-width: 768px) {
  .schedule__heading {
    display: flex;
    flex-flow: column;
    align-items: center;
  }
}
.schedule__subtitle, .schedule__pretitle {
  display: block;
  color: #6d6e71;
}
.schedule__title {
  font-size: 18px;
  line-height: 28px;
  letter-spacing: -0.5px;
  margin: 40px 0 0;
}
@media (min-width: 1200px) {
  .schedule__title {
    font-size: 29px;
    line-height: 39px;
    letter-spacing: -1px;
    margin-top: 80px;
  }
}
.schedule__item {
  border-radius: 16px;
  background-color: #fff;
  box-shadow: 0 0 20px 0 rgba(18, 33, 43, 0.08);
  width: 100%;
  display: flex;
  justify-content: space-between;
  align-items: stretch;
  padding: 0.5rem;
}
.schedule__item .node {
  display: flex;
  justify-content: space-between;
  align-items: stretch;
}
.schedule__time {
  font-family: "montserratsemibold", sans-serif;
  font-weight: normal;
  border-radius: 16px;
  background-color: #00a1ab;
  color: #fff;
  width: 100%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 1rem;
}
@media (min-width: 576px) {
  .schedule__time {
    width: auto;
  }
}
@media (min-width: 1600px) {
  .schedule__time {
    font-size: 47px;
    line-height: 57px;
    letter-spacing: -2px;
    margin-right: 2rem;
  }
}
@media (min-width: 1600px) and (max-width: 767px) {
  .schedule__time {
    font-size: 35px;
    line-height: 45px;
    letter-spacing: -1px;
  }
}
.schedule__meta {
  margin-top: 16px;
  display: block;
}
.schedule__content {
  width: 100%;
  padding: 1rem;
}
@media (min-width: 576px) {
  .schedule__content {
    max-width: 75%;
  }
}
@media (min-width: 576px) and (min-height: 576px) {
  .schedule__content {
    max-width: none;
    flex: 1 0 50%;
  }
}
@media (min-width: 1600px) {
  .schedule__content {
    margin-top: 0;
    display: flex;
    align-items: stretch;
  }
}
.schedule__details {
  margin-top: 24px;
}
@media (min-width: 1600px) {
  .schedule__details {
    margin-top: 0;
  }
}
.schedule__name {
  font-size: 18px;
  line-height: 28px;
  letter-spacing: -0.5px;
  margin: 0;
}
@media (min-width: 576px) {
  .schedule__name {
    font-size: 29px;
    line-height: 39px;
    letter-spacing: -1px;
  }
}
.schedule__thumb {
  display: none;
  width: 100%;
  align-self: stretch;
}
@media (min-width: 576px) and (min-height: 576px) {
  .schedule__thumb {
    display: block;
    flex: 1 1 50%;
    padding-left: 30px;
    max-width: 425px;
  }
}
.schedule__thumb img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.schedule__buttons {
  display: flex;
  flex-direction: column;
  margin-top: 16px;
}
@media (min-width: 1200px) {
  .schedule__buttons {
    flex-direction: row;
  }
}
.schedule__button {
  margin-top: 16px;
}
@media (min-width: 1200px) {
  .schedule__button {
    margin: 0 16px 0 0;
  }
}
.schedule__button:first-child {
  margin-top: 0;
}
@media (min-width: 1200px) {
  .schedule__button:last-child {
    margin-right: 0;
  }
}
.schedule__button > a {
  font-family: "montserratsemibold", sans-serif;
  font-weight: normal;
  display: inline-block;
  color: #fff;
  background-color: #12212b;
  padding: 12px;
  line-height: 1;
  text-decoration: none;
  transition: all 0.2s cubic-bezier(0.64, 0.04, 0.35, 1);
  border: none;
}
.schedule__button > a:hover, .schedule__button > a:focus, .schedule__button > a.active {
  background-color: #6d6e71;
  text-decoration: none;
  color: #fff;
}
.schedule__button > a:focus {
  outline-color: #12212b;
}
.schedule__button--venue > a {
  display: inline-flex;
  align-items: center;
}
.schedule__button--venue > a::before {
  content: "";
  background: url("../img/map-marker--white.svg") no-repeat center center;
  width: 15px;
  height: 18px;
  display: block;
  margin-right: 10px;
}
.schedule .listing {
  margin-top: 16px;
}
.schedule .listing li {
  margin-top: 16px;
  padding-top: 0;
  padding-bottom: 0;
}
@media (min-width: 1200px) {
  .schedule .listing li {
    margin-top: 40px;
  }
}
.schedule .listing li:first-child {
  margin-top: 0;
}
.schedule .pager {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}
@media (min-width: 1200px) {
  .schedule .pager {
    margin-top: 80px;
  }
}
.schedule .pager__items {
  padding-left: 0;
}

.links {
  display: flex;
  flex-direction: column;
}
@media (min-width: 576px) {
  .links {
    flex-direction: row;
    justify-content: space-between;
  }
}
@media (min-width: 768px) {
  .links {
    margin-bottom: 40px;
  }
}
@media (min-width: 992px) {
  .links {
    flex-direction: row;
    justify-content: flex-start;
  }
}
@media (min-width: 1200px) {
  .links {
    margin-bottom: 60px;
  }
}
.links .cta {
  display: block;
  text-align: center;
  margin-top: 8px;
  width: auto;
}
@media (min-width: 576px) {
  .links .cta {
    width: calc(33% - 15px);
    margin-top: 0;
  }
}
@media (min-width: 992px) {
  .links .cta {
    margin-right: 48px;
    width: auto;
  }
}
.links .cta:first-child {
  margin-top: 0;
}
@media (min-width: 992px) {
  .links .cta:last-child {
    margin-right: 0;
  }
}
.links__inner {
  display: flex;
  flex-direction: column;
  align-items: center;
}
.links__inner > a.cta {
  border-radius: 4px;
  padding: 15px;
  margin: 0 10px 0 0;
  font-family: "montserratregular", arial, sans-serif;
}
@media (max-width: 768px) {
  .links__inner > a.cta {
    margin: auto auto 20px;
    border-right: none;
  }
}
.links__inner > h3 {
  margin: 0 10px 0 0;
}
@media (min-width: 576px) {
  .links__inner {
    flex-direction: column;
    justify-content: center;
  }
}
@media (min-width: 768px) {
  .links__inner {
    flex-direction: row;
    margin-bottom: 40px;
  }
}
@media (min-width: 992px) {
  .links__inner {
    justify-content: flex-start;
  }
}
@media (min-width: 1200px) {
  .links__inner {
    margin-bottom: 60px;
  }
}
.links__showtimes {
  display: flex;
  flex-direction: row;
  align-items: center;
  background-color: #12212b;
  padding: 0 15px;
  color: #ffffff;
}
@media (max-width: 768px) {
  .links__showtimes {
    padding: 15px;
    flex-direction: column;
  }
}
.links__showtimes > a.cta {
  font-family: "montserratregular", arial, sans-serif;
  padding: 0 7.5px 0 0;
  border-right: 1px solid white;
  margin: 15px 7.5px 15px 0;
  width: auto;
}
@media (max-width: 768px) {
  .links__showtimes > a.cta {
    margin: auto auto 20px;
    border-right: none;
  }
}
.links__showtimes > a.cta:hover {
  background-color: transparent;
  text-decoration: underline;
}
.links__showtimes > a.cta:last-of-type {
  border-right: none;
}
@media (max-width: 768px) {
  .links__showtimes > a.cta:last-of-type {
    margin: 0;
  }
}
.links__showtimes > a.cta:first-of-type {
  margin: 15px 7.5px 15px 15px;
}
@media (max-width: 768px) {
  .links__showtimes > a.cta:first-of-type {
    margin: 10px ​auto 20px;
  }
}
.links__showtimes > span {
  font-family: "montserratsemibold", arial, sans-serif;
  width: auto;
}
.links__wrapper {
  margin: 30px 0 0;
  background-color: rgba(109, 110, 113, 0.4);
  padding: 15px 0;
}
.links__wrapper .links,
.links__wrapper .links__inner {
  margin-bottom: 0;
}

.whats-on-signpost {
  background-color: #fff;
  border: none;
  border-radius: 0 0 16px 16px;
  color: #12212b;
  padding: 30px 42px;
  height: 100%;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
.whats-on-signpost__title {
  font-family: "montserratsemibold", arial, sans-serif;
}
.whats-on-signpost__copy {
  font-family: "montserratregular", arial, sans-serif;
}
.whats-on-signpost__cta {
  margin-top: 20px;
  box-shadow: none;
}
.whats-on-signpost__wrapper {
  background-color: #00a1ab;
}
@media (max-width: 768px) {
  .whats-on-signpost__wrapper .grid .col-sm-6:first-of-type {
    display: none;
  }
}

.ct__homepage .our-family {
  display: grid;
  grid-template-columns: 33% 1fr;
  grid-gap: 135px;
}
@media (max-width: 991px) {
  .ct__homepage .our-family {
    grid-template-columns: 1fr;
    grid-gap: 30px;
    grid-auto-rows: -webkit-min-content;
    grid-auto-rows: min-content;
  }
}
.ct__homepage .our-family__intro {
  display: flex;
  flex-direction: column;
  flex-basis: 30%;
}
.ct__homepage .our-family__logos {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.ct__homepage .our-family__logos .logo-link {
  max-width: 30%;
  display: block;
}
.ct__homepage .our-family__logos .logo-link img {
  width: 100%;
  height: auto;
}
.ct__homepage .our-family__logos .logo-link:hover {
  opacity: 0.6;
}
.ct__homepage .our-family .entity {
  margin-bottom: 0;
}

.view__events_by_venue {
  margin-bottom: 0;
}

.ct__event .banner {
  z-index: 4;
}
.ct__event .event-sticky {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 10;
  background-color: #00a1ab;
  width: 100%;
}
@media (max-width: 767px) {
  .ct__event .event-sticky {
    top: auto;
    bottom: 0;
  }
}
.ct__event .event-sticky__subtitle {
  margin-top: 5px;
  max-width: 780px;
  padding-right: 45px;
}
.ct__event .event-sticky__inner {
  display: flex;
  justify-content: space-between;
  align-items: center;
  color: #fff;
}
@media (max-width: 767px) {
  .ct__event .event-sticky__inner {
    justify-content: center;
  }
}
.ct__event .event-sticky__inner p {
  margin-bottom: 0;
}
@media (max-width: 767px) {
  .ct__event .event-sticky__inner p {
    display: none;
  }
}
.ct__event .event-sticky__inner a {
  font-family: "montserratsemibold", sans-serif;
  font-weight: normal;
  display: inline-block;
  border-top-left-radius: 30px;
  border-bottom-left-radius: 30px;
  color: #fff;
  background-color: #00a1ab;
  padding: 24px 52.5px 23.0769230769px 24px;
  line-height: 1;
  cursor: pointer;
  text-decoration: none;
  position: relative;
  margin-right: 30px;
  transition: all 0.1s cubic-bezier(0.64, 0.04, 0.35, 1);
  box-shadow: inset 0 0 0 4px #fff;
  width: calc(33.3333% - (30px * 2));
  text-align: center;
  max-width: 400px;
}
.ct__event .event-sticky__inner a::before, .ct__event .event-sticky__inner a::after {
  background-position: center center;
  background-repeat: no-repeat;
  background-size: contain;
  background-image: url("../img/icon-smile.svg");
  background-size: 20px;
  background-position: 50% 55%;
  content: "";
  border: 4px solid #fff;
  border-radius: 50%;
  background-color: #00a1ab;
  height: 100%;
  width: 66px;
  display: inline-block;
  position: absolute;
  top: 0;
  right: -32px;
  transition: all 0.5s cubic-bezier(0.64, 0.04, 0.35, 1);
  z-index: 1;
}
.ct__event .event-sticky__inner a::before {
  border: none;
  background-color: #12212b;
  height: calc(100% - 8px);
  width: 58px;
  top: 4px;
  right: -28px;
  z-index: 2;
  transform: rotate(360deg) scale(0);
  transition: all 0.5s cubic-bezier(0.64, 0.04, 0.35, 1);
}
.ct__event .event-sticky__inner a:hover {
  text-decoration: none;
  color: #fff;
}
.ct__event .event-sticky__inner a:hover::before {
  transform: rotate(0) scale(1);
}
.ct__event .event-sticky__inner a:hover::after {
  transform: rotate(-360deg);
}
.ct__event .event-sticky__inner a:focus {
  outline-color: #12212b;
}
@media (max-width: 767px) {
  .ct__event .event-sticky__inner a {
    width: calc(100% - (30px * 2));
  }
}
@media (min-width: 768px) and (max-width: 1599px) {
  .ct__event h1, .ct__venue h1 {
    font-size: 47px;
    line-height: 57px;
    letter-spacing: -2px;
  }
}
@media (min-width: 768px) and (max-width: 1599px) and (max-width: 767px) {
  .ct__event h1, .ct__venue h1 {
    font-size: 35px;
    line-height: 45px;
    letter-spacing: -1px;
  }
}
.ct__listing-page h1 {
  margin: 0 0 20px;
  font-size: 29px;
  line-height: 39px;
  letter-spacing: -1px;
}
@media (min-width: 576px) {
  .ct__listing-page h1 {
    font-size: 47px;
    line-height: 57px;
    letter-spacing: -2px;
  }
}
@media (min-width: 576px) and (max-width: 767px) {
  .ct__listing-page h1 {
    font-size: 35px;
    line-height: 45px;
    letter-spacing: -1px;
  }
}
@media (min-width: 576px) and (max-width: 991px) {
  .ct__listing-page h1 {
    margin-bottom: 30px;
  }
}
@media (min-width: 1200px) {
  .ct__listing-page h1 {
    font-size: 76px;
    line-height: 86px;
    letter-spacing: -3px;
  }
}
@media (min-width: 1200px) and (max-width: 767px) {
  .ct__listing-page h1 {
    font-size: 47px;
    line-height: 57px;
    letter-spacing: -2px;
  }
}
@media (max-width: 575px) {
  .ct__listing-page h1 span {
    display: block;
  }
}
.ct__landing-page .footer, .ct__listing-page .footer {
  margin-top: 20px;
}
@media (min-width: 992px) {
  .ct__landing-page .footer, .ct__listing-page .footer {
    margin-top: 90px;
  }
}

.node--teaser {
  height: 100%;
}

.teaser {
  box-shadow: 0 0 20px 0 rgba(18, 33, 43, 0.08);
  background-color: #fff;
  display: flex;
  flex-direction: column;
  padding: 0 45px 45px;
  height: 100%;
  border-bottom-left-radius: 30px;
  border-bottom-right-radius: 30px;
  text-decoration: none;
  align-items: stretch;
}
@media (max-width: 1599px) {
  .teaser {
    padding: 0 30px 30px;
  }
}
@media (max-width: 991px) {
  .teaser {
    padding: 0 15px 15px;
    border-bottom-left-radius: 15px;
    border-bottom-right-radius: 15px;
  }
}
.teaser__thumb {
  margin-bottom: 45px;
  width: calc(100% + 45px * 2);
  margin-left: -45px;
}
@media (max-width: 1599px) {
  .teaser__thumb {
    width: calc(100% + 30px * 2);
    margin-left: -30px;
    margin-bottom: 30px;
  }
}
@media (max-width: 991px) {
  .teaser__thumb {
    width: calc(100% + 30px);
    margin-left: -15px;
    margin-bottom: 15px;
  }
}
.teaser__thumb img {
  display: block;
  width: 100%;
  height: auto;
  transition: transform 0.2s ease-in-out;
}
.teaser__venue {
  display: flex;
  align-items: center;
  width: 100%;
  margin-top: 10px;
}
.teaser__venue:before {
  content: "";
  background: url("../img/map-marker-2.svg") no-repeat center center;
  background-size: contain;
  width: 24px;
  height: 24px;
  display: inline-block;
  margin-right: 5px;
}
.teaser__content p {
  font-family: "montserratregular", arial, sans-serif;
  font-size: 18px;
  line-height: 32px;
  margin-bottom: 0;
}
.teaser__content .pretitle {
  color: #6d6e71;
}
.teaser__buttons {
  width: 100%;
  margin-top: auto;
  padding-top: 45px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 100%;
}
@media (max-width: 1599px) {
  .teaser__buttons {
    padding-top: 30px;
  }
}
@media (max-width: 991px) {
  .teaser__buttons {
    padding-top: 15px;
  }
}
.teaser__buttons .map-pin {
  stroke: #fff;
}
.teaser__buttons a {
  font-family: "montserratsemibold", sans-serif;
  font-weight: normal;
  display: inline-block;
  color: #fff;
  background-color: #12212b;
  padding: 12px;
  line-height: 1;
  text-decoration: none;
  transition: all 0.2s cubic-bezier(0.64, 0.04, 0.35, 1);
  border: none;
}
.teaser__buttons a:hover, .teaser__buttons a:focus, .teaser__buttons a.active {
  background-color: #6d6e71;
  text-decoration: none;
  color: #fff;
}
.teaser__buttons a:focus {
  outline-color: #12212b;
}
.teaser__buttons a:hover {
  background: transparent;
  background-color: transparent;
  color: #12212b;
  text-decoration: underline;
}
.teaser__buttons a:first-letter {
  text-transform: uppercase;
}
.teaser:hover, .teaser:focus {
  text-decoration: none;
}
.teaser:hover img, .teaser:focus img {
  transform: scale(0.9);
}

.sidebar-teaser {
  font-family: "montserratregular", arial, sans-serif;
  font-size: 18px;
  line-height: 32px;
  color: #fff;
}
.sidebar-teaser h4 {
  margin-bottom: 0;
}
.sidebar-teaser:hover {
  color: #12212b;
  text-decoration: none;
}

/**
 * Page - User
 */
.user .footer,
.book .footer,
.checkout .footer,
.register .footer,
.memberships .footer,
.my-account .footer,
.basket .footer,
.signup .footer,
.buy-gift-vouchers .footer {
  margin-top: 40px;
}
@media (min-width: 1200px) {
  .user .footer,
.book .footer,
.checkout .footer,
.register .footer,
.memberships .footer,
.my-account .footer,
.basket .footer,
.signup .footer,
.buy-gift-vouchers .footer {
    margin-top: 110px;
  }
}

.blank {
  background: none;
}

/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3NzL2dsb2JhbC5jc3MiLCJtYXBwaW5ncyI6IkFBQUEsZ0JBQWdCO0FDQWhCO0FBRUE7K0VBQUE7QUFHQTs7O0VBQUE7QUFLQTtFQUNFO0VBQWtCO0VBQ2xCO0VBQWdDO0FEQ2xDOztBQ0VBOytFQUFBO0FBR0E7O0VBQUE7QUFJQTtFQUNFO0FEREY7O0FDSUE7OztFQUFBO0FBS0E7RUFDRTtFQUNBO0FERkY7O0FDS0E7K0VBQUE7QUFHQTs7O0VBQUE7QUFLQTtFQUNFO0VBQXlCO0VBQ3pCO0VBQVc7RUFDWDtFQUFtQjtBRERyQjs7QUNJQTs7O0VBQUE7QUFLQTtFQUNFO0VBQW1DO0VBQ25DO0VBQWdCO0FEQWxCOztBQ0dBOytFQUFBO0FBR0E7O0VBQUE7QUFJQTtFQUNFO0FERkY7O0FDS0E7OztFQUFBO0FBS0E7RUFDRTtFQUFxQjtFQUNyQjtFQUE0QjtFQUM1QjtVQUFBO0VBQW1DO0FEQXJDOztBQ0dBOztFQUFBO0FBSUE7O0VBRUU7QURERjs7QUNJQTs7O0VBQUE7QUFLQTs7O0VBR0U7RUFBbUM7RUFDbkM7RUFBZ0I7QURBbEI7O0FDR0E7O0VBQUE7QUFJQTtFQUNFO0FEREY7O0FDSUE7OztFQUFBO0FBS0E7O0VBRUU7RUFDQTtFQUNBO0VBQ0E7QURGRjs7QUNLQTtFQUNFO0FERkY7O0FDS0E7RUFDRTtBREZGOztBQ0tBOytFQUFBO0FBR0E7O0VBQUE7QUFJQTtFQUNFO0FESkY7O0FDT0E7K0VBQUE7QUFHQTs7O0VBQUE7QUFLQTs7Ozs7RUFLRTtFQUFzQjtFQUN0QjtFQUFpQjtFQUNqQjtFQUFtQjtFQUNuQjtFQUFXO0FERmI7O0FDS0E7OztFQUFBO0FBS0E7O0VBRUU7RUFDQTtBREhGOztBQ01BOzs7RUFBQTtBQUtBOztFQUVFO0VBQ0E7QURKRjs7QUNPQTs7RUFBQTtBQUlBOzs7O0VBSUU7QURMRjs7QUNRQTs7RUFBQTtBQUlBOzs7O0VBSUU7RUFDQTtBRE5GOztBQ1NBOztFQUFBO0FBSUE7Ozs7RUFJRTtBRFBGOztBQ1VBOztFQUFBO0FBSUE7RUFDRTtBRFJGOztBQ1dBOzs7OztFQUFBO0FBT0E7RUFDRTtFQUF3QjtFQUN4QjtFQUFnQjtFQUNoQjtFQUFnQjtFQUNoQjtFQUFpQjtFQUNqQjtFQUFZO0VBQ1o7RUFBcUI7QURIdkI7O0FDTUE7O0VBQUE7QUFJQTtFQUNFO0FESkY7O0FDT0E7O0VBQUE7QUFJQTtFQUNFO0FETEY7O0FDUUE7OztFQUFBO0FBS0E7O0VBRUU7RUFBd0I7RUFDeEI7RUFBWTtBREpkOztBQ09BOztFQUFBO0FBSUE7O0VBRUU7QURMRjs7QUNRQTs7O0VBQUE7QUFLQTtFQUNFO0VBQStCO0VBQy9CO0VBQXNCO0FESnhCOztBQ09BOztFQUFBO0FBSUE7RUFDRTtBRExGOztBQ1FBOzs7RUFBQTtBQUtBO0VBQ0U7RUFBNEI7RUFDNUI7RUFBZTtBREpqQjs7QUNPQTsrRUFBQTtBQUdBOztFQUFBO0FBSUE7RUFDRTtBRE5GOztBQ1NBOztFQUFBO0FBSUE7RUFDRTtBRFBGOztBQ1VBOytFQUFBO0FBR0E7O0VBQUE7QUFJQTtFQUNFO0FEVEY7O0FDWUE7O0VBQUE7QUFJQTtFQUNFO0FEVkY7O0FDYUE7OztFQUdFO0VBQ0E7RUFDQTtBRFZGOztBRTFSQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBRjZSRjs7QUc5VkE7O0VDbWFJLDhCRGphb0I7RUNrYXBCLDJCRGxhb0I7RUNtYXBCLHNCRG5hb0I7RUFDcEI7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBSG1XSjtBR2pXSTs7RUFDSTtFQUNBO0FIb1dSOztBRy9WSTtFQURKO0lBRVEsZ0JEVUk7RUZ5VlY7QUFDRjtBR2pXSTtFQUxKO0lBTVEsZ0JET0k7RUY2VlY7QUFDRjtBR2xXSTtFQVRKO0lBVVEsZ0JESUk7RUZpV1Y7QUFDRjtBR25XSTtFQWJKO0lBY1EsaUJEQ0k7RUZxV1Y7QUFDRjtBR3BXSTtFQWpCSjtJQWtCUSxpQkRGSztFRnlXWDtBQUNGOztBR2hXQTtFQzBYSSw4QkR6WG9CO0VDMFhwQiwyQkQxWG9CO0VDMlhwQixzQkQzWG9CO0VBQ3BCO0VDb0dBO0VBQ0E7RUFDQTtFQTRDQSxtQkFEb0I7RUFFcEIsdUJBRm9CO0VBR3BCLGVBSG9CO0VEOUlwQjtFQUNBO0VBQ0E7RUNOSTtHQUNBO0VBQ0E7RURjSjtBSG1XSjtBRzFXSTtFQ2dYQSw4QkQ5V3dCO0VDK1d4QiwyQkQvV3dCO0VDZ1h4QixzQkRoWHdCO0VDSHBCO0VBQ0E7RUFDQTtBSmlYUjs7QUdwV0E7RUNrV0ksOEJEaldvQjtFQ2tXcEIsMkJEbFdvQjtFQ21XcEIsc0JEbldvQjtFQ2hCaEI7RUFDQTtFQUNBO0VEZ0JKO0VBQ0E7RUFDQTtFQUNBLGFEckJrQjtFQ29DZDtHQUNBO0VBQ0E7QUg2VlI7QUc1V0k7RUMwVkEsOEJEeFZ3QjtFQ3lWeEIsMkJEelZ3QjtFQzBWeEIsc0JEMVZ3QjtFQ3pCcEI7RUFDQTtFQUNBO0FKeVlSO0FHN1dJO0VDNEVJO0VBR0o7RUFDQTtFRDlFSTtBSGlYUjs7QUl6YlE7RUFDSTtHQUVJO0FKMmJoQjs7QUk5YlE7RUFDSTtHQUVJO0FKZ2NoQjs7QUluY1E7RUFDSTtHQUVJO0FKcWNoQjs7QUl4Y1E7RUFDSTtHQUVJO0FKMGNoQjs7QUk3Y1E7RUFDSTtHQUVJO0FKK2NoQjs7QUlsZFE7RUFDSTtHQUVJO0FKb2RoQjs7QUl2ZFE7RUFDSTtHQUVJO0FKeWRoQjs7QUk1ZFE7RUFDSTtHQUVJO0FKOGRoQjs7QUlqZVE7RUFDSTtHQUVJO0FKbWVoQjs7QUl0ZVE7RUFDSTtHQUVJO0FKd2VoQjs7QUkzZVE7RUFDSTtHQUVJO0FKNmVoQjs7QUloZlE7RUFDSTtHQUVJO0FKa2ZoQjs7QUc3WkE7RUN4RlE7SUFDSTtLQUVJO0VKd2ZkOztFSTNmTTtJQUNJO0tBRUk7RUo2ZmQ7O0VJaGdCTTtJQUNJO0tBRUk7RUprZ0JkOztFSXJnQk07SUFDSTtLQUVJO0VKdWdCZDs7RUkxZ0JNO0lBQ0k7S0FFSTtFSjRnQmQ7O0VJL2dCTTtJQUNJO0tBRUk7RUppaEJkOztFSXBoQk07SUFDSTtLQUVJO0VKc2hCZDs7RUl6aEJNO0lBQ0k7S0FFSTtFSjJoQmQ7O0VJOWhCTTtJQUNJO0tBRUk7RUpnaUJkOztFSW5pQk07SUFDSTtLQUVJO0VKcWlCZDs7RUl4aUJNO0lBQ0k7S0FFSTtFSjBpQmQ7O0VJN2lCTTtJQUNJO0tBRUk7RUoraUJkO0FBQ0Y7QUd2ZEE7RUM1RlE7SUFDSTtLQUVJO0VKcWpCZDs7RUl4akJNO0lBQ0k7S0FFSTtFSjBqQmQ7O0VJN2pCTTtJQUNJO0tBRUk7RUorakJkOztFSWxrQk07SUFDSTtLQUVJO0VKb2tCZDs7RUl2a0JNO0lBQ0k7S0FFSTtFSnlrQmQ7O0VJNWtCTTtJQUNJO0tBRUk7RUo4a0JkOztFSWpsQk07SUFDSTtLQUVJO0VKbWxCZDs7RUl0bEJNO0lBQ0k7S0FFSTtFSndsQmQ7O0VJM2xCTTtJQUNJO0tBRUk7RUo2bEJkOztFSWhtQk07SUFDSTtLQUVJO0VKa21CZDs7RUlybUJNO0lBQ0k7S0FFSTtFSnVtQmQ7O0VJMW1CTTtJQUNJO0tBRUk7RUo0bUJkO0FBQ0Y7QUdoaEJBO0VDaEdRO0lBQ0k7S0FFSTtFSmtuQmQ7O0VJcm5CTTtJQUNJO0tBRUk7RUp1bkJkOztFSTFuQk07SUFDSTtLQUVJO0VKNG5CZDs7RUkvbkJNO0lBQ0k7S0FFSTtFSmlvQmQ7O0VJcG9CTTtJQUNJO0tBRUk7RUpzb0JkOztFSXpvQk07SUFDSTtLQUVJO0VKMm9CZDs7RUk5b0JNO0lBQ0k7S0FFSTtFSmdwQmQ7O0VJbnBCTTtJQUNJO0tBRUk7RUpxcEJkOztFSXhwQk07SUFDSTtLQUVJO0VKMHBCZDs7RUk3cEJNO0lBQ0k7S0FFSTtFSitwQmQ7O0VJbHFCTTtJQUNJO0tBRUk7RUpvcUJkOztFSXZxQk07SUFDSTtLQUVJO0VKeXFCZDtBQUNGO0FHemtCQTtFQ3BHUTtJQUNJO0tBRUk7RUorcUJkOztFSWxyQk07SUFDSTtLQUVJO0VKb3JCZDs7RUl2ckJNO0lBQ0k7S0FFSTtFSnlyQmQ7O0VJNXJCTTtJQUNJO0tBRUk7RUo4ckJkOztFSWpzQk07SUFDSTtLQUVJO0VKbXNCZDs7RUl0c0JNO0lBQ0k7S0FFSTtFSndzQmQ7O0VJM3NCTTtJQUNJO0tBRUk7RUo2c0JkOztFSWh0Qk07SUFDSTtLQUVJO0VKa3RCZDs7RUlydEJNO0lBQ0k7S0FFSTtFSnV0QmQ7O0VJMXRCTTtJQUNJO0tBRUk7RUo0dEJkOztFSS90Qk07SUFDSTtLQUVJO0VKaXVCZDs7RUlwdUJNO0lBQ0k7S0FFSTtFSnN1QmQ7QUFDRjtBR2xvQkE7RUN4R1E7SUFDSTtLQUVJO0VKNHVCZDs7RUkvdUJNO0lBQ0k7S0FFSTtFSml2QmQ7O0VJcHZCTTtJQUNJO0tBRUk7RUpzdkJkOztFSXp2Qk07SUFDSTtLQUVJO0VKMnZCZDs7RUk5dkJNO0lBQ0k7S0FFSTtFSmd3QmQ7O0VJbndCTTtJQUNJO0tBRUk7RUpxd0JkOztFSXh3Qk07SUFDSTtLQUVJO0VKMHdCZDs7RUk3d0JNO0lBQ0k7S0FFSTtFSit3QmQ7O0VJbHhCTTtJQUNJO0tBRUk7RUpveEJkOztFSXZ4Qk07SUFDSTtLQUVJO0VKeXhCZDs7RUk1eEJNO0lBQ0k7S0FFSTtFSjh4QmQ7O0VJanlCTTtJQUNJO0tBRUk7RUpteUJkO0FBQ0Y7QUd2ckJBO0VDa0NRO0VBR0o7RUFDQTtFQWhJSTtBSnV4QlI7O0FHenJCQTtFQUNJO0lDNkJJO0lBR0o7SUFDQTtJQWhJSTtFSit4Qk47QUFDRjtBRzVyQkE7RUFDSTtJQ3VCSTtJQUdKO0lBQ0E7SUFoSUk7RUp1eUJOO0FBQ0Y7QUc5ckJBO0VBQ0k7SUNpQkk7SUFHSjtJQUNBO0lBaElJO0VKK3lCTjtBQUNGO0FHaHNCQTtFQUNJO0lDV0k7SUFHSjtJQUNBO0lBaElJO0VKdXpCTjtBQUNGO0FHbHNCQTtFQUNJO0lDS0k7SUFHSjtJQUNBO0lBaElJO0VKK3pCTjtBQUNGO0FJcndCUTtFQVhKLGtCRnpEYTtFRTBEYixpQkYxRGE7RUUyRGIsU0YzRGE7QUY4MEJqQjs7QUkxd0JRO0VBWEosa0JBZWdDO0VBZGhDLGlCQWNnQztFQWJoQyxTQWFnQztBSjR3QnBDOztBSWh4QlE7RUFYSixrQkFlZ0M7RUFkaEMsaUJBY2dDO0VBYmhDLFNBYWdDO0FKa3hCcEM7O0FJdHhCUTtFQVhKLGlCQWVnQztFQWRoQyxnQkFjZ0M7RUFiaEMsUUFhZ0M7QUp3eEJwQzs7QUk1eEJRO0VBWEosaUJBZWdDO0VBZGhDLGdCQWNnQztFQWJoQyxRQWFnQztBSjh4QnBDOztBSWx5QlE7RUFYSixpQkFlZ0M7RUFkaEMsZ0JBY2dDO0VBYmhDLFFBYWdDO0FKb3lCcEM7O0FJeHlCUTtFQVhKLGlCQWVnQztFQWRoQyxnQkFjZ0M7RUFiaEMsUUFhZ0M7QUoweUJwQzs7QUk5eUJRO0VBWEosaUJBZWdDO0VBZGhDLGdCQWNnQztFQWJoQyxRQWFnQztBSmd6QnBDOztBSXB6QlE7RUFYSixpQkFlZ0M7RUFkaEMsZ0JBY2dDO0VBYmhDLFFBYWdDO0FKc3pCcEM7O0FJMXpCUTtFQVhKLGlCQWVnQztFQWRoQyxnQkFjZ0M7RUFiaEMsUUFhZ0M7QUo0ekJwQzs7QUloMEJRO0VBWEosaUJBZWdDO0VBZGhDLGdCQWNnQztFQWJoQyxRQWFnQztBSmswQnBDOztBSXQwQlE7RUFYSixpQkFlZ0M7RUFkaEMsZ0JBY2dDO0VBYmhDLFFBYWdDO0FKdzBCcEM7O0FJNTBCUTtFQVhKLGlCQWVnQztFQWRoQyxnQkFjZ0M7RUFiaEMsUUFhZ0M7QUo4MEJwQzs7QUczd0JBO0VDdkVRO0lBWEosa0JGekRhO0lFMERiLGlCRjFEYTtJRTJEYixTRjNEYTtFRjY1QmY7O0VJejFCTTtJQVhKLGtCQWVnQztJQWRoQyxpQkFjZ0M7SUFiaEMsU0FhZ0M7RUoyMUJsQzs7RUkvMUJNO0lBWEosa0JBZWdDO0lBZGhDLGlCQWNnQztJQWJoQyxTQWFnQztFSmkyQmxDOztFSXIyQk07SUFYSixpQkFlZ0M7SUFkaEMsZ0JBY2dDO0lBYmhDLFFBYWdDO0VKdTJCbEM7O0VJMzJCTTtJQVhKLGlCQWVnQztJQWRoQyxnQkFjZ0M7SUFiaEMsUUFhZ0M7RUo2MkJsQzs7RUlqM0JNO0lBWEosaUJBZWdDO0lBZGhDLGdCQWNnQztJQWJoQyxRQWFnQztFSm0zQmxDOztFSXYzQk07SUFYSixpQkFlZ0M7SUFkaEMsZ0JBY2dDO0lBYmhDLFFBYWdDO0VKeTNCbEM7O0VJNzNCTTtJQVhKLGlCQWVnQztJQWRoQyxnQkFjZ0M7SUFiaEMsUUFhZ0M7RUorM0JsQzs7RUluNEJNO0lBWEosaUJBZWdDO0lBZGhDLGdCQWNnQztJQWJoQyxRQWFnQztFSnE0QmxDOztFSXo0Qk07SUFYSixpQkFlZ0M7SUFkaEMsZ0JBY2dDO0lBYmhDLFFBYWdDO0VKMjRCbEM7O0VJLzRCTTtJQVhKLGlCQWVnQztJQWRoQyxnQkFjZ0M7SUFiaEMsUUFhZ0M7RUppNUJsQzs7RUlyNUJNO0lBWEosaUJBZWdDO0lBZGhDLGdCQWNnQztJQWJoQyxRQWFnQztFSnU1QmxDOztFSTM1Qk07SUFYSixpQkFlZ0M7SUFkaEMsZ0JBY2dDO0lBYmhDLFFBYWdDO0VKNjVCbEM7QUFDRjtBR3YxQkE7RUMzRVE7SUFYSixrQkZ6RGE7SUUwRGIsaUJGMURhO0lFMkRiLFNGM0RhO0VGNCtCZjs7RUl4NkJNO0lBWEosa0JBZWdDO0lBZGhDLGlCQWNnQztJQWJoQyxTQWFnQztFSjA2QmxDOztFSTk2Qk07SUFYSixrQkFlZ0M7SUFkaEMsaUJBY2dDO0lBYmhDLFNBYWdDO0VKZzdCbEM7O0VJcDdCTTtJQVhKLGlCQWVnQztJQWRoQyxnQkFjZ0M7SUFiaEMsUUFhZ0M7RUpzN0JsQzs7RUkxN0JNO0lBWEosaUJBZWdDO0lBZGhDLGdCQWNnQztJQWJoQyxRQWFnQztFSjQ3QmxDOztFSWg4Qk07SUFYSixpQkFlZ0M7SUFkaEMsZ0JBY2dDO0lBYmhDLFFBYWdDO0VKazhCbEM7O0VJdDhCTTtJQVhKLGlCQWVnQztJQWRoQyxnQkFjZ0M7SUFiaEMsUUFhZ0M7RUp3OEJsQzs7RUk1OEJNO0lBWEosaUJBZWdDO0lBZGhDLGdCQWNnQztJQWJoQyxRQWFnQztFSjg4QmxDOztFSWw5Qk07SUFYSixpQkFlZ0M7SUFkaEMsZ0JBY2dDO0lBYmhDLFFBYWdDO0VKbzlCbEM7O0VJeDlCTTtJQVhKLGlCQWVnQztJQWRoQyxnQkFjZ0M7SUFiaEMsUUFhZ0M7RUowOUJsQzs7RUk5OUJNO0lBWEosaUJBZWdDO0lBZGhDLGdCQWNnQztJQWJoQyxRQWFnQztFSmcrQmxDOztFSXArQk07SUFYSixpQkFlZ0M7SUFkaEMsZ0JBY2dDO0lBYmhDLFFBYWdDO0VKcytCbEM7O0VJMStCTTtJQVhKLGlCQWVnQztJQWRoQyxnQkFjZ0M7SUFiaEMsUUFhZ0M7RUo0K0JsQztBQUNGO0FHbDZCQTtFQy9FUTtJQVhKLGtCRnpEYTtJRTBEYixpQkYxRGE7SUUyRGIsU0YzRGE7RUYyakNmOztFSXYvQk07SUFYSixrQkFlZ0M7SUFkaEMsaUJBY2dDO0lBYmhDLFNBYWdDO0VKeS9CbEM7O0VJNy9CTTtJQVhKLGtCQWVnQztJQWRoQyxpQkFjZ0M7SUFiaEMsU0FhZ0M7RUorL0JsQzs7RUluZ0NNO0lBWEosaUJBZWdDO0lBZGhDLGdCQWNnQztJQWJoQyxRQWFnQztFSnFnQ2xDOztFSXpnQ007SUFYSixpQkFlZ0M7SUFkaEMsZ0JBY2dDO0lBYmhDLFFBYWdDO0VKMmdDbEM7O0VJL2dDTTtJQVhKLGlCQWVnQztJQWRoQyxnQkFjZ0M7SUFiaEMsUUFhZ0M7RUppaENsQzs7RUlyaENNO0lBWEosaUJBZWdDO0lBZGhDLGdCQWNnQztJQWJoQyxRQWFnQztFSnVoQ2xDOztFSTNoQ007SUFYSixpQkFlZ0M7SUFkaEMsZ0JBY2dDO0lBYmhDLFFBYWdDO0VKNmhDbEM7O0VJamlDTTtJQVhKLGlCQWVnQztJQWRoQyxnQkFjZ0M7SUFiaEMsUUFhZ0M7RUptaUNsQzs7RUl2aUNNO0lBWEosaUJBZWdDO0lBZGhDLGdCQWNnQztJQWJoQyxRQWFnQztFSnlpQ2xDOztFSTdpQ007SUFYSixpQkFlZ0M7SUFkaEMsZ0JBY2dDO0lBYmhDLFFBYWdDO0VKK2lDbEM7O0VJbmpDTTtJQVhKLGlCQWVnQztJQWRoQyxnQkFjZ0M7SUFiaEMsUUFhZ0M7RUpxakNsQzs7RUl6akNNO0lBWEosaUJBZWdDO0lBZGhDLGdCQWNnQztJQWJoQyxRQWFnQztFSjJqQ2xDO0FBQ0Y7QUc3K0JBO0VDbkZRO0lBWEosa0JGekRhO0lFMERiLGlCRjFEYTtJRTJEYixTRjNEYTtFRjBvQ2Y7O0VJdGtDTTtJQVhKLGtCQWVnQztJQWRoQyxpQkFjZ0M7SUFiaEMsU0FhZ0M7RUp3a0NsQzs7RUk1a0NNO0lBWEosa0JBZWdDO0lBZGhDLGlCQWNnQztJQWJoQyxTQWFnQztFSjhrQ2xDOztFSWxsQ007SUFYSixpQkFlZ0M7SUFkaEMsZ0JBY2dDO0lBYmhDLFFBYWdDO0VKb2xDbEM7O0VJeGxDTTtJQVhKLGlCQWVnQztJQWRoQyxnQkFjZ0M7SUFiaEMsUUFhZ0M7RUowbENsQzs7RUk5bENNO0lBWEosaUJBZWdDO0lBZGhDLGdCQWNnQztJQWJoQyxRQWFnQztFSmdtQ2xDOztFSXBtQ007SUFYSixpQkFlZ0M7SUFkaEMsZ0JBY2dDO0lBYmhDLFFBYWdDO0VKc21DbEM7O0VJMW1DTTtJQVhKLGlCQWVnQztJQWRoQyxnQkFjZ0M7SUFiaEMsUUFhZ0M7RUo0bUNsQzs7RUlobkNNO0lBWEosaUJBZWdDO0lBZGhDLGdCQWNnQztJQWJoQyxRQWFnQztFSmtuQ2xDOztFSXRuQ007SUFYSixpQkFlZ0M7SUFkaEMsZ0JBY2dDO0lBYmhDLFFBYWdDO0VKd25DbEM7O0VJNW5DTTtJQVhKLGlCQWVnQztJQWRoQyxnQkFjZ0M7SUFiaEMsUUFhZ0M7RUo4bkNsQzs7RUlsb0NNO0lBWEosaUJBZWdDO0lBZGhDLGdCQWNnQztJQWJoQyxRQWFnQztFSm9vQ2xDOztFSXhvQ007SUFYSixpQkFlZ0M7SUFkaEMsZ0JBY2dDO0lBYmhDLFFBYWdDO0VKMG9DbEM7QUFDRjtBR3hqQ0E7RUN2RlE7SUFYSixrQkZ6RGE7SUUwRGIsaUJGMURhO0lFMkRiLFNGM0RhO0VGeXRDZjs7RUlycENNO0lBWEosa0JBZWdDO0lBZGhDLGlCQWNnQztJQWJoQyxTQWFnQztFSnVwQ2xDOztFSTNwQ007SUFYSixrQkFlZ0M7SUFkaEMsaUJBY2dDO0lBYmhDLFNBYWdDO0VKNnBDbEM7O0VJanFDTTtJQVhKLGlCQWVnQztJQWRoQyxnQkFjZ0M7SUFiaEMsUUFhZ0M7RUptcUNsQzs7RUl2cUNNO0lBWEosaUJBZWdDO0lBZGhDLGdCQWNnQztJQWJoQyxRQWFnQztFSnlxQ2xDOztFSTdxQ007SUFYSixpQkFlZ0M7SUFkaEMsZ0JBY2dDO0lBYmhDLFFBYWdDO0VKK3FDbEM7O0VJbnJDTTtJQVhKLGlCQWVnQztJQWRoQyxnQkFjZ0M7SUFiaEMsUUFhZ0M7RUpxckNsQzs7RUl6ckNNO0lBWEosaUJBZWdDO0lBZGhDLGdCQWNnQztJQWJoQyxRQWFnQztFSjJyQ2xDOztFSS9yQ007SUFYSixpQkFlZ0M7SUFkaEMsZ0JBY2dDO0lBYmhDLFFBYWdDO0VKaXNDbEM7O0VJcnNDTTtJQVhKLGlCQWVnQztJQWRoQyxnQkFjZ0M7SUFiaEMsUUFhZ0M7RUp1c0NsQzs7RUkzc0NNO0lBWEosaUJBZWdDO0lBZGhDLGdCQWNnQztJQWJoQyxRQWFnQztFSjZzQ2xDOztFSWp0Q007SUFYSixpQkFlZ0M7SUFkaEMsZ0JBY2dDO0lBYmhDLFFBYWdDO0VKbXRDbEM7O0VJdnRDTTtJQVhKLGlCQWVnQztJQWRoQyxnQkFjZ0M7SUFiaEMsUUFhZ0M7RUp5dENsQztBQUNGO0FJanNDUTtFQVpKLDJCQUZhO0dBSVQ7QUorc0NSOztBSXJzQ1E7RUFaSiwyQkFGYTtHQUlUO0FKb3RDUjs7QUkxc0NRO0VBWkosZ0JBRmE7R0FJVDtBSnl0Q1I7O0FJL3NDUTtFQVpKLDJCQUZhO0dBSVQ7QUo4dENSOztBSXB0Q1E7RUFaSiwyQkFGYTtHQUlUO0FKbXVDUjs7QUl6dENRO0VBWkosZ0JBRmE7R0FJVDtBSnd1Q1I7O0FJOXRDUTtFQVpKLDJCQUZhO0dBSVQ7QUo2dUNSOztBSW51Q1E7RUFaSiwyQkFGYTtHQUlUO0FKa3ZDUjs7QUl4dUNRO0VBWkosZ0JBRmE7R0FJVDtBSnV2Q1I7O0FJN3VDUTtFQVpKLDJCQUZhO0dBSVQ7QUo0dkNSOztBSWx2Q1E7RUFaSiwwQkFGYTtHQUlUO0FKaXdDUjs7QUduckNBO0VDOURRO0lBbEJKLDJCQUZhO0tBSVQ7RUp1d0NOOztFSXZ2Q007SUFsQkosMkJBRmE7S0FJVDtFSjR3Q047O0VJNXZDTTtJQWxCSixnQkFGYTtLQUlUO0VKaXhDTjs7RUlqd0NNO0lBbEJKLDJCQUZhO0tBSVQ7RUpzeENOOztFSXR3Q007SUFsQkosMkJBRmE7S0FJVDtFSjJ4Q047O0VJM3dDTTtJQWxCSixnQkFGYTtLQUlUO0VKZ3lDTjs7RUloeENNO0lBbEJKLDJCQUZhO0tBSVQ7RUpxeUNOOztFSXJ4Q007SUFsQkosMkJBRmE7S0FJVDtFSjB5Q047O0VJMXhDTTtJQWxCSixnQkFGYTtLQUlUO0VKK3lDTjs7RUkveENNO0lBbEJKLDJCQUZhO0tBSVQ7RUpvekNOOztFSXB5Q007SUFsQkosMEJBRmE7S0FJVDtFSnl6Q047O0VJenlDTTtJQWxCSixjQUxTO0tBT0w7RUo4ekNOO0FBQ0Y7QUc3dUNBO0VDbEVRO0lBbEJKLDJCQUZhO0tBSVQ7RUpvMENOOztFSXB6Q007SUFsQkosMkJBRmE7S0FJVDtFSnkwQ047O0VJenpDTTtJQWxCSixnQkFGYTtLQUlUO0VKODBDTjs7RUk5ekNNO0lBbEJKLDJCQUZhO0tBSVQ7RUptMUNOOztFSW4wQ007SUFsQkosMkJBRmE7S0FJVDtFSncxQ047O0VJeDBDTTtJQWxCSixnQkFGYTtLQUlUO0VKNjFDTjs7RUk3MENNO0lBbEJKLDJCQUZhO0tBSVQ7RUprMkNOOztFSWwxQ007SUFsQkosMkJBRmE7S0FJVDtFSnUyQ047O0VJdjFDTTtJQWxCSixnQkFGYTtLQUlUO0VKNDJDTjs7RUk1MUNNO0lBbEJKLDJCQUZhO0tBSVQ7RUppM0NOOztFSWoyQ007SUFsQkosMEJBRmE7S0FJVDtFSnMzQ047O0VJdDJDTTtJQWxCSixjQUxTO0tBT0w7RUoyM0NOO0FBQ0Y7QUd0eUNBO0VDdEVRO0lBbEJKLDJCQUZhO0tBSVQ7RUppNENOOztFSWozQ007SUFsQkosMkJBRmE7S0FJVDtFSnM0Q047O0VJdDNDTTtJQWxCSixnQkFGYTtLQUlUO0VKMjRDTjs7RUkzM0NNO0lBbEJKLDJCQUZhO0tBSVQ7RUpnNUNOOztFSWg0Q007SUFsQkosMkJBRmE7S0FJVDtFSnE1Q047O0VJcjRDTTtJQWxCSixnQkFGYTtLQUlUO0VKMDVDTjs7RUkxNENNO0lBbEJKLDJCQUZhO0tBSVQ7RUorNUNOOztFSS80Q007SUFsQkosMkJBRmE7S0FJVDtFSm82Q047O0VJcDVDTTtJQWxCSixnQkFGYTtLQUlUO0VKeTZDTjs7RUl6NUNNO0lBbEJKLDJCQUZhO0tBSVQ7RUo4NkNOOztFSTk1Q007SUFsQkosMEJBRmE7S0FJVDtFSm03Q047O0VJbjZDTTtJQWxCSixjQUxTO0tBT0w7RUp3N0NOO0FBQ0Y7QUcvMUNBO0VDMUVRO0lBbEJKLDJCQUZhO0tBSVQ7RUo4N0NOOztFSTk2Q007SUFsQkosMkJBRmE7S0FJVDtFSm04Q047O0VJbjdDTTtJQWxCSixnQkFGYTtLQUlUO0VKdzhDTjs7RUl4N0NNO0lBbEJKLDJCQUZhO0tBSVQ7RUo2OENOOztFSTc3Q007SUFsQkosMkJBRmE7S0FJVDtFSms5Q047O0VJbDhDTTtJQWxCSixnQkFGYTtLQUlUO0VKdTlDTjs7RUl2OENNO0lBbEJKLDJCQUZhO0tBSVQ7RUo0OUNOOztFSTU4Q007SUFsQkosMkJBRmE7S0FJVDtFSmkrQ047O0VJajlDTTtJQWxCSixnQkFGYTtLQUlUO0VKcytDTjs7RUl0OUNNO0lBbEJKLDJCQUZhO0tBSVQ7RUoyK0NOOztFSTM5Q007SUFsQkosMEJBRmE7S0FJVDtFSmcvQ047O0VJaCtDTTtJQWxCSixjQUxTO0tBT0w7RUpxL0NOO0FBQ0Y7QUd4NUNBO0VDOUVRO0lBbEJKLDJCQUZhO0tBSVQ7RUoyL0NOOztFSTMrQ007SUFsQkosMkJBRmE7S0FJVDtFSmdnRE47O0VJaC9DTTtJQWxCSixnQkFGYTtLQUlUO0VKcWdETjs7RUlyL0NNO0lBbEJKLDJCQUZhO0tBSVQ7RUowZ0ROOztFSTEvQ007SUFsQkosMkJBRmE7S0FJVDtFSitnRE47O0VJLy9DTTtJQWxCSixnQkFGYTtLQUlUO0VKb2hETjs7RUlwZ0RNO0lBbEJKLDJCQUZhO0tBSVQ7RUp5aEROOztFSXpnRE07SUFsQkosMkJBRmE7S0FJVDtFSjhoRE47O0VJOWdETTtJQWxCSixnQkFGYTtLQUlUO0VKbWlETjs7RUluaERNO0lBbEJKLDJCQUZhO0tBSVQ7RUp3aUROOztFSXhoRE07SUFsQkosMEJBRmE7S0FJVDtFSjZpRE47O0VJN2hETTtJQWxCSixjQUxTO0tBT0w7RUprakROO0FBQ0Y7QUs1cERBO0VEd0xJLG1CQ3ZMbUI7RUR3TG5CLHVCQ3hMbUI7RUR5TG5CLGVDekxtQjtBTGdxRHZCOztBSzdwREE7RURvTEkscUJDbkxtQjtFRG9MbkIseUJDcExtQjtFRHFMbkIsaUJDckxtQjtBTGtxRHZCO0FLN3BESTtFRDJKQSxvQkMxSnlCO0VEMkp6QixzQkMzSnlCO0VENEp6QixjQzVKeUI7QUxpcUQ3Qjs7QUs3cERBO0VEeUtJLDJCQ3hLbUI7RUR5S25CLCtCQ3pLbUI7RUQwS25CLHVCQzFLbUI7QUxrcUR2Qjs7QUszcERBO0VEdUtJLHVCQ3RLd0I7RUR1S3hCLDJCQ3ZLd0I7RUR3S3hCLG1CQ3hLd0I7QUxncUQ1Qjs7QUs3cERBO0VEbUtJLCtCQ2xLd0I7RURtS3hCLG1DQ25Ld0I7RURvS3hCLDJCQ3BLd0I7QUxrcUQ1Qjs7QUsvcERBO0VEK0pJLDBCQzlKd0I7RUQrSnhCLDhCQy9Kd0I7RURnS3hCLHNCQ2hLd0I7QUxvcUQ1Qjs7QUtqcURBO0VEMkpJLGtDQzFKd0I7RUQySnhCLHNDQzNKd0I7RUQ0SnhCLDhCQzVKd0I7QUxzcUQ1Qjs7QUsvcERBO0VEb0xRO0VBdEJKLCtCQzdKcUI7RUQ4SnJCLHVCQzlKcUI7QUxvcUR6Qjs7QUtqcURBO0VEa0xRO0VBeEJKLDZCQ3pKcUI7RUQwSnJCLHFCQzFKcUI7QUxzcUR6QjtBS2xxRFE7RUFDSTtBTG9xRFo7O0FLL3BEQTtFRHlLUSxzQkN4S2lCO0VEOElyQiwyQkM5SXFCO0VEK0lyQixtQkMvSXFCO0FMb3FEekI7QUtocURRO0VBQ0k7QUxrcURaOztBSzdwREE7RUQ4SlEsd0JDN0ppQjtFRG1JckIsNkJDbklxQjtFRG9JckIscUJDcElxQjtBTGtxRHpCOztBSzNwREE7RURzS1E7RUE5QkosaUNDdkl1QjtFRHdJdkIseUJDeEl1QjtBTGdxRDNCOztBSzdwREE7RURvS1E7RUFoQ0osK0JDbkl1QjtFRG9JdkIsdUJDcEl1QjtBTGtxRDNCO0FLL3BESTtFQUNJO0FMaXFEUjs7QUs3cERBO0VEaUtRLDBCQ2hLbUI7RUQwSHZCLDZCQzFIdUI7RUQySHZCLHFCQzNIdUI7QUxrcUQzQjs7QUsvcERBO0VEeUpRO0VBbENKLG9DQ3RIdUI7RUR1SHZCLDRCQ3ZIdUI7QUxvcUQzQjs7QUtqcURBO0VEdUpRO0VBcENKLG1DQ2xIdUI7RURtSHZCLDJCQ25IdUI7QUxzcUQzQjs7QUsvcERBO0VEbUlRLDRCQ2xJZ0I7RURvR3BCLDJCQ3BHb0I7RURxR3BCLG1CQ3JHb0I7QUxvcUR4Qjs7QUtqcURBO0VEMkhRO0VBMUJKLDhCQ2hHb0I7RURpR3BCLHNCQ2pHb0I7QUxzcUR4Qjs7QUtucURBO0VEeUhRO0VBNUJKLDRCQzVGb0I7RUQ2RnBCLG9CQzdGb0I7RUFDcEI7QUx3cURKOztBS3JxREE7RURzSFEsMkJDckhnQjtFRHVGcEIsMEJDdkZvQjtFRHdGcEIsa0JDeEZvQjtFQUNwQjtBTDBxREo7O0FLdnFEQTtFRGlIUSw2QkNoSGdCO0VEa0ZwQiw0QkNsRm9CO0VEbUZwQixvQkNuRm9CO0VBQ3BCO0FMNHFESjs7QUtycURBO0VEbUlJO0VBQ0E7RUFDQTtBSnNpREo7QUt2cURRO0VBQ0k7QUx5cURaOztBS3BxREE7RUQrSEk7RUFDQTtFQUNBO0FKeWlESjtBS3RxRFE7RUFDSTtFQUNBO0VBQ0E7QUx3cURaO0FLdHFEWTtFRDFGUjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUptd0RKOztBS3ZxREE7RURxSEk7RUFDQTtFQUNBO0FKc2pESjtBS3pxRFE7RUFDSTtFQUNBO0VBQ0E7QUwycURaO0FLenFEWTtFRDFHUjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUpzeERKOztBSzFxREE7RUQyR0k7RUFDQTtFQUNBO0FKbWtESjtBSzVxRFE7RUFDSTtFQUNBO0VBQ0E7QUw4cURaO0FLNXFEWTtFRDFIUjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUp5eURKOztBSzdxREE7RURpR0k7RUFDQTtFQUNBO0FKZ2xESjtBSy9xRFE7RUFDSTtFQUNBO0VBQ0E7QUxpckRaO0FLL3FEWTtFRDFJUjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUo0ekRKOztBSzFxREk7RUFDSTtBTDZxRFI7O0FLcHFEQTtFRHJGSTtFQUNBO0VBQ0E7RUFrREEsMEJDbUN3QjtFRGxDeEIsOEJDa0N3QjtFRGpDeEIsc0JDaUN3QjtBTDJxRDVCO0FLenFESTtFRHJDQSx1QkNzQzRCO0VEckM1QiwyQkNxQzRCO0VEcEM1QixtQkNvQzRCO0FMNnFEaEM7O0FLeHFEQTtFQUNJO0FMMnFESjs7QUt2cURBO0VBQ0k7QUwwcURKOztBS3RxREE7RUFDSTtBTHlxREo7O0FLbHFEQTtFQUNJO0VEckdJO0VBR0o7RUFDQTtFQ21HQTtFQUNBO0VBQ0E7R0FFSTtBTHNxRFI7O0FLbHFEQTtFQUNJO0VBQ0E7RUFDQTtBTHFxREo7QUtucURJO0VBQ0k7QUxxcURSOztBSTdpRFE7RUF0RkE7SUFFUTtFSnNvRGQ7QUFDRjs7QUlua0RRO0VBL0RJO0lBRVE7RUpxb0RsQjtBQUNGOztBSXpqRFE7RUF4RUk7SUFFUTtFSm9vRGxCO0FBQ0Y7O0FJL2pEUTtFQWxFSTtJQUVRO0VKb29EbEI7QUFDRjs7QUlybERRO0VBL0RJO0lBRVE7RUp1cERsQjtBQUNGOztBSTNrRFE7RUF4RUk7SUFFUTtFSnNwRGxCO0FBQ0Y7O0FJamxEUTtFQWxFSTtJQUVRO0VKc3BEbEI7QUFDRjs7QUl2bURRO0VBL0RJO0lBRVE7RUp5cURsQjtBQUNGOztBSTdsRFE7RUF4RUk7SUFFUTtFSndxRGxCO0FBQ0Y7O0FJbm1EUTtFQWxFSTtJQUVRO0VKd3FEbEI7QUFDRjs7QUl6bkRRO0VBL0RJO0lBRVE7RUoyckRsQjtBQUNGOztBSS9tRFE7RUF4RUk7SUFFUTtFSjByRGxCO0FBQ0Y7O0FJcm5EUTtFQWxFSTtJQUVRO0VKMHJEbEI7QUFDRjs7QUkzb0RRO0VBM0NBO0lBRVE7RUp5ckRkO0FBQ0Y7O0FNOWdFQTtBQzBWQTs7OztFQUFBO0FDMVZBO0FBRUE7RUFDRTtFQUNBO0VBRUE7RUFDQTtBUnFoRUY7QVFsaEVBO0VBQ0U7RUFDQTtFQUVBO0VBQ0E7QVJtaEVGO0FRaGhFQTtFQUNFO0VBQ0E7RUFFQTtFQUNBO0FSaWhFRjtBUTkvREE7RUFDRTtBUmdnRUY7O0FTM2lFQTtFQUNFO0lBQ0U7RVQ4aUVGO0VTM2lFQTtJQUNFO0VUNmlFRjtBQUNGOztBU3BqRUE7RUFDRTtJQUNFO0VUOGlFRjtFUzNpRUE7SUFDRTtFVDZpRUY7QUFDRjtBUzFpRUE7RUFDRTtJQUNFO0VUNGlFRjtFU3ppRUE7SUFDRTtFVDJpRUY7QUFDRjtBU2xqRUE7RUFDRTtJQUNFO0VUNGlFRjtFU3ppRUE7SUFDRTtFVDJpRUY7QUFDRjtBVTVqRUE7Ozs7O0VBQUE7QUFPQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBVjZqRUo7QVUzakVJO0VBQ0k7QVY2akVSO0FVMWpFSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QVY0akVSO0FVMWpFUTtFQUNJO0VBQ0E7RUFDQTtBVjRqRVo7QVV6akVRO0VBRUk7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUNBO0VBQ0E7QVZ5akVaO0FVdGpFUTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QVZ3akVaO0FVcmpFUTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QVZ1akVaOztBVWxqRUE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBVnFqRUo7QVVuakVJO0VBQ0k7VUFBQTtBVnFqRVI7QVVsakVJO0VBQ0k7VUFBQTtBVm9qRVI7O0FVaGpFQTtFQUNJO0lBQUs7RVZvakVQO0VVbmpFRTtJQUFNO0VWc2pFUjtFVXJqRUU7SUFBTztFVndqRVQ7QUFDRjs7QVU1akVBO0VBQ0k7SUFBSztFVm9qRVA7RVVuakVFO0lBQU07RVZzakVSO0VVcmpFRTtJQUFPO0VWd2pFVDtBQUNGO0FVdGpFQTtFQUNJO0lBQUs7RVZ5akVQO0VVeGpFRTtJQUFNO0VWMmpFUjtFVTFqRUU7SUFBTztFVjZqRVQ7QUFDRjtBVWprRUE7RUFDSTtJQUFLO0VWeWpFUDtFVXhqRUU7SUFBTTtFVjJqRVI7RVUxakVFO0lBQU87RVY2akVUO0FBQ0Y7QVUzakVBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7QVY2akVKOztBVTFqRUE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QVY2akVKO0FVM2pFSTtFQUVJO0FWNGpFUjtBVXpqRUk7RUFFSTtBVjBqRVI7QVV2akVJO0VBRUk7QVZ3akVSO0FVcmpFSTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QVZ1akVSO0FVbmpFSTtFQUNJO0VBQ0E7RUFDQTtBVnFqRVI7O0FVampFQTs7O0NBQUE7QUFLQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QVZtakVKOztBVWhqRUE7O0VBRUk7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO1VBQUE7QVZtakVKOztBVWhqRUE7RUFDSTtVQUFBO0FWbWpFSjs7QVVoakVBO0VBQ0k7SUFDSTtFVm1qRU47RVVsakVJO0lBQ0U7RVZvakVOO0FBQ0Y7O0FVempFQTtFQUNJO0lBQ0k7RVZtakVOO0VVbGpFSTtJQUNFO0VWb2pFTjtBQUNGO0FXdHZFQTs7Z0NBQUE7QUF1QkE7RUFDRTtFQUNBLG1CQWpCa0I7RUFrQmxCLGVBckJxQjtBWHl2RXZCO0FXbnVFRTtFQUFVO0FYc3VFWjtBV3J1RUU7RUFBZTtBWHd1RWpCO0FXdHVFSTtFQUNFLHlCQW5Cc0I7RUFvQnRCO0VBQ0E7S0FBQTtNQUFBO1VBQUE7QVh3dUVOO0FXdHVFSTtFQUE4QjtBWHl1RWxDOztBV3J1RUE7RUFDRTtBWHd1RUY7QVd2dUVFO0VBQStCO0FYMHVFakM7QVd6dUVFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FYMnVFSjtBV3p1RUU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBWDJ1RUo7QVcxdUVJO0VBQW1CO0FYNnVFdkI7QVc1dUVJO0VBQVU7QVgrdUVkO0FXN3VFRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QVgrdUVKO0FXN3VFRTtFQUNFO0VBQ0E7QVgrdUVKO0FXNXVFSTtFQUNFO0VBQ0E7QVg4dUVOO0FXNXVFSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FYOHVFTjs7QVd4dUVFO0VBQStCO0FYNHVFakM7QVczdUVFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLGdCQXJGb0I7RUFzRnBCO0VBQ0E7RUFDQTtFQUNBLG9CQTFGdUI7RUEyRnZCLFVBM0Z1QjtFQTRGdkI7RUFDQTtBWDZ1RUo7QVc1dUVJO0VBQW1CO0FYK3VFdkI7O0FXM3VFQTtFQUNFO0VBQ0E7RUFDQTtFQUNBLHlCQS9HaUI7RUFnSGpCO0VBQ0E7RUFDQSxvQkFwSHNCO0VBcUh0QixlQXhIcUI7RUF5SHJCO0VBQ0E7QVg4dUVGO0FXN3VFRTtFQUE0QjtBWGd2RTlCO0FXL3VFRTtFQUFhO0FYa3ZFZjtBV2p2RUU7RUFBd0I7QVhvdkUxQjs7QVdqdkVBO0VBQ0U7RUFDQTtFQUNBO0FYb3ZFRjs7QVdqdkVBO0VBQ0U7RUFDQTtFQUNBO0FYb3ZFRjtBV252RUU7RUFDRTtFQUNBO0FYcXZFSjtBV252RUU7RUFBOEI7QVhzdkVoQzs7QVdudkVBO0VBQ0U7QVhzdkVGO0FXcnZFRTtFQUNFO0VBQ0E7RUFDQSxtQkFsSnlCO0VBbUp6QjtFQUNBLGVBdkptQjtFQXdKbkI7RUFDQTtFQUNBO0VBQ0EseUJBbEpvQjtFQW1KcEI7RUFDQTtFQUNBO0FYdXZFSjtBV3R2RUk7RUFBb0I7QVh5dkV4QjtBV3h2RUk7RUFDRTtFQUNBO0FYMHZFTjtBV3h2RUk7RUFDRTtFQUNBO0FYMHZFTjtBV3h2RUk7RUFDRTtFQUNBO0FYMHZFTjs7QVdydkVBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQSx5QkE5SzBCO0VBK0sxQjtFQUNBO0VBQ0E7RUFDQSxnQ0F0THNCO0VBdUx0QixpQ0F2THNCO0VBd0x0QjtFQUNBO0FYd3ZFRjtBV3Z2RUU7RUFBYztBWDB2RWhCO0FXenZFRTtFQUFhO0FYNHZFZjtBVzN2RUU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FYNnZFSjtBVzN2RUU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FYNnZFSjtBVzN2RUU7RUFDRTtFQUNBO0VBQ0EsZUFoTm1CO0FYNjhFdkI7QVc1dkVJO0VBQWdCO0FYK3ZFcEI7QVc1dkVJO0VBREY7SUFFSTtFWCt2RUo7RVc5dkVJO0lBQ0U7SUFDQSxlQXZOZTtJQXdOZjtJQUNBO0lBQ0E7SUFDQTtJQUNBO0VYZ3dFTjtFVzl2RUk7SUFDRTtJQUNBO0lBQ0E7RVhnd0VOO0VXL3ZFTTtJQUNFO0lBQ0E7RVhpd0VSO0FBQ0Y7QVc5dkVJO0VBQ0U7QVhnd0VOO0FXL3ZFTTtFQUFVO0FYa3dFaEI7O0FXN3ZFQTtFQUE4QjtBWGl3RTlCOztBV2h3RUE7RUFBMEM7QVhvd0UxQzs7QVdud0VBO0VBQ0U7RUFDQTtLQUFBO01BQUE7VUFBQTtFQUNBO0FYc3dFRjs7QVdud0VBO0VBQ0U7RUFDQSxlQXpQcUI7RUEwUHJCO0VBQ0E7RUFDQTtBWHN3RUY7O0FXbndFQTtFQUNFO0VBQ0E7RUFDQTtPQUFBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBWHN3RUY7QVdyd0VFO0VBQVU7QVh3d0VaOztBV3J3RUE7RUFDRTtFQUNBO0VBQ0E7RUFDQSxlQWhScUI7RUFpUnJCO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QVh3d0VGO0FXdndFRTtFQUFVO0FYMHdFWjtBV3p3RUU7RUFDRTtFQUNBO0FYMndFSjs7QVd2d0VBO0VBQXFDO0FYMndFckM7O0FXendFQTtBQ2hTQTtFQUNFO0FaNmlGRjtBYTUrREk7RU5yUEE7SUFFSTtFUG11RU47QUFDRjtBYWovREk7RU5yUEE7SUFFSTtFUHd1RU47QUFDRjtBYXQvREk7RU5yUEE7SUFFSTtFUDZ1RU47QUFDRjtBYTMvREk7RU5yUEE7SUFFSTtFUGt2RU47QUFDRjtBYWhnRUk7RU5yUEE7SUFFSTtFUHV2RU47QUFDRjtBYXJnRUk7RU5yUEE7SUFFSTtFUDR2RU47QUFDRjtBYTFnRUk7RU5yUEE7SUFFSTtFUGl3RU47QUFDRjtBYS9nRUk7RUQ5akJGO0lBRUk7RVora0ZKO0FBQ0Y7O0FZM2tGQTtFQUNFO0VBQ0E7QVo4a0ZGOztBWTNrRkE7RUFDRTtBWjhrRkY7O0FhN2hFSTtFRDdpQkY7SUFDRTtFWjhrRkY7QUFDRjtBWTFrRkE7RUFDRTtBWjRrRkY7O0FZemtGQTs7RUpURTtFQUNBO0VBQ0E7RUlVQSxjRW5DSztBZGluRlA7O0FZM2tGQTtFTFBFO0VBQ0E7RUFDQTtFS09BO0VBQ0E7RUFDQTtFTDRSRTtFQUNBO0VBQ0E7QVBxekVKOztBWS9rRkE7RUFDRSx5QkUvQ0s7RUZnREwsV0UvQ0c7QWRpb0ZMOztBWXBsRkE7RUFDRSx5QkUvQ0s7RUZnREwsV0UvQ0c7QWRpb0ZMOztBWTFpRkE7Ozs7Ozs7Ozs7OztFSnRERTtFQUNBO0VJa0VBO0FaOGlGRjtBWTVpRkU7Ozs7Ozs7Ozs7OztFSmhGQTtFQUNBO0VBQ0E7RUlnRkU7RUFDQTtBWjJqRko7O0FZdmpGQTtFQUNFO0VBQ0E7RUFDQTtBWjBqRkY7QWF4bUVJO0VEcmRKO0lBTUk7SUFDQTtFWjJqRkY7QUFDRjtBWXJqRkE7O0VBeEVFO0VBQ0E7RUFDQTtBWmlvRkY7QWFwbkVJO0VEdmNKOztJQW5FSTtJQUNBO0lBQ0E7RVptb0ZGO0FBQ0Y7O0FZOWpGQTs7RUFqRUU7RUFDQTtFQUNBO0Fab29GRjtBYW5vRUk7RURsY0o7O0lBNURJO0lBQ0E7SUFDQTtFWnNvRkY7QUFDRjs7QVl4a0ZBOztFQTFERTtFQUNBO0VBQ0E7QVp1b0ZGOztBWTFrRkE7O0VBekRFO0VBQ0E7RUFDQTtBWndvRkY7O0FZNWtGQTtFQUNFO0FaK2tGRjtBWTdrRkU7RUFDRTtBWitrRko7O0FZM2tGQTtFQUNFO0VBQ0E7T0FBQTtBWjhrRkY7O0FZM2tGQTtFSmhJRTtFQUNBO0FSK3NGRjs7QVk1a0ZBO0VBQ0U7QVora0ZGOztBWTVrRkE7RUFDRTtBWitrRkY7O0FZNWtGQTtFSjVJRTtFQUNBO0VJNklBO0VBQ0E7RUFDQSxjRTdLSztBZDZ2RlA7QVk5a0ZFO0VBQ0UsY0VoTEc7RUZpTEg7QVpnbEZKO0FZN2tGRTtFQUNFO0FaK2tGSjtBT3Y2RUk7RUtyS0U7QVora0ZOO0FZM2tGRTtFQUNFO0FaNmtGSjs7QVl4a0ZFO0VBQ0U7QVoya0ZKO0FPajdFSTtFS3ZKRTtBWjJrRk47O0FZdGtGQTtFSjlLRTtFQUNBO0VEZUE7RUFDQSw0Qk83Qkk7RVA4QkosK0JPOUJJO0VQK0JKO0VBQ0EseUJPN0NRO0VQOENSO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSxrQk90Q0k7RVB1Q0o7RUFHRTtBUHd1Rko7QU9ydUZFO0VBL0JBO0VBQ0E7RUFDQTtFQWdDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSx5Qk9uRU07RVBvRU47RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBUHd1Rko7QU9ydUZFO0VBQ0U7RUFDQSx5Qk92RUU7RVB3RUY7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QVB1dUZKO0FPcHVGRTtFQUNFO0VBQ0E7QVBzdUZKO0FPcHVGSTtFQUNFO0FQc3VGTjtBT3B1Rkk7RUFDRTtBUHN1Rk47QU9sdUZFO0VBQ0Usc0JPM0dHO0FkKzBGUDtBWWpvRkU7RUpqTEE7RUFDQTtFRGVBO0VBQ0EsNEJPN0JJO0VQOEJKLCtCTzlCSTtFUCtCSjtFQUNBLHlCTzdDUTtFUDhDUjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0Esa0JPdENJO0VQdUNKO0VBR0U7RUF1RkY7RUFDQSxjT25KSztFUG9KTDtBUCtzRkY7QU9yeUZFO0VBL0JBO0VBQ0E7RUFDQTtFQWdDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSx5Qk9uRU07RVBvRU47RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBUHd5Rko7QU9yeUZFO0VBQ0U7RUFDQSx5Qk92RUU7RVB3RUY7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QVB1eUZKO0FPcHlGRTtFQUNFO0VBQ0E7QVBzeUZKO0FPcHlGSTtFQUNFO0FQc3lGTjtBT3B5Rkk7RUFDRTtBUHN5Rk47QU9seUZFO0VBQ0Usc0JPM0dHO0FkKzRGUDtBT3p2RkU7RUFDRSx5Qk92Skc7QWRrNUZQO0FPeHZGRTtFQUNFO0VBQ0EscUJPNUpHO0VQNkpIO0FQMHZGSjtBT3Z2RkU7RUFDRSxjT2pLRztBZDA1RlA7QVl4c0ZFO0VMckVBO0FQZ3hGRjtBWXZzRkU7RUFDRTtBWnlzRko7QVl0c0ZFO0VBQ0U7QVp3c0ZKO0FhaDJFSTtFRHpXRjtJQUlJO0VaeXNGSjtBQUNGO0FZdHNGRTtFQUNFLHlCRW5PRztBZDI2RlA7QVl0c0ZJO0VBQ0UseUJFdE9DO0FkODZGUDtBWXJzRkk7RUFDRSx5QkUvTkE7QWRzNkZOO0FZbnNGRTtFQUNFLHlCRTNPTTtFRjRPTixXRS9PQztFRmdQRDtBWnFzRko7QVluc0ZJO0VBQ0UseUJFaFBJO0VGaVBKLGtCRXBQRDtFRnFQQztBWnFzRk47QVlsc0ZJO0VBQ0UseUJFdFBJO0VGdVBKLGtCRTFQRDtBZDg3Rkw7QVlqc0ZJO0VBQ0Usc0JFOVBEO0VGK1BDLGNFNVBJO0VGNlBKO0FabXNGTjtBWWpzRk07RUFDRSxzQkVuUUg7RUZvUUcscUJFalFFO0FkbzhGVjtBWWhzRk07RUFDRSxzQkV4UUg7RUZ5UUcscUJFdFFFO0VGdVFGO0Faa3NGUjs7QVk1ckZBO0VKcFBFO0VBQ0E7RUQrTEE7RUFDQTtFQUNBLHlCTy9OSztFUGdPTDtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FQc3ZGRjtBT3B2RkU7RUFHRSx5Qk90T0c7RVB1T0g7RUFDQTtBUG92Rko7QU9qdkZFO0VBQ0Usc0JPL09HO0FkaytGUDs7QVk3c0ZBO0VBQ0U7RUFDQTtBWmd0RkY7QVk5c0ZFO0VBQ0U7RUFDQTtFQUNBO0FaZ3RGSjtBWTdzRkU7RUFDRTtBWitzRko7QVk1c0ZFO0VBQ0UsY0VoU007RUZpU047QVo4c0ZKO0FZNXNGSTtFQUNFLGFFcFNJO0Fkay9GVjtBWXpzRkk7RUFDRSxXRTlSQztFRitSRCxZRS9SQztFRmdTRDtBWjJzRk47QWF4N0VJO0VEdFJBO0lBTUk7SUFDQTtFWjRzRk47QUFDRjtBWXpzRkk7RUFDRSxhRXpUQztFRjBURDtBWjJzRk47O0FZdHNGQTtFQUNFO0FaeXNGRjs7QVl0c0ZBOztFQUVFO0FaeXNGRjs7QVl0c0ZBO0VBQ0U7QVp5c0ZGOztBWXRzRkE7RUFDRTtBWnlzRkY7O0FZdHNGQTtFQUNFO0VBQ0E7QVp5c0ZGOztBWXJzRkE7O0VBRUU7RUFDQTtFQUNBO0VBQ0E7QVp3c0ZGO0FZdHNGRTs7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FaeXNGSjs7QVlwc0ZBO0VBQ0U7RUFDQTtBWnVzRkY7O0FZbnNGQTtFTDNXRTtFQUNBO0VBQ0E7RUsyV0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBWndzRkY7QU9yakdFO0VBQ0U7RUFDQTtFQUNBO0FQdWpHSjtBYTcvRUk7RUR0Tko7SUFTSTtJQUNBO0VaOHNGRjtBQUNGO0FhbmdGSTtFRHROSjtJQWNJO0lBQ0E7RVorc0ZGO0FBQ0Y7QVk3c0ZFO0VBQ0U7QVorc0ZKO0FhNWdGSTtFRHBNRjtJQUlJO0VaZ3RGSjtBQUNGO0FhamhGSTtFRHBNRjtJQVFJO0VaaXRGSjtBQUNGO0FZN3NGSTtFQUNFO0FaK3NGTjtBWTFzRkk7RUFDRTtBWjRzRk47QWE1aEZJO0VEakxBO0lBSUk7RVo2c0ZOO0FBQ0Y7QVl4c0ZJO0VBQ0U7QVowc0ZOO0FhcGlGSTtFRHZLQTtJQUlJO0VaMnNGTjtBQUNGO0FhemlGSTtFRHZLQTtJQVFJO0VaNHNGTjtBQUNGO0FZeHNGSTtFQUNFO0FaMHNGTjtBYWpqRkk7RUQxSkE7SUFJSTtFWjJzRk47QUFDRjtBYXRqRkk7RUQxSkE7SUFRSTtFWjRzRk47QUFDRjtBWXhzRkk7RUFDRTtBWjBzRk47QWE5akZJO0VEN0lBO0lBSUk7RVoyc0ZOO0FBQ0Y7QWFua0ZJO0VEN0lBO0lBUUk7RVo0c0ZOO0FBQ0Y7QVl4c0ZJO0VBQ0U7QVowc0ZOO0FhM2tGSTtFRGhJQTtJQUlJO0VaMnNGTjtBQUNGO0FhaGxGSTtFRGhJQTtJQVFJO0VaNHNGTjtBQUNGOztBZTNwR0E7RVJLRTtFQUNBO0VBQ0E7RVFMQTtFQUNBO0VBQ0E7RUFDQTtBZmdxR0Y7QU81cEdFO0VBQ0U7RUFDQTtFQUNBO0FQOHBHSjtBYXBtRkk7RUV0a0JKO0lBUUk7RWZzcUdGO0FBQ0Y7QWVwcUdFO0VBQ0U7RUFDQTtBZnNxR0o7QWE3bUZJO0VFM2pCRjtJQUtJO0VmdXFHSjtBQUNGO0FlcnFHSTtFQUNFO0VBQ0E7RUFDQSx5QkRuQkM7RUNvQkQ7QWZ1cUdOO0FlcnFHTTtFQUNFLHlCRG5CRTtFQ29CRjtBZnVxR1I7QWVucUdJO0VBQ0UseUJEekJJO0VDMEJKO0FmcXFHTjtBZWxxR0k7RUFDRTtBZm9xR047O0FlOXBHQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0EseUJEekNRO0VDMENSO0VBQ0E7QWZpcUdGO0FlL3BHRTtFQUNFO0FmaXFHSjtBZTlwR0U7RVJuREE7RUFDQTtFQUNBO0VRbURFO0VBQ0E7RUFDQTtBZmtxR0o7QU9ydEdFO0VBQ0U7RUFDQTtFQUNBO0FQdXRHSjtBZXJxR0k7RUFDRSxrQkQ1Q0M7RUM2Q0Q7QWZ1cUdOO0FlcnFHTTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtBZnNxR1I7QWVwcUdRO0VBRUU7RUFDQTtFQUNBO0VBQ0E7QWZxcUdWOztBZ0JydkdBOzs7Ozs7Ozs7RVIwQkU7RUFDQTtFQUNBO0VRbEJBLGNGUEs7RUVRTDtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSxtQkZHSTtFRUZKO0VBQ0Esc0JGZkc7RUVnQkg7S0FBQTtVQUFBO0VBQ0E7RUFDQTtBaEIwdkdGO0FnQnh2R0U7Ozs7Ozs7Ozs7Ozs7Ozs7O0VBRUUseUJGdkJHO0VFd0JILFdGdkJDO0FkZ3lHTDtBZ0J2d0dJO0VBQ0UsV0YxQkQ7QWRtekdMO0FnQjF4R0k7RUFDRSxXRjFCRDtBZG16R0w7QWdCMXhHSTs7Ozs7Ozs7Ozs7Ozs7Ozs7RUFDRSxXRjFCRDtBZG16R0w7QWdCcnhHRTtFQUNFLGNGaENHO0FkK3pHUDtBZ0JoeUdFO0VBQ0UsY0ZoQ0c7QWQrekdQO0FnQmh5R0U7Ozs7Ozs7OztFQUNFLGNGaENHO0FkK3pHUDtBZ0I1eEdFOzs7Ozs7Ozs7RUFDRTtBaEJzeUdKOztBZ0JseUdBOzs7RUFHRTtBaEJxeUdGOztBZ0JseUdBOztFQUVFO0FoQnF5R0Y7O0FnQmx5R0E7RVJ0QkU7RUFDQTtFRCtMQTtFQUNBO0VBQ0EseUJPL05LO0VQZ09MO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QVA4bkdGO0FPNW5HRTtFQUdFLHlCT3RPRztFUHVPSDtFQUNBO0FQNG5HSjtBT3puR0U7RUFDRSxzQk8vT0c7QWQwMkdQOztBZ0JuekdBO0VBQ0U7QWhCc3pHRjs7QWdCbnpHQTtFQUNFO0FoQnN6R0Y7O0FnQm56R0E7RUFDRTtFQUVBO0VBQ0E7RUFDQTtBaEJxekdGO0FnQm56R0U7RUFDRTtBaEJxekdKO0FnQmx6R0U7RUFFRTtFQUVBO0FoQmt6R0o7O0FnQjd5R0E7O0VBRUU7RUFDQTtBaEJnekdGOztBZ0I5eUdBOztFQUVFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWhCaXpHRjs7QWdCL3lHQTs7RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWhCa3pHRjs7QWdCaHpHQTs7RUFFRTtFQUNBLGNGL0dLO0VFZ0hMO0VBQ0E7RUFDQTtFQUNBO0FoQm16R0Y7O0FnQmp6R0E7RUFDRTtFQUNBO0FoQm96R0Y7O0FnQmx6R0E7RUFDRTtFQUNBO0FoQnF6R0Y7O0FnQmp6R0E7O0VBRUU7RUFDQTtBaEJvekdGOztBZ0JsekdBOztFQUVFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSxjRjNJSztBZGc4R1A7O0FnQm56R0E7O0VBRUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FoQnN6R0Y7O0FnQnB6R0E7O0VBRUU7RUFDQTtFQUNBO0VBQ0EsbUJGOUpLO0VFK0pMO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWhCdXpHRjs7QWdCcnpHQTtFQUNFO0VBQ0E7QWhCd3pHRjs7QWdCdHpHQTtFQUNFO0VBQ0E7QWhCeXpHRjs7QWdCdHpHQTtFQUNFO0VBQ0E7RUFDQTtBaEJ5ekdGOztBaUI1K0dBO0VBQ0U7RUFDQTtFQUNBO0VBRUE7RUE4S0E7O0lBQUE7QWpCbTBHRjtBYWo3Rkk7RUlya0JKO0lBUUksYUFWTTtJQVdOO0VqQmsvR0Y7QUFDRjtBaUJoL0dFO0VBQ0U7RUFDQTtFQUNBO0VBQ0EsaUJIV1M7RUdWVDtFQUNBO0VBQ0E7QWpCay9HSjtBYWg4Rkk7RUl6akJGO0lBVUk7SUFDQTtFakJtL0dKO0FBQ0Y7QWlCaC9HRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FqQmsvR0o7QWE1OEZJO0VJMWlCRjtJQU9JO0VqQm0vR0o7QUFDRjtBYWo5Rkk7RUkvaEJGO0lBRUk7SUFDQTtFakJrL0dKO0FBQ0Y7QWlCLytHRTtFVlpBO0VBQ0E7RUFDQTtFVVlFLFlBakRNO0VBa0ROLGFBbERNO0VBbUROLGtCSC9CRztFR2dDSDtFQUNBO0VBQ0E7QWpCbS9HSjtBYWwrRkk7RUl4aEJGO0lBVUk7SUFDQTtJQUNBO0VqQm8vR0o7QUFDRjtBaUJsL0dJO0VBQ0U7RUFDQTtFQUNBO0FqQm8vR047QWlCai9HSTtFQUNFO0FqQm0vR047QWlCLytHRTtFQUNFO0FqQmkvR0o7QWFwL0ZJO0VJOWZGO0lBSUk7SUFDQTtJVG5ESjtJQUNBO0lBQ0E7SVNtREk7RWpCby9HSjtBQUNGO0FpQmwvR0k7O0VBRUUsYUhqRkM7QWRxa0hQO0FpQmovR0k7RUFDRTtBakJtL0dOO0FpQi8rR0U7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EseUJIbEdHO0VHbUdIO0FqQmkvR0o7QWFqaEdJO0VJMWVGO0lBYUk7SUFDQTtJQUNBO0lBQ0E7RWpCay9HSjtBQUNGO0FpQmgvR0k7RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBakJpL0dOO0FhbGlHSTtFSXZkQTtJQVdJO0VqQmsvR047QUFDRjtBaUIvK0dJO0VBQ0U7RUFDQTtFQUNBO0FqQmkvR047QWlCOStHSTtFQUNFO0VBQ0E7RUFDQTtBakJnL0dOO0FpQjcrR0k7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWpCKytHTjtBYXpqR0k7RUk1YkE7SUFTSTtFakJnL0dOO0FBQ0Y7QWlCNytHSTtFQUNFO0VBQ0E7RUFDQTtBakIrK0dOO0FhbmtHSTtFSS9hQTtJQU1JO0VqQmcvR047QUFDRjtBaUI5K0dNO0VUdElKO0VBQ0E7RUFDQTtFU3NJTTtFQUNBO0FqQmsvR1I7QWlCaC9HUTtFQUNFLFVIbEtMO0Fkb3BITDtBaUIvK0dRO0VBQ0UsY0huS0E7QWRvcEhWO0FpQi8rR1U7RUFDRSxhSHRLRjtBZHVwSFY7QWF4bEdJO0VJL1lGO0lBRUk7RWpCeStHSjtBQUNGO0FhN2xHSTtFSXhZQTtJQUVJO0VqQnUrR047QUFDRjtBYWxtR0k7RUlsWUE7SUFFSTtJQUNBO0lBQ0E7SUFDQTtJQUNBLGdCSHRNSDtJR3VNRztJQUNBO0lBQ0E7SUFDQTtJQUNBO0VqQnMrR047QUFDRjs7QWFobkdJO0VJalhKO0lBRUk7RWpCbytHRjtBQUNGOztBaUIvOUdFO0VBQ0U7QWpCaytHSjs7QWtCN3JIQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FsQmdzSEY7QWtCL3JIRTtFQUNFO0FsQmlzSEo7QWFwb0dJO0VLbmtCSjtJQVNJO0lBQ0E7RWxCa3NIRjtBQUNGO0FrQmhzSEk7RUFDRTtFQUNBO0FsQmtzSE47QWE5b0dJO0VLdGpCQTtJQUlJO0lBQ0E7RWxCb3NITjtBQUNGO0FhcHBHSTtFS3RqQkE7SUFRSTtFbEJzc0hOO0FBQ0Y7QWtCbHNISTtFQUNFO0VBQ0E7QWxCb3NITjtBYTdwR0k7RUt6aUJBO0lBSUk7RWxCc3NITjtBQUNGO0FhbHFHSTtFS3ppQkE7SUFPSTtFbEJ3c0hOO0FBQ0Y7QWtCcnNIRTtFQUNFO0VBQ0E7RUFDQTtBbEJ1c0hKOztBa0Jsc0hBO0VBQ0U7RUFDQTtBbEJxc0hGO0FrQnBzSEU7RUFDRTtBbEJzc0hKO0FrQnBzSEU7RUFDRTtBbEJzc0hKO0FrQnJzSEk7RUFDRTtBbEJ1c0hOOztBbUJqd0hBO0VBQ0UseUJMR0s7RUtGTDtFQUNBO0FuQm93SEY7QWFoc0dJO0VNdmtCSjtJQU1JO0VuQnF3SEY7QUFDRjtBbUJud0hFO0VBQ0UseUJMTkc7QWQyd0hQO0FtQm53SEk7RUFDRSx5QkxUQztBZDh3SFA7QW1CbHdISTtFQUNFLHlCTEZBO0Fkc3dITjtBbUJod0hFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QW5Ca3dISjtBYXB0R0k7RU1sakJGO0lBT0k7SUFDQTtFbkJtd0hKO0FBQ0Y7QW1CandISTtFQUNFO0FuQm13SE47QWE3dEdJO0VNdmlCQTtJQUlJO0VuQm93SE47QUFDRjtBbUJqd0hJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbkJtd0hOO0FtQi92SE07RUFDRSxtQkw3QkY7RUs4QkU7RUFDQTtBbkJpd0hSO0FhOXVHSTtFTXRoQkU7SUFNSTtFbkJrd0hSO0FBQ0Y7QW1COXZISTtFQUNFO0FuQmd3SE47QWF0dkdJO0VNM2dCQTtJQUlJO0lBQ0E7SUFDQTtJQUNBLGdCTC9DRDtFZGd6SEw7QUFDRjtBYTl2R0k7RU0zZ0JBO0lBV0k7RW5Ca3dITjtBQUNGO0FtQmh3SE07RUFDRTtBbkJrd0hSO0FtQmh3SFE7RUFDRSxtQkx6REo7QWQyekhOO0FtQjV2SE07RUFDRTtFQUNBLGtCTGpFRjtBZCt6SE47QWE3d0dJO0VNbmZFO0lBS0k7RW5CK3ZIUjtBQUNGO0FhbHhHSTtFTW5mRTtJQVNJO0lBQ0E7RW5CZ3dIUjtBQUNGO0FtQjl2SFE7RUFDRTtBbkJnd0hWO0FhM3hHSTtFTXRlSTtJQUlJO0VuQml3SFY7QUFDRjtBbUI5dkhRO0VBQ0U7QW5CZ3dIVjtBbUIxdkhFO0VBQ0U7RUFDQSxXTDdHQztFSzhHRDtPQUFBO0VBQ0E7RUFDQTtBbkI0dkhKO0FhMXlHSTtFTXZkRjtJQVFJO0lBQ0EsY0xySEM7SUtzSEQ7SUFDQTtJQUNBLG1CTHZHQTtJS3dHQTtFbkI2dkhKO0FBQ0Y7QWFwekdJO0VNdmRGO0lBaUJJLG1CTDdHQztFZDIySEw7QUFDRjtBYXp6R0k7RU12ZEY7SUFxQkk7RW5CK3ZISjtBQUNGO0FtQjd2SEk7RVhsR0Y7RUFDQTtFV21HSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FuQmd3SE47QWF2MEdJO0VNL2JBO0lBU0k7RW5CaXdITjtBQUNGO0FhNTBHSTtFTS9iQTtJQWFJO0lBQ0E7RW5Ca3dITjtBQUNGO0FtQi92SEk7RUFDRSxnQkx2SUM7RUt3SUQ7QW5CaXdITjtBYXQxR0k7RU03YUE7SUFLSSxnQkwxSUY7RWQ0NEhKO0FBQ0Y7QWEzMUdJO0VNN2FBO0lBU0k7RW5CbXdITjtBQUNGO0FtQi92SEU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBLGFMekpHO0VLMEpIO0VBQ0E7RUFDQTtBbkJpd0hKO0FhMTJHSTtFTS9aRjtJQVdJO0lBQ0E7SUFDQTtFbkJrd0hKO0FBQ0Y7QW1CaHdISTtFQUNFO0VBQ0E7QW5Ca3dITjtBYXIzR0k7RU0vWUE7SUFLSTtFbkJtd0hOO0FBQ0Y7QWExM0dJO0VNL1lBO0lBU0ksbUJMN0tEO0VkaTdITDtBQUNGO0FtQmx3SE07RUFDRTtFQUNBO0VBQ0E7RUFDQTtBbkJvd0hSO0FhcjRHSTtFTW5ZRTtJQU9JO0VuQnF3SFI7QUFDRjtBbUJsd0hNO0VBQ0U7QW5Cb3dIUjtBbUIvdkhFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QW5CaXdISjtBYW41R0k7RU1sWEY7SUFPSTtFbkJrd0hKO0FBQ0Y7QWF4NUdJO0VNbFhGO0lBV0ksbUJMM01BO0VkODhISjtBQUNGO0FtQmp3SEk7RUFDRTtBbkJtd0hOO0FtQi92SEU7RUFDRTtBbkJpd0hKO0FtQjl2SEU7RVp0T0E7RUFDQTtFQUNBO0VZc09FO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbkJrd0hKO0FPMytIRTtFQUNFO0VBQ0E7RUFDQTtBUDYrSEo7QWFuN0dJO0VNM1ZGO0lBVUk7RW5Cd3dISjtBQUNGO0FheDdHSTtFTTNWRjtJQWNJO0VuQnl3SEo7QUFDRjtBYTc3R0k7RU16VUU7SVg3Tko7SUFDQTtJVytOUTtJQUNBO0VuQnl3SFI7QUFDRjtBYXI4R0k7RU1oVUk7SUFFSTtFbkJ1d0hWO0FBQ0Y7QW1CbHdISTtFQUNFO0FuQm93SE47O0FvQm5oSUE7RUFzTkU7O0lBQUE7QXBCbTBIRjtBYW45R0k7RU90a0JKO0lBRUk7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RXBCMmhJRjtBQUNGO0FhaitHSTtFT3RrQko7SUFlSTtJQUNBO0VwQjRoSUY7QUFDRjtBb0IxaElFO0VBQ0U7QXBCNGhJSjtBb0J6aElFO0VibEJBO0VBQ0E7RUFDQTtFYWtCRTtFQUNBO0VBQ0E7RUFDQTtBcEI2aElKO0FPaGpJRTtFQUNFO0VBQ0E7RUFDQTtBUGtqSUo7QWF4L0dJO0VPL2lCRjtJQVFJO0lBQ0E7RXBCbWlJSjtBQUNGO0FvQmppSUk7RUFDRTtBcEJtaUlOO0FhamdISTtFT25pQkE7SUFJSSxrQk5wQkQ7RWR3aklMO0FBQ0Y7QW9CaGlJTTtFQUNFO0FwQmtpSVI7QW9CN2hJRTtFQUNFLGNOaERHO0VNaURIO0FwQitoSUo7QW9CN2hJSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBcEIraElOO0FvQjVoSUk7RUFFRTtBcEI2aElOO0FvQjNoSU07RUFDRTtBcEI2aElSO0FvQnhoSUU7RUFDRTtFQUNBO0VBQ0E7RVpsREY7RUFDQTtFQUNBO0VZa0RFO0FwQjRoSUo7QWFwaUhJO0VPN2ZGO0lBUUk7RXBCNmhJSjtBQUNGO0FvQjNoSUk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsY043RkM7RU04RkQ7RUFDQTtFQUNBO0FwQjZoSU47QW9CM2hJTTtFQUVFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBcEI0aElSO0FheGtISTtFTy9jRjtJQUVJO0VwQnloSUo7QUFDRjtBYTdrSEk7RU8vY0Y7SUFNSTtFcEIwaElKO0FBQ0Y7QW9CeGhJSTtFUmpERjtFQUNBO0VBQ0E7RVFpREk7QXBCNGhJTjtBYXhsSEk7RU90Y0E7SVI3REY7SUFDQTtJQUNBO0VaK2xJQTtBQUNGO0FhL2xISTtFT3RjQTtJUnhEQTtJQUNBO0lBQ0E7RVppbUlGO0FBQ0Y7QWF0bUhJO0VPdGNBO0lSM0NGO0lBQ0E7SUFDQTtFWjJsSUE7QUFDRjtBYTdtSEk7RU94YkU7SUFFSTtFcEJ1aUlSO0FBQ0Y7QWFsbkhJO0VPeGJFO0lBTUk7RXBCd2lJUjtBQUNGO0FvQnRpSVE7RUFDRTtBcEJ3aUlWO0FvQnJpSVE7RUFDRTtBcEJ1aUlWO0FvQmhpSUk7RUFDRTtBcEJraUlOO0FvQjloSUU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBcEJnaUlKO0FhdG9ISTtFTzlaRjtJQU9JO0lBQ0E7SUFDQTtFcEJpaUlKO0FBQ0Y7QWE3b0hJO0VPOVpGO0lBYUk7RXBCa2lJSjtBQUNGO0FvQmhpSUk7RVJuR0Y7RUFDQTtFQUNBO0Fac29JRjtBYXZwSEk7RU85WUE7SVJ6R0Y7SUFDQTtJQUNBO0Vaa3BJQTtBQUNGO0FhOXBISTtFT3JZRTtJQUVJO0VwQnFpSVI7QUFDRjtBYW5xSEk7RU9yWUU7SUFNSTtFcEJzaUlSO0FBQ0Y7QW9CamlJRTtFQUNFO0VBQ0E7QXBCbWlJSjtBYTVxSEk7RU96WEY7SUFLSTtFcEJvaUlKO0FBQ0Y7QW9COWhJRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FwQmdpSUo7QW9COWhJSTtFQUNFO0FwQmdpSU47QW9CN2hJSTtFQUNFO0FwQitoSU47QW9CNWhJSTtFQUNFO0VBQ0E7QXBCOGhJTjtBb0IzaElJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FwQjZoSU47QWF6c0hJO0VPMVZBO0lBU0k7SUFDQTtJQUNBO0VwQjhoSU47QUFDRjtBb0IzaElJOztFQUVFO0VBQ0EsYU4zUEM7QWR3eElQO0FvQnZoSU07Ozs7RUFFRTtBcEIyaElSO0FhM3RISTtFTzFUQTtJQUVJO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RXBCdWhJTjtBQUNGO0FhcHVISTtFTzlTQTtJQUVJO0lBQ0E7SUFDQTtFcEJvaElOO0FBQ0Y7QW9COWdJSTtFQUNFO0FwQmdoSU47QWE5dUhJO0VPblNBO0lBSUk7RXBCaWhJTjtBQUNGO0FhbnZISTtFT25TQTtJQVFJO0VwQmtoSU47QUFDRjtBYXh2SEk7RU9uU0E7SUFZSTtFcEJtaElOO0FBQ0Y7QW9CamhJTTtFQUNFO0FwQm1oSVI7QW9CamhJUTtFQUNFO0FwQm1oSVY7QW9CaGhJUTtFQUNFO0FwQmtoSVY7O0FxQjcwSUE7O0VBQUE7QUFJQTtFQTZCRTs7SUFBQTtBckJxeklGO0FxQmoxSUU7RUFDRTtFQUNBO0VBQ0E7QXJCbTFJSjtBcUJqMUlJO0VBQ0U7QXJCbTFJTjtBcUIvMElFO0VBQ0U7QXJCaTFJSjtBcUIvMElJO0VBQ0U7QXJCaTFJTjtBcUI1MElJO0VBQ0U7QXJCODBJTjtBYWh5SEk7RVEvaUJBO0lBSUksZ0JQUkQ7RWR1MUlMO0FBQ0Y7QXFCdjBJSTtFQUNFO0FyQnkwSU47QXFCcjBJRTtFQUNFO0VBQ0E7QXJCdTBJSjtBcUJwMElFO0VBQ0U7QXJCczBJSjtBcUJuMElFO0VBQ0U7QXJCcTBJSjs7QXNCeDNJQTtFQUNFO0lBQ0U7RXRCMjNJRjtFc0J6M0lBO0lBQ0U7RXRCMjNJRjtBQUNGOztBc0JqNElBO0VBQ0U7SUFDRTtFdEIyM0lGO0VzQnozSUE7SUFDRTtFdEIyM0lGO0FBQ0Y7QXNCeDNJQTtFQUNFO0lBQ0U7RXRCMDNJRjtFc0J4M0lBO0lBQ0U7RXRCMDNJRjtBQUNGO0FzQmg0SUE7RUFDRTtJQUNFO0V0QjAzSUY7RXNCeDNJQTtJQUNFO0V0QjAzSUY7QUFDRjtBc0J2M0lBO0VBQ0U7SUFDRTtJQUNBO0V0QnkzSUY7RXNCdDNJQTtJQUNFO0lBQ0E7RXRCdzNJRjtBQUNGO0FzQmo0SUE7RUFDRTtJQUNFO0lBQ0E7RXRCeTNJRjtFc0J0M0lBO0lBQ0U7SUFDQTtFdEJ3M0lGO0FBQ0Y7QXNCcjNJQTtFQUNFO0lBQ0U7SUFDQTtFdEJ1M0lGO0VzQnAzSUE7SUFDRTtJQUNBO0V0QnMzSUY7QUFDRjtBc0IvM0lBO0VBQ0U7SUFDRTtJQUNBO0V0QnUzSUY7RXNCcDNJQTtJQUNFO0lBQ0E7RXRCczNJRjtBQUNGO0FzQmwzSUE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F0Qm8zSUY7QXNCbDNJRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBdEJvM0lKO0FzQmwzSUk7RUFDRTtBdEJvM0lOO0FhNTJISTtFU25nQkE7SUFDRTtJQUNBO0lBQ0E7RXRCazNJSjtBQUNGO0FzQi8ySUU7RUFFRTtFQUNBLFNSMURHO0VRMkRIO0F0QmczSUo7QWF4M0hJO0VTNWZGO0lBT0k7RXRCaTNJSjtBQUNGO0FhNzNISTtFUzVmRjtJQVdJO0V0QmszSUo7QUFDRjtBc0IvMklFO0VBQ0U7QXRCaTNJSjtBYXI0SEk7RVM3ZUY7SUFJSTtFdEJrM0lKO0FBQ0Y7QXNCaDNJSTtFQUNFO0VBQ0E7QXRCazNJTjtBYTk0SEk7RVN0ZUE7SUFLSTtFdEJtM0lOO0FBQ0Y7QWFuNUhJO0VTN2VGO0lBaUJJO0V0Qm0zSUo7QUFDRjtBc0JqM0lJO0VBQ0U7QXRCbTNJTjtBc0IvMklFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBdEJpM0lKO0FhbDZISTtFU3BkRjtJQVFJO0V0QmszSUo7QUFDRjtBYXY2SEk7RVNwZEY7SUFZSSxXUjFHQTtJUTJHQSxZUjVHQztJUTZHRCxXUjdHQztFZGcrSUw7QUFDRjtBYTk2SEk7RVNwZEY7SUFrQkk7RXRCbzNJSjtBQUNGO0FzQmwzSUk7RUFDRTtBdEJvM0lOO0FzQmozSUk7RUFDRTtFQUNBO0VBQ0E7S0FBQTtBdEJtM0lOO0FzQmgzSUk7RUFDRSxhUjNJSTtFUTRJSjtFQUNBO0F0QmszSU47QXNCLzJJSTtFQUNFO0F0QmkzSU47QXNCLzJJTTtFQUNFLGFSM0lGO0FkNC9JTjs7QXVCN2dKQTtFQUNFO0VBQ0E7QXZCZ2hKRjs7QXVCN2dKQTtFQUNFLG1CVGNLO0Fka2dKUDtBdUI5Z0pFO0VBQ0U7QXZCZ2hKSjs7QXVCNWdKQTtFQUNFO0F2QitnSkY7QXVCN2dKRTtFaEJWQTtFQUNBO0VBQ0E7QVAwaEpGO0FPeGhKRTtFQUNFO0VBQ0E7RUFDQTtBUDBoSko7QXVCcGhKSTtFQUNFO0VBQ0EsbUJUREM7QWR1aEpQOztBdUJoaEpFO0VBQ0U7QXZCbWhKSjtBYXgrSEk7RVU1aUJGO0lBSUk7SUFDQTtJQUNBO0V2Qm9oSko7QUFDRjtBdUJsaEpJO0VBQ0U7QXZCb2hKTjtBYWwvSEk7RVVuaUJBO0lYZ0NGO0lBQ0E7SUFDQTtFWnkvSUE7QUFDRjtBYXovSEk7RVVuaUJBO0lYcUNBO0lBQ0E7SUFDQTtFWjIvSUY7QUFDRjtBYWhnSUk7RVVuaUJBO0lBUUk7SUFDQTtTQUFBO0V2QitoSk47QUFDRjtBYXRnSUk7RVVyaEJGO0lBRUk7RXZCNmhKSjtBQUNGO0FhM2dJSTtFVS9nQkY7SUFFSTtFdkI0aEpKO0FBQ0Y7QWFoaElJO0VVL2dCRjtJQU1JO0V2QjZoSko7QUFDRjtBdUIxaEpFO0VoQmdNQTtFZ0I5TEUsbUJUL0NFO0VTZ0RGLGFUakRHO0VTa0RIO0VBQ0E7RUFDQTtFQUNBO0F2QjRoSko7QWE5aElJO0VVcmdCRjtJQVVJLGdCVHhEQztFZHFsSkw7QUFDRjtBYW5pSUk7RVVyZ0JGO0lBY0k7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFdkI4aEpKO0FBQ0Y7QXVCNWhKSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXZCOGhKTjtBdUIzaEpJO0VBQ0U7RUFDQTtBdkI2aEpOO0FhdmpJSTtFVXhlQTtJQUtJO0V2QjhoSk47QUFDRjtBdUI1aEpNO0VBQ0U7RUFDQSx5QlRyR0Q7RVNzR0M7RUFDQTtFQUNBLG1CVHhGRDtFU3lGQztBdkI4aEpSO0F1QjVoSlE7RUFDRSxXVDNHTDtBZHlvSkw7QXVCL2hKUTtFQUNFLFdUM0dMO0FkeW9KTDtBdUIvaEpRO0VBQ0UsV1QzR0w7QWR5b0pMO0F1QjNoSlE7RUFDRTtFQUNBLGNUakhIO0FkOG9KUDtBdUIzaEpVO0VBQ0UsY1RwSEw7QWRpcEpQO0F1QjloSlU7RUFDRSxjVHBITDtBZGlwSlA7QXVCOWhKVTtFQUNFLGNUcEhMO0FkaXBKUDtBdUJ2aEpJO0VBQ0U7RUFDQTtBdkJ5aEpOO0F1QjNoSkk7RUFDRTtFQUNBO0F2QnloSk47QXVCM2hKSTtFQUNFO0VBQ0E7QXZCeWhKTjtBdUJ0aEpJO0VBQ0U7QXZCd2hKTjtBdUJwaEpFO0VBQ0U7RUFDQTtBdkJzaEpKO0FhemxJSTtFVS9iRjtJQUtJO0lBQ0E7SUFDQTtFdkJ1aEpKO0FBQ0Y7QXVCcGhKRTtFQUNFO0VBQ0E7QXZCc2hKSjs7QXVCamhKQTtFQUNFO0F2Qm9oSkY7QXVCbGhKRTtFQUNFO1VBQUE7QXZCb2hKSjtBdUJsaEpJO0VBQ0U7VUFBQTtBdkJvaEpOOztBdUI5Z0pFO0VBQ0U7VUFBQTtBdkJpaEpKO0F1Qi9nSkk7RUFDRTtVQUFBO0F2QmloSk47O0F3QjVySkE7RUFDRTtBeEIrckpGO0Fhem5JSTtFV3ZrQko7SUFJSTtFeEJnc0pGO0FBQ0Y7QWE5bklJO0VXdmtCSjtJQVFJO0V4QmlzSkY7QUFDRjtBd0IvckpFO0VBQ0U7RUFDQTtBeEJpc0pKO0F3QjlySkU7RUFDRTtBeEJnc0pKO0F3QjdySkU7RUFDRTtBeEIrckpKO0F3QjNySkk7RUFDRTtBeEI2ckpOO0F3QnhySkk7RWhCT0Y7RUFDQTtFZ0JOSTtFQUNBO0VBQ0E7QXhCMnJKTjtBYXZwSUk7RVd4aUJBO0lBT0k7SUFDQTtFeEI0ckpOO0FBQ0Y7QXdCenJKSTtFQUNFO0VBQ0E7QXhCMnJKTjtBd0J4ckpJO0VBQ0U7QXhCMHJKTjtBd0J2ckpJO0VoQnpCRjtFQUNBO0VBQ0E7RWdCeUJJO0F4QjJySk47QXdCenJKTTtFaEJ2Qko7RUFDQTtBUm10SkY7QXdCL3FKSTtFQUNFO0VBQ0E7QXhCaXJKTjtBd0IvcUpNO0VBQ0U7RUFDQTtFQUNBO0F4QmlySlI7QXdCL3FKUTtFQUNFO0F4QmlySlY7QXdCbHNKUTtFQUNFLGFWeERBO0VVeURBLGVWekRBO0FkNnZKVjtBd0J0c0pRO0VBQ0UsYVZ4REE7RVV5REEsZVZ6REE7QWRpd0pWO0F3QjFzSlE7RUFDRSxhVnhEQTtFVXlEQSxlVnpEQTtBZHF3SlY7QXdCOXNKUTtFQUNFLGFWeERBO0VVeURBLGVWekRBO0FkeXdKVjtBd0JsdEpRO0VBQ0UsYVZ4REE7RVV5REEsZVZ6REE7QWQ2d0pWO0F3QnRySkk7RUFDRTtFQUNBO0F4QndySk47QXdCdHJKTTtFQUNFO0F4QndySlI7QXdCcnJKTTtFQUNFO0F4QnVySlI7QXdCbHJKRTtFQUNFO0VBQ0E7RUFDQTtBeEJvckpKO0FhN3RJSTtFVzFkRjtJQU1JO0V4QnFySko7QUFDRjtBd0JuckpJO0VBQ0U7QXhCcXJKTjtBd0JsckpJO0VBQ0U7RUFDQTtFQUNBO0F4Qm9ySk47QWExdUlJO0VXN2NBO0lBTUk7SUFDQTtJQUNBO0V4QnFySk47QUFDRjtBd0JsckpJO0VBQ0U7RUFDQTtBeEJvckpOO0FhcnZJSTtFV2pjQTtJQUtJO0V4QnFySk47QUFDRjtBd0JuckpNO0VBRUU7QXhCb3JKUjtBd0JockpJO0VBQ0U7RUFDQTtBeEJrckpOO0F3QjdxSkk7RUFDRTtBeEIrcUpOO0F3QjFxSkk7RUFDRTtBeEI0cUpOO0F3QnhxSkU7RUFtRkU7RUFJQTtBeEJxbEpKO0F3QjNxSkk7RUFDRTtFQUNBLG1CVnJKQztFVXNKRDtFQUNBLG1CVnRKQTtBZG0wSk47QXdCM3FKTTtFQUNFO0F4QjZxSlI7QXdCMXFKTTtFQUNFO0F4QjRxSlI7QXdCdnFKTTtFQUNFO0VBQ0E7QXhCeXFKUjtBd0J0cUpNO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtPQUFBO0VBQ0E7RUFDQTtFQUNBO0F4QndxSlI7QXdCdHFKUTtFakJuS047RUFDQTtFQUNBO0VpQm1LUTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXhCMHFKVjtBd0JycUpVO0VBQ0U7QXhCdXFKWjtBd0JucUpRO0VBQ0U7QXhCcXFKVjtBd0JqcUpNO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXhCa3FKUjtBd0JocUpRO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXhCa3FKVjtBd0IvcEpRO0VBQ0U7QXhCaXFKVjtBd0IzcEpJO0VBQ0U7QXhCNnBKTjtBd0IxcEpJO0VBQ0U7QXhCNHBKTjtBd0J4cEpFO0VBQ0U7RUFDQTtFQUNBO0F4QjBwSko7QXdCeHBKSTtFQUNFO0F4QjBwSk47QWE1MUlJO0VXcFVGO0lBVUk7RXhCMHBKSjtBQUNGO0F3QnhwSkk7RUFDRTtFQUNBO0VBQ0E7QXhCMHBKTjtBYXQySUk7RVd2VEE7SUFNSTtJQUNBLG1CVmxRRjtFZDY1Sko7QUFDRjtBd0J4cEpJO0VBQ0U7QXhCMHBKTjtBd0JycEpJO0VBQ0U7QXhCdXBKTjtBYWwzSUk7RVd0U0E7SUFJSSxnQlZqUkQ7RWR5NkpMO0FBQ0Y7QWF2M0lJO0VXdFNBO0lBUUksZ0JWcFJGO0VkNjZKSjtBQUNGO0F3QnZwSk07RUFDRTtBeEJ5cEpSO0FhLzNJSTtFVzNSRTtJQUlJO0V4QjBwSlI7QUFDRjtBYXA0SUk7RVczUkU7SUFRSTtFeEIycEpSO0FBQ0Y7QXdCcnBKSTtFQUNFO0F4QnVwSk47QXdCcnBKTTtFQUNFO0VBQ0Esa0JWNVNEO0FkbThKUDtBYWg1SUk7RVd6UUU7SUFLSTtJQUNBO0V4QndwSlI7QUFDRjtBd0JycEpNO0VBQ0U7QXhCdXBKUjtBYXo1SUk7RVcvUEU7SUFJSTtFeEJ3cEpSO0FBQ0Y7QXdCbnBKRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0F4QnFwSko7QXdCbHBKRTtFQUNFLHlCVmxWTTtFVW1WTjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F4Qm9wSko7QWEvNklJO0VXOU9GO0lBWUksYVZqVkM7RWRzK0pMO0FBQ0Y7QWFwN0lJO0VXOU9GO0lBZ0JJO0V4QnNwSko7QUFDRjtBYXo3SUk7RVc5T0Y7SUFvQkk7RXhCdXBKSjtBQUNGO0F3QnJwSkk7RUFDRTtFQUNBO09BQUE7QXhCdXBKTjtBYWw4SUk7RVd2TkE7SUFLSTtFeEJ3cEpOO0FBQ0Y7QXdCcnBKSTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0F4QnVwSk47QWE3OElJO0VXOU1BO0lBT0ksbUJWM1dGO0VkbWdLSjtBQUNGO0F3QnRwSk07RUFDRTtBeEJ3cEpSO0FhcjlJSTtFV3BNRTtJQUlJO0lBQ0E7SUFDQTtFeEJ5cEpSO0FBQ0Y7QXdCdHBKTTtFQUNFO0VBQ0E7T0FBQTtBeEJ3cEpSO0F3QmxwSkk7RUFDRTtBeEJvcEpOO0F3QmxwSk07RUFDRTtBeEJvcEpSO0F3QjlvSkk7RUFDRTtBeEJncEpOO0FheitJSTtFV3hLQTtJQUlJO0V4QmlwSk47QUFDRjtBd0I5b0pJO0VqQnJLRjtFaUJ1S0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXhCZ3BKTjtBYXgvSUk7RVdoS0E7SUFXSTtFeEJpcEpOO0FBQ0Y7QXdCL29KTTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXhCaXBKUjtBd0I5b0pNO0VBQ0UseUJWemJFO0VVMGJGO0VBQ0E7QXhCZ3BKUjtBd0Izb0pFO0VBQ0U7QXhCNm9KSjtBd0Izb0pJO0VBQ0U7QXhCNm9KTjtBd0Ixb0pJO0VBQ0UsZ0JWM2JBO0FkdWtLTjtBd0J0b0pFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QXhCd29KSjtBd0J0b0pJO0VBQ0U7RUFDQTtFQUNBO0VBQ0EsZ0JWM2NBO0FkbWxLTjtBYWppSkk7RVczR0E7SUFPSTtFeEJ5b0pOO0FBQ0Y7QXdCdm9KTTtFQUNFO0VBQ0E7RUFDQTtBeEJ5b0pSO0FhM2lKSTtFV2pHRTtJQU1JO0V4QjBvSlI7QUFDRjtBd0J2b0pNO0VBQ0U7QXhCeW9KUjtBYW5qSkk7RVd2RkU7SUFJSTtJQUNBLGdCVmhlSjtFZDBtS0o7QUFDRjtBd0J0b0pJO0VBQ0U7RUFDQSxnQlZ2ZUE7QWQrbUtOOztBd0Jsb0pJO0VBQ0U7QXhCcW9KTjtBd0Jsb0pNO0VBQ0U7RUFDQTtBeEJvb0pSO0F3QjluSk07RUFDRTtBeEJnb0pSO0F3QjNuSlE7RUFDRTtFQUNBO0F4QjZuSlY7QXdCeG5KRTtFQUNFO0VBQ0E7QXhCMG5KSjtBd0J4bkpNO0VBQ0U7RUFDQTtFQUNBO0F4QjBuSlI7QXdCdG5KTTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXhCd25KUjtBd0J2bkpRO0VBQ0U7RUFDQTtFQUNBO0F4QnluSlY7QXdCdm5KUTtFQUNFO0F4QnluSlY7QXdCcm5KSTtFQUNFO0VBQ0E7QXhCdW5KTjtBd0JubkpFO0VBQ0U7QXhCcW5KSjs7QXlCanNLQTtFQUNFO0lBQ0U7SUFDQTtFekJvc0tGO0V5QmpzS0E7SUFDRTtFekJtc0tGO0V5QmhzS0E7SUFDRTtJQUNBO0V6QmtzS0Y7QUFDRjs7QXlCL3NLQTtFQUNFO0lBQ0U7SUFDQTtFekJvc0tGO0V5QmpzS0E7SUFDRTtFekJtc0tGO0V5QmhzS0E7SUFDRTtJQUNBO0V6QmtzS0Y7QUFDRjtBeUIvcktBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQSx5QlhqQks7RVdrQkw7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBekJpc0tGO0FhcHBKSTtFWXZqQko7SUFhSTtFekJrc0tGO0FBQ0Y7QWF6cEpJO0VZdmpCSjtJQWlCSTtJQUNBO0lBQ0E7RXpCbXNLRjtBQUNGO0F5QmpzS0U7RUFDRTtFQUNBO0VBQ0E7VUFBQTtBekJtc0tKO0F5Qi9yS0U7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBekJpc0tKO0FhM3FKSTtFWTFoQkY7SUFPSTtJQUNBO0lBQ0E7RXpCa3NLSjtBQUNGO0F5QmhzS0k7RUFDRTtBekJrc0tOO0F5QmhzS007RUFDRTtBekJrc0tSO0F5QjdyS0U7RUFDRTtFQUNBO0VBQ0E7QXpCK3JLSjtBeUI3cktJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXpCK3JLTjtBeUIxcktJO0VBQ0U7QXpCNHJLTjtBeUIxcktNO0VBQ0U7QXpCNHJLUjtBeUJ2cktFO0VBQ0U7RUFDQTtFQUNBO0F6QnlyS0o7QWFqdEpJO0VZM2VGO0lBTUksaUJYN0VBO0VkdXdLSjtBQUNGO0F5QnhyS0k7RUFDRTtBekIwcktOO0F5QnRyS007RUFDRSxVWHRHSDtBZDh4S0w7QWE1dEpJO0VZdmRGO0lBRUk7RXpCcXJLSjtBQUNGOztBMEJ4eUtBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBMUIyeUtGO0FhenVKSTtFYXZrQko7SUFRSTtFMUI0eUtGO0FBQ0Y7QWE5dUpJO0VhdmtCSjtJQVlJLG1CWlFHO0VkcXlLTDtBQUNGO0EwQjN5S0U7RUFDRTtBMUI2eUtKO0EwQjF5S0U7RUFDRTtFQUNBO0VBQ0E7S0FBQTtFQUNBO0VBQ0E7QTFCNHlLSjtBMEJ6eUtFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0tBQUE7RUFDQTtBMUIyeUtKO0EwQnh5S0U7RUFDRTtFQUNBLFlabkJHO0VZb0JILFdacEJHO0VZcUJIO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EseUJaeENNO0VZeUNOO0VBQ0E7QTFCMHlLSjtBMEJ4eUtJO0VBR0UseUJadENBO0FkODBLTjtBYXh4Skk7RWFsaUJGO0lBc0JJO0lBQ0E7RTFCd3lLSjtBQUNGO0FhOXhKSTtFYWxpQkY7SUEyQkk7SUFDQTtJQUNBO0lBQ0E7RTFCeXlLSjtBQUNGO0FhdHlKSTtFYWxpQkY7SUFrQ0k7SUFDQTtJQUNBO0UxQjB5S0o7QUFDRjtBMEJ4eUtJO0VBQ0U7RUFFQTtBMUJ5eUtOO0EwQnR5S0k7RUFDRTtFQUVBO0ExQnV5S047QTBCbnlLRTtFQUNFO0VBQ0EseUJadkZHO0VZd0ZIO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0ExQnF5S0o7QTBCbHlLRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBMUJveUtKO0EwQmx5S0k7RUFDRTtBMUJveUtOO0EwQmp5S0k7RUFDRTtBMUJteUtOO0EwQmh5S0k7RWxCdkZGO0VBQ0E7RWtCd0ZJO0ExQm15S047QTBCL3hLRTtFQUNFO0ExQml5S0o7QTBCOXhLRTtFQUNFO0ExQmd5S0o7QWE1MUpJO0VhbGNBO0lBRUk7RTFCZ3lLTjtBQUNGO0FhajJKSTtFYTdiRTtJZDFESjtJQUNBO0lBQ0E7RVo0MUtBO0FBQ0Y7QTBCNXhLSTtFZC9FRjtFQUNBO0VBQ0E7QVo4MktGO0FhNzJKSTtFYXBiQTtJZDFFQTtJQUNBO0lBQ0E7RVorMktGO0FBQ0Y7QWFwM0pJO0VhcGJBO0lBSUk7SUFDQTtJQUNBO0UxQnd5S047QUFDRjtBMEJweUtFO0VuQllBO0FQMnhLRjtBMEJweUtJO0VBQ0UsbUJaN0pEO0FkbThLTDs7QTBCanlLQTtFQUNFO0ExQm95S0Y7QWFyNEpJO0VhaGFKO0lBSUksZ0JadkpHO0VkNDdLTDtBQUNGO0EwQnB5S0U7RUFDRTtBMUJzeUtKOztBMEJseUtBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7S0FBQTtFQUNBO0VBQ0E7RUFDQTtBMUJxeUtGO0EwQm55S0U7RUFDRTtBMUJxeUtKOztBMkJqK0tBO0VBQ0U7RUFDQSxZYmtCSztFYWpCTCxXYmlCSztFYWhCTDtFQUNBO0VBQ0E7RUFDQTtBM0JvK0tGO0FhcDZKSTtFY3ZrQko7SUFVSSxZYldFO0lhVkYsV2JVRTtFZDI5S0o7QUFDRjtBYTE2Skk7RWN2a0JKO0lBY0k7SUFDQTtFM0J1K0tGO0FBQ0Y7QTJCcitLRTtFQUNFO0VBQ0E7RUFDQTtBM0J1K0tKO0EyQnArS0U7RUFDRTtBM0JzK0tKO0EyQnArS0U7RW5CTUE7RUFDQTtFbUJMRTtFQUNBLGFiMUJHO0FkaWdMUDtBMkJwK0tFO0VBQ0U7RUFDQTtFQUNBLG1CYmhDRztFYWlDSDtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTNCcytLSjtBMkJsK0tJO0VBQ0UsYWJwREM7QWR3aExQO0EyQmwrS0k7RUFDRTtBM0JvK0tOO0EyQmwrS0k7RUFDRTtBM0JvK0tOOztBNEJsaUxBO0VBQ0UsbUJkbUJLO0VjbEJMLHlCZE1RO0VjTFIsYWRrQkk7RWNqQkosaUJkZ0JLO0VjZkw7RUFDQTtFQUNBO0E1QnFpTEY7QWFyK0pJO0VldmtCSjtJQVVJO0lBQ0E7SUFDQTtFNUJzaUxGO0FBQ0Y7QTRCcGlMRTtFQUNFO0E1QnNpTEo7QWEvK0pJO0VleGpCRjtJQUlJO0U1QnVpTEo7QUFDRjtBNEJwaUxFO0VBQ0U7QTVCc2lMSjtBNEJwaUxJO0VBQ0U7RWhCMkRKO0VBQ0E7RUFDQTtBWjQrS0Y7QTRCdGlMTTtFQUNFO0E1QndpTFI7QTRCcGlMSTtFaEJtREY7RUFDQTtFQUNBO0VnQm5ESTtBNUJ3aUxOO0E0QnBpTEU7RUFDRTtFQUNBO0E1QnNpTEo7QTRCcGlMSTtFQUNFO0VBQ0E7QTVCc2lMTjtBNEJsaUxFO0VBQ0U7RUFDQTtFQUNBO0E1Qm9pTEo7QTRCbGlMSTtFQUNFO0E1Qm9pTE47QTRCamlMSTtFQUNFO0VBQ0E7QTVCbWlMTjtBNEJoaUxJO0VBQ0U7RUFDQTtFQUNBO0VBQ0Esc0JkaEVEO0VjaUVDLGNkbEVDO0VONkJMO0VBQ0E7RW9Cc0NJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTVCbWlMTjtBNEJ2aExJO0VwQnZERjtFQUNBO0FSaWxMRjtBNEJ2aExJO0VBQ0U7RUFDQTtBNUJ5aExOO0E0QnJoTEU7RUFDRTtFQUNBO0E1QnVoTEo7QTRCcmhMSTtFQUNFO0E1QnVoTE47QTRCbmhMRTtFcEIxRUE7RUFDQTtFRCtMQTtFQUNBO0VBQ0EseUJPL05LO0VQZ09MO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFpQkE7RUFDQSxjT2xQUTtBZG9vTFY7QU9sNktFO0VBR0UseUJPdE9HO0VQdU9IO0VBQ0E7QVBrNktKO0FPLzVLRTtFQUNFLHNCTy9PRztBZGdwTFA7QU94NUtFO0VBQ0UseUJPdFBHO0FkZ3BMUDtBNEJ4aUxFO0VyQnpHQTtFQUNBO0VBQ0E7QVBvcExGO0FPbHBMRTtFQUNFO0VBQ0E7RUFDQTtBUG9wTEo7QTRCL2lMSTtFQUNFLGtCZDlGQTtBZCtvTE47QTRCOWlMSTtFcEIzRkY7RUFDQTtFQUNBO0VvQjJGSTtBNUJrakxOO0E0QmhqTE07RXBCekZKO0VBQ0E7QVI0b0xGO0E0QmhqTEk7RXBCN0ZGO0VBQ0E7QVJncExGO0E0Qi9pTEU7RUFDRTtBNUJpakxKO0E0QjdpTEk7RUFDRTtFQUNBO0E1QitpTE47QTRCN2lMTTtFQUNFO0VBQ0EsbUJkekhGO0VjMEhFO0E1QitpTFI7QTRCMWlMRTtFQUNFO0VBQ0E7QTVCNGlMSjtBNEIxaUxJO0VBQ0UsZ0JkcElBO0FkZ3JMTjtBNEJ6aUxJO0VBQ0U7QTVCMmlMTjtBNEJ4aUxJO0VwQnJJRjtFQUNBO0VBQ0E7RW9CcUlJO0E1QjRpTE47QTRCeGlMRTtFQUNFO0VBQ0E7QTVCMGlMSjtBNEJ2aUxFO0VBQ0U7QTVCeWlMSjs7QTRCcGlMRTtFcEJoSkE7RUFDQTtFRGVBO0VBQ0EsNEJPN0JJO0VQOEJKLCtCTzlCSTtFUCtCSjtFQUNBLHlCTzdDUTtFUDhDUjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0Esa0JPdENJO0VQdUNKO0VBR0U7RUFrRkY7RXFCbUNFO0VBQ0E7T0FBQTtFQUNBO0E1QnFqTEo7QU96cUxFO0VBL0JBO0VBQ0E7RUFDQTtFQWdDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSx5Qk9uRU07RVBvRU47RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBUDRxTEo7QU96cUxFO0VBQ0U7RUFDQSx5Qk92RUU7RVB3RUY7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QVAycUxKO0FPeHFMRTtFQUNFO0VBQ0E7QVAwcUxKO0FPeHFMSTtFQUNFO0FQMHFMTjtBT3hxTEk7RUFDRTtBUDBxTE47QU90cUxFO0VBQ0Usc0JPM0dHO0FkbXhMUDs7QTZCdnhMQTs7Q0FBQTtBQUlBO0VBQ0U7RUFDQTtFQUNBLG1CZmNJO0VlYko7RUFDQTtFQUNBO0VBQ0EseUJmUEs7RWVRTDtBN0J5eExGO0FhOXRLSTtFZ0Jua0JKO0lBV0k7RTdCMHhMRjtBQUNGO0E2Qnh4TEU7RUFFRTtBN0J5eExKO0E2QnR4TEU7RUFDRTtFQUNBO0E3Qnd4TEo7QTZCdHhMSTtFQUNFO0E3Qnd4TE47QTZCcHhMRTtFQUVFO0VBQ0EsY2YvQkc7QWRvekxQO0E2Qmp4TE07OztFQUNFLGFmcENEO0FkeXpMUDs7QTZCN3dMQTtFdEJiRTtFQUNBO0VBQ0E7RXNCYUE7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E3Qmt4TEY7QWFsd0tJO0VnQnZoQko7SUFVSTtFN0JteExGO0FBQ0Y7QTZCanhMRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBN0JteExKO0FhbHhLSTtFZ0I5ZkY7SUFFSTtFN0JreExKO0FBQ0Y7QWF2eEtJO0VnQjlmRjtJQU1JO0U3Qm14TEo7QUFDRjtBYTV4S0k7RWdCcGZGO0lBRUk7RTdCa3hMSjtBQUNGO0FhanlLSTtFZ0JwZkY7SUFNSTtFN0JteExKO0FBQ0Y7QTZCaHhMRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTdCa3hMSjtBYWh6S0k7RWdCMWVGO0lBV0k7SUFDQTtJQUNBO0U3Qm14TEo7QUFDRjtBYXZ6S0k7RWdCeGRBO0lBQ0U7SUFDQTtFN0JreExKO0FBQ0Y7QTZCL3dMRTtFQUNFO0VBQ0E7QTdCaXhMSjtBYWowS0k7RWdCbGRGO0lBS0k7RTdCa3hMSjtBQUNGO0FhdDBLSTtFZ0JsZEY7SUFTSTtJQUNBO0lBQ0E7RTdCbXhMSjtBQUNGO0FhNzBLSTtFZ0JsZEY7SUFlSTtJQUNBO0lBQ0E7RTdCb3hMSjtBQUNGO0E2Qmx4TEk7RWpCekRGO0VBQ0E7RUFDQTtBWjgwTEY7QWF6MUtJO0VnQjliQTtJakJyRUY7SUFDQTtJQUNBO0VaZzJMQTtBQUNGO0FhaDJLSTtFZ0I5YkE7SWpCaEVBO0lBQ0E7SUFDQTtFWmsyTEY7QUFDRjtBYXYyS0k7RWdCOWJBO0lBUUk7SUFDQTtJQUNBO0U3Qml5TE47QUFDRjtBNkI5eExJO0VyQnRIRjtFQUNBO0VxQnVISTtBN0JpeUxOO0FhbjNLSTtFZ0JoYkE7SUFLSTtFN0JreUxOO0FBQ0Y7QTZCL3hMSTtFQUNFLGdCZjVJQTtBZDY2TE47QTZCN3hMRTtFQUVFO0VBQ0EsZ0JmcEpHO0VlcUpIO0VBQ0E7QTdCOHhMSjtBYWo0S0k7RWdCbGFGO0lBUUk7RTdCK3hMSjtBQUNGO0FhdDRLSTtFZ0JsYUY7SUFZSTtFN0JneUxKO0FBQ0Y7QTZCL3hMSTtFQUNFO0E3Qml5TE47QTZCOXhMUTtFQUNFO0E3Qmd5TFY7QTZCN3hMTTtFQUNFO0VBQ0E7RUFDQTtBN0IreExSO0E2QjF4TEU7RXRCbUVBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RXNCcEVFO0VBQ0E7VUFBQTtFQUNBO1VBQUE7QTdCK3hMSjtBNkI1eExFO0VBQ0UseUJmeE1HO0VleU1IO0VBQ0E7S0FBQTtFQUNBO0VBQ0E7RUFDQTtVQUFBO0E3Qjh4TEo7QTZCNXhMSTtFQUNFO1VBQUE7QTdCOHhMTjtBNkIzeExJO0VBQ0U7VUFBQTtBN0I2eExOO0E2Qnp4TEU7RXRCekxBO0VBQ0E7RUFDQTtFc0J5TEU7RUFDQTtFQUNBO0VBQ0E7VUFBQTtFQUNBO0E3QjZ4TEo7QTZCMXhMTTtFQUNFO0E3QjR4TFI7QTZCN3hMTTtFQUNFO0E3Qit4TFI7QTZCaHlMTTtFQUNFO0E3Qmt5TFI7QTZCbnlMTTtFQUNFO0E3QnF5TFI7QTZCanlMSTtFQUNFO1VBQUE7QTdCbXlMTjtBNkJoeUxJO0VBQ0U7RUFDQTtVQUFBO0E3Qmt5TE47QTZCOXhMRTtFQUNFO0E3Qmd5TEo7QTZCN3hMRTtFQUVFO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7QTdCNnhMSjtBYXI5S0k7RWdCL1VGO0lBV0k7RTdCNnhMSjtBQUNGO0FhMTlLSTtFZ0IvVUY7SUFlSTtFN0I4eExKO0FBQ0Y7QTZCNXhMSTtFQUNFO0VBQ0E7QTdCOHhMTjtBNkIzeExJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtLQUFBO0E3QjZ4TE47QWExK0tJO0VnQnhUQTtJQVFJO0U3Qjh4TE47QUFDRjtBYS8rS0k7RWdCeFRBO0lBWUk7RTdCK3hMTjtBQUNGO0E2QjV4TEk7RUFFRTtBN0I2eExOO0E2QjN4TE07RUFDRTtBN0I2eExSO0E2QjV4TFE7RUFDRTtBN0I4eExWOztBNkJ0eExBO0VBQ0U7QTdCeXhMRjtBNkJ2eExFO0VBQ0U7VUFBQTtBN0J5eExKO0E2QnZ4TEk7RUFDRTtVQUFBO0E3Qnl4TE47O0E2Qm54TEU7RUFDRTtVQUFBO0E3QnN4TEo7QTZCcHhMSTtFQUNFO1VBQUE7QTdCc3hMTjs7QThCcmxNQTs7Q0FBQTtBQUdBO0VBQ0U7QTlCd2xNRjs7QThCcmxNQTs7RUFFRTtFQUNBO0VBQ0E7QTlCd2xNRjtBOEJ0bE1FOztFQUNFO0VBQ0E7QTlCeWxNSjtBOEJ0bE1FOztFQUNFO0E5QnlsTUo7O0E4QnBsTUU7RUFDRTtBOUJ1bE1KO0E4QnBsTUU7O0VBRUU7RUFDQTtBOUJzbE1KOztBOEJsbE1BO0VBQ0U7RXRCSEE7RUFDQTtFc0JJQSx5QmhCbENLO0VnQm1DTDtFQUNBO0E5QnNsTUY7QThCcGxNRTtFQUNFLHlCaEJwQ0c7QWQwbk1QO0E4Qm5sTUU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E5QnFsTUo7QThCbmxNSTtFQUNFLHlCaEJsREM7QWR1b01QO0E4QmpsTUU7RUFDRTtBOUJtbE1KO0E4QmhsTU07RUFDRTtFQUNBLGNoQi9ERDtFZ0JnRUM7QTlCa2xNUjtBOEJobE1RO0VBQ0U7QTlCa2xNVjtBOEIva01RO0VBQ0UseUJoQnZFSDtFZ0J3RUc7QTlCaWxNVjtBOEIxa01JO0VBQ0U7QTlCNGtNTjtBOEJ6a01JO0VBQ0U7QTlCMmtNTjs7QThCdGtNQTs7RUFBQTtBQUdBOztFQUVFO0E5QnlrTUY7QWFwbUxJO0VpQnZlSjs7SUFLSTtJQUNBO0lBQ0E7RTlCMmtNRjtBQUNGO0E4QnprTUU7O0VBQ0U7QTlCNGtNSjs7QThCdmtNRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsY2hCakhHO0VnQmtISDtFdEJyRkY7RUFDQTtBUmdxTUY7QWEzbkxJO0VpQnZkRjtJQVVJO0lBQ0E7SUFDQTtJQUNBO0U5QjRrTUo7QUFDRjtBYW5vTEk7RWlCdGNGOztJQUdJO0lBQ0E7RTlCMmtNSjtBQUNGO0FhMW9MSTtFaUJ0Y0Y7O0lBUUk7RTlCNmtNSjtBQUNGO0FhaHBMSTtFaUJ0Y0Y7O0lBWUk7RTlCK2tNSjtBQUNGO0FhdHBMSTtFaUJ2YkE7O0lBRUk7RTlCZ2xNTjtBQUNGO0FhNXBMSTtFaUJqYkE7O0lBRUk7RTlCZ2xNTjtBQUNGO0FhbHFMSTtFaUIzYUE7O0lBRUk7RTlCZ2xNTjtBQUNGO0FheHFMSTtFaUJwYUY7SUFFSTtJQUNBO0U5QjhrTUo7QUFDRjtBYTlxTEk7RWlCcGFGO0lBT0k7RTlCK2tNSjtBQUNGO0FhbnJMSTtFaUJwYUY7SUFXSTtFOUJnbE1KO0FBQ0Y7QWF4ckxJO0VpQnRaQTtJQUVJO0U5QmdsTU47QUFDRjtBYTdyTEk7RWlCdFpBO0lBTUk7RTlCaWxNTjtBQUNGOztBK0Jyd01JO0VBQ0U7QS9Cd3dNTjtBK0J0d01NO0VBQ0U7RUFDQTtFQUNBO0EvQnd3TVI7QStCcndNTTtFQUNFO0VBQ0E7RUFDQTtBL0J1d01SO0FhaHRMSTtFa0JwakJFO0lBRUk7RS9Cc3dNUjtBQUNGO0ErQm53TU07RUFDRTtBL0Jxd01SO0ErQmx3TVk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0EvQm93TWQ7QStCbHdNYztFQUNFO0VBQ0E7RUFDQTtBL0Jvd01oQjtBYXB1TEk7RWtCbmlCVTtJQU1JO0UvQnF3TWhCO0FBQ0Y7QWF6dUxJO0VrQm5pQlU7SUFVSTtFL0Jzd01oQjtBQUNGO0ErQnB3TWdCO0VBQ0U7RUFDQTtBL0Jzd01sQjtBK0Jud01nQjtFQUNFO0EvQnF3TWxCO0ErQmp3TWtCO0VBQ0U7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QS9Ca3dNcEI7QWE5dkxJO0VrQjFpQlE7SUE0Q0k7SUFDQTtFL0Jnd01kO0FBQ0Y7QStCN3ZNWTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0EvQit2TWQ7QWExd0xJO0VrQnpmUTtJQU9JO0lBQ0E7RS9CZ3dNZDtBQUNGO0ErQjl2TWM7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBL0Jnd01oQjtBK0I3dk1jO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBL0Irdk1oQjtBYWh5TEk7RWtCcGVVO0lBUUk7SUFDQTtJQUNBO0lBQ0E7RS9CZ3dNaEI7QUFDRjtBK0I5dk1nQjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0EvQmd3TWxCO0FhanpMSTtFa0I5Y2M7SUFFSTtFL0Jpd01wQjtBQUNGO0ErQi92TWtCO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QS9CaXdNcEI7QWE1ekxJO0VrQnpjYztJQU9JO0UvQmt3TXBCO0FBQ0Y7QWFqMExJO0VrQnpjYztJQVVJO0UvQm93TXBCO0FBQ0Y7QStCaHdNb0I7RUFDRTtBL0Jrd010QjtBYXowTEk7RWtCNWJjO0lBTUk7RS9CbXdNcEI7QUFDRjtBYTkwTEk7RWtCNWJjO0lBU0k7RS9CcXdNcEI7QUFDRjtBK0I1dk1NO0VBQ0U7RUFDQTtFQUNBO0EvQjh2TVI7QStCenZNTTtFQUNFO0EvQjJ2TVI7O0FnQ2o2TUE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQWlDQTs7SUFBQTtBaENzNE1GO0FnQ3I2TUU7RUFDRTtFQUNBO0VBQ0E7QWhDdTZNSjtBZ0NwNk1FO0VBQ0U7RUFDQTtBaENzNk1KO0FnQ242TUU7RXBCa0RBO0VBQ0E7RUFDQTtBWm8zTUY7QWFuM0xJO0VtQnJqQkY7SXBCdURFO0lBQ0E7SUFDQTtFWnEzTUY7QUFDRjtBYTEzTEk7RW1CcmpCRjtJcEJzQ0E7SUFDQTtJQUNBO0VaNjRNQTtBQUNGO0FhajRMSTtFbUJyakJGO0lwQjJDRTtJQUNBO0lBQ0E7RVorNE1GO0FBQ0Y7QWdDcDdNSTtFQUNFLGFsQnhCQztBZDg4TVA7QWdDbDdNTTtFQUNFLGFsQnpCRTtBZDY4TVY7QWdDNTZNRTtFQUNFO0FoQzg2TUo7QWFqNUxJO0VtQjloQkY7SUFJSSxnQmxCekJDO0VkdzhNTDtBQUNGO0FhdDVMSTtFbUI5aEJGO0lBUUk7RWhDZzdNSjtBQUNGOztBZ0MzNk1BO0VBQ0U7QWhDODZNRjtBZ0M1Nk1FO0VBQ0U7VUFBQTtBaEM4Nk1KO0FnQzU2TUk7RUFDRTtVQUFBO0FoQzg2TU47O0FnQ3g2TUU7RUFDRTtVQUFBO0FoQzI2TUo7QWdDejZNSTtFQUNFO1VBQUE7QWhDMjZNTjs7QWlDbi9NQTs7RUFBQTtBQUdBO0UxQitQRTtFMEI3UEE7RUFDQTtFQUNBO0VBQ0E7QWpDcy9NRjtBYXY3TEk7RW9CcGtCSjtJQVFJO0lBQ0E7RWpDdS9NRjtBQUNGO0FhNzdMSTtFb0Jwa0JKO0lBYUk7RWpDdy9NRjtBQUNGO0FhbDhMSTtFb0Jwa0JKO0lBaUJJO0VqQ3kvTUY7QUFDRjtBYXY4TEk7RW9CcGtCSjtJQXFCSTtFakMwL01GO0FBQ0Y7O0FpQ3YvTUE7O0VBRUU7QWpDMC9NRjs7QWFqOUxJO0VvQnRpQko7SUFFSTtFakMwL01GO0FBQ0Y7QWF2OUxJO0VvQnRpQko7SUFNSTtFakMyL01GO0FBQ0Y7QWE1OUxJO0VvQnRpQko7SUFVSTtFakM0L01GO0FBQ0Y7O0FpQ3ovTUE7RUFDRTtBakM0L01GOztBaUN6L01BO0VBQ0U7QWpDNC9NRjs7QWlDei9NQTs7RUFBQTtBQUdBO0VBQ0U7RUFDQTtFQUNBO0V6QnZCQTtFQUNBO0FSb2hORjtBYXAvTEk7RW9CN2dCSjtJQU9JO0VqQzgvTUY7QUFDRjtBYXovTEk7RW9CN2dCSjtJQVdJO0VqQysvTUY7QUFDRjtBaUM3L01FO0VBQ0U7QWpDKy9NSjtBYWpnTUk7RW9CL2ZGO0lyQlFBO0lBQ0E7SUFDQTtFWjQvTUE7QUFDRjtBYXhnTUk7RW9CL2ZGO0lyQkpBO0lBQ0E7SUFDQTtFWitnTkE7QUFDRjtBYS9nTUk7RW9CL2ZGO0lyQkNFO0lBQ0E7SUFDQTtFWmloTkY7QUFDRjs7QWlDeGdOQTtFQUNFO0FqQzJnTkY7O0FpQ3hnTkE7O0VBQUE7QUFHQTtFQUNFO0VBQ0E7QWpDMmdORjs7QWlDeGdOQTtFQUNFO0VBQ0E7RXpCbEVBO0VBQ0E7QVI4a05GO0FhemlNSTtFb0J0ZUo7SUFNSTtJQUNBO0VqQzZnTkY7QUFDRjtBYS9pTUk7RW9CdGVKO0lBV0ksYW5CeEZHO0Vkc21OTDtBQUNGOztBaUMzZ05BO0VBQ0U7QWpDOGdORjs7QWlDM2dOQTs7RUFBQTtBQUdBO0V6QnRGRTtFQUNBO0V5QnVGQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBakMrZ05GOztBaUM1Z05BO0VBQ0U7RUFDQTtFQUNBLHNCbkJoSUc7RW1CaUlIO0FqQytnTkY7QWlDN2dORTtFQUdFLHlCbkJ2SUc7RW1Cd0lILFduQnZJQztBZG9wTkw7O0FpQ3pnTkE7O0VBQUE7QUFHQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWpDNGdORjtBYTdsTUk7RW9CcGJKO0lBUUk7RWpDNmdORjtBQUNGO0FhbG1NSTtFb0JwYko7SUFZSTtJQUNBO0lBQ0E7RWpDOGdORjtBQUNGO0Fhem1NSTtFb0JwYko7SUFrQkk7SUFDQTtFakMrZ05GO0FBQ0Y7QWlDN2dORTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FqQytnTko7QWE5bk1JO0VvQjlaRjtJQWdCSTtJQUNBO0VqQ2doTko7QUFDRjs7QWlDNWdOQTtFQUlFO0VBQ0E7QWpDNGdORjtBaUMxZ05FO0VBQ0U7QWpDNGdOSjs7QWtDanRORTs7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQW1DQTs7OztJQUFBO0FsQ3VyTko7QWE1cE1JO0VxQnJrQkY7O0lBVUk7RWxDNHROSjtBQUNGO0FrQzF0Tkk7O0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QWxDNnROTjtBa0MxdE5JOztFQUNFO0VBQ0E7RTNCc1BKO0VBQ0EsWU8zUEs7RVA0UEwsV081UEs7RVA2UEw7RUFDQTtFQUNBO0VBQ0EseUJPaFJLO0VQaVJMO0FQdytNRjtBYXRyTUk7RXFCampCQTs7STNCa1FBO0lBQ0E7SUFDQTtFUDArTUY7QUFDRjtBT3grTUU7OztFQUVFO0VBQ0E7RUFDQSxzQk81UkM7RVA2UkQ7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QVAyK01KO0FhNXNNSTtFTjFTRjs7O0lBY0k7RVA4K01KO0FBQ0Y7QU8zK01FOztFQUNFO0FQOCtNSjtBTzMrTUU7O0VBQ0U7QVA4K01KO0FPMytNRTs7OztFQUdFLHlCT2xUTTtBZGd5TlY7QU8zK01FOztFQUNFO0FQOCtNSjtBa0NqeE5NOztFQUNFO0VBQ0E7QWxDb3hOUjtBa0NoeE5JOztFQUNFO0VBQ0E7QWxDbXhOTjtBa0NoeE5JOztFQUNFO0VBQ0E7RUFDQTtBbENteE5OO0FrQzN3Tkk7O0VBQ0UsV3BCN0NEO0FkMnpOTDs7QWtDendOQTtFQUNFO0FsQzR3TkY7O0FtQ3AwTkE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QW5DdTBORjtBYXR3TUk7RXNCdmtCSjtJQVNJO0lBQ0E7RW5DdzBORjtBQUNGO0FhNXdNSTtFc0J2a0JKO0lBY0k7RW5DeTBORjtBQUNGO0FtQ3YwTkU7RUFDRTtBbkN5ME5KO0FhcHhNSTtFc0J0akJGO0lBSUk7RW5DMDBOSjtBQUNGO0FhenhNSTtFc0J0akJGO0lBUUk7RW5DMjBOSjtBQUNGO0FtQ3owTkk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBbkMyME5OO0FtQ3owTk07RUFDRTtBbkMyME5SO0FtQ3gwTk07RUFDRSxrQnJCbEJGO0FkNDFOTjtBbUN4ME5RO0VBQ0U7RUFDQTtFQUNBO0VBQ0EseUJyQnJDQTtFcUJzQ0E7RUFDQTtFQUNBO0FuQzAwTlY7QW1DcjBOSTtFQUNFO0VBQ0E7RUFDQTtBbkN1ME5OO0FtQ3AwTkk7OztFQUdFLGFyQnRESTtBZDQzTlY7QW1DbDBORTtFQUNFO0FuQ28wTko7QWFoME1JO0VzQnJnQkY7SUFJSTtFbkNxME5KO0FBQ0Y7QWFyME1JO0VzQnJnQkY7SUFRSSxnQnJCdERDO0VkNDNOTDtBQUNGO0FhMTBNSTtFc0JyZ0JGO0l2QlZBO0lBQ0E7SUFDQTtJdUJxQkk7RW5DeTBOSjtBQUNGO0FhbDFNSTtFc0JyZ0JGO0l2QkxFO0lBQ0E7SUFDQTtFWmcyTkY7QUFDRjtBbUM5ME5JO0V2QklGO0VBQ0E7RUFDQTtFdUJKSTtBbkNrMU5OO0FhLzFNSTtFc0JyZkE7SXZCZEY7SUFDQTtJQUNBO0l1QmtCTTtJQUNBO0VuQ3ExTk47QUFDRjtBYXgyTUk7RXNCcmZBO0l2QlRBO0lBQ0E7SUFDQTtFWjAyTkY7QUFDRjtBbUN4MU5FO0VBQ0U7RUFDQTtFQUNBO0FuQzAxTko7QWFwM01JO0VzQnplRjtJQU1JLGdCckJoRkM7RWQyNk5MO0FBQ0Y7QWF6M01JO0VzQnplRjtJQVVJO0VuQzQxTko7QUFDRjtBbUN6MU5FO0VBQ0U7RUFDQSxzQnJCekdDO0VxQjBHRDtFNUJtSkY7RTRCakpFO0VBQ0E7RUFDQTtBbkMyMU5KO0FhdjRNSTtFc0IzZEY7SUFVSTtJQUNBO0lBQ0E7SUFDQTtFbkM0MU5KO0FBQ0Y7QWEvNE1JO0VzQjNkRjtJQWlCSTtFbkM2MU5KO0FBQ0Y7QW1DMzFOSTtFQUNFO0FuQzYxTk47QW1DejFORTtFQUNFO0FuQzIxTko7QW1DejFOSTtFdkJ4REY7RUFDQTtFQUNBO0VKakRBO0VBQ0E7QVJzOE5GO0FtQzMxTkk7RTNCbEhGO0VBQ0E7RUFDQTtFMkJrSEk7QW5DKzFOTjtBYXY2TUk7RXNCMWJBO0lBS0k7RW5DZzJOTjtBQUNGO0FhNTZNSTtFc0IxYkE7SXZCN0RGO0lBQ0E7SUFDQTtFWnU2TkE7QUFDRjtBbUMvMU5FO0VBQ0U7QW5DaTJOSjtBYXQ3TUk7RXNCNWFGO0lBSUk7RW5DazJOSjtBQUNGO0FhMzdNSTtFc0I1YUY7SUFRSTtFbkNtMk5KO0FBQ0Y7QW1DajJOSTtFM0JySUY7RUFDQTtFRGVBO0VBQ0EsNEJPN0JJO0VQOEJKLCtCTzlCSTtFUCtCSjtFQUNBLHlCTzdDUTtFUDhDUjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0Esa0JPdENJO0VQdUNKO0U0QjRHSTtBbkNnM05OO0FPdDlORTtFQS9CQTtFQUNBO0VBQ0E7RUFnQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EseUJPbkVNO0VQb0VOO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QVB5OU5KO0FPdDlORTtFQUNFO0VBQ0EseUJPdkVFO0VQd0VGO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FQdzlOSjtBT3I5TkU7RUFDRTtFQUNBO0FQdTlOSjtBT3I5Tkk7RUFDRTtBUHU5Tk47QU9yOU5JO0VBQ0U7QVB1OU5OO0FPbjlORTtFQUNFLHNCTzNHRztBZGdrT1A7QWE3L01JO0VzQmphQTtJNUJyQkY7RVB1N05BO0FBQ0Y7QW1DMzVOTTtFQUNFO0VBQ0E7QW5DNjVOUjtBbUMzNU5RO0VBQ0U7QW5DNjVOVjtBbUN6NU5NO0UzQnRKSjtFQUNBO0VEZUE7RUFDQSw0Qk83Qkk7RVA4QkosK0JPOUJJO0VQK0JKO0VBQ0EseUJPN0NRO0VQOENSO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSxrQk90Q0k7RVB1Q0o7RUFHRTtFQWdIRixjTzNLSztFUDRLTCxzQk8zS0c7RVA0S0g7RTRCUU07QW5DNDZOUjtBT25pT0U7RUEvQkE7RUFDQTtFQUNBO0VBZ0NFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLHlCT25FTTtFUG9FTjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FQc2lPSjtBT25pT0U7RUFDRTtFQUNBLHlCT3ZFRTtFUHdFRjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBUHFpT0o7QU9saU9FO0VBQ0U7RUFDQTtBUG9pT0o7QU9saU9JO0VBQ0U7QVBvaU9OO0FPbGlPSTtFQUNFO0FQb2lPTjtBT2hpT0U7RUFDRSxzQk8zR0c7QWQ2b09QO0FPOTlORTtFQUNFLHlCTzVLTTtBZDRvT1Y7QU83OU5FO0VBQ0U7RUFDQSxxQk9qTE07RVBrTE4sc0JPckxDO0Fkb3BPTDtBTzU5TkU7RUFDRSxjTzFMRztBZHdwT1A7QW1DaCtOTTtFM0IzSko7RUFDQTtFRGVBO0VBQ0EsNEJPN0JJO0VQOEJKLCtCTzlCSTtFUCtCSjtFQUNBLHlCTzdDUTtFUDhDUjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0Esa0JPdENJO0VQdUNKO0VBd0lBO0VBQ0EsY09qTUs7RVBrTUw7RTRCUk07RUFDQTtBbkNrL05SO0FPL21PRTtFQS9CQTtFQUNBO0VBQ0E7RUFnQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EseUJPbkVNO0VQb0VOO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QVBrbk9KO0FPL21PRTtFQUNFO0VBQ0EseUJPdkVFO0VQd0VGO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FQaW5PSjtBTzltT0U7RUFDRTtFQUNBO0FQZ25PSjtBTzltT0k7RUFDRTtBUGduT047QU85bU9JO0VBQ0U7QVBnbk9OO0FPNW1PRTtFQUNFLHNCTzNHRztBZHl0T1A7QU9yaE9FO0VBQ0UseUJPck1HO0FkNHRPUDtBT3BoT0U7RUFDRTtFQUNBLGtCT3pNQztFUDBNRDtBUHNoT0o7QU9uaE9FO0VBQ0UsY08vTUc7QWRvdU9QO0FPbmhPSTtFQUNFO0FQcWhPTjtBT2xoT0k7RUFDRTtBUG9oT047O0FvQzl1T0E7O0VBQUE7QUFJRTtFQUNFO0FwQ2d2T0o7QW9DN3VPRTtFQUNFO0FwQyt1T0o7QW9DN3VPRTtFQUNFO0VBQ0E7RUFDQTtBcEMrdU9KO0FhdHJOSTtFdUI1akJGO0lBS0k7RXBDaXZPSjtBQUNGO0FvQy91T0k7RUFDRTtBcENpdk9OO0FvQ2h2T007RUFDRTtFQUNBO0FwQ2t2T1I7QW9DanZPUTtFQUNJO0FwQ212T1o7QW9DbHZPWTtFQUNFO0VBQ0E7RUFDQTtBcENvdk9kOztBcUNqeE9BO0VBNk1FOztJQUFBO0FyQzBrT0Y7QXFDdHhPRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXJDd3hPSjtBcUNyeE9FO0VBQ0U7RUFDQTtFQUNBO0FyQ3V4T0o7QWE1dE5JO0V3QjlqQkY7SUFNSTtJQUNBO0lBQ0E7RXJDd3hPSjtBQUNGO0FxQ3J4T0U7RUFFRTtFQUNBLGN2QmpCRztBZHV5T1A7QXFDbnhPRTtFekIyREE7RUFDQTtFQUNBO0V5QjNERTtBckN1eE9KO0FhN3VOSTtFd0I1aUJGO0l6QnFEQTtJQUNBO0lBQ0E7SXlCakRJO0VyQzB4T0o7QUFDRjtBcUN2eE9FO0VBa0JFO0VBQ0Esc0J2Qm5EQztFUDZQSDtFOEJ4TUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBckN3d09KO0FxQ3R3T0k7RUFDRTtFQUNBO0VBQ0E7QXJDd3dPTjtBcUNwd09FO0U3QnRDQTtFQUNBO0U2QnVDRTtFQUNBLHlCdkJsRU07RXVCbUVOLFd2QnRFQztFdUJ1RUQ7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBckN1d09KO0FhaHhOSTtFd0JoZ0JGO0lBWUk7RXJDd3dPSjtBQUNGO0FhcnhOSTtFd0JoZ0JGO0l6QkhBO0lBQ0E7SUFDQTtJeUJvQkk7RXJDeXdPSjtBQUNGO0FhN3hOSTtFd0JoZ0JGO0l6QkVFO0lBQ0E7SUFDQTtFWit4T0Y7QUFDRjtBcUM3d09FO0VBQ0U7RUFDQTtBckMrd09KO0FxQzV3T0U7RUFDRTtFQUNBO0FyQzh3T0o7QWE1eU5JO0V3QnBlRjtJQUtJO0VyQyt3T0o7QUFDRjtBYWp6Tkk7RXdCcGVGO0lBU0k7SUFDQTtFckNneE9KO0FBQ0Y7QWF2ek5JO0V3QnBlRjtJQWNJO0lBQ0E7SUFDQTtFckNpeE9KO0FBQ0Y7QXFDOXdPRTtFQUNFO0FyQ2d4T0o7QWFqME5JO0V3QmhkRjtJQUlJO0VyQ2l4T0o7QUFDRjtBcUM5d09FO0V6QnpDQTtFQUNBO0VBQ0E7RXlCeUNFO0FyQ2t4T0o7QWE1ME5JO0V3QnhjRjtJekIvQ0E7SUFDQTtJQUNBO0VadTBPQTtBQUNGO0FxQ2x4T0U7RUFDRTtFQUNBO0VBQ0E7QXJDb3hPSjtBYXgxTkk7RXdCL2JGO0lBTUk7SUFDQTtJQUNBLGtCdkIzSEE7SXVCNEhBO0VyQ3F4T0o7QUFDRjtBcUNueE9JO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7S0FBQTtBckNxeE9OO0FxQ2p4T0U7RUFDRTtFQUNBO0VBQ0E7QXJDbXhPSjtBYTMyTkk7RXdCM2FGO0lBTUk7RXJDb3hPSjtBQUNGO0FxQ2p4T0U7RUFDRTtBckNteE9KO0FhbjNOSTtFd0JqYUY7SUFJSTtFckNveE9KO0FBQ0Y7QXFDbHhPSTtFQUNFO0FyQ294T047QWEzM05JO0V3QnRaQTtJQUVJO0VyQ214T047QUFDRjtBcUNoeE9JO0U3QnRKRjtFQUNBO0VEK0xBO0VBQ0E7RUFDQSx5Qk8vTks7RVBnT0w7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBUDJ1T0Y7QU96dU9FO0VBR0UseUJPdE9HO0VQdU9IO0VBQ0E7QVB5dU9KO0FPdHVPRTtFQUNFLHNCTy9PRztBZHU5T1A7QXFDL3hPTTtFQUNFO0VBQ0E7QXJDaXlPUjtBcUMveE9RO0VBQ0U7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUNBO0FyQ2d5T1Y7QXFDdnhPRTtFQUNFO0FyQ3l4T0o7QXFDdnhPSTtFQUNFO0VBQ0E7RUFDQTtBckN5eE9OO0FheDZOSTtFd0JwWEE7SUFNSTtFckMweE9OO0FBQ0Y7QXFDeHhPTTtFQUNFO0FyQzB4T1I7QXFDcnhPRTtFQUNFO0VBQ0E7RUFDQTtBckN1eE9KO0FhcjdOSTtFd0JyV0Y7SUFNSTtFckN3eE9KO0FBQ0Y7QXFDdHhPSTtFQUNFO0FyQ3d4T047O0FzQ3BnUEE7RUFDRTtFQUNBO0F0Q3VnUEY7QWFsOE5JO0V5QnZrQko7SUFLSTtJQUNBO0V0Q3dnUEY7QUFDRjtBYXg4Tkk7RXlCdmtCSjtJQVVJO0V0Q3lnUEY7QUFDRjtBYTc4Tkk7RXlCdmtCSjtJQWNJO0lBQ0E7RXRDMGdQRjtBQUNGO0FhbjlOSTtFeUJ2a0JKO0lBbUJJO0V0QzJnUEY7QUFDRjtBc0N6Z1BFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QXRDMmdQSjtBYTk5Tkk7RXlCampCRjtJQU9JO0lBQ0E7RXRDNGdQSjtBQUNGO0FhcCtOSTtFeUJqakJGO0lBWUk7SUFDQTtFdEM2Z1BKO0FBQ0Y7QXNDM2dQSTtFQUNFO0F0QzZnUE47QWE3K05JO0V5QjdoQkE7SUFFSTtFdEM0Z1BOO0FBQ0Y7QXNDeGdQRTtFQUNFO0VBQ0E7RUFDQTtBdEMwZ1BKO0FzQ3hnUEk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBdEMwZ1BOO0FhNy9OSTtFeUJqaEJBO0lBT0k7SUFDQTtFdEMyZ1BOO0FBQ0Y7QXNDeGdQSTtFQUNFO0F0QzBnUE47QWF0Z09JO0V5QnRoQkY7SUFzQkk7SUFDQTtFdEMwZ1BKO0FBQ0Y7QWE1Z09JO0V5QnRoQkY7SUEyQkk7SUFDQTtFdEMyZ1BKO0FBQ0Y7QWFsaE9JO0V5QnRoQkY7SUFnQ0k7RXRDNGdQSjtBQUNGO0FhdmhPSTtFeUJ0aEJGO0lBb0NJO0V0QzZnUEo7QUFDRjtBc0MxZ1BFO0VBQ0U7RUFDQTtFQUNBO0VBQ0EseUJ4Qm5GRztFd0JvRkg7RUFDQTtBdEM0Z1BKO0FhcGlPSTtFeUI5ZUY7SUFTSTtJQUNBO0V0QzZnUEo7QUFDRjtBc0M1Z1BJO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBdEM4Z1BOO0FhampPSTtFeUJsZUE7SUFRSTtJQUNBO0V0QytnUE47QUFDRjtBc0M3Z1BNO0VBQ0U7RUFDQTtBdEMrZ1BSO0FzQzVnUE07RUFDRTtBdEM4Z1BSO0FhOWpPSTtFeUJqZEU7SUFHSTtFdENnaFBSO0FBQ0Y7QXNDN2dQTTtFQUNFO0F0QytnUFI7QWF0a09JO0V5QjFjRTtJQUlJO0V0Q2doUFI7QUFDRjtBc0M1Z1BJO0VBQ0U7RUFDQTtBdEM4Z1BOO0FzQzFnUEU7RUFDRTtFQUNBO0VBQ0E7QXRDNGdQSjtBc0MxZ1BJOztFQUVFO0F0QzRnUE47O0F1Qy9wUEE7RUFDSSxzQnpCSUM7RXlCSEQ7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBdkNrcVBKO0F1Q2hxUEk7RUFDSTtBdkNrcVBSO0F1Qy9wUEk7RUFDSTtBdkNpcVBSO0F1QzlwUEk7RUFDSTtFQUNBO0F2Q2dxUFI7QXVDN3BQSTtFQUNJLHlCekJqQkU7QWRnclBWO0Fham5PSTtFMEIzaUJZO0lBRVE7RXZDOHBQdEI7QUFDRjs7QXdDNXJQRTtFQUNFO0VBQ0E7RUFDQTtBeEMrclBKO0FhNW5PSTtFMkJ0a0JGO0lBTUk7SUFDQSxjMUJhQTtJMEJaQTtJQUFBO0V4Q2dzUEo7QUFDRjtBd0M5clBJO0VBQ0U7RUFDQTtFQUNBO0F4Q2dzUE47QXdDN3JQSTtFQUNFO0VBQ0E7RUFDQTtBeEMrclBOO0F3QzdyUE07RUFDRTtFQUNBO0F4QytyUFI7QXdDN3JQUTtFQUNFO0VBQ0E7QXhDK3JQVjtBd0M1clBRO0VBQ0U7QXhDOHJQVjtBd0N6clBJO0VBQ0U7QXhDMnJQTjs7QXlDbHVQQTtFQUNFO0F6Q3F1UEY7O0EwQ3B1UEk7RUFDRTtBMUN1dVBOO0EwQ3J1UEk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBLHlCNUJGSTtFNEJHSjtBMUN1dVBOO0FhM3FPSTtFNkJsa0JBO0lBU0k7SUFDQTtFMUN3dVBOO0FBQ0Y7QTBDdHVQTTtFQUNFO0VBQ0E7RUFDQSxtQjVCREQ7QWR5dVBQO0EwQ3J1UE07RUFDRTtFQUNBO0VBQ0E7RUFDQTtBMUN1dVBSO0FhNXJPSTtFNkIvaUJFO0lBT0k7RTFDd3VQUjtBQUNGO0EwQ3R1UFE7RUFDRTtBMUN3dVBWO0FhcHNPSTtFNkJyaUJJO0lBSUk7RTFDeXVQVjtBQUNGO0EwQ3R1UFE7RWxDVE47RUFDQTtFRGVBO0VBQ0EsNEJPN0JJO0VQOEJKLCtCTzlCSTtFUCtCSjtFQUNBLHlCTzdDUTtFUDhDUjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0Esa0JPdENJO0VQdUNKO0VBR0U7RW1DbkJNO0VBQ0E7RUFDQTtBMUNzdlBWO0FPbHVQRTtFQS9CQTtFQUNBO0VBQ0E7RUFnQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EseUJPbkVNO0VQb0VOO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QVBxdVBKO0FPbHVQRTtFQUNFO0VBQ0EseUJPdkVFO0VQd0VGO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FQb3VQSjtBT2p1UEU7RUFDRTtFQUNBO0FQbXVQSjtBT2p1UEk7RUFDRTtBUG11UE47QU9qdVBJO0VBQ0U7QVBtdVBOO0FPL3RQRTtFQUNFLHNCTzNHRztBZDQwUFA7QWF6d09JO0U2QjdoQkk7SUFPSTtFMUNteVBWO0FBQ0Y7QWE5d09JO0U2QjdnQkE7STlCVUY7SUFDQTtJQUNBO0VacXhQQTtBQUNGO0FhcnhPSTtFNkI3Z0JBO0k5QmVBO0lBQ0E7SUFDQTtFWnV4UEY7QUFDRjtBMENqeVBJO0VBQ0U7RTlCYUo7RUFDQTtFQUNBO0FadXhQRjtBYWx5T0k7RTZCcmdCQTtJOUJFRjtJQUNBO0lBQ0E7RVp5eVBBO0FBQ0Y7QWF6eU9JO0U2QnJnQkE7STlCT0E7SUFDQTtJQUNBO0VaMnlQRjtBQUNGO0FhaHpPSTtFNkJyZ0JBO0lBU0ksbUI1QnRERjtFZHMyUEo7QUFDRjtBYXJ6T0k7RTZCcmdCQTtJOUJWRjtJQUNBO0lBQ0E7RVp3MFBBO0FBQ0Y7QWE1ek9JO0U2QnJnQkE7STlCTEE7SUFDQTtJQUNBO0VaMDBQRjtBQUNGO0FhbjBPSTtFNkJyZkU7SUFFSTtFMUMwelBSO0FBQ0Y7QTBDbnpQSTtFQUNFO0ExQ3F6UE47QWEzME9JO0U2QjNlQTtJQUlJO0UxQ3N6UE47QUFDRjs7QTJDdjVQQTtFQUNFO0EzQzA1UEY7O0EyQ3Y1UEE7RXBDOFBFO0VvQzVQQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsK0I3QlVJO0U2QlRKLGdDN0JTSTtFNkJSSjtFQUNBO0EzQzA1UEY7QWFqMk9JO0U4Qm5rQko7SUFhSTtFM0MyNVBGO0FBQ0Y7QWF0Mk9JO0U4Qm5rQko7SUFpQkk7SUFDQTtJQUNBO0UzQzQ1UEY7QUFDRjtBMkMxNVBFO0VBQ0UsbUI3QlBHO0U2QlFIO0VBQ0E7QTNDNDVQSjtBYWwzT0k7RThCN2lCRjtJQU1JO0lBQ0E7SUFDQSxtQjdCYkE7RWQwNlBKO0FBQ0Y7QWF6M09JO0U4QjdpQkY7SUFZSTtJQUNBO0lBQ0E7RTNDODVQSjtBQUNGO0EyQzU1UEk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBM0M4NVBOO0EyQzE1UEU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBM0M0NVBKO0EyQzE1UEk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBM0M0NVBOO0EyQ3Y1UEk7RW5DMUNGO0VBQ0E7RUFDQTtFbUMwQ0k7QTNDMjVQTjtBMkN6NVBJO0VBQ0UsYzdCbkVDO0FkODlQUDtBMkN2NVBFO0VBQ0U7RUFDQTtFQUNBLGlCN0I3REc7RTZCOERIO0VBQ0E7RUFDQTtFQUNBO0EzQ3k1UEo7QWF2Nk9JO0U4QnpmRjtJQVVJLGlCN0JuRUE7RWQ2OVBKO0FBQ0Y7QWE1Nk9JO0U4QnpmRjtJQWNJO0UzQzI1UEo7QUFDRjtBMkN6NVBJO0VBQ0U7QTNDMjVQTjtBMkN4NVBJO0VuQ2xFRjtFQUNBO0VEK0xBO0VBQ0E7RUFDQSx5Qk8vTks7RVBnT0w7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBUCt4UEY7QU83eFBFO0VBR0UseUJPdE9HO0VQdU9IO0VBQ0E7QVA2eFBKO0FPMXhQRTtFQUNFLHNCTy9PRztBZDJnUVA7QTJDcDZQTTtFQUNFO0VBQ0E7RUFDQSxjN0IxR0Q7RTZCMkdDO0EzQ3M2UFI7QTJDbjZQTTtFQUNFO0EzQ3E2UFI7QTJDaDZQRTtFQUVFO0EzQ2k2UEo7QTJDLzVQSTtFQUNFO0EzQ2k2UE47O0EyQ3Y1UEE7RW5DNUdFO0VBQ0E7RUFDQTtFbUM0R0E7QTNDNDVQRjtBMkMxNVBFO0VBQ0U7QTNDNDVQSjtBMkN6NVBFO0VBQ0UsYzdCL0hFO0U2QmdJRjtBM0MyNVBKOztBNEM1aVFBOztFQUFBO0FBWUU7Ozs7Ozs7OztFQUNFO0E1QzhpUUo7QWFwL09JO0UrQjNqQkY7Ozs7Ozs7OztJQUlJO0U1Q3VqUUo7QUFDRjs7QTRDbmpRQTtFQUNFO0E1Q3NqUUYsQyIsInNvdXJjZXMiOlsid2VicGFjazovL2xlZ2FjeS1sYXJhdmVsLW1peC8uL3dlYi90aGVtZXMvcGlwcGlwL2Fzc2V0cy9zYXNzL2dsb2JhbC5zY3NzIiwid2VicGFjazovL2xlZ2FjeS1sYXJhdmVsLW1peC8uL3dlYi90aGVtZXMvcGlwcGlwL2Fzc2V0cy9zYXNzL2Jhc2UvX25vcm1hbGl6ZS5zY3NzIiwid2VicGFjazovL2xlZ2FjeS1sYXJhdmVsLW1peC8uL25vZGVfbW9kdWxlcy9yZWZsZXgtZ3JpZC9zY3NzL2luY2x1ZGVzL192YXJpYWJsZXMuc2NzcyIsIndlYnBhY2s6Ly9sZWdhY3ktbGFyYXZlbC1taXgvLi9ub2RlX21vZHVsZXMvcmVmbGV4LWdyaWQvc2Nzcy9pbmNsdWRlcy9fZ3JpZC5zY3NzIiwid2VicGFjazovL2xlZ2FjeS1sYXJhdmVsLW1peC8uL25vZGVfbW9kdWxlcy9yZWZsZXgtZ3JpZC9zY3NzL2luY2x1ZGVzL19taXhpbnMuc2NzcyIsIndlYnBhY2s6Ly9sZWdhY3ktbGFyYXZlbC1taXgvLi9ub2RlX21vZHVsZXMvcmVmbGV4LWdyaWQvc2Nzcy9pbmNsdWRlcy9faGVscGVycy5zY3NzIiwid2VicGFjazovL2xlZ2FjeS1sYXJhdmVsLW1peC8uL3dlYi90aGVtZXMvcGlwcGlwL2Fzc2V0cy9zYXNzL2hlbHBlcnMvX21lZGlhcS5zY3NzIiwid2VicGFjazovL2xlZ2FjeS1sYXJhdmVsLW1peC8uL3dlYi90aGVtZXMvcGlwcGlwL2Fzc2V0cy9zYXNzL2hlbHBlcnMvX21peGlucy5zY3NzIiwid2VicGFjazovL2xlZ2FjeS1sYXJhdmVsLW1peC8uL3dlYi90aGVtZXMvcGlwcGlwL2Fzc2V0cy9zYXNzL2hlbHBlcnMvX2ZvbnRzLnNjc3MiLCJ3ZWJwYWNrOi8vbGVnYWN5LWxhcmF2ZWwtbWl4Ly4vd2ViL3RoZW1lcy9waXBwaXAvYXNzZXRzL3Nhc3MvaGVscGVycy9fYW5pbWF0aW9ucy5zY3NzIiwid2VicGFjazovL2xlZ2FjeS1sYXJhdmVsLW1peC8uL25vZGVfbW9kdWxlcy9iYWd1ZXR0ZWJveC5qcy9zcmMvYmFndWV0dGVCb3guc2NzcyIsIndlYnBhY2s6Ly9sZWdhY3ktbGFyYXZlbC1taXgvLi9ub2RlX21vZHVsZXMvY2hvaWNlcy5qcy9hc3NldHMvc3R5bGVzL3Njc3MvY2hvaWNlcy5zY3NzIiwid2VicGFjazovL2xlZ2FjeS1sYXJhdmVsLW1peC8uL3dlYi90aGVtZXMvcGlwcGlwL2Fzc2V0cy9zYXNzL2Jhc2UvX2RlZmF1bHRzLnNjc3MiLCJ3ZWJwYWNrOi8vbGVnYWN5LWxhcmF2ZWwtbWl4Ly4vd2ViL3RoZW1lcy9waXBwaXAvYXNzZXRzL3Nhc3MvdmVuZG9yL19pbmNsdWRlLW1lZGlhLnNjc3MiLCJ3ZWJwYWNrOi8vbGVnYWN5LWxhcmF2ZWwtbWl4Ly4vd2ViL3RoZW1lcy9waXBwaXAvYXNzZXRzL3Nhc3MvaGVscGVycy9fdmFycy5zY3NzIiwid2VicGFjazovL2xlZ2FjeS1sYXJhdmVsLW1peC8uL3dlYi90aGVtZXMvcGlwcGlwL2Fzc2V0cy9zYXNzL2Jhc2UvX2RydXBhbDguc2NzcyIsIndlYnBhY2s6Ly9sZWdhY3ktbGFyYXZlbC1taXgvLi93ZWIvdGhlbWVzL3BpcHBpcC9hc3NldHMvc2Fzcy9iYXNlL19mb3Jtcy5zY3NzIiwid2VicGFjazovL2xlZ2FjeS1sYXJhdmVsLW1peC8uL3dlYi90aGVtZXMvcGlwcGlwL2Fzc2V0cy9zYXNzL2xheW91dC9faGVhZGVyLnNjc3MiLCJ3ZWJwYWNrOi8vbGVnYWN5LWxhcmF2ZWwtbWl4Ly4vd2ViL3RoZW1lcy9waXBwaXAvYXNzZXRzL3Nhc3MvbGF5b3V0L19zdHlsZS5zY3NzIiwid2VicGFjazovL2xlZ2FjeS1sYXJhdmVsLW1peC8uL3dlYi90aGVtZXMvcGlwcGlwL2Fzc2V0cy9zYXNzL2xheW91dC9fZm9vdGVyLnNjc3MiLCJ3ZWJwYWNrOi8vbGVnYWN5LWxhcmF2ZWwtbWl4Ly4vd2ViL3RoZW1lcy9waXBwaXAvYXNzZXRzL3Nhc3MvY29tcG9uZW50cy9fbmF2LnNjc3MiLCJ3ZWJwYWNrOi8vbGVnYWN5LWxhcmF2ZWwtbWl4Ly4vd2ViL3RoZW1lcy9waXBwaXAvYXNzZXRzL3Nhc3MvY29tcG9uZW50cy9fZm9ybS5zY3NzIiwid2VicGFjazovL2xlZ2FjeS1sYXJhdmVsLW1peC8uL3dlYi90aGVtZXMvcGlwcGlwL2Fzc2V0cy9zYXNzL2NvbXBvbmVudHMvX21vZGFsLnNjc3MiLCJ3ZWJwYWNrOi8vbGVnYWN5LWxhcmF2ZWwtbWl4Ly4vd2ViL3RoZW1lcy9waXBwaXAvYXNzZXRzL3Nhc3MvY29tcG9uZW50cy9fc2VhcmNoLnNjc3MiLCJ3ZWJwYWNrOi8vbGVnYWN5LWxhcmF2ZWwtbWl4Ly4vd2ViL3RoZW1lcy9waXBwaXAvYXNzZXRzL3Nhc3MvY29tcG9uZW50cy9fZW50aXRpZXMuc2NzcyIsIndlYnBhY2s6Ly9sZWdhY3ktbGFyYXZlbC1taXgvLi93ZWIvdGhlbWVzL3BpcHBpcC9hc3NldHMvc2Fzcy9jb21wb25lbnRzL19lbW1zZy5zY3NzIiwid2VicGFjazovL2xlZ2FjeS1sYXJhdmVsLW1peC8uL3dlYi90aGVtZXMvcGlwcGlwL2Fzc2V0cy9zYXNzL2NvbXBvbmVudHMvX2Jhbm5lci5zY3NzIiwid2VicGFjazovL2xlZ2FjeS1sYXJhdmVsLW1peC8uL3dlYi90aGVtZXMvcGlwcGlwL2Fzc2V0cy9zYXNzL2NvbXBvbmVudHMvX2ltYWdlLWNyZWRpdC5zY3NzIiwid2VicGFjazovL2xlZ2FjeS1sYXJhdmVsLW1peC8uL3dlYi90aGVtZXMvcGlwcGlwL2Fzc2V0cy9zYXNzL2NvbXBvbmVudHMvX3NpZGViYXIuc2NzcyIsIndlYnBhY2s6Ly9sZWdhY3ktbGFyYXZlbC1taXgvLi93ZWIvdGhlbWVzL3BpcHBpcC9hc3NldHMvc2Fzcy9jb21wb25lbnRzL19kaXNjb3Zlci5zY3NzIiwid2VicGFjazovL2xlZ2FjeS1sYXJhdmVsLW1peC8uL3dlYi90aGVtZXMvcGlwcGlwL2Fzc2V0cy9zYXNzL2NvbXBvbmVudHMvX2ZpbHRlcnMuc2NzcyIsIndlYnBhY2s6Ly9sZWdhY3ktbGFyYXZlbC1taXgvLi93ZWIvdGhlbWVzL3BpcHBpcC9hc3NldHMvc2Fzcy9jb21wb25lbnRzL192aWV3cy5zY3NzIiwid2VicGFjazovL2xlZ2FjeS1sYXJhdmVsLW1peC8uL3dlYi90aGVtZXMvcGlwcGlwL2Fzc2V0cy9zYXNzL2NvbXBvbmVudHMvX2NhbGVuZGFyLnNjc3MiLCJ3ZWJwYWNrOi8vbGVnYWN5LWxhcmF2ZWwtbWl4Ly4vd2ViL3RoZW1lcy9waXBwaXAvYXNzZXRzL3Nhc3MvY29tcG9uZW50cy9femFidXRvLWNhbGVuZGFyLnNjc3MiLCJ3ZWJwYWNrOi8vbGVnYWN5LWxhcmF2ZWwtbWl4Ly4vd2ViL3RoZW1lcy9waXBwaXAvYXNzZXRzL3Nhc3MvY29tcG9uZW50cy9fZGlhbG9nLnNjc3MiLCJ3ZWJwYWNrOi8vbGVnYWN5LWxhcmF2ZWwtbWl4Ly4vd2ViL3RoZW1lcy9waXBwaXAvYXNzZXRzL3Nhc3MvY29tcG9uZW50cy9fcGVyZm9ybWFuY2VzLnNjc3MiLCJ3ZWJwYWNrOi8vbGVnYWN5LWxhcmF2ZWwtbWl4Ly4vd2ViL3RoZW1lcy9waXBwaXAvYXNzZXRzL3Nhc3MvY29tcG9uZW50cy9fc3Bla3RyaXguc2NzcyIsIndlYnBhY2s6Ly9sZWdhY3ktbGFyYXZlbC1taXgvLi93ZWIvdGhlbWVzL3BpcHBpcC9hc3NldHMvc2Fzcy9jb21wb25lbnRzL19zY2hlZHVsZS5zY3NzIiwid2VicGFjazovL2xlZ2FjeS1sYXJhdmVsLW1peC8uL3dlYi90aGVtZXMvcGlwcGlwL2Fzc2V0cy9zYXNzL2NvbXBvbmVudHMvX2xpbmtzLnNjc3MiLCJ3ZWJwYWNrOi8vbGVnYWN5LWxhcmF2ZWwtbWl4Ly4vd2ViL3RoZW1lcy9waXBwaXAvYXNzZXRzL3Nhc3MvY29tcG9uZW50cy9fd28tc2lnbnBvc3Quc2NzcyIsIndlYnBhY2s6Ly9sZWdhY3ktbGFyYXZlbC1taXgvLi93ZWIvdGhlbWVzL3BpcHBpcC9hc3NldHMvc2Fzcy9wYWdlcy9fZnJvbnQuc2NzcyIsIndlYnBhY2s6Ly9sZWdhY3ktbGFyYXZlbC1taXgvLi93ZWIvdGhlbWVzL3BpcHBpcC9hc3NldHMvc2Fzcy9wYWdlcy9fdmlld3Muc2NzcyIsIndlYnBhY2s6Ly9sZWdhY3ktbGFyYXZlbC1taXgvLi93ZWIvdGhlbWVzL3BpcHBpcC9hc3NldHMvc2Fzcy9wYWdlcy9fbm9kZXMuc2NzcyIsIndlYnBhY2s6Ly9sZWdhY3ktbGFyYXZlbC1taXgvLi93ZWIvdGhlbWVzL3BpcHBpcC9hc3NldHMvc2Fzcy9wYWdlcy9fdGVhc2Vycy5zY3NzIiwid2VicGFjazovL2xlZ2FjeS1sYXJhdmVsLW1peC8uL3dlYi90aGVtZXMvcGlwcGlwL2Fzc2V0cy9zYXNzL3BhZ2VzL19yb3V0ZS5zY3NzIl0sInNvdXJjZXNDb250ZW50IjpbIkBjaGFyc2V0IFwiVVRGLThcIjtcbi8qISBub3JtYWxpemUuY3NzIHY4LjAuMCB8IE1JVCBMaWNlbnNlIHwgZ2l0aHViLmNvbS9uZWNvbGFzL25vcm1hbGl6ZS5jc3MgKi9cbi8qIERvY3VtZW50XG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBsaW5lIGhlaWdodCBpbiBhbGwgYnJvd3NlcnMuXG4gKiAyLiBQcmV2ZW50IGFkanVzdG1lbnRzIG9mIGZvbnQgc2l6ZSBhZnRlciBvcmllbnRhdGlvbiBjaGFuZ2VzIGluIGlPUy5cbiAqL1xuaHRtbCB7XG4gIGxpbmUtaGVpZ2h0OiAxLjI7XG4gIC8qIDEgKi9cbiAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlO1xuICAvKiAyICovXG59XG5cbi8qIFNlY3Rpb25zXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cbmJvZHkge1xuICBtYXJnaW46IDA7XG59XG5cbi8qKlxuICogQ29ycmVjdCB0aGUgZm9udCBzaXplIGFuZCBtYXJnaW4gb24gYGgxYCBlbGVtZW50cyB3aXRoaW4gYHNlY3Rpb25gIGFuZFxuICogYGFydGljbGVgIGNvbnRleHRzIGluIENocm9tZSwgRmlyZWZveCwgYW5kIFNhZmFyaS5cbiAqL1xuaDEge1xuICBmb250LXNpemU6IDJlbTtcbiAgbWFyZ2luOiAwLjY3ZW0gMDtcbn1cblxuLyogR3JvdXBpbmcgY29udGVudFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICogMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gRmlyZWZveC5cbiAqIDIuIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UgYW5kIElFLlxuICovXG5ociB7XG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICAvKiAxICovXG4gIGhlaWdodDogMDtcbiAgLyogMSAqL1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgLyogMiAqL1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIGluaGVyaXRhbmNlIGFuZCBzY2FsaW5nIG9mIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gKiAyLiBDb3JyZWN0IHRoZSBvZGQgYGVtYCBmb250IHNpemluZyBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cbnByZSB7XG4gIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTtcbiAgLyogMSAqL1xuICBmb250LXNpemU6IDFlbTtcbiAgLyogMiAqL1xufVxuXG4vKiBUZXh0LWxldmVsIHNlbWFudGljc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICogUmVtb3ZlIHRoZSBncmF5IGJhY2tncm91bmQgb24gYWN0aXZlIGxpbmtzIGluIElFIDEwLlxuICovXG5hIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbi8qKlxuICogMS4gUmVtb3ZlIHRoZSBib3R0b20gYm9yZGVyIGluIENocm9tZSA1Ny1cbiAqIDIuIEFkZCB0aGUgY29ycmVjdCB0ZXh0IGRlY29yYXRpb24gaW4gQ2hyb21lLCBFZGdlLCBJRSwgT3BlcmEsIGFuZCBTYWZhcmkuXG4gKi9cbmFiYnJbdGl0bGVdIHtcbiAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgLyogMSAqL1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgLyogMiAqL1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSBkb3R0ZWQ7XG4gIC8qIDIgKi9cbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZm9udCB3ZWlnaHQgaW4gQ2hyb21lLCBFZGdlLCBhbmQgU2FmYXJpLlxuICovXG5iLFxuc3Ryb25nIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGRlcjtcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICogMi4gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5jb2RlLFxua2JkLFxuc2FtcCB7XG4gIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTtcbiAgLyogMSAqL1xuICBmb250LXNpemU6IDFlbTtcbiAgLyogMiAqL1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5zbWFsbCB7XG4gIGZvbnQtc2l6ZTogODAlO1xufVxuXG4vKipcbiAqIFByZXZlbnQgYHN1YmAgYW5kIGBzdXBgIGVsZW1lbnRzIGZyb20gYWZmZWN0aW5nIHRoZSBsaW5lIGhlaWdodCBpblxuICogYWxsIGJyb3dzZXJzLlxuICovXG5zdWIsXG5zdXAge1xuICBmb250LXNpemU6IDc1JTtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG5zdWIge1xuICBib3R0b206IC0wLjI1ZW07XG59XG5cbnN1cCB7XG4gIHRvcDogLTAuNWVtO1xufVxuXG4vKiBFbWJlZGRlZCBjb250ZW50XG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiBSZW1vdmUgdGhlIGJvcmRlciBvbiBpbWFnZXMgaW5zaWRlIGxpbmtzIGluIElFIDEwLlxuICovXG5pbWcge1xuICBib3JkZXItc3R5bGU6IG5vbmU7XG59XG5cbi8qIEZvcm1zXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiAxLiBDaGFuZ2UgdGhlIGZvbnQgc3R5bGVzIGluIGFsbCBicm93c2Vycy5cbiAqIDIuIFJlbW92ZSB0aGUgbWFyZ2luIGluIEZpcmVmb3ggYW5kIFNhZmFyaS5cbiAqL1xuYnV0dG9uLFxuaW5wdXQsXG5vcHRncm91cCxcbnNlbGVjdCxcbnRleHRhcmVhIHtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIC8qIDEgKi9cbiAgZm9udC1zaXplOiAxMDAlO1xuICAvKiAxICovXG4gIGxpbmUtaGVpZ2h0OiAxLjE1O1xuICAvKiAxICovXG4gIG1hcmdpbjogMDtcbiAgLyogMiAqL1xufVxuXG4vKipcbiAqIFNob3cgdGhlIG92ZXJmbG93IGluIElFLlxuICogMS4gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZS5cbiAqL1xuYnV0dG9uLFxuaW5wdXQge1xuICAvKiAxICovXG4gIG92ZXJmbG93OiB2aXNpYmxlO1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRWRnZSwgRmlyZWZveCwgYW5kIElFLlxuICogMS4gUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBGaXJlZm94LlxuICovXG5idXR0b24sXG5zZWxlY3Qge1xuICAvKiAxICovXG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xufVxuXG4vKipcbiAqIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG4gKi9cbmJ1dHRvbixcblt0eXBlPWJ1dHRvbl0sXG5bdHlwZT1yZXNldF0sXG5bdHlwZT1zdWJtaXRdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247XG59XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBpbm5lciBib3JkZXIgYW5kIHBhZGRpbmcgaW4gRmlyZWZveC5cbiAqL1xuYnV0dG9uOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9YnV0dG9uXTo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPXJlc2V0XTo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPXN1Ym1pdF06Oi1tb3otZm9jdXMtaW5uZXIge1xuICBib3JkZXItc3R5bGU6IG5vbmU7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi8qKlxuICogUmVzdG9yZSB0aGUgZm9jdXMgc3R5bGVzIHVuc2V0IGJ5IHRoZSBwcmV2aW91cyBydWxlLlxuICovXG5idXR0b246LW1vei1mb2N1c3JpbmcsXG5bdHlwZT1idXR0b25dOi1tb3otZm9jdXNyaW5nLFxuW3R5cGU9cmVzZXRdOi1tb3otZm9jdXNyaW5nLFxuW3R5cGU9c3VibWl0XTotbW96LWZvY3VzcmluZyB7XG4gIG91dGxpbmU6IDFweCBkb3R0ZWQgQnV0dG9uVGV4dDtcbn1cblxuLyoqXG4gKiBDb3JyZWN0IHRoZSBwYWRkaW5nIGluIEZpcmVmb3guXG4gKi9cbmZpZWxkc2V0IHtcbiAgcGFkZGluZzogMC4zNWVtIDAuNzVlbSAwLjYyNWVtO1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIHRleHQgd3JhcHBpbmcgaW4gRWRnZSBhbmQgSUUuXG4gKiAyLiBDb3JyZWN0IHRoZSBjb2xvciBpbmhlcml0YW5jZSBmcm9tIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gSUUuXG4gKiAzLiBSZW1vdmUgdGhlIHBhZGRpbmcgc28gZGV2ZWxvcGVycyBhcmUgbm90IGNhdWdodCBvdXQgd2hlbiB0aGV5IHplcm8gb3V0XG4gKiAgICBgZmllbGRzZXRgIGVsZW1lbnRzIGluIGFsbCBicm93c2Vycy5cbiAqL1xubGVnZW5kIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgLyogMSAqL1xuICBjb2xvcjogaW5oZXJpdDtcbiAgLyogMiAqL1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgLyogMSAqL1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIC8qIDEgKi9cbiAgcGFkZGluZzogMDtcbiAgLyogMyAqL1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICAvKiAxICovXG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IHZlcnRpY2FsIGFsaWdubWVudCBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBPcGVyYS5cbiAqL1xucHJvZ3Jlc3Mge1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBkZWZhdWx0IHZlcnRpY2FsIHNjcm9sbGJhciBpbiBJRSAxMCsuXG4gKi9cbnRleHRhcmVhIHtcbiAgb3ZlcmZsb3c6IGF1dG87XG59XG5cbi8qKlxuICogMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gSUUgMTAuXG4gKiAyLiBSZW1vdmUgdGhlIHBhZGRpbmcgaW4gSUUgMTAuXG4gKi9cblt0eXBlPWNoZWNrYm94XSxcblt0eXBlPXJhZGlvXSB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIC8qIDEgKi9cbiAgcGFkZGluZzogMDtcbiAgLyogMiAqL1xufVxuXG4vKipcbiAqIENvcnJlY3QgdGhlIGN1cnNvciBzdHlsZSBvZiBpbmNyZW1lbnQgYW5kIGRlY3JlbWVudCBidXR0b25zIGluIENocm9tZS5cbiAqL1xuW3R5cGU9bnVtYmVyXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcblt0eXBlPW51bWJlcl06Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24ge1xuICBoZWlnaHQ6IGF1dG87XG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgb2RkIGFwcGVhcmFuY2UgaW4gQ2hyb21lIGFuZCBTYWZhcmkuXG4gKiAyLiBDb3JyZWN0IHRoZSBvdXRsaW5lIHN0eWxlIGluIFNhZmFyaS5cbiAqL1xuW3R5cGU9c2VhcmNoXSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogdGV4dGZpZWxkO1xuICAvKiAxICovXG4gIG91dGxpbmUtb2Zmc2V0OiAtMnB4O1xuICAvKiAyICovXG59XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBpbm5lciBwYWRkaW5nIGluIENocm9tZSBhbmQgU2FmYXJpIG9uIG1hY09TLlxuICovXG5bdHlwZT1zZWFyY2hdOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG4gKiAyLiBDaGFuZ2UgZm9udCBwcm9wZXJ0aWVzIHRvIGBpbmhlcml0YCBpbiBTYWZhcmkuXG4gKi9cbjo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjtcbiAgLyogMSAqL1xuICBmb250OiBpbmhlcml0O1xuICAvKiAyICovXG59XG5cbi8qIEludGVyYWN0aXZlXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLypcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIEVkZ2UsIElFIDEwKywgYW5kIEZpcmVmb3guXG4gKi9cbmRldGFpbHMge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLypcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIGFsbCBicm93c2Vycy5cbiAqL1xuc3VtbWFyeSB7XG4gIGRpc3BsYXk6IGxpc3QtaXRlbTtcbn1cblxuLyogTWlzY1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgMTArLlxuICovXG50ZW1wbGF0ZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgMTAuXG4gKi9cbltoaWRkZW5dIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuKixcbio6OmFmdGVyLFxuKjo6YmVmb3JlIHtcbiAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cbjpyb290IHtcbiAgLS1yZWZsZXgtY29sdW1uczogMTI7XG4gIC0tcmVmbGV4LWdyaWQtc3BhY2luZzogMTVweDtcbiAgLS1yZWZsZXgteHM6IDU3NnB4O1xuICAtLXJlZmxleC1zbTogNzY4cHg7XG4gIC0tcmVmbGV4LW1kOiA5OTJweDtcbiAgLS1yZWZsZXgtbGc6IDEyMDBweDtcbiAgLS1yZWZsZXgteGxnOiAxNjAwcHg7XG4gIC0tcmVmbGV4LXh4cy1tYXg6IDU3NXB4O1xuICAtLXJlZmxleC14cy1tYXg6IDc2N3B4O1xuICAtLXJlZmxleC1zbS1tYXg6IDk5MXB4O1xuICAtLXJlZmxleC1tZC1tYXg6IDExOTlweDtcbiAgLS1yZWZsZXgtbGctbWF4OiAxNTk5cHg7XG59XG5cbi5jb250YWluZXIsXG4uY29udGFpbmVyLWZ1bGwge1xuICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIHBhZGRpbmctcmlnaHQ6IDMwcHg7XG4gIHBhZGRpbmctbGVmdDogMzBweDtcbn1cbi5jb250YWluZXIgLmdyaWQsXG4uY29udGFpbmVyLWZ1bGwgLmdyaWQge1xuICBtYXJnaW4tcmlnaHQ6IC0xNXB4O1xuICBtYXJnaW4tbGVmdDogLTE1cHg7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA1NzZweCkge1xuICAuY29udGFpbmVyIHtcbiAgICBtYXgtd2lkdGg6IDU3NnB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNvbnRhaW5lciB7XG4gICAgbWF4LXdpZHRoOiA3NjhweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5jb250YWluZXIge1xuICAgIG1heC13aWR0aDogOTkycHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLmNvbnRhaW5lciB7XG4gICAgbWF4LXdpZHRoOiAxMjAwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxNjAwcHgpIHtcbiAgLmNvbnRhaW5lciB7XG4gICAgbWF4LXdpZHRoOiAxNjAwcHg7XG4gIH1cbn1cblxuLmdyaWQge1xuICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xuICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIC1tcy1mbGV4LXdyYXA6IHdyYXA7XG4gIC13ZWJraXQtZmxleC13cmFwOiB3cmFwO1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxldHRlci1zcGFjaW5nOiAtMC4zMWVtO1xuICAqbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDtcbiAgd29yZC1zcGFjaW5nOiAtMC40M2VtO1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG59XG4uZ3JpZDo6YmVmb3JlLCAuZ3JpZDo6YWZ0ZXIge1xuICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDtcbiAgd29yZC1zcGFjaW5nOiBub3JtYWw7XG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7XG59XG5cbltjbGFzcyo9Y29sLV0ge1xuICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDtcbiAgd29yZC1zcGFjaW5nOiBub3JtYWw7XG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gIHBhZGRpbmc6IDE1cHg7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgKmRpc3BsYXk6IGlubGluZTtcbiAgem9vbTogMTtcbn1cbltjbGFzcyo9Y29sLV06OmJlZm9yZSwgW2NsYXNzKj1jb2wtXTo6YWZ0ZXIge1xuICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDtcbiAgd29yZC1zcGFjaW5nOiBub3JtYWw7XG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7XG59XG5bY2xhc3MqPWNvbC1dIC5ncmlkIHtcbiAgLW1zLWZsZXg6IDEgMSBhdXRvO1xuICAtd2Via2l0LWZsZXg6IDEgMSBhdXRvO1xuICBmbGV4OiAxIDEgYXV0bztcbiAgbWFyZ2luOiAtMTVweDtcbn1cblxuLmNvbC0xMiB7XG4gIHdpZHRoOiAxMDAlO1xuICAqd2lkdGg6IDk5LjklO1xufVxuXG4uY29sLTExIHtcbiAgd2lkdGg6IDkxLjY2NjY2NjY2NjclO1xuICAqd2lkdGg6IDkxLjU2NjY2NjY2NjclO1xufVxuXG4uY29sLTEwIHtcbiAgd2lkdGg6IDgzLjMzMzMzMzMzMzMlO1xuICAqd2lkdGg6IDgzLjIzMzMzMzMzMzMlO1xufVxuXG4uY29sLTkge1xuICB3aWR0aDogNzUlO1xuICAqd2lkdGg6IDc0LjklO1xufVxuXG4uY29sLTgge1xuICB3aWR0aDogNjYuNjY2NjY2NjY2NyU7XG4gICp3aWR0aDogNjYuNTY2NjY2NjY2NyU7XG59XG5cbi5jb2wtNyB7XG4gIHdpZHRoOiA1OC4zMzMzMzMzMzMzJTtcbiAgKndpZHRoOiA1OC4yMzMzMzMzMzMzJTtcbn1cblxuLmNvbC02IHtcbiAgd2lkdGg6IDUwJTtcbiAgKndpZHRoOiA0OS45JTtcbn1cblxuLmNvbC01IHtcbiAgd2lkdGg6IDQxLjY2NjY2NjY2NjclO1xuICAqd2lkdGg6IDQxLjU2NjY2NjY2NjclO1xufVxuXG4uY29sLTQge1xuICB3aWR0aDogMzMuMzMzMzMzMzMzMyU7XG4gICp3aWR0aDogMzMuMjMzMzMzMzMzMyU7XG59XG5cbi5jb2wtMyB7XG4gIHdpZHRoOiAyNSU7XG4gICp3aWR0aDogMjQuOSU7XG59XG5cbi5jb2wtMiB7XG4gIHdpZHRoOiAxNi42NjY2NjY2NjY3JTtcbiAgKndpZHRoOiAxNi41NjY2NjY2NjY3JTtcbn1cblxuLmNvbC0xIHtcbiAgd2lkdGg6IDguMzMzMzMzMzMzMyU7XG4gICp3aWR0aDogOC4yMzMzMzMzMzMzJTtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDU3NnB4KSB7XG4gIC5jb2wteHMtMTIge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgICp3aWR0aDogOTkuOSU7XG4gIH1cblxuICAuY29sLXhzLTExIHtcbiAgICB3aWR0aDogOTEuNjY2NjY2NjY2NyU7XG4gICAgKndpZHRoOiA5MS41NjY2NjY2NjY3JTtcbiAgfVxuXG4gIC5jb2wteHMtMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMzMzMzMzJTtcbiAgICAqd2lkdGg6IDgzLjIzMzMzMzMzMzMlO1xuICB9XG5cbiAgLmNvbC14cy05IHtcbiAgICB3aWR0aDogNzUlO1xuICAgICp3aWR0aDogNzQuOSU7XG4gIH1cblxuICAuY29sLXhzLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NjY2NjY3JTtcbiAgICAqd2lkdGg6IDY2LjU2NjY2NjY2NjclO1xuICB9XG5cbiAgLmNvbC14cy03IHtcbiAgICB3aWR0aDogNTguMzMzMzMzMzMzMyU7XG4gICAgKndpZHRoOiA1OC4yMzMzMzMzMzMzJTtcbiAgfVxuXG4gIC5jb2wteHMtNiB7XG4gICAgd2lkdGg6IDUwJTtcbiAgICAqd2lkdGg6IDQ5LjklO1xuICB9XG5cbiAgLmNvbC14cy01IHtcbiAgICB3aWR0aDogNDEuNjY2NjY2NjY2NyU7XG4gICAgKndpZHRoOiA0MS41NjY2NjY2NjY3JTtcbiAgfVxuXG4gIC5jb2wteHMtNCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzMzMzMzMlO1xuICAgICp3aWR0aDogMzMuMjMzMzMzMzMzMyU7XG4gIH1cblxuICAuY29sLXhzLTMge1xuICAgIHdpZHRoOiAyNSU7XG4gICAgKndpZHRoOiAyNC45JTtcbiAgfVxuXG4gIC5jb2wteHMtMiB7XG4gICAgd2lkdGg6IDE2LjY2NjY2NjY2NjclO1xuICAgICp3aWR0aDogMTYuNTY2NjY2NjY2NyU7XG4gIH1cblxuICAuY29sLXhzLTEge1xuICAgIHdpZHRoOiA4LjMzMzMzMzMzMzMlO1xuICAgICp3aWR0aDogOC4yMzMzMzMzMzMzJTtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jb2wtc20tMTIge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgICp3aWR0aDogOTkuOSU7XG4gIH1cblxuICAuY29sLXNtLTExIHtcbiAgICB3aWR0aDogOTEuNjY2NjY2NjY2NyU7XG4gICAgKndpZHRoOiA5MS41NjY2NjY2NjY3JTtcbiAgfVxuXG4gIC5jb2wtc20tMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMzMzMzMzJTtcbiAgICAqd2lkdGg6IDgzLjIzMzMzMzMzMzMlO1xuICB9XG5cbiAgLmNvbC1zbS05IHtcbiAgICB3aWR0aDogNzUlO1xuICAgICp3aWR0aDogNzQuOSU7XG4gIH1cblxuICAuY29sLXNtLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NjY2NjY3JTtcbiAgICAqd2lkdGg6IDY2LjU2NjY2NjY2NjclO1xuICB9XG5cbiAgLmNvbC1zbS03IHtcbiAgICB3aWR0aDogNTguMzMzMzMzMzMzMyU7XG4gICAgKndpZHRoOiA1OC4yMzMzMzMzMzMzJTtcbiAgfVxuXG4gIC5jb2wtc20tNiB7XG4gICAgd2lkdGg6IDUwJTtcbiAgICAqd2lkdGg6IDQ5LjklO1xuICB9XG5cbiAgLmNvbC1zbS01IHtcbiAgICB3aWR0aDogNDEuNjY2NjY2NjY2NyU7XG4gICAgKndpZHRoOiA0MS41NjY2NjY2NjY3JTtcbiAgfVxuXG4gIC5jb2wtc20tNCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzMzMzMzMlO1xuICAgICp3aWR0aDogMzMuMjMzMzMzMzMzMyU7XG4gIH1cblxuICAuY29sLXNtLTMge1xuICAgIHdpZHRoOiAyNSU7XG4gICAgKndpZHRoOiAyNC45JTtcbiAgfVxuXG4gIC5jb2wtc20tMiB7XG4gICAgd2lkdGg6IDE2LjY2NjY2NjY2NjclO1xuICAgICp3aWR0aDogMTYuNTY2NjY2NjY2NyU7XG4gIH1cblxuICAuY29sLXNtLTEge1xuICAgIHdpZHRoOiA4LjMzMzMzMzMzMzMlO1xuICAgICp3aWR0aDogOC4yMzMzMzMzMzMzJTtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5jb2wtbWQtMTIge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgICp3aWR0aDogOTkuOSU7XG4gIH1cblxuICAuY29sLW1kLTExIHtcbiAgICB3aWR0aDogOTEuNjY2NjY2NjY2NyU7XG4gICAgKndpZHRoOiA5MS41NjY2NjY2NjY3JTtcbiAgfVxuXG4gIC5jb2wtbWQtMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMzMzMzMzJTtcbiAgICAqd2lkdGg6IDgzLjIzMzMzMzMzMzMlO1xuICB9XG5cbiAgLmNvbC1tZC05IHtcbiAgICB3aWR0aDogNzUlO1xuICAgICp3aWR0aDogNzQuOSU7XG4gIH1cblxuICAuY29sLW1kLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NjY2NjY3JTtcbiAgICAqd2lkdGg6IDY2LjU2NjY2NjY2NjclO1xuICB9XG5cbiAgLmNvbC1tZC03IHtcbiAgICB3aWR0aDogNTguMzMzMzMzMzMzMyU7XG4gICAgKndpZHRoOiA1OC4yMzMzMzMzMzMzJTtcbiAgfVxuXG4gIC5jb2wtbWQtNiB7XG4gICAgd2lkdGg6IDUwJTtcbiAgICAqd2lkdGg6IDQ5LjklO1xuICB9XG5cbiAgLmNvbC1tZC01IHtcbiAgICB3aWR0aDogNDEuNjY2NjY2NjY2NyU7XG4gICAgKndpZHRoOiA0MS41NjY2NjY2NjY3JTtcbiAgfVxuXG4gIC5jb2wtbWQtNCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzMzMzMzMlO1xuICAgICp3aWR0aDogMzMuMjMzMzMzMzMzMyU7XG4gIH1cblxuICAuY29sLW1kLTMge1xuICAgIHdpZHRoOiAyNSU7XG4gICAgKndpZHRoOiAyNC45JTtcbiAgfVxuXG4gIC5jb2wtbWQtMiB7XG4gICAgd2lkdGg6IDE2LjY2NjY2NjY2NjclO1xuICAgICp3aWR0aDogMTYuNTY2NjY2NjY2NyU7XG4gIH1cblxuICAuY29sLW1kLTEge1xuICAgIHdpZHRoOiA4LjMzMzMzMzMzMzMlO1xuICAgICp3aWR0aDogOC4yMzMzMzMzMzMzJTtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAuY29sLWxnLTEyIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICAqd2lkdGg6IDk5LjklO1xuICB9XG5cbiAgLmNvbC1sZy0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY2NjY2NjclO1xuICAgICp3aWR0aDogOTEuNTY2NjY2NjY2NyU7XG4gIH1cblxuICAuY29sLWxnLTEwIHtcbiAgICB3aWR0aDogODMuMzMzMzMzMzMzMyU7XG4gICAgKndpZHRoOiA4My4yMzMzMzMzMzMzJTtcbiAgfVxuXG4gIC5jb2wtbGctOSB7XG4gICAgd2lkdGg6IDc1JTtcbiAgICAqd2lkdGg6IDc0LjklO1xuICB9XG5cbiAgLmNvbC1sZy04IHtcbiAgICB3aWR0aDogNjYuNjY2NjY2NjY2NyU7XG4gICAgKndpZHRoOiA2Ni41NjY2NjY2NjY3JTtcbiAgfVxuXG4gIC5jb2wtbGctNyB7XG4gICAgd2lkdGg6IDU4LjMzMzMzMzMzMzMlO1xuICAgICp3aWR0aDogNTguMjMzMzMzMzMzMyU7XG4gIH1cblxuICAuY29sLWxnLTYge1xuICAgIHdpZHRoOiA1MCU7XG4gICAgKndpZHRoOiA0OS45JTtcbiAgfVxuXG4gIC5jb2wtbGctNSB7XG4gICAgd2lkdGg6IDQxLjY2NjY2NjY2NjclO1xuICAgICp3aWR0aDogNDEuNTY2NjY2NjY2NyU7XG4gIH1cblxuICAuY29sLWxnLTQge1xuICAgIHdpZHRoOiAzMy4zMzMzMzMzMzMzJTtcbiAgICAqd2lkdGg6IDMzLjIzMzMzMzMzMzMlO1xuICB9XG5cbiAgLmNvbC1sZy0zIHtcbiAgICB3aWR0aDogMjUlO1xuICAgICp3aWR0aDogMjQuOSU7XG4gIH1cblxuICAuY29sLWxnLTIge1xuICAgIHdpZHRoOiAxNi42NjY2NjY2NjY3JTtcbiAgICAqd2lkdGg6IDE2LjU2NjY2NjY2NjclO1xuICB9XG5cbiAgLmNvbC1sZy0xIHtcbiAgICB3aWR0aDogOC4zMzMzMzMzMzMzJTtcbiAgICAqd2lkdGg6IDguMjMzMzMzMzMzMyU7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxNjAwcHgpIHtcbiAgLmNvbC14bGctMTIge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgICp3aWR0aDogOTkuOSU7XG4gIH1cblxuICAuY29sLXhsZy0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY2NjY2NjclO1xuICAgICp3aWR0aDogOTEuNTY2NjY2NjY2NyU7XG4gIH1cblxuICAuY29sLXhsZy0xMCB7XG4gICAgd2lkdGg6IDgzLjMzMzMzMzMzMzMlO1xuICAgICp3aWR0aDogODMuMjMzMzMzMzMzMyU7XG4gIH1cblxuICAuY29sLXhsZy05IHtcbiAgICB3aWR0aDogNzUlO1xuICAgICp3aWR0aDogNzQuOSU7XG4gIH1cblxuICAuY29sLXhsZy04IHtcbiAgICB3aWR0aDogNjYuNjY2NjY2NjY2NyU7XG4gICAgKndpZHRoOiA2Ni41NjY2NjY2NjY3JTtcbiAgfVxuXG4gIC5jb2wteGxnLTcge1xuICAgIHdpZHRoOiA1OC4zMzMzMzMzMzMzJTtcbiAgICAqd2lkdGg6IDU4LjIzMzMzMzMzMzMlO1xuICB9XG5cbiAgLmNvbC14bGctNiB7XG4gICAgd2lkdGg6IDUwJTtcbiAgICAqd2lkdGg6IDQ5LjklO1xuICB9XG5cbiAgLmNvbC14bGctNSB7XG4gICAgd2lkdGg6IDQxLjY2NjY2NjY2NjclO1xuICAgICp3aWR0aDogNDEuNTY2NjY2NjY2NyU7XG4gIH1cblxuICAuY29sLXhsZy00IHtcbiAgICB3aWR0aDogMzMuMzMzMzMzMzMzMyU7XG4gICAgKndpZHRoOiAzMy4yMzMzMzMzMzMzJTtcbiAgfVxuXG4gIC5jb2wteGxnLTMge1xuICAgIHdpZHRoOiAyNSU7XG4gICAgKndpZHRoOiAyNC45JTtcbiAgfVxuXG4gIC5jb2wteGxnLTIge1xuICAgIHdpZHRoOiAxNi42NjY2NjY2NjY3JTtcbiAgICAqd2lkdGg6IDE2LjU2NjY2NjY2NjclO1xuICB9XG5cbiAgLmNvbC14bGctMSB7XG4gICAgd2lkdGg6IDguMzMzMzMzMzMzMyU7XG4gICAgKndpZHRoOiA4LjIzMzMzMzMzMzMlO1xuICB9XG59XG4uY29sLWF1dG8ge1xuICAtbXMtZmxleDogMSAwIDBweDtcbiAgLXdlYmtpdC1mbGV4OiAxIDAgMHB4O1xuICBmbGV4OiAxIDAgMHB4O1xuICB3aWR0aDogYXV0bztcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDU3NnB4KSB7XG4gIC5jb2wteHMtYXV0byB7XG4gICAgLW1zLWZsZXg6IDEgMCAwcHg7XG4gICAgLXdlYmtpdC1mbGV4OiAxIDAgMHB4O1xuICAgIGZsZXg6IDEgMCAwcHg7XG4gICAgd2lkdGg6IGF1dG87XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuY29sLXNtLWF1dG8ge1xuICAgIC1tcy1mbGV4OiAxIDAgMHB4O1xuICAgIC13ZWJraXQtZmxleDogMSAwIDBweDtcbiAgICBmbGV4OiAxIDAgMHB4O1xuICAgIHdpZHRoOiBhdXRvO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLmNvbC1tZC1hdXRvIHtcbiAgICAtbXMtZmxleDogMSAwIDBweDtcbiAgICAtd2Via2l0LWZsZXg6IDEgMCAwcHg7XG4gICAgZmxleDogMSAwIDBweDtcbiAgICB3aWR0aDogYXV0bztcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAuY29sLWxnLWF1dG8ge1xuICAgIC1tcy1mbGV4OiAxIDAgMHB4O1xuICAgIC13ZWJraXQtZmxleDogMSAwIDBweDtcbiAgICBmbGV4OiAxIDAgMHB4O1xuICAgIHdpZHRoOiBhdXRvO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTYwMHB4KSB7XG4gIC5jb2wteGxnLWF1dG8ge1xuICAgIC1tcy1mbGV4OiAxIDAgMHB4O1xuICAgIC13ZWJraXQtZmxleDogMSAwIDBweDtcbiAgICBmbGV4OiAxIDAgMHB4O1xuICAgIHdpZHRoOiBhdXRvO1xuICB9XG59XG4ub3JkZXItMTIge1xuICAtbXMtZmxleC1vcmRlcjogMTI7XG4gIC13ZWJraXQtb3JkZXI6IDEyO1xuICBvcmRlcjogMTI7XG59XG5cbi5vcmRlci0xMSB7XG4gIC1tcy1mbGV4LW9yZGVyOiAxMTtcbiAgLXdlYmtpdC1vcmRlcjogMTE7XG4gIG9yZGVyOiAxMTtcbn1cblxuLm9yZGVyLTEwIHtcbiAgLW1zLWZsZXgtb3JkZXI6IDEwO1xuICAtd2Via2l0LW9yZGVyOiAxMDtcbiAgb3JkZXI6IDEwO1xufVxuXG4ub3JkZXItOSB7XG4gIC1tcy1mbGV4LW9yZGVyOiA5O1xuICAtd2Via2l0LW9yZGVyOiA5O1xuICBvcmRlcjogOTtcbn1cblxuLm9yZGVyLTgge1xuICAtbXMtZmxleC1vcmRlcjogODtcbiAgLXdlYmtpdC1vcmRlcjogODtcbiAgb3JkZXI6IDg7XG59XG5cbi5vcmRlci03IHtcbiAgLW1zLWZsZXgtb3JkZXI6IDc7XG4gIC13ZWJraXQtb3JkZXI6IDc7XG4gIG9yZGVyOiA3O1xufVxuXG4ub3JkZXItNiB7XG4gIC1tcy1mbGV4LW9yZGVyOiA2O1xuICAtd2Via2l0LW9yZGVyOiA2O1xuICBvcmRlcjogNjtcbn1cblxuLm9yZGVyLTUge1xuICAtbXMtZmxleC1vcmRlcjogNTtcbiAgLXdlYmtpdC1vcmRlcjogNTtcbiAgb3JkZXI6IDU7XG59XG5cbi5vcmRlci00IHtcbiAgLW1zLWZsZXgtb3JkZXI6IDQ7XG4gIC13ZWJraXQtb3JkZXI6IDQ7XG4gIG9yZGVyOiA0O1xufVxuXG4ub3JkZXItMyB7XG4gIC1tcy1mbGV4LW9yZGVyOiAzO1xuICAtd2Via2l0LW9yZGVyOiAzO1xuICBvcmRlcjogMztcbn1cblxuLm9yZGVyLTIge1xuICAtbXMtZmxleC1vcmRlcjogMjtcbiAgLXdlYmtpdC1vcmRlcjogMjtcbiAgb3JkZXI6IDI7XG59XG5cbi5vcmRlci0xIHtcbiAgLW1zLWZsZXgtb3JkZXI6IDE7XG4gIC13ZWJraXQtb3JkZXI6IDE7XG4gIG9yZGVyOiAxO1xufVxuXG4ub3JkZXItMCB7XG4gIC1tcy1mbGV4LW9yZGVyOiAwO1xuICAtd2Via2l0LW9yZGVyOiAwO1xuICBvcmRlcjogMDtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDU3NnB4KSB7XG4gIC5vcmRlci14cy0xMiB7XG4gICAgLW1zLWZsZXgtb3JkZXI6IDEyO1xuICAgIC13ZWJraXQtb3JkZXI6IDEyO1xuICAgIG9yZGVyOiAxMjtcbiAgfVxuXG4gIC5vcmRlci14cy0xMSB7XG4gICAgLW1zLWZsZXgtb3JkZXI6IDExO1xuICAgIC13ZWJraXQtb3JkZXI6IDExO1xuICAgIG9yZGVyOiAxMTtcbiAgfVxuXG4gIC5vcmRlci14cy0xMCB7XG4gICAgLW1zLWZsZXgtb3JkZXI6IDEwO1xuICAgIC13ZWJraXQtb3JkZXI6IDEwO1xuICAgIG9yZGVyOiAxMDtcbiAgfVxuXG4gIC5vcmRlci14cy05IHtcbiAgICAtbXMtZmxleC1vcmRlcjogOTtcbiAgICAtd2Via2l0LW9yZGVyOiA5O1xuICAgIG9yZGVyOiA5O1xuICB9XG5cbiAgLm9yZGVyLXhzLTgge1xuICAgIC1tcy1mbGV4LW9yZGVyOiA4O1xuICAgIC13ZWJraXQtb3JkZXI6IDg7XG4gICAgb3JkZXI6IDg7XG4gIH1cblxuICAub3JkZXIteHMtNyB7XG4gICAgLW1zLWZsZXgtb3JkZXI6IDc7XG4gICAgLXdlYmtpdC1vcmRlcjogNztcbiAgICBvcmRlcjogNztcbiAgfVxuXG4gIC5vcmRlci14cy02IHtcbiAgICAtbXMtZmxleC1vcmRlcjogNjtcbiAgICAtd2Via2l0LW9yZGVyOiA2O1xuICAgIG9yZGVyOiA2O1xuICB9XG5cbiAgLm9yZGVyLXhzLTUge1xuICAgIC1tcy1mbGV4LW9yZGVyOiA1O1xuICAgIC13ZWJraXQtb3JkZXI6IDU7XG4gICAgb3JkZXI6IDU7XG4gIH1cblxuICAub3JkZXIteHMtNCB7XG4gICAgLW1zLWZsZXgtb3JkZXI6IDQ7XG4gICAgLXdlYmtpdC1vcmRlcjogNDtcbiAgICBvcmRlcjogNDtcbiAgfVxuXG4gIC5vcmRlci14cy0zIHtcbiAgICAtbXMtZmxleC1vcmRlcjogMztcbiAgICAtd2Via2l0LW9yZGVyOiAzO1xuICAgIG9yZGVyOiAzO1xuICB9XG5cbiAgLm9yZGVyLXhzLTIge1xuICAgIC1tcy1mbGV4LW9yZGVyOiAyO1xuICAgIC13ZWJraXQtb3JkZXI6IDI7XG4gICAgb3JkZXI6IDI7XG4gIH1cblxuICAub3JkZXIteHMtMSB7XG4gICAgLW1zLWZsZXgtb3JkZXI6IDE7XG4gICAgLXdlYmtpdC1vcmRlcjogMTtcbiAgICBvcmRlcjogMTtcbiAgfVxuXG4gIC5vcmRlci14cy0wIHtcbiAgICAtbXMtZmxleC1vcmRlcjogMDtcbiAgICAtd2Via2l0LW9yZGVyOiAwO1xuICAgIG9yZGVyOiAwO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLm9yZGVyLXNtLTEyIHtcbiAgICAtbXMtZmxleC1vcmRlcjogMTI7XG4gICAgLXdlYmtpdC1vcmRlcjogMTI7XG4gICAgb3JkZXI6IDEyO1xuICB9XG5cbiAgLm9yZGVyLXNtLTExIHtcbiAgICAtbXMtZmxleC1vcmRlcjogMTE7XG4gICAgLXdlYmtpdC1vcmRlcjogMTE7XG4gICAgb3JkZXI6IDExO1xuICB9XG5cbiAgLm9yZGVyLXNtLTEwIHtcbiAgICAtbXMtZmxleC1vcmRlcjogMTA7XG4gICAgLXdlYmtpdC1vcmRlcjogMTA7XG4gICAgb3JkZXI6IDEwO1xuICB9XG5cbiAgLm9yZGVyLXNtLTkge1xuICAgIC1tcy1mbGV4LW9yZGVyOiA5O1xuICAgIC13ZWJraXQtb3JkZXI6IDk7XG4gICAgb3JkZXI6IDk7XG4gIH1cblxuICAub3JkZXItc20tOCB7XG4gICAgLW1zLWZsZXgtb3JkZXI6IDg7XG4gICAgLXdlYmtpdC1vcmRlcjogODtcbiAgICBvcmRlcjogODtcbiAgfVxuXG4gIC5vcmRlci1zbS03IHtcbiAgICAtbXMtZmxleC1vcmRlcjogNztcbiAgICAtd2Via2l0LW9yZGVyOiA3O1xuICAgIG9yZGVyOiA3O1xuICB9XG5cbiAgLm9yZGVyLXNtLTYge1xuICAgIC1tcy1mbGV4LW9yZGVyOiA2O1xuICAgIC13ZWJraXQtb3JkZXI6IDY7XG4gICAgb3JkZXI6IDY7XG4gIH1cblxuICAub3JkZXItc20tNSB7XG4gICAgLW1zLWZsZXgtb3JkZXI6IDU7XG4gICAgLXdlYmtpdC1vcmRlcjogNTtcbiAgICBvcmRlcjogNTtcbiAgfVxuXG4gIC5vcmRlci1zbS00IHtcbiAgICAtbXMtZmxleC1vcmRlcjogNDtcbiAgICAtd2Via2l0LW9yZGVyOiA0O1xuICAgIG9yZGVyOiA0O1xuICB9XG5cbiAgLm9yZGVyLXNtLTMge1xuICAgIC1tcy1mbGV4LW9yZGVyOiAzO1xuICAgIC13ZWJraXQtb3JkZXI6IDM7XG4gICAgb3JkZXI6IDM7XG4gIH1cblxuICAub3JkZXItc20tMiB7XG4gICAgLW1zLWZsZXgtb3JkZXI6IDI7XG4gICAgLXdlYmtpdC1vcmRlcjogMjtcbiAgICBvcmRlcjogMjtcbiAgfVxuXG4gIC5vcmRlci1zbS0xIHtcbiAgICAtbXMtZmxleC1vcmRlcjogMTtcbiAgICAtd2Via2l0LW9yZGVyOiAxO1xuICAgIG9yZGVyOiAxO1xuICB9XG5cbiAgLm9yZGVyLXNtLTAge1xuICAgIC1tcy1mbGV4LW9yZGVyOiAwO1xuICAgIC13ZWJraXQtb3JkZXI6IDA7XG4gICAgb3JkZXI6IDA7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAub3JkZXItbWQtMTIge1xuICAgIC1tcy1mbGV4LW9yZGVyOiAxMjtcbiAgICAtd2Via2l0LW9yZGVyOiAxMjtcbiAgICBvcmRlcjogMTI7XG4gIH1cblxuICAub3JkZXItbWQtMTEge1xuICAgIC1tcy1mbGV4LW9yZGVyOiAxMTtcbiAgICAtd2Via2l0LW9yZGVyOiAxMTtcbiAgICBvcmRlcjogMTE7XG4gIH1cblxuICAub3JkZXItbWQtMTAge1xuICAgIC1tcy1mbGV4LW9yZGVyOiAxMDtcbiAgICAtd2Via2l0LW9yZGVyOiAxMDtcbiAgICBvcmRlcjogMTA7XG4gIH1cblxuICAub3JkZXItbWQtOSB7XG4gICAgLW1zLWZsZXgtb3JkZXI6IDk7XG4gICAgLXdlYmtpdC1vcmRlcjogOTtcbiAgICBvcmRlcjogOTtcbiAgfVxuXG4gIC5vcmRlci1tZC04IHtcbiAgICAtbXMtZmxleC1vcmRlcjogODtcbiAgICAtd2Via2l0LW9yZGVyOiA4O1xuICAgIG9yZGVyOiA4O1xuICB9XG5cbiAgLm9yZGVyLW1kLTcge1xuICAgIC1tcy1mbGV4LW9yZGVyOiA3O1xuICAgIC13ZWJraXQtb3JkZXI6IDc7XG4gICAgb3JkZXI6IDc7XG4gIH1cblxuICAub3JkZXItbWQtNiB7XG4gICAgLW1zLWZsZXgtb3JkZXI6IDY7XG4gICAgLXdlYmtpdC1vcmRlcjogNjtcbiAgICBvcmRlcjogNjtcbiAgfVxuXG4gIC5vcmRlci1tZC01IHtcbiAgICAtbXMtZmxleC1vcmRlcjogNTtcbiAgICAtd2Via2l0LW9yZGVyOiA1O1xuICAgIG9yZGVyOiA1O1xuICB9XG5cbiAgLm9yZGVyLW1kLTQge1xuICAgIC1tcy1mbGV4LW9yZGVyOiA0O1xuICAgIC13ZWJraXQtb3JkZXI6IDQ7XG4gICAgb3JkZXI6IDQ7XG4gIH1cblxuICAub3JkZXItbWQtMyB7XG4gICAgLW1zLWZsZXgtb3JkZXI6IDM7XG4gICAgLXdlYmtpdC1vcmRlcjogMztcbiAgICBvcmRlcjogMztcbiAgfVxuXG4gIC5vcmRlci1tZC0yIHtcbiAgICAtbXMtZmxleC1vcmRlcjogMjtcbiAgICAtd2Via2l0LW9yZGVyOiAyO1xuICAgIG9yZGVyOiAyO1xuICB9XG5cbiAgLm9yZGVyLW1kLTEge1xuICAgIC1tcy1mbGV4LW9yZGVyOiAxO1xuICAgIC13ZWJraXQtb3JkZXI6IDE7XG4gICAgb3JkZXI6IDE7XG4gIH1cblxuICAub3JkZXItbWQtMCB7XG4gICAgLW1zLWZsZXgtb3JkZXI6IDA7XG4gICAgLXdlYmtpdC1vcmRlcjogMDtcbiAgICBvcmRlcjogMDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAub3JkZXItbGctMTIge1xuICAgIC1tcy1mbGV4LW9yZGVyOiAxMjtcbiAgICAtd2Via2l0LW9yZGVyOiAxMjtcbiAgICBvcmRlcjogMTI7XG4gIH1cblxuICAub3JkZXItbGctMTEge1xuICAgIC1tcy1mbGV4LW9yZGVyOiAxMTtcbiAgICAtd2Via2l0LW9yZGVyOiAxMTtcbiAgICBvcmRlcjogMTE7XG4gIH1cblxuICAub3JkZXItbGctMTAge1xuICAgIC1tcy1mbGV4LW9yZGVyOiAxMDtcbiAgICAtd2Via2l0LW9yZGVyOiAxMDtcbiAgICBvcmRlcjogMTA7XG4gIH1cblxuICAub3JkZXItbGctOSB7XG4gICAgLW1zLWZsZXgtb3JkZXI6IDk7XG4gICAgLXdlYmtpdC1vcmRlcjogOTtcbiAgICBvcmRlcjogOTtcbiAgfVxuXG4gIC5vcmRlci1sZy04IHtcbiAgICAtbXMtZmxleC1vcmRlcjogODtcbiAgICAtd2Via2l0LW9yZGVyOiA4O1xuICAgIG9yZGVyOiA4O1xuICB9XG5cbiAgLm9yZGVyLWxnLTcge1xuICAgIC1tcy1mbGV4LW9yZGVyOiA3O1xuICAgIC13ZWJraXQtb3JkZXI6IDc7XG4gICAgb3JkZXI6IDc7XG4gIH1cblxuICAub3JkZXItbGctNiB7XG4gICAgLW1zLWZsZXgtb3JkZXI6IDY7XG4gICAgLXdlYmtpdC1vcmRlcjogNjtcbiAgICBvcmRlcjogNjtcbiAgfVxuXG4gIC5vcmRlci1sZy01IHtcbiAgICAtbXMtZmxleC1vcmRlcjogNTtcbiAgICAtd2Via2l0LW9yZGVyOiA1O1xuICAgIG9yZGVyOiA1O1xuICB9XG5cbiAgLm9yZGVyLWxnLTQge1xuICAgIC1tcy1mbGV4LW9yZGVyOiA0O1xuICAgIC13ZWJraXQtb3JkZXI6IDQ7XG4gICAgb3JkZXI6IDQ7XG4gIH1cblxuICAub3JkZXItbGctMyB7XG4gICAgLW1zLWZsZXgtb3JkZXI6IDM7XG4gICAgLXdlYmtpdC1vcmRlcjogMztcbiAgICBvcmRlcjogMztcbiAgfVxuXG4gIC5vcmRlci1sZy0yIHtcbiAgICAtbXMtZmxleC1vcmRlcjogMjtcbiAgICAtd2Via2l0LW9yZGVyOiAyO1xuICAgIG9yZGVyOiAyO1xuICB9XG5cbiAgLm9yZGVyLWxnLTEge1xuICAgIC1tcy1mbGV4LW9yZGVyOiAxO1xuICAgIC13ZWJraXQtb3JkZXI6IDE7XG4gICAgb3JkZXI6IDE7XG4gIH1cblxuICAub3JkZXItbGctMCB7XG4gICAgLW1zLWZsZXgtb3JkZXI6IDA7XG4gICAgLXdlYmtpdC1vcmRlcjogMDtcbiAgICBvcmRlcjogMDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDE2MDBweCkge1xuICAub3JkZXIteGxnLTEyIHtcbiAgICAtbXMtZmxleC1vcmRlcjogMTI7XG4gICAgLXdlYmtpdC1vcmRlcjogMTI7XG4gICAgb3JkZXI6IDEyO1xuICB9XG5cbiAgLm9yZGVyLXhsZy0xMSB7XG4gICAgLW1zLWZsZXgtb3JkZXI6IDExO1xuICAgIC13ZWJraXQtb3JkZXI6IDExO1xuICAgIG9yZGVyOiAxMTtcbiAgfVxuXG4gIC5vcmRlci14bGctMTAge1xuICAgIC1tcy1mbGV4LW9yZGVyOiAxMDtcbiAgICAtd2Via2l0LW9yZGVyOiAxMDtcbiAgICBvcmRlcjogMTA7XG4gIH1cblxuICAub3JkZXIteGxnLTkge1xuICAgIC1tcy1mbGV4LW9yZGVyOiA5O1xuICAgIC13ZWJraXQtb3JkZXI6IDk7XG4gICAgb3JkZXI6IDk7XG4gIH1cblxuICAub3JkZXIteGxnLTgge1xuICAgIC1tcy1mbGV4LW9yZGVyOiA4O1xuICAgIC13ZWJraXQtb3JkZXI6IDg7XG4gICAgb3JkZXI6IDg7XG4gIH1cblxuICAub3JkZXIteGxnLTcge1xuICAgIC1tcy1mbGV4LW9yZGVyOiA3O1xuICAgIC13ZWJraXQtb3JkZXI6IDc7XG4gICAgb3JkZXI6IDc7XG4gIH1cblxuICAub3JkZXIteGxnLTYge1xuICAgIC1tcy1mbGV4LW9yZGVyOiA2O1xuICAgIC13ZWJraXQtb3JkZXI6IDY7XG4gICAgb3JkZXI6IDY7XG4gIH1cblxuICAub3JkZXIteGxnLTUge1xuICAgIC1tcy1mbGV4LW9yZGVyOiA1O1xuICAgIC13ZWJraXQtb3JkZXI6IDU7XG4gICAgb3JkZXI6IDU7XG4gIH1cblxuICAub3JkZXIteGxnLTQge1xuICAgIC1tcy1mbGV4LW9yZGVyOiA0O1xuICAgIC13ZWJraXQtb3JkZXI6IDQ7XG4gICAgb3JkZXI6IDQ7XG4gIH1cblxuICAub3JkZXIteGxnLTMge1xuICAgIC1tcy1mbGV4LW9yZGVyOiAzO1xuICAgIC13ZWJraXQtb3JkZXI6IDM7XG4gICAgb3JkZXI6IDM7XG4gIH1cblxuICAub3JkZXIteGxnLTIge1xuICAgIC1tcy1mbGV4LW9yZGVyOiAyO1xuICAgIC13ZWJraXQtb3JkZXI6IDI7XG4gICAgb3JkZXI6IDI7XG4gIH1cblxuICAub3JkZXIteGxnLTEge1xuICAgIC1tcy1mbGV4LW9yZGVyOiAxO1xuICAgIC13ZWJraXQtb3JkZXI6IDE7XG4gICAgb3JkZXI6IDE7XG4gIH1cblxuICAub3JkZXIteGxnLTAge1xuICAgIC1tcy1mbGV4LW9yZGVyOiAwO1xuICAgIC13ZWJraXQtb3JkZXI6IDA7XG4gICAgb3JkZXI6IDA7XG4gIH1cbn1cbi5vZmZzZXQtMTEge1xuICBtYXJnaW4tbGVmdDogOTEuNjY2NjY2NjY2NyU7XG4gICptYXJnaW4tbGVmdDogOTEuNTY2NjY2NjY2NyU7XG59XG5cbi5vZmZzZXQtMTAge1xuICBtYXJnaW4tbGVmdDogODMuMzMzMzMzMzMzMyU7XG4gICptYXJnaW4tbGVmdDogODMuMjMzMzMzMzMzMyU7XG59XG5cbi5vZmZzZXQtOSB7XG4gIG1hcmdpbi1sZWZ0OiA3NSU7XG4gICptYXJnaW4tbGVmdDogNzQuOSU7XG59XG5cbi5vZmZzZXQtOCB7XG4gIG1hcmdpbi1sZWZ0OiA2Ni42NjY2NjY2NjY3JTtcbiAgKm1hcmdpbi1sZWZ0OiA2Ni41NjY2NjY2NjY3JTtcbn1cblxuLm9mZnNldC03IHtcbiAgbWFyZ2luLWxlZnQ6IDU4LjMzMzMzMzMzMzMlO1xuICAqbWFyZ2luLWxlZnQ6IDU4LjIzMzMzMzMzMzMlO1xufVxuXG4ub2Zmc2V0LTYge1xuICBtYXJnaW4tbGVmdDogNTAlO1xuICAqbWFyZ2luLWxlZnQ6IDQ5LjklO1xufVxuXG4ub2Zmc2V0LTUge1xuICBtYXJnaW4tbGVmdDogNDEuNjY2NjY2NjY2NyU7XG4gICptYXJnaW4tbGVmdDogNDEuNTY2NjY2NjY2NyU7XG59XG5cbi5vZmZzZXQtNCB7XG4gIG1hcmdpbi1sZWZ0OiAzMy4zMzMzMzMzMzMzJTtcbiAgKm1hcmdpbi1sZWZ0OiAzMy4yMzMzMzMzMzMzJTtcbn1cblxuLm9mZnNldC0zIHtcbiAgbWFyZ2luLWxlZnQ6IDI1JTtcbiAgKm1hcmdpbi1sZWZ0OiAyNC45JTtcbn1cblxuLm9mZnNldC0yIHtcbiAgbWFyZ2luLWxlZnQ6IDE2LjY2NjY2NjY2NjclO1xuICAqbWFyZ2luLWxlZnQ6IDE2LjU2NjY2NjY2NjclO1xufVxuXG4ub2Zmc2V0LTEge1xuICBtYXJnaW4tbGVmdDogOC4zMzMzMzMzMzMzJTtcbiAgKm1hcmdpbi1sZWZ0OiA4LjIzMzMzMzMzMzMlO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNTc2cHgpIHtcbiAgLm9mZnNldC14cy0xMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDkxLjY2NjY2NjY2NjclO1xuICAgICptYXJnaW4tbGVmdDogOTEuNTY2NjY2NjY2NyU7XG4gIH1cblxuICAub2Zmc2V0LXhzLTEwIHtcbiAgICBtYXJnaW4tbGVmdDogODMuMzMzMzMzMzMzMyU7XG4gICAgKm1hcmdpbi1sZWZ0OiA4My4yMzMzMzMzMzMzJTtcbiAgfVxuXG4gIC5vZmZzZXQteHMtOSB7XG4gICAgbWFyZ2luLWxlZnQ6IDc1JTtcbiAgICAqbWFyZ2luLWxlZnQ6IDc0LjklO1xuICB9XG5cbiAgLm9mZnNldC14cy04IHtcbiAgICBtYXJnaW4tbGVmdDogNjYuNjY2NjY2NjY2NyU7XG4gICAgKm1hcmdpbi1sZWZ0OiA2Ni41NjY2NjY2NjY3JTtcbiAgfVxuXG4gIC5vZmZzZXQteHMtNyB7XG4gICAgbWFyZ2luLWxlZnQ6IDU4LjMzMzMzMzMzMzMlO1xuICAgICptYXJnaW4tbGVmdDogNTguMjMzMzMzMzMzMyU7XG4gIH1cblxuICAub2Zmc2V0LXhzLTYge1xuICAgIG1hcmdpbi1sZWZ0OiA1MCU7XG4gICAgKm1hcmdpbi1sZWZ0OiA0OS45JTtcbiAgfVxuXG4gIC5vZmZzZXQteHMtNSB7XG4gICAgbWFyZ2luLWxlZnQ6IDQxLjY2NjY2NjY2NjclO1xuICAgICptYXJnaW4tbGVmdDogNDEuNTY2NjY2NjY2NyU7XG4gIH1cblxuICAub2Zmc2V0LXhzLTQge1xuICAgIG1hcmdpbi1sZWZ0OiAzMy4zMzMzMzMzMzMzJTtcbiAgICAqbWFyZ2luLWxlZnQ6IDMzLjIzMzMzMzMzMzMlO1xuICB9XG5cbiAgLm9mZnNldC14cy0zIHtcbiAgICBtYXJnaW4tbGVmdDogMjUlO1xuICAgICptYXJnaW4tbGVmdDogMjQuOSU7XG4gIH1cblxuICAub2Zmc2V0LXhzLTIge1xuICAgIG1hcmdpbi1sZWZ0OiAxNi42NjY2NjY2NjY3JTtcbiAgICAqbWFyZ2luLWxlZnQ6IDE2LjU2NjY2NjY2NjclO1xuICB9XG5cbiAgLm9mZnNldC14cy0xIHtcbiAgICBtYXJnaW4tbGVmdDogOC4zMzMzMzMzMzMzJTtcbiAgICAqbWFyZ2luLWxlZnQ6IDguMjMzMzMzMzMzMyU7XG4gIH1cblxuICAub2Zmc2V0LXhzLTAge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICptYXJnaW4tbGVmdDogLTAuMSU7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAub2Zmc2V0LXNtLTExIHtcbiAgICBtYXJnaW4tbGVmdDogOTEuNjY2NjY2NjY2NyU7XG4gICAgKm1hcmdpbi1sZWZ0OiA5MS41NjY2NjY2NjY3JTtcbiAgfVxuXG4gIC5vZmZzZXQtc20tMTAge1xuICAgIG1hcmdpbi1sZWZ0OiA4My4zMzMzMzMzMzMzJTtcbiAgICAqbWFyZ2luLWxlZnQ6IDgzLjIzMzMzMzMzMzMlO1xuICB9XG5cbiAgLm9mZnNldC1zbS05IHtcbiAgICBtYXJnaW4tbGVmdDogNzUlO1xuICAgICptYXJnaW4tbGVmdDogNzQuOSU7XG4gIH1cblxuICAub2Zmc2V0LXNtLTgge1xuICAgIG1hcmdpbi1sZWZ0OiA2Ni42NjY2NjY2NjY3JTtcbiAgICAqbWFyZ2luLWxlZnQ6IDY2LjU2NjY2NjY2NjclO1xuICB9XG5cbiAgLm9mZnNldC1zbS03IHtcbiAgICBtYXJnaW4tbGVmdDogNTguMzMzMzMzMzMzMyU7XG4gICAgKm1hcmdpbi1sZWZ0OiA1OC4yMzMzMzMzMzMzJTtcbiAgfVxuXG4gIC5vZmZzZXQtc20tNiB7XG4gICAgbWFyZ2luLWxlZnQ6IDUwJTtcbiAgICAqbWFyZ2luLWxlZnQ6IDQ5LjklO1xuICB9XG5cbiAgLm9mZnNldC1zbS01IHtcbiAgICBtYXJnaW4tbGVmdDogNDEuNjY2NjY2NjY2NyU7XG4gICAgKm1hcmdpbi1sZWZ0OiA0MS41NjY2NjY2NjY3JTtcbiAgfVxuXG4gIC5vZmZzZXQtc20tNCB7XG4gICAgbWFyZ2luLWxlZnQ6IDMzLjMzMzMzMzMzMzMlO1xuICAgICptYXJnaW4tbGVmdDogMzMuMjMzMzMzMzMzMyU7XG4gIH1cblxuICAub2Zmc2V0LXNtLTMge1xuICAgIG1hcmdpbi1sZWZ0OiAyNSU7XG4gICAgKm1hcmdpbi1sZWZ0OiAyNC45JTtcbiAgfVxuXG4gIC5vZmZzZXQtc20tMiB7XG4gICAgbWFyZ2luLWxlZnQ6IDE2LjY2NjY2NjY2NjclO1xuICAgICptYXJnaW4tbGVmdDogMTYuNTY2NjY2NjY2NyU7XG4gIH1cblxuICAub2Zmc2V0LXNtLTEge1xuICAgIG1hcmdpbi1sZWZ0OiA4LjMzMzMzMzMzMzMlO1xuICAgICptYXJnaW4tbGVmdDogOC4yMzMzMzMzMzMzJTtcbiAgfVxuXG4gIC5vZmZzZXQtc20tMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgKm1hcmdpbi1sZWZ0OiAtMC4xJTtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5vZmZzZXQtbWQtMTEge1xuICAgIG1hcmdpbi1sZWZ0OiA5MS42NjY2NjY2NjY3JTtcbiAgICAqbWFyZ2luLWxlZnQ6IDkxLjU2NjY2NjY2NjclO1xuICB9XG5cbiAgLm9mZnNldC1tZC0xMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDgzLjMzMzMzMzMzMzMlO1xuICAgICptYXJnaW4tbGVmdDogODMuMjMzMzMzMzMzMyU7XG4gIH1cblxuICAub2Zmc2V0LW1kLTkge1xuICAgIG1hcmdpbi1sZWZ0OiA3NSU7XG4gICAgKm1hcmdpbi1sZWZ0OiA3NC45JTtcbiAgfVxuXG4gIC5vZmZzZXQtbWQtOCB7XG4gICAgbWFyZ2luLWxlZnQ6IDY2LjY2NjY2NjY2NjclO1xuICAgICptYXJnaW4tbGVmdDogNjYuNTY2NjY2NjY2NyU7XG4gIH1cblxuICAub2Zmc2V0LW1kLTcge1xuICAgIG1hcmdpbi1sZWZ0OiA1OC4zMzMzMzMzMzMzJTtcbiAgICAqbWFyZ2luLWxlZnQ6IDU4LjIzMzMzMzMzMzMlO1xuICB9XG5cbiAgLm9mZnNldC1tZC02IHtcbiAgICBtYXJnaW4tbGVmdDogNTAlO1xuICAgICptYXJnaW4tbGVmdDogNDkuOSU7XG4gIH1cblxuICAub2Zmc2V0LW1kLTUge1xuICAgIG1hcmdpbi1sZWZ0OiA0MS42NjY2NjY2NjY3JTtcbiAgICAqbWFyZ2luLWxlZnQ6IDQxLjU2NjY2NjY2NjclO1xuICB9XG5cbiAgLm9mZnNldC1tZC00IHtcbiAgICBtYXJnaW4tbGVmdDogMzMuMzMzMzMzMzMzMyU7XG4gICAgKm1hcmdpbi1sZWZ0OiAzMy4yMzMzMzMzMzMzJTtcbiAgfVxuXG4gIC5vZmZzZXQtbWQtMyB7XG4gICAgbWFyZ2luLWxlZnQ6IDI1JTtcbiAgICAqbWFyZ2luLWxlZnQ6IDI0LjklO1xuICB9XG5cbiAgLm9mZnNldC1tZC0yIHtcbiAgICBtYXJnaW4tbGVmdDogMTYuNjY2NjY2NjY2NyU7XG4gICAgKm1hcmdpbi1sZWZ0OiAxNi41NjY2NjY2NjY3JTtcbiAgfVxuXG4gIC5vZmZzZXQtbWQtMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDguMzMzMzMzMzMzMyU7XG4gICAgKm1hcmdpbi1sZWZ0OiA4LjIzMzMzMzMzMzMlO1xuICB9XG5cbiAgLm9mZnNldC1tZC0wIHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAqbWFyZ2luLWxlZnQ6IC0wLjElO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5vZmZzZXQtbGctMTEge1xuICAgIG1hcmdpbi1sZWZ0OiA5MS42NjY2NjY2NjY3JTtcbiAgICAqbWFyZ2luLWxlZnQ6IDkxLjU2NjY2NjY2NjclO1xuICB9XG5cbiAgLm9mZnNldC1sZy0xMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDgzLjMzMzMzMzMzMzMlO1xuICAgICptYXJnaW4tbGVmdDogODMuMjMzMzMzMzMzMyU7XG4gIH1cblxuICAub2Zmc2V0LWxnLTkge1xuICAgIG1hcmdpbi1sZWZ0OiA3NSU7XG4gICAgKm1hcmdpbi1sZWZ0OiA3NC45JTtcbiAgfVxuXG4gIC5vZmZzZXQtbGctOCB7XG4gICAgbWFyZ2luLWxlZnQ6IDY2LjY2NjY2NjY2NjclO1xuICAgICptYXJnaW4tbGVmdDogNjYuNTY2NjY2NjY2NyU7XG4gIH1cblxuICAub2Zmc2V0LWxnLTcge1xuICAgIG1hcmdpbi1sZWZ0OiA1OC4zMzMzMzMzMzMzJTtcbiAgICAqbWFyZ2luLWxlZnQ6IDU4LjIzMzMzMzMzMzMlO1xuICB9XG5cbiAgLm9mZnNldC1sZy02IHtcbiAgICBtYXJnaW4tbGVmdDogNTAlO1xuICAgICptYXJnaW4tbGVmdDogNDkuOSU7XG4gIH1cblxuICAub2Zmc2V0LWxnLTUge1xuICAgIG1hcmdpbi1sZWZ0OiA0MS42NjY2NjY2NjY3JTtcbiAgICAqbWFyZ2luLWxlZnQ6IDQxLjU2NjY2NjY2NjclO1xuICB9XG5cbiAgLm9mZnNldC1sZy00IHtcbiAgICBtYXJnaW4tbGVmdDogMzMuMzMzMzMzMzMzMyU7XG4gICAgKm1hcmdpbi1sZWZ0OiAzMy4yMzMzMzMzMzMzJTtcbiAgfVxuXG4gIC5vZmZzZXQtbGctMyB7XG4gICAgbWFyZ2luLWxlZnQ6IDI1JTtcbiAgICAqbWFyZ2luLWxlZnQ6IDI0LjklO1xuICB9XG5cbiAgLm9mZnNldC1sZy0yIHtcbiAgICBtYXJnaW4tbGVmdDogMTYuNjY2NjY2NjY2NyU7XG4gICAgKm1hcmdpbi1sZWZ0OiAxNi41NjY2NjY2NjY3JTtcbiAgfVxuXG4gIC5vZmZzZXQtbGctMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDguMzMzMzMzMzMzMyU7XG4gICAgKm1hcmdpbi1sZWZ0OiA4LjIzMzMzMzMzMzMlO1xuICB9XG5cbiAgLm9mZnNldC1sZy0wIHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAqbWFyZ2luLWxlZnQ6IC0wLjElO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTYwMHB4KSB7XG4gIC5vZmZzZXQteGxnLTExIHtcbiAgICBtYXJnaW4tbGVmdDogOTEuNjY2NjY2NjY2NyU7XG4gICAgKm1hcmdpbi1sZWZ0OiA5MS41NjY2NjY2NjY3JTtcbiAgfVxuXG4gIC5vZmZzZXQteGxnLTEwIHtcbiAgICBtYXJnaW4tbGVmdDogODMuMzMzMzMzMzMzMyU7XG4gICAgKm1hcmdpbi1sZWZ0OiA4My4yMzMzMzMzMzMzJTtcbiAgfVxuXG4gIC5vZmZzZXQteGxnLTkge1xuICAgIG1hcmdpbi1sZWZ0OiA3NSU7XG4gICAgKm1hcmdpbi1sZWZ0OiA3NC45JTtcbiAgfVxuXG4gIC5vZmZzZXQteGxnLTgge1xuICAgIG1hcmdpbi1sZWZ0OiA2Ni42NjY2NjY2NjY3JTtcbiAgICAqbWFyZ2luLWxlZnQ6IDY2LjU2NjY2NjY2NjclO1xuICB9XG5cbiAgLm9mZnNldC14bGctNyB7XG4gICAgbWFyZ2luLWxlZnQ6IDU4LjMzMzMzMzMzMzMlO1xuICAgICptYXJnaW4tbGVmdDogNTguMjMzMzMzMzMzMyU7XG4gIH1cblxuICAub2Zmc2V0LXhsZy02IHtcbiAgICBtYXJnaW4tbGVmdDogNTAlO1xuICAgICptYXJnaW4tbGVmdDogNDkuOSU7XG4gIH1cblxuICAub2Zmc2V0LXhsZy01IHtcbiAgICBtYXJnaW4tbGVmdDogNDEuNjY2NjY2NjY2NyU7XG4gICAgKm1hcmdpbi1sZWZ0OiA0MS41NjY2NjY2NjY3JTtcbiAgfVxuXG4gIC5vZmZzZXQteGxnLTQge1xuICAgIG1hcmdpbi1sZWZ0OiAzMy4zMzMzMzMzMzMzJTtcbiAgICAqbWFyZ2luLWxlZnQ6IDMzLjIzMzMzMzMzMzMlO1xuICB9XG5cbiAgLm9mZnNldC14bGctMyB7XG4gICAgbWFyZ2luLWxlZnQ6IDI1JTtcbiAgICAqbWFyZ2luLWxlZnQ6IDI0LjklO1xuICB9XG5cbiAgLm9mZnNldC14bGctMiB7XG4gICAgbWFyZ2luLWxlZnQ6IDE2LjY2NjY2NjY2NjclO1xuICAgICptYXJnaW4tbGVmdDogMTYuNTY2NjY2NjY2NyU7XG4gIH1cblxuICAub2Zmc2V0LXhsZy0xIHtcbiAgICBtYXJnaW4tbGVmdDogOC4zMzMzMzMzMzMzJTtcbiAgICAqbWFyZ2luLWxlZnQ6IDguMjMzMzMzMzMzMyU7XG4gIH1cblxuICAub2Zmc2V0LXhsZy0wIHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAqbWFyZ2luLWxlZnQ6IC0wLjElO1xuICB9XG59XG4ud3JhcCB7XG4gIC1tcy1mbGV4LXdyYXA6IHdyYXA7XG4gIC13ZWJraXQtZmxleC13cmFwOiB3cmFwO1xuICBmbGV4LXdyYXA6IHdyYXA7XG59XG5cbi5uby13cmFwIHtcbiAgLW1zLWZsZXgtd3JhcDogbm93cmFwO1xuICAtd2Via2l0LWZsZXgtd3JhcDogbm93cmFwO1xuICBmbGV4LXdyYXA6IG5vd3JhcDtcbn1cbi5uby13cmFwIFtjbGFzcyo9Y29sLV0ge1xuICAtbXMtZmxleC1uZWdhdGl2ZTogMTtcbiAgLXdlYmtpdC1mbGV4LXNocmluazogMTtcbiAgZmxleC1zaHJpbms6IDE7XG59XG5cbi53cmFwLXJldmVyc2Uge1xuICAtbXMtZmxleC13cmFwOiB3cmFwLXJldmVyc2U7XG4gIC13ZWJraXQtZmxleC13cmFwOiB3cmFwLXJldmVyc2U7XG4gIGZsZXgtd3JhcDogd3JhcC1yZXZlcnNlO1xufVxuXG4uZGlyZWN0aW9uLXJvdyB7XG4gIC1tcy1mbGV4LWRpcmVjdGlvbjogcm93O1xuICAtd2Via2l0LWZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XG59XG5cbi5kaXJlY3Rpb24tcm93LXJldmVyc2Uge1xuICAtbXMtZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlO1xuICAtd2Via2l0LWZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTtcbiAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlO1xufVxuXG4uZGlyZWN0aW9uLWNvbHVtbiB7XG4gIC1tcy1mbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAtd2Via2l0LWZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG59XG5cbi5kaXJlY3Rpb24tY29sdW1uLXJldmVyc2Uge1xuICAtbXMtZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlO1xuICAtd2Via2l0LWZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlO1xufVxuXG4uYWxpZ24tc3RhcnQge1xuICAtbXMtZmxleC1hbGlnbjogc3RhcnQ7XG4gIC13ZWJraXQtYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xufVxuXG4uYWxpZ24tZW5kIHtcbiAgLW1zLWZsZXgtYWxpZ246IGVuZDtcbiAgLXdlYmtpdC1hbGlnbi1pdGVtczogZmxleC1lbmQ7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcbn1cbi5hbGlnbi1lbmQgW2NsYXNzKj1jb2wtXSB7XG4gIHZlcnRpY2FsLWFsaWduOiBib3R0b207XG59XG5cbi5hbGlnbi1jZW50ZXIge1xuICAtbXMtZmxleC1hbGlnbjogY2VudGVyO1xuICAtd2Via2l0LWFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG4uYWxpZ24tY2VudGVyIFtjbGFzcyo9Y29sLV0ge1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuXG4uYWxpZ24tYmFzZWxpbmUge1xuICAtbXMtZmxleC1hbGlnbjogYmFzZWxpbmU7XG4gIC13ZWJraXQtYWxpZ24taXRlbXM6IGJhc2VsaW5lO1xuICBhbGlnbi1pdGVtczogYmFzZWxpbmU7XG59XG5cbi5hbGlnbi1jb250ZW50LXN0YXJ0IHtcbiAgLW1zLWZsZXgtbGluZS1wYWNrOiBzdGFydDtcbiAgLXdlYmtpdC1hbGlnbi1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICBhbGlnbi1jb250ZW50OiBmbGV4LXN0YXJ0O1xufVxuXG4uYWxpZ24tY29udGVudC1lbmQge1xuICAtbXMtZmxleC1saW5lLXBhY2s6IGVuZDtcbiAgLXdlYmtpdC1hbGlnbi1jb250ZW50OiBmbGV4LWVuZDtcbiAgYWxpZ24tY29udGVudDogZmxleC1lbmQ7XG59XG4uYWxpZ24tY29udGVudC1lbmQgW2NsYXNzKj1jb2wtXSB7XG4gIHZlcnRpY2FsLWFsaWduOiBib3R0b207XG59XG5cbi5hbGlnbi1jb250ZW50LWNlbnRlciB7XG4gIC1tcy1mbGV4LWxpbmUtcGFjazogY2VudGVyO1xuICAtd2Via2l0LWFsaWduLWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24tY29udGVudDogY2VudGVyO1xufVxuXG4uYWxpZ24tY29udGVudC1zcGFjZS1iZXR3ZWVuIHtcbiAgLW1zLWZsZXgtbGluZS1wYWNrOiBqdXN0aWZ5O1xuICAtd2Via2l0LWFsaWduLWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGFsaWduLWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG59XG5cbi5hbGlnbi1jb250ZW50LXNwYWNlLWFyb3VuZCB7XG4gIC1tcy1mbGV4LWxpbmUtcGFjazogZGlzdHJpYnV0ZTtcbiAgLXdlYmtpdC1hbGlnbi1jb250ZW50OiBzcGFjZS1hcm91bmQ7XG4gIGFsaWduLWNvbnRlbnQ6IHNwYWNlLWFyb3VuZDtcbn1cblxuLmFsaWduLXNlbGYtc3RyZXRjaCB7XG4gIC1tcy1mbGV4LWl0ZW0tYWxpZ246IHN0cmV0Y2g7XG4gIC13ZWJraXQtYWxpZ24tc2VsZjogc3RyZXRjaDtcbiAgYWxpZ24tc2VsZjogc3RyZXRjaDtcbn1cblxuLmFsaWduLXNlbGYtc3RhcnQge1xuICAtbXMtZmxleC1pdGVtLWFsaWduOiBzdGFydDtcbiAgLXdlYmtpdC1hbGlnbi1zZWxmOiBmbGV4LXN0YXJ0O1xuICBhbGlnbi1zZWxmOiBmbGV4LXN0YXJ0O1xufVxuXG4uYWxpZ24tc2VsZi1lbmQge1xuICAtbXMtZmxleC1pdGVtLWFsaWduOiBlbmQ7XG4gIC13ZWJraXQtYWxpZ24tc2VsZjogZmxleC1lbmQ7XG4gIGFsaWduLXNlbGY6IGZsZXgtZW5kO1xuICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xufVxuXG4uYWxpZ24tc2VsZi1jZW50ZXIge1xuICAtbXMtZmxleC1pdGVtLWFsaWduOiBjZW50ZXI7XG4gIC13ZWJraXQtYWxpZ24tc2VsZjogY2VudGVyO1xuICBhbGlnbi1zZWxmOiBjZW50ZXI7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cbi5hbGlnbi1zZWxmLWJhc2VsaW5lIHtcbiAgLW1zLWZsZXgtaXRlbS1hbGlnbjogYmFzZWxpbmU7XG4gIC13ZWJraXQtYWxpZ24tc2VsZjogYmFzZWxpbmU7XG4gIGFsaWduLXNlbGY6IGJhc2VsaW5lO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbi5qdXN0aWZ5LXN0YXJ0IHtcbiAgLW1zLWZsZXgtcGFjazogc3RhcnQ7XG4gIC13ZWJraXQtanVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG59XG4uanVzdGlmeS1zdGFydC5ncmlkIHtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cblxuLmp1c3RpZnktZW5kIHtcbiAgLW1zLWZsZXgtcGFjazogZW5kO1xuICAtd2Via2l0LWp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG59XG4uanVzdGlmeS1lbmQuZ3JpZCB7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xuICAtbW96LXRleHQtYWxpZ24tbGFzdDogcmlnaHQ7XG4gIHRleHQtYWxpZ24tbGFzdDogcmlnaHQ7XG59XG4uanVzdGlmeS1lbmQuZ3JpZCBbY2xhc3MqPWNvbC1dIHtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgdGV4dC1hbGlnbjogc3RhcnQ7XG4gIC1tb3otdGV4dC1hbGlnbi1sYXN0OiBsZWZ0O1xuICAtbW96LXRleHQtYWxpZ24tbGFzdDogc3RhcnQ7XG4gIHRleHQtYWxpZ24tbGFzdDogbGVmdDtcbiAgdGV4dC1hbGlnbi1sYXN0OiBzdGFydDtcbn1cblxuLmp1c3RpZnktY2VudGVyIHtcbiAgLW1zLWZsZXgtcGFjazogY2VudGVyO1xuICAtd2Via2l0LWp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cbi5qdXN0aWZ5LWNlbnRlci5ncmlkIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAtbW96LXRleHQtYWxpZ24tbGFzdDogY2VudGVyO1xuICB0ZXh0LWFsaWduLWxhc3Q6IGNlbnRlcjtcbn1cbi5qdXN0aWZ5LWNlbnRlci5ncmlkIFtjbGFzcyo9Y29sLV0ge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB0ZXh0LWFsaWduOiBzdGFydDtcbiAgLW1vei10ZXh0LWFsaWduLWxhc3Q6IGxlZnQ7XG4gIC1tb3otdGV4dC1hbGlnbi1sYXN0OiBzdGFydDtcbiAgdGV4dC1hbGlnbi1sYXN0OiBsZWZ0O1xuICB0ZXh0LWFsaWduLWxhc3Q6IHN0YXJ0O1xufVxuXG4uanVzdGlmeS1zcGFjZS1iZXR3ZWVuIHtcbiAgLW1zLWZsZXgtcGFjazoganVzdGlmeTtcbiAgLXdlYmtpdC1qdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcbn1cbi5qdXN0aWZ5LXNwYWNlLWJldHdlZW4uZ3JpZCB7XG4gIHRleHQtYWxpZ246IGp1c3RpZnk7XG4gIC1tb3otdGV4dC1hbGlnbi1sYXN0OiBqdXN0aWZ5O1xuICB0ZXh0LWFsaWduLWxhc3Q6IGp1c3RpZnk7XG59XG4uanVzdGlmeS1zcGFjZS1iZXR3ZWVuLmdyaWQgW2NsYXNzKj1jb2wtXSB7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIHRleHQtYWxpZ246IHN0YXJ0O1xuICAtbW96LXRleHQtYWxpZ24tbGFzdDogbGVmdDtcbiAgLW1vei10ZXh0LWFsaWduLWxhc3Q6IHN0YXJ0O1xuICB0ZXh0LWFsaWduLWxhc3Q6IGxlZnQ7XG4gIHRleHQtYWxpZ24tbGFzdDogc3RhcnQ7XG59XG5cbi5qdXN0aWZ5LXNwYWNlLWFyb3VuZCB7XG4gIC1tcy1mbGV4LXBhY2s6IGRpc3RyaWJ1dGU7XG4gIC13ZWJraXQtanVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQ7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kO1xufVxuLmp1c3RpZnktc3BhY2UtYXJvdW5kLmdyaWQge1xuICB0ZXh0LWFsaWduOiBqdXN0aWZ5O1xuICAtbW96LXRleHQtYWxpZ24tbGFzdDoganVzdGlmeTtcbiAgdGV4dC1hbGlnbi1sYXN0OiBqdXN0aWZ5O1xufVxuLmp1c3RpZnktc3BhY2UtYXJvdW5kLmdyaWQgW2NsYXNzKj1jb2wtXSB7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIHRleHQtYWxpZ246IHN0YXJ0O1xuICAtbW96LXRleHQtYWxpZ24tbGFzdDogbGVmdDtcbiAgLW1vei10ZXh0LWFsaWduLWxhc3Q6IHN0YXJ0O1xuICB0ZXh0LWFsaWduLWxhc3Q6IGxlZnQ7XG4gIHRleHQtYWxpZ24tbGFzdDogc3RhcnQ7XG59XG5cbi5ncmlkLWJsZWVkIFtjbGFzcyo9Y29sLV0ge1xuICBwYWRkaW5nOiAwO1xufVxuXG4uY29sLWdyaWQge1xuICBkaXNwbGF5OiAtbXMtZmxleGJveDtcbiAgZGlzcGxheTogLXdlYmtpdC1mbGV4O1xuICBkaXNwbGF5OiBmbGV4O1xuICAtbXMtZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgLXdlYmtpdC1mbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xufVxuLmNvbC1ncmlkLmRpcmVjdGlvbi1yb3cge1xuICAtbXMtZmxleC1kaXJlY3Rpb246IHJvdztcbiAgLXdlYmtpdC1mbGV4LWRpcmVjdGlvbjogcm93O1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xufVxuXG4uY29sLWJsZWVkIHtcbiAgcGFkZGluZzogMDtcbn1cblxuLmNvbC1ibGVlZC14IHtcbiAgcGFkZGluZzogMTVweCAwO1xufVxuXG4uY29sLWJsZWVkLXkge1xuICBwYWRkaW5nOiAwIDE1cHg7XG59XG5cbi5mbGV4LWltZyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICAtbXMtZmxleDogMCAwIGF1dG87XG4gIC13ZWJraXQtZmxleDogMCAwIGF1dG87XG4gIGZsZXg6IDAgMCBhdXRvO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bztcbiAgd2lkdGg6IDEwMCU7XG4gICp3aWR0aDogYXV0bztcbn1cblxuLmZsZXgtZm9vdGVyIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi10b3A6IGF1dG87XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG4uZmxleC1mb290ZXIgPiA6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiAwcHgpIGFuZCAobWF4LXdpZHRoOiA1NzVweCkge1xuICAuaGlkZGVuLXh4cyB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNTc2cHgpIHtcbiAgLmhpZGRlbi14cy11cCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLmhpZGRlbi14cy1kb3duIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA1NzZweCkgYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC5oaWRkZW4teHMge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5oaWRkZW4tc20tdXAge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gIC5oaWRkZW4tc20tZG93biB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWF4LXdpZHRoOiA5OTFweCkge1xuICAuaGlkZGVuLXNtIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAuaGlkZGVuLW1kLXVwIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAxMTk5cHgpIHtcbiAgLmhpZGRlbi1tZC1kb3duIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkgYW5kIChtYXgtd2lkdGg6IDExOTlweCkge1xuICAuaGlkZGVuLW1kIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLmhpZGRlbi1sZy11cCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogMTU5OXB4KSB7XG4gIC5oaWRkZW4tbGctZG93biB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSBhbmQgKG1heC13aWR0aDogMTU5OXB4KSB7XG4gIC5oaWRkZW4tbGcge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDE2MDBweCkge1xuICAuaGlkZGVuLXhsZyB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4vKiAtLS0gTWVkaWEgcXVlcmllcyAtLS0gKi9cbi8qKlxuICogRm9jdXMgVmlzaWJsZVxuICogaHR0cHM6Ly9naXRodWIuY29tL1dJQ0cvZm9jdXMtdmlzaWJsZVxuICogT3ZlcnJpZGUgYmFzZSBmb2N1cyBzdHlsZXMgZm9yIG1vdXNlIGFuZCB0b3VjaCBpbnRlcmFjdGlvbnNcbiAqL1xuLyogLS0tIEZvbnRzIC0tLSAqL1xuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBcIm1vbnRzZXJyYXRyZWd1bGFyXCI7XG4gIHNyYzogdXJsKFwiLi4vZm9udHMvbW9udHNlcnJhdC1yZWd1bGFyLXdlYmZvbnQud29mZjJcIikgZm9ybWF0KFwid29mZjJcIiksIHVybChcIi4uL2ZvbnRzL21vbnRzZXJyYXQtcmVndWxhci13ZWJmb250LndvZmZcIikgZm9ybWF0KFwid29mZlwiKTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBcIm1vbnRzZXJyYXRzZW1pYm9sZFwiO1xuICBzcmM6IHVybChcIi4uL2ZvbnRzL21vbnRzZXJyYXQtc2VtaWJvbGQtd2ViZm9udC53b2ZmMlwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSwgdXJsKFwiLi4vZm9udHMvbW9udHNlcnJhdC1zZW1pYm9sZC13ZWJmb250LndvZmZcIikgZm9ybWF0KFwid29mZlwiKTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBcIm1vbnRzZXJyYXRpdGFsaWNcIjtcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9tb250c2VycmF0LXJlZ3VsYXJpdGFsaWMtd2ViZm9udC53b2ZmMlwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSwgdXJsKFwiLi4vZm9udHMvbW9udHNlcnJhdC1yZWd1bGFyaXRhbGljLXdlYmZvbnQud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG59XG5lbSB7XG4gIGZvbnQtZmFtaWx5OiBcIm1vbnRzZXJyYXRpdGFsaWNcIjtcbn1cblxuQGtleWZyYW1lcyBmYWRlSW4ge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5Aa2V5ZnJhbWVzIGZhZGVPdXQge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG4vKiFcbiAqIGJhZ3VldHRlQm94LmpzXG4gKiBAYXV0aG9yICBmZWltb3NpXG4gKiBAdmVyc2lvbiAlJUlOSkVDVF9WRVJTSU9OJSVcbiAqIEB1cmwgaHR0cHM6Ly9naXRodWIuY29tL2ZlaW1vc2kvYmFndWV0dGVCb3guanNcbiAqL1xuI2JhZ3VldHRlQm94LW92ZXJsYXkge1xuICBkaXNwbGF5OiBub25lO1xuICBvcGFjaXR5OiAwO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgei1pbmRleDogMTAwMDAwMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzIyMjtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjgpO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuNXMgZWFzZTtcbn1cbiNiYWd1ZXR0ZUJveC1vdmVybGF5LnZpc2libGUge1xuICBvcGFjaXR5OiAxO1xufVxuI2JhZ3VldHRlQm94LW92ZXJsYXkgLmZ1bGwtaW1hZ2Uge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuI2JhZ3VldHRlQm94LW92ZXJsYXkgLmZ1bGwtaW1hZ2UgZmlndXJlIHtcbiAgZGlzcGxheTogaW5saW5lO1xuICBtYXJnaW46IDA7XG4gIGhlaWdodDogMTAwJTtcbn1cbiNiYWd1ZXR0ZUJveC1vdmVybGF5IC5mdWxsLWltYWdlIGltZyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IGF1dG87XG4gIGhlaWdodDogYXV0bztcbiAgbWF4LWhlaWdodDogMTAwJTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBib3gtc2hhZG93OiAwIDAgOHB4IHJnYmEoMCwgMCwgMCwgMC42KTtcbn1cbiNiYWd1ZXR0ZUJveC1vdmVybGF5IC5mdWxsLWltYWdlIGZpZ2NhcHRpb24ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IDA7XG4gIHdpZHRoOiAxMDAlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGxpbmUtaGVpZ2h0OiAxLjg7XG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gIGNvbG9yOiAjY2NjO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNik7XG4gIGZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmO1xufVxuI2JhZ3VldHRlQm94LW92ZXJsYXkgLmZ1bGwtaW1hZ2U6YmVmb3JlIHtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBoZWlnaHQ6IDUwJTtcbiAgd2lkdGg6IDFweDtcbiAgbWFyZ2luLXJpZ2h0OiAtMXB4O1xufVxuXG4jYmFndWV0dGVCb3gtc2xpZGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG4gIGhlaWdodDogMTAwJTtcbiAgd2lkdGg6IDEwMCU7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIHRyYW5zaXRpb246IGxlZnQgMC40cyBlYXNlLCB0cmFuc2Zvcm0gMC40cyBlYXNlO1xufVxuI2JhZ3VldHRlQm94LXNsaWRlci5ib3VuY2UtZnJvbS1yaWdodCB7XG4gIGFuaW1hdGlvbjogYm91bmNlRnJvbVJpZ2h0IDAuNHMgZWFzZS1vdXQ7XG59XG4jYmFndWV0dGVCb3gtc2xpZGVyLmJvdW5jZS1mcm9tLWxlZnQge1xuICBhbmltYXRpb246IGJvdW5jZUZyb21MZWZ0IDAuNHMgZWFzZS1vdXQ7XG59XG5cbkBrZXlmcmFtZXMgYm91bmNlRnJvbVJpZ2h0IHtcbiAgMCUge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG4gIDUwJSB7XG4gICAgbWFyZ2luLWxlZnQ6IC0zMHB4O1xuICB9XG4gIDEwMCUge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG59XG5Aa2V5ZnJhbWVzIGJvdW5jZUZyb21MZWZ0IHtcbiAgMCUge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG4gIDUwJSB7XG4gICAgbWFyZ2luLWxlZnQ6IDMwcHg7XG4gIH1cbiAgMTAwJSB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cbn1cbi5iYWd1ZXR0ZUJveC1idXR0b24jcHJldmlvdXMtYnV0dG9uLCAuYmFndWV0dGVCb3gtYnV0dG9uI25leHQtYnV0dG9uIHtcbiAgdG9wOiA1MCU7XG4gIHRvcDogY2FsYyg1MCUgLSAzMHB4KTtcbiAgd2lkdGg6IDQ0cHg7XG4gIGhlaWdodDogNjBweDtcbn1cblxuLmJhZ3VldHRlQm94LWJ1dHRvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBvdXRsaW5lOiBub25lO1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXJhZGl1czogMTUlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzIzMjMyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDUwLCA1MCwgNTAsIDAuNSk7XG4gIGNvbG9yOiAjZGRkO1xuICBmb250OiAxLjZlbSBzYW5zLXNlcmlmO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuNHMgZWFzZTtcbn1cbi5iYWd1ZXR0ZUJveC1idXR0b246Zm9jdXMsIC5iYWd1ZXR0ZUJveC1idXR0b246aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDUwLCA1MCwgNTAsIDAuOSk7XG59XG4uYmFndWV0dGVCb3gtYnV0dG9uI25leHQtYnV0dG9uIHtcbiAgcmlnaHQ6IDIlO1xufVxuLmJhZ3VldHRlQm94LWJ1dHRvbiNwcmV2aW91cy1idXR0b24ge1xuICBsZWZ0OiAyJTtcbn1cbi5iYWd1ZXR0ZUJveC1idXR0b24jY2xvc2UtYnV0dG9uIHtcbiAgdG9wOiAyMHB4O1xuICByaWdodDogMiU7XG4gIHJpZ2h0OiBjYWxjKDIlICsgNnB4KTtcbiAgd2lkdGg6IDMwcHg7XG4gIGhlaWdodDogMzBweDtcbn1cbi5iYWd1ZXR0ZUJveC1idXR0b24gc3ZnIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG59XG5cbi8qXG4gICAgUHJlbG9hZGVyXG4gICAgQm9ycm93ZWQgZnJvbSBodHRwOi8vdG9iaWFzYWhsaW4uY29tL3NwaW5raXQvXG4qL1xuLmJhZ3VldHRlQm94LXNwaW5uZXIge1xuICB3aWR0aDogNDBweDtcbiAgaGVpZ2h0OiA0MHB4O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IDUwJTtcbiAgbWFyZ2luLXRvcDogLTIwcHg7XG4gIG1hcmdpbi1sZWZ0OiAtMjBweDtcbn1cblxuLmJhZ3VldHRlQm94LWRvdWJsZS1ib3VuY2UxLFxuLmJhZ3VldHRlQm94LWRvdWJsZS1ib3VuY2UyIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBvcGFjaXR5OiAwLjY7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICBhbmltYXRpb246IGJvdW5jZSAycyBpbmZpbml0ZSBlYXNlLWluLW91dDtcbn1cblxuLmJhZ3VldHRlQm94LWRvdWJsZS1ib3VuY2UyIHtcbiAgYW5pbWF0aW9uLWRlbGF5OiAtMXM7XG59XG5cbkBrZXlmcmFtZXMgYm91bmNlIHtcbiAgMCUsIDEwMCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XG4gIH1cbiAgNTAlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICB9XG59XG4vKj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbj0gICAgICAgICAgICBDaG9pY2VzICAgICAgICAgICAgPVxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXG4uY2hvaWNlcyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luLWJvdHRvbTogMjRweDtcbiAgZm9udC1zaXplOiAxNnB4O1xufVxuLmNob2ljZXM6Zm9jdXMge1xuICBvdXRsaW5lOiBub25lO1xufVxuLmNob2ljZXM6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG4uY2hvaWNlcy5pcy1kaXNhYmxlZCAuY2hvaWNlc19faW5uZXIsIC5jaG9pY2VzLmlzLWRpc2FibGVkIC5jaG9pY2VzX19pbnB1dCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNFQUVBRUE7XG4gIGN1cnNvcjogbm90LWFsbG93ZWQ7XG4gIHVzZXItc2VsZWN0OiBub25lO1xufVxuLmNob2ljZXMuaXMtZGlzYWJsZWQgLmNob2ljZXNfX2l0ZW0ge1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xufVxuXG4uY2hvaWNlc1tkYXRhLXR5cGUqPXNlbGVjdC1vbmVdIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuLmNob2ljZXNbZGF0YS10eXBlKj1zZWxlY3Qtb25lXSAuY2hvaWNlc19faW5uZXIge1xuICBwYWRkaW5nLWJvdHRvbTogNy41cHg7XG59XG4uY2hvaWNlc1tkYXRhLXR5cGUqPXNlbGVjdC1vbmVdIC5jaG9pY2VzX19pbnB1dCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogMTBweDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNEREREREQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGRkZGRkY7XG4gIG1hcmdpbjogMDtcbn1cbi5jaG9pY2VzW2RhdGEtdHlwZSo9c2VsZWN0LW9uZV0gLmNob2ljZXNfX2J1dHRvbiB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uLy4uL2ljb25zL2Nyb3NzLWludmVyc2Uuc3ZnXCIpO1xuICBwYWRkaW5nOiAwO1xuICBiYWNrZ3JvdW5kLXNpemU6IDhweDtcbiAgaGVpZ2h0OiAxMDAlO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICByaWdodDogMDtcbiAgbWFyZ2luLXRvcDogLTEwcHg7XG4gIG1hcmdpbi1yaWdodDogMjVweDtcbiAgaGVpZ2h0OiAyMHB4O1xuICB3aWR0aDogMjBweDtcbiAgYm9yZGVyLXJhZGl1czogMTBlbTtcbiAgb3BhY2l0eTogMC41O1xufVxuLmNob2ljZXNbZGF0YS10eXBlKj1zZWxlY3Qtb25lXSAuY2hvaWNlc19fYnV0dG9uOmhvdmVyLCAuY2hvaWNlc1tkYXRhLXR5cGUqPXNlbGVjdC1vbmVdIC5jaG9pY2VzX19idXR0b246Zm9jdXMge1xuICBvcGFjaXR5OiAxO1xufVxuLmNob2ljZXNbZGF0YS10eXBlKj1zZWxlY3Qtb25lXSAuY2hvaWNlc19fYnV0dG9uOmZvY3VzIHtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMnB4ICMwMEJDRDQ7XG59XG4uY2hvaWNlc1tkYXRhLXR5cGUqPXNlbGVjdC1vbmVdOmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgaGVpZ2h0OiAwO1xuICB3aWR0aDogMDtcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLWNvbG9yOiAjMzMzMzMzIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICBib3JkZXItd2lkdGg6IDVweDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMTEuNXB4O1xuICB0b3A6IDUwJTtcbiAgbWFyZ2luLXRvcDogLTIuNXB4O1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cbi5jaG9pY2VzW2RhdGEtdHlwZSo9c2VsZWN0LW9uZV0uaXMtb3BlbjphZnRlciB7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgIzMzMzMzMyB0cmFuc3BhcmVudDtcbiAgbWFyZ2luLXRvcDogLTcuNXB4O1xufVxuLmNob2ljZXNbZGF0YS10eXBlKj1zZWxlY3Qtb25lXVtkaXI9cnRsXTphZnRlciB7XG4gIGxlZnQ6IDExLjVweDtcbiAgcmlnaHQ6IGF1dG87XG59XG4uY2hvaWNlc1tkYXRhLXR5cGUqPXNlbGVjdC1vbmVdW2Rpcj1ydGxdIC5jaG9pY2VzX19idXR0b24ge1xuICByaWdodDogYXV0bztcbiAgbGVmdDogMDtcbiAgbWFyZ2luLWxlZnQ6IDI1cHg7XG4gIG1hcmdpbi1yaWdodDogMDtcbn1cblxuLmNob2ljZXNbZGF0YS10eXBlKj1zZWxlY3QtbXVsdGlwbGVdIC5jaG9pY2VzX19pbm5lciwgLmNob2ljZXNbZGF0YS10eXBlKj10ZXh0XSAuY2hvaWNlc19faW5uZXIge1xuICBjdXJzb3I6IHRleHQ7XG59XG4uY2hvaWNlc1tkYXRhLXR5cGUqPXNlbGVjdC1tdWx0aXBsZV0gLmNob2ljZXNfX2J1dHRvbiwgLmNob2ljZXNbZGF0YS10eXBlKj10ZXh0XSAuY2hvaWNlc19fYnV0dG9uIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1yaWdodDogLTRweDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbWFyZ2luLWxlZnQ6IDhweDtcbiAgcGFkZGluZy1sZWZ0OiAxNnB4O1xuICBib3JkZXItbGVmdDogMXB4IHNvbGlkICMwMDhmYTE7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uLy4uL2ljb25zL2Nyb3NzLnN2Z1wiKTtcbiAgYmFja2dyb3VuZC1zaXplOiA4cHg7XG4gIHdpZHRoOiA4cHg7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBvcGFjaXR5OiAwLjc1O1xufVxuLmNob2ljZXNbZGF0YS10eXBlKj1zZWxlY3QtbXVsdGlwbGVdIC5jaG9pY2VzX19idXR0b246aG92ZXIsIC5jaG9pY2VzW2RhdGEtdHlwZSo9c2VsZWN0LW11bHRpcGxlXSAuY2hvaWNlc19fYnV0dG9uOmZvY3VzLCAuY2hvaWNlc1tkYXRhLXR5cGUqPXRleHRdIC5jaG9pY2VzX19idXR0b246aG92ZXIsIC5jaG9pY2VzW2RhdGEtdHlwZSo9dGV4dF0gLmNob2ljZXNfX2J1dHRvbjpmb2N1cyB7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5jaG9pY2VzX19pbm5lciB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgd2lkdGg6IDEwMCU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmOWY5Zjk7XG4gIHBhZGRpbmc6IDcuNXB4IDcuNXB4IDMuNzVweDtcbiAgYm9yZGVyOiAxcHggc29saWQgI0RERERERDtcbiAgYm9yZGVyLXJhZGl1czogMi41cHg7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgbWluLWhlaWdodDogNDRweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cbi5pcy1mb2N1c2VkIC5jaG9pY2VzX19pbm5lciwgLmlzLW9wZW4gLmNob2ljZXNfX2lubmVyIHtcbiAgYm9yZGVyLWNvbG9yOiAjYjdiN2I3O1xufVxuLmlzLW9wZW4gLmNob2ljZXNfX2lubmVyIHtcbiAgYm9yZGVyLXJhZGl1czogMi41cHggMi41cHggMCAwO1xufVxuLmlzLWZsaXBwZWQuaXMtb3BlbiAuY2hvaWNlc19faW5uZXIge1xuICBib3JkZXItcmFkaXVzOiAwIDAgMi41cHggMi41cHg7XG59XG5cbi5jaG9pY2VzX19saXN0IHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG5cbi5jaG9pY2VzX19saXN0LS1zaW5nbGUge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmc6IDRweCAxNnB4IDRweCA0cHg7XG4gIHdpZHRoOiAxMDAlO1xufVxuW2Rpcj1ydGxdIC5jaG9pY2VzX19saXN0LS1zaW5nbGUge1xuICBwYWRkaW5nLXJpZ2h0OiA0cHg7XG4gIHBhZGRpbmctbGVmdDogMTZweDtcbn1cbi5jaG9pY2VzX19saXN0LS1zaW5nbGUgLmNob2ljZXNfX2l0ZW0ge1xuICB3aWR0aDogMTAwJTtcbn1cblxuLmNob2ljZXNfX2xpc3QtLW11bHRpcGxlIHtcbiAgZGlzcGxheTogaW5saW5lO1xufVxuLmNob2ljZXNfX2xpc3QtLW11bHRpcGxlIC5jaG9pY2VzX19pdGVtIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBib3JkZXItcmFkaXVzOiAyMHB4O1xuICBwYWRkaW5nOiA0cHggMTBweDtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBmb250LXdlaWdodDogNTAwO1xuICBtYXJnaW4tcmlnaHQ6IDMuNzVweDtcbiAgbWFyZ2luLWJvdHRvbTogMy43NXB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDBCQ0Q0O1xuICBib3JkZXI6IDFweCBzb2xpZCAjMDBhNWJiO1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgd29yZC1icmVhazogYnJlYWstYWxsO1xufVxuLmNob2ljZXNfX2xpc3QtLW11bHRpcGxlIC5jaG9pY2VzX19pdGVtW2RhdGEtZGVsZXRhYmxlXSB7XG4gIHBhZGRpbmctcmlnaHQ6IDVweDtcbn1cbltkaXI9cnRsXSAuY2hvaWNlc19fbGlzdC0tbXVsdGlwbGUgLmNob2ljZXNfX2l0ZW0ge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIG1hcmdpbi1sZWZ0OiAzLjc1cHg7XG59XG4uY2hvaWNlc19fbGlzdC0tbXVsdGlwbGUgLmNob2ljZXNfX2l0ZW0uaXMtaGlnaGxpZ2h0ZWQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDBhNWJiO1xuICBib3JkZXI6IDFweCBzb2xpZCAjMDA4ZmExO1xufVxuLmlzLWRpc2FibGVkIC5jaG9pY2VzX19saXN0LS1tdWx0aXBsZSAuY2hvaWNlc19faXRlbSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNhYWFhYWE7XG4gIGJvcmRlcjogMXB4IHNvbGlkICM5MTkxOTE7XG59XG5cbi5jaG9pY2VzX19saXN0LS1kcm9wZG93biB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHotaW5kZXg6IDE7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGRkZGRkY7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNEREREREQ7XG4gIHRvcDogMTAwJTtcbiAgbWFyZ2luLXRvcDogLTFweDtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMi41cHg7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAyLjVweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgd29yZC1icmVhazogYnJlYWstYWxsO1xufVxuLmNob2ljZXNfX2xpc3QtLWRyb3Bkb3duLmlzLWFjdGl2ZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuLmlzLW9wZW4gLmNob2ljZXNfX2xpc3QtLWRyb3Bkb3duIHtcbiAgYm9yZGVyLWNvbG9yOiAjYjdiN2I3O1xufVxuLmlzLWZsaXBwZWQgLmNob2ljZXNfX2xpc3QtLWRyb3Bkb3duIHtcbiAgdG9wOiBhdXRvO1xuICBib3R0b206IDEwMCU7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IC0xcHg7XG4gIGJvcmRlci1yYWRpdXM6IDAuMjVyZW0gMC4yNXJlbSAwIDA7XG59XG4uY2hvaWNlc19fbGlzdC0tZHJvcGRvd24gLmNob2ljZXNfX2xpc3Qge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1heC1oZWlnaHQ6IDMwMHB4O1xuICBvdmVyZmxvdzogYXV0bztcbiAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICB3aWxsLWNoYW5nZTogc2Nyb2xsLXBvc2l0aW9uO1xufVxuLmNob2ljZXNfX2xpc3QtLWRyb3Bkb3duIC5jaG9pY2VzX19pdGVtIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nOiAxMHB4O1xuICBmb250LXNpemU6IDE0cHg7XG59XG5bZGlyPXJ0bF0gLmNob2ljZXNfX2xpc3QtLWRyb3Bkb3duIC5jaG9pY2VzX19pdGVtIHtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNjQwcHgpIHtcbiAgLmNob2ljZXNfX2xpc3QtLWRyb3Bkb3duIC5jaG9pY2VzX19pdGVtLS1zZWxlY3RhYmxlIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMDBweDtcbiAgfVxuICAuY2hvaWNlc19fbGlzdC0tZHJvcGRvd24gLmNob2ljZXNfX2l0ZW0tLXNlbGVjdGFibGU6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IGF0dHIoZGF0YS1zZWxlY3QtdGV4dCk7XG4gICAgZm9udC1zaXplOiAxMnB4O1xuICAgIG9wYWNpdHk6IDA7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAxMHB4O1xuICAgIHRvcDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgfVxuICBbZGlyPXJ0bF0gLmNob2ljZXNfX2xpc3QtLWRyb3Bkb3duIC5jaG9pY2VzX19pdGVtLS1zZWxlY3RhYmxlIHtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICBwYWRkaW5nLWxlZnQ6IDEwMHB4O1xuICAgIHBhZGRpbmctcmlnaHQ6IDEwcHg7XG4gIH1cbiAgW2Rpcj1ydGxdIC5jaG9pY2VzX19saXN0LS1kcm9wZG93biAuY2hvaWNlc19faXRlbS0tc2VsZWN0YWJsZTphZnRlciB7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogMTBweDtcbiAgfVxufVxuLmNob2ljZXNfX2xpc3QtLWRyb3Bkb3duIC5jaG9pY2VzX19pdGVtLS1zZWxlY3RhYmxlLmlzLWhpZ2hsaWdodGVkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YyZjJmMjtcbn1cbi5jaG9pY2VzX19saXN0LS1kcm9wZG93biAuY2hvaWNlc19faXRlbS0tc2VsZWN0YWJsZS5pcy1oaWdobGlnaHRlZDphZnRlciB7XG4gIG9wYWNpdHk6IDAuNTtcbn1cblxuLmNob2ljZXNfX2l0ZW0ge1xuICBjdXJzb3I6IGRlZmF1bHQ7XG59XG5cbi5jaG9pY2VzX19pdGVtLS1zZWxlY3RhYmxlIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4uY2hvaWNlc19faXRlbS0tZGlzYWJsZWQge1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgb3BhY2l0eTogMC41O1xufVxuXG4uY2hvaWNlc19faGVhZGluZyB7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgcGFkZGluZzogMTBweDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNmN2Y3Zjc7XG4gIGNvbG9yOiBncmF5O1xufVxuXG4uY2hvaWNlc19fYnV0dG9uIHtcbiAgdGV4dC1pbmRlbnQ6IC05OTk5cHg7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgYm9yZGVyOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG4uY2hvaWNlc19fYnV0dG9uOmZvY3VzIHtcbiAgb3V0bGluZTogbm9uZTtcbn1cblxuLmNob2ljZXNfX2lucHV0IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmOWY5Zjk7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICBib3JkZXI6IDA7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgcGFkZGluZzogNHB4IDAgNHB4IDJweDtcbn1cbi5jaG9pY2VzX19pbnB1dDpmb2N1cyB7XG4gIG91dGxpbmU6IDA7XG59XG5bZGlyPXJ0bF0gLmNob2ljZXNfX2lucHV0IHtcbiAgcGFkZGluZy1yaWdodDogMnB4O1xuICBwYWRkaW5nLWxlZnQ6IDA7XG59XG5cbi5jaG9pY2VzX19wbGFjZWhvbGRlciB7XG4gIG9wYWNpdHk6IDAuNTtcbn1cblxuLyo9PT09PSAgRW5kIG9mIENob2ljZXMgID09PT09PSovXG4uZ3JpZCB7XG4gIG1heC13aWR0aDogMTg0OHB4O1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDM3MHB4KSB7XG4gIC5ncmlkLS14eHMtcmV2ZXJzZSB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNTc2cHgpIHtcbiAgLmdyaWQtLXhzLXJldmVyc2Uge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5ncmlkLS1zbS1yZXZlcnNlIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAuZ3JpZC0tbWQtcmV2ZXJzZSB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5ncmlkLS1sZy1yZXZlcnNlIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxNjAwcHgpIHtcbiAgLmdyaWQtLXhsZy1yZXZlcnNlIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxODQ4cHgpIHtcbiAgLmdyaWQtLXBhZ2UtcmV2ZXJzZSB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIGFuZCAobWF4LXdpZHRoOiAxMTk5cHgpIHtcbiAgLmdyaWQtLXBhZ2Uge1xuICAgIHBhZGRpbmc6IDAgMzBweDtcbiAgfVxufVxuXG4uY29sLS1jZW50ZXIge1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xufVxuXG4uY29udGFpbmVyLWZ1bGwgPiAuZ3JpZCB7XG4gIG1heC13aWR0aDogbm9uZTtcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gIC5jb250YWluZXItZnVsbCB7XG4gICAgcGFkZGluZzogMCAxNXB4O1xuICB9XG59XG4ubWF0Y2hoZWlnaHQgPiAqIHtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuXG5ib2R5LFxuaHRtbCB7XG4gIGZvbnQtZmFtaWx5OiBcIm1vbnRzZXJyYXRyZWd1bGFyXCIsIGFyaWFsLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDE4cHg7XG4gIGxpbmUtaGVpZ2h0OiAzMnB4O1xuICBjb2xvcjogIzEyMjEyYjtcbn1cblxuYm9keSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1nL2JhY2tncm91bmQtaGYuc3ZnXCIpO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIDUwJTtcbiAgYmFja2dyb3VuZC1zaXplOiAxMDAlO1xuICAtbW96LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xufVxuXG46OnNlbGVjdGlvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxMjIxMmI7XG4gIGNvbG9yOiAjZmZmO1xufVxuXG5oMSxcbi5oMSxcbmgyLFxuLmgyLFxuaDMsXG4uaDMsXG5oNCxcbi5oNCxcbmg1LFxuLmg1LFxuaDYsXG4uaDYge1xuICBmb250LWZhbWlseTogXCJtb250c2VycmF0c2VtaWJvbGRcIiwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbWFyZ2luOiAwIDAgMTVweDtcbn1cbmgxIHNwYW4sXG4uaDEgc3BhbixcbmgyIHNwYW4sXG4uaDIgc3BhbixcbmgzIHNwYW4sXG4uaDMgc3Bhbixcbmg0IHNwYW4sXG4uaDQgc3Bhbixcbmg1IHNwYW4sXG4uaDUgc3Bhbixcbmg2IHNwYW4sXG4uaDYgc3BhbiB7XG4gIGZvbnQtZmFtaWx5OiBcIm1vbnRzZXJyYXRyZWd1bGFyXCIsIGFyaWFsLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDE4cHg7XG4gIGxpbmUtaGVpZ2h0OiAzMnB4O1xuICBmb250LXNpemU6IGluaGVyaXQ7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xufVxuXG4uZmVhdHVyZWQge1xuICBmb250LXNpemU6IDEyM3B4O1xuICBsaW5lLWhlaWdodDogMTMzcHg7XG4gIGxldHRlci1zcGFjaW5nOiAtNHB4O1xufVxuQG1lZGlhIChtYXgtd2lkdGg6IDExOTlweCkge1xuICAuZmVhdHVyZWQge1xuICAgIGZvbnQtc2l6ZTogODNweDtcbiAgICBsaW5lLWhlaWdodDogOTNweDtcbiAgfVxufVxuLmgxLFxuaDEge1xuICBmb250LXNpemU6IDc2cHg7XG4gIGxpbmUtaGVpZ2h0OiA4NnB4O1xuICBsZXR0ZXItc3BhY2luZzogLTNweDtcbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAuaDEsXG5oMSB7XG4gICAgZm9udC1zaXplOiA0N3B4O1xuICAgIGxpbmUtaGVpZ2h0OiA1N3B4O1xuICAgIGxldHRlci1zcGFjaW5nOiAtMnB4O1xuICB9XG59XG5cbi5oMixcbmgyIHtcbiAgZm9udC1zaXplOiA0N3B4O1xuICBsaW5lLWhlaWdodDogNTdweDtcbiAgbGV0dGVyLXNwYWNpbmc6IC0ycHg7XG59XG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLmgyLFxuaDIge1xuICAgIGZvbnQtc2l6ZTogMzVweDtcbiAgICBsaW5lLWhlaWdodDogNDVweDtcbiAgICBsZXR0ZXItc3BhY2luZzogLTFweDtcbiAgfVxufVxuXG4uaDMsXG5oMyB7XG4gIGZvbnQtc2l6ZTogMjlweDtcbiAgbGluZS1oZWlnaHQ6IDM5cHg7XG4gIGxldHRlci1zcGFjaW5nOiAtMXB4O1xufVxuXG4uaDQsXG5oNCB7XG4gIGZvbnQtc2l6ZTogMThweDtcbiAgbGluZS1oZWlnaHQ6IDI4cHg7XG4gIGxldHRlci1zcGFjaW5nOiAtMC41cHg7XG59XG5cbnAge1xuICBtYXJnaW4tdG9wOiAwO1xufVxucDpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luOiAwO1xufVxuXG4udGV4dC1jZW50ZXJlZCB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdGV4dC1hbGlnbi1sYXN0OiBjZW50ZXI7XG59XG5cbnN0cm9uZyB7XG4gIGZvbnQtZmFtaWx5OiBcIm1vbnRzZXJyYXRzZW1pYm9sZFwiLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xufVxuXG5lbSB7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cblxuc21hbGwge1xuICBmb250LXNpemU6IDkwJTtcbn1cblxuYSB7XG4gIGZvbnQtZmFtaWx5OiBcIm1vbnRzZXJyYXRzZW1pYm9sZFwiLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRyYW5zaXRpb246IGFsbCAwLjJzIGN1YmljLWJlemllcigwLjY0LCAwLjA0LCAwLjM1LCAxKTtcbiAgY29sb3I6ICMxMjIxMmI7XG59XG5hOmhvdmVyIHtcbiAgY29sb3I6ICMxMjIxMmI7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xufVxuYTpmb2N1cyB7XG4gIG91dGxpbmU6IDNweCBkYXNoZWQgY3VycmVudENvbG9yO1xufVxuLmpzLWZvY3VzLXZpc2libGUgYTpmb2N1czpub3QoLmZvY3VzLXZpc2libGUpIHtcbiAgb3V0bGluZTogMDtcbn1cbmEubm8tY2xpY2sge1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cblxuYnV0dG9uOmZvY3VzIHtcbiAgb3V0bGluZTogM3B4IGRhc2hlZCBjdXJyZW50Q29sb3I7XG59XG4uanMtZm9jdXMtdmlzaWJsZSBidXR0b246Zm9jdXM6bm90KC5mb2N1cy12aXNpYmxlKSB7XG4gIG91dGxpbmU6IDA7XG59XG5cbi5idG4ge1xuICBmb250LWZhbWlseTogXCJtb250c2VycmF0c2VtaWJvbGRcIiwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAzMHB4O1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAzMHB4O1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwYTFhYjtcbiAgcGFkZGluZzogMjRweCA1Mi41cHggMjMuMDc2OTIzMDc2OXB4IDI0cHg7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW4tcmlnaHQ6IDMwcHg7XG4gIHRyYW5zaXRpb246IGFsbCAwLjFzIGN1YmljLWJlemllcigwLjY0LCAwLjA0LCAwLjM1LCAxKTtcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgNHB4ICNmZmY7XG59XG4uYnRuOjpiZWZvcmUsIC5idG46OmFmdGVyIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWcvaWNvbi1zbWlsZS5zdmdcIik7XG4gIGJhY2tncm91bmQtc2l6ZTogMjBweDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogNTAlIDU1JTtcbiAgY29udGVudDogXCJcIjtcbiAgYm9yZGVyOiA0cHggc29saWQgI2ZmZjtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDBhMWFiO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHdpZHRoOiA2NnB4O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICByaWdodDogLTMycHg7XG4gIHRyYW5zaXRpb246IGFsbCAwLjVzIGN1YmljLWJlemllcigwLjY0LCAwLjA0LCAwLjM1LCAxKTtcbiAgei1pbmRleDogMTtcbn1cbi5idG46OmJlZm9yZSB7XG4gIGJvcmRlcjogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzEyMjEyYjtcbiAgaGVpZ2h0OiBjYWxjKDEwMCUgLSA4cHgpO1xuICB3aWR0aDogNThweDtcbiAgdG9wOiA0cHg7XG4gIHJpZ2h0OiAtMjhweDtcbiAgei1pbmRleDogMjtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKSBzY2FsZSgwKTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuNXMgY3ViaWMtYmV6aWVyKDAuNjQsIDAuMDQsIDAuMzUsIDEpO1xufVxuLmJ0bjpob3ZlciB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgY29sb3I6ICNmZmY7XG59XG4uYnRuOmhvdmVyOjpiZWZvcmUge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgwKSBzY2FsZSgxKTtcbn1cbi5idG46aG92ZXI6OmFmdGVyIHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoLTM2MGRlZyk7XG59XG4uYnRuOmZvY3VzIHtcbiAgb3V0bGluZS1jb2xvcjogIzEyMjEyYjtcbn1cbi5idG4tLWFsdCB7XG4gIGZvbnQtZmFtaWx5OiBcIm1vbnRzZXJyYXRzZW1pYm9sZFwiLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDMwcHg7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDMwcHg7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDBhMWFiO1xuICBwYWRkaW5nOiAyNHB4IDUyLjVweCAyMy4wNzY5MjMwNzY5cHggMjRweDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbi1yaWdodDogMzBweDtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMXMgY3ViaWMtYmV6aWVyKDAuNjQsIDAuMDQsIDAuMzUsIDEpO1xuICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCA0cHggI2ZmZjtcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgNHB4ICMxMjIxMmI7XG4gIGNvbG9yOiAjMTIyMTJiO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xufVxuLmJ0bi0tYWx0OjpiZWZvcmUsIC5idG4tLWFsdDo6YWZ0ZXIge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy9pY29uLXNtaWxlLnN2Z1wiKTtcbiAgYmFja2dyb3VuZC1zaXplOiAyMHB4O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA1MCUgNTUlO1xuICBjb250ZW50OiBcIlwiO1xuICBib3JkZXI6IDRweCBzb2xpZCAjZmZmO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMGExYWI7XG4gIGhlaWdodDogMTAwJTtcbiAgd2lkdGg6IDY2cHg7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAtMzJweDtcbiAgdHJhbnNpdGlvbjogYWxsIDAuNXMgY3ViaWMtYmV6aWVyKDAuNjQsIDAuMDQsIDAuMzUsIDEpO1xuICB6LWluZGV4OiAxO1xufVxuLmJ0bi0tYWx0OjpiZWZvcmUge1xuICBib3JkZXI6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxMjIxMmI7XG4gIGhlaWdodDogY2FsYygxMDAlIC0gOHB4KTtcbiAgd2lkdGg6IDU4cHg7XG4gIHRvcDogNHB4O1xuICByaWdodDogLTI4cHg7XG4gIHotaW5kZXg6IDI7XG4gIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZykgc2NhbGUoMCk7XG4gIHRyYW5zaXRpb246IGFsbCAwLjVzIGN1YmljLWJlemllcigwLjY0LCAwLjA0LCAwLjM1LCAxKTtcbn1cbi5idG4tLWFsdDpob3ZlciB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgY29sb3I6ICNmZmY7XG59XG4uYnRuLS1hbHQ6aG92ZXI6OmJlZm9yZSB7XG4gIHRyYW5zZm9ybTogcm90YXRlKDApIHNjYWxlKDEpO1xufVxuLmJ0bi0tYWx0OmhvdmVyOjphZnRlciB7XG4gIHRyYW5zZm9ybTogcm90YXRlKC0zNjBkZWcpO1xufVxuLmJ0bi0tYWx0OmZvY3VzIHtcbiAgb3V0bGluZS1jb2xvcjogIzEyMjEyYjtcbn1cbi5idG4tLWFsdDo6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzEyMjEyYjtcbn1cbi5idG4tLWFsdDo6YWZ0ZXIge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWcvaWNvbi1zbWlsZS13aC5zdmdcIik7XG4gIGJvcmRlci1jb2xvcjogIzEyMjEyYjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbn1cbi5idG4tLWFsdDpob3ZlciB7XG4gIGNvbG9yOiAjMTIyMTJiO1xufVxuLmJ0bi0td2lkZSB7XG4gIHdpZHRoOiBjYWxjKDEwMCUgLSAzMHB4KTtcbn1cbi5idG4tLW5vLWJvcmRlciB7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG59XG4uYnRuLS1mb290ZXIge1xuICBtYXJnaW4tdG9wOiAxMHB4O1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5idG4tLWZvb3RlciB7XG4gICAgbWFyZ2luLXRvcDogMjBweDtcbiAgfVxufVxuLmJ0bi0tZ2xvYmFsIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzEyMjEyYjtcbn1cbi5idG4tLWdsb2JhbDo6YWZ0ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTIyMTJiO1xufVxuLmJ0bi0tZ2xvYmFsOjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWUyNzM3O1xufVxuLmJ0bi0tcHJpbWFyeSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMGExYWI7XG4gIGNvbG9yOiAjZmZmO1xuICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCA0cHggI2ZmZjtcbn1cbi5idG4tLXByaW1hcnk6OmFmdGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwYTFhYjtcbiAgYm9yZGVyLWNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWcvaWNvbi1zbWlsZS5zdmdcIik7XG59XG4uYnRuLS1wcmltYXJ5OjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDBhMWFiO1xuICBib3JkZXItY29sb3I6ICNmZmY7XG59XG4uYnRuLS1wcmltYXJ5OmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgY29sb3I6ICMwMGExYWI7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwIDRweCAjMDBhMWFiO1xufVxuLmJ0bi0tcHJpbWFyeTpob3Zlcjo6YWZ0ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBib3JkZXItY29sb3I6ICMwMGExYWI7XG59XG4uYnRuLS1wcmltYXJ5OmhvdmVyOjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBib3JkZXItY29sb3I6ICMwMGExYWI7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy9pY29uLXNtaWxlLXByaW1hcnkuc3ZnXCIpO1xufVxuXG4uY3RhIHtcbiAgZm9udC1mYW1pbHk6IFwibW9udHNlcnJhdHNlbWlib2xkXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxMjIxMmI7XG4gIHBhZGRpbmc6IDEycHg7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRyYW5zaXRpb246IGFsbCAwLjJzIGN1YmljLWJlemllcigwLjY0LCAwLjA0LCAwLjM1LCAxKTtcbiAgYm9yZGVyOiBub25lO1xufVxuLmN0YTpob3ZlciwgLmN0YTpmb2N1cywgLmN0YS5hY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNmQ2ZTcxO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGNvbG9yOiAjZmZmO1xufVxuLmN0YTpmb2N1cyB7XG4gIG91dGxpbmUtY29sb3I6ICMxMjIxMmI7XG59XG5cbi5pY29uIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cbi5pY29uIHN2ZyB7XG4gIHdpZHRoOiAyMHB4O1xuICBoZWlnaHQ6IDIwcHg7XG4gIG1hcmdpbi1yaWdodDogOC41NzE0Mjg1NzE0cHg7XG59XG4uaWNvbiAuc3ZnLWljb24ge1xuICB0cmFuc2l0aW9uOiBmaWxsIDAuMnMgY3ViaWMtYmV6aWVyKDAuNjQsIDAuMDQsIDAuMzUsIDEpO1xufVxuLmljb246aG92ZXIge1xuICBjb2xvcjogIzAwYTFhYjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuLmljb246aG92ZXIgLnN2Zy1pY29uIHtcbiAgZmlsbDogIzAwYTFhYjtcbn1cbi5pY29uLS1zb2NpYWwgc3ZnIHtcbiAgd2lkdGg6IDQ1cHg7XG4gIGhlaWdodDogNDVweDtcbiAgbWFyZ2luOiAwO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5pY29uLS1zb2NpYWwgc3ZnIHtcbiAgICB3aWR0aDogNzYuNXB4O1xuICAgIGhlaWdodDogNzYuNXB4O1xuICB9XG59XG4uaWNvbi0tc29jaWFsIC5zdmctaWNvbiB7XG4gIGZpbGw6ICMxMjIxMmI7XG4gIHN0cm9rZTogI2ZmZjtcbn1cblxuaW1nIHtcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbi5mZyxcbi5iZyB7XG4gIHRyYW5zaXRpb246IGFsbCAwLjJzIGN1YmljLWJlemllcigwLjY0LCAwLjA0LCAwLjM1LCAxKTtcbn1cblxuLnN2ZyB7XG4gIHRyYW5zaXRpb246IGFsbCAwLjJzIGN1YmljLWJlemllcigwLjY0LCAwLjA0LCAwLjM1LCAxKTtcbn1cblxuLnBvaW50ZXItZGlzYWJsZWQge1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cblxuLmhpZGRlbiB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgdmlzaWJpbGl0eTogaGlkZGVuICFpbXBvcnRhbnQ7XG59XG5cbi52aWRlby1jb250YWluZXIsXG4ubWVkaWEtdmltZW8tdmlkZW8ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmctYm90dG9tOiA1Ni4yNSU7XG4gIHBhZGRpbmctdG9wOiAyNXB4O1xuICBoZWlnaHQ6IDA7XG59XG4udmlkZW8tY29udGFpbmVyIGlmcmFtZSxcbi5tZWRpYS12aW1lby12aWRlbyBpZnJhbWUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbn1cblxuLm1lZGlhLXNvdW5kY2xvdWQtYXVkaW8gaWZyYW1lIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC1oZWlnaHQ6IDE1MHB4O1xufVxuXG4ubGlzdGluZyB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gIG1hcmdpbi1sZWZ0OiAtMTVweDtcbiAgd2lkdGg6IGNhbGMoMTAwJSArIDMwcHgpO1xufVxuLmxpc3RpbmcgbGkge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG59XG5AbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgLmxpc3Rpbmcge1xuICAgIG1hcmdpbjogMCAtMTBweDtcbiAgICB3aWR0aDogY2FsYygxMDAlICsgMjBweCk7XG4gIH1cbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA1NzZweCkge1xuICAubGlzdGluZyB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG4ubGlzdGluZyA+IGxpIHtcbiAgcGFkZGluZzogMTVweDtcbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xuICAubGlzdGluZyA+IGxpIHtcbiAgICBwYWRkaW5nOiAwIDEwcHggMjBweDtcbiAgfVxufVxuQG1lZGlhIChtYXgtd2lkdGg6IDU3NnB4KSB7XG4gIC5saXN0aW5nID4gbGkge1xuICAgIHBhZGRpbmc6IDAgMCAzMHB4O1xuICB9XG59XG4ubGlzdGluZy0tb25lLWNvbCA+IGxpIHtcbiAgd2lkdGg6IDEwMCU7XG59XG4ubGlzdGluZy0tdHdvLWNvbCA+IGxpIHtcbiAgd2lkdGg6IDUwJTtcbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA1NzZweCkge1xuICAubGlzdGluZy0tdHdvLWNvbCA+IGxpIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuLmxpc3RpbmctLXRocmVlLWNvbCA+IGxpIHtcbiAgd2lkdGg6IDMzLjMzMzMlO1xufVxuQG1lZGlhIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAubGlzdGluZy0tdGhyZWUtY29sID4gbGkge1xuICAgIHdpZHRoOiA1MCU7XG4gIH1cbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA1NzZweCkge1xuICAubGlzdGluZy0tdGhyZWUtY29sID4gbGkge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG4ubGlzdGluZy0tZm91ci1jb2wgPiBsaSB7XG4gIHdpZHRoOiAyNSU7XG59XG5AbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgLmxpc3RpbmctLWZvdXItY29sID4gbGkge1xuICAgIHdpZHRoOiA1MCU7XG4gIH1cbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA1NzZweCkge1xuICAubGlzdGluZy0tZm91ci1jb2wgPiBsaSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cbi5saXN0aW5nLS1maXZlLWNvbCA+IGxpIHtcbiAgd2lkdGg6IDIwJTtcbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xuICAubGlzdGluZy0tZml2ZS1jb2wgPiBsaSB7XG4gICAgd2lkdGg6IDMzLjMzMzMlO1xuICB9XG59XG5AbWVkaWEgKG1heC13aWR0aDogNTc2cHgpIHtcbiAgLmxpc3RpbmctLWZpdmUtY29sID4gbGkge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG4ubGlzdGluZy0tc2l4LWNvbCA+IGxpIHtcbiAgd2lkdGg6IDE2LjY2NjYlO1xufVxuQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gIC5saXN0aW5nLS1zaXgtY29sID4gbGkge1xuICAgIHdpZHRoOiAzMy4zMzMzJTtcbiAgfVxufVxuQG1lZGlhIChtYXgtd2lkdGg6IDU3NnB4KSB7XG4gIC5saXN0aW5nLS1zaXgtY29sID4gbGkge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG5cbi5wYWdlciB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBkaXNwbGF5OiBibG9jaztcbiAgY2xlYXI6IGJvdGg7XG4gIG1hcmdpbjogNDVweCAwIDkwcHg7XG59XG4ucGFnZXIgbGkge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG59XG5AbWVkaWEgKG1heC13aWR0aDogMTE5OXB4KSB7XG4gIC5wYWdlciB7XG4gICAgbWFyZ2luOiAzMHB4IDAgNjBweDtcbiAgfVxufVxuLnBhZ2VyIGxpIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW46IDAgMTJweDtcbn1cbkBtZWRpYSAobWF4LXdpZHRoOiAxMTk5cHgpIHtcbiAgLnBhZ2VyIGxpIHtcbiAgICBtYXJnaW46IDAgNy41cHggNy41cHg7XG4gIH1cbn1cbi5wYWdlciBsaSBhIHtcbiAgcGFkZGluZzogMTBweCAyMy4wNzY5MjMwNzY5cHggOC41NzE0Mjg1NzE0cHg7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTIyMTJiO1xuICBjb2xvcjogI2ZmZjtcbn1cbi5wYWdlciBsaSBhOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwYTFhYjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuLnBhZ2VyIGxpLmlzLWFjdGl2ZSBhIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwYTFhYjtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG4ucGFnZXIgbGkucGFnZXItY3VycmVudCB7XG4gIHBhZGRpbmc6IDEwcHggMjBweDtcbn1cblxuLmFkbWluLWZ1bmN0aW9ucyB7XG4gIHBhZGRpbmc6IDA7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiBhdXRvO1xuICB3aWR0aDogMTAwJTtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwYTFhYjtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICB6LWluZGV4OiAzMTtcbn1cbi5hZG1pbi1mdW5jdGlvbnMgW2NsYXNzKj1jb2wtXSB7XG4gIHBhZGRpbmc6IDA7XG59XG4uYWRtaW4tZnVuY3Rpb25zIHVsIHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXI6IDA7XG4gIG1hcmdpbjogMTVweCAwO1xuICBwYWRkaW5nOiAwO1xufVxuLmFkbWluLWZ1bmN0aW9ucyB1bCBsaSB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbn1cbi5hZG1pbi1mdW5jdGlvbnMgdWwgbGkge1xuICBtYXJnaW4tcmlnaHQ6IDQ1cHg7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cbi5hZG1pbi1mdW5jdGlvbnMgdWwgbGkgYSB7XG4gIGNvbG9yOiAjZmZmO1xuICBtYXJnaW46IDA7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgcGFkZGluZzogMDtcbiAgb3BhY2l0eTogMC42O1xufVxuLmFkbWluLWZ1bmN0aW9ucyB1bCBsaSBhLmlzLWFjdGl2ZSwgLmFkbWluLWZ1bmN0aW9ucyB1bCBsaSBhOmhvdmVyIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBvcGFjaXR5OiAxO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbmlucHV0W3R5cGU9dGV4dF0sXG5pbnB1dFt0eXBlPWVtYWlsXSxcbmlucHV0W3R5cGU9cGFzc3dvcmRdLFxuaW5wdXRbdHlwZT1udW1iZXJdLFxuaW5wdXRbdHlwZT1zZWFyY2hdLFxuaW5wdXRbdHlwZT10ZWxdLFxuaW5wdXRbdHlwZT1kYXRlXSxcbnRleHRhcmVhLFxuc2VsZWN0IHtcbiAgZm9udC1mYW1pbHk6IFwibW9udHNlcnJhdHJlZ3VsYXJcIiwgYXJpYWwsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMThweDtcbiAgbGluZS1oZWlnaHQ6IDMycHg7XG4gIGNvbG9yOiAjMTIyMTJiO1xuICByZXNpemU6IG5vbmU7XG4gIHBhZGRpbmc6IDExLjI1cHggMjIuNXB4O1xuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDBweDtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgb3V0bGluZTogMDtcbiAgYm9yZGVyOiA0cHggc29saWQgIzEyMjEyYjtcbiAgYm9yZGVyLXJhZGl1czogMzBweDtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMnMgY3ViaWMtYmV6aWVyKDAuNjQsIDAuMDQsIDAuMzUsIDEpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBhcHBlYXJhbmNlOiBub25lO1xuICBtaW4taGVpZ2h0OiA2NXB4O1xuICB3aWR0aDogMTAwJTtcbn1cbmlucHV0W3R5cGU9dGV4dF06Zm9jdXMsIGlucHV0W3R5cGU9dGV4dF06YWN0aXZlLFxuaW5wdXRbdHlwZT1lbWFpbF06Zm9jdXMsXG5pbnB1dFt0eXBlPWVtYWlsXTphY3RpdmUsXG5pbnB1dFt0eXBlPXBhc3N3b3JkXTpmb2N1cyxcbmlucHV0W3R5cGU9cGFzc3dvcmRdOmFjdGl2ZSxcbmlucHV0W3R5cGU9bnVtYmVyXTpmb2N1cyxcbmlucHV0W3R5cGU9bnVtYmVyXTphY3RpdmUsXG5pbnB1dFt0eXBlPXNlYXJjaF06Zm9jdXMsXG5pbnB1dFt0eXBlPXNlYXJjaF06YWN0aXZlLFxuaW5wdXRbdHlwZT10ZWxdOmZvY3VzLFxuaW5wdXRbdHlwZT10ZWxdOmFjdGl2ZSxcbmlucHV0W3R5cGU9ZGF0ZV06Zm9jdXMsXG5pbnB1dFt0eXBlPWRhdGVdOmFjdGl2ZSxcbnRleHRhcmVhOmZvY3VzLFxudGV4dGFyZWE6YWN0aXZlLFxuc2VsZWN0OmZvY3VzLFxuc2VsZWN0OmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxMjIxMmI7XG4gIGNvbG9yOiAjZmZmO1xufVxuaW5wdXRbdHlwZT10ZXh0XTpmb2N1czo6cGxhY2Vob2xkZXIsIGlucHV0W3R5cGU9dGV4dF06YWN0aXZlOjpwbGFjZWhvbGRlcixcbmlucHV0W3R5cGU9ZW1haWxdOmZvY3VzOjpwbGFjZWhvbGRlcixcbmlucHV0W3R5cGU9ZW1haWxdOmFjdGl2ZTo6cGxhY2Vob2xkZXIsXG5pbnB1dFt0eXBlPXBhc3N3b3JkXTpmb2N1czo6cGxhY2Vob2xkZXIsXG5pbnB1dFt0eXBlPXBhc3N3b3JkXTphY3RpdmU6OnBsYWNlaG9sZGVyLFxuaW5wdXRbdHlwZT1udW1iZXJdOmZvY3VzOjpwbGFjZWhvbGRlcixcbmlucHV0W3R5cGU9bnVtYmVyXTphY3RpdmU6OnBsYWNlaG9sZGVyLFxuaW5wdXRbdHlwZT1zZWFyY2hdOmZvY3VzOjpwbGFjZWhvbGRlcixcbmlucHV0W3R5cGU9c2VhcmNoXTphY3RpdmU6OnBsYWNlaG9sZGVyLFxuaW5wdXRbdHlwZT10ZWxdOmZvY3VzOjpwbGFjZWhvbGRlcixcbmlucHV0W3R5cGU9dGVsXTphY3RpdmU6OnBsYWNlaG9sZGVyLFxuaW5wdXRbdHlwZT1kYXRlXTpmb2N1czo6cGxhY2Vob2xkZXIsXG5pbnB1dFt0eXBlPWRhdGVdOmFjdGl2ZTo6cGxhY2Vob2xkZXIsXG50ZXh0YXJlYTpmb2N1czo6cGxhY2Vob2xkZXIsXG50ZXh0YXJlYTphY3RpdmU6OnBsYWNlaG9sZGVyLFxuc2VsZWN0OmZvY3VzOjpwbGFjZWhvbGRlcixcbnNlbGVjdDphY3RpdmU6OnBsYWNlaG9sZGVyIHtcbiAgY29sb3I6ICNmZmY7XG59XG5pbnB1dFt0eXBlPXRleHRdOjpwbGFjZWhvbGRlcixcbmlucHV0W3R5cGU9ZW1haWxdOjpwbGFjZWhvbGRlcixcbmlucHV0W3R5cGU9cGFzc3dvcmRdOjpwbGFjZWhvbGRlcixcbmlucHV0W3R5cGU9bnVtYmVyXTo6cGxhY2Vob2xkZXIsXG5pbnB1dFt0eXBlPXNlYXJjaF06OnBsYWNlaG9sZGVyLFxuaW5wdXRbdHlwZT10ZWxdOjpwbGFjZWhvbGRlcixcbmlucHV0W3R5cGU9ZGF0ZV06OnBsYWNlaG9sZGVyLFxudGV4dGFyZWE6OnBsYWNlaG9sZGVyLFxuc2VsZWN0OjpwbGFjZWhvbGRlciB7XG4gIGNvbG9yOiAjMTIyMTJiO1xufVxuaW5wdXRbdHlwZT10ZXh0XTo6LW1zLWNsZWFyLFxuaW5wdXRbdHlwZT1lbWFpbF06Oi1tcy1jbGVhcixcbmlucHV0W3R5cGU9cGFzc3dvcmRdOjotbXMtY2xlYXIsXG5pbnB1dFt0eXBlPW51bWJlcl06Oi1tcy1jbGVhcixcbmlucHV0W3R5cGU9c2VhcmNoXTo6LW1zLWNsZWFyLFxuaW5wdXRbdHlwZT10ZWxdOjotbXMtY2xlYXIsXG5pbnB1dFt0eXBlPWRhdGVdOjotbXMtY2xlYXIsXG50ZXh0YXJlYTo6LW1zLWNsZWFyLFxuc2VsZWN0OjotbXMtY2xlYXIge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG5pbnB1dFt0eXBlPXNlYXJjaF0sXG5pbnB1dFt0eXBlPXRleHRdLFxuaW5wdXRbdHlwZT1zdWJtaXRdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xufVxuXG4uZm9ybS1hY3Rpb25zIGlucHV0LFxuaW5wdXRbdHlwZT1zdWJtaXRdIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG5pbnB1dFt0eXBlPXN1Ym1pdF0ge1xuICBmb250LWZhbWlseTogXCJtb250c2VycmF0c2VtaWJvbGRcIiwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzEyMjEyYjtcbiAgcGFkZGluZzogMTJweDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMnMgY3ViaWMtYmV6aWVyKDAuNjQsIDAuMDQsIDAuMzUsIDEpO1xuICBib3JkZXI6IG5vbmU7XG59XG5pbnB1dFt0eXBlPXN1Ym1pdF06aG92ZXIsIGlucHV0W3R5cGU9c3VibWl0XTpmb2N1cywgaW5wdXRbdHlwZT1zdWJtaXRdLmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM2ZDZlNzE7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgY29sb3I6ICNmZmY7XG59XG5pbnB1dFt0eXBlPXN1Ym1pdF06Zm9jdXMge1xuICBvdXRsaW5lLWNvbG9yOiAjMTIyMTJiO1xufVxuXG5sYWJlbCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG50ZXh0YXJlYSB7XG4gIGhlaWdodDogMTIwcHg7XG59XG5cbnNlbGVjdCB7XG4gIGJhY2tncm91bmQ6ICNmZmYgdXJsKFwiLi4vaW1nL2N0YS1hcnJvdy1kb3duLS1pbnZlcnRlZC5zdmdcIikgbm8tcmVwZWF0IHJpZ2h0IDIyLjVweCBjZW50ZXI7XG4gIGJhY2tncm91bmQtc2l6ZTogMzZweDtcbiAgcGFkZGluZy1yaWdodDogNjBweDtcbiAgbWluLXdpZHRoOiAyODBweDtcbn1cbnNlbGVjdDo6LW1zLWV4cGFuZCB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5zZWxlY3Q6Zm9jdXMsIHNlbGVjdDphY3RpdmUge1xuICBiYWNrZ3JvdW5kOiAjMTIyMTJiIHVybChcIi4uL2ltZy9jdGEtYXJyb3ctZG93bi5zdmdcIikgbm8tcmVwZWF0IHJpZ2h0IDIyLjVweCBjZW50ZXI7XG4gIGJhY2tncm91bmQtc2l6ZTogMzZweDtcbn1cblxuW3R5cGU9Y2hlY2tib3hdOmNoZWNrZWQsXG5bdHlwZT1jaGVja2JveF06bm90KDpjaGVja2VkKSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogLTk5OTlweDtcbn1cblxuW3R5cGU9Y2hlY2tib3hdOmNoZWNrZWQgKyBsYWJlbCxcblt0eXBlPWNoZWNrYm94XTpub3QoOmNoZWNrZWQpICsgbGFiZWwge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmctbGVmdDogMzJweDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBsaW5lLWhlaWdodDogMjBweDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG5bdHlwZT1jaGVja2JveF06Y2hlY2tlZCArIGxhYmVsOmJlZm9yZSxcblt0eXBlPWNoZWNrYm94XTpub3QoOmNoZWNrZWQpICsgbGFiZWw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG4gIHdpZHRoOiAyNHB4O1xuICBoZWlnaHQ6IDI0cHg7XG4gIGJvcmRlcjogM3B4IHNvbGlkICMxMjIxMmI7XG4gIGJvcmRlci1yYWRpdXM6IDdweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbn1cblxuW3R5cGU9Y2hlY2tib3hdOmNoZWNrZWQgKyBsYWJlbDphZnRlcixcblt0eXBlPWNoZWNrYm94XTpub3QoOmNoZWNrZWQpICsgbGFiZWw6YWZ0ZXIge1xuICBjb250ZW50OiBcIuKclCBcIjtcbiAgY29sb3I6ICMxMjIxMmI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAycHg7XG4gIGxlZnQ6IDQuNXB4O1xuICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBjdWJpYy1iZXppZXIoMC42NCwgMC4wNCwgMC4zNSwgMSk7XG59XG5cblt0eXBlPWNoZWNrYm94XTpub3QoOmNoZWNrZWQpICsgbGFiZWw6YWZ0ZXIge1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2Zvcm06IHNjYWxlKDApO1xufVxuXG5bdHlwZT1jaGVja2JveF06Y2hlY2tlZCArIGxhYmVsOmFmdGVyIHtcbiAgb3BhY2l0eTogMTtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbn1cblxuW3R5cGU9cmFkaW9dOmNoZWNrZWQsXG5bdHlwZT1yYWRpb106bm90KDpjaGVja2VkKSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogLTk5OTlweDtcbn1cblxuW3R5cGU9cmFkaW9dOmNoZWNrZWQgKyBsYWJlbCxcblt0eXBlPXJhZGlvXTpub3QoOmNoZWNrZWQpICsgbGFiZWwge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmctbGVmdDogMjhweDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBsaW5lLWhlaWdodDogMjBweDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBjb2xvcjogIzEyMjEyYjtcbn1cblxuW3R5cGU9cmFkaW9dOmNoZWNrZWQgKyBsYWJlbDpiZWZvcmUsXG5bdHlwZT1yYWRpb106bm90KDpjaGVja2VkKSArIGxhYmVsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xuICB3aWR0aDogMjBweDtcbiAgaGVpZ2h0OiAyMHB4O1xuICBib3JkZXI6IDJweCBzb2xpZCAjMTIyMTJiO1xuICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xufVxuXG5bdHlwZT1yYWRpb106Y2hlY2tlZCArIGxhYmVsOmFmdGVyLFxuW3R5cGU9cmFkaW9dOm5vdCg6Y2hlY2tlZCkgKyBsYWJlbDphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHdpZHRoOiAxMnB4O1xuICBoZWlnaHQ6IDEycHg7XG4gIGJhY2tncm91bmQ6ICMxMjIxMmI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA0cHg7XG4gIGxlZnQ6IDRweDtcbiAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMnMgY3ViaWMtYmV6aWVyKDAuNjQsIDAuMDQsIDAuMzUsIDEpO1xufVxuXG5bdHlwZT1yYWRpb106bm90KDpjaGVja2VkKSArIGxhYmVsOmFmdGVyIHtcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcbn1cblxuW3R5cGU9cmFkaW9dOmNoZWNrZWQgKyBsYWJlbDphZnRlciB7XG4gIG9wYWNpdHk6IDE7XG4gIHRyYW5zZm9ybTogc2NhbGUoMSk7XG59XG5cbmJ1dHRvbiB7XG4gIHBhZGRpbmc6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IDA7XG59XG5cbi5oZWFkZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICB3aWR0aDogMTAwJTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiA0MTtcbiAgLyoqXG4gICAqIE92ZXJyaWRlc1xuICAgKi9cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAuaGVhZGVyIHtcbiAgICBoZWlnaHQ6IDEzMHB4O1xuICAgIGJvcmRlci10b3A6IDRweCBzb2xpZCAjMTIyMTJiO1xuICB9XG59XG4uaGVhZGVyX19vdXRlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBtYXgtd2lkdGg6IDE4NDhweDtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAuaGVhZGVyX19vdXRlciB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICBwYWRkaW5nOiAwIDE1cHg7XG4gIH1cbn1cbi5oZWFkZXItLWlubmVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBmbGV4OiAwIDEgYXV0bztcbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA5OTJweCkge1xuICAuaGVhZGVyLS1pbm5lciB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA5OTJweCkge1xuICAuaGVhZGVyX19sZWZ0IHtcbiAgICBwYWRkaW5nOiAyMHB4IDE1cHg7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICB9XG59XG4uaGVhZGVyX19sb2dvIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICB3aWR0aDogMTMwcHg7XG4gIGhlaWdodDogMTMwcHg7XG4gIG1hcmdpbi1yaWdodDogNDVweDtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5AbWVkaWEgKG1heC13aWR0aDogOTkycHgpIHtcbiAgLmhlYWRlcl9fbG9nbyB7XG4gICAgd2lkdGg6IDcwcHg7XG4gICAgaGVpZ2h0OiA3MHB4O1xuICAgIG1hcmdpbi1yaWdodDogMTZweDtcbiAgfVxufVxuLmhlYWRlcl9fbG9nbyBzdmcge1xuICBoZWlnaHQ6IDY1JTtcbiAgd2lkdGg6IGF1dG87XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuLmhlYWRlcl9fbG9nbzpob3ZlciB7XG4gIG9wYWNpdHk6IDAuNjtcbn1cbi5oZWFkZXJfX3NlYXJjaCB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5AbWVkaWEgKG1heC13aWR0aDogOTkycHgpIHtcbiAgLmhlYWRlcl9fc2VhcmNoIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZm9udC1mYW1pbHk6IFwibW9udHNlcnJhdHJlZ3VsYXJcIiwgYXJpYWwsIHNhbnMtc2VyaWY7XG4gICAgZm9udC1zaXplOiAxOHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAzMnB4O1xuICAgIG1hcmdpbjogMCAxNnB4IDAgYXV0bztcbiAgfVxufVxuLmhlYWRlcl9fc2VhcmNoIHBhdGgsXG4uaGVhZGVyX19zZWFyY2ggZyB7XG4gIGZpbGw6ICMxMjIxMmI7XG59XG4ubmF2LW9wZW4gLmhlYWRlcl9fc2VhcmNoIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi5oZWFkZXJfX3dpZGdldCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMTA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICBmbGV4OiAwIDAgYXV0bztcbiAgaGVpZ2h0OiBjYWxjKDEzMHB4ICsgMzBweCk7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDE1cHg7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAxNXB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTIyMTJiO1xuICB0b3A6IDE1cHg7XG59XG5AbWVkaWEgKG1heC13aWR0aDogOTkycHgpIHtcbiAgLmhlYWRlcl9fd2lkZ2V0IHtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIGhlaWdodDogYXV0bztcbiAgICB3aWR0aDogMTAwJTtcbiAgICB0b3A6IDA7XG4gIH1cbn1cbi5oZWFkZXJfX3dpZGdldDo6YmVmb3JlLCAuaGVhZGVyX193aWRnZXQ6OmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgd2lkdGg6IDE3cHg7XG4gIGhlaWdodDogMTJweDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IC0ycHg7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBjb250ZW50OiBub25lO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSBhbmQgKG1pbi1oZWlnaHQ6IDU3NnB4KSB7XG4gIC5oZWFkZXJfX3dpZGdldDo6YmVmb3JlLCAuaGVhZGVyX193aWRnZXQ6OmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICB9XG59XG4uaGVhZGVyX193aWRnZXQ6OmJlZm9yZSB7XG4gIGxlZnQ6IC04cHg7XG4gIGJhY2tncm91bmQ6IHVybChcIi4uL2ltZy9hcmNoLnN2Z1wiKSBuby1yZXBlYXQgY2VudGVyIGNlbnRlcjtcbiAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xufVxuLmhlYWRlcl9fd2lkZ2V0OjphZnRlciB7XG4gIGJhY2tncm91bmQ6IHVybChcIi4uL2ltZy9hcmNoLS1yaWdodC5zdmdcIikgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXI7XG4gIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgcmlnaHQ6IC05cHg7XG59XG4uaGVhZGVyX193aWRnZXQtaW5uZXIge1xuICBwYWRkaW5nOiAyMHB4O1xuICBjb2xvcjogI2ZmZjtcbiAgdHJhbnNpdGlvbjogYWxsIDJzIGN1YmljLWJlemllcigwLjY0LCAwLjA0LCAwLjM1LCAxKTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA5OTJweCkge1xuICAuaGVhZGVyX193aWRnZXQtaW5uZXIge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG4uaGVhZGVyX193aWRnZXQtbGlua3Mge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA5OTJweCkge1xuICAuaGVhZGVyX193aWRnZXQtbGlua3Mge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cbi5oZWFkZXJfX3dpZGdldC1saW5rcyAuaWNvbiB7XG4gIGZvbnQtZmFtaWx5OiBcIm1vbnRzZXJyYXRyZWd1bGFyXCIsIGFyaWFsLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDE4cHg7XG4gIGxpbmUtaGVpZ2h0OiAzMnB4O1xuICBjb2xvcjogI2ZmZjtcbiAgbWFyZ2luOiAwIDE1cHg7XG59XG4uaGVhZGVyX193aWRnZXQtbGlua3MgLmljb24gLnN2Zy1pY29uIHtcbiAgZmlsbDogI2ZmZjtcbn1cbi5oZWFkZXJfX3dpZGdldC1saW5rcyAuaWNvbjpob3ZlciB7XG4gIGNvbG9yOiAjMDBhMWFiO1xufVxuLmhlYWRlcl9fd2lkZ2V0LWxpbmtzIC5pY29uOmhvdmVyIC5zdmctaWNvbiB7XG4gIGZpbGw6ICMwMGExYWI7XG59XG5AbWVkaWEgKG1heC13aWR0aDogOTkycHgpIHtcbiAgLmhlYWRlciAuYnRuLS1kaXNjb3ZlciB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuQG1lZGlhIChtYXgtd2lkdGg6IDk5MnB4KSB7XG4gIC5uYXYtb3BlbiAuaGVhZGVyIC5oZWFkZXJfX3JpZ2h0IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5AbWVkaWEgKG1heC13aWR0aDogOTkycHgpIHtcbiAgLm5hdi1vcGVuIC5oZWFkZXIgLmhlYWRlcl9fbGVmdCB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgei1pbmRleDogNDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDB2aDtcbiAgICBoZWlnaHQ6IGNhbGModmFyKC0tdmgsIDF2aCkgKiAxMDApO1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA5OTJweCkge1xuICAubmF2LW9wZW4ge1xuICAgIG92ZXJmbG93LXk6IGhpZGRlbjtcbiAgfVxufVxuXG4udXNlci1sb2dnZWQtaW4gLmhlYWRlciB7XG4gIHRvcDogNjJweDtcbn1cblxuLnB0dGMtbG9nb3Mge1xuICBkaXNwbGF5OiBncmlkO1xuICBnYXA6IDIwcHg7XG4gIG1hcmdpbi10b3A6IDQwcHg7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogYXV0byAxZnI7XG59XG4uYWRtaW5pbWFsLWFkbWluLXRvb2xiYXIgLnB0dGMtbG9nb3Mge1xuICBtYXJnaW4tdG9wOiAxMDBweDtcbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAucHR0Yy1sb2dvcyB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IGF1dG8gMWZyO1xuICB9XG59XG4ucHR0Yy1sb2dvcy0tc2Vjb25kYXJ5IGltZyB7XG4gIG1heC13aWR0aDogMTAwcHg7XG4gIG1heC1oZWlnaHQ6IDUwcHg7XG59XG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLnB0dGMtbG9nb3MtLXNlY29uZGFyeSBpbWcge1xuICAgIG1heC13aWR0aDogNzVweDtcbiAgICBtYXgtaGVpZ2h0OiAzMHB4O1xuICB9XG59XG5AbWVkaWEgKG1heC13aWR0aDogNTc1cHgpIHtcbiAgLnB0dGMtbG9nb3MtLXNlY29uZGFyeSBpbWcge1xuICAgIG1heC13aWR0aDogNTVweDtcbiAgfVxufVxuLnB0dGMtbG9nb3MtLW1haW4gaW1nIHtcbiAgbWF4LXdpZHRoOiAyMTBweDtcbiAgbWF4LWhlaWdodDogNTBweDtcbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAucHR0Yy1sb2dvcy0tbWFpbiBpbWcge1xuICAgIG1heC13aWR0aDogMTUwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA1NzVweCkge1xuICAucHR0Yy1sb2dvcy0tbWFpbiBpbWcge1xuICAgIG1heC13aWR0aDogMTI1cHg7XG4gIH1cbn1cbi5wdHRjLWxvZ29zLS1pdGVtcyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGdhcDogMjBweDtcbiAgZmxleC13cmFwOiB3cmFwO1xufVxuXG5zcGVrdHJpeC1naWZ0LXZvdWNoZXJzIHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC1nYXA6IDMwcHg7XG59XG5zcGVrdHJpeC1naWZ0LXZvdWNoZXJzIC5jaG9pY2VzX19pbm5lciB7XG4gIGJvcmRlcjogbm9uZTtcbn1cbnNwZWt0cml4LWdpZnQtdm91Y2hlcnMgLmNob2ljZXNfX2xpc3Qge1xuICBib3JkZXI6IG5vbmU7XG59XG5zcGVrdHJpeC1naWZ0LXZvdWNoZXJzIC5jaG9pY2VzX19saXN0IGlucHV0IHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4uZm9vdGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzEyMjEyYjtcbiAgY29sb3I6ICNmZmY7XG4gIHBhZGRpbmc6IDkwcHggMDtcbn1cbkBtZWRpYSAobWF4LXdpZHRoOiAxMTk5cHgpIHtcbiAgLmZvb3RlciB7XG4gICAgcGFkZGluZzogNDVweCAwO1xuICB9XG59XG4uZm9vdGVyIC5idG4ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTIyMTJiO1xufVxuLmZvb3RlciAuYnRuOjphZnRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxMjIxMmI7XG59XG4uZm9vdGVyIC5idG46OmJlZm9yZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlZTI3Mzc7XG59XG4uZm9vdGVyX19pbm5lciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gIGZsZXgtd3JhcDogd3JhcDtcbn1cbkBtZWRpYSAobWF4LXdpZHRoOiAxMTk5cHgpIHtcbiAgLmZvb3Rlcl9faW5uZXIge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgfVxufVxuLmZvb3Rlcl9faW5uZXItLWluZm8ge1xuICBtYXJnaW4tdG9wOiAxMHB4O1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1pbi1oZWlnaHQ6IDU3NnB4KSB7XG4gIC5mb290ZXJfX2lubmVyLS1pbmZvIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICB9XG59XG4uZm9vdGVyX19pbm5lci1jb2wge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBmbGV4LXdyYXA6IHdyYXA7XG59XG4uZm9vdGVyX19pbm5lci1sZWZ0IHN2ZyB7XG4gIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXgtd2lkdGg6IDEwMCU7XG59XG5AbWVkaWEgKG1heC13aWR0aDogMTE5OXB4KSB7XG4gIC5mb290ZXJfX2lubmVyLWxlZnQgc3ZnIHtcbiAgICBtYXJnaW46IDAgYXV0byAzMHB4O1xuICB9XG59XG4uZm9vdGVyX19pbm5lci1yaWdodCB7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcbn1cbkBtZWRpYSAobWF4LXdpZHRoOiAxMTk5cHgpIHtcbiAgLmZvb3Rlcl9faW5uZXItcmlnaHQge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tdG9wOiA0NXB4O1xuICB9XG59XG5AbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgLmZvb3Rlcl9faW5uZXItcmlnaHQge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIH1cbn1cbi5mb290ZXJfX2lubmVyLXJpZ2h0IC5ibG9jayB7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xufVxuLmZvb3Rlcl9faW5uZXItcmlnaHQgLmJsb2NrIGgzIHtcbiAgbWFyZ2luLWJvdHRvbTogMzBweDtcbn1cbi5mb290ZXJfX2lubmVyLS1jcmVkaXRzIC5ibG9jayB7XG4gIGZsZXg6IDAgMSBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IDMwcHg7XG59XG5AbWVkaWEgKG1heC13aWR0aDogMTU5OXB4KSB7XG4gIC5mb290ZXJfX2lubmVyLS1jcmVkaXRzIC5ibG9jayB7XG4gICAgbWF4LXdpZHRoOiA2ODBweDtcbiAgfVxufVxuQG1lZGlhIChtYXgtd2lkdGg6IDExOTlweCkge1xuICAuZm9vdGVyX19pbm5lci0tY3JlZGl0cyAuYmxvY2sge1xuICAgIG1hcmdpbjogMTVweCBhdXRvIDA7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG59XG4uZm9vdGVyX19pbm5lci0tY3JlZGl0cyAuYmxvY2s6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1yaWdodDogMDtcbn1cbkBtZWRpYSAobWF4LXdpZHRoOiAxMTk5cHgpIHtcbiAgLmZvb3Rlcl9faW5uZXItLWNyZWRpdHMgLmJsb2NrOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgfVxufVxuLmZvb3Rlcl9faW5uZXItLWNyZWRpdHMgLmJsb2NrOmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLXRvcDogMDtcbn1cbi5mb290ZXJfX3N1cHBvcnQge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGNvbG9yOiAjZmZmO1xuICB0ZXh0LWFsaWduLWxhc3Q6IGNlbnRlcjtcbiAgYm9yZGVyLWJvdHRvbTogNHB4IHNvbGlkICNmZmY7XG4gIHBhZGRpbmctYm90dG9tOiA0MHB4O1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1pbi1oZWlnaHQ6IDU3NnB4KSB7XG4gIC5mb290ZXJfX3N1cHBvcnQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgY29sb3I6ICMxMjIxMmI7XG4gICAgcGFkZGluZzogNDVweCA5MHB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDEzNXB4O1xuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgYm9yZGVyOiBub25lO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLmZvb3Rlcl9fc3VwcG9ydCB7XG4gICAgbWFyZ2luLWJvdHRvbTogNDVweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAuZm9vdGVyX19zdXBwb3J0IHtcbiAgICBtYXJnaW4tYm90dG9tOiA5MHB4O1xuICB9XG59XG4uZm9vdGVyX19zdXBwb3J0IHA6bm90KDpsYXN0LWNoaWxkKSB7XG4gIGZvbnQtZmFtaWx5OiBcIm1vbnRzZXJyYXRzZW1pYm9sZFwiLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogNDAwO1xuICBmb250LXNpemU6IDI5cHg7XG4gIGxpbmUtaGVpZ2h0OiAzOXB4O1xuICBsZXR0ZXItc3BhY2luZzogLTFweDtcbiAgbWF4LXdpZHRoOiA4MCU7XG4gIG1hcmdpbjogMCBhdXRvO1xufVxuQG1lZGlhIChtYXgtd2lkdGg6IDExOTlweCkge1xuICAuZm9vdGVyX19zdXBwb3J0IHA6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgbWF4LXdpZHRoOiBub25lO1xuICB9XG59XG5AbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgLmZvb3Rlcl9fc3VwcG9ydCBwOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgIGZvbnQtc2l6ZTogMS4yZW07XG4gICAgbGluZS1oZWlnaHQ6IGNhbGMoMWVtICsgMTBweCk7XG4gIH1cbn1cbi5mb290ZXJfX3N1cHBvcnQgLmJ0bi0tYWx0IHtcbiAgbWFyZ2luLXRvcDogNDVweDtcbiAgYm94LXNoYWRvdzogbm9uZTtcbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xuICAuZm9vdGVyX19zdXBwb3J0IC5idG4tLWFsdCB7XG4gICAgbWFyZ2luLXRvcDogMzBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1pbi1oZWlnaHQ6IDU3NnB4KSB7XG4gIC5mb290ZXJfX3N1cHBvcnQgLmJ0bi0tYWx0IHtcbiAgICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCA0cHggIzEyMjEyYjtcbiAgfVxufVxuLmZvb3Rlcl9fcGFydG5lcnMge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcGFkZGluZzogNDVweDtcbiAgYm9yZGVyOiA0cHggc29saWQgI2ZmZjtcbiAgYm9yZGVyLWxlZnQ6IDA7XG4gIGJvcmRlci1yaWdodDogMDtcbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xuICAuZm9vdGVyX19wYXJ0bmVycyB7XG4gICAgcGFkZGluZzogMzBweCAwIDA7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gIH1cbn1cbi5mb290ZXJfX3BhcnRuZXJzIGEge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwIDQ1cHg7XG59XG5AbWVkaWEgKG1heC13aWR0aDogMTE5OXB4KSB7XG4gIC5mb290ZXJfX3BhcnRuZXJzIGEge1xuICAgIG1hcmdpbjogMCAzMHB4O1xuICB9XG59XG5AbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgLmZvb3Rlcl9fcGFydG5lcnMgYSB7XG4gICAgbWFyZ2luLWJvdHRvbTogNDVweDtcbiAgfVxufVxuLmZvb3Rlcl9fcGFydG5lcnMgYSBpbWcge1xuICBtYXgtaGVpZ2h0OiA4MHB4O1xuICB3aWR0aDogYXV0bztcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1heC13aWR0aDogMTAwJTtcbn1cbkBtZWRpYSAobWF4LXdpZHRoOiAxMTk5cHgpIHtcbiAgLmZvb3Rlcl9fcGFydG5lcnMgYSBpbWcge1xuICAgIG1heC1oZWlnaHQ6IDYwcHg7XG4gIH1cbn1cbi5mb290ZXJfX3BhcnRuZXJzIGE6aG92ZXIge1xuICBvcGFjaXR5OiAwLjY7XG59XG4uZm9vdGVyX19zb2NpYWwge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBtYXJnaW4tYm90dG9tOiA2Ny41cHg7XG59XG5AbWVkaWEgKG1heC13aWR0aDogMTE5OXB4KSB7XG4gIC5mb290ZXJfX3NvY2lhbCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gIC5mb290ZXJfX3NvY2lhbCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgfVxufVxuLmZvb3Rlcl9fc29jaWFsIGEge1xuICBtYXJnaW4tbGVmdDogMTVweDtcbn1cbi5mb290ZXIgYTpub3QoLmJ0bik6bm90KC5idG4tLWFsdCkge1xuICBjb2xvcjogI2ZmZjtcbn1cbi5mb290ZXIgdWwubWVudSB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luLXRvcDogMTVweDtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cbi5mb290ZXIgdWwubWVudSBsaSB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA1NzZweCkge1xuICAuZm9vdGVyIHVsLm1lbnUge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIH1cbn1cbkBtZWRpYSAobWF4LXdpZHRoOiAxMTk5cHgpIHtcbiAgLmZvb3RlciB1bC5tZW51IHtcbiAgICBtYXJnaW46IDE1cHggYXV0byAwO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNTc2cHgpIHtcbiAgLmZvb3RlciB1bC5tZW51IGxpOjphZnRlciB7XG4gICAgZm9udC1mYW1pbHk6IFwibW9udHNlcnJhdHNlbWlib2xkXCIsIHNhbnMtc2VyaWY7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBjb250ZW50OiBcInxcIjtcbiAgICBtYXJnaW46IDAgMTVweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDU3NnB4KSB7XG4gIC5mb290ZXIgdWwubWVudSBsaTpsYXN0LWNoaWxkOjphZnRlciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuLmZvb3RlciB1bC5tZW51IGEuaXMtYWN0aXZlIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG59XG5cbi5uYXYge1xuICAvKiogXG4gICAqIE92ZXJyaWRlc1xuICAgKi9cbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA5OTJweCkge1xuICAubmF2IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiAtMzBweDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmc6IDAgMTBweDtcbiAgICBoZWlnaHQ6IGNhbGMoMTAwdmggLSAxMTBweCk7XG4gICAgaGVpZ2h0OiBjYWxjKHZhcigtLXZoLCAxdmgpICogMTAwIC0gMTEwcHgpO1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gIH1cbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA5OTJweCkgYW5kIChtYXgtaGVpZ2h0OiA1NzZweCkge1xuICAubmF2IHtcbiAgICBoZWlnaHQ6IGNhbGMoMTAwdmggLSA5MHB4KTtcbiAgICBoZWlnaHQ6IGNhbGModmFyKC0tdmgsIDF2aCkgKiAxMDAgLSA5MHB4KTtcbiAgfVxufVxuLm5hdiA6Om1hcmtlciB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4ubmF2IHVsLm1lbnUge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZmxleC13cmFwOiB3cmFwO1xufVxuLm5hdiB1bC5tZW51IGxpIHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xufVxuQG1lZGlhIChtYXgtd2lkdGg6IDk5MnB4KSB7XG4gIC5uYXYgdWwubWVudSB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB9XG59XG4ubmF2IHVsLm1lbnUgbGkge1xuICBtYXJnaW46IDAgMjIuNXB4IDAgMDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLm5hdiB1bC5tZW51IGxpIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDQ1cHg7XG4gIH1cbn1cbi5uYXYgdWwubWVudSAubWVudS1pdGVtLS1hY3RpdmUtdHJhaWwgPiBhOjphZnRlciB7XG4gIHRyYW5zZm9ybTogc2NhbGVYKDEpO1xufVxuLm5hdiBhIHtcbiAgY29sb3I6ICMxMjIxMmI7XG4gIHRyYW5zaXRpb246IG5vbmU7XG59XG4ubmF2IGE6OmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBib3JkZXItYm90dG9tOiAzcHggc29saWQgIzAwYTFhYjtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMnMgY3ViaWMtYmV6aWVyKDAuNjQsIDAuMDQsIDAuMzUsIDEpO1xuICB0cmFuc2Zvcm06IHNjYWxlWCgwKTtcbn1cbi5uYXYgYS5pcy1hY3RpdmUsIC5uYXYgYTpob3ZlciB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cbi5uYXYgYS5pcy1hY3RpdmU6OmFmdGVyLCAubmF2IGE6aG92ZXI6OmFmdGVyIHtcbiAgdHJhbnNmb3JtOiBzY2FsZVgoMSk7XG59XG4ubmF2X190b2dnbGUge1xuICBkaXNwbGF5OiBub25lO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGZvbnQtZmFtaWx5OiBcIm1vbnRzZXJyYXRyZWd1bGFyXCIsIGFyaWFsLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDE4cHg7XG4gIGxpbmUtaGVpZ2h0OiAzMnB4O1xuICB0cmFuc2l0aW9uOiBub25lO1xufVxuQG1lZGlhIChtYXgtd2lkdGg6IDk5MnB4KSB7XG4gIC5uYXZfX3RvZ2dsZSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgfVxufVxuLm5hdl9fdG9nZ2xlLWljb24ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMjRweDtcbiAgaGVpZ2h0OiAxOXB4O1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIG1hcmdpbjogYXV0bztcbiAgYm9yZGVyOiBzb2xpZCAjMTIyMTJiO1xuICBib3JkZXItd2lkdGg6IDFweCAwO1xuICBjb2xvcjogIzEyMjEyYjtcbiAgdGV4dC1pbmRlbnQ6IC05OTllbTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMjVzIGVhc2UtaW4tb3V0O1xuICBtYXJnaW4tcmlnaHQ6IDhweDtcbn1cbi5uYXZfX3RvZ2dsZS1pY29uOmJlZm9yZSwgLm5hdl9fdG9nZ2xlLWljb246YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMXB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgbWFyZ2luOiBhdXRvO1xuICBiYWNrZ3JvdW5kOiBjdXJyZW50Q29sb3I7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjI1cyBlYXNlLWluLW91dDtcbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA5OTJweCkge1xuICAubmF2LS1tYWluIHtcbiAgICBwYWRkaW5nOiA0MHB4IDAgNjBweDtcbiAgfVxufVxuQG1lZGlhIChtYXgtd2lkdGg6IDk5MnB4KSBhbmQgKG1heC1oZWlnaHQ6IDU3NnB4KSB7XG4gIC5uYXYtLW1haW4ge1xuICAgIHBhZGRpbmc6IDIwcHggMCA0MHB4O1xuICB9XG59XG4ubmF2LS1tYWluIGEge1xuICBmb250LXNpemU6IDI5cHg7XG4gIGxpbmUtaGVpZ2h0OiAzOXB4O1xuICBsZXR0ZXItc3BhY2luZzogLTFweDtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWF4LXdpZHRoOiA5OTFweCkgYW5kIChtaW4taGVpZ2h0OiA1NzZweCkge1xuICAubmF2LS1tYWluIGEge1xuICAgIGZvbnQtc2l6ZTogNDdweDtcbiAgICBsaW5lLWhlaWdodDogNTdweDtcbiAgICBsZXR0ZXItc3BhY2luZzogLTJweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1heC13aWR0aDogOTkxcHgpIGFuZCAobWluLWhlaWdodDogNTc2cHgpIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xuICAubmF2LS1tYWluIGEge1xuICAgIGZvbnQtc2l6ZTogMzVweDtcbiAgICBsaW5lLWhlaWdodDogNDVweDtcbiAgICBsZXR0ZXItc3BhY2luZzogLTFweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSBhbmQgKG1heC13aWR0aDogMTE5OXB4KSBhbmQgKG1pbi1oZWlnaHQ6IDU3NnB4KSB7XG4gIC5uYXYtLW1haW4gYSB7XG4gICAgZm9udC1zaXplOiAxOHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAyOHB4O1xuICAgIGxldHRlci1zcGFjaW5nOiAtMC41cHg7XG4gIH1cbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA5OTJweCkge1xuICAubmF2LS1tYWluIHVsLm1lbnUgbGkge1xuICAgIG1hcmdpbjogMjRweCAwIDAgMDtcbiAgfVxufVxuQG1lZGlhIChtYXgtd2lkdGg6IDk5MnB4KSBhbmQgKG1heC1oZWlnaHQ6IDU3NnB4KSB7XG4gIC5uYXYtLW1haW4gdWwubWVudSBsaSB7XG4gICAgbWFyZ2luLXRvcDogMTZweDtcbiAgfVxufVxuLm5hdi0tbWFpbiB1bC5tZW51IGxpOmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLXRvcDogMDtcbn1cbi5uYXYtLW1haW4gdWwubWVudSBsaTpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xufVxuLm5hdi0tc2Vjb25kYXJ5IHVsLm1lbnUgbGkge1xuICBtYXJnaW46IDAgMCAwIDQ1cHg7XG59XG4ubmF2X19zdWItbmF2IHtcbiAgZGlzcGxheTogbm9uZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBtYXJnaW4tdG9wOiA2MHB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5AbWVkaWEgKG1heC13aWR0aDogOTkycHgpIHtcbiAgLm5hdl9fc3ViLW5hdiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgb3BhY2l0eTogMDtcbiAgICBib3R0b206IC0zMHB4O1xuICB9XG59XG5AbWVkaWEgKG1heC13aWR0aDogOTkycHgpIGFuZCAobWF4LWhlaWdodDogNTc2cHgpIHtcbiAgLm5hdl9fc3ViLW5hdiB7XG4gICAgbWFyZ2luLXRvcDogNDBweDtcbiAgfVxufVxuLm5hdl9fc3ViLW5hdiBhIHtcbiAgZm9udC1zaXplOiAxOHB4O1xuICBsaW5lLWhlaWdodDogMjhweDtcbiAgbGV0dGVyLXNwYWNpbmc6IC0wLjVweDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA1NzdweCkgYW5kIChtYXgtd2lkdGg6IDk5MnB4KSBhbmQgKG1pbi1oZWlnaHQ6IDU3NnB4KSB7XG4gIC5uYXZfX3N1Yi1uYXYgYSB7XG4gICAgZm9udC1zaXplOiAyOXB4O1xuICAgIGxpbmUtaGVpZ2h0OiAzOXB4O1xuICAgIGxldHRlci1zcGFjaW5nOiAtMXB4O1xuICB9XG59XG5AbWVkaWEgKG1heC13aWR0aDogOTkycHgpIHtcbiAgLm5hdl9fc3ViLW5hdiB1bC5tZW51IGxpIHtcbiAgICBtYXJnaW4tdG9wOiAxNnB4O1xuICB9XG59XG5AbWVkaWEgKG1heC13aWR0aDogOTkycHgpIGFuZCAobWF4LWhlaWdodDogNTc2cHgpIHtcbiAgLm5hdl9fc3ViLW5hdiB1bC5tZW51IGxpIHtcbiAgICBtYXJnaW4tdG9wOiA4cHg7XG4gIH1cbn1cbi5uYXZfX2xpbmtzIHtcbiAgbWFyZ2luLXRvcDogNjBweDtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5AbWVkaWEgKG1heC13aWR0aDogOTkycHgpIGFuZCAobWF4LWhlaWdodDogNTc2cHgpIHtcbiAgLm5hdl9fbGlua3Mge1xuICAgIG1hcmdpbi10b3A6IDQwcHg7XG4gIH1cbn1cbi5uYXYgLmhlYWRlcl9fbGluayB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB0cmFuc2l0aW9uOiAwLjI1cyBjb2xvciBlYXNlLWluLW91dDtcbiAgbWFyZ2luLXRvcDogMTVweDtcbn1cbi5uYXYgLmhlYWRlcl9fbGluazphZnRlciB7XG4gIGNvbnRlbnQ6IG5vbmU7XG59XG4ubmF2IC5oZWFkZXJfX2xpbms6Zmlyc3Qtb2YtdHlwZSB7XG4gIG1hcmdpbi10b3A6IDA7XG59XG4ubmF2IC5oZWFkZXJfX2xpbmstdGV4dCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cbi5uYXYgLmhlYWRlcl9fbGluayBzdmcge1xuICBmbGV4OiAwIDAgYXV0bztcbiAgd2lkdGg6IDM1cHg7XG4gIGhlaWdodDogMzVweDtcbiAgbWFyZ2luLXJpZ2h0OiAxMnB4O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5AbWVkaWEgKG1heC13aWR0aDogOTkycHgpIGFuZCAobWF4LWhlaWdodDogNTc2cHgpIHtcbiAgLm5hdiAuaGVhZGVyX19saW5rIHN2ZyB7XG4gICAgd2lkdGg6IDI0cHg7XG4gICAgaGVpZ2h0OiAyNHB4O1xuICAgIG1hcmdpbi1yaWdodDogOHB4O1xuICB9XG59XG4ubmF2IC5oZWFkZXJfX2xpbmsgZyxcbi5uYXYgLmhlYWRlcl9fbGluayBwYXRoIHtcbiAgdHJhbnNpdGlvbjogMC4yNXMgZmlsbCBlYXNlLWluLW91dDtcbiAgZmlsbDogIzEyMjEyYjtcbn1cbi5uYXYgLmhlYWRlcl9fbGluazpob3ZlciBnLFxuLm5hdiAuaGVhZGVyX19saW5rOmhvdmVyIHBhdGgsIC5uYXYgLmhlYWRlcl9fbGluazpmb2N1cyBnLFxuLm5hdiAuaGVhZGVyX19saW5rOmZvY3VzIHBhdGgsIC5uYXYgLmhlYWRlcl9fbGluazphY3RpdmUgZyxcbi5uYXYgLmhlYWRlcl9fbGluazphY3RpdmUgcGF0aCB7XG4gIGZpbGw6IGN1cnJlbnRDb2xvcjtcbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA5OTJweCkge1xuICAubmF2LW9wZW4gLm5hdi0tbWFpbiB7XG4gICAgb3ZlcmZsb3cteTogc2Nyb2xsO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgb3BhY2l0eTogMTtcbiAgICBib3R0b206IDA7XG4gICAgdHJhbnNpdGlvbjogMC4yNXMgYm90dG9tIGVhc2UtaW4tb3V0LCAwLjI1cyBvcGFjaXR5IGVhc2UtaW4tb3V0O1xuICB9XG59XG5AbWVkaWEgKG1heC13aWR0aDogOTkycHgpIHtcbiAgLm5hdi1vcGVuIC5uYXZfX3N1Yi1uYXYge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgYm90dG9tOiAwO1xuICAgIHRyYW5zaXRpb246IDAuMTVzIDAuMjVzIGJvdHRvbSBlYXNlLWluLW91dCwgMC4xNXMgMC4yNXMgb3BhY2l0eSBlYXNlLWluLW91dDtcbiAgfVxufVxuLm5hdi1vcGVuIC5uYXZfX3RvZ2dsZSB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA5OTJweCkge1xuICAubmF2LW9wZW4gLm5hdl9fdG9nZ2xlIHtcbiAgICBtYXJnaW4tdG9wOiAxOHB4O1xuICB9XG59XG5AbWVkaWEgKG1heC13aWR0aDogOTkycHgpIGFuZCAobWF4LWhlaWdodDogNTc2cHgpIHtcbiAgLm5hdi1vcGVuIC5uYXZfX3RvZ2dsZSB7XG4gICAgbWFyZ2luLXRvcDogMTVweDtcbiAgfVxufVxuQG1lZGlhIChtYXgtd2lkdGg6IDM3MHB4KSB7XG4gIC5uYXYtb3BlbiAubmF2X190b2dnbGUge1xuICAgIG1hcmdpbi10b3A6IDhweDtcbiAgfVxufVxuLm5hdi1vcGVuIC5uYXZfX3RvZ2dsZS1pY29uIHtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cbi5uYXYtb3BlbiAubmF2X190b2dnbGUtaWNvbjpiZWZvcmUge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG59XG4ubmF2LW9wZW4gLm5hdl9fdG9nZ2xlLWljb246YWZ0ZXIge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xufVxuXG4vKipcbiAqIEZvcm1cbiAqL1xuLmZvcm0ge1xuICAvKipcbiAgICogTW9kaWZpZXJzXG4gICAqL1xufVxuLmZvcm1fX3JvdyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luOiAyMi41cHggMCAwO1xuICB3aWR0aDogMTAwJTtcbn1cbi5mb3JtX19yb3c6Zmlyc3QtY2hpbGQge1xuICBtYXJnaW4tdG9wOiAwO1xufVxuLmZvcm1fX2xhYmVsIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG4uZm9ybV9fbGFiZWwgKyAuZm9ybV9fZmllbGQge1xuICBtYXJnaW4tdG9wOiAxNXB4O1xufVxuLmZvcm1fX2ZpZWxkLS1zdWJtaXQge1xuICBtYXJnaW4tdG9wOiAyMi41cHg7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTYwMHB4KSB7XG4gIC5mb3JtX19maWVsZC0tc3VibWl0IHtcbiAgICBtYXJnaW4tdG9wOiA0NXB4O1xuICB9XG59XG4uZm9ybSAuZm9ybV9fbGFiZWwub3B0aW9uIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG4uZm9ybS1hY3Rpb25zIHtcbiAgbWFyZ2luOiAwO1xuICB3aWR0aDogMTAwJTtcbn1cbi5mb3JtIC5kZXNjcmlwdGlvbiB7XG4gIG1hcmdpbjogMTEuMjVweCAwIDAgMDtcbn1cbi5mb3JtLnVzZXItbG9naW4tZm9ybSB7XG4gIG1heC13aWR0aDogNjAwcHg7XG59XG5cbkBrZXlmcmFtZXMgZGlzY0luIHtcbiAgMCUge1xuICAgIHRvcDogMTAwJTtcbiAgfVxuICAxMDAlIHtcbiAgICB0b3A6IDA7XG4gIH1cbn1cbkBrZXlmcmFtZXMgZGlzY091dCB7XG4gIDAlIHtcbiAgICB0b3A6IDA7XG4gIH1cbiAgMTAwJSB7XG4gICAgdG9wOiAtMTAwJTtcbiAgfVxufVxuQGtleWZyYW1lcyBjb250ZW50SW4ge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMjAlKSBzY2FsZSgwLjg1KTtcbiAgfVxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKSBzY2FsZSgxKTtcbiAgfVxufVxuQGtleWZyYW1lcyBjb250ZW50T3V0IHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApIHNjYWxlKDEpO1xuICB9XG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0yMCUpIHNjYWxlKDAuODUpO1xuICB9XG59XG4ubW9kYWwge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGxlZnQ6IDA7XG4gIGhlaWdodDogMTAwJTtcbiAgd2lkdGg6IDEwMCU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2U7XG4gIHotaW5kZXg6IDUwO1xufVxuLm1vZGFsX19pbm5lciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAxMDtcbiAgb3BhY2l0eTogMDtcbn1cbi5tb2RhbF9faW5uZXIgLmdyaWQge1xuICB3aWR0aDogMTAwJTtcbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkgYW5kIChtYXgtaGVpZ2h0OiA1NzZweCkge1xuICAubW9kYWwgPiAuZ3JpZCB7XG4gICAgaGVpZ2h0OiA4NXZoO1xuICAgIGhlaWdodDogY2FsYyh2YXIoLS12aCwgMXZoKSAqIDg1KTtcbiAgICBvdmVyZmxvdy15OiBzY3JvbGw7XG4gIH1cbn1cbi5tb2RhbF9fbG9nbywgLm1vZGFsX19jbG9zZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA0NXB4O1xuICB6LWluZGV4OiAxMDtcbn1cbkBtZWRpYSAobWF4LXdpZHRoOiAxNTk5cHgpIHtcbiAgLm1vZGFsX19sb2dvLCAubW9kYWxfX2Nsb3NlIHtcbiAgICB0b3A6IDIwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkgYW5kIChtYXgtaGVpZ2h0OiA1NzZweCkge1xuICAubW9kYWxfX2xvZ28sIC5tb2RhbF9fY2xvc2Uge1xuICAgIHRvcDogMTVweDtcbiAgfVxufVxuLm1vZGFsX19sb2dvIHtcbiAgbGVmdDogMTVweDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtaW4taGVpZ2h0OiA1NzZweCkge1xuICAubW9kYWxfX2xvZ28ge1xuICAgIGxlZnQ6IDkwcHg7XG4gIH1cbn1cbi5tb2RhbF9fbG9nbyBzdmcge1xuICBtYXgtd2lkdGg6IDc5cHg7XG4gIGhlaWdodDogYXV0bztcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtaW4taGVpZ2h0OiA1NzZweCkge1xuICAubW9kYWxfX2xvZ28gc3ZnIHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gIH1cbn1cbkBtZWRpYSAobWF4LXdpZHRoOiAxNTk5cHgpIHtcbiAgLm1vZGFsX19sb2dvIHtcbiAgICBsZWZ0OiAyMHB4O1xuICB9XG59XG4ubW9kYWxfX2xvZ286aG92ZXIge1xuICBvcGFjaXR5OiAwLjY7XG59XG4ubW9kYWxfX2Nsb3NlIHtcbiAgcmlnaHQ6IDkwcHg7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IDc2LjVweDtcbiAgd2lkdGg6IDc2LjVweDtcbiAgdHJhbnNpdGlvbjogYWxsIDAuNXMgY3ViaWMtYmV6aWVyKDAuNjQsIDAuMDQsIDAuMzUsIDEpO1xufVxuQG1lZGlhIChtYXgtd2lkdGg6IDE1OTlweCkge1xuICAubW9kYWxfX2Nsb3NlIHtcbiAgICByaWdodDogMjBweDtcbiAgfVxufVxuQG1lZGlhIChtYXgtd2lkdGg6IDExOTlweCkge1xuICAubW9kYWxfX2Nsb3NlIHtcbiAgICByaWdodDogMzBweDtcbiAgICBoZWlnaHQ6IDQ1cHg7XG4gICAgd2lkdGg6IDQ1cHg7XG4gIH1cbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkgYW5kIChtYXgtaGVpZ2h0OiA1NzZweCkge1xuICAubW9kYWxfX2Nsb3NlIHtcbiAgICByaWdodDogMTVweDtcbiAgfVxufVxuLm1vZGFsX19jbG9zZTphY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZWQ7XG59XG4ubW9kYWxfX2Nsb3NlIHN2ZyB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG9iamVjdC1maXQ6IGNvbnRhaW47XG59XG4ubW9kYWxfX2Nsb3NlIC5zdmctbW9kYWwge1xuICBmaWxsOiAjMDBhMWFiO1xuICBzdHJva2U6ICNmZmY7XG4gIHRyYW5zaXRpb246IGZpbGwgMC4ycyBjdWJpYy1iZXppZXIoMC42NCwgMC4wNCwgMC4zNSwgMSk7XG59XG4ubW9kYWxfX2Nsb3NlOmhvdmVyIHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbn1cbi5tb2RhbF9fY2xvc2U6aG92ZXIgLnN2Zy1tb2RhbCB7XG4gIGZpbGw6ICMxMjIxMmI7XG59XG5cbiNzZWFyY2gtZm9ybSB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuLnNlYXJjaC1yZXN1bHRzLXdyYXBwZXIge1xuICBtYXJnaW4tYm90dG9tOiA0NXB4O1xufVxuLnNlYXJjaC1yZXN1bHRzLXdyYXBwZXIgLnJlc3VsdF9fdGl0bGUge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4uc2VhcmNoLXJlc3VsdHMge1xuICBtYXJnaW4tYm90dG9tOiA5MHB4O1xufVxuLnNlYXJjaC1yZXN1bHRzIG9sIHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xufVxuLnNlYXJjaC1yZXN1bHRzIG9sIGxpIHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xufVxuLnNlYXJjaC1yZXN1bHRzIG9sIGxpIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW4tYm90dG9tOiA0NXB4O1xufVxuXG4ubW9kYWwtLXNlYXJjaF9faW5uZXIge1xuICBtYXJnaW4tdG9wOiAxMzVweDtcbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkgYW5kIChtYXgtaGVpZ2h0OiA1NzZweCkge1xuICAubW9kYWwtLXNlYXJjaF9faW5uZXIge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgdG9wOiAwO1xuICAgIGhlaWdodDogMTAwdmg7XG4gIH1cbn1cbi5tb2RhbC0tc2VhcmNoX19pbm5lciBoMiB7XG4gIG1hcmdpbjogMDtcbn1cbkBtZWRpYSAobWF4LXdpZHRoOiAxMDI0cHgpIHtcbiAgLm1vZGFsLS1zZWFyY2hfX2lubmVyIGgyIHtcbiAgICBmb250LXNpemU6IDQ3cHg7XG4gICAgbGluZS1oZWlnaHQ6IDU3cHg7XG4gICAgbGV0dGVyLXNwYWNpbmc6IC0ycHg7XG4gIH1cbn1cbkBtZWRpYSAobWF4LXdpZHRoOiAxMDI0cHgpIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xuICAubW9kYWwtLXNlYXJjaF9faW5uZXIgaDIge1xuICAgIGZvbnQtc2l6ZTogMzVweDtcbiAgICBsaW5lLWhlaWdodDogNDVweDtcbiAgICBsZXR0ZXItc3BhY2luZzogLTFweDtcbiAgfVxufVxuQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSBhbmQgKG1heC1oZWlnaHQ6IDU3NnB4KSB7XG4gIC5tb2RhbC0tc2VhcmNoX19pbm5lciBoMiB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHRleHQtYWxpZ24tbGFzdDogY2VudGVyO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSBhbmQgKG1pbi1oZWlnaHQ6IDU3NnB4KSB7XG4gIC5tb2RhbC0tc2VhcmNoX19pbm5lciB7XG4gICAgcGFkZGluZzogMCAxNXB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5tb2RhbC0tc2VhcmNoX19jbG9zZSB7XG4gICAgcmlnaHQ6IDMwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxODQ4cHgpIHtcbiAgLm1vZGFsLS1zZWFyY2hfX2Nsb3NlIHtcbiAgICByaWdodDogOTBweDtcbiAgfVxufVxuLm1vZGFsLS1zZWFyY2hfX2Zvcm0ge1xuICBib3gtc2hhZG93OiAwIDAgMjBweCAwIHJnYmEoMTgsIDMzLCA0MywgMC4wOCk7XG4gIGJvcmRlci1yYWRpdXM6IDMwcHg7XG4gIHBhZGRpbmc6IDQ1cHg7XG4gIG1hcmdpbi10b3A6IDkwcHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cbkBtZWRpYSAobWF4LXdpZHRoOiAxMjAwcHgpIHtcbiAgLm1vZGFsLS1zZWFyY2hfX2Zvcm0ge1xuICAgIG1hcmdpbi10b3A6IDQ1cHg7XG4gIH1cbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA1NzZweCkge1xuICAubW9kYWwtLXNlYXJjaF9fZm9ybSB7XG4gICAgbWFyZ2luLXRvcDogMjIuNXB4O1xuICAgIHBhZGRpbmc6IDE1cHg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB9XG59XG4ubW9kYWwtLXNlYXJjaF9fZm9ybSBmb3JtIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuLm1vZGFsLS1zZWFyY2hfX2Zvcm0gLmZvcm0taXRlbSB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW46IDAgNDVweCAwIDA7XG59XG5AbWVkaWEgKG1heC13aWR0aDogNTc2cHgpIHtcbiAgLm1vZGFsLS1zZWFyY2hfX2Zvcm0gLmZvcm0taXRlbSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi5tb2RhbC0tc2VhcmNoX19mb3JtIC5mb3JtLWl0ZW0gaW5wdXRbdHlwZT10ZXh0XSB7XG4gIHdpZHRoOiAxMDAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTIyMTJiO1xuICBjb2xvcjogI2ZmZjtcbiAgYm9yZGVyOiA0cHggc29saWQgIzEyMjEyYjtcbiAgYm9yZGVyLXJhZGl1czogNDVweDtcbiAgcGFkZGluZzogMTBweCAzMHB4O1xufVxuLm1vZGFsLS1zZWFyY2hfX2Zvcm0gLmZvcm0taXRlbSBpbnB1dFt0eXBlPXRleHRdOjpwbGFjZWhvbGRlciB7XG4gIGNvbG9yOiAjZmZmO1xufVxuLm1vZGFsLS1zZWFyY2hfX2Zvcm0gLmZvcm0taXRlbSBpbnB1dFt0eXBlPXRleHRdOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgY29sb3I6ICMxMjIxMmI7XG59XG4ubW9kYWwtLXNlYXJjaF9fZm9ybSAuZm9ybS1pdGVtIGlucHV0W3R5cGU9dGV4dF06Zm9jdXM6OnBsYWNlaG9sZGVyIHtcbiAgY29sb3I6ICMxMjIxMmI7XG59XG4ubW9kYWwtLXNlYXJjaF9fZm9ybSA6OnBsYWNlaG9sZGVyIHtcbiAgb3BhY2l0eTogMTtcbiAgY29sb3I6ICNmZmY7XG59XG4ubW9kYWwtLXNlYXJjaF9fZm9ybSAuZm9ybS1hY3Rpb25zIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi5tb2RhbC0tc2VhcmNoIC5idG4ge1xuICBtaW4td2lkdGg6IDE3NXB4O1xuICBib3gtc2hhZG93OiBub25lO1xufVxuQG1lZGlhIChtYXgtd2lkdGg6IDU3NnB4KSB7XG4gIC5tb2RhbC0tc2VhcmNoIC5idG4ge1xuICAgIG1hcmdpbi10b3A6IDIyLjVweDtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gMzBweCk7XG4gICAgbWFyZ2luLXRvcDogMjIuNXB4O1xuICB9XG59XG4ubW9kYWwtLXNlYXJjaCAuZm9ybV9fZmllbGQtLXN1Ym1pdCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogLTk5OWVtO1xufVxuXG4ub3Blbi1zZWFyY2gge1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuLm9wZW4tc2VhcmNoIC5tb2RhbC0tc2VhcmNoIHtcbiAgYW5pbWF0aW9uOiBkaXNjSW4gMC4yNXMgY3ViaWMtYmV6aWVyKDAuNjQsIDAuMDQsIDAuMzUsIDEpIG5vcm1hbCBib3RoO1xufVxuLm9wZW4tc2VhcmNoIC5tb2RhbC0tc2VhcmNoX19pbm5lciB7XG4gIGFuaW1hdGlvbjogY29udGVudEluIDAuMnMgMC4xNXMgY3ViaWMtYmV6aWVyKDAuNjQsIDAuMDQsIDAuMzUsIDEpIG5vcm1hbCBib3RoO1xufVxuXG4uY2xvc2Utc2VhcmNoIC5tb2RhbC0tc2VhcmNoIHtcbiAgYW5pbWF0aW9uOiBkaXNjT3V0IDAuMnMgMC4ycyBjdWJpYy1iZXppZXIoMC42NCwgMC4wNCwgMC4zNSwgMSkgbm9ybWFsIGJvdGg7XG59XG4uY2xvc2Utc2VhcmNoIC5tb2RhbC0tc2VhcmNoX19pbm5lciB7XG4gIGFuaW1hdGlvbjogY29udGVudE91dCAwLjJzIGN1YmljLWJlemllcigwLjY0LCAwLjA0LCAwLjM1LCAxKSBub3JtYWwgYm90aDtcbn1cblxuLmVudGl0eSB7XG4gIG1hcmdpbjogNjcuNXB4IDA7XG59XG5AbWVkaWEgKG1heC13aWR0aDogMTU5OXB4KSB7XG4gIC5lbnRpdHkge1xuICAgIG1hcmdpbjogNDVweCAwO1xuICB9XG59XG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLmVudGl0eSB7XG4gICAgbWFyZ2luOiAzMHB4IDA7XG4gIH1cbn1cbi5lbnRpdHkgaW1nIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bztcbn1cbi5lbnRpdHkgLmltYWdlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLmVudGl0eV9fYm9keSB7XG4gIG1hcmdpbi10b3A6IDA7XG59XG4uZW50aXR5X192aWRlbyBpZnJhbWUge1xuICB3aWR0aDogMTAwJTtcbn1cbi5lbnRpdHlfX3F1b3RlIGJsb2NrcXVvdGUge1xuICBmb250LWZhbWlseTogXCJtb250c2VycmF0c2VtaWJvbGRcIiwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbWFyZ2luOiAwO1xuICBmb250LXNpemU6IDQycHg7XG4gIGxpbmUtaGVpZ2h0OiA1MnB4O1xufVxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC5lbnRpdHlfX3F1b3RlIGJsb2NrcXVvdGUge1xuICAgIGZvbnQtc2l6ZTogMjVweDtcbiAgICBsaW5lLWhlaWdodDogMzVweDtcbiAgfVxufVxuLmVudGl0eV9fcXVvdGUgZm9vdGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cbi5lbnRpdHlfX3F1b3RlIHAge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuLmVudGl0eV9fcXVvdGUgY2l0ZSB7XG4gIGZvbnQtZmFtaWx5OiBcIm1vbnRzZXJyYXRyZWd1bGFyXCIsIGFyaWFsLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDE4cHg7XG4gIGxpbmUtaGVpZ2h0OiAzMnB4O1xuICBmb250LXN0eWxlOiBub3JtYWw7XG59XG4uZW50aXR5X19xdW90ZSBjaXRlIC5uYW1lIHtcbiAgZm9udC1mYW1pbHk6IFwibW9udHNlcnJhdHNlbWlib2xkXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG59XG4uZW50aXR5X19xdW90ZSAucmF0aW5nIHtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIG1hcmdpbi1yaWdodDogMTVweDtcbn1cbi5lbnRpdHlfX3F1b3RlIC5yYXRpbmdfX3N0YXIge1xuICB3aWR0aDogMjRweDtcbiAgaGVpZ2h0OiAyNHB4O1xuICBtYXJnaW4tcmlnaHQ6IDVweDtcbn1cbi5lbnRpdHlfX3F1b3RlIC5yYXRpbmdfX3N0YXI6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1yaWdodDogMDtcbn1cbi5lbnRpdHlfX3F1b3RlIC5yYXRpbmctLTEgLnJhdGluZ19fc3RhcjpudGgtY2hpbGQoLW4rMSkgcGF0aCB7XG4gIGZpbGw6ICMwMGExYWI7XG4gIHN0cm9rZTogIzAwYTFhYjtcbn1cbi5lbnRpdHlfX3F1b3RlIC5yYXRpbmctLTIgLnJhdGluZ19fc3RhcjpudGgtY2hpbGQoLW4rMikgcGF0aCB7XG4gIGZpbGw6ICMwMGExYWI7XG4gIHN0cm9rZTogIzAwYTFhYjtcbn1cbi5lbnRpdHlfX3F1b3RlIC5yYXRpbmctLTMgLnJhdGluZ19fc3RhcjpudGgtY2hpbGQoLW4rMykgcGF0aCB7XG4gIGZpbGw6ICMwMGExYWI7XG4gIHN0cm9rZTogIzAwYTFhYjtcbn1cbi5lbnRpdHlfX3F1b3RlIC5yYXRpbmctLTQgLnJhdGluZ19fc3RhcjpudGgtY2hpbGQoLW4rNCkgcGF0aCB7XG4gIGZpbGw6ICMwMGExYWI7XG4gIHN0cm9rZTogIzAwYTFhYjtcbn1cbi5lbnRpdHlfX3F1b3RlIC5yYXRpbmctLTUgLnJhdGluZ19fc3RhcjpudGgtY2hpbGQoLW4rNSkgcGF0aCB7XG4gIGZpbGw6ICMwMGExYWI7XG4gIHN0cm9rZTogIzAwYTFhYjtcbn1cbi5lbnRpdHlfX2dhbGxlcnkgYSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBvcGFjaXR5OiAxO1xufVxuLmVudGl0eV9fZ2FsbGVyeSBhIGltZyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuLmVudGl0eV9fZ2FsbGVyeSBhOmhvdmVyIHtcbiAgb3BhY2l0eTogMC42O1xufVxuLmVudGl0eV9fbGlua2VkLWxvZ29zIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuZW50aXR5X19saW5rZWQtbG9nb3Mge1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICB9XG59XG4uZW50aXR5X19saW5rZWQtbG9nb3MgaDMge1xuICBtYXJnaW46IDA7XG59XG4uZW50aXR5X19saW5rZWQtbG9nb3MgLmxvZ29zIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBtYXJnaW46IDQwcHggMCAwO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5lbnRpdHlfX2xpbmtlZC1sb2dvcyAubG9nb3Mge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgfVxufVxuLmVudGl0eV9fbGlua2VkLWxvZ29zIGEge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLWJvdHRvbTogNDBweDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuZW50aXR5X19saW5rZWQtbG9nb3MgYSB7XG4gICAgd2lkdGg6IGNhbGMoNTAlIC0gMTVweCk7XG4gIH1cbn1cbi5lbnRpdHlfX2xpbmtlZC1sb2dvcyBhOmhvdmVyLCAuZW50aXR5X19saW5rZWQtbG9nb3MgYTpmb2N1cyB7XG4gIG9wYWNpdHk6IDAuNztcbn1cbi5lbnRpdHlfX2xpbmtlZC1sb2dvcyBpbWcge1xuICB3aWR0aDogYXV0bztcbiAgZGlzcGxheTogYmxvY2s7XG59XG4uZW50aXR5X192aWV3OmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLXRvcDogMDtcbn1cbi5lbnRpdHlfX2VtYmVkIGlmcmFtZSB7XG4gIHdpZHRoOiAxMDAlO1xufVxuLmVudGl0eV9fYWNjb3JkaW9uIHtcbiAgLyogdGl0bGUgb3BlbmVkICovXG4gIC8qIHRpdGxlIGNsb3NlZCAqL1xufVxuLmVudGl0eV9fYWNjb3JkaW9uIC5qcy1hY2NvcmRpb24ge1xuICBib3JkZXI6IDRweCBzb2xpZCAjMTIyMTJiO1xuICBib3JkZXItcmFkaXVzOiA0NXB4O1xuICBwYWRkaW5nOiAxNXB4IDMwcHg7XG4gIG1hcmdpbi1ib3R0b206IDMwcHg7XG59XG4uZW50aXR5X19hY2NvcmRpb24gLmpzLWFjY29yZGlvbjpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbi5lbnRpdHlfX2FjY29yZGlvbiAuanMtYWNjb3JkaW9uX19wYW5lbCB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4uZW50aXR5X19hY2NvcmRpb24gLmFjY29yZGlvbl9fdGl0bGUge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmctdG9wOiA2cHg7XG59XG4uZW50aXR5X19hY2NvcmRpb24gLmFjY29yZGlvbl9faGVhZGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgd2lkdGg6IDEwMCU7XG4gIGJvcmRlcjogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIHRleHQtYWxpZ24tbGFzdDogbGVmdDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBwYWRkaW5nOiAwO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuLmVudGl0eV9fYWNjb3JkaW9uIC5hY2NvcmRpb25fX2hlYWRlcjo6YWZ0ZXIge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gIGNvbnRlbnQ6IFwiXCIgIWltcG9ydGFudDtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMnMgY3ViaWMtYmV6aWVyKDAuNjQsIDAuMDQsIDAuMzUsIDEpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWcvaWNvbi1hcnJvdy1sZWZ0LnN2Z1wiKTtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcbiAgaGVpZ2h0OiAyMHB4O1xuICB3aWR0aDogMjBweDtcbn1cbi5lbnRpdHlfX2FjY29yZGlvbiAuYWNjb3JkaW9uX19oZWFkZXI6aG92ZXI6OmFmdGVyLCAuZW50aXR5X19hY2NvcmRpb24gLmFjY29yZGlvbl9faGVhZGVyW2FyaWEtZXhwYW5kZWQ9dHJ1ZV06OmFmdGVyIHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMjcwZGVnKTtcbn1cbi5lbnRpdHlfX2FjY29yZGlvbiAuYWNjb3JkaW9uX19oZWFkZXI6Zm9jdXMge1xuICBvdXRsaW5lOiAwO1xufVxuLmVudGl0eV9fYWNjb3JkaW9uIC5hY2NvcmRpb25fX3BhbmVsIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIG9wYWNpdHk6IDE7XG4gIHRyYW5zaXRpb246IGFsbCAwcyBlYXNlLCBtYXgtaGVpZ2h0IDAuMnMgZWFzZSwgb3BhY2l0eSAwLjJzIGVhc2UsIHBhZGRpbmcgMC4ycyBlYXNlLCBtYXJnaW4gMC4ycyBlYXNlO1xuICBtYXgtaGVpZ2h0OiAxMDBlbTtcbiAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgdHJhbnNpdGlvbi1kZWxheTogMHM7XG4gIGJvcmRlci10b3A6IDRweCBzb2xpZCAjMTIyMTJiO1xuICBwYWRkaW5nLXRvcDogMjBweDtcbiAgbWFyZ2luLXRvcDogMjBweDtcbn1cbi5lbnRpdHlfX2FjY29yZGlvbiAuYWNjb3JkaW9uX19wYW5lbFthcmlhLWhpZGRlbj10cnVlXSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXgtaGVpZ2h0OiAwO1xuICBvcGFjaXR5OiAwO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIHRyYW5zaXRpb24tZGVsYXk6IDAuMnMsIDBzLCAwcztcbiAgcGFkZGluZy10b3A6IDA7XG4gIG1hcmdpbi10b3A6IDA7XG59XG4uZW50aXR5X19hY2NvcmRpb24gLmFjY29yZGlvbl9fcGFuZWwgcDpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbn1cbi5lbnRpdHlfX2FjY29yZGlvbiBbYXJpYS1leHBhbmRlZD10cnVlXTphZnRlciB7XG4gIGNvbnRlbnQ6IFwiLVwiO1xufVxuLmVudGl0eV9fYWNjb3JkaW9uIFthcmlhLWV4cGFuZGVkPWZhbHNlXTphZnRlciB7XG4gIGNvbnRlbnQ6IFwiK1wiO1xufVxuLmVudGl0eSAuc2lnbnBvc3Qge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG4uZW50aXR5IC5zaWducG9zdC0tcmV2ZXJzZSB7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTtcbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAuZW50aXR5IC5zaWducG9zdCB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgfVxufVxuLmVudGl0eSAuc2lnbnBvc3QgaW1nIHtcbiAgd2lkdGg6IDUwJTtcbiAgaGVpZ2h0OiBhdXRvO1xuICBkaXNwbGF5OiBibG9jaztcbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAuZW50aXR5IC5zaWducG9zdCBpbWcge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gIH1cbn1cbi5lbnRpdHkgLnNpZ25wb3N0IC5lbnRpdHkge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuLmVudGl0eV9fc2lnbnBvc3QgLnNpZ25wb3N0IHtcbiAgbWFyZ2luLXRvcDogNjcuNXB4O1xufVxuQG1lZGlhIChtYXgtd2lkdGg6IDExOTlweCkge1xuICAuZW50aXR5X19zaWducG9zdCAuc2lnbnBvc3Qge1xuICAgIG1hcmdpbi10b3A6IDQ1cHg7XG4gIH1cbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xuICAuZW50aXR5X19zaWducG9zdCAuc2lnbnBvc3Qge1xuICAgIG1hcmdpbi10b3A6IDMwcHg7XG4gIH1cbn1cbi5lbnRpdHlfX3NpZ25wb3N0IC5zaWducG9zdF9fY29udGVudCB7XG4gIHdpZHRoOiAzNSU7XG59XG5AbWVkaWEgKG1heC13aWR0aDogMTU5OXB4KSB7XG4gIC5lbnRpdHlfX3NpZ25wb3N0IC5zaWducG9zdF9fY29udGVudCB7XG4gICAgd2lkdGg6IDQ1JTtcbiAgfVxufVxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC5lbnRpdHlfX3NpZ25wb3N0IC5zaWducG9zdF9fY29udGVudCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cbi5lbnRpdHlfX2ltYWdlLXRleHQgLnNpZ25wb3N0IHtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG59XG4uZW50aXR5X19pbWFnZS10ZXh0IC5zaWducG9zdCBpbWcge1xuICB3aWR0aDogNDAlO1xuICBtYXJnaW4tcmlnaHQ6IDQ1cHg7XG59XG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLmVudGl0eV9faW1hZ2UtdGV4dCAuc2lnbnBvc3QgaW1nIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cbi5lbnRpdHlfX2ltYWdlLXRleHQgLnNpZ25wb3N0X19jb250ZW50IHtcbiAgd2lkdGg6IDYwJTtcbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAuZW50aXR5X19pbWFnZS10ZXh0IC5zaWducG9zdF9fY29udGVudCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cbi5lbnRpdHlfX3NwZWt0cml4LWNvbXBvbmVudCB7XG4gIGJvcmRlcjogNHB4IHNvbGlkICMxMjIxMmI7XG4gIGJvcmRlci1yaWdodDogMDtcbiAgYm9yZGVyLWxlZnQ6IDA7XG4gIHBhZGRpbmc6IDQ1cHggMDtcbn1cbi5lbnRpdHlfX3N0YXRpc3RpY3Mge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDBhMWFiO1xuICBjb2xvcjogI2ZmZjtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwYWRkaW5nOiA2Ny41cHggOTBweDtcbiAgYm9yZGVyLXJhZGl1czogMjAwcHg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG59XG5AbWVkaWEgKG1heC13aWR0aDogMTU5OXB4KSB7XG4gIC5lbnRpdHlfX3N0YXRpc3RpY3Mge1xuICAgIHBhZGRpbmc6IDQ1cHg7XG4gIH1cbn1cbkBtZWRpYSAobWF4LXdpZHRoOiAxMTk5cHgpIHtcbiAgLmVudGl0eV9fc3RhdGlzdGljcyB7XG4gICAgcGFkZGluZzogNjBweCA2MHB4IDMwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAuZW50aXR5X19zdGF0aXN0aWNzIHtcbiAgICBib3JkZXItcmFkaXVzOiA5MHB4O1xuICB9XG59XG4uZW50aXR5X19zdGF0aXN0aWNzIGgyIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0ZXh0LWFsaWduLWxhc3Q6IGNlbnRlcjtcbn1cbkBtZWRpYSAobWF4LXdpZHRoOiAxNTk5cHgpIHtcbiAgLmVudGl0eV9fc3RhdGlzdGljcyBoMiB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cbi5lbnRpdHlfX3N0YXRpc3RpY3MgLnN0YXQge1xuICBtYXJnaW46IDAgNDVweDtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cbkBtZWRpYSAobWF4LXdpZHRoOiAxMTk5cHgpIHtcbiAgLmVudGl0eV9fc3RhdGlzdGljcyAuc3RhdCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgfVxufVxuLmVudGl0eV9fc3RhdGlzdGljcyAuc3RhdF9fdmFsdWUge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC5lbnRpdHlfX3N0YXRpc3RpY3MgLnN0YXRfX3ZhbHVlIHtcbiAgICBmb250LXNpemU6IDIuNWVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDtcbiAgfVxufVxuLmVudGl0eV9fc3RhdGlzdGljcyAuc3RhdF9fdGl0bGUge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRleHQtYWxpZ24tbGFzdDogY2VudGVyO1xufVxuLmVudGl0eV9fZG93bmxvYWRzIGEge1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbn1cbi5lbnRpdHlfX2Rvd25sb2FkcyBhOmhvdmVyIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuLmVudGl0eV9fc2l0ZS1saW5rcyAubGlzdGluZyB7XG4gIG1hcmdpbjogOTBweCAwIDkwcHggLTE1cHg7XG59XG5AbWVkaWEgKG1heC13aWR0aDogMTU5OXB4KSB7XG4gIC5lbnRpdHlfX3NpdGUtbGlua3MgLmxpc3Rpbmcge1xuICAgIG1hcmdpbjogMjIuNXB4IDAgMjIuNXB4IC0xNXB4O1xuICB9XG59XG4uZW50aXR5X19zaXRlLWxpbmtzIC5zaXRlLWxpbmsge1xuICBib3gtc2hhZG93OiAwIDAgMjBweCAwIHJnYmEoMTgsIDMzLCA0MywgMC4wOCk7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHdpZHRoOiAxMDAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBwYWRkaW5nLXRvcDogODAlO1xuICBib3JkZXItcmFkaXVzOiAxNnB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLmVudGl0eV9fc2l0ZS1saW5rcyAuc2l0ZS1saW5rIHtcbiAgICBwYWRkaW5nLXRvcDogMTUlO1xuICB9XG59XG4uZW50aXR5X19zaXRlLWxpbmtzIC5zaXRlLWxpbmsgc3BhbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cbi5lbnRpdHlfX3NpdGUtbGlua3MgLnNpdGUtbGluazpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMGExYWI7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgY29sb3I6ICNmZmY7XG59XG4uZW50aXR5X190aXRsZSB7XG4gIG1hcmdpbi10b3A6IDA7XG59XG4uZW50aXR5X190aXRsZSBoMSB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG4uZW50aXR5X190aXRsZSAuZGF0ZXMge1xuICBtYXJnaW4tdG9wOiAzMHB4O1xufVxuLmVudGl0eV9fc3Bla3RyaXgtZG9uYXRpb24ge1xuICBwYWRkaW5nLXRvcDogNDBweDtcbiAgcGFkZGluZy1ib3R0b206IDQwcHg7XG4gIGJvcmRlci10b3A6IDRweCBzb2xpZCAjMTIyMTJiO1xuICBib3JkZXItYm90dG9tOiA0cHggc29saWQgIzEyMjEyYjtcbn1cbi5lbnRpdHlfX3NwZWt0cml4LWRvbmF0aW9uIC5kb25hdGUge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIG1hcmdpbi10b3A6IDMwcHg7XG59XG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLmVudGl0eV9fc3Bla3RyaXgtZG9uYXRpb24gLmRvbmF0ZSB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgfVxufVxuLmVudGl0eV9fc3Bla3RyaXgtZG9uYXRpb24gLmRvbmF0ZSA+IGlucHV0W3R5cGU9bnVtYmVyXSB7XG4gIG1heC13aWR0aDogMjUwcHg7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tcmlnaHQ6IDIwcHg7XG59XG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLmVudGl0eV9fc3Bla3RyaXgtZG9uYXRpb24gLmRvbmF0ZSA+IGlucHV0W3R5cGU9bnVtYmVyXSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICB9XG59XG4uZW50aXR5X19zcGVrdHJpeC1kb25hdGlvbiAuZG9uYXRlID4gLmJ0biB7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG59XG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLmVudGl0eV9fc3Bla3RyaXgtZG9uYXRpb24gLmRvbmF0ZSA+IC5idG4ge1xuICAgIGFsaWduLXNlbGY6IGZsZXgtc3RhcnQ7XG4gICAgbWFyZ2luLXRvcDogMzBweDtcbiAgfVxufVxuLmVudGl0eV9fc3Bla3RyaXgtZG9uYXRpb24gLm1lc3NhZ2VzIHtcbiAgYm9yZGVyLXdpZHRoOiAxcHg7XG4gIG1hcmdpbi10b3A6IDMwcHg7XG59XG5cbi5naWZ0LXZvdWNoZXJzX19jb250YWluZXIgLmludmFsaWQtZm9ybS1tZXNzYWdlIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi5naWZ0LXZvdWNoZXJzX19jb250YWluZXIuaW52YWxpZC1mb3JtIC5pbnZhbGlkLWZvcm0tbWVzc2FnZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBjb2xvcjogcmVkO1xufVxuLmdpZnQtdm91Y2hlcnMgPiAuZ2lmdC12b3VjaGVyc19fcm93IGxhYmVsIHNwYW4ge1xuICBkaXNwbGF5OiBub25lO1xufVxuLmdpZnQtdm91Y2hlcnMgPiAuZ2lmdC12b3VjaGVyc19fcm93LmludmFsaWQgbGFiZWwgc3BhbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBjb2xvcjogcmVkO1xufVxuLmdpZnQtdm91Y2hlcnMgLmNob2ljZXMge1xuICBiYWNrZ3JvdW5kOiBub25lICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG59XG4uZ2lmdC12b3VjaGVycyAuY2hvaWNlcy5pcy1mb2N1c2VkIC5jaG9pY2VzX19saXN0LS1zaW5nbGUge1xuICBiYWNrZ3JvdW5kOiAjMTIyMTJiIHVybCgvdGhlbWVzL3BpcHBpcC9kaXN0L2ltZy9jdGEtYXJyb3ctZG93bi5zdmcpIG5vLXJlcGVhdCByaWdodCAyMi41cHggY2VudGVyICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxMjIxMmIgIWltcG9ydGFudDtcbiAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbn1cbi5naWZ0LXZvdWNoZXJzIC5jaG9pY2VzX19saXN0LS1zaW5nbGUge1xuICBiYWNrZ3JvdW5kOiAjZmZmIHVybCgvdGhlbWVzL3BpcHBpcC9kaXN0L2ltZy9jdGEtYXJyb3ctZG93bi0taW52ZXJ0ZWQuc3ZnKSBuby1yZXBlYXQgcmlnaHQgMjIuNXB4IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1zaXplOiAzNnB4O1xuICBtaW4td2lkdGg6IDI4MHB4O1xuICBwYWRkaW5nLXJpZ2h0OiA2MHB4O1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIC1tb3otYXBwZWFyYW5jZTogbm9uZTtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgYm9yZGVyOiA0cHggc29saWQgIzEyMjEyYjtcbiAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAwO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBib3JkZXItcmFkaXVzOiAzMHB4O1xuICBjb2xvcjogIzEyMjEyYjtcbiAgZm9udC1mYW1pbHk6IG1vbnRzZXJyYXRyZWd1bGFyLCBhcmlhbCwgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAxOHB4O1xuICBsaW5lLWhlaWdodDogMzJweDtcbiAgbWluLWhlaWdodDogNjVweDtcbiAgb3V0bGluZTogMDtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cbi5pcy1mb2N1c2VkIC5naWZ0LXZvdWNoZXJzIC5jaG9pY2VzX19saXN0LS1zaW5nbGUge1xuICBiYWNrZ3JvdW5kOiAjMTIyMTJiIHVybCgvdGhlbWVzL3BpcHBpcC9kaXN0L2ltZy9jdGEtYXJyb3ctZG93bi5zdmcpIG5vLXJlcGVhdCByaWdodCAyMi41cHggY2VudGVyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwO1xuICBjb2xvcjogI2ZmZjtcbn1cbi5naWZ0LXZvdWNoZXJzIC5jaG9pY2VzX19saXN0LS1zaW5nbGUgLmNob2ljZXNfX2l0ZW0tLXNlbGVjdGFibGUge1xuICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG59XG4uZ2lmdC12b3VjaGVycyAuY2hvaWNlc19faW5uZXIge1xuICBwYWRkaW5nOiAwO1xuICBiYWNrZ3JvdW5kOiBub25lICFpbXBvcnRhbnQ7XG59XG4uZ2lmdC12b3VjaGVycyAuY2hvaWNlc1tkYXRhLXR5cGUqPXNlbGVjdC1vbmVdOmFmdGVyIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuQGtleWZyYW1lcyBzbGlkZUluVXAge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTAwJSk7XG4gIH1cbiAgODAlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMDIpO1xuICB9XG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApIHNjYWxlKDEpO1xuICB9XG59XG4uZW1tc2cge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxMjIxMmI7XG4gIHotaW5kZXg6IDEwMDtcbiAgY29sb3I6ICNmZmY7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZmZmO1xuICBvdmVyZmxvdy15OiBzY3JvbGw7XG4gIG1heC1oZWlnaHQ6IDQwdmg7XG59XG5AbWVkaWEgKG9yaWVudGF0aW9uOiBsYW5kc2NhcGUpIGFuZCAobWF4LXdpZHRoOiA5OTFweCkgYW5kIChtYXgtaGVpZ2h0OiA1NzVweCkge1xuICAuZW1tc2cge1xuICAgIG1heC1oZWlnaHQ6IDUwdmg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtaW4taGVpZ2h0OiA1NzZweCkge1xuICAuZW1tc2cge1xuICAgIG92ZXJmbG93LXk6IHZpc2libGU7XG4gICAgbWF4LWhlaWdodDogbm9uZTtcbiAgICBwYWRkaW5nOiAyMi41cHggMDtcbiAgfVxufVxuLmVtbXNnOm5vdCguaGlkZGVuKSB7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMDAlKTtcbiAgYW5pbWF0aW9uOiBzbGlkZUluVXAgMC4ycyAwLjNzIGN1YmljLWJlemllcigwLjc3LCAwLjI5LCAwLjM1LCAwLjcyKSAxIGZvcndhcmRzO1xufVxuLmVtbXNnX19pbm5lciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIHdpZHRoOiAxMDAlO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1pbi1oZWlnaHQ6IDU3NnB4KSB7XG4gIC5lbW1zZ19faW5uZXIge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gIH1cbn1cbi5lbW1zZ19faW5uZXItLWNlbnRlciB7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG4uZW1tc2dfX2lubmVyLS1jZW50ZXIgKyAuZW1tc2dfX2NvbnRlbnQge1xuICBtYXJnaW4tdG9wOiAxNXB4O1xufVxuLmVtbXNnX190aXRsZSB7XG4gIG1hcmdpbjogMDtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cbi5lbW1zZ19fdGl0bGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcIjtcbiAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1nL2ljb24td2FybmluZy0td2hpdGUuc3ZnXCIpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gIHdpZHRoOiAyNHB4O1xuICBoZWlnaHQ6IDIycHg7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLXJpZ2h0OiAyMi41cHg7XG59XG4uZW1tc2dfX2NvbnRlbnQgcCB7XG4gIG1hcmdpbjogMTVweCAwIDA7XG59XG4uZW1tc2dfX2NvbnRlbnQgcDpmaXJzdC1vZi10eXBlIHtcbiAgbWFyZ2luLXRvcDogMDtcbn1cbi5lbW1zZ19fY2xvc2Uge1xuICBoZWlnaHQ6IDQycHg7XG4gIHdpZHRoOiA0MnB4O1xuICBmbGV4OiAwIDAgYXV0bztcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtaW4taGVpZ2h0OiA1NzZweCkge1xuICAuZW1tc2dfX2Nsb3NlIHtcbiAgICBtYXJnaW4tbGVmdDogMzBweDtcbiAgfVxufVxuLmVtbXNnX19jbG9zZSAuc3ZnIHtcbiAgZmlsbDogI2ZmZjtcbn1cbi5lbW1zZ19fY2xvc2U6aG92ZXIgLnN2ZyB7XG4gIGZpbGw6ICNmZmY7XG59XG5AbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIGFuZCAobWF4LWhlaWdodDogNTc1cHgpIHtcbiAgLmVtbXNnLS1ib2R5IHtcbiAgICBvdmVyZmxvdy15OiBoaWRkZW47XG4gIH1cbn1cblxuLmJhbm5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgbWFyZ2luLWJvdHRvbTogMTM1cHg7XG4gIGhlaWdodDogNDV2aDtcbiAgei1pbmRleDogMTtcbn1cbkBtZWRpYSAobWF4LXdpZHRoOiAxMTk5cHgpIHtcbiAgLmJhbm5lciB7XG4gICAgbWFyZ2luLWJvdHRvbTogOTBweDtcbiAgfVxufVxuQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gIC5iYW5uZXIge1xuICAgIG1hcmdpbi1ib3R0b206IDQ1cHg7XG4gIH1cbn1cbi5iYW5uZXIgLmNyZWRpdCB7XG4gIHotaW5kZXg6IDUwO1xufVxuLmJhbm5lciBpbWcge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHotaW5kZXg6IDEwO1xufVxuLmJhbm5lcl9fdmlkZW8ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgb2JqZWN0LWZpdDogY292ZXI7XG4gIHotaW5kZXg6IDEwO1xufVxuLmJhbm5lcl9fY29udHJvbCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IDQ1cHg7XG4gIHdpZHRoOiA0NXB4O1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGJvcmRlcjogM3B4IHNvbGlkICNmZmY7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDEwcHg7XG4gIGJvdHRvbTogMTBweDtcbiAgei1pbmRleDogNDA7XG4gIHRleHQtaW5kZW50OiAtOTk5ZW07XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMGExYWI7XG4gIHRyYW5zaXRpb246IDAuMnMgYmFja2dyb3VuZC1jb2xvciBjdWJpYy1iZXppZXIoMC42NCwgMC4wNCwgMC4zNSwgMSk7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG4uYmFubmVyX19jb250cm9sOmhvdmVyLCAuYmFubmVyX19jb250cm9sOmZvY3VzLCAuYmFubmVyX19jb250cm9sOmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxMjIxMmI7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMzcwcHgpIHtcbiAgLmJhbm5lcl9fY29udHJvbCB7XG4gICAgcmlnaHQ6IDIwcHg7XG4gICAgYm90dG9tOiAyMHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWluLWhlaWdodDogNTc2cHgpIHtcbiAgLmJhbm5lcl9fY29udHJvbCB7XG4gICAgaGVpZ2h0OiA1Ni4yNXB4O1xuICAgIHdpZHRoOiA1Ni4yNXB4O1xuICAgIHJpZ2h0OiAzNXB4O1xuICAgIGJvdHRvbTogMzVweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkgYW5kIChtaW4taGVpZ2h0OiA5MDBweCkge1xuICAuYmFubmVyX19jb250cm9sIHtcbiAgICB3aWR0aDogNzJweDtcbiAgICBoZWlnaHQ6IDcycHg7XG4gICAgYm9yZGVyLXdpZHRoOiA0cHg7XG4gIH1cbn1cbi5iYW5uZXJfX2NvbnRyb2wtLXBhdXNlIHtcbiAgYmFja2dyb3VuZDogIzAwYTFhYiB1cmwoXCIuLi9pbWcvaWNvbi1wYXVzZS0td2hpdGUuc3ZnXCIpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyO1xuICBiYWNrZ3JvdW5kLXNpemU6IDQ1JTtcbn1cbi5iYW5uZXJfX2NvbnRyb2wtLXBsYXkge1xuICBiYWNrZ3JvdW5kOiAjMDBhMWFiIHVybChcIi4uL2ltZy9pY29uLXBsYXktLXdoaXRlLnN2Z1wiKSBuby1yZXBlYXQgY2VudGVyIGNlbnRlcjtcbiAgYmFja2dyb3VuZC1zaXplOiA1MCU7XG59XG4uYmFubmVyOjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxMjIxMmI7XG4gIG9wYWNpdHk6IDAuNjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIGhlaWdodDogMTAwJTtcbiAgd2lkdGg6IDEwMCU7XG4gIHotaW5kZXg6IDIwO1xufVxuLmJhbm5lcl9faW5uZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgaGVpZ2h0OiAxMDAlO1xuICB3aWR0aDogMTAwJTtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgY29sb3I6ICNmZmY7XG4gIHotaW5kZXg6IDQwO1xufVxuLmJhbm5lcl9faW5uZXIgPiAuZ3JpZCB7XG4gIHdpZHRoOiAxMDAlO1xufVxuLmJhbm5lcl9faW5uZXIgaDEge1xuICBtYXgtd2lkdGg6IDExMDBweDtcbn1cbi5iYW5uZXJfX2lubmVyIHAge1xuICBmb250LWZhbWlseTogXCJtb250c2VycmF0c2VtaWJvbGRcIiwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgbWF4LXdpZHRoOiA3NTBweDtcbn1cbi5iYW5uZXIgLmVudGl0eSB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG4uYmFubmVyLS1ob21lIHtcbiAgaGVpZ2h0OiA3NXZoO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDM3MHB4KSBhbmQgKG1heC1oZWlnaHQ6IDU3NXB4KSB7XG4gIC5iYW5uZXItLWhvbWUuYmFubmVyLS1tZWRpYSB7XG4gICAgbWluLWhlaWdodDogNDAwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWF4LXdpZHRoOiAzNjlweCkgYW5kIChtYXgtaGVpZ2h0OiA1NzVweCkge1xuICAuYmFubmVyLS1ob21lLmJhbm5lci0tbWVkaWEgaDEge1xuICAgIGZvbnQtc2l6ZTogMjlweDtcbiAgICBsaW5lLWhlaWdodDogMzlweDtcbiAgICBsZXR0ZXItc3BhY2luZzogLTFweDtcbiAgfVxufVxuLmJhbm5lci0tbWVkaWEgaDEge1xuICBmb250LXNpemU6IDQ3cHg7XG4gIGxpbmUtaGVpZ2h0OiA1N3B4O1xuICBsZXR0ZXItc3BhY2luZzogLTJweDtcbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAuYmFubmVyLS1tZWRpYSBoMSB7XG4gICAgZm9udC1zaXplOiAzNXB4O1xuICAgIGxpbmUtaGVpZ2h0OiA0NXB4O1xuICAgIGxldHRlci1zcGFjaW5nOiAtMXB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSBhbmQgKG1pbi1oZWlnaHQ6IDc2OHB4KSB7XG4gIC5iYW5uZXItLW1lZGlhIGgxIHtcbiAgICBmb250LXNpemU6IDc2cHg7XG4gICAgbGluZS1oZWlnaHQ6IDg2cHg7XG4gICAgbGV0dGVyLXNwYWNpbmc6IC0zcHg7XG4gIH1cbn1cbi5iYW5uZXIgLmJ0biB7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwIDRweCAjZmZmO1xufVxuLmJhbm5lciAuYnRuOmZvY3VzIHtcbiAgb3V0bGluZS1jb2xvcjogI2ZmZjtcbn1cblxuLm5vLWJhbm5lciB7XG4gIG1hcmdpbi10b3A6IDkwcHg7XG59XG5AbWVkaWEgKG1heC13aWR0aDogMTU5OXB4KSB7XG4gIC5uby1iYW5uZXIge1xuICAgIG1hcmdpbi10b3A6IDQ1cHg7XG4gIH1cbn1cbi5teS1hY2NvdW50IC5uby1iYW5uZXIge1xuICBtYXJnaW4tdG9wOiAwO1xufVxuXG4ub3ZlcmxheSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgaGVpZ2h0OiBhdXRvO1xuICB3aWR0aDogMTAwJTtcbiAgb2JqZWN0LWZpdDogZmlsbDtcbiAgYm90dG9tOiAtNjAlO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAzMDtcbn1cbi5vdmVybGF5IC5vdmVybGF5IHtcbiAgZmlsbDogI2ZmZjtcbn1cblxuLmNyZWRpdCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiA0NXB4O1xuICByaWdodDogNDVweDtcbiAgei1pbmRleDogNDtcbiAgY3Vyc29yOiBoZWxwICFpbXBvcnRhbnQ7XG4gIGhlaWdodDogNDJweDtcbiAgd2lkdGg6IDQycHg7XG59XG5AbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgLmNyZWRpdCB7XG4gICAgYm90dG9tOiAzMHB4O1xuICAgIHJpZ2h0OiAzMHB4O1xuICB9XG59XG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLmNyZWRpdCB7XG4gICAgYm90dG9tOiAxNXB4O1xuICAgIHJpZ2h0OiAxNXB4O1xuICB9XG59XG4uY3JlZGl0IHNwYW4ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiAxMDAlO1xuICB3aWR0aDogMTAwJTtcbn1cbi5jcmVkaXQgLmJnIHtcbiAgZmlsbDogI2ZmZjtcbn1cbi5jcmVkaXQgLmZnIHtcbiAgZm9udC1mYW1pbHk6IFwibW9udHNlcnJhdHNlbWlib2xkXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZvbnQtc2l6ZTogMS4yZW07XG4gIGZpbGw6ICMxMjIxMmI7XG59XG4uY3JlZGl0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IGF0dHIoZGF0YS1jcmVkaXQpO1xuICB0ZXh0LWluZGVudDogMDtcbiAgYmFja2dyb3VuZDogIzEyMjEyYjtcbiAgY29sb3I6ICNmZmY7XG4gIG9wYWNpdHk6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDQycHg7XG4gIHRvcDogMDtcbiAgei1pbmRleDogLTE7XG4gIHBhZGRpbmc6IDAgMjFweDtcbiAgaGVpZ2h0OiA0MnB4O1xuICBsaW5lLWhlaWdodDogNDJweDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzIGN1YmljLWJlemllcigwLjY0LCAwLjA0LCAwLjM1LCAxKTtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgbGV0dGVyLXNwYWNpbmc6IDA7XG4gIHdvcmQtc3BhY2luZzogMDtcbn1cbi5jcmVkaXQ6aG92ZXIgLmJnIHtcbiAgZmlsbDogIzEyMjEyYjtcbn1cbi5jcmVkaXQ6aG92ZXIgLmZnIHtcbiAgZmlsbDogI2ZmZjtcbn1cbi5jcmVkaXQ6aG92ZXI6OmJlZm9yZSB7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5zaWRlYmFyIHtcbiAgbWFyZ2luLWJvdHRvbTogNDVweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwYTFhYjtcbiAgcGFkZGluZzogMzBweDtcbiAgcGFkZGluZy10b3A6IDQ1cHg7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAyMHB4O1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAyMHB4O1xuICBjb2xvcjogI2ZmZjtcbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xuICAuc2lkZWJhciB7XG4gICAgcGFkZGluZzogMTVweDtcbiAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMTVweDtcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAxNXB4O1xuICB9XG59XG4uc2lkZWJhci0tZXZlbnQge1xuICBwYWRkaW5nOiAyMHB4O1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAuc2lkZWJhci0tZXZlbnQge1xuICAgIHBhZGRpbmc6IDQwcHg7XG4gIH1cbn1cbi5zaWRlYmFyX19ldmVudHMge1xuICBtYXJnaW4tdG9wOiAyNHB4O1xufVxuLnNpZGViYXJfX2V2ZW50cy10aXRsZSB7XG4gIG1hcmdpbi10b3A6IDI0cHg7XG4gIGZvbnQtc2l6ZTogMThweDtcbiAgbGluZS1oZWlnaHQ6IDI4cHg7XG4gIGxldHRlci1zcGFjaW5nOiAtMC41cHg7XG59XG4uc2lkZWJhcl9fZXZlbnRzLXRpdGxlOmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLXRvcDogMDtcbn1cbi5zaWRlYmFyX19ldmVudHMtZW1wdHkge1xuICBmb250LXNpemU6IDE4cHg7XG4gIGxpbmUtaGVpZ2h0OiAyOHB4O1xuICBsZXR0ZXItc3BhY2luZzogLTAuNXB4O1xuICBtYXJnaW46IDAgMCAxNnB4O1xufVxuLnNpZGViYXJfX2V2ZW50LWxpc3Qge1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luOiAwO1xufVxuLnNpZGViYXJfX2V2ZW50LWxpc3QgbGkge1xuICBwYWRkaW5nOiAyNHB4IDAgMDtcbiAgbWFyZ2luLXRvcDogMjRweDtcbn1cbi5zaWRlYmFyX19ldmVudCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGJvcmRlci10b3A6IDJweCBzb2xpZCAjZmZmO1xufVxuLnNpZGViYXJfX2V2ZW50OmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLXRvcDogMDtcbn1cbi5zaWRlYmFyX19ldmVudC1jb250ZW50IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbn1cbi5zaWRlYmFyX19ldmVudC10aW1lIHtcbiAgZmxleDogMCAwIGF1dG87XG4gIHdpZHRoOiAxMDdweDtcbiAgaGVpZ2h0OiA5N3B4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBjb2xvcjogIzEyMjEyYjtcbiAgZm9udC1mYW1pbHk6IFwibW9udHNlcnJhdHNlbWlib2xkXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYm9yZGVyLXJhZGl1czogMTZweDtcbiAgbWFyZ2luLXJpZ2h0OiAyNHB4O1xufVxuLnNpZGViYXJfX2V2ZW50LXZlbnVlIHtcbiAgZm9udC1mYW1pbHk6IFwibW9udHNlcnJhdHNlbWlib2xkXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG59XG4uc2lkZWJhcl9fZXZlbnQgKyAuc2lkZWJhcl9fZXZlbnQge1xuICBib3JkZXItdG9wOiBub25lO1xuICBwYWRkaW5nLXRvcDogMDtcbn1cbi5zaWRlYmFyX19yb3cge1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLXRvcDogMjRweDtcbn1cbi5zaWRlYmFyX19yb3c6Zmlyc3QtY2hpbGQge1xuICBtYXJnaW4tdG9wOiAwO1xufVxuLnNpZGViYXIgLmN0YSB7XG4gIGZvbnQtZmFtaWx5OiBcIm1vbnRzZXJyYXRzZW1pYm9sZFwiLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTIyMTJiO1xuICBwYWRkaW5nOiAxMnB4O1xuICBsaW5lLWhlaWdodDogMTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBjdWJpYy1iZXppZXIoMC42NCwgMC4wNCwgMC4zNSwgMSk7XG4gIGJvcmRlcjogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgY29sb3I6ICMwMGExYWI7XG59XG4uc2lkZWJhciAuY3RhOmhvdmVyLCAuc2lkZWJhciAuY3RhOmZvY3VzLCAuc2lkZWJhciAuY3RhLmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM2ZDZlNzE7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgY29sb3I6ICNmZmY7XG59XG4uc2lkZWJhciAuY3RhOmZvY3VzIHtcbiAgb3V0bGluZS1jb2xvcjogIzEyMjEyYjtcbn1cbi5zaWRlYmFyIC5jdGE6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNmQ2ZTcxO1xufVxuLnNpZGViYXIgdWwubWVudSB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbn1cbi5zaWRlYmFyIHVsLm1lbnUgbGkge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG59XG4uc2lkZWJhciB1bC5tZW51IHVsLm1lbnUge1xuICBwYWRkaW5nLWxlZnQ6IDMwcHg7XG59XG4uc2lkZWJhciB1bC5tZW51IGEge1xuICBmb250LWZhbWlseTogXCJtb250c2VycmF0cmVndWxhclwiLCBhcmlhbCwgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAxOHB4O1xuICBsaW5lLWhlaWdodDogMzJweDtcbiAgY29sb3I6ICNmZmY7XG59XG4uc2lkZWJhciB1bC5tZW51IGEuaXMtYWN0aXZlIHtcbiAgZm9udC1mYW1pbHk6IFwibW9udHNlcnJhdHNlbWlib2xkXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG59XG4uc2lkZWJhciB1bC5tZW51IC5tZW51LWl0ZW0tLWFjdGl2ZS10cmFpbCA+IGEge1xuICBmb250LWZhbWlseTogXCJtb250c2VycmF0c2VtaWJvbGRcIiwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbn1cbi5zaWRlYmFyIGgzIGEge1xuICBjb2xvcjogI2ZmZjtcbn1cbi5zaWRlYmFyX19sYXRlc3QtbmV3cyAubGlzdGluZyB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbn1cbi5zaWRlYmFyX19sYXRlc3QtbmV3cyAubGlzdGluZyBsaSB7XG4gIHBhZGRpbmc6IDAgMCAzMHB4O1xuICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICBib3JkZXItYm90dG9tOiAycHggc29saWQgI2ZmZjtcbn1cbi5zaWRlYmFyX19pbmZvIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xufVxuLnNpZGViYXJfX2luZm8tYnJlYWsge1xuICBtYXJnaW4tdG9wOiAzMHB4O1xufVxuLnNpZGViYXJfX2luZm8gc3Ryb25nIHtcbiAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xufVxuLnNpZGViYXJfX2luZm8gYSB7XG4gIGZvbnQtZmFtaWx5OiBcIm1vbnRzZXJyYXRyZWd1bGFyXCIsIGFyaWFsLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDE4cHg7XG4gIGxpbmUtaGVpZ2h0OiAzMnB4O1xuICBjb2xvcjogI2ZmZjtcbn1cbi5zaWRlYmFyLS1ib29rIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIHBhZGRpbmc6IDA7XG59XG4uc2lkZWJhciAuZW50aXR5X19lbWJlZCB7XG4gIG1hcmdpbjogMzBweCAwO1xufVxuXG4uYnRuLS1ib29rIGEge1xuICBmb250LWZhbWlseTogXCJtb250c2VycmF0c2VtaWJvbGRcIiwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAzMHB4O1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAzMHB4O1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwYTFhYjtcbiAgcGFkZGluZzogMjRweCA1Mi41cHggMjMuMDc2OTIzMDc2OXB4IDI0cHg7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW4tcmlnaHQ6IDMwcHg7XG4gIHRyYW5zaXRpb246IGFsbCAwLjFzIGN1YmljLWJlemllcigwLjY0LCAwLjA0LCAwLjM1LCAxKTtcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgNHB4ICNmZmY7XG4gIHdpZHRoOiBjYWxjKDEwMCUgLSAzMHB4KTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0ZXh0LWFsaWduLWxhc3Q6IGNlbnRlcjtcbiAgYm94LXNoYWRvdzogbm9uZTtcbn1cbi5idG4tLWJvb2sgYTo6YmVmb3JlLCAuYnRuLS1ib29rIGE6OmFmdGVyIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWcvaWNvbi1zbWlsZS5zdmdcIik7XG4gIGJhY2tncm91bmQtc2l6ZTogMjBweDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogNTAlIDU1JTtcbiAgY29udGVudDogXCJcIjtcbiAgYm9yZGVyOiA0cHggc29saWQgI2ZmZjtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDBhMWFiO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHdpZHRoOiA2NnB4O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICByaWdodDogLTMycHg7XG4gIHRyYW5zaXRpb246IGFsbCAwLjVzIGN1YmljLWJlemllcigwLjY0LCAwLjA0LCAwLjM1LCAxKTtcbiAgei1pbmRleDogMTtcbn1cbi5idG4tLWJvb2sgYTo6YmVmb3JlIHtcbiAgYm9yZGVyOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTIyMTJiO1xuICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDhweCk7XG4gIHdpZHRoOiA1OHB4O1xuICB0b3A6IDRweDtcbiAgcmlnaHQ6IC0yOHB4O1xuICB6LWluZGV4OiAyO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpIHNjYWxlKDApO1xuICB0cmFuc2l0aW9uOiBhbGwgMC41cyBjdWJpYy1iZXppZXIoMC42NCwgMC4wNCwgMC4zNSwgMSk7XG59XG4uYnRuLS1ib29rIGE6aG92ZXIge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGNvbG9yOiAjZmZmO1xufVxuLmJ0bi0tYm9vayBhOmhvdmVyOjpiZWZvcmUge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgwKSBzY2FsZSgxKTtcbn1cbi5idG4tLWJvb2sgYTpob3Zlcjo6YWZ0ZXIge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgtMzYwZGVnKTtcbn1cbi5idG4tLWJvb2sgYTpmb2N1cyB7XG4gIG91dGxpbmUtY29sb3I6ICMxMjIxMmI7XG59XG5cbi8qXG4gIERpc2NvdmVyIG1vZGFsXG4qL1xuLmJ0bi0tZGlzY292ZXIge1xuICBtaW4td2lkdGg6IDM5MHB4O1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIGJvcmRlci1yYWRpdXM6IDMwcHg7XG4gIHBhZGRpbmc6IDI0cHggMjRweCAyMy4wNzY5MjMwNzY5cHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzEyMjEyYjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuQG1lZGlhIChtYXgtd2lkdGg6IDE1OTlweCkge1xuICAuYnRuLS1kaXNjb3ZlciB7XG4gICAgbWluLXdpZHRoOiAwO1xuICB9XG59XG4uYnRuLS1kaXNjb3Zlcjo6YmVmb3JlLCAuYnRuLS1kaXNjb3Zlcjo6YWZ0ZXIge1xuICBkaXNwbGF5OiBub25lO1xufVxuLmJ0bi0tZGlzY292ZXIgc3ZnIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMCBhdXRvO1xufVxuLmJ0bi0tZGlzY292ZXIgc3ZnIHBhdGgge1xuICB0cmFuc2l0aW9uOiBmaWxsIDAuMnMgY3ViaWMtYmV6aWVyKDAuNjQsIDAuMDQsIDAuMzUsIDEpO1xufVxuLmJ0bi0tZGlzY292ZXI6aG92ZXIsIC5idG4tLWRpc2NvdmVyOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgY29sb3I6ICMxMjIxMmI7XG59XG4uYnRuLS1kaXNjb3Zlcjpob3ZlciBnOm5vdCguY2lyY2xlKSxcbi5idG4tLWRpc2NvdmVyOmhvdmVyIHBhdGg6bm90KC5jaXJjbGUpLCAuYnRuLS1kaXNjb3Zlcjpmb2N1cyBnOm5vdCguY2lyY2xlKSxcbi5idG4tLWRpc2NvdmVyOmZvY3VzIHBhdGg6bm90KC5jaXJjbGUpIHtcbiAgZmlsbDogIzEyMjEyYjtcbn1cblxuLm1vZGFsLS1kaXNjb3ZlciB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzEyMjEyYjtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGNvbG9yOiAjZmZmO1xufVxuQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSBhbmQgKG1heC1oZWlnaHQ6IDU3NnB4KSB7XG4gIC5tb2RhbC0tZGlzY292ZXIge1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcbiAgfVxufVxuLm1vZGFsLS1kaXNjb3Zlcjo6YmVmb3JlIHtcbiAgY29udGVudDogXCJcIjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzEyMjEyYjtcbiAgb3BhY2l0eTogMC45O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgaGVpZ2h0OiAxMDAlO1xuICB3aWR0aDogMTAwJTtcbiAgei1pbmRleDogMjtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLm1vZGFsLS1kaXNjb3Zlcl9fbG9nbyB7XG4gICAgbGVmdDogMzBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDE4NDhweCkge1xuICAubW9kYWwtLWRpc2NvdmVyX19sb2dvIHtcbiAgICBsZWZ0OiA5MHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5tb2RhbC0tZGlzY292ZXJfX2Nsb3NlIHtcbiAgICByaWdodDogMzBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDE4NDhweCkge1xuICAubW9kYWwtLWRpc2NvdmVyX19jbG9zZSB7XG4gICAgcmlnaHQ6IDkwcHg7XG4gIH1cbn1cbi5tb2RhbC0tZGlzY292ZXJfX2lubmVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMTA7XG4gIG9wYWNpdHk6IDA7XG4gIHBhZGRpbmc6IDE1cHggMDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIGFuZCAobWluLWhlaWdodDogNTc2cHgpIHtcbiAgLm1vZGFsLS1kaXNjb3Zlcl9faW5uZXIge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgIHBhZGRpbmc6IDAgMTVweDtcbiAgfVxufVxuQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSBhbmQgKG1heC1oZWlnaHQ6IDU3NnB4KSB7XG4gIC5tb2RhbC0tZGlzY292ZXIgPiAuZ3JpZCB7XG4gICAgaGVpZ2h0OiA4MHZoO1xuICAgIGhlaWdodDogY2FsYyh2YXIoLS12aCwgMXZoKSAqIDgwKTtcbiAgfVxufVxuLm1vZGFsLS1kaXNjb3Zlcl9fY29udGVudCB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW46IDA7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWluLWhlaWdodDogNTc2cHgpIHtcbiAgLm1vZGFsLS1kaXNjb3Zlcl9fY29udGVudCB7XG4gICAgbWFyZ2luOiAzMHB4IDA7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLm1vZGFsLS1kaXNjb3Zlcl9fY29udGVudCB7XG4gICAgbWluLXdpZHRoOiA0MHZ3O1xuICAgIHdpZHRoOiA1MCU7XG4gICAgbWFyZ2luLXJpZ2h0OiA2Ny41cHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxNjAwcHgpIHtcbiAgLm1vZGFsLS1kaXNjb3Zlcl9fY29udGVudCB7XG4gICAgbWluLXdpZHRoOiAwO1xuICAgIG1pbi13aWR0aDogMzB2dztcbiAgICBtYXJnaW4tcmlnaHQ6IDkwcHg7XG4gIH1cbn1cbi5tb2RhbC0tZGlzY292ZXJfX2NvbnRlbnQgaDIge1xuICBmb250LXNpemU6IDI5cHg7XG4gIGxpbmUtaGVpZ2h0OiAzOXB4O1xuICBsZXR0ZXItc3BhY2luZzogLTFweDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0MTBweCkgYW5kIChtYXgtd2lkdGg6IDE2MDBweCkgYW5kIChtaW4taGVpZ2h0OiA1NzZweCkge1xuICAubW9kYWwtLWRpc2NvdmVyX19jb250ZW50IGgyIHtcbiAgICBmb250LXNpemU6IDQ3cHg7XG4gICAgbGluZS1oZWlnaHQ6IDU3cHg7XG4gICAgbGV0dGVyLXNwYWNpbmc6IC0ycHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0MTBweCkgYW5kIChtYXgtd2lkdGg6IDE2MDBweCkgYW5kIChtaW4taGVpZ2h0OiA1NzZweCkgYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC5tb2RhbC0tZGlzY292ZXJfX2NvbnRlbnQgaDIge1xuICAgIGZvbnQtc2l6ZTogMzVweDtcbiAgICBsaW5lLWhlaWdodDogNDVweDtcbiAgICBsZXR0ZXItc3BhY2luZzogLTFweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDE2MDBweCkge1xuICAubW9kYWwtLWRpc2NvdmVyX19jb250ZW50IGgyIHtcbiAgICBmb250LXNpemU6IDc2cHg7XG4gICAgbGluZS1oZWlnaHQ6IDg2cHg7XG4gICAgbGV0dGVyLXNwYWNpbmc6IC0zcHg7XG4gIH1cbn1cbi5tb2RhbC0tZGlzY292ZXJfX2NvbnRlbnQgcCB7XG4gIGZvbnQtZmFtaWx5OiBcIm1vbnRzZXJyYXRzZW1pYm9sZFwiLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBmb250LXNpemU6IDFlbTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0MTBweCkgYW5kIChtaW4taGVpZ2h0OiA1NzZweCkge1xuICAubW9kYWwtLWRpc2NvdmVyX19jb250ZW50IHAge1xuICAgIGZvbnQtc2l6ZTogMS4yZW07XG4gIH1cbn1cbi5tb2RhbC0tZGlzY292ZXJfX2NvbnRlbnQgLmJ0biB7XG4gIG1hcmdpbi10b3A6IDMwcHg7XG59XG4ubW9kYWwtLWRpc2NvdmVyX19saW5rcyB7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIG1hcmdpbi10b3A6IDQ1cHg7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDMsIDFmcik7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNTc2cHgpIGFuZCAobWF4LXdpZHRoOiAxMTk5cHgpIHtcbiAgLm1vZGFsLS1kaXNjb3Zlcl9fbGlua3Mge1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWluLWhlaWdodDogNTc2cHgpIHtcbiAgLm1vZGFsLS1kaXNjb3Zlcl9fbGlua3Mge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gIH1cbn1cbi5tb2RhbC0tZGlzY292ZXJfX2xpbmtzIGEge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG4ubW9kYWwtLWRpc2NvdmVyX19saW5rcyBhOmhvdmVyIHAsIC5tb2RhbC0tZGlzY292ZXJfX2xpbmtzIGE6Zm9jdXMgcCB7XG4gIGNvbG9yOiB2YXIoLS1saW5rLWJvZHktY29sb3VyKTtcbn1cbi5tb2RhbC0tZGlzY292ZXJfX2xpbmtzIGEgcCB7XG4gIG1hcmdpbi10b3A6IDE1cHg7XG4gIGNvbG9yOiAjZmZmO1xuICB0cmFuc2l0aW9uOiAwLjJzO1xufVxuLm1vZGFsLS1kaXNjb3Zlcl9fcGF0dGVybiwgLm1vZGFsLS1kaXNjb3Zlcl9faW1hZ2Uge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgaGVpZ2h0OiAxMDAlO1xuICB3aWR0aDogMTAwJTtcbiAgb3BhY2l0eTogMDtcbiAgYW5pbWF0aW9uOiBmYWRlSW4gMC4ycyBjdWJpYy1iZXppZXIoMC42NCwgMC4wNCwgMC4zNSwgMSkgZm9yd2FyZHM7XG4gIGFuaW1hdGlvbi1wbGF5LXN0YXRlOiBwYXVzZWQ7XG59XG4ubW9kYWwtLWRpc2NvdmVyX19pbWFnZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxMjIxMmI7XG4gIHotaW5kZXg6IDU7XG4gIG9iamVjdC1maXQ6IGNvdmVyO1xuICBvcGFjaXR5OiAwO1xuICBkaXNwbGF5OiBibG9jaztcbiAgYW5pbWF0aW9uLWRlbGF5OiAwLjA1cztcbn1cbi5tb2RhbC0tZGlzY292ZXJfX2ltYWdlLnNob3duIHtcbiAgYW5pbWF0aW9uLXBsYXktc3RhdGU6IHJ1bm5pbmc7XG59XG4ubW9kYWwtLWRpc2NvdmVyX19pbWFnZS5oaWRpbmcge1xuICBhbmltYXRpb246IGZhZGVPdXQgMC4ycyBjdWJpYy1iZXppZXIoMC42NCwgMC4wNCwgMC4zNSwgMSkgZm9yd2FyZHM7XG59XG4ubW9kYWwtLWRpc2NvdmVyX19wYXR0ZXJuIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICB6LWluZGV4OiA2O1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBvcGFjaXR5OiAwO1xuICBhbmltYXRpb24tZHVyYXRpb246IDAuMTVzO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDE4LCAzMywgNDMsIDAuOSk7XG59XG4ubW9kYWwtLWRpc2NvdmVyX19wYXR0ZXJuLnZlcnRpY2FsLS1wdHRjIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1nL2JhY2tncm91bmQtcHR0Yy13aC5zdmdcIik7XG59XG4ubW9kYWwtLWRpc2NvdmVyX19wYXR0ZXJuLnZlcnRpY2FsLS1oZiB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy9iYWNrZ3JvdW5kLWhmLXdoLnN2Z1wiKTtcbn1cbi5tb2RhbC0tZGlzY292ZXJfX3BhdHRlcm4udmVydGljYWwtLXRydyB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy9iYWNrZ3JvdW5kLXRydy13aC5zdmdcIik7XG59XG4ubW9kYWwtLWRpc2NvdmVyX19wYXR0ZXJuLnZlcnRpY2FsLS1wbSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy9iYWNrZ3JvdW5kLXBtLXdoLnN2Z1wiKTtcbn1cbi5tb2RhbC0tZGlzY292ZXJfX3BhdHRlcm4uc2hvd24ge1xuICBhbmltYXRpb24tcGxheS1zdGF0ZTogcnVubmluZztcbn1cbi5tb2RhbC0tZGlzY292ZXJfX3BhdHRlcm4uaGlkaW5nIHtcbiAgb3BhY2l0eTogMTtcbiAgYW5pbWF0aW9uOiBmYWRlT3V0IDAuMnMgMC4xcyBjdWJpYy1iZXppZXIoMC42NCwgMC4wNCwgMC4zNSwgMSkgZm9yd2FyZHM7XG59XG4ubW9kYWwtLWRpc2NvdmVyIC5vdmVybGF5IHtcbiAgei1pbmRleDogMztcbn1cbi5tb2RhbC0tZGlzY292ZXIgLnZlcnRpY2FsLWxpbmsge1xuICBkaXNwbGF5OiBncmlkO1xuICBtYXJnaW46IDAgMTVweDtcbiAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiAxZnIgYXV0bztcbiAgZ3JpZC1nYXA6IDIwcHg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNTc2cHgpIGFuZCAobWF4LXdpZHRoOiAxMTk5cHgpIHtcbiAgLm1vZGFsLS1kaXNjb3ZlciAudmVydGljYWwtbGluayB7XG4gICAgbWFyZ2luOiAwIDMwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLm1vZGFsLS1kaXNjb3ZlciAudmVydGljYWwtbGluayB7XG4gICAgbWFyZ2luOiAwIDMwcHg7XG4gIH1cbn1cbi5tb2RhbC0tZGlzY292ZXIgLnZlcnRpY2FsLWxpbmsgLnZlcnRpY2FsLWxpbmtfX2NvbnRlbnQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG59XG4ubW9kYWwtLWRpc2NvdmVyIC52ZXJ0aWNhbC1saW5rIGltZyB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGF1dG87XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXgtaGVpZ2h0OiA2NXB4O1xuICBvYmplY3QtZml0OiBjb250YWluO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5tb2RhbC0tZGlzY292ZXIgLnZlcnRpY2FsLWxpbmsgaW1nIHtcbiAgICBtYXgtaGVpZ2h0OiA4MHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIGFuZCAobWluLWhlaWdodDogNTc2cHgpIHtcbiAgLm1vZGFsLS1kaXNjb3ZlciAudmVydGljYWwtbGluayBpbWcge1xuICAgIG1heC1oZWlnaHQ6IDEyNXB4O1xuICB9XG59XG4ubW9kYWwtLWRpc2NvdmVyIC52ZXJ0aWNhbC1saW5rOmhvdmVyLCAubW9kYWwtLWRpc2NvdmVyIC52ZXJ0aWNhbC1saW5rOmZvY3VzIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxLjIpO1xufVxuLm1vZGFsLS1kaXNjb3ZlciAudmVydGljYWwtbGluazpob3ZlciAudmVydGljYWwtbGlua19fY29udGVudCwgLm1vZGFsLS1kaXNjb3ZlciAudmVydGljYWwtbGluazpmb2N1cyAudmVydGljYWwtbGlua19fY29udGVudCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuLm1vZGFsLS1kaXNjb3ZlciAudmVydGljYWwtbGluazpob3ZlciAudmVydGljYWwtbGlua19fY29udGVudCBwLCAubW9kYWwtLWRpc2NvdmVyIC52ZXJ0aWNhbC1saW5rOmZvY3VzIC52ZXJ0aWNhbC1saW5rX19jb250ZW50IHAge1xuICBjb2xvcjogI2ZmZjtcbn1cblxuLm9wZW4tZGlzY292ZXIge1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuLm9wZW4tZGlzY292ZXIgLm1vZGFsLS1kaXNjb3ZlciB7XG4gIGFuaW1hdGlvbjogZGlzY0luIDAuMjVzIGN1YmljLWJlemllcigwLjY0LCAwLjA0LCAwLjM1LCAxKSBub3JtYWwgYm90aDtcbn1cbi5vcGVuLWRpc2NvdmVyIC5tb2RhbC0tZGlzY292ZXJfX2lubmVyIHtcbiAgYW5pbWF0aW9uOiBjb250ZW50SW4gMC4ycyAwLjE1cyBjdWJpYy1iZXppZXIoMC42NCwgMC4wNCwgMC4zNSwgMSkgbm9ybWFsIGJvdGg7XG59XG5cbi5jbG9zZS1kaXNjb3ZlciAubW9kYWwtLWRpc2NvdmVyIHtcbiAgYW5pbWF0aW9uOiBkaXNjT3V0IDAuMnMgMC4ycyBjdWJpYy1iZXppZXIoMC42NCwgMC4wNCwgMC4zNSwgMSkgbm9ybWFsIGJvdGg7XG59XG4uY2xvc2UtZGlzY292ZXIgLm1vZGFsLS1kaXNjb3Zlcl9faW5uZXIge1xuICBhbmltYXRpb246IGNvbnRlbnRPdXQgMC4ycyBjdWJpYy1iZXppZXIoMC42NCwgMC4wNCwgMC4zNSwgMSkgbm9ybWFsIGJvdGg7XG59XG5cbi8qXG4gIFZpZXcgZmlsdGVyc1xuKi9cbi5maWx0ZXJzIHtcbiAgbWFyZ2luLWJvdHRvbTogOTBweDtcbn1cblxuLmZpbHRlcnMsXG4udmlld3MtZXhwb3NlZC1mb3JtIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuLmZpbHRlcnMgaDMsXG4udmlld3MtZXhwb3NlZC1mb3JtIGgzIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgd2lkdGg6IDEwMCU7XG59XG4uZmlsdGVycyAuc2VlLWFsbCxcbi52aWV3cy1leHBvc2VkLWZvcm0gLnNlZS1hbGwge1xuICBtYXJnaW4tbGVmdDogYXV0bztcbn1cblxuLnZpZXdzLWV4cG9zZWQtZm9ybSBsYWJlbCB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4udmlld3MtZXhwb3NlZC1mb3JtIC5qcy1mb3JtLWl0ZW0sXG4udmlld3MtZXhwb3NlZC1mb3JtIC5qcy1mb3JtLWFjdGlvbnMge1xuICBtYXJnaW46IDAgNDVweCAwIDA7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi5jaG9pY2VzIHtcbiAgbWluLXdpZHRoOiAxODBweDtcbiAgZm9udC1mYW1pbHk6IFwibW9udHNlcnJhdHNlbWlib2xkXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxMjIxMmI7XG4gIGNvbG9yOiAjZmZmO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBjdWJpYy1iZXppZXIoMC42NCwgMC4wNCwgMC4zNSwgMSk7XG59XG4uY2hvaWNlcy5pcy1vcGVuIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzZkNmU3MTtcbn1cbi5jaG9pY2VzX19pbm5lciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBmb250LXNpemU6IDE4cHg7XG4gIGxpbmUtaGVpZ2h0OiAyOHB4O1xuICBsZXR0ZXItc3BhY2luZzogLTAuNXB4O1xuICBib3JkZXI6IDA7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIHBhZGRpbmc6IDhweCAxMnB4O1xuICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBjdWJpYy1iZXppZXIoMC42NCwgMC4wNCwgMC4zNSwgMSk7XG59XG4uY2hvaWNlc19faW5uZXI6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNmQ2ZTcxO1xufVxuLmNob2ljZXNfX2xpc3Qge1xuICBwYWRkaW5nOiAwO1xufVxuLmNob2ljZXNfX2xpc3QtLWRyb3Bkb3duIC5jaG9pY2VzX19pdGVtIHtcbiAgcGFkZGluZzogNnB4IDEwcHg7XG4gIGNvbG9yOiAjMTIyMTJiO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBjdWJpYy1iZXppZXIoMC42NCwgMC4wNCwgMC4zNSwgMSk7XG59XG4uY2hvaWNlc19fbGlzdC0tZHJvcGRvd24gLmNob2ljZXNfX2l0ZW06OmFmdGVyIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi5jaG9pY2VzX19saXN0LS1kcm9wZG93biAuY2hvaWNlc19faXRlbS5pcy1oaWdobGlnaHRlZCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxMjIxMmI7XG4gIGNvbG9yOiAjZmZmO1xufVxuLmNob2ljZXNbZGF0YS10eXBlKj1zZWxlY3Qtb25lXSAuY2hvaWNlc19faW5uZXIge1xuICBwYWRkaW5nLWJvdHRvbTogOHB4O1xufVxuLmNob2ljZXNbZGF0YS10eXBlKj1zZWxlY3Qtb25lXTo6YWZ0ZXIge1xuICBib3JkZXItY29sb3I6ICNmZmYgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG59XG5cbi8qKlxuICogUmVzcG9uc2l2ZSBTdHlsZXNcbiAqL1xuLmZpbHRlcnMsXG4uZmlsdGVycyAudmlld3MtZXhwb3NlZC1mb3JtIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuQG1lZGlhIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAuZmlsdGVycyxcbi5maWx0ZXJzIC52aWV3cy1leHBvc2VkLWZvcm0ge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIH1cbn1cbi5maWx0ZXJzIHNlbGVjdCxcbi5maWx0ZXJzIC52aWV3cy1leHBvc2VkLWZvcm0gc2VsZWN0IHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4uZmlsdGVycyBpbnB1dFt0eXBlPXN1Ym1pdF0ge1xuICB3aWR0aDogMTAwJTtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgbWFyZ2luOiAwO1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBjb2xvcjogIzEyMjEyYjtcbiAgcGFkZGluZzogMDtcbiAgZm9udC1mYW1pbHk6IFwibW9udHNlcnJhdHNlbWlib2xkXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5maWx0ZXJzIGlucHV0W3R5cGU9c3VibWl0XSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMTE5JTtcbiAgfVxufVxuQG1lZGlhIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAuZmlsdGVycyAuZm9ybS1pdGVtLFxuLmZpbHRlcnMgLmZvcm0tYWN0aW9ucyB7XG4gICAgd2lkdGg6IGNhbGMoMzMuMzMzMzMzMzMzMyUgLSAxNXB4KTtcbiAgICBtYXJnaW46IDE1cHggMCAwO1xuICB9XG59XG5AbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgLmZpbHRlcnMgLmZvcm0taXRlbSxcbi5maWx0ZXJzIC5mb3JtLWFjdGlvbnMge1xuICAgIHdpZHRoOiBjYWxjKDUwJSAtIDE1cHgpO1xuICB9XG59XG5AbWVkaWEgKG1heC13aWR0aDogNTc2cHgpIHtcbiAgLmZpbHRlcnMgLmZvcm0taXRlbSxcbi5maWx0ZXJzIC5mb3JtLWFjdGlvbnMge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG5AbWVkaWEgKG1heC13aWR0aDogMTIwMHB4KSBhbmQgKG1pbi13aWR0aDogNzY5cHgpIHtcbiAgLmZpbHRlcnMgLmZvcm0taXRlbTpudGgtY2hpbGQoLW4rMyksXG4uZmlsdGVycyAuZm9ybS1hY3Rpb25zOm50aC1jaGlsZCgtbiszKSB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgfVxufVxuQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSBhbmQgKG1pbi13aWR0aDogNTc3cHgpIHtcbiAgLmZpbHRlcnMgLmZvcm0taXRlbTpudGgtY2hpbGQoLW4rMiksXG4uZmlsdGVycyAuZm9ybS1hY3Rpb25zOm50aC1jaGlsZCgtbisyKSB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgfVxufVxuQG1lZGlhIChtYXgtd2lkdGg6IDU3NnB4KSB7XG4gIC5maWx0ZXJzIC5mb3JtLWl0ZW06Zmlyc3QtY2hpbGQsXG4uZmlsdGVycyAuZm9ybS1hY3Rpb25zOmZpcnN0LWNoaWxkIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICB9XG59XG5AbWVkaWEgKG1heC13aWR0aDogMTIwMHB4KSB7XG4gIC5maWx0ZXJzIC5jdGEge1xuICAgIHdpZHRoOiBjYWxjKDMzLjMzMzMzMzMzMzMlIC0gMTVweCk7XG4gICAgbWFyZ2luOiAxNXB4IDAgMDtcbiAgfVxufVxuQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gIC5maWx0ZXJzIC5jdGEge1xuICAgIHdpZHRoOiBjYWxjKDUwJSAtIDE1cHgpO1xuICB9XG59XG5AbWVkaWEgKG1heC13aWR0aDogNTc2cHgpIHtcbiAgLmZpbHRlcnMgLmN0YSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cbkBtZWRpYSAobWF4LXdpZHRoOiAxMjAwcHgpIHtcbiAgLmZpbHRlcnMgLmN0YTpsYXN0LW9mLXR5cGUge1xuICAgIG1hcmdpbjogMTVweCBhdXRvIDAgMjBweDtcbiAgfVxufVxuQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gIC5maWx0ZXJzIC5jdGE6bGFzdC1vZi10eXBlIHtcbiAgICBtYXJnaW46IDE1cHggMCAwO1xuICB9XG59XG5cbi5zY2hlZHVsZSAudmlld19fcGVyZm9ybWFuY2VzX2J5X2V2ZW50cywgLnNjaGVkdWxlIC52aWV3X193aGF0c19vbl9zaG93X3RpbWVzLCAuc2NoZWR1bGUgLnZpZXdfX2V2ZW50c19ieV92ZW51ZSB7XG4gIHdpZHRoOiAxMDAlO1xufVxuLnNjaGVkdWxlIC52aWV3X19wZXJmb3JtYW5jZXNfYnlfZXZlbnRzID4gaGVhZGVyLCAuc2NoZWR1bGUgLnZpZXdfX3doYXRzX29uX3Nob3dfdGltZXMgPiBoZWFkZXIsIC5zY2hlZHVsZSAudmlld19fZXZlbnRzX2J5X3ZlbnVlID4gaGVhZGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIG1hcmdpbjogMzBweCAwO1xufVxuLnNjaGVkdWxlIC52aWV3X19wZXJmb3JtYW5jZXNfYnlfZXZlbnRzID4gZGl2LCAuc2NoZWR1bGUgLnZpZXdfX3doYXRzX29uX3Nob3dfdGltZXMgPiBkaXYsIC5zY2hlZHVsZSAudmlld19fZXZlbnRzX2J5X3ZlbnVlID4gZGl2IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgbWFyZ2luLWJvdHRvbTogMzBweDtcbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xuICAuc2NoZWR1bGUgLnZpZXdfX3BlcmZvcm1hbmNlc19ieV9ldmVudHMgaDMsIC5zY2hlZHVsZSAudmlld19fd2hhdHNfb25fc2hvd190aW1lcyBoMywgLnNjaGVkdWxlIC52aWV3X19ldmVudHNfYnlfdmVudWUgaDMge1xuICAgIG1hcmdpbjogYXV0bztcbiAgfVxufVxuLnNjaGVkdWxlIC52aWV3X19wZXJmb3JtYW5jZXNfYnlfZXZlbnRzIC5saXN0aW5nLCAuc2NoZWR1bGUgLnZpZXdfX3doYXRzX29uX3Nob3dfdGltZXMgLmxpc3RpbmcsIC5zY2hlZHVsZSAudmlld19fZXZlbnRzX2J5X3ZlbnVlIC5saXN0aW5nIHtcbiAgbWFyZ2luLXRvcDogMDtcbn1cbi5zY2hlZHVsZSAudmlld19fcGVyZm9ybWFuY2VzX2J5X2V2ZW50cyAubGlzdGluZyA+IGxpID4gLnNjaGVkdWxlX19yb3cgLnNjaGVkdWxlX19pdGVtLCAuc2NoZWR1bGUgLnZpZXdfX3doYXRzX29uX3Nob3dfdGltZXMgLmxpc3RpbmcgPiBsaSA+IC5zY2hlZHVsZV9fcm93IC5zY2hlZHVsZV9faXRlbSwgLnNjaGVkdWxlIC52aWV3X19ldmVudHNfYnlfdmVudWUgLmxpc3RpbmcgPiBsaSA+IC5zY2hlZHVsZV9fcm93IC5zY2hlZHVsZV9faXRlbSB7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3gtc2hhZG93OiBub25lO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzAwMDAwMDtcbiAgcGFkZGluZzogMC41cmVtIDA7XG59XG4uc2NoZWR1bGUgLnZpZXdfX3BlcmZvcm1hbmNlc19ieV9ldmVudHMgLmxpc3RpbmcgPiBsaSA+IC5zY2hlZHVsZV9fcm93IC5zY2hlZHVsZV9faXRlbSAuc2NoZWR1bGVfX2luZm8sIC5zY2hlZHVsZSAudmlld19fd2hhdHNfb25fc2hvd190aW1lcyAubGlzdGluZyA+IGxpID4gLnNjaGVkdWxlX19yb3cgLnNjaGVkdWxlX19pdGVtIC5zY2hlZHVsZV9faW5mbywgLnNjaGVkdWxlIC52aWV3X19ldmVudHNfYnlfdmVudWUgLmxpc3RpbmcgPiBsaSA+IC5zY2hlZHVsZV9fcm93IC5zY2hlZHVsZV9faXRlbSAuc2NoZWR1bGVfX2luZm8ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG59XG5AbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgLnNjaGVkdWxlIC52aWV3X19wZXJmb3JtYW5jZXNfYnlfZXZlbnRzIC5saXN0aW5nID4gbGkgPiAuc2NoZWR1bGVfX3JvdyAuc2NoZWR1bGVfX2l0ZW0gLnNjaGVkdWxlX19pbmZvLCAuc2NoZWR1bGUgLnZpZXdfX3doYXRzX29uX3Nob3dfdGltZXMgLmxpc3RpbmcgPiBsaSA+IC5zY2hlZHVsZV9fcm93IC5zY2hlZHVsZV9faXRlbSAuc2NoZWR1bGVfX2luZm8sIC5zY2hlZHVsZSAudmlld19fZXZlbnRzX2J5X3ZlbnVlIC5saXN0aW5nID4gbGkgPiAuc2NoZWR1bGVfX3JvdyAuc2NoZWR1bGVfX2l0ZW0gLnNjaGVkdWxlX19pbmZvIHtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB9XG59XG5AbWVkaWEgKG1heC13aWR0aDogMzcwcHgpIHtcbiAgLnNjaGVkdWxlIC52aWV3X19wZXJmb3JtYW5jZXNfYnlfZXZlbnRzIC5saXN0aW5nID4gbGkgPiAuc2NoZWR1bGVfX3JvdyAuc2NoZWR1bGVfX2l0ZW0gLnNjaGVkdWxlX19pbmZvLCAuc2NoZWR1bGUgLnZpZXdfX3doYXRzX29uX3Nob3dfdGltZXMgLmxpc3RpbmcgPiBsaSA+IC5zY2hlZHVsZV9fcm93IC5zY2hlZHVsZV9faXRlbSAuc2NoZWR1bGVfX2luZm8sIC5zY2hlZHVsZSAudmlld19fZXZlbnRzX2J5X3ZlbnVlIC5saXN0aW5nID4gbGkgPiAuc2NoZWR1bGVfX3JvdyAuc2NoZWR1bGVfX2l0ZW0gLnNjaGVkdWxlX19pbmZvIHtcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgfVxufVxuLnNjaGVkdWxlIC52aWV3X19wZXJmb3JtYW5jZXNfYnlfZXZlbnRzIC5saXN0aW5nID4gbGkgPiAuc2NoZWR1bGVfX3JvdyAuc2NoZWR1bGVfX2l0ZW0gLnNjaGVkdWxlX19pbmZvID4gLnNjaGVkdWxlX19kdXJhdGlvbiwgLnNjaGVkdWxlIC52aWV3X193aGF0c19vbl9zaG93X3RpbWVzIC5saXN0aW5nID4gbGkgPiAuc2NoZWR1bGVfX3JvdyAuc2NoZWR1bGVfX2l0ZW0gLnNjaGVkdWxlX19pbmZvID4gLnNjaGVkdWxlX19kdXJhdGlvbiwgLnNjaGVkdWxlIC52aWV3X19ldmVudHNfYnlfdmVudWUgLmxpc3RpbmcgPiBsaSA+IC5zY2hlZHVsZV9fcm93IC5zY2hlZHVsZV9faXRlbSAuc2NoZWR1bGVfX2luZm8gPiAuc2NoZWR1bGVfX2R1cmF0aW9uIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG4uc2NoZWR1bGUgLnZpZXdfX3BlcmZvcm1hbmNlc19ieV9ldmVudHMgLmxpc3RpbmcgPiBsaSA+IC5zY2hlZHVsZV9fcm93IC5zY2hlZHVsZV9faXRlbSAuc2NoZWR1bGVfX2luZm8gPiAuc2NoZWR1bGVfX3NvbGQtb3V0LCAuc2NoZWR1bGUgLnZpZXdfX3doYXRzX29uX3Nob3dfdGltZXMgLmxpc3RpbmcgPiBsaSA+IC5zY2hlZHVsZV9fcm93IC5zY2hlZHVsZV9faXRlbSAuc2NoZWR1bGVfX2luZm8gPiAuc2NoZWR1bGVfX3NvbGQtb3V0LCAuc2NoZWR1bGUgLnZpZXdfX2V2ZW50c19ieV92ZW51ZSAubGlzdGluZyA+IGxpID4gLnNjaGVkdWxlX19yb3cgLnNjaGVkdWxlX19pdGVtIC5zY2hlZHVsZV9faW5mbyA+IC5zY2hlZHVsZV9fc29sZC1vdXQge1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cbi5zY2hlZHVsZSAudmlld19fcGVyZm9ybWFuY2VzX2J5X2V2ZW50cyAubGlzdGluZyA+IGxpID4gLnNjaGVkdWxlX19yb3cgLnNjaGVkdWxlX19pdGVtIC5zY2hlZHVsZV9faW5mbyA+IC5zY2hlZHVsZV9fdmVudWU6YmVmb3JlLCAuc2NoZWR1bGUgLnZpZXdfX3doYXRzX29uX3Nob3dfdGltZXMgLmxpc3RpbmcgPiBsaSA+IC5zY2hlZHVsZV9fcm93IC5zY2hlZHVsZV9faXRlbSAuc2NoZWR1bGVfX2luZm8gPiAuc2NoZWR1bGVfX3ZlbnVlOmJlZm9yZSwgLnNjaGVkdWxlIC52aWV3X19ldmVudHNfYnlfdmVudWUgLmxpc3RpbmcgPiBsaSA+IC5zY2hlZHVsZV9fcm93IC5zY2hlZHVsZV9faXRlbSAuc2NoZWR1bGVfX2luZm8gPiAuc2NoZWR1bGVfX3ZlbnVlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGJhY2tncm91bmQ6IHVybChcIi4uL2ltZy9tYXAtbWFya2VyLTIuc3ZnXCIpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gIHdpZHRoOiAyMHB4O1xuICBoZWlnaHQ6IDIwcHg7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xufVxuQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gIC5zY2hlZHVsZSAudmlld19fcGVyZm9ybWFuY2VzX2J5X2V2ZW50cyAubGlzdGluZyA+IGxpID4gLnNjaGVkdWxlX19yb3cgLnNjaGVkdWxlX19pdGVtLCAuc2NoZWR1bGUgLnZpZXdfX3doYXRzX29uX3Nob3dfdGltZXMgLmxpc3RpbmcgPiBsaSA+IC5zY2hlZHVsZV9fcm93IC5zY2hlZHVsZV9faXRlbSwgLnNjaGVkdWxlIC52aWV3X19ldmVudHNfYnlfdmVudWUgLmxpc3RpbmcgPiBsaSA+IC5zY2hlZHVsZV9fcm93IC5zY2hlZHVsZV9faXRlbSB7XG4gICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICB9XG59XG4uc2NoZWR1bGUgLnZpZXdfX3BlcmZvcm1hbmNlc19ieV9ldmVudHMgLmxpc3RpbmcgPiBsaSA+IC5zY2hlZHVsZV9fcm93IC5ub2RlLCAuc2NoZWR1bGUgLnZpZXdfX3doYXRzX29uX3Nob3dfdGltZXMgLmxpc3RpbmcgPiBsaSA+IC5zY2hlZHVsZV9fcm93IC5ub2RlLCAuc2NoZWR1bGUgLnZpZXdfX2V2ZW50c19ieV92ZW51ZSAubGlzdGluZyA+IGxpID4gLnNjaGVkdWxlX19yb3cgLm5vZGUge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICBhbGlnbi1zZWxmOiBmbGV4LXN0YXJ0O1xufVxuQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gIC5zY2hlZHVsZSAudmlld19fcGVyZm9ybWFuY2VzX2J5X2V2ZW50cyAubGlzdGluZyA+IGxpID4gLnNjaGVkdWxlX19yb3cgLm5vZGUsIC5zY2hlZHVsZSAudmlld19fd2hhdHNfb25fc2hvd190aW1lcyAubGlzdGluZyA+IGxpID4gLnNjaGVkdWxlX19yb3cgLm5vZGUsIC5zY2hlZHVsZSAudmlld19fZXZlbnRzX2J5X3ZlbnVlIC5saXN0aW5nID4gbGkgPiAuc2NoZWR1bGVfX3JvdyAubm9kZSB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBhbGlnbi1zZWxmOiBjZW50ZXI7XG4gIH1cbn1cbi5zY2hlZHVsZSAudmlld19fcGVyZm9ybWFuY2VzX2J5X2V2ZW50cyAubGlzdGluZyA+IGxpID4gLnNjaGVkdWxlX19yb3cgLm5vZGUgPiAuc2NoZWR1bGVfX3RpbWUsIC5zY2hlZHVsZSAudmlld19fd2hhdHNfb25fc2hvd190aW1lcyAubGlzdGluZyA+IGxpID4gLnNjaGVkdWxlX19yb3cgLm5vZGUgPiAuc2NoZWR1bGVfX3RpbWUsIC5zY2hlZHVsZSAudmlld19fZXZlbnRzX2J5X3ZlbnVlIC5saXN0aW5nID4gbGkgPiAuc2NoZWR1bGVfX3JvdyAubm9kZSA+IC5zY2hlZHVsZV9fdGltZSB7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGxldHRlci1zcGFjaW5nOiAwO1xuICBsaW5lLWhlaWdodDogMjJweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBtYXJnaW46IGF1dG87XG59XG4uc2NoZWR1bGUgLnZpZXdfX3BlcmZvcm1hbmNlc19ieV9ldmVudHMgLmxpc3RpbmcgPiBsaSA+IC5zY2hlZHVsZV9fcm93IC5ub2RlID4gLnNjaGVkdWxlX19kZXRhaWxzLCAuc2NoZWR1bGUgLnZpZXdfX3doYXRzX29uX3Nob3dfdGltZXMgLmxpc3RpbmcgPiBsaSA+IC5zY2hlZHVsZV9fcm93IC5ub2RlID4gLnNjaGVkdWxlX19kZXRhaWxzLCAuc2NoZWR1bGUgLnZpZXdfX2V2ZW50c19ieV92ZW51ZSAubGlzdGluZyA+IGxpID4gLnNjaGVkdWxlX19yb3cgLm5vZGUgPiAuc2NoZWR1bGVfX2RldGFpbHMge1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tbGVmdDogMjBweDtcbiAgd2lkdGg6IDEwMCU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xuICAuc2NoZWR1bGUgLnZpZXdfX3BlcmZvcm1hbmNlc19ieV9ldmVudHMgLmxpc3RpbmcgPiBsaSA+IC5zY2hlZHVsZV9fcm93IC5ub2RlID4gLnNjaGVkdWxlX19kZXRhaWxzLCAuc2NoZWR1bGUgLnZpZXdfX3doYXRzX29uX3Nob3dfdGltZXMgLmxpc3RpbmcgPiBsaSA+IC5zY2hlZHVsZV9fcm93IC5ub2RlID4gLnNjaGVkdWxlX19kZXRhaWxzLCAuc2NoZWR1bGUgLnZpZXdfX2V2ZW50c19ieV92ZW51ZSAubGlzdGluZyA+IGxpID4gLnNjaGVkdWxlX19yb3cgLm5vZGUgPiAuc2NoZWR1bGVfX2RldGFpbHMge1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgbWFyZ2luLXRvcDogMTBweDtcbiAgfVxufVxuLnNjaGVkdWxlIC52aWV3X19wZXJmb3JtYW5jZXNfYnlfZXZlbnRzIC5saXN0aW5nID4gbGkgPiAuc2NoZWR1bGVfX3JvdyAubm9kZSA+IC5zY2hlZHVsZV9fZGV0YWlscyA+IC5zY2hlZHVsZV9fdGl0bGUsIC5zY2hlZHVsZSAudmlld19fd2hhdHNfb25fc2hvd190aW1lcyAubGlzdGluZyA+IGxpID4gLnNjaGVkdWxlX19yb3cgLm5vZGUgPiAuc2NoZWR1bGVfX2RldGFpbHMgPiAuc2NoZWR1bGVfX3RpdGxlLCAuc2NoZWR1bGUgLnZpZXdfX2V2ZW50c19ieV92ZW51ZSAubGlzdGluZyA+IGxpID4gLnNjaGVkdWxlX19yb3cgLm5vZGUgPiAuc2NoZWR1bGVfX2RldGFpbHMgPiAuc2NoZWR1bGVfX3RpdGxlIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGZvbnQtc2l6ZTogMThweDtcbiAgbGluZS1oZWlnaHQ6IDI4cHg7XG4gIGxldHRlci1zcGFjaW5nOiAtMC41cHg7XG4gIG1hcmdpbi10b3A6IDA7XG59XG5AbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgLnNjaGVkdWxlIC52aWV3X19wZXJmb3JtYW5jZXNfYnlfZXZlbnRzIC5saXN0aW5nID4gbGkgPiAuc2NoZWR1bGVfX3JvdyAubm9kZSA+IC5zY2hlZHVsZV9fZGV0YWlscyA+IC5zY2hlZHVsZV9fdGl0bGUgPiBhLCAuc2NoZWR1bGUgLnZpZXdfX3doYXRzX29uX3Nob3dfdGltZXMgLmxpc3RpbmcgPiBsaSA+IC5zY2hlZHVsZV9fcm93IC5ub2RlID4gLnNjaGVkdWxlX19kZXRhaWxzID4gLnNjaGVkdWxlX190aXRsZSA+IGEsIC5zY2hlZHVsZSAudmlld19fZXZlbnRzX2J5X3ZlbnVlIC5saXN0aW5nID4gbGkgPiAuc2NoZWR1bGVfX3JvdyAubm9kZSA+IC5zY2hlZHVsZV9fZGV0YWlscyA+IC5zY2hlZHVsZV9fdGl0bGUgPiBhIHtcbiAgICBtYXJnaW46IGF1dG87XG4gIH1cbn1cbi5zY2hlZHVsZSAudmlld19fcGVyZm9ybWFuY2VzX2J5X2V2ZW50cyAubGlzdGluZyA+IGxpID4gLnNjaGVkdWxlX19yb3cgLm5vZGUgPiAuc2NoZWR1bGVfX2RldGFpbHMgPiAuc2NoZWR1bGVfX3RpdGxlID4gLnNjaGVkdWxlX19uYW1lLCAuc2NoZWR1bGUgLnZpZXdfX3doYXRzX29uX3Nob3dfdGltZXMgLmxpc3RpbmcgPiBsaSA+IC5zY2hlZHVsZV9fcm93IC5ub2RlID4gLnNjaGVkdWxlX19kZXRhaWxzID4gLnNjaGVkdWxlX190aXRsZSA+IC5zY2hlZHVsZV9fbmFtZSwgLnNjaGVkdWxlIC52aWV3X19ldmVudHNfYnlfdmVudWUgLmxpc3RpbmcgPiBsaSA+IC5zY2hlZHVsZV9fcm93IC5ub2RlID4gLnNjaGVkdWxlX19kZXRhaWxzID4gLnNjaGVkdWxlX190aXRsZSA+IC5zY2hlZHVsZV9fbmFtZSB7XG4gIGZvbnQtc2l6ZTogMThweDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGxldHRlci1zcGFjaW5nOiAwO1xuICBsaW5lLWhlaWdodDogMjRweDtcbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xuICAuc2NoZWR1bGUgLnZpZXdfX3BlcmZvcm1hbmNlc19ieV9ldmVudHMgLmxpc3RpbmcgPiBsaSA+IC5zY2hlZHVsZV9fcm93IC5ub2RlID4gLnNjaGVkdWxlX19kZXRhaWxzID4gLnNjaGVkdWxlX190aXRsZSA+IC5zY2hlZHVsZV9fbmFtZSwgLnNjaGVkdWxlIC52aWV3X193aGF0c19vbl9zaG93X3RpbWVzIC5saXN0aW5nID4gbGkgPiAuc2NoZWR1bGVfX3JvdyAubm9kZSA+IC5zY2hlZHVsZV9fZGV0YWlscyA+IC5zY2hlZHVsZV9fdGl0bGUgPiAuc2NoZWR1bGVfX25hbWUsIC5zY2hlZHVsZSAudmlld19fZXZlbnRzX2J5X3ZlbnVlIC5saXN0aW5nID4gbGkgPiAuc2NoZWR1bGVfX3JvdyAubm9kZSA+IC5zY2hlZHVsZV9fZGV0YWlscyA+IC5zY2hlZHVsZV9fdGl0bGUgPiAuc2NoZWR1bGVfX25hbWUge1xuICAgIG1hcmdpbjogYXV0bztcbiAgfVxufVxuQG1lZGlhIChtYXgtd2lkdGg6IDM3MHB4KSB7XG4gIC5zY2hlZHVsZSAudmlld19fcGVyZm9ybWFuY2VzX2J5X2V2ZW50cyAubGlzdGluZyA+IGxpID4gLnNjaGVkdWxlX19yb3cgLm5vZGUgPiAuc2NoZWR1bGVfX2RldGFpbHMgPiAuc2NoZWR1bGVfX3RpdGxlID4gLnNjaGVkdWxlX19uYW1lLCAuc2NoZWR1bGUgLnZpZXdfX3doYXRzX29uX3Nob3dfdGltZXMgLmxpc3RpbmcgPiBsaSA+IC5zY2hlZHVsZV9fcm93IC5ub2RlID4gLnNjaGVkdWxlX19kZXRhaWxzID4gLnNjaGVkdWxlX190aXRsZSA+IC5zY2hlZHVsZV9fbmFtZSwgLnNjaGVkdWxlIC52aWV3X19ldmVudHNfYnlfdmVudWUgLmxpc3RpbmcgPiBsaSA+IC5zY2hlZHVsZV9fcm93IC5ub2RlID4gLnNjaGVkdWxlX19kZXRhaWxzID4gLnNjaGVkdWxlX190aXRsZSA+IC5zY2hlZHVsZV9fbmFtZSB7XG4gICAgbWFyZ2luOiAwO1xuICB9XG59XG4uY3RfX2V2ZW50IC5zY2hlZHVsZSAudmlld19fcGVyZm9ybWFuY2VzX2J5X2V2ZW50cyAubGlzdGluZyA+IGxpID4gLnNjaGVkdWxlX19yb3cgLm5vZGUgPiAuc2NoZWR1bGVfX2RldGFpbHMgPiAuc2NoZWR1bGVfX3RpdGxlID4gLnNjaGVkdWxlX19wcmV0aXRsZSwgLmN0X19ldmVudCAuc2NoZWR1bGUgLnZpZXdfX3BlcmZvcm1hbmNlc19ieV9ldmVudHMgLmxpc3RpbmcgPiBsaSA+IC5zY2hlZHVsZV9fcm93IC5ub2RlID4gLnNjaGVkdWxlX19kZXRhaWxzID4gLnNjaGVkdWxlX190aXRsZSA+IC5zY2hlZHVsZV9fc3VidGl0bGUsIC5jdF9fZXZlbnQgLnNjaGVkdWxlIC52aWV3X193aGF0c19vbl9zaG93X3RpbWVzIC5saXN0aW5nID4gbGkgPiAuc2NoZWR1bGVfX3JvdyAubm9kZSA+IC5zY2hlZHVsZV9fZGV0YWlscyA+IC5zY2hlZHVsZV9fdGl0bGUgPiAuc2NoZWR1bGVfX3ByZXRpdGxlLCAuY3RfX2V2ZW50IC5zY2hlZHVsZSAudmlld19fd2hhdHNfb25fc2hvd190aW1lcyAubGlzdGluZyA+IGxpID4gLnNjaGVkdWxlX19yb3cgLm5vZGUgPiAuc2NoZWR1bGVfX2RldGFpbHMgPiAuc2NoZWR1bGVfX3RpdGxlID4gLnNjaGVkdWxlX19zdWJ0aXRsZSwgLmN0X19ldmVudCAuc2NoZWR1bGUgLnZpZXdfX2V2ZW50c19ieV92ZW51ZSAubGlzdGluZyA+IGxpID4gLnNjaGVkdWxlX19yb3cgLm5vZGUgPiAuc2NoZWR1bGVfX2RldGFpbHMgPiAuc2NoZWR1bGVfX3RpdGxlID4gLnNjaGVkdWxlX19wcmV0aXRsZSwgLmN0X19ldmVudCAuc2NoZWR1bGUgLnZpZXdfX2V2ZW50c19ieV92ZW51ZSAubGlzdGluZyA+IGxpID4gLnNjaGVkdWxlX19yb3cgLm5vZGUgPiAuc2NoZWR1bGVfX2RldGFpbHMgPiAuc2NoZWR1bGVfX3RpdGxlID4gLnNjaGVkdWxlX19zdWJ0aXRsZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5AbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgLnNjaGVkdWxlIC52aWV3X19wZXJmb3JtYW5jZXNfYnlfZXZlbnRzIC5saXN0aW5nID4gbGkgPiAuc2NoZWR1bGVfX3JvdyAubm9kZSA+IC5zY2hlZHVsZV9fZGV0YWlscyA+IC5zY2hlZHVsZV9fdGl0bGUgPiAuc2NoZWR1bGVfX3ByZXRpdGxlLCAuc2NoZWR1bGUgLnZpZXdfX3BlcmZvcm1hbmNlc19ieV9ldmVudHMgLmxpc3RpbmcgPiBsaSA+IC5zY2hlZHVsZV9fcm93IC5ub2RlID4gLnNjaGVkdWxlX19kZXRhaWxzID4gLnNjaGVkdWxlX190aXRsZSA+IC5zY2hlZHVsZV9fc3VidGl0bGUsIC5zY2hlZHVsZSAudmlld19fd2hhdHNfb25fc2hvd190aW1lcyAubGlzdGluZyA+IGxpID4gLnNjaGVkdWxlX19yb3cgLm5vZGUgPiAuc2NoZWR1bGVfX2RldGFpbHMgPiAuc2NoZWR1bGVfX3RpdGxlID4gLnNjaGVkdWxlX19wcmV0aXRsZSwgLnNjaGVkdWxlIC52aWV3X193aGF0c19vbl9zaG93X3RpbWVzIC5saXN0aW5nID4gbGkgPiAuc2NoZWR1bGVfX3JvdyAubm9kZSA+IC5zY2hlZHVsZV9fZGV0YWlscyA+IC5zY2hlZHVsZV9fdGl0bGUgPiAuc2NoZWR1bGVfX3N1YnRpdGxlLCAuc2NoZWR1bGUgLnZpZXdfX2V2ZW50c19ieV92ZW51ZSAubGlzdGluZyA+IGxpID4gLnNjaGVkdWxlX19yb3cgLm5vZGUgPiAuc2NoZWR1bGVfX2RldGFpbHMgPiAuc2NoZWR1bGVfX3RpdGxlID4gLnNjaGVkdWxlX19wcmV0aXRsZSwgLnNjaGVkdWxlIC52aWV3X19ldmVudHNfYnlfdmVudWUgLmxpc3RpbmcgPiBsaSA+IC5zY2hlZHVsZV9fcm93IC5ub2RlID4gLnNjaGVkdWxlX19kZXRhaWxzID4gLnNjaGVkdWxlX190aXRsZSA+IC5zY2hlZHVsZV9fc3VidGl0bGUge1xuICAgIG1hcmdpbjogYXV0bztcbiAgfVxufVxuQG1lZGlhIChtYXgtd2lkdGg6IDM3MHB4KSB7XG4gIC5zY2hlZHVsZSAudmlld19fcGVyZm9ybWFuY2VzX2J5X2V2ZW50cyAubGlzdGluZyA+IGxpID4gLnNjaGVkdWxlX19yb3cgLm5vZGUgPiAuc2NoZWR1bGVfX2RldGFpbHMgPiAuc2NoZWR1bGVfX3RpdGxlID4gLnNjaGVkdWxlX19wcmV0aXRsZSwgLnNjaGVkdWxlIC52aWV3X19wZXJmb3JtYW5jZXNfYnlfZXZlbnRzIC5saXN0aW5nID4gbGkgPiAuc2NoZWR1bGVfX3JvdyAubm9kZSA+IC5zY2hlZHVsZV9fZGV0YWlscyA+IC5zY2hlZHVsZV9fdGl0bGUgPiAuc2NoZWR1bGVfX3N1YnRpdGxlLCAuc2NoZWR1bGUgLnZpZXdfX3doYXRzX29uX3Nob3dfdGltZXMgLmxpc3RpbmcgPiBsaSA+IC5zY2hlZHVsZV9fcm93IC5ub2RlID4gLnNjaGVkdWxlX19kZXRhaWxzID4gLnNjaGVkdWxlX190aXRsZSA+IC5zY2hlZHVsZV9fcHJldGl0bGUsIC5zY2hlZHVsZSAudmlld19fd2hhdHNfb25fc2hvd190aW1lcyAubGlzdGluZyA+IGxpID4gLnNjaGVkdWxlX19yb3cgLm5vZGUgPiAuc2NoZWR1bGVfX2RldGFpbHMgPiAuc2NoZWR1bGVfX3RpdGxlID4gLnNjaGVkdWxlX19zdWJ0aXRsZSwgLnNjaGVkdWxlIC52aWV3X19ldmVudHNfYnlfdmVudWUgLmxpc3RpbmcgPiBsaSA+IC5zY2hlZHVsZV9fcm93IC5ub2RlID4gLnNjaGVkdWxlX19kZXRhaWxzID4gLnNjaGVkdWxlX190aXRsZSA+IC5zY2hlZHVsZV9fcHJldGl0bGUsIC5zY2hlZHVsZSAudmlld19fZXZlbnRzX2J5X3ZlbnVlIC5saXN0aW5nID4gbGkgPiAuc2NoZWR1bGVfX3JvdyAubm9kZSA+IC5zY2hlZHVsZV9fZGV0YWlscyA+IC5zY2hlZHVsZV9fdGl0bGUgPiAuc2NoZWR1bGVfX3N1YnRpdGxlIHtcbiAgICBtYXJnaW46IDA7XG4gIH1cbn1cbi5zY2hlZHVsZSAudmlld19fcGVyZm9ybWFuY2VzX2J5X2V2ZW50cyB+IC5zY2hlZHVsZV9faGVhZGluZywgLnNjaGVkdWxlIC52aWV3X193aGF0c19vbl9zaG93X3RpbWVzIH4gLnNjaGVkdWxlX19oZWFkaW5nLCAuc2NoZWR1bGUgLnZpZXdfX2V2ZW50c19ieV92ZW51ZSB+IC5zY2hlZHVsZV9faGVhZGluZyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG4udmlld19fcGVyZm9ybWFuY2VzX2J5X2V2ZW50c19fd2hhdHNfb25fc2hvd190aW1lcyA+IGhlYWRlciwgLnZpZXdfX3doYXRzX29uX3Nob3dfdGltZXNfX3doYXRzX29uX3Nob3dfdGltZXMgPiBoZWFkZXIsIC52aWV3X19ldmVudHNfYnlfdmVudWVfX3doYXRzX29uX3Nob3dfdGltZXMgPiBoZWFkZXIge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG59XG5cbi5tb2RhbC0tY2FsZW5kYXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgb3ZlcmZsb3cteTogc2Nyb2xsO1xuICAvKipcbiAgICogT3ZlcnJpZGVzXG4gICAqL1xufVxuLm1vZGFsLS1jYWxlbmRhcl9faW5uZXIge1xuICB3aWR0aDogMTAwJTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogYXV0bztcbn1cbi5tb2RhbC0tY2FsZW5kYXJfX2NvbnRlbnQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cbi5tb2RhbC0tY2FsZW5kYXJfX3RpdGxlIHtcbiAgZm9udC1zaXplOiA0N3B4O1xuICBsaW5lLWhlaWdodDogNTdweDtcbiAgbGV0dGVyLXNwYWNpbmc6IC0ycHg7XG59XG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLm1vZGFsLS1jYWxlbmRhcl9fdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogMzVweDtcbiAgICBsaW5lLWhlaWdodDogNDVweDtcbiAgICBsZXR0ZXItc3BhY2luZzogLTFweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDE2MDBweCkgYW5kIChtaW4taGVpZ2h0OiA5OTJweCkge1xuICAubW9kYWwtLWNhbGVuZGFyX190aXRsZSB7XG4gICAgZm9udC1zaXplOiA3NnB4O1xuICAgIGxpbmUtaGVpZ2h0OiA4NnB4O1xuICAgIGxldHRlci1zcGFjaW5nOiAtM3B4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTYwMHB4KSBhbmQgKG1pbi1oZWlnaHQ6IDk5MnB4KSBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLm1vZGFsLS1jYWxlbmRhcl9fdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogNDdweDtcbiAgICBsaW5lLWhlaWdodDogNTdweDtcbiAgICBsZXR0ZXItc3BhY2luZzogLTJweDtcbiAgfVxufVxuLm1vZGFsLS1jYWxlbmRhcl9fY2xvc2UgLnN2Zy1tb2RhbCB7XG4gIGZpbGw6ICMxMjIxMmI7XG59XG4ubW9kYWwtLWNhbGVuZGFyX19jbG9zZTpob3ZlciAuc3ZnLW1vZGFsIHtcbiAgZmlsbDogIzAwYTFhYjtcbn1cbi5tb2RhbC0tY2FsZW5kYXIgLnphYnV0b19jYWxlbmRhciB7XG4gIG1hcmdpbi10b3A6IDIyLjVweDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAubW9kYWwtLWNhbGVuZGFyIC56YWJ1dG9fY2FsZW5kYXIge1xuICAgIG1hcmdpbi10b3A6IDQ1cHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxNjAwcHgpIGFuZCAobWluLWhlaWdodDogOTkycHgpIHtcbiAgLm1vZGFsLS1jYWxlbmRhciAuemFidXRvX2NhbGVuZGFyIHtcbiAgICBtYXJnaW4tdG9wOiA2Ny41cHg7XG4gIH1cbn1cblxuLm9wZW4tY2FsZW5kYXIge1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuLm9wZW4tY2FsZW5kYXIgLm1vZGFsLS1jYWxlbmRhciB7XG4gIGFuaW1hdGlvbjogZGlzY0luIDAuMjVzIGN1YmljLWJlemllcigwLjY0LCAwLjA0LCAwLjM1LCAxKSBub3JtYWwgYm90aDtcbn1cbi5vcGVuLWNhbGVuZGFyIC5tb2RhbC0tY2FsZW5kYXJfX2lubmVyIHtcbiAgYW5pbWF0aW9uOiBjb250ZW50SW4gMC4ycyAwLjE1cyBjdWJpYy1iZXppZXIoMC42NCwgMC4wNCwgMC4zNSwgMSkgbm9ybWFsIGJvdGg7XG59XG5cbi5jbG9zZS1jYWxlbmRhciAubW9kYWwtLWNhbGVuZGFyIHtcbiAgYW5pbWF0aW9uOiBkaXNjT3V0IDAuMnMgMC4ycyBjdWJpYy1iZXppZXIoMC42NCwgMC4wNCwgMC4zNSwgMSkgbm9ybWFsIGJvdGg7XG59XG4uY2xvc2UtY2FsZW5kYXIgLm1vZGFsLS1jYWxlbmRhcl9faW5uZXIge1xuICBhbmltYXRpb246IGNvbnRlbnRPdXQgMC4ycyBjdWJpYy1iZXppZXIoMC42NCwgMC4wNCwgMC4zNSwgMSkgbm9ybWFsIGJvdGg7XG59XG5cbi8qKlxuICogR2VuZXJhbFxuICovXG5kaXYuemFidXRvX2NhbGVuZGFyIHtcbiAgYm94LXNoYWRvdzogMCAwIDIwcHggMCByZ2JhKDE4LCAzMywgNDMsIDAuMDgpO1xuICBib3JkZXItcmFkaXVzOiAxNnB4O1xuICBwYWRkaW5nOiAxNXB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1pbi1oZWlnaHQ6IDM4MHB4O1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1pbi1oZWlnaHQ6IDU3NnB4KSB7XG4gIGRpdi56YWJ1dG9fY2FsZW5kYXIge1xuICAgIHBhZGRpbmc6IDIyLjVweDtcbiAgICBtaW4taGVpZ2h0OiA1NzVweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkgYW5kIChtaW4taGVpZ2h0OiA5OTJweCkge1xuICBkaXYuemFidXRvX2NhbGVuZGFyIHtcbiAgICBtaW4taGVpZ2h0OiA2ODVweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDE2MDBweCkge1xuICBkaXYuemFidXRvX2NhbGVuZGFyIHtcbiAgICBwYWRkaW5nOiA0NXB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTYwMHB4KSBhbmQgKG1pbi1oZWlnaHQ6IDk5MnB4KSB7XG4gIGRpdi56YWJ1dG9fY2FsZW5kYXIge1xuICAgIG1pbi1oZWlnaHQ6IDc4MHB4O1xuICB9XG59XG5cbmRpdi56YWJ1dG9fY2FsZW5kYXIgLnRhYmxlIHRyIHRoLFxuZGl2LnphYnV0b19jYWxlbmRhciAudGFibGUgdHIgdGQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIGRpdi56YWJ1dG9fY2FsZW5kYXIgLnRhYmxlIHRyIHRkIHtcbiAgICBwYWRkaW5nOiAxNXB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSBhbmQgKG1pbi1oZWlnaHQ6IDk5MnB4KSB7XG4gIGRpdi56YWJ1dG9fY2FsZW5kYXIgLnRhYmxlIHRyIHRkIHtcbiAgICBwYWRkaW5nOiAyNXB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTYwMHB4KSB7XG4gIGRpdi56YWJ1dG9fY2FsZW5kYXIgLnRhYmxlIHRyIHRkIHtcbiAgICBwYWRkaW5nOiAyMHB4IDQ1cHg7XG4gIH1cbn1cblxuZGl2LnphYnV0b19jYWxlbmRhciAudGFibGUgdHI6bGFzdC1jaGlsZCB7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7XG59XG5cbmRpdi56YWJ1dG9fY2FsZW5kYXIgLnRhYmxlIHRyOmxhc3QtY2hpbGQgdGQge1xuICBwYWRkaW5nLWJvdHRvbTogMDtcbn1cblxuLyoqXG4gKiBNb250aCBIZWFkZXJcbiAqL1xuZGl2LnphYnV0b19jYWxlbmRhciAudGFibGUgdHIuY2FsZW5kYXItbW9udGgtaGVhZGVyIHRkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIHBhZGRpbmc6IDAgMCAxNXB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGZvbnQtZmFtaWx5OiBcIm1vbnRzZXJyYXRzZW1pYm9sZFwiLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogNDAwO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1pbi1oZWlnaHQ6IDU3NnB4KSB7XG4gIGRpdi56YWJ1dG9fY2FsZW5kYXIgLnRhYmxlIHRyLmNhbGVuZGFyLW1vbnRoLWhlYWRlciB0ZCB7XG4gICAgcGFkZGluZzogMCAwIDIyLjVweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDE2MDBweCkge1xuICBkaXYuemFidXRvX2NhbGVuZGFyIC50YWJsZSB0ci5jYWxlbmRhci1tb250aC1oZWFkZXIgdGQge1xuICAgIHBhZGRpbmc6IDAgMCA0NXB4O1xuICB9XG59XG5kaXYuemFidXRvX2NhbGVuZGFyIC50YWJsZSB0ci5jYWxlbmRhci1tb250aC1oZWFkZXIgdGQ6Zmlyc3QtY2hpbGQge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1pbi1oZWlnaHQ6IDU3NnB4KSB7XG4gIGRpdi56YWJ1dG9fY2FsZW5kYXIgLnRhYmxlIHRyLmNhbGVuZGFyLW1vbnRoLWhlYWRlciB0ZDpmaXJzdC1jaGlsZCB7XG4gICAgZm9udC1zaXplOiAyOXB4O1xuICAgIGxpbmUtaGVpZ2h0OiAzOXB4O1xuICAgIGxldHRlci1zcGFjaW5nOiAtMXB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTYwMHB4KSBhbmQgKG1pbi1oZWlnaHQ6IDk5MnB4KSB7XG4gIGRpdi56YWJ1dG9fY2FsZW5kYXIgLnRhYmxlIHRyLmNhbGVuZGFyLW1vbnRoLWhlYWRlciB0ZDpmaXJzdC1jaGlsZCB7XG4gICAgZm9udC1zaXplOiA0N3B4O1xuICAgIGxpbmUtaGVpZ2h0OiA1N3B4O1xuICAgIGxldHRlci1zcGFjaW5nOiAtMnB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTYwMHB4KSBhbmQgKG1pbi1oZWlnaHQ6IDk5MnB4KSBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgZGl2LnphYnV0b19jYWxlbmRhciAudGFibGUgdHIuY2FsZW5kYXItbW9udGgtaGVhZGVyIHRkOmZpcnN0LWNoaWxkIHtcbiAgICBmb250LXNpemU6IDM1cHg7XG4gICAgbGluZS1oZWlnaHQ6IDQ1cHg7XG4gICAgbGV0dGVyLXNwYWNpbmc6IC0xcHg7XG4gIH1cbn1cblxuZGl2LnphYnV0b19jYWxlbmRhciAudGFibGUgdHIuY2FsZW5kYXItbW9udGgtaGVhZGVyIHRkIHNwYW4ge1xuICBwYWRkaW5nLWJvdHRvbTogMDtcbn1cblxuLyoqXG4gKiBEYXkgb2YgV2VlayBIZWFkZXJcbiAqL1xuZGl2LnphYnV0b19jYWxlbmRhciAudGFibGUgdHIuY2FsZW5kYXItZG93LWhlYWRlciB7XG4gIGJvcmRlcjogc29saWQgIzEyMjEyYjtcbiAgYm9yZGVyLXdpZHRoOiA0cHggMDtcbn1cblxuZGl2LnphYnV0b19jYWxlbmRhciAudGFibGUgdHIuY2FsZW5kYXItZG93LWhlYWRlciB0aCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBwYWRkaW5nOiAxMHB4IDFweDtcbiAgZm9udC1mYW1pbHk6IFwibW9udHNlcnJhdHNlbWlib2xkXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWluLWhlaWdodDogNTc2cHgpIHtcbiAgZGl2LnphYnV0b19jYWxlbmRhciAudGFibGUgdHIuY2FsZW5kYXItZG93LWhlYWRlciB0aCB7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBwYWRkaW5nOiAyMHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTYwMHB4KSBhbmQgKG1pbi1oZWlnaHQ6IDk5MnB4KSB7XG4gIGRpdi56YWJ1dG9fY2FsZW5kYXIgLnRhYmxlIHRyLmNhbGVuZGFyLWRvdy1oZWFkZXIgdGgge1xuICAgIHBhZGRpbmc6IDQ1cHg7XG4gIH1cbn1cblxuZGl2LnphYnV0b19jYWxlbmRhciB0ci5jYWxlbmRhci1kb3ctaGVhZGVyIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNmZmY7XG59XG5cbi8qKlxuICogRXZlbnRcbiAqL1xuZGl2LnphYnV0b19jYWxlbmRhciAudGFibGUgdHIgdGQgZGl2LmRheSB7XG4gIGZvbnQtZmFtaWx5OiBcIm1vbnRzZXJyYXRzZW1pYm9sZFwiLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBwYWRkaW5nOiAwO1xuICB3aWR0aDogMzZweDtcbiAgaGVpZ2h0OiAzNnB4O1xuICBtYXJnaW46IDAgYXV0bztcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG59XG5cbmRpdi56YWJ1dG9fY2FsZW5kYXIgLnRhYmxlIHRyIHRkLmV2ZW50IGRpdi5kYXkge1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGJvcmRlcjogNHB4IHNvbGlkICMxMjIxMmI7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIHRyYW5zaXRpb246IDAuMjVzIGJhY2tncm91bmQtY29sb3IgY3ViaWMtYmV6aWVyKDAuNjQsIDAuMDQsIDAuMzUsIDEpLCAwLjI1cyBjb2xvciBjdWJpYy1iZXppZXIoMC42NCwgMC4wNCwgMC4zNSwgMSk7XG59XG5kaXYuemFidXRvX2NhbGVuZGFyIC50YWJsZSB0ciB0ZC5ldmVudCBkaXYuZGF5OmhvdmVyLCBkaXYuemFidXRvX2NhbGVuZGFyIC50YWJsZSB0ciB0ZC5ldmVudCBkaXYuZGF5OmZvY3VzLCBkaXYuemFidXRvX2NhbGVuZGFyIC50YWJsZSB0ciB0ZC5ldmVudCBkaXYuZGF5OmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxMjIxMmI7XG4gIGNvbG9yOiAjZmZmO1xufVxuXG4vKipcbiAqIE5hdmlnYXRpb25cbiAqL1xuZGl2LnphYnV0b19jYWxlbmRhciBkaXYuY2FsZW5kYXItbW9udGgtbmF2aWdhdGlvbiB7XG4gIHBhZGRpbmctdG9wOiAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICB6LWluZGV4OiAyMDtcbiAgbGVmdDogLTEwcHg7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMzcwcHgpIHtcbiAgZGl2LnphYnV0b19jYWxlbmRhciBkaXYuY2FsZW5kYXItbW9udGgtbmF2aWdhdGlvbiB7XG4gICAgbGVmdDogMDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1pbi1oZWlnaHQ6IDU3NnB4KSB7XG4gIGRpdi56YWJ1dG9fY2FsZW5kYXIgZGl2LmNhbGVuZGFyLW1vbnRoLW5hdmlnYXRpb24ge1xuICAgIHdpZHRoOiA0MHB4O1xuICAgIGhlaWdodDogNDBweDtcbiAgICBsZWZ0OiAzMCU7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxNjAwcHgpIGFuZCAobWluLWhlaWdodDogOTkycHgpIHtcbiAgZGl2LnphYnV0b19jYWxlbmRhciBkaXYuY2FsZW5kYXItbW9udGgtbmF2aWdhdGlvbiB7XG4gICAgd2lkdGg6IDcycHg7XG4gICAgaGVpZ2h0OiA3MnB4O1xuICB9XG59XG5kaXYuemFidXRvX2NhbGVuZGFyIGRpdi5jYWxlbmRhci1tb250aC1uYXZpZ2F0aW9uOjpiZWZvcmUge1xuICBjb250ZW50OiBcIlwiO1xuICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1nL2N0YS1hcnJvdy1kb3duLS1pbnZlcnRlZC5zdmcpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBib3R0b206IDA7XG4gIG1hcmdpbjogYXV0bztcbiAgYm9yZGVyOiA0cHggc29saWQgIzEyMjEyYjtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDQwcHg7XG4gIGhlaWdodDogNDBweDtcbiAgcmlnaHQ6IDA7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTYwMHB4KSBhbmQgKG1pbi1oZWlnaHQ6IDk5MnB4KSB7XG4gIGRpdi56YWJ1dG9fY2FsZW5kYXIgZGl2LmNhbGVuZGFyLW1vbnRoLW5hdmlnYXRpb246OmJlZm9yZSB7XG4gICAgd2lkdGg6IDcycHg7XG4gICAgaGVpZ2h0OiA3MnB4O1xuICB9XG59XG5cbmRpdi56YWJ1dG9fY2FsZW5kYXIgLmNhbGVuZGFyLW1vbnRoLWhlYWRlciB0ZDpsYXN0LWNoaWxkIC5jYWxlbmRhci1tb250aC1uYXZpZ2F0aW9uIHtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogMTA7XG59XG5kaXYuemFidXRvX2NhbGVuZGFyIC5jYWxlbmRhci1tb250aC1oZWFkZXIgdGQ6bGFzdC1jaGlsZCAuY2FsZW5kYXItbW9udGgtbmF2aWdhdGlvbjo6YmVmb3JlIHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcbn1cblxuLm5vLWpzIC51aS1kaWFsb2cudWktd2lkZ2V0LnVpLXdpZGdldC1jb250ZW50LFxuLmpzIC51aS1kaWFsb2cudWktd2lkZ2V0LnVpLXdpZGdldC1jb250ZW50IHtcbiAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgaGVpZ2h0OiAxMDAlICFpbXBvcnRhbnQ7XG4gIGxlZnQ6IDAgIWltcG9ydGFudDtcbiAgdG9wOiAwICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmc6IDEwcHg7XG4gIGJhY2tncm91bmQ6ICNmZmYgdXJsKFwiLi4vaW1nL2JhY2tncm91bmQtaGYuc3ZnXCIpIG5vLXJlcGVhdCB0b3AgbGVmdDtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgLyoqXG4gICAqIElFIDExIEZpeFxuICAgKiBQcmV2ZW50cyBib29rIG5vdyBidXR0b24gY29sb3VyIFxuICAgKiBiZWluZyBvdmVyaWRkZW5cbiAgICovXG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLm5vLWpzIC51aS1kaWFsb2cudWktd2lkZ2V0LnVpLXdpZGdldC1jb250ZW50LFxuLmpzIC51aS1kaWFsb2cudWktd2lkZ2V0LnVpLXdpZGdldC1jb250ZW50IHtcbiAgICBwYWRkaW5nOiAyNHB4O1xuICB9XG59XG4ubm8tanMgLnVpLWRpYWxvZy51aS13aWRnZXQudWktd2lkZ2V0LWNvbnRlbnQgLnVpLWRpYWxvZy10aXRsZWJhcixcbi5qcyAudWktZGlhbG9nLnVpLXdpZGdldC51aS13aWRnZXQtY29udGVudCAudWktZGlhbG9nLXRpdGxlYmFyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiBub25lO1xuICBwYWRkaW5nOiAwO1xufVxuLm5vLWpzIC51aS1kaWFsb2cudWktd2lkZ2V0LnVpLXdpZGdldC1jb250ZW50IC51aS1kaWFsb2ctdGl0bGViYXItY2xvc2UsXG4uanMgLnVpLWRpYWxvZy51aS13aWRnZXQudWktd2lkZ2V0LWNvbnRlbnQgLnVpLWRpYWxvZy10aXRsZWJhci1jbG9zZSB7XG4gIG1hcmdpbjogMCAwIDAgYXV0bztcbiAgZGlzcGxheTogYmxvY2s7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IDQ1cHg7XG4gIHdpZHRoOiA0NXB4O1xuICB0cmFuc2l0aW9uOiBhbGwgMC41cyBjdWJpYy1iZXppZXIoMC42NCwgMC4wNCwgMC4zNSwgMSk7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTIyMTJiO1xuICBib3JkZXI6IDNweCBzb2xpZCAjZmZmO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkgYW5kIChtaW4taGVpZ2h0OiA3NjhweCkge1xuICAubm8tanMgLnVpLWRpYWxvZy51aS13aWRnZXQudWktd2lkZ2V0LWNvbnRlbnQgLnVpLWRpYWxvZy10aXRsZWJhci1jbG9zZSxcbi5qcyAudWktZGlhbG9nLnVpLXdpZGdldC51aS13aWRnZXQtY29udGVudCAudWktZGlhbG9nLXRpdGxlYmFyLWNsb3NlIHtcbiAgICB3aWR0aDogNzJweDtcbiAgICBoZWlnaHQ6IDcycHg7XG4gICAgYm9yZGVyLXdpZHRoOiA0cHg7XG4gIH1cbn1cbi5uby1qcyAudWktZGlhbG9nLnVpLXdpZGdldC51aS13aWRnZXQtY29udGVudCAudWktZGlhbG9nLXRpdGxlYmFyLWNsb3NlOjpiZWZvcmUsIC5uby1qcyAudWktZGlhbG9nLnVpLXdpZGdldC51aS13aWRnZXQtY29udGVudCAudWktZGlhbG9nLXRpdGxlYmFyLWNsb3NlOjphZnRlcixcbi5qcyAudWktZGlhbG9nLnVpLXdpZGdldC51aS13aWRnZXQtY29udGVudCAudWktZGlhbG9nLXRpdGxlYmFyLWNsb3NlOjpiZWZvcmUsXG4uanMgLnVpLWRpYWxvZy51aS13aWRnZXQudWktd2lkZ2V0LWNvbnRlbnQgLnVpLWRpYWxvZy10aXRsZWJhci1jbG9zZTo6YWZ0ZXIge1xuICB3aWR0aDogNTAlO1xuICBoZWlnaHQ6IDNweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgY29udGVudDogXCJcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIG1hcmdpbjogYXV0bztcbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLm5vLWpzIC51aS1kaWFsb2cudWktd2lkZ2V0LnVpLXdpZGdldC1jb250ZW50IC51aS1kaWFsb2ctdGl0bGViYXItY2xvc2U6OmJlZm9yZSwgLm5vLWpzIC51aS1kaWFsb2cudWktd2lkZ2V0LnVpLXdpZGdldC1jb250ZW50IC51aS1kaWFsb2ctdGl0bGViYXItY2xvc2U6OmFmdGVyLFxuLmpzIC51aS1kaWFsb2cudWktd2lkZ2V0LnVpLXdpZGdldC1jb250ZW50IC51aS1kaWFsb2ctdGl0bGViYXItY2xvc2U6OmJlZm9yZSxcbi5qcyAudWktZGlhbG9nLnVpLXdpZGdldC51aS13aWRnZXQtY29udGVudCAudWktZGlhbG9nLXRpdGxlYmFyLWNsb3NlOjphZnRlciB7XG4gICAgaGVpZ2h0OiA0cHg7XG4gIH1cbn1cbi5uby1qcyAudWktZGlhbG9nLnVpLXdpZGdldC51aS13aWRnZXQtY29udGVudCAudWktZGlhbG9nLXRpdGxlYmFyLWNsb3NlOjpiZWZvcmUsXG4uanMgLnVpLWRpYWxvZy51aS13aWRnZXQudWktd2lkZ2V0LWNvbnRlbnQgLnVpLWRpYWxvZy10aXRsZWJhci1jbG9zZTo6YmVmb3JlIHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcbn1cbi5uby1qcyAudWktZGlhbG9nLnVpLXdpZGdldC51aS13aWRnZXQtY29udGVudCAudWktZGlhbG9nLXRpdGxlYmFyLWNsb3NlOjphZnRlcixcbi5qcyAudWktZGlhbG9nLnVpLXdpZGdldC51aS13aWRnZXQtY29udGVudCAudWktZGlhbG9nLXRpdGxlYmFyLWNsb3NlOjphZnRlciB7XG4gIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbn1cbi5uby1qcyAudWktZGlhbG9nLnVpLXdpZGdldC51aS13aWRnZXQtY29udGVudCAudWktZGlhbG9nLXRpdGxlYmFyLWNsb3NlOmhvdmVyLCAubm8tanMgLnVpLWRpYWxvZy51aS13aWRnZXQudWktd2lkZ2V0LWNvbnRlbnQgLnVpLWRpYWxvZy10aXRsZWJhci1jbG9zZTpmb2N1cywgLm5vLWpzIC51aS1kaWFsb2cudWktd2lkZ2V0LnVpLXdpZGdldC1jb250ZW50IC51aS1kaWFsb2ctdGl0bGViYXItY2xvc2U6YWN0aXZlLFxuLmpzIC51aS1kaWFsb2cudWktd2lkZ2V0LnVpLXdpZGdldC1jb250ZW50IC51aS1kaWFsb2ctdGl0bGViYXItY2xvc2U6aG92ZXIsXG4uanMgLnVpLWRpYWxvZy51aS13aWRnZXQudWktd2lkZ2V0LWNvbnRlbnQgLnVpLWRpYWxvZy10aXRsZWJhci1jbG9zZTpmb2N1cyxcbi5qcyAudWktZGlhbG9nLnVpLXdpZGdldC51aS13aWRnZXQtY29udGVudCAudWktZGlhbG9nLXRpdGxlYmFyLWNsb3NlOmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMGExYWI7XG59XG4ubm8tanMgLnVpLWRpYWxvZy51aS13aWRnZXQudWktd2lkZ2V0LWNvbnRlbnQgLnVpLWRpYWxvZy10aXRsZWJhci1jbG9zZTpob3Zlcixcbi5qcyAudWktZGlhbG9nLnVpLXdpZGdldC51aS13aWRnZXQtY29udGVudCAudWktZGlhbG9nLXRpdGxlYmFyLWNsb3NlOmhvdmVyIHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbn1cbi5uby1qcyAudWktZGlhbG9nLnVpLXdpZGdldC51aS13aWRnZXQtY29udGVudCAudWktZGlhbG9nLXRpdGxlYmFyLWNsb3NlIHNwYW4sXG4uanMgLnVpLWRpYWxvZy51aS13aWRnZXQudWktd2lkZ2V0LWNvbnRlbnQgLnVpLWRpYWxvZy10aXRsZWJhci1jbG9zZSBzcGFuIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAtOTk5ZW07XG59XG4ubm8tanMgLnVpLWRpYWxvZy51aS13aWRnZXQudWktd2lkZ2V0LWNvbnRlbnQgLnVpLWRpYWxvZy10aXRsZSxcbi5qcyAudWktZGlhbG9nLnVpLXdpZGdldC51aS13aWRnZXQtY29udGVudCAudWktZGlhbG9nLXRpdGxlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAtOTk5ZW07XG59XG4ubm8tanMgLnVpLWRpYWxvZy51aS13aWRnZXQudWktd2lkZ2V0LWNvbnRlbnQgLnVpLWRpYWxvZy1jb250ZW50LFxuLmpzIC51aS1kaWFsb2cudWktd2lkZ2V0LnVpLXdpZGdldC1jb250ZW50IC51aS1kaWFsb2ctY29udGVudCB7XG4gIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xuICBtYXgtaGVpZ2h0OiBub25lICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmc6IDA7XG59XG4ubm8tanMgLnVpLWRpYWxvZy51aS13aWRnZXQudWktd2lkZ2V0LWNvbnRlbnQgYSxcbi5qcyAudWktZGlhbG9nLnVpLXdpZGdldC51aS13aWRnZXQtY29udGVudCBhIHtcbiAgY29sb3I6ICNmZmY7XG59XG5cbi5vcGVuLWRpYWxvZyB7XG4gIG92ZXJmbG93LXk6IGhpZGRlbjtcbn1cblxuLnBlcmZvcm1hbmNlcyB7XG4gIHBhZGRpbmc6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGhlaWdodDogY2FsYygxMDB2aCAtIDc1cHgpO1xuICBtYXJnaW46IDEwcHggYXV0byAwO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5wZXJmb3JtYW5jZXMge1xuICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgaGVpZ2h0OiBjYWxjKDEwMHZoIC0gMTEzcHgpO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIGFuZCAobWluLWhlaWdodDogOTAwcHgpIHtcbiAgLnBlcmZvcm1hbmNlcyB7XG4gICAgaGVpZ2h0OiBjYWxjKDEwMHZoIC0gMTQycHgpO1xuICB9XG59XG4ucGVyZm9ybWFuY2VzX19sb2dvIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtYXgtd2lkdGg6IDExOTlweCkgYW5kIChtaW4taGVpZ2h0OiA1NzZweCkge1xuICAucGVyZm9ybWFuY2VzX19sb2dvIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkgYW5kIChtaW4taGVpZ2h0OiA5MDBweCkge1xuICAucGVyZm9ybWFuY2VzX19sb2dvIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgfVxufVxuLnBlcmZvcm1hbmNlc19fbG9nby1pdGVtIHtcbiAgd2lkdGg6IDE2MHB4O1xuICBoZWlnaHQ6IDcwcHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi5wZXJmb3JtYW5jZXNfX2xvZ28taXRlbTpmaXJzdC1jaGlsZCB7XG4gIHdpZHRoOiA3MHB4O1xufVxuLnBlcmZvcm1hbmNlc19fbG9nby1pdGVtOmxhc3QtY2hpbGQge1xuICBwYWRkaW5nLWxlZnQ6IDMwcHg7XG59XG4ucGVyZm9ybWFuY2VzX19sb2dvLWl0ZW06bGFzdC1jaGlsZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlwiO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHdpZHRoOiAxcHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMGExYWI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDI2cHg7XG59XG4ucGVyZm9ybWFuY2VzX19sb2dvIHN2ZyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuLnBlcmZvcm1hbmNlc19fbG9nbyBnLFxuLnBlcmZvcm1hbmNlc19fbG9nbyBwYXRoLFxuLnBlcmZvcm1hbmNlc19fbG9nbyBwb2x5Z29uIHtcbiAgZmlsbDogIzAwYTFhYjtcbn1cbi5wZXJmb3JtYW5jZXNfX3RpdGxlIHtcbiAgbWFyZ2luOiAwO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1pbi1oZWlnaHQ6IDc2OHB4KSB7XG4gIC5wZXJmb3JtYW5jZXNfX3RpdGxlIHtcbiAgICBtYXJnaW4tdG9wOiAyMi41cHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIGFuZCAobWluLWhlaWdodDogOTkycHgpIHtcbiAgLnBlcmZvcm1hbmNlc19fdGl0bGUge1xuICAgIG1hcmdpbi10b3A6IDQ1cHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxNjAwcHgpIGFuZCAobWluLWhlaWdodDogOTkycHgpIHtcbiAgLnBlcmZvcm1hbmNlc19fdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogNzZweDtcbiAgICBsaW5lLWhlaWdodDogODZweDtcbiAgICBsZXR0ZXItc3BhY2luZzogLTNweDtcbiAgICBtYXJnaW4tdG9wOiA4MXB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTYwMHB4KSBhbmQgKG1pbi1oZWlnaHQ6IDk5MnB4KSBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLnBlcmZvcm1hbmNlc19fdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogNDdweDtcbiAgICBsaW5lLWhlaWdodDogNTdweDtcbiAgICBsZXR0ZXItc3BhY2luZzogLTJweDtcbiAgfVxufVxuLnBlcmZvcm1hbmNlc19fdGl0bGUgKyBoMiB7XG4gIGZvbnQtc2l6ZTogMThweDtcbiAgbGluZS1oZWlnaHQ6IDI4cHg7XG4gIGxldHRlci1zcGFjaW5nOiAtMC41cHg7XG4gIG1hcmdpbjogMTVweCAwIDA7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSBhbmQgKG1pbi1oZWlnaHQ6IDk5MnB4KSB7XG4gIC5wZXJmb3JtYW5jZXNfX3RpdGxlICsgaDIge1xuICAgIGZvbnQtc2l6ZTogNDdweDtcbiAgICBsaW5lLWhlaWdodDogNTdweDtcbiAgICBsZXR0ZXItc3BhY2luZzogLTJweDtcbiAgICBtYXgtd2lkdGg6IDc4MHB4O1xuICAgIG1hcmdpbi10b3A6IDMzLjc1cHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIGFuZCAobWluLWhlaWdodDogOTkycHgpIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xuICAucGVyZm9ybWFuY2VzX190aXRsZSArIGgyIHtcbiAgICBmb250LXNpemU6IDM1cHg7XG4gICAgbGluZS1oZWlnaHQ6IDQ1cHg7XG4gICAgbGV0dGVyLXNwYWNpbmc6IC0xcHg7XG4gIH1cbn1cbi5wZXJmb3JtYW5jZXNfX3Jvd3Mge1xuICBtYXJnaW4tdG9wOiAyMi41cHg7XG4gIGZsZXg6IDEgMSBhdXRvO1xuICBvdmVyZmxvdy15OiBzY3JvbGw7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLnBlcmZvcm1hbmNlc19fcm93cyB7XG4gICAgbWFyZ2luLXRvcDogNDVweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkgYW5kIChtaW4taGVpZ2h0OiA5OTJweCkge1xuICAucGVyZm9ybWFuY2VzX19yb3dzIHtcbiAgICBtYXJnaW4tdG9wOiA4MXB4O1xuICB9XG59XG4ucGVyZm9ybWFuY2VzX19yb3cge1xuICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBwYWRkaW5nOiAyMHB4O1xuICBib3gtc2hhZG93OiAwIDAgMjBweCAwIHJnYmEoMTgsIDMzLCA0MywgMC4wOCk7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIG1hcmdpbi10b3A6IDE1cHg7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLnBlcmZvcm1hbmNlc19fcm93IHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIG1hcmdpbi10b3A6IDIyLjVweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAucGVyZm9ybWFuY2VzX19yb3cge1xuICAgIHBhZGRpbmc6IDIwcHggNDBweDtcbiAgfVxufVxuLnBlcmZvcm1hbmNlc19fcm93OmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLXRvcDogMDtcbn1cbi5wZXJmb3JtYW5jZXNfX21ldGEge1xuICBkaXNwbGF5OiBibG9jaztcbn1cbi5wZXJmb3JtYW5jZXNfX21ldGEtLWRhdGUge1xuICBmb250LXNpemU6IDI5cHg7XG4gIGxpbmUtaGVpZ2h0OiAzOXB4O1xuICBsZXR0ZXItc3BhY2luZzogLTFweDtcbiAgZm9udC1mYW1pbHk6IFwibW9udHNlcnJhdHNlbWlib2xkXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG59XG4ucGVyZm9ybWFuY2VzX19tZXRhLS10aXRsZSB7XG4gIGZvbnQtZmFtaWx5OiBcIm1vbnRzZXJyYXRyZWd1bGFyXCIsIGFyaWFsLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDE4cHg7XG4gIGxpbmUtaGVpZ2h0OiAzMnB4O1xuICBtYXJnaW4tdG9wOiAxMS4yNXB4O1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5wZXJmb3JtYW5jZXNfX21ldGEtLXRpdGxlIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSBhbmQgKG1pbi1oZWlnaHQ6IDk5MnB4KSB7XG4gIC5wZXJmb3JtYW5jZXNfX21ldGEtLXRpdGxlIHtcbiAgICBmb250LXNpemU6IDI5cHg7XG4gICAgbGluZS1oZWlnaHQ6IDM5cHg7XG4gICAgbGV0dGVyLXNwYWNpbmc6IC0xcHg7XG4gIH1cbn1cbi5wZXJmb3JtYW5jZXNfX2Jvb2tpbmcge1xuICBtYXJnaW4tdG9wOiAxNXB4O1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDU3NnB4KSB7XG4gIC5wZXJmb3JtYW5jZXNfX2Jvb2tpbmcge1xuICAgIG1hcmdpbjogMTEuMjVweCAwIDAgYXV0bztcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5wZXJmb3JtYW5jZXNfX2Jvb2tpbmcge1xuICAgIG1hcmdpbjogMDtcbiAgfVxufVxuLnBlcmZvcm1hbmNlc19fYm9va2luZyBhIHtcbiAgZm9udC1mYW1pbHk6IFwibW9udHNlcnJhdHNlbWlib2xkXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMzBweDtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMzBweDtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMGExYWI7XG4gIHBhZGRpbmc6IDI0cHggNTIuNXB4IDIzLjA3NjkyMzA3NjlweCAyNHB4O1xuICBsaW5lLWhlaWdodDogMTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luLXJpZ2h0OiAzMHB4O1xuICB0cmFuc2l0aW9uOiBhbGwgMC4xcyBjdWJpYy1iZXppZXIoMC42NCwgMC4wNCwgMC4zNSwgMSk7XG4gIHdpZHRoOiAxOTBweDtcbn1cbi5wZXJmb3JtYW5jZXNfX2Jvb2tpbmcgYTo6YmVmb3JlLCAucGVyZm9ybWFuY2VzX19ib29raW5nIGE6OmFmdGVyIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWcvaWNvbi1zbWlsZS5zdmdcIik7XG4gIGJhY2tncm91bmQtc2l6ZTogMjBweDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogNTAlIDU1JTtcbiAgY29udGVudDogXCJcIjtcbiAgYm9yZGVyOiA0cHggc29saWQgI2ZmZjtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDBhMWFiO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHdpZHRoOiA2NnB4O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICByaWdodDogLTMycHg7XG4gIHRyYW5zaXRpb246IGFsbCAwLjVzIGN1YmljLWJlemllcigwLjY0LCAwLjA0LCAwLjM1LCAxKTtcbiAgei1pbmRleDogMTtcbn1cbi5wZXJmb3JtYW5jZXNfX2Jvb2tpbmcgYTo6YmVmb3JlIHtcbiAgYm9yZGVyOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTIyMTJiO1xuICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDhweCk7XG4gIHdpZHRoOiA1OHB4O1xuICB0b3A6IDRweDtcbiAgcmlnaHQ6IC0yOHB4O1xuICB6LWluZGV4OiAyO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpIHNjYWxlKDApO1xuICB0cmFuc2l0aW9uOiBhbGwgMC41cyBjdWJpYy1iZXppZXIoMC42NCwgMC4wNCwgMC4zNSwgMSk7XG59XG4ucGVyZm9ybWFuY2VzX19ib29raW5nIGE6aG92ZXIge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGNvbG9yOiAjZmZmO1xufVxuLnBlcmZvcm1hbmNlc19fYm9va2luZyBhOmhvdmVyOjpiZWZvcmUge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgwKSBzY2FsZSgxKTtcbn1cbi5wZXJmb3JtYW5jZXNfX2Jvb2tpbmcgYTpob3Zlcjo6YWZ0ZXIge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgtMzYwZGVnKTtcbn1cbi5wZXJmb3JtYW5jZXNfX2Jvb2tpbmcgYTpmb2N1cyB7XG4gIG91dGxpbmUtY29sb3I6ICMxMjIxMmI7XG59XG5AbWVkaWEgKG1heC13aWR0aDogNTc2cHgpIHtcbiAgLnBlcmZvcm1hbmNlc19fYm9va2luZyBhIHtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gMzBweCk7XG4gIH1cbn1cbi5wZXJmb3JtYW5jZXNfX2Jvb2tpbmcgYSA+IHNwYW4ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgdGV4dC10cmFuc2Zvcm06IGxvd2VyY2FzZTtcbn1cbi5wZXJmb3JtYW5jZXNfX2Jvb2tpbmcgYSA+IHNwYW46Zmlyc3QtbGV0dGVyIHtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cbi5wZXJmb3JtYW5jZXNfX2Jvb2tpbmcgYS5nb2luZy1mYXN0IHtcbiAgZm9udC1mYW1pbHk6IFwibW9udHNlcnJhdHNlbWlib2xkXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMzBweDtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMzBweDtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMGExYWI7XG4gIHBhZGRpbmc6IDI0cHggNTIuNXB4IDIzLjA3NjkyMzA3NjlweCAyNHB4O1xuICBsaW5lLWhlaWdodDogMTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luLXJpZ2h0OiAzMHB4O1xuICB0cmFuc2l0aW9uOiBhbGwgMC4xcyBjdWJpYy1iZXppZXIoMC42NCwgMC4wNCwgMC4zNSwgMSk7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwIDRweCAjZmZmO1xuICBjb2xvcjogIzEyMjEyYjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgNHB4ICMwMGExYWIgIWltcG9ydGFudDtcbiAgY29sb3I6ICMxMjIxMmIgIWltcG9ydGFudDtcbn1cbi5wZXJmb3JtYW5jZXNfX2Jvb2tpbmcgYS5nb2luZy1mYXN0OjpiZWZvcmUsIC5wZXJmb3JtYW5jZXNfX2Jvb2tpbmcgYS5nb2luZy1mYXN0OjphZnRlciB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1nL2ljb24tc21pbGUuc3ZnXCIpO1xuICBiYWNrZ3JvdW5kLXNpemU6IDIwcHg7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDUwJSA1NSU7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGJvcmRlcjogNHB4IHNvbGlkICNmZmY7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwYTFhYjtcbiAgaGVpZ2h0OiAxMDAlO1xuICB3aWR0aDogNjZweDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IC0zMnB4O1xuICB0cmFuc2l0aW9uOiBhbGwgMC41cyBjdWJpYy1iZXppZXIoMC42NCwgMC4wNCwgMC4zNSwgMSk7XG4gIHotaW5kZXg6IDE7XG59XG4ucGVyZm9ybWFuY2VzX19ib29raW5nIGEuZ29pbmctZmFzdDo6YmVmb3JlIHtcbiAgYm9yZGVyOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTIyMTJiO1xuICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDhweCk7XG4gIHdpZHRoOiA1OHB4O1xuICB0b3A6IDRweDtcbiAgcmlnaHQ6IC0yOHB4O1xuICB6LWluZGV4OiAyO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpIHNjYWxlKDApO1xuICB0cmFuc2l0aW9uOiBhbGwgMC41cyBjdWJpYy1iZXppZXIoMC42NCwgMC4wNCwgMC4zNSwgMSk7XG59XG4ucGVyZm9ybWFuY2VzX19ib29raW5nIGEuZ29pbmctZmFzdDpob3ZlciB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgY29sb3I6ICNmZmY7XG59XG4ucGVyZm9ybWFuY2VzX19ib29raW5nIGEuZ29pbmctZmFzdDpob3Zlcjo6YmVmb3JlIHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMCkgc2NhbGUoMSk7XG59XG4ucGVyZm9ybWFuY2VzX19ib29raW5nIGEuZ29pbmctZmFzdDpob3Zlcjo6YWZ0ZXIge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgtMzYwZGVnKTtcbn1cbi5wZXJmb3JtYW5jZXNfX2Jvb2tpbmcgYS5nb2luZy1mYXN0OmZvY3VzIHtcbiAgb3V0bGluZS1jb2xvcjogIzEyMjEyYjtcbn1cbi5wZXJmb3JtYW5jZXNfX2Jvb2tpbmcgYS5nb2luZy1mYXN0OjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDBhMWFiO1xufVxuLnBlcmZvcm1hbmNlc19fYm9va2luZyBhLmdvaW5nLWZhc3Q6OmFmdGVyIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1nL2ljb24tc21pbGUtd2guc3ZnXCIpO1xuICBib3JkZXItY29sb3I6ICMwMGExYWI7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG59XG4ucGVyZm9ybWFuY2VzX19ib29raW5nIGEuZ29pbmctZmFzdDpob3ZlciB7XG4gIGNvbG9yOiAjMTIyMTJiO1xufVxuLnBlcmZvcm1hbmNlc19fYm9va2luZyBhLnNvbGQtb3V0IHtcbiAgZm9udC1mYW1pbHk6IFwibW9udHNlcnJhdHNlbWlib2xkXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMzBweDtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMzBweDtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMGExYWI7XG4gIHBhZGRpbmc6IDI0cHggNTIuNXB4IDIzLjA3NjkyMzA3NjlweCAyNHB4O1xuICBsaW5lLWhlaWdodDogMTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luLXJpZ2h0OiAzMHB4O1xuICB0cmFuc2l0aW9uOiBhbGwgMC4xcyBjdWJpYy1iZXppZXIoMC42NCwgMC4wNCwgMC4zNSwgMSk7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICBjb2xvcjogIzEyMjEyYjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2FkYWViMDtcbiAgY29sb3I6ICMxMjIxMmIgIWltcG9ydGFudDtcbiAgcG9pbnRlci1ldmVudHM6IGFsbDtcbn1cbi5wZXJmb3JtYW5jZXNfX2Jvb2tpbmcgYS5zb2xkLW91dDo6YmVmb3JlLCAucGVyZm9ybWFuY2VzX19ib29raW5nIGEuc29sZC1vdXQ6OmFmdGVyIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWcvaWNvbi1zbWlsZS5zdmdcIik7XG4gIGJhY2tncm91bmQtc2l6ZTogMjBweDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogNTAlIDU1JTtcbiAgY29udGVudDogXCJcIjtcbiAgYm9yZGVyOiA0cHggc29saWQgI2ZmZjtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDBhMWFiO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHdpZHRoOiA2NnB4O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICByaWdodDogLTMycHg7XG4gIHRyYW5zaXRpb246IGFsbCAwLjVzIGN1YmljLWJlemllcigwLjY0LCAwLjA0LCAwLjM1LCAxKTtcbiAgei1pbmRleDogMTtcbn1cbi5wZXJmb3JtYW5jZXNfX2Jvb2tpbmcgYS5zb2xkLW91dDo6YmVmb3JlIHtcbiAgYm9yZGVyOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTIyMTJiO1xuICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDhweCk7XG4gIHdpZHRoOiA1OHB4O1xuICB0b3A6IDRweDtcbiAgcmlnaHQ6IC0yOHB4O1xuICB6LWluZGV4OiAyO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpIHNjYWxlKDApO1xuICB0cmFuc2l0aW9uOiBhbGwgMC41cyBjdWJpYy1iZXppZXIoMC42NCwgMC4wNCwgMC4zNSwgMSk7XG59XG4ucGVyZm9ybWFuY2VzX19ib29raW5nIGEuc29sZC1vdXQ6aG92ZXIge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGNvbG9yOiAjZmZmO1xufVxuLnBlcmZvcm1hbmNlc19fYm9va2luZyBhLnNvbGQtb3V0OmhvdmVyOjpiZWZvcmUge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgwKSBzY2FsZSgxKTtcbn1cbi5wZXJmb3JtYW5jZXNfX2Jvb2tpbmcgYS5zb2xkLW91dDpob3Zlcjo6YWZ0ZXIge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgtMzYwZGVnKTtcbn1cbi5wZXJmb3JtYW5jZXNfX2Jvb2tpbmcgYS5zb2xkLW91dDpmb2N1cyB7XG4gIG91dGxpbmUtY29sb3I6ICMxMjIxMmI7XG59XG4ucGVyZm9ybWFuY2VzX19ib29raW5nIGEuc29sZC1vdXQ6OmJlZm9yZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxMjIxMmI7XG59XG4ucGVyZm9ybWFuY2VzX19ib29raW5nIGEuc29sZC1vdXQ6OmFmdGVyIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1nL2ljb24tc21pbGUuc3ZnXCIpO1xuICBib3JkZXItY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICNhZGFlYjA7XG59XG4ucGVyZm9ybWFuY2VzX19ib29raW5nIGEuc29sZC1vdXQ6aG92ZXIge1xuICBjb2xvcjogIzEyMjEyYjtcbn1cbi5wZXJmb3JtYW5jZXNfX2Jvb2tpbmcgYS5zb2xkLW91dDpob3Zlcjo6YmVmb3JlIHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMCkgc2NhbGUoMCk7XG59XG4ucGVyZm9ybWFuY2VzX19ib29raW5nIGEuc29sZC1vdXQ6aG92ZXI6OmFmdGVyIHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG59XG5cbi8qKlxuICogU3Bla3RyaXhcbiAqL1xuLnNwZWt0cml4X19jb250YWluZXIge1xuICBtYXJnaW46IDAgYXV0bztcbn1cbi5zcGVrdHJpeF9faW5uZXIge1xuICBtYXgtd2lkdGg6IDc4MHB4O1xufVxuLnNwZWt0cml4X19tZW1iZXJzaGlwLWdyaWQge1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLWdhcDogMjBweDtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgMWZyKTtcbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAuc3Bla3RyaXhfX21lbWJlcnNoaXAtZ3JpZCB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG4gIH1cbn1cbi5zcGVrdHJpeF9fbWVtYmVyc2hpcC1ncmlkLS1pdGVtIHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2VlZTtcbn1cbi5zcGVrdHJpeF9fbWVtYmVyc2hpcC1ncmlkLS1pdGVtLS1jb250ZW50IHtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDE1cHg7XG59XG4uc3Bla3RyaXhfX21lbWJlcnNoaXAtZ3JpZC0taXRlbS0tY29udGVudCAuc3Bla3RyaXgtbWVtYmVyc2hpcF9fY2hlY2tib3gge1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xufVxuLnNwZWt0cml4X19tZW1iZXJzaGlwLWdyaWQtLWl0ZW0tLWNvbnRlbnQgLnNwZWt0cml4LW1lbWJlcnNoaXBfX2NoZWNrYm94IGlucHV0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiAwO1xuICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG59XG5cbi5zY2hlZHVsZSB7XG4gIC8qKlxuICAgKiBNb2RpZmllcnNcbiAgICovXG59XG4uc2NoZWR1bGVfX2lubmVyIHtcbiAgcGFkZGluZy10b3A6IDA7XG4gIHBhZGRpbmctYm90dG9tOiAwO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuLnNjaGVkdWxlX19oZWFkaW5nIHtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gIC5zY2hlZHVsZV9faGVhZGluZyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWZsb3c6IGNvbHVtbjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB9XG59XG4uc2NoZWR1bGVfX3N1YnRpdGxlLCAuc2NoZWR1bGVfX3ByZXRpdGxlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGNvbG9yOiAjNmQ2ZTcxO1xufVxuLnNjaGVkdWxlX190aXRsZSB7XG4gIGZvbnQtc2l6ZTogMThweDtcbiAgbGluZS1oZWlnaHQ6IDI4cHg7XG4gIGxldHRlci1zcGFjaW5nOiAtMC41cHg7XG4gIG1hcmdpbjogNDBweCAwIDA7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5zY2hlZHVsZV9fdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogMjlweDtcbiAgICBsaW5lLWhlaWdodDogMzlweDtcbiAgICBsZXR0ZXItc3BhY2luZzogLTFweDtcbiAgICBtYXJnaW4tdG9wOiA4MHB4O1xuICB9XG59XG4uc2NoZWR1bGVfX2l0ZW0ge1xuICBib3JkZXItcmFkaXVzOiAxNnB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBib3gtc2hhZG93OiAwIDAgMjBweCAwIHJnYmEoMTgsIDMzLCA0MywgMC4wOCk7XG4gIHdpZHRoOiAxMDAlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICBwYWRkaW5nOiAwLjVyZW07XG59XG4uc2NoZWR1bGVfX2l0ZW0gLm5vZGUge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xufVxuLnNjaGVkdWxlX190aW1lIHtcbiAgZm9udC1mYW1pbHk6IFwibW9udHNlcnJhdHNlbWlib2xkXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGJvcmRlci1yYWRpdXM6IDE2cHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMGExYWI7XG4gIGNvbG9yOiAjZmZmO1xuICB3aWR0aDogMTAwJTtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBwYWRkaW5nOiAxcmVtO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDU3NnB4KSB7XG4gIC5zY2hlZHVsZV9fdGltZSB7XG4gICAgd2lkdGg6IGF1dG87XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxNjAwcHgpIHtcbiAgLnNjaGVkdWxlX190aW1lIHtcbiAgICBmb250LXNpemU6IDQ3cHg7XG4gICAgbGluZS1oZWlnaHQ6IDU3cHg7XG4gICAgbGV0dGVyLXNwYWNpbmc6IC0ycHg7XG4gICAgbWFyZ2luLXJpZ2h0OiAycmVtO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTYwMHB4KSBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLnNjaGVkdWxlX190aW1lIHtcbiAgICBmb250LXNpemU6IDM1cHg7XG4gICAgbGluZS1oZWlnaHQ6IDQ1cHg7XG4gICAgbGV0dGVyLXNwYWNpbmc6IC0xcHg7XG4gIH1cbn1cbi5zY2hlZHVsZV9fbWV0YSB7XG4gIG1hcmdpbi10b3A6IDE2cHg7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuLnNjaGVkdWxlX19jb250ZW50IHtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDFyZW07XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNTc2cHgpIHtcbiAgLnNjaGVkdWxlX19jb250ZW50IHtcbiAgICBtYXgtd2lkdGg6IDc1JTtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDU3NnB4KSBhbmQgKG1pbi1oZWlnaHQ6IDU3NnB4KSB7XG4gIC5zY2hlZHVsZV9fY29udGVudCB7XG4gICAgbWF4LXdpZHRoOiBub25lO1xuICAgIGZsZXg6IDEgMCA1MCU7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxNjAwcHgpIHtcbiAgLnNjaGVkdWxlX19jb250ZW50IHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gIH1cbn1cbi5zY2hlZHVsZV9fZGV0YWlscyB7XG4gIG1hcmdpbi10b3A6IDI0cHg7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTYwMHB4KSB7XG4gIC5zY2hlZHVsZV9fZGV0YWlscyB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgfVxufVxuLnNjaGVkdWxlX19uYW1lIHtcbiAgZm9udC1zaXplOiAxOHB4O1xuICBsaW5lLWhlaWdodDogMjhweDtcbiAgbGV0dGVyLXNwYWNpbmc6IC0wLjVweDtcbiAgbWFyZ2luOiAwO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDU3NnB4KSB7XG4gIC5zY2hlZHVsZV9fbmFtZSB7XG4gICAgZm9udC1zaXplOiAyOXB4O1xuICAgIGxpbmUtaGVpZ2h0OiAzOXB4O1xuICAgIGxldHRlci1zcGFjaW5nOiAtMXB4O1xuICB9XG59XG4uc2NoZWR1bGVfX3RodW1iIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGFsaWduLXNlbGY6IHN0cmV0Y2g7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNTc2cHgpIGFuZCAobWluLWhlaWdodDogNTc2cHgpIHtcbiAgLnNjaGVkdWxlX190aHVtYiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZmxleDogMSAxIDUwJTtcbiAgICBwYWRkaW5nLWxlZnQ6IDMwcHg7XG4gICAgbWF4LXdpZHRoOiA0MjVweDtcbiAgfVxufVxuLnNjaGVkdWxlX190aHVtYiBpbWcge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgb2JqZWN0LWZpdDogY292ZXI7XG59XG4uc2NoZWR1bGVfX2J1dHRvbnMge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBtYXJnaW4tdG9wOiAxNnB4O1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAuc2NoZWR1bGVfX2J1dHRvbnMge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIH1cbn1cbi5zY2hlZHVsZV9fYnV0dG9uIHtcbiAgbWFyZ2luLXRvcDogMTZweDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLnNjaGVkdWxlX19idXR0b24ge1xuICAgIG1hcmdpbjogMCAxNnB4IDAgMDtcbiAgfVxufVxuLnNjaGVkdWxlX19idXR0b246Zmlyc3QtY2hpbGQge1xuICBtYXJnaW4tdG9wOiAwO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAuc2NoZWR1bGVfX2J1dHRvbjpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gIH1cbn1cbi5zY2hlZHVsZV9fYnV0dG9uID4gYSB7XG4gIGZvbnQtZmFtaWx5OiBcIm1vbnRzZXJyYXRzZW1pYm9sZFwiLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTIyMTJiO1xuICBwYWRkaW5nOiAxMnB4O1xuICBsaW5lLWhlaWdodDogMTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBjdWJpYy1iZXppZXIoMC42NCwgMC4wNCwgMC4zNSwgMSk7XG4gIGJvcmRlcjogbm9uZTtcbn1cbi5zY2hlZHVsZV9fYnV0dG9uID4gYTpob3ZlciwgLnNjaGVkdWxlX19idXR0b24gPiBhOmZvY3VzLCAuc2NoZWR1bGVfX2J1dHRvbiA+IGEuYWN0aXZlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzZkNmU3MTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBjb2xvcjogI2ZmZjtcbn1cbi5zY2hlZHVsZV9fYnV0dG9uID4gYTpmb2N1cyB7XG4gIG91dGxpbmUtY29sb3I6ICMxMjIxMmI7XG59XG4uc2NoZWR1bGVfX2J1dHRvbi0tdmVudWUgPiBhIHtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG4uc2NoZWR1bGVfX2J1dHRvbi0tdmVudWUgPiBhOjpiZWZvcmUge1xuICBjb250ZW50OiBcIlwiO1xuICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWcvbWFwLW1hcmtlci0td2hpdGUuc3ZnXCIpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyO1xuICB3aWR0aDogMTVweDtcbiAgaGVpZ2h0OiAxOHB4O1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xufVxuLnNjaGVkdWxlIC5saXN0aW5nIHtcbiAgbWFyZ2luLXRvcDogMTZweDtcbn1cbi5zY2hlZHVsZSAubGlzdGluZyBsaSB7XG4gIG1hcmdpbi10b3A6IDE2cHg7XG4gIHBhZGRpbmctdG9wOiAwO1xuICBwYWRkaW5nLWJvdHRvbTogMDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLnNjaGVkdWxlIC5saXN0aW5nIGxpIHtcbiAgICBtYXJnaW4tdG9wOiA0MHB4O1xuICB9XG59XG4uc2NoZWR1bGUgLmxpc3RpbmcgbGk6Zmlyc3QtY2hpbGQge1xuICBtYXJnaW4tdG9wOiAwO1xufVxuLnNjaGVkdWxlIC5wYWdlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5zY2hlZHVsZSAucGFnZXIge1xuICAgIG1hcmdpbi10b3A6IDgwcHg7XG4gIH1cbn1cbi5zY2hlZHVsZSAucGFnZXJfX2l0ZW1zIHtcbiAgcGFkZGluZy1sZWZ0OiAwO1xufVxuXG4ubGlua3Mge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDU3NnB4KSB7XG4gIC5saW5rcyB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAubGlua3Mge1xuICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAubGlua3Mge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5saW5rcyB7XG4gICAgbWFyZ2luLWJvdHRvbTogNjBweDtcbiAgfVxufVxuLmxpbmtzIC5jdGEge1xuICBkaXNwbGF5OiBibG9jaztcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBtYXJnaW4tdG9wOiA4cHg7XG4gIHdpZHRoOiBhdXRvO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDU3NnB4KSB7XG4gIC5saW5rcyAuY3RhIHtcbiAgICB3aWR0aDogY2FsYygzMyUgLSAxNXB4KTtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLmxpbmtzIC5jdGEge1xuICAgIG1hcmdpbi1yaWdodDogNDhweDtcbiAgICB3aWR0aDogYXV0bztcbiAgfVxufVxuLmxpbmtzIC5jdGE6Zmlyc3QtY2hpbGQge1xuICBtYXJnaW4tdG9wOiAwO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5saW5rcyAuY3RhOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgfVxufVxuLmxpbmtzX19pbm5lciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG4ubGlua3NfX2lubmVyID4gYS5jdGEge1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIHBhZGRpbmc6IDE1cHg7XG4gIG1hcmdpbjogMCAxMHB4IDAgMDtcbiAgZm9udC1mYW1pbHk6IFwibW9udHNlcnJhdHJlZ3VsYXJcIiwgYXJpYWwsIHNhbnMtc2VyaWY7XG59XG5AbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgLmxpbmtzX19pbm5lciA+IGEuY3RhIHtcbiAgICBtYXJnaW46IGF1dG8gYXV0byAyMHB4O1xuICAgIGJvcmRlci1yaWdodDogbm9uZTtcbiAgfVxufVxuLmxpbmtzX19pbm5lciA+IGgzIHtcbiAgbWFyZ2luOiAwIDEwcHggMCAwO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDU3NnB4KSB7XG4gIC5saW5rc19faW5uZXIge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAubGlua3NfX2lubmVyIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAubGlua3NfX2lubmVyIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLmxpbmtzX19pbm5lciB7XG4gICAgbWFyZ2luLWJvdHRvbTogNjBweDtcbiAgfVxufVxuLmxpbmtzX19zaG93dGltZXMge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTIyMTJiO1xuICBwYWRkaW5nOiAwIDE1cHg7XG4gIGNvbG9yOiAjZmZmZmZmO1xufVxuQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gIC5saW5rc19fc2hvd3RpbWVzIHtcbiAgICBwYWRkaW5nOiAxNXB4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIH1cbn1cbi5saW5rc19fc2hvd3RpbWVzID4gYS5jdGEge1xuICBmb250LWZhbWlseTogXCJtb250c2VycmF0cmVndWxhclwiLCBhcmlhbCwgc2Fucy1zZXJpZjtcbiAgcGFkZGluZzogMCA3LjVweCAwIDA7XG4gIGJvcmRlci1yaWdodDogMXB4IHNvbGlkIHdoaXRlO1xuICBtYXJnaW46IDE1cHggNy41cHggMTVweCAwO1xuICB3aWR0aDogYXV0bztcbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xuICAubGlua3NfX3Nob3d0aW1lcyA+IGEuY3RhIHtcbiAgICBtYXJnaW46IGF1dG8gYXV0byAyMHB4O1xuICAgIGJvcmRlci1yaWdodDogbm9uZTtcbiAgfVxufVxuLmxpbmtzX19zaG93dGltZXMgPiBhLmN0YTpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbn1cbi5saW5rc19fc2hvd3RpbWVzID4gYS5jdGE6bGFzdC1vZi10eXBlIHtcbiAgYm9yZGVyLXJpZ2h0OiBub25lO1xufVxuQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gIC5saW5rc19fc2hvd3RpbWVzID4gYS5jdGE6bGFzdC1vZi10eXBlIHtcbiAgICBtYXJnaW46IDA7XG4gIH1cbn1cbi5saW5rc19fc2hvd3RpbWVzID4gYS5jdGE6Zmlyc3Qtb2YtdHlwZSB7XG4gIG1hcmdpbjogMTVweCA3LjVweCAxNXB4IDE1cHg7XG59XG5AbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgLmxpbmtzX19zaG93dGltZXMgPiBhLmN0YTpmaXJzdC1vZi10eXBlIHtcbiAgICBtYXJnaW46IDEwcHgg4oCLYXV0byAyMHB4O1xuICB9XG59XG4ubGlua3NfX3Nob3d0aW1lcyA+IHNwYW4ge1xuICBmb250LWZhbWlseTogXCJtb250c2VycmF0c2VtaWJvbGRcIiwgYXJpYWwsIHNhbnMtc2VyaWY7XG4gIHdpZHRoOiBhdXRvO1xufVxuLmxpbmtzX193cmFwcGVyIHtcbiAgbWFyZ2luOiAzMHB4IDAgMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgxMDksIDExMCwgMTEzLCAwLjQpO1xuICBwYWRkaW5nOiAxNXB4IDA7XG59XG4ubGlua3NfX3dyYXBwZXIgLmxpbmtzLFxuLmxpbmtzX193cmFwcGVyIC5saW5rc19faW5uZXIge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4ud2hhdHMtb24tc2lnbnBvc3Qge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBib3JkZXI6IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IDAgMCAxNnB4IDE2cHg7XG4gIGNvbG9yOiAjMTIyMTJiO1xuICBwYWRkaW5nOiAzMHB4IDQycHg7XG4gIGhlaWdodDogMTAwJTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG59XG4ud2hhdHMtb24tc2lnbnBvc3RfX3RpdGxlIHtcbiAgZm9udC1mYW1pbHk6IFwibW9udHNlcnJhdHNlbWlib2xkXCIsIGFyaWFsLCBzYW5zLXNlcmlmO1xufVxuLndoYXRzLW9uLXNpZ25wb3N0X19jb3B5IHtcbiAgZm9udC1mYW1pbHk6IFwibW9udHNlcnJhdHJlZ3VsYXJcIiwgYXJpYWwsIHNhbnMtc2VyaWY7XG59XG4ud2hhdHMtb24tc2lnbnBvc3RfX2N0YSB7XG4gIG1hcmdpbi10b3A6IDIwcHg7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG59XG4ud2hhdHMtb24tc2lnbnBvc3RfX3dyYXBwZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDBhMWFiO1xufVxuQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gIC53aGF0cy1vbi1zaWducG9zdF9fd3JhcHBlciAuZ3JpZCAuY29sLXNtLTY6Zmlyc3Qtb2YtdHlwZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4uY3RfX2hvbWVwYWdlIC5vdXItZmFtaWx5IHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAzMyUgMWZyO1xuICBncmlkLWdhcDogMTM1cHg7XG59XG5AbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgLmN0X19ob21lcGFnZSAub3VyLWZhbWlseSB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG4gICAgZ3JpZC1nYXA6IDMwcHg7XG4gICAgZ3JpZC1hdXRvLXJvd3M6IG1pbi1jb250ZW50O1xuICB9XG59XG4uY3RfX2hvbWVwYWdlIC5vdXItZmFtaWx5X19pbnRybyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGZsZXgtYmFzaXM6IDMwJTtcbn1cbi5jdF9faG9tZXBhZ2UgLm91ci1mYW1pbHlfX2xvZ29zIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuLmN0X19ob21lcGFnZSAub3VyLWZhbWlseV9fbG9nb3MgLmxvZ28tbGluayB7XG4gIG1heC13aWR0aDogMzAlO1xuICBkaXNwbGF5OiBibG9jaztcbn1cbi5jdF9faG9tZXBhZ2UgLm91ci1mYW1pbHlfX2xvZ29zIC5sb2dvLWxpbmsgaW1nIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bztcbn1cbi5jdF9faG9tZXBhZ2UgLm91ci1mYW1pbHlfX2xvZ29zIC5sb2dvLWxpbms6aG92ZXIge1xuICBvcGFjaXR5OiAwLjY7XG59XG4uY3RfX2hvbWVwYWdlIC5vdXItZmFtaWx5IC5lbnRpdHkge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4udmlld19fZXZlbnRzX2J5X3ZlbnVlIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLmN0X19ldmVudCAuYmFubmVyIHtcbiAgei1pbmRleDogNDtcbn1cbi5jdF9fZXZlbnQgLmV2ZW50LXN0aWNreSB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAxMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwYTFhYjtcbiAgd2lkdGg6IDEwMCU7XG59XG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLmN0X19ldmVudCAuZXZlbnQtc3RpY2t5IHtcbiAgICB0b3A6IGF1dG87XG4gICAgYm90dG9tOiAwO1xuICB9XG59XG4uY3RfX2V2ZW50IC5ldmVudC1zdGlja3lfX3N1YnRpdGxlIHtcbiAgbWFyZ2luLXRvcDogNXB4O1xuICBtYXgtd2lkdGg6IDc4MHB4O1xuICBwYWRkaW5nLXJpZ2h0OiA0NXB4O1xufVxuLmN0X19ldmVudCAuZXZlbnQtc3RpY2t5X19pbm5lciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgY29sb3I6ICNmZmY7XG59XG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLmN0X19ldmVudCAuZXZlbnQtc3RpY2t5X19pbm5lciB7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIH1cbn1cbi5jdF9fZXZlbnQgLmV2ZW50LXN0aWNreV9faW5uZXIgcCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLmN0X19ldmVudCAuZXZlbnQtc3RpY2t5X19pbm5lciBwIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG4uY3RfX2V2ZW50IC5ldmVudC1zdGlja3lfX2lubmVyIGEge1xuICBmb250LWZhbWlseTogXCJtb250c2VycmF0c2VtaWJvbGRcIiwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAzMHB4O1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAzMHB4O1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwYTFhYjtcbiAgcGFkZGluZzogMjRweCA1Mi41cHggMjMuMDc2OTIzMDc2OXB4IDI0cHg7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW4tcmlnaHQ6IDMwcHg7XG4gIHRyYW5zaXRpb246IGFsbCAwLjFzIGN1YmljLWJlemllcigwLjY0LCAwLjA0LCAwLjM1LCAxKTtcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgNHB4ICNmZmY7XG4gIHdpZHRoOiBjYWxjKDMzLjMzMzMlIC0gKDMwcHggKiAyKSk7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbWF4LXdpZHRoOiA0MDBweDtcbn1cbi5jdF9fZXZlbnQgLmV2ZW50LXN0aWNreV9faW5uZXIgYTo6YmVmb3JlLCAuY3RfX2V2ZW50IC5ldmVudC1zdGlja3lfX2lubmVyIGE6OmFmdGVyIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWcvaWNvbi1zbWlsZS5zdmdcIik7XG4gIGJhY2tncm91bmQtc2l6ZTogMjBweDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogNTAlIDU1JTtcbiAgY29udGVudDogXCJcIjtcbiAgYm9yZGVyOiA0cHggc29saWQgI2ZmZjtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDBhMWFiO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHdpZHRoOiA2NnB4O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICByaWdodDogLTMycHg7XG4gIHRyYW5zaXRpb246IGFsbCAwLjVzIGN1YmljLWJlemllcigwLjY0LCAwLjA0LCAwLjM1LCAxKTtcbiAgei1pbmRleDogMTtcbn1cbi5jdF9fZXZlbnQgLmV2ZW50LXN0aWNreV9faW5uZXIgYTo6YmVmb3JlIHtcbiAgYm9yZGVyOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTIyMTJiO1xuICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDhweCk7XG4gIHdpZHRoOiA1OHB4O1xuICB0b3A6IDRweDtcbiAgcmlnaHQ6IC0yOHB4O1xuICB6LWluZGV4OiAyO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpIHNjYWxlKDApO1xuICB0cmFuc2l0aW9uOiBhbGwgMC41cyBjdWJpYy1iZXppZXIoMC42NCwgMC4wNCwgMC4zNSwgMSk7XG59XG4uY3RfX2V2ZW50IC5ldmVudC1zdGlja3lfX2lubmVyIGE6aG92ZXIge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGNvbG9yOiAjZmZmO1xufVxuLmN0X19ldmVudCAuZXZlbnQtc3RpY2t5X19pbm5lciBhOmhvdmVyOjpiZWZvcmUge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgwKSBzY2FsZSgxKTtcbn1cbi5jdF9fZXZlbnQgLmV2ZW50LXN0aWNreV9faW5uZXIgYTpob3Zlcjo6YWZ0ZXIge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgtMzYwZGVnKTtcbn1cbi5jdF9fZXZlbnQgLmV2ZW50LXN0aWNreV9faW5uZXIgYTpmb2N1cyB7XG4gIG91dGxpbmUtY29sb3I6ICMxMjIxMmI7XG59XG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLmN0X19ldmVudCAuZXZlbnQtc3RpY2t5X19pbm5lciBhIHtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gKDMwcHggKiAyKSk7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtYXgtd2lkdGg6IDE1OTlweCkge1xuICAuY3RfX2V2ZW50IGgxLCAuY3RfX3ZlbnVlIGgxIHtcbiAgICBmb250LXNpemU6IDQ3cHg7XG4gICAgbGluZS1oZWlnaHQ6IDU3cHg7XG4gICAgbGV0dGVyLXNwYWNpbmc6IC0ycHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtYXgtd2lkdGg6IDE1OTlweCkgYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC5jdF9fZXZlbnQgaDEsIC5jdF9fdmVudWUgaDEge1xuICAgIGZvbnQtc2l6ZTogMzVweDtcbiAgICBsaW5lLWhlaWdodDogNDVweDtcbiAgICBsZXR0ZXItc3BhY2luZzogLTFweDtcbiAgfVxufVxuLmN0X19saXN0aW5nLXBhZ2UgaDEge1xuICBtYXJnaW46IDAgMCAyMHB4O1xuICBmb250LXNpemU6IDI5cHg7XG4gIGxpbmUtaGVpZ2h0OiAzOXB4O1xuICBsZXR0ZXItc3BhY2luZzogLTFweDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA1NzZweCkge1xuICAuY3RfX2xpc3RpbmctcGFnZSBoMSB7XG4gICAgZm9udC1zaXplOiA0N3B4O1xuICAgIGxpbmUtaGVpZ2h0OiA1N3B4O1xuICAgIGxldHRlci1zcGFjaW5nOiAtMnB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNTc2cHgpIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xuICAuY3RfX2xpc3RpbmctcGFnZSBoMSB7XG4gICAgZm9udC1zaXplOiAzNXB4O1xuICAgIGxpbmUtaGVpZ2h0OiA0NXB4O1xuICAgIGxldHRlci1zcGFjaW5nOiAtMXB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNTc2cHgpIGFuZCAobWF4LXdpZHRoOiA5OTFweCkge1xuICAuY3RfX2xpc3RpbmctcGFnZSBoMSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAuY3RfX2xpc3RpbmctcGFnZSBoMSB7XG4gICAgZm9udC1zaXplOiA3NnB4O1xuICAgIGxpbmUtaGVpZ2h0OiA4NnB4O1xuICAgIGxldHRlci1zcGFjaW5nOiAtM3B4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLmN0X19saXN0aW5nLXBhZ2UgaDEge1xuICAgIGZvbnQtc2l6ZTogNDdweDtcbiAgICBsaW5lLWhlaWdodDogNTdweDtcbiAgICBsZXR0ZXItc3BhY2luZzogLTJweDtcbiAgfVxufVxuQG1lZGlhIChtYXgtd2lkdGg6IDU3NXB4KSB7XG4gIC5jdF9fbGlzdGluZy1wYWdlIGgxIHNwYW4ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG4uY3RfX2xhbmRpbmctcGFnZSAuZm9vdGVyLCAuY3RfX2xpc3RpbmctcGFnZSAuZm9vdGVyIHtcbiAgbWFyZ2luLXRvcDogMjBweDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAuY3RfX2xhbmRpbmctcGFnZSAuZm9vdGVyLCAuY3RfX2xpc3RpbmctcGFnZSAuZm9vdGVyIHtcbiAgICBtYXJnaW4tdG9wOiA5MHB4O1xuICB9XG59XG5cbi5ub2RlLS10ZWFzZXIge1xuICBoZWlnaHQ6IDEwMCU7XG59XG5cbi50ZWFzZXIge1xuICBib3gtc2hhZG93OiAwIDAgMjBweCAwIHJnYmEoMTgsIDMzLCA0MywgMC4wOCk7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIHBhZGRpbmc6IDAgNDVweCA0NXB4O1xuICBoZWlnaHQ6IDEwMCU7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDMwcHg7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAzMHB4O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xufVxuQG1lZGlhIChtYXgtd2lkdGg6IDE1OTlweCkge1xuICAudGVhc2VyIHtcbiAgICBwYWRkaW5nOiAwIDMwcHggMzBweDtcbiAgfVxufVxuQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gIC50ZWFzZXIge1xuICAgIHBhZGRpbmc6IDAgMTVweCAxNXB4O1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDE1cHg7XG4gICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDE1cHg7XG4gIH1cbn1cbi50ZWFzZXJfX3RodW1iIHtcbiAgbWFyZ2luLWJvdHRvbTogNDVweDtcbiAgd2lkdGg6IGNhbGMoMTAwJSArIDQ1cHggKiAyKTtcbiAgbWFyZ2luLWxlZnQ6IC00NXB4O1xufVxuQG1lZGlhIChtYXgtd2lkdGg6IDE1OTlweCkge1xuICAudGVhc2VyX190aHVtYiB7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSArIDMwcHggKiAyKTtcbiAgICBtYXJnaW4tbGVmdDogLTMwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgfVxufVxuQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gIC50ZWFzZXJfX3RodW1iIHtcbiAgICB3aWR0aDogY2FsYygxMDAlICsgMzBweCk7XG4gICAgbWFyZ2luLWxlZnQ6IC0xNXB4O1xuICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gIH1cbn1cbi50ZWFzZXJfX3RodW1iIGltZyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhdXRvO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4ycyBlYXNlLWluLW91dDtcbn1cbi50ZWFzZXJfX3ZlbnVlIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi10b3A6IDEwcHg7XG59XG4udGVhc2VyX192ZW51ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlwiO1xuICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWcvbWFwLW1hcmtlci0yLnN2Z1wiKSBuby1yZXBlYXQgY2VudGVyIGNlbnRlcjtcbiAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICB3aWR0aDogMjRweDtcbiAgaGVpZ2h0OiAyNHB4O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi1yaWdodDogNXB4O1xufVxuLnRlYXNlcl9fY29udGVudCBwIHtcbiAgZm9udC1mYW1pbHk6IFwibW9udHNlcnJhdHJlZ3VsYXJcIiwgYXJpYWwsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMThweDtcbiAgbGluZS1oZWlnaHQ6IDMycHg7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG4udGVhc2VyX19jb250ZW50IC5wcmV0aXRsZSB7XG4gIGNvbG9yOiAjNmQ2ZTcxO1xufVxuLnRlYXNlcl9fYnV0dG9ucyB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tdG9wOiBhdXRvO1xuICBwYWRkaW5nLXRvcDogNDVweDtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB3aWR0aDogMTAwJTtcbn1cbkBtZWRpYSAobWF4LXdpZHRoOiAxNTk5cHgpIHtcbiAgLnRlYXNlcl9fYnV0dG9ucyB7XG4gICAgcGFkZGluZy10b3A6IDMwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xuICAudGVhc2VyX19idXR0b25zIHtcbiAgICBwYWRkaW5nLXRvcDogMTVweDtcbiAgfVxufVxuLnRlYXNlcl9fYnV0dG9ucyAubWFwLXBpbiB7XG4gIHN0cm9rZTogI2ZmZjtcbn1cbi50ZWFzZXJfX2J1dHRvbnMgYSB7XG4gIGZvbnQtZmFtaWx5OiBcIm1vbnRzZXJyYXRzZW1pYm9sZFwiLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTIyMTJiO1xuICBwYWRkaW5nOiAxMnB4O1xuICBsaW5lLWhlaWdodDogMTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBjdWJpYy1iZXppZXIoMC42NCwgMC4wNCwgMC4zNSwgMSk7XG4gIGJvcmRlcjogbm9uZTtcbn1cbi50ZWFzZXJfX2J1dHRvbnMgYTpob3ZlciwgLnRlYXNlcl9fYnV0dG9ucyBhOmZvY3VzLCAudGVhc2VyX19idXR0b25zIGEuYWN0aXZlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzZkNmU3MTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBjb2xvcjogI2ZmZjtcbn1cbi50ZWFzZXJfX2J1dHRvbnMgYTpmb2N1cyB7XG4gIG91dGxpbmUtY29sb3I6ICMxMjIxMmI7XG59XG4udGVhc2VyX19idXR0b25zIGE6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGNvbG9yOiAjMTIyMTJiO1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbn1cbi50ZWFzZXJfX2J1dHRvbnMgYTpmaXJzdC1sZXR0ZXIge1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuLnRlYXNlcjpob3ZlciwgLnRlYXNlcjpmb2N1cyB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cbi50ZWFzZXI6aG92ZXIgaW1nLCAudGVhc2VyOmZvY3VzIGltZyB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMC45KTtcbn1cblxuLnNpZGViYXItdGVhc2VyIHtcbiAgZm9udC1mYW1pbHk6IFwibW9udHNlcnJhdHJlZ3VsYXJcIiwgYXJpYWwsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMThweDtcbiAgbGluZS1oZWlnaHQ6IDMycHg7XG4gIGNvbG9yOiAjZmZmO1xufVxuLnNpZGViYXItdGVhc2VyIGg0IHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbi5zaWRlYmFyLXRlYXNlcjpob3ZlciB7XG4gIGNvbG9yOiAjMTIyMTJiO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbi8qKlxuICogUGFnZSAtIFVzZXJcbiAqL1xuLnVzZXIgLmZvb3Rlcixcbi5ib29rIC5mb290ZXIsXG4uY2hlY2tvdXQgLmZvb3Rlcixcbi5yZWdpc3RlciAuZm9vdGVyLFxuLm1lbWJlcnNoaXBzIC5mb290ZXIsXG4ubXktYWNjb3VudCAuZm9vdGVyLFxuLmJhc2tldCAuZm9vdGVyLFxuLnNpZ251cCAuZm9vdGVyLFxuLmJ1eS1naWZ0LXZvdWNoZXJzIC5mb290ZXIge1xuICBtYXJnaW4tdG9wOiA0MHB4O1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAudXNlciAuZm9vdGVyLFxuLmJvb2sgLmZvb3Rlcixcbi5jaGVja291dCAuZm9vdGVyLFxuLnJlZ2lzdGVyIC5mb290ZXIsXG4ubWVtYmVyc2hpcHMgLmZvb3Rlcixcbi5teS1hY2NvdW50IC5mb290ZXIsXG4uYmFza2V0IC5mb290ZXIsXG4uc2lnbnVwIC5mb290ZXIsXG4uYnV5LWdpZnQtdm91Y2hlcnMgLmZvb3RlciB7XG4gICAgbWFyZ2luLXRvcDogMTEwcHg7XG4gIH1cbn1cblxuLmJsYW5rIHtcbiAgYmFja2dyb3VuZDogbm9uZTtcbn0iLCIvKiEgbm9ybWFsaXplLmNzcyB2OC4wLjAgfCBNSVQgTGljZW5zZSB8IGdpdGh1Yi5jb20vbmVjb2xhcy9ub3JtYWxpemUuY3NzICovXG5cbi8qIERvY3VtZW50XG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIGxpbmUgaGVpZ2h0IGluIGFsbCBicm93c2Vycy5cbiAqIDIuIFByZXZlbnQgYWRqdXN0bWVudHMgb2YgZm9udCBzaXplIGFmdGVyIG9yaWVudGF0aW9uIGNoYW5nZXMgaW4gaU9TLlxuICovXG5cbmh0bWwge1xuICBsaW5lLWhlaWdodDogMS4yOyAvKiAxICovXG4gIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTsgLyogMiAqL1xufVxuXG4vKiBTZWN0aW9uc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxuYm9keSB7XG4gIG1hcmdpbjogMDtcbn1cblxuLyoqXG4gKiBDb3JyZWN0IHRoZSBmb250IHNpemUgYW5kIG1hcmdpbiBvbiBgaDFgIGVsZW1lbnRzIHdpdGhpbiBgc2VjdGlvbmAgYW5kXG4gKiBgYXJ0aWNsZWAgY29udGV4dHMgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgU2FmYXJpLlxuICovXG5cbmgxIHtcbiAgZm9udC1zaXplOiAyZW07XG4gIG1hcmdpbjogMC42N2VtIDA7XG59XG5cbi8qIEdyb3VwaW5nIGNvbnRlbnRcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gRmlyZWZveC5cbiAqIDIuIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UgYW5kIElFLlxuICovXG5cbmhyIHtcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7IC8qIDEgKi9cbiAgaGVpZ2h0OiAwOyAvKiAxICovXG4gIG92ZXJmbG93OiB2aXNpYmxlOyAvKiAyICovXG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgaW5oZXJpdGFuY2UgYW5kIHNjYWxpbmcgb2YgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAqIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5wcmUge1xuICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7IC8qIDEgKi9cbiAgZm9udC1zaXplOiAxZW07IC8qIDIgKi9cbn1cblxuLyogVGV4dC1sZXZlbCBzZW1hbnRpY3NcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogUmVtb3ZlIHRoZSBncmF5IGJhY2tncm91bmQgb24gYWN0aXZlIGxpbmtzIGluIElFIDEwLlxuICovXG5cbmEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuLyoqXG4gKiAxLiBSZW1vdmUgdGhlIGJvdHRvbSBib3JkZXIgaW4gQ2hyb21lIDU3LVxuICogMi4gQWRkIHRoZSBjb3JyZWN0IHRleHQgZGVjb3JhdGlvbiBpbiBDaHJvbWUsIEVkZ2UsIElFLCBPcGVyYSwgYW5kIFNhZmFyaS5cbiAqL1xuXG5hYmJyW3RpdGxlXSB7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7IC8qIDEgKi9cbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IC8qIDIgKi9cbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgZG90dGVkOyAvKiAyICovXG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGZvbnQgd2VpZ2h0IGluIENocm9tZSwgRWRnZSwgYW5kIFNhZmFyaS5cbiAqL1xuXG5iLFxuc3Ryb25nIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGRlcjtcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICogMi4gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbmNvZGUsXG5rYmQsXG5zYW1wIHtcbiAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlOyAvKiAxICovXG4gIGZvbnQtc2l6ZTogMWVtOyAvKiAyICovXG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxuc21hbGwge1xuICBmb250LXNpemU6IDgwJTtcbn1cblxuLyoqXG4gKiBQcmV2ZW50IGBzdWJgIGFuZCBgc3VwYCBlbGVtZW50cyBmcm9tIGFmZmVjdGluZyB0aGUgbGluZSBoZWlnaHQgaW5cbiAqIGFsbCBicm93c2Vycy5cbiAqL1xuXG5zdWIsXG5zdXAge1xuICBmb250LXNpemU6IDc1JTtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG5zdWIge1xuICBib3R0b206IC0wLjI1ZW07XG59XG5cbnN1cCB7XG4gIHRvcDogLTAuNWVtO1xufVxuXG4vKiBFbWJlZGRlZCBjb250ZW50XG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIFJlbW92ZSB0aGUgYm9yZGVyIG9uIGltYWdlcyBpbnNpZGUgbGlua3MgaW4gSUUgMTAuXG4gKi9cblxuaW1nIHtcbiAgYm9yZGVyLXN0eWxlOiBub25lO1xufVxuXG4vKiBGb3Jtc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiAxLiBDaGFuZ2UgdGhlIGZvbnQgc3R5bGVzIGluIGFsbCBicm93c2Vycy5cbiAqIDIuIFJlbW92ZSB0aGUgbWFyZ2luIGluIEZpcmVmb3ggYW5kIFNhZmFyaS5cbiAqL1xuXG5idXR0b24sXG5pbnB1dCxcbm9wdGdyb3VwLFxuc2VsZWN0LFxudGV4dGFyZWEge1xuICBmb250LWZhbWlseTogaW5oZXJpdDsgLyogMSAqL1xuICBmb250LXNpemU6IDEwMCU7IC8qIDEgKi9cbiAgbGluZS1oZWlnaHQ6IDEuMTU7IC8qIDEgKi9cbiAgbWFyZ2luOiAwOyAvKiAyICovXG59XG5cbi8qKlxuICogU2hvdyB0aGUgb3ZlcmZsb3cgaW4gSUUuXG4gKiAxLiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlLlxuICovXG5cbmJ1dHRvbixcbmlucHV0IHtcbiAgLyogMSAqL1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbn1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEVkZ2UsIEZpcmVmb3gsIGFuZCBJRS5cbiAqIDEuIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRmlyZWZveC5cbiAqL1xuXG5idXR0b24sXG5zZWxlY3Qge1xuICAvKiAxICovXG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xufVxuXG4vKipcbiAqIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG4gKi9cblxuYnV0dG9uLFxuW3R5cGU9XCJidXR0b25cIl0sXG5bdHlwZT1cInJlc2V0XCJdLFxuW3R5cGU9XCJzdWJtaXRcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjtcbn1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGlubmVyIGJvcmRlciBhbmQgcGFkZGluZyBpbiBGaXJlZm94LlxuICovXG5cbmJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwiYnV0dG9uXCJdOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJyZXNldFwiXTo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwic3VibWl0XCJdOjotbW96LWZvY3VzLWlubmVyIHtcbiAgYm9yZGVyLXN0eWxlOiBub25lO1xuICBwYWRkaW5nOiAwO1xufVxuXG4vKipcbiAqIFJlc3RvcmUgdGhlIGZvY3VzIHN0eWxlcyB1bnNldCBieSB0aGUgcHJldmlvdXMgcnVsZS5cbiAqL1xuXG5idXR0b246LW1vei1mb2N1c3JpbmcsXG5bdHlwZT1cImJ1dHRvblwiXTotbW96LWZvY3VzcmluZyxcblt0eXBlPVwicmVzZXRcIl06LW1vei1mb2N1c3JpbmcsXG5bdHlwZT1cInN1Ym1pdFwiXTotbW96LWZvY3VzcmluZyB7XG4gIG91dGxpbmU6IDFweCBkb3R0ZWQgQnV0dG9uVGV4dDtcbn1cblxuLyoqXG4gKiBDb3JyZWN0IHRoZSBwYWRkaW5nIGluIEZpcmVmb3guXG4gKi9cblxuZmllbGRzZXQge1xuICBwYWRkaW5nOiAwLjM1ZW0gMC43NWVtIDAuNjI1ZW07XG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgdGV4dCB3cmFwcGluZyBpbiBFZGdlIGFuZCBJRS5cbiAqIDIuIENvcnJlY3QgdGhlIGNvbG9yIGluaGVyaXRhbmNlIGZyb20gYGZpZWxkc2V0YCBlbGVtZW50cyBpbiBJRS5cbiAqIDMuIFJlbW92ZSB0aGUgcGFkZGluZyBzbyBkZXZlbG9wZXJzIGFyZSBub3QgY2F1Z2h0IG91dCB3aGVuIHRoZXkgemVybyBvdXRcbiAqICAgIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbmxlZ2VuZCB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8qIDEgKi9cbiAgY29sb3I6IGluaGVyaXQ7IC8qIDIgKi9cbiAgZGlzcGxheTogdGFibGU7IC8qIDEgKi9cbiAgbWF4LXdpZHRoOiAxMDAlOyAvKiAxICovXG4gIHBhZGRpbmc6IDA7IC8qIDMgKi9cbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDsgLyogMSAqL1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCB2ZXJ0aWNhbCBhbGlnbm1lbnQgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgT3BlcmEuXG4gKi9cblxucHJvZ3Jlc3Mge1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBkZWZhdWx0IHZlcnRpY2FsIHNjcm9sbGJhciBpbiBJRSAxMCsuXG4gKi9cblxudGV4dGFyZWEge1xuICBvdmVyZmxvdzogYXV0bztcbn1cblxuLyoqXG4gKiAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBJRSAxMC5cbiAqIDIuIFJlbW92ZSB0aGUgcGFkZGluZyBpbiBJRSAxMC5cbiAqL1xuXG5bdHlwZT1cImNoZWNrYm94XCJdLFxuW3R5cGU9XCJyYWRpb1wiXSB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8qIDEgKi9cbiAgcGFkZGluZzogMDsgLyogMiAqL1xufVxuXG4vKipcbiAqIENvcnJlY3QgdGhlIGN1cnNvciBzdHlsZSBvZiBpbmNyZW1lbnQgYW5kIGRlY3JlbWVudCBidXR0b25zIGluIENocm9tZS5cbiAqL1xuXG5bdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcblt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIG9kZCBhcHBlYXJhbmNlIGluIENocm9tZSBhbmQgU2FmYXJpLlxuICogMi4gQ29ycmVjdCB0aGUgb3V0bGluZSBzdHlsZSBpbiBTYWZhcmkuXG4gKi9cblxuW3R5cGU9XCJzZWFyY2hcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDsgLyogMSAqL1xuICBvdXRsaW5lLW9mZnNldDogLTJweDsgLyogMiAqL1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgaW5uZXIgcGFkZGluZyBpbiBDaHJvbWUgYW5kIFNhZmFyaSBvbiBtYWNPUy5cbiAqL1xuXG5bdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuICogMi4gQ2hhbmdlIGZvbnQgcHJvcGVydGllcyB0byBgaW5oZXJpdGAgaW4gU2FmYXJpLlxuICovXG5cbjo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsgLyogMSAqL1xuICBmb250OiBpbmhlcml0OyAvKiAyICovXG59XG5cbi8qIEludGVyYWN0aXZlXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gRWRnZSwgSUUgMTArLCBhbmQgRmlyZWZveC5cbiAqL1xuXG5kZXRhaWxzIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8qXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxuc3VtbWFyeSB7XG4gIGRpc3BsYXk6IGxpc3QtaXRlbTtcbn1cblxuLyogTWlzY1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSAxMCsuXG4gKi9cblxudGVtcGxhdGUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDEwLlxuICovXG5cbltoaWRkZW5dIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuKixcbio6OmFmdGVyLFxuKjo6YmVmb3JlIHtcbiAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG4iLCIvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gcmVmbGV4IHZhcmlhYmxlc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gUHJlZml4XG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBZb3UgY2FuIG9wdGlvbmFsbHkgbmFtZXNwYWNlIHJlZmxleCBjbGFzc2VzIHRvIGF2b2lkIGNsYXNoaW5nIHdpdGggb3RoZXIgY3NzIGZyYW1ld29ya3Ncbi8vIGUuZy4gc2V0dGluZyAkcmVmbGV4LXByZWZpeCBhcyBcInJlZmxleC1cIiBoZXJlIHdvdWxkIGNhdXNlIGNvbC1zbS02IHRvIGJlY29tZSByZWZsZXgtY29sLXNtLTZcbi8vIEV4YW1wbGU6ICRyZWZsZXgtcHJlZml4OiByZWZsZXgtO1xuLy8gQnkgZGVmYXVsdCB0aGlzIGlzIGFuIGVtcHR5IHN0cmluZ1xuJHJlZmxleC1wcmVmaXg6IG51bGwgIWRlZmF1bHQ7XG5cblxuLy8gTGVnYWN5IHN1cHBvcnRcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIFJlZmxleCBhZGRzIGEgbG90IG9mIGNzcyBwcm9wZXJ0aWUgdG8gc3VwcG9ydCBvbGRlciBicm93c2VycyB0aGF0IGRvbid0IHN1cHBvcnQgZmxleGJveCBsYXlvdXQuXG4vLyBJZiB5b3UgcHJlZmVyIHRvIHVzZSB0aGlzIGFzIGEgcHVyZWx5IGZsZXhib3ggZ3JpZCB3aXRob3V0IGxlZ2FjeSBzdXBwb3J0IHRoZW4gc2V0IHRoaXMgdG8gZmFsc2VcbiRsZWdhY3ktc3VwcG9ydDogdHJ1ZSAhZGVmYXVsdDtcblxuLy8gUmVzcG9uc2l2ZSB2aXNpYmlsaXR5IGhlbHBlcnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIFJlZmxleCBoYXMgc29tZSBnZW5lcmljIHZpc2liaWxpdHkgY2xhc3NlcyB0byBoaWRlIGVsZW1lbnRzIGF0IGRpZmZlcmVudCBicmVha3BvaW50cy5cbi8vIElmIHlvdSB3YW50IHRvIGRpc2FibGUgdGhlc2UgdGhlbiBzZXQgdGhpcyB0byBmYWxzZVxuJHZpc2liaWxpdHktaGVscGVyczogdHJ1ZSAhZGVmYXVsdDtcblxuLy8gR3JpZFxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuJHJlZmxleC1jb2x1bW5zOiAxMiAhZGVmYXVsdDsgLy8gbnVtYmVyIG9mIGNvbHVtbnNcblxuLy8gQnJlYWtwb2ludHNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiRyZWZsZXgteHM6IDU3NnB4ICFkZWZhdWx0O1xuJHJlZmxleC1zbTogNzY4cHggIWRlZmF1bHQ7XG4kcmVmbGV4LW1kOiA5OTJweCAhZGVmYXVsdDtcbiRyZWZsZXgtbGc6IDEyMDBweCAhZGVmYXVsdDtcbiRyZWZsZXgteGxnOiAxNjAwcHggIWRlZmF1bHQ7XG5cbiRyZWZsZXgteHhzLW1heDogKCRyZWZsZXgteHMgLSAxKTtcbiRyZWZsZXgteHMtbWF4OiAoJHJlZmxleC1zbSAtIDEpO1xuJHJlZmxleC1zbS1tYXg6ICgkcmVmbGV4LW1kIC0gMSk7XG4kcmVmbGV4LW1kLW1heDogKCRyZWZsZXgtbGcgLSAxKTtcbiRyZWZsZXgtbGctbWF4OiAoJHJlZmxleC14bGcgLSAxKTtcblxuJHJlZmxleC1icmVha3BvaW50czogKFxuICB4eHM6IDBweCxcbiAgeHM6ICRyZWZsZXgteHMsXG4gIHNtOiAkcmVmbGV4LXNtLFxuICBtZDogJHJlZmxleC1tZCxcbiAgbGc6ICRyZWZsZXgtbGcsXG4gIHhsZzogJHJlZmxleC14bGdcbik7XG5cbi8vIFNwYWNpbmdcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiRyZWZsZXgtZ3JpZC1zcGFjaW5nOiAxNXB4ICFkZWZhdWx0O1xuXG4vLyBDdXN0b20gcHJvcGVydGllcyBzbyBvdGhlcnMgY2FuIHJlZmVyZW5jZSB0aGUgdmFyaWFibGVzLlxuOnJvb3Qge1xuICAtLXJlZmxleC1jb2x1bW5zOiAjeyAkcmVmbGV4LWNvbHVtbnMgfTtcbiAgLS1yZWZsZXgtZ3JpZC1zcGFjaW5nOiAjeyAkcmVmbGV4LWdyaWQtc3BhY2luZyB9O1xuICAtLXJlZmxleC14czogI3sgJHJlZmxleC14cyB9O1xuICAtLXJlZmxleC1zbTogI3sgJHJlZmxleC1zbSB9O1xuICAtLXJlZmxleC1tZDogI3sgJHJlZmxleC1tZCB9O1xuICAtLXJlZmxleC1sZzogI3sgJHJlZmxleC1sZyB9O1xuICAtLXJlZmxleC14bGc6ICN7ICRyZWZsZXgteGxnIH07XG4gIC0tcmVmbGV4LXh4cy1tYXg6ICN7ICRyZWZsZXgteHhzLW1heCB9O1xuICAtLXJlZmxleC14cy1tYXg6ICN7ICRyZWZsZXgteHMtbWF4IH07XG4gIC0tcmVmbGV4LXNtLW1heDogI3sgJHJlZmxleC1zbS1tYXggfTtcbiAgLS1yZWZsZXgtbWQtbWF4OiAjeyAkcmVmbGV4LW1kLW1heCB9O1xuICAtLXJlZmxleC1sZy1tYXg6ICN7ICRyZWZsZXgtbGctbWF4IH07XG59XG4iLCIvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gcmVmbGV4IGNvbnRhaW5lcnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi4jeyRyZWZsZXgtcHJlZml4fWNvbnRhaW5lcixcbi4jeyRyZWZsZXgtcHJlZml4fWNvbnRhaW5lci1mdWxsIHtcbiAgICBAaW5jbHVkZSBib3gtc2l6aW5nKGJvcmRlci1ib3gpO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBwYWRkaW5nLXJpZ2h0OiAoJHJlZmxleC1ncmlkLXNwYWNpbmcgKiAyKTtcbiAgICBwYWRkaW5nLWxlZnQ6ICgkcmVmbGV4LWdyaWQtc3BhY2luZyAqIDIpO1xuXG4gICAgLiN7JHJlZmxleC1wcmVmaXh9Z3JpZCB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogLSRyZWZsZXgtZ3JpZC1zcGFjaW5nO1xuICAgICAgICBtYXJnaW4tbGVmdDogLSRyZWZsZXgtZ3JpZC1zcGFjaW5nO1xuICAgIH1cbn1cblxuLiN7JHJlZmxleC1wcmVmaXh9Y29udGFpbmVyIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHJlZmxleC14cykge1xuICAgICAgICBtYXgtd2lkdGg6ICRyZWZsZXgteHM7XG4gICAgfVxuXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRyZWZsZXgtc20pIHtcbiAgICAgICAgbWF4LXdpZHRoOiAkcmVmbGV4LXNtO1xuICAgIH1cblxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkcmVmbGV4LW1kKSB7XG4gICAgICAgIG1heC13aWR0aDogJHJlZmxleC1tZDtcbiAgICB9XG5cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHJlZmxleC1sZykge1xuICAgICAgICBtYXgtd2lkdGg6ICRyZWZsZXgtbGc7XG4gICAgfVxuXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRyZWZsZXgteGxnKSB7XG4gICAgICAgIG1heC13aWR0aDogJHJlZmxleC14bGc7XG4gICAgfVxufVxuXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gcmVmbGV4IGdyaWRcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi4jeyRyZWZsZXgtcHJlZml4fWdyaWQge1xuICAgIEBpbmNsdWRlIGJveC1zaXppbmcoYm9yZGVyLWJveCk7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgQGluY2x1ZGUgZGlzcGxheS1mbGV4KCk7XG4gICAgQGluY2x1ZGUgZmxleC13cmFwKCk7XG4gICAgcGFkZGluZzogMDtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgQGluY2x1ZGUgc2V0dXAtd2hpdGVzcGFjZSgpO1xuXG4gICAgJjo6YmVmb3JlLFxuICAgICY6OmFmdGVyIHtcbiAgICAgICAgQGluY2x1ZGUgYm94LXNpemluZyhib3JkZXItYm94KTtcbiAgICAgICAgQGluY2x1ZGUgcmVzZXQtd2hpdGVzcGFjZSgpO1xuICAgIH1cblxuICAgIC8vIGhhbmRsZSB3aGVuIGxpc3RzIGFyZSB1c2VkIGFzIGEgZ3JpZFxuICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbn1cblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIHJlZmxleCBjb2wgZGVmYXVsdHNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbltjbGFzcyo9XCIjeyRyZWZsZXgtcHJlZml4fWNvbC1cIl0ge1xuICAgIEBpbmNsdWRlIGJveC1zaXppbmcoYm9yZGVyLWJveCk7XG4gICAgQGluY2x1ZGUgcmVzZXQtd2hpdGVzcGFjZSgpO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgIHBhZGRpbmc6ICRyZWZsZXgtZ3JpZC1zcGFjaW5nO1xuXG4gICAgJjo6YmVmb3JlLFxuICAgICY6OmFmdGVyIHtcbiAgICAgICAgQGluY2x1ZGUgYm94LXNpemluZyhib3JkZXItYm94KTtcbiAgICAgICAgQGluY2x1ZGUgcmVzZXQtd2hpdGVzcGFjZSgpO1xuICAgIH1cblxuICAgIC8vIGhhbmRsZSBncmlkcyBuZXN0ZWQgaW4gY29sdW1uc1xuICAgIC4jeyRyZWZsZXgtcHJlZml4fWdyaWQge1xuICAgICAgICBAaW5jbHVkZSBmbGV4KDEsIDEsIGF1dG8pO1xuICAgICAgICBtYXJnaW46IC0kcmVmbGV4LWdyaWQtc3BhY2luZztcbiAgICB9XG5cbiAgICBAaWYgJGxlZ2FjeS1zdXBwb3J0ID09IHRydWUge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICpkaXNwbGF5OiBpbmxpbmU7XG4gICAgICAgIHpvb206IDE7XG4gICAgfVxufVxuXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gcmVmbGV4IGdyaWQgZ2VuZXJhdGlvblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuQGluY2x1ZGUgbWFrZS1yZWZsZXgtZ3JpZChjb2wtKTtcblxuQG1lZGlhIChtaW4td2lkdGg6ICRyZWZsZXgteHMpIHtcbiAgICBAaW5jbHVkZSBtYWtlLXJlZmxleC1ncmlkKGNvbC14cy0pO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogJHJlZmxleC1zbSkge1xuICAgIEBpbmNsdWRlIG1ha2UtcmVmbGV4LWdyaWQoY29sLXNtLSk7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiAkcmVmbGV4LW1kKSB7XG4gICAgQGluY2x1ZGUgbWFrZS1yZWZsZXgtZ3JpZChjb2wtbWQtKTtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6ICRyZWZsZXgtbGcpIHtcbiAgICBAaW5jbHVkZSBtYWtlLXJlZmxleC1ncmlkKGNvbC1sZy0pO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogJHJlZmxleC14bGcpIHtcbiAgICBAaW5jbHVkZSBtYWtlLXJlZmxleC1ncmlkKGNvbC14bGctKTtcbn1cblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIHJlZmxleCBjb2wtYXV0b1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLiN7JHJlZmxleC1wcmVmaXh9Y29sLWF1dG8ge1xuICAgIEBpbmNsdWRlIHNldHVwLWF1dG8tY29scygpO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogJHJlZmxleC14cykge1xuICAgIC4jeyRyZWZsZXgtcHJlZml4fWNvbC14cy1hdXRvIHtcbiAgICAgICAgQGluY2x1ZGUgc2V0dXAtYXV0by1jb2xzKCk7XG4gICAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogJHJlZmxleC1zbSkge1xuICAgIC4jeyRyZWZsZXgtcHJlZml4fWNvbC1zbS1hdXRvIHtcbiAgICAgICAgQGluY2x1ZGUgc2V0dXAtYXV0by1jb2xzKCk7XG4gICAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogJHJlZmxleC1tZCkge1xuICAgIC4jeyRyZWZsZXgtcHJlZml4fWNvbC1tZC1hdXRvIHtcbiAgICAgICAgQGluY2x1ZGUgc2V0dXAtYXV0by1jb2xzKCk7XG4gICAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogJHJlZmxleC1sZykge1xuICAgIC4jeyRyZWZsZXgtcHJlZml4fWNvbC1sZy1hdXRvIHtcbiAgICAgICAgQGluY2x1ZGUgc2V0dXAtYXV0by1jb2xzKCk7XG4gICAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogJHJlZmxleC14bGcpIHtcbiAgICAuI3skcmVmbGV4LXByZWZpeH1jb2wteGxnLWF1dG8ge1xuICAgICAgICBAaW5jbHVkZSBzZXR1cC1hdXRvLWNvbHMoKTtcbiAgICB9XG59XG5cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyByZWZsZXggb3JkZXIgaGVscGVycyBnZW5lcmF0aW9uXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5AaW5jbHVkZSBtYWtlLW9yZGVyLWhlbHBlcnMoKTtcblxuQG1lZGlhIChtaW4td2lkdGg6ICRyZWZsZXgteHMpIHtcbiAgICBAaW5jbHVkZSBsb29wLW9yZGVyLWhlbHBlcnMoJHJlZmxleC1jb2x1bW5zLCAnLXhzJyk7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiAkcmVmbGV4LXNtKSB7XG4gICAgQGluY2x1ZGUgbG9vcC1vcmRlci1oZWxwZXJzKCRyZWZsZXgtY29sdW1ucywgJy1zbScpO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogJHJlZmxleC1tZCkge1xuICAgIEBpbmNsdWRlIGxvb3Atb3JkZXItaGVscGVycygkcmVmbGV4LWNvbHVtbnMsICctbWQnKTtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6ICRyZWZsZXgtbGcpIHtcbiAgICBAaW5jbHVkZSBsb29wLW9yZGVyLWhlbHBlcnMoJHJlZmxleC1jb2x1bW5zLCAnLWxnJyk7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiAkcmVmbGV4LXhsZykge1xuICAgIEBpbmNsdWRlIGxvb3Atb3JkZXItaGVscGVycygkcmVmbGV4LWNvbHVtbnMsICcteGxnJyk7XG59XG5cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyByZWZsZXggb2Zmc2V0IGhlbHBlcnMgZ2VuZXJhdGlvblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuQGluY2x1ZGUgbWFrZS1vZmZzZXQtaGVscGVycygpO1xuXG5AbWVkaWEgKG1pbi13aWR0aDogJHJlZmxleC14cykge1xuICAgIEBpbmNsdWRlIGxvb3Atb2Zmc2V0LWhlbHBlcnMoJHJlZmxleC1jb2x1bW5zIC0gMSwgJy14cycpO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogJHJlZmxleC1zbSkge1xuICAgIEBpbmNsdWRlIGxvb3Atb2Zmc2V0LWhlbHBlcnMoJHJlZmxleC1jb2x1bW5zIC0gMSwgJy1zbScpO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogJHJlZmxleC1tZCkge1xuICAgIEBpbmNsdWRlIGxvb3Atb2Zmc2V0LWhlbHBlcnMoJHJlZmxleC1jb2x1bW5zIC0gMSwgJy1tZCcpO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogJHJlZmxleC1sZykge1xuICAgIEBpbmNsdWRlIGxvb3Atb2Zmc2V0LWhlbHBlcnMoJHJlZmxleC1jb2x1bW5zIC0gMSwgJy1sZycpO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogJHJlZmxleC14bGcpIHtcbiAgICBAaW5jbHVkZSBsb29wLW9mZnNldC1oZWxwZXJzKCRyZWZsZXgtY29sdW1ucyAtIDEsICcteGxnJyk7XG59XG4iLCIvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gcmVmbGV4IG1peGluc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gcmVmbGV4IGdyaWQgZ2VuZXJhdGlvbiBtaXhpbnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbkBtaXhpbiBtYWtlLXJlZmxleC1ncmlkKCRjbGFzcykge1xuICAgIEBpbmNsdWRlIGxvb3AtcmVmbGV4LWNvbHVtbnMoJHJlZmxleC1jb2x1bW5zLCAkY2xhc3MsIHdpZHRoKTtcbn1cblxuQG1peGluIGNhbGMtcmVmbGV4LWNvbHVtbnMoJGluZGV4LCAkY2xhc3MsICR0eXBlKSB7XG4gICAgQGlmICR0eXBlID09IHdpZHRoIGFuZCAkaW5kZXggPiAwIHtcbiAgICAgICAgLiN7JHJlZmxleC1wcmVmaXh9I3skY2xhc3N9I3skaW5kZXh9IHtcbiAgICAgICAgICAgIHdpZHRoOiBwZXJjZW50YWdlKCgkaW5kZXggLyAkcmVmbGV4LWNvbHVtbnMpKTtcbiAgICAgICAgICAgIEBpZiAkbGVnYWN5LXN1cHBvcnQgPT0gdHJ1ZSB7XG4gICAgICAgICAgICAgICAgKndpZHRoOiBwZXJjZW50YWdlKCgkaW5kZXggLyAkcmVmbGV4LWNvbHVtbnMpKSAtIC4xOyAvLyBpZTcgY3NzIGhhY2tcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuQG1peGluIGxvb3AtcmVmbGV4LWNvbHVtbnMoJGluZGV4LCAkY2xhc3MsICR0eXBlKSB7XG4gICAgQGlmICRpbmRleCA+PSAwIHtcbiAgICAgICAgQGluY2x1ZGUgY2FsYy1yZWZsZXgtY29sdW1ucygkaW5kZXgsICRjbGFzcywgJHR5cGUpO1xuICAgICAgICAvLyBuZXh0IGl0ZXJhdGlvblxuICAgICAgICBAaW5jbHVkZSBsb29wLXJlZmxleC1jb2x1bW5zKCgkaW5kZXggLSAxKSwgJGNsYXNzLCAkdHlwZSk7XG4gICAgfVxufVxuXG4vLyBkZWZhdWx0cyBmb3IgYXV0byBjb2xzXG5AbWl4aW4gc2V0dXAtYXV0by1jb2xzKCkge1xuICAgIEBpbmNsdWRlIGZsZXgoMSwgMCwgMHB4KTsgLy8gYSB1bml0IG9uIGxhc3QgdmFsdWUgaXMgcmVxdWlyZWQgYnkgSUUxMC0xMVxuXG4gICAgQGlmICRsZWdhY3ktc3VwcG9ydCA9PSB0cnVlIHtcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgfVxufVxuXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gaW5saW5lLWJsb2NrIHNwZWNpZmljIG1peGluc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuQG1peGluIHNldHVwLXdoaXRlc3BhY2UoKSB7XG4gICAgQGlmICRsZWdhY3ktc3VwcG9ydCA9PSB0cnVlIHtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC0uMzFlbTtcbiAgICAgICAgKmxldHRlci1zcGFjaW5nOiBub3JtYWw7XG4gICAgICAgIHdvcmQtc3BhY2luZzogLS40M2VtO1xuICAgIH1cbn1cblxuQG1peGluIHJlc2V0LXdoaXRlc3BhY2UoKSB7XG4gICAgQGlmICRsZWdhY3ktc3VwcG9ydCA9PSB0cnVlIHtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDtcbiAgICAgICAgd29yZC1zcGFjaW5nOiBub3JtYWw7XG4gICAgICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gICAgfVxufVxuXG5AbWl4aW4gcmVzZXQtdGV4dC1hbGlnbigpIHtcbiAgICAvL1xuICAgIC8vIFdlIHdhbnQgdG8gcmVzZXQgYW55IHRleHQtYWxpZ24gcHJvcGVydGllcyBzZXQgYnkgdGhlIGdyaWRcbiAgICAvLyAocmVxdWlyZWQgZm9yIHRoZSBpbmxpbmUtYmxvY2sgZmFsbGJhY2spXG4gICAgLy8gYnV0IHdlIGRvbid0IHdhbnQgdG8gb3ZlcnJpZGUgYW55IHRleHQtYWxpZ24gcHJvcGVydGllc1xuICAgIC8vIHNldCBvbiB0aGUgaW5kaXZpZHVhbCBjb2wteCBlbGVtZW50XG4gICAgLy8gb3Igb24gYW55IG9mIGl0J3MgY2hpbGQgZWxlbWVudHNcbiAgICAvL1xuICAgIC8vIDEpIHNldCB0byBsZWZ0IGJ5IGRlZmF1bHQgKHdvcmtzIGV2ZXJ5d2hlcmUpXG4gICAgLy8gMikgc2V0IHRvIHN0YXJ0IChyZXNwZWN0cyByaWdodCB0byBsZWZ0IHRleHQpXG4gICAgLy9cbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIHRleHQtYWxpZ246IHN0YXJ0O1xuICAgIC1tb3otdGV4dC1hbGlnbi1sYXN0OiBsZWZ0O1xuICAgIC1tb3otdGV4dC1hbGlnbi1sYXN0OiBzdGFydDtcbiAgICB0ZXh0LWFsaWduLWxhc3Q6IGxlZnQ7XG4gICAgdGV4dC1hbGlnbi1sYXN0OiBzdGFydDtcbn1cblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIG9yZGVyIGNsYXNzIGdlbmVyYXRpb24gbWl4aW5zXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5AbWl4aW4gb3JkZXIoJG9yZGVyOiAwKSB7XG4gICAgLW1zLWZsZXgtb3JkZXI6ICRvcmRlcjtcbiAgICAtd2Via2l0LW9yZGVyOiAkb3JkZXI7XG4gICAgb3JkZXI6ICRvcmRlcjtcbn1cblxuQG1peGluIG1ha2Utb3JkZXItaGVscGVycygpIHtcbiAgICBAaW5jbHVkZSBsb29wLW9yZGVyLWhlbHBlcnMoJHJlZmxleC1jb2x1bW5zKTtcbn1cblxuQG1peGluIGxvb3Atb3JkZXItaGVscGVycygkaW5kZXgsICRicmVha3BvaW50OiBudWxsKSB7XG4gICAgQGlmICRpbmRleCA+PSAwIHtcbiAgICAgICAgLiN7JHJlZmxleC1wcmVmaXh9b3JkZXIjeyRicmVha3BvaW50fS0jeyRpbmRleH0ge1xuICAgICAgICAgICAgQGluY2x1ZGUgb3JkZXIoJGluZGV4KTtcbiAgICAgICAgfVxuICAgICAgICAvLyBuZXh0IGl0ZXJhdGlvblxuICAgICAgICBAaW5jbHVkZSBsb29wLW9yZGVyLWhlbHBlcnMoKCRpbmRleCAtIDEpLCAkYnJlYWtwb2ludCk7XG4gICAgfVxufVxuXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gb2Zmc2V0IGNsYXNzIGdlbmVyYXRpb24gbWl4aW5zXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuQG1peGluIG9mZnNldCgkaW5kZXg6IDApIHtcbiAgICAkb2Zmc2V0OiAoJGluZGV4IC8gJHJlZmxleC1jb2x1bW5zKTtcbiAgICAvLyBjb252ZXJ0IHRvIHBlcmNlbnRhZ2Ugb25seSBpZiBub3QgemVyb1xuICAgIEBpZiAkb2Zmc2V0ICE9IDAge1xuICAgICAgICAkb2Zmc2V0OiBwZXJjZW50YWdlKCRvZmZzZXQpO1xuICAgIH1cbiAgICBtYXJnaW4tbGVmdDogJG9mZnNldDtcbiAgICBAaWYgJGxlZ2FjeS1zdXBwb3J0ID09IHRydWUge1xuICAgICAgICAqbWFyZ2luLWxlZnQ6IHBlcmNlbnRhZ2UoKCRpbmRleCAvICRyZWZsZXgtY29sdW1ucykpIC0gLjE7IC8vIGllNyBjc3MgaGFja1xuICAgIH1cbn1cblxuQG1peGluIG1ha2Utb2Zmc2V0LWhlbHBlcnMoKSB7XG4gICAgQGluY2x1ZGUgbG9vcC1vZmZzZXQtaGVscGVycygkcmVmbGV4LWNvbHVtbnMgLSAxKTtcbn1cblxuQG1peGluIGxvb3Atb2Zmc2V0LWhlbHBlcnMoJGluZGV4LCAkYnJlYWtwb2ludDogbnVsbCkge1xuICAgIEBpZiAkaW5kZXggPiAwIGFuZCAkYnJlYWtwb2ludCA9PSBudWxsIHtcbiAgICAgICAgLiN7JHJlZmxleC1wcmVmaXh9b2Zmc2V0I3skYnJlYWtwb2ludH0tI3skaW5kZXh9IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIG9mZnNldCgkaW5kZXgpO1xuICAgICAgICB9XG4gICAgICAgIC8vIG5leHQgaXRlcmF0aW9uXG4gICAgICAgIEBpbmNsdWRlIGxvb3Atb2Zmc2V0LWhlbHBlcnMoKCRpbmRleCAtIDEpLCAkYnJlYWtwb2ludCk7XG4gICAgfSBAZWxzZSBpZiAkaW5kZXggPj0gMCBhbmQgJGJyZWFrcG9pbnQgIT0gbnVsbCB7XG4gICAgICAgIC4jeyRyZWZsZXgtcHJlZml4fW9mZnNldCN7JGJyZWFrcG9pbnR9LSN7JGluZGV4fSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBvZmZzZXQoJGluZGV4KTtcbiAgICAgICAgfVxuICAgICAgICAvLyBuZXh0IGl0ZXJhdGlvblxuICAgICAgICBAaW5jbHVkZSBsb29wLW9mZnNldC1oZWxwZXJzKCgkaW5kZXggLSAxKSwgJGJyZWFrcG9pbnQpO1xuICAgIH1cbn1cblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIHJlZmxleCBtb2RpZmllciBtaXhpbnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vXG4vLyBkaXNwbGF5XG4vLyAtLS1cblxuQG1peGluIGRpc3BsYXktZmxleCgpIHtcbiAgICBkaXNwbGF5OiAtbXMtZmxleGJveDtcbiAgICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7XG4gICAgZGlzcGxheTogZmxleDtcbn1cblxuLy9cbi8vIGZsZXhcbi8vIC0tLVxuXG5AbWl4aW4gZmxleCgkZ3JvdzogMCwgJHNocmluazogMSwgJGJhc2lzOiBhdXRvKSB7XG4gICAgQGlmICRiYXNpcyA9PSAwIHtcbiAgICAgICAgLW1zLWZsZXg6ICRncm93ICRzaHJpbmsgYXV0bzsgLy9pZTEwIG5lZWRzIGF1dG9cbiAgICB9IEBlbHNlIHtcbiAgICAgICAgLW1zLWZsZXg6ICRncm93ICRzaHJpbmsgJGJhc2lzO1xuICAgIH1cblxuICAgIC13ZWJraXQtZmxleDogJGdyb3cgJHNocmluayAkYmFzaXM7XG4gICAgZmxleDogJGdyb3cgJHNocmluayAkYmFzaXM7XG59XG5cbkBtaXhpbiBmbGV4LWdyb3coJGdyb3c6MSkge1xuICAgIC1tcy1mbGV4LXBvc2l0aXZlOiAkZ3JvdztcbiAgICAtd2Via2l0LWZsZXgtZ3JvdzogJGdyb3c7XG4gICAgZmxleC1ncm93OiAkZ3Jvdztcbn1cblxuQG1peGluIGZsZXgtc2hyaW5rKCRzaHJpbms6MSkge1xuICAgIC1tcy1mbGV4LW5lZ2F0aXZlOiAkc2hyaW5rO1xuICAgIC13ZWJraXQtZmxleC1zaHJpbms6ICRzaHJpbms7XG4gICAgZmxleC1zaHJpbms6ICRzaHJpbms7XG59XG5cbkBtaXhpbiBmbGV4LWJhc2lzKCRiYXNpczphdXRvKSB7XG4gICAgLW1zLWZsZXgtcHJlZmVycmVkLXNpemU6ICRiYXNpcztcbiAgICAtd2Via2l0LWZsZXgtYmFzaXM6ICRiYXNpcztcbiAgICBmbGV4LWJhc2lzOiAkYmFzaXM7XG59XG5cbkBtaXhpbiBmbGV4LWZsb3coJGRpcmVjdGlvbjogcm93LCAkd3JhcDogbm93cmFwKSB7XG4gICAgLW1zLWZsZXgtd3JhcDogJHdyYXA7XG4gICAgLW1zLWZsZXgtZGlyZWN0aW9uOiAkZGlyZWN0aW9uO1xuICAgIC13ZWJraXQtZmxleC1mbG93OiAkZGlyZWN0aW9uICR3cmFwO1xuICAgIGZsZXgtZmxvdzogJGRpcmVjdGlvbiAkd3JhcDtcbn1cblxuQG1peGluIGZsZXgtd3JhcCgkd3JhcDogd3JhcCkge1xuICAgIC1tcy1mbGV4LXdyYXA6ICR3cmFwO1xuICAgIC13ZWJraXQtZmxleC13cmFwOiAkd3JhcDtcbiAgICBmbGV4LXdyYXA6ICR3cmFwO1xufVxuXG5AbWl4aW4gZmxleC1kaXJlY3Rpb24oJGRpcmVjdGlvbjogcm93KSB7XG4gICAgLW1zLWZsZXgtZGlyZWN0aW9uOiAkZGlyZWN0aW9uO1xuICAgIC13ZWJraXQtZmxleC1kaXJlY3Rpb246ICRkaXJlY3Rpb247XG4gICAgZmxleC1kaXJlY3Rpb246ICRkaXJlY3Rpb247XG59XG5cbi8vXG4vLyBhbGlnblxuLy8gLS0tXG5cbkBtaXhpbiBhbGlnbi1pdGVtcygkYWxpZ246IHN0cmV0Y2gpIHtcbiAgICBAaW5jbHVkZSBtcy1hbGlnbi1pdGVtcygkYWxpZ24pO1xuICAgIC13ZWJraXQtYWxpZ24taXRlbXM6ICRhbGlnbjtcbiAgICBhbGlnbi1pdGVtczogJGFsaWduO1xufVxuXG5AbWl4aW4gYWxpZ24tc2VsZigkYWxpZ246IHN0cmV0Y2gpIHtcbiAgICBAaW5jbHVkZSBtcy1hbGlnbi1zZWxmKCRhbGlnbik7XG4gICAgLXdlYmtpdC1hbGlnbi1zZWxmOiAkYWxpZ247XG4gICAgYWxpZ24tc2VsZjogJGFsaWduO1xufVxuXG5AbWl4aW4gYWxpZ24tY29udGVudCgkYWxpZ246IHN0cmV0Y2gpIHtcbiAgICBAaW5jbHVkZSBtcy1hbGlnbi1jb250ZW50KCRhbGlnbik7XG4gICAgLXdlYmtpdC1hbGlnbi1jb250ZW50OiAkYWxpZ247XG4gICAgYWxpZ24tY29udGVudDogJGFsaWduO1xufVxuXG4vL1xuLy8gaWUxMCBzeW50YXggZm9yIGFsaWduXG4vLyAtLS1cblxuQG1peGluIG1zLWFsaWduLWl0ZW1zKCRhbGlnbikge1xuICAgIEBpZiAkYWxpZ24gPT0gJ2ZsZXgtc3RhcnQnIHtcbiAgICAgICAgLW1zLWZsZXgtYWxpZ246IHN0YXJ0O1xuICAgIH0gQGVsc2UgaWYgJGFsaWduID09ICdmbGV4LWVuZCcge1xuICAgICAgICAtbXMtZmxleC1hbGlnbjogZW5kO1xuICAgIH0gQGVsc2Uge1xuICAgICAgICAtbXMtZmxleC1hbGlnbjogJGFsaWduO1xuICAgIH1cbn1cblxuQG1peGluIG1zLWFsaWduLXNlbGYoJGFsaWduKSB7XG4gICAgQGlmICRhbGlnbiA9PSAnZmxleC1zdGFydCcge1xuICAgICAgICAtbXMtZmxleC1pdGVtLWFsaWduOiBzdGFydDtcbiAgICB9IEBlbHNlIGlmICRhbGlnbiA9PSAnZmxleC1lbmQnIHtcbiAgICAgICAgLW1zLWZsZXgtaXRlbS1hbGlnbjogZW5kO1xuICAgIH0gQGVsc2Uge1xuICAgICAgICAtbXMtZmxleC1pdGVtLWFsaWduOiAkYWxpZ247XG4gICAgfVxufVxuXG5AbWl4aW4gbXMtYWxpZ24tY29udGVudCgkYWxpZ24pIHtcbiAgICBAaWYgJGFsaWduID09ICdmbGV4LXN0YXJ0JyB7XG4gICAgICAgIC1tcy1mbGV4LWxpbmUtcGFjazogc3RhcnQ7XG4gICAgfSBAZWxzZSBpZiAkYWxpZ24gPT0gJ2ZsZXgtZW5kJyB7XG4gICAgICAgIC1tcy1mbGV4LWxpbmUtcGFjazogZW5kO1xuICAgIH0gQGVsc2UgaWYgJGFsaWduID09ICdzcGFjZS1iZXR3ZWVuJyB7XG4gICAgICAgIC1tcy1mbGV4LWxpbmUtcGFjazoganVzdGlmeTtcbiAgICB9IEBlbHNlIGlmICRhbGlnbiA9PSAnc3BhY2UtYXJvdW5kJyB7XG4gICAgICAgIC1tcy1mbGV4LWxpbmUtcGFjazogZGlzdHJpYnV0ZTtcbiAgICB9IEBlbHNlIHtcbiAgICAgICAgLW1zLWZsZXgtbGluZS1wYWNrOiAkYWxpZ247XG4gICAgfVxufVxuXG4vL1xuLy8ganVzdGlmeS1jb250ZW50XG4vL1xuLy8gVXNlcyBcInRleHQtYWxpZ25cIiBmb3IgdGhlIGZhbGxiYWNrIGlubGluZS1ibG9jayBncmlkXG4vLyBcInRleHQtYWxpZ25cIiBpcyBnbG9iYWxseSBzdXBwb3J0ZWQgYW5kIHdvcmtzIG9uIGFsbCByb3dzIGV4Y2VwdCB0aGUgbGFzdFxuLy8gXCJ0ZXh0LWFsaWduLWxhc3RcIiwgd2hlcmUgc3VwcG9ydGVkLCBoYW5kbGVzIHRoZSBsYXN0IGxpbmUgKGFuZCwgaGFwcGlseSwgZ3JpZHMgd2l0aCBvbmx5IG9uZSByb3cpXG4vLyAtLS1cblxuQG1peGluIGp1c3RpZnktY29udGVudC1zdGFydCgpIHtcbiAgICAtbXMtZmxleC1wYWNrOiBzdGFydDtcbiAgICAtd2Via2l0LWp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG59XG5cbkBtaXhpbiBqdXN0aWZ5LWNvbnRlbnQtZW5kKCkge1xuICAgIC1tcy1mbGV4LXBhY2s6IGVuZDtcbiAgICAtd2Via2l0LWp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbn1cblxuQG1peGluIGp1c3RpZnktY29udGVudC1jZW50ZXIoKSB7XG4gICAgLW1zLWZsZXgtcGFjazogY2VudGVyO1xuICAgIC13ZWJraXQtanVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG59XG5cbkBtaXhpbiBqdXN0aWZ5LWNvbnRlbnQtc3BhY2UtYmV0d2VlbigpIHtcbiAgICAtbXMtZmxleC1wYWNrOiBqdXN0aWZ5O1xuICAgIC13ZWJraXQtanVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcbn1cblxuQG1peGluIGp1c3RpZnktY29udGVudC1zcGFjZS1hcm91bmQoKSB7XG4gICAgLW1zLWZsZXgtcGFjazogZGlzdHJpYnV0ZTtcbiAgICAtd2Via2l0LWp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kO1xufVxuXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gUmVzcG9uc2libGUgVmlzaWJpbGl0eVxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuQG1peGluIHJlc3BvbnNpdmUtdmlzaWJpbGl0eS1oZWxwZXJzKCkge1xuICAgIEBpZiAkdmlzaWJpbGl0eS1oZWxwZXJzID09IHRydWUge1xuICAgICAgICAvLyBXZSBuZWVkIHRvIGhhbmRsZSB4eHMgYW5kIHhsZyBicmVha3BvaW50cyBkaWZmZXJlbnRseVxuICAgICAgICAkbWFwLXJlZmxleC1icmVha3BvaW50czogbWFwLXJlbW92ZSgkcmVmbGV4LWJyZWFrcG9pbnRzLCB4eHMsIHhsZyk7XG5cbiAgICAgICAgLiN7JHJlZmxleC1wcmVmaXh9aGlkZGVuLXh4cyB7XG4gICAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LW9ubHkoJ3h4cycpIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgQGVhY2ggJGJwIGluIG1hcC1rZXlzKCRtYXAtcmVmbGV4LWJyZWFrcG9pbnRzKSB7XG4gICAgICAgICAgICAuI3skcmVmbGV4LXByZWZpeH1oaWRkZW4tI3skYnB9LXVwIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicCkge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgXG5cbiAgICAgICAgICAgIC4jeyRyZWZsZXgtcHJlZml4fWhpZGRlbi0jeyRicH0tZG93biB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKCRicCkge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLiN7JHJlZmxleC1wcmVmaXh9aGlkZGVuLSN7JGJwfSB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1vbmx5KCRicCkge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC4jeyRyZWZsZXgtcHJlZml4fWhpZGRlbi14bGcge1xuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1vbmx5KCd4bGcnKSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLy8gQnJlYWtwb2ludCB2aWV3cG9ydCBzaXplcyBhbmQgbWVkaWEgcXVlcmllcy5cbi8vXG4vLyBCcmVha3BvaW50cyBhcmUgZGVmaW5lZCBhcyBhIG1hcCBvZiAobmFtZTogbWluaW11bSB3aWR0aCksIG9yZGVyIGZyb20gc21hbGwgdG8gbGFyZ2U6XG4vLyAoeHM6IDU3NnB4LCBzbTogNzY4cHgsIG1kOiA5OTJweClcbi8vIFRoZSBtYXAgZGVmaW5lZCBpbiB0aGUgYCRyZWZsZXgtYnJlYWtwb2ludHNgIGdsb2JhbCB2YXJpYWJsZSBpcyB1c2VkIGFzIHRoZSBgJGJyZWFrcG9pbnRzYCBhcmd1bWVudCBieSBkZWZhdWx0LlxuLy8gTmFtZSBvZiB0aGUgbmV4dCBicmVha3BvaW50LCBvciBudWxsIGZvciB0aGUgbGFzdCBicmVha3BvaW50LlxuLy8gPj4gYnJlYWtwb2ludC1uZXh0KHNtKSAtPiBtZFxuLy8gPj4gYnJlYWtwb2ludC1uZXh0KHNtLCAkYnJlYWtwb2ludHM6ICh4czogNTc2cHgsIHNtOiA3NjhweCwgbWQ6IDk5MnB4KSkgLT4gbWRcbi8vID4+IGJyZWFrcG9pbnQtbmV4dChzbSwgJGJyZWFrcG9pbnQtbmFtZXM6ICh4cyBzbSBtZCkpIC0+IG1kXG5AZnVuY3Rpb24gYnJlYWtwb2ludC1uZXh0KCRuYW1lLCAkYnJlYWtwb2ludHM6ICRyZWZsZXgtYnJlYWtwb2ludHMsICRicmVha3BvaW50LW5hbWVzOiBtYXAta2V5cygkYnJlYWtwb2ludHMpKSB7XG4gICAgJG46IGluZGV4KCRicmVha3BvaW50LW5hbWVzLCAkbmFtZSk7XG4gICAgQHJldHVybiBpZigkbiA8IGxlbmd0aCgkYnJlYWtwb2ludC1uYW1lcyksIG50aCgkYnJlYWtwb2ludC1uYW1lcywgJG4gKyAxKSwgbnVsbCk7XG59XG5cbi8vIE1pbmltdW0gYnJlYWtwb2ludCB3aWR0aC4gTnVsbCBmb3IgdGhlIHNtYWxsZXN0IChmaXJzdCkgYnJlYWtwb2ludC5cbi8vID4+IGJyZWFrcG9pbnQtbWluKHNtLCAoeHM6IDU3NnB4LCBzbTogNzY4cHgsIG1kOiA5OTJweCkpIC0+IDc2OHB4XG5AZnVuY3Rpb24gYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50czogJHJlZmxleC1icmVha3BvaW50cykge1xuICAgICRtaW46IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkbmFtZSk7XG4gICAgQHJldHVybiBpZigkbWluICE9MCwgJG1pbiwgbnVsbCk7XG59XG5cbi8vIE1heGltdW0gYnJlYWtwb2ludCB3aWR0aC4gTnVsbCBmb3IgdGhlIGxhcmdlc3QgKGxhc3QpIGJyZWFrcG9pbnQuXG4vLyBUaGUgbWF4aW11bSB2YWx1ZSBpcyBjYWxjdWxhdGVkIGFzIHRoZSBtaW5pbXVtIG9mIHRoZSBuZXh0IG9uZSBsZXNzIDAuMS5cbi8vID4+IGJyZWFrcG9pbnQtbWF4KHNtLCAoeHM6IDU3NnB4LCBzbTogNzY4cHgsIG1kOiA5OTJweCkpIC0+IDk5MXB4XG5AZnVuY3Rpb24gYnJlYWtwb2ludC1tYXgoJG5hbWUsICRicmVha3BvaW50czogJHJlZmxleC1icmVha3BvaW50cykge1xuICAgICRuZXh0OiBicmVha3BvaW50LW5leHQoJG5hbWUsICRicmVha3BvaW50cyk7XG4gICAgQHJldHVybiBpZigkbmV4dCwgYnJlYWtwb2ludC1taW4oJG5leHQsICRicmVha3BvaW50cykgLSAxLCBudWxsKTtcbn1cblxuLy8gTWVkaWEgb2YgYXQgbGVhc3QgdGhlIG1pbmltdW0gYnJlYWtwb2ludCB3aWR0aC4gTm8gcXVlcnkgZm9yIHRoZSBzbWFsbGVzdCBicmVha3BvaW50LlxuLy8gTWFrZXMgdGhlIEBjb250ZW50IGFwcGx5IHRvIHRoZSBnaXZlbiBicmVha3BvaW50IGFuZCB3aWRlci5cbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LXVwKCRuYW1lLCAkYnJlYWtwb2ludHM6ICRyZWZsZXgtYnJlYWtwb2ludHMpIHtcbiAgICAkbWluOiBicmVha3BvaW50LW1pbigkbmFtZSwgJGJyZWFrcG9pbnRzKTtcblxuICAgIEBpZiAkbWluIHtcbiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6ICRtaW4pIHtcbiAgICAgICAgICAgIEBjb250ZW50O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGVsc2Uge1xuICAgICAgICBAY29udGVudDtcbiAgICB9XG59XG5cbi8vIE1lZGlhIG9mIGF0IG1vc3QgdGhlIG1heGltdW0gYnJlYWtwb2ludCB3aWR0aC4gTm8gcXVlcnkgZm9yIHRoZSBsYXJnZXN0IGJyZWFrcG9pbnQuXG4vLyBNYWtlcyB0aGUgQGNvbnRlbnQgYXBwbHkgdG8gdGhlIGdpdmVuIGJyZWFrcG9pbnQgYW5kIG5hcnJvd2VyLlxuQG1peGluIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkbmFtZSwgJGJyZWFrcG9pbnRzOiAkcmVmbGV4LWJyZWFrcG9pbnRzKSB7XG4gICAgJG1heDogYnJlYWtwb2ludC1tYXgoJG5hbWUsICRicmVha3BvaW50cyk7XG5cbiAgICBAaWYgJG1heCB7XG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbWF4KSB7XG4gICAgICAgICAgICBAY29udGVudDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBlbHNlIHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgfVxufVxuXG4vLyBNZWRpYSBiZXR3ZWVuIHRoZSBicmVha3BvaW50J3MgbWluaW11bSBhbmQgbWF4aW11bSB3aWR0aHMuXG4vLyBObyBtaW5pbXVtIGZvciB0aGUgc21hbGxlc3QgYnJlYWtwb2ludCwgYW5kIG5vIG1heGltdW0gZm9yIHRoZSBsYXJnZXN0IG9uZS5cbi8vIE1ha2VzIHRoZSBAY29udGVudCBhcHBseSBvbmx5IHRvIHRoZSBnaXZlbiBicmVha3BvaW50LCBub3Qgdmlld3BvcnRzIGFueSB3aWRlciBvciBuYXJyb3dlci5cbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LW9ubHkoJG5hbWUsICRicmVha3BvaW50czogJHJlZmxleC1icmVha3BvaW50cykge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJG5hbWUsICRicmVha3BvaW50cykge1xuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJG5hbWUsICRicmVha3BvaW50cykge1xuICAgICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBvdGhlciBtaXhpbnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbkBtaXhpbiBib3gtc2l6aW5nKCRib3htb2RlbCkge1xuICAgIC13ZWJraXQtYm94LXNpemluZzogJGJveG1vZGVsO1xuICAgIC1tb3otYm94LXNpemluZzogJGJveG1vZGVsO1xuICAgIGJveC1zaXppbmc6ICRib3htb2RlbDtcbn1cbiIsIlxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIGdyaWQgbW9kaWZpZXJzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gZmxleC13cmFwXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4uI3skcmVmbGV4LXByZWZpeH13cmFwIHtcbiAgICBAaW5jbHVkZSBmbGV4LXdyYXAod3JhcCk7XG59XG5cbi4jeyRyZWZsZXgtcHJlZml4fW5vLXdyYXAge1xuICAgIEBpbmNsdWRlIGZsZXgtd3JhcChub3dyYXApO1xuXG4gICAgLy8gVGhpcyBpcyBtb3N0bHkgbmVlZGVkIHRvIHN0b3AgdGhlIGdyaWQgY29udGVudHMgb3ZlcmZsb3dpbmcgaW4gdGhlXG4gICAgLy8gaWUxMCBpbXBsZW1lbnRhdGlvbiBvZiBmbGV4Ym94IGJ1dCBpdCBjYW4ndCBodXJ0IGluIG90aGVyIGJyb3dzZXJzXG4gICAgLy8gYXMgaXQgaXMgdGhlIGRlc2lyZWQgYmVoYXZpb3VyIG9mIG5vbiB3cmFwcGluZyBmbGV4IGl0ZW1zXG4gICAgW2NsYXNzKj1cIiN7JHJlZmxleC1wcmVmaXh9Y29sLVwiXSB7XG4gICAgICAgIEBpbmNsdWRlIGZsZXgtc2hyaW5rKDEpO1xuICAgIH1cbn1cblxuLiN7JHJlZmxleC1wcmVmaXh9d3JhcC1yZXZlcnNlIHtcbiAgICBAaW5jbHVkZSBmbGV4LXdyYXAod3JhcC1yZXZlcnNlKTtcbn1cblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIGZsZXgtZGlyZWN0aW9uXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4uI3skcmVmbGV4LXByZWZpeH1kaXJlY3Rpb24tcm93IHtcbiAgICBAaW5jbHVkZSBmbGV4LWRpcmVjdGlvbihyb3cpO1xufVxuXG4uI3skcmVmbGV4LXByZWZpeH1kaXJlY3Rpb24tcm93LXJldmVyc2Uge1xuICAgIEBpbmNsdWRlIGZsZXgtZGlyZWN0aW9uKHJvdy1yZXZlcnNlKTtcbn1cblxuLiN7JHJlZmxleC1wcmVmaXh9ZGlyZWN0aW9uLWNvbHVtbiB7XG4gICAgQGluY2x1ZGUgZmxleC1kaXJlY3Rpb24oY29sdW1uKTtcbn1cblxuLiN7JHJlZmxleC1wcmVmaXh9ZGlyZWN0aW9uLWNvbHVtbi1yZXZlcnNlIHtcbiAgICBAaW5jbHVkZSBmbGV4LWRpcmVjdGlvbihjb2x1bW4tcmV2ZXJzZSk7XG59XG5cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBhbGlnbiBpdGVtcyAoY3Jvc3MgYXhpcylcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi4jeyRyZWZsZXgtcHJlZml4fWFsaWduLXN0YXJ0IHtcbiAgICBAaW5jbHVkZSBhbGlnbi1pdGVtcyhmbGV4LXN0YXJ0KTtcbn1cblxuLiN7JHJlZmxleC1wcmVmaXh9YWxpZ24tZW5kIHtcbiAgICBAaW5jbHVkZSBhbGlnbi1pdGVtcyhmbGV4LWVuZCk7XG5cbiAgICBAaWYgJGxlZ2FjeS1zdXBwb3J0ID09IHRydWUge1xuICAgICAgICAvLyBmYWxsYmFjayB0byBsZWdhY3kgdmVydGljYWwtYWxpZ25cbiAgICAgICAgW2NsYXNzKj1cIiN7JHJlZmxleC1wcmVmaXh9Y29sLVwiXSB7XG4gICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uI3skcmVmbGV4LXByZWZpeH1hbGlnbi1jZW50ZXIge1xuICAgIEBpbmNsdWRlIGFsaWduLWl0ZW1zKGNlbnRlcik7XG5cbiAgICBAaWYgJGxlZ2FjeS1zdXBwb3J0ID09IHRydWUge1xuICAgICAgICAvLyBmYWxsYmFjayB0byBsZWdhY3kgdmVydGljYWwtYWxpZ25cbiAgICAgICAgW2NsYXNzKj1cIiN7JHJlZmxleC1wcmVmaXh9Y29sLVwiXSB7XG4gICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uI3skcmVmbGV4LXByZWZpeH1hbGlnbi1iYXNlbGluZSB7XG4gICAgQGluY2x1ZGUgYWxpZ24taXRlbXMoYmFzZWxpbmUpO1xufVxuXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gYWxpZ24gY29udGVudCAoY3Jvc3MgYXhpcylcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi4jeyRyZWZsZXgtcHJlZml4fWFsaWduLWNvbnRlbnQtc3RhcnQge1xuICAgIEBpbmNsdWRlIGFsaWduLWNvbnRlbnQoZmxleC1zdGFydCk7XG59XG5cbi4jeyRyZWZsZXgtcHJlZml4fWFsaWduLWNvbnRlbnQtZW5kIHtcbiAgICBAaW5jbHVkZSBhbGlnbi1jb250ZW50KGZsZXgtZW5kKTtcblxuICAgIC8vIGZhbGxiYWNrIHRvIGxlZ2FjeSB2ZXJ0aWNhbC1hbGlnblxuICAgIFtjbGFzcyo9XCIjeyRyZWZsZXgtcHJlZml4fWNvbC1cIl0ge1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xuICAgIH1cbn1cblxuLiN7JHJlZmxleC1wcmVmaXh9YWxpZ24tY29udGVudC1jZW50ZXIge1xuICAgIEBpbmNsdWRlIGFsaWduLWNvbnRlbnQoY2VudGVyKTtcbn1cblxuLiN7JHJlZmxleC1wcmVmaXh9YWxpZ24tY29udGVudC1zcGFjZS1iZXR3ZWVuIHtcbiAgICBAaW5jbHVkZSBhbGlnbi1jb250ZW50KHNwYWNlLWJldHdlZW4pO1xufVxuXG4uI3skcmVmbGV4LXByZWZpeH1hbGlnbi1jb250ZW50LXNwYWNlLWFyb3VuZCB7XG4gICAgQGluY2x1ZGUgYWxpZ24tY29udGVudChzcGFjZS1hcm91bmQpO1xufVxuXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gYWxpZ24tc2VsZlxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLiN7JHJlZmxleC1wcmVmaXh9YWxpZ24tc2VsZi1zdHJldGNoIHtcbiAgICBAaW5jbHVkZSBhbGlnbi1zZWxmKHN0cmV0Y2gpO1xufVxuXG4uI3skcmVmbGV4LXByZWZpeH1hbGlnbi1zZWxmLXN0YXJ0IHtcbiAgICBAaW5jbHVkZSBhbGlnbi1zZWxmKGZsZXgtc3RhcnQpO1xufVxuXG4uI3skcmVmbGV4LXByZWZpeH1hbGlnbi1zZWxmLWVuZCB7XG4gICAgQGluY2x1ZGUgYWxpZ24tc2VsZihmbGV4LWVuZCk7XG4gICAgdmVydGljYWwtYWxpZ246IGJvdHRvbTtcbn1cblxuLiN7JHJlZmxleC1wcmVmaXh9YWxpZ24tc2VsZi1jZW50ZXIge1xuICAgIEBpbmNsdWRlIGFsaWduLXNlbGYoY2VudGVyKTtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuXG4uI3skcmVmbGV4LXByZWZpeH1hbGlnbi1zZWxmLWJhc2VsaW5lIHtcbiAgICBAaW5jbHVkZSBhbGlnbi1zZWxmKGJhc2VsaW5lKTtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBqdXN0aWZ5LWNvbnRlbnQgKG1haW4gYXhpcylcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi4jeyRyZWZsZXgtcHJlZml4fWp1c3RpZnktc3RhcnQge1xuICAgIEBpbmNsdWRlIGp1c3RpZnktY29udGVudC1zdGFydCgpO1xuXG4gICAgQGlmICRsZWdhY3ktc3VwcG9ydCA9PSB0cnVlIHtcbiAgICAgICAgJi5ncmlkIHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi4jeyRyZWZsZXgtcHJlZml4fWp1c3RpZnktZW5kIHtcbiAgICBAaW5jbHVkZSBqdXN0aWZ5LWNvbnRlbnQtZW5kKCk7XG5cbiAgICBAaWYgJGxlZ2FjeS1zdXBwb3J0ID09IHRydWUge1xuICAgICAgICAmLmdyaWQge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgICAgICAtbW96LXRleHQtYWxpZ24tbGFzdDogcmlnaHQ7XG4gICAgICAgICAgICB0ZXh0LWFsaWduLWxhc3Q6IHJpZ2h0O1xuXG4gICAgICAgICAgICBbY2xhc3MqPVwiI3skcmVmbGV4LXByZWZpeH1jb2wtXCJdIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSByZXNldC10ZXh0LWFsaWduKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi4jeyRyZWZsZXgtcHJlZml4fWp1c3RpZnktY2VudGVyIHtcbiAgICBAaW5jbHVkZSBqdXN0aWZ5LWNvbnRlbnQtY2VudGVyKCk7XG5cbiAgICBAaWYgJGxlZ2FjeS1zdXBwb3J0ID09IHRydWUge1xuICAgICAgICAmLmdyaWQge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgLW1vei10ZXh0LWFsaWduLWxhc3Q6IGNlbnRlcjtcbiAgICAgICAgICAgIHRleHQtYWxpZ24tbGFzdDogY2VudGVyO1xuXG4gICAgICAgICAgICBbY2xhc3MqPVwiI3skcmVmbGV4LXByZWZpeH1jb2wtXCJdIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSByZXNldC10ZXh0LWFsaWduKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi4jeyRyZWZsZXgtcHJlZml4fWp1c3RpZnktc3BhY2UtYmV0d2VlbiB7XG4gICAgQGluY2x1ZGUganVzdGlmeS1jb250ZW50LXNwYWNlLWJldHdlZW4oKTtcblxuICAgIEBpZiAkbGVnYWN5LXN1cHBvcnQgPT0gdHJ1ZSB7XG4gICAgICAgICYuZ3JpZCB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBqdXN0aWZ5O1xuICAgICAgICAgICAgLW1vei10ZXh0LWFsaWduLWxhc3Q6IGp1c3RpZnk7XG4gICAgICAgICAgICB0ZXh0LWFsaWduLWxhc3Q6IGp1c3RpZnk7XG5cbiAgICAgICAgICAgIFtjbGFzcyo9XCIjeyRyZWZsZXgtcHJlZml4fWNvbC1cIl0ge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHJlc2V0LXRleHQtYWxpZ24oKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLiN7JHJlZmxleC1wcmVmaXh9anVzdGlmeS1zcGFjZS1hcm91bmQge1xuICAgIEBpbmNsdWRlIGp1c3RpZnktY29udGVudC1zcGFjZS1hcm91bmQoKTtcblxuICAgIEBpZiAkbGVnYWN5LXN1cHBvcnQgPT0gdHJ1ZSB7XG4gICAgICAgICYuZ3JpZCB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBqdXN0aWZ5O1xuICAgICAgICAgICAgLW1vei10ZXh0LWFsaWduLWxhc3Q6IGp1c3RpZnk7XG4gICAgICAgICAgICB0ZXh0LWFsaWduLWxhc3Q6IGp1c3RpZnk7XG5cbiAgICAgICAgICAgIFtjbGFzcyo9XCIjeyRyZWZsZXgtcHJlZml4fWNvbC1cIl0ge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHJlc2V0LXRleHQtYWxpZ24oKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIGNvc21ldGljIGdyaWQgbW9kaWZpZXJzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBSZW1vdmVzIGludGVybmFsIHBhZGRpbmcgZnJvbSBhbGwgY29sdW1ucyBpbiBhIGdyaWRcbi4jeyRyZWZsZXgtcHJlZml4fWdyaWQtYmxlZWQge1xuICAgIFtjbGFzcyo9XCIjeyRyZWZsZXgtcHJlZml4fWNvbC1cIl0ge1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgIH1cbn1cblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vIGNvbCBtb2RpZmllcnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIE1ha2VzIGEgY29sdW1uIGVsZW1lbnQgaW50byBhIGZsZXhib3ggY29sdW1uXG4uI3skcmVmbGV4LXByZWZpeH1jb2wtZ3JpZCB7XG4gICAgQGluY2x1ZGUgZGlzcGxheS1mbGV4KCk7XG4gICAgQGluY2x1ZGUgZmxleC1kaXJlY3Rpb24oY29sdW1uKTtcblxuICAgICYuI3skcmVmbGV4LXByZWZpeH1kaXJlY3Rpb24tcm93IHtcbiAgICAgICAgQGluY2x1ZGUgZmxleC1kaXJlY3Rpb24ocm93KTtcbiAgICB9XG59XG5cbi8vIFJlbW92ZXMgaW50ZXJuYWwgcGFkZGluZyBmcm9tIGFsbCBjb2x1bW5zIGluIGEgZ3JpZFxuLiN7JHJlZmxleC1wcmVmaXh9Y29sLWJsZWVkIHtcbiAgICBwYWRkaW5nOiAwO1xufVxuXG4vLyBSZW1vdmVzIGhvcml6b250YWwgcGFkZGluZyBmcm9tIGFsbCBjb2x1bW5zIGluIGEgZ3JpZFxuLiN7JHJlZmxleC1wcmVmaXh9Y29sLWJsZWVkLXgge1xuICAgIHBhZGRpbmc6ICRyZWZsZXgtZ3JpZC1zcGFjaW5nIDA7XG59XG5cbi8vIFJlbW92ZXMgdmVydGljYWwgcGFkZGluZyBmcm9tIGFsbCBjb2x1bW5zIGluIGEgZ3JpZFxuLiN7JHJlZmxleC1wcmVmaXh9Y29sLWJsZWVkLXkge1xuICAgIHBhZGRpbmc6IDAgJHJlZmxleC1ncmlkLXNwYWNpbmc7XG59XG5cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBjb2wtZ3JpZCBjb250ZW50c1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLiN7JHJlZmxleC1wcmVmaXh9ZmxleC1pbWcge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIEBpbmNsdWRlIGZsZXgoMCwgMCwgYXV0byk7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogYXV0bztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBAaWYgJGxlZ2FjeS1zdXBwb3J0ID09IHRydWUge1xuICAgICAgICAqd2lkdGg6IGF1dG87XG4gICAgfVxufVxuXG4uI3skcmVmbGV4LXByZWZpeH1mbGV4LWZvb3RlciB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLXRvcDogYXV0bztcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgPiA6bGFzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxufVxuXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gUmVzcG9uc2l2ZSB2aXNpYmlsaXR5IG1vZGlmaWVyc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuQGluY2x1ZGUgcmVzcG9uc2l2ZS12aXNpYmlsaXR5LWhlbHBlcnMoKTtcbiIsIi8qIC0tLSBNZWRpYSBxdWVyaWVzIC0tLSAqL1xuXG4vL1x0VVNBR0U6XG4vL1xuLy9cdEBpbmNsdWRlIG1lZGlhKFwiPnhzXCIsIFwiPD0xMTUwcHhcIikge1xuLy9cdFx0Zm9udC1zaXplOjQuMHJlbTtcbi8vXHR9XG4vL1xuLy9cdEBpbmNsdWRlIG1lZGlhKFwiPGxnXCIpIHtcbi8vXHRcdHdpZHRoOjEwMCU7XG4vL1x0fVxuXG4vLyBOT1RFOiBUaGVzZSBicmVha3BvaW50cyBjb2luY2lkZSB3aXRoIHRob3NlIGJ1aWx0IGluIHRvIFJlZmxleGdyaWRcbiRicmVha3BvaW50czogKFxuICB4eHM6IDM3MHB4LFxuICB4czogNTc2cHgsXG4gIHNtOiA3NjhweCxcbiAgbWQ6IDk5MnB4LFxuICBsZzogMTIwMHB4LFxuICB4bGc6IDE2MDBweCxcbiAgcGFnZTogMTg0OHB4XG4pO1xuIiwiLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vXHRcdFx0XHRcdCAgIFx0XHQgTUlYSU5TXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBSZXNldCA8bGk+IGVsZW1lbnRzXG5AbWl4aW4gbGktcmVzZXQge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG5cbiAgbGkge1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cbn1cblxuLy8gUmVtb3ZlIHRleHQgZnJvbSBlbGVtZW50c1xuQG1peGluIHJtLXRleHQge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB0ZXh0LWluZGVudDogLTk5OTlweDtcbiAgKmZvbnQtc2l6ZTogMDtcbiAgKmxpbmUtaGVpZ2h0OiAwcHg7XG59XG5cbi8vIFJlbW92ZSBsaSBib3R0b20gbWFyZ2luXG5AbWl4aW4gbGktbWFyZ2luKCRjb2x1bW5zLCAkbWFyZ2luQm90dG9tKSB7XG4gICY6bnRoLWxhc3QtY2hpbGQoLW4gKyAjeyRjb2x1bW5zfSk6bnRoLWNoaWxkKCN7JGNvbHVtbnN9biArIDEpLFxuICAmOm50aC1sYXN0LWNoaWxkKC1uICsgI3skY29sdW1uc30pOm50aC1jaGlsZCgjeyRjb2x1bW5zfW4gKyAxKSB+IGxpIHtcbiAgICBtYXJnaW4tYm90dG9tOiAkbWFyZ2luQm90dG9tO1xuICB9XG59XG5cbi8vIENlbnRlcmVkIGJhY2tncm91bmQgaW1hZ2VzXG5AbWl4aW4gYmctaW1nIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xufVxuXG4vLyBJRSA5KyBvbmx5XG5AbWl4aW4gaWUoJHByb3BlcnR5LCAkdmFsdWUpIHtcbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMFxcMCkgYW5kIChtaW4tcmVzb2x1dGlvbjogKzcyZHBpKSB7XG4gICAgI3skcHJvcGVydHl9OiAjeyR2YWx1ZX07XG4gIH1cbn1cblxuQG1peGluIGJ0bigkc2hhZG93OiB0cnVlKSB7XG4gIEBpbmNsdWRlIGZvbnQtYm9sZDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAkcGFkO1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAkcGFkO1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnk7XG4gIHBhZGRpbmc6ICRwYWQgLyAxLjI1ICRwYWQgKiAxLjc1ICRwYWQgLyAxLjMgJHBhZCAvIDEuMjU7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW4tcmlnaHQ6ICRwYWQ7XG4gIHRyYW5zaXRpb246IGFsbCAwLjFzICRlYXNpbmc7XG5cbiAgQGlmICRzaGFkb3cgPT0gdHJ1ZSB7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgNHB4ICNmZmY7XG4gIH1cblxuICAmOjpiZWZvcmUsXG4gICY6OmFmdGVyIHtcbiAgICBAaW5jbHVkZSBiZy1pbWc7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1nL2ljb24tc21pbGUuc3ZnXCIpO1xuICAgIGJhY2tncm91bmQtc2l6ZTogMjBweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA1MCUgNTUlO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgYm9yZGVyOiA0cHggc29saWQgI2ZmZjtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnk7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHdpZHRoOiA2NnB4O1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAtMzJweDtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC41cyAkZWFzaW5nO1xuICAgIHotaW5kZXg6IDE7XG4gIH1cblxuICAmOjpiZWZvcmUge1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYWx0O1xuICAgIGhlaWdodDogY2FsYygxMDAlIC0gOHB4KTtcbiAgICB3aWR0aDogNThweDtcbiAgICB0b3A6IDRweDtcbiAgICByaWdodDogLTI4cHg7XG4gICAgei1pbmRleDogMjtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpIHNjYWxlKDApO1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjVzICRlYXNpbmc7XG4gIH1cblxuICAmOmhvdmVyIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgY29sb3I6ICNmZmY7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMCkgc2NhbGUoMSk7XG4gICAgfVxuICAgICY6OmFmdGVyIHtcbiAgICAgIHRyYW5zZm9ybTogcm90YXRlKC0zNjBkZWcpO1xuICAgIH1cbiAgfVxuXG4gICY6Zm9jdXMge1xuICAgIG91dGxpbmUtY29sb3I6ICR0ZXh0O1xuICB9XG59XG5cbkBtaXhpbiBidG4tYmxhY2sge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGV4dDtcbiAgYm94LXNoYWRvdzogbm9uZTtcblxuICAmOjpiZWZvcmUsXG4gICY6OmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGV4dDtcbiAgfVxuXG4gICY6OmJlZm9yZSB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1nL2ljb24tc21pbGUtd2guc3ZnXCIpO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiZztcbiAgfVxuXG4gICY6aG92ZXIge1xuICAgIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwIDRweCAkdGV4dDtcbiAgICBjb2xvcjogJHRleHQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJnO1xuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgYm9yZGVyLWNvbG9yOiAkdGV4dDtcbiAgICB9XG4gIH1cblxuICAmOmZvY3VzIHtcbiAgICBvdXRsaW5lLWNvbG9yOiAkdGV4dDtcbiAgfVxufVxuXG5AbWl4aW4gYnRuLXdpZGUge1xuICB3aWR0aDogY2FsYygxMDAlIC0gI3skcGFkfSk7XG59XG5cbkBtaXhpbiBidG4tYWx0IHtcbiAgQGluY2x1ZGUgYnRuO1xuICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCA0cHggJHRleHQ7XG4gIGNvbG9yOiAkdGV4dDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcblxuICAmOjpiZWZvcmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR0ZXh0O1xuICB9XG5cbiAgJjo6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy9pY29uLXNtaWxlLXdoLnN2Z1wiKTtcbiAgICBib3JkZXItY29sb3I6ICR0ZXh0O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIH1cblxuICAmOmhvdmVyIHtcbiAgICBjb2xvcjogJHRleHQ7XG4gIH1cbn1cblxuQG1peGluIGJ0bi1zaGFkb3cge1xuICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCA0cHggJGJnO1xufVxuXG5AbWl4aW4gYnRuLWludmVydCB7XG4gIEBpbmNsdWRlIGJ0bjtcbiAgY29sb3I6ICR0ZXh0O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmc7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwIDRweCAkcHJpbWFyeSAhaW1wb3J0YW50O1xuXG4gICY6OmJlZm9yZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnk7XG4gIH1cblxuICAmOjphZnRlciB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1nL2ljb24tc21pbGUtd2guc3ZnXCIpO1xuICAgIGJvcmRlci1jb2xvcjogJHByaW1hcnk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJnO1xuICB9XG5cbiAgJjpob3ZlciB7XG4gICAgY29sb3I6ICR0ZXh0O1xuICB9XG59XG5cbkBtaXhpbiBidG4tZGlzYWJsZWQge1xuICBAaW5jbHVkZSBidG4oZmFsc2UpO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgY29sb3I6ICR0ZXh0O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBsaWdodGVuKCRncmV5LCAyNSUpO1xuXG4gICY6OmJlZm9yZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHRleHQ7XG4gIH1cblxuICAmOjphZnRlciB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1nL2ljb24tc21pbGUuc3ZnXCIpO1xuICAgIGJvcmRlci1jb2xvcjogJGJnO1xuICAgIGJhY2tncm91bmQtY29sb3I6IGxpZ2h0ZW4oJGdyZXksIDI1JSk7XG4gIH1cblxuICAmOmhvdmVyIHtcbiAgICBjb2xvcjogJHRleHQ7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMCkgc2NhbGUoMCk7XG4gICAgfVxuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBjdGEge1xuICBAaW5jbHVkZSBmb250LWJvbGQ7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICR0ZXh0O1xuICBwYWRkaW5nOiAkcGFkLzIuNTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMnMgJGVhc2luZztcbiAgYm9yZGVyOiBub25lO1xuXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMsXG4gICYuYWN0aXZlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ3JleTtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgY29sb3I6ICNmZmY7XG4gIH1cblxuICAmOmZvY3VzIHtcbiAgICBvdXRsaW5lLWNvbG9yOiAkdGV4dDtcbiAgfVxufVxuXG5AbWl4aW4gY3RhLWFsdCB7XG4gIEBpbmNsdWRlIGN0YTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgY29sb3I6ICRwcmltYXJ5O1xuXG4gICY6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRncmV5O1xuICB9XG59XG5cbkBtaXhpbiBzaGFkb3cge1xuICBib3gtc2hhZG93OiAwIDAgMjBweCAwIHJnYmEoMTgsIDMzLCA0MywgMC4wOCk7XG59XG5cbkBtaXhpbiBtYXhvdXQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgaGVpZ2h0OiAxMDAlO1xuICB3aWR0aDogMTAwJTtcbn1cblxuQG1peGluIGNsb3NlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogJGJ1bXA7XG4gIHdpZHRoOiAkYnVtcDtcbiAgdHJhbnNpdGlvbjogYWxsIDAuNXMgJGVhc2luZztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGJhY2tncm91bmQtY29sb3I6ICR0ZXh0O1xuICBib3JkZXI6IDNweCBzb2xpZCAkYmc7XG5cbiAgQGluY2x1ZGUgbWVkaWEoXCI+PWxnXCIsIFwiaGVpZ2h0Pj1zbVwiKSB7XG4gICAgd2lkdGg6IDcycHg7XG4gICAgaGVpZ2h0OiA3MnB4O1xuICAgIGJvcmRlci13aWR0aDogNHB4O1xuICB9XG5cbiAgJjo6YmVmb3JlLFxuICAmOjphZnRlciB7XG4gICAgd2lkdGg6IDUwJTtcbiAgICBoZWlnaHQ6IDNweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmc7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIG1hcmdpbjogYXV0bztcblxuICAgIEBpbmNsdWRlIG1lZGlhKFwiPj1sZ1wiKSB7XG4gICAgICBoZWlnaHQ6IDRweDtcbiAgICB9XG4gIH1cblxuICAmOjpiZWZvcmUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG4gIH1cblxuICAmOjphZnRlciB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICB9XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyxcbiAgJjphY3RpdmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5O1xuICB9XG5cbiAgJjpob3ZlciB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgfVxufVxuXG5AbWl4aW4gZm9udC1zbW9vdGhpbmcoJG92ZXJyaWRlOiBmYWxzZSkge1xuICBAaWYgJG92ZXJyaWRlID09IGZhbHNlIHtcbiAgICBAbWVkaWEgKC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzogMiksIChtaW4tcmVzb2x1dGlvbjogMTkyZHBpKSB7XG4gICAgICAtbW96LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gICAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICAgICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICAtbW96LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgfVxufVxuXG5AbWl4aW4gZ3JpZC1yZXZlcnNlKCRicmVha3BvaW50czogJGJyZWFrcG9pbnRzKSB7XG4gIEBlYWNoICRrZXksICRicmVha3BvaW50IGluICRicmVha3BvaW50cyB7XG4gICAgJi0tI3ska2V5fS1yZXZlcnNlIHtcbiAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj0jeyRrZXl9XCIpIHtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vKipcbiAqIEZvY3VzIFZpc2libGVcbiAqIGh0dHBzOi8vZ2l0aHViLmNvbS9XSUNHL2ZvY3VzLXZpc2libGVcbiAqIE92ZXJyaWRlIGJhc2UgZm9jdXMgc3R5bGVzIGZvciBtb3VzZSBhbmQgdG91Y2ggaW50ZXJhY3Rpb25zXG4gKi9cbkBtaXhpbiBmb2N1cy12aXNpYmxlKCkge1xuICAuanMtZm9jdXMtdmlzaWJsZSAmIHtcbiAgICAmOm5vdCguZm9jdXMtdmlzaWJsZSkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG4iLCIvKiAtLS0gRm9udHMgLS0tICovXG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogXCJtb250c2VycmF0cmVndWxhclwiO1xuICBzcmM6IHVybChcIi4uL2ZvbnRzL21vbnRzZXJyYXQtcmVndWxhci13ZWJmb250LndvZmYyXCIpIGZvcm1hdChcIndvZmYyXCIpLFxuICAgIHVybChcIi4uL2ZvbnRzL21vbnRzZXJyYXQtcmVndWxhci13ZWJmb250LndvZmZcIikgZm9ybWF0KFwid29mZlwiKTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IFwibW9udHNlcnJhdHNlbWlib2xkXCI7XG4gIHNyYzogdXJsKFwiLi4vZm9udHMvbW9udHNlcnJhdC1zZW1pYm9sZC13ZWJmb250LndvZmYyXCIpIGZvcm1hdChcIndvZmYyXCIpLFxuICAgIHVybChcIi4uL2ZvbnRzL21vbnRzZXJyYXQtc2VtaWJvbGQtd2ViZm9udC53b2ZmXCIpIGZvcm1hdChcIndvZmZcIik7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBcIm1vbnRzZXJyYXRpdGFsaWNcIjtcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9tb250c2VycmF0LXJlZ3VsYXJpdGFsaWMtd2ViZm9udC53b2ZmMlwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSxcbiAgICB1cmwoXCIuLi9mb250cy9tb250c2VycmF0LXJlZ3VsYXJpdGFsaWMtd2ViZm9udC53b2ZmXCIpIGZvcm1hdChcIndvZmZcIik7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cblxuQG1peGluIGZvbnQtYm9keSB7XG4gIGZvbnQtZmFtaWx5OiBcIm1vbnRzZXJyYXRyZWd1bGFyXCIsIGFyaWFsLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDE4cHg7XG4gIGxpbmUtaGVpZ2h0OiAzMnB4O1xufVxuXG5AbWl4aW4gZm9udC1ib2xkIHtcbiAgZm9udC1mYW1pbHk6IFwibW9udHNlcnJhdHNlbWlib2xkXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG59XG5cbkBtaXhpbiBmb250LXRpdGxlIHtcbiAgZm9udC1mYW1pbHk6IFwibW9udHNlcnJhdHNlbWlib2xkXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG59XG5cbmVtIHtcbiAgZm9udC1mYW1pbHk6IFwibW9udHNlcnJhdGl0YWxpY1wiO1xufVxuIiwiQGtleWZyYW1lcyBmYWRlSW4ge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuXG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBmYWRlT3V0IHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG4iLCIvKiFcbiAqIGJhZ3VldHRlQm94LmpzXG4gKiBAYXV0aG9yICBmZWltb3NpXG4gKiBAdmVyc2lvbiAlJUlOSkVDVF9WRVJTSU9OJSVcbiAqIEB1cmwgaHR0cHM6Ly9naXRodWIuY29tL2ZlaW1vc2kvYmFndWV0dGVCb3guanNcbiAqL1xuXG4jYmFndWV0dGVCb3gtb3ZlcmxheSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB6LWluZGV4OiAxMDAwMDAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMyMjI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLDAsMCwuOCk7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAuNXMgZWFzZTtcblxuICAgICYudmlzaWJsZSB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgfVxuXG4gICAgLmZ1bGwtaW1hZ2Uge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAgIGZpZ3VyZSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgICAgICAgICBtYXJnaW46IDA7ICAgICAgLy8gbmVlZGVkIGZvciBtb2JpbGVcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTsgICAvLyBPcGVyYSAxMiBpbWFnZSBzdHJldGNoaW5nIGZpeFxuICAgICAgICB9XG5cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIC8vIElFOCBmaXhcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuXG4gICAgICAgICAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMCA4cHggcmdiYSgwLDAsMCwuNik7XG4gICAgICAgIH1cblxuICAgICAgICBmaWdjYXB0aW9uIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS44O1xuICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgICAgICAgICAgIGNvbG9yOiAjY2NjO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwwLDAsLjYpO1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6IHNhbnMtc2VyaWY7XG4gICAgICAgIH1cblxuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgaGVpZ2h0OiA1MCU7XG4gICAgICAgICAgICB3aWR0aDogMXB4O1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0Oi0xcHg7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbiNiYWd1ZXR0ZUJveC1zbGlkZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogMDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICB0cmFuc2l0aW9uOiBsZWZ0IC40cyBlYXNlLCB0cmFuc2Zvcm0gLjRzIGVhc2U7XG5cbiAgICAmLmJvdW5jZS1mcm9tLXJpZ2h0IHtcbiAgICAgICAgYW5pbWF0aW9uOiBib3VuY2VGcm9tUmlnaHQgLjRzIGVhc2Utb3V0O1xuICAgIH1cblxuICAgICYuYm91bmNlLWZyb20tbGVmdCB7XG4gICAgICAgIGFuaW1hdGlvbjogYm91bmNlRnJvbUxlZnQgLjRzIGVhc2Utb3V0O1xuICAgIH1cbn1cblxuQGtleWZyYW1lcyBib3VuY2VGcm9tUmlnaHR7XG4gICAgMCUgeyBtYXJnaW4tbGVmdDogMDsgfVxuICAgIDUwJSB7IG1hcmdpbi1sZWZ0OiAtMzBweDsgfVxuICAgIDEwMCUgeyBtYXJnaW4tbGVmdDogMDsgfVxufVxuXG5Aa2V5ZnJhbWVzIGJvdW5jZUZyb21MZWZ0e1xuICAgIDAlIHsgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgICA1MCUgeyBtYXJnaW4tbGVmdDogMzBweDsgfVxuICAgIDEwMCUgeyBtYXJnaW4tbGVmdDogMDsgfVxufVxuXG4lYXJyb3ctYnV0dG9uIHtcbiAgICB0b3A6IDUwJTtcbiAgICB0b3A6IGNhbGMoNTAlIC0gMzBweCk7XG4gICAgd2lkdGg6IDQ0cHg7XG4gICAgaGVpZ2h0OiA2MHB4O1xufVxuXG4uYmFndWV0dGVCb3gtYnV0dG9uIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgcGFkZGluZzogMDtcbiAgICBtYXJnaW46IDA7XG4gICAgYm9yZGVyOiAwO1xuICAgIGJvcmRlci1yYWRpdXM6IDE1JTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzIzMjMyO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoNTAsNTAsNTAsLjUpO1xuICAgIGNvbG9yOiAjZGRkO1xuICAgIGZvbnQ6IDEuNmVtIHNhbnMtc2VyaWY7XG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAuNHMgZWFzZTtcblxuICAgICY6Zm9jdXMsXG4gICAgJjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoNTAsNTAsNTAsLjkpO1xuICAgIH1cblxuICAgICYjbmV4dC1idXR0b24ge1xuICAgICAgICBAZXh0ZW5kICVhcnJvdy1idXR0b247XG4gICAgICAgIHJpZ2h0OiAyJTtcbiAgICB9XG5cbiAgICAmI3ByZXZpb3VzLWJ1dHRvbiB7XG4gICAgICAgIEBleHRlbmQgJWFycm93LWJ1dHRvbjtcbiAgICAgICAgbGVmdDogMiU7XG4gICAgfVxuXG4gICAgJiNjbG9zZS1idXR0b24ge1xuICAgICAgICB0b3A6IDIwcHg7XG4gICAgICAgIHJpZ2h0OiAyJTtcbiAgICAgICAgcmlnaHQ6IGNhbGMoMiUgKyA2cHgpO1xuICAgICAgICB3aWR0aDogMzBweDtcbiAgICAgICAgaGVpZ2h0OiAzMHB4O1xuICAgIH1cblxuICAgIC8vIEZpcmVmb3ggZml4XG4gICAgc3ZnIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB0b3A6IDA7XG4gICAgfVxufVxuXG4vKlxuICAgIFByZWxvYWRlclxuICAgIEJvcnJvd2VkIGZyb20gaHR0cDovL3RvYmlhc2FobGluLmNvbS9zcGlua2l0L1xuKi9cblxuLmJhZ3VldHRlQm94LXNwaW5uZXIge1xuICAgIHdpZHRoOiA0MHB4O1xuICAgIGhlaWdodDogNDBweDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTAlO1xuICAgIGxlZnQ6IDUwJTtcbiAgICBtYXJnaW4tdG9wOiAtMjBweDtcbiAgICBtYXJnaW4tbGVmdDogLTIwcHg7XG59XG5cbi5iYWd1ZXR0ZUJveC1kb3VibGUtYm91bmNlMSxcbi5iYWd1ZXR0ZUJveC1kb3VibGUtYm91bmNlMiB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgIG9wYWNpdHk6IC42O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICBhbmltYXRpb246IGJvdW5jZSAycyBpbmZpbml0ZSBlYXNlLWluLW91dDtcbn1cblxuLmJhZ3VldHRlQm94LWRvdWJsZS1ib3VuY2UyIHtcbiAgICBhbmltYXRpb24tZGVsYXk6IC0xcztcbn1cblxuQGtleWZyYW1lcyBib3VuY2Uge1xuICAgIDAlLCAxMDAlIHtcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgICB9IDUwJSB7XG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgfVxufVxuIiwiLyo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG49ICAgICAgICAgICAgQ2hvaWNlcyAgICAgICAgICAgID1cbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuXG4kY2hvaWNlcy1zZWxlY3RvcjogJ2Nob2ljZXMnICFkZWZhdWx0O1xuJGNob2ljZXMtZm9udC1zaXplLWxnOiAxNnB4ICFkZWZhdWx0O1xuJGNob2ljZXMtZm9udC1zaXplLW1kOiAxNHB4ICFkZWZhdWx0O1xuJGNob2ljZXMtZm9udC1zaXplLXNtOiAxMnB4ICFkZWZhdWx0O1xuJGNob2ljZXMtZ3V0dGVyaW5nOiAyNHB4ICFkZWZhdWx0O1xuJGNob2ljZXMtYm9yZGVyLXJhZGl1czogMi41cHggIWRlZmF1bHQ7XG4kY2hvaWNlcy1ib3JkZXItcmFkaXVzLWl0ZW06IDIwcHggIWRlZmF1bHQ7XG4kY2hvaWNlcy1iZy1jb2xvcjogI2Y5ZjlmOSAhZGVmYXVsdDtcbiRjaG9pY2VzLWJnLWNvbG9yLWRpc2FibGVkOiAjRUFFQUVBICFkZWZhdWx0O1xuJGNob2ljZXMtYmctY29sb3ItZHJvcGRvd246ICNGRkZGRkYgIWRlZmF1bHQ7XG4kY2hvaWNlcy10ZXh0LWNvbG9yOiAjMzMzMzMzICFkZWZhdWx0O1xuJGNob2ljZXMta2V5bGluZS1jb2xvcjogI0RERERERCAhZGVmYXVsdDtcbiRjaG9pY2VzLXByaW1hcnktY29sb3I6ICMwMEJDRDQgIWRlZmF1bHQ7XG4kY2hvaWNlcy1kaXNhYmxlZC1jb2xvcjogI2VhZWFlYSAhZGVmYXVsdDtcbiRjaG9pY2VzLWhpZ2hsaWdodC1jb2xvcjogJGNob2ljZXMtcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcbiRjaG9pY2VzLWJ1dHRvbi1pY29uLXBhdGg6ICcuLi8uLi9pY29ucycgIWRlZmF1bHQ7XG4kY2hvaWNlcy1idXR0b24tZGltZW5zaW9uOiA4cHggIWRlZmF1bHQ7XG4kY2hvaWNlcy1idXR0b24tb2Zmc2V0OiA4cHggIWRlZmF1bHQ7XG5cbi4jeyRjaG9pY2VzLXNlbGVjdG9yfSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luLWJvdHRvbTogJGNob2ljZXMtZ3V0dGVyaW5nO1xuICBmb250LXNpemU6ICRjaG9pY2VzLWZvbnQtc2l6ZS1sZztcbiAgJjpmb2N1cyB7IG91dGxpbmU6IG5vbmU7IH1cbiAgJjpsYXN0LWNoaWxkIHsgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAmLmlzLWRpc2FibGVkIHtcbiAgICAuI3skY2hvaWNlcy1zZWxlY3Rvcn1fX2lubmVyLCAuI3skY2hvaWNlcy1zZWxlY3Rvcn1fX2lucHV0IHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjaG9pY2VzLWJnLWNvbG9yLWRpc2FibGVkO1xuICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgICAgIHVzZXItc2VsZWN0OiBub25lO1xuICAgIH1cbiAgICAuI3skY2hvaWNlcy1zZWxlY3Rvcn1fX2l0ZW0geyBjdXJzb3I6IG5vdC1hbGxvd2VkOyB9XG4gIH1cbn1cblxuLiN7JGNob2ljZXMtc2VsZWN0b3J9W2RhdGEtdHlwZSo9XCJzZWxlY3Qtb25lXCJdIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICAuI3skY2hvaWNlcy1zZWxlY3Rvcn1fX2lubmVyIHsgcGFkZGluZy1ib3R0b206IDcuNXB4OyB9XG4gIC4jeyRjaG9pY2VzLXNlbGVjdG9yfV9faW5wdXQge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRjaG9pY2VzLWtleWxpbmUtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRkZGRjtcbiAgICBtYXJnaW46IDA7XG4gIH1cbiAgLiN7JGNob2ljZXMtc2VsZWN0b3J9X19idXR0b24ge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgkY2hvaWNlcy1idXR0b24taWNvbi1wYXRoICsgJy9jcm9zcy1pbnZlcnNlLnN2ZycpO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgYmFja2dyb3VuZC1zaXplOiA4cHg7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICByaWdodDogMDtcbiAgICBtYXJnaW4tdG9wOiAtMTBweDtcbiAgICBtYXJnaW4tcmlnaHQ6IDI1cHg7XG4gICAgaGVpZ2h0OiAyMHB4O1xuICAgIHdpZHRoOiAyMHB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDEwZW07XG4gICAgb3BhY2l0eTogLjU7XG4gICAgJjpob3ZlciwgJjpmb2N1cyB7IG9wYWNpdHk6IDE7IH1cbiAgICAmOmZvY3VzIHsgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMnB4ICRjaG9pY2VzLWhpZ2hsaWdodC1jb2xvcjsgfVxuICB9XG4gICY6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgaGVpZ2h0OiAwO1xuICAgIHdpZHRoOiAwO1xuICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiAkY2hvaWNlcy10ZXh0LWNvbG9yIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci13aWR0aDogNXB4O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMTEuNXB4O1xuICAgIHRvcDogNTAlO1xuICAgIG1hcmdpbi10b3A6IC0yLjVweDtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgfVxuICAmLmlzLW9wZW46YWZ0ZXIge1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgJGNob2ljZXMtdGV4dC1jb2xvciB0cmFuc3BhcmVudDtcbiAgICBtYXJnaW4tdG9wOiAtNy41cHg7XG4gIH1cbiAgJltkaXI9XCJydGxcIl0ge1xuICAgICY6YWZ0ZXIge1xuICAgICAgbGVmdDogMTEuNXB4O1xuICAgICAgcmlnaHQ6IGF1dG87XG4gICAgfVxuICAgIC4jeyRjaG9pY2VzLXNlbGVjdG9yfV9fYnV0dG9uIHtcbiAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgbGVmdDogMDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAyNXB4O1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIH1cbiAgfVxufVxuXG4uI3skY2hvaWNlcy1zZWxlY3Rvcn1bZGF0YS10eXBlKj1cInNlbGVjdC1tdWx0aXBsZVwiXSwgLiN7JGNob2ljZXMtc2VsZWN0b3J9W2RhdGEtdHlwZSo9XCJ0ZXh0XCJdICB7XG4gIC4jeyRjaG9pY2VzLXNlbGVjdG9yfV9faW5uZXIgeyBjdXJzb3I6IHRleHQ7IH1cbiAgLiN7JGNob2ljZXMtc2VsZWN0b3J9X19idXR0b24ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXJnaW4tcmlnaHQ6IC0kY2hvaWNlcy1idXR0b24tb2Zmc2V0LzI7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBtYXJnaW4tbGVmdDogJGNob2ljZXMtYnV0dG9uLW9mZnNldDtcbiAgICBwYWRkaW5nLWxlZnQ6ICRjaG9pY2VzLWJ1dHRvbi1vZmZzZXQqMjtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkIGRhcmtlbigkY2hvaWNlcy1wcmltYXJ5LWNvbG9yLCAxMCUpO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgkY2hvaWNlcy1idXR0b24taWNvbi1wYXRoICsgJy9jcm9zcy5zdmcnKTtcbiAgICBiYWNrZ3JvdW5kLXNpemU6ICRjaG9pY2VzLWJ1dHRvbi1kaW1lbnNpb247XG4gICAgd2lkdGg6ICRjaG9pY2VzLWJ1dHRvbi1kaW1lbnNpb247XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgb3BhY2l0eTogLjc1O1xuICAgICY6aG92ZXIsICY6Zm9jdXMgeyBvcGFjaXR5OiAxOyB9XG4gIH1cbn1cblxuLiN7JGNob2ljZXMtc2VsZWN0b3J9X19pbm5lciB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgd2lkdGg6IDEwMCU7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjaG9pY2VzLWJnLWNvbG9yO1xuICBwYWRkaW5nOiA3LjVweCA3LjVweCAzLjc1cHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkICRjaG9pY2VzLWtleWxpbmUtY29sb3I7XG4gIGJvcmRlci1yYWRpdXM6ICRjaG9pY2VzLWJvcmRlci1yYWRpdXM7XG4gIGZvbnQtc2l6ZTogJGNob2ljZXMtZm9udC1zaXplLW1kO1xuICBtaW4taGVpZ2h0OiA0NHB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICAuaXMtZm9jdXNlZCAmLCAuaXMtb3BlbiAmIHsgYm9yZGVyLWNvbG9yOiBkYXJrZW4oJGNob2ljZXMta2V5bGluZS1jb2xvciwgMTUlKTsgfVxuICAuaXMtb3BlbiAmIHsgYm9yZGVyLXJhZGl1czogJGNob2ljZXMtYm9yZGVyLXJhZGl1cyAkY2hvaWNlcy1ib3JkZXItcmFkaXVzIDAgMDsgfVxuICAuaXMtZmxpcHBlZC5pcy1vcGVuICYgeyBib3JkZXItcmFkaXVzOiAwIDAgJGNob2ljZXMtYm9yZGVyLXJhZGl1cyAkY2hvaWNlcy1ib3JkZXItcmFkaXVzOyB9XG59XG5cbi4jeyRjaG9pY2VzLXNlbGVjdG9yfV9fbGlzdCB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuXG4uI3skY2hvaWNlcy1zZWxlY3Rvcn1fX2xpc3QtLXNpbmdsZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZzogNHB4IDE2cHggNHB4IDRweDtcbiAgd2lkdGg6IDEwMCU7XG4gIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgcGFkZGluZy1yaWdodDogNHB4O1xuICAgIHBhZGRpbmctbGVmdDogMTZweDtcbiAgfVxuICAuI3skY2hvaWNlcy1zZWxlY3Rvcn1fX2l0ZW0geyB3aWR0aDogMTAwJTsgfVxufVxuXG4uI3skY2hvaWNlcy1zZWxlY3Rvcn1fX2xpc3QtLW11bHRpcGxlIHtcbiAgZGlzcGxheTogaW5saW5lO1xuICAuI3skY2hvaWNlcy1zZWxlY3Rvcn1fX2l0ZW0ge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIGJvcmRlci1yYWRpdXM6ICRjaG9pY2VzLWJvcmRlci1yYWRpdXMtaXRlbTtcbiAgICBwYWRkaW5nOiA0cHggMTBweDtcbiAgICBmb250LXNpemU6ICRjaG9pY2VzLWZvbnQtc2l6ZS1zbTtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICAgIG1hcmdpbi1yaWdodDogMy43NXB4O1xuICAgIG1hcmdpbi1ib3R0b206IDMuNzVweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY2hvaWNlcy1wcmltYXJ5LWNvbG9yO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIGRhcmtlbigkY2hvaWNlcy1wcmltYXJ5LWNvbG9yLCA1JSk7XG4gICAgY29sb3I6ICNGRkZGRkY7XG4gICAgd29yZC1icmVhazogYnJlYWstYWxsO1xuICAgICZbZGF0YS1kZWxldGFibGVdIHsgcGFkZGluZy1yaWdodDogNXB4OyB9XG4gICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAzLjc1cHg7XG4gICAgfVxuICAgICYuaXMtaGlnaGxpZ2h0ZWQge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRjaG9pY2VzLXByaW1hcnktY29sb3IsIDUlKTtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkIGRhcmtlbigkY2hvaWNlcy1wcmltYXJ5LWNvbG9yLCAxMCUpO1xuICAgIH1cbiAgICAuaXMtZGlzYWJsZWQgJiB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGNob2ljZXMtZGlzYWJsZWQtY29sb3IsIDI1JSk7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCBkYXJrZW4oJGNob2ljZXMtZGlzYWJsZWQtY29sb3IsIDM1JSk7XG4gICAgfVxuICB9XG59XG5cbi4jeyRjaG9pY2VzLXNlbGVjdG9yfV9fbGlzdC0tZHJvcGRvd24ge1xuICBkaXNwbGF5OiBub25lO1xuICB6LWluZGV4OiAxO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxMDAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY2hvaWNlcy1iZy1jb2xvci1kcm9wZG93bjtcbiAgYm9yZGVyOiAxcHggc29saWQgJGNob2ljZXMta2V5bGluZS1jb2xvcjtcbiAgdG9wOiAxMDAlO1xuICBtYXJnaW4tdG9wOiAtMXB4O1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAkY2hvaWNlcy1ib3JkZXItcmFkaXVzO1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogJGNob2ljZXMtYm9yZGVyLXJhZGl1cztcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgd29yZC1icmVhazogYnJlYWstYWxsO1xuICAmLmlzLWFjdGl2ZSB7IGRpc3BsYXk6IGJsb2NrOyB9XG4gIC5pcy1vcGVuICYgeyBib3JkZXItY29sb3I6IGRhcmtlbigkY2hvaWNlcy1rZXlsaW5lLWNvbG9yLCAxNSUpOyB9XG4gIC5pcy1mbGlwcGVkICYge1xuICAgIHRvcDogYXV0bztcbiAgICBib3R0b206IDEwMCU7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXJnaW4tYm90dG9tOiAtMXB4O1xuICAgIGJvcmRlci1yYWRpdXM6IC4yNXJlbSAuMjVyZW0gMCAwO1xuICB9XG4gIC4jeyRjaG9pY2VzLXNlbGVjdG9yfV9fbGlzdCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1heC1oZWlnaHQ6IDMwMHB4O1xuICAgIG92ZXJmbG93OiBhdXRvO1xuICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgICB3aWxsLWNoYW5nZTogc2Nyb2xsLXBvc2l0aW9uO1xuICB9XG4gIC4jeyRjaG9pY2VzLXNlbGVjdG9yfV9faXRlbSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgZm9udC1zaXplOiAkY2hvaWNlcy1mb250LXNpemUtbWQ7XG4gICAgW2Rpcj1cInJ0bFwiXSAmIHsgdGV4dC1hbGlnbjogcmlnaHQ7IH1cbiAgfVxuICAuI3skY2hvaWNlcy1zZWxlY3Rvcn1fX2l0ZW0tLXNlbGVjdGFibGUge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiA2NDBweCkge1xuICAgICAgcGFkZGluZy1yaWdodDogMTAwcHg7XG4gICAgICAmOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogYXR0cihkYXRhLXNlbGVjdC10ZXh0KTtcbiAgICAgICAgZm9udC1zaXplOiAkY2hvaWNlcy1mb250LXNpemUtc207XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgcmlnaHQ6IDEwcHg7XG4gICAgICAgIHRvcDogNTAlO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICB9XG4gICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAxMDBweDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMTBweDtcbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICAgICAgbGVmdDogMTBweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAmLmlzLWhpZ2hsaWdodGVkIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IG1peCgjMDAwMDAwLCAjRkZGRkZGLCA1JSk7XG4gICAgICAmOmFmdGVyIHsgb3BhY2l0eTogLjU7IH1cbiAgICB9XG4gIH1cbn1cblxuLiN7JGNob2ljZXMtc2VsZWN0b3J9X19pdGVtIHsgY3Vyc29yOiBkZWZhdWx0OyB9XG4uI3skY2hvaWNlcy1zZWxlY3Rvcn1fX2l0ZW0tLXNlbGVjdGFibGUgeyBjdXJzb3I6IHBvaW50ZXI7IH1cbi4jeyRjaG9pY2VzLXNlbGVjdG9yfV9faXRlbS0tZGlzYWJsZWQge1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgb3BhY2l0eTogLjU7XG59XG5cbi4jeyRjaG9pY2VzLXNlbGVjdG9yfV9faGVhZGluZyB7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGZvbnQtc2l6ZTogJGNob2ljZXMtZm9udC1zaXplLXNtO1xuICBwYWRkaW5nOiAxMHB4O1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgbGlnaHRlbigkY2hvaWNlcy1rZXlsaW5lLWNvbG9yLCAxMCUpO1xuICBjb2xvcjogbGlnaHRlbigjMzMzLCAzMCUpO1xufVxuXG4uI3skY2hvaWNlcy1zZWxlY3Rvcn1fX2J1dHRvbiB7XG4gIHRleHQtaW5kZW50OiAtOTk5OXB4O1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIGJvcmRlcjogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICAmOmZvY3VzIHsgb3V0bGluZTogbm9uZTsgfVxufVxuXG4uI3skY2hvaWNlcy1zZWxlY3Rvcn1fX2lucHV0IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IG1peCgjMDAwMDAwLCAjRkZGRkZGLCAyLjUlKTtcbiAgZm9udC1zaXplOiAkY2hvaWNlcy1mb250LXNpemUtbWQ7XG4gIG1hcmdpbi1ib3R0b206IDVweDtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDRweCAwIDRweCAycHg7XG4gICY6Zm9jdXMgeyBvdXRsaW5lOiAwOyB9XG4gIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgcGFkZGluZy1yaWdodDogMnB4O1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgfVxufVxuXG4uI3skY2hvaWNlcy1zZWxlY3Rvcn1fX3BsYWNlaG9sZGVyIHsgb3BhY2l0eTogLjU7IH1cblxuLyo9PT09PSAgRW5kIG9mIENob2ljZXMgID09PT09PSovXG4iLCIvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy9cdFx0XHRcdFx0ICAgICAgIERFRkFVTFRTXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBHcmlkIGRlZmF1bHQgcm93IHdpZHRoICYgZ3V0dGVyXG4uZ3JpZCB7XG4gIG1heC13aWR0aDogMTg0OHB4O1xuICBAaW5jbHVkZSBncmlkLXJldmVyc2U7XG5cbiAgJi0tcGFnZSB7XG4gICAgQGluY2x1ZGUgbWVkaWEoJz49bWQnLCAnPGxnJykge1xuICAgICAgcGFkZGluZzogMCAkcGFkO1xuICAgIH1cbiAgfVxufVxuXG4uY29sLS1jZW50ZXIge1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xufVxuXG4uY29udGFpbmVyLWZ1bGwgPiAuZ3JpZCB7XG4gIG1heC13aWR0aDogbm9uZTtcbn1cblxuQGluY2x1ZGUgbWVkaWEoJzxtZCcpIHtcbiAgLmNvbnRhaW5lci1mdWxsIHtcbiAgICBwYWRkaW5nOiAwICRwYWQvMjtcbiAgfVxufVxuXG4vLyBNYXRjaGVsZW1lbnQgaGVpZ2h0c1xuLm1hdGNoaGVpZ2h0ID4gKiB7XG4gIGhlaWdodDogMTAwJTtcbn1cblxuYm9keSxcbmh0bWwge1xuICBAaW5jbHVkZSBmb250LWJvZHk7XG4gIGNvbG9yOiAkdGV4dDtcbn1cblxuYm9keSB7XG4gIEBpbmNsdWRlIGJnLWltZztcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi9pbWcvYmFja2dyb3VuZC0jeyRzaXRlfS5zdmcnKTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCA1MCU7XG4gIGJhY2tncm91bmQtc2l6ZTogMTAwJTtcbiAgQGluY2x1ZGUgZm9udC1zbW9vdGhpbmcodHJ1ZSk7XG59XG5cbjo6c2VsZWN0aW9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHRleHQ7XG4gIGNvbG9yOiAkYmc7XG59XG5cbkBtaXhpbiBoMSB7XG4gIGZvbnQtc2l6ZTogNzZweDtcbiAgbGluZS1oZWlnaHQ6IDg2cHg7XG4gIGxldHRlci1zcGFjaW5nOiAtM3B4O1xuXG4gIEBpbmNsdWRlIG1lZGlhKCc8c20nKSB7XG4gICAgZm9udC1zaXplOiA0N3B4O1xuICAgIGxpbmUtaGVpZ2h0OiA1N3B4O1xuICAgIGxldHRlci1zcGFjaW5nOiAtMnB4O1xuICB9XG59XG5cbkBtaXhpbiBoMiB7XG4gIGZvbnQtc2l6ZTogNDdweDtcbiAgbGluZS1oZWlnaHQ6IDU3cHg7XG4gIGxldHRlci1zcGFjaW5nOiAtMnB4O1xuXG4gIEBpbmNsdWRlIG1lZGlhKCc8c20nKSB7XG4gICAgZm9udC1zaXplOiAzNXB4O1xuICAgIGxpbmUtaGVpZ2h0OiA0NXB4O1xuICAgIGxldHRlci1zcGFjaW5nOiAtMXB4O1xuICB9XG59XG5cbkBtaXhpbiBoMyB7XG4gIGZvbnQtc2l6ZTogMjlweDtcbiAgbGluZS1oZWlnaHQ6IDM5cHg7XG4gIGxldHRlci1zcGFjaW5nOiAtMXB4O1xufVxuXG5AbWl4aW4gaDQge1xuICBmb250LXNpemU6IDE4cHg7XG4gIGxpbmUtaGVpZ2h0OiAyOHB4O1xuICBsZXR0ZXItc3BhY2luZzogLTAuNXB4O1xufVxuXG4vLyBUZXh0ICYgbGlua3NcbmgxLFxuLmgxLFxuaDIsXG4uaDIsXG5oMyxcbi5oMyxcbmg0LFxuLmg0LFxuaDUsXG4uaDUsXG5oNixcbi5oNiB7XG4gIEBpbmNsdWRlIGZvbnQtdGl0bGU7XG4gIG1hcmdpbjogMCAwICRwYWQvMjtcblxuICBzcGFuIHtcbiAgICBAaW5jbHVkZSBmb250LWJvZHk7XG4gICAgZm9udC1zaXplOiBpbmhlcml0O1xuICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICB9XG59XG5cbi5mZWF0dXJlZCB7XG4gIGZvbnQtc2l6ZTogMTIzcHg7XG4gIGxpbmUtaGVpZ2h0OiAxMzNweDtcbiAgbGV0dGVyLXNwYWNpbmc6IC00cHg7XG5cbiAgQGluY2x1ZGUgbWVkaWEoJzxsZycpIHtcbiAgICBmb250LXNpemU6IDgzcHg7XG4gICAgbGluZS1oZWlnaHQ6IDkzcHg7XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYSgnPG1kJykge1xuICB9XG59XG5cbi5oMSxcbmgxIHtcbiAgQGluY2x1ZGUgaDE7XG59XG5cbi5oMixcbmgyIHtcbiAgQGluY2x1ZGUgaDI7XG59XG5cbi5oMyxcbmgzIHtcbiAgQGluY2x1ZGUgaDM7XG59XG5cbi5oNCxcbmg0IHtcbiAgQGluY2x1ZGUgaDQ7XG59XG5cbnAge1xuICBtYXJnaW4tdG9wOiAwO1xuXG4gICY6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luOiAwO1xuICB9XG59XG5cbi50ZXh0LWNlbnRlcmVkIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0ZXh0LWFsaWduLWxhc3Q6IGNlbnRlcjtcbn1cblxuc3Ryb25nIHtcbiAgQGluY2x1ZGUgZm9udC1ib2xkO1xufVxuXG5lbSB7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cblxuc21hbGwge1xuICBmb250LXNpemU6IDkwJTtcbn1cblxuYSB7XG4gIEBpbmNsdWRlIGZvbnQtYm9sZDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4ycyAkZWFzaW5nO1xuICBjb2xvcjogJHRleHQ7XG5cbiAgJjpob3ZlciB7XG4gICAgY29sb3I6ICR0ZXh0O1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICB9XG5cbiAgJjpmb2N1cyB7XG4gICAgb3V0bGluZTogM3B4IGRhc2hlZCBjdXJyZW50Q29sb3I7XG5cbiAgICBAaW5jbHVkZSBmb2N1cy12aXNpYmxlKCkge1xuICAgICAgb3V0bGluZTogMDtcbiAgICB9XG4gIH1cblxuICAmLm5vLWNsaWNrIHtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgfVxufVxuXG5idXR0b24ge1xuICAmOmZvY3VzIHtcbiAgICBvdXRsaW5lOiAzcHggZGFzaGVkIGN1cnJlbnRDb2xvcjtcblxuICAgIEBpbmNsdWRlIGZvY3VzLXZpc2libGUoKSB7XG4gICAgICBvdXRsaW5lOiAwO1xuICAgIH1cbiAgfVxufVxuXG4uYnRuIHtcbiAgQGluY2x1ZGUgYnRuO1xuXG4gICYtLWFsdCB7XG4gICAgQGluY2x1ZGUgYnRuLWFsdDtcbiAgfVxuXG4gICYtLXdpZGUge1xuICAgIEBpbmNsdWRlIGJ0bi13aWRlO1xuICB9XG5cbiAgJi0tbm8tYm9yZGVyIHtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICB9XG5cbiAgJi0tZm9vdGVyIHtcbiAgICBtYXJnaW4tdG9wOiAxMHB4O1xuXG4gICAgQGluY2x1ZGUgbWVkaWEoJz49c20nKSB7XG4gICAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgIH1cbiAgfVxuXG4gICYtLWdsb2JhbCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHRleHQ7XG5cbiAgICAmOjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGV4dDtcbiAgICB9XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHJlZDtcbiAgICB9XG4gIH1cblxuICAmLS1wcmltYXJ5IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeTtcbiAgICBjb2xvcjogJGJnO1xuICAgIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwIDRweCAkYmc7XG5cbiAgICAmOjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeTtcbiAgICAgIGJvcmRlci1jb2xvcjogJGJnO1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi9pbWcvaWNvbi1zbWlsZS5zdmcnKTtcbiAgICB9XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnk7XG4gICAgICBib3JkZXItY29sb3I6ICRiZztcbiAgICB9XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRiZztcbiAgICAgIGNvbG9yOiAkcHJpbWFyeTtcbiAgICAgIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwIDRweCAkcHJpbWFyeTtcblxuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiRiZztcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkcHJpbWFyeTtcbiAgICAgIH1cblxuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJnO1xuICAgICAgICBib3JkZXItY29sb3I6ICRwcmltYXJ5O1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uL2ltZy9pY29uLXNtaWxlLXByaW1hcnkuc3ZnJyk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5jdGEge1xuICBAaW5jbHVkZSBjdGE7XG59XG5cbi5pY29uIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICBzdmcge1xuICAgIHdpZHRoOiAkcGFkIC8gMS41O1xuICAgIGhlaWdodDogJHBhZCAvIDEuNTtcbiAgICBtYXJnaW4tcmlnaHQ6ICRwYWQgLyAzLjU7XG4gIH1cblxuICAuc3ZnLWljb24ge1xuICAgIHRyYW5zaXRpb246IGZpbGwgMC4ycyAkZWFzaW5nO1xuICB9XG5cbiAgJjpob3ZlciB7XG4gICAgY29sb3I6ICRwcmltYXJ5O1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAgIC5zdmctaWNvbiB7XG4gICAgICBmaWxsOiAkcHJpbWFyeTtcbiAgICB9XG4gIH1cblxuICAmLS1zb2NpYWwge1xuICAgIHN2ZyB7XG4gICAgICB3aWR0aDogJGJ1bXA7XG4gICAgICBoZWlnaHQ6ICRidW1wO1xuICAgICAgbWFyZ2luOiAwO1xuXG4gICAgICBAaW5jbHVkZSBtZWRpYSgnPj1zbScpIHtcbiAgICAgICAgd2lkdGg6ICRidW1wICogMS43O1xuICAgICAgICBoZWlnaHQ6ICRidW1wICogMS43O1xuICAgICAgfVxuICAgIH1cblxuICAgIC5zdmctaWNvbiB7XG4gICAgICBmaWxsOiAkdGV4dDtcbiAgICAgIHN0cm9rZTogI2ZmZjtcbiAgICB9XG4gIH1cbn1cblxuaW1nIHtcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbi5mZyxcbi5iZyB7XG4gIHRyYW5zaXRpb246IGFsbCAwLjJzICRlYXNpbmc7XG59XG5cbi5zdmcge1xuICB0cmFuc2l0aW9uOiBhbGwgMC4ycyAkZWFzaW5nO1xufVxuXG4ucG9pbnRlci1kaXNhYmxlZCB7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuXG4uaGlkZGVuIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB2aXNpYmlsaXR5OiBoaWRkZW4gIWltcG9ydGFudDtcbn1cblxuLy8gS2VlcCB2aWRlbyByYXRpbyBmb3IgZmx1aWQgd2lkdGhzXG4udmlkZW8tY29udGFpbmVyLFxuLm1lZGlhLXZpbWVvLXZpZGVvIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nLWJvdHRvbTogNTYuMjUlO1xuICBwYWRkaW5nLXRvcDogMjVweDtcbiAgaGVpZ2h0OiAwO1xuXG4gIGlmcmFtZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgfVxufVxuXG4vLyBTb3VuY2xvdWRcbi5tZWRpYS1zb3VuZGNsb3VkLWF1ZGlvIGlmcmFtZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtaGVpZ2h0OiAxNTBweDtcbn1cblxuLy8gVUwgY29sc1xuLmxpc3Rpbmcge1xuICBAaW5jbHVkZSBsaS1yZXNldDtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gIG1hcmdpbi1sZWZ0OiAtJHBhZCAvIDI7XG4gIHdpZHRoOiBjYWxjKDEwMCUgKyAjeyRwYWR9KTtcblxuICBAaW5jbHVkZSBtZWRpYSgnPD1zbScpIHtcbiAgICBtYXJnaW46IDAgKC0kcGFkLzMpO1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgKyAjeyRwYWQvMS41fSk7XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYSgnPD14cycpIHtcbiAgICBtYXJnaW46IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICAmID4gbGkge1xuICAgIHBhZGRpbmc6ICRwYWQvMjtcblxuICAgIEBpbmNsdWRlIG1lZGlhKCc8PXNtJykge1xuICAgICAgcGFkZGluZzogMCAkcGFkLzMgJHBhZC8xLjU7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEoJzw9eHMnKSB7XG4gICAgICBwYWRkaW5nOiAwIDAgJHBhZDtcbiAgICB9XG4gIH1cblxuICAmLS1vbmUtY29sIHtcbiAgICAmID4gbGkge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICB9XG5cbiAgJi0tdHdvLWNvbCB7XG4gICAgJiA+IGxpIHtcbiAgICAgIHdpZHRoOiA1MCU7XG5cbiAgICAgIEBpbmNsdWRlIG1lZGlhKCc8PXhzJykge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmLS10aHJlZS1jb2wge1xuICAgICYgPiBsaSB7XG4gICAgICB3aWR0aDogMzMuMzMzMyU7XG5cbiAgICAgIEBpbmNsdWRlIG1lZGlhKCc8PWxnJykge1xuICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgfVxuXG4gICAgICBAaW5jbHVkZSBtZWRpYSgnPD14cycpIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB9XG4gICAgfVxuICB9XG4gICYtLWZvdXItY29sIHtcbiAgICAmID4gbGkge1xuICAgICAgd2lkdGg6IDI1JTtcblxuICAgICAgQGluY2x1ZGUgbWVkaWEoJzw9c20nKSB7XG4gICAgICAgIHdpZHRoOiA1MCU7XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIG1lZGlhKCc8PXhzJykge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgJi0tZml2ZS1jb2wge1xuICAgICYgPiBsaSB7XG4gICAgICB3aWR0aDogMjAlO1xuXG4gICAgICBAaW5jbHVkZSBtZWRpYSgnPD1zbScpIHtcbiAgICAgICAgd2lkdGg6IDMzLjMzMzMlO1xuICAgICAgfVxuXG4gICAgICBAaW5jbHVkZSBtZWRpYSgnPD14cycpIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB9XG4gICAgfVxuICB9XG4gICYtLXNpeC1jb2wge1xuICAgICYgPiBsaSB7XG4gICAgICB3aWR0aDogMTYuNjY2NiU7XG5cbiAgICAgIEBpbmNsdWRlIG1lZGlhKCc8PXNtJykge1xuICAgICAgICB3aWR0aDogMzMuMzMzMyU7XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIG1lZGlhKCc8PXhzJykge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIkBjaGFyc2V0IFwiVVRGLThcIjtcblxuLy8gICAgIF8gICAgICAgICAgICBfICAgICAgICAgICBfICAgICAgICAgICAgICAgICAgICAgICAgICAgXyBfXG4vLyAgICAoXykgICAgICAgICAgfCB8ICAgICAgICAgfCB8ICAgICAgICAgICAgICAgICAgICAgICAgIHwgKF8pXG4vLyAgICAgXyBfIF9fICAgX19ffCB8XyAgIF8gIF9ffCB8IF9fXyAgIF8gX18gX19fICAgX19fICBfX3wgfF8gIF9fIF9cbi8vICAgIHwgfCAnXyBcXCAvIF9ffCB8IHwgfCB8LyBfYCB8LyBfIFxcIHwgJ18gYCBfIFxcIC8gXyBcXC8gX2AgfCB8LyBfYCB8XG4vLyAgICB8IHwgfCB8IHwgKF9ffCB8IHxffCB8IChffCB8ICBfXy8gfCB8IHwgfCB8IHwgIF9fLyAoX3wgfCB8IChffCB8XG4vLyAgICB8X3xffCB8X3xcXF9fX3xffFxcX18sX3xcXF9fLF98XFxfX198IHxffCB8X3wgfF98XFxfX198XFxfXyxffF98XFxfXyxffFxuLy9cbi8vICAgICAgU2ltcGxlLCBlbGVnYW50IGFuZCBtYWludGFpbmFibGUgbWVkaWEgcXVlcmllcyBpbiBTYXNzXG4vLyAgICAgICAgICAgICAgICAgICAgICAgIHYxLjQuOFxuLy9cbi8vICAgICAgICAgICAgICAgIGh0dHA6Ly9pbmNsdWRlLW1lZGlhLmNvbVxuLy9cbi8vICAgICAgICAgQXV0aG9yczogRWR1YXJkbyBCb3VjYXMgKEBlZHVhcmRvYm91Y2FzKVxuLy8gICAgICAgICAgICAgICAgICBIdWdvIEdpcmF1ZGVsIChAaHVnb2dpcmF1ZGVsKVxuLy9cbi8vICAgICAgVGhpcyBwcm9qZWN0IGlzIGxpY2Vuc2VkIHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgTUlUIGxpY2Vuc2VcblxuLy8vL1xuLy8vIGluY2x1ZGUtbWVkaWEgbGlicmFyeSBwdWJsaWMgY29uZmlndXJhdGlvblxuLy8vIEBhdXRob3IgRWR1YXJkbyBCb3VjYXNcbi8vLyBAYWNjZXNzIHB1YmxpY1xuLy8vL1xuXG4vLy9cbi8vLyBDcmVhdGVzIGEgbGlzdCBvZiBnbG9iYWwgYnJlYWtwb2ludHNcbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBDcmVhdGVzIGEgc2luZ2xlIGJyZWFrcG9pbnQgd2l0aCB0aGUgbGFiZWwgYHBob25lYFxuLy8vICAkYnJlYWtwb2ludHM6ICgncGhvbmUnOiAzMjBweCk7XG4vLy9cbiRicmVha3BvaW50czogKFxuICBcInBob25lXCI6IDMyMHB4LFxuICBcInRhYmxldFwiOiA3NjhweCxcbiAgXCJkZXNrdG9wXCI6IDEwMjRweFxuKSAhZGVmYXVsdDtcblxuLy8vXG4vLy8gQ3JlYXRlcyBhIGxpc3Qgb2Ygc3RhdGljIGV4cHJlc3Npb25zIG9yIG1lZGlhIHR5cGVzXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gQ3JlYXRlcyBhIHNpbmdsZSBtZWRpYSB0eXBlIChzY3JlZW4pXG4vLy8gICRtZWRpYS1leHByZXNzaW9uczogKCdzY3JlZW4nOiAnc2NyZWVuJyk7XG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gQ3JlYXRlcyBhIHN0YXRpYyBleHByZXNzaW9uIHdpdGggbG9naWNhbCBkaXNqdW5jdGlvbiAoT1Igb3BlcmF0b3IpXG4vLy8gICRtZWRpYS1leHByZXNzaW9uczogKFxuLy8vICAgICdyZXRpbmEyeCc6ICcoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAyKSwgKG1pbi1yZXNvbHV0aW9uOiAxOTJkcGkpJ1xuLy8vICApO1xuLy8vXG4kbWVkaWEtZXhwcmVzc2lvbnM6IChcbiAgXCJzY3JlZW5cIjogXCJzY3JlZW5cIixcbiAgXCJwcmludFwiOiBcInByaW50XCIsXG4gIFwiaGFuZGhlbGRcIjogXCJoYW5kaGVsZFwiLFxuICBcImxhbmRzY2FwZVwiOiBcIihvcmllbnRhdGlvbjogbGFuZHNjYXBlKVwiLFxuICBcInBvcnRyYWl0XCI6IFwiKG9yaWVudGF0aW9uOiBwb3J0cmFpdClcIixcbiAgXCJyZXRpbmEyeFwiOlxuICAgIFwiKC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzogMiksIChtaW4tcmVzb2x1dGlvbjogMTkyZHBpKSwgKG1pbi1yZXNvbHV0aW9uOiAyZHBweClcIixcbiAgXCJyZXRpbmEzeFwiOlxuICAgIFwiKC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzogMyksIChtaW4tcmVzb2x1dGlvbjogMzUwZHBpKSwgKG1pbi1yZXNvbHV0aW9uOiAzZHBweClcIlxuKSAhZGVmYXVsdDtcblxuLy8vXG4vLy8gRGVmaW5lcyBhIG51bWJlciB0byBiZSBhZGRlZCBvciBzdWJ0cmFjdGVkIGZyb20gZWFjaCB1bml0IHdoZW4gZGVjbGFyaW5nIGJyZWFrcG9pbnRzIHdpdGggZXhjbHVzaXZlIGludGVydmFsc1xuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIEludGVydmFsIGZvciBwaXhlbHMgaXMgZGVmaW5lZCBhcyBgMWAgYnkgZGVmYXVsdFxuLy8vICBAaW5jbHVkZSBtZWRpYSgnPjEyOHB4Jykge31cbi8vL1xuLy8vICAvKiBHZW5lcmF0ZXM6ICovXG4vLy8gIEBtZWRpYSAobWluLXdpZHRoOiAxMjlweCkge31cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBJbnRlcnZhbCBmb3IgZW1zIGlzIGRlZmluZWQgYXMgYDAuMDFgIGJ5IGRlZmF1bHRcbi8vLyAgQGluY2x1ZGUgbWVkaWEoJz4yMGVtJykge31cbi8vL1xuLy8vICAvKiBHZW5lcmF0ZXM6ICovXG4vLy8gIEBtZWRpYSAobWluLXdpZHRoOiAyMC4wMWVtKSB7fVxuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIEludGVydmFsIGZvciByZW1zIGlzIGRlZmluZWQgYXMgYDAuMWAgYnkgZGVmYXVsdCwgdG8gYmUgdXNlZCB3aXRoIGBmb250LXNpemU6IDYyLjUlO2Bcbi8vLyAgQGluY2x1ZGUgbWVkaWEoJz4yLjByZW0nKSB7fVxuLy8vXG4vLy8gIC8qIEdlbmVyYXRlczogKi9cbi8vLyAgQG1lZGlhIChtaW4td2lkdGg6IDIuMXJlbSkge31cbi8vL1xuJHVuaXQtaW50ZXJ2YWxzOiAoXG4gIFwicHhcIjogMSxcbiAgXCJlbVwiOiAwLjAxLFxuICBcInJlbVwiOiAwLjEsXG4gIFwiXCI6IDBcbikgIWRlZmF1bHQ7XG5cbi8vL1xuLy8vIERlZmluZXMgd2hldGhlciBzdXBwb3J0IGZvciBtZWRpYSBxdWVyaWVzIGlzIGF2YWlsYWJsZSwgdXNlZnVsIGZvciBjcmVhdGluZyBzZXBhcmF0ZSBzdHlsZXNoZWV0c1xuLy8vIGZvciBicm93c2VycyB0aGF0IGRvbid0IHN1cHBvcnQgbWVkaWEgcXVlcmllcy5cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBEaXNhYmxlcyBzdXBwb3J0IGZvciBtZWRpYSBxdWVyaWVzXG4vLy8gICRpbS1tZWRpYS1zdXBwb3J0OiBmYWxzZTtcbi8vLyAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0Jykge1xuLy8vICAgIC5mb28ge1xuLy8vICAgICAgY29sb3I6IHRvbWF0bztcbi8vLyAgICB9XG4vLy8gIH1cbi8vL1xuLy8vICAvKiBHZW5lcmF0ZXM6ICovXG4vLy8gIC5mb28ge1xuLy8vICAgIGNvbG9yOiB0b21hdG87XG4vLy8gIH1cbi8vL1xuJGltLW1lZGlhLXN1cHBvcnQ6IHRydWUgIWRlZmF1bHQ7XG5cbi8vL1xuLy8vIFNlbGVjdHMgd2hpY2ggYnJlYWtwb2ludCB0byBlbXVsYXRlIHdoZW4gc3VwcG9ydCBmb3IgbWVkaWEgcXVlcmllcyBpcyBkaXNhYmxlZC4gTWVkaWEgcXVlcmllcyB0aGF0IHN0YXJ0IGF0IG9yXG4vLy8gaW50ZXJjZXB0IHRoZSBicmVha3BvaW50IHdpbGwgYmUgZGlzcGxheWVkLCBhbnkgb3RoZXJzIHdpbGwgYmUgaWdub3JlZC5cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBUaGlzIG1lZGlhIHF1ZXJ5IHdpbGwgc2hvdyBiZWNhdXNlIGl0IGludGVyY2VwdHMgdGhlIHN0YXRpYyBicmVha3BvaW50XG4vLy8gICRpbS1tZWRpYS1zdXBwb3J0OiBmYWxzZTtcbi8vLyAgJGltLW5vLW1lZGlhLWJyZWFrcG9pbnQ6ICdkZXNrdG9wJztcbi8vLyAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0Jykge1xuLy8vICAgIC5mb28ge1xuLy8vICAgICAgY29sb3I6IHRvbWF0bztcbi8vLyAgICB9XG4vLy8gIH1cbi8vL1xuLy8vICAvKiBHZW5lcmF0ZXM6ICovXG4vLy8gIC5mb28ge1xuLy8vICAgIGNvbG9yOiB0b21hdG87XG4vLy8gIH1cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBUaGlzIG1lZGlhIHF1ZXJ5IHdpbGwgTk9UIHNob3cgYmVjYXVzZSBpdCBkb2VzIG5vdCBpbnRlcmNlcHQgdGhlIGRlc2t0b3AgYnJlYWtwb2ludFxuLy8vICAkaW0tbWVkaWEtc3VwcG9ydDogZmFsc2U7XG4vLy8gICRpbS1uby1tZWRpYS1icmVha3BvaW50OiAndGFibGV0Jztcbi8vLyAgQGluY2x1ZGUgbWVkaWEoJz49ZGVza3RvcCcpIHtcbi8vLyAgICAuZm9vIHtcbi8vLyAgICAgIGNvbG9yOiB0b21hdG87XG4vLy8gICAgfVxuLy8vICB9XG4vLy9cbi8vLyAgLyogTm8gb3V0cHV0ICovXG4vLy9cbiRpbS1uby1tZWRpYS1icmVha3BvaW50OiBcImRlc2t0b3BcIiAhZGVmYXVsdDtcblxuLy8vXG4vLy8gU2VsZWN0cyB3aGljaCBtZWRpYSBleHByZXNzaW9ucyBhcmUgYWxsb3dlZCBpbiBhbiBleHByZXNzaW9uIGZvciBpdCB0byBiZSB1c2VkIHdoZW4gbWVkaWEgcXVlcmllc1xuLy8vIGFyZSBub3Qgc3VwcG9ydGVkLlxuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFRoaXMgbWVkaWEgcXVlcnkgd2lsbCBzaG93IGJlY2F1c2UgaXQgaW50ZXJjZXB0cyB0aGUgc3RhdGljIGJyZWFrcG9pbnQgYW5kIGNvbnRhaW5zIG9ubHkgYWNjZXB0ZWQgbWVkaWEgZXhwcmVzc2lvbnNcbi8vLyAgJGltLW1lZGlhLXN1cHBvcnQ6IGZhbHNlO1xuLy8vICAkaW0tbm8tbWVkaWEtYnJlYWtwb2ludDogJ2Rlc2t0b3AnO1xuLy8vICAkaW0tbm8tbWVkaWEtZXhwcmVzc2lvbnM6ICgnc2NyZWVuJyk7XG4vLy8gIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcsICdzY3JlZW4nKSB7XG4vLy8gICAgLmZvbyB7XG4vLy8gICAgICBjb2xvcjogdG9tYXRvO1xuLy8vICAgIH1cbi8vLyAgfVxuLy8vXG4vLy8gICAvKiBHZW5lcmF0ZXM6ICovXG4vLy8gICAuZm9vIHtcbi8vLyAgICAgY29sb3I6IHRvbWF0bztcbi8vLyAgIH1cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBUaGlzIG1lZGlhIHF1ZXJ5IHdpbGwgTk9UIHNob3cgYmVjYXVzZSBpdCBpbnRlcmNlcHRzIHRoZSBzdGF0aWMgYnJlYWtwb2ludCBidXQgY29udGFpbnMgYSBtZWRpYSBleHByZXNzaW9uIHRoYXQgaXMgbm90IGFjY2VwdGVkXG4vLy8gICRpbS1tZWRpYS1zdXBwb3J0OiBmYWxzZTtcbi8vLyAgJGltLW5vLW1lZGlhLWJyZWFrcG9pbnQ6ICdkZXNrdG9wJztcbi8vLyAgJGltLW5vLW1lZGlhLWV4cHJlc3Npb25zOiAoJ3NjcmVlbicpO1xuLy8vICBAaW5jbHVkZSBtZWRpYSgnPj10YWJsZXQnLCAncmV0aW5hMngnKSB7XG4vLy8gICAgLmZvbyB7XG4vLy8gICAgICBjb2xvcjogdG9tYXRvO1xuLy8vICAgIH1cbi8vLyAgfVxuLy8vXG4vLy8gIC8qIE5vIG91dHB1dCAqL1xuLy8vXG4kaW0tbm8tbWVkaWEtZXhwcmVzc2lvbnM6IChcInNjcmVlblwiLCBcInBvcnRyYWl0XCIsIFwibGFuZHNjYXBlXCIpICFkZWZhdWx0O1xuXG4vLy8vXG4vLy8gQ3Jvc3MtZW5naW5lIGxvZ2dpbmcgZW5naW5lXG4vLy8gQGF1dGhvciBIdWdvIEdpcmF1ZGVsXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy8vXG5cbi8vL1xuLy8vIExvZyBhIG1lc3NhZ2UgZWl0aGVyIHdpdGggYEBlcnJvcmAgaWYgc3VwcG9ydGVkXG4vLy8gZWxzZSB3aXRoIGBAd2FybmAsIHVzaW5nIGBmZWF0dXJlLWV4aXN0cygnYXQtZXJyb3InKWBcbi8vLyB0byBkZXRlY3Qgc3VwcG9ydC5cbi8vL1xuLy8vIEBwYXJhbSB7U3RyaW5nfSAkbWVzc2FnZSAtIE1lc3NhZ2UgdG8gbG9nXG4vLy9cbkBmdW5jdGlvbiBsb2coJG1lc3NhZ2UpIHtcbiAgQGlmIGZlYXR1cmUtZXhpc3RzKFwiYXQtZXJyb3JcIikge1xuICAgIEBlcnJvciAkbWVzc2FnZTtcbiAgfSBAZWxzZSB7XG4gICAgQHdhcm4gJG1lc3NhZ2U7XG4gICAgJF86IG5vb3AoKTtcbiAgfVxuXG4gIEByZXR1cm4gJG1lc3NhZ2U7XG59XG5cbi8vL1xuLy8vIFdyYXBwZXIgbWl4aW4gZm9yIHRoZSBsb2cgZnVuY3Rpb24gc28gaXQgY2FuIGJlIHVzZWQgd2l0aCBhIG1vcmUgZnJpZW5kbHlcbi8vLyBBUEkgdGhhbiBgQGlmIGxvZygnLi4nKSB7fWAgb3IgYCRfOiBsb2coJy4uJylgLiBCYXNpY2FsbHksIHVzZSB0aGUgZnVuY3Rpb25cbi8vLyB3aXRoaW4gZnVuY3Rpb25zIGJlY2F1c2UgaXQgaXMgbm90IHBvc3NpYmxlIHRvIGluY2x1ZGUgYSBtaXhpbiBpbiBhIGZ1bmN0aW9uXG4vLy8gYW5kIHVzZSB0aGUgbWl4aW4gZXZlcnl3aGVyZSBlbHNlIGJlY2F1c2UgaXQncyBtdWNoIG1vcmUgZWxlZ2FudC5cbi8vL1xuLy8vIEBwYXJhbSB7U3RyaW5nfSAkbWVzc2FnZSAtIE1lc3NhZ2UgdG8gbG9nXG4vLy9cbkBtaXhpbiBsb2coJG1lc3NhZ2UpIHtcbiAgQGlmIGxvZygkbWVzc2FnZSkge1xuICB9XG59XG5cbi8vL1xuLy8vIEZ1bmN0aW9uIHdpdGggbm8gYEByZXR1cm5gIGNhbGxlZCBuZXh0IHRvIGBAd2FybmAgaW4gU2FzcyAzLjNcbi8vLyB0byB0cmlnZ2VyIGEgY29tcGlsaW5nIGVycm9yIGFuZCBzdG9wIHRoZSBwcm9jZXNzLlxuLy8vXG5AZnVuY3Rpb24gbm9vcCgpIHtcbn1cblxuLy8vXG4vLy8gRGV0ZXJtaW5lcyB3aGV0aGVyIGEgbGlzdCBvZiBjb25kaXRpb25zIGlzIGludGVyY2VwdGVkIGJ5IHRoZSBzdGF0aWMgYnJlYWtwb2ludC5cbi8vL1xuLy8vIEBwYXJhbSB7QXJnbGlzdH0gICAkY29uZGl0aW9ucyAgLSBNZWRpYSBxdWVyeSBjb25kaXRpb25zXG4vLy9cbi8vLyBAcmV0dXJuIHtCb29sZWFufSAtIFJldHVybnMgdHJ1ZSBpZiB0aGUgY29uZGl0aW9ucyBhcmUgaW50ZXJjZXB0ZWQgYnkgdGhlIHN0YXRpYyBicmVha3BvaW50XG4vLy9cbkBmdW5jdGlvbiBpbS1pbnRlcmNlcHRzLXN0YXRpYy1icmVha3BvaW50KCRjb25kaXRpb25zLi4uKSB7XG4gICRuby1tZWRpYS1icmVha3BvaW50LXZhbHVlOiBtYXAtZ2V0KCRicmVha3BvaW50cywgJGltLW5vLW1lZGlhLWJyZWFrcG9pbnQpO1xuXG4gIEBpZiBub3QgJG5vLW1lZGlhLWJyZWFrcG9pbnQtdmFsdWUge1xuICAgIEBpZiBsb2coXCJgI3skaW0tbm8tbWVkaWEtYnJlYWtwb2ludH1gIGlzIG5vdCBhIHZhbGlkIGJyZWFrcG9pbnQuXCIpIHtcbiAgICB9XG4gIH1cblxuICBAZWFjaCAkY29uZGl0aW9uIGluICRjb25kaXRpb25zIHtcbiAgICBAaWYgbm90IG1hcC1oYXMta2V5KCRtZWRpYS1leHByZXNzaW9ucywgJGNvbmRpdGlvbikge1xuICAgICAgJG9wZXJhdG9yOiBnZXQtZXhwcmVzc2lvbi1vcGVyYXRvcigkY29uZGl0aW9uKTtcbiAgICAgICRwcmVmaXg6IGdldC1leHByZXNzaW9uLXByZWZpeCgkb3BlcmF0b3IpO1xuICAgICAgJHZhbHVlOiBnZXQtZXhwcmVzc2lvbi12YWx1ZSgkY29uZGl0aW9uLCAkb3BlcmF0b3IpO1xuXG4gICAgICAvLyBzY3NzLWxpbnQ6ZGlzYWJsZSBTcGFjZUFyb3VuZE9wZXJhdG9yXG4gICAgICBAaWYgKCRwcmVmaXggPT0gXCJtYXhcIiBhbmQgJHZhbHVlIDw9ICRuby1tZWRpYS1icmVha3BvaW50LXZhbHVlKSBvclxuICAgICAgICAoJHByZWZpeCA9PSBcIm1pblwiIGFuZCAkdmFsdWUgPiAkbm8tbWVkaWEtYnJlYWtwb2ludC12YWx1ZSlcbiAgICAgIHtcbiAgICAgICAgQHJldHVybiBmYWxzZTtcbiAgICAgIH1cbiAgICB9IEBlbHNlIGlmIG5vdCBpbmRleCgkaW0tbm8tbWVkaWEtZXhwcmVzc2lvbnMsICRjb25kaXRpb24pIHtcbiAgICAgIEByZXR1cm4gZmFsc2U7XG4gICAgfVxuICB9XG5cbiAgQHJldHVybiB0cnVlO1xufVxuXG4vLy8vXG4vLy8gUGFyc2luZyBlbmdpbmVcbi8vLyBAYXV0aG9yIEh1Z28gR2lyYXVkZWxcbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vLy9cblxuLy8vXG4vLy8gR2V0IG9wZXJhdG9yIG9mIGFuIGV4cHJlc3Npb25cbi8vL1xuLy8vIEBwYXJhbSB7U3RyaW5nfSAkZXhwcmVzc2lvbiAtIEV4cHJlc3Npb24gdG8gZXh0cmFjdCBvcGVyYXRvciBmcm9tXG4vLy9cbi8vLyBAcmV0dXJuIHtTdHJpbmd9IC0gQW55IG9mIGA+PWAsIGA+YCwgYDw9YCwgYDxgLCBg4omlYCwgYOKJpGBcbi8vL1xuQGZ1bmN0aW9uIGdldC1leHByZXNzaW9uLW9wZXJhdG9yKCRleHByZXNzaW9uKSB7XG4gIEBlYWNoICRvcGVyYXRvciBpbiAoXCI+PVwiLCBcIj5cIiwgXCI8PVwiLCBcIjxcIiwgXCLiiaVcIiwgXCLiiaRcIikge1xuICAgIEBpZiBzdHItaW5kZXgoJGV4cHJlc3Npb24sICRvcGVyYXRvcikge1xuICAgICAgQHJldHVybiAkb3BlcmF0b3I7XG4gICAgfVxuICB9XG5cbiAgLy8gSXQgaXMgbm90IHBvc3NpYmxlIHRvIGluY2x1ZGUgYSBtaXhpbiBpbnNpZGUgYSBmdW5jdGlvbiwgc28gd2UgaGF2ZSB0b1xuICAvLyByZWx5IG9uIHRoZSBgbG9nKC4uKWAgZnVuY3Rpb24gcmF0aGVyIHRoYW4gdGhlIGBsb2coLi4pYCBtaXhpbi4gQmVjYXVzZVxuICAvLyBmdW5jdGlvbnMgY2Fubm90IGJlIGNhbGxlZCBhbnl3aGVyZSBpbiBTYXNzLCB3ZSBuZWVkIHRvIGhhY2sgdGhlIGNhbGwgaW5cbiAgLy8gYSBkdW1teSB2YXJpYWJsZSwgc3VjaCBhcyBgJF9gLiBJZiBhbnlib2R5IGV2ZXIgcmFpc2UgYSBzY29waW5nIGlzc3VlIHdpdGhcbiAgLy8gU2FzcyAzLjMsIGNoYW5nZSB0aGlzIGxpbmUgaW4gYEBpZiBsb2coLi4pIHt9YCBpbnN0ZWFkLlxuICAkXzogbG9nKFwiTm8gb3BlcmF0b3IgZm91bmQgaW4gYCN7JGV4cHJlc3Npb259YC5cIik7XG59XG5cbi8vL1xuLy8vIEdldCBkaW1lbnNpb24gb2YgYW4gZXhwcmVzc2lvbiwgYmFzZWQgb24gYSBmb3VuZCBvcGVyYXRvclxuLy8vXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRleHByZXNzaW9uIC0gRXhwcmVzc2lvbiB0byBleHRyYWN0IGRpbWVuc2lvbiBmcm9tXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRvcGVyYXRvciAtIE9wZXJhdG9yIGZyb20gYCRleHByZXNzaW9uYFxuLy8vXG4vLy8gQHJldHVybiB7U3RyaW5nfSAtIGB3aWR0aGAgb3IgYGhlaWdodGAgKG9yIHBvdGVudGlhbGx5IGFueXRoaW5nIGVsc2UpXG4vLy9cbkBmdW5jdGlvbiBnZXQtZXhwcmVzc2lvbi1kaW1lbnNpb24oJGV4cHJlc3Npb24sICRvcGVyYXRvcikge1xuICAkb3BlcmF0b3ItaW5kZXg6IHN0ci1pbmRleCgkZXhwcmVzc2lvbiwgJG9wZXJhdG9yKTtcbiAgJHBhcnNlZC1kaW1lbnNpb246IHN0ci1zbGljZSgkZXhwcmVzc2lvbiwgMCwgJG9wZXJhdG9yLWluZGV4IC0gMSk7XG4gICRkaW1lbnNpb246IFwid2lkdGhcIjtcblxuICBAaWYgc3RyLWxlbmd0aCgkcGFyc2VkLWRpbWVuc2lvbikgPiAwIHtcbiAgICAkZGltZW5zaW9uOiAkcGFyc2VkLWRpbWVuc2lvbjtcbiAgfVxuXG4gIEByZXR1cm4gJGRpbWVuc2lvbjtcbn1cblxuLy8vXG4vLy8gR2V0IGRpbWVuc2lvbiBwcmVmaXggYmFzZWQgb24gYW4gb3BlcmF0b3Jcbi8vL1xuLy8vIEBwYXJhbSB7U3RyaW5nfSAkb3BlcmF0b3IgLSBPcGVyYXRvclxuLy8vXG4vLy8gQHJldHVybiB7U3RyaW5nfSAtIGBtaW5gIG9yIGBtYXhgXG4vLy9cbkBmdW5jdGlvbiBnZXQtZXhwcmVzc2lvbi1wcmVmaXgoJG9wZXJhdG9yKSB7XG4gIEByZXR1cm4gaWYoaW5kZXgoKFwiPFwiLCBcIjw9XCIsIFwi4omkXCIpLCAkb3BlcmF0b3IpLCBcIm1heFwiLCBcIm1pblwiKTtcbn1cblxuLy8vXG4vLy8gR2V0IHZhbHVlIG9mIGFuIGV4cHJlc3Npb24sIGJhc2VkIG9uIGEgZm91bmQgb3BlcmF0b3Jcbi8vL1xuLy8vIEBwYXJhbSB7U3RyaW5nfSAkZXhwcmVzc2lvbiAtIEV4cHJlc3Npb24gdG8gZXh0cmFjdCB2YWx1ZSBmcm9tXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRvcGVyYXRvciAtIE9wZXJhdG9yIGZyb20gYCRleHByZXNzaW9uYFxuLy8vXG4vLy8gQHJldHVybiB7TnVtYmVyfSAtIEEgbnVtZXJpYyB2YWx1ZVxuLy8vXG5AZnVuY3Rpb24gZ2V0LWV4cHJlc3Npb24tdmFsdWUoJGV4cHJlc3Npb24sICRvcGVyYXRvcikge1xuICAkb3BlcmF0b3ItaW5kZXg6IHN0ci1pbmRleCgkZXhwcmVzc2lvbiwgJG9wZXJhdG9yKTtcbiAgJHZhbHVlOiBzdHItc2xpY2UoJGV4cHJlc3Npb24sICRvcGVyYXRvci1pbmRleCArIHN0ci1sZW5ndGgoJG9wZXJhdG9yKSk7XG5cbiAgQGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgJHZhbHVlKSB7XG4gICAgJHZhbHVlOiBtYXAtZ2V0KCRicmVha3BvaW50cywgJHZhbHVlKTtcbiAgfSBAZWxzZSB7XG4gICAgJHZhbHVlOiB0by1udW1iZXIoJHZhbHVlKTtcbiAgfVxuXG4gICRpbnRlcnZhbDogbWFwLWdldCgkdW5pdC1pbnRlcnZhbHMsIHVuaXQoJHZhbHVlKSk7XG5cbiAgQGlmIG5vdCAkaW50ZXJ2YWwge1xuICAgIC8vIEl0IGlzIG5vdCBwb3NzaWJsZSB0byBpbmNsdWRlIGEgbWl4aW4gaW5zaWRlIGEgZnVuY3Rpb24sIHNvIHdlIGhhdmUgdG9cbiAgICAvLyByZWx5IG9uIHRoZSBgbG9nKC4uKWAgZnVuY3Rpb24gcmF0aGVyIHRoYW4gdGhlIGBsb2coLi4pYCBtaXhpbi4gQmVjYXVzZVxuICAgIC8vIGZ1bmN0aW9ucyBjYW5ub3QgYmUgY2FsbGVkIGFueXdoZXJlIGluIFNhc3MsIHdlIG5lZWQgdG8gaGFjayB0aGUgY2FsbCBpblxuICAgIC8vIGEgZHVtbXkgdmFyaWFibGUsIHN1Y2ggYXMgYCRfYC4gSWYgYW55Ym9keSBldmVyIHJhaXNlIGEgc2NvcGluZyBpc3N1ZSB3aXRoXG4gICAgLy8gU2FzcyAzLjMsIGNoYW5nZSB0aGlzIGxpbmUgaW4gYEBpZiBsb2coLi4pIHt9YCBpbnN0ZWFkLlxuICAgICRfOiBsb2coXCJVbmtub3duIHVuaXQgYCN7dW5pdCgkdmFsdWUpfWAuXCIpO1xuICB9XG5cbiAgQGlmICRvcGVyYXRvciA9PSBcIj5cIiB7XG4gICAgJHZhbHVlOiAkdmFsdWUgKyAkaW50ZXJ2YWw7XG4gIH0gQGVsc2UgaWYgJG9wZXJhdG9yID09IFwiPFwiIHtcbiAgICAkdmFsdWU6ICR2YWx1ZSAtICRpbnRlcnZhbDtcbiAgfVxuXG4gIEByZXR1cm4gJHZhbHVlO1xufVxuXG4vLy9cbi8vLyBQYXJzZSBhbiBleHByZXNzaW9uIHRvIHJldHVybiBhIHZhbGlkIG1lZGlhLXF1ZXJ5IGV4cHJlc3Npb25cbi8vL1xuLy8vIEBwYXJhbSB7U3RyaW5nfSAkZXhwcmVzc2lvbiAtIEV4cHJlc3Npb24gdG8gcGFyc2Vcbi8vL1xuLy8vIEByZXR1cm4ge1N0cmluZ30gLSBWYWxpZCBtZWRpYSBxdWVyeVxuLy8vXG5AZnVuY3Rpb24gcGFyc2UtZXhwcmVzc2lvbigkZXhwcmVzc2lvbikge1xuICAvLyBJZiBpdCBpcyBwYXJ0IG9mICRtZWRpYS1leHByZXNzaW9ucywgaXQgaGFzIG5vIG9wZXJhdG9yXG4gIC8vIHRoZW4gdGhlcmUgaXMgbm8gbmVlZCB0byBnbyBhbnkgZnVydGhlciwganVzdCByZXR1cm4gdGhlIHZhbHVlXG4gIEBpZiBtYXAtaGFzLWtleSgkbWVkaWEtZXhwcmVzc2lvbnMsICRleHByZXNzaW9uKSB7XG4gICAgQHJldHVybiBtYXAtZ2V0KCRtZWRpYS1leHByZXNzaW9ucywgJGV4cHJlc3Npb24pO1xuICB9XG5cbiAgJG9wZXJhdG9yOiBnZXQtZXhwcmVzc2lvbi1vcGVyYXRvcigkZXhwcmVzc2lvbik7XG4gICRkaW1lbnNpb246IGdldC1leHByZXNzaW9uLWRpbWVuc2lvbigkZXhwcmVzc2lvbiwgJG9wZXJhdG9yKTtcbiAgJHByZWZpeDogZ2V0LWV4cHJlc3Npb24tcHJlZml4KCRvcGVyYXRvcik7XG4gICR2YWx1ZTogZ2V0LWV4cHJlc3Npb24tdmFsdWUoJGV4cHJlc3Npb24sICRvcGVyYXRvcik7XG5cbiAgQHJldHVybiBcIigjeyRwcmVmaXh9LSN7JGRpbWVuc2lvbn06ICN7JHZhbHVlfSlcIjtcbn1cblxuLy8vXG4vLy8gU2xpY2UgYCRsaXN0YCBiZXR3ZWVuIGAkc3RhcnRgIGFuZCBgJGVuZGAgaW5kZXhlc1xuLy8vXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy9cbi8vLyBAcGFyYW0ge0xpc3R9ICRsaXN0IC0gTGlzdCB0byBzbGljZVxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkc3RhcnQgWzFdIC0gU3RhcnQgaW5kZXhcbi8vLyBAcGFyYW0ge051bWJlcn0gJGVuZCBbbGVuZ3RoKCRsaXN0KV0gLSBFbmQgaW5kZXhcbi8vL1xuLy8vIEByZXR1cm4ge0xpc3R9IFNsaWNlZCBsaXN0XG4vLy9cbkBmdW5jdGlvbiBzbGljZSgkbGlzdCwgJHN0YXJ0OiAxLCAkZW5kOiBsZW5ndGgoJGxpc3QpKSB7XG4gIEBpZiBsZW5ndGgoJGxpc3QpIDwgMSBvciAkc3RhcnQgPiAkZW5kIHtcbiAgICBAcmV0dXJuICgpO1xuICB9XG5cbiAgJHJlc3VsdDogKCk7XG5cbiAgQGZvciAkaSBmcm9tICRzdGFydCB0aHJvdWdoICRlbmQge1xuICAgICRyZXN1bHQ6IGFwcGVuZCgkcmVzdWx0LCBudGgoJGxpc3QsICRpKSk7XG4gIH1cblxuICBAcmV0dXJuICRyZXN1bHQ7XG59XG5cbi8vLy9cbi8vLyBTdHJpbmcgdG8gbnVtYmVyIGNvbnZlcnRlclxuLy8vIEBhdXRob3IgSHVnbyBHaXJhdWRlbFxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vL1xuXG4vLy9cbi8vLyBDYXN0cyBhIHN0cmluZyBpbnRvIGEgbnVtYmVyXG4vLy9cbi8vLyBAcGFyYW0ge1N0cmluZyB8IE51bWJlcn0gJHZhbHVlIC0gVmFsdWUgdG8gYmUgcGFyc2VkXG4vLy9cbi8vLyBAcmV0dXJuIHtOdW1iZXJ9XG4vLy9cbkBmdW5jdGlvbiB0by1udW1iZXIoJHZhbHVlKSB7XG4gIEBpZiB0eXBlLW9mKCR2YWx1ZSkgPT0gXCJudW1iZXJcIiB7XG4gICAgQHJldHVybiAkdmFsdWU7XG4gIH0gQGVsc2UgaWYgdHlwZS1vZigkdmFsdWUpICE9IFwic3RyaW5nXCIge1xuICAgICRfOiBsb2coXCJWYWx1ZSBmb3IgYHRvLW51bWJlcmAgc2hvdWxkIGJlIGEgbnVtYmVyIG9yIGEgc3RyaW5nLlwiKTtcbiAgfVxuXG4gICRmaXJzdC1jaGFyYWN0ZXI6IHN0ci1zbGljZSgkdmFsdWUsIDEsIDEpO1xuICAkcmVzdWx0OiAwO1xuICAkZGlnaXRzOiAwO1xuICAkbWludXM6ICgkZmlyc3QtY2hhcmFjdGVyID09IFwiLVwiKTtcbiAgJG51bWJlcnM6IChcbiAgICBcIjBcIjogMCxcbiAgICBcIjFcIjogMSxcbiAgICBcIjJcIjogMixcbiAgICBcIjNcIjogMyxcbiAgICBcIjRcIjogNCxcbiAgICBcIjVcIjogNSxcbiAgICBcIjZcIjogNixcbiAgICBcIjdcIjogNyxcbiAgICBcIjhcIjogOCxcbiAgICBcIjlcIjogOVxuICApO1xuXG4gIC8vIFJlbW92ZSArLy0gc2lnbiBpZiBwcmVzZW50IGF0IGZpcnN0IGNoYXJhY3RlclxuICBAaWYgKCRmaXJzdC1jaGFyYWN0ZXIgPT0gXCIrXCIgb3IgJGZpcnN0LWNoYXJhY3RlciA9PSBcIi1cIikge1xuICAgICR2YWx1ZTogc3RyLXNsaWNlKCR2YWx1ZSwgMik7XG4gIH1cblxuICBAZm9yICRpIGZyb20gMSB0aHJvdWdoIHN0ci1sZW5ndGgoJHZhbHVlKSB7XG4gICAgJGNoYXJhY3Rlcjogc3RyLXNsaWNlKCR2YWx1ZSwgJGksICRpKTtcblxuICAgIEBpZiBub3QoaW5kZXgobWFwLWtleXMoJG51bWJlcnMpLCAkY2hhcmFjdGVyKSBvciAkY2hhcmFjdGVyID09IFwiLlwiKSB7XG4gICAgICBAcmV0dXJuIHRvLWxlbmd0aChpZigkbWludXMsIC0kcmVzdWx0LCAkcmVzdWx0KSwgc3RyLXNsaWNlKCR2YWx1ZSwgJGkpKTtcbiAgICB9XG5cbiAgICBAaWYgJGNoYXJhY3RlciA9PSBcIi5cIiB7XG4gICAgICAkZGlnaXRzOiAxO1xuICAgIH0gQGVsc2UgaWYgJGRpZ2l0cyA9PSAwIHtcbiAgICAgICRyZXN1bHQ6ICRyZXN1bHQgKiAxMCArIG1hcC1nZXQoJG51bWJlcnMsICRjaGFyYWN0ZXIpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgJGRpZ2l0czogJGRpZ2l0cyAqIDEwO1xuICAgICAgJHJlc3VsdDogJHJlc3VsdCArIG1hcC1nZXQoJG51bWJlcnMsICRjaGFyYWN0ZXIpIC8gJGRpZ2l0cztcbiAgICB9XG4gIH1cblxuICBAcmV0dXJuIGlmKCRtaW51cywgLSRyZXN1bHQsICRyZXN1bHQpO1xufVxuXG4vLy9cbi8vLyBBZGQgYCR1bml0YCB0byBgJHZhbHVlYFxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR2YWx1ZSAtIFZhbHVlIHRvIGFkZCB1bml0IHRvXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICR1bml0IC0gU3RyaW5nIHJlcHJlc2VudGF0aW9uIG9mIHRoZSB1bml0XG4vLy9cbi8vLyBAcmV0dXJuIHtOdW1iZXJ9IC0gYCR2YWx1ZWAgZXhwcmVzc2VkIGluIGAkdW5pdGBcbi8vL1xuQGZ1bmN0aW9uIHRvLWxlbmd0aCgkdmFsdWUsICR1bml0KSB7XG4gICR1bml0czogKFxuICAgIFwicHhcIjogMXB4LFxuICAgIFwiY21cIjogMWNtLFxuICAgIFwibW1cIjogMW1tLFxuICAgIFwiJVwiOiAxJSxcbiAgICBcImNoXCI6IDFjaCxcbiAgICBcInBjXCI6IDFwYyxcbiAgICBcImluXCI6IDFpbixcbiAgICBcImVtXCI6IDFlbSxcbiAgICBcInJlbVwiOiAxcmVtLFxuICAgIFwicHRcIjogMXB0LFxuICAgIFwiZXhcIjogMWV4LFxuICAgIFwidndcIjogMXZ3LFxuICAgIFwidmhcIjogMXZoLFxuICAgIFwidm1pblwiOiAxdm1pbixcbiAgICBcInZtYXhcIjogMXZtYXhcbiAgKTtcblxuICBAaWYgbm90IGluZGV4KG1hcC1rZXlzKCR1bml0cyksICR1bml0KSB7XG4gICAgJF86IGxvZyhcIkludmFsaWQgdW5pdCBgI3skdW5pdH1gLlwiKTtcbiAgfVxuXG4gIEByZXR1cm4gJHZhbHVlICogbWFwLWdldCgkdW5pdHMsICR1bml0KTtcbn1cblxuLy8vXG4vLy8gVGhpcyBtaXhpbiBhaW1zIGF0IHJlZGVmaW5pbmcgdGhlIGNvbmZpZ3VyYXRpb24ganVzdCBmb3IgdGhlIHNjb3BlIG9mXG4vLy8gdGhlIGNhbGwuIEl0IGlzIGhlbHBmdWwgd2hlbiBoYXZpbmcgYSBjb21wb25lbnQgbmVlZGluZyBhbiBleHRlbmRlZFxuLy8vIGNvbmZpZ3VyYXRpb24gc3VjaCBhcyBjdXN0b20gYnJlYWtwb2ludHMgKHJlZmVycmVkIHRvIGFzIHR3ZWFrcG9pbnRzKVxuLy8vIGZvciBpbnN0YW5jZS5cbi8vL1xuLy8vIEBhdXRob3IgSHVnbyBHaXJhdWRlbFxuLy8vXG4vLy8gQHBhcmFtIHtNYXB9ICR0d2Vha3BvaW50cyBbKCldIC0gTWFwIG9mIHR3ZWFrcG9pbnRzIHRvIGJlIG1lcmdlZCB3aXRoIGAkYnJlYWtwb2ludHNgXG4vLy8gQHBhcmFtIHtNYXB9ICR0d2Vhay1tZWRpYS1leHByZXNzaW9ucyBbKCldIC0gTWFwIG9mIHR3ZWFrZWQgbWVkaWEgZXhwcmVzc2lvbnMgdG8gYmUgbWVyZ2VkIHdpdGggYCRtZWRpYS1leHByZXNzaW9uYFxuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIEV4dGVuZCB0aGUgZ2xvYmFsIGJyZWFrcG9pbnRzIHdpdGggYSB0d2Vha3BvaW50XG4vLy8gIEBpbmNsdWRlIG1lZGlhLWNvbnRleHQoKCdjdXN0b20nOiA2NzhweCkpIHtcbi8vLyAgICAuZm9vIHtcbi8vLyAgICAgIEBpbmNsdWRlIG1lZGlhKCc+cGhvbmUnLCAnPD1jdXN0b20nKSB7XG4vLy8gICAgICAgLy8gLi4uXG4vLy8gICAgICB9XG4vLy8gICAgfVxuLy8vICB9XG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gRXh0ZW5kIHRoZSBnbG9iYWwgbWVkaWEgZXhwcmVzc2lvbnMgd2l0aCBhIGN1c3RvbSBvbmVcbi8vLyAgQGluY2x1ZGUgbWVkaWEtY29udGV4dCgkdHdlYWstbWVkaWEtZXhwcmVzc2lvbnM6ICgnYWxsJzogJ2FsbCcpKSB7XG4vLy8gICAgLmZvbyB7XG4vLy8gICAgICBAaW5jbHVkZSBtZWRpYSgnYWxsJywgJz5waG9uZScpIHtcbi8vLyAgICAgICAvLyAuLi5cbi8vLyAgICAgIH1cbi8vLyAgICB9XG4vLy8gIH1cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBFeHRlbmQgYm90aCBjb25maWd1cmF0aW9uIG1hcHNcbi8vLyAgQGluY2x1ZGUgbWVkaWEtY29udGV4dCgoJ2N1c3RvbSc6IDY3OHB4KSwgKCdhbGwnOiAnYWxsJykpIHtcbi8vLyAgICAuZm9vIHtcbi8vLyAgICAgIEBpbmNsdWRlIG1lZGlhKCdhbGwnLCAnPnBob25lJywgJzw9Y3VzdG9tJykge1xuLy8vICAgICAgIC8vIC4uLlxuLy8vICAgICAgfVxuLy8vICAgIH1cbi8vLyAgfVxuLy8vXG5AbWl4aW4gbWVkaWEtY29udGV4dCgkdHdlYWtwb2ludHM6ICgpLCAkdHdlYWstbWVkaWEtZXhwcmVzc2lvbnM6ICgpKSB7XG4gIC8vIFNhdmUgZ2xvYmFsIGNvbmZpZ3VyYXRpb25cbiAgJGdsb2JhbC1icmVha3BvaW50czogJGJyZWFrcG9pbnRzO1xuICAkZ2xvYmFsLW1lZGlhLWV4cHJlc3Npb25zOiAkbWVkaWEtZXhwcmVzc2lvbnM7XG5cbiAgLy8gVXBkYXRlIGdsb2JhbCBjb25maWd1cmF0aW9uXG4gICRicmVha3BvaW50czogbWFwLW1lcmdlKCRicmVha3BvaW50cywgJHR3ZWFrcG9pbnRzKSAhZ2xvYmFsO1xuICAkbWVkaWEtZXhwcmVzc2lvbnM6IG1hcC1tZXJnZShcbiAgICAkbWVkaWEtZXhwcmVzc2lvbnMsXG4gICAgJHR3ZWFrLW1lZGlhLWV4cHJlc3Npb25zXG4gICkgIWdsb2JhbDtcblxuICBAY29udGVudDtcblxuICAvLyBSZXN0b3JlIGdsb2JhbCBjb25maWd1cmF0aW9uXG4gICRicmVha3BvaW50czogJGdsb2JhbC1icmVha3BvaW50cyAhZ2xvYmFsO1xuICAkbWVkaWEtZXhwcmVzc2lvbnM6ICRnbG9iYWwtbWVkaWEtZXhwcmVzc2lvbnMgIWdsb2JhbDtcbn1cblxuLy8vL1xuLy8vIGluY2x1ZGUtbWVkaWEgcHVibGljIGV4cG9zZWQgQVBJXG4vLy8gQGF1dGhvciBFZHVhcmRvIEJvdWNhc1xuLy8vIEBhY2Nlc3MgcHVibGljXG4vLy8vXG5cbi8vL1xuLy8vIEdlbmVyYXRlcyBhIG1lZGlhIHF1ZXJ5IGJhc2VkIG9uIGEgbGlzdCBvZiBjb25kaXRpb25zXG4vLy9cbi8vLyBAcGFyYW0ge0FyZ2xpc3R9ICAgJGNvbmRpdGlvbnMgIC0gTWVkaWEgcXVlcnkgY29uZGl0aW9uc1xuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFdpdGggYSBzaW5nbGUgc2V0IGJyZWFrcG9pbnRcbi8vLyAgQGluY2x1ZGUgbWVkaWEoJz5waG9uZScpIHsgfVxuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFdpdGggdHdvIHNldCBicmVha3BvaW50c1xuLy8vICBAaW5jbHVkZSBtZWRpYSgnPnBob25lJywgJzw9dGFibGV0JykgeyB9XG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gV2l0aCBjdXN0b20gdmFsdWVzXG4vLy8gIEBpbmNsdWRlIG1lZGlhKCc+PTM1OHB4JywgJzw4NTBweCcpIHsgfVxuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFdpdGggc2V0IGJyZWFrcG9pbnRzIHdpdGggY3VzdG9tIHZhbHVlc1xuLy8vICBAaW5jbHVkZSBtZWRpYSgnPmRlc2t0b3AnLCAnPD0xMzUwcHgnKSB7IH1cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBXaXRoIGEgc3RhdGljIGV4cHJlc3Npb25cbi8vLyAgQGluY2x1ZGUgbWVkaWEoJ3JldGluYTJ4JykgeyB9XG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gTWl4aW5nIGV2ZXJ5dGhpbmdcbi8vLyAgQGluY2x1ZGUgbWVkaWEoJz49MzUwcHgnLCAnPHRhYmxldCcsICdyZXRpbmEzeCcpIHsgfVxuLy8vXG5AbWl4aW4gbWVkaWEoJGNvbmRpdGlvbnMuLi4pIHtcbiAgLy8gc2Nzcy1saW50OmRpc2FibGUgU3BhY2VBcm91bmRPcGVyYXRvclxuICBAaWYgKCRpbS1tZWRpYS1zdXBwb3J0IGFuZCBsZW5ndGgoJGNvbmRpdGlvbnMpID09IDApIG9yXG4gICAgKG5vdCAkaW0tbWVkaWEtc3VwcG9ydCBhbmQgaW0taW50ZXJjZXB0cy1zdGF0aWMtYnJlYWtwb2ludCgkY29uZGl0aW9ucy4uLikpXG4gIHtcbiAgICBAY29udGVudDtcbiAgfSBAZWxzZSBpZiAoJGltLW1lZGlhLXN1cHBvcnQgYW5kIGxlbmd0aCgkY29uZGl0aW9ucykgPiAwKSB7XG4gICAgQG1lZGlhICN7dW5xdW90ZShwYXJzZS1leHByZXNzaW9uKG50aCgkY29uZGl0aW9ucywgMSkpKX0ge1xuICAgICAgLy8gUmVjdXJzaXZlIGNhbGxcbiAgICAgIEBpbmNsdWRlIG1lZGlhKHNsaWNlKCRjb25kaXRpb25zLCAyKSAuLi4pIHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy9cdFx0XHRcdFx0ICAgICAgVkFSSUFCTEVTXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kdGV4dDogIzEyMjEyYjtcbiRiZzogI2ZmZjtcblxuJGdyZXk6ICM2ZDZlNzE7XG4kcHJpbWFyeTogIzAwYTFhYjtcblxuJHB0dGM6ICMxMjIxMmI7XG4kdHJ3OiAjYjAyOTI0O1xuJGhmOiAjMDBhMWFiO1xuJHBtOiAjZjE1YTI1O1xuXG4kcmVkOiAjZWUyNzM3O1xuXG4kYWx0OiAjMTIyMTJiO1xuXG4vLyBwYWRkaW5nIHVzZWQgaW4gZm91bmRhdGlvblxuJGJ1bXA6IDQ1cHg7XG4kcGFkOiAzMHB4O1xuXG4kZWFzaW5nOiBjdWJpYy1iZXppZXIoMC42NCwgMC4wNCwgMC4zNSwgMSk7XG5cbi8vIFNpdGUgdGhlbWUgb3ZlcnJpZGVzXG4kc2l0ZTogXCJoZlwiO1xuJHZlcnRpY2FsczogXCJwdHRjXCIsIFwiaGZcIiwgXCJ0cndcIiwgXCJwbVwiO1xuXG4kcGFnZS13aWR0aDogMTg0OHB4O1xuIiwiLy8gUGFnaW5hdGlvblxuLnBhZ2VyIHtcbiAgQGluY2x1ZGUgbGktcmVzZXQ7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGNsZWFyOiBib3RoO1xuICBtYXJnaW46ICRidW1wIDAgJGJ1bXAgKiAyO1xuXG4gIEBpbmNsdWRlIG1lZGlhKFwiPGxnXCIpIHtcbiAgICBtYXJnaW46ICRwYWQgMCAkcGFkICogMjtcbiAgfVxuXG4gIGxpIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luOiAwICRwYWQvMi41O1xuXG4gICAgQGluY2x1ZGUgbWVkaWEoXCI8bGdcIikge1xuICAgICAgbWFyZ2luOiAwICRwYWQvNCAkcGFkLzQ7XG4gICAgfVxuXG4gICAgYSB7XG4gICAgICBwYWRkaW5nOiAkcGFkLzMgJHBhZC8xLjMgJHBhZC8zLjU7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0ZXh0O1xuICAgICAgY29sb3I6ICNmZmY7XG5cbiAgICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeTtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgfVxuICAgIH1cblxuICAgICYuaXMtYWN0aXZlIGEge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnk7XG4gICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICB9XG5cbiAgICAmLnBhZ2VyLWN1cnJlbnQge1xuICAgICAgcGFkZGluZzogJHBhZC8zICRwYWQvMS41O1xuICAgIH1cbiAgfVxufVxuXG4vLyBBZG1uaW4gc3R5bGVzXG4uYWRtaW4tZnVuY3Rpb25zIHtcbiAgcGFkZGluZzogMDtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IGF1dG87XG4gIHdpZHRoOiAxMDAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICB6LWluZGV4OiAzMTtcblxuICBbY2xhc3MqPVwiY29sLVwiXSB7XG4gICAgcGFkZGluZzogMDtcbiAgfVxuXG4gIHVsIHtcbiAgICBAaW5jbHVkZSBsaS1yZXNldDtcbiAgICBib3JkZXI6IDA7XG4gICAgbWFyZ2luOiAkYnVtcC8zIDA7XG4gICAgcGFkZGluZzogMDtcblxuICAgIGxpIHtcbiAgICAgIG1hcmdpbi1yaWdodDogJGJ1bXA7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cbiAgICAgIGEge1xuICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIC8vIHBhZGRpbmc6IDAgJGJ1bXAvMjtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgb3BhY2l0eTogMC42O1xuXG4gICAgICAgICYuaXMtYWN0aXZlLFxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gRm9ybXNcbmlucHV0W3R5cGU9XCJ0ZXh0XCJdLFxuaW5wdXRbdHlwZT1cImVtYWlsXCJdLFxuaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdLFxuaW5wdXRbdHlwZT1cIm51bWJlclwiXSxcbmlucHV0W3R5cGU9XCJzZWFyY2hcIl0sXG5pbnB1dFt0eXBlPVwidGVsXCJdLFxuaW5wdXRbdHlwZT1cImRhdGVcIl0sXG50ZXh0YXJlYSxcbnNlbGVjdCB7XG4gIEBpbmNsdWRlIGZvbnQtYm9keTtcbiAgY29sb3I6ICR0ZXh0O1xuICByZXNpemU6IG5vbmU7XG4gIHBhZGRpbmc6ICgkYnVtcCAvIDQpICgkYnVtcCAvIDIpO1xuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDBweDtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgb3V0bGluZTogMDtcbiAgYm9yZGVyOiA0cHggc29saWQgJHRleHQ7XG4gIGJvcmRlci1yYWRpdXM6ICRwYWQ7XG4gIHRyYW5zaXRpb246IGFsbCAwLjJzICRlYXNpbmc7XG4gIGJhY2tncm91bmQtY29sb3I6ICRiZztcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgbWluLWhlaWdodDogNjVweDtcbiAgd2lkdGg6IDEwMCU7XG5cbiAgJjpmb2N1cyxcbiAgJjphY3RpdmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR0ZXh0O1xuICAgIGNvbG9yOiAkYmc7XG5cbiAgICAmOjpwbGFjZWhvbGRlciB7XG4gICAgICBjb2xvcjogJGJnO1xuICAgIH1cbiAgfVxuXG4gICY6OnBsYWNlaG9sZGVyIHtcbiAgICBjb2xvcjogJHRleHQ7XG4gIH1cblxuICAmOjotbXMtY2xlYXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuaW5wdXRbdHlwZT1cInNlYXJjaFwiXSxcbmlucHV0W3R5cGU9XCJ0ZXh0XCJdLFxuaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuLmZvcm0tYWN0aW9ucyBpbnB1dCxcbmlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbmlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xuICBAaW5jbHVkZSBjdGE7XG59XG5cbmxhYmVsIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbnRleHRhcmVhIHtcbiAgaGVpZ2h0OiAxMjBweDtcbn1cblxuc2VsZWN0IHtcbiAgYmFja2dyb3VuZDogJGJnIHVybChcIi4uL2ltZy9jdGEtYXJyb3ctZG93bi0taW52ZXJ0ZWQuc3ZnXCIpIG5vLXJlcGVhdCByaWdodFxuICAgICgkYnVtcCAvIDIpIGNlbnRlcjtcbiAgYmFja2dyb3VuZC1zaXplOiAzNnB4O1xuICBwYWRkaW5nLXJpZ2h0OiA2MHB4O1xuICBtaW4td2lkdGg6IDI4MHB4O1xuXG4gICY6Oi1tcy1leHBhbmQge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAmOmZvY3VzLFxuICAmOmFjdGl2ZSB7XG4gICAgYmFja2dyb3VuZDogJHRleHQgdXJsKFwiLi4vaW1nL2N0YS1hcnJvdy1kb3duLnN2Z1wiKSBuby1yZXBlYXQgcmlnaHRcbiAgICAgICgkYnVtcCAvIDIpIGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDM2cHg7XG4gIH1cbn1cblxuLy8gQ2hlY2tib3hlc1xuW3R5cGU9XCJjaGVja2JveFwiXTpjaGVja2VkLFxuW3R5cGU9XCJjaGVja2JveFwiXTpub3QoOmNoZWNrZWQpIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAtOTk5OXB4O1xufVxuW3R5cGU9XCJjaGVja2JveFwiXTpjaGVja2VkICsgbGFiZWwsXG5bdHlwZT1cImNoZWNrYm94XCJdOm5vdCg6Y2hlY2tlZCkgKyBsYWJlbCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZy1sZWZ0OiAzMnB4O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5bdHlwZT1cImNoZWNrYm94XCJdOmNoZWNrZWQgKyBsYWJlbDpiZWZvcmUsXG5bdHlwZT1cImNoZWNrYm94XCJdOm5vdCg6Y2hlY2tlZCkgKyBsYWJlbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbiAgd2lkdGg6IDI0cHg7XG4gIGhlaWdodDogMjRweDtcbiAgYm9yZGVyOiAzcHggc29saWQgJHRleHQ7XG4gIGJvcmRlci1yYWRpdXM6IDdweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbn1cblt0eXBlPVwiY2hlY2tib3hcIl06Y2hlY2tlZCArIGxhYmVsOmFmdGVyLFxuW3R5cGU9XCJjaGVja2JveFwiXTpub3QoOmNoZWNrZWQpICsgbGFiZWw6YWZ0ZXIge1xuICBjb250ZW50OiBcIlxcMjcxNFxcMDAyMFwiO1xuICBjb2xvcjogJHRleHQ7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAycHg7XG4gIGxlZnQ6IDQuNXB4O1xuICB0cmFuc2l0aW9uOiBhbGwgMC4ycyAkZWFzaW5nO1xufVxuW3R5cGU9XCJjaGVja2JveFwiXTpub3QoOmNoZWNrZWQpICsgbGFiZWw6YWZ0ZXIge1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2Zvcm06IHNjYWxlKDApO1xufVxuW3R5cGU9XCJjaGVja2JveFwiXTpjaGVja2VkICsgbGFiZWw6YWZ0ZXIge1xuICBvcGFjaXR5OiAxO1xuICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xufVxuXG4vLyBSYWRpb3Ncblt0eXBlPVwicmFkaW9cIl06Y2hlY2tlZCxcblt0eXBlPVwicmFkaW9cIl06bm90KDpjaGVja2VkKSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogLTk5OTlweDtcbn1cblt0eXBlPVwicmFkaW9cIl06Y2hlY2tlZCArIGxhYmVsLFxuW3R5cGU9XCJyYWRpb1wiXTpub3QoOmNoZWNrZWQpICsgbGFiZWwge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmctbGVmdDogMjhweDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBsaW5lLWhlaWdodDogMjBweDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBjb2xvcjogJHRleHQ7XG59XG5bdHlwZT1cInJhZGlvXCJdOmNoZWNrZWQgKyBsYWJlbDpiZWZvcmUsXG5bdHlwZT1cInJhZGlvXCJdOm5vdCg6Y2hlY2tlZCkgKyBsYWJlbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbiAgd2lkdGg6IDIwcHg7XG4gIGhlaWdodDogMjBweDtcbiAgYm9yZGVyOiAycHggc29saWQgJHRleHQ7XG4gIGJvcmRlci1yYWRpdXM6IDEwMCU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG59XG5bdHlwZT1cInJhZGlvXCJdOmNoZWNrZWQgKyBsYWJlbDphZnRlcixcblt0eXBlPVwicmFkaW9cIl06bm90KDpjaGVja2VkKSArIGxhYmVsOmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgd2lkdGg6IDEycHg7XG4gIGhlaWdodDogMTJweDtcbiAgYmFja2dyb3VuZDogJHRleHQ7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA0cHg7XG4gIGxlZnQ6IDRweDtcbiAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMnMgJGVhc2luZztcbn1cblt0eXBlPVwicmFkaW9cIl06bm90KDpjaGVja2VkKSArIGxhYmVsOmFmdGVyIHtcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcbn1cblt0eXBlPVwicmFkaW9cIl06Y2hlY2tlZCArIGxhYmVsOmFmdGVyIHtcbiAgb3BhY2l0eTogMTtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbn1cblxuYnV0dG9uIHtcbiAgcGFkZGluZzogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMDtcbn1cbiIsIiRoZWFkZXJIOiAxMzBweDtcblxuLmhlYWRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIHdpZHRoOiAxMDAlO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIC8vIHotaW5kZXg6IDMwO1xuICB6LWluZGV4OiA0MTtcblxuICBAaW5jbHVkZSBtZWRpYSgnPj1tZCcpIHtcbiAgICBoZWlnaHQ6ICRoZWFkZXJIO1xuICAgIGJvcmRlci10b3A6IDRweCBzb2xpZCAkdGV4dDtcbiAgfVxuXG4gICZfX291dGVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgbWF4LXdpZHRoOiAkcGFnZS13aWR0aDtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcblxuICAgIEBpbmNsdWRlIG1lZGlhKCc+PW1kJykge1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgIHBhZGRpbmc6IDAgMTVweDtcbiAgICB9XG4gIH1cblxuICAmLS1pbm5lciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBmbGV4OiAwIDEgYXV0bztcblxuICAgIEBpbmNsdWRlIG1lZGlhKCc8PW1kJykge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICB9XG5cbiAgJl9fbGVmdCB7XG4gICAgQGluY2x1ZGUgbWVkaWEoJzw9bWQnKSB7XG4gICAgICBwYWRkaW5nOiAyMHB4IDE1cHg7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgfVxuICB9XG5cbiAgJl9fbG9nbyB7XG4gICAgQGluY2x1ZGUgYmctaW1nO1xuICAgIHdpZHRoOiAkaGVhZGVySDtcbiAgICBoZWlnaHQ6ICRoZWFkZXJIO1xuICAgIG1hcmdpbi1yaWdodDogJGJ1bXA7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEoJzw9bWQnKSB7XG4gICAgICB3aWR0aDogNzBweDtcbiAgICAgIGhlaWdodDogNzBweDtcbiAgICAgIG1hcmdpbi1yaWdodDogMTZweDtcbiAgICB9XG5cbiAgICBzdmcge1xuICAgICAgaGVpZ2h0OiA2NSU7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cblxuICAgICY6aG92ZXIge1xuICAgICAgb3BhY2l0eTogMC42O1xuICAgIH1cbiAgfVxuXG4gICZfX3NlYXJjaCB7XG4gICAgZGlzcGxheTogbm9uZTtcblxuICAgIEBpbmNsdWRlIG1lZGlhKCc8PW1kJykge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBAaW5jbHVkZSBmb250LWJvZHk7XG4gICAgICBtYXJnaW46IDAgMTZweCAwIGF1dG87XG4gICAgfVxuXG4gICAgcGF0aCxcbiAgICBnIHtcbiAgICAgIGZpbGw6ICR0ZXh0O1xuICAgIH1cblxuICAgIC5uYXYtb3BlbiAmIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgJl9fd2lkZ2V0IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMTA7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICBoZWlnaHQ6IGNhbGMoI3skaGVhZGVySH0gKyAjeyRwYWR9KTtcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAkcGFkIC8gMjtcbiAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogJHBhZCAvIDI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHRleHQ7XG4gICAgdG9wOiAkcGFkIC8gMjtcblxuICAgIEBpbmNsdWRlIG1lZGlhKCc8PW1kJykge1xuICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgdG9wOiAwO1xuICAgIH1cblxuICAgICY6OmJlZm9yZSxcbiAgICAmOjphZnRlciB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIHdpZHRoOiAxN3B4O1xuICAgICAgaGVpZ2h0OiAxMnB4O1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAtMnB4O1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBjb250ZW50OiBub25lO1xuXG4gICAgICBAaW5jbHVkZSBtZWRpYSgnPj1tZCcsICdoZWlnaHQ+PXhzJykge1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgbGVmdDogLThweDtcbiAgICAgIGJhY2tncm91bmQ6IHVybCgnLi4vaW1nL2FyY2guc3ZnJykgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXI7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gICAgfVxuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZDogdXJsKCcuLi9pbWcvYXJjaC0tcmlnaHQuc3ZnJykgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXI7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gICAgICByaWdodDogLTlweDtcbiAgICB9XG5cbiAgICAmLWlubmVyIHtcbiAgICAgIHBhZGRpbmc6ICRwYWQgLyAxLjU7XG4gICAgICBjb2xvcjogI2ZmZjtcbiAgICAgIHRyYW5zaXRpb246IGFsbCAycyAkZWFzaW5nO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgICBAaW5jbHVkZSBtZWRpYSgnPD1tZCcpIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi1saW5rcyB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgICBAaW5jbHVkZSBtZWRpYSgnPD1tZCcpIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cblxuICAgICAgLmljb24ge1xuICAgICAgICBAaW5jbHVkZSBmb250LWJvZHk7XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICBtYXJnaW46IDAgJHBhZC8yO1xuXG4gICAgICAgIC5zdmctaWNvbiB7XG4gICAgICAgICAgZmlsbDogJGJnO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgY29sb3I6ICRwcmltYXJ5O1xuXG4gICAgICAgICAgLnN2Zy1pY29uIHtcbiAgICAgICAgICAgIGZpbGw6ICRwcmltYXJ5O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBPdmVycmlkZXNcbiAgICovXG4gIC5idG4tLWRpc2NvdmVyIHtcbiAgICBAaW5jbHVkZSBtZWRpYSgnPD1tZCcpIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuICB9XG5cbiAgLm5hdi1vcGVuICYge1xuICAgIC5oZWFkZXJfX3JpZ2h0IHtcbiAgICAgIEBpbmNsdWRlIG1lZGlhKCc8PW1kJykge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5oZWFkZXJfX2xlZnQge1xuICAgICAgQGluY2x1ZGUgbWVkaWEoJzw9bWQnKSB7XG4gICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgYmFja2dyb3VuZDogJGJnO1xuICAgICAgICB6LWluZGV4OiA0MDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMTAwdmg7XG4gICAgICAgIGhlaWdodDogY2FsYyh2YXIoLS12aCwgMXZoKSAqIDEwMCk7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4ubmF2LW9wZW4ge1xuICBAaW5jbHVkZSBtZWRpYSgnPD1tZCcpIHtcbiAgICBvdmVyZmxvdy15OiBoaWRkZW47XG4gIH1cbn1cblxuLy8gQWRtaW5cbi51c2VyLWxvZ2dlZC1pbiB7XG4gIC5oZWFkZXIge1xuICAgIHRvcDogNjJweDtcbiAgfVxufVxuIiwiLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vXHRcdFx0XHRcdCAgIFx0XHQgU1RZTEVTXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4ucHR0Yy1sb2dvcyB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdhcDogMjBweDtcbiAgbWFyZ2luLXRvcDogNDBweDtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiBhdXRvIDFmcjtcbiAgLmFkbWluaW1hbC1hZG1pbi10b29sYmFyICYge1xuICAgIG1hcmdpbi10b3A6IDEwMHB4O1xuICB9XG4gIEBpbmNsdWRlIG1lZGlhKCc8c20nKSB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IGF1dG8gMWZyO1xuICB9XG4gICYtLXNlY29uZGFyeSB7XG4gICAgaW1nIHtcbiAgICAgIG1heC13aWR0aDogMTAwcHg7XG4gICAgICBtYXgtaGVpZ2h0OiA1MHB4O1xuICAgICAgQGluY2x1ZGUgbWVkaWEoJzxzbScpIHtcbiAgICAgICAgbWF4LXdpZHRoOiA3NXB4O1xuICAgICAgICBtYXgtaGVpZ2h0OiAzMHB4O1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgbWVkaWEoJzx4cycpIHtcbiAgICAgICAgbWF4LXdpZHRoOiA1NXB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAmLS1tYWluIHtcbiAgICBpbWcge1xuICAgICAgbWF4LXdpZHRoOiAyMTBweDtcbiAgICAgIG1heC1oZWlnaHQ6IDUwcHg7XG4gICAgICBAaW5jbHVkZSBtZWRpYSgnPHNtJykge1xuICAgICAgICBtYXgtd2lkdGg6IDE1MHB4O1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgbWVkaWEoJzx4cycpIHtcbiAgICAgICAgbWF4LXdpZHRoOiAxMjVweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgJi0taXRlbXMge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZ2FwOiAyMHB4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgfVxufVxuXG5cbnNwZWt0cml4LWdpZnQtdm91Y2hlcnMge1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLWdhcDogMzBweDtcbiAgLmNob2ljZXNfX2lubmVyIHtcbiAgICBib3JkZXI6IG5vbmU7XG4gIH1cbiAgLmNob2ljZXNfX2xpc3Qge1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBpbnB1dCB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG59IiwiLmZvb3RlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICR0ZXh0O1xuICBjb2xvcjogI2ZmZjtcbiAgcGFkZGluZzogJGJ1bXAgKiAyIDA7XG5cbiAgQGluY2x1ZGUgbWVkaWEoJzxsZycpIHtcbiAgICBwYWRkaW5nOiAkYnVtcCAwO1xuICB9XG5cbiAgLmJ0biB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHRleHQ7XG5cbiAgICAmOjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGV4dDtcbiAgICB9XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHJlZDtcbiAgICB9XG4gIH1cblxuICAmX19pbm5lciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEoJzxsZycpIHtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIH1cblxuICAgICYtLWluZm8ge1xuICAgICAgbWFyZ2luLXRvcDogMTBweDtcblxuICAgICAgQGluY2x1ZGUgbWVkaWEoJz49c20nLCAnaGVpZ2h0Pj14cycpIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLWNvbCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgIH1cblxuICAgICYtbGVmdCB7XG4gICAgICBzdmcge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAkcGFkO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKCc8bGcnKSB7XG4gICAgICAgICAgbWFyZ2luOiAwIGF1dG8gJHBhZDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgICYtcmlnaHQge1xuICAgICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xuXG4gICAgICBAaW5jbHVkZSBtZWRpYSgnPGxnJykge1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWFyZ2luLXRvcDogJGJ1bXA7XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIG1lZGlhKCc8bWQnKSB7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICB9XG5cbiAgICAgIC5ibG9jayB7XG4gICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuXG4gICAgICAgIGgzIHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAkcGFkO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi0tY3JlZGl0cyB7XG4gICAgICAuYmxvY2sge1xuICAgICAgICBmbGV4OiAwIDEgYXV0bztcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAkcGFkO1xuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKCc8eGxnJykge1xuICAgICAgICAgIG1heC13aWR0aDogNjgwcHg7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtZWRpYSgnPGxnJykge1xuICAgICAgICAgIG1hcmdpbjogKCRwYWQgLyAyKSBhdXRvIDA7XG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG5cbiAgICAgICAgICBAaW5jbHVkZSBtZWRpYSgnPGxnJykge1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmX19zdXBwb3J0IHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgY29sb3I6ICRiZztcbiAgICB0ZXh0LWFsaWduLWxhc3Q6IGNlbnRlcjtcbiAgICBib3JkZXItYm90dG9tOiA0cHggc29saWQgJGJnO1xuICAgIHBhZGRpbmctYm90dG9tOiA0MHB4O1xuXG4gICAgQGluY2x1ZGUgbWVkaWEoJz49c20nLCAnaGVpZ2h0Pj14cycpIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgICBjb2xvcjogJHRleHQ7XG4gICAgICBwYWRkaW5nOiAkYnVtcCAkYnVtcCAqIDI7XG4gICAgICBib3JkZXItcmFkaXVzOiAkYnVtcCAqIDM7XG4gICAgICBtYXJnaW4tYm90dG9tOiAkcGFkO1xuICAgICAgYm9yZGVyOiBub25lO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhKCc+PW1kJykge1xuICAgICAgbWFyZ2luLWJvdHRvbTogJGJ1bXA7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEoJz49bGcnKSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAkYnVtcCAqIDI7XG4gICAgfVxuXG4gICAgcDpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgIEBpbmNsdWRlIGZvbnQtdGl0bGU7XG4gICAgICBmb250LXNpemU6IDI5cHg7XG4gICAgICBsaW5lLWhlaWdodDogMzlweDtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAtMXB4O1xuICAgICAgbWF4LXdpZHRoOiA4MCU7XG4gICAgICBtYXJnaW46IDAgYXV0bztcblxuICAgICAgQGluY2x1ZGUgbWVkaWEoJzxsZycpIHtcbiAgICAgICAgbWF4LXdpZHRoOiBub25lO1xuICAgICAgfVxuXG4gICAgICBAaW5jbHVkZSBtZWRpYSgnPG1kJykge1xuICAgICAgICBmb250LXNpemU6IDEuMmVtO1xuICAgICAgICBsaW5lLWhlaWdodDogY2FsYygxZW0gKyAxMHB4KTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuYnRuLS1hbHQge1xuICAgICAgbWFyZ2luLXRvcDogJGJ1bXA7XG4gICAgICBib3gtc2hhZG93OiBub25lO1xuXG4gICAgICBAaW5jbHVkZSBtZWRpYSgnPG1kJykge1xuICAgICAgICBtYXJnaW4tdG9wOiAkcGFkO1xuICAgICAgfVxuXG4gICAgICBAaW5jbHVkZSBtZWRpYSgnPj1zbScsICdoZWlnaHQ+PXhzJykge1xuICAgICAgICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCA0cHggJHRleHQ7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJl9fcGFydG5lcnMge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIHBhZGRpbmc6ICRidW1wO1xuICAgIGJvcmRlcjogNHB4IHNvbGlkICNmZmY7XG4gICAgYm9yZGVyLWxlZnQ6IDA7XG4gICAgYm9yZGVyLXJpZ2h0OiAwO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEoJzxtZCcpIHtcbiAgICAgIHBhZGRpbmc6ICRwYWQgMCAwO1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICB9XG5cbiAgICBhIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgbWFyZ2luOiAwICRidW1wO1xuXG4gICAgICBAaW5jbHVkZSBtZWRpYSgnPGxnJykge1xuICAgICAgICBtYXJnaW46IDAgJHBhZDtcbiAgICAgIH1cblxuICAgICAgQGluY2x1ZGUgbWVkaWEoJzxtZCcpIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogJGJ1bXA7XG4gICAgICB9XG5cbiAgICAgIGltZyB7XG4gICAgICAgIG1heC1oZWlnaHQ6IDgwcHg7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKCc8bGcnKSB7XG4gICAgICAgICAgbWF4LWhlaWdodDogNjBweDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgb3BhY2l0eTogMC42O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICZfX3NvY2lhbCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgbWFyZ2luLWJvdHRvbTogJGJ1bXAgKiAxLjU7XG5cbiAgICBAaW5jbHVkZSBtZWRpYSgnPGxnJykge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYSgnPG1kJykge1xuICAgICAgbWFyZ2luLWJvdHRvbTogJHBhZDtcbiAgICB9XG5cbiAgICBhIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAkcGFkLzI7XG4gICAgfVxuICB9XG5cbiAgYTpub3QoLmJ0bik6bm90KC5idG4tLWFsdCkge1xuICAgIGNvbG9yOiAjZmZmO1xuICB9XG5cbiAgdWwubWVudSB7XG4gICAgQGluY2x1ZGUgbGktcmVzZXQ7XG4gICAgbWFyZ2luLXRvcDogJHBhZC8yO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuICAgIEBpbmNsdWRlIG1lZGlhKCc+PXhzJykge1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYSgnPGxnJykge1xuICAgICAgbWFyZ2luOiAkcGFkLzIgYXV0byAwO1xuICAgIH1cblxuICAgIGxpIHtcbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoJz49eHMnKSB7XG4gICAgICAgICAgQGluY2x1ZGUgZm9udC1ib2xkO1xuICAgICAgICAgIGNvbnRlbnQ6ICd8JztcbiAgICAgICAgICBtYXJnaW46IDAgJHBhZCAvIDI7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKCc+PXhzJykge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICBhLmlzLWFjdGl2ZSB7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIE1lbnVzXG4ubmF2IHtcbiAgQGluY2x1ZGUgbWVkaWEoXCI8PW1kXCIpIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiAtMzBweDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmc6IDAgMTBweDtcbiAgICBoZWlnaHQ6IGNhbGMoMTAwdmggLSAxMTBweCk7XG4gICAgaGVpZ2h0OiBjYWxjKCh2YXIoLS12aCwgMXZoKSAqIDEwMCkgLSAxMTBweCk7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhKFwiPD1tZFwiLCBcImhlaWdodDw9eHNcIikge1xuICAgIGhlaWdodDogY2FsYygxMDB2aCAtIDkwcHgpO1xuICAgIGhlaWdodDogY2FsYygodmFyKC0tdmgsIDF2aCkgKiAxMDApIC0gOTBweCk7XG4gIH1cblxuICA6Om1hcmtlciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIHVsLm1lbnUge1xuICAgIEBpbmNsdWRlIGxpLXJlc2V0O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEoXCI8PW1kXCIpIHtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIH1cblxuICAgIGxpIHtcbiAgICAgIG1hcmdpbjogMCAoJGJ1bXAgLyAyKSAwIDA7XG5cbiAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj1sZ1wiKSB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogJGJ1bXA7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLm1lbnUtaXRlbS0tYWN0aXZlLXRyYWlsID4gYSB7XG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGVYKDEpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIGEge1xuICAgIGNvbG9yOiAkdGV4dDtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBib3JkZXItYm90dG9tOiAzcHggc29saWQgJHByaW1hcnk7XG4gICAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycyAkZWFzaW5nO1xuICAgICAgdHJhbnNmb3JtOiBzY2FsZVgoMCk7XG4gICAgfVxuXG4gICAgJi5pcy1hY3RpdmUsXG4gICAgJjpob3ZlciB7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZVgoMSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJl9fdG9nZ2xlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIEBpbmNsdWRlIGZvbnQtYm9keTtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEoXCI8PW1kXCIpIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgfVxuXG4gICAgJi1pY29uIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgd2lkdGg6IDI0cHg7XG4gICAgICBoZWlnaHQ6IDE5cHg7XG4gICAgICB0b3A6IDA7XG4gICAgICByaWdodDogMDtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBtYXJnaW46IGF1dG87XG4gICAgICBib3JkZXI6IHNvbGlkICR0ZXh0O1xuICAgICAgYm9yZGVyLXdpZHRoOiAxcHggMDtcbiAgICAgIGNvbG9yOiAkdGV4dDtcbiAgICAgIHRleHQtaW5kZW50OiAtOTk5ZW07XG4gICAgICB0cmFuc2l0aW9uOiBhbGwgMC4yNXMgZWFzZS1pbi1vdXQ7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDhweDtcblxuICAgICAgJjpiZWZvcmUsXG4gICAgICAmOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDFweDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIG1hcmdpbjogYXV0bztcbiAgICAgICAgYmFja2dyb3VuZDogY3VycmVudENvbG9yO1xuICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4yNXMgZWFzZS1pbi1vdXQ7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi0tbWFpbiB7XG4gICAgQGluY2x1ZGUgbWVkaWEoXCI8PW1kXCIpIHtcbiAgICAgIHBhZGRpbmc6IDQwcHggMCA2MHB4O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhKFwiPD1tZFwiLCBcImhlaWdodDw9eHNcIikge1xuICAgICAgcGFkZGluZzogMjBweCAwIDQwcHg7XG4gICAgfVxuXG4gICAgYSB7XG4gICAgICBAaW5jbHVkZSBoMztcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgICBAaW5jbHVkZSBtZWRpYShcIj49c21cIiwgXCI8bWRcIiwgXCJoZWlnaHQ+PXhzXCIpIHtcbiAgICAgICAgQGluY2x1ZGUgaDI7XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj1tZFwiLCBcIjxsZ1wiLCBcImhlaWdodD49eHNcIikge1xuICAgICAgICBAaW5jbHVkZSBoNDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICB1bC5tZW51IHtcbiAgICAgIGxpIHtcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI8PW1kXCIpIHtcbiAgICAgICAgICBtYXJnaW46IDI0cHggMCAwIDA7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtZWRpYShcIjw9bWRcIiwgXCJoZWlnaHQ8PXhzXCIpIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAxNnB4O1xuICAgICAgICB9XG5cbiAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgfVxuXG4gICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi0tc2Vjb25kYXJ5IHtcbiAgICB1bC5tZW51IGxpIHtcbiAgICAgIG1hcmdpbjogMCAwIDAgJGJ1bXA7XG4gICAgfVxuICB9XG5cbiAgJl9fc3ViLW5hdiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgbWFyZ2luLXRvcDogNjBweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICBAaW5jbHVkZSBtZWRpYShcIjw9bWRcIikge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBvcGFjaXR5OiAwO1xuICAgICAgYm90dG9tOiAtMzBweDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYShcIjw9bWRcIiwgXCJoZWlnaHQ8PXhzXCIpIHtcbiAgICAgIG1hcmdpbi10b3A6IDQwcHg7XG4gICAgfVxuXG4gICAgYSB7XG4gICAgICBAaW5jbHVkZSBoNDtcblxuICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+eHNcIiwgXCI8PW1kXCIsIFwiaGVpZ2h0Pj14c1wiKSB7XG4gICAgICAgIEBpbmNsdWRlIGgzO1xuICAgICAgfVxuICAgIH1cblxuICAgIHVsLm1lbnUge1xuICAgICAgbGkge1xuICAgICAgICBAaW5jbHVkZSBtZWRpYShcIjw9bWRcIikge1xuICAgICAgICAgIG1hcmdpbi10b3A6IDE2cHg7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtZWRpYShcIjw9bWRcIiwgXCJoZWlnaHQ8PXhzXCIpIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiA4cHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmX19saW5rcyB7XG4gICAgbWFyZ2luLXRvcDogNjBweDtcbiAgICBkaXNwbGF5OiBibG9jaztcblxuICAgIEBpbmNsdWRlIG1lZGlhKFwiPD1tZFwiLCBcImhlaWdodDw9eHNcIikge1xuICAgICAgbWFyZ2luLXRvcDogNDBweDtcbiAgICB9XG4gIH1cblxuICAvKiogXG4gICAqIE92ZXJyaWRlc1xuICAgKi9cbiAgLmhlYWRlcl9fbGluayB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB0cmFuc2l0aW9uOiAwLjI1cyBjb2xvciBlYXNlLWluLW91dDtcbiAgICBtYXJnaW4tdG9wOiAkcGFkIC8gMjtcblxuICAgICY6YWZ0ZXIge1xuICAgICAgY29udGVudDogbm9uZTtcbiAgICB9XG5cbiAgICAmOmZpcnN0LW9mLXR5cGUge1xuICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICB9XG5cbiAgICAmLXRleHQge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICB9XG5cbiAgICBzdmcge1xuICAgICAgZmxleDogMCAwIGF1dG87XG4gICAgICB3aWR0aDogMzVweDtcbiAgICAgIGhlaWdodDogMzVweDtcbiAgICAgIG1hcmdpbi1yaWdodDogMTJweDtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG5cbiAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPD1tZFwiLCBcImhlaWdodDw9eHNcIikge1xuICAgICAgICB3aWR0aDogMjRweDtcbiAgICAgICAgaGVpZ2h0OiAyNHB4O1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDhweDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBnLFxuICAgIHBhdGgge1xuICAgICAgdHJhbnNpdGlvbjogMC4yNXMgZmlsbCBlYXNlLWluLW91dDtcbiAgICAgIGZpbGw6ICR0ZXh0O1xuICAgIH1cblxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyxcbiAgICAmOmFjdGl2ZSB7XG4gICAgICBnLFxuICAgICAgcGF0aCB7XG4gICAgICAgIGZpbGw6IGN1cnJlbnRDb2xvcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmLS1tYWluIHtcbiAgICAubmF2LW9wZW4gJiB7XG4gICAgICBAaW5jbHVkZSBtZWRpYShcIjw9bWRcIikge1xuICAgICAgICBvdmVyZmxvdy15OiBzY3JvbGw7XG4gICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgdHJhbnNpdGlvbjogMC4yNXMgYm90dG9tIGVhc2UtaW4tb3V0LCAwLjI1cyBvcGFjaXR5IGVhc2UtaW4tb3V0O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICZfX3N1Yi1uYXYge1xuICAgIC5uYXYtb3BlbiAmIHtcbiAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPD1tZFwiKSB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgdHJhbnNpdGlvbjogMC4xNXMgMC4yNXMgYm90dG9tIGVhc2UtaW4tb3V0LFxuICAgICAgICAgIDAuMTVzIDAuMjVzIG9wYWNpdHkgZWFzZS1pbi1vdXQ7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJl9fdG9nZ2xlIHtcbiAgICAubmF2LW9wZW4gJiB7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPD1tZFwiKSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDE4cHg7XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPD1tZFwiLCBcImhlaWdodDw9eHNcIikge1xuICAgICAgICBtYXJnaW4tdG9wOiAxNXB4O1xuICAgICAgfVxuXG4gICAgICBAaW5jbHVkZSBtZWRpYShcIjw9eHhzXCIpIHtcbiAgICAgICAgbWFyZ2luLXRvcDogOHB4O1xuICAgICAgfVxuXG4gICAgICAmLWljb24ge1xuICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuXG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gICAgICAgIH1cblxuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvKipcbiAqIEZvcm1cbiAqL1xuXG4uZm9ybSB7XG4gICZfX3JvdyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1hcmdpbjogKCRidW1wIC8gMikgMCAwO1xuICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tdG9wOiAwO1xuICAgIH1cbiAgfVxuXG4gICZfX2xhYmVsIHtcbiAgICBkaXNwbGF5OiBibG9jaztcblxuICAgICYgKyAuZm9ybV9fZmllbGQge1xuICAgICAgbWFyZ2luLXRvcDogJGJ1bXAgLyAzO1xuICAgIH1cbiAgfVxuXG4gICZfX2ZpZWxkIHtcbiAgICAmLS1zdWJtaXQge1xuICAgICAgbWFyZ2luLXRvcDogKCRidW1wIC8gMik7XG5cbiAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj14bGdcIikge1xuICAgICAgICBtYXJnaW4tdG9wOiAkYnVtcDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogTW9kaWZpZXJzXG4gICAqL1xuICAuZm9ybV9fbGFiZWwge1xuICAgICYub3B0aW9uIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgfVxuXG4gICYtYWN0aW9ucyB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG5cbiAgLmRlc2NyaXB0aW9uIHtcbiAgICBtYXJnaW46ICgkYnVtcCAvIDQpIDAgMCAwO1xuICB9XG5cbiAgJi51c2VyLWxvZ2luLWZvcm0ge1xuICAgIG1heC13aWR0aDogNjAwcHg7XG4gIH1cbn1cbiIsIi8vIEFuaW1hdGlvbnNcbkBrZXlmcmFtZXMgZGlzY0luIHtcbiAgMCUge1xuICAgIHRvcDogMTAwJTtcbiAgfVxuICAxMDAlIHtcbiAgICB0b3A6IDA7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBkaXNjT3V0IHtcbiAgMCUge1xuICAgIHRvcDogMDtcbiAgfVxuICAxMDAlIHtcbiAgICB0b3A6IC0xMDAlO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgY29udGVudEluIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDIwJSkgc2NhbGUoMC44NSk7XG4gIH1cblxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKSBzY2FsZSgxKTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGNvbnRlbnRPdXQge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCkgc2NhbGUoMSk7XG4gIH1cblxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMjAlKSBzY2FsZSgwLjg1KTtcbiAgfVxufVxuXG4vLyBEaXNjb3ZlciB3aW5kb3dcbi5tb2RhbCB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgbGVmdDogMDtcbiAgaGVpZ2h0OiAxMDAlO1xuICB3aWR0aDogMTAwJTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZTtcbiAgei1pbmRleDogNTA7XG5cbiAgJl9faW5uZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDEwO1xuICAgIG9wYWNpdHk6IDA7XG5cbiAgICAuZ3JpZCB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYShcIjxtZFwiLCBcImhlaWdodDw9eHNcIikge1xuICAgICYgPiAuZ3JpZCB7XG4gICAgICBoZWlnaHQ6IDg1dmg7XG4gICAgICBoZWlnaHQ6IGNhbGModmFyKC0tdmgsIDF2aCkgKiA4NSk7XG4gICAgICBvdmVyZmxvdy15OiBzY3JvbGw7XG4gICAgfVxuICB9XG5cbiAgJl9fbG9nbyxcbiAgJl9fY2xvc2Uge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6ICRidW1wO1xuICAgIHotaW5kZXg6IDEwO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEoXCI8eGxnXCIpIHtcbiAgICAgIHRvcDogJHBhZC8xLjU7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEoXCI8bWRcIiwgXCJoZWlnaHQ8PXhzXCIpIHtcbiAgICAgIHRvcDogJHBhZC8yO1xuICAgIH1cbiAgfVxuXG4gICZfX2xvZ28ge1xuICAgIGxlZnQ6ICRwYWQvMjtcblxuICAgIEBpbmNsdWRlIG1lZGlhKFwiPj1zbVwiLCBcImhlaWdodD49eHNcIikge1xuICAgICAgbGVmdDogJGJ1bXAgKiAyO1xuICAgIH1cblxuICAgIHN2ZyB7XG4gICAgICBtYXgtd2lkdGg6IDc5cHg7XG4gICAgICBoZWlnaHQ6IGF1dG87XG5cbiAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj1zbVwiLCBcImhlaWdodD49eHNcIikge1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEoXCI8eGxnXCIpIHtcbiAgICAgIGxlZnQ6ICRwYWQgLyAxLjU7XG4gICAgfVxuXG4gICAgJjpob3ZlciB7XG4gICAgICBvcGFjaXR5OiAwLjY7XG4gICAgfVxuICB9XG5cbiAgJl9fY2xvc2Uge1xuICAgIHJpZ2h0OiAkYnVtcCAqIDI7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgaGVpZ2h0OiAkYnVtcCAqIDEuNztcbiAgICB3aWR0aDogJGJ1bXAgKiAxLjc7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuNXMgJGVhc2luZztcblxuICAgIEBpbmNsdWRlIG1lZGlhKFwiPHhsZ1wiKSB7XG4gICAgICByaWdodDogJHBhZCAvIDEuNTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYShcIjxsZ1wiKSB7XG4gICAgICByaWdodDogJHBhZDtcbiAgICAgIGhlaWdodDogJGJ1bXA7XG4gICAgICB3aWR0aDogJGJ1bXA7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEoXCI8bWRcIiwgXCJoZWlnaHQ8PXhzXCIpIHtcbiAgICAgIHJpZ2h0OiAkcGFkLzI7XG4gICAgfVxuXG4gICAgJjphY3RpdmUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmVkO1xuICAgIH1cblxuICAgIHN2ZyB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIG9iamVjdC1maXQ6IGNvbnRhaW47XG4gICAgfVxuXG4gICAgLnN2Zy1tb2RhbCB7XG4gICAgICBmaWxsOiAkcHJpbWFyeTtcbiAgICAgIHN0cm9rZTogI2ZmZjtcbiAgICAgIHRyYW5zaXRpb246IGZpbGwgMC4ycyAkZWFzaW5nO1xuICAgIH1cblxuICAgICY6aG92ZXIge1xuICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcblxuICAgICAgLnN2Zy1tb2RhbCB7XG4gICAgICAgIGZpbGw6ICRhbHQ7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIjc2VhcmNoLWZvcm0ge1xyXG4gIGRpc3BsYXk6IG5vbmU7XHJcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xyXG59XHJcblxyXG4uc2VhcmNoLXJlc3VsdHMtd3JhcHBlciB7XHJcbiAgbWFyZ2luLWJvdHRvbTogJGJ1bXA7XHJcblxyXG4gIC5yZXN1bHRfX3RpdGxlIHtcclxuICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgfVxyXG59XHJcblxyXG4uc2VhcmNoLXJlc3VsdHMge1xyXG4gIG1hcmdpbi1ib3R0b206ICRidW1wICogMjtcclxuXHJcbiAgb2wge1xyXG4gICAgQGluY2x1ZGUgbGktcmVzZXQ7XHJcblxyXG4gICAgbGkge1xyXG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206ICRidW1wO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLm1vZGFsLS1zZWFyY2gge1xyXG4gICZfX2lubmVyIHtcclxuICAgIG1hcmdpbi10b3A6ICRidW1wICogMztcclxuXHJcbiAgICBAaW5jbHVkZSBtZWRpYShcIjxtZFwiLCBcImhlaWdodDw9eHNcIikge1xyXG4gICAgICBtYXJnaW4tdG9wOiAwO1xyXG4gICAgICB0b3A6IDA7XHJcbiAgICAgIGhlaWdodDogMTAwdmg7XHJcbiAgICB9XHJcblxyXG4gICAgaDIge1xyXG4gICAgICBtYXJnaW46IDA7XHJcblxyXG4gICAgICBAaW5jbHVkZSBtZWRpYShcIjw9MTAyNHB4XCIpIHtcclxuICAgICAgICBAaW5jbHVkZSBoMjtcclxuICAgICAgfVxyXG5cclxuICAgICAgQGluY2x1ZGUgbWVkaWEoXCI8bWRcIiwgXCJoZWlnaHQ8PXhzXCIpIHtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgdGV4dC1hbGlnbi1sYXN0OiBjZW50ZXI7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gICZfX2lubmVyIHtcclxuICAgIEBpbmNsdWRlIG1lZGlhKFwiPj1sZ1wiLCBcImhlaWdodD49eHNcIikge1xyXG4gICAgICBwYWRkaW5nOiAwIDE1cHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmX19jbG9zZSB7XHJcbiAgICBAaW5jbHVkZSBtZWRpYShcIj49bGdcIikge1xyXG4gICAgICByaWdodDogMzBweDtcclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSBtZWRpYShcIj49cGFnZVwiKSB7XHJcbiAgICAgIHJpZ2h0OiA5MHB4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJl9fZm9ybSB7XHJcbiAgICBAaW5jbHVkZSBzaGFkb3c7XHJcbiAgICBib3JkZXItcmFkaXVzOiAkcGFkO1xyXG4gICAgcGFkZGluZzogJGJ1bXA7XHJcbiAgICBtYXJnaW4tdG9wOiAkYnVtcCAqIDI7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHJcbiAgICBAaW5jbHVkZSBtZWRpYShcIjw9bGdcIikge1xyXG4gICAgICBtYXJnaW4tdG9wOiAkYnVtcDtcclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSBtZWRpYShcIjw9eHNcIikge1xyXG4gICAgICBtYXJnaW4tdG9wOiAkYnVtcCAvIDI7XHJcbiAgICAgIHBhZGRpbmc6ICRwYWQvMjtcclxuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICB9XHJcblxyXG4gICAgZm9ybSB7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7XHJcbiAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcclxuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIH1cclxuXHJcbiAgICAuZm9ybS1pdGVtIHtcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgIG1hcmdpbjogMCAkYnVtcCAwIDA7XHJcblxyXG4gICAgICBAaW5jbHVkZSBtZWRpYShcIjw9eHNcIikge1xyXG4gICAgICAgIG1hcmdpbi1yaWdodDogMCAhaW1wb3J0YW50O1xyXG4gICAgICB9XHJcblxyXG4gICAgICBpbnB1dFt0eXBlPVwidGV4dFwiXSB7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRleHQ7XHJcbiAgICAgICAgY29sb3I6ICNmZmY7XHJcbiAgICAgICAgYm9yZGVyOiA0cHggc29saWQgJHRleHQ7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogJGJ1bXA7XHJcbiAgICAgICAgcGFkZGluZzogJHBhZC8zICRwYWQ7XHJcblxyXG4gICAgICAgICY6OnBsYWNlaG9sZGVyIHtcclxuICAgICAgICAgIGNvbG9yOiAkYmc7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOmZvY3VzIHtcclxuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XHJcbiAgICAgICAgICBjb2xvcjogJHRleHQ7XHJcblxyXG4gICAgICAgICAgJjo6cGxhY2Vob2xkZXIge1xyXG4gICAgICAgICAgICBjb2xvcjogJHRleHQ7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgOjpwbGFjZWhvbGRlciB7XHJcbiAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgfVxyXG5cclxuICAgIC5mb3JtLWFjdGlvbnMge1xyXG4gICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLmJ0biB7XHJcbiAgICBtaW4td2lkdGg6IDE3NXB4O1xyXG4gICAgYm94LXNoYWRvdzogbm9uZTtcclxuXHJcbiAgICBAaW5jbHVkZSBtZWRpYShcIjw9eHNcIikge1xyXG4gICAgICBtYXJnaW4tdG9wOiAkYnVtcCAvIDI7XHJcbiAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAzMHB4KTtcclxuICAgICAgbWFyZ2luLXRvcDogJGJ1bXAgLyAyO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLmZvcm1fX2ZpZWxkLS1zdWJtaXQge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgbGVmdDogLTk5OWVtO1xyXG4gIH1cclxufVxyXG5cclxuLy8gRGlzY292ZXIgdGFiIG9wZW5lZC9jbG9zZWRcclxuLm9wZW4tc2VhcmNoIHtcclxuICBvdmVyZmxvdzogaGlkZGVuO1xyXG5cclxuICAubW9kYWwtLXNlYXJjaCB7XHJcbiAgICBhbmltYXRpb246IGRpc2NJbiAwLjI1cyAkZWFzaW5nIG5vcm1hbCBib3RoO1xyXG5cclxuICAgICZfX2lubmVyIHtcclxuICAgICAgYW5pbWF0aW9uOiBjb250ZW50SW4gMC4ycyAwLjE1cyAkZWFzaW5nIG5vcm1hbCBib3RoO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLmNsb3NlLXNlYXJjaCB7XHJcbiAgLm1vZGFsLS1zZWFyY2gge1xyXG4gICAgYW5pbWF0aW9uOiBkaXNjT3V0IDAuMnMgMC4ycyAkZWFzaW5nIG5vcm1hbCBib3RoO1xyXG5cclxuICAgICZfX2lubmVyIHtcclxuICAgICAgYW5pbWF0aW9uOiBjb250ZW50T3V0IDAuMnMgJGVhc2luZyBub3JtYWwgYm90aDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiLmVudGl0eSB7XHJcbiAgbWFyZ2luOiAkYnVtcCAqIDEuNSAwO1xyXG5cclxuICBAaW5jbHVkZSBtZWRpYShcIjx4bGdcIikge1xyXG4gICAgbWFyZ2luOiAkYnVtcCAwO1xyXG4gIH1cclxuXHJcbiAgQGluY2x1ZGUgbWVkaWEoXCI8c21cIikge1xyXG4gICAgbWFyZ2luOiAkcGFkIDA7XHJcbiAgfVxyXG5cclxuICBpbWcge1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBoZWlnaHQ6IGF1dG87XHJcbiAgfVxyXG5cclxuICAuaW1hZ2Uge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIH1cclxuXHJcbiAgJl9fYm9keSB7XHJcbiAgICBtYXJnaW4tdG9wOiAwO1xyXG4gIH1cclxuXHJcbiAgJl9fdmlkZW8ge1xyXG4gICAgaWZyYW1lIHtcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmX19xdW90ZSB7XHJcbiAgICBibG9ja3F1b3RlIHtcclxuICAgICAgQGluY2x1ZGUgZm9udC10aXRsZTtcclxuICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICBmb250LXNpemU6IDQycHg7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiA1MnB4O1xyXG5cclxuICAgICAgQGluY2x1ZGUgbWVkaWEoXCI8c21cIikge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMjVweDtcclxuICAgICAgICBsaW5lLWhlaWdodDogMzVweDtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIGZvb3RlciB7XHJcbiAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICB9XHJcblxyXG4gICAgcCB7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICB9XHJcblxyXG4gICAgY2l0ZSB7XHJcbiAgICAgIEBpbmNsdWRlIGZvbnQtYm9keTtcclxuICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG5cclxuICAgICAgLm5hbWUge1xyXG4gICAgICAgIEBpbmNsdWRlIGZvbnQtYm9sZDtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIEBtaXhpbiByYXRpbmcoJHN0YXJzKSB7XHJcbiAgICAgICY6bnRoLWNoaWxkKC1uICsgI3skc3RhcnN9KSB7XHJcbiAgICAgICAgcGF0aCB7XHJcbiAgICAgICAgICBmaWxsOiAkcHJpbWFyeTtcclxuICAgICAgICAgIHN0cm9rZTogJHByaW1hcnk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLnJhdGluZyB7XHJcbiAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xyXG4gICAgICBtYXJnaW4tcmlnaHQ6ICRwYWQvMjtcclxuXHJcbiAgICAgICZfX3N0YXIge1xyXG4gICAgICAgIHdpZHRoOiAyNHB4O1xyXG4gICAgICAgIGhlaWdodDogMjRweDtcclxuICAgICAgICBtYXJnaW4tcmlnaHQ6IDVweDtcclxuXHJcbiAgICAgICAgJjpsYXN0LWNoaWxkIHtcclxuICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIEBmb3IgJHN0YXJzIGZyb20gMSB0aHJvdWdoIDUge1xyXG4gICAgICAgICYtLSN7JHN0YXJzfSB7XHJcbiAgICAgICAgICAucmF0aW5nX19zdGFyIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgcmF0aW5nKCN7JHN0YXJzfSk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmX19nYWxsZXJ5IHtcclxuICAgIGEge1xyXG4gICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgb3BhY2l0eTogMTtcclxuXHJcbiAgICAgIGltZyB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICY6aG92ZXIge1xyXG4gICAgICAgIG9wYWNpdHk6IDAuNjtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJl9fbGlua2VkLWxvZ29zIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHJcbiAgICBAaW5jbHVkZSBtZWRpYShcIj49c21cIikge1xyXG4gICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcclxuICAgIH1cclxuXHJcbiAgICBoMyB7XHJcbiAgICAgIG1hcmdpbjogMDtcclxuICAgIH1cclxuXHJcbiAgICAubG9nb3Mge1xyXG4gICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICAgIG1hcmdpbjogNDBweCAwIDA7XHJcblxyXG4gICAgICBAaW5jbHVkZSBtZWRpYShcIj49c21cIikge1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIGEge1xyXG4gICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgbWFyZ2luLWJvdHRvbTogNDBweDtcclxuXHJcbiAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj1zbVwiKSB7XHJcbiAgICAgICAgd2lkdGg6IGNhbGMoNTAlIC0gI3skcGFkIC8gMn0pO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAmOmhvdmVyLFxyXG4gICAgICAmOmZvY3VzIHtcclxuICAgICAgICBvcGFjaXR5OiAwLjc7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBpbWcge1xyXG4gICAgICB3aWR0aDogYXV0bztcclxuICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmX192aWV3IHtcclxuICAgICY6Zmlyc3QtY2hpbGQge1xyXG4gICAgICBtYXJnaW4tdG9wOiAwO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJl9fZW1iZWQge1xyXG4gICAgaWZyYW1lIHtcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmX19hY2NvcmRpb24ge1xyXG4gICAgLmpzLWFjY29yZGlvbiB7XHJcbiAgICAgIGJvcmRlcjogNHB4IHNvbGlkICR0ZXh0O1xyXG4gICAgICBib3JkZXItcmFkaXVzOiAkYnVtcDtcclxuICAgICAgcGFkZGluZzogJHBhZCAvIDIgJHBhZDtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogJHBhZDtcclxuXHJcbiAgICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgICAgfVxyXG5cclxuICAgICAgJl9fcGFuZWwge1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuYWNjb3JkaW9uIHtcclxuICAgICAgJl9fdGl0bGUge1xyXG4gICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICBwYWRkaW5nLXRvcDogNnB4O1xyXG4gICAgICB9XHJcblxyXG4gICAgICAmX19oZWFkZXIge1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgYm9yZGVyOiAwO1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gICAgICAgIHRleHQtYWxpZ24tbGFzdDogbGVmdDtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgICAgICAgcGFkZGluZzogMDtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cclxuICAgICAgICAmOjphZnRlciB7XHJcbiAgICAgICAgICBAaW5jbHVkZSBiZy1pbWc7XHJcbiAgICAgICAgICBjb250ZW50OiBcIlwiICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycyAkZWFzaW5nO1xyXG4gICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1nL2ljb24tYXJyb3ctbGVmdC5zdmdcIik7XHJcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xyXG4gICAgICAgICAgaGVpZ2h0OiAyMHB4O1xyXG4gICAgICAgICAgd2lkdGg6IDIwcHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOmhvdmVyLFxyXG4gICAgICAgICZbYXJpYS1leHBhbmRlZD1cInRydWVcIl0ge1xyXG4gICAgICAgICAgJjo6YWZ0ZXIge1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgyNzBkZWcpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJjpmb2N1cyB7XHJcbiAgICAgICAgICBvdXRsaW5lOiAwO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgJl9fcGFuZWwge1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMHMgZWFzZSwgbWF4LWhlaWdodCAwLjJzIGVhc2UsIG9wYWNpdHkgMC4ycyBlYXNlLFxyXG4gICAgICAgICAgcGFkZGluZyAwLjJzIGVhc2UsIG1hcmdpbiAwLjJzIGVhc2U7XHJcbiAgICAgICAgbWF4LWhlaWdodDogMTAwZW07XHJcbiAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcclxuICAgICAgICB0cmFuc2l0aW9uLWRlbGF5OiAwcztcclxuICAgICAgICBib3JkZXItdG9wOiA0cHggc29saWQgJHRleHQ7XHJcbiAgICAgICAgcGFkZGluZy10b3A6ICRwYWQgLyAxLjU7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogJHBhZCAvIDEuNTtcclxuXHJcbiAgICAgICAgJlthcmlhLWhpZGRlbj1cInRydWVcIl0ge1xyXG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICBtYXgtaGVpZ2h0OiAwO1xyXG4gICAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcclxuICAgICAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDAuMnMsIDBzLCAwcztcclxuICAgICAgICAgIHBhZGRpbmctdG9wOiAwO1xyXG4gICAgICAgICAgbWFyZ2luLXRvcDogMDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHA6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAkcGFkIC8gMS41O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC8qIHRpdGxlIG9wZW5lZCAqL1xyXG4gICAgW2FyaWEtZXhwYW5kZWQ9XCJ0cnVlXCJdOmFmdGVyIHtcclxuICAgICAgY29udGVudDogXCItXCI7XHJcbiAgICB9XHJcbiAgICAvKiB0aXRsZSBjbG9zZWQgKi9cclxuICAgIFthcmlhLWV4cGFuZGVkPVwiZmFsc2VcIl06YWZ0ZXIge1xyXG4gICAgICBjb250ZW50OiBcIitcIjtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5zaWducG9zdCB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHJcbiAgICAmLS1yZXZlcnNlIHtcclxuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlO1xyXG4gICAgfVxyXG5cclxuICAgIEBpbmNsdWRlIG1lZGlhKFwiPHNtXCIpIHtcclxuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgIH1cclxuXHJcbiAgICBpbWcge1xyXG4gICAgICB3aWR0aDogNTAlO1xyXG4gICAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG5cclxuICAgICAgQGluY2x1ZGUgbWVkaWEoXCI8c21cIikge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206ICRwYWQ7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuZW50aXR5IHtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICZfX3NpZ25wb3N0IHtcclxuICAgIC5zaWducG9zdCB7XHJcbiAgICAgIG1hcmdpbi10b3A6ICRidW1wICogMS41O1xyXG5cclxuICAgICAgQGluY2x1ZGUgbWVkaWEoXCI8bGdcIikge1xyXG4gICAgICAgIG1hcmdpbi10b3A6ICRidW1wO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBAaW5jbHVkZSBtZWRpYShcIjxtZFwiKSB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogJHBhZDtcclxuICAgICAgfVxyXG5cclxuICAgICAgJl9fY29udGVudCB7XHJcbiAgICAgICAgd2lkdGg6IDM1JTtcclxuXHJcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI8eGxnXCIpIHtcclxuICAgICAgICAgIHdpZHRoOiA0NSU7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBAaW5jbHVkZSBtZWRpYShcIjxzbVwiKSB7XHJcbiAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gICZfX2ltYWdlLXRleHQge1xyXG4gICAgLnNpZ25wb3N0IHtcclxuICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XHJcblxyXG4gICAgICBpbWcge1xyXG4gICAgICAgIHdpZHRoOiA0MCU7XHJcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAkYnVtcDtcclxuXHJcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI8c21cIikge1xyXG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xyXG4gICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICAmX19jb250ZW50IHtcclxuICAgICAgICB3aWR0aDogNjAlO1xyXG5cclxuICAgICAgICBAaW5jbHVkZSBtZWRpYShcIjxzbVwiKSB7XHJcbiAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gICZfX3NwZWt0cml4LWNvbXBvbmVudCB7XHJcbiAgICBib3JkZXI6IDRweCBzb2xpZCAkdGV4dDtcclxuICAgIGJvcmRlci1yaWdodDogMDtcclxuICAgIGJvcmRlci1sZWZ0OiAwO1xyXG4gICAgcGFkZGluZzogJGJ1bXAgMDtcclxuICB9XHJcblxyXG4gICZfX3N0YXRpc3RpY3Mge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnk7XHJcbiAgICBjb2xvcjogI2ZmZjtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgcGFkZGluZzogJGJ1bXAgKiAxLjUgJGJ1bXAgKiAyO1xyXG4gICAgYm9yZGVyLXJhZGl1czogMjAwcHg7XHJcbiAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHJcbiAgICBAaW5jbHVkZSBtZWRpYShcIjx4bGdcIikge1xyXG4gICAgICBwYWRkaW5nOiAkYnVtcDtcclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSBtZWRpYShcIjxsZ1wiKSB7XHJcbiAgICAgIHBhZGRpbmc6ICRwYWQgKiAyICRwYWQgKiAyICRwYWQ7XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgbWVkaWEoXCI8c21cIikge1xyXG4gICAgICBib3JkZXItcmFkaXVzOiAkYnVtcCAqIDI7XHJcbiAgICB9XHJcblxyXG4gICAgaDIge1xyXG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgIHRleHQtYWxpZ24tbGFzdDogY2VudGVyO1xyXG5cclxuICAgICAgQGluY2x1ZGUgbWVkaWEoXCI8eGxnXCIpIHtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5zdGF0IHtcclxuICAgICAgbWFyZ2luOiAwICRidW1wO1xyXG4gICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cclxuICAgICAgQGluY2x1ZGUgbWVkaWEoXCI8bGdcIikge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206ICRwYWQ7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICZfX3ZhbHVlIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG5cclxuICAgICAgICBAaW5jbHVkZSBtZWRpYShcIjxzbVwiKSB7XHJcbiAgICAgICAgICBmb250LXNpemU6IDIuNWVtO1xyXG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNTtcclxuICAgICAgICAgIGxldHRlci1zcGFjaW5nOiBub3JtYWw7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICAmX190aXRsZSB7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgIHRleHQtYWxpZ24tbGFzdDogY2VudGVyO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmX19kb3dubG9hZHMge1xyXG4gICAgYSB7XHJcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xyXG5cclxuICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmX19zaXRlLWxpbmtzIHtcclxuICAgIC5saXN0aW5nIHtcclxuICAgICAgbWFyZ2luOiAkYnVtcCAqIDIgMCAkYnVtcCAqIDIgKC0kcGFkLzIpO1xyXG5cclxuICAgICAgQGluY2x1ZGUgbWVkaWEoXCI8eGxnXCIpIHtcclxuICAgICAgICBtYXJnaW46ICRidW1wIC8gMiAwICRidW1wIC8gMiAoLSRwYWQvMik7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuc2l0ZS1saW5rIHtcclxuICAgICAgQGluY2x1ZGUgc2hhZG93O1xyXG4gICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcclxuICAgICAgcGFkZGluZy10b3A6IDgwJTtcclxuICAgICAgYm9yZGVyLXJhZGl1czogMTZweDtcclxuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuICAgICAgQGluY2x1ZGUgbWVkaWEoXCI8c21cIikge1xyXG4gICAgICAgIHBhZGRpbmctdG9wOiAxNSU7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHNwYW4ge1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgbGVmdDogMDtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAmOmhvdmVyIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeTtcclxuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgICAgY29sb3I6ICNmZmY7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gICZfX3RpdGxlIHtcclxuICAgIG1hcmdpbi10b3A6IDA7XHJcblxyXG4gICAgaDEge1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgfVxyXG5cclxuICAgIC5kYXRlcyB7XHJcbiAgICAgIG1hcmdpbi10b3A6ICRwYWQ7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuXHJcblxyXG4gICZfX3NwZWt0cml4LWRvbmF0aW9uIHtcclxuICAgIHBhZGRpbmctdG9wOiA0MHB4O1xyXG4gICAgcGFkZGluZy1ib3R0b206IDQwcHg7XHJcbiAgICBib3JkZXItdG9wOiA0cHggc29saWQgJGFsdDtcclxuICAgIGJvcmRlci1ib3R0b206IDRweCBzb2xpZCAkYWx0O1xyXG5cclxuICAgIC5kb25hdGUge1xyXG4gICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XHJcbiAgICAgIG1hcmdpbi10b3A6ICRwYWQ7XHJcblxyXG4gICAgICBAaW5jbHVkZSBtZWRpYShcIjxzbVwiKSB7XHJcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgfVxyXG5cclxuICAgICAgPiBpbnB1dFt0eXBlPVwibnVtYmVyXCJdIHtcclxuICAgICAgICBtYXgtd2lkdGg6IDI1MHB4O1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIG1hcmdpbi1yaWdodDogMjBweDtcclxuXHJcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI8c21cIikge1xyXG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgPiAuYnRuIHtcclxuICAgICAgICBib3gtc2hhZG93OiBub25lO1xyXG5cclxuICAgICAgICBAaW5jbHVkZSBtZWRpYShcIjxzbVwiKSB7XHJcbiAgICAgICAgICBhbGlnbi1zZWxmOiBmbGV4LXN0YXJ0O1xyXG4gICAgICAgICAgbWFyZ2luLXRvcDogJHBhZDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAubWVzc2FnZXMge1xyXG4gICAgICBib3JkZXItd2lkdGg6IDFweDtcclxuICAgICAgbWFyZ2luLXRvcDogJHBhZDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuLmdpZnQtdm91Y2hlcnMge1xyXG4gICZfX2NvbnRhaW5lciB7XHJcbiAgICAuaW52YWxpZC1mb3JtLW1lc3NhZ2Uge1xyXG4gICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG4gICAgJi5pbnZhbGlkLWZvcm0ge1xyXG4gICAgICAuaW52YWxpZC1mb3JtLW1lc3NhZ2Uge1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIGNvbG9yOiByZWQ7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgJiA+IC5naWZ0LXZvdWNoZXJzX19yb3cge1xyXG4gICAgbGFiZWwge1xyXG4gICAgICBzcGFuIHtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAmLmludmFsaWQge1xyXG4gICAgICBsYWJlbCB7XHJcbiAgICAgICAgc3BhbiB7XHJcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgIGNvbG9yOiByZWQ7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gIC5jaG9pY2VzIHtcclxuICAgIGJhY2tncm91bmQ6IG5vbmUgIWltcG9ydGFudDtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XHJcbiAgICAmLmlzLWZvY3VzZWQge1xyXG4gICAgICAuY2hvaWNlc19fbGlzdC0tc2luZ2xlIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiAjMTIyMTJiIHVybCgvdGhlbWVzL3BpcHBpcC9kaXN0L2ltZy9jdGEtYXJyb3ctZG93bi5zdmcpIG5vLXJlcGVhdCByaWdodCAyMi41cHggY2VudGVyICAhaW1wb3J0YW50O1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMxMjIxMmIgICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgJl9fbGlzdCB7XHJcbiAgICAgICYtLXNpbmdsZSB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogI2ZmZiB1cmwoL3RoZW1lcy9waXBwaXAvZGlzdC9pbWcvY3RhLWFycm93LWRvd24tLWludmVydGVkLnN2Zykgbm8tcmVwZWF0IHJpZ2h0IDIyLjVweCBjZW50ZXI7XHJcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiAzNnB4O1xyXG4gICAgICAgIG1pbi13aWR0aDogMjgwcHg7XHJcbiAgICAgICAgcGFkZGluZy1yaWdodDogNjBweDtcclxuICAgICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XHJcbiAgICAgICAgLW1vei1hcHBlYXJhbmNlOiBub25lO1xyXG4gICAgICAgIGFwcGVhcmFuY2U6IG5vbmU7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcclxuICAgICAgICBib3JkZXI6IDRweCBzb2xpZCAjMTIyMTJiO1xyXG4gICAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMDtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDMwcHg7XHJcbiAgICAgICAgY29sb3I6ICMxMjIxMmI7XHJcbiAgICAgICAgZm9udC1mYW1pbHk6IG1vbnRzZXJyYXRyZWd1bGFyLGFyaWFsLHNhbnMtc2VyaWY7XHJcbiAgICAgICAgZm9udC1zaXplOiAxOHB4O1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAzMnB4O1xyXG4gICAgICAgIG1pbi1oZWlnaHQ6IDY1cHg7XHJcbiAgICAgICAgb3V0bGluZTogMDtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgLmlzLWZvY3VzZWQgJiB7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAjMTIyMTJiIHVybCgvdGhlbWVzL3BpcHBpcC9kaXN0L2ltZy9jdGEtYXJyb3ctZG93bi5zdmcpIG5vLXJlcGVhdCByaWdodCAyMi41cHggY2VudGVyO1xyXG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDtcclxuICAgICAgICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgICAgIH1cclxuICAgICAgICAuY2hvaWNlc19faXRlbS0tc2VsZWN0YWJsZSB7XHJcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAmX19pbm5lciB7XHJcbiAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgIGJhY2tncm91bmQ6IG5vbmUgIWltcG9ydGFudDtcclxuXHJcbiAgICB9XHJcbiAgfVxyXG4gIC5jaG9pY2VzW2RhdGEtdHlwZSo9c2VsZWN0LW9uZV06YWZ0ZXIge1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxuICB9XHJcbn0iLCJAa2V5ZnJhbWVzIHNsaWRlSW5VcCB7XHJcbiAgMCUge1xyXG4gICAgb3BhY2l0eTogMDtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMDAlKTtcclxuICB9XHJcblxyXG4gIDgwJSB7XHJcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMDIpO1xyXG4gIH1cclxuXHJcbiAgMTAwJSB7XHJcbiAgICBvcGFjaXR5OiAxO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApIHNjYWxlKDEpO1xyXG4gIH1cclxufVxyXG5cclxuLmVtbXNnIHtcclxuICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgYm90dG9tOiAwO1xyXG4gIGxlZnQ6IDA7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogJHRleHQ7XHJcbiAgei1pbmRleDogMTAwO1xyXG4gIGNvbG9yOiAjZmZmO1xyXG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZmZmO1xyXG4gIG92ZXJmbG93LXk6IHNjcm9sbDtcclxuICBtYXgtaGVpZ2h0OiA0MHZoO1xyXG5cclxuICBAaW5jbHVkZSBtZWRpYShcImxhbmRzY2FwZVwiLCBcIjxtZFwiLCBcImhlaWdodDx4c1wiKSB7XHJcbiAgICBtYXgtaGVpZ2h0OiA1MHZoO1xyXG4gIH1cclxuXHJcbiAgQGluY2x1ZGUgbWVkaWEoXCI+PXNtXCIsIFwiaGVpZ2h0Pj14c1wiKSB7XHJcbiAgICBvdmVyZmxvdy15OiB2aXNpYmxlO1xyXG4gICAgbWF4LWhlaWdodDogbm9uZTtcclxuICAgIHBhZGRpbmc6ICRidW1wLzIgMDtcclxuICB9XHJcblxyXG4gICY6bm90KC5oaWRkZW4pIHtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTAwJSk7XHJcbiAgICBhbmltYXRpb246IHNsaWRlSW5VcCAwLjJzIDAuM3MgY3ViaWMtYmV6aWVyKDAuNzcsIDAuMjksIDAuMzUsIDAuNzIpIDFcclxuICAgICAgZm9yd2FyZHM7XHJcbiAgfVxyXG5cclxuICAmX19pbm5lciB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHJcbiAgICBAaW5jbHVkZSBtZWRpYShcIj49c21cIiwgXCJoZWlnaHQ+PXhzXCIpIHtcclxuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlO1xyXG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xyXG4gICAgfVxyXG5cclxuICAgICYtLWNlbnRlciB7XHJcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblxyXG4gICAgICAmICsgLmVtbXNnX19jb250ZW50IHtcclxuICAgICAgICBtYXJnaW4tdG9wOiAkcGFkIC8gMjtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJl9fdGl0bGUge1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblxyXG4gICAgJjpiZWZvcmUge1xyXG4gICAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWcvaWNvbi13YXJuaW5nLS13aGl0ZS5zdmdcIikgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXI7XHJcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcclxuICAgICAgd2lkdGg6IDI0cHg7XHJcbiAgICAgIGhlaWdodDogMjJweDtcclxuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICBtYXJnaW4tcmlnaHQ6ICRidW1wIC8gMjtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICZfX2NvbnRlbnQge1xyXG4gICAgcCB7XHJcbiAgICAgIG1hcmdpbjogKCRwYWQgLyAyKSAwIDA7XHJcblxyXG4gICAgICAmOmZpcnN0LW9mLXR5cGUge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDA7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gICZfX2Nsb3NlIHtcclxuICAgIGhlaWdodDogNDJweDtcclxuICAgIHdpZHRoOiA0MnB4O1xyXG4gICAgZmxleDogMCAwIGF1dG87XHJcblxyXG4gICAgQGluY2x1ZGUgbWVkaWEoXCI+PXNtXCIsIFwiaGVpZ2h0Pj14c1wiKSB7XHJcbiAgICAgIG1hcmdpbi1sZWZ0OiAkcGFkO1xyXG4gICAgfVxyXG5cclxuICAgIC5zdmcge1xyXG4gICAgICBmaWxsOiAjZmZmO1xyXG4gICAgfVxyXG5cclxuICAgICY6aG92ZXIge1xyXG4gICAgICAuc3ZnIHtcclxuICAgICAgICBmaWxsOiAkYmc7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gICYtLWJvZHkge1xyXG4gICAgQGluY2x1ZGUgbWVkaWEoXCI8bWRcIiwgXCJoZWlnaHQ8eHNcIikge1xyXG4gICAgICBvdmVyZmxvdy15OiBoaWRkZW47XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIi5iYW5uZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIG1hcmdpbi1ib3R0b206ICRidW1wICogMztcbiAgaGVpZ2h0OiA0NXZoO1xuICB6LWluZGV4OiAxO1xuXG4gIEBpbmNsdWRlIG1lZGlhKFwiPGxnXCIpIHtcbiAgICBtYXJnaW4tYm90dG9tOiAkYnVtcCAqIDI7XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYShcIjxtZFwiKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogJGJ1bXA7XG4gIH1cblxuICAuY3JlZGl0IHtcbiAgICB6LWluZGV4OiA1MDtcbiAgfVxuXG4gIGltZyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHotaW5kZXg6IDEwO1xuICB9XG5cbiAgJl9fdmlkZW8ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgei1pbmRleDogMTA7XG4gIH1cblxuICAmX19jb250cm9sIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBoZWlnaHQ6ICRidW1wO1xuICAgIHdpZHRoOiAkYnVtcDtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgYm9yZGVyOiAzcHggc29saWQgJGJnO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMTBweDtcbiAgICBib3R0b206IDEwcHg7XG4gICAgei1pbmRleDogNDA7XG4gICAgdGV4dC1pbmRlbnQ6IC05OTllbTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeTtcbiAgICB0cmFuc2l0aW9uOiAwLjJzIGJhY2tncm91bmQtY29sb3IgJGVhc2luZztcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzLFxuICAgICY6YWN0aXZlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRhbHQ7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEoXCI+PXh4c1wiKSB7XG4gICAgICByaWdodDogMjBweDtcbiAgICAgIGJvdHRvbTogMjBweDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYShcIj49c21cIiwgXCJoZWlnaHQ+PXhzXCIpIHtcbiAgICAgIGhlaWdodDogJGJ1bXAgKiAxLjI1O1xuICAgICAgd2lkdGg6ICRidW1wICogMS4yNTtcbiAgICAgIHJpZ2h0OiAzNXB4O1xuICAgICAgYm90dG9tOiAzNXB4O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhKFwiPj1sZ1wiLCBcImhlaWdodD49OTAwcHhcIikge1xuICAgICAgd2lkdGg6IDcycHg7XG4gICAgICBoZWlnaHQ6IDcycHg7XG4gICAgICBib3JkZXItd2lkdGg6IDRweDtcbiAgICB9XG5cbiAgICAmLS1wYXVzZSB7XG4gICAgICBiYWNrZ3JvdW5kOiAkcHJpbWFyeSB1cmwoXCIuLi9pbWcvaWNvbi1wYXVzZS0td2hpdGUuc3ZnXCIpIG5vLXJlcGVhdCBjZW50ZXJcbiAgICAgICAgY2VudGVyO1xuICAgICAgYmFja2dyb3VuZC1zaXplOiA0NSU7XG4gICAgfVxuXG4gICAgJi0tcGxheSB7XG4gICAgICBiYWNrZ3JvdW5kOiAkcHJpbWFyeSB1cmwoXCIuLi9pbWcvaWNvbi1wbGF5LS13aGl0ZS5zdmdcIikgbm8tcmVwZWF0IGNlbnRlclxuICAgICAgICBjZW50ZXI7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IDUwJTtcbiAgICB9XG4gIH1cblxuICAmOjphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGV4dDtcbiAgICBvcGFjaXR5OiAwLjY7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICB6LWluZGV4OiAyMDtcbiAgfVxuXG4gICZfX2lubmVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICB6LWluZGV4OiA0MDtcblxuICAgICYgPiAuZ3JpZCB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICBoMSB7XG4gICAgICBtYXgtd2lkdGg6IDExMDBweDtcbiAgICB9XG5cbiAgICBwIHtcbiAgICAgIEBpbmNsdWRlIGZvbnQtYm9sZDtcbiAgICAgIG1heC13aWR0aDogNzUwcHg7XG4gICAgfVxuICB9XG5cbiAgLmVudGl0eSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxuXG4gICYtLWhvbWUge1xuICAgIGhlaWdodDogNzV2aDtcblxuICAgICYuYmFubmVyLS1tZWRpYSB7XG4gICAgICBAaW5jbHVkZSBtZWRpYShcIj49eHhzXCIsIFwiaGVpZ2h0PHhzXCIpIHtcbiAgICAgICAgbWluLWhlaWdodDogNDAwcHg7XG4gICAgICB9XG5cbiAgICAgIGgxIHtcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI8eHhzXCIsIFwiaGVpZ2h0PHhzXCIpIHtcbiAgICAgICAgICBAaW5jbHVkZSBoMztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICYtLW1lZGlhIHtcbiAgICBoMSB7XG4gICAgICBAaW5jbHVkZSBoMjtcblxuICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PWxnXCIsIFwiaGVpZ2h0Pj1zbVwiKSB7XG4gICAgICAgIGZvbnQtc2l6ZTogNzZweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDg2cHg7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAtM3B4O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5idG4ge1xuICAgIEBpbmNsdWRlIGJ0bi1zaGFkb3c7XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIG91dGxpbmUtY29sb3I6ICRiZztcbiAgICB9XG4gIH1cbn1cblxuLm5vLWJhbm5lciB7XG4gIG1hcmdpbi10b3A6ICRidW1wICogMjtcblxuICBAaW5jbHVkZSBtZWRpYShcIjx4bGdcIikge1xuICAgIG1hcmdpbi10b3A6ICRidW1wO1xuICB9XG4gIC5teS1hY2NvdW50ICYge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gIH1cbn1cblxuLm92ZXJsYXkge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGhlaWdodDogYXV0bztcbiAgd2lkdGg6IDEwMCU7XG4gIG9iamVjdC1maXQ6IGZpbGw7XG4gIGJvdHRvbTogLTYwJTtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogMzA7XG5cbiAgLm92ZXJsYXkge1xuICAgIGZpbGw6ICNmZmY7XG4gIH1cbn1cbiIsIi5jcmVkaXQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogJGJ1bXA7XG4gIHJpZ2h0OiAkYnVtcDtcbiAgei1pbmRleDogNDtcbiAgY3Vyc29yOiBoZWxwICFpbXBvcnRhbnQ7XG4gIGhlaWdodDogNDJweDtcbiAgd2lkdGg6IDQycHg7XG5cbiAgQGluY2x1ZGUgbWVkaWEoXCI8bWRcIikge1xuICAgIGJvdHRvbTogJHBhZDtcbiAgICByaWdodDogJHBhZDtcbiAgfVxuICBAaW5jbHVkZSBtZWRpYShcIjxzbVwiKSB7XG4gICAgYm90dG9tOiAkcGFkLzI7XG4gICAgcmlnaHQ6ICRwYWQvMjtcbiAgfVxuXG4gIHNwYW4ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gIC5iZyB7XG4gICAgZmlsbDogI2ZmZjtcbiAgfVxuICAuZmcge1xuICAgIEBpbmNsdWRlIGZvbnQtYm9sZDtcbiAgICBmb250LXNpemU6IDEuMmVtO1xuICAgIGZpbGw6ICR0ZXh0O1xuICB9XG5cbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IGF0dHIoZGF0YS1jcmVkaXQpO1xuICAgIHRleHQtaW5kZW50OiAwO1xuICAgIGJhY2tncm91bmQ6ICR0ZXh0O1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiA0MnB4O1xuICAgIHRvcDogMDtcbiAgICB6LWluZGV4OiAtMTtcbiAgICBwYWRkaW5nOiAwIDIxcHg7XG4gICAgaGVpZ2h0OiA0MnB4O1xuICAgIGxpbmUtaGVpZ2h0OiA0MnB4O1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzICRlYXNpbmc7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgYm9yZGVyLXJhZGl1czogM3B4O1xuICAgIGxldHRlci1zcGFjaW5nOiAwO1xuICAgIHdvcmQtc3BhY2luZzogMDtcbiAgfVxuXG4gICY6aG92ZXIge1xuICAgIC5iZyB7XG4gICAgICBmaWxsOiAkdGV4dDtcbiAgICB9XG4gICAgLmZnIHtcbiAgICAgIGZpbGw6ICNmZmY7XG4gICAgfVxuICAgICY6OmJlZm9yZSB7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgIH1cbiAgfVxufVxuIiwiLnNpZGViYXIge1xuICBtYXJnaW4tYm90dG9tOiAkYnVtcDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnk7XG4gIHBhZGRpbmc6ICRwYWQ7XG4gIHBhZGRpbmctdG9wOiAkYnVtcDtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6ICRwYWQgLyAxLjU7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6ICRwYWQgLyAxLjU7XG4gIGNvbG9yOiAjZmZmO1xuXG4gIEBpbmNsdWRlIG1lZGlhKFwiPG1kXCIpIHtcbiAgICBwYWRkaW5nOiAkcGFkLzI7XG4gICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6ICRwYWQgLyAyO1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6ICRwYWQgLyAyO1xuICB9XG5cbiAgJi0tZXZlbnQge1xuICAgIHBhZGRpbmc6IDIwcHg7XG5cbiAgICBAaW5jbHVkZSBtZWRpYShcIj49bGdcIikge1xuICAgICAgcGFkZGluZzogNDBweDtcbiAgICB9XG4gIH1cblxuICAmX19ldmVudHMge1xuICAgIG1hcmdpbi10b3A6IDI0cHg7XG5cbiAgICAmLXRpdGxlIHtcbiAgICAgIG1hcmdpbi10b3A6IDI0cHg7XG4gICAgICBAaW5jbHVkZSBoNDtcblxuICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi1lbXB0eSB7XG4gICAgICBAaW5jbHVkZSBoNDtcbiAgICAgIG1hcmdpbjogMCAwIDE2cHg7XG4gICAgfVxuICB9XG5cbiAgJl9fZXZlbnQtbGlzdCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luOiAwO1xuXG4gICAgbGkge1xuICAgICAgcGFkZGluZzogMjRweCAwIDA7XG4gICAgICBtYXJnaW4tdG9wOiAyNHB4O1xuICAgIH1cbiAgfVxuXG4gICZfX2V2ZW50IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgYm9yZGVyLXRvcDogMnB4IHNvbGlkICRiZztcblxuICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICB9XG5cbiAgICAmLWNvbnRlbnQge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgfVxuXG4gICAgJi10aW1lIHtcbiAgICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgICAgd2lkdGg6IDEwN3B4O1xuICAgICAgaGVpZ2h0OiA5N3B4O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJnO1xuICAgICAgY29sb3I6ICR0ZXh0O1xuICAgICAgQGluY2x1ZGUgZm9udC1ib2xkO1xuICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICBib3JkZXItcmFkaXVzOiAxNnB4O1xuICAgICAgbWFyZ2luLXJpZ2h0OiAyNHB4O1xuXG4gICAgICAvLyAmOmZvY3VzLFxuICAgICAgLy8gJjpob3ZlcixcbiAgICAgIC8vICY6YWN0aXZlIHtcbiAgICAgIC8vICAgYmFja2dyb3VuZC1jb2xvcjogJHRleHQ7XG4gICAgICAvLyAgIGNvbG9yOiAkYmc7XG4gICAgICAvLyAgIHRyYW5zaXRpb246IDAuMnMgYmFja2dyb3VuZC1jb2xvciAkZWFzaW5nLCAwLjJzIGNvbG9yICRlYXNpbmc7XG4gICAgICAvLyAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgIC8vIH1cbiAgICB9XG5cbiAgICAmLXZlbnVlIHtcbiAgICAgIEBpbmNsdWRlIGZvbnQtYm9sZDtcbiAgICB9XG5cbiAgICAmICsgLnNpZGViYXJfX2V2ZW50IHtcbiAgICAgIGJvcmRlci10b3A6IG5vbmU7XG4gICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICB9XG4gIH1cblxuICAmX19yb3cge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi10b3A6IDI0cHg7XG5cbiAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgfVxuICB9XG5cbiAgLmN0YSB7XG4gICAgQGluY2x1ZGUgY3RhLWFsdDtcbiAgfVxuXG4gIHVsLm1lbnUge1xuICAgIEBpbmNsdWRlIGxpLXJlc2V0O1xuXG4gICAgdWwubWVudSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6ICRwYWQ7XG4gICAgfVxuXG4gICAgYSB7XG4gICAgICBAaW5jbHVkZSBmb250LWJvZHk7XG4gICAgICBjb2xvcjogI2ZmZjtcblxuICAgICAgJi5pcy1hY3RpdmUge1xuICAgICAgICBAaW5jbHVkZSBmb250LWJvbGQ7XG4gICAgICB9XG4gICAgfVxuICAgIC5tZW51LWl0ZW0tLWFjdGl2ZS10cmFpbCA+IGEge1xuICAgICAgQGluY2x1ZGUgZm9udC1ib2xkO1xuICAgIH1cbiAgfVxuXG4gIGgzIGEge1xuICAgIGNvbG9yOiAjZmZmO1xuICB9XG5cbiAgJl9fbGF0ZXN0LW5ld3Mge1xuICAgIC5saXN0aW5nIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgIGxpIHtcbiAgICAgICAgcGFkZGluZzogMCAwICRwYWQ7XG4gICAgICAgIG1hcmdpbi1ib3R0b206ICRwYWQ7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjZmZmO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICZfX2luZm8ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuXG4gICAgJi1icmVhayB7XG4gICAgICBtYXJnaW4tdG9wOiAkcGFkO1xuICAgIH1cblxuICAgIHN0cm9uZyB7XG4gICAgICBtYXJnaW4tcmlnaHQ6ICRwYWQvMztcbiAgICB9XG5cbiAgICBhIHtcbiAgICAgIEBpbmNsdWRlIGZvbnQtYm9keTtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgIH1cbiAgfVxuXG4gICYtLWJvb2sge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cblxuICAuZW50aXR5X19lbWJlZCB7XG4gICAgbWFyZ2luOiAkcGFkIDA7XG4gIH1cbn1cblxuLmJ0bi0tYm9vayB7XG4gIGEge1xuICAgIEBpbmNsdWRlIGJ0bjtcbiAgICBAaW5jbHVkZSBidG4td2lkZTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgdGV4dC1hbGlnbi1sYXN0OiBjZW50ZXI7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgfVxufVxuIiwiLypcbiAgRGlzY292ZXIgbW9kYWxcbiovXG5cbi5idG4tLWRpc2NvdmVyIHtcbiAgbWluLXdpZHRoOiAkcGFkICogMTM7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgYm9yZGVyLXJhZGl1czogJHBhZDtcbiAgcGFkZGluZzogJHBhZCAvIDEuMjUgJHBhZCAvIDEuMjUgJHBhZC8gMS4zO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG1hcmdpbi1ib3R0b206ICRwYWQgLyAyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGV4dDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gIEBpbmNsdWRlIG1lZGlhKFwiPHhsZ1wiKSB7XG4gICAgbWluLXdpZHRoOiAwO1xuICB9XG5cbiAgJjo6YmVmb3JlLFxuICAmOjphZnRlciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIHN2ZyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luOiAwIGF1dG87XG5cbiAgICBwYXRoIHtcbiAgICAgIHRyYW5zaXRpb246IGZpbGwgMC4ycyAkZWFzaW5nO1xuICAgIH1cbiAgfVxuXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgY29sb3I6ICR0ZXh0O1xuXG4gICAgZyxcbiAgICBwYXRoIHtcbiAgICAgICY6bm90KC5jaXJjbGUpIHtcbiAgICAgICAgZmlsbDogJHRleHQ7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cblxuLy8gRGlzY292ZXIgd2luZG93XG4ubW9kYWwtLWRpc2NvdmVyIHtcbiAgQGluY2x1ZGUgYmctaW1nO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTIyMTJiO1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgY29sb3I6ICNmZmY7XG5cbiAgQGluY2x1ZGUgbWVkaWEoXCI8bWRcIiwgXCJoZWlnaHQ8PXhzXCIpIHtcbiAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG4gIH1cblxuICAmOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzEyMjEyYjtcbiAgICBvcGFjaXR5OiAwLjk7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICB6LWluZGV4OiAyO1xuICB9XG5cbiAgJl9fbG9nbyB7XG4gICAgQGluY2x1ZGUgbWVkaWEoXCI+PWxnXCIpIHtcbiAgICAgIGxlZnQ6IDMwcHg7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEoXCI+PXBhZ2VcIikge1xuICAgICAgbGVmdDogOTBweDtcbiAgICB9XG4gIH1cblxuICAmX19jbG9zZSB7XG4gICAgQGluY2x1ZGUgbWVkaWEoXCI+PWxnXCIpIHtcbiAgICAgIHJpZ2h0OiAzMHB4O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhKFwiPj1wYWdlXCIpIHtcbiAgICAgIHJpZ2h0OiA5MHB4O1xuICAgIH1cbiAgfVxuXG4gICZfX2lubmVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMTA7XG4gICAgb3BhY2l0eTogMDtcbiAgICBwYWRkaW5nOiAxNXB4IDA7XG5cbiAgICBAaW5jbHVkZSBtZWRpYShcIj49bGdcIiwgXCJoZWlnaHQ+PXhzXCIpIHtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgICBwYWRkaW5nOiAwIDE1cHg7XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWEoXCI8bWRcIiwgXCJoZWlnaHQ8PXhzXCIpIHtcbiAgICAmID4gLmdyaWQge1xuICAgICAgaGVpZ2h0OiA4MHZoO1xuICAgICAgaGVpZ2h0OiBjYWxjKHZhcigtLXZoLCAxdmgpICogODApO1xuICAgIH1cbiAgfVxuXG4gICZfX2NvbnRlbnQge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbjogMDtcblxuICAgIEBpbmNsdWRlIG1lZGlhKFwiPj1zbVwiLCBcImhlaWdodD49eHNcIikge1xuICAgICAgbWFyZ2luOiAkcGFkIDA7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEoXCI+PWxnXCIpIHtcbiAgICAgIG1pbi13aWR0aDogNDB2dztcbiAgICAgIHdpZHRoOiA1MCU7XG4gICAgICBtYXJnaW4tcmlnaHQ6ICRidW1wICogMS41O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhKFwiPj14bGdcIikge1xuICAgICAgbWluLXdpZHRoOiAwO1xuICAgICAgbWluLXdpZHRoOiAzMHZ3O1xuICAgICAgbWFyZ2luLXJpZ2h0OiAkYnVtcCAqIDI7XG4gICAgfVxuXG4gICAgaDIge1xuICAgICAgQGluY2x1ZGUgaDM7XG5cbiAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj00MTBweFwiLCBcIjw9eGxnXCIsIFwiaGVpZ2h0Pj14c1wiKSB7XG4gICAgICAgIEBpbmNsdWRlIGgyO1xuICAgICAgfVxuXG4gICAgICBAaW5jbHVkZSBtZWRpYShcIj49eGxnXCIpIHtcbiAgICAgICAgZm9udC1zaXplOiA3NnB4O1xuICAgICAgICBsaW5lLWhlaWdodDogODZweDtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC0zcHg7XG4gICAgICB9XG4gICAgfVxuXG4gICAgcCB7XG4gICAgICBAaW5jbHVkZSBmb250LWJvbGQ7XG4gICAgICBmb250LXNpemU6IDFlbTtcblxuICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PTQxMHB4XCIsIFwiaGVpZ2h0Pj14c1wiKSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4yZW07XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmJ0biB7XG4gICAgICBtYXJnaW4tdG9wOiAkcGFkO1xuICAgIH1cbiAgfVxuXG4gICZfX2xpbmtzIHtcblxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgbWFyZ2luLXRvcDogJGJ1bXA7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgzLCAxZnIpO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEoXCI+PXhzXCIsIFwiPGxnXCIpIHtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhKFwiPj1zbVwiLCBcImhlaWdodD49eHNcIikge1xuICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICB9XG4gICAgYSB7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAmOmhvdmVyLFxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIHAge1xuICAgICAgICAgIGNvbG9yOiB2YXIoLS1saW5rLWJvZHktY29sb3VyKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgcCB7XG4gICAgICAgIG1hcmdpbi10b3A6IDE1cHg7XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICB0cmFuc2l0aW9uOiAwLjJzO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICZfX3BhdHRlcm4sXG4gICZfX2ltYWdlIHtcbiAgICBAaW5jbHVkZSBtYXhvdXQ7XG4gICAgb3BhY2l0eTogMDtcbiAgICBhbmltYXRpb246IGZhZGVJbiAwLjJzICRlYXNpbmcgZm9yd2FyZHM7XG4gICAgYW5pbWF0aW9uLXBsYXktc3RhdGU6IHBhdXNlZDtcbiAgfVxuXG4gICZfX2ltYWdlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGV4dDtcbiAgICB6LWluZGV4OiA1O1xuICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgYW5pbWF0aW9uLWRlbGF5OiAwLjA1cztcblxuICAgICYuc2hvd24ge1xuICAgICAgYW5pbWF0aW9uLXBsYXktc3RhdGU6IHJ1bm5pbmc7XG4gICAgfVxuXG4gICAgJi5oaWRpbmcge1xuICAgICAgYW5pbWF0aW9uOiBmYWRlT3V0IDAuMnMgJGVhc2luZyBmb3J3YXJkcztcbiAgICB9XG4gIH1cblxuICAmX19wYXR0ZXJuIHtcbiAgICBAaW5jbHVkZSBiZy1pbWc7XG4gICAgei1pbmRleDogNjtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAwLjE1cztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudGl6ZSgkdGV4dCwgMC4xKTtcblxuICAgIEBlYWNoICR2ZXJ0aWNhbCBpbiAkdmVydGljYWxzIHtcbiAgICAgICYudmVydGljYWwtLSN7JHZlcnRpY2FsfSB7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy9iYWNrZ3JvdW5kLSN7JHZlcnRpY2FsfS13aC5zdmdcIik7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5zaG93biB7XG4gICAgICBhbmltYXRpb24tcGxheS1zdGF0ZTogcnVubmluZztcbiAgICB9XG5cbiAgICAmLmhpZGluZyB7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgICAgYW5pbWF0aW9uOiBmYWRlT3V0IDAuMnMgMC4xcyAkZWFzaW5nIGZvcndhcmRzO1xuICAgIH1cbiAgfVxuXG4gIC5vdmVybGF5IHtcbiAgICB6LWluZGV4OiAzO1xuICB9XG5cbiAgLnZlcnRpY2FsLWxpbmsge1xuXG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBtYXJnaW46IDAgMTVweDtcbiAgICAvL2hlaWdodDogMTAwJTtcbiAgICBncmlkLXRlbXBsYXRlLXJvd3M6IDFmciBhdXRvO1xuICAgIGdyaWQtZ2FwOiAyMHB4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICBAaW5jbHVkZSBtZWRpYShcIj49eHNcIiwgXCI8bGdcIikge1xuXG4gICAgICBtYXJnaW46IDAgMzBweDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYShcIj49bGdcIikge1xuICAgICAgbWFyZ2luOiAwIDMwcHg7XG4gICAgfVxuXG4gICAgLnZlcnRpY2FsLWxpbmtfX2NvbnRlbnQge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcbiAgICB9XG5cbiAgICBpbWcge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIG1heC1oZWlnaHQ6IDY1cHg7XG4gICAgICBvYmplY3QtZml0OiBjb250YWluO1xuXG4gICAgICBAaW5jbHVkZSBtZWRpYShcIj49c21cIikge1xuICAgICAgICBtYXgtaGVpZ2h0OiA4MHB4O1xuICAgICAgfVxuXG4gICAgICBAaW5jbHVkZSBtZWRpYShcIj49bWRcIiwgXCJoZWlnaHQ+PXhzXCIpIHtcbiAgICAgICAgbWF4LWhlaWdodDogMTI1cHg7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4yKTtcblxuICAgICAgLnZlcnRpY2FsLWxpbmtfX2NvbnRlbnQge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgcCB7XG4gICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gRGlzY292ZXIgdGFiIG9wZW5lZC9jbG9zZWRcbi5vcGVuLWRpc2NvdmVyIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAubW9kYWwtLWRpc2NvdmVyIHtcbiAgICBhbmltYXRpb246IGRpc2NJbiAwLjI1cyAkZWFzaW5nIG5vcm1hbCBib3RoO1xuXG4gICAgJl9faW5uZXIge1xuICAgICAgYW5pbWF0aW9uOiBjb250ZW50SW4gMC4ycyAwLjE1cyAkZWFzaW5nIG5vcm1hbCBib3RoO1xuICAgIH1cbiAgfVxufVxuXG4uY2xvc2UtZGlzY292ZXIge1xuICAubW9kYWwtLWRpc2NvdmVyIHtcbiAgICBhbmltYXRpb246IGRpc2NPdXQgMC4ycyAwLjJzICRlYXNpbmcgbm9ybWFsIGJvdGg7XG5cbiAgICAmX19pbm5lciB7XG4gICAgICBhbmltYXRpb246IGNvbnRlbnRPdXQgMC4ycyAkZWFzaW5nIG5vcm1hbCBib3RoO1xuICAgIH1cbiAgfVxufVxuIiwiLypcbiAgVmlldyBmaWx0ZXJzXG4qL1xuLmZpbHRlcnMge1xuICBtYXJnaW4tYm90dG9tOiAkYnVtcCAqIDI7XG59XG5cbi5maWx0ZXJzLFxuLnZpZXdzLWV4cG9zZWQtZm9ybSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICBoMyB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gIC5zZWUtYWxsIHtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgfVxufVxuXG4udmlld3MtZXhwb3NlZC1mb3JtIHtcbiAgbGFiZWwge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAuanMtZm9ybS1pdGVtLFxuICAuanMtZm9ybS1hY3Rpb25zIHtcbiAgICBtYXJnaW46IDAgJGJ1bXAgMCAwO1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cbn1cblxuLmNob2ljZXMge1xuICBtaW4td2lkdGg6ICRidW1wICogNDtcbiAgQGluY2x1ZGUgZm9udC1ib2xkO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGV4dDtcbiAgY29sb3I6ICNmZmY7XG4gIHRyYW5zaXRpb246IGFsbCAwLjJzICRlYXNpbmc7XG5cbiAgJi5pcy1vcGVuIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ3JleTtcbiAgfVxuXG4gICZfX2lubmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBmb250LXNpemU6IDE4cHg7XG4gICAgbGluZS1oZWlnaHQ6IDI4cHg7XG4gICAgbGV0dGVyLXNwYWNpbmc6IC0wLjVweDtcbiAgICBib3JkZXI6IDA7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICBwYWRkaW5nOiA4cHggMTJweDtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycyAkZWFzaW5nO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ3JleTtcbiAgICB9XG4gIH1cblxuICAmX19saXN0IHtcbiAgICBwYWRkaW5nOiAwO1xuXG4gICAgJi0tZHJvcGRvd24ge1xuICAgICAgLmNob2ljZXNfX2l0ZW0ge1xuICAgICAgICBwYWRkaW5nOiAkcGFkLzUgJHBhZC8zO1xuICAgICAgICBjb2xvcjogJHRleHQ7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjJzICRlYXNpbmc7XG5cbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICAmLmlzLWhpZ2hsaWdodGVkIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGV4dDtcbiAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICZbZGF0YS10eXBlKj1cInNlbGVjdC1vbmVcIl0ge1xuICAgIC5jaG9pY2VzX19pbm5lciB7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogOHB4O1xuICAgIH1cblxuICAgICY6OmFmdGVyIHtcbiAgICAgIGJvcmRlci1jb2xvcjogI2ZmZiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgICB9XG4gIH1cbn1cblxuLyoqXG4gKiBSZXNwb25zaXZlIFN0eWxlc1xuICovXG4uZmlsdGVycyxcbi5maWx0ZXJzIC52aWV3cy1leHBvc2VkLWZvcm0ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgQGluY2x1ZGUgbWVkaWEoXCI8PWxnXCIpIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICB9XG5cbiAgc2VsZWN0IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLmZpbHRlcnMge1xuICBpbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIG1hcmdpbjogMDtcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgIGNvbG9yOiAkdGV4dDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIEBpbmNsdWRlIGZvbnQtYm9sZDtcblxuICAgIEBpbmNsdWRlIG1lZGlhKFwiPj1sZ1wiKSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICBib3R0b206IDA7XG4gICAgICBsZWZ0OiAxMTklO1xuICAgIH1cbiAgfVxuXG4gIC5mb3JtLWl0ZW0sXG4gIC5mb3JtLWFjdGlvbnMge1xuICAgIEBpbmNsdWRlIG1lZGlhKFwiPD1sZ1wiKSB7XG4gICAgICB3aWR0aDogY2FsYygzMy4zMzMzMzMzMzMzJSAtICN7JGJ1bXAgLyAzfSk7XG4gICAgICBtYXJnaW46ICgkYnVtcCAvIDMpIDAgMDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYShcIjw9c21cIikge1xuICAgICAgd2lkdGg6IGNhbGMoNTAlIC0gI3skYnVtcCAvIDN9KTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYShcIjw9eHNcIikge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuXG4gICAgJjpudGgtY2hpbGQoLW4gKyAzKSB7XG4gICAgICBAaW5jbHVkZSBtZWRpYShcIjw9bGdcIiwgXCI+c21cIikge1xuICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgfVxuICAgIH1cblxuICAgICY6bnRoLWNoaWxkKC1uICsgMikge1xuICAgICAgQGluY2x1ZGUgbWVkaWEoXCI8PXNtXCIsIFwiPnhzXCIpIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPD14c1wiKSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmN0YSB7XG4gICAgQGluY2x1ZGUgbWVkaWEoXCI8PWxnXCIpIHtcbiAgICAgIHdpZHRoOiBjYWxjKDMzLjMzMzMzMzMzMzMlIC0gI3skYnVtcCAvIDN9KTtcbiAgICAgIG1hcmdpbjogKCRidW1wIC8gMykgMCAwO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhKFwiPD1zbVwiKSB7XG4gICAgICB3aWR0aDogY2FsYyg1MCUgLSAjeyRidW1wIC8gM30pO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhKFwiPD14c1wiKSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICAmOmxhc3Qtb2YtdHlwZSB7XG4gICAgICBAaW5jbHVkZSBtZWRpYShcIjw9bGdcIikge1xuICAgICAgICBtYXJnaW46ICgkYnVtcCAvIDMpIGF1dG8gMCAyMHB4O1xuICAgICAgfVxuXG4gICAgICBAaW5jbHVkZSBtZWRpYShcIjw9c21cIikge1xuICAgICAgICBtYXJnaW46ICgkYnVtcCAvIDMpIDAgMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi52aWV3IHtcbiAgJl9fcGVyZm9ybWFuY2VzX2J5X2V2ZW50cyxcbiAgJl9fd2hhdHNfb25fc2hvd190aW1lcyxcbiAgJl9fZXZlbnRzX2J5X3ZlbnVlIHtcbiAgICAuc2NoZWR1bGUgJiB7XG4gICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgJiA+IGhlYWRlciB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICBtYXJnaW46IDMwcHggMDtcbiAgICAgIH1cblxuICAgICAgJiA+IGRpdiB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgICB9XG5cbiAgICAgIGgzIHtcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoJzw9c20nKSB7XG4gICAgICAgICAgbWFyZ2luOiBhdXRvO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5saXN0aW5nIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgJiA+IGxpIHtcbiAgICAgICAgICAmID4gLnNjaGVkdWxlX19yb3cge1xuICAgICAgICAgICAgLnNjaGVkdWxlX19pdGVtIHtcbiAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjMDAwMDAwO1xuICAgICAgICAgICAgICBwYWRkaW5nOiAwLjVyZW0gMDtcblxuICAgICAgICAgICAgICAuc2NoZWR1bGVfX2luZm8ge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtZWRpYSgnPD1zbScpIHtcbiAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEoJzw9eHhzJykge1xuICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJiA+IC5zY2hlZHVsZV9fZHVyYXRpb24ge1xuICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICYgPiAuc2NoZWR1bGVfX3NvbGQtb3V0IHtcbiAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICYgPiAuc2NoZWR1bGVfX3ZlbnVlIHtcbiAgICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybCgnLi4vaW1nL21hcC1tYXJrZXItMi5zdmcnKSBuby1yZXBlYXQgY2VudGVyXG4gICAgICAgICAgICAgICAgICAgICAgY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDIwcHg7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAkcGFkIC8gMztcbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICBAaW5jbHVkZSBtZWRpYSgnPD1zbScpIHtcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiBub25lO1xuICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLm5vZGUge1xuICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICAgICAgICAgICAgICBhbGlnbi1zZWxmOiBmbGV4LXN0YXJ0O1xuXG4gICAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKCc8PXNtJykge1xuICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgICAgICAgYWxpZ24tc2VsZjogY2VudGVyO1xuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgJiA+IC5zY2hlZHVsZV9fdGltZSB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAwO1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyMnB4O1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgICAgICAgICAgIG1hcmdpbjogYXV0bztcbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICYgPiAuc2NoZWR1bGVfX2RldGFpbHMge1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDIwcHg7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtZWRpYSgnPD1zbScpIHtcbiAgICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmID4gLnNjaGVkdWxlX190aXRsZSB7XG4gICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDI4cHg7XG4gICAgICAgICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogLTAuNXB4O1xuICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgICAgICAgICAgICYgPiBhIHtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEoJzw9c20nKSB7XG4gICAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiBhdXRvO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAmID4gLnNjaGVkdWxlX19uYW1lIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDA7XG4gICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyNHB4O1xuXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKCc8PXNtJykge1xuICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogYXV0bztcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtZWRpYSgnPD14eHMnKSB7XG4gICAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAmID4gLnNjaGVkdWxlX19wcmV0aXRsZSxcbiAgICAgICAgICAgICAgICAgICYgPiAuc2NoZWR1bGVfX3N1YnRpdGxlIHtcbiAgICAgICAgICAgICAgICAgICAgLmN0X19ldmVudCAmIHtcbiAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKCc8PXNtJykge1xuICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogYXV0bztcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtZWRpYSgnPD14eHMnKSB7XG4gICAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYgfiAuc2NoZWR1bGVfX2hlYWRpbmcge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgfVxuICAgIH1cblxuICAgICZfX3doYXRzX29uX3Nob3dfdGltZXMge1xuICAgICAgJiA+IGhlYWRlciB7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIERpc2NvdmVyIHdpbmRvd1xuLm1vZGFsLS1jYWxlbmRhciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBvdmVyZmxvdy15OiBzY3JvbGw7XG5cbiAgJl9faW5uZXIge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbjogYXV0bztcbiAgfVxuXG4gICZfX2NvbnRlbnQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIH1cblxuICAmX190aXRsZSB7XG4gICAgQGluY2x1ZGUgaDI7XG5cbiAgICBAaW5jbHVkZSBtZWRpYShcIj49eGxnXCIsIFwiaGVpZ2h0Pj1tZFwiKSB7XG4gICAgICBAaW5jbHVkZSBoMTtcbiAgICB9XG4gIH1cblxuICAmX19jbG9zZSB7XG4gICAgLnN2Zy1tb2RhbCB7XG4gICAgICBmaWxsOiAkdGV4dDtcbiAgICB9XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIC5zdmctbW9kYWwge1xuICAgICAgICBmaWxsOiAkcHJpbWFyeTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogT3ZlcnJpZGVzXG4gICAqL1xuICAuemFidXRvX2NhbGVuZGFyIHtcbiAgICBtYXJnaW4tdG9wOiAkYnVtcCAvIDI7XG5cbiAgICBAaW5jbHVkZSBtZWRpYShcIj49c21cIikge1xuICAgICAgbWFyZ2luLXRvcDogJGJ1bXA7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEoXCI+PXhsZ1wiLCBcImhlaWdodD49bWRcIikge1xuICAgICAgbWFyZ2luLXRvcDogJGJ1bXAgKiAxLjU7XG4gICAgfVxuICB9XG59XG5cbi8vIERpc2NvdmVyIHRhYiBvcGVuZWQvY2xvc2VkXG4ub3Blbi1jYWxlbmRhciB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgLm1vZGFsLS1jYWxlbmRhciB7XG4gICAgYW5pbWF0aW9uOiBkaXNjSW4gMC4yNXMgJGVhc2luZyBub3JtYWwgYm90aDtcblxuICAgICZfX2lubmVyIHtcbiAgICAgIGFuaW1hdGlvbjogY29udGVudEluIDAuMnMgMC4xNXMgJGVhc2luZyBub3JtYWwgYm90aDtcbiAgICB9XG4gIH1cbn1cblxuLmNsb3NlLWNhbGVuZGFyIHtcbiAgLm1vZGFsLS1jYWxlbmRhciB7XG4gICAgYW5pbWF0aW9uOiBkaXNjT3V0IDAuMnMgMC4ycyAkZWFzaW5nIG5vcm1hbCBib3RoO1xuXG4gICAgJl9faW5uZXIge1xuICAgICAgYW5pbWF0aW9uOiBjb250ZW50T3V0IDAuMnMgJGVhc2luZyBub3JtYWwgYm90aDtcbiAgICB9XG4gIH1cbn1cbiIsIi8qKlxuICogR2VuZXJhbFxuICovXG5kaXYuemFidXRvX2NhbGVuZGFyIHtcbiAgQGluY2x1ZGUgc2hhZG93O1xuICBib3JkZXItcmFkaXVzOiAxNnB4O1xuICBwYWRkaW5nOiAkYnVtcCAvIDM7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWluLWhlaWdodDogMzgwcHg7XG5cbiAgQGluY2x1ZGUgbWVkaWEoXCI+PXNtXCIsIFwiaGVpZ2h0Pj14c1wiKSB7XG4gICAgcGFkZGluZzogJGJ1bXAgLyAyO1xuICAgIG1pbi1oZWlnaHQ6IDU3NXB4O1xuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWEoXCI+PWxnXCIsIFwiaGVpZ2h0Pj1tZFwiKSB7XG4gICAgbWluLWhlaWdodDogNjg1cHg7XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYShcIj49eGxnXCIpIHtcbiAgICBwYWRkaW5nOiAkYnVtcDtcbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhKFwiPj14bGdcIiwgXCJoZWlnaHQ+PW1kXCIpIHtcbiAgICBtaW4taGVpZ2h0OiA3ODBweDtcbiAgfVxufVxuXG5kaXYuemFidXRvX2NhbGVuZGFyIC50YWJsZSB0ciB0aCxcbmRpdi56YWJ1dG9fY2FsZW5kYXIgLnRhYmxlIHRyIHRkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbmRpdi56YWJ1dG9fY2FsZW5kYXIgLnRhYmxlIHRyIHRkIHtcbiAgQGluY2x1ZGUgbWVkaWEoXCI+PXNtXCIpIHtcbiAgICBwYWRkaW5nOiAxNXB4O1xuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWEoXCI+PWxnXCIsIFwiaGVpZ2h0Pj1tZFwiKSB7XG4gICAgcGFkZGluZzogMjVweDtcbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhKFwiPj14bGdcIikge1xuICAgIHBhZGRpbmc6IDIwcHggNDVweDtcbiAgfVxufVxuXG5kaXYuemFidXRvX2NhbGVuZGFyIC50YWJsZSB0cjpsYXN0LWNoaWxkIHtcbiAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbn1cblxuZGl2LnphYnV0b19jYWxlbmRhciAudGFibGUgdHI6bGFzdC1jaGlsZCB0ZCB7XG4gIHBhZGRpbmctYm90dG9tOiAwO1xufVxuXG4vKipcbiAqIE1vbnRoIEhlYWRlclxuICovXG5kaXYuemFidXRvX2NhbGVuZGFyIC50YWJsZSB0ci5jYWxlbmRhci1tb250aC1oZWFkZXIgdGQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgcGFkZGluZzogMCAwICRidW1wIC8gMztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBAaW5jbHVkZSBmb250LXRpdGxlO1xuXG4gIEBpbmNsdWRlIG1lZGlhKFwiPj1zbVwiLCBcImhlaWdodD49eHNcIikge1xuICAgIHBhZGRpbmc6IDAgMCAkYnVtcCAvIDI7XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYShcIj49eGxnXCIpIHtcbiAgICBwYWRkaW5nOiAwIDAgJGJ1bXA7XG4gIH1cblxuICAmOmZpcnN0LWNoaWxkIHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuXG4gICAgQGluY2x1ZGUgbWVkaWEoXCI+PXNtXCIsIFwiaGVpZ2h0Pj14c1wiKSB7XG4gICAgICBAaW5jbHVkZSBoMztcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYShcIj49eGxnXCIsIFwiaGVpZ2h0Pj1tZFwiKSB7XG4gICAgICBAaW5jbHVkZSBoMjtcbiAgICB9XG4gIH1cbn1cblxuZGl2LnphYnV0b19jYWxlbmRhciAudGFibGUgdHIuY2FsZW5kYXItbW9udGgtaGVhZGVyIHRkIHNwYW4ge1xuICBwYWRkaW5nLWJvdHRvbTogMDtcbn1cblxuLyoqXG4gKiBEYXkgb2YgV2VlayBIZWFkZXJcbiAqL1xuZGl2LnphYnV0b19jYWxlbmRhciAudGFibGUgdHIuY2FsZW5kYXItZG93LWhlYWRlciB7XG4gIGJvcmRlcjogc29saWQgJHRleHQ7XG4gIGJvcmRlci13aWR0aDogNHB4IDA7XG59XG5cbmRpdi56YWJ1dG9fY2FsZW5kYXIgLnRhYmxlIHRyLmNhbGVuZGFyLWRvdy1oZWFkZXIgdGgge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgcGFkZGluZzogMTBweCAxcHg7XG4gIEBpbmNsdWRlIGZvbnQtYm9sZDtcblxuICBAaW5jbHVkZSBtZWRpYShcIj49c21cIiwgXCJoZWlnaHQ+PXhzXCIpIHtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIHBhZGRpbmc6IDIwcHg7XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYShcIj49eGxnXCIsIFwiaGVpZ2h0Pj1tZFwiKSB7XG4gICAgcGFkZGluZzogJGJ1bXA7XG4gIH1cbn1cblxuZGl2LnphYnV0b19jYWxlbmRhciB0ci5jYWxlbmRhci1kb3ctaGVhZGVyIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRiZztcbn1cblxuLyoqXG4gKiBFdmVudFxuICovXG5kaXYuemFidXRvX2NhbGVuZGFyIC50YWJsZSB0ciB0ZCBkaXYuZGF5IHtcbiAgQGluY2x1ZGUgZm9udC1ib2xkO1xuICBwYWRkaW5nOiAwO1xuICB3aWR0aDogMzZweDtcbiAgaGVpZ2h0OiAzNnB4O1xuICBtYXJnaW46IDAgYXV0bztcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG59XG5cbmRpdi56YWJ1dG9fY2FsZW5kYXIgLnRhYmxlIHRyIHRkLmV2ZW50IGRpdi5kYXkge1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGJvcmRlcjogNHB4IHNvbGlkICR0ZXh0O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmc7XG4gIHRyYW5zaXRpb246IDAuMjVzIGJhY2tncm91bmQtY29sb3IgJGVhc2luZywgMC4yNXMgY29sb3IgJGVhc2luZztcblxuICAmOmhvdmVyLFxuICAmOmZvY3VzLFxuICAmOmFjdGl2ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHRleHQ7XG4gICAgY29sb3I6ICRiZztcbiAgfVxufVxuXG4vKipcbiAqIE5hdmlnYXRpb25cbiAqL1xuZGl2LnphYnV0b19jYWxlbmRhciBkaXYuY2FsZW5kYXItbW9udGgtbmF2aWdhdGlvbiB7XG4gIHBhZGRpbmctdG9wOiAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICB6LWluZGV4OiAyMDtcbiAgbGVmdDogLTEwcHg7XG5cbiAgQGluY2x1ZGUgbWVkaWEoXCI+PXh4c1wiKSB7XG4gICAgbGVmdDogMDtcbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhKFwiPj1zbVwiLCBcImhlaWdodD49eHNcIikge1xuICAgIHdpZHRoOiA0MHB4O1xuICAgIGhlaWdodDogNDBweDtcbiAgICBsZWZ0OiAzMCU7XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYShcIj49eGxnXCIsIFwiaGVpZ2h0Pj1tZFwiKSB7XG4gICAgd2lkdGg6IDcycHg7XG4gICAgaGVpZ2h0OiA3MnB4O1xuICB9XG5cbiAgJjo6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGJhY2tncm91bmQ6IHVybCguLi9pbWcvY3RhLWFycm93LWRvd24tLWludmVydGVkLnN2Zykgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXI7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIG1hcmdpbjogYXV0bztcbiAgICBib3JkZXI6IDRweCBzb2xpZCAkdGV4dDtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDQwcHg7XG4gICAgaGVpZ2h0OiA0MHB4O1xuICAgIHJpZ2h0OiAwO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEoXCI+PXhsZ1wiLCBcImhlaWdodD49bWRcIikge1xuICAgICAgd2lkdGg6IDcycHg7XG4gICAgICBoZWlnaHQ6IDcycHg7XG4gICAgfVxuICB9XG59XG5cbmRpdi56YWJ1dG9fY2FsZW5kYXJcbiAgLmNhbGVuZGFyLW1vbnRoLWhlYWRlclxuICB0ZDpsYXN0LWNoaWxkXG4gIC5jYWxlbmRhci1tb250aC1uYXZpZ2F0aW9uIHtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogMTA7XG5cbiAgJjo6YmVmb3JlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpO1xuICB9XG59XG4iLCIubm8tanMsXG4uanMge1xuICAudWktZGlhbG9nLnVpLXdpZGdldC51aS13aWRnZXQtY29udGVudCB7XG4gICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICBoZWlnaHQ6IDEwMCUgIWltcG9ydGFudDtcbiAgICBsZWZ0OiAwICFpbXBvcnRhbnQ7XG4gICAgdG9wOiAwICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZzogMTBweDtcbiAgICBiYWNrZ3JvdW5kOiAkYmcgdXJsKFwiLi4vaW1nL2JhY2tncm91bmQtaGYuc3ZnXCIpIG5vLXJlcGVhdCB0b3AgbGVmdDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEoXCI+PW1kXCIpIHtcbiAgICAgIHBhZGRpbmc6IDI0cHg7XG4gICAgfVxuXG4gICAgLnVpLWRpYWxvZy10aXRsZWJhciB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuXG4gICAgLnVpLWRpYWxvZy10aXRsZWJhci1jbG9zZSB7XG4gICAgICBtYXJnaW46IDAgMCAwIGF1dG87XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIEBpbmNsdWRlIGNsb3NlO1xuXG4gICAgICBzcGFuIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBsZWZ0OiAtOTk5ZW07XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnVpLWRpYWxvZy10aXRsZSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBsZWZ0OiAtOTk5ZW07XG4gICAgfVxuXG4gICAgLnVpLWRpYWxvZy1jb250ZW50IHtcbiAgICAgIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgICAgbWF4LWhlaWdodDogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgcGFkZGluZzogMDtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBJRSAxMSBGaXhcbiAgICAgKiBQcmV2ZW50cyBib29rIG5vdyBidXR0b24gY29sb3VyIFxuICAgICAqIGJlaW5nIG92ZXJpZGRlblxuICAgICAqL1xuICAgIGEge1xuICAgICAgY29sb3I6ICRiZztcbiAgICB9XG4gIH1cbn1cblxuLm9wZW4tZGlhbG9nIHtcbiAgb3ZlcmZsb3cteTogaGlkZGVuO1xufVxuIiwiLnBlcmZvcm1hbmNlcyB7XG4gIHBhZGRpbmc6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGhlaWdodDogY2FsYygxMDB2aCAtIDc1cHgpO1xuICBtYXJnaW46IDEwcHggYXV0byAwO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXG4gIEBpbmNsdWRlIG1lZGlhKFwiPj1tZFwiKSB7XG4gICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICBoZWlnaHQ6IGNhbGMoMTAwdmggLSAxMTNweCk7XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYShcIj49bWRcIiwgXCJoZWlnaHQ+PTkwMHB4XCIpIHtcbiAgICBoZWlnaHQ6IGNhbGMoMTAwdmggLSAxNDJweCk7XG4gIH1cblxuICAmX19sb2dvIHtcbiAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEoXCI+PXNtXCIsIFwiPGxnXCIsIFwiaGVpZ2h0Pj14c1wiKSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYShcIj49bGdcIiwgXCJoZWlnaHQ+PTkwMHB4XCIpIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgIH1cblxuICAgICYtaXRlbSB7XG4gICAgICB3aWR0aDogMTYwcHg7XG4gICAgICBoZWlnaHQ6IDcwcHg7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgd2lkdGg6IDcwcHg7XG4gICAgICB9XG5cbiAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogJHBhZDtcblxuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgd2lkdGg6IDFweDtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeTtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgbGVmdDogMjZweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIHN2ZyB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgIH1cblxuICAgIGcsXG4gICAgcGF0aCxcbiAgICBwb2x5Z29uIHtcbiAgICAgIGZpbGw6ICRwcmltYXJ5O1xuICAgIH1cbiAgfVxuXG4gICZfX3RpdGxlIHtcbiAgICBtYXJnaW46IDA7XG5cbiAgICBAaW5jbHVkZSBtZWRpYShcIj49c21cIiwgXCJoZWlnaHQ+PXNtXCIpIHtcbiAgICAgIG1hcmdpbi10b3A6ICRidW1wIC8gMjtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYShcIj49bGdcIiwgXCJoZWlnaHQ+PW1kXCIpIHtcbiAgICAgIG1hcmdpbi10b3A6ICRidW1wO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhKFwiPj14bGdcIiwgXCJoZWlnaHQ+PW1kXCIpIHtcbiAgICAgIEBpbmNsdWRlIGgxO1xuICAgICAgbWFyZ2luLXRvcDogJGJ1bXAgKiAxLjg7XG4gICAgfVxuXG4gICAgJiArIGgyIHtcbiAgICAgIEBpbmNsdWRlIGg0O1xuICAgICAgbWFyZ2luOiAkYnVtcCAvIDMgMCAwO1xuXG4gICAgICBAaW5jbHVkZSBtZWRpYShcIj49bGdcIiwgXCJoZWlnaHQ+PW1kXCIpIHtcbiAgICAgICAgQGluY2x1ZGUgaDI7XG4gICAgICAgIG1heC13aWR0aDogNzgwcHg7XG4gICAgICAgIG1hcmdpbi10b3A6ICRidW1wICogMC43NTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmX19yb3dzIHtcbiAgICBtYXJnaW4tdG9wOiAkYnVtcCAvIDI7XG4gICAgZmxleDogMSAxIGF1dG87XG4gICAgb3ZlcmZsb3cteTogc2Nyb2xsO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEoXCI+PW1kXCIpIHtcbiAgICAgIG1hcmdpbi10b3A6ICRidW1wO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhKFwiPj1sZ1wiLCBcImhlaWdodD49bWRcIikge1xuICAgICAgbWFyZ2luLXRvcDogJGJ1bXAgKiAxLjg7XG4gICAgfVxuICB9XG5cbiAgJl9fcm93IHtcbiAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiZztcbiAgICBwYWRkaW5nOiAyMHB4O1xuICAgIEBpbmNsdWRlIHNoYWRvdztcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgbWFyZ2luLXRvcDogJGJ1bXAgLyAzO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEoXCI+PW1kXCIpIHtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgbWFyZ2luLXRvcDogJGJ1bXAgLyAyO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhKFwiPj1sZ1wiKSB7XG4gICAgICBwYWRkaW5nOiAyMHB4IDQwcHg7XG4gICAgfVxuXG4gICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tdG9wOiAwO1xuICAgIH1cbiAgfVxuXG4gICZfX21ldGEge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgJi0tZGF0ZSB7XG4gICAgICBAaW5jbHVkZSBoMztcbiAgICAgIEBpbmNsdWRlIGZvbnQtYm9sZDtcbiAgICB9XG5cbiAgICAmLS10aXRsZSB7XG4gICAgICBAaW5jbHVkZSBmb250LWJvZHk7XG4gICAgICBtYXJnaW4tdG9wOiAkYnVtcCAvIDQ7XG5cbiAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj1tZFwiKSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj1sZ1wiLCBcImhlaWdodD49bWRcIikge1xuICAgICAgICBAaW5jbHVkZSBoMztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmX19ib29raW5nIHtcbiAgICBtYXJnaW4tdG9wOiAkYnVtcCAvIDM7XG5cbiAgICBAaW5jbHVkZSBtZWRpYShcIj49eHNcIikge1xuICAgICAgbWFyZ2luOiAoJGJ1bXAgLyA0KSAwIDAgYXV0bztcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYShcIj49bWRcIikge1xuICAgICAgbWFyZ2luOiAwO1xuICAgIH1cblxuICAgIGEge1xuICAgICAgQGluY2x1ZGUgYnRuKGZhbHNlKTtcbiAgICAgIHdpZHRoOiAxOTBweDtcblxuICAgICAgQGluY2x1ZGUgbWVkaWEoXCI8PXhzXCIpIHtcbiAgICAgICAgQGluY2x1ZGUgYnRuLXdpZGU7XG4gICAgICB9XG5cbiAgICAgID4gc3BhbiB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbG93ZXJjYXNlO1xuXG4gICAgICAgICY6Zmlyc3QtbGV0dGVyIHtcbiAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBcbiAgICAgICYuZ29pbmctZmFzdCB7XG4gICAgICAgIEBpbmNsdWRlIGJ0bi1pbnZlcnQ7XG4gICAgICAgIGNvbG9yOiAkdGV4dCAhaW1wb3J0YW50O1xuICAgICAgfVxuICBcbiAgICAgICYuc29sZC1vdXQge1xuICAgICAgICBAaW5jbHVkZSBidG4tZGlzYWJsZWQ7XG4gICAgICAgIGNvbG9yOiAkdGV4dCAhaW1wb3J0YW50O1xuICAgICAgICBwb2ludGVyLWV2ZW50czogYWxsO1xuICAgICAgfVxuICAgIH1cblxuICB9XG59XG4iLCIvKipcbiAqIFNwZWt0cml4XG4gKi9cbi5zcGVrdHJpeCB7XG4gICZfX2NvbnRhaW5lciB7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gIH1cblxuICAmX19pbm5lciB7XG4gICAgbWF4LXdpZHRoOiA3ODBweDtcbiAgfVxuICAmX19tZW1iZXJzaGlwLWdyaWQge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC1nYXA6IDIwcHg7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgMWZyKTtcbiAgICBAaW5jbHVkZSBtZWRpYShcIjxzbVwiKSB7XG4gICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcbiAgICB9XG5cbiAgICAmLS1pdGVtIHtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNlZWU7XG4gICAgICAmLS1jb250ZW50IHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHBhZGRpbmc6IDE1cHg7XG4gICAgICAgIC5zcGVrdHJpeC1tZW1iZXJzaGlwX19jaGVja2JveCB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgICAgICAgaW5wdXQge1xuICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG59XG4iLCIuc2NoZWR1bGUge1xuICAmX19pbm5lciB7XG4gICAgcGFkZGluZy10b3A6IDA7XG4gICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIH1cblxuICAmX19oZWFkaW5nIHtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEoJzw9c20nKSB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1mbG93OiBjb2x1bW47XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIH1cbiAgfVxuXG4gICZfX3N1YnRpdGxlLFxuICAmX19wcmV0aXRsZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY29sb3I6ICRncmV5O1xuICB9XG5cbiAgJl9fdGl0bGUge1xuICAgIEBpbmNsdWRlIGg0O1xuICAgIG1hcmdpbjogNDBweCAwIDA7XG5cbiAgICBAaW5jbHVkZSBtZWRpYSgnPj1sZycpIHtcbiAgICAgIEBpbmNsdWRlIGgzO1xuICAgICAgbWFyZ2luLXRvcDogODBweDtcbiAgICB9XG4gIH1cblxuICAmX19pdGVtIHtcbiAgICAvLyBib3JkZXItcmFkaXVzOiAxNnB4O1xuICAgIC8vIGJhY2tncm91bmQtY29sb3I6ICRiZztcbiAgICAvLyBAaW5jbHVkZSBzaGFkb3c7XG4gICAgLy8gZGlzcGxheTogZmxleDtcbiAgICAvLyBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIC8vIHdpZHRoOiAxMDAlO1xuICAgIC8vIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuXG4gICAgLy8gQGluY2x1ZGUgbWVkaWEoJz49eHMnLCAnaGVpZ2h0Pj14cycpIHtcbiAgICAvLyAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgLy8gICBib3JkZXItcmFkaXVzOiAxNnB4IDAgMCAxNnB4O1xuICAgIC8vIH1cblxuICAgIC8vIEBpbmNsdWRlIG1lZGlhKCc+PXhsZycpIHtcbiAgICAvLyAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgLy8gICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgICAvLyB9XG4gICAgYm9yZGVyLXJhZGl1czogMTZweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmc7XG4gICAgQGluY2x1ZGUgc2hhZG93O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICAgIHBhZGRpbmc6IDAuNXJlbTtcblxuICAgIC5ub2RlIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgICB9XG4gIH1cblxuICAmX190aW1lIHtcbiAgICBAaW5jbHVkZSBmb250LWJvbGQ7XG4gICAgYm9yZGVyLXJhZGl1czogMTZweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeTtcbiAgICBjb2xvcjogJGJnO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgcGFkZGluZzogMXJlbTtcblxuICAgIEBpbmNsdWRlIG1lZGlhKCc+PXhzJykge1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEoJz49eGxnJykge1xuICAgICAgLy8gd2lkdGg6IDIzMHB4O1xuICAgICAgLy8gaGVpZ2h0OiAyMDVweDtcbiAgICAgIEBpbmNsdWRlIGgyO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAycmVtO1xuICAgIH1cbiAgfVxuXG4gICZfX21ldGEge1xuICAgIG1hcmdpbi10b3A6IDE2cHg7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICAmX19jb250ZW50IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nOiAxcmVtO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEoJz49eHMnKSB7XG4gICAgICBtYXgtd2lkdGg6IDc1JTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYSgnPj14cycsICdoZWlnaHQ+PXhzJykge1xuICAgICAgbWF4LXdpZHRoOiBub25lO1xuICAgICAgZmxleDogMSAwIDUwJTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYSgnPj14bGcnKSB7XG4gICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICAgIH1cbiAgfVxuXG4gICZfX2RldGFpbHMge1xuICAgIG1hcmdpbi10b3A6IDI0cHg7XG5cbiAgICBAaW5jbHVkZSBtZWRpYSgnPj14bGcnKSB7XG4gICAgICBtYXJnaW4tdG9wOiAwO1xuICAgIH1cbiAgfVxuXG4gICZfX25hbWUge1xuICAgIEBpbmNsdWRlIGg0O1xuICAgIG1hcmdpbjogMDtcblxuICAgIEBpbmNsdWRlIG1lZGlhKCc+PXhzJykge1xuICAgICAgQGluY2x1ZGUgaDM7XG4gICAgfVxuICB9XG5cbiAgJl9fdGh1bWIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYWxpZ24tc2VsZjogc3RyZXRjaDtcblxuICAgIEBpbmNsdWRlIG1lZGlhKCc+PXhzJywgJ2hlaWdodD49eHMnKSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGZsZXg6IDEgMSA1MCU7XG4gICAgICBwYWRkaW5nLWxlZnQ6ICRwYWQ7XG4gICAgICBtYXgtd2lkdGg6IDQyNXB4O1xuICAgIH1cblxuICAgIGltZyB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgfVxuICB9XG5cbiAgJl9fYnV0dG9ucyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIG1hcmdpbi10b3A6IDE2cHg7XG5cbiAgICBAaW5jbHVkZSBtZWRpYSgnPj1sZycpIHtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgfVxuICB9XG5cbiAgJl9fYnV0dG9uIHtcbiAgICBtYXJnaW4tdG9wOiAxNnB4O1xuXG4gICAgQGluY2x1ZGUgbWVkaWEoJz49bGcnKSB7XG4gICAgICBtYXJnaW46IDAgMTZweCAwIDA7XG4gICAgfVxuXG4gICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tdG9wOiAwO1xuICAgIH1cblxuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICBAaW5jbHVkZSBtZWRpYSgnPj1sZycpIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgfVxuICAgIH1cblxuICAgICYgPiBhIHtcbiAgICAgIEBpbmNsdWRlIGN0YTtcbiAgICB9XG5cbiAgICAmLS12ZW51ZSB7XG4gICAgICAmID4gYSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgYmFja2dyb3VuZDogdXJsKCcuLi9pbWcvbWFwLW1hcmtlci0td2hpdGUuc3ZnJykgbm8tcmVwZWF0IGNlbnRlclxuICAgICAgICAgICAgY2VudGVyO1xuICAgICAgICAgIHdpZHRoOiAxNXB4O1xuICAgICAgICAgIGhlaWdodDogMThweDtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogTW9kaWZpZXJzXG4gICAqL1xuICAubGlzdGluZyB7XG4gICAgbWFyZ2luLXRvcDogMTZweDtcblxuICAgIGxpIHtcbiAgICAgIG1hcmdpbi10b3A6IDE2cHg7XG4gICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuXG4gICAgICBAaW5jbHVkZSBtZWRpYSgnPj1sZycpIHtcbiAgICAgICAgbWFyZ2luLXRvcDogNDBweDtcbiAgICAgIH1cblxuICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLnBhZ2VyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuICAgIEBpbmNsdWRlIG1lZGlhKCc+PWxnJykge1xuICAgICAgbWFyZ2luLXRvcDogODBweDtcbiAgICB9XG5cbiAgICAmX19pdGVtcyB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgfVxuICB9XG59XG4iLCIubGlua3Mge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXG4gIEBpbmNsdWRlIG1lZGlhKCc+PXhzJykge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWEoJz49c20nKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogNDBweDtcbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhKCc+PW1kJykge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWEoJz49bGcnKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogNjBweDtcbiAgfVxuXG4gIC5jdGEge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBtYXJnaW4tdG9wOiA4cHg7XG4gICAgd2lkdGg6IGF1dG87XG5cbiAgICBAaW5jbHVkZSBtZWRpYSgnPj14cycpIHtcbiAgICAgIHdpZHRoOiBjYWxjKDMzJSAtIDE1cHgpO1xuICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYSgnPj1tZCcpIHtcbiAgICAgIG1hcmdpbi1yaWdodDogNDhweDtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgIH1cblxuICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICB9XG5cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgQGluY2x1ZGUgbWVkaWEoJz49bWQnKSB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmX19pbm5lciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAmID4gYS5jdGEge1xuICAgICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgICAgcGFkZGluZzogMTVweDtcbiAgICAgIG1hcmdpbjogMCAxMHB4IDAgMDtcbiAgICAgIGZvbnQtZmFtaWx5OiAnbW9udHNlcnJhdHJlZ3VsYXInLCBhcmlhbCwgc2Fucy1zZXJpZjtcblxuICAgICAgQGluY2x1ZGUgbWVkaWEoJzw9c20nKSB7XG4gICAgICAgIG1hcmdpbjogYXV0byBhdXRvIDIwcHg7XG4gICAgICAgIGJvcmRlci1yaWdodDogbm9uZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmID4gaDMge1xuICAgICAgbWFyZ2luOiAwIDEwcHggMCAwO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhKCc+PXhzJykge1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhKCc+PXNtJykge1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEoJz49bWQnKSB7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEoJz49bGcnKSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiA2MHB4O1xuICAgIH1cbiAgfVxuXG4gICZfX3Nob3d0aW1lcyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHB0dGM7XG4gICAgcGFkZGluZzogMCAoJHBhZCAvIDIpO1xuICAgIGNvbG9yOiAjZmZmZmZmO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEoJzw9c20nKSB7XG4gICAgICBwYWRkaW5nOiAxNXB4O1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICB9XG4gICAgJiA+IGEuY3RhIHtcbiAgICAgIGZvbnQtZmFtaWx5OiAnbW9udHNlcnJhdHJlZ3VsYXInLCBhcmlhbCwgc2Fucy1zZXJpZjtcbiAgICAgIHBhZGRpbmc6IDAgNy41cHggMCAwO1xuICAgICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgd2hpdGU7XG4gICAgICBtYXJnaW46IDE1cHggNy41cHggMTVweCAwO1xuICAgICAgd2lkdGg6IGF1dG87XG5cbiAgICAgIEBpbmNsdWRlIG1lZGlhKCc8PXNtJykge1xuICAgICAgICBtYXJnaW46IGF1dG8gYXV0byAyMHB4O1xuICAgICAgICBib3JkZXItcmlnaHQ6IG5vbmU7XG4gICAgICB9XG5cbiAgICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICB9XG5cbiAgICAgICY6bGFzdC1vZi10eXBlIHtcbiAgICAgICAgYm9yZGVyLXJpZ2h0OiBub25lO1xuICAgICAgICBAaW5jbHVkZSBtZWRpYSgnPD1zbScpIHtcbiAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJjpmaXJzdC1vZi10eXBlIHtcbiAgICAgICAgbWFyZ2luOiAxNXB4IDcuNXB4IDE1cHggMTVweDtcblxuICAgICAgICBAaW5jbHVkZSBtZWRpYSgnPD1zbScpIHtcbiAgICAgICAgICBtYXJnaW46IDEwcHgg4oCLYXV0byAyMHB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgJiA+IHNwYW4ge1xuICAgICAgZm9udC1mYW1pbHk6ICdtb250c2VycmF0c2VtaWJvbGQnLCBhcmlhbCwgc2Fucy1zZXJpZjtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgIH1cbiAgfVxuXG4gICZfX3dyYXBwZXIge1xuICAgIG1hcmdpbjogMzBweCAwIDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgxMDksIDExMCwgMTEzLCAwLjQpO1xuICAgIHBhZGRpbmc6IDE1cHggMDtcblxuICAgIC5saW5rcyxcbiAgICAubGlua3NfX2lubmVyIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuICB9XG59XG4iLCIud2hhdHMtb24tc2lnbnBvc3Qge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiZztcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgYm9yZGVyLXJhZGl1czogMCAwIDE2cHggMTZweDtcbiAgICBjb2xvcjogIzEyMjEyYjtcbiAgICBwYWRkaW5nOiAzMHB4IDQycHg7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcblxuICAgICZfX3RpdGxlIHtcbiAgICAgICAgZm9udC1mYW1pbHk6IFwibW9udHNlcnJhdHNlbWlib2xkXCIsIGFyaWFsLCBzYW5zLXNlcmlmO1xuICAgIH1cblxuICAgICZfX2NvcHkge1xuICAgICAgICBmb250LWZhbWlseTogXCJtb250c2VycmF0cmVndWxhclwiLCBhcmlhbCwgc2Fucy1zZXJpZjtcbiAgICB9XG5cbiAgICAmX19jdGEge1xuICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgIH1cblxuICAgICZfX3dyYXBwZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeTtcbiAgICAgICAgLmdyaWQge1xuICAgICAgICAgICAgLmNvbC1zbS02IHtcbiAgICAgICAgICAgICAgICAmOmZpcnN0LW9mLXR5cGUge1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtZWRpYSgnPD1zbScpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59IiwiLmN0X19ob21lcGFnZSB7XG4gIC5vdXItZmFtaWx5IHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMzMlIDFmcjtcbiAgICBncmlkLWdhcDogJGJ1bXAgKiAzO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEoXCI8bWRcIikge1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG4gICAgICBncmlkLWdhcDogJHBhZDtcbiAgICAgIGdyaWQtYXV0by1yb3dzOiBtaW4tY29udGVudDtcbiAgICB9XG5cbiAgICAmX19pbnRybyB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgIGZsZXgtYmFzaXM6IDMwJTtcbiAgICB9XG5cbiAgICAmX19sb2dvcyB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICAgLmxvZ28tbGluayB7XG4gICAgICAgIG1heC13aWR0aDogMzAlO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcblxuICAgICAgICBpbWcge1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgfVxuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIG9wYWNpdHk6IDAuNjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC5lbnRpdHkge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gIH1cbn1cbiIsIi52aWV3X19ldmVudHNfYnlfdmVudWUge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuIiwiLmN0IHtcbiAgJl9fZXZlbnQge1xuICAgIC5iYW5uZXIge1xuICAgICAgei1pbmRleDogNDtcbiAgICB9XG4gICAgLmV2ZW50LXN0aWNreSB7XG4gICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICB0b3A6IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgei1pbmRleDogMTA7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICBAaW5jbHVkZSBtZWRpYShcIjxzbVwiKSB7XG4gICAgICAgIHRvcDogYXV0bztcbiAgICAgICAgYm90dG9tOiAwO1xuICAgICAgfVxuXG4gICAgICAmX19zdWJ0aXRsZSB7XG4gICAgICAgIG1hcmdpbi10b3A6ICRwYWQgLyA2O1xuICAgICAgICBtYXgtd2lkdGg6IDc4MHB4O1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkYnVtcDtcbiAgICAgIH1cblxuICAgICAgJl9faW5uZXIge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPHNtXCIpIHtcbiAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgfVxuXG4gICAgICAgIHAge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICAgICAgICBAaW5jbHVkZSBtZWRpYShcIjxzbVwiKSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIGEge1xuICAgICAgICAgIEBpbmNsdWRlIGJ0bjtcbiAgICAgICAgICB3aWR0aDogY2FsYygzMy4zMzMzJSAtICgjeyRwYWR9ICogMikpO1xuICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICBtYXgtd2lkdGg6IDQwMHB4O1xuXG4gICAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI8c21cIikge1xuICAgICAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtICgjeyRwYWR9ICogMikpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICZfX2V2ZW50LFxuICAmX192ZW51ZSB7XG4gICAgaDEge1xuICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PXNtXCIsIFwiPHhsZ1wiKSB7XG4gICAgICAgIEBpbmNsdWRlIGgyO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICZfX2xpc3RpbmctcGFnZSB7XG4gICAgaDEge1xuICAgICAgbWFyZ2luOiAwIDAgMjBweDtcbiAgICAgIEBpbmNsdWRlIGgzO1xuXG4gICAgICBAaW5jbHVkZSBtZWRpYShcIj49eHNcIikge1xuICAgICAgICBAaW5jbHVkZSBoMjtcbiAgICAgIH1cblxuICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PXhzXCIsIFwiPG1kXCIpIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogJHBhZDtcbiAgICAgIH1cblxuICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PWxnXCIpIHtcbiAgICAgICAgQGluY2x1ZGUgaDE7XG4gICAgICB9XG5cbiAgICAgIHNwYW4ge1xuICAgICAgICBAaW5jbHVkZSBtZWRpYShcIjx4c1wiKSB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmX19sYW5kaW5nLXBhZ2UsXG4gICZfX2xpc3RpbmctcGFnZSB7XG4gICAgLmZvb3RlciB7XG4gICAgICBtYXJnaW4tdG9wOiAyMHB4O1xuXG4gICAgICBAaW5jbHVkZSBtZWRpYShcIj49bWRcIikge1xuICAgICAgICBtYXJnaW4tdG9wOiA5MHB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLm5vZGUtLXRlYXNlciB7XG4gIGhlaWdodDogMTAwJTtcbn1cblxuLnRlYXNlciB7XG4gIEBpbmNsdWRlIHNoYWRvdztcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgcGFkZGluZzogMCAkYnVtcCAkYnVtcDtcbiAgaGVpZ2h0OiAxMDAlO1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAkcGFkO1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogJHBhZDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBhbGlnbi1pdGVtczogc3RyZXRjaDtcblxuICBAaW5jbHVkZSBtZWRpYSgnPHhsZycpIHtcbiAgICBwYWRkaW5nOiAwICRwYWQgJHBhZDtcbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhKCc8bWQnKSB7XG4gICAgcGFkZGluZzogMCAkcGFkLzIgJHBhZCAvIDI7XG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogJHBhZCAvIDI7XG4gICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6ICRwYWQgLyAyO1xuICB9XG5cbiAgJl9fdGh1bWIge1xuICAgIG1hcmdpbi1ib3R0b206ICRidW1wO1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgKyAjeyRidW1wfSAqIDIpO1xuICAgIG1hcmdpbi1sZWZ0OiAtJGJ1bXA7XG5cbiAgICBAaW5jbHVkZSBtZWRpYSgnPHhsZycpIHtcbiAgICAgIHdpZHRoOiBjYWxjKDEwMCUgKyAjeyRwYWR9ICogMik7XG4gICAgICBtYXJnaW4tbGVmdDogLSRwYWQ7XG4gICAgICBtYXJnaW4tYm90dG9tOiAkcGFkO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhKCc8bWQnKSB7XG4gICAgICB3aWR0aDogY2FsYygxMDAlICsgI3skcGFkfSk7XG4gICAgICBtYXJnaW4tbGVmdDogLSRwYWQgLyAyO1xuICAgICAgbWFyZ2luLWJvdHRvbTogJHBhZCAvIDI7XG4gICAgfVxuXG4gICAgaW1nIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4ycyBlYXNlLWluLW91dDtcbiAgICB9XG4gIH1cblxuICAmX192ZW51ZSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi10b3A6ICRwYWQgLyAzO1xuXG4gICAgJjpiZWZvcmUge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBiYWNrZ3JvdW5kOiB1cmwoJy4uL2ltZy9tYXAtbWFya2VyLTIuc3ZnJykgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXI7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gICAgICB3aWR0aDogMjRweDtcbiAgICAgIGhlaWdodDogMjRweDtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIG1hcmdpbi1yaWdodDogJHBhZCAvIDY7XG4gICAgfVxuICB9XG5cbiAgJl9fY29udGVudCB7XG4gICAgcCB7XG4gICAgICBAaW5jbHVkZSBmb250LWJvZHk7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cbiAgICAucHJldGl0bGUge1xuICAgICAgY29sb3I6ICRncmV5O1xuICAgIH1cbiAgfVxuXG4gICZfX2J1dHRvbnMge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi10b3A6IGF1dG87XG4gICAgcGFkZGluZy10b3A6ICRidW1wO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgd2lkdGg6IDEwMCU7XG5cbiAgICBAaW5jbHVkZSBtZWRpYSgnPHhsZycpIHtcbiAgICAgIHBhZGRpbmctdG9wOiAkcGFkO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhKCc8bWQnKSB7XG4gICAgICBwYWRkaW5nLXRvcDogJHBhZC8yO1xuICAgIH1cblxuICAgIC5tYXAtcGluIHtcbiAgICAgIHN0cm9rZTogI2ZmZjtcbiAgICB9XG5cbiAgICBhIHtcbiAgICAgIEBpbmNsdWRlIGN0YTtcbiAgICAgIC8vIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgLy8gY29sb3I6ICR0ZXh0O1xuICAgICAgLy8gdGV4dC10cmFuc2Zvcm06IGxvd2VyY2FzZTtcbiAgICAgIC8vIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgLy8gcGFkZGluZzogMDtcblxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgY29sb3I6ICR0ZXh0O1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgIH1cblxuICAgICAgJjpmaXJzdC1sZXR0ZXIge1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAgIGltZyB7XG4gICAgICB0cmFuc2Zvcm06IHNjYWxlKDAuOSk7XG4gICAgfVxuXG4gICAgLy8gLmN0YSxcbiAgICAvLyAudGVhc2VyX19idXR0b25zIGEge1xuICAgIC8vICAgYmFja2dyb3VuZC1jb2xvcjogJGdyZXk7XG4gICAgLy8gfVxuICB9XG59XG5cbi5zaWRlYmFyLXRlYXNlciB7XG4gIEBpbmNsdWRlIGZvbnQtYm9keTtcbiAgY29sb3I6ICNmZmY7XG5cbiAgaDQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cblxuICAmOmhvdmVyIHtcbiAgICBjb2xvcjogJGFsdDtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cbn1cbiIsIi8qKlxuICogUGFnZSAtIFVzZXJcbiAqL1xuLnVzZXIsXG4uYm9vayxcbi5jaGVja291dCxcbi5yZWdpc3Rlcixcbi5tZW1iZXJzaGlwcyxcbi5teS1hY2NvdW50LFxuLmJhc2tldCxcbi5zaWdudXAsXG4uYnV5LWdpZnQtdm91Y2hlcnMge1xuICAuZm9vdGVyIHtcbiAgICBtYXJnaW4tdG9wOiA0MHB4O1xuXG4gICAgQGluY2x1ZGUgbWVkaWEoXCI+PWxnXCIpIHtcbiAgICAgIG1hcmdpbi10b3A6IDExMHB4O1xuICAgIH1cbiAgfVxufVxuXG4uYmxhbmsge1xuICBiYWNrZ3JvdW5kOiBub25lO1xufVxuIl0sIm5hbWVzIjpbXSwic291cmNlUm9vdCI6IiJ9*/