/**
 * Settings.
 */
/**
 * Settings.
 */
/**
 * Font family map.
 */
/**
 * Font size map.
 */
/**
 * Line height map.
 */
/**
 * Color Map (https://convertacolor.com/).
 * Color Names (https://chir.ag/projects/name-that-color/)
 */
/**
 * Colors Variables.
 */
/**
 * Grid.
 */
/**
 * Assets.
 */
/**
 * Body.
 */
/**
 * Other.
 */
*::selection {
  background-color: #111558;
  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.625em;
  min-height: 100vh;
  background-color: #fbfbfb;
  color: #111558;
  font-family: "Nunito";
  font-weight: 400;
  text-rendering: optimizeLegibility;
  -moz-osx-font-smoothing: grayscale;
  /* 1 */
  -webkit-font-smoothing: antialiased;
  /* 2 */ }
  @media only screen and (max-width: 599px) {
    body {
      font-size: 14px;
      font-size: 1.4rem;
      line-height: 1.28571em; } }

/**
 * 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,
.newsletter-popup__title,
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.
 */
.breadcrumbs {
  background-color: #f2f2f2;
  margin-bottom: 60px; }
  @media only screen and (max-width: 899px) {
    .breadcrumbs {
      margin-bottom: 40px; } }
  .breadcrumbs .wrapper {
    justify-content: space-between;
    align-items: center; }

.breadcrumbs__wrap {
  font-size: 10px;
  font-size: 1rem;
  line-height: 1.2em;
  align-items: center;
  color: rgba(17, 21, 88, 0.5);
  font-weight: 600; }
  .breadcrumbs__wrap a {
    text-decoration: underline;
    transition: all 250ms ease; }
    .breadcrumbs__wrap a:hover {
      color: #111558; }

.breadcrumbs__back {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 38px;
  height: 40px;
  margin-right: 10px;
  background-color: #dadada; }
  .breadcrumbs__back svg {
    width: 16px;
    height: 18px;
    color: #111558; }

.breadcrumbs__label {
  margin-right: 5px; }

.breadcrumbs__yoast {
  height: 40px;
  align-items: center; }

.breadcrumbs__share {
  font-size: 10px;
  font-size: 1rem;
  line-height: 1.2em;
  height: 40px;
  align-items: center;
  color: rgba(17, 21, 88, 0.5);
  font-weight: 600; }

.breadcrumbs__share-wrap a {
  margin-left: 12px; }

.breadcrumbs__share-wrap svg {
  width: auto;
  height: 18px;
  color: #111558;
  transition: all 250ms ease; }
  .breadcrumbs__share-wrap svg:hover {
    opacity: 0.75; }

.breadcrumbs__share-wrap span {
  position: absolute;
  opacity: 0;
  z-index: -1; }

/**
 * Button.
 */

.button,
.login-container input[type=submit] {
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.125em;
  display: inline-flex;
  position: relative;
  align-items: center;
  justify-content: center;
  height: 48px;
  padding: 2px 20px 0 20px;
  font-family: "Montserrat";
  text-decoration: none;
  cursor: pointer;
  font-weight: 600;
  border-radius: 2px;
  color: #111558;
  box-shadow: 5px 5px 0px #111558;
  z-index: 2; }
  
  .button svg,
  .login-container input[type=submit] svg {
    width: 14px;
    height: 18px;
    transition: all 250ms ease; }
  
  .button.has-svg-right svg,
  .login-container input.has-svg-right[type=submit] svg {
    margin-left: 40px; }
  
  .button.has-svg-left svg,
  .login-container input.has-svg-left[type=submit] svg {
    margin-right: 40px; }
  
  .button.theme--krimpenerwaard,
  .login-container input.theme--krimpenerwaard[type=submit],
  .newsletter-popup.theme--krimpenerwaard .newsletter-popup__form .gform_footer .button,
  .newsletter-popup.theme--krimpenerwaard .newsletter-popup__form .gform_footer .login-container input[type=submit],
  .login-container .newsletter-popup.theme--krimpenerwaard .newsletter-popup__form .gform_footer input[type=submit] {
    color: white; }
  @media only screen and (min-width: 600px) {
    
    .button:hover,
    .login-container input:hover[type=submit] {
      top: 3px;
      left: 3px;
      box-shadow: 2px 2px 0px #111558; }
      
      .button:hover.has-svg-right svg,
      .login-container input:hover.has-svg-right[type=submit] svg {
        margin-left: 45px;
        margin-right: -5px; } }

/**
 * 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 .newsletter-popup__title,
.cms-output h3,
.cms-output .newsletter-popup__title,
.cms-output h4 {
  margin-bottom: 30px; }

.cms-output h5 {
  margin-bottom: 20px; }

.cms-output .is-intro {
  font-size: 22px;
  font-size: 2.2rem;
  line-height: 1.27273em;
  font-weight: 600; }
  @media only screen and (max-width: 899px) {
    .cms-output .is-intro {
      font-size: 18px;
      font-size: 1.8rem;
      line-height: 1.22222em; } }

.cms-output img {
  border-radius: 2px; }
  .cms-output img.aligncenter {
    display: block;
    margin: 0 auto; }
  .cms-output img.alignright {
    display: block;
    margin: 0 0 0 auto; }

.cms-output table {
  word-break: break-word; }
  .cms-output table td {
    vertical-align: top; }

.cms-output ul,
.cms-output ol {
  list-style-type: square;
  margin-left: 20px;
  margin-bottom: 1em; }
  .cms-output ul li,
  .cms-output ol li {
    margin-bottom: 15px; }

.cms-output ol {
  list-style-type: decimal; }

.cms-output strong {
  font-weight: bold; }

.cms-output a {
  text-decoration: underline;
  transition: all 250ms ease; }

.cms-output blockquote {
  position: relative;
  padding: 40px 45px 20px 45px;
  color: #ff2e00; }

.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: #ff2e00;
    letter-spacing: 0.44px;
    margin-top: 10px; }

/**
 * 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 {
  display: block;
  margin-bottom: 8px;
  font-weight: 600;
  color: rgba(17, 21, 88, 0.5);
  margin-left: 15px; }

.ginput_container_fileupload .ginput_preview,
.ginput_container_fileupload span,
select,
input,
textarea {
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.4375em;
  width: 100%;
  height: 50px;
  padding: 6px 15px;
  border-radius: 4px;
  font-weight: 500;
  background-color: transparent;
  border: 2px solid rgba(17, 21, 88, 0.2);
  color: #111558;
  transition: all 250ms ease; }
  .ginput_container_fileupload .ginput_preview:focus,
  .ginput_container_fileupload span:focus,
  select:focus,
  input:focus,
  textarea:focus {
    background-color: transparent;
    border: 2px solid #111558; }
  .ginput_container_fileupload .ginput_preview:hover,
  .ginput_container_fileupload span:hover,
  select:hover,
  input:hover,
  textarea:hover {
    border: 2px solid #111558; }

textarea {
  height: 130px;
  padding-top: 15px; }

.gfield_required {
  color: rgba(17, 21, 88, 0.5); }

.ginput_container_select {
  position: relative;
  width: 100%;
  overflow: hidden;
  background-color: transparent;
  border-radius: 4px;
  border: 2px solid rgba(17, 21, 88, 0.2); }
  .ginput_container_select svg {
    position: absolute;
    top: 14px;
    right: 20px;
    width: 9px;
    height: 13px;
    z-index: 1; }
  .ginput_container_select select {
    position: relative;
    width: calc(100% + 50px);
    max-width: none;
    margin: -2px;
    background-color: transparent;
    border: 0;
    z-index: 2; }

.gfield_checkbox {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: -30px; }
  .gfield_checkbox .gchoice {
    position: relative;
    margin: 0 30px 30px 0; }
    .gfield_checkbox .gchoice:first-of-type {
      margin-left: 0; }
  .gfield_checkbox input {
    position: absolute;
    top: -1px;
    left: -1px;
    width: calc(100% + 2px);
    height: calc(100% + 2px);
    opacity: 0;
    z-index: 10; }
    .gfield_checkbox input:checked + label {
      padding: 0 10px;
      border: 2px solid #111558;
      color: #111558; }
      .gfield_checkbox input:checked + label:before {
        border: 2px solid #111558; }
      .gfield_checkbox input:checked + label svg {
        opacity: 1; }
  .gfield_checkbox label {
    font-size: 22px;
    font-size: 2.2rem;
    line-height: 1.18182em;
    display: flex;
    align-items: center;
    height: 50px;
    padding: 1px 11px;
    border: 1px solid rgba(17, 21, 88, 0.2);
    border-radius: 4px;
    opacity: 1;
    z-index: 5;
    margin: 0; }
    .gfield_checkbox label:before {
      width: 20px;
      height: 20px;
      border: 2px solid rgba(17, 21, 88, 0.2);
      border-radius: 2px;
      margin-right: 10px;
      content: '';
      transition: all 250ms ease; }
    .gfield_checkbox label svg {
      position: absolute;
      top: 15px;
      left: 12px;
      width: 20px;
      height: 20px;
      color: #111558;
      opacity: 0;
      transition: all 250ms ease;
      z-index: 6; }

.ginput_container_radio .gfield_radio {
  display: flex;
  flex-wrap: wrap; }

.ginput_container_radio .gchoice {
  position: relative;
  margin: 0 30px 30px 0; }
  .ginput_container_radio .gchoice:first-of-type {
    margin-left: 0; }
  .ginput_container_radio .gchoice input {
    position: absolute;
    top: -1px;
    left: -1px;
    width: calc(100% + 2px);
    height: calc(100% + 2px);
    opacity: 0;
    z-index: 10; }
    .ginput_container_radio .gchoice input:checked + label {
      padding: 0 10px;
      border: 2px solid #111558;
      color: #111558; }
      .ginput_container_radio .gchoice input:checked + label:before {
        border: 2px solid #111558;
        background-color: #111558; }
      .ginput_container_radio .gchoice input:checked + label svg {
        opacity: 1; }
  .ginput_container_radio .gchoice label {
    font-size: 22px;
    font-size: 2.2rem;
    line-height: 1.18182em;
    display: flex;
    align-items: center;
    height: 50px;
    padding: 1px 11px;
    border: 1px solid rgba(17, 21, 88, 0.2);
    border-radius: 4px;
    opacity: 1;
    z-index: 5;
    margin: 0; }
    .ginput_container_radio .gchoice label:before {
      width: 20px;
      height: 20px;
      border: 2px solid rgba(17, 21, 88, 0.2);
      border-radius: 2px;
      margin-right: 10px;
      border-radius: 20px;
      content: '';
      transition: all 250ms ease; }
    .ginput_container_radio .gchoice label svg {
      position: absolute;
      top: 15px;
      left: 12px;
      width: 20px;
      height: 20px;
      color: #111558;
      opacity: 0;
      transition: all 250ms ease;
      z-index: 6; }

.ginput_container_fileupload {
  position: relative; }
  .ginput_container_fileupload input {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 50px;
    opacity: 0;
    z-index: 10; }
  .ginput_container_fileupload .ginput_preview,
  .ginput_container_fileupload span {
    display: flex;
    width: 100%;
    padding: 15px 15px 15px 40px; }
    .ginput_container_fileupload .ginput_preview.gform_fileupload_rules,
    .ginput_container_fileupload span.gform_fileupload_rules {
      display: none; }
  .ginput_container_fileupload .ginput_preview {
    position: absolute; }
    .ginput_container_fileupload .ginput_preview button {
      display: none; }
  .ginput_container_fileupload svg {
    position: absolute;
    top: 17px;
    left: 15px;
    width: 16px;
    height: 18px;
    color: rgba(17, 21, 88, 0.5); }

/**
 * Gravity Forms.
 */
.gform_fields {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between; }
  .gform_fields .gfield__column {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    width: 65%; }
    @media only screen and (max-width: 899px) {
      .gform_fields .gfield__column {
        width: 100%; } }
    .gform_fields .gfield__column.is-left {
      align-content: baseline;
      width: 35%; }
      @media only screen and (max-width: 899px) {
        .gform_fields .gfield__column.is-left {
          width: 100%;
          margin-bottom: 30px; } }
      .gform_fields .gfield__column.is-left span {
        font-size: 24px;
        font-size: 2.4rem;
        line-height: 1.33333em;
        font-weight: 600;
        color: rgba(17, 21, 88, 0.5);
        width: 100%; }
      .gform_fields .gfield__column.is-left strong {
        font-size: 32px;
        font-size: 3.2rem;
        line-height: 1.1875em; }

#gform_fields_2 {
  padding-top: 30px;
  border-top: 1px solid rgba(17, 21, 88, 0.1); }
  #gform_fields_2 .gfield__column {
    border-bottom: 1px solid rgba(17, 21, 88, 0.1);
    margin-bottom: 30px; }
    @media only screen and (max-width: 899px) {
      #gform_fields_2 .gfield__column.is-left {
        border: 0; } }

#gform_fields_3 .gfield__column {
  margin-bottom: 30px;
  border-bottom: 1px solid rgba(17, 21, 88, 0.1); }
  @media only screen and (max-width: 899px) {
    #gform_fields_3 .gfield__column.is-left {
      border: 0; } }

.gsection_title {
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.625em; }

.gfield {
  width: calc(50% - 15px);
  margin-bottom: 30px; }
  @media only screen and (max-width: 599px) {
    .gfield {
      width: 100%; } }
  .gfield.gform_hidden {
    margin: 0; }
  .gfield.is-small {
    width: calc(33.3333% - 20px); }
    @media only screen and (max-width: 599px) {
      .gfield.is-small {
        width: 100%; } }
  .gfield.is-fifty {
    width: calc(50% - 10px); }
    @media only screen and (max-width: 599px) {
      .gfield.is-fifty {
        width: 100%; } }
  .gfield.is-medium {
    width: calc(66.66% - 10px); }
    @media only screen and (max-width: 599px) {
      .gfield.is-medium {
        width: 100%; } }
  .gfield.is-full {
    width: 100%; }
  .gfield.has-margin {
    margin-bottom: 60px; }

.gfield_error input {
  border: 2px solid rgba(255, 46, 0, 0.6); }

.gfield_error label {
  color: rgba(255, 46, 0, 0.6); }

.gfield_error .gfield_required {
  color: rgba(255, 46, 0, 0.6); }

legend.gfield_label {
  font-weight: 600;
  color: rgba(17, 21, 88, 0.5);
  margin: 0 0 10px 15px; }

label.gfield_label {
  position: relative;
  margin-bottom: -14px;
  padding: 0 5px;
  background-color: #fbfbfb;
  width: fit-content;
  z-index: 10; }

.gform_footer {
  display: flex;
  justify-content: flex-end; }

.gform_validation_container {
  display: none; }

.hidden_label > label {
  display: none; }

.validation_message {
  display: none; }


.validation_error {
  display: none; }

.gform_confirmation_message {
  display: none; }

/**
 * Heading.
 */
h1,
h2,
h3,
.newsletter-popup__title {
  letter-spacing: -0.03em; }
  h1.is-white,
  h2.is-white,
  h3.is-white,
  .is-white.newsletter-popup__title {
    color: white; }

/**
 * Heading 1.
 */
h1,
.heading-1 {
  font-size: 48px;
  font-size: 4.8rem;
  line-height: 1.08333em;
  font-weight: 800; }
  @media only screen and (max-width: 899px) {
    h1,
    .heading-1 {
      font-size: 29px;
      font-size: 2.9rem;
      line-height: 1.27586em; } }

/**
 * Heading 2.
 */
h2,
.heading-2 {
  font-size: 32px;
  font-size: 3.2rem;
  line-height: 1.1875em;
  font-weight: 700; }
  @media only screen and (max-width: 899px) {
    h2,
    .heading-2 {
      font-size: 20px;
      font-size: 2rem;
      line-height: 1.2em; } }

/**
 * Heading 3.
 */

h3,
.newsletter-popup__title,
.heading-3 {
  font-size: 26px;
  font-size: 2.6rem;
  line-height: 1.23077em;
  font-weight: 700; }
  @media only screen and (max-width: 899px) {
    
    h3,
    .newsletter-popup__title,
    .heading-3 {
      font-size: 18px;
      font-size: 1.8rem;
      line-height: 1.27778em;
      font-weight: 700; } }

.has-lazy-load {
  position: relative;
  top: -150px;
  transition: all 750ms ease;
  transition-delay: 500ms;
  opacity: 0; }
  .has-lazy-load.header {
    transition-delay: 750ms;
    transition: all 500ms ease; }

.has-lazy-load[loaded='true'] {
  top: 0;
  opacity: 1; }

.pagination {
  width: 100%;
  padding-bottom: 50px; }
  .pagination .wrapper {
    justify-content: center; }
  .pagination .page-numbers {
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 1.375em;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 43px;
    height: 43px;
    border: 1px solid #111558;
    margin-right: 10px;
    transition: all 250ms ease; }
    .pagination .page-numbers svg {
      position: relative;
      top: 0;
      width: 14px;
      height: 22px;
      transition: all 250ms ease; }
    .pagination .page-numbers:hover, .pagination .page-numbers.current {
      background-color: #111558;
      color: white; }
      .pagination .page-numbers:hover svg, .pagination .page-numbers.current svg {
        color: white; }

.theme--krimpenerwaard, .newsletter-popup.theme--krimpenerwaard .newsletter-popup__form .gform_footer .button, .newsletter-popup.theme--krimpenerwaard .newsletter-popup__form .gform_footer .login-container input[type=submit], .login-container .newsletter-popup.theme--krimpenerwaard .newsletter-popup__form .gform_footer input[type=submit] {
  background-color: #3db3a7; }

.theme--bodegraven, .newsletter-popup.theme--waddinxveen .newsletter-popup__form .gform_footer .button, .login-container input.newsletter-popup[type=submit] .newsletter-popup__form .gform_footer .button, .newsletter-popup.theme--waddinxveen .newsletter-popup__form .gform_footer .login-container input[type=submit], .login-container .newsletter-popup.theme--waddinxveen .newsletter-popup__form .gform_footer input[type=submit], .login-container input.newsletter-popup[type=submit] .newsletter-popup__form .gform_footer input[type=submit], .newsletter-popup.theme--bodegraven .newsletter-popup__form .gform_footer .button, .newsletter-popup.theme--bodegraven .newsletter-popup__form .gform_footer .login-container input[type=submit], .login-container .newsletter-popup.theme--bodegraven .newsletter-popup__form .gform_footer input[type=submit] {
  background-color: #ffce2e; }

.theme--waddinxveen, .login-container input[type=submit] {
  background-color: #ddffa7; }

/**
 * Wrapper (default)
 */
.wrapper {
  max-width: calc(1240px + 100px);
  padding: 0 50px;
  width: 100%;
  margin: 0 auto; }
  @media only screen and (max-width: 899px) {
    .wrapper {
      max-width: calc(1240px + 120px);
      padding: 0 60px;
      width: 100%;
      margin: 0 auto; } }
  @media only screen and (max-width: 599px) {
    .wrapper {
      max-width: calc(1240px + 40px);
      padding: 0 20px;
      width: 100%;
      margin: 0 auto; } }

/**
 * Wrapper (medium)
 */
.wrapper--medium {
  max-width: calc(1074px + 100px);
  padding: 0 50px;
  width: 100%;
  margin: 0 auto; }
  @media only screen and (max-width: 899px) {
    .wrapper--medium {
      max-width: calc(1074px + 120px);
      padding: 0 60px;
      width: 100%;
      margin: 0 auto; } }
  @media only screen and (max-width: 599px) {
    .wrapper--medium {
      max-width: calc(1074px + 40px);
      padding: 0 20px;
      width: 100%;
      margin: 0 auto; } }

/**
 * Wrapper (small)
 */
.wrapper--small {
  max-width: calc(1024px + 100px);
  padding: 0 50px;
  width: 100%;
  margin: 0 auto; }
  @media only screen and (max-width: 899px) {
    .wrapper--small {
      max-width: calc(1024px + 120px);
      padding: 0 60px;
      width: 100%;
      margin: 0 auto; } }
  @media only screen and (max-width: 599px) {
    .wrapper--small {
      max-width: calc(1024px + 40px);
      padding: 0 20px;
      width: 100%;
      margin: 0 auto; } }

/**
 * Components.
 */
.activity-checkout {
  display: none; }

.activity-filters {
  padding-bottom: 60px; }
  @media only screen and (max-width: 899px) {
    .activity-filters {
      padding-bottom: 40px; } }

.activity-filters__head {
  justify-content: space-between;
  align-items: center;
  margin-bottom: 50px; }

.activity-filters__toggle-head {
  display: none;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 20px;
  color: #0088d4;
  cursor: pointer; }
  @media only screen and (max-width: 899px) {
    .activity-filters__toggle-head {
      display: flex; } }
  .activity-filters__toggle-head span {
    display: flex;
    align-items: center; }
    .activity-filters__toggle-head span svg {
      width: 14px;
      height: 18px;
      margin-right: 10px;
      color: #0088d4; }
  .activity-filters__toggle-head > svg {
    width: 9px;
    height: 18px;
    color: #0088d4;
    transition: all 500ms ease; }
  .activity-filters__toggle-head.is-active > svg {
    transform: rotate(-180deg); }

.activity-filters__selects {
  gap: 0 32px;
  padding-bottom: 20px; }
  @media only screen and (max-width: 899px) {
    .activity-filters__selects {
      display: none;
      padding-top: 20px; } }

.activity-filters__select {
  width: calc(25% - 24px);
  height: 46px;
  padding: 6px;
  border-radius: 2px;
  box-shadow: 0px 2px 12px rgba(20, 44, 84, 0.1);
  background-color: white;
  margin-bottom: 20px; }
  @media only screen and (max-width: 1199px) {
    .activity-filters__select {
      width: calc(25% - 15px); } }
  @media only screen and (max-width: 899px) {
    .activity-filters__select {
      width: 100%;
      margin-bottom: 30px; } }
  .activity-filters__select > span {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 100%; }
    .activity-filters__select > span > svg {
      width: 22px;
      height: auto;
      color: #111558; }
      .activity-filters__select > span > svg path {
        fill: #111558; }

.activity-filters__select-wrap {
  position: relative;
  width: calc(100% - 30px);
  border-left: 1px solid rgba(17, 21, 88, 0.1);
  overflow: hidden;
  background-color: transparent; }
  .activity-filters__select-wrap svg {
    position: absolute;
    top: 11px;
    right: 7px;
    width: 10px;
    height: 18px;
    color: #111558;
    z-index: 2; }
  .activity-filters__select-wrap select {
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 2em;
    position: relative;
    width: calc(100% + 50px);
    max-width: none;
    height: 100%;
    margin: -2px;
    background-color: transparent;
    border: 0;
    z-index: 3;
    color: rgba(17, 21, 88, 0.4);
    font-weight: 600;
    padding: 8px 12px 0 12px; }

.activity-filters__border {
  border-bottom: 1px solid rgba(17, 21, 88, 0.1); }

.activity-item {
  position: relative;
  height: fit-content; }
  .activity-item:hover svg {
    margin: 0 -5px 0 5px; }
  .activity-item:hover .news-item__body:before {
    box-shadow: 0px 2px 12px rgba(20, 44, 84, 0.2); }

.activity-item__image {
  position: relative;
  width: 100%;
  height: 215px;
  border-radius: 2px;
  overflow: hidden; }
  .activity-item__image:before {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 70px;
    background: linear-gradient(180deg, rgba(17, 21, 88, 0.4) -78.26%, rgba(17, 21, 88, 0) 100%);
    z-index: 5;
    content: ''; }

.activity-item__schoolyear {
  font-size: 12px;
  font-size: 1.2rem;
  line-height: 1.16667em;
  position: absolute;
  top: 10px;
  right: 10px;
  background-color: rgba(255, 255, 255, 0.3);
  border: 1px solid white;
  color: white;
  padding: 5px 10px;
  border-radius: 2px;
  z-index: 10; }

.activity-item__title {
  font-size: 18px;
  font-size: 1.8rem;
  line-height: 1.55556em;
  position: relative;
  align-items: center;
  width: 100%;
  max-width: 290px;
  margin-top: -50px;
  background-color: #3db3a7;
  color: white;
  padding: 5px 0;
  font-weight: 600;
  float: right; }
  .activity-item__title span {
    width: calc(100% - 50px);
    border-right: 1px solid rgba(255, 255, 255, 0.5);
    padding: 0 15px; }
  .activity-item__title svg {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 50px;
    height: 100%;
    padding: 19px;
    transition: all 250ms ease; }
  .activity-item__title.theme--waddinxveen, .login-container input.activity-item__title[type=submit] {
    background-color: #ddffa7;
    color: #111558; }
    .activity-item__title.theme--waddinxveen span, .login-container input.activity-item__title[type=submit] span {
      border-right: 1px solid rgba(17, 21, 88, 0.5); }
  .activity-item__title.theme--bodegraven, .newsletter-popup.theme--waddinxveen .newsletter-popup__form .gform_footer .activity-item__title.button, .login-container input.newsletter-popup[type=submit] .newsletter-popup__form .gform_footer .activity-item__title.button, .newsletter-popup.theme--waddinxveen .newsletter-popup__form .gform_footer .login-container input.activity-item__title[type=submit], .login-container .newsletter-popup.theme--waddinxveen .newsletter-popup__form .gform_footer input.activity-item__title[type=submit], .login-container input.newsletter-popup[type=submit] .newsletter-popup__form .gform_footer input.activity-item__title[type=submit], .newsletter-popup.theme--bodegraven .newsletter-popup__form .gform_footer .activity-item__title.button, .newsletter-popup.theme--bodegraven .newsletter-popup__form .gform_footer .login-container input.activity-item__title[type=submit], .login-container .newsletter-popup.theme--bodegraven .newsletter-popup__form .gform_footer input.activity-item__title[type=submit] {
    background-color: #ffce2e;
    color: #111558; }
    .activity-item__title.theme--bodegraven span, .newsletter-popup.theme--waddinxveen .newsletter-popup__form .gform_footer .activity-item__title.button span, .login-container input.newsletter-popup[type=submit] .newsletter-popup__form .gform_footer .activity-item__title.button span, .newsletter-popup.theme--waddinxveen .newsletter-popup__form .gform_footer .login-container input.activity-item__title[type=submit] span, .login-container .newsletter-popup.theme--waddinxveen .newsletter-popup__form .gform_footer input.activity-item__title[type=submit] span, .login-container input.newsletter-popup[type=submit] .newsletter-popup__form .gform_footer input.activity-item__title[type=submit] span, .newsletter-popup.theme--bodegraven .newsletter-popup__form .gform_footer .activity-item__title.button span, .newsletter-popup.theme--bodegraven .newsletter-popup__form .gform_footer .login-container input.activity-item__title[type=submit] span, .login-container .newsletter-popup.theme--bodegraven .newsletter-popup__form .gform_footer input.activity-item__title[type=submit] span {
      border-right: 1px solid rgba(17, 21, 88, 0.5); }

.activity-item__body {
  width: calc(100% - 30px);
  overflow: hidden;
  background-color: white;
  padding: 15px 15px 10px 15px; }
  .activity-item__body:before {
    position: absolute;
    top: 0;
    left: 0;
    width: calc(100% - 30px);
    height: 100%;
    background-color: white;
    box-shadow: 0px 2px 12px rgba(20, 44, 84, 0.1);
    content: '';
    z-index: -1;
    transition: all 250ms ease; }

.activity-item__teaser {
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.375em; }

.activity-item__group {
  font-size: 12px;
  font-size: 1.2rem;
  line-height: 1.16667em;
  width: fit-content;
  margin-top: 10px;
  padding: 5px 10px;
  font-weight: 600;
  background-color: #111558;
  color: white;
  border-radius: 2px;
  margin-right: 5px; }
  .activity-item__group:last-of-type {
    margin-right: 0; }

.activity-list {
  padding-bottom: 60px; }
  @media only screen and (max-width: 899px) {
    .activity-list {
      padding-bottom: 40px; } }

.activity-list__wrap {
  width: calc(100% + 30px);
  margin: -15px; }
  @media only screen and (max-width: 1199px) {
    .activity-list__wrap {
      width: calc(100% + 20px);
      margin: -10px; } }
  @media only screen and (max-width: 599px) {
    .activity-list__wrap {
      width: 100%;
      margin: -10px 0; } }
  .activity-list__wrap .activity-item {
    width: calc(33.3333% - 30px);
    margin: 15px; }
    @media only screen and (max-width: 1199px) {
      .activity-list__wrap .activity-item {
        width: calc(33.3333% - 20px);
        margin: 10px; } }
    @media only screen and (max-width: 899px) {
      .activity-list__wrap .activity-item {
        width: calc(50% - 20px); } }
    @media only screen and (max-width: 599px) {
      .activity-list__wrap .activity-item {
        width: 100%;
        margin: 10px 0; } }

.activity-list__no-results {
  width: 100%;
  padding-bottom: 50px;
  text-align: center;
  font-weight: 700; }

.activity-single {
  padding-bottom: 60px; }
  @media only screen and (max-width: 899px) {
    .activity-single {
      padding-bottom: 40px; } }

.activity-single__image {
  position: relative;
  width: 100%;
  height: 620px; }
  @media only screen and (max-width: 899px) {
    .activity-single__image {
      height: 360px; } }
  @media only screen and (max-width: 599px) {
    .activity-single__image {
      height: 250px; } }

.activity-single__logo {
  position: absolute;
  display: flex;
  align-items: center;
  justify-content: center;
  top: 20px;
  right: 20px;
  background-color: white;
  width: 69px;
  height: 69px;
  border-radius: 6px;
  z-index: 10; }
  .activity-single__logo img {
    width: auto;
    max-width: 60px;
    height: auto;
    max-height: 60px; }

.activity-single__body {
  width: calc(100% - 20px);
  max-width: 1024px;
  margin: 0 auto;
  padding-top: 60px; }
  @media only screen and (max-width: 899px) {
    .activity-single__body {
      padding-top: 40px; } }

.activity-single__title {
  margin-bottom: 40px; }

.activity-single__information {
  justify-content: space-between;
  margin-bottom: 40px;
  padding-bottom: 20px;
  border-bottom: 1px solid rgba(17, 21, 88, 0.1); }
  @media only screen and (max-width: 599px) {
    .activity-single__information {
      padding-bottom: 0; } }
  .activity-single__information > div {
    width: calc(50% - 25px); }
    @media only screen and (max-width: 899px) {
      .activity-single__information > div {
        width: 100%;
        margin-bottom: 40px; } }

.activity-single__item {
  margin-bottom: 20px; }
  .activity-single__item label {
    font-size: 22px;
    font-size: 2.2rem;
    line-height: 1.27273em;
    min-width: fit-content;
    align-items: center;
    color: rgba(17, 21, 88, 0.5);
    margin: 0; }
    @media only screen and (max-width: 599px) {
      .activity-single__item label {
        font-size: 16px;
        font-size: 1.6rem;
        line-height: 1.375em; } }
    .activity-single__item label span.is-svg {
      justify-content: center;
      width: 28px;
      margin-right: 15px; }
  .activity-single__item svg {
    width: auto;
    height: 22px;
    color: rgba(17, 21, 88, 0.5); }
  .activity-single__item > span {
    font-size: 22px;
    font-size: 2.2rem;
    line-height: 1.27273em;
    font-weight: 600; }
    @media only screen and (max-width: 599px) {
      .activity-single__item > span {
        font-size: 16px;
        font-size: 1.6rem;
        line-height: 1.375em; } }
    .activity-single__item > span .is-regular {
      font-weight: 400; }

.activity-single__item--default label {
  position: relative;
  width: 160px;
  margin-right: 13px; }
  @media only screen and (max-width: 599px) {
    .activity-single__item--default label {
      width: 140px; } }
  .activity-single__item--default label:after {
    position: absolute;
    top: calc(50% - 12px);
    right: -2px;
    width: 2px;
    height: 24px;
    background-color: rgba(17, 21, 88, 0.1);
    content: ''; }

.activity-single__item--default > span {
  width: calc(100% - 173px); }
  @media only screen and (max-width: 599px) {
    .activity-single__item--default > span {
      width: calc(100% - 153px); } }

.activity-single__item--default .is-term {
  margin-right: 10px; }
  .activity-single__item--default .is-term:last-of-type {
    margin-right: 0; }

.activity-single__item--marked > span {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: -12px; }

.activity-single__item--marked .is-term {
  border-radius: 6px;
  padding: 4px 10px;
  margin: 0 0 12px 12px; }

.activity-single__item--marked.is-atoll .is-term {
  background-color: rgba(8, 93, 120, 0.2);
  color: #085d78; }

.activity-single__item--marked.is-violet .is-term {
  background-color: rgba(106, 54, 255, 0.2);
  color: #6a36ff; }

.activity-single__item--marked.is-orange .is-term {
  background-color: rgba(253, 79, 23, 0.2);
  color: #fd4f17; }

.activity-single__item--marked.is-blue .is-term {
  background-color: rgba(0, 136, 212, 0.2);
  color: #0088d4; }

.activity-single__footer {
  justify-content: space-between;
  align-items: center;
  width: 100%;
  max-width: 1024px;
  margin: 40px auto 0 auto;
  margin-top: 40px;
  padding-top: 40px;
  border-top: 1px solid rgba(17, 21, 88, 0.1); }
  @media only screen and (max-width: 599px) {
    .activity-single__footer {
      flex-wrap: wrap;
      flex-direction: column-reverse; } }

.activity-single__back {
  display: flex;
  text-decoration: underline; }
  @media only screen and (max-width: 899px) {
    .activity-single__back {
      margin: 40px auto 0 auto; } }
  @media only screen and (max-width: 599px) {
    .activity-single__back {
      width: 100%;
      margin-top: 20px; } }
  .activity-single__back svg {
    position: relative;
    top: 2px;
    width: 14px;
    height: 22px;
    margin-right: 10px;
    color: #111558;
    transition: all 250ms ease; }
  .activity-single__back:hover svg {
    margin-left: -5px;
    margin-right: 15px; }

@media only screen and (max-width: 599px) {
  .activity-single__button {
    width: 100%; } }

.activity-single__button .is-icon {
  display: flex;
  align-items: center;
  margin-left: 30px; }
  .activity-single__button .is-icon svg {
    margin-left: 5px; }

.activity-single__comments-title {
  font-size: 22px;
  font-size: 2.2rem;
  line-height: 1.27273em;
  min-width: fit-content;
  align-items: center;
  color: rgba(17, 21, 88, 0.5);
  margin: 20px 0 5px 0; }
  @media only screen and (max-width: 599px) {
    .activity-single__comments-title {
      font-size: 16px;
      font-size: 1.6rem;
      line-height: 1.375em; } }

.activity-single__comments-text {
  display: block;
  margin-bottom: 10px; }

.cart-item {
  position: relative;
  padding: 20px 0 40px 0;
  border-top: 1px solid rgba(17, 21, 88, 0.1); }

.cart-item__delete {
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1.57143em;
  top: 20px;
  right: 0;
  position: absolute;
  color: #ff2e00; }

.cart-item__title {
  font-size: 48px;
  font-size: 4.8rem;
  line-height: 1.08333em;
  margin-bottom: 30px;
  font-weight: 700; }
  @media only screen and (max-width: 599px) {
    .cart-item__title {
      padding-top: 20px; } }

.cart-item__image {
  position: relative;
  width: 100%;
  max-width: 180px;
  margin-right: 30px; }
  @media only screen and (max-width: 599px) {
    .cart-item__image {
      max-width: 100%;
      height: 150px;
      margin-bottom: 30px; } }
  .cart-item__image img {
    border-radius: 4px; }

.cart-item__input-wrap {
  width: 400px; }
  @media only screen and (min-width: 900px) and (max-width: 1199px) {
    .cart-item__input-wrap {
      width: 200px; } }
  @media only screen and (max-width: 899px) {
    .cart-item__input-wrap {
      width: 100%; } }

/**
 * Details.
 */
.cart-item__details {
  width: calc(100% - 610px); }
  @media only screen and (min-width: 900px) and (max-width: 1199px) {
    .cart-item__details {
      width: calc(100% - 410px); } }
  @media only screen and (max-width: 899px) {
    .cart-item__details {
      width: calc(100% - 210px); } }
  @media only screen and (max-width: 599px) {
    .cart-item__details {
      width: 100%; } }
  .cart-item__details .activity-single__item {
    margin-bottom: 10px; }
  .cart-item__details .activity-single__item label span.is-svg {
    width: 20px;
    margin-right: 10px; }
  .cart-item__details .activity-single__item > span,
  .cart-item__details .activity-single__item label {
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 1.75em; }
  .cart-item__details .activity-single__item--default label {
    width: 120px; }

.cart-item__comment {
  width: 100%;
  margin-top: 20px; }
  @media only screen and (max-width: 599px) {
    .cart-item__comment {
      margin-left: 20px; } }

.cart-item__comment-label {
  width: 100%;
  margin-bottom: 20px;
  font-size: 14px;
  line-height: 120%;
  margin-bottom: 10px;
  font-weight: 700;
  display: flex;
  align-items: center;
  cursor: pointer; }
  .cart-item__comment-label svg {
    width: 16px;
    height: 16px;
    margin-left: 5px;
    transition: all 300ms ease-in-out; }
  .cart-item__comment-label.is-active svg {
    transform: rotate(180deg); }

.cart-item__comment-wrap {
  display: none;
  width: 100%; }
  .cart-item__comment-wrap textarea {
    width: 100%; }

/**
 * Period.
 */
.cart-item__period {
  width: 220px;
  padding: 0 15px;
  border-left: 1px solid rgba(17, 21, 88, 0.1); }
  @media only screen and (min-width: 900px) and (max-width: 1199px) {
    .cart-item__period {
      width: 100%;
      padding: 0 0 30px 15px; } }
  @media only screen and (max-width: 899px) {
    .cart-item__period {
      border: 0;
      margin-top: 30px;
      padding: 0 15px 0 0; } }
  @media only screen and (max-width: 599px) {
    .cart-item__period {
      padding: 0 0 30px 15px; } }

.cart-item__period-label {
  font-size: 22px;
  font-size: 2.2rem;
  line-height: 1.27273em;
  margin-bottom: 30px;
  font-weight: 700; }
  @media only screen and (min-width: 900px) and (max-width: 1199px) {
    .cart-item__period-label {
      margin-bottom: 10px; } }
  @media only screen and (max-width: 899px) {
    .cart-item__period-label {
      margin-bottom: 10px; } }

.cart-item__period-select-comment {
  margin-top: 10px;
  padding: 10px; }
  .cart-item__period-select-comment::placeholder {
    opacity: 0.5;
    font-size: 14px; }

.cart-item__period-select-comment-label {
  position: relative; }
  .cart-item__period-select-comment-label label {
    margin-top: 20px;
    margin-left: 0;
    color: #111558;
    font-weight: 700; }
    .cart-item__period-select-comment-label label svg {
      transition: all 300ms ease-in-out;
      cursor: pointer; }
      .cart-item__period-select-comment-label label svg:hover {
        opacity: 0.6; }
  .cart-item__period-select-comment-label span {
    position: absolute;
    top: 30px;
    right: 0;
    background-color: white;
    padding: 5px 10px;
    border-radius: 2px;
    box-shadow: 0px 2px 12px rgba(20, 44, 84, 0.1);
    z-index: 99;
    font-size: 14px;
    opacity: 0;
    pointer-events: none;
    transition: all 300ms ease-in-out; }
    .cart-item__period-select-comment-label span.is-active {
      opacity: 1;
      pointer-events: all; }

.cart-item__period-select label {
  position: relative;
  margin-bottom: -14px;
  padding: 0 5px;
  background-color: #fbfbfb;
  width: fit-content;
  z-index: 10; }
  .cart-item__period-select label svg {
    position: relative;
    top: 3px;
    width: 16px;
    height: 16px;
    margin-left: 2px;
    color: rgba(17, 21, 88, 0.5); }

.cart-item__period-select select {
  font-weight: 600;
  padding-top: 10px; }

/**
 * Group.
 */
.cart-item__group {
  width: 180px;
  padding-left: 15px;
  border-left: 1px solid rgba(17, 21, 88, 0.1); }
  @media only screen and (min-width: 900px) and (max-width: 1199px) {
    .cart-item__group {
      width: 100%; } }
  @media only screen and (min-width: 600px) and (max-width: 899px) {
    .cart-item__group {
      margin-top: 30px; } }
  @media only screen and (max-width: 599px) {
    .cart-item__group {
      width: 100%;
      border: 0; } }

.cart-item__group-label {
  font-size: 22px;
  font-size: 2.2rem;
  line-height: 1.27273em;
  margin-bottom: 40px;
  font-weight: 700; }
  @media only screen and (min-width: 900px) and (max-width: 1199px) {
    .cart-item__group-label {
      margin-bottom: 15px; } }
  @media only screen and (max-width: 899px) {
    .cart-item__group-label {
      margin-bottom: 20px; } }
  @media only screen and (max-width: 599px) {
    .cart-item__group-label {
      margin-bottom: 15px; } }

.cart-item__group-wrap {
  justify-content: center; }
  @media only screen and (max-width: 899px) {
    .cart-item__group-wrap {
      justify-content: flex-start; } }
  .cart-item__group-wrap input {
    font-size: 22px;
    font-size: 2.2rem;
    line-height: 1.27273em;
    text-align: center;
    width: 42px;
    height: 50px;
    padding: 0;
    font-weight: 700; }
  .cart-item__group-wrap span {
    font-size: 22px;
    font-size: 2.2rem;
    line-height: 1.27273em;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 42px;
    height: 50px;
    font-weight: 700;
    cursor: pointer;
    transition: all 250ms ease; }
    .cart-item__group-wrap span:hover {
      color: rgba(17, 21, 88, 0.5); }
    .cart-item__group-wrap span::selection {
      background-color: #fbfbfb;
      color: #111558; }

/**
 * Price.
 */
.cart-item__price {
  justify-content: space-between;
  align-items: center;
  margin-top: 30px;
  padding: 16px 34px 18px 12px;
  background-color: white;
  border-top: 1px solid rgba(17, 21, 88, 0.1);
  border-bottom: 1px solid rgba(17, 21, 88, 0.1); }

.cart-item__price-label {
  font-size: 22px;
  font-size: 2.2rem;
  line-height: 1.27273em;
  font-weight: 700; }

.cart-item__price-wrap {
  border-left: 1px solid rgba(17, 21, 88, 0.1);
  padding-left: 50px; }
  .cart-item__price-wrap span {
    font-size: 12px;
    font-size: 1.2rem;
    line-height: 1.5em;
    display: block; }
    .cart-item__price-wrap span.is-price {
      font-size: 22px;
      font-size: 2.2rem;
      line-height: 1.27273em;
      margin-bottom: -1px;
      font-weight: 700; }

.cart__title {
  margin-bottom: 20px; }

.cart__editor {
  margin-bottom: 40px; }

.cart__count {
  padding: 30px 0 60px 0;
  border-top: 1px solid rgba(17, 21, 88, 0.1);
  text-align: right; }
  @media only screen and (max-width: 599px) {
    .cart__count {
      padding: 30px 0; } }

.cart__price {
  justify-content: space-between;
  align-items: center;
  margin: 20px 0 60px 0;
  padding: 50px 34px 18px 12px;
  background-color: white;
  border-top: 1px solid rgba(17, 21, 88, 0.1); }

.cart__price-label {
  font-size: 32px;
  font-size: 3.2rem;
  line-height: 1.1875em;
  font-weight: 800; }

.cart__price-wrap {
  padding-left: 50px; }
  .cart__price-wrap span {
    font-size: 12px;
    font-size: 1.2rem;
    line-height: 1.5em;
    display: block; }
    .cart__price-wrap span.is-price {
      font-size: 22px;
      font-size: 2.2rem;
      line-height: 1.27273em;
      margin-bottom: -1px;
      font-weight: 700; }

.cart__form {
  border-top: 1px solid rgba(17, 21, 88, 0.1);
  padding-top: 60px; }

.cart__form--krimpenerwaard button {
  background-color: #3db3a7;
  color: white; }

.cart__form--waddinxveen button {
  background-color: #ddffa7; }

.cart__form--bodegraven button {
  background-color: #ffce2e; }

.cart__no-results {
  text-align: center;
  font-weight: 700; }

.cart__download-wrap {
  display: flex;
  justify-content: flex-end;
  width: 100%;
  margin-bottom: 50px; }

.cart__download {
  background-color: white; }
  .cart__download.has-svg-right svg {
    margin-left: 20px; }
  .cart__download.has-svg-right:hover svg {
    margin-left: 25px; }

.content-default {
  padding-bottom: 60px; }
  @media only screen and (max-width: 899px) {
    .content-default {
      padding-bottom: 40px; } }

.content-default__title {
  margin-bottom: 20px; }

.content-default__link {
  margin-top: 20px; }

.content-form {
  padding-bottom: 60px; }
  @media only screen and (max-width: 899px) {
    .content-form {
      padding-bottom: 40px; } }

.content-form__title {
  max-width: 880px;
  margin-bottom: 30px; }

.content-form__editor {
  font-weight: 600; }

.content-form__form {
  margin-top: 40px; }
  .content-form__form.is-krimpenerwaard button {
    background-color: #3db3a7;
    color: white; }
  .content-form__form.is-bodegraven button {
    background-color: #ffce2e;
    color: #111558; }
  .content-form__form.is-waddinxveen button {
    background-color: #ddffa7;
    color: #111558; }

.content-form__back {
  display: flex;
  align-items: center;
  margin-top: -30px;
  text-decoration: underline; }
  @media only screen and (max-width: 599px) {
    .content-form__back {
      margin-top: 30px; } }
  .content-form__back svg {
    position: relative;
    top: 2px;
    width: 14px;
    height: 22px;
    margin-right: 10px;
    color: #111558;
    transition: all 250ms ease; }
  .content-form__back:hover svg {
    margin-left: -5px;
    margin-right: 15px; }

.content-header {
  position: relative;
  height: 235px; }
  @media only screen and (max-width: 899px) {
    .content-header {
      height: 160px; } }
  @media only screen and (max-width: 599px) {
    .content-header {
      height: 190px; } }
  .content-header img {
    z-index: 1; }

.content-header__body {
  position: relative;
  padding-top: 65px;
  z-index: 2; }
  @media only screen and (max-width: 599px) {
    .content-header__body {
      display: flex;
      align-items: flex-end;
      height: 190px;
      padding: 0 0 15px 0; } }

.content-header__title {
  font-size: 42px;
  font-size: 4.2rem;
  line-height: 1.14286em;
  color: white;
  font-weight: 600;
  text-shadow: 0px 0px 2px rgba(0, 0, 0, 0.1); }
  @media only screen and (max-width: 899px) {
    .content-header__title {
      font-size: 25px;
      font-size: 2.5rem;
      line-height: 1.28em; } }

.content-header__city {
  font-size: 76px;
  font-size: 7.6rem;
  line-height: 1.26316em;
  color: white;
  font-weight: 800;
  text-shadow: 0px 0px 2px rgba(0, 0, 0, 0.1); }
  @media only screen and (max-width: 899px) {
    .content-header__city {
      font-size: 36px;
      font-size: 3.6rem;
      line-height: 1.61111em; } }

.footer {
  position: relative;
  margin-top: 50px;
  padding-top: 50px; }
  .footer:after {
    display: block;
    position: absolute;
    top: 0;
    width: 100%;
    height: 36px;
    background-color: #fbfbfb;
    content: '';
    z-index: 1; }
    @media only screen and (max-width: 899px) {
      .footer:after {
        display: none; } }
  .footer:before {
    display: block;
    position: absolute;
    top: 35px;
    background-color: #fbfbfb;
    width: 100vw;
    height: 200px;
    clip-path: polygon(50% 0%, 100% 0, 50% 100%, 0 0);
    content: '';
    z-index: 1; }
    @media only screen and (max-width: 899px) {
      .footer:before {
        top: -1px;
        height: 150px;
        clip-path: polygon(0 0, 100% 0, 100% 50%, 50% 100%, 0% 50%); } }
  .footer * {
    position: relative;
    z-index: 2; }

.footer__contact {
  justify-content: center;
  width: 100%;
  padding: 45px 35px 35px 35px;
  background-color: white;
  border-radius: 10px; }
  @media only screen and (max-width: 599px) {
    .footer__contact {
      padding: 45px 28px 28px 28px; } }

.footer__contact-title {
  display: block;
  margin-bottom: 30px;
  text-align: center;
  width: 100%; }

.footer__top {
  justify-content: space-between;
  padding: 50px 0;
  border-bottom: 1px solid rgba(17, 21, 88, 0.2); }
  @media only screen and (max-width: 899px) {
    .footer__top {
      padding: 50px 0 40px 0; } }

@media only screen and (max-width: 899px) {
  .footer__sitemaps {
    width: 100%;
    justify-content: space-between;
    margin-bottom: 30px; } }

@media only screen and (max-width: 599px) {
  .footer__sitemaps {
    margin-bottom: 25px; } }

.footer__sitemaps a {
  margin-right: 80px;
  color: white; }
  @media only screen and (max-width: 599px) {
    .footer__sitemaps a {
      width: 100%;
      margin: 0 0 25px 0;
      text-align: center; } }
  .footer__sitemaps a:last-of-type {
    margin: 0; }
  .footer__sitemaps a:hover {
    text-decoration: underline; }

@media only screen and (max-width: 899px) {
  .footer__social {
    justify-content: center;
    width: 100%; } }

.footer__social a {
  margin-right: 40px; }
  .footer__social a:last-of-type {
    margin-right: 0; }
  .footer__social a:hover svg {
    opacity: 0.7; }

.footer__social svg {
  width: 25px;
  height: 28px;
  color: white;
  transition: all 250ms ease; }

.footer__bottom {
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1.35714em;
  justify-content: space-between;
  align-items: center;
  height: 160px;
  padding-bottom: 40px;
  color: rgba(255, 255, 255, 0.75); }
  @media only screen and (max-width: 899px) {
    .footer__bottom {
      height: auto;
      padding: 40px 0 15px 0; } }
  .footer__bottom a {
    margin-left: 20px; }
    .footer__bottom a:first-of-type {
      margin-left: 0; }
    .footer__bottom a:hover {
      text-decoration: underline; }
  .footer__bottom img {
    height: 89px;
    width: auto; }
  @media only screen and (max-width: 899px) {
    .footer__bottom > div,
    .footer__bottom > a {
      justify-content: center;
      width: 100%;
      margin-bottom: 25px;
      text-align: center; } }

@media only screen and (max-width: 899px) {
  .footer__link-wrap {
    display: flex;
    flex-wrap: wrap; } }

.footer__developed-by {
  display: block;
  width: 100%;
  text-align: right;
  margin-top: 10px; }
  @media only screen and (max-width: 899px) {
    .footer__developed-by {
      text-align: center; } }

/**
 * Themes.
 */
.footer.theme--waddinxveen .footer__sitemaps a, .login-container input.footer[type=submit] .footer__sitemaps a,
.footer.theme--waddinxveen .footer__social svg,
.login-container input.footer[type=submit] .footer__social svg, .footer.theme--bodegraven .footer__sitemaps a, .newsletter-popup.theme--waddinxveen .newsletter-popup__form .gform_footer .footer.button .footer__sitemaps a, .login-container input.newsletter-popup[type=submit] .newsletter-popup__form .gform_footer .footer.button .footer__sitemaps a, .newsletter-popup.theme--waddinxveen .newsletter-popup__form .gform_footer .login-container input.footer[type=submit] .footer__sitemaps a, .login-container .newsletter-popup.theme--waddinxveen .newsletter-popup__form .gform_footer input.footer[type=submit] .footer__sitemaps a, .login-container input.newsletter-popup[type=submit] .newsletter-popup__form .gform_footer input.footer[type=submit] .footer__sitemaps a, .newsletter-popup.theme--bodegraven .newsletter-popup__form .gform_footer .footer.button .footer__sitemaps a, .newsletter-popup.theme--bodegraven .newsletter-popup__form .gform_footer .login-container input.footer[type=submit] .footer__sitemaps a, .login-container .newsletter-popup.theme--bodegraven .newsletter-popup__form .gform_footer input.footer[type=submit] .footer__sitemaps a,
.footer.theme--bodegraven .footer__social svg,
.newsletter-popup.theme--waddinxveen .newsletter-popup__form .gform_footer .footer.button .footer__social svg,
.login-container input.newsletter-popup[type=submit] .newsletter-popup__form .gform_footer .footer.button .footer__social svg,
.newsletter-popup.theme--waddinxveen .newsletter-popup__form .gform_footer .login-container input.footer[type=submit] .footer__social svg,
.login-container .newsletter-popup.theme--waddinxveen .newsletter-popup__form .gform_footer input.footer[type=submit] .footer__social svg,
.login-container input.newsletter-popup[type=submit] .newsletter-popup__form .gform_footer input.footer[type=submit] .footer__social svg,
.newsletter-popup.theme--bodegraven .newsletter-popup__form .gform_footer .footer.button .footer__social svg,
.newsletter-popup.theme--bodegraven .newsletter-popup__form .gform_footer .login-container input.footer[type=submit] .footer__social svg,
.login-container .newsletter-popup.theme--bodegraven .newsletter-popup__form .gform_footer input.footer[type=submit] .footer__social svg {
  color: #111558; }

.footer.theme--waddinxveen .footer__bottom, .login-container input.footer[type=submit] .footer__bottom, .footer.theme--bodegraven .footer__bottom, .newsletter-popup.theme--waddinxveen .newsletter-popup__form .gform_footer .footer.button .footer__bottom, .login-container input.newsletter-popup[type=submit] .newsletter-popup__form .gform_footer .footer.button .footer__bottom, .newsletter-popup.theme--waddinxveen .newsletter-popup__form .gform_footer .login-container input.footer[type=submit] .footer__bottom, .login-container .newsletter-popup.theme--waddinxveen .newsletter-popup__form .gform_footer input.footer[type=submit] .footer__bottom, .login-container input.newsletter-popup[type=submit] .newsletter-popup__form .gform_footer input.footer[type=submit] .footer__bottom, .newsletter-popup.theme--bodegraven .newsletter-popup__form .gform_footer .footer.button .footer__bottom, .newsletter-popup.theme--bodegraven .newsletter-popup__form .gform_footer .login-container input.footer[type=submit] .footer__bottom, .login-container .newsletter-popup.theme--bodegraven .newsletter-popup__form .gform_footer input.footer[type=submit] .footer__bottom {
  color: rgba(17, 21, 88, 0.75); }

.header {
  position: relative;
  height: 90px;
  background-color: #fbfbfb;
  box-shadow: 0px 2px 12px rgba(251, 251, 251, 0.1);
  z-index: 10; }
  .header .wrapper {
    height: 90px;
    justify-content: space-between;
    align-items: center;
    overflow: hidden; }
    @media only screen and (max-width: 899px) {
      .header .wrapper {
        align-items: center; } }
    .header .wrapper:hover {
      overflow: visible; }

.header__logo img {
  width: auto;
  max-width: 100px;
  height: auto;
  max-height: 65px; }

.header__logo.menu-3-items {
  position: relative;
  right: -116px; }
  @media only screen and (max-width: 1199px) {
    .header__logo.menu-3-items {
      right: 0; } }

.header__navigation {
  display: flex;
  align-items: flex-end;
  height: 45px; }
  @media only screen and (max-width: 899px) {
    .header__navigation.is-left {
      display: none; } }

@media only screen and (max-width: 899px) {
  .header__menu {
    display: none; } }

.header__menu > li {
  position: relative;
  display: flex;
  align-items: flex-end;
  margin-left: 40px; }
  .header__menu > li > a {
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 1.125em;
    font-weight: 600;
    opacity: 1;
    transition: opacity 250ms ease; }
    .header__menu > li > a svg {
      position: relative;
      top: 3px;
      width: 9px;
      height: 15px;
      margin-left: 5px;
      transition: transform 500ms ease; }
  .header__menu > li:first-of-type {
    margin-left: 0; }
  .header__menu > li.current-menu-item > a, .header__menu > li:hover > a {
    opacity: 0.7; }
  .header__menu > li:hover .submenu-container {
    opacity: 1;
    top: 100%; }

.header__menu .submenu-container {
  position: absolute;
  top: 50px;
  left: 50%;
  transform: translate(-50%, 0%);
  width: max-content;
  min-width: 170px;
  padding-top: 22px;
  opacity: 0;
  transition: all 500ms ease; }
  .header__menu .submenu-container .submenu {
    box-shadow: 5px 5px 0px #111558; }
    .header__menu .submenu-container .submenu > li > a {
      font-size: 14px;
      font-size: 1.4rem;
      line-height: 1.42857em;
      display: flex;
      width: 100%;
      font-weight: 300;
      padding: 10px 10px;
      transition: all 250ms ease;
      background-color: #fbfbfb; }
    .header__menu .submenu-container .submenu > li.current-menu-item > a, .header__menu .submenu-container .submenu > li:hover > a {
      background-color: #f2f2f2; }

.header__activity {
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.125em;
  position: relative;
  justify-content: center;
  margin-left: 31px;
  transition: all 250ms ease; }
  @media only screen and (max-width: 899px) {
    .header__activity {
      margin: 0 -9px; } }
  @media only screen and (max-width: 599px) {
    .header__activity {
      font-size: 14px;
      font-size: 1.4rem;
      line-height: 1.28571em;
      margin: 0 -9px; } }
  .header__activity svg {
    width: 20px;
    height: 24px;
    color: #111558;
    margin-bottom: 3px; }
  .header__activity span {
    display: block;
    width: calc(100% - 18px); }
  .header__activity:hover {
    opacity: 0.7; }

.header__activity-count {
  font-size: 12px;
  font-size: 1.2rem;
  line-height: 1em;
  position: absolute;
  top: -1px;
  right: 28px;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 18px;
  height: 18px;
  border-radius: 50%;
  background-color: #ff2e00;
  color: white; }

/**
 * Menu Button.
 */
.header__menu-button {
  display: none; }
  @media only screen and (max-width: 899px) {
    .header__menu-button {
      display: block;
      position: relative;
      width: 21px;
      height: 21px;
      margin-right: 62px;
      z-index: 100; }
      .header__menu-button span {
        display: inline-block;
        position: absolute;
        right: 0;
        left: 0;
        width: 21px;
        height: 3px;
        border-radius: 2px;
        margin: auto;
        background-color: #111558; }
        .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% - 1.5px);
          transition: background-color 400ms, opacity 0ms 400ms;
          background-color: #111558;
          opacity: 1; }
        .header__menu-button span:nth-child(3) {
          bottom: 0;
          transition: background-color 400ms, bottom 400ms 400ms, transform 400ms 0s;
          background-color: #111558; }
      .header__menu-button.is-active span:nth-child(1) {
        top: calc(50% - 1.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% - 1.5px);
        transform: rotate(45deg);
        transition: background-color 400ms, bottom 400ms, transform 400ms 400ms; } }
  @media only screen and (max-width: 599px) {
    .header__menu-button {
      margin-right: 51px; } }

.navigation-mobile {
  position: fixed;
  top: 100vh;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: calc(100% - 100px);
  margin-top: 100px;
  transition: all 500ms ease;
  background: rgba(17, 21, 88, 0.5);
  color: white;
  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.theme--bodegraven, .newsletter-popup.theme--waddinxveen .newsletter-popup__form .gform_footer .navigation-mobile.button, .login-container input.newsletter-popup[type=submit] .newsletter-popup__form .gform_footer .navigation-mobile.button, .newsletter-popup.theme--waddinxveen .newsletter-popup__form .gform_footer .login-container input.navigation-mobile[type=submit], .login-container .newsletter-popup.theme--waddinxveen .newsletter-popup__form .gform_footer input.navigation-mobile[type=submit], .login-container input.newsletter-popup[type=submit] .newsletter-popup__form .gform_footer input.navigation-mobile[type=submit], .newsletter-popup.theme--bodegraven .newsletter-popup__form .gform_footer .navigation-mobile.button, .newsletter-popup.theme--bodegraven .newsletter-popup__form .gform_footer .login-container input.navigation-mobile[type=submit], .login-container .newsletter-popup.theme--bodegraven .newsletter-popup__form .gform_footer input.navigation-mobile[type=submit] {
    color: #111558; }
    .navigation-mobile.theme--bodegraven .navigation-mobile__main, .newsletter-popup.theme--waddinxveen .newsletter-popup__form .gform_footer .navigation-mobile.button .navigation-mobile__main, .login-container input.newsletter-popup[type=submit] .newsletter-popup__form .gform_footer .navigation-mobile.button .navigation-mobile__main, .newsletter-popup.theme--waddinxveen .newsletter-popup__form .gform_footer .login-container input.navigation-mobile[type=submit] .navigation-mobile__main, .login-container .newsletter-popup.theme--waddinxveen .newsletter-popup__form .gform_footer input.navigation-mobile[type=submit] .navigation-mobile__main, .login-container input.newsletter-popup[type=submit] .newsletter-popup__form .gform_footer input.navigation-mobile[type=submit] .navigation-mobile__main, .newsletter-popup.theme--bodegraven .newsletter-popup__form .gform_footer .navigation-mobile.button .navigation-mobile__main, .newsletter-popup.theme--bodegraven .newsletter-popup__form .gform_footer .login-container input.navigation-mobile[type=submit] .navigation-mobile__main, .login-container .newsletter-popup.theme--bodegraven .newsletter-popup__form .gform_footer input.navigation-mobile[type=submit] .navigation-mobile__main {
      background-color: #ffce2e; }
  .navigation-mobile.theme--waddinxveen, .login-container input.navigation-mobile[type=submit] {
    color: #111558; }
    .navigation-mobile.theme--waddinxveen .navigation-mobile__main, .login-container input.navigation-mobile[type=submit] .navigation-mobile__main {
      background-color: #ddffa7; }

/**
 * Main menu.
 */
.navigation-mobile__main {
  background-color: #3db3a7;
  width: 100vw;
  margin: 0 -20px;
  padding: 10px 20px; }
  @media only screen and (min-width: 600px) and (max-width: 899px) {
    .navigation-mobile__main {
      margin: 0 -60px;
      padding: 10px 60px; } }
  .navigation-mobile__main.is-first {
    padding-top: 30px; }
  .navigation-mobile__main.is-last {
    padding-bottom: 30px; }
  .navigation-mobile__main > li {
    position: relative;
    margin-bottom: 20px; }
    .navigation-mobile__main > li:last-of-type {
      margin: 0; }
    .navigation-mobile__main > li.current_page_ancestor > a, .navigation-mobile__main > li.current-menu-item > a {
      opacity: 0.7; }
    .navigation-mobile__main > li.is-active > a {
      opacity: 0.7; }
      .navigation-mobile__main > li.is-active > a > span svg {
        transform: rotate(-90deg); }
    .navigation-mobile__main > li > a {
      font-size: 16px;
      font-size: 1.6rem;
      line-height: 1.125em;
      display: block;
      position: relative;
      width: 100%;
      font-weight: 600; }
      .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; }
    .navigation-mobile__main > li .submenu-container {
      display: none;
      position: relative;
      margin-top: 10px;
      padding: 10px 0 0 10px; }
      .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; }
      .navigation-mobile__main > li .submenu-container li.current_page_ancestor > a, .navigation-mobile__main > li .submenu-container li.current-menu-item > a {
        opacity: 0.7; }
      .navigation-mobile__main > li .submenu-container li.is-active > a {
        opacity: 0.7; }

/**
 * Disable scroll.
 */
body.is-active {
  overflow: hidden; }
  body.is-active .header::before {
    bottom: 0; }

.news-item {
  position: relative;
  height: fit-content; }
  .news-item:hover svg {
    margin: 0 -5px 0 5px; }
  .news-item:hover .news-item__body:before {
    box-shadow: 0px 2px 12px rgba(20, 44, 84, 0.2); }

.news-item__image {
  position: relative;
  width: 100%;
  height: 215px;
  border-radius: 2px;
  overflow: hidden; }

.news-item__title {
  font-size: 18px;
  font-size: 1.8rem;
  line-height: 1.55556em;
  position: relative;
  align-items: center;
  width: 100%;
  max-width: 290px;
  margin-top: -50px;
  background-color: #3db3a7;
  color: white;
  padding: 5px 0;
  font-weight: 600;
  float: right; }
  .news-item__title span {
    width: calc(100% - 50px);
    border-right: 1px solid rgba(255, 255, 255, 0.5);
    padding: 0 15px; }
  .news-item__title svg {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 50px;
    height: 100%;
    padding: 19px;
    transition: all 250ms ease; }
  .news-item__title.theme--waddinxveen, .login-container input.news-item__title[type=submit] {
    background-color: #ddffa7;
    color: #111558; }
    .news-item__title.theme--waddinxveen span, .login-container input.news-item__title[type=submit] span {
      border-right: 1px solid rgba(17, 21, 88, 0.5); }
  .news-item__title.theme--bodegraven, .newsletter-popup.theme--waddinxveen .newsletter-popup__form .gform_footer .news-item__title.button, .login-container input.newsletter-popup[type=submit] .newsletter-popup__form .gform_footer .news-item__title.button, .newsletter-popup.theme--waddinxveen .newsletter-popup__form .gform_footer .login-container input.news-item__title[type=submit], .login-container .newsletter-popup.theme--waddinxveen .newsletter-popup__form .gform_footer input.news-item__title[type=submit], .login-container input.newsletter-popup[type=submit] .newsletter-popup__form .gform_footer input.news-item__title[type=submit], .newsletter-popup.theme--bodegraven .newsletter-popup__form .gform_footer .news-item__title.button, .newsletter-popup.theme--bodegraven .newsletter-popup__form .gform_footer .login-container input.news-item__title[type=submit], .login-container .newsletter-popup.theme--bodegraven .newsletter-popup__form .gform_footer input.news-item__title[type=submit] {
    background-color: #ffce2e;
    color: #111558; }
    .news-item__title.theme--bodegraven span, .newsletter-popup.theme--waddinxveen .newsletter-popup__form .gform_footer .news-item__title.button span, .login-container input.newsletter-popup[type=submit] .newsletter-popup__form .gform_footer .news-item__title.button span, .newsletter-popup.theme--waddinxveen .newsletter-popup__form .gform_footer .login-container input.news-item__title[type=submit] span, .login-container .newsletter-popup.theme--waddinxveen .newsletter-popup__form .gform_footer input.news-item__title[type=submit] span, .login-container input.newsletter-popup[type=submit] .newsletter-popup__form .gform_footer input.news-item__title[type=submit] span, .newsletter-popup.theme--bodegraven .newsletter-popup__form .gform_footer .news-item__title.button span, .newsletter-popup.theme--bodegraven .newsletter-popup__form .gform_footer .login-container input.news-item__title[type=submit] span, .login-container .newsletter-popup.theme--bodegraven .newsletter-popup__form .gform_footer input.news-item__title[type=submit] span {
      border-right: 1px solid rgba(17, 21, 88, 0.5); }

.news-item__body {
  width: calc(100% - 30px);
  overflow: hidden;
  background-color: white;
  padding: 15px 15px 10px 15px; }
  .news-item__body:before {
    position: absolute;
    top: 0;
    left: 0;
    width: calc(100% - 30px);
    height: 100%;
    background-color: white;
    box-shadow: 0px 2px 12px rgba(20, 44, 84, 0.1);
    content: '';
    z-index: -1;
    transition: all 250ms ease; }

.news-item__teaser {
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.375em; }

.news-item__date {
  font-size: 12px;
  font-size: 1.2rem;
  line-height: 1.16667em;
  width: fit-content;
  margin-top: 10px;
  padding: 5px 10px;
  font-weight: 600;
  border: 1px solid #111558;
  border-radius: 2px; }

.news-latest {
  padding-bottom: 60px; }
  @media only screen and (max-width: 899px) {
    .news-latest {
      padding-bottom: 40px; } }

.news-latest__head {
  justify-content: space-between;
  align-items: center;
  margin-bottom: 50px; }

.news-latest__back {
  align-items: center;
  text-decoration: underline; }
  .news-latest__back:hover svg {
    margin: 0 -5px 0 15px; }
  .news-latest__back svg {
    position: relative;
    top: 1px;
    width: 12px;
    height: 14px;
    margin-left: 10px;
    color: #111558;
    transition: all 250ms ease; }

.news-latest__wrap {
  width: calc(100% + 30px);
  margin: -15px; }
  @media only screen and (max-width: 1199px) {
    .news-latest__wrap {
      width: calc(100% + 20px);
      margin: -10px; } }
  @media only screen and (max-width: 599px) {
    .news-latest__wrap {
      width: 100%;
      margin: -10px 0; } }
  .news-latest__wrap .news-item {
    width: calc(33.3333% - 30px);
    margin: 15px; }
    @media only screen and (max-width: 1199px) {
      .news-latest__wrap .news-item {
        width: calc(33.3333% - 20px);
        margin: 10px; } }
    @media only screen and (max-width: 899px) {
      .news-latest__wrap .news-item {
        width: calc(50% - 20px); } }
    @media only screen and (max-width: 599px) {
      .news-latest__wrap .news-item {
        width: 100%;
        margin: 10px 0; } }

.news-list {
  padding-bottom: 60px; }
  @media only screen and (max-width: 899px) {
    .news-list {
      padding-bottom: 40px; } }

.news-list__title {
  margin-bottom: 50px; }

.news-list__wrap {
  width: calc(100% + 30px);
  margin: -15px; }
  @media only screen and (max-width: 1199px) {
    .news-list__wrap {
      width: calc(100% + 20px);
      margin: -10px; } }
  @media only screen and (max-width: 599px) {
    .news-list__wrap {
      width: 100%;
      margin: -10px 0; } }
  .news-list__wrap .news-item {
    width: calc(33.3333% - 30px);
    margin: 15px; }
    @media only screen and (max-width: 1199px) {
      .news-list__wrap .news-item {
        width: calc(33.3333% - 20px);
        margin: 10px; } }
    @media only screen and (max-width: 899px) {
      .news-list__wrap .news-item {
        width: calc(50% - 20px); } }
    @media only screen and (max-width: 599px) {
      .news-list__wrap .news-item {
        width: 100%;
        margin: 10px 0; } }

.news-single {
  padding-bottom: 60px; }
  @media only screen and (max-width: 899px) {
    .news-single {
      padding-bottom: 40px; } }

.news-single__image {
  position: relative;
  width: 100%;
  height: 420px;
  z-index: 5; }
  @media only screen and (max-width: 899px) {
    .news-single__image {
      height: 300px; } }
  @media only screen and (max-width: 599px) {
    .news-single__image {
      height: 200px; } }

.news-single__body {
  position: relative;
  width: calc(100% - 20px);
  max-width: 1024px;
  margin: -30px auto 0 auto;
  padding: 20px 70px 40px 70px;
  background-color: white;
  z-index: 10; }
  @media only screen and (max-width: 1199px) {
    .news-single__body {
      padding: 20px 40px 40px 40px; } }
  @media only screen and (max-width: 899px) {
    .news-single__body {
      padding: 20px; } }

.news-single__head {
  margin-bottom: 40px;
  padding-bottom: 10px;
  border-bottom: 1px solid rgba(17, 21, 88, 0.1); }
  .news-single__head strong {
    margin-right: 10px;
    font-weight: 700; }

.news-single__date {
  margin-right: 40px; }

.news-single__title {
  margin-bottom: 40px; }

.news-single__back {
  width: calc(100% - 20px);
  max-width: 1024px;
  margin: 80px auto 0 auto;
  text-decoration: underline; }
  @media only screen and (max-width: 899px) {
    .news-single__back {
      margin: 40px auto 0 auto; } }
  .news-single__back svg {
    position: relative;
    top: 2px;
    width: 14px;
    height: 22px;
    margin-right: 10px;
    color: #111558;
    transition: all 250ms ease; }
  .news-single__back:hover svg {
    margin-left: -5px;
    margin-right: 15px; }

.text-image {
  padding-bottom: 60px; }
  @media only screen and (max-width: 899px) {
    .text-image {
      padding-bottom: 40px; } }
  .text-image .wrapper {
    justify-content: space-between; }

.text-image__column-text {
  width: 67%; }
  @media only screen and (max-width: 899px) {
    .text-image__column-text {
      width: 60%; } }
  @media only screen and (max-width: 599px) {
    .text-image__column-text {
      width: 100%; } }

.text-image__title {
  margin-bottom: 20px; }

.text-image__column-image {
  width: calc(33% - 30px);
  padding-top: 60px; }
  @media only screen and (max-width: 899px) {
    .text-image__column-image {
      width: calc(40% - 20px);
      padding-top: 50px; } }
  @media only screen and (max-width: 599px) {
    .text-image__column-image {
      width: 100%;
      padding-top: 30px; } }
  .text-image__column-image img {
    width: 100%;
    height: auto;
    border-radius: 2px; }

.text-image__image-caption {
  font-size: 10px;
  font-size: 1rem;
  line-height: 1.2em;
  margin-top: 10px;
  font-weight: 300; }

.text-image__link {
  margin-top: 20px; }

.login-container {
  margin: 100px auto;
  display: flex; }
  @media only screen and (max-width: 899px) {
    .login-container {
      margin: 50px auto; } }
  .login-container form {
    width: 100%; }
    .login-container form p {
      margin-bottom: 1em; }
  .login-container label {
    margin: 0;
    margin-bottom: 20px; }
  .login-container input[type=submit] {
    border: 0 !important; }

.newsletter-popup {
  position: fixed;
  bottom: 30px;
  right: 30px;
  z-index: 99999;
  width: 500px;
  height: auto;
  background-color: white;
  padding: 35px;
  box-shadow: 0px 2px 12px rgba(20, 44, 84, 0.1);
  transition: all 300ms ease-in-out;
  pointer-events: all;
  opacity: 1; }
  @media only screen and (max-width: 899px) {
    .newsletter-popup {
      width: 100%;
      bottom: 0;
      right: 0;
      padding: 15px; } }
  .newsletter-popup.is-hidden {
    opacity: 0;
    pointer-events: none; }

.newsletter-popup__title {
  margin-bottom: 20px; }
  @media only screen and (max-width: 899px) {
    .newsletter-popup__title {
      margin-bottom: 10px; } }

.newsletter-popup__form {
  margin-top: 20px; }
  @media only screen and (max-width: 899px) {
    .newsletter-popup__form {
      margin-top: 10px; } }
  .newsletter-popup__form .gfield {
    width: 100%;
    margin-bottom: 0;
    margin-top: 10px; }
  .newsletter-popup__form .gform_fields .gfield:first-child {
    margin-top: 0; }
  .newsletter-popup__form form {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between; }
  .newsletter-popup__form .gform_body {
    width: calc(100% - 150px); }
    @media only screen and (max-width: 899px) {
      .newsletter-popup__form .gform_body {
        width: 100%; } }
  .newsletter-popup__form .gform_footer {
    width: 150px;
    margin-top: 8px;
    align-items: flex-end; }
    @media only screen and (max-width: 899px) {
      .newsletter-popup__form .gform_footer {
        width: 100%; } }
    @media only screen and (max-width: 899px) {
      .newsletter-popup__form .gform_footer .button, .newsletter-popup__form .gform_footer .login-container input[type=submit], .login-container .newsletter-popup__form .gform_footer input[type=submit] {
        width: 100%; } }

.newsletter-popup__close {
  position: absolute;
  top: 15px;
  right: 15px;
  cursor: pointer;
  transition: all 300ms ease-in-out; }
  .newsletter-popup__close svg {
    width: 25px;
    height: 25px; }
    .newsletter-popup__close svg path {
      fill: #142c54; }
  .newsletter-popup__close:hover {
    opacity: 0.7; }

/**
 * 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.1)-10 color utility.
			 */
.color-black-10 {
  color: rgba(0, 0, 0, 0.1); }

/**
			 * `background-color` rgba(0, 0, 0, 0.1)-10 color utility.
			 */
.background-color-black-10 {
  background-color: rgba(0, 0, 0, 0.1); }

/**
			 * `color` white-100 color utility.
			 */
.color-white-100 {
  color: white; }

/**
			 * `background-color` white-100 color utility.
			 */
.background-color-white-100 {
  background-color: white; }

/**
			 * `color` rgba(255, 255, 255, 0.75)-75 color utility.
			 */
.color-white-75 {
  color: rgba(255, 255, 255, 0.75); }

/**
			 * `background-color` rgba(255, 255, 255, 0.75)-75 color utility.
			 */
.background-color-white-75 {
  background-color: rgba(255, 255, 255, 0.75); }

/**
			 * `color` rgba(255, 255, 255, 0.5)-50 color utility.
			 */
.color-white-50 {
  color: rgba(255, 255, 255, 0.5); }

/**
			 * `background-color` rgba(255, 255, 255, 0.5)-50 color utility.
			 */
.background-color-white-50 {
  background-color: rgba(255, 255, 255, 0.5); }

/**
			 * `color` rgba(255, 255, 255, 0.3)-30 color utility.
			 */
.color-white-30 {
  color: rgba(255, 255, 255, 0.3); }

/**
			 * `background-color` rgba(255, 255, 255, 0.3)-30 color utility.
			 */
.background-color-white-30 {
  background-color: rgba(255, 255, 255, 0.3); }

/**
			 * `color` #0088d4-100 color utility.
			 */
.color-blue-100 {
  color: #0088d4; }

/**
			 * `background-color` #0088d4-100 color utility.
			 */
.background-color-blue-100 {
  background-color: #0088d4; }

/**
			 * `color` rgba(0, 136, 212, 0.2)-20 color utility.
			 */
.color-blue-20 {
  color: rgba(0, 136, 212, 0.2); }

/**
			 * `background-color` rgba(0, 136, 212, 0.2)-20 color utility.
			 */
.background-color-blue-20 {
  background-color: rgba(0, 136, 212, 0.2); }

/**
			 * `color` #ffce2e-100 color utility.
			 */
.color-yellow-100 {
  color: #ffce2e; }

/**
			 * `background-color` #ffce2e-100 color utility.
			 */
.background-color-yellow-100 {
  background-color: #ffce2e; }

/**
			 * `color` #ff2e00-100 color utility.
			 */
.color-red-100 {
  color: #ff2e00; }

/**
			 * `background-color` #ff2e00-100 color utility.
			 */
.background-color-red-100 {
  background-color: #ff2e00; }

/**
			 * `color` rgba(255, 46, 0, 0.6)-60 color utility.
			 */
.color-red-60 {
  color: rgba(255, 46, 0, 0.6); }

/**
			 * `background-color` rgba(255, 46, 0, 0.6)-60 color utility.
			 */
.background-color-red-60 {
  background-color: rgba(255, 46, 0, 0.6); }

/**
			 * `color` rgba(255, 46, 0, 0.1)-10 color utility.
			 */
.color-red-10 {
  color: rgba(255, 46, 0, 0.1); }

/**
			 * `background-color` rgba(255, 46, 0, 0.1)-10 color utility.
			 */
.background-color-red-10 {
  background-color: rgba(255, 46, 0, 0.1); }

/**
			 * `color` #fd4f17-100 color utility.
			 */
.color-orange-100 {
  color: #fd4f17; }

/**
			 * `background-color` #fd4f17-100 color utility.
			 */
.background-color-orange-100 {
  background-color: #fd4f17; }

/**
			 * `color` rgba(253, 79, 23, 0.2)-20 color utility.
			 */
.color-orange-20 {
  color: rgba(253, 79, 23, 0.2); }

/**
			 * `background-color` rgba(253, 79, 23, 0.2)-20 color utility.
			 */
.background-color-orange-20 {
  background-color: rgba(253, 79, 23, 0.2); }

/**
			 * `color` #3db3a7-100 color utility.
			 */
.color-green-100 {
  color: #3db3a7; }

/**
			 * `background-color` #3db3a7-100 color utility.
			 */
.background-color-green-100 {
  background-color: #3db3a7; }

/**
			 * `color` #ddffa7-100 color utility.
			 */
.color-lime-100 {
  color: #ddffa7; }

/**
			 * `background-color` #ddffa7-100 color utility.
			 */
.background-color-lime-100 {
  background-color: #ddffa7; }

/**
			 * `color` #6a36ff-100 color utility.
			 */
.color-violet-100 {
  color: #6a36ff; }

/**
			 * `background-color` #6a36ff-100 color utility.
			 */
.background-color-violet-100 {
  background-color: #6a36ff; }

/**
			 * `color` rgba(106, 54, 255, 0.2)-20 color utility.
			 */
.color-violet-20 {
  color: rgba(106, 54, 255, 0.2); }

/**
			 * `background-color` rgba(106, 54, 255, 0.2)-20 color utility.
			 */
.background-color-violet-20 {
  background-color: rgba(106, 54, 255, 0.2); }

/**
			 * `color` #085d78-100 color utility.
			 */
.color-atoll-100 {
  color: #085d78; }

/**
			 * `background-color` #085d78-100 color utility.
			 */
.background-color-atoll-100 {
  background-color: #085d78; }

/**
			 * `color` rgba(8, 93, 120, 0.2)-20 color utility.
			 */
.color-atoll-20 {
  color: rgba(8, 93, 120, 0.2); }

/**
			 * `background-color` rgba(8, 93, 120, 0.2)-20 color utility.
			 */
.background-color-atoll-20 {
  background-color: rgba(8, 93, 120, 0.2); }

/**
			 * `color` #142c54-100 color utility.
			 */
.color-blue-dark-100 {
  color: #142c54; }

/**
			 * `background-color` #142c54-100 color utility.
			 */
.background-color-blue-dark-100 {
  background-color: #142c54; }

/**
			 * `color` rgba(20, 44, 84, 0.2)-20 color utility.
			 */
.color-blue-dark-20 {
  color: rgba(20, 44, 84, 0.2); }

/**
			 * `background-color` rgba(20, 44, 84, 0.2)-20 color utility.
			 */
.background-color-blue-dark-20 {
  background-color: rgba(20, 44, 84, 0.2); }

/**
			 * `color` rgba(20, 44, 84, 0.1)-10 color utility.
			 */
.color-blue-dark-10 {
  color: rgba(20, 44, 84, 0.1); }

/**
			 * `background-color` rgba(20, 44, 84, 0.1)-10 color utility.
			 */
.background-color-blue-dark-10 {
  background-color: rgba(20, 44, 84, 0.1); }

/**
			 * `color` #111558-100 color utility.
			 */
.color-blue-zodiac-100 {
  color: #111558; }

/**
			 * `background-color` #111558-100 color utility.
			 */
.background-color-blue-zodiac-100 {
  background-color: #111558; }

/**
			 * `color` rgba(17, 21, 88, 0.75)-75 color utility.
			 */
.color-blue-zodiac-75 {
  color: rgba(17, 21, 88, 0.75); }

/**
			 * `background-color` rgba(17, 21, 88, 0.75)-75 color utility.
			 */
.background-color-blue-zodiac-75 {
  background-color: rgba(17, 21, 88, 0.75); }

/**
			 * `color` rgba(17, 21, 88, 0.5)-50 color utility.
			 */
.color-blue-zodiac-50 {
  color: rgba(17, 21, 88, 0.5); }

/**
			 * `background-color` rgba(17, 21, 88, 0.5)-50 color utility.
			 */
.background-color-blue-zodiac-50 {
  background-color: rgba(17, 21, 88, 0.5); }

/**
			 * `color` rgba(17, 21, 88, 0.4)-40 color utility.
			 */
.color-blue-zodiac-40 {
  color: rgba(17, 21, 88, 0.4); }

/**
			 * `background-color` rgba(17, 21, 88, 0.4)-40 color utility.
			 */
.background-color-blue-zodiac-40 {
  background-color: rgba(17, 21, 88, 0.4); }

/**
			 * `color` rgba(17, 21, 88, 0.2)-20 color utility.
			 */
.color-blue-zodiac-20 {
  color: rgba(17, 21, 88, 0.2); }

/**
			 * `background-color` rgba(17, 21, 88, 0.2)-20 color utility.
			 */
.background-color-blue-zodiac-20 {
  background-color: rgba(17, 21, 88, 0.2); }

/**
			 * `color` rgba(17, 21, 88, 0.1)-10 color utility.
			 */
.color-blue-zodiac-10 {
  color: rgba(17, 21, 88, 0.1); }

/**
			 * `background-color` rgba(17, 21, 88, 0.1)-10 color utility.
			 */
.background-color-blue-zodiac-10 {
  background-color: rgba(17, 21, 88, 0.1); }

/**
			 * `color` rgba(17, 21, 88, 0)-0 color utility.
			 */
.color-blue-zodiac-0 {
  color: rgba(17, 21, 88, 0); }

/**
			 * `background-color` rgba(17, 21, 88, 0)-0 color utility.
			 */
.background-color-blue-zodiac-0 {
  background-color: rgba(17, 21, 88, 0); }

/**
			 * `color` #dadada-200 color utility.
			 */
.color-grey-200 {
  color: #dadada; }

/**
			 * `background-color` #dadada-200 color utility.
			 */
.background-color-grey-200 {
  background-color: #dadada; }

/**
			 * `color` #fbfbfb-100 color utility.
			 */
.color-grey-100 {
  color: #fbfbfb; }

/**
			 * `background-color` #fbfbfb-100 color utility.
			 */
.background-color-grey-100 {
  background-color: #fbfbfb; }

/**
			 * `color` rgba(251, 251, 251, 0.1)-10 color utility.
			 */
.color-grey-10 {
  color: rgba(251, 251, 251, 0.1); }

/**
			 * `background-color` rgba(251, 251, 251, 0.1)-10 color utility.
			 */
.background-color-grey-10 {
  background-color: rgba(251, 251, 251, 0.1); }

/**
			 * `color` #f2f2f2-100 color utility.
			 */
.color-concrete-100 {
  color: #f2f2f2; }

/**
			 * `background-color` #f2f2f2-100 color utility.
			 */
.background-color-concrete-100 {
  background-color: #f2f2f2; }

/**
 * 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: "Nunito"; }

.text-xs-button {
  font-family: "Montserrat"; }

@media only screen and (max-width: 599px) {
  .text-sm-default {
    font-family: "Nunito"; }
  .text-sm-button {
    font-family: "Montserrat"; } }

@media only screen and (min-width: 600px) {
  .text-md-default {
    font-family: "Nunito"; }
  .text-md-button {
    font-family: "Montserrat"; } }

@media only screen and (min-width: 900px) {
  .text-lg-default {
    font-family: "Nunito"; }
  .text-lg-button {
    font-family: "Montserrat"; } }

@media only screen and (min-width: 1200px) {
  .text-xl-default {
    font-family: "Nunito"; }
  .text-xl-button {
    font-family: "Montserrat"; } }

/**
 * Text size utility classes.
 */
.text-xs-h1 {
  font-size: 48px;
  font-size: 4.8rem;
  line-height: 1.08333em; }

.text-xs-h2 {
  font-size: 32px;
  font-size: 3.2rem;
  line-height: 1.1875em; }

.text-xs-h3 {
  font-size: 26px;
  font-size: 2.6rem;
  line-height: 1.23077em; }

.text-xs-p {
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.625em; }

@media only screen and (max-width: 599px) {
  .text-sm-h1 {
    font-size: 48px;
    font-size: 4.8rem;
    line-height: 1.08333em; }
  .text-sm-h2 {
    font-size: 32px;
    font-size: 3.2rem;
    line-height: 1.1875em; }
  .text-sm-h3 {
    font-size: 26px;
    font-size: 2.6rem;
    line-height: 1.23077em; }
  .text-sm-p {
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 1.625em; } }

@media only screen and (min-width: 600px) {
  .text-md-h1 {
    font-size: 48px;
    font-size: 4.8rem;
    line-height: 1.08333em; }
  .text-md-h2 {
    font-size: 32px;
    font-size: 3.2rem;
    line-height: 1.1875em; }
  .text-md-h3 {
    font-size: 26px;
    font-size: 2.6rem;
    line-height: 1.23077em; }
  .text-md-p {
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 1.625em; } }

@media only screen and (min-width: 900px) {
  .text-lg-h1 {
    font-size: 48px;
    font-size: 4.8rem;
    line-height: 1.08333em; }
  .text-lg-h2 {
    font-size: 32px;
    font-size: 3.2rem;
    line-height: 1.1875em; }
  .text-lg-h3 {
    font-size: 26px;
    font-size: 2.6rem;
    line-height: 1.23077em; }
  .text-lg-p {
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 1.625em; } }

@media only screen and (min-width: 1200px) {
  .text-xl-h1 {
    font-size: 48px;
    font-size: 4.8rem;
    line-height: 1.08333em; }
  .text-xl-h2 {
    font-size: 32px;
    font-size: 3.2rem;
    line-height: 1.1875em; }
  .text-xl-h3 {
    font-size: 26px;
    font-size: 2.6rem;
    line-height: 1.23077em; }
  .text-xl-p {
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 1.625em; } }

/**
 * 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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFpbi5jc3MiLCJzb3VyY2VzIjpbIm1haW4uc2NzcyIsInNldHRpbmdzL19hbGwuc2NzcyIsInNldHRpbmdzL190eXBvZ3JhcGh5LnNjc3MiLCJzZXR0aW5ncy9fY29sb3Iuc2NzcyIsInNldHRpbmdzL196LWluZGV4LnNjc3MiLCJzZXR0aW5ncy9fZGVmaW5pdGlvbnMuc2NzcyIsIi4uLy4uL2J1aWxkL25vZGVfbW9kdWxlcy9ub3JtYWxpemUuY3NzL25vcm1hbGl6ZS5jc3MiLCIuLi8uLi9idWlsZC9ub2RlX21vZHVsZXMvb3dsLmNhcm91c2VsL3NyYy9zY3NzL293bC5jYXJvdXNlbC5zY3NzIiwiLi4vLi4vYnVpbGQvbm9kZV9tb2R1bGVzL293bC5jYXJvdXNlbC9zcmMvc2Nzcy9fY29yZS5zY3NzIiwiLi4vLi4vYnVpbGQvbm9kZV9tb2R1bGVzL293bC5jYXJvdXNlbC9zcmMvc2Nzcy9fYW5pbWF0ZS5zY3NzIiwiLi4vLi4vYnVpbGQvbm9kZV9tb2R1bGVzL293bC5jYXJvdXNlbC9zcmMvc2Nzcy9fYXV0b2hlaWdodC5zY3NzIiwiLi4vLi4vYnVpbGQvbm9kZV9tb2R1bGVzL293bC5jYXJvdXNlbC9zcmMvc2Nzcy9fbGF6eWxvYWQuc2NzcyIsIi4uLy4uL2J1aWxkL25vZGVfbW9kdWxlcy9vd2wuY2Fyb3VzZWwvc3JjL3Njc3MvX3ZpZGVvLnNjc3MiLCJ0b29scy9fYWxsLnNjc3MiLCJ0b29scy9fZnVuY3Rpb25zLnNjc3MiLCJ0b29scy9fbWFnbmlmaWMtcG9wdXAuc2NzcyIsInRvb2xzL19taXhpbnMuc2NzcyIsImdlbmVyaWMvX2Jhc2Uuc2NzcyIsImdlbmVyaWMvX3Jlc2V0LnNjc3MiLCJvYmplY3RzL19icmVhZGNydW1icy5zY3NzIiwib2JqZWN0cy9fYnV0dG9ucy5zY3NzIiwib2JqZWN0cy9fY21zLW91dHB1dC5zY3NzIiwib2JqZWN0cy9fY29udGFpbmVyLnNjc3MiLCJvYmplY3RzL19jb250ZW50LWNvbnN0cmFpbnQuc2NzcyIsIm9iamVjdHMvX2ZsZXguc2NzcyIsIm9iamVjdHMvX2Zvcm0uc2NzcyIsIm9iamVjdHMvX2hlYWRpbmdzLnNjc3MiLCJvYmplY3RzL19sYXp5LWxvYWQuc2NzcyIsIm9iamVjdHMvX3BhZ2luYXRpb24uc2NzcyIsIm9iamVjdHMvX3RoZW1lLnNjc3MiLCJvYmplY3RzL193cmFwcGVyLnNjc3MiLCJjb21wb25lbnRzL19hY3Rpdml0eS1jaGVja291dC5zY3NzIiwiY29tcG9uZW50cy9fYWN0aXZpdHktZmlsdGVycy5zY3NzIiwiY29tcG9uZW50cy9fYWN0aXZpdHktaXRlbS5zY3NzIiwiY29tcG9uZW50cy9fYWN0aXZpdHktbGlzdC5zY3NzIiwiY29tcG9uZW50cy9fYWN0aXZpdHktc2luZ2xlLnNjc3MiLCJjb21wb25lbnRzL19jYXJ0LWl0ZW0uc2NzcyIsImNvbXBvbmVudHMvX2NhcnQuc2NzcyIsImNvbXBvbmVudHMvX2NvbnRlbnQtZGVmYXVsdC5zY3NzIiwiY29tcG9uZW50cy9fY29udGVudC1mb3JtLnNjc3MiLCJjb21wb25lbnRzL19jb250ZW50LWhlYWRlci5zY3NzIiwiY29tcG9uZW50cy9fZm9vdGVyLnNjc3MiLCJjb21wb25lbnRzL19oZWFkZXIuc2NzcyIsImNvbXBvbmVudHMvX25hdmlnYXRpb24tbW9iaWxlLnNjc3MiLCJjb21wb25lbnRzL19uZXdzLWl0ZW0uc2NzcyIsImNvbXBvbmVudHMvX25ld3MtbGF0ZXN0LnNjc3MiLCJjb21wb25lbnRzL19uZXdzLWxpc3Quc2NzcyIsImNvbXBvbmVudHMvX25ld3Mtc2luZ2xlLnNjc3MiLCJjb21wb25lbnRzL190ZXh0LWltYWdlLnNjc3MiLCJjb21wb25lbnRzL19sb2dpbi5zY3NzIiwiY29tcG9uZW50cy9fbmV3c2xldHRlci1wb3B1cC5zY3NzIiwidXRpbGl0aWVzL19jb2xvci5zY3NzIiwidXRpbGl0aWVzL19oZWxwZXJzLnNjc3MiLCJ1dGlsaXRpZXMvX29iamVjdC1maXQuc2NzcyIsInV0aWxpdGllcy9fcG9zaXRpb24uc2NzcyIsInV0aWxpdGllcy9fdGV4dC5zY3NzIiwidXRpbGl0aWVzL192ZXJ0aWNhbC1yaHl0aG0uc2NzcyIsInV0aWxpdGllcy9fei1pbmRleC5zY3NzIl0sInNvdXJjZXNDb250ZW50IjpbIi8qKlxyXG4gKiBTZXR0aW5ncy5cclxuICovXHJcbkBpbXBvcnQgJ3NldHRpbmdzL2FsbCc7XHJcblxyXG5cclxuLyoqXHJcbiAqIFZlbmRvci5cclxuICovXHJcbkBpbXBvcnQgJy4uLy4uL2J1aWxkL25vZGVfbW9kdWxlcy9ub3JtYWxpemUuY3NzL25vcm1hbGl6ZSc7XHJcbkBpbXBvcnQgJy4uLy4uL2J1aWxkL25vZGVfbW9kdWxlcy9vd2wuY2Fyb3VzZWwvc3JjL3Njc3Mvb3dsLmNhcm91c2VsJztcclxuXHJcbi8qKlxyXG4gKiBUb29scy5cclxuICovXHJcbkBpbXBvcnQgJ3Rvb2xzL2FsbCc7XHJcblxyXG5cclxuLyoqXHJcbiAqIEVsZW1lbnRzLlxyXG4gKi9cclxuXHJcblxyXG4vKipcclxuICogR2VuZXJhbC5cclxuICovXHJcbkBpbXBvcnQgJ2dlbmVyaWMvYmFzZSc7XHJcbkBpbXBvcnQgJ2dlbmVyaWMvcmVzZXQnO1xyXG5cclxuXHJcbi8qKlxyXG4gKiBPYmplY3RzLlxyXG4gKi9cclxuQGltcG9ydCAnb2JqZWN0cy9icmVhZGNydW1icyc7XHJcbkBpbXBvcnQgJ29iamVjdHMvYnV0dG9ucyc7XHJcbkBpbXBvcnQgJ29iamVjdHMvY21zLW91dHB1dCc7XHJcbkBpbXBvcnQgJ29iamVjdHMvY29udGFpbmVyJztcclxuQGltcG9ydCAnb2JqZWN0cy9jb250ZW50LWNvbnN0cmFpbnQnO1xyXG5AaW1wb3J0ICdvYmplY3RzL2ZsZXgnO1xyXG5AaW1wb3J0ICdvYmplY3RzL2Zvcm0nO1xyXG5AaW1wb3J0ICdvYmplY3RzL2hlYWRpbmdzJztcclxuQGltcG9ydCAnb2JqZWN0cy9sYXp5LWxvYWQnO1xyXG5AaW1wb3J0ICdvYmplY3RzL3BhZ2luYXRpb24nO1xyXG5AaW1wb3J0ICdvYmplY3RzL3RoZW1lJztcclxuQGltcG9ydCAnb2JqZWN0cy93cmFwcGVyJztcclxuXHJcblxyXG4vKipcclxuICogQ29tcG9uZW50cy5cclxuICovXHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvYWN0aXZpdHktY2hlY2tvdXQnO1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL2FjdGl2aXR5LWZpbHRlcnMnO1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL2FjdGl2aXR5LWl0ZW0nO1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL2FjdGl2aXR5LWxpc3QnO1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL2FjdGl2aXR5LXNpbmdsZSc7XHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvY2FydC1pdGVtJztcclxuQGltcG9ydCAnY29tcG9uZW50cy9jYXJ0JztcclxuQGltcG9ydCAnY29tcG9uZW50cy9jb250ZW50LWRlZmF1bHQnO1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL2NvbnRlbnQtZm9ybSc7XHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvY29udGVudC1oZWFkZXInO1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL2Zvb3Rlcic7XHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvaGVhZGVyJztcclxuQGltcG9ydCAnY29tcG9uZW50cy9uYXZpZ2F0aW9uLW1vYmlsZSc7XHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvbmV3cy1pdGVtJztcclxuQGltcG9ydCAnY29tcG9uZW50cy9uZXdzLWxhdGVzdCc7XHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvbmV3cy1saXN0JztcclxuQGltcG9ydCAnY29tcG9uZW50cy9uZXdzLXNpbmdsZSc7XHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvdGV4dC1pbWFnZSc7XHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvbG9naW4nO1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL25ld3NsZXR0ZXItcG9wdXAnO1xyXG5cclxuXHJcbi8qKlxyXG4gKiBVdGlsaXRpZXMuXHJcbiAqL1xyXG5AaW1wb3J0ICd1dGlsaXRpZXMvY29sb3InO1xyXG5AaW1wb3J0ICd1dGlsaXRpZXMvaGVscGVycyc7XHJcbkBpbXBvcnQgJ3V0aWxpdGllcy9vYmplY3QtZml0JztcclxuQGltcG9ydCAndXRpbGl0aWVzL3Bvc2l0aW9uJztcclxuQGltcG9ydCAndXRpbGl0aWVzL3RleHQnO1xyXG5AaW1wb3J0ICd1dGlsaXRpZXMvdmVydGljYWwtcmh5dGhtJztcclxuQGltcG9ydCAndXRpbGl0aWVzL3otaW5kZXgnO1xyXG4iLCIvKipcclxuICogU2V0dGluZ3MuXHJcbiAqL1xyXG4gXHJcbkBpbXBvcnQgJ3R5cG9ncmFwaHknO1xyXG5AaW1wb3J0ICdjb2xvcic7XHJcbkBpbXBvcnQgJ3otaW5kZXgnO1xyXG5AaW1wb3J0ICdkZWZpbml0aW9ucyc7XHJcbiIsIi8qKlxyXG4gKiBGb250IGZhbWlseSBtYXAuXHJcbiAqL1xyXG5cclxuJGZvbnQtZmFtaWx5OiAoXHJcblx0J2RlZmF1bHQnOiAnTnVuaXRvJyxcclxuXHQnYnV0dG9uJzogJ01vbnRzZXJyYXQnLFxyXG4pO1xyXG5cclxuXHJcbi8qKlxyXG4gKiBGb250IHNpemUgbWFwLlxyXG4gKi9cclxuXHJcbiRmb250LXNpemU6IChcclxuXHQnaDEnOiA0OHB4LFxyXG5cdCdoMic6IDMycHgsXHJcblx0J2gzJzogMjZweCxcclxuXHQncCc6IDE2cHhcclxuKTtcclxuXHJcblxyXG4vKipcclxuICogTGluZSBoZWlnaHQgbWFwLlxyXG4gKi9cclxuXHJcbiRsaW5lLWhlaWdodDogKFxyXG5cdCdoMSc6IDUycHgsXHJcblx0J2gyJzogMzhweCxcclxuXHQnaDMnOiAzMnB4LFxyXG5cdCdwJzogMjZweFxyXG4pO1xyXG4iLCIvKipcclxuICogQ29sb3IgTWFwIChodHRwczovL2NvbnZlcnRhY29sb3IuY29tLykuXHJcbiAqIENvbG9yIE5hbWVzIChodHRwczovL2NoaXIuYWcvcHJvamVjdHMvbmFtZS10aGF0LWNvbG9yLylcclxuICovXHJcblxyXG4kY29sb3JzOiAoXHJcblx0J2JsYWNrJzogKFxyXG5cdFx0JzEwMCc6IGhzbGEoMCwgMCUsIDAlLCAxKSwgLy8gIzAwMDAwMCwgMTAwJVxyXG5cdFx0JzEwJzogaHNsYSgwLCAwJSwgMCUsIDAuMSkgLy8gIzAwMDAwMCwgMTAlXHJcblx0KSxcclxuXHQnd2hpdGUnOiAoXHJcblx0XHQnMTAwJzogaHNsYSgwLCAwJSwgMTAwJSwgMSksIC8vICNGRkZGRkYsIDEwMCVcclxuXHRcdCc3NSc6IGhzbGEoMCwgMCUsIDEwMCUsIDAuNzUpLCAvLyAjRkZGRkZGLCAxMDAlXHJcblx0XHQnNTAnOiBoc2xhKDAsIDAlLCAxMDAlLCAwLjUwKSwgLy8gI0ZGRkZGRiwgMTAwJVxyXG5cdFx0JzMwJzogaHNsYSgwLCAwJSwgMTAwJSwgMC4zMCkgLy8gI0ZGRkZGRiwgMTAwJVxyXG5cdCksXHJcblx0J2JsdWUnOiAoXHJcblx0XHQnMTAwJzogaHNsYSgyMDEuNSwgMTAwJSwgNDEuNiUsIDEpLCAvLyAjMDA4OEQ0LCAxMDAlXHJcblx0XHQnMjAnOiBoc2xhKDIwMS41LCAxMDAlLCA0MS42JSwgMC4yKSAvLyAjMDA4OEQ0LCAyMCVcclxuXHQpLFxyXG5cdCd5ZWxsb3cnOiAoXHJcblx0XHQnMTAwJzogaHNsYSg0NS45LCAxMDAlLCA1OSUsIDEpIC8vICNGRkNFMkUsIDEwMCVcclxuXHQpLFxyXG5cdCdyZWQnOiAoXHJcblx0XHQnMTAwJzogaHNsYSgxMC44LCAxMDAlLCA1MCUsIDEpLCAvLyAjRkYyRTAwLCAxMDAlXHJcblx0XHQnNjAnOiBoc2xhKDEwLjgsIDEwMCUsIDUwJSwgMC42KSwgLy8gI0ZGMkUwMCwgNjAlXHJcblx0XHQnMTAnOiBoc2xhKDEwLjgsIDEwMCUsIDUwJSwgMC4xKSAvLyAjRkYyRTAwLCAxMDAlXHJcblx0KSxcclxuXHQnb3JhbmdlJzogKFxyXG5cdFx0JzEwMCc6IGhzbGEoMTQuNiwgOTguMyUsIDU0LjElLCAxKSwgLy8gI0ZENEYxNywgMTAwJVxyXG5cdFx0JzIwJzogaHNsYSgxNC42LCA5OC4zJSwgNTQuMSUsIDAuMikgLy8gI0ZENEYxNywgMjAlXHJcblx0KSxcclxuXHQnZ3JlZW4nOiAoXHJcblx0XHQnMTAwJzogaHNsYSgxNzMuOSwgNDkuMiUsIDQ3LjElLCAxKSAvLyAjM0RCM0E3LCAxMDAlXHJcblx0KSxcclxuXHQnbGltZSc6IChcclxuXHRcdCcxMDAnOiBoc2xhKDgzLjIsIDEwMCUsIDgyLjclLCAxKSAvLyAjRERGRkE3LCAxMDAlXHJcblx0KSxcclxuXHQndmlvbGV0JzogKFxyXG5cdFx0JzEwMCc6IGhzbGEoMjU1LjUsIDEwMCUsIDYwLjYlLCAxKSwgLy8gIzZBMzZGRiwgMTAwJVxyXG5cdFx0JzIwJzogaHNsYSgyNTUuNSwgMTAwJSwgNjAuNiUsIDAuMikgLy8gIzZBMzZGRiwgMjAlXHJcblx0KSxcclxuXHQnYXRvbGwnOiAoXHJcblx0XHQnMTAwJzogaHNsYSgxOTQuNSwgODcuNSUsIDI1LjElLCAxKSwgLy8gIzA4NUQ3OCwgMTAwJVxyXG5cdFx0JzIwJzogaHNsYSgxOTQuNSwgODcuNSUsIDI1LjElLCAwLjIpIC8vICMwODVENzgsIDIwJVxyXG5cdCksXHJcblx0J2JsdWUtZGFyayc6IChcclxuXHRcdCcxMDAnOiBoc2xhKDIxNy41LCA2MS41JSwgMjAuNCUsIDEpLCAvLyAjMTQyQzU0LCAxMDAlXHJcblx0XHQnMjAnOiBoc2xhKDIxNy41LCA2MS41JSwgMjAuNCUsIDAuMiksIC8vICMxNDJDNTQsIDIwJVxyXG5cdFx0JzEwJzogaHNsYSgyMTcuNSwgNjEuNSUsIDIwLjQlLCAwLjEpIC8vICMxNDJDNTQsIDEwJVxyXG5cdCksXHJcblx0J2JsdWUtem9kaWFjJzogKFxyXG5cdFx0JzEwMCc6IGhzbGEoMjM2LjYsIDY3LjYlLCAyMC42JSwgMSksIC8vICMxMTE1NTgsIDEwMCVcclxuXHRcdCc3NSc6IGhzbGEoMjM2LjYsIDY3LjYlLCAyMC42JSwgMC43NSksIC8vICMxMTE1NTgsIDc1JVxyXG5cdFx0JzUwJzogaHNsYSgyMzYuNiwgNjcuNiUsIDIwLjYlLCAwLjUpLCAvLyAjMTExNTU4LCA1MCVcclxuXHRcdCc0MCc6IGhzbGEoMjM2LjYsIDY3LjYlLCAyMC42JSwgMC40KSwgLy8gIzExMTU1OCwgNDAlXHJcblx0XHQnMjAnOiBoc2xhKDIzNi42LCA2Ny42JSwgMjAuNiUsIDAuMiksIC8vICMxMTE1NTgsIDIwJVxyXG5cdFx0JzEwJzogaHNsYSgyMzYuNiwgNjcuNiUsIDIwLjYlLCAwLjEpLCAvLyAjMTExNTU4LCAxMCVcclxuXHRcdCcwJzogaHNsYSgyMzYuNiwgNjcuNiUsIDIwLjYlLCAwKSAvLyAjMTExNTU4LCAwJVxyXG5cdCksXHJcblx0J2dyZXknOiAoXHJcblx0XHQnMjAwJzogaHNsYSgwLCAwJSwgODUuNSUsIDEpLCAvLyAjREFEQURBLCAxMDAlXHJcblx0XHQnMTAwJzogaHNsYSgwLCAwJSwgOTguNCUsIDEpLCAvLyAjRkJGQkZCLCAxMDAlXHJcblx0XHQnMTAnOiBoc2xhKDAsIDAlLCA5OC40JSwgMC4xKSAvLyAjRkJGQkZCLCAxMDAlXHJcblx0KSxcclxuXHQnY29uY3JldGUnOiAoXHJcblx0XHQnMTAwJzogaHNsYSgwLCAwJSwgOTQuOSUsIDEpLCAvLyAjRjJGMkYyLCAxMDAlXHJcblx0KVxyXG4pO1xyXG5cclxuXHJcbi8qKlxyXG4gKiBDb2xvcnMgVmFyaWFibGVzLlxyXG4gKi9cclxuJGJsYWNrLTEwMDogbWFwLWdldChtYXAtZ2V0KCRjb2xvcnMsICdibGFjaycpLCAnMTAwJyk7XHJcbiRibGFjay0xMDogbWFwLWdldChtYXAtZ2V0KCRjb2xvcnMsICdibGFjaycpLCAnMTAnKTtcclxuJHdoaXRlLTEwMDogbWFwLWdldChtYXAtZ2V0KCRjb2xvcnMsICd3aGl0ZScpLCAnMTAwJyk7XHJcbiR3aGl0ZS03NTogbWFwLWdldChtYXAtZ2V0KCRjb2xvcnMsICd3aGl0ZScpLCAnNzUnKTtcclxuJHdoaXRlLTUwOiBtYXAtZ2V0KG1hcC1nZXQoJGNvbG9ycywgJ3doaXRlJyksICc1MCcpO1xyXG4kd2hpdGUtMzA6IG1hcC1nZXQobWFwLWdldCgkY29sb3JzLCAnd2hpdGUnKSwgJzMwJyk7XHJcbiRibHVlLTEwMDogbWFwLWdldChtYXAtZ2V0KCRjb2xvcnMsICdibHVlJyksICcxMDAnKTtcclxuJGJsdWUtMjA6IG1hcC1nZXQobWFwLWdldCgkY29sb3JzLCAnYmx1ZScpLCAnMjAnKTtcclxuJHllbGxvdy0xMDA6IG1hcC1nZXQobWFwLWdldCgkY29sb3JzLCAneWVsbG93JyksICcxMDAnKTtcclxuJHJlZC0xMDA6IG1hcC1nZXQobWFwLWdldCgkY29sb3JzLCAncmVkJyksICcxMDAnKTtcclxuJHJlZC02MDogbWFwLWdldChtYXAtZ2V0KCRjb2xvcnMsICdyZWQnKSwgJzYwJyk7XHJcbiRyZWQtMTA6IG1hcC1nZXQobWFwLWdldCgkY29sb3JzLCAncmVkJyksICcxMCcpO1xyXG4kb3JhbmdlLTEwMDogbWFwLWdldChtYXAtZ2V0KCRjb2xvcnMsICdvcmFuZ2UnKSwgJzEwMCcpO1xyXG4kb3JhbmdlLTIwOiBtYXAtZ2V0KG1hcC1nZXQoJGNvbG9ycywgJ29yYW5nZScpLCAnMjAnKTtcclxuJGdyZWVuLTEwMDogbWFwLWdldChtYXAtZ2V0KCRjb2xvcnMsICdncmVlbicpLCAnMTAwJyk7XHJcbiRsaW1lLTEwMDogbWFwLWdldChtYXAtZ2V0KCRjb2xvcnMsICdsaW1lJyksICcxMDAnKTtcclxuJHZpb2xldC0xMDA6IG1hcC1nZXQobWFwLWdldCgkY29sb3JzLCAndmlvbGV0JyksICcxMDAnKTtcclxuJHZpb2xldC0yMDogbWFwLWdldChtYXAtZ2V0KCRjb2xvcnMsICd2aW9sZXQnKSwgJzIwJyk7XHJcbiRhdG9sbC0xMDA6IG1hcC1nZXQobWFwLWdldCgkY29sb3JzLCAnYXRvbGwnKSwgJzEwMCcpO1xyXG4kYXRvbGwtMjA6IG1hcC1nZXQobWFwLWdldCgkY29sb3JzLCAnYXRvbGwnKSwgJzIwJyk7XHJcbiRibHVlLWRhcmstMTAwOiBtYXAtZ2V0KG1hcC1nZXQoJGNvbG9ycywgJ2JsdWUtZGFyaycpLCAnMTAwJyk7XHJcbiRibHVlLWRhcmstMjA6IG1hcC1nZXQobWFwLWdldCgkY29sb3JzLCAnYmx1ZS1kYXJrJyksICcyMCcpO1xyXG4kYmx1ZS1kYXJrLTEwOiBtYXAtZ2V0KG1hcC1nZXQoJGNvbG9ycywgJ2JsdWUtZGFyaycpLCAnMTAnKTtcclxuJGJsdWUtem9kaWFjLTEwMDogbWFwLWdldChtYXAtZ2V0KCRjb2xvcnMsICdibHVlLXpvZGlhYycpLCAnMTAwJyk7XHJcbiRibHVlLXpvZGlhYy03NTogbWFwLWdldChtYXAtZ2V0KCRjb2xvcnMsICdibHVlLXpvZGlhYycpLCAnNzUnKTtcclxuJGJsdWUtem9kaWFjLTUwOiBtYXAtZ2V0KG1hcC1nZXQoJGNvbG9ycywgJ2JsdWUtem9kaWFjJyksICc1MCcpO1xyXG4kYmx1ZS16b2RpYWMtNDA6IG1hcC1nZXQobWFwLWdldCgkY29sb3JzLCAnYmx1ZS16b2RpYWMnKSwgJzQwJyk7XHJcbiRibHVlLXpvZGlhYy0yMDogbWFwLWdldChtYXAtZ2V0KCRjb2xvcnMsICdibHVlLXpvZGlhYycpLCAnMjAnKTtcclxuJGJsdWUtem9kaWFjLTEwOiBtYXAtZ2V0KG1hcC1nZXQoJGNvbG9ycywgJ2JsdWUtem9kaWFjJyksICcxMCcpO1xyXG4kYmx1ZS16b2RpYWMtMDogbWFwLWdldChtYXAtZ2V0KCRjb2xvcnMsICdibHVlLXpvZGlhYycpLCAnMCcpO1xyXG4kZ3JleS0yMDA6IG1hcC1nZXQobWFwLWdldCgkY29sb3JzLCAnZ3JleScpLCAnMjAwJyk7XHJcbiRncmV5LTEwMDogbWFwLWdldChtYXAtZ2V0KCRjb2xvcnMsICdncmV5JyksICcxMDAnKTtcclxuJGdyZXktMTA6IG1hcC1nZXQobWFwLWdldCgkY29sb3JzLCAnZ3JleScpLCAnMTAnKTtcclxuJGNvbmNyZXRlLTEwMDogbWFwLWdldChtYXAtZ2V0KCRjb2xvcnMsICdjb25jcmV0ZScpLCAnMTAwJyk7XHJcbiIsIi8vIEEgbGltaXRlZCBhcnJheSBvZiB2YWx1ZXMgZm9yIHRoZSBgei1pbmRleGAgcHJvcGVydHkgdG8gcHJldmVudFxyXG4vLyBFeGFnZ2VyYXRlZCBhbW91bnRzIGFuZCB1Z2x5IGhhY2tzLlxyXG5cclxuJHotaW5kZXg6IChcclxuXHQnMCc6ICAwLFxyXG5cdCcxJzogIDEwLFxyXG5cdCcyJzogIDIwLFxyXG5cdCczJzogIDMwLFxyXG5cdCc0JzogIDQwLFxyXG5cdCc1JzogIDUwLFxyXG5cdCc2JzogIDYwLFxyXG5cdCc3JzogIDcwLFxyXG5cdCc4JzogIDgwLFxyXG5cdCc5JzogIDkwLFxyXG5cdCcxMCc6IDEwMFxyXG4pO1xyXG4iLCIvKipcclxuICogR3JpZC5cclxuICovXHJcblxyXG4vLyBHcmlkIHdpZHRoLlxyXG4vLyBNYXhpbXVtIGNvbnRhaW5lciB3aWR0aC5cclxuJGdyaWQtd2lkdGg6IDEwMjRweDtcclxuXHJcbi8vIEdyaWQgY29sdW1ucy5cclxuLy8gQW1vdW50IG9mIGdyaWQgY29sdW1ucyB0byBjYWxjdWxhdGUgYSBjb2x1bW4gd2lkdGggd2l0aC5cclxuJGdyaWQtY29sdW1uczogMTI7XHJcblxyXG4vLyBHcmlkIGdhcC5cclxuLy8gU3BhY2UgYmV0d2VlbiBncmlkIGNvbHVtbnMsIGF1dG9tYXRlZC5cclxuJGdyaWQtZ2FwOiAyMHB4O1xyXG5cclxuXHJcbi8qKlxyXG4gKiBBc3NldHMuXHJcbiAqL1xyXG5cclxuLy8gSW1hZ2UgcGF0aC5cclxuJGltYWdlLXBhdGg6ICcuLi9pbWFnZXMvJztcclxuXHJcblxyXG4vKipcclxuICogQm9keS5cclxuICovXHJcblxyXG4vLyBCb2R5IGJhY2tncm91bmQgY29sb3IuXHJcbiRib2R5LWJhY2tncm91bmQtY29sb3I6ICRncmV5LTEwMDtcclxuXHJcbi8vIEJvZHkgY29sb3IuXHJcbiRib2R5LWNvbG9yOiAkYmx1ZS16b2RpYWMtMTAwO1xyXG5cclxuLy8gQm9keSBmb250IGZhbWlseS5cclxuJGJvZHktZm9udC1mYW1pbHk6IG1hcC1nZXQoJGZvbnQtZmFtaWx5LCAnZGVmYXVsdCcpO1xyXG5cclxuLy8gQm9keSB0ZXh0LlxyXG4kYm9keS10ZXh0OiAncCc7XHJcblxyXG5cclxuLyoqXHJcbiAqIE90aGVyLlxyXG4gKi9cclxuXHJcbi8vIExpbmsgY29sb3IuXHJcbiRsaW5rLWNvbG9yOiAkYmxhY2stMTAwO1xyXG5cclxuLy8gU2VsZWN0IGNvbG9yLlxyXG4qOjpzZWxlY3Rpb24ge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICRibHVlLXpvZGlhYy0xMDA7XHJcbiAgY29sb3I6ICR3aGl0ZS0xMDA7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBSZXNwb25zaXZlLlxyXG4gKi9cclxuXHJcbi8vIEdyaWQgYnJlYWtwb2ludCBhbGlhcy5cclxuJGJyZWFrcG9pbnRzOiAoXHJcblx0eHM6IG51bGwsXHJcblx0c206ICdwaG9uZScsXHJcblx0bWQ6ICd0YWJsZXQtcG9ydHJhaXQtdXAnLFxyXG5cdGxnOiAndGFibGV0LWxhbmRzY2FwZS11cCcsXHJcblx0eGw6ICdkZXNrdG9wJ1xyXG4pO1xyXG4iLCIvKiEgbm9ybWFsaXplLmNzcyB2OC4wLjEgfCBNSVQgTGljZW5zZSB8IGdpdGh1Yi5jb20vbmVjb2xhcy9ub3JtYWxpemUuY3NzICovXG5cbi8qIERvY3VtZW50XG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIGxpbmUgaGVpZ2h0IGluIGFsbCBicm93c2Vycy5cbiAqIDIuIFByZXZlbnQgYWRqdXN0bWVudHMgb2YgZm9udCBzaXplIGFmdGVyIG9yaWVudGF0aW9uIGNoYW5nZXMgaW4gaU9TLlxuICovXG5cbmh0bWwge1xuICBsaW5lLWhlaWdodDogMS4xNTsgLyogMSAqL1xuICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7IC8qIDIgKi9cbn1cblxuLyogU2VjdGlvbnNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogUmVtb3ZlIHRoZSBtYXJnaW4gaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbmJvZHkge1xuICBtYXJnaW46IDA7XG59XG5cbi8qKlxuICogUmVuZGVyIHRoZSBgbWFpbmAgZWxlbWVudCBjb25zaXN0ZW50bHkgaW4gSUUuXG4gKi9cblxubWFpbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vKipcbiAqIENvcnJlY3QgdGhlIGZvbnQgc2l6ZSBhbmQgbWFyZ2luIG9uIGBoMWAgZWxlbWVudHMgd2l0aGluIGBzZWN0aW9uYCBhbmRcbiAqIGBhcnRpY2xlYCBjb250ZXh0cyBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBTYWZhcmkuXG4gKi9cblxuaDEge1xuICBmb250LXNpemU6IDJlbTtcbiAgbWFyZ2luOiAwLjY3ZW0gMDtcbn1cblxuLyogR3JvdXBpbmcgY29udGVudFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBGaXJlZm94LlxuICogMi4gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZSBhbmQgSUUuXG4gKi9cblxuaHIge1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDsgLyogMSAqL1xuICBoZWlnaHQ6IDA7IC8qIDEgKi9cbiAgb3ZlcmZsb3c6IHZpc2libGU7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICogMi4gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbnByZSB7XG4gIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTsgLyogMSAqL1xuICBmb250LXNpemU6IDFlbTsgLyogMiAqL1xufVxuXG4vKiBUZXh0LWxldmVsIHNlbWFudGljc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGdyYXkgYmFja2dyb3VuZCBvbiBhY3RpdmUgbGlua3MgaW4gSUUgMTAuXG4gKi9cblxuYSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4vKipcbiAqIDEuIFJlbW92ZSB0aGUgYm90dG9tIGJvcmRlciBpbiBDaHJvbWUgNTctXG4gKiAyLiBBZGQgdGhlIGNvcnJlY3QgdGV4dCBkZWNvcmF0aW9uIGluIENocm9tZSwgRWRnZSwgSUUsIE9wZXJhLCBhbmQgU2FmYXJpLlxuICovXG5cbmFiYnJbdGl0bGVdIHtcbiAgYm9yZGVyLWJvdHRvbTogbm9uZTsgLyogMSAqL1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgLyogMiAqL1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSBkb3R0ZWQ7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZm9udCB3ZWlnaHQgaW4gQ2hyb21lLCBFZGdlLCBhbmQgU2FmYXJpLlxuICovXG5cbmIsXG5zdHJvbmcge1xuICBmb250LXdlaWdodDogYm9sZGVyO1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIGluaGVyaXRhbmNlIGFuZCBzY2FsaW5nIG9mIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gKiAyLiBDb3JyZWN0IHRoZSBvZGQgYGVtYCBmb250IHNpemluZyBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxuY29kZSxcbmtiZCxcbnNhbXAge1xuICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7IC8qIDEgKi9cbiAgZm9udC1zaXplOiAxZW07IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5zbWFsbCB7XG4gIGZvbnQtc2l6ZTogODAlO1xufVxuXG4vKipcbiAqIFByZXZlbnQgYHN1YmAgYW5kIGBzdXBgIGVsZW1lbnRzIGZyb20gYWZmZWN0aW5nIHRoZSBsaW5lIGhlaWdodCBpblxuICogYWxsIGJyb3dzZXJzLlxuICovXG5cbnN1YixcbnN1cCB7XG4gIGZvbnQtc2l6ZTogNzUlO1xuICBsaW5lLWhlaWdodDogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbnN1YiB7XG4gIGJvdHRvbTogLTAuMjVlbTtcbn1cblxuc3VwIHtcbiAgdG9wOiAtMC41ZW07XG59XG5cbi8qIEVtYmVkZGVkIGNvbnRlbnRcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogUmVtb3ZlIHRoZSBib3JkZXIgb24gaW1hZ2VzIGluc2lkZSBsaW5rcyBpbiBJRSAxMC5cbiAqL1xuXG5pbWcge1xuICBib3JkZXItc3R5bGU6IG5vbmU7XG59XG5cbi8qIEZvcm1zXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIDEuIENoYW5nZSB0aGUgZm9udCBzdHlsZXMgaW4gYWxsIGJyb3dzZXJzLlxuICogMi4gUmVtb3ZlIHRoZSBtYXJnaW4gaW4gRmlyZWZveCBhbmQgU2FmYXJpLlxuICovXG5cbmJ1dHRvbixcbmlucHV0LFxub3B0Z3JvdXAsXG5zZWxlY3QsXG50ZXh0YXJlYSB7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0OyAvKiAxICovXG4gIGZvbnQtc2l6ZTogMTAwJTsgLyogMSAqL1xuICBsaW5lLWhlaWdodDogMS4xNTsgLyogMSAqL1xuICBtYXJnaW46IDA7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBTaG93IHRoZSBvdmVyZmxvdyBpbiBJRS5cbiAqIDEuIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UuXG4gKi9cblxuYnV0dG9uLFxuaW5wdXQgeyAvKiAxICovXG4gIG92ZXJmbG93OiB2aXNpYmxlO1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRWRnZSwgRmlyZWZveCwgYW5kIElFLlxuICogMS4gUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBGaXJlZm94LlxuICovXG5cbmJ1dHRvbixcbnNlbGVjdCB7IC8qIDEgKi9cbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG59XG5cbi8qKlxuICogQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbiAqL1xuXG5idXR0b24sXG5bdHlwZT1cImJ1dHRvblwiXSxcblt0eXBlPVwicmVzZXRcIl0sXG5bdHlwZT1cInN1Ym1pdFwiXSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uO1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgaW5uZXIgYm9yZGVyIGFuZCBwYWRkaW5nIGluIEZpcmVmb3guXG4gKi9cblxuYnV0dG9uOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJidXR0b25cIl06Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1cInJlc2V0XCJdOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJzdWJtaXRcIl06Oi1tb3otZm9jdXMtaW5uZXIge1xuICBib3JkZXItc3R5bGU6IG5vbmU7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi8qKlxuICogUmVzdG9yZSB0aGUgZm9jdXMgc3R5bGVzIHVuc2V0IGJ5IHRoZSBwcmV2aW91cyBydWxlLlxuICovXG5cbmJ1dHRvbjotbW96LWZvY3VzcmluZyxcblt0eXBlPVwiYnV0dG9uXCJdOi1tb3otZm9jdXNyaW5nLFxuW3R5cGU9XCJyZXNldFwiXTotbW96LWZvY3VzcmluZyxcblt0eXBlPVwic3VibWl0XCJdOi1tb3otZm9jdXNyaW5nIHtcbiAgb3V0bGluZTogMXB4IGRvdHRlZCBCdXR0b25UZXh0O1xufVxuXG4vKipcbiAqIENvcnJlY3QgdGhlIHBhZGRpbmcgaW4gRmlyZWZveC5cbiAqL1xuXG5maWVsZHNldCB7XG4gIHBhZGRpbmc6IDAuMzVlbSAwLjc1ZW0gMC42MjVlbTtcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSB0ZXh0IHdyYXBwaW5nIGluIEVkZ2UgYW5kIElFLlxuICogMi4gQ29ycmVjdCB0aGUgY29sb3IgaW5oZXJpdGFuY2UgZnJvbSBgZmllbGRzZXRgIGVsZW1lbnRzIGluIElFLlxuICogMy4gUmVtb3ZlIHRoZSBwYWRkaW5nIHNvIGRldmVsb3BlcnMgYXJlIG5vdCBjYXVnaHQgb3V0IHdoZW4gdGhleSB6ZXJvIG91dFxuICogICAgYGZpZWxkc2V0YCBlbGVtZW50cyBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxubGVnZW5kIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDsgLyogMSAqL1xuICBjb2xvcjogaW5oZXJpdDsgLyogMiAqL1xuICBkaXNwbGF5OiB0YWJsZTsgLyogMSAqL1xuICBtYXgtd2lkdGg6IDEwMCU7IC8qIDEgKi9cbiAgcGFkZGluZzogMDsgLyogMyAqL1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsOyAvKiAxICovXG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IHZlcnRpY2FsIGFsaWdubWVudCBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBPcGVyYS5cbiAqL1xuXG5wcm9ncmVzcyB7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGRlZmF1bHQgdmVydGljYWwgc2Nyb2xsYmFyIGluIElFIDEwKy5cbiAqL1xuXG50ZXh0YXJlYSB7XG4gIG92ZXJmbG93OiBhdXRvO1xufVxuXG4vKipcbiAqIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIElFIDEwLlxuICogMi4gUmVtb3ZlIHRoZSBwYWRkaW5nIGluIElFIDEwLlxuICovXG5cblt0eXBlPVwiY2hlY2tib3hcIl0sXG5bdHlwZT1cInJhZGlvXCJdIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDsgLyogMSAqL1xuICBwYWRkaW5nOiAwOyAvKiAyICovXG59XG5cbi8qKlxuICogQ29ycmVjdCB0aGUgY3Vyc29yIHN0eWxlIG9mIGluY3JlbWVudCBhbmQgZGVjcmVtZW50IGJ1dHRvbnMgaW4gQ2hyb21lLlxuICovXG5cblt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24ge1xuICBoZWlnaHQ6IGF1dG87XG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgb2RkIGFwcGVhcmFuY2UgaW4gQ2hyb21lIGFuZCBTYWZhcmkuXG4gKiAyLiBDb3JyZWN0IHRoZSBvdXRsaW5lIHN0eWxlIGluIFNhZmFyaS5cbiAqL1xuXG5bdHlwZT1cInNlYXJjaFwiXSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogdGV4dGZpZWxkOyAvKiAxICovXG4gIG91dGxpbmUtb2Zmc2V0OiAtMnB4OyAvKiAyICovXG59XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBpbm5lciBwYWRkaW5nIGluIENocm9tZSBhbmQgU2FmYXJpIG9uIG1hY09TLlxuICovXG5cblt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG4gKiAyLiBDaGFuZ2UgZm9udCBwcm9wZXJ0aWVzIHRvIGBpbmhlcml0YCBpbiBTYWZhcmkuXG4gKi9cblxuOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uOyAvKiAxICovXG4gIGZvbnQ6IGluaGVyaXQ7IC8qIDIgKi9cbn1cblxuLyogSW50ZXJhY3RpdmVcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBFZGdlLCBJRSAxMCssIGFuZCBGaXJlZm94LlxuICovXG5cbmRldGFpbHMge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLypcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5zdW1tYXJ5IHtcbiAgZGlzcGxheTogbGlzdC1pdGVtO1xufVxuXG4vKiBNaXNjXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDEwKy5cbiAqL1xuXG50ZW1wbGF0ZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgMTAuXG4gKi9cblxuW2hpZGRlbl0ge1xuICBkaXNwbGF5OiBub25lO1xufVxuIiwiQGltcG9ydCAnY29yZSc7XG5AaW1wb3J0ICdhbmltYXRlJztcbkBpbXBvcnQgJ2F1dG9oZWlnaHQnO1xuQGltcG9ydCAnbGF6eWxvYWQnO1xuQGltcG9ydCAndmlkZW8nO1xuIiwiLypcbiAqICBPd2wgQ2Fyb3VzZWwgLSBDb3JlXG4gKi9cbi5vd2wtY2Fyb3VzZWwge1xuXHRkaXNwbGF5OiBub25lO1xuXHR3aWR0aDogMTAwJTtcblx0LXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcblx0LyogcG9zaXRpb24gcmVsYXRpdmUgYW5kIHotaW5kZXggZml4IHdlYmtpdCByZW5kZXJpbmcgZm9udHMgaXNzdWUgKi9cblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHR6LWluZGV4OiAxO1xuXG5cdC5vd2wtc3RhZ2Uge1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHQtbXMtdG91Y2gtYWN0aW9uOiBwYW4tWTtcblx0XHR0b3VjaC1hY3Rpb246IG1hbmlwdWxhdGlvbjtcblx0XHQtbW96LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsgLyogZml4IGZpcmVmb3ggYW5pbWF0aW9uIGdsaXRjaCAqL1xuXHR9XG5cblx0Lm93bC1zdGFnZTphZnRlciB7XG5cdFx0Y29udGVudDogXCIuXCI7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0Y2xlYXI6IGJvdGg7XG5cdFx0dmlzaWJpbGl0eTogaGlkZGVuO1xuXHRcdGxpbmUtaGVpZ2h0OiAwO1xuXHRcdGhlaWdodDogMDtcblx0fVxuXG5cdC5vd2wtc3RhZ2Utb3V0ZXIge1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRvdmVyZmxvdzogaGlkZGVuO1xuXHRcdC8qIGZpeCBmb3IgZmxhc2hpbmcgYmFja2dyb3VuZCAqL1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwcHgsIDBweCwgMHB4KTtcblx0fVxuXG5cdC5vd2wtd3JhcHBlcixcblx0Lm93bC1pdGVte1xuXHRcdC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuXHRcdC1tb3otYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuXHRcdC1tcy1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsMCwwKTtcblx0XHQtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwwLDApO1xuXHRcdC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsMCwwKTtcblx0fVxuXG5cdC5vd2wtaXRlbSB7XG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdG1pbi1oZWlnaHQ6IDFweDtcblx0XHRmbG9hdDogbGVmdDtcblx0XHQtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcblx0XHQtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xuXHRcdC13ZWJraXQtdG91Y2gtY2FsbG91dDogbm9uZTtcblx0fVxuXHQub3dsLWl0ZW0gaW1nIHtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0XHR3aWR0aDogMTAwJTtcblx0fVxuXG5cdC5vd2wtbmF2LmRpc2FibGVkLFxuXHQub3dsLWRvdHMuZGlzYWJsZWQge1xuXHRcdGRpc3BsYXk6IG5vbmU7XG5cdH1cblxuXHQub3dsLW5hdiAub3dsLXByZXYsXG5cdC5vd2wtbmF2IC5vd2wtbmV4dCxcblx0Lm93bC1kb3Qge1xuXHRcdGN1cnNvcjogcG9pbnRlcjtcblx0XHQtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuXHRcdC1raHRtbC11c2VyLXNlbGVjdDogbm9uZTtcblx0XHQtbW96LXVzZXItc2VsZWN0OiBub25lO1xuXHRcdC1tcy11c2VyLXNlbGVjdDogbm9uZTtcblx0XHR1c2VyLXNlbGVjdDogbm9uZTtcblx0fVxuXG5cdC5vd2wtbmF2IGJ1dHRvbi5vd2wtcHJldixcblx0Lm93bC1uYXYgYnV0dG9uLm93bC1uZXh0LFxuXHRidXR0b24ub3dsLWRvdCB7XG5cdFx0YmFja2dyb3VuZDogbm9uZTtcblx0XHRjb2xvcjogaW5oZXJpdDtcblx0XHRib3JkZXI6IG5vbmU7XG5cdFx0cGFkZGluZzowIWltcG9ydGFudDtcblx0XHRmb250OiBpbmhlcml0O1xuXHR9XG5cblx0Ji5vd2wtbG9hZGVkIHtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0fVxuXG5cdCYub3dsLWxvYWRpbmcge1xuXHRcdG9wYWNpdHk6IDA7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdH1cblxuXHQmLm93bC1oaWRkZW4ge1xuXHRcdG9wYWNpdHk6IDA7XG5cdH1cblxuXHQmLm93bC1yZWZyZXNoIC5vd2wtaXRlbSB7XG5cdFx0dmlzaWJpbGl0eTogaGlkZGVuO1xuXHR9XG5cblx0Ji5vd2wtZHJhZyAub3dsLWl0ZW0ge1xuXHRcdHRvdWNoLWFjdGlvbjogcGFuLXk7XG5cdFx0LXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcblx0XHQtbW96LXVzZXItc2VsZWN0OiBub25lO1xuXHRcdC1tcy11c2VyLXNlbGVjdDogbm9uZTtcblx0XHR1c2VyLXNlbGVjdDogbm9uZTtcblx0fVxuXG5cdCYub3dsLWdyYWIge1xuXHRcdGN1cnNvcjogbW92ZTtcblx0XHRjdXJzb3I6IGdyYWI7XG5cdH1cblxuXHQmLm93bC1ydGwge1xuXHRcdGRpcmVjdGlvbjogcnRsO1xuXHR9XG5cblx0Ji5vd2wtcnRsIC5vd2wtaXRlbSB7XG5cdFx0ZmxvYXQ6IHJpZ2h0O1xuXHR9XG59XG5cbi8qIE5vIEpzICovXG4ubm8tanMgLm93bC1jYXJvdXNlbCB7XG5cdGRpc3BsYXk6IGJsb2NrO1xufVxuIiwiLypcbiAqICBPd2wgQ2Fyb3VzZWwgLSBBbmltYXRlIFBsdWdpblxuICovXG4ub3dsLWNhcm91c2Vse1xuXHQuYW5pbWF0ZWQge1xuXHRcdGFuaW1hdGlvbi1kdXJhdGlvbjogMTAwMG1zO1xuXHRcdGFuaW1hdGlvbi1maWxsLW1vZGU6IGJvdGg7XG5cdH1cblx0Lm93bC1hbmltYXRlZC1pbiB7XG5cdFx0ei1pbmRleDogMDtcblx0fVxuXHQub3dsLWFuaW1hdGVkLW91dCB7XG5cdFx0ei1pbmRleDogMTtcblx0fVxuXHQuZmFkZU91dCB7XG5cdFx0YW5pbWF0aW9uLW5hbWU6IGZhZGVPdXQ7XG5cdH1cbn1cblxuQGtleWZyYW1lcyBmYWRlT3V0IHtcblx0MCUge1xuXHRcdG9wYWNpdHk6IDE7XG5cdH1cblxuXHQxMDAlIHtcblx0XHRvcGFjaXR5OiAwO1xuXHR9XG59XG4iLCIvKlxuICogXHRPd2wgQ2Fyb3VzZWwgLSBBdXRvIEhlaWdodCBQbHVnaW5cbiAqL1xuXG4ub3dsLWhlaWdodCB7XG5cdHRyYW5zaXRpb246IGhlaWdodCA1MDBtcyBlYXNlLWluLW91dDtcbn1cbiIsIi8qXG4gKiBcdE93bCBDYXJvdXNlbCAtIExhenkgTG9hZCBQbHVnaW5cbiAqL1xuXG4ub3dsLWNhcm91c2VsIHtcblx0Lm93bC1pdGVtIHtcblx0XHQub3dsLWxhenkge1xuXHRcdFx0XHRvcGFjaXR5OiAwO1xuXHRcdFx0XHR0cmFuc2l0aW9uOiBvcGFjaXR5IDQwMG1zIGVhc2U7XG5cdFx0fVxuXG5cdFx0LyoqXG5cdFx0XHRUaGlzIGlzIGludHJvZHVjZWQgZHVlIHRvIGEgYnVnIGluIElFMTEgd2hlcmUgbGF6eSBsb2FkaW5nIGNvbWJpbmVkIHdpdGggYXV0b2hlaWdodCBwbHVnaW4gY2F1c2VzIGEgd3Jvbmdcblx0XHRcdGNhbGN1bGF0aW9uIG9mIHRoZSBoZWlnaHQgb2YgdGhlIG93bC1pdGVtIHRoYXQgYnJlYWtzIHBhZ2UgbGF5b3V0c1xuXHRcdCAqL1xuXHRcdC5vd2wtbGF6eVtzcmNePVwiXCJdLCAub3dsLWxhenk6bm90KFtzcmNdKSB7XG5cdFx0XHRtYXgtaGVpZ2h0OiAwO1xuXHRcdH1cblxuXHRcdGltZy5vd2wtbGF6eSB7XG5cdFx0XHR0cmFuc2Zvcm0tc3R5bGU6IHByZXNlcnZlLTNkO1xuXHRcdH1cblx0fVxufVxuXG4iLCIkb3dsLWltYWdlLXBhdGg6IFwiXCIgIWRlZmF1bHQ7XG5cbi8qXG4gKiBcdE93bCBDYXJvdXNlbCAtIFZpZGVvIFBsdWdpblxuICovXG5cbi5vd2wtY2Fyb3VzZWx7XG5cdC5vd2wtdmlkZW8td3JhcHBlciB7XG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdGhlaWdodDogMTAwJTtcblx0XHRiYWNrZ3JvdW5kOiAjMDAwO1xuXHR9XG5cblx0Lm93bC12aWRlby1wbGF5LWljb24ge1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRoZWlnaHQ6IDgwcHg7XG5cdFx0d2lkdGg6IDgwcHg7XG5cdFx0bGVmdDogNTAlO1xuXHRcdHRvcDogNTAlO1xuXHRcdG1hcmdpbi1sZWZ0OiAtNDBweDtcblx0XHRtYXJnaW4tdG9wOiAtNDBweDtcblx0XHRiYWNrZ3JvdW5kOiB1cmwoXCIjeyRvd2wtaW1hZ2UtcGF0aH1vd2wudmlkZW8ucGxheS5wbmdcIikgbm8tcmVwZWF0O1xuXHRcdGN1cnNvcjogcG9pbnRlcjtcblx0XHR6LWluZGV4OiAxO1xuXHRcdC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuXHRcdHRyYW5zaXRpb246IHRyYW5zZm9ybSAxMDBtcyBlYXNlO1xuXHR9XG5cblx0Lm93bC12aWRlby1wbGF5LWljb246aG92ZXIge1xuXHRcdHRyYW5zZm9ybTogc2NhbGUoMS4zLCAxLjMpO1xuXHR9XG5cblx0Lm93bC12aWRlby1wbGF5aW5nIC5vd2wtdmlkZW8tdG4sXG5cdC5vd2wtdmlkZW8tcGxheWluZyAub3dsLXZpZGVvLXBsYXktaWNvbiB7XG5cdFx0ZGlzcGxheTogbm9uZTtcblx0fVxuXG5cdC5vd2wtdmlkZW8tdG4ge1xuXHRcdG9wYWNpdHk6IDA7XG5cdFx0aGVpZ2h0OiAxMDAlO1xuXHRcdGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG5cdFx0YmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcblx0XHRiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG5cdFx0dHJhbnNpdGlvbjogb3BhY2l0eSA0MDBtcyBlYXNlO1xuXHR9XG5cblx0Lm93bC12aWRlby1mcmFtZSB7XG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdHotaW5kZXg6IDE7XG5cdFx0aGVpZ2h0OiAxMDAlO1xuXHRcdHdpZHRoOiAxMDAlO1xuXHR9XG59XG4iLCIvKipcclxuICogVG9vbHMuXHJcbiAqL1xyXG5cclxuQGltcG9ydCAnZnVuY3Rpb25zJztcclxuQGltcG9ydCAnbWFnbmlmaWMtcG9wdXAnO1xyXG5AaW1wb3J0ICdtaXhpbnMnO1xyXG4iLCIvKipcclxuICogVW5pY29kZS5cclxuICpcclxuICogUHJlc2VydmUgZXNjYXBlZCB1bmljb2RlIHN0cmluZy5cclxuICogQHBhcmFtIHtTdHJpbmd9ICRzdHJpbmcgLSBBbiB1bmljb2RlIHN0cmluZy5cclxuICogQHJldHVybiB7U3RyaW5nfSBBIHByZXNlcnZlZCBlc2NhcGVkIHVuaWNvZGUgc3RyaW5nXHJcbiAqL1xyXG4gXHJcbi8vIHNhc3MtbGludDpkaXNhYmxlIHF1b3Rlc1xyXG5AZnVuY3Rpb24gdW5pY29kZSgkc3RyaW5nKSB7XHJcblx0QHJldHVybiB1bnF1b3RlKFwiXFwnXCIpICsgdW5xdW90ZShzdHItaW5zZXJ0KCRzdHJpbmcsICdcXFxcJywgMSkpICsgdW5xdW90ZShcIlxcJ1wiKTtcclxufVxyXG4vLyBzYXNzLWxpbnQ6ZW5hYmxlIHF1b3Rlc1xyXG5cclxuXHJcbi8qKlxyXG4gKiBSRU0uXHJcbiAqXHJcbiAqIENvbnZlcnQgcGl4ZWwgdW5pdHMgdG8gUkVNIHVuaXRzLlxyXG4gKiBAcGFyYW0ge051bWJlcn0gJHBpeGVscyAtIFBpeGVsIHZhbHVlLlxyXG4gKiBAcmV0dXJuIHsqfSAtIEEgY29udmVydGVkIGByZW1gIHVuaXQuXHJcbiAqL1xyXG5cclxuQGZ1bmN0aW9uIHJlbSgkcGl4ZWxzKSB7XHJcblx0QGlmICh1bml0bGVzcygkcGl4ZWxzKSkge1xyXG5cdFx0QGVycm9yICdWYWx1ZSBmb3IgYCN7JHBpeGVsc31gIHNob3VsZCBiZSBhIGBweGAgdW5pdC4nO1xyXG5cdH1cclxuXHRAcmV0dXJuICgoJHBpeGVscyAvIDEwcHgpICogMXJlbSk7XHJcbn1cclxuXHJcblxyXG4vKipcclxuICogQ29sdW1uLlxyXG4gKlxyXG4gKiBDYWxjdWxhdGUgZ2l2ZW4gY29sdW1uIHdpZHRoLlxyXG4gKiBAcGFyYW0ge051bWJlcn0gJGNvbHVtbiAtIFRoZSBhbW91bnQgb2YgY29sdW1ucyB0byBzcGFuLlxyXG4gKiBAcGFyYW0ge051bWJlcn0gJGNvbHVtbnMgLSBUaGUgYW1vdW50IG9mIGNvbHVtbnMgdGhhdCBjYW4gYmUgc3Bhbm5lZC5cclxuICogQHJldHVybiB7U3RyaW5nfSAtIFBlcmNlbnRhZ2UgdmFsdWUuXHJcbiAqL1xyXG5cclxuQGZ1bmN0aW9uIGNvbHVtbigkY29sdW1uLCAkY29sdW1uczogJGdyaWQtY29sdW1ucykge1xyXG5cdEByZXR1cm4gKCRjb2x1bW4gICogMTAwJSAvICRjb2x1bW5zKTtcclxufVxyXG5cclxuXHJcbi8qKlxyXG4gKiBDb2xvci5cclxuICpcclxuICogR2V0IGEgY29sb3IgdmFsdWUgZnJvbSB0d28gbGV2ZWxzIGRlZXAgaW4gdGhlIGAkY29sb3JgIG1hcC5cclxuICogQHBhcmFtIHskc3RyaW5nfSAka2V5IC0gS2V5IG9mIHRoZSBjb2xvciB0byBnZXQgZnJvbSB0aGUgbWFwLlxyXG4gKiBAcGFyYW0ge051bWJlcn0gJHZhbHVlIC0gVmFsdWUgb2YgdGhlIGtleSB0byBnZXQgZnJvbSB0aGUgbWFwLlxyXG4gKiBAcmV0dXJuIHsqfSBBIEhTTEEgY29sb3IgdmFsdWUuXHJcbiAqL1xyXG5cclxuQGZ1bmN0aW9uIGNvbG9yKCRrZXksICR2YWx1ZSkge1xyXG5cdEByZXR1cm4gbWFwLWdldChtYXAtZ2V0KCRjb2xvcnMsICRrZXkpLCAkdmFsdWUpO1xyXG59XHJcbiIsIi8vIHNhc3MtbGludDpkaXNhYmxlIGluZGVudGF0aW9uIG5vLXF1YWxpZnlpbmctZWxlbWVudHMgc2hvcnRoYW5kLXZhbHVlcyBzaW5nbGUtbGluZS1wZXItc2VsZWN0b3IgY2xhc3MtbmFtZS1mb3JtYXQgbm8taWRzIGlkLW5hbWUtZm9ybWF0IHByb3BlcnR5LXNvcnQtb3JkZXIgbm8tY29sb3ItbGl0ZXJhbHMgaGV4LW5vdGF0aW9uIGJyYWNlLXN0eWxlIHplcm8tdW5pdCBzcGFjZS1hZnRlci1jb2xvbiBlbXB0eS1saW5lLWJldHdlZW4tYmxvY2tzXHJcblxyXG5cclxuLyogTWFnbmlmaWMgUG9wdXAgQ1NTICovXHJcbi5tZnAtYmcge1xyXG4gIHRvcDogMDtcclxuICBsZWZ0OiAwO1xyXG4gIHdpZHRoOiAxMDAlO1xyXG4gIGhlaWdodDogMTAwJTtcclxuICB6LWluZGV4OiAxMDQyO1xyXG4gIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgcG9zaXRpb246IGZpeGVkO1xyXG4gIGJhY2tncm91bmQ6ICMwYjBiMGI7XHJcbiAgb3BhY2l0eTogMC44OyB9XHJcblxyXG4ubWZwLXdyYXAge1xyXG4gIHRvcDogMDtcclxuICBsZWZ0OiAwO1xyXG4gIHdpZHRoOiAxMDAlO1xyXG4gIGhlaWdodDogMTAwJTtcclxuICB6LWluZGV4OiAxMDQzO1xyXG4gIHBvc2l0aW9uOiBmaXhlZDtcclxuICBvdXRsaW5lOiBub25lICFpbXBvcnRhbnQ7XHJcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47IH1cclxuXHJcbi5tZnAtY29udGFpbmVyIHtcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIHdpZHRoOiAxMDAlO1xyXG4gIGhlaWdodDogMTAwJTtcclxuICBsZWZ0OiAwO1xyXG4gIHRvcDogMDtcclxuICBwYWRkaW5nOiAwIDhweDtcclxuICBib3gtc2l6aW5nOiBib3JkZXItYm94OyB9XHJcblxyXG4ubWZwLWNvbnRhaW5lcjpiZWZvcmUge1xyXG4gIGNvbnRlbnQ6ICcnO1xyXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICBoZWlnaHQ6IDEwMCU7XHJcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgfVxyXG5cclxuLm1mcC1hbGlnbi10b3AgLm1mcC1jb250YWluZXI6YmVmb3JlIHtcclxuICBkaXNwbGF5OiBub25lOyB9XHJcblxyXG4ubWZwLWNvbnRlbnQge1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxuICBtYXJnaW46IDAgYXV0bztcclxuICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gIHotaW5kZXg6IDEwNDU7IH1cclxuXHJcbi5tZnAtaW5saW5lLWhvbGRlciAubWZwLWNvbnRlbnQsXHJcbi5tZnAtYWpheC1ob2xkZXIgLm1mcC1jb250ZW50IHtcclxuICB3aWR0aDogMTAwJTtcclxuICBjdXJzb3I6IGF1dG87IH1cclxuXHJcbi5tZnAtYWpheC1jdXIge1xyXG4gIGN1cnNvcjogcHJvZ3Jlc3M7IH1cclxuXHJcbi5tZnAtem9vbS1vdXQtY3VyLCAubWZwLXpvb20tb3V0LWN1ciAubWZwLWltYWdlLWhvbGRlciAubWZwLWNsb3NlIHtcclxuICBjdXJzb3I6IC1tb3otem9vbS1vdXQ7XHJcbiAgY3Vyc29yOiAtd2Via2l0LXpvb20tb3V0O1xyXG4gIGN1cnNvcjogem9vbS1vdXQ7IH1cclxuXHJcbi5tZnAtem9vbSB7XHJcbiAgY3Vyc29yOiBwb2ludGVyO1xyXG4gIGN1cnNvcjogLXdlYmtpdC16b29tLWluO1xyXG4gIGN1cnNvcjogLW1vei16b29tLWluO1xyXG4gIGN1cnNvcjogem9vbS1pbjsgfVxyXG5cclxuLm1mcC1hdXRvLWN1cnNvciAubWZwLWNvbnRlbnQge1xyXG4gIGN1cnNvcjogYXV0bzsgfVxyXG5cclxuLm1mcC1jbG9zZSxcclxuLm1mcC1hcnJvdyxcclxuLm1mcC1wcmVsb2FkZXIsXHJcbi5tZnAtY291bnRlciB7XHJcbiAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcclxuICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xyXG4gIHVzZXItc2VsZWN0OiBub25lOyB9XHJcblxyXG4ubWZwLWxvYWRpbmcubWZwLWZpZ3VyZSB7XHJcbiAgZGlzcGxheTogbm9uZTsgfVxyXG5cclxuLm1mcC1oaWRlIHtcclxuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cclxuXHJcbi5tZnAtcHJlbG9hZGVyIHtcclxuICBjb2xvcjogI0NDQztcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgdG9wOiA1MCU7XHJcbiAgd2lkdGg6IGF1dG87XHJcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gIG1hcmdpbi10b3A6IC0wLjhlbTtcclxuICBsZWZ0OiA4cHg7XHJcbiAgcmlnaHQ6IDhweDtcclxuICB6LWluZGV4OiAxMDQ0OyB9XHJcbiAgLm1mcC1wcmVsb2FkZXIgYSB7XHJcbiAgICBjb2xvcjogI0NDQzsgfVxyXG4gICAgLm1mcC1wcmVsb2FkZXIgYTpob3ZlciB7XHJcbiAgICAgIGNvbG9yOiAjRkZGOyB9XHJcblxyXG4ubWZwLXMtcmVhZHkgLm1mcC1wcmVsb2FkZXIge1xyXG4gIGRpc3BsYXk6IG5vbmU7IH1cclxuXHJcbi5tZnAtcy1lcnJvciAubWZwLWNvbnRlbnQge1xyXG4gIGRpc3BsYXk6IG5vbmU7IH1cclxuXHJcbmJ1dHRvbi5tZnAtY2xvc2UsXHJcbmJ1dHRvbi5tZnAtYXJyb3cge1xyXG4gIG92ZXJmbG93OiB2aXNpYmxlO1xyXG4gIGN1cnNvcjogcG9pbnRlcjtcclxuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcclxuICBib3JkZXI6IDA7XHJcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG4gIG91dGxpbmU6IG5vbmU7XHJcbiAgcGFkZGluZzogMDtcclxuICB6LWluZGV4OiAxMDQ2O1xyXG4gIGJveC1zaGFkb3c6IG5vbmU7XHJcbiAgdG91Y2gtYWN0aW9uOiBtYW5pcHVsYXRpb247IH1cclxuXHJcbmJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lciB7XHJcbiAgcGFkZGluZzogMDtcclxuICBib3JkZXI6IDA7IH1cclxuXHJcbi5tZnAtY2xvc2Uge1xyXG4gIHdpZHRoOiA0NHB4O1xyXG4gIGhlaWdodDogNDRweDtcclxuICBsaW5lLWhlaWdodDogNDRweDtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgcmlnaHQ6IDA7XHJcbiAgdG9wOiAwO1xyXG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgb3BhY2l0eTogMC42NTtcclxuICBwYWRkaW5nOiAwIDAgMThweCAxMHB4O1xyXG4gIGNvbG9yOiAjRkZGO1xyXG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxuICBmb250LXNpemU6IDI4cHg7XHJcbiAgZm9udC1mYW1pbHk6IEFyaWFsLCBCYXNrZXJ2aWxsZSwgbW9ub3NwYWNlOyB9XHJcbiAgLm1mcC1jbG9zZTpob3ZlcixcclxuICAubWZwLWNsb3NlOmZvY3VzIHtcclxuICAgIG9wYWNpdHk6IDE7IH1cclxuICAubWZwLWNsb3NlOmFjdGl2ZSB7XHJcbiAgICB0b3A6IDFweDsgfVxyXG5cclxuLm1mcC1jbG9zZS1idG4taW4gLm1mcC1jbG9zZSB7XHJcbiAgY29sb3I6ICMzMzM7IH1cclxuXHJcbi5tZnAtaW1hZ2UtaG9sZGVyIC5tZnAtY2xvc2UsXHJcbi5tZnAtaWZyYW1lLWhvbGRlciAubWZwLWNsb3NlIHtcclxuICBjb2xvcjogI0ZGRjtcclxuICByaWdodDogLTZweDtcclxuICB0ZXh0LWFsaWduOiByaWdodDtcclxuICBwYWRkaW5nLXJpZ2h0OiA2cHg7XHJcbiAgd2lkdGg6IDEwMCU7IH1cclxuXHJcbi5tZnAtY291bnRlciB7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIHRvcDogMDtcclxuICByaWdodDogMDtcclxuICBjb2xvcjogI0NDQztcclxuICBmb250LXNpemU6IDEycHg7XHJcbiAgbGluZS1oZWlnaHQ6IDE4cHg7XHJcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgfVxyXG5cclxuLm1mcC1hcnJvdyB7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIG9wYWNpdHk6IDAuNjU7XHJcbiAgbWFyZ2luOiAwO1xyXG4gIHRvcDogNTAlO1xyXG4gIG1hcmdpbi10b3A6IC01NXB4O1xyXG4gIHBhZGRpbmc6IDA7XHJcbiAgd2lkdGg6IDkwcHg7XHJcbiAgaGVpZ2h0OiAxMTBweDtcclxuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50OyB9XHJcbiAgLm1mcC1hcnJvdzphY3RpdmUge1xyXG4gICAgbWFyZ2luLXRvcDogLTU0cHg7IH1cclxuICAubWZwLWFycm93OmhvdmVyLFxyXG4gIC5tZnAtYXJyb3c6Zm9jdXMge1xyXG4gICAgb3BhY2l0eTogMTsgfVxyXG4gIC5tZnAtYXJyb3c6YmVmb3JlLFxyXG4gIC5tZnAtYXJyb3c6YWZ0ZXIge1xyXG4gICAgY29udGVudDogJyc7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIHdpZHRoOiAwO1xyXG4gICAgaGVpZ2h0OiAwO1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgbGVmdDogMDtcclxuICAgIHRvcDogMDtcclxuICAgIG1hcmdpbi10b3A6IDM1cHg7XHJcbiAgICBtYXJnaW4tbGVmdDogMzVweDtcclxuICAgIGJvcmRlcjogbWVkaXVtIGluc2V0IHRyYW5zcGFyZW50OyB9XHJcbiAgLm1mcC1hcnJvdzphZnRlciB7XHJcbiAgICBib3JkZXItdG9wLXdpZHRoOiAxM3B4O1xyXG4gICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMTNweDtcclxuICAgIHRvcDogOHB4OyB9XHJcbiAgLm1mcC1hcnJvdzpiZWZvcmUge1xyXG4gICAgYm9yZGVyLXRvcC13aWR0aDogMjFweDtcclxuICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDIxcHg7XHJcbiAgICBvcGFjaXR5OiAwLjc7IH1cclxuXHJcbi5tZnAtYXJyb3ctbGVmdCB7XHJcbiAgbGVmdDogMDsgfVxyXG4gIC5tZnAtYXJyb3ctbGVmdDphZnRlciB7XHJcbiAgICBib3JkZXItcmlnaHQ6IDE3cHggc29saWQgI0ZGRjtcclxuICAgIG1hcmdpbi1sZWZ0OiAzMXB4OyB9XHJcbiAgLm1mcC1hcnJvdy1sZWZ0OmJlZm9yZSB7XHJcbiAgICBtYXJnaW4tbGVmdDogMjVweDtcclxuICAgIGJvcmRlci1yaWdodDogMjdweCBzb2xpZCAjM0YzRjNGOyB9XHJcblxyXG4ubWZwLWFycm93LXJpZ2h0IHtcclxuICByaWdodDogMDsgfVxyXG4gIC5tZnAtYXJyb3ctcmlnaHQ6YWZ0ZXIge1xyXG4gICAgYm9yZGVyLWxlZnQ6IDE3cHggc29saWQgI0ZGRjtcclxuICAgIG1hcmdpbi1sZWZ0OiAzOXB4OyB9XHJcbiAgLm1mcC1hcnJvdy1yaWdodDpiZWZvcmUge1xyXG4gICAgYm9yZGVyLWxlZnQ6IDI3cHggc29saWQgIzNGM0YzRjsgfVxyXG5cclxuLm1mcC1pZnJhbWUtaG9sZGVyIHtcclxuICBwYWRkaW5nLXRvcDogNDBweDtcclxuICBwYWRkaW5nLWJvdHRvbTogNDBweDsgfVxyXG4gIC5tZnAtaWZyYW1lLWhvbGRlciAubWZwLWNvbnRlbnQge1xyXG4gICAgbGluZS1oZWlnaHQ6IDA7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIG1heC13aWR0aDogOTAwcHg7IH1cclxuICAubWZwLWlmcmFtZS1ob2xkZXIgLm1mcC1jbG9zZSB7XHJcbiAgICB0b3A6IC00MHB4OyB9XHJcblxyXG4ubWZwLWlmcmFtZS1zY2FsZXIge1xyXG4gIHdpZHRoOiAxMDAlO1xyXG4gIGhlaWdodDogMDtcclxuICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gIHBhZGRpbmctdG9wOiA1Ni4yNSU7IH1cclxuICAubWZwLWlmcmFtZS1zY2FsZXIgaWZyYW1lIHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgdG9wOiAwO1xyXG4gICAgbGVmdDogMDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgYm94LXNoYWRvdzogMCAwIDhweCByZ2JhKDAsIDAsIDAsIDAuNik7XHJcbiAgICBiYWNrZ3JvdW5kOiAjMDAwOyB9XHJcblxyXG4vKiBNYWluIGltYWdlIGluIHBvcHVwICovXHJcbmltZy5tZnAtaW1nIHtcclxuICB3aWR0aDogYXV0bztcclxuICBtYXgtd2lkdGg6IDEwMCU7XHJcbiAgaGVpZ2h0OiBhdXRvO1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG4gIGxpbmUtaGVpZ2h0OiAwO1xyXG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgcGFkZGluZzogNDBweCAwIDQwcHg7XHJcbiAgbWFyZ2luOiAwIGF1dG87IH1cclxuXHJcbi8qIFRoZSBzaGFkb3cgYmVoaW5kIHRoZSBpbWFnZSAqL1xyXG4ubWZwLWZpZ3VyZSB7XHJcbiAgbGluZS1oZWlnaHQ6IDA7IH1cclxuICAubWZwLWZpZ3VyZTphZnRlciB7XHJcbiAgICBjb250ZW50OiAnJztcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICB0b3A6IDQwcHg7XHJcbiAgICBib3R0b206IDQwcHg7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIHJpZ2h0OiAwO1xyXG4gICAgd2lkdGg6IGF1dG87XHJcbiAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICB6LWluZGV4OiAtMTtcclxuICAgIGJveC1zaGFkb3c6IDAgMCA4cHggcmdiYSgwLCAwLCAwLCAwLjYpO1xyXG4gICAgYmFja2dyb3VuZDogIzQ0NDsgfVxyXG4gIC5tZnAtZmlndXJlIHNtYWxsIHtcclxuICAgIGNvbG9yOiAjQkRCREJEO1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBmb250LXNpemU6IDEycHg7XHJcbiAgICBsaW5lLWhlaWdodDogMTRweDsgfVxyXG4gIC5tZnAtZmlndXJlIGZpZ3VyZSB7XHJcbiAgICBtYXJnaW46IDA7IH1cclxuXHJcbi5tZnAtYm90dG9tLWJhciB7XHJcbiAgbWFyZ2luLXRvcDogLTM2cHg7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIHRvcDogMTAwJTtcclxuICBsZWZ0OiAwO1xyXG4gIHdpZHRoOiAxMDAlO1xyXG4gIGN1cnNvcjogYXV0bzsgfVxyXG5cclxuLm1mcC10aXRsZSB7XHJcbiAgdGV4dC1hbGlnbjogbGVmdDtcclxuICBsaW5lLWhlaWdodDogMThweDtcclxuICBjb2xvcjogI0YzRjNGMztcclxuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XHJcbiAgcGFkZGluZy1yaWdodDogMzZweDsgfVxyXG5cclxuLm1mcC1pbWFnZS1ob2xkZXIgLm1mcC1jb250ZW50IHtcclxuICBtYXgtd2lkdGg6IDEwMCU7IH1cclxuXHJcbi5tZnAtZ2FsbGVyeSAubWZwLWltYWdlLWhvbGRlciAubWZwLWZpZ3VyZSB7XHJcbiAgY3Vyc29yOiBwb2ludGVyOyB9XHJcblxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4MDBweCkgYW5kIChvcmllbnRhdGlvbjogbGFuZHNjYXBlKSwgc2NyZWVuIGFuZCAobWF4LWhlaWdodDogMzAwcHgpIHtcclxuICAvKipcclxuICAgICAgICogUmVtb3ZlIGFsbCBwYWRkaW5ncyBhcm91bmQgdGhlIGltYWdlIG9uIHNtYWxsIHNjcmVlblxyXG4gICAgICAgKi9cclxuICAubWZwLWltZy1tb2JpbGUgLm1mcC1pbWFnZS1ob2xkZXIge1xyXG4gICAgcGFkZGluZy1sZWZ0OiAwO1xyXG4gICAgcGFkZGluZy1yaWdodDogMDsgfVxyXG4gIC5tZnAtaW1nLW1vYmlsZSBpbWcubWZwLWltZyB7XHJcbiAgICBwYWRkaW5nOiAwOyB9XHJcbiAgLm1mcC1pbWctbW9iaWxlIC5tZnAtZmlndXJlOmFmdGVyIHtcclxuICAgIHRvcDogMDtcclxuICAgIGJvdHRvbTogMDsgfVxyXG4gIC5tZnAtaW1nLW1vYmlsZSAubWZwLWZpZ3VyZSBzbWFsbCB7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmU7XHJcbiAgICBtYXJnaW4tbGVmdDogNXB4OyB9XHJcbiAgLm1mcC1pbWctbW9iaWxlIC5tZnAtYm90dG9tLWJhciB7XHJcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuNik7XHJcbiAgICBib3R0b206IDA7XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgICB0b3A6IGF1dG87XHJcbiAgICBwYWRkaW5nOiAzcHggNXB4O1xyXG4gICAgcG9zaXRpb246IGZpeGVkO1xyXG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDsgfVxyXG4gICAgLm1mcC1pbWctbW9iaWxlIC5tZnAtYm90dG9tLWJhcjplbXB0eSB7XHJcbiAgICAgIHBhZGRpbmc6IDA7IH1cclxuICAubWZwLWltZy1tb2JpbGUgLm1mcC1jb3VudGVyIHtcclxuICAgIHJpZ2h0OiA1cHg7XHJcbiAgICB0b3A6IDNweDsgfVxyXG4gIC5tZnAtaW1nLW1vYmlsZSAubWZwLWNsb3NlIHtcclxuICAgIHRvcDogMDtcclxuICAgIHJpZ2h0OiAwO1xyXG4gICAgd2lkdGg6IDM1cHg7XHJcbiAgICBoZWlnaHQ6IDM1cHg7XHJcbiAgICBsaW5lLWhlaWdodDogMzVweDtcclxuICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC42KTtcclxuICAgIHBvc2l0aW9uOiBmaXhlZDtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIHBhZGRpbmc6IDA7IH0gfVxyXG5cclxuQG1lZGlhIGFsbCBhbmQgKG1heC13aWR0aDogOTAwcHgpIHtcclxuICAubWZwLWFycm93IHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwLjc1KTtcclxuICAgIHRyYW5zZm9ybTogc2NhbGUoMC43NSk7IH1cclxuICAubWZwLWFycm93LWxlZnQge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiAwO1xyXG4gICAgdHJhbnNmb3JtLW9yaWdpbjogMDsgfVxyXG4gIC5tZnAtYXJyb3ctcmlnaHQge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiAxMDAlO1xyXG4gICAgdHJhbnNmb3JtLW9yaWdpbjogMTAwJTsgfVxyXG4gIC5tZnAtY29udGFpbmVyIHtcclxuICAgIHBhZGRpbmctbGVmdDogNnB4O1xyXG4gICAgcGFkZGluZy1yaWdodDogNnB4OyB9IH1cclxuXHJcbi8vIHNhc3MtbGludDplbmFibGUgaW5kZW50YXRpb24gbm8tcXVhbGlmeWluZy1lbGVtZW50cyBzaG9ydGhhbmQtdmFsdWVzIHNpbmdsZS1saW5lLXBlci1zZWxlY3RvciBjbGFzcy1uYW1lLWZvcm1hdCBuby1pZHMgaWQtbmFtZS1mb3JtYXQgcHJvcGVydHktc29ydC1vcmRlciBuby1jb2xvci1saXRlcmFscyBoZXgtbm90YXRpb24gYnJhY2Utc3R5bGUgemVyby11bml0IHNwYWNlLWFmdGVyLWNvbG9uIGVtcHR5LWxpbmUtYmV0d2Vlbi1ibG9ja3NcclxuIiwiLyoqXHJcbiAqIENvbnRhaW5lclxyXG4gKiBcclxuICogQ2VudGVyIGFsaWducyBlbGVtZW50IHdpdGggZ2l2ZW4gbWF4aW11bSB3aWR0aCwgcGFkZGluZywgYW5kIG1hcmdpbnMgdG9wIGFuZCBib3R0b20uXHJcbiAqIEBwYXJhbSB7U3RyaW5nfSAkd2lkdGggLSBQaXhlbCB1bml0IHZhbHVlLlxyXG4gKiBAcGFyYW0ge1N0cmluZ30gJGdhcCAtIFBpeGVsIHVuaXQgdmFsdWUuXHJcbiAqIEBleGFtcGxlIEBpbmNsdWRlIGNvbnRhaW5lcigxMDI0cHgsIDIwcHgpO1xyXG4gKi9cclxuXHJcbkBtaXhpbiBjb250YWluZXIoJHdpZHRoOiAkZ3JpZC13aWR0aCwgJGdhcDogJGdyaWQtZ2FwKSB7XHJcblx0QGlmICh0eXBlLW9mKCR3aWR0aCkgPT0gbnVtYmVyIGFuZCB0eXBlLW9mKCRnYXApID09IG51bWJlcikge1xyXG5cdFx0QGlmICgkZ2FwICE9IDApIHtcclxuXHRcdFx0bWF4LXdpZHRoOiBjYWxjKCN7JHdpZHRofSArICN7KCRnYXAgKiAyKX0pO1xyXG5cdFx0XHRwYWRkaW5nOiAwICRnYXA7XHJcblx0XHR9IEBlbHNlIHtcclxuXHRcdFx0bWF4LXdpZHRoOiAkd2lkdGg7XHJcblx0XHR9XHJcblx0XHR3aWR0aDogMTAwJTtcclxuXHRcdG1hcmdpbjogMCBhdXRvO1xyXG5cdH0gQGVsc2Uge1xyXG5cdFx0QGVycm9yICdBcmd1bWVudHMgYCR3aWR0aGAgYW5kIGAkZ2FwYCBzaG91bGQgYmUgYSBudW1iZXInO1xyXG5cdH1cclxufVxyXG5cclxuXHJcbi8qKlxyXG4gKiBTZWN0aW9uXHJcbiAqXHJcbiAqIEFkZCB0b3AgYW5kIGJvdHRvbSBzcGFjaW5nIHRvIGVsZW1lbnQgdXNpbmcgcGFkZGluZ3MuXHJcbiAqIEBwYXJhbSB7U3RyaW5nfSAkdG9wIC0gUGl4ZWwgdW5pdCB2YWx1ZS5cclxuICogQHBhcmFtIHtTdHJpbmd9ICRib3R0b20gLSBQaXhlbCB1bml0IHZhbHVlLlxyXG4gKiBAZXhhbXBsZSBAaW5jbHVkZSBzZWN0aW9uKDEwMHB4LCAxMDBweCk7XHJcbiAqLyBcclxuXHJcbkBtaXhpbiBzZWN0aW9uKCR0b3A6IDAsICRib3R0b206IDApIHtcclxuXHRAaWYgKHR5cGUtb2YoJHRvcCkgPT0gbnVtYmVyIGFuZCB0eXBlLW9mKCRib3R0b20pID09IG51bWJlcikge1xyXG5cdFx0cGFkZGluZzogJHRvcCAwICRib3R0b207XHJcblx0fSBAZWxzZSB7XHJcblx0XHRAZXJyb3IgJ0FyZ3VtZW50cyBgJHRvcGAgYW5kIGBib3R0b21gIHNob3VsZCBiZSBhIG51bWJlcic7XHJcblx0fVxyXG59XHJcblxyXG5cclxuLyoqXHJcbiAqIEZvbnQuXHJcbiAqXHJcbiAqIEFkZHMgYHJlbWAgdW5pdCBiYXNlZCBmb250IHNpemUgcHJvcGVydHksIGEgZmFsbGJhY2sgYHB4YCB1bml0IGJhc2VkIGZvbnQgc2l6ZSBwcm9wZXJ0eSwgYW5kIGEgYGVtYCB1bml0IGJhc2VkIGxpbmUgaGVpZ2h0IHByb3BlcnR5IHRvIGFueSBydWxlLlxyXG4gKiBAcGFyYW0ge1N0cmluZ30gJGZvbnQtc2l6ZSAtIFBpeGVsIHVuaXQgdmFsdWUuXHJcbiAqIEBwYXJhbSB7U3RyaW5nfSAkbGluZS1oZWlnaHQgLSBQaXhlbCB1bml0IHZhbHVlLlxyXG4gKiBAZXhhbXBsZSBAaW5jbHVkZSBmb250LXNpemUoMTZweCwgMjRweCk7XHJcbiAqL1xyXG5cclxuQG1peGluIGZvbnQoJGZvbnQtc2l6ZSwgJGxpbmUtaGVpZ2h0KSB7XHJcblx0QGlmICh0eXBlLW9mKCRmb250LXNpemUpID09IG51bWJlciBhbmQgdW5pdCgkZm9udC1zaXplKSA9PSAncHgnKSB7XHJcblx0XHRmb250LXNpemU6ICRmb250LXNpemU7XHJcblx0XHRmb250LXNpemU6IHJlbSgkZm9udC1zaXplKTsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby1kdXBsaWNhdGUtcHJvcGVydGllc1xyXG5cdH0gQGVsc2Uge1xyXG5cdFx0QGVycm9yICdWYWx1ZSBmb3IgYCN7JGZvbnQtc2l6ZX1gIHNob3VsZCBiZSBhIGBweGAgdW5pdCc7XHJcblx0fVxyXG5cdEBpZiAodHlwZS1vZigkbGluZS1oZWlnaHQpID09IG51bWJlciBhbmQgdW5pdCgkbGluZS1oZWlnaHQpID09ICdweCcpIHtcclxuXHRcdGxpbmUtaGVpZ2h0OiAoKCRsaW5lLWhlaWdodCAvICRmb250LXNpemUpICogMWVtKTtcclxuXHR9IEBlbHNlIHtcclxuXHRcdEBlcnJvciAnVmFsdWUgZm9yIGAjeyRsaW5lLWhlaWdodH1gIHNob3VsZCBiZSBhIGBweGAgdW5pdCc7XHJcblx0fVxyXG59XHJcblxyXG5cclxuLyoqXHJcbiAqIFRleHQuXHJcbiAqXHJcbiAqIFNob3J0aGFuZCBmb3IgdGhlIGZvbnQgbWl4aW4sIHJ1bnMgdGhlIGZvbnQgbWl4aW4gYmFzZWQgb24gYSBjb21tb24gZGVtZWFub3VyIGV4aXN0aW5nIGJvdGggaW4gdGhlIGAkZm9udC1zaXplYCBhbmQgdGhlIGAkbGluZS1oZWlnaHRgIG1hcHMuXHJcbiAqIEBwYXJhbSB7c3RyaW5nfSAkdmFsdWUgLSBTdHJpbmdcclxuICogQGV4YW1wbGUgQGluY2x1ZGUgdGV4dCgncCcpO1xyXG4gKi8gXHJcblxyXG5AbWl4aW4gdGV4dCgkdmFsdWUpIHtcclxuXHRAaWYgKHR5cGUtb2YoJHZhbHVlKSA9PSBzdHJpbmcpIHtcclxuXHRcdEBpbmNsdWRlIGZvbnQobWFwLWdldCgkZm9udC1zaXplLCAkdmFsdWUpLCBtYXAtZ2V0KCRsaW5lLWhlaWdodCwgJHZhbHVlKSk7XHJcblx0fSBAZWxzZSB7XHJcblx0XHRAZXJyb3IgJ1ZhbHVlIHNob3VsZCBiZSBhIHN0cmluZyc7XHJcblx0fVxyXG59XHJcblxyXG5cclxuLyoqXHJcbiAqIEZvbnQgQXdlc29tZS5cclxuICpcclxuICogQWRkIEZvbnQgQXdlc29tZSBpY29ucyBhcyBwc3VlZG8gZWxlbWVudHMgYnkgdXNpbmcgdGhlaXIgdW5pY29kZS5cclxuICogQHBhcmFtIHtTdHJpbmd9ICRjb250ZW50IC0gVW5pY29kZSBzdHJpbmcuXHJcbiAqIEBwYXJhbSB7U3RyaW5nfSAkZmFtaWx5IC0gRm9udCBBd2Vzb21lIGZvbnQgZmFtaWx5IHN0cmluZy5cclxuICogQGV4YW1wbGUgQGluY2x1ZGUgZm9udGF3ZXNvbWUoJ2YxMDAnLCAnTGlnaHQnKTtcclxuICovXHJcblxyXG5AbWl4aW4gZm9udGF3ZXNvbWUoJGNvbnRlbnQsICRmYW1pbHkpIHtcclxuXHRAaWYgKHR5cGUtb2YoJGZhbWlseSkgPT0gc3RyaW5nKSB7XHJcblx0XHRkaXNwbGF5OiBub25lO1xyXG5cdFx0Zm9udC1mYW1pbHk6ICdGb250IEF3ZXNvbWUgNSAjeyRmYW1pbHl9JztcclxuXHRcdGNvbnRlbnQ6IHVuaWNvZGUoJGNvbnRlbnQpO1xyXG5cdH0gQGVsc2Uge1xyXG5cdFx0QGVycm9yICdBcmd1bWVudCBgJGZhbWlseWAgc2hvdWxkIGJlIGEgc3RyaW5nJztcclxuXHR9XHJcbn1cclxuXHJcblxyXG4vKipcclxuICogTWVkaWEuXHJcbiAqXHJcbiAqIE1lZGlhIHF1ZXJpZXMgYWNjb3JkaW5nIHRvIFwiVGhlIDEwMCUgQ29ycmVjdCBXYXkgVG8gRG8gQ1NTIEJyZWFrcG9pbnRzXCIgKGh0dHBzOi8vbWVkaXVtLmZyZWVjb2RlY2FtcC5jb20vdGhlLTEwMC1jb3JyZWN0LXdheS10by1kby1jc3MtYnJlYWtwb2ludHMtODhkNmE1YmExODYyKS5cclxuICogQHBhcmFtIHtTdHJpbmd9ICRicmVha3BvaW50IC0gQnJlYWtwb2ludCBwaXhlbCB1bml0IHZhbHVlLlxyXG4gKiBAZXhhbXBsZSBAaW5jbHVkZSBtZWRpYSgncGhvbmUnKSB7fVxyXG4gKi8gXHJcbiBcclxuQG1peGluIG1lZGlhKCRzaXplKSB7XHJcblx0QGlmICgkc2l6ZSA9PSAnZGVza3RvcCcpIHtcclxuXHRcdEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQobWluLXdpZHRoOiAxMjAwcHgpIHtcclxuXHRcdFx0QGNvbnRlbnQ7XHJcblx0XHR9XHJcblx0fSBAZWxzZSBpZiAoJHNpemUgPT0gJ3RhYmxldC1sYW5kc2NhcGUtdXAnKSB7XHJcblx0XHRAbWVkaWEgb25seSBzY3JlZW4gYW5kKG1pbi13aWR0aDogOTAwcHgpIHtcclxuXHRcdFx0QGNvbnRlbnQ7XHJcblx0XHR9XHJcblx0fSBAZWxzZSBpZiAoJHNpemUgPT0gJ3RhYmxldC1sYW5kc2NhcGUnKSB7XHJcblx0XHRAbWVkaWEgb25seSBzY3JlZW4gYW5kKG1pbi13aWR0aDogOTAwcHgpIGFuZChtYXgtd2lkdGg6IDExOTlweCkge1xyXG5cdFx0XHRAY29udGVudDtcclxuXHRcdH1cclxuXHR9IEBlbHNlIGlmICgkc2l6ZSA9PSAndGFibGV0LWxhbmRzY2FwZS1kb3duJykge1xyXG5cdFx0QG1lZGlhIG9ubHkgc2NyZWVuIGFuZChtYXgtd2lkdGg6IDExOTlweCkge1xyXG5cdFx0XHRAY29udGVudDtcclxuXHRcdH1cclxuXHR9IEBlbHNlIGlmICgkc2l6ZSA9PSAndGFibGV0LXBvcnRyYWl0LXVwJykge1xyXG5cdFx0QG1lZGlhIG9ubHkgc2NyZWVuIGFuZChtaW4td2lkdGg6IDYwMHB4KSB7XHJcblx0XHRcdEBjb250ZW50O1xyXG5cdFx0fVxyXG5cdH0gQGVsc2UgaWYgKCRzaXplID09ICd0YWJsZXQtcG9ydHJhaXQnKSB7XHJcblx0XHRAbWVkaWEgb25seSBzY3JlZW4gYW5kKG1pbi13aWR0aDogNjAwcHgpIGFuZChtYXgtd2lkdGg6IDg5OXB4KSB7XHJcblx0XHRcdEBjb250ZW50O1xyXG5cdFx0fVxyXG5cdH0gQGVsc2UgaWYgKCRzaXplID09ICd0YWJsZXQtcG9ydHJhaXQtZG93bicpIHtcclxuXHRcdEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQobWF4LXdpZHRoOiA4OTlweCkge1xyXG5cdFx0XHRAY29udGVudDtcclxuXHRcdH1cclxuXHR9IEBlbHNlIGlmICgkc2l6ZSA9PSAndGFibGV0Jykge1xyXG5cdFx0QG1lZGlhIG9ubHkgc2NyZWVuIGFuZChtaW4td2lkdGg6IDYwMHB4KSBhbmQobWF4LXdpZHRoOiAxMTk5cHgpIHtcclxuXHRcdFx0QGNvbnRlbnQ7XHJcblx0XHR9XHJcblx0fSBAZWxzZSBpZiAoJHNpemUgPT0gJ3Bob25lJykge1xyXG5cdFx0QG1lZGlhIG9ubHkgc2NyZWVuIGFuZChtYXgtd2lkdGg6IDU5OXB4KSB7XHJcblx0XHRcdEBjb250ZW50O1xyXG5cdFx0fVxyXG5cdH0gQGVsc2Uge1xyXG5cdFx0QGNvbnRlbnQ7XHJcblx0fVxyXG59XHJcbiIsIi8qKlxyXG4gKiBSZW1vdmUgbWFyZ2luIGFuZCBwYWRkaW5nIGZyb20gZXZlcnkgc2VsZWN0b3IgaW5jbHVkaW5nIHRoZWlyXHJcbiAqIHBzdWVkbyBzZWxlY3RvcnMuXHJcbiAqXHJcbiAqIDEuIE1vcmUgc2Vuc2libGUgZGVmYXVsdCBib3ggc2l6aW5nLlxyXG4gKiAgICAoY3NzLXRyaWNrcy5jb20vaW5oZXJpdGluZy1ib3gtc2l6aW5nLXByb2JhYmx5LXNsaWdodGx5LWJldHRlci1iZXN0LXByYWN0aWNlKS5cclxuICovXHJcblxyXG4qLFxyXG4qOjpiZWZvcmUsXHJcbio6OmFmdGVyIHtcclxuXHRtYXJnaW46IDA7XHJcblx0cGFkZGluZzogMDtcclxuXHRib3gtc2l6aW5nOiBpbmhlcml0OyAvKiAxICovXHJcbn1cclxuXHJcblxyXG4vKipcclxuICogU2V0IGhlaWdodCBvZiB0aGUgZG9jdW1lbnQgdG8gbWF4aXVtIHZpZXdwb3J0IGhlaWdodC5cclxuICpcclxuICogMS4gU2V0IHJvb3QgZm9udCBzaXplIHRvIDEwLlxyXG4gKi9cclxuXHJcbmh0bWwge1xyXG5cdGhlaWdodDogMTAwdmg7XHJcblx0Zm9udC1zaXplOiA2Mi41JTsgLyogMSAqL1xyXG5cdGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbn1cclxuXHJcblxyXG4vKipcclxuICogU2V0IG1pbmltYWwgaGVpZ2h0IG9mIHRoZSBib2R5IHRvIG1heGltdW0gdmlld3BvcnQgaGVpZ2h0IHRvXHJcbiAqIG1hdGNoIHRoZSBkb2N1bWVudCdzIGhlaWdodC5cclxuICpcclxuICogMS4gRmlyZWZveCAyNSsuXHJcbiAqIDIuIENocm9tZSA1Ky5cclxuICovXHJcblxyXG5ib2R5IHtcclxuXHRAaW5jbHVkZSBtZWRpYSgncGhvbmUnKSB7XHJcblx0XHRAaW5jbHVkZSBmb250KDE0cHgsIDE4cHgpO1xyXG5cdH1cclxuXHJcblx0QGluY2x1ZGUgdGV4dCgkYm9keS10ZXh0KTtcclxuXHRtaW4taGVpZ2h0OiAxMDB2aDtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkYm9keS1iYWNrZ3JvdW5kLWNvbG9yO1xyXG5cdGNvbG9yOiAkYmx1ZS16b2RpYWMtMTAwO1xyXG5cdGZvbnQtZmFtaWx5OiAkYm9keS1mb250LWZhbWlseTtcclxuXHRmb250LXdlaWdodDogNDAwO1xyXG5cdHRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHk7XHJcblx0LW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTsgLyogMSAqL1xyXG5cdC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkOyAvKiAyICovXHJcbn1cclxuIiwiLyoqXHJcbiAqIEN1c3RvbSB1c2VyIGFnZW50IHJlc2V0cyBhbmQgb3ZlcnJpZGVzIHRoYXQgYXJlIG5vdCBwcmVzZW50IGluXHJcbiAqIE5vcm1hbGl6ZSA4LjAuMC4gVGhpcyBtb3N0bHkgcmVtb3ZlcyBzb21lIGFubm95aW5nIG1hcmdpbiBhbmQgcGFkZGluZ1xyXG4gKiBkZWZhdWx0cywgYm9yZGVyIHJhZGl1cywgYW5kIG91dGxpbmVzLlxyXG4gKi9cclxuXHJcbmEge1xyXG5cdGNvbG9yOiBpbmhlcml0O1xyXG5cdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxufVxyXG5cclxuXHJcbi8qKlxyXG4gKiAxLiBSZW1vdmUgYm9yZGVyIHJhZGl1cyBvbiBDaHJvbWUgNjIuMCsgb24gbWFjT1MuXHJcbiAqL1xyXG5cclxuYnV0dG9uIHtcclxuXHRib3JkZXI6IDA7XHJcblx0Ym9yZGVyLXJhZGl1czogMDsgLyogMSAqL1xyXG5cdG91dGxpbmU6IG5vbmU7XHJcblx0YmFja2dyb3VuZDogbm9uZTtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcbn1cclxuXHJcbmZpZWxkc2V0IHtcclxuXHRtYXJnaW46IDA7XHJcblx0cGFkZGluZzogMDtcclxuXHRib3JkZXI6IDA7XHJcbn1cclxuXHJcbmZpZ3VyZSB7XHJcblx0bWFyZ2luOiAwO1xyXG59XHJcblxyXG5oMSxcclxuaDIsXHJcbmgzLFxyXG5oNCxcclxuaDUsXHJcbmg2IHtcclxuXHRtYXJnaW46IDA7XHJcblx0cGFkZGluZzogMDtcclxuXHRmb250LXNpemU6IGluaGVyaXQ7XHJcblx0Zm9udC13ZWlnaHQ6IGluaGVyaXQ7XHJcbn1cclxuXHJcbmhyIHtcclxuXHRtYXJnaW46IDA7XHJcblx0cGFkZGluZzogMDtcclxufVxyXG5cclxuXHJcbi8qKlxyXG4gKiAxLiBSZW1vdmUgd2hpdGUgc3BhY2UuXHJcbiAqL1xyXG5cclxuaW1nIHtcclxuXHRtYXgtd2lkdGg6IDEwMCU7XHJcblx0aGVpZ2h0OiBhdXRvO1xyXG5cdHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IC8qIDEgKi9cclxufVxyXG5cclxuXHJcbi8qKlxyXG4gKiAxLiBSZW1vdmUgaW5oZXJpdGVkIHVzZXIgYWdlbnQgYXBwZWFyYW5jZS5cclxuICovXHJcblxyXG5pbnB1dCxcclxuc2VsZWN0LFxyXG50ZXh0YXJlYSB7XHJcblx0bWF4LXdpZHRoOiAxMDAlO1xyXG5cdGJvcmRlcjogMDtcclxuXHRib3JkZXItcmFkaXVzOiAwO1xyXG5cdG91dGxpbmU6IG5vbmU7XHJcblx0YXBwZWFyYW5jZTogbm9uZTsgLyogMSAqL1xyXG59XHJcblxyXG5cclxuLyoqXHJcbiAqIDEuIE9ubHkgYWxsb3cgdmVydGljYWwgcmVzaXppbmcgdG8gcHJldmVudCB0aGUgdGV4dGFyZWFcclxuICogICAgZnJvbSBvdmVyZmxvd2luZyB0aGUgY29udGFpbmVyLlxyXG4gKi9cclxuXHJcbnRleHRhcmVhIHtcclxuXHRyZXNpemU6IHZlcnRpY2FsO1xyXG59XHJcblxyXG51bCxcclxub2wge1xyXG5cdG1hcmdpbjogMDtcclxuXHRwYWRkaW5nOiAwO1xyXG5cdGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcclxufVxyXG5cclxucCB7XHJcblx0bWFyZ2luOiAwO1xyXG59XHJcblxyXG5cclxuLyoqXHJcbiAqIDEuIENvbGxhcHNlIGJvcmRlcnMgdG8gcHJldmVudCBkb3VibGUgc2lkZWQgYm9yZGVycy5cclxuICovXHJcblxyXG50YWJsZSB7XHJcblx0bWF4LXdpZHRoOiAxMDAlO1xyXG5cdGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7IC8qIDEgKi9cclxufVxyXG5cclxuc3Ryb25nIHtcclxuXHRmb250LXdlaWdodDogNzAwO1xyXG59XHJcbiIsIi5icmVhZGNydW1icyB7XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1wb3J0cmFpdC1kb3duJykge1xyXG5cdFx0bWFyZ2luLWJvdHRvbTogNDBweDtcclxuXHR9XHJcblxyXG5cdGJhY2tncm91bmQtY29sb3I6ICRjb25jcmV0ZS0xMDA7XHJcblx0bWFyZ2luLWJvdHRvbTogNjBweDtcclxuXHJcblx0LndyYXBwZXIge1xyXG5cdFx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG5cdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHR9XHJcbn1cclxuXHJcbi5icmVhZGNydW1ic19fd3JhcCB7XHJcblx0QGluY2x1ZGUgZm9udCgxMHB4LCAxMnB4KTtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGNvbG9yOiAkYmx1ZS16b2RpYWMtNTA7XHJcblx0Zm9udC13ZWlnaHQ6IDYwMDtcclxuXHJcblx0YSB7XHJcblx0XHR0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcclxuXHRcdHRyYW5zaXRpb246IGFsbCAyNTBtcyBlYXNlO1xyXG5cclxuXHRcdCY6aG92ZXIge1xyXG5cdFx0XHRjb2xvcjogJGJsdWUtem9kaWFjLTEwMDtcclxuXHRcdH1cclxuXHR9XHJcbn1cclxuXHJcbi5icmVhZGNydW1ic19fYmFjayB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cdHdpZHRoOiAzOHB4O1xyXG5cdGhlaWdodDogNDBweDtcclxuXHRtYXJnaW4tcmlnaHQ6IDEwcHg7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogJGdyZXktMjAwO1xyXG5cclxuXHRzdmcge1xyXG5cdFx0d2lkdGg6IDE2cHg7XHJcblx0XHRoZWlnaHQ6IDE4cHg7XHJcblx0XHRjb2xvcjogJGJsdWUtem9kaWFjLTEwMDtcclxuXHR9XHJcbn1cclxuXHJcbi5icmVhZGNydW1ic19fbGFiZWwge1xyXG5cdG1hcmdpbi1yaWdodDogNXB4O1xyXG59XHJcblxyXG4uYnJlYWRjcnVtYnNfX3lvYXN0IHtcclxuXHRoZWlnaHQ6IDQwcHg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxufVxyXG5cclxuLmJyZWFkY3J1bWJzX19zaGFyZSB7XHJcblx0QGluY2x1ZGUgZm9udCgxMHB4LCAxMnB4KTtcclxuXHRoZWlnaHQ6IDQwcHg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRjb2xvcjogJGJsdWUtem9kaWFjLTUwO1xyXG5cdGZvbnQtd2VpZ2h0OiA2MDA7XHJcbn1cclxuXHJcbi5icmVhZGNydW1ic19fc2hhcmUtd3JhcCB7XHJcblx0YSB7XHJcblx0XHRtYXJnaW4tbGVmdDogMTJweDtcclxuXHR9XHJcblxyXG5cdHN2ZyB7XHJcblx0XHR3aWR0aDogYXV0bztcclxuXHRcdGhlaWdodDogMThweDtcclxuXHRcdGNvbG9yOiAkYmx1ZS16b2RpYWMtMTAwO1xyXG5cdFx0dHJhbnNpdGlvbjogYWxsIDI1MG1zIGVhc2U7XHJcblxyXG5cdFx0Jjpob3ZlciB7XHJcblx0XHRcdG9wYWNpdHk6IDAuNzU7XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHRzcGFuIHtcclxuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdG9wYWNpdHk6IDA7XHJcblx0XHR6LWluZGV4OiAtMTtcclxuXHR9XHJcbn1cclxuIiwiLyoqXHJcbiAqIEJ1dHRvbi5cclxuICovXHJcblxyXG4lYnV0dG9uLFxyXG4uYnV0dG9uIHtcclxuXHRAaW5jbHVkZSBmb250KDE2cHgsIDE4cHgpO1xyXG5cdGRpc3BsYXk6IGlubGluZS1mbGV4O1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cdGhlaWdodDogNDhweDtcclxuXHRwYWRkaW5nOiAycHggMjBweCAwIDIwcHg7XHJcblx0Zm9udC1mYW1pbHk6IG1hcC1nZXQoJGZvbnQtZmFtaWx5LCAnYnV0dG9uJyk7XHJcblx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHRmb250LXdlaWdodDogNjAwO1xyXG5cdGJvcmRlci1yYWRpdXM6IDJweDtcclxuXHRjb2xvcjogJGJsdWUtem9kaWFjLTEwMDtcclxuXHRib3gtc2hhZG93OiA1cHggNXB4IDBweCAkYmx1ZS16b2RpYWMtMTAwO1xyXG5cdHotaW5kZXg6IDI7XHJcblxyXG5cdHN2ZyB7XHJcblx0XHR3aWR0aDogMTRweDtcclxuXHRcdGhlaWdodDogMThweDtcclxuXHRcdHRyYW5zaXRpb246IGFsbCAyNTBtcyBlYXNlO1xyXG5cdH1cclxuXHJcblx0Ji5oYXMtc3ZnLXJpZ2h0IHtcclxuXHRcdHN2ZyB7XHJcblx0XHRcdG1hcmdpbi1sZWZ0OiA0MHB4O1xyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0Ji5oYXMtc3ZnLWxlZnQge1xyXG5cdFx0c3ZnIHtcclxuXHRcdFx0bWFyZ2luLXJpZ2h0OiA0MHB4O1xyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0Ji50aGVtZS0ta3JpbXBlbmVyd2FhcmQge1xyXG5cdFx0Y29sb3I6ICR3aGl0ZS0xMDA7XHJcblx0fVxyXG5cclxuXHQmOmhvdmVyIHtcclxuXHRcdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtcG9ydHJhaXQtdXAnKSB7XHJcblx0XHRcdHRvcDogM3B4O1xyXG5cdFx0XHRsZWZ0OiAzcHg7XHJcblx0XHRcdGJveC1zaGFkb3c6IDJweCAycHggMHB4ICRibHVlLXpvZGlhYy0xMDA7XHJcblxyXG5cdFx0XHQmLmhhcy1zdmctcmlnaHQge1xyXG5cdFx0XHRcdHN2ZyB7XHJcblx0XHRcdFx0XHRtYXJnaW4tbGVmdDogNDVweDtcclxuXHRcdFx0XHRcdG1hcmdpbi1yaWdodDogLTVweDtcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcbn1cclxuIiwiLyoqXHJcbiAqIEV2ZXJ5IGNvbmNlaXZhYmxlIEhUTUwgZWxlbWVudCB3aXRoaW4gYSBgLmNtcy1vdXRwdXRgIHdyYXBwZXIuXHJcbiAqXHJcbiAqIDEuIEV4Y2x1ZGUgbGFzdCBjaGlsZHMuXHJcbiAqL1xyXG5cclxuLmNtcy1vdXRwdXQge1xyXG5cdHAge1xyXG5cdFx0Jjpub3QoOmxhc3QtY2hpbGQpIHtcclxuXHRcdFx0bWFyZ2luLWJvdHRvbTogMmVtO1xyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0aDIsXHJcblx0aDMsXHJcblx0aDMsXHJcblx0aDQge1xyXG5cdFx0bWFyZ2luLWJvdHRvbTogMzBweDtcclxuXHR9XHJcblxyXG5cdGg1IHtcclxuXHRcdG1hcmdpbi1ib3R0b206IDIwcHg7XHJcblx0fVxyXG5cclxuXHQuaXMtaW50cm8ge1xyXG5cdFx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1wb3J0cmFpdC1kb3duJykge1xyXG5cdFx0XHRAaW5jbHVkZSBmb250KDE4cHgsIDIycHgpO1xyXG5cdFx0fVxyXG5cclxuXHRcdEBpbmNsdWRlIGZvbnQoMjJweCwgMjhweCk7XHJcblx0XHRmb250LXdlaWdodDogNjAwO1xyXG5cdH1cclxuXHJcblx0aW1nIHtcclxuXHRcdCYuYWxpZ25jZW50ZXIge1xyXG5cdFx0XHRkaXNwbGF5OiBibG9jaztcclxuXHRcdFx0bWFyZ2luOiAwIGF1dG87XHJcblx0XHR9XHJcblxyXG5cdFx0Ji5hbGlnbnJpZ2h0IHtcclxuXHRcdFx0ZGlzcGxheTogYmxvY2s7XHJcblx0XHRcdG1hcmdpbjogMCAwIDAgYXV0bztcclxuXHRcdH1cclxuXHJcblx0XHRib3JkZXItcmFkaXVzOiAycHg7XHJcblx0fVxyXG5cclxuXHR0YWJsZSB7XHJcblx0XHR3b3JkLWJyZWFrOiBicmVhay13b3JkO1xyXG5cclxuXHRcdHRkIHtcclxuXHRcdFx0dmVydGljYWwtYWxpZ246IHRvcDtcclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdHVsLFxyXG5cdG9sIHtcclxuXHRcdGxpc3Qtc3R5bGUtdHlwZTogc3F1YXJlO1xyXG5cdFx0bWFyZ2luLWxlZnQ6IDIwcHg7XHJcblx0XHRtYXJnaW4tYm90dG9tOiAxZW07XHJcblxyXG5cdFx0bGkge1xyXG5cdFx0XHRtYXJnaW4tYm90dG9tOiAxNXB4O1xyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0b2wge1xyXG5cdFx0bGlzdC1zdHlsZS10eXBlOiBkZWNpbWFsO1xyXG5cdH1cclxuXHJcblx0c3Ryb25nIHtcclxuXHRcdGZvbnQtd2VpZ2h0OiBib2xkO1xyXG5cdH1cclxuXHJcblx0YSB7XHJcblx0XHR0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcclxuXHRcdHRyYW5zaXRpb246IGFsbCAyNTBtcyBlYXNlO1xyXG5cdH1cclxuXHJcblx0YmxvY2txdW90ZSB7XHJcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0XHRwYWRkaW5nOiA0MHB4IDQ1cHggMjBweCA0NXB4O1xyXG5cdFx0Y29sb3I6ICRyZWQtMTAwO1xyXG5cdH1cclxuXHJcblx0LndwLWNhcHRpb24ge1xyXG5cdFx0bWFyZ2luLWJvdHRvbTogMjBweDtcclxuXHJcblx0XHRpbWcge1xyXG5cdFx0XHRib3JkZXItcmFkaXVzOiAxMHB4O1xyXG5cdFx0fVxyXG5cclxuXHRcdC53cC1jYXB0aW9uLXRleHQge1xyXG5cdFx0XHRAaW5jbHVkZSBmb250KDE2cHgsIDIwcHgpO1xyXG5cdFx0XHRjb2xvcjogJHJlZC0xMDA7XHJcblx0XHRcdGxldHRlci1zcGFjaW5nOiAwLjQ0cHg7XHJcblx0XHRcdG1hcmdpbi10b3A6IDEwcHg7XHJcblx0XHR9XHJcblx0fVxyXG59XHJcbiIsIi8qKlxyXG4gKiBUaGUgY29udGFpbmVyIG9iamVjdCBjZW50ZXJzIGFuIGVsZW1lbnQgaW4gdGhlIGRvY3VtZW50LlxyXG4gKi9cclxuXHJcbi5jb250YWluZXIge1xyXG5cdEBpbmNsdWRlIGNvbnRhaW5lcjtcclxufVxyXG4iLCIvKipcclxuICogVGhlIGNvbnRlbnQgY29uc3RyYWludCBpcyBhIGNvbnN0cmFpbnQgZm9yIGFsbCB0aGUgY29udGVudCB3aXRoaW5cclxuICogdGhlIGRvY3VtZW50LiBJdCBjYW4gYmUgbWFuaXB1bGF0ZWQgYnkgQ1NTIG9yIEphdmFTY3JpcHQgd2l0aG91dFxyXG4gKiBpbmZsdWVuY2luZyB0aGUgYm9keS5cclxuICovXHJcblxyXG4uY29udGVudC1jb25zdHJhaW50IHtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0bWluLWhlaWdodDogMTAwdmg7XHJcblx0b3ZlcmZsb3c6IGhpZGRlbjtcclxufVxyXG4iLCIvKipcclxuICogRXhhbXBsZSBvZiBhIGZsZXggYmFzZWQgY29sdW1uIGdyaWQgbGF5b3V0IGluIHByYWN0aWNlOlxyXG4gKlxyXG4gKiA8ZGl2IGNsYXNzPVwicm93XCI+XHJcbiAqICAgPGRpdiBjbGFzcz1cImNvbCBjb2wteHMtNiBjb2wtc20tMTJcIj48L2Rpdj5cclxuICogICA8ZGl2IGNsYXNzPVwiY29sIGNvbC14cy02IGNvbC1zbS0xMlwiPjwvZGl2PlxyXG4gKiA8L2Rpdj5cclxuICpcclxuICogVGhpcyBleGFtcGxlIHdpbGwgY3JlYXRlIGEgcm93IHdpdGggdHdvIGNvbHVtbnMgZWFjaCBmaWxsaW5nIGhhbGYgdGhlIHdpZHRoXHJcbiAqIG9mIHRoZSByb3cgb24gYWxsIG1lZGlhLCBidXQgd2lsbCBjb252ZXJ0IHRvIGEgZnVsbCB3aWR0aCBjb2x1bW4gb24gdGhlXHJcbiAqIHNtYWxsIGAtc21gIGJyZWFrcG9pbnQgYWxpYXMsIHdoaWNoIGlzIG1vYmlsZSBvbmx5LiBSZWZlciB0b1xyXG4gKiBgc2V0dGluZ3MvX2RlZmluaXRpb25zLnNjc3NgIGZvciBhbGwgYnJlYWtwb2ludCBhbGlhcy5cclxuICovXHJcblxyXG4vKipcclxuICogRmxleCBvYmplY3QuXHJcbiAqXHJcbiAqIFRpcDogVXNlIGZsZXggb24gYSBjb2x1bW4gdG8gbWFrZSB0aGUgYm94IHRoZSBzYW1lIGhlaWdodCBhcyB0aGUgY29sdW1uLlxyXG4gKi9cclxuXHJcbi5mbGV4IHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG59XHJcblxyXG4uZmxleC13cmFwIHtcclxuXHRmbGV4LXdyYXA6IHdyYXA7XHJcbn1cclxuXHJcblxyXG4vKipcclxuICogRmxleCBvYmplY3Qgd2l0aCBhIGNvbHVtbiBiYXNlZCBsYXlvdXQgc3lzdGVtLlxyXG4gKi9cclxuXHJcbi5yb3cge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleDogMCAxIGF1dG87XHJcblx0ZmxleC1mbG93OiByb3cgd3JhcDtcclxuXHRtYXJnaW46IDAgLSN7KCRncmlkLWdhcC8yKX07XHJcbn1cclxuXHJcblxyXG4vKipcclxuICogQm94LCB0aGUgaW5zaWRlIG9mIGEgY29sdW1uLlxyXG4gKi9cclxuXHJcbi5ib3gge1xyXG5cdGZsZXg6IDE7XHJcbn1cclxuXHJcblxyXG4vLyBMb29wIHRocm91Z2ggYWxsIHRoZSBrZXlzIGluIHRoZSBgJGJyZWFrcG9pbnRzYCB2YXJpYWJsZSBtYXAgZGVmaW5lZCBpblxyXG4vLyBgc2V0dGluZ3MvX2RlZmluaXRpb25zLnNjc3NgLlxyXG5AZWFjaCAka2V5LCAkdmFsdWUgaW4gJGJyZWFrcG9pbnRzIHtcclxuXHJcblx0Ly8gQ3JlYXRlIGEgbWVkaWEgcXVlcnkgZm9yIGV2ZXJ5IGtleSBpbiBgJGJyZWFrcG9pbnRzYC5cclxuXHRAaW5jbHVkZSBtZWRpYSgkdmFsdWUpIHtcclxuXHJcblx0XHQvLyBJdGVyYXRlIGZyb20gMSB0aHJvdWdoIHRoZSBhbW91bnQgb2YgZ3JpZCBjb2x1bW5zIGRlZmluZWQgYnlcclxuXHRcdC8vIGAkZ3JpZC1jb2x1bW5zYCBpbiBgc2V0dGluZ3MvX2RlZmluaXRpb25zLnNjc3NgLlxyXG5cdFx0QGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkZ3JpZC1jb2x1bW5zIHtcclxuXHJcblx0XHRcdC8qKlxyXG5cdFx0XHQgKiBDb2x1bW4gI3skaX0gZm9yIHRoZSBgI3ska2V5fWAgYnJlYWtwb2ludC5cclxuXHRcdFx0ICovXHJcblxyXG5cdFx0XHQuY29sLSN7JGtleX0tI3skaX0ge1xyXG5cdFx0XHRcdGZsZXg6IDAgMSBhdXRvO1xyXG5cdFx0XHRcdHdpZHRoOiBjb2x1bW4oJGkpO1xyXG5cdFx0XHRcdHBhZGRpbmc6IDAgKCRncmlkLWdhcC8yKTtcclxuXHRcdFx0fVxyXG5cclxuXHJcblx0XHRcdC8vIE91dHB1dCBhbiBvZmZzZXQgdXRpbGl0eSBjbGFzcyBpZiB0aGUgaXRlcmF0b3IgaXMgbGVzcyB0aGFuIHRoZSBhbW91bnRcclxuXHRcdFx0Ly8gb2YgZ3JpZCBjb2x1bW5zIGRlZmluZWQgYnkgYCRncmlkLWNvbHVtbnNgIGluXHJcblx0XHRcdC8vIGBzZXR0aW5ncy9fZGVmaW5pdGlvbnMuc2Nzc2AuXHJcblx0XHRcdEBpZiAoJGkgPCAkZ3JpZC1jb2x1bW5zKSB7XHJcblxyXG5cdFx0XHRcdC8qKlxyXG5cdFx0XHRcdCAqIE9mZnNldCAjeyRpfSBmb3IgdGhlIGAjeyRrZXl9YCBicmVha3BvaW50LlxyXG5cdFx0XHRcdCAqL1xyXG5cclxuXHRcdFx0XHQub2Zmc2V0LSN7JGtleX0tI3skaX0ge1xyXG5cdFx0XHRcdFx0bWFyZ2luLWxlZnQ6IGNvbHVtbigkaSk7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHR9XHJcblxyXG5cclxuXHRcdC8vIExvb3AgdGhyb3VnaCBhbGwgdmFsdWVzIGZvciB0aGUgYGFsaWduLWl0ZW1zYCBwcm9wZXJ0eS5cclxuXHRcdEBlYWNoICR2YWx1ZSBpbiBzdHJldGNoLCBjZW50ZXIsIGZsZXgtc3RhcnQsIGZsZXgtZW5kLCBiYXNlbGluZSB7XHJcblxyXG5cdFx0XHQvKipcclxuXHRcdFx0ICogQWxpZ24gYCN7JHZhbHVlfWAgZm9yIHRoZSAjeyRrZXl9IGJyZWFrcG9pbnQuXHJcblx0XHRcdCAqL1xyXG5cclxuXHRcdFx0LmFsaWduLSN7JGtleX0tI3skdmFsdWV9IHtcclxuXHRcdFx0XHRhbGlnbi1pdGVtczogJHZhbHVlO1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblxyXG5cclxuXHRcdC8vIExvb3AgdGhyb3VnaCBhbGwgdmFsdWVzIGZvciB0aGUgYGp1c3RpZnktY29udGVudGAgcHJvcGVydHkuXHJcblx0XHRAZWFjaCAkdmFsdWUgaW4gc3RhcnQsIGNlbnRlciwgc3BhY2UtYmV0d2Vlbiwgc3BhY2UtYXJvdW5kLCBzcGFjZS1ldmVubHkge1xyXG5cclxuXHRcdFx0LyoqXHJcblx0XHRcdCAqIEp1c3RpZnkgYCN7JHZhbHVlfWAgZm9yIHRoZSAjeyRrZXl9IGJyZWFrcG9pbnQuXHJcblx0XHRcdCAqL1xyXG5cclxuXHRcdFx0Lmp1c3RpZnktI3ska2V5fS0jeyR2YWx1ZX0ge1xyXG5cdFx0XHRcdGp1c3RpZnktY29udGVudDogJHZhbHVlO1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblxyXG5cclxuXHRcdC8vIExvb3AgdGhyb3VnaCBldmVyeSBkaXJlY3Rpb24gZnJvbSBsZWZ0IHRvIHJpZ2h0LlxyXG5cdFx0QGVhY2ggJGRpcmVjdGlvbiBpbiBsZWZ0LCByaWdodCB7XHJcblxyXG5cdFx0XHQvKipcclxuXHRcdFx0ICogQmxlZWQgI3skZGlyZWN0aW9ufSBmb3IgdGhlICN7JGtleX0gYnJlYWtwb2ludC5cclxuXHRcdFx0ICovXHJcblxyXG5cdFx0XHQuYmxlZWQtI3ska2V5fS0jeyRkaXJlY3Rpb259IHtcclxuXHRcdFx0XHRwYWRkaW5nLSN7JGRpcmVjdGlvbn06IDA7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHJcblxyXG5cdFx0LyoqXHJcblx0XHQgKiBPcmRlciBmaXJzdCBmb3IgdGhlIGAjeyRrZXl9YCBicmVha3BvaW50LlxyXG5cdFx0ICovXHJcblxyXG5cdFx0LmZpcnN0LSN7JGtleX0ge1xyXG5cdFx0XHRvcmRlcjogLTE7XHJcblx0XHR9XHJcblxyXG5cclxuXHRcdC8qKlxyXG5cdFx0ICogT3JkZXIgbGFzdCBmb3IgdGhlIGAjeyRrZXl9YCBicmVha3BvaW50LlxyXG5cdFx0ICovXHJcblxyXG5cdFx0Lmxhc3QtI3ska2V5fSB7XHJcblx0XHRcdG9yZGVyOiAxO1xyXG5cdFx0fVxyXG5cclxuXHJcblx0XHQvKipcclxuXHRcdCAqIFJldmVyc2Ugb3JkZXIgZm9yIHRoZSBgI3ska2V5fWAgYnJlYWtwb2ludC5cclxuXHRcdCAqL1xyXG5cclxuXHRcdC5yZXZlcnNlLSN7JGtleX0ge1xyXG5cdFx0XHRmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7XHJcblx0XHR9XHJcblx0fVxyXG59XHJcbiIsIi8qKlxyXG4gKiBEZWZhdWx0IGZpZWxkcy5cclxuICovXHJcblxyXG5sYWJlbCB7XHJcblx0ZGlzcGxheTogYmxvY2s7XHJcblx0bWFyZ2luLWJvdHRvbTogOHB4O1xyXG5cdGZvbnQtd2VpZ2h0OiA2MDA7XHJcblx0Y29sb3I6ICRibHVlLXpvZGlhYy01MDtcclxuXHRtYXJnaW4tbGVmdDogMTVweDtcclxufVxyXG5cclxuJWlucHV0LFxyXG5zZWxlY3QsXHJcbmlucHV0LFxyXG50ZXh0YXJlYSB7XHJcblx0QGluY2x1ZGUgZm9udCgxNnB4LCAyM3B4KTtcclxuXHR3aWR0aDogMTAwJTtcclxuXHRoZWlnaHQ6IDUwcHg7XHJcblx0cGFkZGluZzogNnB4IDE1cHg7XHJcblx0Ym9yZGVyLXJhZGl1czogNHB4O1xyXG5cdGZvbnQtd2VpZ2h0OiA1MDA7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcblx0Ym9yZGVyOiAycHggc29saWQgJGJsdWUtem9kaWFjLTIwO1xyXG5cdGNvbG9yOiAkYmx1ZS16b2RpYWMtMTAwO1xyXG5cdHRyYW5zaXRpb246IGFsbCAyNTBtcyBlYXNlO1xyXG5cclxuXHQmOmZvY3VzIHtcclxuXHRcdGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG5cdFx0Ym9yZGVyOiAycHggc29saWQgJGJsdWUtem9kaWFjLTEwMDtcclxuXHR9XHJcblxyXG5cdCY6aG92ZXIge1xyXG5cdFx0Ym9yZGVyOiAycHggc29saWQgJGJsdWUtem9kaWFjLTEwMDtcclxuXHR9XHJcbn1cclxuXHJcbnRleHRhcmVhIHtcclxuXHRoZWlnaHQ6IDEzMHB4O1xyXG5cdHBhZGRpbmctdG9wOiAxNXB4O1xyXG59XHJcblxyXG4uZ2ZpZWxkX3JlcXVpcmVkIHtcclxuXHRjb2xvcjogJGJsdWUtem9kaWFjLTUwO1xyXG59XHJcblxyXG4uZ2lucHV0X2NvbnRhaW5lcl9zZWxlY3Qge1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHR3aWR0aDogMTAwJTtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG5cdGJvcmRlci1yYWRpdXM6IDRweDtcclxuXHRib3JkZXI6IDJweCBzb2xpZCAkYmx1ZS16b2RpYWMtMjA7XHJcblxyXG5cdHN2ZyB7XHJcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHR0b3A6IDE0cHg7XHJcblx0XHRyaWdodDogMjBweDtcclxuXHRcdHdpZHRoOiA5cHg7XHJcblx0XHRoZWlnaHQ6IDEzcHg7XHJcblx0XHR6LWluZGV4OiAxO1xyXG5cdH1cclxuXHJcblx0c2VsZWN0IHtcclxuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRcdHdpZHRoOiBjYWxjKDEwMCUgKyA1MHB4KTtcclxuXHRcdG1heC13aWR0aDogbm9uZTtcclxuXHRcdG1hcmdpbjogLTJweDtcclxuXHRcdGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG5cdFx0Ym9yZGVyOiAwO1xyXG5cdFx0ei1pbmRleDogMjtcclxuXHR9XHJcbn1cclxuXHJcbi5nZmllbGRfY2hlY2tib3gge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC13cmFwOiB3cmFwO1xyXG5cdG1hcmdpbi1ib3R0b206IC0zMHB4O1xyXG5cdFxyXG5cdC5nY2hvaWNlIHtcclxuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRcdG1hcmdpbjogMCAzMHB4IDMwcHggMDtcclxuXHJcblx0XHQmOmZpcnN0LW9mLXR5cGUge1xyXG5cdFx0XHRtYXJnaW4tbGVmdDogMDtcclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdGlucHV0IHtcclxuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdHRvcDogLTFweDtcclxuXHRcdGxlZnQ6IC0xcHg7XHJcblx0XHR3aWR0aDogY2FsYygxMDAlICsgMnB4KTtcclxuXHRcdGhlaWdodDogY2FsYygxMDAlICsgMnB4KTtcclxuXHRcdG9wYWNpdHk6IDA7XHJcblx0XHR6LWluZGV4OiAxMDtcclxuXHJcblx0XHQmOmNoZWNrZWQgKyBsYWJlbCB7XHJcblx0XHRcdHBhZGRpbmc6IDAgMTBweDtcclxuXHRcdFx0Ym9yZGVyOiAycHggc29saWQgJGJsdWUtem9kaWFjLTEwMDtcclxuXHRcdFx0Y29sb3I6ICRibHVlLXpvZGlhYy0xMDA7XHJcblxyXG5cdFx0XHQmOmJlZm9yZSB7XHJcblx0XHRcdFx0Ym9yZGVyOiAycHggc29saWQgJGJsdWUtem9kaWFjLTEwMDtcclxuXHRcdFx0fVxyXG5cclxuXHRcdFx0c3ZnIHtcclxuXHRcdFx0XHRvcGFjaXR5OiAxO1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHRsYWJlbCB7XHJcblx0XHRAaW5jbHVkZSBmb250KDIycHgsIDI2cHgpO1xyXG5cdFx0ZGlzcGxheTogZmxleDtcclxuXHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0XHRoZWlnaHQ6IDUwcHg7XHJcblx0XHRwYWRkaW5nOiAxcHggMTFweDtcclxuXHRcdGJvcmRlcjogMXB4IHNvbGlkICRibHVlLXpvZGlhYy0yMDtcclxuXHRcdGJvcmRlci1yYWRpdXM6IDRweDtcclxuXHRcdG9wYWNpdHk6IDE7XHJcblx0XHR6LWluZGV4OiA1O1xyXG5cdFx0bWFyZ2luOiAwO1xyXG5cclxuXHRcdCY6YmVmb3JlIHtcclxuXHRcdFx0d2lkdGg6IDIwcHg7XHJcblx0XHRcdGhlaWdodDogMjBweDtcclxuXHRcdFx0Ym9yZGVyOiAycHggc29saWQgJGJsdWUtem9kaWFjLTIwO1xyXG5cdFx0XHRib3JkZXItcmFkaXVzOiAycHg7XHJcblx0XHRcdG1hcmdpbi1yaWdodDogMTBweDtcclxuXHRcdFx0Y29udGVudDogJyc7XHJcblx0XHRcdHRyYW5zaXRpb246IGFsbCAyNTBtcyBlYXNlO1xyXG5cdFx0fVxyXG5cclxuXHRcdHN2ZyB7XHJcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdFx0dG9wOiAxNXB4O1xyXG5cdFx0XHRsZWZ0OiAxMnB4O1xyXG5cdFx0XHR3aWR0aDogMjBweDtcclxuXHRcdFx0aGVpZ2h0OiAyMHB4O1xyXG5cdFx0XHRjb2xvcjogJGJsdWUtem9kaWFjLTEwMDtcclxuXHRcdFx0b3BhY2l0eTogMDtcclxuXHRcdFx0dHJhbnNpdGlvbjogYWxsIDI1MG1zIGVhc2U7XHJcblx0XHRcdHotaW5kZXg6IDY7XHJcblx0XHR9XHJcblx0fVxyXG59XHJcblxyXG4uZ2lucHV0X2NvbnRhaW5lcl9yYWRpbyB7XHJcblx0LmdmaWVsZF9yYWRpbyB7XHJcblx0XHRkaXNwbGF5OiBmbGV4O1xyXG5cdFx0ZmxleC13cmFwOiB3cmFwO1xyXG5cdH1cclxuXHJcblx0LmdjaG9pY2Uge1xyXG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdFx0bWFyZ2luOiAwIDMwcHggMzBweCAwO1xyXG5cdFxyXG5cdFx0JjpmaXJzdC1vZi10eXBlIHtcclxuXHRcdFx0bWFyZ2luLWxlZnQ6IDA7XHJcblx0XHR9XHJcblx0XHJcblx0XHRpbnB1dCB7XHJcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdFx0dG9wOiAtMXB4O1xyXG5cdFx0XHRsZWZ0OiAtMXB4O1xyXG5cdFx0XHR3aWR0aDogY2FsYygxMDAlICsgMnB4KTtcclxuXHRcdFx0aGVpZ2h0OiBjYWxjKDEwMCUgKyAycHgpO1xyXG5cdFx0XHRvcGFjaXR5OiAwO1xyXG5cdFx0XHR6LWluZGV4OiAxMDtcclxuXHRcclxuXHRcdFx0JjpjaGVja2VkICsgbGFiZWwge1xyXG5cdFx0XHRcdHBhZGRpbmc6IDAgMTBweDtcclxuXHRcdFx0XHRib3JkZXI6IDJweCBzb2xpZCAkYmx1ZS16b2RpYWMtMTAwO1xyXG5cdFx0XHRcdGNvbG9yOiAkYmx1ZS16b2RpYWMtMTAwO1xyXG5cdFxyXG5cdFx0XHRcdCY6YmVmb3JlIHtcclxuXHRcdFx0XHRcdGJvcmRlcjogMnB4IHNvbGlkICRibHVlLXpvZGlhYy0xMDA7XHJcblx0XHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkYmx1ZS16b2RpYWMtMTAwO1xyXG5cdFx0XHRcdH1cclxuXHRcclxuXHRcdFx0XHRzdmcge1xyXG5cdFx0XHRcdFx0b3BhY2l0eTogMTtcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHRcclxuXHRcdGxhYmVsIHtcclxuXHRcdFx0QGluY2x1ZGUgZm9udCgyMnB4LCAyNnB4KTtcclxuXHRcdFx0ZGlzcGxheTogZmxleDtcclxuXHRcdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRcdFx0aGVpZ2h0OiA1MHB4O1xyXG5cdFx0XHRwYWRkaW5nOiAxcHggMTFweDtcclxuXHRcdFx0Ym9yZGVyOiAxcHggc29saWQgJGJsdWUtem9kaWFjLTIwO1xyXG5cdFx0XHRib3JkZXItcmFkaXVzOiA0cHg7XHJcblx0XHRcdG9wYWNpdHk6IDE7XHJcblx0XHRcdHotaW5kZXg6IDU7XHJcblx0XHRcdG1hcmdpbjogMDtcclxuXHRcclxuXHRcdFx0JjpiZWZvcmUge1xyXG5cdFx0XHRcdHdpZHRoOiAyMHB4O1xyXG5cdFx0XHRcdGhlaWdodDogMjBweDtcclxuXHRcdFx0XHRib3JkZXI6IDJweCBzb2xpZCAkYmx1ZS16b2RpYWMtMjA7XHJcblx0XHRcdFx0Ym9yZGVyLXJhZGl1czogMnB4O1xyXG5cdFx0XHRcdG1hcmdpbi1yaWdodDogMTBweDtcclxuXHRcdFx0XHRib3JkZXItcmFkaXVzOiAyMHB4O1xyXG5cdFx0XHRcdGNvbnRlbnQ6ICcnO1xyXG5cdFx0XHRcdHRyYW5zaXRpb246IGFsbCAyNTBtcyBlYXNlO1xyXG5cdFx0XHR9XHJcblx0XHJcblx0XHRcdHN2ZyB7XHJcblx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0XHRcdHRvcDogMTVweDtcclxuXHRcdFx0XHRsZWZ0OiAxMnB4O1xyXG5cdFx0XHRcdHdpZHRoOiAyMHB4O1xyXG5cdFx0XHRcdGhlaWdodDogMjBweDtcclxuXHRcdFx0XHRjb2xvcjogJGJsdWUtem9kaWFjLTEwMDtcclxuXHRcdFx0XHRvcGFjaXR5OiAwO1xyXG5cdFx0XHRcdHRyYW5zaXRpb246IGFsbCAyNTBtcyBlYXNlO1xyXG5cdFx0XHRcdHotaW5kZXg6IDY7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcbn1cclxuXHJcbi5naW5wdXRfY29udGFpbmVyX2ZpbGV1cGxvYWQge1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcblx0aW5wdXQge1xyXG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0dG9wOiAwO1xyXG5cdFx0bGVmdDogMDtcclxuXHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0aGVpZ2h0OiA1MHB4O1xyXG5cdFx0b3BhY2l0eTogMDtcclxuXHRcdHotaW5kZXg6IDEwO1xyXG5cdH1cclxuXHJcblx0LmdpbnB1dF9wcmV2aWV3LFxyXG5cdHNwYW4ge1xyXG5cdFx0QGV4dGVuZCAlaW5wdXQ7XHJcblx0XHRkaXNwbGF5OiBmbGV4O1xyXG5cdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRwYWRkaW5nOiAxNXB4IDE1cHggMTVweCA0MHB4O1xyXG5cclxuXHRcdCYuZ2Zvcm1fZmlsZXVwbG9hZF9ydWxlcyB7XHJcblx0XHRcdGRpc3BsYXk6IG5vbmU7XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHQuZ2lucHV0X3ByZXZpZXcge1xyXG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cclxuXHRcdGJ1dHRvbiB7XHJcblx0XHRcdGRpc3BsYXk6IG5vbmU7XHJcblx0XHR9XHRcdFxyXG5cdH1cclxuXHJcblx0c3ZnIHtcclxuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdHRvcDogMTdweDtcclxuXHRcdGxlZnQ6IDE1cHg7XHJcblx0XHR3aWR0aDogMTZweDtcclxuXHRcdGhlaWdodDogMThweDtcclxuXHRcdGNvbG9yOiAkYmx1ZS16b2RpYWMtNTA7XHJcblx0fVxyXG59XHJcblxyXG4vKipcclxuICogR3Jhdml0eSBGb3Jtcy5cclxuICovXHJcblxyXG4uZ2Zvcm1fZmllbGRzIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtd3JhcDogd3JhcDtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcblxyXG5cdC5nZmllbGRfX2NvbHVtbiB7XHJcblx0XHRAaW5jbHVkZSBtZWRpYSgndGFibGV0LXBvcnRyYWl0LWRvd24nKSB7XHJcblx0XHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0fVxyXG5cclxuXHRcdGRpc3BsYXk6IGZsZXg7XHJcblx0XHRmbGV4LXdyYXA6IHdyYXA7XHJcblx0XHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcblx0XHR3aWR0aDogNjUlO1xyXG5cclxuXHRcdCYuaXMtbGVmdCB7XHJcblx0XHRcdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtcG9ydHJhaXQtZG93bicpIHtcclxuXHRcdFx0XHR3aWR0aDogMTAwJTtcclxuXHRcdFx0XHRtYXJnaW4tYm90dG9tOiAzMHB4O1xyXG5cdFx0XHR9XHJcblxyXG5cdFx0XHRhbGlnbi1jb250ZW50OiBiYXNlbGluZTtcclxuXHRcdFx0d2lkdGg6IDM1JTtcclxuXHJcblx0XHRcdHNwYW4ge1xyXG5cdFx0XHRcdEBpbmNsdWRlIGZvbnQoMjRweCwgMzJweCk7XHJcblx0XHRcdFx0Zm9udC13ZWlnaHQ6IDYwMDtcclxuXHRcdFx0XHRjb2xvcjogJGJsdWUtem9kaWFjLTUwO1xyXG5cdFx0XHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0XHR9XHJcblxyXG5cdFx0XHRzdHJvbmcge1xyXG5cdFx0XHRcdEBpbmNsdWRlIGZvbnQoMzJweCwgMzhweCk7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcbn1cclxuXHJcbiNnZm9ybV9maWVsZHNfMiB7XHJcblx0cGFkZGluZy10b3A6IDMwcHg7XHJcblx0Ym9yZGVyLXRvcDogMXB4IHNvbGlkICRibHVlLXpvZGlhYy0xMDtcclxuXHJcblx0LmdmaWVsZF9fY29sdW1uIHtcclxuXHRcdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkYmx1ZS16b2RpYWMtMTA7XHJcblx0XHRtYXJnaW4tYm90dG9tOiAzMHB4O1xyXG5cclxuXHRcdCYuaXMtbGVmdCB7XHJcblx0XHRcdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtcG9ydHJhaXQtZG93bicpIHtcclxuXHRcdFx0XHRib3JkZXI6IDA7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcbn1cclxuXHJcbiNnZm9ybV9maWVsZHNfMyB7XHJcblx0LmdmaWVsZF9fY29sdW1uIHtcclxuXHRcdG1hcmdpbi1ib3R0b206IDMwcHg7XHJcblx0XHRib3JkZXItYm90dG9tOiAxcHggc29saWQgJGJsdWUtem9kaWFjLTEwO1xyXG5cclxuXHRcdCYuaXMtbGVmdCB7XHJcblx0XHRcdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtcG9ydHJhaXQtZG93bicpIHtcclxuXHRcdFx0XHRib3JkZXI6IDA7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcbn1cclxuXHJcbi5nc2VjdGlvbl90aXRsZSB7XHJcblx0QGluY2x1ZGUgZm9udCgxNnB4LCAyNnB4KTtcclxufVxyXG5cclxuXHJcbi5nZmllbGQge1xyXG5cdEBpbmNsdWRlIG1lZGlhKCdwaG9uZScpIHtcclxuXHRcdHdpZHRoOiAxMDAlO1xyXG5cdH1cclxuXHJcblx0d2lkdGg6IGNhbGMoNTAlIC0gMTVweCk7XHJcblx0bWFyZ2luLWJvdHRvbTogMzBweDtcclxuXHJcblx0Ji5nZm9ybV9oaWRkZW4ge1xyXG5cdFx0bWFyZ2luOiAwO1xyXG5cdH1cclxuXHJcblx0Ji5pcy1zbWFsbCB7XHJcblx0XHRAaW5jbHVkZSBtZWRpYSgncGhvbmUnKSB7XHJcblx0XHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0fVxyXG5cclxuXHRcdHdpZHRoOiBjYWxjKDMzLjMzMzMlIC0gMjBweCk7XHJcblx0fVxyXG5cclxuXHQmLmlzLWZpZnR5IHtcclxuXHRcdEBpbmNsdWRlIG1lZGlhKCdwaG9uZScpIHtcclxuXHRcdFx0d2lkdGg6IDEwMCU7XHJcblx0XHR9XHJcblxyXG5cdFx0d2lkdGg6IGNhbGMoNTAlIC0gMTBweCk7XHJcblx0fVxyXG5cclxuXHQmLmlzLW1lZGl1bSB7XHJcblx0XHRAaW5jbHVkZSBtZWRpYSgncGhvbmUnKSB7XHJcblx0XHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0fVxyXG5cclxuXHRcdHdpZHRoOiBjYWxjKDY2LjY2JSAtIDEwcHgpO1xyXG5cdH1cclxuXHJcblx0Ji5pcy1mdWxsIHtcclxuXHRcdHdpZHRoOiAxMDAlO1xyXG5cdH1cclxuXHJcblx0Ji5oYXMtbWFyZ2luIHtcclxuXHRcdG1hcmdpbi1ib3R0b206IDYwcHg7XHJcblx0fVxyXG59XHJcblxyXG4uZ2ZpZWxkX2Vycm9yIHtcclxuXHRpbnB1dCB7XHJcblx0XHRib3JkZXI6IDJweCBzb2xpZCAkcmVkLTYwO1xyXG5cdH1cclxuXHJcblx0bGFiZWwge1xyXG5cdFx0Y29sb3I6ICRyZWQtNjA7XHJcblx0fVxyXG5cclxuXHQuZ2ZpZWxkX3JlcXVpcmVkIHtcclxuXHRcdGNvbG9yOiAkcmVkLTYwO1xyXG5cdH1cclxufVxyXG5cclxubGVnZW5kLmdmaWVsZF9sYWJlbCB7XHJcblx0Zm9udC13ZWlnaHQ6IDYwMDtcclxuXHRjb2xvcjogJGJsdWUtem9kaWFjLTUwO1xyXG5cdG1hcmdpbjogMCAwIDEwcHggMTVweDtcclxufVxyXG5cclxubGFiZWwuZ2ZpZWxkX2xhYmVsIHtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0bWFyZ2luLWJvdHRvbTogLTE0cHg7XHJcblx0cGFkZGluZzogMCA1cHg7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogJGdyZXktMTAwO1xyXG5cdHdpZHRoOiBmaXQtY29udGVudDtcclxuXHR6LWluZGV4OiAxMDtcclxufVxyXG5cclxuLmdmb3JtX2Zvb3RlciB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xyXG59XHJcblxyXG4uZ2Zvcm1fdmFsaWRhdGlvbl9jb250YWluZXIge1xyXG5cdGRpc3BsYXk6IG5vbmU7XHJcbn1cclxuXHJcbi5oaWRkZW5fbGFiZWwgPiBsYWJlbCB7XHJcblx0ZGlzcGxheTogbm9uZTtcclxufVxyXG5cclxuLnZhbGlkYXRpb25fbWVzc2FnZSB7XHJcblx0ZGlzcGxheTogbm9uZTtcclxufVxyXG5cclxuJXZhbGlkYXRpb25fZXJyb3IsXHJcbi52YWxpZGF0aW9uX2Vycm9yIHtcclxuXHRkaXNwbGF5OiBub25lO1xyXG59XHJcblxyXG4uZ2Zvcm1fY29uZmlybWF0aW9uX21lc3NhZ2Uge1xyXG5cdGRpc3BsYXk6IG5vbmU7XHJcbn1cclxuIiwiLyoqXHJcbiAqIEhlYWRpbmcuXHJcbiAqL1xyXG5cclxuaDEsXHJcbmgyLFxyXG5oMyxcclxuJWhlYWRpbmcge1xyXG5cdGxldHRlci1zcGFjaW5nOiAtMC4wM2VtO1xyXG5cclxuXHQmLmlzLXdoaXRlIHtcclxuXHRcdGNvbG9yOiAkd2hpdGUtMTAwO1xyXG5cdH1cclxufVxyXG5cclxuLyoqXHJcbiAqIEhlYWRpbmcgMS5cclxuICovXHJcblxyXG5oMSxcclxuLmhlYWRpbmctMSB7XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1wb3J0cmFpdC1kb3duJykge1xyXG5cdFx0QGluY2x1ZGUgZm9udCgyOXB4LCAzN3B4KTtcclxuXHR9XHJcblxyXG5cdEBpbmNsdWRlIGZvbnQoNDhweCwgNTJweCk7XHJcblx0Zm9udC13ZWlnaHQ6IDgwMDtcclxufVxyXG5cclxuLyoqXHJcbiAqIEhlYWRpbmcgMi5cclxuICovXHJcblxyXG5oMixcclxuJWhlYWRpbmctMixcclxuLmhlYWRpbmctMiB7XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1wb3J0cmFpdC1kb3duJykge1xyXG5cdFx0QGluY2x1ZGUgZm9udCgyMHB4LCAyNHB4KTtcclxuXHR9XHJcblxyXG5cdEBpbmNsdWRlIGZvbnQoMzJweCwgMzhweCk7XHJcblx0Zm9udC13ZWlnaHQ6IDcwMDtcclxufVxyXG5cclxuXHJcbi8qKlxyXG4gKiBIZWFkaW5nIDMuXHJcbiAqL1xyXG5cclxuaDMsXHJcbiVoZWFkaW5nLTMsXHJcbi5oZWFkaW5nLTMge1xyXG5cdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtcG9ydHJhaXQtZG93bicpIHtcclxuXHRcdEBpbmNsdWRlIGZvbnQoMThweCwgMjNweCk7XHJcblx0XHRmb250LXdlaWdodDogNzAwO1xyXG5cdH1cclxuXHJcblx0QGluY2x1ZGUgZm9udCgyNnB4LCAzMnB4KTtcclxuXHRmb250LXdlaWdodDogNzAwO1xyXG59XHJcbiIsIi5oYXMtbGF6eS1sb2FkIHtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0dG9wOiAtMTUwcHg7XHJcblx0dHJhbnNpdGlvbjogYWxsIDc1MG1zIGVhc2U7XHJcblx0dHJhbnNpdGlvbi1kZWxheTogNTAwbXM7XHJcblx0b3BhY2l0eTogMDtcclxuXHJcblx0Ji5oZWFkZXIge1xyXG5cdFx0dHJhbnNpdGlvbi1kZWxheTogNzUwbXM7XHJcblx0XHR0cmFuc2l0aW9uOiBhbGwgNTAwbXMgZWFzZTtcclxuXHR9XHJcbn1cclxuXHJcbi5oYXMtbGF6eS1sb2FkW2xvYWRlZD0ndHJ1ZSddIHtcclxuXHR0b3A6IDA7XHJcblx0b3BhY2l0eTogMTtcclxufVxyXG4iLCIucGFnaW5hdGlvbiB7XHJcblx0d2lkdGg6IDEwMCU7XHJcblx0cGFkZGluZy1ib3R0b206IDUwcHg7XHJcblxyXG5cdC53cmFwcGVyIHtcclxuXHRcdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cdH1cclxuXHJcblx0LnBhZ2UtbnVtYmVycyB7XHJcblx0XHRAaW5jbHVkZSBmb250KDE2cHgsIDIycHgpO1xyXG5cdFx0ZGlzcGxheTogZmxleDtcclxuXHRcdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRcdHdpZHRoOiA0M3B4O1xyXG5cdFx0aGVpZ2h0OiA0M3B4O1xyXG5cdFx0Ym9yZGVyOiAxcHggc29saWQgJGJsdWUtem9kaWFjLTEwMDtcclxuXHRcdG1hcmdpbi1yaWdodDogMTBweDtcclxuXHRcdHRyYW5zaXRpb246IGFsbCAyNTBtcyBlYXNlO1xyXG5cclxuXHRcdHN2ZyB7XHJcblx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRcdFx0dG9wOiAwO1xyXG5cdFx0XHR3aWR0aDogMTRweDtcclxuXHRcdFx0aGVpZ2h0OiAyMnB4O1xyXG5cdFx0XHR0cmFuc2l0aW9uOiBhbGwgMjUwbXMgZWFzZTtcclxuXHRcdH1cclxuXHJcblx0XHQmOmhvdmVyLFxyXG5cdFx0Ji5jdXJyZW50IHtcclxuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJGJsdWUtem9kaWFjLTEwMDtcclxuXHRcdFx0Y29sb3I6ICR3aGl0ZS0xMDA7XHJcblxyXG5cdFx0XHRzdmcge1xyXG5cdFx0XHRcdGNvbG9yOiAkd2hpdGUtMTAwO1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG59XHJcbiIsIi50aGVtZS0ta3JpbXBlbmVyd2FhcmQge1xyXG5cdGJhY2tncm91bmQtY29sb3I6ICRncmVlbi0xMDA7XHJcbn1cclxuXHJcbi50aGVtZS0tYm9kZWdyYXZlbiB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogJHllbGxvdy0xMDA7XHJcbn1cclxuXHJcbi50aGVtZS0td2FkZGlueHZlZW4ge1xyXG5cdGJhY2tncm91bmQtY29sb3I6ICRsaW1lLTEwMDtcclxufVxyXG4iLCIvKipcclxuICogV3JhcHBlciAoZGVmYXVsdClcclxuICovXHJcblxyXG4ud3JhcHBlciB7XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1wb3J0cmFpdC1kb3duJykge1xyXG5cdFx0QGluY2x1ZGUgY29udGFpbmVyKDEyNDBweCwgNjBweCk7XHJcblx0fVxyXG5cdEBpbmNsdWRlIG1lZGlhKCdwaG9uZScpIHtcclxuXHRcdEBpbmNsdWRlIGNvbnRhaW5lcigxMjQwcHgsIDIwcHgpO1xyXG5cdH1cclxuXHJcblx0QGluY2x1ZGUgY29udGFpbmVyKDEyNDBweCwgNTBweCk7XHJcbn1cclxuXHJcblxyXG4vKipcclxuICogV3JhcHBlciAobWVkaXVtKVxyXG4gKi9cclxuXHJcbi53cmFwcGVyLS1tZWRpdW0ge1xyXG5cdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtcG9ydHJhaXQtZG93bicpIHtcclxuXHRcdEBpbmNsdWRlIGNvbnRhaW5lcigxMDc0cHgsIDYwcHgpO1xyXG5cdH1cclxuXHRAaW5jbHVkZSBtZWRpYSgncGhvbmUnKSB7XHJcblx0XHRAaW5jbHVkZSBjb250YWluZXIoMTA3NHB4LCAyMHB4KTtcclxuXHR9XHJcblxyXG5cdEBpbmNsdWRlIGNvbnRhaW5lcigxMDc0cHgsIDUwcHgpO1xyXG59XHJcblxyXG5cclxuXHJcbi8qKlxyXG4gKiBXcmFwcGVyIChzbWFsbClcclxuICovXHJcblxyXG4ud3JhcHBlci0tc21hbGwge1xyXG5cdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtcG9ydHJhaXQtZG93bicpIHtcclxuXHRcdEBpbmNsdWRlIGNvbnRhaW5lcigxMDI0cHgsIDYwcHgpO1xyXG5cdH1cclxuXHRAaW5jbHVkZSBtZWRpYSgncGhvbmUnKSB7XHJcblx0XHRAaW5jbHVkZSBjb250YWluZXIoMTAyNHB4LCAyMHB4KTtcclxuXHR9XHJcblxyXG5cdEBpbmNsdWRlIGNvbnRhaW5lcigxMDI0cHgsIDUwcHgpO1xyXG59XHJcbiIsIi5hY3Rpdml0eS1jaGVja291dCB7XHJcblx0ZGlzcGxheTogbm9uZTtcclxufVxyXG4iLCIuYWN0aXZpdHktZmlsdGVycyB7XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1wb3J0cmFpdC1kb3duJykge1xyXG5cdFx0cGFkZGluZy1ib3R0b206IDQwcHg7XHJcblx0fVxyXG5cclxuXHRwYWRkaW5nLWJvdHRvbTogNjBweDtcclxufVxyXG5cclxuLmFjdGl2aXR5LWZpbHRlcnNfX2hlYWQge1xyXG5cdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdG1hcmdpbi1ib3R0b206IDUwcHg7XHJcbn1cclxuXHJcbi5hY3Rpdml0eS1maWx0ZXJzX190b2dnbGUtaGVhZCB7XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1wb3J0cmFpdC1kb3duJykge1xyXG5cdFx0ZGlzcGxheTogZmxleDtcclxuXHR9XHJcblxyXG5cdGRpc3BsYXk6IG5vbmU7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcblx0bWFyZ2luLWJvdHRvbTogMjBweDtcclxuXHRjb2xvcjogJGJsdWUtMTAwO1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHJcblx0c3BhbiB7XHJcblx0XHRkaXNwbGF5OiBmbGV4O1xyXG5cdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHJcblx0XHRzdmcge1xyXG5cdFx0XHR3aWR0aDogMTRweDtcclxuXHRcdFx0aGVpZ2h0OiAxOHB4O1xyXG5cdFx0XHRtYXJnaW4tcmlnaHQ6IDEwcHg7XHJcblx0XHRcdGNvbG9yOiAkYmx1ZS0xMDA7XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHQ+IHN2ZyB7XHJcblx0XHR3aWR0aDogOXB4O1xyXG5cdFx0aGVpZ2h0OiAxOHB4O1xyXG5cdFx0Y29sb3I6ICRibHVlLTEwMDtcclxuXHRcdHRyYW5zaXRpb246IGFsbCA1MDBtcyBlYXNlO1xyXG5cdH1cclxuXHJcblx0Ji5pcy1hY3RpdmUge1xyXG5cdFx0PiBzdmcge1xyXG5cdFx0XHR0cmFuc2Zvcm06IHJvdGF0ZSgtMTgwZGVnKTtcclxuXHRcdH1cclxuXHR9XHJcbn1cclxuXHJcbi5hY3Rpdml0eS1maWx0ZXJzX19zZWxlY3RzIHtcclxuXHRAaW5jbHVkZSBtZWRpYSgndGFibGV0LXBvcnRyYWl0LWRvd24nKSB7XHJcblx0XHRkaXNwbGF5OiBub25lO1xyXG5cdFx0cGFkZGluZy10b3A6IDIwcHg7XHJcblx0fVxyXG5cclxuXHRnYXA6IDAgMzJweDtcclxuXHRwYWRkaW5nLWJvdHRvbTogMjBweDtcclxufVxyXG5cclxuLmFjdGl2aXR5LWZpbHRlcnNfX3NlbGVjdCB7XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1sYW5kc2NhcGUtZG93bicpIHtcclxuXHRcdHdpZHRoOiBjYWxjKDI1JSAtIDE1cHgpO1xyXG5cdH1cclxuXHRAaW5jbHVkZSBtZWRpYSgndGFibGV0LXBvcnRyYWl0LWRvd24nKSB7XHJcblx0XHR3aWR0aDogMTAwJTtcclxuXHRcdG1hcmdpbi1ib3R0b206IDMwcHg7XHJcblx0fVxyXG5cclxuXHR3aWR0aDogY2FsYygyNSUgLSAyNHB4KTtcclxuXHRoZWlnaHQ6IDQ2cHg7XHJcblx0cGFkZGluZzogNnB4O1xyXG5cdGJvcmRlci1yYWRpdXM6IDJweDtcclxuXHRib3gtc2hhZG93OiAwcHggMnB4IDEycHggJGJsdWUtZGFyay0xMDtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGUtMTAwO1xyXG5cdG1hcmdpbi1ib3R0b206IDIwcHg7XHJcblxyXG5cdD4gc3BhbiB7XHJcblx0XHRkaXNwbGF5OiBmbGV4O1xyXG5cdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRcdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cdFx0d2lkdGg6IDQwcHg7XHJcblx0XHRoZWlnaHQ6IDEwMCU7XHJcblxyXG5cdFx0PiBzdmcge1xyXG5cdFx0XHR3aWR0aDogMjJweDtcclxuXHRcdFx0aGVpZ2h0OiBhdXRvO1xyXG5cdFx0XHRjb2xvcjogJGJsdWUtem9kaWFjLTEwMDtcclxuXHJcblx0XHRcdHBhdGgge1xyXG5cdFx0XHRcdGZpbGw6ICRibHVlLXpvZGlhYy0xMDA7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcbn1cclxuXHJcbi5hY3Rpdml0eS1maWx0ZXJzX19zZWxlY3Qtd3JhcCB7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdHdpZHRoOiBjYWxjKDEwMCUgLSAzMHB4KTtcclxuXHRib3JkZXItbGVmdDogMXB4IHNvbGlkICRibHVlLXpvZGlhYy0xMDtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG5cclxuXHRzdmcge1xyXG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0dG9wOiAxMXB4O1xyXG5cdFx0cmlnaHQ6IDdweDtcclxuXHRcdHdpZHRoOiAxMHB4O1xyXG5cdFx0aGVpZ2h0OiAxOHB4O1xyXG5cdFx0Y29sb3I6ICRibHVlLXpvZGlhYy0xMDA7XHJcblx0XHR6LWluZGV4OiAyO1xyXG5cdH1cclxuXHJcblx0c2VsZWN0IHtcclxuXHRcdEBpbmNsdWRlIGZvbnQoMTRweCwgMjhweCk7XHJcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0XHR3aWR0aDogY2FsYygxMDAlICsgNTBweCk7XHJcblx0XHRtYXgtd2lkdGg6IG5vbmU7XHJcblx0XHRoZWlnaHQ6IDEwMCU7XHJcblx0XHRtYXJnaW46IC0ycHg7XHJcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuXHRcdGJvcmRlcjogMDtcclxuXHRcdHotaW5kZXg6IDM7XHJcblx0XHRjb2xvcjogJGJsdWUtem9kaWFjLTQwO1xyXG5cdFx0Zm9udC13ZWlnaHQ6IDYwMDtcclxuXHRcdHBhZGRpbmc6IDhweCAxMnB4IDAgMTJweDtcclxuXHR9XHJcbn1cclxuXHJcbi5hY3Rpdml0eS1maWx0ZXJzX19ib3JkZXIge1xyXG5cdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkYmx1ZS16b2RpYWMtMTA7XHJcbn0iLCIuYWN0aXZpdHktaXRlbSB7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdGhlaWdodDogZml0LWNvbnRlbnQ7XHJcblxyXG5cdCY6aG92ZXIge1xyXG5cdFx0c3ZnIHtcclxuXHRcdFx0bWFyZ2luOiAwIC01cHggMCA1cHg7XHJcblx0XHR9XHJcblxyXG5cdFx0Lm5ld3MtaXRlbV9fYm9keTpiZWZvcmUge1xyXG5cdFx0XHRib3gtc2hhZG93OiAwcHggMnB4IDEycHggJGJsdWUtZGFyay0yMDtcclxuXHRcdH1cclxuXHR9XHJcbn1cclxuXHJcbi5hY3Rpdml0eS1pdGVtX19pbWFnZSB7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdHdpZHRoOiAxMDAlO1xyXG5cdGhlaWdodDogMjE1cHg7XHJcblx0Ym9yZGVyLXJhZGl1czogMnB4O1xyXG5cdG92ZXJmbG93OiBoaWRkZW47XHJcblxyXG5cdCY6YmVmb3JlIHtcclxuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdHRvcDogMDtcclxuXHRcdGxlZnQ6IDA7XHJcblx0XHR3aWR0aDogMTAwJTtcclxuXHRcdGhlaWdodDogNzBweDtcclxuXHRcdGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxODBkZWcsICRibHVlLXpvZGlhYy00MCAtNzguMjYlLCAkYmx1ZS16b2RpYWMtMCAxMDAlKTtcclxuXHRcdHotaW5kZXg6IDU7XHJcblx0XHRjb250ZW50OiAnJztcclxuXHR9XHJcbn1cclxuXHJcbi5hY3Rpdml0eS1pdGVtX19zY2hvb2x5ZWFyIHtcclxuXHRAaW5jbHVkZSBmb250KDEycHgsIDE0cHgpXHJcblx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdHRvcDogMTBweDtcclxuXHRyaWdodDogMTBweDtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGUtMzA7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgJHdoaXRlLTEwMDtcclxuXHRjb2xvcjogJHdoaXRlLTEwMDtcclxuXHRwYWRkaW5nOiA1cHggMTBweDtcclxuXHRib3JkZXItcmFkaXVzOiAycHg7XHJcblx0ei1pbmRleDogMTA7XHJcbn1cclxuXHJcbi5hY3Rpdml0eS1pdGVtX190aXRsZSB7XHJcblx0QGluY2x1ZGUgZm9udCgxOHB4LCAyOHB4KTtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHR3aWR0aDogMTAwJTtcclxuXHRtYXgtd2lkdGg6IDI5MHB4O1xyXG5cdG1hcmdpbi10b3A6IC01MHB4O1xyXG5cdGJhY2tncm91bmQtY29sb3I6ICRncmVlbi0xMDA7XHJcblx0Y29sb3I6ICR3aGl0ZS0xMDA7XHJcblx0cGFkZGluZzogNXB4IDA7XHJcblx0Zm9udC13ZWlnaHQ6IDYwMDtcclxuXHRmbG9hdDogcmlnaHQ7XHJcblxyXG5cdHNwYW4ge1xyXG5cdFx0d2lkdGg6IGNhbGMoMTAwJSAtIDUwcHgpO1xyXG5cdFx0Ym9yZGVyLXJpZ2h0OiAxcHggc29saWQgJHdoaXRlLTUwO1xyXG5cdFx0cGFkZGluZzogMCAxNXB4O1xyXG5cdH1cclxuXHJcblx0c3ZnIHtcclxuXHRcdGRpc3BsYXk6IGZsZXg7XHJcblx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdFx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblx0XHR3aWR0aDogNTBweDtcclxuXHRcdGhlaWdodDogMTAwJTtcclxuXHRcdHBhZGRpbmc6IDE5cHg7XHJcblx0XHR0cmFuc2l0aW9uOiBhbGwgMjUwbXMgZWFzZTtcclxuXHR9XHJcblxyXG5cdCYudGhlbWUtLXdhZGRpbnh2ZWVuIHtcclxuXHRcdGJhY2tncm91bmQtY29sb3I6ICRsaW1lLTEwMDtcclxuXHRcdGNvbG9yOiAkYmx1ZS16b2RpYWMtMTAwO1xyXG5cclxuXHRcdHNwYW4ge1xyXG5cdFx0XHRib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAkYmx1ZS16b2RpYWMtNTA7XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHQmLnRoZW1lLS1ib2RlZ3JhdmVuIHtcclxuXHRcdGJhY2tncm91bmQtY29sb3I6ICR5ZWxsb3ctMTAwO1xyXG5cdFx0Y29sb3I6ICRibHVlLXpvZGlhYy0xMDA7XHJcblxyXG5cdFx0c3BhbiB7XHJcblx0XHRcdGJvcmRlci1yaWdodDogMXB4IHNvbGlkICRibHVlLXpvZGlhYy01MDtcclxuXHRcdH1cclxuXHR9XHJcbn1cclxuXHJcbi5hY3Rpdml0eS1pdGVtX19ib2R5IHtcclxuXHR3aWR0aDogY2FsYygxMDAlIC0gMzBweCk7XHJcblx0b3ZlcmZsb3c6IGhpZGRlbjtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGUtMTAwO1xyXG5cdHBhZGRpbmc6IDE1cHggMTVweCAxMHB4IDE1cHg7XHJcblxyXG5cdCY6YmVmb3JlIHtcclxuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdHRvcDogMDtcclxuXHRcdGxlZnQ6IDA7XHJcblx0XHR3aWR0aDogY2FsYygxMDAlIC0gMzBweCk7XHJcblx0XHRoZWlnaHQ6IDEwMCU7XHJcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGUtMTAwO1xyXG5cdFx0Ym94LXNoYWRvdzogMHB4IDJweCAxMnB4ICRibHVlLWRhcmstMTA7XHJcblx0XHRjb250ZW50OiAnJztcclxuXHRcdHotaW5kZXg6IC0xO1xyXG5cdFx0dHJhbnNpdGlvbjogYWxsIDI1MG1zIGVhc2U7XHJcblx0fVxyXG59XHJcblxyXG4uYWN0aXZpdHktaXRlbV9fdGVhc2VyIHtcclxuXHRAaW5jbHVkZSBmb250KDE2cHgsIDIycHgpO1xyXG59XHJcblxyXG4uYWN0aXZpdHktaXRlbV9fZ3JvdXAge1xyXG5cdEBpbmNsdWRlIGZvbnQoMTJweCwgMTRweCk7XHJcblx0d2lkdGg6IGZpdC1jb250ZW50O1xyXG5cdG1hcmdpbi10b3A6IDEwcHg7XHJcblx0cGFkZGluZzogNXB4IDEwcHg7XHJcblx0Zm9udC13ZWlnaHQ6IDYwMDtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkYmx1ZS16b2RpYWMtMTAwO1xyXG5cdGNvbG9yOiAkd2hpdGUtMTAwO1xyXG5cdGJvcmRlci1yYWRpdXM6IDJweDtcclxuXHRtYXJnaW4tcmlnaHQ6IDVweDtcclxuXHJcblx0JjpsYXN0LW9mLXR5cGUge1xyXG5cdFx0bWFyZ2luLXJpZ2h0OiAwO1xyXG5cdH1cclxufVxyXG4iLCIuYWN0aXZpdHktbGlzdCB7XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1wb3J0cmFpdC1kb3duJykge1xyXG5cdFx0cGFkZGluZy1ib3R0b206IDQwcHg7XHJcblx0fVxyXG5cclxuXHRwYWRkaW5nLWJvdHRvbTogNjBweDtcclxufVxyXG5cclxuLmFjdGl2aXR5LWxpc3RfX3dyYXAge1xyXG5cdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtbGFuZHNjYXBlLWRvd24nKSB7XHJcblx0XHR3aWR0aDogY2FsYygxMDAlICsgMjBweCk7XHJcblx0XHRtYXJnaW46IC0xMHB4O1xyXG5cdH1cclxuXHRAaW5jbHVkZSBtZWRpYSgncGhvbmUnKSB7XHJcblx0XHR3aWR0aDogMTAwJTtcclxuXHRcdG1hcmdpbjogLTEwcHggMDtcclxuXHR9XHJcblxyXG5cdHdpZHRoOiBjYWxjKDEwMCUgKyAzMHB4KTtcclxuXHRtYXJnaW46IC0xNXB4O1xyXG5cclxuXHQuYWN0aXZpdHktaXRlbSB7XHJcblx0XHRAaW5jbHVkZSBtZWRpYSgndGFibGV0LWxhbmRzY2FwZS1kb3duJykge1xyXG5cdFx0XHR3aWR0aDogY2FsYygzMy4zMzMzJSAtIDIwcHgpO1xyXG5cdFx0XHRtYXJnaW46IDEwcHg7XHJcblx0XHR9XHJcblx0XHRAaW5jbHVkZSBtZWRpYSgndGFibGV0LXBvcnRyYWl0LWRvd24nKSB7XHJcblx0XHRcdHdpZHRoOiBjYWxjKDUwJSAtIDIwcHgpO1xyXG5cdFx0fVxyXG5cdFx0QGluY2x1ZGUgbWVkaWEoJ3Bob25lJykge1xyXG5cdFx0XHR3aWR0aDogMTAwJTtcclxuXHRcdFx0bWFyZ2luOiAxMHB4IDA7XHJcblx0XHR9XHJcblxyXG5cdFx0d2lkdGg6IGNhbGMoMzMuMzMzMyUgLSAzMHB4KTtcclxuXHRcdG1hcmdpbjogMTVweDtcclxuXHR9XHJcbn1cclxuXHJcbi5hY3Rpdml0eS1saXN0X19uby1yZXN1bHRzIHtcclxuXHR3aWR0aDogMTAwJTtcclxuXHRwYWRkaW5nLWJvdHRvbTogNTBweDtcclxuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblx0Zm9udC13ZWlnaHQ6IDcwMDtcclxufSIsIi5hY3Rpdml0eS1zaW5nbGUge1xyXG5cdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtcG9ydHJhaXQtZG93bicpIHtcclxuXHRcdHBhZGRpbmctYm90dG9tOiA0MHB4O1xyXG5cdH1cclxuXHJcblx0cGFkZGluZy1ib3R0b206IDYwcHg7XHJcbn1cclxuXHJcbi5hY3Rpdml0eS1zaW5nbGVfX2ltYWdlIHtcclxuXHRAaW5jbHVkZSBtZWRpYSgndGFibGV0LXBvcnRyYWl0LWRvd24nKSB7XHJcblx0XHRoZWlnaHQ6IDM2MHB4O1xyXG5cdH1cclxuXHRAaW5jbHVkZSBtZWRpYSgncGhvbmUnKSB7XHJcblx0XHRoZWlnaHQ6IDI1MHB4O1xyXG5cdH1cclxuXHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdHdpZHRoOiAxMDAlO1xyXG5cdGhlaWdodDogNjIwcHg7XHJcbn1cclxuXHJcbi5hY3Rpdml0eS1zaW5nbGVfX2xvZ28ge1xyXG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblx0dG9wOiAyMHB4O1xyXG5cdHJpZ2h0OiAyMHB4O1xyXG5cdGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZS0xMDA7XHJcblx0d2lkdGg6IDY5cHg7XHJcblx0aGVpZ2h0OiA2OXB4O1xyXG5cdGJvcmRlci1yYWRpdXM6IDZweDtcclxuXHR6LWluZGV4OiAxMDtcclxuXHJcblx0aW1nIHtcclxuXHRcdHdpZHRoOiBhdXRvO1xyXG5cdFx0bWF4LXdpZHRoOiA2MHB4O1xyXG5cdFx0aGVpZ2h0OiBhdXRvO1xyXG5cdFx0bWF4LWhlaWdodDogNjBweDtcclxuXHR9XHJcbn1cclxuXHJcbi5hY3Rpdml0eS1zaW5nbGVfX2JvZHkge1xyXG5cdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtcG9ydHJhaXQtZG93bicpIHtcclxuXHRcdHBhZGRpbmctdG9wOiA0MHB4O1xyXG5cdH1cclxuXHJcblx0d2lkdGg6IGNhbGMoMTAwJSAtIDIwcHgpO1xyXG5cdG1heC13aWR0aDogMTAyNHB4O1xyXG5cdG1hcmdpbjogMCBhdXRvO1xyXG5cdHBhZGRpbmctdG9wOiA2MHB4O1xyXG59XHJcblxyXG4uYWN0aXZpdHktc2luZ2xlX190aXRsZSB7XHJcblx0bWFyZ2luLWJvdHRvbTogNDBweDtcclxufVxyXG5cclxuLmFjdGl2aXR5LXNpbmdsZV9faW5mb3JtYXRpb24ge1xyXG5cdEBpbmNsdWRlIG1lZGlhKCdwaG9uZScpIHtcclxuXHRcdHBhZGRpbmctYm90dG9tOiAwO1xyXG5cdH1cclxuXHJcblx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG5cdG1hcmdpbi1ib3R0b206IDQwcHg7XHJcblx0cGFkZGluZy1ib3R0b206IDIwcHg7XHJcblx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRibHVlLXpvZGlhYy0xMDtcclxuXHJcblx0PiBkaXYge1xyXG5cdFx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1wb3J0cmFpdC1kb3duJykge1xyXG5cdFx0XHR3aWR0aDogMTAwJTtcclxuXHRcdFx0bWFyZ2luLWJvdHRvbTogNDBweDtcclxuXHRcdH1cclxuXHJcblx0XHR3aWR0aDogY2FsYyg1MCUgLSAyNXB4KTtcclxuXHR9XHJcbn1cclxuXHJcbi5hY3Rpdml0eS1zaW5nbGVfX2l0ZW0ge1xyXG5cdG1hcmdpbi1ib3R0b206IDIwcHg7XHJcblxyXG5cdGxhYmVsIHtcclxuXHRcdEBpbmNsdWRlIG1lZGlhKCdwaG9uZScpIHtcclxuXHRcdFx0QGluY2x1ZGUgZm9udCgxNnB4LCAyMnB4KTtcclxuXHRcdH1cclxuXHJcblx0XHRAaW5jbHVkZSBmb250KDIycHgsIDI4cHgpO1xyXG5cdFx0bWluLXdpZHRoOiBmaXQtY29udGVudDtcclxuXHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0XHRjb2xvcjogJGJsdWUtem9kaWFjLTUwO1xyXG5cdFx0bWFyZ2luOiAwO1xyXG5cclxuXHRcdHNwYW4ge1xyXG5cdFx0XHQmLmlzLXN2ZyB7XHJcblx0XHRcdFx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblx0XHRcdFx0d2lkdGg6IDI4cHg7XHJcblx0XHRcdFx0bWFyZ2luLXJpZ2h0OiAxNXB4O1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHRzdmcge1xyXG5cdFx0d2lkdGg6IGF1dG87XHJcblx0XHRoZWlnaHQ6IDIycHg7XHJcblx0XHRjb2xvcjogJGJsdWUtem9kaWFjLTUwO1xyXG5cdH1cclxuXHJcblx0PiBzcGFuIHtcclxuXHRcdEBpbmNsdWRlIG1lZGlhKCdwaG9uZScpIHtcclxuXHRcdFx0QGluY2x1ZGUgZm9udCgxNnB4LCAyMnB4KTtcclxuXHRcdH1cclxuXHJcblx0XHRAaW5jbHVkZSBmb250KDIycHgsIDI4cHgpO1xyXG5cdFx0Zm9udC13ZWlnaHQ6IDYwMDtcclxuXHJcblx0XHQuaXMtcmVndWxhciB7XHJcblx0XHRcdGZvbnQtd2VpZ2h0OiA0MDA7XHJcblx0XHR9XHJcblx0fVxyXG59XHJcblxyXG4uYWN0aXZpdHktc2luZ2xlX19pdGVtLS1kZWZhdWx0IHtcclxuXHRsYWJlbCB7XHJcblx0XHRAaW5jbHVkZSBtZWRpYSgncGhvbmUnKSB7XHJcblx0XHRcdHdpZHRoOiAxNDBweDtcclxuXHRcdH1cclxuXHJcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0XHR3aWR0aDogMTYwcHg7XHJcblx0XHRtYXJnaW4tcmlnaHQ6IDEzcHg7XHJcblxyXG5cdFx0JjphZnRlciB7XHJcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdFx0dG9wOiBjYWxjKDUwJSAtIDEycHgpO1xyXG5cdFx0XHRyaWdodDogLTJweDtcclxuXHRcdFx0d2lkdGg6IDJweDtcclxuXHRcdFx0aGVpZ2h0OiAyNHB4O1xyXG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkYmx1ZS16b2RpYWMtMTA7XHJcblx0XHRcdGNvbnRlbnQ6ICcnO1xyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0PiBzcGFuIHtcclxuXHRcdEBpbmNsdWRlIG1lZGlhKCdwaG9uZScpIHtcclxuXHRcdFx0d2lkdGg6IGNhbGMoMTAwJSAtIDE1M3B4KTtcclxuXHRcdH1cclxuXHJcblx0XHR3aWR0aDogY2FsYygxMDAlIC0gMTczcHgpO1xyXG5cdH1cclxuXHJcblx0LmlzLXRlcm0ge1xyXG5cdFx0bWFyZ2luLXJpZ2h0OiAxMHB4O1xyXG5cclxuXHRcdCY6bGFzdC1vZi10eXBlIHtcclxuXHRcdFx0bWFyZ2luLXJpZ2h0OiAwO1xyXG5cdFx0fVxyXG5cdH1cclxufVxyXG5cclxuLmFjdGl2aXR5LXNpbmdsZV9faXRlbS0tbWFya2VkIHtcclxuXHJcblx0PiBzcGFuIHtcclxuXHRcdGRpc3BsYXk6IGZsZXg7XHJcblx0XHRmbGV4LXdyYXA6IHdyYXA7XHJcblx0XHRtYXJnaW4tYm90dG9tOiAtMTJweDtcclxuXHR9XHJcblxyXG5cdC5pcy10ZXJtIHtcclxuXHRcdGJvcmRlci1yYWRpdXM6IDZweDtcclxuXHRcdHBhZGRpbmc6IDRweCAxMHB4O1xyXG5cdFx0bWFyZ2luOiAwIDAgMTJweCAxMnB4O1xyXG5cdH1cclxuXHJcblx0Ji5pcy1hdG9sbCB7XHJcblx0XHQuaXMtdGVybSB7XHJcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRhdG9sbC0yMDtcclxuXHRcdFx0Y29sb3I6ICRhdG9sbC0xMDA7XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHQmLmlzLXZpb2xldCB7XHJcblx0XHQuaXMtdGVybSB7XHJcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICR2aW9sZXQtMjA7XHJcblx0XHRcdGNvbG9yOiAkdmlvbGV0LTEwMDtcclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdCYuaXMtb3JhbmdlIHtcclxuXHRcdC5pcy10ZXJtIHtcclxuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJG9yYW5nZS0yMDtcclxuXHRcdFx0Y29sb3I6ICRvcmFuZ2UtMTAwO1xyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0Ji5pcy1ibHVlIHtcclxuXHRcdC5pcy10ZXJtIHtcclxuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJGJsdWUtMjA7XHJcblx0XHRcdGNvbG9yOiAkYmx1ZS0xMDA7XHJcblx0XHR9XHJcblx0fVxyXG59XHJcblxyXG4uYWN0aXZpdHktc2luZ2xlX19mb290ZXIge1xyXG5cdEBpbmNsdWRlIG1lZGlhKCdwaG9uZScpIHtcclxuXHRcdGZsZXgtd3JhcDogd3JhcDtcclxuXHRcdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTtcclxuXHR9XHJcblxyXG5cdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdHdpZHRoOiAxMDAlO1xyXG5cdG1heC13aWR0aDogMTAyNHB4O1xyXG5cdG1hcmdpbjogNDBweCBhdXRvIDAgYXV0bztcclxuXHRtYXJnaW4tdG9wOiA0MHB4O1xyXG5cdHBhZGRpbmctdG9wOiA0MHB4O1xyXG5cdGJvcmRlci10b3A6IDFweCBzb2xpZCAkYmx1ZS16b2RpYWMtMTA7XHJcbn1cclxuXHJcbi5hY3Rpdml0eS1zaW5nbGVfX2JhY2sge1xyXG5cdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtcG9ydHJhaXQtZG93bicpIHtcclxuXHRcdG1hcmdpbjogNDBweCBhdXRvIDAgYXV0bztcclxuXHR9XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3Bob25lJykge1xyXG5cdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRtYXJnaW4tdG9wOiAyMHB4O1xyXG5cdH1cclxuXHJcblx0ZGlzcGxheTogZmxleDtcclxuXHR0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcclxuXHJcblx0c3ZnIHtcclxuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRcdHRvcDogMnB4O1xyXG5cdFx0d2lkdGg6IDE0cHg7XHJcblx0XHRoZWlnaHQ6IDIycHg7XHJcblx0XHRtYXJnaW4tcmlnaHQ6IDEwcHg7XHJcblx0XHRjb2xvcjogJGJsdWUtem9kaWFjLTEwMDtcclxuXHRcdHRyYW5zaXRpb246IGFsbCAyNTBtcyBlYXNlO1xyXG5cdH1cclxuXHJcblx0Jjpob3ZlciB7XHJcblx0XHRzdmcge1xyXG5cdFx0XHRtYXJnaW4tbGVmdDogLTVweDtcclxuXHRcdFx0bWFyZ2luLXJpZ2h0OiAxNXB4O1xyXG5cdFx0fVxyXG5cdH1cclxufVxyXG5cclxuLmFjdGl2aXR5LXNpbmdsZV9fYnV0dG9uIHtcclxuXHRAaW5jbHVkZSBtZWRpYSgncGhvbmUnKSB7XHJcblx0XHR3aWR0aDogMTAwJTtcclxuXHR9XHJcblxyXG5cdC5pcy1pY29uIHtcclxuXHRcdGRpc3BsYXk6IGZsZXg7XHJcblx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdFx0bWFyZ2luLWxlZnQ6IDMwcHg7XHJcblxyXG5cdFx0c3ZnIHtcclxuXHRcdFx0bWFyZ2luLWxlZnQ6IDVweDtcclxuXHRcdH1cclxuXHR9XHJcbn1cclxuXHJcbi5hY3Rpdml0eS1zaW5nbGVfX2NvbW1lbnRzLXRpdGxlIHtcclxuXHRAaW5jbHVkZSBtZWRpYSgncGhvbmUnKSB7XHJcblx0XHRAaW5jbHVkZSBmb250KDE2cHgsIDIycHgpO1xyXG5cdH1cclxuXHJcblx0QGluY2x1ZGUgZm9udCgyMnB4LCAyOHB4KTtcclxuXHRtaW4td2lkdGg6IGZpdC1jb250ZW50O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0Y29sb3I6ICRibHVlLXpvZGlhYy01MDtcclxuXHRtYXJnaW46IDIwcHggMCA1cHggMDtcclxufVxyXG5cclxuLmFjdGl2aXR5LXNpbmdsZV9fY29tbWVudHMtdGV4dCB7XHJcblx0ZGlzcGxheTogYmxvY2s7XHJcblx0bWFyZ2luLWJvdHRvbTogMTBweDtcclxufSIsIi5jYXJ0LWl0ZW0ge1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRwYWRkaW5nOiAyMHB4IDAgNDBweCAwO1xyXG5cdGJvcmRlci10b3A6IDFweCBzb2xpZCAkYmx1ZS16b2RpYWMtMTA7XHJcbn1cclxuXHJcbi5jYXJ0LWl0ZW1fX2RlbGV0ZSB7XHJcblx0QGluY2x1ZGUgZm9udCgxNHB4LCAyMnB4KTtcclxuXHR0b3A6IDIwcHg7XHJcblx0cmlnaHQ6IDA7XHJcblx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdGNvbG9yOiAkcmVkLTEwMDtcclxufVxyXG5cclxuLmNhcnQtaXRlbV9fdGl0bGUge1xyXG5cdEBpbmNsdWRlIG1lZGlhKCdwaG9uZScpIHtcclxuXHRcdHBhZGRpbmctdG9wOiAyMHB4O1xyXG5cdH1cclxuXHJcblx0QGluY2x1ZGUgZm9udCg0OHB4LCA1MnB4KTtcclxuXHRtYXJnaW4tYm90dG9tOiAzMHB4O1xyXG5cdGZvbnQtd2VpZ2h0OiA3MDA7XHJcbn1cclxuXHJcbi5jYXJ0LWl0ZW1fX2NvbHVtbnMge1xyXG5cdFxyXG59XHJcblxyXG4uY2FydC1pdGVtX19pbWFnZSB7XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3Bob25lJykge1xyXG5cdFx0bWF4LXdpZHRoOiAxMDAlO1xyXG5cdFx0aGVpZ2h0OiAxNTBweDtcclxuXHRcdG1hcmdpbi1ib3R0b206IDMwcHg7XHJcblx0fVxyXG5cclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0d2lkdGg6IDEwMCU7XHJcblx0bWF4LXdpZHRoOiAxODBweDtcclxuXHRtYXJnaW4tcmlnaHQ6IDMwcHg7XHJcblxyXG5cdGltZyB7XHJcblx0XHRib3JkZXItcmFkaXVzOiA0cHg7XHJcblx0fVxyXG59XHJcblxyXG4uY2FydC1pdGVtX19pbnB1dC13cmFwIHtcclxuXHRAaW5jbHVkZSBtZWRpYSgndGFibGV0LWxhbmRzY2FwZScpIHtcclxuXHRcdHdpZHRoOiAyMDBweDtcclxuXHR9XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1wb3J0cmFpdC1kb3duJykge1xyXG5cdFx0d2lkdGg6IDEwMCU7XHJcblx0fVxyXG5cclxuXHR3aWR0aDogNDAwcHg7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBEZXRhaWxzLlxyXG4gKi9cclxuXHJcbi5jYXJ0LWl0ZW1fX2RldGFpbHMge1xyXG5cdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtbGFuZHNjYXBlJykge1xyXG5cdFx0d2lkdGg6IGNhbGMoMTAwJSAtIDQxMHB4KTtcclxuXHR9XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1wb3J0cmFpdC1kb3duJykge1xyXG5cdFx0d2lkdGg6IGNhbGMoMTAwJSAtIDIxMHB4KTtcclxuXHR9XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3Bob25lJykge1xyXG5cdFx0d2lkdGg6IDEwMCU7XHJcblx0fVxyXG5cclxuXHR3aWR0aDogY2FsYygxMDAlIC0gNjEwcHgpO1xyXG5cclxuXHQuYWN0aXZpdHktc2luZ2xlX19pdGVtIHtcclxuXHRcdG1hcmdpbi1ib3R0b206IDEwcHg7XHJcblx0fVxyXG5cclxuXHQuYWN0aXZpdHktc2luZ2xlX19pdGVtIGxhYmVsIHNwYW4uaXMtc3ZnIHtcclxuXHRcdHdpZHRoOiAyMHB4O1xyXG5cdFx0bWFyZ2luLXJpZ2h0OiAxMHB4O1xyXG5cdH1cclxuXHJcblx0LmFjdGl2aXR5LXNpbmdsZV9faXRlbSA+IHNwYW4sXHJcblx0LmFjdGl2aXR5LXNpbmdsZV9faXRlbSBsYWJlbCB7XHJcblx0XHRAaW5jbHVkZSBmb250KDE2cHgsIDI4cHgpO1xyXG5cdH1cclxuXHJcblx0LmFjdGl2aXR5LXNpbmdsZV9faXRlbS0tZGVmYXVsdCBsYWJlbCB7XHJcblx0XHR3aWR0aDogMTIwcHg7XHJcblx0fVxyXG59XHJcblxyXG4uY2FydC1pdGVtX19jb21tZW50IHtcclxuXHRAaW5jbHVkZSBtZWRpYSgncGhvbmUnKSB7XHJcblx0XHRtYXJnaW4tbGVmdDogMjBweDtcclxuXHR9XHJcblx0d2lkdGg6IDEwMCU7XHJcblx0bWFyZ2luLXRvcDogMjBweDtcclxufVxyXG5cclxuLmNhcnQtaXRlbV9fY29tbWVudC1sYWJlbCB7XHJcblx0d2lkdGg6IDEwMCU7XHJcblx0bWFyZ2luLWJvdHRvbTogMjBweDtcclxuXHRmb250LXNpemU6IDE0cHg7XHJcbiAgICBsaW5lLWhlaWdodDogMTIwJTtcclxuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XHJcbiAgICBmb250LXdlaWdodDogNzAwO1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblxyXG5cdHN2ZyB7XHJcblx0XHR3aWR0aDogMTZweDtcclxuXHRcdGhlaWdodDogMTZweDtcclxuXHRcdG1hcmdpbi1sZWZ0OiA1cHg7XHJcblx0XHR0cmFuc2l0aW9uOiBhbGwgMzAwbXMgZWFzZS1pbi1vdXQ7XHJcblx0fVxyXG5cclxuXHQmLmlzLWFjdGl2ZSB7XHJcblx0XHRzdmcge1xyXG5cdFx0XHR0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xyXG5cdFx0fVxyXG5cdH1cclxufVxyXG5cclxuLmNhcnQtaXRlbV9fY29tbWVudC13cmFwIHtcclxuXHRkaXNwbGF5OiBub25lO1xyXG5cdHdpZHRoOiAxMDAlO1xyXG5cclxuXHR0ZXh0YXJlYSB7XHJcblx0XHR3aWR0aDogMTAwJTtcclxuXHR9XHJcbn1cclxuXHJcblxyXG4vKipcclxuICogUGVyaW9kLlxyXG4gKi9cclxuXHJcbi5jYXJ0LWl0ZW1fX3BlcmlvZCB7XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1sYW5kc2NhcGUnKSB7XHJcblx0XHR3aWR0aDogMTAwJTtcclxuXHRcdHBhZGRpbmc6IDAgMCAzMHB4IDE1cHg7XHJcblx0fVxyXG5cdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtcG9ydHJhaXQtZG93bicpIHtcclxuXHRcdGJvcmRlcjogMDtcclxuXHRcdG1hcmdpbi10b3A6IDMwcHg7XHJcblx0XHRwYWRkaW5nOiAwIDE1cHggMCAwO1xyXG5cdH1cclxuXHRAaW5jbHVkZSBtZWRpYSgncGhvbmUnKSB7XHJcblx0XHRwYWRkaW5nOiAwIDAgMzBweCAxNXB4O1xyXG5cdH1cclxuXHJcblx0d2lkdGg6IDIyMHB4O1xyXG5cdHBhZGRpbmc6IDAgMTVweDtcclxuXHRib3JkZXItbGVmdDogMXB4IHNvbGlkICRibHVlLXpvZGlhYy0xMDtcclxufVxyXG5cclxuLmNhcnQtaXRlbV9fcGVyaW9kLWxhYmVsIHtcclxuXHRAaW5jbHVkZSBtZWRpYSgndGFibGV0LWxhbmRzY2FwZScpIHtcclxuXHRcdG1hcmdpbi1ib3R0b206IDEwcHg7XHJcblx0fVxyXG5cdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtcG9ydHJhaXQtZG93bicpIHtcclxuXHRcdG1hcmdpbi1ib3R0b206IDEwcHg7XHJcblx0fVxyXG5cclxuXHRAaW5jbHVkZSBmb250KDIycHgsIDI4cHgpO1xyXG5cdG1hcmdpbi1ib3R0b206IDMwcHg7XHJcblx0Zm9udC13ZWlnaHQ6IDcwMDtcclxufVxyXG5cclxuLmNhcnQtaXRlbV9fcGVyaW9kLXNlbGVjdC1jb21tZW50IHtcclxuXHRtYXJnaW4tdG9wOiAxMHB4O1xyXG5cdHBhZGRpbmc6IDEwcHg7XHJcblxyXG5cdCY6OnBsYWNlaG9sZGVyIHtcclxuXHRcdG9wYWNpdHk6IDAuNTtcclxuXHRcdGZvbnQtc2l6ZTogMTRweDtcclxuXHR9XHJcbn1cclxuXHJcbi5jYXJ0LWl0ZW1fX3BlcmlvZC1zZWxlY3QtY29tbWVudC1sYWJlbCB7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuXHRsYWJlbCB7XHJcblx0XHRtYXJnaW4tdG9wOiAyMHB4O1xyXG5cdFx0bWFyZ2luLWxlZnQ6IDA7XHJcblx0XHRjb2xvcjogIzExMTU1ODtcclxuXHRcdGZvbnQtd2VpZ2h0OiA3MDA7XHJcblx0XHJcblx0XHRzdmcge1xyXG5cdFx0XHR0cmFuc2l0aW9uOiBhbGwgMzAwbXMgZWFzZS1pbi1vdXQ7XHJcblx0XHRcdGN1cnNvcjogcG9pbnRlcjtcclxuXHRcclxuXHRcdFx0Jjpob3ZlciB7XHJcblx0XHRcdFx0b3BhY2l0eTogMC42O1xyXG5cdFx0XHR9XHJcblxyXG5cdFx0XHRwYXRoIHtcclxuXHRcdFx0XHRcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0c3BhbiB7XHJcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHR0b3A6IDMwcHg7XHJcblx0XHRyaWdodDogMDtcclxuXHRcdGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZS0xMDA7XHJcblx0XHRwYWRkaW5nOiA1cHggMTBweDtcclxuXHRcdGJvcmRlci1yYWRpdXM6IDJweDtcclxuXHRcdGJveC1zaGFkb3c6IDBweCAycHggMTJweCAkYmx1ZS1kYXJrLTEwO1xyXG5cdFx0ei1pbmRleDogOTk7XHJcblx0XHRmb250LXNpemU6IDE0cHg7XHJcblx0XHRvcGFjaXR5OiAwO1xyXG5cdFx0cG9pbnRlci1ldmVudHM6IG5vbmU7XHJcblx0XHR0cmFuc2l0aW9uOiBhbGwgMzAwbXMgZWFzZS1pbi1vdXQ7XHJcblxyXG5cdFx0Ji5pcy1hY3RpdmUge1xyXG5cdFx0XHRvcGFjaXR5OiAxO1xyXG5cdFx0XHRwb2ludGVyLWV2ZW50czogYWxsO1xyXG5cdFx0fVxyXG5cdH1cclxufVxyXG5cclxuLmNhcnQtaXRlbV9fcGVyaW9kLXNlbGVjdCB7XHJcblx0bGFiZWwge1xyXG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdFx0bWFyZ2luLWJvdHRvbTogLTE0cHg7XHJcblx0XHRwYWRkaW5nOiAwIDVweDtcclxuXHRcdGJhY2tncm91bmQtY29sb3I6ICRncmV5LTEwMDtcclxuXHRcdHdpZHRoOiBmaXQtY29udGVudDtcclxuXHRcdHotaW5kZXg6IDEwO1xyXG5cclxuXHRcdHN2ZyB7XHJcblx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRcdFx0dG9wOiAzcHg7XHJcblx0XHRcdHdpZHRoOiAxNnB4O1xyXG5cdFx0XHRoZWlnaHQ6IDE2cHg7XHJcblx0XHRcdG1hcmdpbi1sZWZ0OiAycHg7XHJcblx0XHRcdGNvbG9yOiAkYmx1ZS16b2RpYWMtNTA7XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHRzZWxlY3Qge1xyXG5cdFx0Zm9udC13ZWlnaHQ6IDYwMDtcclxuXHRcdHBhZGRpbmctdG9wOiAxMHB4O1xyXG5cdH1cclxufVxyXG5cclxuXHJcblxyXG4vKipcclxuICogR3JvdXAuXHJcbiAqL1xyXG5cclxuLmNhcnQtaXRlbV9fZ3JvdXAge1xyXG5cdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtbGFuZHNjYXBlJykge1xyXG5cdFx0d2lkdGg6IDEwMCU7XHJcblx0fVxyXG5cdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtcG9ydHJhaXQnKSB7XHJcblx0XHRtYXJnaW4tdG9wOiAzMHB4O1xyXG5cdH1cclxuXHRAaW5jbHVkZSBtZWRpYSgncGhvbmUnKSB7XHJcblx0XHR3aWR0aDogMTAwJTtcclxuXHRcdGJvcmRlcjogMDtcclxuXHR9XHJcblxyXG5cdHdpZHRoOiAxODBweDtcclxuXHRwYWRkaW5nLWxlZnQ6IDE1cHg7XHJcblx0Ym9yZGVyLWxlZnQ6IDFweCBzb2xpZCAkYmx1ZS16b2RpYWMtMTA7XHJcbn1cclxuXHJcbi5jYXJ0LWl0ZW1fX2dyb3VwLWxhYmVsIHtcclxuXHRAaW5jbHVkZSBtZWRpYSgndGFibGV0LWxhbmRzY2FwZScpIHtcclxuXHRcdG1hcmdpbi1ib3R0b206IDE1cHg7XHJcblx0fVxyXG5cdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtcG9ydHJhaXQtZG93bicpIHtcclxuXHRcdG1hcmdpbi1ib3R0b206IDIwcHg7XHJcblx0fVxyXG5cdEBpbmNsdWRlIG1lZGlhKCdwaG9uZScpIHtcclxuXHRcdG1hcmdpbi1ib3R0b206IDE1cHg7XHJcblx0fVxyXG5cclxuXHRAaW5jbHVkZSBmb250KDIycHgsIDI4cHgpO1xyXG5cdG1hcmdpbi1ib3R0b206IDQwcHg7XHJcblx0Zm9udC13ZWlnaHQ6IDcwMDtcclxufVxyXG5cclxuLmNhcnQtaXRlbV9fZ3JvdXAtd3JhcCB7XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1wb3J0cmFpdC1kb3duJykge1xyXG5cdFx0anVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xyXG5cdH1cclxuXHJcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblxyXG5cdGlucHV0IHtcclxuXHRcdEBpbmNsdWRlIGZvbnQoMjJweCwgMjhweCk7XHJcblx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblx0XHR3aWR0aDogNDJweDtcclxuXHRcdGhlaWdodDogNTBweDtcclxuXHRcdHBhZGRpbmc6IDA7XHJcblx0XHRmb250LXdlaWdodDogNzAwO1xyXG5cdH1cclxuXHJcblx0c3BhbiB7XHJcblx0XHRAaW5jbHVkZSBmb250KDIycHgsIDI4cHgpO1xyXG5cdFx0ZGlzcGxheTogZmxleDtcclxuXHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHRcdHdpZHRoOiA0MnB4O1xyXG5cdFx0aGVpZ2h0OiA1MHB4O1xyXG5cdFx0Zm9udC13ZWlnaHQ6IDcwMDtcclxuXHRcdGN1cnNvcjogcG9pbnRlcjtcclxuXHRcdHRyYW5zaXRpb246IGFsbCAyNTBtcyBlYXNlO1xyXG5cclxuXHRcdCY6aG92ZXIge1xyXG5cdFx0XHRjb2xvcjogJGJsdWUtem9kaWFjLTUwO1xyXG5cdFx0fVxyXG5cclxuXHRcdCY6OnNlbGVjdGlvbiB7XHJcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRncmV5LTEwMDtcclxuXHRcdFx0Y29sb3I6ICRibHVlLXpvZGlhYy0xMDA7XHJcblx0XHR9XHJcblx0fVxyXG59XHJcblxyXG5cclxuLyoqXHJcbiAqIFByaWNlLlxyXG4gKi9cclxuXHJcbi5jYXJ0LWl0ZW1fX3ByaWNlIHtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRtYXJnaW4tdG9wOiAzMHB4O1xyXG5cdHBhZGRpbmc6IDE2cHggMzRweCAxOHB4IDEycHg7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogJHdoaXRlLTEwMDtcclxuXHRib3JkZXItdG9wOiAxcHggc29saWQgJGJsdWUtem9kaWFjLTEwO1xyXG5cdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkYmx1ZS16b2RpYWMtMTA7XHJcbn1cclxuXHJcbi5jYXJ0LWl0ZW1fX3ByaWNlLWxhYmVsIHtcclxuXHRAaW5jbHVkZSBmb250KDIycHgsIDI4cHgpO1xyXG5cdGZvbnQtd2VpZ2h0OiA3MDA7XHJcbn1cclxuXHJcbi5jYXJ0LWl0ZW1fX3ByaWNlLXdyYXAge1xyXG5cdGJvcmRlci1sZWZ0OiAxcHggc29saWQgJGJsdWUtem9kaWFjLTEwO1xyXG5cdHBhZGRpbmctbGVmdDogNTBweDtcclxuXHJcblx0c3BhbiB7XHJcblx0XHRAaW5jbHVkZSBmb250KDEycHgsIDE4cHgpO1xyXG5cdFx0ZGlzcGxheTogYmxvY2s7XHJcblxyXG5cdFx0Ji5pcy1wcmljZSB7XHJcblx0XHRcdEBpbmNsdWRlIGZvbnQoMjJweCwgMjhweCk7XHJcblx0XHRcdG1hcmdpbi1ib3R0b206IC0xcHg7XHJcblx0XHRcdGZvbnQtd2VpZ2h0OiA3MDA7XHJcblx0XHR9XHJcblx0fVxyXG59IiwiLmNhcnQge1xyXG5cdFxyXG59XHJcblxyXG4uY2FydF9fdGl0bGUge1xyXG5cdG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbn1cclxuXHJcbi5jYXJ0X19lZGl0b3Ige1xyXG5cdG1hcmdpbi1ib3R0b206IDQwcHg7XHJcbn1cclxuXHJcbi5jYXJ0X19jb3VudCB7XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3Bob25lJykge1xyXG5cdFx0cGFkZGluZzogMzBweCAwO1xyXG5cdH1cclxuXHJcblx0cGFkZGluZzogMzBweCAwIDYwcHggMDtcclxuXHRib3JkZXItdG9wOiAxcHggc29saWQgJGJsdWUtem9kaWFjLTEwO1xyXG5cdHRleHQtYWxpZ246IHJpZ2h0O1xyXG59XHJcblxyXG4uY2FydF9fcHJpY2Uge1xyXG5cdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdG1hcmdpbjogMjBweCAwIDYwcHggMDtcclxuXHRwYWRkaW5nOiA1MHB4IDM0cHggMThweCAxMnB4O1xyXG5cdGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZS0xMDA7XHJcblx0Ym9yZGVyLXRvcDogMXB4IHNvbGlkICRibHVlLXpvZGlhYy0xMDtcclxufVxyXG5cclxuLmNhcnRfX3ByaWNlLWxhYmVsIHtcclxuXHRAaW5jbHVkZSBmb250KDMycHgsIDM4cHgpO1xyXG5cdGZvbnQtd2VpZ2h0OiA4MDA7XHJcbn1cclxuXHJcbi5jYXJ0X19wcmljZS13cmFwIHtcclxuXHRwYWRkaW5nLWxlZnQ6IDUwcHg7XHJcblxyXG5cdHNwYW4ge1xyXG5cdFx0QGluY2x1ZGUgZm9udCgxMnB4LCAxOHB4KTtcclxuXHRcdGRpc3BsYXk6IGJsb2NrO1xyXG5cclxuXHRcdCYuaXMtcHJpY2Uge1xyXG5cdFx0XHRAaW5jbHVkZSBmb250KDIycHgsIDI4cHgpO1xyXG5cdFx0XHRtYXJnaW4tYm90dG9tOiAtMXB4O1xyXG5cdFx0XHRmb250LXdlaWdodDogNzAwO1xyXG5cdFx0fVxyXG5cdH1cclxufVxyXG5cclxuLmNhcnRfX2Zvcm0ge1xyXG5cdGJvcmRlci10b3A6IDFweCBzb2xpZCAkYmx1ZS16b2RpYWMtMTA7XHJcblx0cGFkZGluZy10b3A6IDYwcHg7XHJcbn1cclxuXHJcbi5jYXJ0X19mb3JtLS1rcmltcGVuZXJ3YWFyZCB7XHJcblx0YnV0dG9uIHtcclxuXHRcdGJhY2tncm91bmQtY29sb3I6ICRncmVlbi0xMDA7XHJcblx0XHRjb2xvcjogJHdoaXRlLTEwMDtcclxuXHR9XHJcbn1cclxuXHJcbi5jYXJ0X19mb3JtLS13YWRkaW54dmVlbiB7XHJcblx0YnV0dG9uIHtcclxuXHRcdGJhY2tncm91bmQtY29sb3I6ICRsaW1lLTEwMDtcclxuXHR9XHJcbn1cclxuXHJcbi5jYXJ0X19mb3JtLS1ib2RlZ3JhdmVuIHtcclxuXHRidXR0b24ge1xyXG5cdFx0YmFja2dyb3VuZC1jb2xvcjogJHllbGxvdy0xMDA7XHJcblx0fVxyXG59XHJcblxyXG4uY2FydF9fbm8tcmVzdWx0cyB7XHJcblx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG5cdGZvbnQtd2VpZ2h0OiA3MDA7XHJcbn1cclxuXHJcbi5jYXJ0X19kb3dubG9hZC13cmFwIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XHJcblx0d2lkdGg6IDEwMCU7XHJcblx0bWFyZ2luLWJvdHRvbTogNTBweDtcclxufVxyXG5cclxuLmNhcnRfX2Rvd25sb2FkIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGUtMTAwO1xyXG5cclxuXHQmLmhhcy1zdmctcmlnaHQge1xyXG5cdFx0c3ZnIHtcclxuXHRcdFx0bWFyZ2luLWxlZnQ6IDIwcHg7XHJcblx0XHR9XHJcblxyXG5cdFx0Jjpob3ZlciB7XHJcblx0XHRcdHN2ZyB7XHJcblx0XHRcdFx0bWFyZ2luLWxlZnQ6IDI1cHg7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcbn0iLCIuY29udGVudC1kZWZhdWx0IHtcclxuXHRAaW5jbHVkZSBtZWRpYSgndGFibGV0LXBvcnRyYWl0LWRvd24nKSB7XHJcblx0XHRwYWRkaW5nLWJvdHRvbTogNDBweDtcclxuXHR9XHJcblxyXG5cdHBhZGRpbmctYm90dG9tOiA2MHB4O1xyXG59XHJcblxyXG4uY29udGVudC1kZWZhdWx0X190aXRsZSB7XHJcblx0bWFyZ2luLWJvdHRvbTogMjBweDtcclxufVxyXG5cclxuLmNvbnRlbnQtZGVmYXVsdF9fbGluayB7XHJcblx0bWFyZ2luLXRvcDogMjBweDtcclxufVxyXG4iLCIuY29udGVudC1mb3JtIHtcclxuXHRAaW5jbHVkZSBtZWRpYSgndGFibGV0LXBvcnRyYWl0LWRvd24nKSB7XHJcblx0XHRwYWRkaW5nLWJvdHRvbTogNDBweDtcclxuXHR9XHJcblxyXG5cdHBhZGRpbmctYm90dG9tOiA2MHB4O1xyXG59XHJcblxyXG4uY29udGVudC1mb3JtX190aXRsZSB7XHJcblx0bWF4LXdpZHRoOiA4ODBweDtcclxuXHRtYXJnaW4tYm90dG9tOiAzMHB4O1xyXG59XHJcblxyXG4uY29udGVudC1mb3JtX19lZGl0b3Ige1xyXG5cdGZvbnQtd2VpZ2h0OiA2MDA7XHJcbn1cclxuXHJcbi5jb250ZW50LWZvcm1fX2Zvcm0ge1xyXG5cdG1hcmdpbi10b3A6IDQwcHg7XHJcblxyXG5cdCYuaXMta3JpbXBlbmVyd2FhcmQge1xyXG5cdFx0YnV0dG9uIHtcclxuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJGdyZWVuLTEwMDtcclxuXHRcdFx0Y29sb3I6ICR3aGl0ZS0xMDA7XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHQmLmlzLWJvZGVncmF2ZW4ge1xyXG5cdFx0YnV0dG9uIHtcclxuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJHllbGxvdy0xMDA7XHJcblx0XHRcdGNvbG9yOiAkYmx1ZS16b2RpYWMtMTAwO1xyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0Ji5pcy13YWRkaW54dmVlbiB7XHJcblx0XHRidXR0b24ge1xyXG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkbGltZS0xMDA7XHJcblx0XHRcdGNvbG9yOiAkYmx1ZS16b2RpYWMtMTAwO1xyXG5cdFx0fVxyXG5cdH1cclxufVxyXG5cclxuLmNvbnRlbnQtZm9ybV9fYmFjayB7XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3Bob25lJykge1xyXG5cdFx0bWFyZ2luLXRvcDogMzBweDtcclxuXHR9XHJcblxyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRtYXJnaW4tdG9wOiAtMzBweDtcclxuXHR0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcclxuXHJcblx0c3ZnIHtcclxuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRcdHRvcDogMnB4O1xyXG5cdFx0d2lkdGg6IDE0cHg7XHJcblx0XHRoZWlnaHQ6IDIycHg7XHJcblx0XHRtYXJnaW4tcmlnaHQ6IDEwcHg7XHJcblx0XHRjb2xvcjogJGJsdWUtem9kaWFjLTEwMDtcclxuXHRcdHRyYW5zaXRpb246IGFsbCAyNTBtcyBlYXNlO1xyXG5cdH1cclxuXHJcblx0Jjpob3ZlciB7XHJcblx0XHRzdmcge1xyXG5cdFx0XHRtYXJnaW4tbGVmdDogLTVweDtcclxuXHRcdFx0bWFyZ2luLXJpZ2h0OiAxNXB4O1xyXG5cdFx0fVxyXG5cdH1cclxufSIsIi5jb250ZW50LWhlYWRlciB7XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1wb3J0cmFpdC1kb3duJykge1xyXG5cdFx0aGVpZ2h0OiAxNjBweDtcclxuXHR9XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3Bob25lJykge1xyXG5cdFx0aGVpZ2h0OiAxOTBweDtcclxuXHR9XHJcblxyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRoZWlnaHQ6IDIzNXB4O1xyXG5cclxuXHRpbWcge1xyXG5cdFx0ei1pbmRleDogMTtcclxuXHR9XHJcbn1cclxuXHJcbi5jb250ZW50LWhlYWRlcl9fYm9keSB7XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3Bob25lJykge1xyXG5cdFx0ZGlzcGxheTogZmxleDtcclxuXHRcdGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcclxuXHRcdGhlaWdodDogMTkwcHg7XHJcblx0XHRwYWRkaW5nOiAwIDAgMTVweCAwO1xyXG5cdH1cclxuXHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdHBhZGRpbmctdG9wOiA2NXB4O1xyXG5cdHotaW5kZXg6IDI7XHJcbn1cclxuXHJcbi5jb250ZW50LWhlYWRlcl9fdGl0bGUge1xyXG5cdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtcG9ydHJhaXQtZG93bicpIHtcclxuXHRcdEBpbmNsdWRlIGZvbnQoMjVweCwgMzJweCk7XHJcblx0fVxyXG5cclxuXHRAaW5jbHVkZSBmb250KDQycHgsIDQ4cHgpO1xyXG5cdGNvbG9yOiAkd2hpdGUtMTAwO1xyXG5cdGZvbnQtd2VpZ2h0OiA2MDA7XHJcblx0dGV4dC1zaGFkb3c6IDBweCAwcHggMnB4ICRibGFjay0xMDtcclxufVxyXG5cclxuLmNvbnRlbnQtaGVhZGVyX19jaXR5IHtcclxuXHRAaW5jbHVkZSBtZWRpYSgndGFibGV0LXBvcnRyYWl0LWRvd24nKSB7XHJcblx0XHRAaW5jbHVkZSBmb250KDM2cHgsIDU4cHgpO1xyXG5cdH1cclxuXHJcblx0QGluY2x1ZGUgZm9udCg3NnB4LCA5NnB4KTtcclxuXHRjb2xvcjogJHdoaXRlLTEwMDtcclxuXHRmb250LXdlaWdodDogODAwO1xyXG5cdHRleHQtc2hhZG93OiAwcHggMHB4IDJweCAkYmxhY2stMTA7XHJcbn1cclxuIiwiLmZvb3RlciB7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdG1hcmdpbi10b3A6IDUwcHg7XHJcblx0cGFkZGluZy10b3A6IDUwcHg7XHJcblxyXG5cdCY6YWZ0ZXIge1xyXG5cdFx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1wb3J0cmFpdC1kb3duJykge1xyXG5cdFx0XHRkaXNwbGF5OiBub25lO1xyXG5cdFx0fVxyXG5cclxuXHRcdGRpc3BsYXk6IGJsb2NrO1xyXG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0dG9wOiAwO1xyXG5cdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRoZWlnaHQ6IDM2cHg7XHJcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkZ3JleS0xMDA7XHJcblx0XHRjb250ZW50OiAnJztcclxuXHRcdHotaW5kZXg6IDE7XHJcblx0fVxyXG5cclxuXHQmOmJlZm9yZSB7XHJcblx0XHRAaW5jbHVkZSBtZWRpYSgndGFibGV0LXBvcnRyYWl0LWRvd24nKSB7XHJcblx0XHRcdHRvcDogLTFweDtcclxuXHRcdFx0aGVpZ2h0OiAxNTBweDtcclxuXHRcdFx0Y2xpcC1wYXRoOiBwb2x5Z29uKDAgMCwgMTAwJSAwLCAxMDAlIDUwJSwgNTAlIDEwMCUsIDAlIDUwJSk7XHJcblx0XHR9XHJcblxyXG5cdFx0ZGlzcGxheTogYmxvY2s7XHJcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHR0b3A6IDM1cHg7XHJcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkZ3JleS0xMDA7XHJcblx0XHR3aWR0aDogMTAwdnc7XHJcblx0XHRoZWlnaHQ6IDIwMHB4O1xyXG5cdFx0Y2xpcC1wYXRoOiBwb2x5Z29uKDUwJSAwJSwgMTAwJSAwLCA1MCUgMTAwJSwgMCAwKTtcclxuXHRcdGNvbnRlbnQ6ICcnO1xyXG5cdFx0ei1pbmRleDogMTtcclxuXHR9XHJcblxyXG5cdCoge1xyXG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdFx0ei1pbmRleDogMjtcclxuXHR9XHJcbn1cclxuXHJcbi5mb290ZXJfX2NvbnRhY3Qge1xyXG5cdEBpbmNsdWRlIG1lZGlhKCdwaG9uZScpIHtcclxuXHRcdHBhZGRpbmc6IDQ1cHggMjhweCAyOHB4IDI4cHg7XHJcblx0fVxyXG5cclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHR3aWR0aDogMTAwJTtcclxuXHRwYWRkaW5nOiA0NXB4IDM1cHggMzVweCAzNXB4O1xyXG5cdGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZS0xMDA7XHJcblx0Ym9yZGVyLXJhZGl1czogMTBweDtcclxufVxyXG5cclxuLmZvb3Rlcl9fY29udGFjdC10aXRsZSB7XHJcblx0ZGlzcGxheTogYmxvY2s7XHJcblx0bWFyZ2luLWJvdHRvbTogMzBweDtcclxuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblx0d2lkdGg6IDEwMCU7XHJcbn1cclxuXHJcbi5mb290ZXJfX3RvcCB7XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1wb3J0cmFpdC1kb3duJykge1xyXG5cdFx0cGFkZGluZzogNTBweCAwIDQwcHggMDtcclxuXHR9XHJcblxyXG5cdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuXHRwYWRkaW5nOiA1MHB4IDA7XHJcblx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRibHVlLXpvZGlhYy0yMDtcclxufVxyXG5cclxuLmZvb3Rlcl9fc2l0ZW1hcHMge1xyXG5cdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtcG9ydHJhaXQtZG93bicpIHtcclxuXHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG5cdFx0bWFyZ2luLWJvdHRvbTogMzBweDtcclxuXHR9XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3Bob25lJykge1xyXG5cdFx0bWFyZ2luLWJvdHRvbTogMjVweDtcclxuXHR9XHJcblxyXG5cdGEge1xyXG5cdFx0QGluY2x1ZGUgbWVkaWEoJ3Bob25lJykge1xyXG5cdFx0XHR3aWR0aDogMTAwJTtcclxuXHRcdFx0bWFyZ2luOiAwIDAgMjVweCAwO1xyXG5cdFx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblx0XHR9XHJcblxyXG5cdFx0bWFyZ2luLXJpZ2h0OiA4MHB4O1xyXG5cdFx0Y29sb3I6ICR3aGl0ZS0xMDA7XHJcblxyXG5cdFx0JjpsYXN0LW9mLXR5cGUge1xyXG5cdFx0XHRtYXJnaW46IDA7XHJcblx0XHR9XHJcblxyXG5cdFx0Jjpob3ZlciB7XHJcblx0XHRcdHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xyXG5cdFx0fVxyXG5cdH1cclxufVxyXG5cclxuLmZvb3Rlcl9fc29jaWFsIHtcclxuXHRAaW5jbHVkZSBtZWRpYSgndGFibGV0LXBvcnRyYWl0LWRvd24nKSB7XHJcblx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHRcdHdpZHRoOiAxMDAlO1x0XHJcblx0fVxyXG5cclxuXHRhIHtcclxuXHRcdG1hcmdpbi1yaWdodDogNDBweDtcclxuXHJcblx0XHQmOmxhc3Qtb2YtdHlwZSB7XHJcblx0XHRcdG1hcmdpbi1yaWdodDogMDtcclxuXHRcdH1cclxuXHJcblx0XHQmOmhvdmVyIHtcclxuXHRcdFx0c3ZnIHtcclxuXHRcdFx0XHRvcGFjaXR5OiAwLjc7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdHN2ZyB7XHJcblx0XHR3aWR0aDogMjVweDtcclxuXHRcdGhlaWdodDogMjhweDtcclxuXHRcdGNvbG9yOiAkd2hpdGUtMTAwO1xyXG5cdFx0dHJhbnNpdGlvbjogYWxsIDI1MG1zIGVhc2U7XHJcblx0fVxyXG59XHJcblxyXG4uZm9vdGVyX19ib3R0b20ge1xyXG5cdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtcG9ydHJhaXQtZG93bicpIHtcclxuXHRcdGhlaWdodDogYXV0bztcclxuXHRcdHBhZGRpbmc6IDQwcHggMCAxNXB4IDA7XHJcblx0fVxyXG5cclxuXHRAaW5jbHVkZSBmb250KDE0cHgsIDE5cHgpO1xyXG5cdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGhlaWdodDogMTYwcHg7XHJcblx0cGFkZGluZy1ib3R0b206IDQwcHg7XHJcblx0Y29sb3I6ICR3aGl0ZS03NTtcclxuXHJcblx0YSB7XHJcblx0XHRtYXJnaW4tbGVmdDogMjBweDtcclxuXHJcblx0XHQmOmZpcnN0LW9mLXR5cGUge1xyXG5cdFx0XHRtYXJnaW4tbGVmdDogMDtcclxuXHRcdH1cclxuXHJcblx0XHQmOmhvdmVyIHtcclxuXHRcdFx0dGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHRpbWcge1xyXG5cdFx0aGVpZ2h0OiA4OXB4O1xyXG5cdFx0d2lkdGg6IGF1dG87XHJcblx0fVxyXG5cclxuXHQ+IGRpdixcclxuXHQ+IGEge1xyXG5cdFx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1wb3J0cmFpdC1kb3duJykge1xyXG5cdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHRcdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRcdG1hcmdpbi1ib3R0b206IDI1cHg7XHJcblx0XHRcdHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHRcdH1cclxuXHR9XHJcbn1cclxuXHJcbi5mb290ZXJfX2xpbmstd3JhcCB7XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1wb3J0cmFpdC1kb3duJykge1xyXG5cdFx0ZGlzcGxheTogZmxleDtcclxuXHRcdGZsZXgtd3JhcDogd3JhcDtcclxuXHR9XHJcbn1cclxuXHJcbi5mb290ZXJfX2RldmVsb3BlZC1ieSB7XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1wb3J0cmFpdC1kb3duJykge1xyXG5cdFx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG5cdH1cclxuXHJcblx0ZGlzcGxheTogYmxvY2s7XHJcblx0d2lkdGg6IDEwMCU7XHJcblx0dGV4dC1hbGlnbjogcmlnaHQ7XHJcblx0bWFyZ2luLXRvcDogMTBweDtcclxufVxyXG5cclxuXHJcbi8qKlxyXG4gKiBUaGVtZXMuXHJcbiAqL1xyXG5cclxuLmZvb3RlciB7XHJcblx0Ji50aGVtZS0td2FkZGlueHZlZW4sXHJcblx0Ji50aGVtZS0tYm9kZWdyYXZlbiB7XHJcblx0XHQuZm9vdGVyX19zaXRlbWFwcyBhLFxyXG5cdFx0LmZvb3Rlcl9fc29jaWFsIHN2ZyB7XHJcblx0XHRcdGNvbG9yOiAkYmx1ZS16b2RpYWMtMTAwO1xyXG5cdFx0fVxyXG5cclxuXHRcdC5mb290ZXJfX2JvdHRvbSB7XHJcblx0XHRcdGNvbG9yOiAkYmx1ZS16b2RpYWMtNzU7XHJcblx0XHR9XHJcblx0fVxyXG59XHJcbiIsIi5oZWFkZXIge1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRoZWlnaHQ6IDkwcHg7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogJGdyZXktMTAwO1xyXG5cdGJveC1zaGFkb3c6IDBweCAycHggMTJweCAkZ3JleS0xMDtcclxuXHR6LWluZGV4OiAxMDtcclxuXHJcblx0LndyYXBwZXIge1xyXG5cdFx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1wb3J0cmFpdC1kb3duJykge1xyXG5cdFx0XHRhbGlnbi1pdGVtczogY2VudGVyO1x0XHJcblx0XHR9XHJcblxyXG5cdFx0aGVpZ2h0OiA5MHB4O1xyXG5cdFx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG5cdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRcdG92ZXJmbG93OiBoaWRkZW47XHJcblxyXG5cdFx0Jjpob3ZlciB7XHJcblx0XHRcdG92ZXJmbG93OiB2aXNpYmxlO1xyXG5cdFx0fVxyXG5cdH1cclxufVxyXG4uaGVhZGVyX19sb2dvIHtcclxuXHRpbWcge1xyXG5cdFx0d2lkdGg6IGF1dG87XHJcblx0XHRtYXgtd2lkdGg6IDEwMHB4O1xyXG5cdFx0aGVpZ2h0OiBhdXRvO1xyXG5cdFx0bWF4LWhlaWdodDogNjVweDtcclxuXHR9XHJcblxyXG5cdCYubWVudS0zLWl0ZW1zIHtcclxuXHRcdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtbGFuZHNjYXBlLWRvd24nKSB7XHJcblx0XHRcdHJpZ2h0OiAwO1xyXG5cdFx0fVxyXG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdFx0cmlnaHQ6IC0xMTZweDtcclxuXHR9XHJcbn1cclxuXHJcbi5oZWFkZXJfX25hdmlnYXRpb24ge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGZsZXgtZW5kO1xyXG5cdGhlaWdodDogNDVweDtcclxuXHJcblx0Ji5pcy1sZWZ0IHtcclxuXHRcdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtcG9ydHJhaXQtZG93bicpIHtcclxuXHRcdFx0ZGlzcGxheTogbm9uZTtcclxuXHRcdH1cclxuXHR9XHJcbn1cclxuXHJcbi5oZWFkZXJfX21lbnUge1xyXG5cdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtcG9ydHJhaXQtZG93bicpIHtcclxuXHRcdGRpc3BsYXk6IG5vbmU7XHJcblx0fVxyXG5cclxuXHQ+IGxpIHtcclxuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRcdGRpc3BsYXk6IGZsZXg7XHJcblx0XHRhbGlnbi1pdGVtczogZmxleC1lbmQ7XHJcblx0XHRtYXJnaW4tbGVmdDogNDBweDtcclxuXHJcblx0XHQ+IGEge1xyXG5cdFx0XHRAaW5jbHVkZSBmb250KDE2cHgsIDE4cHgpO1xyXG5cdFx0XHRmb250LXdlaWdodDogNjAwO1xyXG5cdFx0XHRvcGFjaXR5OiAxO1xyXG5cdFx0XHR0cmFuc2l0aW9uOiBvcGFjaXR5IDI1MG1zIGVhc2U7XHJcblxyXG5cdFx0XHRzdmcge1xyXG5cdFx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRcdFx0XHR0b3A6IDNweDtcclxuXHRcdFx0XHR3aWR0aDogOXB4O1xyXG5cdFx0XHRcdGhlaWdodDogMTVweDtcclxuXHRcdFx0XHRtYXJnaW4tbGVmdDogNXB4O1xyXG5cdFx0XHRcdHRyYW5zaXRpb246IHRyYW5zZm9ybSA1MDBtcyBlYXNlO1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblxyXG5cdFx0JjpmaXJzdC1vZi10eXBlIHtcclxuXHRcdFx0bWFyZ2luLWxlZnQ6IDA7XHJcblx0XHR9XHJcblxyXG5cdFx0Ji5jdXJyZW50LW1lbnUtaXRlbSxcclxuXHRcdCY6aG92ZXIge1xyXG5cdFx0XHQ+IGEge1xyXG5cdFx0XHRcdG9wYWNpdHk6IDAuNztcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cclxuXHRcdCY6aG92ZXIge1xyXG5cdFx0XHQuc3VibWVudS1jb250YWluZXIge1xyXG5cdFx0XHRcdG9wYWNpdHk6IDE7XHJcblx0XHRcdFx0dG9wOiAxMDAlO1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHQuc3VibWVudS1jb250YWluZXIge1xyXG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0dG9wOiA1MHB4O1xyXG5cdFx0bGVmdDogNTAlO1xyXG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgMCUpO1xyXG5cdFx0d2lkdGg6IG1heC1jb250ZW50O1xyXG5cdFx0bWluLXdpZHRoOiAxNzBweDtcclxuXHRcdHBhZGRpbmctdG9wOiAyMnB4O1xyXG5cdFx0b3BhY2l0eTogMDtcclxuXHRcdHRyYW5zaXRpb246IGFsbCA1MDBtcyBlYXNlO1xyXG5cclxuXHRcdC5zdWJtZW51IHtcclxuXHRcdFx0Ym94LXNoYWRvdzogNXB4IDVweCAwcHggJGJsdWUtem9kaWFjLTEwMDtcclxuXHJcblx0XHRcdD4gbGkge1xyXG5cdFx0XHRcdD4gYSB7XHJcblx0XHRcdFx0XHRAaW5jbHVkZSBmb250KDE0cHgsIDIwcHgpO1xyXG5cdFx0XHRcdFx0ZGlzcGxheTogZmxleDtcclxuXHRcdFx0XHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0XHRcdFx0Zm9udC13ZWlnaHQ6IDMwMDtcclxuXHRcdFx0XHRcdHBhZGRpbmc6IDEwcHggMTBweDtcclxuXHRcdFx0XHRcdHRyYW5zaXRpb246IGFsbCAyNTBtcyBlYXNlO1xyXG5cdFx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJGdyZXktMTAwO1xyXG5cdFx0XHRcdH1cclxuXHJcblx0XHRcdFx0Ji5jdXJyZW50LW1lbnUtaXRlbSxcclxuXHRcdFx0XHQmOmhvdmVyIHtcclxuXHRcdFx0XHRcdD4gYSB7XHJcblx0XHRcdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRjb25jcmV0ZS0xMDA7XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG59XHJcblxyXG4uaGVhZGVyX19hY3Rpdml0eSB7XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1wb3J0cmFpdC1kb3duJykge1xyXG5cdFx0bWFyZ2luOiAwIC05cHg7XHRcclxuXHR9XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3Bob25lJykge1xyXG5cdFx0QGluY2x1ZGUgZm9udCgxNHB4LCAxOHB4KTtcclxuXHRcdG1hcmdpbjogMCAtOXB4O1xyXG5cdH1cdFxyXG5cclxuXHRAaW5jbHVkZSBmb250KDE2cHgsIDE4cHgpO1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHRtYXJnaW4tbGVmdDogMzFweDtcclxuXHR0cmFuc2l0aW9uOiBhbGwgMjUwbXMgZWFzZTtcclxuXHJcblx0c3ZnIHtcclxuXHRcdHdpZHRoOiAyMHB4O1xyXG5cdFx0aGVpZ2h0OiAyNHB4O1xyXG5cdFx0Y29sb3I6ICRibHVlLXpvZGlhYy0xMDA7XHJcblx0XHRtYXJnaW4tYm90dG9tOiAzcHg7XHJcblx0fVxyXG5cclxuXHRzcGFuIHtcclxuXHRcdGRpc3BsYXk6IGJsb2NrO1xyXG5cdFx0d2lkdGg6IGNhbGMoMTAwJSAtIDE4cHgpO1xyXG5cdH1cclxuXHJcblx0Jjpob3ZlciB7XHJcblx0XHRvcGFjaXR5OiAwLjc7XHJcblx0fVxyXG59XHJcblxyXG4uaGVhZGVyX19hY3Rpdml0eS1jb3VudCB7XHJcblx0QGluY2x1ZGUgZm9udCgxMnB4LCAxMnB4KTtcclxuXHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0dG9wOiAtMXB4O1xyXG5cdHJpZ2h0OiAyOHB4O1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHR3aWR0aDogMThweDtcclxuXHRoZWlnaHQ6IDE4cHg7XHJcblx0Ym9yZGVyLXJhZGl1czogNTAlO1xyXG5cdGJhY2tncm91bmQtY29sb3I6ICRyZWQtMTAwO1xyXG5cdGNvbG9yOiAkd2hpdGUtMTAwO1xyXG59XHJcblxyXG4vKipcclxuICogTWVudSBCdXR0b24uXHJcbiAqL1xyXG5cclxuJHRyYW5zaXRpb24tdGltaW5nOiA0MDBtcztcclxuLmhlYWRlcl9fbWVudS1idXR0b24ge1xyXG5cdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtcG9ydHJhaXQtZG93bicpIHtcclxuXHRcdGRpc3BsYXk6IGJsb2NrO1xyXG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdFx0d2lkdGg6IDIxcHg7XHJcblx0XHRoZWlnaHQ6IDIxcHg7XHJcblx0XHRtYXJnaW4tcmlnaHQ6IDYycHg7XHJcblx0XHR6LWluZGV4OiAxMDA7XHJcblxyXG5cdFx0c3BhbiB7XHJcblx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0XHRyaWdodDogMDtcclxuXHRcdFx0bGVmdDogMDtcclxuXHRcdFx0d2lkdGg6IDIxcHg7XHJcblx0XHRcdGhlaWdodDogM3B4O1xyXG5cdFx0XHRib3JkZXItcmFkaXVzOiAycHg7XHJcblx0XHRcdG1hcmdpbjogYXV0bztcclxuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJGJsdWUtem9kaWFjLTEwMDtcclxuXHJcblx0XHRcdCY6bnRoLWNoaWxkKDEpIHtcclxuXHRcdFx0XHR0b3A6IDA7XHJcblx0XHRcdFx0dHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAkdHJhbnNpdGlvbi10aW1pbmcsIHRvcCAkdHJhbnNpdGlvbi10aW1pbmcgJHRyYW5zaXRpb24tdGltaW5nLCB0cmFuc2Zvcm0gJHRyYW5zaXRpb24tdGltaW5nIDBzO1xyXG5cdFx0XHR9XHJcblxyXG5cdFx0XHQmOm50aC1jaGlsZCgyKSB7XHJcblx0XHRcdFx0dG9wOiBjYWxjKDUwJSAtIDEuNXB4KTtcclxuXHRcdFx0XHR0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yICR0cmFuc2l0aW9uLXRpbWluZywgb3BhY2l0eSAwbXMgJHRyYW5zaXRpb24tdGltaW5nO1xyXG5cdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRibHVlLXpvZGlhYy0xMDA7XHJcblx0XHRcdFx0b3BhY2l0eTogMTtcclxuXHRcdFx0fVxyXG5cclxuXHRcdFx0JjpudGgtY2hpbGQoMykge1xyXG5cdFx0XHRcdGJvdHRvbTogMDtcclxuXHRcdFx0XHR0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yICR0cmFuc2l0aW9uLXRpbWluZywgYm90dG9tICR0cmFuc2l0aW9uLXRpbWluZyAkdHJhbnNpdGlvbi10aW1pbmcsIHRyYW5zZm9ybSAkdHJhbnNpdGlvbi10aW1pbmcgMHM7XHJcblx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJGJsdWUtem9kaWFjLTEwMDtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cclxuXHRcdCYuaXMtYWN0aXZlIHtcclxuXHRcdFx0c3BhbiB7XHJcblx0XHRcdFx0JjpudGgtY2hpbGQoMSkge1xyXG5cdFx0XHRcdFx0dG9wOiBjYWxjKDUwJSAtIDEuNXB4KTtcclxuXHRcdFx0XHRcdHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XHJcblx0XHRcdFx0XHR0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yICR0cmFuc2l0aW9uLXRpbWluZywgdG9wICR0cmFuc2l0aW9uLXRpbWluZywgdHJhbnNmb3JtICR0cmFuc2l0aW9uLXRpbWluZyAkdHJhbnNpdGlvbi10aW1pbmc7XHJcblx0XHRcdFx0fVxyXG5cclxuXHRcdFx0XHQmOm50aC1jaGlsZCgyKSB7XHJcblx0XHRcdFx0XHRvcGFjaXR5OiAwO1xyXG5cdFx0XHRcdH1cclxuXHJcblx0XHRcdFx0JjpudGgtY2hpbGQoMykge1xyXG5cdFx0XHRcdFx0Ym90dG9tOiBjYWxjKDUwJSAtIDEuNXB4KTtcclxuXHRcdFx0XHRcdHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcclxuXHRcdFx0XHRcdHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgJHRyYW5zaXRpb24tdGltaW5nLCBib3R0b20gJHRyYW5zaXRpb24tdGltaW5nLCB0cmFuc2Zvcm0gJHRyYW5zaXRpb24tdGltaW5nICR0cmFuc2l0aW9uLXRpbWluZztcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3Bob25lJykge1xyXG5cdFx0bWFyZ2luLXJpZ2h0OiA1MXB4O1xyXG5cdH1cclxuXHJcblx0ZGlzcGxheTogbm9uZTtcclxufSIsIi5uYXZpZ2F0aW9uLW1vYmlsZSB7XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1sYW5kc2NhcGUtZG93bicpIHtcclxuXHRcdGhlaWdodDogY2FsYygxMDAlIC0gODBweCk7XHJcblx0XHRtYXJnaW4tdG9wOiA4MHB4O1xyXG5cdH1cclxuXHJcblx0cG9zaXRpb246IGZpeGVkO1xyXG5cdHRvcDogMTAwdmg7XHJcblx0cmlnaHQ6IDA7XHJcblx0Ym90dG9tOiAwO1xyXG5cdGxlZnQ6IDA7XHJcblx0d2lkdGg6IDEwMCU7XHJcblx0aGVpZ2h0OiBjYWxjKDEwMCUgLSAxMDBweCk7XHJcblx0bWFyZ2luLXRvcDogMTAwcHg7XHJcblx0dHJhbnNpdGlvbjogYWxsIDUwMG1zIGVhc2U7XHJcblx0YmFja2dyb3VuZDogJGJsdWUtem9kaWFjLTUwO1xyXG5cdGNvbG9yOiAkd2hpdGUtMTAwO1xyXG5cdG9wYWNpdHk6IDA7XHJcblx0ei1pbmRleDogOTk5O1xyXG5cdG92ZXJmbG93LXg6IGhpZGRlbjtcclxuXHJcblx0Ji5pcy1hY3RpdmUge1xyXG5cdFx0dG9wOiAwO1xyXG5cdFx0b3BhY2l0eTogMTtcclxuXHR9XHJcblxyXG5cdCY6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcclxuXHRcdGRpc3BsYXk6IG5vbmU7XHJcblx0fVxyXG5cclxuXHQud3JhcHBlciB7XHJcblx0XHRoZWlnaHQ6IDEwMCU7XHJcblx0fVxyXG5cclxuXHQmLnRoZW1lLS1ib2RlZ3JhdmVuIHtcclxuXHRcdGNvbG9yOiAkYmx1ZS16b2RpYWMtMTAwO1xyXG5cclxuXHRcdC5uYXZpZ2F0aW9uLW1vYmlsZV9fbWFpbiB7XHJcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICR5ZWxsb3ctMTAwO1xyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0Ji50aGVtZS0td2FkZGlueHZlZW4ge1xyXG5cdFx0Y29sb3I6ICRibHVlLXpvZGlhYy0xMDA7XHJcblxyXG5cdFx0Lm5hdmlnYXRpb24tbW9iaWxlX19tYWluIHtcclxuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJGxpbWUtMTAwO1xyXG5cdFx0fVxyXG5cdH1cclxufVxyXG5cclxuXHJcbi8qKlxyXG4gKiBNYWluIG1lbnUuXHJcbiAqL1xyXG5cclxuLm5hdmlnYXRpb24tbW9iaWxlX19tYWluIHtcclxuXHRAaW5jbHVkZSBtZWRpYSgndGFibGV0LXBvcnRyYWl0Jykge1xyXG5cdFx0bWFyZ2luOiAwIC02MHB4O1xyXG5cdFx0cGFkZGluZzogMTBweCA2MHB4O1xyXG5cdH1cclxuXHJcblx0YmFja2dyb3VuZC1jb2xvcjogJGdyZWVuLTEwMDtcclxuXHR3aWR0aDogMTAwdnc7XHJcblx0bWFyZ2luOiAwIC0yMHB4O1xyXG5cdHBhZGRpbmc6IDEwcHggMjBweDtcclxuXHJcblx0Ji5pcy1maXJzdCB7XHJcblx0XHRwYWRkaW5nLXRvcDogMzBweDtcclxuXHR9XHJcblxyXG5cdCYuaXMtbGFzdCB7XHJcblx0XHRwYWRkaW5nLWJvdHRvbTogMzBweDtcclxuXHR9XHJcblxyXG5cdD4gbGkge1xyXG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdFx0bWFyZ2luLWJvdHRvbTogMjBweDtcclxuXHJcblx0XHQmOmxhc3Qtb2YtdHlwZSB7XHJcblx0XHRcdG1hcmdpbjogMDtcclxuXHRcdH1cclxuXHJcblx0XHQmLmN1cnJlbnRfcGFnZV9hbmNlc3RvcixcclxuXHRcdCYuY3VycmVudC1tZW51LWl0ZW0ge1xyXG5cdFx0XHQ+IGEge1xyXG5cdFx0XHRcdG9wYWNpdHk6IDAuNztcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cclxuXHRcdCYuaXMtYWN0aXZlIHtcclxuXHRcdFx0PiBhIHtcclxuXHRcdFx0XHRvcGFjaXR5OiAwLjc7XHJcblxyXG5cdFx0XHRcdD4gc3BhbiBzdmcge1xyXG5cdFx0XHRcdFx0dHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHJcblx0XHQ+IGEge1xyXG5cdFx0XHRAaW5jbHVkZSBmb250KDE2cHgsIDE4cHgpO1xyXG5cdFx0XHRkaXNwbGF5OiBibG9jaztcclxuXHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdFx0XHR3aWR0aDogMTAwJTtcclxuXHRcdFx0Zm9udC13ZWlnaHQ6IDYwMDtcclxuXHJcblx0XHRcdD4gc3BhbiB7XHJcblx0XHRcdFx0cGFkZGluZzogMCAyMHB4IDAgNXB4O1xyXG5cdFx0XHRcdGN1cnNvcjogcG9pbnRlcjtcclxuXHJcblx0XHRcdFx0c3ZnIHtcclxuXHRcdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdFx0XHRcdHRvcDogY2FsYyg1MCUgLSA4cHgpO1xyXG5cdFx0XHRcdFx0cmlnaHQ6IDA7XHJcblx0XHRcdFx0XHR3aWR0aDogMThweDtcclxuXHRcdFx0XHRcdGhlaWdodDogMThweDtcclxuXHRcdFx0XHRcdG1hcmdpbi1sZWZ0OiA1cHg7XHJcblx0XHRcdFx0XHR0cmFuc2l0aW9uOiBhbGwgNTAwbXMgZWFzZTtcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHJcblx0XHQuc3VibWVudS1jb250YWluZXIge1xyXG5cdFx0XHRkaXNwbGF5OiBub25lO1xyXG5cdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0XHRcdG1hcmdpbi10b3A6IDEwcHg7XHJcblx0XHRcdHBhZGRpbmc6IDEwcHggMCAwIDEwcHg7XHJcblxyXG5cdFx0XHRsaSB7XHJcblx0XHRcdFx0YSB7XHJcblx0XHRcdFx0XHRAaW5jbHVkZSBmb250KDE0cHgsIDE4cHgpO1xyXG5cdFx0XHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdFx0XHRcdFx0ZGlzcGxheTogYmxvY2s7XHJcblx0XHRcdFx0XHRtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG5cdFx0XHRcdFx0Zm9udC13ZWlnaHQ6IDYwMDtcclxuXHRcdFx0XHR9XHJcblxyXG5cdFx0XHRcdCYuY3VycmVudF9wYWdlX2FuY2VzdG9yLFxyXG5cdFx0XHRcdCYuY3VycmVudC1tZW51LWl0ZW0ge1xyXG5cdFx0XHRcdFx0PiBhIHtcclxuXHRcdFx0XHRcdFx0b3BhY2l0eTogMC43O1xyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdH1cclxuXHJcblx0XHRcdFx0Ji5pcy1hY3RpdmUge1xyXG5cdFx0XHRcdFx0PiBhIHtcclxuXHRcdFx0XHRcdFx0b3BhY2l0eTogMC43O1xyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cclxufVxyXG5cclxuXHJcbi8qKlxyXG4gKiBEaXNhYmxlIHNjcm9sbC5cclxuICovXHJcblxyXG5ib2R5LmlzLWFjdGl2ZSB7XHJcblx0b3ZlcmZsb3c6IGhpZGRlbjtcclxuXHJcblx0LmhlYWRlcjo6YmVmb3JlIHtcclxuXHRcdGJvdHRvbTogMDtcclxuXHR9XHJcbn1cclxuIiwiLm5ld3MtaXRlbSB7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdGhlaWdodDogZml0LWNvbnRlbnQ7XHJcblxyXG5cdCY6aG92ZXIge1xyXG5cdFx0c3ZnIHtcclxuXHRcdFx0bWFyZ2luOiAwIC01cHggMCA1cHg7XHJcblx0XHR9XHJcblxyXG5cdFx0Lm5ld3MtaXRlbV9fYm9keTpiZWZvcmUge1xyXG5cdFx0XHRib3gtc2hhZG93OiAwcHggMnB4IDEycHggJGJsdWUtZGFyay0yMDtcclxuXHRcdH1cclxuXHR9XHJcbn1cclxuXHJcbi5uZXdzLWl0ZW1fX2ltYWdlIHtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0d2lkdGg6IDEwMCU7XHJcblx0aGVpZ2h0OiAyMTVweDtcclxuXHRib3JkZXItcmFkaXVzOiAycHg7XHJcblx0b3ZlcmZsb3c6IGhpZGRlbjtcclxufVxyXG5cclxuLm5ld3MtaXRlbV9fdGl0bGUge1xyXG5cdEBpbmNsdWRlIGZvbnQoMThweCwgMjhweCk7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0d2lkdGg6IDEwMCU7XHJcblx0bWF4LXdpZHRoOiAyOTBweDtcclxuXHRtYXJnaW4tdG9wOiAtNTBweDtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkZ3JlZW4tMTAwO1xyXG5cdGNvbG9yOiAkd2hpdGUtMTAwO1xyXG5cdHBhZGRpbmc6IDVweCAwO1xyXG5cdGZvbnQtd2VpZ2h0OiA2MDA7XHJcblx0ZmxvYXQ6IHJpZ2h0O1xyXG5cclxuXHRzcGFuIHtcclxuXHRcdHdpZHRoOiBjYWxjKDEwMCUgLSA1MHB4KTtcclxuXHRcdGJvcmRlci1yaWdodDogMXB4IHNvbGlkICR3aGl0ZS01MDtcclxuXHRcdHBhZGRpbmc6IDAgMTVweDtcclxuXHR9XHJcblxyXG5cdHN2ZyB7XHJcblx0XHRkaXNwbGF5OiBmbGV4O1xyXG5cdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRcdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cdFx0d2lkdGg6IDUwcHg7XHJcblx0XHRoZWlnaHQ6IDEwMCU7XHJcblx0XHRwYWRkaW5nOiAxOXB4O1xyXG5cdFx0dHJhbnNpdGlvbjogYWxsIDI1MG1zIGVhc2U7XHJcblx0fVxyXG5cclxuXHQmLnRoZW1lLS13YWRkaW54dmVlbiB7XHJcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkbGltZS0xMDA7XHJcblx0XHRjb2xvcjogJGJsdWUtem9kaWFjLTEwMDtcclxuXHJcblx0XHRzcGFuIHtcclxuXHRcdFx0Ym9yZGVyLXJpZ2h0OiAxcHggc29saWQgJGJsdWUtem9kaWFjLTUwO1xyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0Ji50aGVtZS0tYm9kZWdyYXZlbiB7XHJcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkeWVsbG93LTEwMDtcclxuXHRcdGNvbG9yOiAkYmx1ZS16b2RpYWMtMTAwO1xyXG5cclxuXHRcdHNwYW4ge1xyXG5cdFx0XHRib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAkYmx1ZS16b2RpYWMtNTA7XHJcblx0XHR9XHJcblx0fVxyXG59XHJcblxyXG4ubmV3cy1pdGVtX19ib2R5IHtcclxuXHR3aWR0aDogY2FsYygxMDAlIC0gMzBweCk7XHJcblx0b3ZlcmZsb3c6IGhpZGRlbjtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGUtMTAwO1xyXG5cdHBhZGRpbmc6IDE1cHggMTVweCAxMHB4IDE1cHg7XHJcblxyXG5cdCY6YmVmb3JlIHtcclxuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdHRvcDogMDtcclxuXHRcdGxlZnQ6IDA7XHJcblx0XHR3aWR0aDogY2FsYygxMDAlIC0gMzBweCk7XHJcblx0XHRoZWlnaHQ6IDEwMCU7XHJcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGUtMTAwO1xyXG5cdFx0Ym94LXNoYWRvdzogMHB4IDJweCAxMnB4ICRibHVlLWRhcmstMTA7XHJcblx0XHRjb250ZW50OiAnJztcclxuXHRcdHotaW5kZXg6IC0xO1xyXG5cdFx0dHJhbnNpdGlvbjogYWxsIDI1MG1zIGVhc2U7XHJcblx0fVxyXG59XHJcblxyXG4ubmV3cy1pdGVtX190ZWFzZXIge1xyXG5cdEBpbmNsdWRlIGZvbnQoMTZweCwgMjJweCk7XHJcbn1cclxuXHJcbi5uZXdzLWl0ZW1fX2RhdGUge1xyXG5cdEBpbmNsdWRlIGZvbnQoMTJweCwgMTRweCk7XHJcblx0d2lkdGg6IGZpdC1jb250ZW50O1xyXG5cdG1hcmdpbi10b3A6IDEwcHg7XHJcblx0cGFkZGluZzogNXB4IDEwcHg7XHJcblx0Zm9udC13ZWlnaHQ6IDYwMDtcclxuXHRib3JkZXI6IDFweCBzb2xpZCAkYmx1ZS16b2RpYWMtMTAwO1xyXG5cdGJvcmRlci1yYWRpdXM6IDJweDtcclxufVxyXG4iLCIubmV3cy1sYXRlc3Qge1xyXG5cdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtcG9ydHJhaXQtZG93bicpIHtcclxuXHRcdHBhZGRpbmctYm90dG9tOiA0MHB4O1xyXG5cdH1cclxuXHJcblx0cGFkZGluZy1ib3R0b206IDYwcHg7XHJcbn1cclxuXHJcbi5uZXdzLWxhdGVzdF9faGVhZCB7XHJcblx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0bWFyZ2luLWJvdHRvbTogNTBweDtcclxufVxyXG5cclxuLm5ld3MtbGF0ZXN0X19iYWNrIHtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xyXG5cclxuXHQmOmhvdmVyIHtcclxuXHRcdHN2ZyB7XHJcblx0XHRcdG1hcmdpbjogMCAtNXB4IDAgMTVweDtcclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdHN2ZyB7XHJcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0XHR0b3A6IDFweDtcclxuXHRcdHdpZHRoOiAxMnB4O1xyXG5cdFx0aGVpZ2h0OiAxNHB4O1xyXG5cdFx0bWFyZ2luLWxlZnQ6IDEwcHg7XHJcblx0XHRjb2xvcjogJGJsdWUtem9kaWFjLTEwMDtcclxuXHRcdHRyYW5zaXRpb246IGFsbCAyNTBtcyBlYXNlO1xyXG5cdH1cclxufVxyXG5cclxuLm5ld3MtbGF0ZXN0X193cmFwIHtcclxuXHRAaW5jbHVkZSBtZWRpYSgndGFibGV0LWxhbmRzY2FwZS1kb3duJykge1xyXG5cdFx0d2lkdGg6IGNhbGMoMTAwJSArIDIwcHgpO1xyXG5cdFx0bWFyZ2luOiAtMTBweDtcclxuXHR9XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3Bob25lJykge1xyXG5cdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRtYXJnaW46IC0xMHB4IDA7XHJcblx0fVxyXG5cclxuXHR3aWR0aDogY2FsYygxMDAlICsgMzBweCk7XHJcblx0bWFyZ2luOiAtMTVweDtcclxuXHJcblx0Lm5ld3MtaXRlbSB7XHJcblx0XHRAaW5jbHVkZSBtZWRpYSgndGFibGV0LWxhbmRzY2FwZS1kb3duJykge1xyXG5cdFx0XHR3aWR0aDogY2FsYygzMy4zMzMzJSAtIDIwcHgpO1xyXG5cdFx0XHRtYXJnaW46IDEwcHg7XHJcblx0XHR9XHJcblx0XHRAaW5jbHVkZSBtZWRpYSgndGFibGV0LXBvcnRyYWl0LWRvd24nKSB7XHJcblx0XHRcdHdpZHRoOiBjYWxjKDUwJSAtIDIwcHgpO1xyXG5cdFx0fVxyXG5cdFx0QGluY2x1ZGUgbWVkaWEoJ3Bob25lJykge1xyXG5cdFx0XHR3aWR0aDogMTAwJTtcclxuXHRcdFx0bWFyZ2luOiAxMHB4IDA7XHJcblx0XHR9XHJcblxyXG5cdFx0d2lkdGg6IGNhbGMoMzMuMzMzMyUgLSAzMHB4KTtcclxuXHRcdG1hcmdpbjogMTVweDtcclxuXHR9XHJcbn1cclxuIiwiLm5ld3MtbGlzdCB7XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1wb3J0cmFpdC1kb3duJykge1xyXG5cdFx0cGFkZGluZy1ib3R0b206IDQwcHg7XHJcblx0fVxyXG5cclxuXHRwYWRkaW5nLWJvdHRvbTogNjBweDtcclxufVxyXG5cclxuLm5ld3MtbGlzdF9fdGl0bGUge1xyXG5cdG1hcmdpbi1ib3R0b206IDUwcHg7XHJcbn1cclxuXHJcbi5uZXdzLWxpc3RfX3dyYXAge1xyXG5cdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtbGFuZHNjYXBlLWRvd24nKSB7XHJcblx0XHR3aWR0aDogY2FsYygxMDAlICsgMjBweCk7XHJcblx0XHRtYXJnaW46IC0xMHB4O1xyXG5cdH1cclxuXHRAaW5jbHVkZSBtZWRpYSgncGhvbmUnKSB7XHJcblx0XHR3aWR0aDogMTAwJTtcclxuXHRcdG1hcmdpbjogLTEwcHggMDtcclxuXHR9XHJcblxyXG5cdHdpZHRoOiBjYWxjKDEwMCUgKyAzMHB4KTtcclxuXHRtYXJnaW46IC0xNXB4O1xyXG5cclxuXHQubmV3cy1pdGVtIHtcclxuXHRcdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtbGFuZHNjYXBlLWRvd24nKSB7XHJcblx0XHRcdHdpZHRoOiBjYWxjKDMzLjMzMzMlIC0gMjBweCk7XHJcblx0XHRcdG1hcmdpbjogMTBweDtcclxuXHRcdH1cclxuXHRcdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtcG9ydHJhaXQtZG93bicpIHtcclxuXHRcdFx0d2lkdGg6IGNhbGMoNTAlIC0gMjBweCk7XHJcblx0XHR9XHJcblx0XHRAaW5jbHVkZSBtZWRpYSgncGhvbmUnKSB7XHJcblx0XHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0XHRtYXJnaW46IDEwcHggMDtcclxuXHRcdH1cclxuXHJcblx0XHR3aWR0aDogY2FsYygzMy4zMzMzJSAtIDMwcHgpO1xyXG5cdFx0bWFyZ2luOiAxNXB4O1xyXG5cdH1cclxufVxyXG4iLCIubmV3cy1zaW5nbGUge1xyXG5cdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtcG9ydHJhaXQtZG93bicpIHtcclxuXHRcdHBhZGRpbmctYm90dG9tOiA0MHB4O1xyXG5cdH1cclxuXHJcblx0cGFkZGluZy1ib3R0b206IDYwcHg7XHJcbn1cclxuXHJcbi5uZXdzLXNpbmdsZV9faW1hZ2Uge1xyXG5cdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtcG9ydHJhaXQtZG93bicpIHtcclxuXHRcdGhlaWdodDogMzAwcHg7XHJcblx0fVxyXG5cdEBpbmNsdWRlIG1lZGlhKCdwaG9uZScpIHtcclxuXHRcdGhlaWdodDogMjAwcHg7XHJcblx0fVxyXG5cclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0d2lkdGg6IDEwMCU7XHJcblx0aGVpZ2h0OiA0MjBweDtcdFxyXG5cdHotaW5kZXg6IDU7XHJcbn1cclxuXHJcbi5uZXdzLXNpbmdsZV9fYm9keSB7XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1sYW5kc2NhcGUtZG93bicpIHtcclxuXHRcdHBhZGRpbmc6IDIwcHggNDBweCA0MHB4IDQwcHg7XHJcblx0fVxyXG5cdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtcG9ydHJhaXQtZG93bicpIHtcclxuXHRcdHBhZGRpbmc6IDIwcHg7XHJcblx0fVxyXG5cclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0d2lkdGg6IGNhbGMoMTAwJSAtIDIwcHgpO1xyXG5cdG1heC13aWR0aDogMTAyNHB4O1xyXG5cdG1hcmdpbjogLTMwcHggYXV0byAwIGF1dG87XHJcblx0cGFkZGluZzogMjBweCA3MHB4IDQwcHggNzBweDtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGUtMTAwO1xyXG5cdHotaW5kZXg6IDEwO1xyXG59XHJcblxyXG4ubmV3cy1zaW5nbGVfX2hlYWQge1xyXG5cdG1hcmdpbi1ib3R0b206IDQwcHg7XHJcblx0cGFkZGluZy1ib3R0b206IDEwcHg7XHJcblx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRibHVlLXpvZGlhYy0xMDtcclxuXHJcblx0c3Ryb25nIHtcclxuXHRcdG1hcmdpbi1yaWdodDogMTBweDtcclxuXHRcdGZvbnQtd2VpZ2h0OiA3MDA7XHJcblx0fVxyXG59XHJcblxyXG4ubmV3cy1zaW5nbGVfX2RhdGUge1xyXG5cdG1hcmdpbi1yaWdodDogNDBweDtcclxufVxyXG5cclxuLm5ld3Mtc2luZ2xlX190aXRsZSB7XHJcblx0bWFyZ2luLWJvdHRvbTogNDBweDtcclxufVxyXG5cclxuLm5ld3Mtc2luZ2xlX19iYWNrIHtcclxuXHRAaW5jbHVkZSBtZWRpYSgndGFibGV0LXBvcnRyYWl0LWRvd24nKSB7XHJcblx0XHRtYXJnaW46IDQwcHggYXV0byAwIGF1dG87XHJcblx0fVxyXG5cclxuXHR3aWR0aDogY2FsYygxMDAlIC0gMjBweCk7XHJcblx0bWF4LXdpZHRoOiAxMDI0cHg7XHJcblx0bWFyZ2luOiA4MHB4IGF1dG8gMCBhdXRvO1xyXG5cdHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xyXG5cclxuXHRzdmcge1xyXG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdFx0dG9wOiAycHg7XHJcblx0XHR3aWR0aDogMTRweDtcclxuXHRcdGhlaWdodDogMjJweDtcclxuXHRcdG1hcmdpbi1yaWdodDogMTBweDtcclxuXHRcdGNvbG9yOiAkYmx1ZS16b2RpYWMtMTAwO1xyXG5cdFx0dHJhbnNpdGlvbjogYWxsIDI1MG1zIGVhc2U7XHJcblx0fVxyXG5cclxuXHQmOmhvdmVyIHtcclxuXHRcdHN2ZyB7XHJcblx0XHRcdG1hcmdpbi1sZWZ0OiAtNXB4O1xyXG5cdFx0XHRtYXJnaW4tcmlnaHQ6IDE1cHg7XHJcblx0XHR9XHJcblx0fVxyXG59IiwiLnRleHQtaW1hZ2Uge1xyXG5cdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtcG9ydHJhaXQtZG93bicpIHtcclxuXHRcdHBhZGRpbmctYm90dG9tOiA0MHB4O1xyXG5cdH1cclxuXHJcblx0cGFkZGluZy1ib3R0b206IDYwcHg7XHJcblxyXG5cdC53cmFwcGVyIHtcclxuXHRcdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuXHR9XHJcbn1cclxuXHJcbi50ZXh0LWltYWdlX19jb2x1bW4tdGV4dCB7XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1wb3J0cmFpdC1kb3duJykge1xyXG5cdFx0d2lkdGg6IDYwJTtcclxuXHR9XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3Bob25lJykge1xyXG5cdFx0d2lkdGg6IDEwMCU7XHJcblx0fVxyXG5cclxuXHR3aWR0aDogNjclO1xyXG59XHJcblxyXG4udGV4dC1pbWFnZV9fdGl0bGUge1xyXG5cdG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbn1cclxuXHJcbi50ZXh0LWltYWdlX19jb2x1bW4taW1hZ2Uge1xyXG5cdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtcG9ydHJhaXQtZG93bicpIHtcclxuXHRcdHdpZHRoOiBjYWxjKDQwJSAtIDIwcHgpO1xyXG5cdFx0cGFkZGluZy10b3A6IDUwcHg7XHJcblx0fVxyXG5cdEBpbmNsdWRlIG1lZGlhKCdwaG9uZScpIHtcclxuXHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0cGFkZGluZy10b3A6IDMwcHg7XHJcblx0fVxyXG5cclxuXHR3aWR0aDogY2FsYygzMyUgLSAzMHB4KTtcclxuXHRwYWRkaW5nLXRvcDogNjBweDtcclxuXHJcblx0aW1nIHtcclxuXHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0aGVpZ2h0OiBhdXRvO1xyXG5cdFx0Ym9yZGVyLXJhZGl1czogMnB4O1xyXG5cdH1cclxufVxyXG5cclxuLnRleHQtaW1hZ2VfX2ltYWdlLWNhcHRpb24ge1xyXG5cdEBpbmNsdWRlIGZvbnQoMTBweCwgMTJweCk7XHJcblx0bWFyZ2luLXRvcDogMTBweDtcclxuXHRmb250LXdlaWdodDogMzAwO1xyXG59XHJcblxyXG4udGV4dC1pbWFnZV9fbGluayB7XHJcblx0bWFyZ2luLXRvcDogMjBweDtcclxufVxyXG4iLCIubG9naW4tY29udGFpbmVyIHtcclxuXHRAaW5jbHVkZSBtZWRpYSgndGFibGV0LXBvcnRyYWl0LWRvd24nKSB7XHJcblx0XHRtYXJnaW46IDUwcHggYXV0bztcclxuXHR9XHJcblx0bWFyZ2luOiAxMDBweCBhdXRvO1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblxyXG5cdGZvcm0ge1xyXG5cdFx0d2lkdGg6IDEwMCU7XHJcblxyXG5cdFx0cCB7XHJcblx0XHRcdG1hcmdpbi1ib3R0b206IDFlbTtcclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdGxhYmVsIHtcclxuXHRcdG1hcmdpbjogMDtcclxuXHRcdG1hcmdpbi1ib3R0b206IDIwcHg7XHJcblx0fVxyXG5cclxuXHRpbnB1dFt0eXBlPXN1Ym1pdF0ge1xyXG5cdFx0Ym9yZGVyOiAwICFpbXBvcnRhbnQ7XHJcblx0XHRAZXh0ZW5kIC5idXR0b247XHJcblx0XHRAZXh0ZW5kIC50aGVtZS0td2FkZGlueHZlZW47XHJcblx0fVxyXG59IiwiLm5ld3NsZXR0ZXItcG9wdXAge1xyXG5cdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtcG9ydHJhaXQtZG93bicpIHtcclxuXHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0Ym90dG9tOiAwO1xyXG5cdFx0cmlnaHQ6IDA7XHJcblx0XHRwYWRkaW5nOiAxNXB4O1xyXG5cdH1cclxuXHRwb3NpdGlvbjogZml4ZWQ7XHJcblx0Ym90dG9tOiAzMHB4O1xyXG5cdHJpZ2h0OiAzMHB4O1xyXG5cdHotaW5kZXg6IDk5OTk5O1xyXG5cdHdpZHRoOiA1MDBweDtcclxuXHRoZWlnaHQ6IGF1dG87XHJcblx0YmFja2dyb3VuZC1jb2xvcjogJHdoaXRlLTEwMDtcclxuXHRwYWRkaW5nOiAzNXB4O1xyXG5cdGJveC1zaGFkb3c6IDBweCAycHggMTJweCAkYmx1ZS1kYXJrLTEwO1xyXG5cdHRyYW5zaXRpb246IGFsbCAzMDBtcyBlYXNlLWluLW91dDtcclxuXHRwb2ludGVyLWV2ZW50czogYWxsO1xyXG5cdG9wYWNpdHk6IDE7XHJcblxyXG5cdCYuaXMtaGlkZGVuIHtcclxuXHRcdG9wYWNpdHk6IDA7XHJcblx0XHRwb2ludGVyLWV2ZW50czogbm9uZVxyXG5cdH1cclxuXHJcblx0Ji50aGVtZS0ta3JpbXBlbmVyd2FhcmQge1xyXG5cdFx0Lm5ld3NsZXR0ZXItcG9wdXBfX2Zvcm0ge1xyXG5cdFx0XHQuZ2Zvcm1fZm9vdGVyIHtcclxuXHRcdFx0XHQuYnV0dG9uIHtcclxuXHRcdFx0XHRcdEBleHRlbmQgLnRoZW1lLS1rcmltcGVuZXJ3YWFyZDtcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdCYudGhlbWUtLXdhZGRpbnh2ZWVuIHtcclxuXHRcdC5uZXdzbGV0dGVyLXBvcHVwX19mb3JtIHtcclxuXHRcdFx0Lmdmb3JtX2Zvb3RlciB7XHJcblx0XHRcdFx0LmJ1dHRvbiB7XHJcblx0XHRcdFx0XHRAZXh0ZW5kIC50aGVtZS0tYm9kZWdyYXZlbjtcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdCYudGhlbWUtLWJvZGVncmF2ZW4ge1xyXG5cdFx0Lm5ld3NsZXR0ZXItcG9wdXBfX2Zvcm0ge1xyXG5cdFx0XHQuZ2Zvcm1fZm9vdGVyIHtcclxuXHRcdFx0XHQuYnV0dG9uIHtcclxuXHRcdFx0XHRcdEBleHRlbmQgLnRoZW1lLS1ib2RlZ3JhdmVuO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cclxufVxyXG5cclxuLm5ld3NsZXR0ZXItcG9wdXBfX3RpdGxlIHtcclxuXHRAaW5jbHVkZSBtZWRpYSgndGFibGV0LXBvcnRyYWl0LWRvd24nKSB7XHJcblx0XHRtYXJnaW4tYm90dG9tOiAxMHB4XHJcblx0fVxyXG5cdEBleHRlbmQgaDM7XHJcblx0bWFyZ2luLWJvdHRvbTogMjBweDtcclxufVxyXG5cclxuLm5ld3NsZXR0ZXItcG9wdXBfX2Zvcm0ge1xyXG5cdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtcG9ydHJhaXQtZG93bicpIHtcclxuXHRcdG1hcmdpbi10b3A6IDEwcHg7XHJcblx0fVxyXG5cdG1hcmdpbi10b3A6IDIwcHg7XHJcblxyXG5cdC5nZmllbGQge1xyXG5cdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRtYXJnaW4tYm90dG9tOiAwO1xyXG5cdFx0bWFyZ2luLXRvcDogMTBweDtcclxuXHR9XHJcblxyXG5cdC5nZm9ybV9maWVsZHMge1xyXG5cdFx0LmdmaWVsZCB7XHJcblx0XHRcdCY6Zmlyc3QtY2hpbGQge1xyXG5cdFx0XHRcdG1hcmdpbi10b3A6IDA7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdGZvcm0ge1xyXG5cdFx0ZGlzcGxheTogZmxleDtcclxuXHRcdGZsZXgtd3JhcDogd3JhcDtcclxuXHRcdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuXHR9XHJcblxyXG5cdC5nZm9ybV9ib2R5IHtcclxuXHRcdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtcG9ydHJhaXQtZG93bicpIHtcclxuXHRcdFx0d2lkdGg6IDEwMCU7XHJcblx0XHR9XHJcblx0XHR3aWR0aDogY2FsYygxMDAlIC0gMTUwcHgpO1xyXG5cdH1cclxuXHJcblx0Lmdmb3JtX2Zvb3RlciB7XHJcblx0XHRAaW5jbHVkZSBtZWRpYSgndGFibGV0LXBvcnRyYWl0LWRvd24nKSB7XHJcblx0XHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0fVxyXG5cdFx0d2lkdGg6IDE1MHB4O1xyXG5cdFx0bWFyZ2luLXRvcDogOHB4O1xyXG5cdFx0YWxpZ24taXRlbXM6IGZsZXgtZW5kO1xyXG5cclxuXHRcdC5idXR0b24ge1xyXG5cdFx0XHRAaW5jbHVkZSBtZWRpYSgndGFibGV0LXBvcnRyYWl0LWRvd24nKSB7XHJcblx0XHRcdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcbn1cclxuXHJcbi5uZXdzbGV0dGVyLXBvcHVwX19jbG9zZSB7XHJcblx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdHRvcDogMTVweDtcclxuXHRyaWdodDogMTVweDtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0dHJhbnNpdGlvbjogYWxsIDMwMG1zIGVhc2UtaW4tb3V0O1xyXG5cclxuXHRzdmcge1xyXG5cdFx0d2lkdGg6IDI1cHg7XHJcblx0XHRoZWlnaHQ6IDI1cHg7XHJcblxyXG5cdFx0cGF0aCB7XHJcblx0XHRcdGZpbGw6ICRibHVlLWRhcmstMTAwO1xyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0Jjpob3ZlciB7XHJcblx0XHRvcGFjaXR5OiAwLjc7XHJcblx0fVxyXG59IiwiLyoqXHJcbiAqIENvbG9yIHV0aWxpdHkgY2xhc3Nlcy5cclxuICpcclxuICogQXV0b21hdGljYWxseSBnZW5lcmF0ZWQgY29sb3IgYW5kIGJhY2tncm91bmQgY29sb3IgdXRpbGl0eSBjbGFzc2VzIGJhc2VkIG9uIGV2ZXJ5IGNvbG9yIGRlZmluaXRpb24gaW4gYHNldHRpbmdzL19jb2xvci5zY3NzYC5cclxuICogTG9vcCB0aHJvdWdoIGV2ZXJ5IGAka2V5YCBhbmQgYCRtYXBgIGluIHRoZSBgJGNvbG9yc2AgdmFyaWFibGUgbWFwIGRlZmluZWQgaW4gYHNldHRpbmdzL19jb2xvci5zY3NzYC5cclxuICovXHJcbiBcclxuQGVhY2ggJGtleSwgJG1hcCBpbiAkY29sb3JzIHtcclxuXHJcblx0Ly8gTG9vcCB0aHJvdWdoIGV2ZXJ5IGAkc2hhZGVgIGFuZCBgJHJnYmAgaW4gYCRtYXBgLlxyXG5cdEBlYWNoICRzaGFkZSwgJHJnYiBpbiAkbWFwIHtcclxuXHJcblx0XHQvLyBMb29wIHRocm91Z2ggZXZlcnkgYGNvbG9yYCBhbmQgYGJhY2tncm91bmQtY29sb3JgIHJ1bGVzLlxyXG5cdFx0QGVhY2ggJHJ1bGUgaW4gY29sb3IsIGJhY2tncm91bmQtY29sb3Ige1xyXG5cclxuXHRcdFx0LyoqXHJcblx0XHRcdCAqIGAjeyRydWxlfWAgI3skcmdifS0jeyRzaGFkZX0gY29sb3IgdXRpbGl0eS5cclxuXHRcdFx0ICovXHJcblxyXG5cdFx0XHQuI3skcnVsZX0tI3t1bnF1b3RlKCRrZXkpfS0je3VucXVvdGUoJHNoYWRlKX0ge1xyXG5cdFx0XHRcdCN7JHJ1bGV9OiAkcmdiO1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG59XHJcbiIsIi8qKlxyXG4gKiBWaXN1YWxseSBoaWRlIGFueSBlbGVtZW50IGZyb20gdGhlIHVzZXIuXHJcbiAqL1xyXG5cclxuLnZpc3VhbGx5LWhpZGRlbiB7XHJcblx0ZGlzcGxheTogYmxvY2s7XHJcblx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdHdpZHRoOiAxcHg7XHJcblx0aGVpZ2h0OiAxcHg7XHJcblx0d2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG5cdGNsaXA6IHJlY3QoMXB4LCAxcHgsIDFweCwgMXB4KTtcclxuXHRjbGlwLXBhdGg6IGluc2V0KDFweCk7XHJcbn1cclxuXHJcblxyXG4vKipcclxuICogTWFrZSBsYXp5bG9hZCBwbGFjZWhvbGRlciAxMDAlIHdpZGUuXHJcbiAqL1xyXG5cclxuLmxhenlsb2FkIHtcclxuXHR3aWR0aDogMTAwJTtcclxufVxyXG5cclxuXHJcbi8qKlxyXG4gKiBIZWxwZXIgY2xhc3MgZm9yIG9iamVjdCBmaXQgcG9seWZpbGwuIEFkZCB0aGlzIGNsYXNzIHRvIGFueSBlbGVtZW50XHJcbiAqIHRoYXQgdXRpbGl6ZXMgdGhlIGBvYmplY3QtZml0YCBwcm9wZXJ0eS5cclxuICovXHJcblxyXG4lb2JqZWN0LWZpdCxcclxuLm9iamVjdC1maXQge1xyXG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHR0b3A6IDA7XHJcblx0cmlnaHQ6IDA7XHJcblx0Ym90dG9tOiAwO1xyXG5cdGxlZnQ6IDA7XHJcblx0d2lkdGg6IDEwMCU7XHJcblx0aGVpZ2h0OiAxMDAlO1xyXG5cdGZvbnQtZmFtaWx5OiAnb2JqZWN0LWZpdDogY292ZXI7JztcclxuXHRvYmplY3QtZml0OiBjb3ZlcjtcclxufVxyXG5cclxuXHJcbi8qKlxyXG4gKiBBbGlnbiBjZW50ZXIuXHJcbiAqL1xyXG5cclxuLmFsaWduLWNlbnRlciB7XHJcblx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG59XHJcblxyXG4vKipcclxuICogQWxpZ24gbGVmdC5cclxuICovXHJcblxyXG4uYWxpZ24tbGVmdCB7XHJcblx0dGV4dC1hbGlnbjogbGVmdDtcclxufVxyXG5cclxuLyoqXHJcbiAqIEFsaWduIHJpZ2h0LlxyXG4gKi9cclxuXHJcbi5hbGlnbi1yaWdodCB7XHJcblx0dGV4dC1hbGlnbjogcmlnaHQ7XHJcbn1cclxuIiwiLyoqXHJcbiAqIE9iamVjdCBmaXQuXHJcbiAqXHJcbiAqIDEuIEZvbnQgZmFtaWx5IHBvbHlmaWxsIHdpdGggKGh0dHBzOi8vZ2l0aHViLmNvbS9iZnJlZC1pdC9vYmplY3QtZml0LWltYWdlcykuXHJcbiAqIExvb3AgdGhyb3VnaCBldmVyeSB2YWx1ZSBmb3IgdGhlIGBvYmplY3QtZml0YCBwcm9wZXJ0eS5cclxuICovXHJcblxyXG5AZWFjaCAkdmFsdWUgaW4gZmlsbCwgY29udGFpbiwgY292ZXIsIG5vbmUsIHNjYWxlLWRvd24ge1xyXG5cclxuXHQvKipcclxuXHQgKiBgb2JqZWN0LWZpdGAgI3skdmFsdWV9IHV0aWxpdHkgY2xhc3MuXHJcblx0ICovXHJcblxyXG5cdC4jeyR2YWx1ZX0ge1xyXG5cdFx0Zm9udC1mYW1pbHk6ICdvYmplY3QtZml0OiAjeyR2YWx1ZX07JzsgLyogMSAqL1xyXG5cdFx0b2JqZWN0LWZpdDogI3skdmFsdWV9O1xyXG5cdH1cclxufVxyXG4iLCIvKipcclxuICogUG9zaXRpb24gdXRpbGl0eSBjbGFzcy5cclxuICovXHJcblxyXG5AZWFjaCAkdmFsdWUgaW4gc3RhdGljLCByZWxhdGl2ZSwgYWJzb2x1dGUsIGZpeGVkLCBzdGlja3kge1xyXG5cdC4jeyR2YWx1ZX0ge1xyXG5cdFx0cG9zaXRpb246ICR2YWx1ZTtcclxuXHR9XHJcbn1cclxuIiwiXHJcbi8qKlxyXG4gKiBGb250IGZhbWlseSB1dGlsaXR5IGNsYXNzZXMuXHJcbiAqL1xyXG5cclxuQGVhY2ggJGtleSwgJGJyZWFrcG9pbnQgaW4gJGJyZWFrcG9pbnRzIHtcclxuXHRAaW5jbHVkZSBtZWRpYSgkYnJlYWtwb2ludCkge1xyXG5cdFx0QGVhY2ggJHByb3BlcnR5LCAkdmFsdWUgaW4gJGZvbnQtZmFtaWx5IHtcclxuXHRcdFx0LnRleHQtI3ska2V5fS0jeyRwcm9wZXJ0eX0ge1xyXG5cdFx0XHRcdGZvbnQtZmFtaWx5OiBtYXAtZ2V0KCRmb250LWZhbWlseSwgJHByb3BlcnR5KTtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cclxufVxyXG5cclxuXHJcbi8qKlxyXG4gKiBUZXh0IHNpemUgdXRpbGl0eSBjbGFzc2VzLlxyXG4gKi9cclxuXHJcbkBlYWNoICRrZXksICRicmVha3BvaW50IGluICRicmVha3BvaW50cyB7XHJcblx0QGluY2x1ZGUgbWVkaWEoJGJyZWFrcG9pbnQpIHtcclxuXHRcdEBlYWNoICRwcm9wZXJ0eSwgJHZhbHVlIGluICRmb250LXNpemUge1xyXG5cdFx0XHQudGV4dC0jeyRrZXl9LSN7JHByb3BlcnR5fSB7XHJcblx0XHRcdFx0QGluY2x1ZGUgdGV4dCgkcHJvcGVydHkpO1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG59XHJcblxyXG5cclxuLyoqXHJcbiAqIFRleHQgYWxpZ25tZW50IHV0aWxpdHkgY2xhc3Nlcy5cclxuICovXHJcblxyXG5AZWFjaCAka2V5LCAkYnJlYWtwb2ludCBpbiAkYnJlYWtwb2ludHMge1xyXG5cdEBpbmNsdWRlIG1lZGlhKCRicmVha3BvaW50KSB7XHJcblx0XHRAZWFjaCAkZGlyZWN0aW9uIGluIGxlZnQsIHJpZ2h0LCBjZW50ZXIge1xyXG5cdFx0XHQudGV4dC0jeyRrZXl9LSN7JGRpcmVjdGlvbn0ge1xyXG5cdFx0XHRcdHRleHQtYWxpZ246ICRkaXJlY3Rpb247XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcbn1cclxuXHJcblxyXG4vKipcclxuICogRm9udCB3ZWlnaHQgdXRpbGl0eSBjbGFzc2VzLlxyXG4gKlxyXG4gKiAxLiBNdWx0aXBseSBsb29wZWQgaW50ZWdlciBieSAxMDAgZm9yIGNvcnJlY3QgZm9udCB3ZWlnaHQgdmFsdWUuXHJcbiAqL1xyXG5cclxuQGVhY2ggJGtleSwgJGJyZWFrcG9pbnQgaW4gJGJyZWFrcG9pbnRzIHtcclxuXHRAaW5jbHVkZSBtZWRpYSgkYnJlYWtwb2ludCkge1xyXG5cdFx0QGZvciAkaSBmcm9tIDEgdGhyb3VnaCA5IHtcclxuXHRcdFx0JGk6ICRpICogMTAwOyAvLyBbMV1cclxuXHJcblx0XHRcdC50ZXh0LSN7JGtleX0tI3skaX0ge1xyXG5cdFx0XHRcdGZvbnQtd2VpZ2h0OiAjeyRpfTtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cclxufVxyXG5cclxuXHJcbi8qKlxyXG4gKiBUZXh0IHRyYW5zZm9ybSB1aXRsaXR5IGNsYXNzZXMuXHJcbiAqL1xyXG5cclxuQGVhY2ggJGtleSwgJGJyZWFrcG9pbnQgaW4gJGJyZWFrcG9pbnRzIHtcclxuXHRAaW5jbHVkZSBtZWRpYSgkYnJlYWtwb2ludCkge1xyXG5cdFx0QGVhY2ggJHRyYW5zZm9ybSBpbiBjYXBpdGFsaXplLCB1cHBlcmNhc2UsIGxvd2VyY2FzZSwgbm9uZSwgZnVsbC13aWR0aCB7XHJcblx0XHRcdC50ZXh0LSN7JGtleX0tI3skdHJhbnNmb3JtfSB7XHJcblx0XHRcdFx0dGV4dC10cmFuc2Zvcm06ICR0cmFuc2Zvcm07XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcbn1cclxuIiwiLyoqXHJcbiAqIFZlcnRpY2FsIFJoeXRobS5cclxuICovXHJcbiBcclxuQGZvciAkaSBmcm9tIDAgdGhyb3VnaCAxMCB7XHJcblx0JGk6ICRpICogODtcclxuXHJcblx0LnZyLSN7JGl9IHtcclxuXHRcdG1hcmdpbi1ib3R0b206ICN7JGl9cHg7XHJcblx0fVxyXG59XHJcbiIsIi8qKlxyXG4gKiBVdGlsaXR5IGNsYXNzZXMgZm9yIG1hbmlwdWxhdGluZyBzdGFja2luZyBvcmRlciBpbiBIVE1MLlxyXG4gKi9cclxuXHJcbkBlYWNoICRrZXksICR2YWx1ZSBpbiAkei1pbmRleCB7XHJcblx0LnotaW5kZXgtI3ska2V5fSB7XHJcblx0XHR6LWluZGV4OiAkdmFsdWU7XHJcblx0fVxyXG59XHJcbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQ0ZIOztHQUVHO0FDRkg7O0dBRUc7QUFRSDs7R0FFRztBQVVIOztHQUVHO0FDeEJIOzs7R0FHRztBQW9FSDs7R0FFRztBRXpFSDs7R0FFRztBQWVIOztHQUVHO0FBTUg7O0dBRUc7QUFlSDs7R0FFRztBQU1ILEFBQUEsQ0FBQyxBQUFBLFdBQVcsQ0FBQztFQUNYLGdCQUFnQixFRkNULE9BQTRCO0VFQW5DLEtBQUssRUZ6Q0UsS0FBb0IsR0UwQzVCOztBQUVEOztHQUVHO0FMbkRIOztHQUVHO0FNUkgsNEVBQTRFO0FBRTVFO2dGQUNnRjtBQUVoRjs7O0dBR0c7QUFFSCxBQUFBLElBQUksQ0FBQztFQUNILFdBQVcsRUFBRSxJQUFJO0VBQUUsT0FBTztFQUMxQix3QkFBd0IsRUFBRSxJQUFJO0VBQUUsT0FBTyxFQUN4Qzs7QUFFRDtnRkFDZ0Y7QUFFaEY7O0dBRUc7QUFFSCxBQUFBLElBQUksQ0FBQztFQUNILE1BQU0sRUFBRSxDQUFDLEdBQ1Y7O0FBRUQ7O0dBRUc7QUFFSCxBQUFBLElBQUksQ0FBQztFQUNILE9BQU8sRUFBRSxLQUFLLEdBQ2Y7O0FBRUQ7OztHQUdHO0FBRUgsQUFBQSxFQUFFLENBQUM7RUFDRCxTQUFTLEVBQUUsR0FBRztFQUNkLE1BQU0sRUFBRSxRQUFRLEdBQ2pCOztBQUVEO2dGQUNnRjtBQUVoRjs7O0dBR0c7QUFFSCxBQUFBLEVBQUUsQ0FBQztFQUNELFVBQVUsRUFBRSxXQUFXO0VBQUUsT0FBTztFQUNoQyxNQUFNLEVBQUUsQ0FBQztFQUFFLE9BQU87RUFDbEIsUUFBUSxFQUFFLE9B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 */
