/**
 * Settings.
 */
/**
 * Settings.
 */
/**
 * Font family map.
 */
/**
 * Font size map.
 */
/**
 * Line height map.
 */
/**
 * Grid.
 */
/**
 * Assets.
 */
/**
 * Body.
 */
/**
 * Other.
 */
*::selection {
  background-color: #001663;
  color: white; }

/**
 * Responsive.
 */
/**
 * Vendor.
 */
/*! 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 */
  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;
    -ms-touch-action: pan-Y;
    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;
    -khtml-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: 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 {
  animation-duration: 1000ms;
  animation-fill-mode: both; }

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

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

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

@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 {
    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: transform 100ms ease; }

.owl-carousel .owl-video-play-icon:hover {
  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%; }

/**
 * Tools.
 */
/**
 * Tools.
 */
/**
 * Unicode.
 *
 * Preserve escaped unicode string.
 * @param {String} $string - An unicode string.
 * @return {String} A preserved escaped unicode string
 */
/**
 * REM.
 *
 * Convert pixel units to REM units.
 * @param {Number} $pixels - Pixel value.
 * @return {*} - A converted `rem` unit.
 */
/**
 * Column.
 *
 * Calculate given column width.
 * @param {Number} $column - The amount of columns to span.
 * @param {Number} $columns - The amount of columns that can be spanned.
 * @return {String} - Percentage value.
 */
/**
 * Color.
 *
 * Get a color value from two levels deep in the `$color` map.
 * @param {$string} $key - Key of the color to get from the map.
 * @param {Number} $value - Value of the key to get from the map.
 * @return {*} A HSLA color value.
 */
/* Magnific Popup CSS */
.mfp-bg {
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1042;
  overflow: hidden;
  position: fixed;
  background: #0b0b0b;
  opacity: 0.8; }

.mfp-wrap {
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1043;
  position: fixed;
  outline: none !important;
  -webkit-backface-visibility: hidden; }

.mfp-container {
  text-align: center;
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  padding: 0 8px;
  box-sizing: border-box; }

.mfp-container:before {
  content: '';
  display: inline-block;
  height: 100%;
  vertical-align: middle; }

.mfp-align-top .mfp-container:before {
  display: none; }

.mfp-content {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  margin: 0 auto;
  text-align: left;
  z-index: 1045; }

.mfp-inline-holder .mfp-content,
.mfp-ajax-holder .mfp-content {
  width: 100%;
  cursor: auto; }

.mfp-ajax-cur {
  cursor: progress; }

.mfp-zoom-out-cur, .mfp-zoom-out-cur .mfp-image-holder .mfp-close {
  cursor: -moz-zoom-out;
  cursor: -webkit-zoom-out;
  cursor: zoom-out; }

.mfp-zoom {
  cursor: pointer;
  cursor: -webkit-zoom-in;
  cursor: -moz-zoom-in;
  cursor: zoom-in; }

.mfp-auto-cursor .mfp-content {
  cursor: auto; }

.mfp-close,
.mfp-arrow,
.mfp-preloader,
.mfp-counter {
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none; }

.mfp-loading.mfp-figure {
  display: none; }

.mfp-hide {
  display: none !important; }

.mfp-preloader {
  color: #CCC;
  position: absolute;
  top: 50%;
  width: auto;
  text-align: center;
  margin-top: -0.8em;
  left: 8px;
  right: 8px;
  z-index: 1044; }

.mfp-preloader a {
  color: #CCC; }

.mfp-preloader a:hover {
  color: #FFF; }

.mfp-s-ready .mfp-preloader {
  display: none; }

.mfp-s-error .mfp-content {
  display: none; }

button.mfp-close,
button.mfp-arrow {
  overflow: visible;
  cursor: pointer;
  background: transparent;
  border: 0;
  -webkit-appearance: none;
  display: block;
  outline: none;
  padding: 0;
  z-index: 1046;
  box-shadow: none;
  touch-action: manipulation; }

button::-moz-focus-inner {
  padding: 0;
  border: 0; }

.mfp-close {
  width: 44px;
  height: 44px;
  line-height: 44px;
  position: absolute;
  right: 0;
  top: 0;
  text-decoration: none;
  text-align: center;
  opacity: 0.65;
  padding: 0 0 18px 10px;
  color: #FFF;
  font-style: normal;
  font-size: 28px;
  font-family: Arial, Baskerville, monospace; }

.mfp-close:hover,
.mfp-close:focus {
  opacity: 1; }

.mfp-close:active {
  top: 1px; }

.mfp-close-btn-in .mfp-close {
  color: #333; }

.mfp-image-holder .mfp-close,
.mfp-iframe-holder .mfp-close {
  color: #FFF;
  right: -6px;
  text-align: right;
  padding-right: 6px;
  width: 100%; }

.mfp-counter {
  position: absolute;
  top: 0;
  right: 0;
  color: #CCC;
  font-size: 12px;
  line-height: 18px;
  white-space: nowrap; }

.mfp-arrow {
  position: absolute;
  opacity: 0.65;
  margin: 0;
  top: 50%;
  margin-top: -55px;
  padding: 0;
  width: 90px;
  height: 110px;
  -webkit-tap-highlight-color: transparent; }

.mfp-arrow:active {
  margin-top: -54px; }

.mfp-arrow:hover,
.mfp-arrow:focus {
  opacity: 1; }

.mfp-arrow:before,
.mfp-arrow:after {
  content: '';
  display: block;
  width: 0;
  height: 0;
  position: absolute;
  left: 0;
  top: 0;
  margin-top: 35px;
  margin-left: 35px;
  border: medium inset transparent; }

.mfp-arrow:after {
  border-top-width: 13px;
  border-bottom-width: 13px;
  top: 8px; }

.mfp-arrow:before {
  border-top-width: 21px;
  border-bottom-width: 21px;
  opacity: 0.7; }

.mfp-arrow-left {
  left: 0; }

.mfp-arrow-left:after {
  border-right: 17px solid #FFF;
  margin-left: 31px; }

.mfp-arrow-left:before {
  margin-left: 25px;
  border-right: 27px solid #3F3F3F; }

.mfp-arrow-right {
  right: 0; }

.mfp-arrow-right:after {
  border-left: 17px solid #FFF;
  margin-left: 39px; }

.mfp-arrow-right:before {
  border-left: 27px solid #3F3F3F; }

.mfp-iframe-holder {
  padding-top: 40px;
  padding-bottom: 40px; }

.mfp-iframe-holder .mfp-content {
  line-height: 0;
  width: 100%;
  max-width: 900px; }

.mfp-iframe-holder .mfp-close {
  top: -40px; }

.mfp-iframe-scaler {
  width: 100%;
  height: 0;
  overflow: hidden;
  padding-top: 56.25%; }

.mfp-iframe-scaler iframe {
  position: absolute;
  display: block;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
  background: #000; }

/* Main image in popup */
img.mfp-img {
  width: auto;
  max-width: 100%;
  height: auto;
  display: block;
  line-height: 0;
  box-sizing: border-box;
  padding: 40px 0 40px;
  margin: 0 auto; }

/* The shadow behind the image */
.mfp-figure {
  line-height: 0; }

.mfp-figure:after {
  content: '';
  position: absolute;
  left: 0;
  top: 40px;
  bottom: 40px;
  display: block;
  right: 0;
  width: auto;
  height: auto;
  z-index: -1;
  box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
  background: #444; }

.mfp-figure small {
  color: #BDBDBD;
  display: block;
  font-size: 12px;
  line-height: 14px; }

.mfp-figure figure {
  margin: 0; }

.mfp-bottom-bar {
  margin-top: -36px;
  position: absolute;
  top: 100%;
  left: 0;
  width: 100%;
  cursor: auto; }

.mfp-title {
  text-align: left;
  line-height: 18px;
  color: #F3F3F3;
  word-wrap: break-word;
  padding-right: 36px; }

.mfp-image-holder .mfp-content {
  max-width: 100%; }

.mfp-gallery .mfp-image-holder .mfp-figure {
  cursor: pointer; }

@media screen and (max-width: 800px) and (orientation: landscape), screen and (max-height: 300px) {
  /**
       * Remove all paddings around the image on small screen
       */
  .mfp-img-mobile .mfp-image-holder {
    padding-left: 0;
    padding-right: 0; }
  .mfp-img-mobile img.mfp-img {
    padding: 0; }
  .mfp-img-mobile .mfp-figure:after {
    top: 0;
    bottom: 0; }
  .mfp-img-mobile .mfp-figure small {
    display: inline;
    margin-left: 5px; }
  .mfp-img-mobile .mfp-bottom-bar {
    background: rgba(0, 0, 0, 0.6);
    bottom: 0;
    margin: 0;
    top: auto;
    padding: 3px 5px;
    position: fixed;
    box-sizing: border-box; }
  .mfp-img-mobile .mfp-bottom-bar:empty {
    padding: 0; }
  .mfp-img-mobile .mfp-counter {
    right: 5px;
    top: 3px; }
  .mfp-img-mobile .mfp-close {
    top: 0;
    right: 0;
    width: 35px;
    height: 35px;
    line-height: 35px;
    background: rgba(0, 0, 0, 0.6);
    position: fixed;
    text-align: center;
    padding: 0; } }

@media all and (max-width: 900px) {
  .mfp-arrow {
    -webkit-transform: scale(0.75);
    transform: scale(0.75); }
  .mfp-arrow-left {
    -webkit-transform-origin: 0;
    transform-origin: 0; }
  .mfp-arrow-right {
    -webkit-transform-origin: 100%;
    transform-origin: 100%; }
  .mfp-container {
    padding-left: 6px;
    padding-right: 6px; } }

/**
 * Container
 * 
 * Center aligns element with given maximum width, padding, and margins top and bottom.
 * @param {String} $width - Pixel unit value.
 * @param {String} $gap - Pixel unit value.
 * @example @include container(1024px, 20px);
 */
/**
 * Section
 *
 * Add top and bottom spacing to element using paddings.
 * @param {String} $top - Pixel unit value.
 * @param {String} $bottom - Pixel unit value.
 * @example @include section(100px, 100px);
 */
/**
 * Font.
 *
 * Adds `rem` unit based font size property, a fallback `px` unit based font size property, and a `em` unit based line height property to any rule.
 * @param {String} $font-size - Pixel unit value.
 * @param {String} $line-height - Pixel unit value.
 * @example @include font-size(16px, 24px);
 */
/**
 * Text.
 *
 * Shorthand for the font mixin, runs the font mixin based on a common demeanour existing both in the `$font-size` and the `$line-height` maps.
 * @param {string} $value - String
 * @example @include text('p');
 */
/**
 * Font Awesome.
 *
 * Add Font Awesome icons as psuedo elements by using their unicode.
 * @param {String} $content - Unicode string.
 * @param {String} $family - Font Awesome font family string.
 * @example @include fontawesome('f100', 'Light');
 */
/**
 * Media.
 *
 * Media queries according to "The 100% Correct Way To Do CSS Breakpoints" (https://medium.freecodecamp.com/the-100-correct-way-to-do-css-breakpoints-88d6a5ba1862).
 * @param {String} $breakpoint - Breakpoint pixel unit value.
 * @example @include media('phone') {}
 */
/**
 * Elements.
 */
/**
 * General.
 */
/**
 * 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: 16px;
  font-size: 1.6rem;
  line-height: 1.5em;
  min-height: 100vh;
  background-color: white;
  color: #001663;
  font-family: "Open Sans";
  font-weight: 400;
  letter-spacing: 0.03em;
  text-rendering: optimizeLegibility;
  -moz-osx-font-smoothing: grayscale;
  /* 1 */
  -webkit-font-smoothing: antialiased;
  /* 2 */ }
  @media only screen and (max-width: 899px) {
    body {
      font-size: 14px;
      font-size: 1.4rem;
      line-height: 1.71429em; } }

/**
 * 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;
  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; }

/**
 * Objects.
 */
/**
 * Button.
 */

.button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-family: "Libre Franklin";
  font-weight: bold;
  transition: all 250ms ease;
  cursor: pointer;
  font-weight: 700; }
  
  .button svg {
    position: relative;
    top: 1px;
    width: 14px;
    height: 24px;
    transition: all 250ms ease; }
  
  .button.has-svg-left svg {
    margin-right: 8px; }
  
  .button.has-svg-right svg {
    margin-left: 8px; }

/**
 * Button (default).
 */

.button--default {
  font-size: 20px;
  font-size: 2rem;
  line-height: 1.2em;
  height: 56px;
  padding: 0 40px;
  background-color: #001663;
  color: white;
  border-radius: 32px 32px 0px 32px; }
  @media only screen and (max-width: 899px) {
    
    .button--default {
      font-size: 18px;
      font-size: 1.8rem;
      line-height: 1.33333em;
      height: 44px;
      border-radius: 32px 55px 0px 32px; } }
  
  .button--default svg {
    color: white; }
  @media only screen and (min-width: 900px) {
    
    .button--default:hover {
      box-shadow: 0px 40px 80px rgba(0, 22, 99, 0.15);
      margin-top: -5px;
      position: relative;
      transition: 300ms ease; } }

/**
 * Button (default-small).
 */

.button--default-small {
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1.71429em;
  height: 40px;
  padding: 0 40px;
  background-color: #001663;
  color: white;
  border-radius: 0px 32px 32px 55px; }
  
  .button--default-small svg {
    color: white; }
  
  .button--default-small:hover {
    box-shadow: 0px 40px 80px rgba(0, 22, 99, 0.15); }

/**
 * Button (border).
 */

.button--border {
  font-size: 20px;
  font-size: 2rem;
  line-height: 1.2em;
  height: 56px;
  padding: 0 40px;
  background-color: white;
  color: #001663;
  border: 1px solid #001663;
  border-radius: 32px 32px 0px 32px; }
  @media only screen and (max-width: 899px) {
    
    .button--border {
      font-size: 18px;
      font-size: 1.8rem;
      line-height: 1.33333em;
      height: 44px; } }
  
  .button--border svg {
    color: #001663; }
  
  .button--border:hover {
    background-color: #a0b8e4;
    color: white;
    border: 1px solid #a0b8e4; }
    
    .button--border:hover svg {
      color: white; }

/**
 * Button (border-small).
 */

.button--border-small {
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1.71429em;
  height: 40px;
  padding: 0 40px;
  background-color: white;
  color: #001663;
  border: 1px solid #001663;
  border-radius: 0px 32px 32px 32px; }
  @media only screen and (max-width: 899px) {
    
    .button--border-small {
      font-size: 12px;
      font-size: 1.2rem;
      line-height: 2em;
      height: 30px; } }
  
  .button--border-small svg {
    color: #001663; }
  
  .button--border-small:hover {
    background-color: #a0b8e4;
    color: white;
    border: 1px solid #a0b8e4; }
    
    .button--border-small:hover svg {
      color: white; }

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

/**
 * 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;
  overflow: hidden; }

/**
 * 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 {
  flex-wrap: wrap; }

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

/**
 * 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 10px; }

/**
				 * 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 10px; }

/**
				 * 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 10px; }

/**
				 * 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 10px; }

/**
				 * 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 10px; }

/**
				 * 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 10px; }

/**
				 * 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 10px; }

/**
				 * 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 10px; }

/**
				 * 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 10px; }

/**
				 * 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 10px; }

/**
				 * 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 10px; }

/**
				 * 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 10px; }

/**
			 * 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; }

/**
			 * 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 10px; }
  /**
				 * 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 10px; }
  /**
				 * 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 10px; }
  /**
				 * 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 10px; }
  /**
				 * 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 10px; }
  /**
				 * 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 10px; }
  /**
				 * 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 10px; }
  /**
				 * 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 10px; }
  /**
				 * 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 10px; }
  /**
				 * 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 10px; }
  /**
				 * 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 10px; }
  /**
				 * 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 10px; }
  /**
			 * 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; }
  /**
			 * 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 10px; }
  /**
				 * 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 10px; }
  /**
				 * 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 10px; }
  /**
				 * 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 10px; }
  /**
				 * 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 10px; }
  /**
				 * 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 10px; }
  /**
				 * 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 10px; }
  /**
				 * 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 10px; }
  /**
				 * 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 10px; }
  /**
				 * 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 10px; }
  /**
				 * 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 10px; }
  /**
				 * 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 10px; }
  /**
			 * 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; }
  /**
			 * 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 10px; }
  /**
				 * 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 10px; }
  /**
				 * 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 10px; }
  /**
				 * 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 10px; }
  /**
				 * 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 10px; }
  /**
				 * 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 10px; }
  /**
				 * 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 10px; }
  /**
				 * 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 10px; }
  /**
				 * 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 10px; }
  /**
				 * 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 10px; }
  /**
				 * 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 10px; }
  /**
				 * 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 10px; }
  /**
			 * 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; }
  /**
			 * 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 10px; }
  /**
				 * 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 10px; }
  /**
				 * 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 10px; }
  /**
				 * 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 10px; }
  /**
				 * 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 10px; }
  /**
				 * 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 10px; }
  /**
				 * 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 10px; }
  /**
				 * 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 10px; }
  /**
				 * 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 10px; }
  /**
				 * 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 10px; }
  /**
				 * 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 10px; }
  /**
				 * 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 10px; }
  /**
			 * 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; }
  /**
			 * 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; } }

/**
 * Default fields.
 */
label {
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1.28571em;
  display: block;
  font-weight: 600;
  color: #a0b8e4;
  margin-bottom: 10px;
  transition: all 250ms ease; }


select,
input,
textarea {
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.5em;
  width: 100%;
  height: 42px;
  border-radius: 4px;
  padding: 5px 10px;
  background-color: white;
  color: #001663;
  border-radius: 4px; }
  
  select::placeholder,
  input::placeholder,
  textarea::placeholder {
    color: #a0b8e4; }

textarea {
  height: 195px;
  padding-top: 10px; }

.gfield {
  width: 100%; }
  .gfield.is-small {
    width: calc(50% - 10px);
    margin-top: -30px; }
    .gfield.is-small input,
    .gfield.is-small select {
      font-size: 16px;
      font-size: 1.6rem;
      line-height: 1.5em;
      display: flex;
      align-items: center;
      justify-content: center;
      width: 131px;
      height: 29px; }
  .gfield.has-no-margin {
    margin-top: -30px; }

.ginput_container_select {
  position: relative;
  width: 100%;
  max-width: 220px;
  height: 29px;
  overflow: hidden;
  background-color: white; }
  .ginput_container_select svg {
    position: absolute;
    top: 4px;
    right: 8px;
    width: 10px;
    height: 26px;
    color: #a0b8e4;
    z-index: 1; }
  .ginput_container_select select {
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 1.5em;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    width: calc(100% + 50px);
    max-width: none;
    height: 29px;
    padding: 0 0 0 10px;
    background-color: transparent;
    color: #001663;
    border: 0;
    z-index: 2; }

.gfield_radio li {
  display: flex;
  align-items: center;
  margin-bottom: 20px; }

.gfield_radio label {
  margin: 0; }

.gfield_radio li,
.gfield_checkbox li {
  display: flex;
  flex-wrap: wrap; }

.gfield_radio input[type='radio'],
.gfield_radio input[type='checkbox'],
.gfield_checkbox input[type='radio'],
.gfield_checkbox input[type='checkbox'] {
  width: 15px;
  height: 15px;
  margin-right: 10px;
  border: 2px solid #a0b8e4;
  border-radius: 1px;
  color: #a0b8e4;
  background-color: transparent;
  transition: all 250ms ease; }
  .gfield_radio input[type='radio']:checked,
  .gfield_radio input[type='checkbox']:checked,
  .gfield_checkbox input[type='radio']:checked,
  .gfield_checkbox input[type='checkbox']:checked {
    border: 2px solid #001663;
    color: #001663; }

.gfield_radio .input:checked,
.gfield_checkbox .input:checked {
  margin-top: 13px; }

.gfield_radio input:checked + label svg,
.gfield_checkbox input:checked + label svg {
  display: block; }

.gfield_radio input:checked + label,
.gfield_checkbox input:checked + label {
  color: #001663; }

.gfield_radio label svg,
.gfield_checkbox label svg {
  display: none;
  position: absolute;
  width: 9px;
  height: 9px;
  margin-top: 3px;
  margin-left: -22px; }

.gfield_radio label svg {
  margin-top: 4px; }

/**
 * Gravity Forms.
 */
.gfield {
  margin-bottom: 30px;
  color: #a0b8e4; }
  .gfield:hover label {
    color: #001663; }

.ginput_container_name {
  display: flex;
  justify-content: space-between; }
  @media only screen and (max-width: 899px) {
    .ginput_container_name {
      flex-wrap: wrap; } }
  .ginput_container_name span {
    width: calc(50% - 6px); }
    @media only screen and (max-width: 899px) {
      .ginput_container_name span {
        width: 100%;
        margin-bottom: 20px; } }
    .ginput_container_name span:last-of-type {
      margin: 0; }

.gform_validation_container {
  display: none; }

.hidden_label > label {
  display: none; }

.validation_message {
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1.14286em;
  margin-top: 5px;
  color: #ff1500; }

.validation_error {
  display: flex;
  align-items: center;
  position: relative;
  width: 100%;
  margin: 0 0 35px;
  color: #ff1500; }
  .validation_error > span {
    font-size: 22px;
    font-size: 2.2rem;
    line-height: 1.27273em;
    width: 10px;
    margin-right: 15px;
    color: #ff1500;
    font-weight: 700; }
  .validation_error p {
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 1.14286em;
    width: calc(100% - 25px); }

.gform_button.clicked {
  opacity: 0.5 !important;
  pointer-events: none !important; }

/**
 * Heading.
 */
h1,
h2,
h3,
h4,
.content-form .is-invoice h2,
.heading {
  font-family: "Source Sans Pro";
  color: #001663; }
  h1.is-white,
  h2.is-white,
  h3.is-white,
  h4.is-white,
  .content-form .is-invoice h2.is-white,
  .heading.is-white {
    color: white; }

/**
 * Heading 1.
 */
h1,
.heading-1 {
  font-size: 84px;
  font-size: 8.4rem;
  line-height: 1.14286em;
  font-weight: 900;
  letter-spacing: 0.02em; }
  @media only screen and (max-width: 1199px) {
    h1,
    .heading-1 {
      font-size: 58px;
      font-size: 5.8rem;
      line-height: 1.17241em; } }
  @media only screen and (max-width: 899px) {
    h1,
    .heading-1 {
      font-size: 40px;
      font-size: 4rem;
      line-height: 1.1em; } }

/**
 * Heading 2.
 */
h2,
.heading-2 {
  font-size: 48px;
  font-size: 4.8rem;
  line-height: 1.125em;
  font-weight: 900;
  letter-spacing: 0.02em; }
  @media only screen and (max-width: 899px) {
    h2,
    .heading-2 {
      font-size: 30px;
      font-size: 3rem;
      line-height: 1.13333em; } }

/**
 * Heading 3.
 */
h3,
.heading-3 {
  font-size: 36px;
  font-size: 3.6rem;
  line-height: 1.05556em;
  font-weight: 900;
  letter-spacing: 0.02em; }
  @media only screen and (max-width: 899px) {
    h3,
    .heading-3 {
      font-size: 22px;
      font-size: 2.2rem;
      line-height: 1.18182em; } }

/**
 * Heading 4.
 */
h4,
.content-form .is-invoice h2,
.heading-4 {
  font-size: 24px;
  font-size: 2.4rem;
  line-height: 1.08333em;
  font-weight: 900;
  letter-spacing: 0.02em; }
  @media only screen and (max-width: 899px) {
    h4,
    .content-form .is-invoice h2,
    .heading-4 {
      font-size: 20px;
      font-size: 2rem;
      line-height: 1.2em; } }

/**
 * Heading 5.
 */
h5,
.heading-5 {
  font-size: 20px;
  font-size: 2rem;
  line-height: 1.3em;
  font-weight: 700;
  letter-spacing: 0.02em; }
  @media only screen and (max-width: 899px) {
    h5,
    .heading-5 {
      font-size: 18px;
      font-size: 1.8rem;
      line-height: 1.22222em; } }

/**
 * Subheading.
 */
.subheading {
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1.71429em;
  font-weight: 700;
  text-transform: uppercase; }
  @media only screen and (max-width: 899px) {
    .subheading {
      font-size: 10px;
      font-size: 1rem;
      line-height: 1.4em; } }
  .subheading.has-line:after {
    display: inline-block;
    position: relative;
    top: -3px;
    width: 33px;
    height: 3px;
    margin-left: 8px;
    background-color: #001663;
    content: ''; }
    @media only screen and (max-width: 899px) {
      .subheading.has-line:after {
        top: -2px; } }

.has-lazy-load {
  position: relative;
  top: -150px;
  transition: all 750ms ease;
  transition-delay: 500ms;
  opacity: 0; }
  @media only screen and (max-width: 599px) {
    .has-lazy-load {
      top: 0;
      opacity: 1; } }
  .has-lazy-load.header {
    transition-delay: 750ms;
    transition: all 500ms ease; }
  .has-lazy-load img {
    opacity: 1; }

.has-lazy-load[loaded='true'] {
  top: 0;
  opacity: 1; }

.link {
  color: #001663;
  transition: all 250ms ease; }
  .link.has-svg-right svg {
    margin-left: 10px; }
  .link.has-svg-left svg {
    margin-right: 10px; }
  .link svg {
    position: relative;
    top: 3px;
    width: 14px;
    height: 15px;
    transition: all 250ms ease;
    color: #ff1500; }
  .link:hover {
    text-decoration: underline; }
    .link:hover svg {
      margin-left: 15px; }

.pagination {
  display: flex;
  justify-content: center;
  width: 100%;
  padding: 60px 0 130px; }
  .pagination .page-numbers {
    font-size: 20px;
    font-size: 2rem;
    line-height: 1.3em;
    display: flex;
    justify-content: center;
    align-items: center;
    margin-right: 10px;
    transition: all 250ms ease;
    color: #a0b8e4;
    font-weight: 600; }
    .pagination .page-numbers.current {
      color: #001663; }
    .pagination .page-numbers.prev, .pagination .page-numbers.next {
      margin-right: 15px; }
      .pagination .page-numbers.prev svg, .pagination .page-numbers.next svg {
        position: relative;
        top: 0;
        width: 15px;
        height: 30px;
        color: #a0b8e4;
        transition: all 250ms ease; }
      .pagination .page-numbers.prev:hover svg, .pagination .page-numbers.next:hover svg {
        color: #001663; }
    .pagination .page-numbers.next {
      margin-right: 0;
      margin-left: 5px; }
  .pagination a:hover {
    color: #001663; }

.rating svg {
  width: 26px;
  height: 26px;
  margin-right: 7px;
  color: #ffd642; }
  .rating svg:last-of-type {
    margin: 0; }

/**
 * Wrapper (default)
 */
.wrapper {
  max-width: calc(1280px + 100px);
  padding: 0 50px;
  width: 100%;
  margin: 0 auto; }
  @media only screen and (max-width: 899px) {
    .wrapper {
      max-width: calc(1280px + 120px);
      padding: 0 60px;
      width: 100%;
      margin: 0 auto; } }
  @media only screen and (max-width: 599px) {
    .wrapper {
      max-width: calc(1280px + 40px);
      padding: 0 20px;
      width: 100%;
      margin: 0 auto; } }

/**
 * Wrapper (content)
 */
.wrapper--content {
  max-width: calc(850px + 100px);
  padding: 0 50px;
  width: 100%;
  margin: 0 auto; }
  @media only screen and (max-width: 899px) {
    .wrapper--content {
      max-width: calc(850px + 120px);
      padding: 0 60px;
      width: 100%;
      margin: 0 auto; } }
  @media only screen and (max-width: 599px) {
    .wrapper--content {
      max-width: calc(850px + 40px);
      padding: 0 20px;
      width: 100%;
      margin: 0 auto; } }

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

.cms-output h2,
.cms-output h3,
.cms-output h4 {
  margin-bottom: 30px; }

.cms-output h5 {
  margin-bottom: 20px; }

.cms-output .is-intro {
  font-size: 20px;
  font-size: 2rem;
  line-height: 1.6em;
  font-family: "Source Sans Pro";
  color: #001663;
  font-weight: 700;
  letter-spacing: 0.02em; }
  @media only screen and (max-width: 899px) {
    .cms-output .is-intro {
      font-size: 18px;
      font-size: 1.8rem;
      line-height: 1.33333em; } }

.cms-output img {
  border-radius: 40px 40px 0px 0px;
  box-shadow: 0 0 20px 10px rgba(0, 22, 99, 0.15);
  max-width: 550px; }
  @media only screen and (max-width: 599px) {
    .cms-output img {
      max-width: 250px; } }
  @media only screen and (min-width: 600px) and (max-width: 899px) {
    .cms-output img {
      max-width: 400px; } }
  @media only screen and (min-width: 900px) and (max-width: 1199px) {
    .cms-output img {
      max-width: 400px; } }
  .cms-output img.aligncenter {
    display: block;
    margin: 0 auto; }
  .cms-output img.alignright {
    display: block;
    margin: 0 0 0 auto; }
  .cms-output img.logo {
    border-radius: 0;
    box-shadow: none; }

.cms-output table {
  word-break: break-word; }
  .cms-output table td {
    vertical-align: top; }

.cms-output ol,
.cms-output ul {
  list-style-type: none;
  margin-left: 0;
  margin-bottom: 1em; }
  .cms-output ol li,
  .cms-output ul li {
    position: relative;
    padding-left: 30px;
    margin-bottom: 15px; }
    .cms-output ol li > svg,
    .cms-output ul li > svg {
      position: absolute;
      top: 5px;
      left: 0;
      width: 15px;
      height: 15px;
      color: #a0b8e4; }
    .cms-output ol li > ul,
    .cms-output ul li > ul {
      list-style-type: square; }
      .cms-output ol li > ul li,
      .cms-output ul li > ul li {
        margin-left: 20px;
        padding: 0; }

.cms-output ol {
  list-style-type: decimal;
  margin-left: 20px; }
  .cms-output ol li {
    padding-left: 0; }

.cms-output strong {
  font-weight: bold; }

.cms-output button {
  margin-top: 20px; }

.cms-output a {
  text-decoration: underline;
  transition: all 250ms ease; }
  .cms-output a:hover {
    font-weight: 700; }

.cms-output em {
  color: #001663; }

.cms-output blockquote {
  position: relative;
  padding: 40px 45px 20px 45px;
  color: #001663; }

.cms-output .wp-caption {
  margin-bottom: 20px; }
  .cms-output .wp-caption img {
    border-radius: 10px; }
  .cms-output .wp-caption .wp-caption-text {
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 1.25em;
    color: #001663;
    letter-spacing: 0.44px;
    margin-top: 10px; }

.content-default {
  position: relative;
  margin-bottom: 80px; }

.content-default--background-grey {
  background-color: rgba(182, 186, 210, 0.1);
  padding: 80px 0; }

.content-default--background-blue {
  background-color: #fafcff;
  padding: 80px 0; }

.content-default__wrap {
  z-index: 2;
  position: relative; }

.content-default--background-grey:after,
.content-default--background-blue:after {
  display: block;
  position: absolute;
  bottom: -22px;
  left: 0;
  width: 215px;
  height: 92px;
  background: url("./../images/desktop-group-74.svg") no-repeat;
  content: '';
  z-index: 1; }

.content-default--background-grey:before,
.content-default--background-blue:before {
  display: block;
  position: absolute;
  top: -22px;
  right: 0;
  width: 215px;
  height: 92px;
  background: url("./../images/desktop-group-65.svg") no-repeat;
  content: '';
  z-index: 1; }

.content-default__title {
  margin-bottom: 20px; }

.content-faq {
  margin-bottom: 80px; }
  .content-faq .wrapper {
    position: relative; }

.content-faq--background-blue {
  padding: 80px 0;
  background-color: #fafcff; }

.content-faq__question {
  border-bottom: 1px solid #a0b8e4;
  transition: all 250ms ease; }
  .content-faq__question.is-active {
    border-bottom: 1px solid transparent; }
  .content-faq__question:first-of-type .content-faq__question-head {
    padding-top: 0; }

.content-faq__question-head {
  align-items: center;
  padding: 30px 0;
  cursor: pointer; }
  @media only screen and (max-width: 899px) {
    .content-faq__question-head {
      padding: 20px 0; } }
  .content-faq__question-head svg {
    width: 21px;
    height: 32px;
    margin-left: 20px;
    color: #001663;
    transition: all 500ms ease; }
    @media only screen and (max-width: 899px) {
      .content-faq__question-head svg {
        width: 16px;
        height: 26px; } }
  .content-faq__question-head.is-active svg {
    transform: rotate(-90deg); }

.content-faq__question-body {
  display: none; }

.content-faq__question-answer {
  max-width: 740px; }

.content-form__column-contact {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  align-content: space-between;
  width: 35%;
  background-color: #001663; }
  @media only screen and (max-width: 1199px) {
    .content-form__column-contact {
      width: 100%; } }
  .content-form__column-contact:after {
    display: block;
    position: absolute;
    bottom: 50px;
    left: 0;
    width: 232px;
    height: 285px;
    background: url("./../images/desktop-6.svg") no-repeat;
    content: '';
    z-index: 1; }
    @media only screen and (max-width: 599px) {
      .content-form__column-contact:after {
        display: none; } }

.content-form__head {
  padding: 80px 20px 30px 80px; }
  @media only screen and (max-width: 1199px) {
    .content-form__head {
      padding: 80px 50px 30px 50px; } }
  @media only screen and (max-width: 899px) {
    .content-form__head {
      padding: 80px 60px 30px 60px; } }
  @media only screen and (max-width: 599px) {
    .content-form__head {
      padding: 80px 20px 30px 20px; } }

.content-form__teaser {
  margin-top: 20px;
  color: white; }

.content-form__image {
  position: relative;
  width: 100%;
  height: 765px; }
  @media only screen and (max-width: 1199px) {
    .content-form__image {
      height: 475px; } }
  @media only screen and (max-width: 599px) {
    .content-form__image {
      display: none; } }

.content-form__column-form {
  width: 65%;
  padding: 80px;
  background-color: #e5f1ff; }
  @media only screen and (max-width: 1199px) {
    .content-form__column-form {
      width: 100%;
      padding: 80px 50px; } }
  @media only screen and (max-width: 899px) {
    .content-form__column-form {
      width: 100%;
      padding: 80px 60px; } }
  @media only screen and (max-width: 599px) {
    .content-form__column-form {
      width: 100%;
      padding: 80px 20px; } }
  .content-form__column-form form {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: flex-end;
    max-width: 620px; }
    @media only screen and (max-width: 1199px) {
      .content-form__column-form form {
        max-width: 100%; } }
  .content-form__column-form .gform_heading {
    width: 100%;
    margin-bottom: 35px; }
  .content-form__column-form .gform_body,
  .content-form__column-form .gform_footer {
    width: calc(50% - 30px); }
    @media only screen and (max-width: 599px) {
      .content-form__column-form .gform_body,
      .content-form__column-form .gform_footer {
        width: 100%; } }
    .content-form__column-form .gform_body button,
    .content-form__column-form .gform_footer button {
      margin-bottom: 30px; }
      @media only screen and (max-width: 599px) {
        .content-form__column-form .gform_body button,
        .content-form__column-form .gform_footer button {
          margin: 0; } }

/**
 * Invoice form.
 */
.content-form .is-invoice .gform_heading {
  display: none; }

.content-form .is-invoice .gform_body {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  width: 100%; }
  .content-form .is-invoice .gform_body > ul {
    display: flex;
    flex-wrap: wrap;
    align-content: baseline;
    justify-content: space-between;
    width: calc(50% - 30px); }
    @media only screen and (max-width: 599px) {
      .content-form .is-invoice .gform_body > ul {
        width: 100%; } }

.content-form .is-invoice .gform_footer {
  display: flex;
  justify-content: flex-end;
  width: 100%; }
  @media only screen and (max-width: 599px) {
    .content-form .is-invoice .gform_footer {
      justify-content: flex-start; } }
  .content-form .is-invoice .gform_footer .gform_footer-wrap {
    width: calc(50% - 30px);
    margin-top: -60px;
    transform: translateY(-100%); }
    @media only screen and (max-width: 599px) {
      .content-form .is-invoice .gform_footer .gform_footer-wrap {
        width: fit-content;
        margin-top: 0;
        transform: translateY(0%); } }
    .content-form .is-invoice .gform_footer .gform_footer-wrap button {
      margin-top: 0;
      margin-bottom: 0; }
    .content-form .is-invoice .gform_footer .gform_footer-wrap p {
      font-size: 14px;
      font-size: 1.4rem;
      line-height: 1.28571em;
      font-weight: 600;
      margin-bottom: 20px; }

.content-header {
  position: relative;
  min-height: 452px;
  margin-bottom: 80px; }
  @media only screen and (max-width: 899px) {
    .content-header {
      padding-bottom: 50px; } }
  @media (max-width: 700px) {
    .content-header {
      min-height: 800px;
      padding-bottom: 150px; } }
  .content-header .wrapper {
    justify-content: space-between; }
  .content-header .rating {
    margin-top: -30px; }
  .content-header:before {
    display: block;
    position: absolute;
    bottom: 0;
    left: 0;
    width: 215px;
    height: 92px;
    background: url("./../images/desktop-group-74.svg") no-repeat;
    content: '';
    z-index: -1; }
  .content-header:after {
    display: block;
    position: absolute;
    top: calc(50% - 226px);
    right: 0;
    width: 553px;
    height: 452px;
    background: url("./../images/desktop-1.svg") no-repeat;
    content: '';
    z-index: -1; }
    @media only screen and (max-width: 1199px) {
      .content-header:after {
        right: -70px; } }
    @media only screen and (max-width: 899px) {
      .content-header:after {
        top: 60px;
        right: 0;
        width: 320px;
        height: 452px;
        background: url("./../images/mobile-1.png") no-repeat; } }
    @media (max-width: 700px) {
      .content-header:after {
        top: auto;
        bottom: 100px; } }

.content-header__column {
  width: calc(50% - 10px); }
  @media only screen and (max-width: 899px) {
    .content-header__column.is-body {
      width: calc(100% - 300px); } }
  @media (max-width: 700px) {
    .content-header__column.is-body {
      width: 100%;
      margin-bottom: 80px; } }
  @media only screen and (max-width: 899px) {
    .content-header__column.is-image {
      width: 290px; } }
  @media (max-width: 700px) {
    .content-header__column.is-image {
      width: 100%; } }

/**
 * Body.
 */
.content-header__subtitle {
  margin-bottom: 10px; }

.content-header__title {
  margin-bottom: 50px;
  font-weight: 400; }
  @media only screen and (max-width: 899px) {
    .content-header__title {
      margin-bottom: 25px; } }
  .content-header__title strong {
    display: block;
    font-weight: 900; }

/**
 * Image.
 */
.content-header__image {
  position: relative;
  width: 540px;
  max-width: calc(100% - 20px);
  height: 370px; }
  @media only screen and (max-width: 1199px) {
    .content-header__image {
      height: 285px; } }
  @media only screen and (max-width: 899px) {
    .content-header__image {
      max-width: 100%;
      height: 190px;
      margin-top: 25px; } }
  @media (max-width: 700px) {
    .content-header__image {
      margin-top: 0; } }
  .content-header__image img {
    border-radius: 40px 40px 4px 4px;
    box-shadow: 0px 40px 80px rgba(0, 22, 99, 0.15); }

/**
* USP's.
*/
.content-header__usps {
  position: relative;
  float: right;
  margin-top: -40px;
  align-items: center;
  width: 100%;
  max-width: 350px;
  padding: 20px 35px;
  background-color: #a0b8e4;
  border-radius: 40px 40px 40px 0px;
  box-shadow: 0px 40px 80px rgba(0, 22, 99, 0.15);
  z-index: 20; }
  @media only screen and (max-width: 899px) {
    .content-header__usps {
      max-width: 100%;
      padding: 20px 10px; } }

.content-header__usps--no-image {
  margin-top: 100px; }

.content-header__usp {
  width: 100%;
  margin-bottom: 15px;
  padding: 13px 13px 13px 22px;
  background-color: white;
  border-radius: 24px; }
  .content-header__usp:last-of-type {
    margin: 0; }
  .content-header__usp:nth-child(1) .content-header__usps-icon {
    background-color: rgba(0, 22, 99, 0.2); }
  .content-header__usp:nth-child(1) svg {
    color: #001663; }
  .content-header__usp:nth-child(2) .content-header__usps-icon {
    background-color: #ccebf5; }
  .content-header__usp:nth-child(2) svg {
    color: #009ccc; }
  .content-header__usp:nth-child(3) .content-header__usps-icon {
    background-color: rgba(0, 76, 163, 0.2); }
  .content-header__usp:nth-child(3) svg {
    color: #004ca3; }

.content-header__usps-icon {
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  margin-right: 8px;
  border-radius: 8px; }
  .content-header__usps-icon svg {
    width: 32px;
    height: 32px; }

.content-header__usp-title {
  font-size: 20px;
  font-size: 2rem;
  line-height: 1.3em;
  align-items: center;
  width: calc(100% - 52px);
  font-weight: 600; }

.editor-image {
  margin-bottom: 80px; }

.editor-image--background-grey {
  background-color: rgba(182, 186, 210, 0.1);
  padding: 80px 0; }

.editor-image--background-blue {
  background-color: #fafcff;
  padding: 80px 0; }

.editor-image__wrapper--text-right {
  flex-direction: row-reverse; }

.editor-image__subtitle {
  margin-bottom: 10px; }

.editor-image__title {
  margin-bottom: 30px; }

.editor-image__body {
  width: calc(45% - 35px);
  margin: 0 35px 0 0; }
  @media only screen and (max-width: 899px) {
    .editor-image__body {
      width: 100%;
      margin: 0 0 80px 0; } }

.editor-image__body--right {
  margin: 0 0 0 35px; }

.editor-image__wrap {
  width: calc(55% - 35px);
  height: 420px;
  border-radius: 40px 40px 0px 40px;
  margin: 0 0 0 35px;
  position: relative; }
  @media only screen and (max-width: 899px) {
    .editor-image__wrap {
      width: 100%;
      margin: 0;
      height: 400px; } }
  .editor-image__wrap img {
    box-shadow: 0 0 20px 10px rgba(0, 22, 99, 0.15);
    border-radius: 40px 40px 0px 40px; }

.editor-image__wrap--right {
  margin: 0 35px 0 0; }

.footer {
  position: relative;
  background-color: #001663;
  color: white; }
  .footer li,
  .footer p {
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 1.5em; }
  .footer a {
    transition: all 250ms ease; }
    .footer a:hover {
      color: #a0b8e4; }
  .footer:before {
    display: block;
    position: absolute;
    top: -25px;
    right: 0;
    width: 215px;
    height: 92px;
    background: url("./../images/desktop-group-65.svg") no-repeat;
    content: '';
    z-index: 2; }

@media only screen and (max-width: 599px) {
  .footer__social-title {
    text-align: center; } }

.footer__top {
  margin-bottom: 25px;
  padding-top: 80px; }

.footer__logos {
  width: 20%; }
  @media only screen and (max-width: 599px) {
    .footer__logos {
      width: auto;
      margin: auto;
      margin-bottom: 50px; } }
  @media only screen and (min-width: 600px) and (max-width: 899px) {
    .footer__logos {
      width: 50%; } }
  @media only screen and (min-width: 900px) and (max-width: 1199px) {
    .footer__logos {
      width: 50%; } }
  .footer__logos .footer__logo {
    width: 200px;
    margin-bottom: 20px; }
    .footer__logos .footer__logo img {
      width: 100%; }
  .footer__logos .footer__logos-wrap {
    max-width: 200px;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between; }
    .footer__logos .footer__logos-wrap img {
      width: calc(50% - 20px); }

.footer__columns {
  width: 80%;
  display: flex;
  flex-wrap: wrap; }
  @media only screen and (max-width: 599px) {
    .footer__columns {
      width: 100%; } }
  @media only screen and (min-width: 600px) and (max-width: 899px) {
    .footer__columns {
      width: 50%; } }
  @media only screen and (min-width: 900px) and (max-width: 1199px) {
    .footer__columns {
      width: 50%; } }

.footer__columns-wrap {
  width: 100%;
  display: flex;
  flex-wrap: wrap; }
  @media only screen and (max-width: 1199px) {
    .footer__columns-wrap {
      margin: auto;
      display: inline-block;
      width: auto; } }

.footer__column {
  width: calc(25% - 50px);
  margin: 0 25px; }
  @media only screen and (max-width: 599px) {
    .footer__column {
      margin: 0 auto; } }
  @media only screen and (max-width: 1199px) {
    .footer__column {
      width: 100%; } }
  .footer__column .is-active svg {
    transform: rotate(90deg);
    transition: all 200ms ease; }
  .footer__column .footer__column-head {
    margin-bottom: 20px; }
  @media only screen and (max-width: 599px) {
    .footer__column .footer__column-body {
      text-align: center; } }
  @media only screen and (max-width: 1199px) {
    .footer__column .footer__column-body {
      display: none;
      margin-bottom: 20px; } }
  .footer__column .footer__column-body li {
    margin-bottom: 10px; }
  .footer__column .footer__column-body p {
    margin-bottom: 20px; }
  .footer__column.is-social .is-item svg {
    background-color: white;
    color: #a0b8e4;
    transition: all 250ms ease; }
  .footer__column.is-social .is-item:hover svg {
    color: #001663; }
  .footer__column.is-social .is-small svg {
    padding: 2px; }
  .footer__column.is-social a {
    display: flex;
    flex-wrap: wrap;
    margin: 25px 0; }
    @media only screen and (max-width: 1199px) {
      .footer__column.is-social a {
        display: inline-block; } }
    .footer__column.is-social a svg {
      width: 20px;
      height: 20px;
      border-radius: 50%; }
    @media only screen and (max-width: 1199px) {
      .footer__column.is-social a .footer__social-text {
        display: none; } }
    .footer__column.is-social a .footer__social-svg {
      display: flex;
      justify-content: space-evenly;
      align-items: center;
      width: 28px;
      height: 28px;
      border-radius: 50%;
      margin: 0 14px 0 0;
      padding: 4px;
      background-color: white; }
      @media only screen and (max-width: 599px) {
        .footer__column.is-social a .footer__social-svg {
          margin: 10px; } }

.footer__bottom {
  align-items: center; }

.footer__column-head {
  cursor: pointer; }
  @media only screen and (max-width: 599px) {
    .footer__column-head {
      justify-content: center; } }
  .footer__column-head svg {
    display: none;
    margin: 1px 0 0 10px;
    width: 9px;
    height: 26px; }
    @media only screen and (max-width: 1199px) {
      .footer__column-head svg {
        display: block; } }

.footer__name,
.footer__links {
  width: 100%;
  text-align: center;
  margin-bottom: 10px; }

@media only screen and (max-width: 599px) {
  .footer__name {
    margin-bottom: 20px; } }

.footer__links {
  position: relative;
  font-size: 12px;
  font-size: 1.2rem;
  line-height: 1.16667em; }
  @media only screen and (max-width: 599px) {
    .footer__links {
      display: flex;
      flex-wrap: wrap;
      width: auto;
      flex-direction: column;
      margin: 0 auto 10px;
      align-items: center; } }
  .footer__links a {
    padding-left: 3px; }
    .footer__links a:nth-child(1) {
      padding: none; }
      .footer__links a:nth-child(1)::before {
        height: 3px;
        content: '';
        border-left: none; }
        @media only screen and (max-width: 599px) {
          .footer__links a:nth-child(1)::before {
            border-left: 1px solid white; } }
    .footer__links a::before {
      padding-left: 5px;
      content: '';
      border-left: 1px solid white; }
    @media only screen and (max-width: 599px) {
      .footer__links a {
        margin-bottom: 20px; } }
  .footer__links::after {
    display: none; }
    @media only screen and (max-width: 599px) {
      .footer__links::after {
        display: block;
        position: absolute;
        border-bottom: 5px solid white;
        border-radius: 15px;
        bottom: 0;
        content: '';
        width: 100%; } }

.google-maps {
  padding: 30px 35px; }

/**
 * Search.
 */
.google-maps__search {
  position: relative;
  margin-bottom: 15px; }
  .google-maps__search input {
    width: 100%;
    height: 48px;
    padding: 0 18px;
    border: 1px solid rgba(160, 184, 228, 0.4);
    border-radius: 4px;
    color: #001663; }
    .google-maps__search input::placeholder {
      color: #a0b8e4; }
  .google-maps__search svg {
    position: absolute;
    top: calc(50% - 13px);
    right: 25px;
    width: 16px;
    height: 26px;
    color: #8d9091; }
  .google-maps__search button {
    position: absolute;
    top: 0;
    right: 0;
    width: 48px;
    height: 48px;
    cursor: pointer;
    z-index: 10; }

/**
* Count.
*/
.google-maps__count {
  display: flex;
  align-items: center;
  margin-bottom: 15px; }
  .google-maps__count svg {
    width: 32px;
    height: 32px;
    color: #a0b8e4;
    margin-right: 10px; }
  .google-maps__count span {
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 1.5em; }
    .google-maps__count span.is-bold {
      font-size: 20px;
      font-size: 2rem;
      line-height: 1.3em;
      margin-right: 10px;
      font-weight: 600; }

/**
 * Locations.
 */
.google-maps_container {
  display: flex;
  align-content: flex-end;
  position: relative;
  width: 100%;
  height: 553px; }
  .google-maps_container .map-canvas {
    width: 100%;
    height: 553px; }
  .google-maps_container .google-maps-label-class {
    margin-left: 200px;
    max-width: 150px;
    white-space: normal;
    text-align: left; }

.google-maps__locations {
  width: calc(100% - 15px);
  margin: -225px 0 0 15px;
  padding: 15px 0 20px 0; }
  .google-maps__locations .owl-stage-outer {
    height: 190px; }
  .google-maps__locations .owl-stage {
    display: flex;
    align-items: flex-end; }
  .google-maps__locations .owl-item {
    height: 190px; }
    .google-maps__locations .owl-item:hover .google-maps__location {
      margin-top: 0;
      height: 190px;
      border: 4px solid #a0b8e4; }
    .google-maps__locations .owl-item .is-active {
      margin-top: 0;
      height: 190px;
      border: 4px solid #a0b8e4; }

.google-maps__location {
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1.71429em;
  width: 222px;
  margin-top: 90px;
  height: 100px;
  padding: 25px 20px 20px 20px;
  border: 4px solid white;
  border-radius: 8px;
  background-color: white;
  transition: all 250ms ease;
  overflow: hidden; }

.google-maps__location-city {
  margin-bottom: 10px;
  white-space: nowrap;
  overflow: hidden; }

.google-maps__location-address {
  margin-bottom: 10px;
  white-space: nowrap;
  overflow: hidden; }

.google-maps__location-editor {
  margin-bottom: 10px;
  white-space: nowrap;
  overflow: hidden; }

.google-maps__location-button {
  width: 100%;
  padding: 0; }

.header {
  position: relative;
  margin-bottom: 80px;
  z-index: 999; }
  .header .wrapper {
    align-items: center;
    justify-content: space-between;
    height: 110px;
    overflow: hidden; }
    @media only screen and (max-width: 1199px) {
      .header .wrapper {
        height: 80px; } }
    .header .wrapper:hover {
      overflow: visible; }

.header__logo img {
  width: 140px;
  height: auto; }

@media only screen and (max-width: 1199px) {
  .header__link {
    display: none; } }

/**
 * Navigation.
 */
@media only screen and (max-width: 1199px) {
  .header__menu {
    display: none; } }

.header__menu > li {
  position: relative;
  margin-right: 25px; }
  .header__menu > li > a {
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 1.28571em;
    font-family: "Source Sans Pro";
    font-weight: 600;
    color: #001663;
    transition: all 500ms ease; }
    .header__menu > li > a svg {
      position: relative;
      top: 3px;
      width: 9px;
      height: 15px;
      margin-left: 8px;
      transition: transform 500ms ease; }
  .header__menu > li:last-of-type {
    margin: 0; }
  .header__menu > li.current-page-ancestor > a, .header__menu > li.current-menu-item > a, .header__menu > li:hover > a {
    color: #a0b8e4; }
  .header__menu > li:hover > a svg {
    transform: rotate(180deg);
    color: #a0b8e4; }
  .header__menu > li:hover .submenu-container {
    opacity: 1;
    top: 100%; }
  .header__menu > li > .submenu-container {
    position: absolute;
    top: 50px;
    left: 50%;
    transform: translate(-50%, 0%);
    width: max-content;
    min-width: 215px;
    padding-top: 8px;
    opacity: 0;
    transition: all 500ms ease; }
    .header__menu > li > .submenu-container > .submenu {
      padding: 20px 15px;
      box-shadow: 0px 8px 20px 10px rgba(84, 84, 84, 0.2);
      background-color: white; }
      .header__menu > li > .submenu-container > .submenu li a {
        font-size: 14px;
        font-size: 1.4rem;
        line-height: 1.28571em;
        display: flex;
        width: 100%;
        font-weight: 600;
        padding-bottom: 15px;
        transition: all 250ms ease;
        color: #001663; }
      .header__menu > li > .submenu-container > .submenu li li a {
        padding-left: 20px;
        font-weight: 400; }
      .header__menu > li > .submenu-container > .submenu li .submenu {
        padding: 5px 0 20px 0; }
      .header__menu > li > .submenu-container > .submenu li.current-page-ancestor > a, .header__menu > li > .submenu-container > .submenu li.current-menu-item > a, .header__menu > li > .submenu-container > .submenu li:hover > a {
        color: #a0b8e4; }

/**
 * Menu Button.
 */
.header__menu-button {
  display: none; }
  @media only screen and (max-width: 1199px) {
    .header__menu-button {
      display: flex;
      position: relative;
      width: 29px;
      height: 26px;
      z-index: 100; }
      .header__menu-button span {
        display: inline-block;
        position: absolute;
        right: 0;
        left: 0;
        width: 29px;
        height: 5px;
        border-radius: 2px;
        margin: auto;
        background-color: #001663; }
        .header__menu-button span:nth-child(1) {
          top: 0;
          transition: background-color 400ms, top 400ms 400ms, transform 400ms 0s; }
        .header__menu-button span:nth-child(2) {
          top: calc(50% - 2.5px);
          transition: background-color 400ms, opacity 0ms 400ms;
          background-color: #001663;
          opacity: 1; }
        .header__menu-button span:nth-child(3) {
          bottom: 0;
          transition: background-color 400ms, bottom 400ms 400ms, transform 400ms 0s;
          background-color: #001663; }
      .header__menu-button.is-active span:nth-child(1) {
        top: calc(50% - 2.5px);
        transform: rotate(-45deg);
        transition: background-color 400ms, top 400ms, transform 400ms 400ms; }
      .header__menu-button.is-active span:nth-child(2) {
        opacity: 0; }
      .header__menu-button.is-active span:nth-child(3) {
        bottom: calc(50% - 2.5px);
        transform: rotate(45deg);
        transition: background-color 400ms, bottom 400ms, transform 400ms 400ms; } }

.image-faq {
  margin-bottom: 80px; }
  .image-faq .wrapper {
    justify-content: space-between;
    position: relative; }

.image-faq--background-blue {
  padding: 80px 0;
  background-color: #fafcff; }

.image-faq__image {
  width: 50%; }
  @media only screen and (max-width: 599px) {
    .image-faq__image {
      width: 100%;
      margin-bottom: 50px; } }
  .image-faq__image img {
    width: 100%;
    height: auto;
    filter: drop-shadow(0px 10px 20px rgba(0, 38, 82, 0.1));
    border-radius: 40px 40px 0px 40px; }

.image-faq__wrap {
  width: calc(50% - 100px);
  margin-top: 30px; }
  @media only screen and (max-width: 1199px) {
    .image-faq__wrap {
      width: calc(50% - 50px);
      margin-top: 10px; } }
  @media only screen and (max-width: 899px) {
    .image-faq__wrap {
      width: calc(50% - 30px); } }
  @media only screen and (max-width: 599px) {
    .image-faq__wrap {
      width: 100%; } }

.content-default__title {
  margin-bottom: 20px; }

.image-faq__question {
  position: relative;
  margin-bottom: 10px;
  padding-left: 30px; }
  .image-faq__question:before {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 10px;
    height: 100%;
    border-radius: 300px;
    background-color: #a0b8e4;
    content: '';
    transition: all 250ms ease; }
  .image-faq__question.is-active {
    margin-bottom: 30px; }
    .image-faq__question.is-active:before {
      background-color: #001663; }
  .image-faq__question:last-of-type {
    margin-bottom: 0; }

.image-faq__question-head {
  cursor: pointer; }

.image-faq__question-body {
  display: none; }

.image-faq__question-answer {
  padding: 20px 0 10px 0; }

.language-switch {
  display: flex; }

.language-switch__item {
  display: flex;
  width: 32px;
  height: 32px;
  margin-right: 10px;
  opacity: 0.5;
  transform: scale(0.7);
  transition: all 250ms ease; }
  .language-switch__item:last-of-type {
    margin-right: 0; }
  .language-switch__item.is-active, .language-switch__item:hover {
    opacity: 1;
    transform: scale(1); }

.language-switch__link {
  width: 100%;
  height: 100%; }

.language-switch__link--nl {
  background: url("./../images/flag-nl.png") no-repeat;
  background-size: cover; }

.language-switch__link--en {
  background: url("./../images/flag-en.png") no-repeat;
  background-size: cover; }

.location-search {
  position: relative;
  margin-bottom: 80px; }
  .location-search .wrapper {
    justify-content: space-between; }
  .location-search:before {
    display: block;
    position: absolute;
    bottom: 0;
    left: 0;
    width: 376px;
    height: 159px;
    background: url("./../images/desktop-group-119.svg") no-repeat;
    content: '';
    z-index: -1; }
    @media (max-width: 1024px) {
      .location-search:before {
        display: none; } }
  .location-search:after {
    display: none;
    position: absolute;
    right: 0;
    bottom: 0;
    width: 215px;
    height: 92px;
    background: url("./../images/desktop-group-65.svg") no-repeat;
    content: '';
    z-index: -1; }
    @media (max-width: 1024px) {
      .location-search:after {
        display: none; } }

@media only screen and (min-width: 900px) {
  .location-search__remove-margin {
    margin-bottom: -80px;
    z-index: 99; } }

.location-search__column-text {
  width: calc(100% - 675px); }
  @media only screen and (max-width: 1199px) {
    .location-search__column-text {
      width: calc(100% - 645px); } }
  @media (max-width: 1024px) {
    .location-search__column-text {
      width: 100%; } }

.location-search__column-maps {
  width: 630px; }
  @media only screen and (max-width: 1199px) {
    .location-search__column-maps {
      width: 610px; } }
  @media (max-width: 1024px) {
    .location-search__column-maps {
      width: 100%; } }

/**
 * Text Column.
 */
@media (max-width: 1024px) {
  .location-search__head {
    display: flex;
    flex-wrap: wrap;
    align-content: space-between;
    min-height: 333px; } }

@media only screen and (max-width: 599px) {
  .location-search__head {
    min-height: 525px; } }

.location-search__title-wrap {
  width: 100%; }

.location-search__subtitle {
  margin-bottom: 10px; }

.location-search__title {
  margin-bottom: 30px;
  font-weight: 400; }
  @media (max-width: 1024px) {
    .location-search__title {
      max-width: 270px; } }
  .location-search__title strong {
    font-weight: 900; }
    @media only screen and (min-width: 1200px) {
      .location-search__title strong {
        font-size: 70px; } }

.location-search__link-wrap {
  justify-content: flex-end;
  padding-right: 35px; }
  @media only screen and (max-width: 1199px) {
    .location-search__link-wrap {
      justify-content: flex-start;
      padding: 0; } }

.location-search__usps {
  margin: 70px 0 30px 0; }
  @media only screen and (max-width: 1199px) {
    .location-search__usps {
      margin: 20px 0 30px 0; } }

.location-search__usp {
  align-items: center;
  border-bottom: 1px solid rgba(0, 22, 99, 0.5);
  padding: 10px 0; }

.location-search__usp-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  margin-right: 25px;
  background-color: rgba(0, 38, 82, 0.2);
  border-radius: 8px; }
  .location-search__usp-icon svg {
    width: auto;
    height: 32px;
    color: #002652; }

.location-search__wrap {
  width: calc(100% - 69px); }

.location-search__usp-title {
  width: 120px; }
  @media only screen and (max-width: 1199px) {
    .location-search__usp-title {
      width: 100%; } }
  @media (max-width: 1024px) {
    .location-search__usp-title {
      width: 120px; } }
  @media only screen and (max-width: 599px) {
    .location-search__usp-title {
      width: 100%; } }

.location-search__usp-text {
  width: calc(100% - 120px); }
  @media only screen and (max-width: 1199px) {
    .location-search__usp-text {
      width: 100%; } }
  @media (max-width: 1024px) {
    .location-search__usp-text {
      width: calc(100% - 120px); } }
  @media only screen and (max-width: 599px) {
    .location-search__usp-text {
      width: 100%; } }

@media (max-width: 1024px) {
  .location-search__actions {
    display: block;
    text-align: -webkit-center; } }

.location-search__anchor {
  width: 290px; }
  @media only screen and (max-width: 1199px) {
    .location-search__anchor {
      width: 100%; } }
  @media (max-width: 1024px) {
    .location-search__anchor {
      width: 270px; } }
  @media only screen and (max-width: 599px) {
    .location-search__anchor {
      width: 100%; } }

@media only screen and (min-width: 1200px) {
  .location-search__actions {
    justify-content: flex-end; } }

.location-search__arrow {
  position: relative;
  width: fit-content;
  max-width: 290px;
  padding-left: 40px;
  text-align: center; }
  @media only screen and (max-width: 1199px) {
    .location-search__arrow {
      max-width: fit-content;
      margin-top: 30px;
      padding: 0; } }
  @media (max-width: 1024px) {
    .location-search__arrow {
      max-width: calc(100% - 270px);
      margin-top: 0; } }
  @media only screen and (max-width: 599px) {
    .location-search__arrow {
      width: calc(100% - 32px);
      max-width: fit-content;
      margin-top: 30px;
      padding: 0; } }
  .location-search__arrow:after {
    position: absolute;
    bottom: -60px;
    right: 0;
    width: 132px;
    height: 83px;
    background: url("./../images/desktop-image-12.png") no-repeat;
    content: ''; }
    @media (max-width: 1024px) {
      .location-search__arrow:after {
        left: 44%;
        transform: rotate(90deg);
        width: 51px;
        height: 32px;
        background-size: contain; } }

/**
* Image Column.
*/
.location-search__image {
  position: absolute;
  top: 0;
  right: 0;
  width: 730px;
  height: 790px;
  background-color: #001663;
  border-radius: 385px 0px 0px 385px;
  z-index: -1; }
  @media only screen and (max-width: 1199px) {
    .location-search__image {
      width: 554px;
      height: 599px; } }
  @media (max-width: 1024px) {
    .location-search__image {
      width: 365px;
      height: 395px; } }
  @media only screen and (max-width: 599px) {
    .location-search__image {
      margin-top: 120px;
      width: 365px;
      max-width: calc(100vw - 20px);
      height: 395px; } }
  .location-search__image img {
    border-radius: 385px 0px 0px 385px;
    opacity: 0.7; }
  .location-search__image:after {
    display: block;
    position: absolute;
    top: -22px;
    right: 0;
    width: 215px;
    height: 92px;
    background: url("./../images/desktop-group-65.svg") no-repeat;
    content: '';
    z-index: 1; }

.location-search__body {
  width: 100%;
  min-height: 985px;
  margin-top: 255px;
  background-color: white;
  border-radius: 40px;
  box-shadow: 0px 0px 5px rgba(0, 0, 0, 0.05), 0px 25px 35px rgba(0, 0, 0, 0.03);
  z-index: 20; }
  @media only screen and (max-width: 1199px) {
    .location-search__body {
      margin-top: 518px; } }
  @media (max-width: 1024px) {
    .location-search__body {
      margin-top: 80px; } }
  @media only screen and (max-width: 599px) {
    .location-search__body {
      width: 100vw;
      margin-left: -20px;
      border-radius: 8px; } }

.location-search__teasers {
  position: relative;
  justify-content: space-between;
  padding: 50px 35px; }
  @media only screen and (max-width: 1199px) {
    .location-search__teasers {
      padding: 50px 25px; } }
  .location-search__teasers:before {
    position: absolute;
    top: 0;
    left: 15px;
    width: calc(100% - 30px);
    height: 1px;
    background-color: #a0b8e4;
    content: ''; }

.location-search__teaser {
  display: flex;
  flex-wrap: wrap;
  align-content: space-between;
  width: calc(50% - 17.5px); }
  @media only screen and (max-width: 599px) {
    .location-search__teaser {
      width: 100%;
      margin-bottom: 50px; } }

.location-search__teaser-title {
  margin-bottom: 20px; }

.location-search__teaser-wrap {
  align-items: center;
  width: 100%;
  margin-top: 20px; }
  .location-search__teaser-wrap button {
    width: calc(100% - 54px);
    max-width: 220px;
    padding: 0; }

.location-search__select {
  overflow: hidden;
  position: relative;
  padding: 0;
  background-color: #a0b8e4;
  border: 1px solid #a0b8e4;
  height: 40px; }
  .location-search__select select {
    background-color: transparent;
    margin: -1px 0 0 -1px;
    padding: 0 60px 0 45px;
    color: white;
    z-index: 2; }
    .location-search__select select option {
      color: #001663; }
  .location-search__select svg {
    right: 43px;
    position: absolute;
    top: 8px;
    width: 14px;
    height: 24px;
    transition: all 250ms ease;
    color: white; }

.location-search__teaser-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  margin-right: 10px;
  background-color: rgba(0, 22, 99, 0.2);
  border-radius: 8px; }
  .location-search__teaser-icon svg {
    width: auto;
    height: 32px;
    color: #001663; }

.navigation-mobile {
  position: fixed;
  top: 100vh;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: calc(100% - 110px);
  margin-top: 110px;
  transition: all 500ms ease;
  background: #e5f1ff;
  opacity: 0;
  z-index: 999;
  overflow-x: hidden; }
  @media only screen and (max-width: 1199px) {
    .navigation-mobile {
      height: calc(100% - 80px);
      margin-top: 80px; } }
  .navigation-mobile.is-active {
    top: 0;
    opacity: 1; }
  .navigation-mobile::-webkit-scrollbar {
    display: none; }
  .navigation-mobile .wrapper {
    height: 100%; }

.navigation-mobile__link {
  width: 100%;
  margin: 80px 0 40px 0; }

/**
 * Main menu.
 */
.navigation-mobile__main {
  padding: 10px 0; }
  .navigation-mobile__main > li {
    position: relative; }
    .navigation-mobile__main > li.current_page_ancestor > a, .navigation-mobile__main > li.current-menu-item > a {
      color: #001663; }
    .navigation-mobile__main > li.is-active > a {
      color: #001663; }
      .navigation-mobile__main > li.is-active > a > span svg {
        transform: rotate(-90deg); }
    .navigation-mobile__main > li > a {
      font-size: 20px;
      font-size: 2rem;
      line-height: 1.2em;
      display: block;
      position: relative;
      width: 100%;
      font-weight: 700;
      font-family: "Source Sans Pro";
      margin: 22px 0 0 0;
      color: #001663; }
      .navigation-mobile__main > li > a > span {
        padding: 0 20px 0 5px;
        cursor: pointer; }
        .navigation-mobile__main > li > a > span svg {
          position: absolute;
          top: calc(50% - 8px);
          right: 0;
          width: 18px;
          height: 18px;
          margin-left: 5px;
          transition: all 500ms ease;
          color: #001663; }
    .navigation-mobile__main > li .submenu-container {
      display: none;
      position: relative;
      margin-top: 10px;
      padding-top: 20px;
      border-top: 1px solid #001663; }
      .navigation-mobile__main > li .submenu-container li a {
        font-size: 14px;
        font-size: 1.4rem;
        line-height: 1.28571em;
        position: relative;
        display: block;
        margin-bottom: 10px;
        font-weight: 600;
        color: #001663; }
        .navigation-mobile__main > li .submenu-container li a svg {
          position: absolute;
          top: calc(50% - 8px);
          right: 0;
          width: 18px;
          height: 18px;
          margin-left: 5px;
          transition: all 500ms ease;
          color: #001663; }
      .navigation-mobile__main > li .submenu-container li .submenu-container {
        margin-bottom: 30px;
        padding: 10px 0 0 0;
        border: 0; }
        .navigation-mobile__main > li .submenu-container li .submenu-container li a {
          font-weight: 400;
          padding-left: 20px; }
      .navigation-mobile__main > li .submenu-container li.current_page_ancestor > a, .navigation-mobile__main > li .submenu-container li.current-menu-item > a {
        color: #001663; }
      .navigation-mobile__main > li .submenu-container li.is-active > a {
        color: #001663; }
        .navigation-mobile__main > li .submenu-container li.is-active > a > span svg {
          transform: rotate(-90deg); }

/**
 * Disable scroll.
 */
body.is-active {
  overflow: hidden; }
  body.is-active .header::before {
    bottom: 0; }

.news-item {
  align-content: space-between;
  width: calc(1240px / 3);
  height: 100%;
  border-radius: 8px; }
  @media only screen and (max-width: 1199px) {
    .news-item {
      width: calc(1040px / 3); } }
  .news-item:hover img {
    transform: scale(1.1); }

.news-item__image {
  position: relative;
  height: 255px;
  margin-bottom: 20px;
  position: relative;
  border-radius: 24px;
  overflow: hidden; }
  .news-item__image img {
    border-radius: 24px;
    transition: all 400ms ease; }
  .news-item__image .news-item__date {
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 1.28571em;
    position: absolute;
    top: 20px;
    right: 20px;
    padding: 5px 20px;
    background-color: #e5f1ff;
    border-radius: 5px;
    font-weight: 700; }

.news-item__body .news-item__title {
  margin-bottom: 20px; }

.news-item__body .news-item__teaser {
  margin-bottom: 20px; }

.news-item__body .news-item__more {
  margin-bottom: 20px; }

.news-latest {
  position: relative;
  margin-bottom: 80px; }
  .news-latest .owl-stage-outer {
    overflow: visible; }
  .news-latest .owl-stage {
    display: flex; }
  .news-latest .owl-dots {
    position: absolute;
    left: 0;
    bottom: -60px;
    display: flex;
    justify-content: flex-end;
    margin-top: 50px; }
    .news-latest .owl-dots button {
      display: block;
      width: 13px;
      height: 13px;
      margin-left: 8px;
      background-color: rgba(0, 38, 82, 0.2);
      border: 1px solid transparent;
      box-shadow: 0 0 0 1px transparent;
      border-radius: 20px;
      transition: all 250ms ease; }
      .news-latest .owl-dots button:hover, .news-latest .owl-dots button.active {
        background-color: #001663;
        border: 1px solid white;
        box-shadow: 0 0 0 1px #001663; }
      .news-latest .owl-dots button:only-child {
        display: none; }

.news-latest--background-grey {
  background-color: #e5f1ff;
  padding: 80px 0 60px; }

.news-latest--background-blue {
  background-color: #fafcff;
  padding: 80px 0 60px; }

.news-latest__title {
  margin-bottom: 50px; }

.news-latest__subtitle {
  margin-bottom: 10px; }

.news-list {
  position: relative; }
  .news-list .news-list__wrapper {
    position: relative;
    z-index: 3; }
  .news-list .news-list__title {
    margin-bottom: 50px; }
  .news-list .news-list__subtitle {
    margin-bottom: 10px; }
  .news-list .news-list__wrap {
    margin: -10px; }
  .news-list .news-item {
    width: calc((100% - 60px) / 3);
    margin: 0 10px 50px; }
    @media only screen and (max-width: 599px) {
      .news-list .news-item {
        width: calc((100% - 20px) / 1); } }
    @media only screen and (min-width: 600px) and (max-width: 899px) {
      .news-list .news-item {
        width: calc((100% - 40px) / 2); } }
  .news-list:before {
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    width: 215px;
    height: 92px;
    background: url("./../images/desktop-group-65.svg") no-repeat;
    content: '';
    z-index: 1; }

.review-item {
  position: relative;
  align-content: space-between;
  width: 305px;
  height: 100%;
  border: 5px solid transparent;
  padding: 25px;
  transition: 300ms ease;
  background-color: white;
  border-radius: 8px; }
  @media only screen and (max-width: 599px) {
    .review-item {
      width: 270px; } }
  .review-item:hover {
    border: 5px solid #a0b8e4;
    box-shadow: 0px 40px 80px rgba(0, 22, 99, 0.15); }
  .review-item::before {
    position: absolute;
    border: 1px solid #e5f1ff;
    background: none;
    content: "";
    display: block;
    border-radius: 8px;
    top: -5px;
    left: -5px;
    right: -5px;
    bottom: -5px;
    pointer-events: none; }

.review-item__body {
  font-size: 12px;
  font-size: 1.2rem;
  line-height: 2em; }

.review-item__head {
  margin-bottom: 20px; }
  .review-item__head .review-item__logo {
    width: calc(100% - 88px); }
    .review-item__head .review-item__logo img {
      height: 40px;
      width: auto; }
  .review-item__head .review-item__svg {
    max-width: 88px;
    justify-content: flex-end;
    width: 50%;
    align-items: center; }
    .review-item__head .review-item__svg .rating {
      align-items: center;
      height: 100%; }
      .review-item__head .review-item__svg .rating svg {
        margin-right: 5px; }

.review-latest {
  position: relative;
  margin-bottom: 80px; }
  @media only screen and (max-width: 1199px) {
    .review-latest .owl-stage-outer {
      overflow: visible; } }
  .review-latest .owl-dots {
    position: absolute;
    left: 0;
    bottom: -60px;
    display: flex;
    justify-content: flex-end;
    margin-top: 50px; }
    .review-latest .owl-dots button {
      display: block;
      width: 13px;
      height: 13px;
      margin-left: 8px;
      background-color: rgba(0, 38, 82, 0.2);
      border: 1px solid transparent;
      box-shadow: 0 0 0 1px transparent;
      border-radius: 20px;
      transition: all 250ms ease; }
      .review-latest .owl-dots button:hover, .review-latest .owl-dots button.active {
        background-color: #001663;
        border: 1px solid white;
        box-shadow: 0 0 0 1px #001663; }
      .review-latest .owl-dots button:only-child {
        display: none; }

.review-latest__wrapper {
  position: relative;
  z-index: 2; }

.review-latest__wrap .owl-stage {
  display: flex;
  flex-wrap: wrap; }

.review-latest__subtitle {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  width: 100%;
  margin-bottom: 10px; }
  @media only screen and (max-width: 1199px) {
    .review-latest__subtitle {
      flex-direction: column-reverse;
      align-items: flex-start; } }
  .review-latest__subtitle .rating {
    margin: -5px 0 0 10px; }
    @media only screen and (max-width: 1199px) {
      .review-latest__subtitle .rating {
        margin: 0 0 10px 0; } }

.review-latest--background-grey:before,
.review-latest--background-blue:before {
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  width: 215px;
  height: 92px;
  background: url("./../images/desktop-group-65.png") no-repeat;
  content: '';
  z-index: 1; }

.review-latest--background-grey {
  background-color: #e5f1ff;
  padding: 80px 0; }
  @media only screen and (max-width: 1199px) {
    .review-latest--background-grey {
      padding: 80px 0 140px; } }

.review-latest--background-blue {
  background-color: #fafcff;
  padding: 80px 0; }
  @media only screen and (max-width: 1199px) {
    .review-latest--background-blue {
      padding: 80px 0 140px; } }

.review-latest__title {
  display: flex;
  flex-wrap: wrap;
  font-weight: 400;
  margin-bottom: 50px; }
  .review-latest__title strong {
    width: 100%; }

.review-list {
  position: relative;
  padding-top: 80px; }
  .review-list .review-list__title {
    margin-bottom: 50px; }
  .review-list .review-list__wrap {
    position: relative;
    z-index: 3;
    margin: -10px; }
  .review-list .review-item {
    width: calc((100% - 80px) / 4);
    margin: 0 10px 80px;
    height: auto; }
    @media only screen and (max-width: 599px) {
      .review-list .review-item {
        width: calc((100% - 20px) / 1); } }
    @media only screen and (min-width: 600px) and (max-width: 899px) {
      .review-list .review-item {
        width: calc((100% - 40px) / 2); } }
    @media only screen and (min-width: 900px) and (max-width: 1199px) {
      .review-list .review-item {
        width: calc((100% - 60px) / 3); } }
  .review-list:before {
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    width: 215px;
    height: 92px;
    background: url("./../images/desktop-group-65.png") no-repeat;
    content: '';
    z-index: 1; }

.team {
  overflow: hidden;
  margin-bottom: 80px; }
  .team .wrapper {
    position: relative; }

.team--background-blue {
  padding: 80px 0;
  background-color: #fafcff; }
  @media only screen and (max-width: 599px) {
    .team--background-blue {
      padding-bottom: 145px; } }

@media only screen and (max-width: 599px) {
  .team--background-white {
    margin-bottom: 145px; } }

.team__subtitle {
  margin-bottom: 10px; }
  @media only screen and (max-width: 599px) {
    .team__subtitle {
      font-size: 12px; } }

.team__members {
  position: initial;
  max-width: 1000px;
  margin: 50px auto;
  overflow: hidden;
  position: relative; }
  .team__members .owl-item img {
    width: 196px; }
  .team__members .owl-dots {
    position: absolute;
    bottom: 0;
    left: 50px;
    display: flex;
    justify-content: flex-end; }
    @media only screen and (max-width: 899px) {
      .team__members .owl-dots {
        left: 60px; } }
    @media only screen and (max-width: 599px) {
      .team__members .owl-dots {
        bottom: -65px;
        left: 20px; } }
    .team__members .owl-dots button {
      display: block;
      width: 13px;
      height: 13px;
      margin-left: 8px;
      background-color: rgba(0, 38, 82, 0.2);
      border: 1px solid transparent;
      box-shadow: 0 0 0 1px transparent;
      border-radius: 20px;
      transition: all 250ms ease; }
      .team__members .owl-dots button:hover, .team__members .owl-dots button.active {
        background-color: #001663;
        border: 1px solid white;
        box-shadow: 0 0 0 1px #001663; }
      .team__members .owl-dots button:only-child {
        display: none; }
  .team__members .owl-nav {
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    display: flex;
    flex-wrap: wrap;
    width: 100%;
    justify-content: space-between;
    pointer-events: none; }
    .team__members .owl-nav button {
      pointer-events: all; }
      .team__members .owl-nav button.disabled {
        opacity: 0; }
    .team__members .owl-nav svg {
      width: 20px;
      height: 20px; }
      .team__members .owl-nav svg path {
        fill: #002652; }

.team__member {
  text-align: center; }

.team__member-photo {
  position: relative;
  width: 196px;
  height: 196px;
  margin: 0 auto 20px auto; }
  .team__member-photo img {
    border-radius: 100px; }

.team__member-name {
  margin-bottom: 10px; }

.team__link-wrap {
  display: flex;
  justify-content: center;
  width: 100%; }

.teasers {
  position: relative;
  margin-bottom: 110px; }
  .teasers:before {
    display: block;
    position: absolute;
    bottom: -30px;
    left: 0;
    width: 551px;
    height: 323px;
    background: url("./../images/desktop-2.svg") no-repeat;
    content: '';
    z-index: 1; }
    @media only screen and (max-width: 899px) {
      .teasers:before {
        width: 220px;
        height: 323px;
        background: url("./../images/mobile-2.svg") no-repeat; } }
  .teasers.is-list {
    margin-bottom: 80px; }
    .teasers.is-list:before {
      top: calc(50% - 161px);
      bottom: auto; }
  .teasers * {
    position: relative;
    z-index: 2; }

.teasers--background-blue {
  padding: 80px 0;
  background-color: #fafcff; }

.teasers__subtitle {
  margin-bottom: 10px; }

.teasers__title {
  margin-bottom: 50px; }

/**
 * Slider.
 */
.teasers__wrap--slider .owl-stage-outer {
  overflow: visible; }

.teasers__wrap--slider .owl-stage {
  display: flex;
  flex-wrap: wrap; }

.teasers__wrap--slider .owl-item img {
  width: 38px; }

.teasers__wrap--slider .owl-dots {
  position: absolute;
  right: 0;
  bottom: -60px;
  display: flex;
  justify-content: flex-end;
  margin-top: 50px; }
  .teasers__wrap--slider .owl-dots button {
    display: block;
    width: 13px;
    height: 13px;
    margin-left: 8px;
    background-color: rgba(0, 38, 82, 0.2);
    border: 1px solid transparent;
    box-shadow: 0 0 0 1px transparent;
    border-radius: 20px;
    transition: all 250ms ease; }
    .teasers__wrap--slider .owl-dots button:hover, .teasers__wrap--slider .owl-dots button.active {
      background-color: #001663;
      border: 1px solid white;
      box-shadow: 0 0 0 1px #001663; }
    .teasers__wrap--slider .owl-dots button:only-child {
      display: none; }

/**
 * List.
 */
.teasers__wrap--list {
  width: calc(100% + 20px);
  margin: -25px -10px; }
  @media (max-width: 700px) {
    .teasers__wrap--list {
      width: 100%;
      margin: -25px 0; } }
  .teasers__wrap--list .teasers__teaser {
    width: calc(25% - 20px);
    height: auto;
    margin: 25px 10px; }
    @media only screen and (max-width: 1199px) {
      .teasers__wrap--list .teasers__teaser {
        width: calc(33.3333% - 20px); } }
    @media only screen and (max-width: 899px) {
      .teasers__wrap--list .teasers__teaser {
        width: calc(50% - 20px); } }
    @media (max-width: 700px) {
      .teasers__wrap--list .teasers__teaser {
        width: 100%; } }

/**
 * Teaser.
 */
.teasers__teaser {
  align-content: space-between;
  width: 305px;
  height: 100%;
  padding: 30px;
  background-color: white;
  border-radius: 8px;
  box-shadow: 0px 40px 80px rgba(0, 22, 99, 0.15); }
  @media only screen and (max-width: 1199px) {
    .teasers__teaser {
      width: 295px; } }
  @media only screen and (max-width: 899px) {
    .teasers__teaser {
      width: 277px; } }
  @media only screen and (max-width: 599px) {
    .teasers__teaser {
      width: 208px; } }

.teasers__teaser-head {
  justify-content: space-between;
  align-items: center;
  width: 100%;
  margin-bottom: 20px; }

.teasers__teaser-title {
  width: calc(100% - 45px); }

.teasers__teaser-image img {
  width: 38px;
  height: auto; }

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

.teasers__teaser-list {
  width: 100%; }
  .teasers__teaser-list li {
    display: flex;
    align-items: center;
    margin-bottom: 10px; }
    .teasers__teaser-list li svg {
      width: 16px;
      height: auto;
      margin-right: 10px;
      color: #a0b8e4; }
    .teasers__teaser-list li span {
      font-size: 16px;
      font-size: 1.6rem;
      line-height: 1.5em;
      width: calc(100% - 26px); }
    .teasers__teaser-list li:last-of-type {
      margin-bottom: 0; }

.teasers__teaser-link {
  margin-top: 20px; }
  @media only screen and (max-width: 599px) {
    .teasers__teaser-link {
      align-items: center;
      width: 100%;
      padding: 0; } }

.text-image {
  margin-bottom: 80px; }
  .text-image .wrapper {
    justify-content: space-between; }

.text-image--background-blue {
  padding: 80px 0;
  background-color: #fafcff; }

.text-image__body {
  width: calc(100% - 500px); }
  @media only screen and (max-width: 1199px) {
    .text-image__body {
      width: calc(50% - 25px); } }
  @media only screen and (max-width: 599px) {
    .text-image__body {
      width: 100%;
      margin-bottom: 80px; } }

.text-image__subtitle {
  margin-bottom: 10px; }

.text-image__editor {
  margin-top: 35px; }
  .text-image__editor ul {
    display: flex;
    flex-wrap: wrap;
    margin-bottom: -15px; }
  .text-image__editor li {
    display: flex;
    width: 50%; }
    @media only screen and (max-width: 1199px) {
      .text-image__editor li {
        width: 100%; } }
    .text-image__editor li svg {
      width: 16px;
      height: auto;
      margin-right: 10px;
      color: #a0b8e4; }

.text-image__image-wrap {
  width: 415px; }
  @media only screen and (max-width: 1199px) {
    .text-image__image-wrap {
      width: calc(50% - 25px); } }
  @media only screen and (max-width: 599px) {
    .text-image__image-wrap {
      width: 100%; } }

.text-image__image {
  display: flex;
  position: relative; }
  .text-image__image img {
    position: relative;
    width: auto;
    height: 315px;
    margin: 0 auto;
    z-index: 20; }
    @media only screen and (max-width: 899px) {
      .text-image__image img {
        height: 205px; } }
    @media only screen and (max-width: 599px) {
      .text-image__image img {
        height: 315px; } }
  .text-image__image:before {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 255px;
    background-color: #213b8b;
    border-radius: 40px 40px 0px 40px;
    box-shadow: 0px 10px 20px rgba(0, 22, 99, 0.1);
    content: '';
    z-index: 10; }
    @media only screen and (max-width: 899px) {
      .text-image__image:before {
        height: 170px; } }
    @media only screen and (max-width: 599px) {
      .text-image__image:before {
        height: 255px; } }

.text-image__image-caption {
  font-size: 24px;
  font-size: 2.4rem;
  line-height: 1.08333em;
  width: 100%;
  max-width: 300px;
  margin: 15px auto;
  color: #001663;
  font-weight: 700;
  font-family: "Source Sans Pro";
  text-align: center; }
  @media only screen and (max-width: 899px) {
    .text-image__image-caption {
      font-size: 20px;
      font-size: 2rem;
      line-height: 1.2em; } }
  @media only screen and (max-width: 599px) {
    .text-image__image-caption {
      font-size: 24px;
      font-size: 2.4rem;
      line-height: 1.08333em; } }

.workflow {
  position: relative;
  margin-bottom: 80px; }
  .workflow .wrapper {
    justify-content: space-between; }
    @media only screen and (max-width: 1199px) {
      .workflow .wrapper {
        justify-content: flex-end; } }
  .workflow:after {
    display: block;
    position: absolute;
    top: calc(50% - 144px);
    right: 0;
    width: 473px;
    height: 288px;
    background: url("./../images/desktop-3.svg") no-repeat;
    content: '';
    z-index: 1; }
    @media only screen and (max-width: 1199px) {
      .workflow:after {
        top: auto;
        bottom: 145px; } }
    @media only screen and (max-width: 899px) {
      .workflow:after {
        width: 232px;
        height: 285px;
        background: url("./../images/mobile-3.svg") no-repeat; } }
    @media only screen and (max-width: 599px) {
      .workflow:after {
        bottom: 80px; } }
  .workflow * {
    position: relative;
    z-index: 2; }

.workflow--background-blue {
  padding: 80px 0;
  background-color: #fafcff; }
  @media only screen and (max-width: 599px) {
    .workflow--background-blue {
      padding: 80px 0 145px 0; } }

@media only screen and (min-width: 1200px) {
  .workflow--background-white:after {
    top: calc(50% - 100px); } }

@media only screen and (max-width: 1199px) {
  .workflow--background-white:after {
    bottom: -80px; } }

/**
 * Steps.
 */
.workflow__steps {
  position: relative;
  width: calc(55% - 60px);
  height: fit-content; }
  @media only screen and (max-width: 1199px) {
    .workflow__steps {
      width: 100%;
      margin-bottom: 80px; } }
  @media only screen and (max-width: 599px) {
    .workflow__steps {
      margin-bottom: 120px; } }
  @media only screen and (max-width: 1199px) {
    .workflow__steps .owl-stage-outer {
      overflow: visible; } }
  .workflow__steps .owl-stage {
    display: flex; }
  .workflow__steps .owl-dots {
    position: absolute;
    bottom: -63px;
    left: 0;
    display: flex;
    justify-content: flex-end; }
    .workflow__steps .owl-dots button {
      display: block;
      width: 13px;
      height: 13px;
      margin-left: 8px;
      background-color: rgba(0, 38, 82, 0.2);
      border: 1px solid transparent;
      box-shadow: 0 0 0 1px transparent;
      border-radius: 20px;
      transition: all 250ms ease; }
      .workflow__steps .owl-dots button:hover, .workflow__steps .owl-dots button.active {
        background-color: #001663;
        border: 1px solid white;
        box-shadow: 0 0 0 1px #001663; }
      .workflow__steps .owl-dots button:only-child {
        display: none; }
  .workflow__steps .owl-item:nth-child(1) .workflow__step-icon svg {
    color: #7b61ff; }
  .workflow__steps .owl-item:nth-child(1) .workflow__step:hover .workflow__step-icon {
    background-color: rgba(123, 97, 255, 0.2); }
  .workflow__steps .owl-item:nth-child(2) .workflow__step-icon svg {
    color: #50a586; }
  .workflow__steps .owl-item:nth-child(2) .workflow__step:hover .workflow__step-icon {
    background-color: rgba(80, 165, 134, 0.2); }
  .workflow__steps .owl-item:nth-child(3) .workflow__step-icon svg {
    color: #ffd642; }
  .workflow__steps .owl-item:nth-child(3) .workflow__step:hover .workflow__step-icon {
    background-color: rgba(255, 214, 66, 0.2); }
  .workflow__steps .owl-item:nth-child(4) .workflow__step-icon svg {
    color: #004ca3; }
  .workflow__steps .owl-item:nth-child(4) .workflow__step:hover .workflow__step-icon {
    background-color: rgba(0, 76, 163, 0.2); }
  .workflow__steps .owl-item:nth-child(5) .workflow__step-icon svg {
    color: #ff1500; }
  .workflow__steps .owl-item:nth-child(5) .workflow__step:hover .workflow__step-icon {
    background-color: rgba(255, 21, 0, 0.2); }

.workflow__step {
  width: 305px;
  height: 100%;
  padding: 20px 20px 60px 20px;
  background-color: white;
  border: 4px solid white;
  border-bottom: 24px solid white;
  border-radius: 24px;
  box-shadow: 0px 2px 5px rgba(0, 0, 0, 0.05);
  transition: all 250ms ease; }
  .workflow__step:hover {
    border: 4px solid #a0b8e4;
    border-bottom: 24px solid #a0b8e4; }
    .workflow__step:hover .workflow__step-icon {
      background-color: rgba(0, 22, 99, 0.2); }

.workflow__step-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  margin-bottom: 20px;
  border-radius: 8px;
  background-color: white;
  transition: all 250ms ease; }
  .workflow__step-icon svg {
    width: 32px;
    height: 32px;
    color: #001663; }

.workflow__step-title {
  margin-bottom: 10px; }

/**
 * Image.
 */
.worflow__image-column {
  width: calc(45% - 60px); }
  @media only screen and (max-width: 1199px) {
    .worflow__image-column {
      width: 100%;
      max-width: 520px; } }

.worflow_subtitle {
  margin-bottom: 10px; }

.worflow__title {
  margin-bottom: 30px; }

.worflow__image {
  width: 100%;
  height: 305px; }
  @media only screen and (max-width: 599px) {
    .worflow__image {
      height: 190px; } }
  .worflow__image img {
    filter: drop-shadow(0px 10px 20px rgba(0, 38, 82, 0.1));
    border-radius: 40px 40px 0px 40px; }

.workflow__link-wrap {
  display: flex;
  justify-content: flex-end;
  margin-top: 40px; }

.banner {
  background-color: #001663;
  width: calc(100% - 37px);
  border-bottom-right-radius: 85px;
  border: 8px solid #7b61ff;
  border-top: 0;
  border-left: 0;
  display: none;
  margin-bottom: 50px; }
  @media only screen and (max-width: 899px) {
    .banner {
      width: calc(100% - 7px); } }
  .banner .wrapper {
    position: relative;
    margin-right: auto; }
    .banner .wrapper:after {
      content: '';
      width: 75px;
      height: 45px;
      border-radius: 100px;
      background-color: #d6e9ff;
      position: absolute;
      right: 20px;
      bottom: -27px; }
      @media only screen and (max-width: 899px) {
        .banner .wrapper:after {
          height: 30px;
          bottom: -20px;
          right: 70px; } }
    .banner .wrapper:before {
      content: '';
      width: 120px;
      height: 45px;
      border-radius: 100px;
      background-color: #a0b8e4;
      position: absolute;
      right: 115px;
      bottom: -27px; }
      @media only screen and (max-width: 899px) {
        .banner .wrapper:before {
          height: 30px;
          bottom: -20px;
          right: 165px; } }
  .banner.is-active {
    display: flex; }

.banner-content {
  width: 65%;
  padding: 40px 0; }
  @media only screen and (max-width: 899px) {
    .banner-content {
      width: 100%;
      padding: 20px 0;
      padding-bottom: 10px; } }

.banner-link {
  width: 25%;
  display: flex;
  justify-content: center;
  align-items: center; }
  @media only screen and (max-width: 899px) {
    .banner-link {
      width: 100%;
      justify-content: flex-start; } }
  .banner-link a {
    padding: 16px 40px;
    background-color: #fafcff;
    border-radius: 32px 32px 0px 32px;
    font-weight: 700;
    font-size: 20px;
    line-height: 24px;
    letter-spacing: -0.02em;
    color: #001663;
    display: flex;
    align-items: center;
    font-family: "Libre Franklin";
    transition: all 0.2s ease-in; }
    @media only screen and (max-width: 899px) {
      .banner-link a {
        padding: 10px 16px;
        font-size: 15px;
        margin-bottom: 30px; } }
    .banner-link a:hover {
      padding-right: 50px; }
      .banner-link a:hover svg {
        left: 10px; }
  .banner-link svg {
    transition: all 0.2s ease-in;
    position: relative;
    height: 16px;
    width: 16px;
    margin-left: 8px;
    left: 0; }

.banner-subtitle {
  font-weight: 600;
  font-size: 14px;
  line-height: 24px;
  letter-spacing: 0.03em;
  color: #e5f1ff;
  position: relative;
  display: inline-flex; }
  .banner-subtitle:after {
    content: '';
    width: 33px;
    height: 3px;
    background-color: #e5f1ff;
    border-radius: 5px;
    position: absolute;
    right: -37px;
    bottom: 11px; }

.banner-title {
  font-size: 26px;
  line-height: 32px;
  letter-spacing: 0.02em;
  color: #e5f1ff; }
  @media only screen and (max-width: 899px) {
    .banner-title {
      font-size: 16px;
      line-height: 23px; } }

.banner-close {
  cursor: pointer;
  position: absolute;
  top: 37px;
  right: 20px;
  pointer-events: all;
  z-index: 101; }
  @media only screen and (max-width: 899px) {
    .banner-close {
      top: 20px; } }
  .banner-close svg {
    color: #fafcff;
    height: 18px;
    width: 18px;
    pointer-events: none; }

@media only screen and (max-width: 899px) {
  .lessons .wrapper {
    display: flex;
    flex-wrap: wrap;
    justify-content: center; }
    .lessons .wrapper .lesson-popup {
      order: 1; }
    .lessons .wrapper .lessons__title {
      order: 2;
      width: 100%; }
    .lessons .wrapper .lessons__wrap {
      order: 3; } }

.lessons__title {
  text-align: center;
  margin-bottom: 50px; }
  @media only screen and (max-width: 899px) {
    .lessons__title {
      margin-bottom: 30px; } }

.lessons__wrap {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 0 20px; }

.lessons-item {
  width: 266px;
  border: 1px solid #E5F1FF;
  box-shadow: 0px 10px 20px rgba(0, 35, 75, 0.1);
  border-radius: 8px;
  border-left: 10px solid;
  padding-top: 4px;
  padding-left: 20px;
  padding-right: 20px;
  background-color: white;
  position: relative; }
  @media only screen and (max-width: 1199px) {
    .lessons-item {
      width: 250px; } }
  @media only screen and (max-width: 899px) {
    .lessons-item {
      width: 100%;
      margin-bottom: 30px; } }
  .lessons-item:nth-child(1) {
    border-left-color: #A0B8E4; }
    .lessons-item:nth-child(1) .lessons-item__label {
      background-color: #E5F1FF; }
    .lessons-item:nth-child(1) .lessons-item__open {
      background-color: #A0B8E4; }
      .lessons-item:nth-child(1) .lessons-item__open svg path {
        fill: #001663; }
  .lessons-item:nth-child(2) {
    border-left-color: #009CCD; }
    .lessons-item:nth-child(2) .lessons-item__label {
      background-color: #CCEBF5; }
    .lessons-item:nth-child(2) .lessons-item__open {
      background-color: #009CCD; }
      .lessons-item:nth-child(2) .lessons-item__open svg path {
        fill: white; }
  .lessons-item:nth-child(3) {
    border-left-color: #7B61FF; }
    .lessons-item:nth-child(3) .lessons-item__label {
      background-color: #e5dfff; }
    .lessons-item:nth-child(3) .lessons-item__open {
      background-color: #7B61FF; }
      .lessons-item:nth-child(3) .lessons-item__open svg path {
        fill: white; }
  .lessons-item.is-active .lessons-item__open svg {
    transform: rotate(180deg); }

.lessons-item__name {
  font-size: 12px;
  line-height: 24px;
  letter-spacing: 0.03em;
  font-weight: 400;
  opacity: 0.8;
  color: #001663; }
  .lessons-item__name span {
    font-family: "Source Sans Pro";
    font-weight: 700; }

.lessons-item__price {
  font-style: italic;
  display: flex;
  align-items: flex-end;
  font-size: 12px;
  line-height: 24px;
  color: #001663;
  letter-spacing: 0.03em;
  margin-bottom: 15px; }
  .lessons-item__price span {
    margin-left: 10px;
    font-weight: 700;
    font-size: 30px;
    line-height: 34px;
    letter-spacing: 0.02em;
    font-style: normal;
    font-family: "Source Sans Pro"; }

.lessons-item__labels {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  padding-bottom: 10px;
  margin-bottom: 20px;
  border-bottom: 1px solid #E5F1FF; }
  @media only screen and (max-width: 899px) {
    .lessons-item__labels {
      width: 100%;
      margin-bottom: 0px; } }

.lessons-item__label {
  padding: 1px 8px;
  border-radius: 10px;
  font-weight: 600;
  font-size: 13px;
  line-height: 24px;
  letter-spacing: 0.03em;
  color: #001663;
  display: flex;
  align-items: center;
  font-family: "Source Sans Pro"; }
  .lessons-item__label svg {
    margin-right: 4px;
    width: 14px;
    height: 24px; }
    .lessons-item__label svg path {
      fill: #001663; }

.lesson-item__bulletpoints {
  display: flex;
  flex-wrap: wrap;
  margin-top: 10px; }
  @media only screen and (max-width: 899px) {
    .lesson-item__bulletpoints {
      display: none; } }

.lesson-item__bulletpoint {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 10px;
  width: 100%; }
  .lesson-item__bulletpoint .icon svg {
    width: 19px;
    height: 19px;
    position: relative;
    top: 2px; }
    .lesson-item__bulletpoint .icon svg path {
      fill: #001663; }
  .lesson-item__bulletpoint .text {
    width: calc(100% - 33px);
    margin-left: 13px; }
    .lesson-item__bulletpoint .text p {
      font-size: 12px;
      line-height: 160%;
      letter-spacing: 0.03em;
      font-weight: 400; }

.lesson-popup {
  position: relative;
  display: flex;
  justify-content: center;
  margin-top: 50px; }
  @media only screen and (max-width: 899px) {
    .lesson-popup {
      margin-bottom: 28px; } }

.lesson-popup__button {
  font-weight: 700;
  font-size: 20px;
  height: 56px;
  line-height: 24px;
  padding: 16px 28px !important;
  border-radius: 32px 32px 0px 32px; }
  @media only screen and (max-width: 899px) {
    .lesson-popup__button {
      font-size: 18px; } }

.lesson-popup__iframe {
  opacity: 0;
  pointer-events: none;
  transition: all 300ms ease-in-out;
  position: absolute;
  top: -500px;
  left: 50%;
  transform: translate(-50%, 0);
  max-width: 570px;
  max-height: 500px;
  height: 100%;
  width: 100%;
  border-radius: 7.01923px;
  background-color: white;
  z-index: 1000; }
  @media only screen and (max-width: 899px) {
    .lesson-popup__iframe {
      max-width: calc(100% - 0px);
      max-height: 400px;
      top: -100px; } }
  .lesson-popup__iframe.is-active {
    opacity: 1;
    pointer-events: all; }
  .lesson-popup__iframe::-webkit-scrollbar {
    width: 5px;
    border-radius: 1px;
    background-color: rgba(0, 22, 99, 0.1);
    transition: width 150ms ease-in; }
  .lesson-popup__iframe::-webkit-scrollbar-thumb {
    background: #001663;
    border-radius: 10px; }
  .lesson-popup__iframe .calendly-inline-widget {
    border-radius: 7.01923px; }
    @media only screen and (max-width: 899px) {
      .lesson-popup__iframe .calendly-inline-widget {
        max-height: 400px; } }
    @media only screen and (max-width: 599px) {
      .lesson-popup__iframe .calendly-inline-widget {
        min-width: 320px !important;
        right: 25px; } }
  .lesson-popup__iframe iframe {
    max-width: 570px;
    max-height: 500px;
    height: 100%;
    width: 100%; }
    @media only screen and (max-width: 899px) {
      .lesson-popup__iframe iframe {
        max-width: calc(100% - 0px);
        max-height: 400px; } }
    .lesson-popup__iframe iframe iframe::-webkit-scrollbar {
      width: 5px;
      border-radius: 1px;
      background-color: rgba(0, 22, 99, 0.1);
      transition: width 150ms ease-in; }
    .lesson-popup__iframe iframe iframe::-webkit-scrollbar-thumb {
      background: #001663;
      border-radius: 10px; }

.lesson-popup__close {
  position: absolute;
  top: -16px;
  right: -16px;
  height: 32px;
  width: 32px;
  border-radius: 50px;
  background-color: #001663;
  display: flex;
  justify-content: center;
  align-items: center;
  cursor: pointer; }
  .lesson-popup__close svg {
    height: 18px;
    width: 18px; }
    .lesson-popup__close svg path {
      fill: white; }

.lessons-item__open {
  width: 32px;
  height: 32px;
  border-radius: 25px;
  display: none;
  justify-content: center;
  align-items: center;
  position: absolute;
  top: 38px;
  right: -16px; }
  @media only screen and (max-width: 899px) {
    .lessons-item__open {
      display: flex; } }
  .lessons-item__open svg {
    transition: all 300ms ease-in-out;
    width: 18px;
    height: 18px; }

.lessons__bg {
  height: 100vh;
  width: 100vw;
  top: 0;
  right: 0;
  position: fixed;
  background-color: rgba(0, 22, 99, 0.3);
  opacity: 0;
  pointer-events: none;
  z-index: 99;
  transition: all 300ms ease-in-out; }
  .lessons__bg.overlay {
    opacity: 1;
    pointer-events: all; }

/**
 * Utilities.
 */
/**
 * Color utility classes.
 *
 * Automatically generated color and background color utility classes based on every color definition in `settings/_color.scss`.
 * Loop through every `$key` and `$map` in the `$colors` variable map defined in `settings/_color.scss`.
 */
/**
			 * `color` black-100 color utility.
			 */
.color-black-100 {
  color: black; }

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

/**
			 * `color` rgba(0, 0, 0, 0.05)-5 color utility.
			 */
.color-black-5 {
  color: rgba(0, 0, 0, 0.05); }

/**
			 * `background-color` rgba(0, 0, 0, 0.05)-5 color utility.
			 */
.background-color-black-5 {
  background-color: rgba(0, 0, 0, 0.05); }

/**
			 * `color` rgba(0, 0, 0, 0.03)-3 color utility.
			 */
.color-black-3 {
  color: rgba(0, 0, 0, 0.03); }

/**
			 * `background-color` rgba(0, 0, 0, 0.03)-3 color utility.
			 */
.background-color-black-3 {
  background-color: rgba(0, 0, 0, 0.03); }

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

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

/**
			 * `color` #ff1500-100 color utility.
			 */
.color-red-100 {
  color: #ff1500; }

/**
			 * `background-color` #ff1500-100 color utility.
			 */
.background-color-red-100 {
  background-color: #ff1500; }

/**
			 * `color` rgba(255, 21, 0, 0.2)-20 color utility.
			 */
.color-red-20 {
  color: rgba(255, 21, 0, 0.2); }

/**
			 * `background-color` rgba(255, 21, 0, 0.2)-20 color utility.
			 */
.background-color-red-20 {
  background-color: rgba(255, 21, 0, 0.2); }

/**
			 * `color` #fafcff-100 color utility.
			 */
.color-silver-100 {
  color: #fafcff; }

/**
			 * `background-color` #fafcff-100 color utility.
			 */
.background-color-silver-100 {
  background-color: #fafcff; }

/**
			 * `color` rgba(250, 252, 255, 0.2)-20 color utility.
			 */
.color-silver-20 {
  color: rgba(250, 252, 255, 0.2); }

/**
			 * `background-color` rgba(250, 252, 255, 0.2)-20 color utility.
			 */
.background-color-silver-20 {
  background-color: rgba(250, 252, 255, 0.2); }

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

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

/**
			 * `color` #545454-100 color utility.
			 */
.color-grey-100 {
  color: #545454; }

/**
			 * `background-color` #545454-100 color utility.
			 */
.background-color-grey-100 {
  background-color: #545454; }

/**
			 * `color` rgba(84, 84, 84, 0.2)-20 color utility.
			 */
.color-grey-20 {
  color: rgba(84, 84, 84, 0.2); }

/**
			 * `background-color` rgba(84, 84, 84, 0.2)-20 color utility.
			 */
.background-color-grey-20 {
  background-color: rgba(84, 84, 84, 0.2); }

/**
			 * `color` #004ca3-100 color utility.
			 */
.color-navy-blue-100 {
  color: #004ca3; }

/**
			 * `background-color` #004ca3-100 color utility.
			 */
.background-color-navy-blue-100 {
  background-color: #004ca3; }

/**
			 * `color` rgba(0, 76, 163, 0.2)-20 color utility.
			 */
.color-navy-blue-20 {
  color: rgba(0, 76, 163, 0.2); }

/**
			 * `background-color` rgba(0, 76, 163, 0.2)-20 color utility.
			 */
.background-color-navy-blue-20 {
  background-color: rgba(0, 76, 163, 0.2); }

/**
			 * `color` rgba(182, 186, 210, 0.1)-10 color utility.
			 */
.color-background-grey-10 {
  color: rgba(182, 186, 210, 0.1); }

/**
			 * `background-color` rgba(182, 186, 210, 0.1)-10 color utility.
			 */
.background-color-background-grey-10 {
  background-color: rgba(182, 186, 210, 0.1); }

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

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

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

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

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

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

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

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

/**
			 * `color` #009ccc-100 color utility.
			 */
.color-pacific-blue-100 {
  color: #009ccc; }

/**
			 * `background-color` #009ccc-100 color utility.
			 */
.background-color-pacific-blue-100 {
  background-color: #009ccc; }

/**
			 * `color` #ccebf5-20 color utility.
			 */
.color-pacific-blue-20 {
  color: #ccebf5; }

/**
			 * `background-color` #ccebf5-20 color utility.
			 */
.background-color-pacific-blue-20 {
  background-color: #ccebf5; }

/**
			 * `color` #7b61ff-100 color utility.
			 */
.color-slate-blue-100 {
  color: #7b61ff; }

/**
			 * `background-color` #7b61ff-100 color utility.
			 */
.background-color-slate-blue-100 {
  background-color: #7b61ff; }

/**
			 * `color` rgba(123, 97, 255, 0.2)-20 color utility.
			 */
.color-slate-blue-20 {
  color: rgba(123, 97, 255, 0.2); }

/**
			 * `background-color` rgba(123, 97, 255, 0.2)-20 color utility.
			 */
.background-color-slate-blue-20 {
  background-color: rgba(123, 97, 255, 0.2); }

/**
			 * `color` #50a586-100 color utility.
			 */
.color-green-100 {
  color: #50a586; }

/**
			 * `background-color` #50a586-100 color utility.
			 */
.background-color-green-100 {
  background-color: #50a586; }

/**
			 * `color` rgba(80, 165, 134, 0.2)-20 color utility.
			 */
.color-green-20 {
  color: rgba(80, 165, 134, 0.2); }

/**
			 * `background-color` rgba(80, 165, 134, 0.2)-20 color utility.
			 */
.background-color-green-20 {
  background-color: rgba(80, 165, 134, 0.2); }

/**
			 * `color` #ffd642-100 color utility.
			 */
.color-yellow-100 {
  color: #ffd642; }

/**
			 * `background-color` #ffd642-100 color utility.
			 */
.background-color-yellow-100 {
  background-color: #ffd642; }

/**
			 * `color` rgba(255, 214, 66, 0.2)-20 color utility.
			 */
.color-yellow-20 {
  color: rgba(255, 214, 66, 0.2); }

/**
			 * `background-color` rgba(255, 214, 66, 0.2)-20 color utility.
			 */
.background-color-yellow-20 {
  background-color: rgba(255, 214, 66, 0.2); }

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

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

/**
			 * `color` rgba(0, 38, 82, 0.2)-20 color utility.
			 */
.color-prussian-blue-20 {
  color: rgba(0, 38, 82, 0.2); }

/**
			 * `background-color` rgba(0, 38, 82, 0.2)-20 color utility.
			 */
.background-color-prussian-blue-20 {
  background-color: rgba(0, 38, 82, 0.2); }

/**
			 * `color` rgba(0, 38, 82, 0.1)-10 color utility.
			 */
.color-prussian-blue-10 {
  color: rgba(0, 38, 82, 0.1); }

/**
			 * `background-color` rgba(0, 38, 82, 0.1)-10 color utility.
			 */
.background-color-prussian-blue-10 {
  background-color: rgba(0, 38, 82, 0.1); }

/**
			 * `color` #001663-100 color utility.
			 */
.color-sapphire-100 {
  color: #001663; }

/**
			 * `background-color` #001663-100 color utility.
			 */
.background-color-sapphire-100 {
  background-color: #001663; }

/**
			 * `color` rgba(0, 22, 99, 0.5)-50 color utility.
			 */
.color-sapphire-50 {
  color: rgba(0, 22, 99, 0.5); }

/**
			 * `background-color` rgba(0, 22, 99, 0.5)-50 color utility.
			 */
.background-color-sapphire-50 {
  background-color: rgba(0, 22, 99, 0.5); }

/**
			 * `color` rgba(0, 22, 99, 0.3)-30 color utility.
			 */
.color-sapphire-30 {
  color: rgba(0, 22, 99, 0.3); }

/**
			 * `background-color` rgba(0, 22, 99, 0.3)-30 color utility.
			 */
.background-color-sapphire-30 {
  background-color: rgba(0, 22, 99, 0.3); }

/**
			 * `color` rgba(0, 22, 99, 0.25)-25 color utility.
			 */
.color-sapphire-25 {
  color: rgba(0, 22, 99, 0.25); }

/**
			 * `background-color` rgba(0, 22, 99, 0.25)-25 color utility.
			 */
.background-color-sapphire-25 {
  background-color: rgba(0, 22, 99, 0.25); }

/**
			 * `color` rgba(0, 22, 99, 0.2)-20 color utility.
			 */
.color-sapphire-20 {
  color: rgba(0, 22, 99, 0.2); }

/**
			 * `background-color` rgba(0, 22, 99, 0.2)-20 color utility.
			 */
.background-color-sapphire-20 {
  background-color: rgba(0, 22, 99, 0.2); }

/**
			 * `color` rgba(0, 22, 99, 0.15)-15 color utility.
			 */
.color-sapphire-15 {
  color: rgba(0, 22, 99, 0.15); }

/**
			 * `background-color` rgba(0, 22, 99, 0.15)-15 color utility.
			 */
.background-color-sapphire-15 {
  background-color: rgba(0, 22, 99, 0.15); }

/**
			 * `color` rgba(0, 22, 99, 0.1)-10 color utility.
			 */
.color-sapphire-10 {
  color: rgba(0, 22, 99, 0.1); }

/**
			 * `background-color` rgba(0, 22, 99, 0.1)-10 color utility.
			 */
.background-color-sapphire-10 {
  background-color: rgba(0, 22, 99, 0.1); }

/**
			 * `color` rgba(0, 22, 99, 0.08)-8 color utility.
			 */
.color-sapphire-8 {
  color: rgba(0, 22, 99, 0.08); }

/**
			 * `background-color` rgba(0, 22, 99, 0.08)-8 color utility.
			 */
.background-color-sapphire-8 {
  background-color: rgba(0, 22, 99, 0.08); }

/**
			 * `color` #a0b8e4-100 color utility.
			 */
.color-perano-100 {
  color: #a0b8e4; }

/**
			 * `background-color` #a0b8e4-100 color utility.
			 */
.background-color-perano-100 {
  background-color: #a0b8e4; }

/**
			 * `color` rgba(160, 184, 228, 0.4)-40 color utility.
			 */
.color-perano-40 {
  color: rgba(160, 184, 228, 0.4); }

/**
			 * `background-color` rgba(160, 184, 228, 0.4)-40 color utility.
			 */
.background-color-perano-40 {
  background-color: rgba(160, 184, 228, 0.4); }

/**
 * Visually hide any element from the user.
 */
.visually-hidden {
  display: block;
  position: absolute;
  width: 1px;
  height: 1px;
  white-space: nowrap;
  overflow: hidden;
  clip: rect(1px, 1px, 1px, 1px);
  clip-path: inset(1px); }

/**
 * Make lazyload placeholder 100% wide.
 */
.lazyload {
  width: 100%; }

/**
 * Helper class for object fit polyfill. Add this class to any element
 * that utilizes the `object-fit` property.
 */

.object-fit {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  font-family: 'object-fit: cover;';
  object-fit: cover; }

/**
 * Align center.
 */
.align-center {
  text-align: center; }

/**
 * Align left.
 */
.align-left {
  text-align: left; }

/**
 * Align right.
 */
.align-right {
  text-align: right; }

/**
 * Object fit.
 *
 * 1. Font family polyfill with (https://github.com/bfred-it/object-fit-images).
 * Loop through every value for the `object-fit` property.
 */
/**
	 * `object-fit` fill utility class.
	 */
.fill {
  font-family: "object-fit: fill;";
  /* 1 */
  object-fit: fill; }

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

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

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

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

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

.relative {
  position: relative; }

.absolute {
  position: absolute; }

.fixed {
  position: fixed; }

.sticky {
  position: sticky; }

/**
 * Font family utility classes.
 */
.text-xs-default {
  font-family: "Open Sans"; }

.text-xs-heading {
  font-family: "Source Sans Pro"; }

.text-xs-button {
  font-family: "Libre Franklin"; }

@media only screen and (max-width: 599px) {
  .text-sm-default {
    font-family: "Open Sans"; }
  .text-sm-heading {
    font-family: "Source Sans Pro"; }
  .text-sm-button {
    font-family: "Libre Franklin"; } }

@media only screen and (min-width: 600px) {
  .text-md-default {
    font-family: "Open Sans"; }
  .text-md-heading {
    font-family: "Source Sans Pro"; }
  .text-md-button {
    font-family: "Libre Franklin"; } }

@media only screen and (min-width: 900px) {
  .text-lg-default {
    font-family: "Open Sans"; }
  .text-lg-heading {
    font-family: "Source Sans Pro"; }
  .text-lg-button {
    font-family: "Libre Franklin"; } }

@media only screen and (min-width: 1200px) {
  .text-xl-default {
    font-family: "Open Sans"; }
  .text-xl-heading {
    font-family: "Source Sans Pro"; }
  .text-xl-button {
    font-family: "Libre Franklin"; } }

/**
 * Text size utility classes.
 */
.text-xs-h1 {
  font-size: 84px;
  font-size: 8.4rem;
  line-height: 1.14286em; }

.text-xs-h2 {
  font-size: 48px;
  font-size: 4.8rem;
  line-height: 1.125em; }

.text-xs-h3 {
  font-size: 36px;
  font-size: 3.6rem;
  line-height: 1.05556em; }

.text-xs-h4 {
  font-size: 24px;
  font-size: 2.4rem;
  line-height: 1.08333em; }

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

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

@media only screen and (max-width: 599px) {
  .text-sm-h1 {
    font-size: 84px;
    font-size: 8.4rem;
    line-height: 1.14286em; }
  .text-sm-h2 {
    font-size: 48px;
    font-size: 4.8rem;
    line-height: 1.125em; }
  .text-sm-h3 {
    font-size: 36px;
    font-size: 3.6rem;
    line-height: 1.05556em; }
  .text-sm-h4 {
    font-size: 24px;
    font-size: 2.4rem;
    line-height: 1.08333em; }
  .text-sm-h5 {
    font-size: 20px;
    font-size: 2rem;
    line-height: 1.3em; }
  .text-sm-p {
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 1.5em; } }

@media only screen and (min-width: 600px) {
  .text-md-h1 {
    font-size: 84px;
    font-size: 8.4rem;
    line-height: 1.14286em; }
  .text-md-h2 {
    font-size: 48px;
    font-size: 4.8rem;
    line-height: 1.125em; }
  .text-md-h3 {
    font-size: 36px;
    font-size: 3.6rem;
    line-height: 1.05556em; }
  .text-md-h4 {
    font-size: 24px;
    font-size: 2.4rem;
    line-height: 1.08333em; }
  .text-md-h5 {
    font-size: 20px;
    font-size: 2rem;
    line-height: 1.3em; }
  .text-md-p {
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 1.5em; } }

@media only screen and (min-width: 900px) {
  .text-lg-h1 {
    font-size: 84px;
    font-size: 8.4rem;
    line-height: 1.14286em; }
  .text-lg-h2 {
    font-size: 48px;
    font-size: 4.8rem;
    line-height: 1.125em; }
  .text-lg-h3 {
    font-size: 36px;
    font-size: 3.6rem;
    line-height: 1.05556em; }
  .text-lg-h4 {
    font-size: 24px;
    font-size: 2.4rem;
    line-height: 1.08333em; }
  .text-lg-h5 {
    font-size: 20px;
    font-size: 2rem;
    line-height: 1.3em; }
  .text-lg-p {
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 1.5em; } }

@media only screen and (min-width: 1200px) {
  .text-xl-h1 {
    font-size: 84px;
    font-size: 8.4rem;
    line-height: 1.14286em; }
  .text-xl-h2 {
    font-size: 48px;
    font-size: 4.8rem;
    line-height: 1.125em; }
  .text-xl-h3 {
    font-size: 36px;
    font-size: 3.6rem;
    line-height: 1.05556em; }
  .text-xl-h4 {
    font-size: 24px;
    font-size: 2.4rem;
    line-height: 1.08333em; }
  .text-xl-h5 {
    font-size: 20px;
    font-size: 2rem;
    line-height: 1.3em; }
  .text-xl-p {
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 1.5em; } }

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

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

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

@media only screen and (max-width: 599px) {
  .text-sm-left {
    text-align: left; }
  .text-sm-right {
    text-align: right; }
  .text-sm-center {
    text-align: center; } }

@media only screen and (min-width: 600px) {
  .text-md-left {
    text-align: left; }
  .text-md-right {
    text-align: right; }
  .text-md-center {
    text-align: center; } }

@media only screen and (min-width: 900px) {
  .text-lg-left {
    text-align: left; }
  .text-lg-right {
    text-align: right; }
  .text-lg-center {
    text-align: center; } }

@media only screen and (min-width: 1200px) {
  .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; }

@media only screen and (max-width: 599px) {
  .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; } }

@media only screen and (min-width: 600px) {
  .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; } }

@media only screen and (min-width: 900px) {
  .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; } }

@media only screen and (min-width: 1200px) {
  .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; }

@media only screen and (max-width: 599px) {
  .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; } }

@media only screen and (min-width: 600px) {
  .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; } }

@media only screen and (min-width: 900px) {
  .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; } }

@media only screen and (min-width: 1200px) {
  .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; }

/**
 * 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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFpbi5jc3MiLCJzb3VyY2VzIjpbIm1haW4uc2NzcyIsInNldHRpbmdzL19hbGwuc2NzcyIsInNldHRpbmdzL190eXBvZ3JhcGh5LnNjc3MiLCJzZXR0aW5ncy9fY29sb3Iuc2NzcyIsInNldHRpbmdzL196LWluZGV4LnNjc3MiLCJzZXR0aW5ncy9fZGVmaW5pdGlvbnMuc2NzcyIsIi4uLy4uL2J1aWxkL25vZGVfbW9kdWxlcy9ub3JtYWxpemUuY3NzL25vcm1hbGl6ZS5jc3MiLCIuLi8uLi9idWlsZC9ub2RlX21vZHVsZXMvb3dsLmNhcm91c2VsL3NyYy9zY3NzL293bC5jYXJvdXNlbC5zY3NzIiwiLi4vLi4vYnVpbGQvbm9kZV9tb2R1bGVzL293bC5jYXJvdXNlbC9zcmMvc2Nzcy9fY29yZS5zY3NzIiwiLi4vLi4vYnVpbGQvbm9kZV9tb2R1bGVzL293bC5jYXJvdXNlbC9zcmMvc2Nzcy9fYW5pbWF0ZS5zY3NzIiwiLi4vLi4vYnVpbGQvbm9kZV9tb2R1bGVzL293bC5jYXJvdXNlbC9zcmMvc2Nzcy9fYXV0b2hlaWdodC5zY3NzIiwiLi4vLi4vYnVpbGQvbm9kZV9tb2R1bGVzL293bC5jYXJvdXNlbC9zcmMvc2Nzcy9fbGF6eWxvYWQuc2NzcyIsIi4uLy4uL2J1aWxkL25vZGVfbW9kdWxlcy9vd2wuY2Fyb3VzZWwvc3JjL3Njc3MvX3ZpZGVvLnNjc3MiLCJ0b29scy9fYWxsLnNjc3MiLCJ0b29scy9fZnVuY3Rpb25zLnNjc3MiLCJ0b29scy9fbWFnbmlmaWMtcG9wdXAuc2NzcyIsInRvb2xzL19taXhpbnMuc2NzcyIsImdlbmVyaWMvX2Jhc2Uuc2NzcyIsImdlbmVyaWMvX3Jlc2V0LnNjc3MiLCJvYmplY3RzL19idXR0b25zLnNjc3MiLCJvYmplY3RzL19jb250YWluZXIuc2NzcyIsIm9iamVjdHMvX2NvbnRlbnQtY29uc3RyYWludC5zY3NzIiwib2JqZWN0cy9fZmxleC5zY3NzIiwib2JqZWN0cy9fZm9ybS5zY3NzIiwib2JqZWN0cy9faGVhZGluZ3Muc2NzcyIsIm9iamVjdHMvX2xhenktbG9hZC5zY3NzIiwib2JqZWN0cy9fbGlua3Muc2NzcyIsIm9iamVjdHMvX3BhZ2luYXRpb24uc2NzcyIsIm9iamVjdHMvX3JhdGluZy5zY3NzIiwib2JqZWN0cy9fd3JhcHBlci5zY3NzIiwiY29tcG9uZW50cy9fY21zLW91dHB1dC5zY3NzIiwiY29tcG9uZW50cy9fY29udGVudC1kZWZhdWx0LnNjc3MiLCJjb21wb25lbnRzL19jb250ZW50LWZhcS5zY3NzIiwiY29tcG9uZW50cy9fY29udGVudC1mb3JtLnNjc3MiLCJjb21wb25lbnRzL19jb250ZW50LWhlYWRlci5zY3NzIiwiY29tcG9uZW50cy9fZWRpdG9yLWltYWdlLnNjc3MiLCJjb21wb25lbnRzL19mb290ZXIuc2NzcyIsImNvbXBvbmVudHMvX2dvb2dsZS1tYXBzLnNjc3MiLCJjb21wb25lbnRzL19oZWFkZXIuc2NzcyIsImNvbXBvbmVudHMvX2ltYWdlLWZhcS5zY3NzIiwiY29tcG9uZW50cy9fbGFuZ3VhZ2Utc3dpdGNoLnNjc3MiLCJjb21wb25lbnRzL19sb2NhdGlvbi1zZWFyY2guc2NzcyIsImNvbXBvbmVudHMvX25hdmlnYXRpb24tbW9iaWxlLnNjc3MiLCJjb21wb25lbnRzL19uZXdzLWl0ZW0uc2NzcyIsImNvbXBvbmVudHMvX25ld3MtbGF0ZXN0LnNjc3MiLCJjb21wb25lbnRzL19uZXdzLWxpc3Quc2NzcyIsImNvbXBvbmVudHMvX3Jldmlldy1pdGVtLnNjc3MiLCJjb21wb25lbnRzL19yZXZpZXctbGF0ZXN0LnNjc3MiLCJjb21wb25lbnRzL19yZXZpZXctbGlzdC5zY3NzIiwiY29tcG9uZW50cy9fdGVhbS5zY3NzIiwiY29tcG9uZW50cy9fdGVhc2Vycy5zY3NzIiwiY29tcG9uZW50cy9fdGV4dC1pbWFnZS5zY3NzIiwiY29tcG9uZW50cy9fd29ya2Zsb3cuc2NzcyIsImNvbXBvbmVudHMvX2Jhbm5lci5zY3NzIiwiY29tcG9uZW50cy9fbGVzc29ucy5zY3NzIiwidXRpbGl0aWVzL19jb2xvci5zY3NzIiwidXRpbGl0aWVzL19oZWxwZXJzLnNjc3MiLCJ1dGlsaXRpZXMvX29iamVjdC1maXQuc2NzcyIsInV0aWxpdGllcy9fcG9zaXRpb24uc2NzcyIsInV0aWxpdGllcy9fdGV4dC5zY3NzIiwidXRpbGl0aWVzL192ZXJ0aWNhbC1yaHl0aG0uc2NzcyIsInV0aWxpdGllcy9fei1pbmRleC5zY3NzIl0sInNvdXJjZXNDb250ZW50IjpbIi8qKlxyXG4gKiBTZXR0aW5ncy5cclxuICovXHJcbkBpbXBvcnQgJ3NldHRpbmdzL2FsbCc7XHJcblxyXG5cclxuLyoqXHJcbiAqIFZlbmRvci5cclxuICovXHJcbkBpbXBvcnQgJy4uLy4uL2J1aWxkL25vZGVfbW9kdWxlcy9ub3JtYWxpemUuY3NzL25vcm1hbGl6ZSc7XHJcbkBpbXBvcnQgJy4uLy4uL2J1aWxkL25vZGVfbW9kdWxlcy9vd2wuY2Fyb3VzZWwvc3JjL3Njc3Mvb3dsLmNhcm91c2VsJztcclxuXHJcbi8qKlxyXG4gKiBUb29scy5cclxuICovXHJcbkBpbXBvcnQgJ3Rvb2xzL2FsbCc7XHJcblxyXG5cclxuLyoqXHJcbiAqIEVsZW1lbnRzLlxyXG4gKi9cclxuXHJcblxyXG4vKipcclxuICogR2VuZXJhbC5cclxuICovXHJcbkBpbXBvcnQgJ2dlbmVyaWMvYmFzZSc7XHJcbkBpbXBvcnQgJ2dlbmVyaWMvcmVzZXQnO1xyXG5cclxuXHJcbi8qKlxyXG4gKiBPYmplY3RzLlxyXG4gKi9cclxuQGltcG9ydCAnb2JqZWN0cy9idXR0b25zJztcclxuQGltcG9ydCAnb2JqZWN0cy9jb250YWluZXInO1xyXG5AaW1wb3J0ICdvYmplY3RzL2NvbnRlbnQtY29uc3RyYWludCc7XHJcbkBpbXBvcnQgJ29iamVjdHMvZmxleCc7XHJcbkBpbXBvcnQgJ29iamVjdHMvZm9ybSc7XHJcbkBpbXBvcnQgJ29iamVjdHMvaGVhZGluZ3MnO1xyXG5AaW1wb3J0ICdvYmplY3RzL2xhenktbG9hZCc7XHJcbkBpbXBvcnQgJ29iamVjdHMvbGlua3MnO1xyXG5AaW1wb3J0ICdvYmplY3RzL3BhZ2luYXRpb24nO1xyXG5AaW1wb3J0ICdvYmplY3RzL3JhdGluZyc7XHJcbkBpbXBvcnQgJ29iamVjdHMvd3JhcHBlcic7XHJcblxyXG5cclxuLyoqXHJcbiAqIENvbXBvbmVudHMuXHJcbiAqL1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL2Ntcy1vdXRwdXQnO1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL2NvbnRlbnQtZGVmYXVsdCc7XHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvY29udGVudC1mYXEnO1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL2NvbnRlbnQtZm9ybSc7XHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvY29udGVudC1oZWFkZXInO1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL2VkaXRvci1pbWFnZSc7XHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvZm9vdGVyJztcclxuQGltcG9ydCAnY29tcG9uZW50cy9nb29nbGUtbWFwcyc7XHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvaGVhZGVyJztcclxuQGltcG9ydCAnY29tcG9uZW50cy9pbWFnZS1mYXEnO1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL2xhbmd1YWdlLXN3aXRjaCc7XHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvbG9jYXRpb24tc2VhcmNoJztcclxuQGltcG9ydCAnY29tcG9uZW50cy9uYXZpZ2F0aW9uLW1vYmlsZSc7XHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvbmV3cy1pdGVtJztcclxuQGltcG9ydCAnY29tcG9uZW50cy9uZXdzLWxhdGVzdCc7XHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvbmV3cy1saXN0JztcclxuQGltcG9ydCAnY29tcG9uZW50cy9yZXZpZXctaXRlbSc7XHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvcmV2aWV3LWxhdGVzdCc7XHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvcmV2aWV3LWxpc3QnO1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL3RlYW0nO1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL3RlYXNlcnMnO1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL3RleHQtaW1hZ2UnO1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL3dvcmtmbG93JztcclxuQGltcG9ydCAnY29tcG9uZW50cy9iYW5uZXInO1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL2xlc3NvbnMnO1xyXG5cclxuXHJcbi8qKlxyXG4gKiBVdGlsaXRpZXMuXHJcbiAqL1xyXG5AaW1wb3J0ICd1dGlsaXRpZXMvY29sb3InO1xyXG5AaW1wb3J0ICd1dGlsaXRpZXMvaGVscGVycyc7XHJcbkBpbXBvcnQgJ3V0aWxpdGllcy9vYmplY3QtZml0JztcclxuQGltcG9ydCAndXRpbGl0aWVzL3Bvc2l0aW9uJztcclxuQGltcG9ydCAndXRpbGl0aWVzL3RleHQnO1xyXG5AaW1wb3J0ICd1dGlsaXRpZXMvdmVydGljYWwtcmh5dGhtJztcclxuQGltcG9ydCAndXRpbGl0aWVzL3otaW5kZXgnO1xyXG4iLCIvKipcclxuICogU2V0dGluZ3MuXHJcbiAqL1xyXG4gXHJcbkBpbXBvcnQgJ3R5cG9ncmFwaHknO1xyXG5AaW1wb3J0ICdjb2xvcic7XHJcbkBpbXBvcnQgJ3otaW5kZXgnO1xyXG5AaW1wb3J0ICdkZWZpbml0aW9ucyc7XHJcbiIsIi8qKlxyXG4gKiBGb250IGZhbWlseSBtYXAuXHJcbiAqL1xyXG5cclxuJGZvbnQtZmFtaWx5OiAoXHJcblx0J2RlZmF1bHQnOiAnT3BlbiBTYW5zJyxcclxuXHQnaGVhZGluZyc6ICdTb3VyY2UgU2FucyBQcm8nLFxyXG5cdCdidXR0b24nOiAnTGlicmUgRnJhbmtsaW4nXHJcbik7XHJcblxyXG5cclxuLyoqXHJcbiAqIEZvbnQgc2l6ZSBtYXAuXHJcbiAqL1xyXG5cclxuJGZvbnQtc2l6ZTogKFxyXG5cdCdoMSc6IDg0cHgsXHJcblx0J2gyJzogNDhweCxcclxuXHQnaDMnOiAzNnB4LFxyXG5cdCdoNCc6IDI0cHgsXHJcblx0J2g1JzogMjBweCxcclxuXHQncCc6IDE2cHhcclxuKTtcclxuXHJcblxyXG4vKipcclxuICogTGluZSBoZWlnaHQgbWFwLlxyXG4gKi9cclxuXHJcbiRsaW5lLWhlaWdodDogKFxyXG5cdCdoMSc6IDk2cHgsXHJcblx0J2gyJzogNTRweCxcclxuXHQnaDMnOiAzOHB4LFxyXG5cdCdoNCc6IDI2cHgsXHJcblx0J2g1JzogMjZweCxcclxuXHQncCc6IDI0cHhcclxuKTtcclxuIiwiLy8gQ29sb3IgbWFwLlxyXG4kY29sb3JzOiAoXHJcblx0J2JsYWNrJzogKFxyXG5cdFx0JzEwMCc6IGhzbGEoMCwgMCUsIDAlLCAxKSxcclxuXHRcdCc1JzogaHNsYSgwLCAwJSwgMCUsIDAuMDUpLFxyXG5cdFx0JzMnOiBoc2xhKDAsIDAlLCAwJSwgMC4wMylcclxuXHQpLFxyXG5cdCd3aGl0ZSc6IChcclxuXHRcdCcxMDAnOiBoc2xhKDAsIDAlLCAxMDAlLCAxKSxcclxuXHQpLFxyXG5cdCdyZWQnOiAoXHJcblx0XHQnMTAwJzogaHNsYSg1LCAxMDAlLCA1MCUsIDEpLCAvLyAjRkYxNTAwLCAxMDAlXHJcblx0XHQnMjAnOiBoc2xhKDUsIDEwMCUsIDUwJSwgMC4yKSAvLyAjRkYxNTAwLCAxMDAlXHJcblx0KSxcclxuXHQnc2lsdmVyJzogKFxyXG5cdFx0JzEwMCc6IGhzbGEoMjE2LCAxMDAlLCA5OSUsIDEpLCAvLyAjQzRDNEM0LCAxMDAlXHJcblx0XHQnMjAnOiBoc2xhKDIxNiwgMTAwJSwgOTklLCAwLjIpIC8vICNDNEM0QzQsIDEwMCVcclxuXHQpLFxyXG5cdCdncmV5JzogKFxyXG5cdFx0JzIwMCc6IGhzbGEoMTk1LCAyJSwgNTYlLCAxKSwgLy8gIzhEOTA5MSwgMTAwJVxyXG5cdFx0JzEwMCc6IGhzbGEoMCwgMCUsIDMyLjklLCAxKSwgLy8gIzU0NTQ1NCwgMTAwJVxyXG5cdFx0JzIwJzogaHNsYSgwLCAwJSwgMzIuOSUsIDAuMjApIC8vICM1NDU0NTQsIDIwJVxyXG5cdCksXHJcblx0J25hdnktYmx1ZSc6IChcclxuXHRcdCcxMDAnOiBoc2xhKDIxMiwgMTAwJSwgMzIlLCAxKSwgLy8gIzAwNENBNSwgMTAwJVxyXG5cdFx0JzIwJzogaHNsYSgyMTIsIDEwMCUsIDMyJSwgMC4yKSAvLyAjMDA0Q0E1LCAyMCVcclxuXHQpLFxyXG5cdCdiYWNrZ3JvdW5kLWdyZXknOiAoXHJcblx0XHQnMTAnOiBoc2xhKDIzMSwgMjQlLCA3NyUsIDAuMSksIC8vICNCNkJBRDIsIDEwJVxyXG5cdCksXHJcblx0J2JhY2tncm91bmQtYmx1ZSc6IChcclxuXHRcdCcxMDAnOiBoc2xhKDIxMiwgMTAwJSwgOTklLCAxKSwgLy8gI0ZBRkNGRiwgMTAwJVxyXG5cdFx0JzIwMCc6IGhzbGEoMjI1LjMsIDYxLjYlLCAzMy43JSwgMSkgLy8gIzIxM0I4QiwgMTAwJVxyXG5cdCksXHJcblx0J2JhY2tncm91bmQtbmF2eS1ibHVlJzogKFxyXG5cdFx0JzEwMCc6IGhzbGEoMjEyLCAxMDAlLCA5NSUsIDEpLCAvLyAjRkFGQ0ZGLCAxMDAlXHJcblx0KSxcclxuXHQnYm9yZGVyLWJsdWUnOiAoXHJcblx0XHQnMTAwJzogaHNsYSgyMTIuMywgMTAwJSwgOTQuOSUsIDEpLCAvLyAjRTVGMUZGLCAxMDAlXHJcblx0KSxcclxuXHQncGFjaWZpYy1ibHVlJzogKFxyXG5cdFx0JzEwMCc6IGhzbGEoMTk0LCAxMDAlLCA0MCUsIDEpLCAvLyAjMDA5Q0NELCAxMDAlXHJcblx0XHQnMjAnOiBoc2xhKDE5NC42LCA2Ny4yJSwgODglLCAxKSAvLyAjY2NlYmY1LCAyMCVcclxuXHQpLFxyXG5cdCdzbGF0ZS1ibHVlJzogKFxyXG5cdFx0JzEwMCc6IGhzbGEoMjUwLCAxMDAlLCA2OSUsIDEpLCAvLyAjN0I2MUZGLCAxMDAlXHJcblx0XHQnMjAnOiBoc2xhKDI1MCwgMTAwJSwgNjklLCAwLjIpIC8vICM3QjYxRkYsIDIwJVxyXG5cdCksXHJcblx0J2dyZWVuJzogKFxyXG5cdFx0JzEwMCc6IGhzbGEoMTU4LCAzNSUsIDQ4JSwgMSksIC8vICM1MEE1ODYsIDEwMCVcclxuXHRcdCcyMCc6IGhzbGEoMTU4LCAzNSUsIDQ4JSwgMC4yKSAvLyAjNTBBNTg2LCAyMCVcclxuXHQpLFxyXG5cdCd5ZWxsb3cnOiAoXHJcblx0XHQnMTAwJzogaHNsYSg0NywgMTAwJSwgNjMlLCAxKSwgLy8gI0ZGRDY0MywgMTAwJVxyXG5cdFx0JzIwJzogaHNsYSg0NywgMTAwJSwgNjMlLCAwLjIpIC8vICNGRkQ2NDMsIDEwMCVcclxuXHQpLFxyXG5cdCdwcnVzc2lhbi1ibHVlJzogKFxyXG5cdFx0JzEwMCc6IGhzbGEoMjEyLCAxMDAlLCAxNiUsIDEpLCAvLyAjMDAyNjUyLCAxMDAlXHJcblx0XHQnMjAnOiBoc2xhKDIxMiwgMTAwJSwgMTYlLCAwLjIpLCAvLyAjMDAyNjUyLCAyMCVcclxuXHRcdCcxMCc6IGhzbGEoMjEyLCAxMDAlLCAxNiUsIDAuMSkgLy8gIzAwMjY1MiwgMTAlXHJcblx0KSxcclxuXHQnc2FwcGhpcmUnOiAoXHJcblx0XHQnMTAwJzogaHNsYSgyMjYuNywgMTAwJSwgMTkuNCUsIDEpLCAvLyAjMDAxNjYzLCAxMDAlXHJcblx0XHQnNTAnOiBoc2xhKDIyNi43LCAxMDAlLCAxOS40JSwgMC41KSwgLy8gIzAwMTY2MywgNTAlXHJcblx0XHQnMzAnOiBoc2xhKDIyNi43LCAxMDAlLCAxOS40JSwgMC4zKSwgLy8gIzAwMTY2MywgNTAlXHJcblx0XHQnMjUnOiBoc2xhKDIyNi43LCAxMDAlLCAxOS40JSwgMC4yNSksIC8vICMwMDE2NjMsIDI1JVxyXG5cdFx0JzIwJzogaHNsYSgyMjYuNywgMTAwJSwgMTkuNCUsIDAuMiksIC8vICMwMDE2NjMsIDIwJVxyXG5cdFx0JzE1JzogaHNsYSgyMjYuNywgMTAwJSwgMTkuNCUsIDAuMTUpLCAvLyAjMDAxNjYzLCAxNSVcclxuXHRcdCcxMCc6IGhzbGEoMjI2LjcsIDEwMCUsIDE5LjQlLCAwLjEpLCAvLyAjMDAxNjYzLCAxMCVcclxuXHRcdCc4JzogaHNsYSgyMjYuNywgMTAwJSwgMTkuNCUsIDAuMDgpIC8vICMwMDE2NjMsIDglXHJcblx0KSxcclxuXHQncGVyYW5vJzogKFxyXG5cdFx0JzEwMCc6IGhzbGEoMjE5LCA1NiUsIDc2JSwgMSksIC8vICNBMEI4RTQsIDEwMCVcclxuXHRcdCc0MCc6IGhzbGEoMjE5LCA1NiUsIDc2JSwgMC40KSAvLyAjQTBCOEU0LCA0MCVcclxuXHQpLFxyXG4pO1xyXG5cclxuLy8gQ29sb3Igc2hvcnRoYW5kIHZhcmlhYmxlcy5cclxuJGJsYWNrLTEwMDogbWFwLWdldChtYXAtZ2V0KCRjb2xvcnMsICdibGFjaycpLCAnMTAwJyk7XHJcbiRibGFjay01OiBtYXAtZ2V0KG1hcC1nZXQoJGNvbG9ycywgJ2JsYWNrJyksICc1Jyk7XHJcbiRibGFjay0zOiBtYXAtZ2V0KG1hcC1nZXQoJGNvbG9ycywgJ2JsYWNrJyksICczJyk7XHJcbiR3aGl0ZS0xMDA6IG1hcC1nZXQobWFwLWdldCgkY29sb3JzLCAnd2hpdGUnKSwgJzEwMCcpO1xyXG4kcmVkLTEwMDogbWFwLWdldChtYXAtZ2V0KCRjb2xvcnMsICdyZWQnKSwgJzEwMCcpO1xyXG4kcmVkLTIwOiBtYXAtZ2V0KG1hcC1nZXQoJGNvbG9ycywgJ3JlZCcpLCAnMjAnKTtcclxuJHNpbHZlci0xMDA6IG1hcC1nZXQobWFwLWdldCgkY29sb3JzLCAnc2lsdmVyJyksICcxMDAnKTtcclxuJHNpbHZlci0yMDogbWFwLWdldChtYXAtZ2V0KCRjb2xvcnMsICdzaWx2ZXInKSwgJzIwJyk7XHJcbiRuYXZ5LWJsdWUtMTAwOiBtYXAtZ2V0KG1hcC1nZXQoJGNvbG9ycywgJ25hdnktYmx1ZScpLCAnMTAwJyk7XHJcbiRuYXZ5LWJsdWUtMjA6IG1hcC1nZXQobWFwLWdldCgkY29sb3JzLCAnbmF2eS1ibHVlJyksICcyMCcpO1xyXG4kYmFja2dyb3VuZC1ibHVlLTEwMDogbWFwLWdldChtYXAtZ2V0KCRjb2xvcnMsICdiYWNrZ3JvdW5kLWJsdWUnKSwgJzEwMCcpO1xyXG4kYmFja2dyb3VuZC1ibHVlLTIwMDogbWFwLWdldChtYXAtZ2V0KCRjb2xvcnMsICdiYWNrZ3JvdW5kLWJsdWUnKSwgJzIwMCcpO1xyXG4kYm9yZGVyLWJsdWUtMTAwOiBtYXAtZ2V0KG1hcC1nZXQoJGNvbG9ycywgJ2JvcmRlci1ibHVlJyksICcxMDAnKTtcclxuJGJhY2tncm91bmQtbmF2eS1ibHVlLTEwMDogbWFwLWdldChtYXAtZ2V0KCRjb2xvcnMsICdiYWNrZ3JvdW5kLWJsdWUnKSwgJzEwMCcpO1xyXG4kYmFja2dyb3VuZC1ncmV5LTEwOiBtYXAtZ2V0KG1hcC1nZXQoJGNvbG9ycywgJ2JhY2tncm91bmQtZ3JleScpLCAnMTAnKTtcclxuJHBhY2lmaWMtYmx1ZS0xMDA6IG1hcC1nZXQobWFwLWdldCgkY29sb3JzLCAncGFjaWZpYy1ibHVlJyksICcxMDAnKTtcclxuJHBhY2lmaWMtYmx1ZS0yMDogbWFwLWdldChtYXAtZ2V0KCRjb2xvcnMsICdwYWNpZmljLWJsdWUnKSwgJzIwJyk7XHJcbiRzbGF0ZS1ibHVlLTEwMDogbWFwLWdldChtYXAtZ2V0KCRjb2xvcnMsICdzbGF0ZS1ibHVlJyksICcxMDAnKTtcclxuJHNsYXRlLWJsdWUtMjA6IG1hcC1nZXQobWFwLWdldCgkY29sb3JzLCAnc2xhdGUtYmx1ZScpLCAnMjAnKTtcclxuJGdyZWVuLTEwMDogbWFwLWdldChtYXAtZ2V0KCRjb2xvcnMsICdncmVlbicpLCAnMTAwJyk7XHJcbiRncmVlbi0yMDogbWFwLWdldChtYXAtZ2V0KCRjb2xvcnMsICdncmVlbicpLCAnMjAnKTtcclxuJHllbGxvdy0xMDA6IG1hcC1nZXQobWFwLWdldCgkY29sb3JzLCAneWVsbG93JyksICcxMDAnKTtcclxuJHllbGxvdy0yMDogbWFwLWdldChtYXAtZ2V0KCRjb2xvcnMsICd5ZWxsb3cnKSwgJzIwJyk7XHJcbiRwcnVzc2lhbi1ibHVlLTEwMDogbWFwLWdldChtYXAtZ2V0KCRjb2xvcnMsICdwcnVzc2lhbi1ibHVlJyksICcxMDAnKTtcclxuJHBydXNzaWFuLWJsdWUtMjA6IG1hcC1nZXQobWFwLWdldCgkY29sb3JzLCAncHJ1c3NpYW4tYmx1ZScpLCAnMjAnKTtcclxuJHBydXNzaWFuLWJsdWUtMTA6IG1hcC1nZXQobWFwLWdldCgkY29sb3JzLCAncHJ1c3NpYW4tYmx1ZScpLCAnMTAnKTtcclxuJHNhcHBoaXJlLTEwMDogbWFwLWdldChtYXAtZ2V0KCRjb2xvcnMsICdzYXBwaGlyZScpLCAnMTAwJyk7XHJcbiRzYXBwaGlyZS01MDogbWFwLWdldChtYXAtZ2V0KCRjb2xvcnMsICdzYXBwaGlyZScpLCAnNTAnKTtcclxuJHNhcHBoaXJlLTMwOiBtYXAtZ2V0KG1hcC1nZXQoJGNvbG9ycywgJ3NhcHBoaXJlJyksICczMCcpO1xyXG4kc2FwcGhpcmUtMjU6IG1hcC1nZXQobWFwLWdldCgkY29sb3JzLCAnc2FwcGhpcmUnKSwgJzI1Jyk7XHJcbiRzYXBwaGlyZS0yMDogbWFwLWdldChtYXAtZ2V0KCRjb2xvcnMsICdzYXBwaGlyZScpLCAnMjAnKTtcclxuJHNhcHBoaXJlLTE1OiBtYXAtZ2V0KG1hcC1nZXQoJGNvbG9ycywgJ3NhcHBoaXJlJyksICcxNScpO1xyXG4kc2FwcGhpcmUtMTA6IG1hcC1nZXQobWFwLWdldCgkY29sb3JzLCAnc2FwcGhpcmUnKSwgJzEwJyk7XHJcbiRzYXBwaGlyZS04OiBtYXAtZ2V0KG1hcC1nZXQoJGNvbG9ycywgJ3NhcHBoaXJlJyksICc4Jyk7XHJcbiRwZXJhbm8tMTAwOiBtYXAtZ2V0KG1hcC1nZXQoJGNvbG9ycywgJ3BlcmFubycpLCAnMTAwJyk7XHJcbiRwZXJhbm8tNDA6IG1hcC1nZXQobWFwLWdldCgkY29sb3JzLCAncGVyYW5vJyksICc0MCcpO1xyXG4kZ3JleS0yMDA6IG1hcC1nZXQobWFwLWdldCgkY29sb3JzLCAnZ3JleScpLCAnMjAwJyk7XHJcbiRncmV5LTEwMDogbWFwLWdldChtYXAtZ2V0KCRjb2xvcnMsICdncmV5JyksICcxMDAnKTtcclxuJGdyZXktMjA6IG1hcC1nZXQobWFwLWdldCgkY29sb3JzLCAnZ3JleScpLCAnMjAnKTtcclxuXHJcbi8vIFByaW1hcnkgY29sb3IuXHJcbiRjb2xvci1wcmltYXJ5OiAkc2FwcGhpcmUtMTAwOyIsIi8vIEEgbGltaXRlZCBhcnJheSBvZiB2YWx1ZXMgZm9yIHRoZSBgei1pbmRleGAgcHJvcGVydHkgdG8gcHJldmVudFxyXG4vLyBFeGFnZ2VyYXRlZCBhbW91bnRzIGFuZCB1Z2x5IGhhY2tzLlxyXG5cclxuJHotaW5kZXg6IChcclxuXHQnMCc6ICAwLFxyXG5cdCcxJzogIDEwLFxyXG5cdCcyJzogIDIwLFxyXG5cdCczJzogIDMwLFxyXG5cdCc0JzogIDQwLFxyXG5cdCc1JzogIDUwLFxyXG5cdCc2JzogIDYwLFxyXG5cdCc3JzogIDcwLFxyXG5cdCc4JzogIDgwLFxyXG5cdCc5JzogIDkwLFxyXG5cdCcxMCc6IDEwMFxyXG4pO1xyXG4iLCIvKipcclxuICogR3JpZC5cclxuICovXHJcblxyXG4vLyBHcmlkIHdpZHRoLlxyXG4vLyBNYXhpbXVtIGNvbnRhaW5lciB3aWR0aC5cclxuJGdyaWQtd2lkdGg6IDEwMjRweDtcclxuXHJcbi8vIEdyaWQgY29sdW1ucy5cclxuLy8gQW1vdW50IG9mIGdyaWQgY29sdW1ucyB0byBjYWxjdWxhdGUgYSBjb2x1bW4gd2lkdGggd2l0aC5cclxuJGdyaWQtY29sdW1uczogMTI7XHJcblxyXG4vLyBHcmlkIGdhcC5cclxuLy8gU3BhY2UgYmV0d2VlbiBncmlkIGNvbHVtbnMsIGF1dG9tYXRlZC5cclxuJGdyaWQtZ2FwOiAyMHB4O1xyXG5cclxuXHJcbi8qKlxyXG4gKiBBc3NldHMuXHJcbiAqL1xyXG5cclxuLy8gSW1hZ2UgcGF0aC5cclxuJGltYWdlLXBhdGg6ICcuLi9pbWFnZXMvJztcclxuXHJcblxyXG4vKipcclxuICogQm9keS5cclxuICovXHJcblxyXG4vLyBCb2R5IGJhY2tncm91bmQgY29sb3IuXHJcbiRib2R5LWJhY2tncm91bmQtY29sb3I6ICR3aGl0ZS0xMDA7XHJcblxyXG4vLyBCb2R5IGNvbG9yLlxyXG4kYm9keS1jb2xvcjogJHNhcHBoaXJlLTEwMDtcclxuXHJcbi8vIEJvZHkgZm9udCBmYW1pbHkuXHJcbiRib2R5LWZvbnQtZmFtaWx5OiBtYXAtZ2V0KCRmb250LWZhbWlseSwgJ2RlZmF1bHQnKTtcclxuXHJcbi8vIEJvZHkgdGV4dC5cclxuJGJvZHktdGV4dDogJ3AnO1xyXG5cclxuXHJcbi8qKlxyXG4gKiBPdGhlci5cclxuICovXHJcblxyXG4vLyBMaW5rIGNvbG9yLlxyXG4kbGluay1jb2xvcjogJHNhcHBoaXJlLTEwMDtcclxuXHJcbi8vIFNlbGVjdCBjb2xvci5cclxuKjo6c2VsZWN0aW9uIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2FwcGhpcmUtMTAwO1xyXG4gIGNvbG9yOiAkd2hpdGUtMTAwO1xyXG59XHJcblxyXG4vKipcclxuICogUmVzcG9uc2l2ZS5cclxuICovXHJcblxyXG4vLyBHcmlkIGJyZWFrcG9pbnQgYWxpYXMuXHJcbiRicmVha3BvaW50czogKFxyXG5cdHhzOiBudWxsLFxyXG5cdHNtOiAncGhvbmUnLFxyXG5cdG1kOiAndGFibGV0LXBvcnRyYWl0LXVwJyxcclxuXHRsZzogJ3RhYmxldC1sYW5kc2NhcGUtdXAnLFxyXG5cdHhsOiAnZGVza3RvcCdcclxuKTtcclxuIiwiLyohIG5vcm1hbGl6ZS5jc3MgdjguMC4xIHwgTUlUIExpY2Vuc2UgfCBnaXRodWIuY29tL25lY29sYXMvbm9ybWFsaXplLmNzcyAqL1xuXG4vKiBEb2N1bWVudFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBsaW5lIGhlaWdodCBpbiBhbGwgYnJvd3NlcnMuXG4gKiAyLiBQcmV2ZW50IGFkanVzdG1lbnRzIG9mIGZvbnQgc2l6ZSBhZnRlciBvcmllbnRhdGlvbiBjaGFuZ2VzIGluIGlPUy5cbiAqL1xuXG5odG1sIHtcbiAgbGluZS1oZWlnaHQ6IDEuMTU7IC8qIDEgKi9cbiAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvKiAyICovXG59XG5cbi8qIFNlY3Rpb25zXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIFJlbW92ZSB0aGUgbWFyZ2luIGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5ib2R5IHtcbiAgbWFyZ2luOiAwO1xufVxuXG4vKipcbiAqIFJlbmRlciB0aGUgYG1haW5gIGVsZW1lbnQgY29uc2lzdGVudGx5IGluIElFLlxuICovXG5cbm1haW4ge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLyoqXG4gKiBDb3JyZWN0IHRoZSBmb250IHNpemUgYW5kIG1hcmdpbiBvbiBgaDFgIGVsZW1lbnRzIHdpdGhpbiBgc2VjdGlvbmAgYW5kXG4gKiBgYXJ0aWNsZWAgY29udGV4dHMgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgU2FmYXJpLlxuICovXG5cbmgxIHtcbiAgZm9udC1zaXplOiAyZW07XG4gIG1hcmdpbjogMC42N2VtIDA7XG59XG5cbi8qIEdyb3VwaW5nIGNvbnRlbnRcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gRmlyZWZveC5cbiAqIDIuIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UgYW5kIElFLlxuICovXG5cbmhyIHtcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7IC8qIDEgKi9cbiAgaGVpZ2h0OiAwOyAvKiAxICovXG4gIG92ZXJmbG93OiB2aXNpYmxlOyAvKiAyICovXG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgaW5oZXJpdGFuY2UgYW5kIHNjYWxpbmcgb2YgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAqIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5wcmUge1xuICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7IC8qIDEgKi9cbiAgZm9udC1zaXplOiAxZW07IC8qIDIgKi9cbn1cblxuLyogVGV4dC1sZXZlbCBzZW1hbnRpY3NcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogUmVtb3ZlIHRoZSBncmF5IGJhY2tncm91bmQgb24gYWN0aXZlIGxpbmtzIGluIElFIDEwLlxuICovXG5cbmEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuLyoqXG4gKiAxLiBSZW1vdmUgdGhlIGJvdHRvbSBib3JkZXIgaW4gQ2hyb21lIDU3LVxuICogMi4gQWRkIHRoZSBjb3JyZWN0IHRleHQgZGVjb3JhdGlvbiBpbiBDaHJvbWUsIEVkZ2UsIElFLCBPcGVyYSwgYW5kIFNhZmFyaS5cbiAqL1xuXG5hYmJyW3RpdGxlXSB7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7IC8qIDEgKi9cbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IC8qIDIgKi9cbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgZG90dGVkOyAvKiAyICovXG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGZvbnQgd2VpZ2h0IGluIENocm9tZSwgRWRnZSwgYW5kIFNhZmFyaS5cbiAqL1xuXG5iLFxuc3Ryb25nIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGRlcjtcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICogMi4gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbmNvZGUsXG5rYmQsXG5zYW1wIHtcbiAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlOyAvKiAxICovXG4gIGZvbnQtc2l6ZTogMWVtOyAvKiAyICovXG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxuc21hbGwge1xuICBmb250LXNpemU6IDgwJTtcbn1cblxuLyoqXG4gKiBQcmV2ZW50IGBzdWJgIGFuZCBgc3VwYCBlbGVtZW50cyBmcm9tIGFmZmVjdGluZyB0aGUgbGluZSBoZWlnaHQgaW5cbiAqIGFsbCBicm93c2Vycy5cbiAqL1xuXG5zdWIsXG5zdXAge1xuICBmb250LXNpemU6IDc1JTtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG5zdWIge1xuICBib3R0b206IC0wLjI1ZW07XG59XG5cbnN1cCB7XG4gIHRvcDogLTAuNWVtO1xufVxuXG4vKiBFbWJlZGRlZCBjb250ZW50XG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIFJlbW92ZSB0aGUgYm9yZGVyIG9uIGltYWdlcyBpbnNpZGUgbGlua3MgaW4gSUUgMTAuXG4gKi9cblxuaW1nIHtcbiAgYm9yZGVyLXN0eWxlOiBub25lO1xufVxuXG4vKiBGb3Jtc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiAxLiBDaGFuZ2UgdGhlIGZvbnQgc3R5bGVzIGluIGFsbCBicm93c2Vycy5cbiAqIDIuIFJlbW92ZSB0aGUgbWFyZ2luIGluIEZpcmVmb3ggYW5kIFNhZmFyaS5cbiAqL1xuXG5idXR0b24sXG5pbnB1dCxcbm9wdGdyb3VwLFxuc2VsZWN0LFxudGV4dGFyZWEge1xuICBmb250LWZhbWlseTogaW5oZXJpdDsgLyogMSAqL1xuICBmb250LXNpemU6IDEwMCU7IC8qIDEgKi9cbiAgbGluZS1oZWlnaHQ6IDEuMTU7IC8qIDEgKi9cbiAgbWFyZ2luOiAwOyAvKiAyICovXG59XG5cbi8qKlxuICogU2hvdyB0aGUgb3ZlcmZsb3cgaW4gSUUuXG4gKiAxLiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlLlxuICovXG5cbmJ1dHRvbixcbmlucHV0IHsgLyogMSAqL1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbn1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEVkZ2UsIEZpcmVmb3gsIGFuZCBJRS5cbiAqIDEuIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRmlyZWZveC5cbiAqL1xuXG5idXR0b24sXG5zZWxlY3QgeyAvKiAxICovXG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xufVxuXG4vKipcbiAqIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG4gKi9cblxuYnV0dG9uLFxuW3R5cGU9XCJidXR0b25cIl0sXG5bdHlwZT1cInJlc2V0XCJdLFxuW3R5cGU9XCJzdWJtaXRcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjtcbn1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGlubmVyIGJvcmRlciBhbmQgcGFkZGluZyBpbiBGaXJlZm94LlxuICovXG5cbmJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwiYnV0dG9uXCJdOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJyZXNldFwiXTo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwic3VibWl0XCJdOjotbW96LWZvY3VzLWlubmVyIHtcbiAgYm9yZGVyLXN0eWxlOiBub25lO1xuICBwYWRkaW5nOiAwO1xufVxuXG4vKipcbiAqIFJlc3RvcmUgdGhlIGZvY3VzIHN0eWxlcyB1bnNldCBieSB0aGUgcHJldmlvdXMgcnVsZS5cbiAqL1xuXG5idXR0b246LW1vei1mb2N1c3JpbmcsXG5bdHlwZT1cImJ1dHRvblwiXTotbW96LWZvY3VzcmluZyxcblt0eXBlPVwicmVzZXRcIl06LW1vei1mb2N1c3JpbmcsXG5bdHlwZT1cInN1Ym1pdFwiXTotbW96LWZvY3VzcmluZyB7XG4gIG91dGxpbmU6IDFweCBkb3R0ZWQgQnV0dG9uVGV4dDtcbn1cblxuLyoqXG4gKiBDb3JyZWN0IHRoZSBwYWRkaW5nIGluIEZpcmVmb3guXG4gKi9cblxuZmllbGRzZXQge1xuICBwYWRkaW5nOiAwLjM1ZW0gMC43NWVtIDAuNjI1ZW07XG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgdGV4dCB3cmFwcGluZyBpbiBFZGdlIGFuZCBJRS5cbiAqIDIuIENvcnJlY3QgdGhlIGNvbG9yIGluaGVyaXRhbmNlIGZyb20gYGZpZWxkc2V0YCBlbGVtZW50cyBpbiBJRS5cbiAqIDMuIFJlbW92ZSB0aGUgcGFkZGluZyBzbyBkZXZlbG9wZXJzIGFyZSBub3QgY2F1Z2h0IG91dCB3aGVuIHRoZXkgemVybyBvdXRcbiAqICAgIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbmxlZ2VuZCB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8qIDEgKi9cbiAgY29sb3I6IGluaGVyaXQ7IC8qIDIgKi9cbiAgZGlzcGxheTogdGFibGU7IC8qIDEgKi9cbiAgbWF4LXdpZHRoOiAxMDAlOyAvKiAxICovXG4gIHBhZGRpbmc6IDA7IC8qIDMgKi9cbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDsgLyogMSAqL1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCB2ZXJ0aWNhbCBhbGlnbm1lbnQgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgT3BlcmEuXG4gKi9cblxucHJvZ3Jlc3Mge1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBkZWZhdWx0IHZlcnRpY2FsIHNjcm9sbGJhciBpbiBJRSAxMCsuXG4gKi9cblxudGV4dGFyZWEge1xuICBvdmVyZmxvdzogYXV0bztcbn1cblxuLyoqXG4gKiAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBJRSAxMC5cbiAqIDIuIFJlbW92ZSB0aGUgcGFkZGluZyBpbiBJRSAxMC5cbiAqL1xuXG5bdHlwZT1cImNoZWNrYm94XCJdLFxuW3R5cGU9XCJyYWRpb1wiXSB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8qIDEgKi9cbiAgcGFkZGluZzogMDsgLyogMiAqL1xufVxuXG4vKipcbiAqIENvcnJlY3QgdGhlIGN1cnNvciBzdHlsZSBvZiBpbmNyZW1lbnQgYW5kIGRlY3JlbWVudCBidXR0b25zIGluIENocm9tZS5cbiAqL1xuXG5bdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcblt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIG9kZCBhcHBlYXJhbmNlIGluIENocm9tZSBhbmQgU2FmYXJpLlxuICogMi4gQ29ycmVjdCB0aGUgb3V0bGluZSBzdHlsZSBpbiBTYWZhcmkuXG4gKi9cblxuW3R5cGU9XCJzZWFyY2hcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDsgLyogMSAqL1xuICBvdXRsaW5lLW9mZnNldDogLTJweDsgLyogMiAqL1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgaW5uZXIgcGFkZGluZyBpbiBDaHJvbWUgYW5kIFNhZmFyaSBvbiBtYWNPUy5cbiAqL1xuXG5bdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuICogMi4gQ2hhbmdlIGZvbnQgcHJvcGVydGllcyB0byBgaW5oZXJpdGAgaW4gU2FmYXJpLlxuICovXG5cbjo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsgLyogMSAqL1xuICBmb250OiBpbmhlcml0OyAvKiAyICovXG59XG5cbi8qIEludGVyYWN0aXZlXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gRWRnZSwgSUUgMTArLCBhbmQgRmlyZWZveC5cbiAqL1xuXG5kZXRhaWxzIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8qXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxuc3VtbWFyeSB7XG4gIGRpc3BsYXk6IGxpc3QtaXRlbTtcbn1cblxuLyogTWlzY1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSAxMCsuXG4gKi9cblxudGVtcGxhdGUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDEwLlxuICovXG5cbltoaWRkZW5dIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbiIsIkBpbXBvcnQgJ2NvcmUnO1xuQGltcG9ydCAnYW5pbWF0ZSc7XG5AaW1wb3J0ICdhdXRvaGVpZ2h0JztcbkBpbXBvcnQgJ2xhenlsb2FkJztcbkBpbXBvcnQgJ3ZpZGVvJztcbiIsIi8qXG4gKiAgT3dsIENhcm91c2VsIC0gQ29yZVxuICovXG4ub3dsLWNhcm91c2VsIHtcblx0ZGlzcGxheTogbm9uZTtcblx0d2lkdGg6IDEwMCU7XG5cdC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cdC8qIHBvc2l0aW9uIHJlbGF0aXZlIGFuZCB6LWluZGV4IGZpeCB3ZWJraXQgcmVuZGVyaW5nIGZvbnRzIGlzc3VlICovXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0ei1pbmRleDogMTtcblxuXHQub3dsLXN0YWdlIHtcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0LW1zLXRvdWNoLWFjdGlvbjogcGFuLVk7XG5cdFx0dG91Y2gtYWN0aW9uOiBtYW5pcHVsYXRpb247XG5cdFx0LW1vei1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47IC8qIGZpeCBmaXJlZm94IGFuaW1hdGlvbiBnbGl0Y2ggKi9cblx0fVxuXG5cdC5vd2wtc3RhZ2U6YWZ0ZXIge1xuXHRcdGNvbnRlbnQ6IFwiLlwiO1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdGNsZWFyOiBib3RoO1xuXHRcdHZpc2liaWxpdHk6IGhpZGRlbjtcblx0XHRsaW5lLWhlaWdodDogMDtcblx0XHRoZWlnaHQ6IDA7XG5cdH1cblxuXHQub3dsLXN0YWdlLW91dGVyIHtcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0XHQvKiBmaXggZm9yIGZsYXNoaW5nIGJhY2tncm91bmQgKi9cblx0XHQtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMHB4LCAwcHgsIDBweCk7XG5cdH1cblxuXHQub3dsLXdyYXBwZXIsXG5cdC5vd2wtaXRlbXtcblx0XHQtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcblx0XHQtbW96LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcblx0XHQtbXMtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLDAsMCk7XG5cdFx0LW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsMCwwKTtcblx0XHQtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLDAsMCk7XG5cdH1cblxuXHQub3dsLWl0ZW0ge1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRtaW4taGVpZ2h0OiAxcHg7XG5cdFx0ZmxvYXQ6IGxlZnQ7XG5cdFx0LXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG5cdFx0LXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcblx0XHQtd2Via2l0LXRvdWNoLWNhbGxvdXQ6IG5vbmU7XG5cdH1cblx0Lm93bC1pdGVtIGltZyB7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdH1cblxuXHQub3dsLW5hdi5kaXNhYmxlZCxcblx0Lm93bC1kb3RzLmRpc2FibGVkIHtcblx0XHRkaXNwbGF5OiBub25lO1xuXHR9XG5cblx0Lm93bC1uYXYgLm93bC1wcmV2LFxuXHQub3dsLW5hdiAub3dsLW5leHQsXG5cdC5vd2wtZG90IHtcblx0XHRjdXJzb3I6IHBvaW50ZXI7XG5cdFx0LXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcblx0XHQta2h0bWwtdXNlci1zZWxlY3Q6IG5vbmU7XG5cdFx0LW1vei11c2VyLXNlbGVjdDogbm9uZTtcblx0XHQtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XG5cdFx0dXNlci1zZWxlY3Q6IG5vbmU7XG5cdH1cblxuXHQub3dsLW5hdiBidXR0b24ub3dsLXByZXYsXG5cdC5vd2wtbmF2IGJ1dHRvbi5vd2wtbmV4dCxcblx0YnV0dG9uLm93bC1kb3Qge1xuXHRcdGJhY2tncm91bmQ6IG5vbmU7XG5cdFx0Y29sb3I6IGluaGVyaXQ7XG5cdFx0Ym9yZGVyOiBub25lO1xuXHRcdHBhZGRpbmc6MCFpbXBvcnRhbnQ7XG5cdFx0Zm9udDogaW5oZXJpdDtcblx0fVxuXG5cdCYub3dsLWxvYWRlZCB7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdH1cblxuXHQmLm93bC1sb2FkaW5nIHtcblx0XHRvcGFjaXR5OiAwO1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHR9XG5cblx0Ji5vd2wtaGlkZGVuIHtcblx0XHRvcGFjaXR5OiAwO1xuXHR9XG5cblx0Ji5vd2wtcmVmcmVzaCAub3dsLWl0ZW0ge1xuXHRcdHZpc2liaWxpdHk6IGhpZGRlbjtcblx0fVxuXG5cdCYub3dsLWRyYWcgLm93bC1pdGVtIHtcblx0XHR0b3VjaC1hY3Rpb246IHBhbi15O1xuXHRcdC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG5cdFx0LW1vei11c2VyLXNlbGVjdDogbm9uZTtcblx0XHQtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XG5cdFx0dXNlci1zZWxlY3Q6IG5vbmU7XG5cdH1cblxuXHQmLm93bC1ncmFiIHtcblx0XHRjdXJzb3I6IG1vdmU7XG5cdFx0Y3Vyc29yOiBncmFiO1xuXHR9XG5cblx0Ji5vd2wtcnRsIHtcblx0XHRkaXJlY3Rpb246IHJ0bDtcblx0fVxuXG5cdCYub3dsLXJ0bCAub3dsLWl0ZW0ge1xuXHRcdGZsb2F0OiByaWdodDtcblx0fVxufVxuXG4vKiBObyBKcyAqL1xuLm5vLWpzIC5vd2wtY2Fyb3VzZWwge1xuXHRkaXNwbGF5OiBibG9jaztcbn1cbiIsIi8qXG4gKiAgT3dsIENhcm91c2VsIC0gQW5pbWF0ZSBQbHVnaW5cbiAqL1xuLm93bC1jYXJvdXNlbHtcblx0LmFuaW1hdGVkIHtcblx0XHRhbmltYXRpb24tZHVyYXRpb246IDEwMDBtcztcblx0XHRhbmltYXRpb24tZmlsbC1tb2RlOiBib3RoO1xuXHR9XG5cdC5vd2wtYW5pbWF0ZWQtaW4ge1xuXHRcdHotaW5kZXg6IDA7XG5cdH1cblx0Lm93bC1hbmltYXRlZC1vdXQge1xuXHRcdHotaW5kZXg6IDE7XG5cdH1cblx0LmZhZGVPdXQge1xuXHRcdGFuaW1hdGlvbi1uYW1lOiBmYWRlT3V0O1xuXHR9XG59XG5cbkBrZXlmcmFtZXMgZmFkZU91dCB7XG5cdDAlIHtcblx0XHRvcGFjaXR5OiAxO1xuXHR9XG5cblx0MTAwJSB7XG5cdFx0b3BhY2l0eTogMDtcblx0fVxufVxuIiwiLypcbiAqIFx0T3dsIENhcm91c2VsIC0gQXV0byBIZWlnaHQgUGx1Z2luXG4gKi9cblxuLm93bC1oZWlnaHQge1xuXHR0cmFuc2l0aW9uOiBoZWlnaHQgNTAwbXMgZWFzZS1pbi1vdXQ7XG59XG4iLCIvKlxuICogXHRPd2wgQ2Fyb3VzZWwgLSBMYXp5IExvYWQgUGx1Z2luXG4gKi9cblxuLm93bC1jYXJvdXNlbCB7XG5cdC5vd2wtaXRlbSB7XG5cdFx0Lm93bC1sYXp5IHtcblx0XHRcdFx0b3BhY2l0eTogMDtcblx0XHRcdFx0dHJhbnNpdGlvbjogb3BhY2l0eSA0MDBtcyBlYXNlO1xuXHRcdH1cblxuXHRcdC8qKlxuXHRcdFx0VGhpcyBpcyBpbnRyb2R1Y2VkIGR1ZSB0byBhIGJ1ZyBpbiBJRTExIHdoZXJlIGxhenkgbG9hZGluZyBjb21iaW5lZCB3aXRoIGF1dG9oZWlnaHQgcGx1Z2luIGNhdXNlcyBhIHdyb25nXG5cdFx0XHRjYWxjdWxhdGlvbiBvZiB0aGUgaGVpZ2h0IG9mIHRoZSBvd2wtaXRlbSB0aGF0IGJyZWFrcyBwYWdlIGxheW91dHNcblx0XHQgKi9cblx0XHQub3dsLWxhenlbc3JjXj1cIlwiXSwgLm93bC1sYXp5Om5vdChbc3JjXSkge1xuXHRcdFx0bWF4LWhlaWdodDogMDtcblx0XHR9XG5cblx0XHRpbWcub3dsLWxhenkge1xuXHRcdFx0dHJhbnNmb3JtLXN0eWxlOiBwcmVzZXJ2ZS0zZDtcblx0XHR9XG5cdH1cbn1cblxuIiwiJG93bC1pbWFnZS1wYXRoOiBcIlwiICFkZWZhdWx0O1xuXG4vKlxuICogXHRPd2wgQ2Fyb3VzZWwgLSBWaWRlbyBQbHVnaW5cbiAqL1xuXG4ub3dsLWNhcm91c2Vse1xuXHQub3dsLXZpZGVvLXdyYXBwZXIge1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRoZWlnaHQ6IDEwMCU7XG5cdFx0YmFja2dyb3VuZDogIzAwMDtcblx0fVxuXG5cdC5vd2wtdmlkZW8tcGxheS1pY29uIHtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0aGVpZ2h0OiA4MHB4O1xuXHRcdHdpZHRoOiA4MHB4O1xuXHRcdGxlZnQ6IDUwJTtcblx0XHR0b3A6IDUwJTtcblx0XHRtYXJnaW4tbGVmdDogLTQwcHg7XG5cdFx0bWFyZ2luLXRvcDogLTQwcHg7XG5cdFx0YmFja2dyb3VuZDogdXJsKFwiI3skb3dsLWltYWdlLXBhdGh9b3dsLnZpZGVvLnBsYXkucG5nXCIpIG5vLXJlcGVhdDtcblx0XHRjdXJzb3I6IHBvaW50ZXI7XG5cdFx0ei1pbmRleDogMTtcblx0XHQtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcblx0XHR0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMTAwbXMgZWFzZTtcblx0fVxuXG5cdC5vd2wtdmlkZW8tcGxheS1pY29uOmhvdmVyIHtcblx0XHR0cmFuc2Zvcm06IHNjYWxlKDEuMywgMS4zKTtcblx0fVxuXG5cdC5vd2wtdmlkZW8tcGxheWluZyAub3dsLXZpZGVvLXRuLFxuXHQub3dsLXZpZGVvLXBsYXlpbmcgLm93bC12aWRlby1wbGF5LWljb24ge1xuXHRcdGRpc3BsYXk6IG5vbmU7XG5cdH1cblxuXHQub3dsLXZpZGVvLXRuIHtcblx0XHRvcGFjaXR5OiAwO1xuXHRcdGhlaWdodDogMTAwJTtcblx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuXHRcdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cdFx0YmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuXHRcdHRyYW5zaXRpb246IG9wYWNpdHkgNDAwbXMgZWFzZTtcblx0fVxuXG5cdC5vd2wtdmlkZW8tZnJhbWUge1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHR6LWluZGV4OiAxO1xuXHRcdGhlaWdodDogMTAwJTtcblx0XHR3aWR0aDogMTAwJTtcblx0fVxufVxuIiwiLyoqXHJcbiAqIFRvb2xzLlxyXG4gKi9cclxuXHJcbkBpbXBvcnQgJ2Z1bmN0aW9ucyc7XHJcbkBpbXBvcnQgJ21hZ25pZmljLXBvcHVwJztcclxuQGltcG9ydCAnbWl4aW5zJztcclxuIiwiLyoqXHJcbiAqIFVuaWNvZGUuXHJcbiAqXHJcbiAqIFByZXNlcnZlIGVzY2FwZWQgdW5pY29kZSBzdHJpbmcuXHJcbiAqIEBwYXJhbSB7U3RyaW5nfSAkc3RyaW5nIC0gQW4gdW5pY29kZSBzdHJpbmcuXHJcbiAqIEByZXR1cm4ge1N0cmluZ30gQSBwcmVzZXJ2ZWQgZXNjYXBlZCB1bmljb2RlIHN0cmluZ1xyXG4gKi9cclxuIFxyXG4vLyBzYXNzLWxpbnQ6ZGlzYWJsZSBxdW90ZXNcclxuQGZ1bmN0aW9uIHVuaWNvZGUoJHN0cmluZykge1xyXG5cdEByZXR1cm4gdW5xdW90ZShcIlxcJ1wiKSArIHVucXVvdGUoc3RyLWluc2VydCgkc3RyaW5nLCAnXFxcXCcsIDEpKSArIHVucXVvdGUoXCJcXCdcIik7XHJcbn1cclxuLy8gc2Fzcy1saW50OmVuYWJsZSBxdW90ZXNcclxuXHJcblxyXG4vKipcclxuICogUkVNLlxyXG4gKlxyXG4gKiBDb252ZXJ0IHBpeGVsIHVuaXRzIHRvIFJFTSB1bml0cy5cclxuICogQHBhcmFtIHtOdW1iZXJ9ICRwaXhlbHMgLSBQaXhlbCB2YWx1ZS5cclxuICogQHJldHVybiB7Kn0gLSBBIGNvbnZlcnRlZCBgcmVtYCB1bml0LlxyXG4gKi9cclxuXHJcbkBmdW5jdGlvbiByZW0oJHBpeGVscykge1xyXG5cdEBpZiAodW5pdGxlc3MoJHBpeGVscykpIHtcclxuXHRcdEBlcnJvciAnVmFsdWUgZm9yIGAjeyRwaXhlbHN9YCBzaG91bGQgYmUgYSBgcHhgIHVuaXQuJztcclxuXHR9XHJcblx0QHJldHVybiAoKCRwaXhlbHMgLyAxMHB4KSAqIDFyZW0pO1xyXG59XHJcblxyXG5cclxuLyoqXHJcbiAqIENvbHVtbi5cclxuICpcclxuICogQ2FsY3VsYXRlIGdpdmVuIGNvbHVtbiB3aWR0aC5cclxuICogQHBhcmFtIHtOdW1iZXJ9ICRjb2x1bW4gLSBUaGUgYW1vdW50IG9mIGNvbHVtbnMgdG8gc3Bhbi5cclxuICogQHBhcmFtIHtOdW1iZXJ9ICRjb2x1bW5zIC0gVGhlIGFtb3VudCBvZiBjb2x1bW5zIHRoYXQgY2FuIGJlIHNwYW5uZWQuXHJcbiAqIEByZXR1cm4ge1N0cmluZ30gLSBQZXJjZW50YWdlIHZhbHVlLlxyXG4gKi9cclxuXHJcbkBmdW5jdGlvbiBjb2x1bW4oJGNvbHVtbiwgJGNvbHVtbnM6ICRncmlkLWNvbHVtbnMpIHtcclxuXHRAcmV0dXJuICgkY29sdW1uICAqIDEwMCUgLyAkY29sdW1ucyk7XHJcbn1cclxuXHJcblxyXG4vKipcclxuICogQ29sb3IuXHJcbiAqXHJcbiAqIEdldCBhIGNvbG9yIHZhbHVlIGZyb20gdHdvIGxldmVscyBkZWVwIGluIHRoZSBgJGNvbG9yYCBtYXAuXHJcbiAqIEBwYXJhbSB7JHN0cmluZ30gJGtleSAtIEtleSBvZiB0aGUgY29sb3IgdG8gZ2V0IGZyb20gdGhlIG1hcC5cclxuICogQHBhcmFtIHtOdW1iZXJ9ICR2YWx1ZSAtIFZhbHVlIG9mIHRoZSBrZXkgdG8gZ2V0IGZyb20gdGhlIG1hcC5cclxuICogQHJldHVybiB7Kn0gQSBIU0xBIGNvbG9yIHZhbHVlLlxyXG4gKi9cclxuXHJcbkBmdW5jdGlvbiBjb2xvcigka2V5LCAkdmFsdWUpIHtcclxuXHRAcmV0dXJuIG1hcC1nZXQobWFwLWdldCgkY29sb3JzLCAka2V5KSwgJHZhbHVlKTtcclxufVxyXG4iLCIvLyBzYXNzLWxpbnQ6ZGlzYWJsZSBpbmRlbnRhdGlvbiBuby1xdWFsaWZ5aW5nLWVsZW1lbnRzIHNob3J0aGFuZC12YWx1ZXMgc2luZ2xlLWxpbmUtcGVyLXNlbGVjdG9yIGNsYXNzLW5hbWUtZm9ybWF0IG5vLWlkcyBpZC1uYW1lLWZvcm1hdCBwcm9wZXJ0eS1zb3J0LW9yZGVyIG5vLWNvbG9yLWxpdGVyYWxzIGhleC1ub3RhdGlvbiBicmFjZS1zdHlsZSB6ZXJvLXVuaXQgc3BhY2UtYWZ0ZXItY29sb24gZW1wdHktbGluZS1iZXR3ZWVuLWJsb2Nrc1xyXG5cclxuXHJcbi8qIE1hZ25pZmljIFBvcHVwIENTUyAqL1xyXG4ubWZwLWJnIHtcclxuICB0b3A6IDA7XHJcbiAgbGVmdDogMDtcclxuICB3aWR0aDogMTAwJTtcclxuICBoZWlnaHQ6IDEwMCU7XHJcbiAgei1pbmRleDogMTA0MjtcclxuICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gIHBvc2l0aW9uOiBmaXhlZDtcclxuICBiYWNrZ3JvdW5kOiAjMGIwYjBiO1xyXG4gIG9wYWNpdHk6IDAuODsgfVxyXG5cclxuLm1mcC13cmFwIHtcclxuICB0b3A6IDA7XHJcbiAgbGVmdDogMDtcclxuICB3aWR0aDogMTAwJTtcclxuICBoZWlnaHQ6IDEwMCU7XHJcbiAgei1pbmRleDogMTA0MztcclxuICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgb3V0bGluZTogbm9uZSAhaW1wb3J0YW50O1xyXG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOyB9XHJcblxyXG4ubWZwLWNvbnRhaW5lciB7XHJcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICB3aWR0aDogMTAwJTtcclxuICBoZWlnaHQ6IDEwMCU7XHJcbiAgbGVmdDogMDtcclxuICB0b3A6IDA7XHJcbiAgcGFkZGluZzogMCA4cHg7XHJcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDsgfVxyXG5cclxuLm1mcC1jb250YWluZXI6YmVmb3JlIHtcclxuICBjb250ZW50OiAnJztcclxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgaGVpZ2h0OiAxMDAlO1xyXG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IH1cclxuXHJcbi5tZnAtYWxpZ24tdG9wIC5tZnAtY29udGFpbmVyOmJlZm9yZSB7XHJcbiAgZGlzcGxheTogbm9uZTsgfVxyXG5cclxuLm1mcC1jb250ZW50IHtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XHJcbiAgbWFyZ2luOiAwIGF1dG87XHJcbiAgdGV4dC1hbGlnbjogbGVmdDtcclxuICB6LWluZGV4OiAxMDQ1OyB9XHJcblxyXG4ubWZwLWlubGluZS1ob2xkZXIgLm1mcC1jb250ZW50LFxyXG4ubWZwLWFqYXgtaG9sZGVyIC5tZnAtY29udGVudCB7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgY3Vyc29yOiBhdXRvOyB9XHJcblxyXG4ubWZwLWFqYXgtY3VyIHtcclxuICBjdXJzb3I6IHByb2dyZXNzOyB9XHJcblxyXG4ubWZwLXpvb20tb3V0LWN1ciwgLm1mcC16b29tLW91dC1jdXIgLm1mcC1pbWFnZS1ob2xkZXIgLm1mcC1jbG9zZSB7XHJcbiAgY3Vyc29yOiAtbW96LXpvb20tb3V0O1xyXG4gIGN1cnNvcjogLXdlYmtpdC16b29tLW91dDtcclxuICBjdXJzb3I6IHpvb20tb3V0OyB9XHJcblxyXG4ubWZwLXpvb20ge1xyXG4gIGN1cnNvcjogcG9pbnRlcjtcclxuICBjdXJzb3I6IC13ZWJraXQtem9vbS1pbjtcclxuICBjdXJzb3I6IC1tb3otem9vbS1pbjtcclxuICBjdXJzb3I6IHpvb20taW47IH1cclxuXHJcbi5tZnAtYXV0by1jdXJzb3IgLm1mcC1jb250ZW50IHtcclxuICBjdXJzb3I6IGF1dG87IH1cclxuXHJcbi5tZnAtY2xvc2UsXHJcbi5tZnAtYXJyb3csXHJcbi5tZnAtcHJlbG9hZGVyLFxyXG4ubWZwLWNvdW50ZXIge1xyXG4gIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XHJcbiAgLW1vei11c2VyLXNlbGVjdDogbm9uZTtcclxuICB1c2VyLXNlbGVjdDogbm9uZTsgfVxyXG5cclxuLm1mcC1sb2FkaW5nLm1mcC1maWd1cmUge1xyXG4gIGRpc3BsYXk6IG5vbmU7IH1cclxuXHJcbi5tZnAtaGlkZSB7XHJcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XHJcblxyXG4ubWZwLXByZWxvYWRlciB7XHJcbiAgY29sb3I6ICNDQ0M7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIHRvcDogNTAlO1xyXG4gIHdpZHRoOiBhdXRvO1xyXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICBtYXJnaW4tdG9wOiAtMC44ZW07XHJcbiAgbGVmdDogOHB4O1xyXG4gIHJpZ2h0OiA4cHg7XHJcbiAgei1pbmRleDogMTA0NDsgfVxyXG4gIC5tZnAtcHJlbG9hZGVyIGEge1xyXG4gICAgY29sb3I6ICNDQ0M7IH1cclxuICAgIC5tZnAtcHJlbG9hZGVyIGE6aG92ZXIge1xyXG4gICAgICBjb2xvcjogI0ZGRjsgfVxyXG5cclxuLm1mcC1zLXJlYWR5IC5tZnAtcHJlbG9hZGVyIHtcclxuICBkaXNwbGF5OiBub25lOyB9XHJcblxyXG4ubWZwLXMtZXJyb3IgLm1mcC1jb250ZW50IHtcclxuICBkaXNwbGF5OiBub25lOyB9XHJcblxyXG5idXR0b24ubWZwLWNsb3NlLFxyXG5idXR0b24ubWZwLWFycm93IHtcclxuICBvdmVyZmxvdzogdmlzaWJsZTtcclxuICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XHJcbiAgYm9yZGVyOiAwO1xyXG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcclxuICBkaXNwbGF5OiBibG9jaztcclxuICBvdXRsaW5lOiBub25lO1xyXG4gIHBhZGRpbmc6IDA7XHJcbiAgei1pbmRleDogMTA0NjtcclxuICBib3gtc2hhZG93OiBub25lO1xyXG4gIHRvdWNoLWFjdGlvbjogbWFuaXB1bGF0aW9uOyB9XHJcblxyXG5idXR0b246Oi1tb3otZm9jdXMtaW5uZXIge1xyXG4gIHBhZGRpbmc6IDA7XHJcbiAgYm9yZGVyOiAwOyB9XHJcblxyXG4ubWZwLWNsb3NlIHtcclxuICB3aWR0aDogNDRweDtcclxuICBoZWlnaHQ6IDQ0cHg7XHJcbiAgbGluZS1oZWlnaHQ6IDQ0cHg7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIHJpZ2h0OiAwO1xyXG4gIHRvcDogMDtcclxuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gIG9wYWNpdHk6IDAuNjU7XHJcbiAgcGFkZGluZzogMCAwIDE4cHggMTBweDtcclxuICBjb2xvcjogI0ZGRjtcclxuICBmb250LXN0eWxlOiBub3JtYWw7XHJcbiAgZm9udC1zaXplOiAyOHB4O1xyXG4gIGZvbnQtZmFtaWx5OiBBcmlhbCwgQmFza2VydmlsbGUsIG1vbm9zcGFjZTsgfVxyXG4gIC5tZnAtY2xvc2U6aG92ZXIsXHJcbiAgLm1mcC1jbG9zZTpmb2N1cyB7XHJcbiAgICBvcGFjaXR5OiAxOyB9XHJcbiAgLm1mcC1jbG9zZTphY3RpdmUge1xyXG4gICAgdG9wOiAxcHg7IH1cclxuXHJcbi5tZnAtY2xvc2UtYnRuLWluIC5tZnAtY2xvc2Uge1xyXG4gIGNvbG9yOiAjMzMzOyB9XHJcblxyXG4ubWZwLWltYWdlLWhvbGRlciAubWZwLWNsb3NlLFxyXG4ubWZwLWlmcmFtZS1ob2xkZXIgLm1mcC1jbG9zZSB7XHJcbiAgY29sb3I6ICNGRkY7XHJcbiAgcmlnaHQ6IC02cHg7XHJcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XHJcbiAgcGFkZGluZy1yaWdodDogNnB4O1xyXG4gIHdpZHRoOiAxMDAlOyB9XHJcblxyXG4ubWZwLWNvdW50ZXIge1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICB0b3A6IDA7XHJcbiAgcmlnaHQ6IDA7XHJcbiAgY29sb3I6ICNDQ0M7XHJcbiAgZm9udC1zaXplOiAxMnB4O1xyXG4gIGxpbmUtaGVpZ2h0OiAxOHB4O1xyXG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7IH1cclxuXHJcbi5tZnAtYXJyb3cge1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICBvcGFjaXR5OiAwLjY1O1xyXG4gIG1hcmdpbjogMDtcclxuICB0b3A6IDUwJTtcclxuICBtYXJnaW4tdG9wOiAtNTVweDtcclxuICBwYWRkaW5nOiAwO1xyXG4gIHdpZHRoOiA5MHB4O1xyXG4gIGhlaWdodDogMTEwcHg7XHJcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDsgfVxyXG4gIC5tZnAtYXJyb3c6YWN0aXZlIHtcclxuICAgIG1hcmdpbi10b3A6IC01NHB4OyB9XHJcbiAgLm1mcC1hcnJvdzpob3ZlcixcclxuICAubWZwLWFycm93OmZvY3VzIHtcclxuICAgIG9wYWNpdHk6IDE7IH1cclxuICAubWZwLWFycm93OmJlZm9yZSxcclxuICAubWZwLWFycm93OmFmdGVyIHtcclxuICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICB3aWR0aDogMDtcclxuICAgIGhlaWdodDogMDtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICB0b3A6IDA7XHJcbiAgICBtYXJnaW4tdG9wOiAzNXB4O1xyXG4gICAgbWFyZ2luLWxlZnQ6IDM1cHg7XHJcbiAgICBib3JkZXI6IG1lZGl1bSBpbnNldCB0cmFuc3BhcmVudDsgfVxyXG4gIC5tZnAtYXJyb3c6YWZ0ZXIge1xyXG4gICAgYm9yZGVyLXRvcC13aWR0aDogMTNweDtcclxuICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDEzcHg7XHJcbiAgICB0b3A6IDhweDsgfVxyXG4gIC5tZnAtYXJyb3c6YmVmb3JlIHtcclxuICAgIGJvcmRlci10b3Atd2lkdGg6IDIxcHg7XHJcbiAgICBib3JkZXItYm90dG9tLXdpZHRoOiAyMXB4O1xyXG4gICAgb3BhY2l0eTogMC43OyB9XHJcblxyXG4ubWZwLWFycm93LWxlZnQge1xyXG4gIGxlZnQ6IDA7IH1cclxuICAubWZwLWFycm93LWxlZnQ6YWZ0ZXIge1xyXG4gICAgYm9yZGVyLXJpZ2h0OiAxN3B4IHNvbGlkICNGRkY7XHJcbiAgICBtYXJnaW4tbGVmdDogMzFweDsgfVxyXG4gIC5tZnAtYXJyb3ctbGVmdDpiZWZvcmUge1xyXG4gICAgbWFyZ2luLWxlZnQ6IDI1cHg7XHJcbiAgICBib3JkZXItcmlnaHQ6IDI3cHggc29saWQgIzNGM0YzRjsgfVxyXG5cclxuLm1mcC1hcnJvdy1yaWdodCB7XHJcbiAgcmlnaHQ6IDA7IH1cclxuICAubWZwLWFycm93LXJpZ2h0OmFmdGVyIHtcclxuICAgIGJvcmRlci1sZWZ0OiAxN3B4IHNvbGlkICNGRkY7XHJcbiAgICBtYXJnaW4tbGVmdDogMzlweDsgfVxyXG4gIC5tZnAtYXJyb3ctcmlnaHQ6YmVmb3JlIHtcclxuICAgIGJvcmRlci1sZWZ0OiAyN3B4IHNvbGlkICMzRjNGM0Y7IH1cclxuXHJcbi5tZnAtaWZyYW1lLWhvbGRlciB7XHJcbiAgcGFkZGluZy10b3A6IDQwcHg7XHJcbiAgcGFkZGluZy1ib3R0b206IDQwcHg7IH1cclxuICAubWZwLWlmcmFtZS1ob2xkZXIgLm1mcC1jb250ZW50IHtcclxuICAgIGxpbmUtaGVpZ2h0OiAwO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBtYXgtd2lkdGg6IDkwMHB4OyB9XHJcbiAgLm1mcC1pZnJhbWUtaG9sZGVyIC5tZnAtY2xvc2Uge1xyXG4gICAgdG9wOiAtNDBweDsgfVxyXG5cclxuLm1mcC1pZnJhbWUtc2NhbGVyIHtcclxuICB3aWR0aDogMTAwJTtcclxuICBoZWlnaHQ6IDA7XHJcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICBwYWRkaW5nLXRvcDogNTYuMjUlOyB9XHJcbiAgLm1mcC1pZnJhbWUtc2NhbGVyIGlmcmFtZSB7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIHRvcDogMDtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGhlaWdodDogMTAwJTtcclxuICAgIGJveC1zaGFkb3c6IDAgMCA4cHggcmdiYSgwLCAwLCAwLCAwLjYpO1xyXG4gICAgYmFja2dyb3VuZDogIzAwMDsgfVxyXG5cclxuLyogTWFpbiBpbWFnZSBpbiBwb3B1cCAqL1xyXG5pbWcubWZwLWltZyB7XHJcbiAgd2lkdGg6IGF1dG87XHJcbiAgbWF4LXdpZHRoOiAxMDAlO1xyXG4gIGhlaWdodDogYXV0bztcclxuICBkaXNwbGF5OiBibG9jaztcclxuICBsaW5lLWhlaWdodDogMDtcclxuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gIHBhZGRpbmc6IDQwcHggMCA0MHB4O1xyXG4gIG1hcmdpbjogMCBhdXRvOyB9XHJcblxyXG4vKiBUaGUgc2hhZG93IGJlaGluZCB0aGUgaW1hZ2UgKi9cclxuLm1mcC1maWd1cmUge1xyXG4gIGxpbmUtaGVpZ2h0OiAwOyB9XHJcbiAgLm1mcC1maWd1cmU6YWZ0ZXIge1xyXG4gICAgY29udGVudDogJyc7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICBsZWZ0OiAwO1xyXG4gICAgdG9wOiA0MHB4O1xyXG4gICAgYm90dG9tOiA0MHB4O1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICByaWdodDogMDtcclxuICAgIHdpZHRoOiBhdXRvO1xyXG4gICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgei1pbmRleDogLTE7XHJcbiAgICBib3gtc2hhZG93OiAwIDAgOHB4IHJnYmEoMCwgMCwgMCwgMC42KTtcclxuICAgIGJhY2tncm91bmQ6ICM0NDQ7IH1cclxuICAubWZwLWZpZ3VyZSBzbWFsbCB7XHJcbiAgICBjb2xvcjogI0JEQkRCRDtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgZm9udC1zaXplOiAxMnB4O1xyXG4gICAgbGluZS1oZWlnaHQ6IDE0cHg7IH1cclxuICAubWZwLWZpZ3VyZSBmaWd1cmUge1xyXG4gICAgbWFyZ2luOiAwOyB9XHJcblxyXG4ubWZwLWJvdHRvbS1iYXIge1xyXG4gIG1hcmdpbi10b3A6IC0zNnB4O1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICB0b3A6IDEwMCU7XHJcbiAgbGVmdDogMDtcclxuICB3aWR0aDogMTAwJTtcclxuICBjdXJzb3I6IGF1dG87IH1cclxuXHJcbi5tZnAtdGl0bGUge1xyXG4gIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgbGluZS1oZWlnaHQ6IDE4cHg7XHJcbiAgY29sb3I6ICNGM0YzRjM7XHJcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xyXG4gIHBhZGRpbmctcmlnaHQ6IDM2cHg7IH1cclxuXHJcbi5tZnAtaW1hZ2UtaG9sZGVyIC5tZnAtY29udGVudCB7XHJcbiAgbWF4LXdpZHRoOiAxMDAlOyB9XHJcblxyXG4ubWZwLWdhbGxlcnkgLm1mcC1pbWFnZS1ob2xkZXIgLm1mcC1maWd1cmUge1xyXG4gIGN1cnNvcjogcG9pbnRlcjsgfVxyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogODAwcHgpIGFuZCAob3JpZW50YXRpb246IGxhbmRzY2FwZSksIHNjcmVlbiBhbmQgKG1heC1oZWlnaHQ6IDMwMHB4KSB7XHJcbiAgLyoqXHJcbiAgICAgICAqIFJlbW92ZSBhbGwgcGFkZGluZ3MgYXJvdW5kIHRoZSBpbWFnZSBvbiBzbWFsbCBzY3JlZW5cclxuICAgICAgICovXHJcbiAgLm1mcC1pbWctbW9iaWxlIC5tZnAtaW1hZ2UtaG9sZGVyIHtcclxuICAgIHBhZGRpbmctbGVmdDogMDtcclxuICAgIHBhZGRpbmctcmlnaHQ6IDA7IH1cclxuICAubWZwLWltZy1tb2JpbGUgaW1nLm1mcC1pbWcge1xyXG4gICAgcGFkZGluZzogMDsgfVxyXG4gIC5tZnAtaW1nLW1vYmlsZSAubWZwLWZpZ3VyZTphZnRlciB7XHJcbiAgICB0b3A6IDA7XHJcbiAgICBib3R0b206IDA7IH1cclxuICAubWZwLWltZy1tb2JpbGUgLm1mcC1maWd1cmUgc21hbGwge1xyXG4gICAgZGlzcGxheTogaW5saW5lO1xyXG4gICAgbWFyZ2luLWxlZnQ6IDVweDsgfVxyXG4gIC5tZnAtaW1nLW1vYmlsZSAubWZwLWJvdHRvbS1iYXIge1xyXG4gICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjYpO1xyXG4gICAgYm90dG9tOiAwO1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gICAgdG9wOiBhdXRvO1xyXG4gICAgcGFkZGluZzogM3B4IDVweDtcclxuICAgIHBvc2l0aW9uOiBmaXhlZDtcclxuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IH1cclxuICAgIC5tZnAtaW1nLW1vYmlsZSAubWZwLWJvdHRvbS1iYXI6ZW1wdHkge1xyXG4gICAgICBwYWRkaW5nOiAwOyB9XHJcbiAgLm1mcC1pbWctbW9iaWxlIC5tZnAtY291bnRlciB7XHJcbiAgICByaWdodDogNXB4O1xyXG4gICAgdG9wOiAzcHg7IH1cclxuICAubWZwLWltZy1tb2JpbGUgLm1mcC1jbG9zZSB7XHJcbiAgICB0b3A6IDA7XHJcbiAgICByaWdodDogMDtcclxuICAgIHdpZHRoOiAzNXB4O1xyXG4gICAgaGVpZ2h0OiAzNXB4O1xyXG4gICAgbGluZS1oZWlnaHQ6IDM1cHg7XHJcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuNik7XHJcbiAgICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICBwYWRkaW5nOiAwOyB9IH1cclxuXHJcbkBtZWRpYSBhbGwgYW5kIChtYXgtd2lkdGg6IDkwMHB4KSB7XHJcbiAgLm1mcC1hcnJvdyB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMC43NSk7XHJcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDAuNzUpOyB9XHJcbiAgLm1mcC1hcnJvdy1sZWZ0IHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogMDtcclxuICAgIHRyYW5zZm9ybS1vcmlnaW46IDA7IH1cclxuICAubWZwLWFycm93LXJpZ2h0IHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogMTAwJTtcclxuICAgIHRyYW5zZm9ybS1vcmlnaW46IDEwMCU7IH1cclxuICAubWZwLWNvbnRhaW5lciB7XHJcbiAgICBwYWRkaW5nLWxlZnQ6IDZweDtcclxuICAgIHBhZGRpbmctcmlnaHQ6IDZweDsgfSB9XHJcblxyXG4vLyBzYXNzLWxpbnQ6ZW5hYmxlIGluZGVudGF0aW9uIG5vLXF1YWxpZnlpbmctZWxlbWVudHMgc2hvcnRoYW5kLXZhbHVlcyBzaW5nbGUtbGluZS1wZXItc2VsZWN0b3IgY2xhc3MtbmFtZS1mb3JtYXQgbm8taWRzIGlkLW5hbWUtZm9ybWF0IHByb3BlcnR5LXNvcnQtb3JkZXIgbm8tY29sb3ItbGl0ZXJhbHMgaGV4LW5vdGF0aW9uIGJyYWNlLXN0eWxlIHplcm8tdW5pdCBzcGFjZS1hZnRlci1jb2xvbiBlbXB0eS1saW5lLWJldHdlZW4tYmxvY2tzXHJcbiIsIi8qKlxyXG4gKiBDb250YWluZXJcclxuICogXHJcbiAqIENlbnRlciBhbGlnbnMgZWxlbWVudCB3aXRoIGdpdmVuIG1heGltdW0gd2lkdGgsIHBhZGRpbmcsIGFuZCBtYXJnaW5zIHRvcCBhbmQgYm90dG9tLlxyXG4gKiBAcGFyYW0ge1N0cmluZ30gJHdpZHRoIC0gUGl4ZWwgdW5pdCB2YWx1ZS5cclxuICogQHBhcmFtIHtTdHJpbmd9ICRnYXAgLSBQaXhlbCB1bml0IHZhbHVlLlxyXG4gKiBAZXhhbXBsZSBAaW5jbHVkZSBjb250YWluZXIoMTAyNHB4LCAyMHB4KTtcclxuICovXHJcblxyXG5AbWl4aW4gY29udGFpbmVyKCR3aWR0aDogJGdyaWQtd2lkdGgsICRnYXA6ICRncmlkLWdhcCkge1xyXG5cdEBpZiAodHlwZS1vZigkd2lkdGgpID09IG51bWJlciBhbmQgdHlwZS1vZigkZ2FwKSA9PSBudW1iZXIpIHtcclxuXHRcdEBpZiAoJGdhcCAhPSAwKSB7XHJcblx0XHRcdG1heC13aWR0aDogY2FsYygjeyR3aWR0aH0gKyAjeygkZ2FwICogMil9KTtcclxuXHRcdFx0cGFkZGluZzogMCAkZ2FwO1xyXG5cdFx0fSBAZWxzZSB7XHJcblx0XHRcdG1heC13aWR0aDogJHdpZHRoO1xyXG5cdFx0fVxyXG5cdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRtYXJnaW46IDAgYXV0bztcclxuXHR9IEBlbHNlIHtcclxuXHRcdEBlcnJvciAnQXJndW1lbnRzIGAkd2lkdGhgIGFuZCBgJGdhcGAgc2hvdWxkIGJlIGEgbnVtYmVyJztcclxuXHR9XHJcbn1cclxuXHJcblxyXG4vKipcclxuICogU2VjdGlvblxyXG4gKlxyXG4gKiBBZGQgdG9wIGFuZCBib3R0b20gc3BhY2luZyB0byBlbGVtZW50IHVzaW5nIHBhZGRpbmdzLlxyXG4gKiBAcGFyYW0ge1N0cmluZ30gJHRvcCAtIFBpeGVsIHVuaXQgdmFsdWUuXHJcbiAqIEBwYXJhbSB7U3RyaW5nfSAkYm90dG9tIC0gUGl4ZWwgdW5pdCB2YWx1ZS5cclxuICogQGV4YW1wbGUgQGluY2x1ZGUgc2VjdGlvbigxMDBweCwgMTAwcHgpO1xyXG4gKi8gXHJcblxyXG5AbWl4aW4gc2VjdGlvbigkdG9wOiAwLCAkYm90dG9tOiAwKSB7XHJcblx0QGlmICh0eXBlLW9mKCR0b3ApID09IG51bWJlciBhbmQgdHlwZS1vZigkYm90dG9tKSA9PSBudW1iZXIpIHtcclxuXHRcdHBhZGRpbmc6ICR0b3AgMCAkYm90dG9tO1xyXG5cdH0gQGVsc2Uge1xyXG5cdFx0QGVycm9yICdBcmd1bWVudHMgYCR0b3BgIGFuZCBgYm90dG9tYCBzaG91bGQgYmUgYSBudW1iZXInO1xyXG5cdH1cclxufVxyXG5cclxuXHJcbi8qKlxyXG4gKiBGb250LlxyXG4gKlxyXG4gKiBBZGRzIGByZW1gIHVuaXQgYmFzZWQgZm9udCBzaXplIHByb3BlcnR5LCBhIGZhbGxiYWNrIGBweGAgdW5pdCBiYXNlZCBmb250IHNpemUgcHJvcGVydHksIGFuZCBhIGBlbWAgdW5pdCBiYXNlZCBsaW5lIGhlaWdodCBwcm9wZXJ0eSB0byBhbnkgcnVsZS5cclxuICogQHBhcmFtIHtTdHJpbmd9ICRmb250LXNpemUgLSBQaXhlbCB1bml0IHZhbHVlLlxyXG4gKiBAcGFyYW0ge1N0cmluZ30gJGxpbmUtaGVpZ2h0IC0gUGl4ZWwgdW5pdCB2YWx1ZS5cclxuICogQGV4YW1wbGUgQGluY2x1ZGUgZm9udC1zaXplKDE2cHgsIDI0cHgpO1xyXG4gKi9cclxuXHJcbkBtaXhpbiBmb250KCRmb250LXNpemUsICRsaW5lLWhlaWdodCkge1xyXG5cdEBpZiAodHlwZS1vZigkZm9udC1zaXplKSA9PSBudW1iZXIgYW5kIHVuaXQoJGZvbnQtc2l6ZSkgPT0gJ3B4Jykge1xyXG5cdFx0Zm9udC1zaXplOiAkZm9udC1zaXplO1xyXG5cdFx0Zm9udC1zaXplOiByZW0oJGZvbnQtc2l6ZSk7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgbm8tZHVwbGljYXRlLXByb3BlcnRpZXNcclxuXHR9IEBlbHNlIHtcclxuXHRcdEBlcnJvciAnVmFsdWUgZm9yIGAjeyRmb250LXNpemV9YCBzaG91bGQgYmUgYSBgcHhgIHVuaXQnO1xyXG5cdH1cclxuXHRAaWYgKHR5cGUtb2YoJGxpbmUtaGVpZ2h0KSA9PSBudW1iZXIgYW5kIHVuaXQoJGxpbmUtaGVpZ2h0KSA9PSAncHgnKSB7XHJcblx0XHRsaW5lLWhlaWdodDogKCgkbGluZS1oZWlnaHQgLyAkZm9udC1zaXplKSAqIDFlbSk7XHJcblx0fSBAZWxzZSB7XHJcblx0XHRAZXJyb3IgJ1ZhbHVlIGZvciBgI3skbGluZS1oZWlnaHR9YCBzaG91bGQgYmUgYSBgcHhgIHVuaXQnO1xyXG5cdH1cclxufVxyXG5cclxuXHJcbi8qKlxyXG4gKiBUZXh0LlxyXG4gKlxyXG4gKiBTaG9ydGhhbmQgZm9yIHRoZSBmb250IG1peGluLCBydW5zIHRoZSBmb250IG1peGluIGJhc2VkIG9uIGEgY29tbW9uIGRlbWVhbm91ciBleGlzdGluZyBib3RoIGluIHRoZSBgJGZvbnQtc2l6ZWAgYW5kIHRoZSBgJGxpbmUtaGVpZ2h0YCBtYXBzLlxyXG4gKiBAcGFyYW0ge3N0cmluZ30gJHZhbHVlIC0gU3RyaW5nXHJcbiAqIEBleGFtcGxlIEBpbmNsdWRlIHRleHQoJ3AnKTtcclxuICovIFxyXG5cclxuQG1peGluIHRleHQoJHZhbHVlKSB7XHJcblx0QGlmICh0eXBlLW9mKCR2YWx1ZSkgPT0gc3RyaW5nKSB7XHJcblx0XHRAaW5jbHVkZSBmb250KG1hcC1nZXQoJGZvbnQtc2l6ZSwgJHZhbHVlKSwgbWFwLWdldCgkbGluZS1oZWlnaHQsICR2YWx1ZSkpO1xyXG5cdH0gQGVsc2Uge1xyXG5cdFx0QGVycm9yICdWYWx1ZSBzaG91bGQgYmUgYSBzdHJpbmcnO1xyXG5cdH1cclxufVxyXG5cclxuXHJcbi8qKlxyXG4gKiBGb250IEF3ZXNvbWUuXHJcbiAqXHJcbiAqIEFkZCBGb250IEF3ZXNvbWUgaWNvbnMgYXMgcHN1ZWRvIGVsZW1lbnRzIGJ5IHVzaW5nIHRoZWlyIHVuaWNvZGUuXHJcbiAqIEBwYXJhbSB7U3RyaW5nfSAkY29udGVudCAtIFVuaWNvZGUgc3RyaW5nLlxyXG4gKiBAcGFyYW0ge1N0cmluZ30gJGZhbWlseSAtIEZvbnQgQXdlc29tZSBmb250IGZhbWlseSBzdHJpbmcuXHJcbiAqIEBleGFtcGxlIEBpbmNsdWRlIGZvbnRhd2Vzb21lKCdmMTAwJywgJ0xpZ2h0Jyk7XHJcbiAqL1xyXG5cclxuQG1peGluIGZvbnRhd2Vzb21lKCRjb250ZW50LCAkZmFtaWx5KSB7XHJcblx0QGlmICh0eXBlLW9mKCRmYW1pbHkpID09IHN0cmluZykge1xyXG5cdFx0ZGlzcGxheTogbm9uZTtcclxuXHRcdGZvbnQtZmFtaWx5OiAnRm9udCBBd2Vzb21lIDUgI3skZmFtaWx5fSc7XHJcblx0XHRjb250ZW50OiB1bmljb2RlKCRjb250ZW50KTtcclxuXHR9IEBlbHNlIHtcclxuXHRcdEBlcnJvciAnQXJndW1lbnQgYCRmYW1pbHlgIHNob3VsZCBiZSBhIHN0cmluZyc7XHJcblx0fVxyXG59XHJcblxyXG5cclxuLyoqXHJcbiAqIE1lZGlhLlxyXG4gKlxyXG4gKiBNZWRpYSBxdWVyaWVzIGFjY29yZGluZyB0byBcIlRoZSAxMDAlIENvcnJlY3QgV2F5IFRvIERvIENTUyBCcmVha3BvaW50c1wiIChodHRwczovL21lZGl1bS5mcmVlY29kZWNhbXAuY29tL3RoZS0xMDAtY29ycmVjdC13YXktdG8tZG8tY3NzLWJyZWFrcG9pbnRzLTg4ZDZhNWJhMTg2MikuXHJcbiAqIEBwYXJhbSB7U3RyaW5nfSAkYnJlYWtwb2ludCAtIEJyZWFrcG9pbnQgcGl4ZWwgdW5pdCB2YWx1ZS5cclxuICogQGV4YW1wbGUgQGluY2x1ZGUgbWVkaWEoJ3Bob25lJykge31cclxuICovIFxyXG4gXHJcbkBtaXhpbiBtZWRpYSgkc2l6ZSkge1xyXG5cdEBpZiAoJHNpemUgPT0gJ2Rlc2t0b3AnKSB7XHJcblx0XHRAbWVkaWEgb25seSBzY3JlZW4gYW5kKG1pbi13aWR0aDogMTIwMHB4KSB7XHJcblx0XHRcdEBjb250ZW50O1xyXG5cdFx0fVxyXG5cdH0gQGVsc2UgaWYgKCRzaXplID09ICd0YWJsZXQtbGFuZHNjYXBlLXVwJykge1xyXG5cdFx0QG1lZGlhIG9ubHkgc2NyZWVuIGFuZChtaW4td2lkdGg6IDkwMHB4KSB7XHJcblx0XHRcdEBjb250ZW50O1xyXG5cdFx0fVxyXG5cdH0gQGVsc2UgaWYgKCRzaXplID09ICd0YWJsZXQtbGFuZHNjYXBlJykge1xyXG5cdFx0QG1lZGlhIG9ubHkgc2NyZWVuIGFuZChtaW4td2lkdGg6IDkwMHB4KSBhbmQobWF4LXdpZHRoOiAxMTk5cHgpIHtcclxuXHRcdFx0QGNvbnRlbnQ7XHJcblx0XHR9XHJcblx0fSBAZWxzZSBpZiAoJHNpemUgPT0gJ3RhYmxldC1sYW5kc2NhcGUtZG93bicpIHtcclxuXHRcdEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQobWF4LXdpZHRoOiAxMTk5cHgpIHtcclxuXHRcdFx0QGNvbnRlbnQ7XHJcblx0XHR9XHJcblx0fSBAZWxzZSBpZiAoJHNpemUgPT0gJ3RhYmxldC1wb3J0cmFpdC11cCcpIHtcclxuXHRcdEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQobWluLXdpZHRoOiA2MDBweCkge1xyXG5cdFx0XHRAY29udGVudDtcclxuXHRcdH1cclxuXHR9IEBlbHNlIGlmICgkc2l6ZSA9PSAndGFibGV0LXBvcnRyYWl0Jykge1xyXG5cdFx0QG1lZGlhIG9ubHkgc2NyZWVuIGFuZChtaW4td2lkdGg6IDYwMHB4KSBhbmQobWF4LXdpZHRoOiA4OTlweCkge1xyXG5cdFx0XHRAY29udGVudDtcclxuXHRcdH1cclxuXHR9IEBlbHNlIGlmICgkc2l6ZSA9PSAndGFibGV0LXBvcnRyYWl0LWRvd24nKSB7XHJcblx0XHRAbWVkaWEgb25seSBzY3JlZW4gYW5kKG1heC13aWR0aDogODk5cHgpIHtcclxuXHRcdFx0QGNvbnRlbnQ7XHJcblx0XHR9XHJcblx0fSBAZWxzZSBpZiAoJHNpemUgPT0gJ3RhYmxldCcpIHtcclxuXHRcdEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQobWluLXdpZHRoOiA2MDBweCkgYW5kKG1heC13aWR0aDogMTE5OXB4KSB7XHJcblx0XHRcdEBjb250ZW50O1xyXG5cdFx0fVxyXG5cdH0gQGVsc2UgaWYgKCRzaXplID09ICdwaG9uZScpIHtcclxuXHRcdEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQobWF4LXdpZHRoOiA1OTlweCkge1xyXG5cdFx0XHRAY29udGVudDtcclxuXHRcdH1cclxuXHR9IEBlbHNlIHtcclxuXHRcdEBjb250ZW50O1xyXG5cdH1cclxufVxyXG4iLCIvKipcclxuICogUmVtb3ZlIG1hcmdpbiBhbmQgcGFkZGluZyBmcm9tIGV2ZXJ5IHNlbGVjdG9yIGluY2x1ZGluZyB0aGVpclxyXG4gKiBwc3VlZG8gc2VsZWN0b3JzLlxyXG4gKlxyXG4gKiAxLiBNb3JlIHNlbnNpYmxlIGRlZmF1bHQgYm94IHNpemluZy5cclxuICogICAgKGNzcy10cmlja3MuY29tL2luaGVyaXRpbmctYm94LXNpemluZy1wcm9iYWJseS1zbGlnaHRseS1iZXR0ZXItYmVzdC1wcmFjdGljZSkuXHJcbiAqL1xyXG5cclxuKixcclxuKjo6YmVmb3JlLFxyXG4qOjphZnRlciB7XHJcblx0bWFyZ2luOiAwO1xyXG5cdHBhZGRpbmc6IDA7XHJcblx0Ym94LXNpemluZzogaW5oZXJpdDsgLyogMSAqL1xyXG59XHJcblxyXG5cclxuLyoqXHJcbiAqIFNldCBoZWlnaHQgb2YgdGhlIGRvY3VtZW50IHRvIG1heGl1bSB2aWV3cG9ydCBoZWlnaHQuXHJcbiAqXHJcbiAqIDEuIFNldCByb290IGZvbnQgc2l6ZSB0byAxMC5cclxuICovXHJcblxyXG5odG1sIHtcclxuXHRoZWlnaHQ6IDEwMHZoO1xyXG5cdGZvbnQtc2l6ZTogNjIuNSU7IC8qIDEgKi9cclxuXHRib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG59XHJcblxyXG5cclxuLyoqXHJcbiAqIFNldCBtaW5pbWFsIGhlaWdodCBvZiB0aGUgYm9keSB0byBtYXhpbXVtIHZpZXdwb3J0IGhlaWdodCB0b1xyXG4gKiBtYXRjaCB0aGUgZG9jdW1lbnQncyBoZWlnaHQuXHJcbiAqXHJcbiAqIDEuIEZpcmVmb3ggMjUrLlxyXG4gKiAyLiBDaHJvbWUgNSsuXHJcbiAqL1xyXG5cclxuYm9keSB7XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1wb3J0cmFpdC1kb3duJykge1xyXG5cdFx0QGluY2x1ZGUgZm9udCgxNHB4LCAyNHB4KTtcclxuXHR9XHJcblxyXG5cdEBpbmNsdWRlIHRleHQoJGJvZHktdGV4dCk7XHJcblx0bWluLWhlaWdodDogMTAwdmg7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogJGJvZHktYmFja2dyb3VuZC1jb2xvcjtcclxuXHRjb2xvcjogJGJvZHktY29sb3I7XHJcblx0Zm9udC1mYW1pbHk6ICRib2R5LWZvbnQtZmFtaWx5O1xyXG5cdGZvbnQtd2VpZ2h0OiA0MDA7XHJcblx0bGV0dGVyLXNwYWNpbmc6IDAuMDNlbTtcclxuXHR0ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5O1xyXG5cdC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7IC8qIDEgKi9cclxuXHQtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDsgLyogMiAqL1xyXG59XHJcbiIsIi8qKlxyXG4gKiBDdXN0b20gdXNlciBhZ2VudCByZXNldHMgYW5kIG92ZXJyaWRlcyB0aGF0IGFyZSBub3QgcHJlc2VudCBpblxyXG4gKiBOb3JtYWxpemUgOC4wLjAuIFRoaXMgbW9zdGx5IHJlbW92ZXMgc29tZSBhbm5veWluZyBtYXJnaW4gYW5kIHBhZGRpbmdcclxuICogZGVmYXVsdHMsIGJvcmRlciByYWRpdXMsIGFuZCBvdXRsaW5lcy5cclxuICovXHJcblxyXG5hIHtcclxuXHRjb2xvcjogaW5oZXJpdDtcclxuXHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbn1cclxuXHJcblxyXG4vKipcclxuICogMS4gUmVtb3ZlIGJvcmRlciByYWRpdXMgb24gQ2hyb21lIDYyLjArIG9uIG1hY09TLlxyXG4gKi9cclxuXHJcbmJ1dHRvbiB7XHJcblx0Ym9yZGVyOiAwO1xyXG5cdGJvcmRlci1yYWRpdXM6IDA7IC8qIDEgKi9cclxuXHRvdXRsaW5lOiBub25lO1xyXG5cdGJhY2tncm91bmQ6IG5vbmU7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG59XHJcblxyXG5maWVsZHNldCB7XHJcblx0bWFyZ2luOiAwO1xyXG5cdHBhZGRpbmc6IDA7XHJcblx0Ym9yZGVyOiAwO1xyXG59XHJcblxyXG5maWd1cmUge1xyXG5cdG1hcmdpbjogMDtcclxufVxyXG5cclxuaDEsXHJcbmgyLFxyXG5oMyxcclxuaDQsXHJcbmg1LFxyXG5oNiB7XHJcblx0bWFyZ2luOiAwO1xyXG5cdHBhZGRpbmc6IDA7XHJcblx0Zm9udC1zaXplOiBpbmhlcml0O1xyXG5cdGZvbnQtd2VpZ2h0OiBpbmhlcml0O1xyXG59XHJcblxyXG5ociB7XHJcblx0bWFyZ2luOiAwO1xyXG5cdHBhZGRpbmc6IDA7XHJcbn1cclxuXHJcblxyXG4vKipcclxuICogMS4gUmVtb3ZlIHdoaXRlIHNwYWNlLlxyXG4gKi9cclxuXHJcbmltZyB7XHJcblx0bWF4LXdpZHRoOiAxMDAlO1xyXG5cdGhlaWdodDogYXV0bztcclxuXHR2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyAvKiAxICovXHJcbn1cclxuXHJcblxyXG4vKipcclxuICogMS4gUmVtb3ZlIGluaGVyaXRlZCB1c2VyIGFnZW50IGFwcGVhcmFuY2UuXHJcbiAqL1xyXG5cclxuaW5wdXQsXHJcbnNlbGVjdCxcclxudGV4dGFyZWEge1xyXG5cdG1heC13aWR0aDogMTAwJTtcclxuXHRib3JkZXI6IDA7XHJcblx0Ym9yZGVyLXJhZGl1czogMDtcclxuXHRvdXRsaW5lOiBub25lO1xyXG5cdGFwcGVhcmFuY2U6IG5vbmU7IC8qIDEgKi9cclxufVxyXG5cclxuXHJcbi8qKlxyXG4gKiAxLiBPbmx5IGFsbG93IHZlcnRpY2FsIHJlc2l6aW5nIHRvIHByZXZlbnQgdGhlIHRleHRhcmVhXHJcbiAqICAgIGZyb20gb3ZlcmZsb3dpbmcgdGhlIGNvbnRhaW5lci5cclxuICovXHJcblxyXG50ZXh0YXJlYSB7XHJcblx0cmVzaXplOiB2ZXJ0aWNhbDtcclxufVxyXG5cclxudWwsXHJcbm9sIHtcclxuXHRtYXJnaW46IDA7XHJcblx0cGFkZGluZzogMDtcclxuXHRsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XHJcbn1cclxuXHJcbnAge1xyXG5cdG1hcmdpbjogMDtcclxufVxyXG5cclxuXHJcbi8qKlxyXG4gKiAxLiBDb2xsYXBzZSBib3JkZXJzIHRvIHByZXZlbnQgZG91YmxlIHNpZGVkIGJvcmRlcnMuXHJcbiAqL1xyXG5cclxudGFibGUge1xyXG5cdG1heC13aWR0aDogMTAwJTtcclxuXHRib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlOyAvKiAxICovXHJcbn1cclxuXHJcbnN0cm9uZyB7XHJcblx0Zm9udC13ZWlnaHQ6IDcwMDtcclxufVxyXG4iLCIvKipcclxuICogQnV0dG9uLlxyXG4gKi9cclxuXHJcbiVidXR0b24sXHJcbi5idXR0b24ge1xyXG5cdGRpc3BsYXk6IGlubGluZS1mbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblx0Zm9udC1mYW1pbHk6IG1hcC1nZXQoJGZvbnQtZmFtaWx5LCAnYnV0dG9uJyk7XHJcblx0Zm9udC13ZWlnaHQ6IGJvbGQ7XHJcblx0dHJhbnNpdGlvbjogYWxsIDI1MG1zIGVhc2U7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdGZvbnQtd2VpZ2h0OiA3MDA7XHJcblxyXG5cdHN2ZyB7XHJcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0XHR0b3A6IDFweDtcclxuXHRcdHdpZHRoOiAxNHB4O1xyXG5cdFx0aGVpZ2h0OiAyNHB4O1xyXG5cdFx0dHJhbnNpdGlvbjogYWxsIDI1MG1zIGVhc2U7XHJcblx0fVxyXG5cclxuXHQmLmhhcy1zdmctbGVmdCB7XHJcblx0XHRzdmcge1xyXG5cdFx0XHRtYXJnaW4tcmlnaHQ6IDhweDtcclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdCYuaGFzLXN2Zy1yaWdodCB7XHJcblx0XHRzdmcge1xyXG5cdFx0XHRtYXJnaW4tbGVmdDogOHB4O1xyXG5cdFx0fVxyXG5cdH1cclxufVxyXG5cclxuXHJcbi8qKlxyXG4gKiBCdXR0b24gKGRlZmF1bHQpLlxyXG4gKi9cclxuXHJcbiVidXR0b24tLWRlZmF1bHQsXHJcbi5idXR0b24tLWRlZmF1bHQge1xyXG5cdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtcG9ydHJhaXQtZG93bicpIHtcclxuXHRcdEBpbmNsdWRlIGZvbnQoMThweCwgMjRweCk7XHJcblx0XHRoZWlnaHQ6IDQ0cHg7XHJcblx0XHRib3JkZXItcmFkaXVzOiAzMnB4IDU1cHggMHB4IDMycHg7XHJcblx0fVxyXG5cclxuXHRAaW5jbHVkZSBmb250KDIwcHgsIDI0cHgpO1xyXG5cdGhlaWdodDogNTZweDtcclxuXHRwYWRkaW5nOiAwIDQwcHg7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogJHNhcHBoaXJlLTEwMDtcclxuXHRjb2xvcjogJHdoaXRlLTEwMDtcclxuXHRib3JkZXItcmFkaXVzOiAzMnB4IDMycHggMHB4IDMycHg7XHJcblxyXG5cdHN2ZyB7XHJcblx0XHRjb2xvcjogJHdoaXRlLTEwMDtcclxuXHR9XHJcblxyXG5cdCY6aG92ZXIge1xyXG5cdFx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1sYW5kc2NhcGUtdXAnKSB7XHJcblx0XHRcdGJveC1zaGFkb3c6IDBweCA0MHB4IDgwcHggJHNhcHBoaXJlLTE1O1xyXG5cdFx0XHRtYXJnaW4tdG9wOiAtNXB4O1xyXG5cdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0XHRcdHRyYW5zaXRpb246IDMwMG1zIGVhc2U7XHJcblx0XHR9XHJcblx0fVxyXG59XHJcblxyXG5cclxuLyoqXHJcbiAqIEJ1dHRvbiAoZGVmYXVsdC1zbWFsbCkuXHJcbiAqL1xyXG5cclxuJWJ1dHRvbi0tZGVmYXVsdC1zbWFsbCxcclxuLmJ1dHRvbi0tZGVmYXVsdC1zbWFsbCB7XHJcblx0QGluY2x1ZGUgZm9udCgxNHB4LCAyNHB4KTtcclxuXHRoZWlnaHQ6IDQwcHg7XHJcblx0cGFkZGluZzogMCA0MHB4O1xyXG5cdGJhY2tncm91bmQtY29sb3I6ICRzYXBwaGlyZS0xMDA7XHJcblx0Y29sb3I6ICR3aGl0ZS0xMDA7XHJcblx0Ym9yZGVyLXJhZGl1czogMHB4IDMycHggMzJweCA1NXB4O1xyXG5cclxuXHRzdmcge1xyXG5cdFx0Y29sb3I6ICR3aGl0ZS0xMDA7XHJcblx0fVxyXG5cclxuXHQmOmhvdmVyIHtcclxuXHRcdGJveC1zaGFkb3c6IDBweCA0MHB4IDgwcHggJHNhcHBoaXJlLTE1O1xyXG5cdH1cclxufVxyXG5cclxuXHJcbi8qKlxyXG4gKiBCdXR0b24gKGJvcmRlcikuXHJcbiAqL1xyXG5cclxuJWJ1dHRvbi0tYm9yZGVyLFxyXG4uYnV0dG9uLS1ib3JkZXIge1xyXG5cdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtcG9ydHJhaXQtZG93bicpIHtcclxuXHRcdEBpbmNsdWRlIGZvbnQoMThweCwgMjRweCk7XHJcblx0XHRoZWlnaHQ6IDQ0cHg7XHJcblx0fVxyXG5cclxuXHRAaW5jbHVkZSBmb250KDIwcHgsIDI0cHgpO1xyXG5cdGhlaWdodDogNTZweDtcclxuXHRwYWRkaW5nOiAwIDQwcHg7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogJHdoaXRlLTEwMDtcclxuXHRjb2xvcjogJHNhcHBoaXJlLTEwMDtcclxuXHRib3JkZXI6IDFweCBzb2xpZCAkc2FwcGhpcmUtMTAwO1xyXG5cdGJvcmRlci1yYWRpdXM6IDMycHggMzJweCAwcHggMzJweDtcclxuXHJcblx0c3ZnIHtcclxuXHRcdGNvbG9yOiAkc2FwcGhpcmUtMTAwO1xyXG5cdH1cclxuXHJcblx0Jjpob3ZlciB7XHJcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkcGVyYW5vLTEwMDtcclxuXHRcdGNvbG9yOiAkd2hpdGUtMTAwO1xyXG5cdFx0Ym9yZGVyOiAxcHggc29saWQgJHBlcmFuby0xMDA7XHJcblxyXG5cdFx0c3ZnIHtcclxuXHRcdFx0Y29sb3I6ICR3aGl0ZS0xMDA7XHJcblx0XHR9XHJcblx0fVxyXG59XHJcblxyXG5cclxuLyoqXHJcbiAqIEJ1dHRvbiAoYm9yZGVyLXNtYWxsKS5cclxuICovXHJcblxyXG4lYnV0dG9uLS1ib3JkZXItc21hbGwsXHJcbi5idXR0b24tLWJvcmRlci1zbWFsbCB7XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1wb3J0cmFpdC1kb3duJykge1xyXG5cdFx0QGluY2x1ZGUgZm9udCgxMnB4LCAyNHB4KTtcclxuXHRcdGhlaWdodDogMzBweDtcclxuXHR9XHJcblxyXG5cdEBpbmNsdWRlIGZvbnQoMTRweCwgMjRweCk7XHJcblx0aGVpZ2h0OiA0MHB4O1xyXG5cdHBhZGRpbmc6IDAgNDBweDtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGUtMTAwO1xyXG5cdGNvbG9yOiAkc2FwcGhpcmUtMTAwO1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkICRzYXBwaGlyZS0xMDA7XHJcblx0Ym9yZGVyLXJhZGl1czogMHB4IDMycHggMzJweCAzMnB4O1xyXG5cclxuXHRzdmcge1xyXG5cdFx0Y29sb3I6ICRzYXBwaGlyZS0xMDA7XHJcblx0fVxyXG5cclxuXHQmOmhvdmVyIHtcclxuXHRcdGJhY2tncm91bmQtY29sb3I6ICRwZXJhbm8tMTAwO1xyXG5cdFx0Y29sb3I6ICR3aGl0ZS0xMDA7XHJcblx0XHRib3JkZXI6IDFweCBzb2xpZCAkcGVyYW5vLTEwMDtcclxuXHJcblx0XHRzdmcge1xyXG5cdFx0XHRjb2xvcjogJHdoaXRlLTEwMDtcclxuXHRcdH1cclxuXHR9XHJcbn1cclxuIiwiLyoqXHJcbiAqIFRoZSBjb250YWluZXIgb2JqZWN0IGNlbnRlcnMgYW4gZWxlbWVudCBpbiB0aGUgZG9jdW1lbnQuXHJcbiAqL1xyXG5cclxuLmNvbnRhaW5lciB7XHJcblx0QGluY2x1ZGUgY29udGFpbmVyO1xyXG59XHJcbiIsIi8qKlxyXG4gKiBUaGUgY29udGVudCBjb25zdHJhaW50IGlzIGEgY29uc3RyYWludCBmb3IgYWxsIHRoZSBjb250ZW50IHdpdGhpblxyXG4gKiB0aGUgZG9jdW1lbnQuIEl0IGNhbiBiZSBtYW5pcHVsYXRlZCBieSBDU1Mgb3IgSmF2YVNjcmlwdCB3aXRob3V0XHJcbiAqIGluZmx1ZW5jaW5nIHRoZSBib2R5LlxyXG4gKi9cclxuXHJcbi5jb250ZW50LWNvbnN0cmFpbnQge1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRtaW4taGVpZ2h0OiAxMDB2aDtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG59XHJcbiIsIi8qKlxyXG4gKiBFeGFtcGxlIG9mIGEgZmxleCBiYXNlZCBjb2x1bW4gZ3JpZCBsYXlvdXQgaW4gcHJhY3RpY2U6XHJcbiAqXHJcbiAqIDxkaXYgY2xhc3M9XCJyb3dcIj5cclxuICogICA8ZGl2IGNsYXNzPVwiY29sIGNvbC14cy02IGNvbC1zbS0xMlwiPjwvZGl2PlxyXG4gKiAgIDxkaXYgY2xhc3M9XCJjb2wgY29sLXhzLTYgY29sLXNtLTEyXCI+PC9kaXY+XHJcbiAqIDwvZGl2PlxyXG4gKlxyXG4gKiBUaGlzIGV4YW1wbGUgd2lsbCBjcmVhdGUgYSByb3cgd2l0aCB0d28gY29sdW1ucyBlYWNoIGZpbGxpbmcgaGFsZiB0aGUgd2lkdGhcclxuICogb2YgdGhlIHJvdyBvbiBhbGwgbWVkaWEsIGJ1dCB3aWxsIGNvbnZlcnQgdG8gYSBmdWxsIHdpZHRoIGNvbHVtbiBvbiB0aGVcclxuICogc21hbGwgYC1zbWAgYnJlYWtwb2ludCBhbGlhcywgd2hpY2ggaXMgbW9iaWxlIG9ubHkuIFJlZmVyIHRvXHJcbiAqIGBzZXR0aW5ncy9fZGVmaW5pdGlvbnMuc2Nzc2AgZm9yIGFsbCBicmVha3BvaW50IGFsaWFzLlxyXG4gKi9cclxuXHJcbi8qKlxyXG4gKiBGbGV4IG9iamVjdC5cclxuICpcclxuICogVGlwOiBVc2UgZmxleCBvbiBhIGNvbHVtbiB0byBtYWtlIHRoZSBib3ggdGhlIHNhbWUgaGVpZ2h0IGFzIHRoZSBjb2x1bW4uXHJcbiAqL1xyXG5cclxuLmZsZXgge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcbn1cclxuXHJcbi5mbGV4LXdyYXAge1xyXG5cdGZsZXgtd3JhcDogd3JhcDtcclxufVxyXG5cclxuXHJcbi8qKlxyXG4gKiBGbGV4IG9iamVjdCB3aXRoIGEgY29sdW1uIGJhc2VkIGxheW91dCBzeXN0ZW0uXHJcbiAqL1xyXG5cclxuLnJvdyB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4OiAwIDEgYXV0bztcclxuXHRmbGV4LWZsb3c6IHJvdyB3cmFwO1xyXG5cdG1hcmdpbjogMCAtI3soJGdyaWQtZ2FwLzIpfTtcclxufVxyXG5cclxuXHJcbi8qKlxyXG4gKiBCb3gsIHRoZSBpbnNpZGUgb2YgYSBjb2x1bW4uXHJcbiAqL1xyXG5cclxuLmJveCB7XHJcblx0ZmxleDogMTtcclxufVxyXG5cclxuXHJcbi8vIExvb3AgdGhyb3VnaCBhbGwgdGhlIGtleXMgaW4gdGhlIGAkYnJlYWtwb2ludHNgIHZhcmlhYmxlIG1hcCBkZWZpbmVkIGluXHJcbi8vIGBzZXR0aW5ncy9fZGVmaW5pdGlvbnMuc2Nzc2AuXHJcbkBlYWNoICRrZXksICR2YWx1ZSBpbiAkYnJlYWtwb2ludHMge1xyXG5cclxuXHQvLyBDcmVhdGUgYSBtZWRpYSBxdWVyeSBmb3IgZXZlcnkga2V5IGluIGAkYnJlYWtwb2ludHNgLlxyXG5cdEBpbmNsdWRlIG1lZGlhKCR2YWx1ZSkge1xyXG5cclxuXHRcdC8vIEl0ZXJhdGUgZnJvbSAxIHRocm91Z2ggdGhlIGFtb3VudCBvZiBncmlkIGNvbHVtbnMgZGVmaW5lZCBieVxyXG5cdFx0Ly8gYCRncmlkLWNvbHVtbnNgIGluIGBzZXR0aW5ncy9fZGVmaW5pdGlvbnMuc2Nzc2AuXHJcblx0XHRAZm9yICRpIGZyb20gMSB0aHJvdWdoICRncmlkLWNvbHVtbnMge1xyXG5cclxuXHRcdFx0LyoqXHJcblx0XHRcdCAqIENvbHVtbiAjeyRpfSBmb3IgdGhlIGAjeyRrZXl9YCBicmVha3BvaW50LlxyXG5cdFx0XHQgKi9cclxuXHJcblx0XHRcdC5jb2wtI3ska2V5fS0jeyRpfSB7XHJcblx0XHRcdFx0ZmxleDogMCAxIGF1dG87XHJcblx0XHRcdFx0d2lkdGg6IGNvbHVtbigkaSk7XHJcblx0XHRcdFx0cGFkZGluZzogMCAoJGdyaWQtZ2FwLzIpO1xyXG5cdFx0XHR9XHJcblxyXG5cclxuXHRcdFx0Ly8gT3V0cHV0IGFuIG9mZnNldCB1dGlsaXR5IGNsYXNzIGlmIHRoZSBpdGVyYXRvciBpcyBsZXNzIHRoYW4gdGhlIGFtb3VudFxyXG5cdFx0XHQvLyBvZiBncmlkIGNvbHVtbnMgZGVmaW5lZCBieSBgJGdyaWQtY29sdW1uc2AgaW5cclxuXHRcdFx0Ly8gYHNldHRpbmdzL19kZWZpbml0aW9ucy5zY3NzYC5cclxuXHRcdFx0QGlmICgkaSA8ICRncmlkLWNvbHVtbnMpIHtcclxuXHJcblx0XHRcdFx0LyoqXHJcblx0XHRcdFx0ICogT2Zmc2V0ICN7JGl9IGZvciB0aGUgYCN7JGtleX1gIGJyZWFrcG9pbnQuXHJcblx0XHRcdFx0ICovXHJcblxyXG5cdFx0XHRcdC5vZmZzZXQtI3ska2V5fS0jeyRpfSB7XHJcblx0XHRcdFx0XHRtYXJnaW4tbGVmdDogY29sdW1uKCRpKTtcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHJcblxyXG5cdFx0Ly8gTG9vcCB0aHJvdWdoIGFsbCB2YWx1ZXMgZm9yIHRoZSBgYWxpZ24taXRlbXNgIHByb3BlcnR5LlxyXG5cdFx0QGVhY2ggJHZhbHVlIGluIHN0cmV0Y2gsIGNlbnRlciwgZmxleC1zdGFydCwgZmxleC1lbmQsIGJhc2VsaW5lIHtcclxuXHJcblx0XHRcdC8qKlxyXG5cdFx0XHQgKiBBbGlnbiBgI3skdmFsdWV9YCBmb3IgdGhlICN7JGtleX0gYnJlYWtwb2ludC5cclxuXHRcdFx0ICovXHJcblxyXG5cdFx0XHQuYWxpZ24tI3ska2V5fS0jeyR2YWx1ZX0ge1xyXG5cdFx0XHRcdGFsaWduLWl0ZW1zOiAkdmFsdWU7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHJcblxyXG5cdFx0Ly8gTG9vcCB0aHJvdWdoIGFsbCB2YWx1ZXMgZm9yIHRoZSBganVzdGlmeS1jb250ZW50YCBwcm9wZXJ0eS5cclxuXHRcdEBlYWNoICR2YWx1ZSBpbiBzdGFydCwgY2VudGVyLCBzcGFjZS1iZXR3ZWVuLCBzcGFjZS1hcm91bmQsIHNwYWNlLWV2ZW5seSB7XHJcblxyXG5cdFx0XHQvKipcclxuXHRcdFx0ICogSnVzdGlmeSBgI3skdmFsdWV9YCBmb3IgdGhlICN7JGtleX0gYnJlYWtwb2ludC5cclxuXHRcdFx0ICovXHJcblxyXG5cdFx0XHQuanVzdGlmeS0jeyRrZXl9LSN7JHZhbHVlfSB7XHJcblx0XHRcdFx0anVzdGlmeS1jb250ZW50OiAkdmFsdWU7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHJcblxyXG5cdFx0Ly8gTG9vcCB0aHJvdWdoIGV2ZXJ5IGRpcmVjdGlvbiBmcm9tIGxlZnQgdG8gcmlnaHQuXHJcblx0XHRAZWFjaCAkZGlyZWN0aW9uIGluIGxlZnQsIHJpZ2h0IHtcclxuXHJcblx0XHRcdC8qKlxyXG5cdFx0XHQgKiBCbGVlZCAjeyRkaXJlY3Rpb259IGZvciB0aGUgI3ska2V5fSBicmVha3BvaW50LlxyXG5cdFx0XHQgKi9cclxuXHJcblx0XHRcdC5ibGVlZC0jeyRrZXl9LSN7JGRpcmVjdGlvbn0ge1xyXG5cdFx0XHRcdHBhZGRpbmctI3skZGlyZWN0aW9ufTogMDtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cclxuXHJcblx0XHQvKipcclxuXHRcdCAqIE9yZGVyIGZpcnN0IGZvciB0aGUgYCN7JGtleX1gIGJyZWFrcG9pbnQuXHJcblx0XHQgKi9cclxuXHJcblx0XHQuZmlyc3QtI3ska2V5fSB7XHJcblx0XHRcdG9yZGVyOiAtMTtcclxuXHRcdH1cclxuXHJcblxyXG5cdFx0LyoqXHJcblx0XHQgKiBPcmRlciBsYXN0IGZvciB0aGUgYCN7JGtleX1gIGJyZWFrcG9pbnQuXHJcblx0XHQgKi9cclxuXHJcblx0XHQubGFzdC0jeyRrZXl9IHtcclxuXHRcdFx0b3JkZXI6IDE7XHJcblx0XHR9XHJcblxyXG5cclxuXHRcdC8qKlxyXG5cdFx0ICogUmV2ZXJzZSBvcmRlciBmb3IgdGhlIGAjeyRrZXl9YCBicmVha3BvaW50LlxyXG5cdFx0ICovXHJcblxyXG5cdFx0LnJldmVyc2UtI3ska2V5fSB7XHJcblx0XHRcdGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTtcclxuXHRcdH1cclxuXHR9XHJcbn1cclxuIiwiLyoqXHJcbiAqIERlZmF1bHQgZmllbGRzLlxyXG4gKi9cclxuXHJcbmxhYmVsIHtcclxuXHRAaW5jbHVkZSBmb250KDE0cHgsIDE4cHgpO1xyXG5cdGRpc3BsYXk6IGJsb2NrO1xyXG5cdGZvbnQtd2VpZ2h0OiA2MDA7XHJcblx0Y29sb3I6ICRwZXJhbm8tMTAwO1xyXG5cdG1hcmdpbi1ib3R0b206IDEwcHg7XHJcblx0dHJhbnNpdGlvbjogYWxsIDI1MG1zIGVhc2U7XHJcbn1cclxuXHJcbiVpbnB1dCxcclxuc2VsZWN0LFxyXG5pbnB1dCxcclxudGV4dGFyZWEge1xyXG5cdEBpbmNsdWRlIGZvbnQoMTZweCwgMjRweCk7XHJcblx0d2lkdGg6IDEwMCU7XHJcblx0aGVpZ2h0OiA0MnB4O1xyXG5cdGJvcmRlci1yYWRpdXM6IDRweDtcclxuXHRwYWRkaW5nOiA1cHggMTBweDtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGUtMTAwO1xyXG5cdGNvbG9yOiAkc2FwcGhpcmUtMTAwO1xyXG5cdGJvcmRlci1yYWRpdXM6IDRweDtcclxuXHJcblx0Jjo6cGxhY2Vob2xkZXIge1xyXG5cdFx0Y29sb3I6ICRwZXJhbm8tMTAwO1xyXG5cdH1cclxufVxyXG5cclxudGV4dGFyZWEge1xyXG5cdGhlaWdodDogMTk1cHg7XHJcblx0cGFkZGluZy10b3A6IDEwcHg7XHJcbn1cclxuXHJcbi5nZmllbGQge1xyXG5cdHdpZHRoOiAxMDAlO1xyXG5cclxuXHQmLmlzLXNtYWxsIHtcclxuXHRcdHdpZHRoOiBjYWxjKDUwJSAtIDEwcHgpO1xyXG5cdFx0bWFyZ2luLXRvcDogLTMwcHg7XHJcblxyXG5cdFx0aW5wdXQsXHJcblx0XHRzZWxlY3Qge1xyXG5cdFx0XHRAaW5jbHVkZSBmb250KDE2cHgsIDI0cHgpO1xyXG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xyXG5cdFx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHRcdFx0d2lkdGg6IDEzMXB4O1xyXG5cdFx0XHRoZWlnaHQ6IDI5cHg7XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHQmLmhhcy1uby1tYXJnaW4ge1xyXG5cdFx0bWFyZ2luLXRvcDogLTMwcHg7XHJcblx0fVxyXG59XHJcblxyXG4uZ2lucHV0X2NvbnRhaW5lcl9zZWxlY3Qge1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHR3aWR0aDogMTAwJTtcclxuXHRtYXgtd2lkdGg6IDIyMHB4O1xyXG5cdGhlaWdodDogMjlweDtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG5cdGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZS0xMDA7XHJcblxyXG5cdHN2ZyB7XHJcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHR0b3A6IDRweDtcclxuXHRcdHJpZ2h0OiA4cHg7XHJcblx0XHR3aWR0aDogMTBweDtcclxuXHRcdGhlaWdodDogMjZweDtcclxuXHRcdGNvbG9yOiAkcGVyYW5vLTEwMDtcclxuXHRcdHotaW5kZXg6IDE7XHJcblx0fVxyXG5cclxuXHRzZWxlY3Qge1xyXG5cdFx0QGluY2x1ZGUgZm9udCgxNnB4LCAyNHB4KTtcclxuXHRcdGRpc3BsYXk6IGZsZXg7XHJcblx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdFx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0XHR3aWR0aDogY2FsYygxMDAlICsgNTBweCk7XHJcblx0XHRtYXgtd2lkdGg6IG5vbmU7XHJcblx0XHRoZWlnaHQ6IDI5cHg7XHJcblx0XHRwYWRkaW5nOiAwIDAgMCAxMHB4O1xyXG5cdFx0YmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcblx0XHRjb2xvcjogJHNhcHBoaXJlLTEwMDtcclxuXHRcdGJvcmRlcjogMDtcclxuXHRcdHotaW5kZXg6IDI7XHJcblx0fVxyXG59XHJcblxyXG4uZ2ZpZWxkX3JhZGlvIHtcclxuXHRsaSB7XHJcblx0XHRkaXNwbGF5OiBmbGV4O1xyXG5cdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRcdG1hcmdpbi1ib3R0b206IDIwcHg7XHJcblx0fVxyXG5cclxuXHRsYWJlbCB7XHJcblx0XHRtYXJnaW46IDA7XHJcblx0fVxyXG59XHJcblxyXG4uZ2ZpZWxkX3JhZGlvLFxyXG4uZ2ZpZWxkX2NoZWNrYm94IHtcclxuXHRsaSB7XHJcblx0XHRkaXNwbGF5OiBmbGV4O1xyXG5cdFx0ZmxleC13cmFwOiB3cmFwO1xyXG5cdH1cclxuXHJcblx0aW5wdXRbdHlwZT0ncmFkaW8nXSxcclxuXHRpbnB1dFt0eXBlPSdjaGVja2JveCddIHtcclxuXHRcdHdpZHRoOiAxNXB4O1xyXG5cdFx0aGVpZ2h0OiAxNXB4O1xyXG5cdFx0bWFyZ2luLXJpZ2h0OiAxMHB4O1xyXG5cdFx0Ym9yZGVyOiAycHggc29saWQgJHBlcmFuby0xMDA7XHJcblx0XHRib3JkZXItcmFkaXVzOiAxcHg7XHJcblx0XHRjb2xvcjogJHBlcmFuby0xMDA7XHJcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuXHRcdHRyYW5zaXRpb246IGFsbCAyNTBtcyBlYXNlO1xyXG5cclxuXHRcdCY6Y2hlY2tlZCB7XHJcblx0XHRcdGJvcmRlcjogMnB4IHNvbGlkICRzYXBwaGlyZS0xMDA7XHJcblx0XHRcdGNvbG9yOiAkc2FwcGhpcmUtMTAwO1xyXG5cdFx0fVx0XHJcblx0fVxyXG5cclxuXHQuaW5wdXQ6Y2hlY2tlZCB7XHJcblx0XHRtYXJnaW4tdG9wOiAxM3B4O1xyXG5cdH1cclxuXHJcblx0aW5wdXQ6Y2hlY2tlZCtsYWJlbCBzdmcge1xyXG5cdFx0ZGlzcGxheTogYmxvY2s7XHJcblx0fVxyXG5cclxuXHRpbnB1dDpjaGVja2VkK2xhYmVsIHtcclxuXHRcdGNvbG9yOiAkc2FwcGhpcmUtMTAwO1xyXG5cdH1cclxuXHJcblx0bGFiZWwgc3ZnIHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB3aWR0aDogOXB4O1xyXG4gICAgaGVpZ2h0OiA5cHg7XHJcbiAgICBtYXJnaW4tdG9wOiAzcHg7XHJcbiAgICBtYXJnaW4tbGVmdDogLTIycHg7XHJcblx0fVxyXG59XHJcblxyXG4uZ2ZpZWxkX3JhZGlvIHtcclxuXHRsYWJlbCBzdmcge1xyXG5cdFx0bWFyZ2luLXRvcDogNHB4O1xyXG5cdH1cclxufVxyXG5cclxuLyoqXHJcbiAqIEdyYXZpdHkgRm9ybXMuXHJcbiAqL1xyXG5cclxuLmdmaWVsZCB7XHJcblx0bWFyZ2luLWJvdHRvbTogMzBweDtcclxuXHRjb2xvcjogJHBlcmFuby0xMDA7XHJcblxyXG5cdCY6aG92ZXIge1xyXG5cdFx0bGFiZWwge1xyXG5cdFx0XHRjb2xvcjogJHNhcHBoaXJlLTEwMDtcclxuXHRcdH1cclxuXHR9XHJcbn1cclxuXHJcbi5naW5wdXRfY29udGFpbmVyX25hbWUge1xyXG5cdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtcG9ydHJhaXQtZG93bicpIHtcclxuXHRcdGZsZXgtd3JhcDogd3JhcDtcclxuXHR9XHJcblxyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG5cclxuXHRzcGFuIHtcclxuXHRcdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtcG9ydHJhaXQtZG93bicpIHtcclxuXHRcdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRcdG1hcmdpbi1ib3R0b206IDIwcHg7XHJcblx0XHR9XHJcblxyXG5cdFx0d2lkdGg6IGNhbGMoNTAlIC0gNnB4KTtcclxuXHJcblx0XHQmOmxhc3Qtb2YtdHlwZSB7XHJcblx0XHRcdG1hcmdpbjogMDtcclxuXHRcdH1cclxuXHR9XHJcbn1cclxuXHJcbi5nZm9ybV92YWxpZGF0aW9uX2NvbnRhaW5lciB7XHJcblx0ZGlzcGxheTogbm9uZTtcclxufVxyXG5cclxuLmhpZGRlbl9sYWJlbCA+IGxhYmVsIHtcclxuXHRkaXNwbGF5OiBub25lO1xyXG59XHJcblxyXG4udmFsaWRhdGlvbl9tZXNzYWdlIHtcclxuXHRAaW5jbHVkZSBmb250KDE0cHgsIDE2cHgpO1xyXG5cdG1hcmdpbi10b3A6IDVweDtcclxuXHRjb2xvcjogJHJlZC0xMDA7XHJcbn1cclxuXHJcbi52YWxpZGF0aW9uX2Vycm9yIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdHdpZHRoOiAxMDAlO1xyXG5cdG1hcmdpbjogMCAwIDM1cHg7XHJcblx0Y29sb3I6ICRyZWQtMTAwO1xyXG5cclxuXHQ+IHNwYW4ge1xyXG5cdFx0QGluY2x1ZGUgZm9udCgyMnB4LCAyOHB4KTtcclxuXHRcdHdpZHRoOiAxMHB4O1xyXG5cdFx0bWFyZ2luLXJpZ2h0OiAxNXB4O1xyXG5cdFx0Y29sb3I6ICRyZWQtMTAwO1xyXG5cdFx0Zm9udC13ZWlnaHQ6IDcwMDtcclxuXHR9XHJcblxyXG5cdHAge1xyXG5cdFx0QGluY2x1ZGUgZm9udCgxNHB4LCAxNnB4KTtcclxuXHRcdHdpZHRoOiBjYWxjKDEwMCUgLSAyNXB4KTtcclxuXHR9XHJcbn1cclxuXHJcbi5nZm9ybV9idXR0b24uY2xpY2tlZCB7XHJcblx0b3BhY2l0eTogMC41ICFpbXBvcnRhbnQ7XHJcblx0cG9pbnRlci1ldmVudHM6IG5vbmUgIWltcG9ydGFudDtcclxufSIsIi8qKlxyXG4gKiBIZWFkaW5nLlxyXG4gKi9cclxuXHJcbmgxLFxyXG5oMixcclxuaDMsXHJcbmg0LFxyXG4laGVhZGluZyxcclxuLmhlYWRpbmcge1xyXG5cdGZvbnQtZmFtaWx5OiBtYXAtZ2V0KCRmb250LWZhbWlseSwgJ2hlYWRpbmcnKTtcclxuXHRjb2xvcjogJHNhcHBoaXJlLTEwMDtcclxuXHJcblx0Ji5pcy13aGl0ZSB7XHJcblx0XHRjb2xvcjogJHdoaXRlLTEwMDtcclxuXHR9XHJcbn1cclxuXHJcblxyXG4vKipcclxuICogSGVhZGluZyAxLlxyXG4gKi9cclxuXHJcbmgxLFxyXG4uaGVhZGluZy0xIHtcclxuXHRAaW5jbHVkZSBtZWRpYSgndGFibGV0LWxhbmRzY2FwZS1kb3duJykge1xyXG5cdFx0QGluY2x1ZGUgZm9udCg1OHB4LCA2OHB4KTtcclxuXHR9XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1wb3J0cmFpdC1kb3duJykge1xyXG5cdFx0QGluY2x1ZGUgZm9udCg0MHB4LCA0NHB4KTtcclxuXHR9XHJcblxyXG5cdEBpbmNsdWRlIGZvbnQoODRweCwgOTZweCk7XHJcblx0Zm9udC13ZWlnaHQ6IDkwMDtcclxuXHRsZXR0ZXItc3BhY2luZzogMC4wMmVtO1xyXG59XHJcblxyXG5cclxuLyoqXHJcbiAqIEhlYWRpbmcgMi5cclxuICovXHJcblxyXG5oMixcclxuJWhlYWRpbmctMixcclxuLmhlYWRpbmctMiB7XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1wb3J0cmFpdC1kb3duJykge1xyXG5cdFx0QGluY2x1ZGUgZm9udCgzMHB4LCAzNHB4KTtcclxuXHR9XHJcblxyXG5cdEBpbmNsdWRlIGZvbnQoNDhweCwgNTRweCk7XHJcblx0Zm9udC13ZWlnaHQ6IDkwMDtcclxuXHRsZXR0ZXItc3BhY2luZzogMC4wMmVtO1xyXG59XHJcblxyXG5cclxuLyoqXHJcbiAqIEhlYWRpbmcgMy5cclxuICovXHJcblxyXG5oMyxcclxuJWhlYWRpbmctMyxcclxuLmhlYWRpbmctMyB7XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1wb3J0cmFpdC1kb3duJykge1xyXG5cdFx0QGluY2x1ZGUgZm9udCgyMnB4LCAyNnB4KTtcclxuXHR9XHJcblxyXG5cdEBpbmNsdWRlIGZvbnQoMzZweCwgMzhweCk7XHJcblx0Zm9udC13ZWlnaHQ6IDkwMDtcclxuXHRsZXR0ZXItc3BhY2luZzogMC4wMmVtO1xyXG59XHJcblxyXG5cclxuLyoqXHJcbiAqIEhlYWRpbmcgNC5cclxuICovXHJcblxyXG5oNCxcclxuJWhlYWRpbmctNCxcclxuLmhlYWRpbmctNCB7XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1wb3J0cmFpdC1kb3duJykge1xyXG5cdFx0QGluY2x1ZGUgZm9udCgyMHB4LCAyNHB4KTtcclxuXHR9XHJcblxyXG5cdEBpbmNsdWRlIGZvbnQoMjRweCwgMjZweCk7XHJcblx0Zm9udC13ZWlnaHQ6IDkwMDtcclxuXHRsZXR0ZXItc3BhY2luZzogMC4wMmVtO1xyXG59XHJcblxyXG5cclxuLyoqXHJcbiAqIEhlYWRpbmcgNS5cclxuICovXHJcblxyXG5oNSxcclxuJWhlYWRpbmctNSxcclxuLmhlYWRpbmctNSB7XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1wb3J0cmFpdC1kb3duJykge1xyXG5cdFx0QGluY2x1ZGUgZm9udCgxOHB4LCAyMnB4KTtcclxuXHR9XHJcblxyXG5cdEBpbmNsdWRlIGZvbnQoMjBweCwgMjZweCk7XHJcblx0Zm9udC13ZWlnaHQ6IDcwMDtcclxuXHRsZXR0ZXItc3BhY2luZzogMC4wMmVtO1xyXG59XHJcblxyXG5cclxuLyoqXHJcbiAqIFN1YmhlYWRpbmcuXHJcbiAqL1xyXG5cclxuLnN1YmhlYWRpbmcge1xyXG5cdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtcG9ydHJhaXQtZG93bicpIHtcclxuXHRcdEBpbmNsdWRlIGZvbnQoMTBweCwgMTRweCk7XHJcblx0fVxyXG5cclxuXHRAaW5jbHVkZSBmb250KDE0cHgsIDI0cHgpO1xyXG5cdGZvbnQtd2VpZ2h0OiA3MDA7XHJcblx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuXHJcblx0Ji5oYXMtbGluZSB7XHJcblx0XHQmOmFmdGVyIHtcclxuXHRcdFx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1wb3J0cmFpdC1kb3duJykge1xyXG5cdFx0XHRcdHRvcDogLTJweDtcclxuXHRcdFx0fVxyXG5cclxuXHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG5cdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0XHRcdHRvcDogLTNweDtcclxuXHRcdFx0d2lkdGg6IDMzcHg7XHJcblx0XHRcdGhlaWdodDogM3B4O1xyXG5cdFx0XHRtYXJnaW4tbGVmdDogOHB4OyBcclxuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJHNhcHBoaXJlLTEwMDtcclxuXHRcdFx0Y29udGVudDogJyc7XHJcblx0XHR9XHJcblx0fVxyXG59XHJcbiIsIi5oYXMtbGF6eS1sb2FkIHtcclxuXHRAaW5jbHVkZSBtZWRpYSgncGhvbmUnKSB7XHJcblx0XHR0b3A6IDA7XHJcblx0XHRvcGFjaXR5OiAxO1xyXG5cdH1cclxuXHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdHRvcDogLTE1MHB4O1xyXG5cdHRyYW5zaXRpb246IGFsbCA3NTBtcyBlYXNlO1xyXG5cdHRyYW5zaXRpb24tZGVsYXk6IDUwMG1zO1xyXG5cdG9wYWNpdHk6IDA7XHJcblxyXG5cdCYuaGVhZGVyIHtcclxuXHRcdHRyYW5zaXRpb24tZGVsYXk6IDc1MG1zO1xyXG5cdFx0dHJhbnNpdGlvbjogYWxsIDUwMG1zIGVhc2U7XHJcblx0fVxyXG5cclxuXHRpbWcge1xyXG5cdFx0b3BhY2l0eTogMTtcclxuXHR9XHJcbn1cclxuXHJcbi5oYXMtbGF6eS1sb2FkW2xvYWRlZD0ndHJ1ZSddIHtcclxuXHR0b3A6IDA7XHJcblx0b3BhY2l0eTogMTtcclxufVxyXG4iLCIubGluayB7XHJcblx0Y29sb3I6ICRzYXBwaGlyZS0xMDA7XHJcblx0dHJhbnNpdGlvbjogYWxsIDI1MG1zIGVhc2U7XHJcblxyXG5cdCYuaGFzLXN2Zy1yaWdodCB7XHJcblx0XHRzdmcge1xyXG5cdFx0XHRtYXJnaW4tbGVmdDogMTBweDtcclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdCYuaGFzLXN2Zy1sZWZ0IHtcclxuXHRcdHN2ZyB7XHJcblx0XHRcdG1hcmdpbi1yaWdodDogMTBweDtcclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdHN2ZyB7XHJcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0XHR0b3A6IDNweDtcclxuXHRcdHdpZHRoOiAxNHB4O1xyXG5cdFx0aGVpZ2h0OiAxNXB4O1xyXG5cdFx0dHJhbnNpdGlvbjogYWxsIDI1MG1zIGVhc2U7XHJcblx0XHRjb2xvcjogJHJlZC0xMDA7XHJcblx0fVxyXG5cclxuXHQmOmhvdmVyIHtcclxuXHRcdHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xyXG5cclxuXHRcdHN2ZyB7XHJcblx0XHRcdG1hcmdpbi1sZWZ0OiAxNXB4O1xyXG5cdFx0fVxyXG5cdH1cclxufVxyXG4iLCIucGFnaW5hdGlvbiB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHR3aWR0aDogMTAwJTtcclxuXHRwYWRkaW5nOiA2MHB4IDAgMTMwcHg7XHJcblxyXG5cdC5wYWdlLW51bWJlcnMge1xyXG5cdFx0QGluY2x1ZGUgZm9udCgyMHB4LCAyNnB4KTtcclxuXHRcdGRpc3BsYXk6IGZsZXg7XHJcblx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0XHRtYXJnaW4tcmlnaHQ6IDEwcHg7XHJcblx0XHR0cmFuc2l0aW9uOiBhbGwgMjUwbXMgZWFzZTtcclxuXHRcdGNvbG9yOiAkcGVyYW5vLTEwMDtcclxuXHRcdGZvbnQtd2VpZ2h0OiA2MDA7XHJcblxyXG5cdFx0Ji5jdXJyZW50IHtcclxuXHRcdFx0Y29sb3I6ICRzYXBwaGlyZS0xMDA7XHJcblx0XHR9XHJcblxyXG5cdFx0Ji5wcmV2LFxyXG5cdFx0Ji5uZXh0IHtcclxuXHRcdFx0bWFyZ2luLXJpZ2h0OiAxNXB4O1xyXG5cclxuXHRcdFx0c3ZnIHtcclxuXHRcdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0XHRcdFx0dG9wOiAwO1xyXG5cdFx0XHRcdHdpZHRoOiAxNXB4O1xyXG5cdFx0XHRcdGhlaWdodDogMzBweDtcclxuXHRcdFx0XHRjb2xvcjogJHBlcmFuby0xMDA7XHJcblx0XHRcdFx0dHJhbnNpdGlvbjogYWxsIDI1MG1zIGVhc2U7XHJcblx0XHRcdH1cclxuXHJcblx0XHRcdCY6aG92ZXIge1xyXG5cdFx0XHRcdHN2ZyB7XHJcblx0XHRcdFx0XHRjb2xvcjogJHNhcHBoaXJlLTEwMDtcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHJcblx0XHQmLm5leHQge1xyXG5cdFx0XHRtYXJnaW4tcmlnaHQ6IDA7XHJcblx0XHRcdG1hcmdpbi1sZWZ0OiA1cHg7XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHRhIHtcclxuXHRcdCY6aG92ZXIge1xyXG5cdFx0XHRjb2xvcjogJHNhcHBoaXJlLTEwMDtcclxuXHRcdH1cclxuXHR9XHJcbn1cclxuIiwiLnJhdGluZyB7XHJcblx0c3ZnIHtcclxuXHRcdHdpZHRoOiAyNnB4O1xyXG5cdFx0aGVpZ2h0OiAyNnB4O1xyXG5cdFx0bWFyZ2luLXJpZ2h0OiA3cHg7XHJcblx0XHRjb2xvcjogJHllbGxvdy0xMDA7XHJcblxyXG5cdFx0JjpsYXN0LW9mLXR5cGUge1xyXG5cdFx0XHRtYXJnaW46IDA7XHJcblx0XHR9XHJcblx0fVxyXG59XHJcbiIsIi8qKlxyXG4gKiBXcmFwcGVyIChkZWZhdWx0KVxyXG4gKi9cclxuXHJcbi53cmFwcGVyIHtcclxuXHRAaW5jbHVkZSBtZWRpYSgndGFibGV0LXBvcnRyYWl0LWRvd24nKSB7XHJcblx0XHRAaW5jbHVkZSBjb250YWluZXIoMTI4MHB4LCA2MHB4KTtcclxuXHR9XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3Bob25lJykge1xyXG5cdFx0QGluY2x1ZGUgY29udGFpbmVyKDEyODBweCwgMjBweCk7XHJcblx0fVxyXG5cclxuXHRAaW5jbHVkZSBjb250YWluZXIoMTI4MHB4LCA1MHB4KTtcclxufVxyXG5cclxuXHJcbi8qKlxyXG4gKiBXcmFwcGVyIChjb250ZW50KVxyXG4gKi9cclxuXHJcbi53cmFwcGVyLS1jb250ZW50IHtcclxuXHRAaW5jbHVkZSBtZWRpYSgndGFibGV0LXBvcnRyYWl0LWRvd24nKSB7XHJcblx0XHRAaW5jbHVkZSBjb250YWluZXIoODUwcHgsIDYwcHgpO1xyXG5cdH1cclxuXHRAaW5jbHVkZSBtZWRpYSgncGhvbmUnKSB7XHJcblx0XHRAaW5jbHVkZSBjb250YWluZXIoODUwcHgsIDIwcHgpO1xyXG5cdH1cclxuXHJcblx0QGluY2x1ZGUgY29udGFpbmVyKDg1MHB4LCA1MHB4KTtcclxufVxyXG4iLCIvKipcclxuICogRXZlcnkgY29uY2VpdmFibGUgSFRNTCBlbGVtZW50IHdpdGhpbiBhIGAuY21zLW91dHB1dGAgd3JhcHBlci5cclxuICpcclxuICogMS4gRXhjbHVkZSBsYXN0IGNoaWxkcy5cclxuICovXHJcblxyXG4uY21zLW91dHB1dCB7XHJcblx0cCB7XHJcblx0XHQmOm5vdCg6bGFzdC1jaGlsZCkge1xyXG5cdFx0XHRtYXJnaW4tYm90dG9tOiAyZW07XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHRoMixcclxuXHRoMyxcclxuXHRoNCB7XHJcblx0XHRtYXJnaW4tYm90dG9tOiAzMHB4O1xyXG5cdH1cclxuXHJcblx0aDUge1xyXG5cdFx0bWFyZ2luLWJvdHRvbTogMjBweDtcclxuXHR9XHJcblxyXG5cdC5pcy1pbnRybyB7XHJcblx0XHRAaW5jbHVkZSBtZWRpYSgndGFibGV0LXBvcnRyYWl0LWRvd24nKSB7XHJcblx0XHRcdEBpbmNsdWRlIGZvbnQoMThweCwgMjRweCk7XHJcblx0XHR9XHJcblxyXG5cdFx0QGluY2x1ZGUgZm9udCgyMHB4LCAzMnB4KTtcclxuXHRcdGZvbnQtZmFtaWx5OiBtYXAtZ2V0KCRmb250LWZhbWlseSwgJ2hlYWRpbmcnKTtcclxuXHRcdGNvbG9yOiAkc2FwcGhpcmUtMTAwO1xyXG5cdFx0Zm9udC13ZWlnaHQ6IDcwMDtcclxuXHRcdGxldHRlci1zcGFjaW5nOiAwLjAyZW07XHJcblx0fVxyXG5cclxuXHRpbWcge1xyXG5cdFx0QGluY2x1ZGUgbWVkaWEoJ3Bob25lJykge1xyXG5cdFx0XHRtYXgtd2lkdGg6IDI1MHB4O1xyXG5cdFx0fVxyXG5cclxuXHRcdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtcG9ydHJhaXQnKSB7XHJcblx0XHRcdG1heC13aWR0aDogNDAwcHg7XHJcblx0XHR9XHJcblxyXG5cdFx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1sYW5kc2NhcGUnKSB7XHJcblx0XHRcdG1heC13aWR0aDogNDAwcHg7XHJcblx0XHR9XHJcblxyXG5cdFx0Ym9yZGVyLXJhZGl1czogNDBweCA0MHB4IDBweCAwcHg7XHJcblx0XHRib3gtc2hhZG93OiAwIDAgMjBweCAxMHB4ICRzYXBwaGlyZS0xNTtcclxuXHRcdG1heC13aWR0aDogNTUwcHg7XHJcblxyXG5cdFx0Ji5hbGlnbmNlbnRlciB7XHJcblx0XHRcdGRpc3BsYXk6IGJsb2NrO1xyXG5cdFx0XHRtYXJnaW46IDAgYXV0bztcclxuXHRcdH1cclxuXHJcblx0XHQmLmFsaWducmlnaHQge1xyXG5cdFx0XHRkaXNwbGF5OiBibG9jaztcclxuXHRcdFx0bWFyZ2luOiAwIDAgMCBhdXRvO1xyXG5cdFx0fVxyXG5cclxuXHRcdCYubG9nbyB7XHJcblx0XHRcdGJvcmRlci1yYWRpdXM6IDA7XHJcblx0XHRcdGJveC1zaGFkb3c6IG5vbmU7XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHR0YWJsZSB7XHJcblx0XHR3b3JkLWJyZWFrOiBicmVhay13b3JkO1xyXG5cclxuXHRcdHRkIHtcclxuXHRcdFx0dmVydGljYWwtYWxpZ246IHRvcDtcclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdG9sLFxyXG5cdHVsIHtcclxuXHRcdGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcclxuXHRcdG1hcmdpbi1sZWZ0OiAwO1xyXG5cdFx0bWFyZ2luLWJvdHRvbTogMWVtO1xyXG5cdFx0Ly8gcGFkZGluZy1pbmxpbmUtc3RhcnQ6IDQwcHg7XHJcblxyXG5cdFx0bGkge1xyXG5cdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0XHRcdHBhZGRpbmctbGVmdDogMzBweDtcclxuXHRcdFx0bWFyZ2luLWJvdHRvbTogMTVweDtcclxuXHJcblx0XHRcdD4gc3ZnIHtcclxuXHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHRcdFx0dG9wOiA1cHg7XHJcblx0XHRcdFx0bGVmdDogMDtcclxuXHRcdFx0XHR3aWR0aDogMTVweDtcclxuXHRcdFx0XHRoZWlnaHQ6IDE1cHg7XHJcblx0XHRcdFx0Y29sb3I6ICRwZXJhbm8tMTAwO1xyXG5cdFx0XHR9XHJcblxyXG5cdFx0XHQ+IHVsIHtcclxuXHRcdFx0XHRsaXN0LXN0eWxlLXR5cGU6IHNxdWFyZTtcclxuXHJcblx0XHRcdFx0bGkge1xyXG5cdFx0XHRcdFx0bWFyZ2luLWxlZnQ6IDIwcHg7XHJcblx0XHRcdFx0XHRwYWRkaW5nOiAwO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0b2wge1xyXG5cdFx0bGlzdC1zdHlsZS10eXBlOiBkZWNpbWFsO1xyXG5cdFx0bWFyZ2luLWxlZnQ6IDIwcHg7XHJcblxyXG5cdFx0bGkge1xyXG5cdFx0XHRwYWRkaW5nLWxlZnQ6IDBcclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdHN0cm9uZyB7XHJcblx0XHRmb250LXdlaWdodDogYm9sZDtcclxuXHR9XHJcblxyXG5cdGJ1dHRvbiB7XHJcblx0XHRtYXJnaW4tdG9wOiAyMHB4O1xyXG5cdH1cclxuXHJcblx0YSB7XHJcblx0XHR0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcclxuXHRcdHRyYW5zaXRpb246IGFsbCAyNTBtcyBlYXNlO1xyXG5cclxuXHRcdCY6aG92ZXIge1xyXG5cdFx0XHRmb250LXdlaWdodDogNzAwO1xyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0ZW0ge1xyXG5cdFx0Y29sb3I6ICRzYXBwaGlyZS0xMDA7XHJcblx0fVxyXG5cclxuXHRibG9ja3F1b3RlIHtcclxuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRcdHBhZGRpbmc6IDQwcHggNDVweCAyMHB4IDQ1cHg7XHJcblx0XHRjb2xvcjogJHNhcHBoaXJlLTEwMDtcclxuXHR9XHJcblxyXG5cdC53cC1jYXB0aW9uIHtcclxuXHRcdG1hcmdpbi1ib3R0b206IDIwcHg7XHJcblxyXG5cdFx0aW1nIHtcclxuXHRcdFx0Ym9yZGVyLXJhZGl1czogMTBweDtcclxuXHRcdH1cclxuXHJcblx0XHQud3AtY2FwdGlvbi10ZXh0IHtcclxuXHRcdFx0QGluY2x1ZGUgZm9udCgxNnB4LCAyMHB4KTtcclxuXHRcdFx0Y29sb3I6ICRzYXBwaGlyZS0xMDA7XHJcblx0XHRcdGxldHRlci1zcGFjaW5nOiAwLjQ0cHg7XHJcblx0XHRcdG1hcmdpbi10b3A6IDEwcHg7XHJcblx0XHR9XHJcblx0fVxyXG59XHJcbiIsIi5jb250ZW50LWRlZmF1bHQge1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRtYXJnaW4tYm90dG9tOiA4MHB4O1xyXG59XHJcblxyXG4uY29udGVudC1kZWZhdWx0LS1iYWNrZ3JvdW5kLWdyZXkge1xyXG5cdGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kLWdyZXktMTA7XHJcblx0cGFkZGluZzogODBweCAwO1xyXG59XHJcblxyXG4uY29udGVudC1kZWZhdWx0LS1iYWNrZ3JvdW5kLWJsdWUge1xyXG5cdGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kLWJsdWUtMTAwO1xyXG5cdHBhZGRpbmc6IDgwcHggMDtcclxufVxyXG5cclxuLmNvbnRlbnQtZGVmYXVsdF9fd3JhcCB7XHJcblx0ei1pbmRleDogMjtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcbn1cclxuXHJcbi5jb250ZW50LWRlZmF1bHQtLWJhY2tncm91bmQtZ3JleSxcclxuLmNvbnRlbnQtZGVmYXVsdC0tYmFja2dyb3VuZC1ibHVlIHtcclxuXHJcblx0JjphZnRlciB7XHJcblx0XHRkaXNwbGF5OiBibG9jaztcclxuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdGJvdHRvbTogLTIycHg7XHJcblx0XHRsZWZ0OiAwO1xyXG5cdFx0d2lkdGg6IDIxNXB4O1xyXG5cdFx0aGVpZ2h0OiA5MnB4O1xyXG5cdFx0YmFja2dyb3VuZDogdXJsKCcuLy4uL2ltYWdlcy9kZXNrdG9wLWdyb3VwLTc0LnN2ZycpIG5vLXJlcGVhdDtcclxuXHRcdGNvbnRlbnQ6ICcnO1xyXG5cdFx0ei1pbmRleDogMTtcclxuXHR9XHJcblxyXG5cdCY6YmVmb3JlIHtcclxuXHRcdGRpc3BsYXk6IGJsb2NrO1xyXG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0dG9wOiAtMjJweDtcclxuXHRcdHJpZ2h0OiAwO1xyXG5cdFx0d2lkdGg6IDIxNXB4O1xyXG5cdFx0aGVpZ2h0OiA5MnB4O1xyXG5cdFx0YmFja2dyb3VuZDogdXJsKCcuLy4uL2ltYWdlcy9kZXNrdG9wLWdyb3VwLTY1LnN2ZycpIG5vLXJlcGVhdDtcclxuXHRcdGNvbnRlbnQ6ICcnO1xyXG5cdFx0ei1pbmRleDogMTtcclxuXHR9XHJcbn1cclxuXHJcbi5jb250ZW50LWRlZmF1bHRfX3RpdGxlIHtcclxuXHRtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG59IiwiLmNvbnRlbnQtZmFxIHtcclxuXHRtYXJnaW4tYm90dG9tOiA4MHB4O1xyXG5cclxuXHQud3JhcHBlciB7XHJcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0fVxyXG59XHJcblxyXG4uY29udGVudC1mYXEtLWJhY2tncm91bmQtYmx1ZSB7XHJcblx0cGFkZGluZzogODBweCAwO1xyXG5cdGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kLWJsdWUtMTAwO1xyXG59XHJcblxyXG4uY29udGVudC1mYXFfX3F1ZXN0aW9uIHtcclxuXHRib3JkZXItYm90dG9tOiAxcHggc29saWQgJHBlcmFuby0xMDA7XHJcblx0dHJhbnNpdGlvbjogYWxsIDI1MG1zIGVhc2U7XHJcblxyXG5cdCYuaXMtYWN0aXZlIHtcclxuXHRcdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcclxuXHR9XHJcblxyXG5cdCY6Zmlyc3Qtb2YtdHlwZSB7XHJcblx0XHQuY29udGVudC1mYXFfX3F1ZXN0aW9uLWhlYWQge1xyXG5cdFx0XHRwYWRkaW5nLXRvcDogMDtcclxuXHRcdH1cclxuXHR9XHJcbn1cclxuXHJcbi5jb250ZW50LWZhcV9fcXVlc3Rpb24taGVhZCB7XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1wb3J0cmFpdC1kb3duJykge1xyXG5cdFx0cGFkZGluZzogMjBweCAwO1xyXG5cdH1cclxuXHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRwYWRkaW5nOiAzMHB4IDA7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cclxuXHRzdmcge1xyXG5cdFx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1wb3J0cmFpdC1kb3duJykge1xyXG5cdFx0XHR3aWR0aDogMTZweDtcclxuXHRcdFx0aGVpZ2h0OiAyNnB4O1xyXG5cdFx0fVxyXG5cclxuXHRcdHdpZHRoOiAyMXB4O1xyXG5cdFx0aGVpZ2h0OiAzMnB4O1xyXG5cdFx0bWFyZ2luLWxlZnQ6IDIwcHg7XHJcblx0XHRjb2xvcjogJHNhcHBoaXJlLTEwMDtcclxuXHRcdHRyYW5zaXRpb246IGFsbCA1MDBtcyBlYXNlO1xyXG5cdH1cclxuXHJcblx0Ji5pcy1hY3RpdmUge1xyXG5cdFx0c3ZnIHtcclxuXHRcdFx0dHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcclxuXHRcdH1cclxuXHR9XHJcbn1cclxuXHJcbi5jb250ZW50LWZhcV9fcXVlc3Rpb24tYm9keSB7XHJcblx0ZGlzcGxheTogbm9uZTtcclxufVxyXG5cclxuLmNvbnRlbnQtZmFxX19xdWVzdGlvbi1hbnN3ZXIge1xyXG5cdG1heC13aWR0aDogNzQwcHg7XHJcbn0iLCIuY29udGVudC1mb3JtX19jb2x1bW4tY29udGFjdCB7XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1sYW5kc2NhcGUtZG93bicpIHtcclxuXHRcdHdpZHRoOiAxMDAlO1xyXG5cdH1cclxuXHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGZsZXgtd3JhcDogd3JhcDtcclxuICAgIGFsaWduLWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcblx0d2lkdGg6IDM1JTtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkc2FwcGhpcmUtMTAwO1xyXG5cclxuXHQmOmFmdGVyIHtcclxuXHRcdEBpbmNsdWRlIG1lZGlhKCdwaG9uZScpIHtcclxuXHRcdFx0ZGlzcGxheTogbm9uZTtcclxuXHRcdH1cclxuXHJcblx0XHRkaXNwbGF5OiBibG9jaztcclxuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdGJvdHRvbTogNTBweDtcclxuXHRcdGxlZnQ6IDA7XHJcblx0XHR3aWR0aDogMjMycHg7XHJcblx0XHRoZWlnaHQ6IDI4NXB4O1xyXG5cdFx0YmFja2dyb3VuZDogdXJsKCcuLy4uL2ltYWdlcy9kZXNrdG9wLTYuc3ZnJykgbm8tcmVwZWF0O1xyXG5cdFx0Y29udGVudDogJyc7XHJcblx0XHR6LWluZGV4OiAxO1xyXG5cdH1cclxufVxyXG5cclxuLmNvbnRlbnQtZm9ybV9faGVhZCB7XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1sYW5kc2NhcGUtZG93bicpIHtcclxuXHRcdHBhZGRpbmc6IDgwcHggNTBweCAzMHB4IDUwcHg7XHJcblx0fVxyXG5cdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtcG9ydHJhaXQtZG93bicpIHtcclxuXHRcdHBhZGRpbmc6IDgwcHggNjBweCAzMHB4IDYwcHg7XHJcblx0fVxyXG5cdEBpbmNsdWRlIG1lZGlhKCdwaG9uZScpIHtcclxuXHRcdHBhZGRpbmc6IDgwcHggMjBweCAzMHB4IDIwcHg7XHJcblx0fVxyXG5cclxuXHRwYWRkaW5nOiA4MHB4IDIwcHggMzBweCA4MHB4O1xyXG59XHJcblxyXG4uY29udGVudC1mb3JtX190ZWFzZXIge1xyXG5cdG1hcmdpbi10b3A6IDIwcHg7XHJcblx0Y29sb3I6ICR3aGl0ZS0xMDA7XHJcbn1cclxuXHJcbi5jb250ZW50LWZvcm1fX2ltYWdlIHtcclxuXHRAaW5jbHVkZSBtZWRpYSgndGFibGV0LWxhbmRzY2FwZS1kb3duJykge1xyXG5cdFx0aGVpZ2h0OiA0NzVweDtcclxuXHR9XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3Bob25lJykge1xyXG5cdFx0ZGlzcGxheTogbm9uZTtcclxuXHR9XHJcblxyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHR3aWR0aDogMTAwJTtcclxuXHRoZWlnaHQ6IDc2NXB4O1xyXG59XHJcblxyXG4uY29udGVudC1mb3JtX19jb2x1bW4tZm9ybSB7XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1sYW5kc2NhcGUtZG93bicpIHtcclxuXHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0cGFkZGluZzogODBweCA1MHB4O1xyXG5cdH1cclxuXHRAaW5jbHVkZSBtZWRpYSgndGFibGV0LXBvcnRyYWl0LWRvd24nKSB7XHJcblx0XHR3aWR0aDogMTAwJTtcclxuXHRcdHBhZGRpbmc6IDgwcHggNjBweDtcclxuXHR9XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3Bob25lJykge1xyXG5cdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRwYWRkaW5nOiA4MHB4IDIwcHg7XHJcblx0fVxyXG5cclxuXHR3aWR0aDogNjUlO1xyXG5cdHBhZGRpbmc6IDgwcHg7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogJGJvcmRlci1ibHVlLTEwMDtcclxuXHJcblx0Zm9ybSB7XHJcblx0XHRAaW5jbHVkZSBtZWRpYSgndGFibGV0LWxhbmRzY2FwZS1kb3duJykge1xyXG5cdFx0XHRtYXgtd2lkdGg6IDEwMCU7XHJcblx0XHR9XHJcblxyXG5cdFx0ZGlzcGxheTogZmxleDtcclxuXHRcdGZsZXgtd3JhcDogd3JhcDtcclxuXHRcdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuXHRcdGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcclxuXHRcdG1heC13aWR0aDogNjIwcHg7XHJcblx0fVxyXG5cclxuXHQuZ2Zvcm1faGVhZGluZyB7XHJcblx0XHR3aWR0aDogMTAwJTtcclxuXHRcdG1hcmdpbi1ib3R0b206IDM1cHg7XHJcblx0fVxyXG5cclxuXHQuZ2Zvcm1fYm9keSxcclxuXHQuZ2Zvcm1fZm9vdGVyIHtcclxuXHRcdEBpbmNsdWRlIG1lZGlhKCdwaG9uZScpIHtcclxuXHRcdFx0d2lkdGg6IDEwMCU7XHJcblx0XHR9XHJcblxyXG5cdFx0d2lkdGg6IGNhbGMoNTAlIC0gMzBweCk7XHJcblxyXG5cdFx0YnV0dG9uIHtcclxuXHRcdFx0QGluY2x1ZGUgbWVkaWEoJ3Bob25lJykge1xyXG5cdFx0XHRcdG1hcmdpbjogMDtcclxuXHRcdFx0fVxyXG5cclxuXHRcdFx0bWFyZ2luLWJvdHRvbTogMzBweDtcclxuXHRcdH1cclxuXHR9XHJcbn1cclxuXHJcblxyXG4vKipcclxuICogSW52b2ljZSBmb3JtLlxyXG4gKi9cclxuXHJcbi5jb250ZW50LWZvcm0ge1xyXG5cdC5pcy1pbnZvaWNlIHtcclxuXHRcdC5nZm9ybV9oZWFkaW5nIHtcclxuXHRcdFx0ZGlzcGxheTogbm9uZTtcclxuXHRcdH1cclxuXHJcblx0XHQuZ2Zvcm1fYm9keSB7XHJcblx0XHRcdGRpc3BsYXk6IGZsZXg7XHJcblx0XHRcdGZsZXgtd3JhcDogd3JhcDtcclxuXHRcdFx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG5cdFx0XHR3aWR0aDogMTAwJTtcclxuXHJcblx0XHRcdD4gdWwge1xyXG5cdFx0XHRcdEBpbmNsdWRlIG1lZGlhKCdwaG9uZScpIHtcclxuXHRcdFx0XHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0XHRcdH1cclxuXHJcblx0XHRcdFx0ZGlzcGxheTogZmxleDtcclxuXHRcdFx0XHRmbGV4LXdyYXA6IHdyYXA7XHJcblx0XHRcdFx0YWxpZ24tY29udGVudDogYmFzZWxpbmU7XHJcblx0XHRcdFx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG5cdFx0XHRcdHdpZHRoOiBjYWxjKDUwJSAtIDMwcHgpO1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblxyXG5cdFx0Lmdmb3JtX2Zvb3RlciB7XHJcblx0XHRcdEBpbmNsdWRlIG1lZGlhKCdwaG9uZScpIHtcclxuXHRcdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XHJcblx0XHRcdH1cclxuXHJcblx0XHRcdGRpc3BsYXk6IGZsZXg7XHJcblx0XHRcdGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XHJcblx0XHRcdHdpZHRoOiAxMDAlO1xyXG5cclxuXHRcdFx0Lmdmb3JtX2Zvb3Rlci13cmFwIHtcclxuXHRcdFx0XHRAaW5jbHVkZSBtZWRpYSgncGhvbmUnKSB7XHJcblx0XHRcdFx0XHR3aWR0aDogZml0LWNvbnRlbnQ7XHJcblx0XHRcdFx0XHRtYXJnaW4tdG9wOiAwO1xyXG5cdFx0XHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKDAlKTtcclxuXHRcdFx0XHR9XHJcblxyXG5cdFx0XHRcdHdpZHRoOiBjYWxjKDUwJSAtIDMwcHgpO1xyXG5cdFx0XHRcdG1hcmdpbi10b3A6IC02MHB4O1xyXG5cdFx0XHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAwJSk7XHJcblxyXG5cdFx0XHRcdGJ1dHRvbiB7XHJcblx0XHRcdFx0XHRtYXJnaW4tdG9wOiAwO1xyXG5cdFx0XHRcdFx0bWFyZ2luLWJvdHRvbTogMDtcclxuXHRcdFx0XHR9XHJcblxyXG5cdFx0XHRcdHAge1xyXG5cdFx0XHRcdFx0QGluY2x1ZGUgZm9udCgxNHB4LCAxOHB4KTtcclxuXHRcdFx0XHRcdGZvbnQtd2VpZ2h0OiA2MDA7XHJcblx0XHRcdFx0XHRtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cclxuXHRcdGgyIHtcclxuXHRcdFx0QGV4dGVuZCAlaGVhZGluZztcclxuXHRcdFx0QGV4dGVuZCAlaGVhZGluZy00XHJcblx0XHR9XHJcblx0fVxyXG59IiwiLmNvbnRlbnQtaGVhZGVyIHtcclxuXHRAaW5jbHVkZSBtZWRpYSgndGFibGV0LXBvcnRyYWl0LWRvd24nKSB7XHJcblx0XHRwYWRkaW5nLWJvdHRvbTogNTBweDtcclxuXHR9XHJcblx0QG1lZGlhKCdtYXgtd2lkdGg6IDcwMHB4Jykge1xyXG5cdFx0bWluLWhlaWdodDogODAwcHg7XHJcblx0XHRwYWRkaW5nLWJvdHRvbTogMTUwcHg7XHJcblx0fVxyXG5cclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0bWluLWhlaWdodDogNDUycHg7XHJcblx0bWFyZ2luLWJvdHRvbTogODBweDtcclxuXHJcblx0LndyYXBwZXIge1xyXG5cdFx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG5cdH1cclxuXHJcblx0LnJhdGluZyB7XHJcblx0XHRtYXJnaW4tdG9wOiAtMzBweDtcclxuXHR9XHJcblxyXG5cdCY6YmVmb3JlIHtcclxuXHRcdGRpc3BsYXk6IGJsb2NrO1xyXG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0Ym90dG9tOiAwO1xyXG5cdFx0bGVmdDogMDtcclxuXHRcdHdpZHRoOiAyMTVweDtcclxuXHRcdGhlaWdodDogOTJweDtcclxuXHRcdGJhY2tncm91bmQ6IHVybCgnLi8uLi9pbWFnZXMvZGVza3RvcC1ncm91cC03NC5zdmcnKSBuby1yZXBlYXQ7XHJcblx0XHRjb250ZW50OiAnJztcclxuXHRcdHotaW5kZXg6IC0xO1xyXG5cdH1cclxuXHJcblx0JjphZnRlciB7XHJcblx0XHRAaW5jbHVkZSBtZWRpYSgndGFibGV0LWxhbmRzY2FwZS1kb3duJykge1xyXG5cdFx0XHRyaWdodDogLTcwcHg7XHJcblx0XHR9XHJcblx0XHRAaW5jbHVkZSBtZWRpYSgndGFibGV0LXBvcnRyYWl0LWRvd24nKSB7XHJcblx0XHRcdHRvcDogNjBweDtcclxuXHRcdFx0cmlnaHQ6IDA7XHJcblx0XHRcdHdpZHRoOiAzMjBweDtcclxuXHRcdFx0aGVpZ2h0OiA0NTJweDtcclxuXHRcdFx0YmFja2dyb3VuZDogdXJsKCcuLy4uL2ltYWdlcy9tb2JpbGUtMS5wbmcnKSBuby1yZXBlYXQ7XHJcblx0XHR9XHJcblx0XHRAbWVkaWEoJ21heC13aWR0aDogNzAwcHgnKSB7XHJcblx0XHRcdHRvcDogYXV0bztcclxuXHRcdFx0Ym90dG9tOiAxMDBweDtcclxuXHRcdH1cclxuXHJcblx0XHRkaXNwbGF5OiBibG9jaztcclxuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdHRvcDogY2FsYyg1MCUgLSAyMjZweCk7XHJcblx0XHRyaWdodDogMDtcclxuXHRcdHdpZHRoOiA1NTNweDtcclxuXHRcdGhlaWdodDogNDUycHg7XHJcblx0XHRiYWNrZ3JvdW5kOiB1cmwoJy4vLi4vaW1hZ2VzL2Rlc2t0b3AtMS5zdmcnKSBuby1yZXBlYXQ7XHJcblx0XHRjb250ZW50OiAnJztcclxuXHRcdHotaW5kZXg6IC0xO1xyXG5cdH1cclxufVxyXG5cclxuLmNvbnRlbnQtaGVhZGVyX19jb2x1bW4ge1xyXG5cdHdpZHRoOiBjYWxjKDUwJSAtIDEwcHgpO1xyXG5cclxuXHQmLmlzLWJvZHkge1xyXG5cdFx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1wb3J0cmFpdC1kb3duJykge1xyXG5cdFx0XHR3aWR0aDogY2FsYygxMDAlIC0gMzAwcHgpO1xyXG5cdFx0fVxyXG5cdFx0QG1lZGlhKCdtYXgtd2lkdGg6IDcwMHB4Jykge1xyXG5cdFx0XHR3aWR0aDogMTAwJTtcclxuXHRcdFx0bWFyZ2luLWJvdHRvbTogODBweDtcclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdCYuaXMtaW1hZ2Uge1xyXG5cdFx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1wb3J0cmFpdC1kb3duJykge1xyXG5cdFx0XHR3aWR0aDogMjkwcHg7XHJcblx0XHR9XHJcblx0XHRAbWVkaWEoJ21heC13aWR0aDogNzAwcHgnKSB7XHJcblx0XHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0fVxyXG5cdH1cclxufVxyXG5cclxuXHJcbi8qKlxyXG4gKiBCb2R5LlxyXG4gKi9cclxuXHJcbi5jb250ZW50LWhlYWRlcl9fc3VidGl0bGUge1xyXG5cdG1hcmdpbi1ib3R0b206IDEwcHg7XHJcbn1cclxuXHJcbi5jb250ZW50LWhlYWRlcl9fdGl0bGUge1xyXG5cdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtcG9ydHJhaXQtZG93bicpIHtcclxuXHRcdG1hcmdpbi1ib3R0b206IDI1cHg7XHJcblx0fVxyXG5cclxuXHRtYXJnaW4tYm90dG9tOiA1MHB4O1xyXG5cdGZvbnQtd2VpZ2h0OiA0MDA7XHJcblxyXG5cdHN0cm9uZyB7XHJcblx0XHRkaXNwbGF5OiBibG9jaztcclxuXHRcdGZvbnQtd2VpZ2h0OiA5MDA7XHJcblx0fVxyXG59XHJcblxyXG4uY29udGVudC1oZWFkZXJfX2xpbmsge1xyXG5cclxufVxyXG5cclxuXHJcbi8qKlxyXG4gKiBJbWFnZS5cclxuICovXHJcblxyXG4uY29udGVudC1oZWFkZXJfX2ltYWdlIHtcclxuXHRAaW5jbHVkZSBtZWRpYSgndGFibGV0LWxhbmRzY2FwZS1kb3duJykge1xyXG5cdFx0aGVpZ2h0OiAyODVweDtcclxuXHR9XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1wb3J0cmFpdC1kb3duJykge1xyXG5cdFx0bWF4LXdpZHRoOiAxMDAlO1xyXG5cdFx0aGVpZ2h0OiAxOTBweDtcclxuXHRcdG1hcmdpbi10b3A6IDI1cHg7XHJcblx0fVxyXG5cdEBtZWRpYSgnbWF4LXdpZHRoOiA3MDBweCcpIHtcclxuXHRcdG1hcmdpbi10b3A6IDA7XHJcblx0fVxyXG5cclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0d2lkdGg6IDU0MHB4O1xyXG5cdG1heC13aWR0aDogY2FsYygxMDAlIC0gMjBweCk7XHJcblx0aGVpZ2h0OiAzNzBweDtcclxuXHJcblx0aW1nIHtcclxuXHRcdGJvcmRlci1yYWRpdXM6IDQwcHggNDBweCA0cHggNHB4O1xyXG5cdFx0Ym94LXNoYWRvdzogMHB4IDQwcHggODBweCAkc2FwcGhpcmUtMTU7XHJcblx0fVxyXG59XHJcblxyXG5cclxuLyoqXHJcbiogVVNQJ3MuXHJcbiovXHJcblxyXG4uY29udGVudC1oZWFkZXJfX3VzcHMge1xyXG5cdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtcG9ydHJhaXQtZG93bicpIHtcclxuXHRcdG1heC13aWR0aDogMTAwJTtcclxuXHRcdHBhZGRpbmc6IDIwcHggMTBweDtcclxuXHR9XHJcblxyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRmbG9hdDogcmlnaHQ7XHJcblx0bWFyZ2luLXRvcDogLTQwcHg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHR3aWR0aDogMTAwJTtcclxuXHRtYXgtd2lkdGg6IDM1MHB4O1xyXG5cdHBhZGRpbmc6IDIwcHggMzVweDtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkcGVyYW5vLTEwMDtcclxuXHRib3JkZXItcmFkaXVzOiA0MHB4IDQwcHggNDBweCAwcHg7XHJcblx0Ym94LXNoYWRvdzogMHB4IDQwcHggODBweCAkc2FwcGhpcmUtMTU7XHJcblx0ei1pbmRleDogMjA7XHJcbn1cclxuXHJcbi5jb250ZW50LWhlYWRlcl9fdXNwcy0tbm8taW1hZ2Uge1xyXG5cdG1hcmdpbi10b3A6IDEwMHB4O1xyXG59XHJcblxyXG4uY29udGVudC1oZWFkZXJfX3VzcCB7XHJcblx0d2lkdGg6IDEwMCU7XHJcblx0bWFyZ2luLWJvdHRvbTogMTVweDtcclxuXHRwYWRkaW5nOiAxM3B4IDEzcHggMTNweCAyMnB4O1xyXG5cdGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZS0xMDA7XHJcblx0Ym9yZGVyLXJhZGl1czogMjRweDtcclxuXHJcblx0JjpsYXN0LW9mLXR5cGUge1xyXG5cdFx0bWFyZ2luOiAwO1xyXG5cdH1cclxuXHJcblx0JjpudGgtY2hpbGQoMSkge1xyXG5cdFx0LmNvbnRlbnQtaGVhZGVyX191c3BzLWljb24ge1xyXG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkc2FwcGhpcmUtMjA7XHJcblx0XHR9XHJcblxyXG5cdFx0c3ZnIHtcclxuXHRcdFx0Y29sb3I6ICRzYXBwaGlyZS0xMDA7XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHQmOm50aC1jaGlsZCgyKSB7XHJcblx0XHQuY29udGVudC1oZWFkZXJfX3VzcHMtaWNvbiB7XHJcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRwYWNpZmljLWJsdWUtMjA7XHJcblx0XHR9XHJcblxyXG5cdFx0c3ZnIHtcclxuXHRcdFx0Y29sb3I6ICRwYWNpZmljLWJsdWUtMTAwO1xyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0JjpudGgtY2hpbGQoMykge1xyXG5cdFx0LmNvbnRlbnQtaGVhZGVyX191c3BzLWljb24ge1xyXG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2eS1ibHVlLTIwO1xyXG5cdFx0fVxyXG5cclxuXHRcdHN2ZyB7XHJcblx0XHRcdGNvbG9yOiAkbmF2eS1ibHVlLTEwMDtcclxuXHRcdH1cclxuXHR9XHJcbn1cclxuXHJcbi5jb250ZW50LWhlYWRlcl9fdXNwcy1pY29uIHtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cdHdpZHRoOiA0NHB4O1xyXG5cdGhlaWdodDogNDRweDtcclxuXHRtYXJnaW4tcmlnaHQ6IDhweDtcclxuXHRib3JkZXItcmFkaXVzOiA4cHg7XHJcblxyXG5cdHN2ZyB7XHJcblx0XHR3aWR0aDogMzJweDtcclxuXHRcdGhlaWdodDogMzJweDtcclxuXHR9XHJcbn1cclxuXHJcbi5jb250ZW50LWhlYWRlcl9fdXNwLXRpdGxlIHtcclxuXHRAaW5jbHVkZSBmb250KDIwcHgsIDI2cHgpO1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0d2lkdGg6IGNhbGMoMTAwJSAtIDUycHgpO1xyXG5cdGZvbnQtd2VpZ2h0OiA2MDA7XHJcbn1cclxuIiwiLmVkaXRvci1pbWFnZSB7XHJcblx0bWFyZ2luLWJvdHRvbTogODBweDtcclxufVxyXG5cclxuLmVkaXRvci1pbWFnZS0tYmFja2dyb3VuZC1ncmV5IHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZC1ncmV5LTEwO1xyXG5cdHBhZGRpbmc6IDgwcHggMDtcclxufVxyXG5cclxuLmVkaXRvci1pbWFnZS0tYmFja2dyb3VuZC1ibHVlIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZC1ibHVlLTEwMDtcclxuXHRwYWRkaW5nOiA4MHB4IDA7XHJcbn1cclxuXHJcbi5lZGl0b3ItaW1hZ2VfX3dyYXBwZXItLXRleHQtcmlnaHQge1xyXG5cdGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTtcclxufVxyXG5cclxuLmVkaXRvci1pbWFnZV9fc3VidGl0bGUge1xyXG5cdG1hcmdpbi1ib3R0b206IDEwcHg7XHJcbn1cclxuXHJcbi5lZGl0b3ItaW1hZ2VfX3RpdGxlIHtcclxuXHRtYXJnaW4tYm90dG9tOiAzMHB4O1xyXG59XHJcblxyXG4uZWRpdG9yLWltYWdlX19ib2R5IHtcclxuXHRAaW5jbHVkZSBtZWRpYSgndGFibGV0LXBvcnRyYWl0LWRvd24nKSB7XHJcblx0XHR3aWR0aDogMTAwJTtcclxuXHRcdG1hcmdpbjogMCAwIDgwcHggMDtcclxuXHR9XHJcblxyXG5cdHdpZHRoOiBjYWxjKDQ1JSAtIDM1cHgpO1xyXG5cdG1hcmdpbjogMCAzNXB4IDAgMDtcclxufVxyXG5cclxuLmVkaXRvci1pbWFnZV9fYm9keS0tcmlnaHQge1xyXG5cdG1hcmdpbjogMCAwIDAgMzVweDtcclxufVxyXG5cclxuLmVkaXRvci1pbWFnZV9fd3JhcCB7XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1wb3J0cmFpdC1kb3duJykge1xyXG5cdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRtYXJnaW46IDA7XHJcblx0XHRoZWlnaHQ6IDQwMHB4O1xyXG5cdH1cclxuXHJcblx0d2lkdGg6IGNhbGMoNTUlIC0gMzVweCk7XHJcblx0aGVpZ2h0OiA0MjBweDtcclxuXHRib3JkZXItcmFkaXVzOiA0MHB4IDQwcHggMHB4IDQwcHg7XHJcblx0bWFyZ2luOiAwIDAgMCAzNXB4O1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcblx0aW1nIHtcclxuXHRcdGJveC1zaGFkb3c6IDAgMCAyMHB4IDEwcHggJHNhcHBoaXJlLTE1O1xyXG5cdFx0Ym9yZGVyLXJhZGl1czogNDBweCA0MHB4IDBweCA0MHB4O1xyXG5cdH1cclxufVxyXG5cclxuLmVkaXRvci1pbWFnZV9fd3JhcC0tcmlnaHQge1xyXG5cdG1hcmdpbjogMCAzNXB4IDAgMDtcclxufVxyXG4iLCIuZm9vdGVyIHtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogJHNhcHBoaXJlLTEwMDtcclxuXHRjb2xvcjogJHdoaXRlLTEwMDtcclxuXHJcblx0bGksXHJcblx0cCB7XHJcblx0XHRAaW5jbHVkZSBmb250KDE2cHgsIDI0cHgpO1xyXG5cdH1cclxuXHJcblx0YSB7XHJcblx0XHR0cmFuc2l0aW9uOiBhbGwgMjUwbXMgZWFzZTtcclxuXHJcblx0XHQmOmhvdmVyIHtcclxuXHRcdFx0Y29sb3I6ICRwZXJhbm8tMTAwO1xyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0JjpiZWZvcmUge1xyXG5cdFx0ZGlzcGxheTogYmxvY2s7XHJcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHR0b3A6IC0yNXB4O1xyXG5cdFx0cmlnaHQ6IDA7XHJcblx0XHR3aWR0aDogMjE1cHg7XHJcblx0XHRoZWlnaHQ6IDkycHg7XHJcblx0XHRiYWNrZ3JvdW5kOiB1cmwoJy4vLi4vaW1hZ2VzL2Rlc2t0b3AtZ3JvdXAtNjUuc3ZnJykgbm8tcmVwZWF0O1xyXG5cdFx0Y29udGVudDogJyc7XHJcblx0XHR6LWluZGV4OiAyO1xyXG5cdH1cclxufVxyXG5cclxuLmZvb3Rlcl9fc29jaWFsLXRpdGxlIHtcclxuXHRAaW5jbHVkZSBtZWRpYSgncGhvbmUnKSB7XHJcblx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblx0fVxyXG59XHJcblxyXG4uZm9vdGVyX190b3Age1xyXG5cdG1hcmdpbi1ib3R0b206IDI1cHg7XHJcblx0cGFkZGluZy10b3A6IDgwcHg7XHJcbn1cclxuXHJcbi5mb290ZXJfX2xvZ29zIHtcclxuXHRAaW5jbHVkZSBtZWRpYSgncGhvbmUnKSB7XHJcblx0XHR3aWR0aDogYXV0bztcclxuXHRcdG1hcmdpbjogYXV0bztcclxuXHRcdG1hcmdpbi1ib3R0b206IDUwcHg7XHJcblx0fVxyXG5cclxuXHRAaW5jbHVkZSBtZWRpYSgndGFibGV0LXBvcnRyYWl0Jykge1xyXG5cdFx0d2lkdGg6IDUwJTtcclxuXHR9XHJcblxyXG5cdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtbGFuZHNjYXBlJykge1xyXG5cdFx0d2lkdGg6IDUwJTtcclxuXHR9XHJcblxyXG5cdHdpZHRoOiAyMCU7XHJcblxyXG5cdC5mb290ZXJfX2xvZ28ge1xyXG5cdFx0d2lkdGg6IDIwMHB4O1xyXG5cdFx0bWFyZ2luLWJvdHRvbTogMjBweDtcclxuXHJcblx0XHRpbWcge1xyXG5cdFx0XHR3aWR0aDogMTAwJTtcclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdC5mb290ZXJfX2xvZ29zLXdyYXAge1xyXG5cdFx0bWF4LXdpZHRoOiAyMDBweDtcclxuXHRcdGRpc3BsYXk6IGZsZXg7XHJcblx0XHRmbGV4LXdyYXA6IHdyYXA7XHJcblx0XHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcblxyXG5cdFx0aW1nIHtcclxuXHRcdFx0d2lkdGg6IGNhbGMoNTAlIC0gMjBweCk7XHJcblx0XHR9XHJcblx0fVxyXG59XHJcblxyXG5cclxuXHJcbi5mb290ZXJfX2NvbHVtbnMge1xyXG5cdEBpbmNsdWRlIG1lZGlhKCdwaG9uZScpIHtcclxuXHRcdHdpZHRoOiAxMDAlO1xyXG5cdH1cclxuXHJcblx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1wb3J0cmFpdCcpIHtcclxuXHRcdHdpZHRoOiA1MCU7XHJcblx0fVxyXG5cclxuXHRAaW5jbHVkZSBtZWRpYSgndGFibGV0LWxhbmRzY2FwZScpIHtcclxuXHRcdHdpZHRoOiA1MCU7XHJcblx0fVxyXG5cclxuXHR3aWR0aDogODAlO1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC13cmFwOiB3cmFwO1xyXG59XHJcblxyXG4uZm9vdGVyX19jb2x1bW5zLXdyYXAge1xyXG5cdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtbGFuZHNjYXBlLWRvd24nKSB7XHJcblx0XHRtYXJnaW46IGF1dG87XHJcblx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcblx0XHR3aWR0aDogYXV0bztcclxuXHR9XHJcblxyXG5cdHdpZHRoOiAxMDAlO1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC13cmFwOiB3cmFwO1xyXG59XHJcblxyXG4uZm9vdGVyX19jb2x1bW4ge1xyXG5cdEBpbmNsdWRlIG1lZGlhKCdwaG9uZScpIHtcclxuXHRcdG1hcmdpbjogMCBhdXRvO1xyXG5cdH1cclxuXHJcblx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1sYW5kc2NhcGUtZG93bicpIHtcclxuXHRcdHdpZHRoOiAxMDAlO1xyXG5cdH1cclxuXHJcblx0d2lkdGg6IGNhbGMoMjUlIC0gNTBweCk7XHJcblx0bWFyZ2luOiAwIDI1cHg7XHJcblxyXG5cdC5pcy1hY3RpdmUge1xyXG5cdFx0c3ZnIHtcclxuXHRcdFx0dHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xyXG5cdFx0XHR0cmFuc2l0aW9uOiBhbGwgMjAwbXMgZWFzZTtcclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdC5mb290ZXJfX2NvbHVtbi1oZWFkIHtcclxuXHRcdG1hcmdpbi1ib3R0b206IDIwcHg7XHJcblx0fVxyXG5cclxuXHQuZm9vdGVyX19jb2x1bW4tYm9keSB7XHJcblx0XHRAaW5jbHVkZSBtZWRpYSgncGhvbmUnKSB7XHJcblx0XHRcdHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHRcdH1cclxuXHJcblx0XHRAaW5jbHVkZSBtZWRpYSgndGFibGV0LWxhbmRzY2FwZS1kb3duJykge1xyXG5cdFx0XHRkaXNwbGF5OiBub25lO1xyXG5cdFx0XHRtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG5cdFx0fVxyXG5cclxuXHRcdGxpIHtcclxuXHRcdFx0bWFyZ2luLWJvdHRvbTogMTBweDtcclxuXHRcdH1cclxuXHJcblx0XHRwIHtcclxuXHRcdFx0bWFyZ2luLWJvdHRvbTogMjBweDtcclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdCYuaXMtc29jaWFsIHtcclxuXHRcdC5pcy1pdGVtIHtcclxuXHRcdFx0c3ZnIHtcclxuXHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGUtMTAwO1xyXG5cdFx0XHRcdGNvbG9yOiAkcGVyYW5vLTEwMDtcclxuXHRcdFx0XHR0cmFuc2l0aW9uOiBhbGwgMjUwbXMgZWFzZTtcclxuXHRcdFx0fVxyXG5cclxuXHRcdFx0Jjpob3ZlciB7XHJcblx0XHRcdFx0c3ZnIHtcclxuXHRcdFx0XHRcdGNvbG9yOiAkc2FwcGhpcmUtMTAwO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cclxuXHRcdC5pcy1zbWFsbCB7XHJcblx0XHRcdHN2ZyB7XHJcblx0XHRcdFx0cGFkZGluZzogMnB4O1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblxyXG5cdFx0YSB7XHJcblx0XHRcdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtbGFuZHNjYXBlLWRvd24nKSB7XHJcblx0XHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG5cdFx0XHR9XHJcblxyXG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xyXG5cdFx0XHRmbGV4LXdyYXA6IHdyYXA7XHJcblx0XHRcdG1hcmdpbjogMjVweCAwO1xyXG5cclxuXHRcdFx0c3ZnIHtcclxuXHRcdFx0XHR3aWR0aDogMjBweDtcclxuXHRcdFx0XHRoZWlnaHQ6IDIwcHg7XHJcblx0XHRcdFx0Ym9yZGVyLXJhZGl1czogNTAlO1xyXG5cdFx0XHR9XHJcblxyXG5cdFx0XHQuZm9vdGVyX19zb2NpYWwtdGV4dCB7XHJcblx0XHRcdFx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1sYW5kc2NhcGUtZG93bicpIHtcclxuXHRcdFx0XHRcdGRpc3BsYXk6IG5vbmU7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblxyXG5cdFx0XHQuZm9vdGVyX19zb2NpYWwtc3ZnIHtcclxuXHRcdFx0XHRAaW5jbHVkZSBtZWRpYSAoJ3Bob25lJykge1xyXG5cdFx0XHRcdFx0bWFyZ2luOiAxMHB4O1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0XHRkaXNwbGF5OiBmbGV4O1xyXG5cdFx0XHRcdGp1c3RpZnktY29udGVudDogc3BhY2UtZXZlbmx5O1xyXG5cdFx0XHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0XHRcdFx0d2lkdGg6IDI4cHg7XHJcblx0XHRcdFx0aGVpZ2h0OiAyOHB4O1xyXG5cdFx0XHRcdGJvcmRlci1yYWRpdXM6IDUwJTtcclxuXHRcdFx0XHRtYXJnaW46IDAgMTRweCAwIDA7XHJcblx0XHRcdFx0cGFkZGluZzogNHB4O1xyXG5cdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZS0xMDA7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcbn1cclxuXHJcbi5mb290ZXJfX2JvdHRvbSB7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxufVxyXG5cclxuLmZvb3Rlcl9fY29sdW1uLWhlYWQge1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHJcblx0QGluY2x1ZGUgbWVkaWEoJ3Bob25lJykge1xyXG5cdFx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblx0fVxyXG5cclxuXHRzdmcge1xyXG5cdFx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1sYW5kc2NhcGUtZG93bicpIHtcclxuXHRcdFx0ZGlzcGxheTogYmxvY2s7XHJcblx0XHR9XHJcblxyXG5cdFx0ZGlzcGxheTogbm9uZTtcclxuXHRcdG1hcmdpbjogMXB4IDAgMCAxMHB4O1xyXG5cdFx0d2lkdGg6IDlweDtcclxuXHRcdGhlaWdodDogMjZweDtcclxuXHR9XHJcbn1cclxuXHJcbi5mb290ZXJfX25hbWUsXHJcbi5mb290ZXJfX2xpbmtzIHtcclxuXHR3aWR0aDogMTAwJTtcclxuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblx0bWFyZ2luLWJvdHRvbTogMTBweDtcclxufVxyXG5cclxuLmZvb3Rlcl9fbmFtZSB7XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3Bob25lJykge1xyXG5cdFx0bWFyZ2luLWJvdHRvbTogMjBweDtcclxuXHR9XHJcbn1cclxuXHJcbi5mb290ZXJfX2xpbmtzIHtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0QGluY2x1ZGUgZm9udCgxMnB4LCAxNHB4KTtcclxuXHJcblx0QGluY2x1ZGUgbWVkaWEoJ3Bob25lJykge1xyXG5cdFx0ZGlzcGxheTogZmxleDtcclxuXHRcdGZsZXgtd3JhcDogd3JhcDtcclxuXHRcdHdpZHRoOiBhdXRvO1xyXG5cdFx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRcdG1hcmdpbjogMCBhdXRvIDEwcHg7XHJcblx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdH1cclxuXHJcblx0YSB7XHJcblx0XHQmOm50aC1jaGlsZCgxKSB7XHJcblx0XHRcdCY6OmJlZm9yZSB7XHJcblx0XHRcdFx0QGluY2x1ZGUgbWVkaWEoJ3Bob25lJykge1xyXG5cdFx0XHRcdFx0Ym9yZGVyLWxlZnQ6IDFweCBzb2xpZCAkd2hpdGUtMTAwO1xyXG5cdFx0XHRcdH1cclxuXHJcblx0XHRcdFx0aGVpZ2h0OiAzcHg7XHJcblx0XHRcdFx0Y29udGVudDogJyc7XHJcblx0XHRcdFx0Ym9yZGVyLWxlZnQ6IG5vbmU7XHJcblx0XHRcdH1cclxuXHJcblx0XHRcdHBhZGRpbmc6IG5vbmU7XHJcblx0XHR9XHJcblx0XHRcclxuXHRcdCY6OmJlZm9yZSB7XHJcblx0XHRcdEBpbmNsdWRlIG1lZGlhKCdwaG9uZScpIHt9XHJcblx0XHRcdFx0XHJcblx0XHRcdHBhZGRpbmctbGVmdDogNXB4O1xyXG5cdFx0XHRjb250ZW50OiAnJztcclxuXHRcdFx0Ym9yZGVyLWxlZnQ6IDFweCBzb2xpZCAkd2hpdGUtMTAwO1xyXG5cdFx0fVxyXG5cclxuXHRcdEBpbmNsdWRlIG1lZGlhKCdwaG9uZScpIHtcclxuXHRcdFx0bWFyZ2luLWJvdHRvbTogMjBweDtcclxuXHRcdH1cclxuXHJcblx0XHRwYWRkaW5nLWxlZnQ6IDNweDtcclxuXHR9XHJcblxyXG5cdCY6OmFmdGVyIHtcclxuXHRcdEBpbmNsdWRlIG1lZGlhKCdwaG9uZScpIHtcclxuXHRcdFx0ZGlzcGxheTogYmxvY2s7XHJcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdFx0Ym9yZGVyLWJvdHRvbTogNXB4IHNvbGlkICR3aGl0ZS0xMDA7XHJcblx0XHRcdGJvcmRlci1yYWRpdXM6IDE1cHg7XHJcblx0XHRcdGJvdHRvbTogMDtcclxuXHRcdFx0Y29udGVudDogJyc7XHJcblx0XHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0fVxyXG5cclxuXHRcdGRpc3BsYXk6IG5vbmU7XHJcblx0fVxyXG59IiwiLmdvb2dsZS1tYXBzIHtcclxuXHRwYWRkaW5nOiAzMHB4IDM1cHg7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBTZWFyY2guXHJcbiAqL1xyXG5cclxuLmdvb2dsZS1tYXBzX19zZWFyY2gge1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRtYXJnaW4tYm90dG9tOiAxNXB4O1xyXG5cclxuXHRpbnB1dCB7XHJcblx0XHR3aWR0aDogMTAwJTtcclxuXHRcdGhlaWdodDogNDhweDtcclxuXHRcdHBhZGRpbmc6IDAgMThweDtcclxuXHRcdGJvcmRlcjogMXB4IHNvbGlkICRwZXJhbm8tNDA7XHJcblx0XHRib3JkZXItcmFkaXVzOiA0cHg7XHJcblx0XHRjb2xvcjogJHNhcHBoaXJlLTEwMDtcclxuXHJcblx0XHQmOjpwbGFjZWhvbGRlciB7XHJcblx0XHRcdGNvbG9yOiAkcGVyYW5vLTEwMDtcclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdHN2ZyB7XHJcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHR0b3A6IGNhbGMoNTAlIC0gMTNweCk7XHJcblx0XHRyaWdodDogMjVweDtcclxuXHRcdHdpZHRoOiAxNnB4O1xyXG5cdFx0aGVpZ2h0OiAyNnB4O1xyXG5cdFx0Y29sb3I6ICRncmV5LTIwMDtcclxuXHR9XHJcblxyXG5cdGJ1dHRvbiB7XHJcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHR0b3A6IDA7XHJcblx0XHRyaWdodDogMDtcclxuXHRcdHdpZHRoOiA0OHB4O1xyXG5cdFx0aGVpZ2h0OiA0OHB4O1xyXG5cdFx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdFx0ei1pbmRleDogMTA7XHJcblx0fVxyXG59XHJcblxyXG5cclxuLyoqXHJcbiogQ291bnQuXHJcbiovXHJcblxyXG4uZ29vZ2xlLW1hcHNfX2NvdW50IHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0bWFyZ2luLWJvdHRvbTogMTVweDtcclxuXHJcblx0c3ZnIHtcclxuXHRcdHdpZHRoOiAzMnB4O1xyXG5cdFx0aGVpZ2h0OiAzMnB4O1xyXG5cdFx0Y29sb3I6ICRwZXJhbm8tMTAwO1xyXG5cdFx0bWFyZ2luLXJpZ2h0OiAxMHB4O1xyXG5cdH1cclxuXHJcblx0c3BhbiB7XHJcblx0XHRAaW5jbHVkZSBmb250KDE2cHgsIDI0cHgpO1xyXG5cclxuXHRcdCYuaXMtYm9sZCB7XHJcblx0XHRcdEBpbmNsdWRlIGZvbnQoMjBweCwgMjZweCk7XHJcblx0XHRcdG1hcmdpbi1yaWdodDogMTBweDtcclxuXHRcdFx0Zm9udC13ZWlnaHQ6IDYwMDtcclxuXHRcdH1cclxuXHR9XHJcbn1cclxuXHJcblxyXG4vKipcclxuICogTG9jYXRpb25zLlxyXG4gKi9cclxuXHJcbi5nb29nbGUtbWFwc19jb250YWluZXIge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24tY29udGVudDogZmxleC1lbmQ7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdHdpZHRoOiAxMDAlO1xyXG5cdGhlaWdodDogNTUzcHg7XHJcblxyXG5cdC5tYXAtY2FudmFzIHtcclxuXHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0aGVpZ2h0OiA1NTNweDtcclxuXHR9XHJcblxyXG5cdC5nb29nbGUtbWFwcy1sYWJlbC1jbGFzcyB7XHJcblx0XHRtYXJnaW4tbGVmdDogMjAwcHg7XHJcblx0XHRtYXgtd2lkdGg6IDE1MHB4O1xyXG5cdFx0d2hpdGUtc3BhY2U6IG5vcm1hbDtcclxuXHRcdHRleHQtYWxpZ246IGxlZnQ7XHJcblx0fVxyXG59XHJcblxyXG4uZ29vZ2xlLW1hcHNfX2xvY2F0aW9ucyB7XHJcblx0d2lkdGg6IGNhbGMoMTAwJSAtIDE1cHgpO1xyXG5cdG1hcmdpbjogLTIyNXB4IDAgMCAxNXB4O1xyXG5cdHBhZGRpbmc6IDE1cHggMCAyMHB4IDA7XHJcblxyXG5cdC5vd2wtc3RhZ2Utb3V0ZXIge1xyXG5cdFx0aGVpZ2h0OiAxOTBweDtcclxuXHR9XHJcblxyXG5cdC5vd2wtc3RhZ2Uge1xyXG5cdFx0ZGlzcGxheTogZmxleDtcclxuXHRcdGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcclxuXHR9XHJcblxyXG5cdC5vd2wtaXRlbSB7XHJcblx0XHRoZWlnaHQ6IDE5MHB4O1xyXG5cclxuXHRcdCY6aG92ZXIge1xyXG5cdFx0XHQuZ29vZ2xlLW1hcHNfX2xvY2F0aW9uIHtcclxuXHRcdFx0XHRtYXJnaW4tdG9wOiAwO1xyXG5cdFx0XHRcdGhlaWdodDogMTkwcHg7XHJcblx0XHRcdFx0Ym9yZGVyOiA0cHggc29saWQgJHBlcmFuby0xMDA7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHJcblx0XHQuaXMtYWN0aXZlIHtcclxuXHRcdFx0bWFyZ2luLXRvcDogMDtcclxuXHRcdFx0aGVpZ2h0OiAxOTBweDtcclxuXHRcdFx0Ym9yZGVyOiA0cHggc29saWQgJHBlcmFuby0xMDA7XHJcblx0XHR9XHJcblx0fVxyXG59XHJcblxyXG4uZ29vZ2xlLW1hcHNfX2xvY2F0aW9uIHtcclxuXHRAaW5jbHVkZSBmb250KDE0cHgsIDI0cHgpO1xyXG5cdHdpZHRoOiAyMjJweDtcclxuXHRtYXJnaW4tdG9wOiA5MHB4O1xyXG5cdGhlaWdodDogMTAwcHg7XHJcblx0cGFkZGluZzogMjVweCAyMHB4IDIwcHggMjBweDtcclxuXHRib3JkZXI6IDRweCBzb2xpZCAkd2hpdGUtMTAwO1xyXG5cdGJvcmRlci1yYWRpdXM6IDhweDtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGUtMTAwO1xyXG5cdHRyYW5zaXRpb246IGFsbCAyNTBtcyBlYXNlO1xyXG5cdG92ZXJmbG93OiBoaWRkZW47XHJcbn1cclxuXHJcbi5nb29nbGUtbWFwc19fbG9jYXRpb24tY2l0eSB7XHJcblx0bWFyZ2luLWJvdHRvbTogMTBweDtcclxuXHR3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG5cdG92ZXJmbG93OiBoaWRkZW47XHJcbn1cclxuXHJcbi5nb29nbGUtbWFwc19fbG9jYXRpb24tYWRkcmVzcyB7XHJcblx0bWFyZ2luLWJvdHRvbTogMTBweDtcclxuXHR3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG5cdG92ZXJmbG93OiBoaWRkZW47XHJcbn1cclxuXHJcbi5nb29nbGUtbWFwc19fbG9jYXRpb24tYWN0aXZlIHtcclxuXHJcbn1cclxuXHJcbi5nb29nbGUtbWFwc19fbG9jYXRpb24tZWRpdG9yIHtcclxuXHRtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG5cdHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcblx0b3ZlcmZsb3c6IGhpZGRlbjtcclxufVxyXG5cclxuLmdvb2dsZS1tYXBzX19sb2NhdGlvbi1idXR0b24ge1xyXG5cdHdpZHRoOiAxMDAlO1xyXG5cdHBhZGRpbmc6IDA7XHJcbn1cclxuIiwiLmhlYWRlciB7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdG1hcmdpbi1ib3R0b206IDgwcHg7XHJcblx0ei1pbmRleDogOTk5O1xyXG5cclxuXHQud3JhcHBlciB7XHJcblx0XHRAaW5jbHVkZSBtZWRpYSgndGFibGV0LWxhbmRzY2FwZS1kb3duJykge1xyXG5cdFx0XHRoZWlnaHQ6IDgwcHg7XHJcblx0XHR9XHJcblxyXG5cdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRcdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuXHRcdGhlaWdodDogMTEwcHg7XHJcblx0XHRvdmVyZmxvdzogaGlkZGVuO1xyXG5cclxuXHRcdCY6aG92ZXIge1xyXG5cdFx0XHRvdmVyZmxvdzogdmlzaWJsZTtcclxuXHRcdH1cclxuXHR9XHJcbn1cclxuXHJcbi5oZWFkZXJfX2xvZ28ge1xyXG5cdGltZyB7XHJcblx0XHR3aWR0aDogMTQwcHg7XHJcblx0XHRoZWlnaHQ6IGF1dG87XHJcblx0fVxyXG59XHJcblxyXG4uaGVhZGVyX19saW5rIHtcclxuXHRAaW5jbHVkZSBtZWRpYSgndGFibGV0LWxhbmRzY2FwZS1kb3duJykge1xyXG5cdFx0ZGlzcGxheTogbm9uZTtcclxuXHR9XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBOYXZpZ2F0aW9uLlxyXG4gKi9cclxuXHJcbi5oZWFkZXJfX21lbnUge1xyXG5cdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtbGFuZHNjYXBlLWRvd24nKSB7XHJcblx0XHRkaXNwbGF5OiBub25lO1xyXG5cdH1cclxuXHJcblx0PiBsaSB7XHJcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0XHRtYXJnaW4tcmlnaHQ6IDI1cHg7XHJcblxyXG5cdFx0PiBhIHtcclxuXHRcdFx0QGluY2x1ZGUgZm9udCgxNHB4LCAxOHB4KTtcclxuXHRcdFx0Zm9udC1mYW1pbHk6IG1hcC1nZXQoJGZvbnQtZmFtaWx5LCAnaGVhZGluZycpO1xyXG5cdFx0XHRmb250LXdlaWdodDogNjAwO1xyXG5cdFx0XHRjb2xvcjogJHNhcHBoaXJlLTEwMDtcclxuXHRcdFx0dHJhbnNpdGlvbjogYWxsIDUwMG1zIGVhc2U7XHJcblxyXG5cdFx0XHRzdmcge1xyXG5cdFx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRcdFx0XHR0b3A6IDNweDtcclxuXHRcdFx0XHR3aWR0aDogOXB4O1xyXG5cdFx0XHRcdGhlaWdodDogMTVweDtcclxuXHRcdFx0XHRtYXJnaW4tbGVmdDogOHB4O1xyXG5cdFx0XHRcdHRyYW5zaXRpb246IHRyYW5zZm9ybSA1MDBtcyBlYXNlO1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblxyXG5cdFx0JjpsYXN0LW9mLXR5cGUge1xyXG5cdFx0XHRtYXJnaW46IDA7XHJcblx0XHR9XHJcblxyXG5cdFx0Ji5jdXJyZW50LXBhZ2UtYW5jZXN0b3IsXHJcblx0XHQmLmN1cnJlbnQtbWVudS1pdGVtLFxyXG5cdFx0Jjpob3ZlciB7XHJcblx0XHRcdD4gYSB7XHJcblx0XHRcdFx0Y29sb3I6ICRwZXJhbm8tMTAwO1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblxyXG5cdFx0Jjpob3ZlciB7XHJcblx0XHRcdD4gYSBzdmcge1xyXG5cdFx0XHRcdHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XHJcblx0XHRcdFx0Y29sb3I6ICRwZXJhbm8tMTAwO1xyXG5cdFx0XHR9XHJcblxyXG5cdFx0XHQuc3VibWVudS1jb250YWluZXIge1xyXG5cdFx0XHRcdG9wYWNpdHk6IDE7XHJcblx0XHRcdFx0dG9wOiAxMDAlO1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblxyXG5cdFx0PiAuc3VibWVudS1jb250YWluZXIge1xyXG5cdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHRcdHRvcDogNTBweDtcclxuXHRcdFx0bGVmdDogNTAlO1xyXG5cdFx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAwJSk7XHJcblx0XHRcdHdpZHRoOiBtYXgtY29udGVudDtcclxuXHRcdFx0bWluLXdpZHRoOiAyMTVweDtcclxuXHRcdFx0cGFkZGluZy10b3A6IDhweDtcclxuXHRcdFx0b3BhY2l0eTogMDtcclxuXHRcdFx0dHJhbnNpdGlvbjogYWxsIDUwMG1zIGVhc2U7XHJcblxyXG5cdFx0XHQ+IC5zdWJtZW51IHtcclxuXHRcdFx0XHRwYWRkaW5nOiAyMHB4IDE1cHg7XHJcblx0XHRcdFx0Ym94LXNoYWRvdzogMHB4IDhweCAyMHB4IDEwcHggJGdyZXktMjA7XHJcblx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJHdoaXRlLTEwMDtcclxuXHJcblx0XHRcdFx0bGkge1xyXG5cdFx0XHRcdFx0YSB7XHJcblx0XHRcdFx0XHRcdEBpbmNsdWRlIGZvbnQoMTRweCwgMThweCk7XHJcblx0XHRcdFx0XHRcdGRpc3BsYXk6IGZsZXg7XHJcblx0XHRcdFx0XHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0XHRcdFx0XHRmb250LWZhbWlseTogbWFwLWdldCgkZm9udC1mYW1pbHksICdzZWN1bmRhaXInKTtcclxuXHRcdFx0XHRcdFx0Zm9udC13ZWlnaHQ6IDYwMDtcclxuXHRcdFx0XHRcdFx0cGFkZGluZy1ib3R0b206IDE1cHg7XHJcblx0XHRcdFx0XHRcdHRyYW5zaXRpb246IGFsbCAyNTBtcyBlYXNlO1xyXG5cdFx0XHRcdFx0XHRjb2xvcjogJHNhcHBoaXJlLTEwMDtcclxuXHRcdFx0XHRcdH1cclxuXHJcblx0XHRcdFx0XHRsaSB7XHJcblx0XHRcdFx0XHRcdGEge1xyXG5cdFx0XHRcdFx0XHRcdHBhZGRpbmctbGVmdDogMjBweDtcclxuXHRcdFx0XHRcdFx0XHRmb250LXdlaWdodDogNDAwO1xyXG5cdFx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHR9XHJcblxyXG5cdFx0XHRcdFx0LnN1Ym1lbnUge1xyXG5cdFx0XHRcdFx0XHRwYWRkaW5nOiA1cHggMCAyMHB4IDA7XHJcblx0XHRcdFx0XHR9XHJcblxyXG5cdFx0XHRcdFx0Ji5jdXJyZW50LXBhZ2UtYW5jZXN0b3IsXHJcblx0XHRcdFx0XHQmLmN1cnJlbnQtbWVudS1pdGVtLFxyXG5cdFx0XHRcdFx0Jjpob3ZlciB7XHJcblx0XHRcdFx0XHRcdD4gYSB7XHJcblx0XHRcdFx0XHRcdFx0Y29sb3I6ICRwZXJhbm8tMTAwO1xyXG5cdFx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG59XHJcblxyXG5cclxuLyoqXHJcbiAqIE1lbnUgQnV0dG9uLlxyXG4gKi9cclxuXHJcbiR0cmFuc2l0aW9uLXRpbWluZzogNDAwbXM7XHJcbi5oZWFkZXJfX21lbnUtYnV0dG9uIHtcclxuXHRAaW5jbHVkZSBtZWRpYSgndGFibGV0LWxhbmRzY2FwZS1kb3duJykge1xyXG5cdFx0ZGlzcGxheTogZmxleDtcclxuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRcdHdpZHRoOiAyOXB4O1xyXG5cdFx0aGVpZ2h0OiAyNnB4O1xyXG5cdFx0ei1pbmRleDogMTAwO1xyXG5cclxuXHRcdHNwYW4ge1xyXG5cdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdFx0cmlnaHQ6IDA7XHJcblx0XHRcdGxlZnQ6IDA7XHJcblx0XHRcdHdpZHRoOiAyOXB4O1xyXG5cdFx0XHRoZWlnaHQ6IDVweDtcclxuXHRcdFx0Ym9yZGVyLXJhZGl1czogMnB4O1xyXG5cdFx0XHRtYXJnaW46IGF1dG87XHJcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRzYXBwaGlyZS0xMDA7XHJcblxyXG5cdFx0XHQmOm50aC1jaGlsZCgxKSB7XHJcblx0XHRcdFx0dG9wOiAwO1xyXG5cdFx0XHRcdHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgJHRyYW5zaXRpb24tdGltaW5nLCB0b3AgJHRyYW5zaXRpb24tdGltaW5nICR0cmFuc2l0aW9uLXRpbWluZywgdHJhbnNmb3JtICR0cmFuc2l0aW9uLXRpbWluZyAwcztcclxuXHRcdFx0fVxyXG5cclxuXHRcdFx0JjpudGgtY2hpbGQoMikge1xyXG5cdFx0XHRcdHRvcDogY2FsYyg1MCUgLSAyLjVweCk7XHJcblx0XHRcdFx0dHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAkdHJhbnNpdGlvbi10aW1pbmcsIG9wYWNpdHkgMG1zICR0cmFuc2l0aW9uLXRpbWluZztcclxuXHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkc2FwcGhpcmUtMTAwO1xyXG5cdFx0XHRcdG9wYWNpdHk6IDE7XHJcblx0XHRcdH1cclxuXHJcblx0XHRcdCY6bnRoLWNoaWxkKDMpIHtcclxuXHRcdFx0XHRib3R0b206IDA7XHJcblx0XHRcdFx0dHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAkdHJhbnNpdGlvbi10aW1pbmcsIGJvdHRvbSAkdHJhbnNpdGlvbi10aW1pbmcgJHRyYW5zaXRpb24tdGltaW5nLCB0cmFuc2Zvcm0gJHRyYW5zaXRpb24tdGltaW5nIDBzO1xyXG5cdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRzYXBwaGlyZS0xMDA7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHJcblx0XHQmLmlzLWFjdGl2ZSB7XHJcblx0XHRcdHNwYW4ge1xyXG5cdFx0XHRcdCY6bnRoLWNoaWxkKDEpIHtcclxuXHRcdFx0XHRcdHRvcDogY2FsYyg1MCUgLSAyLjVweCk7XHJcblx0XHRcdFx0XHR0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xyXG5cdFx0XHRcdFx0dHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAkdHJhbnNpdGlvbi10aW1pbmcsIHRvcCAkdHJhbnNpdGlvbi10aW1pbmcsIHRyYW5zZm9ybSAkdHJhbnNpdGlvbi10aW1pbmcgJHRyYW5zaXRpb24tdGltaW5nO1xyXG5cdFx0XHRcdH1cclxuXHJcblx0XHRcdFx0JjpudGgtY2hpbGQoMikge1xyXG5cdFx0XHRcdFx0b3BhY2l0eTogMDtcclxuXHRcdFx0XHR9XHJcblxyXG5cdFx0XHRcdCY6bnRoLWNoaWxkKDMpIHtcclxuXHRcdFx0XHRcdGJvdHRvbTogY2FsYyg1MCUgLSAyLjVweCk7XHJcblx0XHRcdFx0XHR0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XHJcblx0XHRcdFx0XHR0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yICR0cmFuc2l0aW9uLXRpbWluZywgYm90dG9tICR0cmFuc2l0aW9uLXRpbWluZywgdHJhbnNmb3JtICR0cmFuc2l0aW9uLXRpbWluZyAkdHJhbnNpdGlvbi10aW1pbmc7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHRkaXNwbGF5OiBub25lO1xyXG59XHJcbiIsIi5pbWFnZS1mYXEge1xyXG5cdG1hcmdpbi1ib3R0b206IDgwcHg7XHJcblxyXG5cdC53cmFwcGVyIHtcclxuXHRcdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHR9XHJcbn1cclxuXHJcbi5pbWFnZS1mYXEtLWJhY2tncm91bmQtYmx1ZSB7XHJcblx0cGFkZGluZzogODBweCAwO1xyXG5cdGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kLWJsdWUtMTAwO1xyXG59XHJcblxyXG4uaW1hZ2UtZmFxX19pbWFnZSB7XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3Bob25lJykge1xyXG5cdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRtYXJnaW4tYm90dG9tOiA1MHB4O1xyXG5cdH1cclxuXHJcblx0d2lkdGg6IDUwJTtcclxuXHJcblx0aW1nIHtcclxuXHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0aGVpZ2h0OiBhdXRvO1xyXG5cdFx0ZmlsdGVyOiBkcm9wLXNoYWRvdygwcHggMTBweCAyMHB4ICRwcnVzc2lhbi1ibHVlLTEwKTtcclxuXHRcdGJvcmRlci1yYWRpdXM6IDQwcHggNDBweCAwcHggNDBweDtcclxuXHR9XHJcbn1cclxuXHJcbi5pbWFnZS1mYXFfX3dyYXAge1xyXG5cdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtbGFuZHNjYXBlLWRvd24nKSB7XHJcblx0XHR3aWR0aDogY2FsYyg1MCUgLSA1MHB4KTtcclxuXHRcdG1hcmdpbi10b3A6IDEwcHg7XHJcblx0fVxyXG5cdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtcG9ydHJhaXQtZG93bicpIHtcclxuXHRcdHdpZHRoOiBjYWxjKDUwJSAtIDMwcHgpO1xyXG5cdH1cclxuXHRAaW5jbHVkZSBtZWRpYSgncGhvbmUnKSB7XHJcblx0XHR3aWR0aDogMTAwJTtcclxuXHR9XHJcblxyXG5cdHdpZHRoOiBjYWxjKDUwJSAtIDEwMHB4KTtcclxuXHRtYXJnaW4tdG9wOiAzMHB4O1xyXG59XHJcblxyXG4uY29udGVudC1kZWZhdWx0X190aXRsZSB7XHJcblx0bWFyZ2luLWJvdHRvbTogMjBweDtcclxufVxyXG5cclxuLmltYWdlLWZhcV9fcXVlc3Rpb24ge1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG5cdHBhZGRpbmctbGVmdDogMzBweDtcclxuXHJcblx0JjpiZWZvcmUge1xyXG5cdFx0ZGlzcGxheTogYmxvY2s7XHJcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHR0b3A6IDA7XHJcblx0XHRsZWZ0OiAwO1xyXG5cdFx0d2lkdGg6IDEwcHg7XHJcblx0XHRoZWlnaHQ6IDEwMCU7XHJcblx0XHRib3JkZXItcmFkaXVzOiAzMDBweDtcclxuXHRcdGJhY2tncm91bmQtY29sb3I6ICRwZXJhbm8tMTAwO1xyXG5cdFx0Y29udGVudDogJyc7XHJcblx0XHR0cmFuc2l0aW9uOiBhbGwgMjUwbXMgZWFzZTtcclxuXHR9XHJcblxyXG5cdCYuaXMtYWN0aXZlIHtcclxuXHRcdG1hcmdpbi1ib3R0b206IDMwcHg7XHJcblxyXG5cdFx0JjpiZWZvcmUge1xyXG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkc2FwcGhpcmUtMTAwO1xyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0JjpsYXN0LW9mLXR5cGUge1xyXG5cdFx0bWFyZ2luLWJvdHRvbTogMDtcclxuXHR9XHJcbn1cclxuXHJcbi5pbWFnZS1mYXFfX3F1ZXN0aW9uLWhlYWQge1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxufVxyXG5cclxuLmltYWdlLWZhcV9fcXVlc3Rpb24tYm9keSB7XHJcblx0ZGlzcGxheTogbm9uZTtcclxufVxyXG5cclxuLmltYWdlLWZhcV9fcXVlc3Rpb24tYW5zd2VyIHtcclxuXHRwYWRkaW5nOiAyMHB4IDAgMTBweCAwO1xyXG59IiwiLmxhbmd1YWdlLXN3aXRjaCB7XHJcblx0ZGlzcGxheTogZmxleDtcclxufVxyXG5cclxuLmxhbmd1YWdlLXN3aXRjaF9faXRlbSB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHR3aWR0aDogMzJweDtcclxuXHRoZWlnaHQ6IDMycHg7XHJcblx0bWFyZ2luLXJpZ2h0OiAxMHB4O1xyXG5cdG9wYWNpdHk6IDAuNTtcclxuXHR0cmFuc2Zvcm06IHNjYWxlKDAuNyk7XHJcblx0dHJhbnNpdGlvbjogYWxsIDI1MG1zIGVhc2U7XHJcblxyXG5cdCY6bGFzdC1vZi10eXBlIHtcclxuXHRcdG1hcmdpbi1yaWdodDogMDtcclxuXHR9XHJcblxyXG5cdCYuaXMtYWN0aXZlLFxyXG5cdCY6aG92ZXIge1xyXG5cdFx0b3BhY2l0eTogMTtcclxuXHRcdHRyYW5zZm9ybTogc2NhbGUoMSk7XHJcblx0fVxyXG59XHJcblxyXG4ubGFuZ3VhZ2Utc3dpdGNoX19saW5rIHtcclxuXHR3aWR0aDogMTAwJTtcclxuXHRoZWlnaHQ6IDEwMCU7XHJcbn1cclxuXHJcbi5sYW5ndWFnZS1zd2l0Y2hfX2xpbmstLW5sIHtcclxuXHRiYWNrZ3JvdW5kOiB1cmwoICcuLy4uL2ltYWdlcy9mbGFnLW5sLnBuZycgKSBuby1yZXBlYXQ7XHJcblx0YmFja2dyb3VuZC1zaXplOiBjb3ZlclxyXG59XHJcblxyXG4ubGFuZ3VhZ2Utc3dpdGNoX19saW5rLS1lbiB7XHJcblx0YmFja2dyb3VuZDogdXJsKCAnLi8uLi9pbWFnZXMvZmxhZy1lbi5wbmcnICkgbm8tcmVwZWF0O1xyXG5cdGJhY2tncm91bmQtc2l6ZTogY292ZXJcclxufVxyXG4iLCIubG9jYXRpb24tc2VhcmNoIHtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0bWFyZ2luLWJvdHRvbTogODBweDtcclxuXHJcblx0LndyYXBwZXIge1xyXG5cdFx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG5cdH1cclxuXHJcblxyXG5cdCY6YmVmb3JlIHtcclxuXHRcdEBtZWRpYShtYXgtd2lkdGg6IDEwMjRweCkge1xyXG5cdFx0XHRkaXNwbGF5OiBub25lO1xyXG5cdFx0fVxyXG5cclxuXHRcdGRpc3BsYXk6IGJsb2NrO1xyXG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0Ym90dG9tOiAwO1xyXG5cdFx0bGVmdDogMDtcclxuXHRcdHdpZHRoOiAzNzZweDtcclxuXHRcdGhlaWdodDogMTU5cHg7XHJcblx0XHRiYWNrZ3JvdW5kOiB1cmwoJy4vLi4vaW1hZ2VzL2Rlc2t0b3AtZ3JvdXAtMTE5LnN2ZycpIG5vLXJlcGVhdDtcclxuXHRcdGNvbnRlbnQ6ICcnO1xyXG5cdFx0ei1pbmRleDogLTE7XHJcblx0fVxyXG5cclxuXHQmOmFmdGVyIHtcclxuXHRcdEBtZWRpYShtYXgtd2lkdGg6IDEwMjRweCkge1xyXG5cdFx0XHRkaXNwbGF5OiBub25lO1xyXG5cdFx0fVxyXG5cclxuXHRcdGRpc3BsYXk6IG5vbmU7XHJcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHRyaWdodDogMDtcclxuXHRcdGJvdHRvbTogMDtcclxuXHRcdHdpZHRoOiAyMTVweDtcclxuXHRcdGhlaWdodDogOTJweDtcclxuXHRcdGJhY2tncm91bmQ6IHVybCgnLi8uLi9pbWFnZXMvZGVza3RvcC1ncm91cC02NS5zdmcnKSBuby1yZXBlYXQ7XHJcblx0XHRjb250ZW50OiAnJztcclxuXHRcdHotaW5kZXg6IC0xO1xyXG5cdH1cclxufVxyXG5cclxuLmxvY2F0aW9uLXNlYXJjaF9fcmVtb3ZlLW1hcmdpbiB7XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1sYW5kc2NhcGUtdXAnKSB7XHJcblx0XHRtYXJnaW4tYm90dG9tOiAtODBweDtcclxuXHRcdHotaW5kZXg6IDk5O1xyXG5cdH1cclxufVxyXG5cclxuLmxvY2F0aW9uLXNlYXJjaF9fY29sdW1uLXRleHQge1xyXG5cdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtbGFuZHNjYXBlLWRvd24nKSB7XHJcblx0XHR3aWR0aDogY2FsYygxMDAlIC0gNjQ1cHgpO1xyXG5cdH1cclxuXHRAbWVkaWEobWF4LXdpZHRoOiAxMDI0cHgpIHtcclxuXHRcdHdpZHRoOiAxMDAlO1xyXG5cdH1cclxuXHJcblx0d2lkdGg6IGNhbGMoMTAwJSAtIDY3NXB4KTtcclxufVxyXG5cclxuLmxvY2F0aW9uLXNlYXJjaF9fY29sdW1uLW1hcHMge1xyXG5cdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtbGFuZHNjYXBlLWRvd24nKSB7XHJcblx0XHR3aWR0aDogNjEwcHg7XHJcblx0fVxyXG5cdEBtZWRpYShtYXgtd2lkdGg6IDEwMjRweCkge1xyXG5cdFx0d2lkdGg6IDEwMCU7XHJcblx0fVxyXG5cclxuXHR3aWR0aDogNjMwcHg7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBUZXh0IENvbHVtbi5cclxuICovXHJcblxyXG4ubG9jYXRpb24tc2VhcmNoX19oZWFkIHtcclxuXHRAbWVkaWEobWF4LXdpZHRoOiAxMDI0cHgpIHtcclxuXHRcdGRpc3BsYXk6IGZsZXg7XHJcblx0XHRmbGV4LXdyYXA6IHdyYXA7XHJcblx0XHRhbGlnbi1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG5cdFx0bWluLWhlaWdodDogMzMzcHg7XHJcblx0fVxyXG5cdEBpbmNsdWRlIG1lZGlhKCdwaG9uZScpIHtcclxuXHRcdG1pbi1oZWlnaHQ6IDUyNXB4O1xyXG5cdH1cclxufVxyXG5cclxuLmxvY2F0aW9uLXNlYXJjaF9fdGl0bGUtd3JhcCB7XHJcblx0d2lkdGg6IDEwMCU7XHJcbn1cclxuXHJcbi5sb2NhdGlvbi1zZWFyY2hfX3N1YnRpdGxlIHtcclxuXHRtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG59XHJcblxyXG4ubG9jYXRpb24tc2VhcmNoX190aXRsZSB7XHJcblx0QG1lZGlhKG1heC13aWR0aDogMTAyNHB4KSB7XHJcblx0XHRtYXgtd2lkdGg6IDI3MHB4O1xyXG5cdH1cclxuXHJcblx0bWFyZ2luLWJvdHRvbTogMzBweDtcclxuXHRmb250LXdlaWdodDogNDAwO1xyXG5cclxuXHRzdHJvbmcge1xyXG5cdFx0QGluY2x1ZGUgbWVkaWEoJ2Rlc2t0b3AnKSB7XHJcblx0XHRcdGZvbnQtc2l6ZTogNzBweDtcclxuXHRcdH1cclxuXHRcdGZvbnQtd2VpZ2h0OiA5MDA7XHJcblx0fVxyXG59XHJcblxyXG4ubG9jYXRpb24tc2VhcmNoX19saW5rLXdyYXAge1xyXG5cdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtbGFuZHNjYXBlLWRvd24nKSB7XHJcblx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XHJcblx0XHRwYWRkaW5nOiAwO1xyXG5cdH1cclxuXHJcblx0anVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcclxuXHRwYWRkaW5nLXJpZ2h0OiAzNXB4O1xyXG59XHJcblxyXG4ubG9jYXRpb24tc2VhcmNoX191c3BzIHtcclxuXHRAaW5jbHVkZSBtZWRpYSgndGFibGV0LWxhbmRzY2FwZS1kb3duJykge1xyXG5cdFx0bWFyZ2luOiAyMHB4IDAgMzBweCAwO1xyXG5cdH1cclxuXHJcblx0bWFyZ2luOiA3MHB4IDAgMzBweCAwO1xyXG59XHJcblxyXG4ubG9jYXRpb24tc2VhcmNoX191c3Age1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRzYXBwaGlyZS01MDtcclxuXHRwYWRkaW5nOiAxMHB4IDA7XHJcbn1cclxuXHJcbi5sb2NhdGlvbi1zZWFyY2hfX3VzcC1pY29uIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblx0d2lkdGg6IDQ0cHg7XHJcblx0aGVpZ2h0OiA0NHB4O1xyXG5cdG1hcmdpbi1yaWdodDogMjVweDtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkcHJ1c3NpYW4tYmx1ZS0yMDtcclxuXHRib3JkZXItcmFkaXVzOiA4cHg7XHJcblxyXG5cdHN2ZyB7XHJcblx0XHR3aWR0aDogYXV0bztcclxuXHRcdGhlaWdodDogMzJweDtcclxuXHRcdGNvbG9yOiAkcHJ1c3NpYW4tYmx1ZS0xMDA7XHJcblx0fVxyXG59XHJcblxyXG4ubG9jYXRpb24tc2VhcmNoX193cmFwIHtcclxuXHR3aWR0aDogY2FsYygxMDAlIC0gNjlweCk7XHJcbn1cclxuXHJcbi5sb2NhdGlvbi1zZWFyY2hfX3VzcC10aXRsZSB7XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1sYW5kc2NhcGUtZG93bicpIHtcclxuXHRcdHdpZHRoOiAxMDAlO1xyXG5cdH1cclxuXHRAbWVkaWEobWF4LXdpZHRoOiAxMDI0cHgpIHtcclxuXHRcdHdpZHRoOiAxMjBweDtcclxuXHR9XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3Bob25lJykge1xyXG5cdFx0d2lkdGg6IDEwMCU7XHJcblx0fVxyXG5cclxuXHR3aWR0aDogMTIwcHg7XHJcbn1cclxuXHJcbi5sb2NhdGlvbi1zZWFyY2hfX3VzcC10ZXh0IHtcclxuXHRAaW5jbHVkZSBtZWRpYSgndGFibGV0LWxhbmRzY2FwZS1kb3duJykge1xyXG5cdFx0d2lkdGg6IDEwMCU7XHJcblx0fVxyXG5cdEBtZWRpYShtYXgtd2lkdGg6IDEwMjRweCkge1xyXG5cdFx0d2lkdGg6IGNhbGMoMTAwJSAtIDEyMHB4KTtcclxuXHR9XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3Bob25lJykge1xyXG5cdFx0d2lkdGg6IDEwMCU7XHJcblx0fVxyXG5cclxuXHR3aWR0aDogY2FsYygxMDAlIC0gMTIwcHgpO1xyXG59XHJcblxyXG4ubG9jYXRpb24tc2VhcmNoX19hY3Rpb25zIHtcclxuXHRAbWVkaWEobWF4LXdpZHRoOiAxMDI0cHgpIHtcclxuXHRcdGRpc3BsYXk6IGJsb2NrO1xyXG5cdFx0dGV4dC1hbGlnbjogLXdlYmtpdC1jZW50ZXI7XHJcblx0fVxyXG59XHJcblxyXG4ubG9jYXRpb24tc2VhcmNoX19hbmNob3Ige1xyXG5cdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtbGFuZHNjYXBlLWRvd24nKSB7XHJcblx0XHR3aWR0aDogMTAwJTtcclxuXHR9XHJcblx0QG1lZGlhKG1heC13aWR0aDogMTAyNHB4KSB7XHJcblx0XHR3aWR0aDogMjcwcHg7XHJcblx0fVxyXG5cdEBpbmNsdWRlIG1lZGlhKCdwaG9uZScpIHtcclxuXHRcdHdpZHRoOiAxMDAlO1xyXG5cdH1cclxuXHJcblx0d2lkdGg6IDI5MHB4O1xyXG59XHJcblxyXG4ubG9jYXRpb24tc2VhcmNoX19hY3Rpb25zIHtcclxuXHRAaW5jbHVkZSBtZWRpYSgnZGVza3RvcCcpIHtcclxuXHRcdGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XHJcblx0fVxyXG59XHJcblxyXG4ubG9jYXRpb24tc2VhcmNoX19hcnJvdyB7XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1sYW5kc2NhcGUtZG93bicpIHtcclxuXHRcdG1heC13aWR0aDogZml0LWNvbnRlbnQ7XHJcblx0XHRtYXJnaW4tdG9wOiAzMHB4O1xyXG5cdFx0cGFkZGluZzogMDtcclxuXHR9XHJcblx0QG1lZGlhKG1heC13aWR0aDogMTAyNHB4KSB7XHJcblx0XHRtYXgtd2lkdGg6IGNhbGMoMTAwJSAtIDI3MHB4KTtcclxuXHRcdG1hcmdpbi10b3A6IDA7XHJcblx0fVxyXG5cdEBpbmNsdWRlIG1lZGlhKCdwaG9uZScpIHtcclxuXHRcdHdpZHRoOiBjYWxjKDEwMCUgLSAzMnB4KTtcclxuXHRcdG1heC13aWR0aDogZml0LWNvbnRlbnQ7XHJcblx0XHRtYXJnaW4tdG9wOiAzMHB4O1xyXG5cdFx0cGFkZGluZzogMDtcclxuXHR9XHJcblxyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHR3aWR0aDogZml0LWNvbnRlbnQ7XHJcblx0bWF4LXdpZHRoOiAyOTBweDtcclxuXHRwYWRkaW5nLWxlZnQ6IDQwcHg7XHJcblx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG5cclxuXHQmOmFmdGVyIHtcclxuXHRcdEBtZWRpYShtYXgtd2lkdGg6IDEwMjRweCkge1xyXG5cdFx0XHRsZWZ0OiA0NCU7XHJcblx0XHRcdHRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTtcclxuXHRcdFx0d2lkdGg6IDUxcHg7XHJcblx0XHRcdGhlaWdodDogMzJweDtcclxuXHRcdFx0YmFja2dyb3VuZC1zaXplOiBjb250YWluO1xyXG5cdFx0fVxyXG5cclxuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdGJvdHRvbTogLTYwcHg7XHJcblx0XHRyaWdodDogMDtcclxuXHRcdHdpZHRoOiAxMzJweDtcclxuXHRcdGhlaWdodDogODNweDtcclxuXHRcdGJhY2tncm91bmQ6IHVybCgnLi8uLi9pbWFnZXMvZGVza3RvcC1pbWFnZS0xMi5wbmcnKSBuby1yZXBlYXQ7XHJcblx0XHRjb250ZW50OiAnJztcclxuXHR9XHJcbn1cclxuXHJcblxyXG4vKipcclxuKiBJbWFnZSBDb2x1bW4uXHJcbiovXHJcblxyXG4ubG9jYXRpb24tc2VhcmNoX19pbWFnZSB7XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1sYW5kc2NhcGUtZG93bicpIHtcclxuXHRcdHdpZHRoOiA1NTRweDtcclxuXHRcdGhlaWdodDogNTk5cHg7XHJcblx0fVxyXG5cdEBtZWRpYShtYXgtd2lkdGg6IDEwMjRweCkge1xyXG5cdFx0d2lkdGg6IDM2NXB4O1xyXG5cdFx0aGVpZ2h0OiAzOTVweDtcclxuXHR9XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3Bob25lJykge1xyXG5cdFx0bWFyZ2luLXRvcDogMTIwcHg7XHJcblx0XHR3aWR0aDogMzY1cHg7XHJcblx0XHRtYXgtd2lkdGg6IGNhbGMoMTAwdncgLSAyMHB4KTtcclxuXHRcdGhlaWdodDogMzk1cHg7XHJcblx0fVxyXG5cclxuXHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0dG9wOiAwO1xyXG5cdHJpZ2h0OiAwO1xyXG5cdHdpZHRoOiA3MzBweDtcclxuXHRoZWlnaHQ6IDc5MHB4O1xyXG5cdGJhY2tncm91bmQtY29sb3I6ICRzYXBwaGlyZS0xMDA7XHJcblx0Ym9yZGVyLXJhZGl1czogMzg1cHggMHB4IDBweCAzODVweDtcclxuXHR6LWluZGV4OiAtMTtcclxuXHJcblx0aW1nIHtcclxuXHRcdGJvcmRlci1yYWRpdXM6IDM4NXB4IDBweCAwcHggMzg1cHg7XHJcblx0XHRvcGFjaXR5OiAwLjc7XHJcblx0fVxyXG5cclxuXHQmOmFmdGVyIHtcclxuXHRcdGRpc3BsYXk6IGJsb2NrO1xyXG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0dG9wOiAtMjJweDtcclxuXHRcdHJpZ2h0OiAwO1xyXG5cdFx0d2lkdGg6IDIxNXB4O1xyXG5cdFx0aGVpZ2h0OiA5MnB4O1xyXG5cdFx0YmFja2dyb3VuZDogdXJsKCcuLy4uL2ltYWdlcy9kZXNrdG9wLWdyb3VwLTY1LnN2ZycpIG5vLXJlcGVhdDtcclxuXHRcdGNvbnRlbnQ6ICcnO1xyXG5cdFx0ei1pbmRleDogMTtcclxuXHR9XHJcbn1cclxuXHJcbi5sb2NhdGlvbi1zZWFyY2hfX2JvZHkge1xyXG5cdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtbGFuZHNjYXBlLWRvd24nKSB7XHJcblx0XHRtYXJnaW4tdG9wOiA1MThweDtcclxuXHR9XHJcblx0QG1lZGlhKG1heC13aWR0aDogMTAyNHB4KSB7XHJcblx0XHRtYXJnaW4tdG9wOiA4MHB4O1xyXG5cdH1cclxuXHRAaW5jbHVkZSBtZWRpYSgncGhvbmUnKSB7XHJcblx0XHR3aWR0aDogMTAwdnc7XHJcblx0XHRtYXJnaW4tbGVmdDogLTIwcHg7XHJcblx0XHRib3JkZXItcmFkaXVzOiA4cHg7XHJcblx0fVxyXG5cclxuXHR3aWR0aDogMTAwJTtcclxuXHRtaW4taGVpZ2h0OiA5ODVweDtcclxuXHRtYXJnaW4tdG9wOiAyNTVweDtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGUtMTAwO1xyXG5cdGJvcmRlci1yYWRpdXM6IDQwcHg7XHJcblx0Ym94LXNoYWRvdzogMHB4IDBweCA1cHggJGJsYWNrLTUsIDBweCAyNXB4IDM1cHggJGJsYWNrLTM7XHJcblx0ei1pbmRleDogMjA7XHJcbn1cclxuXHJcbi5sb2NhdGlvbi1zZWFyY2hfX3RlYXNlcnMge1xyXG5cdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtbGFuZHNjYXBlLWRvd24nKSB7XHJcblx0XHRwYWRkaW5nOiA1MHB4IDI1cHg7XHJcblx0fVxyXG5cclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG5cdHBhZGRpbmc6IDUwcHggMzVweDtcclxuXHJcblx0JjpiZWZvcmUge1xyXG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0dG9wOiAwO1xyXG5cdFx0bGVmdDogMTVweDtcclxuXHRcdHdpZHRoOiBjYWxjKDEwMCUgLSAzMHB4KTtcclxuXHRcdGhlaWdodDogMXB4O1xyXG5cdFx0YmFja2dyb3VuZC1jb2xvcjogJHBlcmFuby0xMDA7XHJcblx0XHRjb250ZW50OiAnJztcclxuXHR9XHJcbn1cclxuXHJcbi5sb2NhdGlvbi1zZWFyY2hfX3RlYXNlciB7XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3Bob25lJykge1xyXG5cdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRtYXJnaW4tYm90dG9tOiA1MHB4O1xyXG5cdH1cclxuXHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LXdyYXA6IHdyYXA7XHJcblx0YWxpZ24tY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuXHR3aWR0aDogY2FsYyg1MCUgLSAxNy41cHgpO1xyXG59XHJcblxyXG4ubG9jYXRpb24tc2VhcmNoX190ZWFzZXItdGl0bGUge1xyXG5cdG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbn1cclxuXHJcbi5sb2NhdGlvbi1zZWFyY2hfX3RlYXNlci13cmFwIHtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdHdpZHRoOiAxMDAlO1xyXG5cdG1hcmdpbi10b3A6IDIwcHg7XHJcblxyXG5cdGJ1dHRvbiB7XHJcblx0XHR3aWR0aDogY2FsYygxMDAlIC0gNTRweCk7XHJcblx0XHRtYXgtd2lkdGg6IDIyMHB4O1xyXG5cdFx0cGFkZGluZzogMDtcclxuXHR9XHJcbn1cclxuXHJcbi5sb2NhdGlvbi1zZWFyY2hfX3NlbGVjdCB7XHJcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0cGFkZGluZzogMDtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkcGVyYW5vLTEwMDtcclxuXHRib3JkZXI6IDFweCBzb2xpZCAkcGVyYW5vLTEwMDtcclxuXHRoZWlnaHQ6IDQwcHg7XHJcblxyXG5cdHNlbGVjdCB7XHJcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuXHRcdG1hcmdpbjogLTFweCAwIDAgLTFweDtcclxuXHRcdHBhZGRpbmc6IDAgNjBweCAwIDQ1cHg7XHJcblx0XHRjb2xvcjogJHdoaXRlLTEwMDtcclxuXHRcdHotaW5kZXg6IDI7XHJcblxyXG5cdFx0b3B0aW9uIHtcclxuXHRcdFx0Y29sb3I6ICRzYXBwaGlyZS0xMDA7XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHRzdmcge1xyXG5cdFx0cmlnaHQ6IDQzcHg7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB0b3A6IDhweDtcclxuICAgIHdpZHRoOiAxNHB4O1xyXG4gICAgaGVpZ2h0OiAyNHB4O1xyXG4gICAgdHJhbnNpdGlvbjogYWxsIDI1MG1zIGVhc2U7XHJcblx0XHRjb2xvcjogJHdoaXRlLTEwMDtcclxuXHR9XHJcbn1cclxuXHJcbi5sb2NhdGlvbi1zZWFyY2hfX3RlYXNlci1pY29uIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblx0d2lkdGg6IDQ0cHg7XHJcblx0aGVpZ2h0OiA0NHB4O1xyXG5cdG1hcmdpbi1yaWdodDogMTBweDtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkc2FwcGhpcmUtMjA7XHJcblx0Ym9yZGVyLXJhZGl1czogOHB4O1xyXG5cclxuXHRzdmcge1xyXG5cdFx0d2lkdGg6IGF1dG87XHJcblx0XHRoZWlnaHQ6IDMycHg7XHJcblx0XHRjb2xvcjogJHNhcHBoaXJlLTEwMDtcclxuXHR9XHJcbn1cclxuXHJcbiIsIi5uYXZpZ2F0aW9uLW1vYmlsZSB7XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1sYW5kc2NhcGUtZG93bicpIHtcclxuXHRcdGhlaWdodDogY2FsYygxMDAlIC0gODBweCk7XHJcblx0XHRtYXJnaW4tdG9wOiA4MHB4O1xyXG5cdH1cclxuXHJcblx0cG9zaXRpb246IGZpeGVkO1xyXG5cdHRvcDogMTAwdmg7XHJcblx0cmlnaHQ6IDA7XHJcblx0Ym90dG9tOiAwO1xyXG5cdGxlZnQ6IDA7XHJcblx0d2lkdGg6IDEwMCU7XHJcblx0aGVpZ2h0OiBjYWxjKDEwMCUgLSAxMTBweCk7XHJcblx0bWFyZ2luLXRvcDogMTEwcHg7XHJcblx0dHJhbnNpdGlvbjogYWxsIDUwMG1zIGVhc2U7XHJcblx0YmFja2dyb3VuZDogJGJvcmRlci1ibHVlLTEwMDtcclxuXHRvcGFjaXR5OiAwO1xyXG5cdHotaW5kZXg6IDk5OTtcclxuXHRvdmVyZmxvdy14OiBoaWRkZW47XHJcblxyXG5cdCYuaXMtYWN0aXZlIHtcclxuXHRcdHRvcDogMDtcclxuXHRcdG9wYWNpdHk6IDE7XHJcblx0fVxyXG5cclxuXHQmOjotd2Via2l0LXNjcm9sbGJhciB7XHJcblx0XHRkaXNwbGF5OiBub25lO1xyXG5cdH1cclxuXHJcblx0LndyYXBwZXIge1xyXG5cdFx0aGVpZ2h0OiAxMDAlO1xyXG5cdH1cclxufVxyXG5cclxuLm5hdmlnYXRpb24tbW9iaWxlX19saW5rIHtcclxuXHR3aWR0aDogMTAwJTtcclxuXHRtYXJnaW46IDgwcHggMCA0MHB4IDA7XHJcbn1cclxuXHJcblxyXG4vKipcclxuICogTWFpbiBtZW51LlxyXG4gKi9cclxuXHJcbi5uYXZpZ2F0aW9uLW1vYmlsZV9fbWFpbiB7XHJcblx0cGFkZGluZzogMTBweCAwO1xyXG5cclxuXHQ+IGxpIHtcclxuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcblx0XHQmLmN1cnJlbnRfcGFnZV9hbmNlc3RvcixcclxuXHRcdCYuY3VycmVudC1tZW51LWl0ZW0ge1xyXG5cdFx0XHQ+IGEge1xyXG5cdFx0XHRcdGNvbG9yOiAkc2FwcGhpcmUtMTAwO1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblxyXG5cdFx0Ji5pcy1hY3RpdmUge1xyXG5cdFx0XHQ+IGEge1xyXG5cdFx0XHRcdGNvbG9yOiAkc2FwcGhpcmUtMTAwO1xyXG5cclxuXHRcdFx0XHQ+IHNwYW4gc3ZnIHtcclxuXHRcdFx0XHRcdHRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHR9XHJcblxyXG5cdFx0PiBhIHtcclxuXHRcdFx0QGluY2x1ZGUgZm9udCgyMHB4LCAyNHB4KTtcclxuXHRcdFx0ZGlzcGxheTogYmxvY2s7XHJcblx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRcdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRcdGZvbnQtd2VpZ2h0OiA3MDA7XHJcblx0XHRcdGZvbnQtZmFtaWx5OiBtYXAtZ2V0KCRmb250LWZhbWlseSwgJ2hlYWRpbmcnKTtcclxuXHRcdFx0bWFyZ2luOiAyMnB4IDAgMCAwO1xyXG5cdFx0XHRjb2xvcjogJHNhcHBoaXJlLTEwMDtcclxuXHJcblx0XHRcdD4gc3BhbiB7XHJcblx0XHRcdFx0cGFkZGluZzogMCAyMHB4IDAgNXB4O1xyXG5cdFx0XHRcdGN1cnNvcjogcG9pbnRlcjtcclxuXHJcblx0XHRcdFx0c3ZnIHtcclxuXHRcdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdFx0XHRcdHRvcDogY2FsYyg1MCUgLSA4cHgpO1xyXG5cdFx0XHRcdFx0cmlnaHQ6IDA7XHJcblx0XHRcdFx0XHR3aWR0aDogMThweDtcclxuXHRcdFx0XHRcdGhlaWdodDogMThweDtcclxuXHRcdFx0XHRcdG1hcmdpbi1sZWZ0OiA1cHg7XHJcblx0XHRcdFx0XHR0cmFuc2l0aW9uOiBhbGwgNTAwbXMgZWFzZTtcclxuXHRcdFx0XHRcdGNvbG9yOiAkc2FwcGhpcmUtMTAwO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cclxuXHRcdC5zdWJtZW51LWNvbnRhaW5lciB7XHJcblx0XHRcdGRpc3BsYXk6IG5vbmU7XHJcblx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRcdFx0bWFyZ2luLXRvcDogMTBweDtcclxuXHRcdFx0cGFkZGluZy10b3A6IDIwcHg7XHJcblx0XHRcdGJvcmRlci10b3A6IDFweCBzb2xpZCAkc2FwcGhpcmUtMTAwO1xyXG5cclxuXHRcdFx0bGkge1xyXG5cdFx0XHRcdGEge1xyXG5cdFx0XHRcdFx0QGluY2x1ZGUgZm9udCgxNHB4LCAxOHB4KTtcclxuXHRcdFx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRcdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xyXG5cdFx0XHRcdFx0bWFyZ2luLWJvdHRvbTogMTBweDtcclxuXHRcdFx0XHRcdGZvbnQtd2VpZ2h0OiA2MDA7XHJcblx0XHRcdFx0XHRjb2xvcjogJHNhcHBoaXJlLTEwMDtcclxuXHJcblx0XHRcdFx0XHRzdmcge1xyXG5cdFx0XHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHRcdFx0XHRcdHRvcDogY2FsYyg1MCUgLSA4cHgpO1xyXG5cdFx0XHRcdFx0XHRyaWdodDogMDtcclxuXHRcdFx0XHRcdFx0d2lkdGg6IDE4cHg7XHJcblx0XHRcdFx0XHRcdGhlaWdodDogMThweDtcclxuXHRcdFx0XHRcdFx0bWFyZ2luLWxlZnQ6IDVweDtcclxuXHRcdFx0XHRcdFx0dHJhbnNpdGlvbjogYWxsIDUwMG1zIGVhc2U7XHJcblx0XHRcdFx0XHRcdGNvbG9yOiAkc2FwcGhpcmUtMTAwO1xyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdH1cclxuXHJcblx0XHRcdFx0LnN1Ym1lbnUtY29udGFpbmVyIHtcclxuXHRcdFx0XHRcdG1hcmdpbi1ib3R0b206IDMwcHg7XHJcblx0XHRcdFx0XHRwYWRkaW5nOiAxMHB4IDAgMCAwO1xyXG5cdFx0XHRcdFx0Ym9yZGVyOiAwO1xyXG5cclxuXHRcdFx0XHRcdGxpIHtcclxuXHRcdFx0XHRcdFx0YSB7XHJcblx0XHRcdFx0XHRcdFx0Zm9udC13ZWlnaHQ6IDQwMDtcclxuXHRcdFx0XHRcdFx0XHRwYWRkaW5nLWxlZnQ6IDIwcHg7XHJcblx0XHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHR9XHJcblxyXG5cdFx0XHRcdCYuY3VycmVudF9wYWdlX2FuY2VzdG9yLFxyXG5cdFx0XHRcdCYuY3VycmVudC1tZW51LWl0ZW0ge1xyXG5cdFx0XHRcdFx0PiBhIHtcclxuXHRcdFx0XHRcdFx0Y29sb3I6ICRzYXBwaGlyZS0xMDA7XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0fVxyXG5cclxuXHRcdFx0XHQmLmlzLWFjdGl2ZSB7XHJcblx0XHRcdFx0XHQ+IGEge1xyXG5cdFx0XHRcdFx0XHRjb2xvcjogJHNhcHBoaXJlLTEwMDtcclxuXHJcblx0XHRcdFx0XHRcdD4gc3BhbiBzdmcge1xyXG5cdFx0XHRcdFx0XHRcdHRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7XHJcblx0XHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcbn1cclxuXHJcblxyXG4vKipcclxuICogRGlzYWJsZSBzY3JvbGwuXHJcbiAqL1xyXG5cclxuYm9keS5pcy1hY3RpdmUge1xyXG5cdG92ZXJmbG93OiBoaWRkZW47XHJcblxyXG5cdC5oZWFkZXI6OmJlZm9yZSB7XHJcblx0XHRib3R0b206IDA7XHJcblx0fVxyXG59XHJcbiIsIi5uZXdzLWl0ZW0ge1xyXG5cdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtbGFuZHNjYXBlLWRvd24nKSB7XHJcblx0XHR3aWR0aDogY2FsYygxMDQwcHggLyAzKTtcclxuXHR9XHJcblxyXG5cdGFsaWduLWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcblx0d2lkdGg6IGNhbGMoMTI0MHB4IC8gMyk7XHJcblx0aGVpZ2h0OiAxMDAlO1xyXG5cdGJvcmRlci1yYWRpdXM6IDhweDtcclxuXHJcblx0Jjpob3ZlciB7XHJcblx0XHRpbWcge1xyXG5cdFx0XHR0cmFuc2Zvcm06IHNjYWxlKDEuMSk7XHJcblx0XHR9XHJcblx0fVxyXG59XHJcblxyXG4ubmV3cy1pdGVtX19pbWFnZSB7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdGhlaWdodDogMjU1cHg7XHJcblx0bWFyZ2luLWJvdHRvbTogMjBweDtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0Ym9yZGVyLXJhZGl1czogMjRweDtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG5cclxuXHRpbWcge1xyXG5cdFx0Ym9yZGVyLXJhZGl1czogMjRweDtcclxuXHRcdHRyYW5zaXRpb246IGFsbCA0MDBtcyBlYXNlO1xyXG5cdH1cclxuXHJcblx0Lm5ld3MtaXRlbV9fZGF0ZSB7XHJcblx0XHRAaW5jbHVkZSBmb250KDE0cHgsIDE4cHgpO1xyXG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0dG9wOiAyMHB4O1xyXG5cdFx0cmlnaHQ6IDIwcHg7XHJcblx0XHRwYWRkaW5nOiA1cHggMjBweDtcclxuXHRcdGJhY2tncm91bmQtY29sb3I6ICRib3JkZXItYmx1ZS0xMDA7XHJcblx0XHRib3JkZXItcmFkaXVzOiA1cHg7XHJcblx0XHRmb250LXdlaWdodDogNzAwO1xyXG5cdH1cclxufVxyXG5cclxuLm5ld3MtaXRlbV9fYm9keSB7XHJcblx0Lm5ld3MtaXRlbV9fdGl0bGUge1xyXG5cdFx0bWFyZ2luLWJvdHRvbTogMjBweDtcclxuXHR9XHJcblxyXG5cdC5uZXdzLWl0ZW1fX3RlYXNlciB7XHJcblx0XHRtYXJnaW4tYm90dG9tOiAyMHB4O1x0XHJcblx0fVxyXG5cclxuXHQubmV3cy1pdGVtX19tb3JlIHtcclxuXHRcdG1hcmdpbi1ib3R0b206IDIwcHg7XHJcblx0fVxyXG59XHJcbiIsIi5uZXdzLWxhdGVzdCB7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdG1hcmdpbi1ib3R0b206IDgwcHg7XHJcblxyXG5cdC5vd2wtc3RhZ2Utb3V0ZXIge1xyXG5cdFx0b3ZlcmZsb3c6IHZpc2libGU7XHJcblx0fVxyXG5cclxuXHQub3dsLXN0YWdlIHtcclxuXHRcdGRpc3BsYXk6IGZsZXg7XHJcblx0fVxyXG5cclxuXHQub3dsLWRvdHMge1xyXG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0bGVmdDogMDtcclxuXHRcdGJvdHRvbTogLTYwcHg7XHJcblx0XHRkaXNwbGF5OiBmbGV4O1xyXG5cdFx0anVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcclxuXHRcdG1hcmdpbi10b3A6IDUwcHg7XHJcblxyXG5cdFx0YnV0dG9uIHtcclxuXHRcdFx0ZGlzcGxheTogYmxvY2s7XHJcblx0XHRcdHdpZHRoOiAxM3B4O1xyXG5cdFx0XHRoZWlnaHQ6IDEzcHg7XHJcblx0XHRcdG1hcmdpbi1sZWZ0OiA4cHg7XHJcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRwcnVzc2lhbi1ibHVlLTIwO1xyXG5cdFx0XHRib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcclxuXHRcdFx0Ym94LXNoYWRvdzogMCAwIDAgMXB4IHRyYW5zcGFyZW50O1xyXG5cdFx0XHRib3JkZXItcmFkaXVzOiAyMHB4O1xyXG5cdFx0XHR0cmFuc2l0aW9uOiBhbGwgMjUwbXMgZWFzZTtcclxuXHJcblx0XHRcdCY6aG92ZXIsXHJcblx0XHRcdCYuYWN0aXZlIHtcclxuXHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkc2FwcGhpcmUtMTAwO1xyXG5cdFx0XHRcdGJvcmRlcjogMXB4IHNvbGlkICR3aGl0ZS0xMDA7XHJcblx0XHRcdFx0Ym94LXNoYWRvdzogMCAwIDAgMXB4ICRzYXBwaGlyZS0xMDA7XHJcblx0XHRcdH1cclxuXHJcblx0XHRcdCY6b25seS1jaGlsZCB7XHJcblx0XHRcdFx0ZGlzcGxheTogbm9uZTtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cclxufVxyXG5cclxuLm5ld3MtbGF0ZXN0LS1iYWNrZ3JvdW5kLWdyZXkge1xyXG5cdGJhY2tncm91bmQtY29sb3I6ICRib3JkZXItYmx1ZS0xMDA7XHJcblx0cGFkZGluZzogODBweCAwIDYwcHg7XHJcbn1cclxuXHJcbi5uZXdzLWxhdGVzdC0tYmFja2dyb3VuZC1ibHVlIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZC1ibHVlLTEwMDtcclxuXHRwYWRkaW5nOiA4MHB4IDAgNjBweDtcclxufVxyXG5cclxuLm5ld3MtbGF0ZXN0X190aXRsZSB7XHJcblx0bWFyZ2luLWJvdHRvbTogNTBweDtcclxufVxyXG5cclxuLm5ld3MtbGF0ZXN0X19zdWJ0aXRsZSB7XHJcblx0bWFyZ2luLWJvdHRvbTogMTBweDtcclxufVxyXG4iLCIubmV3cy1saXN0IHtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblxyXG5cdC5uZXdzLWxpc3RfX3dyYXBwZXIge1xyXG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdFx0ei1pbmRleDogMztcclxuXHR9XHJcblxyXG5cdC5uZXdzLWxpc3RfX3RpdGxlIHtcclxuXHRcdG1hcmdpbi1ib3R0b206IDUwcHg7XHJcblx0fVxyXG5cclxuXHQubmV3cy1saXN0X19zdWJ0aXRsZSB7XHJcblx0XHRtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG5cdH1cclxuXHJcblx0Lm5ld3MtbGlzdF9fd3JhcCB7XHJcblx0XHRtYXJnaW46IC0xMHB4O1xyXG5cdH1cclxuXHJcblx0Lm5ld3MtaXRlbSB7XHJcblx0XHRAaW5jbHVkZSBtZWRpYSgncGhvbmUnKSB7XHJcblx0XHRcdHdpZHRoOiBjYWxjKCgxMDAlIC0gMjBweCkgLyAxKTtcclxuXHRcdH1cclxuXHJcblx0XHRAaW5jbHVkZSBtZWRpYSgndGFibGV0LXBvcnRyYWl0Jykge1xyXG5cdFx0XHR3aWR0aDogY2FsYygoMTAwJSAtIDQwcHgpIC8gMik7XHJcblx0XHR9XHJcblxyXG5cdFx0d2lkdGg6IGNhbGMoKDEwMCUgLSA2MHB4KSAvIDMpO1xyXG5cdFx0bWFyZ2luOiAwIDEwcHggNTBweDtcclxuXHR9XHJcblxyXG5cdCY6YmVmb3JlIHtcclxuXHRcdGRpc3BsYXk6IGJsb2NrO1xyXG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0dG9wOiAwO1xyXG5cdFx0cmlnaHQ6IDA7XHJcblx0XHR3aWR0aDogMjE1cHg7XHJcblx0XHRoZWlnaHQ6IDkycHg7XHJcblx0XHRiYWNrZ3JvdW5kOiB1cmwoJy4vLi4vaW1hZ2VzL2Rlc2t0b3AtZ3JvdXAtNjUuc3ZnJykgbm8tcmVwZWF0O1xyXG5cdFx0Y29udGVudDogJyc7XHJcblx0XHR6LWluZGV4OiAxO1xyXG5cdH1cclxufVxyXG5cclxuXHJcbiIsIi5yZXZpZXctaXRlbSB7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuXHRAaW5jbHVkZSBtZWRpYSgncGhvbmUnKSB7XHJcblx0XHR3aWR0aDogMjcwcHg7XHJcblx0fVxyXG5cclxuXHRhbGlnbi1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG5cdHdpZHRoOiAzMDVweDtcclxuXHRoZWlnaHQ6IDEwMCU7XHJcblx0Ym9yZGVyOiA1cHggc29saWQgdHJhbnNwYXJlbnQ7XHJcblx0cGFkZGluZzogMjVweDtcclxuXHR0cmFuc2l0aW9uOiAzMDBtcyBlYXNlO1xyXG5cdGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZS0xMDA7XHJcblx0Ym9yZGVyLXJhZGl1czogOHB4O1xyXG5cclxuXHQmOmhvdmVyIHtcclxuXHRcdGJvcmRlcjogNXB4IHNvbGlkICRwZXJhbm8tMTAwO1xyXG5cdFx0Ym94LXNoYWRvdzogMHB4IDQwcHggODBweCAkc2FwcGhpcmUtMTU7XHJcblx0fVxyXG5cclxuXHQmOjpiZWZvcmUge1xyXG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0Ym9yZGVyOiAxcHggc29saWQgJGJvcmRlci1ibHVlLTEwMDtcclxuXHRcdGJhY2tncm91bmQ6IG5vbmU7XHJcblx0XHRjb250ZW50OiBcIlwiO1xyXG5cdFx0ZGlzcGxheTogYmxvY2s7XHJcblx0XHRib3JkZXItcmFkaXVzOiA4cHg7XHJcblx0XHR0b3A6IC01cHg7XHJcblx0XHRsZWZ0OiAtNXB4O1xyXG5cdFx0cmlnaHQ6IC01cHg7XHJcblx0XHRib3R0b206IC01cHg7XHJcblx0XHRwb2ludGVyLWV2ZW50czogbm9uZTtcclxuXHR9XHJcbn1cclxuXHJcbi5yZXZpZXctaXRlbV9fYm9keSB7XHJcblx0QGluY2x1ZGUgZm9udCgxMnB4LCAyNHB4KTtcclxufVxyXG5cclxuLnJldmlldy1pdGVtX19oZWFkIHtcclxuXHRtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG5cclxuXHQucmV2aWV3LWl0ZW1fX2xvZ28ge1xyXG5cdFx0d2lkdGg6IGNhbGMoMTAwJSAtIDg4cHgpO1xyXG5cclxuXHRcdGltZyB7XHJcblx0XHRcdGhlaWdodDogNDBweDtcclxuXHRcdFx0d2lkdGg6IGF1dG87XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHQucmV2aWV3LWl0ZW1fX3N2ZyB7XHJcblx0XHRtYXgtd2lkdGg6IDg4cHg7XHJcblx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xyXG5cdFx0d2lkdGg6IDUwJTtcclxuXHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblxyXG5cdFx0LnJhdGluZyB7XHJcblx0XHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0XHRcdGhlaWdodDogMTAwJTtcclxuXHJcblx0XHRcdHN2ZyB7XHJcblx0XHRcdFx0bWFyZ2luLXJpZ2h0OiA1cHg7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcbn0iLCIucmV2aWV3LWxhdGVzdCB7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIG1hcmdpbi1ib3R0b206IDgwcHg7XHJcblxyXG5cdC5vd2wtc3RhZ2Utb3V0ZXIge1xyXG4gICAgQGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1sYW5kc2NhcGUtZG93bicpIHtcclxuICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuXHQub3dsLWRvdHMge1xyXG5cdCAgcG9zaXRpb246IGFic29sdXRlO1xyXG5cdCAgbGVmdDogMDtcclxuXHQgIGJvdHRvbTogLTYwcHg7XHJcblx0ICBkaXNwbGF5OiBmbGV4O1xyXG5cdCAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcclxuXHQgIG1hcmdpbi10b3A6IDUwcHg7XHJcblxyXG5cdCAgYnV0dG9uIHtcclxuXHQgICAgZGlzcGxheTogYmxvY2s7XHJcblx0ICAgIHdpZHRoOiAxM3B4O1xyXG5cdCAgICBoZWlnaHQ6IDEzcHg7XHJcblx0ICAgIG1hcmdpbi1sZWZ0OiA4cHg7XHJcblx0ICAgIGJhY2tncm91bmQtY29sb3I6ICRwcnVzc2lhbi1ibHVlLTIwO1xyXG5cdCAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcclxuXHQgICAgYm94LXNoYWRvdzogMCAwIDAgMXB4IHRyYW5zcGFyZW50O1xyXG5cdCAgICBib3JkZXItcmFkaXVzOiAyMHB4O1xyXG5cdCAgICB0cmFuc2l0aW9uOiBhbGwgMjUwbXMgZWFzZTtcclxuXHJcblx0ICAgICY6aG92ZXIsXHJcblx0ICAgICYuYWN0aXZlIHtcclxuXHQgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2FwcGhpcmUtMTAwO1xyXG5cdCAgICAgIGJvcmRlcjogMXB4IHNvbGlkICR3aGl0ZS0xMDA7XHJcblx0ICAgICAgYm94LXNoYWRvdzogMCAwIDAgMXB4ICRzYXBwaGlyZS0xMDA7XHJcblx0ICAgIH1cclxuXHJcblx0ICAgICY6b25seS1jaGlsZCB7XHJcblx0ICAgICAgZGlzcGxheTogbm9uZTtcclxuXHQgICAgfVxyXG5cdCAgfVxyXG5cdH1cclxufVxyXG5cclxuLnJldmlldy1sYXRlc3RfX3dyYXBwZXIge1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICB6LWluZGV4OiAyO1xyXG59XHJcblxyXG4ucmV2aWV3LWxhdGVzdF9fd3JhcCB7XHJcbiAgLm93bC1zdGFnZSB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgZmxleC13cmFwOiB3cmFwO1xyXG4gIH1cclxufVxyXG5cclxuLnJldmlldy1sYXRlc3RfX3N1YnRpdGxlIHtcclxuICBAaW5jbHVkZSBtZWRpYSgndGFibGV0LWxhbmRzY2FwZS1kb3duJykge1xyXG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlO1xyXG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XHJcbiAgfVxyXG5cclxuICBkaXNwbGF5OiBmbGV4O1xyXG4gIGZsZXgtd3JhcDogd3JhcDtcclxuICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gIHdpZHRoOiAxMDAlO1xyXG4gIG1hcmdpbi1ib3R0b206IDEwcHg7XHJcblxyXG4gIC5yYXRpbmcge1xyXG4gICAgQGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1sYW5kc2NhcGUtZG93bicpIHtcclxuICAgICAgbWFyZ2luOiAwIDAgMTBweCAwO1xyXG4gICAgfVxyXG4gICAgXHJcbiAgICBtYXJnaW46IC01cHggMCAwIDEwcHg7XHJcbiAgfVxyXG59XHJcblxyXG4ucmV2aWV3LWxhdGVzdC0tYmFja2dyb3VuZC1ncmV5LFxyXG4ucmV2aWV3LWxhdGVzdC0tYmFja2dyb3VuZC1ibHVlIHtcclxuICAmOmJlZm9yZSB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHRvcDogMDtcclxuICAgIHJpZ2h0OiAwO1xyXG4gICAgd2lkdGg6IDIxNXB4O1xyXG4gICAgaGVpZ2h0OiA5MnB4O1xyXG4gICAgYmFja2dyb3VuZDogdXJsKCcuLy4uL2ltYWdlcy9kZXNrdG9wLWdyb3VwLTY1LnBuZycpIG5vLXJlcGVhdDtcclxuICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgei1pbmRleDogMTtcclxuICB9XHJcbn1cclxuXHJcbi5yZXZpZXctbGF0ZXN0LS1iYWNrZ3JvdW5kLWdyZXkge1xyXG4gIEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtbGFuZHNjYXBlLWRvd24nKSB7XHJcbiAgICBwYWRkaW5nOiA4MHB4IDAgMTQwcHg7XHJcbiAgfVxyXG5cclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYm9yZGVyLWJsdWUtMTAwO1xyXG4gIHBhZGRpbmc6IDgwcHggMDtcclxufVxyXG5cclxuLnJldmlldy1sYXRlc3QtLWJhY2tncm91bmQtYmx1ZSB7XHJcbiAgQGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1sYW5kc2NhcGUtZG93bicpIHtcclxuICAgIHBhZGRpbmc6IDgwcHggMCAxNDBweDtcclxuICB9XHJcblxyXG4gIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kLWJsdWUtMTAwO1xyXG4gIHBhZGRpbmc6IDgwcHggMDtcclxufVxyXG5cclxuLnJldmlldy1sYXRlc3RfX3RpdGxlIHtcclxuICBkaXNwbGF5OiBmbGV4O1xyXG4gIGZsZXgtd3JhcDogd3JhcDtcclxuICBmb250LXdlaWdodDogNDAwO1xyXG4gIG1hcmdpbi1ib3R0b206IDUwcHg7XHJcblxyXG4gIHN0cm9uZyB7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICB9XHJcbn0iLCIucmV2aWV3LWxpc3Qge1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRwYWRkaW5nLXRvcDogODBweDtcclxuXHJcblx0LnJldmlldy1saXN0X190aXRsZSB7XHJcblx0XHRtYXJnaW4tYm90dG9tOiA1MHB4O1xyXG5cdH1cclxuXHJcblx0LnJldmlldy1saXN0X193cmFwIHtcclxuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRcdHotaW5kZXg6IDM7XHJcblx0XHRtYXJnaW46IC0xMHB4O1xyXG5cdH1cclxuXHJcblx0LnJldmlldy1pdGVtIHtcclxuXHRcdEBpbmNsdWRlIG1lZGlhKCdwaG9uZScpIHtcclxuXHRcdFx0d2lkdGg6IGNhbGMoKDEwMCUgLSAyMHB4KSAvIDEpO1xyXG5cdFx0fVxyXG5cclxuXHRcdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtcG9ydHJhaXQnKSB7XHJcblx0XHRcdHdpZHRoOiBjYWxjKCgxMDAlIC0gNDBweCkgLyAyKTtcclxuXHRcdH1cclxuXHJcblx0XHRAaW5jbHVkZSBtZWRpYSgndGFibGV0LWxhbmRzY2FwZScpIHtcclxuXHRcdFx0d2lkdGg6IGNhbGMoKDEwMCUgLSA2MHB4KSAvIDMpO1xyXG5cdFx0fVxyXG5cclxuXHRcdHdpZHRoOiBjYWxjKCgxMDAlIC0gODBweCkgLyA0KTtcclxuXHRcdG1hcmdpbjogMCAxMHB4IDgwcHg7XHJcblx0XHRoZWlnaHQ6IGF1dG87XHJcblx0fVxyXG5cclxuXHQmOmJlZm9yZSB7XHJcblx0XHRkaXNwbGF5OiBibG9jaztcclxuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdHRvcDogMDtcclxuXHRcdHJpZ2h0OiAwO1xyXG5cdFx0d2lkdGg6IDIxNXB4O1xyXG5cdFx0aGVpZ2h0OiA5MnB4O1xyXG5cdFx0YmFja2dyb3VuZDogdXJsKCcuLy4uL2ltYWdlcy9kZXNrdG9wLWdyb3VwLTY1LnBuZycpIG5vLXJlcGVhdDtcclxuXHRcdGNvbnRlbnQ6ICcnO1xyXG5cdFx0ei1pbmRleDogMTtcclxuXHR9XHJcbn1cclxuIiwiLnRlYW0ge1xyXG5cdG92ZXJmbG93OiBoaWRkZW47XHJcblx0bWFyZ2luLWJvdHRvbTogODBweDtcclxuXHJcblx0LndyYXBwZXIge1xyXG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdH1cclxufVxyXG5cclxuLnRlYW0tLWJhY2tncm91bmQtYmx1ZSB7XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3Bob25lJykge1xyXG5cdFx0cGFkZGluZy1ib3R0b206IDE0NXB4O1xyXG5cdH1cclxuXHJcblx0cGFkZGluZzogODBweCAwO1xyXG5cdGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kLWJsdWUtMTAwO1xyXG59XHJcblxyXG4udGVhbS0tYmFja2dyb3VuZC13aGl0ZSB7XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3Bob25lJykge1xyXG5cdFx0bWFyZ2luLWJvdHRvbTogMTQ1cHg7XHJcblx0fVxyXG59XHJcblxyXG4udGVhbV9fc3VidGl0bGUge1xyXG5cdEBpbmNsdWRlIG1lZGlhKCdwaG9uZScpIHtcclxuXHRcdGZvbnQtc2l6ZTogMTJweDtcclxuXHR9XHJcblx0bWFyZ2luLWJvdHRvbTogMTBweDtcclxufVxyXG5cclxuLnRlYW1fX21lbWJlcnMge1xyXG5cdHBvc2l0aW9uOiBpbml0aWFsO1xyXG5cdG1heC13aWR0aDogMTAwMHB4O1xyXG5cdG1hcmdpbjogNTBweCBhdXRvO1xyXG5cdG92ZXJmbG93OiBoaWRkZW47XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuXHQub3dsLWl0ZW0gaW1nIHtcclxuXHRcdHdpZHRoOiAxOTZweDtcclxuXHR9XHJcblxyXG5cdC5vd2wtZG90cyB7XHJcblx0XHRAaW5jbHVkZSBtZWRpYSgndGFibGV0LXBvcnRyYWl0LWRvd24nKSB7XHJcblx0XHRcdGxlZnQ6IDYwcHg7XHJcblx0XHR9XHJcblx0XHRAaW5jbHVkZSBtZWRpYSgncGhvbmUnKSB7XHJcblx0XHRcdGJvdHRvbTogLTY1cHg7XHJcblx0XHRcdGxlZnQ6IDIwcHg7XHJcblx0XHR9XHJcblxyXG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0Ym90dG9tOiAwO1xyXG5cdFx0bGVmdDogNTBweDtcclxuXHRcdGRpc3BsYXk6IGZsZXg7XHJcblx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xyXG5cclxuXHRcdGJ1dHRvbiB7XHJcblx0XHRcdGRpc3BsYXk6IGJsb2NrO1xyXG5cdFx0XHR3aWR0aDogMTNweDtcclxuXHRcdFx0aGVpZ2h0OiAxM3B4O1xyXG5cdFx0XHRtYXJnaW4tbGVmdDogOHB4O1xyXG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkcHJ1c3NpYW4tYmx1ZS0yMDtcclxuXHRcdFx0Ym9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XHJcblx0XHRcdGJveC1zaGFkb3c6IDAgMCAwIDFweCB0cmFuc3BhcmVudDtcclxuXHRcdFx0Ym9yZGVyLXJhZGl1czogMjBweDtcclxuXHRcdFx0dHJhbnNpdGlvbjogYWxsIDI1MG1zIGVhc2U7XHJcblxyXG5cdFx0XHQmOmhvdmVyLFxyXG5cdFx0XHQmLmFjdGl2ZSB7XHJcblx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJHNhcHBoaXJlLTEwMDtcclxuXHRcdFx0XHRib3JkZXI6IDFweCBzb2xpZCAkd2hpdGUtMTAwO1xyXG5cdFx0XHRcdGJveC1zaGFkb3c6IDAgMCAwIDFweCAkc2FwcGhpcmUtMTAwO1xyXG5cdFx0XHR9XHJcblxyXG5cdFx0XHQmOm9ubHktY2hpbGQge1xyXG5cdFx0XHRcdGRpc3BsYXk6IG5vbmU7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdC5vd2wtbmF2IHtcclxuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdHRvcDogNTAlO1xyXG5cdFx0bGVmdDogMDtcclxuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcclxuXHRcdGRpc3BsYXk6IGZsZXg7XHJcblx0XHRmbGV4LXdyYXA6IHdyYXA7XHJcblx0XHR3aWR0aDogMTAwJTtcclxuXHRcdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuXHRcdHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG5cclxuXHRcdGJ1dHRvbiB7XHJcblx0XHRcdHBvaW50ZXItZXZlbnRzOiBhbGw7XHJcblxyXG5cdFx0XHQmLmRpc2FibGVkIHtcclxuXHRcdFx0XHRvcGFjaXR5OiAwO1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblxyXG5cdFx0c3ZnIHtcclxuXHRcdFx0d2lkdGg6IDIwcHg7XHJcblx0XHRcdGhlaWdodDogMjBweDtcclxuXHJcblx0XHRcdHBhdGgge1xyXG5cdFx0XHRcdGZpbGw6ICRwcnVzc2lhbi1ibHVlLTEwMDtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cclxufVxyXG5cclxuLnRlYW1fX21lbWJlciB7XHJcblx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG59XHJcblxyXG4udGVhbV9fbWVtYmVyLXBob3RvIHtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0d2lkdGg6IDE5NnB4O1xyXG5cdGhlaWdodDogMTk2cHg7XHJcblx0bWFyZ2luOiAwIGF1dG8gMjBweCBhdXRvO1xyXG5cdFxyXG5cdGltZyB7XHJcblx0XHRib3JkZXItcmFkaXVzOiAxMDBweDtcclxuXHR9XHJcbn1cclxuXHJcbi50ZWFtX19tZW1iZXItbmFtZSB7XHJcblx0bWFyZ2luLWJvdHRvbTogMTBweDtcclxufVxyXG5cclxuLnRlYW1fX2xpbmstd3JhcCB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHR3aWR0aDogMTAwJTtcclxufVxyXG4iLCIudGVhc2VycyB7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdG1hcmdpbi1ib3R0b206IDExMHB4O1xyXG5cclxuXHQmOmJlZm9yZSB7XHJcblx0XHRAaW5jbHVkZSBtZWRpYSgndGFibGV0LXBvcnRyYWl0LWRvd24nKSB7XHJcblx0XHRcdHdpZHRoOiAyMjBweDtcclxuXHRcdFx0aGVpZ2h0OiAzMjNweDtcclxuXHRcdFx0YmFja2dyb3VuZDogdXJsKCcuLy4uL2ltYWdlcy9tb2JpbGUtMi5zdmcnKSBuby1yZXBlYXQ7XHJcblx0XHR9XHJcblxyXG5cdFx0ZGlzcGxheTogYmxvY2s7XHJcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHRib3R0b206IC0zMHB4O1xyXG5cdFx0bGVmdDogMDtcclxuXHRcdHdpZHRoOiA1NTFweDtcclxuXHRcdGhlaWdodDogMzIzcHg7XHJcblx0XHRiYWNrZ3JvdW5kOiB1cmwoJy4vLi4vaW1hZ2VzL2Rlc2t0b3AtMi5zdmcnKSBuby1yZXBlYXQ7XHJcblx0XHRjb250ZW50OiAnJztcclxuXHRcdHotaW5kZXg6IDE7XHJcblx0fVxyXG5cclxuXHQmLmlzLWxpc3Qge1xyXG5cdFx0bWFyZ2luLWJvdHRvbTogODBweDtcclxuXHJcblx0XHQmOmJlZm9yZSB7XHJcblx0XHRcdHRvcDogY2FsYyg1MCUgLSAxNjFweCk7XHJcblx0XHRcdGJvdHRvbTogYXV0bztcclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdCoge1xyXG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdFx0ei1pbmRleDogMjtcclxuXHR9XHJcbn1cclxuXHJcbi50ZWFzZXJzLS1iYWNrZ3JvdW5kLWJsdWUge1xyXG5cdHBhZGRpbmc6IDgwcHggMDtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZC1ibHVlLTEwMDtcclxufVxyXG5cclxuLnRlYXNlcnNfX3N1YnRpdGxlIHtcclxuXHRtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG59XHJcblxyXG4udGVhc2Vyc19fdGl0bGUge1xyXG5cdG1hcmdpbi1ib3R0b206IDUwcHg7XHJcbn1cclxuXHJcblxyXG4vKipcclxuICogU2xpZGVyLlxyXG4gKi9cclxuXHJcbi50ZWFzZXJzX193cmFwLS1zbGlkZXIge1xyXG5cdC5vd2wtc3RhZ2Utb3V0ZXIge1xyXG5cdFx0b3ZlcmZsb3c6IHZpc2libGU7XHJcblx0fVxyXG5cclxuXHQub3dsLXN0YWdlIHtcclxuXHRcdGRpc3BsYXk6IGZsZXg7XHJcblx0XHRmbGV4LXdyYXA6IHdyYXA7XHJcblx0fVxyXG5cclxuXHQub3dsLWl0ZW0gaW1nIHtcclxuXHRcdHdpZHRoOiAzOHB4O1xyXG5cdH1cclxuXHJcblx0Lm93bC1kb3RzIHtcclxuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdHJpZ2h0OiAwO1xyXG5cdFx0Ym90dG9tOiAtNjBweDtcclxuXHRcdGRpc3BsYXk6IGZsZXg7XHJcblx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xyXG5cdFx0bWFyZ2luLXRvcDogNTBweDtcclxuXHJcblx0XHRidXR0b24ge1xyXG5cdFx0XHRkaXNwbGF5OiBibG9jaztcclxuXHRcdFx0d2lkdGg6IDEzcHg7XHJcblx0XHRcdGhlaWdodDogMTNweDtcclxuXHRcdFx0bWFyZ2luLWxlZnQ6IDhweDtcclxuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJHBydXNzaWFuLWJsdWUtMjA7XHJcblx0XHRcdGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xyXG5cdFx0XHRib3gtc2hhZG93OiAwIDAgMCAxcHggdHJhbnNwYXJlbnQ7XHJcblx0XHRcdGJvcmRlci1yYWRpdXM6IDIwcHg7XHJcblx0XHRcdHRyYW5zaXRpb246IGFsbCAyNTBtcyBlYXNlO1xyXG5cclxuXHRcdFx0Jjpob3ZlcixcclxuXHRcdFx0Ji5hY3RpdmUge1xyXG5cdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRzYXBwaGlyZS0xMDA7XHJcblx0XHRcdFx0Ym9yZGVyOiAxcHggc29saWQgJHdoaXRlLTEwMDtcclxuXHRcdFx0XHRib3gtc2hhZG93OiAwIDAgMCAxcHggJHNhcHBoaXJlLTEwMDtcclxuXHRcdFx0fVxyXG5cclxuXHRcdFx0Jjpvbmx5LWNoaWxkIHtcclxuXHRcdFx0XHRkaXNwbGF5OiBub25lO1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG59XHJcblxyXG5cclxuLyoqXHJcbiAqIExpc3QuXHJcbiAqL1xyXG5cclxuLnRlYXNlcnNfX3dyYXAtLWxpc3Qge1xyXG5cdEBtZWRpYSgnbWF4LXdpZHRoOiA3MDBweCcpIHtcclxuXHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0bWFyZ2luOiAtMjVweCAwO1xyXG5cdH1cclxuXHJcblx0d2lkdGg6IGNhbGMoMTAwJSArIDIwcHgpO1xyXG5cdG1hcmdpbjogLTI1cHggLTEwcHg7XHJcblxyXG5cdC50ZWFzZXJzX190ZWFzZXIge1xyXG5cdFx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1sYW5kc2NhcGUtZG93bicpIHtcclxuXHRcdFx0d2lkdGg6IGNhbGMoMzMuMzMzMyUgLSAyMHB4KTtcclxuXHRcdH1cclxuXHRcdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtcG9ydHJhaXQtZG93bicpIHtcclxuXHRcdFx0d2lkdGg6IGNhbGMoNTAlIC0gMjBweCk7XHJcblx0XHR9XHJcblx0XHRAbWVkaWEoJ21heC13aWR0aDogNzAwcHgnKSB7XHJcblx0XHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0fVxyXG5cclxuXHRcdHdpZHRoOiBjYWxjKDI1JSAtIDIwcHgpO1xyXG5cdFx0aGVpZ2h0OiBhdXRvO1xyXG5cdFx0bWFyZ2luOiAyNXB4IDEwcHg7XHJcblx0fVxyXG59XHJcblxyXG5cclxuLyoqXHJcbiAqIFRlYXNlci5cclxuICovXHJcblxyXG4udGVhc2Vyc19fdGVhc2VyIHtcclxuXHRAaW5jbHVkZSBtZWRpYSgndGFibGV0LWxhbmRzY2FwZS1kb3duJykge1xyXG5cdFx0d2lkdGg6IDI5NXB4O1xyXG5cdH1cclxuXHRAaW5jbHVkZSBtZWRpYSgndGFibGV0LXBvcnRyYWl0LWRvd24nKSB7XHJcblx0XHR3aWR0aDogMjc3cHg7XHJcblx0fVxyXG5cdEBpbmNsdWRlIG1lZGlhKCdwaG9uZScpIHtcclxuXHRcdHdpZHRoOiAyMDhweDtcclxuXHR9XHJcblxyXG5cdGFsaWduLWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcblx0d2lkdGg6IDMwNXB4O1xyXG5cdGhlaWdodDogMTAwJTtcclxuXHRwYWRkaW5nOiAzMHB4O1xyXG5cdGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZS0xMDA7XHJcblx0Ym9yZGVyLXJhZGl1czogOHB4O1xyXG5cdGJveC1zaGFkb3c6IDBweCA0MHB4IDgwcHggJHNhcHBoaXJlLTE1O1xyXG59XHJcblxyXG4udGVhc2Vyc19fdGVhc2VyLWhlYWQge1xyXG5cdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdHdpZHRoOiAxMDAlO1xyXG5cdG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbn1cclxuXHJcbi50ZWFzZXJzX190ZWFzZXItdGl0bGUge1xyXG5cdHdpZHRoOiBjYWxjKDEwMCUgLSA0NXB4KTtcclxufVxyXG5cclxuLnRlYXNlcnNfX3RlYXNlci1pbWFnZSB7XHJcblx0aW1nIHtcclxuXHRcdHdpZHRoOiAzOHB4O1xyXG5cdFx0aGVpZ2h0OiBhdXRvO1xyXG5cdH1cclxufVxyXG5cclxuLnRlYXNlcnNfX3RlYXNlci1lZGl0b3Ige1xyXG5cdGZvbnQtd2VpZ2h0OiA2MDA7XHJcbn1cclxuXHJcbi50ZWFzZXJzX190ZWFzZXItbGlzdCB7XHJcblx0d2lkdGg6IDEwMCU7XHJcblxyXG5cdGxpIHtcclxuXHRcdGRpc3BsYXk6IGZsZXg7XHJcblx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdFx0bWFyZ2luLWJvdHRvbTogMTBweDtcclxuXHJcblx0XHRzdmcge1xyXG5cdFx0XHR3aWR0aDogMTZweDtcclxuXHRcdFx0aGVpZ2h0OiBhdXRvO1xyXG5cdFx0XHRtYXJnaW4tcmlnaHQ6IDEwcHg7XHJcblx0XHRcdGNvbG9yOiAkcGVyYW5vLTEwMDtcclxuXHRcdH1cclxuXHJcblx0XHRzcGFuIHtcclxuXHRcdFx0QGluY2x1ZGUgZm9udCgxNnB4LCAyNHB4KTtcclxuXHRcdFx0d2lkdGg6IGNhbGMoMTAwJSAtIDI2cHgpO1xyXG5cdFx0fVxyXG5cclxuXHRcdCY6bGFzdC1vZi10eXBlIHtcclxuXHRcdFx0bWFyZ2luLWJvdHRvbTogMDtcclxuXHRcdH1cclxuXHR9XHJcbn1cclxuXHJcbi50ZWFzZXJzX190ZWFzZXItbGluayB7XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3Bob25lJykge1xyXG5cdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0cGFkZGluZzogMDtcclxuXHR9XHJcblxyXG5cdG1hcmdpbi10b3A6IDIwcHg7XHJcbn1cclxuIiwiLnRleHQtaW1hZ2Uge1xyXG5cdG1hcmdpbi1ib3R0b206IDgwcHg7XHJcblxyXG5cdC53cmFwcGVyIHtcclxuXHRcdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuXHR9XHJcbn1cclxuXHJcbi50ZXh0LWltYWdlLS1iYWNrZ3JvdW5kLWJsdWUge1xyXG5cdHBhZGRpbmc6IDgwcHggMDtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZC1ibHVlLTEwMDtcclxufVxyXG5cclxuLnRleHQtaW1hZ2VfX2JvZHkge1xyXG5cdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtbGFuZHNjYXBlLWRvd24nKSB7XHJcblx0XHR3aWR0aDogY2FsYyg1MCUgLSAyNXB4KTtcclxuXHR9XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3Bob25lJykge1xyXG5cdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRtYXJnaW4tYm90dG9tOiA4MHB4O1xyXG5cdH1cclxuXHJcblx0d2lkdGg6IGNhbGMoMTAwJSAtIDUwMHB4KTtcclxufVxyXG5cclxuLnRleHQtaW1hZ2VfX3N1YnRpdGxlIHtcclxuXHRtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG59XHJcblxyXG4udGV4dC1pbWFnZV9fZWRpdG9yIHtcclxuXHRtYXJnaW4tdG9wOiAzNXB4O1xyXG5cclxuXHR1bCB7XHJcblx0XHRkaXNwbGF5OiBmbGV4O1xyXG5cdFx0ZmxleC13cmFwOiB3cmFwO1xyXG5cdFx0bWFyZ2luLWJvdHRvbTogLTE1cHg7XHJcblx0fVxyXG5cclxuXHRsaSB7XHJcblx0XHRAaW5jbHVkZSBtZWRpYSgndGFibGV0LWxhbmRzY2FwZS1kb3duJykge1xyXG5cdFx0XHR3aWR0aDogMTAwJTtcclxuXHRcdH1cclxuXHJcblx0XHRkaXNwbGF5OiBmbGV4O1xyXG5cdFx0d2lkdGg6IDUwJTtcclxuXHJcblx0XHRzdmcge1xyXG5cdFx0XHR3aWR0aDogMTZweDtcclxuXHRcdFx0aGVpZ2h0OiBhdXRvO1xyXG5cdFx0XHRtYXJnaW4tcmlnaHQ6IDEwcHg7XHJcblx0XHRcdGNvbG9yOiAkcGVyYW5vLTEwMDtcclxuXHRcdH1cclxuXHR9XHJcbn1cclxuXHJcbi50ZXh0LWltYWdlX19pbWFnZS13cmFwIHtcclxuXHRAaW5jbHVkZSBtZWRpYSgndGFibGV0LWxhbmRzY2FwZS1kb3duJykge1xyXG5cdFx0d2lkdGg6IGNhbGMoNTAlIC0gMjVweCk7XHJcblx0fVxyXG5cdEBpbmNsdWRlIG1lZGlhKCdwaG9uZScpIHtcclxuXHRcdHdpZHRoOiAxMDAlO1xyXG5cdH1cclxuXHJcblx0d2lkdGg6IDQxNXB4O1xyXG59XHJcblxyXG4udGV4dC1pbWFnZV9faW1hZ2Uge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuXHRpbWcge1xyXG5cdFx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1wb3J0cmFpdC1kb3duJykge1xyXG5cdFx0XHRoZWlnaHQ6IDIwNXB4O1xyXG5cdFx0fVxyXG5cdFx0QGluY2x1ZGUgbWVkaWEoJ3Bob25lJykge1xyXG5cdFx0XHRoZWlnaHQ6IDMxNXB4O1xyXG5cdFx0fVxyXG5cclxuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRcdHdpZHRoOiBhdXRvO1xyXG5cdFx0aGVpZ2h0OiAzMTVweDtcclxuXHRcdG1hcmdpbjogMCBhdXRvO1xyXG5cdFx0ei1pbmRleDogMjA7XHJcblx0fVxyXG5cclxuXHQmOmJlZm9yZSB7XHJcblx0XHRAaW5jbHVkZSBtZWRpYSgndGFibGV0LXBvcnRyYWl0LWRvd24nKSB7XHJcblx0XHRcdGhlaWdodDogMTcwcHg7XHJcblx0XHR9XHJcblx0XHRAaW5jbHVkZSBtZWRpYSgncGhvbmUnKSB7XHJcblx0XHRcdGhlaWdodDogMjU1cHg7XHJcblx0XHR9XHJcblxyXG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0Ym90dG9tOiAwO1xyXG5cdFx0bGVmdDogMDtcclxuXHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0aGVpZ2h0OiAyNTVweDtcclxuXHRcdGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kLWJsdWUtMjAwO1xyXG5cdFx0Ym9yZGVyLXJhZGl1czogNDBweCA0MHB4IDBweCA0MHB4O1xyXG5cdFx0Ym94LXNoYWRvdzogMHB4IDEwcHggMjBweCAkc2FwcGhpcmUtMTA7XHJcblx0XHRjb250ZW50OiAnJztcclxuXHRcdHotaW5kZXg6IDEwO1xyXG5cdH1cclxufVxyXG5cclxuLnRleHQtaW1hZ2VfX2ltYWdlLWNhcHRpb24ge1xyXG5cdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtcG9ydHJhaXQtZG93bicpIHtcclxuXHRcdEBpbmNsdWRlIGZvbnQoMjBweCwgMjRweCk7XHJcblx0fVxyXG5cdEBpbmNsdWRlIG1lZGlhKCdwaG9uZScpIHtcclxuXHRcdEBpbmNsdWRlIGZvbnQoMjRweCwgMjZweCk7XHJcblx0fVxyXG5cclxuXHRAaW5jbHVkZSBmb250KDI0cHgsIDI2cHgpO1xyXG5cdHdpZHRoOiAxMDAlO1xyXG5cdG1heC13aWR0aDogMzAwcHg7XHJcblx0bWFyZ2luOiAxNXB4IGF1dG87XHJcblx0Y29sb3I6ICRzYXBwaGlyZS0xMDA7XHJcblx0Zm9udC13ZWlnaHQ6IDcwMDtcclxuXHRmb250LWZhbWlseTogbWFwLWdldCgkZm9udC1mYW1pbHksICdoZWFkaW5nJyk7XHJcblx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG59IiwiLndvcmtmbG93IHtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0bWFyZ2luLWJvdHRvbTogODBweDtcclxuXHJcblx0LndyYXBwZXIge1xyXG5cdFx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1sYW5kc2NhcGUtZG93bicpIHtcclxuXHRcdFx0anVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcclxuXHRcdH1cclxuXHJcblx0XHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcblx0fVxyXG5cclxuXHQmOmFmdGVyIHtcclxuXHRcdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtbGFuZHNjYXBlLWRvd24nKSB7XHJcblx0XHRcdHRvcDogYXV0bztcclxuXHRcdFx0Ym90dG9tOiAxNDVweDtcclxuXHRcdH1cclxuXHRcdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtcG9ydHJhaXQtZG93bicpIHtcclxuXHRcdFx0d2lkdGg6IDIzMnB4O1xyXG5cdFx0XHRoZWlnaHQ6IDI4NXB4O1xyXG5cdFx0XHRiYWNrZ3JvdW5kOiB1cmwoJy4vLi4vaW1hZ2VzL21vYmlsZS0zLnN2ZycpIG5vLXJlcGVhdDtcclxuXHRcdH1cclxuXHRcdEBpbmNsdWRlIG1lZGlhKCdwaG9uZScpIHtcclxuXHRcdFx0Ym90dG9tOiA4MHB4O1xyXG5cdFx0fVxyXG5cclxuXHRcdGRpc3BsYXk6IGJsb2NrO1xyXG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0dG9wOiBjYWxjKDUwJSAtIDE0NHB4KTtcclxuXHRcdHJpZ2h0OiAwO1xyXG5cdFx0d2lkdGg6IDQ3M3B4O1xyXG5cdFx0aGVpZ2h0OiAyODhweDtcclxuXHRcdGJhY2tncm91bmQ6IHVybCgnLi8uLi9pbWFnZXMvZGVza3RvcC0zLnN2ZycpIG5vLXJlcGVhdDtcclxuXHRcdGNvbnRlbnQ6ICcnO1xyXG5cdFx0ei1pbmRleDogMTtcclxuXHR9XHJcblxyXG5cdCoge1xyXG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdFx0ei1pbmRleDogMjtcclxuXHR9XHJcbn1cclxuXHJcbi53b3JrZmxvdy0tYmFja2dyb3VuZC1ibHVlIHtcclxuXHRAaW5jbHVkZSBtZWRpYSgncGhvbmUnKSB7XHJcblx0XHRwYWRkaW5nOiA4MHB4IDAgMTQ1cHggMDtcclxuXHR9XHJcblxyXG5cdHBhZGRpbmc6IDgwcHggMDtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZC1ibHVlLTEwMDtcclxufVxyXG5cclxuLndvcmtmbG93LS1iYWNrZ3JvdW5kLXdoaXRlIHtcclxuXHQmOmFmdGVyIHtcclxuXHRcdEBpbmNsdWRlIG1lZGlhKCdkZXNrdG9wJykge1xyXG5cdFx0XHR0b3A6IGNhbGMoNTAlIC0gMTAwcHgpO1xyXG5cdFx0fVxyXG5cdFx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1sYW5kc2NhcGUtZG93bicpIHtcclxuXHRcdFx0Ym90dG9tOiAtODBweDtcclxuXHRcdH1cclxuXHR9XHJcbn1cclxuXHJcblxyXG4vKipcclxuICogU3RlcHMuXHJcbiAqL1xyXG5cclxuLndvcmtmbG93X19zdGVwcyB7XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1sYW5kc2NhcGUtZG93bicpIHtcclxuXHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0bWFyZ2luLWJvdHRvbTogODBweDtcclxuXHR9XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3Bob25lJykge1xyXG5cdFx0bWFyZ2luLWJvdHRvbTogMTIwcHg7XHJcblx0fVxyXG5cclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0d2lkdGg6IGNhbGMoNTUlIC0gNjBweCk7XHJcblx0aGVpZ2h0OiBmaXQtY29udGVudDtcclxuXHJcblx0Lm93bC1zdGFnZS1vdXRlciB7XHJcblx0XHRAaW5jbHVkZSBtZWRpYSgndGFibGV0LWxhbmRzY2FwZS1kb3duJykge1xyXG5cdFx0XHRvdmVyZmxvdzogdmlzaWJsZTtcclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdC5vd2wtc3RhZ2Uge1xyXG5cdFx0ZGlzcGxheTogZmxleDtcclxuXHR9XHJcblxyXG5cdC5vd2wtZG90cyB7XHJcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHRib3R0b206IC02M3B4O1xyXG5cdFx0bGVmdDogMDtcclxuXHRcdGRpc3BsYXk6IGZsZXg7XHJcblx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xyXG5cclxuXHRcdGJ1dHRvbiB7XHJcblx0XHRcdGRpc3BsYXk6IGJsb2NrO1xyXG5cdFx0XHR3aWR0aDogMTNweDtcclxuXHRcdFx0aGVpZ2h0OiAxM3B4O1xyXG5cdFx0XHRtYXJnaW4tbGVmdDogOHB4O1xyXG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkcHJ1c3NpYW4tYmx1ZS0yMDtcclxuXHRcdFx0Ym9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XHJcblx0XHRcdGJveC1zaGFkb3c6IDAgMCAwIDFweCB0cmFuc3BhcmVudDtcclxuXHRcdFx0Ym9yZGVyLXJhZGl1czogMjBweDtcclxuXHRcdFx0dHJhbnNpdGlvbjogYWxsIDI1MG1zIGVhc2U7XHJcblxyXG5cdFx0XHQmOmhvdmVyLFxyXG5cdFx0XHQmLmFjdGl2ZSB7XHJcblx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJHNhcHBoaXJlLTEwMDtcclxuXHRcdFx0XHRib3JkZXI6IDFweCBzb2xpZCAkd2hpdGUtMTAwO1xyXG5cdFx0XHRcdGJveC1zaGFkb3c6IDAgMCAwIDFweCAkc2FwcGhpcmUtMTAwO1xyXG5cdFx0XHR9XHJcblxyXG5cdFx0XHQmOm9ubHktY2hpbGQge1xyXG5cdFx0XHRcdGRpc3BsYXk6IG5vbmU7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdC5vd2wtaXRlbSB7XHJcblx0XHQmOm50aC1jaGlsZCgxKSB7XHJcblx0XHRcdC53b3JrZmxvd19fc3RlcC1pY29uIHtcclxuXHRcdFx0XHRzdmcge1xyXG5cdFx0XHRcdFx0Y29sb3I6ICRzbGF0ZS1ibHVlLTEwMDtcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHJcblx0XHRcdC53b3JrZmxvd19fc3RlcDpob3ZlciB7XHJcblx0XHRcdFx0LndvcmtmbG93X19zdGVwLWljb24ge1xyXG5cdFx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJHNsYXRlLWJsdWUtMjA7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHR9XHJcblxyXG5cdFx0JjpudGgtY2hpbGQoMikge1xyXG5cdFx0XHQud29ya2Zsb3dfX3N0ZXAtaWNvbiB7XHJcblx0XHRcdFx0c3ZnIHtcclxuXHRcdFx0XHRcdGNvbG9yOiAkZ3JlZW4tMTAwO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cclxuXHRcdFx0LndvcmtmbG93X19zdGVwOmhvdmVyIHtcclxuXHRcdFx0XHQud29ya2Zsb3dfX3N0ZXAtaWNvbiB7XHJcblx0XHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkZ3JlZW4tMjA7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHR9XHJcblxyXG5cdFx0JjpudGgtY2hpbGQoMykge1xyXG5cdFx0XHQud29ya2Zsb3dfX3N0ZXAtaWNvbiB7XHJcblx0XHRcdFx0c3ZnIHtcclxuXHRcdFx0XHRcdGNvbG9yOiAkeWVsbG93LTEwMDtcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHJcblx0XHRcdC53b3JrZmxvd19fc3RlcDpob3ZlciB7XHJcblx0XHRcdFx0LndvcmtmbG93X19zdGVwLWljb24ge1xyXG5cdFx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJHllbGxvdy0yMDtcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHJcblx0XHQmOm50aC1jaGlsZCg0KSB7XHJcblx0XHRcdC53b3JrZmxvd19fc3RlcC1pY29uIHtcclxuXHRcdFx0XHRzdmcge1xyXG5cdFx0XHRcdFx0Y29sb3I6ICRuYXZ5LWJsdWUtMTAwO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cclxuXHRcdFx0LndvcmtmbG93X19zdGVwOmhvdmVyIHtcclxuXHRcdFx0XHQud29ya2Zsb3dfX3N0ZXAtaWNvbiB7XHJcblx0XHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2eS1ibHVlLTIwO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cclxuXHRcdCY6bnRoLWNoaWxkKDUpIHtcclxuXHRcdFx0LndvcmtmbG93X19zdGVwLWljb24ge1xyXG5cdFx0XHRcdHN2ZyB7XHJcblx0XHRcdFx0XHRjb2xvcjogJHJlZC0xMDA7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblxyXG5cdFx0XHQud29ya2Zsb3dfX3N0ZXA6aG92ZXIge1xyXG5cdFx0XHRcdC53b3JrZmxvd19fc3RlcC1pY29uIHtcclxuXHRcdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRyZWQtMjA7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG59XHJcblxyXG4ud29ya2Zsb3dfX3N0ZXAge1xyXG5cdHdpZHRoOiAzMDVweDtcclxuXHRoZWlnaHQ6IDEwMCU7XHJcblx0cGFkZGluZzogMjBweCAyMHB4IDYwcHggMjBweDtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGUtMTAwO1xyXG5cdGJvcmRlcjogNHB4IHNvbGlkICR3aGl0ZS0xMDA7XHJcblx0Ym9yZGVyLWJvdHRvbTogMjRweCBzb2xpZCAkd2hpdGUtMTAwO1xyXG5cdGJvcmRlci1yYWRpdXM6IDI0cHg7XHJcblx0Ym94LXNoYWRvdzogMHB4IDJweCA1cHggJGJsYWNrLTU7XHJcblx0dHJhbnNpdGlvbjogYWxsIDI1MG1zIGVhc2U7XHJcblxyXG5cdCY6aG92ZXIge1xyXG5cdFx0Ym9yZGVyOiA0cHggc29saWQgJHBlcmFuby0xMDA7XHJcblx0XHRib3JkZXItYm90dG9tOiAyNHB4IHNvbGlkICRwZXJhbm8tMTAwO1xyXG5cclxuXHRcdC53b3JrZmxvd19fc3RlcC1pY29uIHtcclxuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJHNhcHBoaXJlLTIwO1xyXG5cdFx0fVxyXG5cdH1cclxufVxyXG5cclxuLndvcmtmbG93X19zdGVwLWljb24ge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHR3aWR0aDogNDRweDtcclxuXHRoZWlnaHQ6IDQ0cHg7XHJcblx0bWFyZ2luLWJvdHRvbTogMjBweDtcclxuXHRib3JkZXItcmFkaXVzOiA4cHg7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogJHdoaXRlLTEwMDtcclxuXHR0cmFuc2l0aW9uOiBhbGwgMjUwbXMgZWFzZTtcclxuXHJcblx0c3ZnIHtcclxuXHRcdHdpZHRoOiAzMnB4O1xyXG5cdFx0aGVpZ2h0OiAzMnB4O1xyXG5cdFx0Y29sb3I6ICRzYXBwaGlyZS0xMDA7XHJcblx0fVxyXG59XHJcblxyXG4ud29ya2Zsb3dfX3N0ZXAtdGl0bGUge1xyXG5cdG1hcmdpbi1ib3R0b206IDEwcHg7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBJbWFnZS5cclxuICovXHJcblxyXG4ud29yZmxvd19faW1hZ2UtY29sdW1uIHtcclxuXHRAaW5jbHVkZSBtZWRpYSgndGFibGV0LWxhbmRzY2FwZS1kb3duJykge1xyXG5cdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRtYXgtd2lkdGg6IDUyMHB4O1xyXG5cdH1cclxuXHJcblx0d2lkdGg6IGNhbGMoNDUlIC0gNjBweCk7XHJcbn1cclxuXHJcbi53b3JmbG93X3N1YnRpdGxlIHtcclxuXHRtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG59XHJcblxyXG4ud29yZmxvd19fdGl0bGUge1xyXG5cdG1hcmdpbi1ib3R0b206IDMwcHg7XHJcbn1cclxuXHJcbi53b3JmbG93X19pbWFnZSB7XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3Bob25lJykge1xyXG5cdFx0aGVpZ2h0OiAxOTBweDtcclxuXHR9XHJcblxyXG5cdHdpZHRoOiAxMDAlO1xyXG5cdGhlaWdodDogMzA1cHg7XHJcblxyXG5cdGltZyB7XHJcblx0XHRmaWx0ZXI6IGRyb3Atc2hhZG93KDBweCAxMHB4IDIwcHggJHBydXNzaWFuLWJsdWUtMTApO1xyXG5cdFx0Ym9yZGVyLXJhZGl1czogNDBweCA0MHB4IDBweCA0MHB4O1xyXG5cdH1cclxufVxyXG5cclxuLndvcmtmbG93X19saW5rLXdyYXAge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0anVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcclxuXHRtYXJnaW4tdG9wOiA0MHB4O1xyXG59IiwiLmJhbm5lciB7XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1wb3J0cmFpdC1kb3duJykge1xyXG5cdFx0d2lkdGg6IGNhbGMoMTAwJSAtIDdweCk7XHJcblx0fVxyXG5cdGJhY2tncm91bmQtY29sb3I6ICRzYXBwaGlyZS0xMDA7XHJcblx0d2lkdGg6IGNhbGMoMTAwJSAtIDM3cHgpO1xyXG5cdGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiA4NXB4O1xyXG5cdGJvcmRlcjogOHB4IHNvbGlkICRzbGF0ZS1ibHVlLTEwMDtcclxuXHRib3JkZXItdG9wOiAwO1xyXG5cdGJvcmRlci1sZWZ0OiAwO1xyXG5cdGRpc3BsYXk6IG5vbmU7XHJcblx0bWFyZ2luLWJvdHRvbTogNTBweDtcclxuXHJcblx0LndyYXBwZXIge1xyXG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdFx0bWFyZ2luLXJpZ2h0OiBhdXRvO1xyXG5cclxuXHRcdCY6YWZ0ZXIge1xyXG5cdFx0XHRAaW5jbHVkZSBtZWRpYSgndGFibGV0LXBvcnRyYWl0LWRvd24nKSB7XHJcblx0XHRcdFx0aGVpZ2h0OiAzMHB4O1xyXG5cdFx0XHRcdGJvdHRvbTogLTIwcHg7XHJcblx0XHRcdFx0cmlnaHQ6IDcwcHg7XHJcblx0XHRcdH1cclxuXHRcdFx0Y29udGVudDogJyc7XHJcblx0XHRcdHdpZHRoOiA3NXB4O1xyXG5cdFx0XHRoZWlnaHQ6IDQ1cHg7XHJcblx0XHRcdGJvcmRlci1yYWRpdXM6IDEwMHB4O1xyXG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiBoc2xhKDIxMywgMTAwJSwgOTIlLCAxKTtcclxuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0XHRyaWdodDogMjBweDtcclxuXHRcdFx0Ym90dG9tOiAtMjdweDtcclxuXHRcdH1cclxuXHJcblx0XHQmOmJlZm9yZSB7XHJcblx0XHRcdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtcG9ydHJhaXQtZG93bicpIHtcclxuXHRcdFx0XHRoZWlnaHQ6IDMwcHg7XHJcblx0XHRcdFx0Ym90dG9tOiAtMjBweDtcclxuXHRcdFx0XHRyaWdodDogMTY1cHg7XHJcblx0XHRcdH1cclxuXHRcdFx0Y29udGVudDogJyc7XHJcblx0XHRcdHdpZHRoOiAxMjBweDtcclxuXHRcdFx0aGVpZ2h0OiA0NXB4O1xyXG5cdFx0XHRib3JkZXItcmFkaXVzOiAxMDBweDtcclxuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJHBlcmFuby0xMDA7XHJcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdFx0cmlnaHQ6IDExNXB4O1xyXG5cdFx0XHRib3R0b206IC0yN3B4O1xyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0Ji5pcy1hY3RpdmUge1xyXG5cdFx0ZGlzcGxheTogZmxleDtcclxuXHR9XHJcbn1cclxuXHJcbi5iYW5uZXItY29udGVudCB7XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1wb3J0cmFpdC1kb3duJykge1xyXG5cdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRwYWRkaW5nOiAyMHB4IDA7XHJcblx0XHRwYWRkaW5nLWJvdHRvbTogMTBweDtcclxuXHR9XHJcblx0d2lkdGg6IDY1JTtcclxuXHRwYWRkaW5nOiA0MHB4IDA7XHJcbn1cclxuXHJcbi5iYW5uZXItbGluayB7XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1wb3J0cmFpdC1kb3duJykge1xyXG5cdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XHJcblx0fVxyXG5cdHdpZHRoOiAyNSU7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cclxuXHRhIHtcclxuXHRcdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtcG9ydHJhaXQtZG93bicpIHtcclxuXHRcdFx0cGFkZGluZzogMTBweCAxNnB4O1xyXG5cdFx0XHRmb250LXNpemU6IDE1cHg7XHJcblx0XHRcdG1hcmdpbi1ib3R0b206IDMwcHg7XHJcblx0XHR9XHJcblx0XHRwYWRkaW5nOiAxNnB4IDQwcHg7XHJcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZC1uYXZ5LWJsdWUtMTAwO1xyXG5cdFx0Ym9yZGVyLXJhZGl1czogMzJweCAzMnB4IDBweCAzMnB4O1xyXG5cdFx0Zm9udC13ZWlnaHQ6IDcwMDtcclxuXHRcdGZvbnQtc2l6ZTogMjBweDtcclxuXHRcdGxpbmUtaGVpZ2h0OiAyNHB4O1xyXG5cdFx0bGV0dGVyLXNwYWNpbmc6IC0wLjAyZW07XHJcblx0XHRjb2xvcjogJHNhcHBoaXJlLTEwMDtcclxuXHRcdGRpc3BsYXk6IGZsZXg7XHJcblx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdFx0Zm9udC1mYW1pbHk6IG1hcC1nZXQoJGZvbnQtZmFtaWx5LCAnYnV0dG9uJyk7XHJcblx0XHR0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLWluO1xyXG5cclxuXHRcdCY6aG92ZXIge1xyXG5cdFx0XHRwYWRkaW5nLXJpZ2h0OiA1MHB4O1xyXG5cdFx0XHRzdmcge1xyXG5cdFx0XHRcdGxlZnQ6IDEwcHg7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdHN2ZyB7XHJcblx0XHR0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLWluO1xyXG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdFx0aGVpZ2h0OiAxNnB4O1xyXG5cdFx0d2lkdGg6IDE2cHg7XHJcblx0XHRtYXJnaW4tbGVmdDogOHB4O1xyXG5cdFx0bGVmdDogMDtcclxuXHR9XHJcbn1cclxuXHJcbi5iYW5uZXItc3VidGl0bGUge1xyXG5cdGZvbnQtd2VpZ2h0OiA2MDA7XHJcblx0Zm9udC1zaXplOiAxNHB4O1xyXG5cdGxpbmUtaGVpZ2h0OiAyNHB4O1xyXG5cdGxldHRlci1zcGFjaW5nOiAwLjAzZW07XHJcblx0Y29sb3I6ICRib3JkZXItYmx1ZS0xMDA7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdGRpc3BsYXk6IGlubGluZS1mbGV4O1xyXG5cclxuXHQmOmFmdGVyIHtcclxuXHRcdGNvbnRlbnQ6ICcnO1xyXG5cdFx0d2lkdGg6IDMzcHg7XHJcblx0XHRoZWlnaHQ6IDNweDtcclxuXHRcdGJhY2tncm91bmQtY29sb3I6ICRib3JkZXItYmx1ZS0xMDA7XHJcblx0XHRib3JkZXItcmFkaXVzOiA1cHg7XHJcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHRyaWdodDogLTM3cHg7XHJcblx0XHRib3R0b206IDExcHg7XHJcblx0fVxyXG59XHJcblxyXG4uYmFubmVyLXRpdGxlIHtcclxuXHRAaW5jbHVkZSBtZWRpYSgndGFibGV0LXBvcnRyYWl0LWRvd24nKSB7XHJcblx0XHRmb250LXNpemU6IDE2cHg7XHJcblx0XHRsaW5lLWhlaWdodDogMjNweDtcclxuXHR9XHJcblx0Zm9udC1zaXplOiAyNnB4O1xyXG5cdGxpbmUtaGVpZ2h0OiAzMnB4O1xyXG5cdGxldHRlci1zcGFjaW5nOiAwLjAyZW07XHJcblx0Y29sb3I6ICRib3JkZXItYmx1ZS0xMDA7XHJcbn1cclxuXHJcbi5iYW5uZXItY2xvc2Uge1xyXG5cdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtcG9ydHJhaXQtZG93bicpIHtcclxuXHRcdHRvcDogMjBweDtcclxuXHR9XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHR0b3A6IDM3cHg7XHJcblx0cmlnaHQ6IDIwcHg7XHJcblx0cG9pbnRlci1ldmVudHM6IGFsbDtcclxuXHR6LWluZGV4OiAxMDE7XHJcblxyXG5cdHN2ZyB7XHJcblx0XHRjb2xvcjogJGJhY2tncm91bmQtbmF2eS1ibHVlLTEwMDtcclxuXHRcdGhlaWdodDogMThweDtcclxuXHRcdHdpZHRoOiAxOHB4O1xyXG5cdFx0cG9pbnRlci1ldmVudHM6IG5vbmU7XHJcblx0fVxyXG59IiwiLmxlc3NvbnMge1xyXG5cdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtcG9ydHJhaXQtZG93bicpIHtcclxuXHRcdC53cmFwcGVyIHtcclxuXHRcdFx0ZGlzcGxheTogZmxleDtcclxuXHRcdFx0ZmxleC13cmFwOiB3cmFwO1xyXG5cdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHJcblx0XHRcdC5sZXNzb24tcG9wdXAge1xyXG5cdFx0XHRcdG9yZGVyOiAxO1xyXG5cdFx0XHR9XHJcblxyXG5cdFx0XHQubGVzc29uc19fdGl0bGUge1xyXG5cdFx0XHRcdG9yZGVyOiAyO1xyXG5cdFx0XHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0XHR9XHJcblxyXG5cdFx0XHQubGVzc29uc19fd3JhcCB7XHJcblx0XHRcdFx0b3JkZXI6IDM7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcbn1cclxuXHJcbi5sZXNzb25zX190aXRsZSB7XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1wb3J0cmFpdC1kb3duJykge1xyXG5cdFx0bWFyZ2luLWJvdHRvbTogMzBweDtcclxuXHR9XHJcblx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG5cdG1hcmdpbi1ib3R0b206IDUwcHg7XHJcbn1cclxuXHJcbi5sZXNzb25zX193cmFwIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtd3JhcDogd3JhcDtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHRnYXA6IDAgMjBweDtcclxufVxyXG5cclxuLmxlc3NvbnMtaXRlbSB7XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1sYW5kc2NhcGUtZG93bicpIHtcclxuXHRcdHdpZHRoOiAyNTBweDtcclxuXHR9XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1wb3J0cmFpdC1kb3duJykge1xyXG5cdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRtYXJnaW4tYm90dG9tOiAzMHB4O1xyXG5cdH1cclxuXHR3aWR0aDogMjY2cHg7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgI0U1RjFGRjtcclxuXHRib3gtc2hhZG93OiAwcHggMTBweCAyMHB4IHJnYmEoMCwgMzUsIDc1LCAwLjEpO1xyXG5cdGJvcmRlci1yYWRpdXM6IDhweDtcclxuXHRib3JkZXItbGVmdDogMTBweCBzb2xpZDtcclxuXHRwYWRkaW5nLXRvcDogNHB4O1xyXG5cdHBhZGRpbmctbGVmdDogMjBweDtcclxuXHRwYWRkaW5nLXJpZ2h0OiAyMHB4O1xyXG5cdGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZS0xMDA7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuXHQmOm50aC1jaGlsZCgxKSB7XHJcblx0XHRib3JkZXItbGVmdC1jb2xvcjogI0EwQjhFNDtcclxuXHJcblx0XHQubGVzc29ucy1pdGVtX19sYWJlbCB7XHJcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICNFNUYxRkY7XHJcblx0XHR9XHJcblxyXG5cdFx0Lmxlc3NvbnMtaXRlbV9fb3BlbiB7XHJcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICNBMEI4RTQ7XHJcblxyXG5cdFx0XHRzdmcgcGF0aCB7XHJcblx0XHRcdFx0ZmlsbDogJHNhcHBoaXJlLTEwMDtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0JjpudGgtY2hpbGQoMikge1xyXG5cdFx0Ym9yZGVyLWxlZnQtY29sb3I6ICMwMDlDQ0Q7XHJcblxyXG5cdFx0Lmxlc3NvbnMtaXRlbV9fbGFiZWwge1xyXG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAjQ0NFQkY1O1xyXG5cdFx0fVxyXG5cclxuXHRcdC5sZXNzb25zLWl0ZW1fX29wZW4ge1xyXG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAjMDA5Q0NEO1xyXG5cclxuXHRcdFx0c3ZnIHBhdGgge1xyXG5cdFx0XHRcdGZpbGw6ICR3aGl0ZS0xMDA7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdCY6bnRoLWNoaWxkKDMpIHtcclxuXHRcdGJvcmRlci1sZWZ0LWNvbG9yOiAjN0I2MUZGO1xyXG5cclxuXHRcdC5sZXNzb25zLWl0ZW1fX2xhYmVsIHtcclxuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogI2U1ZGZmZjtcclxuXHRcdH1cclxuXHJcblx0XHRcclxuXHRcdC5sZXNzb25zLWl0ZW1fX29wZW4ge1xyXG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAjN0I2MUZGO1xyXG5cclxuXHRcdFx0c3ZnIHBhdGgge1xyXG5cdFx0XHRcdGZpbGw6ICR3aGl0ZS0xMDA7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdCYuaXMtYWN0aXZlIHtcclxuXHRcdC5sZXNzb25zLWl0ZW1fX29wZW4gc3ZnIHtcclxuXHRcdFx0dHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcclxuXHRcdH1cclxuXHR9XHJcbn1cclxuXHJcbi5sZXNzb25zLWl0ZW1fX25hbWUge1xyXG5cdGZvbnQtc2l6ZTogMTJweDtcclxuXHRsaW5lLWhlaWdodDogMjRweDtcclxuXHRsZXR0ZXItc3BhY2luZzogMC4wM2VtO1xyXG5cdGZvbnQtd2VpZ2h0OiA0MDA7XHJcblx0b3BhY2l0eTogMC44O1xyXG5cdGNvbG9yOiAkc2FwcGhpcmUtMTAwO1xyXG5cclxuXHRzcGFuIHtcclxuXHRcdGZvbnQtZmFtaWx5OiBcIlNvdXJjZSBTYW5zIFByb1wiO1xyXG5cdFx0Zm9udC13ZWlnaHQ6IDcwMDtcclxuXHR9XHJcbn1cclxuXHJcbi5sZXNzb25zLWl0ZW1fX3ByaWNlIHtcclxuXHRmb250LXN0eWxlOiBpdGFsaWM7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogZmxleC1lbmQ7XHJcblx0Zm9udC1zaXplOiAxMnB4O1xyXG5cdGxpbmUtaGVpZ2h0OiAyNHB4O1xyXG5cdGNvbG9yOiAkc2FwcGhpcmUtMTAwO1xyXG5cdGxldHRlci1zcGFjaW5nOiAwLjAzZW07XHJcblx0bWFyZ2luLWJvdHRvbTogMTVweDtcclxuXHJcblx0c3BhbiB7XHJcblx0XHRtYXJnaW4tbGVmdDogMTBweDtcclxuXHRcdGZvbnQtd2VpZ2h0OiA3MDA7XHJcblx0XHRmb250LXNpemU6IDMwcHg7XHJcblx0XHRsaW5lLWhlaWdodDogMzRweDtcclxuXHRcdGxldHRlci1zcGFjaW5nOiAwLjAyZW07XHJcblx0XHRmb250LXN0eWxlOiBub3JtYWw7XHJcblx0XHRmb250LWZhbWlseTogXCJTb3VyY2UgU2FucyBQcm9cIjtcclxuXHR9XHJcbn1cclxuXHJcbi5sZXNzb25zLWl0ZW1fX2xhYmVscyB7XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1wb3J0cmFpdC1kb3duJykge1xyXG5cdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRtYXJnaW4tYm90dG9tOiAwcHg7XHJcblx0fVxyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC13cmFwOiB3cmFwO1xyXG5cdGdhcDogMTBweDtcclxuXHRwYWRkaW5nLWJvdHRvbTogMTBweDtcclxuXHRtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG5cdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjRTVGMUZGO1xyXG59IFxyXG5cclxuLmxlc3NvbnMtaXRlbV9fbGFiZWwge1xyXG5cdHBhZGRpbmc6IDFweCA4cHg7XHJcblx0Ym9yZGVyLXJhZGl1czogMTBweDtcclxuXHRmb250LXdlaWdodDogNjAwO1xyXG5cdGZvbnQtc2l6ZTogMTNweDtcclxuXHRsaW5lLWhlaWdodDogMjRweDtcclxuXHRsZXR0ZXItc3BhY2luZzogMC4wM2VtO1xyXG5cdGNvbG9yOiAkc2FwcGhpcmUtMTAwO1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRmb250LWZhbWlseTogXCJTb3VyY2UgU2FucyBQcm9cIjtcclxuXHJcblx0c3ZnIHtcclxuXHRcdG1hcmdpbi1yaWdodDogNHB4O1xyXG5cdFx0d2lkdGg6IDE0cHg7XHJcblx0XHRoZWlnaHQ6IDI0cHg7XHJcblx0XHRwYXRoIHtcclxuXHRcdFx0ZmlsbDogJHNhcHBoaXJlLTEwMDtcclxuXHRcdH1cclxuXHR9XHJcbn1cclxuXHJcbi5sZXNzb24taXRlbV9fYnVsbGV0cG9pbnRzIHtcclxuXHRAaW5jbHVkZSBtZWRpYSgndGFibGV0LXBvcnRyYWl0LWRvd24nKSB7XHJcblx0XHRkaXNwbGF5OiBub25lO1xyXG5cdH1cclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtd3JhcDogd3JhcDtcclxuXHRtYXJnaW4tdG9wOiAxMHB4O1xyXG59XHJcblxyXG4ubGVzc29uLWl0ZW1fX2J1bGxldHBvaW50IHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtd3JhcDogd3JhcDtcclxuXHRtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG5cdHdpZHRoOiAxMDAlO1xyXG5cclxuXHQuaWNvbiBzdmd7XHJcblx0XHR3aWR0aDogMTlweDtcclxuXHRcdGhlaWdodDogMTlweDtcclxuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIFx0dG9wOiAycHg7XHJcblxyXG5cdFx0cGF0aCB7XHJcblx0XHRcdGZpbGw6ICRzYXBwaGlyZS0xMDA7XHRcclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdC50ZXh0IHtcclxuXHRcdHdpZHRoOiBjYWxjKDEwMCUgLSAzM3B4KTtcclxuXHRcdG1hcmdpbi1sZWZ0OiAxM3B4O1xyXG5cclxuXHRcdHAge1xyXG5cdFx0XHRmb250LXNpemU6IDEycHg7XHJcblx0XHRcdGxpbmUtaGVpZ2h0OiAxNjAlO1xyXG5cdFx0XHRsZXR0ZXItc3BhY2luZzogMC4wM2VtO1xyXG5cdFx0XHRmb250LXdlaWdodDogNDAwO1xyXG5cdFx0fVxyXG5cdH1cclxufVxyXG5cclxuLmxlc3Nvbi1wb3B1cCB7XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1wb3J0cmFpdC1kb3duJykge1xyXG5cdFx0bWFyZ2luLWJvdHRvbTogMjhweDtcclxuXHR9XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblx0bWFyZ2luLXRvcDogNTBweDtcclxufVxyXG5cclxuLmxlc3Nvbi1wb3B1cF9fYnV0dG9uIHtcclxuXHRAaW5jbHVkZSBtZWRpYSgndGFibGV0LXBvcnRyYWl0LWRvd24nKSB7XHJcblx0XHRmb250LXNpemU6IDE4cHg7XHJcblx0fVxyXG5cdGZvbnQtd2VpZ2h0OiA3MDA7XHJcblx0Zm9udC1zaXplOiAyMHB4O1xyXG5cdGhlaWdodDogNTZweDtcclxuXHRsaW5lLWhlaWdodDogMjRweDtcclxuXHRwYWRkaW5nOiAxNnB4IDI4cHggIWltcG9ydGFudDtcclxuXHRib3JkZXItcmFkaXVzOiAzMnB4IDMycHggMHB4IDMycHg7XHJcbn1cclxuLmxlc3Nvbi1wb3B1cF9faWZyYW1lIHtcclxuXHRAaW5jbHVkZSBtZWRpYSgndGFibGV0LXBvcnRyYWl0LWRvd24nKSB7XHJcblx0XHRtYXgtd2lkdGg6IGNhbGMoMTAwJSAtIDBweCk7XHJcblx0XHRtYXgtaGVpZ2h0OiA0MDBweDtcclxuXHRcdHRvcDogLTEwMHB4O1xyXG5cdH1cclxuXHRvcGFjaXR5OiAwO1xyXG5cdHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG5cdHRyYW5zaXRpb246IGFsbCAzMDBtcyBlYXNlLWluLW91dDtcclxuXHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0dG9wOiAtNTAwcHg7XHJcblx0bGVmdDogNTAlO1xyXG5cdHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIDApO1xyXG5cdG1heC13aWR0aDogNTcwcHg7XHJcblx0bWF4LWhlaWdodDogNTAwcHg7XHJcblx0aGVpZ2h0OiAxMDAlO1xyXG5cdHdpZHRoOiAxMDAlO1xyXG5cdGJvcmRlci1yYWRpdXM6IDcuMDE5MjNweDtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGUtMTAwO1xyXG5cdHotaW5kZXg6IDEwMDA7XHJcblxyXG5cdCYuaXMtYWN0aXZlIHtcclxuXHRcdG9wYWNpdHk6IDE7XHJcblx0XHRwb2ludGVyLWV2ZW50czogYWxsO1xyXG5cdH1cclxuXHRcclxuXHQmOjotd2Via2l0LXNjcm9sbGJhciB7XHJcblx0XHR3aWR0aDogNXB4O1xyXG5cdFx0Ym9yZGVyLXJhZGl1czogMXB4O1xyXG5cdFx0YmFja2dyb3VuZC1jb2xvcjogJHNhcHBoaXJlLTEwO1xyXG5cdFx0dHJhbnNpdGlvbjogd2lkdGggMTUwbXMgZWFzZS1pbjtcclxuXHR9XHJcblx0XHJcblx0Jjo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWIge1xyXG5cdFx0YmFja2dyb3VuZDogJHNhcHBoaXJlLTEwMDsgXHJcblx0XHRib3JkZXItcmFkaXVzOiAxMHB4O1xyXG5cdCAgfVxyXG5cclxuXHQuY2FsZW5kbHktaW5saW5lLXdpZGdldCB7XHJcblx0XHRAaW5jbHVkZSBtZWRpYSgndGFibGV0LXBvcnRyYWl0LWRvd24nKSB7XHJcblx0XHRcdG1heC1oZWlnaHQ6IDQwMHB4O1xyXG5cdFx0fVxyXG5cdFx0QGluY2x1ZGUgbWVkaWEoJ3Bob25lJykge1xyXG5cdFx0XHRtaW4td2lkdGg6IDMyMHB4ICFpbXBvcnRhbnQ7XHJcblx0XHRcdHJpZ2h0OiAyNXB4O1xyXG5cdFx0XHQvLyBtaW4td2lkdGg6IDAgIWltcG9ydGFudDtcclxuXHRcdH1cclxuXHRcdGJvcmRlci1yYWRpdXM6IDcuMDE5MjNweDtcclxuXHR9XHJcblxyXG5cdGlmcmFtZSB7XHJcblx0XHRAaW5jbHVkZSBtZWRpYSgndGFibGV0LXBvcnRyYWl0LWRvd24nKSB7XHJcblx0XHRcdG1heC13aWR0aDogY2FsYygxMDAlIC0gMHB4KTtcclxuXHRcdFx0bWF4LWhlaWdodDogNDAwcHg7XHJcblx0XHR9XHJcblx0XHRtYXgtd2lkdGg6IDU3MHB4O1xyXG5cdFx0bWF4LWhlaWdodDogNTAwcHg7XHJcblx0XHRoZWlnaHQ6IDEwMCU7XHJcblx0XHR3aWR0aDogMTAwJTtcclxuXHJcblx0XHQgIGlmcmFtZSB7XHJcblx0XHRcdCY6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcclxuXHRcdFx0XHR3aWR0aDogNXB4O1xyXG5cdFx0XHRcdGJvcmRlci1yYWRpdXM6IDFweDtcclxuXHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkc2FwcGhpcmUtMTA7XHJcblx0XHRcdFx0dHJhbnNpdGlvbjogd2lkdGggMTUwbXMgZWFzZS1pbjtcclxuXHRcdFx0fVxyXG5cclxuXHRcdFx0Jjo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWIge1xyXG5cdFx0XHRcdGJhY2tncm91bmQ6ICRzYXBwaGlyZS0xMDA7IFxyXG5cdFx0XHRcdGJvcmRlci1yYWRpdXM6IDEwcHg7XHJcblx0XHRcdCAgfVxyXG5cdFx0ICB9XHJcblx0fVxyXG59XHJcblxyXG4ubGVzc29uLXBvcHVwX19jbG9zZSB7XHJcblx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdHRvcDogLTE2cHg7XHJcblx0cmlnaHQ6IC0xNnB4O1xyXG5cdGhlaWdodDogMzJweDtcclxuXHR3aWR0aDogMzJweDtcclxuXHRib3JkZXItcmFkaXVzOiA1MHB4O1xyXG5cdGJhY2tncm91bmQtY29sb3I6ICRzYXBwaGlyZS0xMDA7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHJcblx0c3ZnIHtcclxuXHRcdGhlaWdodDogMThweDtcclxuXHRcdHdpZHRoOiAxOHB4O1xyXG5cdFx0cGF0aCB7XHJcblx0XHRcdGZpbGw6ICR3aGl0ZS0xMDA7XHJcblx0XHR9XHJcblx0fVxyXG59XHJcblxyXG4ubGVzc29ucy1pdGVtX19vcGVuIHtcclxuXHRAaW5jbHVkZSBtZWRpYSgndGFibGV0LXBvcnRyYWl0LWRvd24nKSB7XHJcblx0XHRkaXNwbGF5OiBmbGV4O1xyXG5cdH1cclxuXHR3aWR0aDogMzJweDtcclxuXHRoZWlnaHQ6IDMycHg7XHJcblx0Ym9yZGVyLXJhZGl1czogMjVweDtcclxuXHRkaXNwbGF5OiBub25lO1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdHRvcDogMzhweDtcclxuXHRyaWdodDogLTE2cHg7XHJcblxyXG5cdHN2ZyB7XHJcblx0XHR0cmFuc2l0aW9uOiBhbGwgMzAwbXMgZWFzZS1pbi1vdXQ7XHJcblx0XHR3aWR0aDogMThweDtcclxuXHRcdGhlaWdodDogMThweDtcclxuXHR9XHJcbn1cclxuXHJcbi5sZXNzb25zX19iZyB7XHJcblx0aGVpZ2h0OiAxMDB2aDtcclxuXHR3aWR0aDogMTAwdnc7XHJcblx0dG9wOiAwO1xyXG5cdHJpZ2h0OiAwO1xyXG5cdHBvc2l0aW9uOiBmaXhlZDtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkc2FwcGhpcmUtMzA7XHJcblx0b3BhY2l0eTogMDtcclxuXHRwb2ludGVyLWV2ZW50czogbm9uZTtcclxuXHR6LWluZGV4OiA5OTtcclxuXHR0cmFuc2l0aW9uOiBhbGwgMzAwbXMgZWFzZS1pbi1vdXQ7XHJcblxyXG5cdCYub3ZlcmxheSB7XHJcblx0XHRvcGFjaXR5OiAxO1xyXG5cdFx0cG9pbnRlci1ldmVudHM6IGFsbDtcclxuXHR9XHJcbn0iLCIvKipcclxuICogQ29sb3IgdXRpbGl0eSBjbGFzc2VzLlxyXG4gKlxyXG4gKiBBdXRvbWF0aWNhbGx5IGdlbmVyYXRlZCBjb2xvciBhbmQgYmFja2dyb3VuZCBjb2xvciB1dGlsaXR5IGNsYXNzZXMgYmFzZWQgb24gZXZlcnkgY29sb3IgZGVmaW5pdGlvbiBpbiBgc2V0dGluZ3MvX2NvbG9yLnNjc3NgLlxyXG4gKiBMb29wIHRocm91Z2ggZXZlcnkgYCRrZXlgIGFuZCBgJG1hcGAgaW4gdGhlIGAkY29sb3JzYCB2YXJpYWJsZSBtYXAgZGVmaW5lZCBpbiBgc2V0dGluZ3MvX2NvbG9yLnNjc3NgLlxyXG4gKi9cclxuIFxyXG5AZWFjaCAka2V5LCAkbWFwIGluICRjb2xvcnMge1xyXG5cclxuXHQvLyBMb29wIHRocm91Z2ggZXZlcnkgYCRzaGFkZWAgYW5kIGAkcmdiYCBpbiBgJG1hcGAuXHJcblx0QGVhY2ggJHNoYWRlLCAkcmdiIGluICRtYXAge1xyXG5cclxuXHRcdC8vIExvb3AgdGhyb3VnaCBldmVyeSBgY29sb3JgIGFuZCBgYmFja2dyb3VuZC1jb2xvcmAgcnVsZXMuXHJcblx0XHRAZWFjaCAkcnVsZSBpbiBjb2xvciwgYmFja2dyb3VuZC1jb2xvciB7XHJcblxyXG5cdFx0XHQvKipcclxuXHRcdFx0ICogYCN7JHJ1bGV9YCAjeyRyZ2J9LSN7JHNoYWRlfSBjb2xvciB1dGlsaXR5LlxyXG5cdFx0XHQgKi9cclxuXHJcblx0XHRcdC4jeyRydWxlfS0je3VucXVvdGUoJGtleSl9LSN7dW5xdW90ZSgkc2hhZGUpfSB7XHJcblx0XHRcdFx0I3skcnVsZX06ICRyZ2I7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcbn1cclxuIiwiLyoqXHJcbiAqIFZpc3VhbGx5IGhpZGUgYW55IGVsZW1lbnQgZnJvbSB0aGUgdXNlci5cclxuICovXHJcblxyXG4udmlzdWFsbHktaGlkZGVuIHtcclxuXHRkaXNwbGF5OiBibG9jaztcclxuXHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0d2lkdGg6IDFweDtcclxuXHRoZWlnaHQ6IDFweDtcclxuXHR3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG5cdG92ZXJmbG93OiBoaWRkZW47XHJcblx0Y2xpcDogcmVjdCgxcHgsIDFweCwgMXB4LCAxcHgpO1xyXG5cdGNsaXAtcGF0aDogaW5zZXQoMXB4KTtcclxufVxyXG5cclxuXHJcbi8qKlxyXG4gKiBNYWtlIGxhenlsb2FkIHBsYWNlaG9sZGVyIDEwMCUgd2lkZS5cclxuICovXHJcblxyXG4ubGF6eWxvYWQge1xyXG5cdHdpZHRoOiAxMDAlO1xyXG59XHJcblxyXG5cclxuLyoqXHJcbiAqIEhlbHBlciBjbGFzcyBmb3Igb2JqZWN0IGZpdCBwb2x5ZmlsbC4gQWRkIHRoaXMgY2xhc3MgdG8gYW55IGVsZW1lbnRcclxuICogdGhhdCB1dGlsaXplcyB0aGUgYG9iamVjdC1maXRgIHByb3BlcnR5LlxyXG4gKi9cclxuXHJcbiVvYmplY3QtZml0LFxyXG4ub2JqZWN0LWZpdCB7XHJcblx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdHRvcDogMDtcclxuXHRyaWdodDogMDtcclxuXHRib3R0b206IDA7XHJcblx0bGVmdDogMDtcclxuXHR3aWR0aDogMTAwJTtcclxuXHRoZWlnaHQ6IDEwMCU7XHJcblx0Zm9udC1mYW1pbHk6ICdvYmplY3QtZml0OiBjb3ZlcjsnO1xyXG5cdG9iamVjdC1maXQ6IGNvdmVyO1xyXG59XHJcblxyXG5cclxuLyoqXHJcbiAqIEFsaWduIGNlbnRlci5cclxuICovXHJcblxyXG4uYWxpZ24tY2VudGVyIHtcclxuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBBbGlnbiBsZWZ0LlxyXG4gKi9cclxuXHJcbi5hbGlnbi1sZWZ0IHtcclxuXHR0ZXh0LWFsaWduOiBsZWZ0O1xyXG59XHJcblxyXG4vKipcclxuICogQWxpZ24gcmlnaHQuXHJcbiAqL1xyXG5cclxuLmFsaWduLXJpZ2h0IHtcclxuXHR0ZXh0LWFsaWduOiByaWdodDtcclxufVxyXG4iLCIvKipcclxuICogT2JqZWN0IGZpdC5cclxuICpcclxuICogMS4gRm9udCBmYW1pbHkgcG9seWZpbGwgd2l0aCAoaHR0cHM6Ly9naXRodWIuY29tL2JmcmVkLWl0L29iamVjdC1maXQtaW1hZ2VzKS5cclxuICogTG9vcCB0aHJvdWdoIGV2ZXJ5IHZhbHVlIGZvciB0aGUgYG9iamVjdC1maXRgIHByb3BlcnR5LlxyXG4gKi9cclxuXHJcbkBlYWNoICR2YWx1ZSBpbiBmaWxsLCBjb250YWluLCBjb3Zlciwgbm9uZSwgc2NhbGUtZG93biB7XHJcblxyXG5cdC8qKlxyXG5cdCAqIGBvYmplY3QtZml0YCAjeyR2YWx1ZX0gdXRpbGl0eSBjbGFzcy5cclxuXHQgKi9cclxuXHJcblx0LiN7JHZhbHVlfSB7XHJcblx0XHRmb250LWZhbWlseTogJ29iamVjdC1maXQ6ICN7JHZhbHVlfTsnOyAvKiAxICovXHJcblx0XHRvYmplY3QtZml0OiAjeyR2YWx1ZX07XHJcblx0fVxyXG59XHJcbiIsIi8qKlxyXG4gKiBQb3NpdGlvbiB1dGlsaXR5IGNsYXNzLlxyXG4gKi9cclxuXHJcbkBlYWNoICR2YWx1ZSBpbiBzdGF0aWMsIHJlbGF0aXZlLCBhYnNvbHV0ZSwgZml4ZWQsIHN0aWNreSB7XHJcblx0LiN7JHZhbHVlfSB7XHJcblx0XHRwb3NpdGlvbjogJHZhbHVlO1xyXG5cdH1cclxufVxyXG4iLCJcclxuLyoqXHJcbiAqIEZvbnQgZmFtaWx5IHV0aWxpdHkgY2xhc3Nlcy5cclxuICovXHJcblxyXG5AZWFjaCAka2V5LCAkYnJlYWtwb2ludCBpbiAkYnJlYWtwb2ludHMge1xyXG5cdEBpbmNsdWRlIG1lZGlhKCRicmVha3BvaW50KSB7XHJcblx0XHRAZWFjaCAkcHJvcGVydHksICR2YWx1ZSBpbiAkZm9udC1mYW1pbHkge1xyXG5cdFx0XHQudGV4dC0jeyRrZXl9LSN7JHByb3BlcnR5fSB7XHJcblx0XHRcdFx0Zm9udC1mYW1pbHk6IG1hcC1nZXQoJGZvbnQtZmFtaWx5LCAkcHJvcGVydHkpO1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG59XHJcblxyXG5cclxuLyoqXHJcbiAqIFRleHQgc2l6ZSB1dGlsaXR5IGNsYXNzZXMuXHJcbiAqL1xyXG5cclxuQGVhY2ggJGtleSwgJGJyZWFrcG9pbnQgaW4gJGJyZWFrcG9pbnRzIHtcclxuXHRAaW5jbHVkZSBtZWRpYSgkYnJlYWtwb2ludCkge1xyXG5cdFx0QGVhY2ggJHByb3BlcnR5LCAkdmFsdWUgaW4gJGZvbnQtc2l6ZSB7XHJcblx0XHRcdC50ZXh0LSN7JGtleX0tI3skcHJvcGVydHl9IHtcclxuXHRcdFx0XHRAaW5jbHVkZSB0ZXh0KCRwcm9wZXJ0eSk7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcbn1cclxuXHJcblxyXG4vKipcclxuICogVGV4dCBhbGlnbm1lbnQgdXRpbGl0eSBjbGFzc2VzLlxyXG4gKi9cclxuXHJcbkBlYWNoICRrZXksICRicmVha3BvaW50IGluICRicmVha3BvaW50cyB7XHJcblx0QGluY2x1ZGUgbWVkaWEoJGJyZWFrcG9pbnQpIHtcclxuXHRcdEBlYWNoICRkaXJlY3Rpb24gaW4gbGVmdCwgcmlnaHQsIGNlbnRlciB7XHJcblx0XHRcdC50ZXh0LSN7JGtleX0tI3skZGlyZWN0aW9ufSB7XHJcblx0XHRcdFx0dGV4dC1hbGlnbjogJGRpcmVjdGlvbjtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cclxufVxyXG5cclxuXHJcbi8qKlxyXG4gKiBGb250IHdlaWdodCB1dGlsaXR5IGNsYXNzZXMuXHJcbiAqXHJcbiAqIDEuIE11bHRpcGx5IGxvb3BlZCBpbnRlZ2VyIGJ5IDEwMCBmb3IgY29ycmVjdCBmb250IHdlaWdodCB2YWx1ZS5cclxuICovXHJcblxyXG5AZWFjaCAka2V5LCAkYnJlYWtwb2ludCBpbiAkYnJlYWtwb2ludHMge1xyXG5cdEBpbmNsdWRlIG1lZGlhKCRicmVha3BvaW50KSB7XHJcblx0XHRAZm9yICRpIGZyb20gMSB0aHJvdWdoIDkge1xyXG5cdFx0XHQkaTogJGkgKiAxMDA7IC8vIFsxXVxyXG5cclxuXHRcdFx0LnRleHQtI3ska2V5fS0jeyRpfSB7XHJcblx0XHRcdFx0Zm9udC13ZWlnaHQ6ICN7JGl9O1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG59XHJcblxyXG5cclxuLyoqXHJcbiAqIFRleHQgdHJhbnNmb3JtIHVpdGxpdHkgY2xhc3Nlcy5cclxuICovXHJcblxyXG5AZWFjaCAka2V5LCAkYnJlYWtwb2ludCBpbiAkYnJlYWtwb2ludHMge1xyXG5cdEBpbmNsdWRlIG1lZGlhKCRicmVha3BvaW50KSB7XHJcblx0XHRAZWFjaCAkdHJhbnNmb3JtIGluIGNhcGl0YWxpemUsIHVwcGVyY2FzZSwgbG93ZXJjYXNlLCBub25lLCBmdWxsLXdpZHRoIHtcclxuXHRcdFx0LnRleHQtI3ska2V5fS0jeyR0cmFuc2Zvcm19IHtcclxuXHRcdFx0XHR0ZXh0LXRyYW5zZm9ybTogJHRyYW5zZm9ybTtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cclxufVxyXG4iLCIvKipcclxuICogVmVydGljYWwgUmh5dGhtLlxyXG4gKi9cclxuIFxyXG5AZm9yICRpIGZyb20gMCB0aHJvdWdoIDEwIHtcclxuXHQkaTogJGkgKiA4O1xyXG5cclxuXHQudnItI3skaX0ge1xyXG5cdFx0bWFyZ2luLWJvdHRvbTogI3skaX1weDtcclxuXHR9XHJcbn1cclxuIiwiLyoqXHJcbiAqIFV0aWxpdHkgY2xhc3NlcyBmb3IgbWFuaXB1bGF0aW5nIHN0YWNraW5nIG9yZGVyIGluIEhUTUwuXHJcbiAqL1xyXG5cclxuQGVhY2ggJGtleSwgJHZhbHVlIGluICR6LWluZGV4IHtcclxuXHQuei1pbmRleC0jeyRrZXl9IHtcclxuXHRc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QjtJUTJCakMsT0FBTyxFQUFFLENBQUMsQ0FBQyxJQUFhLEdBQ3hCO0VBUUE7O09BRUc7RUFFSCxBQUFBLFlBQVksQ0FBVTtJQUNyQixXQUFXLEVSekNQLFNBQTRCLEdRMENoQztFQXRCRjs7TUFFRztFQUVILEFBQUEsU0FBUyxDQUFVO0lBQ2xCLElBQUksRUFBRSxRQUFRO0lBQ2QsS0FBSyxFUjFCQSxHQUE0QjtJUTJCakMsT0FBTyxFQUFFLENBQUMsQ0FBQyxJQUFhLEdBQ3hCO0VBUUE7O09BRUc7RUFFSCxBQUFBLFlBQVksQ0FBVTtJQUNyQixXQUFXLEVSekNQLEdBQTRCLEdRMENoQztFQXRCRjs7TUFFRztFQUVILEFBQUEsU0FBUyxDQUFVO0lBQ2xCLElBQUksRUFBRSxRQUFRO0lBQ2QsS0FBSyxFUjFCQSxTQUE0QjtJUTJCakMsT0FBTyxFQUFFLENBQUMsQ0FBQyxJQUFhLEdBQ3hCO0VBUUE7O09BRUc7RUFFSCxBQUFBLFlBQVksQ0FBVTtJQUNyQixXQUFXLEVSekNQLFNBQTRCLEdRMENoQztFQXRCRjs7TUFFRztFQUVILEFBQUEsU0FBUyxDQUFVO0lBQ2xCLElBQUksRUFBRSxRQUFRO0lBQ2QsS0FBSyxFUjFCQSxTQUE0QjtJUTJCakMsT0FBTyxFQUFFLENBQUMsQ0FBQyxJQUFhLEdBQ3hCO0VBUUE7O09BRUc7RUFFSCxBQUFBLFlBQVksQ0FBVTtJQUNyQixXQUFXLEVSekNQLFNBQTRCLEdRMENoQztFQXRCRjs7TUFFRztFQUVILEFBQUEsU0FBUyxDQUFVO0lBQ2xCLElBQUksRUFBRSxRQUFRO0lBQ2QsS0FBSyxFUjFCQSxHQUE0QjtJUTJCakMsT0FBTyxFQUFFLENBQUMsQ0FBQyxJQUFhLEdBQ3hCO0VBUUE7O09BRUc7RUFFSCxBQUFBLFlBQVksQ0FBVTtJQUNyQixXQUFXLEVSekNQLEdBQTRCLEdRMENoQztFQXRCRjs7TUFFRztFQUVILEFBQUEsU0FBUyxDQUFVO0lBQ2xCLElBQUksRUFBRSxRQUFRO0lBQ2QsS0FBSyxFUjFCQSxTQUE0QjtJUTJCakMsT0FBTyxFQUFFLENBQUMsQ0FBQyxJ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LFNBQVMsRUFBRSxLQUFLO0VNckV2Qzs7TUFFRztFQUVILEFBQUEsU0FBUyxDQUFVO0lBQ2xCLElBQUksRUFBRSxRQUFRO0lBQ2QsS0FBSyxFUjFCQSxRQUE0QjtJUTJCakMsT0FBTyxFQUFFLENBQUMsQ0FBQyxJQUFhLEdBQ3hCO0VBUUE7O09BRUc7RUFFSCxBQUFBLFlBQVksQ0FBVTtJQUNyQixXQUFXLEVSekNQLFFBQTRCLEdRMENoQztFQXRCRjs7TUFFRztFQUVILEFBQUEsU0FBUyxDQUFVO0lBQ2xCLElBQUksRUFBRSxRQUFRO0lBQ2QsS0FBSyxFUjFCQSxTQUE0QjtJUTJCakMsT0FBTyxFQUFFLENBQUMsQ0FBQyxJQUFhLEdBQ3hCO0VBUUE7O09BRUc7RUFFSCxBQUFBLFlBQVksQ0FBVTtJQUNyQixXQUFXLEVSekNQLFNBQTRCLEdRMENoQztFQXRCRjs7TUFFRztFQUVILEFBQUEsU0FBUyxDQUFVO0lBQ2xCLElBQUksRUFBRSxRQUFRO0lBQ2QsS0FBSyxFUjFCQSxHQUE0QjtJUTJCakMsT0FBTyxFQUFFLENBQUMsQ0FBQyxJQUFhLEdBQ3hCO0VBUUE7O09BRUc7RUFFSCxBQUFBLFlBQVksQ0FBVTtJQUNyQixXQUFXLEVSekNQLEdBQTRCLEdRMENoQztFQXRCRjs7TUFFRztFQUVILEFBQUEsU0FBUyxDQUFVO0lBQ2xCLElBQUksRUFBRSxRQUFRO0lBQ2QsS0FBSyxFUjFCQSxTQUE0QjtJUTJCakMsT0FBTyxFQUFFLENBQUMsQ0FBQyxJQUFhLEdBQ3hCO0VBUUE7O09BRUc7RUFFSCxBQUFBLFlBQVksQ0FBVTtJQUNyQixXQUFXLEVSekNQLFNBQTRCLEdRMENoQztFQXRCRjs7TUFFRztFQUVILEFBQUEsU0FBUyxDQUFVO0lBQ2xCLElBQUksRUFBRSxRQUFRO0lBQ2QsS0FBSyxFUjFCQSxTQUE0QjtJUTJCakMsT0FBTyxFQUFFLENBQUMsQ0FBQyxJQUFhLEdBQ3hCO0VBUUE7O09BRUc7RUFFSCxBQUFBLFlBQVksQ0FBVTtJQUNyQixXQUFXLEVSekNQLFNBQTRCLEdRMENoQztFQXRCRjs7TUFFRztFQUVILEFBQUEsU0FBUyxDQUFVO0lBQ2xCLElBQUksRUFBRSxRQUFRO0lBQ2QsS0FBSyxFUjFCQSxHQUE0QjtJUTJCakMsT0FBTyxFQUFFLENBQUMsQ0FBQyxJQUFhLEdBQ3hCO0VBUUE7O09BRUc7RUFFSCxBQUFBLFlBQVksQ0FBVTtJQUNyQixXQUFXLEVSekNQLEdBQTRCLEdRMENoQztFQXRCRjs7TUFFRztFQUVILEFBQUEsU0FBUyxDQUFVO0lBQ2xCLElBQUksRUFBRSxRQUFRO0lBQ2QsS0FBSyxFUjFCQSxTQUE0QjtJUTJCakMsT0FBTyxFQUFFLENBQUMsQ0FBQyxJQUFhLEdBQ3hCO0VBUUE7O09BRUc7RUFFSCxBQUFBLFlBQVksQ0FBVTtJQUNyQixXQUFXLEVSekNQLFNBQTRCLEdRMENoQztFQXRCRjs7TUFFRztFQUVILEFBQUEsU0FBUyxDQUFVO0lBQ2xCLElBQUksRUFBRSxRQUFRO0lBQ2QsS0FBSyxFUjFCQSxTQUE0QjtJUTJCakMsT0FBTyxFQUFFLENBQUMsQ0FBQyxJQUFhLEdBQ3hCO0VBUUE7O09BRUc7RUFFSCxBQUFBLFlBQVksQ0FBVTtJQUNyQixXQUFXLEVSekNQLFNBQTRCLEdRMENoQztFQXRCRjs7TUFFRztFQUVILEFBQUEsU0FBUyxDQUFVO0lBQ2xCLElBQUksRUFBRSxRQUFRO0lBQ2QsS0FBSyxFUjFCQSxHQUE0QjtJUTJCakMsT0FBTyxFQUFFLENBQUMsQ0FBQyxJQUFhLEdBQ3hCO0VBUUE7O09BRUc7RUFFSCxBQUFBLFlBQVksQ0FBVTtJQUNyQixXQUFXLEVSekNQLEdBQTRCLEdRMENoQztFQXRCRjs7TUFFRztFQUVILEFBQUEsVUFBVSxDQUFTO0lBQ2xCLElBQUksRUFBRSxRQUFRO0lBQ2QsS0FBSyxFUjFCQSxTQUE0QjtJUTJCakMsT0FBTyxFQUFFLENBQUMsQ0FBQyxJQUFhLEdBQ3hCO0VBUUE7O09BRUc7RUFFSCxBQUFBLGFBQWEsQ0FBUztJQUNyQixXQUFXLEVSekNQLFNBQTRCLEdRMENoQztFQXRCRjs7TUFFRztFQUVILEFBQUEsVUFBVSxDQUFTO0lBQ2xCLElBQUksRUFBRSxRQUFRO0lBQ2QsS0FBSyxFUjFCQSxTQUE0QjtJUTJCakMsT0FBTyxFQUFFLENBQUMsQ0FBQyxJQUFhLEdBQ3hCO0VBUUE7O09BRUc7RUFFSCxBQUFBLGFBQWEsQ0FBUztJQUNyQixXQUFXLEVSekNQLFNBQTRCLEdRMENoQztFQXRCRjs7TUFFRztFQUVILEFBQUEsVUFBVSxDQUFTO0lBQ2xCLElBQUksRUFBRSxRQUFRO0lBQ2QsS0FBSyxFUjFCQSxJQUE0QjtJUTJCakMsT0FBTyxFQUFFLENBQUMsQ0FBQyxJQUFhLEdBQ3hCO0VBc0JEOztNQUVHO0VBRUgsQUFBQSxpQkFBaUIsQ0FBUTtJQUN4QixXQUFXLEVBUEcsT0FBTyxHQVFyQjtFQU5EOztNQUVHO0VBRUgsQUFBQSxnQkFBZ0IsQ0FBUztJQUN4QixXQUFXLEVBUFksTUFBTSxHQVE3QjtFQU5EOztNQUVHO0VBRUgsQUFBQSxvQkFBb0IsQ0FBSztJQUN4QixXQUFXLEVBUG9CLFVBQVUsR0FRekM7RUFORDs7TUFFRztFQUVILEFBQUEsa0JBQWtCLENBQU87SUFDeEIsV0FBVyxFQVBnQyxRQUFRLEdBUW5EO0VBTkQ7O01BRUc7RUFFSCxBQUFBLGtCQUFrQixDQUFPO0lBQ3hCLFdBQVcsRUFQMEMsUUFBUSxHQVE3RDtFQU9EOztNQUVHO0VBRUgsQUFBQSxpQkFBaUIsQ0FBVTtJQUMxQixlQUFlLEVBUEQsS0FBSyxHQVFuQjtFQU5EOztNQUVHO0VBRUgsQUFBQSxrQkFBa0IsQ0FBUztJQUMxQixlQUFlLEVBUE0sTUFBTSxHQVEzQjtFQU5EOztNQUVHO0VBRUgsQUFBQSx5QkFBeUIsQ0FBRTtJQUMxQixlQUFlLEVBUGMsYUFBYSxHQVExQztFQU5EOztNQUVHO0VBRUgsQUFBQSx3QkFBd0IsQ0FBRztJQUMxQixlQUFlLEVBUDZCLFlBQVksR0FReEQ7RUFORDs7TUFFRztFQUVILEFBQUEsd0JBQXdCLENBQUc7SUFDMUIsZUFBZSxFQVAyQyxZQUFZLEdBUXRFO0VBT0Q7O01BRUc7RUFFSCxBQUFBLGNBQWMsQ0FBZTtJQUM1QixZQUFxQixFQUFVLENBQUMsR0FDaEM7RUFORDs7TUFFRztFQUVILEFBQUEsZUFBZSxDQUFjO0lBQzVCLGFBQXFCLEVBQVUsQ0FBQyxHQUNoQztFQUlGOztLQUVHO0VBRUgsQUFBQSxTQUFTLENBQU07SUFDZCxLQUFLLEVBQUUsRUFBRSxHQUNUO0VBR0Q7O0tBRUc7RUFFSCxBQUFBLFFBQVEsQ0FBTTtJQUNiLEtBQUssRUFBRSxDQUFDLEdBQ1I7RUFHRDs7S0FFRztFQUVILEFBQUEsV0FBVyxDQUFNO0lBQ2hCLGNBQWMsRUFBRSxXQUFXLEdBQzNCOztBTmpDRCxNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO0VNekR2Qzs7TUFFRztFQUVILEFBQUEsU0FBUyxDQUFVO0lBQ2xCLElBQUksRUFBRSxRQUFRO0lBQ2QsS0FBSyxFUjFCQSxRQUE0QjtJUTJCakMsT0FBTyxFQUFFLENBQUMsQ0FBQyxJQUFhLEdBQ3hCO0VBUUE7O09BRUc7RUFFSCxBQUFBLFlBQVksQ0FBVTtJQUNyQixXQUFXLEVSekNQLFFBQTRCLEdRMENoQztFQXRCRjs7TUFFRztFQUVILEFBQUEsU0FBUyxDQUFVO0lBQ2xCLElBQUksRUFBRSxRQUFRO0lBQ2QsS0FBSyxFUjFCQSxTQUE0QjtJUTJCakMsT0FBTyxFQUFFLENBQUMsQ0FBQyxJQUFhLEdBQ3hCO0VBUUE7O09BRUc7RUFFSCxBQUFBLFlBQVksQ0FBVTtJQUNyQixXQUFXLEVSekNQLFNBQTRCLEdRMENoQztFQXRCRjs7TUFFRztFQUVILEFBQUEsU0FBUyxDQUFVO0lBQ2xCLElBQUksRUFBRSxRQUFRO0lBQ2QsS0FBSyxFUjFCQSxHQUE0QjtJUTJCakMsT0FBTyxFQUFFLENBQUMsQ0FBQyxJQUFhLEdBQ3hCO0VBUUE7O09BRUc7RUFFSCxBQUFBLFlBQVksQ0FBVTtJQUNyQixXQUFXLEVSekNQLEdBQTRCLEdRMENoQztFQXRCRjs7TUFFRztFQUVILEFBQUEsU0FBUyxDQUFVO0lBQ2xCLElBQUksRUFBRSxRQUFRO0lBQ2QsS0FBSyxFUjFCQSxTQUE0QjtJUTJCakMsT0FBTyxFQUFFLENBQUMsQ0FBQyxJQUFhLEdBQ3hCO0VBUUE7O09BRUc7RUFFSCxBQUFBLFlBQVksQ0FBVTtJQUNyQixXQUFXLEVSekNQLFNBQTRCLEdRMENoQztFQXRCRjs7TUFFRztFQUVILEFBQUEsU0FBUyxDQUFVO0lBQ2xCLElBQUksRUFBRSxRQUFRO0lBQ2QsS0FBSyxFUjFCQSxTQUE0QjtJUTJCakMsT0FBTyxFQUFFLENBQUMsQ0FBQyxJQUFhLEdBQ3hCO0VBUUE7O09BRUc7RUFFSCxBQUFBLFlBQVksQ0FBVTtJQUNyQixXQUFXLEVSekNQLFNBQTRCLEdRMENoQztFQXRCRjs7TUFFRztFQUVILEFBQUEsU0FBUyxDQUFVO0lBQ2xCLElBQUksRUFBRSxRQUFRO0lBQ2QsS0FBSyxFUjFCQSxHQUE0QjtJUTJCakMsT0FBTyxFQUFFLENBQUMsQ0FBQyxJQUFhLEdBQ3hCO0VBUUE7O09BRUc7RUFFSCxBQUFBLFlBQVksQ0FBVTtJQUNyQixXQUFXLEVSekNQLEdBQTRCLEdRMENoQztFQXRCRjs7TUFFRztFQUVILEFBQUEsU0FBUyxDQUFVO0lBQ2xCLElBQUksRUFBRSxRQUFRO0lBQ2QsS0FBSyxFUjFCQSxTQUE0QjtJUTJCakMsT0FBTyxFQUFFLENBQUMsQ0FBQyxJQUFhLEdBQ3hCO0VBUUE7O09BRUc7RUFFSCxBQUFBLFlBQVksQ0FBVTtJQUNyQixXQUFXLEVSekNQLFNBQTRCLEdRMENoQztFQXRCRjs7TUFFRztFQUVILEFBQUEsU0FBUyxDQUFVO0lBQ2xCLElBQUksRUFBRSxRQUFRO0lBQ2QsS0FBSyxFUjFCQSxTQUE0QjtJUTJCakMsT0FBTyxFQUFFLENBQUMsQ0FBQyxJQUFhLEdBQ3hCO0VBUUE7O09BRUc7RUFFSCxBQUFBLFlBQVksQ0FBVTtJQUNyQixXQUFXLEVSekNQLFNBQTRCLEdRMENoQztFQXRCRjs7TUFFRztFQUVILEFBQUEsU0FBUyxDQUFVO0lBQ2xCLElBQUksRUFBRSxRQUFRO0lBQ2QsS0FBSyxFUjFCQSxHQUE0QjtJUTJCakMsT0FBTyxFQUFFLENBQUMsQ0FBQyxJQUFhLEdBQ3hCO0VBUUE7O09BRUc7RUFF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TUFFRztFQUVILEFBQUEsU0FBUyxDQUFVO0lBQ2xCLElBQUksRUFBRSxRQUFRO0lBQ2QsS0FBSyxFUjFCQSxHQUE0QjtJUTJCakMsT0FBTyxFQUFFLENBQUMsQ0FBQyxJQUFhLEdBQ3hCO0VBUUE7O09BRUc7RUFFSCxBQUFBLFlBQVksQ0FBVTtJQUNyQixXQUFXLEVSekNQLEdBQTRCLEdRMENoQztFQXRCRjs7TUFFRztFQUVILEFBQUEsU0FBUyxDQUFVO0lBQ2xCLElBQUksRUFBRSxRQUFRO0lBQ2QsS0FBSyxFUjFCQSxTQUE0QjtJUTJCakMsT0FBTyxFQUFFLENBQUMsQ0FBQyxJQUFhLEdBQ3hCO0VBUUE7O09BRUc7RUFFSCxBQUFBLFlBQVksQ0FBVTtJQUNyQixXQUFXLEVSekNQLFNBQTRCLEdRMENoQztFQXRCRjs7TUFFRztFQUVILEFBQUEsU0FBUyxDQUFVO0lBQ2xCLElBQUksRUFBRSxRQUFRO0lBQ2QsS0FBSyxFUjFCQSxTQUE0QjtJUTJCakMsT0FBTyxFQUFFLENBQUMsQ0FBQyxJQUFhLEdBQ3hCO0VBUUE7O09BRUc7RUFFSCxBQUFBLFlBQVksQ0FBVTtJQUNyQixXQUFXLEVSekNQLFNBQTRCLEdRMENoQztFQXRCRjs7TUFFRztFQUVILEFBQUEsU0FBUyxDQUFVO0lBQ2xCLElBQUksRUFBRSxRQUFRO0lBQ2QsS0FBSyxFUjFCQSxHQUE0QjtJUTJCakMsT0FBTyxFQUFFLENBQUMsQ0FBQyxJQUFhLEdBQ3hCO0VBUUE7O09BRUc7RUFFSCxBQUFBLFlBQVksQ0FBVTtJQUNyQixXQUFXLEVSekNQLEdBQTRCLEdRMENoQztFQXRCRjs7TUFFRztFQUVILEFBQUEsU0FBUyxDQUFVO0lBQ2xCLElBQUksRUFBRSxRQUFRO0lBQ2QsS0FBSyxFUjFCQSxTQUE0QjtJUTJCakMsT0FBTyxFQUFFLENBQUMsQ0FBQyxJQUFhLEdBQ3hCO0VBUUE7O09BRUc7RUFFSCxBQUFBLFlBQVksQ0FBVTtJQUNyQixXQUFXLEVSekNQLFNBQTRCLEdRMENoQztFQXRCRjs7TUFFRztFQUVILEFBQUEsU0FBUyxDQUFVO0lBQ2xC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 */
