@charset "UTF-8";
/* ==========================================================================
   #BOX-SIZING
   ========================================================================== */
/**
 * More sensible default box-sizing:
 * css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice
 */
@import url("https://fonts.googleapis.com/css2?family=Red+Hat+Display:ital,wght@0,300..900;1,300..900&display=swap");
html {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

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

/*! normalize.css v7.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
 *    IE on Windows Phone and in iOS.
 */
html {
  line-height: 1.15;
  /* 1 */
  -ms-text-size-adjust: 100%;
  /* 2 */
  -webkit-text-size-adjust: 100%;
  /* 2 */
}

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

/**
 * Add the correct display in IE 9-.
 */
article,
aside,
footer,
header,
nav,
section {
  display: block;
}

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

/* Grouping content
   ========================================================================== */
/**
 * Add the correct display in IE 9-.
 * 1. Add the correct display in IE.
 */
figcaption,
figure,
main {
  /* 1 */
  display: block;
}

/**
 * Add the correct margin in IE 8.
 */
figure {
  margin: 1em 40px;
}

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

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

/* Text-level semantics
   ========================================================================== */
/**
 * 1. Remove the gray background on active links in IE 10.
 * 2. Remove gaps in links underline in iOS 8+ and Safari 8+.
 */
a {
  background-color: transparent;
  /* 1 */
  -webkit-text-decoration-skip: objects;
  /* 2 */
}

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

/**
 * Prevent the duplicate application of `bolder` by the next rule in Safari 6.
 */
b,
strong {
  font-weight: inherit;
}

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

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

/**
 * Add the correct font style in Android 4.3-.
 */
dfn {
  font-style: italic;
}

/**
 * Add the correct background and color in IE 9-.
 */
mark {
  background-color: #ff0;
  color: #000;
}

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

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

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* Embedded content
   ========================================================================== */
/**
 * Add the correct display in IE 9-.
 */
audio,
video {
  display: inline-block;
}

/**
 * Add the correct display in iOS 4-7.
 */
audio:not([controls]) {
  display: none;
  height: 0;
}

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

/**
 * Hide the overflow in IE.
 */
svg:not(:root) {
  overflow: hidden;
}

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

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

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

/**
 * 1. Prevent a WebKit bug where (2) destroys native `audio` and `video`
 *    controls in Android 4.
 * 2. Correct the inability to style clickable types in iOS and Safari.
 */
button,
html [type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button;
  /* 2 */
}

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

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

/**
 * 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 {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  /* 1 */
  color: inherit;
  /* 2 */
  display: table;
  /* 1 */
  max-width: 100%;
  /* 1 */
  padding: 0;
  /* 3 */
  white-space: normal;
  /* 1 */
}

/**
 * 1. Add the correct display in IE 9-.
 * 2. Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
  display: inline-block;
  /* 1 */
  vertical-align: baseline;
  /* 2 */
}

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

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

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

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

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

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

/* Interactive
   ========================================================================== */
/*
 * Add the correct display in IE 9-.
 * 1. Add the correct display in Edge, IE, and Firefox.
 */
details,
menu {
  display: block;
}

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

/* Scripting
   ========================================================================== */
/**
 * Add the correct display in IE 9-.
 */
canvas {
  display: inline-block;
}

/**
 * Add the correct display in IE.
 */
template {
  display: none;
}

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

/* ==========================================================================
   #RESET
   ========================================================================== */
/**
 * A very simple reset that sits on top of Normalize.css.
 */
body,
h1, h2, h3, h4, h5, h6,
blockquote, p, pre,
dl, dd, ol, ul,
figure,
hr,
fieldset, legend {
  margin: 0;
  padding: 0;
}

/**
 * Remove trailing margins from nested lists.
 */
li > ol,
li > ul {
  margin-bottom: 0;
}

/**
 * Remove default table spacing.
 */
table {
  border-collapse: collapse;
  border-spacing: 0;
}

/**
 * 1. Reset Chrome and Firefox behaviour which sets a `min-width: min-content;`
 *    on fieldsets.
 */
fieldset {
  min-width: 0;
  /* [1] */
  border: 0;
}

/* ==========================================================================
   #SHARED
   ========================================================================== */
/**
 * Shared declarations for certain elements.
 */
/**
 * Always declare margins in the same direction:
 * csswizardry.com/2012/06/single-direction-margin-declarations
 */
address,
h1, h2, h3, h4, h5, h6,
blockquote, p, pre,
dl, ol, ul,
figure,
hr,
table,
fieldset {
  margin-bottom: 24px;
}

/**
 * Consistent indentation for lists.
 */
dd, ol, ul {
  margin-left: 24px;
}

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

.slick-list {
  position: relative;
  overflow: hidden;
  display: block;
  margin: 0;
  padding: 0;
}

.slick-list:focus {
  outline: none;
}

.slick-list.dragging {
  cursor: pointer;
  cursor: hand;
}

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

.slick-track {
  position: relative;
  left: 0;
  top: 0;
  display: block;
  margin-left: auto;
  margin-right: auto;
}

.slick-track:before, .slick-track:after {
  content: "";
  display: table;
}

.slick-track:after {
  clear: both;
}

.slick-loading .slick-track {
  visibility: hidden;
}

.slick-slide {
  float: left;
  height: 100%;
  min-height: 1px;
  display: none;
}

[dir="rtl"] .slick-slide {
  float: right;
}

.slick-slide img {
  display: block;
}

.slick-slide.slick-loading img {
  display: none;
}

.slick-slide.dragging img {
  pointer-events: none;
}

.slick-initialized .slick-slide {
  display: block;
}

.slick-loading .slick-slide {
  visibility: hidden;
}

.slick-vertical .slick-slide {
  display: block;
  height: auto;
  border: 1px solid transparent;
}

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

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

h1 mark, h2 mark, h3 mark, h4 mark, h5 mark, h6 mark {
  color: #c8da2e !important;
  font-weight: 700;
  background-color: transparent;
}

h1 {
  font-size: 32px;
  font-size: 2rem;
  line-height: 1.25;
  margin: 0 0 20px;
}

@media (min-width: 48em) {
  h1 {
    font-size: 48px;
    font-size: 3rem;
    line-height: 1.25;
  }
}

h2, .h2 {
  font-size: 28px;
  font-size: 1.75rem;
  line-height: 1.25;
  margin: 0 0 20px;
}

@media (min-width: 48em) {
  h2, .h2 {
    font-size: 40px;
    font-size: 2.5rem;
    line-height: 1.25;
  }
}

h3 {
  font-size: 21px;
  font-size: 1.3125rem;
  line-height: 1.25;
  margin: 0 0 24px;
}

@media (min-width: 48em) {
  h3 {
    font-size: 32px;
    font-size: 2rem;
    line-height: 1.25;
  }
}

h4 {
  font-size: 18px;
  font-size: 1.125rem;
  line-height: 1.5;
  margin-bottom: 16px;
}

@media (min-width: 48em) {
  h4 {
    font-size: 24px;
    font-size: 1.5rem;
    line-height: 1.5;
  }
}

h5 {
  font-size: 12px;
  font-size: 0.75rem;
  line-height: 1.5;
  font-weight: 700;
  margin-bottom: 16px;
  text-transform: uppercase;
}

h6 {
  margin-bottom: 16px;
  font-size: 18px;
  font-size: 1.125rem;
  line-height: 1.5;
}

select,
textarea,
input {
  outline: none;
}

select,
textarea,
input[type="email"],
input[type="number"],
input[type="password"],
input[type="search"],
input[type="tel"],
input[type="date"],
input[type="text"] {
  display: block;
  width: 100%;
  padding: 8px 0;
  border: 0 solid #000000;
  border-radius: 0;
  background: transparent;
  border-bottom: 1px solid white;
  color: white;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  font-size: 16px;
  font-size: 1rem;
  line-height: 1.5;
}

select::-webkit-input-placeholder,
textarea::-webkit-input-placeholder,
input[type="email"]::-webkit-input-placeholder,
input[type="number"]::-webkit-input-placeholder,
input[type="password"]::-webkit-input-placeholder,
input[type="search"]::-webkit-input-placeholder,
input[type="tel"]::-webkit-input-placeholder,
input[type="date"]::-webkit-input-placeholder,
input[type="text"]::-webkit-input-placeholder {
  color: #333333;
}

select::-moz-placeholder,
textarea::-moz-placeholder,
input[type="email"]::-moz-placeholder,
input[type="number"]::-moz-placeholder,
input[type="password"]::-moz-placeholder,
input[type="search"]::-moz-placeholder,
input[type="tel"]::-moz-placeholder,
input[type="date"]::-moz-placeholder,
input[type="text"]::-moz-placeholder {
  color: #333333;
}

select::-ms-input-placeholder,
textarea::-ms-input-placeholder,
input[type="email"]::-ms-input-placeholder,
input[type="number"]::-ms-input-placeholder,
input[type="password"]::-ms-input-placeholder,
input[type="search"]::-ms-input-placeholder,
input[type="tel"]::-ms-input-placeholder,
input[type="date"]::-ms-input-placeholder,
input[type="text"]::-ms-input-placeholder {
  color: #333333;
}

select::-moz-placeholder,
textarea::-moz-placeholder,
input[type="email"]::-moz-placeholder,
input[type="number"]::-moz-placeholder,
input[type="password"]::-moz-placeholder,
input[type="search"]::-moz-placeholder,
input[type="tel"]::-moz-placeholder,
input[type="date"]::-moz-placeholder,
input[type="text"]::-moz-placeholder {
  color: #333333;
}

select::placeholder,
textarea::placeholder,
input[type="email"]::placeholder,
input[type="number"]::placeholder,
input[type="password"]::placeholder,
input[type="search"]::placeholder,
input[type="tel"]::placeholder,
input[type="date"]::placeholder,
input[type="text"]::placeholder {
  color: #333333;
}

textarea {
  height: 120px;
  resize: none;
}

select {
  padding: 8px 56px 8px 16px;
  background-image: -o-linear-gradient(45deg, transparent 50%, #000000 50%), -o-linear-gradient(315deg, #000000 50%, transparent 50%), -o-linear-gradient(left, #000000, #000000);
  background-image: linear-gradient(45deg, transparent 50%, #000000 50%), linear-gradient(135deg, #000000 50%, transparent 50%), linear-gradient(to right, #000000, #000000);
  background-position: calc(100% - 20px) calc(1em + 2px), calc(100% - 15px) calc(1em + 2px), calc(100% - 2.5em) 0.5em;
  background-repeat: no-repeat;
  background-size: 5px 5px, 5px 5px, 1px 1.5em;
  -webkit-box-shadow: none;
          box-shadow: none;
}

input[type="radio"] {
  opacity: 0;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}

input[type="radio"]:checked {
  background: #333333;
}

input[type="radio"] + span {
  display: inline-block;
  cursor: pointer;
}

input[type="radio"] + span:before {
  content: " ";
  display: inline-block;
  width: 13px;
  height: 13px;
  margin-right: 8px;
  border: 1px solid #333333;
  border-radius: 10px;
  vertical-align: middle;
}

input[type="radio"]:checked + span::before {
  background: #333333;
}

input[type="radio"]:focus + span {
  outline: 1px dotted #333333;
  outline-offset: 2px;
}

.wpcf7-response-output {
  margin: 10px 0;
  color: white !important;
}

input[type="checkbox"] {
  opacity: 0;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: -2 !important;
}

input[type="checkbox"]:checked {
  background: url("../img/checked-box.svg");
}

input[type="checkbox"] + span,
input[type="checkbox"] + label {
  display: inline;
  cursor: pointer;
  line-height: 1;
}

input[type="checkbox"] + span:before,
input[type="checkbox"] + label:before {
  content: " ";
  display: inline-block;
  width: 16px;
  height: 16px;
  margin-right: 10px;
  border: 1px solid #929391;
  border-radius: 0;
  vertical-align: -3px;
  background-color: color("white");
  -webkit-transition: 0.3s;
  -o-transition: 0.3s;
  transition: 0.3s;
}

input[type="checkbox"]:checked + span::before,
input[type="checkbox"]:checked + label::before {
  background: url("../img/checked-box.svg");
  background-size: cover;
}

.wpcf7-form-control-wrap {
  display: block;
  margin-bottom: 1px;
}

.wpcf7-not-valid .wpcf7-list-item-label {
  color: red;
}

.wpcf7-not-valid .wpcf7-list-item-label::before {
  border-color: red;
}

.wpcf7 .screen-reader-response {
  display: none !important;
}

.wpcf7-not-valid-tip, .wpcf7-validation-errors {
  color: red;
}

.wpcf7-not-valid-tip, .wpcf7-response-output {
  font-size: 13px;
  font-size: 0.8125rem;
  line-height: 1.5;
}

.ajax-loader {
  pointer-events: none;
  display: none;
  opacity: 0;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #000000;
}

.ajax-loader:after {
  content: " ";
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%) rotate(-45deg);
      -ms-transform: translate(-50%, -50%) rotate(-45deg);
          transform: translate(-50%, -50%) rotate(-45deg);
  display: block;
  width: 24px;
  height: 24px;
  background-image: url("../img/icon-submit-loader.png");
  background-size: contain;
  background-position: center center;
  background-repeat: no-repeat;
}

.ajax-loader.is-active {
  display: inline-block;
  opacity: 1;
}

.ajax-loader.is-active:after {
  -webkit-animation: spinLoader 1.5s infinite;
          animation: spinLoader 1.5s infinite;
}

@-webkit-keyframes spinLoader {
  0% {
    -webkit-transform: translate(-50%, -50%) rotate(0);
            transform: translate(-50%, -50%) rotate(0);
  }
  100% {
    -webkit-transform: translate(-50%, -50%) rotate(360deg);
            transform: translate(-50%, -50%) rotate(360deg);
  }
}

@keyframes spinLoader {
  0% {
    -webkit-transform: translate(-50%, -50%) rotate(0);
            transform: translate(-50%, -50%) rotate(0);
  }
  100% {
    -webkit-transform: translate(-50%, -50%) rotate(360deg);
            transform: translate(-50%, -50%) rotate(360deg);
  }
}

pre {
  display: block;
  width: 100%;
  padding: 24px;
  font-size: 14px;
  font-size: 0.875rem;
  line-height: 1;
  overflow: auto;
  font-family: "Courier New", Courier, monospace;
  color: white;
  text-align: left;
  text-transform: initial;
  background: black;
}

a {
  color: #000000;
  cursor: pointer;
  -webkit-transition: 0.25s;
  -o-transition: 0.25s;
  transition: 0.25s;
  text-decoration: none;
}

a:hover {
  text-decoration: underline;
  text-underline-offset: 3px;
  text-decoration-thickness: 1px;
}

.c-link {
  display: inline-block;
  font-size: 14px;
  font-weight: 600;
  -webkit-transition: 0.4s;
  -o-transition: 0.4s;
  transition: 0.4s;
}

.c-link svg {
  vertical-align: middle;
  margin-left: 8px;
  -webkit-transition: 0.4s;
  -o-transition: 0.4s;
  transition: 0.4s;
}

.c-link svg.c-svgicon--arrow {
  width: 14px;
  height: 12px;
}

.c-link:hover {
  text-decoration: none;
}

.c-link:hover svg {
  -webkit-transform: translateX(6px);
      -ms-transform: translateX(6px);
          transform: translateX(6px);
}

/* purgecss start ignore */
html {
  font-size: 16px;
  overflow-y: scroll;
  min-height: 100%;
}

body {
  min-height: 100%;
  font-family: "Red Hat Display", sans-serif;
  font-weight: normal;
  font-size: 16px;
  line-height: 1.6;
  color: #000000;
  -webkit-font-smoothing: antialiased;
  overflow-x: hidden;
}

.scroll-lock {
  height: 100%;
  max-height: 100vh;
  overflow: hidden;
}

.is-blured {
  pointer-events: none;
  -webkit-filter: blur(3px);
          filter: blur(3px);
}

.hide-scrollbar, body, .c-top {
  -ms-overflow-style: none;
  /* IE and Edge */
  scrollbar-width: none;
  /* Firefox */
}

.hide-scrollbar::-webkit-scrollbar, body::-webkit-scrollbar, .c-top::-webkit-scrollbar {
  display: none;
}

.hide-scrollbar::-moz-scrollbar, body::-moz-scrollbar, .c-top::-moz-scrollbar {
  display: none;
}

/* purgecss end ignore */
/* ==========================================================================
   #LAYOUT
   ========================================================================== */
/**
 * Grid-like layout system.
 *
 * The layout object provides us with a column-style layout system. This file
 * contains the basic structural elements, but classes should be complemented
 * with width utilities, for example:
 *
 *   <div class="o-layout">
 *     <div class="o-layout__item  u-1/2">
 *     </div>
 *     <div class="o-layout__item  u-1/2">
 *     </div>
 *   </div>
 *
 * The above will create a two-column structure in which each column will
 * fluidly fill half of the width of the parent. We can have more complex
 * systems:
 *
 *   <div class="o-layout">
 *     <div class="o-layout__item  u-1/1  u-1/3@medium">
 *     </div>
 *     <div class="o-layout__item  u-1/2  u-1/3@medium">
 *     </div>
 *     <div class="o-layout__item  u-1/2  u-1/3@medium">
 *     </div>
 *   </div>
 *
 * The above will create a system in which the first item will be 100% width
 * until we enter our medium breakpoint, when it will become 33.333% width. The
 * second and third items will be 50% of their parent, until they also become
 * 33.333% width at the medium breakpoint.
 *
 * We can also manipulate entire layout systems by adding a series of modifiers
 * to the `.o-layout` block. For example:
 *
 *   <div class="o-layout  o-layout--reverse">
 *
 * This will reverse the displayed order of the system so that it runs in the
 * opposite order to our source, effectively flipping the system over.
 *
 *   <div class="o-layout  o-layout--[right|center]">
 *
 * This will cause the system to fill up from either the centre or the right
 * hand side. Default behaviour is to fill up the layout system from the left.
 *
 * There are plenty more options available to us: explore them below.
 */
/* Default/mandatory classes
   ========================================================================== */
/**
 * 1. Allows us to use the layout object on any type of element.
 * 2. We need to defensively reset any box-model properties.
 * 3. Use the negative margin trick for multi-row grids:
 *    http://csswizardry.com/2011/08/building-better-grid-systems/
 */
.o-layout {
  display: block;
  /* [1] */
  margin: 0;
  /* [2] */
  padding: 0;
  /* [2] */
  list-style: none;
  /* [1] */
  margin-left: -24px;
  /* [3] */
  font-size: 0;
}

/**
   * 1. Required in order to combine fluid widths with fixed gutters.
   * 2. Allows us to manipulate grids vertically, with text-level properties,
   *    etc.
   * 3. Default item alignment is with the tops of each other, like most
   *    traditional grid/layout systems.
   * 4. By default, all layout items are full-width (mobile first).
   * 5. Gutters provided by left padding:
   *    http://csswizardry.com/2011/08/building-better-grid-systems/
   * 6. Fallback for old IEs not supporting `rem` values.
   */
.o-layout__item {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  /* [1] */
  display: inline-block;
  /* [2] */
  vertical-align: top;
  /* [3] */
  width: 100%;
  /* [4] */
  padding-left: 24px;
  /* [5] */
  font-size: 16px;
  /* [6] */
  font-size: 1rem;
}

/* Gutter size modifiers
   ========================================================================== */
.o-layout--flush {
  margin-left: 0;
}

.o-layout--flush > .o-layout__item {
  padding-left: 0;
}

.o-layout--tiny {
  margin-left: -6px;
}

.o-layout--tiny > .o-layout__item {
  padding-left: 6px;
}

.o-layout--small {
  margin-left: -12px;
}

.o-layout--small > .o-layout__item {
  padding-left: 12px;
}

.o-layout--large {
  margin-left: -48px;
}

.o-layout--large > .o-layout__item {
  padding-left: 48px;
}

.o-layout--huge {
  margin-left: -96px;
}

.o-layout--huge > .o-layout__item {
  padding-left: 96px;
}

/* Vertical alignment modifiers
   ========================================================================== */
/**
 * Align all grid items to the middles of each other.
 */
.o-layout--middle > .o-layout__item {
  vertical-align: middle;
}

/**
 * Align all grid items to the bottoms of each other.
 */
.o-layout--bottom > .o-layout__item {
  vertical-align: bottom;
}

/**
 * Stretch all grid items of each row to have an equal-height.
 * Please be aware that this modifier class doesn’t take any effect in IE9 and
 * below and other older browsers due to the lack of `display: flex` support.
 */
.o-layout--stretch {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

.o-layout--stretch > .o-layout__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.o-layout--stretch.o-layout--center {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.o-layout--stretch.o-layout--right {
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}

.o-layout--stretch.o-layout--left {
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
}

/* Fill order modifiers
   ========================================================================== */
/**
 * Fill up the layout system from the centre.
 */
.o-layout--center {
  text-align: center;
}

.o-layout--center > .o-layout__item {
  text-align: left;
}

/**
 * Fill up the layout system from the right-hand side.
 */
.o-layout--right {
  text-align: right;
}

.o-layout--right > .o-layout__item {
  text-align: left;
}

/**
 * Fill up the layout system from the left-hand side. This will likely only be
 * needed when using in conjunction with `.o-layout--reverse`.
 */
.o-layout--left {
  text-align: left;
}

.o-layout--left > .o-layout__item {
  text-align: left;
}

/**
 * Reverse the rendered order of the grid system.
 */
.o-layout--reverse {
  direction: rtl;
}

.o-layout--reverse > .o-layout__item {
  direction: ltr;
}

/* Auto-widths modifier
   ========================================================================== */
/**
 * Cause layout items to take up a non-explicit amount of width.
 */
.o-layout--auto > .o-layout__item {
  width: auto;
}

/* ==========================================================================
   #RATIO
   ========================================================================== */
/**
 * Create ratio-bound content blocks, to keep media (e.g. images, videos) in
 * their correct aspect ratios.
 *
 * http://alistapart.com/article/creating-intrinsic-ratios-for-video
 *
 * 1. Default is a 1:1 ratio (i.e. a perfect square).
 */
.o-ratio {
  position: relative;
  display: block;
}

.o-ratio:before {
  content: "";
  display: block;
  width: 100%;
  padding-bottom: 100%;
  /* [1] */
}

.o-ratio__content,
.o-ratio > iframe,
.o-ratio > embed,
.o-ratio > object {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  height: 100%;
  width: 100%;
}

/* Ratio variants.
   ========================================================================== */
/**
 * Generate a series of ratio classes to be used like so:
 *
 *   <div class="o-ratio  o-ratio--golden-ratio">
 *
 */
.o-ratio--2\:1:before {
  padding-bottom: 50%;
}

.o-ratio--4\:3:before {
  padding-bottom: 75%;
}

.o-ratio--16\:9:before {
  padding-bottom: 56.25%;
}

/* Contain modifier.
   ========================================================================== */
/**
 * Only works with image content.
 * Contains the image to the boundaries, without cropping or stretching it.
 */
.o-ratio--img-contain > .o-ratio__content:before {
  height: auto;
  margin: auto;
  max-height: 100%;
  max-width: 100%;
  width: auto;
}

.o-wrapper {
  max-width: 1344px;
  margin: 0 auto;
  padding: 0 24px;
}

.o-wrapper:after {
  content: "" !important;
  display: block !important;
  clear: both !important;
}

@media (min-width: 80em) {
  .o-wrapper {
    padding: 0 48px;
  }
}

.o-btn, input[type="button"],
input[type="submit"],
button {
  cursor: pointer;
  display: inline-block;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  -webkit-box-shadow: none;
          box-shadow: none;
  padding: 12px 24px;
  border: 1px solid #000000;
  background-color: transparent;
  border: 1px solid white;
  text-align: center;
  color: #ffffff;
  text-decoration: none;
  -webkit-transition: 0.4s;
  -o-transition: 0.4s;
  transition: 0.4s;
  font-size: 16px;
  font-weight: 500;
  font-size: 16px;
  font-size: 1rem;
  line-height: 1;
}

.o-btn:hover, input:hover[type="button"],
input:hover[type="submit"],
button:hover {
  text-decoration: none;
  color: #000000;
  background-color: #c8da2e;
  color: #242723;
}

@media (max-width: 29.99em) {
  .o-btn, input[type="button"],
  input[type="submit"],
  button {
    width: 100%;
  }
}

.o-btn--lime {
  border: 1px solid #c8da2e;
  background-color: #c8da2e;
  color: #242723 !important;
  font-weight: bold;
}

.o-btn--lime:hover {
  opacity: 0.8;
}

.o-layout > .o-layout__item {
  margin-bottom: 24px;
}

.o-layout--large {
  margin-left: -36px;
}

.o-layout--large > .o-layout__item {
  padding-left: 36px;
}

.o-layout--large2 {
  margin-left: -48px;
}

.o-layout--large2 > .o-layout__item {
  padding-left: 48px;
}

.o-layout--large3 {
  margin-left: -52px;
}

.o-layout--large3 > .o-layout__item {
  padding-left: 52px;
}

.o-layout--flush > .o-layout__item {
  margin-bottom: 0;
}

/* ==========================================================================
   #WIDTHS
   ========================================================================== */
/**
 * inuitcss generates a series of utility classes that give a fluid width to
 * whichever element they’re applied, e.g.:
 *
 *   <img src="" alt="" class="u-1/2" />
 *
 * These classes are most commonly used in conjunction with our layout system,
 * e.g.:
 *
 *   <div class="o-layout__item  u-1/2">
 *
 * By default, inuitcss will also generate responsive variants of each of these
 * classes by using your Sass MQ configuration, e.g.:
 *
 *   <div class="o-layout__item  u-1/1  u-1/2@tablet  u-1/3@desktop">
 *
 * Optionally, inuitcss can generate offset classes which can push and pull
 * elements left and right by a specified amount, e.g.:
 *
 *   <div class="o-layout__item  u-2/3  u-pull-1/3">
 *
 * This is useful for making very granular changes to the rendered order of
 * items in a layout.
 *
 * N.B. This option is turned off by default.
 */
/**
 * A series of width helper classes that you can use to size things like grid
 * systems. Classes take a fraction-like format (e.g. `.u-2/3`). Use these in
 * your markup:
 *
 * <div class="u-7/12">
 *
 * The following will generate widths helper classes based on the fractions
 * defined in the `$inuit-fractions` list.
 */
.u-1\/1 {
  width: 100% !important;
}

/**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
.u-push-1\/1 {
  position: relative !important;
  right: auto !important;
  /* [1] */
  left: 100% !important;
}

.u-pull-1\/1 {
  position: relative !important;
  right: 100% !important;
  left: auto !important;
  /* [1] */
}

.u-1\/2 {
  width: 50% !important;
}

/**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
.u-push-1\/2 {
  position: relative !important;
  right: auto !important;
  /* [1] */
  left: 50% !important;
}

.u-pull-1\/2 {
  position: relative !important;
  right: 50% !important;
  left: auto !important;
  /* [1] */
}

.u-2\/2 {
  width: 100% !important;
}

/**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
.u-push-2\/2 {
  position: relative !important;
  right: auto !important;
  /* [1] */
  left: 100% !important;
}

.u-pull-2\/2 {
  position: relative !important;
  right: 100% !important;
  left: auto !important;
  /* [1] */
}

.u-1\/3 {
  width: 33.33333% !important;
}

/**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
.u-push-1\/3 {
  position: relative !important;
  right: auto !important;
  /* [1] */
  left: 33.33333% !important;
}

.u-pull-1\/3 {
  position: relative !important;
  right: 33.33333% !important;
  left: auto !important;
  /* [1] */
}

.u-2\/3 {
  width: 66.66667% !important;
}

/**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
.u-push-2\/3 {
  position: relative !important;
  right: auto !important;
  /* [1] */
  left: 66.66667% !important;
}

.u-pull-2\/3 {
  position: relative !important;
  right: 66.66667% !important;
  left: auto !important;
  /* [1] */
}

.u-3\/3 {
  width: 100% !important;
}

/**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
.u-push-3\/3 {
  position: relative !important;
  right: auto !important;
  /* [1] */
  left: 100% !important;
}

.u-pull-3\/3 {
  position: relative !important;
  right: 100% !important;
  left: auto !important;
  /* [1] */
}

.u-1\/4 {
  width: 25% !important;
}

/**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
.u-push-1\/4 {
  position: relative !important;
  right: auto !important;
  /* [1] */
  left: 25% !important;
}

.u-pull-1\/4 {
  position: relative !important;
  right: 25% !important;
  left: auto !important;
  /* [1] */
}

.u-2\/4 {
  width: 50% !important;
}

/**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
.u-push-2\/4 {
  position: relative !important;
  right: auto !important;
  /* [1] */
  left: 50% !important;
}

.u-pull-2\/4 {
  position: relative !important;
  right: 50% !important;
  left: auto !important;
  /* [1] */
}

.u-3\/4 {
  width: 75% !important;
}

/**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
.u-push-3\/4 {
  position: relative !important;
  right: auto !important;
  /* [1] */
  left: 75% !important;
}

.u-pull-3\/4 {
  position: relative !important;
  right: 75% !important;
  left: auto !important;
  /* [1] */
}

.u-4\/4 {
  width: 100% !important;
}

/**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
.u-push-4\/4 {
  position: relative !important;
  right: auto !important;
  /* [1] */
  left: 100% !important;
}

.u-pull-4\/4 {
  position: relative !important;
  right: 100% !important;
  left: auto !important;
  /* [1] */
}

.u-1\/5 {
  width: 20% !important;
}

/**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
.u-push-1\/5 {
  position: relative !important;
  right: auto !important;
  /* [1] */
  left: 20% !important;
}

.u-pull-1\/5 {
  position: relative !important;
  right: 20% !important;
  left: auto !important;
  /* [1] */
}

.u-2\/5 {
  width: 40% !important;
}

/**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
.u-push-2\/5 {
  position: relative !important;
  right: auto !important;
  /* [1] */
  left: 40% !important;
}

.u-pull-2\/5 {
  position: relative !important;
  right: 40% !important;
  left: auto !important;
  /* [1] */
}

.u-3\/5 {
  width: 60% !important;
}

/**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
.u-push-3\/5 {
  position: relative !important;
  right: auto !important;
  /* [1] */
  left: 60% !important;
}

.u-pull-3\/5 {
  position: relative !important;
  right: 60% !important;
  left: auto !important;
  /* [1] */
}

.u-4\/5 {
  width: 80% !important;
}

/**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
.u-push-4\/5 {
  position: relative !important;
  right: auto !important;
  /* [1] */
  left: 80% !important;
}

.u-pull-4\/5 {
  position: relative !important;
  right: 80% !important;
  left: auto !important;
  /* [1] */
}

.u-5\/5 {
  width: 100% !important;
}

/**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
.u-push-5\/5 {
  position: relative !important;
  right: auto !important;
  /* [1] */
  left: 100% !important;
}

.u-pull-5\/5 {
  position: relative !important;
  right: 100% !important;
  left: auto !important;
  /* [1] */
}

.u-1\/6 {
  width: 16.66667% !important;
}

/**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
.u-push-1\/6 {
  position: relative !important;
  right: auto !important;
  /* [1] */
  left: 16.66667% !important;
}

.u-pull-1\/6 {
  position: relative !important;
  right: 16.66667% !important;
  left: auto !important;
  /* [1] */
}

.u-2\/6 {
  width: 33.33333% !important;
}

/**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
.u-push-2\/6 {
  position: relative !important;
  right: auto !important;
  /* [1] */
  left: 33.33333% !important;
}

.u-pull-2\/6 {
  position: relative !important;
  right: 33.33333% !important;
  left: auto !important;
  /* [1] */
}

.u-3\/6 {
  width: 50% !important;
}

/**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
.u-push-3\/6 {
  position: relative !important;
  right: auto !important;
  /* [1] */
  left: 50% !important;
}

.u-pull-3\/6 {
  position: relative !important;
  right: 50% !important;
  left: auto !important;
  /* [1] */
}

.u-4\/6 {
  width: 66.66667% !important;
}

/**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
.u-push-4\/6 {
  position: relative !important;
  right: auto !important;
  /* [1] */
  left: 66.66667% !important;
}

.u-pull-4\/6 {
  position: relative !important;
  right: 66.66667% !important;
  left: auto !important;
  /* [1] */
}

.u-5\/6 {
  width: 83.33333% !important;
}

/**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
.u-push-5\/6 {
  position: relative !important;
  right: auto !important;
  /* [1] */
  left: 83.33333% !important;
}

.u-pull-5\/6 {
  position: relative !important;
  right: 83.33333% !important;
  left: auto !important;
  /* [1] */
}

.u-6\/6 {
  width: 100% !important;
}

/**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
.u-push-6\/6 {
  position: relative !important;
  right: auto !important;
  /* [1] */
  left: 100% !important;
}

.u-pull-6\/6 {
  position: relative !important;
  right: 100% !important;
  left: auto !important;
  /* [1] */
}

.u-1\/7 {
  width: 14.28571% !important;
}

/**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
.u-push-1\/7 {
  position: relative !important;
  right: auto !important;
  /* [1] */
  left: 14.28571% !important;
}

.u-pull-1\/7 {
  position: relative !important;
  right: 14.28571% !important;
  left: auto !important;
  /* [1] */
}

.u-2\/7 {
  width: 28.57143% !important;
}

/**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
.u-push-2\/7 {
  position: relative !important;
  right: auto !important;
  /* [1] */
  left: 28.57143% !important;
}

.u-pull-2\/7 {
  position: relative !important;
  right: 28.57143% !important;
  left: auto !important;
  /* [1] */
}

.u-3\/7 {
  width: 42.85714% !important;
}

/**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
.u-push-3\/7 {
  position: relative !important;
  right: auto !important;
  /* [1] */
  left: 42.85714% !important;
}

.u-pull-3\/7 {
  position: relative !important;
  right: 42.85714% !important;
  left: auto !important;
  /* [1] */
}

.u-4\/7 {
  width: 57.14286% !important;
}

/**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
.u-push-4\/7 {
  position: relative !important;
  right: auto !important;
  /* [1] */
  left: 57.14286% !important;
}

.u-pull-4\/7 {
  position: relative !important;
  right: 57.14286% !important;
  left: auto !important;
  /* [1] */
}

.u-5\/7 {
  width: 71.42857% !important;
}

/**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
.u-push-5\/7 {
  position: relative !important;
  right: auto !important;
  /* [1] */
  left: 71.42857% !important;
}

.u-pull-5\/7 {
  position: relative !important;
  right: 71.42857% !important;
  left: auto !important;
  /* [1] */
}

.u-6\/7 {
  width: 85.71429% !important;
}

/**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
.u-push-6\/7 {
  position: relative !important;
  right: auto !important;
  /* [1] */
  left: 85.71429% !important;
}

.u-pull-6\/7 {
  position: relative !important;
  right: 85.71429% !important;
  left: auto !important;
  /* [1] */
}

.u-7\/7 {
  width: 100% !important;
}

/**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
.u-push-7\/7 {
  position: relative !important;
  right: auto !important;
  /* [1] */
  left: 100% !important;
}

.u-pull-7\/7 {
  position: relative !important;
  right: 100% !important;
  left: auto !important;
  /* [1] */
}

.u-1\/8 {
  width: 12.5% !important;
}

/**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
.u-push-1\/8 {
  position: relative !important;
  right: auto !important;
  /* [1] */
  left: 12.5% !important;
}

.u-pull-1\/8 {
  position: relative !important;
  right: 12.5% !important;
  left: auto !important;
  /* [1] */
}

.u-2\/8 {
  width: 25% !important;
}

/**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
.u-push-2\/8 {
  position: relative !important;
  right: auto !important;
  /* [1] */
  left: 25% !important;
}

.u-pull-2\/8 {
  position: relative !important;
  right: 25% !important;
  left: auto !important;
  /* [1] */
}

.u-3\/8 {
  width: 37.5% !important;
}

/**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
.u-push-3\/8 {
  position: relative !important;
  right: auto !important;
  /* [1] */
  left: 37.5% !important;
}

.u-pull-3\/8 {
  position: relative !important;
  right: 37.5% !important;
  left: auto !important;
  /* [1] */
}

.u-4\/8 {
  width: 50% !important;
}

/**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
.u-push-4\/8 {
  position: relative !important;
  right: auto !important;
  /* [1] */
  left: 50% !important;
}

.u-pull-4\/8 {
  position: relative !important;
  right: 50% !important;
  left: auto !important;
  /* [1] */
}

.u-5\/8 {
  width: 62.5% !important;
}

/**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
.u-push-5\/8 {
  position: relative !important;
  right: auto !important;
  /* [1] */
  left: 62.5% !important;
}

.u-pull-5\/8 {
  position: relative !important;
  right: 62.5% !important;
  left: auto !important;
  /* [1] */
}

.u-6\/8 {
  width: 75% !important;
}

/**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
.u-push-6\/8 {
  position: relative !important;
  right: auto !important;
  /* [1] */
  left: 75% !important;
}

.u-pull-6\/8 {
  position: relative !important;
  right: 75% !important;
  left: auto !important;
  /* [1] */
}

.u-7\/8 {
  width: 87.5% !important;
}

/**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
.u-push-7\/8 {
  position: relative !important;
  right: auto !important;
  /* [1] */
  left: 87.5% !important;
}

.u-pull-7\/8 {
  position: relative !important;
  right: 87.5% !important;
  left: auto !important;
  /* [1] */
}

.u-8\/8 {
  width: 100% !important;
}

/**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
.u-push-8\/8 {
  position: relative !important;
  right: auto !important;
  /* [1] */
  left: 100% !important;
}

.u-pull-8\/8 {
  position: relative !important;
  right: 100% !important;
  left: auto !important;
  /* [1] */
}

/**
 * If we’re using Sass-MQ, automatically generate grid system(s) for each of our
 * defined breakpoints, and give them a Responsive Suffix, e.g.:
 *
 * <div class="u-3/12@mobile">
 */
@media (min-width: 23.4375em) {
  .u-1\/1\@mobile {
    width: 100% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-1\/1\@mobile {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 100% !important;
  }
  .u-pull-1\/1\@mobile {
    position: relative !important;
    right: 100% !important;
    left: auto !important;
    /* [1] */
  }
  .u-1\/2\@mobile {
    width: 50% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-1\/2\@mobile {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 50% !important;
  }
  .u-pull-1\/2\@mobile {
    position: relative !important;
    right: 50% !important;
    left: auto !important;
    /* [1] */
  }
  .u-2\/2\@mobile {
    width: 100% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-2\/2\@mobile {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 100% !important;
  }
  .u-pull-2\/2\@mobile {
    position: relative !important;
    right: 100% !important;
    left: auto !important;
    /* [1] */
  }
  .u-1\/3\@mobile {
    width: 33.33333% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-1\/3\@mobile {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 33.33333% !important;
  }
  .u-pull-1\/3\@mobile {
    position: relative !important;
    right: 33.33333% !important;
    left: auto !important;
    /* [1] */
  }
  .u-2\/3\@mobile {
    width: 66.66667% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-2\/3\@mobile {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 66.66667% !important;
  }
  .u-pull-2\/3\@mobile {
    position: relative !important;
    right: 66.66667% !important;
    left: auto !important;
    /* [1] */
  }
  .u-3\/3\@mobile {
    width: 100% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-3\/3\@mobile {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 100% !important;
  }
  .u-pull-3\/3\@mobile {
    position: relative !important;
    right: 100% !important;
    left: auto !important;
    /* [1] */
  }
  .u-1\/4\@mobile {
    width: 25% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-1\/4\@mobile {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 25% !important;
  }
  .u-pull-1\/4\@mobile {
    position: relative !important;
    right: 25% !important;
    left: auto !important;
    /* [1] */
  }
  .u-2\/4\@mobile {
    width: 50% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-2\/4\@mobile {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 50% !important;
  }
  .u-pull-2\/4\@mobile {
    position: relative !important;
    right: 50% !important;
    left: auto !important;
    /* [1] */
  }
  .u-3\/4\@mobile {
    width: 75% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-3\/4\@mobile {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 75% !important;
  }
  .u-pull-3\/4\@mobile {
    position: relative !important;
    right: 75% !important;
    left: auto !important;
    /* [1] */
  }
  .u-4\/4\@mobile {
    width: 100% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-4\/4\@mobile {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 100% !important;
  }
  .u-pull-4\/4\@mobile {
    position: relative !important;
    right: 100% !important;
    left: auto !important;
    /* [1] */
  }
  .u-1\/5\@mobile {
    width: 20% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-1\/5\@mobile {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 20% !important;
  }
  .u-pull-1\/5\@mobile {
    position: relative !important;
    right: 20% !important;
    left: auto !important;
    /* [1] */
  }
  .u-2\/5\@mobile {
    width: 40% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-2\/5\@mobile {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 40% !important;
  }
  .u-pull-2\/5\@mobile {
    position: relative !important;
    right: 40% !important;
    left: auto !important;
    /* [1] */
  }
  .u-3\/5\@mobile {
    width: 60% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-3\/5\@mobile {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 60% !important;
  }
  .u-pull-3\/5\@mobile {
    position: relative !important;
    right: 60% !important;
    left: auto !important;
    /* [1] */
  }
  .u-4\/5\@mobile {
    width: 80% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-4\/5\@mobile {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 80% !important;
  }
  .u-pull-4\/5\@mobile {
    position: relative !important;
    right: 80% !important;
    left: auto !important;
    /* [1] */
  }
  .u-5\/5\@mobile {
    width: 100% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-5\/5\@mobile {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 100% !important;
  }
  .u-pull-5\/5\@mobile {
    position: relative !important;
    right: 100% !important;
    left: auto !important;
    /* [1] */
  }
  .u-1\/6\@mobile {
    width: 16.66667% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-1\/6\@mobile {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 16.66667% !important;
  }
  .u-pull-1\/6\@mobile {
    position: relative !important;
    right: 16.66667% !important;
    left: auto !important;
    /* [1] */
  }
  .u-2\/6\@mobile {
    width: 33.33333% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-2\/6\@mobile {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 33.33333% !important;
  }
  .u-pull-2\/6\@mobile {
    position: relative !important;
    right: 33.33333% !important;
    left: auto !important;
    /* [1] */
  }
  .u-3\/6\@mobile {
    width: 50% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-3\/6\@mobile {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 50% !important;
  }
  .u-pull-3\/6\@mobile {
    position: relative !important;
    right: 50% !important;
    left: auto !important;
    /* [1] */
  }
  .u-4\/6\@mobile {
    width: 66.66667% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-4\/6\@mobile {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 66.66667% !important;
  }
  .u-pull-4\/6\@mobile {
    position: relative !important;
    right: 66.66667% !important;
    left: auto !important;
    /* [1] */
  }
  .u-5\/6\@mobile {
    width: 83.33333% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-5\/6\@mobile {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 83.33333% !important;
  }
  .u-pull-5\/6\@mobile {
    position: relative !important;
    right: 83.33333% !important;
    left: auto !important;
    /* [1] */
  }
  .u-6\/6\@mobile {
    width: 100% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-6\/6\@mobile {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 100% !important;
  }
  .u-pull-6\/6\@mobile {
    position: relative !important;
    right: 100% !important;
    left: auto !important;
    /* [1] */
  }
  .u-1\/7\@mobile {
    width: 14.28571% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-1\/7\@mobile {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 14.28571% !important;
  }
  .u-pull-1\/7\@mobile {
    position: relative !important;
    right: 14.28571% !important;
    left: auto !important;
    /* [1] */
  }
  .u-2\/7\@mobile {
    width: 28.57143% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-2\/7\@mobile {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 28.57143% !important;
  }
  .u-pull-2\/7\@mobile {
    position: relative !important;
    right: 28.57143% !important;
    left: auto !important;
    /* [1] */
  }
  .u-3\/7\@mobile {
    width: 42.85714% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-3\/7\@mobile {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 42.85714% !important;
  }
  .u-pull-3\/7\@mobile {
    position: relative !important;
    right: 42.85714% !important;
    left: auto !important;
    /* [1] */
  }
  .u-4\/7\@mobile {
    width: 57.14286% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-4\/7\@mobile {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 57.14286% !important;
  }
  .u-pull-4\/7\@mobile {
    position: relative !important;
    right: 57.14286% !important;
    left: auto !important;
    /* [1] */
  }
  .u-5\/7\@mobile {
    width: 71.42857% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-5\/7\@mobile {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 71.42857% !important;
  }
  .u-pull-5\/7\@mobile {
    position: relative !important;
    right: 71.42857% !important;
    left: auto !important;
    /* [1] */
  }
  .u-6\/7\@mobile {
    width: 85.71429% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-6\/7\@mobile {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 85.71429% !important;
  }
  .u-pull-6\/7\@mobile {
    position: relative !important;
    right: 85.71429% !important;
    left: auto !important;
    /* [1] */
  }
  .u-7\/7\@mobile {
    width: 100% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-7\/7\@mobile {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 100% !important;
  }
  .u-pull-7\/7\@mobile {
    position: relative !important;
    right: 100% !important;
    left: auto !important;
    /* [1] */
  }
  .u-1\/8\@mobile {
    width: 12.5% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-1\/8\@mobile {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 12.5% !important;
  }
  .u-pull-1\/8\@mobile {
    position: relative !important;
    right: 12.5% !important;
    left: auto !important;
    /* [1] */
  }
  .u-2\/8\@mobile {
    width: 25% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-2\/8\@mobile {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 25% !important;
  }
  .u-pull-2\/8\@mobile {
    position: relative !important;
    right: 25% !important;
    left: auto !important;
    /* [1] */
  }
  .u-3\/8\@mobile {
    width: 37.5% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-3\/8\@mobile {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 37.5% !important;
  }
  .u-pull-3\/8\@mobile {
    position: relative !important;
    right: 37.5% !important;
    left: auto !important;
    /* [1] */
  }
  .u-4\/8\@mobile {
    width: 50% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-4\/8\@mobile {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 50% !important;
  }
  .u-pull-4\/8\@mobile {
    position: relative !important;
    right: 50% !important;
    left: auto !important;
    /* [1] */
  }
  .u-5\/8\@mobile {
    width: 62.5% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-5\/8\@mobile {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 62.5% !important;
  }
  .u-pull-5\/8\@mobile {
    position: relative !important;
    right: 62.5% !important;
    left: auto !important;
    /* [1] */
  }
  .u-6\/8\@mobile {
    width: 75% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-6\/8\@mobile {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 75% !important;
  }
  .u-pull-6\/8\@mobile {
    position: relative !important;
    right: 75% !important;
    left: auto !important;
    /* [1] */
  }
  .u-7\/8\@mobile {
    width: 87.5% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-7\/8\@mobile {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 87.5% !important;
  }
  .u-pull-7\/8\@mobile {
    position: relative !important;
    right: 87.5% !important;
    left: auto !important;
    /* [1] */
  }
  .u-8\/8\@mobile {
    width: 100% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-8\/8\@mobile {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 100% !important;
  }
  .u-pull-8\/8\@mobile {
    position: relative !important;
    right: 100% !important;
    left: auto !important;
    /* [1] */
  }
  .u-push-none\@mobile {
    left: auto !important;
  }
  .u-pull-none\@mobile {
    right: auto !important;
  }
}

@media (min-width: 30em) {
  .u-1\/1\@mobileLarge {
    width: 100% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-1\/1\@mobileLarge {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 100% !important;
  }
  .u-pull-1\/1\@mobileLarge {
    position: relative !important;
    right: 100% !important;
    left: auto !important;
    /* [1] */
  }
  .u-1\/2\@mobileLarge {
    width: 50% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-1\/2\@mobileLarge {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 50% !important;
  }
  .u-pull-1\/2\@mobileLarge {
    position: relative !important;
    right: 50% !important;
    left: auto !important;
    /* [1] */
  }
  .u-2\/2\@mobileLarge {
    width: 100% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-2\/2\@mobileLarge {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 100% !important;
  }
  .u-pull-2\/2\@mobileLarge {
    position: relative !important;
    right: 100% !important;
    left: auto !important;
    /* [1] */
  }
  .u-1\/3\@mobileLarge {
    width: 33.33333% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-1\/3\@mobileLarge {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 33.33333% !important;
  }
  .u-pull-1\/3\@mobileLarge {
    position: relative !important;
    right: 33.33333% !important;
    left: auto !important;
    /* [1] */
  }
  .u-2\/3\@mobileLarge {
    width: 66.66667% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-2\/3\@mobileLarge {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 66.66667% !important;
  }
  .u-pull-2\/3\@mobileLarge {
    position: relative !important;
    right: 66.66667% !important;
    left: auto !important;
    /* [1] */
  }
  .u-3\/3\@mobileLarge {
    width: 100% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-3\/3\@mobileLarge {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 100% !important;
  }
  .u-pull-3\/3\@mobileLarge {
    position: relative !important;
    right: 100% !important;
    left: auto !important;
    /* [1] */
  }
  .u-1\/4\@mobileLarge {
    width: 25% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-1\/4\@mobileLarge {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 25% !important;
  }
  .u-pull-1\/4\@mobileLarge {
    position: relative !important;
    right: 25% !important;
    left: auto !important;
    /* [1] */
  }
  .u-2\/4\@mobileLarge {
    width: 50% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-2\/4\@mobileLarge {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 50% !important;
  }
  .u-pull-2\/4\@mobileLarge {
    position: relative !important;
    right: 50% !important;
    left: auto !important;
    /* [1] */
  }
  .u-3\/4\@mobileLarge {
    width: 75% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-3\/4\@mobileLarge {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 75% !important;
  }
  .u-pull-3\/4\@mobileLarge {
    position: relative !important;
    right: 75% !important;
    left: auto !important;
    /* [1] */
  }
  .u-4\/4\@mobileLarge {
    width: 100% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-4\/4\@mobileLarge {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 100% !important;
  }
  .u-pull-4\/4\@mobileLarge {
    position: relative !important;
    right: 100% !important;
    left: auto !important;
    /* [1] */
  }
  .u-1\/5\@mobileLarge {
    width: 20% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-1\/5\@mobileLarge {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 20% !important;
  }
  .u-pull-1\/5\@mobileLarge {
    position: relative !important;
    right: 20% !important;
    left: auto !important;
    /* [1] */
  }
  .u-2\/5\@mobileLarge {
    width: 40% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-2\/5\@mobileLarge {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 40% !important;
  }
  .u-pull-2\/5\@mobileLarge {
    position: relative !important;
    right: 40% !important;
    left: auto !important;
    /* [1] */
  }
  .u-3\/5\@mobileLarge {
    width: 60% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-3\/5\@mobileLarge {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 60% !important;
  }
  .u-pull-3\/5\@mobileLarge {
    position: relative !important;
    right: 60% !important;
    left: auto !important;
    /* [1] */
  }
  .u-4\/5\@mobileLarge {
    width: 80% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-4\/5\@mobileLarge {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 80% !important;
  }
  .u-pull-4\/5\@mobileLarge {
    position: relative !important;
    right: 80% !important;
    left: auto !important;
    /* [1] */
  }
  .u-5\/5\@mobileLarge {
    width: 100% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-5\/5\@mobileLarge {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 100% !important;
  }
  .u-pull-5\/5\@mobileLarge {
    position: relative !important;
    right: 100% !important;
    left: auto !important;
    /* [1] */
  }
  .u-1\/6\@mobileLarge {
    width: 16.66667% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-1\/6\@mobileLarge {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 16.66667% !important;
  }
  .u-pull-1\/6\@mobileLarge {
    position: relative !important;
    right: 16.66667% !important;
    left: auto !important;
    /* [1] */
  }
  .u-2\/6\@mobileLarge {
    width: 33.33333% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-2\/6\@mobileLarge {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 33.33333% !important;
  }
  .u-pull-2\/6\@mobileLarge {
    position: relative !important;
    right: 33.33333% !important;
    left: auto !important;
    /* [1] */
  }
  .u-3\/6\@mobileLarge {
    width: 50% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-3\/6\@mobileLarge {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 50% !important;
  }
  .u-pull-3\/6\@mobileLarge {
    position: relative !important;
    right: 50% !important;
    left: auto !important;
    /* [1] */
  }
  .u-4\/6\@mobileLarge {
    width: 66.66667% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-4\/6\@mobileLarge {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 66.66667% !important;
  }
  .u-pull-4\/6\@mobileLarge {
    position: relative !important;
    right: 66.66667% !important;
    left: auto !important;
    /* [1] */
  }
  .u-5\/6\@mobileLarge {
    width: 83.33333% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-5\/6\@mobileLarge {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 83.33333% !important;
  }
  .u-pull-5\/6\@mobileLarge {
    position: relative !important;
    right: 83.33333% !important;
    left: auto !important;
    /* [1] */
  }
  .u-6\/6\@mobileLarge {
    width: 100% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-6\/6\@mobileLarge {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 100% !important;
  }
  .u-pull-6\/6\@mobileLarge {
    position: relative !important;
    right: 100% !important;
    left: auto !important;
    /* [1] */
  }
  .u-1\/7\@mobileLarge {
    width: 14.28571% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-1\/7\@mobileLarge {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 14.28571% !important;
  }
  .u-pull-1\/7\@mobileLarge {
    position: relative !important;
    right: 14.28571% !important;
    left: auto !important;
    /* [1] */
  }
  .u-2\/7\@mobileLarge {
    width: 28.57143% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-2\/7\@mobileLarge {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 28.57143% !important;
  }
  .u-pull-2\/7\@mobileLarge {
    position: relative !important;
    right: 28.57143% !important;
    left: auto !important;
    /* [1] */
  }
  .u-3\/7\@mobileLarge {
    width: 42.85714% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-3\/7\@mobileLarge {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 42.85714% !important;
  }
  .u-pull-3\/7\@mobileLarge {
    position: relative !important;
    right: 42.85714% !important;
    left: auto !important;
    /* [1] */
  }
  .u-4\/7\@mobileLarge {
    width: 57.14286% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-4\/7\@mobileLarge {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 57.14286% !important;
  }
  .u-pull-4\/7\@mobileLarge {
    position: relative !important;
    right: 57.14286% !important;
    left: auto !important;
    /* [1] */
  }
  .u-5\/7\@mobileLarge {
    width: 71.42857% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-5\/7\@mobileLarge {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 71.42857% !important;
  }
  .u-pull-5\/7\@mobileLarge {
    position: relative !important;
    right: 71.42857% !important;
    left: auto !important;
    /* [1] */
  }
  .u-6\/7\@mobileLarge {
    width: 85.71429% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-6\/7\@mobileLarge {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 85.71429% !important;
  }
  .u-pull-6\/7\@mobileLarge {
    position: relative !important;
    right: 85.71429% !important;
    left: auto !important;
    /* [1] */
  }
  .u-7\/7\@mobileLarge {
    width: 100% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-7\/7\@mobileLarge {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 100% !important;
  }
  .u-pull-7\/7\@mobileLarge {
    position: relative !important;
    right: 100% !important;
    left: auto !important;
    /* [1] */
  }
  .u-1\/8\@mobileLarge {
    width: 12.5% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-1\/8\@mobileLarge {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 12.5% !important;
  }
  .u-pull-1\/8\@mobileLarge {
    position: relative !important;
    right: 12.5% !important;
    left: auto !important;
    /* [1] */
  }
  .u-2\/8\@mobileLarge {
    width: 25% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-2\/8\@mobileLarge {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 25% !important;
  }
  .u-pull-2\/8\@mobileLarge {
    position: relative !important;
    right: 25% !important;
    left: auto !important;
    /* [1] */
  }
  .u-3\/8\@mobileLarge {
    width: 37.5% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-3\/8\@mobileLarge {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 37.5% !important;
  }
  .u-pull-3\/8\@mobileLarge {
    position: relative !important;
    right: 37.5% !important;
    left: auto !important;
    /* [1] */
  }
  .u-4\/8\@mobileLarge {
    width: 50% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-4\/8\@mobileLarge {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 50% !important;
  }
  .u-pull-4\/8\@mobileLarge {
    position: relative !important;
    right: 50% !important;
    left: auto !important;
    /* [1] */
  }
  .u-5\/8\@mobileLarge {
    width: 62.5% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-5\/8\@mobileLarge {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 62.5% !important;
  }
  .u-pull-5\/8\@mobileLarge {
    position: relative !important;
    right: 62.5% !important;
    left: auto !important;
    /* [1] */
  }
  .u-6\/8\@mobileLarge {
    width: 75% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-6\/8\@mobileLarge {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 75% !important;
  }
  .u-pull-6\/8\@mobileLarge {
    position: relative !important;
    right: 75% !important;
    left: auto !important;
    /* [1] */
  }
  .u-7\/8\@mobileLarge {
    width: 87.5% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-7\/8\@mobileLarge {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 87.5% !important;
  }
  .u-pull-7\/8\@mobileLarge {
    position: relative !important;
    right: 87.5% !important;
    left: auto !important;
    /* [1] */
  }
  .u-8\/8\@mobileLarge {
    width: 100% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-8\/8\@mobileLarge {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 100% !important;
  }
  .u-pull-8\/8\@mobileLarge {
    position: relative !important;
    right: 100% !important;
    left: auto !important;
    /* [1] */
  }
  .u-push-none\@mobileLarge {
    left: auto !important;
  }
  .u-pull-none\@mobileLarge {
    right: auto !important;
  }
}

@media (min-width: 37.5em) {
  .u-1\/1\@mobileLandscape {
    width: 100% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-1\/1\@mobileLandscape {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 100% !important;
  }
  .u-pull-1\/1\@mobileLandscape {
    position: relative !important;
    right: 100% !important;
    left: auto !important;
    /* [1] */
  }
  .u-1\/2\@mobileLandscape {
    width: 50% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-1\/2\@mobileLandscape {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 50% !important;
  }
  .u-pull-1\/2\@mobileLandscape {
    position: relative !important;
    right: 50% !important;
    left: auto !important;
    /* [1] */
  }
  .u-2\/2\@mobileLandscape {
    width: 100% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-2\/2\@mobileLandscape {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 100% !important;
  }
  .u-pull-2\/2\@mobileLandscape {
    position: relative !important;
    right: 100% !important;
    left: auto !important;
    /* [1] */
  }
  .u-1\/3\@mobileLandscape {
    width: 33.33333% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-1\/3\@mobileLandscape {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 33.33333% !important;
  }
  .u-pull-1\/3\@mobileLandscape {
    position: relative !important;
    right: 33.33333% !important;
    left: auto !important;
    /* [1] */
  }
  .u-2\/3\@mobileLandscape {
    width: 66.66667% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-2\/3\@mobileLandscape {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 66.66667% !important;
  }
  .u-pull-2\/3\@mobileLandscape {
    position: relative !important;
    right: 66.66667% !important;
    left: auto !important;
    /* [1] */
  }
  .u-3\/3\@mobileLandscape {
    width: 100% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-3\/3\@mobileLandscape {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 100% !important;
  }
  .u-pull-3\/3\@mobileLandscape {
    position: relative !important;
    right: 100% !important;
    left: auto !important;
    /* [1] */
  }
  .u-1\/4\@mobileLandscape {
    width: 25% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-1\/4\@mobileLandscape {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 25% !important;
  }
  .u-pull-1\/4\@mobileLandscape {
    position: relative !important;
    right: 25% !important;
    left: auto !important;
    /* [1] */
  }
  .u-2\/4\@mobileLandscape {
    width: 50% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-2\/4\@mobileLandscape {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 50% !important;
  }
  .u-pull-2\/4\@mobileLandscape {
    position: relative !important;
    right: 50% !important;
    left: auto !important;
    /* [1] */
  }
  .u-3\/4\@mobileLandscape {
    width: 75% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-3\/4\@mobileLandscape {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 75% !important;
  }
  .u-pull-3\/4\@mobileLandscape {
    position: relative !important;
    right: 75% !important;
    left: auto !important;
    /* [1] */
  }
  .u-4\/4\@mobileLandscape {
    width: 100% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-4\/4\@mobileLandscape {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 100% !important;
  }
  .u-pull-4\/4\@mobileLandscape {
    position: relative !important;
    right: 100% !important;
    left: auto !important;
    /* [1] */
  }
  .u-1\/5\@mobileLandscape {
    width: 20% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-1\/5\@mobileLandscape {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 20% !important;
  }
  .u-pull-1\/5\@mobileLandscape {
    position: relative !important;
    right: 20% !important;
    left: auto !important;
    /* [1] */
  }
  .u-2\/5\@mobileLandscape {
    width: 40% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-2\/5\@mobileLandscape {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 40% !important;
  }
  .u-pull-2\/5\@mobileLandscape {
    position: relative !important;
    right: 40% !important;
    left: auto !important;
    /* [1] */
  }
  .u-3\/5\@mobileLandscape {
    width: 60% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-3\/5\@mobileLandscape {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 60% !important;
  }
  .u-pull-3\/5\@mobileLandscape {
    position: relative !important;
    right: 60% !important;
    left: auto !important;
    /* [1] */
  }
  .u-4\/5\@mobileLandscape {
    width: 80% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-4\/5\@mobileLandscape {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 80% !important;
  }
  .u-pull-4\/5\@mobileLandscape {
    position: relative !important;
    right: 80% !important;
    left: auto !important;
    /* [1] */
  }
  .u-5\/5\@mobileLandscape {
    width: 100% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-5\/5\@mobileLandscape {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 100% !important;
  }
  .u-pull-5\/5\@mobileLandscape {
    position: relative !important;
    right: 100% !important;
    left: auto !important;
    /* [1] */
  }
  .u-1\/6\@mobileLandscape {
    width: 16.66667% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-1\/6\@mobileLandscape {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 16.66667% !important;
  }
  .u-pull-1\/6\@mobileLandscape {
    position: relative !important;
    right: 16.66667% !important;
    left: auto !important;
    /* [1] */
  }
  .u-2\/6\@mobileLandscape {
    width: 33.33333% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-2\/6\@mobileLandscape {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 33.33333% !important;
  }
  .u-pull-2\/6\@mobileLandscape {
    position: relative !important;
    right: 33.33333% !important;
    left: auto !important;
    /* [1] */
  }
  .u-3\/6\@mobileLandscape {
    width: 50% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-3\/6\@mobileLandscape {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 50% !important;
  }
  .u-pull-3\/6\@mobileLandscape {
    position: relative !important;
    right: 50% !important;
    left: auto !important;
    /* [1] */
  }
  .u-4\/6\@mobileLandscape {
    width: 66.66667% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-4\/6\@mobileLandscape {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 66.66667% !important;
  }
  .u-pull-4\/6\@mobileLandscape {
    position: relative !important;
    right: 66.66667% !important;
    left: auto !important;
    /* [1] */
  }
  .u-5\/6\@mobileLandscape {
    width: 83.33333% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-5\/6\@mobileLandscape {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 83.33333% !important;
  }
  .u-pull-5\/6\@mobileLandscape {
    position: relative !important;
    right: 83.33333% !important;
    left: auto !important;
    /* [1] */
  }
  .u-6\/6\@mobileLandscape {
    width: 100% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-6\/6\@mobileLandscape {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 100% !important;
  }
  .u-pull-6\/6\@mobileLandscape {
    position: relative !important;
    right: 100% !important;
    left: auto !important;
    /* [1] */
  }
  .u-1\/7\@mobileLandscape {
    width: 14.28571% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-1\/7\@mobileLandscape {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 14.28571% !important;
  }
  .u-pull-1\/7\@mobileLandscape {
    position: relative !important;
    right: 14.28571% !important;
    left: auto !important;
    /* [1] */
  }
  .u-2\/7\@mobileLandscape {
    width: 28.57143% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-2\/7\@mobileLandscape {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 28.57143% !important;
  }
  .u-pull-2\/7\@mobileLandscape {
    position: relative !important;
    right: 28.57143% !important;
    left: auto !important;
    /* [1] */
  }
  .u-3\/7\@mobileLandscape {
    width: 42.85714% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-3\/7\@mobileLandscape {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 42.85714% !important;
  }
  .u-pull-3\/7\@mobileLandscape {
    position: relative !important;
    right: 42.85714% !important;
    left: auto !important;
    /* [1] */
  }
  .u-4\/7\@mobileLandscape {
    width: 57.14286% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-4\/7\@mobileLandscape {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 57.14286% !important;
  }
  .u-pull-4\/7\@mobileLandscape {
    position: relative !important;
    right: 57.14286% !important;
    left: auto !important;
    /* [1] */
  }
  .u-5\/7\@mobileLandscape {
    width: 71.42857% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-5\/7\@mobileLandscape {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 71.42857% !important;
  }
  .u-pull-5\/7\@mobileLandscape {
    position: relative !important;
    right: 71.42857% !important;
    left: auto !important;
    /* [1] */
  }
  .u-6\/7\@mobileLandscape {
    width: 85.71429% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-6\/7\@mobileLandscape {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 85.71429% !important;
  }
  .u-pull-6\/7\@mobileLandscape {
    position: relative !important;
    right: 85.71429% !important;
    left: auto !important;
    /* [1] */
  }
  .u-7\/7\@mobileLandscape {
    width: 100% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-7\/7\@mobileLandscape {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 100% !important;
  }
  .u-pull-7\/7\@mobileLandscape {
    position: relative !important;
    right: 100% !important;
    left: auto !important;
    /* [1] */
  }
  .u-1\/8\@mobileLandscape {
    width: 12.5% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-1\/8\@mobileLandscape {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 12.5% !important;
  }
  .u-pull-1\/8\@mobileLandscape {
    position: relative !important;
    right: 12.5% !important;
    left: auto !important;
    /* [1] */
  }
  .u-2\/8\@mobileLandscape {
    width: 25% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-2\/8\@mobileLandscape {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 25% !important;
  }
  .u-pull-2\/8\@mobileLandscape {
    position: relative !important;
    right: 25% !important;
    left: auto !important;
    /* [1] */
  }
  .u-3\/8\@mobileLandscape {
    width: 37.5% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-3\/8\@mobileLandscape {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 37.5% !important;
  }
  .u-pull-3\/8\@mobileLandscape {
    position: relative !important;
    right: 37.5% !important;
    left: auto !important;
    /* [1] */
  }
  .u-4\/8\@mobileLandscape {
    width: 50% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-4\/8\@mobileLandscape {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 50% !important;
  }
  .u-pull-4\/8\@mobileLandscape {
    position: relative !important;
    right: 50% !important;
    left: auto !important;
    /* [1] */
  }
  .u-5\/8\@mobileLandscape {
    width: 62.5% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-5\/8\@mobileLandscape {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 62.5% !important;
  }
  .u-pull-5\/8\@mobileLandscape {
    position: relative !important;
    right: 62.5% !important;
    left: auto !important;
    /* [1] */
  }
  .u-6\/8\@mobileLandscape {
    width: 75% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-6\/8\@mobileLandscape {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 75% !important;
  }
  .u-pull-6\/8\@mobileLandscape {
    position: relative !important;
    right: 75% !important;
    left: auto !important;
    /* [1] */
  }
  .u-7\/8\@mobileLandscape {
    width: 87.5% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-7\/8\@mobileLandscape {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 87.5% !important;
  }
  .u-pull-7\/8\@mobileLandscape {
    position: relative !important;
    right: 87.5% !important;
    left: auto !important;
    /* [1] */
  }
  .u-8\/8\@mobileLandscape {
    width: 100% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-8\/8\@mobileLandscape {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 100% !important;
  }
  .u-pull-8\/8\@mobileLandscape {
    position: relative !important;
    right: 100% !important;
    left: auto !important;
    /* [1] */
  }
  .u-push-none\@mobileLandscape {
    left: auto !important;
  }
  .u-pull-none\@mobileLandscape {
    right: auto !important;
  }
}

@media (min-width: 48em) {
  .u-1\/1\@tablet {
    width: 100% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-1\/1\@tablet {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 100% !important;
  }
  .u-pull-1\/1\@tablet {
    position: relative !important;
    right: 100% !important;
    left: auto !important;
    /* [1] */
  }
  .u-1\/2\@tablet {
    width: 50% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-1\/2\@tablet {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 50% !important;
  }
  .u-pull-1\/2\@tablet {
    position: relative !important;
    right: 50% !important;
    left: auto !important;
    /* [1] */
  }
  .u-2\/2\@tablet {
    width: 100% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-2\/2\@tablet {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 100% !important;
  }
  .u-pull-2\/2\@tablet {
    position: relative !important;
    right: 100% !important;
    left: auto !important;
    /* [1] */
  }
  .u-1\/3\@tablet {
    width: 33.33333% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-1\/3\@tablet {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 33.33333% !important;
  }
  .u-pull-1\/3\@tablet {
    position: relative !important;
    right: 33.33333% !important;
    left: auto !important;
    /* [1] */
  }
  .u-2\/3\@tablet {
    width: 66.66667% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-2\/3\@tablet {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 66.66667% !important;
  }
  .u-pull-2\/3\@tablet {
    position: relative !important;
    right: 66.66667% !important;
    left: auto !important;
    /* [1] */
  }
  .u-3\/3\@tablet {
    width: 100% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-3\/3\@tablet {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 100% !important;
  }
  .u-pull-3\/3\@tablet {
    position: relative !important;
    right: 100% !important;
    left: auto !important;
    /* [1] */
  }
  .u-1\/4\@tablet {
    width: 25% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-1\/4\@tablet {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 25% !important;
  }
  .u-pull-1\/4\@tablet {
    position: relative !important;
    right: 25% !important;
    left: auto !important;
    /* [1] */
  }
  .u-2\/4\@tablet {
    width: 50% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-2\/4\@tablet {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 50% !important;
  }
  .u-pull-2\/4\@tablet {
    position: relative !important;
    right: 50% !important;
    left: auto !important;
    /* [1] */
  }
  .u-3\/4\@tablet {
    width: 75% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-3\/4\@tablet {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 75% !important;
  }
  .u-pull-3\/4\@tablet {
    position: relative !important;
    right: 75% !important;
    left: auto !important;
    /* [1] */
  }
  .u-4\/4\@tablet {
    width: 100% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-4\/4\@tablet {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 100% !important;
  }
  .u-pull-4\/4\@tablet {
    position: relative !important;
    right: 100% !important;
    left: auto !important;
    /* [1] */
  }
  .u-1\/5\@tablet {
    width: 20% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-1\/5\@tablet {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 20% !important;
  }
  .u-pull-1\/5\@tablet {
    position: relative !important;
    right: 20% !important;
    left: auto !important;
    /* [1] */
  }
  .u-2\/5\@tablet {
    width: 40% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-2\/5\@tablet {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 40% !important;
  }
  .u-pull-2\/5\@tablet {
    position: relative !important;
    right: 40% !important;
    left: auto !important;
    /* [1] */
  }
  .u-3\/5\@tablet {
    width: 60% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-3\/5\@tablet {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 60% !important;
  }
  .u-pull-3\/5\@tablet {
    position: relative !important;
    right: 60% !important;
    left: auto !important;
    /* [1] */
  }
  .u-4\/5\@tablet {
    width: 80% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-4\/5\@tablet {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 80% !important;
  }
  .u-pull-4\/5\@tablet {
    position: relative !important;
    right: 80% !important;
    left: auto !important;
    /* [1] */
  }
  .u-5\/5\@tablet {
    width: 100% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-5\/5\@tablet {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 100% !important;
  }
  .u-pull-5\/5\@tablet {
    position: relative !important;
    right: 100% !important;
    left: auto !important;
    /* [1] */
  }
  .u-1\/6\@tablet {
    width: 16.66667% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-1\/6\@tablet {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 16.66667% !important;
  }
  .u-pull-1\/6\@tablet {
    position: relative !important;
    right: 16.66667% !important;
    left: auto !important;
    /* [1] */
  }
  .u-2\/6\@tablet {
    width: 33.33333% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-2\/6\@tablet {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 33.33333% !important;
  }
  .u-pull-2\/6\@tablet {
    position: relative !important;
    right: 33.33333% !important;
    left: auto !important;
    /* [1] */
  }
  .u-3\/6\@tablet {
    width: 50% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-3\/6\@tablet {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 50% !important;
  }
  .u-pull-3\/6\@tablet {
    position: relative !important;
    right: 50% !important;
    left: auto !important;
    /* [1] */
  }
  .u-4\/6\@tablet {
    width: 66.66667% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-4\/6\@tablet {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 66.66667% !important;
  }
  .u-pull-4\/6\@tablet {
    position: relative !important;
    right: 66.66667% !important;
    left: auto !important;
    /* [1] */
  }
  .u-5\/6\@tablet {
    width: 83.33333% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-5\/6\@tablet {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 83.33333% !important;
  }
  .u-pull-5\/6\@tablet {
    position: relative !important;
    right: 83.33333% !important;
    left: auto !important;
    /* [1] */
  }
  .u-6\/6\@tablet {
    width: 100% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-6\/6\@tablet {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 100% !important;
  }
  .u-pull-6\/6\@tablet {
    position: relative !important;
    right: 100% !important;
    left: auto !important;
    /* [1] */
  }
  .u-1\/7\@tablet {
    width: 14.28571% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-1\/7\@tablet {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 14.28571% !important;
  }
  .u-pull-1\/7\@tablet {
    position: relative !important;
    right: 14.28571% !important;
    left: auto !important;
    /* [1] */
  }
  .u-2\/7\@tablet {
    width: 28.57143% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-2\/7\@tablet {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 28.57143% !important;
  }
  .u-pull-2\/7\@tablet {
    position: relative !important;
    right: 28.57143% !important;
    left: auto !important;
    /* [1] */
  }
  .u-3\/7\@tablet {
    width: 42.85714% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-3\/7\@tablet {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 42.85714% !important;
  }
  .u-pull-3\/7\@tablet {
    position: relative !important;
    right: 42.85714% !important;
    left: auto !important;
    /* [1] */
  }
  .u-4\/7\@tablet {
    width: 57.14286% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-4\/7\@tablet {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 57.14286% !important;
  }
  .u-pull-4\/7\@tablet {
    position: relative !important;
    right: 57.14286% !important;
    left: auto !important;
    /* [1] */
  }
  .u-5\/7\@tablet {
    width: 71.42857% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-5\/7\@tablet {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 71.42857% !important;
  }
  .u-pull-5\/7\@tablet {
    position: relative !important;
    right: 71.42857% !important;
    left: auto !important;
    /* [1] */
  }
  .u-6\/7\@tablet {
    width: 85.71429% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-6\/7\@tablet {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 85.71429% !important;
  }
  .u-pull-6\/7\@tablet {
    position: relative !important;
    right: 85.71429% !important;
    left: auto !important;
    /* [1] */
  }
  .u-7\/7\@tablet {
    width: 100% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-7\/7\@tablet {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 100% !important;
  }
  .u-pull-7\/7\@tablet {
    position: relative !important;
    right: 100% !important;
    left: auto !important;
    /* [1] */
  }
  .u-1\/8\@tablet {
    width: 12.5% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-1\/8\@tablet {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 12.5% !important;
  }
  .u-pull-1\/8\@tablet {
    position: relative !important;
    right: 12.5% !important;
    left: auto !important;
    /* [1] */
  }
  .u-2\/8\@tablet {
    width: 25% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-2\/8\@tablet {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 25% !important;
  }
  .u-pull-2\/8\@tablet {
    position: relative !important;
    right: 25% !important;
    left: auto !important;
    /* [1] */
  }
  .u-3\/8\@tablet {
    width: 37.5% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-3\/8\@tablet {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 37.5% !important;
  }
  .u-pull-3\/8\@tablet {
    position: relative !important;
    right: 37.5% !important;
    left: auto !important;
    /* [1] */
  }
  .u-4\/8\@tablet {
    width: 50% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-4\/8\@tablet {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 50% !important;
  }
  .u-pull-4\/8\@tablet {
    position: relative !important;
    right: 50% !important;
    left: auto !important;
    /* [1] */
  }
  .u-5\/8\@tablet {
    width: 62.5% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-5\/8\@tablet {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 62.5% !important;
  }
  .u-pull-5\/8\@tablet {
    position: relative !important;
    right: 62.5% !important;
    left: auto !important;
    /* [1] */
  }
  .u-6\/8\@tablet {
    width: 75% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-6\/8\@tablet {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 75% !important;
  }
  .u-pull-6\/8\@tablet {
    position: relative !important;
    right: 75% !important;
    left: auto !important;
    /* [1] */
  }
  .u-7\/8\@tablet {
    width: 87.5% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-7\/8\@tablet {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 87.5% !important;
  }
  .u-pull-7\/8\@tablet {
    position: relative !important;
    right: 87.5% !important;
    left: auto !important;
    /* [1] */
  }
  .u-8\/8\@tablet {
    width: 100% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-8\/8\@tablet {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 100% !important;
  }
  .u-pull-8\/8\@tablet {
    position: relative !important;
    right: 100% !important;
    left: auto !important;
    /* [1] */
  }
  .u-push-none\@tablet {
    left: auto !important;
  }
  .u-pull-none\@tablet {
    right: auto !important;
  }
}

@media (min-width: 62.5em) {
  .u-1\/1\@tabletWide {
    width: 100% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-1\/1\@tabletWide {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 100% !important;
  }
  .u-pull-1\/1\@tabletWide {
    position: relative !important;
    right: 100% !important;
    left: auto !important;
    /* [1] */
  }
  .u-1\/2\@tabletWide {
    width: 50% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-1\/2\@tabletWide {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 50% !important;
  }
  .u-pull-1\/2\@tabletWide {
    position: relative !important;
    right: 50% !important;
    left: auto !important;
    /* [1] */
  }
  .u-2\/2\@tabletWide {
    width: 100% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-2\/2\@tabletWide {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 100% !important;
  }
  .u-pull-2\/2\@tabletWide {
    position: relative !important;
    right: 100% !important;
    left: auto !important;
    /* [1] */
  }
  .u-1\/3\@tabletWide {
    width: 33.33333% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-1\/3\@tabletWide {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 33.33333% !important;
  }
  .u-pull-1\/3\@tabletWide {
    position: relative !important;
    right: 33.33333% !important;
    left: auto !important;
    /* [1] */
  }
  .u-2\/3\@tabletWide {
    width: 66.66667% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-2\/3\@tabletWide {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 66.66667% !important;
  }
  .u-pull-2\/3\@tabletWide {
    position: relative !important;
    right: 66.66667% !important;
    left: auto !important;
    /* [1] */
  }
  .u-3\/3\@tabletWide {
    width: 100% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-3\/3\@tabletWide {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 100% !important;
  }
  .u-pull-3\/3\@tabletWide {
    position: relative !important;
    right: 100% !important;
    left: auto !important;
    /* [1] */
  }
  .u-1\/4\@tabletWide {
    width: 25% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-1\/4\@tabletWide {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 25% !important;
  }
  .u-pull-1\/4\@tabletWide {
    position: relative !important;
    right: 25% !important;
    left: auto !important;
    /* [1] */
  }
  .u-2\/4\@tabletWide {
    width: 50% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-2\/4\@tabletWide {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 50% !important;
  }
  .u-pull-2\/4\@tabletWide {
    position: relative !important;
    right: 50% !important;
    left: auto !important;
    /* [1] */
  }
  .u-3\/4\@tabletWide {
    width: 75% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-3\/4\@tabletWide {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 75% !important;
  }
  .u-pull-3\/4\@tabletWide {
    position: relative !important;
    right: 75% !important;
    left: auto !important;
    /* [1] */
  }
  .u-4\/4\@tabletWide {
    width: 100% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-4\/4\@tabletWide {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 100% !important;
  }
  .u-pull-4\/4\@tabletWide {
    position: relative !important;
    right: 100% !important;
    left: auto !important;
    /* [1] */
  }
  .u-1\/5\@tabletWide {
    width: 20% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-1\/5\@tabletWide {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 20% !important;
  }
  .u-pull-1\/5\@tabletWide {
    position: relative !important;
    right: 20% !important;
    left: auto !important;
    /* [1] */
  }
  .u-2\/5\@tabletWide {
    width: 40% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-2\/5\@tabletWide {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 40% !important;
  }
  .u-pull-2\/5\@tabletWide {
    position: relative !important;
    right: 40% !important;
    left: auto !important;
    /* [1] */
  }
  .u-3\/5\@tabletWide {
    width: 60% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-3\/5\@tabletWide {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 60% !important;
  }
  .u-pull-3\/5\@tabletWide {
    position: relative !important;
    right: 60% !important;
    left: auto !important;
    /* [1] */
  }
  .u-4\/5\@tabletWide {
    width: 80% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-4\/5\@tabletWide {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 80% !important;
  }
  .u-pull-4\/5\@tabletWide {
    position: relative !important;
    right: 80% !important;
    left: auto !important;
    /* [1] */
  }
  .u-5\/5\@tabletWide {
    width: 100% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-5\/5\@tabletWide {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 100% !important;
  }
  .u-pull-5\/5\@tabletWide {
    position: relative !important;
    right: 100% !important;
    left: auto !important;
    /* [1] */
  }
  .u-1\/6\@tabletWide {
    width: 16.66667% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-1\/6\@tabletWide {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 16.66667% !important;
  }
  .u-pull-1\/6\@tabletWide {
    position: relative !important;
    right: 16.66667% !important;
    left: auto !important;
    /* [1] */
  }
  .u-2\/6\@tabletWide {
    width: 33.33333% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-2\/6\@tabletWide {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 33.33333% !important;
  }
  .u-pull-2\/6\@tabletWide {
    position: relative !important;
    right: 33.33333% !important;
    left: auto !important;
    /* [1] */
  }
  .u-3\/6\@tabletWide {
    width: 50% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-3\/6\@tabletWide {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 50% !important;
  }
  .u-pull-3\/6\@tabletWide {
    position: relative !important;
    right: 50% !important;
    left: auto !important;
    /* [1] */
  }
  .u-4\/6\@tabletWide {
    width: 66.66667% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-4\/6\@tabletWide {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 66.66667% !important;
  }
  .u-pull-4\/6\@tabletWide {
    position: relative !important;
    right: 66.66667% !important;
    left: auto !important;
    /* [1] */
  }
  .u-5\/6\@tabletWide {
    width: 83.33333% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-5\/6\@tabletWide {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 83.33333% !important;
  }
  .u-pull-5\/6\@tabletWide {
    position: relative !important;
    right: 83.33333% !important;
    left: auto !important;
    /* [1] */
  }
  .u-6\/6\@tabletWide {
    width: 100% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-6\/6\@tabletWide {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 100% !important;
  }
  .u-pull-6\/6\@tabletWide {
    position: relative !important;
    right: 100% !important;
    left: auto !important;
    /* [1] */
  }
  .u-1\/7\@tabletWide {
    width: 14.28571% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-1\/7\@tabletWide {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 14.28571% !important;
  }
  .u-pull-1\/7\@tabletWide {
    position: relative !important;
    right: 14.28571% !important;
    left: auto !important;
    /* [1] */
  }
  .u-2\/7\@tabletWide {
    width: 28.57143% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-2\/7\@tabletWide {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 28.57143% !important;
  }
  .u-pull-2\/7\@tabletWide {
    position: relative !important;
    right: 28.57143% !important;
    left: auto !important;
    /* [1] */
  }
  .u-3\/7\@tabletWide {
    width: 42.85714% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-3\/7\@tabletWide {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 42.85714% !important;
  }
  .u-pull-3\/7\@tabletWide {
    position: relative !important;
    right: 42.85714% !important;
    left: auto !important;
    /* [1] */
  }
  .u-4\/7\@tabletWide {
    width: 57.14286% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-4\/7\@tabletWide {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 57.14286% !important;
  }
  .u-pull-4\/7\@tabletWide {
    position: relative !important;
    right: 57.14286% !important;
    left: auto !important;
    /* [1] */
  }
  .u-5\/7\@tabletWide {
    width: 71.42857% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-5\/7\@tabletWide {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 71.42857% !important;
  }
  .u-pull-5\/7\@tabletWide {
    position: relative !important;
    right: 71.42857% !important;
    left: auto !important;
    /* [1] */
  }
  .u-6\/7\@tabletWide {
    width: 85.71429% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-6\/7\@tabletWide {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 85.71429% !important;
  }
  .u-pull-6\/7\@tabletWide {
    position: relative !important;
    right: 85.71429% !important;
    left: auto !important;
    /* [1] */
  }
  .u-7\/7\@tabletWide {
    width: 100% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-7\/7\@tabletWide {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 100% !important;
  }
  .u-pull-7\/7\@tabletWide {
    position: relative !important;
    right: 100% !important;
    left: auto !important;
    /* [1] */
  }
  .u-1\/8\@tabletWide {
    width: 12.5% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-1\/8\@tabletWide {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 12.5% !important;
  }
  .u-pull-1\/8\@tabletWide {
    position: relative !important;
    right: 12.5% !important;
    left: auto !important;
    /* [1] */
  }
  .u-2\/8\@tabletWide {
    width: 25% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-2\/8\@tabletWide {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 25% !important;
  }
  .u-pull-2\/8\@tabletWide {
    position: relative !important;
    right: 25% !important;
    left: auto !important;
    /* [1] */
  }
  .u-3\/8\@tabletWide {
    width: 37.5% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-3\/8\@tabletWide {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 37.5% !important;
  }
  .u-pull-3\/8\@tabletWide {
    position: relative !important;
    right: 37.5% !important;
    left: auto !important;
    /* [1] */
  }
  .u-4\/8\@tabletWide {
    width: 50% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-4\/8\@tabletWide {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 50% !important;
  }
  .u-pull-4\/8\@tabletWide {
    position: relative !important;
    right: 50% !important;
    left: auto !important;
    /* [1] */
  }
  .u-5\/8\@tabletWide {
    width: 62.5% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-5\/8\@tabletWide {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 62.5% !important;
  }
  .u-pull-5\/8\@tabletWide {
    position: relative !important;
    right: 62.5% !important;
    left: auto !important;
    /* [1] */
  }
  .u-6\/8\@tabletWide {
    width: 75% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-6\/8\@tabletWide {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 75% !important;
  }
  .u-pull-6\/8\@tabletWide {
    position: relative !important;
    right: 75% !important;
    left: auto !important;
    /* [1] */
  }
  .u-7\/8\@tabletWide {
    width: 87.5% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-7\/8\@tabletWide {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 87.5% !important;
  }
  .u-pull-7\/8\@tabletWide {
    position: relative !important;
    right: 87.5% !important;
    left: auto !important;
    /* [1] */
  }
  .u-8\/8\@tabletWide {
    width: 100% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-8\/8\@tabletWide {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 100% !important;
  }
  .u-pull-8\/8\@tabletWide {
    position: relative !important;
    right: 100% !important;
    left: auto !important;
    /* [1] */
  }
  .u-push-none\@tabletWide {
    left: auto !important;
  }
  .u-pull-none\@tabletWide {
    right: auto !important;
  }
}

@media (min-width: 80em) {
  .u-1\/1\@laptop {
    width: 100% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-1\/1\@laptop {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 100% !important;
  }
  .u-pull-1\/1\@laptop {
    position: relative !important;
    right: 100% !important;
    left: auto !important;
    /* [1] */
  }
  .u-1\/2\@laptop {
    width: 50% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-1\/2\@laptop {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 50% !important;
  }
  .u-pull-1\/2\@laptop {
    position: relative !important;
    right: 50% !important;
    left: auto !important;
    /* [1] */
  }
  .u-2\/2\@laptop {
    width: 100% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-2\/2\@laptop {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 100% !important;
  }
  .u-pull-2\/2\@laptop {
    position: relative !important;
    right: 100% !important;
    left: auto !important;
    /* [1] */
  }
  .u-1\/3\@laptop {
    width: 33.33333% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-1\/3\@laptop {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 33.33333% !important;
  }
  .u-pull-1\/3\@laptop {
    position: relative !important;
    right: 33.33333% !important;
    left: auto !important;
    /* [1] */
  }
  .u-2\/3\@laptop {
    width: 66.66667% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-2\/3\@laptop {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 66.66667% !important;
  }
  .u-pull-2\/3\@laptop {
    position: relative !important;
    right: 66.66667% !important;
    left: auto !important;
    /* [1] */
  }
  .u-3\/3\@laptop {
    width: 100% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-3\/3\@laptop {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 100% !important;
  }
  .u-pull-3\/3\@laptop {
    position: relative !important;
    right: 100% !important;
    left: auto !important;
    /* [1] */
  }
  .u-1\/4\@laptop {
    width: 25% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-1\/4\@laptop {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 25% !important;
  }
  .u-pull-1\/4\@laptop {
    position: relative !important;
    right: 25% !important;
    left: auto !important;
    /* [1] */
  }
  .u-2\/4\@laptop {
    width: 50% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-2\/4\@laptop {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 50% !important;
  }
  .u-pull-2\/4\@laptop {
    position: relative !important;
    right: 50% !important;
    left: auto !important;
    /* [1] */
  }
  .u-3\/4\@laptop {
    width: 75% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-3\/4\@laptop {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 75% !important;
  }
  .u-pull-3\/4\@laptop {
    position: relative !important;
    right: 75% !important;
    left: auto !important;
    /* [1] */
  }
  .u-4\/4\@laptop {
    width: 100% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-4\/4\@laptop {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 100% !important;
  }
  .u-pull-4\/4\@laptop {
    position: relative !important;
    right: 100% !important;
    left: auto !important;
    /* [1] */
  }
  .u-1\/5\@laptop {
    width: 20% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-1\/5\@laptop {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 20% !important;
  }
  .u-pull-1\/5\@laptop {
    position: relative !important;
    right: 20% !important;
    left: auto !important;
    /* [1] */
  }
  .u-2\/5\@laptop {
    width: 40% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-2\/5\@laptop {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 40% !important;
  }
  .u-pull-2\/5\@laptop {
    position: relative !important;
    right: 40% !important;
    left: auto !important;
    /* [1] */
  }
  .u-3\/5\@laptop {
    width: 60% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-3\/5\@laptop {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 60% !important;
  }
  .u-pull-3\/5\@laptop {
    position: relative !important;
    right: 60% !important;
    left: auto !important;
    /* [1] */
  }
  .u-4\/5\@laptop {
    width: 80% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-4\/5\@laptop {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 80% !important;
  }
  .u-pull-4\/5\@laptop {
    position: relative !important;
    right: 80% !important;
    left: auto !important;
    /* [1] */
  }
  .u-5\/5\@laptop {
    width: 100% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-5\/5\@laptop {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 100% !important;
  }
  .u-pull-5\/5\@laptop {
    position: relative !important;
    right: 100% !important;
    left: auto !important;
    /* [1] */
  }
  .u-1\/6\@laptop {
    width: 16.66667% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-1\/6\@laptop {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 16.66667% !important;
  }
  .u-pull-1\/6\@laptop {
    position: relative !important;
    right: 16.66667% !important;
    left: auto !important;
    /* [1] */
  }
  .u-2\/6\@laptop {
    width: 33.33333% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-2\/6\@laptop {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 33.33333% !important;
  }
  .u-pull-2\/6\@laptop {
    position: relative !important;
    right: 33.33333% !important;
    left: auto !important;
    /* [1] */
  }
  .u-3\/6\@laptop {
    width: 50% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-3\/6\@laptop {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 50% !important;
  }
  .u-pull-3\/6\@laptop {
    position: relative !important;
    right: 50% !important;
    left: auto !important;
    /* [1] */
  }
  .u-4\/6\@laptop {
    width: 66.66667% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-4\/6\@laptop {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 66.66667% !important;
  }
  .u-pull-4\/6\@laptop {
    position: relative !important;
    right: 66.66667% !important;
    left: auto !important;
    /* [1] */
  }
  .u-5\/6\@laptop {
    width: 83.33333% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-5\/6\@laptop {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 83.33333% !important;
  }
  .u-pull-5\/6\@laptop {
    position: relative !important;
    right: 83.33333% !important;
    left: auto !important;
    /* [1] */
  }
  .u-6\/6\@laptop {
    width: 100% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-6\/6\@laptop {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 100% !important;
  }
  .u-pull-6\/6\@laptop {
    position: relative !important;
    right: 100% !important;
    left: auto !important;
    /* [1] */
  }
  .u-1\/7\@laptop {
    width: 14.28571% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-1\/7\@laptop {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 14.28571% !important;
  }
  .u-pull-1\/7\@laptop {
    position: relative !important;
    right: 14.28571% !important;
    left: auto !important;
    /* [1] */
  }
  .u-2\/7\@laptop {
    width: 28.57143% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-2\/7\@laptop {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 28.57143% !important;
  }
  .u-pull-2\/7\@laptop {
    position: relative !important;
    right: 28.57143% !important;
    left: auto !important;
    /* [1] */
  }
  .u-3\/7\@laptop {
    width: 42.85714% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-3\/7\@laptop {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 42.85714% !important;
  }
  .u-pull-3\/7\@laptop {
    position: relative !important;
    right: 42.85714% !important;
    left: auto !important;
    /* [1] */
  }
  .u-4\/7\@laptop {
    width: 57.14286% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-4\/7\@laptop {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 57.14286% !important;
  }
  .u-pull-4\/7\@laptop {
    position: relative !important;
    right: 57.14286% !important;
    left: auto !important;
    /* [1] */
  }
  .u-5\/7\@laptop {
    width: 71.42857% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-5\/7\@laptop {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 71.42857% !important;
  }
  .u-pull-5\/7\@laptop {
    position: relative !important;
    right: 71.42857% !important;
    left: auto !important;
    /* [1] */
  }
  .u-6\/7\@laptop {
    width: 85.71429% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-6\/7\@laptop {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 85.71429% !important;
  }
  .u-pull-6\/7\@laptop {
    position: relative !important;
    right: 85.71429% !important;
    left: auto !important;
    /* [1] */
  }
  .u-7\/7\@laptop {
    width: 100% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-7\/7\@laptop {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 100% !important;
  }
  .u-pull-7\/7\@laptop {
    position: relative !important;
    right: 100% !important;
    left: auto !important;
    /* [1] */
  }
  .u-1\/8\@laptop {
    width: 12.5% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-1\/8\@laptop {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 12.5% !important;
  }
  .u-pull-1\/8\@laptop {
    position: relative !important;
    right: 12.5% !important;
    left: auto !important;
    /* [1] */
  }
  .u-2\/8\@laptop {
    width: 25% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-2\/8\@laptop {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 25% !important;
  }
  .u-pull-2\/8\@laptop {
    position: relative !important;
    right: 25% !important;
    left: auto !important;
    /* [1] */
  }
  .u-3\/8\@laptop {
    width: 37.5% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-3\/8\@laptop {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 37.5% !important;
  }
  .u-pull-3\/8\@laptop {
    position: relative !important;
    right: 37.5% !important;
    left: auto !important;
    /* [1] */
  }
  .u-4\/8\@laptop {
    width: 50% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-4\/8\@laptop {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 50% !important;
  }
  .u-pull-4\/8\@laptop {
    position: relative !important;
    right: 50% !important;
    left: auto !important;
    /* [1] */
  }
  .u-5\/8\@laptop {
    width: 62.5% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-5\/8\@laptop {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 62.5% !important;
  }
  .u-pull-5\/8\@laptop {
    position: relative !important;
    right: 62.5% !important;
    left: auto !important;
    /* [1] */
  }
  .u-6\/8\@laptop {
    width: 75% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-6\/8\@laptop {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 75% !important;
  }
  .u-pull-6\/8\@laptop {
    position: relative !important;
    right: 75% !important;
    left: auto !important;
    /* [1] */
  }
  .u-7\/8\@laptop {
    width: 87.5% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-7\/8\@laptop {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 87.5% !important;
  }
  .u-pull-7\/8\@laptop {
    position: relative !important;
    right: 87.5% !important;
    left: auto !important;
    /* [1] */
  }
  .u-8\/8\@laptop {
    width: 100% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-8\/8\@laptop {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 100% !important;
  }
  .u-pull-8\/8\@laptop {
    position: relative !important;
    right: 100% !important;
    left: auto !important;
    /* [1] */
  }
  .u-push-none\@laptop {
    left: auto !important;
  }
  .u-pull-none\@laptop {
    right: auto !important;
  }
}

@media (min-width: 90em) {
  .u-1\/1\@desktop {
    width: 100% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-1\/1\@desktop {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 100% !important;
  }
  .u-pull-1\/1\@desktop {
    position: relative !important;
    right: 100% !important;
    left: auto !important;
    /* [1] */
  }
  .u-1\/2\@desktop {
    width: 50% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-1\/2\@desktop {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 50% !important;
  }
  .u-pull-1\/2\@desktop {
    position: relative !important;
    right: 50% !important;
    left: auto !important;
    /* [1] */
  }
  .u-2\/2\@desktop {
    width: 100% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-2\/2\@desktop {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 100% !important;
  }
  .u-pull-2\/2\@desktop {
    position: relative !important;
    right: 100% !important;
    left: auto !important;
    /* [1] */
  }
  .u-1\/3\@desktop {
    width: 33.33333% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-1\/3\@desktop {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 33.33333% !important;
  }
  .u-pull-1\/3\@desktop {
    position: relative !important;
    right: 33.33333% !important;
    left: auto !important;
    /* [1] */
  }
  .u-2\/3\@desktop {
    width: 66.66667% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-2\/3\@desktop {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 66.66667% !important;
  }
  .u-pull-2\/3\@desktop {
    position: relative !important;
    right: 66.66667% !important;
    left: auto !important;
    /* [1] */
  }
  .u-3\/3\@desktop {
    width: 100% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-3\/3\@desktop {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 100% !important;
  }
  .u-pull-3\/3\@desktop {
    position: relative !important;
    right: 100% !important;
    left: auto !important;
    /* [1] */
  }
  .u-1\/4\@desktop {
    width: 25% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-1\/4\@desktop {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 25% !important;
  }
  .u-pull-1\/4\@desktop {
    position: relative !important;
    right: 25% !important;
    left: auto !important;
    /* [1] */
  }
  .u-2\/4\@desktop {
    width: 50% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-2\/4\@desktop {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 50% !important;
  }
  .u-pull-2\/4\@desktop {
    position: relative !important;
    right: 50% !important;
    left: auto !important;
    /* [1] */
  }
  .u-3\/4\@desktop {
    width: 75% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-3\/4\@desktop {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 75% !important;
  }
  .u-pull-3\/4\@desktop {
    position: relative !important;
    right: 75% !important;
    left: auto !important;
    /* [1] */
  }
  .u-4\/4\@desktop {
    width: 100% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-4\/4\@desktop {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 100% !important;
  }
  .u-pull-4\/4\@desktop {
    position: relative !important;
    right: 100% !important;
    left: auto !important;
    /* [1] */
  }
  .u-1\/5\@desktop {
    width: 20% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-1\/5\@desktop {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 20% !important;
  }
  .u-pull-1\/5\@desktop {
    position: relative !important;
    right: 20% !important;
    left: auto !important;
    /* [1] */
  }
  .u-2\/5\@desktop {
    width: 40% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-2\/5\@desktop {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 40% !important;
  }
  .u-pull-2\/5\@desktop {
    position: relative !important;
    right: 40% !important;
    left: auto !important;
    /* [1] */
  }
  .u-3\/5\@desktop {
    width: 60% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-3\/5\@desktop {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 60% !important;
  }
  .u-pull-3\/5\@desktop {
    position: relative !important;
    right: 60% !important;
    left: auto !important;
    /* [1] */
  }
  .u-4\/5\@desktop {
    width: 80% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-4\/5\@desktop {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 80% !important;
  }
  .u-pull-4\/5\@desktop {
    position: relative !important;
    right: 80% !important;
    left: auto !important;
    /* [1] */
  }
  .u-5\/5\@desktop {
    width: 100% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-5\/5\@desktop {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 100% !important;
  }
  .u-pull-5\/5\@desktop {
    position: relative !important;
    right: 100% !important;
    left: auto !important;
    /* [1] */
  }
  .u-1\/6\@desktop {
    width: 16.66667% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-1\/6\@desktop {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 16.66667% !important;
  }
  .u-pull-1\/6\@desktop {
    position: relative !important;
    right: 16.66667% !important;
    left: auto !important;
    /* [1] */
  }
  .u-2\/6\@desktop {
    width: 33.33333% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-2\/6\@desktop {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 33.33333% !important;
  }
  .u-pull-2\/6\@desktop {
    position: relative !important;
    right: 33.33333% !important;
    left: auto !important;
    /* [1] */
  }
  .u-3\/6\@desktop {
    width: 50% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-3\/6\@desktop {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 50% !important;
  }
  .u-pull-3\/6\@desktop {
    position: relative !important;
    right: 50% !important;
    left: auto !important;
    /* [1] */
  }
  .u-4\/6\@desktop {
    width: 66.66667% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-4\/6\@desktop {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 66.66667% !important;
  }
  .u-pull-4\/6\@desktop {
    position: relative !important;
    right: 66.66667% !important;
    left: auto !important;
    /* [1] */
  }
  .u-5\/6\@desktop {
    width: 83.33333% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-5\/6\@desktop {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 83.33333% !important;
  }
  .u-pull-5\/6\@desktop {
    position: relative !important;
    right: 83.33333% !important;
    left: auto !important;
    /* [1] */
  }
  .u-6\/6\@desktop {
    width: 100% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-6\/6\@desktop {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 100% !important;
  }
  .u-pull-6\/6\@desktop {
    position: relative !important;
    right: 100% !important;
    left: auto !important;
    /* [1] */
  }
  .u-1\/7\@desktop {
    width: 14.28571% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-1\/7\@desktop {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 14.28571% !important;
  }
  .u-pull-1\/7\@desktop {
    position: relative !important;
    right: 14.28571% !important;
    left: auto !important;
    /* [1] */
  }
  .u-2\/7\@desktop {
    width: 28.57143% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-2\/7\@desktop {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 28.57143% !important;
  }
  .u-pull-2\/7\@desktop {
    position: relative !important;
    right: 28.57143% !important;
    left: auto !important;
    /* [1] */
  }
  .u-3\/7\@desktop {
    width: 42.85714% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-3\/7\@desktop {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 42.85714% !important;
  }
  .u-pull-3\/7\@desktop {
    position: relative !important;
    right: 42.85714% !important;
    left: auto !important;
    /* [1] */
  }
  .u-4\/7\@desktop {
    width: 57.14286% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-4\/7\@desktop {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 57.14286% !important;
  }
  .u-pull-4\/7\@desktop {
    position: relative !important;
    right: 57.14286% !important;
    left: auto !important;
    /* [1] */
  }
  .u-5\/7\@desktop {
    width: 71.42857% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-5\/7\@desktop {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 71.42857% !important;
  }
  .u-pull-5\/7\@desktop {
    position: relative !important;
    right: 71.42857% !important;
    left: auto !important;
    /* [1] */
  }
  .u-6\/7\@desktop {
    width: 85.71429% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-6\/7\@desktop {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 85.71429% !important;
  }
  .u-pull-6\/7\@desktop {
    position: relative !important;
    right: 85.71429% !important;
    left: auto !important;
    /* [1] */
  }
  .u-7\/7\@desktop {
    width: 100% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-7\/7\@desktop {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 100% !important;
  }
  .u-pull-7\/7\@desktop {
    position: relative !important;
    right: 100% !important;
    left: auto !important;
    /* [1] */
  }
  .u-1\/8\@desktop {
    width: 12.5% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-1\/8\@desktop {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 12.5% !important;
  }
  .u-pull-1\/8\@desktop {
    position: relative !important;
    right: 12.5% !important;
    left: auto !important;
    /* [1] */
  }
  .u-2\/8\@desktop {
    width: 25% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-2\/8\@desktop {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 25% !important;
  }
  .u-pull-2\/8\@desktop {
    position: relative !important;
    right: 25% !important;
    left: auto !important;
    /* [1] */
  }
  .u-3\/8\@desktop {
    width: 37.5% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-3\/8\@desktop {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 37.5% !important;
  }
  .u-pull-3\/8\@desktop {
    position: relative !important;
    right: 37.5% !important;
    left: auto !important;
    /* [1] */
  }
  .u-4\/8\@desktop {
    width: 50% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-4\/8\@desktop {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 50% !important;
  }
  .u-pull-4\/8\@desktop {
    position: relative !important;
    right: 50% !important;
    left: auto !important;
    /* [1] */
  }
  .u-5\/8\@desktop {
    width: 62.5% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-5\/8\@desktop {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 62.5% !important;
  }
  .u-pull-5\/8\@desktop {
    position: relative !important;
    right: 62.5% !important;
    left: auto !important;
    /* [1] */
  }
  .u-6\/8\@desktop {
    width: 75% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-6\/8\@desktop {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 75% !important;
  }
  .u-pull-6\/8\@desktop {
    position: relative !important;
    right: 75% !important;
    left: auto !important;
    /* [1] */
  }
  .u-7\/8\@desktop {
    width: 87.5% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-7\/8\@desktop {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 87.5% !important;
  }
  .u-pull-7\/8\@desktop {
    position: relative !important;
    right: 87.5% !important;
    left: auto !important;
    /* [1] */
  }
  .u-8\/8\@desktop {
    width: 100% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-8\/8\@desktop {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 100% !important;
  }
  .u-pull-8\/8\@desktop {
    position: relative !important;
    right: 100% !important;
    left: auto !important;
    /* [1] */
  }
  .u-push-none\@desktop {
    left: auto !important;
  }
  .u-pull-none\@desktop {
    right: auto !important;
  }
}

@media (min-width: 100em) {
  .u-1\/1\@wideScreen {
    width: 100% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-1\/1\@wideScreen {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 100% !important;
  }
  .u-pull-1\/1\@wideScreen {
    position: relative !important;
    right: 100% !important;
    left: auto !important;
    /* [1] */
  }
  .u-1\/2\@wideScreen {
    width: 50% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-1\/2\@wideScreen {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 50% !important;
  }
  .u-pull-1\/2\@wideScreen {
    position: relative !important;
    right: 50% !important;
    left: auto !important;
    /* [1] */
  }
  .u-2\/2\@wideScreen {
    width: 100% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-2\/2\@wideScreen {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 100% !important;
  }
  .u-pull-2\/2\@wideScreen {
    position: relative !important;
    right: 100% !important;
    left: auto !important;
    /* [1] */
  }
  .u-1\/3\@wideScreen {
    width: 33.33333% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-1\/3\@wideScreen {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 33.33333% !important;
  }
  .u-pull-1\/3\@wideScreen {
    position: relative !important;
    right: 33.33333% !important;
    left: auto !important;
    /* [1] */
  }
  .u-2\/3\@wideScreen {
    width: 66.66667% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-2\/3\@wideScreen {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 66.66667% !important;
  }
  .u-pull-2\/3\@wideScreen {
    position: relative !important;
    right: 66.66667% !important;
    left: auto !important;
    /* [1] */
  }
  .u-3\/3\@wideScreen {
    width: 100% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-3\/3\@wideScreen {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 100% !important;
  }
  .u-pull-3\/3\@wideScreen {
    position: relative !important;
    right: 100% !important;
    left: auto !important;
    /* [1] */
  }
  .u-1\/4\@wideScreen {
    width: 25% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-1\/4\@wideScreen {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 25% !important;
  }
  .u-pull-1\/4\@wideScreen {
    position: relative !important;
    right: 25% !important;
    left: auto !important;
    /* [1] */
  }
  .u-2\/4\@wideScreen {
    width: 50% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-2\/4\@wideScreen {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 50% !important;
  }
  .u-pull-2\/4\@wideScreen {
    position: relative !important;
    right: 50% !important;
    left: auto !important;
    /* [1] */
  }
  .u-3\/4\@wideScreen {
    width: 75% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-3\/4\@wideScreen {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 75% !important;
  }
  .u-pull-3\/4\@wideScreen {
    position: relative !important;
    right: 75% !important;
    left: auto !important;
    /* [1] */
  }
  .u-4\/4\@wideScreen {
    width: 100% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-4\/4\@wideScreen {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 100% !important;
  }
  .u-pull-4\/4\@wideScreen {
    position: relative !important;
    right: 100% !important;
    left: auto !important;
    /* [1] */
  }
  .u-1\/5\@wideScreen {
    width: 20% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-1\/5\@wideScreen {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 20% !important;
  }
  .u-pull-1\/5\@wideScreen {
    position: relative !important;
    right: 20% !important;
    left: auto !important;
    /* [1] */
  }
  .u-2\/5\@wideScreen {
    width: 40% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-2\/5\@wideScreen {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 40% !important;
  }
  .u-pull-2\/5\@wideScreen {
    position: relative !important;
    right: 40% !important;
    left: auto !important;
    /* [1] */
  }
  .u-3\/5\@wideScreen {
    width: 60% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-3\/5\@wideScreen {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 60% !important;
  }
  .u-pull-3\/5\@wideScreen {
    position: relative !important;
    right: 60% !important;
    left: auto !important;
    /* [1] */
  }
  .u-4\/5\@wideScreen {
    width: 80% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-4\/5\@wideScreen {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 80% !important;
  }
  .u-pull-4\/5\@wideScreen {
    position: relative !important;
    right: 80% !important;
    left: auto !important;
    /* [1] */
  }
  .u-5\/5\@wideScreen {
    width: 100% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-5\/5\@wideScreen {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 100% !important;
  }
  .u-pull-5\/5\@wideScreen {
    position: relative !important;
    right: 100% !important;
    left: auto !important;
    /* [1] */
  }
  .u-1\/6\@wideScreen {
    width: 16.66667% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-1\/6\@wideScreen {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 16.66667% !important;
  }
  .u-pull-1\/6\@wideScreen {
    position: relative !important;
    right: 16.66667% !important;
    left: auto !important;
    /* [1] */
  }
  .u-2\/6\@wideScreen {
    width: 33.33333% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-2\/6\@wideScreen {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 33.33333% !important;
  }
  .u-pull-2\/6\@wideScreen {
    position: relative !important;
    right: 33.33333% !important;
    left: auto !important;
    /* [1] */
  }
  .u-3\/6\@wideScreen {
    width: 50% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-3\/6\@wideScreen {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 50% !important;
  }
  .u-pull-3\/6\@wideScreen {
    position: relative !important;
    right: 50% !important;
    left: auto !important;
    /* [1] */
  }
  .u-4\/6\@wideScreen {
    width: 66.66667% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-4\/6\@wideScreen {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 66.66667% !important;
  }
  .u-pull-4\/6\@wideScreen {
    position: relative !important;
    right: 66.66667% !important;
    left: auto !important;
    /* [1] */
  }
  .u-5\/6\@wideScreen {
    width: 83.33333% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-5\/6\@wideScreen {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 83.33333% !important;
  }
  .u-pull-5\/6\@wideScreen {
    position: relative !important;
    right: 83.33333% !important;
    left: auto !important;
    /* [1] */
  }
  .u-6\/6\@wideScreen {
    width: 100% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-6\/6\@wideScreen {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 100% !important;
  }
  .u-pull-6\/6\@wideScreen {
    position: relative !important;
    right: 100% !important;
    left: auto !important;
    /* [1] */
  }
  .u-1\/7\@wideScreen {
    width: 14.28571% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-1\/7\@wideScreen {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 14.28571% !important;
  }
  .u-pull-1\/7\@wideScreen {
    position: relative !important;
    right: 14.28571% !important;
    left: auto !important;
    /* [1] */
  }
  .u-2\/7\@wideScreen {
    width: 28.57143% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-2\/7\@wideScreen {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 28.57143% !important;
  }
  .u-pull-2\/7\@wideScreen {
    position: relative !important;
    right: 28.57143% !important;
    left: auto !important;
    /* [1] */
  }
  .u-3\/7\@wideScreen {
    width: 42.85714% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-3\/7\@wideScreen {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 42.85714% !important;
  }
  .u-pull-3\/7\@wideScreen {
    position: relative !important;
    right: 42.85714% !important;
    left: auto !important;
    /* [1] */
  }
  .u-4\/7\@wideScreen {
    width: 57.14286% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-4\/7\@wideScreen {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 57.14286% !important;
  }
  .u-pull-4\/7\@wideScreen {
    position: relative !important;
    right: 57.14286% !important;
    left: auto !important;
    /* [1] */
  }
  .u-5\/7\@wideScreen {
    width: 71.42857% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-5\/7\@wideScreen {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 71.42857% !important;
  }
  .u-pull-5\/7\@wideScreen {
    position: relative !important;
    right: 71.42857% !important;
    left: auto !important;
    /* [1] */
  }
  .u-6\/7\@wideScreen {
    width: 85.71429% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-6\/7\@wideScreen {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 85.71429% !important;
  }
  .u-pull-6\/7\@wideScreen {
    position: relative !important;
    right: 85.71429% !important;
    left: auto !important;
    /* [1] */
  }
  .u-7\/7\@wideScreen {
    width: 100% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-7\/7\@wideScreen {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 100% !important;
  }
  .u-pull-7\/7\@wideScreen {
    position: relative !important;
    right: 100% !important;
    left: auto !important;
    /* [1] */
  }
  .u-1\/8\@wideScreen {
    width: 12.5% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-1\/8\@wideScreen {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 12.5% !important;
  }
  .u-pull-1\/8\@wideScreen {
    position: relative !important;
    right: 12.5% !important;
    left: auto !important;
    /* [1] */
  }
  .u-2\/8\@wideScreen {
    width: 25% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-2\/8\@wideScreen {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 25% !important;
  }
  .u-pull-2\/8\@wideScreen {
    position: relative !important;
    right: 25% !important;
    left: auto !important;
    /* [1] */
  }
  .u-3\/8\@wideScreen {
    width: 37.5% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-3\/8\@wideScreen {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 37.5% !important;
  }
  .u-pull-3\/8\@wideScreen {
    position: relative !important;
    right: 37.5% !important;
    left: auto !important;
    /* [1] */
  }
  .u-4\/8\@wideScreen {
    width: 50% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-4\/8\@wideScreen {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 50% !important;
  }
  .u-pull-4\/8\@wideScreen {
    position: relative !important;
    right: 50% !important;
    left: auto !important;
    /* [1] */
  }
  .u-5\/8\@wideScreen {
    width: 62.5% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-5\/8\@wideScreen {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 62.5% !important;
  }
  .u-pull-5\/8\@wideScreen {
    position: relative !important;
    right: 62.5% !important;
    left: auto !important;
    /* [1] */
  }
  .u-6\/8\@wideScreen {
    width: 75% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-6\/8\@wideScreen {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 75% !important;
  }
  .u-pull-6\/8\@wideScreen {
    position: relative !important;
    right: 75% !important;
    left: auto !important;
    /* [1] */
  }
  .u-7\/8\@wideScreen {
    width: 87.5% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-7\/8\@wideScreen {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 87.5% !important;
  }
  .u-pull-7\/8\@wideScreen {
    position: relative !important;
    right: 87.5% !important;
    left: auto !important;
    /* [1] */
  }
  .u-8\/8\@wideScreen {
    width: 100% !important;
  }
  /**
         * 1. Reset any leftover or conflicting `left`/`right` values.
         */
  .u-push-8\/8\@wideScreen {
    position: relative !important;
    right: auto !important;
    /* [1] */
    left: 100% !important;
  }
  .u-pull-8\/8\@wideScreen {
    position: relative !important;
    right: 100% !important;
    left: auto !important;
    /* [1] */
  }
  .u-push-none\@wideScreen {
    left: auto !important;
  }
  .u-pull-none\@wideScreen {
    right: auto !important;
  }
}

/* ==========================================================================
   #PRINT
   ========================================================================== */
/**
 * Very crude, reset-like styles taken from the HTML5 Boilerplate:
 * https://github.com/h5bp/html5-boilerplate/blob/5.3.0/dist/doc/css.md#print-styles
 * https://github.com/h5bp/html5-boilerplate/blob/master/dist/css/main.css#L205-L282
 */
@media print {
  /**
   * 1. Black prints faster: http://www.sanbeiji.com/archives/953
   */
  *, *:before, *:after {
    background: transparent !important;
    color: #000 !important;
    /* [1] */
    -webkit-box-shadow: none !important;
            box-shadow: none !important;
    text-shadow: none !important;
  }
  a,
  a:visited {
    text-decoration: underline;
  }
  a[href]:after {
    content: " (" attr(href) ")";
  }
  abbr[title]:after {
    content: " (" attr(title) ")";
  }
  /**
   * Don’t show links that are fragment identifiers, or use the `javascript:`
   * pseudo protocol.
   */
  a[href^="#"]:after,
  a[href^="javascript:"]:after {
    content: "";
  }
  pre,
  blockquote {
    border: 1px solid #999;
    page-break-inside: avoid;
  }
  /**
   * Printing Tables: http://css-discuss.incutio.com/wiki/Printing_Tables
   */
  thead {
    display: table-header-group;
  }
  tr,
  img {
    page-break-inside: avoid;
  }
  img {
    max-width: 100% !important;
  }
  p,
  h2,
  h3 {
    orphans: 3;
    widows: 3;
  }
  h2,
  h3 {
    page-break-after: avoid;
  }
}

.u-skip {
  position: absolute;
  overflow: hidden;
  width: 1px;
  height: 1px;
  top: -10px;
  z-index: -999;
}

.u-skip:hover, .u-skip:active, .u-skip:focus {
  width: auto;
  height: auto;
  display: inline-block;
  top: 12px;
  left: 50%;
  -webkit-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
          transform: translateX(-50%);
  z-index: 999;
}

.animate {
  opacity: 0;
}

.animated {
  opacity: 1;
  -webkit-animation: fadeInUp 1.25s;
          animation: fadeInUp 1.25s;
  -webkit-animation-fill-mode: both;
          animation-fill-mode: both;
}

.pre-animate {
  opacity: 0;
}

.visible {
  opacity: 1 !important;
}

.animate-delay-0 {
  -webkit-animation-delay: 0s;
          animation-delay: 0s;
}

.animate-delay-1 {
  -webkit-animation-delay: 0.2s;
          animation-delay: 0.2s;
}

.animate-delay-2 {
  -webkit-animation-delay: 0.4s;
          animation-delay: 0.4s;
}

@-webkit-keyframes fadeInUp {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, 25px, 0);
            transform: translate3d(0, 25px, 0);
  }
  100% {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
  }
}

@keyframes fadeInUp {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, 25px, 0);
            transform: translate3d(0, 25px, 0);
  }
  100% {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
  }
}

@-webkit-keyframes slide-left {
  0% {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
  100% {
    -webkit-transform: translateX(-100px);
            transform: translateX(-100px);
  }
}

@keyframes slide-left {
  0% {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
  100% {
    -webkit-transform: translateX(-100px);
            transform: translateX(-100px);
  }
}

@-webkit-keyframes zoomEffect {
  0% {
    -webkit-transform: scale(2.5);
            transform: scale(2.5);
    /* Start slightly zoomed in */
    opacity: 0;
  }
  50% {
    opacity: 0.03;
  }
  100% {
    -webkit-transform: scale(1);
            transform: scale(1);
    /* Zoom out to normal size */
    opacity: 0.2;
  }
}

@keyframes zoomEffect {
  0% {
    -webkit-transform: scale(2.5);
            transform: scale(2.5);
    /* Start slightly zoomed in */
    opacity: 0;
  }
  50% {
    opacity: 0.03;
  }
  100% {
    -webkit-transform: scale(1);
            transform: scale(1);
    /* Zoom out to normal size */
    opacity: 0.2;
  }
}

@-webkit-keyframes slideIn {
  0% {
    -webkit-transform: translate(-50%, 0);
            transform: translate(-50%, 0);
    opacity: 0;
  }
  100% {
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    opacity: 1;
  }
}

@keyframes slideIn {
  0% {
    -webkit-transform: translate(-50%, 0);
            transform: translate(-50%, 0);
    opacity: 0;
  }
  100% {
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    opacity: 1;
  }
}

@-webkit-keyframes moveAndResize {
  0% {
    top: 50%;
    left: 50%;
  }
  100% {
    top: 65px;
    left: 65px;
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
    width: 230px;
  }
}

@keyframes moveAndResize {
  0% {
    top: 50%;
    left: 50%;
  }
  100% {
    top: 65px;
    left: 65px;
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
    width: 230px;
  }
}

@-webkit-keyframes moveAndResizeMobile {
  0% {
    top: 50%;
    left: 50%;
  }
  100% {
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
    width: 230px;
    top: 21px;
    left: 21px;
  }
}

@keyframes moveAndResizeMobile {
  0% {
    top: 50%;
    left: 50%;
  }
  100% {
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
    width: 230px;
    top: 21px;
    left: 21px;
  }
}

@-webkit-keyframes fadeIn {
  from {
    opacity: 0;
    -webkit-transform: translateY(20px);
            transform: translateY(20px);
  }
  to {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}

@keyframes fadeIn {
  from {
    opacity: 0;
    -webkit-transform: translateY(20px);
            transform: translateY(20px);
  }
  to {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}

@-webkit-keyframes rotating {
  from {
    -webkit-transform: rotate(0);
            transform: rotate(0);
  }
  to {
    -webkit-transform: rotate(-48deg);
            transform: rotate(-48deg);
  }
}

@keyframes rotating {
  from {
    -webkit-transform: rotate(0);
            transform: rotate(0);
  }
  to {
    -webkit-transform: rotate(-48deg);
            transform: rotate(-48deg);
  }
}

@-webkit-keyframes rotating-back {
  from {
    -webkit-transform: rotate(-48deg);
            transform: rotate(-48deg);
  }
  to {
    -webkit-transform: rotate(0);
            transform: rotate(0);
  }
}

@keyframes rotating-back {
  from {
    -webkit-transform: rotate(-48deg);
            transform: rotate(-48deg);
  }
  to {
    -webkit-transform: rotate(0);
            transform: rotate(0);
  }
}

h4,
h5,
h6,
ul,
ol,
dl,
blockquote,
p,
address,
hr,
table,
fieldset,
figure,
pre {
  margin-bottom: 24px;
}

.clearfix:after {
  content: "" !important;
  display: block !important;
  clear: both !important;
}

.screen-reader-text {
  position: absolute !important;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(1px, 1px, 1px, 1px);
}

.screen-reader-text:focus {
  top: 5px;
  left: 5px;
  z-index: 100000;
  display: block;
  width: auto;
  height: auto;
  padding: 15px 23px 14px;
  border-radius: 3px;
  clip: auto !important;
  font-size: 0.875rem;
  font-weight: bold;
  line-height: normal;
  color: #21759b;
  text-decoration: none;
  background-color: #f1f1f1;
  -webkit-box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
          box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
}

@media (max-width: 47.99em) {
  .emptyP {
    display: none;
  }
}

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

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

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

.pt-t {
  padding-top: 24px;
}

.pt-s {
  padding-top: 24px;
}

@media (min-width: 48em) {
  .pt-s {
    padding-top: 48px;
  }
}

.pt-m {
  padding-top: 24px;
}

@media (min-width: 48em) {
  .pt-m {
    padding-top: 72px;
  }
}

.pt-l {
  padding-top: 90px;
}

@media (min-width: 48em) {
  .pt-l {
    padding-top: 128px;
  }
}

.pt-0 {
  padding-top: 1px;
}

.pb-t {
  padding-bottom: 1px;
}

@media (min-width: 48em) {
  .pb-t {
    padding-bottom: 24px;
  }
}

.pb-s {
  padding-bottom: 1px;
}

@media (min-width: 48em) {
  .pb-s {
    padding-bottom: 48px;
  }
}

.pb-m {
  padding-bottom: 1px;
}

@media (min-width: 48em) {
  .pb-m {
    padding-bottom: 72px;
  }
}

.pb-l {
  padding-bottom: 1px;
}

@media (min-width: 48em) {
  .pb-l {
    padding-bottom: 128px;
  }
}

.pb-0 {
  padding-bottom: 1px;
}

.pd.pb-m {
  padding-bottom: 36px;
}

@media (min-width: 48em) {
  .pd.pb-m {
    padding-bottom: 80px;
  }
}

.pd.pb-m .wysiwig-editor p:last-of-type:not(:only-of-type) {
  margin-bottom: 0;
}

.mt-s {
  margin-top: 30px;
}

.mt-l {
  margin-top: 50px;
}

@media (min-width: 48em) {
  .mt-l {
    margin-top: 70px;
  }
}

.mb-s {
  margin-bottom: 30px;
}

.mb-l {
  margin-bottom: 50px;
}

@media (min-width: 48em) {
  .mb-l {
    margin-bottom: 70px;
  }
}

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

html {
  margin-top: 0 !important;
}

html #wpadminbar {
  width: 33px;
  min-width: 1px;
  overflow: hidden;
  -webkit-transition: .4s width;
  -o-transition: .4s width;
  transition: .4s width;
  -webkit-transition-delay: 3s;
       -o-transition-delay: 3s;
          transition-delay: 3s;
}

html #wpadminbar:hover {
  width: 100%;
  overflow: visible;
  -webkit-transition-delay: 0s;
       -o-transition-delay: 0s;
          transition-delay: 0s;
}

.c-404-page {
  padding: 120px 0;
  text-align: center;
}

.c-top {
  z-index: 600;
  top: 0;
  left: 0;
  width: 100%;
  -webkit-transition: .5s;
  -o-transition: .5s;
  transition: .5s;
  padding: 16px 0;
  background: transparent;
}

@media (min-width: 48em) {
  .c-top {
    padding: 24px 0;
  }
}

.c-top.fixed:not(.menu-open) {
  position: fixed;
  background: #ffffff;
  padding: 6px 0;
}

@media (min-width: 48em) {
  .c-top.fixed:not(.menu-open) {
    padding: 12px 0;
  }
}

@media (max-width: 62.49em) {
  .c-top.menu-open {
    height: 100%;
    z-index: 750;
    overflow: auto;
  }
}

.c-header {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

@media (max-width: 62.49em) {
  .c-header {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    height: 100%;
  }
}

.c-header__logo {
  margin-right: 16px;
}

.c-header__nav-toggle {
  display: inline-block;
  vertical-align: middle;
  color: #000000;
  position: relative;
  z-index: 700;
  -webkit-transition: 0.3s;
  -o-transition: 0.3s;
  transition: 0.3s;
  width: 40px;
  height: 40px;
  margin-left: 6px;
}

@media (min-width: 62.5em) {
  .c-header__nav-toggle {
    display: none !important;
  }
}

.c-header__nav-toggle span, .c-header__nav-toggle:before, .c-header__nav-toggle:after {
  content: "";
  display: block;
  position: absolute;
  right: 0;
  height: 3px;
  width: 28px;
  background-color: #000000;
  -webkit-transition: 0.5s;
  -o-transition: 0.5s;
  transition: 0.5s;
  margin-top: 12px;
}

.c-header__nav-toggle::before {
  top: 0px;
}

.c-header__nav-toggle span {
  top: 8px;
}

.c-header__nav-toggle::after {
  top: 16px;
}

.menu-open .c-header__nav-toggle:before, .menu-open .c-header__nav-toggle:after {
  top: 10px;
}

.menu-open .c-header__nav-toggle span {
  opacity: 0;
}

.menu-open .c-header__nav-toggle::before {
  -webkit-transform: rotate(-45deg);
      -ms-transform: rotate(-45deg);
          transform: rotate(-45deg);
}

.menu-open .c-header__nav-toggle::after {
  -webkit-transform: rotate(45deg);
      -ms-transform: rotate(45deg);
          transform: rotate(45deg);
}

.c-svgicon--logo {
  width: 197px;
  height: 34px;
}

.alignleft,
.alignright,
.aligncenter,
.alignnone {
  display: block;
  overflow: hidden;
  height: auto;
  margin-bottom: 1.5em;
  background: color("white");
  border-radius: 3px;
  -webkit-box-shadow: 0 0 4px rgba(0, 0, 0, 0.1);
          box-shadow: 0 0 4px rgba(0, 0, 0, 0.1);
}

.alignleft img,
.alignright img,
.aligncenter img,
.alignnone img {
  display: block;
  height: auto;
}

.size-full,
.alignnone img {
  width: 100%;
}

.alignleft {
  width: 100%;
  margin-bottom: 0.75em;
}

@media (min-width: 48em) {
  .alignleft {
    width: 40%;
    max-width: 40%;
    float: left;
    clear: left;
    margin-right: 1.5em;
  }
}

.alignleft img {
  display: block;
}

.alignright {
  width: 100%;
  margin-bottom: 0.75em;
}

@media (min-width: 48em) {
  .alignright {
    float: right;
    width: 40%;
    max-width: 40%;
    clear: right;
    margin-left: 1.5em;
  }
}

.aligncenter {
  max-width: 100%;
  margin-left: auto;
  margin-right: auto;
}

.alignnone {
  width: 100%;
  min-width: 100%;
  max-width: 100%;
}

.wp-caption-text {
  margin: 6px 12px;
  font-size: 14px;
  font-size: 0.875rem;
  line-height: 1.71429;
  font-style: italic;
  text-align: center;
}

.c-site-nav {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}

@media (max-width: 62.49em) {
  .c-site-nav {
    display: none;
    -webkit-box-ordinal-group: 4;
        -ms-flex-order: 3;
            order: 3;
    -webkit-box-flex: 0;
        -ms-flex: 0 0 100%;
            flex: 0 0 100%;
    margin: 100px 0 36px;
  }
  .menu-open .c-site-nav {
    display: block;
  }
}

.c-nav {
  list-style: none;
  margin-bottom: 0;
  margin: 0;
}

.c-nav li {
  display: block;
  margin-bottom: 24px;
}

@media (min-width: 62.5em) {
  .c-nav li {
    margin: 0;
    padding-left: 32px;
    display: inline-block;
  }
}

.c-nav li a {
  display: inline-block;
}

.c-nav li a:hover {
  text-decoration: none;
  color: #000000;
}

.c-nav li.current-menu-item a {
  color: #000000;
}

.c-page-nav {
  margin-top: 36px;
  padding-top: 12px;
  border-top: 1px solid #000000;
  text-align: center;
}

.c-page-nav .page-numbers {
  display: inline-block;
  padding: 4px 6px;
  color: #000000;
  text-decoration: none;
}

.c-page-nav .page-numbers:hover, .c-page-nav .page-numbers.current {
  color: black;
}

html:has(body.home) {
  overflow: hidden;
}

body {
  background-color: black;
}

body.home {
  overflow: hidden;
  width: 100%;
  background-color: #242723;
}

body.home .bg-wrapper {
  overflow: hidden;
  width: 100%;
  position: absolute;
  inset: 0;
  max-width: 100%;
  z-index: -1;
}

body.home .bg-wrapper .bg {
  background-color: black;
  background-repeat: no-repeat;
  background-size: cover;
  position: absolute;
  inset: 0;
  z-index: -2;
  width: 100vw;
  height: 100vh;
  overflow: hidden !important;
}

@media (max-width: 47.99em) {
  body.home .bg-wrapper .bg {
    background-image: url("../img/bg-pattern-mobile.svg?1");
  }
}

body.home #Main {
  position: absolute;
  inset: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  padding: 65px;
}

@media (max-width: 47.99em) {
  body.home #Main {
    padding: 21px;
  }
}

body.home .content {
  opacity: 0;
  /* Initial state */
  -webkit-animation: fadeIn 1s ease-out forwards;
          animation: fadeIn 1s ease-out forwards;
  /* Apply the animation */
  -webkit-animation-delay: 2s;
          animation-delay: 2s;
  /* Delay before the animation starts */
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
}

@media (max-width: 47.99em) {
  body.home .content {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 50px;
  }
}

body.home .content .copy {
  max-width: 724px;
}

body.home .content h1 {
  color: white;
  font-family: "Red Hat Display";
  font-size: 45px;
  font-weight: 600;
  line-height: 113.5%;
  /* 51.075px */
  letter-spacing: 0.9px;
  margin-bottom: 31px;
}

@media (max-width: 47.99em) {
  body.home .content h1 {
    font-size: 27px;
  }
}

body.home .content p {
  color: white;
  margin-bottom: 0;
  font-size: 22px;
  font-weight: 400;
  line-height: 135%;
  /* 29.7px */
  letter-spacing: -0.22px;
}

body.home .enquire-logo {
  position: relative;
}

@media (min-width: 48em) {
  body.home .enquire-logo {
    cursor: pointer;
  }
}

body.home .enquire-logo svg {
  -webkit-animation: rotating-back 0.3s linear forwards;
          animation: rotating-back 0.3s linear forwards;
  width: 120px;
  color: white;
  -webkit-transition: color 0.2s ease;
  -o-transition: color 0.2s ease;
  transition: color 0.2s ease;
}

@media (max-width: 47.99em) {
  body.home .enquire-logo svg {
    width: 80px;
  }
}

body.home .enquire-logo .quarter {
  width: 15px;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%) rotateY(90deg) rotateX(90deg);
          transform: translate(-50%, -50%) rotateY(90deg) rotateX(90deg);
  -webkit-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}

body.home .enquire-logo:hover svg {
  -webkit-animation: rotating 0.3s linear forwards;
          animation: rotating 0.3s linear forwards;
  color: #c8da2e;
}

body.home .enquire-logo:hover img {
  height: 15px;
  -webkit-transform: translate(-50%, -50%) rotateY(0deg) rotateX(0deg);
          transform: translate(-50%, -50%) rotateY(0deg) rotateX(0deg);
}

@media (min-width: 48em) {
  body.home.show-form .contact_form {
    right: 10%;
  }
}

@media (max-width: 47.99em) {
  body.home.show-form .contact_form {
    bottom: 0;
    height: 100dvh;
    left: 0;
  }
}

body.home.show-form .overlay {
  position: fixed;
  inset: 0;
  background: #0000008a;
  z-index: 0;
}

.logo {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 100%;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  max-width: 609px;
  -webkit-animation: slideIn 1s ease-in-out forwards, moveAndResize 0.6s ease-in-out 2s forwards;
          animation: slideIn 1s ease-in-out forwards, moveAndResize 0.6s ease-in-out 2s forwards;
}

@media (max-width: 47.99em) {
  .logo {
    max-width: 309px;
    -webkit-animation: slideIn 1s ease-in-out forwards, moveAndResizeMobile 0.6s ease-in-out 2s forwards;
            animation: slideIn 1s ease-in-out forwards, moveAndResizeMobile 0.6s ease-in-out 2s forwards;
  }
}

.contact_form {
  border: 1px solid rgba(250, 250, 250, 0.25);
  background: #2a2d29;
  position: absolute;
  width: 100%;
  max-width: 624px;
  -webkit-transition: all 0.9s ease;
  -o-transition: all 0.9s ease;
  transition: all 0.9s ease;
  z-index: 10;
  padding: 0;
}

.contact_form .close-me {
  width: 25px;
  position: absolute;
  top: 24px;
  right: 24px;
  cursor: pointer;
}

.contact_form .wpcf7 {
  padding: 0 40px 60px;
  margin-top: 80px;
}

@media (min-width: 48em) {
  .contact_form {
    top: 50%;
    -webkit-transform: translate(0, -50%);
        -ms-transform: translate(0, -50%);
            transform: translate(0, -50%);
    right: -130%;
  }
}

@media (max-width: 47.99em) {
  .contact_form {
    bottom: -140%;
    left: 0;
    max-width: 800px !important;
  }
  .contact_form .wpcf7 {
    overflow: auto;
    height: calc(100vh - 80px);
  }
}

.contact_form a,
.contact_form label {
  color: #929391;
}

.contact_form form > div {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 24px;
  margin-bottom: 24px;
}

@media (max-width: 47.99em) {
  .contact_form form > div {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}

.contact_form form .wpcf7-submit:hover {
  text-decoration: none;
  color: #000000;
  background-color: #c8da2e;
  color: #242723;
  border-color: #c8da2e;
}

.contact_form form .terms {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  margin-top: 30px;
  gap: 10px;
  position: relative;
}

.contact_form form .terms .wpcf7-list-item {
  position: relative;
  cursor: pointer;
}

body.show-policy .policy_popup.policy {
  opacity: 1;
  visibility: visible;
}

body.show-terms .policy_popup.terms {
  opacity: 1;
  visibility: visible;
}

.policy_popup {
  background-color: #2A2D29;
  color: white;
  position: fixed;
  inset: 0;
  padding: 60px 0 0 40px;
  opacity: 0;
  visibility: hidden;
  -webkit-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
  z-index: 99;
}

.policy_popup .close-me {
  width: 15px;
  position: absolute;
  top: 20px;
  right: 20px;
  cursor: pointer;
}

.policy_popup .scroll_area {
  overflow-y: auto;
  height: calc(100dvh - 60px);
  padding-right: 40px;
  /* Track */
  /* Handle */
  /* Handle on hover */
}

.policy_popup .scroll_area::-webkit-scrollbar {
  width: 8px;
}

.policy_popup .scroll_area::-webkit-scrollbar-track {
  background: transparent;
}

.policy_popup .scroll_area::-webkit-scrollbar-thumb {
  background: #888;
}

.policy_popup .scroll_area::-webkit-scrollbar-thumb:hover {
  background: #c8da2e;
}

.policy_popup h2 {
  color: #c8da2e;
  font-size: 45px;
  font-weight: 600;
  max-width: 900px;
}

.policy_popup .policy_content {
  max-width: 900px;
  font-size: 18px;
}

.policy_popup .policy_content p {
  font-size: 18px;
  font-weight: 400;
}

body.single-ra_job, body.page-template-tmpl-flexible-blocks {
  overflow: auto;
}

body.single-ra_job *, body.page-template-tmpl-flexible-blocks * {
  color: white;
}

body.single-ra_job header, body.page-template-tmpl-flexible-blocks header {
  padding: 40px 0;
}

body.single-ra_job header img, body.page-template-tmpl-flexible-blocks header img {
  max-width: 230px;
}

.single-ra_job,
.page-template-tmpl-jobadder {
  background-color: black;
}

.single-ra_job header,
.page-template-tmpl-jobadder header {
  padding: 40px 0;
}

.single-ra_job header img,
.page-template-tmpl-jobadder header img {
  max-width: 230px;
}

.single-ra_job #Main,
.page-template-tmpl-jobadder #Main {
  position: relative;
  padding: 50px 0 100px;
}

.single-ra_job *,
.page-template-tmpl-jobadder * {
  color: white;
}

.single-ra_job svg,
.page-template-tmpl-jobadder svg {
  width: 10px;
}

.single-ra_job .jobs__wrapper,
.page-template-tmpl-jobadder .jobs__wrapper {
  border: 1px solid #444444;
  border-radius: 0.75rem;
}

.single-ra_job .jobs__filter,
.page-template-tmpl-jobadder .jobs__filter {
  padding: 1rem;
  border-bottom: 1px solid #444444;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 1rem;
}

@media (max-width: 47.99em) {
  .single-ra_job .jobs__filter,
  .page-template-tmpl-jobadder .jobs__filter {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}

.single-ra_job .jobs__filter .filter-dropdown,
.page-template-tmpl-jobadder .jobs__filter .filter-dropdown {
  position: relative;
}

.single-ra_job .jobs__filter .filter-dropdown select,
.page-template-tmpl-jobadder .jobs__filter .filter-dropdown select {
  border: 1px solid #444444;
  border-radius: 0.5rem;
}

.single-ra_job .jobs__filter .filter-dropdown .chevron,
.page-template-tmpl-jobadder .jobs__filter .filter-dropdown .chevron {
  position: absolute;
  pointer-events: none;
  top: 8px;
  right: 0.75rem;
}

.single-ra_job .jobs__filter .search-filter,
.page-template-tmpl-jobadder .jobs__filter .search-filter {
  margin-right: 0;
  margin-left: auto;
}

@media (max-width: 47.99em) {
  .single-ra_job .jobs__filter .search-filter,
  .page-template-tmpl-jobadder .jobs__filter .search-filter {
    width: 100%;
  }
}

.single-ra_job .jobs__filter .search-filter input,
.page-template-tmpl-jobadder .jobs__filter .search-filter input {
  border: 1px solid #444444;
  padding: 0.5rem 1rem;
  border-radius: 0.5rem;
}

.single-ra_job .jobs__filter .search-filter input::-webkit-input-placeholder,
.page-template-tmpl-jobadder .jobs__filter .search-filter input::-webkit-input-placeholder {
  /* Chrome/Opera/Safari */
  color: #9ca3af;
}

.single-ra_job .jobs__filter .search-filter input::-moz-placeholder,
.page-template-tmpl-jobadder .jobs__filter .search-filter input::-moz-placeholder {
  /* Firefox 19+ */
  color: #9ca3af;
}

.single-ra_job .jobs__filter .search-filter input:-ms-input-placeholder,
.page-template-tmpl-jobadder .jobs__filter .search-filter input:-ms-input-placeholder {
  /* IE 10+ */
  color: #9ca3af;
}

.single-ra_job .jobs__filter .search-filter input:-moz-placeholder,
.page-template-tmpl-jobadder .jobs__filter .search-filter input:-moz-placeholder {
  /* Firefox 18- */
  color: #9ca3af;
}

.single-ra_job .jobs__filter .search-filter input:focus,
.page-template-tmpl-jobadder .jobs__filter .search-filter input:focus {
  border-color: #c8da2e;
}

.single-ra_job .job-row,
.page-template-tmpl-jobadder .job-row {
  border-bottom: 1px solid #444444;
  padding: 24px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1.5rem;
}

@media (max-width: 47.99em) {
  .single-ra_job .job-row,
  .page-template-tmpl-jobadder .job-row {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    gap: 0.5rem;
  }
}

.single-ra_job .job-row:has(.no-job),
.page-template-tmpl-jobadder .job-row:has(.no-job) {
  background-color: rgba(200, 218, 46, 0.1);
}

.single-ra_job .job-row p.no-job,
.page-template-tmpl-jobadder .job-row p.no-job {
  text-align: center;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  font-weight: 500;
  margin-bottom: 0;
}

.single-ra_job .job-row h4,
.page-template-tmpl-jobadder .job-row h4 {
  margin-bottom: 0;
}

.single-ra_job .job-row .tags,
.page-template-tmpl-jobadder .job-row .tags {
  margin-bottom: 0.75rem;
}

.single-ra_job .job-row .tags span,
.page-template-tmpl-jobadder .job-row .tags span {
  color: #9ca3af;
  font-size: 0.875rem;
  line-height: 1.25rem;
}

.single-ra_job .job-row:hover,
.page-template-tmpl-jobadder .job-row:hover {
  background-color: rgba(200, 218, 46, 0.1);
  -webkit-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}

.single-ra_job .job-row a,
.page-template-tmpl-jobadder .job-row a {
  color: #c8da2e;
  font-weight: 700;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 5px;
  white-space: nowrap;
}

.single-ra_job .job-row a svg,
.page-template-tmpl-jobadder .job-row a svg {
  left: 0;
  position: relative;
  -webkit-transition: all 0.2s ease;
  -o-transition: all 0.2s ease;
  transition: all 0.2s ease;
  width: 15px;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.single-ra_job .job-row a svg path,
.page-template-tmpl-jobadder .job-row a svg path {
  color: #c8da2e;
}

.single-ra_job .job-row a:hover svg,
.page-template-tmpl-jobadder .job-row a:hover svg {
  left: 5px;
}

.single-ra_job .pagination,
.page-template-tmpl-jobadder .pagination {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 1.5rem;
}

.single-ra_job .pagination__pages,
.page-template-tmpl-jobadder .pagination__pages {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 3px;
}

.single-ra_job .pagination__pages button,
.page-template-tmpl-jobadder .pagination__pages button {
  -webkit-transition: all 150ms cubic-bezier(0.4, 0, 0.2, 1);
  -o-transition: all 150ms cubic-bezier(0.4, 0, 0.2, 1);
  transition: all 150ms cubic-bezier(0.4, 0, 0.2, 1);
  color: #9ca3af;
  padding: 0.25rem 0.75rem;
  border-color: #374151;
  border-radius: 0.25rem;
  line-height: 1.5;
}

.single-ra_job .pagination__pages button.active,
.page-template-tmpl-jobadder .pagination__pages button.active {
  background-color: #c8da2e;
  color: #000000;
}

.single-ra_job .pagination__pages button:hover,
.page-template-tmpl-jobadder .pagination__pages button:hover {
  background-color: transparent;
  border-color: #c8da2e;
}

.single-ra_job .job-details {
  max-width: 800px;
}

.single-ra_job .job-details .job_tags {
  margin-bottom: 30px;
}

.single-ra_job .job-details .job_tags .job_tag {
  margin-bottom: 0;
}

.single-ra_job .job-details .job_tags .job_tag span {
  font-weight: bold;
}

.single-ra_job .back-link {
  margin-bottom: 20px;
}

.single-ra_job .back-link a {
  color: #c8da2e;
  font-weight: 700;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  gap: 5px;
  white-space: nowrap;
}

.single-ra_job .back-link a svg {
  left: 0;
  position: relative;
  -webkit-transition: all 0.2s ease;
  -o-transition: all 0.2s ease;
  transition: all 0.2s ease;
  width: 15px;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  rotate: 180deg;
}

.single-ra_job .back-link a svg path {
  color: #c8da2e;
}

.single-ra_job .back-link a:hover svg {
  left: -10px;
}

.single-ra_job .cta {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 20px;
}

.single-ra_job .cta .mail-link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 13px;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.single-ra_job .cta .mail-link svg {
  width: 12px;
}

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNjcmVlbi5jc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvaW51aXRjc3MvZ2VuZXJpYy9fZ2VuZXJpYy5ib3gtc2l6aW5nLnNjc3MiLCJzZXR0aW5ncy9mb250cy5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2ludWl0Y3NzL2dlbmVyaWMvX2dlbmVyaWMubm9ybWFsaXplLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvaW51aXRjc3MvZ2VuZXJpYy9fZ2VuZXJpYy5yZXNldC5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2ludWl0Y3NzL2dlbmVyaWMvX2dlbmVyaWMuc2hhcmVkLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvaW51aXRjc3Mvc2V0dGluZ3MvX3NldHRpbmdzLmNvcmUuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9zbGljay1jYXJvdXNlbC9zbGljay9zbGljay5zY3NzIiwiZWxlbWVudHMvaW1hZ2VzLnNjc3MiLCJlbGVtZW50cy9oZWFkaW5ncy5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2ludWl0Y3NzL3Rvb2xzL190b29scy5mb250LXNpemUuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9zYXNzLW1xL19tcS5zY3NzIiwiZWxlbWVudHMvZm9ybXMuc2NzcyIsInNldHRpbmdzL2NvbG9ycy5zY3NzIiwiZWxlbWVudHMvdHlwZS5zY3NzIiwiZWxlbWVudHMvbGlua3Muc2NzcyIsImVsZW1lbnRzL3BhZ2Uuc2NzcyIsInNldHRpbmdzL2RlZmF1bHRzLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvaW51aXRjc3Mvb2JqZWN0cy9fb2JqZWN0cy5sYXlvdXQuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9pbnVpdGNzcy9vYmplY3RzL19vYmplY3RzLnJhdGlvLnNjc3MiLCJvYmplY3RzL3dyYXBwZXJzLnNjc3MiLCJ0b29scy9hbGlhc2VzLnNjc3MiLCJvYmplY3RzL2J1dHRvbnMuc2NzcyIsIm9iamVjdHMvbGF5b3V0LnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvaW51aXRjc3MvdXRpbGl0aWVzL191dGlsaXRpZXMud2lkdGhzLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvaW51aXRjc3MvdXRpbGl0aWVzL191dGlsaXRpZXMucHJpbnQuc2NzcyIsInV0aWxpdGllcy9za2lwLnNjc3MiLCJ1dGlsaXRpZXMvYW5pbWF0aW9uLnNjc3MiLCJ1dGlsaXRpZXMvbWlzYy5zY3NzIiwiY29tcG9uZW50cy80MDQtcGFnZS5zY3NzIiwiY29tcG9uZW50cy9oZWFkZXIuc2NzcyIsImNvbXBvbmVudHMvaWNvbnMuc2NzcyIsImNvbXBvbmVudHMvbWVkaWEuc2NzcyIsInRvb2xzL2Z1bmN0aW9ucy5zY3NzIiwiY29tcG9uZW50cy9wYWdlLW5hdi5zY3NzIiwicGFnZXMvZnJvbnQuc2NzcyIsInBhZ2VzL2pvYmFkZGVyLnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsaUJBQWlCO0FDQWpCOztnRkFFZ0Y7QUFFaEY7OztHQUdHO0FDRUgscUhBQVk7QURBWjtFQUNFLCtCQUFzQjtVQUF0Qix1QkFBc0I7Q0FDdkI7O0FBRUQ7RUFLSSw0QkFBbUI7VUFBbkIsb0JBQW1CO0NBQ3BCOztBRW5CSCw0RUFBNEU7QUFFNUU7Z0ZBQ2dGO0FBRWhGOzs7O0dBSUc7QUZBSDtFRUdFLGtCQUFpQjtFQUFFLE9BQU87RUFDMUIsMkJBQTBCO0VBQUUsT0FBTztFQUNuQywrQkFBOEI7RUFBRSxPQUFPO0NBQ3hDOztBQUVEO2dGQUNnRjtBQUVoRjs7R0FFRztBQUVIO0VBQ0UsVUFBUztDQUNWOztBQUVEOztHQUVHO0FBRUg7Ozs7OztFQU1FLGVBQWM7Q0FDZjs7QUFFRDs7O0dBR0c7QUFFSDtFQUNFLGVBQWM7RUFDZCxpQkFBZ0I7Q0FDakI7O0FBRUQ7Z0ZBQ2dGO0FBRWhGOzs7R0FHRztBQUVIOzs7RUFFTyxPQUFPO0VBQ1osZUFBYztDQUNmOztBQUVEOztHQUVHO0FBRUg7RUFDRSxpQkFBZ0I7Q0FDakI7O0FBRUQ7OztHQUdHO0FBRUg7RUFDRSxnQ0FB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QkFBb0Q7R0FDckQ7RUFJQzs7V0FFRztFQUlIO0lBQ0UsOEJBQTZCO0lBQzdCLHVCQUFzQjtJQUFFLFNBQVM7SUFDakMsc0JBQW1EO0dBQ3BEO0VBSUQ7SUFDRSw4QkFBNkI7SUFDN0IsdUJBQW9EO0lBQ3BELHNCQUFxQjtJQUFFLFNBQVM7R0FDakM7RUF4Qkg7SUFDRSxzQkFBb0Q7R0FDckQ7RUFJQzs7V0FFRztFQUlIO0lBQ0UsOEJBQTZCO0lBQzdCLHVCQUFzQjtJQUFFLFNBQVM7SUFDakMscUJBQW1EO0dBQ3BEO0VBSUQ7SUFDRSw4QkFBNkI7SUFDN0Isc0JBQW9EO0lBQ3BELHNCQUFxQjtJQUFFLFNBQVM7R0FDakM7RUF4Qkg7SUFDRSxzQkFBb0Q7R0FDckQ7RUFJQzs7V0FFRztFQUlIO0lBQ0UsOEJBQTZCO0lBQzdCLHVCQUFzQjtJQUFFLFNBQVM7SUFDakMscUJBQW1EO0dBQ3BEO0VBSUQ7SUFDRSw4QkFBNkI7SUFDN0Isc0JBQW9EO0lBQ3BELHNCQUFxQjtJQUFFLFNBQVM7R0FDakM7RUF4Qkg7SUFDRSxzQkFBb0Q7R0FDckQ7RUFJQzs7V0FFRztFQUlIO0lBQ0UsOEJBQTZCO0lBQzdCLHVCQUFzQjtJQUFFLFNBQVM7SUFDakMscUJBQW1EO0dBQ3BEO0VBSUQ7SUFDRSw4QkFBNkI7SUFDN0Isc0JBQW9EO0lBQ3BELHNCQUFxQjtJQUFFLFNBQVM7R0FDakM7RUF4Qkg7SUFDRSx1QkFBb0Q7R0FDckQ7RUFJQzs7V0FFRztFQUlIO0lBQ0UsOEJBQTZCO0lBQzdCLHVCQUFzQjtJQUFFLFNBQVM7SUFDakMsc0JBQW1EO0dBQ3BEO0VBSUQ7SUFDRSw4QkFBNkI7SUFDN0IsdUJBQW9EO0lBQ3BELHNCQUFxQjtJQUFFLFNBQVM7R0FDakM7RUF4Qkg7SUFDRSxzQkFBb0Q7R0FDckQ7RUFJQzs7V0FFRztFQUlIO0lBQ0UsOEJBQTZCO0lBQzdCLHVCQUFzQjtJQUFFLFNBQVM7SUFDakMscUJBQW1EO0dBQ3BEO0VBSUQ7SUFDRSw4QkFBNkI7SUFDN0Isc0JBQW9EO0lBQ3BELHNCQUFxQjtJQUFFLFNBQVM7R0FDakM7RUF4Qkg7SUFDRSxzQkFBb0Q7R0FDckQ7RUFJQzs7V0FFRztFQUlIO0lBQ0UsOEJBQTZCO0lBQzdCLHVCQUFzQjtJQUFFLFNBQVM7SUFDakMscUJBQW1EO0dBQ3BEO0VBSUQ7SUFDRSw4QkFBNkI7SUFDN0Isc0JBQW9EO0lBQ3BELHNCQUFxQjtJQUFFLFNBQVM7R0FDakM7RUF4Qkg7SUFDRSxzQkFBb0Q7R0FDckQ7RUFJQzs7V0FFRztFQUlIO0lBQ0UsOEJBQTZCO0lBQzdCLHVCQUFzQjtJQUFFLFNBQVM7SUFDakMscUJBQW1EO0dBQ3BEO0VBSUQ7SUFDRSw4QkFBNkI7SUFDN0Isc0JBQW9EO0lBQ3BELHNCQUFxQjtJQUFFLFNBQVM7R0FDakM7RUF4Qkg7SUFDRSxzQkFBb0Q7R0FDckQ7RUFJQzs7V0FFRztFQUlIO0lBQ0UsOEJBQTZCO0lBQzdCLHVCQUFzQjtJQUFFLFNBQVM7SUFDakMscUJBQW1EO0dBQ3BEO0VBSUQ7SUFDRSw4QkFBNkI7SUFDN0Isc0JBQW9EO0lBQ3BELHNCQUFxQjtJQUFFLFNBQVM7R0FDakM7RUF4Qkg7SUFDRSx1QkFBb0Q7R0FDckQ7RUFJQzs7V0FFRztFQUlIO0lBQ0UsOEJBQTZCO0lBQzdCLHVCQUFzQjtJQUFFLFNBQVM7SUFDakMsc0JBQW1EO0dBQ3BEO0VBSUQ7SUFDRSw4QkFBNkI7SUFDN0IsdUJBQW9EO0lBQ3BELHNCQUFxQjtJQUFFLFNBQVM7R0FDakM7RUF4Qkg7SUFDRSw0QkFBb0Q7R0FDckQ7RUFJQzs7V0FFRztFQUlIO0lBQ0UsOEJBQTZCO0lBQzdCLHVCQUFzQjtJQUFFLFNBQVM7SUFDakMsMkJBQW1EO0dBQ3BEO0VBSUQ7SUFDRSw4QkFBNkI7SUFDN0IsNEJBQW9EO0lBQ3BELHNCQUFxQjtJQUFFLFNBQVM7R0FDakM7RUF4Qkg7SUFDRSw0QkFBb0Q7R0FDckQ7RUFJQzs7V0FFRztFQUlIO0lBQ0UsOEJBQTZCO0lBQzdCLHVCQUFzQjtJQUFFLFNBQVM7SUFDakMsMkJBQW1EO0dBQ3BEO0VBSUQ7SUFDRSw4QkFBNkI7SUFDN0IsNEJBQW9EO0lBQ3BELHNCQUFxQjtJQUFFLFNBQVM7R0FDakM7RUF4Qkg7SUFDRSxzQkFBb0Q7R0FDckQ7RUFJQzs7V0FFRztFQUlIO0lBQ0UsOEJBQTZCO0lBQzdCLHVCQUFzQjtJQUFFLFNBQVM7SUFDakMscUJBQW1EO0dBQ3BEO0VBSUQ7SUFDRSw4QkFBNkI7SUFDN0Isc0JBQW9EO0lBQ3BELHNCQUFxQjtJQUFFLFNBQVM7R0FDakM7RUF4Qkg7SUFDRSw0QkFBb0Q7R0FDckQ7RUFJQzs7V0FFRztFQUlIO0lBQ0UsOEJBQTZCO0lBQzdCLHVCQUFzQjtJQUFFLFNBQVM7SUFDakMsMkJBQW1EO0dBQ3BEO0VBSUQ7SUFDRSw4QkFBNkI7SUFDN0IsNEJBQW9EO0lBQ3BELHNCQUFxQjtJQUFFLFNBQVM7R0FDakM7RUF4Qkg7SUFDRSw0QkFBb0Q7R0FDckQ7RUFJQzs7V0FFRztFQUlIO0lBQ0UsOEJBQTZCO0lBQzdCLHVCQUFzQjtJQUFFLFNBQVM7SUFDakMsMkJBQW1EO0dBQ3BEO0VBSUQ7SUFDRSw4QkFBNkI7SUFDN0IsNEJBQW9EO0lBQ3BELHNCQUFxQjtJQUFFLFNBQVM7R0FDakM7RUF4Qkg7SUFDRSx1QkFBb0Q7R0FDckQ7RUFJQzs7V0FFRztFQUlIO0lBQ0UsOEJBQTZCO0lBQzdCLHVCQUFzQjtJQUFFLFNBQVM7SUFDakMsc0JBQW1EO0dBQ3BEO0VBSUQ7SUFDRSw4QkFBNkI7SUFDN0IsdUJBQW9EO0lBQ3BELHNCQUFxQjtJQUFFLFNBQVM7R0FDakM7RUF4Qkg7SUFDRSw0QkFBb0Q7R0FDckQ7RUFJQzs7V0FFRztFQUlIO0lBQ0UsOEJBQTZCO0lBQzdCLHVCQUFzQjtJQUFFLFNBQVM7SUFDakMsMkJBQW1EO0dBQ3BEO0VBSUQ7SUFDRSw4QkFBNkI7SUFDN0IsNEJBQW9EO0lBQ3BELHNCQUFxQjtJQUFFLFNBQVM7R0FDakM7RUF4Qkg7SUFDRSw0QkFBb0Q7R0FDckQ7RUFJQzs7V0FFRztFQUlIO0lBQ0UsOEJBQTZCO0lBQzdCLHVCQUFzQjtJQUFFLFNBQVM7SUFDakMsMkJBQW1EO0dBQ3BEO0VBSUQ7SUFDRSw4QkFBNkI7SUFDN0IsNEJBQW9EO0lBQ3BELHNCQUFxQjtJQUFFLFNBQVM7R0FDakM7RUF4Qkg7SUFDRSw0QkFBb0Q7R0FDckQ7RUFJQzs7V0FFRztFQUlIO0lBQ0UsOEJBQTZCO0lBQzdCLHVCQUFzQjtJQUFFLFNBQVM7SUFDakMsMkJBQW1EO0dBQ3BEO0VBSUQ7SUFDRSw4QkFBNkI7SUFDN0IsNEJBQW9EO0lBQ3BELHNCQUFxQjtJQUFFLFNBQVM7R0FDakM7RUF4Qkg7SUFDRSw0QkFBb0Q7R0FDckQ7RUFJQzs7V0FFRztFQUlIO0lBQ0UsOEJBQTZCO0lBQzdCLHVCQUFzQjtJQUFFLFNBQVM7SUFDakMsMkJBQW1EO0dBQ3BEO0VBSUQ7SUFDRSw4QkFBNkI7SUFDN0IsNEJBQW9EO0lBQ3BELHNCQUFxQjtJQUFFLFNBQVM7R0FDakM7RUF4Qkg7SUFDRSw0QkFBb0Q7R0FDckQ7RUFJQzs7V0FFRztFQUlIO0lBQ0UsOEJBQTZCO0lBQzdCLHVCQUFzQjtJQUFFLFNBQVM7SUFDakMsMkJBQW1EO0dBQ3BEO0VBSUQ7SUFDRSw4QkFBNkI7SUFDN0IsNEJBQW9EO0lBQ3BELHNCQUFxQjtJQUFFLFNBQVM7R0FDakM7RUF4Qkg7SUFDRSw0QkFBb0Q7R0FDckQ7RUFJQzs7V0FFRztFQUlIO0lBQ0UsOEJBQTZCO0lBQzdCLHVCQUFzQjtJQUFFLFNBQVM7SUFDakMsMkJBQW1EO0dBQ3BEO0VBSUQ7SUFDRSw4QkFBNkI7SUFDN0IsNEJBQW9EO0lBQ3BELHNCQUFxQjtJQUFFLFNBQVM7R0FDakM7RUF4Qkg7SUFDRSx1QkFBb0Q7R0FDckQ7RUFJQzs7V0FFRztFQUlIO0lBQ0UsOEJBQTZCO0lBQzdCLHVCQUFzQjtJQUFFLFNBQVM7SUFDakMsc0JBQW1EO0dBQ3BEO0VBSUQ7SUFDRSw4QkFBNkI7SUFDN0IsdUJBQW9EO0lBQ3BELHNCQUFxQjtJQUFFLFNBQVM7R0FDakM7RUF4Qkg7SUFDRSx3QkFBb0Q7R0FDckQ7RUFJQzs7V0FFRztFQUlIO0lBQ0UsOEJBQTZCO0lBQzdCLHVCQUFzQjtJQUFFLFNBQVM7SUFDakMsdUJBQW1EO0dBQ3BEO0VBSUQ7SUFDRSw4QkFBNkI7SUFDN0Isd0JBQW9EO0lBQ3BELHNCQUFxQjtJQUFFLFNBQVM7R0FDakM7RUF4Qkg7SUFDRSxzQkFBb0Q7R0FDckQ7RUFJQzs7V0FFRztFQUlIO0lBQ0UsOEJBQTZCO0lBQzdCLHVCQUFzQjtJQUFFLFNBQVM7SUFDakMscUJBQW1EO0dBQ3BEO0VBSUQ7SUFDRSw4QkFBNkI7SUFDN0Isc0JBQW9EO0lBQ3BELHNCQUFxQjtJQUFFLFNBQVM7R0FDakM7RUF4Qkg7SUFDRSx3QkFBb0Q7R0FDckQ7RUFJQzs7V0FFRztFQUlIO0lBQ0UsOEJBQTZCO0lBQzdCLHVCQUFzQjtJQUFFLFNBQVM7SUFDakMsdUJBQW1EO0dBQ3BEO0VBSUQ7SUFDRSw4QkFBNkI7SUFDN0Isd0JBQW9EO0lBQ3BELHNCQUFxQjtJQUFFLFNBQVM7R0FDakM7RUF4Qkg7SUFDRSxzQkFBb0Q7R0FDckQ7RUFJQzs7V0FFRztFQUlIO0lBQ0UsOEJBQTZCO0lBQzdCLHVCQUFzQjtJQUFFLFNBQVM7SUFDakMscUJBQW1EO0dBQ3BEO0VBSUQ7SUFDRSw4QkFBNkI7SUFDN0Isc0JBQW9EO0lBQ3BELHNCQUFxQjtJQUFFLFNBQVM7R0FDakM7RUF4Qkg7SUFDRSx3QkFBb0Q7R0FDckQ7RUFJQzs7V0FFRztFQUlIO0lBQ0UsOEJBQTZCO0lBQzdCLHVCQUFzQjtJQUFFLFNBQVM7SUFDakMsdUJBQW1EO0dBQ3BEO0VBSUQ7SUFDRSw4QkFBNkI7SUFDN0Isd0JBQW9EO0lBQ3BELHNCQUFxQjtJQUFFLFNBQVM7R0FDakM7RUF4Qkg7SUFDRSxzQkFBb0Q7R0FDckQ7RUFJQzs7V0FFRztFQUlIO0lBQ0UsOEJBQTZCO0lBQzdCLHVCQUFzQjtJQUFFLFNBQVM7SUFDakMscUJBQW1EO0dBQ3BEO0VBSUQ7SUFDRSw4QkFBNkI7SUFDN0Isc0JBQW9EO0lBQ3BELHNCQUFxQjtJQUFFLFNBQVM7R0FDakM7RUF4Qkg7SUFDRSx3QkFBb0Q7R0FDckQ7RUFJQzs7V0FFRztFQUlIO0lBQ0UsOEJBQTZCO0lBQzdCLHVCQUFzQjtJQUFFLFNBQVM7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RUFJRDtJQUNFLDhCQUE2QjtJQUM3Qiw0QkFBb0Q7SUFDcEQsc0JBQXFCO0lBQUUsU0FBUztHQUNqQztFQXhCSDtJQUNFLDRCQUFvRDtHQUNyRDtFQUlDOztXQUVHO0VBSUg7SUFDRSw4QkFBNkI7SUFDN0IsdUJBQXNCO0lBQUUsU0FBUztJQUNqQywyQkFBbUQ7R0FDcEQ7RUFJRDtJQUNFLDhCQUE2QjtJQUM3Qiw0QkFBb0Q7SUFDcEQsc0JBQXFCO0lBQUUsU0FBUztHQUNqQztFQXhCSDtJQUNFLDRCQUFvRDtHQUNyRDtFQUlDOztXQUVHO0VBSUg7SUFDRSw4QkFBNkI7SUFDN0IsdUJBQXNCO0lBQUUsU0FBUztJQUNqQywyQkFBbUQ7R0FDcEQ7RUFJRDtJQUNFLDhCQUE2QjtJQUM3Qiw0QkFBb0Q7SUFDcEQsc0JBQXFCO0lBQUUsU0FBUztHQUNqQztFQXhCSDtJQUNFLDRCQUFvRDtHQUNyRDtFQUlDOztXQUVHO0VBSUg7SUFDRSw4QkFBNkI7SUFDN0IsdUJBQXNCO0lBQUUsU0FBUztJQUNqQywyQkFBbUQ7R0FDcEQ7RUFJRDtJQUNFLDhCQUE2QjtJQUM3Qiw0QkFBb0Q7SUFDcEQsc0JBQXFCO0lBQUUsU0FBUztHQUNqQztFQXhCSDtJQUNFLDRCQUFvRDtHQUNyRDtFQUlDOztXQUVHO0VBSUg7SUFDRSw4QkFBNkI7SUFDN0IsdUJBQXNCO0lBQUUsU0FBUztJQUNqQywyQkFBbUQ7R0FDcEQ7RUFJRDtJQUNFLDhCQUE2QjtJQUM3Qiw0QkFBb0Q7SUFDcEQsc0JBQXFCO0lBQUUsU0FBUztHQUNqQztFQXhCSDtJQUNFLDRCQUFvRDtHQUNyRDtFQUlDOztXQUVHO0VBSUg7SUFDRSw4QkFBNkI7SUFDN0IsdUJBQXNCO0lBQUUsU0FBUztJQUNqQywyQkFBbUQ7R0FDcEQ7RUFJRDtJQUNFLDhCQUE2QjtJQUM3Qiw0QkFBb0Q7SUFDcEQsc0JBQXFCO0lBQUUsU0FBUztHQUNqQztFQXhCSDtJQUNFLHVCQUFvRDtHQUNyRDtFQUlDOztXQUVHO0VBSUg7SUFDRSw4QkFBNkI7SUFDN0IsdUJBQXNCO0lBQUUsU0FBUztJ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N0Isc0JBQW9EO0lBQ3BELHNCQUFxQjtJQUFFLFNBQVM7R0FDakM7RUF4Qkg7SUFDRSx1QkFBb0Q7R0FDckQ7RUFJQzs7V0FFRztFQUlIO0lBQ0UsOEJBQTZCO0lBQzdCLHVCQUFzQjtJQUFFLFNBQVM7SUFDakMsc0JBQW1EO0dBQ3BEO0VBSUQ7SUFDRSw4QkFBNkI7SUFDN0IsdUJBQW9EO0lBQ3BELHNCQUFxQjtJQUFFLFNBQVM7R0FDakM7RUF4Qkg7SUFDRSw0QkFBb0Q7R0FDckQ7RUFJQzs7V0FFRztFQUlIO0lBQ0UsOEJBQTZCO0lBQzdCLHVCQUFzQjtJQUFFLFNBQVM7SUFDakMsMkJBQW1EO0dBQ3BEO0VBSUQ7SUFDRSw4QkFBNkI7SUFDN0IsNEJBQW9EO0lBQ3BELHNCQUFxQjtJQUFFLFNBQVM7R0FDakM7RUF4Qkg7SUFDRSw0QkFBb0Q7R0FDckQ7RUFJQzs7V0FFRztFQUlIO0lBQ0UsOEJBQTZCO0lBQzdCLHVCQUFzQjtJQUFFLFNBQVM7SUFDakMsMkJBQW1EO0dBQ3BEO0VBSUQ7SUFDRSw4QkFBNkI7SUFDN0IsNEJBQW9EO0lBQ3BELHNCQUFxQjtJQUFFLFNBQVM7R0FDakM7RUF4Qkg7SUFDRSx1QkFBb0Q7R0FDckQ7RUFJQzs7V0FFRztFQUlIO0lBQ0UsOEJBQTZCO0lBQzdCLHVCQUFzQjtJQUFFLFNBQVM7SUFDakMsc0JBQW1EO0dBQ3BEO0VBSUQ7SUFDRSw4QkFBNkI7SUFDN0IsdUJBQW9EO0lBQ3BELHNCQUFxQjtJQUFFLFNBQVM7R0FDakM7RUF4Qkg7SUFDRSxzQkFBb0Q7R0FDckQ7RUFJQzs7V0FFRztFQUlIO0lBQ0UsOEJBQTZCO0lBQzdCLHVCQUFzQjtJQUFFLFNBQVM7SUFDakMscUJBQW1EO0dBQ3BEO0VBSUQ7SUFDRSw4QkFBNkI7SUFDN0Isc0JBQW9EO0lBQ3BELHNCQUFxQjtJQUFFLFNBQVM7R0FDakM7RUF4Qkg7SUFDRSxzQkFBb0Q7R0FDckQ7RUFJQzs7V0FFRztFQUlIO0lBQ0UsOEJBQTZCO0lBQzdCLHVCQUFzQjtJQUFFLFNBQVM7SUFDakMscUJBQW1EO0dBQ3BEO0VBSUQ7SUFDRSw4QkFBNkI7SUFDN0Isc0JBQW9EO0lBQ3BELHNCQUFxQjtJQUFFLFNBQVM7R0FDakM7RUF4Qkg7SUFDRSxzQkFBb0Q7R0FDckQ7RUFJQzs7V0FFRztFQUlIO0lBQ0UsOEJBQTZCO0lBQzdCLHVCQUFzQjtJQUFFLFNBQVM7SUFDakMscUJBQW1EO0dBQ3BEO0VBSUQ7SUFDRSw4QkFBNkI7SUFDN0Isc0JBQW9EO0lBQ3BELHNCQUFxQjtJQUFFLFNBQVM7R0FDakM7RUF4Qkg7SUFDRSx1QkFBb0Q7R0FDckQ7RUFJQzs7V0FFRztFQUlIO0lBQ0UsOEJBQTZCO0lBQzdCLHVCQUFzQjtJQUFFLFNBQVM7SUFDakMsc0JBQW1EO0dBQ3BEO0VBSUQ7SUFDRSw4QkFBNkI7SUFDN0IsdUJBQW9EO0lBQ3BELHNCQUFxQjtJQUFFLFNBQVM7R0FDakM7RUF4Qkg7SUFDRSxzQkFBb0Q7R0FDckQ7RUFJQzs7V0FFRztFQUlIO0lBQ0UsOEJBQTZCO0lBQzdCLHVCQUFzQjtJQUFFLFNBQVM7SUFDakMscUJBQW1EO0dBQ3BEO0VBSUQ7SUFDRSw4QkFBNkI7SUFDN0Isc0JBQW9EO0lBQ3BELHNCQUFxQjtJQUFFLFNBQVM7R0FDakM7RUF4Qkg7SUFDRSxzQkFBb0Q7R0FDckQ7RUFJQzs7V0FFRztFQUlIO0lBQ0UsOEJBQTZCO0lBQzdCLHVCQUFzQjtJQUFFLFNBQVM7SUFDakMscUJBQW1EO0dBQ3BEO0VBSUQ7SUFDRSw4QkFBNkI7SUFDN0Isc0JBQW9EO0lBQ3BELHNCQUFxQjtJQUFFLFNBQVM7R0FDakM7RUF4Qkg7SUFDRSxzQkFBb0Q7R0FDckQ7RUFJQzs7V0FFRztFQUlIO0lBQ0UsOEJBQTZCO0lBQzdCLHVCQUFzQjtJQUFFLFNBQVM7SUFDakMscUJBQW1EO0dBQ3BEO0VBSUQ7SUFDRSw4QkFBNkI7SUFDN0Isc0JBQW9EO0lBQ3BELHNCQUFxQjtJQUFFLFNBQVM7R0FDakM7RUF4Qkg7SUFDRSxzQkFBb0Q7R0FDckQ7RUFJQzs7V0FFRztFQUlIO0lBQ0UsOEJBQTZCO0lBQzdCLHVCQUFzQjtJQUFFLFNBQVM7SUFDakMscUJBQW1EO0dBQ3BEO0VBSUQ7SUFDRSw4QkFBNkI7SUFDN0Isc0JBQW9EO0lBQ3BELHNCQUFxQjtJQUFFLFNBQVM7R0FDakM7RUF4Qkg7SUFDRSx1QkFBb0Q7R0FDckQ7RUFJQzs7V0FFRztFQUlIO0lBQ0UsOEJBQTZCO0lBQzdCLHVCQUFzQjtJQUFFLFNBQVM7SUFDakMsc0JBQW1EO0dBQ3BEO0VBSUQ7SUFDRSw4QkFBNkI7SUFDN0IsdUJBQW9EO0lBQ3BELHNCQUFxQjtJQUFFLFNBQVM7R0FDakM7RUF4Qkg7SUFDRSw0QkFBb0Q7R0FDckQ7RUFJQzs7V0FFRztFQUlIO0lBQ0UsOEJBQTZCO0lBQzdCLHVCQUFzQjtJQUFFLFNBQVM7SUFDakMsMkJBQW1EO0dBQ3BEO0VBSUQ7SUFDRSw4QkFBNkI7SUFDN0IsNEJBQW9EO0lBQ3BELHNCQUFxQjtJQUFFLFNBQVM7R0FDakM7RUF4Qkg7SUFDRSw0QkFBb0Q7R0FDckQ7RUFJQzs7V0FFRztFQUlIO0lBQ0UsOEJBQTZCO0lBQzdCLHVCQUFzQjtJQUFFLFNBQVM7SUFDakMsMkJBQW1EO0dBQ3BEO0VBSUQ7SUFDRSw4QkFBNkI7SUFDN0IsNEJBQW9EO0lBQ3BELHNCQUFxQjtJQUFFLFNBQVM7R0FDakM7RUF4Qkg7SUFDRSxzQkFBb0Q7R0FDckQ7RUFJQzs7V0FFRztFQUlIO0lBQ0UsOEJBQTZCO0lBQzdCLHVCQUFzQjtJQUFFLFNBQVM7SUFDakMscUJBQW1EO0dBQ3BEO0VBSUQ7SUFDRSw4QkFBNkI7SUFDN0Isc0JBQW9EO0lBQ3BELHNCQUFxQjtJQUFFLFNBQVM7R0FDakM7RUF4Qkg7SUFDRSw0QkFBb0Q7R0FDckQ7RUFJQzs7V0FFRztFQUlIO0lBQ0UsOEJBQTZCO0lBQzdCLHVCQUFzQjtJQUFFLFNBQVM7SUFDakMsMkJBQW1EO0dBQ3BEO0VBSUQ7SUFDRSw4QkFBNkI7SUFDN0IsNEJBQW9EO0lBQ3BELHNCQUFxQjtJQUFFLFNBQVM7R0FDakM7RUF4Qkg7SUFDRSw0QkFBb0Q7R0FDckQ7RUFJQzs7V0FFRztFQUlIO0lBQ0UsOEJBQTZCO0lBQzdCLHVCQUFzQjtJQUFFLFNBQVM7SUFDakMsMkJBQW1EO0dBQ3BEO0VBSUQ7SUFDRSw4QkFBNkI7SUFDN0IsNEJBQW9EO0lBQ3BELHNCQUFxQjtJQUFFLFNBQVM7R0FDakM7RUF4Qkg7SUFDRSx1QkFBb0Q7R0FDckQ7RUFJQzs7V0FFRztFQUlIO0lBQ0UsOEJBQTZCO0lBQzdCLHVCQUFzQjtJQUFFLFNBQVM7SUFDakMsc0JBQW1EO0dBQ3BEO0VBSUQ7SUFDRSw4QkFBNkI7SUFDN0IsdUJBQW9EO0lBQ3BELHNCQUFxQjtJQUFFLFNBQVM7R0FDakM7RUF4Qkg7SUFDRSw0QkFBb0Q7R0FDckQ7RUFJQzs7V0FFRztFQUlIO0lBQ0UsOEJBQTZCO0lBQzdCLHVCQUFzQjtJQUFFLFNBQVM7SUFDakMsMkJBQW1EO0dBQ3BEO0VBSUQ7SUFDRSw4QkFBNkI7SUFDN0IsNEJBQW9EO0lBQ3BELHNCQUFxQjtJQUFFLFNBQVM7R0FDakM7RUF4Qkg7SUFDRSw0QkFBb0Q7R0FDckQ7RUFJQzs7V0FFRztFQUlIO0lBQ0UsOEJBQTZCO0lBQzdCLHVCQUFzQjtJQUFFLFNBQVM7SUFDakMsMkJBQW1EO0dBQ3BEO0VBSUQ7SUFDRSw4QkFBNkI7SUFDN0IsNEJBQW9EO0lBQ3BELHNCQUFxQjtJQUFFLFNBQVM7R0FDakM7RUF4Qkg7SUFDRSw0QkFBb0Q7R0FDckQ7RUFJQzs7V0FFRztFQUlIO0lBQ0UsOEJBQTZCO0lBQzdCLHVCQUFzQjtJQUFFLFNBQVM7SUFDakMsMkJBQW1EO0dBQ3BEO0VBSUQ7SUFDRSw4QkFBNkI7SUFDN0IsNEJBQW9EO0lBQ3BELHNCQUFxQjtJQUFFLFNBQVM7R0FDakM7RUF4Qkg7SUFDRSw0QkFBb0Q7R0FDckQ7RUFJQzs7V0FFRztFQUlIO0lBQ0UsOEJBQTZCO0lBQzdCLHVCQUFzQjtJQUFFLFNBQVM7SUFDakMsMkJBQW1EO0dBQ3BEO0VBSUQ7SUFDRSw4QkFBNkI7SUFDN0IsNEJBQW9EO0lBQ3BELHNCQUFxQjtJQUFFLFNBQVM7R0FDakM7RUF4Qkg7SUFDRSw0QkFBb0Q7R0FDckQ7RUFJQzs7V0FFRztFQUlIO0lBQ0UsOEJBQTZCO0lBQzdCLHVCQUFzQjtJQUFFLFNBQVM7SUFDakMsMkJBQW1EO0dBQ3BEO0VBSUQ7SUFDRSw4QkFBNkI7SUFDN0IsNEJBQW9EO0lBQ3BELHNCQUFxQjtJQUFFLFNBQVM7R0FDakM7RUF4Qkg7SUFDRSw0QkFBb0Q7R0FDckQ7RUFJQzs7V0FFRztFQUlIO0lBQ0UsOEJBQTZCO0lBQzdCLHVCQUFzQjtJQUFFLFNBQVM7SUFDakMsMkJBQW1EO0dBQ3BEO0VBSUQ7SUFDRSw4QkFBNkI7SUFDN0IsNEJBQW9EO0lBQ3BELHNCQUFxQjtJQUFFLFNBQVM7R0FDakM7RUF4Qkg7SUFDRSx1QkFBb0Q7R0FDckQ7RUFJQzs7V0FFRztFQUlIO0lBQ0UsOEJBQTZCO0lBQzdCLHVCQUFzQjtJQUFFLFNBQVM7SUFDakMsc0JBQW1EO0dBQ3BEO0VBSUQ7SUFDRSw4QkFBNkI7SUFDN0IsdUJBQW9EO0lBQ3BELHNCQUFxQjtJQUFFLFNBQVM7R0FDakM7RUF4Qkg7SUFDRSx3QkFBb0Q7R0FDckQ7RUFJQzs7V0FFRztFQUlIO0lBQ0UsOEJBQTZCO0lBQzdCLHVCQUFzQjtJQUFFLFNBQVM7SUFDakMsdUJBQW1EO0dBQ3BEO0VBSUQ7SUFDRSw4QkFBNkI7SUFDN0Isd0JBQW9EO0lBQ3BELHNCQUFxQjtJQUFFLFNBQVM7R0FDakM7RUF4Qkg7SUFDRSxzQkFBb0Q7R0FDckQ7RUFJQzs7V0FFRztFQUlIO0lBQ0UsOEJBQTZCO0lBQzdCLHVCQUFzQjtJQUFFLFNBQVM7SUFDakMscUJBQW1EO0dBQ3BEO0VBSUQ7SUFDRSw4QkFBNkI7SUFDN0Isc0JBQW9EO0lBQ3BELHNCQUFxQjtJQUFFLFNBQVM7R0FDakM7RUF4Qkg7SUFDRSx3QkFBb0Q7R0FDckQ7RUFJQzs7V0FFRztFQUlIO0lBQ0UsOEJBQTZCO0lBQzdCLHVCQUFzQjtJQUFFLFNBQVM7SUFDakMsdUJBQW1EO0dBQ3BEO0VBSUQ7SUFDRSw4QkFBNkI7SUFDN0Isd0JBQW9EO0lBQ3BELHNCQUFxQjtJQUFFLFNBQVM7R0FDakM7RUF4Qkg7SUFDRSxzQkFBb0Q7R0FDckQ7RUFJQzs7V0FFRztFQUlIO0lBQ0UsOEJBQTZCO0lBQzdCLHVCQUFzQjtJQUFFLFNBQVM7SUFDakMscUJBQW1EO0dBQ3BEO0VBSUQ7SUFDRSw4QkFBNkI7SUFDN0Isc0JBQW9EO0lBQ3BELHNCQUFxQjtJQUFFLFNBQVM7R0FDakM7RUF4Qkg7SUFDRSx3QkFBb0Q7R0FDckQ7RUFJQzs7V0FFRztFQUlIO0lBQ0UsOEJBQTZCO0lBQzdCLHVCQUFzQjtJQUFFLFNBQVM7SUFDakMsdUJBQW1EO0dBQ3BEO0VBSUQ7SUFDRSw4QkFBNkI7SUFDN0Isd0JBQW9EO0lBQ3BELHNCQUFxQjtJQUFFLFNBQVM7R0FDakM7RUF4Qkg7SUFDRSxzQkFBb0Q7R0FDckQ7RUFJQzs7V0FFRztFQUlIO0lBQ0UsOEJBQTZCO0lBQzdCLHVCQUFzQjtJQUFFLFNBQVM7SUFDakMscUJBQW1EO0dBQ3BEO0VBSUQ7SUFDRSw4QkFBNkI7SUFDN0Isc0JBQW9EO0lBQ3BELHNCQUFxQjtJQUFFLFNBQVM7R0FDakM7RUF4Qkg7SUFDRSx3QkFBb0Q7R0FDckQ7RUFJQzs7V0FFRztFQUlIO0lBQ0UsOEJBQTZCO0lBQzdCLHVCQUFzQjtJQUFFLFNBQVM7SUFDakMsdUJBQW1EO0dBQ3BEO0VBSUQ7SUFDRSw4QkFBNkI7SUFDN0Isd0JBQW9EO0lBQ3BELHNCQUFxQjtJQUFFLFNBQVM7R0FDakM7RUF4Qkg7SUFDRSx1QkFBb0Q7R0FDckQ7RUFJQzs7V0FFRztFQUlIO0lBQ0UsOEJBQTZCO0lBQzdCLHVCQUFzQjtJQUFFLFNBQVM7SUFDakMsc0JBQW1EO0dBQ3BEO0VBSUQ7SUFDRSw4QkFBNkI7SUFDN0IsdUJBQW9EO0lBQ3BELHNCQUFxQjtJQUFFLFNBQVM7R0FDakM7RUFZTDtJQUNFLHNCQUFxQjtHQUN0QjtFQUVEO0lBQ0UsdUJBQXNCO0dBQ3ZCO0N4Qmc4TEo7O0FXMzJMTztFYS9IRjtJQUNFLHVCQUFvRDtHQUNyRDtFQUlDOztXQUVHO0VBSUg7SUFDRSw4QkFBNkI7SUFDN0IsdUJBQXNCO0lBQUUsU0FBUztJQUNqQyxzQkFBbUQ7R0FDcEQ7RUFJRDtJQUNFLDhCQUE2QjtJQUM3Qix1QkFBb0Q7SUFDcEQsc0JBQXFCO0lBQUUsU0FBUztHQUNqQztFQXhCSDtJQUNFLHNCQUFvRDtHQUNyRDtFQUlDOztXQUVHO0VBSUg7SUFDRSw4QkFBNkI7SUFDN0IsdUJBQXNCO0lBQUUsU0FBUztJQUNqQyxxQkFBbUQ7R0FDcEQ7RUFJRDtJQUNFLDhCQUE2QjtJQUM3QixzQkFBb0Q7SUFDcEQsc0JBQXFCO0lBQUUsU0FBUztHQUNqQztFQXhCSDtJQUNFLHVCQUFvRDtHQUNyRDtFQUlDOztXQUVHO0VBSUg7SUFDRSw4QkFBNkI7SUFDN0IsdUJBQXNCO0lBQUUsU0FBUztJQUNqQyxzQkFBbUQ7R0FDcEQ7RUFJRDtJQUNFLDhCQUE2QjtJQUM3Qix1QkFBb0Q7SUFDcEQsc0JBQXFCO0lBQUUsU0FBUztHQUNqQztFQXhCSDtJQUNFLDRCQUFvRDtHQUNyRDtFQUlDOztXQUVHO0VBSUg7SUFDRSw4QkFBNkI7SUFDN0IsdUJBQXNCO0lBQUUsU0FBUztJQUNqQywyQkFBbUQ7R0FDcEQ7RUFJRDtJQUNFLDhCQUE2QjtJQUM3Qiw0QkFBb0Q7SUFDcEQsc0JBQXFCO0lBQUUsU0FBUztHQUNqQztFQXhCSDtJQUNFLDRCQUFvRDtHQUNyRDtFQUlDOztXQUVHO0VBSUg7SUFDRSw4QkFBNkI7SUFDN0IsdUJBQXNCO0lBQUUsU0FBUztJQUNqQywyQkFBbUQ7R0FDcEQ7RUFJRDtJQUNFLDhCQUE2QjtJQUM3Qiw0QkFBb0Q7SUFDcEQsc0JBQXFCO0lBQUUsU0FBUztHQUNqQztFQXhCSDtJQUNFLHVCQUFvRDtHQUNyRDtFQUlDOztXQUVHO0VBSUg7SUFDRSw4QkFBNkI7SUFDN0IsdUJBQXNCO0lBQUUsU0FBUztJQUNqQyxzQkFBbUQ7R0FDcEQ7RUFJRDtJQUNFLDhCQUE2QjtJQUM3Qix1QkFBb0Q7SUFDcEQsc0JBQXFCO0lBQUUsU0FBUztHQUNqQztFQXhCSDtJQUNFLHNCQUFvRDtHQUNyRDtFQUlDOztXQUVHO0VBSUg7SUFDRSw4QkFBNkI7SUFDN0IsdUJBQXNCO0lBQUUsU0FBUztJQUNqQyxxQkFBbUQ7R0FDcEQ7RUFJRDtJQUNFLDhCQUE2QjtJQUM3QixzQkFBb0Q7SUFDcEQsc0JBQXFCO0lBQUUsU0FBUztHQUNqQztFQXhCSDtJQUNFLHNCQUFvRDtHQUNyRDtFQUlDOztXQUVHO0VBSUg7SUFDRSw4QkFBNkI7SUFDN0IsdUJBQXNCO0lBQUUsU0FBUztJQUNqQyxxQkFBbUQ7R0FDcEQ7RUFJRDtJQUNFLDhCQUE2QjtJQUM3QixzQkFBb0Q7SUFDcEQsc0JBQXFCO0lBQUUsU0FBUztHQUNqQztFQXhCSDtJQUNFLHNCQUFvRDtHQUNyRDtFQUlDOztXQUVHO0VBSUg7SUFDRSw4QkFBNkI7SUFDN0IsdUJBQXNCO0lBQUUsU0FBUztJQUNqQyxxQkFBbUQ7R0FDcEQ7RUFJRDtJQUNFLDhCQUE2QjtJQUM3QixzQkFBb0Q7SUFDcEQsc0JBQXFCO0lBQUUsU0FBUztHQUNqQztFQXhCSDtJQUNFLHVCQUFvRDtHQUNyRDtFQUlDOztXQUVHO0VBSUg7SUFDRSw4QkFBNkI7SUFDN0IsdUJBQXNCO0lBQUUsU0FBUztJQUNqQyxzQkFBbUQ7R0FDcEQ7RUFJRDtJQUNFLDhCQUE2QjtJQUM3Qix1QkFBb0Q7SUFDcEQsc0JBQXFCO0lBQUUsU0FBUztHQUNqQztFQXhCSDtJQUNFLHNCQUFvRDtHQUNyRDtFQUlDOztXQUVHO0VBSUg7SUFDRSw4QkFBNkI7SUFDN0IsdUJBQXNCO0lBQUUsU0FBUztJQUNqQyxxQkFBbUQ7R0FDcEQ7RUFJRDtJQUNFLDhCQUE2QjtJQUM3QixzQkFBb0Q7SUFDcEQsc0JBQXFCO0lBQUUsU0FBUztHQUNqQztFQXhCSDtJQUNFLHNCQUFvRDtHQUNyRDtFQUlDOztXQUVHO0VBSUg7SUFDRSw4QkFBNkI7SUFDN0IsdUJBQXNCO0lBQUUsU0FBUztJQUNqQyxxQkFBbUQ7R0FDcEQ7RUFJRDtJQUNFLDhCQUE2QjtJQUM3QixzQkFBb0Q7SUFDcEQsc0JBQXFCO0lBQUUsU0FBUztHQUNqQztFQXhCSDtJQUNFLHNCQUFvRDtHQUNyRDtFQUlDOztXQUVHO0VBSUg7SUFDRSw4QkFBNkI7SUFDN0IsdUJBQXNCO0lBQUUsU0FBUztJQUNqQyxxQkFBbUQ7R0FDcEQ7RUFJRDtJQUNFLDhCQUE2QjtJQUM3QixzQkFBb0Q7SUFDcEQsc0JBQXFCO0lBQUUsU0FBUztHQUNqQztFQXhCSDtJQUNFLHNCQUFvRDtHQUNyRDtFQUlDOztXQUVHO0VBSUg7SUFDRSw4QkFBNkI7SUFDN0IsdUJBQXNCO0lBQUUsU0FBUztJQUNqQyxxQkFBbUQ7R0FDcEQ7RUFJRDtJQUNFLDhCQUE2QjtJQUM3QixzQkFBb0Q7SUFDcEQsc0JBQXFCO0lBQUUsU0FBUztHQUNqQztFQXhCSDtJQUNFLHVCQUFvRDtHQUNyRDtFQUlDOztXQUVHO0VBSUg7SUFDRSw4QkFBNkI7SUFDN0IsdUJBQXNCO0lBQUUsU0FBUztJQUNqQyxzQkFBbUQ7R0FDcEQ7RUFJRDtJQUNFLDhCQUE2QjtJQUM3Qix1QkFBb0Q7SUFDcEQsc0JBQXFCO0lBQUUsU0FBUztHQUNqQztFQXhCSDtJQUNFLDRCQUFvRDtHQUNyRDtFQUlDOztXQUVHO0VBSUg7SUFDRSw4QkFBNkI7SUFDN0IsdUJBQXNCO0lBQUUsU0FBUztJQUNqQywyQkFBbUQ7R0FDcEQ7RUFJRDtJQUNFLDhCQUE2QjtJQUM3Qiw0QkFBb0Q7SUFDcEQsc0JBQXFCO0lBQUUsU0FBUztHQUNqQztFQXhCSDtJQUNFLDRCQUFvRDtHQUNyRDtFQUlDOztXQUVHO0VBSUg7SUFDRSw4QkFBNkI7SUFDN0IsdUJBQXNCO0lBQUUsU0FBUztJQUNqQywyQkFBbUQ7R0FDcEQ7RUFJRDtJQUNFLDhCQUE2QjtJQUM3Qiw0QkFBb0Q7SUFDcEQsc0JBQXFCO0lBQUUsU0FBUztHQUNqQztFQXhCSDtJQUNFLHNCQUFvRDtHQUNyRDtFQUlDOztXQUVHO0VBSUg7SUFDRSw4QkFBNkI7SUFDN0IsdUJBQXNCO0lBQUUsU0FBUztJQUNqQyxxQkFBbUQ7R0FDcEQ7RUFJRDtJQUNFLDhCQUE2QjtJQUM3QixzQkFBb0Q7SUFDcEQsc0JBQXFCO0lBQUUsU0FBUztHQUNqQztFQXhCSDtJQUNFLDRCQUFvRDtHQUNyRDtFQUlDOztXQUVHO0VBSUg7SUFDRSw4QkFBNkI7SUFDN0IsdUJBQXNCO0lBQUUsU0FBUztJQUNqQywyQkFBbUQ7R0FDcEQ7RUFJRDtJQUNFLDhCQUE2QjtJQUM3Qiw0QkFBb0Q7SUFDcEQsc0JBQXFCO0lBQUUsU0FBUztHQUNqQztFQXhCSDtJQUNFLDRCQUFvRDtHQUNyRDtFQUlDOztXQUVHO0VBSUg7SUFDRSw4QkFBNkI7SUFDN0IsdUJBQXNCO0lBQUUsU0FBUztJQUNqQywyQkFBbUQ7R0FDcEQ7RUFJRDtJQUNFLDhCQUE2QjtJQUM3Qiw0QkFBb0Q7SUFDcEQsc0JBQXFCO0lBQUUsU0FBUztHQUNqQztFQXhCSDtJQUNFLHVCQUFvRDtHQUNyRDtFQUlDOztXQUVHO0VBSUg7SUFDRSw4QkFBNkI7SUFDN0IsdUJBQXNCO0lBQUUsU0FBUztJQUNqQyxzQkFBbUQ7R0FDcEQ7RUFJRDtJQUNFLDhCQUE2QjtJQUM3Qix1QkFBb0Q7SUFDcEQsc0JBQXFCO0lBQUUsU0FBUztHQUNqQztFQXhCSDtJQUNFLDRCQUFvRDtHQUNyRDtFQUlDOztXQUVHO0VBSUg7SUFDRSw4QkFBNkI7SUFDN0IsdUJBQXNCO0lBQUUsU0FBUztJQUNqQywyQkFBbUQ7R0FDcEQ7RUFJRDtJQUNFLDhCQUE2QjtJQUM3Qiw0QkFBb0Q7SUFDcEQsc0JBQXFCO0lBQUUsU0FBUztHQUNqQztFQXhCSDtJQUNFLDRCQUFvRDtHQUNyRDtFQUlDOztXQUVHO0VBSUg7SUFDRSw4QkFBNkI7SUFDN0IsdUJBQXNCO0lBQUUsU0FBUztJQUNqQywyQkFBbUQ7R0FDcEQ7RUFJRDtJQUNFLDhCQUE2QjtJQUM3Qiw0QkFBb0Q7SUFDcEQsc0JBQXFCO0lBQUUsU0FBUztHQUNqQztFQXhCSDtJQUNFLDRCQUFvRDtHQUNyRDtFQUlDOztXQUVHO0VBSUg7SUFDRSw4QkFBNkI7SUFDN0IsdUJBQXNCO0lBQUUsU0FBUztJQUNqQywyQkFBbUQ7R0FDcEQ7RUFJRDtJQUNFLDhCQUE2QjtJQUM3Qiw0QkFBb0Q7SUFDcEQsc0JBQXFCO0lBQUUsU0FBUztHQUNqQztFQXhCSDtJQUNFLDRCQUFvRDtHQUNyRDtFQUlDOztXQUVHO0VBSUg7SUFDRSw4QkFBNkI7SUFDN0IsdUJBQXNCO0lBQUUsU0FBUztJQUNqQywyQkFBbUQ7R0FDcEQ7RUFJRDtJQUNFLDhCQUE2QjtJQUM3Qiw0QkFBb0Q7SUFDcEQsc0JBQXFCO0lBQUUsU0FBUztHQUNqQztFQXhCSDtJQUNFLDRCQUFvRDtHQUNyRDtFQUlDOztXQUVHO0VBSUg7SUFDRSw4QkFBNkI7SUFDN0IsdUJBQXNCO0lBQUUsU0FBUztJQUNqQywyQkFBbUQ7R0FDcEQ7RUFJRDtJQUNFLDhCQUE2QjtJQUM3Qiw0QkFBb0Q7SUFDcEQsc0JBQXFCO0lBQUUsU0FBUztHQUNqQztFQXhCSDtJQUNFLDRCQUFvRDtHQUNyRDtFQUlDOztXQUVHO0VBSUg7SUFDRSw4QkFBNkI7SUFDN0IsdUJBQXNCO0lBQUUsU0FBUztJQUNqQywyQkFBbUQ7R0FDcEQ7RUFJRDtJQUNFLDhCQUE2QjtJQUM3Qiw0QkFBb0Q7SUFDcEQsc0JBQXFCO0lBQUUsU0FBUztHQUNqQztFQXhCSDtJQUNFLHVCQUFvRDtHQUNyRDtFQUlDOztXQUVHO0VBSUg7SUFDRSw4QkFBNkI7SUFDN0IsdUJBQXNCO0lBQUUsU0FBUztJQUNqQyxzQkFBbUQ7R0FDcEQ7RUFJRDtJQUNFLDhCQUE2QjtJQUM3Qix1QkFBb0Q7SUFDcEQsc0JBQXFCO0lBQUUsU0FBUztHQUNqQztFQXhCSDtJQUNFLHdCQUFvRDtHQUNyRDtFQUlDOztXQUVHO0VBSUg7SUFDRSw4QkFBNkI7SUFDN0IsdUJBQXNCO0lBQUUsU0FBUztJQUNqQyx1QkFBbUQ7R0FDcEQ7RUFJRDtJQUNFLDhCQUE2QjtJQUM3Qix3QkFBb0Q7SUFDcEQsc0JBQXFCO0lBQUUsU0FBUztHQUNqQztFQXhCSDtJQUNFLHNCQUFvRDtHQUNyRDtFQUlDOztXQUVHO0VBSUg7SUFDRSw4QkFBNkI7SUFDN0IsdUJBQXNCO0lBQUUsU0FBUztJQUNqQyxxQkFBbUQ7R0FDcEQ7RUFJRDtJQUNFLDhCQUE2QjtJQUM3QixzQkFBb0Q7SUFDcEQsc0JBQXFCO0lBQUUsU0FBUztHQUNqQztFQXhCSDtJQUNFLHdCQUFvRDtHQUNyRDtFQUlDOztXQUVHO0VBSUg7SUFDRSw4QkFBNkI7SUFDN0IsdUJBQXNCO0lBQUUsU0FBUztJQUNqQyx1QkFBbUQ7R0FDcEQ7RUFJRDtJQUNFLDhCQUE2QjtJQUM3Qix3QkFBb0Q7SUFDcEQsc0JBQXFCO0lBQUUsU0FBUztHQUNqQztFQXhCSDtJQUNFLHNCQUFvRDtHQUNyRDtFQUlDOztXQUVHO0VBSUg7SUFDRSw4QkFBNkI7SUFDN0IsdUJBQXNCO0lBQUUsU0FBUztJQUNqQyxxQkFBbUQ7R0FDcEQ7RUFJRDtJQUNFLDhCQUE2QjtJQUM3QixzQkFBb0Q7SUFDcEQsc0JBQXFCO0lBQUUsU0FBUztHQUNqQztFQXhCSDtJQUNFLHdCQUFvRDtHQUNyRDtFQUlDOztXQUVHO0VBSUg7SUFDRSw4QkFBNkI7SUFDN0IsdUJBQXNCO0lBQUUsU0FBUztJQUNqQyx1QkFBbUQ7R0FDcEQ7RUFJRDtJQUNFLDhCQUE2QjtJQUM3Qix3QkFBb0Q7SUFDcEQsc0JBQXFCO0lBQUUsU0FBUztHQUNqQztFQXhCSDtJQUNFLHNCQUFvRDtHQUNyRDtFQUlDOztXQUVHO0VBSUg7SUFDRSw4QkFBNkI7SUFDN0IsdUJBQXNCO0lBQUUsU0FBUztJQUNqQyxxQkFBbUQ7R0FDcEQ7RUFJRDtJQUNFLDhCQUE2QjtJQUM3QixzQkFBb0Q7SUFDcEQsc0JBQXFCO0lBQUUsU0FBUztHQUNqQztFQXhCSDtJQUNFLHdCQUFvRDtHQUNyRDtFQUlDOztXQUVHO0VBSUg7SUFDRSw4QkFBNkI7SUFDN0IsdUJBQXNCO0lBQUUsU0FBUztJQUNqQyx1QkFBbUQ7R0FDcEQ7RUFJRDtJQUNFLDhCQUE2QjtJQUM3Qix3QkFBb0Q7SUFDcEQsc0JBQXFCO0lBQUUsU0FBUztHQUNqQztFQXhCSDtJQUNFLHVCQUFvRDtHQUNyRDtFQUlDOztXQUVHO0VBSUg7SUFDRSw4QkFBNkI7SUFDN0IsdUJBQXNCO0lBQUUsU0FBUztJQUNqQyxzQkFBbUQ7R0FDcEQ7RUFJRDtJQUNFLDhCQUE2QjtJQUM3Qix1QkFBb0Q7SUFDcEQsc0JBQXFCO0lBQUUsU0FBUztHQUNqQztFQVlMO0lBQ0Usc0JBQXFCO0dBQ3RCO0VBRUQ7SUFDRSx1QkFBc0I7R0FDdkI7Q3hCaWxOSjs7QVc1L01PO0VhL0hGO0lBQ0UsdUJBQW9EO0dBQ3JEO0VBSUM7O1dBRUc7RUFJSDtJQUNFLDhCQUE2QjtJQUM3Qix1QkFBc0I7SUFBRSxTQUFTO0lBQ2pDLHNCQUFtRDtHQUNwRDtFQUlEO0lBQ0UsOEJBQTZCO0lBQzdCLHVCQUFvRDtJQUNwRCxzQkFBcUI7SUFBRSxTQUFTO0dBQ2pDO0VBeEJIO0lBQ0Usc0JBQW9EO0dBQ3JEO0VBSUM7O1dBRUc7RUFJSDtJQUNFLDhCQUE2QjtJQUM3Qix1QkFBc0I7SUFBRSxTQUFTO0lBQ2pDLHFCQUFtRDtHQUNwRDtFQUlEO0lBQ0UsOEJBQTZCO0lBQzdCLHNCQUFvRDtJQUNwRCxzQkFBcUI7SUFBRSxTQUFTO0dBQ2pDO0VBeEJIO0lBQ0UsdUJBQW9EO0dBQ3JEO0VBSUM7O1dBRUc7RUFJSDtJQUNFLDhCQUE2QjtJQUM3Qix1QkFBc0I7SUFBRSxTQUFTO0lBQ2pDLHNCQUFtRDtHQUNwRDtFQUlEO0lBQ0UsOEJBQTZCO0lBQzdCLHVCQUFvRDtJQUNwRCxzQkFBcUI7SUFBRSxTQUFTO0dBQ2pDO0VBeEJIO0lBQ0UsNEJBQW9EO0dBQ3JEO0VBSUM7O1dBRUc7RUFJSDtJQUNFLDhCQUE2QjtJQUM3Qix1QkFBc0I7SUFBRSxTQUFTO0lBQ2pDLDJCQUFtRDtHQUNwRDtFQUlEO0lBQ0UsOEJBQTZCO0lBQzdCLDRCQUFvRDtJQUNwRCxzQkFBcUI7SUFBRSxTQUFTO0dBQ2pDO0VBeEJIO0lBQ0UsNEJBQW9EO0dBQ3JEO0VBSUM7O1dBRUc7RUFJSDtJQUNFLDhCQUE2QjtJQUM3Qix1QkFBc0I7SUFBRSxTQUFTO0lBQ2pDLDJCQUFtRDtHQUNwRDtFQUlEO0lBQ0UsOEJBQTZCO0lBQzdCLDRCQUFvRDtJQUNwRCxzQkFBcUI7SUFBRSxTQUFTO0dBQ2pDO0VBeEJIO0lBQ0UsdUJBQW9EO0dBQ3JEO0VBSUM7O1dBRUc7RUFJSDtJQUNFLDhCQUE2QjtJQUM3Qix1QkFBc0I7SUFBRSxTQUFTO0lBQ2pDLHNCQUFtRDtHQUNwRDtFQUlEO0lBQ0UsOEJBQTZCO0lBQzdCLHVCQUFvRDtJQUNwRCxzQkFBcUI7SUFBRSxTQUFTO0dBQ2pDO0VBeEJIO0lBQ0Usc0JBQW9EO0dBQ3JEO0VBSUM7O1dBRUc7RUFJSDtJQUNFLDhCQUE2QjtJQUM3Qix1QkFBc0I7SUFBRSxTQUFTO0lBQ2pDLHFCQUFtRDtHQUNwRDtFQUlEO0lBQ0UsOEJBQTZCO0lBQzdCLHNCQUFvRDtJQUNwRCxzQkFBcUI7SUFBRSxTQUFTO0dBQ2pDO0VBeEJIO0lBQ0Usc0JBQW9EO0dBQ3JEO0VBSUM7O1dBRUc7RUFJSDtJQUNFLDhCQUE2QjtJQUM3Qix1QkFBc0I7SUFBRSxTQUFTO0lBQ2pDLHFCQUFtRDtHQUNwRDtFQUlEO0lBQ0UsOEJBQTZCO0lBQzdCLHNCQUFvRDtJQUNwRCxzQkFBcUI7SUFBRSxTQUFTO0dBQ2pDO0VBeEJIO0lBQ0Usc0JBQW9EO0dBQ3JEO0VBSUM7O1dBRUc7RUFJSDtJQUNFLDhCQUE2QjtJQUM3Qix1QkFBc0I7SUFBRSxTQUFTO0lBQ2pDLHFCQUFtRDtHQUNwRDtFQUlEO0lBQ0UsOEJBQTZCO0lBQzdCLHNCQUFvRDtJQUNwRCxzQkFBcUI7SUFBRSxTQUFTO0dBQ2pDO0VBeEJIO0lBQ0UsdUJBQW9EO0dBQ3JEO0VBSUM7O1dBRUc7RUFJSDtJQUNFLDhCQUE2QjtJQUM3Qix1QkFBc0I7SUFBRSxTQUFTO0lBQ2pDLHNCQUFtRDtHQUNwRDtFQUlEO0lBQ0UsOEJBQTZCO0lBQzdCLHVCQUFvRDtJQUNwRCxzQkFBcUI7SUFBRSxTQUFTO0dBQ2pDO0VBeEJIO0lBQ0Usc0JBQW9EO0dBQ3JEO0VBSUM7O1dBRUc7RUFJSDtJQUNFLDhCQUE2QjtJQUM3Qix1QkFBc0I7SUFBRSxTQUFTO0lBQ2pDLHFCQUFtRDtHQUNwRDtFQUlEO0lBQ0UsOEJBQTZCO0lBQzdCLHNCQUFvRDtJQUNwRCxzQkFBcUI7SUFBRSxTQUFTO0dBQ2pDO0VBeEJIO0lBQ0Usc0JBQW9EO0dBQ3JEO0VBSUM7O1dBRUc7RUFJSDtJQUNFLDhCQUE2QjtJQUM3Qix1QkFBc0I7SUFBRSxTQUFTO0lBQ2pDLHFCQUFtRDtHQUNwRDtFQUlEO0lBQ0UsOEJBQTZCO0lBQzdCLHNCQUFvRDtJQUNwRCxzQkFBcUI7SUFBRSxTQUFTO0dBQ2pDO0VBeEJIO0lBQ0Usc0JBQW9EO0dBQ3JEO0VBSUM7O1dBRUc7RUFJSDtJQUNFLDhCQUE2QjtJQUM3Qix1QkFBc0I7SUFBRSxTQUFTO0lBQ2pDLHFCQUFtRDtHQUNwRDtFQUlEO0lBQ0UsOEJBQTZCO0lBQzdCLHNCQUFvRDtJQUNwRCxzQkFBcUI7SUFBRSxTQUFTO0dBQ2pDO0VBeEJIO0lBQ0Usc0JBQW9EO0dBQ3JEO0VBSUM7O1dBRUc7RUFJSDtJQUNFLDhCQUE2QjtJQUM3Qix1QkFBc0I7SUFBRSxTQUFTO0lBQ2pDLHFCQUFtRDtHQUNwRDtFQUlEO0lBQ0UsOEJBQTZCO0lBQzdCLHNCQUFvRDtJQUNwRCxzQkFBcUI7SUFBRSxTQUFTO0dBQ2pDO0VBeEJIO0lBQ0UsdUJBQW9EO0dBQ3JEO0VBSUM7O1dBRUc7RUFJSDtJQUNFLDhCQUE2QjtJQUM3Qix1QkFBc0I7SUFBRSxTQUFTO0lBQ2pDLHNCQUFtRDtHQUNwRDtFQUlEO0lBQ0UsOEJBQTZCO0lBQzdCLHVCQUFvRDtJQUNwRCxzQkFBcUI7SUFBRSxTQUFTO0dBQ2pDO0VBeEJIO0lBQ0UsNEJBQW9EO0dBQ3JEO0VBSUM7O1dBRUc7RUFJSDtJQUNFLDhCQUE2QjtJQUM3Qix1QkFBc0I7SUFBRSxTQUFTO0lBQ2pDLDJCQUFtRDtHQUNwRDtFQUlEO0lBQ0UsOEJBQTZCO0lBQzdCLDRCQUFvRDtJQUNwRCxzQkFBcUI7SUFBRSxTQUFTO0dBQ2pDO0VBeEJIO0lBQ0UsNEJBQW9EO0dBQ3JEO0VBSUM7O1dBRUc7RUFJSDtJQUNFLDhCQUE2QjtJQUM3Qix1QkFBc0I7SUFBRSxTQUFTO0lBQ2pDLDJCQUFtRDtHQUNwRDtFQUlEO0lBQ0UsOEJBQTZCO0lBQzdCLDRCQUFvRDtJQUNwRCxzQkFBcUI7SUFBRSxTQUFTO0dBQ2pDO0VBeEJIO0lBQ0Usc0JBQW9EO0dBQ3JEO0VBSUM7O1dBRUc7RUFJSDtJQUNFLDhCQUE2QjtJQUM3Qix1QkFBc0I7SUFBRSxTQUFTO0lBQ2pDLHFCQUFtRDtHQUNwRDtFQUlEO0lBQ0UsOEJBQTZCO0lBQzdCLHNCQUFvRDtJQUNwRCxzQkFBcUI7SUFBRSxTQUFTO0dBQ2pDO0VBeEJIO0lBQ0UsNEJBQW9EO0dBQ3JEO0VBSUM7O1dBRUc7RUFJSDtJQUNFLDhCQUE2QjtJQUM3Qix1QkFBc0I7SUFBRSxTQUFTO0lBQ2pDLDJCQUFtRDtHQUNwRDtFQUlEO0lBQ0UsOEJBQTZCO0lBQzdCLDRCQUFvRDtJQUNwRCxzQkFBcUI7SUFBRSxTQUFTO0dBQ2pDO0VBeEJIO0lBQ0UsNEJBQW9EO0dBQ3JEO0VBSUM7O1dBRUc7RUFJSDtJQUNFLDhCQUE2QjtJQUM3Qix1QkFBc0I7SUFBRSxTQUFTO0lBQ2pDLDJCQUFtRDtHQUNwRDtFQUlEO0lBQ0UsOEJBQTZCO0lBQzdCLDRCQUFvRDtJQUNwRCxzQkFBcUI7SUFBRSxTQUFTO0dBQ2pDO0VBeEJIO0lBQ0UsdUJBQW9EO0dBQ3JEO0VBSUM7O1dBRUc7RUFJSDtJQUNFLDhCQUE2QjtJQUM3Qix1QkFBc0I7SUFBRSxTQUFTO0lBQ2pDLHNCQUFtRDtHQUNwRDtFQUlEO0lBQ0UsOEJBQTZCO0lBQzdCLHVCQUFvRDtJQUNwRCxzQkFBcUI7SUFBRSxTQUFTO0dBQ2pDO0VBeEJIO0lBQ0UsNEJBQW9EO0dBQ3JEO0VBSUM7O1dBRUc7RUFJSDtJQUNFLDhCQUE2QjtJQUM3Qix1QkFBc0I7SUFBRSxTQUFTO0lBQ2pDLDJCQUFtRDtHQUNwRDtFQUlEO0lBQ0UsOEJBQTZCO0lBQzdCLDRCQUFvRDtJQUNwRCxzQkFBcUI7SUFBRSxTQUFTO0dBQ2pDO0VBeEJIO0lBQ0UsNEJBQW9EO0dBQ3JEO0VBSUM7O1dBRUc7RUFJSDtJQUNFLDhCQUE2QjtJQUM3Qix1QkFBc0I7SUFBRSxTQUFTO0lBQ2pDLDJCQUFtRDtHQUNwRDtFQUlEO0lBQ0UsOEJBQTZCO0lBQzdCLDRCQUFvRDtJQUNwRCxzQkFBcUI7SUFBRSxTQUFTO0dBQ2pDO0VBeEJIO0lBQ0UsNEJBQW9EO0dBQ3JEO0VBSUM7O1dBRUc7RUFJSDtJQUNFLDhCQUE2QjtJQUM3Qix1QkFBc0I7SUFBRSxTQUFTO0lBQ2pDLDJCQUFtRDtHQUNwRDtFQUlEO0lBQ0UsOEJBQTZCO0lBQzdCLDRCQUFvRDtJQUNwRCxzQkFBcUI7SUFBRSxTQUFTO0dBQ2pDO0VBeEJIO0lBQ0UsNEJBQW9EO0dBQ3JEO0VBSUM7O1dBRUc7RUFJSDtJQUNFLDhCQUE2QjtJQUM3Qix1QkFBc0I7SUFBRSxTQUFTO0lBQ2pDLDJCQUFtRDtHQUNwRDtFQUlEO0lBQ0UsOEJBQTZCO0lBQzdCLDRCQUFvRDtJQUNwRCxzQkFBcUI7SUFBRSxTQUFTO0dBQ2pDO0VBeEJIO0lBQ0UsNEJBQW9EO0dBQ3JEO0VBSUM7O1dBRUc7RUFJSDtJQUNFLDhCQUE2QjtJQUM3Qix1QkFBc0I7SUFBRSxTQUFTO0lBQ2pDLDJCQUFtRDtHQUNwRDtFQUlEO0lBQ0UsOEJBQTZCO0lBQzdCLDRCQUFvRDtJQUNwRCxzQkFBcUI7SUFBRSxTQUFTO0dBQ2pDO0VBeEJIO0lBQ0UsNEJBQW9EO0dBQ3JEO0VBSUM7O1dBRUc7RUFJSDtJQUNFLDhCQUE2QjtJQUM3Qix1QkFBc0I7SUFBRSxTQUFTO0lBQ2pDLDJCQUFtRDtHQUNwRDtFQUlEO0lBQ0UsOEJBQTZCO0lBQzdCLDRCQUFvRDtJQUNwRCxzQkFBcUI7SUFBRSxTQUFTO0dBQ2pDO0VBeEJIO0lBQ0UsdUJBQW9EO0dBQ3JEO0VBSUM7O1dBRUc7RUFJSDtJQUNFLDhCQUE2QjtJQUM3Qix1QkFBc0I7SUFBRSxTQUFTO0lBQ2pDLHNCQUFtRDtHQUNwRDtFQUlEO0lBQ0UsOEJBQTZCO0lBQzdCLHVCQUFvRDtJQUNwRCxzQkFBcUI7SUFBRSxTQUFTO0dBQ2pDO0VBeEJIO0lBQ0Usd0JBQW9EO0dBQ3JEO0VBSUM7O1dBRUc7RUFJSDtJQUNFLDhCQUE2QjtJQUM3Qix1QkFBc0I7SUFBRSxTQUFTO0lBQ2pDLHVCQUFtRDtHQUNwRDtFQUlEO0lBQ0UsOEJBQTZCO0lBQzdCLHdCQUFvRDtJQUNwRCxzQkFBcUI7SUFBRSxTQUFTO0dBQ2pDO0VBeEJIO0lBQ0Usc0JBQW9EO0dBQ3JEO0VBSUM7O1dBRUc7RUFJSDtJQUNFLDhCQUE2QjtJQUM3Qix1QkFBc0I7SUFBRSxTQUFTO0lBQ2pDLHFCQUFtRDtHQUNwRDtFQUlEO0lBQ0UsOEJBQTZCO0lBQzdCLHNCQUFvRDtJQUNwRCxzQkFBcUI7SUFBRSxTQUFTO0dBQ2pDO0VBeEJIO0lBQ0Usd0JBQW9EO0dBQ3JEO0VBSUM7O1dBRUc7RUFJSDtJQUNFLDhCQUE2QjtJQUM3Qix1QkFBc0I7SUFBRSxTQUFTO0lBQ2pDLHVCQUFtRDtHQUNwRDtFQUlEO0lBQ0UsOEJBQTZCO0lBQzdCLHdCQUFvRDtJQUNwRCxzQkFBcUI7SUFBRSxTQUFTO0dBQ2pDO0VBeEJIO0lBQ0Usc0JBQW9EO0dBQ3JEO0VBSUM7O1dBRUc7RUFJSDtJQUNFLDhCQUE2QjtJQUM3Qix1QkFBc0I7SUFBRSxTQUFTO0lBQ2pDLHFCQUFtRDtHQUNwRDtFQUlEO0lBQ0UsOEJBQTZCO0lBQzdCLHNCQUFvRDtJQUNwRCxzQkFBcUI7SUFBRSxTQUFTO0dBQ2pDO0VBeEJIO0lBQ0Usd0JBQW9EO0dBQ3JEO0VBSUM7O1dBRUc7RUFJSDtJQUNFLDhCQUE2QjtJQUM3Qix1QkFBc0I7SUFBRSxTQUFTO0lBQ2pDLHVCQUFtRDtHQUNwRDtFQUlEO0lBQ0UsOEJBQTZCO0lBQzdCLHdCQUFvRDtJQUNwRCxzQkFBcUI7SUFBRSxTQUFTO0dBQ2pDO0VBeEJIO0lBQ0Usc0JBQW9EO0dBQ3JEO0VBSUM7O1dBRUc7RUFJSDtJQUNFLDhCQUE2QjtJQUM3Qix1QkFBc0I7SUFBRSxTQUFTO0lBQ2pDLHFCQUFtRDtHQUNwRDtFQUlEO0lBQ0UsOEJBQTZCO0lBQzdCLHNCQUFvRDtJQUNwRCxzQkFBcUI7SUFBRSxTQUFTO0dBQ2pDO0VBeEJIO0lBQ0Usd0JBQW9EO0dBQ3JEO0VBSUM7O1dBRUc7RUFJSDtJQUNFLDhCQUE2QjtJQUM3Qix1QkFBc0I7SUFBRSxTQUFTO0lBQ2pDLHVCQUFtRDtHQUNwRDtFQUlEO0lBQ0UsOEJBQTZCO0lBQzdCLHdCQUFvRDtJQUNwRCxzQkFBcUI7SUFBRSxTQUFTO0dBQ2pDO0VBeEJIO0lBQ0UsdUJBQW9EO0dBQ3JEO0VBSUM7O1dBRUc7RUFJSDtJQUNFLDhCQUE2QjtJQUM3Qix1QkFBc0I7SUFBRSxTQUFTO0lBQ2pDLHNCQUFtRDtHQUNwRDtFQUlEO0lBQ0UsOEJBQTZCO0lBQzdCLHVCQUFvRDtJQUNwRCxzQkFBcUI7SUFBRSxTQUFTO0dBQ2pDO0VBWUw7SUFDRSxzQkFBcUI7R0FDdEI7RUFFRDtJQUNFLHVCQUFzQjtHQUN2QjtDeEJrdU9KOztBeUI3Mk9EOztnRkFFZ0Y7QUFFaEY7Ozs7R0FJRztBQUVIO0VBRUU7O0tBRUc7RXhCREw7SXdCTUksbUNBQWtDO0lBQ2xDLHVCQUFzQjtJQUFFLFNBQVM7SUFDakMsb0NBQTJCO1lBQTNCLDRCQUEyQjtJQUMzQiw2QkFBNEI7R0FDN0I7RUFHRDs7SUFFRSwyQkFBMEI7R0FDM0I7RUFFRDtJQUNFLDZCQUE0QjtHQUM3QjtFQUVEO0lBQ0UsOEJBQTZCO0dBQzlCO0VBR0Q7OztLQUdHO0VBRUg7O0lBRUUsWUFBVztHQUNaO0VBRUQ7O0lBRUUsdUJBQXNCO0lBQ3RCLHlCQUF3QjtHQUN6QjtFQUdEOztLQUVHO0VBRUg7SUFDRSw0QkFBMkI7R0FDNUI7RUFFRDs7SUFFRSx5QkFBd0I7R0FDekI7RXRCdUpIO0lzQm5KSSwyQkFBMEI7R0FDM0I7RUFFRDs7O0lBR0UsV0FBVTtJQUNWLFVBQVM7R0FDVjtFQUVEOztJQUVFLHdCQUF1QjtHQUN4QjtDekIyMU9GOztBMEJoN09EO0VBQ0MsbUJBQWtCO0VBQ2xCLGlCQUFnQjtFQUNoQixXQUFVO0VBQ1YsWUFBVztFQUNYLFdBQVU7RUFDVixjQUFhO0NBYWI7O0FBbkJEO0VBV0UsWUFBVztFQUNYLGFBQVk7RUFDWixzQkFBcUI7RUFDckIsVXBCb0JnRztFb0JuQmhHLFVBQVM7RUFDVCxvQ0FBMkI7TUFBM0IsZ0NBQTJCO1VBQTNCLDRCQUEyQjtFQUMzQixhQUFZO0NBQ1o7O0FDbEJGO0VBQ0MsV0FBVTtDQUNWOztBQUVEO0VBQ0MsV0FBVTtFQUNWLGtDQUF5QjtVQUF6QiwwQkFBeUI7RUFDekIsa0NBQXlCO1VBQXpCLDBCQUF5QjtDQUN6Qjs7QUFFRDtFQUNDLFdBQVU7Q0FDVjs7QUFFRDtFQUNDLHNCQUFxQjtDQUNyQjs7QUFHQTtFQUNDLDRCQUFtQjtVQUFuQixvQkFBbUI7Q0FDbkI7O0FBRUQ7RUFDQyw4QkFBcUI7VUFBckIsc0JBQXFCO0NBQ3JCOztBQUVEO0VBQ0MsOEJBQXFCO1VBQXJCLHNCQUFxQjtDQUNyQjs7QUFHRjtFQUNDO0lBQ0MsV0FBVTtJQUNWLDJDQUFrQztZQUFsQyxtQ0FBa0M7RzNCbzhPakM7RTJCajhPRjtJQUNDLFdBQVU7SUFDVix3Q0FBK0I7WUFBL0IsZ0NBQStCO0czQm04TzlCO0NBQ0Y7O0EyQjU4T0Q7RUFDQztJQUNDLFdBQVU7SUFDViwyQ0FBa0M7WUFBbEMsbUNBQWtDO0czQm84T2pDO0UyQmo4T0Y7SUFDQyxXQUFVO0lBQ1Ysd0NBQStCO1lBQS9CLGdDQUErQjtHM0JtOE85QjtDQUNGOztBMkIvN09EO0VBQ0M7SUFDQyxpQ0FBd0I7WUFBeEIseUJBQXdCO0czQms4T3ZCO0UyQi83T0Y7SUFDQyxzQ0FBNkI7WUFBN0IsOEJBQTZCO0czQmk4TzVCO0NBQ0Y7O0EyQng4T0Q7RUFDQztJQUNDLGlDQUF3QjtZQUF4Qix5QkFBd0I7RzNCazhPdkI7RTJCLzdPRjtJQUNDLHNDQUE2QjtZQUE3Qiw4QkFBNkI7RzNCaThPNUI7Q0FDRjs7QTJCMzdPRDtFQUNJO0lBQ0ksOEJBQXFCO1lBQXJCLHNCQUFxQjtJQUFFLDhCQUE4QjtJQUNyRCxXQUFVO0czQis3T2Y7RTJCNzdPQztJQUNJLGNBQWE7RzNCKzdPbEI7RTJCNzdPQztJQUNJLDRCQUFtQjtZQUFuQixvQkFBbUI7SUFBRSw2QkFBNkI7SUFDbEQsYUFBWTtHM0JnOE9qQjtDQUNGOztBMkIzOE9EO0VBQ0k7SUFDSSw4QkFBcUI7WUFBckIsc0JBQXFCO0lBQUUsOEJBQThCO0lBQ3JELFdBQVU7RzNCKzdPZjtFMkI3N09DO0lBQ0ksY0FBYTtHM0IrN09sQjtFMkI3N09DO0lBQ0ksNEJBQW1CO1lBQW5CLG9CQUFtQjtJQUFFLDZCQUE2QjtJQUNsRCxhQUFZO0czQmc4T2pCO0NBQ0Y7O0EyQjc3T0Q7RUFDSTtJQUNJLHNDQUE2QjtZQUE3Qiw4QkFBNkI7SUFDN0IsV0FBVTtHM0JnOE9mO0UyQjk3T0M7SUFDSSx5Q0FBZ0M7WUFBaEMsaUNBQWdDO0lBQ2hDLFdBQVU7RzNCZzhPZjtDQUNGOztBMkJ4OE9EO0VBQ0k7SUFDSSxzQ0FBNkI7WUFBN0IsOEJBQTZCO0lBQzdCLFdBQVU7RzNCZzhPZjtFMkI5N09DO0lBQ0kseUNBQWdDO1lBQWhDLGlDQUFnQztJQUNoQyxXQUFVO0czQmc4T2Y7Q0FDRjs7QTJCNzdPRDtFQUNJO0lBQ0ksU0FBUTtJQUNSLFVBQVM7RzNCZzhPZDtFMkI5N09DO0lBQ0ksVUFBUztJQUNULFdBQVU7SUFDVixtQ0FBMEI7WUFBMUIsMkJBQTBCO0lBQzFCLGFBQVk7RzNCZzhPakI7Q0FDRjs7QTJCMThPRDtFQUNJO0lBQ0ksU0FBUTtJQUNSLFVBQVM7RzNCZzhPZDtFMkI5N09DO0lBQ0ksVUFBUztJQUNULFdBQVU7SUFDVixtQ0FBMEI7WUFBMUIsMkJBQTBCO0lBQzFCLGFBQVk7RzNCZzhPakI7Q0FDRjs7QTJCNzdPRDtFQUNJO0lBQ0ksU0FBUTtJQUNSLFVBQVM7RzNCZzhPZDtFMkI5N09DO0lBQ0ksbUNBQTBCO1lBQTFCLDJCQUEwQjtJQUMxQixhQUFZO0lBRVosVUFBUztJQUNULFdBQVU7RzNCKzdPZjtDQUNGOztBMkIxOE9EO0VBQ0k7SUFDSSxTQUFRO0lBQ1IsVUFBUztHM0JnOE9kO0UyQjk3T0M7SUFDSSxtQ0FBMEI7WUFBMUIsMkJBQTBCO0lBQzFCLGFBQVk7SUFFWixVQUFTO0lBQ1QsV0FBVTtHM0IrN09mO0NBQ0Y7O0EyQjU3T0Q7RUFDSTtJQUNJLFdBQVU7SUFDVixvQ0FBMkI7WUFBM0IsNEJBQTJCO0czQis3T2hDO0UyQjc3T0M7SUFDSSxXQUFVO0lBQ1YsaUNBQXdCO1lBQXhCLHlCQUF3QjtHM0IrN083QjtDQUNGOztBMkJ2OE9EO0VBQ0k7SUFDSSxXQUFVO0lBQ1Ysb0NBQTJCO1lBQTNCLDRCQUEyQjtHM0IrN09oQztFMkI3N09DO0lBQ0ksV0FBVTtJQUNWLGlDQUF3QjtZQUF4Qix5QkFBd0I7RzNCKzdPN0I7Q0FDRjs7QTJCNTdPRDtFQUNJO0lBQ0ksNkJBQW9CO1lBQXBCLHFCQUFvQjtHM0IrN096QjtFMkI1N09DO0lBQ0ksa0NBQXlCO1lBQXpCLDBCQUF5QjtHM0I4N085QjtDQUNGOztBMkJyOE9EO0VBQ0k7SUFDSSw2QkFBb0I7WUFBcEIscUJBQW9CO0czQis3T3pCO0UyQjU3T0M7SUFDSSxrQ0FBeUI7WUFBekIsMEJBQXlCO0czQjg3TzlCO0NBQ0Y7O0EyQjU3T0Q7RUFDSTtJQUNJLGtDQUF5QjtZQUF6QiwwQkFBeUI7RzNCKzdPOUI7RTJCNTdPQztJQUNJLDZCQUFvQjtZQUFwQixxQkFBb0I7RzNCODdPekI7Q0FDRjs7QTJCcjhPRDtFQUNJO0lBQ0ksa0NBQXlCO1lBQXpCLDBCQUF5QjtHM0IrN085QjtFMkI1N09DO0lBQ0ksNkJBQW9CO1lBQXBCLHFCQUFvQjtHM0I4N096QjtDQUNGOztBNEJ2a1BEOzs7Ozs7Ozs7Ozs7OztFQWVDLG9CQUFtQjtDQUNuQjs7QVBDQTtFQUNDLHVCQUFzQjtFQUN0QiwwQkFBeUI7RUFDekIsdUJBQXNCO0NBQ3RCOztBT0VGO0VBQ0MsOEJBQTZCO0VBQzdCLFdBQVU7RUFDVixZQUFXO0VBQ1gsaUJBQWdCO0VBQ2hCLCtCQUE4QjtDQUM5Qjs7QUFFRDtFQUNDLFNBQVE7RUFDUixVQUFTO0VBQ1QsZ0JBQWU7RUFDZixlQUFjO0VBQ2QsWUFBVztFQUNYLGFBQVk7RUFDWix3QkFBdUI7RUFDdkIsbUJBQWtCO0VBQ2xCLHNCQUFxQjtFQUNyQixvQkFBbUI7RUFDbkIsa0JBQWlCO0VBQ2pCLG9CQUFtQjtFQUNuQixlQUFjO0VBQ2Qsc0JBQXFCO0VBQ3JCLDBCQUF5QjtFQUN6QixtREFBMEM7VUFBMUMsMkNBQTBDO0NBQzFDOztBakJnTE87RWlCL0tSO0lBRUUsY0FBYTtHQUVkO0M1QjBrUEE7O0E0QnRrUEM7RUFDQyxtQkFBa0I7Q0FDbEI7O0FBRUQ7RUFDQyxpQkFBZ0I7Q0FDaEI7O0FBRUQ7RUFDQyxrQkFBaUI7Q0FDakI7O0FBS0Y7RUFDQyxrQkFBaUI7Q0FDakI7O0FBRUQ7RUFDQyxrQkFBaUI7Q0FLakI7O0FqQjhJTTtFaUJwSlA7SUFJRSxrQkFBaUI7R0FFbEI7QzVCdWtQRDs7QTRCcmtQQTtFQUNDLGtCQUFpQjtDQUtqQjs7QWpCc0lNO0VpQjVJUDtJQUlFLGtCQUFpQjtHQUVsQjtDNUJ5a1BEOztBNEJ2a1BBO0VBQ0Msa0JBQWlCO0NBS2pCOztBakI4SE07RWlCcElQO0lBSUUsbUJBQWtCO0dBRW5CO0M1QjJrUEQ7O0E0QnprUEE7RUFDQyxpQkFBZ0I7Q0FDaEI7O0FBSUQ7RUFDQyxvQkFBbUI7Q0FLbkI7O0FqQmdITTtFaUJ0SFA7SUFJRSxxQkFBb0I7R0FFckI7QzVCMmtQRDs7QTRCemtQQTtFQUNDLG9CQUFtQjtDQUtuQjs7QWpCd0dNO0VpQjlHUDtJQUlFLHFCQUFvQjtHQUVyQjtDNUI2a1BEOztBNEIza1BBO0VBQ0Msb0JBQW1CO0NBS25COztBakJnR007RWlCdEdQO0lBSUUscUJBQW9CO0dBRXJCO0M1QitrUEQ7O0E0QjdrUEE7RUFDQyxvQkFBbUI7Q0FLbkI7O0FqQndGTTtFaUI5RlA7SUFJRSxzQkFBcUI7R0FFdEI7QzVCaWxQRDs7QTRCL2tQQTtFQUNDLG9CQUFtQjtDQUNuQjs7QUFHRjtFQUNDLHFCQUFvQjtDQWFwQjs7QWpCbUVPO0VpQmpGUjtJQUlFLHFCQUFvQjtHQVVyQjtDNUIwa1BBOztBNEJ4bFBEO0VBVUksaUJBQWdCO0NBQ2hCOztBQU1IO0VBQ0MsaUJBQWdCO0NBQ2hCOztBQUVEO0VBQ0MsaUJBQWdCO0NBS2hCOztBakJzRE07RWlCNURQO0lBSUUsaUJBQWdCO0dBRWpCO0M1QitrUEQ7O0E0QjNrUEE7RUFDQyxvQkFBbUI7Q0FDbkI7O0FBRUQ7RUFDQyxvQkFBbUI7Q0FLbkI7O0FqQndDTTtFaUI5Q1A7SUFJRSxvQkFBbUI7R0FFcEI7QzVCK2tQRDs7QTRCN2tQQTtFQUNDLGlCQUFnQjtDQUNoQjs7QTNCbkxGO0UyQjBMSSx5QkFBdUI7Q0FDMUI7O0FBRUQ7RUFDSSxZQUFXO0VBQ1gsZUFBYztFQUNkLGlCQUFnQjtFQUNoQiw4QkFBcUI7RUFBckIseUJBQXFCO0VBQXJCLHNCQUFxQjtFQUN4Qiw2QkFBb0I7T0FBcEIsd0JBQW9CO1VBQXBCLHFCQUFvQjtDQU9wQjs7QUFaRDtFQVFFLFlBQVc7RUFDWCxrQkFBaUI7RUFDakIsNkJBQW9CO09BQXBCLHdCQUFvQjtVQUFwQixxQkFBb0I7Q0FDcEI7O0FDak5GO0VBQ0MsaUJBQWdCO0VBQ2hCLG1CQUFrQjtDQUNsQjs7QUNIRDtFQUVDLGFBQVk7RUFDWixPQUFNO0VBQ04sUUFBTztFQUNQLFlBQVc7RUFDWCx3QkFBZTtFQUFmLG1CQUFlO0VBQWYsZ0JBQWU7RUFDZixnQkFBZTtFQUVmLHdCQUF1QjtDQXFCdkI7O0FuQmtNTztFbUJoT1I7SUFXRSxnQkFBZTtHQW1CaEI7QzlCb3hQQTs7QThCbHpQRDtFQWVFLGdCQUFlO0VBQ2Ysb0JqQkdhO0VpQkZiLGVBQWM7Q0FJZDs7QW5CMk1NO0VtQmhPUjtJQW1CRyxnQkFBZTtHQUVoQjtDOUJ5eVBEOztBVzlsUE87RW1CaE9SO0lBeUJHLGFBQVk7SUFDWixhQUFZO0lBQ1osZUFBYztHQUNkO0M5QjB5UEY7O0E4QnR5UEQ7RUFDQyxxQkFBYTtFQUFiLHFCQUFhO0VBQWIsY0FBYTtFQUNiLDBCQUFtQjtNQUFuQix1QkFBbUI7VUFBbkIsb0JBQW1CO0VBQ25CLDBCQUE4QjtNQUE5Qix1QkFBOEI7VUFBOUIsK0JBQThCO0NBb0U5Qjs7QW5CeUhPO0VtQmhNUjtJQUtFLG9CQUFlO1FBQWYsZ0JBQWU7SUFDZixhQUFZO0dBaUViO0M5QjR1UEE7O0E4QjF5UEE7RUFDQyxtQkFBa0I7Q0FDbEI7O0FBRUQ7RUFDQyxzQkFBcUI7RUFDckIsdUJBQXNCO0VBQ3RCLGVqQjlCYTtFaUIrQmIsbUJBQWtCO0VBQ2xCLGFBQVk7RUFDWix5QkFBZ0I7RUFBaEIsb0JBQWdCO0VBQWhCLGlCQUFnQjtFQUNoQixZQUFXO0VBQ1gsYUFBWTtFQUNaLGlCQUFnQjtDQWdEaEI7O0FuQjBITTtFbUJuTFA7SUFXRSx5QkFBd0I7R0E4Q3pCO0M5Qm13UEQ7O0E4QjV6UEM7RUFpQkMsWUFBVztFQUNYLGVBQWM7RUFDZCxtQkFBa0I7RUFDbEIsU0FBUTtFQUNSLFlBQVc7RUFDWCxZQUFXO0VBQ1gsMEJqQmxEWTtFaUJtRFoseUJBQWdCO0VBQWhCLG9CQUFnQjtFQUFoQixpQkFBZ0I7RUFDaEIsaUJBQWdCO0NBQ2hCOztBQTFCRDtFQTZCQyxTQUFRO0NBQ1I7O0FBOUJEO0VBaUNDLFNBQVE7Q0FDUjs7QUFsQ0Q7RUFxQ0MsVUFBUztDQUNUOztBQUVEO0VBR0UsVUFBUztDQUNUOztBQUpGO0VBTUUsV0FBVTtDQUNWOztBQVBGO0VBVUUsa0NBQXlCO01BQXpCLDhCQUF5QjtVQUF6QiwwQkFBeUI7Q0FDekI7O0FBWEY7RUFjRSxpQ0FBd0I7TUFBeEIsNkJBQXdCO1VBQXhCLHlCQUF3QjtDQUN4Qjs7QUNuR0g7RUFDQyxhQUFZO0VBQ1osYUFBWTtDQUNaOztBQ0pGOzs7O0VBSUMsZUFBYztFQUNkLGlCQUFnQjtFQUNoQixhQUFZO0VBQ1oscUJDcUJvQjtFRG5CcEIsMkJBQTBCO0VBQzFCLG1CZkFrQjtFZUNsQiwrQ0FBOEI7VUFBOUIsdUNBQThCO0NBTzlCOztBQWxCRDs7OztFQWVFLGVBQWM7RUFDZCxhQUFZO0NBQ1o7O0FBR0Y7O0VBRUMsWUFBVztDQUNYOztBQUVEO0VBQ0MsWUFBVztFQUNYLHNCQ0NvQjtDRGFwQjs7QXJCdUxPO0VxQnZNUjtJQUtFLFdBQVU7SUFDVixlQUFjO0lBQ2QsWUFBVztJQUNYLFlBQVc7SUFDWCxvQkNObUI7R0RhcEI7Q2hDczVQQTs7QWdDdDZQRDtFQWNFLGVBQWM7Q0FDZDs7QUFHRjtFQUNDLFlBQVc7RUFDWCxzQkNqQm9CO0NEMEJwQjs7QXJCMEtPO0VxQnJMUjtJQUtFLGFBQVk7SUFDWixXQUFVO0lBQ1YsZUFBYztJQUNkLGFBQVk7SUFDWixtQkN4Qm1CO0dEMEJwQjtDaEM0NVBBOztBZ0MxNVBEO0VBQ0MsZ0JBQWU7RUFDZixrQkFBaUI7RUFDakIsbUJBQWtCO0NBQ2xCOztBQUVEO0VBQ0MsWUFBVztFQUNYLGdCQUFlO0VBQ2YsZ0JBQWU7Q0FDZjs7QUFFRDtFQUNDLGlCMUJuQ2lHO0VJVWhHLGdCc0IwQnNCO0V0QnpCdEIsb0JBQXdEO0VBV3RELHFCQUF3QztFc0JlM0MsbUJBQWtCO0VBQ2xCLG1CQUFrQjtDQUNsQjs7QUV6RUQ7RUFDQyxvQkFBTztNQUFQLFlBQU87VUFBUCxRQUFPO0NBVVA7O0F2QnFOTztFdUJoT1I7SUFHRSxjQUFhO0lBQ2IsNkJBQVE7UUFBUixrQkFBUTtZQUFSLFNBQVE7SUFDUixvQkFBYztRQUFkLG1CQUFjO1lBQWQsZUFBYztJQUNkLHFCQUFvQjtHQUtyQjtFQUpDO0lBQ0MsZUFBYztHQUNkO0NsQzgrUEY7O0FrQzErUEQ7RUFDQyxpQkFBZ0I7RUFDaEIsaUJBQWdCO0VBQ2hCLFVBQVM7Q0F3QlQ7O0FBM0JEO0VBS0UsZUFBYztFQUNkLG9CQUFtQjtDQW9CbkI7O0F2QnlMTTtFdUJuTlI7SUFRRyxVQUFTO0lBQ1QsbUJBQWtCO0lBQ2xCLHNCQUFxQjtHQWdCdEI7Q2xDbStQRDs7QWtDNy9QRDtFQWNHLHNCQUFxQjtDQUtyQjs7QUFuQkg7RUFnQkksc0JBQXFCO0VBQ3JCLGVyQlpXO0NxQmFYOztBQWxCSjtFQXVCSSxlckJsQlc7Q3FCbUJYOztBQUtKO0VBQ0MsaUJBQWdCO0VBQ2hCLGtCQUFpQjtFQUNqQiw4QnJCdkJnQjtFcUJ3QmhCLG1CQUFrQjtDQWFsQjs7QUFqQkQ7RUFPRSxzQkFBcUI7RUFDckIsaUJBQWdCO0VBQ2hCLGVyQjdCZTtFcUI4QmYsc0JBQXFCO0NBTXJCOztBQWhCRjtFQWNHLGFyQnpDcUM7Q3FCMENyQzs7QUN6REg7RUFDSSxpQkFBZ0I7Q0FDbkI7O0FoQ3NCRDtFZ0NsQkksd0JBQXVCO0NBRTFCOztBQVJHO0VBVUEsaUJBQWdCO0VBQ2hCLFlBQVc7RUFDWCwwQnRCWWM7Q3NCcUlqQjs7QUFwSkQ7RUFNUSxpQkFBZ0I7RUFDaEIsWUFBVztFQUNYLG1CQUFrQjtFQUNsQixTQUFRO0VBQ1IsZ0JBQWU7RUFDZixZQUFXO0NBcUJkOztBQWhDTDtFQWFZLHdCQUF1QjtFQUd2Qiw2QkFBNEI7RUFDNUIsdUJBQXNCO0VBRXRCLG1CQUFrQjtFQUNsQixTQUFRO0VBQ1IsWUFBVztFQUVYLGFBQVk7RUFDWixjQUFhO0VBQ2IsNEJBQTJCO0NBTTlCOztBeEJ3TEQ7RXdCdk5SO0lBNEJnQix3REFBdUQ7R0FHOUQ7Q25DMGlRUjs7QW1DemtRRDtFQW1DUSxtQkFBa0I7RUFDbEIsU0FBUTtFQUVSLHFCQUFhO0VBQWIscUJBQWE7RUFBYixjQUFhO0VBQ2IsdUJBQXFCO01BQXJCLG9CQUFxQjtVQUFyQixzQkFBcUI7RUFDckIsY0FBYTtDQUtoQjs7QXhCMEtHO0V3QnZOUjtJQTJDWSxjQUFhO0dBRXBCO0NuQzBpUUo7O0FtQ3ZsUUQ7RUFnRFEsV0FBVTtFQUFFLG1CQUFtQjtFQUMvQiwrQ0FBc0M7VUFBdEMsdUNBQXNDO0VBQUUseUJBQXlCO0VBQ2pFLDRCQUFtQjtVQUFuQixvQkFBbUI7RUFBRSx1Q0FBdUM7RUFFNUQsWUFBVztFQUNYLHFCQUFhO0VBQWIscUJBQWE7RUFBYixjQUFhO0VBQ2IsMEJBQThCO01BQTlCLHVCQUE4QjtVQUE5QiwrQkFBOEI7RUFDOUIsdUJBQXFCO01BQXJCLG9CQUFxQjtVQUFyQixzQkFBcUI7Q0E4QnhCOztBeEJrSUc7RXdCdk5SO0lBMERZLDZCQUFzQjtJQUF0Qiw4QkFBc0I7UUFBdEIsMkJBQXNCO1lBQXRCLHVCQUFzQjtJQUN0QixVQUFTO0dBMEJoQjtDbkNzaFFKOztBbUMzbVFEO0VBK0RZLGlCQUFnQjtDQUNuQjs7QUFoRVQ7RUFrRVksYUFBWTtFQUNaLCtCQUE4QjtFQUM5QixnQkFBZTtFQUNmLGlCQUFnQjtFQUNoQixvQkFBbUI7RUFBRSxjQUFjO0VBQ25DLHNCQUFxQjtFQUNyQixvQkFBbUI7Q0FJdEI7O0F4QjJJRDtFd0J2TlI7SUEwRWdCLGdCQUFlO0dBRXRCO0NuQ29qUVI7O0FtQ2hvUUQ7RUE4RVksYUFBWTtFQUNaLGlCQUFnQjtFQUNoQixnQkFBZTtFQUNmLGlCQUFnQjtFQUNoQixrQkFBaUI7RUFBRSxZQUFZO0VBQy9CLHdCQUF1QjtDQUMxQjs7QUFwRlQ7RUF5RlEsbUJBQWtCO0NBc0NyQjs7QXhCd0ZHO0V3QnZOUjtJQTJGWSxnQkFBZTtHQW9DdEI7Q25DcWhRSjs7QW1DcHBRRDtFQStGWSxzREFBNkM7VUFBN0MsOENBQTZDO0VBQzdDLGFBQVk7RUFDWixhQUFZO0VBRVosb0NBQTJCO0VBQTNCLCtCQUEyQjtFQUEzQiw0QkFBMkI7Q0FLOUI7O0F4QitHRDtFd0J2TlI7SUFzR2dCLFlBQVc7R0FFbEI7Q25DeWpRUjs7QW1DanFRRDtFQTJHWSxZQUFXO0VBQ1gsbUJBQWtCO0VBQ2xCLFNBQVE7RUFDUixVQUFTO0VBQ1QsdUVBQThEO1VBQTlELCtEQUE4RDtFQUU5RCxrQ0FBeUI7RUFBekIsNkJBQXlCO0VBQXpCLDBCQUF5QjtDQUM1Qjs7QUFsSFQ7RUFzSGdCLGlEQUF3QztVQUF4Qyx5Q0FBd0M7RUFDeEMsZXRCdkdGO0NzQndHRDs7QUF4SGI7RUEySGdCLGFBQVk7RUFDWixxRUFBNEQ7VUFBNUQsNkRBQTREO0NBQy9EOztBeEIwRkw7RXdCdk5SO0lBb0lnQixXQUFVO0dBT2pCO0NuQytpUVI7O0FXbitQTztFd0J2TlI7SUF1SWdCLFVBQVM7SUFDVCxlQUFjO0lBQ2QsUUFBTztHQUVkO0NuQ3VqUVI7O0FtQ2xzUUQ7RUE4SVksZ0JBQWU7RUFDZixTQUFRO0VBQ1Isc0JBQXFCO0VBQ3JCLFdBQVU7Q0FDYjs7QUFJVDtFQUNJLG1CQUFrQjtFQUNsQixTQUFRO0VBQ1IsVUFBUztFQUNULFlBQVc7RUFDWCx5Q0FBZ0M7TUFBaEMscUNBQWdDO1VBQWhDLGlDQUFnQztFQUNoQyxpQkFBZ0I7RUFFaEIsK0ZBQzhDO1VBRDlDLHVGQUM4QztDQU9qRDs7QXhCaURPO0V3QmpFUjtJQVlRLGlCQUFnQjtJQUNoQixxR0FDb0Q7WUFEcEQsNkZBQ29EO0dBRTNEO0NuQ29qUUE7O0FtQ2xqUUQ7RUFDSSw0Q0FBMkM7RUFFM0Msb0JBQW1CO0VBQ25CLG1CQUFrQjtFQUNsQixZQUFXO0VBQ1gsaUJBQWdCO0VBQ2hCLGtDQUF5QjtFQUF6Qiw2QkFBeUI7RUFBekIsMEJBQXlCO0VBQ3pCLFlBQVc7RUFDWCxXQUFVO0NBb0ViOztBQTdFRDtFQVdRLFlBQVc7RUFDWCxtQkFBa0I7RUFDbEIsVUFBUztFQUNULFlBQVc7RUFDWCxnQkFBZTtDQUNsQjs7QUFoQkw7RUFtQlEscUJBQXNCO0VBQ3RCLGlCQUFnQjtDQUVuQjs7QXhCeUJHO0V3Qi9DUjtJQXdCUSxTQUFRO0lBQ1Isc0NBQTZCO1FBQTdCLGtDQUE2QjtZQUE3Qiw4QkFBNkI7SUFDN0IsYUFBWTtHQW1EbkI7Q25DcWdRQTs7QVduaVFPO0V3Qi9DUjtJQThCUSxjQUFhO0lBQ2IsUUFBTztJQUNQLDRCQUEyQjtHQTZDbEM7RUE3RUQ7SUFvQ1ksZUFBYztJQUNkLDJCQUEwQjtHQUM3QjtDbkN3alFSOztBbUM5bFFEOztFQTJDUSxlQUFjO0NBQ2pCOztBQTVDTDtFQStDWSxxQkFBYTtFQUFiLHFCQUFhO0VBQWIsY0FBYTtFQUNiLFVBQVM7RUFDVCxvQkFBbUI7Q0FJdEI7O0F4Qk5EO0V3Qi9DUjtJQW1EZ0IsNkJBQXNCO0lBQXRCLDhCQUFzQjtRQUF0QiwyQkFBc0I7WUFBdEIsdUJBQXNCO0dBRTdCO0NuQzBqUVI7O0FtQy9tUUQ7RUF5RGdCLHNCQUFxQjtFQUNyQixldEJ6TkQ7RXNCME5DLDBCdEJuTkY7RXNCb05FLGV0QnJORTtFc0JzTkYsc0J0QnJORjtDc0JzTkQ7O0FBOURiO0VBaUVZLHFCQUFhO0VBQWIscUJBQWE7RUFBYixjQUFhO0VBQ2IsNkJBQXNCO0VBQXRCLDhCQUFzQjtNQUF0QiwyQkFBc0I7VUFBdEIsdUJBQXNCO0VBQ3RCLGlCQUFnQjtFQUNoQixVQUFTO0VBQ1QsbUJBQWtCO0NBTXJCOztBQTNFVDtFQXdFZ0IsbUJBQWtCO0VBQ2xCLGdCQUFlO0NBQ2xCOztBQUtiO0VBQ0ksV0FBVTtFQUNWLG9CQUFtQjtDQUN0Qjs7QUFFRDtFQUNJLFdBQVU7RUFDVixvQkFBbUI7Q0FDdEI7O0FBRUQ7RUFDSSwwQkFBeUI7RUFDekIsYUFBWTtFQUNaLGdCQUFlO0VBQ2YsU0FBUTtFQUNSLHVCQUFzQjtFQUV0QixXQUFVO0VBQ1YsbUJBQWtCO0VBQ2xCLGtDQUF5QjtFQUF6Qiw2QkFBeUI7RUFBekIsMEJBQXlCO0VBRXpCLFlBQVc7Q0FtRGQ7O0FBOUREO0VBYVEsWUFBVztFQUNYLG1CQUFrQjtFQUNsQixVQUFTO0VBQ1QsWUFBVztFQUNYLGdCQUFlO0NBQ2xCOztBQWxCTDtFQXNCUSxpQkFBZ0I7RUFDaEIsNEJBQTJCO0VBQzNCLG9CQUFtQjtFQU1qQixXQUFXO0VBS1gsWUFBWTtFQUtaLHFCQUFxQjtDQU8xQjs7QUEvQ0w7RUEyQlksV0FBVTtDQUNYOztBQTVCWDtFQWdDWSx3QkFBdUI7Q0FDeEI7O0FBakNYO0VBcUNZLGlCQUFnQjtDQUNqQjs7QUF0Q1g7RUEwQ1ksb0J0QjNSRTtDc0I0Ukg7O0FBM0NYO0VBaURRLGV0QmxTTTtFc0JtU04sZ0JBQWU7RUFDZixpQkFBZ0I7RUFDaEIsaUJBQWdCO0NBQ25COztBQXJETDtFQXVEUSxpQkFBZ0I7RUFDaEIsZ0JBQWU7Q0FLbEI7O0FBN0RMO0VBMERZLGdCQUFlO0VBQ2YsaUJBQWdCO0NBQ25COztBQ3RVVDtFQUdRLGVBQWM7Q0FVakI7O0FBYkw7RUFLWSxhQUFZO0NBQ2Y7O0FBTlQ7RUFRWSxnQkFBZTtDQUlsQjs7QUFaVDtFQVVnQixpQkFBZ0I7Q0FDbkI7O0FBS2I7O0VBRUksd0JBQXVCO0NBd0wxQjs7QUExTEQ7O0VBS1EsZ0JBQWU7Q0FJbEI7O0FBVEw7O0VBT1ksaUJBQWdCO0NBQ25COztBQVJUOztFQVdRLG1CQUFrQjtFQUNsQixzQkFBcUI7Q0FDeEI7O0FBYkw7O0VBa0JRLGFBQVk7Q0FDZjs7QUFuQkw7O0VBc0JRLFlBQVc7Q0FDZDs7QUF2Qkw7O0VBNkJRLDBCdkJqQmM7RXVCbUJkLHVCQUFzQjtDQUN6Qjs7QUFoQ0w7O0VBbUNRLGNBQWE7RUFDYixpQ3ZCeEJjO0V1QnlCZCxxQkFBYTtFQUFiLHFCQUFhO0VBQWIsY0FBYTtFQUNiLG9CQUFlO01BQWYsZ0JBQWU7RUFDZixVQUFTO0NBb0RaOztBekJxSEc7RXlCaE5SOztJQTBDWSw2QkFBc0I7SUFBdEIsOEJBQXNCO1FBQXRCLDJCQUFzQjtZQUF0Qix1QkFBc0I7R0FpRDdCO0NwQ3UxUUo7O0FvQ2w3UUQ7O0VBNkNZLG1CQUFrQjtDQVdyQjs7QUF4RFQ7O0VBK0NnQiwwQnZCbkNNO0V1Qm9DTixzQkFBcUI7Q0FDeEI7O0FBakRiOztFQW1EZ0IsbUJBQWtCO0VBQ2xCLHFCQUFvQjtFQUNwQixTQUFRO0VBQ1IsZUFBYztDQUNqQjs7QUF2RGI7O0VBMkRZLGdCQUFlO0VBQ2Ysa0JBQWlCO0NBOEJwQjs7QXpCc0hEO0V5QmhOUjs7SUE4RGdCLFlBQVc7R0E0QmxCO0NwQ3czUVI7O0FvQ2w5UUQ7O0VBa0VnQiwwQnZCdERNO0V1QnVETixxQkFBb0I7RUFDcEIsc0JBQXFCO0NBcUJ4Qjs7QUF6RmI7O0VBdUVvQix5QkFBeUI7RUFDekIsZUFBYztDQUNqQjs7QUF6RWpCOztFQTJFb0IsaUJBQWlCO0VBQ2pCLGVBQWM7Q0FDakI7O0FBN0VqQjs7RUErRW9CLFlBQVk7RUFDWixlQUFjO0NBQ2pCOztBQWpGakI7O0VBbUZvQixpQkFBaUI7RUFDakIsZUFBYztDQUNqQjs7QUFyRmpCOztFQXVGb0Isc0J2QjlFTjtDdUIrRUc7O0FBeEZqQjs7RUE2RlEsaUN2QmpGYztFdUJrRmQsY0FBYTtFQUNiLHFCQUFhO0VBQWIscUJBQWE7RUFBYixjQUFhO0VBQ2IsMEJBQThCO01BQTlCLHVCQUE4QjtVQUE5QiwrQkFBOEI7RUFDOUIsMEJBQW1CO01BQW5CLHVCQUFtQjtVQUFuQixvQkFBbUI7RUFDbkIsWUFBVztDQXlEZDs7QXpCcURHO0V5QmhOUjs7SUFvR1ksNkJBQXNCO0lBQXRCLDhCQUFzQjtRQUF0QiwyQkFBc0I7WUFBdEIsdUJBQXNCO0lBQ3RCLHlCQUF1QjtRQUF2QixzQkFBdUI7WUFBdkIsd0JBQXVCO0lBQ3ZCLFlBQVc7R0FxRGxCO0NwQzgyUUo7O0FvQ3pnUkQ7O0VBMEdZLDBDQUF5QztDQUM1Qzs7QUEzR1Q7O0VBNkdZLG1CQUFrQjtFQUNsQixvQkFBTztNQUFQLFlBQU87VUFBUCxRQUFPO0VBQ1AsaUJBQWdCO0VBQ2hCLGlCQUFnQjtDQUNuQjs7QUFqSFQ7O0VBbUhZLGlCQUFnQjtDQUNuQjs7QUFwSFQ7O0VBc0hZLHVCQUFzQjtDQU16Qjs7QUE1SFQ7O0VBd0hnQixlQUFjO0VBQ2Qsb0JBQW1CO0VBQ25CLHFCQUFvQjtDQUN2Qjs7QUEzSGI7O0VBOEhZLDBDQUF5QztFQUN6QyxrQ0FBeUI7RUFBekIsNkJBQXlCO0VBQXpCLDBCQUF5QjtDQUM1Qjs7QUFoSVQ7O0VBbUlZLGV2QjFIRTtFdUIySEYsaUJBQWdCO0VBQ2hCLHFCQUFhO0VBQWIscUJBQWE7RUFBYixjQUFhO0VBQ2IsMEJBQW1CO01BQW5CLHVCQUFtQjtVQUFuQixvQkFBbUI7RUFDbkIseUJBQXVCO01BQXZCLHNCQUF1QjtVQUF2Qix3QkFBdUI7RUFDdkIsU0FBUTtFQUNSLG9CQUFtQjtDQWlCdEI7O0FBMUpUOztFQTRJZ0IsUUFBTztFQUNQLG1CQUFrQjtFQUNsQixrQ0FBeUI7RUFBekIsNkJBQXlCO0VBQXpCLDBCQUF5QjtFQUN6QixZQUFXO0VBQ1gsMEJBQW1CO01BQW5CLHVCQUFtQjtVQUFuQixvQkFBbUI7Q0FJdEI7O0FBcEpiOztFQWtKb0IsZXZCeklOO0N1QjBJRzs7QUFuSmpCOztFQXVKb0IsVUFBUztDQUNaOztBQXhKakI7O0VBOEpRLHFCQUFhO0VBQWIscUJBQWE7RUFBYixjQUFhO0VBQ2IsMEJBQThCO01BQTlCLHVCQUE4QjtVQUE5QiwrQkFBOEI7RUFDOUIsMEJBQW1CO01BQW5CLHVCQUFtQjtVQUFuQixvQkFBbUI7RUFDbkIsZ0JBQWU7Q0F3QmxCOztBQXpMTDs7RUFvS1kscUJBQWE7RUFBYixxQkFBYTtFQUFiLGNBQWE7RUFDYixTQUFRO0NBbUJYOztBQXhMVDs7RUF1S2dCLDJEQUFrRDtFQUFsRCxzREFBa0Q7RUFBbEQsbURBQWtEO0VBQ2xELGVBQWM7RUFFZCx5QkFBd0I7RUFDeEIsc0JBQXFCO0VBQ3JCLHVCQUFzQjtFQUN0QixpQkFBZ0I7Q0FVbkI7O0FBdkxiOztFQStLb0IsMEJ2QnRLTjtFdUJ1S00sZUFBYztDQUNqQjs7QUFqTGpCOztFQW9Mb0IsOEJBQTZCO0VBQzdCLHNCdkI1S047Q3VCNktHOztBQU1qQjtFQUVRLGlCQUFnQjtDQVduQjs7QUFiTDtFQUtZLG9CQUFtQjtDQU90Qjs7QUFaVDtFQVVnQixpQkFBZ0I7Q0FDbkI7O0FBWGI7RUFRb0Isa0JBQWlCO0NBQ3BCOztBQVRqQjtFQWVRLG9CQUFtQjtDQTJCdEI7O0FBMUNMO0VBaUJZLGV2QnBNRTtFdUJxTUYsaUJBQWdCO0VBQ2hCLHFCQUFhO0VBQWIscUJBQWE7RUFBYixjQUFhO0VBQ2IsMEJBQW1CO01BQW5CLHVCQUFtQjtVQUFuQixvQkFBbUI7RUFDbkIsd0JBQTJCO01BQTNCLHFCQUEyQjtVQUEzQiw0QkFBMkI7RUFDM0IsU0FBUTtFQUNSLG9CQUFtQjtDQWtCdEI7O0FBekNUO0VBMEJnQixRQUFPO0VBQ1AsbUJBQWtCO0VBQ2xCLGtDQUF5QjtFQUF6Qiw2QkFBeUI7RUFBekIsMEJBQXlCO0VBQ3pCLFlBQVc7RUFDWCwwQkFBbUI7TUFBbkIsdUJBQW1CO1VBQW5CLG9CQUFtQjtFQUNuQixlQUFjO0NBSWpCOztBQW5DYjtFQWlDb0IsZXZCcE5OO0N1QnFORzs7QUFsQ2pCO0VBc0NvQixZQUFXO0NBQ2Q7O0FBdkNqQjtFQTRDUSxxQkFBYTtFQUFiLHFCQUFhO0VBQWIsY0FBYTtFQUNiLDZCQUFzQjtFQUF0Qiw4QkFBc0I7TUFBdEIsMkJBQXNCO1VBQXRCLHVCQUFzQjtFQUN0QixVQUFTO0NBU1o7O0FBdkRMO0VBZ0RZLHFCQUFhO0VBQWIscUJBQWE7RUFBYixjQUFhO0VBQ2IsVUFBUztFQUNULDBCQUFtQjtNQUFuQix1QkFBbUI7VUFBbkIsb0JBQW1CO0NBSXRCOztBQXREVDtFQW9EZ0IsWUFBVztDQUNkIiwiZmlsZSI6InNjcmVlbi5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyJAY2hhcnNldCBcIlVURi04XCI7XG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgI0JPWC1TSVpJTkdcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIE1vcmUgc2Vuc2libGUgZGVmYXVsdCBib3gtc2l6aW5nOlxuICogY3NzLXRyaWNrcy5jb20vaW5oZXJpdGluZy1ib3gtc2l6aW5nLXByb2JhYmx5LXNsaWdodGx5LWJldHRlci1iZXN0LXByYWN0aWNlXG4gKi9cbkBpbXBvcnQgdXJsKFwiaHR0cHM6Ly9mb250cy5nb29nbGVhcGlzLmNvbS9jc3MyP2ZhbWlseT1SZWQrSGF0K0Rpc3BsYXk6aXRhbCx3Z2h0QDAsMzAwLi45MDA7MSwzMDAuLjkwMCZkaXNwbGF5PXN3YXBcIik7XG5odG1sIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cblxuKiwgKjpiZWZvcmUsICo6YWZ0ZXIge1xuICBib3gtc2l6aW5nOiBpbmhlcml0O1xufVxuXG4vKiEgbm9ybWFsaXplLmNzcyB2Ny4wLjAgfCBNSVQgTGljZW5zZSB8IGdpdGh1Yi5jb20vbmVjb2xhcy9ub3JtYWxpemUuY3NzICovXG4vKiBEb2N1bWVudFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgbGluZSBoZWlnaHQgaW4gYWxsIGJyb3dzZXJzLlxuICogMi4gUHJldmVudCBhZGp1c3RtZW50cyBvZiBmb250IHNpemUgYWZ0ZXIgb3JpZW50YXRpb24gY2hhbmdlcyBpblxuICogICAgSUUgb24gV2luZG93cyBQaG9uZSBhbmQgaW4gaU9TLlxuICovXG5odG1sIHtcbiAgbGluZS1oZWlnaHQ6IDEuMTU7XG4gIC8qIDEgKi9cbiAgLW1zLXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7XG4gIC8qIDIgKi9cbiAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlO1xuICAvKiAyICovXG59XG5cbi8qIFNlY3Rpb25zXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAqL1xuYm9keSB7XG4gIG1hcmdpbjogMDtcbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cbiAqL1xuYXJ0aWNsZSxcbmFzaWRlLFxuZm9vdGVyLFxuaGVhZGVyLFxubmF2LFxuc2VjdGlvbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vKipcbiAqIENvcnJlY3QgdGhlIGZvbnQgc2l6ZSBhbmQgbWFyZ2luIG9uIGBoMWAgZWxlbWVudHMgd2l0aGluIGBzZWN0aW9uYCBhbmRcbiAqIGBhcnRpY2xlYCBjb250ZXh0cyBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBTYWZhcmkuXG4gKi9cbmgxIHtcbiAgZm9udC1zaXplOiAyZW07XG4gIG1hcmdpbjogMC42N2VtIDA7XG59XG5cbi8qIEdyb3VwaW5nIGNvbnRlbnRcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDktLlxuICogMS4gQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUuXG4gKi9cbmZpZ2NhcHRpb24sXG5maWd1cmUsXG5tYWluIHtcbiAgLyogMSAqL1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgbWFyZ2luIGluIElFIDguXG4gKi9cbmZpZ3VyZSB7XG4gIG1hcmdpbjogMWVtIDQwcHg7XG59XG5cbi8qKlxuICogMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gRmlyZWZveC5cbiAqIDIuIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UgYW5kIElFLlxuICovXG5ociB7XG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICAvKiAxICovXG4gIGhlaWdodDogMDtcbiAgLyogMSAqL1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgLyogMiAqL1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIGluaGVyaXRhbmNlIGFuZCBzY2FsaW5nIG9mIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gKiAyLiBDb3JyZWN0IHRoZSBvZGQgYGVtYCBmb250IHNpemluZyBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cbnByZSB7XG4gIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTtcbiAgLyogMSAqL1xuICBmb250LXNpemU6IDFlbTtcbiAgLyogMiAqL1xufVxuXG4vKiBUZXh0LWxldmVsIHNlbWFudGljc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICogMS4gUmVtb3ZlIHRoZSBncmF5IGJhY2tncm91bmQgb24gYWN0aXZlIGxpbmtzIGluIElFIDEwLlxuICogMi4gUmVtb3ZlIGdhcHMgaW4gbGlua3MgdW5kZXJsaW5lIGluIGlPUyA4KyBhbmQgU2FmYXJpIDgrLlxuICovXG5hIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIC8qIDEgKi9cbiAgLXdlYmtpdC10ZXh0LWRlY29yYXRpb24tc2tpcDogb2JqZWN0cztcbiAgLyogMiAqL1xufVxuXG4vKipcbiAqIDEuIFJlbW92ZSB0aGUgYm90dG9tIGJvcmRlciBpbiBDaHJvbWUgNTctIGFuZCBGaXJlZm94IDM5LS5cbiAqIDIuIEFkZCB0aGUgY29ycmVjdCB0ZXh0IGRlY29yYXRpb24gaW4gQ2hyb21lLCBFZGdlLCBJRSwgT3BlcmEsIGFuZCBTYWZhcmkuXG4gKi9cbmFiYnJbdGl0bGVdIHtcbiAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgLyogMSAqL1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgLyogMiAqL1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSBkb3R0ZWQ7XG4gIC8qIDIgKi9cbn1cblxuLyoqXG4gKiBQcmV2ZW50IHRoZSBkdXBsaWNhdGUgYXBwbGljYXRpb24gb2YgYGJvbGRlcmAgYnkgdGhlIG5leHQgcnVsZSBpbiBTYWZhcmkgNi5cbiAqL1xuYixcbnN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiBpbmhlcml0O1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBmb250IHdlaWdodCBpbiBDaHJvbWUsIEVkZ2UsIGFuZCBTYWZhcmkuXG4gKi9cbmIsXG5zdHJvbmcge1xuICBmb250LXdlaWdodDogYm9sZGVyO1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIGluaGVyaXRhbmNlIGFuZCBzY2FsaW5nIG9mIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gKiAyLiBDb3JyZWN0IHRoZSBvZGQgYGVtYCBmb250IHNpemluZyBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cbmNvZGUsXG5rYmQsXG5zYW1wIHtcbiAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlO1xuICAvKiAxICovXG4gIGZvbnQtc2l6ZTogMWVtO1xuICAvKiAyICovXG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGZvbnQgc3R5bGUgaW4gQW5kcm9pZCA0LjMtLlxuICovXG5kZm4ge1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGJhY2tncm91bmQgYW5kIGNvbG9yIGluIElFIDktLlxuICovXG5tYXJrIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmMDtcbiAgY29sb3I6ICMwMDA7XG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cbnNtYWxsIHtcbiAgZm9udC1zaXplOiA4MCU7XG59XG5cbi8qKlxuICogUHJldmVudCBgc3ViYCBhbmQgYHN1cGAgZWxlbWVudHMgZnJvbSBhZmZlY3RpbmcgdGhlIGxpbmUgaGVpZ2h0IGluXG4gKiBhbGwgYnJvd3NlcnMuXG4gKi9cbnN1YixcbnN1cCB7XG4gIGZvbnQtc2l6ZTogNzUlO1xuICBsaW5lLWhlaWdodDogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbnN1YiB7XG4gIGJvdHRvbTogLTAuMjVlbTtcbn1cblxuc3VwIHtcbiAgdG9wOiAtMC41ZW07XG59XG5cbi8qIEVtYmVkZGVkIGNvbnRlbnRcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDktLlxuICovXG5hdWRpbyxcbnZpZGVvIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIGlPUyA0LTcuXG4gKi9cbmF1ZGlvOm5vdChbY29udHJvbHNdKSB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGhlaWdodDogMDtcbn1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGJvcmRlciBvbiBpbWFnZXMgaW5zaWRlIGxpbmtzIGluIElFIDEwLS5cbiAqL1xuaW1nIHtcbiAgYm9yZGVyLXN0eWxlOiBub25lO1xufVxuXG4vKipcbiAqIEhpZGUgdGhlIG92ZXJmbG93IGluIElFLlxuICovXG5zdmc6bm90KDpyb290KSB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi8qIEZvcm1zXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiAxLiBDaGFuZ2UgdGhlIGZvbnQgc3R5bGVzIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICogMi4gUmVtb3ZlIHRoZSBtYXJnaW4gaW4gRmlyZWZveCBhbmQgU2FmYXJpLlxuICovXG5idXR0b24sXG5pbnB1dCxcbm9wdGdyb3VwLFxuc2VsZWN0LFxudGV4dGFyZWEge1xuICBmb250LWZhbWlseTogc2Fucy1zZXJpZjtcbiAgLyogMSAqL1xuICBmb250LXNpemU6IDEwMCU7XG4gIC8qIDEgKi9cbiAgbGluZS1oZWlnaHQ6IDEuMTU7XG4gIC8qIDEgKi9cbiAgbWFyZ2luOiAwO1xuICAvKiAyICovXG59XG5cbi8qKlxuICogU2hvdyB0aGUgb3ZlcmZsb3cgaW4gSUUuXG4gKiAxLiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlLlxuICovXG5idXR0b24sXG5pbnB1dCB7XG4gIC8qIDEgKi9cbiAgb3ZlcmZsb3c6IHZpc2libGU7XG59XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBFZGdlLCBGaXJlZm94LCBhbmQgSUUuXG4gKiAxLiBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEZpcmVmb3guXG4gKi9cbmJ1dHRvbixcbnNlbGVjdCB7XG4gIC8qIDEgKi9cbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG59XG5cbi8qKlxuICogMS4gUHJldmVudCBhIFdlYktpdCBidWcgd2hlcmUgKDIpIGRlc3Ryb3lzIG5hdGl2ZSBgYXVkaW9gIGFuZCBgdmlkZW9gXG4gKiAgICBjb250cm9scyBpbiBBbmRyb2lkIDQuXG4gKiAyLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuICovXG5idXR0b24sXG5odG1sIFt0eXBlPVwiYnV0dG9uXCJdLFxuW3R5cGU9XCJyZXNldFwiXSxcblt0eXBlPVwic3VibWl0XCJdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247XG4gIC8qIDIgKi9cbn1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGlubmVyIGJvcmRlciBhbmQgcGFkZGluZyBpbiBGaXJlZm94LlxuICovXG5idXR0b246Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1cImJ1dHRvblwiXTo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwicmVzZXRcIl06Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1cInN1Ym1pdFwiXTo6LW1vei1mb2N1cy1pbm5lciB7XG4gIGJvcmRlci1zdHlsZTogbm9uZTtcbiAgcGFkZGluZzogMDtcbn1cblxuLyoqXG4gKiBSZXN0b3JlIHRoZSBmb2N1cyBzdHlsZXMgdW5zZXQgYnkgdGhlIHByZXZpb3VzIHJ1bGUuXG4gKi9cbmJ1dHRvbjotbW96LWZvY3VzcmluZyxcblt0eXBlPVwiYnV0dG9uXCJdOi1tb3otZm9jdXNyaW5nLFxuW3R5cGU9XCJyZXNldFwiXTotbW96LWZvY3VzcmluZyxcblt0eXBlPVwic3VibWl0XCJdOi1tb3otZm9jdXNyaW5nIHtcbiAgb3V0bGluZTogMXB4IGRvdHRlZCBCdXR0b25UZXh0O1xufVxuXG4vKipcbiAqIENvcnJlY3QgdGhlIHBhZGRpbmcgaW4gRmlyZWZveC5cbiAqL1xuZmllbGRzZXQge1xuICBwYWRkaW5nOiAwLjM1ZW0gMC43NWVtIDAuNjI1ZW07XG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgdGV4dCB3cmFwcGluZyBpbiBFZGdlIGFuZCBJRS5cbiAqIDIuIENvcnJlY3QgdGhlIGNvbG9yIGluaGVyaXRhbmNlIGZyb20gYGZpZWxkc2V0YCBlbGVtZW50cyBpbiBJRS5cbiAqIDMuIFJlbW92ZSB0aGUgcGFkZGluZyBzbyBkZXZlbG9wZXJzIGFyZSBub3QgY2F1Z2h0IG91dCB3aGVuIHRoZXkgemVybyBvdXRcbiAqICAgIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5sZWdlbmQge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAvKiAxICovXG4gIGNvbG9yOiBpbmhlcml0O1xuICAvKiAyICovXG4gIGRpc3BsYXk6IHRhYmxlO1xuICAvKiAxICovXG4gIG1heC13aWR0aDogMTAwJTtcbiAgLyogMSAqL1xuICBwYWRkaW5nOiAwO1xuICAvKiAzICovXG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gIC8qIDEgKi9cbn1cblxuLyoqXG4gKiAxLiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cbiAqIDIuIEFkZCB0aGUgY29ycmVjdCB2ZXJ0aWNhbCBhbGlnbm1lbnQgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgT3BlcmEuXG4gKi9cbnByb2dyZXNzIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAvKiAxICovXG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgLyogMiAqL1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgZGVmYXVsdCB2ZXJ0aWNhbCBzY3JvbGxiYXIgaW4gSUUuXG4gKi9cbnRleHRhcmVhIHtcbiAgb3ZlcmZsb3c6IGF1dG87XG59XG5cbi8qKlxuICogMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gSUUgMTAtLlxuICogMi4gUmVtb3ZlIHRoZSBwYWRkaW5nIGluIElFIDEwLS5cbiAqL1xuW3R5cGU9XCJjaGVja2JveFwiXSxcblt0eXBlPVwicmFkaW9cIl0ge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAvKiAxICovXG4gIHBhZGRpbmc6IDA7XG4gIC8qIDIgKi9cbn1cblxuLyoqXG4gKiBDb3JyZWN0IHRoZSBjdXJzb3Igc3R5bGUgb2YgaW5jcmVtZW50IGFuZCBkZWNyZW1lbnQgYnV0dG9ucyBpbiBDaHJvbWUuXG4gKi9cblt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24ge1xuICBoZWlnaHQ6IGF1dG87XG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgb2RkIGFwcGVhcmFuY2UgaW4gQ2hyb21lIGFuZCBTYWZhcmkuXG4gKiAyLiBDb3JyZWN0IHRoZSBvdXRsaW5lIHN0eWxlIGluIFNhZmFyaS5cbiAqL1xuW3R5cGU9XCJzZWFyY2hcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDtcbiAgLyogMSAqL1xuICBvdXRsaW5lLW9mZnNldDogLTJweDtcbiAgLyogMiAqL1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgaW5uZXIgcGFkZGluZyBhbmQgY2FuY2VsIGJ1dHRvbnMgaW4gQ2hyb21lIGFuZCBTYWZhcmkgb24gbWFjT1MuXG4gKi9cblt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1jYW5jZWwtYnV0dG9uLFxuW3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbiAqIDIuIENoYW5nZSBmb250IHByb3BlcnRpZXMgdG8gYGluaGVyaXRgIGluIFNhZmFyaS5cbiAqL1xuOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uO1xuICAvKiAxICovXG4gIGZvbnQ6IGluaGVyaXQ7XG4gIC8qIDIgKi9cbn1cblxuLyogSW50ZXJhY3RpdmVcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gKiAxLiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBFZGdlLCBJRSwgYW5kIEZpcmVmb3guXG4gKi9cbmRldGFpbHMsXG5tZW51IHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8qXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cbnN1bW1hcnkge1xuICBkaXNwbGF5OiBsaXN0LWl0ZW07XG59XG5cbi8qIFNjcmlwdGluZ1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gKi9cbmNhbnZhcyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRS5cbiAqL1xudGVtcGxhdGUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4vKiBIaWRkZW5cbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDEwLS5cbiAqL1xuW2hpZGRlbl0ge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgI1JFU0VUXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiBBIHZlcnkgc2ltcGxlIHJlc2V0IHRoYXQgc2l0cyBvbiB0b3Agb2YgTm9ybWFsaXplLmNzcy5cbiAqL1xuYm9keSxcbmgxLCBoMiwgaDMsIGg0LCBoNSwgaDYsXG5ibG9ja3F1b3RlLCBwLCBwcmUsXG5kbCwgZGQsIG9sLCB1bCxcbmZpZ3VyZSxcbmhyLFxuZmllbGRzZXQsIGxlZ2VuZCB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbn1cblxuLyoqXG4gKiBSZW1vdmUgdHJhaWxpbmcgbWFyZ2lucyBmcm9tIG5lc3RlZCBsaXN0cy5cbiAqL1xubGkgPiBvbCxcbmxpID4gdWwge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4vKipcbiAqIFJlbW92ZSBkZWZhdWx0IHRhYmxlIHNwYWNpbmcuXG4gKi9cbnRhYmxlIHtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgYm9yZGVyLXNwYWNpbmc6IDA7XG59XG5cbi8qKlxuICogMS4gUmVzZXQgQ2hyb21lIGFuZCBGaXJlZm94IGJlaGF2aW91ciB3aGljaCBzZXRzIGEgYG1pbi13aWR0aDogbWluLWNvbnRlbnQ7YFxuICogICAgb24gZmllbGRzZXRzLlxuICovXG5maWVsZHNldCB7XG4gIG1pbi13aWR0aDogMDtcbiAgLyogWzFdICovXG4gIGJvcmRlcjogMDtcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICNTSEFSRURcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIFNoYXJlZCBkZWNsYXJhdGlvbnMgZm9yIGNlcnRhaW4gZWxlbWVudHMuXG4gKi9cbi8qKlxuICogQWx3YXlzIGRlY2xhcmUgbWFyZ2lucyBpbiB0aGUgc2FtZSBkaXJlY3Rpb246XG4gKiBjc3N3aXphcmRyeS5jb20vMjAxMi8wNi9zaW5nbGUtZGlyZWN0aW9uLW1hcmdpbi1kZWNsYXJhdGlvbnNcbiAqL1xuYWRkcmVzcyxcbmgxLCBoMiwgaDMsIGg0LCBoNSwgaDYsXG5ibG9ja3F1b3RlLCBwLCBwcmUsXG5kbCwgb2wsIHVsLFxuZmlndXJlLFxuaHIsXG50YWJsZSxcbmZpZWxkc2V0IHtcbiAgbWFyZ2luLWJvdHRvbTogMjRweDtcbn1cblxuLyoqXG4gKiBDb25zaXN0ZW50IGluZGVudGF0aW9uIGZvciBsaXN0cy5cbiAqL1xuZGQsIG9sLCB1bCB7XG4gIG1hcmdpbi1sZWZ0OiAyNHB4O1xufVxuXG4vKiBTbGlkZXIgKi9cbi5zbGljay1zbGlkZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAtd2Via2l0LXRvdWNoLWNhbGxvdXQ6IG5vbmU7XG4gIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1raHRtbC11c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1vei11c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1zLXRvdWNoLWFjdGlvbjogcGFuLXk7XG4gIHRvdWNoLWFjdGlvbjogcGFuLXk7XG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbi5zbGljay1saXN0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xufVxuXG4uc2xpY2stbGlzdDpmb2N1cyB7XG4gIG91dGxpbmU6IG5vbmU7XG59XG5cbi5zbGljay1saXN0LmRyYWdnaW5nIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBjdXJzb3I6IGhhbmQ7XG59XG5cbi5zbGljay1zbGlkZXIgLnNsaWNrLXRyYWNrLFxuLnNsaWNrLXNsaWRlciAuc2xpY2stbGlzdCB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbn1cblxuLnNsaWNrLXRyYWNrIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xufVxuXG4uc2xpY2stdHJhY2s6YmVmb3JlLCAuc2xpY2stdHJhY2s6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBkaXNwbGF5OiB0YWJsZTtcbn1cblxuLnNsaWNrLXRyYWNrOmFmdGVyIHtcbiAgY2xlYXI6IGJvdGg7XG59XG5cbi5zbGljay1sb2FkaW5nIC5zbGljay10cmFjayB7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuLnNsaWNrLXNsaWRlIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIGhlaWdodDogMTAwJTtcbiAgbWluLWhlaWdodDogMXB4O1xuICBkaXNwbGF5OiBub25lO1xufVxuXG5bZGlyPVwicnRsXCJdIC5zbGljay1zbGlkZSB7XG4gIGZsb2F0OiByaWdodDtcbn1cblxuLnNsaWNrLXNsaWRlIGltZyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4uc2xpY2stc2xpZGUuc2xpY2stbG9hZGluZyBpbWcge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4uc2xpY2stc2xpZGUuZHJhZ2dpbmcgaW1nIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG5cbi5zbGljay1pbml0aWFsaXplZCAuc2xpY2stc2xpZGUge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLnNsaWNrLWxvYWRpbmcgLnNsaWNrLXNsaWRlIHtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4uc2xpY2stdmVydGljYWwgLnNsaWNrLXNsaWRlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogYXV0bztcbiAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG59XG5cbi5zbGljay1hcnJvdy5zbGljay1oaWRkZW4ge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG5pbWcge1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xufVxuXG5oMSBtYXJrLCBoMiBtYXJrLCBoMyBtYXJrLCBoNCBtYXJrLCBoNSBtYXJrLCBoNiBtYXJrIHtcbiAgY29sb3I6ICNjOGRhMmUgIWltcG9ydGFudDtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbmgxIHtcbiAgZm9udC1zaXplOiAzMnB4O1xuICBmb250LXNpemU6IDJyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjI1O1xuICBtYXJnaW46IDAgMCAyMHB4O1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNDhlbSkge1xuICBoMSB7XG4gICAgZm9udC1zaXplOiA0OHB4O1xuICAgIGZvbnQtc2l6ZTogM3JlbTtcbiAgICBsaW5lLWhlaWdodDogMS4yNTtcbiAgfVxufVxuXG5oMiwgLmgyIHtcbiAgZm9udC1zaXplOiAyOHB4O1xuICBmb250LXNpemU6IDEuNzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjI1O1xuICBtYXJnaW46IDAgMCAyMHB4O1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNDhlbSkge1xuICBoMiwgLmgyIHtcbiAgICBmb250LXNpemU6IDQwcHg7XG4gICAgZm9udC1zaXplOiAyLjVyZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuMjU7XG4gIH1cbn1cblxuaDMge1xuICBmb250LXNpemU6IDIxcHg7XG4gIGZvbnQtc2l6ZTogMS4zMTI1cmVtO1xuICBsaW5lLWhlaWdodDogMS4yNTtcbiAgbWFyZ2luOiAwIDAgMjRweDtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgaDMge1xuICAgIGZvbnQtc2l6ZTogMzJweDtcbiAgICBmb250LXNpemU6IDJyZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuMjU7XG4gIH1cbn1cblxuaDQge1xuICBmb250LXNpemU6IDE4cHg7XG4gIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIG1hcmdpbi1ib3R0b206IDE2cHg7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA0OGVtKSB7XG4gIGg0IHtcbiAgICBmb250LXNpemU6IDI0cHg7XG4gICAgZm9udC1zaXplOiAxLjVyZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgfVxufVxuXG5oNSB7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgZm9udC1zaXplOiAwLjc1cmVtO1xuICBsaW5lLWhlaWdodDogMS41O1xuICBmb250LXdlaWdodDogNzAwO1xuICBtYXJnaW4tYm90dG9tOiAxNnB4O1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuXG5oNiB7XG4gIG1hcmdpbi1ib3R0b206IDE2cHg7XG4gIGZvbnQtc2l6ZTogMThweDtcbiAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbn1cblxuc2VsZWN0LFxudGV4dGFyZWEsXG5pbnB1dCB7XG4gIG91dGxpbmU6IG5vbmU7XG59XG5cbnNlbGVjdCxcbnRleHRhcmVhLFxuaW5wdXRbdHlwZT1cImVtYWlsXCJdLFxuaW5wdXRbdHlwZT1cIm51bWJlclwiXSxcbmlucHV0W3R5cGU9XCJwYXNzd29yZFwiXSxcbmlucHV0W3R5cGU9XCJzZWFyY2hcIl0sXG5pbnB1dFt0eXBlPVwidGVsXCJdLFxuaW5wdXRbdHlwZT1cImRhdGVcIl0sXG5pbnB1dFt0eXBlPVwidGV4dFwiXSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogOHB4IDA7XG4gIGJvcmRlcjogMCBzb2xpZCAjMDAwMDAwO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHdoaXRlO1xuICBjb2xvcjogd2hpdGU7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBsaW5lLWhlaWdodDogMS41O1xufVxuXG5zZWxlY3Q6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIsXG50ZXh0YXJlYTo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlcixcbmlucHV0W3R5cGU9XCJlbWFpbFwiXTo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlcixcbmlucHV0W3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIsXG5pbnB1dFt0eXBlPVwicGFzc3dvcmRcIl06Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIsXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyLFxuaW5wdXRbdHlwZT1cInRlbFwiXTo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlcixcbmlucHV0W3R5cGU9XCJkYXRlXCJdOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyLFxuaW5wdXRbdHlwZT1cInRleHRcIl06Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIge1xuICBjb2xvcjogIzMzMzMzMztcbn1cblxuc2VsZWN0OjotbW96LXBsYWNlaG9sZGVyLFxudGV4dGFyZWE6Oi1tb3otcGxhY2Vob2xkZXIsXG5pbnB1dFt0eXBlPVwiZW1haWxcIl06Oi1tb3otcGxhY2Vob2xkZXIsXG5pbnB1dFt0eXBlPVwibnVtYmVyXCJdOjotbW96LXBsYWNlaG9sZGVyLFxuaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdOjotbW96LXBsYWNlaG9sZGVyLFxuaW5wdXRbdHlwZT1cInNlYXJjaFwiXTo6LW1vei1wbGFjZWhvbGRlcixcbmlucHV0W3R5cGU9XCJ0ZWxcIl06Oi1tb3otcGxhY2Vob2xkZXIsXG5pbnB1dFt0eXBlPVwiZGF0ZVwiXTo6LW1vei1wbGFjZWhvbGRlcixcbmlucHV0W3R5cGU9XCJ0ZXh0XCJdOjotbW96LXBsYWNlaG9sZGVyIHtcbiAgY29sb3I6ICMzMzMzMzM7XG59XG5cbnNlbGVjdDo6LW1zLWlucHV0LXBsYWNlaG9sZGVyLFxudGV4dGFyZWE6Oi1tcy1pbnB1dC1wbGFjZWhvbGRlcixcbmlucHV0W3R5cGU9XCJlbWFpbFwiXTo6LW1zLWlucHV0LXBsYWNlaG9sZGVyLFxuaW5wdXRbdHlwZT1cIm51bWJlclwiXTo6LW1zLWlucHV0LXBsYWNlaG9sZGVyLFxuaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdOjotbXMtaW5wdXQtcGxhY2Vob2xkZXIsXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdOjotbXMtaW5wdXQtcGxhY2Vob2xkZXIsXG5pbnB1dFt0eXBlPVwidGVsXCJdOjotbXMtaW5wdXQtcGxhY2Vob2xkZXIsXG5pbnB1dFt0eXBlPVwiZGF0ZVwiXTo6LW1zLWlucHV0LXBsYWNlaG9sZGVyLFxuaW5wdXRbdHlwZT1cInRleHRcIl06Oi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7XG4gIGNvbG9yOiAjMzMzMzMzO1xufVxuXG5zZWxlY3Q6Oi1tb3otcGxhY2Vob2xkZXIsXG50ZXh0YXJlYTo6LW1vei1wbGFjZWhvbGRlcixcbmlucHV0W3R5cGU9XCJlbWFpbFwiXTo6LW1vei1wbGFjZWhvbGRlcixcbmlucHV0W3R5cGU9XCJudW1iZXJcIl06Oi1tb3otcGxhY2Vob2xkZXIsXG5pbnB1dFt0eXBlPVwicGFzc3dvcmRcIl06Oi1tb3otcGxhY2Vob2xkZXIsXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdOjotbW96LXBsYWNlaG9sZGVyLFxuaW5wdXRbdHlwZT1cInRlbFwiXTo6LW1vei1wbGFjZWhvbGRlcixcbmlucHV0W3R5cGU9XCJkYXRlXCJdOjotbW96LXBsYWNlaG9sZGVyLFxuaW5wdXRbdHlwZT1cInRleHRcIl06Oi1tb3otcGxhY2Vob2xkZXIge1xuICBjb2xvcjogIzMzMzMzMztcbn1cblxuc2VsZWN0OjpwbGFjZWhvbGRlcixcbnRleHRhcmVhOjpwbGFjZWhvbGRlcixcbmlucHV0W3R5cGU9XCJlbWFpbFwiXTo6cGxhY2Vob2xkZXIsXG5pbnB1dFt0eXBlPVwibnVtYmVyXCJdOjpwbGFjZWhvbGRlcixcbmlucHV0W3R5cGU9XCJwYXNzd29yZFwiXTo6cGxhY2Vob2xkZXIsXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdOjpwbGFjZWhvbGRlcixcbmlucHV0W3R5cGU9XCJ0ZWxcIl06OnBsYWNlaG9sZGVyLFxuaW5wdXRbdHlwZT1cImRhdGVcIl06OnBsYWNlaG9sZGVyLFxuaW5wdXRbdHlwZT1cInRleHRcIl06OnBsYWNlaG9sZGVyIHtcbiAgY29sb3I6ICMzMzMzMzM7XG59XG5cbnRleHRhcmVhIHtcbiAgaGVpZ2h0OiAxMjBweDtcbiAgcmVzaXplOiBub25lO1xufVxuXG5zZWxlY3Qge1xuICBwYWRkaW5nOiA4cHggNTZweCA4cHggMTZweDtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KDQ1ZGVnLCB0cmFuc3BhcmVudCA1MCUsICMwMDAwMDAgNTAlKSwgbGluZWFyLWdyYWRpZW50KDEzNWRlZywgIzAwMDAwMCA1MCUsIHRyYW5zcGFyZW50IDUwJSksIGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgIzAwMDAwMCwgIzAwMDAwMCk7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNhbGMoMTAwJSAtIDIwcHgpIGNhbGMoMWVtICsgMnB4KSwgY2FsYygxMDAlIC0gMTVweCkgY2FsYygxZW0gKyAycHgpLCBjYWxjKDEwMCUgLSAyLjVlbSkgMC41ZW07XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtc2l6ZTogNXB4IDVweCwgNXB4IDVweCwgMXB4IDEuNWVtO1xuICBib3gtc2hhZG93OiBub25lO1xufVxuXG5pbnB1dFt0eXBlPVwicmFkaW9cIl0ge1xuICBvcGFjaXR5OiAwO1xuICBhcHBlYXJhbmNlOiBub25lO1xufVxuXG5pbnB1dFt0eXBlPVwicmFkaW9cIl06Y2hlY2tlZCB7XG4gIGJhY2tncm91bmQ6ICMzMzMzMzM7XG59XG5cbmlucHV0W3R5cGU9XCJyYWRpb1wiXSArIHNwYW4ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuaW5wdXRbdHlwZT1cInJhZGlvXCJdICsgc3BhbjpiZWZvcmUge1xuICBjb250ZW50OiBcIiBcIjtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMTNweDtcbiAgaGVpZ2h0OiAxM3B4O1xuICBtYXJnaW4tcmlnaHQ6IDhweDtcbiAgYm9yZGVyOiAxcHggc29saWQgIzMzMzMzMztcbiAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxuaW5wdXRbdHlwZT1cInJhZGlvXCJdOmNoZWNrZWQgKyBzcGFuOjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kOiAjMzMzMzMzO1xufVxuXG5pbnB1dFt0eXBlPVwicmFkaW9cIl06Zm9jdXMgKyBzcGFuIHtcbiAgb3V0bGluZTogMXB4IGRvdHRlZCAjMzMzMzMzO1xuICBvdXRsaW5lLW9mZnNldDogMnB4O1xufVxuXG4ud3BjZjctcmVzcG9uc2Utb3V0cHV0IHtcbiAgbWFyZ2luOiAxMHB4IDA7XG4gIGNvbG9yOiB3aGl0ZSAhaW1wb3J0YW50O1xufVxuXG5pbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICBvcGFjaXR5OiAwO1xuICBhcHBlYXJhbmNlOiBub25lO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgei1pbmRleDogLTIgIWltcG9ydGFudDtcbn1cblxuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdOmNoZWNrZWQge1xuICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWcvY2hlY2tlZC1ib3guc3ZnXCIpO1xufVxuXG5pbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0gKyBzcGFuLFxuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdICsgbGFiZWwge1xuICBkaXNwbGF5OiBpbmxpbmU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG5cbmlucHV0W3R5cGU9XCJjaGVja2JveFwiXSArIHNwYW46YmVmb3JlLFxuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdICsgbGFiZWw6YmVmb3JlIHtcbiAgY29udGVudDogXCIgXCI7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDE2cHg7XG4gIGhlaWdodDogMTZweDtcbiAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICBib3JkZXI6IDFweCBzb2xpZCAjOTI5MzkxO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICB2ZXJ0aWNhbC1hbGlnbjogLTNweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogY29sb3IoXCJ3aGl0ZVwiKTtcbiAgdHJhbnNpdGlvbjogMC4zcztcbn1cblxuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdOmNoZWNrZWQgKyBzcGFuOjpiZWZvcmUsXG5pbnB1dFt0eXBlPVwiY2hlY2tib3hcIl06Y2hlY2tlZCArIGxhYmVsOjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWcvY2hlY2tlZC1ib3guc3ZnXCIpO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xufVxuXG4ud3BjZjctZm9ybS1jb250cm9sLXdyYXAge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLWJvdHRvbTogMXB4O1xufVxuXG4ud3BjZjctbm90LXZhbGlkIC53cGNmNy1saXN0LWl0ZW0tbGFiZWwge1xuICBjb2xvcjogcmVkO1xufVxuXG4ud3BjZjctbm90LXZhbGlkIC53cGNmNy1saXN0LWl0ZW0tbGFiZWw6OmJlZm9yZSB7XG4gIGJvcmRlci1jb2xvcjogcmVkO1xufVxuXG4ud3BjZjcgLnNjcmVlbi1yZWFkZXItcmVzcG9uc2Uge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi53cGNmNy1ub3QtdmFsaWQtdGlwLCAud3BjZjctdmFsaWRhdGlvbi1lcnJvcnMge1xuICBjb2xvcjogcmVkO1xufVxuXG4ud3BjZjctbm90LXZhbGlkLXRpcCwgLndwY2Y3LXJlc3BvbnNlLW91dHB1dCB7XG4gIGZvbnQtc2l6ZTogMTNweDtcbiAgZm9udC1zaXplOiAwLjgxMjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG59XG5cbi5hamF4LWxvYWRlciB7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICBkaXNwbGF5OiBub25lO1xuICBvcGFjaXR5OiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgYmFja2dyb3VuZDogIzAwMDAwMDtcbn1cblxuLmFqYXgtbG9hZGVyOmFmdGVyIHtcbiAgY29udGVudDogXCIgXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSkgcm90YXRlKC00NWRlZyk7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMjRweDtcbiAgaGVpZ2h0OiAyNHB4O1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWcvaWNvbi1zdWJtaXQtbG9hZGVyLnBuZ1wiKTtcbiAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xufVxuXG4uYWpheC1sb2FkZXIuaXMtYWN0aXZlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBvcGFjaXR5OiAxO1xufVxuXG4uYWpheC1sb2FkZXIuaXMtYWN0aXZlOmFmdGVyIHtcbiAgYW5pbWF0aW9uOiBzcGluTG9hZGVyIDEuNXMgaW5maW5pdGU7XG59XG5cbkBrZXlmcmFtZXMgc3BpbkxvYWRlciB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKSByb3RhdGUoMCk7XG4gIH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSkgcm90YXRlKDM2MGRlZyk7XG4gIH1cbn1cblxucHJlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAyNHB4O1xuICBmb250LXNpemU6IDE0cHg7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBvdmVyZmxvdzogYXV0bztcbiAgZm9udC1mYW1pbHk6IFwiQ291cmllciBOZXdcIiwgQ291cmllciwgbW9ub3NwYWNlO1xuICBjb2xvcjogd2hpdGU7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIHRleHQtdHJhbnNmb3JtOiBpbml0aWFsO1xuICBiYWNrZ3JvdW5kOiBibGFjaztcbn1cblxuYSB7XG4gIGNvbG9yOiAjMDAwMDAwO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHRyYW5zaXRpb246IDAuMjVzO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbmE6aG92ZXIge1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgdGV4dC11bmRlcmxpbmUtb2Zmc2V0OiAzcHg7XG4gIHRleHQtZGVjb3JhdGlvbi10aGlja25lc3M6IDFweDtcbn1cblxuLmMtbGluayB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udC1zaXplOiAxNHB4O1xuICBmb250LXdlaWdodDogNjAwO1xuICB0cmFuc2l0aW9uOiAwLjRzO1xufVxuXG4uYy1saW5rIHN2ZyB7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIG1hcmdpbi1sZWZ0OiA4cHg7XG4gIHRyYW5zaXRpb246IDAuNHM7XG59XG5cbi5jLWxpbmsgc3ZnLmMtc3ZnaWNvbi0tYXJyb3cge1xuICB3aWR0aDogMTRweDtcbiAgaGVpZ2h0OiAxMnB4O1xufVxuXG4uYy1saW5rOmhvdmVyIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4uYy1saW5rOmhvdmVyIHN2ZyB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCg2cHgpO1xufVxuXG4vKiBwdXJnZWNzcyBzdGFydCBpZ25vcmUgKi9cbmh0bWwge1xuICBmb250LXNpemU6IDE2cHg7XG4gIG92ZXJmbG93LXk6IHNjcm9sbDtcbiAgbWluLWhlaWdodDogMTAwJTtcbn1cblxuYm9keSB7XG4gIG1pbi1oZWlnaHQ6IDEwMCU7XG4gIGZvbnQtZmFtaWx5OiBcIlJlZCBIYXQgRGlzcGxheVwiLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBmb250LXNpemU6IDE2cHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjY7XG4gIGNvbG9yOiAjMDAwMDAwO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgb3ZlcmZsb3cteDogaGlkZGVuO1xufVxuXG4uc2Nyb2xsLWxvY2sge1xuICBoZWlnaHQ6IDEwMCU7XG4gIG1heC1oZWlnaHQ6IDEwMHZoO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4uaXMtYmx1cmVkIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIGZpbHRlcjogYmx1cigzcHgpO1xufVxuXG4uaGlkZS1zY3JvbGxiYXIsIGJvZHksIC5jLXRvcCB7XG4gIC1tcy1vdmVyZmxvdy1zdHlsZTogbm9uZTtcbiAgLyogSUUgYW5kIEVkZ2UgKi9cbiAgc2Nyb2xsYmFyLXdpZHRoOiBub25lO1xuICAvKiBGaXJlZm94ICovXG59XG5cbi5oaWRlLXNjcm9sbGJhcjo6LXdlYmtpdC1zY3JvbGxiYXIsIGJvZHk6Oi13ZWJraXQtc2Nyb2xsYmFyLCAuYy10b3A6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLmhpZGUtc2Nyb2xsYmFyOjotbW96LXNjcm9sbGJhciwgYm9keTo6LW1vei1zY3JvbGxiYXIsIC5jLXRvcDo6LW1vei1zY3JvbGxiYXIge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4vKiBwdXJnZWNzcyBlbmQgaWdub3JlICovXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgI0xBWU9VVFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICogR3JpZC1saWtlIGxheW91dCBzeXN0ZW0uXG4gKlxuICogVGhlIGxheW91dCBvYmplY3QgcHJvdmlkZXMgdXMgd2l0aCBhIGNvbHVtbi1zdHlsZSBsYXlvdXQgc3lzdGVtLiBUaGlzIGZpbGVcbiAqIGNvbnRhaW5zIHRoZSBiYXNpYyBzdHJ1Y3R1cmFsIGVsZW1lbnRzLCBidXQgY2xhc3NlcyBzaG91bGQgYmUgY29tcGxlbWVudGVkXG4gKiB3aXRoIHdpZHRoIHV0aWxpdGllcywgZm9yIGV4YW1wbGU6XG4gKlxuICogICA8ZGl2IGNsYXNzPVwiby1sYXlvdXRcIj5cbiAqICAgICA8ZGl2IGNsYXNzPVwiby1sYXlvdXRfX2l0ZW0gIHUtMS8yXCI+XG4gKiAgICAgPC9kaXY+XG4gKiAgICAgPGRpdiBjbGFzcz1cIm8tbGF5b3V0X19pdGVtICB1LTEvMlwiPlxuICogICAgIDwvZGl2PlxuICogICA8L2Rpdj5cbiAqXG4gKiBUaGUgYWJvdmUgd2lsbCBjcmVhdGUgYSB0d28tY29sdW1uIHN0cnVjdHVyZSBpbiB3aGljaCBlYWNoIGNvbHVtbiB3aWxsXG4gKiBmbHVpZGx5IGZpbGwgaGFsZiBvZiB0aGUgd2lkdGggb2YgdGhlIHBhcmVudC4gV2UgY2FuIGhhdmUgbW9yZSBjb21wbGV4XG4gKiBzeXN0ZW1zOlxuICpcbiAqICAgPGRpdiBjbGFzcz1cIm8tbGF5b3V0XCI+XG4gKiAgICAgPGRpdiBjbGFzcz1cIm8tbGF5b3V0X19pdGVtICB1LTEvMSAgdS0xLzNAbWVkaXVtXCI+XG4gKiAgICAgPC9kaXY+XG4gKiAgICAgPGRpdiBjbGFzcz1cIm8tbGF5b3V0X19pdGVtICB1LTEvMiAgdS0xLzNAbWVkaXVtXCI+XG4gKiAgICAgPC9kaXY+XG4gKiAgICAgPGRpdiBjbGFzcz1cIm8tbGF5b3V0X19pdGVtICB1LTEvMiAgdS0xLzNAbWVkaXVtXCI+XG4gKiAgICAgPC9kaXY+XG4gKiAgIDwvZGl2PlxuICpcbiAqIFRoZSBhYm92ZSB3aWxsIGNyZWF0ZSBhIHN5c3RlbSBpbiB3aGljaCB0aGUgZmlyc3QgaXRlbSB3aWxsIGJlIDEwMCUgd2lkdGhcbiAqIHVudGlsIHdlIGVudGVyIG91ciBtZWRpdW0gYnJlYWtwb2ludCwgd2hlbiBpdCB3aWxsIGJlY29tZSAzMy4zMzMlIHdpZHRoLiBUaGVcbiAqIHNlY29uZCBhbmQgdGhpcmQgaXRlbXMgd2lsbCBiZSA1MCUgb2YgdGhlaXIgcGFyZW50LCB1bnRpbCB0aGV5IGFsc28gYmVjb21lXG4gKiAzMy4zMzMlIHdpZHRoIGF0IHRoZSBtZWRpdW0gYnJlYWtwb2ludC5cbiAqXG4gKiBXZSBjYW4gYWxzbyBtYW5pcHVsYXRlIGVudGlyZSBsYXlvdXQgc3lzdGVtcyBieSBhZGRpbmcgYSBzZXJpZXMgb2YgbW9kaWZpZXJzXG4gKiB0byB0aGUgYC5vLWxheW91dGAgYmxvY2suIEZvciBleGFtcGxlOlxuICpcbiAqICAgPGRpdiBjbGFzcz1cIm8tbGF5b3V0ICBvLWxheW91dC0tcmV2ZXJzZVwiPlxuICpcbiAqIFRoaXMgd2lsbCByZXZlcnNlIHRoZSBkaXNwbGF5ZWQgb3JkZXIgb2YgdGhlIHN5c3RlbSBzbyB0aGF0IGl0IHJ1bnMgaW4gdGhlXG4gKiBvcHBvc2l0ZSBvcmRlciB0byBvdXIgc291cmNlLCBlZmZlY3RpdmVseSBmbGlwcGluZyB0aGUgc3lzdGVtIG92ZXIuXG4gKlxuICogICA8ZGl2IGNsYXNzPVwiby1sYXlvdXQgIG8tbGF5b3V0LS1bcmlnaHR8Y2VudGVyXVwiPlxuICpcbiAqIFRoaXMgd2lsbCBjYXVzZSB0aGUgc3lzdGVtIHRvIGZpbGwgdXAgZnJvbSBlaXRoZXIgdGhlIGNlbnRyZSBvciB0aGUgcmlnaHRcbiAqIGhhbmQgc2lkZS4gRGVmYXVsdCBiZWhhdmlvdXIgaXMgdG8gZmlsbCB1cCB0aGUgbGF5b3V0IHN5c3RlbSBmcm9tIHRoZSBsZWZ0LlxuICpcbiAqIFRoZXJlIGFyZSBwbGVudHkgbW9yZSBvcHRpb25zIGF2YWlsYWJsZSB0byB1czogZXhwbG9yZSB0aGVtIGJlbG93LlxuICovXG4vKiBEZWZhdWx0L21hbmRhdG9yeSBjbGFzc2VzXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiAxLiBBbGxvd3MgdXMgdG8gdXNlIHRoZSBsYXlvdXQgb2JqZWN0IG9uIGFueSB0eXBlIG9mIGVsZW1lbnQuXG4gKiAyLiBXZSBuZWVkIHRvIGRlZmVuc2l2ZWx5IHJlc2V0IGFueSBib3gtbW9kZWwgcHJvcGVydGllcy5cbiAqIDMuIFVzZSB0aGUgbmVnYXRpdmUgbWFyZ2luIHRyaWNrIGZvciBtdWx0aS1yb3cgZ3JpZHM6XG4gKiAgICBodHRwOi8vY3Nzd2l6YXJkcnkuY29tLzIwMTEvMDgvYnVpbGRpbmctYmV0dGVyLWdyaWQtc3lzdGVtcy9cbiAqL1xuLm8tbGF5b3V0IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIC8qIFsxXSAqL1xuICBtYXJnaW46IDA7XG4gIC8qIFsyXSAqL1xuICBwYWRkaW5nOiAwO1xuICAvKiBbMl0gKi9cbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgLyogWzFdICovXG4gIG1hcmdpbi1sZWZ0OiAtMjRweDtcbiAgLyogWzNdICovXG4gIGZvbnQtc2l6ZTogMDtcbn1cblxuLyoqXG4gICAqIDEuIFJlcXVpcmVkIGluIG9yZGVyIHRvIGNvbWJpbmUgZmx1aWQgd2lkdGhzIHdpdGggZml4ZWQgZ3V0dGVycy5cbiAgICogMi4gQWxsb3dzIHVzIHRvIG1hbmlwdWxhdGUgZ3JpZHMgdmVydGljYWxseSwgd2l0aCB0ZXh0LWxldmVsIHByb3BlcnRpZXMsXG4gICAqICAgIGV0Yy5cbiAgICogMy4gRGVmYXVsdCBpdGVtIGFsaWdubWVudCBpcyB3aXRoIHRoZSB0b3BzIG9mIGVhY2ggb3RoZXIsIGxpa2UgbW9zdFxuICAgKiAgICB0cmFkaXRpb25hbCBncmlkL2xheW91dCBzeXN0ZW1zLlxuICAgKiA0LiBCeSBkZWZhdWx0LCBhbGwgbGF5b3V0IGl0ZW1zIGFyZSBmdWxsLXdpZHRoIChtb2JpbGUgZmlyc3QpLlxuICAgKiA1LiBHdXR0ZXJzIHByb3ZpZGVkIGJ5IGxlZnQgcGFkZGluZzpcbiAgICogICAgaHR0cDovL2Nzc3dpemFyZHJ5LmNvbS8yMDExLzA4L2J1aWxkaW5nLWJldHRlci1ncmlkLXN5c3RlbXMvXG4gICAqIDYuIEZhbGxiYWNrIGZvciBvbGQgSUVzIG5vdCBzdXBwb3J0aW5nIGByZW1gIHZhbHVlcy5cbiAgICovXG4uby1sYXlvdXRfX2l0ZW0ge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAvKiBbMV0gKi9cbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAvKiBbMl0gKi9cbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgLyogWzNdICovXG4gIHdpZHRoOiAxMDAlO1xuICAvKiBbNF0gKi9cbiAgcGFkZGluZy1sZWZ0OiAyNHB4O1xuICAvKiBbNV0gKi9cbiAgZm9udC1zaXplOiAxNnB4O1xuICAvKiBbNl0gKi9cbiAgZm9udC1zaXplOiAxcmVtO1xufVxuXG4vKiBHdXR0ZXIgc2l6ZSBtb2RpZmllcnNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4uby1sYXlvdXQtLWZsdXNoIHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG5cbi5vLWxheW91dC0tZmx1c2ggPiAuby1sYXlvdXRfX2l0ZW0ge1xuICBwYWRkaW5nLWxlZnQ6IDA7XG59XG5cbi5vLWxheW91dC0tdGlueSB7XG4gIG1hcmdpbi1sZWZ0OiAtNnB4O1xufVxuXG4uby1sYXlvdXQtLXRpbnkgPiAuby1sYXlvdXRfX2l0ZW0ge1xuICBwYWRkaW5nLWxlZnQ6IDZweDtcbn1cblxuLm8tbGF5b3V0LS1zbWFsbCB7XG4gIG1hcmdpbi1sZWZ0OiAtMTJweDtcbn1cblxuLm8tbGF5b3V0LS1zbWFsbCA+IC5vLWxheW91dF9faXRlbSB7XG4gIHBhZGRpbmctbGVmdDogMTJweDtcbn1cblxuLm8tbGF5b3V0LS1sYXJnZSB7XG4gIG1hcmdpbi1sZWZ0OiAtNDhweDtcbn1cblxuLm8tbGF5b3V0LS1sYXJnZSA+IC5vLWxheW91dF9faXRlbSB7XG4gIHBhZGRpbmctbGVmdDogNDhweDtcbn1cblxuLm8tbGF5b3V0LS1odWdlIHtcbiAgbWFyZ2luLWxlZnQ6IC05NnB4O1xufVxuXG4uby1sYXlvdXQtLWh1Z2UgPiAuby1sYXlvdXRfX2l0ZW0ge1xuICBwYWRkaW5nLWxlZnQ6IDk2cHg7XG59XG5cbi8qIFZlcnRpY2FsIGFsaWdubWVudCBtb2RpZmllcnNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIEFsaWduIGFsbCBncmlkIGl0ZW1zIHRvIHRoZSBtaWRkbGVzIG9mIGVhY2ggb3RoZXIuXG4gKi9cbi5vLWxheW91dC0tbWlkZGxlID4gLm8tbGF5b3V0X19pdGVtIHtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxuLyoqXG4gKiBBbGlnbiBhbGwgZ3JpZCBpdGVtcyB0byB0aGUgYm90dG9tcyBvZiBlYWNoIG90aGVyLlxuICovXG4uby1sYXlvdXQtLWJvdHRvbSA+IC5vLWxheW91dF9faXRlbSB7XG4gIHZlcnRpY2FsLWFsaWduOiBib3R0b207XG59XG5cbi8qKlxuICogU3RyZXRjaCBhbGwgZ3JpZCBpdGVtcyBvZiBlYWNoIHJvdyB0byBoYXZlIGFuIGVxdWFsLWhlaWdodC5cbiAqIFBsZWFzZSBiZSBhd2FyZSB0aGF0IHRoaXMgbW9kaWZpZXIgY2xhc3MgZG9lc27igJl0IHRha2UgYW55IGVmZmVjdCBpbiBJRTkgYW5kXG4gKiBiZWxvdyBhbmQgb3RoZXIgb2xkZXIgYnJvd3NlcnMgZHVlIHRvIHRoZSBsYWNrIG9mIGBkaXNwbGF5OiBmbGV4YCBzdXBwb3J0LlxuICovXG4uby1sYXlvdXQtLXN0cmV0Y2gge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG59XG5cbi5vLWxheW91dC0tc3RyZXRjaCA+IC5vLWxheW91dF9faXRlbSB7XG4gIGRpc3BsYXk6IGZsZXg7XG59XG5cbi5vLWxheW91dC0tc3RyZXRjaC5vLWxheW91dC0tY2VudGVyIHtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG59XG5cbi5vLWxheW91dC0tc3RyZXRjaC5vLWxheW91dC0tcmlnaHQge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xufVxuXG4uby1sYXlvdXQtLXN0cmV0Y2guby1sYXlvdXQtLWxlZnQge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG59XG5cbi8qIEZpbGwgb3JkZXIgbW9kaWZpZXJzXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiBGaWxsIHVwIHRoZSBsYXlvdXQgc3lzdGVtIGZyb20gdGhlIGNlbnRyZS5cbiAqL1xuLm8tbGF5b3V0LS1jZW50ZXIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5vLWxheW91dC0tY2VudGVyID4gLm8tbGF5b3V0X19pdGVtIHtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cblxuLyoqXG4gKiBGaWxsIHVwIHRoZSBsYXlvdXQgc3lzdGVtIGZyb20gdGhlIHJpZ2h0LWhhbmQgc2lkZS5cbiAqL1xuLm8tbGF5b3V0LS1yaWdodCB7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xufVxuXG4uby1sYXlvdXQtLXJpZ2h0ID4gLm8tbGF5b3V0X19pdGVtIHtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cblxuLyoqXG4gKiBGaWxsIHVwIHRoZSBsYXlvdXQgc3lzdGVtIGZyb20gdGhlIGxlZnQtaGFuZCBzaWRlLiBUaGlzIHdpbGwgbGlrZWx5IG9ubHkgYmVcbiAqIG5lZWRlZCB3aGVuIHVzaW5nIGluIGNvbmp1bmN0aW9uIHdpdGggYC5vLWxheW91dC0tcmV2ZXJzZWAuXG4gKi9cbi5vLWxheW91dC0tbGVmdCB7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG5cbi5vLWxheW91dC0tbGVmdCA+IC5vLWxheW91dF9faXRlbSB7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG5cbi8qKlxuICogUmV2ZXJzZSB0aGUgcmVuZGVyZWQgb3JkZXIgb2YgdGhlIGdyaWQgc3lzdGVtLlxuICovXG4uby1sYXlvdXQtLXJldmVyc2Uge1xuICBkaXJlY3Rpb246IHJ0bDtcbn1cblxuLm8tbGF5b3V0LS1yZXZlcnNlID4gLm8tbGF5b3V0X19pdGVtIHtcbiAgZGlyZWN0aW9uOiBsdHI7XG59XG5cbi8qIEF1dG8td2lkdGhzIG1vZGlmaWVyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiBDYXVzZSBsYXlvdXQgaXRlbXMgdG8gdGFrZSB1cCBhIG5vbi1leHBsaWNpdCBhbW91bnQgb2Ygd2lkdGguXG4gKi9cbi5vLWxheW91dC0tYXV0byA+IC5vLWxheW91dF9faXRlbSB7XG4gIHdpZHRoOiBhdXRvO1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgI1JBVElPXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiBDcmVhdGUgcmF0aW8tYm91bmQgY29udGVudCBibG9ja3MsIHRvIGtlZXAgbWVkaWEgKGUuZy4gaW1hZ2VzLCB2aWRlb3MpIGluXG4gKiB0aGVpciBjb3JyZWN0IGFzcGVjdCByYXRpb3MuXG4gKlxuICogaHR0cDovL2FsaXN0YXBhcnQuY29tL2FydGljbGUvY3JlYXRpbmctaW50cmluc2ljLXJhdGlvcy1mb3ItdmlkZW9cbiAqXG4gKiAxLiBEZWZhdWx0IGlzIGEgMToxIHJhdGlvIChpLmUuIGEgcGVyZmVjdCBzcXVhcmUpLlxuICovXG4uby1yYXRpbyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5vLXJhdGlvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZy1ib3R0b206IDEwMCU7XG4gIC8qIFsxXSAqL1xufVxuXG4uby1yYXRpb19fY29udGVudCxcbi5vLXJhdGlvID4gaWZyYW1lLFxuLm8tcmF0aW8gPiBlbWJlZCxcbi5vLXJhdGlvID4gb2JqZWN0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgaGVpZ2h0OiAxMDAlO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLyogUmF0aW8gdmFyaWFudHMuXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiBHZW5lcmF0ZSBhIHNlcmllcyBvZiByYXRpbyBjbGFzc2VzIHRvIGJlIHVzZWQgbGlrZSBzbzpcbiAqXG4gKiAgIDxkaXYgY2xhc3M9XCJvLXJhdGlvICBvLXJhdGlvLS1nb2xkZW4tcmF0aW9cIj5cbiAqXG4gKi9cbi5vLXJhdGlvLS0yXFw6MTpiZWZvcmUge1xuICBwYWRkaW5nLWJvdHRvbTogNTAlO1xufVxuXG4uby1yYXRpby0tNFxcOjM6YmVmb3JlIHtcbiAgcGFkZGluZy1ib3R0b206IDc1JTtcbn1cblxuLm8tcmF0aW8tLTE2XFw6OTpiZWZvcmUge1xuICBwYWRkaW5nLWJvdHRvbTogNTYuMjUlO1xufVxuXG4vKiBDb250YWluIG1vZGlmaWVyLlxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICogT25seSB3b3JrcyB3aXRoIGltYWdlIGNvbnRlbnQuXG4gKiBDb250YWlucyB0aGUgaW1hZ2UgdG8gdGhlIGJvdW5kYXJpZXMsIHdpdGhvdXQgY3JvcHBpbmcgb3Igc3RyZXRjaGluZyBpdC5cbiAqL1xuLm8tcmF0aW8tLWltZy1jb250YWluID4gLm8tcmF0aW9fX2NvbnRlbnQ6YmVmb3JlIHtcbiAgaGVpZ2h0OiBhdXRvO1xuICBtYXJnaW46IGF1dG87XG4gIG1heC1oZWlnaHQ6IDEwMCU7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgd2lkdGg6IGF1dG87XG59XG5cbi5vLXdyYXBwZXIge1xuICBtYXgtd2lkdGg6IDEzNDRweDtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIHBhZGRpbmc6IDAgMjRweDtcbn1cblxuLm8td3JhcHBlcjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCIgIWltcG9ydGFudDtcbiAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgY2xlYXI6IGJvdGggIWltcG9ydGFudDtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDgwZW0pIHtcbiAgLm8td3JhcHBlciB7XG4gICAgcGFkZGluZzogMCA0OHB4O1xuICB9XG59XG5cbi5vLWJ0biwgaW5wdXRbdHlwZT1cImJ1dHRvblwiXSxcbmlucHV0W3R5cGU9XCJzdWJtaXRcIl0sXG5idXR0b24ge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgcGFkZGluZzogMTJweCAyNHB4O1xuICBib3JkZXI6IDFweCBzb2xpZCAjMDAwMDAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiAxcHggc29saWQgd2hpdGU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgY29sb3I6ICNmZmZmZmY7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdHJhbnNpdGlvbjogMC40cztcbiAgZm9udC1zaXplOiAxNnB4O1xuICBmb250LXdlaWdodDogNTAwO1xuICBmb250LXNpemU6IDE2cHg7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG5cbi5vLWJ0bjpob3ZlciwgaW5wdXQ6aG92ZXJbdHlwZT1cImJ1dHRvblwiXSxcbmlucHV0OmhvdmVyW3R5cGU9XCJzdWJtaXRcIl0sXG5idXR0b246aG92ZXIge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGNvbG9yOiAjMDAwMDAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYzhkYTJlO1xuICBjb2xvcjogIzI0MjcyMztcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDI5Ljk5ZW0pIHtcbiAgLm8tYnRuLCBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdLFxuICBpbnB1dFt0eXBlPVwic3VibWl0XCJdLFxuICBidXR0b24ge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG5cbi5vLWJ0bi0tbGltZSB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjOGRhMmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjOGRhMmU7XG4gIGNvbG9yOiAjMjQyNzIzICFpbXBvcnRhbnQ7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4uby1idG4tLWxpbWU6aG92ZXIge1xuICBvcGFjaXR5OiAwLjg7XG59XG5cbi5vLWxheW91dCA+IC5vLWxheW91dF9faXRlbSB7XG4gIG1hcmdpbi1ib3R0b206IDI0cHg7XG59XG5cbi5vLWxheW91dC0tbGFyZ2Uge1xuICBtYXJnaW4tbGVmdDogLTM2cHg7XG59XG5cbi5vLWxheW91dC0tbGFyZ2UgPiAuby1sYXlvdXRfX2l0ZW0ge1xuICBwYWRkaW5nLWxlZnQ6IDM2cHg7XG59XG5cbi5vLWxheW91dC0tbGFyZ2UyIHtcbiAgbWFyZ2luLWxlZnQ6IC00OHB4O1xufVxuXG4uby1sYXlvdXQtLWxhcmdlMiA+IC5vLWxheW91dF9faXRlbSB7XG4gIHBhZGRpbmctbGVmdDogNDhweDtcbn1cblxuLm8tbGF5b3V0LS1sYXJnZTMge1xuICBtYXJnaW4tbGVmdDogLTUycHg7XG59XG5cbi5vLWxheW91dC0tbGFyZ2UzID4gLm8tbGF5b3V0X19pdGVtIHtcbiAgcGFkZGluZy1sZWZ0OiA1MnB4O1xufVxuXG4uby1sYXlvdXQtLWZsdXNoID4gLm8tbGF5b3V0X19pdGVtIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICNXSURUSFNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIGludWl0Y3NzIGdlbmVyYXRlcyBhIHNlcmllcyBvZiB1dGlsaXR5IGNsYXNzZXMgdGhhdCBnaXZlIGEgZmx1aWQgd2lkdGggdG9cbiAqIHdoaWNoZXZlciBlbGVtZW50IHRoZXnigJlyZSBhcHBsaWVkLCBlLmcuOlxuICpcbiAqICAgPGltZyBzcmM9XCJcIiBhbHQ9XCJcIiBjbGFzcz1cInUtMS8yXCIgLz5cbiAqXG4gKiBUaGVzZSBjbGFzc2VzIGFyZSBtb3N0IGNvbW1vbmx5IHVzZWQgaW4gY29uanVuY3Rpb24gd2l0aCBvdXIgbGF5b3V0IHN5c3RlbSxcbiAqIGUuZy46XG4gKlxuICogICA8ZGl2IGNsYXNzPVwiby1sYXlvdXRfX2l0ZW0gIHUtMS8yXCI+XG4gKlxuICogQnkgZGVmYXVsdCwgaW51aXRjc3Mgd2lsbCBhbHNvIGdlbmVyYXRlIHJlc3BvbnNpdmUgdmFyaWFudHMgb2YgZWFjaCBvZiB0aGVzZVxuICogY2xhc3NlcyBieSB1c2luZyB5b3VyIFNhc3MgTVEgY29uZmlndXJhdGlvbiwgZS5nLjpcbiAqXG4gKiAgIDxkaXYgY2xhc3M9XCJvLWxheW91dF9faXRlbSAgdS0xLzEgIHUtMS8yQHRhYmxldCAgdS0xLzNAZGVza3RvcFwiPlxuICpcbiAqIE9wdGlvbmFsbHksIGludWl0Y3NzIGNhbiBnZW5lcmF0ZSBvZmZzZXQgY2xhc3NlcyB3aGljaCBjYW4gcHVzaCBhbmQgcHVsbFxuICogZWxlbWVudHMgbGVmdCBhbmQgcmlnaHQgYnkgYSBzcGVjaWZpZWQgYW1vdW50LCBlLmcuOlxuICpcbiAqICAgPGRpdiBjbGFzcz1cIm8tbGF5b3V0X19pdGVtICB1LTIvMyAgdS1wdWxsLTEvM1wiPlxuICpcbiAqIFRoaXMgaXMgdXNlZnVsIGZvciBtYWtpbmcgdmVyeSBncmFudWxhciBjaGFuZ2VzIHRvIHRoZSByZW5kZXJlZCBvcmRlciBvZlxuICogaXRlbXMgaW4gYSBsYXlvdXQuXG4gKlxuICogTi5CLiBUaGlzIG9wdGlvbiBpcyB0dXJuZWQgb2ZmIGJ5IGRlZmF1bHQuXG4gKi9cbi8qKlxuICogQSBzZXJpZXMgb2Ygd2lkdGggaGVscGVyIGNsYXNzZXMgdGhhdCB5b3UgY2FuIHVzZSB0byBzaXplIHRoaW5ncyBsaWtlIGdyaWRcbiAqIHN5c3RlbXMuIENsYXNzZXMgdGFrZSBhIGZyYWN0aW9uLWxpa2UgZm9ybWF0IChlLmcuIGAudS0yLzNgKS4gVXNlIHRoZXNlIGluXG4gKiB5b3VyIG1hcmt1cDpcbiAqXG4gKiA8ZGl2IGNsYXNzPVwidS03LzEyXCI+XG4gKlxuICogVGhlIGZvbGxvd2luZyB3aWxsIGdlbmVyYXRlIHdpZHRocyBoZWxwZXIgY2xhc3NlcyBiYXNlZCBvbiB0aGUgZnJhY3Rpb25zXG4gKiBkZWZpbmVkIGluIHRoZSBgJGludWl0LWZyYWN0aW9uc2AgbGlzdC5cbiAqL1xuLnUtMVxcLzEge1xuICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xufVxuXG4vKipcbiAgICAgICAgICogMS4gUmVzZXQgYW55IGxlZnRvdmVyIG9yIGNvbmZsaWN0aW5nIGBsZWZ0YC9gcmlnaHRgIHZhbHVlcy5cbiAgICAgICAgICovXG4udS1wdXNoLTFcXC8xIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gIHJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gIC8qIFsxXSAqL1xuICBsZWZ0OiAxMDAlICFpbXBvcnRhbnQ7XG59XG5cbi51LXB1bGwtMVxcLzEge1xuICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgcmlnaHQ6IDEwMCUgIWltcG9ydGFudDtcbiAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAvKiBbMV0gKi9cbn1cblxuLnUtMVxcLzIge1xuICB3aWR0aDogNTAlICFpbXBvcnRhbnQ7XG59XG5cbi8qKlxuICAgICAgICAgKiAxLiBSZXNldCBhbnkgbGVmdG92ZXIgb3IgY29uZmxpY3RpbmcgYGxlZnRgL2ByaWdodGAgdmFsdWVzLlxuICAgICAgICAgKi9cbi51LXB1c2gtMVxcLzIge1xuICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgLyogWzFdICovXG4gIGxlZnQ6IDUwJSAhaW1wb3J0YW50O1xufVxuXG4udS1wdWxsLTFcXC8yIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gIHJpZ2h0OiA1MCUgIWltcG9ydGFudDtcbiAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAvKiBbMV0gKi9cbn1cblxuLnUtMlxcLzIge1xuICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xufVxuXG4vKipcbiAgICAgICAgICogMS4gUmVzZXQgYW55IGxlZnRvdmVyIG9yIGNvbmZsaWN0aW5nIGBsZWZ0YC9gcmlnaHRgIHZhbHVlcy5cbiAgICAgICAgICovXG4udS1wdXNoLTJcXC8yIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gIHJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gIC8qIFsxXSAqL1xuICBsZWZ0OiAxMDAlICFpbXBvcnRhbnQ7XG59XG5cbi51LXB1bGwtMlxcLzIge1xuICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgcmlnaHQ6IDEwMCUgIWltcG9ydGFudDtcbiAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAvKiBbMV0gKi9cbn1cblxuLnUtMVxcLzMge1xuICB3aWR0aDogMzMuMzMzMzMlICFpbXBvcnRhbnQ7XG59XG5cbi8qKlxuICAgICAgICAgKiAxLiBSZXNldCBhbnkgbGVmdG92ZXIgb3IgY29uZmxpY3RpbmcgYGxlZnRgL2ByaWdodGAgdmFsdWVzLlxuICAgICAgICAgKi9cbi51LXB1c2gtMVxcLzMge1xuICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgLyogWzFdICovXG4gIGxlZnQ6IDMzLjMzMzMzJSAhaW1wb3J0YW50O1xufVxuXG4udS1wdWxsLTFcXC8zIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gIHJpZ2h0OiAzMy4zMzMzMyUgIWltcG9ydGFudDtcbiAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAvKiBbMV0gKi9cbn1cblxuLnUtMlxcLzMge1xuICB3aWR0aDogNjYuNjY2NjclICFpbXBvcnRhbnQ7XG59XG5cbi8qKlxuICAgICAgICAgKiAxLiBSZXNldCBhbnkgbGVmdG92ZXIgb3IgY29uZmxpY3RpbmcgYGxlZnRgL2ByaWdodGAgdmFsdWVzLlxuICAgICAgICAgKi9cbi51LXB1c2gtMlxcLzMge1xuICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgLyogWzFdICovXG4gIGxlZnQ6IDY2LjY2NjY3JSAhaW1wb3J0YW50O1xufVxuXG4udS1wdWxsLTJcXC8zIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gIHJpZ2h0OiA2Ni42NjY2NyUgIWltcG9ydGFudDtcbiAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAvKiBbMV0gKi9cbn1cblxuLnUtM1xcLzMge1xuICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xufVxuXG4vKipcbiAgICAgICAgICogMS4gUmVzZXQgYW55IGxlZnRvdmVyIG9yIGNvbmZsaWN0aW5nIGBsZWZ0YC9gcmlnaHRgIHZhbHVlcy5cbiAgICAgICAgICovXG4udS1wdXNoLTNcXC8zIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gIHJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gIC8qIFsxXSAqL1xuICBsZWZ0OiAxMDAlICFpbXBvcnRhbnQ7XG59XG5cbi51LXB1bGwtM1xcLzMge1xuICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgcmlnaHQ6IDEwMCUgIWltcG9ydGFudDtcbiAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAvKiBbMV0gKi9cbn1cblxuLnUtMVxcLzQge1xuICB3aWR0aDogMjUlICFpbXBvcnRhbnQ7XG59XG5cbi8qKlxuICAgICAgICAgKiAxLiBSZXNldCBhbnkgbGVmdG92ZXIgb3IgY29uZmxpY3RpbmcgYGxlZnRgL2ByaWdodGAgdmFsdWVzLlxuICAgICAgICAgKi9cbi51LXB1c2gtMVxcLzQge1xuICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgLyogWzFdICovXG4gIGxlZnQ6IDI1JSAhaW1wb3J0YW50O1xufVxuXG4udS1wdWxsLTFcXC80IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gIHJpZ2h0OiAyNSUgIWltcG9ydGFudDtcbiAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAvKiBbMV0gKi9cbn1cblxuLnUtMlxcLzQge1xuICB3aWR0aDogNTAlICFpbXBvcnRhbnQ7XG59XG5cbi8qKlxuICAgICAgICAgKiAxLiBSZXNldCBhbnkgbGVmdG92ZXIgb3IgY29uZmxpY3RpbmcgYGxlZnRgL2ByaWdodGAgdmFsdWVzLlxuICAgICAgICAgKi9cbi51LXB1c2gtMlxcLzQge1xuICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgLyogWzFdICovXG4gIGxlZnQ6IDUwJSAhaW1wb3J0YW50O1xufVxuXG4udS1wdWxsLTJcXC80IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gIHJpZ2h0OiA1MCUgIWltcG9ydGFudDtcbiAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAvKiBbMV0gKi9cbn1cblxuLnUtM1xcLzQge1xuICB3aWR0aDogNzUlICFpbXBvcnRhbnQ7XG59XG5cbi8qKlxuICAgICAgICAgKiAxLiBSZXNldCBhbnkgbGVmdG92ZXIgb3IgY29uZmxpY3RpbmcgYGxlZnRgL2ByaWdodGAgdmFsdWVzLlxuICAgICAgICAgKi9cbi51LXB1c2gtM1xcLzQge1xuICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgLyogWzFdICovXG4gIGxlZnQ6IDc1JSAhaW1wb3J0YW50O1xufVxuXG4udS1wdWxsLTNcXC80IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gIHJpZ2h0OiA3NSUgIWltcG9ydGFudDtcbiAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAvKiBbMV0gKi9cbn1cblxuLnUtNFxcLzQge1xuICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xufVxuXG4vKipcbiAgICAgICAgICogMS4gUmVzZXQgYW55IGxlZnRvdmVyIG9yIGNvbmZsaWN0aW5nIGBsZWZ0YC9gcmlnaHRgIHZhbHVlcy5cbiAgICAgICAgICovXG4udS1wdXNoLTRcXC80IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gIHJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gIC8qIFsxXSAqL1xuICBsZWZ0OiAxMDAlICFpbXBvcnRhbnQ7XG59XG5cbi51LXB1bGwtNFxcLzQge1xuICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgcmlnaHQ6IDEwMCUgIWltcG9ydGFudDtcbiAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAvKiBbMV0gKi9cbn1cblxuLnUtMVxcLzUge1xuICB3aWR0aDogMjAlICFpbXBvcnRhbnQ7XG59XG5cbi8qKlxuICAgICAgICAgKiAxLiBSZXNldCBhbnkgbGVmdG92ZXIgb3IgY29uZmxpY3RpbmcgYGxlZnRgL2ByaWdodGAgdmFsdWVzLlxuICAgICAgICAgKi9cbi51LXB1c2gtMVxcLzUge1xuICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgLyogWzFdICovXG4gIGxlZnQ6IDIwJSAhaW1wb3J0YW50O1xufVxuXG4udS1wdWxsLTFcXC81IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gIHJpZ2h0OiAyMCUgIWltcG9ydGFudDtcbiAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAvKiBbMV0gKi9cbn1cblxuLnUtMlxcLzUge1xuICB3aWR0aDogNDAlICFpbXBvcnRhbnQ7XG59XG5cbi8qKlxuICAgICAgICAgKiAxLiBSZXNldCBhbnkgbGVmdG92ZXIgb3IgY29uZmxpY3RpbmcgYGxlZnRgL2ByaWdodGAgdmFsdWVzLlxuICAgICAgICAgKi9cbi51LXB1c2gtMlxcLzUge1xuICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgLyogWzFdICovXG4gIGxlZnQ6IDQwJSAhaW1wb3J0YW50O1xufVxuXG4udS1wdWxsLTJcXC81IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gIHJpZ2h0OiA0MCUgIWltcG9ydGFudDtcbiAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAvKiBbMV0gKi9cbn1cblxuLnUtM1xcLzUge1xuICB3aWR0aDogNjAlICFpbXBvcnRhbnQ7XG59XG5cbi8qKlxuICAgICAgICAgKiAxLiBSZXNldCBhbnkgbGVmdG92ZXIgb3IgY29uZmxpY3RpbmcgYGxlZnRgL2ByaWdodGAgdmFsdWVzLlxuICAgICAgICAgKi9cbi51LXB1c2gtM1xcLzUge1xuICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgLyogWzFdICovXG4gIGxlZnQ6IDYwJSAhaW1wb3J0YW50O1xufVxuXG4udS1wdWxsLTNcXC81IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gIHJpZ2h0OiA2MCUgIWltcG9ydGFudDtcbiAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAvKiBbMV0gKi9cbn1cblxuLnUtNFxcLzUge1xuICB3aWR0aDogODAlICFpbXBvcnRhbnQ7XG59XG5cbi8qKlxuICAgICAgICAgKiAxLiBSZXNldCBhbnkgbGVmdG92ZXIgb3IgY29uZmxpY3RpbmcgYGxlZnRgL2ByaWdodGAgdmFsdWVzLlxuICAgICAgICAgKi9cbi51LXB1c2gtNFxcLzUge1xuICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgLyogWzFdICovXG4gIGxlZnQ6IDgwJSAhaW1wb3J0YW50O1xufVxuXG4udS1wdWxsLTRcXC81IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gIHJpZ2h0OiA4MCUgIWltcG9ydGFudDtcbiAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAvKiBbMV0gKi9cbn1cblxuLnUtNVxcLzUge1xuICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xufVxuXG4vKipcbiAgICAgICAgICogMS4gUmVzZXQgYW55IGxlZnRvdmVyIG9yIGNvbmZsaWN0aW5nIGBsZWZ0YC9gcmlnaHRgIHZhbHVlcy5cbiAgICAgICAgICovXG4udS1wdXNoLTVcXC81IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gIHJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gIC8qIFsxXSAqL1xuICBsZWZ0OiAxMDAlICFpbXBvcnRhbnQ7XG59XG5cbi51LXB1bGwtNVxcLzUge1xuICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgcmlnaHQ6IDEwMCUgIWltcG9ydGFudDtcbiAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAvKiBbMV0gKi9cbn1cblxuLnUtMVxcLzYge1xuICB3aWR0aDogMTYuNjY2NjclICFpbXBvcnRhbnQ7XG59XG5cbi8qKlxuICAgICAgICAgKiAxLiBSZXNldCBhbnkgbGVmdG92ZXIgb3IgY29uZmxpY3RpbmcgYGxlZnRgL2ByaWdodGAgdmFsdWVzLlxuICAgICAgICAgKi9cbi51LXB1c2gtMVxcLzYge1xuICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgLyogWzFdICovXG4gIGxlZnQ6IDE2LjY2NjY3JSAhaW1wb3J0YW50O1xufVxuXG4udS1wdWxsLTFcXC82IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gIHJpZ2h0OiAxNi42NjY2NyUgIWltcG9ydGFudDtcbiAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAvKiBbMV0gKi9cbn1cblxuLnUtMlxcLzYge1xuICB3aWR0aDogMzMuMzMzMzMlICFpbXBvcnRhbnQ7XG59XG5cbi8qKlxuICAgICAgICAgKiAxLiBSZXNldCBhbnkgbGVmdG92ZXIgb3IgY29uZmxpY3RpbmcgYGxlZnRgL2ByaWdodGAgdmFsdWVzLlxuICAgICAgICAgKi9cbi51LXB1c2gtMlxcLzYge1xuICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgLyogWzFdICovXG4gIGxlZnQ6IDMzLjMzMzMzJSAhaW1wb3J0YW50O1xufVxuXG4udS1wdWxsLTJcXC82IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gIHJpZ2h0OiAzMy4zMzMzMyUgIWltcG9ydGFudDtcbiAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAvKiBbMV0gKi9cbn1cblxuLnUtM1xcLzYge1xuICB3aWR0aDogNTAlICFpbXBvcnRhbnQ7XG59XG5cbi8qKlxuICAgICAgICAgKiAxLiBSZXNldCBhbnkgbGVmdG92ZXIgb3IgY29uZmxpY3RpbmcgYGxlZnRgL2ByaWdodGAgdmFsdWVzLlxuICAgICAgICAgKi9cbi51LXB1c2gtM1xcLzYge1xuICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgLyogWzFdICovXG4gIGxlZnQ6IDUwJSAhaW1wb3J0YW50O1xufVxuXG4udS1wdWxsLTNcXC82IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gIHJpZ2h0OiA1MCUgIWltcG9ydGFudDtcbiAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAvKiBbMV0gKi9cbn1cblxuLnUtNFxcLzYge1xuICB3aWR0aDogNjYuNjY2NjclICFpbXBvcnRhbnQ7XG59XG5cbi8qKlxuICAgICAgICAgKiAxLiBSZXNldCBhbnkgbGVmdG92ZXIgb3IgY29uZmxpY3RpbmcgYGxlZnRgL2ByaWdodGAgdmFsdWVzLlxuICAgICAgICAgKi9cbi51LXB1c2gtNFxcLzYge1xuICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgLyogWzFdICovXG4gIGxlZnQ6IDY2LjY2NjY3JSAhaW1wb3J0YW50O1xufVxuXG4udS1wdWxsLTRcXC82IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gIHJpZ2h0OiA2Ni42NjY2NyUgIWltcG9ydGFudDtcbiAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAvKiBbMV0gKi9cbn1cblxuLnUtNVxcLzYge1xuICB3aWR0aDogODMuMzMzMzMlICFpbXBvcnRhbnQ7XG59XG5cbi8qKlxuICAgICAgICAgKiAxLiBSZXNldCBhbnkgbGVmdG92ZXIgb3IgY29uZmxpY3RpbmcgYGxlZnRgL2ByaWdodGAgdmFsdWVzLlxuICAgICAgICAgKi9cbi51LXB1c2gtNVxcLzYge1xuICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgLyogWzFdICovXG4gIGxlZnQ6IDgzLjMzMzMzJSAhaW1wb3J0YW50O1xufVxuXG4udS1wdWxsLTVcXC82IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gIHJpZ2h0OiA4My4zMzMzMyUgIWltcG9ydGFudDtcbiAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAvKiBbMV0gKi9cbn1cblxuLnUtNlxcLzYge1xuICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xufVxuXG4vKipcbiAgICAgICAgICogMS4gUmVzZXQgYW55IGxlZnRvdmVyIG9yIGNvbmZsaWN0aW5nIGBsZWZ0YC9gcmlnaHRgIHZhbHVlcy5cbiAgICAgICAgICovXG4udS1wdXNoLTZcXC82IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gIHJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gIC8qIFsxXSAqL1xuICBsZWZ0OiAxMDAlICFpbXBvcnRhbnQ7XG59XG5cbi51LXB1bGwtNlxcLzYge1xuICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgcmlnaHQ6IDEwMCUgIWltcG9ydGFudDtcbiAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAvKiBbMV0gKi9cbn1cblxuLnUtMVxcLzcge1xuICB3aWR0aDogMTQuMjg1NzElICFpbXBvcnRhbnQ7XG59XG5cbi8qKlxuICAgICAgICAgKiAxLiBSZXNldCBhbnkgbGVmdG92ZXIgb3IgY29uZmxpY3RpbmcgYGxlZnRgL2ByaWdodGAgdmFsdWVzLlxuICAgICAgICAgKi9cbi51LXB1c2gtMVxcLzcge1xuICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgLyogWzFdICovXG4gIGxlZnQ6IDE0LjI4NTcxJSAhaW1wb3J0YW50O1xufVxuXG4udS1wdWxsLTFcXC83IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gIHJpZ2h0OiAxNC4yODU3MSUgIWltcG9ydGFudDtcbiAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAvKiBbMV0gKi9cbn1cblxuLnUtMlxcLzcge1xuICB3aWR0aDogMjguNTcxNDMlICFpbXBvcnRhbnQ7XG59XG5cbi8qKlxuICAgICAgICAgKiAxLiBSZXNldCBhbnkgbGVmdG92ZXIgb3IgY29uZmxpY3RpbmcgYGxlZnRgL2ByaWdodGAgdmFsdWVzLlxuICAgICAgICAgKi9cbi51LXB1c2gtMlxcLzcge1xuICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgLyogWzFdICovXG4gIGxlZnQ6IDI4LjU3MTQzJSAhaW1wb3J0YW50O1xufVxuXG4udS1wdWxsLTJcXC83IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gIHJpZ2h0OiAyOC41NzE0MyUgIWltcG9ydGFudDtcbiAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAvKiBbMV0gKi9cbn1cblxuLnUtM1xcLzcge1xuICB3aWR0aDogNDIuODU3MTQlICFpbXBvcnRhbnQ7XG59XG5cbi8qKlxuICAgICAgICAgKiAxLiBSZXNldCBhbnkgbGVmdG92ZXIgb3IgY29uZmxpY3RpbmcgYGxlZnRgL2ByaWdodGAgdmFsdWVzLlxuICAgICAgICAgKi9cbi51LXB1c2gtM1xcLzcge1xuICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgLyogWzFdICovXG4gIGxlZnQ6IDQyLjg1NzE0JSAhaW1wb3J0YW50O1xufVxuXG4udS1wdWxsLTNcXC83IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gIHJpZ2h0OiA0Mi44NTcxNCUgIWltcG9ydGFudDtcbiAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAvKiBbMV0gKi9cbn1cblxuLnUtNFxcLzcge1xuICB3aWR0aDogNTcuMTQyODYlICFpbXBvcnRhbnQ7XG59XG5cbi8qKlxuICAgICAgICAgKiAxLiBSZXNldCBhbnkgbGVmdG92ZXIgb3IgY29uZmxpY3RpbmcgYGxlZnRgL2ByaWdodGAgdmFsdWVzLlxuICAgICAgICAgKi9cbi51LXB1c2gtNFxcLzcge1xuICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgLyogWzFdICovXG4gIGxlZnQ6IDU3LjE0Mjg2JSAhaW1wb3J0YW50O1xufVxuXG4udS1wdWxsLTRcXC83IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gIHJpZ2h0OiA1Ny4xNDI4NiUgIWltcG9ydGFudDtcbiAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAvKiBbMV0gKi9cbn1cblxuLnUtNVxcLzcge1xuICB3aWR0aDogNzEuNDI4NTclICFpbXBvcnRhbnQ7XG59XG5cbi8qKlxuICAgICAgICAgKiAxLiBSZXNldCBhbnkgbGVmdG92ZXIgb3IgY29uZmxpY3RpbmcgYGxlZnRgL2ByaWdodGAgdmFsdWVzLlxuICAgICAgICAgKi9cbi51LXB1c2gtNVxcLzcge1xuICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgLyogWzFdICovXG4gIGxlZnQ6IDcxLjQyODU3JSAhaW1wb3J0YW50O1xufVxuXG4udS1wdWxsLTVcXC83IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gIHJpZ2h0OiA3MS40Mjg1NyUgIWltcG9ydGFudDtcbiAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAvKiBbMV0gKi9cbn1cblxuLnUtNlxcLzcge1xuICB3aWR0aDogODUuNzE0MjklICFpbXBvcnRhbnQ7XG59XG5cbi8qKlxuICAgICAgICAgKiAxLiBSZXNldCBhbnkgbGVmdG92ZXIgb3IgY29uZmxpY3RpbmcgYGxlZnRgL2ByaWdodGAgdmFsdWVzLlxuICAgICAgICAgKi9cbi51LXB1c2gtNlxcLzcge1xuICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgLyogWzFdICovXG4gIGxlZnQ6IDg1LjcxNDI5JSAhaW1wb3J0YW50O1xufVxuXG4udS1wdWxsLTZcXC83IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gIHJpZ2h0OiA4NS43MTQyOSUgIWltcG9ydGFudDtcbiAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAvKiBbMV0gKi9cbn1cblxuLnUtN1xcLzcge1xuICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xufVxuXG4vKipcbiAgICAgICAgICogMS4gUmVzZXQgYW55IGxlZnRvdmVyIG9yIGNvbmZsaWN0aW5nIGBsZWZ0YC9gcmlnaHRgIHZhbHVlcy5cbiAgICAgICAgICovXG4udS1wdXNoLTdcXC83IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gIHJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gIC8qIFsxXSAqL1xuICBsZWZ0OiAxMDAlICFpbXBvcnRhbnQ7XG59XG5cbi51LXB1bGwtN1xcLzcge1xuICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgcmlnaHQ6IDEwMCUgIWltcG9ydGFudDtcbiAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAvKiBbMV0gKi9cbn1cblxuLnUtMVxcLzgge1xuICB3aWR0aDogMTIuNSUgIWltcG9ydGFudDtcbn1cblxuLyoqXG4gICAgICAgICAqIDEuIFJlc2V0IGFueSBsZWZ0b3ZlciBvciBjb25mbGljdGluZyBgbGVmdGAvYHJpZ2h0YCB2YWx1ZXMuXG4gICAgICAgICAqL1xuLnUtcHVzaC0xXFwvOCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICByaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAvKiBbMV0gKi9cbiAgbGVmdDogMTIuNSUgIWltcG9ydGFudDtcbn1cblxuLnUtcHVsbC0xXFwvOCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICByaWdodDogMTIuNSUgIWltcG9ydGFudDtcbiAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAvKiBbMV0gKi9cbn1cblxuLnUtMlxcLzgge1xuICB3aWR0aDogMjUlICFpbXBvcnRhbnQ7XG59XG5cbi8qKlxuICAgICAgICAgKiAxLiBSZXNldCBhbnkgbGVmdG92ZXIgb3IgY29uZmxpY3RpbmcgYGxlZnRgL2ByaWdodGAgdmFsdWVzLlxuICAgICAgICAgKi9cbi51LXB1c2gtMlxcLzgge1xuICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgLyogWzFdICovXG4gIGxlZnQ6IDI1JSAhaW1wb3J0YW50O1xufVxuXG4udS1wdWxsLTJcXC84IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gIHJpZ2h0OiAyNSUgIWltcG9ydGFudDtcbiAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAvKiBbMV0gKi9cbn1cblxuLnUtM1xcLzgge1xuICB3aWR0aDogMzcuNSUgIWltcG9ydGFudDtcbn1cblxuLyoqXG4gICAgICAgICAqIDEuIFJlc2V0IGFueSBsZWZ0b3ZlciBvciBjb25mbGljdGluZyBgbGVmdGAvYHJpZ2h0YCB2YWx1ZXMuXG4gICAgICAgICAqL1xuLnUtcHVzaC0zXFwvOCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICByaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAvKiBbMV0gKi9cbiAgbGVmdDogMzcuNSUgIWltcG9ydGFudDtcbn1cblxuLnUtcHVsbC0zXFwvOCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICByaWdodDogMzcuNSUgIWltcG9ydGFudDtcbiAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAvKiBbMV0gKi9cbn1cblxuLnUtNFxcLzgge1xuICB3aWR0aDogNTAlICFpbXBvcnRhbnQ7XG59XG5cbi8qKlxuICAgICAgICAgKiAxLiBSZXNldCBhbnkgbGVmdG92ZXIgb3IgY29uZmxpY3RpbmcgYGxlZnRgL2ByaWdodGAgdmFsdWVzLlxuICAgICAgICAgKi9cbi51LXB1c2gtNFxcLzgge1xuICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgLyogWzFdICovXG4gIGxlZnQ6IDUwJSAhaW1wb3J0YW50O1xufVxuXG4udS1wdWxsLTRcXC84IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gIHJpZ2h0OiA1MCUgIWltcG9ydGFudDtcbiAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAvKiBbMV0gKi9cbn1cblxuLnUtNVxcLzgge1xuICB3aWR0aDogNjIuNSUgIWltcG9ydGFudDtcbn1cblxuLyoqXG4gICAgICAgICAqIDEuIFJlc2V0IGFueSBsZWZ0b3ZlciBvciBjb25mbGljdGluZyBgbGVmdGAvYHJpZ2h0YCB2YWx1ZXMuXG4gICAgICAgICAqL1xuLnUtcHVzaC01XFwvOCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICByaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAvKiBbMV0gKi9cbiAgbGVmdDogNjIuNSUgIWltcG9ydGFudDtcbn1cblxuLnUtcHVsbC01XFwvOCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICByaWdodDogNjIuNSUgIWltcG9ydGFudDtcbiAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAvKiBbMV0gKi9cbn1cblxuLnUtNlxcLzgge1xuICB3aWR0aDogNzUlICFpbXBvcnRhbnQ7XG59XG5cbi8qKlxuICAgICAgICAgKiAxLiBSZXNldCBhbnkgbGVmdG92ZXIgb3IgY29uZmxpY3RpbmcgYGxlZnRgL2ByaWdodGAgdmFsdWVzLlxuICAgICAgICAgKi9cbi51LXB1c2gtNlxcLzgge1xuICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgLyogWzFdICovXG4gIGxlZnQ6IDc1JSAhaW1wb3J0YW50O1xufVxuXG4udS1wdWxsLTZcXC84IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gIHJpZ2h0OiA3NSUgIWltcG9ydGFudDtcbiAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAvKiBbMV0gKi9cbn1cblxuLnUtN1xcLzgge1xuICB3aWR0aDogODcuNSUgIWltcG9ydGFudDtcbn1cblxuLyoqXG4gICAgICAgICAqIDEuIFJlc2V0IGFueSBsZWZ0b3ZlciBvciBjb25mbGljdGluZyBgbGVmdGAvYHJpZ2h0YCB2YWx1ZXMuXG4gICAgICAgICAqL1xuLnUtcHVzaC03XFwvOCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICByaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAvKiBbMV0gKi9cbiAgbGVmdDogODcuNSUgIWltcG9ydGFudDtcbn1cblxuLnUtcHVsbC03XFwvOCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICByaWdodDogODcuNSUgIWltcG9ydGFudDtcbiAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAvKiBbMV0gKi9cbn1cblxuLnUtOFxcLzgge1xuICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xufVxuXG4vKipcbiAgICAgICAgICogMS4gUmVzZXQgYW55IGxlZnRvdmVyIG9yIGNvbmZsaWN0aW5nIGBsZWZ0YC9gcmlnaHRgIHZhbHVlcy5cbiAgICAgICAgICovXG4udS1wdXNoLThcXC84IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gIHJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gIC8qIFsxXSAqL1xuICBsZWZ0OiAxMDAlICFpbXBvcnRhbnQ7XG59XG5cbi51LXB1bGwtOFxcLzgge1xuICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgcmlnaHQ6IDEwMCUgIWltcG9ydGFudDtcbiAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAvKiBbMV0gKi9cbn1cblxuLyoqXG4gKiBJZiB3ZeKAmXJlIHVzaW5nIFNhc3MtTVEsIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGUgZ3JpZCBzeXN0ZW0ocykgZm9yIGVhY2ggb2Ygb3VyXG4gKiBkZWZpbmVkIGJyZWFrcG9pbnRzLCBhbmQgZ2l2ZSB0aGVtIGEgUmVzcG9uc2l2ZSBTdWZmaXgsIGUuZy46XG4gKlxuICogPGRpdiBjbGFzcz1cInUtMy8xMkBtb2JpbGVcIj5cbiAqL1xuQG1lZGlhIChtaW4td2lkdGg6IDIzLjQzNzVlbSkge1xuICAudS0xXFwvMVxcQG1vYmlsZSB7XG4gICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgfVxuICAvKipcbiAgICAgICAgICogMS4gUmVzZXQgYW55IGxlZnRvdmVyIG9yIGNvbmZsaWN0aW5nIGBsZWZ0YC9gcmlnaHRgIHZhbHVlcy5cbiAgICAgICAgICovXG4gIC51LXB1c2gtMVxcLzFcXEBtb2JpbGUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gICAgbGVmdDogMTAwJSAhaW1wb3J0YW50O1xuICB9XG4gIC51LXB1bGwtMVxcLzFcXEBtb2JpbGUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICB9XG4gIC51LTFcXC8yXFxAbW9iaWxlIHtcbiAgICB3aWR0aDogNTAlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLyoqXG4gICAgICAgICAqIDEuIFJlc2V0IGFueSBsZWZ0b3ZlciBvciBjb25mbGljdGluZyBgbGVmdGAvYHJpZ2h0YCB2YWx1ZXMuXG4gICAgICAgICAqL1xuICAudS1wdXNoLTFcXC8yXFxAbW9iaWxlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICAgIGxlZnQ6IDUwJSAhaW1wb3J0YW50O1xuICB9XG4gIC51LXB1bGwtMVxcLzJcXEBtb2JpbGUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiA1MCUgIWltcG9ydGFudDtcbiAgICBsZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gIH1cbiAgLnUtMlxcLzJcXEBtb2JpbGUge1xuICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLyoqXG4gICAgICAgICAqIDEuIFJlc2V0IGFueSBsZWZ0b3ZlciBvciBjb25mbGljdGluZyBgbGVmdGAvYHJpZ2h0YCB2YWx1ZXMuXG4gICAgICAgICAqL1xuICAudS1wdXNoLTJcXC8yXFxAbW9iaWxlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICAgIGxlZnQ6IDEwMCUgIWltcG9ydGFudDtcbiAgfVxuICAudS1wdWxsLTJcXC8yXFxAbW9iaWxlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogMTAwJSAhaW1wb3J0YW50O1xuICAgIGxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgfVxuICAudS0xXFwvM1xcQG1vYmlsZSB7XG4gICAgd2lkdGg6IDMzLjMzMzMzJSAhaW1wb3J0YW50O1xuICB9XG4gIC8qKlxuICAgICAgICAgKiAxLiBSZXNldCBhbnkgbGVmdG92ZXIgb3IgY29uZmxpY3RpbmcgYGxlZnRgL2ByaWdodGAgdmFsdWVzLlxuICAgICAgICAgKi9cbiAgLnUtcHVzaC0xXFwvM1xcQG1vYmlsZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgICBsZWZ0OiAzMy4zMzMzMyUgIWltcG9ydGFudDtcbiAgfVxuICAudS1wdWxsLTFcXC8zXFxAbW9iaWxlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogMzMuMzMzMzMlICFpbXBvcnRhbnQ7XG4gICAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICB9XG4gIC51LTJcXC8zXFxAbW9iaWxlIHtcbiAgICB3aWR0aDogNjYuNjY2NjclICFpbXBvcnRhbnQ7XG4gIH1cbiAgLyoqXG4gICAgICAgICAqIDEuIFJlc2V0IGFueSBsZWZ0b3ZlciBvciBjb25mbGljdGluZyBgbGVmdGAvYHJpZ2h0YCB2YWx1ZXMuXG4gICAgICAgICAqL1xuICAudS1wdXNoLTJcXC8zXFxAbW9iaWxlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICAgIGxlZnQ6IDY2LjY2NjY3JSAhaW1wb3J0YW50O1xuICB9XG4gIC51LXB1bGwtMlxcLzNcXEBtb2JpbGUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiA2Ni42NjY2NyUgIWltcG9ydGFudDtcbiAgICBsZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gIH1cbiAgLnUtM1xcLzNcXEBtb2JpbGUge1xuICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLyoqXG4gICAgICAgICAqIDEuIFJlc2V0IGFueSBsZWZ0b3ZlciBvciBjb25mbGljdGluZyBgbGVmdGAvYHJpZ2h0YCB2YWx1ZXMuXG4gICAgICAgICAqL1xuICAudS1wdXNoLTNcXC8zXFxAbW9iaWxlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICAgIGxlZnQ6IDEwMCUgIWltcG9ydGFudDtcbiAgfVxuICAudS1wdWxsLTNcXC8zXFxAbW9iaWxlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogMTAwJSAhaW1wb3J0YW50O1xuICAgIGxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgfVxuICAudS0xXFwvNFxcQG1vYmlsZSB7XG4gICAgd2lkdGg6IDI1JSAhaW1wb3J0YW50O1xuICB9XG4gIC8qKlxuICAgICAgICAgKiAxLiBSZXNldCBhbnkgbGVmdG92ZXIgb3IgY29uZmxpY3RpbmcgYGxlZnRgL2ByaWdodGAgdmFsdWVzLlxuICAgICAgICAgKi9cbiAgLnUtcHVzaC0xXFwvNFxcQG1vYmlsZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgICBsZWZ0OiAyNSUgIWltcG9ydGFudDtcbiAgfVxuICAudS1wdWxsLTFcXC80XFxAbW9iaWxlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogMjUlICFpbXBvcnRhbnQ7XG4gICAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICB9XG4gIC51LTJcXC80XFxAbW9iaWxlIHtcbiAgICB3aWR0aDogNTAlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLyoqXG4gICAgICAgICAqIDEuIFJlc2V0IGFueSBsZWZ0b3ZlciBvciBjb25mbGljdGluZyBgbGVmdGAvYHJpZ2h0YCB2YWx1ZXMuXG4gICAgICAgICAqL1xuICAudS1wdXNoLTJcXC80XFxAbW9iaWxlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICAgIGxlZnQ6IDUwJSAhaW1wb3J0YW50O1xuICB9XG4gIC51LXB1bGwtMlxcLzRcXEBtb2JpbGUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiA1MCUgIWltcG9ydGFudDtcbiAgICBsZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gIH1cbiAgLnUtM1xcLzRcXEBtb2JpbGUge1xuICAgIHdpZHRoOiA3NSUgIWltcG9ydGFudDtcbiAgfVxuICAvKipcbiAgICAgICAgICogMS4gUmVzZXQgYW55IGxlZnRvdmVyIG9yIGNvbmZsaWN0aW5nIGBsZWZ0YC9gcmlnaHRgIHZhbHVlcy5cbiAgICAgICAgICovXG4gIC51LXB1c2gtM1xcLzRcXEBtb2JpbGUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gICAgbGVmdDogNzUlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnUtcHVsbC0zXFwvNFxcQG1vYmlsZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IDc1JSAhaW1wb3J0YW50O1xuICAgIGxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgfVxuICAudS00XFwvNFxcQG1vYmlsZSB7XG4gICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgfVxuICAvKipcbiAgICAgICAgICogMS4gUmVzZXQgYW55IGxlZnRvdmVyIG9yIGNvbmZsaWN0aW5nIGBsZWZ0YC9gcmlnaHRgIHZhbHVlcy5cbiAgICAgICAgICovXG4gIC51LXB1c2gtNFxcLzRcXEBtb2JpbGUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gICAgbGVmdDogMTAwJSAhaW1wb3J0YW50O1xuICB9XG4gIC51LXB1bGwtNFxcLzRcXEBtb2JpbGUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICB9XG4gIC51LTFcXC81XFxAbW9iaWxlIHtcbiAgICB3aWR0aDogMjAlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLyoqXG4gICAgICAgICAqIDEuIFJlc2V0IGFueSBsZWZ0b3ZlciBvciBjb25mbGljdGluZyBgbGVmdGAvYHJpZ2h0YCB2YWx1ZXMuXG4gICAgICAgICAqL1xuICAudS1wdXNoLTFcXC81XFxAbW9iaWxlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICAgIGxlZnQ6IDIwJSAhaW1wb3J0YW50O1xuICB9XG4gIC51LXB1bGwtMVxcLzVcXEBtb2JpbGUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiAyMCUgIWltcG9ydGFudDtcbiAgICBsZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gIH1cbiAgLnUtMlxcLzVcXEBtb2JpbGUge1xuICAgIHdpZHRoOiA0MCUgIWltcG9ydGFudDtcbiAgfVxuICAvKipcbiAgICAgICAgICogMS4gUmVzZXQgYW55IGxlZnRvdmVyIG9yIGNvbmZsaWN0aW5nIGBsZWZ0YC9gcmlnaHRgIHZhbHVlcy5cbiAgICAgICAgICovXG4gIC51LXB1c2gtMlxcLzVcXEBtb2JpbGUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gICAgbGVmdDogNDAlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnUtcHVsbC0yXFwvNVxcQG1vYmlsZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IDQwJSAhaW1wb3J0YW50O1xuICAgIGxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgfVxuICAudS0zXFwvNVxcQG1vYmlsZSB7XG4gICAgd2lkdGg6IDYwJSAhaW1wb3J0YW50O1xuICB9XG4gIC8qKlxuICAgICAgICAgKiAxLiBSZXNldCBhbnkgbGVmdG92ZXIgb3IgY29uZmxpY3RpbmcgYGxlZnRgL2ByaWdodGAgdmFsdWVzLlxuICAgICAgICAgKi9cbiAgLnUtcHVzaC0zXFwvNVxcQG1vYmlsZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgICBsZWZ0OiA2MCUgIWltcG9ydGFudDtcbiAgfVxuICAudS1wdWxsLTNcXC81XFxAbW9iaWxlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogNjAlICFpbXBvcnRhbnQ7XG4gICAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICB9XG4gIC51LTRcXC81XFxAbW9iaWxlIHtcbiAgICB3aWR0aDogODAlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLyoqXG4gICAgICAgICAqIDEuIFJlc2V0IGFueSBsZWZ0b3ZlciBvciBjb25mbGljdGluZyBgbGVmdGAvYHJpZ2h0YCB2YWx1ZXMuXG4gICAgICAgICAqL1xuICAudS1wdXNoLTRcXC81XFxAbW9iaWxlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICAgIGxlZnQ6IDgwJSAhaW1wb3J0YW50O1xuICB9XG4gIC51LXB1bGwtNFxcLzVcXEBtb2JpbGUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiA4MCUgIWltcG9ydGFudDtcbiAgICBsZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gIH1cbiAgLnUtNVxcLzVcXEBtb2JpbGUge1xuICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLyoqXG4gICAgICAgICAqIDEuIFJlc2V0IGFueSBsZWZ0b3ZlciBvciBjb25mbGljdGluZyBgbGVmdGAvYHJpZ2h0YCB2YWx1ZXMuXG4gICAgICAgICAqL1xuICAudS1wdXNoLTVcXC81XFxAbW9iaWxlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICAgIGxlZnQ6IDEwMCUgIWltcG9ydGFudDtcbiAgfVxuICAudS1wdWxsLTVcXC81XFxAbW9iaWxlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogMTAwJSAhaW1wb3J0YW50O1xuICAgIGxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgfVxuICAudS0xXFwvNlxcQG1vYmlsZSB7XG4gICAgd2lkdGg6IDE2LjY2NjY3JSAhaW1wb3J0YW50O1xuICB9XG4gIC8qKlxuICAgICAgICAgKiAxLiBSZXNldCBhbnkgbGVmdG92ZXIgb3IgY29uZmxpY3RpbmcgYGxlZnRgL2ByaWdodGAgdmFsdWVzLlxuICAgICAgICAgKi9cbiAgLnUtcHVzaC0xXFwvNlxcQG1vYmlsZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgICBsZWZ0OiAxNi42NjY2NyUgIWltcG9ydGFudDtcbiAgfVxuICAudS1wdWxsLTFcXC82XFxAbW9iaWxlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogMTYuNjY2NjclICFpbXBvcnRhbnQ7XG4gICAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICB9XG4gIC51LTJcXC82XFxAbW9iaWxlIHtcbiAgICB3aWR0aDogMzMuMzMzMzMlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLyoqXG4gICAgICAgICAqIDEuIFJlc2V0IGFueSBsZWZ0b3ZlciBvciBjb25mbGljdGluZyBgbGVmdGAvYHJpZ2h0YCB2YWx1ZXMuXG4gICAgICAgICAqL1xuICAudS1wdXNoLTJcXC82XFxAbW9iaWxlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICAgIGxlZnQ6IDMzLjMzMzMzJSAhaW1wb3J0YW50O1xuICB9XG4gIC51LXB1bGwtMlxcLzZcXEBtb2JpbGUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiAzMy4zMzMzMyUgIWltcG9ydGFudDtcbiAgICBsZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gIH1cbiAgLnUtM1xcLzZcXEBtb2JpbGUge1xuICAgIHdpZHRoOiA1MCUgIWltcG9ydGFudDtcbiAgfVxuICAvKipcbiAgICAgICAgICogMS4gUmVzZXQgYW55IGxlZnRvdmVyIG9yIGNvbmZsaWN0aW5nIGBsZWZ0YC9gcmlnaHRgIHZhbHVlcy5cbiAgICAgICAgICovXG4gIC51LXB1c2gtM1xcLzZcXEBtb2JpbGUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gICAgbGVmdDogNTAlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnUtcHVsbC0zXFwvNlxcQG1vYmlsZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IDUwJSAhaW1wb3J0YW50O1xuICAgIGxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgfVxuICAudS00XFwvNlxcQG1vYmlsZSB7XG4gICAgd2lkdGg6IDY2LjY2NjY3JSAhaW1wb3J0YW50O1xuICB9XG4gIC8qKlxuICAgICAgICAgKiAxLiBSZXNldCBhbnkgbGVmdG92ZXIgb3IgY29uZmxpY3RpbmcgYGxlZnRgL2ByaWdodGAgdmFsdWVzLlxuICAgICAgICAgKi9cbiAgLnUtcHVzaC00XFwvNlxcQG1vYmlsZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgICBsZWZ0OiA2Ni42NjY2NyUgIWltcG9ydGFudDtcbiAgfVxuICAudS1wdWxsLTRcXC82XFxAbW9iaWxlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogNjYuNjY2NjclICFpbXBvcnRhbnQ7XG4gICAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICB9XG4gIC51LTVcXC82XFxAbW9iaWxlIHtcbiAgICB3aWR0aDogODMuMzMzMzMlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLyoqXG4gICAgICAgICAqIDEuIFJlc2V0IGFueSBsZWZ0b3ZlciBvciBjb25mbGljdGluZyBgbGVmdGAvYHJpZ2h0YCB2YWx1ZXMuXG4gICAgICAgICAqL1xuICAudS1wdXNoLTVcXC82XFxAbW9iaWxlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICAgIGxlZnQ6IDgzLjMzMzMzJSAhaW1wb3J0YW50O1xuICB9XG4gIC51LXB1bGwtNVxcLzZcXEBtb2JpbGUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiA4My4zMzMzMyUgIWltcG9ydGFudDtcbiAgICBsZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gIH1cbiAgLnUtNlxcLzZcXEBtb2JpbGUge1xuICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLyoqXG4gICAgICAgICAqIDEuIFJlc2V0IGFueSBsZWZ0b3ZlciBvciBjb25mbGljdGluZyBgbGVmdGAvYHJpZ2h0YCB2YWx1ZXMuXG4gICAgICAgICAqL1xuICAudS1wdXNoLTZcXC82XFxAbW9iaWxlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICAgIGxlZnQ6IDEwMCUgIWltcG9ydGFudDtcbiAgfVxuICAudS1wdWxsLTZcXC82XFxAbW9iaWxlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogMTAwJSAhaW1wb3J0YW50O1xuICAgIGxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgfVxuICAudS0xXFwvN1xcQG1vYmlsZSB7XG4gICAgd2lkdGg6IDE0LjI4NTcxJSAhaW1wb3J0YW50O1xuICB9XG4gIC8qKlxuICAgICAgICAgKiAxLiBSZXNldCBhbnkgbGVmdG92ZXIgb3IgY29uZmxpY3RpbmcgYGxlZnRgL2ByaWdodGAgdmFsdWVzLlxuICAgICAgICAgKi9cbiAgLnUtcHVzaC0xXFwvN1xcQG1vYmlsZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgICBsZWZ0OiAxNC4yODU3MSUgIWltcG9ydGFudDtcbiAgfVxuICAudS1wdWxsLTFcXC83XFxAbW9iaWxlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogMTQuMjg1NzElICFpbXBvcnRhbnQ7XG4gICAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICB9XG4gIC51LTJcXC83XFxAbW9iaWxlIHtcbiAgICB3aWR0aDogMjguNTcxNDMlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLyoqXG4gICAgICAgICAqIDEuIFJlc2V0IGFueSBsZWZ0b3ZlciBvciBjb25mbGljdGluZyBgbGVmdGAvYHJpZ2h0YCB2YWx1ZXMuXG4gICAgICAgICAqL1xuICAudS1wdXNoLTJcXC83XFxAbW9iaWxlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICAgIGxlZnQ6IDI4LjU3MTQzJSAhaW1wb3J0YW50O1xuICB9XG4gIC51LXB1bGwtMlxcLzdcXEBtb2JpbGUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiAyOC41NzE0MyUgIWltcG9ydGFudDtcbiAgICBsZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gIH1cbiAgLnUtM1xcLzdcXEBtb2JpbGUge1xuICAgIHdpZHRoOiA0Mi44NTcxNCUgIWltcG9ydGFudDtcbiAgfVxuICAvKipcbiAgICAgICAgICogMS4gUmVzZXQgYW55IGxlZnRvdmVyIG9yIGNvbmZsaWN0aW5nIGBsZWZ0YC9gcmlnaHRgIHZhbHVlcy5cbiAgICAgICAgICovXG4gIC51LXB1c2gtM1xcLzdcXEBtb2JpbGUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gICAgbGVmdDogNDIuODU3MTQlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnUtcHVsbC0zXFwvN1xcQG1vYmlsZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IDQyLjg1NzE0JSAhaW1wb3J0YW50O1xuICAgIGxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgfVxuICAudS00XFwvN1xcQG1vYmlsZSB7XG4gICAgd2lkdGg6IDU3LjE0Mjg2JSAhaW1wb3J0YW50O1xuICB9XG4gIC8qKlxuICAgICAgICAgKiAxLiBSZXNldCBhbnkgbGVmdG92ZXIgb3IgY29uZmxpY3RpbmcgYGxlZnRgL2ByaWdodGAgdmFsdWVzLlxuICAgICAgICAgKi9cbiAgLnUtcHVzaC00XFwvN1xcQG1vYmlsZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgICBsZWZ0OiA1Ny4xNDI4NiUgIWltcG9ydGFudDtcbiAgfVxuICAudS1wdWxsLTRcXC83XFxAbW9iaWxlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogNTcuMTQyODYlICFpbXBvcnRhbnQ7XG4gICAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICB9XG4gIC51LTVcXC83XFxAbW9iaWxlIHtcbiAgICB3aWR0aDogNzEuNDI4NTclICFpbXBvcnRhbnQ7XG4gIH1cbiAgLyoqXG4gICAgICAgICAqIDEuIFJlc2V0IGFueSBsZWZ0b3ZlciBvciBjb25mbGljdGluZyBgbGVmdGAvYHJpZ2h0YCB2YWx1ZXMuXG4gICAgICAgICAqL1xuICAudS1wdXNoLTVcXC83XFxAbW9iaWxlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICAgIGxlZnQ6IDcxLjQyODU3JSAhaW1wb3J0YW50O1xuICB9XG4gIC51LXB1bGwtNVxcLzdcXEBtb2JpbGUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiA3MS40Mjg1NyUgIWltcG9ydGFudDtcbiAgICBsZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gIH1cbiAgLnUtNlxcLzdcXEBtb2JpbGUge1xuICAgIHdpZHRoOiA4NS43MTQyOSUgIWltcG9ydGFudDtcbiAgfVxuICAvKipcbiAgICAgICAgICogMS4gUmVzZXQgYW55IGxlZnRvdmVyIG9yIGNvbmZsaWN0aW5nIGBsZWZ0YC9gcmlnaHRgIHZhbHVlcy5cbiAgICAgICAgICovXG4gIC51LXB1c2gtNlxcLzdcXEBtb2JpbGUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gICAgbGVmdDogODUuNzE0MjklICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnUtcHVsbC02XFwvN1xcQG1vYmlsZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IDg1LjcxNDI5JSAhaW1wb3J0YW50O1xuICAgIGxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgfVxuICAudS03XFwvN1xcQG1vYmlsZSB7XG4gICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgfVxuICAvKipcbiAgICAgICAgICogMS4gUmVzZXQgYW55IGxlZnRvdmVyIG9yIGNvbmZsaWN0aW5nIGBsZWZ0YC9gcmlnaHRgIHZhbHVlcy5cbiAgICAgICAgICovXG4gIC51LXB1c2gtN1xcLzdcXEBtb2JpbGUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gICAgbGVmdDogMTAwJSAhaW1wb3J0YW50O1xuICB9XG4gIC51LXB1bGwtN1xcLzdcXEBtb2JpbGUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICB9XG4gIC51LTFcXC84XFxAbW9iaWxlIHtcbiAgICB3aWR0aDogMTIuNSUgIWltcG9ydGFudDtcbiAgfVxuICAvKipcbiAgICAgICAgICogMS4gUmVzZXQgYW55IGxlZnRvdmVyIG9yIGNvbmZsaWN0aW5nIGBsZWZ0YC9gcmlnaHRgIHZhbHVlcy5cbiAgICAgICAgICovXG4gIC51LXB1c2gtMVxcLzhcXEBtb2JpbGUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gICAgbGVmdDogMTIuNSUgIWltcG9ydGFudDtcbiAgfVxuICAudS1wdWxsLTFcXC84XFxAbW9iaWxlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogMTIuNSUgIWltcG9ydGFudDtcbiAgICBsZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gIH1cbiAgLnUtMlxcLzhcXEBtb2JpbGUge1xuICAgIHdpZHRoOiAyNSUgIWltcG9ydGFudDtcbiAgfVxuICAvKipcbiAgICAgICAgICogMS4gUmVzZXQgYW55IGxlZnRvdmVyIG9yIGNvbmZsaWN0aW5nIGBsZWZ0YC9gcmlnaHRgIHZhbHVlcy5cbiAgICAgICAgICovXG4gIC51LXB1c2gtMlxcLzhcXEBtb2JpbGUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gICAgbGVmdDogMjUlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnUtcHVsbC0yXFwvOFxcQG1vYmlsZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IDI1JSAhaW1wb3J0YW50O1xuICAgIGxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgfVxuICAudS0zXFwvOFxcQG1vYmlsZSB7XG4gICAgd2lkdGg6IDM3LjUlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLyoqXG4gICAgICAgICAqIDEuIFJlc2V0IGFueSBsZWZ0b3ZlciBvciBjb25mbGljdGluZyBgbGVmdGAvYHJpZ2h0YCB2YWx1ZXMuXG4gICAgICAgICAqL1xuICAudS1wdXNoLTNcXC84XFxAbW9iaWxlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICAgIGxlZnQ6IDM3LjUlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnUtcHVsbC0zXFwvOFxcQG1vYmlsZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IDM3LjUlICFpbXBvcnRhbnQ7XG4gICAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICB9XG4gIC51LTRcXC84XFxAbW9iaWxlIHtcbiAgICB3aWR0aDogNTAlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLyoqXG4gICAgICAgICAqIDEuIFJlc2V0IGFueSBsZWZ0b3ZlciBvciBjb25mbGljdGluZyBgbGVmdGAvYHJpZ2h0YCB2YWx1ZXMuXG4gICAgICAgICAqL1xuICAudS1wdXNoLTRcXC84XFxAbW9iaWxlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICAgIGxlZnQ6IDUwJSAhaW1wb3J0YW50O1xuICB9XG4gIC51LXB1bGwtNFxcLzhcXEBtb2JpbGUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiA1MCUgIWltcG9ydGFudDtcbiAgICBsZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gIH1cbiAgLnUtNVxcLzhcXEBtb2JpbGUge1xuICAgIHdpZHRoOiA2Mi41JSAhaW1wb3J0YW50O1xuICB9XG4gIC8qKlxuICAgICAgICAgKiAxLiBSZXNldCBhbnkgbGVmdG92ZXIgb3IgY29uZmxpY3RpbmcgYGxlZnRgL2ByaWdodGAgdmFsdWVzLlxuICAgICAgICAgKi9cbiAgLnUtcHVzaC01XFwvOFxcQG1vYmlsZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgICBsZWZ0OiA2Mi41JSAhaW1wb3J0YW50O1xuICB9XG4gIC51LXB1bGwtNVxcLzhcXEBtb2JpbGUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiA2Mi41JSAhaW1wb3J0YW50O1xuICAgIGxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgfVxuICAudS02XFwvOFxcQG1vYmlsZSB7XG4gICAgd2lkdGg6IDc1JSAhaW1wb3J0YW50O1xuICB9XG4gIC8qKlxuICAgICAgICAgKiAxLiBSZXNldCBhbnkgbGVmdG92ZXIgb3IgY29uZmxpY3RpbmcgYGxlZnRgL2ByaWdodGAgdmFsdWVzLlxuICAgICAgICAgKi9cbiAgLnUtcHVzaC02XFwvOFxcQG1vYmlsZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgICBsZWZ0OiA3NSUgIWltcG9ydGFudDtcbiAgfVxuICAudS1wdWxsLTZcXC84XFxAbW9iaWxlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogNzUlICFpbXBvcnRhbnQ7XG4gICAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICB9XG4gIC51LTdcXC84XFxAbW9iaWxlIHtcbiAgICB3aWR0aDogODcuNSUgIWltcG9ydGFudDtcbiAgfVxuICAvKipcbiAgICAgICAgICogMS4gUmVzZXQgYW55IGxlZnRvdmVyIG9yIGNvbmZsaWN0aW5nIGBsZWZ0YC9gcmlnaHRgIHZhbHVlcy5cbiAgICAgICAgICovXG4gIC51LXB1c2gtN1xcLzhcXEBtb2JpbGUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gICAgbGVmdDogODcuNSUgIWltcG9ydGFudDtcbiAgfVxuICAudS1wdWxsLTdcXC84XFxAbW9iaWxlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogODcuNSUgIWltcG9ydGFudDtcbiAgICBsZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gIH1cbiAgLnUtOFxcLzhcXEBtb2JpbGUge1xuICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLyoqXG4gICAgICAgICAqIDEuIFJlc2V0IGFueSBsZWZ0b3ZlciBvciBjb25mbGljdGluZyBgbGVmdGAvYHJpZ2h0YCB2YWx1ZXMuXG4gICAgICAgICAqL1xuICAudS1wdXNoLThcXC84XFxAbW9iaWxlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICAgIGxlZnQ6IDEwMCUgIWltcG9ydGFudDtcbiAgfVxuICAudS1wdWxsLThcXC84XFxAbW9iaWxlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogMTAwJSAhaW1wb3J0YW50O1xuICAgIGxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgfVxuICAudS1wdXNoLW5vbmVcXEBtb2JpbGUge1xuICAgIGxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgfVxuICAudS1wdWxsLW5vbmVcXEBtb2JpbGUge1xuICAgIHJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDMwZW0pIHtcbiAgLnUtMVxcLzFcXEBtb2JpbGVMYXJnZSB7XG4gICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgfVxuICAvKipcbiAgICAgICAgICogMS4gUmVzZXQgYW55IGxlZnRvdmVyIG9yIGNvbmZsaWN0aW5nIGBsZWZ0YC9gcmlnaHRgIHZhbHVlcy5cbiAgICAgICAgICovXG4gIC51LXB1c2gtMVxcLzFcXEBtb2JpbGVMYXJnZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgICBsZWZ0OiAxMDAlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnUtcHVsbC0xXFwvMVxcQG1vYmlsZUxhcmdlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogMTAwJSAhaW1wb3J0YW50O1xuICAgIGxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgfVxuICAudS0xXFwvMlxcQG1vYmlsZUxhcmdlIHtcbiAgICB3aWR0aDogNTAlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLyoqXG4gICAgICAgICAqIDEuIFJlc2V0IGFueSBsZWZ0b3ZlciBvciBjb25mbGljdGluZyBgbGVmdGAvYHJpZ2h0YCB2YWx1ZXMuXG4gICAgICAgICAqL1xuICAudS1wdXNoLTFcXC8yXFxAbW9iaWxlTGFyZ2Uge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gICAgbGVmdDogNTAlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnUtcHVsbC0xXFwvMlxcQG1vYmlsZUxhcmdlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogNTAlICFpbXBvcnRhbnQ7XG4gICAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICB9XG4gIC51LTJcXC8yXFxAbW9iaWxlTGFyZ2Uge1xuICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLyoqXG4gICAgICAgICAqIDEuIFJlc2V0IGFueSBsZWZ0b3ZlciBvciBjb25mbGljdGluZyBgbGVmdGAvYHJpZ2h0YCB2YWx1ZXMuXG4gICAgICAgICAqL1xuICAudS1wdXNoLTJcXC8yXFxAbW9iaWxlTGFyZ2Uge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gICAgbGVmdDogMTAwJSAhaW1wb3J0YW50O1xuICB9XG4gIC51LXB1bGwtMlxcLzJcXEBtb2JpbGVMYXJnZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IDEwMCUgIWltcG9ydGFudDtcbiAgICBsZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gIH1cbiAgLnUtMVxcLzNcXEBtb2JpbGVMYXJnZSB7XG4gICAgd2lkdGg6IDMzLjMzMzMzJSAhaW1wb3J0YW50O1xuICB9XG4gIC8qKlxuICAgICAgICAgKiAxLiBSZXNldCBhbnkgbGVmdG92ZXIgb3IgY29uZmxpY3RpbmcgYGxlZnRgL2ByaWdodGAgdmFsdWVzLlxuICAgICAgICAgKi9cbiAgLnUtcHVzaC0xXFwvM1xcQG1vYmlsZUxhcmdlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICAgIGxlZnQ6IDMzLjMzMzMzJSAhaW1wb3J0YW50O1xuICB9XG4gIC51LXB1bGwtMVxcLzNcXEBtb2JpbGVMYXJnZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IDMzLjMzMzMzJSAhaW1wb3J0YW50O1xuICAgIGxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgfVxuICAudS0yXFwvM1xcQG1vYmlsZUxhcmdlIHtcbiAgICB3aWR0aDogNjYuNjY2NjclICFpbXBvcnRhbnQ7XG4gIH1cbiAgLyoqXG4gICAgICAgICAqIDEuIFJlc2V0IGFueSBsZWZ0b3ZlciBvciBjb25mbGljdGluZyBgbGVmdGAvYHJpZ2h0YCB2YWx1ZXMuXG4gICAgICAgICAqL1xuICAudS1wdXNoLTJcXC8zXFxAbW9iaWxlTGFyZ2Uge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gICAgbGVmdDogNjYuNjY2NjclICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnUtcHVsbC0yXFwvM1xcQG1vYmlsZUxhcmdlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogNjYuNjY2NjclICFpbXBvcnRhbnQ7XG4gICAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICB9XG4gIC51LTNcXC8zXFxAbW9iaWxlTGFyZ2Uge1xuICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLyoqXG4gICAgICAgICAqIDEuIFJlc2V0IGFueSBsZWZ0b3ZlciBvciBjb25mbGljdGluZyBgbGVmdGAvYHJpZ2h0YCB2YWx1ZXMuXG4gICAgICAgICAqL1xuICAudS1wdXNoLTNcXC8zXFxAbW9iaWxlTGFyZ2Uge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gICAgbGVmdDogMTAwJSAhaW1wb3J0YW50O1xuICB9XG4gIC51LXB1bGwtM1xcLzNcXEBtb2JpbGVMYXJnZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IDEwMCUgIWltcG9ydGFudDtcbiAgICBsZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gIH1cbiAgLnUtMVxcLzRcXEBtb2JpbGVMYXJnZSB7XG4gICAgd2lkdGg6IDI1JSAhaW1wb3J0YW50O1xuICB9XG4gIC8qKlxuICAgICAgICAgKiAxLiBSZXNldCBhbnkgbGVmdG92ZXIgb3IgY29uZmxpY3RpbmcgYGxlZnRgL2ByaWdodGAgdmFsdWVzLlxuICAgICAgICAgKi9cbiAgLnUtcHVzaC0xXFwvNFxcQG1vYmlsZUxhcmdlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICAgIGxlZnQ6IDI1JSAhaW1wb3J0YW50O1xuICB9XG4gIC51LXB1bGwtMVxcLzRcXEBtb2JpbGVMYXJnZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IDI1JSAhaW1wb3J0YW50O1xuICAgIGxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgfVxuICAudS0yXFwvNFxcQG1vYmlsZUxhcmdlIHtcbiAgICB3aWR0aDogNTAlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLyoqXG4gICAgICAgICAqIDEuIFJlc2V0IGFueSBsZWZ0b3ZlciBvciBjb25mbGljdGluZyBgbGVmdGAvYHJpZ2h0YCB2YWx1ZXMuXG4gICAgICAgICAqL1xuICAudS1wdXNoLTJcXC80XFxAbW9iaWxlTGFyZ2Uge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gICAgbGVmdDogNTAlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnUtcHVsbC0yXFwvNFxcQG1vYmlsZUxhcmdlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogNTAlICFpbXBvcnRhbnQ7XG4gICAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICB9XG4gIC51LTNcXC80XFxAbW9iaWxlTGFyZ2Uge1xuICAgIHdpZHRoOiA3NSUgIWltcG9ydGFudDtcbiAgfVxuICAvKipcbiAgICAgICAgICogMS4gUmVzZXQgYW55IGxlZnRvdmVyIG9yIGNvbmZsaWN0aW5nIGBsZWZ0YC9gcmlnaHRgIHZhbHVlcy5cbiAgICAgICAgICovXG4gIC51LXB1c2gtM1xcLzRcXEBtb2JpbGVMYXJnZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgICBsZWZ0OiA3NSUgIWltcG9ydGFudDtcbiAgfVxuICAudS1wdWxsLTNcXC80XFxAbW9iaWxlTGFyZ2Uge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiA3NSUgIWltcG9ydGFudDtcbiAgICBsZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gIH1cbiAgLnUtNFxcLzRcXEBtb2JpbGVMYXJnZSB7XG4gICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgfVxuICAvKipcbiAgICAgICAgICogMS4gUmVzZXQgYW55IGxlZnRvdmVyIG9yIGNvbmZsaWN0aW5nIGBsZWZ0YC9gcmlnaHRgIHZhbHVlcy5cbiAgICAgICAgICovXG4gIC51LXB1c2gtNFxcLzRcXEBtb2JpbGVMYXJnZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgICBsZWZ0OiAxMDAlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnUtcHVsbC00XFwvNFxcQG1vYmlsZUxhcmdlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogMTAwJSAhaW1wb3J0YW50O1xuICAgIGxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgfVxuICAudS0xXFwvNVxcQG1vYmlsZUxhcmdlIHtcbiAgICB3aWR0aDogMjAlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLyoqXG4gICAgICAgICAqIDEuIFJlc2V0IGFueSBsZWZ0b3ZlciBvciBjb25mbGljdGluZyBgbGVmdGAvYHJpZ2h0YCB2YWx1ZXMuXG4gICAgICAgICAqL1xuICAudS1wdXNoLTFcXC81XFxAbW9iaWxlTGFyZ2Uge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gICAgbGVmdDogMjAlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnUtcHVsbC0xXFwvNVxcQG1vYmlsZUxhcmdlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogMjAlICFpbXBvcnRhbnQ7XG4gICAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICB9XG4gIC51LTJcXC81XFxAbW9iaWxlTGFyZ2Uge1xuICAgIHdpZHRoOiA0MCUgIWltcG9ydGFudDtcbiAgfVxuICAvKipcbiAgICAgICAgICogMS4gUmVzZXQgYW55IGxlZnRvdmVyIG9yIGNvbmZsaWN0aW5nIGBsZWZ0YC9gcmlnaHRgIHZhbHVlcy5cbiAgICAgICAgICovXG4gIC51LXB1c2gtMlxcLzVcXEBtb2JpbGVMYXJnZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgICBsZWZ0OiA0MCUgIWltcG9ydGFudDtcbiAgfVxuICAudS1wdWxsLTJcXC81XFxAbW9iaWxlTGFyZ2Uge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiA0MCUgIWltcG9ydGFudDtcbiAgICBsZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gIH1cbiAgLnUtM1xcLzVcXEBtb2JpbGVMYXJnZSB7XG4gICAgd2lkdGg6IDYwJSAhaW1wb3J0YW50O1xuICB9XG4gIC8qKlxuICAgICAgICAgKiAxLiBSZXNldCBhbnkgbGVmdG92ZXIgb3IgY29uZmxpY3RpbmcgYGxlZnRgL2ByaWdodGAgdmFsdWVzLlxuICAgICAgICAgKi9cbiAgLnUtcHVzaC0zXFwvNVxcQG1vYmlsZUxhcmdlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICAgIGxlZnQ6IDYwJSAhaW1wb3J0YW50O1xuICB9XG4gIC51LXB1bGwtM1xcLzVcXEBtb2JpbGVMYXJnZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IDYwJSAhaW1wb3J0YW50O1xuICAgIGxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgfVxuICAudS00XFwvNVxcQG1vYmlsZUxhcmdlIHtcbiAgICB3aWR0aDogODAlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLyoqXG4gICAgICAgICAqIDEuIFJlc2V0IGFueSBsZWZ0b3ZlciBvciBjb25mbGljdGluZyBgbGVmdGAvYHJpZ2h0YCB2YWx1ZXMuXG4gICAgICAgICAqL1xuICAudS1wdXNoLTRcXC81XFxAbW9iaWxlTGFyZ2Uge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gICAgbGVmdDogODAlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnUtcHVsbC00XFwvNVxcQG1vYmlsZUxhcmdlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogODAlICFpbXBvcnRhbnQ7XG4gICAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICB9XG4gIC51LTVcXC81XFxAbW9iaWxlTGFyZ2Uge1xuICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLyoqXG4gICAgICAgICAqIDEuIFJlc2V0IGFueSBsZWZ0b3ZlciBvciBjb25mbGljdGluZyBgbGVmdGAvYHJpZ2h0YCB2YWx1ZXMuXG4gICAgICAgICAqL1xuICAudS1wdXNoLTVcXC81XFxAbW9iaWxlTGFyZ2Uge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gICAgbGVmdDogMTAwJSAhaW1wb3J0YW50O1xuICB9XG4gIC51LXB1bGwtNVxcLzVcXEBtb2JpbGVMYXJnZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IDEwMCUgIWltcG9ydGFudDtcbiAgICBsZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gIH1cbiAgLnUtMVxcLzZcXEBtb2JpbGVMYXJnZSB7XG4gICAgd2lkdGg6IDE2LjY2NjY3JSAhaW1wb3J0YW50O1xuICB9XG4gIC8qKlxuICAgICAgICAgKiAxLiBSZXNldCBhbnkgbGVmdG92ZXIgb3IgY29uZmxpY3RpbmcgYGxlZnRgL2ByaWdodGAgdmFsdWVzLlxuICAgICAgICAgKi9cbiAgLnUtcHVzaC0xXFwvNlxcQG1vYmlsZUxhcmdlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICAgIGxlZnQ6IDE2LjY2NjY3JSAhaW1wb3J0YW50O1xuICB9XG4gIC51LXB1bGwtMVxcLzZcXEBtb2JpbGVMYXJnZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IDE2LjY2NjY3JSAhaW1wb3J0YW50O1xuICAgIGxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgfVxuICAudS0yXFwvNlxcQG1vYmlsZUxhcmdlIHtcbiAgICB3aWR0aDogMzMuMzMzMzMlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLyoqXG4gICAgICAgICAqIDEuIFJlc2V0IGFueSBsZWZ0b3ZlciBvciBjb25mbGljdGluZyBgbGVmdGAvYHJpZ2h0YCB2YWx1ZXMuXG4gICAgICAgICAqL1xuICAudS1wdXNoLTJcXC82XFxAbW9iaWxlTGFyZ2Uge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gICAgbGVmdDogMzMuMzMzMzMlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnUtcHVsbC0yXFwvNlxcQG1vYmlsZUxhcmdlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogMzMuMzMzMzMlICFpbXBvcnRhbnQ7XG4gICAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICB9XG4gIC51LTNcXC82XFxAbW9iaWxlTGFyZ2Uge1xuICAgIHdpZHRoOiA1MCUgIWltcG9ydGFudDtcbiAgfVxuICAvKipcbiAgICAgICAgICogMS4gUmVzZXQgYW55IGxlZnRvdmVyIG9yIGNvbmZsaWN0aW5nIGBsZWZ0YC9gcmlnaHRgIHZhbHVlcy5cbiAgICAgICAgICovXG4gIC51LXB1c2gtM1xcLzZcXEBtb2JpbGVMYXJnZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgICBsZWZ0OiA1MCUgIWltcG9ydGFudDtcbiAgfVxuICAudS1wdWxsLTNcXC82XFxAbW9iaWxlTGFyZ2Uge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiA1MCUgIWltcG9ydGFudDtcbiAgICBsZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gIH1cbiAgLnUtNFxcLzZcXEBtb2JpbGVMYXJnZSB7XG4gICAgd2lkdGg6IDY2LjY2NjY3JSAhaW1wb3J0YW50O1xuICB9XG4gIC8qKlxuICAgICAgICAgKiAxLiBSZXNldCBhbnkgbGVmdG92ZXIgb3IgY29uZmxpY3RpbmcgYGxlZnRgL2ByaWdodGAgdmFsdWVzLlxuICAgICAgICAgKi9cbiAgLnUtcHVzaC00XFwvNlxcQG1vYmlsZUxhcmdlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICAgIGxlZnQ6IDY2LjY2NjY3JSAhaW1wb3J0YW50O1xuICB9XG4gIC51LXB1bGwtNFxcLzZcXEBtb2JpbGVMYXJnZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IDY2LjY2NjY3JSAhaW1wb3J0YW50O1xuICAgIGxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgfVxuICAudS01XFwvNlxcQG1vYmlsZUxhcmdlIHtcbiAgICB3aWR0aDogODMuMzMzMzMlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLyoqXG4gICAgICAgICAqIDEuIFJlc2V0IGFueSBsZWZ0b3ZlciBvciBjb25mbGljdGluZyBgbGVmdGAvYHJpZ2h0YCB2YWx1ZXMuXG4gICAgICAgICAqL1xuICAudS1wdXNoLTVcXC82XFxAbW9iaWxlTGFyZ2Uge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gICAgbGVmdDogODMuMzMzMzMlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnUtcHVsbC01XFwvNlxcQG1vYmlsZUxhcmdlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogODMuMzMzMzMlICFpbXBvcnRhbnQ7XG4gICAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICB9XG4gIC51LTZcXC82XFxAbW9iaWxlTGFyZ2Uge1xuICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLyoqXG4gICAgICAgICAqIDEuIFJlc2V0IGFueSBsZWZ0b3ZlciBvciBjb25mbGljdGluZyBgbGVmdGAvYHJpZ2h0YCB2YWx1ZXMuXG4gICAgICAgICAqL1xuICAudS1wdXNoLTZcXC82XFxAbW9iaWxlTGFyZ2Uge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gICAgbGVmdDogMTAwJSAhaW1wb3J0YW50O1xuICB9XG4gIC51LXB1bGwtNlxcLzZcXEBtb2JpbGVMYXJnZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IDEwMCUgIWltcG9ydGFudDtcbiAgICBsZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gIH1cbiAgLnUtMVxcLzdcXEBtb2JpbGVMYXJnZSB7XG4gICAgd2lkdGg6IDE0LjI4NTcxJSAhaW1wb3J0YW50O1xuICB9XG4gIC8qKlxuICAgICAgICAgKiAxLiBSZXNldCBhbnkgbGVmdG92ZXIgb3IgY29uZmxpY3RpbmcgYGxlZnRgL2ByaWdodGAgdmFsdWVzLlxuICAgICAgICAgKi9cbiAgLnUtcHVzaC0xXFwvN1xcQG1vYmlsZUxhcmdlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICAgIGxlZnQ6IDE0LjI4NTcxJSAhaW1wb3J0YW50O1xuICB9XG4gIC51LXB1bGwtMVxcLzdcXEBtb2JpbGVMYXJnZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IDE0LjI4NTcxJSAhaW1wb3J0YW50O1xuICAgIGxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgfVxuICAudS0yXFwvN1xcQG1vYmlsZUxhcmdlIHtcbiAgICB3aWR0aDogMjguNTcxNDMlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLyoqXG4gICAgICAgICAqIDEuIFJlc2V0IGFueSBsZWZ0b3ZlciBvciBjb25mbGljdGluZyBgbGVmdGAvYHJpZ2h0YCB2YWx1ZXMuXG4gICAgICAgICAqL1xuICAudS1wdXNoLTJcXC83XFxAbW9iaWxlTGFyZ2Uge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gICAgbGVmdDogMjguNTcxNDMlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnUtcHVsbC0yXFwvN1xcQG1vYmlsZUxhcmdlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogMjguNTcxNDMlICFpbXBvcnRhbnQ7XG4gICAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICB9XG4gIC51LTNcXC83XFxAbW9iaWxlTGFyZ2Uge1xuICAgIHdpZHRoOiA0Mi44NTcxNCUgIWltcG9ydGFudDtcbiAgfVxuICAvKipcbiAgICAgICAgICogMS4gUmVzZXQgYW55IGxlZnRvdmVyIG9yIGNvbmZsaWN0aW5nIGBsZWZ0YC9gcmlnaHRgIHZhbHVlcy5cbiAgICAgICAgICovXG4gIC51LXB1c2gtM1xcLzdcXEBtb2JpbGVMYXJnZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgICBsZWZ0OiA0Mi44NTcxNCUgIWltcG9ydGFudDtcbiAgfVxuICAudS1wdWxsLTNcXC83XFxAbW9iaWxlTGFyZ2Uge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiA0Mi44NTcxNCUgIWltcG9ydGFudDtcbiAgICBsZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gIH1cbiAgLnUtNFxcLzdcXEBtb2JpbGVMYXJnZSB7XG4gICAgd2lkdGg6IDU3LjE0Mjg2JSAhaW1wb3J0YW50O1xuICB9XG4gIC8qKlxuICAgICAgICAgKiAxLiBSZXNldCBhbnkgbGVmdG92ZXIgb3IgY29uZmxpY3RpbmcgYGxlZnRgL2ByaWdodGAgdmFsdWVzLlxuICAgICAgICAgKi9cbiAgLnUtcHVzaC00XFwvN1xcQG1vYmlsZUxhcmdlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICAgIGxlZnQ6IDU3LjE0Mjg2JSAhaW1wb3J0YW50O1xuICB9XG4gIC51LXB1bGwtNFxcLzdcXEBtb2JpbGVMYXJnZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IDU3LjE0Mjg2JSAhaW1wb3J0YW50O1xuICAgIGxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgfVxuICAudS01XFwvN1xcQG1vYmlsZUxhcmdlIHtcbiAgICB3aWR0aDogNzEuNDI4NTclICFpbXBvcnRhbnQ7XG4gIH1cbiAgLyoqXG4gICAgICAgICAqIDEuIFJlc2V0IGFueSBsZWZ0b3ZlciBvciBjb25mbGljdGluZyBgbGVmdGAvYHJpZ2h0YCB2YWx1ZXMuXG4gICAgICAgICAqL1xuICAudS1wdXNoLTVcXC83XFxAbW9iaWxlTGFyZ2Uge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gICAgbGVmdDogNzEuNDI4NTclICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnUtcHVsbC01XFwvN1xcQG1vYmlsZUxhcmdlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogNzEuNDI4NTclICFpbXBvcnRhbnQ7XG4gICAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICB9XG4gIC51LTZcXC83XFxAbW9iaWxlTGFyZ2Uge1xuICAgIHdpZHRoOiA4NS43MTQyOSUgIWltcG9ydGFudDtcbiAgfVxuICAvKipcbiAgICAgICAgICogMS4gUmVzZXQgYW55IGxlZnRvdmVyIG9yIGNvbmZsaWN0aW5nIGBsZWZ0YC9gcmlnaHRgIHZhbHVlcy5cbiAgICAgICAgICovXG4gIC51LXB1c2gtNlxcLzdcXEBtb2JpbGVMYXJnZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgICBsZWZ0OiA4NS43MTQyOSUgIWltcG9ydGFudDtcbiAgfVxuICAudS1wdWxsLTZcXC83XFxAbW9iaWxlTGFyZ2Uge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiA4NS43MTQyOSUgIWltcG9ydGFudDtcbiAgICBsZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gIH1cbiAgLnUtN1xcLzdcXEBtb2JpbGVMYXJnZSB7XG4gICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgfVxuICAvKipcbiAgICAgICAgICogMS4gUmVzZXQgYW55IGxlZnRvdmVyIG9yIGNvbmZsaWN0aW5nIGBsZWZ0YC9gcmlnaHRgIHZhbHVlcy5cbiAgICAgICAgICovXG4gIC51LXB1c2gtN1xcLzdcXEBtb2JpbGVMYXJnZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgICBsZWZ0OiAxMDAlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnUtcHVsbC03XFwvN1xcQG1vYmlsZUxhcmdlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogMTAwJSAhaW1wb3J0YW50O1xuICAgIGxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgfVxuICAudS0xXFwvOFxcQG1vYmlsZUxhcmdlIHtcbiAgICB3aWR0aDogMTIuNSUgIWltcG9ydGFudDtcbiAgfVxuICAvKipcbiAgICAgICAgICogMS4gUmVzZXQgYW55IGxlZnRvdmVyIG9yIGNvbmZsaWN0aW5nIGBsZWZ0YC9gcmlnaHRgIHZhbHVlcy5cbiAgICAgICAgICovXG4gIC51LXB1c2gtMVxcLzhcXEBtb2JpbGVMYXJnZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgICBsZWZ0OiAxMi41JSAhaW1wb3J0YW50O1xuICB9XG4gIC51LXB1bGwtMVxcLzhcXEBtb2JpbGVMYXJnZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IDEyLjUlICFpbXBvcnRhbnQ7XG4gICAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICB9XG4gIC51LTJcXC84XFxAbW9iaWxlTGFyZ2Uge1xuICAgIHdpZHRoOiAyNSUgIWltcG9ydGFudDtcbiAgfVxuICAvKipcbiAgICAgICAgICogMS4gUmVzZXQgYW55IGxlZnRvdmVyIG9yIGNvbmZsaWN0aW5nIGBsZWZ0YC9gcmlnaHRgIHZhbHVlcy5cbiAgICAgICAgICovXG4gIC51LXB1c2gtMlxcLzhcXEBtb2JpbGVMYXJnZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgICBsZWZ0OiAyNSUgIWltcG9ydGFudDtcbiAgfVxuICAudS1wdWxsLTJcXC84XFxAbW9iaWxlTGFyZ2Uge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiAyNSUgIWltcG9ydGFudDtcbiAgICBsZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gIH1cbiAgLnUtM1xcLzhcXEBtb2JpbGVMYXJnZSB7XG4gICAgd2lkdGg6IDM3LjUlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLyoqXG4gICAgICAgICAqIDEuIFJlc2V0IGFueSBsZWZ0b3ZlciBvciBjb25mbGljdGluZyBgbGVmdGAvYHJpZ2h0YCB2YWx1ZXMuXG4gICAgICAgICAqL1xuICAudS1wdXNoLTNcXC84XFxAbW9iaWxlTGFyZ2Uge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gICAgbGVmdDogMzcuNSUgIWltcG9ydGFudDtcbiAgfVxuICAudS1wdWxsLTNcXC84XFxAbW9iaWxlTGFyZ2Uge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiAzNy41JSAhaW1wb3J0YW50O1xuICAgIGxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgfVxuICAudS00XFwvOFxcQG1vYmlsZUxhcmdlIHtcbiAgICB3aWR0aDogNTAlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLyoqXG4gICAgICAgICAqIDEuIFJlc2V0IGFueSBsZWZ0b3ZlciBvciBjb25mbGljdGluZyBgbGVmdGAvYHJpZ2h0YCB2YWx1ZXMuXG4gICAgICAgICAqL1xuICAudS1wdXNoLTRcXC84XFxAbW9iaWxlTGFyZ2Uge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gICAgbGVmdDogNTAlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnUtcHVsbC00XFwvOFxcQG1vYmlsZUxhcmdlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogNTAlICFpbXBvcnRhbnQ7XG4gICAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICB9XG4gIC51LTVcXC84XFxAbW9iaWxlTGFyZ2Uge1xuICAgIHdpZHRoOiA2Mi41JSAhaW1wb3J0YW50O1xuICB9XG4gIC8qKlxuICAgICAgICAgKiAxLiBSZXNldCBhbnkgbGVmdG92ZXIgb3IgY29uZmxpY3RpbmcgYGxlZnRgL2ByaWdodGAgdmFsdWVzLlxuICAgICAgICAgKi9cbiAgLnUtcHVzaC01XFwvOFxcQG1vYmlsZUxhcmdlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICAgIGxlZnQ6IDYyLjUlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnUtcHVsbC01XFwvOFxcQG1vYmlsZUxhcmdlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogNjIuNSUgIWltcG9ydGFudDtcbiAgICBsZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gIH1cbiAgLnUtNlxcLzhcXEBtb2JpbGVMYXJnZSB7XG4gICAgd2lkdGg6IDc1JSAhaW1wb3J0YW50O1xuICB9XG4gIC8qKlxuICAgICAgICAgKiAxLiBSZXNldCBhbnkgbGVmdG92ZXIgb3IgY29uZmxpY3RpbmcgYGxlZnRgL2ByaWdodGAgdmFsdWVzLlxuICAgICAgICAgKi9cbiAgLnUtcHVzaC02XFwvOFxcQG1vYmlsZUxhcmdlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICAgIGxlZnQ6IDc1JSAhaW1wb3J0YW50O1xuICB9XG4gIC51LXB1bGwtNlxcLzhcXEBtb2JpbGVMYXJnZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IDc1JSAhaW1wb3J0YW50O1xuICAgIGxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgfVxuICAudS03XFwvOFxcQG1vYmlsZUxhcmdlIHtcbiAgICB3aWR0aDogODcuNSUgIWltcG9ydGFudDtcbiAgfVxuICAvKipcbiAgICAgICAgICogMS4gUmVzZXQgYW55IGxlZnRvdmVyIG9yIGNvbmZsaWN0aW5nIGBsZWZ0YC9gcmlnaHRgIHZhbHVlcy5cbiAgICAgICAgICovXG4gIC51LXB1c2gtN1xcLzhcXEBtb2JpbGVMYXJnZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgICBsZWZ0OiA4Ny41JSAhaW1wb3J0YW50O1xuICB9XG4gIC51LXB1bGwtN1xcLzhcXEBtb2JpbGVMYXJnZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IDg3LjUlICFpbXBvcnRhbnQ7XG4gICAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICB9XG4gIC51LThcXC84XFxAbW9iaWxlTGFyZ2Uge1xuICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLyoqXG4gICAgICAgICAqIDEuIFJlc2V0IGFueSBsZWZ0b3ZlciBvciBjb25mbGljdGluZyBgbGVmdGAvYHJpZ2h0YCB2YWx1ZXMuXG4gICAgICAgICAqL1xuICAudS1wdXNoLThcXC84XFxAbW9iaWxlTGFyZ2Uge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gICAgbGVmdDogMTAwJSAhaW1wb3J0YW50O1xuICB9XG4gIC51LXB1bGwtOFxcLzhcXEBtb2JpbGVMYXJnZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IDEwMCUgIWltcG9ydGFudDtcbiAgICBsZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gIH1cbiAgLnUtcHVzaC1ub25lXFxAbW9iaWxlTGFyZ2Uge1xuICAgIGxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgfVxuICAudS1wdWxsLW5vbmVcXEBtb2JpbGVMYXJnZSB7XG4gICAgcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMzcuNWVtKSB7XG4gIC51LTFcXC8xXFxAbW9iaWxlTGFuZHNjYXBlIHtcbiAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICB9XG4gIC8qKlxuICAgICAgICAgKiAxLiBSZXNldCBhbnkgbGVmdG92ZXIgb3IgY29uZmxpY3RpbmcgYGxlZnRgL2ByaWdodGAgdmFsdWVzLlxuICAgICAgICAgKi9cbiAgLnUtcHVzaC0xXFwvMVxcQG1vYmlsZUxhbmRzY2FwZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgICBsZWZ0OiAxMDAlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnUtcHVsbC0xXFwvMVxcQG1vYmlsZUxhbmRzY2FwZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IDEwMCUgIWltcG9ydGFudDtcbiAgICBsZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gIH1cbiAgLnUtMVxcLzJcXEBtb2JpbGVMYW5kc2NhcGUge1xuICAgIHdpZHRoOiA1MCUgIWltcG9ydGFudDtcbiAgfVxuICAvKipcbiAgICAgICAgICogMS4gUmVzZXQgYW55IGxlZnRvdmVyIG9yIGNvbmZsaWN0aW5nIGBsZWZ0YC9gcmlnaHRgIHZhbHVlcy5cbiAgICAgICAgICovXG4gIC51LXB1c2gtMVxcLzJcXEBtb2JpbGVMYW5kc2NhcGUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gICAgbGVmdDogNTAlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnUtcHVsbC0xXFwvMlxcQG1vYmlsZUxhbmRzY2FwZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IDUwJSAhaW1wb3J0YW50O1xuICAgIGxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgfVxuICAudS0yXFwvMlxcQG1vYmlsZUxhbmRzY2FwZSB7XG4gICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgfVxuICAvKipcbiAgICAgICAgICogMS4gUmVzZXQgYW55IGxlZnRvdmVyIG9yIGNvbmZsaWN0aW5nIGBsZWZ0YC9gcmlnaHRgIHZhbHVlcy5cbiAgICAgICAgICovXG4gIC51LXB1c2gtMlxcLzJcXEBtb2JpbGVMYW5kc2NhcGUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gICAgbGVmdDogMTAwJSAhaW1wb3J0YW50O1xuICB9XG4gIC51LXB1bGwtMlxcLzJcXEBtb2JpbGVMYW5kc2NhcGUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICB9XG4gIC51LTFcXC8zXFxAbW9iaWxlTGFuZHNjYXBlIHtcbiAgICB3aWR0aDogMzMuMzMzMzMlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLyoqXG4gICAgICAgICAqIDEuIFJlc2V0IGFueSBsZWZ0b3ZlciBvciBjb25mbGljdGluZyBgbGVmdGAvYHJpZ2h0YCB2YWx1ZXMuXG4gICAgICAgICAqL1xuICAudS1wdXNoLTFcXC8zXFxAbW9iaWxlTGFuZHNjYXBlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICAgIGxlZnQ6IDMzLjMzMzMzJSAhaW1wb3J0YW50O1xuICB9XG4gIC51LXB1bGwtMVxcLzNcXEBtb2JpbGVMYW5kc2NhcGUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiAzMy4zMzMzMyUgIWltcG9ydGFudDtcbiAgICBsZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gIH1cbiAgLnUtMlxcLzNcXEBtb2JpbGVMYW5kc2NhcGUge1xuICAgIHdpZHRoOiA2Ni42NjY2NyUgIWltcG9ydGFudDtcbiAgfVxuICAvKipcbiAgICAgICAgICogMS4gUmVzZXQgYW55IGxlZnRvdmVyIG9yIGNvbmZsaWN0aW5nIGBsZWZ0YC9gcmlnaHRgIHZhbHVlcy5cbiAgICAgICAgICovXG4gIC51LXB1c2gtMlxcLzNcXEBtb2JpbGVMYW5kc2NhcGUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gICAgbGVmdDogNjYuNjY2NjclICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnUtcHVsbC0yXFwvM1xcQG1vYmlsZUxhbmRzY2FwZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IDY2LjY2NjY3JSAhaW1wb3J0YW50O1xuICAgIGxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgfVxuICAudS0zXFwvM1xcQG1vYmlsZUxhbmRzY2FwZSB7XG4gICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgfVxuICAvKipcbiAgICAgICAgICogMS4gUmVzZXQgYW55IGxlZnRvdmVyIG9yIGNvbmZsaWN0aW5nIGBsZWZ0YC9gcmlnaHRgIHZhbHVlcy5cbiAgICAgICAgICovXG4gIC51LXB1c2gtM1xcLzNcXEBtb2JpbGVMYW5kc2NhcGUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gICAgbGVmdDogMTAwJSAhaW1wb3J0YW50O1xuICB9XG4gIC51LXB1bGwtM1xcLzNcXEBtb2JpbGVMYW5kc2NhcGUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICB9XG4gIC51LTFcXC80XFxAbW9iaWxlTGFuZHNjYXBlIHtcbiAgICB3aWR0aDogMjUlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLyoqXG4gICAgICAgICAqIDEuIFJlc2V0IGFueSBsZWZ0b3ZlciBvciBjb25mbGljdGluZyBgbGVmdGAvYHJpZ2h0YCB2YWx1ZXMuXG4gICAgICAgICAqL1xuICAudS1wdXNoLTFcXC80XFxAbW9iaWxlTGFuZHNjYXBlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICAgIGxlZnQ6IDI1JSAhaW1wb3J0YW50O1xuICB9XG4gIC51LXB1bGwtMVxcLzRcXEBtb2JpbGVMYW5kc2NhcGUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiAyNSUgIWltcG9ydGFudDtcbiAgICBsZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gIH1cbiAgLnUtMlxcLzRcXEBtb2JpbGVMYW5kc2NhcGUge1xuICAgIHdpZHRoOiA1MCUgIWltcG9ydGFudDtcbiAgfVxuICAvKipcbiAgICAgICAgICogMS4gUmVzZXQgYW55IGxlZnRvdmVyIG9yIGNvbmZsaWN0aW5nIGBsZWZ0YC9gcmlnaHRgIHZhbHVlcy5cbiAgICAgICAgICovXG4gIC51LXB1c2gtMlxcLzRcXEBtb2JpbGVMYW5kc2NhcGUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gICAgbGVmdDogNTAlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnUtcHVsbC0yXFwvNFxcQG1vYmlsZUxhbmRzY2FwZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IDUwJSAhaW1wb3J0YW50O1xuICAgIGxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgfVxuICAudS0zXFwvNFxcQG1vYmlsZUxhbmRzY2FwZSB7XG4gICAgd2lkdGg6IDc1JSAhaW1wb3J0YW50O1xuICB9XG4gIC8qKlxuICAgICAgICAgKiAxLiBSZXNldCBhbnkgbGVmdG92ZXIgb3IgY29uZmxpY3RpbmcgYGxlZnRgL2ByaWdodGAgdmFsdWVzLlxuICAgICAgICAgKi9cbiAgLnUtcHVzaC0zXFwvNFxcQG1vYmlsZUxhbmRzY2FwZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgICBsZWZ0OiA3NSUgIWltcG9ydGFudDtcbiAgfVxuICAudS1wdWxsLTNcXC80XFxAbW9iaWxlTGFuZHNjYXBlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogNzUlICFpbXBvcnRhbnQ7XG4gICAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICB9XG4gIC51LTRcXC80XFxAbW9iaWxlTGFuZHNjYXBlIHtcbiAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICB9XG4gIC8qKlxuICAgICAgICAgKiAxLiBSZXNldCBhbnkgbGVmdG92ZXIgb3IgY29uZmxpY3RpbmcgYGxlZnRgL2ByaWdodGAgdmFsdWVzLlxuICAgICAgICAgKi9cbiAgLnUtcHVzaC00XFwvNFxcQG1vYmlsZUxhbmRzY2FwZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgICBsZWZ0OiAxMDAlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnUtcHVsbC00XFwvNFxcQG1vYmlsZUxhbmRzY2FwZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IDEwMCUgIWltcG9ydGFudDtcbiAgICBsZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gIH1cbiAgLnUtMVxcLzVcXEBtb2JpbGVMYW5kc2NhcGUge1xuICAgIHdpZHRoOiAyMCUgIWltcG9ydGFudDtcbiAgfVxuICAvKipcbiAgICAgICAgICogMS4gUmVzZXQgYW55IGxlZnRvdmVyIG9yIGNvbmZsaWN0aW5nIGBsZWZ0YC9gcmlnaHRgIHZhbHVlcy5cbiAgICAgICAgICovXG4gIC51LXB1c2gtMVxcLzVcXEBtb2JpbGVMYW5kc2NhcGUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gICAgbGVmdDogMjAlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnUtcHVsbC0xXFwvNVxcQG1vYmlsZUxhbmRzY2FwZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IDIwJSAhaW1wb3J0YW50O1xuICAgIGxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgfVxuICAudS0yXFwvNVxcQG1vYmlsZUxhbmRzY2FwZSB7XG4gICAgd2lkdGg6IDQwJSAhaW1wb3J0YW50O1xuICB9XG4gIC8qKlxuICAgICAgICAgKiAxLiBSZXNldCBhbnkgbGVmdG92ZXIgb3IgY29uZmxpY3RpbmcgYGxlZnRgL2ByaWdodGAgdmFsdWVzLlxuICAgICAgICAgKi9cbiAgLnUtcHVzaC0yXFwvNVxcQG1vYmlsZUxhbmRzY2FwZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgICBsZWZ0OiA0MCUgIWltcG9ydGFudDtcbiAgfVxuICAudS1wdWxsLTJcXC81XFxAbW9iaWxlTGFuZHNjYXBlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogNDAlICFpbXBvcnRhbnQ7XG4gICAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICB9XG4gIC51LTNcXC81XFxAbW9iaWxlTGFuZHNjYXBlIHtcbiAgICB3aWR0aDogNjAlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLyoqXG4gICAgICAgICAqIDEuIFJlc2V0IGFueSBsZWZ0b3ZlciBvciBjb25mbGljdGluZyBgbGVmdGAvYHJpZ2h0YCB2YWx1ZXMuXG4gICAgICAgICAqL1xuICAudS1wdXNoLTNcXC81XFxAbW9iaWxlTGFuZHNjYXBlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICAgIGxlZnQ6IDYwJSAhaW1wb3J0YW50O1xuICB9XG4gIC51LXB1bGwtM1xcLzVcXEBtb2JpbGVMYW5kc2NhcGUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiA2MCUgIWltcG9ydGFudDtcbiAgICBsZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gIH1cbiAgLnUtNFxcLzVcXEBtb2JpbGVMYW5kc2NhcGUge1xuICAgIHdpZHRoOiA4MCUgIWltcG9ydGFudDtcbiAgfVxuICAvKipcbiAgICAgICAgICogMS4gUmVzZXQgYW55IGxlZnRvdmVyIG9yIGNvbmZsaWN0aW5nIGBsZWZ0YC9gcmlnaHRgIHZhbHVlcy5cbiAgICAgICAgICovXG4gIC51LXB1c2gtNFxcLzVcXEBtb2JpbGVMYW5kc2NhcGUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gICAgbGVmdDogODAlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnUtcHVsbC00XFwvNVxcQG1vYmlsZUxhbmRzY2FwZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IDgwJSAhaW1wb3J0YW50O1xuICAgIGxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgfVxuICAudS01XFwvNVxcQG1vYmlsZUxhbmRzY2FwZSB7XG4gICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgfVxuICAvKipcbiAgICAgICAgICogMS4gUmVzZXQgYW55IGxlZnRvdmVyIG9yIGNvbmZsaWN0aW5nIGBsZWZ0YC9gcmlnaHRgIHZhbHVlcy5cbiAgICAgICAgICovXG4gIC51LXB1c2gtNVxcLzVcXEBtb2JpbGVMYW5kc2NhcGUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gICAgbGVmdDogMTAwJSAhaW1wb3J0YW50O1xuICB9XG4gIC51LXB1bGwtNVxcLzVcXEBtb2JpbGVMYW5kc2NhcGUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICB9XG4gIC51LTFcXC82XFxAbW9iaWxlTGFuZHNjYXBlIHtcbiAgICB3aWR0aDogMTYuNjY2NjclICFpbXBvcnRhbnQ7XG4gIH1cbiAgLyoqXG4gICAgICAgICAqIDEuIFJlc2V0IGFueSBsZWZ0b3ZlciBvciBjb25mbGljdGluZyBgbGVmdGAvYHJpZ2h0YCB2YWx1ZXMuXG4gICAgICAgICAqL1xuICAudS1wdXNoLTFcXC82XFxAbW9iaWxlTGFuZHNjYXBlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICAgIGxlZnQ6IDE2LjY2NjY3JSAhaW1wb3J0YW50O1xuICB9XG4gIC51LXB1bGwtMVxcLzZcXEBtb2JpbGVMYW5kc2NhcGUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiAxNi42NjY2NyUgIWltcG9ydGFudDtcbiAgICBsZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gIH1cbiAgLnUtMlxcLzZcXEBtb2JpbGVMYW5kc2NhcGUge1xuICAgIHdpZHRoOiAzMy4zMzMzMyUgIWltcG9ydGFudDtcbiAgfVxuICAvKipcbiAgICAgICAgICogMS4gUmVzZXQgYW55IGxlZnRvdmVyIG9yIGNvbmZsaWN0aW5nIGBsZWZ0YC9gcmlnaHRgIHZhbHVlcy5cbiAgICAgICAgICovXG4gIC51LXB1c2gtMlxcLzZcXEBtb2JpbGVMYW5kc2NhcGUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gICAgbGVmdDogMzMuMzMzMzMlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnUtcHVsbC0yXFwvNlxcQG1vYmlsZUxhbmRzY2FwZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IDMzLjMzMzMzJSAhaW1wb3J0YW50O1xuICAgIGxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgfVxuICAudS0zXFwvNlxcQG1vYmlsZUxhbmRzY2FwZSB7XG4gICAgd2lkdGg6IDUwJSAhaW1wb3J0YW50O1xuICB9XG4gIC8qKlxuICAgICAgICAgKiAxLiBSZXNldCBhbnkgbGVmdG92ZXIgb3IgY29uZmxpY3RpbmcgYGxlZnRgL2ByaWdodGAgdmFsdWVzLlxuICAgICAgICAgKi9cbiAgLnUtcHVzaC0zXFwvNlxcQG1vYmlsZUxhbmRzY2FwZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgICBsZWZ0OiA1MCUgIWltcG9ydGFudDtcbiAgfVxuICAudS1wdWxsLTNcXC82XFxAbW9iaWxlTGFuZHNjYXBlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogNTAlICFpbXBvcnRhbnQ7XG4gICAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICB9XG4gIC51LTRcXC82XFxAbW9iaWxlTGFuZHNjYXBlIHtcbiAgICB3aWR0aDogNjYuNjY2NjclICFpbXBvcnRhbnQ7XG4gIH1cbiAgLyoqXG4gICAgICAgICAqIDEuIFJlc2V0IGFueSBsZWZ0b3ZlciBvciBjb25mbGljdGluZyBgbGVmdGAvYHJpZ2h0YCB2YWx1ZXMuXG4gICAgICAgICAqL1xuICAudS1wdXNoLTRcXC82XFxAbW9iaWxlTGFuZHNjYXBlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICAgIGxlZnQ6IDY2LjY2NjY3JSAhaW1wb3J0YW50O1xuICB9XG4gIC51LXB1bGwtNFxcLzZcXEBtb2JpbGVMYW5kc2NhcGUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiA2Ni42NjY2NyUgIWltcG9ydGFudDtcbiAgICBsZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gIH1cbiAgLnUtNVxcLzZcXEBtb2JpbGVMYW5kc2NhcGUge1xuICAgIHdpZHRoOiA4My4zMzMzMyUgIWltcG9ydGFudDtcbiAgfVxuICAvKipcbiAgICAgICAgICogMS4gUmVzZXQgYW55IGxlZnRvdmVyIG9yIGNvbmZsaWN0aW5nIGBsZWZ0YC9gcmlnaHRgIHZhbHVlcy5cbiAgICAgICAgICovXG4gIC51LXB1c2gtNVxcLzZcXEBtb2JpbGVMYW5kc2NhcGUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gICAgbGVmdDogODMuMzMzMzMlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnUtcHVsbC01XFwvNlxcQG1vYmlsZUxhbmRzY2FwZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IDgzLjMzMzMzJSAhaW1wb3J0YW50O1xuICAgIGxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgfVxuICAudS02XFwvNlxcQG1vYmlsZUxhbmRzY2FwZSB7XG4gICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgfVxuICAvKipcbiAgICAgICAgICogMS4gUmVzZXQgYW55IGxlZnRvdmVyIG9yIGNvbmZsaWN0aW5nIGBsZWZ0YC9gcmlnaHRgIHZhbHVlcy5cbiAgICAgICAgICovXG4gIC51LXB1c2gtNlxcLzZcXEBtb2JpbGVMYW5kc2NhcGUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gICAgbGVmdDogMTAwJSAhaW1wb3J0YW50O1xuICB9XG4gIC51LXB1bGwtNlxcLzZcXEBtb2JpbGVMYW5kc2NhcGUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICB9XG4gIC51LTFcXC83XFxAbW9iaWxlTGFuZHNjYXBlIHtcbiAgICB3aWR0aDogMTQuMjg1NzElICFpbXBvcnRhbnQ7XG4gIH1cbiAgLyoqXG4gICAgICAgICAqIDEuIFJlc2V0IGFueSBsZWZ0b3ZlciBvciBjb25mbGljdGluZyBgbGVmdGAvYHJpZ2h0YCB2YWx1ZXMuXG4gICAgICAgICAqL1xuICAudS1wdXNoLTFcXC83XFxAbW9iaWxlTGFuZHNjYXBlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICAgIGxlZnQ6IDE0LjI4NTcxJSAhaW1wb3J0YW50O1xuICB9XG4gIC51LXB1bGwtMVxcLzdcXEBtb2JpbGVMYW5kc2NhcGUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiAxNC4yODU3MSUgIWltcG9ydGFudDtcbiAgICBsZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gIH1cbiAgLnUtMlxcLzdcXEBtb2JpbGVMYW5kc2NhcGUge1xuICAgIHdpZHRoOiAyOC41NzE0MyUgIWltcG9ydGFudDtcbiAgfVxuICAvKipcbiAgICAgICAgICogMS4gUmVzZXQgYW55IGxlZnRvdmVyIG9yIGNvbmZsaWN0aW5nIGBsZWZ0YC9gcmlnaHRgIHZhbHVlcy5cbiAgICAgICAgICovXG4gIC51LXB1c2gtMlxcLzdcXEBtb2JpbGVMYW5kc2NhcGUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gICAgbGVmdDogMjguNTcxNDMlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnUtcHVsbC0yXFwvN1xcQG1vYmlsZUxhbmRzY2FwZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IDI4LjU3MTQzJSAhaW1wb3J0YW50O1xuICAgIGxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgfVxuICAudS0zXFwvN1xcQG1vYmlsZUxhbmRzY2FwZSB7XG4gICAgd2lkdGg6IDQyLjg1NzE0JSAhaW1wb3J0YW50O1xuICB9XG4gIC8qKlxuICAgICAgICAgKiAxLiBSZXNldCBhbnkgbGVmdG92ZXIgb3IgY29uZmxpY3RpbmcgYGxlZnRgL2ByaWdodGAgdmFsdWVzLlxuICAgICAgICAgKi9cbiAgLnUtcHVzaC0zXFwvN1xcQG1vYmlsZUxhbmRzY2FwZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgICBsZWZ0OiA0Mi44NTcxNCUgIWltcG9ydGFudDtcbiAgfVxuICAudS1wdWxsLTNcXC83XFxAbW9iaWxlTGFuZHNjYXBlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogNDIuODU3MTQlICFpbXBvcnRhbnQ7XG4gICAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICB9XG4gIC51LTRcXC83XFxAbW9iaWxlTGFuZHNjYXBlIHtcbiAgICB3aWR0aDogNTcuMTQyODYlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLyoqXG4gICAgICAgICAqIDEuIFJlc2V0IGFueSBsZWZ0b3ZlciBvciBjb25mbGljdGluZyBgbGVmdGAvYHJpZ2h0YCB2YWx1ZXMuXG4gICAgICAgICAqL1xuICAudS1wdXNoLTRcXC83XFxAbW9iaWxlTGFuZHNjYXBlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICAgIGxlZnQ6IDU3LjE0Mjg2JSAhaW1wb3J0YW50O1xuICB9XG4gIC51LXB1bGwtNFxcLzdcXEBtb2JpbGVMYW5kc2NhcGUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiA1Ny4xNDI4NiUgIWltcG9ydGFudDtcbiAgICBsZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gIH1cbiAgLnUtNVxcLzdcXEBtb2JpbGVMYW5kc2NhcGUge1xuICAgIHdpZHRoOiA3MS40Mjg1NyUgIWltcG9ydGFudDtcbiAgfVxuICAvKipcbiAgICAgICAgICogMS4gUmVzZXQgYW55IGxlZnRvdmVyIG9yIGNvbmZsaWN0aW5nIGBsZWZ0YC9gcmlnaHRgIHZhbHVlcy5cbiAgICAgICAgICovXG4gIC51LXB1c2gtNVxcLzdcXEBtb2JpbGVMYW5kc2NhcGUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gICAgbGVmdDogNzEuNDI4NTclICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnUtcHVsbC01XFwvN1xcQG1vYmlsZUxhbmRzY2FwZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IDcxLjQyODU3JSAhaW1wb3J0YW50O1xuICAgIGxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgfVxuICAudS02XFwvN1xcQG1vYmlsZUxhbmRzY2FwZSB7XG4gICAgd2lkdGg6IDg1LjcxNDI5JSAhaW1wb3J0YW50O1xuICB9XG4gIC8qKlxuICAgICAgICAgKiAxLiBSZXNldCBhbnkgbGVmdG92ZXIgb3IgY29uZmxpY3RpbmcgYGxlZnRgL2ByaWdodGAgdmFsdWVzLlxuICAgICAgICAgKi9cbiAgLnUtcHVzaC02XFwvN1xcQG1vYmlsZUxhbmRzY2FwZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgICBsZWZ0OiA4NS43MTQyOSUgIWltcG9ydGFudDtcbiAgfVxuICAudS1wdWxsLTZcXC83XFxAbW9iaWxlTGFuZHNjYXBlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogODUuNzE0MjklICFpbXBvcnRhbnQ7XG4gICAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICB9XG4gIC51LTdcXC83XFxAbW9iaWxlTGFuZHNjYXBlIHtcbiAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICB9XG4gIC8qKlxuICAgICAgICAgKiAxLiBSZXNldCBhbnkgbGVmdG92ZXIgb3IgY29uZmxpY3RpbmcgYGxlZnRgL2ByaWdodGAgdmFsdWVzLlxuICAgICAgICAgKi9cbiAgLnUtcHVzaC03XFwvN1xcQG1vYmlsZUxhbmRzY2FwZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgICBsZWZ0OiAxMDAlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnUtcHVsbC03XFwvN1xcQG1vYmlsZUxhbmRzY2FwZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IDEwMCUgIWltcG9ydGFudDtcbiAgICBsZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gIH1cbiAgLnUtMVxcLzhcXEBtb2JpbGVMYW5kc2NhcGUge1xuICAgIHdpZHRoOiAxMi41JSAhaW1wb3J0YW50O1xuICB9XG4gIC8qKlxuICAgICAgICAgKiAxLiBSZXNldCBhbnkgbGVmdG92ZXIgb3IgY29uZmxpY3RpbmcgYGxlZnRgL2ByaWdodGAgdmFsdWVzLlxuICAgICAgICAgKi9cbiAgLnUtcHVzaC0xXFwvOFxcQG1vYmlsZUxhbmRzY2FwZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgICBsZWZ0OiAxMi41JSAhaW1wb3J0YW50O1xuICB9XG4gIC51LXB1bGwtMVxcLzhcXEBtb2JpbGVMYW5kc2NhcGUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiAxMi41JSAhaW1wb3J0YW50O1xuICAgIGxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgfVxuICAudS0yXFwvOFxcQG1vYmlsZUxhbmRzY2FwZSB7XG4gICAgd2lkdGg6IDI1JSAhaW1wb3J0YW50O1xuICB9XG4gIC8qKlxuICAgICAgICAgKiAxLiBSZXNldCBhbnkgbGVmdG92ZXIgb3IgY29uZmxpY3RpbmcgYGxlZnRgL2ByaWdodGAgdmFsdWVzLlxuICAgICAgICAgKi9cbiAgLnUtcHVzaC0yXFwvOFxcQG1vYmlsZUxhbmRzY2FwZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgICBsZWZ0OiAyNSUgIWltcG9ydGFudDtcbiAgfVxuICAudS1wdWxsLTJcXC84XFxAbW9iaWxlTGFuZHNjYXBlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogMjUlICFpbXBvcnRhbnQ7XG4gICAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICB9XG4gIC51LTNcXC84XFxAbW9iaWxlTGFuZHNjYXBlIHtcbiAgICB3aWR0aDogMzcuNSUgIWltcG9ydGFudDtcbiAgfVxuICAvKipcbiAgICAgICAgICogMS4gUmVzZXQgYW55IGxlZnRvdmVyIG9yIGNvbmZsaWN0aW5nIGBsZWZ0YC9gcmlnaHRgIHZhbHVlcy5cbiAgICAgICAgICovXG4gIC51LXB1c2gtM1xcLzhcXEBtb2JpbGVMYW5kc2NhcGUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gICAgbGVmdDogMzcuNSUgIWltcG9ydGFudDtcbiAgfVxuICAudS1wdWxsLTNcXC84XFxAbW9iaWxlTGFuZHNjYXBlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogMzcuNSUgIWltcG9ydGFudDtcbiAgICBsZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gIH1cbiAgLnUtNFxcLzhcXEBtb2JpbGVMYW5kc2NhcGUge1xuICAgIHdpZHRoOiA1MCUgIWltcG9ydGFudDtcbiAgfVxuICAvKipcbiAgICAgICAgICogMS4gUmVzZXQgYW55IGxlZnRvdmVyIG9yIGNvbmZsaWN0aW5nIGBsZWZ0YC9gcmlnaHRgIHZhbHVlcy5cbiAgICAgICAgICovXG4gIC51LXB1c2gtNFxcLzhcXEBtb2JpbGVMYW5kc2NhcGUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gICAgbGVmdDogNTAlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnUtcHVsbC00XFwvOFxcQG1vYmlsZUxhbmRzY2FwZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IDUwJSAhaW1wb3J0YW50O1xuICAgIGxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgfVxuICAudS01XFwvOFxcQG1vYmlsZUxhbmRzY2FwZSB7XG4gICAgd2lkdGg6IDYyLjUlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLyoqXG4gICAgICAgICAqIDEuIFJlc2V0IGFueSBsZWZ0b3ZlciBvciBjb25mbGljdGluZyBgbGVmdGAvYHJpZ2h0YCB2YWx1ZXMuXG4gICAgICAgICAqL1xuICAudS1wdXNoLTVcXC84XFxAbW9iaWxlTGFuZHNjYXBlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICAgIGxlZnQ6IDYyLjUlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnUtcHVsbC01XFwvOFxcQG1vYmlsZUxhbmRzY2FwZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IDYyLjUlICFpbXBvcnRhbnQ7XG4gICAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICB9XG4gIC51LTZcXC84XFxAbW9iaWxlTGFuZHNjYXBlIHtcbiAgICB3aWR0aDogNzUlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLyoqXG4gICAgICAgICAqIDEuIFJlc2V0IGFueSBsZWZ0b3ZlciBvciBjb25mbGljdGluZyBgbGVmdGAvYHJpZ2h0YCB2YWx1ZXMuXG4gICAgICAgICAqL1xuICAudS1wdXNoLTZcXC84XFxAbW9iaWxlTGFuZHNjYXBlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICAgIGxlZnQ6IDc1JSAhaW1wb3J0YW50O1xuICB9XG4gIC51LXB1bGwtNlxcLzhcXEBtb2JpbGVMYW5kc2NhcGUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiA3NSUgIWltcG9ydGFudDtcbiAgICBsZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gIH1cbiAgLnUtN1xcLzhcXEBtb2JpbGVMYW5kc2NhcGUge1xuICAgIHdpZHRoOiA4Ny41JSAhaW1wb3J0YW50O1xuICB9XG4gIC8qKlxuICAgICAgICAgKiAxLiBSZXNldCBhbnkgbGVmdG92ZXIgb3IgY29uZmxpY3RpbmcgYGxlZnRgL2ByaWdodGAgdmFsdWVzLlxuICAgICAgICAgKi9cbiAgLnUtcHVzaC03XFwvOFxcQG1vYmlsZUxhbmRzY2FwZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgICBsZWZ0OiA4Ny41JSAhaW1wb3J0YW50O1xuICB9XG4gIC51LXB1bGwtN1xcLzhcXEBtb2JpbGVMYW5kc2NhcGUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiA4Ny41JSAhaW1wb3J0YW50O1xuICAgIGxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgfVxuICAudS04XFwvOFxcQG1vYmlsZUxhbmRzY2FwZSB7XG4gICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgfVxuICAvKipcbiAgICAgICAgICogMS4gUmVzZXQgYW55IGxlZnRvdmVyIG9yIGNvbmZsaWN0aW5nIGBsZWZ0YC9gcmlnaHRgIHZhbHVlcy5cbiAgICAgICAgICovXG4gIC51LXB1c2gtOFxcLzhcXEBtb2JpbGVMYW5kc2NhcGUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gICAgbGVmdDogMTAwJSAhaW1wb3J0YW50O1xuICB9XG4gIC51LXB1bGwtOFxcLzhcXEBtb2JpbGVMYW5kc2NhcGUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICB9XG4gIC51LXB1c2gtbm9uZVxcQG1vYmlsZUxhbmRzY2FwZSB7XG4gICAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICB9XG4gIC51LXB1bGwtbm9uZVxcQG1vYmlsZUxhbmRzY2FwZSB7XG4gICAgcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNDhlbSkge1xuICAudS0xXFwvMVxcQHRhYmxldCB7XG4gICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgfVxuICAvKipcbiAgICAgICAgICogMS4gUmVzZXQgYW55IGxlZnRvdmVyIG9yIGNvbmZsaWN0aW5nIGBsZWZ0YC9gcmlnaHRgIHZhbHVlcy5cbiAgICAgICAgICovXG4gIC51LXB1c2gtMVxcLzFcXEB0YWJsZXQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gICAgbGVmdDogMTAwJSAhaW1wb3J0YW50O1xuICB9XG4gIC51LXB1bGwtMVxcLzFcXEB0YWJsZXQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICB9XG4gIC51LTFcXC8yXFxAdGFibGV0IHtcbiAgICB3aWR0aDogNTAlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLyoqXG4gICAgICAgICAqIDEuIFJlc2V0IGFueSBsZWZ0b3ZlciBvciBjb25mbGljdGluZyBgbGVmdGAvYHJpZ2h0YCB2YWx1ZXMuXG4gICAgICAgICAqL1xuICAudS1wdXNoLTFcXC8yXFxAdGFibGV0IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICAgIGxlZnQ6IDUwJSAhaW1wb3J0YW50O1xuICB9XG4gIC51LXB1bGwtMVxcLzJcXEB0YWJsZXQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiA1MCUgIWltcG9ydGFudDtcbiAgICBsZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gIH1cbiAgLnUtMlxcLzJcXEB0YWJsZXQge1xuICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLyoqXG4gICAgICAgICAqIDEuIFJlc2V0IGFueSBsZWZ0b3ZlciBvciBjb25mbGljdGluZyBgbGVmdGAvYHJpZ2h0YCB2YWx1ZXMuXG4gICAgICAgICAqL1xuICAudS1wdXNoLTJcXC8yXFxAdGFibGV0IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICAgIGxlZnQ6IDEwMCUgIWltcG9ydGFudDtcbiAgfVxuICAudS1wdWxsLTJcXC8yXFxAdGFibGV0IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogMTAwJSAhaW1wb3J0YW50O1xuICAgIGxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgfVxuICAudS0xXFwvM1xcQHRhYmxldCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzJSAhaW1wb3J0YW50O1xuICB9XG4gIC8qKlxuICAgICAgICAgKiAxLiBSZXNldCBhbnkgbGVmdG92ZXIgb3IgY29uZmxpY3RpbmcgYGxlZnRgL2ByaWdodGAgdmFsdWVzLlxuICAgICAgICAgKi9cbiAgLnUtcHVzaC0xXFwvM1xcQHRhYmxldCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgICBsZWZ0OiAzMy4zMzMzMyUgIWltcG9ydGFudDtcbiAgfVxuICAudS1wdWxsLTFcXC8zXFxAdGFibGV0IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogMzMuMzMzMzMlICFpbXBvcnRhbnQ7XG4gICAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICB9XG4gIC51LTJcXC8zXFxAdGFibGV0IHtcbiAgICB3aWR0aDogNjYuNjY2NjclICFpbXBvcnRhbnQ7XG4gIH1cbiAgLyoqXG4gICAgICAgICAqIDEuIFJlc2V0IGFueSBsZWZ0b3ZlciBvciBjb25mbGljdGluZyBgbGVmdGAvYHJpZ2h0YCB2YWx1ZXMuXG4gICAgICAgICAqL1xuICAudS1wdXNoLTJcXC8zXFxAdGFibGV0IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICAgIGxlZnQ6IDY2LjY2NjY3JSAhaW1wb3J0YW50O1xuICB9XG4gIC51LXB1bGwtMlxcLzNcXEB0YWJsZXQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiA2Ni42NjY2NyUgIWltcG9ydGFudDtcbiAgICBsZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gIH1cbiAgLnUtM1xcLzNcXEB0YWJsZXQge1xuICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLyoqXG4gICAgICAgICAqIDEuIFJlc2V0IGFueSBsZWZ0b3ZlciBvciBjb25mbGljdGluZyBgbGVmdGAvYHJpZ2h0YCB2YWx1ZXMuXG4gICAgICAgICAqL1xuICAudS1wdXNoLTNcXC8zXFxAdGFibGV0IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICAgIGxlZnQ6IDEwMCUgIWltcG9ydGFudDtcbiAgfVxuICAudS1wdWxsLTNcXC8zXFxAdGFibGV0IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogMTAwJSAhaW1wb3J0YW50O1xuICAgIGxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgfVxuICAudS0xXFwvNFxcQHRhYmxldCB7XG4gICAgd2lkdGg6IDI1JSAhaW1wb3J0YW50O1xuICB9XG4gIC8qKlxuICAgICAgICAgKiAxLiBSZXNldCBhbnkgbGVmdG92ZXIgb3IgY29uZmxpY3RpbmcgYGxlZnRgL2ByaWdodGAgdmFsdWVzLlxuICAgICAgICAgKi9cbiAgLnUtcHVzaC0xXFwvNFxcQHRhYmxldCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgICBsZWZ0OiAyNSUgIWltcG9ydGFudDtcbiAgfVxuICAudS1wdWxsLTFcXC80XFxAdGFibGV0IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogMjUlICFpbXBvcnRhbnQ7XG4gICAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICB9XG4gIC51LTJcXC80XFxAdGFibGV0IHtcbiAgICB3aWR0aDogNTAlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLyoqXG4gICAgICAgICAqIDEuIFJlc2V0IGFueSBsZWZ0b3ZlciBvciBjb25mbGljdGluZyBgbGVmdGAvYHJpZ2h0YCB2YWx1ZXMuXG4gICAgICAgICAqL1xuICAudS1wdXNoLTJcXC80XFxAdGFibGV0IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICAgIGxlZnQ6IDUwJSAhaW1wb3J0YW50O1xuICB9XG4gIC51LXB1bGwtMlxcLzRcXEB0YWJsZXQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiA1MCUgIWltcG9ydGFudDtcbiAgICBsZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gIH1cbiAgLnUtM1xcLzRcXEB0YWJsZXQge1xuICAgIHdpZHRoOiA3NSUgIWltcG9ydGFudDtcbiAgfVxuICAvKipcbiAgICAgICAgICogMS4gUmVzZXQgYW55IGxlZnRvdmVyIG9yIGNvbmZsaWN0aW5nIGBsZWZ0YC9gcmlnaHRgIHZhbHVlcy5cbiAgICAgICAgICovXG4gIC51LXB1c2gtM1xcLzRcXEB0YWJsZXQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gICAgbGVmdDogNzUlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnUtcHVsbC0zXFwvNFxcQHRhYmxldCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IDc1JSAhaW1wb3J0YW50O1xuICAgIGxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgfVxuICAudS00XFwvNFxcQHRhYmxldCB7XG4gICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgfVxuICAvKipcbiAgICAgICAgICogMS4gUmVzZXQgYW55IGxlZnRvdmVyIG9yIGNvbmZsaWN0aW5nIGBsZWZ0YC9gcmlnaHRgIHZhbHVlcy5cbiAgICAgICAgICovXG4gIC51LXB1c2gtNFxcLzRcXEB0YWJsZXQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gICAgbGVmdDogMTAwJSAhaW1wb3J0YW50O1xuICB9XG4gIC51LXB1bGwtNFxcLzRcXEB0YWJsZXQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICB9XG4gIC51LTFcXC81XFxAdGFibGV0IHtcbiAgICB3aWR0aDogMjAlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLyoqXG4gICAgICAgICAqIDEuIFJlc2V0IGFueSBsZWZ0b3ZlciBvciBjb25mbGljdGluZyBgbGVmdGAvYHJpZ2h0YCB2YWx1ZXMuXG4gICAgICAgICAqL1xuICAudS1wdXNoLTFcXC81XFxAdGFibGV0IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICAgIGxlZnQ6IDIwJSAhaW1wb3J0YW50O1xuICB9XG4gIC51LXB1bGwtMVxcLzVcXEB0YWJsZXQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiAyMCUgIWltcG9ydGFudDtcbiAgICBsZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gIH1cbiAgLnUtMlxcLzVcXEB0YWJsZXQge1xuICAgIHdpZHRoOiA0MCUgIWltcG9ydGFudDtcbiAgfVxuICAvKipcbiAgICAgICAgICogMS4gUmVzZXQgYW55IGxlZnRvdmVyIG9yIGNvbmZsaWN0aW5nIGBsZWZ0YC9gcmlnaHRgIHZhbHVlcy5cbiAgICAgICAgICovXG4gIC51LXB1c2gtMlxcLzVcXEB0YWJsZXQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gICAgbGVmdDogNDAlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnUtcHVsbC0yXFwvNVxcQHRhYmxldCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IDQwJSAhaW1wb3J0YW50O1xuICAgIGxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgfVxuICAudS0zXFwvNVxcQHRhYmxldCB7XG4gICAgd2lkdGg6IDYwJSAhaW1wb3J0YW50O1xuICB9XG4gIC8qKlxuICAgICAgICAgKiAxLiBSZXNldCBhbnkgbGVmdG92ZXIgb3IgY29uZmxpY3RpbmcgYGxlZnRgL2ByaWdodGAgdmFsdWVzLlxuICAgICAgICAgKi9cbiAgLnUtcHVzaC0zXFwvNVxcQHRhYmxldCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgICBsZWZ0OiA2MCUgIWltcG9ydGFudDtcbiAgfVxuICAudS1wdWxsLTNcXC81XFxAdGFibGV0IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogNjAlICFpbXBvcnRhbnQ7XG4gICAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICB9XG4gIC51LTRcXC81XFxAdGFibGV0IHtcbiAgICB3aWR0aDogODAlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLyoqXG4gICAgICAgICAqIDEuIFJlc2V0IGFueSBsZWZ0b3ZlciBvciBjb25mbGljdGluZyBgbGVmdGAvYHJpZ2h0YCB2YWx1ZXMuXG4gICAgICAgICAqL1xuICAudS1wdXNoLTRcXC81XFxAdGFibGV0IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICAgIGxlZnQ6IDgwJSAhaW1wb3J0YW50O1xuICB9XG4gIC51LXB1bGwtNFxcLzVcXEB0YWJsZXQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiA4MCUgIWltcG9ydGFudDtcbiAgICBsZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gIH1cbiAgLnUtNVxcLzVcXEB0YWJsZXQge1xuICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLyoqXG4gICAgICAgICAqIDEuIFJlc2V0IGFueSBsZWZ0b3ZlciBvciBjb25mbGljdGluZyBgbGVmdGAvYHJpZ2h0YCB2YWx1ZXMuXG4gICAgICAgICAqL1xuICAudS1wdXNoLTVcXC81XFxAdGFibGV0IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICAgIGxlZnQ6IDEwMCUgIWltcG9ydGFudDtcbiAgfVxuICAudS1wdWxsLTVcXC81XFxAdGFibGV0IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogMTAwJSAhaW1wb3J0YW50O1xuICAgIGxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgfVxuICAudS0xXFwvNlxcQHRhYmxldCB7XG4gICAgd2lkdGg6IDE2LjY2NjY3JSAhaW1wb3J0YW50O1xuICB9XG4gIC8qKlxuICAgICAgICAgKiAxLiBSZXNldCBhbnkgbGVmdG92ZXIgb3IgY29uZmxpY3RpbmcgYGxlZnRgL2ByaWdodGAgdmFsdWVzLlxuICAgICAgICAgKi9cbiAgLnUtcHVzaC0xXFwvNlxcQHRhYmxldCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgICBsZWZ0OiAxNi42NjY2NyUgIWltcG9ydGFudDtcbiAgfVxuICAudS1wdWxsLTFcXC82XFxAdGFibGV0IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogMTYuNjY2NjclICFpbXBvcnRhbnQ7XG4gICAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICB9XG4gIC51LTJcXC82XFxAdGFibGV0IHtcbiAgICB3aWR0aDogMzMuMzMzMzMlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLyoqXG4gICAgICAgICAqIDEuIFJlc2V0IGFueSBsZWZ0b3ZlciBvciBjb25mbGljdGluZyBgbGVmdGAvYHJpZ2h0YCB2YWx1ZXMuXG4gICAgICAgICAqL1xuICAudS1wdXNoLTJcXC82XFxAdGFibGV0IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICAgIGxlZnQ6IDMzLjMzMzMzJSAhaW1wb3J0YW50O1xuICB9XG4gIC51LXB1bGwtMlxcLzZcXEB0YWJsZXQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiAzMy4zMzMzMyUgIWltcG9ydGFudDtcbiAgICBsZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gIH1cbiAgLnUtM1xcLzZcXEB0YWJsZXQge1xuICAgIHdpZHRoOiA1MCUgIWltcG9ydGFudDtcbiAgfVxuICAvKipcbiAgICAgICAgICogMS4gUmVzZXQgYW55IGxlZnRvdmVyIG9yIGNvbmZsaWN0aW5nIGBsZWZ0YC9gcmlnaHRgIHZhbHVlcy5cbiAgICAgICAgICovXG4gIC51LXB1c2gtM1xcLzZcXEB0YWJsZXQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gICAgbGVmdDogNTAlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnUtcHVsbC0zXFwvNlxcQHRhYmxldCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IDUwJSAhaW1wb3J0YW50O1xuICAgIGxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgfVxuICAudS00XFwvNlxcQHRhYmxldCB7XG4gICAgd2lkdGg6IDY2LjY2NjY3JSAhaW1wb3J0YW50O1xuICB9XG4gIC8qKlxuICAgICAgICAgKiAxLiBSZXNldCBhbnkgbGVmdG92ZXIgb3IgY29uZmxpY3RpbmcgYGxlZnRgL2ByaWdodGAgdmFsdWVzLlxuICAgICAgICAgKi9cbiAgLnUtcHVzaC00XFwvNlxcQHRhYmxldCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgICBsZWZ0OiA2Ni42NjY2NyUgIWltcG9ydGFudDtcbiAgfVxuICAudS1wdWxsLTRcXC82XFxAdGFibGV0IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogNjYuNjY2NjclICFpbXBvcnRhbnQ7XG4gICAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICB9XG4gIC51LTVcXC82XFxAdGFibGV0IHtcbiAgICB3aWR0aDogODMuMzMzMzMlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLyoqXG4gICAgICAgICAqIDEuIFJlc2V0IGFueSBsZWZ0b3ZlciBvciBjb25mbGljdGluZyBgbGVmdGAvYHJpZ2h0YCB2YWx1ZXMuXG4gICAgICAgICAqL1xuICAudS1wdXNoLTVcXC82XFxAdGFibGV0IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICAgIGxlZnQ6IDgzLjMzMzMzJSAhaW1wb3J0YW50O1xuICB9XG4gIC51LXB1bGwtNVxcLzZcXEB0YWJsZXQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiA4My4zMzMzMyUgIWltcG9ydGFudDtcbiAgICBsZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gIH1cbiAgLnUtNlxcLzZcXEB0YWJsZXQge1xuICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLyoqXG4gICAgICAgICAqIDEuIFJlc2V0IGFueSBsZWZ0b3ZlciBvciBjb25mbGljdGluZyBgbGVmdGAvYHJpZ2h0YCB2YWx1ZXMuXG4gICAgICAgICAqL1xuICAudS1wdXNoLTZcXC82XFxAdGFibGV0IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICAgIGxlZnQ6IDEwMCUgIWltcG9ydGFudDtcbiAgfVxuICAudS1wdWxsLTZcXC82XFxAdGFibGV0IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogMTAwJSAhaW1wb3J0YW50O1xuICAgIGxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgfVxuICAudS0xXFwvN1xcQHRhYmxldCB7XG4gICAgd2lkdGg6IDE0LjI4NTcxJSAhaW1wb3J0YW50O1xuICB9XG4gIC8qKlxuICAgICAgICAgKiAxLiBSZXNldCBhbnkgbGVmdG92ZXIgb3IgY29uZmxpY3RpbmcgYGxlZnRgL2ByaWdodGAgdmFsdWVzLlxuICAgICAgICAgKi9cbiAgLnUtcHVzaC0xXFwvN1xcQHRhYmxldCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgICBsZWZ0OiAxNC4yODU3MSUgIWltcG9ydGFudDtcbiAgfVxuICAudS1wdWxsLTFcXC83XFxAdGFibGV0IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogMTQuMjg1NzElICFpbXBvcnRhbnQ7XG4gICAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICB9XG4gIC51LTJcXC83XFxAdGFibGV0IHtcbiAgICB3aWR0aDogMjguNTcxNDMlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLyoqXG4gICAgICAgICAqIDEuIFJlc2V0IGFueSBsZWZ0b3ZlciBvciBjb25mbGljdGluZyBgbGVmdGAvYHJpZ2h0YCB2YWx1ZXMuXG4gICAgICAgICAqL1xuICAudS1wdXNoLTJcXC83XFxAdGFibGV0IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICAgIGxlZnQ6IDI4LjU3MTQzJSAhaW1wb3J0YW50O1xuICB9XG4gIC51LXB1bGwtMlxcLzdcXEB0YWJsZXQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiAyOC41NzE0MyUgIWltcG9ydGFudDtcbiAgICBsZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gIH1cbiAgLnUtM1xcLzdcXEB0YWJsZXQge1xuICAgIHdpZHRoOiA0Mi44NTcxNCUgIWltcG9ydGFudDtcbiAgfVxuICAvKipcbiAgICAgICAgICogMS4gUmVzZXQgYW55IGxlZnRvdmVyIG9yIGNvbmZsaWN0aW5nIGBsZWZ0YC9gcmlnaHRgIHZhbHVlcy5cbiAgICAgICAgICovXG4gIC51LXB1c2gtM1xcLzdcXEB0YWJsZXQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gICAgbGVmdDogNDIuODU3MTQlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnUtcHVsbC0zXFwvN1xcQHRhYmxldCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IDQyLjg1NzE0JSAhaW1wb3J0YW50O1xuICAgIGxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgfVxuICAudS00XFwvN1xcQHRhYmxldCB7XG4gICAgd2lkdGg6IDU3LjE0Mjg2JSAhaW1wb3J0YW50O1xuICB9XG4gIC8qKlxuICAgICAgICAgKiAxLiBSZXNldCBhbnkgbGVmdG92ZXIgb3IgY29uZmxpY3RpbmcgYGxlZnRgL2ByaWdodGAgdmFsdWVzLlxuICAgICAgICAgKi9cbiAgLnUtcHVzaC00XFwvN1xcQHRhYmxldCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgICBsZWZ0OiA1Ny4xNDI4NiUgIWltcG9ydGFudDtcbiAgfVxuICAudS1wdWxsLTRcXC83XFxAdGFibGV0IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogNTcuMTQyODYlICFpbXBvcnRhbnQ7XG4gICAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICB9XG4gIC51LTVcXC83XFxAdGFibGV0IHtcbiAgICB3aWR0aDogNzEuNDI4NTclICFpbXBvcnRhbnQ7XG4gIH1cbiAgLyoqXG4gICAgICAgICAqIDEuIFJlc2V0IGFueSBsZWZ0b3ZlciBvciBjb25mbGljdGluZyBgbGVmdGAvYHJpZ2h0YCB2YWx1ZXMuXG4gICAgICAgICAqL1xuICAudS1wdXNoLTVcXC83XFxAdGFibGV0IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICAgIGxlZnQ6IDcxLjQyODU3JSAhaW1wb3J0YW50O1xuICB9XG4gIC51LXB1bGwtNVxcLzdcXEB0YWJsZXQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiA3MS40Mjg1NyUgIWltcG9ydGFudDtcbiAgICBsZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gIH1cbiAgLnUtNlxcLzdcXEB0YWJsZXQge1xuICAgIHdpZHRoOiA4NS43MTQyOSUgIWltcG9ydGFudDtcbiAgfVxuICAvKipcbiAgICAgICAgICogMS4gUmVzZXQgYW55IGxlZnRvdmVyIG9yIGNvbmZsaWN0aW5nIGBsZWZ0YC9gcmlnaHRgIHZhbHVlcy5cbiAgICAgICAgICovXG4gIC51LXB1c2gtNlxcLzdcXEB0YWJsZXQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gICAgbGVmdDogODUuNzE0MjklICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnUtcHVsbC02XFwvN1xcQHRhYmxldCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IDg1LjcxNDI5JSAhaW1wb3J0YW50O1xuICAgIGxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgfVxuICAudS03XFwvN1xcQHRhYmxldCB7XG4gICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgfVxuICAvKipcbiAgICAgICAgICogMS4gUmVzZXQgYW55IGxlZnRvdmVyIG9yIGNvbmZsaWN0aW5nIGBsZWZ0YC9gcmlnaHRgIHZhbHVlcy5cbiAgICAgICAgICovXG4gIC51LXB1c2gtN1xcLzdcXEB0YWJsZXQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gICAgbGVmdDogMTAwJSAhaW1wb3J0YW50O1xuICB9XG4gIC51LXB1bGwtN1xcLzdcXEB0YWJsZXQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICB9XG4gIC51LTFcXC84XFxAdGFibGV0IHtcbiAgICB3aWR0aDogMTIuNSUgIWltcG9ydGFudDtcbiAgfVxuICAvKipcbiAgICAgICAgICogMS4gUmVzZXQgYW55IGxlZnRvdmVyIG9yIGNvbmZsaWN0aW5nIGBsZWZ0YC9gcmlnaHRgIHZhbHVlcy5cbiAgICAgICAgICovXG4gIC51LXB1c2gtMVxcLzhcXEB0YWJsZXQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gICAgbGVmdDogMTIuNSUgIWltcG9ydGFudDtcbiAgfVxuICAudS1wdWxsLTFcXC84XFxAdGFibGV0IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogMTIuNSUgIWltcG9ydGFudDtcbiAgICBsZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gIH1cbiAgLnUtMlxcLzhcXEB0YWJsZXQge1xuICAgIHdpZHRoOiAyNSUgIWltcG9ydGFudDtcbiAgfVxuICAvKipcbiAgICAgICAgICogMS4gUmVzZXQgYW55IGxlZnRvdmVyIG9yIGNvbmZsaWN0aW5nIGBsZWZ0YC9gcmlnaHRgIHZhbHVlcy5cbiAgICAgICAgICovXG4gIC51LXB1c2gtMlxcLzhcXEB0YWJsZXQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gICAgbGVmdDogMjUlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnUtcHVsbC0yXFwvOFxcQHRhYmxldCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IDI1JSAhaW1wb3J0YW50O1xuICAgIGxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgfVxuICAudS0zXFwvOFxcQHRhYmxldCB7XG4gICAgd2lkdGg6IDM3LjUlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLyoqXG4gICAgICAgICAqIDEuIFJlc2V0IGFueSBsZWZ0b3ZlciBvciBjb25mbGljdGluZyBgbGVmdGAvYHJpZ2h0YCB2YWx1ZXMuXG4gICAgICAgICAqL1xuICAudS1wdXNoLTNcXC84XFxAdGFibGV0IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICAgIGxlZnQ6IDM3LjUlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnUtcHVsbC0zXFwvOFxcQHRhYmxldCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IDM3LjUlICFpbXBvcnRhbnQ7XG4gICAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICB9XG4gIC51LTRcXC84XFxAdGFibGV0IHtcbiAgICB3aWR0aDogNTAlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLyoqXG4gICAgICAgICAqIDEuIFJlc2V0IGFueSBsZWZ0b3ZlciBvciBjb25mbGljdGluZyBgbGVmdGAvYHJpZ2h0YCB2YWx1ZXMuXG4gICAgICAgICAqL1xuICAudS1wdXNoLTRcXC84XFxAdGFibGV0IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICAgIGxlZnQ6IDUwJSAhaW1wb3J0YW50O1xuICB9XG4gIC51LXB1bGwtNFxcLzhcXEB0YWJsZXQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiA1MCUgIWltcG9ydGFudDtcbiAgICBsZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gIH1cbiAgLnUtNVxcLzhcXEB0YWJsZXQge1xuICAgIHdpZHRoOiA2Mi41JSAhaW1wb3J0YW50O1xuICB9XG4gIC8qKlxuICAgICAgICAgKiAxLiBSZXNldCBhbnkgbGVmdG92ZXIgb3IgY29uZmxpY3RpbmcgYGxlZnRgL2ByaWdodGAgdmFsdWVzLlxuICAgICAgICAgKi9cbiAgLnUtcHVzaC01XFwvOFxcQHRhYmxldCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgICBsZWZ0OiA2Mi41JSAhaW1wb3J0YW50O1xuICB9XG4gIC51LXB1bGwtNVxcLzhcXEB0YWJsZXQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiA2Mi41JSAhaW1wb3J0YW50O1xuICAgIGxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgfVxuICAudS02XFwvOFxcQHRhYmxldCB7XG4gICAgd2lkdGg6IDc1JSAhaW1wb3J0YW50O1xuICB9XG4gIC8qKlxuICAgICAgICAgKiAxLiBSZXNldCBhbnkgbGVmdG92ZXIgb3IgY29uZmxpY3RpbmcgYGxlZnRgL2ByaWdodGAgdmFsdWVzLlxuICAgICAgICAgKi9cbiAgLnUtcHVzaC02XFwvOFxcQHRhYmxldCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgICBsZWZ0OiA3NSUgIWltcG9ydGFudDtcbiAgfVxuICAudS1wdWxsLTZcXC84XFxAdGFibGV0IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogNzUlICFpbXBvcnRhbnQ7XG4gICAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICB9XG4gIC51LTdcXC84XFxAdGFibGV0IHtcbiAgICB3aWR0aDogODcuNSUgIWltcG9ydGFudDtcbiAgfVxuICAvKipcbiAgICAgICAgICogMS4gUmVzZXQgYW55IGxlZnRvdmVyIG9yIGNvbmZsaWN0aW5nIGBsZWZ0YC9gcmlnaHRgIHZhbHVlcy5cbiAgICAgICAgICovXG4gIC51LXB1c2gtN1xcLzhcXEB0YWJsZXQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gICAgbGVmdDogODcuNSUgIWltcG9ydGFudDtcbiAgfVxuICAudS1wdWxsLTdcXC84XFxAdGFibGV0IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogODcuNSUgIWltcG9ydGFudDtcbiAgICBsZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gIH1cbiAgLnUtOFxcLzhcXEB0YWJsZXQge1xuICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLyoqXG4gICAgICAgICAqIDEuIFJlc2V0IGFueSBsZWZ0b3ZlciBvciBjb25mbGljdGluZyBgbGVmdGAvYHJpZ2h0YCB2YWx1ZXMuXG4gICAgICAgICAqL1xuICAudS1wdXNoLThcXC84XFxAdGFibGV0IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICAgIGxlZnQ6IDEwMCUgIWltcG9ydGFudDtcbiAgfVxuICAudS1wdWxsLThcXC84XFxAdGFibGV0IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogMTAwJSAhaW1wb3J0YW50O1xuICAgIGxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgfVxuICAudS1wdXNoLW5vbmVcXEB0YWJsZXQge1xuICAgIGxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgfVxuICAudS1wdWxsLW5vbmVcXEB0YWJsZXQge1xuICAgIHJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDYyLjVlbSkge1xuICAudS0xXFwvMVxcQHRhYmxldFdpZGUge1xuICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLyoqXG4gICAgICAgICAqIDEuIFJlc2V0IGFueSBsZWZ0b3ZlciBvciBjb25mbGljdGluZyBgbGVmdGAvYHJpZ2h0YCB2YWx1ZXMuXG4gICAgICAgICAqL1xuICAudS1wdXNoLTFcXC8xXFxAdGFibGV0V2lkZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgICBsZWZ0OiAxMDAlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnUtcHVsbC0xXFwvMVxcQHRhYmxldFdpZGUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICB9XG4gIC51LTFcXC8yXFxAdGFibGV0V2lkZSB7XG4gICAgd2lkdGg6IDUwJSAhaW1wb3J0YW50O1xuICB9XG4gIC8qKlxuICAgICAgICAgKiAxLiBSZXNldCBhbnkgbGVmdG92ZXIgb3IgY29uZmxpY3RpbmcgYGxlZnRgL2ByaWdodGAgdmFsdWVzLlxuICAgICAgICAgKi9cbiAgLnUtcHVzaC0xXFwvMlxcQHRhYmxldFdpZGUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gICAgbGVmdDogNTAlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnUtcHVsbC0xXFwvMlxcQHRhYmxldFdpZGUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiA1MCUgIWltcG9ydGFudDtcbiAgICBsZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gIH1cbiAgLnUtMlxcLzJcXEB0YWJsZXRXaWRlIHtcbiAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICB9XG4gIC8qKlxuICAgICAgICAgKiAxLiBSZXNldCBhbnkgbGVmdG92ZXIgb3IgY29uZmxpY3RpbmcgYGxlZnRgL2ByaWdodGAgdmFsdWVzLlxuICAgICAgICAgKi9cbiAgLnUtcHVzaC0yXFwvMlxcQHRhYmxldFdpZGUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gICAgbGVmdDogMTAwJSAhaW1wb3J0YW50O1xuICB9XG4gIC51LXB1bGwtMlxcLzJcXEB0YWJsZXRXaWRlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogMTAwJSAhaW1wb3J0YW50O1xuICAgIGxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgfVxuICAudS0xXFwvM1xcQHRhYmxldFdpZGUge1xuICAgIHdpZHRoOiAzMy4zMzMzMyUgIWltcG9ydGFudDtcbiAgfVxuICAvKipcbiAgICAgICAgICogMS4gUmVzZXQgYW55IGxlZnRvdmVyIG9yIGNvbmZsaWN0aW5nIGBsZWZ0YC9gcmlnaHRgIHZhbHVlcy5cbiAgICAgICAgICovXG4gIC51LXB1c2gtMVxcLzNcXEB0YWJsZXRXaWRlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICAgIGxlZnQ6IDMzLjMzMzMzJSAhaW1wb3J0YW50O1xuICB9XG4gIC51LXB1bGwtMVxcLzNcXEB0YWJsZXRXaWRlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogMzMuMzMzMzMlICFpbXBvcnRhbnQ7XG4gICAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICB9XG4gIC51LTJcXC8zXFxAdGFibGV0V2lkZSB7XG4gICAgd2lkdGg6IDY2LjY2NjY3JSAhaW1wb3J0YW50O1xuICB9XG4gIC8qKlxuICAgICAgICAgKiAxLiBSZXNldCBhbnkgbGVmdG92ZXIgb3IgY29uZmxpY3RpbmcgYGxlZnRgL2ByaWdodGAgdmFsdWVzLlxuICAgICAgICAgKi9cbiAgLnUtcHVzaC0yXFwvM1xcQHRhYmxldFdpZGUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gICAgbGVmdDogNjYuNjY2NjclICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnUtcHVsbC0yXFwvM1xcQHRhYmxldFdpZGUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiA2Ni42NjY2NyUgIWltcG9ydGFudDtcbiAgICBsZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gIH1cbiAgLnUtM1xcLzNcXEB0YWJsZXRXaWRlIHtcbiAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICB9XG4gIC8qKlxuICAgICAgICAgKiAxLiBSZXNldCBhbnkgbGVmdG92ZXIgb3IgY29uZmxpY3RpbmcgYGxlZnRgL2ByaWdodGAgdmFsdWVzLlxuICAgICAgICAgKi9cbiAgLnUtcHVzaC0zXFwvM1xcQHRhYmxldFdpZGUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gICAgbGVmdDogMTAwJSAhaW1wb3J0YW50O1xuICB9XG4gIC51LXB1bGwtM1xcLzNcXEB0YWJsZXRXaWRlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogMTAwJSAhaW1wb3J0YW50O1xuICAgIGxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgfVxuICAudS0xXFwvNFxcQHRhYmxldFdpZGUge1xuICAgIHdpZHRoOiAyNSUgIWltcG9ydGFudDtcbiAgfVxuICAvKipcbiAgICAgICAgICogMS4gUmVzZXQgYW55IGxlZnRvdmVyIG9yIGNvbmZsaWN0aW5nIGBsZWZ0YC9gcmlnaHRgIHZhbHVlcy5cbiAgICAgICAgICovXG4gIC51LXB1c2gtMVxcLzRcXEB0YWJsZXRXaWRlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICAgIGxlZnQ6IDI1JSAhaW1wb3J0YW50O1xuICB9XG4gIC51LXB1bGwtMVxcLzRcXEB0YWJsZXRXaWRlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogMjUlICFpbXBvcnRhbnQ7XG4gICAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICB9XG4gIC51LTJcXC80XFxAdGFibGV0V2lkZSB7XG4gICAgd2lkdGg6IDUwJSAhaW1wb3J0YW50O1xuICB9XG4gIC8qKlxuICAgICAgICAgKiAxLiBSZXNldCBhbnkgbGVmdG92ZXIgb3IgY29uZmxpY3RpbmcgYGxlZnRgL2ByaWdodGAgdmFsdWVzLlxuICAgICAgICAgKi9cbiAgLnUtcHVzaC0yXFwvNFxcQHRhYmxldFdpZGUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gICAgbGVmdDogNTAlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnUtcHVsbC0yXFwvNFxcQHRhYmxldFdpZGUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiA1MCUgIWltcG9ydGFudDtcbiAgICBsZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gIH1cbiAgLnUtM1xcLzRcXEB0YWJsZXRXaWRlIHtcbiAgICB3aWR0aDogNzUlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLyoqXG4gICAgICAgICAqIDEuIFJlc2V0IGFueSBsZWZ0b3ZlciBvciBjb25mbGljdGluZyBgbGVmdGAvYHJpZ2h0YCB2YWx1ZXMuXG4gICAgICAgICAqL1xuICAudS1wdXNoLTNcXC80XFxAdGFibGV0V2lkZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgICBsZWZ0OiA3NSUgIWltcG9ydGFudDtcbiAgfVxuICAudS1wdWxsLTNcXC80XFxAdGFibGV0V2lkZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IDc1JSAhaW1wb3J0YW50O1xuICAgIGxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgfVxuICAudS00XFwvNFxcQHRhYmxldFdpZGUge1xuICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLyoqXG4gICAgICAgICAqIDEuIFJlc2V0IGFueSBsZWZ0b3ZlciBvciBjb25mbGljdGluZyBgbGVmdGAvYHJpZ2h0YCB2YWx1ZXMuXG4gICAgICAgICAqL1xuICAudS1wdXNoLTRcXC80XFxAdGFibGV0V2lkZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgICBsZWZ0OiAxMDAlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnUtcHVsbC00XFwvNFxcQHRhYmxldFdpZGUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICB9XG4gIC51LTFcXC81XFxAdGFibGV0V2lkZSB7XG4gICAgd2lkdGg6IDIwJSAhaW1wb3J0YW50O1xuICB9XG4gIC8qKlxuICAgICAgICAgKiAxLiBSZXNldCBhbnkgbGVmdG92ZXIgb3IgY29uZmxpY3RpbmcgYGxlZnRgL2ByaWdodGAgdmFsdWVzLlxuICAgICAgICAgKi9cbiAgLnUtcHVzaC0xXFwvNVxcQHRhYmxldFdpZGUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gICAgbGVmdDogMjAlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnUtcHVsbC0xXFwvNVxcQHRhYmxldFdpZGUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiAyMCUgIWltcG9ydGFudDtcbiAgICBsZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gIH1cbiAgLnUtMlxcLzVcXEB0YWJsZXRXaWRlIHtcbiAgICB3aWR0aDogNDAlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLyoqXG4gICAgICAgICAqIDEuIFJlc2V0IGFueSBsZWZ0b3ZlciBvciBjb25mbGljdGluZyBgbGVmdGAvYHJpZ2h0YCB2YWx1ZXMuXG4gICAgICAgICAqL1xuICAudS1wdXNoLTJcXC81XFxAdGFibGV0V2lkZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgICBsZWZ0OiA0MCUgIWltcG9ydGFudDtcbiAgfVxuICAudS1wdWxsLTJcXC81XFxAdGFibGV0V2lkZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IDQwJSAhaW1wb3J0YW50O1xuICAgIGxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgfVxuICAudS0zXFwvNVxcQHRhYmxldFdpZGUge1xuICAgIHdpZHRoOiA2MCUgIWltcG9ydGFudDtcbiAgfVxuICAvKipcbiAgICAgICAgICogMS4gUmVzZXQgYW55IGxlZnRvdmVyIG9yIGNvbmZsaWN0aW5nIGBsZWZ0YC9gcmlnaHRgIHZhbHVlcy5cbiAgICAgICAgICovXG4gIC51LXB1c2gtM1xcLzVcXEB0YWJsZXRXaWRlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICAgIGxlZnQ6IDYwJSAhaW1wb3J0YW50O1xuICB9XG4gIC51LXB1bGwtM1xcLzVcXEB0YWJsZXRXaWRlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogNjAlICFpbXBvcnRhbnQ7XG4gICAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICB9XG4gIC51LTRcXC81XFxAdGFibGV0V2lkZSB7XG4gICAgd2lkdGg6IDgwJSAhaW1wb3J0YW50O1xuICB9XG4gIC8qKlxuICAgICAgICAgKiAxLiBSZXNldCBhbnkgbGVmdG92ZXIgb3IgY29uZmxpY3RpbmcgYGxlZnRgL2ByaWdodGAgdmFsdWVzLlxuICAgICAgICAgKi9cbiAgLnUtcHVzaC00XFwvNVxcQHRhYmxldFdpZGUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gICAgbGVmdDogODAlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnUtcHVsbC00XFwvNVxcQHRhYmxldFdpZGUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiA4MCUgIWltcG9ydGFudDtcbiAgICBsZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gIH1cbiAgLnUtNVxcLzVcXEB0YWJsZXRXaWRlIHtcbiAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICB9XG4gIC8qKlxuICAgICAgICAgKiAxLiBSZXNldCBhbnkgbGVmdG92ZXIgb3IgY29uZmxpY3RpbmcgYGxlZnRgL2ByaWdodGAgdmFsdWVzLlxuICAgICAgICAgKi9cbiAgLnUtcHVzaC01XFwvNVxcQHRhYmxldFdpZGUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gICAgbGVmdDogMTAwJSAhaW1wb3J0YW50O1xuICB9XG4gIC51LXB1bGwtNVxcLzVcXEB0YWJsZXRXaWRlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogMTAwJSAhaW1wb3J0YW50O1xuICAgIGxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgfVxuICAudS0xXFwvNlxcQHRhYmxldFdpZGUge1xuICAgIHdpZHRoOiAxNi42NjY2NyUgIWltcG9ydGFudDtcbiAgfVxuICAvKipcbiAgICAgICAgICogMS4gUmVzZXQgYW55IGxlZnRvdmVyIG9yIGNvbmZsaWN0aW5nIGBsZWZ0YC9gcmlnaHRgIHZhbHVlcy5cbiAgICAgICAgICovXG4gIC51LXB1c2gtMVxcLzZcXEB0YWJsZXRXaWRlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICAgIGxlZnQ6IDE2LjY2NjY3JSAhaW1wb3J0YW50O1xuICB9XG4gIC51LXB1bGwtMVxcLzZcXEB0YWJsZXRXaWRlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogMTYuNjY2NjclICFpbXBvcnRhbnQ7XG4gICAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICB9XG4gIC51LTJcXC82XFxAdGFibGV0V2lkZSB7XG4gICAgd2lkdGg6IDMzLjMzMzMzJSAhaW1wb3J0YW50O1xuICB9XG4gIC8qKlxuICAgICAgICAgKiAxLiBSZXNldCBhbnkgbGVmdG92ZXIgb3IgY29uZmxpY3RpbmcgYGxlZnRgL2ByaWdodGAgdmFsdWVzLlxuICAgICAgICAgKi9cbiAgLnUtcHVzaC0yXFwvNlxcQHRhYmxldFdpZGUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gICAgbGVmdDogMzMuMzMzMzMlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnUtcHVsbC0yXFwvNlxcQHRhYmxldFdpZGUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiAzMy4zMzMzMyUgIWltcG9ydGFudDtcbiAgICBsZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gIH1cbiAgLnUtM1xcLzZcXEB0YWJsZXRXaWRlIHtcbiAgICB3aWR0aDogNTAlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLyoqXG4gICAgICAgICAqIDEuIFJlc2V0IGFueSBsZWZ0b3ZlciBvciBjb25mbGljdGluZyBgbGVmdGAvYHJpZ2h0YCB2YWx1ZXMuXG4gICAgICAgICAqL1xuICAudS1wdXNoLTNcXC82XFxAdGFibGV0V2lkZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgICBsZWZ0OiA1MCUgIWltcG9ydGFudDtcbiAgfVxuICAudS1wdWxsLTNcXC82XFxAdGFibGV0V2lkZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IDUwJSAhaW1wb3J0YW50O1xuICAgIGxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgfVxuICAudS00XFwvNlxcQHRhYmxldFdpZGUge1xuICAgIHdpZHRoOiA2Ni42NjY2NyUgIWltcG9ydGFudDtcbiAgfVxuICAvKipcbiAgICAgICAgICogMS4gUmVzZXQgYW55IGxlZnRvdmVyIG9yIGNvbmZsaWN0aW5nIGBsZWZ0YC9gcmlnaHRgIHZhbHVlcy5cbiAgICAgICAgICovXG4gIC51LXB1c2gtNFxcLzZcXEB0YWJsZXRXaWRlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICAgIGxlZnQ6IDY2LjY2NjY3JSAhaW1wb3J0YW50O1xuICB9XG4gIC51LXB1bGwtNFxcLzZcXEB0YWJsZXRXaWRlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogNjYuNjY2NjclICFpbXBvcnRhbnQ7XG4gICAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICB9XG4gIC51LTVcXC82XFxAdGFibGV0V2lkZSB7XG4gICAgd2lkdGg6IDgzLjMzMzMzJSAhaW1wb3J0YW50O1xuICB9XG4gIC8qKlxuICAgICAgICAgKiAxLiBSZXNldCBhbnkgbGVmdG92ZXIgb3IgY29uZmxpY3RpbmcgYGxlZnRgL2ByaWdodGAgdmFsdWVzLlxuICAgICAgICAgKi9cbiAgLnUtcHVzaC01XFwvNlxcQHRhYmxldFdpZGUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gICAgbGVmdDogODMuMzMzMzMlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnUtcHVsbC01XFwvNlxcQHRhYmxldFdpZGUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiA4My4zMzMzMyUgIWltcG9ydGFudDtcbiAgICBsZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gIH1cbiAgLnUtNlxcLzZcXEB0YWJsZXRXaWRlIHtcbiAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICB9XG4gIC8qKlxuICAgICAgICAgKiAxLiBSZXNldCBhbnkgbGVmdG92ZXIgb3IgY29uZmxpY3RpbmcgYGxlZnRgL2ByaWdodGAgdmFsdWVzLlxuICAgICAgICAgKi9cbiAgLnUtcHVzaC02XFwvNlxcQHRhYmxldFdpZGUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gICAgbGVmdDogMTAwJSAhaW1wb3J0YW50O1xuICB9XG4gIC51LXB1bGwtNlxcLzZcXEB0YWJsZXRXaWRlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogMTAwJSAhaW1wb3J0YW50O1xuICAgIGxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgfVxuICAudS0xXFwvN1xcQHRhYmxldFdpZGUge1xuICAgIHdpZHRoOiAxNC4yODU3MSUgIWltcG9ydGFudDtcbiAgfVxuICAvKipcbiAgICAgICAgICogMS4gUmVzZXQgYW55IGxlZnRvdmVyIG9yIGNvbmZsaWN0aW5nIGBsZWZ0YC9gcmlnaHRgIHZhbHVlcy5cbiAgICAgICAgICovXG4gIC51LXB1c2gtMVxcLzdcXEB0YWJsZXRXaWRlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICAgIGxlZnQ6IDE0LjI4NTcxJSAhaW1wb3J0YW50O1xuICB9XG4gIC51LXB1bGwtMVxcLzdcXEB0YWJsZXRXaWRlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogMTQuMjg1NzElICFpbXBvcnRhbnQ7XG4gICAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICB9XG4gIC51LTJcXC83XFxAdGFibGV0V2lkZSB7XG4gICAgd2lkdGg6IDI4LjU3MTQzJSAhaW1wb3J0YW50O1xuICB9XG4gIC8qKlxuICAgICAgICAgKiAxLiBSZXNldCBhbnkgbGVmdG92ZXIgb3IgY29uZmxpY3RpbmcgYGxlZnRgL2ByaWdodGAgdmFsdWVzLlxuICAgICAgICAgKi9cbiAgLnUtcHVzaC0yXFwvN1xcQHRhYmxldFdpZGUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gICAgbGVmdDogMjguNTcxNDMlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnUtcHVsbC0yXFwvN1xcQHRhYmxldFdpZGUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiAyOC41NzE0MyUgIWltcG9ydGFudDtcbiAgICBsZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gIH1cbiAgLnUtM1xcLzdcXEB0YWJsZXRXaWRlIHtcbiAgICB3aWR0aDogNDIuODU3MTQlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLyoqXG4gICAgICAgICAqIDEuIFJlc2V0IGFueSBsZWZ0b3ZlciBvciBjb25mbGljdGluZyBgbGVmdGAvYHJpZ2h0YCB2YWx1ZXMuXG4gICAgICAgICAqL1xuICAudS1wdXNoLTNcXC83XFxAdGFibGV0V2lkZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgICBsZWZ0OiA0Mi44NTcxNCUgIWltcG9ydGFudDtcbiAgfVxuICAudS1wdWxsLTNcXC83XFxAdGFibGV0V2lkZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IDQyLjg1NzE0JSAhaW1wb3J0YW50O1xuICAgIGxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgfVxuICAudS00XFwvN1xcQHRhYmxldFdpZGUge1xuICAgIHdpZHRoOiA1Ny4xNDI4NiUgIWltcG9ydGFudDtcbiAgfVxuICAvKipcbiAgICAgICAgICogMS4gUmVzZXQgYW55IGxlZnRvdmVyIG9yIGNvbmZsaWN0aW5nIGBsZWZ0YC9gcmlnaHRgIHZhbHVlcy5cbiAgICAgICAgICovXG4gIC51LXB1c2gtNFxcLzdcXEB0YWJsZXRXaWRlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICAgIGxlZnQ6IDU3LjE0Mjg2JSAhaW1wb3J0YW50O1xuICB9XG4gIC51LXB1bGwtNFxcLzdcXEB0YWJsZXRXaWRlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogNTcuMTQyODYlICFpbXBvcnRhbnQ7XG4gICAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICB9XG4gIC51LTVcXC83XFxAdGFibGV0V2lkZSB7XG4gICAgd2lkdGg6IDcxLjQyODU3JSAhaW1wb3J0YW50O1xuICB9XG4gIC8qKlxuICAgICAgICAgKiAxLiBSZXNldCBhbnkgbGVmdG92ZXIgb3IgY29uZmxpY3RpbmcgYGxlZnRgL2ByaWdodGAgdmFsdWVzLlxuICAgICAgICAgKi9cbiAgLnUtcHVzaC01XFwvN1xcQHRhYmxldFdpZGUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gICAgbGVmdDogNzEuNDI4NTclICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnUtcHVsbC01XFwvN1xcQHRhYmxldFdpZGUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiA3MS40Mjg1NyUgIWltcG9ydGFudDtcbiAgICBsZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gIH1cbiAgLnUtNlxcLzdcXEB0YWJsZXRXaWRlIHtcbiAgICB3aWR0aDogODUuNzE0MjklICFpbXBvcnRhbnQ7XG4gIH1cbiAgLyoqXG4gICAgICAgICAqIDEuIFJlc2V0IGFueSBsZWZ0b3ZlciBvciBjb25mbGljdGluZyBgbGVmdGAvYHJpZ2h0YCB2YWx1ZXMuXG4gICAgICAgICAqL1xuICAudS1wdXNoLTZcXC83XFxAdGFibGV0V2lkZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgICBsZWZ0OiA4NS43MTQyOSUgIWltcG9ydGFudDtcbiAgfVxuICAudS1wdWxsLTZcXC83XFxAdGFibGV0V2lkZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IDg1LjcxNDI5JSAhaW1wb3J0YW50O1xuICAgIGxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgfVxuICAudS03XFwvN1xcQHRhYmxldFdpZGUge1xuICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLyoqXG4gICAgICAgICAqIDEuIFJlc2V0IGFueSBsZWZ0b3ZlciBvciBjb25mbGljdGluZyBgbGVmdGAvYHJpZ2h0YCB2YWx1ZXMuXG4gICAgICAgICAqL1xuICAudS1wdXNoLTdcXC83XFxAdGFibGV0V2lkZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgICBsZWZ0OiAxMDAlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnUtcHVsbC03XFwvN1xcQHRhYmxldFdpZGUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICB9XG4gIC51LTFcXC84XFxAdGFibGV0V2lkZSB7XG4gICAgd2lkdGg6IDEyLjUlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLyoqXG4gICAgICAgICAqIDEuIFJlc2V0IGFueSBsZWZ0b3ZlciBvciBjb25mbGljdGluZyBgbGVmdGAvYHJpZ2h0YCB2YWx1ZXMuXG4gICAgICAgICAqL1xuICAudS1wdXNoLTFcXC84XFxAdGFibGV0V2lkZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgICBsZWZ0OiAxMi41JSAhaW1wb3J0YW50O1xuICB9XG4gIC51LXB1bGwtMVxcLzhcXEB0YWJsZXRXaWRlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogMTIuNSUgIWltcG9ydGFudDtcbiAgICBsZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gIH1cbiAgLnUtMlxcLzhcXEB0YWJsZXRXaWRlIHtcbiAgICB3aWR0aDogMjUlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLyoqXG4gICAgICAgICAqIDEuIFJlc2V0IGFueSBsZWZ0b3ZlciBvciBjb25mbGljdGluZyBgbGVmdGAvYHJpZ2h0YCB2YWx1ZXMuXG4gICAgICAgICAqL1xuICAudS1wdXNoLTJcXC84XFxAdGFibGV0V2lkZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgICBsZWZ0OiAyNSUgIWltcG9ydGFudDtcbiAgfVxuICAudS1wdWxsLTJcXC84XFxAdGFibGV0V2lkZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IDI1JSAhaW1wb3J0YW50O1xuICAgIGxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgfVxuICAudS0zXFwvOFxcQHRhYmxldFdpZGUge1xuICAgIHdpZHRoOiAzNy41JSAhaW1wb3J0YW50O1xuICB9XG4gIC8qKlxuICAgICAgICAgKiAxLiBSZXNldCBhbnkgbGVmdG92ZXIgb3IgY29uZmxpY3RpbmcgYGxlZnRgL2ByaWdodGAgdmFsdWVzLlxuICAgICAgICAgKi9cbiAgLnUtcHVzaC0zXFwvOFxcQHRhYmxldFdpZGUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gICAgbGVmdDogMzcuNSUgIWltcG9ydGFudDtcbiAgfVxuICAudS1wdWxsLTNcXC84XFxAdGFibGV0V2lkZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IDM3LjUlICFpbXBvcnRhbnQ7XG4gICAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICB9XG4gIC51LTRcXC84XFxAdGFibGV0V2lkZSB7XG4gICAgd2lkdGg6IDUwJSAhaW1wb3J0YW50O1xuICB9XG4gIC8qKlxuICAgICAgICAgKiAxLiBSZXNldCBhbnkgbGVmdG92ZXIgb3IgY29uZmxpY3RpbmcgYGxlZnRgL2ByaWdodGAgdmFsdWVzLlxuICAgICAgICAgKi9cbiAgLnUtcHVzaC00XFwvOFxcQHRhYmxldFdpZGUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gICAgbGVmdDogNTAlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnUtcHVsbC00XFwvOFxcQHRhYmxldFdpZGUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiA1MCUgIWltcG9ydGFudDtcbiAgICBsZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gIH1cbiAgLnUtNVxcLzhcXEB0YWJsZXRXaWRlIHtcbiAgICB3aWR0aDogNjIuNSUgIWltcG9ydGFudDtcbiAgfVxuICAvKipcbiAgICAgICAgICogMS4gUmVzZXQgYW55IGxlZnRvdmVyIG9yIGNvbmZsaWN0aW5nIGBsZWZ0YC9gcmlnaHRgIHZhbHVlcy5cbiAgICAgICAgICovXG4gIC51LXB1c2gtNVxcLzhcXEB0YWJsZXRXaWRlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICAgIGxlZnQ6IDYyLjUlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnUtcHVsbC01XFwvOFxcQHRhYmxldFdpZGUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiA2Mi41JSAhaW1wb3J0YW50O1xuICAgIGxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgfVxuICAudS02XFwvOFxcQHRhYmxldFdpZGUge1xuICAgIHdpZHRoOiA3NSUgIWltcG9ydGFudDtcbiAgfVxuICAvKipcbiAgICAgICAgICogMS4gUmVzZXQgYW55IGxlZnRvdmVyIG9yIGNvbmZsaWN0aW5nIGBsZWZ0YC9gcmlnaHRgIHZhbHVlcy5cbiAgICAgICAgICovXG4gIC51LXB1c2gtNlxcLzhcXEB0YWJsZXRXaWRlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICAgIGxlZnQ6IDc1JSAhaW1wb3J0YW50O1xuICB9XG4gIC51LXB1bGwtNlxcLzhcXEB0YWJsZXRXaWRlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogNzUlICFpbXBvcnRhbnQ7XG4gICAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICB9XG4gIC51LTdcXC84XFxAdGFibGV0V2lkZSB7XG4gICAgd2lkdGg6IDg3LjUlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLyoqXG4gICAgICAgICAqIDEuIFJlc2V0IGFueSBsZWZ0b3ZlciBvciBjb25mbGljdGluZyBgbGVmdGAvYHJpZ2h0YCB2YWx1ZXMuXG4gICAgICAgICAqL1xuICAudS1wdXNoLTdcXC84XFxAdGFibGV0V2lkZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgICBsZWZ0OiA4Ny41JSAhaW1wb3J0YW50O1xuICB9XG4gIC51LXB1bGwtN1xcLzhcXEB0YWJsZXRXaWRlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogODcuNSUgIWltcG9ydGFudDtcbiAgICBsZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gIH1cbiAgLnUtOFxcLzhcXEB0YWJsZXRXaWRlIHtcbiAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICB9XG4gIC8qKlxuICAgICAgICAgKiAxLiBSZXNldCBhbnkgbGVmdG92ZXIgb3IgY29uZmxpY3RpbmcgYGxlZnRgL2ByaWdodGAgdmFsdWVzLlxuICAgICAgICAgKi9cbiAgLnUtcHVzaC04XFwvOFxcQHRhYmxldFdpZGUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gICAgbGVmdDogMTAwJSAhaW1wb3J0YW50O1xuICB9XG4gIC51LXB1bGwtOFxcLzhcXEB0YWJsZXRXaWRlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogMTAwJSAhaW1wb3J0YW50O1xuICAgIGxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgfVxuICAudS1wdXNoLW5vbmVcXEB0YWJsZXRXaWRlIHtcbiAgICBsZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnUtcHVsbC1ub25lXFxAdGFibGV0V2lkZSB7XG4gICAgcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogODBlbSkge1xuICAudS0xXFwvMVxcQGxhcHRvcCB7XG4gICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgfVxuICAvKipcbiAgICAgICAgICogMS4gUmVzZXQgYW55IGxlZnRvdmVyIG9yIGNvbmZsaWN0aW5nIGBsZWZ0YC9gcmlnaHRgIHZhbHVlcy5cbiAgICAgICAgICovXG4gIC51LXB1c2gtMVxcLzFcXEBsYXB0b3Age1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gICAgbGVmdDogMTAwJSAhaW1wb3J0YW50O1xuICB9XG4gIC51LXB1bGwtMVxcLzFcXEBsYXB0b3Age1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICB9XG4gIC51LTFcXC8yXFxAbGFwdG9wIHtcbiAgICB3aWR0aDogNTAlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLyoqXG4gICAgICAgICAqIDEuIFJlc2V0IGFueSBsZWZ0b3ZlciBvciBjb25mbGljdGluZyBgbGVmdGAvYHJpZ2h0YCB2YWx1ZXMuXG4gICAgICAgICAqL1xuICAudS1wdXNoLTFcXC8yXFxAbGFwdG9wIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICAgIGxlZnQ6IDUwJSAhaW1wb3J0YW50O1xuICB9XG4gIC51LXB1bGwtMVxcLzJcXEBsYXB0b3Age1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiA1MCUgIWltcG9ydGFudDtcbiAgICBsZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gIH1cbiAgLnUtMlxcLzJcXEBsYXB0b3Age1xuICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLyoqXG4gICAgICAgICAqIDEuIFJlc2V0IGFueSBsZWZ0b3ZlciBvciBjb25mbGljdGluZyBgbGVmdGAvYHJpZ2h0YCB2YWx1ZXMuXG4gICAgICAgICAqL1xuICAudS1wdXNoLTJcXC8yXFxAbGFwdG9wIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICAgIGxlZnQ6IDEwMCUgIWltcG9ydGFudDtcbiAgfVxuICAudS1wdWxsLTJcXC8yXFxAbGFwdG9wIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogMTAwJSAhaW1wb3J0YW50O1xuICAgIGxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgfVxuICAudS0xXFwvM1xcQGxhcHRvcCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzJSAhaW1wb3J0YW50O1xuICB9XG4gIC8qKlxuICAgICAgICAgKiAxLiBSZXNldCBhbnkgbGVmdG92ZXIgb3IgY29uZmxpY3RpbmcgYGxlZnRgL2ByaWdodGAgdmFsdWVzLlxuICAgICAgICAgKi9cbiAgLnUtcHVzaC0xXFwvM1xcQGxhcHRvcCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgICBsZWZ0OiAzMy4zMzMzMyUgIWltcG9ydGFudDtcbiAgfVxuICAudS1wdWxsLTFcXC8zXFxAbGFwdG9wIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogMzMuMzMzMzMlICFpbXBvcnRhbnQ7XG4gICAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICB9XG4gIC51LTJcXC8zXFxAbGFwdG9wIHtcbiAgICB3aWR0aDogNjYuNjY2NjclICFpbXBvcnRhbnQ7XG4gIH1cbiAgLyoqXG4gICAgICAgICAqIDEuIFJlc2V0IGFueSBsZWZ0b3ZlciBvciBjb25mbGljdGluZyBgbGVmdGAvYHJpZ2h0YCB2YWx1ZXMuXG4gICAgICAgICAqL1xuICAudS1wdXNoLTJcXC8zXFxAbGFwdG9wIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICAgIGxlZnQ6IDY2LjY2NjY3JSAhaW1wb3J0YW50O1xuICB9XG4gIC51LXB1bGwtMlxcLzNcXEBsYXB0b3Age1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiA2Ni42NjY2NyUgIWltcG9ydGFudDtcbiAgICBsZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gIH1cbiAgLnUtM1xcLzNcXEBsYXB0b3Age1xuICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLyoqXG4gICAgICAgICAqIDEuIFJlc2V0IGFueSBsZWZ0b3ZlciBvciBjb25mbGljdGluZyBgbGVmdGAvYHJpZ2h0YCB2YWx1ZXMuXG4gICAgICAgICAqL1xuICAudS1wdXNoLTNcXC8zXFxAbGFwdG9wIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICAgIGxlZnQ6IDEwMCUgIWltcG9ydGFudDtcbiAgfVxuICAudS1wdWxsLTNcXC8zXFxAbGFwdG9wIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogMTAwJSAhaW1wb3J0YW50O1xuICAgIGxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgfVxuICAudS0xXFwvNFxcQGxhcHRvcCB7XG4gICAgd2lkdGg6IDI1JSAhaW1wb3J0YW50O1xuICB9XG4gIC8qKlxuICAgICAgICAgKiAxLiBSZXNldCBhbnkgbGVmdG92ZXIgb3IgY29uZmxpY3RpbmcgYGxlZnRgL2ByaWdodGAgdmFsdWVzLlxuICAgICAgICAgKi9cbiAgLnUtcHVzaC0xXFwvNFxcQGxhcHRvcCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgICBsZWZ0OiAyNSUgIWltcG9ydGFudDtcbiAgfVxuICAudS1wdWxsLTFcXC80XFxAbGFwdG9wIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogMjUlICFpbXBvcnRhbnQ7XG4gICAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICB9XG4gIC51LTJcXC80XFxAbGFwdG9wIHtcbiAgICB3aWR0aDogNTAlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLyoqXG4gICAgICAgICAqIDEuIFJlc2V0IGFueSBsZWZ0b3ZlciBvciBjb25mbGljdGluZyBgbGVmdGAvYHJpZ2h0YCB2YWx1ZXMuXG4gICAgICAgICAqL1xuICAudS1wdXNoLTJcXC80XFxAbGFwdG9wIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICAgIGxlZnQ6IDUwJSAhaW1wb3J0YW50O1xuICB9XG4gIC51LXB1bGwtMlxcLzRcXEBsYXB0b3Age1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiA1MCUgIWltcG9ydGFudDtcbiAgICBsZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gIH1cbiAgLnUtM1xcLzRcXEBsYXB0b3Age1xuICAgIHdpZHRoOiA3NSUgIWltcG9ydGFudDtcbiAgfVxuICAvKipcbiAgICAgICAgICogMS4gUmVzZXQgYW55IGxlZnRvdmVyIG9yIGNvbmZsaWN0aW5nIGBsZWZ0YC9gcmlnaHRgIHZhbHVlcy5cbiAgICAgICAgICovXG4gIC51LXB1c2gtM1xcLzRcXEBsYXB0b3Age1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gICAgbGVmdDogNzUlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnUtcHVsbC0zXFwvNFxcQGxhcHRvcCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IDc1JSAhaW1wb3J0YW50O1xuICAgIGxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgfVxuICAudS00XFwvNFxcQGxhcHRvcCB7XG4gICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgfVxuICAvKipcbiAgICAgICAgICogMS4gUmVzZXQgYW55IGxlZnRvdmVyIG9yIGNvbmZsaWN0aW5nIGBsZWZ0YC9gcmlnaHRgIHZhbHVlcy5cbiAgICAgICAgICovXG4gIC51LXB1c2gtNFxcLzRcXEBsYXB0b3Age1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gICAgbGVmdDogMTAwJSAhaW1wb3J0YW50O1xuICB9XG4gIC51LXB1bGwtNFxcLzRcXEBsYXB0b3Age1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICB9XG4gIC51LTFcXC81XFxAbGFwdG9wIHtcbiAgICB3aWR0aDogMjAlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLyoqXG4gICAgICAgICAqIDEuIFJlc2V0IGFueSBsZWZ0b3ZlciBvciBjb25mbGljdGluZyBgbGVmdGAvYHJpZ2h0YCB2YWx1ZXMuXG4gICAgICAgICAqL1xuICAudS1wdXNoLTFcXC81XFxAbGFwdG9wIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICAgIGxlZnQ6IDIwJSAhaW1wb3J0YW50O1xuICB9XG4gIC51LXB1bGwtMVxcLzVcXEBsYXB0b3Age1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiAyMCUgIWltcG9ydGFudDtcbiAgICBsZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gIH1cbiAgLnUtMlxcLzVcXEBsYXB0b3Age1xuICAgIHdpZHRoOiA0MCUgIWltcG9ydGFudDtcbiAgfVxuICAvKipcbiAgICAgICAgICogMS4gUmVzZXQgYW55IGxlZnRvdmVyIG9yIGNvbmZsaWN0aW5nIGBsZWZ0YC9gcmlnaHRgIHZhbHVlcy5cbiAgICAgICAgICovXG4gIC51LXB1c2gtMlxcLzVcXEBsYXB0b3Age1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gICAgbGVmdDogNDAlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnUtcHVsbC0yXFwvNVxcQGxhcHRvcCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IDQwJSAhaW1wb3J0YW50O1xuICAgIGxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgfVxuICAudS0zXFwvNVxcQGxhcHRvcCB7XG4gICAgd2lkdGg6IDYwJSAhaW1wb3J0YW50O1xuICB9XG4gIC8qKlxuICAgICAgICAgKiAxLiBSZXNldCBhbnkgbGVmdG92ZXIgb3IgY29uZmxpY3RpbmcgYGxlZnRgL2ByaWdodGAgdmFsdWVzLlxuICAgICAgICAgKi9cbiAgLnUtcHVzaC0zXFwvNVxcQGxhcHRvcCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgICBsZWZ0OiA2MCUgIWltcG9ydGFudDtcbiAgfVxuICAudS1wdWxsLTNcXC81XFxAbGFwdG9wIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogNjAlICFpbXBvcnRhbnQ7XG4gICAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICB9XG4gIC51LTRcXC81XFxAbGFwdG9wIHtcbiAgICB3aWR0aDogODAlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLyoqXG4gICAgICAgICAqIDEuIFJlc2V0IGFueSBsZWZ0b3ZlciBvciBjb25mbGljdGluZyBgbGVmdGAvYHJpZ2h0YCB2YWx1ZXMuXG4gICAgICAgICAqL1xuICAudS1wdXNoLTRcXC81XFxAbGFwdG9wIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICAgIGxlZnQ6IDgwJSAhaW1wb3J0YW50O1xuICB9XG4gIC51LXB1bGwtNFxcLzVcXEBsYXB0b3Age1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiA4MCUgIWltcG9ydGFudDtcbiAgICBsZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gIH1cbiAgLnUtNVxcLzVcXEBsYXB0b3Age1xuICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLyoqXG4gICAgICAgICAqIDEuIFJlc2V0IGFueSBsZWZ0b3ZlciBvciBjb25mbGljdGluZyBgbGVmdGAvYHJpZ2h0YCB2YWx1ZXMuXG4gICAgICAgICAqL1xuICAudS1wdXNoLTVcXC81XFxAbGFwdG9wIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICAgIGxlZnQ6IDEwMCUgIWltcG9ydGFudDtcbiAgfVxuICAudS1wdWxsLTVcXC81XFxAbGFwdG9wIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogMTAwJSAhaW1wb3J0YW50O1xuICAgIGxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgfVxuICAudS0xXFwvNlxcQGxhcHRvcCB7XG4gICAgd2lkdGg6IDE2LjY2NjY3JSAhaW1wb3J0YW50O1xuICB9XG4gIC8qKlxuICAgICAgICAgKiAxLiBSZXNldCBhbnkgbGVmdG92ZXIgb3IgY29uZmxpY3RpbmcgYGxlZnRgL2ByaWdodGAgdmFsdWVzLlxuICAgICAgICAgKi9cbiAgLnUtcHVzaC0xXFwvNlxcQGxhcHRvcCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgICBsZWZ0OiAxNi42NjY2NyUgIWltcG9ydGFudDtcbiAgfVxuICAudS1wdWxsLTFcXC82XFxAbGFwdG9wIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogMTYuNjY2NjclICFpbXBvcnRhbnQ7XG4gICAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICB9XG4gIC51LTJcXC82XFxAbGFwdG9wIHtcbiAgICB3aWR0aDogMzMuMzMzMzMlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLyoqXG4gICAgICAgICAqIDEuIFJlc2V0IGFueSBsZWZ0b3ZlciBvciBjb25mbGljdGluZyBgbGVmdGAvYHJpZ2h0YCB2YWx1ZXMuXG4gICAgICAgICAqL1xuICAudS1wdXNoLTJcXC82XFxAbGFwdG9wIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICAgIGxlZnQ6IDMzLjMzMzMzJSAhaW1wb3J0YW50O1xuICB9XG4gIC51LXB1bGwtMlxcLzZcXEBsYXB0b3Age1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiAzMy4zMzMzMyUgIWltcG9ydGFudDtcbiAgICBsZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gIH1cbiAgLnUtM1xcLzZcXEBsYXB0b3Age1xuICAgIHdpZHRoOiA1MCUgIWltcG9ydGFudDtcbiAgfVxuICAvKipcbiAgICAgICAgICogMS4gUmVzZXQgYW55IGxlZnRvdmVyIG9yIGNvbmZsaWN0aW5nIGBsZWZ0YC9gcmlnaHRgIHZhbHVlcy5cbiAgICAgICAgICovXG4gIC51LXB1c2gtM1xcLzZcXEBsYXB0b3Age1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gICAgbGVmdDogNTAlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnUtcHVsbC0zXFwvNlxcQGxhcHRvcCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IDUwJSAhaW1wb3J0YW50O1xuICAgIGxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgfVxuICAudS00XFwvNlxcQGxhcHRvcCB7XG4gICAgd2lkdGg6IDY2LjY2NjY3JSAhaW1wb3J0YW50O1xuICB9XG4gIC8qKlxuICAgICAgICAgKiAxLiBSZXNldCBhbnkgbGVmdG92ZXIgb3IgY29uZmxpY3RpbmcgYGxlZnRgL2ByaWdodGAgdmFsdWVzLlxuICAgICAgICAgKi9cbiAgLnUtcHVzaC00XFwvNlxcQGxhcHRvcCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgICBsZWZ0OiA2Ni42NjY2NyUgIWltcG9ydGFudDtcbiAgfVxuICAudS1wdWxsLTRcXC82XFxAbGFwdG9wIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogNjYuNjY2NjclICFpbXBvcnRhbnQ7XG4gICAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICB9XG4gIC51LTVcXC82XFxAbGFwdG9wIHtcbiAgICB3aWR0aDogODMuMzMzMzMlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLyoqXG4gICAgICAgICAqIDEuIFJlc2V0IGFueSBsZWZ0b3ZlciBvciBjb25mbGljdGluZyBgbGVmdGAvYHJpZ2h0YCB2YWx1ZXMuXG4gICAgICAgICAqL1xuICAudS1wdXNoLTVcXC82XFxAbGFwdG9wIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICAgIGxlZnQ6IDgzLjMzMzMzJSAhaW1wb3J0YW50O1xuICB9XG4gIC51LXB1bGwtNVxcLzZcXEBsYXB0b3Age1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiA4My4zMzMzMyUgIWltcG9ydGFudDtcbiAgICBsZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gIH1cbiAgLnUtNlxcLzZcXEBsYXB0b3Age1xuICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLyoqXG4gICAgICAgICAqIDEuIFJlc2V0IGFueSBsZWZ0b3ZlciBvciBjb25mbGljdGluZyBgbGVmdGAvYHJpZ2h0YCB2YWx1ZXMuXG4gICAgICAgICAqL1xuICAudS1wdXNoLTZcXC82XFxAbGFwdG9wIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICAgIGxlZnQ6IDEwMCUgIWltcG9ydGFudDtcbiAgfVxuICAudS1wdWxsLTZcXC82XFxAbGFwdG9wIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogMTAwJSAhaW1wb3J0YW50O1xuICAgIGxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgfVxuICAudS0xXFwvN1xcQGxhcHRvcCB7XG4gICAgd2lkdGg6IDE0LjI4NTcxJSAhaW1wb3J0YW50O1xuICB9XG4gIC8qKlxuICAgICAgICAgKiAxLiBSZXNldCBhbnkgbGVmdG92ZXIgb3IgY29uZmxpY3RpbmcgYGxlZnRgL2ByaWdodGAgdmFsdWVzLlxuICAgICAgICAgKi9cbiAgLnUtcHVzaC0xXFwvN1xcQGxhcHRvcCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgICBsZWZ0OiAxNC4yODU3MSUgIWltcG9ydGFudDtcbiAgfVxuICAudS1wdWxsLTFcXC83XFxAbGFwdG9wIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogMTQuMjg1NzElICFpbXBvcnRhbnQ7XG4gICAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICB9XG4gIC51LTJcXC83XFxAbGFwdG9wIHtcbiAgICB3aWR0aDogMjguNTcxNDMlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLyoqXG4gICAgICAgICAqIDEuIFJlc2V0IGFueSBsZWZ0b3ZlciBvciBjb25mbGljdGluZyBgbGVmdGAvYHJpZ2h0YCB2YWx1ZXMuXG4gICAgICAgICAqL1xuICAudS1wdXNoLTJcXC83XFxAbGFwdG9wIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICAgIGxlZnQ6IDI4LjU3MTQzJSAhaW1wb3J0YW50O1xuICB9XG4gIC51LXB1bGwtMlxcLzdcXEBsYXB0b3Age1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiAyOC41NzE0MyUgIWltcG9ydGFudDtcbiAgICBsZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gIH1cbiAgLnUtM1xcLzdcXEBsYXB0b3Age1xuICAgIHdpZHRoOiA0Mi44NTcxNCUgIWltcG9ydGFudDtcbiAgfVxuICAvKipcbiAgICAgICAgICogMS4gUmVzZXQgYW55IGxlZnRvdmVyIG9yIGNvbmZsaWN0aW5nIGBsZWZ0YC9gcmlnaHRgIHZhbHVlcy5cbiAgICAgICAgICovXG4gIC51LXB1c2gtM1xcLzdcXEBsYXB0b3Age1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gICAgbGVmdDogNDIuODU3MTQlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnUtcHVsbC0zXFwvN1xcQGxhcHRvcCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IDQyLjg1NzE0JSAhaW1wb3J0YW50O1xuICAgIGxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgfVxuICAudS00XFwvN1xcQGxhcHRvcCB7XG4gICAgd2lkdGg6IDU3LjE0Mjg2JSAhaW1wb3J0YW50O1xuICB9XG4gIC8qKlxuICAgICAgICAgKiAxLiBSZXNldCBhbnkgbGVmdG92ZXIgb3IgY29uZmxpY3RpbmcgYGxlZnRgL2ByaWdodGAgdmFsdWVzLlxuICAgICAgICAgKi9cbiAgLnUtcHVzaC00XFwvN1xcQGxhcHRvcCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgICBsZWZ0OiA1Ny4xNDI4NiUgIWltcG9ydGFudDtcbiAgfVxuICAudS1wdWxsLTRcXC83XFxAbGFwdG9wIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogNTcuMTQyODYlICFpbXBvcnRhbnQ7XG4gICAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICB9XG4gIC51LTVcXC83XFxAbGFwdG9wIHtcbiAgICB3aWR0aDogNzEuNDI4NTclICFpbXBvcnRhbnQ7XG4gIH1cbiAgLyoqXG4gICAgICAgICAqIDEuIFJlc2V0IGFueSBsZWZ0b3ZlciBvciBjb25mbGljdGluZyBgbGVmdGAvYHJpZ2h0YCB2YWx1ZXMuXG4gICAgICAgICAqL1xuICAudS1wdXNoLTVcXC83XFxAbGFwdG9wIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICAgIGxlZnQ6IDcxLjQyODU3JSAhaW1wb3J0YW50O1xuICB9XG4gIC51LXB1bGwtNVxcLzdcXEBsYXB0b3Age1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiA3MS40Mjg1NyUgIWltcG9ydGFudDtcbiAgICBsZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gIH1cbiAgLnUtNlxcLzdcXEBsYXB0b3Age1xuICAgIHdpZHRoOiA4NS43MTQyOSUgIWltcG9ydGFudDtcbiAgfVxuICAvKipcbiAgICAgICAgICogMS4gUmVzZXQgYW55IGxlZnRvdmVyIG9yIGNvbmZsaWN0aW5nIGBsZWZ0YC9gcmlnaHRgIHZhbHVlcy5cbiAgICAgICAgICovXG4gIC51LXB1c2gtNlxcLzdcXEBsYXB0b3Age1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gICAgbGVmdDogODUuNzE0MjklICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnUtcHVsbC02XFwvN1xcQGxhcHRvcCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IDg1LjcxNDI5JSAhaW1wb3J0YW50O1xuICAgIGxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgfVxuICAudS03XFwvN1xcQGxhcHRvcCB7XG4gICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgfVxuICAvKipcbiAgICAgICAgICogMS4gUmVzZXQgYW55IGxlZnRvdmVyIG9yIGNvbmZsaWN0aW5nIGBsZWZ0YC9gcmlnaHRgIHZhbHVlcy5cbiAgICAgICAgICovXG4gIC51LXB1c2gtN1xcLzdcXEBsYXB0b3Age1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gICAgbGVmdDogMTAwJSAhaW1wb3J0YW50O1xuICB9XG4gIC51LXB1bGwtN1xcLzdcXEBsYXB0b3Age1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICB9XG4gIC51LTFcXC84XFxAbGFwdG9wIHtcbiAgICB3aWR0aDogMTIuNSUgIWltcG9ydGFudDtcbiAgfVxuICAvKipcbiAgICAgICAgICogMS4gUmVzZXQgYW55IGxlZnRvdmVyIG9yIGNvbmZsaWN0aW5nIGBsZWZ0YC9gcmlnaHRgIHZhbHVlcy5cbiAgICAgICAgICovXG4gIC51LXB1c2gtMVxcLzhcXEBsYXB0b3Age1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gICAgbGVmdDogMTIuNSUgIWltcG9ydGFudDtcbiAgfVxuICAudS1wdWxsLTFcXC84XFxAbGFwdG9wIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogMTIuNSUgIWltcG9ydGFudDtcbiAgICBsZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gIH1cbiAgLnUtMlxcLzhcXEBsYXB0b3Age1xuICAgIHdpZHRoOiAyNSUgIWltcG9ydGFudDtcbiAgfVxuICAvKipcbiAgICAgICAgICogMS4gUmVzZXQgYW55IGxlZnRvdmVyIG9yIGNvbmZsaWN0aW5nIGBsZWZ0YC9gcmlnaHRgIHZhbHVlcy5cbiAgICAgICAgICovXG4gIC51LXB1c2gtMlxcLzhcXEBsYXB0b3Age1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gICAgbGVmdDogMjUlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnUtcHVsbC0yXFwvOFxcQGxhcHRvcCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IDI1JSAhaW1wb3J0YW50O1xuICAgIGxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgfVxuICAudS0zXFwvOFxcQGxhcHRvcCB7XG4gICAgd2lkdGg6IDM3LjUlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLyoqXG4gICAgICAgICAqIDEuIFJlc2V0IGFueSBsZWZ0b3ZlciBvciBjb25mbGljdGluZyBgbGVmdGAvYHJpZ2h0YCB2YWx1ZXMuXG4gICAgICAgICAqL1xuICAudS1wdXNoLTNcXC84XFxAbGFwdG9wIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICAgIGxlZnQ6IDM3LjUlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnUtcHVsbC0zXFwvOFxcQGxhcHRvcCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IDM3LjUlICFpbXBvcnRhbnQ7XG4gICAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICB9XG4gIC51LTRcXC84XFxAbGFwdG9wIHtcbiAgICB3aWR0aDogNTAlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLyoqXG4gICAgICAgICAqIDEuIFJlc2V0IGFueSBsZWZ0b3ZlciBvciBjb25mbGljdGluZyBgbGVmdGAvYHJpZ2h0YCB2YWx1ZXMuXG4gICAgICAgICAqL1xuICAudS1wdXNoLTRcXC84XFxAbGFwdG9wIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICAgIGxlZnQ6IDUwJSAhaW1wb3J0YW50O1xuICB9XG4gIC51LXB1bGwtNFxcLzhcXEBsYXB0b3Age1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiA1MCUgIWltcG9ydGFudDtcbiAgICBsZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gIH1cbiAgLnUtNVxcLzhcXEBsYXB0b3Age1xuICAgIHdpZHRoOiA2Mi41JSAhaW1wb3J0YW50O1xuICB9XG4gIC8qKlxuICAgICAgICAgKiAxLiBSZXNldCBhbnkgbGVmdG92ZXIgb3IgY29uZmxpY3RpbmcgYGxlZnRgL2ByaWdodGAgdmFsdWVzLlxuICAgICAgICAgKi9cbiAgLnUtcHVzaC01XFwvOFxcQGxhcHRvcCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgICBsZWZ0OiA2Mi41JSAhaW1wb3J0YW50O1xuICB9XG4gIC51LXB1bGwtNVxcLzhcXEBsYXB0b3Age1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiA2Mi41JSAhaW1wb3J0YW50O1xuICAgIGxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgfVxuICAudS02XFwvOFxcQGxhcHRvcCB7XG4gICAgd2lkdGg6IDc1JSAhaW1wb3J0YW50O1xuICB9XG4gIC8qKlxuICAgICAgICAgKiAxLiBSZXNldCBhbnkgbGVmdG92ZXIgb3IgY29uZmxpY3RpbmcgYGxlZnRgL2ByaWdodGAgdmFsdWVzLlxuICAgICAgICAgKi9cbiAgLnUtcHVzaC02XFwvOFxcQGxhcHRvcCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgICBsZWZ0OiA3NSUgIWltcG9ydGFudDtcbiAgfVxuICAudS1wdWxsLTZcXC84XFxAbGFwdG9wIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogNzUlICFpbXBvcnRhbnQ7XG4gICAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICB9XG4gIC51LTdcXC84XFxAbGFwdG9wIHtcbiAgICB3aWR0aDogODcuNSUgIWltcG9ydGFudDtcbiAgfVxuICAvKipcbiAgICAgICAgICogMS4gUmVzZXQgYW55IGxlZnRvdmVyIG9yIGNvbmZsaWN0aW5nIGBsZWZ0YC9gcmlnaHRgIHZhbHVlcy5cbiAgICAgICAgICovXG4gIC51LXB1c2gtN1xcLzhcXEBsYXB0b3Age1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gICAgbGVmdDogODcuNSUgIWltcG9ydGFudDtcbiAgfVxuICAudS1wdWxsLTdcXC84XFxAbGFwdG9wIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogODcuNSUgIWltcG9ydGFudDtcbiAgICBsZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gIH1cbiAgLnUtOFxcLzhcXEBsYXB0b3Age1xuICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLyoqXG4gICAgICAgICAqIDEuIFJlc2V0IGFueSBsZWZ0b3ZlciBvciBjb25mbGljdGluZyBgbGVmdGAvYHJpZ2h0YCB2YWx1ZXMuXG4gICAgICAgICAqL1xuICAudS1wdXNoLThcXC84XFxAbGFwdG9wIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICAgIGxlZnQ6IDEwMCUgIWltcG9ydGFudDtcbiAgfVxuICAudS1wdWxsLThcXC84XFxAbGFwdG9wIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogMTAwJSAhaW1wb3J0YW50O1xuICAgIGxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgfVxuICAudS1wdXNoLW5vbmVcXEBsYXB0b3Age1xuICAgIGxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgfVxuICAudS1wdWxsLW5vbmVcXEBsYXB0b3Age1xuICAgIHJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgLnUtMVxcLzFcXEBkZXNrdG9wIHtcbiAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICB9XG4gIC8qKlxuICAgICAgICAgKiAxLiBSZXNldCBhbnkgbGVmdG92ZXIgb3IgY29uZmxpY3RpbmcgYGxlZnRgL2ByaWdodGAgdmFsdWVzLlxuICAgICAgICAgKi9cbiAgLnUtcHVzaC0xXFwvMVxcQGRlc2t0b3Age1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gICAgbGVmdDogMTAwJSAhaW1wb3J0YW50O1xuICB9XG4gIC51LXB1bGwtMVxcLzFcXEBkZXNrdG9wIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogMTAwJSAhaW1wb3J0YW50O1xuICAgIGxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgfVxuICAudS0xXFwvMlxcQGRlc2t0b3Age1xuICAgIHdpZHRoOiA1MCUgIWltcG9ydGFudDtcbiAgfVxuICAvKipcbiAgICAgICAgICogMS4gUmVzZXQgYW55IGxlZnRvdmVyIG9yIGNvbmZsaWN0aW5nIGBsZWZ0YC9gcmlnaHRgIHZhbHVlcy5cbiAgICAgICAgICovXG4gIC51LXB1c2gtMVxcLzJcXEBkZXNrdG9wIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICAgIGxlZnQ6IDUwJSAhaW1wb3J0YW50O1xuICB9XG4gIC51LXB1bGwtMVxcLzJcXEBkZXNrdG9wIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogNTAlICFpbXBvcnRhbnQ7XG4gICAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICB9XG4gIC51LTJcXC8yXFxAZGVza3RvcCB7XG4gICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgfVxuICAvKipcbiAgICAgICAgICogMS4gUmVzZXQgYW55IGxlZnRvdmVyIG9yIGNvbmZsaWN0aW5nIGBsZWZ0YC9gcmlnaHRgIHZhbHVlcy5cbiAgICAgICAgICovXG4gIC51LXB1c2gtMlxcLzJcXEBkZXNrdG9wIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICAgIGxlZnQ6IDEwMCUgIWltcG9ydGFudDtcbiAgfVxuICAudS1wdWxsLTJcXC8yXFxAZGVza3RvcCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IDEwMCUgIWltcG9ydGFudDtcbiAgICBsZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gIH1cbiAgLnUtMVxcLzNcXEBkZXNrdG9wIHtcbiAgICB3aWR0aDogMzMuMzMzMzMlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLyoqXG4gICAgICAgICAqIDEuIFJlc2V0IGFueSBsZWZ0b3ZlciBvciBjb25mbGljdGluZyBgbGVmdGAvYHJpZ2h0YCB2YWx1ZXMuXG4gICAgICAgICAqL1xuICAudS1wdXNoLTFcXC8zXFxAZGVza3RvcCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgICBsZWZ0OiAzMy4zMzMzMyUgIWltcG9ydGFudDtcbiAgfVxuICAudS1wdWxsLTFcXC8zXFxAZGVza3RvcCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IDMzLjMzMzMzJSAhaW1wb3J0YW50O1xuICAgIGxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgfVxuICAudS0yXFwvM1xcQGRlc2t0b3Age1xuICAgIHdpZHRoOiA2Ni42NjY2NyUgIWltcG9ydGFudDtcbiAgfVxuICAvKipcbiAgICAgICAgICogMS4gUmVzZXQgYW55IGxlZnRvdmVyIG9yIGNvbmZsaWN0aW5nIGBsZWZ0YC9gcmlnaHRgIHZhbHVlcy5cbiAgICAgICAgICovXG4gIC51LXB1c2gtMlxcLzNcXEBkZXNrdG9wIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICAgIGxlZnQ6IDY2LjY2NjY3JSAhaW1wb3J0YW50O1xuICB9XG4gIC51LXB1bGwtMlxcLzNcXEBkZXNrdG9wIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogNjYuNjY2NjclICFpbXBvcnRhbnQ7XG4gICAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICB9XG4gIC51LTNcXC8zXFxAZGVza3RvcCB7XG4gICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgfVxuICAvKipcbiAgICAgICAgICogMS4gUmVzZXQgYW55IGxlZnRvdmVyIG9yIGNvbmZsaWN0aW5nIGBsZWZ0YC9gcmlnaHRgIHZhbHVlcy5cbiAgICAgICAgICovXG4gIC51LXB1c2gtM1xcLzNcXEBkZXNrdG9wIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICAgIGxlZnQ6IDEwMCUgIWltcG9ydGFudDtcbiAgfVxuICAudS1wdWxsLTNcXC8zXFxAZGVza3RvcCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IDEwMCUgIWltcG9ydGFudDtcbiAgICBsZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gIH1cbiAgLnUtMVxcLzRcXEBkZXNrdG9wIHtcbiAgICB3aWR0aDogMjUlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLyoqXG4gICAgICAgICAqIDEuIFJlc2V0IGFueSBsZWZ0b3ZlciBvciBjb25mbGljdGluZyBgbGVmdGAvYHJpZ2h0YCB2YWx1ZXMuXG4gICAgICAgICAqL1xuICAudS1wdXNoLTFcXC80XFxAZGVza3RvcCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgICBsZWZ0OiAyNSUgIWltcG9ydGFudDtcbiAgfVxuICAudS1wdWxsLTFcXC80XFxAZGVza3RvcCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IDI1JSAhaW1wb3J0YW50O1xuICAgIGxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgfVxuICAudS0yXFwvNFxcQGRlc2t0b3Age1xuICAgIHdpZHRoOiA1MCUgIWltcG9ydGFudDtcbiAgfVxuICAvKipcbiAgICAgICAgICogMS4gUmVzZXQgYW55IGxlZnRvdmVyIG9yIGNvbmZsaWN0aW5nIGBsZWZ0YC9gcmlnaHRgIHZhbHVlcy5cbiAgICAgICAgICovXG4gIC51LXB1c2gtMlxcLzRcXEBkZXNrdG9wIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICAgIGxlZnQ6IDUwJSAhaW1wb3J0YW50O1xuICB9XG4gIC51LXB1bGwtMlxcLzRcXEBkZXNrdG9wIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogNTAlICFpbXBvcnRhbnQ7XG4gICAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICB9XG4gIC51LTNcXC80XFxAZGVza3RvcCB7XG4gICAgd2lkdGg6IDc1JSAhaW1wb3J0YW50O1xuICB9XG4gIC8qKlxuICAgICAgICAgKiAxLiBSZXNldCBhbnkgbGVmdG92ZXIgb3IgY29uZmxpY3RpbmcgYGxlZnRgL2ByaWdodGAgdmFsdWVzLlxuICAgICAgICAgKi9cbiAgLnUtcHVzaC0zXFwvNFxcQGRlc2t0b3Age1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gICAgbGVmdDogNzUlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnUtcHVsbC0zXFwvNFxcQGRlc2t0b3Age1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiA3NSUgIWltcG9ydGFudDtcbiAgICBsZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gIH1cbiAgLnUtNFxcLzRcXEBkZXNrdG9wIHtcbiAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICB9XG4gIC8qKlxuICAgICAgICAgKiAxLiBSZXNldCBhbnkgbGVmdG92ZXIgb3IgY29uZmxpY3RpbmcgYGxlZnRgL2ByaWdodGAgdmFsdWVzLlxuICAgICAgICAgKi9cbiAgLnUtcHVzaC00XFwvNFxcQGRlc2t0b3Age1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gICAgbGVmdDogMTAwJSAhaW1wb3J0YW50O1xuICB9XG4gIC51LXB1bGwtNFxcLzRcXEBkZXNrdG9wIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogMTAwJSAhaW1wb3J0YW50O1xuICAgIGxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgfVxuICAudS0xXFwvNVxcQGRlc2t0b3Age1xuICAgIHdpZHRoOiAyMCUgIWltcG9ydGFudDtcbiAgfVxuICAvKipcbiAgICAgICAgICogMS4gUmVzZXQgYW55IGxlZnRvdmVyIG9yIGNvbmZsaWN0aW5nIGBsZWZ0YC9gcmlnaHRgIHZhbHVlcy5cbiAgICAgICAgICovXG4gIC51LXB1c2gtMVxcLzVcXEBkZXNrdG9wIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICAgIGxlZnQ6IDIwJSAhaW1wb3J0YW50O1xuICB9XG4gIC51LXB1bGwtMVxcLzVcXEBkZXNrdG9wIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogMjAlICFpbXBvcnRhbnQ7XG4gICAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICB9XG4gIC51LTJcXC81XFxAZGVza3RvcCB7XG4gICAgd2lkdGg6IDQwJSAhaW1wb3J0YW50O1xuICB9XG4gIC8qKlxuICAgICAgICAgKiAxLiBSZXNldCBhbnkgbGVmdG92ZXIgb3IgY29uZmxpY3RpbmcgYGxlZnRgL2ByaWdodGAgdmFsdWVzLlxuICAgICAgICAgKi9cbiAgLnUtcHVzaC0yXFwvNVxcQGRlc2t0b3Age1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gICAgbGVmdDogNDAlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnUtcHVsbC0yXFwvNVxcQGRlc2t0b3Age1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiA0MCUgIWltcG9ydGFudDtcbiAgICBsZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gIH1cbiAgLnUtM1xcLzVcXEBkZXNrdG9wIHtcbiAgICB3aWR0aDogNjAlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLyoqXG4gICAgICAgICAqIDEuIFJlc2V0IGFueSBsZWZ0b3ZlciBvciBjb25mbGljdGluZyBgbGVmdGAvYHJpZ2h0YCB2YWx1ZXMuXG4gICAgICAgICAqL1xuICAudS1wdXNoLTNcXC81XFxAZGVza3RvcCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgICBsZWZ0OiA2MCUgIWltcG9ydGFudDtcbiAgfVxuICAudS1wdWxsLTNcXC81XFxAZGVza3RvcCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IDYwJSAhaW1wb3J0YW50O1xuICAgIGxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgfVxuICAudS00XFwvNVxcQGRlc2t0b3Age1xuICAgIHdpZHRoOiA4MCUgIWltcG9ydGFudDtcbiAgfVxuICAvKipcbiAgICAgICAgICogMS4gUmVzZXQgYW55IGxlZnRvdmVyIG9yIGNvbmZsaWN0aW5nIGBsZWZ0YC9gcmlnaHRgIHZhbHVlcy5cbiAgICAgICAgICovXG4gIC51LXB1c2gtNFxcLzVcXEBkZXNrdG9wIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICAgIGxlZnQ6IDgwJSAhaW1wb3J0YW50O1xuICB9XG4gIC51LXB1bGwtNFxcLzVcXEBkZXNrdG9wIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogODAlICFpbXBvcnRhbnQ7XG4gICAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICB9XG4gIC51LTVcXC81XFxAZGVza3RvcCB7XG4gICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgfVxuICAvKipcbiAgICAgICAgICogMS4gUmVzZXQgYW55IGxlZnRvdmVyIG9yIGNvbmZsaWN0aW5nIGBsZWZ0YC9gcmlnaHRgIHZhbHVlcy5cbiAgICAgICAgICovXG4gIC51LXB1c2gtNVxcLzVcXEBkZXNrdG9wIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICAgIGxlZnQ6IDEwMCUgIWltcG9ydGFudDtcbiAgfVxuICAudS1wdWxsLTVcXC81XFxAZGVza3RvcCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IDEwMCUgIWltcG9ydGFudDtcbiAgICBsZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gIH1cbiAgLnUtMVxcLzZcXEBkZXNrdG9wIHtcbiAgICB3aWR0aDogMTYuNjY2NjclICFpbXBvcnRhbnQ7XG4gIH1cbiAgLyoqXG4gICAgICAgICAqIDEuIFJlc2V0IGFueSBsZWZ0b3ZlciBvciBjb25mbGljdGluZyBgbGVmdGAvYHJpZ2h0YCB2YWx1ZXMuXG4gICAgICAgICAqL1xuICAudS1wdXNoLTFcXC82XFxAZGVza3RvcCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgICBsZWZ0OiAxNi42NjY2NyUgIWltcG9ydGFudDtcbiAgfVxuICAudS1wdWxsLTFcXC82XFxAZGVza3RvcCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IDE2LjY2NjY3JSAhaW1wb3J0YW50O1xuICAgIGxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgfVxuICAudS0yXFwvNlxcQGRlc2t0b3Age1xuICAgIHdpZHRoOiAzMy4zMzMzMyUgIWltcG9ydGFudDtcbiAgfVxuICAvKipcbiAgICAgICAgICogMS4gUmVzZXQgYW55IGxlZnRvdmVyIG9yIGNvbmZsaWN0aW5nIGBsZWZ0YC9gcmlnaHRgIHZhbHVlcy5cbiAgICAgICAgICovXG4gIC51LXB1c2gtMlxcLzZcXEBkZXNrdG9wIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICAgIGxlZnQ6IDMzLjMzMzMzJSAhaW1wb3J0YW50O1xuICB9XG4gIC51LXB1bGwtMlxcLzZcXEBkZXNrdG9wIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogMzMuMzMzMzMlICFpbXBvcnRhbnQ7XG4gICAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICB9XG4gIC51LTNcXC82XFxAZGVza3RvcCB7XG4gICAgd2lkdGg6IDUwJSAhaW1wb3J0YW50O1xuICB9XG4gIC8qKlxuICAgICAgICAgKiAxLiBSZXNldCBhbnkgbGVmdG92ZXIgb3IgY29uZmxpY3RpbmcgYGxlZnRgL2ByaWdodGAgdmFsdWVzLlxuICAgICAgICAgKi9cbiAgLnUtcHVzaC0zXFwvNlxcQGRlc2t0b3Age1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gICAgbGVmdDogNTAlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnUtcHVsbC0zXFwvNlxcQGRlc2t0b3Age1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiA1MCUgIWltcG9ydGFudDtcbiAgICBsZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gIH1cbiAgLnUtNFxcLzZcXEBkZXNrdG9wIHtcbiAgICB3aWR0aDogNjYuNjY2NjclICFpbXBvcnRhbnQ7XG4gIH1cbiAgLyoqXG4gICAgICAgICAqIDEuIFJlc2V0IGFueSBsZWZ0b3ZlciBvciBjb25mbGljdGluZyBgbGVmdGAvYHJpZ2h0YCB2YWx1ZXMuXG4gICAgICAgICAqL1xuICAudS1wdXNoLTRcXC82XFxAZGVza3RvcCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgICBsZWZ0OiA2Ni42NjY2NyUgIWltcG9ydGFudDtcbiAgfVxuICAudS1wdWxsLTRcXC82XFxAZGVza3RvcCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IDY2LjY2NjY3JSAhaW1wb3J0YW50O1xuICAgIGxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgfVxuICAudS01XFwvNlxcQGRlc2t0b3Age1xuICAgIHdpZHRoOiA4My4zMzMzMyUgIWltcG9ydGFudDtcbiAgfVxuICAvKipcbiAgICAgICAgICogMS4gUmVzZXQgYW55IGxlZnRvdmVyIG9yIGNvbmZsaWN0aW5nIGBsZWZ0YC9gcmlnaHRgIHZhbHVlcy5cbiAgICAgICAgICovXG4gIC51LXB1c2gtNVxcLzZcXEBkZXNrdG9wIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICAgIGxlZnQ6IDgzLjMzMzMzJSAhaW1wb3J0YW50O1xuICB9XG4gIC51LXB1bGwtNVxcLzZcXEBkZXNrdG9wIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogODMuMzMzMzMlICFpbXBvcnRhbnQ7XG4gICAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICB9XG4gIC51LTZcXC82XFxAZGVza3RvcCB7XG4gICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgfVxuICAvKipcbiAgICAgICAgICogMS4gUmVzZXQgYW55IGxlZnRvdmVyIG9yIGNvbmZsaWN0aW5nIGBsZWZ0YC9gcmlnaHRgIHZhbHVlcy5cbiAgICAgICAgICovXG4gIC51LXB1c2gtNlxcLzZcXEBkZXNrdG9wIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICAgIGxlZnQ6IDEwMCUgIWltcG9ydGFudDtcbiAgfVxuICAudS1wdWxsLTZcXC82XFxAZGVza3RvcCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IDEwMCUgIWltcG9ydGFudDtcbiAgICBsZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gIH1cbiAgLnUtMVxcLzdcXEBkZXNrdG9wIHtcbiAgICB3aWR0aDogMTQuMjg1NzElICFpbXBvcnRhbnQ7XG4gIH1cbiAgLyoqXG4gICAgICAgICAqIDEuIFJlc2V0IGFueSBsZWZ0b3ZlciBvciBjb25mbGljdGluZyBgbGVmdGAvYHJpZ2h0YCB2YWx1ZXMuXG4gICAgICAgICAqL1xuICAudS1wdXNoLTFcXC83XFxAZGVza3RvcCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgICBsZWZ0OiAxNC4yODU3MSUgIWltcG9ydGFudDtcbiAgfVxuICAudS1wdWxsLTFcXC83XFxAZGVza3RvcCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IDE0LjI4NTcxJSAhaW1wb3J0YW50O1xuICAgIGxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgfVxuICAudS0yXFwvN1xcQGRlc2t0b3Age1xuICAgIHdpZHRoOiAyOC41NzE0MyUgIWltcG9ydGFudDtcbiAgfVxuICAvKipcbiAgICAgICAgICogMS4gUmVzZXQgYW55IGxlZnRvdmVyIG9yIGNvbmZsaWN0aW5nIGBsZWZ0YC9gcmlnaHRgIHZhbHVlcy5cbiAgICAgICAgICovXG4gIC51LXB1c2gtMlxcLzdcXEBkZXNrdG9wIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICAgIGxlZnQ6IDI4LjU3MTQzJSAhaW1wb3J0YW50O1xuICB9XG4gIC51LXB1bGwtMlxcLzdcXEBkZXNrdG9wIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogMjguNTcxNDMlICFpbXBvcnRhbnQ7XG4gICAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICB9XG4gIC51LTNcXC83XFxAZGVza3RvcCB7XG4gICAgd2lkdGg6IDQyLjg1NzE0JSAhaW1wb3J0YW50O1xuICB9XG4gIC8qKlxuICAgICAgICAgKiAxLiBSZXNldCBhbnkgbGVmdG92ZXIgb3IgY29uZmxpY3RpbmcgYGxlZnRgL2ByaWdodGAgdmFsdWVzLlxuICAgICAgICAgKi9cbiAgLnUtcHVzaC0zXFwvN1xcQGRlc2t0b3Age1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gICAgbGVmdDogNDIuODU3MTQlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnUtcHVsbC0zXFwvN1xcQGRlc2t0b3Age1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiA0Mi44NTcxNCUgIWltcG9ydGFudDtcbiAgICBsZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gIH1cbiAgLnUtNFxcLzdcXEBkZXNrdG9wIHtcbiAgICB3aWR0aDogNTcuMTQyODYlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLyoqXG4gICAgICAgICAqIDEuIFJlc2V0IGFueSBsZWZ0b3ZlciBvciBjb25mbGljdGluZyBgbGVmdGAvYHJpZ2h0YCB2YWx1ZXMuXG4gICAgICAgICAqL1xuICAudS1wdXNoLTRcXC83XFxAZGVza3RvcCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgICBsZWZ0OiA1Ny4xNDI4NiUgIWltcG9ydGFudDtcbiAgfVxuICAudS1wdWxsLTRcXC83XFxAZGVza3RvcCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IDU3LjE0Mjg2JSAhaW1wb3J0YW50O1xuICAgIGxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgfVxuICAudS01XFwvN1xcQGRlc2t0b3Age1xuICAgIHdpZHRoOiA3MS40Mjg1NyUgIWltcG9ydGFudDtcbiAgfVxuICAvKipcbiAgICAgICAgICogMS4gUmVzZXQgYW55IGxlZnRvdmVyIG9yIGNvbmZsaWN0aW5nIGBsZWZ0YC9gcmlnaHRgIHZhbHVlcy5cbiAgICAgICAgICovXG4gIC51LXB1c2gtNVxcLzdcXEBkZXNrdG9wIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICAgIGxlZnQ6IDcxLjQyODU3JSAhaW1wb3J0YW50O1xuICB9XG4gIC51LXB1bGwtNVxcLzdcXEBkZXNrdG9wIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogNzEuNDI4NTclICFpbXBvcnRhbnQ7XG4gICAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICB9XG4gIC51LTZcXC83XFxAZGVza3RvcCB7XG4gICAgd2lkdGg6IDg1LjcxNDI5JSAhaW1wb3J0YW50O1xuICB9XG4gIC8qKlxuICAgICAgICAgKiAxLiBSZXNldCBhbnkgbGVmdG92ZXIgb3IgY29uZmxpY3RpbmcgYGxlZnRgL2ByaWdodGAgdmFsdWVzLlxuICAgICAgICAgKi9cbiAgLnUtcHVzaC02XFwvN1xcQGRlc2t0b3Age1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gICAgbGVmdDogODUuNzE0MjklICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnUtcHVsbC02XFwvN1xcQGRlc2t0b3Age1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiA4NS43MTQyOSUgIWltcG9ydGFudDtcbiAgICBsZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gIH1cbiAgLnUtN1xcLzdcXEBkZXNrdG9wIHtcbiAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICB9XG4gIC8qKlxuICAgICAgICAgKiAxLiBSZXNldCBhbnkgbGVmdG92ZXIgb3IgY29uZmxpY3RpbmcgYGxlZnRgL2ByaWdodGAgdmFsdWVzLlxuICAgICAgICAgKi9cbiAgLnUtcHVzaC03XFwvN1xcQGRlc2t0b3Age1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gICAgbGVmdDogMTAwJSAhaW1wb3J0YW50O1xuICB9XG4gIC51LXB1bGwtN1xcLzdcXEBkZXNrdG9wIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogMTAwJSAhaW1wb3J0YW50O1xuICAgIGxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgfVxuICAudS0xXFwvOFxcQGRlc2t0b3Age1xuICAgIHdpZHRoOiAxMi41JSAhaW1wb3J0YW50O1xuICB9XG4gIC8qKlxuICAgICAgICAgKiAxLiBSZXNldCBhbnkgbGVmdG92ZXIgb3IgY29uZmxpY3RpbmcgYGxlZnRgL2ByaWdodGAgdmFsdWVzLlxuICAgICAgICAgKi9cbiAgLnUtcHVzaC0xXFwvOFxcQGRlc2t0b3Age1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gICAgbGVmdDogMTIuNSUgIWltcG9ydGFudDtcbiAgfVxuICAudS1wdWxsLTFcXC84XFxAZGVza3RvcCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IDEyLjUlICFpbXBvcnRhbnQ7XG4gICAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICB9XG4gIC51LTJcXC84XFxAZGVza3RvcCB7XG4gICAgd2lkdGg6IDI1JSAhaW1wb3J0YW50O1xuICB9XG4gIC8qKlxuICAgICAgICAgKiAxLiBSZXNldCBhbnkgbGVmdG92ZXIgb3IgY29uZmxpY3RpbmcgYGxlZnRgL2ByaWdodGAgdmFsdWVzLlxuICAgICAgICAgKi9cbiAgLnUtcHVzaC0yXFwvOFxcQGRlc2t0b3Age1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gICAgbGVmdDogMjUlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnUtcHVsbC0yXFwvOFxcQGRlc2t0b3Age1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiAyNSUgIWltcG9ydGFudDtcbiAgICBsZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gIH1cbiAgLnUtM1xcLzhcXEBkZXNrdG9wIHtcbiAgICB3aWR0aDogMzcuNSUgIWltcG9ydGFudDtcbiAgfVxuICAvKipcbiAgICAgICAgICogMS4gUmVzZXQgYW55IGxlZnRvdmVyIG9yIGNvbmZsaWN0aW5nIGBsZWZ0YC9gcmlnaHRgIHZhbHVlcy5cbiAgICAgICAgICovXG4gIC51LXB1c2gtM1xcLzhcXEBkZXNrdG9wIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICAgIGxlZnQ6IDM3LjUlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnUtcHVsbC0zXFwvOFxcQGRlc2t0b3Age1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiAzNy41JSAhaW1wb3J0YW50O1xuICAgIGxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgfVxuICAudS00XFwvOFxcQGRlc2t0b3Age1xuICAgIHdpZHRoOiA1MCUgIWltcG9ydGFudDtcbiAgfVxuICAvKipcbiAgICAgICAgICogMS4gUmVzZXQgYW55IGxlZnRvdmVyIG9yIGNvbmZsaWN0aW5nIGBsZWZ0YC9gcmlnaHRgIHZhbHVlcy5cbiAgICAgICAgICovXG4gIC51LXB1c2gtNFxcLzhcXEBkZXNrdG9wIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICAgIGxlZnQ6IDUwJSAhaW1wb3J0YW50O1xuICB9XG4gIC51LXB1bGwtNFxcLzhcXEBkZXNrdG9wIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogNTAlICFpbXBvcnRhbnQ7XG4gICAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICB9XG4gIC51LTVcXC84XFxAZGVza3RvcCB7XG4gICAgd2lkdGg6IDYyLjUlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLyoqXG4gICAgICAgICAqIDEuIFJlc2V0IGFueSBsZWZ0b3ZlciBvciBjb25mbGljdGluZyBgbGVmdGAvYHJpZ2h0YCB2YWx1ZXMuXG4gICAgICAgICAqL1xuICAudS1wdXNoLTVcXC84XFxAZGVza3RvcCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgICBsZWZ0OiA2Mi41JSAhaW1wb3J0YW50O1xuICB9XG4gIC51LXB1bGwtNVxcLzhcXEBkZXNrdG9wIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogNjIuNSUgIWltcG9ydGFudDtcbiAgICBsZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gIH1cbiAgLnUtNlxcLzhcXEBkZXNrdG9wIHtcbiAgICB3aWR0aDogNzUlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLyoqXG4gICAgICAgICAqIDEuIFJlc2V0IGFueSBsZWZ0b3ZlciBvciBjb25mbGljdGluZyBgbGVmdGAvYHJpZ2h0YCB2YWx1ZXMuXG4gICAgICAgICAqL1xuICAudS1wdXNoLTZcXC84XFxAZGVza3RvcCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgICBsZWZ0OiA3NSUgIWltcG9ydGFudDtcbiAgfVxuICAudS1wdWxsLTZcXC84XFxAZGVza3RvcCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IDc1JSAhaW1wb3J0YW50O1xuICAgIGxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgfVxuICAudS03XFwvOFxcQGRlc2t0b3Age1xuICAgIHdpZHRoOiA4Ny41JSAhaW1wb3J0YW50O1xuICB9XG4gIC8qKlxuICAgICAgICAgKiAxLiBSZXNldCBhbnkgbGVmdG92ZXIgb3IgY29uZmxpY3RpbmcgYGxlZnRgL2ByaWdodGAgdmFsdWVzLlxuICAgICAgICAgKi9cbiAgLnUtcHVzaC03XFwvOFxcQGRlc2t0b3Age1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gICAgbGVmdDogODcuNSUgIWltcG9ydGFudDtcbiAgfVxuICAudS1wdWxsLTdcXC84XFxAZGVza3RvcCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IDg3LjUlICFpbXBvcnRhbnQ7XG4gICAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICB9XG4gIC51LThcXC84XFxAZGVza3RvcCB7XG4gICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgfVxuICAvKipcbiAgICAgICAgICogMS4gUmVzZXQgYW55IGxlZnRvdmVyIG9yIGNvbmZsaWN0aW5nIGBsZWZ0YC9gcmlnaHRgIHZhbHVlcy5cbiAgICAgICAgICovXG4gIC51LXB1c2gtOFxcLzhcXEBkZXNrdG9wIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICAgIGxlZnQ6IDEwMCUgIWltcG9ydGFudDtcbiAgfVxuICAudS1wdWxsLThcXC84XFxAZGVza3RvcCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IDEwMCUgIWltcG9ydGFudDtcbiAgICBsZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gIH1cbiAgLnUtcHVzaC1ub25lXFxAZGVza3RvcCB7XG4gICAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICB9XG4gIC51LXB1bGwtbm9uZVxcQGRlc2t0b3Age1xuICAgIHJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEwMGVtKSB7XG4gIC51LTFcXC8xXFxAd2lkZVNjcmVlbiB7XG4gICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgfVxuICAvKipcbiAgICAgICAgICogMS4gUmVzZXQgYW55IGxlZnRvdmVyIG9yIGNvbmZsaWN0aW5nIGBsZWZ0YC9gcmlnaHRgIHZhbHVlcy5cbiAgICAgICAgICovXG4gIC51LXB1c2gtMVxcLzFcXEB3aWRlU2NyZWVuIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICAgIGxlZnQ6IDEwMCUgIWltcG9ydGFudDtcbiAgfVxuICAudS1wdWxsLTFcXC8xXFxAd2lkZVNjcmVlbiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IDEwMCUgIWltcG9ydGFudDtcbiAgICBsZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gIH1cbiAgLnUtMVxcLzJcXEB3aWRlU2NyZWVuIHtcbiAgICB3aWR0aDogNTAlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLyoqXG4gICAgICAgICAqIDEuIFJlc2V0IGFueSBsZWZ0b3ZlciBvciBjb25mbGljdGluZyBgbGVmdGAvYHJpZ2h0YCB2YWx1ZXMuXG4gICAgICAgICAqL1xuICAudS1wdXNoLTFcXC8yXFxAd2lkZVNjcmVlbiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgICBsZWZ0OiA1MCUgIWltcG9ydGFudDtcbiAgfVxuICAudS1wdWxsLTFcXC8yXFxAd2lkZVNjcmVlbiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IDUwJSAhaW1wb3J0YW50O1xuICAgIGxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgfVxuICAudS0yXFwvMlxcQHdpZGVTY3JlZW4ge1xuICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLyoqXG4gICAgICAgICAqIDEuIFJlc2V0IGFueSBsZWZ0b3ZlciBvciBjb25mbGljdGluZyBgbGVmdGAvYHJpZ2h0YCB2YWx1ZXMuXG4gICAgICAgICAqL1xuICAudS1wdXNoLTJcXC8yXFxAd2lkZVNjcmVlbiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgICBsZWZ0OiAxMDAlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnUtcHVsbC0yXFwvMlxcQHdpZGVTY3JlZW4ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICB9XG4gIC51LTFcXC8zXFxAd2lkZVNjcmVlbiB7XG4gICAgd2lkdGg6IDMzLjMzMzMzJSAhaW1wb3J0YW50O1xuICB9XG4gIC8qKlxuICAgICAgICAgKiAxLiBSZXNldCBhbnkgbGVmdG92ZXIgb3IgY29uZmxpY3RpbmcgYGxlZnRgL2ByaWdodGAgdmFsdWVzLlxuICAgICAgICAgKi9cbiAgLnUtcHVzaC0xXFwvM1xcQHdpZGVTY3JlZW4ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gICAgbGVmdDogMzMuMzMzMzMlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnUtcHVsbC0xXFwvM1xcQHdpZGVTY3JlZW4ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiAzMy4zMzMzMyUgIWltcG9ydGFudDtcbiAgICBsZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gIH1cbiAgLnUtMlxcLzNcXEB3aWRlU2NyZWVuIHtcbiAgICB3aWR0aDogNjYuNjY2NjclICFpbXBvcnRhbnQ7XG4gIH1cbiAgLyoqXG4gICAgICAgICAqIDEuIFJlc2V0IGFueSBsZWZ0b3ZlciBvciBjb25mbGljdGluZyBgbGVmdGAvYHJpZ2h0YCB2YWx1ZXMuXG4gICAgICAgICAqL1xuICAudS1wdXNoLTJcXC8zXFxAd2lkZVNjcmVlbiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgICBsZWZ0OiA2Ni42NjY2NyUgIWltcG9ydGFudDtcbiAgfVxuICAudS1wdWxsLTJcXC8zXFxAd2lkZVNjcmVlbiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IDY2LjY2NjY3JSAhaW1wb3J0YW50O1xuICAgIGxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgfVxuICAudS0zXFwvM1xcQHdpZGVTY3JlZW4ge1xuICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLyoqXG4gICAgICAgICAqIDEuIFJlc2V0IGFueSBsZWZ0b3ZlciBvciBjb25mbGljdGluZyBgbGVmdGAvYHJpZ2h0YCB2YWx1ZXMuXG4gICAgICAgICAqL1xuICAudS1wdXNoLTNcXC8zXFxAd2lkZVNjcmVlbiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgICBsZWZ0OiAxMDAlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnUtcHVsbC0zXFwvM1xcQHdpZGVTY3JlZW4ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICB9XG4gIC51LTFcXC80XFxAd2lkZVNjcmVlbiB7XG4gICAgd2lkdGg6IDI1JSAhaW1wb3J0YW50O1xuICB9XG4gIC8qKlxuICAgICAgICAgKiAxLiBSZXNldCBhbnkgbGVmdG92ZXIgb3IgY29uZmxpY3RpbmcgYGxlZnRgL2ByaWdodGAgdmFsdWVzLlxuICAgICAgICAgKi9cbiAgLnUtcHVzaC0xXFwvNFxcQHdpZGVTY3JlZW4ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gICAgbGVmdDogMjUlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnUtcHVsbC0xXFwvNFxcQHdpZGVTY3JlZW4ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiAyNSUgIWltcG9ydGFudDtcbiAgICBsZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gIH1cbiAgLnUtMlxcLzRcXEB3aWRlU2NyZWVuIHtcbiAgICB3aWR0aDogNTAlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLyoqXG4gICAgICAgICAqIDEuIFJlc2V0IGFueSBsZWZ0b3ZlciBvciBjb25mbGljdGluZyBgbGVmdGAvYHJpZ2h0YCB2YWx1ZXMuXG4gICAgICAgICAqL1xuICAudS1wdXNoLTJcXC80XFxAd2lkZVNjcmVlbiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgICBsZWZ0OiA1MCUgIWltcG9ydGFudDtcbiAgfVxuICAudS1wdWxsLTJcXC80XFxAd2lkZVNjcmVlbiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IDUwJSAhaW1wb3J0YW50O1xuICAgIGxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgfVxuICAudS0zXFwvNFxcQHdpZGVTY3JlZW4ge1xuICAgIHdpZHRoOiA3NSUgIWltcG9ydGFudDtcbiAgfVxuICAvKipcbiAgICAgICAgICogMS4gUmVzZXQgYW55IGxlZnRvdmVyIG9yIGNvbmZsaWN0aW5nIGBsZWZ0YC9gcmlnaHRgIHZhbHVlcy5cbiAgICAgICAgICovXG4gIC51LXB1c2gtM1xcLzRcXEB3aWRlU2NyZWVuIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICAgIGxlZnQ6IDc1JSAhaW1wb3J0YW50O1xuICB9XG4gIC51LXB1bGwtM1xcLzRcXEB3aWRlU2NyZWVuIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogNzUlICFpbXBvcnRhbnQ7XG4gICAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICB9XG4gIC51LTRcXC80XFxAd2lkZVNjcmVlbiB7XG4gICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgfVxuICAvKipcbiAgICAgICAgICogMS4gUmVzZXQgYW55IGxlZnRvdmVyIG9yIGNvbmZsaWN0aW5nIGBsZWZ0YC9gcmlnaHRgIHZhbHVlcy5cbiAgICAgICAgICovXG4gIC51LXB1c2gtNFxcLzRcXEB3aWRlU2NyZWVuIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICAgIGxlZnQ6IDEwMCUgIWltcG9ydGFudDtcbiAgfVxuICAudS1wdWxsLTRcXC80XFxAd2lkZVNjcmVlbiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IDEwMCUgIWltcG9ydGFudDtcbiAgICBsZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gIH1cbiAgLnUtMVxcLzVcXEB3aWRlU2NyZWVuIHtcbiAgICB3aWR0aDogMjAlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLyoqXG4gICAgICAgICAqIDEuIFJlc2V0IGFueSBsZWZ0b3ZlciBvciBjb25mbGljdGluZyBgbGVmdGAvYHJpZ2h0YCB2YWx1ZXMuXG4gICAgICAgICAqL1xuICAudS1wdXNoLTFcXC81XFxAd2lkZVNjcmVlbiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgICBsZWZ0OiAyMCUgIWltcG9ydGFudDtcbiAgfVxuICAudS1wdWxsLTFcXC81XFxAd2lkZVNjcmVlbiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IDIwJSAhaW1wb3J0YW50O1xuICAgIGxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgfVxuICAudS0yXFwvNVxcQHdpZGVTY3JlZW4ge1xuICAgIHdpZHRoOiA0MCUgIWltcG9ydGFudDtcbiAgfVxuICAvKipcbiAgICAgICAgICogMS4gUmVzZXQgYW55IGxlZnRvdmVyIG9yIGNvbmZsaWN0aW5nIGBsZWZ0YC9gcmlnaHRgIHZhbHVlcy5cbiAgICAgICAgICovXG4gIC51LXB1c2gtMlxcLzVcXEB3aWRlU2NyZWVuIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICAgIGxlZnQ6IDQwJSAhaW1wb3J0YW50O1xuICB9XG4gIC51LXB1bGwtMlxcLzVcXEB3aWRlU2NyZWVuIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogNDAlICFpbXBvcnRhbnQ7XG4gICAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICB9XG4gIC51LTNcXC81XFxAd2lkZVNjcmVlbiB7XG4gICAgd2lkdGg6IDYwJSAhaW1wb3J0YW50O1xuICB9XG4gIC8qKlxuICAgICAgICAgKiAxLiBSZXNldCBhbnkgbGVmdG92ZXIgb3IgY29uZmxpY3RpbmcgYGxlZnRgL2ByaWdodGAgdmFsdWVzLlxuICAgICAgICAgKi9cbiAgLnUtcHVzaC0zXFwvNVxcQHdpZGVTY3JlZW4ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gICAgbGVmdDogNjAlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnUtcHVsbC0zXFwvNVxcQHdpZGVTY3JlZW4ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiA2MCUgIWltcG9ydGFudDtcbiAgICBsZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gIH1cbiAgLnUtNFxcLzVcXEB3aWRlU2NyZWVuIHtcbiAgICB3aWR0aDogODAlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLyoqXG4gICAgICAgICAqIDEuIFJlc2V0IGFueSBsZWZ0b3ZlciBvciBjb25mbGljdGluZyBgbGVmdGAvYHJpZ2h0YCB2YWx1ZXMuXG4gICAgICAgICAqL1xuICAudS1wdXNoLTRcXC81XFxAd2lkZVNjcmVlbiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgICBsZWZ0OiA4MCUgIWltcG9ydGFudDtcbiAgfVxuICAudS1wdWxsLTRcXC81XFxAd2lkZVNjcmVlbiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IDgwJSAhaW1wb3J0YW50O1xuICAgIGxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgfVxuICAudS01XFwvNVxcQHdpZGVTY3JlZW4ge1xuICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLyoqXG4gICAgICAgICAqIDEuIFJlc2V0IGFueSBsZWZ0b3ZlciBvciBjb25mbGljdGluZyBgbGVmdGAvYHJpZ2h0YCB2YWx1ZXMuXG4gICAgICAgICAqL1xuICAudS1wdXNoLTVcXC81XFxAd2lkZVNjcmVlbiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgICBsZWZ0OiAxMDAlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnUtcHVsbC01XFwvNVxcQHdpZGVTY3JlZW4ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICB9XG4gIC51LTFcXC82XFxAd2lkZVNjcmVlbiB7XG4gICAgd2lkdGg6IDE2LjY2NjY3JSAhaW1wb3J0YW50O1xuICB9XG4gIC8qKlxuICAgICAgICAgKiAxLiBSZXNldCBhbnkgbGVmdG92ZXIgb3IgY29uZmxpY3RpbmcgYGxlZnRgL2ByaWdodGAgdmFsdWVzLlxuICAgICAgICAgKi9cbiAgLnUtcHVzaC0xXFwvNlxcQHdpZGVTY3JlZW4ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gICAgbGVmdDogMTYuNjY2NjclICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnUtcHVsbC0xXFwvNlxcQHdpZGVTY3JlZW4ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiAxNi42NjY2NyUgIWltcG9ydGFudDtcbiAgICBsZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gIH1cbiAgLnUtMlxcLzZcXEB3aWRlU2NyZWVuIHtcbiAgICB3aWR0aDogMzMuMzMzMzMlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLyoqXG4gICAgICAgICAqIDEuIFJlc2V0IGFueSBsZWZ0b3ZlciBvciBjb25mbGljdGluZyBgbGVmdGAvYHJpZ2h0YCB2YWx1ZXMuXG4gICAgICAgICAqL1xuICAudS1wdXNoLTJcXC82XFxAd2lkZVNjcmVlbiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgICBsZWZ0OiAzMy4zMzMzMyUgIWltcG9ydGFudDtcbiAgfVxuICAudS1wdWxsLTJcXC82XFxAd2lkZVNjcmVlbiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IDMzLjMzMzMzJSAhaW1wb3J0YW50O1xuICAgIGxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgfVxuICAudS0zXFwvNlxcQHdpZGVTY3JlZW4ge1xuICAgIHdpZHRoOiA1MCUgIWltcG9ydGFudDtcbiAgfVxuICAvKipcbiAgICAgICAgICogMS4gUmVzZXQgYW55IGxlZnRvdmVyIG9yIGNvbmZsaWN0aW5nIGBsZWZ0YC9gcmlnaHRgIHZhbHVlcy5cbiAgICAgICAgICovXG4gIC51LXB1c2gtM1xcLzZcXEB3aWRlU2NyZWVuIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICAgIGxlZnQ6IDUwJSAhaW1wb3J0YW50O1xuICB9XG4gIC51LXB1bGwtM1xcLzZcXEB3aWRlU2NyZWVuIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogNTAlICFpbXBvcnRhbnQ7XG4gICAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICB9XG4gIC51LTRcXC82XFxAd2lkZVNjcmVlbiB7XG4gICAgd2lkdGg6IDY2LjY2NjY3JSAhaW1wb3J0YW50O1xuICB9XG4gIC8qKlxuICAgICAgICAgKiAxLiBSZXNldCBhbnkgbGVmdG92ZXIgb3IgY29uZmxpY3RpbmcgYGxlZnRgL2ByaWdodGAgdmFsdWVzLlxuICAgICAgICAgKi9cbiAgLnUtcHVzaC00XFwvNlxcQHdpZGVTY3JlZW4ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gICAgbGVmdDogNjYuNjY2NjclICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnUtcHVsbC00XFwvNlxcQHdpZGVTY3JlZW4ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiA2Ni42NjY2NyUgIWltcG9ydGFudDtcbiAgICBsZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gIH1cbiAgLnUtNVxcLzZcXEB3aWRlU2NyZWVuIHtcbiAgICB3aWR0aDogODMuMzMzMzMlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLyoqXG4gICAgICAgICAqIDEuIFJlc2V0IGFueSBsZWZ0b3ZlciBvciBjb25mbGljdGluZyBgbGVmdGAvYHJpZ2h0YCB2YWx1ZXMuXG4gICAgICAgICAqL1xuICAudS1wdXNoLTVcXC82XFxAd2lkZVNjcmVlbiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgICBsZWZ0OiA4My4zMzMzMyUgIWltcG9ydGFudDtcbiAgfVxuICAudS1wdWxsLTVcXC82XFxAd2lkZVNjcmVlbiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IDgzLjMzMzMzJSAhaW1wb3J0YW50O1xuICAgIGxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgfVxuICAudS02XFwvNlxcQHdpZGVTY3JlZW4ge1xuICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLyoqXG4gICAgICAgICAqIDEuIFJlc2V0IGFueSBsZWZ0b3ZlciBvciBjb25mbGljdGluZyBgbGVmdGAvYHJpZ2h0YCB2YWx1ZXMuXG4gICAgICAgICAqL1xuICAudS1wdXNoLTZcXC82XFxAd2lkZVNjcmVlbiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgICBsZWZ0OiAxMDAlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnUtcHVsbC02XFwvNlxcQHdpZGVTY3JlZW4ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICB9XG4gIC51LTFcXC83XFxAd2lkZVNjcmVlbiB7XG4gICAgd2lkdGg6IDE0LjI4NTcxJSAhaW1wb3J0YW50O1xuICB9XG4gIC8qKlxuICAgICAgICAgKiAxLiBSZXNldCBhbnkgbGVmdG92ZXIgb3IgY29uZmxpY3RpbmcgYGxlZnRgL2ByaWdodGAgdmFsdWVzLlxuICAgICAgICAgKi9cbiAgLnUtcHVzaC0xXFwvN1xcQHdpZGVTY3JlZW4ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gICAgbGVmdDogMTQuMjg1NzElICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnUtcHVsbC0xXFwvN1xcQHdpZGVTY3JlZW4ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiAxNC4yODU3MSUgIWltcG9ydGFudDtcbiAgICBsZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gIH1cbiAgLnUtMlxcLzdcXEB3aWRlU2NyZWVuIHtcbiAgICB3aWR0aDogMjguNTcxNDMlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLyoqXG4gICAgICAgICAqIDEuIFJlc2V0IGFueSBsZWZ0b3ZlciBvciBjb25mbGljdGluZyBgbGVmdGAvYHJpZ2h0YCB2YWx1ZXMuXG4gICAgICAgICAqL1xuICAudS1wdXNoLTJcXC83XFxAd2lkZVNjcmVlbiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgICBsZWZ0OiAyOC41NzE0MyUgIWltcG9ydGFudDtcbiAgfVxuICAudS1wdWxsLTJcXC83XFxAd2lkZVNjcmVlbiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IDI4LjU3MTQzJSAhaW1wb3J0YW50O1xuICAgIGxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgfVxuICAudS0zXFwvN1xcQHdpZGVTY3JlZW4ge1xuICAgIHdpZHRoOiA0Mi44NTcxNCUgIWltcG9ydGFudDtcbiAgfVxuICAvKipcbiAgICAgICAgICogMS4gUmVzZXQgYW55IGxlZnRvdmVyIG9yIGNvbmZsaWN0aW5nIGBsZWZ0YC9gcmlnaHRgIHZhbHVlcy5cbiAgICAgICAgICovXG4gIC51LXB1c2gtM1xcLzdcXEB3aWRlU2NyZWVuIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICAgIGxlZnQ6IDQyLjg1NzE0JSAhaW1wb3J0YW50O1xuICB9XG4gIC51LXB1bGwtM1xcLzdcXEB3aWRlU2NyZWVuIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogNDIuODU3MTQlICFpbXBvcnRhbnQ7XG4gICAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICB9XG4gIC51LTRcXC83XFxAd2lkZVNjcmVlbiB7XG4gICAgd2lkdGg6IDU3LjE0Mjg2JSAhaW1wb3J0YW50O1xuICB9XG4gIC8qKlxuICAgICAgICAgKiAxLiBSZXNldCBhbnkgbGVmdG92ZXIgb3IgY29uZmxpY3RpbmcgYGxlZnRgL2ByaWdodGAgdmFsdWVzLlxuICAgICAgICAgKi9cbiAgLnUtcHVzaC00XFwvN1xcQHdpZGVTY3JlZW4ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gICAgbGVmdDogNTcuMTQyODYlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnUtcHVsbC00XFwvN1xcQHdpZGVTY3JlZW4ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiA1Ny4xNDI4NiUgIWltcG9ydGFudDtcbiAgICBsZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gIH1cbiAgLnUtNVxcLzdcXEB3aWRlU2NyZWVuIHtcbiAgICB3aWR0aDogNzEuNDI4NTclICFpbXBvcnRhbnQ7XG4gIH1cbiAgLyoqXG4gICAgICAgICAqIDEuIFJlc2V0IGFueSBsZWZ0b3ZlciBvciBjb25mbGljdGluZyBgbGVmdGAvYHJpZ2h0YCB2YWx1ZXMuXG4gICAgICAgICAqL1xuICAudS1wdXNoLTVcXC83XFxAd2lkZVNjcmVlbiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgICBsZWZ0OiA3MS40Mjg1NyUgIWltcG9ydGFudDtcbiAgfVxuICAudS1wdWxsLTVcXC83XFxAd2lkZVNjcmVlbiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IDcxLjQyODU3JSAhaW1wb3J0YW50O1xuICAgIGxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgfVxuICAudS02XFwvN1xcQHdpZGVTY3JlZW4ge1xuICAgIHdpZHRoOiA4NS43MTQyOSUgIWltcG9ydGFudDtcbiAgfVxuICAvKipcbiAgICAgICAgICogMS4gUmVzZXQgYW55IGxlZnRvdmVyIG9yIGNvbmZsaWN0aW5nIGBsZWZ0YC9gcmlnaHRgIHZhbHVlcy5cbiAgICAgICAgICovXG4gIC51LXB1c2gtNlxcLzdcXEB3aWRlU2NyZWVuIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICAgIGxlZnQ6IDg1LjcxNDI5JSAhaW1wb3J0YW50O1xuICB9XG4gIC51LXB1bGwtNlxcLzdcXEB3aWRlU2NyZWVuIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogODUuNzE0MjklICFpbXBvcnRhbnQ7XG4gICAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICB9XG4gIC51LTdcXC83XFxAd2lkZVNjcmVlbiB7XG4gICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgfVxuICAvKipcbiAgICAgICAgICogMS4gUmVzZXQgYW55IGxlZnRvdmVyIG9yIGNvbmZsaWN0aW5nIGBsZWZ0YC9gcmlnaHRgIHZhbHVlcy5cbiAgICAgICAgICovXG4gIC51LXB1c2gtN1xcLzdcXEB3aWRlU2NyZWVuIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICAgIGxlZnQ6IDEwMCUgIWltcG9ydGFudDtcbiAgfVxuICAudS1wdWxsLTdcXC83XFxAd2lkZVNjcmVlbiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IDEwMCUgIWltcG9ydGFudDtcbiAgICBsZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gIH1cbiAgLnUtMVxcLzhcXEB3aWRlU2NyZWVuIHtcbiAgICB3aWR0aDogMTIuNSUgIWltcG9ydGFudDtcbiAgfVxuICAvKipcbiAgICAgICAgICogMS4gUmVzZXQgYW55IGxlZnRvdmVyIG9yIGNvbmZsaWN0aW5nIGBsZWZ0YC9gcmlnaHRgIHZhbHVlcy5cbiAgICAgICAgICovXG4gIC51LXB1c2gtMVxcLzhcXEB3aWRlU2NyZWVuIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICAgIGxlZnQ6IDEyLjUlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnUtcHVsbC0xXFwvOFxcQHdpZGVTY3JlZW4ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiAxMi41JSAhaW1wb3J0YW50O1xuICAgIGxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgfVxuICAudS0yXFwvOFxcQHdpZGVTY3JlZW4ge1xuICAgIHdpZHRoOiAyNSUgIWltcG9ydGFudDtcbiAgfVxuICAvKipcbiAgICAgICAgICogMS4gUmVzZXQgYW55IGxlZnRvdmVyIG9yIGNvbmZsaWN0aW5nIGBsZWZ0YC9gcmlnaHRgIHZhbHVlcy5cbiAgICAgICAgICovXG4gIC51LXB1c2gtMlxcLzhcXEB3aWRlU2NyZWVuIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICAgIGxlZnQ6IDI1JSAhaW1wb3J0YW50O1xuICB9XG4gIC51LXB1bGwtMlxcLzhcXEB3aWRlU2NyZWVuIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogMjUlICFpbXBvcnRhbnQ7XG4gICAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICB9XG4gIC51LTNcXC84XFxAd2lkZVNjcmVlbiB7XG4gICAgd2lkdGg6IDM3LjUlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLyoqXG4gICAgICAgICAqIDEuIFJlc2V0IGFueSBsZWZ0b3ZlciBvciBjb25mbGljdGluZyBgbGVmdGAvYHJpZ2h0YCB2YWx1ZXMuXG4gICAgICAgICAqL1xuICAudS1wdXNoLTNcXC84XFxAd2lkZVNjcmVlbiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgICBsZWZ0OiAzNy41JSAhaW1wb3J0YW50O1xuICB9XG4gIC51LXB1bGwtM1xcLzhcXEB3aWRlU2NyZWVuIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogMzcuNSUgIWltcG9ydGFudDtcbiAgICBsZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gIH1cbiAgLnUtNFxcLzhcXEB3aWRlU2NyZWVuIHtcbiAgICB3aWR0aDogNTAlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLyoqXG4gICAgICAgICAqIDEuIFJlc2V0IGFueSBsZWZ0b3ZlciBvciBjb25mbGljdGluZyBgbGVmdGAvYHJpZ2h0YCB2YWx1ZXMuXG4gICAgICAgICAqL1xuICAudS1wdXNoLTRcXC84XFxAd2lkZVNjcmVlbiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgICBsZWZ0OiA1MCUgIWltcG9ydGFudDtcbiAgfVxuICAudS1wdWxsLTRcXC84XFxAd2lkZVNjcmVlbiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IDUwJSAhaW1wb3J0YW50O1xuICAgIGxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgfVxuICAudS01XFwvOFxcQHdpZGVTY3JlZW4ge1xuICAgIHdpZHRoOiA2Mi41JSAhaW1wb3J0YW50O1xuICB9XG4gIC8qKlxuICAgICAgICAgKiAxLiBSZXNldCBhbnkgbGVmdG92ZXIgb3IgY29uZmxpY3RpbmcgYGxlZnRgL2ByaWdodGAgdmFsdWVzLlxuICAgICAgICAgKi9cbiAgLnUtcHVzaC01XFwvOFxcQHdpZGVTY3JlZW4ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gICAgbGVmdDogNjIuNSUgIWltcG9ydGFudDtcbiAgfVxuICAudS1wdWxsLTVcXC84XFxAd2lkZVNjcmVlbiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IDYyLjUlICFpbXBvcnRhbnQ7XG4gICAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICB9XG4gIC51LTZcXC84XFxAd2lkZVNjcmVlbiB7XG4gICAgd2lkdGg6IDc1JSAhaW1wb3J0YW50O1xuICB9XG4gIC8qKlxuICAgICAgICAgKiAxLiBSZXNldCBhbnkgbGVmdG92ZXIgb3IgY29uZmxpY3RpbmcgYGxlZnRgL2ByaWdodGAgdmFsdWVzLlxuICAgICAgICAgKi9cbiAgLnUtcHVzaC02XFwvOFxcQHdpZGVTY3JlZW4ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gICAgbGVmdDogNzUlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnUtcHVsbC02XFwvOFxcQHdpZGVTY3JlZW4ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiA3NSUgIWltcG9ydGFudDtcbiAgICBsZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLyogWzFdICovXG4gIH1cbiAgLnUtN1xcLzhcXEB3aWRlU2NyZWVuIHtcbiAgICB3aWR0aDogODcuNSUgIWltcG9ydGFudDtcbiAgfVxuICAvKipcbiAgICAgICAgICogMS4gUmVzZXQgYW55IGxlZnRvdmVyIG9yIGNvbmZsaWN0aW5nIGBsZWZ0YC9gcmlnaHRgIHZhbHVlcy5cbiAgICAgICAgICovXG4gIC51LXB1c2gtN1xcLzhcXEB3aWRlU2NyZWVuIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICByaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICAgIGxlZnQ6IDg3LjUlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnUtcHVsbC03XFwvOFxcQHdpZGVTY3JlZW4ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiA4Ny41JSAhaW1wb3J0YW50O1xuICAgIGxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgfVxuICAudS04XFwvOFxcQHdpZGVTY3JlZW4ge1xuICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLyoqXG4gICAgICAgICAqIDEuIFJlc2V0IGFueSBsZWZ0b3ZlciBvciBjb25mbGljdGluZyBgbGVmdGAvYHJpZ2h0YCB2YWx1ZXMuXG4gICAgICAgICAqL1xuICAudS1wdXNoLThcXC84XFxAd2lkZVNjcmVlbiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgICBsZWZ0OiAxMDAlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnUtcHVsbC04XFwvOFxcQHdpZGVTY3JlZW4ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAgIC8qIFsxXSAqL1xuICB9XG4gIC51LXB1c2gtbm9uZVxcQHdpZGVTY3JlZW4ge1xuICAgIGxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgfVxuICAudS1wdWxsLW5vbmVcXEB3aWRlU2NyZWVuIHtcbiAgICByaWdodDogYXV0byAhaW1wb3J0YW50O1xuICB9XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAjUFJJTlRcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIFZlcnkgY3J1ZGUsIHJlc2V0LWxpa2Ugc3R5bGVzIHRha2VuIGZyb20gdGhlIEhUTUw1IEJvaWxlcnBsYXRlOlxuICogaHR0cHM6Ly9naXRodWIuY29tL2g1YnAvaHRtbDUtYm9pbGVycGxhdGUvYmxvYi81LjMuMC9kaXN0L2RvYy9jc3MubWQjcHJpbnQtc3R5bGVzXG4gKiBodHRwczovL2dpdGh1Yi5jb20vaDVicC9odG1sNS1ib2lsZXJwbGF0ZS9ibG9iL21hc3Rlci9kaXN0L2Nzcy9tYWluLmNzcyNMMjA1LUwyODJcbiAqL1xuQG1lZGlhIHByaW50IHtcbiAgLyoqXG4gICAqIDEuIEJsYWNrIHByaW50cyBmYXN0ZXI6IGh0dHA6Ly93d3cuc2FuYmVpamkuY29tL2FyY2hpdmVzLzk1M1xuICAgKi9cbiAgKiwgKjpiZWZvcmUsICo6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6ICMwMDAgIWltcG9ydGFudDtcbiAgICAvKiBbMV0gKi9cbiAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgdGV4dC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxuICBhLFxuICBhOnZpc2l0ZWQge1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICB9XG4gIGFbaHJlZl06YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiIChcIiBhdHRyKGhyZWYpIFwiKVwiO1xuICB9XG4gIGFiYnJbdGl0bGVdOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIiAoXCIgYXR0cih0aXRsZSkgXCIpXCI7XG4gIH1cbiAgLyoqXG4gICAqIERvbuKAmXQgc2hvdyBsaW5rcyB0aGF0IGFyZSBmcmFnbWVudCBpZGVudGlmaWVycywgb3IgdXNlIHRoZSBgamF2YXNjcmlwdDpgXG4gICAqIHBzZXVkbyBwcm90b2NvbC5cbiAgICovXG4gIGFbaHJlZl49XCIjXCJdOmFmdGVyLFxuICBhW2hyZWZePVwiamF2YXNjcmlwdDpcIl06YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gIH1cbiAgcHJlLFxuICBibG9ja3F1b3RlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjOTk5O1xuICAgIHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDtcbiAgfVxuICAvKipcbiAgICogUHJpbnRpbmcgVGFibGVzOiBodHRwOi8vY3NzLWRpc2N1c3MuaW5jdXRpby5jb20vd2lraS9QcmludGluZ19UYWJsZXNcbiAgICovXG4gIHRoZWFkIHtcbiAgICBkaXNwbGF5OiB0YWJsZS1oZWFkZXItZ3JvdXA7XG4gIH1cbiAgdHIsXG4gIGltZyB7XG4gICAgcGFnZS1icmVhay1pbnNpZGU6IGF2b2lkO1xuICB9XG4gIGltZyB7XG4gICAgbWF4LXdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gIH1cbiAgcCxcbiAgaDIsXG4gIGgzIHtcbiAgICBvcnBoYW5zOiAzO1xuICAgIHdpZG93czogMztcbiAgfVxuICBoMixcbiAgaDMge1xuICAgIHBhZ2UtYnJlYWstYWZ0ZXI6IGF2b2lkO1xuICB9XG59XG5cbi51LXNraXAge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHdpZHRoOiAxcHg7XG4gIGhlaWdodDogMXB4O1xuICB0b3A6IC0xMHB4O1xuICB6LWluZGV4OiAtOTk5O1xufVxuXG4udS1za2lwOmhvdmVyLCAudS1za2lwOmFjdGl2ZSwgLnUtc2tpcDpmb2N1cyB7XG4gIHdpZHRoOiBhdXRvO1xuICBoZWlnaHQ6IGF1dG87XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdG9wOiAxMnB4O1xuICBsZWZ0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgei1pbmRleDogOTk5O1xufVxuXG4uYW5pbWF0ZSB7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi5hbmltYXRlZCB7XG4gIG9wYWNpdHk6IDE7XG4gIGFuaW1hdGlvbjogZmFkZUluVXAgMS4yNXM7XG4gIGFuaW1hdGlvbi1maWxsLW1vZGU6IGJvdGg7XG59XG5cbi5wcmUtYW5pbWF0ZSB7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi52aXNpYmxlIHtcbiAgb3BhY2l0eTogMSAhaW1wb3J0YW50O1xufVxuXG4uYW5pbWF0ZS1kZWxheS0wIHtcbiAgYW5pbWF0aW9uLWRlbGF5OiAwcztcbn1cblxuLmFuaW1hdGUtZGVsYXktMSB7XG4gIGFuaW1hdGlvbi1kZWxheTogMC4ycztcbn1cblxuLmFuaW1hdGUtZGVsYXktMiB7XG4gIGFuaW1hdGlvbi1kZWxheTogMC40cztcbn1cblxuQGtleWZyYW1lcyBmYWRlSW5VcCB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMjVweCwgMCk7XG4gIH1cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgc2xpZGUtbGVmdCB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gIH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDBweCk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyB6b29tRWZmZWN0IHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMi41KTtcbiAgICAvKiBTdGFydCBzbGlnaHRseSB6b29tZWQgaW4gKi9cbiAgICBvcGFjaXR5OiAwO1xuICB9XG4gIDUwJSB7XG4gICAgb3BhY2l0eTogMC4wMztcbiAgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgIC8qIFpvb20gb3V0IHRvIG5vcm1hbCBzaXplICovXG4gICAgb3BhY2l0eTogMC4yO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgc2xpZGVJbiB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAwKTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBtb3ZlQW5kUmVzaXplIHtcbiAgMCUge1xuICAgIHRvcDogNTAlO1xuICAgIGxlZnQ6IDUwJTtcbiAgfVxuICAxMDAlIHtcbiAgICB0b3A6IDY1cHg7XG4gICAgbGVmdDogNjVweDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbiAgICB3aWR0aDogMjMwcHg7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBtb3ZlQW5kUmVzaXplTW9iaWxlIHtcbiAgMCUge1xuICAgIHRvcDogNTAlO1xuICAgIGxlZnQ6IDUwJTtcbiAgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbiAgICB3aWR0aDogMjMwcHg7XG4gICAgdG9wOiAyMXB4O1xuICAgIGxlZnQ6IDIxcHg7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBmYWRlSW4ge1xuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgyMHB4KTtcbiAgfVxuICB0byB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyByb3RhdGluZyB7XG4gIGZyb20ge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDApO1xuICB9XG4gIHRvIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDhkZWcpO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgcm90YXRpbmctYmFjayB7XG4gIGZyb20ge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKC00OGRlZyk7XG4gIH1cbiAgdG8ge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDApO1xuICB9XG59XG5cbmg0LFxuaDUsXG5oNixcbnVsLFxub2wsXG5kbCxcbmJsb2NrcXVvdGUsXG5wLFxuYWRkcmVzcyxcbmhyLFxudGFibGUsXG5maWVsZHNldCxcbmZpZ3VyZSxcbnByZSB7XG4gIG1hcmdpbi1ib3R0b206IDI0cHg7XG59XG5cbi5jbGVhcmZpeDphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCIgIWltcG9ydGFudDtcbiAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgY2xlYXI6IGJvdGggIWltcG9ydGFudDtcbn1cblxuLnNjcmVlbi1yZWFkZXItdGV4dCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICB3aWR0aDogMXB4O1xuICBoZWlnaHQ6IDFweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgY2xpcDogcmVjdCgxcHgsIDFweCwgMXB4LCAxcHgpO1xufVxuXG4uc2NyZWVuLXJlYWRlci10ZXh0OmZvY3VzIHtcbiAgdG9wOiA1cHg7XG4gIGxlZnQ6IDVweDtcbiAgei1pbmRleDogMTAwMDAwO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IGF1dG87XG4gIGhlaWdodDogYXV0bztcbiAgcGFkZGluZzogMTVweCAyM3B4IDE0cHg7XG4gIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgY2xpcDogYXV0byAhaW1wb3J0YW50O1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbiAgY29sb3I6ICMyMTc1OWI7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YxZjFmMTtcbiAgYm94LXNoYWRvdzogMCAwIDJweCAycHggcmdiYSgwLCAwLCAwLCAwLjYpO1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNDcuOTllbSkge1xuICAuZW1wdHlQIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi50LWFsaWduLWNlbnRlciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLnQtYWxpZ24tbGVmdCB7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG5cbi50LWFsaWduLXJpZ2h0IHtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG59XG5cbi5wdC10IHtcbiAgcGFkZGluZy10b3A6IDI0cHg7XG59XG5cbi5wdC1zIHtcbiAgcGFkZGluZy10b3A6IDI0cHg7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5wdC1zIHtcbiAgICBwYWRkaW5nLXRvcDogNDhweDtcbiAgfVxufVxuXG4ucHQtbSB7XG4gIHBhZGRpbmctdG9wOiAyNHB4O1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNDhlbSkge1xuICAucHQtbSB7XG4gICAgcGFkZGluZy10b3A6IDcycHg7XG4gIH1cbn1cblxuLnB0LWwge1xuICBwYWRkaW5nLXRvcDogOTBweDtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnB0LWwge1xuICAgIHBhZGRpbmctdG9wOiAxMjhweDtcbiAgfVxufVxuXG4ucHQtMCB7XG4gIHBhZGRpbmctdG9wOiAxcHg7XG59XG5cbi5wYi10IHtcbiAgcGFkZGluZy1ib3R0b206IDFweDtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnBiLXQge1xuICAgIHBhZGRpbmctYm90dG9tOiAyNHB4O1xuICB9XG59XG5cbi5wYi1zIHtcbiAgcGFkZGluZy1ib3R0b206IDFweDtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnBiLXMge1xuICAgIHBhZGRpbmctYm90dG9tOiA0OHB4O1xuICB9XG59XG5cbi5wYi1tIHtcbiAgcGFkZGluZy1ib3R0b206IDFweDtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnBiLW0ge1xuICAgIHBhZGRpbmctYm90dG9tOiA3MnB4O1xuICB9XG59XG5cbi5wYi1sIHtcbiAgcGFkZGluZy1ib3R0b206IDFweDtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnBiLWwge1xuICAgIHBhZGRpbmctYm90dG9tOiAxMjhweDtcbiAgfVxufVxuXG4ucGItMCB7XG4gIHBhZGRpbmctYm90dG9tOiAxcHg7XG59XG5cbi5wZC5wYi1tIHtcbiAgcGFkZGluZy1ib3R0b206IDM2cHg7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5wZC5wYi1tIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogODBweDtcbiAgfVxufVxuXG4ucGQucGItbSAud3lzaXdpZy1lZGl0b3IgcDpsYXN0LW9mLXR5cGU6bm90KDpvbmx5LW9mLXR5cGUpIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLm10LXMge1xuICBtYXJnaW4tdG9wOiAzMHB4O1xufVxuXG4ubXQtbCB7XG4gIG1hcmdpbi10b3A6IDUwcHg7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5tdC1sIHtcbiAgICBtYXJnaW4tdG9wOiA3MHB4O1xuICB9XG59XG5cbi5tYi1zIHtcbiAgbWFyZ2luLWJvdHRvbTogMzBweDtcbn1cblxuLm1iLWwge1xuICBtYXJnaW4tYm90dG9tOiA1MHB4O1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNDhlbSkge1xuICAubWItbCB7XG4gICAgbWFyZ2luLWJvdHRvbTogNzBweDtcbiAgfVxufVxuXG4ubWItMCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbmh0bWwge1xuICBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7XG59XG5cbmh0bWwgI3dwYWRtaW5iYXIge1xuICB3aWR0aDogMzNweDtcbiAgbWluLXdpZHRoOiAxcHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRyYW5zaXRpb246IC40cyB3aWR0aDtcbiAgdHJhbnNpdGlvbi1kZWxheTogM3M7XG59XG5cbmh0bWwgI3dwYWRtaW5iYXI6aG92ZXIge1xuICB3aWR0aDogMTAwJTtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDBzO1xufVxuXG4uYy00MDQtcGFnZSB7XG4gIHBhZGRpbmc6IDEyMHB4IDA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLmMtdG9wIHtcbiAgei1pbmRleDogNjAwO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICB0cmFuc2l0aW9uOiAuNXM7XG4gIHBhZGRpbmc6IDE2cHggMDtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5jLXRvcCB7XG4gICAgcGFkZGluZzogMjRweCAwO1xuICB9XG59XG5cbi5jLXRvcC5maXhlZDpub3QoLm1lbnUtb3Blbikge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIGJhY2tncm91bmQ6ICNmZmZmZmY7XG4gIHBhZGRpbmc6IDZweCAwO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNDhlbSkge1xuICAuYy10b3AuZml4ZWQ6bm90KC5tZW51LW9wZW4pIHtcbiAgICBwYWRkaW5nOiAxMnB4IDA7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDYyLjQ5ZW0pIHtcbiAgLmMtdG9wLm1lbnUtb3BlbiB7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHotaW5kZXg6IDc1MDtcbiAgICBvdmVyZmxvdzogYXV0bztcbiAgfVxufVxuXG4uYy1oZWFkZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA2Mi40OWVtKSB7XG4gIC5jLWhlYWRlciB7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGhlaWdodDogMTAwJTtcbiAgfVxufVxuXG4uYy1oZWFkZXJfX2xvZ28ge1xuICBtYXJnaW4tcmlnaHQ6IDE2cHg7XG59XG5cbi5jLWhlYWRlcl9fbmF2LXRvZ2dsZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgY29sb3I6ICMwMDAwMDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogNzAwO1xuICB0cmFuc2l0aW9uOiAwLjNzO1xuICB3aWR0aDogNDBweDtcbiAgaGVpZ2h0OiA0MHB4O1xuICBtYXJnaW4tbGVmdDogNnB4O1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNjIuNWVtKSB7XG4gIC5jLWhlYWRlcl9fbmF2LXRvZ2dsZSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5jLWhlYWRlcl9fbmF2LXRvZ2dsZSBzcGFuLCAuYy1oZWFkZXJfX25hdi10b2dnbGU6YmVmb3JlLCAuYy1oZWFkZXJfX25hdi10b2dnbGU6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMDtcbiAgaGVpZ2h0OiAzcHg7XG4gIHdpZHRoOiAyOHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwMDAwO1xuICB0cmFuc2l0aW9uOiAwLjVzO1xuICBtYXJnaW4tdG9wOiAxMnB4O1xufVxuXG4uYy1oZWFkZXJfX25hdi10b2dnbGU6OmJlZm9yZSB7XG4gIHRvcDogMHB4O1xufVxuXG4uYy1oZWFkZXJfX25hdi10b2dnbGUgc3BhbiB7XG4gIHRvcDogOHB4O1xufVxuXG4uYy1oZWFkZXJfX25hdi10b2dnbGU6OmFmdGVyIHtcbiAgdG9wOiAxNnB4O1xufVxuXG4ubWVudS1vcGVuIC5jLWhlYWRlcl9fbmF2LXRvZ2dsZTpiZWZvcmUsIC5tZW51LW9wZW4gLmMtaGVhZGVyX19uYXYtdG9nZ2xlOmFmdGVyIHtcbiAgdG9wOiAxMHB4O1xufVxuXG4ubWVudS1vcGVuIC5jLWhlYWRlcl9fbmF2LXRvZ2dsZSBzcGFuIHtcbiAgb3BhY2l0eTogMDtcbn1cblxuLm1lbnUtb3BlbiAuYy1oZWFkZXJfX25hdi10b2dnbGU6OmJlZm9yZSB7XG4gIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG59XG5cbi5tZW51LW9wZW4gLmMtaGVhZGVyX19uYXYtdG9nZ2xlOjphZnRlciB7XG4gIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbn1cblxuLmMtc3ZnaWNvbi0tbG9nbyB7XG4gIHdpZHRoOiAxOTdweDtcbiAgaGVpZ2h0OiAzNHB4O1xufVxuXG4uYWxpZ25sZWZ0LFxuLmFsaWducmlnaHQsXG4uYWxpZ25jZW50ZXIsXG4uYWxpZ25ub25lIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGhlaWdodDogYXV0bztcbiAgbWFyZ2luLWJvdHRvbTogMS41ZW07XG4gIGJhY2tncm91bmQ6IGNvbG9yKFwid2hpdGVcIik7XG4gIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgYm94LXNoYWRvdzogMCAwIDRweCByZ2JhKDAsIDAsIDAsIDAuMSk7XG59XG5cbi5hbGlnbmxlZnQgaW1nLFxuLmFsaWducmlnaHQgaW1nLFxuLmFsaWduY2VudGVyIGltZyxcbi5hbGlnbm5vbmUgaW1nIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogYXV0bztcbn1cblxuLnNpemUtZnVsbCxcbi5hbGlnbm5vbmUgaW1nIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5hbGlnbmxlZnQge1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLWJvdHRvbTogMC43NWVtO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNDhlbSkge1xuICAuYWxpZ25sZWZ0IHtcbiAgICB3aWR0aDogNDAlO1xuICAgIG1heC13aWR0aDogNDAlO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIGNsZWFyOiBsZWZ0O1xuICAgIG1hcmdpbi1yaWdodDogMS41ZW07XG4gIH1cbn1cblxuLmFsaWdubGVmdCBpbWcge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLmFsaWducmlnaHQge1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLWJvdHRvbTogMC43NWVtO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNDhlbSkge1xuICAuYWxpZ25yaWdodCB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIHdpZHRoOiA0MCU7XG4gICAgbWF4LXdpZHRoOiA0MCU7XG4gICAgY2xlYXI6IHJpZ2h0O1xuICAgIG1hcmdpbi1sZWZ0OiAxLjVlbTtcbiAgfVxufVxuXG4uYWxpZ25jZW50ZXIge1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG59XG5cbi5hbGlnbm5vbmUge1xuICB3aWR0aDogMTAwJTtcbiAgbWluLXdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDEwMCU7XG59XG5cbi53cC1jYXB0aW9uLXRleHQge1xuICBtYXJnaW46IDZweCAxMnB4O1xuICBmb250LXNpemU6IDE0cHg7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjcxNDI5O1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLmMtc2l0ZS1uYXYge1xuICBmbGV4OiAxO1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNjIuNDllbSkge1xuICAuYy1zaXRlLW5hdiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBvcmRlcjogMztcbiAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICBtYXJnaW46IDEwMHB4IDAgMzZweDtcbiAgfVxuICAubWVudS1vcGVuIC5jLXNpdGUtbmF2IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuXG4uYy1uYXYge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBtYXJnaW46IDA7XG59XG5cbi5jLW5hdiBsaSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tYm90dG9tOiAyNHB4O1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNjIuNWVtKSB7XG4gIC5jLW5hdiBsaSB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmctbGVmdDogMzJweDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIH1cbn1cblxuLmMtbmF2IGxpIGEge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi5jLW5hdiBsaSBhOmhvdmVyIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBjb2xvcjogIzAwMDAwMDtcbn1cblxuLmMtbmF2IGxpLmN1cnJlbnQtbWVudS1pdGVtIGEge1xuICBjb2xvcjogIzAwMDAwMDtcbn1cblxuLmMtcGFnZS1uYXYge1xuICBtYXJnaW4tdG9wOiAzNnB4O1xuICBwYWRkaW5nLXRvcDogMTJweDtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICMwMDAwMDA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLmMtcGFnZS1uYXYgLnBhZ2UtbnVtYmVycyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZzogNHB4IDZweDtcbiAgY29sb3I6ICMwMDAwMDA7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLmMtcGFnZS1uYXYgLnBhZ2UtbnVtYmVyczpob3ZlciwgLmMtcGFnZS1uYXYgLnBhZ2UtbnVtYmVycy5jdXJyZW50IHtcbiAgY29sb3I6IGJsYWNrO1xufVxuXG5odG1sOmhhcyhib2R5LmhvbWUpIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuYm9keSB7XG4gIGJhY2tncm91bmQtY29sb3I6IGJsYWNrO1xufVxuXG5ib2R5LmhvbWUge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB3aWR0aDogMTAwJTtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzI0MjcyMztcbn1cblxuYm9keS5ob21lIC5iZy13cmFwcGVyIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgd2lkdGg6IDEwMCU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgaW5zZXQ6IDA7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgei1pbmRleDogLTE7XG59XG5cbmJvZHkuaG9tZSAuYmctd3JhcHBlciAuYmcge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBibGFjaztcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBpbnNldDogMDtcbiAgei1pbmRleDogLTI7XG4gIHdpZHRoOiAxMDB2dztcbiAgaGVpZ2h0OiAxMDB2aDtcbiAgb3ZlcmZsb3c6IGhpZGRlbiAhaW1wb3J0YW50O1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNDcuOTllbSkge1xuICBib2R5LmhvbWUgLmJnLXdyYXBwZXIgLmJnIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWcvYmctcGF0dGVybi1tb2JpbGUuc3ZnPzFcIik7XG4gIH1cbn1cblxuYm9keS5ob21lICNNYWluIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBpbnNldDogMDtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xuICBwYWRkaW5nOiA2NXB4O1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNDcuOTllbSkge1xuICBib2R5LmhvbWUgI01haW4ge1xuICAgIHBhZGRpbmc6IDIxcHg7XG4gIH1cbn1cblxuYm9keS5ob21lIC5jb250ZW50IHtcbiAgb3BhY2l0eTogMDtcbiAgLyogSW5pdGlhbCBzdGF0ZSAqL1xuICBhbmltYXRpb246IGZhZGVJbiAxcyBlYXNlLW91dCBmb3J3YXJkcztcbiAgLyogQXBwbHkgdGhlIGFuaW1hdGlvbiAqL1xuICBhbmltYXRpb24tZGVsYXk6IDJzO1xuICAvKiBEZWxheSBiZWZvcmUgdGhlIGFuaW1hdGlvbiBzdGFydHMgKi9cbiAgd2lkdGg6IDEwMCU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNDcuOTllbSkge1xuICBib2R5LmhvbWUgLmNvbnRlbnQge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgZ2FwOiA1MHB4O1xuICB9XG59XG5cbmJvZHkuaG9tZSAuY29udGVudCAuY29weSB7XG4gIG1heC13aWR0aDogNzI0cHg7XG59XG5cbmJvZHkuaG9tZSAuY29udGVudCBoMSB7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgZm9udC1mYW1pbHk6IFwiUmVkIEhhdCBEaXNwbGF5XCI7XG4gIGZvbnQtc2l6ZTogNDVweDtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgbGluZS1oZWlnaHQ6IDExMy41JTtcbiAgLyogNTEuMDc1cHggKi9cbiAgbGV0dGVyLXNwYWNpbmc6IDAuOXB4O1xuICBtYXJnaW4tYm90dG9tOiAzMXB4O1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNDcuOTllbSkge1xuICBib2R5LmhvbWUgLmNvbnRlbnQgaDEge1xuICAgIGZvbnQtc2l6ZTogMjdweDtcbiAgfVxufVxuXG5ib2R5LmhvbWUgLmNvbnRlbnQgcCB7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgZm9udC1zaXplOiAyMnB4O1xuICBmb250LXdlaWdodDogNDAwO1xuICBsaW5lLWhlaWdodDogMTM1JTtcbiAgLyogMjkuN3B4ICovXG4gIGxldHRlci1zcGFjaW5nOiAtMC4yMnB4O1xufVxuXG5ib2R5LmhvbWUgLmVucXVpcmUtbG9nbyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgYm9keS5ob21lIC5lbnF1aXJlLWxvZ28ge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgfVxufVxuXG5ib2R5LmhvbWUgLmVucXVpcmUtbG9nbyBzdmcge1xuICBhbmltYXRpb246IHJvdGF0aW5nLWJhY2sgMC4zcyBsaW5lYXIgZm9yd2FyZHM7XG4gIHdpZHRoOiAxMjBweDtcbiAgY29sb3I6IHdoaXRlO1xuICB0cmFuc2l0aW9uOiBjb2xvciAwLjJzIGVhc2U7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA0Ny45OWVtKSB7XG4gIGJvZHkuaG9tZSAuZW5xdWlyZS1sb2dvIHN2ZyB7XG4gICAgd2lkdGg6IDgwcHg7XG4gIH1cbn1cblxuYm9keS5ob21lIC5lbnF1aXJlLWxvZ28gLnF1YXJ0ZXIge1xuICB3aWR0aDogMTVweDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgbGVmdDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKSByb3RhdGVZKDkwZGVnKSByb3RhdGVYKDkwZGVnKTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcbn1cblxuYm9keS5ob21lIC5lbnF1aXJlLWxvZ286aG92ZXIgc3ZnIHtcbiAgYW5pbWF0aW9uOiByb3RhdGluZyAwLjNzIGxpbmVhciBmb3J3YXJkcztcbiAgY29sb3I6ICNjOGRhMmU7XG59XG5cbmJvZHkuaG9tZSAuZW5xdWlyZS1sb2dvOmhvdmVyIGltZyB7XG4gIGhlaWdodDogMTVweDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSkgcm90YXRlWSgwZGVnKSByb3RhdGVYKDBkZWcpO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNDhlbSkge1xuICBib2R5LmhvbWUuc2hvdy1mb3JtIC5jb250YWN0X2Zvcm0ge1xuICAgIHJpZ2h0OiAxMCU7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDQ3Ljk5ZW0pIHtcbiAgYm9keS5ob21lLnNob3ctZm9ybSAuY29udGFjdF9mb3JtIHtcbiAgICBib3R0b206IDA7XG4gICAgaGVpZ2h0OiAxMDBkdmg7XG4gICAgbGVmdDogMDtcbiAgfVxufVxuXG5ib2R5LmhvbWUuc2hvdy1mb3JtIC5vdmVybGF5IHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICBpbnNldDogMDtcbiAgYmFja2dyb3VuZDogIzAwMDAwMDhhO1xuICB6LWluZGV4OiAwO1xufVxuXG4ubG9nbyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IDUwJTtcbiAgd2lkdGg6IDEwMCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICBtYXgtd2lkdGg6IDYwOXB4O1xuICBhbmltYXRpb246IHNsaWRlSW4gMXMgZWFzZS1pbi1vdXQgZm9yd2FyZHMsIG1vdmVBbmRSZXNpemUgMC42cyBlYXNlLWluLW91dCAycyBmb3J3YXJkcztcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDQ3Ljk5ZW0pIHtcbiAgLmxvZ28ge1xuICAgIG1heC13aWR0aDogMzA5cHg7XG4gICAgYW5pbWF0aW9uOiBzbGlkZUluIDFzIGVhc2UtaW4tb3V0IGZvcndhcmRzLCBtb3ZlQW5kUmVzaXplTW9iaWxlIDAuNnMgZWFzZS1pbi1vdXQgMnMgZm9yd2FyZHM7XG4gIH1cbn1cblxuLmNvbnRhY3RfZm9ybSB7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMjUwLCAyNTAsIDI1MCwgMC4yNSk7XG4gIGJhY2tncm91bmQ6ICMyYTJkMjk7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogNjI0cHg7XG4gIHRyYW5zaXRpb246IGFsbCAwLjlzIGVhc2U7XG4gIHotaW5kZXg6IDEwO1xuICBwYWRkaW5nOiAwO1xufVxuXG4uY29udGFjdF9mb3JtIC5jbG9zZS1tZSB7XG4gIHdpZHRoOiAyNXB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMjRweDtcbiAgcmlnaHQ6IDI0cHg7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLmNvbnRhY3RfZm9ybSAud3BjZjcge1xuICBwYWRkaW5nOiAwIDQwcHggNjBweDtcbiAgbWFyZ2luLXRvcDogODBweDtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLmNvbnRhY3RfZm9ybSB7XG4gICAgdG9wOiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwJSk7XG4gICAgcmlnaHQ6IC0xMzAlO1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA0Ny45OWVtKSB7XG4gIC5jb250YWN0X2Zvcm0ge1xuICAgIGJvdHRvbTogLTE0MCU7XG4gICAgbGVmdDogMDtcbiAgICBtYXgtd2lkdGg6IDgwMHB4ICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmNvbnRhY3RfZm9ybSAud3BjZjcge1xuICAgIG92ZXJmbG93OiBhdXRvO1xuICAgIGhlaWdodDogY2FsYygxMDB2aCAtIDgwcHgpO1xuICB9XG59XG5cbi5jb250YWN0X2Zvcm0gYSxcbi5jb250YWN0X2Zvcm0gbGFiZWwge1xuICBjb2xvcjogIzkyOTM5MTtcbn1cblxuLmNvbnRhY3RfZm9ybSBmb3JtID4gZGl2IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZ2FwOiAyNHB4O1xuICBtYXJnaW4tYm90dG9tOiAyNHB4O1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNDcuOTllbSkge1xuICAuY29udGFjdF9mb3JtIGZvcm0gPiBkaXYge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIH1cbn1cblxuLmNvbnRhY3RfZm9ybSBmb3JtIC53cGNmNy1zdWJtaXQ6aG92ZXIge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGNvbG9yOiAjMDAwMDAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYzhkYTJlO1xuICBjb2xvcjogIzI0MjcyMztcbiAgYm9yZGVyLWNvbG9yOiAjYzhkYTJlO1xufVxuXG4uY29udGFjdF9mb3JtIGZvcm0gLnRlcm1zIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgbWFyZ2luLXRvcDogMzBweDtcbiAgZ2FwOiAxMHB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5jb250YWN0X2Zvcm0gZm9ybSAudGVybXMgLndwY2Y3LWxpc3QtaXRlbSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG5ib2R5LnNob3ctcG9saWN5IC5wb2xpY3lfcG9wdXAucG9saWN5IHtcbiAgb3BhY2l0eTogMTtcbiAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbn1cblxuYm9keS5zaG93LXRlcm1zIC5wb2xpY3lfcG9wdXAudGVybXMge1xuICBvcGFjaXR5OiAxO1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xufVxuXG4ucG9saWN5X3BvcHVwIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzJBMkQyOTtcbiAgY29sb3I6IHdoaXRlO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIGluc2V0OiAwO1xuICBwYWRkaW5nOiA2MHB4IDAgMCA0MHB4O1xuICBvcGFjaXR5OiAwO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XG4gIHotaW5kZXg6IDk5O1xufVxuXG4ucG9saWN5X3BvcHVwIC5jbG9zZS1tZSB7XG4gIHdpZHRoOiAxNXB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMjBweDtcbiAgcmlnaHQ6IDIwcHg7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLnBvbGljeV9wb3B1cCAuc2Nyb2xsX2FyZWEge1xuICBvdmVyZmxvdy15OiBhdXRvO1xuICBoZWlnaHQ6IGNhbGMoMTAwZHZoIC0gNjBweCk7XG4gIHBhZGRpbmctcmlnaHQ6IDQwcHg7XG4gIC8qIFRyYWNrICovXG4gIC8qIEhhbmRsZSAqL1xuICAvKiBIYW5kbGUgb24gaG92ZXIgKi9cbn1cblxuLnBvbGljeV9wb3B1cCAuc2Nyb2xsX2FyZWE6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcbiAgd2lkdGg6IDhweDtcbn1cblxuLnBvbGljeV9wb3B1cCAuc2Nyb2xsX2FyZWE6Oi13ZWJraXQtc2Nyb2xsYmFyLXRyYWNrIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG59XG5cbi5wb2xpY3lfcG9wdXAgLnNjcm9sbF9hcmVhOjotd2Via2l0LXNjcm9sbGJhci10aHVtYiB7XG4gIGJhY2tncm91bmQ6ICM4ODg7XG59XG5cbi5wb2xpY3lfcG9wdXAgLnNjcm9sbF9hcmVhOjotd2Via2l0LXNjcm9sbGJhci10aHVtYjpob3ZlciB7XG4gIGJhY2tncm91bmQ6ICNjOGRhMmU7XG59XG5cbi5wb2xpY3lfcG9wdXAgaDIge1xuICBjb2xvcjogI2M4ZGEyZTtcbiAgZm9udC1zaXplOiA0NXB4O1xuICBmb250LXdlaWdodDogNjAwO1xuICBtYXgtd2lkdGg6IDkwMHB4O1xufVxuXG4ucG9saWN5X3BvcHVwIC5wb2xpY3lfY29udGVudCB7XG4gIG1heC13aWR0aDogOTAwcHg7XG4gIGZvbnQtc2l6ZTogMThweDtcbn1cblxuLnBvbGljeV9wb3B1cCAucG9saWN5X2NvbnRlbnQgcCB7XG4gIGZvbnQtc2l6ZTogMThweDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbn1cblxuYm9keS5zaW5nbGUtcmFfam9iLCBib2R5LnBhZ2UtdGVtcGxhdGUtdG1wbC1mbGV4aWJsZS1ibG9ja3Mge1xuICBvdmVyZmxvdzogYXV0bztcbn1cblxuYm9keS5zaW5nbGUtcmFfam9iICosIGJvZHkucGFnZS10ZW1wbGF0ZS10bXBsLWZsZXhpYmxlLWJsb2NrcyAqIHtcbiAgY29sb3I6IHdoaXRlO1xufVxuXG5ib2R5LnNpbmdsZS1yYV9qb2IgaGVhZGVyLCBib2R5LnBhZ2UtdGVtcGxhdGUtdG1wbC1mbGV4aWJsZS1ibG9ja3MgaGVhZGVyIHtcbiAgcGFkZGluZzogNDBweCAwO1xufVxuXG5ib2R5LnNpbmdsZS1yYV9qb2IgaGVhZGVyIGltZywgYm9keS5wYWdlLXRlbXBsYXRlLXRtcGwtZmxleGlibGUtYmxvY2tzIGhlYWRlciBpbWcge1xuICBtYXgtd2lkdGg6IDIzMHB4O1xufVxuXG4uc2luZ2xlLXJhX2pvYixcbi5wYWdlLXRlbXBsYXRlLXRtcGwtam9iYWRkZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBibGFjaztcbn1cblxuLnNpbmdsZS1yYV9qb2IgaGVhZGVyLFxuLnBhZ2UtdGVtcGxhdGUtdG1wbC1qb2JhZGRlciBoZWFkZXIge1xuICBwYWRkaW5nOiA0MHB4IDA7XG59XG5cbi5zaW5nbGUtcmFfam9iIGhlYWRlciBpbWcsXG4ucGFnZS10ZW1wbGF0ZS10bXBsLWpvYmFkZGVyIGhlYWRlciBpbWcge1xuICBtYXgtd2lkdGg6IDIzMHB4O1xufVxuXG4uc2luZ2xlLXJhX2pvYiAjTWFpbixcbi5wYWdlLXRlbXBsYXRlLXRtcGwtam9iYWRkZXIgI01haW4ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmc6IDUwcHggMCAxMDBweDtcbn1cblxuLnNpbmdsZS1yYV9qb2IgKixcbi5wYWdlLXRlbXBsYXRlLXRtcGwtam9iYWRkZXIgKiB7XG4gIGNvbG9yOiB3aGl0ZTtcbn1cblxuLnNpbmdsZS1yYV9qb2Igc3ZnLFxuLnBhZ2UtdGVtcGxhdGUtdG1wbC1qb2JhZGRlciBzdmcge1xuICB3aWR0aDogMTBweDtcbn1cblxuLnNpbmdsZS1yYV9qb2IgLmpvYnNfX3dyYXBwZXIsXG4ucGFnZS10ZW1wbGF0ZS10bXBsLWpvYmFkZGVyIC5qb2JzX193cmFwcGVyIHtcbiAgYm9yZGVyOiAxcHggc29saWQgIzQ0NDQ0NDtcbiAgYm9yZGVyLXJhZGl1czogMC43NXJlbTtcbn1cblxuLnNpbmdsZS1yYV9qb2IgLmpvYnNfX2ZpbHRlcixcbi5wYWdlLXRlbXBsYXRlLXRtcGwtam9iYWRkZXIgLmpvYnNfX2ZpbHRlciB7XG4gIHBhZGRpbmc6IDFyZW07XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjNDQ0NDQ0O1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGdhcDogMXJlbTtcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDQ3Ljk5ZW0pIHtcbiAgLnNpbmdsZS1yYV9qb2IgLmpvYnNfX2ZpbHRlcixcbiAgLnBhZ2UtdGVtcGxhdGUtdG1wbC1qb2JhZGRlciAuam9ic19fZmlsdGVyIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICB9XG59XG5cbi5zaW5nbGUtcmFfam9iIC5qb2JzX19maWx0ZXIgLmZpbHRlci1kcm9wZG93bixcbi5wYWdlLXRlbXBsYXRlLXRtcGwtam9iYWRkZXIgLmpvYnNfX2ZpbHRlciAuZmlsdGVyLWRyb3Bkb3duIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uc2luZ2xlLXJhX2pvYiAuam9ic19fZmlsdGVyIC5maWx0ZXItZHJvcGRvd24gc2VsZWN0LFxuLnBhZ2UtdGVtcGxhdGUtdG1wbC1qb2JhZGRlciAuam9ic19fZmlsdGVyIC5maWx0ZXItZHJvcGRvd24gc2VsZWN0IHtcbiAgYm9yZGVyOiAxcHggc29saWQgIzQ0NDQ0NDtcbiAgYm9yZGVyLXJhZGl1czogMC41cmVtO1xufVxuXG4uc2luZ2xlLXJhX2pvYiAuam9ic19fZmlsdGVyIC5maWx0ZXItZHJvcGRvd24gLmNoZXZyb24sXG4ucGFnZS10ZW1wbGF0ZS10bXBsLWpvYmFkZGVyIC5qb2JzX19maWx0ZXIgLmZpbHRlci1kcm9wZG93biAuY2hldnJvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIHRvcDogOHB4O1xuICByaWdodDogMC43NXJlbTtcbn1cblxuLnNpbmdsZS1yYV9qb2IgLmpvYnNfX2ZpbHRlciAuc2VhcmNoLWZpbHRlcixcbi5wYWdlLXRlbXBsYXRlLXRtcGwtam9iYWRkZXIgLmpvYnNfX2ZpbHRlciAuc2VhcmNoLWZpbHRlciB7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA0Ny45OWVtKSB7XG4gIC5zaW5nbGUtcmFfam9iIC5qb2JzX19maWx0ZXIgLnNlYXJjaC1maWx0ZXIsXG4gIC5wYWdlLXRlbXBsYXRlLXRtcGwtam9iYWRkZXIgLmpvYnNfX2ZpbHRlciAuc2VhcmNoLWZpbHRlciB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cblxuLnNpbmdsZS1yYV9qb2IgLmpvYnNfX2ZpbHRlciAuc2VhcmNoLWZpbHRlciBpbnB1dCxcbi5wYWdlLXRlbXBsYXRlLXRtcGwtam9iYWRkZXIgLmpvYnNfX2ZpbHRlciAuc2VhcmNoLWZpbHRlciBpbnB1dCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICM0NDQ0NDQ7XG4gIHBhZGRpbmc6IDAuNXJlbSAxcmVtO1xuICBib3JkZXItcmFkaXVzOiAwLjVyZW07XG59XG5cbi5zaW5nbGUtcmFfam9iIC5qb2JzX19maWx0ZXIgLnNlYXJjaC1maWx0ZXIgaW5wdXQ6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIsXG4ucGFnZS10ZW1wbGF0ZS10bXBsLWpvYmFkZGVyIC5qb2JzX19maWx0ZXIgLnNlYXJjaC1maWx0ZXIgaW5wdXQ6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIge1xuICAvKiBDaHJvbWUvT3BlcmEvU2FmYXJpICovXG4gIGNvbG9yOiAjOWNhM2FmO1xufVxuXG4uc2luZ2xlLXJhX2pvYiAuam9ic19fZmlsdGVyIC5zZWFyY2gtZmlsdGVyIGlucHV0OjotbW96LXBsYWNlaG9sZGVyLFxuLnBhZ2UtdGVtcGxhdGUtdG1wbC1qb2JhZGRlciAuam9ic19fZmlsdGVyIC5zZWFyY2gtZmlsdGVyIGlucHV0OjotbW96LXBsYWNlaG9sZGVyIHtcbiAgLyogRmlyZWZveCAxOSsgKi9cbiAgY29sb3I6ICM5Y2EzYWY7XG59XG5cbi5zaW5nbGUtcmFfam9iIC5qb2JzX19maWx0ZXIgLnNlYXJjaC1maWx0ZXIgaW5wdXQ6LW1zLWlucHV0LXBsYWNlaG9sZGVyLFxuLnBhZ2UtdGVtcGxhdGUtdG1wbC1qb2JhZGRlciAuam9ic19fZmlsdGVyIC5zZWFyY2gtZmlsdGVyIGlucHV0Oi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7XG4gIC8qIElFIDEwKyAqL1xuICBjb2xvcjogIzljYTNhZjtcbn1cblxuLnNpbmdsZS1yYV9qb2IgLmpvYnNfX2ZpbHRlciAuc2VhcmNoLWZpbHRlciBpbnB1dDotbW96LXBsYWNlaG9sZGVyLFxuLnBhZ2UtdGVtcGxhdGUtdG1wbC1qb2JhZGRlciAuam9ic19fZmlsdGVyIC5zZWFyY2gtZmlsdGVyIGlucHV0Oi1tb3otcGxhY2Vob2xkZXIge1xuICAvKiBGaXJlZm94IDE4LSAqL1xuICBjb2xvcjogIzljYTNhZjtcbn1cblxuLnNpbmdsZS1yYV9qb2IgLmpvYnNfX2ZpbHRlciAuc2VhcmNoLWZpbHRlciBpbnB1dDpmb2N1cyxcbi5wYWdlLXRlbXBsYXRlLXRtcGwtam9iYWRkZXIgLmpvYnNfX2ZpbHRlciAuc2VhcmNoLWZpbHRlciBpbnB1dDpmb2N1cyB7XG4gIGJvcmRlci1jb2xvcjogI2M4ZGEyZTtcbn1cblxuLnNpbmdsZS1yYV9qb2IgLmpvYi1yb3csXG4ucGFnZS10ZW1wbGF0ZS10bXBsLWpvYmFkZGVyIC5qb2Itcm93IHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICM0NDQ0NDQ7XG4gIHBhZGRpbmc6IDI0cHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZ2FwOiAxLjVyZW07XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA0Ny45OWVtKSB7XG4gIC5zaW5nbGUtcmFfam9iIC5qb2Itcm93LFxuICAucGFnZS10ZW1wbGF0ZS10bXBsLWpvYmFkZGVyIC5qb2Itcm93IHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgIGdhcDogMC41cmVtO1xuICB9XG59XG5cbi5zaW5nbGUtcmFfam9iIC5qb2Itcm93Omhhcygubm8tam9iKSxcbi5wYWdlLXRlbXBsYXRlLXRtcGwtam9iYWRkZXIgLmpvYi1yb3c6aGFzKC5uby1qb2IpIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyMDAsIDIxOCwgNDYsIDAuMSk7XG59XG5cbi5zaW5nbGUtcmFfam9iIC5qb2Itcm93IHAubm8tam9iLFxuLnBhZ2UtdGVtcGxhdGUtdG1wbC1qb2JhZGRlciAuam9iLXJvdyBwLm5vLWpvYiB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZmxleDogMTtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLnNpbmdsZS1yYV9qb2IgLmpvYi1yb3cgaDQsXG4ucGFnZS10ZW1wbGF0ZS10bXBsLWpvYmFkZGVyIC5qb2Itcm93IGg0IHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLnNpbmdsZS1yYV9qb2IgLmpvYi1yb3cgLnRhZ3MsXG4ucGFnZS10ZW1wbGF0ZS10bXBsLWpvYmFkZGVyIC5qb2Itcm93IC50YWdzIHtcbiAgbWFyZ2luLWJvdHRvbTogMC43NXJlbTtcbn1cblxuLnNpbmdsZS1yYV9qb2IgLmpvYi1yb3cgLnRhZ3Mgc3Bhbixcbi5wYWdlLXRlbXBsYXRlLXRtcGwtam9iYWRkZXIgLmpvYi1yb3cgLnRhZ3Mgc3BhbiB7XG4gIGNvbG9yOiAjOWNhM2FmO1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBsaW5lLWhlaWdodDogMS4yNXJlbTtcbn1cblxuLnNpbmdsZS1yYV9qb2IgLmpvYi1yb3c6aG92ZXIsXG4ucGFnZS10ZW1wbGF0ZS10bXBsLWpvYmFkZGVyIC5qb2Itcm93OmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyMDAsIDIxOCwgNDYsIDAuMSk7XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XG59XG5cbi5zaW5nbGUtcmFfam9iIC5qb2Itcm93IGEsXG4ucGFnZS10ZW1wbGF0ZS10bXBsLWpvYmFkZGVyIC5qb2Itcm93IGEge1xuICBjb2xvcjogI2M4ZGEyZTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGdhcDogNXB4O1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuXG4uc2luZ2xlLXJhX2pvYiAuam9iLXJvdyBhIHN2Zyxcbi5wYWdlLXRlbXBsYXRlLXRtcGwtam9iYWRkZXIgLmpvYi1yb3cgYSBzdmcge1xuICBsZWZ0OiAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2U7XG4gIHdpZHRoOiAxNXB4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuXG4uc2luZ2xlLXJhX2pvYiAuam9iLXJvdyBhIHN2ZyBwYXRoLFxuLnBhZ2UtdGVtcGxhdGUtdG1wbC1qb2JhZGRlciAuam9iLXJvdyBhIHN2ZyBwYXRoIHtcbiAgY29sb3I6ICNjOGRhMmU7XG59XG5cbi5zaW5nbGUtcmFfam9iIC5qb2Itcm93IGE6aG92ZXIgc3ZnLFxuLnBhZ2UtdGVtcGxhdGUtdG1wbC1qb2JhZGRlciAuam9iLXJvdyBhOmhvdmVyIHN2ZyB7XG4gIGxlZnQ6IDVweDtcbn1cblxuLnNpbmdsZS1yYV9qb2IgLnBhZ2luYXRpb24sXG4ucGFnZS10ZW1wbGF0ZS10bXBsLWpvYmFkZGVyIC5wYWdpbmF0aW9uIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwYWRkaW5nOiAxLjVyZW07XG59XG5cbi5zaW5nbGUtcmFfam9iIC5wYWdpbmF0aW9uX19wYWdlcyxcbi5wYWdlLXRlbXBsYXRlLXRtcGwtam9iYWRkZXIgLnBhZ2luYXRpb25fX3BhZ2VzIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZ2FwOiAzcHg7XG59XG5cbi5zaW5nbGUtcmFfam9iIC5wYWdpbmF0aW9uX19wYWdlcyBidXR0b24sXG4ucGFnZS10ZW1wbGF0ZS10bXBsLWpvYmFkZGVyIC5wYWdpbmF0aW9uX19wYWdlcyBidXR0b24ge1xuICB0cmFuc2l0aW9uOiBhbGwgMTUwbXMgY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC4yLCAxKTtcbiAgY29sb3I6ICM5Y2EzYWY7XG4gIHBhZGRpbmc6IDAuMjVyZW0gMC43NXJlbTtcbiAgYm9yZGVyLWNvbG9yOiAjMzc0MTUxO1xuICBib3JkZXItcmFkaXVzOiAwLjI1cmVtO1xuICBsaW5lLWhlaWdodDogMS41O1xufVxuXG4uc2luZ2xlLXJhX2pvYiAucGFnaW5hdGlvbl9fcGFnZXMgYnV0dG9uLmFjdGl2ZSxcbi5wYWdlLXRlbXBsYXRlLXRtcGwtam9iYWRkZXIgLnBhZ2luYXRpb25fX3BhZ2VzIGJ1dHRvbi5hY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYzhkYTJlO1xuICBjb2xvcjogIzAwMDAwMDtcbn1cblxuLnNpbmdsZS1yYV9qb2IgLnBhZ2luYXRpb25fX3BhZ2VzIGJ1dHRvbjpob3Zlcixcbi5wYWdlLXRlbXBsYXRlLXRtcGwtam9iYWRkZXIgLnBhZ2luYXRpb25fX3BhZ2VzIGJ1dHRvbjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXItY29sb3I6ICNjOGRhMmU7XG59XG5cbi5zaW5nbGUtcmFfam9iIC5qb2ItZGV0YWlscyB7XG4gIG1heC13aWR0aDogODAwcHg7XG59XG5cbi5zaW5nbGUtcmFfam9iIC5qb2ItZGV0YWlscyAuam9iX3RhZ3Mge1xuICBtYXJnaW4tYm90dG9tOiAzMHB4O1xufVxuXG4uc2luZ2xlLXJhX2pvYiAuam9iLWRldGFpbHMgLmpvYl90YWdzIC5qb2JfdGFnIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLnNpbmdsZS1yYV9qb2IgLmpvYi1kZXRhaWxzIC5qb2JfdGFncyAuam9iX3RhZyBzcGFuIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbi5zaW5nbGUtcmFfam9iIC5iYWNrLWxpbmsge1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xufVxuXG4uc2luZ2xlLXJhX2pvYiAuYmFjay1saW5rIGEge1xuICBjb2xvcjogI2M4ZGEyZTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICBnYXA6IDVweDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cblxuLnNpbmdsZS1yYV9qb2IgLmJhY2stbGluayBhIHN2ZyB7XG4gIGxlZnQ6IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZTtcbiAgd2lkdGg6IDE1cHg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHJvdGF0ZTogMTgwZGVnO1xufVxuXG4uc2luZ2xlLXJhX2pvYiAuYmFjay1saW5rIGEgc3ZnIHBhdGgge1xuICBjb2xvcjogI2M4ZGEyZTtcbn1cblxuLnNpbmdsZS1yYV9qb2IgLmJhY2stbGluayBhOmhvdmVyIHN2ZyB7XG4gIGxlZnQ6IC0xMHB4O1xufVxuXG4uc2luZ2xlLXJhX2pvYiAuY3RhIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgZ2FwOiAyMHB4O1xufVxuXG4uc2luZ2xlLXJhX2pvYiAuY3RhIC5tYWlsLWxpbmsge1xuICBkaXNwbGF5OiBmbGV4O1xuICBnYXA6IDEzcHg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5cbi5zaW5nbGUtcmFfam9iIC5jdGEgLm1haWwtbGluayBzdmcge1xuICB3aWR0aDogMTJweDtcbn1cbiIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAjQk9YLVNJWklOR1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBNb3JlIHNlbnNpYmxlIGRlZmF1bHQgYm94LXNpemluZzpcbiAqIGNzcy10cmlja3MuY29tL2luaGVyaXRpbmctYm94LXNpemluZy1wcm9iYWJseS1zbGlnaHRseS1iZXR0ZXItYmVzdC1wcmFjdGljZVxuICovXG5cbmh0bWwge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG4qIHtcblxuICAmLFxuICAmOmJlZm9yZSxcbiAgJjphZnRlciB7XG4gICAgYm94LXNpemluZzogaW5oZXJpdDtcbiAgfVxuXG59XG4iLCIvLyBAZm9udC1mYWNlIHtcbi8vIFx0Zm9udC1mYW1pbHk6IFwiT3BlblNhbnMgUmVndWxhclwiO1xuLy8gXHRmb250LXN0eWxlOiBub3JtYWw7XG4vLyBcdHNyYzogdXJsKFwiLi4vZm9udHMvT3BlblNhbnMtUmVndWxhci5lb3RcIikgZm9ybWF0KFwiZW1iZWRkZWQtb3BlbnR5cGVcIiksXG4vLyBcdFx0dXJsKFwiLi4vZm9udHMvT3BlblNhbnMtUmVndWxhci53b2ZmXCIpIGZvcm1hdChcIndvZmZcIiksXG4vLyBcdFx0dXJsKFwiLi4vZm9udHMvT3BlblNhbnMtUmVndWxhci50dGZcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIiksXG4vLyBcdFx0dXJsKFwiLi4vZm9udHMvT3BlblNhbnMtUmVndWxhci5zdmcjT3BlblNhbnMtUmVndWxhclwiKSBmb3JtYXQoXCJzdmdcIik7XG4vLyB9XG5cbkBpbXBvcnQgdXJsKCdodHRwczovL2ZvbnRzLmdvb2dsZWFwaXMuY29tL2NzczI/ZmFtaWx5PVJlZCtIYXQrRGlzcGxheTppdGFsLHdnaHRAMCwzMDAuLjkwMDsxLDMwMC4uOTAwJmRpc3BsYXk9c3dhcCcpO1xuXG4kcHJpbWFyeTogIFwiUmVkIEhhdCBEaXNwbGF5XCIsIHNhbnMtc2VyaWY7XG4kaGVhZGluZzogIFwiUmVkIEhhdCBEaXNwbGF5XCIsIHNhbnMtc2VyaWY7XG4iLCIvKiEgbm9ybWFsaXplLmNzcyB2Ny4wLjAgfCBNSVQgTGljZW5zZSB8IGdpdGh1Yi5jb20vbmVjb2xhcy9ub3JtYWxpemUuY3NzICovXG5cbi8qIERvY3VtZW50XG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIGxpbmUgaGVpZ2h0IGluIGFsbCBicm93c2Vycy5cbiAqIDIuIFByZXZlbnQgYWRqdXN0bWVudHMgb2YgZm9udCBzaXplIGFmdGVyIG9yaWVudGF0aW9uIGNoYW5nZXMgaW5cbiAqICAgIElFIG9uIFdpbmRvd3MgUGhvbmUgYW5kIGluIGlPUy5cbiAqL1xuXG5odG1sIHtcbiAgbGluZS1oZWlnaHQ6IDEuMTU7IC8qIDEgKi9cbiAgLW1zLXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7IC8qIDIgKi9cbiAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvKiAyICovXG59XG5cbi8qIFNlY3Rpb25zXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIFJlbW92ZSB0aGUgbWFyZ2luIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICovXG5cbmJvZHkge1xuICBtYXJnaW46IDA7XG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gKi9cblxuYXJ0aWNsZSxcbmFzaWRlLFxuZm9vdGVyLFxuaGVhZGVyLFxubmF2LFxuc2VjdGlvbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vKipcbiAqIENvcnJlY3QgdGhlIGZvbnQgc2l6ZSBhbmQgbWFyZ2luIG9uIGBoMWAgZWxlbWVudHMgd2l0aGluIGBzZWN0aW9uYCBhbmRcbiAqIGBhcnRpY2xlYCBjb250ZXh0cyBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBTYWZhcmkuXG4gKi9cblxuaDEge1xuICBmb250LXNpemU6IDJlbTtcbiAgbWFyZ2luOiAwLjY3ZW0gMDtcbn1cblxuLyogR3JvdXBpbmcgY29udGVudFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cbiAqIDEuIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFLlxuICovXG5cbmZpZ2NhcHRpb24sXG5maWd1cmUsXG5tYWluIHsgLyogMSAqL1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgbWFyZ2luIGluIElFIDguXG4gKi9cblxuZmlndXJlIHtcbiAgbWFyZ2luOiAxZW0gNDBweDtcbn1cblxuLyoqXG4gKiAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBGaXJlZm94LlxuICogMi4gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZSBhbmQgSUUuXG4gKi9cblxuaHIge1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDsgLyogMSAqL1xuICBoZWlnaHQ6IDA7IC8qIDEgKi9cbiAgb3ZlcmZsb3c6IHZpc2libGU7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICogMi4gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbnByZSB7XG4gIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTsgLyogMSAqL1xuICBmb250LXNpemU6IDFlbTsgLyogMiAqL1xufVxuXG4vKiBUZXh0LWxldmVsIHNlbWFudGljc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiAxLiBSZW1vdmUgdGhlIGdyYXkgYmFja2dyb3VuZCBvbiBhY3RpdmUgbGlua3MgaW4gSUUgMTAuXG4gKiAyLiBSZW1vdmUgZ2FwcyBpbiBsaW5rcyB1bmRlcmxpbmUgaW4gaU9TIDgrIGFuZCBTYWZhcmkgOCsuXG4gKi9cblxuYSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyAvKiAxICovXG4gIC13ZWJraXQtdGV4dC1kZWNvcmF0aW9uLXNraXA6IG9iamVjdHM7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiAxLiBSZW1vdmUgdGhlIGJvdHRvbSBib3JkZXIgaW4gQ2hyb21lIDU3LSBhbmQgRmlyZWZveCAzOS0uXG4gKiAyLiBBZGQgdGhlIGNvcnJlY3QgdGV4dCBkZWNvcmF0aW9uIGluIENocm9tZSwgRWRnZSwgSUUsIE9wZXJhLCBhbmQgU2FmYXJpLlxuICovXG5cbmFiYnJbdGl0bGVdIHtcbiAgYm9yZGVyLWJvdHRvbTogbm9uZTsgLyogMSAqL1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgLyogMiAqL1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSBkb3R0ZWQ7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBQcmV2ZW50IHRoZSBkdXBsaWNhdGUgYXBwbGljYXRpb24gb2YgYGJvbGRlcmAgYnkgdGhlIG5leHQgcnVsZSBpbiBTYWZhcmkgNi5cbiAqL1xuXG5iLFxuc3Ryb25nIHtcbiAgZm9udC13ZWlnaHQ6IGluaGVyaXQ7XG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGZvbnQgd2VpZ2h0IGluIENocm9tZSwgRWRnZSwgYW5kIFNhZmFyaS5cbiAqL1xuXG5iLFxuc3Ryb25nIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGRlcjtcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICogMi4gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbmNvZGUsXG5rYmQsXG5zYW1wIHtcbiAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlOyAvKiAxICovXG4gIGZvbnQtc2l6ZTogMWVtOyAvKiAyICovXG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGZvbnQgc3R5bGUgaW4gQW5kcm9pZCA0LjMtLlxuICovXG5cbmRmbiB7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgYmFja2dyb3VuZCBhbmQgY29sb3IgaW4gSUUgOS0uXG4gKi9cblxubWFyayB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZjA7XG4gIGNvbG9yOiAjMDAwO1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbnNtYWxsIHtcbiAgZm9udC1zaXplOiA4MCU7XG59XG5cbi8qKlxuICogUHJldmVudCBgc3ViYCBhbmQgYHN1cGAgZWxlbWVudHMgZnJvbSBhZmZlY3RpbmcgdGhlIGxpbmUgaGVpZ2h0IGluXG4gKiBhbGwgYnJvd3NlcnMuXG4gKi9cblxuc3ViLFxuc3VwIHtcbiAgZm9udC1zaXplOiA3NSU7XG4gIGxpbmUtaGVpZ2h0OiAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cblxuc3ViIHtcbiAgYm90dG9tOiAtMC4yNWVtO1xufVxuXG5zdXAge1xuICB0b3A6IC0wLjVlbTtcbn1cblxuLyogRW1iZWRkZWQgY29udGVudFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cbiAqL1xuXG5hdWRpbyxcbnZpZGVvIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIGlPUyA0LTcuXG4gKi9cblxuYXVkaW86bm90KFtjb250cm9sc10pIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgaGVpZ2h0OiAwO1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgYm9yZGVyIG9uIGltYWdlcyBpbnNpZGUgbGlua3MgaW4gSUUgMTAtLlxuICovXG5cbmltZyB7XG4gIGJvcmRlci1zdHlsZTogbm9uZTtcbn1cblxuLyoqXG4gKiBIaWRlIHRoZSBvdmVyZmxvdyBpbiBJRS5cbiAqL1xuXG5zdmc6bm90KDpyb290KSB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi8qIEZvcm1zXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIDEuIENoYW5nZSB0aGUgZm9udCBzdHlsZXMgaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gKiAyLiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBGaXJlZm94IGFuZCBTYWZhcmkuXG4gKi9cblxuYnV0dG9uLFxuaW5wdXQsXG5vcHRncm91cCxcbnNlbGVjdCxcbnRleHRhcmVhIHtcbiAgZm9udC1mYW1pbHk6IHNhbnMtc2VyaWY7IC8qIDEgKi9cbiAgZm9udC1zaXplOiAxMDAlOyAvKiAxICovXG4gIGxpbmUtaGVpZ2h0OiAxLjE1OyAvKiAxICovXG4gIG1hcmdpbjogMDsgLyogMiAqL1xufVxuXG4vKipcbiAqIFNob3cgdGhlIG92ZXJmbG93IGluIElFLlxuICogMS4gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZS5cbiAqL1xuXG5idXR0b24sXG5pbnB1dCB7IC8qIDEgKi9cbiAgb3ZlcmZsb3c6IHZpc2libGU7XG59XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBFZGdlLCBGaXJlZm94LCBhbmQgSUUuXG4gKiAxLiBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEZpcmVmb3guXG4gKi9cblxuYnV0dG9uLFxuc2VsZWN0IHsgLyogMSAqL1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbn1cblxuLyoqXG4gKiAxLiBQcmV2ZW50IGEgV2ViS2l0IGJ1ZyB3aGVyZSAoMikgZGVzdHJveXMgbmF0aXZlIGBhdWRpb2AgYW5kIGB2aWRlb2BcbiAqICAgIGNvbnRyb2xzIGluIEFuZHJvaWQgNC5cbiAqIDIuIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG4gKi9cblxuYnV0dG9uLFxuaHRtbCBbdHlwZT1cImJ1dHRvblwiXSwgLyogMSAqL1xuW3R5cGU9XCJyZXNldFwiXSxcblt0eXBlPVwic3VibWl0XCJdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGlubmVyIGJvcmRlciBhbmQgcGFkZGluZyBpbiBGaXJlZm94LlxuICovXG5cbmJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwiYnV0dG9uXCJdOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJyZXNldFwiXTo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwic3VibWl0XCJdOjotbW96LWZvY3VzLWlubmVyIHtcbiAgYm9yZGVyLXN0eWxlOiBub25lO1xuICBwYWRkaW5nOiAwO1xufVxuXG4vKipcbiAqIFJlc3RvcmUgdGhlIGZvY3VzIHN0eWxlcyB1bnNldCBieSB0aGUgcHJldmlvdXMgcnVsZS5cbiAqL1xuXG5idXR0b246LW1vei1mb2N1c3JpbmcsXG5bdHlwZT1cImJ1dHRvblwiXTotbW96LWZvY3VzcmluZyxcblt0eXBlPVwicmVzZXRcIl06LW1vei1mb2N1c3JpbmcsXG5bdHlwZT1cInN1Ym1pdFwiXTotbW96LWZvY3VzcmluZyB7XG4gIG91dGxpbmU6IDFweCBkb3R0ZWQgQnV0dG9uVGV4dDtcbn1cblxuLyoqXG4gKiBDb3JyZWN0IHRoZSBwYWRkaW5nIGluIEZpcmVmb3guXG4gKi9cblxuZmllbGRzZXQge1xuICBwYWRkaW5nOiAwLjM1ZW0gMC43NWVtIDAuNjI1ZW07XG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgdGV4dCB3cmFwcGluZyBpbiBFZGdlIGFuZCBJRS5cbiAqIDIuIENvcnJlY3QgdGhlIGNvbG9yIGluaGVyaXRhbmNlIGZyb20gYGZpZWxkc2V0YCBlbGVtZW50cyBpbiBJRS5cbiAqIDMuIFJlbW92ZSB0aGUgcGFkZGluZyBzbyBkZXZlbG9wZXJzIGFyZSBub3QgY2F1Z2h0IG91dCB3aGVuIHRoZXkgemVybyBvdXRcbiAqICAgIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbmxlZ2VuZCB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8qIDEgKi9cbiAgY29sb3I6IGluaGVyaXQ7IC8qIDIgKi9cbiAgZGlzcGxheTogdGFibGU7IC8qIDEgKi9cbiAgbWF4LXdpZHRoOiAxMDAlOyAvKiAxICovXG4gIHBhZGRpbmc6IDA7IC8qIDMgKi9cbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDsgLyogMSAqL1xufVxuXG4vKipcbiAqIDEuIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDktLlxuICogMi4gQWRkIHRoZSBjb3JyZWN0IHZlcnRpY2FsIGFsaWdubWVudCBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBPcGVyYS5cbiAqL1xuXG5wcm9ncmVzcyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jazsgLyogMSAqL1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGRlZmF1bHQgdmVydGljYWwgc2Nyb2xsYmFyIGluIElFLlxuICovXG5cbnRleHRhcmVhIHtcbiAgb3ZlcmZsb3c6IGF1dG87XG59XG5cbi8qKlxuICogMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gSUUgMTAtLlxuICogMi4gUmVtb3ZlIHRoZSBwYWRkaW5nIGluIElFIDEwLS5cbiAqL1xuXG5bdHlwZT1cImNoZWNrYm94XCJdLFxuW3R5cGU9XCJyYWRpb1wiXSB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8qIDEgKi9cbiAgcGFkZGluZzogMDsgLyogMiAqL1xufVxuXG4vKipcbiAqIENvcnJlY3QgdGhlIGN1cnNvciBzdHlsZSBvZiBpbmNyZW1lbnQgYW5kIGRlY3JlbWVudCBidXR0b25zIGluIENocm9tZS5cbiAqL1xuXG5bdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcblt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIG9kZCBhcHBlYXJhbmNlIGluIENocm9tZSBhbmQgU2FmYXJpLlxuICogMi4gQ29ycmVjdCB0aGUgb3V0bGluZSBzdHlsZSBpbiBTYWZhcmkuXG4gKi9cblxuW3R5cGU9XCJzZWFyY2hcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDsgLyogMSAqL1xuICBvdXRsaW5lLW9mZnNldDogLTJweDsgLyogMiAqL1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgaW5uZXIgcGFkZGluZyBhbmQgY2FuY2VsIGJ1dHRvbnMgaW4gQ2hyb21lIGFuZCBTYWZhcmkgb24gbWFjT1MuXG4gKi9cblxuW3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWNhbmNlbC1idXR0b24sXG5bdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuICogMi4gQ2hhbmdlIGZvbnQgcHJvcGVydGllcyB0byBgaW5oZXJpdGAgaW4gU2FmYXJpLlxuICovXG5cbjo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsgLyogMSAqL1xuICBmb250OiBpbmhlcml0OyAvKiAyICovXG59XG5cbi8qIEludGVyYWN0aXZlXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gKiAxLiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBFZGdlLCBJRSwgYW5kIEZpcmVmb3guXG4gKi9cblxuZGV0YWlscywgLyogMSAqL1xubWVudSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbnN1bW1hcnkge1xuICBkaXNwbGF5OiBsaXN0LWl0ZW07XG59XG5cbi8qIFNjcmlwdGluZ1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cbiAqL1xuXG5jYW52YXMge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUuXG4gKi9cblxudGVtcGxhdGUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4vKiBIaWRkZW5cbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgMTAtLlxuICovXG5cbltoaWRkZW5dIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbiIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAjUkVTRVRcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogQSB2ZXJ5IHNpbXBsZSByZXNldCB0aGF0IHNpdHMgb24gdG9wIG9mIE5vcm1hbGl6ZS5jc3MuXG4gKi9cblxuYm9keSxcbmgxLCBoMiwgaDMsIGg0LCBoNSwgaDYsXG5ibG9ja3F1b3RlLCBwLCBwcmUsXG5kbCwgZGQsIG9sLCB1bCxcbmZpZ3VyZSxcbmhyLFxuZmllbGRzZXQsIGxlZ2VuZCB7XG4gIG1hcmdpbjogIDA7XG4gIHBhZGRpbmc6IDA7XG59XG5cblxuXG4vKipcbiAqIFJlbW92ZSB0cmFpbGluZyBtYXJnaW5zIGZyb20gbmVzdGVkIGxpc3RzLlxuICovXG5cbmxpID4ge1xuXG4gIG9sLFxuICB1bCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxuXG59XG5cblxuXG4vKipcbiAqIFJlbW92ZSBkZWZhdWx0IHRhYmxlIHNwYWNpbmcuXG4gKi9cblxudGFibGUge1xuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuICBib3JkZXItc3BhY2luZzogMDtcbn1cblxuXG5cbi8qKlxuICogMS4gUmVzZXQgQ2hyb21lIGFuZCBGaXJlZm94IGJlaGF2aW91ciB3aGljaCBzZXRzIGEgYG1pbi13aWR0aDogbWluLWNvbnRlbnQ7YFxuICogICAgb24gZmllbGRzZXRzLlxuICovXG5cbmZpZWxkc2V0IHtcbiAgbWluLXdpZHRoOiAwOyAvKiBbMV0gKi9cbiAgYm9yZGVyOiAwO1xufVxuIiwiLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICNTSEFSRURcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogU2hhcmVkIGRlY2xhcmF0aW9ucyBmb3IgY2VydGFpbiBlbGVtZW50cy5cbiAqL1xuXG4vKipcbiAqIEFsd2F5cyBkZWNsYXJlIG1hcmdpbnMgaW4gdGhlIHNhbWUgZGlyZWN0aW9uOlxuICogY3Nzd2l6YXJkcnkuY29tLzIwMTIvMDYvc2luZ2xlLWRpcmVjdGlvbi1tYXJnaW4tZGVjbGFyYXRpb25zXG4gKi9cblxuYWRkcmVzcyxcbmgxLCBoMiwgaDMsIGg0LCBoNSwgaDYsXG5ibG9ja3F1b3RlLCBwLCBwcmUsXG5kbCwgb2wsIHVsLFxuZmlndXJlLFxuaHIsXG50YWJsZSxcbmZpZWxkc2V0IHtcbiAgbWFyZ2luLWJvdHRvbTogJGludWl0LWdsb2JhbC1zcGFjaW5nLXVuaXQ7XG59XG5cblxuXG4vKipcbiAqIENvbnNpc3RlbnQgaW5kZW50YXRpb24gZm9yIGxpc3RzLlxuICovXG5cbmRkLCBvbCwgdWwge1xuICBtYXJnaW4tbGVmdDogJGludWl0LWdsb2JhbC1zcGFjaW5nLXVuaXQ7XG59XG4iLCIvLy8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gICAjQ09SRVxuLy8gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLy8gVGhpcyBjb3JlIGZpbGUgc2V0cyB1cCBpbnVpdGNzc+KAmSBtb3N0IGltcG9ydGFudCBzZXR1cCB2YXJpYWJsZXMuIFRoZXlcbi8vIHVuZGVycGluIGEgbG90IG9mIGhvdyB0aGUgZnJhbWV3b3JrIGZ1bmN0aW9ucyBhbmQgc2hvdWxkIGJlIG1vZGlmaWVkIGFuZFxuLy8gcHJlY29uZmlndXJlZCB3aXRoIGNhdXRpb24uXG5cblxuXG4vLyBCYXNlbGluZSBncmlkIGxpbmVzIGhlaWdodC5cbi8vIEV2ZXJ5IHNwYWNpbmcgbWV0cmljIHNob3VsZCBiZSBiYXNlZCBvbiB0aGlzLlxuXG4kaW51aXQtZ2xvYmFsLWJhc2VsaW5lOiAgICAgNnB4ICFkZWZhdWx0O1xuXG5cblxuLy8gSG93IG1hbnkgZ3JpZCBsaW5lcyBzaG91bGQgb3VyIHNwYWNpbmcgdW5pdCB2YXJpYW50cyBzcGFuP1xuLy8gRWFjaCB2YWx1ZSBzaG91bGQgYmUgYW4gdW5pdGxlc3MgaW50ZWdlci5cblxuJGludWl0LWdsb2JhbC1zcGFjaW5nLXVuaXQtZmFjdG9yLXRpbnk6ICAgMSAhZGVmYXVsdDsgICAvLyA2cHhcbiRpbnVpdC1nbG9iYWwtc3BhY2luZy11bml0LWZhY3Rvci1zbWFsbDogIDIgIWRlZmF1bHQ7ICAgLy8gMTJweFxuJGludWl0LWdsb2JhbC1zcGFjaW5nLXVuaXQtZmFjdG9yOiAgICAgICAgNCAhZGVmYXVsdDsgICAvLyAyNHB4XG4kaW51aXQtZ2xvYmFsLXNwYWNpbmctdW5pdC1mYWN0b3ItbGFyZ2U6ICA4ICFkZWZhdWx0OyAgIC8vIDQ4cHhcbiRpbnVpdC1nbG9iYWwtc3BhY2luZy11bml0LWZhY3Rvci1odWdlOiAgIDE2ICFkZWZhdWx0OyAgLy8gOTZweFxuXG5cblxuLy8gU3BhY2luZyB2YWx1ZXMgYXJlIGRldGVybWluZWQgYmFzZWQgb24geW91ciBwcm9qZWN04oCZcyBnbG9iYWwgYmFzZWxpbmUgZ3JpZC5cbi8vIEl0IGlzIG5vdCByZWNvbW1lbmRlZCB0aGF0IHlvdSBtb2RpZnkgdGhlc2UgZm9sbG93aW5nIHZhcmlhYmxlc1xuLy8gKGl0IGNhbiBicmVhayB5b3VyIHZlcnRpY2FsIHJoeXRobSksIGJ1dCBpZiB5b3UgbmVlZCB0bywgeW91IGNhbi5cblxuJGludWl0LWdsb2JhbC1zcGFjaW5nLXVuaXQ6ICAgICAgICRpbnVpdC1nbG9iYWwtYmFzZWxpbmUgKiAkaW51aXQtZ2xvYmFsLXNwYWNpbmctdW5pdC1mYWN0b3IgIWRlZmF1bHQ7XG4kaW51aXQtZ2xvYmFsLXNwYWNpbmctdW5pdC10aW55OiAgJGludWl0LWdsb2JhbC1iYXNlbGluZSAqICRpbnVpdC1nbG9iYWwtc3BhY2luZy11bml0LWZhY3Rvci10aW55ICFkZWZhdWx0O1xuJGludWl0LWdsb2JhbC1zcGFjaW5nLXVuaXQtc21hbGw6ICRpbnVpdC1nbG9iYWwtYmFzZWxpbmUgKiAkaW51aXQtZ2xvYmFsLXNwYWNpbmctdW5pdC1mYWN0b3Itc21hbGwgIWRlZmF1bHQ7XG4kaW51aXQtZ2xvYmFsLXNwYWNpbmctdW5pdC1sYXJnZTogJGludWl0LWdsb2JhbC1iYXNlbGluZSAqICRpbnVpdC1nbG9iYWwtc3BhY2luZy11bml0LWZhY3Rvci1sYXJnZSAhZGVmYXVsdDtcbiRpbnVpdC1nbG9iYWwtc3BhY2luZy11bml0LWh1Z2U6ICAkaW51aXQtZ2xvYmFsLWJhc2VsaW5lICogJGludWl0LWdsb2JhbC1zcGFjaW5nLXVuaXQtZmFjdG9yLWh1Z2UgIWRlZmF1bHQ7XG5cblxuXG4vLyBCYXNlIHR5cG9ncmFwaGljYWwgc3R5bGVzLlxuXG4kaW51aXQtZ2xvYmFsLWZvbnQtc2l6ZTogICAgMTZweCAhZGVmYXVsdDtcbiRpbnVpdC1nbG9iYWwtbGluZS1oZWlnaHQ6ICAkaW51aXQtZ2xvYmFsLXNwYWNpbmctdW5pdCAhZGVmYXVsdDtcblxuXG5cblxuXG4vLyBDaGVjayB0aGF0IHRoZSBjaG9zZW4gZm9udCBydWxlcyBhcmUgcGl4ZWwgbnVtYmVycy5cblxuQGVhY2ggJF9pbnVpdC1mb250LWdsb2JhbHMgaW5cbiAgICAgICRpbnVpdC1nbG9iYWwtZm9udC1zaXplXG4gICAgICAkaW51aXQtZ2xvYmFsLWxpbmUtaGVpZ2h0IHtcblxuICBAaWYgKHR5cGUtb2YoJF9pbnVpdC1mb250LWdsb2JhbHMpID09IG51bWJlcikge1xuXG4gICAgQGlmICh1bml0KCRfaW51aXQtZm9udC1nbG9iYWxzKSAhPSBcInB4XCIpIHtcbiAgICAgIEBlcnJvciBcImAjeyRfaW51aXQtZm9udC1nbG9iYWxzfWAgbmVlZHMgdG8gYmUgYSBwaXhlbCB2YWx1ZS5cIjtcbiAgICB9XG5cbiAgfSBAZWxzZSB7XG4gICAgQGVycm9yIFwiYCN7JF9pbnVpdC1mb250LWdsb2JhbHN9YCBuZWVkcyB0byBiZSBhIG51bWJlci5cIjtcbiAgfVxuXG59XG5cblxuXG4vLyBDaGVjayB0aGF0IHRoZSBjaG9zZW4gc2l6ZSBmYWN0b3JzIGFyZSB1bml0bGVzcywgaW50ZWdlciBudW1iZXJzLlxuXG5AZWFjaCAkX2ludWl0LXNwYWNpbmctdW5pdCBpblxuICAgICAgJGludWl0LWdsb2JhbC1zcGFjaW5nLXVuaXQtZmFjdG9yLXRpbnlcbiAgICAgICRpbnVpdC1nbG9iYWwtc3BhY2luZy11bml0LWZhY3Rvci1zbWFsbFxuICAgICAgJGludWl0LWdsb2JhbC1zcGFjaW5nLXVuaXQtZmFjdG9yLWxhcmdlXG4gICAgICAkaW51aXQtZ2xvYmFsLXNwYWNpbmctdW5pdC1mYWN0b3ItaHVnZSB7XG5cbiAgQGlmICh0eXBlLW9mKCRfaW51aXQtc3BhY2luZy11bml0KSA9PSBudW1iZXIpIHtcblxuICAgIEBpZiAodW5pdGxlc3MoJF9pbnVpdC1zcGFjaW5nLXVuaXQpID09IGZhbHNlKSB7XG4gICAgICBAZXJyb3IgXCJgI3skX2ludWl0LXNwYWNpbmctdW5pdH1gIG5lZWRzIHRvIGJlIHVuaXRsZXNzLlwiO1xuICAgIH1cblxuICAgIEBpZiAoJF9pbnVpdC1zcGFjaW5nLXVuaXQgIT0gY2VpbCgkX2ludWl0LXNwYWNpbmctdW5pdCkpIHtcbiAgICAgIEBlcnJvciBcImAjeyRfaW51aXQtc3BhY2luZy11bml0fWAgbmVlZHMgdG8gYmUgYW4gaW50ZWdlci5cIjtcbiAgICB9XG5cbiAgfSBAZWxzZSB7XG4gICAgQGVycm9yIFwiYCN7JF9pbnVpdC1zcGFjaW5nLXVuaXR9YCBuZWVkcyB0byBiZSBhIG51bWJlci5cIjtcbiAgfVxuXG59XG4iLCIvKiBTbGlkZXIgKi9cblxuLnNsaWNrLXNsaWRlciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgLXdlYmtpdC10b3VjaC1jYWxsb3V0OiBub25lO1xuICAgIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgLWtodG1sLXVzZXItc2VsZWN0OiBub25lO1xuICAgIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xuICAgIHVzZXItc2VsZWN0OiBub25lO1xuICAgIC1tcy10b3VjaC1hY3Rpb246IHBhbi15O1xuICAgIHRvdWNoLWFjdGlvbjogcGFuLXk7XG4gICAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cbi5zbGljay1saXN0IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcblxuICAgICY6Zm9jdXMge1xuICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgIH1cblxuICAgICYuZHJhZ2dpbmcge1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIGN1cnNvcjogaGFuZDtcbiAgICB9XG59XG4uc2xpY2stc2xpZGVyIC5zbGljay10cmFjayxcbi5zbGljay1zbGlkZXIgLnNsaWNrLWxpc3Qge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xufVxuXG4uc2xpY2stdHJhY2sge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogMDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG5cbiAgICAmOmJlZm9yZSxcbiAgICAmOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgfVxuXG4gICAgJjphZnRlciB7XG4gICAgICAgIGNsZWFyOiBib3RoO1xuICAgIH1cblxuICAgIC5zbGljay1sb2FkaW5nICYge1xuICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgfVxufVxuLnNsaWNrLXNsaWRlIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgbWluLWhlaWdodDogMXB4O1xuICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgIGZsb2F0OiByaWdodDtcbiAgICB9XG4gICAgaW1nIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICAgICYuc2xpY2stbG9hZGluZyBpbWcge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICAmLmRyYWdnaW5nIGltZyB7XG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIH1cblxuICAgIC5zbGljay1pbml0aWFsaXplZCAmIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuXG4gICAgLnNsaWNrLWxvYWRpbmcgJiB7XG4gICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICB9XG5cbiAgICAuc2xpY2stdmVydGljYWwgJiB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIH1cbn1cbi5zbGljay1hcnJvdy5zbGljay1oaWRkZW4ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG59XG4iLCJpbWcge1xuXHR3aWR0aDogMTAwJTtcblx0bWF4LXdpZHRoOiAxMDAlO1xufSIsImgxLGgyLGgzLGg0LGg1LGg2e1xuXHRtYXJrIHtcblx0XHRjb2xvcjogJGxpbWUgIWltcG9ydGFudDtcblx0XHRmb250LXdlaWdodDogNzAwO1xuXHRcdGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuXHR9XG59XG5cbmgxIHtcblx0QGluY2x1ZGUgZm9udC1zaXplKDMycHgsIDEuMjUpO1xuXHRtYXJnaW46IDAgMCAyMHB4O1xuXHRAaW5jbHVkZSBtcSh0YWJsZXQpIHtcblx0XHRAaW5jbHVkZSBmb250LXNpemUoNDhweCwgMS4yNSk7XG5cdH1cbn1cblxuaDIsLmgyIHtcblx0QGluY2x1ZGUgZm9udC1zaXplKDI4cHgsIDEuMjUpO1xuXHRtYXJnaW46IDAgMCAyMHB4O1xuXHRAaW5jbHVkZSBtcSh0YWJsZXQpIHtcblx0XHRAaW5jbHVkZSBmb250LXNpemUoNDBweCwgMS4yNSk7XG5cdH1cbn1cblxuaDMge1xuXHRAaW5jbHVkZSBmb250LXNpemUoMjFweCwgMS4yNSk7XG5cdG1hcmdpbjogMCAwIDI0cHg7XG5cdEBpbmNsdWRlIG1xKHRhYmxldCkge1xuXHRcdEBpbmNsdWRlIGZvbnQtc2l6ZSgzMnB4LCAxLjI1KTtcblx0fVxufVxuXG5oNCB7XG5cdEBpbmNsdWRlIGZvbnQtc2l6ZSgxOHB4LCAxLjUpO1xuXHRtYXJnaW4tYm90dG9tOiAxNnB4O1xuXHRAaW5jbHVkZSBtcSh0YWJsZXQpIHtcblx0XHRAaW5jbHVkZSBmb250LXNpemUoMjRweCwgMS41KTtcblx0fVxufVxuXG5oNSB7XG5cdEBpbmNsdWRlIGZvbnQtc2l6ZSgxMnB4LCAxLjUpO1xuXHRmb250LXdlaWdodDogNzAwO1xuXHRtYXJnaW4tYm90dG9tOiAxNnB4O1xuXHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuXG5oNiB7XG5cdG1hcmdpbi1ib3R0b206IDE2cHg7XG5cdEBpbmNsdWRlIGZvbnQtc2l6ZSgxOHB4LCAxLjUpO1xufSIsIi8vLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyAgICNGT05ULVNJWkVcbi8vICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8vIEdlbmVyYXRlcyBhIHJlbSBmb250LXNpemUgKHdpdGggcGl4ZWwgZmFsbGJhY2spIGFuZCBhIGJhc2VsaW5lLWNvbXBhdGlibGVcbi8vIHVuaXRsZXNzIGxpbmUtaGVpZ2h0IGZyb20gYSBwaXhlbCBmb250LXNpemUgdmFsdWUuIEJhc2ljIHVzYWdlIGlzIHNpbXBseTpcbi8vXG4vLyAgIEBpbmNsdWRlIGludWl0LWZvbnQtc2l6ZSgxOHB4KTtcbi8vXG4vLyBZb3UgY2FuIGZvcmNlIGEgc3BlY2lmaWMgbGluZS1oZWlnaHQgYnkgcGFzc2luZyBpdCBhcyB0aGUgc2Vjb25kIGFyZ3VtZW50OlxuLy9cbi8vICAgQGluY2x1ZGUgaW51aXQtZm9udC1zaXplKDE2cHgsIDEpO1xuLy9cbi8vIFlvdSBjYW4gYWxzbyBtb2RpZnkgdGhlIGxpbmUtaGVpZ2h0IGJ5IGluY3JlbWVudHMsIHdoaWxlIHN0YXlpbmcgaW4gdGhlXG4vLyBiYXNlbGluZSBncmlkLCBieSBzZXR0aW5nIHRoZSBgJG1vZGlmaWVyYCBwYXJhbWV0ZXIuIEl0IHRha2VzIGEgcG9zaXRpdmVcbi8vIG9yIG5lZ2F0aXZlIGludGVnZXIsIGFuZCBpdCB3aWxsIGFkZCBvciByZW1vdmUgXCJsaW5lc1wiIHRvIHRoZSAgZ2VuZXJhdGVkXG4vLyBsaW5lLWhlaWdodC4gVGhpcyBpcyB0aGUgcmVjb21lbmRlZCB3YXkgdG8gZG8gaXQsIHVubGVzcyB5b3UgcmVhbGx5IG5lZWRcbi8vIGFuIGFic29sdXRlIHZhbHVlLiBpLmUuOlxuLy9cbi8vICAgLy8gYWRkIDIgbGluZXM6XG4vLyAgIEBpbmNsdWRlIGludWl0LWZvbnQtc2l6ZSgyNHB4LCAkbW9kaWZpZXI6ICsyKTtcbi8vXG4vLyAgIC8vIHN1YnRyYWN0IDEgbGluZTpcbi8vICAgQGluY2x1ZGUgaW51aXQtZm9udC1zaXplKDI0cHgsICRtb2RpZmllcjogLTEpO1xuXG5AbWl4aW4gaW51aXQtZm9udC1zaXplKCRmb250LXNpemUsICRsaW5lLWhlaWdodDogYXV0bywgJG1vZGlmaWVyOiAwLCAkaW1wb3J0YW50OiBmYWxzZSkge1xuXG4gIEBpZiAodHlwZS1vZigkZm9udC1zaXplKSA9PSBudW1iZXIpIHtcbiAgICBAaWYgKHVuaXQoJGZvbnQtc2l6ZSkgIT0gXCJweFwiKSB7XG4gICAgICBAZXJyb3IgXCJgI3skZm9udC1zaXplfWAgbmVlZHMgdG8gYmUgYSBwaXhlbCB2YWx1ZS5cIjtcbiAgICB9XG4gIH0gQGVsc2Uge1xuICAgIEBlcnJvciBcImAjeyRmb250LXNpemV9YCBuZWVkcyB0byBiZSBhIG51bWJlci5cIjtcbiAgfVxuXG4gIEBpZiAoJGltcG9ydGFudCA9PSB0cnVlKSB7XG4gICAgJGltcG9ydGFudDogIWltcG9ydGFudDtcbiAgfSBAZWxzZSBpZiAoJGltcG9ydGFudCA9PSBmYWxzZSkge1xuICAgICRpbXBvcnRhbnQ6IG51bGw7XG4gIH0gQGVsc2Uge1xuICAgIEBlcnJvciBcImAjeyRpbXBvcnRhbnR9YCBuZWVkcyB0byBiZSBgdHJ1ZWAgb3IgYGZhbHNlYC5cIjtcbiAgfVxuXG4gIC8vIFdlIHByb3ZpZGUgYSBgcHhgIGZhbGxiYWNrIGZvciBvbGQgSUVzIG5vdCBzdXBwb3J0aW5nIGByZW1gIHZhbHVlcy5cbiAgZm9udC1zaXplOiAkZm9udC1zaXplICRpbXBvcnRhbnQ7XG4gIGZvbnQtc2l6ZTogKCRmb250LXNpemUgLyAkaW51aXQtZ2xvYmFsLWZvbnQtc2l6ZSkgKiAxcmVtICRpbXBvcnRhbnQ7XG5cbiAgQGlmICgkbGluZS1oZWlnaHQgPT0gXCJhdXRvXCIpIHtcblxuICAgIC8vIERlZmluZSBob3cgbWFueSBncmlkIGxpbmVzIGVhY2ggdGV4dCBsaW5lIHNob3VsZCBzcGFuLlxuICAgIC8vIEJ5IGRlZmF1bHQsIHdlIHNldCBpdCB0byB0aGUgbWluaW11bSBudW1iZXIgb2YgbGluZXMgbmVjZXNzYXJ5XG4gICAgLy8gaW4gb3JkZXIgdG8gY29udGFpbiB0aGUgZGVmaW5lZCBmb250LXNpemUsICsxIGZvciBzb21lIGJyZWF0aGluZyByb29tLlxuICAgIC8vIFRoaXMgY2FuIGJlIG1vZGlmaWVkIHdpdGggdGhlIGAkbW9kaWZpZXJgIHBhcmFtZXRlci5cbiAgICAkbGluZXM6IGNlaWwoJGZvbnQtc2l6ZSAvICRpbnVpdC1nbG9iYWwtYmFzZWxpbmUpICsgJG1vZGlmaWVyICsgMTtcbiAgICAkbGluZS1oZWlnaHQ6ICRsaW5lcyAqICRpbnVpdC1nbG9iYWwtYmFzZWxpbmU7XG5cbiAgICBsaW5lLWhlaWdodDogKCRsaW5lLWhlaWdodCAvICRmb250LXNpemUpICRpbXBvcnRhbnQ7XG4gIH1cblxuICBAZWxzZSB7XG5cbiAgICBAaWYgKHR5cGUtb2YoJGxpbmUtaGVpZ2h0KSA9PSBudW1iZXIgb3IgJGxpbmUtaGVpZ2h0ID09IFwiaW5oZXJpdFwiIG9yICRsaW5lLWhlaWdodCA9PSBcIm5vcm1hbFwiKSB7XG4gICAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0ICRpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgQGVsc2UgaWYgKCRsaW5lLWhlaWdodCAhPSAnbm9uZScgYW5kICRsaW5lLWhlaWdodCAhPSBmYWxzZSkge1xuICAgICAgQGVycm9yIFwiROKAmW9oISBgI3skbGluZS1oZWlnaHR9YCBpcyBub3QgYSB2YWxpZCB2YWx1ZSBmb3IgYCRsaW5lLWhlaWdodGAuXCJcbiAgICB9XG5cbiAgfVxuXG59XG4iLCJAY2hhcnNldCBcIlVURi04XCI7IC8vIEZpeGVzIGFuIGlzc3VlIHdoZXJlIFJ1YnkgbG9jYWxlIGlzIG5vdCBzZXQgcHJvcGVybHlcbiAgICAgICAgICAgICAgICAgIC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vc2Fzcy1tcS9zYXNzLW1xL3B1bGwvMTBcblxuLy8vIEJhc2UgZm9udCBzaXplIG9uIHRoZSBgPGJvZHk+YCBlbGVtZW50XG4vLy8gQHR5cGUgTnVtYmVyICh1bml0KVxuJG1xLWJhc2UtZm9udC1zaXplOiAxNnB4ICFkZWZhdWx0O1xuXG4vLy8gUmVzcG9uc2l2ZSBtb2RlXG4vLy9cbi8vLyBTZXQgdG8gYGZhbHNlYCB0byBlbmFibGUgc3VwcG9ydCBmb3IgYnJvd3NlcnMgdGhhdCBkbyBub3Qgc3VwcG9ydCBAbWVkaWEgcXVlcmllcyxcbi8vLyAoSUUgPD0gOCwgRmlyZWZveCA8PSAzLCBPcGVyYSA8PSA5KVxuLy8vXG4vLy8gWW91IGNvdWxkIGNyZWF0ZSBhIHN0eWxlc2hlZXQgc2VydmVkIGV4Y2x1c2l2ZWx5IHRvIG9sZGVyIGJyb3dzZXJzLFxuLy8vIHdoZXJlIEBtZWRpYSBxdWVyaWVzIGFyZSByYXN0ZXJpemVkXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzXG4vLy8gIC8vIG9sZC1pZS5zY3NzXG4vLy8gICRtcS1yZXNwb25zaXZlOiBmYWxzZTtcbi8vLyAgQGltcG9ydCAnbWFpbic7IC8vIEBtZWRpYSBxdWVyaWVzIGluIHRoaXMgZmlsZSB3aWxsIGJlIHJhc3Rlcml6ZWQgdXAgdG8gJG1xLXN0YXRpYy1icmVha3BvaW50XG4vLy8gICAgICAgICAgICAgICAgICAgLy8gbGFyZ2VyIGJyZWFrcG9pbnRzIHdpbGwgYmUgaWdub3JlZFxuLy8vXG4vLy8gQHR5cGUgQm9vbGVhblxuLy8vIEBsaW5rIGh0dHBzOi8vZ2l0aHViLmNvbS9zYXNzLW1xL3Nhc3MtbXEjcmVzcG9uc2l2ZS1tb2RlLW9mZiBEaXNhYmxlZCByZXNwb25zaXZlIG1vZGUgZG9jdW1lbnRhdGlvblxuJG1xLXJlc3BvbnNpdmU6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBCcmVha3BvaW50IGxpc3Rcbi8vL1xuLy8vIE5hbWUgeW91ciBicmVha3BvaW50cyBpbiBhIHdheSB0aGF0IGNyZWF0ZXMgYSB1YmlxdWl0b3VzIGxhbmd1YWdlXG4vLy8gYWNyb3NzIHRlYW0gbWVtYmVycy4gSXQgd2lsbCBpbXByb3ZlIGNvbW11bmljYXRpb24gYmV0d2VlblxuLy8vIHN0YWtlaG9sZGVycywgZGVzaWduZXJzLCBkZXZlbG9wZXJzLCBhbmQgdGVzdGVycy5cbi8vL1xuLy8vIEB0eXBlIE1hcFxuLy8vIEBsaW5rIGh0dHBzOi8vZ2l0aHViLmNvbS9zYXNzLW1xL3Nhc3MtbXEjc2VlaW5nLXRoZS1jdXJyZW50bHktYWN0aXZlLWJyZWFrcG9pbnQgRnVsbCBkb2N1bWVudGF0aW9uIGFuZCBleGFtcGxlc1xuJG1xLWJyZWFrcG9pbnRzOiAoXG4gICAgbW9iaWxlOiAgMzIwcHgsXG4gICAgdGFibGV0OiAgNzQwcHgsXG4gICAgZGVza3RvcDogOTgwcHgsXG4gICAgd2lkZTogICAgMTMwMHB4XG4pICFkZWZhdWx0O1xuXG4vLy8gU3RhdGljIGJyZWFrcG9pbnQgKGZvciBmaXhlZC13aWR0aCBsYXlvdXRzKVxuLy8vXG4vLy8gRGVmaW5lIHRoZSBicmVha3BvaW50IGZyb20gJG1xLWJyZWFrcG9pbnRzIHRoYXQgc2hvdWxkXG4vLy8gYmUgdXNlZCBhcyB0aGUgdGFyZ2V0IHdpZHRoIGZvciB0aGUgZml4ZWQtd2lkdGggbGF5b3V0XG4vLy8gKGkuZS4gd2hlbiAkbXEtcmVzcG9uc2l2ZSBpcyBzZXQgdG8gJ2ZhbHNlJykgaW4gYSBvbGQtaWUuc2Nzc1xuLy8vXG4vLy8gQGV4YW1wbGUgc2Nzc1xuLy8vICAvLyB0YWJsZXQtb25seS5zY3NzXG4vLy8gIC8vXG4vLy8gIC8vIElnbm9yZSBhbGwgc3R5bGVzIGFib3ZlIHRhYmxldCBicmVha3BvaW50LFxuLy8vICAvLyBhbmQgZml4IHRoZSBzdHlsZXMgKGUuZy4gbGF5b3V0KSBhdCB0YWJsZXQgd2lkdGhcbi8vLyAgJG1xLXJlc3BvbnNpdmU6IGZhbHNlO1xuLy8vICAkbXEtc3RhdGljLWJyZWFrcG9pbnQ6IHRhYmxldDtcbi8vLyAgQGltcG9ydCAnbWFpbic7IC8vIEBtZWRpYSBxdWVyaWVzIGluIHRoaXMgZmlsZSB3aWxsIGJlIHJhc3Rlcml6ZWQgdXAgdG8gdGFibGV0XG4vLy8gICAgICAgICAgICAgICAgICAgLy8gbGFyZ2VyIGJyZWFrcG9pbnRzIHdpbGwgYmUgaWdub3JlZFxuLy8vXG4vLy8gQHR5cGUgU3RyaW5nXG4vLy8gQGxpbmsgaHR0cHM6Ly9naXRodWIuY29tL3Nhc3MtbXEvc2Fzcy1tcSNhZGRpbmctY3VzdG9tLWJyZWFrcG9pbnRzIEZ1bGwgZG9jdW1lbnRhdGlvbiBhbmQgZXhhbXBsZXNcbiRtcS1zdGF0aWMtYnJlYWtwb2ludDogZGVza3RvcCAhZGVmYXVsdDtcblxuLy8vIFNob3cgYnJlYWtwb2ludHMgaW4gdGhlIHRvcCByaWdodCBjb3JuZXJcbi8vL1xuLy8vIElmIHlvdSB3YW50IHRvIGRpc3BsYXkgdGhlIGN1cnJlbnRseSBhY3RpdmUgYnJlYWtwb2ludCBpbiB0aGUgdG9wXG4vLy8gcmlnaHQgY29ybmVyIG9mIHlvdXIgc2l0ZSBkdXJpbmcgZGV2ZWxvcG1lbnQsIGFkZCB0aGUgYnJlYWtwb2ludHNcbi8vLyB0byB0aGlzIGxpc3QsIG9yZGVyZWQgYnkgd2lkdGgsIGUuZy4gKG1vYmlsZSwgdGFibGV0LCBkZXNrdG9wKS5cbi8vL1xuLy8vIEB0eXBlIG1hcFxuJG1xLXNob3ctYnJlYWtwb2ludHM6ICgpICFkZWZhdWx0O1xuXG4vLy8gQ3VzdG9taXplIHRoZSBtZWRpYSB0eXBlIChlLmcuIGBAbWVkaWEgc2NyZWVuYCBvciBgQG1lZGlhIHByaW50YClcbi8vLyBCeSBkZWZhdWx0IHNhc3MtbXEgdXNlcyBhbiBcImFsbFwiIG1lZGlhIHR5cGUgKGBAbWVkaWEgYWxsIGFuZCDigKZgKVxuLy8vXG4vLy8gQHR5cGUgU3RyaW5nXG4vLy8gQGxpbmsgaHR0cHM6Ly9naXRodWIuY29tL3Nhc3MtbXEvc2Fzcy1tcSNjaGFuZ2luZy1tZWRpYS10eXBlIEZ1bGwgZG9jdW1lbnRhdGlvbiBhbmQgZXhhbXBsZXNcbiRtcS1tZWRpYS10eXBlOiBhbGwgIWRlZmF1bHQ7XG5cbi8vLyBDb252ZXJ0IHBpeGVscyB0byBlbXNcbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkcHggLSB2YWx1ZSB0byBjb252ZXJ0XG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRiYXNlLWZvbnQtc2l6ZSAoJG1xLWJhc2UtZm9udC1zaXplKSAtIGA8Ym9keT5gIGZvbnQgc2l6ZVxuLy8vXG4vLy8gQGV4YW1wbGUgc2Nzc1xuLy8vICAkZm9udC1zaXplLWluLWVtczogbXEtcHgyZW0oMTZweCk7XG4vLy8gIHAgeyBmb250LXNpemU6IG1xLXB4MmVtKDE2cHgpOyB9XG4vLy9cbi8vLyBAcmVxdWlyZXMgJG1xLWJhc2UtZm9udC1zaXplXG4vLy8gQHJldHVybnMge051bWJlcn1cbkBmdW5jdGlvbiBtcS1weDJlbSgkcHgsICRiYXNlLWZvbnQtc2l6ZTogJG1xLWJhc2UtZm9udC1zaXplKSB7XG4gICAgQGlmIHVuaXRsZXNzKCRweCkge1xuICAgICAgICBAd2FybiBcIkFzc3VtaW5nICN7JHB4fSB0byBiZSBpbiBwaXhlbHMsIGF0dGVtcHRpbmcgdG8gY29udmVydCBpdCBpbnRvIHBpeGVscy5cIjtcbiAgICAgICAgQHJldHVybiBtcS1weDJlbSgkcHggKiAxcHgsICRiYXNlLWZvbnQtc2l6ZSk7XG4gICAgfSBAZWxzZSBpZiB1bml0KCRweCkgPT0gZW0ge1xuICAgICAgICBAcmV0dXJuICRweDtcbiAgICB9XG4gICAgQHJldHVybiAoJHB4IC8gJGJhc2UtZm9udC1zaXplKSAqIDFlbTtcbn1cblxuLy8vIEdldCBhIGJyZWFrcG9pbnQncyB3aWR0aFxuLy8vXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRuYW1lIC0gTmFtZSBvZiB0aGUgYnJlYWtwb2ludC4gT25lIG9mICRtcS1icmVha3BvaW50c1xuLy8vXG4vLy8gQGV4YW1wbGUgc2Nzc1xuLy8vICAkdGFibGV0LXdpZHRoOiBtcS1nZXQtYnJlYWtwb2ludC13aWR0aCh0YWJsZXQpO1xuLy8vICBAbWVkaWEgKG1pbi13aWR0aDogbXEtZ2V0LWJyZWFrcG9pbnQtd2lkdGgoZGVza3RvcCkpIHt9XG4vLy9cbi8vLyBAcmVxdWlyZXMge1ZhcmlhYmxlfSAkbXEtYnJlYWtwb2ludHNcbi8vL1xuLy8vIEByZXR1cm5zIHtOdW1iZXJ9IFZhbHVlIGluIHBpeGVsc1xuQGZ1bmN0aW9uIG1xLWdldC1icmVha3BvaW50LXdpZHRoKCRuYW1lLCAkYnJlYWtwb2ludHM6ICRtcS1icmVha3BvaW50cykge1xuICAgIEBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsICRuYW1lKSB7XG4gICAgICAgIEByZXR1cm4gbWFwLWdldCgkYnJlYWtwb2ludHMsICRuYW1lKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgICAgQHdhcm4gXCJCcmVha3BvaW50ICN7JG5hbWV9IHdhc24ndCBmb3VuZCBpbiAkYnJlYWtwb2ludHMuXCI7XG4gICAgfVxufVxuXG4vLy8gTWVkaWEgUXVlcnkgbWl4aW5cbi8vL1xuLy8vIEBwYXJhbSB7U3RyaW5nIHwgQm9vbGVhbn0gJGZyb20gKGZhbHNlKSAtIE9uZSBvZiAkbXEtYnJlYWtwb2ludHNcbi8vLyBAcGFyYW0ge1N0cmluZyB8IEJvb2xlYW59ICR1bnRpbCAoZmFsc2UpIC0gT25lIG9mICRtcS1icmVha3BvaW50c1xuLy8vIEBwYXJhbSB7U3RyaW5nIHwgQm9vbGVhbn0gJGFuZCAoZmFsc2UpIC0gQWRkaXRpb25hbCBtZWRpYSBxdWVyeSBwYXJhbWV0ZXJzXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRtZWRpYS10eXBlICgkbXEtbWVkaWEtdHlwZSkgLSBNZWRpYSB0eXBlOiBzY3JlZW4sIHByaW504oCmXG4vLy9cbi8vLyBAaWdub3JlIFVuZG9jdW1lbnRlZCBBUEksIGZvciBhZHZhbmNlZCB1c2Ugb25seTpcbi8vLyBAaWdub3JlIEBwYXJhbSB7TWFwfSAkYnJlYWtwb2ludHMgKCRtcS1icmVha3BvaW50cylcbi8vLyBAaWdub3JlIEBwYXJhbSB7U3RyaW5nfSAkc3RhdGljLWJyZWFrcG9pbnQgKCRtcS1zdGF0aWMtYnJlYWtwb2ludClcbi8vL1xuLy8vIEBjb250ZW50IHN0eWxpbmcgcnVsZXMsIHdyYXBwZWQgaW50byBhIEBtZWRpYSBxdWVyeSB3aGVuICRyZXNwb25zaXZlIGlzIHRydWVcbi8vL1xuLy8vIEByZXF1aXJlcyB7VmFyaWFibGV9ICRtcS1tZWRpYS10eXBlXG4vLy8gQHJlcXVpcmVzIHtWYXJpYWJsZX0gJG1xLWJyZWFrcG9pbnRzXG4vLy8gQHJlcXVpcmVzIHtWYXJpYWJsZX0gJG1xLXN0YXRpYy1icmVha3BvaW50XG4vLy8gQHJlcXVpcmVzIHtmdW5jdGlvbn0gbXEtcHgyZW1cbi8vLyBAcmVxdWlyZXMge2Z1bmN0aW9ufSBtcS1nZXQtYnJlYWtwb2ludC13aWR0aFxuLy8vXG4vLy8gQGxpbmsgaHR0cHM6Ly9naXRodWIuY29tL3Nhc3MtbXEvc2Fzcy1tcSNyZXNwb25zaXZlLW1vZGUtb24tZGVmYXVsdCBGdWxsIGRvY3VtZW50YXRpb24gYW5kIGV4YW1wbGVzXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzXG4vLy8gIC5lbGVtZW50IHtcbi8vLyAgICBAaW5jbHVkZSBtcSgkZnJvbTogbW9iaWxlKSB7XG4vLy8gICAgICBjb2xvcjogcmVkO1xuLy8vICAgIH1cbi8vLyAgICBAaW5jbHVkZSBtcSgkdW50aWw6IHRhYmxldCkge1xuLy8vICAgICAgY29sb3I6IGJsdWU7XG4vLy8gICAgfVxuLy8vICAgIEBpbmNsdWRlIG1xKG1vYmlsZSwgdGFibGV0KSB7XG4vLy8gICAgICBjb2xvcjogZ3JlZW47XG4vLy8gICAgfVxuLy8vICAgIEBpbmNsdWRlIG1xKCRmcm9tOiB0YWJsZXQsICRhbmQ6ICcob3JpZW50YXRpb246IGxhbmRzY2FwZSknKSB7XG4vLy8gICAgICBjb2xvcjogdGVhbDtcbi8vLyAgICB9XG4vLy8gICAgQGluY2x1ZGUgbXEoOTUwcHgpIHtcbi8vLyAgICAgIGNvbG9yOiBob3RwaW5rO1xuLy8vICAgIH1cbi8vLyAgICBAaW5jbHVkZSBtcSh0YWJsZXQsICRtZWRpYS10eXBlOiBzY3JlZW4pIHtcbi8vLyAgICAgIGNvbG9yOiBob3RwaW5rO1xuLy8vICAgIH1cbi8vLyAgICAvLyBBZHZhbmNlZCB1c2U6XG4vLy8gICAgJG15LWJyZWFrcG9pbnRzOiAoTDogOTAwcHgsIFhMOiAxMjAwcHgpO1xuLy8vICAgIEBpbmNsdWRlIG1xKEwsICRicmVha3BvaW50czogJG15LWJyZWFrcG9pbnRzLCAkc3RhdGljLWJyZWFrcG9pbnQ6IEwpIHtcbi8vLyAgICAgIGNvbG9yOiBob3RwaW5rO1xuLy8vICAgIH1cbi8vLyAgfVxuQG1peGluIG1xKFxuICAgICRmcm9tOiBmYWxzZSxcbiAgICAkdW50aWw6IGZhbHNlLFxuICAgICRhbmQ6IGZhbHNlLFxuICAgICRtZWRpYS10eXBlOiAkbXEtbWVkaWEtdHlwZSxcbiAgICAkYnJlYWtwb2ludHM6ICRtcS1icmVha3BvaW50cyxcbiAgICAkcmVzcG9uc2l2ZTogJG1xLXJlc3BvbnNpdmUsXG4gICAgJHN0YXRpYy1icmVha3BvaW50OiAkbXEtc3RhdGljLWJyZWFrcG9pbnRcbikge1xuICAgICRtaW4td2lkdGg6IDA7XG4gICAgJG1heC13aWR0aDogMDtcbiAgICAkbWVkaWEtcXVlcnk6ICcnO1xuXG4gICAgLy8gRnJvbTogdGhpcyBicmVha3BvaW50IChpbmNsdXNpdmUpXG4gICAgQGlmICRmcm9tIHtcbiAgICAgICAgQGlmIHR5cGUtb2YoJGZyb20pID09IG51bWJlciB7XG4gICAgICAgICAgICAkbWluLXdpZHRoOiBtcS1weDJlbSgkZnJvbSk7XG4gICAgICAgIH0gQGVsc2Uge1xuICAgICAgICAgICAgJG1pbi13aWR0aDogbXEtcHgyZW0obXEtZ2V0LWJyZWFrcG9pbnQtd2lkdGgoJGZyb20sICRicmVha3BvaW50cykpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gVW50aWw6IHRoYXQgYnJlYWtwb2ludCAoZXhjbHVzaXZlKVxuICAgIEBpZiAkdW50aWwge1xuICAgICAgICBAaWYgdHlwZS1vZigkdW50aWwpID09IG51bWJlciB7XG4gICAgICAgICAgICAkbWF4LXdpZHRoOiBtcS1weDJlbSgkdW50aWwpO1xuICAgICAgICB9IEBlbHNlIHtcbiAgICAgICAgICAgICRtYXgtd2lkdGg6IG1xLXB4MmVtKG1xLWdldC1icmVha3BvaW50LXdpZHRoKCR1bnRpbCwgJGJyZWFrcG9pbnRzKSkgLSAuMDFlbTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIFJlc3BvbnNpdmUgc3VwcG9ydCBpcyBkaXNhYmxlZCwgcmFzdGVyaXplIHRoZSBvdXRwdXQgb3V0c2lkZSBAbWVkaWEgYmxvY2tzXG4gICAgLy8gVGhlIGJyb3dzZXIgd2lsbCByZWx5IG9uIHRoZSBjYXNjYWRlIGl0c2VsZi5cbiAgICBAaWYgJHJlc3BvbnNpdmUgPT0gZmFsc2Uge1xuICAgICAgICAkc3RhdGljLWJyZWFrcG9pbnQtd2lkdGg6IG1xLWdldC1icmVha3BvaW50LXdpZHRoKCRzdGF0aWMtYnJlYWtwb2ludCwgJGJyZWFrcG9pbnRzKTtcbiAgICAgICAgJHRhcmdldC13aWR0aDogbXEtcHgyZW0oJHN0YXRpYy1icmVha3BvaW50LXdpZHRoKTtcblxuICAgICAgICAvLyBPdXRwdXQgb25seSBydWxlcyB0aGF0IHN0YXJ0IGF0IG9yIHNwYW4gb3VyIHRhcmdldCB3aWR0aFxuICAgICAgICBAaWYgKFxuICAgICAgICAgICAgJGFuZCA9PSBmYWxzZVxuICAgICAgICAgICAgYW5kICRtaW4td2lkdGggPD0gJHRhcmdldC13aWR0aFxuICAgICAgICAgICAgYW5kIChcbiAgICAgICAgICAgICAgICAkdW50aWwgPT0gZmFsc2Ugb3IgJG1heC13aWR0aCA+PSAkdGFyZ2V0LXdpZHRoXG4gICAgICAgICAgICApXG4gICAgICAgICkge1xuICAgICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBSZXNwb25zaXZlIHN1cHBvcnQgaXMgZW5hYmxlZCwgb3V0cHV0IHJ1bGVzIGluc2lkZSBAbWVkaWEgcXVlcmllc1xuICAgIEBlbHNlIHtcbiAgICAgICAgQGlmICRtaW4td2lkdGggIT0gMCB7ICRtZWRpYS1xdWVyeTogJyN7JG1lZGlhLXF1ZXJ5fSBhbmQgKG1pbi13aWR0aDogI3skbWluLXdpZHRofSknOyB9XG4gICAgICAgIEBpZiAkbWF4LXdpZHRoICE9IDAgeyAkbWVkaWEtcXVlcnk6ICcjeyRtZWRpYS1xdWVyeX0gYW5kIChtYXgtd2lkdGg6ICN7JG1heC13aWR0aH0pJzsgfVxuICAgICAgICBAaWYgJGFuZCAgICAgICAgICAgIHsgJG1lZGlhLXF1ZXJ5OiAnI3skbWVkaWEtcXVlcnl9IGFuZCAjeyRhbmR9JzsgfVxuXG4gICAgICAgIC8vIFJlbW92ZSB1bm5lY2Vzc2FyeSBtZWRpYSBxdWVyeSBwcmVmaXggJ2FsbCBhbmQgJ1xuICAgICAgICBAaWYgKCRtZWRpYS10eXBlID09ICdhbGwnIGFuZCAkbWVkaWEtcXVlcnkgIT0gJycpIHtcbiAgICAgICAgICAgICRtZWRpYS10eXBlOiAnJztcbiAgICAgICAgICAgICRtZWRpYS1xdWVyeTogc3RyLXNsaWNlKHVucXVvdGUoJG1lZGlhLXF1ZXJ5KSwgNik7XG4gICAgICAgIH1cblxuICAgICAgICBAbWVkaWEgI3skbWVkaWEtdHlwZSArICRtZWRpYS1xdWVyeX0ge1xuICAgICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8vLyBBZGQgYSBicmVha3BvaW50XG4vLy9cbi8vLyBAcGFyYW0ge1N0cmluZ30gJG5hbWUgLSBOYW1lIG9mIHRoZSBicmVha3BvaW50XG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR3aWR0aCAtIFdpZHRoIG9mIHRoZSBicmVha3BvaW50XG4vLy9cbi8vLyBAcmVxdWlyZXMge1ZhcmlhYmxlfSAkbXEtYnJlYWtwb2ludHNcbi8vL1xuLy8vIEBleGFtcGxlIHNjc3Ncbi8vLyAgQGluY2x1ZGUgbXEtYWRkLWJyZWFrcG9pbnQodHZzY3JlZW4sIDE5MjBweCk7XG4vLy8gIEBpbmNsdWRlIG1xKHR2c2NyZWVuKSB7fVxuQG1peGluIG1xLWFkZC1icmVha3BvaW50KCRuYW1lLCAkd2lkdGgpIHtcbiAgICAkbmV3LWJyZWFrcG9pbnQ6ICgkbmFtZTogJHdpZHRoKTtcbiAgICAkbXEtYnJlYWtwb2ludHM6IG1hcC1tZXJnZSgkbXEtYnJlYWtwb2ludHMsICRuZXctYnJlYWtwb2ludCkgIWdsb2JhbDtcbn1cblxuLy8vIFNob3cgdGhlIGFjdGl2ZSBicmVha3BvaW50IGluIHRoZSB0b3AgcmlnaHQgY29ybmVyIG9mIHRoZSB2aWV3cG9ydFxuLy8vIEBsaW5rIGh0dHBzOi8vZ2l0aHViLmNvbS9zYXNzLW1xL3Nhc3MtbXEjc2VlaW5nLXRoZS1jdXJyZW50bHktYWN0aXZlLWJyZWFrcG9pbnRcbi8vL1xuLy8vIEBwYXJhbSB7TGlzdH0gJHNob3ctYnJlYWtwb2ludHMgKCRtcS1zaG93LWJyZWFrcG9pbnRzKSAtIExpc3Qgb2YgYnJlYWtwb2ludHMgdG8gc2hvdyBpbiB0aGUgdG9wIHJpZ2h0IGNvcm5lclxuLy8vIEBwYXJhbSB7TWFwfSAkYnJlYWtwb2ludHMgKCRtcS1icmVha3BvaW50cykgLSBCcmVha3BvaW50IG5hbWVzIGFuZCBzaXplc1xuLy8vXG4vLy8gQHJlcXVpcmVzIHtWYXJpYWJsZX0gJG1xLWJyZWFrcG9pbnRzXG4vLy8gQHJlcXVpcmVzIHtWYXJpYWJsZX0gJG1xLXNob3ctYnJlYWtwb2ludHNcbi8vL1xuLy8vIEBleGFtcGxlIHNjc3Ncbi8vLyAgLy8gU2hvdyBicmVha3BvaW50cyB1c2luZyBnbG9iYWwgc2V0dGluZ3Ncbi8vLyAgQGluY2x1ZGUgbXEtc2hvdy1icmVha3BvaW50cztcbi8vL1xuLy8vICAvLyBTaG93IGJyZWFrcG9pbnRzIHVzaW5nIGN1c3RvbSBzZXR0aW5nc1xuLy8vICBAaW5jbHVkZSBtcS1zaG93LWJyZWFrcG9pbnRzKChMLCBYTCksIChTOiAzMDBweCwgTDogODAwcHgsIFhMOiAxMjAwcHgpKTtcbkBtaXhpbiBtcS1zaG93LWJyZWFrcG9pbnRzKCRzaG93LWJyZWFrcG9pbnRzOiAkbXEtc2hvdy1icmVha3BvaW50cywgJGJyZWFrcG9pbnRzOiAkbXEtYnJlYWtwb2ludHMpIHtcbiAgICBib2R5OmJlZm9yZSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNGQ0Y4RTM7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjRkJFRUQ1O1xuICAgICAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICNGQkVFRDU7XG4gICAgICAgIGNvbG9yOiAjQzA5ODUzO1xuICAgICAgICBmb250OiBzbWFsbC1jYXB0aW9uO1xuICAgICAgICBwYWRkaW5nOiAzcHggNnB4O1xuICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICB6LWluZGV4OiAxMDA7XG5cbiAgICAgICAgLy8gTG9vcCB0aHJvdWdoIHRoZSBicmVha3BvaW50cyB0aGF0IHNob3VsZCBiZSBzaG93blxuICAgICAgICBAZWFjaCAkc2hvdy1icmVha3BvaW50IGluICRzaG93LWJyZWFrcG9pbnRzIHtcbiAgICAgICAgICAgICR3aWR0aDogbXEtZ2V0LWJyZWFrcG9pbnQtd2lkdGgoJHNob3ctYnJlYWtwb2ludCwgJGJyZWFrcG9pbnRzKTtcbiAgICAgICAgICAgIEBpbmNsdWRlIG1xKCRzaG93LWJyZWFrcG9pbnQsICRicmVha3BvaW50czogJGJyZWFrcG9pbnRzKSB7XG4gICAgICAgICAgICAgICAgY29udGVudDogXCIjeyRzaG93LWJyZWFrcG9pbnR9IOKJpSAjeyR3aWR0aH0gKCN7bXEtcHgyZW0oJHdpZHRoKX0pXCI7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbkBpZiBsZW5ndGgoJG1xLXNob3ctYnJlYWtwb2ludHMpID4gMCB7XG4gICAgQGluY2x1ZGUgbXEtc2hvdy1icmVha3BvaW50cztcbn1cbiIsInNlbGVjdCxcbnRleHRhcmVhLFxuaW5wdXQge1xuXHRvdXRsaW5lOiBub25lO1xufVxuc2VsZWN0LFxudGV4dGFyZWEsXG5pbnB1dFt0eXBlPVwiZW1haWxcIl0sXG5pbnB1dFt0eXBlPVwibnVtYmVyXCJdLFxuaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdLFxuaW5wdXRbdHlwZT1cInNlYXJjaFwiXSxcbmlucHV0W3R5cGU9XCJ0ZWxcIl0sXG5pbnB1dFt0eXBlPVwiZGF0ZVwiXSxcbmlucHV0W3R5cGU9XCJ0ZXh0XCJdIHtcblx0ZGlzcGxheTogYmxvY2s7XG5cdHdpZHRoOiAxMDAlO1xuXHRwYWRkaW5nOiA4cHggMDtcblx0Ym9yZGVyOiAwIHNvbGlkICRjb250ZW50O1xuXHRib3JkZXItcmFkaXVzOiAwO1xuXHRiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcblx0Ly8gYm94LXNoYWRvdzogMCAwIDEwMHB4IDEwMHB4IHdoaXRlIGluc2V0O1xuXHRib3JkZXItYm90dG9tOiAxcHggc29saWQgd2hpdGU7XG5cdGNvbG9yOiB3aGl0ZTtcblx0YXBwZWFyYW5jZTogbm9uZTtcblx0QGluY2x1ZGUgZm9udC1zaXplKDE2cHgsIDEuNSk7XG5cdCY6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIge1xuXHRcdGNvbG9yOiB0aW50KCRjb250ZW50LCAyMCUpO1xuXHR9XG5cdCY6Oi1tb3otcGxhY2Vob2xkZXIge1xuXHRcdGNvbG9yOiB0aW50KCRjb250ZW50LCAyMCUpO1xuXHR9XG5cdCY6Oi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7XG5cdFx0Y29sb3I6IHRpbnQoJGNvbnRlbnQsIDIwJSk7XG5cdH1cblx0Jjo6LW1vei1wbGFjZWhvbGRlciB7XG5cdFx0Y29sb3I6IHRpbnQoJGNvbnRlbnQsIDIwJSk7XG5cdH1cblx0Jjo6cGxhY2Vob2xkZXIge1xuXHRcdGNvbG9yOiB0aW50KCRjb250ZW50LCAyMCUpO1xuXHR9XG59XG5cbnRleHRhcmVhIHtcblx0aGVpZ2h0OiAxMjBweDtcblx0cmVzaXplOiBub25lO1xufVxuc2VsZWN0IHtcblx0cGFkZGluZzogOHB4IDU2cHggOHB4IDE2cHg7XG5cdGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCg0NWRlZywgdHJhbnNwYXJlbnQgNTAlLCAkY29udGVudCA1MCUpLFxuXHRcdGxpbmVhci1ncmFkaWVudCgxMzVkZWcsICRjb250ZW50IDUwJSwgdHJhbnNwYXJlbnQgNTAlKSxcblx0XHRsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICRjb250ZW50LCAkY29udGVudCk7XG5cdGJhY2tncm91bmQtcG9zaXRpb246IGNhbGMoMTAwJSAtIDIwcHgpIGNhbGMoMWVtICsgMnB4KSxcblx0XHRjYWxjKDEwMCUgLSAxNXB4KSBjYWxjKDFlbSArIDJweCksIGNhbGMoMTAwJSAtIDIuNWVtKSAwLjVlbTtcblx0YmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcblx0YmFja2dyb3VuZC1zaXplOiA1cHggNXB4LCA1cHggNXB4LCAxcHggMS41ZW07XG5cdGJveC1zaGFkb3c6IG5vbmU7XG59XG5cbi8vIFRISVMgUkFESU8gQlVUVE9OIFNUWUxFIElTIFNQRUNJRklDIFRPIENPTlRBQ1QgRk9STSA3XG5pbnB1dFt0eXBlPVwicmFkaW9cIl0ge1xuXHRvcGFjaXR5OiAwO1xuXHRhcHBlYXJhbmNlOiBub25lO1xuXG5cdCY6Y2hlY2tlZCB7XG5cdFx0YmFja2dyb3VuZDogdGludCgkY29udGVudCwgMjAlKTtcblx0fVxuXHQrIHNwYW4ge1xuXHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRjdXJzb3I6IHBvaW50ZXI7XG5cdFx0JjpiZWZvcmUge1xuXHRcdFx0Y29udGVudDogXCIgXCI7XG5cdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0XHR3aWR0aDogMTNweDtcblx0XHRcdGhlaWdodDogMTNweDtcblx0XHRcdG1hcmdpbi1yaWdodDogOHB4O1xuXHRcdFx0Ym9yZGVyOiAxcHggc29saWQgdGludCgkY29udGVudCwgMjAlKTtcblx0XHRcdGJvcmRlci1yYWRpdXM6IDEwcHg7XG5cdFx0XHR2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXHRcdH1cblx0fVxuXHQmOmNoZWNrZWQgKyBzcGFuOjpiZWZvcmUge1xuXHRcdGJhY2tncm91bmQ6IHRpbnQoJGNvbnRlbnQsIDIwJSk7XG5cdH1cblx0Jjpmb2N1cyArIHNwYW4ge1xuXHRcdG91dGxpbmU6IDFweCBkb3R0ZWQgdGludCgkY29udGVudCwgMjAlKTtcblx0XHRvdXRsaW5lLW9mZnNldDogMnB4O1xuXHR9XG59XG5cblxuXG4ud3BjZjctcmVzcG9uc2Utb3V0cHV0IHtcbiAgICBtYXJnaW46IDEwcHggMDtcbiAgICBjb2xvcjogd2hpdGUgIWltcG9ydGFudDtcbn1cblxuXG5cblxuXG5pbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuXHRvcGFjaXR5OiAwO1xuXHRhcHBlYXJhbmNlOiBub25lO1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdGxlZnQ6IDA7XG5cdHRvcDogMDtcblx0d2lkdGg6IDEwMCU7XG5cdGhlaWdodDogMTAwJTtcblx0ei1pbmRleDogLTIgIWltcG9ydGFudDtcblxuXHQmOmNoZWNrZWQge1xuXHRcdGJhY2tncm91bmQ6IHVybChcIi4uL2ltZy9jaGVja2VkLWJveC5zdmdcIik7XG5cdH1cblx0K3NwYW4sXG5cdCtsYWJlbCB7XG5cdFx0ZGlzcGxheTogaW5saW5lO1xuXHRcdGN1cnNvcjogcG9pbnRlcjtcblx0XHRsaW5lLWhlaWdodDogMTtcblx0XHQmOmJlZm9yZSB7XG5cdFx0XHRjb250ZW50OiBcIiBcIjtcblx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRcdHdpZHRoOiAxNnB4O1xuXHRcdFx0aGVpZ2h0OiAxNnB4O1xuXHRcdFx0bWFyZ2luLXJpZ2h0OiAxMHB4O1xuXHRcdFx0Ym9yZGVyOiAxcHggc29saWQgIzkyOTM5MTtcblx0XHRcdGJvcmRlci1yYWRpdXM6IDA7XG5cdFx0XHR2ZXJ0aWNhbC1hbGlnbjogLTNweDtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6IGNvbG9yKFwid2hpdGVcIik7XG5cdFx0XHR0cmFuc2l0aW9uOiAwLjNzO1xuXHRcdH1cblx0fVxuXG5cdCY6Y2hlY2tlZCtzcGFuOjpiZWZvcmUsXG5cdCY6Y2hlY2tlZCtsYWJlbDo6YmVmb3JlIHtcblx0XHRiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWcvY2hlY2tlZC1ib3guc3ZnXCIpO1xuXHRcdGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG5cdH1cbn1cblxuXG5cblxuXG5cblxuLy8gQ09OVEFDVCBGT1JNIDcgU1BFQ0lGSUMgU1RZTEVTXG4ud3BjZjcge1xuXHQmLWZvcm0tY29udHJvbC13cmFwIHtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRtYXJnaW4tYm90dG9tOiAxcHg7XG5cdH1cblx0Ji1ub3QtdmFsaWQge1xuXHRcdC53cGNmNy1saXN0LWl0ZW0tbGFiZWwge1xuXHRcdFx0Y29sb3I6IHJlZDtcblx0XHRcdCY6OmJlZm9yZSB7XG5cdFx0XHRcdGJvcmRlci1jb2xvcjogcmVkO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXHQuc2NyZWVuLXJlYWRlci1yZXNwb25zZSB7XG5cdFx0ZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuXHR9XG5cdCYtbm90LXZhbGlkLXRpcCxcblx0Ji12YWxpZGF0aW9uLWVycm9ycyB7XG5cdFx0Y29sb3I6IHJlZDtcblx0fVxuXHQmLW5vdC12YWxpZC10aXAsXG5cdCYtcmVzcG9uc2Utb3V0cHV0IHtcblx0XHRAaW5jbHVkZSBmb250LXNpemUoMTNweCwgMS41KTtcblx0fVxufVxuXG4uYWpheC1sb2FkZXIge1xuXHRwb2ludGVyLWV2ZW50czogbm9uZTtcblx0ZGlzcGxheTogbm9uZTtcblx0b3BhY2l0eTogMDtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHR0b3A6IDA7XG5cdGxlZnQ6IDA7XG5cdHdpZHRoOiAxMDAlO1xuXHRoZWlnaHQ6IDEwMCU7XG5cdGJhY2tncm91bmQ6ICRicmFuZDtcblx0JjphZnRlciB7XG5cdFx0Y29udGVudDogXCIgXCI7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdHRvcDogNTAlO1xuXHRcdGxlZnQ6IDUwJTtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKSByb3RhdGUoLTQ1ZGVnKTtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0XHR3aWR0aDogMjRweDtcblx0XHRoZWlnaHQ6IDI0cHg7XG5cdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1nL2ljb24tc3VibWl0LWxvYWRlci5wbmdcIik7XG5cdFx0YmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuXHRcdGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG5cdFx0YmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcblx0fVxuXHQmLmlzLWFjdGl2ZSB7XG5cdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdG9wYWNpdHk6IDE7XG5cdFx0JjphZnRlciB7XG5cdFx0XHRhbmltYXRpb246IHNwaW5Mb2FkZXIgMS41cyBpbmZpbml0ZTtcblx0XHR9XG5cdH1cbn1cblxuQGtleWZyYW1lcyBzcGluTG9hZGVyIHtcblx0MCUge1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpIHJvdGF0ZSgwKTtcblx0fVxuXHQxMDAlIHtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKSByb3RhdGUoMzYwZGVnKTtcblx0fVxufVxuIiwiLy8gU2xpZ2h0bHkgbGlnaHRlbiBhIGNvbG9yXG4vLyBAYWNjZXNzIHB1YmxpY1xuLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIC0gY29sb3IgdG8gdGludFxuLy8gQHBhcmFtIHtOdW1iZXJ9ICRwZXJjZW50YWdlIC0gcGVyY2VudGFnZSBvZiBgJGNvbG9yYCBpbiByZXR1cm5lZCBjb2xvclxuLy8gQHJldHVybiB7Q29sb3J9XG5AZnVuY3Rpb24gdGludCgkY29sb3IsICRwZXJjZW50YWdlKSB7XG5cdEByZXR1cm4gbWl4KHdoaXRlLCAkY29sb3IsICRwZXJjZW50YWdlKTtcbn1cblxuLy8gU2xpZ2h0bHkgZGFya2VuIGEgY29sb3Jcbi8vIEBhY2Nlc3MgcHVibGljXG4vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgLSBjb2xvciB0byBzaGFkZVxuLy8gQHBhcmFtIHtOdW1iZXJ9ICRwZXJjZW50YWdlIC0gcGVyY2VudGFnZSBvZiBgJGNvbG9yYCBpbiByZXR1cm5lZCBjb2xvclxuLy8gQHJldHVybiB7Q29sb3J9XG5AZnVuY3Rpb24gc2hhZGUoJGNvbG9yLCAkcGVyY2VudGFnZSkge1xuXHRAcmV0dXJuIG1peChibGFjaywgJGNvbG9yLCAkcGVyY2VudGFnZSk7XG59XG5cbiRicmFuZDogIzAwMDAwMDtcbiR3aGl0ZTogI2ZmZmZmZjtcbiRibGFjazogIzAwMDAwMDtcbiRncmV5OiAjZjdmN2Y3O1xuJGNvbnRlbnQ6ICMwMDAwMDA7XG5cbiRjaGFyY29sZTogIzI0MjcyMztcbiRsaW1lOiAjYzhkYTJlO1xuXG4vLyAkYm9yZGVyLWNvbG9yOiAjMWYyOTM3O1xuJGJvcmRlci1jb2xvcjogIzQ0NDQ0NDsiLCJwcmUge1xuXHRkaXNwbGF5OiBibG9jaztcblx0d2lkdGg6IDEwMCU7XG5cdHBhZGRpbmc6IDI0cHg7XG5cdEBpbmNsdWRlIGZvbnQtc2l6ZSgxNHB4LCAxKTtcblx0b3ZlcmZsb3c6IGF1dG87XG5cdGZvbnQtZmFtaWx5OiBcIkNvdXJpZXIgTmV3XCIsIENvdXJpZXIsIG1vbm9zcGFjZTtcblx0Y29sb3I6IHdoaXRlO1xuXHR0ZXh0LWFsaWduOiBsZWZ0O1xuXHR0ZXh0LXRyYW5zZm9ybTogaW5pdGlhbDtcblx0YmFja2dyb3VuZDogYmxhY2s7XG59IiwiLy8gbGlua3NcbmEge1xuXHRjb2xvcjogJGJyYW5kO1xuXHRjdXJzb3I6IHBvaW50ZXI7XG5cdHRyYW5zaXRpb246IDAuMjVzO1xuXHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cblx0Jjpob3ZlciB7XG5cdFx0dGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG5cdFx0dGV4dC11bmRlcmxpbmUtb2Zmc2V0OiAzcHg7XG5cdFx0dGV4dC1kZWNvcmF0aW9uLXRoaWNrbmVzczogMXB4O1xuXHR9XG59XG5cbi5jLWxpbmsge1xuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdGZvbnQtc2l6ZTogMTRweDtcblx0Zm9udC13ZWlnaHQ6IDYwMDtcblx0dHJhbnNpdGlvbjogMC40cztcblx0c3ZnIHtcblx0XHR2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXHRcdG1hcmdpbi1sZWZ0OiA4cHg7XG5cdFx0dHJhbnNpdGlvbjogMC40cztcblx0XHQmLmMtc3ZnaWNvbi0tYXJyb3cge1xuXHRcdFx0d2lkdGg6IDE0cHg7XG5cdFx0XHRoZWlnaHQ6IDEycHg7XG5cdFx0fVxuXHR9XG5cdCY6aG92ZXIge1xuXHRcdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblx0XHRzdmcge1xuXHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVYKDZweCk7XG5cdFx0fVxuXHR9XG59IiwiLyogcHVyZ2Vjc3Mgc3RhcnQgaWdub3JlICovXG5odG1sIHtcblx0Zm9udC1zaXplOiAkYmFzZS1mb250LXNpemU7XG5cdG92ZXJmbG93LXk6IHNjcm9sbDtcblx0bWluLWhlaWdodDogMTAwJTtcbn1cblxuYm9keSB7XG5cdG1pbi1oZWlnaHQ6IDEwMCU7XG5cdGZvbnQtZmFtaWx5OiAkcHJpbWFyeTtcblx0Zm9udC13ZWlnaHQ6IG5vcm1hbDtcblx0Zm9udC1zaXplOiAkYmFzZS1mb250LXNpemU7XG5cdGxpbmUtaGVpZ2h0OiAxLjY7XG5cdGNvbG9yOiAkY29udGVudDtcblx0LXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG5cdG92ZXJmbG93LXg6IGhpZGRlbjtcblx0QGV4dGVuZCAuaGlkZS1zY3JvbGxiYXI7XG59XG5cbi8vIFVzZSBodHRwczovL2dpdGh1Yi5jb20vd2lsbG1jcG8vYm9keS1zY3JvbGwtbG9jaywgaXQncyBhbHJlYWR5IGluIHRoZSBzY3JpcHRzXG4uc2Nyb2xsLWxvY2sge1xuXHRoZWlnaHQ6IDEwMCU7XG5cdG1heC1oZWlnaHQ6IDEwMHZoO1xuXHRvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4uaXMtYmx1cmVkIHtcblx0cG9pbnRlci1ldmVudHM6IG5vbmU7XG5cdGZpbHRlcjogYmx1cigzcHgpO1xufVxuXG4uaGlkZS1zY3JvbGxiYXIge1xuXHQtbXMtb3ZlcmZsb3ctc3R5bGU6IG5vbmU7XG5cdC8qIElFIGFuZCBFZGdlICovXG5cdHNjcm9sbGJhci13aWR0aDogbm9uZTtcblxuXHQvKiBGaXJlZm94ICovXG5cdCY6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcblx0XHRkaXNwbGF5OiBub25lO1xuXHR9XG5cblx0Jjo6LW1vei1zY3JvbGxiYXIge1xuXHRcdGRpc3BsYXk6IG5vbmU7XG5cdH1cbn1cblxuLyogcHVyZ2Vjc3MgZW5kIGlnbm9yZSAqLyIsIi8vIFRoZSBnbG9iYWwgc2V0dGluZ3MgZmlsZSBjb250YWlucyBhbnkgcHJvamVjdC13aWRlIHZhcmlhYmxlczsgdGhpbmdzIHRoYXRcbi8vIG5lZWQgdG8gYmUgbWFkZSBhdmFpbGFibGUgdG8gdGhlIGVudGlyZSBjb2RlYmFzZS5cbiRiYXNlLWZvbnQtc2l6ZTogMTZweDtcbiRiYXNlLWxpbmUtaGVpZ2h0OiAyNHB4O1xuXG4kaW51aXQtZ2xvYmFsLWZvbnQtc2l6ZTogJGJhc2UtZm9udC1zaXplO1xuJGludWl0LWdsb2JhbC1saW5lLWhlaWdodDogJGJhc2UtbGluZS1oZWlnaHQ7XG4kaW51aXQtd3JhcHBlci13aWR0aDogMTUwMHB4O1xuXG4vLyBTdGFuZGFyZGlzZSBzb21lIFVJIHRyZWF0bWVudHMuXG4kZ2xvYmFsLXJhZGl1czogM3B4O1xuJGdsb2JhbC10cmFuc2l0aW9uOiBhbGwgMzAwbXMgZWFzZS1pbi1vdXQ7XG5cblxuLy8gc3BhY2luZyBzaXplc1xuJGludWl0LXNwYWNpbmctc2l6ZXM6IChcblx0bnVsbDogJGludWl0LWdsb2JhbC1zcGFjaW5nLXVuaXQsXG5cdCctdGlueSc6ICRpbnVpdC1nbG9iYWwtc3BhY2luZy11bml0LXRpbnksXG5cdCctc21hbGwnOiAkaW51aXQtZ2xvYmFsLXNwYWNpbmctdW5pdC1zbWFsbCxcblx0Jy1sYXJnZSc6ICRpbnVpdC1nbG9iYWwtc3BhY2luZy11bml0LWxhcmdlLFxuXHQnLWJpZyc6ICRpbnVpdC1nbG9iYWwtc3BhY2luZy11bml0LWxhcmdlKjEuNSxcblx0Jy1odWdlJzogJGludWl0LWdsb2JhbC1zcGFjaW5nLXVuaXQtaHVnZSxcblx0Jy1ub25lJzogMFxuKTsiLCIvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgI0xBWU9VVFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBHcmlkLWxpa2UgbGF5b3V0IHN5c3RlbS5cbiAqXG4gKiBUaGUgbGF5b3V0IG9iamVjdCBwcm92aWRlcyB1cyB3aXRoIGEgY29sdW1uLXN0eWxlIGxheW91dCBzeXN0ZW0uIFRoaXMgZmlsZVxuICogY29udGFpbnMgdGhlIGJhc2ljIHN0cnVjdHVyYWwgZWxlbWVudHMsIGJ1dCBjbGFzc2VzIHNob3VsZCBiZSBjb21wbGVtZW50ZWRcbiAqIHdpdGggd2lkdGggdXRpbGl0aWVzLCBmb3IgZXhhbXBsZTpcbiAqXG4gKiAgIDxkaXYgY2xhc3M9XCJvLWxheW91dFwiPlxuICogICAgIDxkaXYgY2xhc3M9XCJvLWxheW91dF9faXRlbSAgdS0xLzJcIj5cbiAqICAgICA8L2Rpdj5cbiAqICAgICA8ZGl2IGNsYXNzPVwiby1sYXlvdXRfX2l0ZW0gIHUtMS8yXCI+XG4gKiAgICAgPC9kaXY+XG4gKiAgIDwvZGl2PlxuICpcbiAqIFRoZSBhYm92ZSB3aWxsIGNyZWF0ZSBhIHR3by1jb2x1bW4gc3RydWN0dXJlIGluIHdoaWNoIGVhY2ggY29sdW1uIHdpbGxcbiAqIGZsdWlkbHkgZmlsbCBoYWxmIG9mIHRoZSB3aWR0aCBvZiB0aGUgcGFyZW50LiBXZSBjYW4gaGF2ZSBtb3JlIGNvbXBsZXhcbiAqIHN5c3RlbXM6XG4gKlxuICogICA8ZGl2IGNsYXNzPVwiby1sYXlvdXRcIj5cbiAqICAgICA8ZGl2IGNsYXNzPVwiby1sYXlvdXRfX2l0ZW0gIHUtMS8xICB1LTEvM0BtZWRpdW1cIj5cbiAqICAgICA8L2Rpdj5cbiAqICAgICA8ZGl2IGNsYXNzPVwiby1sYXlvdXRfX2l0ZW0gIHUtMS8yICB1LTEvM0BtZWRpdW1cIj5cbiAqICAgICA8L2Rpdj5cbiAqICAgICA8ZGl2IGNsYXNzPVwiby1sYXlvdXRfX2l0ZW0gIHUtMS8yICB1LTEvM0BtZWRpdW1cIj5cbiAqICAgICA8L2Rpdj5cbiAqICAgPC9kaXY+XG4gKlxuICogVGhlIGFib3ZlIHdpbGwgY3JlYXRlIGEgc3lzdGVtIGluIHdoaWNoIHRoZSBmaXJzdCBpdGVtIHdpbGwgYmUgMTAwJSB3aWR0aFxuICogdW50aWwgd2UgZW50ZXIgb3VyIG1lZGl1bSBicmVha3BvaW50LCB3aGVuIGl0IHdpbGwgYmVjb21lIDMzLjMzMyUgd2lkdGguIFRoZVxuICogc2Vjb25kIGFuZCB0aGlyZCBpdGVtcyB3aWxsIGJlIDUwJSBvZiB0aGVpciBwYXJlbnQsIHVudGlsIHRoZXkgYWxzbyBiZWNvbWVcbiAqIDMzLjMzMyUgd2lkdGggYXQgdGhlIG1lZGl1bSBicmVha3BvaW50LlxuICpcbiAqIFdlIGNhbiBhbHNvIG1hbmlwdWxhdGUgZW50aXJlIGxheW91dCBzeXN0ZW1zIGJ5IGFkZGluZyBhIHNlcmllcyBvZiBtb2RpZmllcnNcbiAqIHRvIHRoZSBgLm8tbGF5b3V0YCBibG9jay4gRm9yIGV4YW1wbGU6XG4gKlxuICogICA8ZGl2IGNsYXNzPVwiby1sYXlvdXQgIG8tbGF5b3V0LS1yZXZlcnNlXCI+XG4gKlxuICogVGhpcyB3aWxsIHJldmVyc2UgdGhlIGRpc3BsYXllZCBvcmRlciBvZiB0aGUgc3lzdGVtIHNvIHRoYXQgaXQgcnVucyBpbiB0aGVcbiAqIG9wcG9zaXRlIG9yZGVyIHRvIG91ciBzb3VyY2UsIGVmZmVjdGl2ZWx5IGZsaXBwaW5nIHRoZSBzeXN0ZW0gb3Zlci5cbiAqXG4gKiAgIDxkaXYgY2xhc3M9XCJvLWxheW91dCAgby1sYXlvdXQtLVtyaWdodHxjZW50ZXJdXCI+XG4gKlxuICogVGhpcyB3aWxsIGNhdXNlIHRoZSBzeXN0ZW0gdG8gZmlsbCB1cCBmcm9tIGVpdGhlciB0aGUgY2VudHJlIG9yIHRoZSByaWdodFxuICogaGFuZCBzaWRlLiBEZWZhdWx0IGJlaGF2aW91ciBpcyB0byBmaWxsIHVwIHRoZSBsYXlvdXQgc3lzdGVtIGZyb20gdGhlIGxlZnQuXG4gKlxuICogVGhlcmUgYXJlIHBsZW50eSBtb3JlIG9wdGlvbnMgYXZhaWxhYmxlIHRvIHVzOiBleHBsb3JlIHRoZW0gYmVsb3cuXG4gKi9cblxuLy8gQnkgZGVmYXVsdCB3ZSB1c2UgdGhlIGBmb250LXNpemU6IDA7YCB0cmljayB0byByZW1vdmUgd2hpdGVzcGFjZSBiZXR3ZWVuXG4vLyBpdGVtcy4gU2V0IHRoaXMgdG8gdHJ1ZSBpbiBvcmRlciB0byB1c2UgYSBtYXJrdXAtYmFzZWQgc3RyYXRlZ3kgbGlrZVxuLy8gY29tbWVudGluZyBvdXQgd2hpdGVzcGFjZSBvciBtaW5pZnlpbmcgSFRNTC5cbiRpbnVpdC11c2UtbWFya3VwLWZpeDogZmFsc2UgIWRlZmF1bHQ7XG5cblxuXG5cblxuLyogRGVmYXVsdC9tYW5kYXRvcnkgY2xhc3Nlc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiAxLiBBbGxvd3MgdXMgdG8gdXNlIHRoZSBsYXlvdXQgb2JqZWN0IG9uIGFueSB0eXBlIG9mIGVsZW1lbnQuXG4gKiAyLiBXZSBuZWVkIHRvIGRlZmVuc2l2ZWx5IHJlc2V0IGFueSBib3gtbW9kZWwgcHJvcGVydGllcy5cbiAqIDMuIFVzZSB0aGUgbmVnYXRpdmUgbWFyZ2luIHRyaWNrIGZvciBtdWx0aS1yb3cgZ3JpZHM6XG4gKiAgICBodHRwOi8vY3Nzd2l6YXJkcnkuY29tLzIwMTEvMDgvYnVpbGRpbmctYmV0dGVyLWdyaWQtc3lzdGVtcy9cbiAqL1xuXG4uby1sYXlvdXQge1xuICBkaXNwbGF5OiBibG9jazsgLyogWzFdICovXG4gIG1hcmdpbjogIDA7IC8qIFsyXSAqL1xuICBwYWRkaW5nOiAwOyAvKiBbMl0gKi9cbiAgbGlzdC1zdHlsZTogbm9uZTsgLyogWzFdICovXG4gIG1hcmdpbi1sZWZ0OiAtJGludWl0LWdsb2JhbC1zcGFjaW5nLXVuaXQ7IC8qIFszXSAqL1xuXG4gIEBpZiAoJGludWl0LXVzZS1tYXJrdXAtZml4ID09IGZhbHNlKSB7XG4gICAgZm9udC1zaXplOiAwO1xuICB9XG5cbn1cblxuICAvKipcbiAgICogMS4gUmVxdWlyZWQgaW4gb3JkZXIgdG8gY29tYmluZSBmbHVpZCB3aWR0aHMgd2l0aCBmaXhlZCBndXR0ZXJzLlxuICAgKiAyLiBBbGxvd3MgdXMgdG8gbWFuaXB1bGF0ZSBncmlkcyB2ZXJ0aWNhbGx5LCB3aXRoIHRleHQtbGV2ZWwgcHJvcGVydGllcyxcbiAgICogICAgZXRjLlxuICAgKiAzLiBEZWZhdWx0IGl0ZW0gYWxpZ25tZW50IGlzIHdpdGggdGhlIHRvcHMgb2YgZWFjaCBvdGhlciwgbGlrZSBtb3N0XG4gICAqICAgIHRyYWRpdGlvbmFsIGdyaWQvbGF5b3V0IHN5c3RlbXMuXG4gICAqIDQuIEJ5IGRlZmF1bHQsIGFsbCBsYXlvdXQgaXRlbXMgYXJlIGZ1bGwtd2lkdGggKG1vYmlsZSBmaXJzdCkuXG4gICAqIDUuIEd1dHRlcnMgcHJvdmlkZWQgYnkgbGVmdCBwYWRkaW5nOlxuICAgKiAgICBodHRwOi8vY3Nzd2l6YXJkcnkuY29tLzIwMTEvMDgvYnVpbGRpbmctYmV0dGVyLWdyaWQtc3lzdGVtcy9cbiAgICogNi4gRmFsbGJhY2sgZm9yIG9sZCBJRXMgbm90IHN1cHBvcnRpbmcgYHJlbWAgdmFsdWVzLlxuICAgKi9cblxuICAuby1sYXlvdXRfX2l0ZW0ge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8qIFsxXSAqL1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgLyogWzJdICovXG4gICAgdmVydGljYWwtYWxpZ246IHRvcDsgLyogWzNdICovXG4gICAgd2lkdGg6IDEwMCU7IC8qIFs0XSAqL1xuICAgIHBhZGRpbmctbGVmdDogJGludWl0LWdsb2JhbC1zcGFjaW5nLXVuaXQ7IC8qIFs1XSAqL1xuXG4gICAgQGlmICgkaW51aXQtdXNlLW1hcmt1cC1maXggPT0gZmFsc2UpIHtcbiAgICAgIGZvbnQtc2l6ZTogJGludWl0LWdsb2JhbC1mb250LXNpemU7IC8qIFs2XSAqL1xuICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgIH1cblxuICB9XG5cblxuXG5cblxuLyogR3V0dGVyIHNpemUgbW9kaWZpZXJzXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4uby1sYXlvdXQtLWZsdXNoIHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG5cbiAgPiAuby1sYXlvdXRfX2l0ZW0ge1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgfVxuXG59XG5cblxuLm8tbGF5b3V0LS10aW55IHtcbiAgbWFyZ2luLWxlZnQ6IC0kaW51aXQtZ2xvYmFsLXNwYWNpbmctdW5pdC10aW55O1xuXG4gID4gLm8tbGF5b3V0X19pdGVtIHtcbiAgICBwYWRkaW5nLWxlZnQ6ICRpbnVpdC1nbG9iYWwtc3BhY2luZy11bml0LXRpbnk7XG4gIH1cblxufVxuXG5cbi5vLWxheW91dC0tc21hbGwge1xuICBtYXJnaW4tbGVmdDogLSRpbnVpdC1nbG9iYWwtc3BhY2luZy11bml0LXNtYWxsO1xuXG4gID4gLm8tbGF5b3V0X19pdGVtIHtcbiAgICBwYWRkaW5nLWxlZnQ6ICRpbnVpdC1nbG9iYWwtc3BhY2luZy11bml0LXNtYWxsO1xuICB9XG5cbn1cblxuXG4uby1sYXlvdXQtLWxhcmdlIHtcbiAgbWFyZ2luLWxlZnQ6IC0kaW51aXQtZ2xvYmFsLXNwYWNpbmctdW5pdC1sYXJnZTtcblxuICA+IC5vLWxheW91dF9faXRlbSB7XG4gICAgcGFkZGluZy1sZWZ0OiAkaW51aXQtZ2xvYmFsLXNwYWNpbmctdW5pdC1sYXJnZTtcbiAgfVxuXG59XG5cblxuLm8tbGF5b3V0LS1odWdlIHtcbiAgbWFyZ2luLWxlZnQ6IC0kaW51aXQtZ2xvYmFsLXNwYWNpbmctdW5pdC1odWdlO1xuXG4gID4gLm8tbGF5b3V0X19pdGVtIHtcbiAgICBwYWRkaW5nLWxlZnQ6ICRpbnVpdC1nbG9iYWwtc3BhY2luZy11bml0LWh1Z2U7XG4gIH1cblxufVxuXG5cblxuXG5cbi8qIFZlcnRpY2FsIGFsaWdubWVudCBtb2RpZmllcnNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogQWxpZ24gYWxsIGdyaWQgaXRlbXMgdG8gdGhlIG1pZGRsZXMgb2YgZWFjaCBvdGhlci5cbiAqL1xuXG4uby1sYXlvdXQtLW1pZGRsZSB7XG5cbiAgPiAuby1sYXlvdXRfX2l0ZW0ge1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIH1cblxufVxuXG5cbi8qKlxuICogQWxpZ24gYWxsIGdyaWQgaXRlbXMgdG8gdGhlIGJvdHRvbXMgb2YgZWFjaCBvdGhlci5cbiAqL1xuXG4uby1sYXlvdXQtLWJvdHRvbSB7XG5cbiAgPiAuby1sYXlvdXRfX2l0ZW0ge1xuICAgIHZlcnRpY2FsLWFsaWduOiBib3R0b207XG4gIH1cblxufVxuXG5cbi8qKlxuICogU3RyZXRjaCBhbGwgZ3JpZCBpdGVtcyBvZiBlYWNoIHJvdyB0byBoYXZlIGFuIGVxdWFsLWhlaWdodC5cbiAqIFBsZWFzZSBiZSBhd2FyZSB0aGF0IHRoaXMgbW9kaWZpZXIgY2xhc3MgZG9lc27igJl0IHRha2UgYW55IGVmZmVjdCBpbiBJRTkgYW5kXG4gKiBiZWxvdyBhbmQgb3RoZXIgb2xkZXIgYnJvd3NlcnMgZHVlIHRvIHRoZSBsYWNrIG9mIGBkaXNwbGF5OiBmbGV4YCBzdXBwb3J0LlxuICovXG5cbi5vLWxheW91dC0tc3RyZXRjaCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcblxuICA+IC5vLWxheW91dF9faXRlbSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgfVxuXG4gICYuby1sYXlvdXQtLWNlbnRlciB7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIH1cblxuICAmLm8tbGF5b3V0LS1yaWdodCB7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgfVxuXG4gICYuby1sYXlvdXQtLWxlZnQge1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgfVxuXG59XG5cblxuXG5cblxuLyogRmlsbCBvcmRlciBtb2RpZmllcnNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogRmlsbCB1cCB0aGUgbGF5b3V0IHN5c3RlbSBmcm9tIHRoZSBjZW50cmUuXG4gKi9cblxuLm8tbGF5b3V0LS1jZW50ZXIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgPiAuby1sYXlvdXRfX2l0ZW0ge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gIH1cblxufVxuXG5cbi8qKlxuICogRmlsbCB1cCB0aGUgbGF5b3V0IHN5c3RlbSBmcm9tIHRoZSByaWdodC1oYW5kIHNpZGUuXG4gKi9cblxuLm8tbGF5b3V0LS1yaWdodCB7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xuXG4gID4gLm8tbGF5b3V0X19pdGVtIHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB9XG5cbn1cblxuXG4vKipcbiAqIEZpbGwgdXAgdGhlIGxheW91dCBzeXN0ZW0gZnJvbSB0aGUgbGVmdC1oYW5kIHNpZGUuIFRoaXMgd2lsbCBsaWtlbHkgb25seSBiZVxuICogbmVlZGVkIHdoZW4gdXNpbmcgaW4gY29uanVuY3Rpb24gd2l0aCBgLm8tbGF5b3V0LS1yZXZlcnNlYC5cbiAqL1xuXG4uby1sYXlvdXQtLWxlZnQge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuXG4gID4gLm8tbGF5b3V0X19pdGVtIHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB9XG5cbn1cblxuXG4vKipcbiAqIFJldmVyc2UgdGhlIHJlbmRlcmVkIG9yZGVyIG9mIHRoZSBncmlkIHN5c3RlbS5cbiAqL1xuXG4uby1sYXlvdXQtLXJldmVyc2Uge1xuICBkaXJlY3Rpb246IHJ0bDtcblxuICA+IC5vLWxheW91dF9faXRlbSB7XG4gICAgZGlyZWN0aW9uOiBsdHI7XG4gIH1cblxufVxuXG5cblxuXG5cbi8qIEF1dG8td2lkdGhzIG1vZGlmaWVyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIENhdXNlIGxheW91dCBpdGVtcyB0byB0YWtlIHVwIGEgbm9uLWV4cGxpY2l0IGFtb3VudCBvZiB3aWR0aC5cbiAqL1xuXG4uby1sYXlvdXQtLWF1dG8ge1xuXG4gID4gLm8tbGF5b3V0X19pdGVtIHtcbiAgICB3aWR0aDogYXV0bztcbiAgfVxuXG59XG4iLCIvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgI1JBVElPXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vLyBBIGxpc3Qgb2YgYXNwZWN0IHJhdGlvcyB0aGF0IGdldCBnZW5lcmF0ZWQgYXMgbW9kaWZpZXIgY2xhc3Nlcy5cbi8vIFlvdSBzaG91bGQgcHJlZGVmaW5lIGl0IHdpdGggb25seSB0aGUgcmF0aW9zIGFuZCBuYW1lcyB5b3VyIHByb2plY3QgbmVlZHMuXG4vL1xuLy8gVGhlIG1hcCBrZXlzIGFyZSB0aGUgc3RyaW5ncyB1c2VkIGluIHRoZSBnZW5lcmF0ZWQgY2xhc3MgbmFtZXMsIGFuZCB0aGV5IGNhblxuLy8gZm9sbG93IGFueSBjb252ZW50aW9uLCBhcyBsb25nIGFzIHRoZXkgYXJlIHByb3Blcmx5IGVzY2FwZWQgc3RyaW5ncy4gaS5lLjpcbi8vXG4vLyAgICRpbnVpdC1yYXRpb3M6IChcbi8vICAgICBcIjJcXFxcOjFcIiAgICAgICAgIDogKDI6MSksXG4vLyAgICAgXCI0LWJ5LTNcIiAgICAgICAgOiAoNDozKSxcbi8vICAgICBcImZ1bGwtaGRcIiAgICAgICA6ICgxNjo5KSxcbi8vICAgICBcImNhcmQtaW1hZ2VcIiAgICA6ICgyOjMpLFxuLy8gICAgIFwiZ29sZGVuLXJhdGlvXCIgIDogKDEuNjE4OjEpIC0+IG5vbi1pbnRlZ2VycyBhcmUgb2theVxuLy8gICApICFkZWZhdWx0O1xuXG4kaW51aXQtcmF0aW9zOiAoXG4gIFwiMlxcXFw6MVwiICAgOiAoMjoxKSxcbiAgXCI0XFxcXDozXCIgICA6ICg0OjMpLFxuICBcIjE2XFxcXDo5XCIgIDogKDE2OjkpXG4pICFkZWZhdWx0O1xuXG5cblxuLyoqXG4gKiBDcmVhdGUgcmF0aW8tYm91bmQgY29udGVudCBibG9ja3MsIHRvIGtlZXAgbWVkaWEgKGUuZy4gaW1hZ2VzLCB2aWRlb3MpIGluXG4gKiB0aGVpciBjb3JyZWN0IGFzcGVjdCByYXRpb3MuXG4gKlxuICogaHR0cDovL2FsaXN0YXBhcnQuY29tL2FydGljbGUvY3JlYXRpbmctaW50cmluc2ljLXJhdGlvcy1mb3ItdmlkZW9cbiAqXG4gKiAxLiBEZWZhdWx0IGlzIGEgMToxIHJhdGlvIChpLmUuIGEgcGVyZmVjdCBzcXVhcmUpLlxuICovXG5cbi5vLXJhdGlvIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcblxuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nLWJvdHRvbTogMTAwJTsgLyogWzFdICovXG4gIH1cblxufVxuXG4gIC5vLXJhdGlvX19jb250ZW50LFxuICAuby1yYXRpbyA+IGlmcmFtZSxcbiAgLm8tcmF0aW8gPiBlbWJlZCxcbiAgLm8tcmF0aW8gPiBvYmplY3Qge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6ICAgIDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6ICAgMDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgd2lkdGg6ICAxMDAlO1xuICB9XG5cblxuXG5cblxuLyogUmF0aW8gdmFyaWFudHMuXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIEdlbmVyYXRlIGEgc2VyaWVzIG9mIHJhdGlvIGNsYXNzZXMgdG8gYmUgdXNlZCBsaWtlIHNvOlxuICpcbiAqICAgPGRpdiBjbGFzcz1cIm8tcmF0aW8gIG8tcmF0aW8tLWdvbGRlbi1yYXRpb1wiPlxuICpcbiAqL1xuXG5AZWFjaCAkcmF0aW8tbmFtZSwgJHJhdGlvLXZhbHVlIGluICRpbnVpdC1yYXRpb3Mge1xuXG4gIEBlYWNoICRhbnRlY2VkZW50LCAkY29uc2VxdWVudCBpbiAkcmF0aW8tdmFsdWUge1xuXG4gICAgQGlmICh0eXBlLW9mKCRhbnRlY2VkZW50KSAhPSBudW1iZXIpIHtcbiAgICAgIEBlcnJvciBcImAjeyRhbnRlY2VkZW50fWAgbmVlZHMgdG8gYmUgYSBudW1iZXIuXCI7XG4gICAgfVxuXG4gICAgQGlmICh0eXBlLW9mKCRjb25zZXF1ZW50KSAhPSBudW1iZXIpIHtcbiAgICAgIEBlcnJvciBcImAjeyRjb25zZXF1ZW50fWAgbmVlZHMgdG8gYmUgYSBudW1iZXIuXCI7XG4gICAgfVxuXG4gICAgLm8tcmF0aW8tLSN7JHJhdGlvLW5hbWV9OmJlZm9yZSB7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogKCRjb25zZXF1ZW50LyRhbnRlY2VkZW50KSAqIDEwMCU7XG4gICAgfVxuXG4gIH1cblxufVxuXG5cblxuXG5cbi8qIENvbnRhaW4gbW9kaWZpZXIuXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIE9ubHkgd29ya3Mgd2l0aCBpbWFnZSBjb250ZW50LlxuICogQ29udGFpbnMgdGhlIGltYWdlIHRvIHRoZSBib3VuZGFyaWVzLCB3aXRob3V0IGNyb3BwaW5nIG9yIHN0cmV0Y2hpbmcgaXQuXG4gKi9cblxuLm8tcmF0aW8tLWltZy1jb250YWluIHtcblxuICA+IC5vLXJhdGlvX19jb250ZW50OmJlZm9yZSB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIG1hcmdpbjogYXV0bztcbiAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICB3aWR0aDogYXV0bztcbiAgfVxuXG59XG4iLCIuby13cmFwcGVyIHtcblx0QGluY2x1ZGUgY2xlYXJmaXgoKTtcblx0bWF4LXdpZHRoOiAxMzQ0cHg7XG5cdG1hcmdpbjogMCBhdXRvO1xuXHRwYWRkaW5nOiAwIDI0cHg7XG5cdEBpbmNsdWRlIG1xKGxhcHRvcCkge1xuXHRcdHBhZGRpbmc6IDAgNDhweDtcblx0fVxufVxuIiwiLy8gUmVhc3NpZ24gYCRpbnVpdC1nbG9iYWwtc3BhY2luZy11bml0YCB0byBgJHVuaXRgLlxuJHVuaXQ6ICRpbnVpdC1nbG9iYWwtc3BhY2luZy11bml0O1xuJHVuaXQtdGlueTogJGludWl0LWdsb2JhbC1zcGFjaW5nLXVuaXQtdGlueTtcbiR1bml0LXNtYWxsOiAkaW51aXQtZ2xvYmFsLXNwYWNpbmctdW5pdC1zbWFsbDtcbiR1bml0LWxhcmdlOiAkaW51aXQtZ2xvYmFsLXNwYWNpbmctdW5pdC1sYXJnZTtcbiR1bml0LWJpZzogJGludWl0LWdsb2JhbC1zcGFjaW5nLXVuaXQtbGFyZ2UqMS41O1xuJHVuaXQtaHVnZTogJGludWl0LWdsb2JhbC1zcGFjaW5nLXVuaXQtaHVnZTtcblxuJHJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4kdHJhbnNpdGlvbjogJGdsb2JhbC10cmFuc2l0aW9uO1xuXG4vLyBSZWFzc2lnbiBsZW5ndGh5IGZvbnQtc2l6ZSBtaXhpbiB0byBgZm9udC1zaXplKClgLlxuQG1peGluIGZvbnQtc2l6ZSgkYXJncy4uLikge1xuXHRAaW5jbHVkZSBpbnVpdC1mb250LXNpemUoJGFyZ3MuLi4pO1xufVxuXG5AbWl4aW4gY2xlYXJmaXgoKSB7XG5cdCY6YWZ0ZXIge1xuXHRcdGNvbnRlbnQ6IFwiXCIgIWltcG9ydGFudDtcblx0XHRkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuXHRcdGNsZWFyOiBib3RoICFpbXBvcnRhbnQ7XG5cdH1cbn0iLCJcbi5vLWJ0biB7XG5cdGN1cnNvcjogcG9pbnRlcjtcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRhcHBlYXJhbmNlOiBub25lO1xuXHRib3gtc2hhZG93OiBub25lO1xuXHRwYWRkaW5nOiAxMnB4IDI0cHg7XG5cdGJvcmRlcjogMXB4IHNvbGlkICRicmFuZDtcblx0Ly8gYm9yZGVyLXJhZGl1czogNHB4O1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcblx0Ym9yZGVyOiAxcHggc29saWQgd2hpdGU7XG5cdHRleHQtYWxpZ246IGNlbnRlcjtcblx0Y29sb3I6ICR3aGl0ZTtcblx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHR0cmFuc2l0aW9uOiAwLjRzO1xuXHRmb250LXNpemU6IDE2cHg7XG5cdGZvbnQtd2VpZ2h0OiA1MDA7XG5cdEBpbmNsdWRlIGZvbnQtc2l6ZSgxNnB4LCAxKTtcblx0Jjpob3ZlciB7XG5cdFx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHRcdGNvbG9yOiAkYnJhbmQ7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogJGxpbWU7XG5cdFx0Y29sb3I6JGNoYXJjb2xlO1xuXG5cdH1cblx0QGluY2x1ZGUgbXEoJHVudGlsOiBtb2JpbGVMYXJnZSkge1xuXHRcdHdpZHRoOiAxMDAlO1xuXHR9XG5cblxuXHQmLS1saW1le1xuXHRcdGJvcmRlcjogMXB4IHNvbGlkICRsaW1lO1xuXHRcdGJhY2tncm91bmQtY29sb3I6ICRsaW1lO1xuXHRcdGNvbG9yOiAkY2hhcmNvbGUgIWltcG9ydGFudDtcblx0XHRmb250LXdlaWdodDogYm9sZDtcblx0XHQmOmhvdmVyIHtcblx0XHRcdG9wYWNpdHk6IDAuOFxuXHRcdFx0Ly8gdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHRcdFx0Ly8gY29sb3I6ICRjaGFyY29sZTtcblx0XHRcdC8vIGJhY2tncm91bmQtY29sb3I6ICRicmFuZDtcblx0XHRcdC8vIGJvcmRlci1jb2xvcjogJGJyYW5kO1xuXHRcdH1cblx0fVxufVxuXG5pbnB1dFt0eXBlPVwiYnV0dG9uXCJdLFxuaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSxcbmJ1dHRvbntcblx0QGV4dGVuZCAuby1idG47XG5cdCBcbn0iLCIuby1tYWluLFxuLm8tc2lkZSB7XG5cdC8vIEBpbmNsdWRlIG1xKGxhcCkge1xuXHQvLyAgIGZsb2F0OiBsZWZ0O1xuXHQvLyB9XG59XG5cbi5vLWxheW91dCB7XG5cdD4gLm8tbGF5b3V0X19pdGVtIHtcblx0XHRtYXJnaW4tYm90dG9tOiAyNHB4O1xuXHR9XG5cdCYtLWxhcmdlIHtcblx0XHRtYXJnaW4tbGVmdDogLTM2cHg7XG5cdFx0PiAuby1sYXlvdXRfX2l0ZW0ge1xuXHRcdFx0cGFkZGluZy1sZWZ0OiAzNnB4O1xuXHRcdH1cblx0fVxuXHQmLS1sYXJnZTIge1xuXHRcdG1hcmdpbi1sZWZ0OiAtNDhweDtcblx0XHQ+IC5vLWxheW91dF9faXRlbSB7XG5cdFx0XHRwYWRkaW5nLWxlZnQ6IDQ4cHg7XG5cdFx0fVxuXHR9XG5cdCYtLWxhcmdlMyB7XG5cdFx0bWFyZ2luLWxlZnQ6IC01MnB4O1xuXHRcdD4gLm8tbGF5b3V0X19pdGVtIHtcblx0XHRcdHBhZGRpbmctbGVmdDogNTJweDtcblx0XHR9XG5cdH1cblx0Ji0tZmx1c2gge1xuXHRcdD4gLm8tbGF5b3V0X19pdGVtIHtcblx0XHRcdG1hcmdpbi1ib3R0b206IDA7XG5cdFx0fVxuXHR9XG59XG4iLCIvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgI1dJRFRIU1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBpbnVpdGNzcyBnZW5lcmF0ZXMgYSBzZXJpZXMgb2YgdXRpbGl0eSBjbGFzc2VzIHRoYXQgZ2l2ZSBhIGZsdWlkIHdpZHRoIHRvXG4gKiB3aGljaGV2ZXIgZWxlbWVudCB0aGV54oCZcmUgYXBwbGllZCwgZS5nLjpcbiAqXG4gKiAgIDxpbWcgc3JjPVwiXCIgYWx0PVwiXCIgY2xhc3M9XCJ1LTEvMlwiIC8+XG4gKlxuICogVGhlc2UgY2xhc3NlcyBhcmUgbW9zdCBjb21tb25seSB1c2VkIGluIGNvbmp1bmN0aW9uIHdpdGggb3VyIGxheW91dCBzeXN0ZW0sXG4gKiBlLmcuOlxuICpcbiAqICAgPGRpdiBjbGFzcz1cIm8tbGF5b3V0X19pdGVtICB1LTEvMlwiPlxuICpcbiAqIEJ5IGRlZmF1bHQsIGludWl0Y3NzIHdpbGwgYWxzbyBnZW5lcmF0ZSByZXNwb25zaXZlIHZhcmlhbnRzIG9mIGVhY2ggb2YgdGhlc2VcbiAqIGNsYXNzZXMgYnkgdXNpbmcgeW91ciBTYXNzIE1RIGNvbmZpZ3VyYXRpb24sIGUuZy46XG4gKlxuICogICA8ZGl2IGNsYXNzPVwiby1sYXlvdXRfX2l0ZW0gIHUtMS8xICB1LTEvMkB0YWJsZXQgIHUtMS8zQGRlc2t0b3BcIj5cbiAqXG4gKiBPcHRpb25hbGx5LCBpbnVpdGNzcyBjYW4gZ2VuZXJhdGUgb2Zmc2V0IGNsYXNzZXMgd2hpY2ggY2FuIHB1c2ggYW5kIHB1bGxcbiAqIGVsZW1lbnRzIGxlZnQgYW5kIHJpZ2h0IGJ5IGEgc3BlY2lmaWVkIGFtb3VudCwgZS5nLjpcbiAqXG4gKiAgIDxkaXYgY2xhc3M9XCJvLWxheW91dF9faXRlbSAgdS0yLzMgIHUtcHVsbC0xLzNcIj5cbiAqXG4gKiBUaGlzIGlzIHVzZWZ1bCBmb3IgbWFraW5nIHZlcnkgZ3JhbnVsYXIgY2hhbmdlcyB0byB0aGUgcmVuZGVyZWQgb3JkZXIgb2ZcbiAqIGl0ZW1zIGluIGEgbGF5b3V0LlxuICpcbiAqIE4uQi4gVGhpcyBvcHRpb24gaXMgdHVybmVkIG9mZiBieSBkZWZhdWx0LlxuICovXG5cblxuXG4vLyBXaGljaCBmcmFjdGlvbnMgd291bGQgeW91IGxpa2UgaW4geW91ciBncmlkIHN5c3RlbShzKT8gQnkgZGVmYXVsdCwgaW51aXRjc3Ncbi8vIHByb3ZpZGVzIHlvdSBmcmFjdGlvbnMgb2Ygb25lIHdob2xlLCBoYWx2ZXMsIHRoaXJkcywgcXVhcnRlcnMgYW5kIGZpZnRocyxcbi8vIGUuZy46XG4vL1xuLy8gICAudS0xLzJcbi8vICAgLnUtMi81XG4vLyAgIC51LTMvNFxuLy8gICAudS0yLzNcblxuJGludWl0LWZyYWN0aW9uczogMSAyIDMgNCA1ICFkZWZhdWx0O1xuXG5cblxuXG5cbi8vIE9wdGlvbmFsbHksIGludWl0Y3NzIGNhbiBnZW5lcmF0ZSBjbGFzc2VzIHRvIG9mZnNldCBpdGVtcyBieSBhIGNlcnRhaW4gd2lkdGguXG4vLyBXb3VsZCB5b3UgbGlrZSB0byBnZW5lcmF0ZSB0aGVzZSB0eXBlcyBvZiBjbGFzcyBhcyB3ZWxsPyBFLmcuOlxuLy9cbi8vICAgLnUtcHVzaC0xLzNcbi8vICAgLnUtcHVsbC0yLzRcbi8vICAgLnUtcHVsbC0xLzVcbi8vICAgLnUtcHVzaC0yLzNcblxuJGludWl0LW9mZnNldHM6IGZhbHNlICFkZWZhdWx0O1xuXG5cblxuXG5cbi8vIEJ5IGRlZmF1bHQsIGludWl0Y3NzIHVzZXMgZnJhY3Rpb25zLWxpa2UgY2xhc3NlcyBsaWtlIGA8ZGl2IGNsYXNzPVwidS0xLzRcIj5gLlxuLy8gWW91IGNhbiBjaGFuZ2UgdGhlIGAvYCB0byB3aGF0ZXZlciB5b3UgZmFuY3kgd2l0aCB0aGlzIHZhcmlhYmxlLlxuJGludWl0LXdpZHRocy1kZWxpbWl0ZXI6IFxcLyAhZGVmYXVsdDtcblxuXG5cblxuXG4vLyBXaGVuIHVzaW5nIFNhc3MtTVEsIHRoaXMgZGVmaW5lcyB0aGUgc2VwYXJhdG9yIGZvciB0aGUgYnJlYWtwb2ludHMgc3VmZml4XG4vLyBpbiB0aGUgY2xhc3MgbmFtZS4gQnkgZGVmYXVsdCwgd2UgYXJlIGdlbmVyYXRpbmcgdGhlIHJlc3BvbnNpdmUgc3VmZml4ZXNcbi8vIGZvciB0aGUgY2xhc3NlcyB3aXRoIGEgYEBgIHN5bWJvbCBzbyB5b3UgZ2V0IGNsYXNzZXMgbGlrZTpcbi8vIDxkaXYgY2xhc3M9XCJ1LTMvMTJAbW9iaWxlXCI+XG4kaW51aXQtd2lkdGhzLWJyZWFrcG9pbnQtc2VwYXJhdG9yOiBcXEAgIWRlZmF1bHQ7XG5cblxuXG5cblxuLy8gQSBtaXhpbiB0byBzcGl0IG91dCBvdXIgd2lkdGggY2xhc3Nlcy4gUGFzcyBpbiB0aGUgY29sdW1ucyB3ZSB3YW50IHRoZSB3aWR0aHNcbi8vIHRvIGhhdmUsIGFuZCBhbiBvcHRpb25hbCBzdWZmaXggZm9yIHJlc3BvbnNpdmUgd2lkdGhzLiBFLmcuIHRvIGNyZWF0ZSB0aGlyZHNcbi8vIGFuZCBxdWFydGVycyBmb3IgYSBzbWFsbCBicmVha3BvaW50OlxuLy9cbi8vIEBpbmNsdWRlIHdpZHRocygzIDQsIC1zbSk7XG5cbkBtaXhpbiBpbnVpdC13aWR0aHMoJGNvbHVtbnMsICRicmVha3BvaW50OiBudWxsKSB7XG5cbiAgLy8gTG9vcCB0aHJvdWdoIHRoZSBudW1iZXIgb2YgY29sdW1ucyBmb3IgZWFjaCBkZW5vbWluYXRvciBvZiBvdXIgZnJhY3Rpb25zLlxuICBAZWFjaCAkZGVub21pbmF0b3IgaW4gJGNvbHVtbnMge1xuXG4gICAgLy8gQmVnaW4gY3JlYXRpbmcgYSBudW1lcmF0b3IgZm9yIG91ciBmcmFjdGlvbiB1cCB1bnRpbCB3ZSBoaXQgdGhlXG4gICAgLy8gZGVub21pbmF0b3IuXG4gICAgQGZvciAkbnVtZXJhdG9yIGZyb20gMSB0aHJvdWdoICRkZW5vbWluYXRvciB7XG5cbiAgICAgIC8vIEJ1aWxkIGEgY2xhc3MgaW4gdGhlIGZvcm1hdCBgLnUtMy80W0A8YnJlYWtwb2ludD5dYC5cblxuICAgICAgLnUtI3skbnVtZXJhdG9yfSN7JGludWl0LXdpZHRocy1kZWxpbWl0ZXJ9I3skZGVub21pbmF0b3J9I3skYnJlYWtwb2ludH0ge1xuICAgICAgICB3aWR0aDogKCRudW1lcmF0b3IgLyAkZGVub21pbmF0b3IpICogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgfVxuXG4gICAgICBAaWYgKCRpbnVpdC1vZmZzZXRzID09IHRydWUpIHtcblxuICAgICAgICAvKipcbiAgICAgICAgICogMS4gUmVzZXQgYW55IGxlZnRvdmVyIG9yIGNvbmZsaWN0aW5nIGBsZWZ0YC9gcmlnaHRgIHZhbHVlcy5cbiAgICAgICAgICovXG5cbiAgICAgICAgLy8gQnVpbGQgYSBjbGFzcyBpbiB0aGUgZm9ybWF0IGAudS1wdXNoLTEvMltAPGJyZWFrcG9pbnQ+XWAuXG5cbiAgICAgICAgLnUtcHVzaC0jeyRudW1lcmF0b3J9I3skaW51aXQtd2lkdGhzLWRlbGltaXRlcn0jeyRkZW5vbWluYXRvcn0jeyRicmVha3BvaW50fSB7XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgcmlnaHQ6IGF1dG8gIWltcG9ydGFudDsgLyogWzFdICovXG4gICAgICAgICAgbGVmdDogKCRudW1lcmF0b3IgLyAkZGVub21pbmF0b3IpICogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gQnVpbGQgYSBjbGFzcyBpbiB0aGUgZm9ybWF0IGAudS1wdWxsLTUvNltAPGJyZWFrcG9pbnQ+XWAuXG5cbiAgICAgICAgLnUtcHVsbC0jeyRudW1lcmF0b3J9I3skaW51aXQtd2lkdGhzLWRlbGltaXRlcn0jeyRkZW5vbWluYXRvcn0jeyRicmVha3BvaW50fSB7XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgcmlnaHQ6ICgkbnVtZXJhdG9yIC8gJGRlbm9taW5hdG9yKSAqIDEwMCUgIWltcG9ydGFudDtcbiAgICAgICAgICBsZWZ0OiBhdXRvICFpbXBvcnRhbnQ7IC8qIFsxXSAqL1xuICAgICAgICB9XG5cbiAgICAgIH1cblxuICAgIH1cblxuICB9XG5cbiAgQGlmICgkaW51aXQtb2Zmc2V0cyA9PSB0cnVlIGFuZCAkYnJlYWtwb2ludCAhPSBudWxsKSB7XG5cbiAgICAvLyBDcmVhdGUgYXV0byBwdXNoIGFuZCBwdWxsIGNsYXNzZXMuXG5cbiAgICAudS1wdXNoLW5vbmUjeyRicmVha3BvaW50fSB7XG4gICAgICBsZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLnUtcHVsbC1ub25lI3skYnJlYWtwb2ludH0ge1xuICAgICAgcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICB9XG5cbiAgfVxuXG59XG5cblxuXG5cblxuLyoqXG4gKiBBIHNlcmllcyBvZiB3aWR0aCBoZWxwZXIgY2xhc3NlcyB0aGF0IHlvdSBjYW4gdXNlIHRvIHNpemUgdGhpbmdzIGxpa2UgZ3JpZFxuICogc3lzdGVtcy4gQ2xhc3NlcyB0YWtlIGEgZnJhY3Rpb24tbGlrZSBmb3JtYXQgKGUuZy4gYC51LTIvM2ApLiBVc2UgdGhlc2UgaW5cbiAqIHlvdXIgbWFya3VwOlxuICpcbiAqIDxkaXYgY2xhc3M9XCJ1LTcvMTJcIj5cbiAqXG4gKiBUaGUgZm9sbG93aW5nIHdpbGwgZ2VuZXJhdGUgd2lkdGhzIGhlbHBlciBjbGFzc2VzIGJhc2VkIG9uIHRoZSBmcmFjdGlvbnNcbiAqIGRlZmluZWQgaW4gdGhlIGAkaW51aXQtZnJhY3Rpb25zYCBsaXN0LlxuICovXG5cbkBpbmNsdWRlIGludWl0LXdpZHRocygkaW51aXQtZnJhY3Rpb25zKTtcblxuXG5cblxuXG4vKipcbiAqIElmIHdl4oCZcmUgdXNpbmcgU2Fzcy1NUSwgYXV0b21hdGljYWxseSBnZW5lcmF0ZSBncmlkIHN5c3RlbShzKSBmb3IgZWFjaCBvZiBvdXJcbiAqIGRlZmluZWQgYnJlYWtwb2ludHMsIGFuZCBnaXZlIHRoZW0gYSBSZXNwb25zaXZlIFN1ZmZpeCwgZS5nLjpcbiAqXG4gKiA8ZGl2IGNsYXNzPVwidS0zLzEyQG1vYmlsZVwiPlxuICovXG5cbkBpZiAodmFyaWFibGUtZXhpc3RzKG1xLWJyZWFrcG9pbnRzKSkge1xuXG4gIEBlYWNoICRpbnVpdC1icC1uYW1lLCAkaW51aXQtYnAtdmFsdWUgaW4gJG1xLWJyZWFrcG9pbnRzIHtcblxuICAgIEBpbmNsdWRlIG1xKCRmcm9tOiAkaW51aXQtYnAtbmFtZSkge1xuICAgICAgQGluY2x1ZGUgaW51aXQtd2lkdGhzKCRpbnVpdC1mcmFjdGlvbnMsICN7JGludWl0LXdpZHRocy1icmVha3BvaW50LXNlcGFyYXRvcn0jeyRpbnVpdC1icC1uYW1lfSk7XG4gICAgfVxuXG4gIH1cblxufVxuIiwiLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICNQUklOVFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBWZXJ5IGNydWRlLCByZXNldC1saWtlIHN0eWxlcyB0YWtlbiBmcm9tIHRoZSBIVE1MNSBCb2lsZXJwbGF0ZTpcbiAqIGh0dHBzOi8vZ2l0aHViLmNvbS9oNWJwL2h0bWw1LWJvaWxlcnBsYXRlL2Jsb2IvNS4zLjAvZGlzdC9kb2MvY3NzLm1kI3ByaW50LXN0eWxlc1xuICogaHR0cHM6Ly9naXRodWIuY29tL2g1YnAvaHRtbDUtYm9pbGVycGxhdGUvYmxvYi9tYXN0ZXIvZGlzdC9jc3MvbWFpbi5jc3MjTDIwNS1MMjgyXG4gKi9cblxuQG1lZGlhIHByaW50IHtcblxuICAvKipcbiAgICogMS4gQmxhY2sgcHJpbnRzIGZhc3RlcjogaHR0cDovL3d3dy5zYW5iZWlqaS5jb20vYXJjaGl2ZXMvOTUzXG4gICAqL1xuXG4gICosXG4gICo6YmVmb3JlLFxuICAqOmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiAjMDAwICFpbXBvcnRhbnQ7IC8qIFsxXSAqL1xuICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICB0ZXh0LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICB9XG5cblxuICBhLFxuICBhOnZpc2l0ZWQge1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICB9XG5cbiAgYVtocmVmXTphZnRlciB7XG4gICAgY29udGVudDogXCIgKFwiIGF0dHIoaHJlZikgXCIpXCI7XG4gIH1cblxuICBhYmJyW3RpdGxlXTphZnRlciB7XG4gICAgY29udGVudDogXCIgKFwiIGF0dHIodGl0bGUpIFwiKVwiO1xuICB9XG5cblxuICAvKipcbiAgICogRG9u4oCZdCBzaG93IGxpbmtzIHRoYXQgYXJlIGZyYWdtZW50IGlkZW50aWZpZXJzLCBvciB1c2UgdGhlIGBqYXZhc2NyaXB0OmBcbiAgICogcHNldWRvIHByb3RvY29sLlxuICAgKi9cblxuICBhW2hyZWZePVwiI1wiXTphZnRlcixcbiAgYVtocmVmXj1cImphdmFzY3JpcHQ6XCJdOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICB9XG5cbiAgcHJlLFxuICBibG9ja3F1b3RlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjOTk5O1xuICAgIHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDtcbiAgfVxuXG5cbiAgLyoqXG4gICAqIFByaW50aW5nIFRhYmxlczogaHR0cDovL2Nzcy1kaXNjdXNzLmluY3V0aW8uY29tL3dpa2kvUHJpbnRpbmdfVGFibGVzXG4gICAqL1xuXG4gIHRoZWFkIHtcbiAgICBkaXNwbGF5OiB0YWJsZS1oZWFkZXItZ3JvdXA7XG4gIH1cblxuICB0cixcbiAgaW1nIHtcbiAgICBwYWdlLWJyZWFrLWluc2lkZTogYXZvaWQ7XG4gIH1cblxuXG4gIGltZyB7XG4gICAgbWF4LXdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gIH1cblxuICBwLFxuICBoMixcbiAgaDMge1xuICAgIG9ycGhhbnM6IDM7XG4gICAgd2lkb3dzOiAzO1xuICB9XG5cbiAgaDIsXG4gIGgzIHtcbiAgICBwYWdlLWJyZWFrLWFmdGVyOiBhdm9pZDtcbiAgfVxuXG59XG4iLCIudS1za2lwIHtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHRvdmVyZmxvdzogaGlkZGVuO1xuXHR3aWR0aDogMXB4O1xuXHRoZWlnaHQ6IDFweDtcblx0dG9wOiAtMTBweDtcblx0ei1pbmRleDogLTk5OTtcblxuXHQmOmhvdmVyLFxuXHQmOmFjdGl2ZSxcblx0Jjpmb2N1cyB7XG5cdFx0d2lkdGg6IGF1dG87XG5cdFx0aGVpZ2h0OiBhdXRvO1xuXHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHR0b3A6ICR1bml0LXNtYWxsO1xuXHRcdGxlZnQ6IDUwJTtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG5cdFx0ei1pbmRleDogOTk5O1xuXHR9XG59IiwiLmFuaW1hdGUge1xuXHRvcGFjaXR5OiAwO1xufVxuXG4uYW5pbWF0ZWQge1xuXHRvcGFjaXR5OiAxO1xuXHRhbmltYXRpb246IGZhZGVJblVwIDEuMjVzO1xuXHRhbmltYXRpb24tZmlsbC1tb2RlOiBib3RoO1xufVxuXG4ucHJlLWFuaW1hdGUge1xuXHRvcGFjaXR5OiAwO1xufVxuXG4udmlzaWJsZSB7XG5cdG9wYWNpdHk6IDEgIWltcG9ydGFudDtcbn1cblxuLmFuaW1hdGUtZGVsYXkge1xuXHQmLTAge1xuXHRcdGFuaW1hdGlvbi1kZWxheTogMHM7XG5cdH1cblxuXHQmLTEge1xuXHRcdGFuaW1hdGlvbi1kZWxheTogMC4ycztcblx0fVxuXG5cdCYtMiB7XG5cdFx0YW5pbWF0aW9uLWRlbGF5OiAwLjRzO1xuXHR9XG59XG5cbkBrZXlmcmFtZXMgZmFkZUluVXAge1xuXHQwJSB7XG5cdFx0b3BhY2l0eTogMDtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDI1cHgsIDApO1xuXHR9XG5cblx0MTAwJSB7XG5cdFx0b3BhY2l0eTogMTtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuXHR9XG59XG5cblxuQGtleWZyYW1lcyBzbGlkZS1sZWZ0IHtcblx0MCUge1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcblx0fVxuXG5cdDEwMCUge1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwcHgpO1xuXHR9XG59XG5cblxuLy8gZnJvbnRwYWdlIGFuaW1hdGlvbiBcblxuQGtleWZyYW1lcyB6b29tRWZmZWN0IHtcbiAgICAwJSB7XG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMi41KTsgLyogU3RhcnQgc2xpZ2h0bHkgem9vbWVkIGluICovXG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgfVxuICAgIDUwJSB7XG4gICAgICAgIG9wYWNpdHk6IDAuMDM7XG4gICAgfVxuICAgIDEwMCUge1xuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpOyAvKiBab29tIG91dCB0byBub3JtYWwgc2l6ZSAqL1xuICAgICAgICBvcGFjaXR5OiAwLjI7XG4gICAgfVxufVxuXG5Aa2V5ZnJhbWVzIHNsaWRlSW4ge1xuICAgIDAlIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgMCk7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgfVxuICAgIDEwMCUge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICB9XG59XG5cbkBrZXlmcmFtZXMgbW92ZUFuZFJlc2l6ZSB7XG4gICAgMCUge1xuICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgbGVmdDogNTAlO1xuICAgIH1cbiAgICAxMDAlIHtcbiAgICAgICAgdG9wOiA2NXB4O1xuICAgICAgICBsZWZ0OiA2NXB4O1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbiAgICAgICAgd2lkdGg6IDIzMHB4O1xuICAgIH1cbn1cblxuQGtleWZyYW1lcyBtb3ZlQW5kUmVzaXplTW9iaWxlIHtcbiAgICAwJSB7XG4gICAgICAgIHRvcDogNTAlO1xuICAgICAgICBsZWZ0OiA1MCU7XG4gICAgfVxuICAgIDEwMCUge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbiAgICAgICAgd2lkdGg6IDIzMHB4O1xuXG4gICAgICAgIHRvcDogMjFweDtcbiAgICAgICAgbGVmdDogMjFweDtcbiAgICB9XG59XG5cbkBrZXlmcmFtZXMgZmFkZUluIHtcbiAgICBmcm9tIHtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDIwcHgpO1xuICAgIH1cbiAgICB0byB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICB9XG59XG5cbkBrZXlmcmFtZXMgcm90YXRpbmcge1xuICAgIGZyb20ge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwKTtcbiAgICB9XG5cbiAgICB0byB7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC00OGRlZyk7XG4gICAgfVxufVxuQGtleWZyYW1lcyByb3RhdGluZy1iYWNrIHtcbiAgICBmcm9tIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTQ4ZGVnKTtcbiAgICB9XG5cbiAgICB0byB7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDApO1xuICAgIH1cbn1cbiIsImg0LFxuaDUsXG5oNixcbnVsLFxub2wsXG5kbCxcbmJsb2NrcXVvdGUsXG5wLFxuYWRkcmVzcyxcbmhyLFxudGFibGUsXG5maWVsZHNldCxcbmZpZ3VyZSxcbnByZSxcbiVtYXJnaW4tYm90dG9tIHtcblx0bWFyZ2luLWJvdHRvbTogMjRweDtcbn1cblxuLmNsZWFyZml4IHtcblx0QGluY2x1ZGUgY2xlYXJmaXgoKTtcbn1cblxuLy8gVGV4dCBtZWFudCBvbmx5IGZvciBzY3JlZW4gcmVhZGVycy5cbi5zY3JlZW4tcmVhZGVyLXRleHQge1xuXHRwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcblx0d2lkdGg6IDFweDtcblx0aGVpZ2h0OiAxcHg7XG5cdG92ZXJmbG93OiBoaWRkZW47XG5cdGNsaXA6IHJlY3QoMXB4LCAxcHgsIDFweCwgMXB4KTtcbn1cblxuLnNjcmVlbi1yZWFkZXItdGV4dDpmb2N1cyB7XG5cdHRvcDogNXB4O1xuXHRsZWZ0OiA1cHg7XG5cdHotaW5kZXg6IDEwMDAwMDsgLy8gQWJvdmUgV1AgdG9vbGJhci5cblx0ZGlzcGxheTogYmxvY2s7XG5cdHdpZHRoOiBhdXRvO1xuXHRoZWlnaHQ6IGF1dG87XG5cdHBhZGRpbmc6IDE1cHggMjNweCAxNHB4O1xuXHRib3JkZXItcmFkaXVzOiAzcHg7XG5cdGNsaXA6IGF1dG8gIWltcG9ydGFudDtcblx0Zm9udC1zaXplOiAwLjg3NXJlbTtcblx0Zm9udC13ZWlnaHQ6IGJvbGQ7XG5cdGxpbmUtaGVpZ2h0OiBub3JtYWw7XG5cdGNvbG9yOiAjMjE3NTliO1xuXHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cdGJhY2tncm91bmQtY29sb3I6ICNmMWYxZjE7XG5cdGJveC1zaGFkb3c6IDAgMCAycHggMnB4IHJnYmEoMCwgMCwgMCwgMC42KTtcbn1cbi5lbXB0eVB7XG5cdEBpbmNsdWRlIG1xKCR1bnRpbDogdGFibGV0KSB7XG5cdFx0ZGlzcGxheTogbm9uZTtcblx0fVxufVxuXG4udCB7XG5cdCYtYWxpZ24ge1xuXHRcdCYtY2VudGVyIHtcblx0XHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0XHR9XG5cblx0XHQmLWxlZnQge1xuXHRcdFx0dGV4dC1hbGlnbjogbGVmdDtcblx0XHR9XG5cblx0XHQmLXJpZ2h0IHtcblx0XHRcdHRleHQtYWxpZ246IHJpZ2h0O1xuXHRcdH1cblx0fVxufVxuXG4ucHQge1xuXHQmLXQge1xuXHRcdHBhZGRpbmctdG9wOiAyNHB4O1xuXHR9XG5cblx0Ji1zIHtcblx0XHRwYWRkaW5nLXRvcDogMjRweDtcblxuXHRcdEBpbmNsdWRlIG1xKHRhYmxldCkge1xuXHRcdFx0cGFkZGluZy10b3A6IDQ4cHg7XG5cdFx0fVxuXHR9XG5cblx0Ji1tIHtcblx0XHRwYWRkaW5nLXRvcDogMjRweDtcblxuXHRcdEBpbmNsdWRlIG1xKHRhYmxldCkge1xuXHRcdFx0cGFkZGluZy10b3A6IDcycHg7XG5cdFx0fVxuXHR9XG5cblx0Ji1sIHtcblx0XHRwYWRkaW5nLXRvcDogOTBweDtcblxuXHRcdEBpbmNsdWRlIG1xKHRhYmxldCkge1xuXHRcdFx0cGFkZGluZy10b3A6IDEyOHB4O1xuXHRcdH1cblx0fVxuXG5cdCYtMCB7XG5cdFx0cGFkZGluZy10b3A6IDFweDtcblx0fVxufVxuXG4ucGIge1xuXHQmLXQge1xuXHRcdHBhZGRpbmctYm90dG9tOiAxcHg7XG5cblx0XHRAaW5jbHVkZSBtcSh0YWJsZXQpIHtcblx0XHRcdHBhZGRpbmctYm90dG9tOiAyNHB4O1xuXHRcdH1cblx0fVxuXG5cdCYtcyB7XG5cdFx0cGFkZGluZy1ib3R0b206IDFweDtcblxuXHRcdEBpbmNsdWRlIG1xKHRhYmxldCkge1xuXHRcdFx0cGFkZGluZy1ib3R0b206IDQ4cHg7XG5cdFx0fVxuXHR9XG5cblx0Ji1tIHtcblx0XHRwYWRkaW5nLWJvdHRvbTogMXB4O1xuXG5cdFx0QGluY2x1ZGUgbXEodGFibGV0KSB7XG5cdFx0XHRwYWRkaW5nLWJvdHRvbTogNzJweDtcblx0XHR9XG5cdH1cblxuXHQmLWwge1xuXHRcdHBhZGRpbmctYm90dG9tOiAxcHg7XG5cblx0XHRAaW5jbHVkZSBtcSh0YWJsZXQpIHtcblx0XHRcdHBhZGRpbmctYm90dG9tOiAxMjhweDtcblx0XHR9XG5cdH1cblxuXHQmLTAge1xuXHRcdHBhZGRpbmctYm90dG9tOiAxcHg7XG5cdH1cbn1cblxuLnBkLnBiLW0ge1xuXHRwYWRkaW5nLWJvdHRvbTogMzZweDtcblxuXHRAaW5jbHVkZSBtcSh0YWJsZXQpIHtcblx0XHRwYWRkaW5nLWJvdHRvbTogODBweDtcblx0fVxuXG5cdC53eXNpd2lnLWVkaXRvciB7XG5cdFx0cCB7XG5cdFx0XHQmOmxhc3Qtb2YtdHlwZTpub3QoOm9ubHktb2YtdHlwZSkge1xuXHRcdFx0XHRtYXJnaW4tYm90dG9tOiAwO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxufVxuXG4ubXQge1xuXHQmLXMge1xuXHRcdG1hcmdpbi10b3A6IDMwcHg7XG5cdH1cblxuXHQmLWwge1xuXHRcdG1hcmdpbi10b3A6IDUwcHg7XG5cblx0XHRAaW5jbHVkZSBtcSh0YWJsZXQpIHtcblx0XHRcdG1hcmdpbi10b3A6IDcwcHg7XG5cdFx0fVxuXHR9XG59XG5cbi5tYiB7XG5cdCYtcyB7XG5cdFx0bWFyZ2luLWJvdHRvbTogMzBweDtcblx0fVxuXG5cdCYtbCB7XG5cdFx0bWFyZ2luLWJvdHRvbTogNTBweDtcblxuXHRcdEBpbmNsdWRlIG1xKHRhYmxldCkge1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogNzBweDtcblx0XHR9XG5cdH1cblxuXHQmLTAge1xuXHRcdG1hcmdpbi1ib3R0b206IDA7XG5cdH1cbn1cblxuXG5cbi8vICAgYWRtaW4gYmFyICBoaWRkZW4gb24gc2l0ZVxuaHRtbHtcbiAgICBtYXJnaW4tdG9wOjAgIWltcG9ydGFudDtcbn1cblxuaHRtbCAjd3BhZG1pbmJhciB7XG4gICAgd2lkdGg6IDMzcHg7XG4gICAgbWluLXdpZHRoOiAxcHg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjsgXG4gICAgdHJhbnNpdGlvbjogLjRzIHdpZHRoO1xuXHR0cmFuc2l0aW9uLWRlbGF5OiAzcztcblxuXHQmOmhvdmVyIHtcblx0XHR3aWR0aDogMTAwJTtcblx0XHRvdmVyZmxvdzogdmlzaWJsZTsgXG5cdFx0dHJhbnNpdGlvbi1kZWxheTogMHM7XG5cdH1cbn1cblxuIiwiLmMtNDA0LXBhZ2Uge1xuXHRwYWRkaW5nOiAxMjBweCAwO1xuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4iLCIuYy10b3Age1xuXHQvLyBwb3NpdGlvbjogZml4ZWQ7XG5cdHotaW5kZXg6IDYwMDtcblx0dG9wOiAwO1xuXHRsZWZ0OiAwO1xuXHR3aWR0aDogMTAwJTtcblx0dHJhbnNpdGlvbjogLjVzO1xuXHRwYWRkaW5nOiAxNnB4IDA7XG5cdEBleHRlbmQgLmhpZGUtc2Nyb2xsYmFyO1xuXHRiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcblx0QGluY2x1ZGUgbXEodGFibGV0KSB7XG5cdFx0cGFkZGluZzogMjRweCAwO1xuXHR9XG5cblx0Ji5maXhlZDpub3QoLm1lbnUtb3Blbikge1xuXHRcdHBvc2l0aW9uOiBmaXhlZDtcblx0XHRiYWNrZ3JvdW5kOiAkd2hpdGU7XG5cdFx0cGFkZGluZzogNnB4IDA7XG5cdFx0QGluY2x1ZGUgbXEodGFibGV0KSB7XG5cdFx0XHRwYWRkaW5nOiAxMnB4IDA7XG5cdFx0fVxuXHR9XG5cblx0QGluY2x1ZGUgbXEoJHVudGlsOiB0YWJsZXRXaWRlKSB7XG5cdFx0Ji5tZW51LW9wZW4ge1xuXHRcdFx0aGVpZ2h0OiAxMDAlO1xuXHRcdFx0ei1pbmRleDogNzUwO1xuXHRcdFx0b3ZlcmZsb3c6IGF1dG87XG5cdFx0fVxuXHR9XG59XG5cbi5jLWhlYWRlciB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcblx0QGluY2x1ZGUgbXEoJHVudGlsOiB0YWJsZXRXaWRlKSB7XG5cdFx0ZmxleC13cmFwOiB3cmFwO1xuXHRcdGhlaWdodDogMTAwJTtcblx0fVxuXG5cdCZfX2xvZ28ge1xuXHRcdG1hcmdpbi1yaWdodDogMTZweDtcblx0fVxuXG5cdCZfX25hdi10b2dnbGUge1xuXHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHR2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXHRcdGNvbG9yOiAkYnJhbmQ7XG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdHotaW5kZXg6IDcwMDtcblx0XHR0cmFuc2l0aW9uOiAwLjNzO1xuXHRcdHdpZHRoOiA0MHB4O1xuXHRcdGhlaWdodDogNDBweDtcblx0XHRtYXJnaW4tbGVmdDogNnB4O1xuXHRcdEBpbmNsdWRlIG1xKHRhYmxldFdpZGUpIHtcblx0XHRcdGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcblx0XHR9XG5cblx0XHRzcGFuLFxuXHRcdCY6YmVmb3JlLFxuXHRcdCY6YWZ0ZXIge1xuXHRcdFx0Y29udGVudDogXCJcIjtcblx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0cmlnaHQ6IDA7XG5cdFx0XHRoZWlnaHQ6IDNweDtcblx0XHRcdHdpZHRoOiAyOHB4O1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJGJyYW5kO1xuXHRcdFx0dHJhbnNpdGlvbjogMC41cztcblx0XHRcdG1hcmdpbi10b3A6IDEycHg7XG5cdFx0fVxuXG5cdFx0Jjo6YmVmb3JlIHtcblx0XHRcdHRvcDogMHB4O1xuXHRcdH1cblxuXHRcdHNwYW4ge1xuXHRcdFx0dG9wOiA4cHg7XG5cdFx0fVxuXG5cdFx0Jjo6YWZ0ZXIge1xuXHRcdFx0dG9wOiAxNnB4O1xuXHRcdH1cblxuXHRcdC5tZW51LW9wZW4gJiB7XG5cdFx0XHQmOmJlZm9yZSxcblx0XHRcdCY6YWZ0ZXIge1xuXHRcdFx0XHR0b3A6IDEwcHg7XG5cdFx0XHR9XG5cdFx0XHRzcGFuIHtcblx0XHRcdFx0b3BhY2l0eTogMDtcblx0XHRcdH1cblxuXHRcdFx0Jjo6YmVmb3JlIHtcblx0XHRcdFx0dHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcblx0XHRcdH1cblxuXHRcdFx0Jjo6YWZ0ZXIge1xuXHRcdFx0XHR0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59IiwiLmMtc3ZnaWNvbiB7XG5cdCYtLWxvZ297XG5cdFx0d2lkdGg6IDE5N3B4O1xuXHRcdGhlaWdodDogMzRweDtcblx0fVxufVxuIiwiLmFsaWdubGVmdCxcbi5hbGlnbnJpZ2h0LFxuLmFsaWduY2VudGVyLFxuLmFsaWdubm9uZSB7XG5cdGRpc3BsYXk6IGJsb2NrO1xuXHRvdmVyZmxvdzogaGlkZGVuOyAvLyBmaXggY2FwdGlvbiBtYXJnaW5cblx0aGVpZ2h0OiBhdXRvO1xuXHRtYXJnaW4tYm90dG9tOiBzcGFjZXIoMSk7XG5cdC8vIHBhZGRpbmc6ICRzcGFjaW5nLXVuaXQtLXNtYWxsO1xuXHRiYWNrZ3JvdW5kOiBjb2xvcihcIndoaXRlXCIpO1xuXHRib3JkZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcblx0Ym94LXNoYWRvdzogMCAwIDRweCByZ2JhKGJsYWNrLCAuMSk7XG5cblx0Ly8gZm9yIGNhcHRpb25cblx0aW1nIHtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRoZWlnaHQ6IGF1dG87XG5cdH1cbn1cblxuLnNpemUtZnVsbCxcbi5hbGlnbm5vbmUgaW1nIHtcblx0d2lkdGg6IDEwMCU7XG59XG5cbi5hbGlnbmxlZnQge1xuXHR3aWR0aDogMTAwJTtcblx0bWFyZ2luLWJvdHRvbTogc3BhY2VyKC41KTtcblxuXHRAaW5jbHVkZSBtcShcInRhYmxldFwiKSB7XG5cdFx0d2lkdGg6IDQwJTtcblx0XHRtYXgtd2lkdGg6IDQwJTtcblx0XHRmbG9hdDogbGVmdDtcblx0XHRjbGVhcjogbGVmdDtcblx0XHRtYXJnaW4tcmlnaHQ6IHNwYWNlcigxKTtcblx0fVxuXG5cdC8vIGZvciBjYXB0aW9uXG5cdGltZyB7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdH1cbn1cblxuLmFsaWducmlnaHQge1xuXHR3aWR0aDogMTAwJTtcblx0bWFyZ2luLWJvdHRvbTogc3BhY2VyKC41KTtcblxuXHRAaW5jbHVkZSBtcShcInRhYmxldFwiKSB7XG5cdFx0ZmxvYXQ6IHJpZ2h0O1xuXHRcdHdpZHRoOiA0MCU7XG5cdFx0bWF4LXdpZHRoOiA0MCU7XG5cdFx0Y2xlYXI6IHJpZ2h0O1xuXHRcdG1hcmdpbi1sZWZ0OiBzcGFjZXIoMSk7XG5cdH1cbn1cblxuLmFsaWduY2VudGVyIHtcblx0bWF4LXdpZHRoOiAxMDAlO1xuXHRtYXJnaW4tbGVmdDogYXV0bztcblx0bWFyZ2luLXJpZ2h0OiBhdXRvO1xufVxuXG4uYWxpZ25ub25lIHtcblx0d2lkdGg6IDEwMCU7XG5cdG1pbi13aWR0aDogMTAwJTtcblx0bWF4LXdpZHRoOiAxMDAlO1xufVxuXG4ud3AtY2FwdGlvbi10ZXh0IHtcblx0bWFyZ2luOiAkdW5pdC10aW55ICR1bml0LXNtYWxsO1xuXHRAaW5jbHVkZSBmb250LXNpemUoMTRweCk7XG5cdGZvbnQtc3R5bGU6IGl0YWxpYztcblx0dGV4dC1hbGlnbjogY2VudGVyO1xufSIsIi8vIENvbnZlcnQgcHggdG8gZW1cbkBmdW5jdGlvbiBlbSgkcHgsICRiYXNlOiAkYmFzZS1mb250LXNpemUpIHtcblx0QHJldHVybiAoJHB4IC8gJGJhc2UpICogMWVtO1xufVxuXG4vLyBAZGVzY3JpcHRpb24gUmV0dXJucyB6LWluZGV4IGJhc2VkIG9uIGluZGV4IG9mIGl0ZW0gaW4gbGlzdFxuLy8gQHBhcmFtIHtMaXN0fSB6LWluZGV4IGxpc3QgdGhlIGl0ZW0gaXMgaW5cbi8vIEBwYXJhbSB7S2V5fSB0aGUgaXRlbSBuYW1lIHRvIGdldCBpbmRleCBvZlxuQGZ1bmN0aW9uIHooJGxpc3QsICRlbGVtZW50KSB7XG5cdCR6LWluZGV4OiBpbmRleCgkbGlzdCwgJGVsZW1lbnQpO1xuXHRAaWYgJHotaW5kZXgge1xuXHRcdEByZXR1cm4gJHotaW5kZXg7XG5cdH1cblx0QHdhcm4gJ1RoZXJlIGlzIG5vIGl0ZW0gJyN7JGVsZW1lbnR9ICdpbiB0aGlzIGxpc3Q7IGNob29zZSBvbmUgb2Y6ICcjeyRsaXN0fTtcblx0QHJldHVybiBudWxsO1xufVxuXG4vLyBAZGVzY3JpcHRpb24gIFF1aWNrIGFuZCBuYXN0eSBmdW5jdGlvbiB0byBoZWxwIHdpdGggdmVydGljYWwgcmh5dGhtLiBCZXR0ZXIgb2ZmIHVzaW5nIHNvbWV0aGluZyBtb3JlIHJvYnVzdCwgYnV0IHRoaXMgaXMgc2ltcGxlciBmb3IgZGVtb25zdHJhdGluZyB0aGUgaWRlYS5cbi8vIEBwYXJhbSBsaW5lcyAgSG93IG1hbnkgdmVydGljYWwgcmh5dGhtIGxpbmVzIHlvdSB3YW50XG4vLyBAcGFyYW0gZm9udC1zaXplICBDdXJyZW50IGVsZW1lbnQncyBmb250LXNpemUgaW4gcHhcbkBmdW5jdGlvbiByZWxhdGl2ZS1yaHl0aG0oJGxpbmVzOiAxLCAkZm9udC1zaXplOiAkYmFzZS1mb250LXNpemUpIHtcblx0JHJoeXRobTogJGJhc2UtbGluZS1oZWlnaHQgLyAkZm9udC1zaXplICogJGxpbmVzO1xuXHRAcmV0dXJuICRyaHl0aG07XG59XG5cbi8vIHVzZSB0aGlzIGZvciBtYXJnaW5zLiBPdXRwdXRzIGVtIHVuaXRzIHRvIG1haW50YWluIHJlbGF0aW5zaGlwIHdpdGggZm9udC1zaXplLlxuQGZ1bmN0aW9uIHNwYWNlcigkbGluZXM6IDEsICRmb250LXNpemU6ICRiYXNlLWZvbnQtc2l6ZSkge1xuXHQkdmFsdWU6ICRiYXNlLWxpbmUtaGVpZ2h0IC8gJGZvbnQtc2l6ZSAqICRsaW5lcztcblx0QHJldHVybiAkdmFsdWUgKiAxZW07XG59XG4iLCIuYy1zaXRlLW5hdiB7XG5cdGZsZXg6IDE7XG5cdEBpbmNsdWRlIG1xKCR1bnRpbDogdGFibGV0V2lkZSkge1xuXHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0b3JkZXI6IDM7XG5cdFx0ZmxleDogMCAwIDEwMCU7XG5cdFx0bWFyZ2luOiAxMDBweCAwIDM2cHg7XG5cdFx0Lm1lbnUtb3BlbiAmIHtcblx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdH1cblx0fVxufVxuXG4uYy1uYXYge1xuXHRsaXN0LXN0eWxlOiBub25lO1xuXHRtYXJnaW4tYm90dG9tOiAwO1xuXHRtYXJnaW46IDA7XG5cdGxpIHtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRtYXJnaW4tYm90dG9tOiAyNHB4O1xuXHRcdEBpbmNsdWRlIG1xKHRhYmxldFdpZGUpIHtcblx0XHRcdG1hcmdpbjogMDtcblx0XHRcdHBhZGRpbmctbGVmdDogMzJweDtcblx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHR9XG5cblx0XHRhIHtcblx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRcdCY6aG92ZXIge1xuXHRcdFx0XHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cdFx0XHRcdGNvbG9yOiAkYnJhbmQ7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0Ji5jdXJyZW50LW1lbnUtaXRlbSB7XG5cdFx0XHRhIHtcblx0XHRcdFx0Y29sb3I6ICRicmFuZDtcblx0XHRcdH1cblx0XHR9XG5cdH1cbn1cblxuLmMtcGFnZS1uYXYge1xuXHRtYXJnaW4tdG9wOiAzNnB4O1xuXHRwYWRkaW5nLXRvcDogMTJweDtcblx0Ym9yZGVyLXRvcDogMXB4IHNvbGlkICRjb250ZW50O1xuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cblx0LnBhZ2UtbnVtYmVycyB7XG5cdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdHBhZGRpbmc6IDRweCA2cHg7XG5cdFx0Y29sb3I6ICRjb250ZW50O1xuXHRcdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuXHRcdCY6aG92ZXIsXG5cdFx0Ji5jdXJyZW50IHtcblx0XHRcdGNvbG9yOiBzaGFkZSgkY29udGVudCwgMzAlKTtcblx0XHR9XG5cdH1cbn0iLCJodG1sOmhhcyhib2R5LmhvbWUpIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4gXG5ib2R5e1xuICAgIGJhY2tncm91bmQtY29sb3I6IGJsYWNrO1xuXG59XG5ib2R5LmhvbWUge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNoYXJjb2xlO1xuXG4gICAgLmJnLXdyYXBwZXIge1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBpbnNldDogMDtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICB6LWluZGV4OiAtMTtcbiAgICAgICAgLmJnIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGJsYWNrO1xuICAgICAgICAgICAgLy8gYmFja2dyb3VuZC1jb2xvcjogJGNoYXJjb2xlO1xuICAgICAgICAgICAgLy8gYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1nL2JnLXBhdHRlcm4uc3ZnXCIpO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgICAgICAgICAvLyBhbmltYXRpb246IHpvb21FZmZlY3QgMS4ycyBlYXNlLWluLW91dCBmb3J3YXJkcztcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIGluc2V0OiAwO1xuICAgICAgICAgICAgei1pbmRleDogLTI7XG5cbiAgICAgICAgICAgIHdpZHRoOiAxMDB2dztcbiAgICAgICAgICAgIGhlaWdodDogMTAwdmg7XG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xKCR1bnRpbDogdGFibGV0KSB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1nL2JnLXBhdHRlcm4tbW9iaWxlLnN2Zz8xXCIpO1xuICAgICAgICAgICAgICAgIC8vIG9wYWNpdHk6IDAuMDQgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICNNYWluIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBpbnNldDogMDtcblxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG4gICAgICAgIHBhZGRpbmc6IDY1cHg7XG5cbiAgICAgICAgQGluY2x1ZGUgbXEoJHVudGlsOiB0YWJsZXQpIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDIxcHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuY29udGVudCB7XG4gICAgICAgIG9wYWNpdHk6IDA7IC8qIEluaXRpYWwgc3RhdGUgKi9cbiAgICAgICAgYW5pbWF0aW9uOiBmYWRlSW4gMXMgZWFzZS1vdXQgZm9yd2FyZHM7IC8qIEFwcGx5IHRoZSBhbmltYXRpb24gKi9cbiAgICAgICAgYW5pbWF0aW9uLWRlbGF5OiAyczsgLyogRGVsYXkgYmVmb3JlIHRoZSBhbmltYXRpb24gc3RhcnRzICovXG5cbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xuXG4gICAgICAgIEBpbmNsdWRlIG1xKCR1bnRpbDogdGFibGV0KSB7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgICAgZ2FwOiA1MHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgLmNvcHkge1xuICAgICAgICAgICAgbWF4LXdpZHRoOiA3MjRweDtcbiAgICAgICAgfVxuICAgICAgICBoMSB7XG4gICAgICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgICAgICBmb250LWZhbWlseTogXCJSZWQgSGF0IERpc3BsYXlcIjtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogNDVweDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMTEzLjUlOyAvKiA1MS4wNzVweCAqL1xuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuOXB4O1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMzFweDtcbiAgICAgICAgICAgIEBpbmNsdWRlIG1xKCR1bnRpbDogdGFibGV0KSB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAyN3B4O1xuICAgICAgICAgICAgfSBcbiAgICAgICAgfVxuICAgICAgICBwIHtcbiAgICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICBmb250LXNpemU6IDIycHg7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEzNSU7IC8qIDI5LjdweCAqL1xuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC0wLjIycHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuZW5xdWlyZS1sb2dvIHtcbiAgICAgICAgLy8gd2lkdGg6IDExNHB4O1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIEBpbmNsdWRlIG1xKHRhYmxldCl7XG4gICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIH1cblxuICAgICAgICBzdmcge1xuICAgICAgICAgICAgYW5pbWF0aW9uOiByb3RhdGluZy1iYWNrIDAuM3MgbGluZWFyIGZvcndhcmRzO1xuICAgICAgICAgICAgd2lkdGg6IDEyMHB4O1xuICAgICAgICAgICAgY29sb3I6IHdoaXRlO1xuXG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBjb2xvciAwLjJzIGVhc2U7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xKCR1bnRpbDogdGFibGV0KSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDgwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAucXVhcnRlciB7XG4gICAgICAgICAgICB3aWR0aDogMTVweDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSkgcm90YXRlWSg5MGRlZykgcm90YXRlWCg5MGRlZyk7XG4gICAgICAgICAgICAvLyBoZWlnaHQ6IDA7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBzdmcge1xuICAgICAgICAgICAgICAgIGFuaW1hdGlvbjogcm90YXRpbmcgMC4zcyBsaW5lYXIgZm9yd2FyZHM7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRsaW1lO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgIGhlaWdodDogMTVweDtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKSByb3RhdGVZKDBkZWcpIHJvdGF0ZVgoMGRlZyk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLnNob3ctZm9ybSB7XG4gICAgICAgIC5jb250YWN0X2Zvcm0ge1xuICAgICAgICAgICAgQGluY2x1ZGUgbXEodGFibGV0KSB7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDEwJTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIEBpbmNsdWRlIG1xKCR1bnRpbDogdGFibGV0KSB7XG4gICAgICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgIGhlaWdodDogMTAwZHZoO1xuICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAub3ZlcmxheSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICAgICAgICBpbnNldDogMDtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICMwMDAwMDA4YTtcbiAgICAgICAgICAgIHotaW5kZXg6IDA7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5sb2dvIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA1MCU7XG4gICAgbGVmdDogNTAlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgIG1heC13aWR0aDogNjA5cHg7XG5cbiAgICBhbmltYXRpb246IHNsaWRlSW4gMXMgZWFzZS1pbi1vdXQgZm9yd2FyZHMsXG4gICAgICAgIG1vdmVBbmRSZXNpemUgMC42cyBlYXNlLWluLW91dCAycyBmb3J3YXJkcztcblxuICAgIEBpbmNsdWRlIG1xKCR1bnRpbDogdGFibGV0KSB7XG4gICAgICAgIG1heC13aWR0aDogMzA5cHg7XG4gICAgICAgIGFuaW1hdGlvbjogc2xpZGVJbiAxcyBlYXNlLWluLW91dCBmb3J3YXJkcyxcbiAgICAgICAgICAgIG1vdmVBbmRSZXNpemVNb2JpbGUgMC42cyBlYXNlLWluLW91dCAycyBmb3J3YXJkcztcbiAgICB9XG59XG5cbi5jb250YWN0X2Zvcm0ge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMjUwLCAyNTAsIDI1MCwgMC4yNSk7XG5cbiAgICBiYWNrZ3JvdW5kOiAjMmEyZDI5O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXgtd2lkdGg6IDYyNHB4O1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjlzIGVhc2U7XG4gICAgei1pbmRleDogMTA7XG4gICAgcGFkZGluZzogMDtcbiAgICAuY2xvc2UtbWUge1xuICAgICAgICB3aWR0aDogMjVweDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDI0cHg7XG4gICAgICAgIHJpZ2h0OiAyNHB4O1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgfVxuXG4gICAgLndwY2Y3e1xuICAgICAgICBwYWRkaW5nOiAwIDQwcHggNjBweCAgO1xuICAgICAgICBtYXJnaW4tdG9wOiA4MHB4O1xuXG4gICAgfVxuICAgIEBpbmNsdWRlIG1xKHRhYmxldCkge1xuICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwJSk7XG4gICAgICAgIHJpZ2h0OiAtMTMwJTtcbiAgICB9XG4gICAgQGluY2x1ZGUgbXEoJHVudGlsOiB0YWJsZXQpIHtcbiAgICAgICAgLy8gcGFkZGluZzogNzBweCAyMHB4IDIwcHg7XG4gICAgICAgIGJvdHRvbTogLTE0MCU7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIG1heC13aWR0aDogODAwcHggIWltcG9ydGFudDtcblxuXG4gICAgICAgIC53cGNmN3tcbiAgICAgICAgICAgIG92ZXJmbG93OiBhdXRvO1xuICAgICAgICAgICAgaGVpZ2h0OiBjYWxjKDEwMHZoIC0gODBweCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBhLFxuICAgIGxhYmVsIHtcbiAgICAgICAgY29sb3I6ICM5MjkzOTE7XG4gICAgfVxuICAgIGZvcm0ge1xuICAgICAgICA+IGRpdiB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZ2FwOiAyNHB4O1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjRweDtcbiAgICAgICAgICAgIEBpbmNsdWRlIG1xKCR1bnRpbDogdGFibGV0KXtcbiAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLndwY2Y3LXN1Ym1pdCB7XG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRicmFuZDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGltZTtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGNoYXJjb2xlO1xuICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJGxpbWU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLnRlcm1zIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMzBweDtcbiAgICAgICAgICAgIGdhcDogMTBweDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAgICAgLndwY2Y3LWxpc3QtaXRlbSB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuYm9keS5zaG93LXBvbGljeSAucG9saWN5X3BvcHVwLnBvbGljeXtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG59XG5cbmJvZHkuc2hvdy10ZXJtcyAucG9saWN5X3BvcHVwLnRlcm1ze1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbn1cblxuLnBvbGljeV9wb3B1cHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMkEyRDI5O1xuICAgIGNvbG9yOiB3aGl0ZTtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgaW5zZXQ6IDA7IFxuICAgIHBhZGRpbmc6IDYwcHggMCAwIDQwcHg7XG4gICAgXG4gICAgb3BhY2l0eTogMDtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcbiAgICAvLyBoZWlnaHQ6IDEwMGR2dztcbiAgICB6LWluZGV4OiA5OTtcbiAgICAuY2xvc2UtbWV7XG4gICAgICAgIHdpZHRoOiAxNXB4O1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMjBweDtcbiAgICAgICAgcmlnaHQ6IDIwcHg7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB9XG5cbiAgICAuc2Nyb2xsX2FyZWF7XG5cbiAgICAgICAgb3ZlcmZsb3cteTogYXV0bztcbiAgICAgICAgaGVpZ2h0OiBjYWxjKDEwMGR2aCAtIDYwcHgpO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiA0MHB4O1xuXG4gICAgICAgICY6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcbiAgICAgICAgICAgIHdpZHRoOiA4cHg7XG4gICAgICAgICAgfVxuICAgICAgICAgIFxuICAgICAgICAgIC8qIFRyYWNrICovXG4gICAgICAgICAgJjo6LXdlYmtpdC1zY3JvbGxiYXItdHJhY2sge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7IFxuICAgICAgICAgIH1cbiAgICAgICAgICAgXG4gICAgICAgICAgLyogSGFuZGxlICovXG4gICAgICAgICAgJjo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWIge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogIzg4ODsgXG4gICAgICAgICAgfVxuICAgICAgICAgIFxuICAgICAgICAgIC8qIEhhbmRsZSBvbiBob3ZlciAqL1xuICAgICAgICAgICY6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iOmhvdmVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRsaW1lOyBcbiAgICAgICAgICB9XG5cblxuXG4gICAgfVxuICAgIGgye1xuICAgICAgICBjb2xvcjogJGxpbWU7XG4gICAgICAgIGZvbnQtc2l6ZTogNDVweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgbWF4LXdpZHRoOiA5MDBweDtcbiAgICB9XG4gICAgLnBvbGljeV9jb250ZW50e1xuICAgICAgICBtYXgtd2lkdGg6IDkwMHB4O1xuICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgIHB7XG4gICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICB9XG4gICAgfVxufVxuXG5cbiIsImJvZHkge1xuICAgICYuc2luZ2xlLXJhX2pvYixcbiAgICAmLnBhZ2UtdGVtcGxhdGUtdG1wbC1mbGV4aWJsZS1ibG9ja3Mge1xuICAgICAgICBvdmVyZmxvdzogYXV0bztcbiAgICAgICAgKiB7XG4gICAgICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgIH1cbiAgICAgICAgaGVhZGVyIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDQwcHggMDtcbiAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAyMzBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnNpbmdsZS1yYV9qb2IsXG4ucGFnZS10ZW1wbGF0ZS10bXBsLWpvYmFkZGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBibGFjaztcblxuICAgIGhlYWRlciB7XG4gICAgICAgIHBhZGRpbmc6IDQwcHggMDtcbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIG1heC13aWR0aDogMjMwcHg7XG4gICAgICAgIH1cbiAgICB9XG4gICAgI01haW4ge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHBhZGRpbmc6IDUwcHggMCAxMDBweDtcbiAgICB9XG4gICAgLmJnLXdyYXBwZXIgLmJnIHtcbiAgICAgICAgLy8gYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gICAgfVxuICAgICoge1xuICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgfVxuXG4gICAgc3ZnIHtcbiAgICAgICAgd2lkdGg6IDEwcHg7XG4gICAgfVxuICAgIC8vICRoaWdobGlnaHQ6ICNjOGRhMmU7XG4gICAgLy8gJHRleHQtd2hpdGU6ICNmZmZmZmY7XG4gICAgLy8gJHRleHQtZ3JheS00MDA6ICM5Y2EzYWY7XG5cbiAgICAuam9ic19fd3JhcHBlciB7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRib3JkZXItY29sb3I7XG5cbiAgICAgICAgYm9yZGVyLXJhZGl1czogMC43NXJlbTtcbiAgICB9XG5cbiAgICAuam9ic19fZmlsdGVyIHtcbiAgICAgICAgcGFkZGluZzogMXJlbTtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRib3JkZXItY29sb3I7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgZ2FwOiAxcmVtO1xuXG4gICAgICAgIEBpbmNsdWRlIG1xKCR1bnRpbDogdGFibGV0KSB7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICB9XG4gICAgICAgIC5maWx0ZXItZHJvcGRvd24ge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgc2VsZWN0IHtcbiAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkYm9yZGVyLWNvbG9yO1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDAuNXJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5jaGV2cm9uIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAgICAgICAgICAgdG9wOiA4cHg7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDAuNzVyZW07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuc2VhcmNoLWZpbHRlciB7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgICAgICAgIEBpbmNsdWRlIG1xKCR1bnRpbDogdGFibGV0KSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGlucHV0IHtcbiAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkYm9yZGVyLWNvbG9yO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAuNXJlbSAxcmVtO1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDAuNXJlbTtcblxuICAgICAgICAgICAgICAgICY6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIge1xuICAgICAgICAgICAgICAgICAgICAvKiBDaHJvbWUvT3BlcmEvU2FmYXJpICovXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjOWNhM2FmO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAmOjotbW96LXBsYWNlaG9sZGVyIHtcbiAgICAgICAgICAgICAgICAgICAgLyogRmlyZWZveCAxOSsgKi9cbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICM5Y2EzYWY7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICY6LW1zLWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgICAgICAgICAgICAgICAgICAgLyogSUUgMTArICovXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjOWNhM2FmO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAmOi1tb3otcGxhY2Vob2xkZXIge1xuICAgICAgICAgICAgICAgICAgICAvKiBGaXJlZm94IDE4LSAqL1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogIzljYTNhZjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJGxpbWU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIC5qb2Itcm93IHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRib3JkZXItY29sb3I7XG4gICAgICAgIHBhZGRpbmc6IDI0cHg7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgZ2FwOiAxLjVyZW07XG4gICAgICAgIEBpbmNsdWRlIG1xKCR1bnRpbDogdGFibGV0KSB7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgICAgICAgICBnYXA6IDAuNXJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6aGFzKC5uby1qb2IpIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjAwLCAyMTgsIDQ2LCAwLjEpO1xuICAgICAgICB9XG4gICAgICAgIHAubm8tam9iIHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIGZsZXg6IDE7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgfVxuICAgICAgICBoNCB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICB9XG4gICAgICAgIC50YWdzIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDAuNzVyZW07XG4gICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogIzljYTNhZjtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjI1cmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyMDAsIDIxOCwgNDYsIDAuMSk7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xuICAgICAgICB9XG5cbiAgICAgICAgYSB7XG4gICAgICAgICAgICBjb2xvcjogJGxpbWU7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAgIGdhcDogNXB4O1xuICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcblxuICAgICAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxNXB4O1xuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgcGF0aCB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkbGltZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICBzdmcge1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiA1cHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnBhZ2luYXRpb24ge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIHBhZGRpbmc6IDEuNXJlbTtcblxuICAgICAgICAmX19wYWdlcyB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZ2FwOiAzcHg7XG4gICAgICAgICAgICBidXR0b24ge1xuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAxNTBtcyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIsIDEpO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAjOWNhM2FmO1xuXG4gICAgICAgICAgICAgICAgcGFkZGluZzogMC4yNXJlbSAwLjc1cmVtO1xuICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogIzM3NDE1MTtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwLjI1cmVtO1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgICAgICAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGltZTtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICMwMDAwMDA7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6ICRsaW1lO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnNpbmdsZS1yYV9qb2Ige1xuICAgIC5qb2ItZGV0YWlscyB7XG4gICAgICAgIG1heC13aWR0aDogODAwcHg7XG5cbiAgICAgICAgLmpvYl90YWdzIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgICAgICAgICAuam9iX3RhZyB7XG4gICAgICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIC5iYWNrLWxpbmsge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgICBhIHtcbiAgICAgICAgICAgIGNvbG9yOiAkbGltZTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICAgICAgICAgIGdhcDogNXB4O1xuICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcblxuICAgICAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxNXB4O1xuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgcm90YXRlOiAxODBkZWc7XG4gICAgICAgICAgICAgICAgcGF0aCB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkbGltZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICBzdmcge1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiAtMTBweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgLmN0YSB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIGdhcDogMjBweDtcbiAgICAgICAgLm1haWwtbGlua3tcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBnYXA6IDEzcHg7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgc3Zne1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMnB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuIl19 */
