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

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

/**
 * Render the `main` element consistently in IE.
 */
main {
  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
   ========================================================================== */
/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
  box-sizing: content-box;
  /* 1 */
  height: 0;
  /* 1 */
  overflow: visible;
  /* 2 */ }

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

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

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

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

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

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

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

sub {
  bottom: -0.25em; }

sup {
  top: -0.5em; }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

/*
 *  Owl Carousel - Core
 */
.owl-carousel {
  display: none;
  width: 100%;
  -webkit-tap-highlight-color: transparent;
  /* position relative and z-index fix webkit rendering fonts issue */
  position: relative;
  z-index: 1; }
  .owl-carousel .owl-stage {
    position: relative;
    touch-action: manipulation;
    -moz-backface-visibility: hidden;
    /* fix firefox animation glitch */ }
  .owl-carousel .owl-stage:after {
    content: ".";
    display: block;
    clear: both;
    visibility: hidden;
    line-height: 0;
    height: 0; }
  .owl-carousel .owl-stage-outer {
    position: relative;
    overflow: hidden;
    /* fix for flashing background */
    -webkit-transform: translate3d(0px, 0px, 0px); }
  .owl-carousel .owl-wrapper,
  .owl-carousel .owl-item {
    -webkit-backface-visibility: hidden;
    -moz-backface-visibility: hidden;
    -ms-backface-visibility: hidden;
    -webkit-transform: translate3d(0, 0, 0);
    -moz-transform: translate3d(0, 0, 0);
    -ms-transform: translate3d(0, 0, 0); }
  .owl-carousel .owl-item {
    position: relative;
    min-height: 1px;
    float: left;
    -webkit-backface-visibility: hidden;
    -webkit-tap-highlight-color: transparent;
    -webkit-touch-callout: none; }
  .owl-carousel .owl-item img {
    display: block;
    width: 100%; }
  .owl-carousel .owl-nav.disabled,
  .owl-carousel .owl-dots.disabled {
    display: none; }
  .owl-carousel .owl-nav .owl-prev,
  .owl-carousel .owl-nav .owl-next,
  .owl-carousel .owl-dot {
    cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none; }
  .owl-carousel .owl-nav button.owl-prev,
  .owl-carousel .owl-nav button.owl-next,
  .owl-carousel button.owl-dot {
    background: none;
    color: inherit;
    border: none;
    padding: 0 !important;
    font: inherit; }
  .owl-carousel.owl-loaded {
    display: block; }
  .owl-carousel.owl-loading {
    opacity: 0;
    display: block; }
  .owl-carousel.owl-hidden {
    opacity: 0; }
  .owl-carousel.owl-refresh .owl-item {
    visibility: hidden; }
  .owl-carousel.owl-drag .owl-item {
    touch-action: pan-y;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none; }
  .owl-carousel.owl-grab {
    cursor: move;
    cursor: -webkit-grab;
    cursor: grab; }
  .owl-carousel.owl-rtl {
    direction: rtl; }
  .owl-carousel.owl-rtl .owl-item {
    float: right; }

/* No Js */
.no-js .owl-carousel {
  display: block; }

/*
 *  Owl Carousel - Animate Plugin
 */
.owl-carousel .animated {
  -webkit-animation-duration: 1000ms;
          animation-duration: 1000ms;
  -webkit-animation-fill-mode: both;
          animation-fill-mode: both; }

.owl-carousel .owl-animated-in {
  z-index: 0; }

.owl-carousel .owl-animated-out {
  z-index: 1; }

.owl-carousel .fadeOut {
  -webkit-animation-name: fadeOut;
          animation-name: fadeOut; }

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

@keyframes fadeOut {
  0% {
    opacity: 1; }
  100% {
    opacity: 0; } }

/*
 * 	Owl Carousel - Auto Height Plugin
 */
.owl-height {
  transition: height 500ms ease-in-out; }

/*
 * 	Owl Carousel - Lazy Load Plugin
 */
.owl-carousel .owl-item {
  /**
			This is introduced due to a bug in IE11 where lazy loading combined with autoheight plugin causes a wrong
			calculation of the height of the owl-item that breaks page layouts
		 */ }
  .owl-carousel .owl-item .owl-lazy {
    opacity: 0;
    transition: opacity 400ms ease; }
  .owl-carousel .owl-item .owl-lazy[src^=""], .owl-carousel .owl-item .owl-lazy:not([src]) {
    max-height: 0; }
  .owl-carousel .owl-item img.owl-lazy {
    -webkit-transform-style: preserve-3d;
            transform-style: preserve-3d; }

/*
 * 	Owl Carousel - Video Plugin
 */
.owl-carousel .owl-video-wrapper {
  position: relative;
  height: 100%;
  background: #000; }

.owl-carousel .owl-video-play-icon {
  position: absolute;
  height: 80px;
  width: 80px;
  left: 50%;
  top: 50%;
  margin-left: -40px;
  margin-top: -40px;
  background: url("owl.video.play.png") no-repeat;
  cursor: pointer;
  z-index: 1;
  -webkit-backface-visibility: hidden;
  transition: -webkit-transform 100ms ease;
  transition: transform 100ms ease;
  transition: transform 100ms ease, -webkit-transform 100ms ease; }

.owl-carousel .owl-video-play-icon:hover {
  -webkit-transform: scale(1.3, 1.3);
          transform: scale(1.3, 1.3); }

.owl-carousel .owl-video-playing .owl-video-tn,
.owl-carousel .owl-video-playing .owl-video-play-icon {
  display: none; }

.owl-carousel .owl-video-tn {
  opacity: 0;
  height: 100%;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: contain;
  transition: opacity 400ms ease; }

.owl-carousel .owl-video-frame {
  position: relative;
  z-index: 1;
  height: 100%;
  width: 100%; }

[data-aos][data-aos][data-aos-duration="50"],
body[data-aos-duration="50"] [data-aos] {
  transition-duration: 50ms; }

[data-aos][data-aos][data-aos-delay="50"],
body[data-aos-delay="50"] [data-aos] {
  transition-delay: 0; }

[data-aos][data-aos][data-aos-delay="50"].aos-animate,
body[data-aos-delay="50"] [data-aos].aos-animate {
  transition-delay: 50ms; }

[data-aos][data-aos][data-aos-duration="100"],
body[data-aos-duration="100"] [data-aos] {
  transition-duration: .1s; }

[data-aos][data-aos][data-aos-delay="100"],
body[data-aos-delay="100"] [data-aos] {
  transition-delay: 0; }

[data-aos][data-aos][data-aos-delay="100"].aos-animate,
body[data-aos-delay="100"] [data-aos].aos-animate {
  transition-delay: .1s; }

[data-aos][data-aos][data-aos-duration="150"],
body[data-aos-duration="150"] [data-aos] {
  transition-duration: .15s; }

[data-aos][data-aos][data-aos-delay="150"],
body[data-aos-delay="150"] [data-aos] {
  transition-delay: 0; }

[data-aos][data-aos][data-aos-delay="150"].aos-animate,
body[data-aos-delay="150"] [data-aos].aos-animate {
  transition-delay: .15s; }

[data-aos][data-aos][data-aos-duration="200"],
body[data-aos-duration="200"] [data-aos] {
  transition-duration: .2s; }

[data-aos][data-aos][data-aos-delay="200"],
body[data-aos-delay="200"] [data-aos] {
  transition-delay: 0; }

[data-aos][data-aos][data-aos-delay="200"].aos-animate,
body[data-aos-delay="200"] [data-aos].aos-animate {
  transition-delay: .2s; }

[data-aos][data-aos][data-aos-duration="250"],
body[data-aos-duration="250"] [data-aos] {
  transition-duration: .25s; }

[data-aos][data-aos][data-aos-delay="250"],
body[data-aos-delay="250"] [data-aos] {
  transition-delay: 0; }

[data-aos][data-aos][data-aos-delay="250"].aos-animate,
body[data-aos-delay="250"] [data-aos].aos-animate {
  transition-delay: .25s; }

[data-aos][data-aos][data-aos-duration="300"],
body[data-aos-duration="300"] [data-aos] {
  transition-duration: .3s; }

[data-aos][data-aos][data-aos-delay="300"],
body[data-aos-delay="300"] [data-aos] {
  transition-delay: 0; }

[data-aos][data-aos][data-aos-delay="300"].aos-animate,
body[data-aos-delay="300"] [data-aos].aos-animate {
  transition-delay: .3s; }

[data-aos][data-aos][data-aos-duration="350"],
body[data-aos-duration="350"] [data-aos] {
  transition-duration: .35s; }

[data-aos][data-aos][data-aos-delay="350"],
body[data-aos-delay="350"] [data-aos] {
  transition-delay: 0; }

[data-aos][data-aos][data-aos-delay="350"].aos-animate,
body[data-aos-delay="350"] [data-aos].aos-animate {
  transition-delay: .35s; }

[data-aos][data-aos][data-aos-duration="400"],
body[data-aos-duration="400"] [data-aos] {
  transition-duration: .4s; }

[data-aos][data-aos][data-aos-delay="400"],
body[data-aos-delay="400"] [data-aos] {
  transition-delay: 0; }

[data-aos][data-aos][data-aos-delay="400"].aos-animate,
body[data-aos-delay="400"] [data-aos].aos-animate {
  transition-delay: .4s; }

[data-aos][data-aos][data-aos-duration="450"],
body[data-aos-duration="450"] [data-aos] {
  transition-duration: .45s; }

[data-aos][data-aos][data-aos-delay="450"],
body[data-aos-delay="450"] [data-aos] {
  transition-delay: 0; }

[data-aos][data-aos][data-aos-delay="450"].aos-animate,
body[data-aos-delay="450"] [data-aos].aos-animate {
  transition-delay: .45s; }

[data-aos][data-aos][data-aos-duration="500"],
body[data-aos-duration="500"] [data-aos] {
  transition-duration: .5s; }

[data-aos][data-aos][data-aos-delay="500"],
body[data-aos-delay="500"] [data-aos] {
  transition-delay: 0; }

[data-aos][data-aos][data-aos-delay="500"].aos-animate,
body[data-aos-delay="500"] [data-aos].aos-animate {
  transition-delay: .5s; }

[data-aos][data-aos][data-aos-duration="550"],
body[data-aos-duration="550"] [data-aos] {
  transition-duration: .55s; }

[data-aos][data-aos][data-aos-delay="550"],
body[data-aos-delay="550"] [data-aos] {
  transition-delay: 0; }

[data-aos][data-aos][data-aos-delay="550"].aos-animate,
body[data-aos-delay="550"] [data-aos].aos-animate {
  transition-delay: .55s; }

[data-aos][data-aos][data-aos-duration="600"],
body[data-aos-duration="600"] [data-aos] {
  transition-duration: .6s; }

[data-aos][data-aos][data-aos-delay="600"],
body[data-aos-delay="600"] [data-aos] {
  transition-delay: 0; }

[data-aos][data-aos][data-aos-delay="600"].aos-animate,
body[data-aos-delay="600"] [data-aos].aos-animate {
  transition-delay: .6s; }

[data-aos][data-aos][data-aos-duration="650"],
body[data-aos-duration="650"] [data-aos] {
  transition-duration: .65s; }

[data-aos][data-aos][data-aos-delay="650"],
body[data-aos-delay="650"] [data-aos] {
  transition-delay: 0; }

[data-aos][data-aos][data-aos-delay="650"].aos-animate,
body[data-aos-delay="650"] [data-aos].aos-animate {
  transition-delay: .65s; }

[data-aos][data-aos][data-aos-duration="700"],
body[data-aos-duration="700"] [data-aos] {
  transition-duration: .7s; }

[data-aos][data-aos][data-aos-delay="700"],
body[data-aos-delay="700"] [data-aos] {
  transition-delay: 0; }

[data-aos][data-aos][data-aos-delay="700"].aos-animate,
body[data-aos-delay="700"] [data-aos].aos-animate {
  transition-delay: .7s; }

[data-aos][data-aos][data-aos-duration="750"],
body[data-aos-duration="750"] [data-aos] {
  transition-duration: .75s; }

[data-aos][data-aos][data-aos-delay="750"],
body[data-aos-delay="750"] [data-aos] {
  transition-delay: 0; }

[data-aos][data-aos][data-aos-delay="750"].aos-animate,
body[data-aos-delay="750"] [data-aos].aos-animate {
  transition-delay: .75s; }

[data-aos][data-aos][data-aos-duration="800"],
body[data-aos-duration="800"] [data-aos] {
  transition-duration: .8s; }

[data-aos][data-aos][data-aos-delay="800"],
body[data-aos-delay="800"] [data-aos] {
  transition-delay: 0; }

[data-aos][data-aos][data-aos-delay="800"].aos-animate,
body[data-aos-delay="800"] [data-aos].aos-animate {
  transition-delay: .8s; }

[data-aos][data-aos][data-aos-duration="850"],
body[data-aos-duration="850"] [data-aos] {
  transition-duration: .85s; }

[data-aos][data-aos][data-aos-delay="850"],
body[data-aos-delay="850"] [data-aos] {
  transition-delay: 0; }

[data-aos][data-aos][data-aos-delay="850"].aos-animate,
body[data-aos-delay="850"] [data-aos].aos-animate {
  transition-delay: .85s; }

[data-aos][data-aos][data-aos-duration="900"],
body[data-aos-duration="900"] [data-aos] {
  transition-duration: .9s; }

[data-aos][data-aos][data-aos-delay="900"],
body[data-aos-delay="900"] [data-aos] {
  transition-delay: 0; }

[data-aos][data-aos][data-aos-delay="900"].aos-animate,
body[data-aos-delay="900"] [data-aos].aos-animate {
  transition-delay: .9s; }

[data-aos][data-aos][data-aos-duration="950"],
body[data-aos-duration="950"] [data-aos] {
  transition-duration: .95s; }

[data-aos][data-aos][data-aos-delay="950"],
body[data-aos-delay="950"] [data-aos] {
  transition-delay: 0; }

[data-aos][data-aos][data-aos-delay="950"].aos-animate,
body[data-aos-delay="950"] [data-aos].aos-animate {
  transition-delay: .95s; }

[data-aos][data-aos][data-aos-duration="1000"],
body[data-aos-duration="1000"] [data-aos] {
  transition-duration: 1s; }

[data-aos][data-aos][data-aos-delay="1000"],
body[data-aos-delay="1000"] [data-aos] {
  transition-delay: 0; }

[data-aos][data-aos][data-aos-delay="1000"].aos-animate,
body[data-aos-delay="1000"] [data-aos].aos-animate {
  transition-delay: 1s; }

[data-aos][data-aos][data-aos-duration="1050"],
body[data-aos-duration="1050"] [data-aos] {
  transition-duration: 1.05s; }

[data-aos][data-aos][data-aos-delay="1050"],
body[data-aos-delay="1050"] [data-aos] {
  transition-delay: 0; }

[data-aos][data-aos][data-aos-delay="1050"].aos-animate,
body[data-aos-delay="1050"] [data-aos].aos-animate {
  transition-delay: 1.05s; }

[data-aos][data-aos][data-aos-duration="1100"],
body[data-aos-duration="1100"] [data-aos] {
  transition-duration: 1.1s; }

[data-aos][data-aos][data-aos-delay="1100"],
body[data-aos-delay="1100"] [data-aos] {
  transition-delay: 0; }

[data-aos][data-aos][data-aos-delay="1100"].aos-animate,
body[data-aos-delay="1100"] [data-aos].aos-animate {
  transition-delay: 1.1s; }

[data-aos][data-aos][data-aos-duration="1150"],
body[data-aos-duration="1150"] [data-aos] {
  transition-duration: 1.15s; }

[data-aos][data-aos][data-aos-delay="1150"],
body[data-aos-delay="1150"] [data-aos] {
  transition-delay: 0; }

[data-aos][data-aos][data-aos-delay="1150"].aos-animate,
body[data-aos-delay="1150"] [data-aos].aos-animate {
  transition-delay: 1.15s; }

[data-aos][data-aos][data-aos-duration="1200"],
body[data-aos-duration="1200"] [data-aos] {
  transition-duration: 1.2s; }

[data-aos][data-aos][data-aos-delay="1200"],
body[data-aos-delay="1200"] [data-aos] {
  transition-delay: 0; }

[data-aos][data-aos][data-aos-delay="1200"].aos-animate,
body[data-aos-delay="1200"] [data-aos].aos-animate {
  transition-delay: 1.2s; }

[data-aos][data-aos][data-aos-duration="1250"],
body[data-aos-duration="1250"] [data-aos] {
  transition-duration: 1.25s; }

[data-aos][data-aos][data-aos-delay="1250"],
body[data-aos-delay="1250"] [data-aos] {
  transition-delay: 0; }

[data-aos][data-aos][data-aos-delay="1250"].aos-animate,
body[data-aos-delay="1250"] [data-aos].aos-animate {
  transition-delay: 1.25s; }

[data-aos][data-aos][data-aos-duration="1300"],
body[data-aos-duration="1300"] [data-aos] {
  transition-duration: 1.3s; }

[data-aos][data-aos][data-aos-delay="1300"],
body[data-aos-delay="1300"] [data-aos] {
  transition-delay: 0; }

[data-aos][data-aos][data-aos-delay="1300"].aos-animate,
body[data-aos-delay="1300"] [data-aos].aos-animate {
  transition-delay: 1.3s; }

[data-aos][data-aos][data-aos-duration="1350"],
body[data-aos-duration="1350"] [data-aos] {
  transition-duration: 1.35s; }

[data-aos][data-aos][data-aos-delay="1350"],
body[data-aos-delay="1350"] [data-aos] {
  transition-delay: 0; }

[data-aos][data-aos][data-aos-delay="1350"].aos-animate,
body[data-aos-delay="1350"] [data-aos].aos-animate {
  transition-delay: 1.35s; }

[data-aos][data-aos][data-aos-duration="1400"],
body[data-aos-duration="1400"] [data-aos] {
  transition-duration: 1.4s; }

[data-aos][data-aos][data-aos-delay="1400"],
body[data-aos-delay="1400"] [data-aos] {
  transition-delay: 0; }

[data-aos][data-aos][data-aos-delay="1400"].aos-animate,
body[data-aos-delay="1400"] [data-aos].aos-animate {
  transition-delay: 1.4s; }

[data-aos][data-aos][data-aos-duration="1450"],
body[data-aos-duration="1450"] [data-aos] {
  transition-duration: 1.45s; }

[data-aos][data-aos][data-aos-delay="1450"],
body[data-aos-delay="1450"] [data-aos] {
  transition-delay: 0; }

[data-aos][data-aos][data-aos-delay="1450"].aos-animate,
body[data-aos-delay="1450"] [data-aos].aos-animate {
  transition-delay: 1.45s; }

[data-aos][data-aos][data-aos-duration="1500"],
body[data-aos-duration="1500"] [data-aos] {
  transition-duration: 1.5s; }

[data-aos][data-aos][data-aos-delay="1500"],
body[data-aos-delay="1500"] [data-aos] {
  transition-delay: 0; }

[data-aos][data-aos][data-aos-delay="1500"].aos-animate,
body[data-aos-delay="1500"] [data-aos].aos-animate {
  transition-delay: 1.5s; }

[data-aos][data-aos][data-aos-duration="1550"],
body[data-aos-duration="1550"] [data-aos] {
  transition-duration: 1.55s; }

[data-aos][data-aos][data-aos-delay="1550"],
body[data-aos-delay="1550"] [data-aos] {
  transition-delay: 0; }

[data-aos][data-aos][data-aos-delay="1550"].aos-animate,
body[data-aos-delay="1550"] [data-aos].aos-animate {
  transition-delay: 1.55s; }

[data-aos][data-aos][data-aos-duration="1600"],
body[data-aos-duration="1600"] [data-aos] {
  transition-duration: 1.6s; }

[data-aos][data-aos][data-aos-delay="1600"],
body[data-aos-delay="1600"] [data-aos] {
  transition-delay: 0; }

[data-aos][data-aos][data-aos-delay="1600"].aos-animate,
body[data-aos-delay="1600"] [data-aos].aos-animate {
  transition-delay: 1.6s; }

[data-aos][data-aos][data-aos-duration="1650"],
body[data-aos-duration="1650"] [data-aos] {
  transition-duration: 1.65s; }

[data-aos][data-aos][data-aos-delay="1650"],
body[data-aos-delay="1650"] [data-aos] {
  transition-delay: 0; }

[data-aos][data-aos][data-aos-delay="1650"].aos-animate,
body[data-aos-delay="1650"] [data-aos].aos-animate {
  transition-delay: 1.65s; }

[data-aos][data-aos][data-aos-duration="1700"],
body[data-aos-duration="1700"] [data-aos] {
  transition-duration: 1.7s; }

[data-aos][data-aos][data-aos-delay="1700"],
body[data-aos-delay="1700"] [data-aos] {
  transition-delay: 0; }

[data-aos][data-aos][data-aos-delay="1700"].aos-animate,
body[data-aos-delay="1700"] [data-aos].aos-animate {
  transition-delay: 1.7s; }

[data-aos][data-aos][data-aos-duration="1750"],
body[data-aos-duration="1750"] [data-aos] {
  transition-duration: 1.75s; }

[data-aos][data-aos][data-aos-delay="1750"],
body[data-aos-delay="1750"] [data-aos] {
  transition-delay: 0; }

[data-aos][data-aos][data-aos-delay="1750"].aos-animate,
body[data-aos-delay="1750"] [data-aos].aos-animate {
  transition-delay: 1.75s; }

[data-aos][data-aos][data-aos-duration="1800"],
body[data-aos-duration="1800"] [data-aos] {
  transition-duration: 1.8s; }

[data-aos][data-aos][data-aos-delay="1800"],
body[data-aos-delay="1800"] [data-aos] {
  transition-delay: 0; }

[data-aos][data-aos][data-aos-delay="1800"].aos-animate,
body[data-aos-delay="1800"] [data-aos].aos-animate {
  transition-delay: 1.8s; }

[data-aos][data-aos][data-aos-duration="1850"],
body[data-aos-duration="1850"] [data-aos] {
  transition-duration: 1.85s; }

[data-aos][data-aos][data-aos-delay="1850"],
body[data-aos-delay="1850"] [data-aos] {
  transition-delay: 0; }

[data-aos][data-aos][data-aos-delay="1850"].aos-animate,
body[data-aos-delay="1850"] [data-aos].aos-animate {
  transition-delay: 1.85s; }

[data-aos][data-aos][data-aos-duration="1900"],
body[data-aos-duration="1900"] [data-aos] {
  transition-duration: 1.9s; }

[data-aos][data-aos][data-aos-delay="1900"],
body[data-aos-delay="1900"] [data-aos] {
  transition-delay: 0; }

[data-aos][data-aos][data-aos-delay="1900"].aos-animate,
body[data-aos-delay="1900"] [data-aos].aos-animate {
  transition-delay: 1.9s; }

[data-aos][data-aos][data-aos-duration="1950"],
body[data-aos-duration="1950"] [data-aos] {
  transition-duration: 1.95s; }

[data-aos][data-aos][data-aos-delay="1950"],
body[data-aos-delay="1950"] [data-aos] {
  transition-delay: 0; }

[data-aos][data-aos][data-aos-delay="1950"].aos-animate,
body[data-aos-delay="1950"] [data-aos].aos-animate {
  transition-delay: 1.95s; }

[data-aos][data-aos][data-aos-duration="2000"],
body[data-aos-duration="2000"] [data-aos] {
  transition-duration: 2s; }

[data-aos][data-aos][data-aos-delay="2000"],
body[data-aos-delay="2000"] [data-aos] {
  transition-delay: 0; }

[data-aos][data-aos][data-aos-delay="2000"].aos-animate,
body[data-aos-delay="2000"] [data-aos].aos-animate {
  transition-delay: 2s; }

[data-aos][data-aos][data-aos-duration="2050"],
body[data-aos-duration="2050"] [data-aos] {
  transition-duration: 2.05s; }

[data-aos][data-aos][data-aos-delay="2050"],
body[data-aos-delay="2050"] [data-aos] {
  transition-delay: 0; }

[data-aos][data-aos][data-aos-delay="2050"].aos-animate,
body[data-aos-delay="2050"] [data-aos].aos-animate {
  transition-delay: 2.05s; }

[data-aos][data-aos][data-aos-duration="2100"],
body[data-aos-duration="2100"] [data-aos] {
  transition-duration: 2.1s; }

[data-aos][data-aos][data-aos-delay="2100"],
body[data-aos-delay="2100"] [data-aos] {
  transition-delay: 0; }

[data-aos][data-aos][data-aos-delay="2100"].aos-animate,
body[data-aos-delay="2100"] [data-aos].aos-animate {
  transition-delay: 2.1s; }

[data-aos][data-aos][data-aos-duration="2150"],
body[data-aos-duration="2150"] [data-aos] {
  transition-duration: 2.15s; }

[data-aos][data-aos][data-aos-delay="2150"],
body[data-aos-delay="2150"] [data-aos] {
  transition-delay: 0; }

[data-aos][data-aos][data-aos-delay="2150"].aos-animate,
body[data-aos-delay="2150"] [data-aos].aos-animate {
  transition-delay: 2.15s; }

[data-aos][data-aos][data-aos-duration="2200"],
body[data-aos-duration="2200"] [data-aos] {
  transition-duration: 2.2s; }

[data-aos][data-aos][data-aos-delay="2200"],
body[data-aos-delay="2200"] [data-aos] {
  transition-delay: 0; }

[data-aos][data-aos][data-aos-delay="2200"].aos-animate,
body[data-aos-delay="2200"] [data-aos].aos-animate {
  transition-delay: 2.2s; }

[data-aos][data-aos][data-aos-duration="2250"],
body[data-aos-duration="2250"] [data-aos] {
  transition-duration: 2.25s; }

[data-aos][data-aos][data-aos-delay="2250"],
body[data-aos-delay="2250"] [data-aos] {
  transition-delay: 0; }

[data-aos][data-aos][data-aos-delay="2250"].aos-animate,
body[data-aos-delay="2250"] [data-aos].aos-animate {
  transition-delay: 2.25s; }

[data-aos][data-aos][data-aos-duration="2300"],
body[data-aos-duration="2300"] [data-aos] {
  transition-duration: 2.3s; }

[data-aos][data-aos][data-aos-delay="2300"],
body[data-aos-delay="2300"] [data-aos] {
  transition-delay: 0; }

[data-aos][data-aos][data-aos-delay="2300"].aos-animate,
body[data-aos-delay="2300"] [data-aos].aos-animate {
  transition-delay: 2.3s; }

[data-aos][data-aos][data-aos-duration="2350"],
body[data-aos-duration="2350"] [data-aos] {
  transition-duration: 2.35s; }

[data-aos][data-aos][data-aos-delay="2350"],
body[data-aos-delay="2350"] [data-aos] {
  transition-delay: 0; }

[data-aos][data-aos][data-aos-delay="2350"].aos-animate,
body[data-aos-delay="2350"] [data-aos].aos-animate {
  transition-delay: 2.35s; }

[data-aos][data-aos][data-aos-duration="2400"],
body[data-aos-duration="2400"] [data-aos] {
  transition-duration: 2.4s; }

[data-aos][data-aos][data-aos-delay="2400"],
body[data-aos-delay="2400"] [data-aos] {
  transition-delay: 0; }

[data-aos][data-aos][data-aos-delay="2400"].aos-animate,
body[data-aos-delay="2400"] [data-aos].aos-animate {
  transition-delay: 2.4s; }

[data-aos][data-aos][data-aos-duration="2450"],
body[data-aos-duration="2450"] [data-aos] {
  transition-duration: 2.45s; }

[data-aos][data-aos][data-aos-delay="2450"],
body[data-aos-delay="2450"] [data-aos] {
  transition-delay: 0; }

[data-aos][data-aos][data-aos-delay="2450"].aos-animate,
body[data-aos-delay="2450"] [data-aos].aos-animate {
  transition-delay: 2.45s; }

[data-aos][data-aos][data-aos-duration="2500"],
body[data-aos-duration="2500"] [data-aos] {
  transition-duration: 2.5s; }

[data-aos][data-aos][data-aos-delay="2500"],
body[data-aos-delay="2500"] [data-aos] {
  transition-delay: 0; }

[data-aos][data-aos][data-aos-delay="2500"].aos-animate,
body[data-aos-delay="2500"] [data-aos].aos-animate {
  transition-delay: 2.5s; }

[data-aos][data-aos][data-aos-duration="2550"],
body[data-aos-duration="2550"] [data-aos] {
  transition-duration: 2.55s; }

[data-aos][data-aos][data-aos-delay="2550"],
body[data-aos-delay="2550"] [data-aos] {
  transition-delay: 0; }

[data-aos][data-aos][data-aos-delay="2550"].aos-animate,
body[data-aos-delay="2550"] [data-aos].aos-animate {
  transition-delay: 2.55s; }

[data-aos][data-aos][data-aos-duration="2600"],
body[data-aos-duration="2600"] [data-aos] {
  transition-duration: 2.6s; }

[data-aos][data-aos][data-aos-delay="2600"],
body[data-aos-delay="2600"] [data-aos] {
  transition-delay: 0; }

[data-aos][data-aos][data-aos-delay="2600"].aos-animate,
body[data-aos-delay="2600"] [data-aos].aos-animate {
  transition-delay: 2.6s; }

[data-aos][data-aos][data-aos-duration="2650"],
body[data-aos-duration="2650"] [data-aos] {
  transition-duration: 2.65s; }

[data-aos][data-aos][data-aos-delay="2650"],
body[data-aos-delay="2650"] [data-aos] {
  transition-delay: 0; }

[data-aos][data-aos][data-aos-delay="2650"].aos-animate,
body[data-aos-delay="2650"] [data-aos].aos-animate {
  transition-delay: 2.65s; }

[data-aos][data-aos][data-aos-duration="2700"],
body[data-aos-duration="2700"] [data-aos] {
  transition-duration: 2.7s; }

[data-aos][data-aos][data-aos-delay="2700"],
body[data-aos-delay="2700"] [data-aos] {
  transition-delay: 0; }

[data-aos][data-aos][data-aos-delay="2700"].aos-animate,
body[data-aos-delay="2700"] [data-aos].aos-animate {
  transition-delay: 2.7s; }

[data-aos][data-aos][data-aos-duration="2750"],
body[data-aos-duration="2750"] [data-aos] {
  transition-duration: 2.75s; }

[data-aos][data-aos][data-aos-delay="2750"],
body[data-aos-delay="2750"] [data-aos] {
  transition-delay: 0; }

[data-aos][data-aos][data-aos-delay="2750"].aos-animate,
body[data-aos-delay="2750"] [data-aos].aos-animate {
  transition-delay: 2.75s; }

[data-aos][data-aos][data-aos-duration="2800"],
body[data-aos-duration="2800"] [data-aos] {
  transition-duration: 2.8s; }

[data-aos][data-aos][data-aos-delay="2800"],
body[data-aos-delay="2800"] [data-aos] {
  transition-delay: 0; }

[data-aos][data-aos][data-aos-delay="2800"].aos-animate,
body[data-aos-delay="2800"] [data-aos].aos-animate {
  transition-delay: 2.8s; }

[data-aos][data-aos][data-aos-duration="2850"],
body[data-aos-duration="2850"] [data-aos] {
  transition-duration: 2.85s; }

[data-aos][data-aos][data-aos-delay="2850"],
body[data-aos-delay="2850"] [data-aos] {
  transition-delay: 0; }

[data-aos][data-aos][data-aos-delay="2850"].aos-animate,
body[data-aos-delay="2850"] [data-aos].aos-animate {
  transition-delay: 2.85s; }

[data-aos][data-aos][data-aos-duration="2900"],
body[data-aos-duration="2900"] [data-aos] {
  transition-duration: 2.9s; }

[data-aos][data-aos][data-aos-delay="2900"],
body[data-aos-delay="2900"] [data-aos] {
  transition-delay: 0; }

[data-aos][data-aos][data-aos-delay="2900"].aos-animate,
body[data-aos-delay="2900"] [data-aos].aos-animate {
  transition-delay: 2.9s; }

[data-aos][data-aos][data-aos-duration="2950"],
body[data-aos-duration="2950"] [data-aos] {
  transition-duration: 2.95s; }

[data-aos][data-aos][data-aos-delay="2950"],
body[data-aos-delay="2950"] [data-aos] {
  transition-delay: 0; }

[data-aos][data-aos][data-aos-delay="2950"].aos-animate,
body[data-aos-delay="2950"] [data-aos].aos-animate {
  transition-delay: 2.95s; }

[data-aos][data-aos][data-aos-duration="3000"],
body[data-aos-duration="3000"] [data-aos] {
  transition-duration: 3s; }

[data-aos][data-aos][data-aos-delay="3000"],
body[data-aos-delay="3000"] [data-aos] {
  transition-delay: 0; }

[data-aos][data-aos][data-aos-delay="3000"].aos-animate,
body[data-aos-delay="3000"] [data-aos].aos-animate {
  transition-delay: 3s; }

[data-aos][data-aos][data-aos-easing=linear],
body[data-aos-easing=linear] [data-aos] {
  transition-timing-function: cubic-bezier(0.25, 0.25, 0.75, 0.75); }

[data-aos][data-aos][data-aos-easing=ease],
body[data-aos-easing=ease] [data-aos] {
  transition-timing-function: ease; }

[data-aos][data-aos][data-aos-easing=ease-in],
body[data-aos-easing=ease-in] [data-aos] {
  transition-timing-function: ease-in; }

[data-aos][data-aos][data-aos-easing=ease-out],
body[data-aos-easing=ease-out] [data-aos] {
  transition-timing-function: ease-out; }

[data-aos][data-aos][data-aos-easing=ease-in-out],
body[data-aos-easing=ease-in-out] [data-aos] {
  transition-timing-function: ease-in-out; }

[data-aos][data-aos][data-aos-easing=ease-in-back],
body[data-aos-easing=ease-in-back] [data-aos] {
  transition-timing-function: cubic-bezier(0.6, -0.28, 0.735, 0.045); }

[data-aos][data-aos][data-aos-easing=ease-out-back],
body[data-aos-easing=ease-out-back] [data-aos] {
  transition-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1.275); }

[data-aos][data-aos][data-aos-easing=ease-in-out-back],
body[data-aos-easing=ease-in-out-back] [data-aos] {
  transition-timing-function: cubic-bezier(0.68, -0.55, 0.265, 1.55); }

[data-aos][data-aos][data-aos-easing=ease-in-sine],
body[data-aos-easing=ease-in-sine] [data-aos] {
  transition-timing-function: cubic-bezier(0.47, 0, 0.745, 0.715); }

[data-aos][data-aos][data-aos-easing=ease-out-sine],
body[data-aos-easing=ease-out-sine] [data-aos] {
  transition-timing-function: cubic-bezier(0.39, 0.575, 0.565, 1); }

[data-aos][data-aos][data-aos-easing=ease-in-out-sine],
body[data-aos-easing=ease-in-out-sine] [data-aos] {
  transition-timing-function: cubic-bezier(0.445, 0.05, 0.55, 0.95); }

[data-aos][data-aos][data-aos-easing=ease-in-quad],
body[data-aos-easing=ease-in-quad] [data-aos] {
  transition-timing-function: cubic-bezier(0.55, 0.085, 0.68, 0.53); }

[data-aos][data-aos][data-aos-easing=ease-out-quad],
body[data-aos-easing=ease-out-quad] [data-aos] {
  transition-timing-function: cubic-bezier(0.25, 0.46, 0.45, 0.94); }

[data-aos][data-aos][data-aos-easing=ease-in-out-quad],
body[data-aos-easing=ease-in-out-quad] [data-aos] {
  transition-timing-function: cubic-bezier(0.455, 0.03, 0.515, 0.955); }

[data-aos][data-aos][data-aos-easing=ease-in-cubic],
body[data-aos-easing=ease-in-cubic] [data-aos] {
  transition-timing-function: cubic-bezier(0.55, 0.085, 0.68, 0.53); }

[data-aos][data-aos][data-aos-easing=ease-out-cubic],
body[data-aos-easing=ease-out-cubic] [data-aos] {
  transition-timing-function: cubic-bezier(0.25, 0.46, 0.45, 0.94); }

[data-aos][data-aos][data-aos-easing=ease-in-out-cubic],
body[data-aos-easing=ease-in-out-cubic] [data-aos] {
  transition-timing-function: cubic-bezier(0.455, 0.03, 0.515, 0.955); }

[data-aos][data-aos][data-aos-easing=ease-in-quart],
body[data-aos-easing=ease-in-quart] [data-aos] {
  transition-timing-function: cubic-bezier(0.55, 0.085, 0.68, 0.53); }

[data-aos][data-aos][data-aos-easing=ease-out-quart],
body[data-aos-easing=ease-out-quart] [data-aos] {
  transition-timing-function: cubic-bezier(0.25, 0.46, 0.45, 0.94); }

[data-aos][data-aos][data-aos-easing=ease-in-out-quart],
body[data-aos-easing=ease-in-out-quart] [data-aos] {
  transition-timing-function: cubic-bezier(0.455, 0.03, 0.515, 0.955); }

[data-aos^=fade][data-aos^=fade] {
  opacity: 0;
  transition-property: opacity, -webkit-transform;
  transition-property: opacity, transform;
  transition-property: opacity, transform, -webkit-transform; }

[data-aos^=fade][data-aos^=fade].aos-animate {
  opacity: 1;
  -webkit-transform: translateZ(0);
          transform: translateZ(0); }

[data-aos=fade-up] {
  -webkit-transform: translate3d(0, 100px, 0);
          transform: translate3d(0, 100px, 0); }

[data-aos=fade-down] {
  -webkit-transform: translate3d(0, -100px, 0);
          transform: translate3d(0, -100px, 0); }

[data-aos=fade-right] {
  -webkit-transform: translate3d(-100px, 0, 0);
          transform: translate3d(-100px, 0, 0); }

[data-aos=fade-left] {
  -webkit-transform: translate3d(100px, 0, 0);
          transform: translate3d(100px, 0, 0); }

[data-aos=fade-up-right] {
  -webkit-transform: translate3d(-100px, 100px, 0);
          transform: translate3d(-100px, 100px, 0); }

[data-aos=fade-up-left] {
  -webkit-transform: translate3d(100px, 100px, 0);
          transform: translate3d(100px, 100px, 0); }

[data-aos=fade-down-right] {
  -webkit-transform: translate3d(-100px, -100px, 0);
          transform: translate3d(-100px, -100px, 0); }

[data-aos=fade-down-left] {
  -webkit-transform: translate3d(100px, -100px, 0);
          transform: translate3d(100px, -100px, 0); }

[data-aos^=zoom][data-aos^=zoom] {
  opacity: 0;
  transition-property: opacity, -webkit-transform;
  transition-property: opacity, transform;
  transition-property: opacity, transform, -webkit-transform; }

[data-aos^=zoom][data-aos^=zoom].aos-animate {
  opacity: 1;
  -webkit-transform: translateZ(0) scale(1);
          transform: translateZ(0) scale(1); }

[data-aos=zoom-in] {
  -webkit-transform: scale(0.6);
          transform: scale(0.6); }

[data-aos=zoom-in-up] {
  -webkit-transform: translate3d(0, 100px, 0) scale(0.6);
          transform: translate3d(0, 100px, 0) scale(0.6); }

[data-aos=zoom-in-down] {
  -webkit-transform: translate3d(0, -100px, 0) scale(0.6);
          transform: translate3d(0, -100px, 0) scale(0.6); }

[data-aos=zoom-in-right] {
  -webkit-transform: translate3d(-100px, 0, 0) scale(0.6);
          transform: translate3d(-100px, 0, 0) scale(0.6); }

[data-aos=zoom-in-left] {
  -webkit-transform: translate3d(100px, 0, 0) scale(0.6);
          transform: translate3d(100px, 0, 0) scale(0.6); }

[data-aos=zoom-out] {
  -webkit-transform: scale(1.2);
          transform: scale(1.2); }

[data-aos=zoom-out-up] {
  -webkit-transform: translate3d(0, 100px, 0) scale(1.2);
          transform: translate3d(0, 100px, 0) scale(1.2); }

[data-aos=zoom-out-down] {
  -webkit-transform: translate3d(0, -100px, 0) scale(1.2);
          transform: translate3d(0, -100px, 0) scale(1.2); }

[data-aos=zoom-out-right] {
  -webkit-transform: translate3d(-100px, 0, 0) scale(1.2);
          transform: translate3d(-100px, 0, 0) scale(1.2); }

[data-aos=zoom-out-left] {
  -webkit-transform: translate3d(100px, 0, 0) scale(1.2);
          transform: translate3d(100px, 0, 0) scale(1.2); }

[data-aos^=slide][data-aos^=slide] {
  transition-property: -webkit-transform;
  transition-property: transform;
  transition-property: transform, -webkit-transform; }

[data-aos^=slide][data-aos^=slide].aos-animate {
  -webkit-transform: translateZ(0);
          transform: translateZ(0); }

[data-aos=slide-up] {
  -webkit-transform: translate3d(0, 100%, 0);
          transform: translate3d(0, 100%, 0); }

[data-aos=slide-down] {
  -webkit-transform: translate3d(0, -100%, 0);
          transform: translate3d(0, -100%, 0); }

[data-aos=slide-right] {
  -webkit-transform: translate3d(-100%, 0, 0);
          transform: translate3d(-100%, 0, 0); }

[data-aos=slide-left] {
  -webkit-transform: translate3d(100%, 0, 0);
          transform: translate3d(100%, 0, 0); }

[data-aos^=flip][data-aos^=flip] {
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  transition-property: -webkit-transform;
  transition-property: transform;
  transition-property: transform, -webkit-transform; }

[data-aos=flip-left] {
  -webkit-transform: perspective(2500px) rotateY(-100deg);
          transform: perspective(2500px) rotateY(-100deg); }

[data-aos=flip-left].aos-animate {
  -webkit-transform: perspective(2500px) rotateY(0);
          transform: perspective(2500px) rotateY(0); }

[data-aos=flip-right] {
  -webkit-transform: perspective(2500px) rotateY(100deg);
          transform: perspective(2500px) rotateY(100deg); }

[data-aos=flip-right].aos-animate {
  -webkit-transform: perspective(2500px) rotateY(0);
          transform: perspective(2500px) rotateY(0); }

[data-aos=flip-up] {
  -webkit-transform: perspective(2500px) rotateX(-100deg);
          transform: perspective(2500px) rotateX(-100deg); }

[data-aos=flip-up].aos-animate {
  -webkit-transform: perspective(2500px) rotateX(0);
          transform: perspective(2500px) rotateX(0); }

[data-aos=flip-down] {
  -webkit-transform: perspective(2500px) rotateX(100deg);
          transform: perspective(2500px) rotateX(100deg); }

[data-aos=flip-down].aos-animate {
  -webkit-transform: perspective(2500px) rotateX(0);
          transform: perspective(2500px) rotateX(0); }

/* ==========================================================================
   Base
   ========================================================================== */
/**
 * Remove margin and padding from every selector including their
 * psuedo selectors.
 *
 * 1. More sensible default box sizing.
 *    (css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice).
 */
*,
*::before,
*::after {
  margin: 0;
  padding: 0;
  box-sizing: inherit;
  /* 1 */ }

/**
 * Set height of the document to maxium viewport height.
 *
 * 1. Set root font size to 10.
 */
html {
  height: 100vh;
  font-size: 62.5%;
  /* 1 */
  box-sizing: border-box; }

/**
 * Set minimal height of the body to maximum viewport height to
 * match the document's height.
 *
 * 1. Firefox 25+.
 * 2. Chrome 5+.
 */
body {
  font-size: 15px;
  font-size: 1.5rem;
  line-height: 2em;
  min-height: 100vh;
  background-color: white;
  color: #315181;
  font-family: Arial, Helvetica Neue, Helvetica, sans-serif;
  text-rendering: optimizeLegibility;
  -moz-osx-font-smoothing: grayscale;
  /* 1 */
  -webkit-font-smoothing: antialiased;
  /* 2 */
  overflow-x: hidden; }

::-moz-selection {
  background: #315181;
  color: white; }

::selection {
  background: #315181;
  color: white; }

p {
  letter-spacing: 0.42px; }

/* ==========================================================================
   Reset
   ========================================================================== */
/**
 * Custom user agent resets and overrides that are not present in
 * Normalize 8.0.0. This mostly removes some annoying margin and padding
 * defaults, border radius, and outlines.
 */
a {
  color: inherit;
  text-decoration: none; }

/**
 * 1. Remove border radius on Chrome 62.0+ on macOS.
 */
button {
  border: 0;
  border-radius: 0;
  /* 1 */
  outline: none;
  background: none;
  cursor: pointer; }

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

figure {
  margin: 0; }

h1,
h2,
h3,
h4,
h5,
h6 {
  margin: 0;
  padding: 0;
  font-size: inherit;
  font-weight: inherit; }

hr {
  margin: 0;
  padding: 0; }

/**
 * 1. Remove white space.
 */
img {
  max-width: 100%;
  height: auto;
  vertical-align: middle;
  /* 1 */ }

/**
 * 1. Remove inherited user agent appearance.
 */
input,
select,
textarea {
  max-width: 100%;
  border: 0;
  border-radius: 0;
  outline: none;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  /* 1 */ }

/**
 * 1. Only allow vertical resizing to prevent the textarea
 *    from overflowing the container.
 */
textarea {
  resize: vertical; }

ul,
ol {
  margin: 0;
  padding: 0;
  list-style-type: none; }

p {
  margin: 0; }

/**
 * 1. Collapse borders to prevent double sided borders.
 */
table {
  max-width: 100%;
  border-collapse: collapse;
  /* 1 */ }

strong {
  font-weight: 700; }

/* ==========================================================================
   Buttons
   ========================================================================== */
/**
 * Button base.
 */
.button {
  font-size: 18px;
  font-size: 1.8rem;
  line-height: 1.16667em;
  display: inline-flex;
  position: relative;
  align-items: center;
  justify-content: center;
  padding: 15px 25px;
  transition: all 250ms ease;
  font-family: "Abhaya Libre", serif;
  font-weight: 600;
  letter-spacing: 0.5px;
  text-transform: uppercase; }
  @media only screen and (max-width: 599px) {
    .button {
      width: 100%;
      padding: 15px 4px; } }
  .button svg {
    width: 18px;
    height: 18px; }
  .button.svg-right svg {
    margin-left: 10px; }
  .button.svg-left svg {
    margin-right: 10px; }
  .button::before {
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    width: 0;
    height: 5px;
    transition: width 250ms ease;
    background: #b0b0b0;
    content: '';
    z-index: 20; }
  @media only screen and (min-width: 1200px) {
    .button:hover::before {
      width: 100%; } }

/**
 * Button primary (blue).
 */
.button-primary--blue {
  background: #315181;
  color: white; }

/**
 * Button primary (white).
 */
.button-primary--white {
  background: white;
  color: #315181; }

/**
 * Button secondary (black).
 */
.button-secondary--black {
  border: 1px solid black;
  background: transparent;
  color: black; }

/**
 * Button secondary (white).
 */
.button-secondary--white {
  border: 1px solid white;
  background: transparent;
  color: white; }

/* ==========================================================================
   Container
   ========================================================================== */
/**
 * The container object centers an element in the document.
 */
.container {
  max-width: calc(1024px + 50.66667px);
  padding: 0 25.33333px;
  width: 100%;
  margin: 0 auto; }

/* ==========================================================================
   Content Constraint
   ========================================================================== */
/**
 * The content constraint is a constraint for all the content within
 * the document. It can be manipulated by CSS or JavaScript without
 * influencing the body.
 */
.content-constraint {
  position: relative;
  min-height: 100vh; }

/* ==========================================================================
   Flex
   ========================================================================== */
/**
 * Example of a flex based column grid layout in practice:
 *
 * <div class="row">
 *   <div class="col col-xs-6 col-sm-12"></div>
 *   <div class="col col-xs-6 col-sm-12"></div>
 * </div>
 *
 * This example will create a row with two columns each filling half the width
 * of the row on all media, but will convert to a full width column on the
 * small `-sm` breakpoint alias, which is mobile only. Refer to
 * `settings/_definitions.scss` for all breakpoint alias.
 */
/**
 * Flex object.
 *
 * Tip: Use flex on a column to make the box the same height as the column.
 */
.flex {
  display: flex; }

.flex-wrap {
  display: flex;
  flex-wrap: wrap; }

/**
 * Flex object with a column based layout system.
 */
.row {
  display: flex;
  flex: 0 1 auto;
  flex-flow: row wrap;
  margin: 0 -12.66667px; }

/**
 * Box, the inside of a column.
 */
.box {
  flex: 1; }

/**
       * Column 1 for the `xs` breakpoint.
       */
.col-xs-1 {
  flex: 0 1 auto;
  width: 8.33333%;
  padding: 0 12.66667px; }

/**
         * Offset 1 for the `xs` breakpoint.
         */
.offset-xs-1 {
  margin-left: 8.33333%; }

/**
       * Column 2 for the `xs` breakpoint.
       */
.col-xs-2 {
  flex: 0 1 auto;
  width: 16.66667%;
  padding: 0 12.66667px; }

/**
         * Offset 2 for the `xs` breakpoint.
         */
.offset-xs-2 {
  margin-left: 16.66667%; }

/**
       * Column 3 for the `xs` breakpoint.
       */
.col-xs-3 {
  flex: 0 1 auto;
  width: 25%;
  padding: 0 12.66667px; }

/**
         * Offset 3 for the `xs` breakpoint.
         */
.offset-xs-3 {
  margin-left: 25%; }

/**
       * Column 4 for the `xs` breakpoint.
       */
.col-xs-4 {
  flex: 0 1 auto;
  width: 33.33333%;
  padding: 0 12.66667px; }

/**
         * Offset 4 for the `xs` breakpoint.
         */
.offset-xs-4 {
  margin-left: 33.33333%; }

/**
       * Column 5 for the `xs` breakpoint.
       */
.col-xs-5 {
  flex: 0 1 auto;
  width: 41.66667%;
  padding: 0 12.66667px; }

/**
         * Offset 5 for the `xs` breakpoint.
         */
.offset-xs-5 {
  margin-left: 41.66667%; }

/**
       * Column 6 for the `xs` breakpoint.
       */
.col-xs-6 {
  flex: 0 1 auto;
  width: 50%;
  padding: 0 12.66667px; }

/**
         * Offset 6 for the `xs` breakpoint.
         */
.offset-xs-6 {
  margin-left: 50%; }

/**
       * Column 7 for the `xs` breakpoint.
       */
.col-xs-7 {
  flex: 0 1 auto;
  width: 58.33333%;
  padding: 0 12.66667px; }

/**
         * Offset 7 for the `xs` breakpoint.
         */
.offset-xs-7 {
  margin-left: 58.33333%; }

/**
       * Column 8 for the `xs` breakpoint.
       */
.col-xs-8 {
  flex: 0 1 auto;
  width: 66.66667%;
  padding: 0 12.66667px; }

/**
         * Offset 8 for the `xs` breakpoint.
         */
.offset-xs-8 {
  margin-left: 66.66667%; }

/**
       * Column 9 for the `xs` breakpoint.
       */
.col-xs-9 {
  flex: 0 1 auto;
  width: 75%;
  padding: 0 12.66667px; }

/**
         * Offset 9 for the `xs` breakpoint.
         */
.offset-xs-9 {
  margin-left: 75%; }

/**
       * Column 10 for the `xs` breakpoint.
       */
.col-xs-10 {
  flex: 0 1 auto;
  width: 83.33333%;
  padding: 0 12.66667px; }

/**
         * Offset 10 for the `xs` breakpoint.
         */
.offset-xs-10 {
  margin-left: 83.33333%; }

/**
       * Column 11 for the `xs` breakpoint.
       */
.col-xs-11 {
  flex: 0 1 auto;
  width: 91.66667%;
  padding: 0 12.66667px; }

/**
         * Offset 11 for the `xs` breakpoint.
         */
.offset-xs-11 {
  margin-left: 91.66667%; }

/**
       * Column 12 for the `xs` breakpoint.
       */
.col-xs-12 {
  flex: 0 1 auto;
  width: 100%;
  padding: 0 12.66667px; }

/**
       * Align `stretch` for the xs breakpoint.
       */
.align-xs-stretch {
  align-items: stretch; }

/**
       * Align `center` for the xs breakpoint.
       */
.align-xs-center {
  align-items: center; }

/**
       * Align `flex-start` for the xs breakpoint.
       */
.align-xs-flex-start {
  align-items: flex-start; }

/**
       * Align `flex-end` for the xs breakpoint.
       */
.align-xs-flex-end {
  align-items: flex-end; }

/**
       * Align `baseline` for the xs breakpoint.
       */
.align-xs-baseline {
  align-items: baseline; }

/**
       * Justify `start` for the xs breakpoint.
       */
.justify-xs-start {
  justify-content: start; }

/**
       * Justify `center` for the xs breakpoint.
       */
.justify-xs-center {
  justify-content: center; }

/**
       * Justify `space-between` for the xs breakpoint.
       */
.justify-xs-space-between {
  justify-content: space-between; }

/**
       * Justify `space-around` for the xs breakpoint.
       */
.justify-xs-space-around {
  justify-content: space-around; }

/**
       * Justify `space-evenly` for the xs breakpoint.
       */
.justify-xs-space-evenly {
  justify-content: space-evenly; }

/**
       * Justify `flex-start` for the xs breakpoint.
       */
.justify-xs-flex-start {
  justify-content: flex-start; }

/**
       * Justify `flex-end` for the xs breakpoint.
       */
.justify-xs-flex-end {
  justify-content: flex-end; }

/**
       * Bleed left for the xs breakpoint.
       */
.bleed-xs-left {
  padding-left: 0; }

/**
       * Bleed right for the xs breakpoint.
       */
.bleed-xs-right {
  padding-right: 0; }

/**
     * Order first for the `xs` breakpoint.
     */
.first-xs {
  order: -1; }

/**
     * Order last for the `xs` breakpoint.
     */
.last-xs {
  order: 1; }

/**
     * Reverse order for the `xs` breakpoint.
     */
.reverse-xs {
  flex-direction: row-reverse; }

@media only screen and (max-width: 599px) {
  /**
       * Column 1 for the `sm` breakpoint.
       */
  .col-sm-1 {
    flex: 0 1 auto;
    width: 8.33333%;
    padding: 0 12.66667px; }
  /**
         * Offset 1 for the `sm` breakpoint.
         */
  .offset-sm-1 {
    margin-left: 8.33333%; }
  /**
       * Column 2 for the `sm` breakpoint.
       */
  .col-sm-2 {
    flex: 0 1 auto;
    width: 16.66667%;
    padding: 0 12.66667px; }
  /**
         * Offset 2 for the `sm` breakpoint.
         */
  .offset-sm-2 {
    margin-left: 16.66667%; }
  /**
       * Column 3 for the `sm` breakpoint.
       */
  .col-sm-3 {
    flex: 0 1 auto;
    width: 25%;
    padding: 0 12.66667px; }
  /**
         * Offset 3 for the `sm` breakpoint.
         */
  .offset-sm-3 {
    margin-left: 25%; }
  /**
       * Column 4 for the `sm` breakpoint.
       */
  .col-sm-4 {
    flex: 0 1 auto;
    width: 33.33333%;
    padding: 0 12.66667px; }
  /**
         * Offset 4 for the `sm` breakpoint.
         */
  .offset-sm-4 {
    margin-left: 33.33333%; }
  /**
       * Column 5 for the `sm` breakpoint.
       */
  .col-sm-5 {
    flex: 0 1 auto;
    width: 41.66667%;
    padding: 0 12.66667px; }
  /**
         * Offset 5 for the `sm` breakpoint.
         */
  .offset-sm-5 {
    margin-left: 41.66667%; }
  /**
       * Column 6 for the `sm` breakpoint.
       */
  .col-sm-6 {
    flex: 0 1 auto;
    width: 50%;
    padding: 0 12.66667px; }
  /**
         * Offset 6 for the `sm` breakpoint.
         */
  .offset-sm-6 {
    margin-left: 50%; }
  /**
       * Column 7 for the `sm` breakpoint.
       */
  .col-sm-7 {
    flex: 0 1 auto;
    width: 58.33333%;
    padding: 0 12.66667px; }
  /**
         * Offset 7 for the `sm` breakpoint.
         */
  .offset-sm-7 {
    margin-left: 58.33333%; }
  /**
       * Column 8 for the `sm` breakpoint.
       */
  .col-sm-8 {
    flex: 0 1 auto;
    width: 66.66667%;
    padding: 0 12.66667px; }
  /**
         * Offset 8 for the `sm` breakpoint.
         */
  .offset-sm-8 {
    margin-left: 66.66667%; }
  /**
       * Column 9 for the `sm` breakpoint.
       */
  .col-sm-9 {
    flex: 0 1 auto;
    width: 75%;
    padding: 0 12.66667px; }
  /**
         * Offset 9 for the `sm` breakpoint.
         */
  .offset-sm-9 {
    margin-left: 75%; }
  /**
       * Column 10 for the `sm` breakpoint.
       */
  .col-sm-10 {
    flex: 0 1 auto;
    width: 83.33333%;
    padding: 0 12.66667px; }
  /**
         * Offset 10 for the `sm` breakpoint.
         */
  .offset-sm-10 {
    margin-left: 83.33333%; }
  /**
       * Column 11 for the `sm` breakpoint.
       */
  .col-sm-11 {
    flex: 0 1 auto;
    width: 91.66667%;
    padding: 0 12.66667px; }
  /**
         * Offset 11 for the `sm` breakpoint.
         */
  .offset-sm-11 {
    margin-left: 91.66667%; }
  /**
       * Column 12 for the `sm` breakpoint.
       */
  .col-sm-12 {
    flex: 0 1 auto;
    width: 100%;
    padding: 0 12.66667px; }
  /**
       * Align `stretch` for the sm breakpoint.
       */
  .align-sm-stretch {
    align-items: stretch; }
  /**
       * Align `center` for the sm breakpoint.
       */
  .align-sm-center {
    align-items: center; }
  /**
       * Align `flex-start` for the sm breakpoint.
       */
  .align-sm-flex-start {
    align-items: flex-start; }
  /**
       * Align `flex-end` for the sm breakpoint.
       */
  .align-sm-flex-end {
    align-items: flex-end; }
  /**
       * Align `baseline` for the sm breakpoint.
       */
  .align-sm-baseline {
    align-items: baseline; }
  /**
       * Justify `start` for the sm breakpoint.
       */
  .justify-sm-start {
    justify-content: start; }
  /**
       * Justify `center` for the sm breakpoint.
       */
  .justify-sm-center {
    justify-content: center; }
  /**
       * Justify `space-between` for the sm breakpoint.
       */
  .justify-sm-space-between {
    justify-content: space-between; }
  /**
       * Justify `space-around` for the sm breakpoint.
       */
  .justify-sm-space-around {
    justify-content: space-around; }
  /**
       * Justify `space-evenly` for the sm breakpoint.
       */
  .justify-sm-space-evenly {
    justify-content: space-evenly; }
  /**
       * Justify `flex-start` for the sm breakpoint.
       */
  .justify-sm-flex-start {
    justify-content: flex-start; }
  /**
       * Justify `flex-end` for the sm breakpoint.
       */
  .justify-sm-flex-end {
    justify-content: flex-end; }
  /**
       * Bleed left for the sm breakpoint.
       */
  .bleed-sm-left {
    padding-left: 0; }
  /**
       * Bleed right for the sm breakpoint.
       */
  .bleed-sm-right {
    padding-right: 0; }
  /**
     * Order first for the `sm` breakpoint.
     */
  .first-sm {
    order: -1; }
  /**
     * Order last for the `sm` breakpoint.
     */
  .last-sm {
    order: 1; }
  /**
     * Reverse order for the `sm` breakpoint.
     */
  .reverse-sm {
    flex-direction: row-reverse; } }

@media only screen and (min-width: 600px) {
  /**
       * Column 1 for the `md` breakpoint.
       */
  .col-md-1 {
    flex: 0 1 auto;
    width: 8.33333%;
    padding: 0 12.66667px; }
  /**
         * Offset 1 for the `md` breakpoint.
         */
  .offset-md-1 {
    margin-left: 8.33333%; }
  /**
       * Column 2 for the `md` breakpoint.
       */
  .col-md-2 {
    flex: 0 1 auto;
    width: 16.66667%;
    padding: 0 12.66667px; }
  /**
         * Offset 2 for the `md` breakpoint.
         */
  .offset-md-2 {
    margin-left: 16.66667%; }
  /**
       * Column 3 for the `md` breakpoint.
       */
  .col-md-3 {
    flex: 0 1 auto;
    width: 25%;
    padding: 0 12.66667px; }
  /**
         * Offset 3 for the `md` breakpoint.
         */
  .offset-md-3 {
    margin-left: 25%; }
  /**
       * Column 4 for the `md` breakpoint.
       */
  .col-md-4 {
    flex: 0 1 auto;
    width: 33.33333%;
    padding: 0 12.66667px; }
  /**
         * Offset 4 for the `md` breakpoint.
         */
  .offset-md-4 {
    margin-left: 33.33333%; }
  /**
       * Column 5 for the `md` breakpoint.
       */
  .col-md-5 {
    flex: 0 1 auto;
    width: 41.66667%;
    padding: 0 12.66667px; }
  /**
         * Offset 5 for the `md` breakpoint.
         */
  .offset-md-5 {
    margin-left: 41.66667%; }
  /**
       * Column 6 for the `md` breakpoint.
       */
  .col-md-6 {
    flex: 0 1 auto;
    width: 50%;
    padding: 0 12.66667px; }
  /**
         * Offset 6 for the `md` breakpoint.
         */
  .offset-md-6 {
    margin-left: 50%; }
  /**
       * Column 7 for the `md` breakpoint.
       */
  .col-md-7 {
    flex: 0 1 auto;
    width: 58.33333%;
    padding: 0 12.66667px; }
  /**
         * Offset 7 for the `md` breakpoint.
         */
  .offset-md-7 {
    margin-left: 58.33333%; }
  /**
       * Column 8 for the `md` breakpoint.
       */
  .col-md-8 {
    flex: 0 1 auto;
    width: 66.66667%;
    padding: 0 12.66667px; }
  /**
         * Offset 8 for the `md` breakpoint.
         */
  .offset-md-8 {
    margin-left: 66.66667%; }
  /**
       * Column 9 for the `md` breakpoint.
       */
  .col-md-9 {
    flex: 0 1 auto;
    width: 75%;
    padding: 0 12.66667px; }
  /**
         * Offset 9 for the `md` breakpoint.
         */
  .offset-md-9 {
    margin-left: 75%; }
  /**
       * Column 10 for the `md` breakpoint.
       */
  .col-md-10 {
    flex: 0 1 auto;
    width: 83.33333%;
    padding: 0 12.66667px; }
  /**
         * Offset 10 for the `md` breakpoint.
         */
  .offset-md-10 {
    margin-left: 83.33333%; }
  /**
       * Column 11 for the `md` breakpoint.
       */
  .col-md-11 {
    flex: 0 1 auto;
    width: 91.66667%;
    padding: 0 12.66667px; }
  /**
         * Offset 11 for the `md` breakpoint.
         */
  .offset-md-11 {
    margin-left: 91.66667%; }
  /**
       * Column 12 for the `md` breakpoint.
       */
  .col-md-12 {
    flex: 0 1 auto;
    width: 100%;
    padding: 0 12.66667px; }
  /**
       * Align `stretch` for the md breakpoint.
       */
  .align-md-stretch {
    align-items: stretch; }
  /**
       * Align `center` for the md breakpoint.
       */
  .align-md-center {
    align-items: center; }
  /**
       * Align `flex-start` for the md breakpoint.
       */
  .align-md-flex-start {
    align-items: flex-start; }
  /**
       * Align `flex-end` for the md breakpoint.
       */
  .align-md-flex-end {
    align-items: flex-end; }
  /**
       * Align `baseline` for the md breakpoint.
       */
  .align-md-baseline {
    align-items: baseline; }
  /**
       * Justify `start` for the md breakpoint.
       */
  .justify-md-start {
    justify-content: start; }
  /**
       * Justify `center` for the md breakpoint.
       */
  .justify-md-center {
    justify-content: center; }
  /**
       * Justify `space-between` for the md breakpoint.
       */
  .justify-md-space-between {
    justify-content: space-between; }
  /**
       * Justify `space-around` for the md breakpoint.
       */
  .justify-md-space-around {
    justify-content: space-around; }
  /**
       * Justify `space-evenly` for the md breakpoint.
       */
  .justify-md-space-evenly {
    justify-content: space-evenly; }
  /**
       * Justify `flex-start` for the md breakpoint.
       */
  .justify-md-flex-start {
    justify-content: flex-start; }
  /**
       * Justify `flex-end` for the md breakpoint.
       */
  .justify-md-flex-end {
    justify-content: flex-end; }
  /**
       * Bleed left for the md breakpoint.
       */
  .bleed-md-left {
    padding-left: 0; }
  /**
       * Bleed right for the md breakpoint.
       */
  .bleed-md-right {
    padding-right: 0; }
  /**
     * Order first for the `md` breakpoint.
     */
  .first-md {
    order: -1; }
  /**
     * Order last for the `md` breakpoint.
     */
  .last-md {
    order: 1; }
  /**
     * Reverse order for the `md` breakpoint.
     */
  .reverse-md {
    flex-direction: row-reverse; } }

@media only screen and (min-width: 900px) {
  /**
       * Column 1 for the `lg` breakpoint.
       */
  .col-lg-1 {
    flex: 0 1 auto;
    width: 8.33333%;
    padding: 0 12.66667px; }
  /**
         * Offset 1 for the `lg` breakpoint.
         */
  .offset-lg-1 {
    margin-left: 8.33333%; }
  /**
       * Column 2 for the `lg` breakpoint.
       */
  .col-lg-2 {
    flex: 0 1 auto;
    width: 16.66667%;
    padding: 0 12.66667px; }
  /**
         * Offset 2 for the `lg` breakpoint.
         */
  .offset-lg-2 {
    margin-left: 16.66667%; }
  /**
       * Column 3 for the `lg` breakpoint.
       */
  .col-lg-3 {
    flex: 0 1 auto;
    width: 25%;
    padding: 0 12.66667px; }
  /**
         * Offset 3 for the `lg` breakpoint.
         */
  .offset-lg-3 {
    margin-left: 25%; }
  /**
       * Column 4 for the `lg` breakpoint.
       */
  .col-lg-4 {
    flex: 0 1 auto;
    width: 33.33333%;
    padding: 0 12.66667px; }
  /**
         * Offset 4 for the `lg` breakpoint.
         */
  .offset-lg-4 {
    margin-left: 33.33333%; }
  /**
       * Column 5 for the `lg` breakpoint.
       */
  .col-lg-5 {
    flex: 0 1 auto;
    width: 41.66667%;
    padding: 0 12.66667px; }
  /**
         * Offset 5 for the `lg` breakpoint.
         */
  .offset-lg-5 {
    margin-left: 41.66667%; }
  /**
       * Column 6 for the `lg` breakpoint.
       */
  .col-lg-6 {
    flex: 0 1 auto;
    width: 50%;
    padding: 0 12.66667px; }
  /**
         * Offset 6 for the `lg` breakpoint.
         */
  .offset-lg-6 {
    margin-left: 50%; }
  /**
       * Column 7 for the `lg` breakpoint.
       */
  .col-lg-7 {
    flex: 0 1 auto;
    width: 58.33333%;
    padding: 0 12.66667px; }
  /**
         * Offset 7 for the `lg` breakpoint.
         */
  .offset-lg-7 {
    margin-left: 58.33333%; }
  /**
       * Column 8 for the `lg` breakpoint.
       */
  .col-lg-8 {
    flex: 0 1 auto;
    width: 66.66667%;
    padding: 0 12.66667px; }
  /**
         * Offset 8 for the `lg` breakpoint.
         */
  .offset-lg-8 {
    margin-left: 66.66667%; }
  /**
       * Column 9 for the `lg` breakpoint.
       */
  .col-lg-9 {
    flex: 0 1 auto;
    width: 75%;
    padding: 0 12.66667px; }
  /**
         * Offset 9 for the `lg` breakpoint.
         */
  .offset-lg-9 {
    margin-left: 75%; }
  /**
       * Column 10 for the `lg` breakpoint.
       */
  .col-lg-10 {
    flex: 0 1 auto;
    width: 83.33333%;
    padding: 0 12.66667px; }
  /**
         * Offset 10 for the `lg` breakpoint.
         */
  .offset-lg-10 {
    margin-left: 83.33333%; }
  /**
       * Column 11 for the `lg` breakpoint.
       */
  .col-lg-11 {
    flex: 0 1 auto;
    width: 91.66667%;
    padding: 0 12.66667px; }
  /**
         * Offset 11 for the `lg` breakpoint.
         */
  .offset-lg-11 {
    margin-left: 91.66667%; }
  /**
       * Column 12 for the `lg` breakpoint.
       */
  .col-lg-12 {
    flex: 0 1 auto;
    width: 100%;
    padding: 0 12.66667px; }
  /**
       * Align `stretch` for the lg breakpoint.
       */
  .align-lg-stretch {
    align-items: stretch; }
  /**
       * Align `center` for the lg breakpoint.
       */
  .align-lg-center {
    align-items: center; }
  /**
       * Align `flex-start` for the lg breakpoint.
       */
  .align-lg-flex-start {
    align-items: flex-start; }
  /**
       * Align `flex-end` for the lg breakpoint.
       */
  .align-lg-flex-end {
    align-items: flex-end; }
  /**
       * Align `baseline` for the lg breakpoint.
       */
  .align-lg-baseline {
    align-items: baseline; }
  /**
       * Justify `start` for the lg breakpoint.
       */
  .justify-lg-start {
    justify-content: start; }
  /**
       * Justify `center` for the lg breakpoint.
       */
  .justify-lg-center {
    justify-content: center; }
  /**
       * Justify `space-between` for the lg breakpoint.
       */
  .justify-lg-space-between {
    justify-content: space-between; }
  /**
       * Justify `space-around` for the lg breakpoint.
       */
  .justify-lg-space-around {
    justify-content: space-around; }
  /**
       * Justify `space-evenly` for the lg breakpoint.
       */
  .justify-lg-space-evenly {
    justify-content: space-evenly; }
  /**
       * Justify `flex-start` for the lg breakpoint.
       */
  .justify-lg-flex-start {
    justify-content: flex-start; }
  /**
       * Justify `flex-end` for the lg breakpoint.
       */
  .justify-lg-flex-end {
    justify-content: flex-end; }
  /**
       * Bleed left for the lg breakpoint.
       */
  .bleed-lg-left {
    padding-left: 0; }
  /**
       * Bleed right for the lg breakpoint.
       */
  .bleed-lg-right {
    padding-right: 0; }
  /**
     * Order first for the `lg` breakpoint.
     */
  .first-lg {
    order: -1; }
  /**
     * Order last for the `lg` breakpoint.
     */
  .last-lg {
    order: 1; }
  /**
     * Reverse order for the `lg` breakpoint.
     */
  .reverse-lg {
    flex-direction: row-reverse; } }

@media only screen and (min-width: 1200px) {
  /**
       * Column 1 for the `xl` breakpoint.
       */
  .col-xl-1 {
    flex: 0 1 auto;
    width: 8.33333%;
    padding: 0 12.66667px; }
  /**
         * Offset 1 for the `xl` breakpoint.
         */
  .offset-xl-1 {
    margin-left: 8.33333%; }
  /**
       * Column 2 for the `xl` breakpoint.
       */
  .col-xl-2 {
    flex: 0 1 auto;
    width: 16.66667%;
    padding: 0 12.66667px; }
  /**
         * Offset 2 for the `xl` breakpoint.
         */
  .offset-xl-2 {
    margin-left: 16.66667%; }
  /**
       * Column 3 for the `xl` breakpoint.
       */
  .col-xl-3 {
    flex: 0 1 auto;
    width: 25%;
    padding: 0 12.66667px; }
  /**
         * Offset 3 for the `xl` breakpoint.
         */
  .offset-xl-3 {
    margin-left: 25%; }
  /**
       * Column 4 for the `xl` breakpoint.
       */
  .col-xl-4 {
    flex: 0 1 auto;
    width: 33.33333%;
    padding: 0 12.66667px; }
  /**
         * Offset 4 for the `xl` breakpoint.
         */
  .offset-xl-4 {
    margin-left: 33.33333%; }
  /**
       * Column 5 for the `xl` breakpoint.
       */
  .col-xl-5 {
    flex: 0 1 auto;
    width: 41.66667%;
    padding: 0 12.66667px; }
  /**
         * Offset 5 for the `xl` breakpoint.
         */
  .offset-xl-5 {
    margin-left: 41.66667%; }
  /**
       * Column 6 for the `xl` breakpoint.
       */
  .col-xl-6 {
    flex: 0 1 auto;
    width: 50%;
    padding: 0 12.66667px; }
  /**
         * Offset 6 for the `xl` breakpoint.
         */
  .offset-xl-6 {
    margin-left: 50%; }
  /**
       * Column 7 for the `xl` breakpoint.
       */
  .col-xl-7 {
    flex: 0 1 auto;
    width: 58.33333%;
    padding: 0 12.66667px; }
  /**
         * Offset 7 for the `xl` breakpoint.
         */
  .offset-xl-7 {
    margin-left: 58.33333%; }
  /**
       * Column 8 for the `xl` breakpoint.
       */
  .col-xl-8 {
    flex: 0 1 auto;
    width: 66.66667%;
    padding: 0 12.66667px; }
  /**
         * Offset 8 for the `xl` breakpoint.
         */
  .offset-xl-8 {
    margin-left: 66.66667%; }
  /**
       * Column 9 for the `xl` breakpoint.
       */
  .col-xl-9 {
    flex: 0 1 auto;
    width: 75%;
    padding: 0 12.66667px; }
  /**
         * Offset 9 for the `xl` breakpoint.
         */
  .offset-xl-9 {
    margin-left: 75%; }
  /**
       * Column 10 for the `xl` breakpoint.
       */
  .col-xl-10 {
    flex: 0 1 auto;
    width: 83.33333%;
    padding: 0 12.66667px; }
  /**
         * Offset 10 for the `xl` breakpoint.
         */
  .offset-xl-10 {
    margin-left: 83.33333%; }
  /**
       * Column 11 for the `xl` breakpoint.
       */
  .col-xl-11 {
    flex: 0 1 auto;
    width: 91.66667%;
    padding: 0 12.66667px; }
  /**
         * Offset 11 for the `xl` breakpoint.
         */
  .offset-xl-11 {
    margin-left: 91.66667%; }
  /**
       * Column 12 for the `xl` breakpoint.
       */
  .col-xl-12 {
    flex: 0 1 auto;
    width: 100%;
    padding: 0 12.66667px; }
  /**
       * Align `stretch` for the xl breakpoint.
       */
  .align-xl-stretch {
    align-items: stretch; }
  /**
       * Align `center` for the xl breakpoint.
       */
  .align-xl-center {
    align-items: center; }
  /**
       * Align `flex-start` for the xl breakpoint.
       */
  .align-xl-flex-start {
    align-items: flex-start; }
  /**
       * Align `flex-end` for the xl breakpoint.
       */
  .align-xl-flex-end {
    align-items: flex-end; }
  /**
       * Align `baseline` for the xl breakpoint.
       */
  .align-xl-baseline {
    align-items: baseline; }
  /**
       * Justify `start` for the xl breakpoint.
       */
  .justify-xl-start {
    justify-content: start; }
  /**
       * Justify `center` for the xl breakpoint.
       */
  .justify-xl-center {
    justify-content: center; }
  /**
       * Justify `space-between` for the xl breakpoint.
       */
  .justify-xl-space-between {
    justify-content: space-between; }
  /**
       * Justify `space-around` for the xl breakpoint.
       */
  .justify-xl-space-around {
    justify-content: space-around; }
  /**
       * Justify `space-evenly` for the xl breakpoint.
       */
  .justify-xl-space-evenly {
    justify-content: space-evenly; }
  /**
       * Justify `flex-start` for the xl breakpoint.
       */
  .justify-xl-flex-start {
    justify-content: flex-start; }
  /**
       * Justify `flex-end` for the xl breakpoint.
       */
  .justify-xl-flex-end {
    justify-content: flex-end; }
  /**
       * Bleed left for the xl breakpoint.
       */
  .bleed-xl-left {
    padding-left: 0; }
  /**
       * Bleed right for the xl breakpoint.
       */
  .bleed-xl-right {
    padding-right: 0; }
  /**
     * Order first for the `xl` breakpoint.
     */
  .first-xl {
    order: -1; }
  /**
     * Order last for the `xl` breakpoint.
     */
  .last-xl {
    order: 1; }
  /**
     * Reverse order for the `xl` breakpoint.
     */
  .reverse-xl {
    flex-direction: row-reverse; } }

/* ==========================================================================
   Heading
   ========================================================================== */
/**
 * Heading base.
 */
.heading {
  display: inline-flex;
  position: relative;
  font-family: "Unna", serif;
  font-weight: 700; }
  .heading.top-line {
    padding-top: 10px; }
    @media only screen and (max-width: 599px) {
      .heading.top-line {
        padding-top: 0; } }
    .heading.top-line::before {
      display: block;
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      max-width: 185px;
      height: 1px;
      background: #315181;
      content: ''; }
  .heading.top-line-center::before {
    right: 0;
    left: 0;
    margin: auto; }
  .heading.center {
    justify-content: center;
    width: 100%; }

/**
 * Heading 1
 */
.heading-1 {
  font-size: 60px;
  font-size: 6rem;
  line-height: 1.08333em;
  letter-spacing: 1.67px; }
  @media only screen and (max-width: 599px) {
    .heading-1 {
      font-size: 45px;
      font-size: 4.5rem;
      line-height: 1.44444em; } }

/**
 * Heading 2
 */
.heading-2 {
  font-size: 50px;
  font-size: 5rem;
  line-height: 1.3em;
  letter-spacing: 1.39px; }
  @media only screen and (max-width: 599px) {
    .heading-2 {
      font-size: 35px;
      font-size: 3.5rem;
      line-height: 1.28571em; } }

/**
 * Heading 3
 */
.heading-3 {
  font-size: 30px;
  font-size: 3rem;
  line-height: 1.13333em;
  letter-spacing: 0.83px; }
  @media only screen and (max-width: 599px) {
    .heading-3 {
      font-size: 25px;
      font-size: 2.5rem;
      line-height: 1.16em; } }

/* ==========================================================================
   Links
   ========================================================================== */
/**
 * Link base.
 */
.link {
  display: inline-flex;
  font-family: Arial, Helvetica Neue, Helvetica, sans-serif; }
  .link svg {
    width: 18px;
    height: 18px; }
  .link.svg-right svg {
    margin-left: 10px; }
  .link.svg-left svg {
    margin-right: 10px; }
  .link.underline {
    text-decoration: underline; }

/**
 * Link (blue).
 */
.link--blue {
  color: #315181; }

/* ==========================================================================
   Section
   ========================================================================== */
/**
 *  Margin.
 */
.m5-top {
  margin-top: 5px; }

.m5-bottom {
  margin-bottom: 5px; }

.m10-top {
  margin-top: 10px; }

.m10-bottom {
  margin-bottom: 10px !important; }

.m15-top {
  margin-top: 15px; }

.m15-bottom {
  margin-bottom: 15px; }

.m20-top {
  margin-top: 20px; }

.m20-bottom {
  margin-bottom: 20px; }

.m30-top {
  margin-top: 30px; }

.m30-bottom {
  margin-bottom: 30px; }

.m40-top {
  margin-top: 40px; }

.m40-bottom {
  margin-bottom: 40px; }

.m50-top {
  margin-top: 50px; }

.m50-bottom {
  margin-bottom: 50px; }

.m60-top {
  margin-top: 60px; }

.m60-bottom {
  margin-bottom: 60px; }

.m80-top {
  margin-top: 80px; }

.m80-bottom {
  margin-bottom: 80px; }

.m100-top {
  margin-top: 100px; }

.m100-bottom {
  margin-bottom: 100px; }

/**
 *  Font weight.
 */
.font-weight-100 {
  font-weight: 100; }

.font-weight-300 {
  font-weight: 300; }

.font-weight-600 {
  font-weight: 600; }

.font-weight-700 {
  font-weight: 700; }

.font-weight-900 {
  font-weight: 900; }

/**
 *  Text alignment.
 */
.text-align-left {
  text-align: left; }

/* ==========================================================================
   Wrapper
   ========================================================================== */
/**
 * The wrapper object centers an element in the document.
 */
/**
 * Wrapper (default)
 */
.wrapper {
  max-width: calc(1240px + 40px);
  padding: 0 20px;
  width: 100%;
  margin: 0 auto;
  position: relative; }
  @media only screen and (max-width: 599px) {
    .wrapper {
      max-width: calc(1240px + 40px);
      padding: 0 20px;
      width: 100%;
      margin: 0 auto; } }
  @media only screen and (min-width: 600px) and (max-width: 899px) {
    .wrapper {
      max-width: calc(1240px + 120px);
      padding: 0 60px;
      width: 100%;
      margin: 0 auto; } }
  @media only screen and (min-width: 900px) and (max-width: 1199px) {
    .wrapper {
      max-width: calc(1240px + 100px);
      padding: 0 50px;
      width: 100%;
      margin: 0 auto; } }

/**
 * Wrapper (full width)
 */
.wrapper--full {
  width: 100%;
  max-width: 100%;
  padding: 0; }

.wrapper--small {
  max-width: 840px;
  margin: auto; }
  @media only screen and (min-width: 900px) and (max-width: 1199px) {
    .wrapper--small {
      max-width: 760px; } }

/* ==========================================================================
   CMS Output
   ========================================================================== */
/**
 * Every conceivable HTML element within a `.cms-output` wrapper.
 *
 * 1. Exclude last childs.
 */
.cms-output > *:not(:last-child) {
  margin-bottom: 1em;
  /* 1 */ }

.cms-output ul {
  list-style-type: disc; }

.cms-output ol {
  list-style-type: decimal; }

.cms-output p > a {
  color: black; }
  .cms-output p > a:hover {
    text-decoration: underline; }

.cms-output h1 {
  font-size: 60px;
  font-size: 6rem;
  line-height: 1.08333em;
  letter-spacing: 1.67px; }
  @media only screen and (max-width: 599px) {
    .cms-output h1 {
      font-size: 45px;
      font-size: 4.5rem;
      line-height: 1.44444em; } }

.cms-output h2 {
  font-size: 50px;
  font-size: 5rem;
  line-height: 1.3em;
  letter-spacing: 1.39px; }
  @media only screen and (max-width: 599px) {
    .cms-output h2 {
      font-size: 35px;
      font-size: 3.5rem;
      line-height: 1.28571em; } }

.cms-output h3 {
  font-size: 25px;
  font-size: 2.5rem;
  line-height: 1.16em;
  margin-bottom: 10px !important;
  font-family: "Unna", serif; }
  @media only screen and (max-width: 599px) {
    .cms-output h3 {
      font-size: 25px;
      font-size: 2.5rem;
      line-height: 1.16em; } }

/* ==========================================================================
   Contact form.
   ========================================================================== */
/**
 * Main.
 */
.contact-form {
  padding-top: 100px;
  padding-bottom: 100px; }
  @media only screen and (max-width: 599px) {
    .contact-form {
      padding-top: 50px;
      padding-bottom: 50px; } }
  @media only screen and (max-width: 1199px) {
    .contact-form {
      width: 100%;
      max-width: 820px;
      margin: auto; } }
  .contact-form .cms-output {
    width: 100%;
    max-width: 500px;
    margin-top: 50px; }
    @media only screen and (max-width: 599px) {
      .contact-form .cms-output {
        margin-top: 20px;
        margin-bottom: 30px; } }
    @media only screen and (min-width: 600px) and (max-width: 899px) {
      .contact-form .cms-output {
        margin-top: 30px;
        margin-bottom: 50px; } }
    @media only screen and (min-width: 900px) and (max-width: 1199px) {
      .contact-form .cms-output {
        margin-bottom: 50px; } }

.contact-form__title {
  width: 100%; }
  @media only screen and (max-width: 1199px) {
    .contact-form__title {
      justify-content: center; } }
  @media only screen and (max-width: 1199px) {
    .contact-form__title::before {
      right: 0;
      margin: auto; } }

.contact-form__content {
  align-content: center;
  height: 100%; }
  @media only screen and (max-width: 1199px) {
    .contact-form__content {
      justify-content: center;
      text-align: center; } }

.contact-form__form {
  padding: 30px;
  background: #f0f6ff; }
  @media only screen and (max-width: 599px) {
    .contact-form__form {
      width: 100%;
      padding: 30px 10px 50px; } }
  @media only screen and (min-width: 600px) and (max-width: 899px) {
    .contact-form__form {
      padding: 30px 30px 50px; } }

/**
 * Gravity forms settings.
 */
.gform_title {
  margin-bottom: 50px; }
  @media only screen and (max-width: 899px) {
    .gform_title {
      margin-bottom: 30px; } }

.gform_validation_container {
  display: none; }

.gform_fields > li {
  margin: 0; }

.gfield {
  margin-bottom: 40px;
  list-style: none; }
  @media only screen and (max-width: 599px) {
    .gfield {
      margin-bottom: 20px; } }
  @media only screen and (min-width: 600px) and (max-width: 899px) {
    .gfield {
      margin-bottom: 30px; } }

input[type='text'] {
  width: 100%;
  height: 40px;
  padding: 0 10px;
  border: 1px solid #315181;
  background: #f0f6ff;
  color: #315181; }

textarea {
  width: 100%;
  height: 90px;
  padding: 10px;
  border: 1px solid #315181;
  background: #f0f6ff;
  color: #315181;
  resize: none; }
  @media only screen and (max-width: 599px) {
    textarea {
      height: 150px; } }

.validation_error {
  margin-top: -20px;
  margin-bottom: 20px;
  color: #ff5500;
  font-style: italic;
  font-weight: 700; }

.validation_message {
  color: #ff5500;
  font-style: italic; }

/**
 * Additional rules for the form.
 */
.mobile-menu + .contact-form {
  padding-top: 160px; }
  @media only screen and (max-width: 599px) {
    .mobile-menu + .contact-form {
      padding-top: 110px; } }
  @media only screen and (min-width: 600px) and (max-width: 899px) {
    .mobile-menu + .contact-form {
      padding-top: 150px; } }
  @media only screen and (min-width: 900px) and (max-width: 1199px) {
    .mobile-menu + .contact-form {
      padding-top: 190px; } }

/* ==========================================================================
   Content default
   ========================================================================== */
/**
 * Main.
 */
.content-default {
  width: 100%;
  max-width: 820px;
  height: 100%;
  padding: 100px;
  text-align: center; }
  @media only screen and (max-width: 599px) {
    .content-default {
      padding: 50px 10px; } }
  @media only screen and (min-width: 600px) and (max-width: 899px) {
    .content-default {
      padding: 50px 30px; } }
  @media only screen and (max-width: 899px) {
    .content-default {
      max-width: 100%; } }
  @media only screen and (min-width: 900px) and (max-width: 1199px) {
    .content-default {
      max-width: 735px;
      padding: 100px 75px; } }
  .content-default.background-color-blue {
    margin-top: 100px;
    margin-bottom: 100px;
    background: #f0f6ff; }
    @media only screen and (max-width: 899px) {
      .content-default.background-color-blue {
        margin-top: 50px;
        margin-bottom: 50px; } }
    .content-default.background-color-blue .button {
      border: 1px solid #3d3d3d;
      color: #3d3d3d; }
  .content-default.background-color-white {
    background: white; }
    .content-default.background-color-white .button {
      border: 0;
      background: #315181;
      color: white; }
  .content-default .cms-output {
    margin-top: 50px; }
    @media only screen and (max-width: 599px) {
      .content-default .cms-output {
        margin-top: 40px; } }
    @media only screen and (min-width: 600px) and (max-width: 899px) {
      .content-default .cms-output {
        margin-top: 30px; } }
  .content-default .button {
    margin-top: 50px; }
    @media only screen and (max-width: 899px) {
      .content-default .button {
        margin-top: 30px; } }

/**
 * Additional rules.
 */
.mobile-menu + .content-default__wrapper {
  padding-top: 120px; }
  @media only screen and (max-width: 599px) {
    .mobile-menu + .content-default__wrapper {
      padding-top: 50px; } }
  @media only screen and (min-width: 600px) and (max-width: 899px) {
    .mobile-menu + .content-default__wrapper {
      padding-top: 70px; } }
  @media only screen and (min-width: 900px) and (max-width: 1199px) {
    .mobile-menu + .content-default__wrapper {
      padding-top: 90px; } }

.text-image + .content-default__wrapper {
  margin-top: -50px; }
  @media only screen and (max-width: 899px) {
    .text-image + .content-default__wrapper {
      margin-top: -30px; } }
  .text-image + .content-default__wrapper .content-default {
    margin: 0; }

/* ==========================================================================
   Footer
   ========================================================================== */
/**
 * Main element.
 */
.footer {
  position: relative;
  padding: 100px 0;
  background: #315181;
  color: white;
  letter-spacing: 0.42px; }
  @media only screen and (max-width: 899px) {
    .footer {
      padding: 50px 0 0; } }
  @media only screen and (min-width: 900px) and (max-width: 1199px) {
    .footer {
      padding: 100px 0 0; } }
  .footer .button {
    margin-top: 30px;
    padding: 15px 25px; }
  @media only screen and (min-width: 600px) and (max-width: 899px) {
    .footer .wrapper {
      max-width: 440px;
      padding: 0 20px; } }
  @media only screen and (min-width: 1200px) {
    .footer .wrapper {
      position: static; } }
  .footer .maps {
    position: relative;
    overflow: hidden; }
    @media only screen and (min-width: 1200px) {
      .footer .maps {
        position: static; } }
  .footer #map-canvas {
    top: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    max-width: 415px;
    height: 100%; }
    @media only screen and (max-width: 1199px) {
      .footer #map-canvas {
        position: static !important;
        max-width: 100%;
        height: 300px; } }
    @media only screen and (min-width: 1200px) {
      .footer #map-canvas {
        position: absolute; } }

/**
 * Upper part of footer.
 */
@media only screen and (max-width: 899px) {
  .footer__upper {
    padding-bottom: 50px; } }

@media only screen and (min-width: 900px) and (max-width: 1199px) {
  .footer__upper {
    padding-bottom: 100px; } }

/**
 * Contact element.
 */
.footer__contact {
  margin-bottom: 50px; }

/**
 * Teaser element.
 */
@media only screen and (max-width: 899px) {
  .footer__teaser {
    margin-top: 50px; } }

@media only screen and (min-width: 1200px) {
  .footer__teaser {
    padding-right: 110px; } }

/**
 * Lower part of footer.
 */
.footer__lower {
  position: relative;
  padding: 10px 0;
  background: white; }

/* ==========================================================================
   Header
   ========================================================================== */
/**
 * Main element.
 */
.header {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  padding: 30px 0 20px;
  letter-spacing: 0.42px;
  z-index: 999; }
  @media only screen and (max-width: 599px) {
    .header {
      padding: 10px 0; } }
  @media only screen and (min-width: 1200px) {
    .header {
      background: linear-gradient(to bottom, #f7f7f7 0%, transparent 100%); } }

/**
 * Header left part.
 */
.header__left {
  width: 35%; }
  @media only screen and (max-width: 1199px) {
    .header__left {
      width: 75%; } }

/**
 * Header right part.
 */
.header__right {
  width: 65%; }
  @media only screen and (max-width: 1199px) {
    .header__right {
      display: none; } }
  .header__right nav {
    display: flex;
    justify-content: flex-end;
    width: 100%; }

/**
 * Main menu settings.
 */
.main-menu-container {
  position: relative; }
  .main-menu-container::before {
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    width: 100%;
    height: 1px;
    background: #315181;
    content: '';
    opacity: 0.5; }

.main-menu {
  display: flex;
  width: 100%; }
  .main-menu a {
    padding-top: 10px;
    padding-bottom: 10px;
    display: flex;
    margin-left: 35px;
    text-transform: uppercase; }
  .main-menu .menu-item:nth-child(1) a {
    margin-left: 0; }

/**
 * Top menu settings.
 */
.top-menu {
  display: flex;
  width: 100%; }
  .top-menu a {
    display: flex;
    margin-left: 40px;
    padding-bottom: 10px; }
  .top-menu .menu-item:nth-child(1) a {
    margin-left: 0; }

/* ==========================================================================
   Main Menu
   ========================================================================== */
/**
 * Main menu link.
 */
.top-menu > .menu-item > a,
.main-menu > .menu-item > a {
  position: relative; }
  .top-menu > .menu-item > a::after,
  .main-menu > .menu-item > a::after {
    display: block;
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    width: 0;
    height: 3px;
    transition: width 250ms ease;
    background: #315181;
    content: ''; }
  @media only screen and (min-width: 1200px) {
    .top-menu > .menu-item > a:hover::after,
    .main-menu > .menu-item > a:hover::after {
      width: 100%; } }

/**
 * Main menu item has children.
 */
.main-menu > .menu-item-has-children {
  position: relative; }
  .main-menu > .menu-item-has-children:hover .submenu-container {
    display: block; }

/**
 * Main menu current menu item and current page ancestor.
 */
@media only screen and (max-width: 1199px) {
  .top-menu > .current-menu-item > a,
  .main-menu > .current-menu-item > a,
  .main-menu > .current-page-ancestor > a {
    display: inline-flex; } }

.top-menu > .current-menu-item > a::after,
.main-menu > .current-menu-item > a::after,
.main-menu > .current-page-ancestor > a::after {
  width: 100%; }
  @media only screen and (max-width: 1199px) {
    .top-menu > .current-menu-item > a::after,
    .main-menu > .current-menu-item > a::after,
    .main-menu > .current-page-ancestor > a::after {
      bottom: 13px;
      background: white; } }

/**
 * Mobile menu settings.
 */
.mobile-menu {
  position: absolute;
  top: 89px;
  right: 0;
  bottom: 0;
  align-items: center;
  width: calc(100% - 50px);
  height: 100%;
  min-height: 100vh;
  transition: all 250ms ease;
  background: #315181;
  color: white;
  opacity: 0;
  z-index: -1;
  pointer-events: none; }
  @media only screen and (max-width: 599px) {
    .mobile-menu {
      top: 66px;
      width: calc(100% - 20px);
      padding: 0 20px; } }
  @media only screen and (min-width: 600px) and (max-width: 1199px) {
    .mobile-menu {
      align-items: flex-start; } }
  @media only screen and (min-width: 600px) and (max-width: 899px) {
    .mobile-menu {
      width: calc(100% - 60px);
      padding-right: 60px; } }
  @media only screen and (min-width: 900px) and (max-width: 1199px) {
    .mobile-menu {
      padding-right: 50px; } }
  @media only screen and (min-width: 1200px) {
    .mobile-menu {
      display: none; } }
  .mobile-menu .top-menu,
  .mobile-menu .main-menu {
    display: block; }
  .mobile-menu .top-menu a {
    margin: 10px 0 !important; }
    @media only screen and (max-width: 599px) {
      .mobile-menu .top-menu a {
        margin: 0 !important; } }
  .mobile-menu .menu-item {
    display: flex;
    justify-content: flex-end; }
    .mobile-menu .menu-item a {
      margin: 15px 0; }
      @media only screen and (max-width: 599px) {
        .mobile-menu .menu-item a {
          margin: 0; } }
  .mobile-menu.is-active {
    opacity: 1;
    z-index: 90;
    pointer-events: all; }

/**
 * Mobile menu content div.
 */
.mobile-menu__content {
  align-items: center; }
  @media only screen and (max-width: 599px) {
    .mobile-menu__content {
      flex-direction: column-reverse; } }
  @media only screen and (min-width: 600px) and (max-width: 1199px) {
    .mobile-menu__content {
      padding-top: 170px; } }

/**
 * Mobile menu inner.
 */
.mobile-menu__left,
.mobile-menu__right {
  width: auto; }
  @media only screen and (max-width: 599px) {
    .mobile-menu__left,
    .mobile-menu__right {
      display: flex;
      width: 100%; } }

/**
 * Right part of the mobile menu (tablet).
 */
.mobile-menu__right {
  margin-left: 100px;
  padding: 30px 0 30px 100px;
  border-left: 1px solid white; }
  @media only screen and (max-width: 599px) {
    .mobile-menu__right {
      position: relative;
      margin: 0 0 30px;
      padding: 0;
      border-left: 0; }
      .mobile-menu__right::after {
        position: absolute;
        right: 0;
        bottom: 0;
        left: 0;
        width: 100%;
        height: 1px;
        background: white;
        content: '';
        opacity: 0.5; } }

/* ==========================================================================
   Navigation
   ========================================================================== */
/**
 * Navigation main settings.
 */
@media only screen and (max-width: 599px) {
  .navigation__top,
  .navigation__bottom {
    margin: auto 0 auto auto; } }

@media only screen and (max-width: 599px) {
  .navigation__bottom {
    margin-top: 40px;
    padding-bottom: 30px; } }

/**
 * Navigation button.
 */
.navigation-button {
  position: relative;
  width: 50px;
  height: 38px; }
  @media only screen and (max-width: 599px) {
    .navigation-button {
      top: 6px;
      left: 5px; } }
  @media only screen and (min-width: 1200px) {
    .navigation-button {
      display: none; } }
  .navigation-button span {
    display: inline-block;
    position: absolute;
    right: 0;
    left: 0;
    width: 50px;
    height: 8px;
    margin: auto;
    background-color: #315181; }
    @media only screen and (max-width: 1199px) {
      .navigation-button span {
        width: 38px;
        height: 6px; } }
    .navigation-button span:nth-child(1) {
      top: -9px;
      transition: background-color 400ms, top 400ms 400ms, -webkit-transform 400ms 0s;
      transition: background-color 400ms, top 400ms 400ms, transform 400ms 0s;
      transition: background-color 400ms, top 400ms 400ms, transform 400ms 0s, -webkit-transform 400ms 0s;
      background: #b0b0b0; }
      @media only screen and (max-width: 1199px) {
        .navigation-button span:nth-child(1) {
          top: -5px; } }
    .navigation-button span:nth-child(2) {
      top: calc(50% - 14px);
      transition: background-color 400ms, opacity 0ms 400ms;
      opacity: 1; }
    .navigation-button span:nth-child(3) {
      top: calc(50% - 13px);
      bottom: 0;
      transition: background-color 400ms, bottom 400ms 400ms, -webkit-transform 400ms 0s;
      transition: background-color 400ms, bottom 400ms 400ms, transform 400ms 0s;
      transition: background-color 400ms, bottom 400ms 400ms, transform 400ms 0s, -webkit-transform 400ms 0s; }
      @media only screen and (max-width: 1199px) {
        .navigation-button span:nth-child(3) {
          top: calc(50% - 21px); } }
    .navigation-button span:nth-child(4) {
      bottom: 0;
      transition: background-color 400ms, bottom 400ms 400ms, opacity 250ms ease, -webkit-transform 400ms 0s;
      transition: background-color 400ms, bottom 400ms 400ms, transform 400ms 0s, opacity 250ms ease;
      transition: background-color 400ms, bottom 400ms 400ms, transform 400ms 0s, opacity 250ms ease, -webkit-transform 400ms 0s; }
      @media only screen and (max-width: 1199px) {
        .navigation-button span:nth-child(4) {
          bottom: 7px; } }
  .navigation-button.is-active span:nth-child(1) {
    top: calc(50% - 4px);
    -webkit-transform: rotate(-45deg);
            transform: rotate(-45deg);
    transition: background-color 400ms, top 400ms, -webkit-transform 400ms 400ms;
    transition: background-color 400ms, top 400ms, transform 400ms 400ms;
    transition: background-color 400ms, top 400ms, transform 400ms 400ms, -webkit-transform 400ms 400ms; }
    @media only screen and (max-width: 1199px) {
      .navigation-button.is-active span:nth-child(1) {
        top: calc(50% - 7px); } }
  .navigation-button.is-active span:nth-child(2) {
    opacity: 0; }
  .navigation-button.is-active span:nth-child(3) {
    bottom: calc(50% - 11px);
    -webkit-transform: rotate(45deg);
            transform: rotate(45deg);
    transition: background-color 400ms, bottom 400ms, -webkit-transform 400ms 400ms;
    transition: background-color 400ms, bottom 400ms, transform 400ms 400ms;
    transition: background-color 400ms, bottom 400ms, transform 400ms 400ms, -webkit-transform 400ms 400ms; }
    @media only screen and (max-width: 1199px) {
      .navigation-button.is-active span:nth-child(3) {
        top: calc(50% - 19px); } }
  .navigation-button.is-active span:nth-child(4) {
    transition: background-color 400ms, bottom 400ms, opacity 250ms ease, -webkit-transform 400ms 400ms;
    transition: background-color 400ms, bottom 400ms, transform 400ms 400ms, opacity 250ms ease;
    transition: background-color 400ms, bottom 400ms, transform 400ms 400ms, opacity 250ms ease, -webkit-transform 400ms 400ms;
    opacity: 0; }

/* ==========================================================================
   Heading
   ========================================================================== */
/**
 * Main settings.
 */
.logo img {
  width: auto;
  height: 46px; }
  @media only screen and (max-width: 599px) {
    .logo img {
      height: 36px; } }
  @media only screen and (min-width: 600px) and (max-width: 1199px) {
    .logo img {
      height: 36px; } }

/**
 * Desktop logo.
 */
.logo--desktop {
  display: none; }
  @media only screen and (min-width: 600px) {
    .logo--desktop {
      display: block; } }

/**
 * Mobile logo.
 */
.logo--mobile {
  display: none; }
  @media only screen and (max-width: 599px) {
    .logo--mobile {
      display: block; } }

/* ==========================================================================
   Subjects
   ========================================================================== */
/**
 * Main.
 */
.subjects {
  padding-top: 100px;
  padding-bottom: 100px;
  background: white; }
  @media only screen and (max-width: 899px) {
    .subjects {
      padding-top: 50px;
      padding-bottom: 50px; } }
  .subjects .col {
    margin-bottom: 20px; }

/**
 * Title.
 */
.subjects__title {
  margin-bottom: 50px; }
  @media only screen and (max-width: 899px) {
    .subjects__title {
      margin-bottom: 30px; } }

/**
 * Subject row.
 */
.subjects__row {
  position: relative;
  margin: 0 -10px; }

/**
 * Single subject.
 */
.subject {
  width: calc(100% / 3 - 20px);
  margin: 10px;
  text-align: center;
  box-shadow: 0 0 20px 0 rgba(49, 81, 130, 0.15);
  transition: box-shadow 250ms ease;
  cursor: pointer; }
  @media only screen and (max-width: 899px) {
    .subject {
      display: flex;
      position: relative;
      flex-wrap: wrap;
      align-items: center;
      width: 100%;
      height: auto;
      min-height: 200px;
      margin-bottom: 10px; } }
  @media only screen and (min-width: 900px) and (max-width: 1199px) {
    .subject {
      width: calc(100% / 2 - 20px); } }
  @media only screen and (min-width: 1200px) {
    .subject:hover {
      box-shadow: 0 0 20px 0 rgba(49, 81, 130, 0.36); } }

/**
 * Question.
 */
.subject__question {
  font-size: 25px;
  font-size: 2.5rem;
  line-height: 1.16em;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  min-height: 250px;
  padding: 30px 20px;
  font-family: "Unna", serif; }
  @media only screen and (max-width: 899px) {
    .subject__question {
      font-size: 20px;
      font-size: 2rem;
      line-height: 1.15em;
      display: block;
      height: auto;
      min-height: 0;
      padding: 20px 20px 30px;
      pointer-events: none; } }

/**
 * Question in the answer div.
 */
.subject__question--small {
  font-size: 25px;
  font-size: 2.5rem;
  line-height: 1.16em;
  margin-bottom: 50px;
  font-family: "Unna", serif; }
  @media only screen and (max-width: 899px) {
    .subject__question--small {
      display: none; } }

/**
 * Answer.
 */
.subject__answer {
  display: flex;
  position: absolute;
  top: -20%;
  right: 0;
  bottom: 0;
  left: 0;
  align-content: center;
  width: 100%;
  max-width: 820px;
  height: 70%;
  max-height: 430px;
  margin: auto;
  padding: 100px;
  transition: all 250ms ease;
  border-radius: 5px;
  background: #f0f6ff;
  box-shadow: 0 0 20px 0 rgba(49, 81, 130, 0.15);
  opacity: 0;
  pointer-events: none; }
  @media only screen and (max-width: 899px) {
    .subject__answer {
      display: block;
      height: auto;
      max-height: 0;
      padding: 0;
      box-shadow: none;
      z-index: 99;
      pointer-events: all; } }
  .subject__answer.is-active {
    top: 0;
    opacity: 1;
    pointer-events: all; }
    @media only screen and (max-width: 899px) {
      .subject__answer.is-active {
        position: static;
        max-height: 1000px;
        margin-bottom: 65px;
        padding: 20px;
        opacity: 1; } }

/**
 * Close subject button.
 */
.close-subject {
  position: absolute;
  top: 20px;
  right: 20px; }
  @media only screen and (max-width: 899px) {
    .close-subject {
      display: none; } }
  .close-subject svg {
    width: 30px;
    height: 30px;
    color: #315181; }

/**
 * Toggle for the answer on tablet-portrait and lower.
 */
.toggle-answer {
  position: absolute;
  bottom: 10px;
  width: 100%;
  padding: 10px;
  letter-spacing: 0.42px;
  text-decoration: underline;
  z-index: 99; }
  @media only screen and (min-width: 1200px) {
    .toggle-answer {
      display: none; } }
  @media only screen and (min-width: 900px) and (max-width: 1199px) {
    .toggle-answer {
      position: static;
      margin-top: -50px; } }
  .toggle-answer.tablet-landscape {
    display: none; }
    @media only screen and (min-width: 900px) and (max-width: 1199px) {
      .toggle-answer.tablet-landscape {
        display: block; } }
  .toggle-answer.tablet-portrait-down {
    display: none; }
    @media only screen and (max-width: 899px) {
      .toggle-answer.tablet-portrait-down {
        display: block; } }

/* ==========================================================================
   Teasers
   ========================================================================== */
/**
 * Main.
 */
.teasers {
  padding-top: 100px;
  padding-bottom: 100px;
  background: white; }
  @media only screen and (max-width: 899px) {
    .teasers {
      padding-top: 50px;
      padding-bottom: 50px; } }
  .teasers[data-teaser-amount='3'] .teaser {
    width: calc(100% / 3 - 20px); }
  .teasers[data-teaser-amount='2'] .teaser {
    width: calc(100% / 2 - 20px); }
  .teasers.background-color-white .teaser:hover .teaser__content {
    background: #315181;
    color: white; }
  .teasers.background-color-white .teaser__content {
    background: white; }
  .teasers.background-color-blue .teaser:hover .teaser__content {
    background: #f0f6ff;
    color: #315181; }
  .teasers.background-color-blue .teaser__content {
    padding: 30px 20px 0;
    background: #315181;
    color: white; }

/**
 * Different style settings for different widths.
 */
@media only screen and (max-width: 1199px) {
  .style--small.background-color-blue .teaser__content,
  .style--wide.background-color-blue .teaser__content {
    background: #f0f6ff;
    color: #315181; } }

@media only screen and (max-width: 1199px) {
  .style--small.background-color-white .teaser__content,
  .style--wide.background-color-white .teaser__content {
    background: white;
    color: #315181; } }

/**
 * Style small.
 */
@media only screen and (max-width: 1199px) {
  .style--small .teaser {
    transition: all 0ms ease; } }

@media only screen and (min-width: 1200px) {
  .style--small .teaser:hover .teaser__content {
    top: initial;
    bottom: 0; } }

@media only screen and (max-width: 1199px) {
  .style--small .teaser__content {
    top: calc(100% - 90px);
    bottom: initial; } }

/**
 * Style wide.
 */
@media only screen and (max-width: 1199px) {
  .style--wide .teaser {
    flex-wrap: wrap;
    height: auto; } }

@media only screen and (max-width: 1199px) {
  .style--wide .teaser__content {
    position: static;
    height: 100%; } }

/**
 * Title.
 */
.teasers__title {
  margin-bottom: 50px;
  text-align: center; }

/**
 * Teasers row.
 */
.teasers__row {
  width: 100%;
  margin: -10px; }

/**
 * Single teaser.
 */
.teaser {
  display: flex;
  position: relative;
  width: calc(100% / 4 - 20px);
  height: auto;
  min-height: 400px;
  margin: 10px;
  box-shadow: 0 0 20px 0 rgba(49, 81, 130, 0.15);
  overflow: hidden; }
  @media (max-width: 760px) {
    .teaser {
      width: 100% !important; } }
  @media only screen and (min-width: 600px) and (max-width: 1199px) {
    .teaser {
      width: calc(100% / 2 - 20px);
      height: 400px; } }
  @media only screen and (min-width: 1200px) {
    .teaser:hover .teaser__content {
      top: initial;
      bottom: 0; } }

/**
 * Teaser image.
 */
.teaser__image {
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100%; }
  .teaser__image img {
    width: 100%;
    height: 100%; }

/**
 * Teaser content.
 */
.teaser__content {
  position: absolute;
  top: calc(100% - 90px);
  bottom: -100%;
  left: 0;
  width: 100%;
  padding: 30px 20px;
  transition: all 500ms ease;
  text-align: center; }
  .teaser__content h3 {
    margin-bottom: 30px; }
  .teaser__content img {
    display: inline-flex;
    width: 30px;
    height: 30px;
    margin-top: 20px; }
  .teaser__content .link {
    margin-top: 10px; }

/* ==========================================================================
   Text/image
   ========================================================================== */
/**
 * Main element.
 */
.text-image {
  position: relative;
  height: 100vh;
  min-height: 100vh;
  background: white;
  letter-spacing: 0.42px; }
  @media only screen and (max-width: 899px) {
    .text-image {
      height: auto;
      min-height: 0;
      padding-top: 50px; } }
  @media only screen and (min-width: 900px) and (max-width: 1199px) {
    .text-image {
      height: auto;
      min-height: 600px; } }
  .text-image .wrapper {
    position: static; }

/**
 * Text.
 */
@media only screen and (max-width: 899px) {
  .text-image__title {
    display: block;
    width: 100%;
    max-width: 370px;
    margin: auto; } }

.text-image__text {
  width: 40%;
  max-width: 395px; }
  @media only screen and (max-width: 899px) {
    .text-image__text {
      width: 100%;
      max-width: 100%;
      margin-bottom: 30px;
      text-align: center; } }
  @media only screen and (min-width: 900px) and (max-width: 1199px) {
    .text-image__text {
      width: 45%;
      max-width: 350px; } }
  .text-image__text .cms-output {
    width: 100%;
    margin-top: 50px; }
    @media only screen and (max-width: 899px) {
      .text-image__text .cms-output {
        max-width: 480px;
        margin: 30px auto auto; } }

/**
 * Image.
 */
.text-image__image {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  width: 60%; }
  @media only screen and (max-width: 599px) {
    .text-image__image {
      width: calc(100% + 40px);
      margin: 0 -20px; } }
  @media only screen and (min-width: 600px) and (max-width: 899px) {
    .text-image__image {
      width: calc(100% + 120px);
      margin: 0 -60px; } }
  @media only screen and (max-width: 899px) {
    .text-image__image {
      position: static;
      height: 300px; } }
  @media only screen and (min-width: 900px) and (max-width: 1199px) {
    .text-image__image {
      width: 55%; } }
  .text-image__image img {
    width: 100%;
    height: 100%; }

/**
 * Addtional rules.
 */
@media only screen and (max-width: 599px) {
  .mobile-menu + .text-image {
    padding-top: 100px; } }

@media only screen and (min-width: 600px) and (max-width: 899px) {
  .mobile-menu + .text-image {
    padding-top: 120px; } }

/* ==========================================================================
   Quote
   ========================================================================== */
/**
 * Main.
 */
.quote {
  padding-top: 100px;
  padding-bottom: 100px;
  width: 100%;
  max-width: 820px;
  margin: auto;
  text-align: center; }
  @media only screen and (max-width: 899px) {
    .quote {
      padding-top: 50px;
      padding-bottom: 50px; } }
  .quote .cms-output {
    position: relative;
    width: 100%;
    max-width: 615px;
    margin: 50px auto 20px;
    padding: 0 10px;
    font-style: italic; }
    .quote .cms-output::before {
      font-size: 90px;
      font-size: 9rem;
      line-height: 0.77778em;
      display: inline-block;
      position: absolute;
      top: 0;
      left: -30px;
      font-family: Arial, Helvetica Neue, Helvetica, sans-serif;
      content: '“'; }
      @media only screen and (max-width: 599px) {
        .quote .cms-output::before {
          left: -20px; } }
    .quote .cms-output::after {
      font-size: 90px;
      font-size: 9rem;
      line-height: 0.77778em;
      display: inline-block;
      position: absolute;
      right: 0;
      bottom: -40px;
      font-family: Arial, Helvetica Neue, Helvetica, sans-serif;
      content: '”'; }
      @media only screen and (max-width: 599px) {
        .quote .cms-output::after {
          right: 0; } }

/* ==========================================================================
   USP's
   ========================================================================== */
/**
 * USP's.
 */
.usps {
  padding-top: 100px;
  padding-bottom: 100px;
  background: #f0f6ff; }
  @media only screen and (max-width: 899px) {
    .usps {
      padding-top: 50px;
      padding-bottom: 50px; } }
  @media only screen and (min-width: 600px) and (max-width: 1199px) {
    .usps .wrapper {
      padding: 0; } }
  .usps.background-light {
    background: #f0f6ff;
    color: #315181; }
  .usps.background-dark {
    background: #315181;
    color: #f0f6ff; }
    .usps.background-dark .usps__title {
      color: #f0f6ff; }
      .usps.background-dark .usps__title::before {
        background: #f0f6ff; }
  .usps .owl-dots {
    display: flex;
    justify-content: center;
    width: 100%;
    margin-top: 10px; }
  .usps .owl-dot {
    width: 11px;
    height: 11px;
    margin: 0 2px;
    border: 1px solid #b0b0b0 !important;
    border-radius: 100%; }
    .usps .owl-dot.active {
      background: #b0b0b0; }

/**
 * Main title.
 */
.usps__title {
  display: block;
  margin: auto;
  text-align: center; }

/**
 * Loop.
 */
.usps__loop {
  position: relative;
  margin-top: 50px;
  overflow: hidden; }
  @media only screen and (max-width: 599px) {
    .usps__loop {
      margin-top: 30px; } }
  @media only screen and (min-width: 600px) and (max-width: 1199px) {
    .usps__loop {
      padding-left: 80px; } }

/**
 * Single USP.
 */
.usp {
  width: calc(100% / 3);
  max-width: 320px;
  text-align: center; }
  @media only screen and (max-width: 599px) {
    .usp {
      width: 100%;
      max-width: 100%; } }
  @media only screen and (min-width: 600px) and (max-width: 1199px) {
    .usp {
      width: 100%;
      margin-right: 40px;
      margin-left: 50px; } }

/**
 * Single USP title.
 */
.usp__title {
  margin-bottom: 10px; }

/* ==========================================================================
   Color
   ========================================================================== */
/**
 * Color utility classes.
 */
/**
       * `color` black-100 color utility.
       */
.color-black-100 {
  color: black; }

/**
       * `background-color` black-100 color utility.
       */
.background-color-black-100 {
  background-color: black; }

/**
       * `color` #3d3d3d-200 color utility.
       */
.color-black-200 {
  color: #3d3d3d; }

/**
       * `background-color` #3d3d3d-200 color utility.
       */
.background-color-black-200 {
  background-color: #3d3d3d; }

/**
       * `color` white-100 color utility.
       */
.color-white-100 {
  color: white; }

/**
       * `background-color` white-100 color utility.
       */
.background-color-white-100 {
  background-color: white; }

/**
       * `color` #315181-100 color utility.
       */
.color-blue-100 {
  color: #315181; }

/**
       * `background-color` #315181-100 color utility.
       */
.background-color-blue-100 {
  background-color: #315181; }

/**
       * `color` #f0f6ff-200 color utility.
       */
.color-blue-200 {
  color: #f0f6ff; }

/**
       * `background-color` #f0f6ff-200 color utility.
       */
.background-color-blue-200 {
  background-color: #f0f6ff; }

/**
       * `color` #b0b0b0-200 color utility.
       */
.color-grey-200 {
  color: #b0b0b0; }

/**
       * `background-color` #b0b0b0-200 color utility.
       */
.background-color-grey-200 {
  background-color: #b0b0b0; }

/**
       * `color` #f7f7f7-300 color utility.
       */
.color-grey-300 {
  color: #f7f7f7; }

/**
       * `background-color` #f7f7f7-300 color utility.
       */
.background-color-grey-300 {
  background-color: #f7f7f7; }

/**
       * `color` #ff5500-200 color utility.
       */
.color-orange-200 {
  color: #ff5500; }

/**
       * `background-color` #ff5500-200 color utility.
       */
.background-color-orange-200 {
  background-color: #ff5500; }

/* ==========================================================================
   Object Fit
   ========================================================================== */
/**
 * Object fit.
 *
 * 1. Font family polyfill with (https://github.com/bfred-it/object-fit-images).
 */
/**
   * `object-fit` fill utility class.
   */
.fill {
  font-family: "object-fit: fill;";
  /* 1 */
  -o-object-fit: fill;
     object-fit: fill; }

/**
   * `object-fit` contain utility class.
   */
.contain {
  font-family: "object-fit: contain;";
  /* 1 */
  -o-object-fit: contain;
     object-fit: contain; }

/**
   * `object-fit` cover utility class.
   */
.cover {
  font-family: "object-fit: cover;";
  /* 1 */
  -o-object-fit: cover;
     object-fit: cover; }

/**
   * `object-fit` none utility class.
   */
.none {
  font-family: "object-fit: none;";
  /* 1 */
  -o-object-fit: none;
     object-fit: none; }

/**
   * `object-fit` scale-down utility class.
   */
.scale-down {
  font-family: "object-fit: scale-down;";
  /* 1 */
  -o-object-fit: scale-down;
     object-fit: scale-down; }

/* ==========================================================================
   Position
   ========================================================================== */
/**
 * Position utility class.
 */
.static {
  position: static; }

.relative {
  position: relative; }

.absolute {
  position: absolute; }

.fixed {
  position: fixed; }

.sticky {
  position: -webkit-sticky;
  position: sticky; }

/* ==========================================================================
   Text
   ========================================================================== */
/**
 * Font family utility classes.
 */
.text-xs-default {
  font-family: "Arial"; }

.text-sm-default {
  font-family: "Arial"; }

.text-md-default {
  font-family: "Arial"; }

.text-lg-default {
  font-family: "Arial"; }

.text-xl-default {
  font-family: "Arial"; }

/**
 * Text size utility classes.
 */
.text-xs-h1 {
  font-size: 60px;
  font-size: 6rem;
  line-height: 1.08333em; }

.text-xs-h2 {
  font-size: 50px;
  font-size: 5rem;
  line-height: 1.3em; }

.text-xs-h3 {
  font-size: 30px;
  font-size: 3rem;
  line-height: 1.13333em; }

.text-xs-h4 {
  font-size: 22px;
  font-size: 2.2rem;
  line-height: 1.45455em; }

.text-xs-h5 {
  font-size: 20px;
  font-size: 2rem;
  line-height: 1.6em; }

.text-xs-h6 {
  font-size: 18px;
  font-size: 1.8rem;
  line-height: 1.77778em; }

.text-xs-p {
  font-size: 15px;
  font-size: 1.5rem;
  line-height: 2em; }

.text-sm-h1 {
  font-size: 60px;
  font-size: 6rem;
  line-height: 1.08333em; }

.text-sm-h2 {
  font-size: 50px;
  font-size: 5rem;
  line-height: 1.3em; }

.text-sm-h3 {
  font-size: 30px;
  font-size: 3rem;
  line-height: 1.13333em; }

.text-sm-h4 {
  font-size: 22px;
  font-size: 2.2rem;
  line-height: 1.45455em; }

.text-sm-h5 {
  font-size: 20px;
  font-size: 2rem;
  line-height: 1.6em; }

.text-sm-h6 {
  font-size: 18px;
  font-size: 1.8rem;
  line-height: 1.77778em; }

.text-sm-p {
  font-size: 15px;
  font-size: 1.5rem;
  line-height: 2em; }

.text-md-h1 {
  font-size: 60px;
  font-size: 6rem;
  line-height: 1.08333em; }

.text-md-h2 {
  font-size: 50px;
  font-size: 5rem;
  line-height: 1.3em; }

.text-md-h3 {
  font-size: 30px;
  font-size: 3rem;
  line-height: 1.13333em; }

.text-md-h4 {
  font-size: 22px;
  font-size: 2.2rem;
  line-height: 1.45455em; }

.text-md-h5 {
  font-size: 20px;
  font-size: 2rem;
  line-height: 1.6em; }

.text-md-h6 {
  font-size: 18px;
  font-size: 1.8rem;
  line-height: 1.77778em; }

.text-md-p {
  font-size: 15px;
  font-size: 1.5rem;
  line-height: 2em; }

.text-lg-h1 {
  font-size: 60px;
  font-size: 6rem;
  line-height: 1.08333em; }

.text-lg-h2 {
  font-size: 50px;
  font-size: 5rem;
  line-height: 1.3em; }

.text-lg-h3 {
  font-size: 30px;
  font-size: 3rem;
  line-height: 1.13333em; }

.text-lg-h4 {
  font-size: 22px;
  font-size: 2.2rem;
  line-height: 1.45455em; }

.text-lg-h5 {
  font-size: 20px;
  font-size: 2rem;
  line-height: 1.6em; }

.text-lg-h6 {
  font-size: 18px;
  font-size: 1.8rem;
  line-height: 1.77778em; }

.text-lg-p {
  font-size: 15px;
  font-size: 1.5rem;
  line-height: 2em; }

.text-xl-h1 {
  font-size: 60px;
  font-size: 6rem;
  line-height: 1.08333em; }

.text-xl-h2 {
  font-size: 50px;
  font-size: 5rem;
  line-height: 1.3em; }

.text-xl-h3 {
  font-size: 30px;
  font-size: 3rem;
  line-height: 1.13333em; }

.text-xl-h4 {
  font-size: 22px;
  font-size: 2.2rem;
  line-height: 1.45455em; }

.text-xl-h5 {
  font-size: 20px;
  font-size: 2rem;
  line-height: 1.6em; }

.text-xl-h6 {
  font-size: 18px;
  font-size: 1.8rem;
  line-height: 1.77778em; }

.text-xl-p {
  font-size: 15px;
  font-size: 1.5rem;
  line-height: 2em; }

/**
 * Text alignment utility classes.
 */
.text-xs-left {
  text-align: left; }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

/**
 * Font weight utility classes.
 *
 * 1. Multiply looped integer by 100 for correct font weight value.
 */
.text-xs-100 {
  font-weight: 100; }

.text-xs-200 {
  font-weight: 200; }

.text-xs-300 {
  font-weight: 300; }

.text-xs-400 {
  font-weight: 400; }

.text-xs-500 {
  font-weight: 500; }

.text-xs-600 {
  font-weight: 600; }

.text-xs-700 {
  font-weight: 700; }

.text-xs-800 {
  font-weight: 800; }

.text-xs-900 {
  font-weight: 900; }

.text-sm-100 {
  font-weight: 100; }

.text-sm-200 {
  font-weight: 200; }

.text-sm-300 {
  font-weight: 300; }

.text-sm-400 {
  font-weight: 400; }

.text-sm-500 {
  font-weight: 500; }

.text-sm-600 {
  font-weight: 600; }

.text-sm-700 {
  font-weight: 700; }

.text-sm-800 {
  font-weight: 800; }

.text-sm-900 {
  font-weight: 900; }

.text-md-100 {
  font-weight: 100; }

.text-md-200 {
  font-weight: 200; }

.text-md-300 {
  font-weight: 300; }

.text-md-400 {
  font-weight: 400; }

.text-md-500 {
  font-weight: 500; }

.text-md-600 {
  font-weight: 600; }

.text-md-700 {
  font-weight: 700; }

.text-md-800 {
  font-weight: 800; }

.text-md-900 {
  font-weight: 900; }

.text-lg-100 {
  font-weight: 100; }

.text-lg-200 {
  font-weight: 200; }

.text-lg-300 {
  font-weight: 300; }

.text-lg-400 {
  font-weight: 400; }

.text-lg-500 {
  font-weight: 500; }

.text-lg-600 {
  font-weight: 600; }

.text-lg-700 {
  font-weight: 700; }

.text-lg-800 {
  font-weight: 800; }

.text-lg-900 {
  font-weight: 900; }

.text-xl-100 {
  font-weight: 100; }

.text-xl-200 {
  font-weight: 200; }

.text-xl-300 {
  font-weight: 300; }

.text-xl-400 {
  font-weight: 400; }

.text-xl-500 {
  font-weight: 500; }

.text-xl-600 {
  font-weight: 600; }

.text-xl-700 {
  font-weight: 700; }

.text-xl-800 {
  font-weight: 800; }

.text-xl-900 {
  font-weight: 900; }

/**
 * Text transform uitlity classes.
 */
.text-xs-capitalize {
  text-transform: capitalize; }

.text-xs-uppercase {
  text-transform: uppercase; }

.text-xs-lowercase {
  text-transform: lowercase; }

.text-xs-none {
  text-transform: none; }

.text-xs-full-width {
  text-transform: full-width; }

.text-sm-capitalize {
  text-transform: capitalize; }

.text-sm-uppercase {
  text-transform: uppercase; }

.text-sm-lowercase {
  text-transform: lowercase; }

.text-sm-none {
  text-transform: none; }

.text-sm-full-width {
  text-transform: full-width; }

.text-md-capitalize {
  text-transform: capitalize; }

.text-md-uppercase {
  text-transform: uppercase; }

.text-md-lowercase {
  text-transform: lowercase; }

.text-md-none {
  text-transform: none; }

.text-md-full-width {
  text-transform: full-width; }

.text-lg-capitalize {
  text-transform: capitalize; }

.text-lg-uppercase {
  text-transform: uppercase; }

.text-lg-lowercase {
  text-transform: lowercase; }

.text-lg-none {
  text-transform: none; }

.text-lg-full-width {
  text-transform: full-width; }

.text-xl-capitalize {
  text-transform: capitalize; }

.text-xl-uppercase {
  text-transform: uppercase; }

.text-xl-lowercase {
  text-transform: lowercase; }

.text-xl-none {
  text-transform: none; }

.text-xl-full-width {
  text-transform: full-width; }

/* ==========================================================================
   Vertical Rhythm
   ========================================================================== */
.vr-0 {
  margin-bottom: 0px; }

.vr-8 {
  margin-bottom: 8px; }

.vr-16 {
  margin-bottom: 16px; }

.vr-24 {
  margin-bottom: 24px; }

.vr-32 {
  margin-bottom: 32px; }

.vr-40 {
  margin-bottom: 40px; }

.vr-48 {
  margin-bottom: 48px; }

.vr-56 {
  margin-bottom: 56px; }

.vr-64 {
  margin-bottom: 64px; }

.vr-72 {
  margin-bottom: 72px; }

.vr-80 {
  margin-bottom: 80px; }

/* ==========================================================================
   Z-index
   ========================================================================== */
/**
 * Utility classes for manipulating stacking order in HTML.
 */
.z-index-0 {
  z-index: 0; }

.z-index-1 {
  z-index: 10; }

.z-index-2 {
  z-index: 20; }

.z-index-3 {
  z-index: 30; }

.z-index-4 {
  z-index: 40; }

.z-index-5 {
  z-index: 50; }

.z-index-6 {
  z-index: 60; }

.z-index-7 {
  z-index: 70; }

.z-index-8 {
  z-index: 80; }

.z-index-9 {
  z-index: 90; }

.z-index-10 {
  z-index: 100; }

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIm1haW4uY3NzIiwiLi4vdmVuZG9yL25vcm1hbGl6ZS5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL293bC5jYXJvdXNlbC9zcmMvc2Nzcy9fY29yZS5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL293bC5jYXJvdXNlbC9zcmMvc2Nzcy9fYW5pbWF0ZS5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL293bC5jYXJvdXNlbC9zcmMvc2Nzcy9fYXV0b2hlaWdodC5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL293bC5jYXJvdXNlbC9zcmMvc2Nzcy9fbGF6eWxvYWQuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9vd2wuY2Fyb3VzZWwvc3JjL3Njc3MvX3ZpZGVvLnNjc3MiLCJ0b29scy9fYW9zLnNjc3MiLCJnZW5lcmljL19iYXNlLnNjc3MiLCJ0b29scy9fbWl4aW5zLnNjc3MiLCJzZXR0aW5ncy9fdHlwb2dyYXBoeS5zY3NzIiwidG9vbHMvX2Z1bmN0aW9ucy5zY3NzIiwic2V0dGluZ3MvX2NvbG9yLnNjc3MiLCJnZW5lcmljL19yZXNldC5zY3NzIiwib2JqZWN0cy9fYnV0dG9ucy5zY3NzIiwib2JqZWN0cy9fY29udGFpbmVyLnNjc3MiLCJzZXR0aW5ncy9fZGVmaW5pdGlvbnMuc2NzcyIsIm9iamVjdHMvX2NvbnRlbnQtY29uc3RyYWludC5zY3NzIiwib2JqZWN0cy9fZmxleC5zY3NzIiwib2JqZWN0cy9faGVhZGluZy5zY3NzIiwib2JqZWN0cy9fbGlua3Muc2NzcyIsIm9iamVjdHMvX3NlY3Rpb24uc2NzcyIsIm9iamVjdHMvX3dyYXBwZXIuc2NzcyIsImNvbXBvbmVudHMvX2Ntcy1vdXRwdXQuc2NzcyIsImNvbXBvbmVudHMvX2Zvcm0uc2NzcyIsImNvbXBvbmVudHMvX2RlZmF1bHQuc2NzcyIsImNvbXBvbmVudHMvX2Zvb3Rlci5zY3NzIiwiY29tcG9uZW50cy9faGVhZGVyLnNjc3MiLCJjb21wb25lbnRzL19tYWluLW1lbnUuc2NzcyIsImNvbXBvbmVudHMvX25hdmlnYXRpb24uc2NzcyIsImNvbXBvbmVudHMvX2xvZ28uc2NzcyIsImNvbXBvbmVudHMvX3N1YmplY3RzLnNjc3MiLCJjb21wb25lbnRzL190ZWFzZXJzLnNjc3MiLCJjb21wb25lbnRzL190ZXh0LWltYWdlLnNjc3MiLCJjb21wb25lbnRzL19xdW90ZS5zY3NzIiwiY29tcG9uZW50cy9fdXNwcy5zY3NzIiwidXRpbGl0aWVzL19jb2xvci5zY3NzIiwidXRpbGl0aWVzL19vYmplY3QtZml0LnNjc3MiLCJ1dGlsaXRpZXMvX3Bvc2l0aW9uLnNjc3MiLCJ1dGlsaXRpZXMvX3RleHQuc2NzcyIsInV0aWxpdGllcy9fdmVydGljYWwtcmh5dGhtLnNjc3MiLCJ1dGlsaXRpZXMvX3otaW5kZXguc2NzcyIsInNldHRpbmdzL196LWluZGV4LnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsaUJBQWlCO0FDQWpCLDRFQUE0RTtBQUU1RTtnRkFDZ0Y7QUFFaEY7OztHQUdHO0FBRUg7RUFDRSxrQkFBaUI7RUFBRSxPQUFPO0VBQzFCLCtCQUE4QjtFQUFFLE9BQU8sRUFDeEM7O0FBRUQ7Z0ZBQ2dGO0FBRWhGOztHQUVHO0FBRUg7RUFDRSxVQUFTLEVBQ1Y7O0FBRUQ7O0dBRUc7QUFFSDtFQUNFLGVBQWMsRUFDZjs7QUFFRDs7O0dBR0c7QUFFSDtFQUNFLGVBQWM7RUFDZCxpQkFBZ0IsRUFDakI7O0FBRUQ7Z0ZBQ2dGO0FBRWhGOzs7R0FHRztBQUVIO0VBQ0Usd0JBQXVCO0VBQUUsT0FBTztFQUNoQyxVQUFTO0VBQUUsT0FBTztFQUNsQixrQkFBaUI7RUFBRSxPQUFPLEVBQzNCOztBQUVEOzs7R0FHRztBQUVIO0VBQ0Usa0NBQWlDO0VBQUUsT0FBTztFQUMxQyxlQUFjO0VBQUUsT0FBTyxFQUN4Qjs7QUFFRDtnRkFDZ0Y7QUFFaEY7O0dBRUc7QUFFSDtFQUNFLDhCQUE2QixFQUM5Qjs7QUFFRDs7O0dBR0c7QUFFSDtFQUNFLG9CQUFtQjtFQUFFLE9BQU87RUFDNUIsMkJBQTBCO0VBQUUs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RSx5QkFDRixFQUFDOztBUHNkRDs7RU9sZEUsb0JBQ0YsRUFBQzs7QVBxZEQ7O0VPamRFLHNCQUNGLEVBQUM7O0FQb2REOztFT2hkRSwwQkFDRixFQUFDOztBUG1kRDs7RU8vY0Usb0JBQ0YsRUFBQzs7QVBrZEQ7O0VPOWNFLHVCQUNGLEVBQUM7O0FQaWREOztFTzdjRSx5QkFDRixFQUFDOztBUGdkRDs7RU81Y0Usb0JBQ0YsRUFBQzs7QVArY0Q7O0VPM2NFLHNCQUNGLEVBQUM7O0FQOGNEOztFTzFjRSwwQkFDRixFQUFDOztBUDZjRDs7RU96Y0Usb0JBQ0YsRUFBQzs7QVA0Y0Q7O0VPeGNFLHVCQUNGLEVBQUM7O0FQMmNEOztFT3ZjRSx5QkFDRixFQUFDOztBUDBjRDs7RU90Y0Usb0JBQ0YsRUFBQzs7QVB5Y0Q7O0VPcmNFLHNCQUNGLEVBQUM7O0FQd2NEOztFT3BjRSwwQkFDRixFQUFDOztBUHVjRDs7RU9uY0Usb0JBQ0YsRUFBQzs7QVBzY0Q7O0VPbGNFLHVCQUNGLEVBQUM7O0FQcWNEOztFT2pjRSx5QkFDRixFQUFDOztBUG9jRDs7RU9oY0Usb0JBQ0YsRUFBQzs7QVBtY0Q7O0VPL2JFLHNCQUNGLEVBQUM7O0FQa2NEOztFTzliRSwwQkFDRixFQUFDOztBUGljRDs7RU83YkUsb0JBQ0YsRUFBQzs7QVBnY0Q7O0VPNWJFLHVCQUNGLEVBQUM7O0FQK2JEOztFTzNiRSx5QkFDRixFQUFDOztBUDhiRDs7RU8xYkUsb0JBQ0YsRUFBQzs7QVA2YkQ7O0VPemJFLHNCQUNGLEVBQUM7O0FQNGJEOztFT3hiRSwwQkFDRixFQUFDOztBUDJiRDs7RU92YkUsb0JBQ0YsRUFBQzs7QVAwYkQ7O0VPdGJFLHVCQUNGLEVBQUM7O0FQeWJEOztFT3JiRSx5QkFDRixFQUFDOztBUHdiRDs7RU9wYkUsb0JBQ0YsRUFBQzs7QVB1YkQ7O0VPbmJFLHNCQUNGLEVBQUM7O0FQc2JEOztFT2xiRSwwQkFDRixFQUFDOztBUHFiRDs7RU9qYkUsb0JBQ0YsRUFBQzs7QVBvYkQ7O0VPaGJFLHVCQUNGLEVBQUM7O0FQbWJEOztFTy9hRSx5QkFDRixFQUFDOztBUGtiRDs7RU85YUUsb0JBQ0YsRUFBQzs7QVBpYkQ7O0VPN2FFLHNCQUNGLEVBQUM7O0FQZ2JEOztFTzVhRSwwQkFDRixFQUFDOztBUCthRDs7RU8zYUUsb0JBQ0YsRUFBQzs7QVA4YUQ7O0VPMWFFLHVCQUNGLEVBQUM7O0FQNmFEOztFT3phRSx3QkFDRixFQUFDOztBUDRhRDs7RU94YUUsb0JBQ0YsRUFBQzs7QVAyYUQ7O0VPdmFFLHFCQUNGLEVBQUM7O0FQMGFEOztFT3RhRSwyQkFDRixFQUFDOztBUHlhRDs7RU9yYUUsb0JBQ0YsRUFBQzs7QVB3YUQ7O0VPcGFFLHdCQUNGLEVBQUM7O0FQdWFEOztFT25hRSwwQkFDRixFQUFDOztBUHNhRDs7RU9sYUUsb0JBQ0YsRUFBQzs7QVBxYUQ7O0VPamFFLHVCQUNGLEVBQUM7O0FQb2FEOztFT2hhRSwyQkFDRixFQUFDOztBUG1hRDs7RU8vWkUsb0JBQ0YsRUFBQzs7QVBrYUQ7O0VPOVpFLHdCQUNGLEVBQUM7O0FQaWFEOztFTzdaRSwwQkFDRixFQUFDOztBUGdhRDs7RU81WkUsb0JBQ0YsRUFBQzs7QVArWkQ7O0VPM1pFLHVCQUNGLEVBQUM7O0FQOFpEOztFTzFaRSwyQkFDRixFQUFDOztBUDZaRDs7RU96WkUsb0JBQ0YsRUFBQzs7QVA0WkQ7O0VPeFpFLHdCQUNGLEVBQUM7O0FQMlpEOztFT3ZaRSwwQkFDRixFQUFDOztBUDBaRDs7RU90WkUsb0JBQ0YsRUFBQzs7QVB5WkQ7O0VPclpFLHVCQUNGLEVBQUM7O0FQd1pEOztFT3BaRSwyQkFDRixFQUFDOztBUHVaRDs7RU9uWkUsb0JBQ0YsRUFBQzs7QVBzWkQ7O0VPbFpFLHdCQUNGLEVBQUM7O0FQcVpEOztFT2paRSwwQkFDRixFQUFDOztBUG9aRDs7RU9oWkUsb0JBQ0YsRUFBQzs7QVBtWkQ7O0VPL1lFLHVCQUNGLEVBQUM7O0FQa1pEOztFTzlZRSwyQkFDRixFQUFDOztBUGlaRDs7RU83WUUsb0JBQ0YsRUFBQzs7QVBnWkQ7O0VPNVlFLHdCQUNGLEVBQUM7O0FQK1lEOztFTzNZRSwwQkFDRixFQUFDOztBUDhZRDs7RU8xWUUsb0JBQ0YsRUFBQzs7QVA2WUQ7O0VPellFLHVCQUNGLEVBQUM7O0FQNFlEOztFT3hZRSwyQkFDRixFQUFDOztBUDJZRDs7RU92WUUsb0JBQ0YsRUFBQzs7QVAwWUQ7O0VPdFlFLHdCQUNGLEVBQUM7O0FQeVlEOztFT3JZRSwwQkFDRixFQUFDOztBUHdZRDs7RU9wWUUsb0JBQ0YsRUFBQzs7QVB1WUQ7O0VPbllFLHVCQUNGLEVBQUM7O0FQc1lEOztFT2xZRSwyQkFDRixFQUFDOztBUHFZRDs7RU9qWUUsb0JBQ0YsRUFBQzs7QVBvWUQ7O0VPaFlFLHdCQUNGLEVBQUM7O0FQbVlEOztFTy9YRSwwQkFDRixFQUFDOztBUGtZRDs7RU85WEUsb0JBQ0YsRUFBQzs7QVBpWUQ7O0VPN1hFLHVCQUNGLEVBQUM7O0FQZ1lEOztFTzVYRSwyQkFDRixFQUFDOztBUCtYRDs7RU8zWEUsb0JBQ0YsRUFBQzs7QVA4WEQ7O0VPMVhFLHdCQUNGLEVBQUM7O0FQNlhEOztFT3pYRSwwQkFDRixFQUFDOztBUDRYRDs7RU94WEUsb0JBQ0YsRUFBQzs7QVAyWEQ7O0VPdlhFLHVCQUNGLEVBQUM7O0FQMFhEOztFT3RYRSwyQkFDRixFQUFDOztBUHlYRDs7RU9yWEUsb0JBQ0YsRUFBQzs7QVB3WEQ7O0VPcFhFLHdCQUNGLEVBQUM7O0FQdVhEOztFT25YRSwwQkFDRixFQUFDOztBUHNYRDs7RU9sWEUsb0JBQ0YsRUFBQzs7QVBxWEQ7O0VPalhFLHVCQUNGLEVBQUM7O0FQb1hEOztFT2hYRSwyQkFDRixFQUFDOztBUG1YRDs7RU8vV0Usb0JBQ0YsRUFBQzs7QVBrWEQ7O0VPOVdFLHdCQUNGLEVBQUM7O0FQaVhEOztFTzdXRSx3QkFDRixFQUFDOztBUGdYRDs7RU81V0Usb0JBQ0YsRUFBQzs7QVArV0Q7O0VPM1dFLHFCQUNGLEVBQUM7O0FQOFdEOztFTzFXRSwyQkFDRixFQUFDOztBUDZXRDs7RU96V0Usb0JBQ0YsRUFBQzs7QVA0V0Q7O0VPeFdFLHdCQUNGLEVBQUM7O0FQMldEOztFT3ZXRSwwQkFDRixFQUFDOztBUDBXRDs7RU90V0Usb0JBQ0YsRUFBQzs7QVB5V0Q7O0VPcldFLHVCQUNGLEVBQUM7O0FQd1dEOztFT3BXRSwyQkFDRixFQUFDOztBUHVXRDs7RU9uV0Usb0JBQ0YsRUFBQzs7QVBzV0Q7O0VPbFdFLHdCQUNGLEVBQUM7O0FQcVdEOztFT2pXRSwwQkFDRixFQUFDOztBUG9XRDs7RU9oV0Usb0JBQ0YsRUFBQzs7QVBtV0Q7O0VPL1ZFLHVCQUNGLEVBQUM7O0FQa1dEOztFTzlWRSwyQkFDRixFQUFDOztBUGlXRDs7RU83VkUsb0JBQ0YsRUFBQzs7QVBnV0Q7O0VPNVZFLHdCQUNGLEVBQUM7O0FQK1ZEOztFTzNWRSwwQkFDRixFQUFDOztBUDhWRDs7RU8xVkUsb0JBQ0YsRUFBQzs7QVA2VkQ7O0VPelZFLHVCQUNGLEVBQUM7O0FQNFZEOztFT3hWRSwyQkFDRixFQUFDOztBUDJWRDs7RU92VkUsb0JBQ0YsRUFBQzs7QVAwVkQ7O0VPdFZFLHdCQUNGLEVBQUM7O0FQeVZEOztFT3JWRSwwQkFDRixFQUFDOztBUHdWRDs7RU9wVkUsb0JBQ0YsRUFBQzs7QVB1VkQ7O0VPblZFLHVCQUNGLEVBQUM7O0FQc1ZEOztFT2xWRSwyQkFDRixFQUFDOztBUHFWRDs7RU9qVkUsb0JBQ0YsRUFBQzs7QVBvVkQ7O0VPaFZFLHdCQUNGLEVBQUM7O0FQbVZEOztFTy9VRSwwQkFDRixFQUFDOztBUGtWRDs7RU85VUUsb0JBQ0YsRUFBQzs7QVBpVkQ7O0VPN1VFLHVCQUNGLEVBQUM7O0FQZ1ZEOztFTzVVRSwyQkFDRixFQUFDOztBUCtVRDs7RU8zVUUsb0JBQ0YsRUFBQzs7QVA4VUQ7O0VPMVVFLHdCQUNGLEVBQUM7O0FQNlVEOztFT3pVRSwwQkFDRixFQUFDOztBUDRVRDs7RU94VUUsb0JBQ0YsRUFBQzs7QVAyVUQ7O0VPdlVFLHVCQUNGLEVBQUM7O0FQMFVEOztFT3RVRSwyQkFDRixFQUFDOztBUHlVRDs7RU9yVUUsb0JBQ0YsRUFBQzs7QVB3VUQ7O0VPcFVFLHdCQUNGLEVBQUM7O0FQdVVEOztFT25VRSwwQkFDRixFQUFDOztBUHNVRDs7RU9sVUUsb0JBQ0YsRUFBQzs7QVBxVUQ7O0VPalVFLHVCQUNGLEVBQUM7O0FQb1VEOztFT2hVRSwyQkFDRixFQUFDOztBUG1VRDs7RU8vVEUsb0JBQ0YsRUFBQzs7QVBrVUQ7O0VPOVRFLHdCQUNGLEVBQUM7O0FQaVVEOztFTzdURSwwQkFDRixFQUFDOztBUGdVRDs7RU81VEUsb0JBQ0YsRUFBQzs7QVArVEQ7O0VPM1RFLHVCQUNGLEVBQUM7O0FQOFREOztFTzFURSwyQkFDRixFQUFDOztBUDZURDs7RU96VEUsb0JBQ0YsRUFBQzs7QVA0VEQ7O0VPeFRFLHdCQUNGLEVBQUM7O0FQMlREOztFT3ZURSwwQkFDRixFQUFDOztBUDBURDs7RU90VEUsb0JBQ0YsRUFBQzs7QVB5VEQ7O0VPclRFLHVCQUNGLEVBQUM7O0FQd1REOztFT3BURSwyQkFDRixFQUFDOztBUHVURDs7RU9uVEUsb0JBQ0YsRUFBQzs7QVBzVEQ7O0VPbFRFLHdCQUNGLEVBQUM7O0FQcVREOztFT2pURSx3QkFDRixFQUFDOztBUG9URDs7RU9oVEUsb0JBQ0YsRUFBQzs7QVBtVEQ7O0VPL1NFLHFCQUNGLEVBQUM7O0FQa1REOztFTzlTRSxpRUFBNEQsRUFDN0Q7O0FQaVREOztFTzdTRSxpQ0FDRixFQUFDOztBUGdURDs7RU81U0Usb0NBQ0YsRUFBQzs7QVArU0Q7O0VPM1NFLHFDQUNGLEVBQUM7O0FQOFNEOztFTzFTRSx3Q0FDRixFQUFDOztBUDZTRDs7RU96U0UsbUVBQThELEVBQy9EOztBUDRTRDs7RU94U0Usb0VBQWdFLEVBQ2pFOztBUDJTRDs7RU92U0UsbUVBQStELEVBQ2hFOztBUDBTRDs7RU90U0UsZ0VBQTRELEVBQzdEOztBUHlTRDs7RU9yU0UsZ0VBQTRELEVBQzdEOztBUHdTRDs7RU9wU0Usa0VBQTZELEVBQzlEOztBUHVTRDs7RU9uU0Usa0VBQTZELEVBQzlEOztBUHNTRDs7RU9sU0UsaUVBQTRELEVBQzdEOztBUHFTRDs7RU9qU0Usb0VBQStELEVBQ2hFOztBUG9TRDs7RU9oU0Usa0VB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N0M7O0FBRkQ7RTlCMEJGLGdCQ2xDUTtFRG1DUixnQkU5QitCO0VGbUMvQixtQkFBZ0QsRThCOUI3Qzs7QUFGRDtFOUIwQkYsZ0JDakNRO0VEa0NSLGdCRTlCK0I7RUZtQy9CLHVCQUFnRCxFOEI5QjdDOztBQUZEO0U5QjBCRixnQkNoQ1E7RURpQ1Isa0JFOUIrQjtFRm1DL0IsdUJBQWdELEU4QjlCN0M7O0FBRkQ7RTlCMEJGLGdCQy9CUTtFRGdDUixnQkU5QitCO0VGbUMvQixtQkFBZ0QsRThCOUI3Qzs7QUFGRDtFOUIwQkYsZ0JDOUJRO0VEK0JSLGtCRTlCK0I7RUZtQy9CLHVCQUFnRCxFOEI5QjdDOztBQUZEO0U5QjBCRixnQkM3Qk87RUQ4QlAsa0JFOUIrQjtFRm1DL0IsaUJBQWdELEU4QjlCN0M7O0FBRkQ7RTlCMEJGLGdCQ25DUTtFRG9DUixnQkU5QitCO0VGbUMvQix1QkFBZ0QsRThCOUI3Qzs7QUFGRDtFOUIwQkYsZ0JDbENRO0VEbUNSLGdCRTlCK0I7RUZtQy9CLG1CQUFnRCxFOEI5QjdDOztBQUZEO0U5QjBCRixnQkNqQ1E7RURrQ1IsZ0JFOUIrQjtFRm1DL0IsdUJBQWdELEU4QjlCN0M7O0FBRkQ7RTlCMEJGLGdCQ2hDUTtFRGlDUixrQkU5QitCO0VGbUMvQix1QkFBZ0QsRThCOUI3Qzs7QUFGRDtFOUIwQkYsZ0JDL0JRO0VEZ0NSLGdCRTlCK0I7RUZtQy9CLG1CQUFnRCxFOEI5QjdDOztBQUZEO0U5QjBCRixnQkM5QlE7RUQrQlIsa0JFOUIrQjtFRm1DL0IsdUJBQWdELEU4QjlCN0M7O0FBRkQ7RTlCMEJGLGdCQzdCTztFRDhCUCxrQkU5QitCO0VGbUMvQixpQkFBZ0QsRThCOUI3Qzs7QUFGRDtFOUIwQkYsZ0JDbkNRO0VEb0NSLGdCRTlCK0I7RUZtQy9CLHVCQUFnRCxFOEI5QjdDOztBQUZEO0U5QjBCRixnQkNsQ1E7RURtQ1IsZ0JFOUIrQjtFRm1DL0IsbUJBQWdELEU4QjlCN0M7O0FBRkQ7RTlCMEJGLGdCQ2pDUTtFRGtDUixnQkU5QitCO0VGbUMvQix1QkFBZ0QsRThCOUI3Qzs7QUFGRDtFOUIwQkYsZ0JDaENRO0VEaUNSLGtCRTlCK0I7RUZtQy9CLHVCQUFnRCxFOEI5QjdDOztBQUZEO0U5QjBCRixnQkMvQlE7RURnQ1IsZ0JFOUIrQjtFRm1DL0IsbUJBQWdELEU4QjlCN0M7O0FBRkQ7RTlCMEJGLGdCQzlCUTtFRCtCUixrQkU5QitCO0VGbUMvQix1QkFBZ0QsRThCOUI3Qzs7QUFGRDtFOUIwQkYsZ0JDN0JPO0VEOEJQLGtCRTlCK0I7RUZtQy9CLGlCQUFnRCxFOEI5QjdDOztBQUZEO0U5QjBCRixnQkNuQ1E7RURvQ1IsZ0JFOUIrQjtFRm1DL0IsdUJBQWdELEU4QjlCN0M7O0FBRkQ7RTlCMEJGLGdCQ2xDUTtFRG1DUixnQkU5QitCO0VGbUMvQixtQkFBZ0QsRThCOUI3Qzs7QUFGRDtFOUIwQkYsZ0JDakNRO0VEa0NSLGdCRTlCK0I7RUZtQy9CLHVCQUFnRCxFOEI5QjdDOztBQUZEO0U5QjBCRixnQkNoQ1E7RURpQ1Isa0JFOUIrQjtFRm1DL0IsdUJBQWdELEU4QjlCN0M7O0FBRkQ7RTlCMEJGLGdCQy9CUTtFRGdDUixnQkU5QitCO0VGbUMvQixtQkFBZ0QsRThCOUI3Qzs7QUFGRDtFOUIwQkYsZ0JDOUJRO0VEK0JSLGtCRTlCK0I7RUZtQy9CLHVCQUFnRCxFOEI5QjdDOztBQUZEO0U5QjBCRixnQkM3Qk87RUQ4QlAsa0JFOUIrQjtFRm1DL0IsaUJBQWdELEU4QjlCN0M7O0FBRkQ7RTlCMEJGLGdCQ25DUTtFRG9DUixnQkU5QitCO0VGbUMvQix1QkFBZ0QsRThCOUI3Qzs7QUFGRDtFOUIwQkYsZ0JDbENRO0VEbUNSLGdCRTlCK0I7RUZtQy9CLG1CQUFnRCxFOEI5QjdDOztBQUZEO0U5QjBCRixnQkNqQ1E7RURrQ1IsZ0JFOUIrQjtFRm1DL0IsdUJBQWdELEU4QjlCN0M7O0FBRkQ7RTlCMEJGLGdCQ2hDUTtFRGlDUixrQkU5QitCO0VGbUMvQix1QkFBZ0QsRThCOUI3Qzs7QUFGRDtFOUIwQkYsZ0JDL0JRO0VEZ0NSLGdCRTlCK0I7RUZtQy9CLG1CQUFnRCxFOEI5QjdDOztBQUZEO0U5QjBCRixnQkM5QlE7RUQrQlIsa0JFOUIrQjtFRm1DL0IsdUJBQWdELEU4QjlCN0M7O0FBRkQ7RTlCMEJGLGdCQzdCTztFRDhCUCxrQkU5QitCO0VGbUMvQixpQkFBZ0QsRThCOUI3Qzs7QUFNUDs7R0FFRztBQUtHO0VBQ0UsaUJBRm9CLEVBR3JCOztBQUZEO0VBQ0Usa0JBRjJCLEVBRzVCOztBQUZEO0VBQ0UsbUJBRm1DLEVBR3BDOztBQUZEO0VBQ0UsaUJBRm9CLEVBR3JCOztBQUZEO0VBQ0Usa0JBRjJCLEVBRzVCOztBQUZEO0VBQ0UsbUJBRm1DLEVBR3BDOztBQUZEO0VBQ0UsaUJBRm9CLEVBR3JCOztBQUZEO0VBQ0Usa0JBRjJCLEVBRzVCOztBQUZEO0VBQ0UsbUJBRm1DLEVBR3BDOztBQUZEO0VBQ0UsaUJBRm9CLEVBR3JCOztBQUZEO0VBQ0Usa0JBRjJCLEVBRzVCOztBQUZEO0VBQ0UsbUJBRm1DLEVBR3BDOztBQUZEO0VBQ0UsaUJBRm9CLEVBR3JCOztBQUZEO0VBQ0Usa0JBRjJCLEVBRzVCOztBQUZEO0VBQ0UsbUJBRm1DLEVBR3BDOztBQU1QOzs7O0dBSUc7QUFPRztFQUNFLGlCQUFhLEVBQ2Q7O0FBRkQ7RUFDRSxpQkFBYSxFQUNkOztBQUZEO0VBQ0UsaUJBQWEsRUFDZDs7QUFGRDtFQUNFLGlCQUFhLEVBQ2Q7O0FBRkQ7RUFDRSxpQkFBYSxFQUNkOztBQUZEO0VBQ0UsaUJBQWEsRUFDZDs7QUFGRDtFQUNFLGlCQUFhLEVBQ2Q7O0FBRkQ7RUFDRSxpQkFBYSxFQUNkOztBQUZEO0VBQ0UsaUJBQWEsRUFDZDs7QUFGRDtFQUNFLGlCQUFhLEVBQ2Q7O0FBRkQ7RUFDRSxpQkFBYSxFQUNkOztBQUZEO0VBQ0UsaUJBQWEsRUFDZDs7QUFGRDtFQUNFLGlCQUFhLEVBQ2Q7O0FBRkQ7RUFDRSxpQkFBYSxFQUNkOztBQUZEO0VBQ0UsaUJBQWEsRUFDZDs7QUFGRDtFQUNFLGlCQUFhLEVBQ2Q7O0FBRkQ7RUFDRSxpQkFBYSxFQUNkOztBQUZEO0VBQ0UsaUJBQWEsRUFDZDs7QUFGRDtFQUNFLGlCQUFhLEVBQ2Q7O0FBRkQ7RUFDRSxpQkFBYSxFQUNkOztBQUZEO0VBQ0UsaUJBQWEsRUFDZDs7QUFGRDtFQUNFLGlCQUFhLEVBQ2Q7O0FBRkQ7RUFDRSxpQkFBYSxFQUNkOztBQUZEO0VBQ0UsaUJBQWEsRUFDZDs7QUFGRDtFQUNFLGlCQUFhLEVBQ2Q7O0FBRkQ7RUFDRSxpQkFBYSxFQUNkOztBQUZEO0VBQ0UsaUJBQWEsRUFDZDs7QUFGRDtFQUNFLGlCQUFhLEVBQ2Q7O0FBRkQ7RUFDRSxpQkFBYSxFQUNkOztBQUZEO0VBQ0UsaUJBQWEsRUFDZDs7QUFGRDtFQUNFLGlCQUFhLEVBQ2Q7O0FBRkQ7RUFDRSxpQkFBYSxFQUNkOztBQUZEO0VBQ0UsaUJBQWEsRUFDZDs7QUFGRDtFQUNFLGlCQUFhLEVBQ2Q7O0FBRkQ7RUFDRSxpQkFBYSxFQUNkOztBQUZEO0VBQ0UsaUJBQWEsRUFDZDs7QUFGRDtFQUNFLGlCQUFhLEVBQ2Q7O0FBRkQ7RUFDRSxpQkFBYSxFQUNkOztBQUZEO0VBQ0UsaUJBQWEsRUFDZDs7QUFGRDtFQUNFLGlCQUFhLEVBQ2Q7O0FBRkQ7RUFDRSxpQkFBYSxFQUNkOztBQUZEO0VBQ0UsaUJBQWEsRUFDZDs7QUFGRDtFQUNFLGlCQUFhLEVBQ2Q7O0FBRkQ7RUFDRSxpQkFBYSxFQUNkOztBQUZEO0VBQ0UsaUJBQWEsRUFDZDs7QUFNUDs7R0FFRztBQUtHO0VBQ0UsMkJBRjBCLEVBRzNCOztBQUZEO0VBQ0UsMEJBRnFDLEVBR3RDOztBQUZEO0VBQ0UsMEJBRmdELEVBR2pEOztBQUZEO0VBQ0UscUJBRnNELEVBR3ZEOztBQUZEO0VBQ0UsMkJBRmtFLEVBR25FOztBQUZEO0VBQ0UsMkJBRjBCLEVBRzNCOztBQUZEO0VBQ0UsMEJBRnFDLEVBR3RDOztBQUZEO0VBQ0UsMEJBRmdELEVBR2pEOztBQUZEO0VBQ0UscUJBRnNELEVBR3ZEOztBQUZEO0VBQ0UsMkJBRmtFLEVBR25FOztBQUZEO0VBQ0UsMkJBRjBCLEVBRzNCOztBQUZEO0VBQ0UsMEJBRnFDLEVBR3RDOztBQUZEO0VBQ0UsMEJBRmdELEVBR2pEOztBQUZEO0VBQ0UscUJBRnNELEVBR3ZEOztBQUZEO0VBQ0UsMkJBRmtFLEVBR25FOztBQUZEO0VBQ0UsMkJBRjBCLEVBRzNCOztBQUZEO0VBQ0UsMEJBRnFDLEVBR3RDOztBQUZEO0VBQ0UsMEJBRmdELEVBR2pEOztBQUZEO0VBQ0UscUJBRnNELEVBR3ZEOztBQUZEO0VBQ0UsMkJBRmtFLEVBR25FOztBQUZEO0VBQ0UsMkJBRjBCLEVBRzNCOztBQUZEO0VBQ0UsMEJBRnFDLEVBR3RDOztBQUZEO0VBQ0UsMEJBRmdELEVBR2pEOztBQUZEO0VBQ0UscUJBRnNELEVBR3ZEOztBQUZEO0VBQ0UsMkJBRmtFLEVBR25FOztBQzdFUDs7Z0ZBRWdGO0FBSzlFO0VBQ0UsbUJBQWUsRUFDaEI7O0FBRkQ7RUFDRSxtQkFBZSxFQUNoQjs7QUFGRDtFQUNFLG9CQUFlLEVBQ2hCOztBQUZEO0VBQ0Usb0JBQWUsRUFDaEI7O0FBRkQ7RUFDRSxvQkFBZSxFQUNoQjs7QUFGRDtFQUNFLG9CQUFlLEVBQ2hCOztBQUZEO0VBQ0Usb0JBQWUsRUFDaEI7O0FBRkQ7RUFDRSxvQkFBZSxFQUNoQjs7QUFGRDtFQUNFLG9CQUFlLEVBQ2hCOztBQUZEO0VBQ0Usb0JBQWUsRUFDaEI7O0FBRkQ7RUFDRSxvQkFBZSxFQUNoQjs7QUNUSDs7Z0ZBRWdGO0FBRWhGOztHQUVHO0FBR0Q7RUFDRSxXQ0ZLLEVER047O0FBRkQ7RUFDRSxZQ0RNLEVERVA7O0FBRkQ7RUFDRSxZQ0FNLEVEQ1A7O0FBRkQ7RUFDRSxZQ0NNLEVEQVA7O0FBRkQ7RUFDRSxZQ0VNLEVERFA7O0FBRkQ7RUFDRSxZQ0dNLEVERlA7O0FBRkQ7RUFDRSxZQ0lNLEVESFA7O0FBRkQ7RUFDRSxZQ0tNLEVESlA7O0FBRkQ7RUFDRSxZQ01NLEVETFA7O0FBRkQ7RUFDRSxZQ09NLEVETlA7O0FBRkQ7RUFDRSxhQ1FPLEVEUFIiLCJmaWxlIjoibWFpbi5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyJAY2hhcnNldCBcIlVURi04XCI7XG4vKiEgbm9ybWFsaXplLmNzcyB2OC4wLjEgfCBNSVQgTGljZW5zZSB8IGdpdGh1Yi5jb20vbmVjb2xhcy9ub3JtYWxpemUuY3NzICovXG4vKiBEb2N1bWVudFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgbGluZSBoZWlnaHQgaW4gYWxsIGJyb3dzZXJzLlxuICogMi4gUHJldmVudCBhZGp1c3RtZW50cyBvZiBmb250IHNpemUgYWZ0ZXIgb3JpZW50YXRpb24gY2hhbmdlcyBpbiBpT1MuXG4gKi9cbmh0bWwge1xuICBsaW5lLWhlaWdodDogMS4xNTtcbiAgLyogMSAqL1xuICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7XG4gIC8qIDIgKi8gfVxuXG4vKiBTZWN0aW9uc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICogUmVtb3ZlIHRoZSBtYXJnaW4gaW4gYWxsIGJyb3dzZXJzLlxuICovXG5ib2R5IHtcbiAgbWFyZ2luOiAwOyB9XG5cbi8qKlxuICogUmVuZGVyIHRoZSBgbWFpbmAgZWxlbWVudCBjb25zaXN0ZW50bHkgaW4gSUUuXG4gKi9cbm1haW4ge1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG4vKipcbiAqIENvcnJlY3QgdGhlIGZvbnQgc2l6ZSBhbmQgbWFyZ2luIG9uIGBoMWAgZWxlbWVudHMgd2l0aGluIGBzZWN0aW9uYCBhbmRcbiAqIGBhcnRpY2xlYCBjb250ZXh0cyBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBTYWZhcmkuXG4gKi9cbmgxIHtcbiAgZm9udC1zaXplOiAyZW07XG4gIG1hcmdpbjogMC42N2VtIDA7IH1cblxuLyogR3JvdXBpbmcgY29udGVudFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICogMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gRmlyZWZveC5cbiAqIDIuIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UgYW5kIElFLlxuICovXG5ociB7XG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICAvKiAxICovXG4gIGhlaWdodDogMDtcbiAgLyogMSAqL1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgLyogMiAqLyB9XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgaW5oZXJpdGFuY2UgYW5kIHNjYWxpbmcgb2YgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAqIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbiAqL1xucHJlIHtcbiAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlO1xuICAvKiAxICovXG4gIGZvbnQtc2l6ZTogMWVtO1xuICAvKiAyICovIH1cblxuLyogVGV4dC1sZXZlbCBzZW1hbnRpY3NcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIFJlbW92ZSB0aGUgZ3JheSBiYWNrZ3JvdW5kIG9uIGFjdGl2ZSBsaW5rcyBpbiBJRSAxMC5cbiAqL1xuYSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG5cbi8qKlxuICogMS4gUmVtb3ZlIHRoZSBib3R0b20gYm9yZGVyIGluIENocm9tZSA1Ny1cbiAqIDIuIEFkZCB0aGUgY29ycmVjdCB0ZXh0IGRlY29yYXRpb24gaW4gQ2hyb21lLCBFZGdlLCBJRSwgT3BlcmEsIGFuZCBTYWZhcmkuXG4gKi9cbmFiYnJbdGl0bGVdIHtcbiAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgLyogMSAqL1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgLyogMiAqL1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSBkb3R0ZWQ7XG4gIC8qIDIgKi8gfVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBmb250IHdlaWdodCBpbiBDaHJvbWUsIEVkZ2UsIGFuZCBTYWZhcmkuXG4gKi9cbmIsXG5zdHJvbmcge1xuICBmb250LXdlaWdodDogYm9sZGVyOyB9XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgaW5oZXJpdGFuY2UgYW5kIHNjYWxpbmcgb2YgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAqIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbiAqL1xuY29kZSxcbmtiZCxcbnNhbXAge1xuICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7XG4gIC8qIDEgKi9cbiAgZm9udC1zaXplOiAxZW07XG4gIC8qIDIgKi8gfVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5zbWFsbCB7XG4gIGZvbnQtc2l6ZTogODAlOyB9XG5cbi8qKlxuICogUHJldmVudCBgc3ViYCBhbmQgYHN1cGAgZWxlbWVudHMgZnJvbSBhZmZlY3RpbmcgdGhlIGxpbmUgaGVpZ2h0IGluXG4gKiBhbGwgYnJvd3NlcnMuXG4gKi9cbnN1YixcbnN1cCB7XG4gIGZvbnQtc2l6ZTogNzUlO1xuICBsaW5lLWhlaWdodDogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7IH1cblxuc3ViIHtcbiAgYm90dG9tOiAtMC4yNWVtOyB9XG5cbnN1cCB7XG4gIHRvcDogLTAuNWVtOyB9XG5cbi8qIEVtYmVkZGVkIGNvbnRlbnRcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIFJlbW92ZSB0aGUgYm9yZGVyIG9uIGltYWdlcyBpbnNpZGUgbGlua3MgaW4gSUUgMTAuXG4gKi9cbmltZyB7XG4gIGJvcmRlci1zdHlsZTogbm9uZTsgfVxuXG4vKiBGb3Jtc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICogMS4gQ2hhbmdlIHRoZSBmb250IHN0eWxlcyBpbiBhbGwgYnJvd3NlcnMuXG4gKiAyLiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBGaXJlZm94IGFuZCBTYWZhcmkuXG4gKi9cbmJ1dHRvbixcbmlucHV0LFxub3B0Z3JvdXAsXG5zZWxlY3QsXG50ZXh0YXJlYSB7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICAvKiAxICovXG4gIGZvbnQtc2l6ZTogMTAwJTtcbiAgLyogMSAqL1xuICBsaW5lLWhlaWdodDogMS4xNTtcbiAgLyogMSAqL1xuICBtYXJnaW46IDA7XG4gIC8qIDIgKi8gfVxuXG4vKipcbiAqIFNob3cgdGhlIG92ZXJmbG93IGluIElFLlxuICogMS4gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZS5cbiAqL1xuYnV0dG9uLFxuaW5wdXQge1xuICAvKiAxICovXG4gIG92ZXJmbG93OiB2aXNpYmxlOyB9XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBFZGdlLCBGaXJlZm94LCBhbmQgSUUuXG4gKiAxLiBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEZpcmVmb3guXG4gKi9cbmJ1dHRvbixcbnNlbGVjdCB7XG4gIC8qIDEgKi9cbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7IH1cblxuLyoqXG4gKiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuICovXG5idXR0b24sXG5bdHlwZT1cImJ1dHRvblwiXSxcblt0eXBlPVwicmVzZXRcIl0sXG5bdHlwZT1cInN1Ym1pdFwiXSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uOyB9XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBpbm5lciBib3JkZXIgYW5kIHBhZGRpbmcgaW4gRmlyZWZveC5cbiAqL1xuYnV0dG9uOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJidXR0b25cIl06Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1cInJlc2V0XCJdOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJzdWJtaXRcIl06Oi1tb3otZm9jdXMtaW5uZXIge1xuICBib3JkZXItc3R5bGU6IG5vbmU7XG4gIHBhZGRpbmc6IDA7IH1cblxuLyoqXG4gKiBSZXN0b3JlIHRoZSBmb2N1cyBzdHlsZXMgdW5zZXQgYnkgdGhlIHByZXZpb3VzIHJ1bGUuXG4gKi9cbmJ1dHRvbjotbW96LWZvY3VzcmluZyxcblt0eXBlPVwiYnV0dG9uXCJdOi1tb3otZm9jdXNyaW5nLFxuW3R5cGU9XCJyZXNldFwiXTotbW96LWZvY3VzcmluZyxcblt0eXBlPVwic3VibWl0XCJdOi1tb3otZm9jdXNyaW5nIHtcbiAgb3V0bGluZTogMXB4IGRvdHRlZCBCdXR0b25UZXh0OyB9XG5cbi8qKlxuICogQ29ycmVjdCB0aGUgcGFkZGluZyBpbiBGaXJlZm94LlxuICovXG5maWVsZHNldCB7XG4gIHBhZGRpbmc6IDAuMzVlbSAwLjc1ZW0gMC42MjVlbTsgfVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIHRleHQgd3JhcHBpbmcgaW4gRWRnZSBhbmQgSUUuXG4gKiAyLiBDb3JyZWN0IHRoZSBjb2xvciBpbmhlcml0YW5jZSBmcm9tIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gSUUuXG4gKiAzLiBSZW1vdmUgdGhlIHBhZGRpbmcgc28gZGV2ZWxvcGVycyBhcmUgbm90IGNhdWdodCBvdXQgd2hlbiB0aGV5IHplcm8gb3V0XG4gKiAgICBgZmllbGRzZXRgIGVsZW1lbnRzIGluIGFsbCBicm93c2Vycy5cbiAqL1xubGVnZW5kIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgLyogMSAqL1xuICBjb2xvcjogaW5oZXJpdDtcbiAgLyogMiAqL1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgLyogMSAqL1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIC8qIDEgKi9cbiAgcGFkZGluZzogMDtcbiAgLyogMyAqL1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICAvKiAxICovIH1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgdmVydGljYWwgYWxpZ25tZW50IGluIENocm9tZSwgRmlyZWZveCwgYW5kIE9wZXJhLlxuICovXG5wcm9ncmVzcyB7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTsgfVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgZGVmYXVsdCB2ZXJ0aWNhbCBzY3JvbGxiYXIgaW4gSUUgMTArLlxuICovXG50ZXh0YXJlYSB7XG4gIG92ZXJmbG93OiBhdXRvOyB9XG5cbi8qKlxuICogMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gSUUgMTAuXG4gKiAyLiBSZW1vdmUgdGhlIHBhZGRpbmcgaW4gSUUgMTAuXG4gKi9cblt0eXBlPVwiY2hlY2tib3hcIl0sXG5bdHlwZT1cInJhZGlvXCJdIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgLyogMSAqL1xuICBwYWRkaW5nOiAwO1xuICAvKiAyICovIH1cblxuLyoqXG4gKiBDb3JyZWN0IHRoZSBjdXJzb3Igc3R5bGUgb2YgaW5jcmVtZW50IGFuZCBkZWNyZW1lbnQgYnV0dG9ucyBpbiBDaHJvbWUuXG4gKi9cblt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24ge1xuICBoZWlnaHQ6IGF1dG87IH1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBvZGQgYXBwZWFyYW5jZSBpbiBDaHJvbWUgYW5kIFNhZmFyaS5cbiAqIDIuIENvcnJlY3QgdGhlIG91dGxpbmUgc3R5bGUgaW4gU2FmYXJpLlxuICovXG5bdHlwZT1cInNlYXJjaFwiXSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogdGV4dGZpZWxkO1xuICAvKiAxICovXG4gIG91dGxpbmUtb2Zmc2V0OiAtMnB4O1xuICAvKiAyICovIH1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGlubmVyIHBhZGRpbmcgaW4gQ2hyb21lIGFuZCBTYWZhcmkgb24gbWFjT1MuXG4gKi9cblt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lOyB9XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbiAqIDIuIENoYW5nZSBmb250IHByb3BlcnRpZXMgdG8gYGluaGVyaXRgIGluIFNhZmFyaS5cbiAqL1xuOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uO1xuICAvKiAxICovXG4gIGZvbnQ6IGluaGVyaXQ7XG4gIC8qIDIgKi8gfVxuXG4vKiBJbnRlcmFjdGl2ZVxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBFZGdlLCBJRSAxMCssIGFuZCBGaXJlZm94LlxuICovXG5kZXRhaWxzIHtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuLypcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIGFsbCBicm93c2Vycy5cbiAqL1xuc3VtbWFyeSB7XG4gIGRpc3BsYXk6IGxpc3QtaXRlbTsgfVxuXG4vKiBNaXNjXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSAxMCsuXG4gKi9cbnRlbXBsYXRlIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDEwLlxuICovXG5baGlkZGVuXSB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLypcbiAqICBPd2wgQ2Fyb3VzZWwgLSBDb3JlXG4gKi9cbi5vd2wtY2Fyb3VzZWwge1xuICBkaXNwbGF5OiBub25lO1xuICB3aWR0aDogMTAwJTtcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgLyogcG9zaXRpb24gcmVsYXRpdmUgYW5kIHotaW5kZXggZml4IHdlYmtpdCByZW5kZXJpbmcgZm9udHMgaXNzdWUgKi9cbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAxOyB9XG4gIC5vd2wtY2Fyb3VzZWwgLm93bC1zdGFnZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIC1tcy10b3VjaC1hY3Rpb246IHBhbi1ZO1xuICAgIHRvdWNoLWFjdGlvbjogbWFuaXB1bGF0aW9uO1xuICAgIC1tb3otYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIC8qIGZpeCBmaXJlZm94IGFuaW1hdGlvbiBnbGl0Y2ggKi8gfVxuICAub3dsLWNhcm91c2VsIC5vd2wtc3RhZ2U6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiLlwiO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGNsZWFyOiBib3RoO1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICBsaW5lLWhlaWdodDogMDtcbiAgICBoZWlnaHQ6IDA7IH1cbiAgLm93bC1jYXJvdXNlbCAub3dsLXN0YWdlLW91dGVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAvKiBmaXggZm9yIGZsYXNoaW5nIGJhY2tncm91bmQgKi9cbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMHB4LCAwcHgsIDBweCk7IH1cbiAgLm93bC1jYXJvdXNlbCAub3dsLXdyYXBwZXIsXG4gIC5vd2wtY2Fyb3VzZWwgLm93bC1pdGVtIHtcbiAgICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAtbW96LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAtbXMtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7IH1cbiAgLm93bC1jYXJvdXNlbCAub3dsLWl0ZW0ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtaW4taGVpZ2h0OiAxcHg7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAtd2Via2l0LXRvdWNoLWNhbGxvdXQ6IG5vbmU7IH1cbiAgLm93bC1jYXJvdXNlbCAub3dsLWl0ZW0gaW1nIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTsgfVxuICAub3dsLWNhcm91c2VsIC5vd2wtbmF2LmRpc2FibGVkLFxuICAub3dsLWNhcm91c2VsIC5vd2wtZG90cy5kaXNhYmxlZCB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAub3dsLWNhcm91c2VsIC5vd2wtbmF2IC5vd2wtcHJldixcbiAgLm93bC1jYXJvdXNlbCAub3dsLW5hdiAub3dsLW5leHQsXG4gIC5vd2wtY2Fyb3VzZWwgLm93bC1kb3Qge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICAgIC1raHRtbC11c2VyLXNlbGVjdDogbm9uZTtcbiAgICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xuICAgIC1tcy11c2VyLXNlbGVjdDogbm9uZTtcbiAgICB1c2VyLXNlbGVjdDogbm9uZTsgfVxuICAub3dsLWNhcm91c2VsIC5vd2wtbmF2IGJ1dHRvbi5vd2wtcHJldixcbiAgLm93bC1jYXJvdXNlbCAub3dsLW5hdiBidXR0b24ub3dsLW5leHQsXG4gIC5vd2wtY2Fyb3VzZWwgYnV0dG9uLm93bC1kb3Qge1xuICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgICBmb250OiBpbmhlcml0OyB9XG4gIC5vd2wtY2Fyb3VzZWwub3dsLWxvYWRlZCB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cbiAgLm93bC1jYXJvdXNlbC5vd2wtbG9hZGluZyB7XG4gICAgb3BhY2l0eTogMDtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuICAub3dsLWNhcm91c2VsLm93bC1oaWRkZW4ge1xuICAgIG9wYWNpdHk6IDA7IH1cbiAgLm93bC1jYXJvdXNlbC5vd2wtcmVmcmVzaCAub3dsLWl0ZW0ge1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjsgfVxuICAub3dsLWNhcm91c2VsLm93bC1kcmFnIC5vd2wtaXRlbSB7XG4gICAgdG91Y2gtYWN0aW9uOiBwYW4teTtcbiAgICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICAgIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xuICAgIHVzZXItc2VsZWN0OiBub25lOyB9XG4gIC5vd2wtY2Fyb3VzZWwub3dsLWdyYWIge1xuICAgIGN1cnNvcjogbW92ZTtcbiAgICBjdXJzb3I6IGdyYWI7IH1cbiAgLm93bC1jYXJvdXNlbC5vd2wtcnRsIHtcbiAgICBkaXJlY3Rpb246IHJ0bDsgfVxuICAub3dsLWNhcm91c2VsLm93bC1ydGwgLm93bC1pdGVtIHtcbiAgICBmbG9hdDogcmlnaHQ7IH1cblxuLyogTm8gSnMgKi9cbi5uby1qcyAub3dsLWNhcm91c2VsIHtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuLypcbiAqICBPd2wgQ2Fyb3VzZWwgLSBBbmltYXRlIFBsdWdpblxuICovXG4ub3dsLWNhcm91c2VsIC5hbmltYXRlZCB7XG4gIGFuaW1hdGlvbi1kdXJhdGlvbjogMTAwMG1zO1xuICBhbmltYXRpb24tZmlsbC1tb2RlOiBib3RoOyB9XG5cbi5vd2wtY2Fyb3VzZWwgLm93bC1hbmltYXRlZC1pbiB7XG4gIHotaW5kZXg6IDA7IH1cblxuLm93bC1jYXJvdXNlbCAub3dsLWFuaW1hdGVkLW91dCB7XG4gIHotaW5kZXg6IDE7IH1cblxuLm93bC1jYXJvdXNlbCAuZmFkZU91dCB7XG4gIGFuaW1hdGlvbi1uYW1lOiBmYWRlT3V0OyB9XG5cbkBrZXlmcmFtZXMgZmFkZU91dCB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAxOyB9XG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDA7IH0gfVxuXG4vKlxuICogXHRPd2wgQ2Fyb3VzZWwgLSBBdXRvIEhlaWdodCBQbHVnaW5cbiAqL1xuLm93bC1oZWlnaHQge1xuICB0cmFuc2l0aW9uOiBoZWlnaHQgNTAwbXMgZWFzZS1pbi1vdXQ7IH1cblxuLypcbiAqIFx0T3dsIENhcm91c2VsIC0gTGF6eSBMb2FkIFBsdWdpblxuICovXG4ub3dsLWNhcm91c2VsIC5vd2wtaXRlbSB7XG4gIC8qKlxuXHRcdFx0VGhpcyBpcyBpbnRyb2R1Y2VkIGR1ZSB0byBhIGJ1ZyBpbiBJRTExIHdoZXJlIGxhenkgbG9hZGluZyBjb21iaW5lZCB3aXRoIGF1dG9oZWlnaHQgcGx1Z2luIGNhdXNlcyBhIHdyb25nXG5cdFx0XHRjYWxjdWxhdGlvbiBvZiB0aGUgaGVpZ2h0IG9mIHRoZSBvd2wtaXRlbSB0aGF0IGJyZWFrcyBwYWdlIGxheW91dHNcblx0XHQgKi8gfVxuICAub3dsLWNhcm91c2VsIC5vd2wtaXRlbSAub3dsLWxhenkge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSA0MDBtcyBlYXNlOyB9XG4gIC5vd2wtY2Fyb3VzZWwgLm93bC1pdGVtIC5vd2wtbGF6eVtzcmNePVwiXCJdLCAub3dsLWNhcm91c2VsIC5vd2wtaXRlbSAub3dsLWxhenk6bm90KFtzcmNdKSB7XG4gICAgbWF4LWhlaWdodDogMDsgfVxuICAub3dsLWNhcm91c2VsIC5vd2wtaXRlbSBpbWcub3dsLWxhenkge1xuICAgIHRyYW5zZm9ybS1zdHlsZTogcHJlc2VydmUtM2Q7IH1cblxuLypcbiAqIFx0T3dsIENhcm91c2VsIC0gVmlkZW8gUGx1Z2luXG4gKi9cbi5vd2wtY2Fyb3VzZWwgLm93bC12aWRlby13cmFwcGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGJhY2tncm91bmQ6ICMwMDA7IH1cblxuLm93bC1jYXJvdXNlbCAub3dsLXZpZGVvLXBsYXktaWNvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgaGVpZ2h0OiA4MHB4O1xuICB3aWR0aDogODBweDtcbiAgbGVmdDogNTAlO1xuICB0b3A6IDUwJTtcbiAgbWFyZ2luLWxlZnQ6IC00MHB4O1xuICBtYXJnaW4tdG9wOiAtNDBweDtcbiAgYmFja2dyb3VuZDogdXJsKFwib3dsLnZpZGVvLnBsYXkucG5nXCIpIG5vLXJlcGVhdDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB6LWluZGV4OiAxO1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDEwMG1zIGVhc2U7IH1cblxuLm93bC1jYXJvdXNlbCAub3dsLXZpZGVvLXBsYXktaWNvbjpob3ZlciB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMS4zLCAxLjMpOyB9XG5cbi5vd2wtY2Fyb3VzZWwgLm93bC12aWRlby1wbGF5aW5nIC5vd2wtdmlkZW8tdG4sXG4ub3dsLWNhcm91c2VsIC5vd2wtdmlkZW8tcGxheWluZyAub3dsLXZpZGVvLXBsYXktaWNvbiB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLm93bC1jYXJvdXNlbCAub3dsLXZpZGVvLXRuIHtcbiAgb3BhY2l0eTogMDtcbiAgaGVpZ2h0OiAxMDAlO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgNDAwbXMgZWFzZTsgfVxuXG4ub3dsLWNhcm91c2VsIC5vd2wtdmlkZW8tZnJhbWUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDE7XG4gIGhlaWdodDogMTAwJTtcbiAgd2lkdGg6IDEwMCU7IH1cblxuW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZHVyYXRpb249XCI1MFwiXSxcbmJvZHlbZGF0YS1hb3MtZHVyYXRpb249XCI1MFwiXSBbZGF0YS1hb3NdIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTBtczsgfVxuXG5bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT1cIjUwXCJdLFxuYm9keVtkYXRhLWFvcy1kZWxheT1cIjUwXCJdIFtkYXRhLWFvc10ge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAwOyB9XG5cbltkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PVwiNTBcIl0uYW9zLWFuaW1hdGUsXG5ib2R5W2RhdGEtYW9zLWRlbGF5PVwiNTBcIl0gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDUwbXM7IH1cblxuW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZHVyYXRpb249XCIxMDBcIl0sXG5ib2R5W2RhdGEtYW9zLWR1cmF0aW9uPVwiMTAwXCJdIFtkYXRhLWFvc10ge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAuMXM7IH1cblxuW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9XCIxMDBcIl0sXG5ib2R5W2RhdGEtYW9zLWRlbGF5PVwiMTAwXCJdIFtkYXRhLWFvc10ge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAwOyB9XG5cbltkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PVwiMTAwXCJdLmFvcy1hbmltYXRlLFxuYm9keVtkYXRhLWFvcy1kZWxheT1cIjEwMFwiXSBbZGF0YS1hb3NdLmFvcy1hbmltYXRlIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogLjFzOyB9XG5cbltkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWR1cmF0aW9uPVwiMTUwXCJdLFxuYm9keVtkYXRhLWFvcy1kdXJhdGlvbj1cIjE1MFwiXSBbZGF0YS1hb3NdIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogLjE1czsgfVxuXG5bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT1cIjE1MFwiXSxcbmJvZHlbZGF0YS1hb3MtZGVsYXk9XCIxNTBcIl0gW2RhdGEtYW9zXSB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDA7IH1cblxuW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9XCIxNTBcIl0uYW9zLWFuaW1hdGUsXG5ib2R5W2RhdGEtYW9zLWRlbGF5PVwiMTUwXCJdIFtkYXRhLWFvc10uYW9zLWFuaW1hdGUge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAuMTVzOyB9XG5cbltkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWR1cmF0aW9uPVwiMjAwXCJdLFxuYm9keVtkYXRhLWFvcy1kdXJhdGlvbj1cIjIwMFwiXSBbZGF0YS1hb3NdIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogLjJzOyB9XG5cbltkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PVwiMjAwXCJdLFxuYm9keVtkYXRhLWFvcy1kZWxheT1cIjIwMFwiXSBbZGF0YS1hb3NdIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMDsgfVxuXG5bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT1cIjIwMFwiXS5hb3MtYW5pbWF0ZSxcbmJvZHlbZGF0YS1hb3MtZGVsYXk9XCIyMDBcIl0gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IC4yczsgfVxuXG5bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj1cIjI1MFwiXSxcbmJvZHlbZGF0YS1hb3MtZHVyYXRpb249XCIyNTBcIl0gW2RhdGEtYW9zXSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IC4yNXM7IH1cblxuW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9XCIyNTBcIl0sXG5ib2R5W2RhdGEtYW9zLWRlbGF5PVwiMjUwXCJdIFtkYXRhLWFvc10ge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAwOyB9XG5cbltkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PVwiMjUwXCJdLmFvcy1hbmltYXRlLFxuYm9keVtkYXRhLWFvcy1kZWxheT1cIjI1MFwiXSBbZGF0YS1hb3NdLmFvcy1hbmltYXRlIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogLjI1czsgfVxuXG5bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj1cIjMwMFwiXSxcbmJvZHlbZGF0YS1hb3MtZHVyYXRpb249XCIzMDBcIl0gW2RhdGEtYW9zXSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IC4zczsgfVxuXG5bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT1cIjMwMFwiXSxcbmJvZHlbZGF0YS1hb3MtZGVsYXk9XCIzMDBcIl0gW2RhdGEtYW9zXSB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDA7IH1cblxuW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9XCIzMDBcIl0uYW9zLWFuaW1hdGUsXG5ib2R5W2RhdGEtYW9zLWRlbGF5PVwiMzAwXCJdIFtkYXRhLWFvc10uYW9zLWFuaW1hdGUge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAuM3M7IH1cblxuW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZHVyYXRpb249XCIzNTBcIl0sXG5ib2R5W2RhdGEtYW9zLWR1cmF0aW9uPVwiMzUwXCJdIFtkYXRhLWFvc10ge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAuMzVzOyB9XG5cbltkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PVwiMzUwXCJdLFxuYm9keVtkYXRhLWFvcy1kZWxheT1cIjM1MFwiXSBbZGF0YS1hb3NdIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMDsgfVxuXG5bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT1cIjM1MFwiXS5hb3MtYW5pbWF0ZSxcbmJvZHlbZGF0YS1hb3MtZGVsYXk9XCIzNTBcIl0gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IC4zNXM7IH1cblxuW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZHVyYXRpb249XCI0MDBcIl0sXG5ib2R5W2RhdGEtYW9zLWR1cmF0aW9uPVwiNDAwXCJdIFtkYXRhLWFvc10ge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAuNHM7IH1cblxuW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9XCI0MDBcIl0sXG5ib2R5W2RhdGEtYW9zLWRlbGF5PVwiNDAwXCJdIFtkYXRhLWFvc10ge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAwOyB9XG5cbltkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PVwiNDAwXCJdLmFvcy1hbmltYXRlLFxuYm9keVtkYXRhLWFvcy1kZWxheT1cIjQwMFwiXSBbZGF0YS1hb3NdLmFvcy1hbmltYXRlIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogLjRzOyB9XG5cbltkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWR1cmF0aW9uPVwiNDUwXCJdLFxuYm9keVtkYXRhLWFvcy1kdXJhdGlvbj1cIjQ1MFwiXSBbZGF0YS1hb3NdIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogLjQ1czsgfVxuXG5bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT1cIjQ1MFwiXSxcbmJvZHlbZGF0YS1hb3MtZGVsYXk9XCI0NTBcIl0gW2RhdGEtYW9zXSB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDA7IH1cblxuW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9XCI0NTBcIl0uYW9zLWFuaW1hdGUsXG5ib2R5W2RhdGEtYW9zLWRlbGF5PVwiNDUwXCJdIFtkYXRhLWFvc10uYW9zLWFuaW1hdGUge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAuNDVzOyB9XG5cbltkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWR1cmF0aW9uPVwiNTAwXCJdLFxuYm9keVtkYXRhLWFvcy1kdXJhdGlvbj1cIjUwMFwiXSBbZGF0YS1hb3NdIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogLjVzOyB9XG5cbltkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PVwiNTAwXCJdLFxuYm9keVtkYXRhLWFvcy1kZWxheT1cIjUwMFwiXSBbZGF0YS1hb3NdIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMDsgfVxuXG5bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT1cIjUwMFwiXS5hb3MtYW5pbWF0ZSxcbmJvZHlbZGF0YS1hb3MtZGVsYXk9XCI1MDBcIl0gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IC41czsgfVxuXG5bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj1cIjU1MFwiXSxcbmJvZHlbZGF0YS1hb3MtZHVyYXRpb249XCI1NTBcIl0gW2RhdGEtYW9zXSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IC41NXM7IH1cblxuW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9XCI1NTBcIl0sXG5ib2R5W2RhdGEtYW9zLWRlbGF5PVwiNTUwXCJdIFtkYXRhLWFvc10ge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAwOyB9XG5cbltkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PVwiNTUwXCJdLmFvcy1hbmltYXRlLFxuYm9keVtkYXRhLWFvcy1kZWxheT1cIjU1MFwiXSBbZGF0YS1hb3NdLmFvcy1hbmltYXRlIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogLjU1czsgfVxuXG5bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj1cIjYwMFwiXSxcbmJvZHlbZGF0YS1hb3MtZHVyYXRpb249XCI2MDBcIl0gW2RhdGEtYW9zXSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IC42czsgfVxuXG5bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT1cIjYwMFwiXSxcbmJvZHlbZGF0YS1hb3MtZGVsYXk9XCI2MDBcIl0gW2RhdGEtYW9zXSB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDA7IH1cblxuW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9XCI2MDBcIl0uYW9zLWFuaW1hdGUsXG5ib2R5W2RhdGEtYW9zLWRlbGF5PVwiNjAwXCJdIFtkYXRhLWFvc10uYW9zLWFuaW1hdGUge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAuNnM7IH1cblxuW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZHVyYXRpb249XCI2NTBcIl0sXG5ib2R5W2RhdGEtYW9zLWR1cmF0aW9uPVwiNjUwXCJdIFtkYXRhLWFvc10ge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAuNjVzOyB9XG5cbltkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PVwiNjUwXCJdLFxuYm9keVtkYXRhLWFvcy1kZWxheT1cIjY1MFwiXSBbZGF0YS1hb3NdIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMDsgfVxuXG5bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT1cIjY1MFwiXS5hb3MtYW5pbWF0ZSxcbmJvZHlbZGF0YS1hb3MtZGVsYXk9XCI2NTBcIl0gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IC42NXM7IH1cblxuW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZHVyYXRpb249XCI3MDBcIl0sXG5ib2R5W2RhdGEtYW9zLWR1cmF0aW9uPVwiNzAwXCJdIFtkYXRhLWFvc10ge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAuN3M7IH1cblxuW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9XCI3MDBcIl0sXG5ib2R5W2RhdGEtYW9zLWRlbGF5PVwiNzAwXCJdIFtkYXRhLWFvc10ge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAwOyB9XG5cbltkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PVwiNzAwXCJdLmFvcy1hbmltYXRlLFxuYm9keVtkYXRhLWFvcy1kZWxheT1cIjcwMFwiXSBbZGF0YS1hb3NdLmFvcy1hbmltYXRlIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogLjdzOyB9XG5cbltkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWR1cmF0aW9uPVwiNzUwXCJdLFxuYm9keVtkYXRhLWFvcy1kdXJhdGlvbj1cIjc1MFwiXSBbZGF0YS1hb3NdIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogLjc1czsgfVxuXG5bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT1cIjc1MFwiXSxcbmJvZHlbZGF0YS1hb3MtZGVsYXk9XCI3NTBcIl0gW2RhdGEtYW9zXSB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDA7IH1cblxuW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9XCI3NTBcIl0uYW9zLWFuaW1hdGUsXG5ib2R5W2RhdGEtYW9zLWRlbGF5PVwiNzUwXCJdIFtkYXRhLWFvc10uYW9zLWFuaW1hdGUge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAuNzVzOyB9XG5cbltkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWR1cmF0aW9uPVwiODAwXCJdLFxuYm9keVtkYXRhLWFvcy1kdXJhdGlvbj1cIjgwMFwiXSBbZGF0YS1hb3NdIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogLjhzOyB9XG5cbltkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PVwiODAwXCJdLFxuYm9keVtkYXRhLWFvcy1kZWxheT1cIjgwMFwiXSBbZGF0YS1hb3NdIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMDsgfVxuXG5bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT1cIjgwMFwiXS5hb3MtYW5pbWF0ZSxcbmJvZHlbZGF0YS1hb3MtZGVsYXk9XCI4MDBcIl0gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IC44czsgfVxuXG5bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj1cIjg1MFwiXSxcbmJvZHlbZGF0YS1hb3MtZHVyYXRpb249XCI4NTBcIl0gW2RhdGEtYW9zXSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IC44NXM7IH1cblxuW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9XCI4NTBcIl0sXG5ib2R5W2RhdGEtYW9zLWRlbGF5PVwiODUwXCJdIFtkYXRhLWFvc10ge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAwOyB9XG5cbltkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PVwiODUwXCJdLmFvcy1hbmltYXRlLFxuYm9keVtkYXRhLWFvcy1kZWxheT1cIjg1MFwiXSBbZGF0YS1hb3NdLmFvcy1hbmltYXRlIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogLjg1czsgfVxuXG5bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj1cIjkwMFwiXSxcbmJvZHlbZGF0YS1hb3MtZHVyYXRpb249XCI5MDBcIl0gW2RhdGEtYW9zXSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IC45czsgfVxuXG5bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT1cIjkwMFwiXSxcbmJvZHlbZGF0YS1hb3MtZGVsYXk9XCI5MDBcIl0gW2RhdGEtYW9zXSB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDA7IH1cblxuW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9XCI5MDBcIl0uYW9zLWFuaW1hdGUsXG5ib2R5W2RhdGEtYW9zLWRlbGF5PVwiOTAwXCJdIFtkYXRhLWFvc10uYW9zLWFuaW1hdGUge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAuOXM7IH1cblxuW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZHVyYXRpb249XCI5NTBcIl0sXG5ib2R5W2RhdGEtYW9zLWR1cmF0aW9uPVwiOTUwXCJdIFtkYXRhLWFvc10ge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAuOTVzOyB9XG5cbltkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PVwiOTUwXCJdLFxuYm9keVtkYXRhLWFvcy1kZWxheT1cIjk1MFwiXSBbZGF0YS1hb3NdIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMDsgfVxuXG5bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT1cIjk1MFwiXS5hb3MtYW5pbWF0ZSxcbmJvZHlbZGF0YS1hb3MtZGVsYXk9XCI5NTBcIl0gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IC45NXM7IH1cblxuW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZHVyYXRpb249XCIxMDAwXCJdLFxuYm9keVtkYXRhLWFvcy1kdXJhdGlvbj1cIjEwMDBcIl0gW2RhdGEtYW9zXSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDFzOyB9XG5cbltkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PVwiMTAwMFwiXSxcbmJvZHlbZGF0YS1hb3MtZGVsYXk9XCIxMDAwXCJdIFtkYXRhLWFvc10ge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAwOyB9XG5cbltkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PVwiMTAwMFwiXS5hb3MtYW5pbWF0ZSxcbmJvZHlbZGF0YS1hb3MtZGVsYXk9XCIxMDAwXCJdIFtkYXRhLWFvc10uYW9zLWFuaW1hdGUge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAxczsgfVxuXG5bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj1cIjEwNTBcIl0sXG5ib2R5W2RhdGEtYW9zLWR1cmF0aW9uPVwiMTA1MFwiXSBbZGF0YS1hb3NdIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMS4wNXM7IH1cblxuW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9XCIxMDUwXCJdLFxuYm9keVtkYXRhLWFvcy1kZWxheT1cIjEwNTBcIl0gW2RhdGEtYW9zXSB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDA7IH1cblxuW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9XCIxMDUwXCJdLmFvcy1hbmltYXRlLFxuYm9keVtkYXRhLWFvcy1kZWxheT1cIjEwNTBcIl0gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDEuMDVzOyB9XG5cbltkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWR1cmF0aW9uPVwiMTEwMFwiXSxcbmJvZHlbZGF0YS1hb3MtZHVyYXRpb249XCIxMTAwXCJdIFtkYXRhLWFvc10ge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAxLjFzOyB9XG5cbltkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PVwiMTEwMFwiXSxcbmJvZHlbZGF0YS1hb3MtZGVsYXk9XCIxMTAwXCJdIFtkYXRhLWFvc10ge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAwOyB9XG5cbltkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PVwiMTEwMFwiXS5hb3MtYW5pbWF0ZSxcbmJvZHlbZGF0YS1hb3MtZGVsYXk9XCIxMTAwXCJdIFtkYXRhLWFvc10uYW9zLWFuaW1hdGUge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAxLjFzOyB9XG5cbltkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWR1cmF0aW9uPVwiMTE1MFwiXSxcbmJvZHlbZGF0YS1hb3MtZHVyYXRpb249XCIxMTUwXCJdIFtkYXRhLWFvc10ge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAxLjE1czsgfVxuXG5bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT1cIjExNTBcIl0sXG5ib2R5W2RhdGEtYW9zLWRlbGF5PVwiMTE1MFwiXSBbZGF0YS1hb3NdIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMDsgfVxuXG5bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT1cIjExNTBcIl0uYW9zLWFuaW1hdGUsXG5ib2R5W2RhdGEtYW9zLWRlbGF5PVwiMTE1MFwiXSBbZGF0YS1hb3NdLmFvcy1hbmltYXRlIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMS4xNXM7IH1cblxuW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZHVyYXRpb249XCIxMjAwXCJdLFxuYm9keVtkYXRhLWFvcy1kdXJhdGlvbj1cIjEyMDBcIl0gW2RhdGEtYW9zXSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDEuMnM7IH1cblxuW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9XCIxMjAwXCJdLFxuYm9keVtkYXRhLWFvcy1kZWxheT1cIjEyMDBcIl0gW2RhdGEtYW9zXSB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDA7IH1cblxuW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9XCIxMjAwXCJdLmFvcy1hbmltYXRlLFxuYm9keVtkYXRhLWFvcy1kZWxheT1cIjEyMDBcIl0gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDEuMnM7IH1cblxuW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZHVyYXRpb249XCIxMjUwXCJdLFxuYm9keVtkYXRhLWFvcy1kdXJhdGlvbj1cIjEyNTBcIl0gW2RhdGEtYW9zXSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDEuMjVzOyB9XG5cbltkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PVwiMTI1MFwiXSxcbmJvZHlbZGF0YS1hb3MtZGVsYXk9XCIxMjUwXCJdIFtkYXRhLWFvc10ge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAwOyB9XG5cbltkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PVwiMTI1MFwiXS5hb3MtYW5pbWF0ZSxcbmJvZHlbZGF0YS1hb3MtZGVsYXk9XCIxMjUwXCJdIFtkYXRhLWFvc10uYW9zLWFuaW1hdGUge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAxLjI1czsgfVxuXG5bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj1cIjEzMDBcIl0sXG5ib2R5W2RhdGEtYW9zLWR1cmF0aW9uPVwiMTMwMFwiXSBbZGF0YS1hb3NdIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMS4zczsgfVxuXG5bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT1cIjEzMDBcIl0sXG5ib2R5W2RhdGEtYW9zLWRlbGF5PVwiMTMwMFwiXSBbZGF0YS1hb3NdIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMDsgfVxuXG5bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT1cIjEzMDBcIl0uYW9zLWFuaW1hdGUsXG5ib2R5W2RhdGEtYW9zLWRlbGF5PVwiMTMwMFwiXSBbZGF0YS1hb3NdLmFvcy1hbmltYXRlIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMS4zczsgfVxuXG5bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj1cIjEzNTBcIl0sXG5ib2R5W2RhdGEtYW9zLWR1cmF0aW9uPVwiMTM1MFwiXSBbZGF0YS1hb3NdIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMS4zNXM7IH1cblxuW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9XCIxMzUwXCJdLFxuYm9keVtkYXRhLWFvcy1kZWxheT1cIjEzNTBcIl0gW2RhdGEtYW9zXSB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDA7IH1cblxuW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9XCIxMzUwXCJdLmFvcy1hbmltYXRlLFxuYm9keVtkYXRhLWFvcy1kZWxheT1cIjEzNTBcIl0gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDEuMzVzOyB9XG5cbltkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWR1cmF0aW9uPVwiMTQwMFwiXSxcbmJvZHlbZGF0YS1hb3MtZHVyYXRpb249XCIxNDAwXCJdIFtkYXRhLWFvc10ge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAxLjRzOyB9XG5cbltkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PVwiMTQwMFwiXSxcbmJvZHlbZGF0YS1hb3MtZGVsYXk9XCIxNDAwXCJdIFtkYXRhLWFvc10ge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAwOyB9XG5cbltkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PVwiMTQwMFwiXS5hb3MtYW5pbWF0ZSxcbmJvZHlbZGF0YS1hb3MtZGVsYXk9XCIxNDAwXCJdIFtkYXRhLWFvc10uYW9zLWFuaW1hdGUge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAxLjRzOyB9XG5cbltkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWR1cmF0aW9uPVwiMTQ1MFwiXSxcbmJvZHlbZGF0YS1hb3MtZHVyYXRpb249XCIxNDUwXCJdIFtkYXRhLWFvc10ge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAxLjQ1czsgfVxuXG5bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT1cIjE0NTBcIl0sXG5ib2R5W2RhdGEtYW9zLWRlbGF5PVwiMTQ1MFwiXSBbZGF0YS1hb3NdIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMDsgfVxuXG5bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT1cIjE0NTBcIl0uYW9zLWFuaW1hdGUsXG5ib2R5W2RhdGEtYW9zLWRlbGF5PVwiMTQ1MFwiXSBbZGF0YS1hb3NdLmFvcy1hbmltYXRlIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMS40NXM7IH1cblxuW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZHVyYXRpb249XCIxNTAwXCJdLFxuYm9keVtkYXRhLWFvcy1kdXJhdGlvbj1cIjE1MDBcIl0gW2RhdGEtYW9zXSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDEuNXM7IH1cblxuW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9XCIxNTAwXCJdLFxuYm9keVtkYXRhLWFvcy1kZWxheT1cIjE1MDBcIl0gW2RhdGEtYW9zXSB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDA7IH1cblxuW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9XCIxNTAwXCJdLmFvcy1hbmltYXRlLFxuYm9keVtkYXRhLWFvcy1kZWxheT1cIjE1MDBcIl0gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDEuNXM7IH1cblxuW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZHVyYXRpb249XCIxNTUwXCJdLFxuYm9keVtkYXRhLWFvcy1kdXJhdGlvbj1cIjE1NTBcIl0gW2RhdGEtYW9zXSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDEuNTVzOyB9XG5cbltkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PVwiMTU1MFwiXSxcbmJvZHlbZGF0YS1hb3MtZGVsYXk9XCIxNTUwXCJdIFtkYXRhLWFvc10ge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAwOyB9XG5cbltkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PVwiMTU1MFwiXS5hb3MtYW5pbWF0ZSxcbmJvZHlbZGF0YS1hb3MtZGVsYXk9XCIxNTUwXCJdIFtkYXRhLWFvc10uYW9zLWFuaW1hdGUge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAxLjU1czsgfVxuXG5bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj1cIjE2MDBcIl0sXG5ib2R5W2RhdGEtYW9zLWR1cmF0aW9uPVwiMTYwMFwiXSBbZGF0YS1hb3NdIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMS42czsgfVxuXG5bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT1cIjE2MDBcIl0sXG5ib2R5W2RhdGEtYW9zLWRlbGF5PVwiMTYwMFwiXSBbZGF0YS1hb3NdIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMDsgfVxuXG5bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT1cIjE2MDBcIl0uYW9zLWFuaW1hdGUsXG5ib2R5W2RhdGEtYW9zLWRlbGF5PVwiMTYwMFwiXSBbZGF0YS1hb3NdLmFvcy1hbmltYXRlIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMS42czsgfVxuXG5bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj1cIjE2NTBcIl0sXG5ib2R5W2RhdGEtYW9zLWR1cmF0aW9uPVwiMTY1MFwiXSBbZGF0YS1hb3NdIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMS42NXM7IH1cblxuW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9XCIxNjUwXCJdLFxuYm9keVtkYXRhLWFvcy1kZWxheT1cIjE2NTBcIl0gW2RhdGEtYW9zXSB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDA7IH1cblxuW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9XCIxNjUwXCJdLmFvcy1hbmltYXRlLFxuYm9keVtkYXRhLWFvcy1kZWxheT1cIjE2NTBcIl0gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDEuNjVzOyB9XG5cbltkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWR1cmF0aW9uPVwiMTcwMFwiXSxcbmJvZHlbZGF0YS1hb3MtZHVyYXRpb249XCIxNzAwXCJdIFtkYXRhLWFvc10ge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAxLjdzOyB9XG5cbltkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PVwiMTcwMFwiXSxcbmJvZHlbZGF0YS1hb3MtZGVsYXk9XCIxNzAwXCJdIFtkYXRhLWFvc10ge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAwOyB9XG5cbltkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PVwiMTcwMFwiXS5hb3MtYW5pbWF0ZSxcbmJvZHlbZGF0YS1hb3MtZGVsYXk9XCIxNzAwXCJdIFtkYXRhLWFvc10uYW9zLWFuaW1hdGUge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAxLjdzOyB9XG5cbltkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWR1cmF0aW9uPVwiMTc1MFwiXSxcbmJvZHlbZGF0YS1hb3MtZHVyYXRpb249XCIxNzUwXCJdIFtkYXRhLWFvc10ge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAxLjc1czsgfVxuXG5bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT1cIjE3NTBcIl0sXG5ib2R5W2RhdGEtYW9zLWRlbGF5PVwiMTc1MFwiXSBbZGF0YS1hb3NdIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMDsgfVxuXG5bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT1cIjE3NTBcIl0uYW9zLWFuaW1hdGUsXG5ib2R5W2RhdGEtYW9zLWRlbGF5PVwiMTc1MFwiXSBbZGF0YS1hb3NdLmFvcy1hbmltYXRlIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMS43NXM7IH1cblxuW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZHVyYXRpb249XCIxODAwXCJdLFxuYm9keVtkYXRhLWFvcy1kdXJhdGlvbj1cIjE4MDBcIl0gW2RhdGEtYW9zXSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDEuOHM7IH1cblxuW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9XCIxODAwXCJdLFxuYm9keVtkYXRhLWFvcy1kZWxheT1cIjE4MDBcIl0gW2RhdGEtYW9zXSB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDA7IH1cblxuW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9XCIxODAwXCJdLmFvcy1hbmltYXRlLFxuYm9keVtkYXRhLWFvcy1kZWxheT1cIjE4MDBcIl0gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDEuOHM7IH1cblxuW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZHVyYXRpb249XCIxODUwXCJdLFxuYm9keVtkYXRhLWFvcy1kdXJhdGlvbj1cIjE4NTBcIl0gW2RhdGEtYW9zXSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDEuODVzOyB9XG5cbltkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PVwiMTg1MFwiXSxcbmJvZHlbZGF0YS1hb3MtZGVsYXk9XCIxODUwXCJdIFtkYXRhLWFvc10ge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAwOyB9XG5cbltkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PVwiMTg1MFwiXS5hb3MtYW5pbWF0ZSxcbmJvZHlbZGF0YS1hb3MtZGVsYXk9XCIxODUwXCJdIFtkYXRhLWFvc10uYW9zLWFuaW1hdGUge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAxLjg1czsgfVxuXG5bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj1cIjE5MDBcIl0sXG5ib2R5W2RhdGEtYW9zLWR1cmF0aW9uPVwiMTkwMFwiXSBbZGF0YS1hb3NdIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMS45czsgfVxuXG5bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT1cIjE5MDBcIl0sXG5ib2R5W2RhdGEtYW9zLWRlbGF5PVwiMTkwMFwiXSBbZGF0YS1hb3NdIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMDsgfVxuXG5bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT1cIjE5MDBcIl0uYW9zLWFuaW1hdGUsXG5ib2R5W2RhdGEtYW9zLWRlbGF5PVwiMTkwMFwiXSBbZGF0YS1hb3NdLmFvcy1hbmltYXRlIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMS45czsgfVxuXG5bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj1cIjE5NTBcIl0sXG5ib2R5W2RhdGEtYW9zLWR1cmF0aW9uPVwiMTk1MFwiXSBbZGF0YS1hb3NdIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMS45NXM7IH1cblxuW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9XCIxOTUwXCJdLFxuYm9keVtkYXRhLWFvcy1kZWxheT1cIjE5NTBcIl0gW2RhdGEtYW9zXSB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDA7IH1cblxuW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9XCIxOTUwXCJdLmFvcy1hbmltYXRlLFxuYm9keVtkYXRhLWFvcy1kZWxheT1cIjE5NTBcIl0gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDEuOTVzOyB9XG5cbltkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWR1cmF0aW9uPVwiMjAwMFwiXSxcbmJvZHlbZGF0YS1hb3MtZHVyYXRpb249XCIyMDAwXCJdIFtkYXRhLWFvc10ge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAyczsgfVxuXG5bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT1cIjIwMDBcIl0sXG5ib2R5W2RhdGEtYW9zLWRlbGF5PVwiMjAwMFwiXSBbZGF0YS1hb3NdIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMDsgfVxuXG5bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT1cIjIwMDBcIl0uYW9zLWFuaW1hdGUsXG5ib2R5W2RhdGEtYW9zLWRlbGF5PVwiMjAwMFwiXSBbZGF0YS1hb3NdLmFvcy1hbmltYXRlIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMnM7IH1cblxuW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZHVyYXRpb249XCIyMDUwXCJdLFxuYm9keVtkYXRhLWFvcy1kdXJhdGlvbj1cIjIwNTBcIl0gW2RhdGEtYW9zXSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDIuMDVzOyB9XG5cbltkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PVwiMjA1MFwiXSxcbmJvZHlbZGF0YS1hb3MtZGVsYXk9XCIyMDUwXCJdIFtkYXRhLWFvc10ge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAwOyB9XG5cbltkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PVwiMjA1MFwiXS5hb3MtYW5pbWF0ZSxcbmJvZHlbZGF0YS1hb3MtZGVsYXk9XCIyMDUwXCJdIFtkYXRhLWFvc10uYW9zLWFuaW1hdGUge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAyLjA1czsgfVxuXG5bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj1cIjIxMDBcIl0sXG5ib2R5W2RhdGEtYW9zLWR1cmF0aW9uPVwiMjEwMFwiXSBbZGF0YS1hb3NdIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMi4xczsgfVxuXG5bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT1cIjIxMDBcIl0sXG5ib2R5W2RhdGEtYW9zLWRlbGF5PVwiMjEwMFwiXSBbZGF0YS1hb3NdIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMDsgfVxuXG5bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT1cIjIxMDBcIl0uYW9zLWFuaW1hdGUsXG5ib2R5W2RhdGEtYW9zLWRlbGF5PVwiMjEwMFwiXSBbZGF0YS1hb3NdLmFvcy1hbmltYXRlIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMi4xczsgfVxuXG5bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj1cIjIxNTBcIl0sXG5ib2R5W2RhdGEtYW9zLWR1cmF0aW9uPVwiMjE1MFwiXSBbZGF0YS1hb3NdIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMi4xNXM7IH1cblxuW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9XCIyMTUwXCJdLFxuYm9keVtkYXRhLWFvcy1kZWxheT1cIjIxNTBcIl0gW2RhdGEtYW9zXSB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDA7IH1cblxuW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9XCIyMTUwXCJdLmFvcy1hbmltYXRlLFxuYm9keVtkYXRhLWFvcy1kZWxheT1cIjIxNTBcIl0gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDIuMTVzOyB9XG5cbltkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWR1cmF0aW9uPVwiMjIwMFwiXSxcbmJvZHlbZGF0YS1hb3MtZHVyYXRpb249XCIyMjAwXCJdIFtkYXRhLWFvc10ge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAyLjJzOyB9XG5cbltkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PVwiMjIwMFwiXSxcbmJvZHlbZGF0YS1hb3MtZGVsYXk9XCIyMjAwXCJdIFtkYXRhLWFvc10ge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAwOyB9XG5cbltkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PVwiMjIwMFwiXS5hb3MtYW5pbWF0ZSxcbmJvZHlbZGF0YS1hb3MtZGVsYXk9XCIyMjAwXCJdIFtkYXRhLWFvc10uYW9zLWFuaW1hdGUge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAyLjJzOyB9XG5cbltkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWR1cmF0aW9uPVwiMjI1MFwiXSxcbmJvZHlbZGF0YS1hb3MtZHVyYXRpb249XCIyMjUwXCJdIFtkYXRhLWFvc10ge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAyLjI1czsgfVxuXG5bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT1cIjIyNTBcIl0sXG5ib2R5W2RhdGEtYW9zLWRlbGF5PVwiMjI1MFwiXSBbZGF0YS1hb3NdIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMDsgfVxuXG5bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT1cIjIyNTBcIl0uYW9zLWFuaW1hdGUsXG5ib2R5W2RhdGEtYW9zLWRlbGF5PVwiMjI1MFwiXSBbZGF0YS1hb3NdLmFvcy1hbmltYXRlIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMi4yNXM7IH1cblxuW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZHVyYXRpb249XCIyMzAwXCJdLFxuYm9keVtkYXRhLWFvcy1kdXJhdGlvbj1cIjIzMDBcIl0gW2RhdGEtYW9zXSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDIuM3M7IH1cblxuW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9XCIyMzAwXCJdLFxuYm9keVtkYXRhLWFvcy1kZWxheT1cIjIzMDBcIl0gW2RhdGEtYW9zXSB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDA7IH1cblxuW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9XCIyMzAwXCJdLmFvcy1hbmltYXRlLFxuYm9keVtkYXRhLWFvcy1kZWxheT1cIjIzMDBcIl0gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDIuM3M7IH1cblxuW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZHVyYXRpb249XCIyMzUwXCJdLFxuYm9keVtkYXRhLWFvcy1kdXJhdGlvbj1cIjIzNTBcIl0gW2RhdGEtYW9zXSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDIuMzVzOyB9XG5cbltkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PVwiMjM1MFwiXSxcbmJvZHlbZGF0YS1hb3MtZGVsYXk9XCIyMzUwXCJdIFtkYXRhLWFvc10ge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAwOyB9XG5cbltkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PVwiMjM1MFwiXS5hb3MtYW5pbWF0ZSxcbmJvZHlbZGF0YS1hb3MtZGVsYXk9XCIyMzUwXCJdIFtkYXRhLWFvc10uYW9zLWFuaW1hdGUge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAyLjM1czsgfVxuXG5bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj1cIjI0MDBcIl0sXG5ib2R5W2RhdGEtYW9zLWR1cmF0aW9uPVwiMjQwMFwiXSBbZGF0YS1hb3NdIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMi40czsgfVxuXG5bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT1cIjI0MDBcIl0sXG5ib2R5W2RhdGEtYW9zLWRlbGF5PVwiMjQwMFwiXSBbZGF0YS1hb3NdIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMDsgfVxuXG5bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT1cIjI0MDBcIl0uYW9zLWFuaW1hdGUsXG5ib2R5W2RhdGEtYW9zLWRlbGF5PVwiMjQwMFwiXSBbZGF0YS1hb3NdLmFvcy1hbmltYXRlIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMi40czsgfVxuXG5bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj1cIjI0NTBcIl0sXG5ib2R5W2RhdGEtYW9zLWR1cmF0aW9uPVwiMjQ1MFwiXSBbZGF0YS1hb3NdIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMi40NXM7IH1cblxuW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9XCIyNDUwXCJdLFxuYm9keVtkYXRhLWFvcy1kZWxheT1cIjI0NTBcIl0gW2RhdGEtYW9zXSB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDA7IH1cblxuW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9XCIyNDUwXCJdLmFvcy1hbmltYXRlLFxuYm9keVtkYXRhLWFvcy1kZWxheT1cIjI0NTBcIl0gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDIuNDVzOyB9XG5cbltkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWR1cmF0aW9uPVwiMjUwMFwiXSxcbmJvZHlbZGF0YS1hb3MtZHVyYXRpb249XCIyNTAwXCJdIFtkYXRhLWFvc10ge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAyLjVzOyB9XG5cbltkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PVwiMjUwMFwiXSxcbmJvZHlbZGF0YS1hb3MtZGVsYXk9XCIyNTAwXCJdIFtkYXRhLWFvc10ge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAwOyB9XG5cbltkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PVwiMjUwMFwiXS5hb3MtYW5pbWF0ZSxcbmJvZHlbZGF0YS1hb3MtZGVsYXk9XCIyNTAwXCJdIFtkYXRhLWFvc10uYW9zLWFuaW1hdGUge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAyLjVzOyB9XG5cbltkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWR1cmF0aW9uPVwiMjU1MFwiXSxcbmJvZHlbZGF0YS1hb3MtZHVyYXRpb249XCIyNTUwXCJdIFtkYXRhLWFvc10ge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAyLjU1czsgfVxuXG5bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT1cIjI1NTBcIl0sXG5ib2R5W2RhdGEtYW9zLWRlbGF5PVwiMjU1MFwiXSBbZGF0YS1hb3NdIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMDsgfVxuXG5bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT1cIjI1NTBcIl0uYW9zLWFuaW1hdGUsXG5ib2R5W2RhdGEtYW9zLWRlbGF5PVwiMjU1MFwiXSBbZGF0YS1hb3NdLmFvcy1hbmltYXRlIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMi41NXM7IH1cblxuW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZHVyYXRpb249XCIyNjAwXCJdLFxuYm9keVtkYXRhLWFvcy1kdXJhdGlvbj1cIjI2MDBcIl0gW2RhdGEtYW9zXSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDIuNnM7IH1cblxuW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9XCIyNjAwXCJdLFxuYm9keVtkYXRhLWFvcy1kZWxheT1cIjI2MDBcIl0gW2RhdGEtYW9zXSB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDA7IH1cblxuW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9XCIyNjAwXCJdLmFvcy1hbmltYXRlLFxuYm9keVtkYXRhLWFvcy1kZWxheT1cIjI2MDBcIl0gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDIuNnM7IH1cblxuW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZHVyYXRpb249XCIyNjUwXCJdLFxuYm9keVtkYXRhLWFvcy1kdXJhdGlvbj1cIjI2NTBcIl0gW2RhdGEtYW9zXSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDIuNjVzOyB9XG5cbltkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PVwiMjY1MFwiXSxcbmJvZHlbZGF0YS1hb3MtZGVsYXk9XCIyNjUwXCJdIFtkYXRhLWFvc10ge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAwOyB9XG5cbltkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PVwiMjY1MFwiXS5hb3MtYW5pbWF0ZSxcbmJvZHlbZGF0YS1hb3MtZGVsYXk9XCIyNjUwXCJdIFtkYXRhLWFvc10uYW9zLWFuaW1hdGUge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAyLjY1czsgfVxuXG5bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj1cIjI3MDBcIl0sXG5ib2R5W2RhdGEtYW9zLWR1cmF0aW9uPVwiMjcwMFwiXSBbZGF0YS1hb3NdIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMi43czsgfVxuXG5bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT1cIjI3MDBcIl0sXG5ib2R5W2RhdGEtYW9zLWRlbGF5PVwiMjcwMFwiXSBbZGF0YS1hb3NdIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMDsgfVxuXG5bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT1cIjI3MDBcIl0uYW9zLWFuaW1hdGUsXG5ib2R5W2RhdGEtYW9zLWRlbGF5PVwiMjcwMFwiXSBbZGF0YS1hb3NdLmFvcy1hbmltYXRlIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMi43czsgfVxuXG5bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj1cIjI3NTBcIl0sXG5ib2R5W2RhdGEtYW9zLWR1cmF0aW9uPVwiMjc1MFwiXSBbZGF0YS1hb3NdIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMi43NXM7IH1cblxuW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9XCIyNzUwXCJdLFxuYm9keVtkYXRhLWFvcy1kZWxheT1cIjI3NTBcIl0gW2RhdGEtYW9zXSB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDA7IH1cblxuW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9XCIyNzUwXCJdLmFvcy1hbmltYXRlLFxuYm9keVtkYXRhLWFvcy1kZWxheT1cIjI3NTBcIl0gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDIuNzVzOyB9XG5cbltkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWR1cmF0aW9uPVwiMjgwMFwiXSxcbmJvZHlbZGF0YS1hb3MtZHVyYXRpb249XCIyODAwXCJdIFtkYXRhLWFvc10ge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAyLjhzOyB9XG5cbltkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PVwiMjgwMFwiXSxcbmJvZHlbZGF0YS1hb3MtZGVsYXk9XCIyODAwXCJdIFtkYXRhLWFvc10ge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAwOyB9XG5cbltkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PVwiMjgwMFwiXS5hb3MtYW5pbWF0ZSxcbmJvZHlbZGF0YS1hb3MtZGVsYXk9XCIyODAwXCJdIFtkYXRhLWFvc10uYW9zLWFuaW1hdGUge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAyLjhzOyB9XG5cbltkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWR1cmF0aW9uPVwiMjg1MFwiXSxcbmJvZHlbZGF0YS1hb3MtZHVyYXRpb249XCIyODUwXCJdIFtkYXRhLWFvc10ge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAyLjg1czsgfVxuXG5bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT1cIjI4NTBcIl0sXG5ib2R5W2RhdGEtYW9zLWRlbGF5PVwiMjg1MFwiXSBbZGF0YS1hb3NdIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMDsgfVxuXG5bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT1cIjI4NTBcIl0uYW9zLWFuaW1hdGUsXG5ib2R5W2RhdGEtYW9zLWRlbGF5PVwiMjg1MFwiXSBbZGF0YS1hb3NdLmFvcy1hbmltYXRlIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMi44NXM7IH1cblxuW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZHVyYXRpb249XCIyOTAwXCJdLFxuYm9keVtkYXRhLWFvcy1kdXJhdGlvbj1cIjI5MDBcIl0gW2RhdGEtYW9zXSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDIuOXM7IH1cblxuW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9XCIyOTAwXCJdLFxuYm9keVtkYXRhLWFvcy1kZWxheT1cIjI5MDBcIl0gW2RhdGEtYW9zXSB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDA7IH1cblxuW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9XCIyOTAwXCJdLmFvcy1hbmltYXRlLFxuYm9keVtkYXRhLWFvcy1kZWxheT1cIjI5MDBcIl0gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDIuOXM7IH1cblxuW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZHVyYXRpb249XCIyOTUwXCJdLFxuYm9keVtkYXRhLWFvcy1kdXJhdGlvbj1cIjI5NTBcIl0gW2RhdGEtYW9zXSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDIuOTVzOyB9XG5cbltkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PVwiMjk1MFwiXSxcbmJvZHlbZGF0YS1hb3MtZGVsYXk9XCIyOTUwXCJdIFtkYXRhLWFvc10ge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAwOyB9XG5cbltkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PVwiMjk1MFwiXS5hb3MtYW5pbWF0ZSxcbmJvZHlbZGF0YS1hb3MtZGVsYXk9XCIyOTUwXCJdIFtkYXRhLWFvc10uYW9zLWFuaW1hdGUge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAyLjk1czsgfVxuXG5bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj1cIjMwMDBcIl0sXG5ib2R5W2RhdGEtYW9zLWR1cmF0aW9uPVwiMzAwMFwiXSBbZGF0YS1hb3NdIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogM3M7IH1cblxuW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9XCIzMDAwXCJdLFxuYm9keVtkYXRhLWFvcy1kZWxheT1cIjMwMDBcIl0gW2RhdGEtYW9zXSB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDA7IH1cblxuW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9XCIzMDAwXCJdLmFvcy1hbmltYXRlLFxuYm9keVtkYXRhLWFvcy1kZWxheT1cIjMwMDBcIl0gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDNzOyB9XG5cbltkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWVhc2luZz1saW5lYXJdLFxuYm9keVtkYXRhLWFvcy1lYXNpbmc9bGluZWFyXSBbZGF0YS1hb3NdIHtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjI1LCAwLjI1LCAwLjc1LCAwLjc1KTsgfVxuXG5bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1lYXNpbmc9ZWFzZV0sXG5ib2R5W2RhdGEtYW9zLWVhc2luZz1lYXNlXSBbZGF0YS1hb3NdIHtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2U7IH1cblxuW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZWFzaW5nPWVhc2UtaW5dLFxuYm9keVtkYXRhLWFvcy1lYXNpbmc9ZWFzZS1pbl0gW2RhdGEtYW9zXSB7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluOyB9XG5cbltkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWVhc2luZz1lYXNlLW91dF0sXG5ib2R5W2RhdGEtYW9zLWVhc2luZz1lYXNlLW91dF0gW2RhdGEtYW9zXSB7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDsgfVxuXG5bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1lYXNpbmc9ZWFzZS1pbi1vdXRdLFxuYm9keVtkYXRhLWFvcy1lYXNpbmc9ZWFzZS1pbi1vdXRdIFtkYXRhLWFvc10ge1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7IH1cblxuW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZWFzaW5nPWVhc2UtaW4tYmFja10sXG5ib2R5W2RhdGEtYW9zLWVhc2luZz1lYXNlLWluLWJhY2tdIFtkYXRhLWFvc10ge1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNiwgLTAuMjgsIDAuNzM1LCAwLjA0NSk7IH1cblxuW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZWFzaW5nPWVhc2Utb3V0LWJhY2tdLFxuYm9keVtkYXRhLWFvcy1lYXNpbmc9ZWFzZS1vdXQtYmFja10gW2RhdGEtYW9zXSB7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4xNzUsIDAuODg1LCAwLjMyLCAxLjI3NSk7IH1cblxuW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZWFzaW5nPWVhc2UtaW4tb3V0LWJhY2tdLFxuYm9keVtkYXRhLWFvcy1lYXNpbmc9ZWFzZS1pbi1vdXQtYmFja10gW2RhdGEtYW9zXSB7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC42OCwgLTAuNTUsIDAuMjY1LCAxLjU1KTsgfVxuXG5bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1lYXNpbmc9ZWFzZS1pbi1zaW5lXSxcbmJvZHlbZGF0YS1hb3MtZWFzaW5nPWVhc2UtaW4tc2luZV0gW2RhdGEtYW9zXSB7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC40NywgMCwgMC43NDUsIDAuNzE1KTsgfVxuXG5bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1lYXNpbmc9ZWFzZS1vdXQtc2luZV0sXG5ib2R5W2RhdGEtYW9zLWVhc2luZz1lYXNlLW91dC1zaW5lXSBbZGF0YS1hb3NdIHtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjM5LCAwLjU3NSwgMC41NjUsIDEpOyB9XG5cbltkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWVhc2luZz1lYXNlLWluLW91dC1zaW5lXSxcbmJvZHlbZGF0YS1hb3MtZWFzaW5nPWVhc2UtaW4tb3V0LXNpbmVdIFtkYXRhLWFvc10ge1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNDQ1LCAwLjA1LCAwLjU1LCAwLjk1KTsgfVxuXG5bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1lYXNpbmc9ZWFzZS1pbi1xdWFkXSxcbmJvZHlbZGF0YS1hb3MtZWFzaW5nPWVhc2UtaW4tcXVhZF0gW2RhdGEtYW9zXSB7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NSwgMC4wODUsIDAuNjgsIDAuNTMpOyB9XG5cbltkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWVhc2luZz1lYXNlLW91dC1xdWFkXSxcbmJvZHlbZGF0YS1hb3MtZWFzaW5nPWVhc2Utb3V0LXF1YWRdIFtkYXRhLWFvc10ge1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjUsIDAuNDYsIDAuNDUsIDAuOTQpOyB9XG5cbltkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWVhc2luZz1lYXNlLWluLW91dC1xdWFkXSxcbmJvZHlbZGF0YS1hb3MtZWFzaW5nPWVhc2UtaW4tb3V0LXF1YWRdIFtkYXRhLWFvc10ge1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNDU1LCAwLjAzLCAwLjUxNSwgMC45NTUpOyB9XG5cbltkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWVhc2luZz1lYXNlLWluLWN1YmljXSxcbmJvZHlbZGF0YS1hb3MtZWFzaW5nPWVhc2UtaW4tY3ViaWNdIFtkYXRhLWFvc10ge1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDg1LCAwLjY4LCAwLjUzKTsgfVxuXG5bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1lYXNpbmc9ZWFzZS1vdXQtY3ViaWNdLFxuYm9keVtkYXRhLWFvcy1lYXNpbmc9ZWFzZS1vdXQtY3ViaWNdIFtkYXRhLWFvc10ge1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjUsIDAuNDYsIDAuNDUsIDAuOTQpOyB9XG5cbltkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWVhc2luZz1lYXNlLWluLW91dC1jdWJpY10sXG5ib2R5W2RhdGEtYW9zLWVhc2luZz1lYXNlLWluLW91dC1jdWJpY10gW2RhdGEtYW9zXSB7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC40NTUsIDAuMDMsIDAuNTE1LCAwLjk1NSk7IH1cblxuW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZWFzaW5nPWVhc2UtaW4tcXVhcnRdLFxuYm9keVtkYXRhLWFvcy1lYXNpbmc9ZWFzZS1pbi1xdWFydF0gW2RhdGEtYW9zXSB7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NSwgMC4wODUsIDAuNjgsIDAuNTMpOyB9XG5cbltkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWVhc2luZz1lYXNlLW91dC1xdWFydF0sXG5ib2R5W2RhdGEtYW9zLWVhc2luZz1lYXNlLW91dC1xdWFydF0gW2RhdGEtYW9zXSB7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yNSwgMC40NiwgMC40NSwgMC45NCk7IH1cblxuW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZWFzaW5nPWVhc2UtaW4tb3V0LXF1YXJ0XSxcbmJvZHlbZGF0YS1hb3MtZWFzaW5nPWVhc2UtaW4tb3V0LXF1YXJ0XSBbZGF0YS1hb3NdIHtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjQ1NSwgMC4wMywgMC41MTUsIDAuOTU1KTsgfVxuXG5bZGF0YS1hb3NePWZhZGVdW2RhdGEtYW9zXj1mYWRlXSB7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IG9wYWNpdHksIHRyYW5zZm9ybTsgfVxuXG5bZGF0YS1hb3NePWZhZGVdW2RhdGEtYW9zXj1mYWRlXS5hb3MtYW5pbWF0ZSB7XG4gIG9wYWNpdHk6IDE7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTsgfVxuXG5bZGF0YS1hb3M9ZmFkZS11cF0ge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwMHB4LCAwKTsgfVxuXG5bZGF0YS1hb3M9ZmFkZS1kb3duXSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwMHB4LCAwKTsgfVxuXG5bZGF0YS1hb3M9ZmFkZS1yaWdodF0ge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDBweCwgMCwgMCk7IH1cblxuW2RhdGEtYW9zPWZhZGUtbGVmdF0ge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMHB4LCAwLCAwKTsgfVxuXG5bZGF0YS1hb3M9ZmFkZS11cC1yaWdodF0ge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDBweCwgMTAwcHgsIDApOyB9XG5cbltkYXRhLWFvcz1mYWRlLXVwLWxlZnRdIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDBweCwgMTAwcHgsIDApOyB9XG5cbltkYXRhLWFvcz1mYWRlLWRvd24tcmlnaHRdIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwcHgsIC0xMDBweCwgMCk7IH1cblxuW2RhdGEtYW9zPWZhZGUtZG93bi1sZWZ0XSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwcHgsIC0xMDBweCwgMCk7IH1cblxuW2RhdGEtYW9zXj16b29tXVtkYXRhLWFvc149em9vbV0ge1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5LCB0cmFuc2Zvcm07IH1cblxuW2RhdGEtYW9zXj16b29tXVtkYXRhLWFvc149em9vbV0uYW9zLWFuaW1hdGUge1xuICBvcGFjaXR5OiAxO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCkgc2NhbGUoMSk7IH1cblxuW2RhdGEtYW9zPXpvb20taW5dIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwLjYpOyB9XG5cbltkYXRhLWFvcz16b29tLWluLXVwXSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTAwcHgsIDApIHNjYWxlKDAuNik7IH1cblxuW2RhdGEtYW9zPXpvb20taW4tZG93bl0ge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMDBweCwgMCkgc2NhbGUoMC42KTsgfVxuXG5bZGF0YS1hb3M9em9vbS1pbi1yaWdodF0ge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDBweCwgMCwgMCkgc2NhbGUoMC42KTsgfVxuXG5bZGF0YS1hb3M9em9vbS1pbi1sZWZ0XSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwcHgsIDAsIDApIHNjYWxlKDAuNik7IH1cblxuW2RhdGEtYW9zPXpvb20tb3V0XSB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMS4yKTsgfVxuXG5bZGF0YS1hb3M9em9vbS1vdXQtdXBdIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMDBweCwgMCkgc2NhbGUoMS4yKTsgfVxuXG5bZGF0YS1hb3M9em9vbS1vdXQtZG93bl0ge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMDBweCwgMCkgc2NhbGUoMS4yKTsgfVxuXG5bZGF0YS1hb3M9em9vbS1vdXQtcmlnaHRdIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwcHgsIDAsIDApIHNjYWxlKDEuMik7IH1cblxuW2RhdGEtYW9zPXpvb20tb3V0LWxlZnRdIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDBweCwgMCwgMCkgc2NhbGUoMS4yKTsgfVxuXG5bZGF0YS1hb3NePXNsaWRlXVtkYXRhLWFvc149c2xpZGVdIHtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtOyB9XG5cbltkYXRhLWFvc149c2xpZGVdW2RhdGEtYW9zXj1zbGlkZV0uYW9zLWFuaW1hdGUge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7IH1cblxuW2RhdGEtYW9zPXNsaWRlLXVwXSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTAwJSwgMCk7IH1cblxuW2RhdGEtYW9zPXNsaWRlLWRvd25dIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTAwJSwgMCk7IH1cblxuW2RhdGEtYW9zPXNsaWRlLXJpZ2h0XSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApOyB9XG5cbltkYXRhLWFvcz1zbGlkZS1sZWZ0XSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCk7IH1cblxuW2RhdGEtYW9zXj1mbGlwXVtkYXRhLWFvc149ZmxpcF0ge1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTsgfVxuXG5bZGF0YS1hb3M9ZmxpcC1sZWZ0XSB7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjUwMHB4KSByb3RhdGVZKC0xMDBkZWcpOyB9XG5cbltkYXRhLWFvcz1mbGlwLWxlZnRdLmFvcy1hbmltYXRlIHtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyNTAwcHgpIHJvdGF0ZVkoMCk7IH1cblxuW2RhdGEtYW9zPWZsaXAtcmlnaHRdIHtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyNTAwcHgpIHJvdGF0ZVkoMTAwZGVnKTsgfVxuXG5bZGF0YS1hb3M9ZmxpcC1yaWdodF0uYW9zLWFuaW1hdGUge1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDI1MDBweCkgcm90YXRlWSgwKTsgfVxuXG5bZGF0YS1hb3M9ZmxpcC11cF0ge1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDI1MDBweCkgcm90YXRlWCgtMTAwZGVnKTsgfVxuXG5bZGF0YS1hb3M9ZmxpcC11cF0uYW9zLWFuaW1hdGUge1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDI1MDBweCkgcm90YXRlWCgwKTsgfVxuXG5bZGF0YS1hb3M9ZmxpcC1kb3duXSB7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjUwMHB4KSByb3RhdGVYKDEwMGRlZyk7IH1cblxuW2RhdGEtYW9zPWZsaXAtZG93bl0uYW9zLWFuaW1hdGUge1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDI1MDBweCkgcm90YXRlWCgwKTsgfVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQmFzZVxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICogUmVtb3ZlIG1hcmdpbiBhbmQgcGFkZGluZyBmcm9tIGV2ZXJ5IHNlbGVjdG9yIGluY2x1ZGluZyB0aGVpclxuICogcHN1ZWRvIHNlbGVjdG9ycy5cbiAqXG4gKiAxLiBNb3JlIHNlbnNpYmxlIGRlZmF1bHQgYm94IHNpemluZy5cbiAqICAgIChjc3MtdHJpY2tzLmNvbS9pbmhlcml0aW5nLWJveC1zaXppbmctcHJvYmFibHktc2xpZ2h0bHktYmV0dGVyLWJlc3QtcHJhY3RpY2UpLlxuICovXG4qLFxuKjo6YmVmb3JlLFxuKjo6YWZ0ZXIge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGJveC1zaXppbmc6IGluaGVyaXQ7XG4gIC8qIDEgKi8gfVxuXG4vKipcbiAqIFNldCBoZWlnaHQgb2YgdGhlIGRvY3VtZW50IHRvIG1heGl1bSB2aWV3cG9ydCBoZWlnaHQuXG4gKlxuICogMS4gU2V0IHJvb3QgZm9udCBzaXplIHRvIDEwLlxuICovXG5odG1sIHtcbiAgaGVpZ2h0OiAxMDB2aDtcbiAgZm9udC1zaXplOiA2Mi41JTtcbiAgLyogMSAqL1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94OyB9XG5cbi8qKlxuICogU2V0IG1pbmltYWwgaGVpZ2h0IG9mIHRoZSBib2R5IHRvIG1heGltdW0gdmlld3BvcnQgaGVpZ2h0IHRvXG4gKiBtYXRjaCB0aGUgZG9jdW1lbnQncyBoZWlnaHQuXG4gKlxuICogMS4gRmlyZWZveCAyNSsuXG4gKiAyLiBDaHJvbWUgNSsuXG4gKi9cbmJvZHkge1xuICBmb250LXNpemU6IDE1cHg7XG4gIGZvbnQtc2l6ZTogMS41cmVtO1xuICBsaW5lLWhlaWdodDogMmVtO1xuICBtaW4taGVpZ2h0OiAxMDB2aDtcbiAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gIGNvbG9yOiAjMzE1MTgxO1xuICBmb250LWZhbWlseTogQXJpYWwsIEhlbHZldGljYSBOZXVlLCBIZWx2ZXRpY2EsIHNhbnMtc2VyaWY7XG4gIHRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHk7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gIC8qIDEgKi9cbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIC8qIDIgKi9cbiAgb3ZlcmZsb3cteDogaGlkZGVuOyB9XG5cbjo6c2VsZWN0aW9uIHtcbiAgYmFja2dyb3VuZDogIzMxNTE4MTtcbiAgY29sb3I6IHdoaXRlOyB9XG5cbnAge1xuICBsZXR0ZXItc3BhY2luZzogMC40MnB4OyB9XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbiAgIFJlc2V0XHJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcclxuICogQ3VzdG9tIHVzZXIgYWdlbnQgcmVzZXRzIGFuZCBvdmVycmlkZXMgdGhhdCBhcmUgbm90IHByZXNlbnQgaW5cclxuICogTm9ybWFsaXplIDguMC4wLiBUaGlzIG1vc3RseSByZW1vdmVzIHNvbWUgYW5ub3lpbmcgbWFyZ2luIGFuZCBwYWRkaW5nXHJcbiAqIGRlZmF1bHRzLCBib3JkZXIgcmFkaXVzLCBhbmQgb3V0bGluZXMuXHJcbiAqL1xuYSB7XG4gIGNvbG9yOiBpbmhlcml0O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cblxuLyoqXHJcbiAqIDEuIFJlbW92ZSBib3JkZXIgcmFkaXVzIG9uIENocm9tZSA2Mi4wKyBvbiBtYWNPUy5cclxuICovXG5idXR0b24ge1xuICBib3JkZXI6IDA7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIC8qIDEgKi9cbiAgb3V0bGluZTogbm9uZTtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgY3Vyc29yOiBwb2ludGVyOyB9XG5cbmZpZWxkc2V0IHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXI6IDA7IH1cblxuZmlndXJlIHtcbiAgbWFyZ2luOiAwOyB9XG5cbmgxLFxuaDIsXG5oMyxcbmg0LFxuaDUsXG5oNiB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgZm9udC1zaXplOiBpbmhlcml0O1xuICBmb250LXdlaWdodDogaW5oZXJpdDsgfVxuXG5ociB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDsgfVxuXG4vKipcclxuICogMS4gUmVtb3ZlIHdoaXRlIHNwYWNlLlxyXG4gKi9cbmltZyB7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhdXRvO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAvKiAxICovIH1cblxuLyoqXHJcbiAqIDEuIFJlbW92ZSBpbmhlcml0ZWQgdXNlciBhZ2VudCBhcHBlYXJhbmNlLlxyXG4gKi9cbmlucHV0LFxuc2VsZWN0LFxudGV4dGFyZWEge1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgb3V0bGluZTogbm9uZTtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgLyogMSAqLyB9XG5cbi8qKlxyXG4gKiAxLiBPbmx5IGFsbG93IHZlcnRpY2FsIHJlc2l6aW5nIHRvIHByZXZlbnQgdGhlIHRleHRhcmVhXHJcbiAqICAgIGZyb20gb3ZlcmZsb3dpbmcgdGhlIGNvbnRhaW5lci5cclxuICovXG50ZXh0YXJlYSB7XG4gIHJlc2l6ZTogdmVydGljYWw7IH1cblxudWwsXG5vbCB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lOyB9XG5cbnAge1xuICBtYXJnaW46IDA7IH1cblxuLyoqXHJcbiAqIDEuIENvbGxhcHNlIGJvcmRlcnMgdG8gcHJldmVudCBkb3VibGUgc2lkZWQgYm9yZGVycy5cclxuICovXG50YWJsZSB7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgLyogMSAqLyB9XG5cbnN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7IH1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIEJ1dHRvbnNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIEJ1dHRvbiBiYXNlLlxuICovXG4uYnV0dG9uIHtcbiAgZm9udC1zaXplOiAxOHB4O1xuICBmb250LXNpemU6IDEuOHJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMTY2NjdlbTtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHBhZGRpbmc6IDE1cHggMjVweDtcbiAgdHJhbnNpdGlvbjogYWxsIDI1MG1zIGVhc2U7XG4gIGZvbnQtZmFtaWx5OiBcIkFiaGF5YSBMaWJyZVwiLCBzZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuNXB4O1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNTk5cHgpIHtcbiAgICAuYnV0dG9uIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgcGFkZGluZzogMTVweCA0cHg7IH0gfVxuICAuYnV0dG9uIHN2ZyB7XG4gICAgd2lkdGg6IDE4cHg7XG4gICAgaGVpZ2h0OiAxOHB4OyB9XG4gIC5idXR0b24uc3ZnLXJpZ2h0IHN2ZyB7XG4gICAgbWFyZ2luLWxlZnQ6IDEwcHg7IH1cbiAgLmJ1dHRvbi5zdmctbGVmdCBzdmcge1xuICAgIG1hcmdpbi1yaWdodDogMTBweDsgfVxuICAuYnV0dG9uOjpiZWZvcmUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDVweDtcbiAgICB0cmFuc2l0aW9uOiB3aWR0aCAyNTBtcyBlYXNlO1xuICAgIGJhY2tncm91bmQ6ICNiMGIwYjA7XG4gICAgY29udGVudDogJyc7XG4gICAgei1pbmRleDogMjA7IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgICAuYnV0dG9uOmhvdmVyOjpiZWZvcmUge1xuICAgICAgd2lkdGg6IDEwMCU7IH0gfVxuXG4vKipcbiAqIEJ1dHRvbiBwcmltYXJ5IChibHVlKS5cbiAqL1xuLmJ1dHRvbi1wcmltYXJ5LS1ibHVlIHtcbiAgYmFja2dyb3VuZDogIzMxNTE4MTtcbiAgY29sb3I6IHdoaXRlOyB9XG5cbi8qKlxuICogQnV0dG9uIHByaW1hcnkgKHdoaXRlKS5cbiAqL1xuLmJ1dHRvbi1wcmltYXJ5LS13aGl0ZSB7XG4gIGJhY2tncm91bmQ6IHdoaXRlO1xuICBjb2xvcjogIzMxNTE4MTsgfVxuXG4vKipcbiAqIEJ1dHRvbiBzZWNvbmRhcnkgKGJsYWNrKS5cbiAqL1xuLmJ1dHRvbi1zZWNvbmRhcnktLWJsYWNrIHtcbiAgYm9yZGVyOiAxcHggc29saWQgYmxhY2s7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBjb2xvcjogYmxhY2s7IH1cblxuLyoqXG4gKiBCdXR0b24gc2Vjb25kYXJ5ICh3aGl0ZSkuXG4gKi9cbi5idXR0b24tc2Vjb25kYXJ5LS13aGl0ZSB7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHdoaXRlO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgY29sb3I6IHdoaXRlOyB9XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbiAgIENvbnRhaW5lclxyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXHJcbiAqIFRoZSBjb250YWluZXIgb2JqZWN0IGNlbnRlcnMgYW4gZWxlbWVudCBpbiB0aGUgZG9jdW1lbnQuXHJcbiAqL1xuLmNvbnRhaW5lciB7XG4gIG1heC13aWR0aDogY2FsYygxMDI0cHggKyA1MC42NjY2N3B4KTtcbiAgcGFkZGluZzogMCAyNS4zMzMzM3B4O1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luOiAwIGF1dG87IH1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuICAgQ29udGVudCBDb25zdHJhaW50XHJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcclxuICogVGhlIGNvbnRlbnQgY29uc3RyYWludCBpcyBhIGNvbnN0cmFpbnQgZm9yIGFsbCB0aGUgY29udGVudCB3aXRoaW5cclxuICogdGhlIGRvY3VtZW50LiBJdCBjYW4gYmUgbWFuaXB1bGF0ZWQgYnkgQ1NTIG9yIEphdmFTY3JpcHQgd2l0aG91dFxyXG4gKiBpbmZsdWVuY2luZyB0aGUgYm9keS5cclxuICovXG4uY29udGVudC1jb25zdHJhaW50IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtaW4taGVpZ2h0OiAxMDB2aDsgfVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4gICBGbGV4XHJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcclxuICogRXhhbXBsZSBvZiBhIGZsZXggYmFzZWQgY29sdW1uIGdyaWQgbGF5b3V0IGluIHByYWN0aWNlOlxyXG4gKlxyXG4gKiA8ZGl2IGNsYXNzPVwicm93XCI+XHJcbiAqICAgPGRpdiBjbGFzcz1cImNvbCBjb2wteHMtNiBjb2wtc20tMTJcIj48L2Rpdj5cclxuICogICA8ZGl2IGNsYXNzPVwiY29sIGNvbC14cy02IGNvbC1zbS0xMlwiPjwvZGl2PlxyXG4gKiA8L2Rpdj5cclxuICpcclxuICogVGhpcyBleGFtcGxlIHdpbGwgY3JlYXRlIGEgcm93IHdpdGggdHdvIGNvbHVtbnMgZWFjaCBmaWxsaW5nIGhhbGYgdGhlIHdpZHRoXHJcbiAqIG9mIHRoZSByb3cgb24gYWxsIG1lZGlhLCBidXQgd2lsbCBjb252ZXJ0IHRvIGEgZnVsbCB3aWR0aCBjb2x1bW4gb24gdGhlXHJcbiAqIHNtYWxsIGAtc21gIGJyZWFrcG9pbnQgYWxpYXMsIHdoaWNoIGlzIG1vYmlsZSBvbmx5LiBSZWZlciB0b1xyXG4gKiBgc2V0dGluZ3MvX2RlZmluaXRpb25zLnNjc3NgIGZvciBhbGwgYnJlYWtwb2ludCBhbGlhcy5cclxuICovXG4vKipcclxuICogRmxleCBvYmplY3QuXHJcbiAqXHJcbiAqIFRpcDogVXNlIGZsZXggb24gYSBjb2x1bW4gdG8gbWFrZSB0aGUgYm94IHRoZSBzYW1lIGhlaWdodCBhcyB0aGUgY29sdW1uLlxyXG4gKi9cbi5mbGV4IHtcbiAgZGlzcGxheTogZmxleDsgfVxuXG4uZmxleC13cmFwIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwOyB9XG5cbi8qKlxyXG4gKiBGbGV4IG9iamVjdCB3aXRoIGEgY29sdW1uIGJhc2VkIGxheW91dCBzeXN0ZW0uXHJcbiAqL1xuLnJvdyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXg6IDAgMSBhdXRvO1xuICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICBtYXJnaW46IDAgLTEyLjY2NjY3cHg7IH1cblxuLyoqXHJcbiAqIEJveCwgdGhlIGluc2lkZSBvZiBhIGNvbHVtbi5cclxuICovXG4uYm94IHtcbiAgZmxleDogMTsgfVxuXG4vKipcclxuICAgICAgICogQ29sdW1uIDEgZm9yIHRoZSBgeHNgIGJyZWFrcG9pbnQuXHJcbiAgICAgICAqL1xuLmNvbC14cy0xIHtcbiAgZmxleDogMCAxIGF1dG87XG4gIHdpZHRoOiA4LjMzMzMzJTtcbiAgcGFkZGluZzogMCAxMi42NjY2N3B4OyB9XG5cbi8qKlxyXG4gICAgICAgICAqIE9mZnNldCAxIGZvciB0aGUgYHhzYCBicmVha3BvaW50LlxyXG4gICAgICAgICAqL1xuLm9mZnNldC14cy0xIHtcbiAgbWFyZ2luLWxlZnQ6IDguMzMzMzMlOyB9XG5cbi8qKlxyXG4gICAgICAgKiBDb2x1bW4gMiBmb3IgdGhlIGB4c2AgYnJlYWtwb2ludC5cclxuICAgICAgICovXG4uY29sLXhzLTIge1xuICBmbGV4OiAwIDEgYXV0bztcbiAgd2lkdGg6IDE2LjY2NjY3JTtcbiAgcGFkZGluZzogMCAxMi42NjY2N3B4OyB9XG5cbi8qKlxyXG4gICAgICAgICAqIE9mZnNldCAyIGZvciB0aGUgYHhzYCBicmVha3BvaW50LlxyXG4gICAgICAgICAqL1xuLm9mZnNldC14cy0yIHtcbiAgbWFyZ2luLWxlZnQ6IDE2LjY2NjY3JTsgfVxuXG4vKipcclxuICAgICAgICogQ29sdW1uIDMgZm9yIHRoZSBgeHNgIGJyZWFrcG9pbnQuXHJcbiAgICAgICAqL1xuLmNvbC14cy0zIHtcbiAgZmxleDogMCAxIGF1dG87XG4gIHdpZHRoOiAyNSU7XG4gIHBhZGRpbmc6IDAgMTIuNjY2NjdweDsgfVxuXG4vKipcclxuICAgICAgICAgKiBPZmZzZXQgMyBmb3IgdGhlIGB4c2AgYnJlYWtwb2ludC5cclxuICAgICAgICAgKi9cbi5vZmZzZXQteHMtMyB7XG4gIG1hcmdpbi1sZWZ0OiAyNSU7IH1cblxuLyoqXHJcbiAgICAgICAqIENvbHVtbiA0IGZvciB0aGUgYHhzYCBicmVha3BvaW50LlxyXG4gICAgICAgKi9cbi5jb2wteHMtNCB7XG4gIGZsZXg6IDAgMSBhdXRvO1xuICB3aWR0aDogMzMuMzMzMzMlO1xuICBwYWRkaW5nOiAwIDEyLjY2NjY3cHg7IH1cblxuLyoqXHJcbiAgICAgICAgICogT2Zmc2V0IDQgZm9yIHRoZSBgeHNgIGJyZWFrcG9pbnQuXHJcbiAgICAgICAgICovXG4ub2Zmc2V0LXhzLTQge1xuICBtYXJnaW4tbGVmdDogMzMuMzMzMzMlOyB9XG5cbi8qKlxyXG4gICAgICAgKiBDb2x1bW4gNSBmb3IgdGhlIGB4c2AgYnJlYWtwb2ludC5cclxuICAgICAgICovXG4uY29sLXhzLTUge1xuICBmbGV4OiAwIDEgYXV0bztcbiAgd2lkdGg6IDQxLjY2NjY3JTtcbiAgcGFkZGluZzogMCAxMi42NjY2N3B4OyB9XG5cbi8qKlxyXG4gICAgICAgICAqIE9mZnNldCA1IGZvciB0aGUgYHhzYCBicmVha3BvaW50LlxyXG4gICAgICAgICAqL1xuLm9mZnNldC14cy01IHtcbiAgbWFyZ2luLWxlZnQ6IDQxLjY2NjY3JTsgfVxuXG4vKipcclxuICAgICAgICogQ29sdW1uIDYgZm9yIHRoZSBgeHNgIGJyZWFrcG9pbnQuXHJcbiAgICAgICAqL1xuLmNvbC14cy02IHtcbiAgZmxleDogMCAxIGF1dG87XG4gIHdpZHRoOiA1MCU7XG4gIHBhZGRpbmc6IDAgMTIuNjY2NjdweDsgfVxuXG4vKipcclxuICAgICAgICAgKiBPZmZzZXQgNiBmb3IgdGhlIGB4c2AgYnJlYWtwb2ludC5cclxuICAgICAgICAgKi9cbi5vZmZzZXQteHMtNiB7XG4gIG1hcmdpbi1sZWZ0OiA1MCU7IH1cblxuLyoqXHJcbiAgICAgICAqIENvbHVtbiA3IGZvciB0aGUgYHhzYCBicmVha3BvaW50LlxyXG4gICAgICAgKi9cbi5jb2wteHMtNyB7XG4gIGZsZXg6IDAgMSBhdXRvO1xuICB3aWR0aDogNTguMzMzMzMlO1xuICBwYWRkaW5nOiAwIDEyLjY2NjY3cHg7IH1cblxuLyoqXHJcbiAgICAgICAgICogT2Zmc2V0IDcgZm9yIHRoZSBgeHNgIGJyZWFrcG9pbnQuXHJcbiAgICAgICAgICovXG4ub2Zmc2V0LXhzLTcge1xuICBtYXJnaW4tbGVmdDogNTguMzMzMzMlOyB9XG5cbi8qKlxyXG4gICAgICAgKiBDb2x1bW4gOCBmb3IgdGhlIGB4c2AgYnJlYWtwb2ludC5cclxuICAgICAgICovXG4uY29sLXhzLTgge1xuICBmbGV4OiAwIDEgYXV0bztcbiAgd2lkdGg6IDY2LjY2NjY3JTtcbiAgcGFkZGluZzogMCAxMi42NjY2N3B4OyB9XG5cbi8qKlxyXG4gICAgICAgICAqIE9mZnNldCA4IGZvciB0aGUgYHhzYCBicmVha3BvaW50LlxyXG4gICAgICAgICAqL1xuLm9mZnNldC14cy04IHtcbiAgbWFyZ2luLWxlZnQ6IDY2LjY2NjY3JTsgfVxuXG4vKipcclxuICAgICAgICogQ29sdW1uIDkgZm9yIHRoZSBgeHNgIGJyZWFrcG9pbnQuXHJcbiAgICAgICAqL1xuLmNvbC14cy05IHtcbiAgZmxleDogMCAxIGF1dG87XG4gIHdpZHRoOiA3NSU7XG4gIHBhZGRpbmc6IDAgMTIuNjY2NjdweDsgfVxuXG4vKipcclxuICAgICAgICAgKiBPZmZzZXQgOSBmb3IgdGhlIGB4c2AgYnJlYWtwb2ludC5cclxuICAgICAgICAgKi9cbi5vZmZzZXQteHMtOSB7XG4gIG1hcmdpbi1sZWZ0OiA3NSU7IH1cblxuLyoqXHJcbiAgICAgICAqIENvbHVtbiAxMCBmb3IgdGhlIGB4c2AgYnJlYWtwb2ludC5cclxuICAgICAgICovXG4uY29sLXhzLTEwIHtcbiAgZmxleDogMCAxIGF1dG87XG4gIHdpZHRoOiA4My4zMzMzMyU7XG4gIHBhZGRpbmc6IDAgMTIuNjY2NjdweDsgfVxuXG4vKipcclxuICAgICAgICAgKiBPZmZzZXQgMTAgZm9yIHRoZSBgeHNgIGJyZWFrcG9pbnQuXHJcbiAgICAgICAgICovXG4ub2Zmc2V0LXhzLTEwIHtcbiAgbWFyZ2luLWxlZnQ6IDgzLjMzMzMzJTsgfVxuXG4vKipcclxuICAgICAgICogQ29sdW1uIDExIGZvciB0aGUgYHhzYCBicmVha3BvaW50LlxyXG4gICAgICAgKi9cbi5jb2wteHMtMTEge1xuICBmbGV4OiAwIDEgYXV0bztcbiAgd2lkdGg6IDkxLjY2NjY3JTtcbiAgcGFkZGluZzogMCAxMi42NjY2N3B4OyB9XG5cbi8qKlxyXG4gICAgICAgICAqIE9mZnNldCAxMSBmb3IgdGhlIGB4c2AgYnJlYWtwb2ludC5cclxuICAgICAgICAgKi9cbi5vZmZzZXQteHMtMTEge1xuICBtYXJnaW4tbGVmdDogOTEuNjY2NjclOyB9XG5cbi8qKlxyXG4gICAgICAgKiBDb2x1bW4gMTIgZm9yIHRoZSBgeHNgIGJyZWFrcG9pbnQuXHJcbiAgICAgICAqL1xuLmNvbC14cy0xMiB7XG4gIGZsZXg6IDAgMSBhdXRvO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogMCAxMi42NjY2N3B4OyB9XG5cbi8qKlxyXG4gICAgICAgKiBBbGlnbiBgc3RyZXRjaGAgZm9yIHRoZSB4cyBicmVha3BvaW50LlxyXG4gICAgICAgKi9cbi5hbGlnbi14cy1zdHJldGNoIHtcbiAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7IH1cblxuLyoqXHJcbiAgICAgICAqIEFsaWduIGBjZW50ZXJgIGZvciB0aGUgeHMgYnJlYWtwb2ludC5cclxuICAgICAgICovXG4uYWxpZ24teHMtY2VudGVyIHtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuXG4vKipcclxuICAgICAgICogQWxpZ24gYGZsZXgtc3RhcnRgIGZvciB0aGUgeHMgYnJlYWtwb2ludC5cclxuICAgICAgICovXG4uYWxpZ24teHMtZmxleC1zdGFydCB7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0OyB9XG5cbi8qKlxyXG4gICAgICAgKiBBbGlnbiBgZmxleC1lbmRgIGZvciB0aGUgeHMgYnJlYWtwb2ludC5cclxuICAgICAgICovXG4uYWxpZ24teHMtZmxleC1lbmQge1xuICBhbGlnbi1pdGVtczogZmxleC1lbmQ7IH1cblxuLyoqXHJcbiAgICAgICAqIEFsaWduIGBiYXNlbGluZWAgZm9yIHRoZSB4cyBicmVha3BvaW50LlxyXG4gICAgICAgKi9cbi5hbGlnbi14cy1iYXNlbGluZSB7XG4gIGFsaWduLWl0ZW1zOiBiYXNlbGluZTsgfVxuXG4vKipcclxuICAgICAgICogSnVzdGlmeSBgc3RhcnRgIGZvciB0aGUgeHMgYnJlYWtwb2ludC5cclxuICAgICAgICovXG4uanVzdGlmeS14cy1zdGFydCB7XG4gIGp1c3RpZnktY29udGVudDogc3RhcnQ7IH1cblxuLyoqXHJcbiAgICAgICAqIEp1c3RpZnkgYGNlbnRlcmAgZm9yIHRoZSB4cyBicmVha3BvaW50LlxyXG4gICAgICAgKi9cbi5qdXN0aWZ5LXhzLWNlbnRlciB7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XG5cbi8qKlxyXG4gICAgICAgKiBKdXN0aWZ5IGBzcGFjZS1iZXR3ZWVuYCBmb3IgdGhlIHhzIGJyZWFrcG9pbnQuXHJcbiAgICAgICAqL1xuLmp1c3RpZnkteHMtc3BhY2UtYmV0d2VlbiB7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgfVxuXG4vKipcclxuICAgICAgICogSnVzdGlmeSBgc3BhY2UtYXJvdW5kYCBmb3IgdGhlIHhzIGJyZWFrcG9pbnQuXHJcbiAgICAgICAqL1xuLmp1c3RpZnkteHMtc3BhY2UtYXJvdW5kIHtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQ7IH1cblxuLyoqXHJcbiAgICAgICAqIEp1c3RpZnkgYHNwYWNlLWV2ZW5seWAgZm9yIHRoZSB4cyBicmVha3BvaW50LlxyXG4gICAgICAgKi9cbi5qdXN0aWZ5LXhzLXNwYWNlLWV2ZW5seSB7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtZXZlbmx5OyB9XG5cbi8qKlxyXG4gICAgICAgKiBKdXN0aWZ5IGBmbGV4LXN0YXJ0YCBmb3IgdGhlIHhzIGJyZWFrcG9pbnQuXHJcbiAgICAgICAqL1xuLmp1c3RpZnkteHMtZmxleC1zdGFydCB7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDsgfVxuXG4vKipcclxuICAgICAgICogSnVzdGlmeSBgZmxleC1lbmRgIGZvciB0aGUgeHMgYnJlYWtwb2ludC5cclxuICAgICAgICovXG4uanVzdGlmeS14cy1mbGV4LWVuZCB7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7IH1cblxuLyoqXHJcbiAgICAgICAqIEJsZWVkIGxlZnQgZm9yIHRoZSB4cyBicmVha3BvaW50LlxyXG4gICAgICAgKi9cbi5ibGVlZC14cy1sZWZ0IHtcbiAgcGFkZGluZy1sZWZ0OiAwOyB9XG5cbi8qKlxyXG4gICAgICAgKiBCbGVlZCByaWdodCBmb3IgdGhlIHhzIGJyZWFrcG9pbnQuXHJcbiAgICAgICAqL1xuLmJsZWVkLXhzLXJpZ2h0IHtcbiAgcGFkZGluZy1yaWdodDogMDsgfVxuXG4vKipcclxuICAgICAqIE9yZGVyIGZpcnN0IGZvciB0aGUgYHhzYCBicmVha3BvaW50LlxyXG4gICAgICovXG4uZmlyc3QteHMge1xuICBvcmRlcjogLTE7IH1cblxuLyoqXHJcbiAgICAgKiBPcmRlciBsYXN0IGZvciB0aGUgYHhzYCBicmVha3BvaW50LlxyXG4gICAgICovXG4ubGFzdC14cyB7XG4gIG9yZGVyOiAxOyB9XG5cbi8qKlxyXG4gICAgICogUmV2ZXJzZSBvcmRlciBmb3IgdGhlIGB4c2AgYnJlYWtwb2ludC5cclxuICAgICAqL1xuLnJldmVyc2UteHMge1xuICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA1OTlweCkge1xuICAvKipcclxuICAgICAgICogQ29sdW1uIDEgZm9yIHRoZSBgc21gIGJyZWFrcG9pbnQuXHJcbiAgICAgICAqL1xuICAuY29sLXNtLTEge1xuICAgIGZsZXg6IDAgMSBhdXRvO1xuICAgIHdpZHRoOiA4LjMzMzMzJTtcbiAgICBwYWRkaW5nOiAwIDEyLjY2NjY3cHg7IH1cbiAgLyoqXHJcbiAgICAgICAgICogT2Zmc2V0IDEgZm9yIHRoZSBgc21gIGJyZWFrcG9pbnQuXHJcbiAgICAgICAgICovXG4gIC5vZmZzZXQtc20tMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDguMzMzMzMlOyB9XG4gIC8qKlxyXG4gICAgICAgKiBDb2x1bW4gMiBmb3IgdGhlIGBzbWAgYnJlYWtwb2ludC5cclxuICAgICAgICovXG4gIC5jb2wtc20tMiB7XG4gICAgZmxleDogMCAxIGF1dG87XG4gICAgd2lkdGg6IDE2LjY2NjY3JTtcbiAgICBwYWRkaW5nOiAwIDEyLjY2NjY3cHg7IH1cbiAgLyoqXHJcbiAgICAgICAgICogT2Zmc2V0IDIgZm9yIHRoZSBgc21gIGJyZWFrcG9pbnQuXHJcbiAgICAgICAgICovXG4gIC5vZmZzZXQtc20tMiB7XG4gICAgbWFyZ2luLWxlZnQ6IDE2LjY2NjY3JTsgfVxuICAvKipcclxuICAgICAgICogQ29sdW1uIDMgZm9yIHRoZSBgc21gIGJyZWFrcG9pbnQuXHJcbiAgICAgICAqL1xuICAuY29sLXNtLTMge1xuICAgIGZsZXg6IDAgMSBhdXRvO1xuICAgIHdpZHRoOiAyNSU7XG4gICAgcGFkZGluZzogMCAxMi42NjY2N3B4OyB9XG4gIC8qKlxyXG4gICAgICAgICAqIE9mZnNldCAzIGZvciB0aGUgYHNtYCBicmVha3BvaW50LlxyXG4gICAgICAgICAqL1xuICAub2Zmc2V0LXNtLTMge1xuICAgIG1hcmdpbi1sZWZ0OiAyNSU7IH1cbiAgLyoqXHJcbiAgICAgICAqIENvbHVtbiA0IGZvciB0aGUgYHNtYCBicmVha3BvaW50LlxyXG4gICAgICAgKi9cbiAgLmNvbC1zbS00IHtcbiAgICBmbGV4OiAwIDEgYXV0bztcbiAgICB3aWR0aDogMzMuMzMzMzMlO1xuICAgIHBhZGRpbmc6IDAgMTIuNjY2NjdweDsgfVxuICAvKipcclxuICAgICAgICAgKiBPZmZzZXQgNCBmb3IgdGhlIGBzbWAgYnJlYWtwb2ludC5cclxuICAgICAgICAgKi9cbiAgLm9mZnNldC1zbS00IHtcbiAgICBtYXJnaW4tbGVmdDogMzMuMzMzMzMlOyB9XG4gIC8qKlxyXG4gICAgICAgKiBDb2x1bW4gNSBmb3IgdGhlIGBzbWAgYnJlYWtwb2ludC5cclxuICAgICAgICovXG4gIC5jb2wtc20tNSB7XG4gICAgZmxleDogMCAxIGF1dG87XG4gICAgd2lkdGg6IDQxLjY2NjY3JTtcbiAgICBwYWRkaW5nOiAwIDEyLjY2NjY3cHg7IH1cbiAgLyoqXHJcbiAgICAgICAgICogT2Zmc2V0IDUgZm9yIHRoZSBgc21gIGJyZWFrcG9pbnQuXHJcbiAgICAgICAgICovXG4gIC5vZmZzZXQtc20tNSB7XG4gICAgbWFyZ2luLWxlZnQ6IDQxLjY2NjY3JTsgfVxuICAvKipcclxuICAgICAgICogQ29sdW1uIDYgZm9yIHRoZSBgc21gIGJyZWFrcG9pbnQuXHJcbiAgICAgICAqL1xuICAuY29sLXNtLTYge1xuICAgIGZsZXg6IDAgMSBhdXRvO1xuICAgIHdpZHRoOiA1MCU7XG4gICAgcGFkZGluZzogMCAxMi42NjY2N3B4OyB9XG4gIC8qKlxyXG4gICAgICAgICAqIE9mZnNldCA2IGZvciB0aGUgYHNtYCBicmVha3BvaW50LlxyXG4gICAgICAgICAqL1xuICAub2Zmc2V0LXNtLTYge1xuICAgIG1hcmdpbi1sZWZ0OiA1MCU7IH1cbiAgLyoqXHJcbiAgICAgICAqIENvbHVtbiA3IGZvciB0aGUgYHNtYCBicmVha3BvaW50LlxyXG4gICAgICAgKi9cbiAgLmNvbC1zbS03IHtcbiAgICBmbGV4OiAwIDEgYXV0bztcbiAgICB3aWR0aDogNTguMzMzMzMlO1xuICAgIHBhZGRpbmc6IDAgMTIuNjY2NjdweDsgfVxuICAvKipcclxuICAgICAgICAgKiBPZmZzZXQgNyBmb3IgdGhlIGBzbWAgYnJlYWtwb2ludC5cclxuICAgICAgICAgKi9cbiAgLm9mZnNldC1zbS03IHtcbiAgICBtYXJnaW4tbGVmdDogNTguMzMzMzMlOyB9XG4gIC8qKlxyXG4gICAgICAgKiBDb2x1bW4gOCBmb3IgdGhlIGBzbWAgYnJlYWtwb2ludC5cclxuICAgICAgICovXG4gIC5jb2wtc20tOCB7XG4gICAgZmxleDogMCAxIGF1dG87XG4gICAgd2lkdGg6IDY2LjY2NjY3JTtcbiAgICBwYWRkaW5nOiAwIDEyLjY2NjY3cHg7IH1cbiAgLyoqXHJcbiAgICAgICAgICogT2Zmc2V0IDggZm9yIHRoZSBgc21gIGJyZWFrcG9pbnQuXHJcbiAgICAgICAgICovXG4gIC5vZmZzZXQtc20tOCB7XG4gICAgbWFyZ2luLWxlZnQ6IDY2LjY2NjY3JTsgfVxuICAvKipcclxuICAgICAgICogQ29sdW1uIDkgZm9yIHRoZSBgc21gIGJyZWFrcG9pbnQuXHJcbiAgICAgICAqL1xuICAuY29sLXNtLTkge1xuICAgIGZsZXg6IDAgMSBhdXRvO1xuICAgIHdpZHRoOiA3NSU7XG4gICAgcGFkZGluZzogMCAxMi42NjY2N3B4OyB9XG4gIC8qKlxyXG4gICAgICAgICAqIE9mZnNldCA5IGZvciB0aGUgYHNtYCBicmVha3BvaW50LlxyXG4gICAgICAgICAqL1xuICAub2Zmc2V0LXNtLTkge1xuICAgIG1hcmdpbi1sZWZ0OiA3NSU7IH1cbiAgLyoqXHJcbiAgICAgICAqIENvbHVtbiAxMCBmb3IgdGhlIGBzbWAgYnJlYWtwb2ludC5cclxuICAgICAgICovXG4gIC5jb2wtc20tMTAge1xuICAgIGZsZXg6IDAgMSBhdXRvO1xuICAgIHdpZHRoOiA4My4zMzMzMyU7XG4gICAgcGFkZGluZzogMCAxMi42NjY2N3B4OyB9XG4gIC8qKlxyXG4gICAgICAgICAqIE9mZnNldCAxMCBmb3IgdGhlIGBzbWAgYnJlYWtwb2ludC5cclxuICAgICAgICAgKi9cbiAgLm9mZnNldC1zbS0xMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDgzLjMzMzMzJTsgfVxuICAvKipcclxuICAgICAgICogQ29sdW1uIDExIGZvciB0aGUgYHNtYCBicmVha3BvaW50LlxyXG4gICAgICAgKi9cbiAgLmNvbC1zbS0xMSB7XG4gICAgZmxleDogMCAxIGF1dG87XG4gICAgd2lkdGg6IDkxLjY2NjY3JTtcbiAgICBwYWRkaW5nOiAwIDEyLjY2NjY3cHg7IH1cbiAgLyoqXHJcbiAgICAgICAgICogT2Zmc2V0IDExIGZvciB0aGUgYHNtYCBicmVha3BvaW50LlxyXG4gICAgICAgICAqL1xuICAub2Zmc2V0LXNtLTExIHtcbiAgICBtYXJnaW4tbGVmdDogOTEuNjY2NjclOyB9XG4gIC8qKlxyXG4gICAgICAgKiBDb2x1bW4gMTIgZm9yIHRoZSBgc21gIGJyZWFrcG9pbnQuXHJcbiAgICAgICAqL1xuICAuY29sLXNtLTEyIHtcbiAgICBmbGV4OiAwIDEgYXV0bztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nOiAwIDEyLjY2NjY3cHg7IH1cbiAgLyoqXHJcbiAgICAgICAqIEFsaWduIGBzdHJldGNoYCBmb3IgdGhlIHNtIGJyZWFrcG9pbnQuXHJcbiAgICAgICAqL1xuICAuYWxpZ24tc20tc3RyZXRjaCB7XG4gICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7IH1cbiAgLyoqXHJcbiAgICAgICAqIEFsaWduIGBjZW50ZXJgIGZvciB0aGUgc20gYnJlYWtwb2ludC5cclxuICAgICAgICovXG4gIC5hbGlnbi1zbS1jZW50ZXIge1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cbiAgLyoqXHJcbiAgICAgICAqIEFsaWduIGBmbGV4LXN0YXJ0YCBmb3IgdGhlIHNtIGJyZWFrcG9pbnQuXHJcbiAgICAgICAqL1xuICAuYWxpZ24tc20tZmxleC1zdGFydCB7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7IH1cbiAgLyoqXHJcbiAgICAgICAqIEFsaWduIGBmbGV4LWVuZGAgZm9yIHRoZSBzbSBicmVha3BvaW50LlxyXG4gICAgICAgKi9cbiAgLmFsaWduLXNtLWZsZXgtZW5kIHtcbiAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7IH1cbiAgLyoqXHJcbiAgICAgICAqIEFsaWduIGBiYXNlbGluZWAgZm9yIHRoZSBzbSBicmVha3BvaW50LlxyXG4gICAgICAgKi9cbiAgLmFsaWduLXNtLWJhc2VsaW5lIHtcbiAgICBhbGlnbi1pdGVtczogYmFzZWxpbmU7IH1cbiAgLyoqXHJcbiAgICAgICAqIEp1c3RpZnkgYHN0YXJ0YCBmb3IgdGhlIHNtIGJyZWFrcG9pbnQuXHJcbiAgICAgICAqL1xuICAuanVzdGlmeS1zbS1zdGFydCB7XG4gICAganVzdGlmeS1jb250ZW50OiBzdGFydDsgfVxuICAvKipcclxuICAgICAgICogSnVzdGlmeSBgY2VudGVyYCBmb3IgdGhlIHNtIGJyZWFrcG9pbnQuXHJcbiAgICAgICAqL1xuICAuanVzdGlmeS1zbS1jZW50ZXIge1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XG4gIC8qKlxyXG4gICAgICAgKiBKdXN0aWZ5IGBzcGFjZS1iZXR3ZWVuYCBmb3IgdGhlIHNtIGJyZWFrcG9pbnQuXHJcbiAgICAgICAqL1xuICAuanVzdGlmeS1zbS1zcGFjZS1iZXR3ZWVuIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IH1cbiAgLyoqXHJcbiAgICAgICAqIEp1c3RpZnkgYHNwYWNlLWFyb3VuZGAgZm9yIHRoZSBzbSBicmVha3BvaW50LlxyXG4gICAgICAgKi9cbiAgLmp1c3RpZnktc20tc3BhY2UtYXJvdW5kIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZDsgfVxuICAvKipcclxuICAgICAgICogSnVzdGlmeSBgc3BhY2UtZXZlbmx5YCBmb3IgdGhlIHNtIGJyZWFrcG9pbnQuXHJcbiAgICAgICAqL1xuICAuanVzdGlmeS1zbS1zcGFjZS1ldmVubHkge1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtZXZlbmx5OyB9XG4gIC8qKlxyXG4gICAgICAgKiBKdXN0aWZ5IGBmbGV4LXN0YXJ0YCBmb3IgdGhlIHNtIGJyZWFrcG9pbnQuXHJcbiAgICAgICAqL1xuICAuanVzdGlmeS1zbS1mbGV4LXN0YXJ0IHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7IH1cbiAgLyoqXHJcbiAgICAgICAqIEp1c3RpZnkgYGZsZXgtZW5kYCBmb3IgdGhlIHNtIGJyZWFrcG9pbnQuXHJcbiAgICAgICAqL1xuICAuanVzdGlmeS1zbS1mbGV4LWVuZCB7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDsgfVxuICAvKipcclxuICAgICAgICogQmxlZWQgbGVmdCBmb3IgdGhlIHNtIGJyZWFrcG9pbnQuXHJcbiAgICAgICAqL1xuICAuYmxlZWQtc20tbGVmdCB7XG4gICAgcGFkZGluZy1sZWZ0OiAwOyB9XG4gIC8qKlxyXG4gICAgICAgKiBCbGVlZCByaWdodCBmb3IgdGhlIHNtIGJyZWFrcG9pbnQuXHJcbiAgICAgICAqL1xuICAuYmxlZWQtc20tcmlnaHQge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7IH1cbiAgLyoqXHJcbiAgICAgKiBPcmRlciBmaXJzdCBmb3IgdGhlIGBzbWAgYnJlYWtwb2ludC5cclxuICAgICAqL1xuICAuZmlyc3Qtc20ge1xuICAgIG9yZGVyOiAtMTsgfVxuICAvKipcclxuICAgICAqIE9yZGVyIGxhc3QgZm9yIHRoZSBgc21gIGJyZWFrcG9pbnQuXHJcbiAgICAgKi9cbiAgLmxhc3Qtc20ge1xuICAgIG9yZGVyOiAxOyB9XG4gIC8qKlxyXG4gICAgICogUmV2ZXJzZSBvcmRlciBmb3IgdGhlIGBzbWAgYnJlYWtwb2ludC5cclxuICAgICAqL1xuICAucmV2ZXJzZS1zbSB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlOyB9IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MDBweCkge1xuICAvKipcclxuICAgICAgICogQ29sdW1uIDEgZm9yIHRoZSBgbWRgIGJyZWFrcG9pbnQuXHJcbiAgICAgICAqL1xuICAuY29sLW1kLTEge1xuICAgIGZsZXg6IDAgMSBhdXRvO1xuICAgIHdpZHRoOiA4LjMzMzMzJTtcbiAgICBwYWRkaW5nOiAwIDEyLjY2NjY3cHg7IH1cbiAgLyoqXHJcbiAgICAgICAgICogT2Zmc2V0IDEgZm9yIHRoZSBgbWRgIGJyZWFrcG9pbnQuXHJcbiAgICAgICAgICovXG4gIC5vZmZzZXQtbWQtMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDguMzMzMzMlOyB9XG4gIC8qKlxyXG4gICAgICAgKiBDb2x1bW4gMiBmb3IgdGhlIGBtZGAgYnJlYWtwb2ludC5cclxuICAgICAgICovXG4gIC5jb2wtbWQtMiB7XG4gICAgZmxleDogMCAxIGF1dG87XG4gICAgd2lkdGg6IDE2LjY2NjY3JTtcbiAgICBwYWRkaW5nOiAwIDEyLjY2NjY3cHg7IH1cbiAgLyoqXHJcbiAgICAgICAgICogT2Zmc2V0IDIgZm9yIHRoZSBgbWRgIGJyZWFrcG9pbnQuXHJcbiAgICAgICAgICovXG4gIC5vZmZzZXQtbWQtMiB7XG4gICAgbWFyZ2luLWxlZnQ6IDE2LjY2NjY3JTsgfVxuICAvKipcclxuICAgICAgICogQ29sdW1uIDMgZm9yIHRoZSBgbWRgIGJyZWFrcG9pbnQuXHJcbiAgICAgICAqL1xuICAuY29sLW1kLTMge1xuICAgIGZsZXg6IDAgMSBhdXRvO1xuICAgIHdpZHRoOiAyNSU7XG4gICAgcGFkZGluZzogMCAxMi42NjY2N3B4OyB9XG4gIC8qKlxyXG4gICAgICAgICAqIE9mZnNldCAzIGZvciB0aGUgYG1kYCBicmVha3BvaW50LlxyXG4gICAgICAgICAqL1xuICAub2Zmc2V0LW1kLTMge1xuICAgIG1hcmdpbi1sZWZ0OiAyNSU7IH1cbiAgLyoqXHJcbiAgICAgICAqIENvbHVtbiA0IGZvciB0aGUgYG1kYCBicmVha3BvaW50LlxyXG4gICAgICAgKi9cbiAgLmNvbC1tZC00IHtcbiAgICBmbGV4OiAwIDEgYXV0bztcbiAgICB3aWR0aDogMzMuMzMzMzMlO1xuICAgIHBhZGRpbmc6IDAgMTIuNjY2NjdweDsgfVxuICAvKipcclxuICAgICAgICAgKiBPZmZzZXQgNCBmb3IgdGhlIGBtZGAgYnJlYWtwb2ludC5cclxuICAgICAgICAgKi9cbiAgLm9mZnNldC1tZC00IHtcbiAgICBtYXJnaW4tbGVmdDogMzMuMzMzMzMlOyB9XG4gIC8qKlxyXG4gICAgICAgKiBDb2x1bW4gNSBmb3IgdGhlIGBtZGAgYnJlYWtwb2ludC5cclxuICAgICAgICovXG4gIC5jb2wtbWQtNSB7XG4gICAgZmxleDogMCAxIGF1dG87XG4gICAgd2lkdGg6IDQxLjY2NjY3JTtcbiAgICBwYWRkaW5nOiAwIDEyLjY2NjY3cHg7IH1cbiAgLyoqXHJcbiAgICAgICAgICogT2Zmc2V0IDUgZm9yIHRoZSBgbWRgIGJyZWFrcG9pbnQuXHJcbiAgICAgICAgICovXG4gIC5vZmZzZXQtbWQtNSB7XG4gICAgbWFyZ2luLWxlZnQ6IDQxLjY2NjY3JTsgfVxuICAvKipcclxuICAgICAgICogQ29sdW1uIDYgZm9yIHRoZSBgbWRgIGJyZWFrcG9pbnQuXHJcbiAgICAgICAqL1xuICAuY29sLW1kLTYge1xuICAgIGZsZXg6IDAgMSBhdXRvO1xuICAgIHdpZHRoOiA1MCU7XG4gICAgcGFkZGluZzogMCAxMi42NjY2N3B4OyB9XG4gIC8qKlxyXG4gICAgICAgICAqIE9mZnNldCA2IGZvciB0aGUgYG1kYCBicmVha3BvaW50LlxyXG4gICAgICAgICAqL1xuICAub2Zmc2V0LW1kLTYge1xuICAgIG1hcmdpbi1sZWZ0OiA1MCU7IH1cbiAgLyoqXHJcbiAgICAgICAqIENvbHVtbiA3IGZvciB0aGUgYG1kYCBicmVha3BvaW50LlxyXG4gICAgICAgKi9cbiAgLmNvbC1tZC03IHtcbiAgICBmbGV4OiAwIDEgYXV0bztcbiAgICB3aWR0aDogNTguMzMzMzMlO1xuICAgIHBhZGRpbmc6IDAgMTIuNjY2NjdweDsgfVxuICAvKipcclxuICAgICAgICAgKiBPZmZzZXQgNyBmb3IgdGhlIGBtZGAgYnJlYWtwb2ludC5cclxuICAgICAgICAgKi9cbiAgLm9mZnNldC1tZC03IHtcbiAgICBtYXJnaW4tbGVmdDogNTguMzMzMzMlOyB9XG4gIC8qKlxyXG4gICAgICAgKiBDb2x1bW4gOCBmb3IgdGhlIGBtZGAgYnJlYWtwb2ludC5cclxuICAgICAgICovXG4gIC5jb2wtbWQtOCB7XG4gICAgZmxleDogMCAxIGF1dG87XG4gICAgd2lkdGg6IDY2LjY2NjY3JTtcbiAgICBwYWRkaW5nOiAwIDEyLjY2NjY3cHg7IH1cbiAgLyoqXHJcbiAgICAgICAgICogT2Zmc2V0IDggZm9yIHRoZSBgbWRgIGJyZWFrcG9pbnQuXHJcbiAgICAgICAgICovXG4gIC5vZmZzZXQtbWQtOCB7XG4gICAgbWFyZ2luLWxlZnQ6IDY2LjY2NjY3JTsgfVxuICAvKipcclxuICAgICAgICogQ29sdW1uIDkgZm9yIHRoZSBgbWRgIGJyZWFrcG9pbnQuXHJcbiAgICAgICAqL1xuICAuY29sLW1kLTkge1xuICAgIGZsZXg6IDAgMSBhdXRvO1xuICAgIHdpZHRoOiA3NSU7XG4gICAgcGFkZGluZzogMCAxMi42NjY2N3B4OyB9XG4gIC8qKlxyXG4gICAgICAgICAqIE9mZnNldCA5IGZvciB0aGUgYG1kYCBicmVha3BvaW50LlxyXG4gICAgICAgICAqL1xuICAub2Zmc2V0LW1kLTkge1xuICAgIG1hcmdpbi1sZWZ0OiA3NSU7IH1cbiAgLyoqXHJcbiAgICAgICAqIENvbHVtbiAxMCBmb3IgdGhlIGBtZGAgYnJlYWtwb2ludC5cclxuICAgICAgICovXG4gIC5jb2wtbWQtMTAge1xuICAgIGZsZXg6IDAgMSBhdXRvO1xuICAgIHdpZHRoOiA4My4zMzMzMyU7XG4gICAgcGFkZGluZzogMCAxMi42NjY2N3B4OyB9XG4gIC8qKlxyXG4gICAgICAgICAqIE9mZnNldCAxMCBmb3IgdGhlIGBtZGAgYnJlYWtwb2ludC5cclxuICAgICAgICAgKi9cbiAgLm9mZnNldC1tZC0xMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDgzLjMzMzMzJTsgfVxuICAvKipcclxuICAgICAgICogQ29sdW1uIDExIGZvciB0aGUgYG1kYCBicmVha3BvaW50LlxyXG4gICAgICAgKi9cbiAgLmNvbC1tZC0xMSB7XG4gICAgZmxleDogMCAxIGF1dG87XG4gICAgd2lkdGg6IDkxLjY2NjY3JTtcbiAgICBwYWRkaW5nOiAwIDEyLjY2NjY3cHg7IH1cbiAgLyoqXHJcbiAgICAgICAgICogT2Zmc2V0IDExIGZvciB0aGUgYG1kYCBicmVha3BvaW50LlxyXG4gICAgICAgICAqL1xuICAub2Zmc2V0LW1kLTExIHtcbiAgICBtYXJnaW4tbGVmdDogOTEuNjY2NjclOyB9XG4gIC8qKlxyXG4gICAgICAgKiBDb2x1bW4gMTIgZm9yIHRoZSBgbWRgIGJyZWFrcG9pbnQuXHJcbiAgICAgICAqL1xuICAuY29sLW1kLTEyIHtcbiAgICBmbGV4OiAwIDEgYXV0bztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nOiAwIDEyLjY2NjY3cHg7IH1cbiAgLyoqXHJcbiAgICAgICAqIEFsaWduIGBzdHJldGNoYCBmb3IgdGhlIG1kIGJyZWFrcG9pbnQuXHJcbiAgICAgICAqL1xuICAuYWxpZ24tbWQtc3RyZXRjaCB7XG4gICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7IH1cbiAgLyoqXHJcbiAgICAgICAqIEFsaWduIGBjZW50ZXJgIGZvciB0aGUgbWQgYnJlYWtwb2ludC5cclxuICAgICAgICovXG4gIC5hbGlnbi1tZC1jZW50ZXIge1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cbiAgLyoqXHJcbiAgICAgICAqIEFsaWduIGBmbGV4LXN0YXJ0YCBmb3IgdGhlIG1kIGJyZWFrcG9pbnQuXHJcbiAgICAgICAqL1xuICAuYWxpZ24tbWQtZmxleC1zdGFydCB7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7IH1cbiAgLyoqXHJcbiAgICAgICAqIEFsaWduIGBmbGV4LWVuZGAgZm9yIHRoZSBtZCBicmVha3BvaW50LlxyXG4gICAgICAgKi9cbiAgLmFsaWduLW1kLWZsZXgtZW5kIHtcbiAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7IH1cbiAgLyoqXHJcbiAgICAgICAqIEFsaWduIGBiYXNlbGluZWAgZm9yIHRoZSBtZCBicmVha3BvaW50LlxyXG4gICAgICAgKi9cbiAgLmFsaWduLW1kLWJhc2VsaW5lIHtcbiAgICBhbGlnbi1pdGVtczogYmFzZWxpbmU7IH1cbiAgLyoqXHJcbiAgICAgICAqIEp1c3RpZnkgYHN0YXJ0YCBmb3IgdGhlIG1kIGJyZWFrcG9pbnQuXHJcbiAgICAgICAqL1xuICAuanVzdGlmeS1tZC1zdGFydCB7XG4gICAganVzdGlmeS1jb250ZW50OiBzdGFydDsgfVxuICAvKipcclxuICAgICAgICogSnVzdGlmeSBgY2VudGVyYCBmb3IgdGhlIG1kIGJyZWFrcG9pbnQuXHJcbiAgICAgICAqL1xuICAuanVzdGlmeS1tZC1jZW50ZXIge1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XG4gIC8qKlxyXG4gICAgICAgKiBKdXN0aWZ5IGBzcGFjZS1iZXR3ZWVuYCBmb3IgdGhlIG1kIGJyZWFrcG9pbnQuXHJcbiAgICAgICAqL1xuICAuanVzdGlmeS1tZC1zcGFjZS1iZXR3ZWVuIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IH1cbiAgLyoqXHJcbiAgICAgICAqIEp1c3RpZnkgYHNwYWNlLWFyb3VuZGAgZm9yIHRoZSBtZCBicmVha3BvaW50LlxyXG4gICAgICAgKi9cbiAgLmp1c3RpZnktbWQtc3BhY2UtYXJvdW5kIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZDsgfVxuICAvKipcclxuICAgICAgICogSnVzdGlmeSBgc3BhY2UtZXZlbmx5YCBmb3IgdGhlIG1kIGJyZWFrcG9pbnQuXHJcbiAgICAgICAqL1xuICAuanVzdGlmeS1tZC1zcGFjZS1ldmVubHkge1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtZXZlbmx5OyB9XG4gIC8qKlxyXG4gICAgICAgKiBKdXN0aWZ5IGBmbGV4LXN0YXJ0YCBmb3IgdGhlIG1kIGJyZWFrcG9pbnQuXHJcbiAgICAgICAqL1xuICAuanVzdGlmeS1tZC1mbGV4LXN0YXJ0IHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7IH1cbiAgLyoqXHJcbiAgICAgICAqIEp1c3RpZnkgYGZsZXgtZW5kYCBmb3IgdGhlIG1kIGJyZWFrcG9pbnQuXHJcbiAgICAgICAqL1xuICAuanVzdGlmeS1tZC1mbGV4LWVuZCB7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDsgfVxuICAvKipcclxuICAgICAgICogQmxlZWQgbGVmdCBmb3IgdGhlIG1kIGJyZWFrcG9pbnQuXHJcbiAgICAgICAqL1xuICAuYmxlZWQtbWQtbGVmdCB7XG4gICAgcGFkZGluZy1sZWZ0OiAwOyB9XG4gIC8qKlxyXG4gICAgICAgKiBCbGVlZCByaWdodCBmb3IgdGhlIG1kIGJyZWFrcG9pbnQuXHJcbiAgICAgICAqL1xuICAuYmxlZWQtbWQtcmlnaHQge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7IH1cbiAgLyoqXHJcbiAgICAgKiBPcmRlciBmaXJzdCBmb3IgdGhlIGBtZGAgYnJlYWtwb2ludC5cclxuICAgICAqL1xuICAuZmlyc3QtbWQge1xuICAgIG9yZGVyOiAtMTsgfVxuICAvKipcclxuICAgICAqIE9yZGVyIGxhc3QgZm9yIHRoZSBgbWRgIGJyZWFrcG9pbnQuXHJcbiAgICAgKi9cbiAgLmxhc3QtbWQge1xuICAgIG9yZGVyOiAxOyB9XG4gIC8qKlxyXG4gICAgICogUmV2ZXJzZSBvcmRlciBmb3IgdGhlIGBtZGAgYnJlYWtwb2ludC5cclxuICAgICAqL1xuICAucmV2ZXJzZS1tZCB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlOyB9IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MDBweCkge1xuICAvKipcclxuICAgICAgICogQ29sdW1uIDEgZm9yIHRoZSBgbGdgIGJyZWFrcG9pbnQuXHJcbiAgICAgICAqL1xuICAuY29sLWxnLTEge1xuICAgIGZsZXg6IDAgMSBhdXRvO1xuICAgIHdpZHRoOiA4LjMzMzMzJTtcbiAgICBwYWRkaW5nOiAwIDEyLjY2NjY3cHg7IH1cbiAgLyoqXHJcbiAgICAgICAgICogT2Zmc2V0IDEgZm9yIHRoZSBgbGdgIGJyZWFrcG9pbnQuXHJcbiAgICAgICAgICovXG4gIC5vZmZzZXQtbGctMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDguMzMzMzMlOyB9XG4gIC8qKlxyXG4gICAgICAgKiBDb2x1bW4gMiBmb3IgdGhlIGBsZ2AgYnJlYWtwb2ludC5cclxuICAgICAgICovXG4gIC5jb2wtbGctMiB7XG4gICAgZmxleDogMCAxIGF1dG87XG4gICAgd2lkdGg6IDE2LjY2NjY3JTtcbiAgICBwYWRkaW5nOiAwIDEyLjY2NjY3cHg7IH1cbiAgLyoqXHJcbiAgICAgICAgICogT2Zmc2V0IDIgZm9yIHRoZSBgbGdgIGJyZWFrcG9pbnQuXHJcbiAgICAgICAgICovXG4gIC5vZmZzZXQtbGctMiB7XG4gICAgbWFyZ2luLWxlZnQ6IDE2LjY2NjY3JTsgfVxuICAvKipcclxuICAgICAgICogQ29sdW1uIDMgZm9yIHRoZSBgbGdgIGJyZWFrcG9pbnQuXHJcbiAgICAgICAqL1xuICAuY29sLWxnLTMge1xuICAgIGZsZXg6IDAgMSBhdXRvO1xuICAgIHdpZHRoOiAyNSU7XG4gICAgcGFkZGluZzogMCAxMi42NjY2N3B4OyB9XG4gIC8qKlxyXG4gICAgICAgICAqIE9mZnNldCAzIGZvciB0aGUgYGxnYCBicmVha3BvaW50LlxyXG4gICAgICAgICAqL1xuICAub2Zmc2V0LWxnLTMge1xuICAgIG1hcmdpbi1sZWZ0OiAyNSU7IH1cbiAgLyoqXHJcbiAgICAgICAqIENvbHVtbiA0IGZvciB0aGUgYGxnYCBicmVha3BvaW50LlxyXG4gICAgICAgKi9cbiAgLmNvbC1sZy00IHtcbiAgICBmbGV4OiAwIDEgYXV0bztcbiAgICB3aWR0aDogMzMuMzMzMzMlO1xuICAgIHBhZGRpbmc6IDAgMTIuNjY2NjdweDsgfVxuICAvKipcclxuICAgICAgICAgKiBPZmZzZXQgNCBmb3IgdGhlIGBsZ2AgYnJlYWtwb2ludC5cclxuICAgICAgICAgKi9cbiAgLm9mZnNldC1sZy00IHtcbiAgICBtYXJnaW4tbGVmdDogMzMuMzMzMzMlOyB9XG4gIC8qKlxyXG4gICAgICAgKiBDb2x1bW4gNSBmb3IgdGhlIGBsZ2AgYnJlYWtwb2ludC5cclxuICAgICAgICovXG4gIC5jb2wtbGctNSB7XG4gICAgZmxleDogMCAxIGF1dG87XG4gICAgd2lkdGg6IDQxLjY2NjY3JTtcbiAgICBwYWRkaW5nOiAwIDEyLjY2NjY3cHg7IH1cbiAgLyoqXHJcbiAgICAgICAgICogT2Zmc2V0IDUgZm9yIHRoZSBgbGdgIGJyZWFrcG9pbnQuXHJcbiAgICAgICAgICovXG4gIC5vZmZzZXQtbGctNSB7XG4gICAgbWFyZ2luLWxlZnQ6IDQxLjY2NjY3JTsgfVxuICAvKipcclxuICAgICAgICogQ29sdW1uIDYgZm9yIHRoZSBgbGdgIGJyZWFrcG9pbnQuXHJcbiAgICAgICAqL1xuICAuY29sLWxnLTYge1xuICAgIGZsZXg6IDAgMSBhdXRvO1xuICAgIHdpZHRoOiA1MCU7XG4gICAgcGFkZGluZzogMCAxMi42NjY2N3B4OyB9XG4gIC8qKlxyXG4gICAgICAgICAqIE9mZnNldCA2IGZvciB0aGUgYGxnYCBicmVha3BvaW50LlxyXG4gICAgICAgICAqL1xuICAub2Zmc2V0LWxnLTYge1xuICAgIG1hcmdpbi1sZWZ0OiA1MCU7IH1cbiAgLyoqXHJcbiAgICAgICAqIENvbHVtbiA3IGZvciB0aGUgYGxnYCBicmVha3BvaW50LlxyXG4gICAgICAgKi9cbiAgLmNvbC1sZy03IHtcbiAgICBmbGV4OiAwIDEgYXV0bztcbiAgICB3aWR0aDogNTguMzMzMzMlO1xuICAgIHBhZGRpbmc6IDAgMTIuNjY2NjdweDsgfVxuICAvKipcclxuICAgICAgICAgKiBPZmZzZXQgNyBmb3IgdGhlIGBsZ2AgYnJlYWtwb2ludC5cclxuICAgICAgICAgKi9cbiAgLm9mZnNldC1sZy03IHtcbiAgICBtYXJnaW4tbGVmdDogNTguMzMzMzMlOyB9XG4gIC8qKlxyXG4gICAgICAgKiBDb2x1bW4gOCBmb3IgdGhlIGBsZ2AgYnJlYWtwb2ludC5cclxuICAgICAgICovXG4gIC5jb2wtbGctOCB7XG4gICAgZmxleDogMCAxIGF1dG87XG4gICAgd2lkdGg6IDY2LjY2NjY3JTtcbiAgICBwYWRkaW5nOiAwIDEyLjY2NjY3cHg7IH1cbiAgLyoqXHJcbiAgICAgICAgICogT2Zmc2V0IDggZm9yIHRoZSBgbGdgIGJyZWFrcG9pbnQuXHJcbiAgICAgICAgICovXG4gIC5vZmZzZXQtbGctOCB7XG4gICAgbWFyZ2luLWxlZnQ6IDY2LjY2NjY3JTsgfVxuICAvKipcclxuICAgICAgICogQ29sdW1uIDkgZm9yIHRoZSBgbGdgIGJyZWFrcG9pbnQuXHJcbiAgICAgICAqL1xuICAuY29sLWxnLTkge1xuICAgIGZsZXg6IDAgMSBhdXRvO1xuICAgIHdpZHRoOiA3NSU7XG4gICAgcGFkZGluZzogMCAxMi42NjY2N3B4OyB9XG4gIC8qKlxyXG4gICAgICAgICAqIE9mZnNldCA5IGZvciB0aGUgYGxnYCBicmVha3BvaW50LlxyXG4gICAgICAgICAqL1xuICAub2Zmc2V0LWxnLTkge1xuICAgIG1hcmdpbi1sZWZ0OiA3NSU7IH1cbiAgLyoqXHJcbiAgICAgICAqIENvbHVtbiAxMCBmb3IgdGhlIGBsZ2AgYnJlYWtwb2ludC5cclxuICAgICAgICovXG4gIC5jb2wtbGctMTAge1xuICAgIGZsZXg6IDAgMSBhdXRvO1xuICAgIHdpZHRoOiA4My4zMzMzMyU7XG4gICAgcGFkZGluZzogMCAxMi42NjY2N3B4OyB9XG4gIC8qKlxyXG4gICAgICAgICAqIE9mZnNldCAxMCBmb3IgdGhlIGBsZ2AgYnJlYWtwb2ludC5cclxuICAgICAgICAgKi9cbiAgLm9mZnNldC1sZy0xMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDgzLjMzMzMzJTsgfVxuICAvKipcclxuICAgICAgICogQ29sdW1uIDExIGZvciB0aGUgYGxnYCBicmVha3BvaW50LlxyXG4gICAgICAgKi9cbiAgLmNvbC1sZy0xMSB7XG4gICAgZmxleDogMCAxIGF1dG87XG4gICAgd2lkdGg6IDkxLjY2NjY3JTtcbiAgICBwYWRkaW5nOiAwIDEyLjY2NjY3cHg7IH1cbiAgLyoqXHJcbiAgICAgICAgICogT2Zmc2V0IDExIGZvciB0aGUgYGxnYCBicmVha3BvaW50LlxyXG4gICAgICAgICAqL1xuICAub2Zmc2V0LWxnLTExIHtcbiAgICBtYXJnaW4tbGVmdDogOTEuNjY2NjclOyB9XG4gIC8qKlxyXG4gICAgICAgKiBDb2x1bW4gMTIgZm9yIHRoZSBgbGdgIGJyZWFrcG9pbnQuXHJcbiAgICAgICAqL1xuICAuY29sLWxnLTEyIHtcbiAgICBmbGV4OiAwIDEgYXV0bztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nOiAwIDEyLjY2NjY3cHg7IH1cbiAgLyoqXHJcbiAgICAgICAqIEFsaWduIGBzdHJldGNoYCBmb3IgdGhlIGxnIGJyZWFrcG9pbnQuXHJcbiAgICAgICAqL1xuICAuYWxpZ24tbGctc3RyZXRjaCB7XG4gICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7IH1cbiAgLyoqXHJcbiAgICAgICAqIEFsaWduIGBjZW50ZXJgIGZvciB0aGUgbGcgYnJlYWtwb2ludC5cclxuICAgICAgICovXG4gIC5hbGlnbi1sZy1jZW50ZXIge1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cbiAgLyoqXHJcbiAgICAgICAqIEFsaWduIGBmbGV4LXN0YXJ0YCBmb3IgdGhlIGxnIGJyZWFrcG9pbnQuXHJcbiAgICAgICAqL1xuICAuYWxpZ24tbGctZmxleC1zdGFydCB7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7IH1cbiAgLyoqXHJcbiAgICAgICAqIEFsaWduIGBmbGV4LWVuZGAgZm9yIHRoZSBsZyBicmVha3BvaW50LlxyXG4gICAgICAgKi9cbiAgLmFsaWduLWxnLWZsZXgtZW5kIHtcbiAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7IH1cbiAgLyoqXHJcbiAgICAgICAqIEFsaWduIGBiYXNlbGluZWAgZm9yIHRoZSBsZyBicmVha3BvaW50LlxyXG4gICAgICAgKi9cbiAgLmFsaWduLWxnLWJhc2VsaW5lIHtcbiAgICBhbGlnbi1pdGVtczogYmFzZWxpbmU7IH1cbiAgLyoqXHJcbiAgICAgICAqIEp1c3RpZnkgYHN0YXJ0YCBmb3IgdGhlIGxnIGJyZWFrcG9pbnQuXHJcbiAgICAgICAqL1xuICAuanVzdGlmeS1sZy1zdGFydCB7XG4gICAganVzdGlmeS1jb250ZW50OiBzdGFydDsgfVxuICAvKipcclxuICAgICAgICogSnVzdGlmeSBgY2VudGVyYCBmb3IgdGhlIGxnIGJyZWFrcG9pbnQuXHJcbiAgICAgICAqL1xuICAuanVzdGlmeS1sZy1jZW50ZXIge1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XG4gIC8qKlxyXG4gICAgICAgKiBKdXN0aWZ5IGBzcGFjZS1iZXR3ZWVuYCBmb3IgdGhlIGxnIGJyZWFrcG9pbnQuXHJcbiAgICAgICAqL1xuICAuanVzdGlmeS1sZy1zcGFjZS1iZXR3ZWVuIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IH1cbiAgLyoqXHJcbiAgICAgICAqIEp1c3RpZnkgYHNwYWNlLWFyb3VuZGAgZm9yIHRoZSBsZyBicmVha3BvaW50LlxyXG4gICAgICAgKi9cbiAgLmp1c3RpZnktbGctc3BhY2UtYXJvdW5kIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZDsgfVxuICAvKipcclxuICAgICAgICogSnVzdGlmeSBgc3BhY2UtZXZlbmx5YCBmb3IgdGhlIGxnIGJyZWFrcG9pbnQuXHJcbiAgICAgICAqL1xuICAuanVzdGlmeS1sZy1zcGFjZS1ldmVubHkge1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtZXZlbmx5OyB9XG4gIC8qKlxyXG4gICAgICAgKiBKdXN0aWZ5IGBmbGV4LXN0YXJ0YCBmb3IgdGhlIGxnIGJyZWFrcG9pbnQuXHJcbiAgICAgICAqL1xuICAuanVzdGlmeS1sZy1mbGV4LXN0YXJ0IHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7IH1cbiAgLyoqXHJcbiAgICAgICAqIEp1c3RpZnkgYGZsZXgtZW5kYCBmb3IgdGhlIGxnIGJyZWFrcG9pbnQuXHJcbiAgICAgICAqL1xuICAuanVzdGlmeS1sZy1mbGV4LWVuZCB7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDsgfVxuICAvKipcclxuICAgICAgICogQmxlZWQgbGVmdCBmb3IgdGhlIGxnIGJyZWFrcG9pbnQuXHJcbiAgICAgICAqL1xuICAuYmxlZWQtbGctbGVmdCB7XG4gICAgcGFkZGluZy1sZWZ0OiAwOyB9XG4gIC8qKlxyXG4gICAgICAgKiBCbGVlZCByaWdodCBmb3IgdGhlIGxnIGJyZWFrcG9pbnQuXHJcbiAgICAgICAqL1xuICAuYmxlZWQtbGctcmlnaHQge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7IH1cbiAgLyoqXHJcbiAgICAgKiBPcmRlciBmaXJzdCBmb3IgdGhlIGBsZ2AgYnJlYWtwb2ludC5cclxuICAgICAqL1xuICAuZmlyc3QtbGcge1xuICAgIG9yZGVyOiAtMTsgfVxuICAvKipcclxuICAgICAqIE9yZGVyIGxhc3QgZm9yIHRoZSBgbGdgIGJyZWFrcG9pbnQuXHJcbiAgICAgKi9cbiAgLmxhc3QtbGcge1xuICAgIG9yZGVyOiAxOyB9XG4gIC8qKlxyXG4gICAgICogUmV2ZXJzZSBvcmRlciBmb3IgdGhlIGBsZ2AgYnJlYWtwb2ludC5cclxuICAgICAqL1xuICAucmV2ZXJzZS1sZyB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlOyB9IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLyoqXHJcbiAgICAgICAqIENvbHVtbiAxIGZvciB0aGUgYHhsYCBicmVha3BvaW50LlxyXG4gICAgICAgKi9cbiAgLmNvbC14bC0xIHtcbiAgICBmbGV4OiAwIDEgYXV0bztcbiAgICB3aWR0aDogOC4zMzMzMyU7XG4gICAgcGFkZGluZzogMCAxMi42NjY2N3B4OyB9XG4gIC8qKlxyXG4gICAgICAgICAqIE9mZnNldCAxIGZvciB0aGUgYHhsYCBicmVha3BvaW50LlxyXG4gICAgICAgICAqL1xuICAub2Zmc2V0LXhsLTEge1xuICAgIG1hcmdpbi1sZWZ0OiA4LjMzMzMzJTsgfVxuICAvKipcclxuICAgICAgICogQ29sdW1uIDIgZm9yIHRoZSBgeGxgIGJyZWFrcG9pbnQuXHJcbiAgICAgICAqL1xuICAuY29sLXhsLTIge1xuICAgIGZsZXg6IDAgMSBhdXRvO1xuICAgIHdpZHRoOiAxNi42NjY2NyU7XG4gICAgcGFkZGluZzogMCAxMi42NjY2N3B4OyB9XG4gIC8qKlxyXG4gICAgICAgICAqIE9mZnNldCAyIGZvciB0aGUgYHhsYCBicmVha3BvaW50LlxyXG4gICAgICAgICAqL1xuICAub2Zmc2V0LXhsLTIge1xuICAgIG1hcmdpbi1sZWZ0OiAxNi42NjY2NyU7IH1cbiAgLyoqXHJcbiAgICAgICAqIENvbHVtbiAzIGZvciB0aGUgYHhsYCBicmVha3BvaW50LlxyXG4gICAgICAgKi9cbiAgLmNvbC14bC0zIHtcbiAgICBmbGV4OiAwIDEgYXV0bztcbiAgICB3aWR0aDogMjUlO1xuICAgIHBhZGRpbmc6IDAgMTIuNjY2NjdweDsgfVxuICAvKipcclxuICAgICAgICAgKiBPZmZzZXQgMyBmb3IgdGhlIGB4bGAgYnJlYWtwb2ludC5cclxuICAgICAgICAgKi9cbiAgLm9mZnNldC14bC0zIHtcbiAgICBtYXJnaW4tbGVmdDogMjUlOyB9XG4gIC8qKlxyXG4gICAgICAgKiBDb2x1bW4gNCBmb3IgdGhlIGB4bGAgYnJlYWtwb2ludC5cclxuICAgICAgICovXG4gIC5jb2wteGwtNCB7XG4gICAgZmxleDogMCAxIGF1dG87XG4gICAgd2lkdGg6IDMzLjMzMzMzJTtcbiAgICBwYWRkaW5nOiAwIDEyLjY2NjY3cHg7IH1cbiAgLyoqXHJcbiAgICAgICAgICogT2Zmc2V0IDQgZm9yIHRoZSBgeGxgIGJyZWFrcG9pbnQuXHJcbiAgICAgICAgICovXG4gIC5vZmZzZXQteGwtNCB7XG4gICAgbWFyZ2luLWxlZnQ6IDMzLjMzMzMzJTsgfVxuICAvKipcclxuICAgICAgICogQ29sdW1uIDUgZm9yIHRoZSBgeGxgIGJyZWFrcG9pbnQuXHJcbiAgICAgICAqL1xuICAuY29sLXhsLTUge1xuICAgIGZsZXg6IDAgMSBhdXRvO1xuICAgIHdpZHRoOiA0MS42NjY2NyU7XG4gICAgcGFkZGluZzogMCAxMi42NjY2N3B4OyB9XG4gIC8qKlxyXG4gICAgICAgICAqIE9mZnNldCA1IGZvciB0aGUgYHhsYCBicmVha3BvaW50LlxyXG4gICAgICAgICAqL1xuICAub2Zmc2V0LXhsLTUge1xuICAgIG1hcmdpbi1sZWZ0OiA0MS42NjY2NyU7IH1cbiAgLyoqXHJcbiAgICAgICAqIENvbHVtbiA2IGZvciB0aGUgYHhsYCBicmVha3BvaW50LlxyXG4gICAgICAgKi9cbiAgLmNvbC14bC02IHtcbiAgICBmbGV4OiAwIDEgYXV0bztcbiAgICB3aWR0aDogNTAlO1xuICAgIHBhZGRpbmc6IDAgMTIuNjY2NjdweDsgfVxuICAvKipcclxuICAgICAgICAgKiBPZmZzZXQgNiBmb3IgdGhlIGB4bGAgYnJlYWtwb2ludC5cclxuICAgICAgICAgKi9cbiAgLm9mZnNldC14bC02IHtcbiAgICBtYXJnaW4tbGVmdDogNTAlOyB9XG4gIC8qKlxyXG4gICAgICAgKiBDb2x1bW4gNyBmb3IgdGhlIGB4bGAgYnJlYWtwb2ludC5cclxuICAgICAgICovXG4gIC5jb2wteGwtNyB7XG4gICAgZmxleDogMCAxIGF1dG87XG4gICAgd2lkdGg6IDU4LjMzMzMzJTtcbiAgICBwYWRkaW5nOiAwIDEyLjY2NjY3cHg7IH1cbiAgLyoqXHJcbiAgICAgICAgICogT2Zmc2V0IDcgZm9yIHRoZSBgeGxgIGJyZWFrcG9pbnQuXHJcbiAgICAgICAgICovXG4gIC5vZmZzZXQteGwtNyB7XG4gICAgbWFyZ2luLWxlZnQ6IDU4LjMzMzMzJTsgfVxuICAvKipcclxuICAgICAgICogQ29sdW1uIDggZm9yIHRoZSBgeGxgIGJyZWFrcG9pbnQuXHJcbiAgICAgICAqL1xuICAuY29sLXhsLTgge1xuICAgIGZsZXg6IDAgMSBhdXRvO1xuICAgIHdpZHRoOiA2Ni42NjY2NyU7XG4gICAgcGFkZGluZzogMCAxMi42NjY2N3B4OyB9XG4gIC8qKlxyXG4gICAgICAgICAqIE9mZnNldCA4IGZvciB0aGUgYHhsYCBicmVha3BvaW50LlxyXG4gICAgICAgICAqL1xuICAub2Zmc2V0LXhsLTgge1xuICAgIG1hcmdpbi1sZWZ0OiA2Ni42NjY2NyU7IH1cbiAgLyoqXHJcbiAgICAgICAqIENvbHVtbiA5IGZvciB0aGUgYHhsYCBicmVha3BvaW50LlxyXG4gICAgICAgKi9cbiAgLmNvbC14bC05IHtcbiAgICBmbGV4OiAwIDEgYXV0bztcbiAgICB3aWR0aDogNzUlO1xuICAgIHBhZGRpbmc6IDAgMTIuNjY2NjdweDsgfVxuICAvKipcclxuICAgICAgICAgKiBPZmZzZXQgOSBmb3IgdGhlIGB4bGAgYnJlYWtwb2ludC5cclxuICAgICAgICAgKi9cbiAgLm9mZnNldC14bC05IHtcbiAgICBtYXJnaW4tbGVmdDogNzUlOyB9XG4gIC8qKlxyXG4gICAgICAgKiBDb2x1bW4gMTAgZm9yIHRoZSBgeGxgIGJyZWFrcG9pbnQuXHJcbiAgICAgICAqL1xuICAuY29sLXhsLTEwIHtcbiAgICBmbGV4OiAwIDEgYXV0bztcbiAgICB3aWR0aDogODMuMzMzMzMlO1xuICAgIHBhZGRpbmc6IDAgMTIuNjY2NjdweDsgfVxuICAvKipcclxuICAgICAgICAgKiBPZmZzZXQgMTAgZm9yIHRoZSBgeGxgIGJyZWFrcG9pbnQuXHJcbiAgICAgICAgICovXG4gIC5vZmZzZXQteGwtMTAge1xuICAgIG1hcmdpbi1sZWZ0OiA4My4zMzMzMyU7IH1cbiAgLyoqXHJcbiAgICAgICAqIENvbHVtbiAxMSBmb3IgdGhlIGB4bGAgYnJlYWtwb2ludC5cclxuICAgICAgICovXG4gIC5jb2wteGwtMTEge1xuICAgIGZsZXg6IDAgMSBhdXRvO1xuICAgIHdpZHRoOiA5MS42NjY2NyU7XG4gICAgcGFkZGluZzogMCAxMi42NjY2N3B4OyB9XG4gIC8qKlxyXG4gICAgICAgICAqIE9mZnNldCAxMSBmb3IgdGhlIGB4bGAgYnJlYWtwb2ludC5cclxuICAgICAgICAgKi9cbiAgLm9mZnNldC14bC0xMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDkxLjY2NjY3JTsgfVxuICAvKipcclxuICAgICAgICogQ29sdW1uIDEyIGZvciB0aGUgYHhsYCBicmVha3BvaW50LlxyXG4gICAgICAgKi9cbiAgLmNvbC14bC0xMiB7XG4gICAgZmxleDogMCAxIGF1dG87XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZzogMCAxMi42NjY2N3B4OyB9XG4gIC8qKlxyXG4gICAgICAgKiBBbGlnbiBgc3RyZXRjaGAgZm9yIHRoZSB4bCBicmVha3BvaW50LlxyXG4gICAgICAgKi9cbiAgLmFsaWduLXhsLXN0cmV0Y2gge1xuICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoOyB9XG4gIC8qKlxyXG4gICAgICAgKiBBbGlnbiBgY2VudGVyYCBmb3IgdGhlIHhsIGJyZWFrcG9pbnQuXHJcbiAgICAgICAqL1xuICAuYWxpZ24teGwtY2VudGVyIHtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gIC8qKlxyXG4gICAgICAgKiBBbGlnbiBgZmxleC1zdGFydGAgZm9yIHRoZSB4bCBicmVha3BvaW50LlxyXG4gICAgICAgKi9cbiAgLmFsaWduLXhsLWZsZXgtc3RhcnQge1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0OyB9XG4gIC8qKlxyXG4gICAgICAgKiBBbGlnbiBgZmxleC1lbmRgIGZvciB0aGUgeGwgYnJlYWtwb2ludC5cclxuICAgICAgICovXG4gIC5hbGlnbi14bC1mbGV4LWVuZCB7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kOyB9XG4gIC8qKlxyXG4gICAgICAgKiBBbGlnbiBgYmFzZWxpbmVgIGZvciB0aGUgeGwgYnJlYWtwb2ludC5cclxuICAgICAgICovXG4gIC5hbGlnbi14bC1iYXNlbGluZSB7XG4gICAgYWxpZ24taXRlbXM6IGJhc2VsaW5lOyB9XG4gIC8qKlxyXG4gICAgICAgKiBKdXN0aWZ5IGBzdGFydGAgZm9yIHRoZSB4bCBicmVha3BvaW50LlxyXG4gICAgICAgKi9cbiAgLmp1c3RpZnkteGwtc3RhcnQge1xuICAgIGp1c3RpZnktY29udGVudDogc3RhcnQ7IH1cbiAgLyoqXHJcbiAgICAgICAqIEp1c3RpZnkgYGNlbnRlcmAgZm9yIHRoZSB4bCBicmVha3BvaW50LlxyXG4gICAgICAgKi9cbiAgLmp1c3RpZnkteGwtY2VudGVyIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfVxuICAvKipcclxuICAgICAgICogSnVzdGlmeSBgc3BhY2UtYmV0d2VlbmAgZm9yIHRoZSB4bCBicmVha3BvaW50LlxyXG4gICAgICAgKi9cbiAgLmp1c3RpZnkteGwtc3BhY2UtYmV0d2VlbiB7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyB9XG4gIC8qKlxyXG4gICAgICAgKiBKdXN0aWZ5IGBzcGFjZS1hcm91bmRgIGZvciB0aGUgeGwgYnJlYWtwb2ludC5cclxuICAgICAgICovXG4gIC5qdXN0aWZ5LXhsLXNwYWNlLWFyb3VuZCB7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQ7IH1cbiAgLyoqXHJcbiAgICAgICAqIEp1c3RpZnkgYHNwYWNlLWV2ZW5seWAgZm9yIHRoZSB4bCBicmVha3BvaW50LlxyXG4gICAgICAgKi9cbiAgLmp1c3RpZnkteGwtc3BhY2UtZXZlbmx5IHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWV2ZW5seTsgfVxuICAvKipcclxuICAgICAgICogSnVzdGlmeSBgZmxleC1zdGFydGAgZm9yIHRoZSB4bCBicmVha3BvaW50LlxyXG4gICAgICAgKi9cbiAgLmp1c3RpZnkteGwtZmxleC1zdGFydCB7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0OyB9XG4gIC8qKlxyXG4gICAgICAgKiBKdXN0aWZ5IGBmbGV4LWVuZGAgZm9yIHRoZSB4bCBicmVha3BvaW50LlxyXG4gICAgICAgKi9cbiAgLmp1c3RpZnkteGwtZmxleC1lbmQge1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7IH1cbiAgLyoqXHJcbiAgICAgICAqIEJsZWVkIGxlZnQgZm9yIHRoZSB4bCBicmVha3BvaW50LlxyXG4gICAgICAgKi9cbiAgLmJsZWVkLXhsLWxlZnQge1xuICAgIHBhZGRpbmctbGVmdDogMDsgfVxuICAvKipcclxuICAgICAgICogQmxlZWQgcmlnaHQgZm9yIHRoZSB4bCBicmVha3BvaW50LlxyXG4gICAgICAgKi9cbiAgLmJsZWVkLXhsLXJpZ2h0IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwOyB9XG4gIC8qKlxyXG4gICAgICogT3JkZXIgZmlyc3QgZm9yIHRoZSBgeGxgIGJyZWFrcG9pbnQuXHJcbiAgICAgKi9cbiAgLmZpcnN0LXhsIHtcbiAgICBvcmRlcjogLTE7IH1cbiAgLyoqXHJcbiAgICAgKiBPcmRlciBsYXN0IGZvciB0aGUgYHhsYCBicmVha3BvaW50LlxyXG4gICAgICovXG4gIC5sYXN0LXhsIHtcbiAgICBvcmRlcjogMTsgfVxuICAvKipcclxuICAgICAqIFJldmVyc2Ugb3JkZXIgZm9yIHRoZSBgeGxgIGJyZWFrcG9pbnQuXHJcbiAgICAgKi9cbiAgLnJldmVyc2UteGwge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTsgfSB9XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBIZWFkaW5nXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiBIZWFkaW5nIGJhc2UuXG4gKi9cbi5oZWFkaW5nIHtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZm9udC1mYW1pbHk6IFwiVW5uYVwiLCBzZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDcwMDsgfVxuICAuaGVhZGluZy50b3AtbGluZSB7XG4gICAgcGFkZGluZy10b3A6IDEwcHg7IH1cbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDU5OXB4KSB7XG4gICAgICAuaGVhZGluZy50b3AtbGluZSB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAwOyB9IH1cbiAgICAuaGVhZGluZy50b3AtbGluZTo6YmVmb3JlIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgbWF4LXdpZHRoOiAxODVweDtcbiAgICAgIGhlaWdodDogMXB4O1xuICAgICAgYmFja2dyb3VuZDogIzMxNTE4MTtcbiAgICAgIGNvbnRlbnQ6ICcnOyB9XG4gIC5oZWFkaW5nLnRvcC1saW5lLWNlbnRlcjo6YmVmb3JlIHtcbiAgICByaWdodDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIG1hcmdpbjogYXV0bzsgfVxuICAuaGVhZGluZy5jZW50ZXIge1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIHdpZHRoOiAxMDAlOyB9XG5cbi8qKlxuICogSGVhZGluZyAxXG4gKi9cbi5oZWFkaW5nLTEge1xuICBmb250LXNpemU6IDYwcHg7XG4gIGZvbnQtc2l6ZTogNnJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMDgzMzNlbTtcbiAgbGV0dGVyLXNwYWNpbmc6IDEuNjdweDsgfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDU5OXB4KSB7XG4gICAgLmhlYWRpbmctMSB7XG4gICAgICBmb250LXNpemU6IDQ1cHg7XG4gICAgICBmb250LXNpemU6IDQuNXJlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjQ0NDQ0ZW07IH0gfVxuXG4vKipcbiAqIEhlYWRpbmcgMlxuICovXG4uaGVhZGluZy0yIHtcbiAgZm9udC1zaXplOiA1MHB4O1xuICBmb250LXNpemU6IDVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjNlbTtcbiAgbGV0dGVyLXNwYWNpbmc6IDEuMzlweDsgfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDU5OXB4KSB7XG4gICAgLmhlYWRpbmctMiB7XG4gICAgICBmb250LXNpemU6IDM1cHg7XG4gICAgICBmb250LXNpemU6IDMuNXJlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjI4NTcxZW07IH0gfVxuXG4vKipcbiAqIEhlYWRpbmcgM1xuICovXG4uaGVhZGluZy0zIHtcbiAgZm9udC1zaXplOiAzMHB4O1xuICBmb250LXNpemU6IDNyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjEzMzMzZW07XG4gIGxldHRlci1zcGFjaW5nOiAwLjgzcHg7IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA1OTlweCkge1xuICAgIC5oZWFkaW5nLTMge1xuICAgICAgZm9udC1zaXplOiAyNXB4O1xuICAgICAgZm9udC1zaXplOiAyLjVyZW07XG4gICAgICBsaW5lLWhlaWdodDogMS4xNmVtOyB9IH1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuICAgTGlua3NcclxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxyXG4gKiBMaW5rIGJhc2UuXHJcbiAqL1xuLmxpbmsge1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgZm9udC1mYW1pbHk6IEFyaWFsLCBIZWx2ZXRpY2EgTmV1ZSwgSGVsdmV0aWNhLCBzYW5zLXNlcmlmOyB9XG4gIC5saW5rIHN2ZyB7XG4gICAgd2lkdGg6IDE4cHg7XG4gICAgaGVpZ2h0OiAxOHB4OyB9XG4gIC5saW5rLnN2Zy1yaWdodCBzdmcge1xuICAgIG1hcmdpbi1sZWZ0OiAxMHB4OyB9XG4gIC5saW5rLnN2Zy1sZWZ0IHN2ZyB7XG4gICAgbWFyZ2luLXJpZ2h0OiAxMHB4OyB9XG4gIC5saW5rLnVuZGVybGluZSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IH1cblxuLyoqXHJcbiAqIExpbmsgKGJsdWUpLlxyXG4gKi9cbi5saW5rLS1ibHVlIHtcbiAgY29sb3I6ICMzMTUxODE7IH1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuICAgU2VjdGlvblxyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXHJcbiAqICBNYXJnaW4uXHJcbiAqL1xuLm01LXRvcCB7XG4gIG1hcmdpbi10b3A6IDVweDsgfVxuXG4ubTUtYm90dG9tIHtcbiAgbWFyZ2luLWJvdHRvbTogNXB4OyB9XG5cbi5tMTAtdG9wIHtcbiAgbWFyZ2luLXRvcDogMTBweDsgfVxuXG4ubTEwLWJvdHRvbSB7XG4gIG1hcmdpbi1ib3R0b206IDEwcHggIWltcG9ydGFudDsgfVxuXG4ubTE1LXRvcCB7XG4gIG1hcmdpbi10b3A6IDE1cHg7IH1cblxuLm0xNS1ib3R0b20ge1xuICBtYXJnaW4tYm90dG9tOiAxNXB4OyB9XG5cbi5tMjAtdG9wIHtcbiAgbWFyZ2luLXRvcDogMjBweDsgfVxuXG4ubTIwLWJvdHRvbSB7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7IH1cblxuLm0zMC10b3Age1xuICBtYXJnaW4tdG9wOiAzMHB4OyB9XG5cbi5tMzAtYm90dG9tIHtcbiAgbWFyZ2luLWJvdHRvbTogMzBweDsgfVxuXG4ubTQwLXRvcCB7XG4gIG1hcmdpbi10b3A6IDQwcHg7IH1cblxuLm00MC1ib3R0b20ge1xuICBtYXJnaW4tYm90dG9tOiA0MHB4OyB9XG5cbi5tNTAtdG9wIHtcbiAgbWFyZ2luLXRvcDogNTBweDsgfVxuXG4ubTUwLWJvdHRvbSB7XG4gIG1hcmdpbi1ib3R0b206IDUwcHg7IH1cblxuLm02MC10b3Age1xuICBtYXJnaW4tdG9wOiA2MHB4OyB9XG5cbi5tNjAtYm90dG9tIHtcbiAgbWFyZ2luLWJvdHRvbTogNjBweDsgfVxuXG4ubTgwLXRvcCB7XG4gIG1hcmdpbi10b3A6IDgwcHg7IH1cblxuLm04MC1ib3R0b20ge1xuICBtYXJnaW4tYm90dG9tOiA4MHB4OyB9XG5cbi5tMTAwLXRvcCB7XG4gIG1hcmdpbi10b3A6IDEwMHB4OyB9XG5cbi5tMTAwLWJvdHRvbSB7XG4gIG1hcmdpbi1ib3R0b206IDEwMHB4OyB9XG5cbi8qKlxyXG4gKiAgRm9udCB3ZWlnaHQuXHJcbiAqL1xuLmZvbnQtd2VpZ2h0LTEwMCB7XG4gIGZvbnQtd2VpZ2h0OiAxMDA7IH1cblxuLmZvbnQtd2VpZ2h0LTMwMCB7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7IH1cblxuLmZvbnQtd2VpZ2h0LTYwMCB7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7IH1cblxuLmZvbnQtd2VpZ2h0LTcwMCB7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7IH1cblxuLmZvbnQtd2VpZ2h0LTkwMCB7XG4gIGZvbnQtd2VpZ2h0OiA5MDA7IH1cblxuLyoqXHJcbiAqICBUZXh0IGFsaWdubWVudC5cclxuICovXG4udGV4dC1hbGlnbi1sZWZ0IHtcbiAgdGV4dC1hbGlnbjogbGVmdDsgfVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4gICBXcmFwcGVyXHJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcclxuICogVGhlIHdyYXBwZXIgb2JqZWN0IGNlbnRlcnMgYW4gZWxlbWVudCBpbiB0aGUgZG9jdW1lbnQuXHJcbiAqL1xuLyoqXHJcbiAqIFdyYXBwZXIgKGRlZmF1bHQpXHJcbiAqL1xuLndyYXBwZXIge1xuICBtYXgtd2lkdGg6IGNhbGMoMTI0MHB4ICsgNDBweCk7XG4gIHBhZGRpbmc6IDAgMjBweDtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA1OTlweCkge1xuICAgIC53cmFwcGVyIHtcbiAgICAgIG1heC13aWR0aDogY2FsYygxMjQwcHggKyA0MHB4KTtcbiAgICAgIHBhZGRpbmc6IDAgMjBweDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgbWFyZ2luOiAwIGF1dG87IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYwMHB4KSBhbmQgKG1heC13aWR0aDogODk5cHgpIHtcbiAgICAud3JhcHBlciB7XG4gICAgICBtYXgtd2lkdGg6IGNhbGMoMTI0MHB4ICsgMTIwcHgpO1xuICAgICAgcGFkZGluZzogMCA2MHB4O1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBtYXJnaW46IDAgYXV0bzsgfSB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTAwcHgpIGFuZCAobWF4LXdpZHRoOiAxMTk5cHgpIHtcbiAgICAud3JhcHBlciB7XG4gICAgICBtYXgtd2lkdGg6IGNhbGMoMTI0MHB4ICsgMTAwcHgpO1xuICAgICAgcGFkZGluZzogMCA1MHB4O1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBtYXJnaW46IDAgYXV0bzsgfSB9XG5cbi8qKlxyXG4gKiBXcmFwcGVyIChmdWxsIHdpZHRoKVxyXG4gKi9cbi53cmFwcGVyLS1mdWxsIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgcGFkZGluZzogMDsgfVxuXG4ud3JhcHBlci0tc21hbGwge1xuICBtYXgtd2lkdGg6IDg0MHB4O1xuICBtYXJnaW46IGF1dG87IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MDBweCkgYW5kIChtYXgtd2lkdGg6IDExOTlweCkge1xuICAgIC53cmFwcGVyLS1zbWFsbCB7XG4gICAgICBtYXgtd2lkdGg6IDc2MHB4OyB9IH1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIENNUyBPdXRwdXRcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIEV2ZXJ5IGNvbmNlaXZhYmxlIEhUTUwgZWxlbWVudCB3aXRoaW4gYSBgLmNtcy1vdXRwdXRgIHdyYXBwZXIuXG4gKlxuICogMS4gRXhjbHVkZSBsYXN0IGNoaWxkcy5cbiAqL1xuLmNtcy1vdXRwdXQgPiAqOm5vdCg6bGFzdC1jaGlsZCkge1xuICBtYXJnaW4tYm90dG9tOiAxZW07XG4gIC8qIDEgKi8gfVxuXG4uY21zLW91dHB1dCB1bCB7XG4gIGxpc3Qtc3R5bGUtdHlwZTogZGlzYzsgfVxuXG4uY21zLW91dHB1dCBvbCB7XG4gIGxpc3Qtc3R5bGUtdHlwZTogZGVjaW1hbDsgfVxuXG4uY21zLW91dHB1dCBwID4gYSB7XG4gIGNvbG9yOiBibGFjazsgfVxuICAuY21zLW91dHB1dCBwID4gYTpob3ZlciB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IH1cblxuLmNtcy1vdXRwdXQgaDEge1xuICBmb250LXNpemU6IDYwcHg7XG4gIGZvbnQtc2l6ZTogNnJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMDgzMzNlbTtcbiAgbGV0dGVyLXNwYWNpbmc6IDEuNjdweDsgfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDU5OXB4KSB7XG4gICAgLmNtcy1vdXRwdXQgaDEge1xuICAgICAgZm9udC1zaXplOiA0NXB4O1xuICAgICAgZm9udC1zaXplOiA0LjVyZW07XG4gICAgICBsaW5lLWhlaWdodDogMS40NDQ0NGVtOyB9IH1cblxuLmNtcy1vdXRwdXQgaDIge1xuICBmb250LXNpemU6IDUwcHg7XG4gIGZvbnQtc2l6ZTogNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuM2VtO1xuICBsZXR0ZXItc3BhY2luZzogMS4zOXB4OyB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNTk5cHgpIHtcbiAgICAuY21zLW91dHB1dCBoMiB7XG4gICAgICBmb250LXNpemU6IDM1cHg7XG4gICAgICBmb250LXNpemU6IDMuNXJlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjI4NTcxZW07IH0gfVxuXG4uY21zLW91dHB1dCBoMyB7XG4gIGZvbnQtc2l6ZTogMjVweDtcbiAgZm9udC1zaXplOiAyLjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjE2ZW07XG4gIG1hcmdpbi1ib3R0b206IDEwcHggIWltcG9ydGFudDtcbiAgZm9udC1mYW1pbHk6IFwiVW5uYVwiLCBzZXJpZjsgfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDU5OXB4KSB7XG4gICAgLmNtcy1vdXRwdXQgaDMge1xuICAgICAgZm9udC1zaXplOiAyNXB4O1xuICAgICAgZm9udC1zaXplOiAyLjVyZW07XG4gICAgICBsaW5lLWhlaWdodDogMS4xNmVtOyB9IH1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIENvbnRhY3QgZm9ybS5cbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIE1haW4uXG4gKi9cbi5jb250YWN0LWZvcm0ge1xuICBwYWRkaW5nLXRvcDogMTAwcHg7XG4gIHBhZGRpbmctYm90dG9tOiAxMDBweDsgfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDU5OXB4KSB7XG4gICAgLmNvbnRhY3QtZm9ybSB7XG4gICAgICBwYWRkaW5nLXRvcDogNTBweDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiA1MHB4OyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMTk5cHgpIHtcbiAgICAuY29udGFjdC1mb3JtIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgbWF4LXdpZHRoOiA4MjBweDtcbiAgICAgIG1hcmdpbjogYXV0bzsgfSB9XG4gIC5jb250YWN0LWZvcm0gLmNtcy1vdXRwdXQge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1heC13aWR0aDogNTAwcHg7XG4gICAgbWFyZ2luLXRvcDogNTBweDsgfVxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNTk5cHgpIHtcbiAgICAgIC5jb250YWN0LWZvcm0gLmNtcy1vdXRwdXQge1xuICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4OyB9IH1cbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYwMHB4KSBhbmQgKG1heC13aWR0aDogODk5cHgpIHtcbiAgICAgIC5jb250YWN0LWZvcm0gLmNtcy1vdXRwdXQge1xuICAgICAgICBtYXJnaW4tdG9wOiAzMHB4O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA1MHB4OyB9IH1cbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwMHB4KSBhbmQgKG1heC13aWR0aDogMTE5OXB4KSB7XG4gICAgICAuY29udGFjdC1mb3JtIC5jbXMtb3V0cHV0IHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNTBweDsgfSB9XG5cbi5jb250YWN0LWZvcm1fX3RpdGxlIHtcbiAgd2lkdGg6IDEwMCU7IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMTk5cHgpIHtcbiAgICAuY29udGFjdC1mb3JtX190aXRsZSB7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfSB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTE5OXB4KSB7XG4gICAgLmNvbnRhY3QtZm9ybV9fdGl0bGU6OmJlZm9yZSB7XG4gICAgICByaWdodDogMDtcbiAgICAgIG1hcmdpbjogYXV0bzsgfSB9XG5cbi5jb250YWN0LWZvcm1fX2NvbnRlbnQge1xuICBhbGlnbi1jb250ZW50OiBjZW50ZXI7XG4gIGhlaWdodDogMTAwJTsgfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDExOTlweCkge1xuICAgIC5jb250YWN0LWZvcm1fX2NvbnRlbnQge1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH0gfVxuXG4uY29udGFjdC1mb3JtX19mb3JtIHtcbiAgcGFkZGluZzogMzBweDtcbiAgYmFja2dyb3VuZDogI2YwZjZmZjsgfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDU5OXB4KSB7XG4gICAgLmNvbnRhY3QtZm9ybV9fZm9ybSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHBhZGRpbmc6IDMwcHggMTBweCA1MHB4OyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MDBweCkgYW5kIChtYXgtd2lkdGg6IDg5OXB4KSB7XG4gICAgLmNvbnRhY3QtZm9ybV9fZm9ybSB7XG4gICAgICBwYWRkaW5nOiAzMHB4IDMwcHggNTBweDsgfSB9XG5cbi8qKlxuICogR3Jhdml0eSBmb3JtcyBzZXR0aW5ncy5cbiAqL1xuLmdmb3JtX3RpdGxlIHtcbiAgbWFyZ2luLWJvdHRvbTogNTBweDsgfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDg5OXB4KSB7XG4gICAgLmdmb3JtX3RpdGxlIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7IH0gfVxuXG4uZ2Zvcm1fdmFsaWRhdGlvbl9jb250YWluZXIge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5nZm9ybV9maWVsZHMgPiBsaSB7XG4gIG1hcmdpbjogMDsgfVxuXG4uZ2ZpZWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogNDBweDtcbiAgbGlzdC1zdHlsZTogbm9uZTsgfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDU5OXB4KSB7XG4gICAgLmdmaWVsZCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAyMHB4OyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MDBweCkgYW5kIChtYXgtd2lkdGg6IDg5OXB4KSB7XG4gICAgLmdmaWVsZCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAzMHB4OyB9IH1cblxuaW5wdXRbdHlwZT0ndGV4dCddIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogNDBweDtcbiAgcGFkZGluZzogMCAxMHB4O1xuICBib3JkZXI6IDFweCBzb2xpZCAjMzE1MTgxO1xuICBiYWNrZ3JvdW5kOiAjZjBmNmZmO1xuICBjb2xvcjogIzMxNTE4MTsgfVxuXG50ZXh0YXJlYSB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDkwcHg7XG4gIHBhZGRpbmc6IDEwcHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkICMzMTUxODE7XG4gIGJhY2tncm91bmQ6ICNmMGY2ZmY7XG4gIGNvbG9yOiAjMzE1MTgxO1xuICByZXNpemU6IG5vbmU7IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA1OTlweCkge1xuICAgIHRleHRhcmVhIHtcbiAgICAgIGhlaWdodDogMTUwcHg7IH0gfVxuXG4udmFsaWRhdGlvbl9lcnJvciB7XG4gIG1hcmdpbi10b3A6IC0yMHB4O1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICBjb2xvcjogI2ZmNTUwMDtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICBmb250LXdlaWdodDogNzAwOyB9XG5cbi52YWxpZGF0aW9uX21lc3NhZ2Uge1xuICBjb2xvcjogI2ZmNTUwMDtcbiAgZm9udC1zdHlsZTogaXRhbGljOyB9XG5cbi8qKlxuICogQWRkaXRpb25hbCBydWxlcyBmb3IgdGhlIGZvcm0uXG4gKi9cbi5tb2JpbGUtbWVudSArIC5jb250YWN0LWZvcm0ge1xuICBwYWRkaW5nLXRvcDogMTYwcHg7IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA1OTlweCkge1xuICAgIC5tb2JpbGUtbWVudSArIC5jb250YWN0LWZvcm0ge1xuICAgICAgcGFkZGluZy10b3A6IDExMHB4OyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MDBweCkgYW5kIChtYXgtd2lkdGg6IDg5OXB4KSB7XG4gICAgLm1vYmlsZS1tZW51ICsgLmNvbnRhY3QtZm9ybSB7XG4gICAgICBwYWRkaW5nLXRvcDogMTUwcHg7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwMHB4KSBhbmQgKG1heC13aWR0aDogMTE5OXB4KSB7XG4gICAgLm1vYmlsZS1tZW51ICsgLmNvbnRhY3QtZm9ybSB7XG4gICAgICBwYWRkaW5nLXRvcDogMTkwcHg7IH0gfVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQ29udGVudCBkZWZhdWx0XG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiBNYWluLlxuICovXG4uY29udGVudC1kZWZhdWx0IHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogODIwcHg7XG4gIGhlaWdodDogMTAwJTtcbiAgcGFkZGluZzogMTAwcHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDU5OXB4KSB7XG4gICAgLmNvbnRlbnQtZGVmYXVsdCB7XG4gICAgICBwYWRkaW5nOiA1MHB4IDEwcHg7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYwMHB4KSBhbmQgKG1heC13aWR0aDogODk5cHgpIHtcbiAgICAuY29udGVudC1kZWZhdWx0IHtcbiAgICAgIHBhZGRpbmc6IDUwcHggMzBweDsgfSB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogODk5cHgpIHtcbiAgICAuY29udGVudC1kZWZhdWx0IHtcbiAgICAgIG1heC13aWR0aDogMTAwJTsgfSB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTAwcHgpIGFuZCAobWF4LXdpZHRoOiAxMTk5cHgpIHtcbiAgICAuY29udGVudC1kZWZhdWx0IHtcbiAgICAgIG1heC13aWR0aDogNzM1cHg7XG4gICAgICBwYWRkaW5nOiAxMDBweCA3NXB4OyB9IH1cbiAgLmNvbnRlbnQtZGVmYXVsdC5iYWNrZ3JvdW5kLWNvbG9yLWJsdWUge1xuICAgIG1hcmdpbi10b3A6IDEwMHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDEwMHB4O1xuICAgIGJhY2tncm91bmQ6ICNmMGY2ZmY7IH1cbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDg5OXB4KSB7XG4gICAgICAuY29udGVudC1kZWZhdWx0LmJhY2tncm91bmQtY29sb3ItYmx1ZSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDUwcHg7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDUwcHg7IH0gfVxuICAgIC5jb250ZW50LWRlZmF1bHQuYmFja2dyb3VuZC1jb2xvci1ibHVlIC5idXR0b24ge1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgIzNkM2QzZDtcbiAgICAgIGNvbG9yOiAjM2QzZDNkOyB9XG4gIC5jb250ZW50LWRlZmF1bHQuYmFja2dyb3VuZC1jb2xvci13aGl0ZSB7XG4gICAgYmFja2dyb3VuZDogd2hpdGU7IH1cbiAgICAuY29udGVudC1kZWZhdWx0LmJhY2tncm91bmQtY29sb3Itd2hpdGUgLmJ1dHRvbiB7XG4gICAgICBib3JkZXI6IDA7XG4gICAgICBiYWNrZ3JvdW5kOiAjMzE1MTgxO1xuICAgICAgY29sb3I6IHdoaXRlOyB9XG4gIC5jb250ZW50LWRlZmF1bHQgLmNtcy1vdXRwdXQge1xuICAgIG1hcmdpbi10b3A6IDUwcHg7IH1cbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDU5OXB4KSB7XG4gICAgICAuY29udGVudC1kZWZhdWx0IC5jbXMtb3V0cHV0IHtcbiAgICAgICAgbWFyZ2luLXRvcDogNDBweDsgfSB9XG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MDBweCkgYW5kIChtYXgtd2lkdGg6IDg5OXB4KSB7XG4gICAgICAuY29udGVudC1kZWZhdWx0IC5jbXMtb3V0cHV0IHtcbiAgICAgICAgbWFyZ2luLXRvcDogMzBweDsgfSB9XG4gIC5jb250ZW50LWRlZmF1bHQgLmJ1dHRvbiB7XG4gICAgbWFyZ2luLXRvcDogNTBweDsgfVxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogODk5cHgpIHtcbiAgICAgIC5jb250ZW50LWRlZmF1bHQgLmJ1dHRvbiB7XG4gICAgICAgIG1hcmdpbi10b3A6IDMwcHg7IH0gfVxuXG4vKipcbiAqIEFkZGl0aW9uYWwgcnVsZXMuXG4gKi9cbi5tb2JpbGUtbWVudSArIC5jb250ZW50LWRlZmF1bHRfX3dyYXBwZXIge1xuICBwYWRkaW5nLXRvcDogMTIwcHg7IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA1OTlweCkge1xuICAgIC5tb2JpbGUtbWVudSArIC5jb250ZW50LWRlZmF1bHRfX3dyYXBwZXIge1xuICAgICAgcGFkZGluZy10b3A6IDUwcHg7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYwMHB4KSBhbmQgKG1heC13aWR0aDogODk5cHgpIHtcbiAgICAubW9iaWxlLW1lbnUgKyAuY29udGVudC1kZWZhdWx0X193cmFwcGVyIHtcbiAgICAgIHBhZGRpbmctdG9wOiA3MHB4OyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MDBweCkgYW5kIChtYXgtd2lkdGg6IDExOTlweCkge1xuICAgIC5tb2JpbGUtbWVudSArIC5jb250ZW50LWRlZmF1bHRfX3dyYXBwZXIge1xuICAgICAgcGFkZGluZy10b3A6IDkwcHg7IH0gfVxuXG4udGV4dC1pbWFnZSArIC5jb250ZW50LWRlZmF1bHRfX3dyYXBwZXIge1xuICBtYXJnaW4tdG9wOiAtNTBweDsgfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDg5OXB4KSB7XG4gICAgLnRleHQtaW1hZ2UgKyAuY29udGVudC1kZWZhdWx0X193cmFwcGVyIHtcbiAgICAgIG1hcmdpbi10b3A6IC0zMHB4OyB9IH1cbiAgLnRleHQtaW1hZ2UgKyAuY29udGVudC1kZWZhdWx0X193cmFwcGVyIC5jb250ZW50LWRlZmF1bHQge1xuICAgIG1hcmdpbjogMDsgfVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4gICBGb290ZXJcclxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxyXG4gKiBNYWluIGVsZW1lbnQuXHJcbiAqL1xuLmZvb3RlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZzogMTAwcHggMDtcbiAgYmFja2dyb3VuZDogIzMxNTE4MTtcbiAgY29sb3I6IHdoaXRlO1xuICBsZXR0ZXItc3BhY2luZzogMC40MnB4OyB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogODk5cHgpIHtcbiAgICAuZm9vdGVyIHtcbiAgICAgIHBhZGRpbmc6IDUwcHggMCAwOyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MDBweCkgYW5kIChtYXgtd2lkdGg6IDExOTlweCkge1xuICAgIC5mb290ZXIge1xuICAgICAgcGFkZGluZzogMTAwcHggMCAwOyB9IH1cbiAgLmZvb3RlciAuYnV0dG9uIHtcbiAgICBtYXJnaW4tdG9wOiAzMHB4O1xuICAgIHBhZGRpbmc6IDE1cHggMjVweDsgfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYwMHB4KSBhbmQgKG1heC13aWR0aDogODk5cHgpIHtcbiAgICAuZm9vdGVyIC53cmFwcGVyIHtcbiAgICAgIG1heC13aWR0aDogNDQwcHg7XG4gICAgICBwYWRkaW5nOiAwIDIwcHg7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAgIC5mb290ZXIgLndyYXBwZXIge1xuICAgICAgcG9zaXRpb246IHN0YXRpYzsgfSB9XG4gIC5mb290ZXIgLm1hcHMge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgICAgIC5mb290ZXIgLm1hcHMge1xuICAgICAgICBwb3NpdGlvbjogc3RhdGljOyB9IH1cbiAgLmZvb3RlciAjbWFwLWNhbnZhcyB7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXgtd2lkdGg6IDQxNXB4O1xuICAgIGhlaWdodDogMTAwJTsgfVxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTE5OXB4KSB7XG4gICAgICAuZm9vdGVyICNtYXAtY2FudmFzIHtcbiAgICAgICAgcG9zaXRpb246IHN0YXRpYyAhaW1wb3J0YW50O1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMzAwcHg7IH0gfVxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gICAgICAuZm9vdGVyICNtYXAtY2FudmFzIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlOyB9IH1cblxuLyoqXHJcbiAqIFVwcGVyIHBhcnQgb2YgZm9vdGVyLlxyXG4gKi9cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogODk5cHgpIHtcbiAgLmZvb3Rlcl9fdXBwZXIge1xuICAgIHBhZGRpbmctYm90dG9tOiA1MHB4OyB9IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MDBweCkgYW5kIChtYXgtd2lkdGg6IDExOTlweCkge1xuICAuZm9vdGVyX191cHBlciB7XG4gICAgcGFkZGluZy1ib3R0b206IDEwMHB4OyB9IH1cblxuLyoqXHJcbiAqIENvbnRhY3QgZWxlbWVudC5cclxuICovXG4uZm9vdGVyX19jb250YWN0IHtcbiAgbWFyZ2luLWJvdHRvbTogNTBweDsgfVxuXG4vKipcclxuICogVGVhc2VyIGVsZW1lbnQuXHJcbiAqL1xuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4OTlweCkge1xuICAuZm9vdGVyX190ZWFzZXIge1xuICAgIG1hcmdpbi10b3A6IDUwcHg7IH0gfVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAuZm9vdGVyX190ZWFzZXIge1xuICAgIHBhZGRpbmctcmlnaHQ6IDExMHB4OyB9IH1cblxuLyoqXHJcbiAqIExvd2VyIHBhcnQgb2YgZm9vdGVyLlxyXG4gKi9cbi5mb290ZXJfX2xvd2VyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nOiAxMHB4IDA7XG4gIGJhY2tncm91bmQ6IHdoaXRlOyB9XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBIZWFkZXJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIE1haW4gZWxlbWVudC5cbiAqL1xuLmhlYWRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgbGVmdDogMDtcbiAgcGFkZGluZzogMzBweCAwIDIwcHg7XG4gIGxldHRlci1zcGFjaW5nOiAwLjQycHg7XG4gIHotaW5kZXg6IDk5OTsgfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDU5OXB4KSB7XG4gICAgLmhlYWRlciB7XG4gICAgICBwYWRkaW5nOiAxMHB4IDA7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAgIC5oZWFkZXIge1xuICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgI2Y3ZjdmNyAwJSwgdHJhbnNwYXJlbnQgMTAwJSk7IH0gfVxuXG4vKipcbiAqIEhlYWRlciBsZWZ0IHBhcnQuXG4gKi9cbi5oZWFkZXJfX2xlZnQge1xuICB3aWR0aDogMzUlOyB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTE5OXB4KSB7XG4gICAgLmhlYWRlcl9fbGVmdCB7XG4gICAgICB3aWR0aDogNzUlOyB9IH1cblxuLyoqXG4gKiBIZWFkZXIgcmlnaHQgcGFydC5cbiAqL1xuLmhlYWRlcl9fcmlnaHQge1xuICB3aWR0aDogNjUlOyB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTE5OXB4KSB7XG4gICAgLmhlYWRlcl9fcmlnaHQge1xuICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG4gIC5oZWFkZXJfX3JpZ2h0IG5hdiB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgIHdpZHRoOiAxMDAlOyB9XG5cbi8qKlxuICogTWFpbiBtZW51IHNldHRpbmdzLlxuICovXG4ubWFpbi1tZW51LWNvbnRhaW5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAubWFpbi1tZW51LWNvbnRhaW5lcjo6YmVmb3JlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxcHg7XG4gICAgYmFja2dyb3VuZDogIzMxNTE4MTtcbiAgICBjb250ZW50OiAnJztcbiAgICBvcGFjaXR5OiAwLjU7IH1cblxuLm1haW4tbWVudSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIHdpZHRoOiAxMDAlOyB9XG4gIC5tYWluLW1lbnUgYSB7XG4gICAgcGFkZGluZy10b3A6IDEwcHg7XG4gICAgcGFkZGluZy1ib3R0b206IDEwcHg7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBtYXJnaW4tbGVmdDogMzVweDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyB9XG4gIC5tYWluLW1lbnUgLm1lbnUtaXRlbTpudGgtY2hpbGQoMSkgYSB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7IH1cblxuLyoqXG4gKiBUb3AgbWVudSBzZXR0aW5ncy5cbiAqL1xuLnRvcC1tZW51IHtcbiAgZGlzcGxheTogZmxleDtcbiAgd2lkdGg6IDEwMCU7IH1cbiAgLnRvcC1tZW51IGEge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgbWFyZ2luLWxlZnQ6IDQwcHg7XG4gICAgcGFkZGluZy1ib3R0b206IDEwcHg7IH1cbiAgLnRvcC1tZW51IC5tZW51LWl0ZW06bnRoLWNoaWxkKDEpIGEge1xuICAgIG1hcmdpbi1sZWZ0OiAwOyB9XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbiAgIE1haW4gTWVudVxyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXHJcbiAqIE1haW4gbWVudSBsaW5rLlxyXG4gKi9cbi50b3AtbWVudSA+IC5tZW51LWl0ZW0gPiBhLFxuLm1haW4tbWVudSA+IC5tZW51LWl0ZW0gPiBhIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC50b3AtbWVudSA+IC5tZW51LWl0ZW0gPiBhOjphZnRlcixcbiAgLm1haW4tbWVudSA+IC5tZW51LWl0ZW0gPiBhOjphZnRlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogM3B4O1xuICAgIHRyYW5zaXRpb246IHdpZHRoIDI1MG1zIGVhc2U7XG4gICAgYmFja2dyb3VuZDogIzMxNTE4MTtcbiAgICBjb250ZW50OiAnJzsgfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAgIC50b3AtbWVudSA+IC5tZW51LWl0ZW0gPiBhOmhvdmVyOjphZnRlcixcbiAgICAubWFpbi1tZW51ID4gLm1lbnUtaXRlbSA+IGE6aG92ZXI6OmFmdGVyIHtcbiAgICAgIHdpZHRoOiAxMDAlOyB9IH1cblxuLyoqXHJcbiAqIE1haW4gbWVudSBpdGVtIGhhcyBjaGlsZHJlbi5cclxuICovXG4ubWFpbi1tZW51ID4gLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLm1haW4tbWVudSA+IC5tZW51LWl0ZW0taGFzLWNoaWxkcmVuOmhvdmVyIC5zdWJtZW51LWNvbnRhaW5lciB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cblxuLyoqXHJcbiAqIE1haW4gbWVudSBjdXJyZW50IG1lbnUgaXRlbSBhbmQgY3VycmVudCBwYWdlIGFuY2VzdG9yLlxyXG4gKi9cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTE5OXB4KSB7XG4gIC50b3AtbWVudSA+IC5jdXJyZW50LW1lbnUtaXRlbSA+IGEsXG4gIC5tYWluLW1lbnUgPiAuY3VycmVudC1tZW51LWl0ZW0gPiBhLFxuICAubWFpbi1tZW51ID4gLmN1cnJlbnQtcGFnZS1hbmNlc3RvciA+IGEge1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4OyB9IH1cblxuLnRvcC1tZW51ID4gLmN1cnJlbnQtbWVudS1pdGVtID4gYTo6YWZ0ZXIsXG4ubWFpbi1tZW51ID4gLmN1cnJlbnQtbWVudS1pdGVtID4gYTo6YWZ0ZXIsXG4ubWFpbi1tZW51ID4gLmN1cnJlbnQtcGFnZS1hbmNlc3RvciA+IGE6OmFmdGVyIHtcbiAgd2lkdGg6IDEwMCU7IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMTk5cHgpIHtcbiAgICAudG9wLW1lbnUgPiAuY3VycmVudC1tZW51LWl0ZW0gPiBhOjphZnRlcixcbiAgICAubWFpbi1tZW51ID4gLmN1cnJlbnQtbWVudS1pdGVtID4gYTo6YWZ0ZXIsXG4gICAgLm1haW4tbWVudSA+IC5jdXJyZW50LXBhZ2UtYW5jZXN0b3IgPiBhOjphZnRlciB7XG4gICAgICBib3R0b206IDEzcHg7XG4gICAgICBiYWNrZ3JvdW5kOiB3aGl0ZTsgfSB9XG5cbi8qKlxyXG4gKiBNb2JpbGUgbWVudSBzZXR0aW5ncy5cclxuICovXG4ubW9iaWxlLW1lbnUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogODlweDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgd2lkdGg6IGNhbGMoMTAwJSAtIDUwcHgpO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG1pbi1oZWlnaHQ6IDEwMHZoO1xuICB0cmFuc2l0aW9uOiBhbGwgMjUwbXMgZWFzZTtcbiAgYmFja2dyb3VuZDogIzMxNTE4MTtcbiAgY29sb3I6IHdoaXRlO1xuICBvcGFjaXR5OiAwO1xuICB6LWluZGV4OiAtMTtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA1OTlweCkge1xuICAgIC5tb2JpbGUtbWVudSB7XG4gICAgICB0b3A6IDY2cHg7XG4gICAgICB3aWR0aDogY2FsYygxMDAlIC0gMjBweCk7XG4gICAgICBwYWRkaW5nOiAwIDIwcHg7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYwMHB4KSBhbmQgKG1heC13aWR0aDogMTE5OXB4KSB7XG4gICAgLm1vYmlsZS1tZW51IHtcbiAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0OyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MDBweCkgYW5kIChtYXgtd2lkdGg6IDg5OXB4KSB7XG4gICAgLm1vYmlsZS1tZW51IHtcbiAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSA2MHB4KTtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDYwcHg7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwMHB4KSBhbmQgKG1heC13aWR0aDogMTE5OXB4KSB7XG4gICAgLm1vYmlsZS1tZW51IHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDUwcHg7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAgIC5tb2JpbGUtbWVudSB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9IH1cbiAgLm1vYmlsZS1tZW51IC50b3AtbWVudSxcbiAgLm1vYmlsZS1tZW51IC5tYWluLW1lbnUge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gIC5tb2JpbGUtbWVudSAudG9wLW1lbnUgYSB7XG4gICAgbWFyZ2luOiAxMHB4IDAgIWltcG9ydGFudDsgfVxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNTk5cHgpIHtcbiAgICAgIC5tb2JpbGUtbWVudSAudG9wLW1lbnUgYSB7XG4gICAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50OyB9IH1cbiAgLm1vYmlsZS1tZW51IC5tZW51LWl0ZW0ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDsgfVxuICAgIC5tb2JpbGUtbWVudSAubWVudS1pdGVtIGEge1xuICAgICAgbWFyZ2luOiAxNXB4IDA7IH1cbiAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNTk5cHgpIHtcbiAgICAgICAgLm1vYmlsZS1tZW51IC5tZW51LWl0ZW0gYSB7XG4gICAgICAgICAgbWFyZ2luOiAwOyB9IH1cbiAgLm1vYmlsZS1tZW51LmlzLWFjdGl2ZSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB6LWluZGV4OiA5MDtcbiAgICBwb2ludGVyLWV2ZW50czogYWxsOyB9XG5cbi8qKlxyXG4gKiBNb2JpbGUgbWVudSBjb250ZW50IGRpdi5cclxuICovXG4ubW9iaWxlLW1lbnVfX2NvbnRlbnQge1xuICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNTk5cHgpIHtcbiAgICAubW9iaWxlLW1lbnVfX2NvbnRlbnQge1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlOyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MDBweCkgYW5kIChtYXgtd2lkdGg6IDExOTlweCkge1xuICAgIC5tb2JpbGUtbWVudV9fY29udGVudCB7XG4gICAgICBwYWRkaW5nLXRvcDogMTcwcHg7IH0gfVxuXG4vKipcclxuICogTW9iaWxlIG1lbnUgaW5uZXIuXHJcbiAqL1xuLm1vYmlsZS1tZW51X19sZWZ0LFxuLm1vYmlsZS1tZW51X19yaWdodCB7XG4gIHdpZHRoOiBhdXRvOyB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNTk5cHgpIHtcbiAgICAubW9iaWxlLW1lbnVfX2xlZnQsXG4gICAgLm1vYmlsZS1tZW51X19yaWdodCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgd2lkdGg6IDEwMCU7IH0gfVxuXG4vKipcclxuICogUmlnaHQgcGFydCBvZiB0aGUgbW9iaWxlIG1lbnUgKHRhYmxldCkuXHJcbiAqL1xuLm1vYmlsZS1tZW51X19yaWdodCB7XG4gIG1hcmdpbi1sZWZ0OiAxMDBweDtcbiAgcGFkZGluZzogMzBweCAwIDMwcHggMTAwcHg7XG4gIGJvcmRlci1sZWZ0OiAxcHggc29saWQgd2hpdGU7IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA1OTlweCkge1xuICAgIC5tb2JpbGUtbWVudV9fcmlnaHQge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgbWFyZ2luOiAwIDAgMzBweDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBib3JkZXItbGVmdDogMDsgfVxuICAgICAgLm1vYmlsZS1tZW51X19yaWdodDo6YWZ0ZXIge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICBib3R0b206IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDFweDtcbiAgICAgICAgYmFja2dyb3VuZDogd2hpdGU7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBvcGFjaXR5OiAwLjU7IH0gfVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgTmF2aWdhdGlvblxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICogTmF2aWdhdGlvbiBtYWluIHNldHRpbmdzLlxuICovXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDU5OXB4KSB7XG4gIC5uYXZpZ2F0aW9uX190b3AsXG4gIC5uYXZpZ2F0aW9uX19ib3R0b20ge1xuICAgIG1hcmdpbjogYXV0byAwIGF1dG8gYXV0bzsgfSB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNTk5cHgpIHtcbiAgLm5hdmlnYXRpb25fX2JvdHRvbSB7XG4gICAgbWFyZ2luLXRvcDogNDBweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMzBweDsgfSB9XG5cbi8qKlxuICogTmF2aWdhdGlvbiBidXR0b24uXG4gKi9cbi5uYXZpZ2F0aW9uLWJ1dHRvbiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDUwcHg7XG4gIGhlaWdodDogMzhweDsgfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDU5OXB4KSB7XG4gICAgLm5hdmlnYXRpb24tYnV0dG9uIHtcbiAgICAgIHRvcDogNnB4O1xuICAgICAgbGVmdDogNXB4OyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgICAubmF2aWdhdGlvbi1idXR0b24ge1xuICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG4gIC5uYXZpZ2F0aW9uLWJ1dHRvbiBzcGFuIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDUwcHg7XG4gICAgaGVpZ2h0OiA4cHg7XG4gICAgbWFyZ2luOiBhdXRvO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMzMTUxODE7IH1cbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDExOTlweCkge1xuICAgICAgLm5hdmlnYXRpb24tYnV0dG9uIHNwYW4ge1xuICAgICAgICB3aWR0aDogMzhweDtcbiAgICAgICAgaGVpZ2h0OiA2cHg7IH0gfVxuICAgIC5uYXZpZ2F0aW9uLWJ1dHRvbiBzcGFuOm50aC1jaGlsZCgxKSB7XG4gICAgICB0b3A6IC05cHg7XG4gICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDQwMG1zLCB0b3AgNDAwbXMgNDAwbXMsIHRyYW5zZm9ybSA0MDBtcyAwcztcbiAgICAgIGJhY2tncm91bmQ6ICNiMGIwYjA7IH1cbiAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTE5OXB4KSB7XG4gICAgICAgIC5uYXZpZ2F0aW9uLWJ1dHRvbiBzcGFuOm50aC1jaGlsZCgxKSB7XG4gICAgICAgICAgdG9wOiAtNXB4OyB9IH1cbiAgICAubmF2aWdhdGlvbi1idXR0b24gc3BhbjpudGgtY2hpbGQoMikge1xuICAgICAgdG9wOiBjYWxjKDUwJSAtIDE0cHgpO1xuICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciA0MDBtcywgb3BhY2l0eSAwbXMgNDAwbXM7XG4gICAgICBvcGFjaXR5OiAxOyB9XG4gICAgLm5hdmlnYXRpb24tYnV0dG9uIHNwYW46bnRoLWNoaWxkKDMpIHtcbiAgICAgIHRvcDogY2FsYyg1MCUgLSAxM3B4KTtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgNDAwbXMsIGJvdHRvbSA0MDBtcyA0MDBtcywgdHJhbnNmb3JtIDQwMG1zIDBzOyB9XG4gICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDExOTlweCkge1xuICAgICAgICAubmF2aWdhdGlvbi1idXR0b24gc3BhbjpudGgtY2hpbGQoMykge1xuICAgICAgICAgIHRvcDogY2FsYyg1MCUgLSAyMXB4KTsgfSB9XG4gICAgLm5hdmlnYXRpb24tYnV0dG9uIHNwYW46bnRoLWNoaWxkKDQpIHtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgNDAwbXMsIGJvdHRvbSA0MDBtcyA0MDBtcywgdHJhbnNmb3JtIDQwMG1zIDBzLCBvcGFjaXR5IDI1MG1zIGVhc2U7IH1cbiAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTE5OXB4KSB7XG4gICAgICAgIC5uYXZpZ2F0aW9uLWJ1dHRvbiBzcGFuOm50aC1jaGlsZCg0KSB7XG4gICAgICAgICAgYm90dG9tOiA3cHg7IH0gfVxuICAubmF2aWdhdGlvbi1idXR0b24uaXMtYWN0aXZlIHNwYW46bnRoLWNoaWxkKDEpIHtcbiAgICB0b3A6IGNhbGMoNTAlIC0gNHB4KTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgNDAwbXMsIHRvcCA0MDBtcywgdHJhbnNmb3JtIDQwMG1zIDQwMG1zOyB9XG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMTk5cHgpIHtcbiAgICAgIC5uYXZpZ2F0aW9uLWJ1dHRvbi5pcy1hY3RpdmUgc3BhbjpudGgtY2hpbGQoMSkge1xuICAgICAgICB0b3A6IGNhbGMoNTAlIC0gN3B4KTsgfSB9XG4gIC5uYXZpZ2F0aW9uLWJ1dHRvbi5pcy1hY3RpdmUgc3BhbjpudGgtY2hpbGQoMikge1xuICAgIG9wYWNpdHk6IDA7IH1cbiAgLm5hdmlnYXRpb24tYnV0dG9uLmlzLWFjdGl2ZSBzcGFuOm50aC1jaGlsZCgzKSB7XG4gICAgYm90dG9tOiBjYWxjKDUwJSAtIDExcHgpO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDQwMG1zLCBib3R0b20gNDAwbXMsIHRyYW5zZm9ybSA0MDBtcyA0MDBtczsgfVxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTE5OXB4KSB7XG4gICAgICAubmF2aWdhdGlvbi1idXR0b24uaXMtYWN0aXZlIHNwYW46bnRoLWNoaWxkKDMpIHtcbiAgICAgICAgdG9wOiBjYWxjKDUwJSAtIDE5cHgpOyB9IH1cbiAgLm5hdmlnYXRpb24tYnV0dG9uLmlzLWFjdGl2ZSBzcGFuOm50aC1jaGlsZCg0KSB7XG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciA0MDBtcywgYm90dG9tIDQwMG1zLCB0cmFuc2Zvcm0gNDAwbXMgNDAwbXMsIG9wYWNpdHkgMjUwbXMgZWFzZTtcbiAgICBvcGFjaXR5OiAwOyB9XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbiAgIEhlYWRpbmdcclxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxyXG4gKiBNYWluIHNldHRpbmdzLlxyXG4gKi9cbi5sb2dvIGltZyB7XG4gIHdpZHRoOiBhdXRvO1xuICBoZWlnaHQ6IDQ2cHg7IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA1OTlweCkge1xuICAgIC5sb2dvIGltZyB7XG4gICAgICBoZWlnaHQ6IDM2cHg7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYwMHB4KSBhbmQgKG1heC13aWR0aDogMTE5OXB4KSB7XG4gICAgLmxvZ28gaW1nIHtcbiAgICAgIGhlaWdodDogMzZweDsgfSB9XG5cbi8qKlxyXG4gKiBEZXNrdG9wIGxvZ28uXHJcbiAqL1xuLmxvZ28tLWRlc2t0b3Age1xuICBkaXNwbGF5OiBub25lOyB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjAwcHgpIHtcbiAgICAubG9nby0tZGVza3RvcCB7XG4gICAgICBkaXNwbGF5OiBibG9jazsgfSB9XG5cbi8qKlxyXG4gKiBNb2JpbGUgbG9nby5cclxuICovXG4ubG9nby0tbW9iaWxlIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDU5OXB4KSB7XG4gICAgLmxvZ28tLW1vYmlsZSB7XG4gICAgICBkaXNwbGF5OiBibG9jazsgfSB9XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBTdWJqZWN0c1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICogTWFpbi5cbiAqL1xuLnN1YmplY3RzIHtcbiAgcGFkZGluZy10b3A6IDEwMHB4O1xuICBwYWRkaW5nLWJvdHRvbTogMTAwcHg7XG4gIGJhY2tncm91bmQ6IHdoaXRlOyB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogODk5cHgpIHtcbiAgICAuc3ViamVjdHMge1xuICAgICAgcGFkZGluZy10b3A6IDUwcHg7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogNTBweDsgfSB9XG4gIC5zdWJqZWN0cyAuY29sIHtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4OyB9XG5cbi8qKlxuICogVGl0bGUuXG4gKi9cbi5zdWJqZWN0c19fdGl0bGUge1xuICBtYXJnaW4tYm90dG9tOiA1MHB4OyB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogODk5cHgpIHtcbiAgICAuc3ViamVjdHNfX3RpdGxlIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7IH0gfVxuXG4vKipcbiAqIFN1YmplY3Qgcm93LlxuICovXG4uc3ViamVjdHNfX3JvdyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luOiAwIC0xMHB4OyB9XG5cbi8qKlxuICogU2luZ2xlIHN1YmplY3QuXG4gKi9cbi5zdWJqZWN0IHtcbiAgd2lkdGg6IGNhbGMoMTAwJSAvIDMgLSAyMHB4KTtcbiAgbWFyZ2luOiAxMHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJveC1zaGFkb3c6IDAgMCAyMHB4IDAgcmdiYSg0OSwgODEsIDEzMCwgMC4xNSk7XG4gIHRyYW5zaXRpb246IGJveC1zaGFkb3cgMjUwbXMgZWFzZTtcbiAgY3Vyc29yOiBwb2ludGVyOyB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogODk5cHgpIHtcbiAgICAuc3ViamVjdCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgbWluLWhlaWdodDogMjAwcHg7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxMHB4OyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MDBweCkgYW5kIChtYXgtd2lkdGg6IDExOTlweCkge1xuICAgIC5zdWJqZWN0IHtcbiAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLyAyIC0gMjBweCk7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAgIC5zdWJqZWN0OmhvdmVyIHtcbiAgICAgIGJveC1zaGFkb3c6IDAgMCAyMHB4IDAgcmdiYSg0OSwgODEsIDEzMCwgMC4zNik7IH0gfVxuXG4vKipcbiAqIFF1ZXN0aW9uLlxuICovXG4uc3ViamVjdF9fcXVlc3Rpb24ge1xuICBmb250LXNpemU6IDI1cHg7XG4gIGZvbnQtc2l6ZTogMi41cmVtO1xuICBsaW5lLWhlaWdodDogMS4xNmVtO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBtaW4taGVpZ2h0OiAyNTBweDtcbiAgcGFkZGluZzogMzBweCAyMHB4O1xuICBmb250LWZhbWlseTogXCJVbm5hXCIsIHNlcmlmOyB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogODk5cHgpIHtcbiAgICAuc3ViamVjdF9fcXVlc3Rpb24ge1xuICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgZm9udC1zaXplOiAycmVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuMTVlbTtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgbWluLWhlaWdodDogMDtcbiAgICAgIHBhZGRpbmc6IDIwcHggMjBweCAzMHB4O1xuICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7IH0gfVxuXG4vKipcbiAqIFF1ZXN0aW9uIGluIHRoZSBhbnN3ZXIgZGl2LlxuICovXG4uc3ViamVjdF9fcXVlc3Rpb24tLXNtYWxsIHtcbiAgZm9udC1zaXplOiAyNXB4O1xuICBmb250LXNpemU6IDIuNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMTZlbTtcbiAgbWFyZ2luLWJvdHRvbTogNTBweDtcbiAgZm9udC1mYW1pbHk6IFwiVW5uYVwiLCBzZXJpZjsgfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDg5OXB4KSB7XG4gICAgLnN1YmplY3RfX3F1ZXN0aW9uLS1zbWFsbCB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9IH1cblxuLyoqXG4gKiBBbnN3ZXIuXG4gKi9cbi5zdWJqZWN0X19hbnN3ZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogLTIwJTtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgYWxpZ24tY29udGVudDogY2VudGVyO1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiA4MjBweDtcbiAgaGVpZ2h0OiA3MCU7XG4gIG1heC1oZWlnaHQ6IDQzMHB4O1xuICBtYXJnaW46IGF1dG87XG4gIHBhZGRpbmc6IDEwMHB4O1xuICB0cmFuc2l0aW9uOiBhbGwgMjUwbXMgZWFzZTtcbiAgYm9yZGVyLXJhZGl1czogNXB4O1xuICBiYWNrZ3JvdW5kOiAjZjBmNmZmO1xuICBib3gtc2hhZG93OiAwIDAgMjBweCAwIHJnYmEoNDksIDgxLCAxMzAsIDAuMTUpO1xuICBvcGFjaXR5OiAwO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTsgfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDg5OXB4KSB7XG4gICAgLnN1YmplY3RfX2Fuc3dlciB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICAgIG1heC1oZWlnaHQ6IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgIHotaW5kZXg6IDk5O1xuICAgICAgcG9pbnRlci1ldmVudHM6IGFsbDsgfSB9XG4gIC5zdWJqZWN0X19hbnN3ZXIuaXMtYWN0aXZlIHtcbiAgICB0b3A6IDA7XG4gICAgb3BhY2l0eTogMTtcbiAgICBwb2ludGVyLWV2ZW50czogYWxsOyB9XG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4OTlweCkge1xuICAgICAgLnN1YmplY3RfX2Fuc3dlci5pcy1hY3RpdmUge1xuICAgICAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgICAgICBtYXgtaGVpZ2h0OiAxMDAwcHg7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDY1cHg7XG4gICAgICAgIHBhZGRpbmc6IDIwcHg7XG4gICAgICAgIG9wYWNpdHk6IDE7IH0gfVxuXG4vKipcbiAqIENsb3NlIHN1YmplY3QgYnV0dG9uLlxuICovXG4uY2xvc2Utc3ViamVjdCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAyMHB4O1xuICByaWdodDogMjBweDsgfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDg5OXB4KSB7XG4gICAgLmNsb3NlLXN1YmplY3Qge1xuICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG4gIC5jbG9zZS1zdWJqZWN0IHN2ZyB7XG4gICAgd2lkdGg6IDMwcHg7XG4gICAgaGVpZ2h0OiAzMHB4O1xuICAgIGNvbG9yOiAjMzE1MTgxOyB9XG5cbi8qKlxuICogVG9nZ2xlIGZvciB0aGUgYW5zd2VyIG9uIHRhYmxldC1wb3J0cmFpdCBhbmQgbG93ZXIuXG4gKi9cbi50b2dnbGUtYW5zd2VyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IDEwcHg7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAxMHB4O1xuICBsZXR0ZXItc3BhY2luZzogMC40MnB4O1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgei1pbmRleDogOTk7IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgICAudG9nZ2xlLWFuc3dlciB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MDBweCkgYW5kIChtYXgtd2lkdGg6IDExOTlweCkge1xuICAgIC50b2dnbGUtYW5zd2VyIHtcbiAgICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgICBtYXJnaW4tdG9wOiAtNTBweDsgfSB9XG4gIC50b2dnbGUtYW5zd2VyLnRhYmxldC1sYW5kc2NhcGUge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwMHB4KSBhbmQgKG1heC13aWR0aDogMTE5OXB4KSB7XG4gICAgICAudG9nZ2xlLWFuc3dlci50YWJsZXQtbGFuZHNjYXBlIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7IH0gfVxuICAudG9nZ2xlLWFuc3dlci50YWJsZXQtcG9ydHJhaXQtZG93biB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogODk5cHgpIHtcbiAgICAgIC50b2dnbGUtYW5zd2VyLnRhYmxldC1wb3J0cmFpdC1kb3duIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7IH0gfVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgVGVhc2Vyc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICogTWFpbi5cbiAqL1xuLnRlYXNlcnMge1xuICBwYWRkaW5nLXRvcDogMTAwcHg7XG4gIHBhZGRpbmctYm90dG9tOiAxMDBweDtcbiAgYmFja2dyb3VuZDogd2hpdGU7IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4OTlweCkge1xuICAgIC50ZWFzZXJzIHtcbiAgICAgIHBhZGRpbmctdG9wOiA1MHB4O1xuICAgICAgcGFkZGluZy1ib3R0b206IDUwcHg7IH0gfVxuICAudGVhc2Vyc1tkYXRhLXRlYXNlci1hbW91bnQ9JzMnXSAudGVhc2VyIHtcbiAgICB3aWR0aDogY2FsYygxMDAlIC8gMyAtIDIwcHgpOyB9XG4gIC50ZWFzZXJzW2RhdGEtdGVhc2VyLWFtb3VudD0nMiddIC50ZWFzZXIge1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLyAyIC0gMjBweCk7IH1cbiAgLnRlYXNlcnMuYmFja2dyb3VuZC1jb2xvci13aGl0ZSAudGVhc2VyOmhvdmVyIC50ZWFzZXJfX2NvbnRlbnQge1xuICAgIGJhY2tncm91bmQ6ICMzMTUxODE7XG4gICAgY29sb3I6IHdoaXRlOyB9XG4gIC50ZWFzZXJzLmJhY2tncm91bmQtY29sb3Itd2hpdGUgLnRlYXNlcl9fY29udGVudCB7XG4gICAgYmFja2dyb3VuZDogd2hpdGU7IH1cbiAgLnRlYXNlcnMuYmFja2dyb3VuZC1jb2xvci1ibHVlIC50ZWFzZXI6aG92ZXIgLnRlYXNlcl9fY29udGVudCB7XG4gICAgYmFja2dyb3VuZDogI2YwZjZmZjtcbiAgICBjb2xvcjogIzMxNTE4MTsgfVxuICAudGVhc2Vycy5iYWNrZ3JvdW5kLWNvbG9yLWJsdWUgLnRlYXNlcl9fY29udGVudCB7XG4gICAgcGFkZGluZzogMzBweCAyMHB4IDA7XG4gICAgYmFja2dyb3VuZDogIzMxNTE4MTtcbiAgICBjb2xvcjogd2hpdGU7IH1cblxuLyoqXG4gKiBEaWZmZXJlbnQgc3R5bGUgc2V0dGluZ3MgZm9yIGRpZmZlcmVudCB3aWR0aHMuXG4gKi9cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTE5OXB4KSB7XG4gIC5zdHlsZS0tc21hbGwuYmFja2dyb3VuZC1jb2xvci1ibHVlIC50ZWFzZXJfX2NvbnRlbnQsXG4gIC5zdHlsZS0td2lkZS5iYWNrZ3JvdW5kLWNvbG9yLWJsdWUgLnRlYXNlcl9fY29udGVudCB7XG4gICAgYmFja2dyb3VuZDogI2YwZjZmZjtcbiAgICBjb2xvcjogIzMxNTE4MTsgfSB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTE5OXB4KSB7XG4gIC5zdHlsZS0tc21hbGwuYmFja2dyb3VuZC1jb2xvci13aGl0ZSAudGVhc2VyX19jb250ZW50LFxuICAuc3R5bGUtLXdpZGUuYmFja2dyb3VuZC1jb2xvci13aGl0ZSAudGVhc2VyX19jb250ZW50IHtcbiAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgICBjb2xvcjogIzMxNTE4MTsgfSB9XG5cbi8qKlxuICogU3R5bGUgc21hbGwuXG4gKi9cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTE5OXB4KSB7XG4gIC5zdHlsZS0tc21hbGwgLnRlYXNlciB7XG4gICAgdHJhbnNpdGlvbjogYWxsIDBtcyBlYXNlOyB9IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLnN0eWxlLS1zbWFsbCAudGVhc2VyOmhvdmVyIC50ZWFzZXJfX2NvbnRlbnQge1xuICAgIHRvcDogaW5pdGlhbDtcbiAgICBib3R0b206IDA7IH0gfVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDExOTlweCkge1xuICAuc3R5bGUtLXNtYWxsIC50ZWFzZXJfX2NvbnRlbnQge1xuICAgIHRvcDogY2FsYygxMDAlIC0gOTBweCk7XG4gICAgYm90dG9tOiBpbml0aWFsOyB9IH1cblxuLyoqXG4gKiBTdHlsZSB3aWRlLlxuICovXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDExOTlweCkge1xuICAuc3R5bGUtLXdpZGUgLnRlYXNlciB7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGhlaWdodDogYXV0bzsgfSB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTE5OXB4KSB7XG4gIC5zdHlsZS0td2lkZSAudGVhc2VyX19jb250ZW50IHtcbiAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgIGhlaWdodDogMTAwJTsgfSB9XG5cbi8qKlxuICogVGl0bGUuXG4gKi9cbi50ZWFzZXJzX190aXRsZSB7XG4gIG1hcmdpbi1ib3R0b206IDUwcHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuXG4vKipcbiAqIFRlYXNlcnMgcm93LlxuICovXG4udGVhc2Vyc19fcm93IHtcbiAgbWFyZ2luOiAtMTBweDsgfVxuXG4vKipcbiAqIFNpbmdsZSB0ZWFzZXIuXG4gKi9cbi50ZWFzZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiBjYWxjKDEwMCUgLyA0IC0gMjBweCk7XG4gIGhlaWdodDogYXV0bztcbiAgbWluLWhlaWdodDogNDAwcHg7XG4gIG1hcmdpbjogMTBweDtcbiAgYm94LXNoYWRvdzogMCAwIDIwcHggMCByZ2JhKDQ5LCA4MSwgMTMwLCAwLjE1KTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNzYwcHgpIHtcbiAgICAudGVhc2VyIHtcbiAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYwMHB4KSBhbmQgKG1heC13aWR0aDogMTE5OXB4KSB7XG4gICAgLnRlYXNlciB7XG4gICAgICB3aWR0aDogY2FsYygxMDAlIC8gMiAtIDIwcHgpO1xuICAgICAgaGVpZ2h0OiA0MDBweDsgfSB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gICAgLnRlYXNlcjpob3ZlciAudGVhc2VyX19jb250ZW50IHtcbiAgICAgIHRvcDogaW5pdGlhbDtcbiAgICAgIGJvdHRvbTogMDsgfSB9XG5cbi8qKlxuICogVGVhc2VyIGltYWdlLlxuICovXG4udGVhc2VyX19pbWFnZSB7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7IH1cbiAgLnRlYXNlcl9faW1hZ2UgaW1nIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7IH1cblxuLyoqXG4gKiBUZWFzZXIgY29udGVudC5cbiAqL1xuLnRlYXNlcl9fY29udGVudCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiBjYWxjKDEwMCUgLSA5MHB4KTtcbiAgYm90dG9tOiAtMTAwJTtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDMwcHggMjBweDtcbiAgdHJhbnNpdGlvbjogYWxsIDUwMG1zIGVhc2U7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAudGVhc2VyX19jb250ZW50IGgzIHtcbiAgICBtYXJnaW4tYm90dG9tOiAzMHB4OyB9XG4gIC50ZWFzZXJfX2NvbnRlbnQgaW1nIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICB3aWR0aDogMzBweDtcbiAgICBoZWlnaHQ6IDMwcHg7XG4gICAgbWFyZ2luLXRvcDogMjBweDsgfVxuICAudGVhc2VyX19jb250ZW50IC5saW5rIHtcbiAgICBtYXJnaW4tdG9wOiAxMHB4OyB9XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBUZXh0L2ltYWdlXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiBNYWluIGVsZW1lbnQuXG4gKi9cbi50ZXh0LWltYWdlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6IDEwMHZoO1xuICBtaW4taGVpZ2h0OiAxMDB2aDtcbiAgYmFja2dyb3VuZDogd2hpdGU7XG4gIGxldHRlci1zcGFjaW5nOiAwLjQycHg7IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4OTlweCkge1xuICAgIC50ZXh0LWltYWdlIHtcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICAgIG1pbi1oZWlnaHQ6IDA7XG4gICAgICBwYWRkaW5nLXRvcDogNTBweDsgfSB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTAwcHgpIGFuZCAobWF4LXdpZHRoOiAxMTk5cHgpIHtcbiAgICAudGV4dC1pbWFnZSB7XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICBtaW4taGVpZ2h0OiA2MDBweDsgfSB9XG4gIC50ZXh0LWltYWdlIC53cmFwcGVyIHtcbiAgICBwb3NpdGlvbjogc3RhdGljOyB9XG5cbi8qKlxuICogVGV4dC5cbiAqL1xuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4OTlweCkge1xuICAudGV4dC1pbWFnZV9fdGl0bGUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1heC13aWR0aDogMzcwcHg7XG4gICAgbWFyZ2luOiBhdXRvOyB9IH1cblxuLnRleHQtaW1hZ2VfX3RleHQge1xuICB3aWR0aDogNDAlO1xuICBtYXgtd2lkdGg6IDM5NXB4OyB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogODk5cHgpIHtcbiAgICAudGV4dC1pbWFnZV9fdGV4dCB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwMHB4KSBhbmQgKG1heC13aWR0aDogMTE5OXB4KSB7XG4gICAgLnRleHQtaW1hZ2VfX3RleHQge1xuICAgICAgd2lkdGg6IDQ1JTtcbiAgICAgIG1heC13aWR0aDogMzUwcHg7IH0gfVxuICAudGV4dC1pbWFnZV9fdGV4dCAuY21zLW91dHB1dCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLXRvcDogNTBweDsgfVxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogODk5cHgpIHtcbiAgICAgIC50ZXh0LWltYWdlX190ZXh0IC5jbXMtb3V0cHV0IHtcbiAgICAgICAgbWF4LXdpZHRoOiA0ODBweDtcbiAgICAgICAgbWFyZ2luOiAzMHB4IGF1dG8gYXV0bzsgfSB9XG5cbi8qKlxuICogSW1hZ2UuXG4gKi9cbi50ZXh0LWltYWdlX19pbWFnZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICB3aWR0aDogNjAlOyB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNTk5cHgpIHtcbiAgICAudGV4dC1pbWFnZV9faW1hZ2Uge1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSArIDQwcHgpO1xuICAgICAgbWFyZ2luOiAwIC0yMHB4OyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MDBweCkgYW5kIChtYXgtd2lkdGg6IDg5OXB4KSB7XG4gICAgLnRleHQtaW1hZ2VfX2ltYWdlIHtcbiAgICAgIHdpZHRoOiBjYWxjKDEwMCUgKyAxMjBweCk7XG4gICAgICBtYXJnaW46IDAgLTYwcHg7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDg5OXB4KSB7XG4gICAgLnRleHQtaW1hZ2VfX2ltYWdlIHtcbiAgICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgICBoZWlnaHQ6IDMwMHB4OyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MDBweCkgYW5kIChtYXgtd2lkdGg6IDExOTlweCkge1xuICAgIC50ZXh0LWltYWdlX19pbWFnZSB7XG4gICAgICB3aWR0aDogNTUlOyB9IH1cbiAgLnRleHQtaW1hZ2VfX2ltYWdlIGltZyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlOyB9XG5cbi8qKlxuICogQWRkdGlvbmFsIHJ1bGVzLlxuICovXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDU5OXB4KSB7XG4gIC5tb2JpbGUtbWVudSArIC50ZXh0LWltYWdlIHtcbiAgICBwYWRkaW5nLXRvcDogMTAwcHg7IH0gfVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYwMHB4KSBhbmQgKG1heC13aWR0aDogODk5cHgpIHtcbiAgLm1vYmlsZS1tZW51ICsgLnRleHQtaW1hZ2Uge1xuICAgIHBhZGRpbmctdG9wOiAxMjBweDsgfSB9XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBRdW90ZVxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICogTWFpbi5cbiAqL1xuLnF1b3RlIHtcbiAgcGFkZGluZy10b3A6IDEwMHB4O1xuICBwYWRkaW5nLWJvdHRvbTogMTAwcHg7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDgyMHB4O1xuICBtYXJnaW46IGF1dG87XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDg5OXB4KSB7XG4gICAgLnF1b3RlIHtcbiAgICAgIHBhZGRpbmctdG9wOiA1MHB4O1xuICAgICAgcGFkZGluZy1ib3R0b206IDUwcHg7IH0gfVxuICAucXVvdGUgLmNtcy1vdXRwdXQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXgtd2lkdGg6IDYxNXB4O1xuICAgIG1hcmdpbjogNTBweCBhdXRvIDIwcHg7XG4gICAgcGFkZGluZzogMCAxMHB4O1xuICAgIGZvbnQtc3R5bGU6IGl0YWxpYzsgfVxuICAgIC5xdW90ZSAuY21zLW91dHB1dDo6YmVmb3JlIHtcbiAgICAgIGZvbnQtc2l6ZTogOTBweDtcbiAgICAgIGZvbnQtc2l6ZTogOXJlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAwLjc3Nzc4ZW07XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICBsZWZ0OiAtMzBweDtcbiAgICAgIGZvbnQtZmFtaWx5OiBBcmlhbCwgSGVsdmV0aWNhIE5ldWUsIEhlbHZldGljYSwgc2Fucy1zZXJpZjtcbiAgICAgIGNvbnRlbnQ6ICfigJwnOyB9XG4gICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDU5OXB4KSB7XG4gICAgICAgIC5xdW90ZSAuY21zLW91dHB1dDo6YmVmb3JlIHtcbiAgICAgICAgICBsZWZ0OiAtMjBweDsgfSB9XG4gICAgLnF1b3RlIC5jbXMtb3V0cHV0OjphZnRlciB7XG4gICAgICBmb250LXNpemU6IDkwcHg7XG4gICAgICBmb250LXNpemU6IDlyZW07XG4gICAgICBsaW5lLWhlaWdodDogMC43Nzc3OGVtO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICBib3R0b206IC00MHB4O1xuICAgICAgZm9udC1mYW1pbHk6IEFyaWFsLCBIZWx2ZXRpY2EgTmV1ZSwgSGVsdmV0aWNhLCBzYW5zLXNlcmlmO1xuICAgICAgY29udGVudDogJ+KAnSc7IH1cbiAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNTk5cHgpIHtcbiAgICAgICAgLnF1b3RlIC5jbXMtb3V0cHV0OjphZnRlciB7XG4gICAgICAgICAgcmlnaHQ6IDA7IH0gfVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgVVNQJ3NcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIFVTUCdzLlxuICovXG4udXNwcyB7XG4gIHBhZGRpbmctdG9wOiAxMDBweDtcbiAgcGFkZGluZy1ib3R0b206IDEwMHB4O1xuICBiYWNrZ3JvdW5kOiAjZjBmNmZmOyB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogODk5cHgpIHtcbiAgICAudXNwcyB7XG4gICAgICBwYWRkaW5nLXRvcDogNTBweDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiA1MHB4OyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MDBweCkgYW5kIChtYXgtd2lkdGg6IDExOTlweCkge1xuICAgIC51c3BzIC53cmFwcGVyIHtcbiAgICAgIHBhZGRpbmc6IDA7IH0gfVxuICAudXNwcy5iYWNrZ3JvdW5kLWxpZ2h0IHtcbiAgICBiYWNrZ3JvdW5kOiAjZjBmNmZmO1xuICAgIGNvbG9yOiAjMzE1MTgxOyB9XG4gIC51c3BzLmJhY2tncm91bmQtZGFyayB7XG4gICAgYmFja2dyb3VuZDogIzMxNTE4MTtcbiAgICBjb2xvcjogI2YwZjZmZjsgfVxuICAgIC51c3BzLmJhY2tncm91bmQtZGFyayAudXNwc19fdGl0bGUge1xuICAgICAgY29sb3I6ICNmMGY2ZmY7IH1cbiAgICAgIC51c3BzLmJhY2tncm91bmQtZGFyayAudXNwc19fdGl0bGU6OmJlZm9yZSB7XG4gICAgICAgIGJhY2tncm91bmQ6ICNmMGY2ZmY7IH1cbiAgLnVzcHMgLm93bC1kb3RzIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi10b3A6IDEwcHg7IH1cbiAgLnVzcHMgLm93bC1kb3Qge1xuICAgIHdpZHRoOiAxMXB4O1xuICAgIGhlaWdodDogMTFweDtcbiAgICBtYXJnaW46IDAgMnB4O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNiMGIwYjAgIWltcG9ydGFudDtcbiAgICBib3JkZXItcmFkaXVzOiAxMDAlOyB9XG4gICAgLnVzcHMgLm93bC1kb3QuYWN0aXZlIHtcbiAgICAgIGJhY2tncm91bmQ6ICNiMGIwYjA7IH1cblxuLyoqXG4gKiBNYWluIHRpdGxlLlxuICovXG4udXNwc19fdGl0bGUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiBhdXRvO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cblxuLyoqXG4gKiBMb29wLlxuICovXG4udXNwc19fbG9vcCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luLXRvcDogNTBweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDU5OXB4KSB7XG4gICAgLnVzcHNfX2xvb3Age1xuICAgICAgbWFyZ2luLXRvcDogMzBweDsgfSB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjAwcHgpIGFuZCAobWF4LXdpZHRoOiAxMTk5cHgpIHtcbiAgICAudXNwc19fbG9vcCB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDgwcHg7IH0gfVxuXG4vKipcbiAqIFNpbmdsZSBVU1AuXG4gKi9cbi51c3Age1xuICB3aWR0aDogY2FsYygxMDAlIC8gMyk7XG4gIG1heC13aWR0aDogMzIwcHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDU5OXB4KSB7XG4gICAgLnVzcCB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIG1heC13aWR0aDogMTAwJTsgfSB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjAwcHgpIGFuZCAobWF4LXdpZHRoOiAxMTk5cHgpIHtcbiAgICAudXNwIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgbWFyZ2luLXJpZ2h0OiA0MHB4O1xuICAgICAgbWFyZ2luLWxlZnQ6IDUwcHg7IH0gfVxuXG4vKipcbiAqIFNpbmdsZSBVU1AgdGl0bGUuXG4gKi9cbi51c3BfX3RpdGxlIHtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDsgfVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4gICBDb2xvclxyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXHJcbiAqIENvbG9yIHV0aWxpdHkgY2xhc3Nlcy5cclxuICovXG4vKipcclxuICAgICAgICogYGNvbG9yYCBibGFjay0xMDAgY29sb3IgdXRpbGl0eS5cclxuICAgICAgICovXG4uY29sb3ItYmxhY2stMTAwIHtcbiAgY29sb3I6IGJsYWNrOyB9XG5cbi8qKlxyXG4gICAgICAgKiBgYmFja2dyb3VuZC1jb2xvcmAgYmxhY2stMTAwIGNvbG9yIHV0aWxpdHkuXHJcbiAgICAgICAqL1xuLmJhY2tncm91bmQtY29sb3ItYmxhY2stMTAwIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogYmxhY2s7IH1cblxuLyoqXHJcbiAgICAgICAqIGBjb2xvcmAgIzNkM2QzZC0yMDAgY29sb3IgdXRpbGl0eS5cclxuICAgICAgICovXG4uY29sb3ItYmxhY2stMjAwIHtcbiAgY29sb3I6ICMzZDNkM2Q7IH1cblxuLyoqXHJcbiAgICAgICAqIGBiYWNrZ3JvdW5kLWNvbG9yYCAjM2QzZDNkLTIwMCBjb2xvciB1dGlsaXR5LlxyXG4gICAgICAgKi9cbi5iYWNrZ3JvdW5kLWNvbG9yLWJsYWNrLTIwMCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzZDNkM2Q7IH1cblxuLyoqXHJcbiAgICAgICAqIGBjb2xvcmAgd2hpdGUtMTAwIGNvbG9yIHV0aWxpdHkuXHJcbiAgICAgICAqL1xuLmNvbG9yLXdoaXRlLTEwMCB7XG4gIGNvbG9yOiB3aGl0ZTsgfVxuXG4vKipcclxuICAgICAgICogYGJhY2tncm91bmQtY29sb3JgIHdoaXRlLTEwMCBjb2xvciB1dGlsaXR5LlxyXG4gICAgICAgKi9cbi5iYWNrZ3JvdW5kLWNvbG9yLXdoaXRlLTEwMCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHdoaXRlOyB9XG5cbi8qKlxyXG4gICAgICAgKiBgY29sb3JgICMzMTUxODEtMTAwIGNvbG9yIHV0aWxpdHkuXHJcbiAgICAgICAqL1xuLmNvbG9yLWJsdWUtMTAwIHtcbiAgY29sb3I6ICMzMTUxODE7IH1cblxuLyoqXHJcbiAgICAgICAqIGBiYWNrZ3JvdW5kLWNvbG9yYCAjMzE1MTgxLTEwMCBjb2xvciB1dGlsaXR5LlxyXG4gICAgICAgKi9cbi5iYWNrZ3JvdW5kLWNvbG9yLWJsdWUtMTAwIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzMxNTE4MTsgfVxuXG4vKipcclxuICAgICAgICogYGNvbG9yYCAjZjBmNmZmLTIwMCBjb2xvciB1dGlsaXR5LlxyXG4gICAgICAgKi9cbi5jb2xvci1ibHVlLTIwMCB7XG4gIGNvbG9yOiAjZjBmNmZmOyB9XG5cbi8qKlxyXG4gICAgICAgKiBgYmFja2dyb3VuZC1jb2xvcmAgI2YwZjZmZi0yMDAgY29sb3IgdXRpbGl0eS5cclxuICAgICAgICovXG4uYmFja2dyb3VuZC1jb2xvci1ibHVlLTIwMCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmMGY2ZmY7IH1cblxuLyoqXHJcbiAgICAgICAqIGBjb2xvcmAgI2IwYjBiMC0yMDAgY29sb3IgdXRpbGl0eS5cclxuICAgICAgICovXG4uY29sb3ItZ3JleS0yMDAge1xuICBjb2xvcjogI2IwYjBiMDsgfVxuXG4vKipcclxuICAgICAgICogYGJhY2tncm91bmQtY29sb3JgICNiMGIwYjAtMjAwIGNvbG9yIHV0aWxpdHkuXHJcbiAgICAgICAqL1xuLmJhY2tncm91bmQtY29sb3ItZ3JleS0yMDAge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYjBiMGIwOyB9XG5cbi8qKlxyXG4gICAgICAgKiBgY29sb3JgICNmN2Y3ZjctMzAwIGNvbG9yIHV0aWxpdHkuXHJcbiAgICAgICAqL1xuLmNvbG9yLWdyZXktMzAwIHtcbiAgY29sb3I6ICNmN2Y3Zjc7IH1cblxuLyoqXHJcbiAgICAgICAqIGBiYWNrZ3JvdW5kLWNvbG9yYCAjZjdmN2Y3LTMwMCBjb2xvciB1dGlsaXR5LlxyXG4gICAgICAgKi9cbi5iYWNrZ3JvdW5kLWNvbG9yLWdyZXktMzAwIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y3ZjdmNzsgfVxuXG4vKipcclxuICAgICAgICogYGNvbG9yYCAjZmY1NTAwLTIwMCBjb2xvciB1dGlsaXR5LlxyXG4gICAgICAgKi9cbi5jb2xvci1vcmFuZ2UtMjAwIHtcbiAgY29sb3I6ICNmZjU1MDA7IH1cblxuLyoqXHJcbiAgICAgICAqIGBiYWNrZ3JvdW5kLWNvbG9yYCAjZmY1NTAwLTIwMCBjb2xvciB1dGlsaXR5LlxyXG4gICAgICAgKi9cbi5iYWNrZ3JvdW5kLWNvbG9yLW9yYW5nZS0yMDAge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmY1NTAwOyB9XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbiAgIE9iamVjdCBGaXRcclxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxyXG4gKiBPYmplY3QgZml0LlxyXG4gKlxyXG4gKiAxLiBGb250IGZhbWlseSBwb2x5ZmlsbCB3aXRoIChodHRwczovL2dpdGh1Yi5jb20vYmZyZWQtaXQvb2JqZWN0LWZpdC1pbWFnZXMpLlxyXG4gKi9cbi8qKlxyXG4gICAqIGBvYmplY3QtZml0YCBmaWxsIHV0aWxpdHkgY2xhc3MuXHJcbiAgICovXG4uZmlsbCB7XG4gIGZvbnQtZmFtaWx5OiBcIm9iamVjdC1maXQ6IGZpbGw7XCI7XG4gIC8qIDEgKi9cbiAgb2JqZWN0LWZpdDogZmlsbDsgfVxuXG4vKipcclxuICAgKiBgb2JqZWN0LWZpdGAgY29udGFpbiB1dGlsaXR5IGNsYXNzLlxyXG4gICAqL1xuLmNvbnRhaW4ge1xuICBmb250LWZhbWlseTogXCJvYmplY3QtZml0OiBjb250YWluO1wiO1xuICAvKiAxICovXG4gIG9iamVjdC1maXQ6IGNvbnRhaW47IH1cblxuLyoqXHJcbiAgICogYG9iamVjdC1maXRgIGNvdmVyIHV0aWxpdHkgY2xhc3MuXHJcbiAgICovXG4uY292ZXIge1xuICBmb250LWZhbWlseTogXCJvYmplY3QtZml0OiBjb3ZlcjtcIjtcbiAgLyogMSAqL1xuICBvYmplY3QtZml0OiBjb3ZlcjsgfVxuXG4vKipcclxuICAgKiBgb2JqZWN0LWZpdGAgbm9uZSB1dGlsaXR5IGNsYXNzLlxyXG4gICAqL1xuLm5vbmUge1xuICBmb250LWZhbWlseTogXCJvYmplY3QtZml0OiBub25lO1wiO1xuICAvKiAxICovXG4gIG9iamVjdC1maXQ6IG5vbmU7IH1cblxuLyoqXHJcbiAgICogYG9iamVjdC1maXRgIHNjYWxlLWRvd24gdXRpbGl0eSBjbGFzcy5cclxuICAgKi9cbi5zY2FsZS1kb3duIHtcbiAgZm9udC1mYW1pbHk6IFwib2JqZWN0LWZpdDogc2NhbGUtZG93bjtcIjtcbiAgLyogMSAqL1xuICBvYmplY3QtZml0OiBzY2FsZS1kb3duOyB9XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbiAgIFBvc2l0aW9uXHJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcclxuICogUG9zaXRpb24gdXRpbGl0eSBjbGFzcy5cclxuICovXG4uc3RhdGljIHtcbiAgcG9zaXRpb246IHN0YXRpYzsgfVxuXG4ucmVsYXRpdmUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cblxuLmFic29sdXRlIHtcbiAgcG9zaXRpb246IGFic29sdXRlOyB9XG5cbi5maXhlZCB7XG4gIHBvc2l0aW9uOiBmaXhlZDsgfVxuXG4uc3RpY2t5IHtcbiAgcG9zaXRpb246IHN0aWNreTsgfVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4gICBUZXh0XHJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcclxuICogRm9udCBmYW1pbHkgdXRpbGl0eSBjbGFzc2VzLlxyXG4gKi9cbi50ZXh0LXhzLWRlZmF1bHQge1xuICBmb250LWZhbWlseTogXCJBcmlhbFwiOyB9XG5cbi50ZXh0LXNtLWRlZmF1bHQge1xuICBmb250LWZhbWlseTogXCJBcmlhbFwiOyB9XG5cbi50ZXh0LW1kLWRlZmF1bHQge1xuICBmb250LWZhbWlseTogXCJBcmlhbFwiOyB9XG5cbi50ZXh0LWxnLWRlZmF1bHQge1xuICBmb250LWZhbWlseTogXCJBcmlhbFwiOyB9XG5cbi50ZXh0LXhsLWRlZmF1bHQge1xuICBmb250LWZhbWlseTogXCJBcmlhbFwiOyB9XG5cbi8qKlxyXG4gKiBUZXh0IHNpemUgdXRpbGl0eSBjbGFzc2VzLlxyXG4gKi9cbi50ZXh0LXhzLWgxIHtcbiAgZm9udC1zaXplOiA2MHB4O1xuICBmb250LXNpemU6IDZyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjA4MzMzZW07IH1cblxuLnRleHQteHMtaDIge1xuICBmb250LXNpemU6IDUwcHg7XG4gIGZvbnQtc2l6ZTogNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuM2VtOyB9XG5cbi50ZXh0LXhzLWgzIHtcbiAgZm9udC1zaXplOiAzMHB4O1xuICBmb250LXNpemU6IDNyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjEzMzMzZW07IH1cblxuLnRleHQteHMtaDQge1xuICBmb250LXNpemU6IDIycHg7XG4gIGZvbnQtc2l6ZTogMi4ycmVtO1xuICBsaW5lLWhlaWdodDogMS40NTQ1NWVtOyB9XG5cbi50ZXh0LXhzLWg1IHtcbiAgZm9udC1zaXplOiAyMHB4O1xuICBmb250LXNpemU6IDJyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjZlbTsgfVxuXG4udGV4dC14cy1oNiB7XG4gIGZvbnQtc2l6ZTogMThweDtcbiAgZm9udC1zaXplOiAxLjhyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjc3Nzc4ZW07IH1cblxuLnRleHQteHMtcCB7XG4gIGZvbnQtc2l6ZTogMTVweDtcbiAgZm9udC1zaXplOiAxLjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAyZW07IH1cblxuLnRleHQtc20taDEge1xuICBmb250LXNpemU6IDYwcHg7XG4gIGZvbnQtc2l6ZTogNnJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMDgzMzNlbTsgfVxuXG4udGV4dC1zbS1oMiB7XG4gIGZvbnQtc2l6ZTogNTBweDtcbiAgZm9udC1zaXplOiA1cmVtO1xuICBsaW5lLWhlaWdodDogMS4zZW07IH1cblxuLnRleHQtc20taDMge1xuICBmb250LXNpemU6IDMwcHg7XG4gIGZvbnQtc2l6ZTogM3JlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMTMzMzNlbTsgfVxuXG4udGV4dC1zbS1oNCB7XG4gIGZvbnQtc2l6ZTogMjJweDtcbiAgZm9udC1zaXplOiAyLjJyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjQ1NDU1ZW07IH1cblxuLnRleHQtc20taDUge1xuICBmb250LXNpemU6IDIwcHg7XG4gIGZvbnQtc2l6ZTogMnJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNmVtOyB9XG5cbi50ZXh0LXNtLWg2IHtcbiAgZm9udC1zaXplOiAxOHB4O1xuICBmb250LXNpemU6IDEuOHJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNzc3NzhlbTsgfVxuXG4udGV4dC1zbS1wIHtcbiAgZm9udC1zaXplOiAxNXB4O1xuICBmb250LXNpemU6IDEuNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDJlbTsgfVxuXG4udGV4dC1tZC1oMSB7XG4gIGZvbnQtc2l6ZTogNjBweDtcbiAgZm9udC1zaXplOiA2cmVtO1xuICBsaW5lLWhlaWdodDogMS4wODMzM2VtOyB9XG5cbi50ZXh0LW1kLWgyIHtcbiAgZm9udC1zaXplOiA1MHB4O1xuICBmb250LXNpemU6IDVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjNlbTsgfVxuXG4udGV4dC1tZC1oMyB7XG4gIGZvbnQtc2l6ZTogMzBweDtcbiAgZm9udC1zaXplOiAzcmVtO1xuICBsaW5lLWhlaWdodDogMS4xMzMzM2VtOyB9XG5cbi50ZXh0LW1kLWg0IHtcbiAgZm9udC1zaXplOiAyMnB4O1xuICBmb250LXNpemU6IDIuMnJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNDU0NTVlbTsgfVxuXG4udGV4dC1tZC1oNSB7XG4gIGZvbnQtc2l6ZTogMjBweDtcbiAgZm9udC1zaXplOiAycmVtO1xuICBsaW5lLWhlaWdodDogMS42ZW07IH1cblxuLnRleHQtbWQtaDYge1xuICBmb250LXNpemU6IDE4cHg7XG4gIGZvbnQtc2l6ZTogMS44cmVtO1xuICBsaW5lLWhlaWdodDogMS43Nzc3OGVtOyB9XG5cbi50ZXh0LW1kLXAge1xuICBmb250LXNpemU6IDE1cHg7XG4gIGZvbnQtc2l6ZTogMS41cmVtO1xuICBsaW5lLWhlaWdodDogMmVtOyB9XG5cbi50ZXh0LWxnLWgxIHtcbiAgZm9udC1zaXplOiA2MHB4O1xuICBmb250LXNpemU6IDZyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjA4MzMzZW07IH1cblxuLnRleHQtbGctaDIge1xuICBmb250LXNpemU6IDUwcHg7XG4gIGZvbnQtc2l6ZTogNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuM2VtOyB9XG5cbi50ZXh0LWxnLWgzIHtcbiAgZm9udC1zaXplOiAzMHB4O1xuICBmb250LXNpemU6IDNyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjEzMzMzZW07IH1cblxuLnRleHQtbGctaDQge1xuICBmb250LXNpemU6IDIycHg7XG4gIGZvbnQtc2l6ZTogMi4ycmVtO1xuICBsaW5lLWhlaWdodDogMS40NTQ1NWVtOyB9XG5cbi50ZXh0LWxnLWg1IHtcbiAgZm9udC1zaXplOiAyMHB4O1xuICBmb250LXNpemU6IDJyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjZlbTsgfVxuXG4udGV4dC1sZy1oNiB7XG4gIGZvbnQtc2l6ZTogMThweDtcbiAgZm9udC1zaXplOiAxLjhyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjc3Nzc4ZW07IH1cblxuLnRleHQtbGctcCB7XG4gIGZvbnQtc2l6ZTogMTVweDtcbiAgZm9udC1zaXplOiAxLjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAyZW07IH1cblxuLnRleHQteGwtaDEge1xuICBmb250LXNpemU6IDYwcHg7XG4gIGZvbnQtc2l6ZTogNnJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMDgzMzNlbTsgfVxuXG4udGV4dC14bC1oMiB7XG4gIGZvbnQtc2l6ZTogNTBweDtcbiAgZm9udC1zaXplOiA1cmVtO1xuICBsaW5lLWhlaWdodDogMS4zZW07IH1cblxuLnRleHQteGwtaDMge1xuICBmb250LXNpemU6IDMwcHg7XG4gIGZvbnQtc2l6ZTogM3JlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMTMzMzNlbTsgfVxuXG4udGV4dC14bC1oNCB7XG4gIGZvbnQtc2l6ZTogMjJweDtcbiAgZm9udC1zaXplOiAyLjJyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjQ1NDU1ZW07IH1cblxuLnRleHQteGwtaDUge1xuICBmb250LXNpemU6IDIwcHg7XG4gIGZvbnQtc2l6ZTogMnJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNmVtOyB9XG5cbi50ZXh0LXhsLWg2IHtcbiAgZm9udC1zaXplOiAxOHB4O1xuICBmb250LXNpemU6IDEuOHJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNzc3NzhlbTsgfVxuXG4udGV4dC14bC1wIHtcbiAgZm9udC1zaXplOiAxNXB4O1xuICBmb250LXNpemU6IDEuNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDJlbTsgfVxuXG4vKipcclxuICogVGV4dCBhbGlnbm1lbnQgdXRpbGl0eSBjbGFzc2VzLlxyXG4gKi9cbi50ZXh0LXhzLWxlZnQge1xuICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG5cbi50ZXh0LXhzLXJpZ2h0IHtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7IH1cblxuLnRleHQteHMtY2VudGVyIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG5cbi50ZXh0LXNtLWxlZnQge1xuICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG5cbi50ZXh0LXNtLXJpZ2h0IHtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7IH1cblxuLnRleHQtc20tY2VudGVyIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG5cbi50ZXh0LW1kLWxlZnQge1xuICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG5cbi50ZXh0LW1kLXJpZ2h0IHtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7IH1cblxuLnRleHQtbWQtY2VudGVyIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG5cbi50ZXh0LWxnLWxlZnQge1xuICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG5cbi50ZXh0LWxnLXJpZ2h0IHtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7IH1cblxuLnRleHQtbGctY2VudGVyIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG5cbi50ZXh0LXhsLWxlZnQge1xuICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG5cbi50ZXh0LXhsLXJpZ2h0IHtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7IH1cblxuLnRleHQteGwtY2VudGVyIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG5cbi8qKlxyXG4gKiBGb250IHdlaWdodCB1dGlsaXR5IGNsYXNzZXMuXHJcbiAqXHJcbiAqIDEuIE11bHRpcGx5IGxvb3BlZCBpbnRlZ2VyIGJ5IDEwMCBmb3IgY29ycmVjdCBmb250IHdlaWdodCB2YWx1ZS5cclxuICovXG4udGV4dC14cy0xMDAge1xuICBmb250LXdlaWdodDogMTAwOyB9XG5cbi50ZXh0LXhzLTIwMCB7XG4gIGZvbnQtd2VpZ2h0OiAyMDA7IH1cblxuLnRleHQteHMtMzAwIHtcbiAgZm9udC13ZWlnaHQ6IDMwMDsgfVxuXG4udGV4dC14cy00MDAge1xuICBmb250LXdlaWdodDogNDAwOyB9XG5cbi50ZXh0LXhzLTUwMCB7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7IH1cblxuLnRleHQteHMtNjAwIHtcbiAgZm9udC13ZWlnaHQ6IDYwMDsgfVxuXG4udGV4dC14cy03MDAge1xuICBmb250LXdlaWdodDogNzAwOyB9XG5cbi50ZXh0LXhzLTgwMCB7XG4gIGZvbnQtd2VpZ2h0OiA4MDA7IH1cblxuLnRleHQteHMtOTAwIHtcbiAgZm9udC13ZWlnaHQ6IDkwMDsgfVxuXG4udGV4dC1zbS0xMDAge1xuICBmb250LXdlaWdodDogMTAwOyB9XG5cbi50ZXh0LXNtLTIwMCB7XG4gIGZvbnQtd2VpZ2h0OiAyMDA7IH1cblxuLnRleHQtc20tMzAwIHtcbiAgZm9udC13ZWlnaHQ6IDMwMDsgfVxuXG4udGV4dC1zbS00MDAge1xuICBmb250LXdlaWdodDogNDAwOyB9XG5cbi50ZXh0LXNtLTUwMCB7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7IH1cblxuLnRleHQtc20tNjAwIHtcbiAgZm9udC13ZWlnaHQ6IDYwMDsgfVxuXG4udGV4dC1zbS03MDAge1xuICBmb250LXdlaWdodDogNzAwOyB9XG5cbi50ZXh0LXNtLTgwMCB7XG4gIGZvbnQtd2VpZ2h0OiA4MDA7IH1cblxuLnRleHQtc20tOTAwIHtcbiAgZm9udC13ZWlnaHQ6IDkwMDsgfVxuXG4udGV4dC1tZC0xMDAge1xuICBmb250LXdlaWdodDogMTAwOyB9XG5cbi50ZXh0LW1kLTIwMCB7XG4gIGZvbnQtd2VpZ2h0OiAyMDA7IH1cblxuLnRleHQtbWQtMzAwIHtcbiAgZm9udC13ZWlnaHQ6IDMwMDsgfVxuXG4udGV4dC1tZC00MDAge1xuICBmb250LXdlaWdodDogNDAwOyB9XG5cbi50ZXh0LW1kLTUwMCB7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7IH1cblxuLnRleHQtbWQtNjAwIHtcbiAgZm9udC13ZWlnaHQ6IDYwMDsgfVxuXG4udGV4dC1tZC03MDAge1xuICBmb250LXdlaWdodDogNzAwOyB9XG5cbi50ZXh0LW1kLTgwMCB7XG4gIGZvbnQtd2VpZ2h0OiA4MDA7IH1cblxuLnRleHQtbWQtOTAwIHtcbiAgZm9udC13ZWlnaHQ6IDkwMDsgfVxuXG4udGV4dC1sZy0xMDAge1xuICBmb250LXdlaWdodDogMTAwOyB9XG5cbi50ZXh0LWxnLTIwMCB7XG4gIGZvbnQtd2VpZ2h0OiAyMDA7IH1cblxuLnRleHQtbGctMzAwIHtcbiAgZm9udC13ZWlnaHQ6IDMwMDsgfVxuXG4udGV4dC1sZy00MDAge1xuICBmb250LXdlaWdodDogNDAwOyB9XG5cbi50ZXh0LWxnLTUwMCB7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7IH1cblxuLnRleHQtbGctNjAwIHtcbiAgZm9udC13ZWlnaHQ6IDYwMDsgfVxuXG4udGV4dC1sZy03MDAge1xuICBmb250LXdlaWdodDogNzAwOyB9XG5cbi50ZXh0LWxnLTgwMCB7XG4gIGZvbnQtd2VpZ2h0OiA4MDA7IH1cblxuLnRleHQtbGctOTAwIHtcbiAgZm9udC13ZWlnaHQ6IDkwMDsgfVxuXG4udGV4dC14bC0xMDAge1xuICBmb250LXdlaWdodDogMTAwOyB9XG5cbi50ZXh0LXhsLTIwMCB7XG4gIGZvbnQtd2VpZ2h0OiAyMDA7IH1cblxuLnRleHQteGwtMzAwIHtcbiAgZm9udC13ZWlnaHQ6IDMwMDsgfVxuXG4udGV4dC14bC00MDAge1xuICBmb250LXdlaWdodDogNDAwOyB9XG5cbi50ZXh0LXhsLTUwMCB7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7IH1cblxuLnRleHQteGwtNjAwIHtcbiAgZm9udC13ZWlnaHQ6IDYwMDsgfVxuXG4udGV4dC14bC03MDAge1xuICBmb250LXdlaWdodDogNzAwOyB9XG5cbi50ZXh0LXhsLTgwMCB7XG4gIGZvbnQtd2VpZ2h0OiA4MDA7IH1cblxuLnRleHQteGwtOTAwIHtcbiAgZm9udC13ZWlnaHQ6IDkwMDsgfVxuXG4vKipcclxuICogVGV4dCB0cmFuc2Zvcm0gdWl0bGl0eSBjbGFzc2VzLlxyXG4gKi9cbi50ZXh0LXhzLWNhcGl0YWxpemUge1xuICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTsgfVxuXG4udGV4dC14cy11cHBlcmNhc2Uge1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyB9XG5cbi50ZXh0LXhzLWxvd2VyY2FzZSB7XG4gIHRleHQtdHJhbnNmb3JtOiBsb3dlcmNhc2U7IH1cblxuLnRleHQteHMtbm9uZSB7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lOyB9XG5cbi50ZXh0LXhzLWZ1bGwtd2lkdGgge1xuICB0ZXh0LXRyYW5zZm9ybTogZnVsbC13aWR0aDsgfVxuXG4udGV4dC1zbS1jYXBpdGFsaXplIHtcbiAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7IH1cblxuLnRleHQtc20tdXBwZXJjYXNlIHtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxuXG4udGV4dC1zbS1sb3dlcmNhc2Uge1xuICB0ZXh0LXRyYW5zZm9ybTogbG93ZXJjYXNlOyB9XG5cbi50ZXh0LXNtLW5vbmUge1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTsgfVxuXG4udGV4dC1zbS1mdWxsLXdpZHRoIHtcbiAgdGV4dC10cmFuc2Zvcm06IGZ1bGwtd2lkdGg7IH1cblxuLnRleHQtbWQtY2FwaXRhbGl6ZSB7XG4gIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplOyB9XG5cbi50ZXh0LW1kLXVwcGVyY2FzZSB7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cblxuLnRleHQtbWQtbG93ZXJjYXNlIHtcbiAgdGV4dC10cmFuc2Zvcm06IGxvd2VyY2FzZTsgfVxuXG4udGV4dC1tZC1ub25lIHtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7IH1cblxuLnRleHQtbWQtZnVsbC13aWR0aCB7XG4gIHRleHQtdHJhbnNmb3JtOiBmdWxsLXdpZHRoOyB9XG5cbi50ZXh0LWxnLWNhcGl0YWxpemUge1xuICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTsgfVxuXG4udGV4dC1sZy11cHBlcmNhc2Uge1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyB9XG5cbi50ZXh0LWxnLWxvd2VyY2FzZSB7XG4gIHRleHQtdHJhbnNmb3JtOiBsb3dlcmNhc2U7IH1cblxuLnRleHQtbGctbm9uZSB7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lOyB9XG5cbi50ZXh0LWxnLWZ1bGwtd2lkdGgge1xuICB0ZXh0LXRyYW5zZm9ybTogZnVsbC13aWR0aDsgfVxuXG4udGV4dC14bC1jYXBpdGFsaXplIHtcbiAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7IH1cblxuLnRleHQteGwtdXBwZXJjYXNlIHtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxuXG4udGV4dC14bC1sb3dlcmNhc2Uge1xuICB0ZXh0LXRyYW5zZm9ybTogbG93ZXJjYXNlOyB9XG5cbi50ZXh0LXhsLW5vbmUge1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTsgfVxuXG4udGV4dC14bC1mdWxsLXdpZHRoIHtcbiAgdGV4dC10cmFuc2Zvcm06IGZ1bGwtd2lkdGg7IH1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuICAgVmVydGljYWwgUmh5dGhtXHJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4udnItMCB7XG4gIG1hcmdpbi1ib3R0b206IDBweDsgfVxuXG4udnItOCB7XG4gIG1hcmdpbi1ib3R0b206IDhweDsgfVxuXG4udnItMTYge1xuICBtYXJnaW4tYm90dG9tOiAxNnB4OyB9XG5cbi52ci0yNCB7XG4gIG1hcmdpbi1ib3R0b206IDI0cHg7IH1cblxuLnZyLTMyIHtcbiAgbWFyZ2luLWJvdHRvbTogMzJweDsgfVxuXG4udnItNDAge1xuICBtYXJnaW4tYm90dG9tOiA0MHB4OyB9XG5cbi52ci00OCB7XG4gIG1hcmdpbi1ib3R0b206IDQ4cHg7IH1cblxuLnZyLTU2IHtcbiAgbWFyZ2luLWJvdHRvbTogNTZweDsgfVxuXG4udnItNjQge1xuICBtYXJnaW4tYm90dG9tOiA2NHB4OyB9XG5cbi52ci03MiB7XG4gIG1hcmdpbi1ib3R0b206IDcycHg7IH1cblxuLnZyLTgwIHtcbiAgbWFyZ2luLWJvdHRvbTogODBweDsgfVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4gICBaLWluZGV4XHJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcclxuICogVXRpbGl0eSBjbGFzc2VzIGZvciBtYW5pcHVsYXRpbmcgc3RhY2tpbmcgb3JkZXIgaW4gSFRNTC5cclxuICovXG4uei1pbmRleC0wIHtcbiAgei1pbmRleDogMDsgfVxuXG4uei1pbmRleC0xIHtcbiAgei1pbmRleDogMTA7IH1cblxuLnotaW5kZXgtMiB7XG4gIHotaW5kZXg6IDIwOyB9XG5cbi56LWluZGV4LTMge1xuICB6LWluZGV4OiAzMDsgfVxuXG4uei1pbmRleC00IHtcbiAgei1pbmRleDogNDA7IH1cblxuLnotaW5kZXgtNSB7XG4gIHotaW5kZXg6IDUwOyB9XG5cbi56LWluZGV4LTYge1xuICB6LWluZGV4OiA2MDsgfVxuXG4uei1pbmRleC03IHtcbiAgei1pbmRleDogNzA7IH1cblxuLnotaW5kZXgtOCB7XG4gIHotaW5kZXg6IDgwOyB9XG5cbi56LWluZGV4LTkge1xuICB6LWluZGV4OiA5MDsgfVxuXG4uei1pbmRleC0xMCB7XG4gIHotaW5kZXg6IDEwMDsgfVxuIiwiLyohIG5vcm1hbGl6ZS5jc3MgdjguMC4xIHwgTUlUIExpY2Vuc2UgfCBnaXRodWIuY29tL25lY29sYXMvbm9ybWFsaXplLmNzcyAqL1xuXG4vKiBEb2N1bWVudFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBsaW5lIGhlaWdodCBpbiBhbGwgYnJvd3NlcnMuXG4gKiAyLiBQcmV2ZW50IGFkanVzdG1lbnRzIG9mIGZvbnQgc2l6ZSBhZnRlciBvcmllbnRhdGlvbiBjaGFuZ2VzIGluIGlPUy5cbiAqL1xuXG5odG1sIHtcbiAgbGluZS1oZWlnaHQ6IDEuMTU7IC8qIDEgKi9cbiAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvKiAyICovXG59XG5cbi8qIFNlY3Rpb25zXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIFJlbW92ZSB0aGUgbWFyZ2luIGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5ib2R5IHtcbiAgbWFyZ2luOiAwO1xufVxuXG4vKipcbiAqIFJlbmRlciB0aGUgYG1haW5gIGVsZW1lbnQgY29uc2lzdGVudGx5IGluIElFLlxuICovXG5cbm1haW4ge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLyoqXG4gKiBDb3JyZWN0IHRoZSBmb250IHNpemUgYW5kIG1hcmdpbiBvbiBgaDFgIGVsZW1lbnRzIHdpdGhpbiBgc2VjdGlvbmAgYW5kXG4gKiBgYXJ0aWNsZWAgY29udGV4dHMgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgU2FmYXJpLlxuICovXG5cbmgxIHtcbiAgZm9udC1zaXplOiAyZW07XG4gIG1hcmdpbjogMC42N2VtIDA7XG59XG5cbi8qIEdyb3VwaW5nIGNvbnRlbnRcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gRmlyZWZveC5cbiAqIDIuIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UgYW5kIElFLlxuICovXG5cbmhyIHtcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7IC8qIDEgKi9cbiAgaGVpZ2h0OiAwOyAvKiAxICovXG4gIG92ZXJmbG93OiB2aXNpYmxlOyAvKiAyICovXG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgaW5oZXJpdGFuY2UgYW5kIHNjYWxpbmcgb2YgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAqIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5wcmUge1xuICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7IC8qIDEgKi9cbiAgZm9udC1zaXplOiAxZW07IC8qIDIgKi9cbn1cblxuLyogVGV4dC1sZXZlbCBzZW1hbnRpY3NcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogUmVtb3ZlIHRoZSBncmF5IGJhY2tncm91bmQgb24gYWN0aXZlIGxpbmtzIGluIElFIDEwLlxuICovXG5cbmEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuLyoqXG4gKiAxLiBSZW1vdmUgdGhlIGJvdHRvbSBib3JkZXIgaW4gQ2hyb21lIDU3LVxuICogMi4gQWRkIHRoZSBjb3JyZWN0IHRleHQgZGVjb3JhdGlvbiBpbiBDaHJvbWUsIEVkZ2UsIElFLCBPcGVyYSwgYW5kIFNhZmFyaS5cbiAqL1xuXG5hYmJyW3RpdGxlXSB7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7IC8qIDEgKi9cbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IC8qIDIgKi9cbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgZG90dGVkOyAvKiAyICovXG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGZvbnQgd2VpZ2h0IGluIENocm9tZSwgRWRnZSwgYW5kIFNhZmFyaS5cbiAqL1xuXG5iLFxuc3Ryb25nIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGRlcjtcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICogMi4gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbmNvZGUsXG5rYmQsXG5zYW1wIHtcbiAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlOyAvKiAxICovXG4gIGZvbnQtc2l6ZTogMWVtOyAvKiAyICovXG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxuc21hbGwge1xuICBmb250LXNpemU6IDgwJTtcbn1cblxuLyoqXG4gKiBQcmV2ZW50IGBzdWJgIGFuZCBgc3VwYCBlbGVtZW50cyBmcm9tIGFmZmVjdGluZyB0aGUgbGluZSBoZWlnaHQgaW5cbiAqIGFsbCBicm93c2Vycy5cbiAqL1xuXG5zdWIsXG5zdXAge1xuICBmb250LXNpemU6IDc1JTtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG5zdWIge1xuICBib3R0b206IC0wLjI1ZW07XG59XG5cbnN1cCB7XG4gIHRvcDogLTAuNWVtO1xufVxuXG4vKiBFbWJlZGRlZCBjb250ZW50XG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIFJlbW92ZSB0aGUgYm9yZGVyIG9uIGltYWdlcyBpbnNpZGUgbGlua3MgaW4gSUUgMTAuXG4gKi9cblxuaW1nIHtcbiAgYm9yZGVyLXN0eWxlOiBub25lO1xufVxuXG4vKiBGb3Jtc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiAxLiBDaGFuZ2UgdGhlIGZvbnQgc3R5bGVzIGluIGFsbCBicm93c2Vycy5cbiAqIDIuIFJlbW92ZSB0aGUgbWFyZ2luIGluIEZpcmVmb3ggYW5kIFNhZmFyaS5cbiAqL1xuXG5idXR0b24sXG5pbnB1dCxcbm9wdGdyb3VwLFxuc2VsZWN0LFxudGV4dGFyZWEge1xuICBmb250LWZhbWlseTogaW5oZXJpdDsgLyogMSAqL1xuICBmb250LXNpemU6IDEwMCU7IC8qIDEgKi9cbiAgbGluZS1oZWlnaHQ6IDEuMTU7IC8qIDEgKi9cbiAgbWFyZ2luOiAwOyAvKiAyICovXG59XG5cbi8qKlxuICogU2hvdyB0aGUgb3ZlcmZsb3cgaW4gSUUuXG4gKiAxLiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlLlxuICovXG5cbmJ1dHRvbixcbmlucHV0IHsgLyogMSAqL1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbn1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEVkZ2UsIEZpcmVmb3gsIGFuZCBJRS5cbiAqIDEuIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRmlyZWZveC5cbiAqL1xuXG5idXR0b24sXG5zZWxlY3QgeyAvKiAxICovXG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xufVxuXG4vKipcbiAqIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG4gKi9cblxuYnV0dG9uLFxuW3R5cGU9XCJidXR0b25cIl0sXG5bdHlwZT1cInJlc2V0XCJdLFxuW3R5cGU9XCJzdWJtaXRcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjtcbn1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGlubmVyIGJvcmRlciBhbmQgcGFkZGluZyBpbiBGaXJlZm94LlxuICovXG5cbmJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwiYnV0dG9uXCJdOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJyZXNldFwiXTo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwic3VibWl0XCJdOjotbW96LWZvY3VzLWlubmVyIHtcbiAgYm9yZGVyLXN0eWxlOiBub25lO1xuICBwYWRkaW5nOiAwO1xufVxuXG4vKipcbiAqIFJlc3RvcmUgdGhlIGZvY3VzIHN0eWxlcyB1bnNldCBieSB0aGUgcHJldmlvdXMgcnVsZS5cbiAqL1xuXG5idXR0b246LW1vei1mb2N1c3JpbmcsXG5bdHlwZT1cImJ1dHRvblwiXTotbW96LWZvY3VzcmluZyxcblt0eXBlPVwicmVzZXRcIl06LW1vei1mb2N1c3JpbmcsXG5bdHlwZT1cInN1Ym1pdFwiXTotbW96LWZvY3VzcmluZyB7XG4gIG91dGxpbmU6IDFweCBkb3R0ZWQgQnV0dG9uVGV4dDtcbn1cblxuLyoqXG4gKiBDb3JyZWN0IHRoZSBwYWRkaW5nIGluIEZpcmVmb3guXG4gKi9cblxuZmllbGRzZXQge1xuICBwYWRkaW5nOiAwLjM1ZW0gMC43NWVtIDAuNjI1ZW07XG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgdGV4dCB3cmFwcGluZyBpbiBFZGdlIGFuZCBJRS5cbiAqIDIuIENvcnJlY3QgdGhlIGNvbG9yIGluaGVyaXRhbmNlIGZyb20gYGZpZWxkc2V0YCBlbGVtZW50cyBpbiBJRS5cbiAqIDMuIFJlbW92ZSB0aGUgcGFkZGluZyBzbyBkZXZlbG9wZXJzIGFyZSBub3QgY2F1Z2h0IG91dCB3aGVuIHRoZXkgemVybyBvdXRcbiAqICAgIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbmxlZ2VuZCB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8qIDEgKi9cbiAgY29sb3I6IGluaGVyaXQ7IC8qIDIgKi9cbiAgZGlzcGxheTogdGFibGU7IC8qIDEgKi9cbiAgbWF4LXdpZHRoOiAxMDAlOyAvKiAxICovXG4gIHBhZGRpbmc6IDA7IC8qIDMgKi9cbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDsgLyogMSAqL1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCB2ZXJ0aWNhbCBhbGlnbm1lbnQgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgT3BlcmEuXG4gKi9cblxucHJvZ3Jlc3Mge1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBkZWZhdWx0IHZlcnRpY2FsIHNjcm9sbGJhciBpbiBJRSAxMCsuXG4gKi9cblxudGV4dGFyZWEge1xuICBvdmVyZmxvdzogYXV0bztcbn1cblxuLyoqXG4gKiAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBJRSAxMC5cbiAqIDIuIFJlbW92ZSB0aGUgcGFkZGluZyBpbiBJRSAxMC5cbiAqL1xuXG5bdHlwZT1cImNoZWNrYm94XCJdLFxuW3R5cGU9XCJyYWRpb1wiXSB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8qIDEgKi9cbiAgcGFkZGluZzogMDsgLyogMiAqL1xufVxuXG4vKipcbiAqIENvcnJlY3QgdGhlIGN1cnNvciBzdHlsZSBvZiBpbmNyZW1lbnQgYW5kIGRlY3JlbWVudCBidXR0b25zIGluIENocm9tZS5cbiAqL1xuXG5bdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcblt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIG9kZCBhcHBlYXJhbmNlIGluIENocm9tZSBhbmQgU2FmYXJpLlxuICogMi4gQ29ycmVjdCB0aGUgb3V0bGluZSBzdHlsZSBpbiBTYWZhcmkuXG4gKi9cblxuW3R5cGU9XCJzZWFyY2hcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDsgLyogMSAqL1xuICBvdXRsaW5lLW9mZnNldDogLTJweDsgLyogMiAqL1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgaW5uZXIgcGFkZGluZyBpbiBDaHJvbWUgYW5kIFNhZmFyaSBvbiBtYWNPUy5cbiAqL1xuXG5bdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuICogMi4gQ2hhbmdlIGZvbnQgcHJvcGVydGllcyB0byBgaW5oZXJpdGAgaW4gU2FmYXJpLlxuICovXG5cbjo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsgLyogMSAqL1xuICBmb250OiBpbmhlcml0OyAvKiAyICovXG59XG5cbi8qIEludGVyYWN0aXZlXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gRWRnZSwgSUUgMTArLCBhbmQgRmlyZWZveC5cbiAqL1xuXG5kZXRhaWxzIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8qXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxuc3VtbWFyeSB7XG4gIGRpc3BsYXk6IGxpc3QtaXRlbTtcbn1cblxuLyogTWlzY1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSAxMCsuXG4gKi9cblxudGVtcGxhdGUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDEwLlxuICovXG5cbltoaWRkZW5dIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbiIsIi8qXG4gKiAgT3dsIENhcm91c2VsIC0gQ29yZVxuICovXG4ub3dsLWNhcm91c2VsIHtcblx0ZGlzcGxheTogbm9uZTtcblx0d2lkdGg6IDEwMCU7XG5cdC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cdC8qIHBvc2l0aW9uIHJlbGF0aXZlIGFuZCB6LWluZGV4IGZpeCB3ZWJraXQgcmVuZGVyaW5nIGZvbnRzIGlzc3VlICovXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0ei1pbmRleDogMTtcblxuXHQub3dsLXN0YWdlIHtcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0LW1zLXRvdWNoLWFjdGlvbjogcGFuLVk7XG5cdFx0dG91Y2gtYWN0aW9uOiBtYW5pcHVsYXRpb247XG5cdFx0LW1vei1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47IC8qIGZpeCBmaXJlZm94IGFuaW1hdGlvbiBnbGl0Y2ggKi9cblx0fVxuXG5cdC5vd2wtc3RhZ2U6YWZ0ZXIge1xuXHRcdGNvbnRlbnQ6IFwiLlwiO1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdGNsZWFyOiBib3RoO1xuXHRcdHZpc2liaWxpdHk6IGhpZGRlbjtcblx0XHRsaW5lLWhlaWdodDogMDtcblx0XHRoZWlnaHQ6IDA7XG5cdH1cblxuXHQub3dsLXN0YWdlLW91dGVyIHtcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0XHQvKiBmaXggZm9yIGZsYXNoaW5nIGJhY2tncm91bmQgKi9cblx0XHQtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMHB4LCAwcHgsIDBweCk7XG5cdH1cblxuXHQub3dsLXdyYXBwZXIsXG5cdC5vd2wtaXRlbXtcblx0XHQtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcblx0XHQtbW96LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcblx0XHQtbXMtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLDAsMCk7XG5cdFx0LW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsMCwwKTtcblx0XHQtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLDAsMCk7XG5cdH1cblxuXHQub3dsLWl0ZW0ge1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRtaW4taGVpZ2h0OiAxcHg7XG5cdFx0ZmxvYXQ6IGxlZnQ7XG5cdFx0LXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG5cdFx0LXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcblx0XHQtd2Via2l0LXRvdWNoLWNhbGxvdXQ6IG5vbmU7XG5cdH1cblx0Lm93bC1pdGVtIGltZyB7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdH1cblxuXHQub3dsLW5hdi5kaXNhYmxlZCxcblx0Lm93bC1kb3RzLmRpc2FibGVkIHtcblx0XHRkaXNwbGF5OiBub25lO1xuXHR9XG5cblx0Lm93bC1uYXYgLm93bC1wcmV2LFxuXHQub3dsLW5hdiAub3dsLW5leHQsXG5cdC5vd2wtZG90IHtcblx0XHRjdXJzb3I6IHBvaW50ZXI7XG5cdFx0LXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcblx0XHQta2h0bWwtdXNlci1zZWxlY3Q6IG5vbmU7XG5cdFx0LW1vei11c2VyLXNlbGVjdDogbm9uZTtcblx0XHQtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XG5cdFx0dXNlci1zZWxlY3Q6IG5vbmU7XG5cdH1cblxuXHQub3dsLW5hdiBidXR0b24ub3dsLXByZXYsXG5cdC5vd2wtbmF2IGJ1dHRvbi5vd2wtbmV4dCxcblx0YnV0dG9uLm93bC1kb3Qge1xuXHRcdGJhY2tncm91bmQ6IG5vbmU7XG5cdFx0Y29sb3I6IGluaGVyaXQ7XG5cdFx0Ym9yZGVyOiBub25lO1xuXHRcdHBhZGRpbmc6MCFpbXBvcnRhbnQ7XG5cdFx0Zm9udDogaW5oZXJpdDtcblx0fVxuXG5cdCYub3dsLWxvYWRlZCB7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdH1cblxuXHQmLm93bC1sb2FkaW5nIHtcblx0XHRvcGFjaXR5OiAwO1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHR9XG5cblx0Ji5vd2wtaGlkZGVuIHtcblx0XHRvcGFjaXR5OiAwO1xuXHR9XG5cblx0Ji5vd2wtcmVmcmVzaCAub3dsLWl0ZW0ge1xuXHRcdHZpc2liaWxpdHk6IGhpZGRlbjtcblx0fVxuXG5cdCYub3dsLWRyYWcgLm93bC1pdGVtIHtcblx0XHR0b3VjaC1hY3Rpb246IHBhbi15O1xuXHRcdC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG5cdFx0LW1vei11c2VyLXNlbGVjdDogbm9uZTtcblx0XHQtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XG5cdFx0dXNlci1zZWxlY3Q6IG5vbmU7XG5cdH1cblxuXHQmLm93bC1ncmFiIHtcblx0XHRjdXJzb3I6IG1vdmU7XG5cdFx0Y3Vyc29yOiBncmFiO1xuXHR9XG5cblx0Ji5vd2wtcnRsIHtcblx0XHRkaXJlY3Rpb246IHJ0bDtcblx0fVxuXG5cdCYub3dsLXJ0bCAub3dsLWl0ZW0ge1xuXHRcdGZsb2F0OiByaWdodDtcblx0fVxufVxuXG4vKiBObyBKcyAqL1xuLm5vLWpzIC5vd2wtY2Fyb3VzZWwge1xuXHRkaXNwbGF5OiBibG9jaztcbn1cbiIsIi8qXG4gKiAgT3dsIENhcm91c2VsIC0gQW5pbWF0ZSBQbHVnaW5cbiAqL1xuLm93bC1jYXJvdXNlbHtcblx0LmFuaW1hdGVkIHtcblx0XHRhbmltYXRpb24tZHVyYXRpb246IDEwMDBtcztcblx0XHRhbmltYXRpb24tZmlsbC1tb2RlOiBib3RoO1xuXHR9XG5cdC5vd2wtYW5pbWF0ZWQtaW4ge1xuXHRcdHotaW5kZXg6IDA7XG5cdH1cblx0Lm93bC1hbmltYXRlZC1vdXQge1xuXHRcdHotaW5kZXg6IDE7XG5cdH1cblx0LmZhZGVPdXQge1xuXHRcdGFuaW1hdGlvbi1uYW1lOiBmYWRlT3V0O1xuXHR9XG59XG5cbkBrZXlmcmFtZXMgZmFkZU91dCB7XG5cdDAlIHtcblx0XHRvcGFjaXR5OiAxO1xuXHR9XG5cblx0MTAwJSB7XG5cdFx0b3BhY2l0eTogMDtcblx0fVxufVxuIiwiLypcbiAqIFx0T3dsIENhcm91c2VsIC0gQXV0byBIZWlnaHQgUGx1Z2luXG4gKi9cblxuLm93bC1oZWlnaHQge1xuXHR0cmFuc2l0aW9uOiBoZWlnaHQgNTAwbXMgZWFzZS1pbi1vdXQ7XG59XG4iLCIvKlxuICogXHRPd2wgQ2Fyb3VzZWwgLSBMYXp5IExvYWQgUGx1Z2luXG4gKi9cblxuLm93bC1jYXJvdXNlbCB7XG5cdC5vd2wtaXRlbSB7XG5cdFx0Lm93bC1sYXp5IHtcblx0XHRcdFx0b3BhY2l0eTogMDtcblx0XHRcdFx0dHJhbnNpdGlvbjogb3BhY2l0eSA0MDBtcyBlYXNlO1xuXHRcdH1cblxuXHRcdC8qKlxuXHRcdFx0VGhpcyBpcyBpbnRyb2R1Y2VkIGR1ZSB0byBhIGJ1ZyBpbiBJRTExIHdoZXJlIGxhenkgbG9hZGluZyBjb21iaW5lZCB3aXRoIGF1dG9oZWlnaHQgcGx1Z2luIGNhdXNlcyBhIHdyb25nXG5cdFx0XHRjYWxjdWxhdGlvbiBvZiB0aGUgaGVpZ2h0IG9mIHRoZSBvd2wtaXRlbSB0aGF0IGJyZWFrcyBwYWdlIGxheW91dHNcblx0XHQgKi9cblx0XHQub3dsLWxhenlbc3JjXj1cIlwiXSwgLm93bC1sYXp5Om5vdChbc3JjXSkge1xuXHRcdFx0bWF4LWhlaWdodDogMDtcblx0XHR9XG5cblx0XHRpbWcub3dsLWxhenkge1xuXHRcdFx0dHJhbnNmb3JtLXN0eWxlOiBwcmVzZXJ2ZS0zZDtcblx0XHR9XG5cdH1cbn1cblxuIiwiJG93bC1pbWFnZS1wYXRoOiBcIlwiICFkZWZhdWx0O1xuXG4vKlxuICogXHRPd2wgQ2Fyb3VzZWwgLSBWaWRlbyBQbHVnaW5cbiAqL1xuXG4ub3dsLWNhcm91c2Vse1xuXHQub3dsLXZpZGVvLXdyYXBwZXIge1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRoZWlnaHQ6IDEwMCU7XG5cdFx0YmFja2dyb3VuZDogIzAwMDtcblx0fVxuXG5cdC5vd2wtdmlkZW8tcGxheS1pY29uIHtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0aGVpZ2h0OiA4MHB4O1xuXHRcdHdpZHRoOiA4MHB4O1xuXHRcdGxlZnQ6IDUwJTtcblx0XHR0b3A6IDUwJTtcblx0XHRtYXJnaW4tbGVmdDogLTQwcHg7XG5cdFx0bWFyZ2luLXRvcDogLTQwcHg7XG5cdFx0YmFja2dyb3VuZDogdXJsKFwiI3skb3dsLWltYWdlLXBhdGh9b3dsLnZpZGVvLnBsYXkucG5nXCIpIG5vLXJlcGVhdDtcblx0XHRjdXJzb3I6IHBvaW50ZXI7XG5cdFx0ei1pbmRleDogMTtcblx0XHQtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcblx0XHR0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMTAwbXMgZWFzZTtcblx0fVxuXG5cdC5vd2wtdmlkZW8tcGxheS1pY29uOmhvdmVyIHtcblx0XHR0cmFuc2Zvcm06IHNjYWxlKDEuMywgMS4zKTtcblx0fVxuXG5cdC5vd2wtdmlkZW8tcGxheWluZyAub3dsLXZpZGVvLXRuLFxuXHQub3dsLXZpZGVvLXBsYXlpbmcgLm93bC12aWRlby1wbGF5LWljb24ge1xuXHRcdGRpc3BsYXk6IG5vbmU7XG5cdH1cblxuXHQub3dsLXZpZGVvLXRuIHtcblx0XHRvcGFjaXR5OiAwO1xuXHRcdGhlaWdodDogMTAwJTtcblx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuXHRcdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cdFx0YmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuXHRcdHRyYW5zaXRpb246IG9wYWNpdHkgNDAwbXMgZWFzZTtcblx0fVxuXG5cdC5vd2wtdmlkZW8tZnJhbWUge1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHR6LWluZGV4OiAxO1xuXHRcdGhlaWdodDogMTAwJTtcblx0XHR3aWR0aDogMTAwJTtcblx0fVxufVxuIiwiLy8gc2Fzcy1saW50OmRpc2FibGUgdHJhaWxpbmctc2VtaWNvbG9uIHByb3BlcnR5LXNvcnQtb3JkZXIgbGVhZGluZy16ZXJvIHF1b3Rlc1xuXG5bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj1cIjUwXCJdLFxuYm9keVtkYXRhLWFvcy1kdXJhdGlvbj1cIjUwXCJdIFtkYXRhLWFvc10ge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MG1zXG59XG5cbltkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PVwiNTBcIl0sXG5ib2R5W2RhdGEtYW9zLWRlbGF5PVwiNTBcIl0gW2RhdGEtYW9zXSB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDBcbn1cblxuW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9XCI1MFwiXS5hb3MtYW5pbWF0ZSxcbmJvZHlbZGF0YS1hb3MtZGVsYXk9XCI1MFwiXSBbZGF0YS1hb3NdLmFvcy1hbmltYXRlIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogNTBtc1xufVxuXG5bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj1cIjEwMFwiXSxcbmJvZHlbZGF0YS1hb3MtZHVyYXRpb249XCIxMDBcIl0gW2RhdGEtYW9zXSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IC4xc1xufVxuXG5bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT1cIjEwMFwiXSxcbmJvZHlbZGF0YS1hb3MtZGVsYXk9XCIxMDBcIl0gW2RhdGEtYW9zXSB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDBcbn1cblxuW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9XCIxMDBcIl0uYW9zLWFuaW1hdGUsXG5ib2R5W2RhdGEtYW9zLWRlbGF5PVwiMTAwXCJdIFtkYXRhLWFvc10uYW9zLWFuaW1hdGUge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAuMXNcbn1cblxuW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZHVyYXRpb249XCIxNTBcIl0sXG5ib2R5W2RhdGEtYW9zLWR1cmF0aW9uPVwiMTUwXCJdIFtkYXRhLWFvc10ge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAuMTVzXG59XG5cbltkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PVwiMTUwXCJdLFxuYm9keVtkYXRhLWFvcy1kZWxheT1cIjE1MFwiXSBbZGF0YS1hb3NdIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMFxufVxuXG5bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT1cIjE1MFwiXS5hb3MtYW5pbWF0ZSxcbmJvZHlbZGF0YS1hb3MtZGVsYXk9XCIxNTBcIl0gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IC4xNXNcbn1cblxuW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZHVyYXRpb249XCIyMDBcIl0sXG5ib2R5W2RhdGEtYW9zLWR1cmF0aW9uPVwiMjAwXCJdIFtkYXRhLWFvc10ge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAuMnNcbn1cblxuW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9XCIyMDBcIl0sXG5ib2R5W2RhdGEtYW9zLWRlbGF5PVwiMjAwXCJdIFtkYXRhLWFvc10ge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAwXG59XG5cbltkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PVwiMjAwXCJdLmFvcy1hbmltYXRlLFxuYm9keVtkYXRhLWFvcy1kZWxheT1cIjIwMFwiXSBbZGF0YS1hb3NdLmFvcy1hbmltYXRlIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogLjJzXG59XG5cbltkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWR1cmF0aW9uPVwiMjUwXCJdLFxuYm9keVtkYXRhLWFvcy1kdXJhdGlvbj1cIjI1MFwiXSBbZGF0YS1hb3NdIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogLjI1c1xufVxuXG5bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT1cIjI1MFwiXSxcbmJvZHlbZGF0YS1hb3MtZGVsYXk9XCIyNTBcIl0gW2RhdGEtYW9zXSB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDBcbn1cblxuW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9XCIyNTBcIl0uYW9zLWFuaW1hdGUsXG5ib2R5W2RhdGEtYW9zLWRlbGF5PVwiMjUwXCJdIFtkYXRhLWFvc10uYW9zLWFuaW1hdGUge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAuMjVzXG59XG5cbltkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWR1cmF0aW9uPVwiMzAwXCJdLFxuYm9keVtkYXRhLWFvcy1kdXJhdGlvbj1cIjMwMFwiXSBbZGF0YS1hb3NdIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogLjNzXG59XG5cbltkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PVwiMzAwXCJdLFxuYm9keVtkYXRhLWFvcy1kZWxheT1cIjMwMFwiXSBbZGF0YS1hb3NdIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMFxufVxuXG5bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT1cIjMwMFwiXS5hb3MtYW5pbWF0ZSxcbmJvZHlbZGF0YS1hb3MtZGVsYXk9XCIzMDBcIl0gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IC4zc1xufVxuXG5bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj1cIjM1MFwiXSxcbmJvZHlbZGF0YS1hb3MtZHVyYXRpb249XCIzNTBcIl0gW2RhdGEtYW9zXSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IC4zNXNcbn1cblxuW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9XCIzNTBcIl0sXG5ib2R5W2RhdGEtYW9zLWRlbGF5PVwiMzUwXCJdIFtkYXRhLWFvc10ge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAwXG59XG5cbltkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PVwiMzUwXCJdLmFvcy1hbmltYXRlLFxuYm9keVtkYXRhLWFvcy1kZWxheT1cIjM1MFwiXSBbZGF0YS1hb3NdLmFvcy1hbmltYXRlIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogLjM1c1xufVxuXG5bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj1cIjQwMFwiXSxcbmJvZHlbZGF0YS1hb3MtZHVyYXRpb249XCI0MDBcIl0gW2RhdGEtYW9zXSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IC40c1xufVxuXG5bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT1cIjQwMFwiXSxcbmJvZHlbZGF0YS1hb3MtZGVsYXk9XCI0MDBcIl0gW2RhdGEtYW9zXSB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDBcbn1cblxuW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9XCI0MDBcIl0uYW9zLWFuaW1hdGUsXG5ib2R5W2RhdGEtYW9zLWRlbGF5PVwiNDAwXCJdIFtkYXRhLWFvc10uYW9zLWFuaW1hdGUge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAuNHNcbn1cblxuW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZHVyYXRpb249XCI0NTBcIl0sXG5ib2R5W2RhdGEtYW9zLWR1cmF0aW9uPVwiNDUwXCJdIFtkYXRhLWFvc10ge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAuNDVzXG59XG5cbltkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PVwiNDUwXCJdLFxuYm9keVtkYXRhLWFvcy1kZWxheT1cIjQ1MFwiXSBbZGF0YS1hb3NdIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMFxufVxuXG5bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT1cIjQ1MFwiXS5hb3MtYW5pbWF0ZSxcbmJvZHlbZGF0YS1hb3MtZGVsYXk9XCI0NTBcIl0gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IC40NXNcbn1cblxuW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZHVyYXRpb249XCI1MDBcIl0sXG5ib2R5W2RhdGEtYW9zLWR1cmF0aW9uPVwiNTAwXCJdIFtkYXRhLWFvc10ge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAuNXNcbn1cblxuW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9XCI1MDBcIl0sXG5ib2R5W2RhdGEtYW9zLWRlbGF5PVwiNTAwXCJdIFtkYXRhLWFvc10ge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAwXG59XG5cbltkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PVwiNTAwXCJdLmFvcy1hbmltYXRlLFxuYm9keVtkYXRhLWFvcy1kZWxheT1cIjUwMFwiXSBbZGF0YS1hb3NdLmFvcy1hbmltYXRlIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogLjVzXG59XG5cbltkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWR1cmF0aW9uPVwiNTUwXCJdLFxuYm9keVtkYXRhLWFvcy1kdXJhdGlvbj1cIjU1MFwiXSBbZGF0YS1hb3NdIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogLjU1c1xufVxuXG5bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT1cIjU1MFwiXSxcbmJvZHlbZGF0YS1hb3MtZGVsYXk9XCI1NTBcIl0gW2RhdGEtYW9zXSB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDBcbn1cblxuW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9XCI1NTBcIl0uYW9zLWFuaW1hdGUsXG5ib2R5W2RhdGEtYW9zLWRlbGF5PVwiNTUwXCJdIFtkYXRhLWFvc10uYW9zLWFuaW1hdGUge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAuNTVzXG59XG5cbltkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWR1cmF0aW9uPVwiNjAwXCJdLFxuYm9keVtkYXRhLWFvcy1kdXJhdGlvbj1cIjYwMFwiXSBbZGF0YS1hb3NdIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogLjZzXG59XG5cbltkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PVwiNjAwXCJdLFxuYm9keVtkYXRhLWFvcy1kZWxheT1cIjYwMFwiXSBbZGF0YS1hb3NdIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMFxufVxuXG5bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT1cIjYwMFwiXS5hb3MtYW5pbWF0ZSxcbmJvZHlbZGF0YS1hb3MtZGVsYXk9XCI2MDBcIl0gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IC42c1xufVxuXG5bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj1cIjY1MFwiXSxcbmJvZHlbZGF0YS1hb3MtZHVyYXRpb249XCI2NTBcIl0gW2RhdGEtYW9zXSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IC42NXNcbn1cblxuW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9XCI2NTBcIl0sXG5ib2R5W2RhdGEtYW9zLWRlbGF5PVwiNjUwXCJdIFtkYXRhLWFvc10ge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAwXG59XG5cbltkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PVwiNjUwXCJdLmFvcy1hbmltYXRlLFxuYm9keVtkYXRhLWFvcy1kZWxheT1cIjY1MFwiXSBbZGF0YS1hb3NdLmFvcy1hbmltYXRlIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogLjY1c1xufVxuXG5bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj1cIjcwMFwiXSxcbmJvZHlbZGF0YS1hb3MtZHVyYXRpb249XCI3MDBcIl0gW2RhdGEtYW9zXSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IC43c1xufVxuXG5bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT1cIjcwMFwiXSxcbmJvZHlbZGF0YS1hb3MtZGVsYXk9XCI3MDBcIl0gW2RhdGEtYW9zXSB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDBcbn1cblxuW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9XCI3MDBcIl0uYW9zLWFuaW1hdGUsXG5ib2R5W2RhdGEtYW9zLWRlbGF5PVwiNzAwXCJdIFtkYXRhLWFvc10uYW9zLWFuaW1hdGUge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAuN3Ncbn1cblxuW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZHVyYXRpb249XCI3NTBcIl0sXG5ib2R5W2RhdGEtYW9zLWR1cmF0aW9uPVwiNzUwXCJdIFtkYXRhLWFvc10ge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAuNzVzXG59XG5cbltkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PVwiNzUwXCJdLFxuYm9keVtkYXRhLWFvcy1kZWxheT1cIjc1MFwiXSBbZGF0YS1hb3NdIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMFxufVxuXG5bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT1cIjc1MFwiXS5hb3MtYW5pbWF0ZSxcbmJvZHlbZGF0YS1hb3MtZGVsYXk9XCI3NTBcIl0gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IC43NXNcbn1cblxuW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZHVyYXRpb249XCI4MDBcIl0sXG5ib2R5W2RhdGEtYW9zLWR1cmF0aW9uPVwiODAwXCJdIFtkYXRhLWFvc10ge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAuOHNcbn1cblxuW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9XCI4MDBcIl0sXG5ib2R5W2RhdGEtYW9zLWRlbGF5PVwiODAwXCJdIFtkYXRhLWFvc10ge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAwXG59XG5cbltkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PVwiODAwXCJdLmFvcy1hbmltYXRlLFxuYm9keVtkYXRhLWFvcy1kZWxheT1cIjgwMFwiXSBbZGF0YS1hb3NdLmFvcy1hbmltYXRlIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogLjhzXG59XG5cbltkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWR1cmF0aW9uPVwiODUwXCJdLFxuYm9keVtkYXRhLWFvcy1kdXJhdGlvbj1cIjg1MFwiXSBbZGF0YS1hb3NdIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogLjg1c1xufVxuXG5bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT1cIjg1MFwiXSxcbmJvZHlbZGF0YS1hb3MtZGVsYXk9XCI4NTBcIl0gW2RhdGEtYW9zXSB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDBcbn1cblxuW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9XCI4NTBcIl0uYW9zLWFuaW1hdGUsXG5ib2R5W2RhdGEtYW9zLWRlbGF5PVwiODUwXCJdIFtkYXRhLWFvc10uYW9zLWFuaW1hdGUge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAuODVzXG59XG5cbltkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWR1cmF0aW9uPVwiOTAwXCJdLFxuYm9keVtkYXRhLWFvcy1kdXJhdGlvbj1cIjkwMFwiXSBbZGF0YS1hb3NdIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogLjlzXG59XG5cbltkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PVwiOTAwXCJdLFxuYm9keVtkYXRhLWFvcy1kZWxheT1cIjkwMFwiXSBbZGF0YS1hb3NdIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMFxufVxuXG5bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT1cIjkwMFwiXS5hb3MtYW5pbWF0ZSxcbmJvZHlbZGF0YS1hb3MtZGVsYXk9XCI5MDBcIl0gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IC45c1xufVxuXG5bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj1cIjk1MFwiXSxcbmJvZHlbZGF0YS1hb3MtZHVyYXRpb249XCI5NTBcIl0gW2RhdGEtYW9zXSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IC45NXNcbn1cblxuW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9XCI5NTBcIl0sXG5ib2R5W2RhdGEtYW9zLWRlbGF5PVwiOTUwXCJdIFtkYXRhLWFvc10ge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAwXG59XG5cbltkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PVwiOTUwXCJdLmFvcy1hbmltYXRlLFxuYm9keVtkYXRhLWFvcy1kZWxheT1cIjk1MFwiXSBbZGF0YS1hb3NdLmFvcy1hbmltYXRlIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogLjk1c1xufVxuXG5bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj1cIjEwMDBcIl0sXG5ib2R5W2RhdGEtYW9zLWR1cmF0aW9uPVwiMTAwMFwiXSBbZGF0YS1hb3NdIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMXNcbn1cblxuW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9XCIxMDAwXCJdLFxuYm9keVtkYXRhLWFvcy1kZWxheT1cIjEwMDBcIl0gW2RhdGEtYW9zXSB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDBcbn1cblxuW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9XCIxMDAwXCJdLmFvcy1hbmltYXRlLFxuYm9keVtkYXRhLWFvcy1kZWxheT1cIjEwMDBcIl0gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDFzXG59XG5cbltkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWR1cmF0aW9uPVwiMTA1MFwiXSxcbmJvZHlbZGF0YS1hb3MtZHVyYXRpb249XCIxMDUwXCJdIFtkYXRhLWFvc10ge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAxLjA1c1xufVxuXG5bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT1cIjEwNTBcIl0sXG5ib2R5W2RhdGEtYW9zLWRlbGF5PVwiMTA1MFwiXSBbZGF0YS1hb3NdIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMFxufVxuXG5bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT1cIjEwNTBcIl0uYW9zLWFuaW1hdGUsXG5ib2R5W2RhdGEtYW9zLWRlbGF5PVwiMTA1MFwiXSBbZGF0YS1hb3NdLmFvcy1hbmltYXRlIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMS4wNXNcbn1cblxuW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZHVyYXRpb249XCIxMTAwXCJdLFxuYm9keVtkYXRhLWFvcy1kdXJhdGlvbj1cIjExMDBcIl0gW2RhdGEtYW9zXSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDEuMXNcbn1cblxuW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9XCIxMTAwXCJdLFxuYm9keVtkYXRhLWFvcy1kZWxheT1cIjExMDBcIl0gW2RhdGEtYW9zXSB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDBcbn1cblxuW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9XCIxMTAwXCJdLmFvcy1hbmltYXRlLFxuYm9keVtkYXRhLWFvcy1kZWxheT1cIjExMDBcIl0gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDEuMXNcbn1cblxuW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZHVyYXRpb249XCIxMTUwXCJdLFxuYm9keVtkYXRhLWFvcy1kdXJhdGlvbj1cIjExNTBcIl0gW2RhdGEtYW9zXSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDEuMTVzXG59XG5cbltkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PVwiMTE1MFwiXSxcbmJvZHlbZGF0YS1hb3MtZGVsYXk9XCIxMTUwXCJdIFtkYXRhLWFvc10ge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAwXG59XG5cbltkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PVwiMTE1MFwiXS5hb3MtYW5pbWF0ZSxcbmJvZHlbZGF0YS1hb3MtZGVsYXk9XCIxMTUwXCJdIFtkYXRhLWFvc10uYW9zLWFuaW1hdGUge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAxLjE1c1xufVxuXG5bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj1cIjEyMDBcIl0sXG5ib2R5W2RhdGEtYW9zLWR1cmF0aW9uPVwiMTIwMFwiXSBbZGF0YS1hb3NdIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMS4yc1xufVxuXG5bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT1cIjEyMDBcIl0sXG5ib2R5W2RhdGEtYW9zLWRlbGF5PVwiMTIwMFwiXSBbZGF0YS1hb3NdIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMFxufVxuXG5bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT1cIjEyMDBcIl0uYW9zLWFuaW1hdGUsXG5ib2R5W2RhdGEtYW9zLWRlbGF5PVwiMTIwMFwiXSBbZGF0YS1hb3NdLmFvcy1hbmltYXRlIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMS4yc1xufVxuXG5bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj1cIjEyNTBcIl0sXG5ib2R5W2RhdGEtYW9zLWR1cmF0aW9uPVwiMTI1MFwiXSBbZGF0YS1hb3NdIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMS4yNXNcbn1cblxuW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9XCIxMjUwXCJdLFxuYm9keVtkYXRhLWFvcy1kZWxheT1cIjEyNTBcIl0gW2RhdGEtYW9zXSB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDBcbn1cblxuW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9XCIxMjUwXCJdLmFvcy1hbmltYXRlLFxuYm9keVtkYXRhLWFvcy1kZWxheT1cIjEyNTBcIl0gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDEuMjVzXG59XG5cbltkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWR1cmF0aW9uPVwiMTMwMFwiXSxcbmJvZHlbZGF0YS1hb3MtZHVyYXRpb249XCIxMzAwXCJdIFtkYXRhLWFvc10ge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAxLjNzXG59XG5cbltkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PVwiMTMwMFwiXSxcbmJvZHlbZGF0YS1hb3MtZGVsYXk9XCIxMzAwXCJdIFtkYXRhLWFvc10ge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAwXG59XG5cbltkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PVwiMTMwMFwiXS5hb3MtYW5pbWF0ZSxcbmJvZHlbZGF0YS1hb3MtZGVsYXk9XCIxMzAwXCJdIFtkYXRhLWFvc10uYW9zLWFuaW1hdGUge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAxLjNzXG59XG5cbltkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWR1cmF0aW9uPVwiMTM1MFwiXSxcbmJvZHlbZGF0YS1hb3MtZHVyYXRpb249XCIxMzUwXCJdIFtkYXRhLWFvc10ge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAxLjM1c1xufVxuXG5bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT1cIjEzNTBcIl0sXG5ib2R5W2RhdGEtYW9zLWRlbGF5PVwiMTM1MFwiXSBbZGF0YS1hb3NdIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMFxufVxuXG5bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT1cIjEzNTBcIl0uYW9zLWFuaW1hdGUsXG5ib2R5W2RhdGEtYW9zLWRlbGF5PVwiMTM1MFwiXSBbZGF0YS1hb3NdLmFvcy1hbmltYXRlIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMS4zNXNcbn1cblxuW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZHVyYXRpb249XCIxNDAwXCJdLFxuYm9keVtkYXRhLWFvcy1kdXJhdGlvbj1cIjE0MDBcIl0gW2RhdGEtYW9zXSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDEuNHNcbn1cblxuW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9XCIxNDAwXCJdLFxuYm9keVtkYXRhLWFvcy1kZWxheT1cIjE0MDBcIl0gW2RhdGEtYW9zXSB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDBcbn1cblxuW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9XCIxNDAwXCJdLmFvcy1hbmltYXRlLFxuYm9keVtkYXRhLWFvcy1kZWxheT1cIjE0MDBcIl0gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDEuNHNcbn1cblxuW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZHVyYXRpb249XCIxNDUwXCJdLFxuYm9keVtkYXRhLWFvcy1kdXJhdGlvbj1cIjE0NTBcIl0gW2RhdGEtYW9zXSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDEuNDVzXG59XG5cbltkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PVwiMTQ1MFwiXSxcbmJvZHlbZGF0YS1hb3MtZGVsYXk9XCIxNDUwXCJdIFtkYXRhLWFvc10ge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAwXG59XG5cbltkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PVwiMTQ1MFwiXS5hb3MtYW5pbWF0ZSxcbmJvZHlbZGF0YS1hb3MtZGVsYXk9XCIxNDUwXCJdIFtkYXRhLWFvc10uYW9zLWFuaW1hdGUge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAxLjQ1c1xufVxuXG5bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj1cIjE1MDBcIl0sXG5ib2R5W2RhdGEtYW9zLWR1cmF0aW9uPVwiMTUwMFwiXSBbZGF0YS1hb3NdIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMS41c1xufVxuXG5bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT1cIjE1MDBcIl0sXG5ib2R5W2RhdGEtYW9zLWRlbGF5PVwiMTUwMFwiXSBbZGF0YS1hb3NdIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMFxufVxuXG5bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT1cIjE1MDBcIl0uYW9zLWFuaW1hdGUsXG5ib2R5W2RhdGEtYW9zLWRlbGF5PVwiMTUwMFwiXSBbZGF0YS1hb3NdLmFvcy1hbmltYXRlIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMS41c1xufVxuXG5bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj1cIjE1NTBcIl0sXG5ib2R5W2RhdGEtYW9zLWR1cmF0aW9uPVwiMTU1MFwiXSBbZGF0YS1hb3NdIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMS41NXNcbn1cblxuW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9XCIxNTUwXCJdLFxuYm9keVtkYXRhLWFvcy1kZWxheT1cIjE1NTBcIl0gW2RhdGEtYW9zXSB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDBcbn1cblxuW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9XCIxNTUwXCJdLmFvcy1hbmltYXRlLFxuYm9keVtkYXRhLWFvcy1kZWxheT1cIjE1NTBcIl0gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDEuNTVzXG59XG5cbltkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWR1cmF0aW9uPVwiMTYwMFwiXSxcbmJvZHlbZGF0YS1hb3MtZHVyYXRpb249XCIxNjAwXCJdIFtkYXRhLWFvc10ge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAxLjZzXG59XG5cbltkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PVwiMTYwMFwiXSxcbmJvZHlbZGF0YS1hb3MtZGVsYXk9XCIxNjAwXCJdIFtkYXRhLWFvc10ge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAwXG59XG5cbltkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PVwiMTYwMFwiXS5hb3MtYW5pbWF0ZSxcbmJvZHlbZGF0YS1hb3MtZGVsYXk9XCIxNjAwXCJdIFtkYXRhLWFvc10uYW9zLWFuaW1hdGUge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAxLjZzXG59XG5cbltkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWR1cmF0aW9uPVwiMTY1MFwiXSxcbmJvZHlbZGF0YS1hb3MtZHVyYXRpb249XCIxNjUwXCJdIFtkYXRhLWFvc10ge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAxLjY1c1xufVxuXG5bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT1cIjE2NTBcIl0sXG5ib2R5W2RhdGEtYW9zLWRlbGF5PVwiMTY1MFwiXSBbZGF0YS1hb3NdIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMFxufVxuXG5bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT1cIjE2NTBcIl0uYW9zLWFuaW1hdGUsXG5ib2R5W2RhdGEtYW9zLWRlbGF5PVwiMTY1MFwiXSBbZGF0YS1hb3NdLmFvcy1hbmltYXRlIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMS42NXNcbn1cblxuW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZHVyYXRpb249XCIxNzAwXCJdLFxuYm9keVtkYXRhLWFvcy1kdXJhdGlvbj1cIjE3MDBcIl0gW2RhdGEtYW9zXSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDEuN3Ncbn1cblxuW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9XCIxNzAwXCJdLFxuYm9keVtkYXRhLWFvcy1kZWxheT1cIjE3MDBcIl0gW2RhdGEtYW9zXSB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDBcbn1cblxuW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9XCIxNzAwXCJdLmFvcy1hbmltYXRlLFxuYm9keVtkYXRhLWFvcy1kZWxheT1cIjE3MDBcIl0gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDEuN3Ncbn1cblxuW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZHVyYXRpb249XCIxNzUwXCJdLFxuYm9keVtkYXRhLWFvcy1kdXJhdGlvbj1cIjE3NTBcIl0gW2RhdGEtYW9zXSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDEuNzVzXG59XG5cbltkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PVwiMTc1MFwiXSxcbmJvZHlbZGF0YS1hb3MtZGVsYXk9XCIxNzUwXCJdIFtkYXRhLWFvc10ge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAwXG59XG5cbltkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PVwiMTc1MFwiXS5hb3MtYW5pbWF0ZSxcbmJvZHlbZGF0YS1hb3MtZGVsYXk9XCIxNzUwXCJdIFtkYXRhLWFvc10uYW9zLWFuaW1hdGUge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAxLjc1c1xufVxuXG5bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj1cIjE4MDBcIl0sXG5ib2R5W2RhdGEtYW9zLWR1cmF0aW9uPVwiMTgwMFwiXSBbZGF0YS1hb3NdIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMS44c1xufVxuXG5bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT1cIjE4MDBcIl0sXG5ib2R5W2RhdGEtYW9zLWRlbGF5PVwiMTgwMFwiXSBbZGF0YS1hb3NdIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMFxufVxuXG5bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT1cIjE4MDBcIl0uYW9zLWFuaW1hdGUsXG5ib2R5W2RhdGEtYW9zLWRlbGF5PVwiMTgwMFwiXSBbZGF0YS1hb3NdLmFvcy1hbmltYXRlIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMS44c1xufVxuXG5bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj1cIjE4NTBcIl0sXG5ib2R5W2RhdGEtYW9zLWR1cmF0aW9uPVwiMTg1MFwiXSBbZGF0YS1hb3NdIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMS44NXNcbn1cblxuW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9XCIxODUwXCJdLFxuYm9keVtkYXRhLWFvcy1kZWxheT1cIjE4NTBcIl0gW2RhdGEtYW9zXSB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDBcbn1cblxuW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9XCIxODUwXCJdLmFvcy1hbmltYXRlLFxuYm9keVtkYXRhLWFvcy1kZWxheT1cIjE4NTBcIl0gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDEuODVzXG59XG5cbltkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWR1cmF0aW9uPVwiMTkwMFwiXSxcbmJvZHlbZGF0YS1hb3MtZHVyYXRpb249XCIxOTAwXCJdIFtkYXRhLWFvc10ge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAxLjlzXG59XG5cbltkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PVwiMTkwMFwiXSxcbmJvZHlbZGF0YS1hb3MtZGVsYXk9XCIxOTAwXCJdIFtkYXRhLWFvc10ge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAwXG59XG5cbltkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PVwiMTkwMFwiXS5hb3MtYW5pbWF0ZSxcbmJvZHlbZGF0YS1hb3MtZGVsYXk9XCIxOTAwXCJdIFtkYXRhLWFvc10uYW9zLWFuaW1hdGUge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAxLjlzXG59XG5cbltkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWR1cmF0aW9uPVwiMTk1MFwiXSxcbmJvZHlbZGF0YS1hb3MtZHVyYXRpb249XCIxOTUwXCJdIFtkYXRhLWFvc10ge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAxLjk1c1xufVxuXG5bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT1cIjE5NTBcIl0sXG5ib2R5W2RhdGEtYW9zLWRlbGF5PVwiMTk1MFwiXSBbZGF0YS1hb3NdIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMFxufVxuXG5bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT1cIjE5NTBcIl0uYW9zLWFuaW1hdGUsXG5ib2R5W2RhdGEtYW9zLWRlbGF5PVwiMTk1MFwiXSBbZGF0YS1hb3NdLmFvcy1hbmltYXRlIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMS45NXNcbn1cblxuW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZHVyYXRpb249XCIyMDAwXCJdLFxuYm9keVtkYXRhLWFvcy1kdXJhdGlvbj1cIjIwMDBcIl0gW2RhdGEtYW9zXSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDJzXG59XG5cbltkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PVwiMjAwMFwiXSxcbmJvZHlbZGF0YS1hb3MtZGVsYXk9XCIyMDAwXCJdIFtkYXRhLWFvc10ge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAwXG59XG5cbltkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PVwiMjAwMFwiXS5hb3MtYW5pbWF0ZSxcbmJvZHlbZGF0YS1hb3MtZGVsYXk9XCIyMDAwXCJdIFtkYXRhLWFvc10uYW9zLWFuaW1hdGUge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAyc1xufVxuXG5bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj1cIjIwNTBcIl0sXG5ib2R5W2RhdGEtYW9zLWR1cmF0aW9uPVwiMjA1MFwiXSBbZGF0YS1hb3NdIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMi4wNXNcbn1cblxuW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9XCIyMDUwXCJdLFxuYm9keVtkYXRhLWFvcy1kZWxheT1cIjIwNTBcIl0gW2RhdGEtYW9zXSB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDBcbn1cblxuW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9XCIyMDUwXCJdLmFvcy1hbmltYXRlLFxuYm9keVtkYXRhLWFvcy1kZWxheT1cIjIwNTBcIl0gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDIuMDVzXG59XG5cbltkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWR1cmF0aW9uPVwiMjEwMFwiXSxcbmJvZHlbZGF0YS1hb3MtZHVyYXRpb249XCIyMTAwXCJdIFtkYXRhLWFvc10ge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAyLjFzXG59XG5cbltkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PVwiMjEwMFwiXSxcbmJvZHlbZGF0YS1hb3MtZGVsYXk9XCIyMTAwXCJdIFtkYXRhLWFvc10ge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAwXG59XG5cbltkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PVwiMjEwMFwiXS5hb3MtYW5pbWF0ZSxcbmJvZHlbZGF0YS1hb3MtZGVsYXk9XCIyMTAwXCJdIFtkYXRhLWFvc10uYW9zLWFuaW1hdGUge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAyLjFzXG59XG5cbltkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWR1cmF0aW9uPVwiMjE1MFwiXSxcbmJvZHlbZGF0YS1hb3MtZHVyYXRpb249XCIyMTUwXCJdIFtkYXRhLWFvc10ge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAyLjE1c1xufVxuXG5bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT1cIjIxNTBcIl0sXG5ib2R5W2RhdGEtYW9zLWRlbGF5PVwiMjE1MFwiXSBbZGF0YS1hb3NdIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMFxufVxuXG5bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT1cIjIxNTBcIl0uYW9zLWFuaW1hdGUsXG5ib2R5W2RhdGEtYW9zLWRlbGF5PVwiMjE1MFwiXSBbZGF0YS1hb3NdLmFvcy1hbmltYXRlIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMi4xNXNcbn1cblxuW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZHVyYXRpb249XCIyMjAwXCJdLFxuYm9keVtkYXRhLWFvcy1kdXJhdGlvbj1cIjIyMDBcIl0gW2RhdGEtYW9zXSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDIuMnNcbn1cblxuW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9XCIyMjAwXCJdLFxuYm9keVtkYXRhLWFvcy1kZWxheT1cIjIyMDBcIl0gW2RhdGEtYW9zXSB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDBcbn1cblxuW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9XCIyMjAwXCJdLmFvcy1hbmltYXRlLFxuYm9keVtkYXRhLWFvcy1kZWxheT1cIjIyMDBcIl0gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDIuMnNcbn1cblxuW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZHVyYXRpb249XCIyMjUwXCJdLFxuYm9keVtkYXRhLWFvcy1kdXJhdGlvbj1cIjIyNTBcIl0gW2RhdGEtYW9zXSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDIuMjVzXG59XG5cbltkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PVwiMjI1MFwiXSxcbmJvZHlbZGF0YS1hb3MtZGVsYXk9XCIyMjUwXCJdIFtkYXRhLWFvc10ge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAwXG59XG5cbltkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PVwiMjI1MFwiXS5hb3MtYW5pbWF0ZSxcbmJvZHlbZGF0YS1hb3MtZGVsYXk9XCIyMjUwXCJdIFtkYXRhLWFvc10uYW9zLWFuaW1hdGUge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAyLjI1c1xufVxuXG5bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj1cIjIzMDBcIl0sXG5ib2R5W2RhdGEtYW9zLWR1cmF0aW9uPVwiMjMwMFwiXSBbZGF0YS1hb3NdIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMi4zc1xufVxuXG5bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT1cIjIzMDBcIl0sXG5ib2R5W2RhdGEtYW9zLWRlbGF5PVwiMjMwMFwiXSBbZGF0YS1hb3NdIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMFxufVxuXG5bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT1cIjIzMDBcIl0uYW9zLWFuaW1hdGUsXG5ib2R5W2RhdGEtYW9zLWRlbGF5PVwiMjMwMFwiXSBbZGF0YS1hb3NdLmFvcy1hbmltYXRlIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMi4zc1xufVxuXG5bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj1cIjIzNTBcIl0sXG5ib2R5W2RhdGEtYW9zLWR1cmF0aW9uPVwiMjM1MFwiXSBbZGF0YS1hb3NdIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMi4zNXNcbn1cblxuW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9XCIyMzUwXCJdLFxuYm9keVtkYXRhLWFvcy1kZWxheT1cIjIzNTBcIl0gW2RhdGEtYW9zXSB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDBcbn1cblxuW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9XCIyMzUwXCJdLmFvcy1hbmltYXRlLFxuYm9keVtkYXRhLWFvcy1kZWxheT1cIjIzNTBcIl0gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDIuMzVzXG59XG5cbltkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWR1cmF0aW9uPVwiMjQwMFwiXSxcbmJvZHlbZGF0YS1hb3MtZHVyYXRpb249XCIyNDAwXCJdIFtkYXRhLWFvc10ge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAyLjRzXG59XG5cbltkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PVwiMjQwMFwiXSxcbmJvZHlbZGF0YS1hb3MtZGVsYXk9XCIyNDAwXCJdIFtkYXRhLWFvc10ge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAwXG59XG5cbltkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PVwiMjQwMFwiXS5hb3MtYW5pbWF0ZSxcbmJvZHlbZGF0YS1hb3MtZGVsYXk9XCIyNDAwXCJdIFtkYXRhLWFvc10uYW9zLWFuaW1hdGUge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAyLjRzXG59XG5cbltkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWR1cmF0aW9uPVwiMjQ1MFwiXSxcbmJvZHlbZGF0YS1hb3MtZHVyYXRpb249XCIyNDUwXCJdIFtkYXRhLWFvc10ge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAyLjQ1c1xufVxuXG5bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT1cIjI0NTBcIl0sXG5ib2R5W2RhdGEtYW9zLWRlbGF5PVwiMjQ1MFwiXSBbZGF0YS1hb3NdIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMFxufVxuXG5bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT1cIjI0NTBcIl0uYW9zLWFuaW1hdGUsXG5ib2R5W2RhdGEtYW9zLWRlbGF5PVwiMjQ1MFwiXSBbZGF0YS1hb3NdLmFvcy1hbmltYXRlIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMi40NXNcbn1cblxuW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZHVyYXRpb249XCIyNTAwXCJdLFxuYm9keVtkYXRhLWFvcy1kdXJhdGlvbj1cIjI1MDBcIl0gW2RhdGEtYW9zXSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDIuNXNcbn1cblxuW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9XCIyNTAwXCJdLFxuYm9keVtkYXRhLWFvcy1kZWxheT1cIjI1MDBcIl0gW2RhdGEtYW9zXSB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDBcbn1cblxuW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9XCIyNTAwXCJdLmFvcy1hbmltYXRlLFxuYm9keVtkYXRhLWFvcy1kZWxheT1cIjI1MDBcIl0gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDIuNXNcbn1cblxuW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZHVyYXRpb249XCIyNTUwXCJdLFxuYm9keVtkYXRhLWFvcy1kdXJhdGlvbj1cIjI1NTBcIl0gW2RhdGEtYW9zXSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDIuNTVzXG59XG5cbltkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PVwiMjU1MFwiXSxcbmJvZHlbZGF0YS1hb3MtZGVsYXk9XCIyNTUwXCJdIFtkYXRhLWFvc10ge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAwXG59XG5cbltkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PVwiMjU1MFwiXS5hb3MtYW5pbWF0ZSxcbmJvZHlbZGF0YS1hb3MtZGVsYXk9XCIyNTUwXCJdIFtkYXRhLWFvc10uYW9zLWFuaW1hdGUge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAyLjU1c1xufVxuXG5bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj1cIjI2MDBcIl0sXG5ib2R5W2RhdGEtYW9zLWR1cmF0aW9uPVwiMjYwMFwiXSBbZGF0YS1hb3NdIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMi42c1xufVxuXG5bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT1cIjI2MDBcIl0sXG5ib2R5W2RhdGEtYW9zLWRlbGF5PVwiMjYwMFwiXSBbZGF0YS1hb3NdIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMFxufVxuXG5bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT1cIjI2MDBcIl0uYW9zLWFuaW1hdGUsXG5ib2R5W2RhdGEtYW9zLWRlbGF5PVwiMjYwMFwiXSBbZGF0YS1hb3NdLmFvcy1hbmltYXRlIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMi42c1xufVxuXG5bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj1cIjI2NTBcIl0sXG5ib2R5W2RhdGEtYW9zLWR1cmF0aW9uPVwiMjY1MFwiXSBbZGF0YS1hb3NdIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMi42NXNcbn1cblxuW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9XCIyNjUwXCJdLFxuYm9keVtkYXRhLWFvcy1kZWxheT1cIjI2NTBcIl0gW2RhdGEtYW9zXSB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDBcbn1cblxuW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9XCIyNjUwXCJdLmFvcy1hbmltYXRlLFxuYm9keVtkYXRhLWFvcy1kZWxheT1cIjI2NTBcIl0gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDIuNjVzXG59XG5cbltkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWR1cmF0aW9uPVwiMjcwMFwiXSxcbmJvZHlbZGF0YS1hb3MtZHVyYXRpb249XCIyNzAwXCJdIFtkYXRhLWFvc10ge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAyLjdzXG59XG5cbltkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PVwiMjcwMFwiXSxcbmJvZHlbZGF0YS1hb3MtZGVsYXk9XCIyNzAwXCJdIFtkYXRhLWFvc10ge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAwXG59XG5cbltkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PVwiMjcwMFwiXS5hb3MtYW5pbWF0ZSxcbmJvZHlbZGF0YS1hb3MtZGVsYXk9XCIyNzAwXCJdIFtkYXRhLWFvc10uYW9zLWFuaW1hdGUge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAyLjdzXG59XG5cbltkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWR1cmF0aW9uPVwiMjc1MFwiXSxcbmJvZHlbZGF0YS1hb3MtZHVyYXRpb249XCIyNzUwXCJdIFtkYXRhLWFvc10ge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAyLjc1c1xufVxuXG5bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT1cIjI3NTBcIl0sXG5ib2R5W2RhdGEtYW9zLWRlbGF5PVwiMjc1MFwiXSBbZGF0YS1hb3NdIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMFxufVxuXG5bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT1cIjI3NTBcIl0uYW9zLWFuaW1hdGUsXG5ib2R5W2RhdGEtYW9zLWRlbGF5PVwiMjc1MFwiXSBbZGF0YS1hb3NdLmFvcy1hbmltYXRlIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMi43NXNcbn1cblxuW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZHVyYXRpb249XCIyODAwXCJdLFxuYm9keVtkYXRhLWFvcy1kdXJhdGlvbj1cIjI4MDBcIl0gW2RhdGEtYW9zXSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDIuOHNcbn1cblxuW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9XCIyODAwXCJdLFxuYm9keVtkYXRhLWFvcy1kZWxheT1cIjI4MDBcIl0gW2RhdGEtYW9zXSB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDBcbn1cblxuW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9XCIyODAwXCJdLmFvcy1hbmltYXRlLFxuYm9keVtkYXRhLWFvcy1kZWxheT1cIjI4MDBcIl0gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDIuOHNcbn1cblxuW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZHVyYXRpb249XCIyODUwXCJdLFxuYm9keVtkYXRhLWFvcy1kdXJhdGlvbj1cIjI4NTBcIl0gW2RhdGEtYW9zXSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDIuODVzXG59XG5cbltkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PVwiMjg1MFwiXSxcbmJvZHlbZGF0YS1hb3MtZGVsYXk9XCIyODUwXCJdIFtkYXRhLWFvc10ge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAwXG59XG5cbltkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWRlbGF5PVwiMjg1MFwiXS5hb3MtYW5pbWF0ZSxcbmJvZHlbZGF0YS1hb3MtZGVsYXk9XCIyODUwXCJdIFtkYXRhLWFvc10uYW9zLWFuaW1hdGUge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAyLjg1c1xufVxuXG5bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj1cIjI5MDBcIl0sXG5ib2R5W2RhdGEtYW9zLWR1cmF0aW9uPVwiMjkwMFwiXSBbZGF0YS1hb3NdIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMi45c1xufVxuXG5bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT1cIjI5MDBcIl0sXG5ib2R5W2RhdGEtYW9zLWRlbGF5PVwiMjkwMFwiXSBbZGF0YS1hb3NdIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMFxufVxuXG5bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT1cIjI5MDBcIl0uYW9zLWFuaW1hdGUsXG5ib2R5W2RhdGEtYW9zLWRlbGF5PVwiMjkwMFwiXSBbZGF0YS1hb3NdLmFvcy1hbmltYXRlIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMi45c1xufVxuXG5bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kdXJhdGlvbj1cIjI5NTBcIl0sXG5ib2R5W2RhdGEtYW9zLWR1cmF0aW9uPVwiMjk1MFwiXSBbZGF0YS1hb3NdIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMi45NXNcbn1cblxuW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9XCIyOTUwXCJdLFxuYm9keVtkYXRhLWFvcy1kZWxheT1cIjI5NTBcIl0gW2RhdGEtYW9zXSB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDBcbn1cblxuW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZGVsYXk9XCIyOTUwXCJdLmFvcy1hbmltYXRlLFxuYm9keVtkYXRhLWFvcy1kZWxheT1cIjI5NTBcIl0gW2RhdGEtYW9zXS5hb3MtYW5pbWF0ZSB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDIuOTVzXG59XG5cbltkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWR1cmF0aW9uPVwiMzAwMFwiXSxcbmJvZHlbZGF0YS1hb3MtZHVyYXRpb249XCIzMDAwXCJdIFtkYXRhLWFvc10ge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAzc1xufVxuXG5bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT1cIjMwMDBcIl0sXG5ib2R5W2RhdGEtYW9zLWRlbGF5PVwiMzAwMFwiXSBbZGF0YS1hb3NdIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMFxufVxuXG5bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1kZWxheT1cIjMwMDBcIl0uYW9zLWFuaW1hdGUsXG5ib2R5W2RhdGEtYW9zLWRlbGF5PVwiMzAwMFwiXSBbZGF0YS1hb3NdLmFvcy1hbmltYXRlIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogM3Ncbn1cblxuW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZWFzaW5nPWxpbmVhcl0sXG5ib2R5W2RhdGEtYW9zLWVhc2luZz1saW5lYXJdIFtkYXRhLWFvc10ge1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKC4yNSwgLjI1LCAuNzUsIC43NSlcbn1cblxuW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZWFzaW5nPWVhc2VdLFxuYm9keVtkYXRhLWFvcy1lYXNpbmc9ZWFzZV0gW2RhdGEtYW9zXSB7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlXG59XG5cbltkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWVhc2luZz1lYXNlLWluXSxcbmJvZHlbZGF0YS1hb3MtZWFzaW5nPWVhc2UtaW5dIFtkYXRhLWFvc10ge1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pblxufVxuXG5bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1lYXNpbmc9ZWFzZS1vdXRdLFxuYm9keVtkYXRhLWFvcy1lYXNpbmc9ZWFzZS1vdXRdIFtkYXRhLWFvc10ge1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXRcbn1cblxuW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZWFzaW5nPWVhc2UtaW4tb3V0XSxcbmJvZHlbZGF0YS1hb3MtZWFzaW5nPWVhc2UtaW4tb3V0XSBbZGF0YS1hb3NdIHtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0XG59XG5cbltkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWVhc2luZz1lYXNlLWluLWJhY2tdLFxuYm9keVtkYXRhLWFvcy1lYXNpbmc9ZWFzZS1pbi1iYWNrXSBbZGF0YS1hb3NdIHtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllciguNiwgLS4yOCwgLjczNSwgLjA0NSlcbn1cblxuW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZWFzaW5nPWVhc2Utb3V0LWJhY2tdLFxuYm9keVtkYXRhLWFvcy1lYXNpbmc9ZWFzZS1vdXQtYmFja10gW2RhdGEtYW9zXSB7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoLjE3NSwgLjg4NSwgLjMyLCAxLjI3NSlcbn1cblxuW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZWFzaW5nPWVhc2UtaW4tb3V0LWJhY2tdLFxuYm9keVtkYXRhLWFvcy1lYXNpbmc9ZWFzZS1pbi1vdXQtYmFja10gW2RhdGEtYW9zXSB7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoLjY4LCAtLjU1LCAuMjY1LCAxLjU1KVxufVxuXG5bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1lYXNpbmc9ZWFzZS1pbi1zaW5lXSxcbmJvZHlbZGF0YS1hb3MtZWFzaW5nPWVhc2UtaW4tc2luZV0gW2RhdGEtYW9zXSB7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoLjQ3LCAwLCAuNzQ1LCAuNzE1KVxufVxuXG5bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1lYXNpbmc9ZWFzZS1vdXQtc2luZV0sXG5ib2R5W2RhdGEtYW9zLWVhc2luZz1lYXNlLW91dC1zaW5lXSBbZGF0YS1hb3NdIHtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllciguMzksIC41NzUsIC41NjUsIDEpXG59XG5cbltkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWVhc2luZz1lYXNlLWluLW91dC1zaW5lXSxcbmJvZHlbZGF0YS1hb3MtZWFzaW5nPWVhc2UtaW4tb3V0LXNpbmVdIFtkYXRhLWFvc10ge1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKC40NDUsIC4wNSwgLjU1LCAuOTUpXG59XG5cbltkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWVhc2luZz1lYXNlLWluLXF1YWRdLFxuYm9keVtkYXRhLWFvcy1lYXNpbmc9ZWFzZS1pbi1xdWFkXSBbZGF0YS1hb3NdIHtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllciguNTUsIC4wODUsIC42OCwgLjUzKVxufVxuXG5bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1lYXNpbmc9ZWFzZS1vdXQtcXVhZF0sXG5ib2R5W2RhdGEtYW9zLWVhc2luZz1lYXNlLW91dC1xdWFkXSBbZGF0YS1hb3NdIHtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllciguMjUsIC40NiwgLjQ1LCAuOTQpXG59XG5cbltkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWVhc2luZz1lYXNlLWluLW91dC1xdWFkXSxcbmJvZHlbZGF0YS1hb3MtZWFzaW5nPWVhc2UtaW4tb3V0LXF1YWRdIFtkYXRhLWFvc10ge1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKC40NTUsIC4wMywgLjUxNSwgLjk1NSlcbn1cblxuW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZWFzaW5nPWVhc2UtaW4tY3ViaWNdLFxuYm9keVtkYXRhLWFvcy1lYXNpbmc9ZWFzZS1pbi1jdWJpY10gW2RhdGEtYW9zXSB7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoLjU1LCAuMDg1LCAuNjgsIC41Mylcbn1cblxuW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZWFzaW5nPWVhc2Utb3V0LWN1YmljXSxcbmJvZHlbZGF0YS1hb3MtZWFzaW5nPWVhc2Utb3V0LWN1YmljXSBbZGF0YS1hb3NdIHtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllciguMjUsIC40NiwgLjQ1LCAuOTQpXG59XG5cbltkYXRhLWFvc11bZGF0YS1hb3NdW2RhdGEtYW9zLWVhc2luZz1lYXNlLWluLW91dC1jdWJpY10sXG5ib2R5W2RhdGEtYW9zLWVhc2luZz1lYXNlLWluLW91dC1jdWJpY10gW2RhdGEtYW9zXSB7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoLjQ1NSwgLjAzLCAuNTE1LCAuOTU1KVxufVxuXG5bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1lYXNpbmc9ZWFzZS1pbi1xdWFydF0sXG5ib2R5W2RhdGEtYW9zLWVhc2luZz1lYXNlLWluLXF1YXJ0XSBbZGF0YS1hb3NdIHtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllciguNTUsIC4wODUsIC42OCwgLjUzKVxufVxuXG5bZGF0YS1hb3NdW2RhdGEtYW9zXVtkYXRhLWFvcy1lYXNpbmc9ZWFzZS1vdXQtcXVhcnRdLFxuYm9keVtkYXRhLWFvcy1lYXNpbmc9ZWFzZS1vdXQtcXVhcnRdIFtkYXRhLWFvc10ge1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKC4yNSwgLjQ2LCAuNDUsIC45NClcbn1cblxuW2RhdGEtYW9zXVtkYXRhLWFvc11bZGF0YS1hb3MtZWFzaW5nPWVhc2UtaW4tb3V0LXF1YXJ0XSxcbmJvZHlbZGF0YS1hb3MtZWFzaW5nPWVhc2UtaW4tb3V0LXF1YXJ0XSBbZGF0YS1hb3NdIHtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllciguNDU1LCAuMDMsIC41MTUsIC45NTUpXG59XG5cbltkYXRhLWFvc149ZmFkZV1bZGF0YS1hb3NePWZhZGVdIHtcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eSwgdHJhbnNmb3JtXG59XG5cbltkYXRhLWFvc149ZmFkZV1bZGF0YS1hb3NePWZhZGVdLmFvcy1hbmltYXRlIHtcbiAgb3BhY2l0eTogMTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApXG59XG5cbltkYXRhLWFvcz1mYWRlLXVwXSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTAwcHgsIDApXG59XG5cbltkYXRhLWFvcz1mYWRlLWRvd25dIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTAwcHgsIDApXG59XG5cbltkYXRhLWFvcz1mYWRlLXJpZ2h0XSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMHB4LCAwLCAwKVxufVxuXG5bZGF0YS1hb3M9ZmFkZS1sZWZ0XSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwcHgsIDAsIDApXG59XG5cbltkYXRhLWFvcz1mYWRlLXVwLXJpZ2h0XSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMHB4LCAxMDBweCwgMClcbn1cblxuW2RhdGEtYW9zPWZhZGUtdXAtbGVmdF0ge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMHB4LCAxMDBweCwgMClcbn1cblxuW2RhdGEtYW9zPWZhZGUtZG93bi1yaWdodF0ge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDBweCwgLTEwMHB4LCAwKVxufVxuXG5bZGF0YS1hb3M9ZmFkZS1kb3duLWxlZnRdIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDBweCwgLTEwMHB4LCAwKVxufVxuXG5bZGF0YS1hb3NePXpvb21dW2RhdGEtYW9zXj16b29tXSB7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IG9wYWNpdHksIHRyYW5zZm9ybVxufVxuXG5bZGF0YS1hb3NePXpvb21dW2RhdGEtYW9zXj16b29tXS5hb3MtYW5pbWF0ZSB7XG4gIG9wYWNpdHk6IDE7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKSBzY2FsZSgxKVxufVxuXG5bZGF0YS1hb3M9em9vbS1pbl0ge1xuICB0cmFuc2Zvcm06IHNjYWxlKC42KVxufVxuXG5bZGF0YS1hb3M9em9vbS1pbi11cF0ge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwMHB4LCAwKSBzY2FsZSguNilcbn1cblxuW2RhdGEtYW9zPXpvb20taW4tZG93bl0ge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMDBweCwgMCkgc2NhbGUoLjYpXG59XG5cbltkYXRhLWFvcz16b29tLWluLXJpZ2h0XSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMHB4LCAwLCAwKSBzY2FsZSguNilcbn1cblxuW2RhdGEtYW9zPXpvb20taW4tbGVmdF0ge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMHB4LCAwLCAwKSBzY2FsZSguNilcbn1cblxuW2RhdGEtYW9zPXpvb20tb3V0XSB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMS4yKVxufVxuXG5bZGF0YS1hb3M9em9vbS1vdXQtdXBdIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMDBweCwgMCkgc2NhbGUoMS4yKVxufVxuXG5bZGF0YS1hb3M9em9vbS1vdXQtZG93bl0ge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMDBweCwgMCkgc2NhbGUoMS4yKVxufVxuXG5bZGF0YS1hb3M9em9vbS1vdXQtcmlnaHRdIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwcHgsIDAsIDApIHNjYWxlKDEuMilcbn1cblxuW2RhdGEtYW9zPXpvb20tb3V0LWxlZnRdIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDBweCwgMCwgMCkgc2NhbGUoMS4yKVxufVxuXG5bZGF0YS1hb3NePXNsaWRlXVtkYXRhLWFvc149c2xpZGVdIHtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtXG59XG5cbltkYXRhLWFvc149c2xpZGVdW2RhdGEtYW9zXj1zbGlkZV0uYW9zLWFuaW1hdGUge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMClcbn1cblxuW2RhdGEtYW9zPXNsaWRlLXVwXSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTAwJSwgMClcbn1cblxuW2RhdGEtYW9zPXNsaWRlLWRvd25dIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTAwJSwgMClcbn1cblxuW2RhdGEtYW9zPXNsaWRlLXJpZ2h0XSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApXG59XG5cbltkYXRhLWFvcz1zbGlkZS1sZWZ0XSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMClcbn1cblxuW2RhdGEtYW9zXj1mbGlwXVtkYXRhLWFvc149ZmxpcF0ge1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybVxufVxuXG5bZGF0YS1hb3M9ZmxpcC1sZWZ0XSB7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjUwMHB4KSByb3RhdGVZKC0xMDBkZWcpXG59XG5cbltkYXRhLWFvcz1mbGlwLWxlZnRdLmFvcy1hbmltYXRlIHtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyNTAwcHgpIHJvdGF0ZVkoMClcbn1cblxuW2RhdGEtYW9zPWZsaXAtcmlnaHRdIHtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyNTAwcHgpIHJvdGF0ZVkoMTAwZGVnKVxufVxuXG5bZGF0YS1hb3M9ZmxpcC1yaWdodF0uYW9zLWFuaW1hdGUge1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDI1MDBweCkgcm90YXRlWSgwKVxufVxuXG5bZGF0YS1hb3M9ZmxpcC11cF0ge1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDI1MDBweCkgcm90YXRlWCgtMTAwZGVnKVxufVxuXG5bZGF0YS1hb3M9ZmxpcC11cF0uYW9zLWFuaW1hdGUge1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDI1MDBweCkgcm90YXRlWCgwKVxufVxuXG5bZGF0YS1hb3M9ZmxpcC1kb3duXSB7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjUwMHB4KSByb3RhdGVYKDEwMGRlZylcbn1cblxuW2RhdGEtYW9zPWZsaXAtZG93bl0uYW9zLWFuaW1hdGUge1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDI1MDBweCkgcm90YXRlWCgwKVxufVxuXG4vLyBzYXNzLWxpbnQ6ZW5hYmxlIHRyYWlsaW5nLXNlbWljb2xvbiBwcm9wZXJ0eS1zb3J0LW9yZGVyIGxlYWRpbmctemVybyBxdW90ZXNcbiIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBCYXNlXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIFJlbW92ZSBtYXJnaW4gYW5kIHBhZGRpbmcgZnJvbSBldmVyeSBzZWxlY3RvciBpbmNsdWRpbmcgdGhlaXJcbiAqIHBzdWVkbyBzZWxlY3RvcnMuXG4gKlxuICogMS4gTW9yZSBzZW5zaWJsZSBkZWZhdWx0IGJveCBzaXppbmcuXG4gKiAgICAoY3NzLXRyaWNrcy5jb20vaW5oZXJpdGluZy1ib3gtc2l6aW5nLXByb2JhYmx5LXNsaWdodGx5LWJldHRlci1iZXN0LXByYWN0aWNlKS5cbiAqL1xuXG4qLFxuKjo6YmVmb3JlLFxuKjo6YWZ0ZXIge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGJveC1zaXppbmc6IGluaGVyaXQ7IC8qIDEgKi9cbn1cblxuXG4vKipcbiAqIFNldCBoZWlnaHQgb2YgdGhlIGRvY3VtZW50IHRvIG1heGl1bSB2aWV3cG9ydCBoZWlnaHQuXG4gKlxuICogMS4gU2V0IHJvb3QgZm9udCBzaXplIHRvIDEwLlxuICovXG5cbmh0bWwge1xuICBoZWlnaHQ6IDEwMHZoO1xuICBmb250LXNpemU6IDYyLjUlOyAvKiAxICovXG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cblxuLyoqXG4gKiBTZXQgbWluaW1hbCBoZWlnaHQgb2YgdGhlIGJvZHkgdG8gbWF4aW11bSB2aWV3cG9ydCBoZWlnaHQgdG9cbiAqIG1hdGNoIHRoZSBkb2N1bWVudCdzIGhlaWdodC5cbiAqXG4gKiAxLiBGaXJlZm94IDI1Ky5cbiAqIDIuIENocm9tZSA1Ky5cbiAqL1xuXG5ib2R5IHtcbiAgQGluY2x1ZGUgdGV4dCgkYm9keS10ZXh0KTtcbiAgbWluLWhlaWdodDogMTAwdmg7XG4gIGJhY2tncm91bmQtY29sb3I6ICRib2R5LWJhY2tncm91bmQtY29sb3I7XG4gIGNvbG9yOiAkY29sb3ItYmx1ZS0xMDA7XG4gIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktc2Vjb25kYXJ5O1xuICB0ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5O1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlOyAvKiAxICovXG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkOyAvKiAyICovXG4gIG92ZXJmbG93LXg6IGhpZGRlbjtcbn1cblxuOjpzZWxlY3Rpb24ge1xuICBiYWNrZ3JvdW5kOiAkY29sb3ItYmx1ZS0xMDA7XG4gIGNvbG9yOiAkY29sb3Itd2hpdGUtMTAwO1xufVxuXG5wIHtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuNDJweDtcbn1cbiIsIi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbi8vIE1peGluc1xyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuLy8gV3JhcHBlclxyXG4vLyBDZW50ZXIgYWxpZ25zIGVsZW1lbnQgd2l0aCBnaXZlbiBtYXhpbXVtIHdpZHRoLCBwYWRkaW5nLCBhbmQgbWFyZ2lucyB0b3BcclxuLy8gYW5kIGJvdHRvbS5cclxuLy8gQHBhcmFtIHtTdHJpbmd9ICR3aWR0aCAtIFBpeGVsIHVuaXQgdmFsdWUuXHJcbi8vIEBwYXJhbSB7U3RyaW5nfSAkZ2FwIC0gUGl4ZWwgdW5pdCB2YWx1ZS5cclxuLy8gQGV4YW1wbGVcclxuLy8gICBAaW5jbHVkZSB3cmFwcGVyKDEwMjRweCwgMjBweCk7XHJcbkBtaXhpbiBjb250YWluZXIoJHdpZHRoOiAkZ3JpZC13aWR0aCwgJGdhcDogJGdyaWQtZ2FwKSB7XHJcbiAgQGlmICh0eXBlLW9mKCR3aWR0aCkgPT0gbnVtYmVyIGFuZCB0eXBlLW9mKCRnYXApID09IG51bWJlcikge1xyXG4gICAgQGlmICgkZ2FwICE9IDApIHtcclxuICAgICAgbWF4LXdpZHRoOiBjYWxjKCN7JHdpZHRofSArICN7KCRnYXAgKiAyKX0pO1xyXG4gICAgICBwYWRkaW5nOiAwICRnYXA7XHJcbiAgICB9IEBlbHNlIHtcclxuICAgICAgbWF4LXdpZHRoOiAkd2lkdGg7XHJcbiAgICB9XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gIH0gQGVsc2Uge1xyXG4gICAgQGVycm9yICdBcmd1bWVudHMgYCR3aWR0aGAgYW5kIGAkZ2FwYCBzaG91bGQgYmUgYSBudW1iZXInO1xyXG4gIH1cclxufVxyXG5cclxuXHJcbi8vIFNlY3Rpb25cclxuLy8gQWRkIHRvcCBhbmQgYm90dG9tIHNwYWNpbmcgdG8gZWxlbWVudCB1c2luZyBwYWRkaW5ncy5cclxuLy8gQHBhcmFtIHtTdHJpbmd9ICR0b3AgLSBQaXhlbCB1bml0IHZhbHVlLlxyXG4vLyBAcGFyYW0ge1N0cmluZ30gJGJvdHRvbSAtIFBpeGVsIHVuaXQgdmFsdWUuXHJcbi8vIEBleGFtcGxlXHJcbi8vICAgQGluY2x1ZGUgc2VjdGlvbigxMDBweCwgMTAwcHgpO1xyXG5AbWl4aW4gc2VjdGlvbigkdG9wOiAwLCAkYm90dG9tOiAwKSB7XHJcbiAgQGlmICh0eXBlLW9mKCR0b3ApID09IG51bWJlciBhbmQgdHlwZS1vZigkYm90dG9tKSA9PSBudW1iZXIpIHtcclxuICAgIHBhZGRpbmc6ICR0b3AgMCAkYm90dG9tO1xyXG4gIH0gQGVsc2Uge1xyXG4gICAgQGVycm9yICdBcmd1bWVudHMgYCR0b3BgIGFuZCBgYm90dG9tYCBzaG91bGQgYmUgYSBudW1iZXInO1xyXG4gIH1cclxufVxyXG5cclxuXHJcbi8vIEZvbnRcclxuLy8gQWRkcyBgcmVtYCB1bml0IGJhc2VkIGZvbnQgc2l6ZSBwcm9wZXJ0eSwgYSBmYWxsYmFja1xyXG4vLyBgcHhgIHVuaXQgYmFzZWQgZm9udCBzaXplIHByb3BlcnR5LCBhbmQgYSBgZW1gIHVuaXQgYmFzZWQgbGluZSBoZWlnaHRcclxuLy8gcHJvcGVydHkgdG8gYW55IHJ1bGUuXHJcbi8vIEBwYXJhbSB7U3RyaW5nfSAkZm9udC1zaXplIC0gUGl4ZWwgdW5pdCB2YWx1ZS5cclxuLy8gQHBhcmFtIHtTdHJpbmd9ICRsaW5lLWhlaWdodCAtIFBpeGVsIHVuaXQgdmFsdWUuXHJcbi8vIEBleGFtcGxlXHJcbi8vICAgQGluY2x1ZGUgZm9udC1zaXplKDE2cHgsIDI0cHgpO1xyXG5AbWl4aW4gZm9udCgkZm9udC1zaXplLCAkbGluZS1oZWlnaHQpIHtcclxuICBAaWYgKHR5cGUtb2YoJGZvbnQtc2l6ZSkgPT0gbnVtYmVyIGFuZCB1bml0KCRmb250LXNpemUpID09ICdweCcpIHtcclxuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZTtcclxuICAgIGZvbnQtc2l6ZTogcmVtKCRmb250LXNpemUpOyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIG5vLWR1cGxpY2F0ZS1wcm9wZXJ0aWVzXHJcbiAgfSBAZWxzZSB7XHJcbiAgICBAZXJyb3IgJ1ZhbHVlIGZvciBgI3skZm9udC1zaXplfWAgc2hvdWxkIGJlIGEgYHB4YCB1bml0JztcclxuICB9XHJcbiAgQGlmICh0eXBlLW9mKCRsaW5lLWhlaWdodCkgPT0gbnVtYmVyIGFuZCB1bml0KCRsaW5lLWhlaWdodCkgPT0gJ3B4Jykge1xyXG4gICAgbGluZS1oZWlnaHQ6ICgoJGxpbmUtaGVpZ2h0IC8gJGZvbnQtc2l6ZSkgKiAxZW0pO1xyXG4gIH0gQGVsc2Uge1xyXG4gICAgQGVycm9yICdWYWx1ZSBmb3IgYCN7JGxpbmUtaGVpZ2h0fWAgc2hvdWxkIGJlIGEgYHB4YCB1bml0JztcclxuICB9XHJcbn1cclxuXHJcblxyXG4vLyBUZXh0XHJcbi8vIFNob3J0aGFuZCBmb3IgdGhlIGZvbnQgbWl4aW4sIHJ1bnMgdGhlIGZvbnQgbWl4aW4gYmFzZWQgb24gYSBjb21tb25cclxuLy8gZGVtZWFub3VyIGV4aXN0aW5nIGJvdGggaW4gdGhlIGAkZm9udC1zaXplYCBhbmQgdGhlIGAkbGluZS1oZWlnaHRgIG1hcHMuXHJcbi8vIEBwYXJhbSB7c3RyaW5nfSAkdmFsdWUgLSBTdHJpbmdcclxuLy8gQGV4YW1wbGVcclxuLy8gICBAaW5jbHVkZSB0ZXh0KCdwJyk7XHJcbkBtaXhpbiB0ZXh0KCR2YWx1ZSkge1xyXG4gIEBpZiAodHlwZS1vZigkdmFsdWUpID09IHN0cmluZykge1xyXG4gICAgQGluY2x1ZGUgZm9udChtYXAtZ2V0KCRmb250LXNpemUsICR2YWx1ZSksIG1hcC1nZXQoJGxpbmUtaGVpZ2h0LCAkdmFsdWUpKTtcclxuICB9IEBlbHNlIHtcclxuICAgIEBlcnJvciAnVmFsdWUgc2hvdWxkIGJlIGEgc3RyaW5nJztcclxuICB9XHJcbn1cclxuXHJcblxyXG4vLyBGb250IEF3ZXNvbWVcclxuLy8gQWRkIEZvbnQgQXdlc29tZSBpY29ucyBhcyBwc3VlZG8gZWxlbWVudHMgYnkgdXNpbmcgdGhlaXIgdW5pY29kZS5cclxuLy8gQHBhcmFtIHtTdHJpbmd9ICRjb250ZW50IC0gVW5pY29kZSBzdHJpbmcuXHJcbi8vIEBwYXJhbSB7U3RyaW5nfSAkZmFtaWx5IC0gRm9udCBBd2Vzb21lIGZvbnQgZmFtaWx5IHN0cmluZy5cclxuLy8gQGV4YW1wbGVcclxuLy8gICBAaW5jbHVkZSBmb250YXdlc29tZSgnZjEwMCcsICdMaWdodCcpO1xyXG5AbWl4aW4gZm9udGF3ZXNvbWUoJGNvbnRlbnQsICRmYW1pbHkpIHtcclxuICBAaWYgKHR5cGUtb2YoJGZhbWlseSkgPT0gc3RyaW5nKSB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgZm9udC1mYW1pbHk6ICdGb250IEF3ZXNvbWUgNSAjeyRmYW1pbHl9JztcclxuICAgIGNvbnRlbnQ6IHVuaWNvZGUoJGNvbnRlbnQpO1xyXG4gIH0gQGVsc2Uge1xyXG4gICAgQGVycm9yICdBcmd1bWVudCBgJGZhbWlseWAgc2hvdWxkIGJlIGEgc3RyaW5nJztcclxuICB9XHJcbn1cclxuXHJcbi8vIE1hcmdpblxyXG5cclxuQG1peGluIG1hcmdpbi14KCRtYXJnaW4pIHtcclxuICBAaWYodHlwZS1vZigkbWFyZ2luKSA9PSBudW1iZXIgYW5kIHVuaXQoJG1hcmdpbikgPT0gJ3B4Jykge1xyXG4gICAgbWFyZ2luLXRvcDogJG1hcmdpbjtcclxuICAgIG1hcmdpbi1ib3R0b206ICRtYXJnaW47XHJcblxyXG4gIH0gQGVsc2Uge1xyXG4gICAgQGVycm9yICdBcmd1bWVudCBgJG1hcmdpbmAgc2hvdWxkIGJlIGEgc3RyaW5nJztcclxuICB9XHJcbn1cclxuXHJcbkBtaXhpbiBtYXJnaW4teSgkbWFyZ2luKSB7XHJcbiAgQGlmKHR5cGUtb2YoJG1hcmdpbikgPT0gbnVtYmVyIGFuZCB1bml0KCRtYXJnaW4pID09ICdweCcpIHtcclxuICAgIG1hcmdpbi1yaWdodDogJG1hcmdpbjtcclxuICAgIG1hcmdpbi1sZWZ0OiAkbWFyZ2luO1xyXG5cclxuICB9IEBlbHNlIHtcclxuICAgIEBlcnJvciAnQXJndW1lbnQgYCRtYXJnaW5gIHNob3VsZCBiZSBhIHN0cmluZyc7XHJcbiAgfVxyXG59XHJcblxyXG5cclxuLy8gUGFkZGluZ1xyXG5cclxuQG1peGluIHBhZGRpbmcteCgkcGFkZGluZykge1xyXG4gIEBpZih0eXBlLW9mKCRwYWRkaW5nKSA9PSBudW1iZXIgYW5kIHVuaXQoJHBhZGRpbmcpID09ICdweCcpIHtcclxuICAgIHBhZGRpbmctdG9wOiAkcGFkZGluZztcclxuICAgIHBhZGRpbmctYm90dG9tOiAkcGFkZGluZztcclxuXHJcbiAgfSBAZWxzZSB7XHJcbiAgICBAZXJyb3IgJ0FyZ3VtZW50IGAkcGFkZGluZ2Agc2hvdWxkIGJlIGEgc3RyaW5nJztcclxuICB9XHJcbn1cclxuXHJcbkBtaXhpbiBwYWRkaW5nLXkoJHBhZGRpbmcpIHtcclxuICBAaWYodHlwZS1vZigkcGFkZGluZykgPT0gbnVtYmVyIGFuZCB1bml0KCRwYWRkaW5nKSA9PSAncHgnKSB7XHJcbiAgICBwYWRkaW5nLXJpZ2h0OiAkcGFkZGluZztcclxuICAgIHBhZGRpbmctbGVmdDogJHBhZGRpbmc7XHJcblxyXG4gIH0gQGVsc2Uge1xyXG4gICAgQGVycm9yICdBcmd1bWVudCBgJHBhZGRpbmdgIHNob3VsZCBiZSBhIHN0cmluZyc7XHJcbiAgfVxyXG59XHJcblxyXG5cclxuLy8gTWVkaWFcclxuLy8gTWVkaWEgcXVlcmllcyBhY2NvcmRpbmcgdG8gXCJUaGUgMTAwJSBDb3JyZWN0IFdheSBUbyBEbyBDU1MgQnJlYWtwb2ludHNcIlxyXG4vLyAoaHR0cHM6Ly9tZWRpdW0uZnJlZWNvZGVjYW1wLmNvbS90aGUtMTAwLWNvcnJlY3Qtd2F5LXRvLWRvLWNzcy1icmVha3BvaW50cy04OGQ2YTViYTE4NjIpLlxyXG4vLyBAcGFyYW0ge1N0cmluZ30gJHNpemUgLSBCcmVha3BvaW50IHBpeGVsIHVuaXQgdmFsdWUuXHJcbi8vIEBleGFtcGxlXHJcbi8vICAgQGluY2x1ZGUgbWVkaWEoJ3Bob25lJykge31cclxuQG1peGluIG1lZGlhKCRzaXplKSB7XHJcbiAgQGlmICgkc2l6ZSA9PSAnZGVza3RvcCcpIHtcclxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQobWluLXdpZHRoOiAxMjAwcHgpIHtcclxuICAgICAgQGNvbnRlbnQ7XHJcbiAgICB9XHJcbiAgfSBAZWxzZSBpZiAoJHNpemUgPT0gJ3RhYmxldC1sYW5kc2NhcGUtdXAnKSB7XHJcbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kKG1pbi13aWR0aDogOTAwcHgpIHtcclxuICAgICAgQGNvbnRlbnQ7XHJcbiAgICB9XHJcbiAgfSBAZWxzZSBpZiAoJHNpemUgPT0gJ3RhYmxldC1sYW5kc2NhcGUnKSB7XHJcbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kKG1pbi13aWR0aDogOTAwcHgpIGFuZChtYXgtd2lkdGg6IDExOTlweCkge1xyXG4gICAgICBAY29udGVudDtcclxuICAgIH1cclxuICB9IEBlbHNlIGlmICgkc2l6ZSA9PSAndGFibGV0LWxhbmRzY2FwZS1kb3duJykge1xyXG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZChtYXgtd2lkdGg6IDExOTlweCkge1xyXG4gICAgICBAY29udGVudDtcclxuICAgIH1cclxuICB9IEBlbHNlIGlmICgkc2l6ZSA9PSAndGFibGV0LXBvcnRyYWl0LXVwJykge1xyXG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZChtaW4td2lkdGg6IDYwMHB4KSB7XHJcbiAgICAgIEBjb250ZW50O1xyXG4gICAgfVxyXG4gIH0gQGVsc2UgaWYgKCRzaXplID09ICd0YWJsZXQtcG9ydHJhaXQnKSB7XHJcbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kKG1pbi13aWR0aDogNjAwcHgpIGFuZChtYXgtd2lkdGg6IDg5OXB4KSB7XHJcbiAgICAgIEBjb250ZW50O1xyXG4gICAgfVxyXG4gIH0gQGVsc2UgaWYgKCRzaXplID09ICd0YWJsZXQtcG9ydHJhaXQtZG93bicpIHtcclxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQobWF4LXdpZHRoOiA4OTlweCkge1xyXG4gICAgICBAY29udGVudDtcclxuICAgIH1cclxuICB9IEBlbHNlIGlmICgkc2l6ZSA9PSAndGFibGV0Jykge1xyXG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZChtaW4td2lkdGg6IDYwMHB4KSBhbmQobWF4LXdpZHRoOiAxMTk5cHgpIHtcclxuICAgICAgQGNvbnRlbnQ7XHJcbiAgICB9XHJcbiAgfSBAZWxzZSBpZiAoJHNpemUgPT0gJ3Bob25lJykge1xyXG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZChtYXgtd2lkdGg6IDU5OXB4KSB7XHJcbiAgICAgIEBjb250ZW50O1xyXG4gICAgfVxyXG4gIH0gQGVsc2Uge1xyXG4gICAgQGNvbnRlbnQ7XHJcbiAgfVxyXG59XHJcbiIsIi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBUeXBvZ3JhcGh5XG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vL0ZvbnQgZmFtaWx5IG1hcC5cbiRmb250LWZhbWlseTogKFxuICAnZGVmYXVsdCc6ICdBcmlhbCdcbik7XG5cbi8vRm9udCBmYW1pbGllcy5cbiRmb250LWZhbWlseS1wcmltYXJ5OiAnVW5uYScsIHNlcmlmO1xuJGZvbnQtZmFtaWx5LXNlY29uZGFyeTogQXJpYWwsIEhlbHZldGljYSBOZXVlLCBIZWx2ZXRpY2EsIHNhbnMtc2VyaWY7XG4kZm9udC1mYW1pbHktdGVydGlhcnk6ICdBYmhheWEgTGlicmUnLCBzZXJpZjtcblxuXG4vLyBGb250IHNpemUgbWFwLlxuJGZvbnQtc2l6ZTogKFxuICAnaDEnOiA2MHB4LFxuICAnaDInOiA1MHB4LFxuICAnaDMnOiAzMHB4LFxuICAnaDQnOiAyMnB4LFxuICAnaDUnOiAyMHB4LFxuICAnaDYnOiAxOHB4LFxuICAncCc6IDE1cHhcbik7XG5cblxuLy8gTGluZSBoZWlnaHQgbWFwLlxuJGxpbmUtaGVpZ2h0OiAoXG4gICdoMSc6IDY1cHgsXG4gICdoMic6IDY1cHgsXG4gICdoMyc6IDM0cHgsXG4gICdoNCc6IDMycHgsXG4gICdoNSc6IDMycHgsXG4gICdoNic6IDMycHgsXG4gICdwJzogMzBweFxuKTtcbiIsIi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbi8vIEZ1bmN0aW9uc1xyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuLy8gVW5pY29kZVxyXG4vLyBQcmVzZXJ2ZSBlc2NhcGVkIHVuaWNvZGUgc3RyaW5nLlxyXG4vLyBAcGFyYW0ge1N0cmluZ30gJHN0cmluZyAtIEFuIHVuaWNvZGUgc3RyaW5nLlxyXG4vLyBAcmV0dXJuIHtTdHJpbmd9IEEgcHJlc2VydmVkIGVzY2FwZWQgdW5pY29kZSBzdHJpbmdcclxuLy8gc2Fzcy1saW50OmRpc2FibGUgcXVvdGVzXHJcbkBmdW5jdGlvbiB1bmljb2RlKCRzdHJpbmcpIHtcclxuICBAcmV0dXJuIHVucXVvdGUoXCJcXCdcIikgKyB1bnF1b3RlKHN0ci1pbnNlcnQoJHN0cmluZywgJ1xcXFwnLCAxKSkgKyB1bnF1b3RlKFwiXFwnXCIpO1xyXG59XHJcbi8vIHNhc3MtbGludDplbmFibGUgcXVvdGVzXHJcblxyXG5cclxuLy8gUkVNXHJcbi8vIENvbnZlcnQgcGl4ZWwgdW5pdHMgdG8gUkVNIHVuaXRzLlxyXG4vLyBAcGFyYW0ge051bWJlcn0gJHBpeGVscyAtIFBpeGVsIHZhbHVlLlxyXG4vLyBAcmV0dXJuIHsqfSAtIEEgY29udmVydGVkIGByZW1gIHVuaXQuXHJcbkBmdW5jdGlvbiByZW0oJHBpeGVscykge1xyXG4gIEBpZiAodW5pdGxlc3MoJHBpeGVscykpIHtcclxuICAgIEBlcnJvciAnVmFsdWUgZm9yIGAjeyRwaXhlbHN9YCBzaG91bGQgYmUgYSBgcHhgIHVuaXQuJztcclxuICB9XHJcbiAgQHJldHVybiAoKCRwaXhlbHMgLyAxMHB4KSAqIDFyZW0pO1xyXG59XHJcblxyXG5cclxuLy8gQ29sdW1uXHJcbi8vIENhbGN1bGF0ZSBnaXZlbiBjb2x1bW4gd2lkdGguXHJcbi8vIEBwYXJhbSB7TnVtYmVyfSAkY29sdW1uIC0gVGhlIGFtb3VudCBvZiBjb2x1bW5zIHRvIHNwYW4uXHJcbi8vIEBwYXJhbSB7TnVtYmVyfSAkY29sdW1ucyAtIFRoZSBhbW91bnQgb2YgY29sdW1ucyB0aGF0IGNhbiBiZSBzcGFubmVkLlxyXG4vLyBAcmV0dXJuIHtTdHJpbmd9IC0gUGVyY2VudGFnZSB2YWx1ZS5cclxuQGZ1bmN0aW9uIGNvbHVtbigkY29sdW1uLCAkY29sdW1uczogJGdyaWQtY29sdW1ucykge1xyXG4gIEByZXR1cm4gKCRjb2x1bW4gICogMTAwJSAvICRjb2x1bW5zKTtcclxufVxyXG5cclxuXHJcbi8vIENvbG9yXHJcbi8vIEdldCBhIGNvbG9yIHZhbHVlIGZyb20gdHdvIGxldmVscyBkZWVwIGluIHRoZSBgJGNvbG9yYCBtYXAuXHJcbi8vIEBwYXJhbSB7JHN0cmluZ30gJGtleSAtIEtleSBvZiB0aGUgY29sb3IgdG8gZ2V0IGZyb20gdGhlIG1hcC5cclxuLy8gQHBhcmFtIHtOdW1iZXJ9ICR2YWx1ZSAtIFZhbHVlIG9mIHRoZSBrZXkgdG8gZ2V0IGZyb20gdGhlIG1hcC5cclxuLy8gQHJldHVybiB7Kn0gQSBIU0xBIGNvbG9yIHZhbHVlLlxyXG5AZnVuY3Rpb24gY29sb3IoJGtleSwgJHZhbHVlKSB7XHJcbiAgQHJldHVybiBtYXAtZ2V0KG1hcC1nZXQoJGNvbG9ycywgJGtleSksICR2YWx1ZSk7XHJcbn1cclxuIiwiLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIENvbG9yXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vLyBDb2xvciBtYXAuXG4kY29sb3JzOiAoXG4gICdibGFjayc6IChcbiAgICAnMTAwJzogaHNsYSgwLCAwJSwgMCUsIDEpLFxuICAgICcyMDAnOiBoc2xhKDAsIDAlLCAyNCUsIDEpXG4gICksXG4gICd3aGl0ZSc6IChcbiAgICAnMTAwJzogaHNsYSgwLCAwJSwgMTAwJSwgMSksXG4gICksXG4gICdibHVlJzogKFxuICAgICcxMDAnOiBoc2xhKDIxNiwgNDUlLCAzNSUsIDEpLFxuICAgICcyMDAnOiBoc2xhKDIxNywgMTAwJSwgOTclLCAxKVxuICApLFxuICAnZ3JleSc6IChcbiAgICAnMjAwJzogaHNsYSgwLCAwJSwgNjklLCAxKSxcbiAgICAnMzAwJzogaHNsYSgwLCAwJSwgOTclLCAxKVxuICApLFxuICAnb3JhbmdlJzogKFxuICAgICcyMDAnOiBoc2xhKDIwLCAxMDAlLCA1MCUsIDEpXG4gIClcbik7XG5cbi8vIENvbG9yIHNob3J0aGFuZCB2YXJpYWJsZXMuXG5cbi8vIEJsYWNrXG4kY29sb3ItYmxhY2stMTAwOiAgICAgbWFwLWdldChtYXAtZ2V0KCRjb2xvcnMsICdibGFjaycpLCAnMTAwJyk7XG4kY29sb3ItYmxhY2stMjAwOiAgICAgbWFwLWdldChtYXAtZ2V0KCRjb2xvcnMsICdibGFjaycpLCAnMjAwJyk7XG5cbi8vIEdyZXlcbiRjb2xvci1ncmV5LTIwMDogICAgICBtYXAtZ2V0KG1hcC1nZXQoJGNvbG9ycywgJ2dyZXknKSwgJzIwMCcpO1xuJGNvbG9yLWdyZXktMzAwOiAgICAgIG1hcC1nZXQobWFwLWdldCgkY29sb3JzLCAnZ3JleScpLCAnMzAwJyk7XG5cbi8vIFdoaXRlXG4kY29sb3Itd2hpdGUtMTAwOiAgICAgbWFwLWdldChtYXAtZ2V0KCRjb2xvcnMsICd3aGl0ZScpLCAnMTAwJyk7XG5cbi8vIEJsdWVcbiRjb2xvci1ibHVlLTEwMDogICAgICBtYXAtZ2V0KG1hcC1nZXQoJGNvbG9ycywgJ2JsdWUnKSwgJzEwMCcpO1xuJGNvbG9yLWJsdWUtMjAwOiAgICAgIG1hcC1nZXQobWFwLWdldCgkY29sb3JzLCAnYmx1ZScpLCAnMjAwJyk7XG5cbi8vIE9yYW5nZVxuJGNvbG9yLW9yYW5nZS0yMDA6ICAgIG1hcC1nZXQobWFwLWdldCgkY29sb3JzLCAnb3JhbmdlJyksICcyMDAnKTtcblxuLy8gQm94IHNoYWRvd1xuJGJveC1zaGFkb3ctMTAwOiAgICAgICAgMCAwIDIwcHggMCByZ2JhKDQ5LCA4MSwgMTMwLCAwLjE1KTtcbiRib3gtc2hhZG93LTEwMC1ob3ZlcjogIDAgMCAyMHB4IDAgcmdiYSg0OSw4MSwxMzAsMC4zNik7XG5cblxuIiwiLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuICAgUmVzZXRcclxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbi8qKlxyXG4gKiBDdXN0b20gdXNlciBhZ2VudCByZXNldHMgYW5kIG92ZXJyaWRlcyB0aGF0IGFyZSBub3QgcHJlc2VudCBpblxyXG4gKiBOb3JtYWxpemUgOC4wLjAuIFRoaXMgbW9zdGx5IHJlbW92ZXMgc29tZSBhbm5veWluZyBtYXJnaW4gYW5kIHBhZGRpbmdcclxuICogZGVmYXVsdHMsIGJvcmRlciByYWRpdXMsIGFuZCBvdXRsaW5lcy5cclxuICovXHJcblxyXG5hIHtcclxuICBjb2xvcjogaW5oZXJpdDtcclxuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbn1cclxuXHJcblxyXG4vKipcclxuICogMS4gUmVtb3ZlIGJvcmRlciByYWRpdXMgb24gQ2hyb21lIDYyLjArIG9uIG1hY09TLlxyXG4gKi9cclxuXHJcbmJ1dHRvbiB7XHJcbiAgYm9yZGVyOiAwO1xyXG4gIGJvcmRlci1yYWRpdXM6IDA7IC8qIDEgKi9cclxuICBvdXRsaW5lOiBub25lO1xyXG4gIGJhY2tncm91bmQ6IG5vbmU7XHJcbiAgY3Vyc29yOiBwb2ludGVyO1xyXG59XHJcblxyXG5maWVsZHNldCB7XHJcbiAgbWFyZ2luOiAwO1xyXG4gIHBhZGRpbmc6IDA7XHJcbiAgYm9yZGVyOiAwO1xyXG59XHJcblxyXG5maWd1cmUge1xyXG4gIG1hcmdpbjogMDtcclxufVxyXG5cclxuaDEsXHJcbmgyLFxyXG5oMyxcclxuaDQsXHJcbmg1LFxyXG5oNiB7XHJcbiAgbWFyZ2luOiAwO1xyXG4gIHBhZGRpbmc6IDA7XHJcbiAgZm9udC1zaXplOiBpbmhlcml0O1xyXG4gIGZvbnQtd2VpZ2h0OiBpbmhlcml0O1xyXG59XHJcblxyXG5ociB7XHJcbiAgbWFyZ2luOiAwO1xyXG4gIHBhZGRpbmc6IDA7XHJcbn1cclxuXHJcblxyXG4vKipcclxuICogMS4gUmVtb3ZlIHdoaXRlIHNwYWNlLlxyXG4gKi9cclxuXHJcbmltZyB7XHJcbiAgbWF4LXdpZHRoOiAxMDAlO1xyXG4gIGhlaWdodDogYXV0bztcclxuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyAvKiAxICovXHJcbn1cclxuXHJcblxyXG4vKipcclxuICogMS4gUmVtb3ZlIGluaGVyaXRlZCB1c2VyIGFnZW50IGFwcGVhcmFuY2UuXHJcbiAqL1xyXG5cclxuaW5wdXQsXHJcbnNlbGVjdCxcclxudGV4dGFyZWEge1xyXG4gIG1heC13aWR0aDogMTAwJTtcclxuICBib3JkZXI6IDA7XHJcbiAgYm9yZGVyLXJhZGl1czogMDtcclxuICBvdXRsaW5lOiBub25lO1xyXG4gIGFwcGVhcmFuY2U6IG5vbmU7IC8qIDEgKi9cclxufVxyXG5cclxuXHJcbi8qKlxyXG4gKiAxLiBPbmx5IGFsbG93IHZlcnRpY2FsIHJlc2l6aW5nIHRvIHByZXZlbnQgdGhlIHRleHRhcmVhXHJcbiAqICAgIGZyb20gb3ZlcmZsb3dpbmcgdGhlIGNvbnRhaW5lci5cclxuICovXHJcblxyXG50ZXh0YXJlYSB7XHJcbiAgcmVzaXplOiB2ZXJ0aWNhbDtcclxufVxyXG5cclxudWwsXHJcbm9sIHtcclxuICBtYXJnaW46IDA7XHJcbiAgcGFkZGluZzogMDtcclxuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XHJcbn1cclxuXHJcbnAge1xyXG4gIG1hcmdpbjogMDtcclxufVxyXG5cclxuXHJcbi8qKlxyXG4gKiAxLiBDb2xsYXBzZSBib3JkZXJzIHRvIHByZXZlbnQgZG91YmxlIHNpZGVkIGJvcmRlcnMuXHJcbiAqL1xyXG5cclxudGFibGUge1xyXG4gIG1heC13aWR0aDogMTAwJTtcclxuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlOyAvKiAxICovXHJcbn1cclxuXHJcbnN0cm9uZyB7XHJcbiAgZm9udC13ZWlnaHQ6IDcwMDtcclxufVxyXG4iLCIvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQnV0dG9uc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuXG4vKipcbiAqIEJ1dHRvbiBiYXNlLlxuICovXG5cbi5idXR0b24ge1xuICBAaW5jbHVkZSBtZWRpYSgncGhvbmUnKSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZzogMTVweCA0cHg7XG4gIH1cblxuICBAaW5jbHVkZSBmb250KDE4cHgsIDIxcHgpO1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgcGFkZGluZzogMTVweCAyNXB4O1xuICB0cmFuc2l0aW9uOiBhbGwgMjUwbXMgZWFzZTtcbiAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS10ZXJ0aWFyeTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuNXB4O1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXG4gIHN2ZyB7XG4gICAgd2lkdGg6IDE4cHg7XG4gICAgaGVpZ2h0OiAxOHB4O1xuICB9XG5cbiAgJi5zdmctcmlnaHQgc3ZnIHtcbiAgICBtYXJnaW4tbGVmdDogMTBweDtcbiAgfVxuXG4gICYuc3ZnLWxlZnQgc3ZnIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gIH1cblxuICAmOjpiZWZvcmUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDVweDtcbiAgICB0cmFuc2l0aW9uOiB3aWR0aCAyNTBtcyBlYXNlO1xuICAgIGJhY2tncm91bmQ6ICRjb2xvci1ncmV5LTIwMDtcbiAgICBjb250ZW50OiAnJztcbiAgICB6LWluZGV4OiAyMDtcblxuICB9XG5cbiAgJjpob3ZlciB7XG5cbiAgICBAaW5jbHVkZSBtZWRpYSgnZGVza3RvcCcpIHtcbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5cbi8qKlxuICogQnV0dG9uIHByaW1hcnkgKGJsdWUpLlxuICovXG5cbi5idXR0b24tcHJpbWFyeS0tYmx1ZSB7XG4gIGJhY2tncm91bmQ6ICRjb2xvci1ibHVlLTEwMDtcbiAgY29sb3I6ICRjb2xvci13aGl0ZS0xMDA7XG59XG5cblxuLyoqXG4gKiBCdXR0b24gcHJpbWFyeSAod2hpdGUpLlxuICovXG5cbi5idXR0b24tcHJpbWFyeS0td2hpdGUge1xuICBiYWNrZ3JvdW5kOiAkY29sb3Itd2hpdGUtMTAwO1xuICBjb2xvcjogJGNvbG9yLWJsdWUtMTAwO1xufVxuXG5cbi8qKlxuICogQnV0dG9uIHNlY29uZGFyeSAoYmxhY2spLlxuICovXG5cbi5idXR0b24tc2Vjb25kYXJ5LS1ibGFjayB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICRjb2xvci1ibGFjay0xMDA7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBjb2xvcjogJGNvbG9yLWJsYWNrLTEwMDtcbn1cblxuXG4vKipcbiAqIEJ1dHRvbiBzZWNvbmRhcnkgKHdoaXRlKS5cbiAqL1xuXG4uYnV0dG9uLXNlY29uZGFyeS0td2hpdGUge1xuICBib3JkZXI6IDFweCBzb2xpZCAkY29sb3Itd2hpdGUtMTAwO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgY29sb3I6ICRjb2xvci13aGl0ZS0xMDA7XG59XG4iLCIvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4gICBDb250YWluZXJcclxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbi8qKlxyXG4gKiBUaGUgY29udGFpbmVyIG9iamVjdCBjZW50ZXJzIGFuIGVsZW1lbnQgaW4gdGhlIGRvY3VtZW50LlxyXG4gKi9cclxuXHJcbi5jb250YWluZXIge1xyXG4gIEBpbmNsdWRlIGNvbnRhaW5lcjtcclxufVxyXG4iLCIvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4vLyBEZWZpbml0aW9uc1xyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuLy8gR3JpZFxyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuLy8gR3JpZCB3aWR0aC5cclxuLy8gTWF4aW11bSBjb250YWluZXIgd2lkdGguXHJcbiRncmlkLXdpZHRoOiAxMDI0cHg7XHJcblxyXG4vLyBHcmlkIGNvbHVtbnMuXHJcbi8vIEFtb3VudCBvZiBncmlkIGNvbHVtbnMgdG8gY2FsY3VsYXRlIGEgY29sdW1uIHdpZHRoIHdpdGguXHJcbiRncmlkLWNvbHVtbnM6IDEyO1xyXG5cclxuLy8gR3JpZCBjb2x1bW4uXHJcbi8vIENvbHVtbiB3aWR0aCBpbiBwaXhlbHMuXHJcbiRncmlkLWNvbHVtbjogNjBweDtcclxuXHJcbi8vIEdyaWQgZ2FwLlxyXG4vLyBTcGFjZSBiZXR3ZWVuIGdyaWQgY29sdW1ucywgYXV0b21hdGVkLlxyXG4kZ3JpZC1nYXA6ICgkZ3JpZC13aWR0aCAtICgkZ3JpZC1jb2x1bW4gKiAkZ3JpZC1jb2x1bW5zKSkgLyAkZ3JpZC1jb2x1bW5zO1xyXG5cclxuXHJcbi8vIEFzc2V0c1xyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuLy8gSW1hZ2UgcGF0aC5cclxuJGltYWdlLXBhdGg6ICcuLi9pbWFnZXMvJztcclxuXHJcblxyXG4vLyBCb2R5XHJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4vLyBCb2R5IGJhY2tncm91bmQgY29sb3IuXHJcbiRib2R5LWJhY2tncm91bmQtY29sb3I6ICRjb2xvci13aGl0ZS0xMDA7XHJcblxyXG4vLyBCb2R5IGNvbG9yLlxyXG4kYm9keS1jb2xvcjogJGNvbG9yLWJsYWNrLTEwMDtcclxuXHJcbi8vIEJvZHkgZm9udCBmYW1pbHkuXHJcbiRib2R5LWZvbnQtZmFtaWx5OiBtYXAtZ2V0KCRmb250LWZhbWlseSwgJ2RlZmF1bHQnKTtcclxuXHJcbi8vIEJvZHkgdGV4dC5cclxuJGJvZHktdGV4dDogJ3AnO1xyXG5cclxuXHJcbi8vIE90aGVyXHJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4vLyBMaW5rIGNvbG9yLlxyXG4kbGluay1jb2xvcjogJGNvbG9yLWJsYWNrLTEwMDtcclxuXHJcblxyXG4vLyBSZXNwb25zaXZlXHJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4vLyBHcmlkIGJyZWFrcG9pbnQgYWxpYXMuXHJcbiRicmVha3BvaW50czogKFxyXG4gIHhzOiBudWxsLFxyXG4gIHNtOiAncGhvbmUnLFxyXG4gIG1kOiAndGFibGV0LXBvcnRyYWl0LXVwJyxcclxuICBsZzogJ3RhYmxldC1sYW5kc2NhcGUtdXAnLFxyXG4gIHhsOiAnZGVza3RvcCdcclxuKTtcclxuXHJcbiIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbiAgIENvbnRlbnQgQ29uc3RyYWludFxyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuLyoqXHJcbiAqIFRoZSBjb250ZW50IGNvbnN0cmFpbnQgaXMgYSBjb25zdHJhaW50IGZvciBhbGwgdGhlIGNvbnRlbnQgd2l0aGluXHJcbiAqIHRoZSBkb2N1bWVudC4gSXQgY2FuIGJlIG1hbmlwdWxhdGVkIGJ5IENTUyBvciBKYXZhU2NyaXB0IHdpdGhvdXRcclxuICogaW5mbHVlbmNpbmcgdGhlIGJvZHkuXHJcbiAqL1xyXG5cclxuLmNvbnRlbnQtY29uc3RyYWludCB7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIG1pbi1oZWlnaHQ6IDEwMHZoO1xyXG59XHJcbiIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbiAgIEZsZXhcclxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbi8qKlxyXG4gKiBFeGFtcGxlIG9mIGEgZmxleCBiYXNlZCBjb2x1bW4gZ3JpZCBsYXlvdXQgaW4gcHJhY3RpY2U6XHJcbiAqXHJcbiAqIDxkaXYgY2xhc3M9XCJyb3dcIj5cclxuICogICA8ZGl2IGNsYXNzPVwiY29sIGNvbC14cy02IGNvbC1zbS0xMlwiPjwvZGl2PlxyXG4gKiAgIDxkaXYgY2xhc3M9XCJjb2wgY29sLXhzLTYgY29sLXNtLTEyXCI+PC9kaXY+XHJcbiAqIDwvZGl2PlxyXG4gKlxyXG4gKiBUaGlzIGV4YW1wbGUgd2lsbCBjcmVhdGUgYSByb3cgd2l0aCB0d28gY29sdW1ucyBlYWNoIGZpbGxpbmcgaGFsZiB0aGUgd2lkdGhcclxuICogb2YgdGhlIHJvdyBvbiBhbGwgbWVkaWEsIGJ1dCB3aWxsIGNvbnZlcnQgdG8gYSBmdWxsIHdpZHRoIGNvbHVtbiBvbiB0aGVcclxuICogc21hbGwgYC1zbWAgYnJlYWtwb2ludCBhbGlhcywgd2hpY2ggaXMgbW9iaWxlIG9ubHkuIFJlZmVyIHRvXHJcbiAqIGBzZXR0aW5ncy9fZGVmaW5pdGlvbnMuc2Nzc2AgZm9yIGFsbCBicmVha3BvaW50IGFsaWFzLlxyXG4gKi9cclxuXHJcbi8qKlxyXG4gKiBGbGV4IG9iamVjdC5cclxuICpcclxuICogVGlwOiBVc2UgZmxleCBvbiBhIGNvbHVtbiB0byBtYWtlIHRoZSBib3ggdGhlIHNhbWUgaGVpZ2h0IGFzIHRoZSBjb2x1bW4uXHJcbiAqL1xyXG5cclxuLmZsZXgge1xyXG4gIGRpc3BsYXk6IGZsZXg7XHJcbn1cclxuXHJcbi5mbGV4LXdyYXAge1xyXG4gIGRpc3BsYXk6IGZsZXg7XHJcbiAgZmxleC13cmFwOiB3cmFwO1xyXG59XHJcblxyXG5cclxuXHJcbi8qKlxyXG4gKiBGbGV4IG9iamVjdCB3aXRoIGEgY29sdW1uIGJhc2VkIGxheW91dCBzeXN0ZW0uXHJcbiAqL1xyXG5cclxuLnJvdyB7XHJcbiAgZGlzcGxheTogZmxleDtcclxuICBmbGV4OiAwIDEgYXV0bztcclxuICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xyXG4gIG1hcmdpbjogMCAtI3soJGdyaWQtZ2FwLzIpfTtcclxufVxyXG5cclxuXHJcbi8qKlxyXG4gKiBCb3gsIHRoZSBpbnNpZGUgb2YgYSBjb2x1bW4uXHJcbiAqL1xyXG5cclxuLmJveCB7XHJcbiAgZmxleDogMTtcclxufVxyXG5cclxuXHJcbi8vIExvb3AgdGhyb3VnaCBhbGwgdGhlIGtleXMgaW4gdGhlIGAkYnJlYWtwb2ludHNgIHZhcmlhYmxlIG1hcCBkZWZpbmVkIGluXHJcbi8vIGBzZXR0aW5ncy9fZGVmaW5pdGlvbnMuc2Nzc2AuXHJcbkBlYWNoICRrZXksICR2YWx1ZSBpbiAkYnJlYWtwb2ludHMge1xyXG5cclxuICAvLyBDcmVhdGUgYSBtZWRpYSBxdWVyeSBmb3IgZXZlcnkga2V5IGluIGAkYnJlYWtwb2ludHNgLlxyXG4gIEBpbmNsdWRlIG1lZGlhKCR2YWx1ZSkge1xyXG5cclxuICAgIC8vIEl0ZXJhdGUgZnJvbSAxIHRocm91Z2ggdGhlIGFtb3VudCBvZiBncmlkIGNvbHVtbnMgZGVmaW5lZCBieVxyXG4gICAgLy8gYCRncmlkLWNvbHVtbnNgIGluIGBzZXR0aW5ncy9fZGVmaW5pdGlvbnMuc2Nzc2AuXHJcbiAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRncmlkLWNvbHVtbnMge1xyXG5cclxuICAgICAgLyoqXHJcbiAgICAgICAqIENvbHVtbiAjeyRpfSBmb3IgdGhlIGAjeyRrZXl9YCBicmVha3BvaW50LlxyXG4gICAgICAgKi9cclxuXHJcbiAgICAgIC5jb2wtI3ska2V5fS0jeyRpfSB7XHJcbiAgICAgICAgZmxleDogMCAxIGF1dG87XHJcbiAgICAgICAgd2lkdGg6IGNvbHVtbigkaSk7XHJcbiAgICAgICAgcGFkZGluZzogMCAoJGdyaWQtZ2FwLzIpO1xyXG4gICAgICB9XHJcblxyXG5cclxuICAgICAgLy8gT3V0cHV0IGFuIG9mZnNldCB1dGlsaXR5IGNsYXNzIGlmIHRoZSBpdGVyYXRvciBpcyBsZXNzIHRoYW4gdGhlIGFtb3VudFxyXG4gICAgICAvLyBvZiBncmlkIGNvbHVtbnMgZGVmaW5lZCBieSBgJGdyaWQtY29sdW1uc2AgaW5cclxuICAgICAgLy8gYHNldHRpbmdzL19kZWZpbml0aW9ucy5zY3NzYC5cclxuICAgICAgQGlmICgkaSA8ICRncmlkLWNvbHVtbnMpIHtcclxuXHJcbiAgICAgICAgLyoqXHJcbiAgICAgICAgICogT2Zmc2V0ICN7JGl9IGZvciB0aGUgYCN7JGtleX1gIGJyZWFrcG9pbnQuXHJcbiAgICAgICAgICovXHJcblxyXG4gICAgICAgIC5vZmZzZXQtI3ska2V5fS0jeyRpfSB7XHJcbiAgICAgICAgICBtYXJnaW4tbGVmdDogY29sdW1uKCRpKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcblxyXG4gICAgLy8gTG9vcCB0aHJvdWdoIGFsbCB2YWx1ZXMgZm9yIHRoZSBgYWxpZ24taXRlbXNgIHByb3BlcnR5LlxyXG4gICAgQGVhY2ggJHZhbHVlIGluIHN0cmV0Y2gsIGNlbnRlciwgZmxleC1zdGFydCwgZmxleC1lbmQsIGJhc2VsaW5lIHtcclxuXHJcbiAgICAgIC8qKlxyXG4gICAgICAgKiBBbGlnbiBgI3skdmFsdWV9YCBmb3IgdGhlICN7JGtleX0gYnJlYWtwb2ludC5cclxuICAgICAgICovXHJcblxyXG4gICAgICAuYWxpZ24tI3ska2V5fS0jeyR2YWx1ZX0ge1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiAkdmFsdWU7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcblxyXG4gICAgLy8gTG9vcCB0aHJvdWdoIGFsbCB2YWx1ZXMgZm9yIHRoZSBganVzdGlmeS1jb250ZW50YCBwcm9wZXJ0eS5cclxuICAgIEBlYWNoICR2YWx1ZSBpbiBzdGFydCwgY2VudGVyLCBzcGFjZS1iZXR3ZWVuLCBzcGFjZS1hcm91bmQsIHNwYWNlLWV2ZW5seSwgZmxleC1zdGFydCwgZmxleC1lbmQge1xyXG5cclxuICAgICAgLyoqXHJcbiAgICAgICAqIEp1c3RpZnkgYCN7JHZhbHVlfWAgZm9yIHRoZSAjeyRrZXl9IGJyZWFrcG9pbnQuXHJcbiAgICAgICAqL1xyXG5cclxuICAgICAgLmp1c3RpZnktI3ska2V5fS0jeyR2YWx1ZX0ge1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogJHZhbHVlO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG5cclxuICAgIC8vIExvb3AgdGhyb3VnaCBldmVyeSBkaXJlY3Rpb24gZnJvbSBsZWZ0IHRvIHJpZ2h0LlxyXG4gICAgQGVhY2ggJGRpcmVjdGlvbiBpbiBsZWZ0LCByaWdodCB7XHJcblxyXG4gICAgICAvKipcclxuICAgICAgICogQmxlZWQgI3skZGlyZWN0aW9ufSBmb3IgdGhlICN7JGtleX0gYnJlYWtwb2ludC5cclxuICAgICAgICovXHJcblxyXG4gICAgICAuYmxlZWQtI3ska2V5fS0jeyRkaXJlY3Rpb259IHtcclxuICAgICAgICBwYWRkaW5nLSN7JGRpcmVjdGlvbn06IDA7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBPcmRlciBmaXJzdCBmb3IgdGhlIGAjeyRrZXl9YCBicmVha3BvaW50LlxyXG4gICAgICovXHJcblxyXG4gICAgLmZpcnN0LSN7JGtleX0ge1xyXG4gICAgICBvcmRlcjogLTE7XHJcbiAgICB9XHJcblxyXG5cclxuICAgIC8qKlxyXG4gICAgICogT3JkZXIgbGFzdCBmb3IgdGhlIGAjeyRrZXl9YCBicmVha3BvaW50LlxyXG4gICAgICovXHJcblxyXG4gICAgLmxhc3QtI3ska2V5fSB7XHJcbiAgICAgIG9yZGVyOiAxO1xyXG4gICAgfVxyXG5cclxuXHJcbiAgICAvKipcclxuICAgICAqIFJldmVyc2Ugb3JkZXIgZm9yIHRoZSBgI3ska2V5fWAgYnJlYWtwb2ludC5cclxuICAgICAqL1xyXG5cclxuICAgIC5yZXZlcnNlLSN7JGtleX0ge1xyXG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBIZWFkaW5nXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIEhlYWRpbmcgYmFzZS5cbiAqL1xuXG4uaGVhZGluZyB7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktcHJpbWFyeTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcblxuICAmLnRvcC1saW5lIHtcbiAgICBAaW5jbHVkZSBtZWRpYSgncGhvbmUnKSB7XG4gICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICB9XG5cbiAgICBwYWRkaW5nLXRvcDogMTBweDtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIG1heC13aWR0aDogMTg1cHg7XG4gICAgICBoZWlnaHQ6IDFweDtcbiAgICAgIGJhY2tncm91bmQ6ICRjb2xvci1ibHVlLTEwMDtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgIH1cbiAgfVxuXG4gICYudG9wLWxpbmUtY2VudGVyIHtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICByaWdodDogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBtYXJnaW46IGF1dG87XG4gICAgfVxuICB9XG5cbiAgJi5jZW50ZXIge1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG5cblxuLyoqXG4gKiBIZWFkaW5nIDFcbiAqL1xuXG4uaGVhZGluZy0xIHtcbiAgQGluY2x1ZGUgbWVkaWEoJ3Bob25lJykge1xuICAgIEBpbmNsdWRlIGZvbnQoNDVweCwgNjVweClcbiAgfVxuXG4gIEBpbmNsdWRlIGZvbnQoNjBweCwgNjVweCk7XG4gIGxldHRlci1zcGFjaW5nOiAxLjY3cHg7XG59XG5cblxuLyoqXG4gKiBIZWFkaW5nIDJcbiAqL1xuXG4uaGVhZGluZy0yIHtcbiAgQGluY2x1ZGUgbWVkaWEoJ3Bob25lJykge1xuICAgIEBpbmNsdWRlIGZvbnQoMzVweCwgNDVweCk7XG4gIH1cblxuICBAaW5jbHVkZSBmb250KDUwcHgsIDY1cHgpO1xuICBsZXR0ZXItc3BhY2luZzogMS4zOXB4O1xufVxuXG5cbi8qKlxuICogSGVhZGluZyAzXG4gKi9cblxuLmhlYWRpbmctMyB7XG4gIEBpbmNsdWRlIG1lZGlhKCdwaG9uZScpIHtcbiAgICBAaW5jbHVkZSBmb250KDI1cHgsIDI5cHgpO1xuICB9XG5cbiAgQGluY2x1ZGUgZm9udCgzMHB4LCAzNHB4KTtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuODNweDtcbn1cbiIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbiAgIExpbmtzXHJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG5cclxuLyoqXHJcbiAqIExpbmsgYmFzZS5cclxuICovXHJcblxyXG4ubGluayB7XHJcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XHJcbiAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1zZWNvbmRhcnk7XHJcblxyXG4gIHN2ZyB7XHJcbiAgICB3aWR0aDogMThweDtcclxuICAgIGhlaWdodDogMThweDtcclxuICB9XHJcblxyXG4gICYuc3ZnLXJpZ2h0IHN2ZyB7XHJcbiAgICBtYXJnaW4tbGVmdDogMTBweDtcclxuICB9XHJcblxyXG4gICYuc3ZnLWxlZnQgc3ZnIHtcclxuICAgIG1hcmdpbi1yaWdodDogMTBweDtcclxuICB9XHJcblxyXG4gICYudW5kZXJsaW5lIHtcclxuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xyXG4gIH1cclxufVxyXG5cclxuXHJcbi8qKlxyXG4gKiBMaW5rIChibHVlKS5cclxuICovXHJcblxyXG4ubGluay0tYmx1ZSB7XHJcbiAgY29sb3I6ICRjb2xvci1ibHVlLTEwMDtcclxufVxyXG4iLCIvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4gICBTZWN0aW9uXHJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG5cclxuLyoqXHJcbiAqICBNYXJnaW4uXHJcbiAqL1xyXG4ubTUtdG9wIHtcclxuICBtYXJnaW4tdG9wOiA1cHg7XHJcbn1cclxuXHJcbi5tNS1ib3R0b20ge1xyXG4gIG1hcmdpbi1ib3R0b206IDVweDtcclxufVxyXG5cclxuLm0xMC10b3Age1xyXG4gIG1hcmdpbi10b3A6IDEwcHg7XHJcbn1cclxuXHJcbi5tMTAtYm90dG9tIHtcclxuICBtYXJnaW4tYm90dG9tOiAxMHB4ICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5tMTUtdG9wIHtcclxuICBtYXJnaW4tdG9wOiAxNXB4O1xyXG59XHJcblxyXG4ubTE1LWJvdHRvbSB7XHJcbiAgbWFyZ2luLWJvdHRvbTogMTVweDtcclxufVxyXG5cclxuLm0yMC10b3Age1xyXG4gIG1hcmdpbi10b3A6IDIwcHg7XHJcbn1cclxuXHJcbi5tMjAtYm90dG9tIHtcclxuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG59XHJcblxyXG5cclxuLm0zMC10b3Age1xyXG4gIG1hcmdpbi10b3A6IDMwcHg7XHJcbn1cclxuXHJcbi5tMzAtYm90dG9tIHtcclxuICBtYXJnaW4tYm90dG9tOiAzMHB4O1xyXG59XHJcblxyXG4ubTQwLXRvcCB7XHJcbiAgbWFyZ2luLXRvcDogNDBweDtcclxufVxyXG5cclxuLm00MC1ib3R0b20ge1xyXG4gIG1hcmdpbi1ib3R0b206IDQwcHg7XHJcbn1cclxuXHJcbi5tNTAtdG9wIHtcclxuICBtYXJnaW4tdG9wOiA1MHB4O1xyXG59XHJcblxyXG4ubTUwLWJvdHRvbSB7XHJcbiAgbWFyZ2luLWJvdHRvbTogNTBweDtcclxufVxyXG5cclxuLm02MC10b3Age1xyXG4gIG1hcmdpbi10b3A6IDYwcHg7XHJcbn1cclxuXHJcbi5tNjAtYm90dG9tIHtcclxuICBtYXJnaW4tYm90dG9tOiA2MHB4O1xyXG59XHJcblxyXG4ubTgwLXRvcCB7XHJcbiAgbWFyZ2luLXRvcDogODBweDtcclxufVxyXG5cclxuLm04MC1ib3R0b20ge1xyXG4gIG1hcmdpbi1ib3R0b206IDgwcHg7XHJcbn1cclxuXHJcbi5tMTAwLXRvcCB7XHJcbiAgbWFyZ2luLXRvcDogMTAwcHg7XHJcbn1cclxuXHJcbi5tMTAwLWJvdHRvbSB7XHJcbiAgbWFyZ2luLWJvdHRvbTogMTAwcHg7XHJcbn1cclxuXHJcblxyXG4vKipcclxuICogIEZvbnQgd2VpZ2h0LlxyXG4gKi9cclxuXHJcblxyXG4uZm9udC13ZWlnaHQtMTAwIHtcclxuICBmb250LXdlaWdodDogMTAwO1xyXG59XHJcblxyXG4uZm9udC13ZWlnaHQtMzAwIHtcclxuICBmb250LXdlaWdodDogMzAwO1xyXG59XHJcblxyXG4uZm9udC13ZWlnaHQtNjAwIHtcclxuICBmb250LXdlaWdodDogNjAwO1xyXG59XHJcblxyXG4uZm9udC13ZWlnaHQtNzAwIHtcclxuICBmb250LXdlaWdodDogNzAwO1xyXG59XHJcblxyXG4uZm9udC13ZWlnaHQtOTAwIHtcclxuICBmb250LXdlaWdodDogOTAwO1xyXG59XHJcblxyXG5cclxuXHJcbi8qKlxyXG4gKiAgVGV4dCBhbGlnbm1lbnQuXHJcbiAqL1xyXG5cclxuLnRleHQtYWxpZ24tbGVmdCB7XHJcbiAgdGV4dC1hbGlnbjogbGVmdDtcclxufVxyXG4iLCIvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4gICBXcmFwcGVyXHJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4vKipcclxuICogVGhlIHdyYXBwZXIgb2JqZWN0IGNlbnRlcnMgYW4gZWxlbWVudCBpbiB0aGUgZG9jdW1lbnQuXHJcbiAqL1xyXG5cclxuJHdlYnNpdGUtd2lkdGg6ICAgMTI0MHB4O1xyXG4kd2Vic2l0ZS1wYWRkaW5nLWRlc2t0b3A6IDIwcHg7XHJcbiR3ZWJzaXRlLXBhZGRpbmctdGFibGV0LWxhbmRzY2FwZTogNTBweDtcclxuJHdlYnNpdGUtcGFkZGluZy10YWJsZXQtcG9ydHJhaXQ6IDYwcHg7XHJcbiR3ZWJzaXRlLXBhZGRpbmctcGhvbmU6IDIwcHg7XHJcblxyXG5cclxuLyoqXHJcbiAqIFdyYXBwZXIgKGRlZmF1bHQpXHJcbiAqL1xyXG5cclxuLndyYXBwZXIge1xyXG5cclxuICBAaW5jbHVkZSBtZWRpYSgncGhvbmUnKSB7XHJcbiAgICBAaW5jbHVkZSBjb250YWluZXIoJHdlYnNpdGUtd2lkdGgsICR3ZWJzaXRlLXBhZGRpbmctcGhvbmUpO1xyXG4gIH1cclxuXHJcbiAgQGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1wb3J0cmFpdCcpIHtcclxuICAgIEBpbmNsdWRlIGNvbnRhaW5lcigkd2Vic2l0ZS13aWR0aCwgJHdlYnNpdGUtcGFkZGluZy10YWJsZXQtcG9ydHJhaXQpO1xyXG4gIH1cclxuXHJcbiAgQGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1sYW5kc2NhcGUnKSB7XHJcbiAgICBAaW5jbHVkZSBjb250YWluZXIoJHdlYnNpdGUtd2lkdGgsICR3ZWJzaXRlLXBhZGRpbmctdGFibGV0LWxhbmRzY2FwZSk7XHJcbiAgfVxyXG5cclxuICBAaW5jbHVkZSBjb250YWluZXIoJHdlYnNpdGUtd2lkdGgsICR3ZWJzaXRlLXBhZGRpbmctZGVza3RvcCk7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG59XHJcblxyXG5cclxuLyoqXHJcbiAqIFdyYXBwZXIgKGZ1bGwgd2lkdGgpXHJcbiAqL1xyXG5cclxuLndyYXBwZXItLWZ1bGwge1xyXG4gIHdpZHRoOiAxMDAlO1xyXG4gIG1heC13aWR0aDogMTAwJTtcclxuICBwYWRkaW5nOiAwO1xyXG59XHJcblxyXG4ud3JhcHBlci0tc21hbGwge1xyXG4gIEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtbGFuZHNjYXBlJykge1xyXG4gICAgbWF4LXdpZHRoOiA3NjBweDtcclxuICB9XHJcblxyXG4gIG1heC13aWR0aDogODQwcHg7XHJcbiAgbWFyZ2luOiBhdXRvO1xyXG59XHJcblxyXG4iLCIvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQ01TIE91dHB1dFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBFdmVyeSBjb25jZWl2YWJsZSBIVE1MIGVsZW1lbnQgd2l0aGluIGEgYC5jbXMtb3V0cHV0YCB3cmFwcGVyLlxuICpcbiAqIDEuIEV4Y2x1ZGUgbGFzdCBjaGlsZHMuXG4gKi9cblxuLmNtcy1vdXRwdXQge1xuXG4gID4gKiB7XG5cbiAgICAmOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMWVtOyAvKiAxICovXG4gICAgfVxuICB9XG5cbiAgdWwge1xuICAgIGxpc3Qtc3R5bGUtdHlwZTogZGlzYztcbiAgfVxuXG4gIG9sIHtcbiAgICBsaXN0LXN0eWxlLXR5cGU6IGRlY2ltYWw7XG4gIH1cblxuICBwID4gYSB7XG4gICAgY29sb3I6ICRsaW5rLWNvbG9yO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICB9XG4gIH1cblxuICBoMSB7XG4gICAgQGluY2x1ZGUgbWVkaWEoJ3Bob25lJykge1xuICAgICAgQGluY2x1ZGUgZm9udCg0NXB4LCA2NXB4KVxuICAgIH1cblxuICAgIEBpbmNsdWRlIGZvbnQoNjBweCwgNjVweCk7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDEuNjdweDtcbiAgfVxuXG4gIGgyIHtcbiAgICBAaW5jbHVkZSBtZWRpYSgncGhvbmUnKSB7XG4gICAgICBAaW5jbHVkZSBmb250KDM1cHgsIDQ1cHgpO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGZvbnQoNTBweCwgNjVweCk7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDEuMzlweDtcbiAgfVxuXG4gIGgzIHtcbiAgICBAaW5jbHVkZSBtZWRpYSgncGhvbmUnKSB7XG4gICAgICBAaW5jbHVkZSBmb250KDI1cHgsIDI5cHgpO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGZvbnQoMjVweCwgMjlweCk7XG4gICAgbWFyZ2luLWJvdHRvbTogMTBweCAhaW1wb3J0YW50O1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktcHJpbWFyeTtcbiAgfVxufVxuIiwiLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIENvbnRhY3QgZm9ybS5cbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogTWFpbi5cbiAqL1xuXG4uY29udGFjdC1mb3JtIHtcbiAgQGluY2x1ZGUgbWVkaWEoJ3Bob25lJykge1xuICAgIEBpbmNsdWRlIHBhZGRpbmcteCg1MHB4KTtcbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtbGFuZHNjYXBlLWRvd24nKSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWF4LXdpZHRoOiA4MjBweDtcbiAgICBtYXJnaW46IGF1dG87XG4gIH1cblxuICBAaW5jbHVkZSBwYWRkaW5nLXgoMTAwcHgpO1xuXG4gIC5jbXMtb3V0cHV0IHtcbiAgICBAaW5jbHVkZSBtZWRpYSgncGhvbmUnKSB7XG4gICAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYSgndGFibGV0LXBvcnRyYWl0Jykge1xuICAgICAgbWFyZ2luLXRvcDogMzBweDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDUwcHg7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1sYW5kc2NhcGUnKSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiA1MHB4O1xuICAgIH1cblxuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1heC13aWR0aDogNTAwcHg7XG4gICAgbWFyZ2luLXRvcDogNTBweDtcbiAgfVxufVxuXG4uY29udGFjdC1mb3JtX190aXRsZSB7XG4gIEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtbGFuZHNjYXBlLWRvd24nKSB7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIH1cbiAgd2lkdGg6IDEwMCU7XG5cbiAgJjo6YmVmb3JlIHtcbiAgICBAaW5jbHVkZSBtZWRpYSgndGFibGV0LWxhbmRzY2FwZS1kb3duJykge1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICBtYXJnaW46IGF1dG87XG4gICAgfVxuICB9XG59XG5cbi5jb250YWN0LWZvcm1fX2NvbnRlbnQge1xuICBAaW5jbHVkZSBtZWRpYSgndGFibGV0LWxhbmRzY2FwZS1kb3duJykge1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxuXG4gIGFsaWduLWNvbnRlbnQ6IGNlbnRlcjtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuXG4uY29udGFjdC1mb3JtX19mb3JtIHtcbiAgQGluY2x1ZGUgbWVkaWEoJ3Bob25lJykge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmc6IDMwcHggMTBweCA1MHB4O1xuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1wb3J0cmFpdCcpIHtcbiAgICBwYWRkaW5nOiAzMHB4IDMwcHggNTBweDtcbiAgfVxuXG4gIHBhZGRpbmc6IDMwcHg7XG4gIGJhY2tncm91bmQ6ICRjb2xvci1ibHVlLTIwMDtcbn1cblxuXG4vKipcbiAqIEdyYXZpdHkgZm9ybXMgc2V0dGluZ3MuXG4gKi9cblxuLy9zYXNzLWxpbnQ6ZGlzYWJsZSBjbGFzcy1uYW1lLWZvcm1hdFxuXG4uZ2Zvcm1fdGl0bGUge1xuICBAaW5jbHVkZSBtZWRpYSgndGFibGV0LXBvcnRyYWl0LWRvd24nKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgfVxuXG4gIG1hcmdpbi1ib3R0b206IDUwcHg7XG59XG5cbi5nZm9ybV92YWxpZGF0aW9uX2NvbnRhaW5lciAge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4uZ2Zvcm1fZmllbGRzID4gbGkge1xuICBtYXJnaW46IDA7XG59XG5cbi5nZmllbGQge1xuICBAaW5jbHVkZSBtZWRpYSgncGhvbmUnKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtcG9ydHJhaXQnKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgfVxuXG4gIG1hcmdpbi1ib3R0b206IDQwcHg7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG5cbmlucHV0W3R5cGU9J3RleHQnXSB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDQwcHg7XG4gIHBhZGRpbmc6IDAgMTBweDtcbiAgYm9yZGVyOiAxcHggc29saWQgJGNvbG9yLWJsdWUtMTAwO1xuICBiYWNrZ3JvdW5kOiAkY29sb3ItYmx1ZS0yMDA7XG4gIGNvbG9yOiAkY29sb3ItYmx1ZS0xMDA7XG59XG5cbnRleHRhcmVhIHtcbiAgQGluY2x1ZGUgbWVkaWEoJ3Bob25lJykge1xuICAgIGhlaWdodDogMTUwcHg7XG4gIH1cblxuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiA5MHB4O1xuICBwYWRkaW5nOiAxMHB4O1xuICBib3JkZXI6IDFweCBzb2xpZCAkY29sb3ItYmx1ZS0xMDA7XG4gIGJhY2tncm91bmQ6ICRjb2xvci1ibHVlLTIwMDtcbiAgY29sb3I6ICRjb2xvci1ibHVlLTEwMDtcbiAgcmVzaXplOiBub25lO1xufVxuXG4udmFsaWRhdGlvbl9lcnJvciB7XG4gIG1hcmdpbi10b3A6IC0yMHB4O1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICBjb2xvcjogJGNvbG9yLW9yYW5nZS0yMDA7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbn1cblxuLnZhbGlkYXRpb25fbWVzc2FnZSB7XG4gIGNvbG9yOiAkY29sb3Itb3JhbmdlLTIwMDtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xufVxuXG4vL3Nhc3MtbGludDplbmFibGUgY2xhc3MtbmFtZS1mb3JtYXRcblxuXG4vKipcbiAqIEFkZGl0aW9uYWwgcnVsZXMgZm9yIHRoZSBmb3JtLlxuICovXG5cbi5tb2JpbGUtbWVudSArIC5jb250YWN0LWZvcm0ge1xuICBAaW5jbHVkZSBtZWRpYSgncGhvbmUnKSB7XG4gICAgcGFkZGluZy10b3A6IDExMHB4O1xuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1wb3J0cmFpdCcpIHtcbiAgICBwYWRkaW5nLXRvcDogMTUwcHg7XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYSgndGFibGV0LWxhbmRzY2FwZScpIHtcbiAgICBwYWRkaW5nLXRvcDogMTkwcHg7XG4gIH1cblxuICBwYWRkaW5nLXRvcDogMTYwcHg7XG59XG4iLCIvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQ29udGVudCBkZWZhdWx0XG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIE1haW4uXG4gKi9cblxuLmNvbnRlbnQtZGVmYXVsdCB7XG4gIEBpbmNsdWRlIG1lZGlhKCdwaG9uZScpIHtcbiAgICBwYWRkaW5nOiA1MHB4IDEwcHg7XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYSgndGFibGV0LXBvcnRyYWl0Jykge1xuICAgIHBhZGRpbmc6IDUwcHggMzBweDtcbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtcG9ydHJhaXQtZG93bicpIHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYSgndGFibGV0LWxhbmRzY2FwZScpIHtcbiAgICBtYXgtd2lkdGg6IDczNXB4O1xuICAgIHBhZGRpbmc6IDEwMHB4IDc1cHg7XG4gIH1cblxuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiA4MjBweDtcbiAgaGVpZ2h0OiAxMDAlO1xuICBwYWRkaW5nOiAxMDBweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gIC8vIEJhY2tncm91bmQgY29sb3JzLlxuICAmLmJhY2tncm91bmQtY29sb3ItYmx1ZSB7XG4gICAgQGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1wb3J0cmFpdC1kb3duJykge1xuICAgICAgQGluY2x1ZGUgbWFyZ2luLXgoNTBweCk7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWFyZ2luLXgoMTAwcHgpO1xuICAgIGJhY2tncm91bmQ6ICRjb2xvci1ibHVlLTIwMDtcblxuICAgIC5idXR0b24ge1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgJGNvbG9yLWJsYWNrLTIwMDtcbiAgICAgIGNvbG9yOiAkY29sb3ItYmxhY2stMjAwO1xuICAgIH1cbiAgfVxuXG4gICYuYmFja2dyb3VuZC1jb2xvci13aGl0ZSB7XG4gICAgYmFja2dyb3VuZDogJGNvbG9yLXdoaXRlLTEwMDtcblxuICAgIC5idXR0b24ge1xuICAgICAgYm9yZGVyOiAwO1xuICAgICAgYmFja2dyb3VuZDogJGNvbG9yLWJsdWUtMTAwO1xuICAgICAgY29sb3I6ICRjb2xvci13aGl0ZS0xMDA7XG4gICAgfVxuICB9XG5cbiAgLy9DTVMgb3V0cHV0IHJ1bGVzLlxuICAuY21zLW91dHB1dCB7XG4gICAgQGluY2x1ZGUgbWVkaWEoJ3Bob25lJykge1xuICAgICAgbWFyZ2luLXRvcDogNDBweDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYSgndGFibGV0LXBvcnRyYWl0Jykge1xuICAgICAgbWFyZ2luLXRvcDogMzBweDtcbiAgICB9XG5cbiAgICBtYXJnaW4tdG9wOiA1MHB4O1xuICB9XG5cbiAgLy8gQnV0dG9uIHNwZWNpZmljIHNldHRpbmdzLlxuICAuYnV0dG9uIHtcbiAgICBAaW5jbHVkZSBtZWRpYSgndGFibGV0LXBvcnRyYWl0LWRvd24nKSB7XG4gICAgICBtYXJnaW4tdG9wOiAzMHB4O1xuICAgIH1cblxuICAgIG1hcmdpbi10b3A6IDUwcHg7XG4gIH1cbn1cblxuXG4vKipcbiAqIEFkZGl0aW9uYWwgcnVsZXMuXG4gKi9cblxuLm1vYmlsZS1tZW51ICsgLmNvbnRlbnQtZGVmYXVsdF9fd3JhcHBlciB7XG4gIEBpbmNsdWRlIG1lZGlhKCdwaG9uZScpIHtcbiAgICBwYWRkaW5nLXRvcDogNTBweDtcbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtcG9ydHJhaXQnKSB7XG4gICAgcGFkZGluZy10b3A6IDcwcHg7XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYSgndGFibGV0LWxhbmRzY2FwZScpIHtcbiAgICBwYWRkaW5nLXRvcDogOTBweDtcbiAgfVxuXG4gIHBhZGRpbmctdG9wOiAxMjBweDtcbn1cblxuLnRleHQtaW1hZ2UgKyAuY29udGVudC1kZWZhdWx0X193cmFwcGVyIHtcbiAgQGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1wb3J0cmFpdC1kb3duJykge1xuICAgIG1hcmdpbi10b3A6IC0zMHB4O1xuICB9XG5cbiAgbWFyZ2luLXRvcDogLTUwcHg7XG5cbiAgLmNvbnRlbnQtZGVmYXVsdCB7XG4gICAgbWFyZ2luOiAwO1xuICB9XG59XG4iLCIvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4gICBGb290ZXJcclxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbi8qKlxyXG4gKiBNYWluIGVsZW1lbnQuXHJcbiAqL1xyXG5cclxuLmZvb3RlciB7XHJcbiAgQGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1wb3J0cmFpdC1kb3duJykge1xyXG4gICAgcGFkZGluZzogNTBweCAwIDA7XHJcbiAgfVxyXG5cclxuICBAaW5jbHVkZSBtZWRpYSgndGFibGV0LWxhbmRzY2FwZScpIHtcclxuICAgIHBhZGRpbmc6IDEwMHB4IDAgMDtcclxuICB9XHJcblxyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICBwYWRkaW5nOiAxMDBweCAwO1xyXG4gIGJhY2tncm91bmQ6ICRjb2xvci1ibHVlLTEwMDtcclxuICBjb2xvcjogJGNvbG9yLXdoaXRlLTEwMDtcclxuICBsZXR0ZXItc3BhY2luZzogMC40MnB4O1xyXG5cclxuICAuYnV0dG9uIHtcclxuICAgIG1hcmdpbi10b3A6IDMwcHg7XHJcbiAgICBwYWRkaW5nOiAxNXB4IDI1cHg7XHJcbiAgfVxyXG5cclxuICAud3JhcHBlciB7XHJcbiAgICBAaW5jbHVkZSBtZWRpYSgndGFibGV0LXBvcnRyYWl0Jykge1xyXG4gICAgICBtYXgtd2lkdGg6IDQ0MHB4O1xyXG4gICAgICBwYWRkaW5nOiAwIDIwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgbWVkaWEoJ2Rlc2t0b3AnKSB7XHJcbiAgICAgIHBvc2l0aW9uOiBzdGF0aWM7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAubWFwcyB7XHJcbiAgICBAaW5jbHVkZSBtZWRpYSgnZGVza3RvcCcpIHtcclxuICAgICAgcG9zaXRpb246IHN0YXRpYztcclxuICAgIH1cclxuXHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gIH1cclxuXHJcbiAgLy9zYXNzLWxpbnQ6ZGlzYWJsZSBuby1pZHMgaWQtbmFtZS1mb3JtYXRcclxuICAjbWFwLWNhbnZhcyB7XHJcbiAgICBAaW5jbHVkZSBtZWRpYSgndGFibGV0LWxhbmRzY2FwZS1kb3duJykge1xyXG4gICAgICBwb3NpdGlvbjogc3RhdGljICFpbXBvcnRhbnQ7XHJcbiAgICAgIG1heC13aWR0aDogMTAwJTtcclxuICAgICAgaGVpZ2h0OiAzMDBweDtcclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSBtZWRpYSgnZGVza3RvcCcpIHtcclxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgfVxyXG5cclxuICAgIHRvcDogMDtcclxuICAgIHJpZ2h0OiAwO1xyXG4gICAgYm90dG9tOiAwO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBtYXgtd2lkdGg6IDQxNXB4O1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG4gIH1cclxuXHJcbiAgLy9zYXNzLWxpbnQ6ZW5hYmxlIG5vLWlkcyBpZC1uYW1lLWZvcm1hdFxyXG59XHJcblxyXG5cclxuLyoqXHJcbiAqIFVwcGVyIHBhcnQgb2YgZm9vdGVyLlxyXG4gKi9cclxuXHJcbi5mb290ZXJfX3VwcGVyIHtcclxuICBAaW5jbHVkZSBtZWRpYSgndGFibGV0LXBvcnRyYWl0LWRvd24nKSB7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogNTBweDtcclxuICB9XHJcblxyXG4gIEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtbGFuZHNjYXBlJykge1xyXG4gICAgcGFkZGluZy1ib3R0b206IDEwMHB4O1xyXG4gIH1cclxufVxyXG5cclxuXHJcbi8qKlxyXG4gKiBDb250YWN0IGVsZW1lbnQuXHJcbiAqL1xyXG5cclxuLmZvb3Rlcl9fY29udGFjdCB7XHJcbiAgbWFyZ2luLWJvdHRvbTogNTBweDtcclxufVxyXG5cclxuXHJcbi8qKlxyXG4gKiBUZWFzZXIgZWxlbWVudC5cclxuICovXHJcblxyXG4uZm9vdGVyX190ZWFzZXIge1xyXG4gIEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtcG9ydHJhaXQtZG93bicpIHtcclxuICAgIG1hcmdpbi10b3A6IDUwcHg7XHJcbiAgfVxyXG5cclxuICBAaW5jbHVkZSBtZWRpYSgnZGVza3RvcCcpIHtcclxuICAgIHBhZGRpbmctcmlnaHQ6IDExMHB4O1xyXG4gIH1cclxufVxyXG5cclxuXHJcbi8qKlxyXG4gKiBMb3dlciBwYXJ0IG9mIGZvb3Rlci5cclxuICovXHJcblxyXG4uZm9vdGVyX19sb3dlciB7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIHBhZGRpbmc6IDEwcHggMDtcclxuICBiYWNrZ3JvdW5kOiAkY29sb3Itd2hpdGUtMTAwO1xyXG59XHJcbiIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBIZWFkZXJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogTWFpbiBlbGVtZW50LlxuICovXG5cbi5oZWFkZXIge1xuICBAaW5jbHVkZSBtZWRpYSgncGhvbmUnKSB7XG4gICAgcGFkZGluZzogMTBweCAwO1xuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWEoJ2Rlc2t0b3AnKSB7XG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgJGNvbG9yLWdyZXktMzAwIDAlLCB0cmFuc3BhcmVudCAxMDAlKTtcbiAgfVxuXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgbGVmdDogMDtcbiAgcGFkZGluZzogMzBweCAwIDIwcHg7XG4gIGxldHRlci1zcGFjaW5nOiAwLjQycHg7XG4gIHotaW5kZXg6IDk5OTtcbn1cblxuXG4vKipcbiAqIEhlYWRlciBsZWZ0IHBhcnQuXG4gKi9cblxuLmhlYWRlcl9fbGVmdCB7XG4gIEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtbGFuZHNjYXBlLWRvd24nKSB7XG4gICAgd2lkdGg6IDc1JTtcbiAgfVxuXG4gIHdpZHRoOiAzNSU7XG59XG5cblxuLyoqXG4gKiBIZWFkZXIgcmlnaHQgcGFydC5cbiAqL1xuXG4uaGVhZGVyX19yaWdodCB7XG4gIEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtbGFuZHNjYXBlLWRvd24nKSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIHdpZHRoOiA2NSU7XG5cbiAgbmF2IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cblxuXG4vKipcbiAqIE1haW4gbWVudSBzZXR0aW5ncy5cbiAqL1xuXG4ubWFpbi1tZW51LWNvbnRhaW5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAmOjpiZWZvcmUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDFweDtcbiAgICBiYWNrZ3JvdW5kOiAkY29sb3ItYmx1ZS0xMDA7XG4gICAgY29udGVudDogJyc7XG4gICAgb3BhY2l0eTogMC41O1xuICB9XG59XG5cbi5tYWluLW1lbnUge1xuICBkaXNwbGF5OiBmbGV4O1xuICB3aWR0aDogMTAwJTtcblxuICBhIHtcbiAgICBAaW5jbHVkZSBwYWRkaW5nLXgoMTBweCk7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBtYXJnaW4tbGVmdDogMzVweDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB9XG5cbiAgLm1lbnUtaXRlbSB7XG4gICAgJjpudGgtY2hpbGQoMSkgYSB7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICB9XG4gIH1cbn1cblxuXG4vKipcbiAqIFRvcCBtZW51IHNldHRpbmdzLlxuICovXG5cbi50b3AtbWVudSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIHdpZHRoOiAxMDAlO1xuXG4gIGEge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgbWFyZ2luLWxlZnQ6IDQwcHg7XG4gICAgcGFkZGluZy1ib3R0b206IDEwcHg7XG4gIH1cblxuICAubWVudS1pdGVtIHtcbiAgICAmOm50aC1jaGlsZCgxKSBhIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIH1cbiAgfVxufVxuIiwiLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuICAgTWFpbiBNZW51XHJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4vKipcclxuICogTWFpbiBtZW51IGxpbmsuXHJcbiAqL1xyXG5cclxuLnRvcC1tZW51ID4gLm1lbnUtaXRlbSA+IGEsXHJcbi5tYWluLW1lbnUgPiAubWVudS1pdGVtID4gYSB7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuICAmOjphZnRlciB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHJpZ2h0OiAwO1xyXG4gICAgYm90dG9tOiAwO1xyXG4gICAgbGVmdDogMDtcclxuICAgIHdpZHRoOiAwO1xyXG4gICAgaGVpZ2h0OiAzcHg7XHJcbiAgICB0cmFuc2l0aW9uOiB3aWR0aCAyNTBtcyBlYXNlO1xyXG4gICAgYmFja2dyb3VuZDogJGNvbG9yLWJsdWUtMTAwO1xyXG4gICAgY29udGVudDogJyc7XHJcbiAgfVxyXG5cclxuICAmOmhvdmVyIHtcclxuICAgIEBpbmNsdWRlIG1lZGlhKCdkZXNrdG9wJykge1xyXG5cclxuICAgICAgJjo6YWZ0ZXIge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5cclxuLyoqXHJcbiAqIE1haW4gbWVudSBpdGVtIGhhcyBjaGlsZHJlbi5cclxuICovXHJcblxyXG4ubWFpbi1tZW51ID4gLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4ge1xyXG4gIEBpbmNsdWRlIG1lZGlhKHhsKSB7XHJcbiAgICAmOmhvdmVyIC5zdWJtZW51LWNvbnRhaW5lciB7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgfVxyXG4gIH1cclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbn1cclxuXHJcblxyXG4vKipcclxuICogTWFpbiBtZW51IGN1cnJlbnQgbWVudSBpdGVtIGFuZCBjdXJyZW50IHBhZ2UgYW5jZXN0b3IuXHJcbiAqL1xyXG5cclxuLnRvcC1tZW51ID4gLmN1cnJlbnQtbWVudS1pdGVtID4gYSxcclxuLm1haW4tbWVudSA+IC5jdXJyZW50LW1lbnUtaXRlbSA+IGEsXHJcbi5tYWluLW1lbnUgPiAuY3VycmVudC1wYWdlLWFuY2VzdG9yID4gYSB7XHJcbiAgQGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1sYW5kc2NhcGUtZG93bicpIHtcclxuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xyXG4gIH1cclxuXHJcblxyXG4gICY6OmFmdGVyIHtcclxuICAgIEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtbGFuZHNjYXBlLWRvd24nKSB7XHJcbiAgICAgIGJvdHRvbTogMTNweDtcclxuICAgICAgYmFja2dyb3VuZDogJGNvbG9yLXdoaXRlLTEwMDtcclxuICAgIH1cclxuXHJcbiAgICB3aWR0aDogMTAwJTtcclxuICB9XHJcbn1cclxuXHJcblxyXG4vKipcclxuICogTW9iaWxlIG1lbnUgc2V0dGluZ3MuXHJcbiAqL1xyXG5cclxuLm1vYmlsZS1tZW51IHtcclxuICBAaW5jbHVkZSBtZWRpYSgncGhvbmUnKSB7XHJcbiAgICB0b3A6IDY2cHg7XHJcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gMjBweCk7XHJcbiAgICBwYWRkaW5nOiAwIDIwcHg7XHJcbiAgfVxyXG5cclxuICBAaW5jbHVkZSBtZWRpYSgndGFibGV0Jykge1xyXG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XHJcbiAgfVxyXG5cclxuICBAaW5jbHVkZSBtZWRpYSgndGFibGV0LXBvcnRyYWl0Jykge1xyXG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDYwcHgpO1xyXG4gICAgcGFkZGluZy1yaWdodDogNjBweDtcclxuICB9XHJcblxyXG4gIEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtbGFuZHNjYXBlJykge1xyXG4gICAgcGFkZGluZy1yaWdodDogNTBweDtcclxuICB9XHJcblxyXG4gIEBpbmNsdWRlIG1lZGlhKCdkZXNrdG9wJykge1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxuICB9XHJcblxyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICB0b3A6IDg5cHg7XHJcbiAgcmlnaHQ6IDA7XHJcbiAgYm90dG9tOiAwO1xyXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgd2lkdGg6IGNhbGMoMTAwJSAtIDUwcHgpO1xyXG4gIGhlaWdodDogMTAwJTtcclxuICBtaW4taGVpZ2h0OiAxMDB2aDtcclxuICB0cmFuc2l0aW9uOiBhbGwgMjUwbXMgZWFzZTtcclxuICBiYWNrZ3JvdW5kOiAkY29sb3ItYmx1ZS0xMDA7XHJcbiAgY29sb3I6ICRjb2xvci13aGl0ZS0xMDA7XHJcbiAgb3BhY2l0eTogMDtcclxuICB6LWluZGV4OiAtMTtcclxuICBwb2ludGVyLWV2ZW50czogbm9uZTtcclxuXHJcbiAgLnRvcC1tZW51LFxyXG4gIC5tYWluLW1lbnUge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgfVxyXG5cclxuICAudG9wLW1lbnUge1xyXG5cclxuICAgIGEge1xyXG4gICAgICBAaW5jbHVkZSBtZWRpYSgncGhvbmUnKSB7XHJcbiAgICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIG1hcmdpbjogMTBweCAwICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAubWVudS1pdGVtIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xyXG5cclxuICAgIGEge1xyXG4gICAgICBAaW5jbHVkZSBtZWRpYSgncGhvbmUnKSB7XHJcbiAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBtYXJnaW46IDE1cHggMDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICYuaXMtYWN0aXZlIHtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgICB6LWluZGV4OiA5MDtcclxuICAgIHBvaW50ZXItZXZlbnRzOiBhbGw7XHJcbiAgfVxyXG59XHJcblxyXG5cclxuLyoqXHJcbiAqIE1vYmlsZSBtZW51IGNvbnRlbnQgZGl2LlxyXG4gKi9cclxuXHJcbi5tb2JpbGUtbWVudV9fY29udGVudCB7XHJcbiAgQGluY2x1ZGUgbWVkaWEoJ3Bob25lJykge1xyXG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlO1xyXG4gIH1cclxuXHJcbiAgQGluY2x1ZGUgbWVkaWEoJ3RhYmxldCcpIHtcclxuICAgIHBhZGRpbmctdG9wOiAxNzBweDtcclxuICB9XHJcblxyXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbn1cclxuXHJcblxyXG4vKipcclxuICogTW9iaWxlIG1lbnUgaW5uZXIuXHJcbiAqL1xyXG5cclxuLm1vYmlsZS1tZW51X19sZWZ0LFxyXG4ubW9iaWxlLW1lbnVfX3JpZ2h0IHtcclxuICBAaW5jbHVkZSBtZWRpYSgncGhvbmUnKSB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgfVxyXG5cclxuICB3aWR0aDogYXV0bztcclxufVxyXG5cclxuXHJcbi8qKlxyXG4gKiBSaWdodCBwYXJ0IG9mIHRoZSBtb2JpbGUgbWVudSAodGFibGV0KS5cclxuICovXHJcblxyXG4ubW9iaWxlLW1lbnVfX3JpZ2h0IHtcclxuICBAaW5jbHVkZSBtZWRpYSgncGhvbmUnKSB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBtYXJnaW46IDAgMCAzMHB4O1xyXG4gICAgcGFkZGluZzogMDtcclxuICAgIGJvcmRlci1sZWZ0OiAwO1xyXG5cclxuICAgICY6OmFmdGVyIHtcclxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICByaWdodDogMDtcclxuICAgICAgYm90dG9tOiAwO1xyXG4gICAgICBsZWZ0OiAwO1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgaGVpZ2h0OiAxcHg7XHJcbiAgICAgIGJhY2tncm91bmQ6ICRjb2xvci13aGl0ZS0xMDA7XHJcbiAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICBvcGFjaXR5OiAwLjU7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBtYXJnaW4tbGVmdDogMTAwcHg7XHJcbiAgcGFkZGluZzogMzBweCAwIDMwcHggMTAwcHg7XHJcbiAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAkY29sb3Itd2hpdGUtMTAwO1xyXG59XHJcbiIsIi8vIHNhc3MtbGludDpkaXNhYmxlIGNsYXNzLW5hbWUtZm9ybWF0XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBOYXZpZ2F0aW9uXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG5cbi8qKlxuICogTmF2aWdhdGlvbiBtYWluIHNldHRpbmdzLlxuICovXG5cblxuLm5hdmlnYXRpb25fX3RvcCxcbi5uYXZpZ2F0aW9uX19ib3R0b20ge1xuICBAaW5jbHVkZSBtZWRpYSgncGhvbmUnKSB7XG4gICAgbWFyZ2luOiBhdXRvIDAgYXV0byBhdXRvO1xuICB9XG59XG5cbi5uYXZpZ2F0aW9uX19ib3R0b20ge1xuICBAaW5jbHVkZSBtZWRpYSgncGhvbmUnKSB7XG4gICAgbWFyZ2luLXRvcDogNDBweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMzBweDtcbiAgfVxufVxuXG4vKipcbiAqIE5hdmlnYXRpb24gYnV0dG9uLlxuICovXG5cbiR0cmFuc2l0aW9uLXRpbWluZzogNDAwbXM7XG5cbi5uYXZpZ2F0aW9uLWJ1dHRvbiB7XG4gIEBpbmNsdWRlIG1lZGlhKCdwaG9uZScpIHtcbiAgICB0b3A6IDZweDtcbiAgICBsZWZ0OiA1cHg7XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYSgnZGVza3RvcCcpIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogNTBweDtcbiAgaGVpZ2h0OiAzOHB4O1xuICAvL21hcmdpbjogMTNweCA2MHB4IDAgMDtcblxuICBzcGFuIHtcbiAgICBAaW5jbHVkZSBtZWRpYSgndGFibGV0LWxhbmRzY2FwZS1kb3duJykge1xuICAgICAgd2lkdGg6IDM4cHg7XG4gICAgICBoZWlnaHQ6IDZweDtcbiAgICB9XG5cbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDUwcHg7XG4gICAgaGVpZ2h0OiA4cHg7XG4gICAgbWFyZ2luOiBhdXRvO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1ibHVlLTEwMDtcblxuICAgICY6bnRoLWNoaWxkKDEpIHtcbiAgICAgIEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtbGFuZHNjYXBlLWRvd24nKSB7XG4gICAgICAgIHRvcDogLTVweDtcbiAgICAgIH1cblxuICAgICAgdG9wOiAtOXB4O1xuICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAkdHJhbnNpdGlvbi10aW1pbmcsIHRvcCAkdHJhbnNpdGlvbi10aW1pbmcgJHRyYW5zaXRpb24tdGltaW5nLCB0cmFuc2Zvcm0gJHRyYW5zaXRpb24tdGltaW5nIDBzO1xuICAgICAgYmFja2dyb3VuZDogJGNvbG9yLWdyZXktMjAwO1xuICAgIH1cblxuICAgICY6bnRoLWNoaWxkKDIpIHtcbiAgICAgIHRvcDogY2FsYyg1MCUgLSAxNHB4KTtcbiAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgJHRyYW5zaXRpb24tdGltaW5nLCBvcGFjaXR5IDBtcyAkdHJhbnNpdGlvbi10aW1pbmc7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgIH1cblxuICAgICY6bnRoLWNoaWxkKDMpIHtcbiAgICAgIEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtbGFuZHNjYXBlLWRvd24nKSB7XG4gICAgICAgIHRvcDogY2FsYyg1MCUgLSAyMXB4KTtcbiAgICAgIH1cblxuICAgICAgdG9wOiBjYWxjKDUwJSAtIDEzcHgpO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAkdHJhbnNpdGlvbi10aW1pbmcsIGJvdHRvbSAkdHJhbnNpdGlvbi10aW1pbmcgJHRyYW5zaXRpb24tdGltaW5nLCB0cmFuc2Zvcm0gJHRyYW5zaXRpb24tdGltaW5nIDBzO1xuICAgIH1cblxuICAgICY6bnRoLWNoaWxkKDQpIHtcbiAgICAgIEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtbGFuZHNjYXBlLWRvd24nKSB7XG4gICAgICAgIGJvdHRvbTogN3B4O1xuICAgICAgfVxuXG4gICAgICBib3R0b206IDA7XG4gICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yICR0cmFuc2l0aW9uLXRpbWluZywgYm90dG9tICR0cmFuc2l0aW9uLXRpbWluZyAkdHJhbnNpdGlvbi10aW1pbmcsIHRyYW5zZm9ybSAkdHJhbnNpdGlvbi10aW1pbmcgMHMsIG9wYWNpdHkgMjUwbXMgZWFzZTtcbiAgICB9XG4gIH1cblxuICAmLmlzLWFjdGl2ZSB7XG4gICAgc3BhbiB7XG4gICAgICAmOm50aC1jaGlsZCgxKSB7XG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtbGFuZHNjYXBlLWRvd24nKSB7XG4gICAgICAgICAgdG9wOiBjYWxjKDUwJSAtIDdweCk7XG4gICAgICAgIH1cblxuICAgICAgICB0b3A6IGNhbGMoNTAlIC0gNHB4KTtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcbiAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAkdHJhbnNpdGlvbi10aW1pbmcsIHRvcCAkdHJhbnNpdGlvbi10aW1pbmcsIHRyYW5zZm9ybSAkdHJhbnNpdGlvbi10aW1pbmcgJHRyYW5zaXRpb24tdGltaW5nO1xuICAgICAgfVxuXG4gICAgICAmOm50aC1jaGlsZCgyKSB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICB9XG5cbiAgICAgICY6bnRoLWNoaWxkKDMpIHtcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1sYW5kc2NhcGUtZG93bicpIHtcbiAgICAgICAgICB0b3A6IGNhbGMoNTAlIC0gMTlweCk7XG4gICAgICAgIH1cblxuICAgICAgICBib3R0b206IGNhbGMoNTAlIC0gMTFweCk7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAkdHJhbnNpdGlvbi10aW1pbmcsIGJvdHRvbSAkdHJhbnNpdGlvbi10aW1pbmcsIHRyYW5zZm9ybSAkdHJhbnNpdGlvbi10aW1pbmcgJHRyYW5zaXRpb24tdGltaW5nO1xuICAgICAgfVxuXG4gICAgICAmOm50aC1jaGlsZCg0KSB7XG4gICAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgJHRyYW5zaXRpb24tdGltaW5nLCBib3R0b20gJHRyYW5zaXRpb24tdGltaW5nLCB0cmFuc2Zvcm0gJHRyYW5zaXRpb24tdGltaW5nICR0cmFuc2l0aW9uLXRpbWluZywgb3BhY2l0eSAyNTBtcyBlYXNlO1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuICAgSGVhZGluZ1xyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuLyoqXHJcbiAqIE1haW4gc2V0dGluZ3MuXHJcbiAqL1xyXG5cclxuLmxvZ28ge1xyXG5cclxuICBpbWcge1xyXG4gICAgQGluY2x1ZGUgbWVkaWEoJ3Bob25lJykge1xyXG4gICAgICBoZWlnaHQ6IDM2cHg7XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgbWVkaWEoJ3RhYmxldCcpIHtcclxuICAgICAgaGVpZ2h0OiAzNnB4O1xyXG4gICAgfVxyXG5cclxuICAgIHdpZHRoOiBhdXRvO1xyXG4gICAgaGVpZ2h0OiA0NnB4O1xyXG4gIH1cclxufVxyXG5cclxuXHJcbi8qKlxyXG4gKiBEZXNrdG9wIGxvZ28uXHJcbiAqL1xyXG5cclxuLmxvZ28tLWRlc2t0b3Age1xyXG4gIEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtcG9ydHJhaXQtdXAnKSB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICB9XHJcblxyXG4gIGRpc3BsYXk6IG5vbmU7XHJcbn1cclxuXHJcblxyXG4vKipcclxuICogTW9iaWxlIGxvZ28uXHJcbiAqL1xyXG5cclxuXHJcbi5sb2dvLS1tb2JpbGUge1xyXG4gIEBpbmNsdWRlIG1lZGlhKCdwaG9uZScpIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gIH1cclxuXHJcbiAgZGlzcGxheTogbm9uZTtcclxufVxyXG4iLCIvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgU3ViamVjdHNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogTWFpbi5cbiAqL1xuXG4uc3ViamVjdHMge1xuICBAaW5jbHVkZSBtZWRpYSgndGFibGV0LXBvcnRyYWl0LWRvd24nKSB7XG4gICAgQGluY2x1ZGUgcGFkZGluZy14KDUwcHgpO1xuICB9XG5cbiAgQGluY2x1ZGUgcGFkZGluZy14KDEwMHB4KTtcbiAgYmFja2dyb3VuZDogJGNvbG9yLXdoaXRlLTEwMDtcblxuICAuY29sIHtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICB9XG59XG5cblxuLyoqXG4gKiBUaXRsZS5cbiAqL1xuXG4uc3ViamVjdHNfX3RpdGxlIHtcbiAgQGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1wb3J0cmFpdC1kb3duJykge1xuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gIH1cblxuICBtYXJnaW4tYm90dG9tOiA1MHB4O1xufVxuXG5cbi8qKlxuICogU3ViamVjdCByb3cuXG4gKi9cblxuLnN1YmplY3RzX19yb3cge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbjogMCAtMTBweDtcbn1cblxuXG4vKipcbiAqIFNpbmdsZSBzdWJqZWN0LlxuICovXG5cbi5zdWJqZWN0IHtcbiAgQGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1wb3J0cmFpdC1kb3duJykge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBtaW4taGVpZ2h0OiAyMDBweDtcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1sYW5kc2NhcGUnKSB7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAvIDIgLSAyMHB4KTtcbiAgfVxuXG4gIHdpZHRoOiBjYWxjKDEwMCUgLyAzIC0gMjBweCk7XG4gIG1hcmdpbjogMTBweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBib3gtc2hhZG93OiAkYm94LXNoYWRvdy0xMDA7XG4gIHRyYW5zaXRpb246IGJveC1zaGFkb3cgMjUwbXMgZWFzZTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICY6aG92ZXIge1xuICAgIEBpbmNsdWRlIG1lZGlhKCdkZXNrdG9wJykge1xuICAgICAgYm94LXNoYWRvdzogJGJveC1zaGFkb3ctMTAwLWhvdmVyO1xuICAgIH1cbiAgfVxufVxuXG5cbi8qKlxuICogUXVlc3Rpb24uXG4gKi9cblxuLnN1YmplY3RfX3F1ZXN0aW9uIHtcbiAgQGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1wb3J0cmFpdC1kb3duJykge1xuICAgIEBpbmNsdWRlIGZvbnQoMjBweCwgMjNweCk7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIG1pbi1oZWlnaHQ6IDA7XG4gICAgcGFkZGluZzogMjBweCAyMHB4IDMwcHg7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIH1cblxuICBAaW5jbHVkZSBmb250KDI1cHgsIDI5cHgpO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBtaW4taGVpZ2h0OiAyNTBweDtcbiAgcGFkZGluZzogMzBweCAyMHB4O1xuICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LXByaW1hcnk7XG59XG5cblxuLyoqXG4gKiBRdWVzdGlvbiBpbiB0aGUgYW5zd2VyIGRpdi5cbiAqL1xuXG4uc3ViamVjdF9fcXVlc3Rpb24tLXNtYWxsIHtcbiAgQGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1wb3J0cmFpdC1kb3duJykge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICBAaW5jbHVkZSBmb250KDI1cHgsIDI5cHgpO1xuICBtYXJnaW4tYm90dG9tOiA1MHB4O1xuICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LXByaW1hcnk7XG59XG5cblxuLyoqXG4gKiBBbnN3ZXIuXG4gKi9cblxuLnN1YmplY3RfX2Fuc3dlciB7XG4gIEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtcG9ydHJhaXQtZG93bicpIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgbWF4LWhlaWdodDogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgei1pbmRleDogOTk7XG4gICAgcG9pbnRlci1ldmVudHM6IGFsbDtcbiAgfVxuXG4gIGRpc3BsYXk6IGZsZXg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAtMjAlO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICBhbGlnbi1jb250ZW50OiBjZW50ZXI7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDgyMHB4O1xuICBoZWlnaHQ6IDcwJTtcbiAgbWF4LWhlaWdodDogNDMwcHg7XG4gIG1hcmdpbjogYXV0bztcbiAgcGFkZGluZzogMTAwcHg7XG4gIHRyYW5zaXRpb246IGFsbCAyNTBtcyBlYXNlO1xuICBib3JkZXItcmFkaXVzOiA1cHg7XG4gIGJhY2tncm91bmQ6ICRjb2xvci1ibHVlLTIwMDtcbiAgYm94LXNoYWRvdzogJGJveC1zaGFkb3ctMTAwO1xuICBvcGFjaXR5OiAwO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcblxuICAvL0FjdGl2ZSBzdGF0ZVxuICAmLmlzLWFjdGl2ZSB7XG4gICAgQGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1wb3J0cmFpdC1kb3duJykge1xuICAgICAgcG9zaXRpb246IHN0YXRpYztcbiAgICAgIG1heC1oZWlnaHQ6IDEwMDBweDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDY1cHg7XG4gICAgICBwYWRkaW5nOiAyMHB4O1xuICAgICAgb3BhY2l0eTogMTtcbiAgICB9XG5cbiAgICB0b3A6IDA7XG4gICAgb3BhY2l0eTogMTtcbiAgICBwb2ludGVyLWV2ZW50czogYWxsO1xuICB9XG59XG5cblxuLyoqXG4gKiBDbG9zZSBzdWJqZWN0IGJ1dHRvbi5cbiAqL1xuXG4uY2xvc2Utc3ViamVjdCB7XG4gIEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtcG9ydHJhaXQtZG93bicpIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDIwcHg7XG4gIHJpZ2h0OiAyMHB4O1xuXG4gIHN2ZyB7XG4gICAgd2lkdGg6IDMwcHg7XG4gICAgaGVpZ2h0OiAzMHB4O1xuICAgIGNvbG9yOiAkY29sb3ItYmx1ZS0xMDA7XG4gIH1cbn1cblxuXG4vKipcbiAqIFRvZ2dsZSBmb3IgdGhlIGFuc3dlciBvbiB0YWJsZXQtcG9ydHJhaXQgYW5kIGxvd2VyLlxuICovXG5cbi50b2dnbGUtYW5zd2VyIHtcbiAgQGluY2x1ZGUgbWVkaWEoJ2Rlc2t0b3AnKSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtbGFuZHNjYXBlJykge1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgbWFyZ2luLXRvcDogLTUwcHg7XG4gIH1cblxuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMTBweDtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDEwcHg7XG4gIGxldHRlci1zcGFjaW5nOiAwLjQycHg7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICB6LWluZGV4OiA5OTtcblxuICAmLnRhYmxldC1sYW5kc2NhcGUge1xuICAgIEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtbGFuZHNjYXBlJykge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuXG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gICYudGFibGV0LXBvcnRyYWl0LWRvd24ge1xuICAgIEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtcG9ydHJhaXQtZG93bicpIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cblxuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cbiIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBUZWFzZXJzXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIE1haW4uXG4gKi9cblxuLnRlYXNlcnMge1xuICBAaW5jbHVkZSBtZWRpYSgndGFibGV0LXBvcnRyYWl0LWRvd24nKSB7XG4gICAgQGluY2x1ZGUgcGFkZGluZy14KDUwcHgpO1xuICB9XG5cbiAgQGluY2x1ZGUgcGFkZGluZy14KDEwMHB4KTtcbiAgYmFja2dyb3VuZDogJGNvbG9yLXdoaXRlLTEwMDtcblxuXG4gIC8vIERpZmZlcmVudCBydWVscyBmb3IgZGlmZmVyZW50IGFtb3VudHMuXG4gICZbZGF0YS10ZWFzZXItYW1vdW50PSczJ10gLnRlYXNlciB7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAvIDMgLSAyMHB4KTtcbiAgfVxuXG4gICZbZGF0YS10ZWFzZXItYW1vdW50PScyJ10gLnRlYXNlciB7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAvIDIgLSAyMHB4KTtcbiAgfVxuXG5cbiAgLy8gQmFja2dyb3VuZCB3aGl0ZS5cbiAgJi5iYWNrZ3JvdW5kLWNvbG9yLXdoaXRlIHtcblxuICAgIC50ZWFzZXI6aG92ZXIgLnRlYXNlcl9fY29udGVudCB7XG4gICAgICBiYWNrZ3JvdW5kOiAkY29sb3ItYmx1ZS0xMDA7XG4gICAgICBjb2xvcjogJGNvbG9yLXdoaXRlLTEwMDtcbiAgICB9XG5cbiAgICAudGVhc2VyX19jb250ZW50IHtcbiAgICAgIGJhY2tncm91bmQ6ICRjb2xvci13aGl0ZS0xMDA7XG4gICAgfVxuICB9XG5cblxuICAvL0JhY2tncm91bmQgYmx1ZS5cbiAgJi5iYWNrZ3JvdW5kLWNvbG9yLWJsdWUge1xuXG4gICAgLnRlYXNlcjpob3ZlciAudGVhc2VyX19jb250ZW50IHtcbiAgICAgIGJhY2tncm91bmQ6ICRjb2xvci1ibHVlLTIwMDtcbiAgICAgIGNvbG9yOiAkY29sb3ItYmx1ZS0xMDA7XG4gICAgfVxuXG4gICAgLnRlYXNlcl9fY29udGVudCB7XG4gICAgICBwYWRkaW5nOiAzMHB4IDIwcHggMDtcbiAgICAgIGJhY2tncm91bmQ6ICRjb2xvci1ibHVlLTEwMDtcbiAgICAgIGNvbG9yOiAkY29sb3Itd2hpdGUtMTAwO1xuICAgIH1cbiAgfVxufVxuXG5cbi8qKlxuICogRGlmZmVyZW50IHN0eWxlIHNldHRpbmdzIGZvciBkaWZmZXJlbnQgd2lkdGhzLlxuICovXG5cblxuLnN0eWxlLS1zbWFsbCxcbi5zdHlsZS0td2lkZSB7XG5cbiAgJi5iYWNrZ3JvdW5kLWNvbG9yLWJsdWUgLnRlYXNlcl9fY29udGVudCB7XG4gICAgQGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1sYW5kc2NhcGUtZG93bicpIHtcbiAgICAgIGJhY2tncm91bmQ6ICRjb2xvci1ibHVlLTIwMDtcbiAgICAgIGNvbG9yOiAkY29sb3ItYmx1ZS0xMDA7XG4gICAgfVxuICB9XG5cbiAgJi5iYWNrZ3JvdW5kLWNvbG9yLXdoaXRlIC50ZWFzZXJfX2NvbnRlbnQge1xuICAgIEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtbGFuZHNjYXBlLWRvd24nKSB7XG4gICAgICBiYWNrZ3JvdW5kOiAkY29sb3Itd2hpdGUtMTAwO1xuICAgICAgY29sb3I6ICRjb2xvci1ibHVlLTEwMDtcbiAgICB9XG4gIH1cbn1cblxuXG4vKipcbiAqIFN0eWxlIHNtYWxsLlxuICovXG5cbi5zdHlsZS0tc21hbGwge1xuXG4gIC50ZWFzZXIge1xuICAgIEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtbGFuZHNjYXBlLWRvd24nKSB7XG4gICAgICB0cmFuc2l0aW9uOiBhbGwgMG1zIGVhc2U7XG4gICAgfVxuXG4gICAgJjpob3ZlciAudGVhc2VyX19jb250ZW50IHtcbiAgICAgIEBpbmNsdWRlIG1lZGlhKCdkZXNrdG9wJykge1xuICAgICAgICB0b3A6IGluaXRpYWw7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAudGVhc2VyX19jb250ZW50IHtcbiAgICBAaW5jbHVkZSBtZWRpYSgndGFibGV0LWxhbmRzY2FwZS1kb3duJykge1xuICAgICAgdG9wOiBjYWxjKDEwMCUgLSA5MHB4KTtcbiAgICAgIGJvdHRvbTogaW5pdGlhbDtcbiAgICB9XG4gIH1cbn1cblxuXG4vKipcbiAqIFN0eWxlIHdpZGUuXG4gKi9cblxuLnN0eWxlLS13aWRlIHtcblxuICAudGVhc2VyIHtcbiAgICBAaW5jbHVkZSBtZWRpYSgndGFibGV0LWxhbmRzY2FwZS1kb3duJykge1xuICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgIH1cbiAgfVxuXG4gIC50ZWFzZXJfX2NvbnRlbnQge1xuICAgIEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtbGFuZHNjYXBlLWRvd24nKSB7XG4gICAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgIH1cbiAgfVxufVxuXG5cbi8qKlxuICogVGl0bGUuXG4gKi9cblxuLnRlYXNlcnNfX3RpdGxlIHtcbiAgbWFyZ2luLWJvdHRvbTogNTBweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG5cbi8qKlxuICogVGVhc2VycyByb3cuXG4gKi9cblxuLnRlYXNlcnNfX3JvdyB7XG4gIG1hcmdpbjogLTEwcHg7XG59XG5cblxuLyoqXG4gKiBTaW5nbGUgdGVhc2VyLlxuICovXG5cbi50ZWFzZXIge1xuICBAbWVkaWEobWF4LXdpZHRoOiA3NjBweCkge1xuICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYSgndGFibGV0Jykge1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLyAyIC0gMjBweCk7XG4gICAgaGVpZ2h0OiA0MDBweDtcbiAgfVxuXG4gIGRpc3BsYXk6IGZsZXg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IGNhbGMoMTAwJSAvIDQgLSAyMHB4KTtcbiAgaGVpZ2h0OiBhdXRvO1xuICBtaW4taGVpZ2h0OiA0MDBweDtcbiAgbWFyZ2luOiAxMHB4O1xuICBib3gtc2hhZG93OiAkYm94LXNoYWRvdy0xMDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG5cblxuICAvLyBIb3ZlciBldmVudC5cbiAgJjpob3ZlciAudGVhc2VyX19jb250ZW50IHtcbiAgICBAaW5jbHVkZSBtZWRpYSgnZGVza3RvcCcpIHtcbiAgICAgIHRvcDogaW5pdGlhbDtcbiAgICAgIGJvdHRvbTogMDtcbiAgICB9XG4gIH1cbn1cblxuXG4vKipcbiAqIFRlYXNlciBpbWFnZS5cbiAqL1xuXG4udGVhc2VyX19pbWFnZSB7XG4gIC8vcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuXG4gIGltZyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICB9XG59XG5cblxuLyoqXG4gKiBUZWFzZXIgY29udGVudC5cbiAqL1xuXG4udGVhc2VyX19jb250ZW50IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IGNhbGMoMTAwJSAtIDkwcHgpO1xuICBib3R0b206IC0xMDAlO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogMzBweCAyMHB4O1xuICB0cmFuc2l0aW9uOiBhbGwgNTAwbXMgZWFzZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gIGgzIHtcbiAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICB9XG5cbiAgaW1nIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICB3aWR0aDogMzBweDtcbiAgICBoZWlnaHQ6IDMwcHg7XG4gICAgbWFyZ2luLXRvcDogMjBweDtcbiAgfVxuXG4gIC5saW5rIHtcbiAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICB9XG59XG4iLCIvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgVGV4dC9pbWFnZVxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBNYWluIGVsZW1lbnQuXG4gKi9cblxuLnRleHQtaW1hZ2Uge1xuICBAaW5jbHVkZSBtZWRpYSgndGFibGV0LXBvcnRyYWl0LWRvd24nKSB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIG1pbi1oZWlnaHQ6IDA7XG4gICAgcGFkZGluZy10b3A6IDUwcHg7XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYSgndGFibGV0LWxhbmRzY2FwZScpIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgbWluLWhlaWdodDogNjAwcHg7XG4gIH1cblxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGhlaWdodDogMTAwdmg7XG4gIG1pbi1oZWlnaHQ6IDEwMHZoO1xuICBiYWNrZ3JvdW5kOiAkY29sb3Itd2hpdGUtMTAwO1xuICBsZXR0ZXItc3BhY2luZzogMC40MnB4O1xuXG4gIC53cmFwcGVyIHtcbiAgICBwb3NpdGlvbjogc3RhdGljO1xuICB9XG59XG5cblxuLyoqXG4gKiBUZXh0LlxuICovXG5cbi50ZXh0LWltYWdlX190aXRsZSB7XG4gIEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtcG9ydHJhaXQtZG93bicpIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXgtd2lkdGg6IDM3MHB4O1xuICAgIG1hcmdpbjogYXV0bztcbiAgfVxufVxuXG4udGV4dC1pbWFnZV9fdGV4dCB7XG4gIEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtcG9ydHJhaXQtZG93bicpIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYSgndGFibGV0LWxhbmRzY2FwZScpIHtcbiAgICB3aWR0aDogNDUlO1xuICAgIG1heC13aWR0aDogMzUwcHg7XG4gIH1cblxuICB3aWR0aDogNDAlO1xuICBtYXgtd2lkdGg6IDM5NXB4O1xuXG4gIC5jbXMtb3V0cHV0IHtcbiAgICBAaW5jbHVkZSBtZWRpYSgndGFibGV0LXBvcnRyYWl0LWRvd24nKSB7XG4gICAgICBtYXgtd2lkdGg6IDQ4MHB4O1xuICAgICAgbWFyZ2luOiAzMHB4IGF1dG8gYXV0bztcbiAgICB9XG5cbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tdG9wOiA1MHB4O1xuICB9XG59XG5cblxuLyoqXG4gKiBJbWFnZS5cbiAqL1xuXG4udGV4dC1pbWFnZV9faW1hZ2Uge1xuICBAaW5jbHVkZSBtZWRpYSgncGhvbmUnKSB7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSArIDQwcHgpO1xuICAgIG1hcmdpbjogMCAtMjBweDtcbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtcG9ydHJhaXQnKSB7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSArIDEyMHB4KTtcbiAgICBtYXJnaW46IDAgLTYwcHg7XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYSgndGFibGV0LXBvcnRyYWl0LWRvd24nKSB7XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgICBoZWlnaHQ6IDMwMHB4O1xuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1sYW5kc2NhcGUnKSB7XG4gICAgd2lkdGg6IDU1JTtcbiAgfVxuXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICB3aWR0aDogNjAlO1xuXG4gIGltZyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICB9XG59XG5cblxuLyoqXG4gKiBBZGR0aW9uYWwgcnVsZXMuXG4gKi9cblxuLm1vYmlsZS1tZW51ICsgLnRleHQtaW1hZ2Uge1xuICBAaW5jbHVkZSBtZWRpYSgncGhvbmUnKSB7XG4gICAgcGFkZGluZy10b3A6IDEwMHB4O1xuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1wb3J0cmFpdCcpIHtcbiAgICBwYWRkaW5nLXRvcDogMTIwcHg7XG4gIH1cbn1cbiIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBRdW90ZVxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBNYWluLlxuICovXG5cbi5xdW90ZSB7XG4gIEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtcG9ydHJhaXQtZG93bicpIHtcbiAgICBAaW5jbHVkZSBwYWRkaW5nLXgoNTBweCk7XG4gIH1cblxuICBAaW5jbHVkZSBwYWRkaW5nLXgoMTAwcHgpO1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiA4MjBweDtcbiAgbWFyZ2luOiBhdXRvO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgLmNtcy1vdXRwdXQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXgtd2lkdGg6IDYxNXB4O1xuICAgIG1hcmdpbjogNTBweCBhdXRvIDIwcHg7XG4gICAgcGFkZGluZzogMCAxMHB4O1xuICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBAaW5jbHVkZSBtZWRpYSgncGhvbmUnKSB7XG4gICAgICAgIGxlZnQ6IC0yMHB4O1xuICAgICAgfVxuXG4gICAgICBAaW5jbHVkZSBmb250KDkwcHgsIDcwcHgpO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogLTMwcHg7XG4gICAgICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LXNlY29uZGFyeTtcbiAgICAgIGNvbnRlbnQ6ICfigJwnO1xuICAgIH1cblxuICAgICY6OmFmdGVyIHtcbiAgICAgIEBpbmNsdWRlIG1lZGlhKCdwaG9uZScpIHtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIGZvbnQoOTBweCwgNzBweCk7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICByaWdodDogMDtcbiAgICAgIGJvdHRvbTogLTQwcHg7XG4gICAgICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LXNlY29uZGFyeTtcbiAgICAgIGNvbnRlbnQ6ICfigJ0nO1xuICAgIH1cbiAgfVxufVxuXG4iLCIvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgVVNQJ3NcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogVVNQJ3MuXG4gKi9cblxuLnVzcHMge1xuICBAaW5jbHVkZSBtZWRpYSgndGFibGV0LXBvcnRyYWl0LWRvd24nKSB7XG4gICAgQGluY2x1ZGUgcGFkZGluZy14KDUwcHgpO1xuICB9XG5cbiAgQGluY2x1ZGUgcGFkZGluZy14KDEwMHB4KTtcbiAgYmFja2dyb3VuZDogJGNvbG9yLWJsdWUtMjAwO1xuXG4gIC53cmFwcGVyIHtcbiAgICBAaW5jbHVkZSBtZWRpYSgndGFibGV0Jykge1xuICAgICAgcGFkZGluZzogMDtcbiAgICB9XG4gIH1cblxuICAmLmJhY2tncm91bmQtbGlnaHQge1xuICAgIGJhY2tncm91bmQ6ICRjb2xvci1ibHVlLTIwMDtcbiAgICBjb2xvcjogJGNvbG9yLWJsdWUtMTAwO1xuICB9XG5cbiAgJi5iYWNrZ3JvdW5kLWRhcmsge1xuICAgIGJhY2tncm91bmQ6ICRjb2xvci1ibHVlLTEwMDtcbiAgICBjb2xvcjogJGNvbG9yLWJsdWUtMjAwO1xuXG4gICAgLnVzcHNfX3RpdGxlIHtcbiAgICAgIGNvbG9yOiAkY29sb3ItYmx1ZS0yMDA7XG5cbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRjb2xvci1ibHVlLTIwMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAub3dsLWRvdHMge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLXRvcDogMTBweDtcbiAgfVxuXG4gIC5vd2wtZG90IHtcbiAgICB3aWR0aDogMTFweDtcbiAgICBoZWlnaHQ6IDExcHg7XG4gICAgbWFyZ2luOiAwIDJweDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAkY29sb3ItZ3JleS0yMDAgIWltcG9ydGFudDtcbiAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xuXG4gICAgJi5hY3RpdmUge1xuICAgICAgYmFja2dyb3VuZDogJGNvbG9yLWdyZXktMjAwO1xuICAgIH1cbiAgfVxufVxuXG5cbi8qKlxuICogTWFpbiB0aXRsZS5cbiAqL1xuXG4udXNwc19fdGl0bGUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiBhdXRvO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cblxuLyoqXG4gKiBMb29wLlxuICovXG5cbi51c3BzX19sb29wIHtcbiAgQGluY2x1ZGUgbWVkaWEoJ3Bob25lJykge1xuICAgIG1hcmdpbi10b3A6IDMwcHg7XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYSgndGFibGV0Jykge1xuICAgIHBhZGRpbmctbGVmdDogODBweDtcbiAgfVxuXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luLXRvcDogNTBweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuXG4vKipcbiAqIFNpbmdsZSBVU1AuXG4gKi9cblxuLnVzcCB7XG4gIEBpbmNsdWRlIG1lZGlhKCdwaG9uZScpIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYSgndGFibGV0Jykge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi1yaWdodDogNDBweDtcbiAgICBtYXJnaW4tbGVmdDogNTBweDtcbiAgfVxuXG4gIHdpZHRoOiBjYWxjKDEwMCUgLyAzKTtcbiAgbWF4LXdpZHRoOiAzMjBweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG5cbi8qKlxuICogU2luZ2xlIFVTUCB0aXRsZS5cbiAqL1xuXG4udXNwX190aXRsZSB7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7XG59XG4iLCIvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4gICBDb2xvclxyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuLyoqXHJcbiAqIENvbG9yIHV0aWxpdHkgY2xhc3Nlcy5cclxuICovXHJcblxyXG4vLyBBdXRvbWF0aWNhbGx5IGdlbmVyYXRlZCBjb2xvciBhbmQgYmFja2dyb3VuZCBjb2xvciB1dGlsaXR5IGNsYXNzZXMgYmFzZWQgb25cclxuLy8gZXZlcnkgY29sb3IgZGVmaW5pdGlvbiBpbiBgc2V0dGluZ3MvX2NvbG9yLnNjc3NgLlxyXG4vL1xyXG4vLyBMb29wIHRocm91Z2ggZXZlcnkgYCRrZXlgIGFuZCBgJG1hcGAgaW4gdGhlIGAkY29sb3JzYCB2YXJpYWJsZSBtYXAgZGVmaW5lZCBpblxyXG4vLyBgc2V0dGluZ3MvX2NvbG9yLnNjc3NgLlxyXG5AZWFjaCAka2V5LCAkbWFwIGluICRjb2xvcnMge1xyXG5cclxuICAvLyBMb29wIHRocm91Z2ggZXZlcnkgYCRzaGFkZWAgYW5kIGAkcmdiYCBpbiBgJG1hcGAuXHJcbiAgQGVhY2ggJHNoYWRlLCAkcmdiIGluICRtYXAge1xyXG5cclxuICAgIC8vIExvb3AgdGhyb3VnaCBldmVyeSBgY29sb3JgIGFuZCBgYmFja2dyb3VuZC1jb2xvcmAgcnVsZXMuXHJcbiAgICBAZWFjaCAkcnVsZSBpbiBjb2xvciwgYmFja2dyb3VuZC1jb2xvciB7XHJcblxyXG4gICAgICAvKipcclxuICAgICAgICogYCN7JHJ1bGV9YCAjeyRyZ2J9LSN7JHNoYWRlfSBjb2xvciB1dGlsaXR5LlxyXG4gICAgICAgKi9cclxuXHJcbiAgICAgIC4jeyRydWxlfS0je3VucXVvdGUoJGtleSl9LSN7dW5xdW90ZSgkc2hhZGUpfSB7XHJcbiAgICAgICAgI3skcnVsZX06ICRyZ2I7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuICAgT2JqZWN0IEZpdFxyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuLyoqXHJcbiAqIE9iamVjdCBmaXQuXHJcbiAqXHJcbiAqIDEuIEZvbnQgZmFtaWx5IHBvbHlmaWxsIHdpdGggKGh0dHBzOi8vZ2l0aHViLmNvbS9iZnJlZC1pdC9vYmplY3QtZml0LWltYWdlcykuXHJcbiAqL1xyXG5cclxuLy8gTG9vcCB0aHJvdWdoIGV2ZXJ5IHZhbHVlIGZvciB0aGUgYG9iamVjdC1maXRgIHByb3BlcnR5LlxyXG5AZWFjaCAkdmFsdWUgaW4gZmlsbCwgY29udGFpbiwgY292ZXIsIG5vbmUsIHNjYWxlLWRvd24ge1xyXG5cclxuICAvKipcclxuICAgKiBgb2JqZWN0LWZpdGAgI3skdmFsdWV9IHV0aWxpdHkgY2xhc3MuXHJcbiAgICovXHJcblxyXG4gIC4jeyR2YWx1ZX0ge1xyXG4gICAgZm9udC1mYW1pbHk6ICdvYmplY3QtZml0OiAjeyR2YWx1ZX07JzsgLyogMSAqL1xyXG4gICAgb2JqZWN0LWZpdDogI3skdmFsdWV9O1xyXG4gIH1cclxufVxyXG4iLCIvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4gICBQb3NpdGlvblxyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuLyoqXHJcbiAqIFBvc2l0aW9uIHV0aWxpdHkgY2xhc3MuXHJcbiAqL1xyXG5cclxuQGVhY2ggJHZhbHVlIGluIHN0YXRpYywgcmVsYXRpdmUsIGFic29sdXRlLCBmaXhlZCwgc3RpY2t5IHtcclxuICAuI3skdmFsdWV9IHtcclxuICAgIHBvc2l0aW9uOiAkdmFsdWU7XHJcbiAgfVxyXG59XHJcbiIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbiAgIFRleHRcclxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbi8qKlxyXG4gKiBGb250IGZhbWlseSB1dGlsaXR5IGNsYXNzZXMuXHJcbiAqL1xyXG5cclxuQGVhY2ggJGtleSwgJGJyZWFrcG9pbnQgaW4gJGJyZWFrcG9pbnRzIHtcclxuICBAaW5jbHVkZSBtZWRpYSgka2V5KSB7XHJcbiAgICBAZWFjaCAkcHJvcGVydHksICR2YWx1ZSBpbiAkZm9udC1mYW1pbHkge1xyXG4gICAgICAudGV4dC0jeyRrZXl9LSN7JHByb3BlcnR5fSB7XHJcbiAgICAgICAgZm9udC1mYW1pbHk6IG1hcC1nZXQoJGZvbnQtZmFtaWx5LCAkcHJvcGVydHkpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5cclxuLyoqXHJcbiAqIFRleHQgc2l6ZSB1dGlsaXR5IGNsYXNzZXMuXHJcbiAqL1xyXG5cclxuQGVhY2ggJGtleSwgJGJyZWFrcG9pbnQgaW4gJGJyZWFrcG9pbnRzIHtcclxuICBAaW5jbHVkZSBtZWRpYSgka2V5KSB7XHJcbiAgICBAZWFjaCAkcHJvcGVydHksICR2YWx1ZSBpbiAkZm9udC1zaXplIHtcclxuICAgICAgLnRleHQtI3ska2V5fS0jeyRwcm9wZXJ0eX0ge1xyXG4gICAgICAgIEBpbmNsdWRlIHRleHQoJHByb3BlcnR5KTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuXHJcbi8qKlxyXG4gKiBUZXh0IGFsaWdubWVudCB1dGlsaXR5IGNsYXNzZXMuXHJcbiAqL1xyXG5cclxuQGVhY2ggJGtleSwgJGJyZWFrcG9pbnQgaW4gJGJyZWFrcG9pbnRzIHtcclxuICBAaW5jbHVkZSBtZWRpYSgka2V5KSB7XHJcbiAgICBAZWFjaCAkZGlyZWN0aW9uIGluIGxlZnQsIHJpZ2h0LCBjZW50ZXIge1xyXG4gICAgICAudGV4dC0jeyRrZXl9LSN7JGRpcmVjdGlvbn0ge1xyXG4gICAgICAgIHRleHQtYWxpZ246ICRkaXJlY3Rpb247XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcblxyXG4vKipcclxuICogRm9udCB3ZWlnaHQgdXRpbGl0eSBjbGFzc2VzLlxyXG4gKlxyXG4gKiAxLiBNdWx0aXBseSBsb29wZWQgaW50ZWdlciBieSAxMDAgZm9yIGNvcnJlY3QgZm9udCB3ZWlnaHQgdmFsdWUuXHJcbiAqL1xyXG5cclxuQGVhY2ggJGtleSwgJGJyZWFrcG9pbnQgaW4gJGJyZWFrcG9pbnRzIHtcclxuICBAaW5jbHVkZSBtZWRpYSgka2V5KSB7XHJcbiAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoIDkge1xyXG4gICAgICAkaTogJGkgKiAxMDA7IC8vIFsxXVxyXG5cclxuICAgICAgLnRleHQtI3ska2V5fS0jeyRpfSB7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6ICN7JGl9O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5cclxuLyoqXHJcbiAqIFRleHQgdHJhbnNmb3JtIHVpdGxpdHkgY2xhc3Nlcy5cclxuICovXHJcblxyXG5AZWFjaCAka2V5LCAkYnJlYWtwb2ludCBpbiAkYnJlYWtwb2ludHMge1xyXG4gIEBpbmNsdWRlIG1lZGlhKCRrZXkpIHtcclxuICAgIEBlYWNoICR0cmFuc2Zvcm0gaW4gY2FwaXRhbGl6ZSwgdXBwZXJjYXNlLCBsb3dlcmNhc2UsIG5vbmUsIGZ1bGwtd2lkdGgge1xyXG4gICAgICAudGV4dC0jeyRrZXl9LSN7JHRyYW5zZm9ybX0ge1xyXG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiAkdHJhbnNmb3JtO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbiAgIFZlcnRpY2FsIFJoeXRobVxyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuQGZvciAkaSBmcm9tIDAgdGhyb3VnaCAxMCB7XHJcbiAgJGk6ICRpICogODtcclxuXHJcbiAgLnZyLSN7JGl9IHtcclxuICAgIG1hcmdpbi1ib3R0b206ICN7JGl9cHg7XHJcbiAgfVxyXG59XHJcbiIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbiAgIFotaW5kZXhcclxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbi8qKlxyXG4gKiBVdGlsaXR5IGNsYXNzZXMgZm9yIG1hbmlwdWxhdGluZyBzdGFja2luZyBvcmRlciBpbiBIVE1MLlxyXG4gKi9cclxuXHJcbkBlYWNoICRrZXksICR2YWx1ZSBpbiAkei1pbmRleCB7XHJcbiAgLnotaW5kZXgtI3ska2V5fSB7XHJcbiAgICB6LWluZGV4OiAkdmFsdWU7XHJcbiAgfVxyXG59XHJcbiIsIi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbi8vIFotaW5kZXhcclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbi8vIEEgbGltaXRlZCBhcnJheSBvZiB2YWx1ZXMgZm9yIHRoZSBgei1pbmRleGAgcHJvcGVydHkgdG8gcHJldmVudFxyXG4vLyBleGFnZ2VyYXRlZCBhbW91bnRzIGFuZCB1Z2x5IGhhY2tzLlxyXG5cclxuJHotaW5kZXg6IChcclxuICAnMCc6ICAwLFxyXG4gICcxJzogIDEwLFxyXG4gICcyJzogIDIwLFxyXG4gICczJzogIDMwLFxyXG4gICc0JzogIDQwLFxyXG4gICc1JzogIDUwLFxyXG4gICc2JzogIDYwLFxyXG4gICc3JzogIDcwLFxyXG4gICc4JzogIDgwLFxyXG4gICc5JzogIDkwLFxyXG4gICcxMCc6IDEwMFxyXG4pO1xyXG4iXX0= */
