@charset "UTF-8";
/**
 * Settings.
 */
/**
 * Settings.
 */
/**
 * Font family map.
 */
/**
 * Font size map.
 */
/**
 * Line height map.
 */
/**
 * Grid.
 */
/**
 * Assets.
 */
/**
 * Body.
 */
/**
 * Other.
 */
*::selection {
  background-color: #009ec5;
  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: 15px;
  font-size: 1.5rem;
  line-height: 2em;
  min-height: 100vh;
  background-color: white;
  color: #363636;
  font-family: "Ubuntu";
  letter-spacing: 0.4px;
  text-rendering: optimizeLegibility;
  -moz-osx-font-smoothing: grayscale;
  /* 1 */
  -webkit-font-smoothing: antialiased;
  /* 2 */ }

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

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

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

figure {
  margin: 0; }

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

hr {
  margin: 0;
  padding: 0; }

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

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

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

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

p {
  margin: 0; }

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

strong {
  font-weight: 700; }

/**
 * Objects.
 */
.background {
  position: relative; }
  .background:after {
    display: flex;
    position: absolute;
    content: '';
    z-index: 1;
    background-repeat: no-repeat; }
  .background * {
    position: relative;
    z-index: 2; }

.background--content:after {
  width: 373px;
  height: 353px;
  background: url("./../images/element-01.svg"); }

.background--navigation:after {
  width: 373px;
  height: 353px;
  background: url("./../images/element-02.svg"); }

.background--header:after {
  width: 543px;
  height: 557px;
  background: url("./../images/element-03.svg"); }

.background--pagination:after {
  width: 26px;
  height: 15px;
  background: url("./../images/element-11.svg"); }

.background--hover:after {
  width: 67px;
  height: 58px;
  background: url("./../images/element-05.svg"); }

.background--about:after {
  width: 544px;
  height: 395px;
  background: url("./../images/element-06.svg"); }

.background--cahier:after {
  width: 713px;
  height: 189px;
  background: url("./../images/element-07.svg"); }

.background--order:after {
  width: 93px;
  height: 272px;
  background: url("./../images/element-08.svg"); }

.background--mini-cart:after {
  width: 164px;
  height: 108px;
  background: url("./../images/element-09.svg"); }

/**
 * Button.
 */
.mini-cart__wrap .woocommerce-mini-cart__buttons > a, .woocommerce-form-login-toggle .woocommerce-info > a, .woocommerce-checkout-payment .button, .cart-empty a,
.woocommerce-message a,
.button {
  font-size: 15px;
  font-size: 1.5rem;
  line-height: 1.33333em;
  display: inline-flex;
  height: 40px;
  padding: 10px 20px;
  border-radius: 2px;
  transition: all 250ms ease;
  cursor: pointer;
  letter-spacing: 0.42px;
  font-weight: 500; }
  .mini-cart__wrap .woocommerce-mini-cart__buttons > a:hover, .woocommerce-form-login-toggle .woocommerce-info > a:hover, .woocommerce-checkout-payment .button:hover, .cart-empty a:hover,
  .woocommerce-message a:hover,
  .button:hover {
    border-radius: 10px 2px 10px 2px; }

/**
 * Button (blue).
 */
.cart-totals .button, .mini-cart__wrap .woocommerce-mini-cart__buttons > a, .woocommerce-checkout-payment .button, .woocommerce-form-login__submit, .woocommerce-MyAccount-content form .button, .woocommerce-ResetPassword .woocommerce-Button,
.button--blue {
  background-color: #009ec5;
  border: 1px solid #009ec5;
  color: white; }

/**
 * Button (border-grey).
 */
.woocommerce-form-login-toggle .woocommerce-info > a, .cart-empty a,
.woocommerce-message a,
.button--border-grey {
  background-color: white;
  border: 1px solid #535353;
  color: #535353;
  opacity: 0.7; }

/**
 * Button (border-blue).
 */
.button--border-blue {
  background-color: white;
  border: 1px solid #009ec5;
  color: #009ec5; }

/**
 * Button (border-white).
 */
.button--border-white {
  background-color: #009ec5;
  border: 1px solid white;
  color: white; }

/**
 * Button (big).
 */
.button--big {
  justify-content: center;
  min-width: 295px;
  height: 70px;
  padding: 25px;
  background-color: white;
  border: 1px solid white;
  color: #009ec5; }
  .button--big svg {
    width: 14px;
    height: 22px;
    margin-left: 10px;
    color: #009ec5;
    transition: all 250ms ease; }
  .button--big:hover svg {
    margin-left: 20px;
    margin-right: -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: 7px;
  font-weight: bold;
  color: #535353; }

.woocommerce-input-wrapper .select2-selection,
select,
input,
textarea {
  font-size: 13px;
  font-size: 1.3rem;
  line-height: 1.07692em;
  width: 100%;
  height: 45px;
  border-radius: 2px;
  padding: 15px 20px;
  background-color: #dcecf0;
  letter-spacing: 0.33px; }

textarea {
  height: 300px;
  padding-top: 20px; }

.ginput_container_select {
  position: relative;
  width: 100%;
  overflow: hidden;
  background-color: #dcecf0; }
  .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;
    z-index: 2; }

input[type='radio'],
input[type='checkbox'] {
  width: 16px;
  height: 16px;
  border: 1px solid #006881;
  background-color: white; }
  input[type='radio']:checked,
  input[type='checkbox']:checked {
    background-color: #006881; }

input[type='radio'] {
  border-radius: 20px; }

/**
 * WooCommerce.
 */
.woocommerce-input-wrapper .select2-selection {
  padding: 9px 20px;
  border: 0; }

.woocommerce-input-wrapper .select2-selection__arrow {
  height: 100% !important;
  right: 10px !important; }

/**
 * Gravity Forms.
 */
.gfield {
  margin-bottom: 25px; }

.gform_validation_container {
  display: none; }

.validation_message {
  font-size: 13px;
  font-size: 1.3rem;
  line-height: 2.30769em;
  margin-top: 5px;
  color: #006881;
  font-style: italic; }

.woocommerce-error,
.validation_error {
  position: relative;
  margin: 0 0 50px;
  padding: 25px 25px 25px 75px;
  background: rgba(195, 0, 0, 0.08);
  color: #c30000; }
  .woocommerce-error > svg,
  .validation_error > svg {
    position: absolute;
    top: calc(50% - 15px);
    left: 30px;
    width: 31px;
    height: 30px;
    color: #c30000; }
  .woocommerce-error .close-button,
  .validation_error .close-button {
    position: absolute;
    top: 5px;
    right: 10px;
    cursor: pointer; }
    .woocommerce-error .close-button svg,
    .validation_error .close-button svg {
      width: 16px;
      height: 16px;
      color: #363636; }

.gform_confirmation_message {
  width: 100%;
  padding: 50px;
  background: #dcecf0; }
  .gform_confirmation_message br {
    display: none; }
  .gform_confirmation_message h4 {
    display: flex;
    align-items: center;
    margin-bottom: 20px; }
    .gform_confirmation_message h4 svg {
      width: 28px;
      height: 28px;
      margin-right: 20px;
      border-radius: 20px;
      background-color: white;
      padding: 5px;
      color: #9c9e9f; }

/**
 * Heading.
 */
h1,
h2,
h3,
h4,
h5,
.woocommerce-form-login-toggle .woocommerce-info,
.woocommerce-MyAccount-content form fieldset legend,
.woocommerce-MyAccount-navigation .woocommerce-MyAccount-navigation-link--dashboard.is-active a,
.woocommerce-MyAccount-navigation .woocommerce-MyAccount-navigation-link--dashboard a,
.heading {
  color: #006881;
  font-weight: bold;
  letter-spacing: 1.39px; }
  h1.is-grey,
  h2.is-grey,
  h3.is-grey,
  h4.is-grey,
  h5.is-grey,
  .woocommerce-form-login-toggle .is-grey.woocommerce-info,
  .woocommerce-MyAccount-content form fieldset legend.is-grey,
  .woocommerce-MyAccount-navigation .woocommerce-MyAccount-navigation-link--dashboard a.is-grey,
  .heading.is-grey {
    color: #363636; }
  h1.is-blue,
  h2.is-blue,
  h3.is-blue,
  h4.is-blue,
  h5.is-blue,
  .woocommerce-form-login-toggle .is-blue.woocommerce-info,
  .woocommerce-MyAccount-content form fieldset legend.is-blue,
  .woocommerce-MyAccount-navigation .woocommerce-MyAccount-navigation-link--dashboard a.is-blue,
  .heading.is-blue {
    color: #009ec5; }
  h1.is-white,
  h2.is-white,
  h3.is-white,
  h4.is-white,
  h5.is-white,
  .woocommerce-form-login-toggle .is-white.woocommerce-info,
  .woocommerce-MyAccount-content form fieldset legend.is-white,
  .woocommerce-MyAccount-navigation .woocommerce-MyAccount-navigation-link--dashboard a.is-white,
  .heading.is-white {
    color: white; }

/**
 * Heading 1.
 */
h1,
.heading-1 {
  font-size: 50px;
  font-size: 5rem;
  line-height: 1.14em;
  letter-spacing: 1.1px; }
  @media only screen and (max-width: 899px) {
    h1,
    .heading-1 {
      font-size: 35px;
      font-size: 3.5rem;
      line-height: 1.17143em;
      letter-spacing: 0.97px; } }

/**
 * Heading 2.
 */
h2,
.heading-2 {
  font-size: 40px;
  font-size: 4rem;
  line-height: 1.15em;
  letter-spacing: 1.11px; }

/**
 * Heading 3.
 */
h3,
.heading-3 {
  font-size: 25px;
  font-size: 2.5rem;
  line-height: 1.16em;
  letter-spacing: 0.69px; }

/**
 * Heading 4.
 */
h4,
.woocommerce-form-login-toggle .woocommerce-info,
.woocommerce-MyAccount-content form fieldset legend,
.woocommerce-MyAccount-navigation .woocommerce-MyAccount-navigation-link--dashboard.is-active a,
.woocommerce-MyAccount-navigation .woocommerce-MyAccount-navigation-link--dashboard a,
.heading-4 {
  font-size: 20px;
  font-size: 2rem;
  line-height: 1.2em;
  letter-spacing: 0.56px; }

/**
 * Heading 5.
 */
h5,
.heading-5 {
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.375em;
  letter-spacing: 0.44px; }

/**
 * Heading Background.
 */
.heading-background {
  font-size: 150px;
  font-size: 15rem;
  line-height: 0.86667em;
  letter-spacing: 4.17px;
  font-weight: bold;
  color: rgba(0, 104, 129, 0.08); }
  @media only screen and (max-width: 599px) {
    .heading-background {
      font-size: 80px;
      font-size: 8rem;
      line-height: 1.625em;
      letter-spacing: 2.22px;
      color: rgba(0, 104, 129, 0.05); } }

/**
 * Label.
 */
.label {
  font-size: 15px;
  font-size: 1.5rem;
  line-height: 2em;
  display: inline-flex; }
  @media only screen and (max-width: 599px) {
    .label.has-mobile-background {
      font-size: 13px;
      font-size: 1.3rem;
      line-height: 2.30769em;
      width: 100%;
      margin: 0 0 5px 0;
      padding: 0 20px;
      background-color: rgba(0, 104, 129, 0.08); }
      .label.has-mobile-background:before {
        width: 15px; }
      .label.has-mobile-background svg {
        height: 15px;
        position: relative;
        top: 6px;
        width: 15px; } }
  .label.is-white {
    color: white; }
  .label.is-grey {
    color: #363636; }
  .label.is-blue-lagoon {
    color: rgba(0, 104, 129, 0.5); }
  .label.is-light {
    font-weight: 300; }
  .label svg {
    margin-right: 10px; }

.label--date svg {
  width: 14px;
  height: 30px; }

.label--minutes svg {
  width: 14px;
  height: 30px; }

.label--depth {
  position: relative; }
  .label--depth:before {
    display: block;
    position: relative;
    top: 7px;
    left: 0;
    width: 8px;
    height: 15px;
    margin-right: 10px;
    content: ''; }
  .label--depth.normal:before {
    background: url("./../images/general.svg") no-repeat; }
  .label--depth.in-depth:before {
    background: url("./../images/in-depth.svg") no-repeat; }
  .label--depth.less-in-depth:before {
    background: url("./../images/less-in-depth.svg") no-repeat; }

/**
 * Label (Post Type).
 */
.label-post-type {
  position: absolute;
  top: 0;
  right: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 190px;
  height: 30px;
  background-color: rgba(255, 255, 255, 0.8);
  border-radius: 0 0 0 5px;
  z-index: 10; }
  .label-post-type svg {
    width: 20px;
    height: 30px;
    margin-right: 10px; }
    .label-post-type svg.fa-file {
      width: 12px;
      height: 30px; }
    .label-post-type svg.fa-copy {
      width: 19px;
      height: 17px; }
    .label-post-type svg.fa-book {
      width: 17px;
      height: 15px; }

.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; }

.link {
  font-size: 15px;
  font-size: 1.5rem;
  line-height: 1.33333em;
  color: #009ec5;
  font-weight: 500;
  transition: all 250ms ease; }
  .link.has-svg-right svg {
    margin-left: 10px; }
  .link.has-svg-left svg {
    margin-right: 10px; }
  .link.is-grey {
    color: #535353; }
  .link svg {
    position: relative;
    top: 2px;
    width: 10px;
    height: 16px;
    transition: all 250ms ease; }
    .link svg.fa-long-arrow-right {
      width: 15px;
      height: 14px; }
    .link svg.fa-eye {
      top: 4px;
      width: 16px;
      height: 16px; }
    .link svg.fa-angle-down {
      top: 4px; }
  .link:hover {
    color: #006881; }

.owl-carousel .owl-stage-outer {
  width: 9999px;
  overflow: visible; }

.owl-carousel .owl-stage {
  display: flex; }

.owl-carousel .owl-nav {
  display: flex;
  position: absolute;
  top: -90px;
  right: 0; }
  @media only screen and (max-width: 599px) {
    .owl-carousel .owl-nav {
      right: auto; } }
  .owl-carousel .owl-nav button.owl-prev,
  .owl-carousel .owl-nav button.owl-next {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    background-color: white;
    border: 2px solid whitesmoke;
    border-radius: 5px;
    transition: all 250ms ease; }
    .owl-carousel .owl-nav button.owl-prev svg,
    .owl-carousel .owl-nav button.owl-next svg {
      position: relative;
      top: 3px;
      width: 14px;
      height: 14px;
      color: #009ec5;
      transition: all 250ms ease; }
    .owl-carousel .owl-nav button.owl-prev.owl-next,
    .owl-carousel .owl-nav button.owl-next.owl-next {
      margin-left: 10px; }
    .owl-carousel .owl-nav button.owl-prev:hover,
    .owl-carousel .owl-nav button.owl-next:hover {
      background-color: #009ec5;
      border: 2px solid #009ec5; }
      .owl-carousel .owl-nav button.owl-prev:hover svg,
      .owl-carousel .owl-nav button.owl-next:hover svg {
        color: white; }
    .owl-carousel .owl-nav button.owl-prev.disabled,
    .owl-carousel .owl-nav button.owl-next.disabled {
      background-color: white;
      border: 2px solid whitesmoke;
      cursor: default; }
      .owl-carousel .owl-nav button.owl-prev.disabled svg,
      .owl-carousel .owl-nav button.owl-next.disabled svg {
        color: whitesmoke; }

.pagination {
  justify-content: center;
  width: 100%;
  margin-bottom: 80px;
  padding: 50px 0 75px 0; }
  @media only screen and (max-width: 899px) {
    .pagination {
      margin-bottom: 50px; } }
  .pagination .page-numbers {
    font-size: 20px;
    font-size: 2rem;
    line-height: 1.2em;
    display: flex;
    justify-content: center;
    align-items: center;
    margin-right: 10px;
    transition: all 250ms ease;
    color: black;
    font-weight: 300; }
    .pagination .page-numbers.current {
      color: #006881;
      font-weight: bold; }
    .pagination .page-numbers.prev, .pagination .page-numbers.next {
      margin-right: 15px; }
      .pagination .page-numbers.prev svg, .pagination .page-numbers.next svg {
        position: relative;
        width: 15px;
        height: 30px;
        color: #363636;
        transition: all 250ms ease; }
      .pagination .page-numbers.prev:hover svg, .pagination .page-numbers.next:hover svg {
        color: #009ec5; }
    .pagination .page-numbers.next {
      margin-right: 0;
      margin-left: 5px; }
  .pagination a:hover {
    color: #009ec5; }

.pagination__wrap {
  width: fit-content; }
  .pagination__wrap:after {
    width: calc(100% + 10px);
    height: 15px;
    left: -5px;
    top: calc(100% + 10px);
    background-repeat: repeat-x; }

/**
 * 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 (login)
 */
.wrapper--login {
  max-width: calc(610px + 100px);
  padding: 0 50px;
  width: 100%;
  margin: 0 auto;
  position: initial;
  margin-top: 165px; }
  @media only screen and (max-width: 899px) {
    .wrapper--login {
      margin-top: 95px; } }
  .wrapper--login:after {
    top: 200px;
    right: 0; }

/**
 * Components.
 */
.contact-form {
  padding: 80px 0; }
  @media only screen and (max-width: 899px) {
    .contact-form {
      padding: 50px 0; } }
  .contact-form:after {
    left: 0;
    bottom: 80px;
    transform: scale(-1, 1); }
    @media only screen and (max-width: 899px) {
      .contact-form:after {
        bottom: 50px;
        display: none; } }

.contact-form__contact {
  width: 50%;
  padding-right: 50px; }
  @media only screen and (max-width: 899px) {
    .contact-form__contact {
      width: 100%;
      padding: 0 0 100px 0; } }
  .contact-form__contact svg {
    display: block;
    width: 16px;
    height: 30px;
    margin-bottom: 10px;
    color: #535353; }
  .contact-form__contact .is-intro strong {
    font-weight: 300; }
  .contact-form__contact a.is-intro {
    display: block;
    margin-top: 40px;
    color: #009ec5;
    text-decoration: underline; }
    .contact-form__contact a.is-intro:hover {
      color: #006881; }

.contact-form__title {
  margin-bottom: 50px; }

.contact-form__form-wrap {
  width: 50%; }
  @media only screen and (max-width: 899px) {
    .contact-form__form-wrap {
      width: 100%;
      max-width: 500px; } }

.content-default {
  margin: 180px 0 80px 0; }
  @media only screen and (max-width: 899px) {
    .content-default {
      margin: 130px 0 50px 0; } }
  @media only screen and (max-width: 899px) {
    .content-default .wrapper {
      padding: 0; } }

.content-default__body {
  max-width: 1030px;
  margin: 0 auto;
  padding: 75px 100px;
  border-radius: 5px 5px 50px 5px;
  background-color: white; }
  @media only screen and (max-width: 899px) {
    .content-default__body {
      padding: 50px 20px;
      border-radius: 0; } }
  .content-default__body:after {
    top: -80px;
    right: -65px;
    z-index: -1; }
    @media only screen and (max-width: 899px) {
      .content-default__body:after {
        right: auto;
        left: 0; } }
  .content-default__body.background-is-grey {
    background-color: whitesmoke; }
  .content-default__body.background-is-blue {
    background-color: #dcecf0; }

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

.content-introduction {
  position: relative;
  margin: 80px 0;
  padding: 100px 0 110px 0;
  background: #dcecf0; }
  @media only screen and (max-width: 899px) {
    .content-introduction {
      margin: 50px 0;
      padding: 40px 0 70px 0; } }
  @media only screen and (max-width: 599px) {
    .content-introduction {
      padding: 82px 0 110px 0; } }
  .content-introduction .wrapper {
    margin-top: -100px; }
    @media only screen and (max-width: 1199px) {
      .content-introduction .wrapper {
        flex-direction: row-reverse; } }
    @media only screen and (max-width: 899px) {
      .content-introduction .wrapper {
        flex-direction: initial;
        margin-top: -40px; } }
    @media only screen and (max-width: 599px) {
      .content-introduction .wrapper {
        margin-top: -82px; } }
  .content-introduction:before, .content-introduction:after {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100px;
    background: white;
    content: '';
    z-index: 0; }
    @media only screen and (max-width: 899px) {
      .content-introduction:before, .content-introduction:after {
        height: 40px; } }
    @media only screen and (max-width: 599px) {
      .content-introduction:before, .content-introduction:after {
        height: 82px; } }
  .content-introduction:after {
    height: 160px;
    top: auto;
    bottom: 0; }
    @media only screen and (max-width: 899px) {
      .content-introduction:after {
        height: 120px; } }
    @media only screen and (max-width: 599px) {
      .content-introduction:after {
        height: 160px; } }

.content-introduction__no-search {
  padding-bottom: 0; }
  @media only screen and (max-width: 1199px) {
    .content-introduction__no-search {
      padding-bottom: 20px; } }
  .content-introduction__no-search:after {
    display: none; }

.content-introduction__image {
  width: 50%;
  padding: 0 70px 100px 0; }
  @media only screen and (max-width: 1199px) {
    .content-introduction__image {
      width: 370px;
      padding: 20px 0 55px 50px; } }
  @media only screen and (max-width: 899px) {
    .content-introduction__image {
      display: none; } }

.content-introduction__image-wrap {
  display: flex;
  flex-direction: row-reverse;
  width: 100%;
  height: 600px; }
  @media only screen and (max-width: 1199px) {
    .content-introduction__image-wrap {
      flex-direction: initial;
      height: 434px;
      width: 434px; } }
  .content-introduction__image-wrap:after {
    right: -70px;
    bottom: -75px; }
    @media only screen and (max-width: 1199px) {
      .content-introduction__image-wrap:after {
        right: auto;
        bottom: -55px;
        left: -50px;
        height: 520px;
        transform: scale(-1, 1); } }

.content-introduction__body {
  position: relative;
  width: 50%;
  padding-left: 55px;
  z-index: 2; }
  @media only screen and (max-width: 1199px) {
    .content-introduction__body {
      width: calc(100% - 370px);
      padding: 0 50px 0 0; } }
  @media only screen and (max-width: 899px) {
    .content-introduction__body {
      width: 100%;
      padding: 0; } }

.content-introduction__editor {
  margin: 50px 0 20px 0; }

.content-introduction__search {
  margin: 50px 0 -160px 0; }
  @media only screen and (max-width: 1199px) {
    .content-introduction__search {
      position: relative;
      height: 315px; } }
  @media only screen and (max-width: 899px) {
    .content-introduction__search {
      margin: 50px 0 -120px 0;
      height: auto; } }
  @media only screen and (max-width: 599px) {
    .content-introduction__search {
      margin: 50px 0 -160px 0; } }

/**
 *  Toggle.
 */
.content-introduction__toggle {
  position: absolute;
  width: 600px;
  height: 600px;
  border-radius: 0 50px 50px 0;
  background-color: #c4c4c4;
  overflow: hidden; }
  @media only screen and (max-width: 1199px) {
    .content-introduction__toggle {
      width: 435px;
      height: 435px;
      border-radius: 50px 0 0 50px; } }

.content-introduction__toggle-item {
  position: relative;
  width: 100%;
  height: 60px;
  background-color: #c4c4c4;
  transition: all 500ms ease; }
  @media only screen and (max-width: 1199px) {
    .content-introduction__toggle-item {
      height: 50px; } }
  .content-introduction__toggle-item.is-active {
    height: 420px; }
    @media only screen and (max-width: 1199px) {
      .content-introduction__toggle-item.is-active {
        height: 285px; } }
    .content-introduction__toggle-item.is-active img {
      filter: blur(0); }
    .content-introduction__toggle-item.is-active .content-introduction__toggle-title {
      display: flex;
      opacity: 1; }
    .content-introduction__toggle-item.is-active .content-introduction__toggle-label {
      opacity: 1; }
  .content-introduction__toggle-item img {
    z-index: 10;
    filter: blur(15px); }

.content-introduction__toggle-body {
  position: relative;
  width: 100%;
  height: 100%;
  z-index: 20; }
  .content-introduction__toggle-body a {
    justify-content: flex-end;
    align-content: flex-end;
    width: 100%;
    height: 100%; }
    @media only screen and (max-width: 1199px) {
      .content-introduction__toggle-body a {
        justify-content: flex-start; } }

.content-introduction__toggle-label {
  margin-right: 45px;
  border-radius: 4px;
  opacity: 0.8;
  transition: all 500ms ease; }
  @media only screen and (max-width: 1199px) {
    .content-introduction__toggle-label {
      left: 0;
      right: auto;
      margin-right: 0;
      margin-left: 45px; } }
  .content-introduction__toggle-label svg {
    margin-right: 8px; }

.content-introduction__toggle-title {
  font-size: 25px;
  font-size: 2.5rem;
  line-height: 1.16em;
  align-items: flex-end;
  margin-right: 45px;
  margin-bottom: 80px;
  color: white;
  font-weight: 700;
  opacity: 0;
  transition: all 500ms ease; }
  @media only screen and (max-width: 1199px) {
    .content-introduction__toggle-title {
      margin-right: 0;
      margin-left: 40px;
      margin-bottom: 40px; } }

.content-subscribe .wrapper {
  position: relative;
  padding-top: 50px;
  padding-bottom: 70px; }
  @media only screen and (max-width: 599px) {
    .content-subscribe .wrapper {
      padding-bottom: 85px; } }

.content-subscribe__body {
  position: relative;
  width: 100%;
  max-width: 925px;
  padding: 50px 100px 80px 100px;
  background-color: #009ec5;
  border-radius: 2px; }
  @media only screen and (max-width: 899px) {
    .content-subscribe__body {
      padding: 30px 30px 70px 30px; } }
  @media only screen and (max-width: 599px) {
    .content-subscribe__body {
      padding: 20px 10px 35px 10px; } }
  .content-subscribe__body:after {
    top: -50px;
    left: -70px;
    transform: rotate(180deg);
    z-index: -2; }
    @media only screen and (max-width: 1199px) {
      .content-subscribe__body:after {
        left: 50px; } }
    @media only screen and (max-width: 899px) {
      .content-subscribe__body:after {
        left: -123px; } }
    @media only screen and (max-width: 599px) {
      .content-subscribe__body:after {
        display: none; } }

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

.content-subscribe__editor {
  font-size: 15px;
  font-size: 1.5rem;
  line-height: 2em;
  font-weight: 300;
  color: white; }

.content-subscribe__button {
  position: absolute;
  right: 100px;
  bottom: -20px; }
  @media only screen and (max-width: 599px) {
    .content-subscribe__button {
      bottom: -35px;
      left: 10px;
      width: calc(100% - 20px); } }

@media only screen and (max-width: 1199px) {
  .content-subscribe__background {
    position: absolute;
    max-width: 610px;
    height: 100%;
    top: 0;
    left: 0;
    right: 0;
    margin: 0 auto; } }

@media only screen and (max-width: 899px) {
  .content-subscribe__background {
    margin: 0;
    left: 60px; } }

.content-subscribe__background:before {
  position: absolute;
  bottom: 0;
  left: 250px;
  width: 100vw;
  height: 100%;
  background: whitesmoke;
  content: '';
  z-index: -1; }
  @media only screen and (max-width: 1199px) {
    .content-subscribe__background:before {
      left: 150px; } }
  @media only screen and (max-width: 599px) {
    .content-subscribe__background:before {
      left: -100px;
      width: calc(100vw + 100px); } }

.content-subscription {
  padding: 80px 0 280px 0; }
  @media only screen and (max-width: 899px) {
    .content-subscription {
      margin: 50px 0; } }
  .content-subscription .wrapper {
    position: relative; }

@media only screen and (max-width: 1199px) {
  .content-subscription__background-title {
    font-size: 80px;
    font-size: 8rem;
    line-height: 1em;
    margin-bottom: 50px;
    letter-spacing: 2.22px;
    color: rgba(0, 104, 129, 0.05); } }

.content-subscription__body {
  align-items: center; }

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

.content-subscription__text {
  position: relative;
  width: 100%;
  max-width: 735px;
  padding: 50px 0 50px 0;
  border-radius: 5px;
  background-color: white; }
  @media only screen and (max-width: 899px) {
    .content-subscription__text {
      max-width: 590px;
      padding: 50px 0 0 0; } }
  @media only screen and (max-width: 599px) {
    .content-subscription__text {
      width: 100%;
      margin-top: 70px;
      padding: 20px; } }
  .content-subscription__text * {
    position: relative;
    z-index: 6; }

.content-subscription__editor {
  padding: 0 20px 0 0;
  background-color: white;
  z-index: 5; }
  @media only screen and (max-width: 899px) {
    .content-subscription__editor {
      padding: 0 20px 50px 0; } }
  @media only screen and (max-width: 599px) {
    .content-subscription__editor {
      padding: 0; } }
  .content-subscription__editor p {
    z-index: 2; }

.content-subscription__column-image {
  height: 500px; }

.content-subscription__image {
  position: absolute;
  left: 680px;
  bottom: 0;
  width: calc(100vw - 680px);
  height: 500px;
  z-index: -1; }
  @media only screen and (max-width: 1199px) {
    .content-subscription__image {
      left: 460px;
      width: calc(100vw - 460px); } }
  @media only screen and (max-width: 899px) {
    .content-subscription__image {
      left: 230px;
      width: calc(100vw - 230px); } }
  @media only screen and (max-width: 599px) {
    .content-subscription__image {
      top: 110px;
      left: 0;
      width: 100%;
      height: 300px; } }
  .content-subscription__image img {
    border-radius: 5px; }
    @media only screen and (max-width: 599px) {
      .content-subscription__image img {
        border-radius: 0; } }

/**
 *  Product.
 */
.content-subscription__product {
  position: absolute;
  left: 660px;
  bottom: -195px;
  width: 440px;
  height: 320px;
  padding: 30px 20px;
  background: #dcecf0; }
  @media only screen and (max-width: 1199px) {
    .content-subscription__product {
      left: 440px; } }
  @media only screen and (max-width: 899px) {
    .content-subscription__product {
      left: auto;
      right: 65px;
      bottom: -285px; } }
  @media only screen and (max-width: 599px) {
    .content-subscription__product {
      position: relative;
      bottom: auto;
      margin-top: 50px;
      width: 100%;
      height: auto;
      right: auto; } }
  .content-subscription__product:after {
    top: -80px;
    right: -70px; }
    @media only screen and (max-width: 599px) {
      .content-subscription__product:after {
        top: -50px;
        right: -20px; } }

.content-subscription__product-title {
  margin-bottom: 20px; }

.content-subscription__product-text {
  margin-bottom: 10px;
  font-weight: 300; }

.content-subscription__product-footer {
  margin-top: 20px;
  padding-top: 20px;
  border-top: 3px solid white; }

.content-subscription__product-price {
  align-items: center;
  width: 165px; }
  @media only screen and (max-width: 599px) {
    .content-subscription__product-price {
      margin-bottom: 10px; } }
  .content-subscription__product-price svg {
    width: 26px;
    height: 30px;
    color: #009ec5; }
  .content-subscription__product-price .is-price {
    font-size: 20px;
    font-size: 2rem;
    line-height: 1.5em;
    margin-left: 5px;
    color: #009ec5;
    font-weight: bold; }
  .content-subscription__product-price .is-label {
    font-size: 15px;
    font-size: 1.5rem;
    line-height: 2em;
    margin-left: 5px;
    color: #535353;
    font-weight: 500; }

/**
 * Lines.
 */
.content-subscription__lines {
  position: absolute;
  top: -180px;
  left: 80px;
  right: 0;
  height: 600px;
  width: 340px;
  display: flex;
  z-index: 1;
  opacity: 0.5; }
  .content-subscription__lines > span {
    display: block;
    width: 3px;
    height: 100%;
    background-color: #dcecf0; }
    .content-subscription__lines > span:nth-child(1) {
      margin-right: 225px; }
      @media only screen and (max-width: 599px) {
        .content-subscription__lines > span:nth-child(1) {
          display: none; } }
    .content-subscription__lines > span:nth-child(2) {
      height: calc(100% - 80px);
      margin-top: 40px;
      margin-right: 100px; }
      @media only screen and (max-width: 899px) {
        .content-subscription__lines > span:nth-child(2) {
          display: none; } }
    .content-subscription__lines > span:nth-child(3) {
      margin-top: 45px;
      height: calc(100% - 90px); }
      @media only screen and (max-width: 1199px) {
        .content-subscription__lines > span:nth-child(3) {
          display: none; } }

.header-image {
  position: relative; }

/**
 * Image.
 */
.header-image__image {
  position: relative;
  top: 0;
  left: 0;
  height: 655px;
  z-index: 1; }

.header-image__body-wrapper {
  position: absolute;
  top: 0;
  right: 0;
  left: 0; }

.header-image__image-body {
  position: relative;
  top: 0;
  left: 0;
  max-width: 720px;
  padding: 45px 80px 45px 0;
  z-index: 2; }
  .header-image__image-body:before {
    position: absolute;
    top: 0;
    right: 0;
    width: 100vw;
    height: 100%;
    background-color: #dcecf0;
    border-radius: 0 0 50px 0;
    content: '';
    z-index: -1; }
  .header-image__image-body:after {
    right: -65px;
    bottom: -65px; }

.header-image__image-editor {
  margin-top: 45px; }

.header-image__image-footer {
  align-items: center;
  margin-top: 30px;
  padding-top: 20px;
  border-top: 3px solid white; }

.header-image__image-link {
  width: 210px; }
  @media only screen and (max-width: 899px) {
    .header-image__image-link {
      width: 100%;
      margin-bottom: 10px; } }

.header-image__image-caption {
  width: calc(100% - 210px); }
  @media only screen and (max-width: 899px) {
    .header-image__image-caption {
      width: 100%; } }

/**
 * Text.
 */
.header-image__text-wrapper {
  position: relative;
  margin-top: -50px;
  z-index: 4; }

.header-image__text {
  padding: 50px 50px 100px 50px;
  background-color: white;
  text-align: center;
  border-radius: 50px 50px 0 0; }
  @media only screen and (max-width: 899px) {
    .header-image__text {
      padding: 50px 00 100px 0; } }

.header-image__editor {
  max-width: 820px;
  margin: 20px auto 0 auto; }

/**
 * Theme.
 */
@media only screen and (max-width: 599px) {
  .header-image.is-theme .header-image__image {
    height: 455px; } }

.header-text {
  padding: 160px 0 140px 0; }
  @media only screen and (max-width: 899px) {
    .header-text {
      margin-bottom: 100px;
      padding: 110px 0 140px 0; } }
  .header-text .wrapper {
    position: relative;
    align-items: center; }
    @media only screen and (max-width: 899px) {
      .header-text .wrapper:before {
        position: absolute;
        left: -20px;
        bottom: 75px;
        width: 101vw;
        height: calc(100% - 75px);
        background-color: #dcecf0;
        content: '';
        z-index: -1; } }
    .header-text .wrapper:after {
      bottom: -60px;
      right: 50px; }
      @media only screen and (max-width: 899px) {
        .header-text .wrapper:after {
          right: auto;
          left: 0;
          bottom: -90px; } }

/**
 * Left.
 */
.header-text__left {
  position: relative;
  width: 57%;
  padding: 120px 80px 40px 0; }
  @media only screen and (max-width: 1199px) {
    .header-text__left {
      width: 60%;
      padding-right: 40px; } }
  @media only screen and (max-width: 899px) {
    .header-text__left {
      width: 100%;
      padding: 100px 0 20px 0; } }
  .header-text__left:before {
    position: absolute;
    top: 0;
    right: -125px;
    width: 100vw;
    height: 100%;
    background-color: #dcecf0;
    border-radius: 0 50px 50px 0;
    content: '';
    z-index: -1; }
    @media only screen and (max-width: 899px) {
      .header-text__left:before {
        left: -20px;
        right: auto;
        border-radius: 0; } }

.header-text__title-wrap {
  position: absolute;
  top: 0;
  max-width: 645px;
  margin-bottom: 50px;
  transform: translateY(-50%); }

.header-text__footer {
  align-items: center;
  margin-top: 20px;
  padding-top: 20px;
  border-top: 3px solid white; }

.header-text__link {
  width: 210px; }
  @media only screen and (max-width: 899px) {
    .header-text__link {
      width: 100%;
      margin-bottom: 10px; } }

.header-text__link-caption {
  width: calc(100% - 210px); }
  @media only screen and (max-width: 899px) {
    .header-text__link-caption {
      width: 100%; } }

/**
 * Right.
 */
.header-text__right {
  width: 43%;
  height: fit-content;
  padding: 50px 20px;
  background-color: white; }
  @media only screen and (max-width: 1199px) {
    .header-text__right {
      width: 40%; } }
  @media only screen and (max-width: 899px) {
    .header-text__right {
      width: 100%;
      padding: 20px; } }

.header-text__right-title {
  margin-bottom: 10px; }

.header-text__right-editor {
  margin-bottom: 20px; }

.post-slider {
  padding: 80px 0 130px 0; }
  @media only screen and (max-width: 899px) {
    .post-slider {
      padding: 50px 0 100px 0; } }
  @media only screen and (max-width: 1199px) {
    .post-slider .heading-background {
      font-size: 80px;
      font-size: 8rem;
      line-height: 1em;
      letter-spacing: 2.22px;
      color: rgba(0, 104, 129, 0.05); } }
  .post-slider .post-list .owl-nav {
    top: -70px; }

.post-slider__head {
  position: relative;
  margin-bottom: 100px; }

.post-slider__editor {
  margin-top: 20px;
  max-width: 715px;
  font-weight: 300; }

.post-slider__background-title {
  position: absolute;
  top: 0;
  right: 0; }

.team {
  padding: 80px 0; }
  @media only screen and (max-width: 899px) {
    .team {
      padding: 50px 0; } }
  .team .wrapper {
    position: relative; }
    .team .wrapper:before, .team .wrapper:after {
      position: absolute;
      top: 25px;
      left: 0;
      width: calc(100% - 310px);
      height: calc(100% - 25px);
      background-color: #dcecf0;
      border-radius: 0 50px 50px 0;
      content: '';
      z-index: -1; }
      @media only screen and (max-width: 1199px) {
        .team .wrapper:before, .team .wrapper:after {
          width: calc(100% - 100px); } }
      @media only screen and (max-width: 599px) {
        .team .wrapper:before, .team .wrapper:after {
          width: 100%;
          border-radius: 0; } }
    .team .wrapper:after {
      right: 100%;
      left: auto;
      border-radius: 0; }

.team__title {
  margin-bottom: 30px; }

.team__editor {
  max-width: 505px;
  margin-bottom: 100px; }

.team__department {
  padding-bottom: 100px; }
  @media only screen and (max-width: 899px) {
    .team__department {
      padding-bottom: 50px; } }

.team__department-title {
  margin-bottom: 30px; }

.team__member--block {
  width: 100%; }

.team__members--teaser {
  margin: -10px; }
  @media only screen and (max-width: 599px) {
    .team__members--teaser {
      margin: -10px 0; } }

.team__member--teaser {
  width: calc(33.3333% - 20px);
  margin: 10px; }
  @media only screen and (max-width: 899px) {
    .team__member--teaser {
      width: calc(50% - 20px); } }
  @media only screen and (max-width: 599px) {
    .team__member--teaser {
      width: 100%;
      margin: 10px 0; } }

.team-block {
  position: relative;
  width: calc(100% - 105px);
  margin-bottom: 20px;
  padding-top: 50px; }
  @media only screen and (max-width: 1199px) {
    .team-block {
      width: 100%; } }
  @media only screen and (max-width: 899px) {
    .team-block {
      padding: 0;
      border: 2px solid #dcecf0;
      border-radius: 5px; } }
  @media only screen and (max-width: 599px) {
    .team-block {
      border: 0; } }

.team-block__name {
  margin-bottom: 10px; }

.team-block__image {
  position: absolute;
  top: 0;
  right: 0;
  width: 420px;
  height: 300px; }
  @media only screen and (max-width: 899px) {
    .team-block__image {
      display: none; } }
  .team-block__image img {
    border-radius: 5px; }

.team-block__text {
  position: relative;
  width: calc(100% - 420px);
  padding: 30px 85px 30px 30px;
  background-color: white;
  border-radius: 5px 0 0 5px; }
  @media only screen and (max-width: 899px) {
    .team-block__text {
      width: 100%;
      padding: 30px; } }
  @media only screen and (max-width: 599px) {
    .team-block__text {
      border-radius: 5px; } }
  @media only screen and (min-width: 1200px) {
    .team-block__text {
      min-height: 280px; } }
  .team-block__text:before {
    position: absolute;
    right: -85px;
    bottom: 0;
    width: 85px;
    height: 100%;
    background-color: white;
    border-radius: 0 5px 5px 0;
    content: '';
    z-index: -1; }
    @media only screen and (max-width: 599px) {
      .team-block__text:before {
        display: none; } }

.team-block__text-full a {
  display: block;
  margin-top: 20px; }
  .team-block__text-full a .is-less {
    display: none; }
  .team-block__text-full a svg {
    transition: all 500ms ease; }

.team-block__text-full > span {
  display: none; }

.team-block__text-full.is-active .is-more {
  display: none; }

.team-block__text-full.is-active .is-less {
  display: inline-flex; }

.team-block__text-full.is-active svg {
  transform: rotate(180deg); }

.team-teaser {
  position: relative;
  width: 100%;
  border: 2px solid #dcecf0;
  border-radius: 5px;
  overflow: hidden; }

.team-teaser__image {
  width: 100%;
  height: 300px; }

.team-teaser__text {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  background-color: white;
  padding: 10px;
  text-align: center; }

.team-teaser__function {
  font-size: 15px;
  font-size: 1.5rem;
  line-height: 2em; }

.text-image {
  align-items: center;
  padding-bottom: 130px; }
  @media only screen and (max-width: 899px) {
    .text-image {
      padding-bottom: 80px; } }

.text-image__image {
  position: relative;
  width: 505px;
  height: 400px; }
  @media only screen and (max-width: 1199px) {
    .text-image__image {
      width: 385px;
      height: 370px; } }
  @media only screen and (max-width: 899px) {
    .text-image__image {
      width: 100%;
      max-width: 385px;
      margin: 0 auto;
      margin-bottom: 75px; } }
  .text-image__image img {
    border-radius: 50px; }
  .text-image__image:after {
    width: 268px;
    height: 189px;
    right: -65px;
    bottom: -70px;
    opacity: 0.5;
    border-radius: 0 0 65px 0; }
    @media only screen and (max-width: 599px) {
      .text-image__image:after {
        display: none; } }

.text-image__body {
  width: calc(100% - 505px);
  max-width: 500px;
  padding-left: 75px; }
  @media only screen and (max-width: 1199px) {
    .text-image__body {
      width: calc(100% - 385px); } }
  @media only screen and (max-width: 899px) {
    .text-image__body {
      width: 100%;
      padding: 0; } }

.text-image--image-right {
  flex-direction: row-reverse;
  width: calc(100% - 70px); }
  @media only screen and (max-width: 1199px) {
    .text-image--image-right {
      width: 100%; } }
  @media only screen and (max-width: 899px) {
    .text-image--image-right {
      flex-direction: initial; } }
  .text-image--image-right .text-image__image {
    width: 385px;
    height: 370px; }
    .text-image--image-right .text-image__image:after {
      top: -75px;
      right: auto;
      bottom: auto;
      left: -75px;
      border-radius: 65px 0 0 0; }
      @media only screen and (max-width: 899px) {
        .text-image--image-right .text-image__image:after {
          top: auto;
          right: -65px;
          bottom: -70px;
          left: auto;
          border-radius: 0 0 65px 0; } }
  .text-image--image-right .text-image__body {
    width: calc(100% - 385px);
    padding: 0 70px 0 0;
    max-width: 100%; }
    @media only screen and (max-width: 899px) {
      .text-image--image-right .text-image__body {
        width: 100%;
        padding: 0; } }

.text-image__editor {
  margin: 30px 0 20px 0; }

.text-images {
  position: relative;
  padding: 80px 0 160px 0; }
  @media only screen and (max-width: 899px) {
    .text-images {
      padding: 50px 0; } }

.text-images__head {
  position: relative;
  margin-bottom: 95px; }
  @media only screen and (max-width: 899px) {
    .text-images__head {
      margin-bottom: 50px; } }
  @media only screen and (max-width: 599px) {
    .text-images__head {
      margin-bottom: 30px; } }

.text-images__title {
  margin-bottom: 20px; }

.text-images__background-title {
  position: absolute;
  top: 0;
  right: 0; }
  @media only screen and (max-width: 1199px) {
    .text-images__background-title {
      font-size: 80px;
      font-size: 8rem;
      line-height: 1em;
      letter-spacing: 2.22px;
      color: rgba(0, 104, 129, 0.05); } }

/**
 *  Text.
 */
.text-images__top {
  width: 100%;
  justify-content: flex-end; }

.text-images__bottom {
  width: 100%; }

.text-images__top-wrap,
.text-images__bottom-wrap {
  width: calc(100% - 730px);
  max-width: 505px;
  z-index: 99; }
  @media only screen and (max-width: 1199px) {
    .text-images__top-wrap,
    .text-images__bottom-wrap {
      width: 100%; } }
  @media only screen and (max-width: 899px) {
    .text-images__top-wrap,
    .text-images__bottom-wrap {
      max-width: 100%; } }

.text-images__body-title {
  margin-bottom: 20px; }

/**
 * Images.
 */
.text-images__images {
  position: relative;
  width: 820px;
  height: 560px;
  margin: -80px auto -110px auto; }
  @media only screen and (max-width: 1199px) {
    .text-images__images {
      margin: 50px auto; } }
  @media only screen and (max-width: 899px) {
    .text-images__images {
      width: 500px;
      height: 340px; } }
  @media only screen and (max-width: 599px) {
    .text-images__images {
      width: 100%;
      max-width: 280px;
      height: 190px;
      margin: 60px auto 50px auto; } }
  .text-images__images:after {
    top: 85px;
    right: 0;
    left: 0;
    margin: 0 auto; }
    @media only screen and (max-width: 899px) {
      .text-images__images:after {
        top: 10px;
        left: 73px;
        right: auto;
        width: 310px;
        height: 320px; } }
    @media only screen and (max-width: 599px) {
      .text-images__images:after {
        width: calc(100% - 40px);
        height: calc(100% + 50px);
        top: -30px;
        left: 20px; } }

.text-images__images-big {
  position: absolute;
  top: 0;
  left: 0;
  width: 504px;
  height: 400px; }
  @media only screen and (max-width: 899px) {
    .text-images__images-big {
      width: 305px;
      height: 245px; } }
  @media only screen and (max-width: 599px) {
    .text-images__images-big {
      width: 170px;
      height: 135px; } }
  .text-images__images-big img {
    border-radius: 50px; }
    @media only screen and (max-width: 899px) {
      .text-images__images-big img {
        border-radius: 20px; } }

.text-images__images-small {
  position: absolute;
  right: 0;
  bottom: 0;
  width: 420px;
  height: 400px; }
  @media only screen and (max-width: 899px) {
    .text-images__images-small {
      width: 255px;
      height: 245px; } }
  @media only screen and (max-width: 599px) {
    .text-images__images-small {
      width: 145px;
      height: 135px; } }
  .text-images__images-small img {
    border-radius: 50px; }
    @media only screen and (max-width: 899px) {
      .text-images__images-small img {
        border-radius: 20px; } }

/**
 * Lines.
 */
.text-images__lines {
  position: absolute;
  top: 220px;
  left: 0;
  right: 60px;
  height: calc(100% - 360px);
  width: 535px;
  margin: 0 auto;
  display: flex;
  z-index: -1;
  opacity: 0.5; }
  @media only screen and (max-width: 1199px) {
    .text-images__lines {
      top: 335px;
      height: calc(100% - 555px); } }
  @media only screen and (max-width: 899px) {
    .text-images__lines {
      top: 250px;
      height: calc(100% - 325px);
      width: 415px; } }
  @media only screen and (max-width: 599px) {
    .text-images__lines {
      top: 327px;
      height: calc(100% - 460px);
      width: 261px;
      right: 0; } }
  .text-images__lines > span {
    display: block;
    width: 3px;
    height: 100%;
    background-color: #dcecf0; }
    .text-images__lines > span:nth-child(1) {
      margin-right: 290px; }
      @media only screen and (max-width: 899px) {
        .text-images__lines > span:nth-child(1) {
          margin-right: 185px; } }
      @media only screen and (max-width: 599px) {
        .text-images__lines > span:nth-child(1) {
          margin-right: 125px; } }
    .text-images__lines > span:nth-child(2) {
      margin-top: 55px;
      margin-right: 220px; }
      @media only screen and (max-width: 599px) {
        .text-images__lines > span:nth-child(2) {
          margin-right: 125px; } }
    .text-images__lines > span:nth-child(3) {
      margin-top: 45px;
      height: calc(100% - 90px); }

/**
 * Every conceivable HTML element within a `.cms-output` wrapper.
 *
 * 1. Exclude last childs.
 */
.cms-output.is-intro,
.cms-output .is-intro {
  font-size: 20px;
  font-size: 2rem;
  line-height: 1.75em;
  letter-spacing: 0.56px;
  font-weight: 300;
  color: black; }
  @media only screen and (max-width: 599px) {
    .cms-output.is-intro,
    .cms-output .is-intro {
      font-size: 15px;
      font-size: 1.5rem;
      line-height: 2em; } }

.cms-output h1,
.cms-output h2,
.cms-output h3 {
  margin-bottom: 20px;
  word-break: break-word; }

.cms-output h4,
.cms-output h5 {
  margin-bottom: 10px;
  word-break: break-word; }

.cms-output p:not(:last-child) {
  margin-bottom: 2em; }

.cms-output ol,
.cms-output ul {
  list-style-type: disc;
  color: #009ec5;
  margin-left: 25px; }
  .cms-output ol li,
  .cms-output ul li {
    margin-botom: 5px;
    color: #363636; }

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

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

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

.cms-output blockquote {
  font-size: 17px;
  font-size: 1.7rem;
  line-height: 2.05882em;
  position: relative;
  margin: 26px 0;
  padding: 25px 20px;
  font-weight: 500;
  letter-spacing: 0.47px;
  color: #009ec5;
  border-left: 3px solid rgba(0, 104, 129, 0.5); }
  .cms-output blockquote:before, .cms-output blockquote:after {
    font-size: 95px;
    font-size: 9.5rem;
    line-height: 1em;
    position: absolute;
    left: 15px;
    top: -9px;
    width: 36px;
    height: 26px;
    color: rgba(0, 104, 129, 0.2);
    content: '“'; }
  .cms-output blockquote:after {
    top: auto;
    right: 0;
    bottom: 9px;
    left: auto;
    content: '”'; }

.cms-output .wp-caption {
  width: 100% !important;
  margin: 50px 0; }
  .cms-output .wp-caption p {
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 2em;
    margin-top: 30px;
    font-style: italic;
    letter-spacing: 0.39px;
    color: #006881; }

.cms-output img {
  display: block;
  margin: 0 auto; }

.cms-output a {
  color: #009ec5;
  text-decoration: underline;
  transition: all 250ms ease; }
  .cms-output a:hover {
    color: #006881; }
  .cms-output a.is-youtube {
    display: block;
    position: relative; }
    .cms-output a.is-youtube .play {
      display: flex;
      align-items: center;
      justify-content: center;
      position: absolute;
      top: 0;
      right: 0;
      bottom: 0;
      left: 0;
      width: 95px;
      height: 95px;
      margin: auto;
      padding-left: 10px;
      border-radius: 50px;
      background-color: #dcecf0;
      opacity: 0.8;
      z-index: 10; }
      .cms-output a.is-youtube .play svg {
        width: 46px;
        height: 50px; }

.cms-output .info-window__icon {
  display: inline-block; }
  .cms-output .info-window__icon svg {
    position: relative;
    top: 2px;
    display: inline-block;
    width: 14px;
    height: 13px;
    margin-left: 5px; }
  .cms-output .info-window__icon:hover + .info-window__hover {
    display: block; }

.cms-output .info-window__hover {
  font-size: 13px;
  font-size: 1.3rem;
  line-height: 1.38462em;
  display: none;
  position: absolute;
  top: 100%;
  left: calc(100% - 15px);
  width: 340px;
  padding: 15px 20px;
  background: #dcecf0;
  border-radius: 17px; }
  .cms-output .info-window__hover strong {
    display: block;
    margin-bottom: 10px; }

.footer {
  margin-top: 160px;
  background-color: #dcecf0; }
  @media only screen and (max-width: 599px) {
    .footer {
      margin: 100px 0 45px 0; } }
  .footer:after {
    top: 7px;
    left: -343px; }
    @media only screen and (max-width: 1199px) {
      .footer:after {
        left: -514px; } }
    @media only screen and (max-width: 899px) {
      .footer:after {
        left: -478px; } }
    @media only screen and (max-width: 599px) {
      .footer:after {
        display: none; } }

/**
 * Sitemaps.
 */
.footer__sitemaps {
  width: calc(100% - 400px);
  padding: 100px 0 100px 210px; }
  @media only screen and (max-width: 1199px) {
    .footer__sitemaps {
      width: calc(100% - 315px);
      padding: 100px 0; } }
  @media only screen and (max-width: 899px) {
    .footer__sitemaps {
      align-content: baseline;
      width: calc(100% - 300px);
      padding: 100px 75px; } }
  @media only screen and (max-width: 599px) {
    .footer__sitemaps {
      width: 100%;
      padding: 50px 0 0 0; } }

.footer__sitemap {
  width: 50%;
  padding-right: 20px; }
  @media only screen and (max-width: 899px) {
    .footer__sitemap {
      width: 100%;
      padding: 0;
      margin-bottom: 50px; } }
  .footer__sitemap.is-active .footer__sitemap-title-wrap svg {
    transform: rotate(180deg); }

@media only screen and (max-width: 899px) {
  .footer__sitemap-title-wrap {
    width: 100%;
    cursor: pointer; } }

.footer__sitemap-title-wrap svg {
  display: none; }
  @media only screen and (max-width: 899px) {
    .footer__sitemap-title-wrap svg {
      display: block;
      position: relative;
      top: 2px;
      width: 17px;
      height: 25px;
      color: #006881;
      transition: all 500ms ease; } }

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

.footer__link {
  margin-top: 20px; }
  .footer__link svg {
    position: relative;
    top: 5px;
    width: 30px;
    height: 20px;
    padding-right: 10px;
    color: #535353;
    transition: all 250ms ease; }
  .footer__link a {
    transition: all 250ms ease; }
    .footer__link a:hover {
      color: #009ec5;
      text-decoration: underline; }
      .footer__link a:hover svg {
        color: #009ec5; }

/**
 * Contact.
 */
.footer__contact {
  position: relative;
  width: 400px;
  height: 100%;
  padding: 50px 0 100px 100px;
  margin-top: 50px;
  background-color: white;
  border-radius: 50px 0 0 0; }
  @media only screen and (max-width: 1199px) {
    .footer__contact {
      width: 315px;
      padding: 50px 0 100px 40px; } }
  @media only screen and (max-width: 899px) {
    .footer__contact {
      width: 300px;
      padding: 50px 0 190px 20px; } }
  @media only screen and (max-width: 599px) {
    .footer__contact {
      width: 100%;
      margin: 0;
      padding: 30px 0 30px 20px;
      border-radius: 30px 0 0 0; } }
  .footer__contact a {
    text-decoration: underline;
    font-weight: 400; }
  .footer__contact:after {
    position: absolute;
    top: 0;
    left: 0;
    width: 999px;
    height: 999px;
    background-color: white;
    border-radius: 50px 0 0 0;
    content: '';
    z-index: 1; }
  .footer__contact * {
    position: relative;
    z-index: 2; }

.footer__address {
  margin: 20px 0; }

.footer__email {
  display: block;
  margin: 20px 0; }

.footer__social svg {
  width: 30px;
  height: 37px;
  margin-right: 20px;
  color: #535353;
  transition: all 250ms ease; }
  .footer__social svg:hover {
    color: #009ec5; }

/**
 * Bottom.
 */
.footer__bottom {
  align-items: center;
  height: 50px;
  background-color: white; }
  .footer__bottom a {
    color: #009ec5;
    text-decoration: underline;
    transition: all 250ms ease; }
    .footer__bottom a:hover {
      color: #006881; }

.footer__bottom-wrapper {
  width: calc(100% - 400px);
  padding-left: 210px; }
  @media only screen and (max-width: 1199px) {
    .footer__bottom-wrapper {
      padding-left: 0; } }
  @media only screen and (max-width: 899px) {
    .footer__bottom-wrapper {
      width: 100%;
      padding-left: 75px; } }
  @media only screen and (max-width: 599px) {
    .footer__bottom-wrapper {
      padding-left: 0; } }

.header {
  background-color: white; }
  .header .wrapper {
    height: 125px;
    align-items: center; }
    @media only screen and (max-width: 899px) {
      .header .wrapper {
        height: 110px; } }
    @media only screen and (max-width: 599px) {
      .header .wrapper {
        height: 65px; } }

.header__logo img {
  max-width: 290px;
  height: auto;
  margin-top: -20px; }
  @media only screen and (max-width: 899px) {
    .header__logo img {
      max-width: 225px; } }
  @media only screen and (max-width: 599px) {
    .header__logo img {
      max-width: 150px; } }

.header__search {
  width: calc(100% - 480px);
  margin: 0 20px;
  max-width: 400px; }
  @media only screen and (max-width: 1199px) {
    .header__search {
      max-width: 200px; } }
  @media only screen and (max-width: 899px) {
    .header__search {
      display: none; } }

.header__webshop {
  width: 175px; }
  @media only screen and (max-width: 599px) {
    .header__webshop {
      width: 100px; } }

.header__webshop-link {
  height: 40px;
  width: 139px;
  background-color: #009ec5;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 250ms ease; }
  @media only screen and (max-width: 599px) {
    .header__webshop-link {
      width: 100px; } }
  .header__webshop-link:hover {
    border-radius: 10px 2px 10px 2px; }
  .header__webshop-link span {
    height: 20px;
    width: 55px;
    color: #FFFFFF;
    font-size: 12px;
    font-weight: 500;
    letter-spacing: 0.33px;
    line-height: 20px; }
  .header__webshop-link svg {
    height: 21px;
    width: 24px;
    color: #FFFFFF;
    margin-right: 5px; }

.header__actions {
  display: flex;
  align-items: center;
  width: auto; }
  @media only screen and (max-width: 599px) {
    .header__actions {
      width: 165px; } }

.header__account {
  width: 50px; }
  @media only screen and (max-width: 599px) {
    .header__account {
      display: none; } }
  .header__account a {
    display: flex; }
  .header__account svg {
    width: 21px;
    height: 19px;
    color: black;
    transition: all 250ms ease; }
  .header__account:hover svg {
    color: #006881; }

.header__mini-cart {
  width: 50px;
  display: flex;
  position: relative; }
  @media only screen and (max-width: 599px) {
    .header__mini-cart {
      display: none; } }
  .header__mini-cart .header__mini-cart-ammount {
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 1.42857em;
    display: flex;
    align-items: center;
    justify-content: center;
    position: absolute;
    top: -19px;
    right: -12px;
    width: 18px;
    height: 18px;
    padding-left: 1px;
    background-color: #d8d8d8;
    color: #006881;
    border-radius: 20px;
    font-weight: 500;
    transition: all 250ms ease; }
  .header__mini-cart > svg {
    width: 24px;
    height: 19px;
    color: black;
    cursor: pointer; }
  .header__mini-cart:hover > svg {
    color: #006881; }

/**
 * Mobile menu button.
 */
.header__menu-button {
  position: relative;
  width: 26px;
  height: 22px;
  z-index: 100;
  width: 50px; }
  .header__menu-button span {
    display: inline-block;
    position: absolute;
    right: 0;
    left: 0;
    width: 26px;
    height: 2px;
    margin: auto;
    background-color: black; }
    .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% - 1px);
      transition: background-color 400ms, opacity 0ms 400ms;
      background-color: black;
      opacity: 1; }
    .header__menu-button span:nth-child(3) {
      bottom: 0;
      transition: background-color 400ms, bottom 400ms 400ms, transform 400ms 0s;
      background-color: black; }
  .header__menu-button.is-active span:nth-child(1) {
    top: calc(50% - 1px);
    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% - 1px);
    transform: rotate(45deg);
    transition: background-color 400ms, bottom 400ms, transform 400ms 400ms; }

/**
 * Header fixed.
 */
.header__fixed {
  position: fixed;
  bottom: 0;
  width: 100%;
  padding: 0 20px;
  background-color: white;
  box-shadow: 0 -2px 5px 0 rgba(54, 54, 54, 0.1);
  z-index: 10; }
  @media only screen and (min-width: 600px) {
    .header__fixed {
      display: none; } }

.header__fixed-wrap {
  align-items: center;
  max-width: 150px;
  height: 40px;
  margin: 0 auto; }

.header__fixed-search svg {
  width: 21px;
  height: 21px; }

.header__fixed-search-field {
  display: none;
  position: absolute;
  top: -50px;
  width: calc(100% - 20px);
  left: 10px; }
  .header__fixed-search-field.is-active {
    display: block; }

.header__fixed-account svg {
  width: 21px;
  height: 19px; }

.header__fixed-cart svg {
  width: 21px;
  height: 24px; }

.navigation {
  position: fixed;
  top: -100vh;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  transition: all 500ms ease;
  background-color: #dcecf0;
  opacity: 0;
  z-index: 99;
  overflow-x: hidden; }
  .navigation.is-active {
    top: 0;
    opacity: 1; }
  .navigation::-webkit-scrollbar {
    display: none; }
  .navigation .wrapper {
    padding-top: 110px; }
    @media only screen and (max-width: 599px) {
      .navigation .wrapper {
        padding: 30px 0 0 0; } }
  .navigation .heading-background {
    font-size: 80px;
    font-size: 8rem;
    line-height: 0.875em; }
    @media only screen and (max-width: 599px) {
      .navigation .heading-background {
        padding: 0 20px; } }

.navigation__wrap {
  width: calc(100% - 400px); }
  @media only screen and (max-width: 1199px) {
    .navigation__wrap {
      width: calc(100% - 250px); } }
  @media only screen and (max-width: 599px) {
    .navigation__wrap {
      width: 100%; } }

/**
 * View menu.
 */
.navigation__view {
  width: 50%;
  padding-right: 25px; }
  @media only screen and (max-width: 899px) {
    .navigation__view {
      width: 100%;
      padding: 0 0 50px 0; } }
  @media only screen and (max-width: 599px) {
    .navigation__view {
      padding: 0 0 20px 0; } }

.navigation__view-menu {
  margin-top: 50px; }
  @media only screen and (max-width: 599px) {
    .navigation__view-menu {
      margin-top: 15px; } }
  .navigation__view-menu > li {
    display: flex;
    margin-bottom: 10px; }
    @media only screen and (max-width: 599px) {
      .navigation__view-menu > li {
        margin-bottom: 0; } }
    .navigation__view-menu > li > a {
      font-size: 25px;
      font-size: 2.5rem;
      line-height: 1.16em;
      display: flex;
      align-items: center;
      padding: 20px;
      color: #006881;
      font-weight: bold;
      letter-spacing: 0.69px;
      background-color: transparent;
      transition: all 250ms ease;
      word-break: break-all; }
      @media only screen and (max-width: 599px) {
        .navigation__view-menu > li > a {
          width: calc(100% - 20px); } }
      .navigation__view-menu > li > a svg {
        position: relative;
        width: 26px;
        height: 23px;
        margin-right: 20px; }
    .navigation__view-menu > li:hover a, .navigation__view-menu > li.current-menu-item a {
      background-color: white; }
    .navigation__view-menu > li:last-of-type {
      margin-bottom: 0; }

/**
 * Theme menu.
 */
.navigation__themes {
  width: 50%;
  padding-right: 25px; }
  @media only screen and (max-width: 899px) {
    .navigation__themes {
      width: 100%;
      padding: 0 0 50px 0; } }
  @media only screen and (max-width: 599px) {
    .navigation__themes {
      padding: 0 0 20px 0; } }

.navigation__themes-menu {
  margin-top: 50px; }
  @media only screen and (max-width: 599px) {
    .navigation__themes-menu {
      margin-top: 15px; } }
  .navigation__themes-menu > li {
    display: block;
    margin-bottom: 10px;
    width: fit-content; }
    @media only screen and (max-width: 599px) {
      .navigation__themes-menu > li {
        width: calc(100% - 20px); } }
    @media only screen and (max-width: 599px) {
      .navigation__themes-menu > li {
        margin-bottom: 0; } }
    .navigation__themes-menu > li > a {
      font-size: 25px;
      font-size: 2.5rem;
      line-height: 1.16em;
      display: flex;
      padding: 20px;
      color: #006881;
      font-weight: bold;
      letter-spacing: 0.69px;
      background-color: transparent;
      transition: all 250ms ease;
      word-break: break-all; }
      .navigation__themes-menu > li > a svg {
        position: relative;
        top: 4px;
        width: 14px;
        height: 21px;
        margin-left: 10px;
        transition: all 500ms ease; }
      .navigation__themes-menu > li > a:hover {
        background-color: white; }
    .navigation__themes-menu > li.is-active {
      background-color: white; }
      .navigation__themes-menu > li.is-active svg {
        transform: rotate(180deg); }
    .navigation__themes-menu > li.current-menu-item a {
      background-color: white; }
    .navigation__themes-menu > li:last-of-type {
      margin-bottom: 0; }
  .navigation__themes-menu .submenu-container {
    display: none;
    background-color: white; }
    .navigation__themes-menu .submenu-container .submenu {
      margin-top: 15px;
      padding: 0 20px 20px 20px; }
      @media only screen and (max-width: 599px) {
        .navigation__themes-menu .submenu-container .submenu {
          margin-top: -10px; } }
      .navigation__themes-menu .submenu-container .submenu > li {
        margin-top: 10px; }
        .navigation__themes-menu .submenu-container .submenu > li > a {
          font-size: 20px;
          font-size: 2rem;
          line-height: 1.2em;
          font-weight: bold;
          color: rgba(0, 104, 129, 0.5); }

/**
 * Main menu.
 */
.navigation__main {
  position: relative;
  width: 300px;
  margin: 85px 0 0 100px;
  padding: 50px 0; }
  @media only screen and (max-width: 1199px) {
    .navigation__main {
      width: 200px;
      margin: 85px 0 0 50px; } }
  @media only screen and (max-width: 599px) {
    .navigation__main {
      width: 100%;
      margin: 0;
      padding: 50px 20px;
      background-color: white; } }
  .navigation__main:before {
    position: absolute;
    top: 0;
    left: -100px;
    width: 999px;
    height: 100%;
    min-height: calc(100vh - 195px);
    background-color: white;
    border-radius: 50px 0 0 0;
    z-index: 2;
    content: ''; }
    @media only screen and (max-width: 1199px) {
      .navigation__main:before {
        left: -50px; } }
    @media only screen and (max-width: 599px) {
      .navigation__main:before {
        top: 0;
        left: -20px;
        width: calc(100% + 40px);
        height: 100%;
        min-height: 100%;
        border-radius: 0; } }
  .navigation__main * {
    position: relative;
    z-index: 2; }

.navigation__main-container:before {
  position: absolute;
  top: -245px;
  left: 0;
  height: 100vh;
  width: 999px;
  background-color: white;
  content: '';
  z-index: 0; }
  @media only screen and (max-width: 599px) {
    .navigation__main-container:before {
      display: none; } }

.navigation__main-container:after {
  top: -121px;
  left: 10px;
  height: 75px; }
  @media only screen and (max-width: 599px) {
    .navigation__main-container:after {
      display: none; } }

.navigation__main-menu > li {
  margin-bottom: 40px; }
  @media only screen and (max-width: 599px) {
    .navigation__main-menu > li {
      margin-bottom: 35px; } }
  .navigation__main-menu > li > a {
    font-size: 20px;
    font-size: 2rem;
    line-height: 1.2em;
    color: #363636;
    font-weight: bold;
    letter-spacing: 0.56px;
    transition: all 250ms ease; }
    .navigation__main-menu > li > a svg {
      position: relative;
      top: 2px;
      width: 10px;
      height: 15px;
      margin-left: 10px;
      transition: all 500ms ease; }
    .navigation__main-menu > li > a:hover {
      color: #006881; }
  .navigation__main-menu > li.is-active a {
    color: #006881; }
  .navigation__main-menu > li.is-active svg {
    transform: rotate(180deg); }
  .navigation__main-menu > li.current-menu-item a {
    color: #006881; }
  .navigation__main-menu > li:last-of-type {
    margin-bottom: 0; }

.navigation__main-menu .submenu-container {
  display: none; }
  .navigation__main-menu .submenu-container .submenu > li {
    margin-top: 10px; }
    .navigation__main-menu .submenu-container .submenu > li > a {
      font-size: 16px;
      font-size: 1.6rem;
      line-height: 1.375em;
      font-weight: bold;
      color: rgba(54, 54, 54, 0.5); }

/**
 * Disable scroll.
 */
.body.is-active {
  overflow: hidden; }
  .body.is-active .header::before {
    bottom: 0; }
  .body.is-active .header__menu-button {
    z-index: 100; }

.search-form-introduction {
  padding: 50px;
  background-color: white; }
  @media only screen and (max-width: 1199px) {
    .search-form-introduction {
      position: absolute;
      width: calc(100vw - 100px);
      height: 100%; } }
  @media only screen and (max-width: 899px) {
    .search-form-introduction {
      position: relative;
      width: 100%;
      height: auto; } }
  @media only screen and (max-width: 599px) {
    .search-form-introduction {
      padding: 20px; } }

@media only screen and (max-width: 1199px) {
  .search-form-introduction__wrap {
    max-width: 615px;
    margin: 0 auto; } }

.search-form-introduction__text {
  margin: 20px 0; }

.search-form-introduction__form {
  position: relative;
  margin-bottom: 20px; }
  .search-form-introduction__form .search-form__input {
    border: 3px solid whitesmoke;
    font-style: italic; }

@media only screen and (max-width: 599px) {
  .search-form-introduction__bullets {
    display: none; } }

.search-form-introduction__bullet-head {
  font-weight: 300; }
  .search-form-introduction__bullet-head > svg {
    position: relative;
    top: 6px;
    width: 20px;
    height: 18px;
    margin-right: 5px; }

.search-form-introduction__bullet-icon {
  cursor: pointer; }
  .search-form-introduction__bullet-icon svg {
    position: relative;
    top: 2px;
    width: 14px;
    height: 13px;
    margin-left: 5px; }
  .search-form-introduction__bullet-icon:hover + .search-form-introduction__bullet-hover {
    display: block; }

.search-form-introduction__bullet-hover {
  display: none;
  position: absolute;
  top: 100%;
  left: calc(100% - 15px);
  width: 340px;
  padding: 20px;
  background: #dcecf0;
  border-radius: 17px; }

.search-form-introduction__bullet-hover-title {
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.375em;
  margin-bottom: 10px;
  font-weight: bold;
  color: #006881; }

.search-form-introduction__bullet-hover-text {
  font-size: 13px;
  font-size: 1.3rem;
  line-height: 1.38462em;
  font-weight: 300;
  color: #9c9e9f; }

.search-form-introduction__bullet {
  position: relative; }
  .search-form-introduction__bullet:last-of-type .search-form-introduction__bullet-hover {
    right: -5px;
    left: auto; }

.search-form {
  position: relative; }

.search-form__input {
  font-size: 15px;
  font-size: 1.5rem;
  line-height: 2em;
  width: 100%;
  height: 40px;
  padding: 5px 20px;
  background: white;
  border: 2px solid whitesmoke;
  border-radius: 5px;
  font-weight: 300;
  color: #363636; }

.search-form__submit {
  position: absolute;
  top: 0;
  right: 0;
  width: 40px;
  height: 40px; }
  .search-form__submit svg {
    position: relative;
    top: 2px;
    width: 15px;
    height: 16px;
    color: black;
    transition: all 250ms ease; }
  .search-form__submit:hover svg {
    color: #006881; }

.search-results {
  margin: 80px 0; }

.search-results__title {
  margin-bottom: 50px; }

.search-results__word {
  font-size: 25px;
  font-size: 2.5rem;
  line-height: 1.16em;
  margin-bottom: 100px;
  align-items: center;
  letter-spacing: 0.69px;
  font-weight: bold; }
  .search-results__word .is-label {
    color: #363636; }
  .search-results__word .is-value {
    margin-left: 30px;
    padding: 10px 20px;
    background-color: whitesmoke;
    color: #006881; }

.search-results__no-results {
  justify-content: center;
  width: 100%;
  padding: 35px;
  background-color: whitesmoke;
  color: #006881; }

.social-share__title {
  margin-bottom: 20px; }

.social-share__links svg {
  width: 28px;
  height: 30px;
  color: #9c9e9f;
  transition: all 250ms ease; }

.social-share__links a {
  display: block;
  margin-right: 30px; }
  .social-share__links a:last-of-type {
    margin-right: 0; }
  .social-share__links a:hover svg {
    color: #009ec5; }

.cahier-popup {
  display: none;
  position: relative;
  width: auto;
  max-width: 650px;
  margin: 0 auto;
  background: #F9F9F9;
  box-shadow: 0 0 50px 0 rgba(0, 0, 0, 0.3); }
  .cahier-popup.is-active {
    display: block; }

.cahier-popup__content {
  padding: 40px; }

.cahier-popup__validation {
  display: none;
  position: relative;
  margin: 0px;
  margin-top: 10px;
  padding: 25px 25px 25px 75px;
  background: rgba(195, 0, 0, 0.08);
  color: #c30000; }
  .cahier-popup__validation.is-active {
    display: block; }

.article-single .wrapper {
  margin-top: -200px; }
  @media only screen and (max-width: 899px) {
    .article-single .wrapper {
      margin-top: -100px; } }

.article-single__header {
  position: relative;
  width: 100%;
  height: 620px;
  z-index: 1; }
  @media only screen and (max-width: 899px) {
    .article-single__header {
      height: 420px; } }
  @media only screen and (max-width: 599px) {
    .article-single__header {
      height: 250px; } }

.article-single__body {
  position: relative;
  max-width: 1025px;
  padding: 40px 100px 150px 100px;
  border-radius: 0 50px 50px 0;
  background-color: white;
  z-index: 2; }
  @media only screen and (max-width: 899px) {
    .article-single__body {
      padding: 50px 50px 100px 50px; } }
  @media only screen and (max-width: 599px) {
    .article-single__body {
      padding: 25px 0 100px 0; } }
  .article-single__body:after {
    top: -77px;
    right: -62px;
    transform: rotate(270deg); }
    @media only screen and (max-width: 599px) {
      .article-single__body:after {
        display: none; } }
  .article-single__body:before {
    position: absolute;
    top: 0;
    right: 100%;
    width: 100vw;
    height: 100%;
    background-color: white;
    content: '';
    z-index: -1; }

.article-single__head {
  margin-bottom: 45px; }
  .article-single__head > div {
    margin-right: 45px; }

.article-single__authors {
  display: block;
  margin: 40px 0; }

.article-single__title {
  margin-bottom: 20px; }

.article-single__editor p:nth-child(1)::first-letter {
  font-size: 80px;
  font-size: 8rem;
  line-height: 0.9375em;
  color: #006881;
  font-weight: bold;
  letter-spacing: 2.22px;
  opacity: 0.4;
  float: left;
  margin-top: -15px;
  margin-right: 5px; }

.article-single__editor:after {
  position: absolute;
  width: 654px;
  height: 100%;
  top: 10%;
  left: 24%;
  background: url("./../images/line-article-single.svg");
  content: '';
  z-index: -1; }
  @media only screen and (max-width: 599px) {
    .article-single__editor:after {
      width: 156px;
      left: auto;
      right: 10%;
      background: url("./../images/line-article-single-mobile.svg") no-repeat; } }

.cahier-authors {
  margin-bottom: 100px;
  padding-top: 50px;
  background-color: #dcecf0; }
  @media only screen and (max-width: 899px) {
    .cahier-authors {
      margin-bottom: 150px; } }

.cahier-authors__text {
  width: 55%;
  padding-right: 50px; }
  @media only screen and (max-width: 1199px) {
    .cahier-authors__text {
      width: 50%;
      padding-right: 0; } }
  @media only screen and (max-width: 899px) {
    .cahier-authors__text {
      width: 100%;
      padding-bottom: 50px; } }

.cahier-authors__title {
  margin-bottom: 30px; }

.cahier-authors__authors {
  width: calc(45% - 70px);
  margin-top: 70px;
  margin-left: 70px;
  padding: 50px 0 30px 30px;
  background-color: white;
  border-radius: 50px 0 0 0; }
  @media only screen and (max-width: 1199px) {
    .cahier-authors__authors {
      width: calc(50% - 70px); } }
  @media only screen and (max-width: 899px) {
    .cahier-authors__authors {
      width: 100%;
      margin: 0;
      padding: 40px 0 0 0;
      border-radius: 0 50px 0 0; } }
  .cahier-authors__authors:after {
    top: -70px;
    left: -70px;
    transform: rotate(180deg); }
    @media only screen and (max-width: 899px) {
      .cahier-authors__authors:after {
        width: calc(100% + 120px);
        height: 170px;
        background: url("./../images/element-06.svg") repeat;
        background-color: white;
        top: auto;
        bottom: -70px; } }
  .cahier-authors__authors:before {
    position: absolute;
    top: 0;
    left: 100%;
    width: 100%;
    height: 100%;
    background-color: white;
    content: '';
    z-index: 1; }
    @media only screen and (max-width: 899px) {
      .cahier-authors__authors:before {
        display: none; } }
  @media only screen and (max-width: 899px) {
    .cahier-authors__authors > .heading {
      padding: 0 15px; } }

.cahier-authors__title {
  margin-bottom: 30px; }

@media only screen and (max-width: 899px) {
  .cahier-authors__author-wrap {
    background-color: white;
    padding: 0 15px; } }

.cahier-authors__author {
  border-bottom: 2px solid #dcecf0; }
  @media only screen and (max-width: 899px) {
    .cahier-authors__author {
      padding-bottom: 20px; } }
  .cahier-authors__author:nth-child(1) {
    border-top: 2px solid #dcecf0; }
  .cahier-authors__author.is-active .cahier-authors__author-head > svg {
    transform: rotate(180deg); }

.cahier-authors__author-head {
  position: relative;
  padding: 15px 0 20px 0;
  cursor: pointer; }
  @media only screen and (max-width: 899px) {
    .cahier-authors__author-head {
      padding-bottom: 0; } }
  .cahier-authors__author-head > svg {
    position: absolute;
    top: 37px;
    right: 0;
    width: 10px;
    height: 18px;
    margin-right: 15px;
    transition: all 500ms ease; }
    @media only screen and (max-width: 899px) {
      .cahier-authors__author-head > svg {
        display: none; } }

.cahier-authors__author-name {
  font-weight: 700; }
  .cahier-authors__author-name > svg {
    position: relative;
    top: 10px;
    width: 14px;
    height: 30px;
    margin-right: 15px; }
    @media only screen and (max-width: 899px) {
      .cahier-authors__author-name > svg {
        margin-right: 5px; } }

.cahier-authors__author-text {
  display: none;
  padding: 0 0 20px 35px; }
  @media only screen and (max-width: 899px) {
    .cahier-authors__author-text {
      padding: 0 0 0 25px; } }

.cahier-authors__caption {
  margin-top: 30px; }
  @media only screen and (max-width: 899px) {
    .cahier-authors__caption {
      padding: 0 15px 40px 15px;
      background-color: white; } }

.cahier-item {
  position: relative;
  background-color: white;
  border-radius: 5px;
  transition: all 250ms ease; }
  .cahier-item:after {
    right: -8px;
    bottom: -8px;
    opacity: 0;
    transform: translateX(50%);
    transition: all 500ms ease;
    z-index: 10; }
  @media only screen and (min-width: 600px) {
    .cahier-item:hover {
      background-color: #009ec5;
      box-shadow: 0 0 10px 0 rgba(156, 158, 159, 0.3); }
      .cahier-item:hover:after {
        opacity: 1;
        transform: translateX(0); }
      .cahier-item:hover .cahier-item__hover {
        top: 0; }
      .cahier-item:hover .cahier-item__body {
        border: 3px solid #009ec5;
        border-top: 0px; }
      .cahier-item:hover .cahier-item__price,
      .cahier-item:hover .cahier-item__download-link,
      .cahier-item:hover .link,
      .cahier-item:hover .cahier-item__download-button {
        color: white;
        opacity: 1; }
        .cahier-item:hover .cahier-item__price svg,
        .cahier-item:hover .cahier-item__download-link svg,
        .cahier-item:hover .link svg,
        .cahier-item:hover .cahier-item__download-button svg {
          color: white; }
      .cahier-item:hover .link:hover svg {
        margin-left: 20px;
        margin-right: -10px; }
      .cahier-item:hover .cahier-item__order-button {
        background: white;
        color: #009ec5; }
      .cahier-item:hover .cahier-item__download-button {
        background-color: #009ec5;
        border: 1px solid white;
        opacity: 1; } }

.cahier-item__image {
  position: relative;
  width: 100%;
  height: 395px;
  border-radius: 5px;
  overflow: hidden;
  z-index: 2; }
  @media only screen and (max-width: 899px) {
    .cahier-item__image {
      height: 200px; } }

.cahier-item__body {
  position: relative;
  min-height: calc(100% - 390px);
  margin-top: -5px;
  padding: 35px 30px 30px 30px;
  border: 3px solid #dedede;
  border-top: 0px;
  border-radius: 0 0 5px 5px;
  transition: all 250ms ease;
  z-index: 1; }
  @media only screen and (max-width: 899px) {
    .cahier-item__body {
      padding: 30px 15px 20px 15px; } }

.cahier-item__order {
  align-items: center;
  margin-bottom: 10px; }

.cahier-item__price {
  font-size: 20px;
  font-size: 2rem;
  line-height: 1.5em;
  width: 125px;
  font-weight: bold;
  color: #009ec5;
  letter-spacing: 0.56px;
  transition: all 250ms ease; }
  @media only screen and (max-width: 899px) {
    .cahier-item__price {
      width: 95px; } }
  .cahier-item__price svg {
    width: 26px;
    height: 30px;
    margin-right: 5px;
    color: #009ec5;
    transition: all 250ms ease; }
  .cahier-item__price.is-disabled {
    color: #aecdd4 !important; }
    .cahier-item__price.is-disabled svg {
      color: #aecdd4 !important; }

.cahier-item__order-button {
  min-width: 150px; }
  .cahier-item__order-button.is-disabled {
    background-color: #aecdd4 !important;
    border: 0;
    cursor: default; }
    .cahier-item__order-button.is-disabled:hover {
      border-radius: 2px; }

.cahier-item__download {
  align-items: center;
  margin-bottom: 20px;
  transition: all 250ms ease; }

.cahier-item__download-link {
  font-size: 20px;
  font-size: 2rem;
  line-height: 1.5em;
  width: 125px;
  color: #535353;
  letter-spacing: 0.56px;
  opacity: 0.7;
  transition: all 250ms ease; }
  @media only screen and (max-width: 899px) {
    .cahier-item__download-link {
      width: 95px; } }
  .cahier-item__download-link svg {
    width: 21px;
    height: 30px;
    margin-right: 5px;
    color: #535353;
    transition: all 250ms ease; }

/**
 * Hover.
 */
.cahier-item__hover {
  position: absolute;
  top: -100%;
  width: 100%;
  height: 100%;
  padding: 20px 20px 0 20px;
  background-color: #009ec5;
  color: white;
  transition: all 500ms ease;
  z-index: 20; }
  @media only screen and (max-width: 899px) {
    .cahier-item__hover {
      display: none; } }

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

.cahier-item__title {
  margin-top: 10px; }

.cahier-item__text {
  height: 90px;
  margin: 20px 0 0 0;
  font-weight: 300;
  overflow: hidden; }

.cahier-item__authors {
  margin-top: 20px;
  padding: 20px 0;
  border-top: 1px solid rgba(255, 255, 255, 0.5);
  border-bottom: 1px solid rgba(255, 255, 255, 0.5); }

.cahier-items__authors-title {
  margin-bottom: 7px; }

.cahier-item__author {
  font-size: 15px;
  font-size: 1.5rem;
  line-height: 2em;
  font-weight: 300; }
  .cahier-item__author svg {
    position: relative;
    top: 2px;
    width: 14px;
    height: 14px;
    margin-right: 10px; }

.cahier-item__authors-more {
  text-decoration: underline;
  transition: all 250ms ease; }
  .cahier-item__authors-more:hover {
    color: #006881; }

.cahier-single {
  margin: 80px 0 100px 0; }
  @media only screen and (max-width: 899px) {
    .cahier-single {
      margin: 50px 0 70px 0; } }

/**
 * Gallery.
 */
.cahier-single__gallery {
  width: 505px;
  margin-right: 25px; }
  @media only screen and (max-width: 1199px) {
    .cahier-single__gallery {
      width: 400px; } }
  @media only screen and (max-width: 899px) {
    .cahier-single__gallery {
      width: 505px;
      margin: 0 auto 50px auto; } }
  @media only screen and (max-width: 599px) {
    .cahier-single__gallery {
      width: 100%; } }

.cahier-single__gallery-big a {
  display: block;
  position: relative;
  width: 505px;
  height: 500px; }
  @media only screen and (max-width: 1199px) {
    .cahier-single__gallery-big a {
      width: 400px;
      height: 400px; } }
  @media only screen and (max-width: 899px) {
    .cahier-single__gallery-big a {
      width: 505px;
      height: 500px; } }
  @media only screen and (max-width: 599px) {
    .cahier-single__gallery-big a {
      width: 100%;
      height: auto; } }

.cahier-single__gallery-big .owl-stage-outer {
  width: 100%;
  overflow: hidden; }

.cahier-single__gallery-big .owl-dots {
  display: none; }
  @media only screen and (max-width: 599px) {
    .cahier-single__gallery-big .owl-dots {
      display: flex;
      justify-content: center;
      margin-top: 10px; }
      .cahier-single__gallery-big .owl-dots .owl-dot {
        width: 7px;
        height: 7px;
        margin-right: 5px;
        border: 1px solid #009ec5;
        background-color: white;
        border-radius: 50%; }
        .cahier-single__gallery-big .owl-dots .owl-dot.active {
          background-color: #009ec5; }
        .cahier-single__gallery-big .owl-dots .owl-dot:last-of-type {
          margin-right: 0; } }

@media only screen and (max-width: 599px) {
  .cahier-single__gallery-big img {
    position: relative;
    width: 100%;
    height: auto; } }

.cahier-single__gallery-thumbnails {
  width: 320px;
  margin: 20px auto; }
  @media only screen and (max-width: 599px) {
    .cahier-single__gallery-thumbnails {
      display: none !important; } }
  .cahier-single__gallery-thumbnails a {
    display: block;
    position: relative;
    width: 100px;
    height: 100px; }
  .cahier-single__gallery-thumbnails .owl-stage-outer {
    width: 100%;
    overflow: hidden; }
  .cahier-single__gallery-thumbnails .owl-nav {
    display: flex;
    position: absolute;
    width: calc(100% + 100px);
    top: calc(50% - 20px);
    left: -50px;
    justify-content: space-between;
    z-index: -1; }

/**
 * Body.
 */
.cahier-single__body {
  width: calc(100% - 530px);
  max-width: 610px; }
  @media only screen and (max-width: 1199px) {
    .cahier-single__body {
      width: calc(100% - 425px); } }
  @media only screen and (max-width: 899px) {
    .cahier-single__body {
      width: 100%;
      max-width: 100%; } }

.cahier-single__date {
  margin-right: 50px; }

.cahier-single__title {
  margin: 10px 0 30px 0; }
  @media only screen and (max-width: 899px) {
    .cahier-single__title {
      margin: 30px 0; } }

.cahier-single__authors {
  display: block;
  margin-top: 20px; }

/**
 * Actions.
 */
.cahier-single__actions {
  position: relative;
  margin: 50px 0;
  padding: 30px;
  background-color: #dcecf0; }
  .cahier-single__actions:after {
    position: absolute;
    top: 0;
    left: 0;
    width: 200vw;
    height: 100%;
    background-color: #dcecf0;
    content: '';
    z-index: -1; }
    @media only screen and (max-width: 899px) {
      .cahier-single__actions:after {
        left: -60px; } }

.cahier-single__order {
  align-items: center;
  margin-bottom: 10px; }

.cahier-single__price {
  font-size: 20px;
  font-size: 2rem;
  line-height: 1.5em;
  width: 125px;
  font-weight: bold;
  color: #009ec5;
  letter-spacing: 0.56px;
  transition: all 250ms ease; }
  .cahier-single__price svg {
    position: relative;
    top: 7px;
    width: 26px;
    height: 30px;
    margin-right: 5px;
    color: #009ec5;
    transition: all 250ms ease; }
  .cahier-single__price.is-disabled {
    color: #aecdd4; }
    .cahier-single__price.is-disabled svg {
      color: #aecdd4; }

.cahier-single__order-button {
  min-width: 150px; }
  .cahier-single__order-button.is-disabled {
    background-color: #aecdd4;
    border: 0;
    cursor: default; }
    .cahier-single__order-button.is-disabled:hover {
      border-radius: 2px; }

.cahier-single__stock {
  font-size: 12px;
  font-size: 1.2rem;
  line-height: 1.08333em;
  width: calc(100% - 275px);
  padding-left: 20px;
  font-weight: 300;
  font-style: italic;
  color: #009ec5; }
  @media only screen and (max-width: 599px) {
    .cahier-single__stock {
      width: 100%;
      padding: 20px 0 0 0; } }
  .cahier-single__stock svg {
    width: 17px;
    height: 18px;
    margin-right: 8px;
    color: #009ec5; }

.cahier-single__download {
  align-items: center;
  transition: all 250ms ease; }

.cahier-single__download-link {
  font-size: 20px;
  font-size: 2rem;
  line-height: 1.5em;
  width: 125px;
  color: #535353;
  letter-spacing: 0.56px;
  opacity: 0.7;
  transition: all 250ms ease; }
  .cahier-single__download-link svg {
    position: relative;
    top: 7px;
    width: 21px;
    height: 30px;
    margin-right: 5px;
    color: #535353;
    transition: all 250ms ease; }

.cahier-single__back {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  position: fixed;
  bottom: 100px;
  width: 300px;
  height: 70px;
  padding-right: 20px;
  background-color: white;
  border: 3px solid #dcecf0;
  border-radius: 0 100px 100px 0;
  z-index: 10; }
  @media only screen and (max-width: 899px) {
    .cahier-single__back {
      display: none; } }

.post-filter--cahiers {
  margin-bottom: 100px; }
  @media only screen and (max-width: 899px) {
    .post-filter--cahiers {
      margin-bottom: 50px; } }

.post-filters__title {
  margin-bottom: 15px; }

.post-filter--cahiers-selects {
  display: flex;
  margin: 0 -20px 15px -20px; }
  @media only screen and (max-width: 899px) {
    .post-filter--cahiers-selects {
      display: block;
      margin: 0px; } }

.cahier-filter__select {
  width: calc(33.3333% - 20px);
  height: 45px;
  background-color: #dcecf0;
  margin: 0px 15px; }
  @media only screen and (max-width: 899px) {
    .cahier-filter__select {
      width: 100%;
      margin: 0px 0px 15px 0; } }
  .cahier-filter__select select {
    position: relative;
    color: #535353;
    -webkit-appearance: none;
    background-color: transparent;
    z-index: 99; }
  .cahier-filter__select svg {
    position: relative;
    top: -26px;
    width: 8px;
    margin-right: 20px;
    float: right; }

.post-filter--cahiers-input {
  display: flex;
  margin: 0 -20px 15px -20px; }
  @media only screen and (max-width: 899px) {
    .post-filter--cahiers-input {
      margin: 0px;
      display: block; } }

.cahier-filter__input {
  width: 85%;
  margin: 15px 15px; }
  @media only screen and (max-width: 899px) {
    .cahier-filter__input {
      margin: 0px 0px;
      width: 100%; } }
  .cahier-filter__input input {
    color: #535353; }
  .cahier-filter__input ::placeholder {
    font-style: italic; }

.cahier-filter__submit {
  width: 15%;
  margin: 15px 15px; }
  @media only screen and (max-width: 899px) {
    .cahier-filter__submit {
      margin: 10px 0px; } }
  .cahier-filter__submit button {
    display: block;
    width: 100%;
    height: 100%;
    font-weight: 300; }
    @media only screen and (max-width: 599px) {
      .cahier-filter__submit button {
        width: auto; } }

.material-content {
  position: relative;
  padding: 80px 0; }
  @media only screen and (max-width: 899px) {
    .material-content {
      padding: 50px 0; } }
  @media only screen and (min-width: 600px) and (max-width: 899px) {
    .material-content {
      max-width: 600px;
      margin: 0 auto; } }
  .material-content:after {
    position: absolute;
    width: 800px;
    height: 60%;
    top: 60%;
    left: 22%;
    background: url("./../images/line-about-us.svg");
    content: '';
    z-index: -1; }

.material-content__head {
  position: relative;
  min-height: 130px; }
  @media only screen and (max-width: 899px) {
    .material-content__head {
      min-height: auto;
      padding-bottom: 50px; } }

.material-content__background-title {
  position: absolute;
  top: 0;
  right: 0; }
  @media only screen and (max-width: 1199px) {
    .material-content__background-title {
      font-size: 80px;
      font-size: 8rem;
      line-height: 1em;
      margin-bottom: 50px;
      letter-spacing: 2.22px;
      color: rgba(0, 104, 129, 0.05); } }

.material-introduction {
  padding-bottom: 80px; }
  @media only screen and (max-width: 899px) {
    .material-introduction {
      padding-bottom: 0; } }

.material-introduction__head {
  justify-content: flex-end;
  margin: 50px 0; }
  @media only screen and (max-width: 899px) {
    .material-introduction__head {
      margin: 50px 0 30px 0; } }

.material-introduction__head-wrap {
  width: 550px; }
  @media only screen and (max-width: 1199px) {
    .material-introduction__head-wrap {
      width: 50%; } }
  @media only screen and (max-width: 899px) {
    .material-introduction__head-wrap {
      width: 100%; } }

.material-introduction__date {
  margin-right: 45px; }

.material-introduction__title {
  margin-top: 20px; }

.material-introduction__columns {
  padding-bottom: 50px; }

.material-introduction__image-wrap {
  width: calc(100% - 550px);
  margin-top: -100px;
  margin-bottom: -100px;
  padding-right: 80px; }
  @media only screen and (max-width: 1199px) {
    .material-introduction__image-wrap {
      align-items: center;
      display: flex;
      width: 50%;
      padding-right: 45px;
      margin: 0; } }
  @media only screen and (max-width: 899px) {
    .material-introduction__image-wrap {
      display: none; } }

.material-introduction__image {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  max-width: 540px;
  height: auto; }
  .material-introduction__image:after {
    right: -70px;
    bottom: 0;
    width: 95px;
    height: 490px; }
    @media only screen and (max-width: 1199px) {
      .material-introduction__image:after {
        right: -30px;
        transform: rotate(180deg);
        max-height: 70%;
        max-width: 100%; } }

.material-introduction__text {
  font-size: 17px;
  font-size: 1.7rem;
  line-height: 2.05882em;
  position: relative;
  width: 550px;
  padding: 45px 0;
  font-weight: 300; }
  @media only screen and (max-width: 1199px) {
    .material-introduction__text {
      width: 50%; } }
  @media only screen and (max-width: 899px) {
    .material-introduction__text {
      width: 100%;
      padding: 30px 0; } }
  .material-introduction__text:before {
    position: absolute;
    top: 0;
    left: -100vw;
    height: 100%;
    width: 200vw;
    background-color: #dcecf0;
    content: '';
    z-index: -1; }

.material-introduction__buttons {
  align-items: center; }
  .material-introduction__buttons a {
    margin-top: 50px; }

.material-introduction__download {
  margin-right: 45px; }

.news-latest-item {
  position: relative;
  width: calc(50% - 20px);
  margin: 10px;
  background-color: white;
  border: 2px solid whitesmoke;
  border-radius: 5px;
  transition: all 250ms ease; }
  @media only screen and (max-width: 1199px) {
    .news-latest-item {
      width: 100%;
      margin: 10px 0; } }
  @media only screen and (max-width: 599px) {
    .news-latest-item {
      margin: 5px 0; } }
  .news-latest-item:hover {
    box-shadow: 0 0 10px 0 rgba(156, 158, 159, 0.3); }
  .news-latest-item a {
    display: block;
    padding: 30px; }

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

.news-latest-item__date {
  position: absolute;
  right: 10px;
  bottom: 5px;
  opacity: 0.7; }

.news-latest {
  padding-top: 80px; }
  @media only screen and (max-width: 899px) {
    .news-latest {
      padding-top: 50px; } }

.news-latest__head {
  position: relative;
  padding-bottom: 50px; }

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

.news-latest__background-title {
  position: absolute;
  right: 0;
  bottom: 15px; }
  @media only screen and (max-width: 1199px) {
    .news-latest__background-title {
      font-size: 80px;
      font-size: 8rem;
      line-height: 1em;
      top: 0;
      bottom: auto;
      letter-spacing: 2.22px;
      color: rgba(0, 104, 129, 0.05); } }

.news-latest__posts {
  position: relative;
  margin: -10px;
  padding: 40px 0; }
  @media only screen and (max-width: 1199px) {
    .news-latest__posts {
      max-width: 610px;
      margin: -10px auto -10px auto; } }
  @media only screen and (max-width: 899px) {
    .news-latest__posts {
      margin: -10px 0; } }
  @media only screen and (max-width: 599px) {
    .news-latest__posts {
      padding: 45px 0; } }
  .news-latest__posts:before {
    position: absolute;
    bottom: 0;
    left: 210px;
    width: 100vw;
    height: 100%;
    background: whitesmoke;
    content: '';
    z-index: -1; }
    @media only screen and (max-width: 1199px) {
      .news-latest__posts:before {
        left: 150px; } }
    @media only screen and (max-width: 599px) {
      .news-latest__posts:before {
        left: -20px;
        width: calc(100vw + 20px); } }

.news-list__container {
  margin: -25px -10px; }
  @media only screen and (max-width: 899px) {
    .news-list__container {
      margin: -25px 0; } }
  @media only screen and (max-width: 599px) {
    .news-list__container {
      margin: -10px 0; } }

.news-list + .content-subscribe {
  margin-top: 80px; }

.news-list-item {
  position: relative;
  width: calc(50% - 20px);
  margin: 25px 10px;
  padding-bottom: 30px; }
  @media only screen and (max-width: 899px) {
    .news-list-item {
      width: 100%;
      margin: 25px 0; } }
  @media only screen and (max-width: 599px) {
    .news-list-item {
      margin: 10px 0; } }
  .news-list-item:hover .news-list-item__body {
    background-color: #009ec5;
    color: white; }
    .news-list-item:hover .news-list-item__body:after {
      opacity: 1;
      transform: translateY(0); }
  .news-list-item:hover .news-list-item__date {
    color: white; }
  .news-list-item:hover .heading,
  .news-list-item:hover .link {
    color: white; }
    .news-list-item:hover .heading svg,
    .news-list-item:hover .link svg {
      margin-left: 20px;
      margin-right: -10px;
      color: white; }

.news-list-item__image {
  position: relative;
  width: calc(100% - 30px);
  height: 400px; }
  @media only screen and (max-width: 899px) {
    .news-list-item__image {
      width: 100%;
      height: 300px; } }
  .news-list-item__image img {
    border-radius: 5px; }

.news-list-item__body {
  position: absolute;
  right: 0;
  bottom: 0;
  width: calc(100% - 85px);
  padding: 20px 20px 30px 20px;
  background-color: #dcecf0;
  border-radius: 5px;
  transition: all 500ms ease; }
  @media only screen and (max-width: 899px) {
    .news-list-item__body {
      width: calc(100% - 60px);
      right: 30px; } }
  @media only screen and (max-width: 599px) {
    .news-list-item__body {
      width: calc(100% - 20px);
      right: 10px; } }
  .news-list-item__body:after {
    top: -29px;
    right: 10px;
    opacity: 0;
    transform: translateY(50%);
    transition: all 500ms ease;
    z-index: 10; }

.news-list-item__date {
  opacity: 0.5;
  transition: all 500ms ease; }

.news-list-item__title {
  margin: 10px 0 10px 0;
  transition: all 500ms ease; }

.news-single .wrapper {
  margin-top: -200px; }
  @media only screen and (max-width: 899px) {
    .news-single .wrapper {
      margin-top: -100px; } }

.news-single__header {
  position: relative;
  width: 100%;
  height: 620px;
  z-index: 1; }
  @media only screen and (max-width: 899px) {
    .news-single__header {
      height: 420px; } }
  @media only screen and (max-width: 599px) {
    .news-single__header {
      height: 250px; } }

.news-single__body {
  position: relative;
  max-width: 1025px;
  padding: 100px 100px 150px 100px;
  border-radius: 0 50px 50px 0;
  background-color: white;
  z-index: 2; }
  @media only screen and (max-width: 899px) {
    .news-single__body {
      padding: 50px; } }
  @media only screen and (max-width: 599px) {
    .news-single__body {
      padding: 25px 0; } }
  .news-single__body:after {
    top: -77px;
    right: -62px;
    transform: rotate(270deg); }
    @media only screen and (max-width: 599px) {
      .news-single__body:after {
        display: none; } }
  .news-single__body:before {
    position: absolute;
    top: 0;
    right: 100%;
    width: 100vw;
    height: 100%;
    background-color: white;
    content: '';
    z-index: -1; }

.news-single__title {
  margin-bottom: 20px; }

.news-single__back {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  position: fixed;
  bottom: 100px;
  width: 300px;
  height: 70px;
  padding-right: 20px;
  background-color: white;
  border: 3px solid #dcecf0;
  border-radius: 0 100px 100px 0;
  z-index: 10; }
  @media only screen and (max-width: 899px) {
    .news-single__back {
      position: relative;
      justify-content: flex-start;
      bottom: 0;
      height: auto;
      border: 0;
      margin-bottom: 100px;
      padding-left: 20px; } }

.post-item {
  position: relative;
  background-color: white;
  border-radius: 5px;
  transition: all 250ms ease; }
  .post-item:after {
    right: -8px;
    bottom: -8px;
    opacity: 0;
    transform: translateX(50%);
    transition: all 500ms ease;
    z-index: 10; }
  .post-item:hover {
    box-shadow: 0 0 10px 0 rgba(156, 158, 159, 0.3); }
    .post-item:hover:after {
      opacity: 1;
      transform: translateX(0); }
    .post-item:hover .post-item__body {
      border: 3px solid white;
      border-top: 0px; }

.post-item__image {
  position: relative;
  width: 100%;
  height: 250px;
  border-radius: 5px;
  overflow: hidden;
  z-index: 2; }
  @media only screen and (max-width: 899px) {
    .post-item__image {
      height: 200px; } }

.post-item__body {
  position: relative;
  min-height: calc(100% - 245px);
  margin-top: -5px;
  padding: 35px 30px 30px 30px;
  border: 3px solid #dedede;
  border-top: 0px;
  border-radius: 0 0 5px 5px;
  transition: all 250ms ease;
  z-index: 1; }
  @media only screen and (max-width: 899px) {
    .post-item__body {
      min-height: calc(100% - 195px); } }

@media only screen and (max-width: 899px) {
  .post-item__title {
    margin-bottom: 30px; } }

.post-item__text {
  margin: 20px 0;
  font-weight: 300; }
  @media only screen and (max-width: 899px) {
    .post-item__text {
      display: none; } }

/**
 * Category.
 */
.post-item--category {
  border-radius: 6px 36px 5px 5px; }
  .post-item--category .post-item__image {
    height: 275px;
    border-radius: 6px 36px 6px 36px; }
  .post-item--category .post-item__body {
    min-height: calc(100% - 250px);
    margin-top: -25px;
    padding-top: 55px; }

.post-list {
  position: relative; }
  .post-list:before {
    position: absolute;
    bottom: 0;
    width: 100%;
    height: 50%;
    background: whitesmoke;
    content: '';
    z-index: -1; }

.post-list__title {
  margin-bottom: 50px; }

.post-list__container {
  margin: -25px -10px; }
  @media only screen and (max-width: 1199px) {
    .post-list__container {
      margin: -25px -25px; } }
  @media only screen and (max-width: 899px) {
    .post-list__container {
      margin: -25px -10px; } }
  @media only screen and (max-width: 599px) {
    .post-list__container {
      margin: -10px 0; } }
  .post-list__container .cahier-item,
  .post-list__container .post-item {
    width: calc(33.3333% - 20px);
    margin: 25px 10px; }
    @media only screen and (max-width: 1199px) {
      .post-list__container .cahier-item,
      .post-list__container .post-item {
        width: calc(50% - 50px);
        margin: 25px; } }
    @media only screen and (max-width: 899px) {
      .post-list__container .cahier-item,
      .post-list__container .post-item {
        width: calc(50% - 20px);
        margin: 25px 10px; } }
    @media only screen and (max-width: 599px) {
      .post-list__container .cahier-item,
      .post-list__container .post-item {
        width: 100%;
        margin: 10px 0; } }

.post-list + .pagination {
  background-color: whitesmoke; }

/**
 * Categories.
 */
.post-list--categories:before {
  display: none; }

.post-list--categories + .pagination {
  background-color: white; }

.post-list--categories .post-list__container {
  margin: -65px -25px; }
  @media only screen and (max-width: 1199px) {
    .post-list--categories .post-list__container {
      margin: -25px -25px; } }
  @media only screen and (max-width: 899px) {
    .post-list--categories .post-list__container {
      margin: -25px -10px; } }
  @media only screen and (max-width: 599px) {
    .post-list--categories .post-list__container {
      margin: -10px 0; } }
  .post-list--categories .post-list__container .cahier-item,
  .post-list--categories .post-list__container .post-item {
    width: calc(33.3333% - 50px);
    margin: 65px 25px; }
    @media only screen and (max-width: 1199px) {
      .post-list--categories .post-list__container .cahier-item,
      .post-list--categories .post-list__container .post-item {
        width: calc(50% - 50px);
        margin: 25px; } }
    @media only screen and (max-width: 899px) {
      .post-list--categories .post-list__container .cahier-item,
      .post-list--categories .post-list__container .post-item {
        width: calc(50% - 20px);
        margin: 25px 10px; } }
    @media only screen and (max-width: 599px) {
      .post-list--categories .post-list__container .cahier-item,
      .post-list--categories .post-list__container .post-item {
        width: 100%;
        margin: 10px 0; } }

/**
 * Sliders.
 */
.post-list--post-slider,
.post-list--theme-slider {
  margin-bottom: 150px; }
  @media only screen and (max-width: 899px) {
    .post-list--post-slider,
    .post-list--theme-slider {
      margin-bottom: 50px; } }
  .post-list--post-slider:before,
  .post-list--theme-slider:before {
    display: none; }
  .post-list--post-slider .post-list__container,
  .post-list--theme-slider .post-list__container {
    position: relative;
    margin: 0; }
    .post-list--post-slider .post-list__container .cahier-item,
    .post-list--post-slider .post-list__container .post-item,
    .post-list--theme-slider .post-list__container .cahier-item,
    .post-list--theme-slider .post-list__container .post-item {
      margin: 0;
      width: 400px;
      height: 100%; }
      @media only screen and (max-width: 899px) {
        .post-list--post-slider .post-list__container .cahier-item,
        .post-list--post-slider .post-list__container .post-item,
        .post-list--theme-slider .post-list__container .cahier-item,
        .post-list--theme-slider .post-list__container .post-item {
          width: 285px; } }

.post-list--post-slider {
  margin-bottom: 0; }
  .post-list--post-slider:after {
    position: absolute;
    top: 50px;
    left: 210px;
    width: 100vw;
    height: 100%;
    background-color: whitesmoke;
    content: '';
    z-index: -1; }
    @media only screen and (max-width: 1199px) {
      .post-list--post-slider:after {
        left: 100px; } }
    @media only screen and (max-width: 899px) {
      .post-list--post-slider:after {
        left: 75px; } }
    @media only screen and (max-width: 599px) {
      .post-list--post-slider:after {
        left: -20px; } }

.post-list--cahiers-no-results {
  text-align: center; }

@media only screen and (max-width: 599px) {
  .post-list--theme-slider .owl-carousel .owl-nav {
    right: 0; } }

.single-authors {
  position: relative;
  margin: 100px 0 150px 0;
  z-index: 2; }
  @media only screen and (max-width: 899px) {
    .single-authors {
      margin: 50px 0 150px 0; } }
  .single-authors:before {
    position: absolute;
    top: 25px;
    left: 0;
    width: 100%;
    height: calc(100% - 25px);
    background-color: #dcecf0;
    content: '';
    z-index: -1; }
  .single-authors:after {
    position: absolute;
    width: 800px;
    height: 100%;
    bottom: -150px;
    right: 10%;
    background: url(./../images/line-about-us.svg);
    content: '';
    z-index: -2; }
  .single-authors .social-share {
    padding: 120px 0 70px 0; }
    @media only screen and (max-width: 899px) {
      .single-authors .social-share {
        padding: 50px 0; } }

.single-authors__title {
  margin-bottom: 5px; }

.single-authors__editor {
  margin-bottom: 70px;
  font-weight: 300; }
  @media only screen and (max-width: 899px) {
    .single-authors__editor {
      margin-bottom: 50px; } }

.single-authors__authors {
  margin: 0 -30px; }
  @media only screen and (max-width: 899px) {
    .single-authors__authors {
      margin: 0; } }

.single-authors__column {
  width: calc(50% - 60px);
  margin: 0 30px; }
  @media only screen and (max-width: 899px) {
    .single-authors__column {
      width: 100%;
      margin: 0; } }
  @media only screen and (max-width: 899px) {
    .single-authors__column:first-of-type {
      margin-bottom: -2px; } }

.single-authors__author {
  border-bottom: 2px solid #bddbe3; }
  @media only screen and (max-width: 899px) {
    .single-authors__author {
      padding-bottom: 20px; } }
  .single-authors__author:nth-child(1) {
    border-top: 2px solid #bddbe3; }
  .single-authors__author.is-active .single-authors__author-head > svg {
    transform: rotate(180deg); }

.single-authors__author-head {
  position: relative;
  padding: 20px 0;
  cursor: pointer; }
  @media only screen and (max-width: 899px) {
    .single-authors__author-head {
      padding: 20px 0 0 0; } }
  .single-authors__author-head > svg {
    position: absolute;
    top: 37px;
    right: 0;
    width: 10px;
    height: 18px;
    margin-right: 15px;
    transition: all 500ms ease; }

.single-authors__author-name {
  font-weight: 700; }
  .single-authors__author-name > svg {
    position: relative;
    top: 10px;
    width: 14px;
    height: 30px;
    margin-right: 15px; }

.single-authors__author-text {
  display: none;
  padding-bottom: 20px;
  padding-left: 35px;
  font-weight: 300; }

.single-authors__caption {
  font-size: 12px;
  font-size: 1.2rem;
  line-height: 1.41667em;
  width: calc(50% - 60px);
  margin-top: 70px;
  color: #009ec5;
  font-weight: 300;
  font-style: italic; }
  @media only screen and (max-width: 899px) {
    .single-authors__caption {
      width: 100%;
      margin-top: 50px; } }

.theme-item {
  width: 295px;
  height: 100%;
  border-radius: 5px;
  background-color: white;
  border: 1px solid whitesmoke;
  transition: all 250ms ease; }
  .theme-item:after {
    right: -8px;
    bottom: calc(50% - 29px);
    opacity: 0;
    transform: translateX(50%);
    transition: all 500ms ease;
    z-index: 10; }
  .theme-item:hover {
    box-shadow: 0 0 10px 0 rgba(156, 158, 159, 0.3); }
    .theme-item:hover:after {
      opacity: 1;
      transform: translateX(0); }

.theme-item__image {
  position: relative;
  width: 100%;
  height: 150px; }
  .theme-item__image img {
    border-radius: 5px; }

.theme-item__body {
  padding: 20px 20px 10px 20px;
  text-align: center; }

.theme-item__icons {
  margin-top: 20px;
  padding: 15px 60px 0 60px;
  border-top: 3px solid #dcecf0; }
  .theme-item__icons svg {
    width: 20px;
    height: 30px; }
    .theme-item__icons svg.fa-copy {
      width: 16px; }

.theme-slider {
  position: relative;
  margin: 80px 0; }
  @media only screen and (max-width: 899px) {
    .theme-slider {
      margin: 50px 0; } }
  .theme-slider .wrapper {
    padding-top: 100px;
    padding-bottom: 50px; }
    @media only screen and (max-width: 899px) {
      .theme-slider .wrapper {
        padding-top: 70px; } }
    @media only screen and (max-width: 599px) {
      .theme-slider .wrapper {
        padding-top: 50px; } }
    .theme-slider .wrapper:before {
      position: absolute;
      bottom: 0;
      left: 260px;
      width: 100vw;
      height: 100%;
      background: whitesmoke;
      content: '';
      z-index: -1; }
      @media only screen and (max-width: 1199px) {
        .theme-slider .wrapper:before {
          left: 150px; } }
      @media only screen and (max-width: 899px) {
        .theme-slider .wrapper:before {
          width: calc(100vw + 60px);
          left: -60px; } }
  .theme-slider:after {
    right: -464px;
    top: 100px;
    transform: rotate(180deg);
    z-index: 2; }
    @media only screen and (max-width: 1199px) {
      .theme-slider:after {
        right: -493px; } }
    @media only screen and (max-width: 899px) {
      .theme-slider:after {
        right: -515px;
        top: 3px; } }
    @media only screen and (max-width: 599px) {
      .theme-slider:after {
        display: none; } }
  .theme-slider * {
    z-index: initial; }

.theme-slider__head {
  position: relative;
  max-width: 610px;
  margin: 0 auto 50px auto;
  padding-top: 90px;
  text-align: center; }
  @media only screen and (max-width: 1199px) {
    .theme-slider__head {
      margin: 0 auto 90px auto;
      padding-top: 40px; } }
  .theme-slider__head .heading-background {
    position: absolute;
    top: 0; }
    @media only screen and (max-width: 1199px) {
      .theme-slider__head .heading-background {
        font-size: 80px;
        font-size: 8rem;
        line-height: 1em;
        width: 100%;
        letter-spacing: 2.22px;
        color: rgba(0, 104, 129, 0.05); } }

.theme-slider__title {
  margin-bottom: 20px; }

.theme-slider__slider {
  z-index: 10; }
  @media only screen and (max-width: 1199px) {
    .theme-slider__slider .owl-nav {
      top: -70px; } }
  @media only screen and (max-width: 599px) {
    .theme-slider__slider .owl-nav {
      top: -70px;
      left: 0;
      right: 0;
      margin: 0 auto;
      justify-content: center; } }

.cart-totals {
  width: 295px;
  margin: 135px 0 95px 20px; }
  @media only screen and (max-width: 1199px) {
    .cart-totals {
      margin: 50px 0 0 0; } }
  .cart-totals .button {
    width: 100%;
    justify-content: center; }
    .cart-totals .button svg {
      position: relative;
      top: 3px;
      width: 15px;
      height: 13px;
      margin-right: 8px; }
  .cart-totals br {
    display: none; }

.cart-totals__total {
  align-items: center;
  justify-content: space-between;
  margin-bottom: 15px;
  padding: 30px 20px;
  background-color: #dcecf0; }
  .cart-totals__total strong {
    width: 50%; }
  .cart-totals__total .includes_tax {
    display: none; }
  .cart-totals__total .amount {
    font-size: 24px;
    font-size: 2.4rem;
    line-height: 1.04167em;
    display: block;
    font-weight: 700;
    color: #009ec5; }

.cart-totals__shipping {
  font-size: 15px;
  font-size: 1.5rem;
  line-height: 2em;
  margin-bottom: 15px;
  padding: 20px;
  background-color: #dcecf0;
  font-weight: 300; }
  .cart-totals__shipping .heading {
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 1.375em;
    display: block;
    margin-bottom: 15px;
    color: #9c9e9f; }
  .cart-totals__shipping strong,
  .cart-totals__shipping em {
    display: block;
    font-weight: 300; }
  .cart-totals__shipping p {
    margin-bottom: 10px; }

.mini-cart {
  position: absolute;
  top: 100px;
  right: 0;
  width: calc(100vw - 152px);
  max-width: 760px;
  padding-top: 100%;
  color: initial;
  opacity: 0;
  z-index: -1;
  transition: all 500ms ease; }
  @media only screen and (max-width: 899px) {
    .mini-cart {
      right: -115px;
      width: calc(100vw - 40px);
      max-width: calc(100vw - 40px); } }
  .mini-cart.is-active {
    top: 0;
    opacity: 1;
    z-index: 99; }

.mini-cart__close {
  position: absolute;
  top: 3px;
  right: 8px;
  cursor: pointer; }
  .mini-cart__close svg {
    width: 10px;
    height: 14px;
    color: #006881; }

.mini-cart__wrap {
  position: relative;
  padding: 50px;
  background-color: white;
  box-shadow: 0 0 10px 0 rgba(0, 104, 129, 0.2);
  border-radius: 2px; }
  @media only screen and (max-width: 1199px) {
    .mini-cart__wrap {
      padding: 25px; } }
  .mini-cart__wrap:after {
    bottom: 10px;
    left: 10px; }
  .mini-cart__wrap .mini_cart_head {
    display: flex;
    position: relative;
    padding-bottom: 10px; }
    .mini-cart__wrap .mini_cart_head span {
      font-size: 14px;
      font-size: 1.4rem;
      line-height: 1.35714em;
      color: #006881;
      opacity: 0.39;
      font-weight: bold; }
      .mini-cart__wrap .mini_cart_head span:nth-child(1) {
        width: 60%;
        text-align: center; }
      .mini-cart__wrap .mini_cart_head span:nth-child(3) {
        position: absolute;
        right: 50px; }
  .mini-cart__wrap .mini_cart_item {
    display: flex;
    position: relative;
    align-items: center;
    margin-bottom: 5px;
    padding: 15px;
    border: 2px solid whitesmoke;
    border-radius: 2px; }
    .mini-cart__wrap .mini_cart_item > a {
      font-size: 14px;
      font-size: 1.4rem;
      line-height: 1.35714em;
      color: #006881;
      font-weight: bold;
      width: 60%; }
    .mini-cart__wrap .mini_cart_item .remove_from_cart_button {
      display: none; }
    .mini-cart__wrap .mini_cart_item .quantity {
      font-size: 14px;
      font-size: 1.4rem;
      line-height: 1.35714em;
      display: flex;
      align-items: center;
      justify-content: space-between;
      width: 40%; }
      .mini-cart__wrap .mini_cart_item .quantity > span {
        font-size: 24px;
        font-size: 2.4rem;
        line-height: 1.04167em;
        padding-right: 35px;
        font-weight: 700;
        color: #009ec5; }
    .mini-cart__wrap .mini_cart_item img {
      width: 105px;
      height: 100px;
      margin-right: 30px; }
      @media only screen and (max-width: 899px) {
        .mini-cart__wrap .mini_cart_item img {
          display: none; } }
  .mini-cart__wrap .woocommerce-mini-cart__total {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    padding: 40px 50px 45px 0; }
    .mini-cart__wrap .woocommerce-mini-cart__total strong {
      font-size: 16px;
      font-size: 1.6rem;
      line-height: 1.375em;
      color: #9c9e9f;
      margin-right: 20px; }
    .mini-cart__wrap .woocommerce-mini-cart__total .amount {
      font-size: 24px;
      font-size: 2.4rem;
      line-height: 1.04167em;
      font-weight: 700;
      color: #009ec5; }
  .mini-cart__wrap .woocommerce-mini-cart__buttons {
    display: flex;
    justify-content: flex-end; }
    .mini-cart__wrap .woocommerce-mini-cart__buttons > a {
      padding-right: 40px;
      padding-left: 40px; }
      .mini-cart__wrap .woocommerce-mini-cart__buttons > a svg {
        position: relative;
        top: 3px;
        width: 15px;
        height: 13px;
        margin-right: 8px; }
      .mini-cart__wrap .woocommerce-mini-cart__buttons > a:hover svg {
        color: white; }
      .mini-cart__wrap .woocommerce-mini-cart__buttons > a.checkout {
        display: none; }

.woocommerce-mini-cart__empty-message {
  text-align: center; }

.woocommerce {
  display: flex;
  flex-wrap: wrap; }
  @media only screen and (max-width: 1199px) {
    .woocommerce {
      justify-content: flex-end; } }
  .woocommerce h2 {
    width: 100%; }

.wrapper--orders .woocommerce-orders-table, .woocommerce-MyAccount-content .woocommerce-table--order-details,
.woocommerce-cart-form {
  width: calc(100% - 315px);
  margin: 95px 0;
  /**
	 * Head.
	 */
  /**
	 * Body.
	 */ }
  @media only screen and (max-width: 1199px) {
    .wrapper--orders .woocommerce-orders-table, .woocommerce-MyAccount-content .woocommerce-table--order-details,
    .woocommerce-cart-form {
      width: 100%;
      margin: 95px 0 0 0; } }
  .wrapper--orders .woocommerce-orders-table table, .woocommerce-MyAccount-content .woocommerce-table--order-details table,
  .woocommerce-cart-form table {
    width: 100%;
    border-collapse: separate;
    border-spacing: 0 20px; }
  .wrapper--orders .woocommerce-orders-table thead, .woocommerce-MyAccount-content .woocommerce-table--order-details thead,
  .woocommerce-cart-form thead {
    font-size: 20px;
    font-size: 2rem;
    line-height: 1.2em;
    color: #006881;
    opacity: 0.39;
    font-weight: bold;
    letter-spacing: 0.56px;
    text-align: left; }
    .wrapper--orders .woocommerce-orders-table thead th, .woocommerce-MyAccount-content .woocommerce-table--order-details thead th,
    .woocommerce-cart-form thead th {
      padding-bottom: 15px; }
      @media only screen and (max-width: 899px) {
        .wrapper--orders .woocommerce-orders-table thead th.product-thumbnail, .woocommerce-MyAccount-content .woocommerce-table--order-details thead th.product-thumbnail,
        .woocommerce-cart-form thead th.product-thumbnail {
          display: none; } }
      @media only screen and (max-width: 899px) {
        .wrapper--orders .woocommerce-orders-table thead th.product-name, .woocommerce-MyAccount-content .woocommerce-table--order-details thead th.product-name,
        .woocommerce-cart-form thead th.product-name {
          padding-left: 15px; } }
  .wrapper--orders .woocommerce-orders-table tbody, .woocommerce-MyAccount-content .woocommerce-table--order-details tbody,
  .woocommerce-cart-form tbody {
    /**
		 * Thumbnail.
		 */
    /**
		 * Product.
		 */
    /**
		 * Amount.
		 */
    /**
		 * Subtotal.
		 */
    /**
		 * Delete.
		 */ }
    .wrapper--orders .woocommerce-orders-table tbody tr, .woocommerce-MyAccount-content .woocommerce-table--order-details tbody tr,
    .woocommerce-cart-form tbody tr {
      padding: 15px;
      border: 2px solid whitesmoke;
      transition: all 250ms ease; }
      .wrapper--orders .woocommerce-orders-table tbody tr:last-of-type, .woocommerce-MyAccount-content .woocommerce-table--order-details tbody tr:last-of-type,
      .woocommerce-cart-form tbody tr:last-of-type {
        display: none; }
      .wrapper--orders .woocommerce-orders-table tbody tr:hover, .woocommerce-MyAccount-content .woocommerce-table--order-details tbody tr:hover,
      .woocommerce-cart-form tbody tr:hover {
        box-shadow: 0 0 10px 0 rgba(0, 104, 129, 0.13); }
    .wrapper--orders .woocommerce-orders-table tbody td, .woocommerce-MyAccount-content .woocommerce-table--order-details tbody td,
    .woocommerce-cart-form tbody td {
      padding: 15px 0;
      border-top: 2px solid whitesmoke;
      border-bottom: 2px solid whitesmoke; }
    .wrapper--orders .woocommerce-orders-table tbody .product-thumbnail, .woocommerce-MyAccount-content .woocommerce-table--order-details tbody .product-thumbnail,
    .woocommerce-cart-form tbody .product-thumbnail {
      padding-left: 15px;
      border-left: 2px solid whitesmoke; }
      @media only screen and (max-width: 899px) {
        .wrapper--orders .woocommerce-orders-table tbody .product-thumbnail, .woocommerce-MyAccount-content .woocommerce-table--order-details tbody .product-thumbnail,
        .woocommerce-cart-form tbody .product-thumbnail {
          display: none; } }
      .wrapper--orders .woocommerce-orders-table tbody .product-thumbnail a, .woocommerce-MyAccount-content .woocommerce-table--order-details tbody .product-thumbnail a,
      .woocommerce-cart-form tbody .product-thumbnail a {
        display: block;
        position: relative;
        width: 195px;
        height: 200px; }
    .wrapper--orders .woocommerce-orders-table tbody .product-name, .woocommerce-MyAccount-content .woocommerce-table--order-details tbody .product-name,
    .woocommerce-cart-form tbody .product-name {
      font-size: 16px;
      font-size: 1.6rem;
      line-height: 1.375em;
      font-weight: bold;
      color: #9c9e9f; }
      @media only screen and (max-width: 899px) {
        .wrapper--orders .woocommerce-orders-table tbody .product-name, .woocommerce-MyAccount-content .woocommerce-table--order-details tbody .product-name,
        .woocommerce-cart-form tbody .product-name {
          padding-left: 15px; } }
      @media only screen and (max-width: 599px) {
        .wrapper--orders .woocommerce-orders-table tbody .product-name, .woocommerce-MyAccount-content .woocommerce-table--order-details tbody .product-name,
        .woocommerce-cart-form tbody .product-name {
          padding-left: 10px; } }
    @media only screen and (max-width: 599px) {
      .wrapper--orders .woocommerce-orders-table tbody .product-quantity > div, .woocommerce-MyAccount-content .woocommerce-table--order-details tbody .product-quantity > div,
      .woocommerce-cart-form tbody .product-quantity > div {
        flex-wrap: wrap;
        justify-content: center;
        width: 40px; } }
    .wrapper--orders .woocommerce-orders-table tbody .product-quantity br, .woocommerce-MyAccount-content .woocommerce-table--order-details tbody .product-quantity br,
    .wrapper--orders .woocommerce-orders-table tbody .product-quantity label,
    .woocommerce-MyAccount-content .woocommerce-table--order-details tbody .product-quantity label,
    .woocommerce-cart-form tbody .product-quantity br,
    .woocommerce-cart-form tbody .product-quantity label {
      display: none; }
    .wrapper--orders .woocommerce-orders-table tbody .product-quantity span, .woocommerce-MyAccount-content .woocommerce-table--order-details tbody .product-quantity span,
    .woocommerce-cart-form tbody .product-quantity span {
      font-size: 18px;
      font-size: 1.8rem;
      line-height: 1.11111em;
      display: flex;
      align-items: center;
      justify-content: center;
      width: 32px;
      height: 40px;
      background-color: #dcecf0;
      color: #009ec5;
      font-weight: bold;
      cursor: pointer;
      border-radius: 2px;
      transition: all 250ms ease; }
      .wrapper--orders .woocommerce-orders-table tbody .product-quantity span:hover, .woocommerce-MyAccount-content .woocommerce-table--order-details tbody .product-quantity span:hover,
      .woocommerce-cart-form tbody .product-quantity span:hover {
        background-color: #009ec5;
        color: #dcecf0; }
    .wrapper--orders .woocommerce-orders-table tbody .product-quantity input, .woocommerce-MyAccount-content .woocommerce-table--order-details tbody .product-quantity input,
    .woocommerce-cart-form tbody .product-quantity input {
      font-size: 18px;
      font-size: 1.8rem;
      line-height: 1em;
      display: flex;
      text-align: center;
      width: 40px;
      height: 40px;
      padding: 0;
      background: transparent;
      color: #006881;
      font-weight: bold; }
      @media only screen and (max-width: 599px) {
        .wrapper--orders .woocommerce-orders-table tbody .product-quantity input, .woocommerce-MyAccount-content .woocommerce-table--order-details tbody .product-quantity input,
        .woocommerce-cart-form tbody .product-quantity input {
          width: 32px; } }
      .wrapper--orders .woocommerce-orders-table tbody .product-quantity input::-webkit-outer-spin-button, .woocommerce-MyAccount-content .woocommerce-table--order-details tbody .product-quantity input::-webkit-outer-spin-button, .wrapper--orders .woocommerce-orders-table tbody .product-quantity input::-webkit-inner-spin-button, .woocommerce-MyAccount-content .woocommerce-table--order-details tbody .product-quantity input::-webkit-inner-spin-button,
      .woocommerce-cart-form tbody .product-quantity input::-webkit-outer-spin-button,
      .woocommerce-cart-form tbody .product-quantity input::-webkit-inner-spin-button {
        -webkit-appearance: none;
        margin: 0; }
    .wrapper--orders .woocommerce-orders-table tbody .product-subtotal, .woocommerce-MyAccount-content .woocommerce-table--order-details tbody .product-subtotal,
    .woocommerce-cart-form tbody .product-subtotal {
      font-size: 24px;
      font-size: 2.4rem;
      line-height: 1.04167em;
      font-weight: 700;
      color: #009ec5; }
    .wrapper--orders .woocommerce-orders-table tbody .product-remove, .woocommerce-MyAccount-content .woocommerce-table--order-details tbody .product-remove,
    .woocommerce-cart-form tbody .product-remove {
      padding-right: 20px;
      border-right: 2px solid whitesmoke; }
      @media only screen and (max-width: 599px) {
        .wrapper--orders .woocommerce-orders-table tbody .product-remove, .woocommerce-MyAccount-content .woocommerce-table--order-details tbody .product-remove,
        .woocommerce-cart-form tbody .product-remove {
          padding-right: 10px; } }
      .wrapper--orders .woocommerce-orders-table tbody .product-remove a, .woocommerce-MyAccount-content .woocommerce-table--order-details tbody .product-remove a,
      .woocommerce-cart-form tbody .product-remove a {
        display: block;
        height: 21px; }
        .wrapper--orders .woocommerce-orders-table tbody .product-remove a:hover svg, .woocommerce-MyAccount-content .woocommerce-table--order-details tbody .product-remove a:hover svg,
        .woocommerce-cart-form tbody .product-remove a:hover svg {
          opacity: 1; }
      .wrapper--orders .woocommerce-orders-table tbody .product-remove svg, .woocommerce-MyAccount-content .woocommerce-table--order-details tbody .product-remove svg,
      .woocommerce-cart-form tbody .product-remove svg {
        width: 18px;
        height: 21px;
        color: #006881;
        opacity: 0.5;
        transition: all 250ms ease; }

.woocommerce-checkout__container {
  margin: 95px 0; }
  .woocommerce-checkout__container:before {
    position: absolute;
    width: 590px;
    height: 2793px;
    top: 33%;
    left: 28%;
    background: url("./../images/line-checkout.svg");
    content: '';
    z-index: -1; }

/**
 * Login.
 */
.woocommerce-form-login-toggle {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  width: 100%;
  margin-top: 70px;
  padding: 30px;
  background: whitesmoke; }
  @media only screen and (max-width: 899px) {
    .woocommerce-form-login-toggle {
      justify-content: flex-start; } }
  .woocommerce-form-login-toggle .woocommerce-info {
    display: flex;
    flex-wrap: wrap;
    align-items: center; }
    @media only screen and (max-width: 899px) {
      .woocommerce-form-login-toggle .woocommerce-info {
        display: block; } }
    .woocommerce-form-login-toggle .woocommerce-info > a {
      margin-left: 45px; }
      @media only screen and (max-width: 899px) {
        .woocommerce-form-login-toggle .woocommerce-info > a {
          display: block;
          margin: 10px 0 0 0; } }
  .woocommerce-form-login-toggle + .woocommerce-form-login {
    display: flex;
    position: relative;
    flex-wrap: wrap;
    width: 100%;
    max-width: 600px;
    margin: 0 auto;
    padding: 30px; }
    .woocommerce-form-login-toggle + .woocommerce-form-login p {
      width: 100%;
      flex-wrap: wrap;
      margin-bottom: 20px; }
    .woocommerce-form-login-toggle + .woocommerce-form-login .lost_password {
      position: absolute;
      bottom: 33px;
      left: 185px;
      color: #009ec5;
      text-decoration: underline; }
    .woocommerce-form-login-toggle + .woocommerce-form-login label {
      width: 100%; }
    .woocommerce-form-login-toggle + .woocommerce-form-login .woocommerce-form-login__submit {
      margin-top: 0; }

/**
 * Form.
 */
.woocommerce-checkout {
  width: 100%;
  margin-top: 70px; }
  .woocommerce-checkout abbr[title] {
    text-decoration: none; }
  .woocommerce-checkout h3 {
    display: none; }
  .woocommerce-checkout .woocommerce-billing-fields__field-wrapper,
  .woocommerce-checkout .woocommerce-shipping-fields__field-wrapper {
    display: flex;
    flex-wrap: wrap;
    margin: 0 -10px; }
    @media only screen and (max-width: 599px) {
      .woocommerce-checkout .woocommerce-billing-fields__field-wrapper,
      .woocommerce-checkout .woocommerce-shipping-fields__field-wrapper {
        margin: 0; } }
  .woocommerce-checkout .form-row {
    width: calc(50% - 20px);
    margin: 0 10px 35px 10px; }
    @media only screen and (max-width: 899px) {
      .woocommerce-checkout .form-row {
        width: 100%;
        margin: 0 0 35px 0; } }
    @media only screen and (max-width: 599px) {
      .woocommerce-checkout .form-row {
        margin: 0 0 20px 0; } }
  .woocommerce-checkout #billing_phone_field,
  .woocommerce-checkout #billing_email_field {
    margin-top: 35px; }
    @media only screen and (max-width: 599px) {
      .woocommerce-checkout #billing_phone_field,
      .woocommerce-checkout #billing_email_field {
        margin-top: 20px; } }
  .woocommerce-checkout #billing_address_1_field,
  .woocommerce-checkout #shipping_address_1_field {
    margin-top: 35px;
    margin-right: 50%; }
    @media only screen and (max-width: 599px) {
      .woocommerce-checkout #billing_address_1_field,
      .woocommerce-checkout #shipping_address_1_field {
        margin-bottom: 20px; } }
  .woocommerce-checkout #ship-to-different-address {
    font-size: 15px;
    font-size: 1.5rem;
    line-height: 2em;
    display: block;
    margin-top: 10px;
    font-weight: 300;
    letter-spacing: 0.42px; }
    .woocommerce-checkout #ship-to-different-address label {
      font-weight: 300; }
    .woocommerce-checkout #ship-to-different-address input {
      position: relative;
      top: 3px;
      margin-right: 15px; }
  .woocommerce-checkout .woocommerce-additional-fields {
    display: none; }
  .woocommerce-checkout .woocommerce-shipping-fields {
    margin-bottom: 200px; }
    @media only screen and (max-width: 899px) {
      .woocommerce-checkout .woocommerce-shipping-fields {
        margin-bottom: 100px; } }

/**
 * Create account.
 */
.woocommerce-checkout-review-order-table__title {
  display: block !important;
  margin-bottom: 50px; }

.woocommerce-checkout .woocommerce-account-fields {
  margin-bottom: 200px; }
  @media only screen and (max-width: 899px) {
    .woocommerce-checkout .woocommerce-account-fields {
      margin-bottom: 100px; } }
  .woocommerce-checkout .woocommerce-account-fields h3 {
    display: block;
    margin-bottom: 45px; }
  .woocommerce-checkout .woocommerce-account-fields .create-account {
    width: 100%;
    margin-left: 0; }
    .woocommerce-checkout .woocommerce-account-fields .create-account .woocommerce-form__label-for-checkbox {
      font-weight: 300; }
    .woocommerce-checkout .woocommerce-account-fields .create-account input {
      position: relative;
      top: 3px;
      margin-right: 15px; }
  .woocommerce-checkout .woocommerce-account-fields #account_password_field {
    margin-left: 0; }

.woocommerce-account-field__intro {
  margin-bottom: 25px; }

/**
 * Cart.
 */
.woocommerce-checkout-review-order-table {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0 20px;
  margin: 0 0 480px 0; }
  .woocommerce-checkout-review-order-table tbody tr:last-of-type {
    display: table-row; }
  .woocommerce-checkout-review-order-table tbody tr {
    background-color: white; }
  .woocommerce-checkout-review-order-table .product-thumbnail {
    width: 245px; }
  .woocommerce-checkout-review-order-table .product-quantity > strong {
    font-size: 22px;
    font-size: 2.2rem;
    line-height: 1.59091em;
    font-weight: 500;
    letter-spacing: 0.61px;
    color: #006881; }
  .woocommerce-checkout-review-order-table .product-subtotal {
    border-right: 2px solid whitesmoke; }
  .woocommerce-checkout-review-order-table tfoot {
    position: absolute;
    display: block;
    width: 100%;
    max-width: 370px;
    border-spacing: 0;
    background-color: #dcecf0;
    margin: 70px 0 0 0;
    padding: 45px 50px; }
    @media only screen and (max-width: 599px) {
      .woocommerce-checkout-review-order-table tfoot {
        padding: 20px; } }
    .woocommerce-checkout-review-order-table tfoot th {
      font-size: 16px;
      font-size: 1.6rem;
      line-height: 1.375em;
      text-align: left;
      vertical-align: top;
      width: 200px;
      color: #9c9e9f;
      padding-bottom: 20px; }
      @media only screen and (max-width: 599px) {
        .woocommerce-checkout-review-order-table tfoot th {
          width: 230px; } }
    .woocommerce-checkout-review-order-table tfoot td {
      font-size: 16px;
      font-size: 1.6rem;
      line-height: 1.375em;
      width: 70px;
      text-align: right;
      color: #009ec5;
      padding-bottom: 20px; }
      @media only screen and (max-width: 599px) {
        .woocommerce-checkout-review-order-table tfoot td {
          width: 100px; } }
    .woocommerce-checkout-review-order-table tfoot .includes_tax {
      display: none; }
    .woocommerce-checkout-review-order-table tfoot label {
      font-size: 16px;
      font-size: 1.6rem;
      line-height: 1.375em;
      color: #009ec5;
      font-weight: 400; }
    .woocommerce-checkout-review-order-table tfoot .woocommerce-shipping-totals th,
    .woocommerce-checkout-review-order-table tfoot .woocommerce-shipping-totals td {
      padding-bottom: 0; }
    .woocommerce-checkout-review-order-table tfoot .woocommerce-shipping-totals label {
      font-size: 0; }
      .woocommerce-checkout-review-order-table tfoot .woocommerce-shipping-totals label .amount {
        font-size: 16px;
        font-size: 1.6rem;
        line-height: 1.375em; }
    .woocommerce-checkout-review-order-table tfoot .cart-shipping-caption th {
      padding-top: 10px; }
    .woocommerce-checkout-review-order-table tfoot .cart-shipping-caption p,
    .woocommerce-checkout-review-order-table tfoot .cart-shipping-caption em {
      font-size: 11px;
      font-size: 1.1rem;
      line-height: 1.54545em;
      font-weight: 300;
      font-style: italic; }
    .woocommerce-checkout-review-order-table tfoot .cart-shipping-caption p {
      padding-bottom: 15px; }
      .woocommerce-checkout-review-order-table tfoot .cart-shipping-caption p:last-of-type {
        padding: 0; }
    .woocommerce-checkout-review-order-table tfoot .order-total {
      border-top: 3px solid white; }
      .woocommerce-checkout-review-order-table tfoot .order-total th {
        padding-top: 20px;
        padding-bottom: 0; }
      .woocommerce-checkout-review-order-table tfoot .order-total td {
        font-size: 30px;
        font-size: 3rem;
        line-height: 1em;
        padding-top: 15px;
        padding-bottom: 0; }

/**
 * Payment.
 */
.woocommerce-checkout-payment h3 {
  display: block;
  margin-bottom: 20px; }

.woocommerce-checkout-payment .payment_methods {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 100px; }

.woocommerce-checkout-payment .wc_payment_method {
  width: 370px;
  min-height: 320px;
  margin-right: 20px;
  padding: 20px;
  border: 2px solid whitesmoke;
  background-color: white; }
  .woocommerce-checkout-payment .wc_payment_method:hover {
    box-shadow: 0 0 10px 0 rgba(0, 104, 129, 0.13); }
  .woocommerce-checkout-payment .wc_payment_method label {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 130px;
    background: #dcecf0; }
    .woocommerce-checkout-payment .wc_payment_method label svg {
      width: 55px;
      height: 60px;
      color: #006881; }
  .woocommerce-checkout-payment .wc_payment_method .title {
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 1.375em;
    width: 100%;
    text-align: center;
    padding: 10px 0 25px 0;
    font-weight: bold;
    color: #535353; }
  .woocommerce-checkout-payment .wc_payment_method br {
    display: none; }
  .woocommerce-checkout-payment .wc_payment_method .payment_method_ideal {
    position: relative;
    width: 100%;
    height: 45px;
    overflow: hidden;
    border: 2px solid #009ec5;
    text-indent: -9999px;
    border-radius: 2px; }
    .woocommerce-checkout-payment .wc_payment_method .payment_method_ideal p {
      height: 45px; }
    .woocommerce-checkout-payment .wc_payment_method .payment_method_ideal select {
      position: absolute;
      top: -2px;
      left: -2px;
      width: calc(100% + 60px);
      max-width: calc(100% + 60px);
      border: 0;
      background-color: transparent;
      z-index: 2; }
    .woocommerce-checkout-payment .wc_payment_method .payment_method_ideal svg {
      position: absolute;
      top: 15px;
      right: 12px;
      width: 13px;
      height: 14px;
      color: #009ec5;
      z-index: 1; }

.woocommerce-checkout-payment .button {
  width: 100%;
  max-width: 320px;
  justify-content: center;
  margin-top: 20px; }
  .woocommerce-checkout-payment .button svg {
    position: relative;
    top: 2px;
    width: 15px;
    height: 13px;
    margin-right: 10px;
    color: white; }

.woocommerce-checkout-payment .form-row {
  width: 100%;
  margin: 0; }
  .woocommerce-checkout-payment .form-row .woocommerce-form__label-for-checkbox {
    font-weight: 300; }
    .woocommerce-checkout-payment .form-row .woocommerce-form__label-for-checkbox input {
      position: relative;
      top: 3px;
      margin-right: 15px; }
    .woocommerce-checkout-payment .form-row .woocommerce-form__label-for-checkbox a {
      text-decoration: underline; }
      .woocommerce-checkout-payment .form-row .woocommerce-form__label-for-checkbox a:hover {
        color: #009ec5; }

.woocommerce-checkout-payment__notice {
  display: flex;
  margin-top: 20px; }
  .woocommerce-checkout-payment__notice i {
    font-size: 13px;
    font-size: 1.3rem;
    line-height: 1.38462em;
    display: flex;
    position: relative;
    top: 6px;
    align-items: center;
    justify-content: center;
    width: 16px;
    height: 16px;
    font-style: normal;
    margin-right: 17px;
    background-color: #d8d8d8;
    border-radius: 50%;
    color: white; }
  .woocommerce-checkout-payment__notice span {
    width: calc(100% - 33px);
    font-weight: 300; }

/**
 * Thankyou.
 */
.woocommerce-order {
  margin-top: 50px; }

.woocommerce-order-details,
.woocommerce-customer-details {
  display: none; }

.woocommerce-form-login {
  width: 100%;
  margin-top: 75px; }
  .woocommerce-form-login br {
    display: none; }
  .woocommerce-form-login label {
    margin-bottom: 2px; }
  .woocommerce-form-login .form-row {
    display: inline-flex;
    margin-bottom: 40px; }
    .woocommerce-form-login .form-row.form-row-wide {
      display: block; }

.woocommerce-form-login__rememberme {
  display: none; }

.woocommerce-LostPassword {
  font-size: 15px;
  font-size: 1.5rem;
  line-height: 2em;
  display: inline-flex;
  margin: 65px 0 0 25px;
  text-decoration: underline;
  color: #009ec5;
  transition: all 250ms ease; }
  @media only screen and (max-width: 899px) {
    .woocommerce-LostPassword {
      margin-top: 40px; } }
  .woocommerce-LostPassword:hover {
    color: #006881; }

.woocommerce-form-login__submit {
  margin-top: 65px;
  padding-right: 30px;
  padding-left: 30px; }
  @media only screen and (max-width: 899px) {
    .woocommerce-form-login__submit {
      margin-top: 40px; } }
  .woocommerce-form-login__submit svg {
    position: relative;
    top: 4px;
    width: 15px;
    height: 13px;
    margin-right: 8px; }

.woocommerce-MyAccount-content {
  width: calc(100% - 390px);
  margin: 100px 0 95px 140px; }
  @media only screen and (max-width: 1199px) {
    .woocommerce-MyAccount-content {
      width: calc(100% - 300px);
      margin: 100px 0 95px 50px; } }
  @media only screen and (max-width: 899px) {
    .woocommerce-MyAccount-content {
      width: 100%;
      margin: 50px 0; } }
  .woocommerce-MyAccount-content p,
  .woocommerce-MyAccount-content .woocommerce-notices-wrapper {
    width: 100%; }
  .woocommerce-MyAccount-content .woocommerce-message {
    margin-top: 50px; }

/**
 * Dashboard.
 */
.wrapper--my-account .woocommerce {
  align-items: center; }

/**
 * Addresses.
 */
.wrapper--edit-address .woocommerce {
  align-items: center; }

.wrapper--edit-address .woocommerce-MyAccount-content {
  padding-left: 80px; }
  @media only screen and (max-width: 1199px) {
    .wrapper--edit-address .woocommerce-MyAccount-content {
      padding-left: 0; } }
  .wrapper--edit-address .woocommerce-MyAccount-content > p {
    display: none; }

.woocommerce-Addresses {
  display: flex;
  flex-wrap: wrap;
  width: 100%; }
  .woocommerce-Addresses .woocommerce-Address {
    width: 50%; }
    @media only screen and (max-width: 899px) {
      .woocommerce-Addresses .woocommerce-Address {
        width: 100%;
        margin-bottom: 30px; } }
  .woocommerce-Addresses h3 {
    font-size: 20px;
    font-size: 2rem;
    line-height: 1.2em;
    margin-bottom: 25px;
    letter-spacing: 0.56px;
    opacity: 0.32; }
    @media only screen and (max-width: 899px) {
      .woocommerce-Addresses h3 {
        margin-bottom: 10px; } }
  .woocommerce-Addresses a {
    color: #009ec5;
    text-decoration: underline; }

/**
 * Forms.
 */
.wrapper--edit-account .woocommerce-MyAccount-content,
.wrapper--verzending .woocommerce-MyAccount-content,
.wrapper--facturatie .woocommerce-MyAccount-content {
  padding-top: 40px; }

.woocommerce-MyAccount-content form h3 {
  margin-bottom: 20px; }

.woocommerce-MyAccount-content form.edit-account,
.woocommerce-MyAccount-content form .woocommerce-address-fields__field-wrapper {
  display: flex;
  flex-wrap: wrap;
  margin: 0 -10px; }
  @media only screen and (max-width: 899px) {
    .woocommerce-MyAccount-content form.edit-account,
    .woocommerce-MyAccount-content form .woocommerce-address-fields__field-wrapper {
      margin: 0; } }

.woocommerce-MyAccount-content form .form-row {
  width: calc(50% - 20px);
  margin: 0 10px 35px 10px; }
  @media only screen and (max-width: 899px) {
    .woocommerce-MyAccount-content form .form-row {
      width: 100%;
      margin: 0 0 35px 0; } }

.woocommerce-MyAccount-content form #shipping_address_1_field,
.woocommerce-MyAccount-content form #shipping_address_2_field,
.woocommerce-MyAccount-content form #billing_address_1_field,
.woocommerce-MyAccount-content form #billing_address_2_field {
  width: 100%; }

.woocommerce-MyAccount-content form #billing_address_1_field {
  margin-bottom: 20px; }

.woocommerce-MyAccount-content form label {
  color: #535353; }

.woocommerce-MyAccount-content form input,
.woocommerce-MyAccount-content form select {
  color: #535353; }

.woocommerce-MyAccount-content form em {
  font-size: 12px;
  font-size: 1.2rem;
  line-height: 1.83333em;
  margin-top: 10px;
  color: #535353;
  font-style: normal;
  letter-spacing: 0.33px;
  opacity: 0.7; }

.woocommerce-MyAccount-content form fieldset {
  display: flex;
  flex-wrap: wrap;
  width: 50%;
  margin: 65px 0 15px; }
  @media only screen and (max-width: 899px) {
    .woocommerce-MyAccount-content form fieldset {
      width: 100%; } }
  .woocommerce-MyAccount-content form fieldset legend {
    width: 100%;
    margin-bottom: 40px;
    padding-left: 10px; }
    @media only screen and (max-width: 899px) {
      .woocommerce-MyAccount-content form fieldset legend {
        padding-left: 0; } }
  .woocommerce-MyAccount-content form fieldset .form-row {
    width: 100%;
    margin-bottom: 20px; }

.woocommerce-MyAccount-content form .button {
  padding-right: 30px;
  padding-left: 30px; }
  .woocommerce-MyAccount-content form .button svg {
    position: relative;
    top: 4px;
    width: 15px;
    height: 13px;
    margin-right: 8px; }

.woocommerce-MyAccount-content form.edit-account .button {
  margin-left: 10px; }
  @media only screen and (max-width: 899px) {
    .woocommerce-MyAccount-content form.edit-account .button {
      margin-left: 0; } }

/**
 * Order table.
 */
.wrapper--orders .woocommerce-orders-table {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0 20px;
  margin: 0; }
  .wrapper--orders .woocommerce-orders-table thead th {
    padding-bottom: 25px; }
  .wrapper--orders .woocommerce-orders-table tbody tr:last-of-type {
    display: table-row; }
  .wrapper--orders .woocommerce-orders-table .woocommerce-orders-table__header-order-actions,
  .wrapper--orders .woocommerce-orders-table .woocommerce-orders-table__cell-order-actions {
    display: none; }
  .wrapper--orders .woocommerce-orders-table .woocommerce-orders-table__cell-order-number,
  .wrapper--orders .woocommerce-orders-table .woocommerce-orders-table__header-order-number {
    padding-left: 30px; }
  .wrapper--orders .woocommerce-orders-table .woocommerce-orders-table__cell-order-number {
    border-left: 2px solid whitesmoke; }
  .wrapper--orders .woocommerce-orders-table .woocommerce-orders-table__cell-order-total {
    border-right: 2px solid whitesmoke; }

/**
 * Order details.
 */
.woocommerce-MyAccount-content .woocommerce-order-details {
  display: block; }
  .woocommerce-MyAccount-content .woocommerce-order-details h2 {
    margin: 50px 0 35px 0; }

.woocommerce-MyAccount-content .woocommerce-table--order-details {
  width: 100%;
  margin: 0;
  border-collapse: separate;
  border-spacing: 0 20px; }
  .woocommerce-MyAccount-content .woocommerce-table--order-details th {
    text-align: left; }
    .woocommerce-MyAccount-content .woocommerce-table--order-details th.woocommerce-table__product-name {
      padding-left: 30px;
      padding-bottom: 0; }
  .woocommerce-MyAccount-content .woocommerce-table--order-details td.woocommerce-table__product-name {
    border-left: 2px solid whitesmoke;
    padding-left: 30px; }
  .woocommerce-MyAccount-content .woocommerce-table--order-details tbody tr:last-of-type {
    display: table-row; }
  .woocommerce-MyAccount-content .woocommerce-table--order-details .woocommerce-table__product-total {
    border-right: 2px solid whitesmoke; }
  .woocommerce-MyAccount-content .woocommerce-table--order-details tfoot {
    border-spacing: 0;
    display: block;
    margin-top: 20px; }
    .woocommerce-MyAccount-content .woocommerce-table--order-details tfoot th {
      width: 50%; }

.woocommerce-MyAccount-content mark {
  background-color: #dcecf0; }

/**
 * Background.
 */
.wrapper--account {
  position: initial; }
  .wrapper--account:after {
    top: 350px;
    right: 0; }

.woocommerce-MyAccount-navigation {
  position: relative;
  width: 250px;
  margin: 150px 0;
  padding: 50px 20px 50px 0;
  background-color: #dcecf0; }
  @media only screen and (max-width: 899px) {
    .woocommerce-MyAccount-navigation {
      width: 100%;
      margin: 50px 0 0 0; } }
  .woocommerce-MyAccount-navigation:before {
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background-color: #dcecf0;
    content: '';
    z-index: -1; }
  .woocommerce-MyAccount-navigation .heading {
    margin-bottom: 50px; }
  .woocommerce-MyAccount-navigation li a {
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 1.375em;
    position: relative;
    display: flex;
    align-items: center;
    width: 100%;
    height: 65px;
    padding: 15px 0;
    color: #9c9e9f;
    font-weight: bold;
    border-bottom: 2px solid white;
    transition: all 250ms ease; }
    .woocommerce-MyAccount-navigation li a svg {
      position: relative;
      top: 0;
      width: 19px;
      height: 18px;
      margin-right: 10px;
      transition: all 250ms ease; }
    .woocommerce-MyAccount-navigation li a:before {
      position: absolute;
      top: 0;
      right: -20px;
      width: 100vw;
      height: 100%;
      background-color: #dcecf0;
      content: '';
      z-index: -1; }
    .woocommerce-MyAccount-navigation li a:hover {
      color: #009ec5; }
      .woocommerce-MyAccount-navigation li a:hover svg {
        color: #009ec5; }
  .woocommerce-MyAccount-navigation li.is-active {
    margin-top: -2px; }
    .woocommerce-MyAccount-navigation li.is-active a {
      background-color: white;
      border-bottom: 2px solid #dcecf0; }
      .woocommerce-MyAccount-navigation li.is-active a:before {
        background-color: white; }
  .woocommerce-MyAccount-navigation .woocommerce-MyAccount-navigation-link--dashboard.is-active a,
  .woocommerce-MyAccount-navigation .woocommerce-MyAccount-navigation-link--dashboard a {
    height: auto;
    margin-bottom: 50px;
    padding: 0;
    background-color: transparent !important;
    border-bottom: 0; }
    @media only screen and (max-width: 899px) {
      .woocommerce-MyAccount-navigation .woocommerce-MyAccount-navigation-link--dashboard.is-active a,
      .woocommerce-MyAccount-navigation .woocommerce-MyAccount-navigation-link--dashboard a {
        margin-bottom: 20px; } }
    .woocommerce-MyAccount-navigation .woocommerce-MyAccount-navigation-link--dashboard.is-active a:before,
    .woocommerce-MyAccount-navigation .woocommerce-MyAccount-navigation-link--dashboard a:before {
      display: none; }

.woocommerce-notices-wrapper,
.woocommerce-notice {
  width: 100%; }

.cart-empty,
.woocommerce-message {
  font-size: 20px;
  font-size: 2rem;
  line-height: 1.2em;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: row-reverse;
  width: 100%;
  margin-bottom: 50px;
  padding: 40px;
  background-color: whitesmoke;
  color: #006881;
  font-weight: bold; }
  .cart-empty a,
  .woocommerce-message a {
    margin-left: 25px; }
    .cart-empty a.restore-item,
    .woocommerce-message a.restore-item {
      margin: 0 25px 0 0; }

.cart-empty,
.woocommerce-notices-wrapper .woocommerce-message {
  margin-top: 95px; }

.woocommerce-ResetPassword br {
  display: none; }

.woocommerce-ResetPassword label {
  margin-bottom: 2px; }

.woocommerce-ResetPassword .woocommerce-form-row--first {
  margin-top: 40px; }

.woocommerce-ResetPassword .woocommerce-Button {
  margin-top: 65px;
  padding-right: 30px;
  padding-left: 30px; }
  @media only screen and (max-width: 899px) {
    .woocommerce-ResetPassword .woocommerce-Button {
      margin-top: 40px; } }
  .woocommerce-ResetPassword .woocommerce-Button svg {
    position: relative;
    top: 4px;
    width: 15px;
    height: 13px;
    margin-right: 8px; }

/**
 * 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` 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.8)-80 color utility.
			 */
.color-white-80 {
  color: rgba(255, 255, 255, 0.8); }

/**
			 * `background-color` rgba(255, 255, 255, 0.8)-80 color utility.
			 */
.background-color-white-80 {
  background-color: rgba(255, 255, 255, 0.8); }

/**
			 * `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` #006881-100 color utility.
			 */
.color-blue-lagoon-100 {
  color: #006881; }

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

/**
			 * `color` rgba(0, 104, 129, 0.5)-50 color utility.
			 */
.color-blue-lagoon-50 {
  color: rgba(0, 104, 129, 0.5); }

/**
			 * `background-color` rgba(0, 104, 129, 0.5)-50 color utility.
			 */
.background-color-blue-lagoon-50 {
  background-color: rgba(0, 104, 129, 0.5); }

/**
			 * `color` rgba(0, 104, 129, 0.4)-40 color utility.
			 */
.color-blue-lagoon-40 {
  color: rgba(0, 104, 129, 0.4); }

/**
			 * `background-color` rgba(0, 104, 129, 0.4)-40 color utility.
			 */
.background-color-blue-lagoon-40 {
  background-color: rgba(0, 104, 129, 0.4); }

/**
			 * `color` rgba(0, 104, 129, 0.32)-32 color utility.
			 */
.color-blue-lagoon-32 {
  color: rgba(0, 104, 129, 0.32); }

/**
			 * `background-color` rgba(0, 104, 129, 0.32)-32 color utility.
			 */
.background-color-blue-lagoon-32 {
  background-color: rgba(0, 104, 129, 0.32); }

/**
			 * `color` rgba(0, 104, 129, 0.2)-20 color utility.
			 */
.color-blue-lagoon-20 {
  color: rgba(0, 104, 129, 0.2); }

/**
			 * `background-color` rgba(0, 104, 129, 0.2)-20 color utility.
			 */
.background-color-blue-lagoon-20 {
  background-color: rgba(0, 104, 129, 0.2); }

/**
			 * `color` rgba(0, 104, 129, 0.13)-13 color utility.
			 */
.color-blue-lagoon-13 {
  color: rgba(0, 104, 129, 0.13); }

/**
			 * `background-color` rgba(0, 104, 129, 0.13)-13 color utility.
			 */
.background-color-blue-lagoon-13 {
  background-color: rgba(0, 104, 129, 0.13); }

/**
			 * `color` rgba(0, 104, 129, 0.08)-8 color utility.
			 */
.color-blue-lagoon-8 {
  color: rgba(0, 104, 129, 0.08); }

/**
			 * `background-color` rgba(0, 104, 129, 0.08)-8 color utility.
			 */
.background-color-blue-lagoon-8 {
  background-color: rgba(0, 104, 129, 0.08); }

/**
			 * `color` rgba(0, 104, 129, 0.05)-5 color utility.
			 */
.color-blue-lagoon-5 {
  color: rgba(0, 104, 129, 0.05); }

/**
			 * `background-color` rgba(0, 104, 129, 0.05)-5 color utility.
			 */
.background-color-blue-lagoon-5 {
  background-color: rgba(0, 104, 129, 0.05); }

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

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

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

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

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

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

/**
			 * `color` rgba(156, 158, 159, 0.3)-30 color utility.
			 */
.color-grey-30 {
  color: rgba(156, 158, 159, 0.3); }

/**
			 * `background-color` rgba(156, 158, 159, 0.3)-30 color utility.
			 */
.background-color-grey-30 {
  background-color: rgba(156, 158, 159, 0.3); }

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

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

/**
			 * `color` rgba(54, 54, 54, 0.1)-110 color utility.
			 */
.color-grey-110 {
  color: rgba(54, 54, 54, 0.1); }

/**
			 * `background-color` rgba(54, 54, 54, 0.1)-110 color utility.
			 */
.background-color-grey-110 {
  background-color: rgba(54, 54, 54, 0.1); }

/**
			 * `color` rgba(54, 54, 54, 0.5)-150 color utility.
			 */
.color-grey-150 {
  color: rgba(54, 54, 54, 0.5); }

/**
			 * `background-color` rgba(54, 54, 54, 0.5)-150 color utility.
			 */
.background-color-grey-150 {
  background-color: rgba(54, 54, 54, 0.5); }

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

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

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

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

/**
			 * `color` #535353-400 color utility.
			 */
.color-grey-400 {
  color: #535353; }

/**
			 * `background-color` #535353-400 color utility.
			 */
.background-color-grey-400 {
  background-color: #535353; }

/**
			 * `color` #dedede-500 color utility.
			 */
.color-grey-500 {
  color: #dedede; }

/**
			 * `background-color` #dedede-500 color utility.
			 */
.background-color-grey-500 {
  background-color: #dedede; }

/**
			 * `color` #d8d8d8-600 color utility.
			 */
.color-grey-600 {
  color: #d8d8d8; }

/**
			 * `background-color` #d8d8d8-600 color utility.
			 */
.background-color-grey-600 {
  background-color: #d8d8d8; }

/**
			 * `color` #bddbe3-700 color utility.
			 */
.color-grey-700 {
  color: #bddbe3; }

/**
			 * `background-color` #bddbe3-700 color utility.
			 */
.background-color-grey-700 {
  background-color: #bddbe3; }

/**
			 * `color` #c4c4c4-800 color utility.
			 */
.color-grey-800 {
  color: #c4c4c4; }

/**
			 * `background-color` #c4c4c4-800 color utility.
			 */
.background-color-grey-800 {
  background-color: #c4c4c4; }

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

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

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

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

/**
			 * `color` rgba(195, 0, 0, 0.08)-8 color utility.
			 */
.color-red-8 {
  color: rgba(195, 0, 0, 0.08); }

/**
			 * `background-color` rgba(195, 0, 0, 0.08)-8 color utility.
			 */
.background-color-red-8 {
  background-color: rgba(195, 0, 0, 0.08); }

/**
 * 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.
 */
.wrapper--orders .woocommerce-orders-table tbody .product-thumbnail a img, .woocommerce-MyAccount-content .woocommerce-table--order-details tbody .product-thumbnail a img,
.woocommerce-cart-form tbody .product-thumbnail a img,
.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: "Ubuntu"; }

@media only screen and (max-width: 599px) {
  .text-sm-default {
    font-family: "Ubuntu"; } }

@media only screen and (min-width: 600px) {
  .text-md-default {
    font-family: "Ubuntu"; } }

@media only screen and (min-width: 900px) {
  .text-lg-default {
    font-family: "Ubuntu"; } }

@media only screen and (min-width: 1200px) {
  .text-xl-default {
    font-family: "Ubuntu"; } }

/**
 * Text size utility classes.
 */
.text-xs-h1 {
  font-size: 50px;
  font-size: 5rem;
  line-height: 1.14em; }

.text-xs-h2 {
  font-size: 40px;
  font-size: 4rem;
  line-height: 1.15em; }

.text-xs-h3 {
  font-size: 25px;
  font-size: 2.5rem;
  line-height: 1.16em; }

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

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

@media only screen and (max-width: 599px) {
  .text-sm-h1 {
    font-size: 50px;
    font-size: 5rem;
    line-height: 1.14em; }
  .text-sm-h2 {
    font-size: 40px;
    font-size: 4rem;
    line-height: 1.15em; }
  .text-sm-h3 {
    font-size: 25px;
    font-size: 2.5rem;
    line-height: 1.16em; }
  .text-sm-h4 {
    font-size: 20px;
    font-size: 2rem;
    line-height: 1.2em; }
  .text-sm-p {
    font-size: 15px;
    font-size: 1.5rem;
    line-height: 2em; } }

@media only screen and (min-width: 600px) {
  .text-md-h1 {
    font-size: 50px;
    font-size: 5rem;
    line-height: 1.14em; }
  .text-md-h2 {
    font-size: 40px;
    font-size: 4rem;
    line-height: 1.15em; }
  .text-md-h3 {
    font-size: 25px;
    font-size: 2.5rem;
    line-height: 1.16em; }
  .text-md-h4 {
    font-size: 20px;
    font-size: 2rem;
    line-height: 1.2em; }
  .text-md-p {
    font-size: 15px;
    font-size: 1.5rem;
    line-height: 2em; } }

@media only screen and (min-width: 900px) {
  .text-lg-h1 {
    font-size: 50px;
    font-size: 5rem;
    line-height: 1.14em; }
  .text-lg-h2 {
    font-size: 40px;
    font-size: 4rem;
    line-height: 1.15em; }
  .text-lg-h3 {
    font-size: 25px;
    font-size: 2.5rem;
    line-height: 1.16em; }
  .text-lg-h4 {
    font-size: 20px;
    font-size: 2rem;
    line-height: 1.2em; }
  .text-lg-p {
    font-size: 15px;
    font-size: 1.5rem;
    line-height: 2em; } }

@media only screen and (min-width: 1200px) {
  .text-xl-h1 {
    font-size: 50px;
    font-size: 5rem;
    line-height: 1.14em; }
  .text-xl-h2 {
    font-size: 40px;
    font-size: 4rem;
    line-height: 1.15em; }
  .text-xl-h3 {
    font-size: 25px;
    font-size: 2.5rem;
    line-height: 1.16em; }
  .text-xl-h4 {
    font-size: 20px;
    font-size: 2rem;
    line-height: 1.2em; }
  .text-xl-p {
    font-size: 15px;
    font-size: 1.5rem;
    line-height: 2em; } }

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

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

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

@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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFpbi5jc3MiLCJzb3VyY2VzIjpbIm1haW4uc2NzcyIsInNldHRpbmdzL19hbGwuc2NzcyIsInNldHRpbmdzL190eXBvZ3JhcGh5LnNjc3MiLCJzZXR0aW5ncy9fY29sb3Iuc2NzcyIsInNldHRpbmdzL196LWluZGV4LnNjc3MiLCJzZXR0aW5ncy9fZGVmaW5pdGlvbnMuc2NzcyIsIi4uLy4uL2J1aWxkL25vZGVfbW9kdWxlcy9ub3JtYWxpemUuY3NzL25vcm1hbGl6ZS5jc3MiLCIuLi8uLi9idWlsZC9ub2RlX21vZHVsZXMvb3dsLmNhcm91c2VsL3NyYy9zY3NzL293bC5jYXJvdXNlbC5zY3NzIiwiLi4vLi4vYnVpbGQvbm9kZV9tb2R1bGVzL293bC5jYXJvdXNlbC9zcmMvc2Nzcy9fY29yZS5zY3NzIiwiLi4vLi4vYnVpbGQvbm9kZV9tb2R1bGVzL293bC5jYXJvdXNlbC9zcmMvc2Nzcy9fYW5pbWF0ZS5zY3NzIiwiLi4vLi4vYnVpbGQvbm9kZV9tb2R1bGVzL293bC5jYXJvdXNlbC9zcmMvc2Nzcy9fYXV0b2hlaWdodC5zY3NzIiwiLi4vLi4vYnVpbGQvbm9kZV9tb2R1bGVzL293bC5jYXJvdXNlbC9zcmMvc2Nzcy9fbGF6eWxvYWQuc2NzcyIsIi4uLy4uL2J1aWxkL25vZGVfbW9kdWxlcy9vd2wuY2Fyb3VzZWwvc3JjL3Njc3MvX3ZpZGVvLnNjc3MiLCJ0b29scy9fYWxsLnNjc3MiLCJ0b29scy9fZnVuY3Rpb25zLnNjc3MiLCJ0b29scy9fbWFnbmlmaWMtcG9wdXAuc2NzcyIsInRvb2xzL19taXhpbnMuc2NzcyIsImdlbmVyaWMvX2Jhc2Uuc2NzcyIsImdlbmVyaWMvX3Jlc2V0LnNjc3MiLCJvYmplY3RzL19iYWNrZ3JvdW5kLnNjc3MiLCJvYmplY3RzL19idXR0b25zLnNjc3MiLCJvYmplY3RzL19jb250YWluZXIuc2NzcyIsIm9iamVjdHMvX2NvbnRlbnQtY29uc3RyYWludC5zY3NzIiwib2JqZWN0cy9fZmxleC5zY3NzIiwib2JqZWN0cy9fZm9ybS5zY3NzIiwib2JqZWN0cy9faGVhZGluZ3Muc2NzcyIsIm9iamVjdHMvX2xhYmVscy5zY3NzIiwib2JqZWN0cy9fbGF6eS1sb2FkLnNjc3MiLCJvYmplY3RzL19saW5rcy5zY3NzIiwib2JqZWN0cy9fb3dsLWNhcm91c2VsLnNjc3MiLCJvYmplY3RzL19wYWdpbmF0aW9uLnNjc3MiLCJvYmplY3RzL193cmFwcGVyLnNjc3MiLCJjb21wb25lbnRzL2NvbnRlbnQvX2NvbnRhY3QtZm9ybS5zY3NzIiwiY29tcG9uZW50cy9jb250ZW50L19jb250ZW50LWRlZmF1bHQuc2NzcyIsImNvbXBvbmVudHMvY29udGVudC9fY29udGVudC1pbnRyb2R1Y3Rpb24uc2NzcyIsImNvbXBvbmVudHMvY29udGVudC9fY29udGVudC1zdWJzY3JpYmUuc2NzcyIsImNvbXBvbmVudHMvY29udGVudC9fY29udGVudC1zdWJzY3JpcHRpb24uc2NzcyIsImNvbXBvbmVudHMvY29udGVudC9faGVhZGVyLWltYWdlLnNjc3MiLCJjb21wb25lbnRzL2NvbnRlbnQvX2hlYWRlci10ZXh0LnNjc3MiLCJjb21wb25lbnRzL2NvbnRlbnQvX3Bvc3Qtc2xpZGVyLnNjc3MiLCJjb21wb25lbnRzL2NvbnRlbnQvX3RlYW0uc2NzcyIsImNvbXBvbmVudHMvY29udGVudC9fdGVhbS1ibG9jay5zY3NzIiwiY29tcG9uZW50cy9jb250ZW50L190ZWFtLXRlYXNlci5zY3NzIiwiY29tcG9uZW50cy9jb250ZW50L190ZXh0LWltYWdlLnNjc3MiLCJjb21wb25lbnRzL2NvbnRlbnQvX3RleHQtaW1hZ2VzLnNjc3MiLCJjb21wb25lbnRzL2dlbmVyYWwvX2Ntcy1vdXRwdXQuc2NzcyIsImNvbXBvbmVudHMvZ2VuZXJhbC9fZm9vdGVyLnNjc3MiLCJjb21wb25lbnRzL2dlbmVyYWwvX2hlYWRlci5zY3NzIiwiY29tcG9uZW50cy9nZW5lcmFsL19uYXZpZ2F0aW9uLnNjc3MiLCJjb21wb25lbnRzL2dlbmVyYWwvX3NlYXJjaC1mb3JtLWludHJvZHVjdGlvbi5zY3NzIiwiY29tcG9uZW50cy9nZW5lcmFsL19zZWFyY2gtZm9ybS5zY3NzIiwiY29tcG9uZW50cy9nZW5lcmFsL19zZWFyY2gtcmVzdWx0cy5zY3NzIiwiY29tcG9uZW50cy9nZW5lcmFsL19zb2NpYWwtc2hhcmUuc2NzcyIsImNvbXBvbmVudHMvZ2VuZXJhbC9fZG93bmxvYWQtY2FoaWVyLnNjc3MiLCJjb21wb25lbnRzL3Bvc3QvX2FydGljbGUtc2luZ2xlLnNjc3MiLCJjb21wb25lbnRzL3Bvc3QvX2NhaGllci1hdXRob3JzLnNjc3MiLCJjb21wb25lbnRzL3Bvc3QvX2NhaGllci1pdGVtLnNjc3MiLCJjb21wb25lbnRzL3Bvc3QvX2NhaGllci1zaW5nbGUuc2NzcyIsImNvbXBvbmVudHMvcG9zdC9fY2FoaWVyLWZpbHRlci5zY3NzIiwiY29tcG9uZW50cy9wb3N0L19tYXRlcmlhbC1jb250ZW50LnNjc3MiLCJjb21wb25lbnRzL3Bvc3QvX21hdGVyaWFsLWludHJvZHVjdGlvbi5zY3NzIiwiY29tcG9uZW50cy9wb3N0L19uZXdzLWxhdGVzdC1pdGVtLnNjc3MiLCJjb21wb25lbnRzL3Bvc3QvX25ld3MtbGF0ZXN0LnNjc3MiLCJjb21wb25lbnRzL3Bvc3QvX25ld3MtbGlzdC5zY3NzIiwiY29tcG9uZW50cy9wb3N0L19uZXdzLWxpc3QtaXRlbS5zY3NzIiwiY29tcG9uZW50cy9wb3N0L19uZXdzLXNpbmdsZS5zY3NzIiwiY29tcG9uZW50cy9wb3N0L19wb3N0LWl0ZW0uc2NzcyIsImNvbXBvbmVudHMvcG9zdC9fcG9zdC1saXN0LnNjc3MiLCJjb21wb25lbnRzL3Bvc3QvX3NpbmdsZS1hdXRob3JzLnNjc3MiLCJjb21wb25lbnRzL3Bvc3QvX3RoZW1lLWl0ZW0uc2NzcyIsImNvbXBvbmVudHMvcG9zdC9fdGhlbWUtc2xpZGVyLnNjc3MiLCJjb21wb25lbnRzL3dvb2NvbW1lcmNlL19jYXJ0LXRvdGFscy5zY3NzIiwiY29tcG9uZW50cy93b29jb21tZXJjZS9fbWluaS1jYXJ0LnNjc3MiLCJjb21wb25lbnRzL3dvb2NvbW1lcmNlL193b29jb21tZXJjZS5zY3NzIiwiY29tcG9uZW50cy93b29jb21tZXJjZS9fd29vY29tbWVyY2UtY2FydC5zY3NzIiwiY29tcG9uZW50cy93b29jb21tZXJjZS9fd29vY29tbWVyY2UtY2hlY2tvdXQuc2NzcyIsImNvbXBvbmVudHMvd29vY29tbWVyY2UvX3dvb2NvbW1lcmNlLWxvZ2luLnNjc3MiLCJjb21wb25lbnRzL3dvb2NvbW1lcmNlL193b29jb21tZXJjZS1teWFjY291bnQtY29udGVudC5zY3NzIiwiY29tcG9uZW50cy93b29jb21tZXJjZS9fd29vY29tbWVyY2UtbXlhY2NvdW50LW5hdmlnYXRpb24uc2NzcyIsImNvbXBvbmVudHMvd29vY29tbWVyY2UvX3dvb2NvbW1lcmNlLW5vdGljZS5zY3NzIiwiY29tcG9uZW50cy93b29jb21tZXJjZS9fd29vY29tbWVyY2UtcmVzZXQtcGFzc3dvcmQuc2NzcyIsInV0aWxpdGllcy9fY29sb3Iuc2NzcyIsInV0aWxpdGllcy9faGVscGVycy5zY3NzIiwidXRpbGl0aWVzL19vYmplY3QtZml0LnNjc3MiLCJ1dGlsaXRpZXMvX3Bvc2l0aW9uLnNjc3MiLCJ1dGlsaXRpZXMvX3RleHQuc2NzcyIsInV0aWxpdGllcy9fdmVydGljYWwtcmh5dGhtLnNjc3MiLCJ1dGlsaXRpZXMvX3otaW5kZXguc2NzcyJdLCJzb3VyY2VzQ29udGVudCI6WyIvKipcclxuICogU2V0dGluZ3MuXHJcbiAqL1xyXG5AaW1wb3J0ICdzZXR0aW5ncy9hbGwnO1xyXG5cclxuXHJcbi8qKlxyXG4gKiBWZW5kb3IuXHJcbiAqL1xyXG5AaW1wb3J0ICcuLi8uLi9idWlsZC9ub2RlX21vZHVsZXMvbm9ybWFsaXplLmNzcy9ub3JtYWxpemUnO1xyXG5AaW1wb3J0ICcuLi8uLi9idWlsZC9ub2RlX21vZHVsZXMvb3dsLmNhcm91c2VsL3NyYy9zY3NzL293bC5jYXJvdXNlbCc7XHJcblxyXG4vKipcclxuICogVG9vbHMuXHJcbiAqL1xyXG5AaW1wb3J0ICd0b29scy9hbGwnO1xyXG5cclxuXHJcbi8qKlxyXG4gKiBFbGVtZW50cy5cclxuICovXHJcblxyXG5cclxuLyoqXHJcbiAqIEdlbmVyYWwuXHJcbiAqL1xyXG5AaW1wb3J0ICdnZW5lcmljL2Jhc2UnO1xyXG5AaW1wb3J0ICdnZW5lcmljL3Jlc2V0JztcclxuXHJcblxyXG4vKipcclxuICogT2JqZWN0cy5cclxuICovXHJcbkBpbXBvcnQgJ29iamVjdHMvYmFja2dyb3VuZCc7XHJcbkBpbXBvcnQgJ29iamVjdHMvYnV0dG9ucyc7XHJcbkBpbXBvcnQgJ29iamVjdHMvY29udGFpbmVyJztcclxuQGltcG9ydCAnb2JqZWN0cy9jb250ZW50LWNvbnN0cmFpbnQnO1xyXG5AaW1wb3J0ICdvYmplY3RzL2ZsZXgnO1xyXG5AaW1wb3J0ICdvYmplY3RzL2Zvcm0nO1xyXG5AaW1wb3J0ICdvYmplY3RzL2hlYWRpbmdzJztcclxuQGltcG9ydCAnb2JqZWN0cy9sYWJlbHMnO1xyXG5AaW1wb3J0ICdvYmplY3RzL2xhenktbG9hZCc7XHJcbkBpbXBvcnQgJ29iamVjdHMvbGlua3MnO1xyXG5AaW1wb3J0ICdvYmplY3RzL293bC1jYXJvdXNlbCc7XHJcbkBpbXBvcnQgJ29iamVjdHMvcGFnaW5hdGlvbic7XHJcbkBpbXBvcnQgJ29iamVjdHMvd3JhcHBlcic7XHJcblxyXG5cclxuLyoqXHJcbiAqIENvbXBvbmVudHMuXHJcbiAqL1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL2NvbnRlbnQvY29udGFjdC1mb3JtJztcclxuQGltcG9ydCAnY29tcG9uZW50cy9jb250ZW50L2NvbnRlbnQtZGVmYXVsdCc7XHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvY29udGVudC9jb250ZW50LWludHJvZHVjdGlvbic7XHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvY29udGVudC9jb250ZW50LXN1YnNjcmliZSc7XHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvY29udGVudC9jb250ZW50LXN1YnNjcmlwdGlvbic7XHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvY29udGVudC9oZWFkZXItaW1hZ2UnO1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL2NvbnRlbnQvaGVhZGVyLXRleHQnO1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL2NvbnRlbnQvcG9zdC1zbGlkZXInO1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL2NvbnRlbnQvdGVhbSc7XHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvY29udGVudC90ZWFtLWJsb2NrJztcclxuQGltcG9ydCAnY29tcG9uZW50cy9jb250ZW50L3RlYW0tdGVhc2VyJztcclxuQGltcG9ydCAnY29tcG9uZW50cy9jb250ZW50L3RleHQtaW1hZ2UnO1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL2NvbnRlbnQvdGV4dC1pbWFnZXMnO1xyXG5cclxuQGltcG9ydCAnY29tcG9uZW50cy9nZW5lcmFsL2Ntcy1vdXRwdXQnO1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL2dlbmVyYWwvZm9vdGVyJztcclxuQGltcG9ydCAnY29tcG9uZW50cy9nZW5lcmFsL2hlYWRlcic7XHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvZ2VuZXJhbC9uYXZpZ2F0aW9uJztcclxuQGltcG9ydCAnY29tcG9uZW50cy9nZW5lcmFsL3NlYXJjaC1mb3JtLWludHJvZHVjdGlvbic7XHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvZ2VuZXJhbC9zZWFyY2gtZm9ybSc7XHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvZ2VuZXJhbC9zZWFyY2gtcmVzdWx0cyc7XHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvZ2VuZXJhbC9zb2NpYWwtc2hhcmUnO1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL2dlbmVyYWwvZG93bmxvYWQtY2FoaWVyJztcclxuXHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvcG9zdC9hcnRpY2xlLXNpbmdsZSc7XHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvcG9zdC9jYWhpZXItYXV0aG9ycyc7XHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvcG9zdC9jYWhpZXItaXRlbSc7XHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvcG9zdC9jYWhpZXItc2luZ2xlJztcclxuQGltcG9ydCAnY29tcG9uZW50cy9wb3N0L2NhaGllci1maWx0ZXInO1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL3Bvc3QvbWF0ZXJpYWwtY29udGVudCc7XHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvcG9zdC9tYXRlcmlhbC1pbnRyb2R1Y3Rpb24nO1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL3Bvc3QvbmV3cy1sYXRlc3QtaXRlbSc7XHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvcG9zdC9uZXdzLWxhdGVzdCc7XHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvcG9zdC9uZXdzLWxpc3QnO1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL3Bvc3QvbmV3cy1saXN0LWl0ZW0nO1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL3Bvc3QvbmV3cy1zaW5nbGUnO1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL3Bvc3QvcG9zdC1pdGVtJztcclxuQGltcG9ydCAnY29tcG9uZW50cy9wb3N0L3Bvc3QtbGlzdCc7XHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvcG9zdC9zaW5nbGUtYXV0aG9ycyc7XHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvcG9zdC90aGVtZS1pdGVtJztcclxuQGltcG9ydCAnY29tcG9uZW50cy9wb3N0L3RoZW1lLXNsaWRlcic7XHJcblxyXG5AaW1wb3J0ICdjb21wb25lbnRzL3dvb2NvbW1lcmNlL2NhcnQtdG90YWxzJztcclxuQGltcG9ydCAnY29tcG9uZW50cy93b29jb21tZXJjZS9taW5pLWNhcnQnO1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL3dvb2NvbW1lcmNlL3dvb2NvbW1lcmNlJztcclxuQGltcG9ydCAnY29tcG9uZW50cy93b29jb21tZXJjZS93b29jb21tZXJjZS1jYXJ0JztcclxuQGltcG9ydCAnY29tcG9uZW50cy93b29jb21tZXJjZS93b29jb21tZXJjZS1jaGVja291dCc7XHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvd29vY29tbWVyY2Uvd29vY29tbWVyY2UtbG9naW4nO1xyXG5AaW1wb3J0ICdjb21wb25lbnRzL3dvb2NvbW1lcmNlL3dvb2NvbW1lcmNlLW15YWNjb3VudC1jb250ZW50JztcclxuQGltcG9ydCAnY29tcG9uZW50cy93b29jb21tZXJjZS93b29jb21tZXJjZS1teWFjY291bnQtbmF2aWdhdGlvbic7XHJcbkBpbXBvcnQgJ2NvbXBvbmVudHMvd29vY29tbWVyY2Uvd29vY29tbWVyY2Utbm90aWNlJztcclxuQGltcG9ydCAnY29tcG9uZW50cy93b29jb21tZXJjZS93b29jb21tZXJjZS1yZXNldC1wYXNzd29yZCc7XHJcblxyXG5cclxuLyoqXHJcbiAqIFV0aWxpdGllcy5cclxuICovXHJcbkBpbXBvcnQgJ3V0aWxpdGllcy9jb2xvcic7XHJcbkBpbXBvcnQgJ3V0aWxpdGllcy9oZWxwZXJzJztcclxuQGltcG9ydCAndXRpbGl0aWVzL29iamVjdC1maXQnO1xyXG5AaW1wb3J0ICd1dGlsaXRpZXMvcG9zaXRpb24nO1xyXG5AaW1wb3J0ICd1dGlsaXRpZXMvdGV4dCc7XHJcbkBpbXBvcnQgJ3V0aWxpdGllcy92ZXJ0aWNhbC1yaHl0aG0nO1xyXG5AaW1wb3J0ICd1dGlsaXRpZXMvei1pbmRleCc7XHJcbiIsIi8qKlxyXG4gKiBTZXR0aW5ncy5cclxuICovXHJcbiBcclxuQGltcG9ydCAndHlwb2dyYXBoeSc7XHJcbkBpbXBvcnQgJ2NvbG9yJztcclxuQGltcG9ydCAnei1pbmRleCc7XHJcbkBpbXBvcnQgJ2RlZmluaXRpb25zJztcclxuIiwiLyoqXHJcbiAqIEZvbnQgZmFtaWx5IG1hcC5cclxuICovXHJcblxyXG4kZm9udC1mYW1pbHk6IChcclxuXHQnZGVmYXVsdCc6ICdVYnVudHUnXHJcbik7XHJcblxyXG5cclxuLyoqXHJcbiAqIEZvbnQgc2l6ZSBtYXAuXHJcbiAqL1xyXG5cclxuJGZvbnQtc2l6ZTogKFxyXG5cdCdoMSc6IDUwcHgsXHJcblx0J2gyJzogNDBweCxcclxuXHQnaDMnOiAyNXB4LFxyXG5cdCdoNCc6IDIwcHgsXHJcblx0J3AnOiAxNXB4XHJcbik7XHJcblxyXG5cclxuLyoqXHJcbiAqIExpbmUgaGVpZ2h0IG1hcC5cclxuICovXHJcblxyXG4kbGluZS1oZWlnaHQ6IChcclxuXHQnaDEnOiA1N3B4LFxyXG5cdCdoMic6IDQ2cHgsXHJcblx0J2gzJzogMjlweCxcclxuXHQnaDQnOiAyNHB4LFxyXG5cdCdwJzogMzBweFxyXG4pO1xyXG4iLCIvLyBDb2xvciBtYXAuXHJcbiRjb2xvcnM6IChcclxuXHQnYmxhY2snOiAoXHJcblx0XHQnMTAwJzogaHNsYSgwLCAwJSwgMCUsIDEpXHJcblx0KSxcclxuXHQnd2hpdGUnOiAoXHJcblx0XHQnMTAwJzogaHNsYSgwLCAwJSwgMTAwJSwgMSksXHJcblx0XHQnODAnOiBoc2xhKDAsIDAlLCAxMDAlLCAwLjgpLFxyXG5cdFx0JzUwJzogaHNsYSgwLCAwJSwgMTAwJSwgMC41KVxyXG5cdCksXHJcblx0J2JsdWUtbGFnb29uJzogKFxyXG5cdFx0JzEwMCc6IGhzbGEoMTkxLjYsIDEwMCUsIDI1LjMlLCAxKSwgLy8gMDA2ODgxXHJcblx0XHQnNTAnOiBoc2xhKDE5MS42LCAxMDAlLCAyNS4zJSwgMC41KSwgLy8gMDA2ODgxXHJcblx0XHQnNDAnOiBoc2xhKDE5MS42LCAxMDAlLCAyNS4zJSwgMC40KSwgLy8gMDA2ODgxXHJcblx0XHQnMzInOiBoc2xhKDE5MS42LCAxMDAlLCAyNS4zJSwgMC4zMiksIC8vIDAwNjg4MVxyXG5cdFx0JzIwJzogaHNsYSgxOTEuNiwgMTAwJSwgMjUuMyUsIDAuMjApLCAvLyAwMDY4ODFcclxuXHRcdCcxMyc6IGhzbGEoMTkxLjYsIDEwMCUsIDI1LjMlLCAwLjEzKSwgLy8gMDA2ODgxXHJcblx0XHQnOCc6IGhzbGEoMTkxLjYsIDEwMCUsIDI1LjMlLCAwLjA4KSwgLy8gMDA2ODgxXHJcblx0XHQnNSc6IGhzbGEoMTkxLjYsIDEwMCUsIDI1LjMlLCAwLjA1KSAvLyAwMDY4ODFcclxuXHQpLFxyXG5cdCdibHVlJzogKFxyXG5cdFx0JzEwMCc6IGhzbGEoMTkxLjksIDEwMCUsIDM4LjYlLCAxKSwgLy8gMDA5RUM1XHJcblx0XHQnMjAwJzogaHNsYSgxOTEuMSwgMzAuNiUsIDc1LjclLCAxKSAvLyBBRUNERDRcclxuXHQpLFxyXG5cdCdibHVlLXBhdHRlbnMnOiAoXHJcblx0XHQnMTAwJzogaHNsYSgxOTIsIDQwJSwgOTAuMiUsIDEpIC8vIERDRUNGMFxyXG5cdCksXHJcblx0J2dyZXknOiAoXHJcblx0XHQnMzAnOiBoc2xhKDIwMCwgMS41JSwgNjEuOCUsIDAuMyksIC8vIDlDOUU5RlxyXG5cdFx0JzEwMCc6IGhzbGEoMjAwLCAxLjUlLCA2MS44JSwgMSksIC8vIDlDOUU5RlxyXG5cdFx0JzExMCc6IGhzbGEoMCwgMCUsIDIxLjIlLCAwLjEpLCAvLyAzNjM2MzZcclxuXHRcdCcxNTAnOiBoc2xhKDAsIDAlLCAyMS4yJSwgMC41KSwgLy8gMzYzNjM2XHJcblx0XHQnMjAwJzogaHNsYSgwLCAwJSwgMjEuMiUsIDEpLCAvLyAzNjM2MzZcclxuXHRcdCczMDAnOiBoc2xhKDIwMCwgMS41JSwgNjEuOCUsIDEpLCAvLyA5QzlFOUZcclxuXHRcdCc0MDAnOiBoc2xhKDAsIDAlLCAzMi41JSwgMSksIC8vIDUzNTM1M1xyXG5cdFx0JzUwMCc6IGhzbGEoMCwgMCUsIDg3LjElLCAxKSwgLy8gREVERURFXHJcblx0XHQnNjAwJzogaHNsYSgwLCAwJSwgODQuNyUsIDEpLCAvLyBEOEQ4RFxyXG5cdFx0JzcwMCc6IGhzbGEoMTkyLjYsIDQwLjQlLCA4MS42JSwgMSksIC8vIEJEREJFM1xyXG5cdFx0JzgwMCc6IGhzbGEoMCwgMCUsIDc2LjklLCAxKSAvLyBDNEM0QzRcclxuXHQpLFxyXG5cdCd3aGl0ZS1zbW9rZSc6IChcclxuXHRcdCcxMDAnOiBoc2xhKDAsIDAlLCA5Ni4xJSwgMSkgLy8gRjVGNUY1XHJcblx0KSxcclxuXHQncmVkJzogKFxyXG5cdFx0JzEwMCc6IGhzbGEoMCwgMTAwJSwgMzguMiUsIDEpLCAvLyBDMzAwMDBcclxuXHRcdCc4JzogaHNsYSgwLCAxMDAlLCAzOC4yJSwgMC4wOCkgLy8gQzMwMDAwXHJcblx0KVxyXG4pO1xyXG5cclxuLy8gQ29sb3Igc2hvcnRoYW5kIHZhcmlhYmxlcy5cclxuJGJsYWNrLTEwMDogbWFwLWdldChtYXAtZ2V0KCRjb2xvcnMsICdibGFjaycpLCAnMTAwJyk7XHJcbiR3aGl0ZS0xMDA6IG1hcC1nZXQobWFwLWdldCgkY29sb3JzLCAnd2hpdGUnKSwgJzEwMCcpO1xyXG4kd2hpdGUtODA6IG1hcC1nZXQobWFwLWdldCgkY29sb3JzLCAnd2hpdGUnKSwgJzgwJyk7XHJcbiR3aGl0ZS01MDogbWFwLWdldChtYXAtZ2V0KCRjb2xvcnMsICd3aGl0ZScpLCAnNTAnKTtcclxuXHJcbiRibHVlLWxhZ29vbi0xMDA6IG1hcC1nZXQobWFwLWdldCgkY29sb3JzLCAnYmx1ZS1sYWdvb24nKSwgJzEwMCcpO1xyXG4kYmx1ZS1sYWdvb24tNTA6IG1hcC1nZXQobWFwLWdldCgkY29sb3JzLCAnYmx1ZS1sYWdvb24nKSwgJzUwJyk7XHJcbiRibHVlLWxhZ29vbi00MDogbWFwLWdldChtYXAtZ2V0KCRjb2xvcnMsICdibHVlLWxhZ29vbicpLCAnNDAnKTtcclxuJGJsdWUtbGFnb29uLTMyOiBtYXAtZ2V0KG1hcC1nZXQoJGNvbG9ycywgJ2JsdWUtbGFnb29uJyksICczMicpO1xyXG4kYmx1ZS1sYWdvb24tMjA6IG1hcC1nZXQobWFwLWdldCgkY29sb3JzLCAnYmx1ZS1sYWdvb24nKSwgJzIwJyk7XHJcbiRibHVlLWxhZ29vbi0xMzogbWFwLWdldChtYXAtZ2V0KCRjb2xvcnMsICdibHVlLWxhZ29vbicpLCAnMTMnKTtcclxuJGJsdWUtbGFnb29uLTg6IG1hcC1nZXQobWFwLWdldCgkY29sb3JzLCAnYmx1ZS1sYWdvb24nKSwgJzgnKTtcclxuJGJsdWUtbGFnb29uLTU6IG1hcC1nZXQobWFwLWdldCgkY29sb3JzLCAnYmx1ZS1sYWdvb24nKSwgJzUnKTtcclxuXHJcbiRibHVlLTEwMDogbWFwLWdldChtYXAtZ2V0KCRjb2xvcnMsICdibHVlJyksICcxMDAnKTtcclxuJGJsdWUtMjAwOiBtYXAtZ2V0KG1hcC1nZXQoJGNvbG9ycywgJ2JsdWUnKSwgJzIwMCcpO1xyXG4kYmx1ZS1wYXR0ZW5zLTEwMDogbWFwLWdldChtYXAtZ2V0KCRjb2xvcnMsICdibHVlLXBhdHRlbnMnKSwgJzEwMCcpO1xyXG5cclxuJGdyZXktMzA6IG1hcC1nZXQobWFwLWdldCgkY29sb3JzLCAnZ3JleScpLCAnMzAnKTtcclxuJGdyZXktMTAwOiBtYXAtZ2V0KG1hcC1nZXQoJGNvbG9ycywgJ2dyZXknKSwgJzEwMCcpO1xyXG4kZ3JleS0xMTA6IG1hcC1nZXQobWFwLWdldCgkY29sb3JzLCAnZ3JleScpLCAnMTEwJyk7XHJcbiRncmV5LTE1MDogbWFwLWdldChtYXAtZ2V0KCRjb2xvcnMsICdncmV5JyksICcxNTAnKTtcclxuJGdyZXktMjAwOiBtYXAtZ2V0KG1hcC1nZXQoJGNvbG9ycywgJ2dyZXknKSwgJzIwMCcpO1xyXG4kZ3JleS0zMDA6IG1hcC1nZXQobWFwLWdldCgkY29sb3JzLCAnZ3JleScpLCAnMzAwJyk7XHJcbiRncmV5LTQwMDogbWFwLWdldChtYXAtZ2V0KCRjb2xvcnMsICdncmV5JyksICc0MDAnKTtcclxuJGdyZXktNTAwOiBtYXAtZ2V0KG1hcC1nZXQoJGNvbG9ycywgJ2dyZXknKSwgJzUwMCcpO1xyXG4kZ3JleS02MDA6IG1hcC1nZXQobWFwLWdldCgkY29sb3JzLCAnZ3JleScpLCAnNjAwJyk7XHJcbiRncmV5LTcwMDogbWFwLWdldChtYXAtZ2V0KCRjb2xvcnMsICdncmV5JyksICc3MDAnKTtcclxuJGdyZXktODAwOiBtYXAtZ2V0KG1hcC1nZXQoJGNvbG9ycywgJ2dyZXknKSwgJzgwMCcpO1xyXG5cclxuJHdoaXRlLXNtb2tlLTEwMDogbWFwLWdldChtYXAtZ2V0KCRjb2xvcnMsICd3aGl0ZS1zbW9rZScpLCAnMTAwJyk7XHJcbiRyZWQtMTAwOiBtYXAtZ2V0KG1hcC1nZXQoJGNvbG9ycywgJ3JlZCcpLCAnMTAwJyk7XHJcbiRyZWQtODogbWFwLWdldChtYXAtZ2V0KCRjb2xvcnMsICdyZWQnKSwgJzgnKTtcclxuXHJcbi8vIFByaW1hcnkgY29sb3IuXHJcbiRjb2xvci1wcmltYXJ5OiAkYmx1ZS1sYWdvb24tMTAwOyIsIi8vIEEgbGltaXRlZCBhcnJheSBvZiB2YWx1ZXMgZm9yIHRoZSBgei1pbmRleGAgcHJvcGVydHkgdG8gcHJldmVudFxyXG4vLyBFeGFnZ2VyYXRlZCBhbW91bnRzIGFuZCB1Z2x5IGhhY2tzLlxyXG5cclxuJHotaW5kZXg6IChcclxuXHQnMCc6ICAwLFxyXG5cdCcxJzogIDEwLFxyXG5cdCcyJzogIDIwLFxyXG5cdCczJzogIDMwLFxyXG5cdCc0JzogIDQwLFxyXG5cdCc1JzogIDUwLFxyXG5cdCc2JzogIDYwLFxyXG5cdCc3JzogIDcwLFxyXG5cdCc4JzogIDgwLFxyXG5cdCc5JzogIDkwLFxyXG5cdCcxMCc6IDEwMFxyXG4pO1xyXG4iLCIvKipcclxuICogR3JpZC5cclxuICovXHJcblxyXG4vLyBHcmlkIHdpZHRoLlxyXG4vLyBNYXhpbXVtIGNvbnRhaW5lciB3aWR0aC5cclxuJGdyaWQtd2lkdGg6IDEwMjRweDtcclxuXHJcbi8vIEdyaWQgY29sdW1ucy5cclxuLy8gQW1vdW50IG9mIGdyaWQgY29sdW1ucyB0byBjYWxjdWxhdGUgYSBjb2x1bW4gd2lkdGggd2l0aC5cclxuJGdyaWQtY29sdW1uczogMTI7XHJcblxyXG4vLyBHcmlkIGdhcC5cclxuLy8gU3BhY2UgYmV0d2VlbiBncmlkIGNvbHVtbnMsIGF1dG9tYXRlZC5cclxuJGdyaWQtZ2FwOiAyMHB4O1xyXG5cclxuXHJcbi8qKlxyXG4gKiBBc3NldHMuXHJcbiAqL1xyXG5cclxuLy8gSW1hZ2UgcGF0aC5cclxuJGltYWdlLXBhdGg6ICcuLi9pbWFnZXMvJztcclxuXHJcblxyXG4vKipcclxuICogQm9keS5cclxuICovXHJcblxyXG4vLyBCb2R5IGJhY2tncm91bmQgY29sb3IuXHJcbiRib2R5LWJhY2tncm91bmQtY29sb3I6ICR3aGl0ZS0xMDA7XHJcblxyXG4vLyBCb2R5IGNvbG9yLlxyXG4kYm9keS1jb2xvcjogJGdyZXktMjAwO1xyXG5cclxuLy8gQm9keSBmb250IGZhbWlseS5cclxuJGJvZHktZm9udC1mYW1pbHk6IG1hcC1nZXQoJGZvbnQtZmFtaWx5LCAnZGVmYXVsdCcpO1xyXG5cclxuLy8gQm9keSB0ZXh0LlxyXG4kYm9keS10ZXh0OiAncCc7XHJcblxyXG5cclxuLyoqXHJcbiAqIE90aGVyLlxyXG4gKi9cclxuXHJcbi8vIExpbmsgY29sb3IuXHJcbiRsaW5rLWNvbG9yOiAkYmx1ZS0xMDA7XHJcblxyXG4vLyBTZWxlY3QgY29sb3IuXHJcbio6OnNlbGVjdGlvbiB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJsdWUtMTAwO1xyXG4gIGNvbG9yOiAkd2hpdGUtMTAwO1xyXG59XHJcblxyXG4vKipcclxuICogUmVzcG9uc2l2ZS5cclxuICovXHJcblxyXG4vLyBHcmlkIGJyZWFrcG9pbnQgYWxpYXMuXHJcbiRicmVha3BvaW50czogKFxyXG5cdHhzOiBudWxsLFxyXG5cdHNtOiAncGhvbmUnLFxyXG5cdG1kOiAndGFibGV0LXBvcnRyYWl0LXVwJyxcclxuXHRsZzogJ3RhYmxldC1sYW5kc2NhcGUtdXAnLFxyXG5cdHhsOiAnZGVza3RvcCdcclxuKTtcclxuIiwiLyohIG5vcm1hbGl6ZS5jc3MgdjguMC4xIHwgTUlUIExpY2Vuc2UgfCBnaXRodWIuY29tL25lY29sYXMvbm9ybWFsaXplLmNzcyAqL1xuXG4vKiBEb2N1bWVudFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBsaW5lIGhlaWdodCBpbiBhbGwgYnJvd3NlcnMuXG4gKiAyLiBQcmV2ZW50IGFkanVzdG1lbnRzIG9mIGZvbnQgc2l6ZSBhZnRlciBvcmllbnRhdGlvbiBjaGFuZ2VzIGluIGlPUy5cbiAqL1xuXG5odG1sIHtcbiAgbGluZS1oZWlnaHQ6IDEuMTU7IC8qIDEgKi9cbiAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvKiAyICovXG59XG5cbi8qIFNlY3Rpb25zXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIFJlbW92ZSB0aGUgbWFyZ2luIGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5ib2R5IHtcbiAgbWFyZ2luOiAwO1xufVxuXG4vKipcbiAqIFJlbmRlciB0aGUgYG1haW5gIGVsZW1lbnQgY29uc2lzdGVudGx5IGluIElFLlxuICovXG5cbm1haW4ge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLyoqXG4gKiBDb3JyZWN0IHRoZSBmb250IHNpemUgYW5kIG1hcmdpbiBvbiBgaDFgIGVsZW1lbnRzIHdpdGhpbiBgc2VjdGlvbmAgYW5kXG4gKiBgYXJ0aWNsZWAgY29udGV4dHMgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgU2FmYXJpLlxuICovXG5cbmgxIHtcbiAgZm9udC1zaXplOiAyZW07XG4gIG1hcmdpbjogMC42N2VtIDA7XG59XG5cbi8qIEdyb3VwaW5nIGNvbnRlbnRcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gRmlyZWZveC5cbiAqIDIuIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UgYW5kIElFLlxuICovXG5cbmhyIHtcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7IC8qIDEgKi9cbiAgaGVpZ2h0OiAwOyAvKiAxICovXG4gIG92ZXJmbG93OiB2aXNpYmxlOyAvKiAyICovXG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgaW5oZXJpdGFuY2UgYW5kIHNjYWxpbmcgb2YgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAqIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5wcmUge1xuICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7IC8qIDEgKi9cbiAgZm9udC1zaXplOiAxZW07IC8qIDIgKi9cbn1cblxuLyogVGV4dC1sZXZlbCBzZW1hbnRpY3NcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogUmVtb3ZlIHRoZSBncmF5IGJhY2tncm91bmQgb24gYWN0aXZlIGxpbmtzIGluIElFIDEwLlxuICovXG5cbmEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuLyoqXG4gKiAxLiBSZW1vdmUgdGhlIGJvdHRvbSBib3JkZXIgaW4gQ2hyb21lIDU3LVxuICogMi4gQWRkIHRoZSBjb3JyZWN0IHRleHQgZGVjb3JhdGlvbiBpbiBDaHJvbWUsIEVkZ2UsIElFLCBPcGVyYSwgYW5kIFNhZmFyaS5cbiAqL1xuXG5hYmJyW3RpdGxlXSB7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7IC8qIDEgKi9cbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IC8qIDIgKi9cbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgZG90dGVkOyAvKiAyICovXG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGZvbnQgd2VpZ2h0IGluIENocm9tZSwgRWRnZSwgYW5kIFNhZmFyaS5cbiAqL1xuXG5iLFxuc3Ryb25nIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGRlcjtcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICogMi4gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbmNvZGUsXG5rYmQsXG5zYW1wIHtcbiAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlOyAvKiAxICovXG4gIGZvbnQtc2l6ZTogMWVtOyAvKiAyICovXG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxuc21hbGwge1xuICBmb250LXNpemU6IDgwJTtcbn1cblxuLyoqXG4gKiBQcmV2ZW50IGBzdWJgIGFuZCBgc3VwYCBlbGVtZW50cyBmcm9tIGFmZmVjdGluZyB0aGUgbGluZSBoZWlnaHQgaW5cbiAqIGFsbCBicm93c2Vycy5cbiAqL1xuXG5zdWIsXG5zdXAge1xuICBmb250LXNpemU6IDc1JTtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG5zdWIge1xuICBib3R0b206IC0wLjI1ZW07XG59XG5cbnN1cCB7XG4gIHRvcDogLTAuNWVtO1xufVxuXG4vKiBFbWJlZGRlZCBjb250ZW50XG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIFJlbW92ZSB0aGUgYm9yZGVyIG9uIGltYWdlcyBpbnNpZGUgbGlua3MgaW4gSUUgMTAuXG4gKi9cblxuaW1nIHtcbiAgYm9yZGVyLXN0eWxlOiBub25lO1xufVxuXG4vKiBGb3Jtc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiAxLiBDaGFuZ2UgdGhlIGZvbnQgc3R5bGVzIGluIGFsbCBicm93c2Vycy5cbiAqIDIuIFJlbW92ZSB0aGUgbWFyZ2luIGluIEZpcmVmb3ggYW5kIFNhZmFyaS5cbiAqL1xuXG5idXR0b24sXG5pbnB1dCxcbm9wdGdyb3VwLFxuc2VsZWN0LFxudGV4dGFyZWEge1xuICBmb250LWZhbWlseTogaW5oZXJpdDsgLyogMSAqL1xuICBmb250LXNpemU6IDEwMCU7IC8qIDEgKi9cbiAgbGluZS1oZWlnaHQ6IDEuMTU7IC8qIDEgKi9cbiAgbWFyZ2luOiAwOyAvKiAyICovXG59XG5cbi8qKlxuICogU2hvdyB0aGUgb3ZlcmZsb3cgaW4gSUUuXG4gKiAxLiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlLlxuICovXG5cbmJ1dHRvbixcbmlucHV0IHsgLyogMSAqL1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbn1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEVkZ2UsIEZpcmVmb3gsIGFuZCBJRS5cbiAqIDEuIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRmlyZWZveC5cbiAqL1xuXG5idXR0b24sXG5zZWxlY3QgeyAvKiAxICovXG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xufVxuXG4vKipcbiAqIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG4gKi9cblxuYnV0dG9uLFxuW3R5cGU9XCJidXR0b25cIl0sXG5bdHlwZT1cInJlc2V0XCJdLFxuW3R5cGU9XCJzdWJtaXRcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjtcbn1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGlubmVyIGJvcmRlciBhbmQgcGFkZGluZyBpbiBGaXJlZm94LlxuICovXG5cbmJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwiYnV0dG9uXCJdOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJyZXNldFwiXTo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwic3VibWl0XCJdOjotbW96LWZvY3VzLWlubmVyIHtcbiAgYm9yZGVyLXN0eWxlOiBub25lO1xuICBwYWRkaW5nOiAwO1xufVxuXG4vKipcbiAqIFJlc3RvcmUgdGhlIGZvY3VzIHN0eWxlcyB1bnNldCBieSB0aGUgcHJldmlvdXMgcnVsZS5cbiAqL1xuXG5idXR0b246LW1vei1mb2N1c3JpbmcsXG5bdHlwZT1cImJ1dHRvblwiXTotbW96LWZvY3VzcmluZyxcblt0eXBlPVwicmVzZXRcIl06LW1vei1mb2N1c3JpbmcsXG5bdHlwZT1cInN1Ym1pdFwiXTotbW96LWZvY3VzcmluZyB7XG4gIG91dGxpbmU6IDFweCBkb3R0ZWQgQnV0dG9uVGV4dDtcbn1cblxuLyoqXG4gKiBDb3JyZWN0IHRoZSBwYWRkaW5nIGluIEZpcmVmb3guXG4gKi9cblxuZmllbGRzZXQge1xuICBwYWRkaW5nOiAwLjM1ZW0gMC43NWVtIDAuNjI1ZW07XG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgdGV4dCB3cmFwcGluZyBpbiBFZGdlIGFuZCBJRS5cbiAqIDIuIENvcnJlY3QgdGhlIGNvbG9yIGluaGVyaXRhbmNlIGZyb20gYGZpZWxkc2V0YCBlbGVtZW50cyBpbiBJRS5cbiAqIDMuIFJlbW92ZSB0aGUgcGFkZGluZyBzbyBkZXZlbG9wZXJzIGFyZSBub3QgY2F1Z2h0IG91dCB3aGVuIHRoZXkgemVybyBvdXRcbiAqICAgIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbmxlZ2VuZCB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8qIDEgKi9cbiAgY29sb3I6IGluaGVyaXQ7IC8qIDIgKi9cbiAgZGlzcGxheTogdGFibGU7IC8qIDEgKi9cbiAgbWF4LXdpZHRoOiAxMDAlOyAvKiAxICovXG4gIHBhZGRpbmc6IDA7IC8qIDMgKi9cbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDsgLyogMSAqL1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCB2ZXJ0aWNhbCBhbGlnbm1lbnQgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgT3BlcmEuXG4gKi9cblxucHJvZ3Jlc3Mge1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBkZWZhdWx0IHZlcnRpY2FsIHNjcm9sbGJhciBpbiBJRSAxMCsuXG4gKi9cblxudGV4dGFyZWEge1xuICBvdmVyZmxvdzogYXV0bztcbn1cblxuLyoqXG4gKiAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBJRSAxMC5cbiAqIDIuIFJlbW92ZSB0aGUgcGFkZGluZyBpbiBJRSAxMC5cbiAqL1xuXG5bdHlwZT1cImNoZWNrYm94XCJdLFxuW3R5cGU9XCJyYWRpb1wiXSB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8qIDEgKi9cbiAgcGFkZGluZzogMDsgLyogMiAqL1xufVxuXG4vKipcbiAqIENvcnJlY3QgdGhlIGN1cnNvciBzdHlsZSBvZiBpbmNyZW1lbnQgYW5kIGRlY3JlbWVudCBidXR0b25zIGluIENocm9tZS5cbiAqL1xuXG5bdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcblt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIG9kZCBhcHBlYXJhbmNlIGluIENocm9tZSBhbmQgU2FmYXJpLlxuICogMi4gQ29ycmVjdCB0aGUgb3V0bGluZSBzdHlsZSBpbiBTYWZhcmkuXG4gKi9cblxuW3R5cGU9XCJzZWFyY2hcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDsgLyogMSAqL1xuICBvdXRsaW5lLW9mZnNldDogLTJweDsgLyogMiAqL1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgaW5uZXIgcGFkZGluZyBpbiBDaHJvbWUgYW5kIFNhZmFyaSBvbiBtYWNPUy5cbiAqL1xuXG5bdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuICogMi4gQ2hhbmdlIGZvbnQgcHJvcGVydGllcyB0byBgaW5oZXJpdGAgaW4gU2FmYXJpLlxuICovXG5cbjo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsgLyogMSAqL1xuICBmb250OiBpbmhlcml0OyAvKiAyICovXG59XG5cbi8qIEludGVyYWN0aXZlXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gRWRnZSwgSUUgMTArLCBhbmQgRmlyZWZveC5cbiAqL1xuXG5kZXRhaWxzIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8qXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxuc3VtbWFyeSB7XG4gIGRpc3BsYXk6IGxpc3QtaXRlbTtcbn1cblxuLyogTWlzY1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSAxMCsuXG4gKi9cblxudGVtcGxhdGUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDEwLlxuICovXG5cbltoaWRkZW5dIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbiIsIkBpbXBvcnQgJ2NvcmUnO1xuQGltcG9ydCAnYW5pbWF0ZSc7XG5AaW1wb3J0ICdhdXRvaGVpZ2h0JztcbkBpbXBvcnQgJ2xhenlsb2FkJztcbkBpbXBvcnQgJ3ZpZGVvJztcbiIsIi8qXG4gKiAgT3dsIENhcm91c2VsIC0gQ29yZVxuICovXG4ub3dsLWNhcm91c2VsIHtcblx0ZGlzcGxheTogbm9uZTtcblx0d2lkdGg6IDEwMCU7XG5cdC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cdC8qIHBvc2l0aW9uIHJlbGF0aXZlIGFuZCB6LWluZGV4IGZpeCB3ZWJraXQgcmVuZGVyaW5nIGZvbnRzIGlzc3VlICovXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0ei1pbmRleDogMTtcblxuXHQub3dsLXN0YWdlIHtcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0LW1zLXRvdWNoLWFjdGlvbjogcGFuLVk7XG5cdFx0dG91Y2gtYWN0aW9uOiBtYW5pcHVsYXRpb247XG5cdFx0LW1vei1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47IC8qIGZpeCBmaXJlZm94IGFuaW1hdGlvbiBnbGl0Y2ggKi9cblx0fVxuXG5cdC5vd2wtc3RhZ2U6YWZ0ZXIge1xuXHRcdGNvbnRlbnQ6IFwiLlwiO1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdGNsZWFyOiBib3RoO1xuXHRcdHZpc2liaWxpdHk6IGhpZGRlbjtcblx0XHRsaW5lLWhlaWdodDogMDtcblx0XHRoZWlnaHQ6IDA7XG5cdH1cblxuXHQub3dsLXN0YWdlLW91dGVyIHtcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0XHQvKiBmaXggZm9yIGZsYXNoaW5nIGJhY2tncm91bmQgKi9cblx0XHQtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMHB4LCAwcHgsIDBweCk7XG5cdH1cblxuXHQub3dsLXdyYXBwZXIsXG5cdC5vd2wtaXRlbXtcblx0XHQtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcblx0XHQtbW96LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcblx0XHQtbXMtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuXHRcdC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLDAsMCk7XG5cdFx0LW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsMCwwKTtcblx0XHQtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLDAsMCk7XG5cdH1cblxuXHQub3dsLWl0ZW0ge1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRtaW4taGVpZ2h0OiAxcHg7XG5cdFx0ZmxvYXQ6IGxlZnQ7XG5cdFx0LXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG5cdFx0LXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcblx0XHQtd2Via2l0LXRvdWNoLWNhbGxvdXQ6IG5vbmU7XG5cdH1cblx0Lm93bC1pdGVtIGltZyB7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdH1cblxuXHQub3dsLW5hdi5kaXNhYmxlZCxcblx0Lm93bC1kb3RzLmRpc2FibGVkIHtcblx0XHRkaXNwbGF5OiBub25lO1xuXHR9XG5cblx0Lm93bC1uYXYgLm93bC1wcmV2LFxuXHQub3dsLW5hdiAub3dsLW5leHQsXG5cdC5vd2wtZG90IHtcblx0XHRjdXJzb3I6IHBvaW50ZXI7XG5cdFx0LXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcblx0XHQta2h0bWwtdXNlci1zZWxlY3Q6IG5vbmU7XG5cdFx0LW1vei11c2VyLXNlbGVjdDogbm9uZTtcblx0XHQtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XG5cdFx0dXNlci1zZWxlY3Q6IG5vbmU7XG5cdH1cblxuXHQub3dsLW5hdiBidXR0b24ub3dsLXByZXYsXG5cdC5vd2wtbmF2IGJ1dHRvbi5vd2wtbmV4dCxcblx0YnV0dG9uLm93bC1kb3Qge1xuXHRcdGJhY2tncm91bmQ6IG5vbmU7XG5cdFx0Y29sb3I6IGluaGVyaXQ7XG5cdFx0Ym9yZGVyOiBub25lO1xuXHRcdHBhZGRpbmc6MCFpbXBvcnRhbnQ7XG5cdFx0Zm9udDogaW5oZXJpdDtcblx0fVxuXG5cdCYub3dsLWxvYWRlZCB7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdH1cblxuXHQmLm93bC1sb2FkaW5nIHtcblx0XHRvcGFjaXR5OiAwO1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHR9XG5cblx0Ji5vd2wtaGlkZGVuIHtcblx0XHRvcGFjaXR5OiAwO1xuXHR9XG5cblx0Ji5vd2wtcmVmcmVzaCAub3dsLWl0ZW0ge1xuXHRcdHZpc2liaWxpdHk6IGhpZGRlbjtcblx0fVxuXG5cdCYub3dsLWRyYWcgLm93bC1pdGVtIHtcblx0XHR0b3VjaC1hY3Rpb246IHBhbi15O1xuXHRcdC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG5cdFx0LW1vei11c2VyLXNlbGVjdDogbm9uZTtcblx0XHQtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XG5cdFx0dXNlci1zZWxlY3Q6IG5vbmU7XG5cdH1cblxuXHQmLm93bC1ncmFiIHtcblx0XHRjdXJzb3I6IG1vdmU7XG5cdFx0Y3Vyc29yOiBncmFiO1xuXHR9XG5cblx0Ji5vd2wtcnRsIHtcblx0XHRkaXJlY3Rpb246IHJ0bDtcblx0fVxuXG5cdCYub3dsLXJ0bCAub3dsLWl0ZW0ge1xuXHRcdGZsb2F0OiByaWdodDtcblx0fVxufVxuXG4vKiBObyBKcyAqL1xuLm5vLWpzIC5vd2wtY2Fyb3VzZWwge1xuXHRkaXNwbGF5OiBibG9jaztcbn1cbiIsIi8qXG4gKiAgT3dsIENhcm91c2VsIC0gQW5pbWF0ZSBQbHVnaW5cbiAqL1xuLm93bC1jYXJvdXNlbHtcblx0LmFuaW1hdGVkIHtcblx0XHRhbmltYXRpb24tZHVyYXRpb246IDEwMDBtcztcblx0XHRhbmltYXRpb24tZmlsbC1tb2RlOiBib3RoO1xuXHR9XG5cdC5vd2wtYW5pbWF0ZWQtaW4ge1xuXHRcdHotaW5kZXg6IDA7XG5cdH1cblx0Lm93bC1hbmltYXRlZC1vdXQge1xuXHRcdHotaW5kZXg6IDE7XG5cdH1cblx0LmZhZGVPdXQge1xuXHRcdGFuaW1hdGlvbi1uYW1lOiBmYWRlT3V0O1xuXHR9XG59XG5cbkBrZXlmcmFtZXMgZmFkZU91dCB7XG5cdDAlIHtcblx0XHRvcGFjaXR5OiAxO1xuXHR9XG5cblx0MTAwJSB7XG5cdFx0b3BhY2l0eTogMDtcblx0fVxufVxuIiwiLypcbiAqIFx0T3dsIENhcm91c2VsIC0gQXV0byBIZWlnaHQgUGx1Z2luXG4gKi9cblxuLm93bC1oZWlnaHQge1xuXHR0cmFuc2l0aW9uOiBoZWlnaHQgNTAwbXMgZWFzZS1pbi1vdXQ7XG59XG4iLCIvKlxuICogXHRPd2wgQ2Fyb3VzZWwgLSBMYXp5IExvYWQgUGx1Z2luXG4gKi9cblxuLm93bC1jYXJvdXNlbCB7XG5cdC5vd2wtaXRlbSB7XG5cdFx0Lm93bC1sYXp5IHtcblx0XHRcdFx0b3BhY2l0eTogMDtcblx0XHRcdFx0dHJhbnNpdGlvbjogb3BhY2l0eSA0MDBtcyBlYXNlO1xuXHRcdH1cblxuXHRcdC8qKlxuXHRcdFx0VGhpcyBpcyBpbnRyb2R1Y2VkIGR1ZSB0byBhIGJ1ZyBpbiBJRTExIHdoZXJlIGxhenkgbG9hZGluZyBjb21iaW5lZCB3aXRoIGF1dG9oZWlnaHQgcGx1Z2luIGNhdXNlcyBhIHdyb25nXG5cdFx0XHRjYWxjdWxhdGlvbiBvZiB0aGUgaGVpZ2h0IG9mIHRoZSBvd2wtaXRlbSB0aGF0IGJyZWFrcyBwYWdlIGxheW91dHNcblx0XHQgKi9cblx0XHQub3dsLWxhenlbc3JjXj1cIlwiXSwgLm93bC1sYXp5Om5vdChbc3JjXSkge1xuXHRcdFx0bWF4LWhlaWdodDogMDtcblx0XHR9XG5cblx0XHRpbWcub3dsLWxhenkge1xuXHRcdFx0dHJhbnNmb3JtLXN0eWxlOiBwcmVzZXJ2ZS0zZDtcblx0XHR9XG5cdH1cbn1cblxuIiwiJG93bC1pbWFnZS1wYXRoOiBcIlwiICFkZWZhdWx0O1xuXG4vKlxuICogXHRPd2wgQ2Fyb3VzZWwgLSBWaWRlbyBQbHVnaW5cbiAqL1xuXG4ub3dsLWNhcm91c2Vse1xuXHQub3dsLXZpZGVvLXdyYXBwZXIge1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRoZWlnaHQ6IDEwMCU7XG5cdFx0YmFja2dyb3VuZDogIzAwMDtcblx0fVxuXG5cdC5vd2wtdmlkZW8tcGxheS1pY29uIHtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0aGVpZ2h0OiA4MHB4O1xuXHRcdHdpZHRoOiA4MHB4O1xuXHRcdGxlZnQ6IDUwJTtcblx0XHR0b3A6IDUwJTtcblx0XHRtYXJnaW4tbGVmdDogLTQwcHg7XG5cdFx0bWFyZ2luLXRvcDogLTQwcHg7XG5cdFx0YmFja2dyb3VuZDogdXJsKFwiI3skb3dsLWltYWdlLXBhdGh9b3dsLnZpZGVvLnBsYXkucG5nXCIpIG5vLXJlcGVhdDtcblx0XHRjdXJzb3I6IHBvaW50ZXI7XG5cdFx0ei1pbmRleDogMTtcblx0XHQtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcblx0XHR0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMTAwbXMgZWFzZTtcblx0fVxuXG5cdC5vd2wtdmlkZW8tcGxheS1pY29uOmhvdmVyIHtcblx0XHR0cmFuc2Zvcm06IHNjYWxlKDEuMywgMS4zKTtcblx0fVxuXG5cdC5vd2wtdmlkZW8tcGxheWluZyAub3dsLXZpZGVvLXRuLFxuXHQub3dsLXZpZGVvLXBsYXlpbmcgLm93bC12aWRlby1wbGF5LWljb24ge1xuXHRcdGRpc3BsYXk6IG5vbmU7XG5cdH1cblxuXHQub3dsLXZpZGVvLXRuIHtcblx0XHRvcGFjaXR5OiAwO1xuXHRcdGhlaWdodDogMTAwJTtcblx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuXHRcdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cdFx0YmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuXHRcdHRyYW5zaXRpb246IG9wYWNpdHkgNDAwbXMgZWFzZTtcblx0fVxuXG5cdC5vd2wtdmlkZW8tZnJhbWUge1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHR6LWluZGV4OiAxO1xuXHRcdGhlaWdodDogMTAwJTtcblx0XHR3aWR0aDogMTAwJTtcblx0fVxufVxuIiwiLyoqXHJcbiAqIFRvb2xzLlxyXG4gKi9cclxuXHJcbkBpbXBvcnQgJ2Z1bmN0aW9ucyc7XHJcbkBpbXBvcnQgJ21hZ25pZmljLXBvcHVwJztcclxuQGltcG9ydCAnbWl4aW5zJztcclxuIiwiLyoqXHJcbiAqIFVuaWNvZGUuXHJcbiAqXHJcbiAqIFByZXNlcnZlIGVzY2FwZWQgdW5pY29kZSBzdHJpbmcuXHJcbiAqIEBwYXJhbSB7U3RyaW5nfSAkc3RyaW5nIC0gQW4gdW5pY29kZSBzdHJpbmcuXHJcbiAqIEByZXR1cm4ge1N0cmluZ30gQSBwcmVzZXJ2ZWQgZXNjYXBlZCB1bmljb2RlIHN0cmluZ1xyXG4gKi9cclxuIFxyXG4vLyBzYXNzLWxpbnQ6ZGlzYWJsZSBxdW90ZXNcclxuQGZ1bmN0aW9uIHVuaWNvZGUoJHN0cmluZykge1xyXG5cdEByZXR1cm4gdW5xdW90ZShcIlxcJ1wiKSArIHVucXVvdGUoc3RyLWluc2VydCgkc3RyaW5nLCAnXFxcXCcsIDEpKSArIHVucXVvdGUoXCJcXCdcIik7XHJcbn1cclxuLy8gc2Fzcy1saW50OmVuYWJsZSBxdW90ZXNcclxuXHJcblxyXG4vKipcclxuICogUkVNLlxyXG4gKlxyXG4gKiBDb252ZXJ0IHBpeGVsIHVuaXRzIHRvIFJFTSB1bml0cy5cclxuICogQHBhcmFtIHtOdW1iZXJ9ICRwaXhlbHMgLSBQaXhlbCB2YWx1ZS5cclxuICogQHJldHVybiB7Kn0gLSBBIGNvbnZlcnRlZCBgcmVtYCB1bml0LlxyXG4gKi9cclxuXHJcbkBmdW5jdGlvbiByZW0oJHBpeGVscykge1xyXG5cdEBpZiAodW5pdGxlc3MoJHBpeGVscykpIHtcclxuXHRcdEBlcnJvciAnVmFsdWUgZm9yIGAjeyRwaXhlbHN9YCBzaG91bGQgYmUgYSBgcHhgIHVuaXQuJztcclxuXHR9XHJcblx0QHJldHVybiAoKCRwaXhlbHMgLyAxMHB4KSAqIDFyZW0pO1xyXG59XHJcblxyXG5cclxuLyoqXHJcbiAqIENvbHVtbi5cclxuICpcclxuICogQ2FsY3VsYXRlIGdpdmVuIGNvbHVtbiB3aWR0aC5cclxuICogQHBhcmFtIHtOdW1iZXJ9ICRjb2x1bW4gLSBUaGUgYW1vdW50IG9mIGNvbHVtbnMgdG8gc3Bhbi5cclxuICogQHBhcmFtIHtOdW1iZXJ9ICRjb2x1bW5zIC0gVGhlIGFtb3VudCBvZiBjb2x1bW5zIHRoYXQgY2FuIGJlIHNwYW5uZWQuXHJcbiAqIEByZXR1cm4ge1N0cmluZ30gLSBQZXJjZW50YWdlIHZhbHVlLlxyXG4gKi9cclxuXHJcbkBmdW5jdGlvbiBjb2x1bW4oJGNvbHVtbiwgJGNvbHVtbnM6ICRncmlkLWNvbHVtbnMpIHtcclxuXHRAcmV0dXJuICgkY29sdW1uICAqIDEwMCUgLyAkY29sdW1ucyk7XHJcbn1cclxuXHJcblxyXG4vKipcclxuICogQ29sb3IuXHJcbiAqXHJcbiAqIEdldCBhIGNvbG9yIHZhbHVlIGZyb20gdHdvIGxldmVscyBkZWVwIGluIHRoZSBgJGNvbG9yYCBtYXAuXHJcbiAqIEBwYXJhbSB7JHN0cmluZ30gJGtleSAtIEtleSBvZiB0aGUgY29sb3IgdG8gZ2V0IGZyb20gdGhlIG1hcC5cclxuICogQHBhcmFtIHtOdW1iZXJ9ICR2YWx1ZSAtIFZhbHVlIG9mIHRoZSBrZXkgdG8gZ2V0IGZyb20gdGhlIG1hcC5cclxuICogQHJldHVybiB7Kn0gQSBIU0xBIGNvbG9yIHZhbHVlLlxyXG4gKi9cclxuXHJcbkBmdW5jdGlvbiBjb2xvcigka2V5LCAkdmFsdWUpIHtcclxuXHRAcmV0dXJuIG1hcC1nZXQobWFwLWdldCgkY29sb3JzLCAka2V5KSwgJHZhbHVlKTtcclxufVxyXG4iLCIvLyBzYXNzLWxpbnQ6ZGlzYWJsZSBpbmRlbnRhdGlvbiBuby1xdWFsaWZ5aW5nLWVsZW1lbnRzIHNob3J0aGFuZC12YWx1ZXMgc2luZ2xlLWxpbmUtcGVyLXNlbGVjdG9yIGNsYXNzLW5hbWUtZm9ybWF0IG5vLWlkcyBpZC1uYW1lLWZvcm1hdCBwcm9wZXJ0eS1zb3J0LW9yZGVyIG5vLWNvbG9yLWxpdGVyYWxzIGhleC1ub3RhdGlvbiBicmFjZS1zdHlsZSB6ZXJvLXVuaXQgc3BhY2UtYWZ0ZXItY29sb24gZW1wdHktbGluZS1iZXR3ZWVuLWJsb2Nrc1xyXG5cclxuXHJcbi8qIE1hZ25pZmljIFBvcHVwIENTUyAqL1xyXG4ubWZwLWJnIHtcclxuICB0b3A6IDA7XHJcbiAgbGVmdDogMDtcclxuICB3aWR0aDogMTAwJTtcclxuICBoZWlnaHQ6IDEwMCU7XHJcbiAgei1pbmRleDogMTA0MjtcclxuICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gIHBvc2l0aW9uOiBmaXhlZDtcclxuICBiYWNrZ3JvdW5kOiAjMGIwYjBiO1xyXG4gIG9wYWNpdHk6IDAuODsgfVxyXG5cclxuLm1mcC13cmFwIHtcclxuICB0b3A6IDA7XHJcbiAgbGVmdDogMDtcclxuICB3aWR0aDogMTAwJTtcclxuICBoZWlnaHQ6IDEwMCU7XHJcbiAgei1pbmRleDogMTA0MztcclxuICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgb3V0bGluZTogbm9uZSAhaW1wb3J0YW50O1xyXG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOyB9XHJcblxyXG4ubWZwLWNvbnRhaW5lciB7XHJcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICB3aWR0aDogMTAwJTtcclxuICBoZWlnaHQ6IDEwMCU7XHJcbiAgbGVmdDogMDtcclxuICB0b3A6IDA7XHJcbiAgcGFkZGluZzogMCA4cHg7XHJcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDsgfVxyXG5cclxuLm1mcC1jb250YWluZXI6YmVmb3JlIHtcclxuICBjb250ZW50OiAnJztcclxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgaGVpZ2h0OiAxMDAlO1xyXG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IH1cclxuXHJcbi5tZnAtYWxpZ24tdG9wIC5tZnAtY29udGFpbmVyOmJlZm9yZSB7XHJcbiAgZGlzcGxheTogbm9uZTsgfVxyXG5cclxuLm1mcC1jb250ZW50IHtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XHJcbiAgbWFyZ2luOiAwIGF1dG87XHJcbiAgdGV4dC1hbGlnbjogbGVmdDtcclxuICB6LWluZGV4OiAxMDQ1OyB9XHJcblxyXG4ubWZwLWlubGluZS1ob2xkZXIgLm1mcC1jb250ZW50LFxyXG4ubWZwLWFqYXgtaG9sZGVyIC5tZnAtY29udGVudCB7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgY3Vyc29yOiBhdXRvOyB9XHJcblxyXG4ubWZwLWFqYXgtY3VyIHtcclxuICBjdXJzb3I6IHByb2dyZXNzOyB9XHJcblxyXG4ubWZwLXpvb20tb3V0LWN1ciwgLm1mcC16b29tLW91dC1jdXIgLm1mcC1pbWFnZS1ob2xkZXIgLm1mcC1jbG9zZSB7XHJcbiAgY3Vyc29yOiAtbW96LXpvb20tb3V0O1xyXG4gIGN1cnNvcjogLXdlYmtpdC16b29tLW91dDtcclxuICBjdXJzb3I6IHpvb20tb3V0OyB9XHJcblxyXG4ubWZwLXpvb20ge1xyXG4gIGN1cnNvcjogcG9pbnRlcjtcclxuICBjdXJzb3I6IC13ZWJraXQtem9vbS1pbjtcclxuICBjdXJzb3I6IC1tb3otem9vbS1pbjtcclxuICBjdXJzb3I6IHpvb20taW47IH1cclxuXHJcbi5tZnAtYXV0by1jdXJzb3IgLm1mcC1jb250ZW50IHtcclxuICBjdXJzb3I6IGF1dG87IH1cclxuXHJcbi5tZnAtY2xvc2UsXHJcbi5tZnAtYXJyb3csXHJcbi5tZnAtcHJlbG9hZGVyLFxyXG4ubWZwLWNvdW50ZXIge1xyXG4gIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XHJcbiAgLW1vei11c2VyLXNlbGVjdDogbm9uZTtcclxuICB1c2VyLXNlbGVjdDogbm9uZTsgfVxyXG5cclxuLm1mcC1sb2FkaW5nLm1mcC1maWd1cmUge1xyXG4gIGRpc3BsYXk6IG5vbmU7IH1cclxuXHJcbi5tZnAtaGlkZSB7XHJcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XHJcblxyXG4ubWZwLXByZWxvYWRlciB7XHJcbiAgY29sb3I6ICNDQ0M7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIHRvcDogNTAlO1xyXG4gIHdpZHRoOiBhdXRvO1xyXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICBtYXJnaW4tdG9wOiAtMC44ZW07XHJcbiAgbGVmdDogOHB4O1xyXG4gIHJpZ2h0OiA4cHg7XHJcbiAgei1pbmRleDogMTA0NDsgfVxyXG4gIC5tZnAtcHJlbG9hZGVyIGEge1xyXG4gICAgY29sb3I6ICNDQ0M7IH1cclxuICAgIC5tZnAtcHJlbG9hZGVyIGE6aG92ZXIge1xyXG4gICAgICBjb2xvcjogI0ZGRjsgfVxyXG5cclxuLm1mcC1zLXJlYWR5IC5tZnAtcHJlbG9hZGVyIHtcclxuICBkaXNwbGF5OiBub25lOyB9XHJcblxyXG4ubWZwLXMtZXJyb3IgLm1mcC1jb250ZW50IHtcclxuICBkaXNwbGF5OiBub25lOyB9XHJcblxyXG5idXR0b24ubWZwLWNsb3NlLFxyXG5idXR0b24ubWZwLWFycm93IHtcclxuICBvdmVyZmxvdzogdmlzaWJsZTtcclxuICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XHJcbiAgYm9yZGVyOiAwO1xyXG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcclxuICBkaXNwbGF5OiBibG9jaztcclxuICBvdXRsaW5lOiBub25lO1xyXG4gIHBhZGRpbmc6IDA7XHJcbiAgei1pbmRleDogMTA0NjtcclxuICBib3gtc2hhZG93OiBub25lO1xyXG4gIHRvdWNoLWFjdGlvbjogbWFuaXB1bGF0aW9uOyB9XHJcblxyXG5idXR0b246Oi1tb3otZm9jdXMtaW5uZXIge1xyXG4gIHBhZGRpbmc6IDA7XHJcbiAgYm9yZGVyOiAwOyB9XHJcblxyXG4ubWZwLWNsb3NlIHtcclxuICB3aWR0aDogNDRweDtcclxuICBoZWlnaHQ6IDQ0cHg7XHJcbiAgbGluZS1oZWlnaHQ6IDQ0cHg7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIHJpZ2h0OiAwO1xyXG4gIHRvcDogMDtcclxuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gIG9wYWNpdHk6IDAuNjU7XHJcbiAgcGFkZGluZzogMCAwIDE4cHggMTBweDtcclxuICBjb2xvcjogI0ZGRjtcclxuICBmb250LXN0eWxlOiBub3JtYWw7XHJcbiAgZm9udC1zaXplOiAyOHB4O1xyXG4gIGZvbnQtZmFtaWx5OiBBcmlhbCwgQmFza2VydmlsbGUsIG1vbm9zcGFjZTsgfVxyXG4gIC5tZnAtY2xvc2U6aG92ZXIsXHJcbiAgLm1mcC1jbG9zZTpmb2N1cyB7XHJcbiAgICBvcGFjaXR5OiAxOyB9XHJcbiAgLm1mcC1jbG9zZTphY3RpdmUge1xyXG4gICAgdG9wOiAxcHg7IH1cclxuXHJcbi5tZnAtY2xvc2UtYnRuLWluIC5tZnAtY2xvc2Uge1xyXG4gIGNvbG9yOiAjMzMzOyB9XHJcblxyXG4ubWZwLWltYWdlLWhvbGRlciAubWZwLWNsb3NlLFxyXG4ubWZwLWlmcmFtZS1ob2xkZXIgLm1mcC1jbG9zZSB7XHJcbiAgY29sb3I6ICNGRkY7XHJcbiAgcmlnaHQ6IC02cHg7XHJcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XHJcbiAgcGFkZGluZy1yaWdodDogNnB4O1xyXG4gIHdpZHRoOiAxMDAlOyB9XHJcblxyXG4ubWZwLWNvdW50ZXIge1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICB0b3A6IDA7XHJcbiAgcmlnaHQ6IDA7XHJcbiAgY29sb3I6ICNDQ0M7XHJcbiAgZm9udC1zaXplOiAxMnB4O1xyXG4gIGxpbmUtaGVpZ2h0OiAxOHB4O1xyXG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7IH1cclxuXHJcbi5tZnAtYXJyb3cge1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICBvcGFjaXR5OiAwLjY1O1xyXG4gIG1hcmdpbjogMDtcclxuICB0b3A6IDUwJTtcclxuICBtYXJnaW4tdG9wOiAtNTVweDtcclxuICBwYWRkaW5nOiAwO1xyXG4gIHdpZHRoOiA5MHB4O1xyXG4gIGhlaWdodDogMTEwcHg7XHJcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDsgfVxyXG4gIC5tZnAtYXJyb3c6YWN0aXZlIHtcclxuICAgIG1hcmdpbi10b3A6IC01NHB4OyB9XHJcbiAgLm1mcC1hcnJvdzpob3ZlcixcclxuICAubWZwLWFycm93OmZvY3VzIHtcclxuICAgIG9wYWNpdHk6IDE7IH1cclxuICAubWZwLWFycm93OmJlZm9yZSxcclxuICAubWZwLWFycm93OmFmdGVyIHtcclxuICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICB3aWR0aDogMDtcclxuICAgIGhlaWdodDogMDtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICB0b3A6IDA7XHJcbiAgICBtYXJnaW4tdG9wOiAzNXB4O1xyXG4gICAgbWFyZ2luLWxlZnQ6IDM1cHg7XHJcbiAgICBib3JkZXI6IG1lZGl1bSBpbnNldCB0cmFuc3BhcmVudDsgfVxyXG4gIC5tZnAtYXJyb3c6YWZ0ZXIge1xyXG4gICAgYm9yZGVyLXRvcC13aWR0aDogMTNweDtcclxuICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDEzcHg7XHJcbiAgICB0b3A6IDhweDsgfVxyXG4gIC5tZnAtYXJyb3c6YmVmb3JlIHtcclxuICAgIGJvcmRlci10b3Atd2lkdGg6IDIxcHg7XHJcbiAgICBib3JkZXItYm90dG9tLXdpZHRoOiAyMXB4O1xyXG4gICAgb3BhY2l0eTogMC43OyB9XHJcblxyXG4ubWZwLWFycm93LWxlZnQge1xyXG4gIGxlZnQ6IDA7IH1cclxuICAubWZwLWFycm93LWxlZnQ6YWZ0ZXIge1xyXG4gICAgYm9yZGVyLXJpZ2h0OiAxN3B4IHNvbGlkICNGRkY7XHJcbiAgICBtYXJnaW4tbGVmdDogMzFweDsgfVxyXG4gIC5tZnAtYXJyb3ctbGVmdDpiZWZvcmUge1xyXG4gICAgbWFyZ2luLWxlZnQ6IDI1cHg7XHJcbiAgICBib3JkZXItcmlnaHQ6IDI3cHggc29saWQgIzNGM0YzRjsgfVxyXG5cclxuLm1mcC1hcnJvdy1yaWdodCB7XHJcbiAgcmlnaHQ6IDA7IH1cclxuICAubWZwLWFycm93LXJpZ2h0OmFmdGVyIHtcclxuICAgIGJvcmRlci1sZWZ0OiAxN3B4IHNvbGlkICNGRkY7XHJcbiAgICBtYXJnaW4tbGVmdDogMzlweDsgfVxyXG4gIC5tZnAtYXJyb3ctcmlnaHQ6YmVmb3JlIHtcclxuICAgIGJvcmRlci1sZWZ0OiAyN3B4IHNvbGlkICMzRjNGM0Y7IH1cclxuXHJcbi5tZnAtaWZyYW1lLWhvbGRlciB7XHJcbiAgcGFkZGluZy10b3A6IDQwcHg7XHJcbiAgcGFkZGluZy1ib3R0b206IDQwcHg7IH1cclxuICAubWZwLWlmcmFtZS1ob2xkZXIgLm1mcC1jb250ZW50IHtcclxuICAgIGxpbmUtaGVpZ2h0OiAwO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBtYXgtd2lkdGg6IDkwMHB4OyB9XHJcbiAgLm1mcC1pZnJhbWUtaG9sZGVyIC5tZnAtY2xvc2Uge1xyXG4gICAgdG9wOiAtNDBweDsgfVxyXG5cclxuLm1mcC1pZnJhbWUtc2NhbGVyIHtcclxuICB3aWR0aDogMTAwJTtcclxuICBoZWlnaHQ6IDA7XHJcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICBwYWRkaW5nLXRvcDogNTYuMjUlOyB9XHJcbiAgLm1mcC1pZnJhbWUtc2NhbGVyIGlmcmFtZSB7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIHRvcDogMDtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGhlaWdodDogMTAwJTtcclxuICAgIGJveC1zaGFkb3c6IDAgMCA4cHggcmdiYSgwLCAwLCAwLCAwLjYpO1xyXG4gICAgYmFja2dyb3VuZDogIzAwMDsgfVxyXG5cclxuLyogTWFpbiBpbWFnZSBpbiBwb3B1cCAqL1xyXG5pbWcubWZwLWltZyB7XHJcbiAgd2lkdGg6IGF1dG87XHJcbiAgbWF4LXdpZHRoOiAxMDAlO1xyXG4gIGhlaWdodDogYXV0bztcclxuICBkaXNwbGF5OiBibG9jaztcclxuICBsaW5lLWhlaWdodDogMDtcclxuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gIHBhZGRpbmc6IDQwcHggMCA0MHB4O1xyXG4gIG1hcmdpbjogMCBhdXRvOyB9XHJcblxyXG4vKiBUaGUgc2hhZG93IGJlaGluZCB0aGUgaW1hZ2UgKi9cclxuLm1mcC1maWd1cmUge1xyXG4gIGxpbmUtaGVpZ2h0OiAwOyB9XHJcbiAgLm1mcC1maWd1cmU6YWZ0ZXIge1xyXG4gICAgY29udGVudDogJyc7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICBsZWZ0OiAwO1xyXG4gICAgdG9wOiA0MHB4O1xyXG4gICAgYm90dG9tOiA0MHB4O1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICByaWdodDogMDtcclxuICAgIHdpZHRoOiBhdXRvO1xyXG4gICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgei1pbmRleDogLTE7XHJcbiAgICBib3gtc2hhZG93OiAwIDAgOHB4IHJnYmEoMCwgMCwgMCwgMC42KTtcclxuICAgIGJhY2tncm91bmQ6ICM0NDQ7IH1cclxuICAubWZwLWZpZ3VyZSBzbWFsbCB7XHJcbiAgICBjb2xvcjogI0JEQkRCRDtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgZm9udC1zaXplOiAxMnB4O1xyXG4gICAgbGluZS1oZWlnaHQ6IDE0cHg7IH1cclxuICAubWZwLWZpZ3VyZSBmaWd1cmUge1xyXG4gICAgbWFyZ2luOiAwOyB9XHJcblxyXG4ubWZwLWJvdHRvbS1iYXIge1xyXG4gIG1hcmdpbi10b3A6IC0zNnB4O1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICB0b3A6IDEwMCU7XHJcbiAgbGVmdDogMDtcclxuICB3aWR0aDogMTAwJTtcclxuICBjdXJzb3I6IGF1dG87IH1cclxuXHJcbi5tZnAtdGl0bGUge1xyXG4gIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgbGluZS1oZWlnaHQ6IDE4cHg7XHJcbiAgY29sb3I6ICNGM0YzRjM7XHJcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xyXG4gIHBhZGRpbmctcmlnaHQ6IDM2cHg7IH1cclxuXHJcbi5tZnAtaW1hZ2UtaG9sZGVyIC5tZnAtY29udGVudCB7XHJcbiAgbWF4LXdpZHRoOiAxMDAlOyB9XHJcblxyXG4ubWZwLWdhbGxlcnkgLm1mcC1pbWFnZS1ob2xkZXIgLm1mcC1maWd1cmUge1xyXG4gIGN1cnNvcjogcG9pbnRlcjsgfVxyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogODAwcHgpIGFuZCAob3JpZW50YXRpb246IGxhbmRzY2FwZSksIHNjcmVlbiBhbmQgKG1heC1oZWlnaHQ6IDMwMHB4KSB7XHJcbiAgLyoqXHJcbiAgICAgICAqIFJlbW92ZSBhbGwgcGFkZGluZ3MgYXJvdW5kIHRoZSBpbWFnZSBvbiBzbWFsbCBzY3JlZW5cclxuICAgICAgICovXHJcbiAgLm1mcC1pbWctbW9iaWxlIC5tZnAtaW1hZ2UtaG9sZGVyIHtcclxuICAgIHBhZGRpbmctbGVmdDogMDtcclxuICAgIHBhZGRpbmctcmlnaHQ6IDA7IH1cclxuICAubWZwLWltZy1tb2JpbGUgaW1nLm1mcC1pbWcge1xyXG4gICAgcGFkZGluZzogMDsgfVxyXG4gIC5tZnAtaW1nLW1vYmlsZSAubWZwLWZpZ3VyZTphZnRlciB7XHJcbiAgICB0b3A6IDA7XHJcbiAgICBib3R0b206IDA7IH1cclxuICAubWZwLWltZy1tb2JpbGUgLm1mcC1maWd1cmUgc21hbGwge1xyXG4gICAgZGlzcGxheTogaW5saW5lO1xyXG4gICAgbWFyZ2luLWxlZnQ6IDVweDsgfVxyXG4gIC5tZnAtaW1nLW1vYmlsZSAubWZwLWJvdHRvbS1iYXIge1xyXG4gICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjYpO1xyXG4gICAgYm90dG9tOiAwO1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gICAgdG9wOiBhdXRvO1xyXG4gICAgcGFkZGluZzogM3B4IDVweDtcclxuICAgIHBvc2l0aW9uOiBmaXhlZDtcclxuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IH1cclxuICAgIC5tZnAtaW1nLW1vYmlsZSAubWZwLWJvdHRvbS1iYXI6ZW1wdHkge1xyXG4gICAgICBwYWRkaW5nOiAwOyB9XHJcbiAgLm1mcC1pbWctbW9iaWxlIC5tZnAtY291bnRlciB7XHJcbiAgICByaWdodDogNXB4O1xyXG4gICAgdG9wOiAzcHg7IH1cclxuICAubWZwLWltZy1tb2JpbGUgLm1mcC1jbG9zZSB7XHJcbiAgICB0b3A6IDA7XHJcbiAgICByaWdodDogMDtcclxuICAgIHdpZHRoOiAzNXB4O1xyXG4gICAgaGVpZ2h0OiAzNXB4O1xyXG4gICAgbGluZS1oZWlnaHQ6IDM1cHg7XHJcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuNik7XHJcbiAgICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICBwYWRkaW5nOiAwOyB9IH1cclxuXHJcbkBtZWRpYSBhbGwgYW5kIChtYXgtd2lkdGg6IDkwMHB4KSB7XHJcbiAgLm1mcC1hcnJvdyB7XHJcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMC43NSk7XHJcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDAuNzUpOyB9XHJcbiAgLm1mcC1hcnJvdy1sZWZ0IHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogMDtcclxuICAgIHRyYW5zZm9ybS1vcmlnaW46IDA7IH1cclxuICAubWZwLWFycm93LXJpZ2h0IHtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogMTAwJTtcclxuICAgIHRyYW5zZm9ybS1vcmlnaW46IDEwMCU7IH1cclxuICAubWZwLWNvbnRhaW5lciB7XHJcbiAgICBwYWRkaW5nLWxlZnQ6IDZweDtcclxuICAgIHBhZGRpbmctcmlnaHQ6IDZweDsgfSB9XHJcblxyXG4vLyBzYXNzLWxpbnQ6ZW5hYmxlIGluZGVudGF0aW9uIG5vLXF1YWxpZnlpbmctZWxlbWVudHMgc2hvcnRoYW5kLXZhbHVlcyBzaW5nbGUtbGluZS1wZXItc2VsZWN0b3IgY2xhc3MtbmFtZS1mb3JtYXQgbm8taWRzIGlkLW5hbWUtZm9ybWF0IHByb3BlcnR5LXNvcnQtb3JkZXIgbm8tY29sb3ItbGl0ZXJhbHMgaGV4LW5vdGF0aW9uIGJyYWNlLXN0eWxlIHplcm8tdW5pdCBzcGFjZS1hZnRlci1jb2xvbiBlbXB0eS1saW5lLWJldHdlZW4tYmxvY2tzXHJcbiIsIi8qKlxyXG4gKiBDb250YWluZXJcclxuICogXHJcbiAqIENlbnRlciBhbGlnbnMgZWxlbWVudCB3aXRoIGdpdmVuIG1heGltdW0gd2lkdGgsIHBhZGRpbmcsIGFuZCBtYXJnaW5zIHRvcCBhbmQgYm90dG9tLlxyXG4gKiBAcGFyYW0ge1N0cmluZ30gJHdpZHRoIC0gUGl4ZWwgdW5pdCB2YWx1ZS5cclxuICogQHBhcmFtIHtTdHJpbmd9ICRnYXAgLSBQaXhlbCB1bml0IHZhbHVlLlxyXG4gKiBAZXhhbXBsZSBAaW5jbHVkZSBjb250YWluZXIoMTAyNHB4LCAyMHB4KTtcclxuICovXHJcblxyXG5AbWl4aW4gY29udGFpbmVyKCR3aWR0aDogJGdyaWQtd2lkdGgsICRnYXA6ICRncmlkLWdhcCkge1xyXG5cdEBpZiAodHlwZS1vZigkd2lkdGgpID09IG51bWJlciBhbmQgdHlwZS1vZigkZ2FwKSA9PSBudW1iZXIpIHtcclxuXHRcdEBpZiAoJGdhcCAhPSAwKSB7XHJcblx0XHRcdG1heC13aWR0aDogY2FsYygjeyR3aWR0aH0gKyAjeygkZ2FwICogMil9KTtcclxuXHRcdFx0cGFkZGluZzogMCAkZ2FwO1xyXG5cdFx0fSBAZWxzZSB7XHJcblx0XHRcdG1heC13aWR0aDogJHdpZHRoO1xyXG5cdFx0fVxyXG5cdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRtYXJnaW46IDAgYXV0bztcclxuXHR9IEBlbHNlIHtcclxuXHRcdEBlcnJvciAnQXJndW1lbnRzIGAkd2lkdGhgIGFuZCBgJGdhcGAgc2hvdWxkIGJlIGEgbnVtYmVyJztcclxuXHR9XHJcbn1cclxuXHJcblxyXG4vKipcclxuICogU2VjdGlvblxyXG4gKlxyXG4gKiBBZGQgdG9wIGFuZCBib3R0b20gc3BhY2luZyB0byBlbGVtZW50IHVzaW5nIHBhZGRpbmdzLlxyXG4gKiBAcGFyYW0ge1N0cmluZ30gJHRvcCAtIFBpeGVsIHVuaXQgdmFsdWUuXHJcbiAqIEBwYXJhbSB7U3RyaW5nfSAkYm90dG9tIC0gUGl4ZWwgdW5pdCB2YWx1ZS5cclxuICogQGV4YW1wbGUgQGluY2x1ZGUgc2VjdGlvbigxMDBweCwgMTAwcHgpO1xyXG4gKi8gXHJcblxyXG5AbWl4aW4gc2VjdGlvbigkdG9wOiAwLCAkYm90dG9tOiAwKSB7XHJcblx0QGlmICh0eXBlLW9mKCR0b3ApID09IG51bWJlciBhbmQgdHlwZS1vZigkYm90dG9tKSA9PSBudW1iZXIpIHtcclxuXHRcdHBhZGRpbmc6ICR0b3AgMCAkYm90dG9tO1xyXG5cdH0gQGVsc2Uge1xyXG5cdFx0QGVycm9yICdBcmd1bWVudHMgYCR0b3BgIGFuZCBgYm90dG9tYCBzaG91bGQgYmUgYSBudW1iZXInO1xyXG5cdH1cclxufVxyXG5cclxuXHJcbi8qKlxyXG4gKiBGb250LlxyXG4gKlxyXG4gKiBBZGRzIGByZW1gIHVuaXQgYmFzZWQgZm9udCBzaXplIHByb3BlcnR5LCBhIGZhbGxiYWNrIGBweGAgdW5pdCBiYXNlZCBmb250IHNpemUgcHJvcGVydHksIGFuZCBhIGBlbWAgdW5pdCBiYXNlZCBsaW5lIGhlaWdodCBwcm9wZXJ0eSB0byBhbnkgcnVsZS5cclxuICogQHBhcmFtIHtTdHJpbmd9ICRmb250LXNpemUgLSBQaXhlbCB1bml0IHZhbHVlLlxyXG4gKiBAcGFyYW0ge1N0cmluZ30gJGxpbmUtaGVpZ2h0IC0gUGl4ZWwgdW5pdCB2YWx1ZS5cclxuICogQGV4YW1wbGUgQGluY2x1ZGUgZm9udC1zaXplKDE2cHgsIDI0cHgpO1xyXG4gKi9cclxuXHJcbkBtaXhpbiBmb250KCRmb250LXNpemUsICRsaW5lLWhlaWdodCkge1xyXG5cdEBpZiAodHlwZS1vZigkZm9udC1zaXplKSA9PSBudW1iZXIgYW5kIHVuaXQoJGZvbnQtc2l6ZSkgPT0gJ3B4Jykge1xyXG5cdFx0Zm9udC1zaXplOiAkZm9udC1zaXplO1xyXG5cdFx0Zm9udC1zaXplOiByZW0oJGZvbnQtc2l6ZSk7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgbm8tZHVwbGljYXRlLXByb3BlcnRpZXNcclxuXHR9IEBlbHNlIHtcclxuXHRcdEBlcnJvciAnVmFsdWUgZm9yIGAjeyRmb250LXNpemV9YCBzaG91bGQgYmUgYSBgcHhgIHVuaXQnO1xyXG5cdH1cclxuXHRAaWYgKHR5cGUtb2YoJGxpbmUtaGVpZ2h0KSA9PSBudW1iZXIgYW5kIHVuaXQoJGxpbmUtaGVpZ2h0KSA9PSAncHgnKSB7XHJcblx0XHRsaW5lLWhlaWdodDogKCgkbGluZS1oZWlnaHQgLyAkZm9udC1zaXplKSAqIDFlbSk7XHJcblx0fSBAZWxzZSB7XHJcblx0XHRAZXJyb3IgJ1ZhbHVlIGZvciBgI3skbGluZS1oZWlnaHR9YCBzaG91bGQgYmUgYSBgcHhgIHVuaXQnO1xyXG5cdH1cclxufVxyXG5cclxuXHJcbi8qKlxyXG4gKiBUZXh0LlxyXG4gKlxyXG4gKiBTaG9ydGhhbmQgZm9yIHRoZSBmb250IG1peGluLCBydW5zIHRoZSBmb250IG1peGluIGJhc2VkIG9uIGEgY29tbW9uIGRlbWVhbm91ciBleGlzdGluZyBib3RoIGluIHRoZSBgJGZvbnQtc2l6ZWAgYW5kIHRoZSBgJGxpbmUtaGVpZ2h0YCBtYXBzLlxyXG4gKiBAcGFyYW0ge3N0cmluZ30gJHZhbHVlIC0gU3RyaW5nXHJcbiAqIEBleGFtcGxlIEBpbmNsdWRlIHRleHQoJ3AnKTtcclxuICovIFxyXG5cclxuQG1peGluIHRleHQoJHZhbHVlKSB7XHJcblx0QGlmICh0eXBlLW9mKCR2YWx1ZSkgPT0gc3RyaW5nKSB7XHJcblx0XHRAaW5jbHVkZSBmb250KG1hcC1nZXQoJGZvbnQtc2l6ZSwgJHZhbHVlKSwgbWFwLWdldCgkbGluZS1oZWlnaHQsICR2YWx1ZSkpO1xyXG5cdH0gQGVsc2Uge1xyXG5cdFx0QGVycm9yICdWYWx1ZSBzaG91bGQgYmUgYSBzdHJpbmcnO1xyXG5cdH1cclxufVxyXG5cclxuXHJcbi8qKlxyXG4gKiBGb250IEF3ZXNvbWUuXHJcbiAqXHJcbiAqIEFkZCBGb250IEF3ZXNvbWUgaWNvbnMgYXMgcHN1ZWRvIGVsZW1lbnRzIGJ5IHVzaW5nIHRoZWlyIHVuaWNvZGUuXHJcbiAqIEBwYXJhbSB7U3RyaW5nfSAkY29udGVudCAtIFVuaWNvZGUgc3RyaW5nLlxyXG4gKiBAcGFyYW0ge1N0cmluZ30gJGZhbWlseSAtIEZvbnQgQXdlc29tZSBmb250IGZhbWlseSBzdHJpbmcuXHJcbiAqIEBleGFtcGxlIEBpbmNsdWRlIGZvbnRhd2Vzb21lKCdmMTAwJywgJ0xpZ2h0Jyk7XHJcbiAqL1xyXG5cclxuQG1peGluIGZvbnRhd2Vzb21lKCRjb250ZW50LCAkZmFtaWx5KSB7XHJcblx0QGlmICh0eXBlLW9mKCRmYW1pbHkpID09IHN0cmluZykge1xyXG5cdFx0ZGlzcGxheTogbm9uZTtcclxuXHRcdGZvbnQtZmFtaWx5OiAnRm9udCBBd2Vzb21lIDUgI3skZmFtaWx5fSc7XHJcblx0XHRjb250ZW50OiB1bmljb2RlKCRjb250ZW50KTtcclxuXHR9IEBlbHNlIHtcclxuXHRcdEBlcnJvciAnQXJndW1lbnQgYCRmYW1pbHlgIHNob3VsZCBiZSBhIHN0cmluZyc7XHJcblx0fVxyXG59XHJcblxyXG5cclxuLyoqXHJcbiAqIE1lZGlhLlxyXG4gKlxyXG4gKiBNZWRpYSBxdWVyaWVzIGFjY29yZGluZyB0byBcIlRoZSAxMDAlIENvcnJlY3QgV2F5IFRvIERvIENTUyBCcmVha3BvaW50c1wiIChodHRwczovL21lZGl1bS5mcmVlY29kZWNhbXAuY29tL3RoZS0xMDAtY29ycmVjdC13YXktdG8tZG8tY3NzLWJyZWFrcG9pbnRzLTg4ZDZhNWJhMTg2MikuXHJcbiAqIEBwYXJhbSB7U3RyaW5nfSAkYnJlYWtwb2ludCAtIEJyZWFrcG9pbnQgcGl4ZWwgdW5pdCB2YWx1ZS5cclxuICogQGV4YW1wbGUgQGluY2x1ZGUgbWVkaWEoJ3Bob25lJykge31cclxuICovIFxyXG4gXHJcbkBtaXhpbiBtZWRpYSgkc2l6ZSkge1xyXG5cdEBpZiAoJHNpemUgPT0gJ2Rlc2t0b3AnKSB7XHJcblx0XHRAbWVkaWEgb25seSBzY3JlZW4gYW5kKG1pbi13aWR0aDogMTIwMHB4KSB7XHJcblx0XHRcdEBjb250ZW50O1xyXG5cdFx0fVxyXG5cdH0gQGVsc2UgaWYgKCRzaXplID09ICd0YWJsZXQtbGFuZHNjYXBlLXVwJykge1xyXG5cdFx0QG1lZGlhIG9ubHkgc2NyZWVuIGFuZChtaW4td2lkdGg6IDkwMHB4KSB7XHJcblx0XHRcdEBjb250ZW50O1xyXG5cdFx0fVxyXG5cdH0gQGVsc2UgaWYgKCRzaXplID09ICd0YWJsZXQtbGFuZHNjYXBlJykge1xyXG5cdFx0QG1lZGlhIG9ubHkgc2NyZWVuIGFuZChtaW4td2lkdGg6IDkwMHB4KSBhbmQobWF4LXdpZHRoOiAxMTk5cHgpIHtcclxuXHRcdFx0QGNvbnRlbnQ7XHJcblx0XHR9XHJcblx0fSBAZWxzZSBpZiAoJHNpemUgPT0gJ3RhYmxldC1sYW5kc2NhcGUtZG93bicpIHtcclxuXHRcdEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQobWF4LXdpZHRoOiAxMTk5cHgpIHtcclxuXHRcdFx0QGNvbnRlbnQ7XHJcblx0XHR9XHJcblx0fSBAZWxzZSBpZiAoJHNpemUgPT0gJ3RhYmxldC1wb3J0cmFpdC11cCcpIHtcclxuXHRcdEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQobWluLXdpZHRoOiA2MDBweCkge1xyXG5cdFx0XHRAY29udGVudDtcclxuXHRcdH1cclxuXHR9IEBlbHNlIGlmICgkc2l6ZSA9PSAndGFibGV0LXBvcnRyYWl0Jykge1xyXG5cdFx0QG1lZGlhIG9ubHkgc2NyZWVuIGFuZChtaW4td2lkdGg6IDYwMHB4KSBhbmQobWF4LXdpZHRoOiA4OTlweCkge1xyXG5cdFx0XHRAY29udGVudDtcclxuXHRcdH1cclxuXHR9IEBlbHNlIGlmICgkc2l6ZSA9PSAndGFibGV0LXBvcnRyYWl0LWRvd24nKSB7XHJcblx0XHRAbWVkaWEgb25seSBzY3JlZW4gYW5kKG1heC13aWR0aDogODk5cHgpIHtcclxuXHRcdFx0QGNvbnRlbnQ7XHJcblx0XHR9XHJcblx0fSBAZWxzZSBpZiAoJHNpemUgPT0gJ3RhYmxldCcpIHtcclxuXHRcdEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQobWluLXdpZHRoOiA2MDBweCkgYW5kKG1heC13aWR0aDogMTE5OXB4KSB7XHJcblx0XHRcdEBjb250ZW50O1xyXG5cdFx0fVxyXG5cdH0gQGVsc2UgaWYgKCRzaXplID09ICdwaG9uZScpIHtcclxuXHRcdEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQobWF4LXdpZHRoOiA1OTlweCkge1xyXG5cdFx0XHRAY29udGVudDtcclxuXHRcdH1cclxuXHR9IEBlbHNlIHtcclxuXHRcdEBjb250ZW50O1xyXG5cdH1cclxufVxyXG4iLCIvKipcclxuICogUmVtb3ZlIG1hcmdpbiBhbmQgcGFkZGluZyBmcm9tIGV2ZXJ5IHNlbGVjdG9yIGluY2x1ZGluZyB0aGVpclxyXG4gKiBwc3VlZG8gc2VsZWN0b3JzLlxyXG4gKlxyXG4gKiAxLiBNb3JlIHNlbnNpYmxlIGRlZmF1bHQgYm94IHNpemluZy5cclxuICogICAgKGNzcy10cmlja3MuY29tL2luaGVyaXRpbmctYm94LXNpemluZy1wcm9iYWJseS1zbGlnaHRseS1iZXR0ZXItYmVzdC1wcmFjdGljZSkuXHJcbiAqL1xyXG5cclxuKixcclxuKjo6YmVmb3JlLFxyXG4qOjphZnRlciB7XHJcblx0bWFyZ2luOiAwO1xyXG5cdHBhZGRpbmc6IDA7XHJcblx0Ym94LXNpemluZzogaW5oZXJpdDsgLyogMSAqL1xyXG59XHJcblxyXG5cclxuLyoqXHJcbiAqIFNldCBoZWlnaHQgb2YgdGhlIGRvY3VtZW50IHRvIG1heGl1bSB2aWV3cG9ydCBoZWlnaHQuXHJcbiAqXHJcbiAqIDEuIFNldCByb290IGZvbnQgc2l6ZSB0byAxMC5cclxuICovXHJcblxyXG5odG1sIHtcclxuXHRoZWlnaHQ6IDEwMHZoO1xyXG5cdGZvbnQtc2l6ZTogNjIuNSU7IC8qIDEgKi9cclxuXHRib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG59XHJcblxyXG5cclxuLyoqXHJcbiAqIFNldCBtaW5pbWFsIGhlaWdodCBvZiB0aGUgYm9keSB0byBtYXhpbXVtIHZpZXdwb3J0IGhlaWdodCB0b1xyXG4gKiBtYXRjaCB0aGUgZG9jdW1lbnQncyBoZWlnaHQuXHJcbiAqXHJcbiAqIDEuIEZpcmVmb3ggMjUrLlxyXG4gKiAyLiBDaHJvbWUgNSsuXHJcbiAqL1xyXG5cclxuYm9keSB7XHJcblx0QGluY2x1ZGUgdGV4dCgkYm9keS10ZXh0KTtcclxuXHRtaW4taGVpZ2h0OiAxMDB2aDtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkYm9keS1iYWNrZ3JvdW5kLWNvbG9yO1xyXG5cdGNvbG9yOiAkYm9keS1jb2xvcjtcclxuXHRmb250LWZhbWlseTogJGJvZHktZm9udC1mYW1pbHk7XHJcblx0bGV0dGVyLXNwYWNpbmc6IDAuNHB4O1xyXG5cdHRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHk7XHJcblx0LW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTsgLyogMSAqL1xyXG5cdC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkOyAvKiAyICovXHJcbn1cclxuIiwiLyoqXHJcbiAqIEN1c3RvbSB1c2VyIGFnZW50IHJlc2V0cyBhbmQgb3ZlcnJpZGVzIHRoYXQgYXJlIG5vdCBwcmVzZW50IGluXHJcbiAqIE5vcm1hbGl6ZSA4LjAuMC4gVGhpcyBtb3N0bHkgcmVtb3ZlcyBzb21lIGFubm95aW5nIG1hcmdpbiBhbmQgcGFkZGluZ1xyXG4gKiBkZWZhdWx0cywgYm9yZGVyIHJhZGl1cywgYW5kIG91dGxpbmVzLlxyXG4gKi9cclxuXHJcbmEge1xyXG5cdGNvbG9yOiBpbmhlcml0O1xyXG5cdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxufVxyXG5cclxuXHJcbi8qKlxyXG4gKiAxLiBSZW1vdmUgYm9yZGVyIHJhZGl1cyBvbiBDaHJvbWUgNjIuMCsgb24gbWFjT1MuXHJcbiAqL1xyXG5cclxuYnV0dG9uIHtcclxuXHRib3JkZXI6IDA7XHJcblx0Ym9yZGVyLXJhZGl1czogMDsgLyogMSAqL1xyXG5cdG91dGxpbmU6IG5vbmU7XHJcblx0YmFja2dyb3VuZDogbm9uZTtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcbn1cclxuXHJcbmZpZWxkc2V0IHtcclxuXHRtYXJnaW46IDA7XHJcblx0cGFkZGluZzogMDtcclxuXHRib3JkZXI6IDA7XHJcbn1cclxuXHJcbmZpZ3VyZSB7XHJcblx0bWFyZ2luOiAwO1xyXG59XHJcblxyXG5oMSxcclxuaDIsXHJcbmgzLFxyXG5oNCxcclxuaDUsXHJcbmg2IHtcclxuXHRtYXJnaW46IDA7XHJcblx0cGFkZGluZzogMDtcclxuXHRmb250LXNpemU6IGluaGVyaXQ7XHJcblx0Zm9udC13ZWlnaHQ6IGluaGVyaXQ7XHJcbn1cclxuXHJcbmhyIHtcclxuXHRtYXJnaW46IDA7XHJcblx0cGFkZGluZzogMDtcclxufVxyXG5cclxuXHJcbi8qKlxyXG4gKiAxLiBSZW1vdmUgd2hpdGUgc3BhY2UuXHJcbiAqL1xyXG5cclxuaW1nIHtcclxuXHRtYXgtd2lkdGg6IDEwMCU7XHJcblx0aGVpZ2h0OiBhdXRvO1xyXG5cdHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IC8qIDEgKi9cclxufVxyXG5cclxuXHJcbi8qKlxyXG4gKiAxLiBSZW1vdmUgaW5oZXJpdGVkIHVzZXIgYWdlbnQgYXBwZWFyYW5jZS5cclxuICovXHJcblxyXG5pbnB1dCxcclxuc2VsZWN0LFxyXG50ZXh0YXJlYSB7XHJcblx0bWF4LXdpZHRoOiAxMDAlO1xyXG5cdGJvcmRlcjogMDtcclxuXHRib3JkZXItcmFkaXVzOiAwO1xyXG5cdG91dGxpbmU6IG5vbmU7XHJcblx0YXBwZWFyYW5jZTogbm9uZTsgLyogMSAqL1xyXG59XHJcblxyXG5cclxuLyoqXHJcbiAqIDEuIE9ubHkgYWxsb3cgdmVydGljYWwgcmVzaXppbmcgdG8gcHJldmVudCB0aGUgdGV4dGFyZWFcclxuICogICAgZnJvbSBvdmVyZmxvd2luZyB0aGUgY29udGFpbmVyLlxyXG4gKi9cclxuXHJcbnRleHRhcmVhIHtcclxuXHRyZXNpemU6IHZlcnRpY2FsO1xyXG59XHJcblxyXG51bCxcclxub2wge1xyXG5cdG1hcmdpbjogMDtcclxuXHRwYWRkaW5nOiAwO1xyXG5cdGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcclxufVxyXG5cclxucCB7XHJcblx0bWFyZ2luOiAwO1xyXG59XHJcblxyXG5cclxuLyoqXHJcbiAqIDEuIENvbGxhcHNlIGJvcmRlcnMgdG8gcHJldmVudCBkb3VibGUgc2lkZWQgYm9yZGVycy5cclxuICovXHJcblxyXG50YWJsZSB7XHJcblx0bWF4LXdpZHRoOiAxMDAlO1xyXG5cdGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7IC8qIDEgKi9cclxufVxyXG5cclxuc3Ryb25nIHtcclxuXHRmb250LXdlaWdodDogNzAwO1xyXG59XHJcbiIsIi5iYWNrZ3JvdW5kIHtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblxyXG5cdCY6YWZ0ZXIge1xyXG5cdFx0ZGlzcGxheTogZmxleDtcclxuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdGNvbnRlbnQ6ICcnO1xyXG5cdFx0ei1pbmRleDogMTtcclxuXHRcdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcblx0fVxyXG5cclxuXHQqIHtcclxuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRcdHotaW5kZXg6IDI7XHJcblx0fVxyXG59XHJcblxyXG4uYmFja2dyb3VuZC0tY29udGVudCB7XHJcblx0JjphZnRlciB7XHJcblx0XHR3aWR0aDogMzczcHg7XHJcblx0XHRoZWlnaHQ6IDM1M3B4O1xyXG5cdFx0YmFja2dyb3VuZDogdXJsKCAnLi8uLi9pbWFnZXMvZWxlbWVudC0wMS5zdmcnICk7XHJcblx0fVxyXG59XHJcblxyXG4uYmFja2dyb3VuZC0tbmF2aWdhdGlvbiB7XHJcblx0JjphZnRlciB7XHJcblx0XHR3aWR0aDogMzczcHg7XHJcblx0XHRoZWlnaHQ6IDM1M3B4O1xyXG5cdFx0YmFja2dyb3VuZDogdXJsKCAnLi8uLi9pbWFnZXMvZWxlbWVudC0wMi5zdmcnICk7XHJcblx0fVxyXG59XHJcblxyXG4uYmFja2dyb3VuZC0taGVhZGVyIHtcclxuXHQmOmFmdGVyIHtcclxuXHRcdHdpZHRoOiA1NDNweDtcclxuXHRcdGhlaWdodDogNTU3cHg7XHJcblx0XHRiYWNrZ3JvdW5kOiB1cmwoICcuLy4uL2ltYWdlcy9lbGVtZW50LTAzLnN2ZycgKTtcclxuXHR9XHJcbn1cclxuXHJcbi5iYWNrZ3JvdW5kLS1wYWdpbmF0aW9uIHtcclxuXHQmOmFmdGVyIHtcclxuXHRcdHdpZHRoOiAyNnB4O1xyXG5cdFx0aGVpZ2h0OiAxNXB4O1xyXG5cdFx0YmFja2dyb3VuZDogdXJsKCAnLi8uLi9pbWFnZXMvZWxlbWVudC0xMS5zdmcnICk7XHJcblx0fVxyXG59XHJcblxyXG4uYmFja2dyb3VuZC0taG92ZXIge1xyXG5cdCY6YWZ0ZXIge1xyXG5cdFx0d2lkdGg6IDY3cHg7XHJcblx0XHRoZWlnaHQ6IDU4cHg7XHJcblx0XHRiYWNrZ3JvdW5kOiB1cmwoICcuLy4uL2ltYWdlcy9lbGVtZW50LTA1LnN2ZycgKTtcclxuXHR9XHJcbn1cclxuXHJcbi5iYWNrZ3JvdW5kLS1hYm91dCB7XHJcblx0JjphZnRlciB7XHJcblx0XHR3aWR0aDogNTQ0cHg7XHJcblx0XHRoZWlnaHQ6IDM5NXB4O1xyXG5cdFx0YmFja2dyb3VuZDogdXJsKCAnLi8uLi9pbWFnZXMvZWxlbWVudC0wNi5zdmcnICk7XHJcblx0fVxyXG59XHJcblxyXG4uYmFja2dyb3VuZC0tY2FoaWVyIHtcclxuXHQmOmFmdGVyIHtcclxuXHRcdHdpZHRoOiA3MTNweDtcclxuXHRcdGhlaWdodDogMTg5cHg7XHJcblx0XHRiYWNrZ3JvdW5kOiB1cmwoICcuLy4uL2ltYWdlcy9lbGVtZW50LTA3LnN2ZycgKTtcclxuXHR9XHJcbn1cclxuXHJcbi5iYWNrZ3JvdW5kLS1vcmRlciB7XHJcblx0JjphZnRlciB7XHJcblx0XHR3aWR0aDogOTNweDtcclxuXHRcdGhlaWdodDogMjcycHg7XHJcblx0XHRiYWNrZ3JvdW5kOiB1cmwoICcuLy4uL2ltYWdlcy9lbGVtZW50LTA4LnN2ZycgKTtcclxuXHR9XHJcbn1cclxuXHJcbi5iYWNrZ3JvdW5kLS1taW5pLWNhcnQge1xyXG5cdCY6YWZ0ZXIge1xyXG5cdFx0d2lkdGg6IDE2NHB4O1xyXG5cdFx0aGVpZ2h0OiAxMDhweDtcclxuXHRcdGJhY2tncm91bmQ6IHVybCggJy4vLi4vaW1hZ2VzL2VsZW1lbnQtMDkuc3ZnJyApO1xyXG5cdH1cclxufVxyXG4iLCIvKipcclxuICogQnV0dG9uLlxyXG4gKi9cclxuXHJcbiVidXR0b24sXHJcbi5idXR0b24ge1xyXG5cdEBpbmNsdWRlIGZvbnQoMTVweCwgMjBweCk7XHJcblx0ZGlzcGxheTogaW5saW5lLWZsZXg7XHJcblx0aGVpZ2h0OiA0MHB4O1xyXG5cdHBhZGRpbmc6IDEwcHggMjBweDtcclxuXHRib3JkZXItcmFkaXVzOiAycHg7XHJcblx0dHJhbnNpdGlvbjogYWxsIDI1MG1zIGVhc2U7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdGxldHRlci1zcGFjaW5nOiAwLjQycHg7XHJcblx0Zm9udC13ZWlnaHQ6IDUwMDtcclxuXHJcblx0Jjpob3ZlciB7XHJcblx0XHRib3JkZXItcmFkaXVzOiAxMHB4IDJweCAxMHB4IDJweDtcclxuXHR9XHJcbn1cclxuXHJcblxyXG4vKipcclxuICogQnV0dG9uIChibHVlKS5cclxuICovXHJcblxyXG4lYnV0dG9uLS1ibHVlLFxyXG4uYnV0dG9uLS1ibHVlIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkYmx1ZS0xMDA7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgJGJsdWUtMTAwO1xyXG5cdGNvbG9yOiAkd2hpdGUtMTAwO1xyXG59XHJcblxyXG5cclxuLyoqXHJcbiAqIEJ1dHRvbiAoYm9yZGVyLWdyZXkpLlxyXG4gKi9cclxuXHJcbiVidXR0b24tLWJvcmRlci1ncmV5LFxyXG4uYnV0dG9uLS1ib3JkZXItZ3JleSB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogJHdoaXRlLTEwMDtcclxuXHRib3JkZXI6IDFweCBzb2xpZCAkZ3JleS00MDA7XHJcblx0Y29sb3I6ICRncmV5LTQwMDtcclxuXHRvcGFjaXR5OiAwLjc7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBCdXR0b24gKGJvcmRlci1ibHVlKS5cclxuICovXHJcblxyXG4uYnV0dG9uLS1ib3JkZXItYmx1ZSB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogJHdoaXRlLTEwMDtcclxuXHRib3JkZXI6IDFweCBzb2xpZCAkYmx1ZS0xMDA7XHJcblx0Y29sb3I6ICRibHVlLTEwMDtcclxufVxyXG5cclxuXHJcbi8qKlxyXG4gKiBCdXR0b24gKGJvcmRlci13aGl0ZSkuXHJcbiAqL1xyXG5cclxuLmJ1dHRvbi0tYm9yZGVyLXdoaXRlIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkYmx1ZS0xMDA7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgJHdoaXRlLTEwMDtcclxuXHRjb2xvcjogJHdoaXRlLTEwMDtcclxufVxyXG5cclxuXHJcbi8qKlxyXG4gKiBCdXR0b24gKGJpZykuXHJcbiAqL1xyXG5cclxuLmJ1dHRvbi0tYmlnIHtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHRtaW4td2lkdGg6IDI5NXB4O1xyXG5cdGhlaWdodDogNzBweDtcclxuXHRwYWRkaW5nOiAyNXB4O1xyXG5cdGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZS0xMDA7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgJHdoaXRlLTEwMDtcclxuXHRjb2xvcjogJGJsdWUtMTAwO1xyXG5cclxuXHRzdmcge1xyXG5cdFx0d2lkdGg6IDE0cHg7XHJcblx0XHRoZWlnaHQ6IDIycHg7XHJcblx0XHRtYXJnaW4tbGVmdDogMTBweDtcclxuXHRcdGNvbG9yOiAkYmx1ZS0xMDA7XHJcblx0XHR0cmFuc2l0aW9uOiBhbGwgMjUwbXMgZWFzZTtcclxuXHR9XHJcblxyXG5cdCY6aG92ZXIge1xyXG5cdFx0c3ZnIHtcclxuXHRcdFx0bWFyZ2luLWxlZnQ6IDIwcHg7XHJcblx0XHRcdG1hcmdpbi1yaWdodDogLTEwcHg7XHJcblx0XHR9XHJcblx0fVxyXG59XHJcbiIsIi8qKlxyXG4gKiBUaGUgY29udGFpbmVyIG9iamVjdCBjZW50ZXJzIGFuIGVsZW1lbnQgaW4gdGhlIGRvY3VtZW50LlxyXG4gKi9cclxuXHJcbi5jb250YWluZXIge1xyXG5cdEBpbmNsdWRlIGNvbnRhaW5lcjtcclxufVxyXG4iLCIvKipcclxuICogVGhlIGNvbnRlbnQgY29uc3RyYWludCBpcyBhIGNvbnN0cmFpbnQgZm9yIGFsbCB0aGUgY29udGVudCB3aXRoaW5cclxuICogdGhlIGRvY3VtZW50LiBJdCBjYW4gYmUgbWFuaXB1bGF0ZWQgYnkgQ1NTIG9yIEphdmFTY3JpcHQgd2l0aG91dFxyXG4gKiBpbmZsdWVuY2luZyB0aGUgYm9keS5cclxuICovXHJcblxyXG4uY29udGVudC1jb25zdHJhaW50IHtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0bWluLWhlaWdodDogMTAwdmg7XHJcblx0b3ZlcmZsb3c6IGhpZGRlbjtcclxufVxyXG4iLCIvKipcclxuICogRXhhbXBsZSBvZiBhIGZsZXggYmFzZWQgY29sdW1uIGdyaWQgbGF5b3V0IGluIHByYWN0aWNlOlxyXG4gKlxyXG4gKiA8ZGl2IGNsYXNzPVwicm93XCI+XHJcbiAqICAgPGRpdiBjbGFzcz1cImNvbCBjb2wteHMtNiBjb2wtc20tMTJcIj48L2Rpdj5cclxuICogICA8ZGl2IGNsYXNzPVwiY29sIGNvbC14cy02IGNvbC1zbS0xMlwiPjwvZGl2PlxyXG4gKiA8L2Rpdj5cclxuICpcclxuICogVGhpcyBleGFtcGxlIHdpbGwgY3JlYXRlIGEgcm93IHdpdGggdHdvIGNvbHVtbnMgZWFjaCBmaWxsaW5nIGhhbGYgdGhlIHdpZHRoXHJcbiAqIG9mIHRoZSByb3cgb24gYWxsIG1lZGlhLCBidXQgd2lsbCBjb252ZXJ0IHRvIGEgZnVsbCB3aWR0aCBjb2x1bW4gb24gdGhlXHJcbiAqIHNtYWxsIGAtc21gIGJyZWFrcG9pbnQgYWxpYXMsIHdoaWNoIGlzIG1vYmlsZSBvbmx5LiBSZWZlciB0b1xyXG4gKiBgc2V0dGluZ3MvX2RlZmluaXRpb25zLnNjc3NgIGZvciBhbGwgYnJlYWtwb2ludCBhbGlhcy5cclxuICovXHJcblxyXG4vKipcclxuICogRmxleCBvYmplY3QuXHJcbiAqXHJcbiAqIFRpcDogVXNlIGZsZXggb24gYSBjb2x1bW4gdG8gbWFrZSB0aGUgYm94IHRoZSBzYW1lIGhlaWdodCBhcyB0aGUgY29sdW1uLlxyXG4gKi9cclxuXHJcbi5mbGV4IHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG59XHJcblxyXG4uZmxleC13cmFwIHtcclxuXHRmbGV4LXdyYXA6IHdyYXA7XHJcbn1cclxuXHJcblxyXG4vKipcclxuICogRmxleCBvYmplY3Qgd2l0aCBhIGNvbHVtbiBiYXNlZCBsYXlvdXQgc3lzdGVtLlxyXG4gKi9cclxuXHJcbi5yb3cge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleDogMCAxIGF1dG87XHJcblx0ZmxleC1mbG93OiByb3cgd3JhcDtcclxuXHRtYXJnaW46IDAgLSN7KCRncmlkLWdhcC8yKX07XHJcbn1cclxuXHJcblxyXG4vKipcclxuICogQm94LCB0aGUgaW5zaWRlIG9mIGEgY29sdW1uLlxyXG4gKi9cclxuXHJcbi5ib3gge1xyXG5cdGZsZXg6IDE7XHJcbn1cclxuXHJcblxyXG4vLyBMb29wIHRocm91Z2ggYWxsIHRoZSBrZXlzIGluIHRoZSBgJGJyZWFrcG9pbnRzYCB2YXJpYWJsZSBtYXAgZGVmaW5lZCBpblxyXG4vLyBgc2V0dGluZ3MvX2RlZmluaXRpb25zLnNjc3NgLlxyXG5AZWFjaCAka2V5LCAkdmFsdWUgaW4gJGJyZWFrcG9pbnRzIHtcclxuXHJcblx0Ly8gQ3JlYXRlIGEgbWVkaWEgcXVlcnkgZm9yIGV2ZXJ5IGtleSBpbiBgJGJyZWFrcG9pbnRzYC5cclxuXHRAaW5jbHVkZSBtZWRpYSgkdmFsdWUpIHtcclxuXHJcblx0XHQvLyBJdGVyYXRlIGZyb20gMSB0aHJvdWdoIHRoZSBhbW91bnQgb2YgZ3JpZCBjb2x1bW5zIGRlZmluZWQgYnlcclxuXHRcdC8vIGAkZ3JpZC1jb2x1bW5zYCBpbiBgc2V0dGluZ3MvX2RlZmluaXRpb25zLnNjc3NgLlxyXG5cdFx0QGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkZ3JpZC1jb2x1bW5zIHtcclxuXHJcblx0XHRcdC8qKlxyXG5cdFx0XHQgKiBDb2x1bW4gI3skaX0gZm9yIHRoZSBgI3ska2V5fWAgYnJlYWtwb2ludC5cclxuXHRcdFx0ICovXHJcblxyXG5cdFx0XHQuY29sLSN7JGtleX0tI3skaX0ge1xyXG5cdFx0XHRcdGZsZXg6IDAgMSBhdXRvO1xyXG5cdFx0XHRcdHdpZHRoOiBjb2x1bW4oJGkpO1xyXG5cdFx0XHRcdHBhZGRpbmc6IDAgKCRncmlkLWdhcC8yKTtcclxuXHRcdFx0fVxyXG5cclxuXHJcblx0XHRcdC8vIE91dHB1dCBhbiBvZmZzZXQgdXRpbGl0eSBjbGFzcyBpZiB0aGUgaXRlcmF0b3IgaXMgbGVzcyB0aGFuIHRoZSBhbW91bnRcclxuXHRcdFx0Ly8gb2YgZ3JpZCBjb2x1bW5zIGRlZmluZWQgYnkgYCRncmlkLWNvbHVtbnNgIGluXHJcblx0XHRcdC8vIGBzZXR0aW5ncy9fZGVmaW5pdGlvbnMuc2Nzc2AuXHJcblx0XHRcdEBpZiAoJGkgPCAkZ3JpZC1jb2x1bW5zKSB7XHJcblxyXG5cdFx0XHRcdC8qKlxyXG5cdFx0XHRcdCAqIE9mZnNldCAjeyRpfSBmb3IgdGhlIGAjeyRrZXl9YCBicmVha3BvaW50LlxyXG5cdFx0XHRcdCAqL1xyXG5cclxuXHRcdFx0XHQub2Zmc2V0LSN7JGtleX0tI3skaX0ge1xyXG5cdFx0XHRcdFx0bWFyZ2luLWxlZnQ6IGNvbHVtbigkaSk7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHR9XHJcblxyXG5cclxuXHRcdC8vIExvb3AgdGhyb3VnaCBhbGwgdmFsdWVzIGZvciB0aGUgYGFsaWduLWl0ZW1zYCBwcm9wZXJ0eS5cclxuXHRcdEBlYWNoICR2YWx1ZSBpbiBzdHJldGNoLCBjZW50ZXIsIGZsZXgtc3RhcnQsIGZsZXgtZW5kLCBiYXNlbGluZSB7XHJcblxyXG5cdFx0XHQvKipcclxuXHRcdFx0ICogQWxpZ24gYCN7JHZhbHVlfWAgZm9yIHRoZSAjeyRrZXl9IGJyZWFrcG9pbnQuXHJcblx0XHRcdCAqL1xyXG5cclxuXHRcdFx0LmFsaWduLSN7JGtleX0tI3skdmFsdWV9IHtcclxuXHRcdFx0XHRhbGlnbi1pdGVtczogJHZhbHVlO1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblxyXG5cclxuXHRcdC8vIExvb3AgdGhyb3VnaCBhbGwgdmFsdWVzIGZvciB0aGUgYGp1c3RpZnktY29udGVudGAgcHJvcGVydHkuXHJcblx0XHRAZWFjaCAkdmFsdWUgaW4gc3RhcnQsIGNlbnRlciwgc3BhY2UtYmV0d2Vlbiwgc3BhY2UtYXJvdW5kLCBzcGFjZS1ldmVubHkge1xyXG5cclxuXHRcdFx0LyoqXHJcblx0XHRcdCAqIEp1c3RpZnkgYCN7JHZhbHVlfWAgZm9yIHRoZSAjeyRrZXl9IGJyZWFrcG9pbnQuXHJcblx0XHRcdCAqL1xyXG5cclxuXHRcdFx0Lmp1c3RpZnktI3ska2V5fS0jeyR2YWx1ZX0ge1xyXG5cdFx0XHRcdGp1c3RpZnktY29udGVudDogJHZhbHVlO1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblxyXG5cclxuXHRcdC8vIExvb3AgdGhyb3VnaCBldmVyeSBkaXJlY3Rpb24gZnJvbSBsZWZ0IHRvIHJpZ2h0LlxyXG5cdFx0QGVhY2ggJGRpcmVjdGlvbiBpbiBsZWZ0LCByaWdodCB7XHJcblxyXG5cdFx0XHQvKipcclxuXHRcdFx0ICogQmxlZWQgI3skZGlyZWN0aW9ufSBmb3IgdGhlICN7JGtleX0gYnJlYWtwb2ludC5cclxuXHRcdFx0ICovXHJcblxyXG5cdFx0XHQuYmxlZWQtI3ska2V5fS0jeyRkaXJlY3Rpb259IHtcclxuXHRcdFx0XHRwYWRkaW5nLSN7JGRpcmVjdGlvbn06IDA7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHJcblxyXG5cdFx0LyoqXHJcblx0XHQgKiBPcmRlciBmaXJzdCBmb3IgdGhlIGAjeyRrZXl9YCBicmVha3BvaW50LlxyXG5cdFx0ICovXHJcblxyXG5cdFx0LmZpcnN0LSN7JGtleX0ge1xyXG5cdFx0XHRvcmRlcjogLTE7XHJcblx0XHR9XHJcblxyXG5cclxuXHRcdC8qKlxyXG5cdFx0ICogT3JkZXIgbGFzdCBmb3IgdGhlIGAjeyRrZXl9YCBicmVha3BvaW50LlxyXG5cdFx0ICovXHJcblxyXG5cdFx0Lmxhc3QtI3ska2V5fSB7XHJcblx0XHRcdG9yZGVyOiAxO1xyXG5cdFx0fVxyXG5cclxuXHJcblx0XHQvKipcclxuXHRcdCAqIFJldmVyc2Ugb3JkZXIgZm9yIHRoZSBgI3ska2V5fWAgYnJlYWtwb2ludC5cclxuXHRcdCAqL1xyXG5cclxuXHRcdC5yZXZlcnNlLSN7JGtleX0ge1xyXG5cdFx0XHRmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7XHJcblx0XHR9XHJcblx0fVxyXG59XHJcbiIsIi8qKlxyXG4gKiBEZWZhdWx0IGZpZWxkcy5cclxuICovXHJcblxyXG5sYWJlbCB7XHJcblx0ZGlzcGxheTogYmxvY2s7XHJcblx0bWFyZ2luLWJvdHRvbTogN3B4O1xyXG5cdGZvbnQtd2VpZ2h0OiBib2xkO1xyXG5cdGNvbG9yOiAkZ3JleS00MDA7XHJcbn1cclxuXHJcbiVpbnB1dCxcclxuc2VsZWN0LFxyXG5pbnB1dCxcclxudGV4dGFyZWEge1xyXG5cdEBpbmNsdWRlIGZvbnQoMTNweCwgMTRweCk7XHJcblx0d2lkdGg6IDEwMCU7XHJcblx0aGVpZ2h0OiA0NXB4O1xyXG5cdGJvcmRlci1yYWRpdXM6IDJweDtcclxuXHRwYWRkaW5nOiAxNXB4IDIwcHg7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogJGJsdWUtcGF0dGVucy0xMDA7XHJcblx0bGV0dGVyLXNwYWNpbmc6IDAuMzNweDtcclxufVxyXG5cclxudGV4dGFyZWEge1xyXG5cdGhlaWdodDogMzAwcHg7XHJcblx0cGFkZGluZy10b3A6IDIwcHg7XHJcbn1cclxuXHJcbi5naW5wdXRfY29udGFpbmVyX3NlbGVjdCB7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdHdpZHRoOiAxMDAlO1xyXG5cdG92ZXJmbG93OiBoaWRkZW47XHJcblx0YmFja2dyb3VuZC1jb2xvcjogJGJsdWUtcGF0dGVucy0xMDA7XHJcblxyXG5cdHN2ZyB7XHJcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHR0b3A6IDE0cHg7XHJcblx0XHRyaWdodDogMjBweDtcclxuXHRcdHdpZHRoOiA5cHg7XHJcblx0XHRoZWlnaHQ6IDEzcHg7XHJcblx0XHR6LWluZGV4OiAxO1xyXG5cdH1cclxuXHJcblx0c2VsZWN0IHtcclxuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRcdHdpZHRoOiBjYWxjKDEwMCUgKyA1MHB4KTtcclxuXHRcdG1heC13aWR0aDogbm9uZTtcclxuXHRcdG1hcmdpbjogLTJweDtcclxuXHRcdGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG5cdFx0ei1pbmRleDogMjtcclxuXHR9XHJcbn1cclxuXHJcbmlucHV0W3R5cGU9J3JhZGlvJ10sXHJcbmlucHV0W3R5cGU9J2NoZWNrYm94J10ge1xyXG5cdHdpZHRoOiAxNnB4O1xyXG5cdGhlaWdodDogMTZweDtcclxuXHRib3JkZXI6IDFweCBzb2xpZCAkYmx1ZS1sYWdvb24tMTAwO1xyXG5cdGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZS0xMDA7XHJcblxyXG5cdCY6Y2hlY2tlZCB7XHJcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkYmx1ZS1sYWdvb24tMTAwO1xyXG5cdH1cclxufVxyXG5cclxuaW5wdXRbdHlwZT0ncmFkaW8nXSB7XHJcblx0Ym9yZGVyLXJhZGl1czogMjBweDtcclxufVxyXG5cclxuLyoqXHJcbiAqIFdvb0NvbW1lcmNlLlxyXG4gKi9cclxuXHJcbi53b29jb21tZXJjZS1pbnB1dC13cmFwcGVyIHtcclxuXHQuc2VsZWN0Mi1zZWxlY3Rpb24ge1xyXG5cdFx0QGV4dGVuZCAlaW5wdXQ7XHJcblx0XHRwYWRkaW5nOiA5cHggMjBweDtcclxuXHRcdGJvcmRlcjogMDtcclxuXHR9XHJcblxyXG5cdC5zZWxlY3QyLXNlbGVjdGlvbl9fYXJyb3cge1xyXG5cdFx0aGVpZ2h0OiAxMDAlIWltcG9ydGFudDtcclxuXHRcdHJpZ2h0OiAxMHB4IWltcG9ydGFudDtcclxuXHR9XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBHcmF2aXR5IEZvcm1zLlxyXG4gKi9cclxuXHJcbi5nZmllbGQge1xyXG5cdG1hcmdpbi1ib3R0b206IDI1cHg7XHJcbn1cclxuXHJcbi5nZm9ybV92YWxpZGF0aW9uX2NvbnRhaW5lciB7XHJcblx0ZGlzcGxheTogbm9uZTtcclxufVxyXG5cclxuLnZhbGlkYXRpb25fbWVzc2FnZSB7XHJcblx0QGluY2x1ZGUgZm9udCgxM3B4LCAzMHB4KTtcclxuXHRtYXJnaW4tdG9wOiA1cHg7XHJcblx0Y29sb3I6ICRibHVlLWxhZ29vbi0xMDA7XHJcblx0Zm9udC1zdHlsZTogaXRhbGljO1xyXG59XHJcblxyXG4ldmFsaWRhdGlvbl9lcnJvcixcclxuLnZhbGlkYXRpb25fZXJyb3Ige1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRtYXJnaW46IDAgMCA1MHB4O1xyXG5cdHBhZGRpbmc6IDI1cHggMjVweCAyNXB4IDc1cHg7XHJcblx0YmFja2dyb3VuZDogJHJlZC04O1xyXG5cdGNvbG9yOiAkcmVkLTEwMDtcclxuXHJcblx0PiBzdmcge1xyXG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0dG9wOiBjYWxjKDUwJSAtIDE1cHgpO1xyXG5cdFx0bGVmdDogMzBweDtcclxuXHRcdHdpZHRoOiAzMXB4O1xyXG5cdFx0aGVpZ2h0OiAzMHB4O1xyXG5cdFx0Y29sb3I6ICRyZWQtMTAwO1xyXG5cdH1cclxuXHJcblx0LmNsb3NlLWJ1dHRvbiB7XHJcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHR0b3A6IDVweDtcclxuXHRcdHJpZ2h0OiAxMHB4O1xyXG5cdFx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cclxuXHRcdHN2ZyB7XHJcblx0XHRcdHdpZHRoOiAxNnB4O1xyXG5cdFx0XHRoZWlnaHQ6IDE2cHg7XHJcblx0XHRcdGNvbG9yOiAkZ3JleS0yMDA7XHJcblx0XHR9XHJcblx0fVxyXG59XHJcblxyXG4uZ2Zvcm1fY29uZmlybWF0aW9uX21lc3NhZ2Uge1xyXG5cdHdpZHRoOiAxMDAlO1xyXG5cdHBhZGRpbmc6IDUwcHg7XHJcblx0YmFja2dyb3VuZDogJGJsdWUtcGF0dGVucy0xMDA7XHJcblxyXG5cdGJyIHtcclxuXHRcdGRpc3BsYXk6IG5vbmU7XHJcblx0fVxyXG5cclxuXHRoNCB7XHJcblx0XHRkaXNwbGF5OiBmbGV4O1xyXG5cdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRcdG1hcmdpbi1ib3R0b206IDIwcHg7XHJcblxyXG5cdFx0c3ZnIHtcclxuXHRcdFx0d2lkdGg6IDI4cHg7XHJcblx0XHRcdGhlaWdodDogMjhweDtcclxuXHRcdFx0bWFyZ2luLXJpZ2h0OiAyMHB4O1xyXG5cdFx0XHRib3JkZXItcmFkaXVzOiAyMHB4O1xyXG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGUtMTAwO1xyXG5cdFx0XHRwYWRkaW5nOiA1cHg7XHJcblx0XHRcdGNvbG9yOiAkZ3JleS0xMDA7XHJcblx0XHR9XHJcblx0fVxyXG59IiwiLyoqXHJcbiAqIEhlYWRpbmcuXHJcbiAqL1xyXG5cclxuaDEsXHJcbmgyLFxyXG5oMyxcclxuaDQsXHJcbmg1LFxyXG4laGVhZGluZyxcclxuLmhlYWRpbmcge1xyXG5cdGNvbG9yOiAkYmx1ZS1sYWdvb24tMTAwO1xyXG5cdGZvbnQtd2VpZ2h0OiBib2xkO1xyXG5cdGxldHRlci1zcGFjaW5nOiAxLjM5cHg7XHJcblxyXG5cdCYuaXMtZ3JleSB7XHJcblx0XHRjb2xvcjogJGdyZXktMjAwO1xyXG5cdH1cclxuXHJcblx0Ji5pcy1ibHVlIHtcclxuXHRcdGNvbG9yOiAkYmx1ZS0xMDA7XHJcblx0fVxyXG5cclxuXHQmLmlzLXdoaXRlIHtcclxuXHRcdGNvbG9yOiAkd2hpdGUtMTAwO1xyXG5cdH1cclxufVxyXG5cclxuXHJcbi8qKlxyXG4gKiBIZWFkaW5nIDEuXHJcbiAqL1xyXG5cclxuaDEsXHJcbi5oZWFkaW5nLTEge1xyXG5cdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtcG9ydHJhaXQtZG93bicpIHtcclxuXHRcdEBpbmNsdWRlIGZvbnQoMzVweCwgNDFweCk7XHJcblx0XHRsZXR0ZXItc3BhY2luZzogMC45N3B4O1xyXG5cdH1cclxuXHJcblx0QGluY2x1ZGUgZm9udCg1MHB4LCA1N3B4KTtcclxuXHRsZXR0ZXItc3BhY2luZzogMS4xcHg7XHJcbn1cclxuXHJcblxyXG4vKipcclxuICogSGVhZGluZyAyLlxyXG4gKi9cclxuXHJcbmgyLFxyXG4uaGVhZGluZy0yIHtcclxuXHRAaW5jbHVkZSBmb250KDQwcHgsIDQ2cHgpO1xyXG5cdGxldHRlci1zcGFjaW5nOiAxLjExcHg7XHJcbn1cclxuXHJcblxyXG4vKipcclxuICogSGVhZGluZyAzLlxyXG4gKi9cclxuXHJcbmgzLFxyXG4uaGVhZGluZy0zIHtcclxuXHRAaW5jbHVkZSBmb250KDI1cHgsIDI5cHgpO1xyXG5cdGxldHRlci1zcGFjaW5nOiAwLjY5cHg7XHJcbn1cclxuXHJcblxyXG4vKipcclxuICogSGVhZGluZyA0LlxyXG4gKi9cclxuXHJcbmg0LFxyXG4laGVhZGluZy00LFxyXG4uaGVhZGluZy00IHtcclxuXHRAaW5jbHVkZSBmb250KDIwcHgsIDI0cHgpO1xyXG5cdGxldHRlci1zcGFjaW5nOiAwLjU2cHg7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBIZWFkaW5nIDUuXHJcbiAqL1xyXG5cclxuaDUsXHJcbi5oZWFkaW5nLTUge1xyXG5cdEBpbmNsdWRlIGZvbnQoMTZweCwgMjJweCk7XHJcblx0bGV0dGVyLXNwYWNpbmc6IDAuNDRweDtcclxufVxyXG5cclxuXHJcbi8qKlxyXG4gKiBIZWFkaW5nIEJhY2tncm91bmQuXHJcbiAqL1xyXG5cclxuLmhlYWRpbmctYmFja2dyb3VuZCB7XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3Bob25lJykge1xyXG5cdFx0QGluY2x1ZGUgZm9udCg4MHB4LCAxMzBweCk7XHJcblx0XHRsZXR0ZXItc3BhY2luZzogMi4yMnB4O1xyXG5cdFx0Y29sb3I6ICRibHVlLWxhZ29vbi01O1xyXG5cdH1cclxuXHJcblx0QGluY2x1ZGUgZm9udCgxNTBweCwgMTMwcHgpO1xyXG5cdGxldHRlci1zcGFjaW5nOiA0LjE3cHg7XHJcblx0Zm9udC13ZWlnaHQ6IGJvbGQ7XHJcblx0Y29sb3I6ICRibHVlLWxhZ29vbi04O1xyXG59XHJcbiIsIi8qKlxyXG4gKiBMYWJlbC5cclxuICovXHJcblxyXG4ubGFiZWwge1xyXG5cdEBpbmNsdWRlIGZvbnQoMTVweCwgMzBweCk7XHJcblx0ZGlzcGxheTogaW5saW5lLWZsZXg7XHJcblxyXG5cdCYuaGFzLW1vYmlsZS1iYWNrZ3JvdW5kIHtcclxuXHRcdEBpbmNsdWRlIG1lZGlhKCdwaG9uZScpIHtcclxuXHRcdFx0QGluY2x1ZGUgZm9udCgxM3B4LCAzMHB4KTtcclxuXHRcdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRcdG1hcmdpbjogMCAwIDVweCAwO1xyXG5cdFx0XHRwYWRkaW5nOiAwIDIwcHg7XHJcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRibHVlLWxhZ29vbi04O1xyXG5cclxuXHRcdFx0JjpiZWZvcmUge1xyXG5cdFx0XHRcdHdpZHRoOiAxNXB4O1xyXG5cdFx0XHR9XHJcblxyXG5cdFx0XHRzdmcge1xyXG5cdFx0XHRcdGhlaWdodDogMTVweDtcclxuXHRcdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0XHRcdFx0dG9wOiA2cHg7XHJcblx0XHRcdFx0d2lkdGg6IDE1cHg7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdCYuaXMtd2hpdGUge1xyXG5cdFx0Y29sb3I6ICR3aGl0ZS0xMDA7XHJcblx0fVxyXG5cclxuXHQmLmlzLWdyZXkge1xyXG5cdFx0Y29sb3I6ICRncmV5LTIwMDtcclxuXHR9XHJcblxyXG5cdCYuaXMtYmx1ZS1sYWdvb24ge1xyXG5cdFx0Y29sb3I6ICRibHVlLWxhZ29vbi01MDtcclxuXHR9XHJcblxyXG5cdCYuaXMtbGlnaHQge1xyXG5cdFx0Zm9udC13ZWlnaHQ6IDMwMDtcclxuXHR9XHJcblxyXG5cdHN2ZyB7XHJcblx0XHRtYXJnaW4tcmlnaHQ6IDEwcHg7XHJcblx0fVxyXG59XHJcblxyXG4ubGFiZWwtLWRhdGUge1xyXG5cdHN2ZyB7XHJcblx0XHR3aWR0aDogMTRweDtcclxuXHRcdGhlaWdodDogMzBweDtcclxuXHR9XHRcclxufVxyXG5cclxuLmxhYmVsLS1taW51dGVzIHtcclxuXHRzdmcge1xyXG5cdFx0d2lkdGg6IDE0cHg7XHJcblx0XHRoZWlnaHQ6IDMwcHg7XHJcblx0fVxyXG59XHJcblxyXG4ubGFiZWwtLWRlcHRoIHtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblxyXG5cdCY6YmVmb3JlIHtcclxuXHRcdGRpc3BsYXk6IGJsb2NrO1xyXG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdFx0dG9wOiA3cHg7XHJcblx0XHRsZWZ0OiAwO1xyXG5cdFx0d2lkdGg6IDhweDtcclxuXHRcdGhlaWdodDogMTVweDtcclxuXHRcdG1hcmdpbi1yaWdodDogMTBweDtcclxuXHRcdGNvbnRlbnQ6ICcnO1xyXG5cdH1cclxuXHJcblx0Ji5ub3JtYWwge1xyXG5cdFx0JjpiZWZvcmUge1xyXG5cdFx0XHRiYWNrZ3JvdW5kOiB1cmwoICcuLy4uL2ltYWdlcy9nZW5lcmFsLnN2ZycgKSBuby1yZXBlYXQ7XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHQmLmluLWRlcHRoIHtcclxuXHRcdCY6YmVmb3JlIHtcclxuXHRcdFx0YmFja2dyb3VuZDogdXJsKCAnLi8uLi9pbWFnZXMvaW4tZGVwdGguc3ZnJyApIG5vLXJlcGVhdDtcclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdCYubGVzcy1pbi1kZXB0aCB7XHJcblx0XHQmOmJlZm9yZSB7XHJcblx0XHRcdGJhY2tncm91bmQ6IHVybCggJy4vLi4vaW1hZ2VzL2xlc3MtaW4tZGVwdGguc3ZnJyApIG5vLXJlcGVhdDtcclxuXHRcdH1cclxuXHR9XHJcbn1cclxuXHJcblxyXG4vKipcclxuICogTGFiZWwgKFBvc3QgVHlwZSkuXHJcbiAqL1xyXG5cclxuLmxhYmVsLXBvc3QtdHlwZSB7XHJcblx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdHRvcDogMDtcclxuXHRyaWdodDogMDtcclxuXHRkaXNwbGF5OiBpbmxpbmUtZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cdHdpZHRoOiAxOTBweDtcclxuXHRoZWlnaHQ6IDMwcHg7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogJHdoaXRlLTgwO1xyXG5cdGJvcmRlci1yYWRpdXM6IDAgMCAwIDVweDtcclxuXHR6LWluZGV4OiAxMDtcclxuXHJcblx0c3ZnIHtcclxuXHRcdHdpZHRoOiAyMHB4O1xyXG5cdFx0aGVpZ2h0OiAzMHB4O1xyXG5cdFx0bWFyZ2luLXJpZ2h0OiAxMHB4O1xyXG5cclxuXHRcdCYuZmEtZmlsZSB7XHJcblx0XHRcdHdpZHRoOiAxMnB4O1xyXG5cdFx0XHRoZWlnaHQ6IDMwcHg7XHJcblx0XHR9XHJcblxyXG5cdFx0Ji5mYS1jb3B5IHtcclxuXHRcdFx0d2lkdGg6IDE5cHg7XHJcblx0XHRcdGhlaWdodDogMTdweDtcclxuXHRcdH1cclxuXHJcblx0XHQmLmZhLWJvb2sge1xyXG5cdFx0XHR3aWR0aDogMTdweDtcclxuXHRcdFx0aGVpZ2h0OiAxNXB4O1xyXG5cdFx0fVxyXG5cdH1cclxufSIsIi5oYXMtbGF6eS1sb2FkIHtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0dG9wOiAtMTUwcHg7XHJcblx0dHJhbnNpdGlvbjogYWxsIDc1MG1zIGVhc2U7XHJcblx0dHJhbnNpdGlvbi1kZWxheTogNTAwbXM7XHJcblx0b3BhY2l0eTogMDtcclxuXHJcblx0Ji5oZWFkZXIge1xyXG5cdFx0dHJhbnNpdGlvbi1kZWxheTogNzUwbXM7XHJcblx0XHR0cmFuc2l0aW9uOiBhbGwgNTAwbXMgZWFzZTtcclxuXHR9XHJcbn1cclxuXHJcbi5oYXMtbGF6eS1sb2FkW2xvYWRlZD0ndHJ1ZSddIHtcclxuXHR0b3A6IDA7XHJcblx0b3BhY2l0eTogMTtcclxufVxyXG4iLCIubGluayB7XHJcblx0QGluY2x1ZGUgZm9udCgxNXB4LCAyMHB4KTtcclxuXHRjb2xvcjogJGJsdWUtMTAwO1xyXG5cdGZvbnQtd2VpZ2h0OiA1MDA7XHJcblx0dHJhbnNpdGlvbjogYWxsIDI1MG1zIGVhc2U7XHJcblx0XHJcblx0Ji5oYXMtc3ZnLXJpZ2h0IHtcclxuXHRcdHN2ZyB7XHJcblx0XHRcdG1hcmdpbi1sZWZ0OiAxMHB4O1xyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0Ji5oYXMtc3ZnLWxlZnQge1xyXG5cdFx0c3ZnIHtcclxuXHRcdFx0bWFyZ2luLXJpZ2h0OiAxMHB4O1xyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0Ji5pcy1ncmV5IHtcclxuXHRcdGNvbG9yOiAkZ3JleS00MDA7XHJcblx0fVxyXG5cclxuXHRzdmcge1xyXG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdFx0dG9wOiAycHg7XHJcblx0XHR3aWR0aDogMTBweDtcclxuXHRcdGhlaWdodDogMTZweDtcclxuXHRcdHRyYW5zaXRpb246IGFsbCAyNTBtcyBlYXNlO1xyXG5cclxuXHRcdCYuZmEtbG9uZy1hcnJvdy1yaWdodCB7XHJcblx0XHRcdHdpZHRoOiAxNXB4O1xyXG5cdFx0XHRoZWlnaHQ6IDE0cHg7XHJcblx0XHR9XHJcblxyXG5cdFx0Ji5mYS1leWUge1xyXG5cdFx0XHR0b3A6IDRweDtcclxuXHRcdFx0d2lkdGg6IDE2cHg7XHJcblx0XHRcdGhlaWdodDogMTZweDtcclxuXHRcdH1cclxuXHJcblx0XHQmLmZhLWFuZ2xlLWRvd24ge1xyXG5cdFx0XHR0b3A6IDRweDtcclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdCY6aG92ZXIge1xyXG5cdFx0Y29sb3I6ICRibHVlLWxhZ29vbi0xMDA7XHJcblx0fVxyXG59XHJcbiIsIi5vd2wtY2Fyb3VzZWwge1xyXG5cclxuXHQub3dsLXN0YWdlLW91dGVyIHtcclxuXHRcdHdpZHRoOiA5OTk5cHg7XHJcblx0XHRvdmVyZmxvdzogdmlzaWJsZTtcclxuXHR9XHJcblxyXG5cdC5vd2wtc3RhZ2Uge1xyXG5cdFx0ZGlzcGxheTogZmxleDtcclxuXHR9XHJcblxyXG5cdC5vd2wtbmF2IHtcclxuXHRcdEBpbmNsdWRlIG1lZGlhKCdwaG9uZScpIHtcclxuXHRcdFx0cmlnaHQ6IGF1dG87XHJcblx0XHR9XHJcblxyXG5cdFx0ZGlzcGxheTogZmxleDtcclxuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdHRvcDogLTkwcHg7XHJcblx0XHRyaWdodDogMDtcclxuXHJcblx0XHRidXR0b24ub3dsLXByZXYsXHJcblx0XHRidXR0b24ub3dsLW5leHQge1xyXG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xyXG5cdFx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHRcdFx0d2lkdGg6IDQwcHg7XHJcblx0XHRcdGhlaWdodDogNDBweDtcclxuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJHdoaXRlLTEwMDtcclxuXHRcdFx0Ym9yZGVyOiAycHggc29saWQgJHdoaXRlLXNtb2tlLTEwMDtcclxuXHRcdFx0Ym9yZGVyLXJhZGl1czogNXB4O1xyXG5cdFx0XHR0cmFuc2l0aW9uOiBhbGwgMjUwbXMgZWFzZTtcclxuXHJcblx0XHRcdHN2ZyB7XHJcblx0XHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdFx0XHRcdHRvcDogM3B4O1xyXG5cdFx0XHRcdHdpZHRoOiAxNHB4O1xyXG5cdFx0XHRcdGhlaWdodDogMTRweDtcclxuXHRcdFx0XHRjb2xvcjogJGJsdWUtMTAwO1xyXG5cdFx0XHRcdHRyYW5zaXRpb246IGFsbCAyNTBtcyBlYXNlO1xyXG5cdFx0XHR9XHJcblxyXG5cdFx0XHQmLm93bC1uZXh0IHtcclxuXHRcdFx0XHRtYXJnaW4tbGVmdDogMTBweDtcclxuXHRcdFx0fVxyXG5cclxuXHRcdFx0Jjpob3ZlciB7XHJcblx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJGJsdWUtMTAwO1xyXG5cdFx0XHRcdGJvcmRlcjogMnB4IHNvbGlkICRibHVlLTEwMDtcclxuXHJcblx0XHRcdFx0c3ZnIHtcclxuXHRcdFx0XHRcdGNvbG9yOiAkd2hpdGUtMTAwO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cclxuXHRcdFx0Ji5kaXNhYmxlZCB7XHJcblx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJHdoaXRlLTEwMDtcclxuXHRcdFx0XHRib3JkZXI6IDJweCBzb2xpZCAkd2hpdGUtc21va2UtMTAwO1xyXG5cdFx0XHRcdGN1cnNvcjogZGVmYXVsdDtcclxuXHJcblx0XHRcdFx0c3ZnIHtcclxuXHRcdFx0XHRcdGNvbG9yOiAkd2hpdGUtc21va2UtMTAwO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cclxufSIsIi5wYWdpbmF0aW9uIHtcclxuXHRAaW5jbHVkZSBtZWRpYSgndGFibGV0LXBvcnRyYWl0LWRvd24nKSB7XHJcblx0XHRtYXJnaW4tYm90dG9tOiA1MHB4O1xyXG5cdH1cclxuXHJcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblx0d2lkdGg6IDEwMCU7XHJcblx0bWFyZ2luLWJvdHRvbTogODBweDtcclxuXHRwYWRkaW5nOiA1MHB4IDAgNzVweCAwO1xyXG5cclxuXHQucGFnZS1udW1iZXJzIHtcclxuXHRcdEBpbmNsdWRlIGZvbnQoMjBweCwgMjRweCk7XHJcblx0XHRkaXNwbGF5OiBmbGV4O1xyXG5cdFx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdFx0bWFyZ2luLXJpZ2h0OiAxMHB4O1xyXG5cdFx0dHJhbnNpdGlvbjogYWxsIDI1MG1zIGVhc2U7XHJcblx0XHRjb2xvcjogJGJsYWNrLTEwMDtcclxuXHRcdGZvbnQtd2VpZ2h0OiAzMDA7XHJcblxyXG5cdFx0Ji5jdXJyZW50IHtcclxuXHRcdFx0Y29sb3I6ICRibHVlLWxhZ29vbi0xMDA7XHJcblx0XHRcdGZvbnQtd2VpZ2h0OiBib2xkO1xyXG5cdFx0fVxyXG5cclxuXHRcdCYucHJldixcclxuXHRcdCYubmV4dCB7XHJcblx0XHRcdG1hcmdpbi1yaWdodDogMTVweDtcclxuXHJcblx0XHRcdHN2ZyB7XHJcblx0XHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdFx0XHRcdHdpZHRoOiAxNXB4O1xyXG5cdFx0XHRcdGhlaWdodDogMzBweDtcclxuXHRcdFx0XHRjb2xvcjogJGdyZXktMjAwO1xyXG5cdFx0XHRcdHRyYW5zaXRpb246IGFsbCAyNTBtcyBlYXNlO1xyXG5cdFx0XHR9XHJcblxyXG5cdFx0XHQmOmhvdmVyIHtcclxuXHRcdFx0XHRzdmcge1xyXG5cdFx0XHRcdFx0Y29sb3I6ICRibHVlLTEwMDtcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHJcblx0XHQmLm5leHQge1xyXG5cdFx0XHRtYXJnaW4tcmlnaHQ6IDA7XHJcblx0XHRcdG1hcmdpbi1sZWZ0OiA1cHg7XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHRhIHtcclxuXHRcdCY6aG92ZXIge1xyXG5cdFx0XHRjb2xvcjogJGJsdWUtMTAwO1xyXG5cdFx0fVxyXG5cdH1cclxufVxyXG5cclxuLnBhZ2luYXRpb25fX3dyYXAge1xyXG5cdHdpZHRoOiBmaXQtY29udGVudDtcclxuXHJcblx0JjphZnRlciB7XHJcblx0XHR3aWR0aDogY2FsYygxMDAlICsgMTBweCk7XHJcblx0XHRoZWlnaHQ6IDE1cHg7XHJcblx0XHRsZWZ0OiAtNXB4O1xyXG5cdFx0dG9wOiBjYWxjKDEwMCUgKyAxMHB4KTtcclxuXHRcdGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcclxuXHR9XHJcbn1cclxuIiwiLyoqXHJcbiAqIFdyYXBwZXIgKGRlZmF1bHQpXHJcbiAqL1xyXG5cclxuLndyYXBwZXIge1xyXG5cdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtcG9ydHJhaXQtZG93bicpIHtcclxuXHRcdEBpbmNsdWRlIGNvbnRhaW5lcigxMjQwcHgsIDYwcHgpO1xyXG5cdH1cclxuXHRAaW5jbHVkZSBtZWRpYSgncGhvbmUnKSB7XHJcblx0XHRAaW5jbHVkZSBjb250YWluZXIoMTI0MHB4LCAyMHB4KTtcclxuXHR9XHJcblxyXG5cdEBpbmNsdWRlIGNvbnRhaW5lcigxMjQwcHgsIDUwcHgpO1xyXG59XHJcblxyXG5cclxuLyoqXHJcbiAqIFdyYXBwZXIgKGxvZ2luKVxyXG4gKi9cclxuXHJcbi53cmFwcGVyLS1sb2dpbiB7XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1wb3J0cmFpdC1kb3duJykge1xyXG5cdFx0bWFyZ2luLXRvcDogOTVweDtcclxuXHR9XHJcblxyXG5cdEBpbmNsdWRlIGNvbnRhaW5lcig2MTBweCwgNTBweCk7XHJcblx0cG9zaXRpb246IGluaXRpYWw7XHJcblx0bWFyZ2luLXRvcDogMTY1cHg7XHJcblxyXG5cdCY6YWZ0ZXIge1xyXG5cdFx0dG9wOiAyMDBweDtcclxuXHRcdHJpZ2h0OiAwO1xyXG5cdH1cclxuXHJcblx0JjpiZWZvcmUge1xyXG5cclxuXHR9XHJcbn1cclxuIiwiLmNvbnRhY3QtZm9ybSB7XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1wb3J0cmFpdC1kb3duJykge1xyXG5cdFx0cGFkZGluZzogNTBweCAwO1xyXG5cdH1cclxuXHJcblx0cGFkZGluZzogODBweCAwO1xyXG5cclxuXHQmOmFmdGVyIHtcclxuXHRcdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtcG9ydHJhaXQtZG93bicpIHtcclxuXHRcdFx0Ym90dG9tOiA1MHB4O1xyXG5cdFx0XHRkaXNwbGF5OiBub25lO1xyXG5cdFx0fVxyXG5cclxuXHRcdGxlZnQ6IDA7XHJcblx0XHRib3R0b206IDgwcHg7XHJcblx0XHR0cmFuc2Zvcm06IHNjYWxlKC0xLCAxKTtcclxuXHR9XHJcbn1cclxuXHJcblxyXG4uY29udGFjdC1mb3JtX19jb250YWN0IHtcclxuXHRAaW5jbHVkZSBtZWRpYSgndGFibGV0LXBvcnRyYWl0LWRvd24nKSB7XHJcblx0XHR3aWR0aDogMTAwJTtcclxuXHRcdHBhZGRpbmc6IDAgMCAxMDBweCAwO1xyXG5cdH1cclxuXHJcblx0d2lkdGg6IDUwJTtcclxuXHRwYWRkaW5nLXJpZ2h0OiA1MHB4O1xyXG5cclxuXHRzdmcge1xyXG5cdFx0ZGlzcGxheTogYmxvY2s7XHJcblx0XHR3aWR0aDogMTZweDtcclxuXHRcdGhlaWdodDogMzBweDtcclxuXHRcdG1hcmdpbi1ib3R0b206IDEwcHg7XHJcblx0XHRjb2xvcjogJGdyZXktNDAwO1xyXG5cdH1cclxuXHJcblx0LmlzLWludHJvIHN0cm9uZyB7XHJcblx0XHRmb250LXdlaWdodDogMzAwO1xyXG5cdH1cclxuXHJcblx0YS5pcy1pbnRybyB7XHJcblx0XHRkaXNwbGF5OiBibG9jaztcclxuXHRcdG1hcmdpbi10b3A6IDQwcHg7XHJcblx0XHRjb2xvcjogJGJsdWUtMTAwO1xyXG5cdFx0dGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XHJcblxyXG5cdFx0Jjpob3ZlciB7XHJcblx0XHRcdGNvbG9yOiAkYmx1ZS1sYWdvb24tMTAwO1xyXG5cdFx0fVxyXG5cdH1cclxufVxyXG5cclxuLmNvbnRhY3QtZm9ybV9fdGl0bGUge1xyXG5cdG1hcmdpbi1ib3R0b206IDUwcHg7XHJcbn1cclxuXHJcbi5jb250YWN0LWZvcm1fX2Zvcm0td3JhcCB7XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1wb3J0cmFpdC1kb3duJykge1xyXG5cdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRtYXgtd2lkdGg6IDUwMHB4O1xyXG5cdH1cclxuXHJcblx0d2lkdGg6IDUwJTtcclxufSIsIi5jb250ZW50LWRlZmF1bHQge1xyXG5cdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtcG9ydHJhaXQtZG93bicpIHtcclxuXHRcdG1hcmdpbjogMTMwcHggMCA1MHB4IDA7XHJcblx0fVxyXG5cclxuXHRtYXJnaW46IDE4MHB4IDAgODBweCAwO1xyXG5cclxuXHQud3JhcHBlciB7XHJcblx0XHRAaW5jbHVkZSBtZWRpYSgndGFibGV0LXBvcnRyYWl0LWRvd24nKSB7XHJcblx0XHRcdHBhZGRpbmc6IDA7XHJcblx0XHR9XHJcblx0fVxyXG59XHJcblxyXG4uY29udGVudC1kZWZhdWx0X19ib2R5IHtcclxuXHRAaW5jbHVkZSBtZWRpYSgndGFibGV0LXBvcnRyYWl0LWRvd24nKSB7XHJcblx0XHRwYWRkaW5nOiA1MHB4IDIwcHg7XHJcblx0XHRib3JkZXItcmFkaXVzOiAwO1xyXG5cdH1cclxuXHJcblx0bWF4LXdpZHRoOiAxMDMwcHg7XHJcblx0bWFyZ2luOiAwIGF1dG87XHJcblx0cGFkZGluZzogNzVweCAxMDBweDtcclxuXHRib3JkZXItcmFkaXVzOiA1cHggNXB4IDUwcHggNXB4O1xyXG5cdGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZS0xMDA7XHJcblxyXG5cdCY6YWZ0ZXIge1xyXG5cdFx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1wb3J0cmFpdC1kb3duJykge1xyXG5cdFx0XHRyaWdodDogYXV0bztcclxuXHRcdFx0bGVmdDogMDtcclxuXHRcdH1cclxuXHJcblx0XHR0b3A6IC04MHB4O1xyXG5cdFx0cmlnaHQ6IC02NXB4O1xyXG5cdFx0ei1pbmRleDogLTE7XHJcblx0fVxyXG5cclxuXHQmLmJhY2tncm91bmQtaXMtZ3JleSB7XHJcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGUtc21va2UtMTAwO1xyXG5cdH1cclxuXHJcblx0Ji5iYWNrZ3JvdW5kLWlzLWJsdWUge1xyXG5cdFx0YmFja2dyb3VuZC1jb2xvcjogJGJsdWUtcGF0dGVucy0xMDA7XHJcblx0fVx0XHJcbn1cclxuXHJcbi5jb250ZW50LWRlZmF1bHRfX3RpdGxlIHtcclxuXHRtYXJnaW4tYm90dG9tOiAzMHB4O1xyXG59IiwiLmNvbnRlbnQtaW50cm9kdWN0aW9uIHtcclxuXHRAaW5jbHVkZSBtZWRpYSgndGFibGV0LXBvcnRyYWl0LWRvd24nKSB7XHJcblx0XHRtYXJnaW46IDUwcHggMDtcclxuXHRcdHBhZGRpbmc6IDQwcHggMCA3MHB4IDA7XHJcblx0fVxyXG5cdEBpbmNsdWRlIG1lZGlhKCdwaG9uZScpIHtcclxuXHRcdHBhZGRpbmc6IDgycHggMCAxMTBweCAwO1xyXG5cdH1cclxuXHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdG1hcmdpbjogODBweCAwO1xyXG5cdHBhZGRpbmc6IDEwMHB4IDAgMTEwcHggMDtcclxuXHRiYWNrZ3JvdW5kOiAkYmx1ZS1wYXR0ZW5zLTEwMDtcclxuXHJcblx0LndyYXBwZXIge1xyXG5cdFx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1sYW5kc2NhcGUtZG93bicpIHtcclxuXHRcdFx0ZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlO1xyXG5cdFx0fVxyXG5cdFx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1wb3J0cmFpdC1kb3duJykge1xyXG5cdFx0XHRmbGV4LWRpcmVjdGlvbjogaW5pdGlhbDtcclxuXHRcdFx0bWFyZ2luLXRvcDogLTQwcHg7XHJcblx0XHR9XHJcblx0XHRAaW5jbHVkZSBtZWRpYSgncGhvbmUnKSB7XHJcblx0XHRcdG1hcmdpbi10b3A6IC04MnB4O1xyXG5cdFx0fVxyXG5cclxuXHRcdG1hcmdpbi10b3A6IC0xMDBweDtcclxuXHR9XHJcblxyXG5cdCY6YmVmb3JlLFxyXG5cdCY6YWZ0ZXIge1xyXG5cdFx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1wb3J0cmFpdC1kb3duJykge1xyXG5cdFx0XHRoZWlnaHQ6IDQwcHg7XHJcblx0XHR9XHJcblx0XHRAaW5jbHVkZSBtZWRpYSgncGhvbmUnKSB7XHJcblx0XHRcdGhlaWdodDogODJweDtcclxuXHRcdH1cclxuXHJcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHR0b3A6IDA7XHJcblx0XHRsZWZ0OiAwO1xyXG5cdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRoZWlnaHQ6IDEwMHB4O1xyXG5cdFx0YmFja2dyb3VuZDogJHdoaXRlLTEwMDtcclxuXHRcdGNvbnRlbnQ6ICcnO1xyXG5cdFx0ei1pbmRleDogMDtcclxuXHR9XHJcblxyXG5cdCY6YWZ0ZXIge1xyXG5cdFx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1wb3J0cmFpdC1kb3duJykge1xyXG5cdFx0XHRoZWlnaHQ6IDEyMHB4O1xyXG5cdFx0fVxyXG5cdFx0QGluY2x1ZGUgbWVkaWEoJ3Bob25lJykge1xyXG5cdFx0XHRoZWlnaHQ6IDE2MHB4O1xyXG5cdFx0fVxyXG5cclxuXHRcdGhlaWdodDogMTYwcHg7XHJcblx0XHR0b3A6IGF1dG87XHJcblx0XHRib3R0b206IDA7XHJcblx0fVxyXG59XHJcblxyXG4uY29udGVudC1pbnRyb2R1Y3Rpb25fX25vLXNlYXJjaCB7XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1sYW5kc2NhcGUtZG93bicpIHtcclxuXHRcdHBhZGRpbmctYm90dG9tOiAyMHB4O1xyXG5cdH1cclxuXHJcblx0cGFkZGluZy1ib3R0b206IDA7XHJcblxyXG5cdCY6YWZ0ZXIge1xyXG5cdFx0ZGlzcGxheTogbm9uZTtcclxuXHR9XHJcbn1cclxuXHJcbi5jb250ZW50LWludHJvZHVjdGlvbl9faW1hZ2Uge1xyXG5cdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtbGFuZHNjYXBlLWRvd24nKSB7XHJcblx0XHR3aWR0aDogMzcwcHg7XHJcblx0XHRwYWRkaW5nOiAyMHB4IDAgNTVweCA1MHB4O1xyXG5cdH1cclxuXHRAaW5jbHVkZSBtZWRpYSgndGFibGV0LXBvcnRyYWl0LWRvd24nKSB7XHJcblx0XHRkaXNwbGF5OiBub25lO1xyXG5cdH1cclxuXHJcblx0d2lkdGg6IDUwJTtcclxuXHRwYWRkaW5nOiAwIDcwcHggMTAwcHggMDtcclxufVxyXG5cclxuLmNvbnRlbnQtaW50cm9kdWN0aW9uX19pbWFnZS13cmFwIHtcclxuXHRAaW5jbHVkZSBtZWRpYSgndGFibGV0LWxhbmRzY2FwZS1kb3duJykge1xyXG5cdFx0ZmxleC1kaXJlY3Rpb246IGluaXRpYWw7XHJcblx0XHRoZWlnaHQ6IDQzNHB4O1xyXG5cdFx0d2lkdGg6IDQzNHB4O1xyXG5cdH1cclxuXHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcblx0aGVpZ2h0OiA2MDBweDtcclxuXHJcblx0JjphZnRlciB7XHJcblx0XHRAaW5jbHVkZSBtZWRpYSgndGFibGV0LWxhbmRzY2FwZS1kb3duJykge1xyXG5cdFx0XHRyaWdodDogYXV0bztcclxuXHRcdFx0Ym90dG9tOiAtNTVweDtcclxuXHRcdFx0bGVmdDogLTUwcHg7XHJcblx0XHRcdGhlaWdodDogNTIwcHg7XHJcblx0XHRcdHRyYW5zZm9ybTogc2NhbGUoLTEsIDEpO1xyXG5cdFx0fVxyXG5cclxuXHRcdHJpZ2h0OiAtNzBweDtcclxuXHRcdGJvdHRvbTogLTc1cHg7XHJcblx0fVxyXG59XHJcblxyXG4uY29udGVudC1pbnRyb2R1Y3Rpb25fX2JvZHkge1xyXG5cdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtbGFuZHNjYXBlLWRvd24nKSB7XHJcblx0XHR3aWR0aDogY2FsYygxMDAlIC0gMzcwcHgpO1xyXG5cdFx0cGFkZGluZzogMCA1MHB4IDAgMDtcclxuXHR9XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1wb3J0cmFpdC1kb3duJykge1xyXG5cdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRwYWRkaW5nOiAwO1xyXG5cdH1cclxuXHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdHdpZHRoOiA1MCU7XHJcblx0cGFkZGluZy1sZWZ0OiA1NXB4O1xyXG5cdHotaW5kZXg6IDI7XHJcbn1cclxuXHJcbi5jb250ZW50LWludHJvZHVjdGlvbl9fZWRpdG9yIHtcclxuXHRtYXJnaW46IDUwcHggMCAyMHB4IDA7XHJcbn1cclxuXHJcbi5jb250ZW50LWludHJvZHVjdGlvbl9fc2VhcmNoIHtcclxuXHRAaW5jbHVkZSBtZWRpYSgndGFibGV0LWxhbmRzY2FwZS1kb3duJykge1xyXG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdFx0aGVpZ2h0OiAzMTVweDtcclxuXHR9XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1wb3J0cmFpdC1kb3duJykge1xyXG5cdFx0bWFyZ2luOiA1MHB4IDAgLTEyMHB4IDA7XHJcblx0XHRoZWlnaHQ6IGF1dG87XHJcblx0fVxyXG5cdEBpbmNsdWRlIG1lZGlhKCdwaG9uZScpIHtcclxuXHRcdG1hcmdpbjogNTBweCAwIC0xNjBweCAwO1xyXG5cdH1cclxuXHJcblx0bWFyZ2luOiA1MHB4IDAgLTE2MHB4IDA7XHJcbn1cclxuXHJcblxyXG4vKipcclxuICogIFRvZ2dsZS5cclxuICovXHJcblxyXG4uY29udGVudC1pbnRyb2R1Y3Rpb25fX3RvZ2dsZSB7XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1sYW5kc2NhcGUtZG93bicpIHsgXHJcblx0XHR3aWR0aDogNDM1cHg7XHJcblx0XHRoZWlnaHQ6IDQzNXB4O1xyXG5cdFx0Ym9yZGVyLXJhZGl1czogNTBweCAwIDAgNTBweDtcclxuXHR9XHJcblxyXG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHR3aWR0aDogNjAwcHg7XHJcblx0aGVpZ2h0OiA2MDBweDtcclxuXHRib3JkZXItcmFkaXVzOiAwIDUwcHggNTBweCAwO1xyXG5cdGJhY2tncm91bmQtY29sb3I6ICRncmV5LTgwMDtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG59XHJcblxyXG4uY29udGVudC1pbnRyb2R1Y3Rpb25fX3RvZ2dsZS1pdGVtIHtcclxuXHRAaW5jbHVkZSBtZWRpYSgndGFibGV0LWxhbmRzY2FwZS1kb3duJykgeyBcclxuXHRcdGhlaWdodDogNTBweDtcclxuXHR9XHJcblxyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHR3aWR0aDogMTAwJTtcclxuXHRoZWlnaHQ6IDYwcHg7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogJGdyZXktODAwO1xyXG5cdHRyYW5zaXRpb246IGFsbCA1MDBtcyBlYXNlO1xyXG5cclxuXHQmLmlzLWFjdGl2ZSB7XHJcblx0XHRAaW5jbHVkZSBtZWRpYSgndGFibGV0LWxhbmRzY2FwZS1kb3duJykgeyBcclxuXHRcdFx0aGVpZ2h0OiAyODVweDtcclxuXHRcdH1cclxuXHJcblx0XHRoZWlnaHQ6IDQyMHB4O1xyXG5cclxuXHRcdGltZyB7XHJcblx0XHRcdGZpbHRlcjogYmx1cigwKTtcclxuXHRcdH1cclxuXHJcblx0XHQuY29udGVudC1pbnRyb2R1Y3Rpb25fX3RvZ2dsZS10aXRsZSB7XHJcblx0XHRcdGRpc3BsYXk6IGZsZXg7XHJcblx0XHRcdG9wYWNpdHk6IDE7XHJcblx0XHR9XHJcblxyXG5cdFx0LmNvbnRlbnQtaW50cm9kdWN0aW9uX190b2dnbGUtbGFiZWwge1xyXG5cdFx0XHRvcGFjaXR5OiAxO1xyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0aW1nIHtcclxuXHRcdHotaW5kZXg6IDEwO1xyXG5cdFx0ZmlsdGVyOiBibHVyKDE1cHgpO1xyXG5cdH1cclxufVxyXG5cclxuLmNvbnRlbnQtaW50cm9kdWN0aW9uX190b2dnbGUtYm9keSB7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdHdpZHRoOiAxMDAlO1xyXG5cdGhlaWdodDogMTAwJTtcclxuXHR6LWluZGV4OiAyMDtcclxuXHJcblx0YSB7XHJcblx0XHRAaW5jbHVkZSBtZWRpYSgndGFibGV0LWxhbmRzY2FwZS1kb3duJykgeyBcclxuXHRcdFx0anVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xyXG5cdFx0fVxyXG5cclxuXHRcdGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XHJcblx0XHRhbGlnbi1jb250ZW50OiBmbGV4LWVuZDtcclxuXHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0aGVpZ2h0OiAxMDAlO1xyXG5cdH1cclxufVxyXG5cclxuLmNvbnRlbnQtaW50cm9kdWN0aW9uX190b2dnbGUtbGFiZWwge1xyXG5cdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtbGFuZHNjYXBlLWRvd24nKSB7IFxyXG5cdFx0bGVmdDogMDtcclxuXHRcdHJpZ2h0OiBhdXRvO1xyXG5cdFx0bWFyZ2luLXJpZ2h0OiAwO1xyXG5cdFx0bWFyZ2luLWxlZnQ6IDQ1cHg7XHJcblx0fVxyXG5cclxuXHRtYXJnaW4tcmlnaHQ6IDQ1cHg7XHJcblx0Ym9yZGVyLXJhZGl1czogNHB4O1xyXG5cdG9wYWNpdHk6IDAuODtcclxuXHR0cmFuc2l0aW9uOiBhbGwgNTAwbXMgZWFzZTtcclxuXHJcblx0c3ZnIHtcclxuXHRcdG1hcmdpbi1yaWdodDogOHB4O1xyXG5cdH1cclxufVxyXG5cclxuLmNvbnRlbnQtaW50cm9kdWN0aW9uX190b2dnbGUtdGl0bGUge1xyXG5cdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtbGFuZHNjYXBlLWRvd24nKSB7IFxyXG5cdFx0bWFyZ2luLXJpZ2h0OiAwO1xyXG5cdFx0bWFyZ2luLWxlZnQ6IDQwcHg7XHJcblx0XHRtYXJnaW4tYm90dG9tOiA0MHB4O1xyXG5cdH1cclxuXHJcblx0QGluY2x1ZGUgZm9udCgyNXB4LCAyOXB4KTtcclxuXHRhbGlnbi1pdGVtczogZmxleC1lbmQ7XHJcblx0bWFyZ2luLXJpZ2h0OiA0NXB4O1xyXG5cdG1hcmdpbi1ib3R0b206IDgwcHg7XHJcblx0Y29sb3I6ICR3aGl0ZS0xMDA7XHJcblx0Zm9udC13ZWlnaHQ6IDcwMDtcclxuXHRvcGFjaXR5OiAwO1xyXG5cdHRyYW5zaXRpb246IGFsbCA1MDBtcyBlYXNlO1xyXG59XHJcbiIsIi5jb250ZW50LXN1YnNjcmliZSB7XHJcblx0LndyYXBwZXIge1xyXG5cdFx0QGluY2x1ZGUgbWVkaWEoJ3Bob25lJykge1xyXG5cdFx0XHRwYWRkaW5nLWJvdHRvbTogODVweDtcclxuXHRcdH1cclxuXHJcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0XHRwYWRkaW5nLXRvcDogNTBweDtcclxuXHRcdHBhZGRpbmctYm90dG9tOiA3MHB4O1xyXG5cdH1cclxufVxyXG5cclxuLmNvbnRlbnQtc3Vic2NyaWJlX19ib2R5IHtcclxuXHRAaW5jbHVkZSBtZWRpYSgndGFibGV0LXBvcnRyYWl0LWRvd24nKSB7XHJcblx0XHRwYWRkaW5nOiAzMHB4IDMwcHggNzBweCAzMHB4O1xyXG5cdH1cclxuXHRAaW5jbHVkZSBtZWRpYSgncGhvbmUnKSB7XHJcblx0XHRwYWRkaW5nOiAyMHB4IDEwcHggMzVweCAxMHB4O1xyXG5cdH1cclxuXHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdHdpZHRoOiAxMDAlO1xyXG5cdG1heC13aWR0aDogOTI1cHg7XHJcblx0cGFkZGluZzogNTBweCAxMDBweCA4MHB4IDEwMHB4O1xyXG5cdGJhY2tncm91bmQtY29sb3I6ICRibHVlLTEwMDtcclxuXHRib3JkZXItcmFkaXVzOiAycHg7XHJcblxyXG5cdCY6YWZ0ZXIge1xyXG5cdFx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1sYW5kc2NhcGUtZG93bicpIHtcclxuXHRcdFx0bGVmdDogNTBweDtcclxuXHRcdH1cclxuXHRcdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtcG9ydHJhaXQtZG93bicpIHtcclxuXHRcdFx0bGVmdDogLTEyM3B4O1xyXG5cdFx0fVxyXG5cdFx0QGluY2x1ZGUgbWVkaWEoJ3Bob25lJykge1xyXG5cdFx0XHRkaXNwbGF5OiBub25lO1xyXG5cdFx0fVxyXG5cclxuXHRcdHRvcDogLTUwcHg7XHJcblx0XHRsZWZ0OiAtNzBweDtcclxuXHRcdHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XHJcblx0XHR6LWluZGV4OiAtMjtcclxuXHR9XHJcbn1cclxuXHJcbi5jb250ZW50LXN1YnNjcmliZV9fdGl0bGUge1xyXG5cdG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbn1cclxuXHJcbi5jb250ZW50LXN1YnNjcmliZV9fZWRpdG9yICB7XHJcblx0QGluY2x1ZGUgZm9udCgxNXB4LCAzMHB4KTtcclxuXHRmb250LXdlaWdodDogMzAwO1xyXG5cdGNvbG9yOiAkd2hpdGUtMTAwO1xyXG59XHJcblxyXG4uY29udGVudC1zdWJzY3JpYmVfX2J1dHRvbiB7XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3Bob25lJykge1xyXG5cdFx0Ym90dG9tOiAtMzVweDtcclxuXHRcdGxlZnQ6IDEwcHg7XHJcblx0XHR3aWR0aDogY2FsYygxMDAlIC0gMjBweCk7XHJcblx0fVxyXG5cclxuXHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0cmlnaHQ6IDEwMHB4O1xyXG5cdGJvdHRvbTogLTIwcHg7XHJcbn1cclxuXHJcbi5jb250ZW50LXN1YnNjcmliZV9fYmFja2dyb3VuZCB7XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1sYW5kc2NhcGUtZG93bicpIHtcclxuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdG1heC13aWR0aDogNjEwcHg7XHJcblx0XHRoZWlnaHQ6IDEwMCU7XHJcblx0XHR0b3A6IDA7XHJcblx0XHRsZWZ0OiAwO1xyXG5cdFx0cmlnaHQ6IDA7XHJcblx0XHRtYXJnaW46IDAgYXV0bztcclxuXHR9XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1wb3J0cmFpdC1kb3duJykge1xyXG5cdFx0bWFyZ2luOiAwO1xyXG5cdFx0bGVmdDogNjBweDtcclxuXHR9XHJcblxyXG5cdCY6YmVmb3JlIHtcclxuXHRcdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtbGFuZHNjYXBlLWRvd24nKSB7XHJcblx0XHRcdGxlZnQ6IDE1MHB4O1xyXG5cdFx0fVxyXG5cdFx0QGluY2x1ZGUgbWVkaWEoJ3Bob25lJykge1xyXG5cdFx0XHRsZWZ0OiAtMTAwcHg7XHJcblx0XHRcdHdpZHRoOiBjYWxjKDEwMHZ3ICsgMTAwcHgpO1xyXG5cdFx0fVxyXG5cclxuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdGJvdHRvbTogMDtcclxuXHRcdGxlZnQ6IDI1MHB4O1xyXG5cdFx0d2lkdGg6IDEwMHZ3O1xyXG5cdFx0aGVpZ2h0OiAxMDAlO1xyXG5cdFx0YmFja2dyb3VuZDogJHdoaXRlLXNtb2tlLTEwMDtcclxuXHRcdGNvbnRlbnQ6ICcnO1xyXG5cdFx0ei1pbmRleDogLTE7XHJcblx0fVxyXG59IiwiLmNvbnRlbnQtc3Vic2NyaXB0aW9uIHtcclxuXHRAaW5jbHVkZSBtZWRpYSgndGFibGV0LXBvcnRyYWl0LWRvd24nKSB7XHJcblx0XHRtYXJnaW46IDUwcHggMDtcclxuXHR9XHJcblxyXG5cdHBhZGRpbmc6IDgwcHggMCAyODBweCAwO1xyXG5cclxuXHQud3JhcHBlciB7XHJcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0fVxyXG59XHJcblxyXG4uY29udGVudC1zdWJzY3JpcHRpb25fX2JhY2tncm91bmQtdGl0bGUge1xyXG5cdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtbGFuZHNjYXBlLWRvd24nKSB7XHJcblx0XHRAaW5jbHVkZSBmb250KDgwcHgsIDgwcHgpO1xyXG5cdFx0bWFyZ2luLWJvdHRvbTogNTBweDtcclxuXHRcdGxldHRlci1zcGFjaW5nOiAyLjIycHg7XHJcblx0XHRjb2xvcjogJGJsdWUtbGFnb29uLTU7XHJcblx0fVxyXG59XHJcblxyXG4uY29udGVudC1zdWJzY3JpcHRpb25fX2JvZHkge1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbn1cclxuXHJcbi5jb250ZW50LXN1YnNjcmlwdGlvbl9fdGl0bGUge1xyXG5cdG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbn1cclxuXHJcbi5jb250ZW50LXN1YnNjcmlwdGlvbl9fdGV4dCB7XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1wb3J0cmFpdC1kb3duJykge1xyXG5cdFx0bWF4LXdpZHRoOiA1OTBweDtcclxuXHRcdHBhZGRpbmc6IDUwcHggMCAwIDA7XHJcblx0fVxyXG5cdEBpbmNsdWRlIG1lZGlhKCdwaG9uZScpIHtcclxuXHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0bWFyZ2luLXRvcDogNzBweDtcclxuXHRcdHBhZGRpbmc6IDIwcHg7XHJcblx0fVxyXG5cclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0d2lkdGg6IDEwMCU7XHJcblx0bWF4LXdpZHRoOiA3MzVweDtcclxuXHRwYWRkaW5nOiA1MHB4IDAgNTBweCAwO1xyXG5cdGJvcmRlci1yYWRpdXM6IDVweDtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGUtMTAwO1xyXG5cclxuXHQqIHtcclxuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRcdHotaW5kZXg6IDY7XHJcblx0fVxyXG59XHJcblxyXG4uY29udGVudC1zdWJzY3JpcHRpb25fX2VkaXRvciB7XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1wb3J0cmFpdC1kb3duJykge1xyXG5cdFx0cGFkZGluZzogMCAyMHB4IDUwcHggMDtcclxuXHR9XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3Bob25lJykge1xyXG5cdFx0cGFkZGluZzogMDtcclxuXHR9XHJcblxyXG5cdHBhZGRpbmc6IDAgMjBweCAwIDA7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogJHdoaXRlLTEwMDtcclxuXHR6LWluZGV4OiA1O1xyXG5cclxuXHRwIHtcclxuXHRcdHotaW5kZXg6IDI7XHJcblx0fVxyXG59XHJcblxyXG4uY29udGVudC1zdWJzY3JpcHRpb25fX2NvbHVtbi1pbWFnZSB7XHJcblx0aGVpZ2h0OiA1MDBweDtcclxufVxyXG5cclxuLmNvbnRlbnQtc3Vic2NyaXB0aW9uX19pbWFnZSB7XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1sYW5kc2NhcGUtZG93bicpIHtcclxuXHRcdGxlZnQ6IDQ2MHB4O1xyXG5cdFx0d2lkdGg6IGNhbGMoMTAwdncgLSA0NjBweCk7XHJcblx0fVxyXG5cdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtcG9ydHJhaXQtZG93bicpIHtcclxuXHRcdGxlZnQ6IDIzMHB4O1xyXG5cdFx0d2lkdGg6IGNhbGMoMTAwdncgLSAyMzBweCk7XHJcblx0fVxyXG5cdEBpbmNsdWRlIG1lZGlhKCdwaG9uZScpIHtcclxuXHRcdHRvcDogMTEwcHg7XHJcblx0XHRsZWZ0OiAwO1xyXG5cdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRoZWlnaHQ6IDMwMHB4O1xyXG5cdH1cclxuXHJcblx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdGxlZnQ6IDY4MHB4O1xyXG5cdGJvdHRvbTogMDtcclxuXHR3aWR0aDogY2FsYygxMDB2dyAtIDY4MHB4KTtcclxuXHRoZWlnaHQ6IDUwMHB4O1xyXG5cdHotaW5kZXg6IC0xO1xyXG5cclxuXHRpbWcge1xyXG5cdFx0QGluY2x1ZGUgbWVkaWEoJ3Bob25lJykge1xyXG5cdFx0XHRib3JkZXItcmFkaXVzOiAwO1xyXG5cdFx0fVxyXG5cclxuXHRcdGJvcmRlci1yYWRpdXM6IDVweDtcclxuXHR9XHJcbn1cclxuXHJcblxyXG4vKipcclxuICogIFByb2R1Y3QuXHJcbiAqL1xyXG5cclxuLmNvbnRlbnQtc3Vic2NyaXB0aW9uX19wcm9kdWN0IHtcclxuXHRAaW5jbHVkZSBtZWRpYSgndGFibGV0LWxhbmRzY2FwZS1kb3duJykge1xyXG5cdFx0bGVmdDogNDQwcHg7XHJcblx0fVxyXG5cdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtcG9ydHJhaXQtZG93bicpIHtcclxuXHRcdGxlZnQ6IGF1dG87XHJcblx0XHRyaWdodDogNjVweDtcclxuXHRcdGJvdHRvbTogLTI4NXB4O1xyXG5cdH1cclxuXHRAaW5jbHVkZSBtZWRpYSgncGhvbmUnKSB7XHJcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0XHRib3R0b206IGF1dG87XHJcblx0XHRtYXJnaW4tdG9wOiA1MHB4O1xyXG5cdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRoZWlnaHQ6IGF1dG87XHJcblx0XHRyaWdodDogYXV0bztcclxuXHR9XHJcblxyXG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRsZWZ0OiA2NjBweDtcclxuXHRib3R0b206IC0xOTVweDtcclxuXHR3aWR0aDogNDQwcHg7XHJcblx0aGVpZ2h0OiAzMjBweDtcclxuXHRwYWRkaW5nOiAzMHB4IDIwcHg7XHJcblx0YmFja2dyb3VuZDogJGJsdWUtcGF0dGVucy0xMDA7XHJcblxyXG5cdCY6YWZ0ZXIge1xyXG5cdFx0QGluY2x1ZGUgbWVkaWEoJ3Bob25lJykge1xyXG5cdFx0XHR0b3A6IC01MHB4O1xyXG5cdFx0XHRyaWdodDogLTIwcHg7XHJcblx0XHR9XHJcblxyXG5cdFx0dG9wOiAtODBweDtcclxuXHRcdHJpZ2h0OiAtNzBweDtcclxuXHR9XHJcbn1cclxuXHJcbi5jb250ZW50LXN1YnNjcmlwdGlvbl9fcHJvZHVjdC10aXRsZSB7XHJcblx0bWFyZ2luLWJvdHRvbTogMjBweDtcclxufVxyXG5cclxuLmNvbnRlbnQtc3Vic2NyaXB0aW9uX19wcm9kdWN0LXRleHQge1xyXG5cdG1hcmdpbi1ib3R0b206IDEwcHg7XHJcblx0Zm9udC13ZWlnaHQ6IDMwMDtcclxufVxyXG5cclxuLmNvbnRlbnQtc3Vic2NyaXB0aW9uX19wcm9kdWN0LWZvb3RlciB7XHJcblx0bWFyZ2luLXRvcDogMjBweDtcclxuXHRwYWRkaW5nLXRvcDogMjBweDtcclxuXHRib3JkZXItdG9wOiAzcHggc29saWQgJHdoaXRlLTEwMDtcclxufVxyXG5cclxuLmNvbnRlbnQtc3Vic2NyaXB0aW9uX19wcm9kdWN0LXByaWNlIHtcclxuXHRAaW5jbHVkZSBtZWRpYSgncGhvbmUnKSB7XHJcblx0XHRtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG5cdH1cclxuXHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHR3aWR0aDogMTY1cHg7XHJcblxyXG5cdHN2ZyB7XHJcblx0XHR3aWR0aDogMjZweDtcclxuXHRcdGhlaWdodDogMzBweDtcclxuXHRcdGNvbG9yOiAkYmx1ZS0xMDA7XHJcblx0fVxyXG5cclxuXHQuaXMtcHJpY2Uge1xyXG5cdFx0QGluY2x1ZGUgZm9udCgyMHB4LCAzMHB4KTtcclxuXHRcdG1hcmdpbi1sZWZ0OiA1cHg7XHJcblx0XHRjb2xvcjogJGJsdWUtMTAwO1xyXG5cdFx0Zm9udC13ZWlnaHQ6IGJvbGQ7XHJcblx0fVxyXG5cclxuXHQuaXMtbGFiZWwge1xyXG5cdFx0QGluY2x1ZGUgZm9udCgxNXB4LCAzMHB4KTtcclxuXHRcdG1hcmdpbi1sZWZ0OiA1cHg7XHJcblx0XHRjb2xvcjogJGdyZXktNDAwO1xyXG5cdFx0Zm9udC13ZWlnaHQ6IDUwMDtcclxuXHR9XHJcbn1cclxuXHJcblxyXG4vKipcclxuICogTGluZXMuXHJcbiAqL1xyXG5cclxuLmNvbnRlbnQtc3Vic2NyaXB0aW9uX19saW5lcyB7XHJcblx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdHRvcDogLTE4MHB4O1xyXG5cdGxlZnQ6IDgwcHg7XHJcblx0cmlnaHQ6IDA7XHJcblx0aGVpZ2h0OiA2MDBweDtcclxuXHR3aWR0aDogMzQwcHg7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHR6LWluZGV4OiAxO1xyXG5cdG9wYWNpdHk6IDAuNTtcclxuXHJcblx0PiBzcGFuIHtcclxuXHRcdGRpc3BsYXk6IGJsb2NrO1xyXG5cdFx0d2lkdGg6IDNweDtcclxuXHRcdGhlaWdodDogMTAwJTtcclxuXHRcdGJhY2tncm91bmQtY29sb3I6ICRibHVlLXBhdHRlbnMtMTAwO1xyXG5cclxuXHRcdCY6bnRoLWNoaWxkKDEpIHtcclxuXHRcdFx0QGluY2x1ZGUgbWVkaWEoJ3Bob25lJykge1xyXG5cdFx0XHRcdGRpc3BsYXk6IG5vbmU7XHJcblx0XHRcdH1cclxuXHJcblx0XHRcdG1hcmdpbi1yaWdodDogMjI1cHg7XHJcblx0XHR9XHJcblxyXG5cdFx0JjpudGgtY2hpbGQoMikge1xyXG5cdFx0XHRAaW5jbHVkZSBtZWRpYSgndGFibGV0LXBvcnRyYWl0LWRvd24nKSB7XHJcblx0XHRcdFx0ZGlzcGxheTogbm9uZTtcclxuXHRcdFx0fVxyXG5cclxuXHRcdFx0aGVpZ2h0OiBjYWxjKDEwMCUgLSA4MHB4KTtcclxuXHRcdFx0bWFyZ2luLXRvcDogNDBweDtcclxuXHRcdFx0bWFyZ2luLXJpZ2h0OiAxMDBweDtcclxuXHRcdH1cclxuXHJcblx0XHQmOm50aC1jaGlsZCgzKSB7XHJcblx0XHRcdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtbGFuZHNjYXBlLWRvd24nKSB7XHJcblx0XHRcdFx0ZGlzcGxheTogbm9uZTtcclxuXHRcdFx0fVxyXG5cclxuXHRcdFx0bWFyZ2luLXRvcDogNDVweDtcclxuXHRcdFx0aGVpZ2h0OiBjYWxjKDEwMCUgLSA5MHB4KTtcclxuXHRcdH1cclxuXHR9XHJcbn0iLCIuaGVhZGVyLWltYWdlIHtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcbn1cclxuXHJcblxyXG4vKipcclxuICogSW1hZ2UuXHJcbiAqL1xyXG5cclxuLmhlYWRlci1pbWFnZV9faW1hZ2Uge1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHR0b3A6IDA7XHJcblx0bGVmdDogMDtcclxuXHRoZWlnaHQ6IDY1NXB4O1xyXG5cdHotaW5kZXg6IDE7XHJcbn1cclxuXHJcbi5oZWFkZXItaW1hZ2VfX2JvZHktd3JhcHBlciB7XHJcblx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdHRvcDogMDtcclxuXHRyaWdodDogMDtcclxuXHRsZWZ0OiAwO1xyXG59XHJcblxyXG4uaGVhZGVyLWltYWdlX19pbWFnZS1ib2R5IHtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0dG9wOiAwO1xyXG5cdGxlZnQ6IDA7XHJcblx0bWF4LXdpZHRoOiA3MjBweDtcclxuXHRwYWRkaW5nOiA0NXB4IDgwcHggNDVweCAwO1xyXG5cdHotaW5kZXg6IDI7XHJcblxyXG5cdCY6YmVmb3JlIHtcclxuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdHRvcDogMDtcclxuXHRcdHJpZ2h0OiAwO1xyXG5cdFx0d2lkdGg6IDEwMHZ3O1xyXG5cdFx0aGVpZ2h0OiAxMDAlO1xyXG5cdFx0YmFja2dyb3VuZC1jb2xvcjogJGJsdWUtcGF0dGVucy0xMDA7XHJcblx0XHRib3JkZXItcmFkaXVzOiAwIDAgNTBweCAwO1xyXG5cdFx0Y29udGVudDogJyc7XHJcblx0XHR6LWluZGV4OiAtMTtcclxuXHR9XHJcblxyXG5cdCY6YWZ0ZXIge1xyXG5cdFx0cmlnaHQ6IC02NXB4O1xyXG5cdFx0Ym90dG9tOiAtNjVweDtcclxuXHR9XHJcbn1cclxuXHJcbi5oZWFkZXItaW1hZ2VfX2ltYWdlLXRpdGxlIHtcclxuXHJcbn1cclxuXHJcbi5oZWFkZXItaW1hZ2VfX2ltYWdlLWVkaXRvciB7XHJcblx0bWFyZ2luLXRvcDogNDVweDtcclxufVxyXG5cclxuLmhlYWRlci1pbWFnZV9faW1hZ2UtZm9vdGVyIHtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdG1hcmdpbi10b3A6IDMwcHg7XHJcblx0cGFkZGluZy10b3A6IDIwcHg7XHJcblx0Ym9yZGVyLXRvcDogM3B4IHNvbGlkICR3aGl0ZS0xMDA7XHJcbn1cclxuXHJcbi5oZWFkZXItaW1hZ2VfX2ltYWdlLWxpbmsge1xyXG5cdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtcG9ydHJhaXQtZG93bicpIHtcclxuXHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0bWFyZ2luLWJvdHRvbTogMTBweDtcclxuXHR9XHJcblxyXG5cdHdpZHRoOiAyMTBweDtcclxufVxyXG5cclxuLmhlYWRlci1pbWFnZV9faW1hZ2UtY2FwdGlvbiB7XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1wb3J0cmFpdC1kb3duJykge1xyXG5cdFx0d2lkdGg6IDEwMCU7XHJcblx0fVxyXG5cclxuXHR3aWR0aDogY2FsYygxMDAlIC0gMjEwcHg7KVxyXG59XHJcblxyXG5cclxuLyoqXHJcbiAqIFRleHQuXHJcbiAqL1xyXG5cclxuLmhlYWRlci1pbWFnZV9fdGV4dC13cmFwcGVyIHtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0bWFyZ2luLXRvcDogLTUwcHg7XHJcblx0ei1pbmRleDogNDtcclxufVxyXG5cclxuLmhlYWRlci1pbWFnZV9fdGV4dCB7XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1wb3J0cmFpdC1kb3duJykge1xyXG5cdFx0cGFkZGluZzogNTBweCAwMCAxMDBweCAwO1xyXG5cdH1cclxuXHJcblx0cGFkZGluZzogNTBweCA1MHB4IDEwMHB4IDUwcHg7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogJHdoaXRlLTEwMDtcclxuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblx0Ym9yZGVyLXJhZGl1czogNTBweCA1MHB4IDAgMDtcclxufVxyXG5cclxuLmhlYWRlci1pbWFnZV9fZWRpdG9yIHtcclxuXHRtYXgtd2lkdGg6IDgyMHB4O1xyXG5cdG1hcmdpbjogMjBweCBhdXRvIDAgYXV0bztcclxufVxyXG5cclxuLyoqXHJcbiAqIFRoZW1lLlxyXG4gKi9cclxuXHJcbi5oZWFkZXItaW1hZ2UuaXMtdGhlbWUge1xyXG5cdC5oZWFkZXItaW1hZ2VfX2ltYWdlIHtcclxuXHRcdEBpbmNsdWRlIG1lZGlhKCdwaG9uZScpIHsgXHJcblx0XHRcdGhlaWdodDogNDU1cHg7XHJcblx0XHR9XHJcblx0fVxyXG59XHJcbiIsIi5oZWFkZXItdGV4dCB7XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1wb3J0cmFpdC1kb3duJykge1xyXG5cdFx0bWFyZ2luLWJvdHRvbTogMTAwcHg7XHJcblx0XHRwYWRkaW5nOiAxMTBweCAwIDE0MHB4IDA7XHJcblx0fVxyXG5cclxuXHRwYWRkaW5nOiAxNjBweCAwIDE0MHB4IDA7XHJcblxyXG5cdC53cmFwcGVyIHtcclxuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblxyXG5cdFx0JjpiZWZvcmUge1xyXG5cdFx0XHRAaW5jbHVkZSBtZWRpYSgndGFibGV0LXBvcnRyYWl0LWRvd24nKSB7XHJcblx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0XHRcdGxlZnQ6IC0yMHB4O1xyXG5cdFx0XHRcdGJvdHRvbTogNzVweDtcclxuXHRcdFx0XHR3aWR0aDogMTAxdnc7XHJcblx0XHRcdFx0aGVpZ2h0OiBjYWxjKDEwMCUgLSA3NXB4KTtcclxuXHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkYmx1ZS1wYXR0ZW5zLTEwMDtcclxuXHRcdFx0XHRjb250ZW50OiAnJztcclxuXHRcdFx0XHR6LWluZGV4OiAtMTtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cclxuXHRcdCY6YWZ0ZXIge1xyXG5cdFx0XHRAaW5jbHVkZSBtZWRpYSgndGFibGV0LXBvcnRyYWl0LWRvd24nKSB7XHJcblx0XHRcdFx0cmlnaHQ6IGF1dG87XHJcblx0XHRcdFx0bGVmdDogMDtcclxuXHRcdFx0XHRib3R0b206IC05MHB4O1xyXG5cdFx0XHR9XHJcblxyXG5cdFx0XHRib3R0b206IC02MHB4O1xyXG5cdFx0XHRyaWdodDogNTBweDtcclxuXHRcdH1cclxuXHR9XHJcbn1cclxuXHJcblxyXG4vKipcclxuICogTGVmdC5cclxuICovXHJcblxyXG4uaGVhZGVyLXRleHRfX2xlZnQge1xyXG5cdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtbGFuZHNjYXBlLWRvd24nKSB7XHJcblx0XHR3aWR0aDogNjAlO1xyXG5cdFx0cGFkZGluZy1yaWdodDogNDBweDtcclxuXHR9XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1wb3J0cmFpdC1kb3duJykge1xyXG5cdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRwYWRkaW5nOiAxMDBweCAwIDIwcHggMDtcclxuXHR9XHJcblxyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHR3aWR0aDogNTclO1xyXG5cdHBhZGRpbmc6IDEyMHB4IDgwcHggNDBweCAwO1xyXG5cclxuXHQmOmJlZm9yZSB7XHJcblx0XHRAaW5jbHVkZSBtZWRpYSgndGFibGV0LXBvcnRyYWl0LWRvd24nKSB7XHJcblx0XHRcdGxlZnQ6IC0yMHB4O1xyXG5cdFx0XHRyaWdodDogYXV0bztcclxuXHRcdFx0Ym9yZGVyLXJhZGl1czogMDtcclxuXHRcdH1cclxuXHJcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHR0b3A6IDA7XHJcblx0XHRyaWdodDogLTEyNXB4O1xyXG5cdFx0d2lkdGg6IDEwMHZ3O1xyXG5cdFx0aGVpZ2h0OiAxMDAlO1xyXG5cdFx0YmFja2dyb3VuZC1jb2xvcjogJGJsdWUtcGF0dGVucy0xMDA7XHJcblx0XHRib3JkZXItcmFkaXVzOiAwIDUwcHggNTBweCAwO1xyXG5cdFx0Y29udGVudDogJyc7XHJcblx0XHR6LWluZGV4OiAtMTtcclxuXHR9XHJcbn1cclxuXHJcbi5oZWFkZXItdGV4dF9fdGl0bGUtd3JhcCB7XHJcblx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdHRvcDogMDtcclxuXHRtYXgtd2lkdGg6IDY0NXB4O1xyXG5cdG1hcmdpbi1ib3R0b206IDUwcHg7XHJcblx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xyXG59XHJcblxyXG4uaGVhZGVyLXRleHRfX3RpdGxlIHtcclxuXHRcclxufVxyXG5cclxuLmhlYWRlci10ZXh0X19lZGl0b3Ige1xyXG5cclxufVxyXG5cclxuLmhlYWRlci10ZXh0X19mb290ZXIge1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0bWFyZ2luLXRvcDogMjBweDtcclxuXHRwYWRkaW5nLXRvcDogMjBweDtcclxuXHRib3JkZXItdG9wOiAzcHggc29saWQgJHdoaXRlLTEwMDtcclxufVxyXG5cclxuLmhlYWRlci10ZXh0X19saW5rIHtcclxuXHRAaW5jbHVkZSBtZWRpYSgndGFibGV0LXBvcnRyYWl0LWRvd24nKSB7XHJcblx0XHR3aWR0aDogMTAwJTtcclxuXHRcdG1hcmdpbi1ib3R0b206IDEwcHg7XHJcblx0fVxyXG5cclxuXHR3aWR0aDogMjEwcHg7XHJcbn1cclxuXHJcbi5oZWFkZXItdGV4dF9fbGluay1jYXB0aW9uIHtcclxuXHRAaW5jbHVkZSBtZWRpYSgndGFibGV0LXBvcnRyYWl0LWRvd24nKSB7XHJcblx0XHR3aWR0aDogMTAwJTtcclxuXHR9XHJcblxyXG5cdHdpZHRoOiBjYWxjKDEwMCUgLSAyMTBweDspXHJcbn1cclxuXHJcblxyXG4vKipcclxuICogUmlnaHQuXHJcbiAqL1xyXG5cclxuLmhlYWRlci10ZXh0X19yaWdodCB7XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1sYW5kc2NhcGUtZG93bicpIHtcclxuXHRcdHdpZHRoOiA0MCU7XHJcblx0fVxyXG5cdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtcG9ydHJhaXQtZG93bicpIHtcclxuXHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0cGFkZGluZzogMjBweDtcclxuXHR9XHJcblxyXG5cdHdpZHRoOiA0MyU7XHJcblx0aGVpZ2h0OiBmaXQtY29udGVudDtcclxuXHRwYWRkaW5nOiA1MHB4IDIwcHg7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogJHdoaXRlLTEwMDtcclxufVxyXG5cclxuLmhlYWRlci10ZXh0X19yaWdodC10aXRsZSB7XHJcblx0bWFyZ2luLWJvdHRvbTogMTBweDtcclxufVxyXG5cclxuLmhlYWRlci10ZXh0X19yaWdodC1lZGl0b3Ige1xyXG5cdG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbn1cclxuIiwiLnBvc3Qtc2xpZGVyIHtcclxuXHRAaW5jbHVkZSBtZWRpYSgndGFibGV0LXBvcnRyYWl0LWRvd24nKSB7XHJcblx0XHRwYWRkaW5nOiA1MHB4IDAgMTAwcHggMDtcclxuXHR9XHJcblxyXG5cdHBhZGRpbmc6IDgwcHggMCAxMzBweCAwO1xyXG5cclxuXHQuaGVhZGluZy1iYWNrZ3JvdW5kIHtcclxuXHRcdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtbGFuZHNjYXBlLWRvd24nKSB7XHJcblx0XHRcdEBpbmNsdWRlIGZvbnQoODBweCwgODBweCk7XHJcblx0XHRcdGxldHRlci1zcGFjaW5nOiAyLjIycHg7XHJcblx0XHRcdGNvbG9yOiAkYmx1ZS1sYWdvb24tNTtcclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdC5wb3N0LWxpc3Qge1xyXG5cdFx0Lm93bC1uYXYge1xyXG5cdFx0XHR0b3A6IC03MHB4O1xyXG5cdFx0fVxyXG5cdH1cclxufVxyXG5cclxuLnBvc3Qtc2xpZGVyX19oZWFkIHtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0bWFyZ2luLWJvdHRvbTogMTAwcHg7XHJcbn1cclxuXHJcbi5wb3N0LXNsaWRlcl9fZWRpdG9yIHtcclxuXHRtYXJnaW4tdG9wOiAyMHB4O1xyXG5cdG1heC13aWR0aDogNzE1cHg7XHJcblx0Zm9udC13ZWlnaHQ6IDMwMDtcclxufVxyXG5cclxuLnBvc3Qtc2xpZGVyX19iYWNrZ3JvdW5kLXRpdGxlIHtcclxuXHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0dG9wOiAwO1xyXG5cdHJpZ2h0OiAwO1xyXG59XHJcbiIsIi50ZWFtIHtcclxuXHRAaW5jbHVkZSBtZWRpYSgndGFibGV0LXBvcnRyYWl0LWRvd24nKSB7XHJcblx0XHRwYWRkaW5nOiA1MHB4IDA7XHJcblx0fVxyXG5cclxuXHRwYWRkaW5nOiA4MHB4IDA7XHJcblxyXG5cdC53cmFwcGVyIHtcclxuXHJcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblxyXG5cdFx0JjpiZWZvcmUsXHJcblx0XHQmOmFmdGVyIHtcclxuXHRcdFx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1sYW5kc2NhcGUtZG93bicpIHtcclxuXHRcdFx0XHR3aWR0aDogY2FsYygxMDAlIC0gMTAwcHgpO1xyXG5cdFx0XHR9XHJcblx0XHRcdEBpbmNsdWRlIG1lZGlhKCdwaG9uZScpIHtcclxuXHRcdFx0XHR3aWR0aDogMTAwJTtcclxuXHRcdFx0XHRib3JkZXItcmFkaXVzOiAwO1xyXG5cdFx0XHR9XHJcblxyXG5cdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHRcdHRvcDogMjVweDtcclxuXHRcdFx0bGVmdDogMDtcclxuXHRcdFx0d2lkdGg6IGNhbGMoMTAwJSAtIDMxMHB4KTtcclxuXHRcdFx0aGVpZ2h0OiBjYWxjKDEwMCUgLSAyNXB4KTtcclxuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJGJsdWUtcGF0dGVucy0xMDA7XHJcblx0XHRcdGJvcmRlci1yYWRpdXM6IDAgNTBweCA1MHB4IDA7XHJcblx0XHRcdGNvbnRlbnQ6ICcnO1xyXG5cdFx0XHR6LWluZGV4OiAtMTtcclxuXHRcdH1cclxuXHJcblx0XHQmOmFmdGVyIHtcclxuXHRcdFx0cmlnaHQ6IDEwMCU7XHJcblx0XHRcdGxlZnQ6IGF1dG87XHJcblx0XHRcdGJvcmRlci1yYWRpdXM6IDA7XHJcblx0XHR9XHJcblx0fVxyXG59XHJcblxyXG4udGVhbV9fdGl0bGUge1xyXG5cdG1hcmdpbi1ib3R0b206IDMwcHg7XHJcbn1cclxuXHJcbi50ZWFtX19lZGl0b3Ige1xyXG5cdG1heC13aWR0aDogNTA1cHg7XHJcblx0bWFyZ2luLWJvdHRvbTogMTAwcHg7XHJcbn1cclxuXHJcbi50ZWFtX19kZXBhcnRtZW50IHtcclxuXHRAaW5jbHVkZSBtZWRpYSgndGFibGV0LXBvcnRyYWl0LWRvd24nKSB7XHJcblx0XHRwYWRkaW5nLWJvdHRvbTogNTBweDtcclxuXHR9XHJcblxyXG5cdHBhZGRpbmctYm90dG9tOiAxMDBweDtcclxufVxyXG5cclxuLnRlYW1fX2RlcGFydG1lbnQtdGl0bGUge1xyXG5cdG1hcmdpbi1ib3R0b206IDMwcHg7XHJcbn1cclxuXHJcbi50ZWFtX19tZW1iZXItLWJsb2NrIHtcclxuXHR3aWR0aDogMTAwJTtcclxufVxyXG5cclxuLnRlYW1fX21lbWJlcnMtLXRlYXNlciB7XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3Bob25lJykge1xyXG5cdFx0bWFyZ2luOiAtMTBweCAwO1xyXG5cdH1cclxuXHJcblx0bWFyZ2luOiAtMTBweDtcclxufVxyXG5cclxuLnRlYW1fX21lbWJlci0tdGVhc2VyIHtcclxuXHRAaW5jbHVkZSBtZWRpYSgndGFibGV0LXBvcnRyYWl0LWRvd24nKSB7XHJcblx0XHR3aWR0aDogY2FsYyg1MCUgLSAyMHB4KTtcclxuXHR9XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3Bob25lJykge1xyXG5cdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRtYXJnaW46IDEwcHggMDtcclxuXHR9XHJcblxyXG5cdHdpZHRoOiBjYWxjKDMzLjMzMzMlIC0gMjBweCk7XHJcblx0bWFyZ2luOiAxMHB4O1xyXG59IiwiLnRlYW0tYmxvY2sge1xyXG5cdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtbGFuZHNjYXBlLWRvd24nKSB7XHJcblx0XHR3aWR0aDogMTAwJTtcclxuXHR9XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1wb3J0cmFpdC1kb3duJykge1xyXG5cdFx0cGFkZGluZzogMDtcclxuXHRcdGJvcmRlcjogMnB4IHNvbGlkICRibHVlLXBhdHRlbnMtMTAwO1xyXG5cdFx0Ym9yZGVyLXJhZGl1czogNXB4O1xyXG5cdH1cclxuXHRAaW5jbHVkZSBtZWRpYSgncGhvbmUnKSB7XHJcblx0XHRib3JkZXI6IDA7XHJcblx0fVxyXG5cclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0d2lkdGg6IGNhbGMoMTAwJSAtIDEwNXB4KTtcclxuXHRtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG5cdHBhZGRpbmctdG9wOiA1MHB4O1xyXG59XHJcblxyXG4udGVhbS1ibG9ja19fbmFtZSB7XHJcblx0bWFyZ2luLWJvdHRvbTogMTBweDtcclxufVxyXG5cclxuLnRlYW0tYmxvY2tfX2ltYWdlIHtcclxuXHRAaW5jbHVkZSBtZWRpYSgndGFibGV0LXBvcnRyYWl0LWRvd24nKSB7XHJcblx0XHRkaXNwbGF5OiBub25lO1xyXG5cdH1cclxuXHJcblx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdHRvcDogMDtcclxuXHRyaWdodDogMDtcclxuXHR3aWR0aDogNDIwcHg7XHJcblx0aGVpZ2h0OiAzMDBweDtcclxuXHJcblx0aW1nIHtcclxuXHRcdGJvcmRlci1yYWRpdXM6IDVweDtcclxuXHR9XHJcbn1cclxuXHJcbi50ZWFtLWJsb2NrX190ZXh0IHtcclxuXHRAaW5jbHVkZSBtZWRpYSgndGFibGV0LXBvcnRyYWl0LWRvd24nKSB7XHJcblx0XHR3aWR0aDogMTAwJTtcclxuXHRcdHBhZGRpbmc6IDMwcHg7XHJcblx0fVxyXG5cdEBpbmNsdWRlIG1lZGlhKCdwaG9uZScpIHtcclxuXHRcdGJvcmRlci1yYWRpdXM6IDVweDtcclxuXHR9XHJcblx0QGluY2x1ZGUgbWVkaWEoJ2Rlc2t0b3AnKSB7XHJcblx0XHRtaW4taGVpZ2h0OiAyODBweDtcclxuXHR9XHJcblxyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHR3aWR0aDogY2FsYygxMDAlIC0gNDIwcHgpO1xyXG5cdHBhZGRpbmc6IDMwcHggODVweCAzMHB4IDMwcHg7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogJHdoaXRlLTEwMDtcclxuXHRib3JkZXItcmFkaXVzOiA1cHggMCAwIDVweDtcclxuXHJcblx0JjpiZWZvcmUge1xyXG5cdFx0QGluY2x1ZGUgbWVkaWEoJ3Bob25lJykge1xyXG5cdFx0XHRkaXNwbGF5OiBub25lO1xyXG5cdFx0fVxyXG5cclxuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdHJpZ2h0OiAtODVweDtcclxuXHRcdGJvdHRvbTogMDtcclxuXHRcdHdpZHRoOiA4NXB4O1xyXG5cdFx0aGVpZ2h0OiAxMDAlO1xyXG5cdFx0YmFja2dyb3VuZC1jb2xvcjogJHdoaXRlLTEwMDtcclxuXHRcdGJvcmRlci1yYWRpdXM6IDAgNXB4IDVweCAwO1xyXG5cdFx0Y29udGVudDogJyc7XHJcblx0XHR6LWluZGV4OiAtMTtcclxuXHR9XHJcbn1cclxuXHJcbi50ZWFtLWJsb2NrX190ZXh0LWZ1bGwge1xyXG5cdGEge1xyXG5cdFx0ZGlzcGxheTogYmxvY2s7XHJcblx0XHRtYXJnaW4tdG9wOiAyMHB4O1xyXG5cclxuXHRcdC5pcy1sZXNzIHtcclxuXHRcdFx0ZGlzcGxheTogbm9uZTtcclxuXHRcdH1cclxuXHJcblx0XHRzdmcge1xyXG5cdFx0XHR0cmFuc2l0aW9uOiBhbGwgNTAwbXMgZWFzZTtcclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdD4gc3BhbiB7XHJcblx0XHRkaXNwbGF5OiBub25lO1xyXG5cdH1cclxuXHJcblx0Ji5pcy1hY3RpdmUge1xyXG5cdFx0LmlzLW1vcmUge1xyXG5cdFx0XHRkaXNwbGF5OiBub25lO1xyXG5cdFx0fVxyXG5cclxuXHRcdC5pcy1sZXNzIHtcclxuXHRcdFx0ZGlzcGxheTogaW5saW5lLWZsZXg7XHJcblx0XHR9XHJcblxyXG5cdFx0c3ZnIHtcclxuXHRcdFx0IHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XHJcblx0XHR9XHJcblx0fVxyXG59XHJcbiIsIi50ZWFtLXRlYXNlciB7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdHdpZHRoOiAxMDAlO1xyXG5cdGJvcmRlcjogMnB4IHNvbGlkICRibHVlLXBhdHRlbnMtMTAwO1xyXG5cdGJvcmRlci1yYWRpdXM6IDVweDtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG59XHJcblxyXG4udGVhbS10ZWFzZXJfX2ltYWdlIHtcclxuXHR3aWR0aDogMTAwJTtcclxuXHRoZWlnaHQ6IDMwMHB4O1xyXG59XHJcblxyXG4udGVhbS10ZWFzZXJfX3RleHQge1xyXG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRib3R0b206IDA7XHJcblx0bGVmdDogMDtcclxuXHR3aWR0aDogMTAwJTtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGUtMTAwO1xyXG5cdHBhZGRpbmc6IDEwcHg7XHJcblx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG59XHJcblxyXG4udGVhbS10ZWFzZXJfX2Z1bmN0aW9uIHtcclxuXHRAaW5jbHVkZSBmb250KDE1cHgsIDMwcHgpO1xyXG59IiwiLnRleHQtaW1hZ2Uge1xyXG5cdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtcG9ydHJhaXQtZG93bicpIHtcclxuXHRcdHBhZGRpbmctYm90dG9tOiA4MHB4O1xyXG5cdH1cclxuXHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRwYWRkaW5nLWJvdHRvbTogMTMwcHg7XHJcbn1cclxuXHJcbi50ZXh0LWltYWdlX19pbWFnZSB7XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1sYW5kc2NhcGUtZG93bicpIHtcclxuXHRcdHdpZHRoOiAzODVweDtcclxuXHRcdGhlaWdodDogMzcwcHg7XHJcblx0fVxyXG5cdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtcG9ydHJhaXQtZG93bicpIHtcclxuXHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0bWF4LXdpZHRoOiAzODVweDtcclxuXHRcdG1hcmdpbjogMCBhdXRvO1xyXG5cdFx0bWFyZ2luLWJvdHRvbTogNzVweDtcclxuXHR9XHJcblxyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHR3aWR0aDogNTA1cHg7XHJcblx0aGVpZ2h0OiA0MDBweDtcclxuXHJcblx0aW1nIHtcclxuXHRcdGJvcmRlci1yYWRpdXM6IDUwcHg7XHJcblx0fVxyXG5cclxuXHQmOmFmdGVyIHtcclxuXHRcdEBpbmNsdWRlIG1lZGlhKCdwaG9uZScpIHtcclxuXHRcdFx0ZGlzcGxheTogbm9uZTtcclxuXHRcdH1cclxuXHJcblx0XHR3aWR0aDogMjY4cHg7XHJcblx0XHRoZWlnaHQ6IDE4OXB4O1xyXG5cdFx0cmlnaHQ6IC02NXB4O1xyXG5cdFx0Ym90dG9tOiAtNzBweDtcclxuXHRcdG9wYWNpdHk6IDAuNTtcclxuXHRcdGJvcmRlci1yYWRpdXM6IDAgMCA2NXB4IDA7XHJcblx0fVxyXG59XHJcblxyXG4udGV4dC1pbWFnZV9fYm9keSB7XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1sYW5kc2NhcGUtZG93bicpIHtcclxuXHRcdHdpZHRoOiBjYWxjKDEwMCUgLSAzODVweCk7XHJcblx0fVxyXG5cdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtcG9ydHJhaXQtZG93bicpIHtcclxuXHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0cGFkZGluZzogMFxyXG5cdH1cclxuXHJcblx0d2lkdGg6IGNhbGMoMTAwJSAtIDUwNXB4KTtcclxuXHRtYXgtd2lkdGg6IDUwMHB4O1xyXG5cdHBhZGRpbmctbGVmdDogNzVweDtcclxufVxyXG5cclxuXHJcbi50ZXh0LWltYWdlLS1pbWFnZS1yaWdodCB7XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1sYW5kc2NhcGUtZG93bicpIHtcclxuXHRcdHdpZHRoOiAxMDAlO1xyXG5cdH1cclxuXHRAaW5jbHVkZSBtZWRpYSgndGFibGV0LXBvcnRyYWl0LWRvd24nKSB7XHJcblx0XHRmbGV4LWRpcmVjdGlvbjogaW5pdGlhbDtcclxuXHR9XHJcblxyXG5cdGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTtcclxuXHR3aWR0aDogY2FsYygxMDAlIC0gNzBweCk7XHJcblxyXG5cdC50ZXh0LWltYWdlX19pbWFnZSB7XHJcblx0XHR3aWR0aDogMzg1cHg7XHJcblx0XHRoZWlnaHQ6IDM3MHB4O1xyXG5cclxuXHRcdCY6YWZ0ZXIge1xyXG5cdFx0XHRAaW5jbHVkZSBtZWRpYSgndGFibGV0LXBvcnRyYWl0LWRvd24nKSB7XHJcblx0XHRcdFx0dG9wOiBhdXRvO1xyXG5cdFx0XHRcdHJpZ2h0OiAtNjVweDtcclxuXHRcdFx0XHRib3R0b206IC03MHB4O1xyXG5cdFx0XHRcdGxlZnQ6IGF1dG87XHJcblx0XHRcdFx0Ym9yZGVyLXJhZGl1czogMCAwIDY1cHggMDtcclxuXHRcdFx0fVxyXG5cclxuXHRcdFx0dG9wOiAtNzVweDtcclxuXHRcdFx0cmlnaHQ6IGF1dG87XHJcblx0XHRcdGJvdHRvbTogYXV0bztcclxuXHRcdFx0bGVmdDogLTc1cHg7XHJcblx0XHRcdGJvcmRlci1yYWRpdXM6IDY1cHggMCAwIDA7XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHQudGV4dC1pbWFnZV9fYm9keSB7XHJcblx0XHRAaW5jbHVkZSBtZWRpYSgndGFibGV0LXBvcnRyYWl0LWRvd24nKSB7XHJcblx0XHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0XHRwYWRkaW5nOiAwO1xyXG5cdFx0fVxyXG5cclxuXHRcdHdpZHRoOiBjYWxjKDEwMCUgLSAzODVweCk7XHJcblx0XHRwYWRkaW5nOiAwIDcwcHggMCAwO1xyXG5cdFx0bWF4LXdpZHRoOiAxMDAlO1xyXG5cdH1cclxufVxyXG5cclxuLnRleHQtaW1hZ2VfX2VkaXRvciB7XHJcblx0bWFyZ2luOiAzMHB4IDAgMjBweCAwO1xyXG59IiwiLnRleHQtaW1hZ2VzIHtcclxuXHRAaW5jbHVkZSBtZWRpYSgndGFibGV0LXBvcnRyYWl0LWRvd24nKSB7XHJcblx0XHRwYWRkaW5nOiA1MHB4IDA7XHJcblx0fVxyXG5cclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0cGFkZGluZzogODBweCAwIDE2MHB4IDA7XHJcbn1cclxuXHJcbi50ZXh0LWltYWdlc19faGVhZCB7XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1wb3J0cmFpdC1kb3duJykge1xyXG5cdFx0bWFyZ2luLWJvdHRvbTogNTBweDtcclxuXHR9XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3Bob25lJykge1xyXG5cdFx0bWFyZ2luLWJvdHRvbTogMzBweDtcclxuXHR9XHJcblxyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRtYXJnaW4tYm90dG9tOiA5NXB4O1xyXG59XHJcblxyXG4udGV4dC1pbWFnZXNfX3RpdGxlIHtcclxuXHRtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG59XHJcblxyXG4udGV4dC1pbWFnZXNfX2JhY2tncm91bmQtdGl0bGUge1xyXG5cdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtbGFuZHNjYXBlLWRvd24nKSB7XHJcblx0XHRAaW5jbHVkZSBmb250KDgwcHgsIDgwcHgpO1xyXG5cdFx0bGV0dGVyLXNwYWNpbmc6IDIuMjJweDtcclxuXHRcdGNvbG9yOiAkYmx1ZS1sYWdvb24tNTtcclxuXHR9XHJcblxyXG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHR0b3A6IDA7XHJcblx0cmlnaHQ6IDA7XHJcbn1cclxuXHJcbi50ZXh0LWltYWdlc19fYm9keSB7XHJcblxyXG59XHJcblxyXG5cclxuLyoqXHJcbiAqICBUZXh0LlxyXG4gKi9cclxuXHJcbi50ZXh0LWltYWdlc19fdG9wIHtcclxuXHR3aWR0aDogMTAwJTtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xyXG59XHJcblxyXG4udGV4dC1pbWFnZXNfX2JvdHRvbSB7XHJcblx0d2lkdGg6IDEwMCU7XHJcbn1cclxuXHJcblxyXG4udGV4dC1pbWFnZXNfX3RvcC13cmFwLFxyXG4udGV4dC1pbWFnZXNfX2JvdHRvbS13cmFwIHtcclxuXHRAaW5jbHVkZSBtZWRpYSgndGFibGV0LWxhbmRzY2FwZS1kb3duJykge1xyXG5cdFx0d2lkdGg6IDEwMCU7XHJcblx0fVxyXG5cdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtcG9ydHJhaXQtZG93bicpIHtcclxuXHRcdG1heC13aWR0aDogMTAwJTtcclxuXHR9XHJcblxyXG5cdHdpZHRoOiBjYWxjKDEwMCUgLSA3MzBweCk7XHJcblx0bWF4LXdpZHRoOiA1MDVweDtcclxuXHR6LWluZGV4OiA5OTtcclxufVxyXG5cclxuLnRleHQtaW1hZ2VzX19ib3R0b20td3JhcCB7XHJcblxyXG59XHJcblxyXG4udGV4dC1pbWFnZXNfX2JvZHktdGl0bGUge1xyXG5cdG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbn1cclxuXHJcbi50ZXh0LWltYWdlc19fYm9keS1lZGl0b3Ige1xyXG5cclxufVxyXG5cclxuXHJcbi8qKlxyXG4gKiBJbWFnZXMuXHJcbiAqL1xyXG5cclxuLnRleHQtaW1hZ2VzX19pbWFnZXMge1xyXG5cdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtbGFuZHNjYXBlLWRvd24nKSB7XHJcblx0XHRtYXJnaW46IDUwcHggYXV0bztcclxuXHR9XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1wb3J0cmFpdC1kb3duJykge1xyXG5cdFx0d2lkdGg6IDUwMHB4O1xyXG5cdFx0aGVpZ2h0OiAzNDBweDtcclxuXHR9XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3Bob25lJykge1xyXG5cdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRtYXgtd2lkdGg6IDI4MHB4O1xyXG5cdFx0aGVpZ2h0OiAxOTBweDtcclxuXHRcdG1hcmdpbjogNjBweCBhdXRvIDUwcHggYXV0bztcclxuXHR9XHJcblxyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHR3aWR0aDogODIwcHg7XHJcblx0aGVpZ2h0OiA1NjBweDtcclxuXHRtYXJnaW46IC04MHB4IGF1dG8gLTExMHB4IGF1dG87XHJcblxyXG5cdCY6YWZ0ZXIge1xyXG5cdFx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1wb3J0cmFpdC1kb3duJykge1xyXG5cdFx0XHR0b3A6IDEwcHg7XHJcblx0XHRcdGxlZnQ6IDczcHg7XHJcblx0XHRcdHJpZ2h0OiBhdXRvO1xyXG5cdFx0XHR3aWR0aDogMzEwcHg7XHJcblx0XHRcdGhlaWdodDogMzIwcHg7XHJcblx0XHR9XHJcblx0XHRAaW5jbHVkZSBtZWRpYSgncGhvbmUnKSB7XHJcblx0XHRcdHdpZHRoOiBjYWxjKDEwMCUgLSA0MHB4KTtcclxuXHRcdFx0aGVpZ2h0OiBjYWxjKDEwMCUgKyA1MHB4KTtcclxuXHRcdFx0dG9wOiAtMzBweDtcclxuXHRcdFx0bGVmdDogMjBweDtcclxuXHRcdH1cclxuXHJcblx0XHR0b3A6IDg1cHg7XHJcblx0XHRyaWdodDogMDtcclxuXHRcdGxlZnQ6IDA7XHJcblx0XHRtYXJnaW46IDAgYXV0bztcclxuXHR9XHJcbn1cclxuXHJcbi50ZXh0LWltYWdlc19faW1hZ2VzLWJpZyB7XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1wb3J0cmFpdC1kb3duJykge1xyXG5cdFx0d2lkdGg6IDMwNXB4O1xyXG5cdFx0aGVpZ2h0OiAyNDVweDtcclxuXHR9XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3Bob25lJykge1xyXG5cdFx0d2lkdGg6IDE3MHB4O1xyXG5cdFx0aGVpZ2h0OiAxMzVweDtcclxuXHR9XHJcblxyXG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHR0b3A6IDA7XHJcblx0bGVmdDogMDtcclxuXHR3aWR0aDogNTA0cHg7XHJcblx0aGVpZ2h0OiA0MDBweDtcclxuXHJcblx0aW1nIHtcclxuXHRcdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtcG9ydHJhaXQtZG93bicpIHtcclxuXHRcdFx0Ym9yZGVyLXJhZGl1czogMjBweDtcclxuXHRcdH1cclxuXHJcblx0XHRib3JkZXItcmFkaXVzOiA1MHB4O1xyXG5cdH1cclxufVxyXG5cclxuLnRleHQtaW1hZ2VzX19pbWFnZXMtc21hbGwge1xyXG5cdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtcG9ydHJhaXQtZG93bicpIHtcclxuXHRcdHdpZHRoOiAyNTVweDtcclxuXHRcdGhlaWdodDogMjQ1cHg7XHJcblx0fVxyXG5cdEBpbmNsdWRlIG1lZGlhKCdwaG9uZScpIHtcclxuXHRcdHdpZHRoOiAxNDVweDtcclxuXHRcdGhlaWdodDogMTM1cHg7XHJcblx0fVxyXG5cclxuXHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0cmlnaHQ6IDA7XHJcblx0Ym90dG9tOiAwO1xyXG5cdHdpZHRoOiA0MjBweDtcclxuXHRoZWlnaHQ6IDQwMHB4O1xyXG5cclxuXHRpbWcge1xyXG5cdFx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1wb3J0cmFpdC1kb3duJykge1xyXG5cdFx0XHRib3JkZXItcmFkaXVzOiAyMHB4O1xyXG5cdFx0fVxyXG5cclxuXHRcdGJvcmRlci1yYWRpdXM6IDUwcHg7XHJcblx0fVxyXG59XHJcblxyXG5cclxuLyoqXHJcbiAqIExpbmVzLlxyXG4gKi9cclxuXHJcbi50ZXh0LWltYWdlc19fbGluZXMge1xyXG5cdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtbGFuZHNjYXBlLWRvd24nKSB7XHJcblx0XHR0b3A6IDMzNXB4O1xyXG5cdFx0aGVpZ2h0OiBjYWxjKDEwMCUgLSA1NTVweCk7XHJcblx0fVxyXG5cdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtcG9ydHJhaXQtZG93bicpIHtcclxuXHRcdHRvcDogMjUwcHg7XHJcblx0XHRoZWlnaHQ6IGNhbGMoMTAwJSAtIDMyNXB4KTtcclxuXHRcdHdpZHRoOiA0MTVweDtcclxuXHR9XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3Bob25lJykge1xyXG5cdFx0dG9wOiAzMjdweDtcclxuXHRcdGhlaWdodDogY2FsYygxMDAlIC0gNDYwcHgpO1xyXG5cdFx0d2lkdGg6IDI2MXB4O1xyXG5cdFx0cmlnaHQ6IDA7XHJcblx0fVxyXG5cclxuXHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0dG9wOiAyMjBweDtcclxuXHRsZWZ0OiAwO1xyXG5cdHJpZ2h0OiA2MHB4O1xyXG5cdGhlaWdodDogY2FsYygxMDAlIC0gMzYwcHgpO1xyXG5cdHdpZHRoOiA1MzVweDtcclxuXHRtYXJnaW46IDAgYXV0bztcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdHotaW5kZXg6IC0xO1xyXG5cdG9wYWNpdHk6IDAuNTtcclxuXHJcblx0PiBzcGFuIHtcclxuXHRcdGRpc3BsYXk6IGJsb2NrO1xyXG5cdFx0d2lkdGg6IDNweDtcclxuXHRcdGhlaWdodDogMTAwJTtcclxuXHRcdGJhY2tncm91bmQtY29sb3I6ICRibHVlLXBhdHRlbnMtMTAwO1xyXG5cclxuXHRcdCY6bnRoLWNoaWxkKDEpIHtcclxuXHRcdFx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1wb3J0cmFpdC1kb3duJykge1xyXG5cdFx0XHRcdG1hcmdpbi1yaWdodDogMTg1cHg7XHJcblx0XHRcdH1cclxuXHRcdFx0QGluY2x1ZGUgbWVkaWEoJ3Bob25lJykge1xyXG5cdFx0XHRcdG1hcmdpbi1yaWdodDogMTI1cHg7XHJcblx0XHRcdH1cclxuXHJcblx0XHRcdG1hcmdpbi1yaWdodDogMjkwcHg7XHJcblx0XHR9XHJcblxyXG5cdFx0JjpudGgtY2hpbGQoMikge1xyXG5cdFx0XHRAaW5jbHVkZSBtZWRpYSgncGhvbmUnKSB7XHJcblx0XHRcdFx0bWFyZ2luLXJpZ2h0OiAxMjVweDtcclxuXHRcdFx0fVxyXG5cclxuXHRcdFx0bWFyZ2luLXRvcDogNTVweDtcclxuXHRcdFx0bWFyZ2luLXJpZ2h0OiAyMjBweDtcclxuXHRcdH1cclxuXHJcblx0XHQmOm50aC1jaGlsZCgzKSB7XHJcblx0XHRcdG1hcmdpbi10b3A6IDQ1cHg7XHJcblx0XHRcdGhlaWdodDogY2FsYygxMDAlIC0gOTBweCk7XHJcblx0XHR9XHJcblx0fVxyXG59IiwiLyoqXHJcbiAqIEV2ZXJ5IGNvbmNlaXZhYmxlIEhUTUwgZWxlbWVudCB3aXRoaW4gYSBgLmNtcy1vdXRwdXRgIHdyYXBwZXIuXHJcbiAqXHJcbiAqIDEuIEV4Y2x1ZGUgbGFzdCBjaGlsZHMuXHJcbiAqL1xyXG5cclxuLmNtcy1vdXRwdXQge1xyXG5cclxuXHQmLmlzLWludHJvLFxyXG5cdC5pcy1pbnRybyB7XHJcblx0XHRAaW5jbHVkZSBtZWRpYSgncGhvbmUnKSB7XHJcblx0XHRcdEBpbmNsdWRlIGZvbnQoMTVweCwgMzBweCk7XHJcblx0XHR9XHJcblxyXG5cdFx0QGluY2x1ZGUgZm9udCgyMHB4LCAzNXB4KTtcclxuXHRcdGxldHRlci1zcGFjaW5nOiAwLjU2cHg7XHJcblx0XHRmb250LXdlaWdodDogMzAwO1xyXG5cdFx0Y29sb3I6ICRibGFjay0xMDA7IFxyXG5cdH1cclxuXHJcblx0aDEsXHJcblx0aDIsXHJcblx0aDMge1xyXG5cdFx0bWFyZ2luLWJvdHRvbTogMjBweDtcclxuXHRcdHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQ7XHJcblx0fVxyXG5cclxuXHRoNCxcclxuXHRoNSB7XHJcblx0XHRtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG5cdFx0d29yZC1icmVhazogYnJlYWstd29yZDtcclxuXHR9XHJcblxyXG5cclxuXHRwIHtcclxuXHRcdCY6bm90KDpsYXN0LWNoaWxkKSB7XHJcblx0XHRcdG1hcmdpbi1ib3R0b206IDJlbTtcclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdG9sLFxyXG5cdHVsIHsgXHJcblx0XHRsaXN0LXN0eWxlLXR5cGU6IGRpc2M7XHJcblx0XHRjb2xvcjogJGJsdWUtMTAwO1xyXG5cdFx0bWFyZ2luLWxlZnQ6IDI1cHg7XHJcblxyXG5cdFx0bGkge1xyXG5cdFx0XHRtYXJnaW4tYm90b206IDVweDtcclxuXHRcdFx0Y29sb3I6ICRncmV5LTIwMDtcclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdG9sIHtcclxuXHRcdGxpc3Qtc3R5bGUtdHlwZTogZGVjaW1hbDtcclxuXHR9XHJcblxyXG5cdHN0cm9uZyB7XHJcblx0XHRmb250LXdlaWdodDogYm9sZDtcclxuXHR9XHJcblxyXG5cdGJ1dHRvbiB7XHJcblx0XHRtYXJnaW4tdG9wOiAyMHB4O1xyXG5cdH1cclxuXHJcblx0YmxvY2txdW90ZSB7XHJcblx0XHRAaW5jbHVkZSBmb250KDE3cHgsIDM1cHgpO1xyXG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdFx0bWFyZ2luOiAyNnB4IDA7XHJcblx0XHRwYWRkaW5nOiAyNXB4IDIwcHg7XHJcblx0XHRmb250LXdlaWdodDogNTAwO1xyXG5cdFx0bGV0dGVyLXNwYWNpbmc6IDAuNDdweDtcclxuXHRcdGNvbG9yOiAkYmx1ZS0xMDA7XHJcblx0XHRib3JkZXItbGVmdDogM3B4IHNvbGlkICRibHVlLWxhZ29vbi01MDtcclxuXHJcblx0XHQmOmJlZm9yZSxcclxuXHRcdCY6YWZ0ZXIge1xyXG5cdFx0XHRAaW5jbHVkZSBmb250KDk1cHgsIDk1cHgpO1xyXG5cdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHRcdGxlZnQ6IDE1cHg7XHJcblx0XHRcdHRvcDogLTlweDtcclxuXHRcdFx0d2lkdGg6IDM2cHg7XHJcblx0XHRcdGhlaWdodDogMjZweDtcclxuXHRcdFx0Y29sb3I6ICRibHVlLWxhZ29vbi0yMDtcclxuXHRcdFx0Y29udGVudDogJ+KAnCc7XHJcblx0XHR9XHJcblxyXG5cdFx0JjphZnRlciB7XHJcblx0XHRcdHRvcDogYXV0bztcclxuXHRcdFx0cmlnaHQ6IDA7XHJcblx0XHRcdGJvdHRvbTogOXB4O1xyXG5cdFx0XHRsZWZ0OiBhdXRvO1xyXG5cdFx0XHRjb250ZW50OiAn4oCdJztcclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdC53cC1jYXB0aW9uIHtcclxuXHRcdHdpZHRoOiAxMDAlIWltcG9ydGFudDtcclxuXHRcdG1hcmdpbjogNTBweCAwO1xyXG5cclxuXHRcdHAge1xyXG5cdFx0XHRAaW5jbHVkZSBmb250KDE0cHgsIDI4cHgpO1xyXG5cdFx0XHRtYXJnaW4tdG9wOiAzMHB4O1xyXG5cdFx0XHRmb250LXN0eWxlOiBpdGFsaWM7XHJcblx0XHRcdGxldHRlci1zcGFjaW5nOiAwLjM5cHg7XHJcblx0XHRcdGNvbG9yOiAkYmx1ZS1sYWdvb24tMTAwO1xyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0aW1nIHtcclxuXHRcdGRpc3BsYXk6IGJsb2NrO1xyXG5cdFx0bWFyZ2luOiAwIGF1dG87XHJcblx0fVxyXG5cclxuXHRhIHtcclxuXHRcdGNvbG9yOiAkYmx1ZS0xMDA7XHJcblx0XHR0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcclxuXHRcdHRyYW5zaXRpb246IGFsbCAyNTBtcyBlYXNlO1xyXG5cclxuXHRcdCY6aG92ZXIge1xyXG5cdFx0XHRjb2xvcjogJGJsdWUtbGFnb29uLTEwMDtcclxuXHRcdH1cclxuXHJcblx0XHQmLmlzLXlvdXR1YmUge1xyXG5cdFx0XHRkaXNwbGF5OiBibG9jaztcclxuXHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuXHRcdFx0LnBsYXkge1xyXG5cdFx0XHRcdGRpc3BsYXk6IGZsZXg7XHJcblx0XHRcdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRcdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHRcdFx0dG9wOiAwO1xyXG5cdFx0XHRcdHJpZ2h0OiAwO1xyXG5cdFx0XHRcdGJvdHRvbTogMDtcclxuXHRcdFx0XHRsZWZ0OiAwO1xyXG5cdFx0XHRcdHdpZHRoOiA5NXB4O1xyXG5cdFx0XHRcdGhlaWdodDogOTVweDtcclxuXHRcdFx0XHRtYXJnaW46IGF1dG87XHJcblx0XHRcdFx0cGFkZGluZy1sZWZ0OiAxMHB4O1xyXG5cdFx0XHRcdGJvcmRlci1yYWRpdXM6IDUwcHg7XHJcblx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJGJsdWUtcGF0dGVucy0xMDA7XHJcblx0XHRcdFx0b3BhY2l0eTogMC44O1xyXG5cdFx0XHRcdHotaW5kZXg6IDEwO1xyXG5cclxuXHRcdFx0XHRzdmcge1xyXG5cdFx0XHRcdFx0d2lkdGg6IDQ2cHg7XHJcblx0XHRcdFx0XHRoZWlnaHQ6IDUwcHg7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHQuaW5mby13aW5kb3dfX2ljb24ge1xyXG5cdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG5cclxuXHRcdHN2ZyB7XHJcblx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRcdFx0dG9wOiAycHg7XHJcblx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuXHRcdFx0d2lkdGg6IDE0cHg7XHJcblx0XHRcdGhlaWdodDogMTNweDtcclxuXHRcdFx0bWFyZ2luLWxlZnQ6IDVweDtcclxuXHRcdH1cclxuXHJcblx0XHQmOmhvdmVyIHtcclxuXHRcdFx0KyAuaW5mby13aW5kb3dfX2hvdmVyIHtcclxuXHRcdFx0XHRkaXNwbGF5OiBibG9jaztcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0LmluZm8td2luZG93X19ob3ZlciB7XHJcblx0XHRAaW5jbHVkZSBmb250KDEzcHgsIDE4cHgpO1xyXG5cdFx0ZGlzcGxheTogbm9uZTtcclxuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdHRvcDogMTAwJTtcclxuXHRcdGxlZnQ6IGNhbGMoMTAwJSAtIDE1cHgpO1xyXG5cdFx0d2lkdGg6IDM0MHB4O1xyXG5cdFx0cGFkZGluZzogMTVweCAyMHB4O1xyXG5cdFx0YmFja2dyb3VuZDogJGJsdWUtcGF0dGVucy0xMDA7XHJcblx0XHRib3JkZXItcmFkaXVzOiAxN3B4O1xyXG5cclxuXHRcdHN0cm9uZyB7XHJcblx0XHRcdGRpc3BsYXk6IGJsb2NrO1xyXG5cdFx0XHRtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG5cdFx0fVxyXG5cdH1cclxufVxyXG4iLCIuZm9vdGVyIHtcclxuXHRAaW5jbHVkZSBtZWRpYSgncGhvbmUnKSB7XHJcblx0XHRtYXJnaW46IDEwMHB4IDAgNDVweCAwO1xyXG5cdH1cclxuXHJcblx0bWFyZ2luLXRvcDogMTYwcHg7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogJGJsdWUtcGF0dGVucy0xMDA7XHJcblxyXG5cdCY6YWZ0ZXIge1xyXG5cdFx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1sYW5kc2NhcGUtZG93bicpIHtcclxuXHRcdFx0bGVmdDogLTUxNHB4O1xyXG5cdFx0fVxyXG5cdFx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1wb3J0cmFpdC1kb3duJykge1xyXG5cdFx0XHRsZWZ0OiAtNDc4cHg7XHJcblx0XHR9XHJcblx0XHRAaW5jbHVkZSBtZWRpYSgncGhvbmUnKSB7XHJcblx0XHRcdGRpc3BsYXk6IG5vbmU7XHJcblx0XHR9XHJcblxyXG5cdFx0dG9wOiA3cHg7XHJcblx0XHRsZWZ0OiAtMzQzcHg7XHJcblx0fVxyXG59XHJcblxyXG5cclxuLyoqXHJcbiAqIFNpdGVtYXBzLlxyXG4gKi9cclxuXHJcbi5mb290ZXJfX3NpdGVtYXBzIHtcclxuXHRAaW5jbHVkZSBtZWRpYSgndGFibGV0LWxhbmRzY2FwZS1kb3duJykge1xyXG5cdFx0d2lkdGg6IGNhbGMoMTAwJSAtIDMxNXB4KTtcclxuXHRcdHBhZGRpbmc6IDEwMHB4IDA7XHJcblx0fVxyXG5cdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtcG9ydHJhaXQtZG93bicpIHtcclxuXHRcdGFsaWduLWNvbnRlbnQ6IGJhc2VsaW5lO1xyXG5cdFx0d2lkdGg6IGNhbGMoMTAwJSAtIDMwMHB4KTtcclxuXHRcdHBhZGRpbmc6IDEwMHB4IDc1cHg7XHJcblx0fVxyXG5cdEBpbmNsdWRlIG1lZGlhKCdwaG9uZScpIHtcclxuXHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0cGFkZGluZzogNTBweCAwIDAgMDtcclxuXHR9XHJcblxyXG5cdHdpZHRoOiBjYWxjKDEwMCUgLSA0MDBweCk7XHJcblx0cGFkZGluZzogMTAwcHggMCAxMDBweCAyMTBweDtcclxufVxyXG5cclxuLmZvb3Rlcl9fc2l0ZW1hcCB7XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1wb3J0cmFpdC1kb3duJykge1xyXG5cdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRwYWRkaW5nOiAwO1xyXG5cdFx0bWFyZ2luLWJvdHRvbTogNTBweDtcclxuXHR9XHJcblxyXG5cdHdpZHRoOiA1MCU7XHJcblx0cGFkZGluZy1yaWdodDogMjBweDtcclxuXHJcblx0Ji5pcy1hY3RpdmUge1xyXG5cdFx0LmZvb3Rlcl9fc2l0ZW1hcC10aXRsZS13cmFwIHN2ZyB7XHJcblx0XHRcdHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XHJcblx0XHR9XHJcblx0fVxyXG59XHJcblxyXG4uZm9vdGVyX19zaXRlbWFwLXRpdGxlLXdyYXAge1xyXG5cdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtcG9ydHJhaXQtZG93bicpIHtcclxuXHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdH1cclxuXHJcblx0c3ZnIHtcclxuXHRcdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtcG9ydHJhaXQtZG93bicpIHtcclxuXHRcdFx0ZGlzcGxheTogYmxvY2s7XHJcblx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRcdFx0dG9wOiAycHg7XHJcblx0XHRcdHdpZHRoOiAxN3B4O1xyXG5cdFx0XHRoZWlnaHQ6IDI1cHg7XHJcblx0XHRcdGNvbG9yOiAkYmx1ZS1sYWdvb24tMTAwO1xyXG5cdFx0XHR0cmFuc2l0aW9uOiBhbGwgNTAwbXMgZWFzZTtcclxuXHRcdH1cclxuXHJcblx0XHRkaXNwbGF5OiBub25lXHJcblx0fVxyXG59XHJcblxyXG4uZm9vdGVyX19saW5rcyB7XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1wb3J0cmFpdC1kb3duJykge1xyXG5cdFx0ZGlzcGxheTogbm9uZTtcclxuXHR9XHJcbn1cclxuXHJcbi5mb290ZXJfX2xpbmsge1xyXG5cdG1hcmdpbi10b3A6IDIwcHg7XHJcblxyXG5cdHN2ZyB7XHJcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0XHR0b3A6IDVweDtcclxuXHRcdHdpZHRoOiAzMHB4O1xyXG5cdFx0aGVpZ2h0OiAyMHB4O1xyXG5cdFx0cGFkZGluZy1yaWdodDogMTBweDtcclxuXHRcdGNvbG9yOiAkZ3JleS00MDA7XHJcblx0XHR0cmFuc2l0aW9uOiBhbGwgMjUwbXMgZWFzZTtcclxuXHR9XHJcblxyXG5cdGEge1xyXG5cdFx0dHJhbnNpdGlvbjogYWxsIDI1MG1zIGVhc2U7XHJcblxyXG5cdFx0Jjpob3ZlciB7XHJcblx0XHRcdGNvbG9yOiAkYmx1ZS0xMDA7XHJcblx0XHRcdHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xyXG5cclxuXHRcdFx0c3ZnIHtcclxuXHRcdFx0XHRjb2xvcjogJGJsdWUtMTAwO1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG59XHJcblxyXG5cclxuLyoqXHJcbiAqIENvbnRhY3QuXHJcbiAqL1xyXG5cclxuLmZvb3Rlcl9fY29udGFjdCB7XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1sYW5kc2NhcGUtZG93bicpIHtcclxuXHRcdHdpZHRoOiAzMTVweDtcclxuXHRcdHBhZGRpbmc6IDUwcHggMCAxMDBweCA0MHB4O1xyXG5cdH1cclxuXHRAaW5jbHVkZSBtZWRpYSgndGFibGV0LXBvcnRyYWl0LWRvd24nKSB7XHJcblx0XHR3aWR0aDogMzAwcHg7XHJcblx0XHRwYWRkaW5nOiA1MHB4IDAgMTkwcHggMjBweDtcclxuXHR9XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3Bob25lJykge1xyXG5cdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRtYXJnaW46IDA7XHJcblx0XHRwYWRkaW5nOiAzMHB4IDAgMzBweCAyMHB4O1xyXG5cdFx0Ym9yZGVyLXJhZGl1czogMzBweCAwIDAgMDtcclxuXHR9XHJcblxyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHR3aWR0aDogNDAwcHg7XHJcblx0aGVpZ2h0OiAxMDAlO1xyXG5cdHBhZGRpbmc6IDUwcHggMCAxMDBweCAxMDBweDtcclxuXHRtYXJnaW4tdG9wOiA1MHB4O1xyXG5cdGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZS0xMDA7XHJcblx0Ym9yZGVyLXJhZGl1czogNTBweCAwIDAgMDtcclxuXHJcblx0YSB7XHJcblx0XHR0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcclxuXHRcdGZvbnQtd2VpZ2h0OiA0MDA7XHJcblx0fVxyXG5cclxuXHQmOmFmdGVyIHtcclxuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdHRvcDogMDtcclxuXHRcdGxlZnQ6IDA7XHJcblx0XHR3aWR0aDogOTk5cHg7XHJcblx0XHRoZWlnaHQ6IDk5OXB4O1xyXG5cdFx0YmFja2dyb3VuZC1jb2xvcjogJHdoaXRlLTEwMDtcclxuXHRcdGJvcmRlci1yYWRpdXM6IDUwcHggMCAwIDA7XHJcblx0XHRjb250ZW50OiAnJztcclxuXHRcdHotaW5kZXg6IDE7XHJcblx0fVxyXG5cclxuXHQqIHtcclxuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRcdHotaW5kZXg6IDI7XHJcblx0fVxyXG59XHJcblxyXG4uZm9vdGVyX19hZGRyZXNzIHtcclxuXHRtYXJnaW46IDIwcHggMDtcclxufVxyXG5cclxuLmZvb3Rlcl9fZW1haWwge1xyXG5cdGRpc3BsYXk6IGJsb2NrO1xyXG5cdG1hcmdpbjogMjBweCAwO1xyXG59XHJcblxyXG4uZm9vdGVyX19zb2NpYWwge1xyXG5cdHN2ZyB7XHJcblx0XHR3aWR0aDogMzBweDtcclxuXHRcdGhlaWdodDogMzdweDtcclxuXHRcdG1hcmdpbi1yaWdodDogMjBweDtcclxuXHRcdGNvbG9yOiAkZ3JleS00MDA7XHJcblx0XHR0cmFuc2l0aW9uOiBhbGwgMjUwbXMgZWFzZTtcclxuXHJcblx0XHQmOmhvdmVyIHtcclxuXHRcdFx0Y29sb3I6ICRibHVlLTEwMDtcclxuXHRcdH1cclxuXHR9XHJcbn1cclxuXHJcblxyXG4vKipcclxuICogQm90dG9tLlxyXG4gKi9cclxuXHJcbi5mb290ZXJfX2JvdHRvbSB7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRoZWlnaHQ6IDUwcHg7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogJHdoaXRlLTEwMDtcclxuXHJcblx0YSB7XHJcblx0XHRjb2xvcjogJGJsdWUtMTAwO1xyXG5cdFx0dGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XHJcblx0XHR0cmFuc2l0aW9uOiBhbGwgMjUwbXMgZWFzZTtcclxuXHJcblx0XHQmOmhvdmVyIHtcclxuXHRcdFx0Y29sb3I6ICRibHVlLWxhZ29vbi0xMDA7XHJcblx0XHR9XHJcblx0fVxyXG59XHJcblxyXG4uZm9vdGVyX19ib3R0b20td3JhcHBlciB7XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1sYW5kc2NhcGUtZG93bicpIHtcclxuXHRcdHBhZGRpbmctbGVmdDogMDtcclxuXHR9XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1wb3J0cmFpdC1kb3duJykge1xyXG5cdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRwYWRkaW5nLWxlZnQ6IDc1cHg7XHJcblx0fVxyXG5cdEBpbmNsdWRlIG1lZGlhKCdwaG9uZScpIHtcclxuXHRcdHBhZGRpbmctbGVmdDogMDtcclxuXHR9XHJcblxyXG5cdHdpZHRoOiBjYWxjKDEwMCUgLSA0MDBweCk7XHJcblx0cGFkZGluZy1sZWZ0OiAyMTBweDtcclxufSIsIi5oZWFkZXIge1xyXG5cdGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZS0xMDA7XHJcblxyXG5cdC53cmFwcGVyIHtcclxuXHRcdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtcG9ydHJhaXQtZG93bicpIHtcclxuXHRcdFx0aGVpZ2h0OiAxMTBweDtcclxuXHRcdH1cclxuXHRcdEBpbmNsdWRlIG1lZGlhKCdwaG9uZScpIHtcclxuXHRcdFx0aGVpZ2h0OiA2NXB4O1xyXG5cdFx0fVxyXG5cclxuXHRcdGhlaWdodDogMTI1cHg7XHJcblx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdH1cclxufVxyXG5cclxuLmhlYWRlcl9fbG9nbyB7XHJcblx0aW1nIHtcclxuXHRcdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtcG9ydHJhaXQtZG93bicpIHtcclxuXHRcdFx0bWF4LXdpZHRoOiAyMjVweDtcclxuXHRcdH1cclxuXHRcdEBpbmNsdWRlIG1lZGlhKCdwaG9uZScpIHtcclxuXHRcdFx0bWF4LXdpZHRoOiAxNTBweDtcclxuXHRcdH1cclxuXHJcblx0XHRtYXgtd2lkdGg6IDI5MHB4O1xyXG5cdFx0aGVpZ2h0OiBhdXRvO1xyXG5cdFx0bWFyZ2luLXRvcDogLTIwcHg7XHJcblx0fVxyXG59XHJcblxyXG4uaGVhZGVyX19zZWFyY2gge1xyXG5cdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtbGFuZHNjYXBlLWRvd24nKSB7XHJcblx0XHRtYXgtd2lkdGg6IDIwMHB4O1xyXG5cdH1cclxuXHRAaW5jbHVkZSBtZWRpYSgndGFibGV0LXBvcnRyYWl0LWRvd24nKSB7XHJcblx0XHRkaXNwbGF5OiBub25lO1xyXG5cdH1cclxuXHJcblx0d2lkdGg6IGNhbGMoMTAwJSAtIDQ4MHB4KTtcclxuXHRtYXJnaW46IDAgMjBweDtcclxuXHRtYXgtd2lkdGg6IDQwMHB4O1xyXG59XHJcblxyXG4uaGVhZGVyX193ZWJzaG9wIHtcclxuXHR3aWR0aDogMTc1cHg7XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3Bob25lJykge1xyXG5cdFx0d2lkdGg6IDEwMHB4O1xyXG5cdH1cclxufVxyXG4uaGVhZGVyX193ZWJzaG9wLWxpbmsge1xyXG5cdGhlaWdodDogNDBweDtcclxuXHR3aWR0aDogMTM5cHg7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogJGJsdWUtMTAwO1xyXG5cdGRpc3BsYXk6ZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cdHRyYW5zaXRpb246IGFsbCAyNTBtcyBlYXNlO1xyXG5cclxuXHRAaW5jbHVkZSBtZWRpYSgncGhvbmUnKSB7XHJcblx0XHR3aWR0aDogMTAwcHg7XHJcblx0fVxyXG5cclxuXHQmOmhvdmVyIHtcclxuXHRcdGJvcmRlci1yYWRpdXM6IDEwcHggMnB4IDEwcHggMnB4O1xyXG5cdH1cclxuXHJcblx0c3BhbiB7XHJcblx0XHRoZWlnaHQ6IDIwcHg7XHJcblx0XHR3aWR0aDogNTVweDtcclxuXHRcdGNvbG9yOiAjRkZGRkZGO1xyXG5cdFx0Zm9udC1zaXplOiAxMnB4O1xyXG5cdFx0Zm9udC13ZWlnaHQ6IDUwMDtcclxuXHRcdGxldHRlci1zcGFjaW5nOiAwLjMzcHg7XHJcblx0XHRsaW5lLWhlaWdodDogMjBweDtcclxuXHR9XHJcblxyXG5cdHN2ZyB7XHJcblx0XHRoZWlnaHQ6IDIxcHg7XHJcblx0XHR3aWR0aDogMjRweDtcclxuXHRcdGNvbG9yOiAjRkZGRkZGO1xyXG5cdFx0bWFyZ2luLXJpZ2h0OiA1cHg7XHJcblx0fVxyXG59XHJcblxyXG4uaGVhZGVyX19hY3Rpb25zIHtcclxuXHRAaW5jbHVkZSBtZWRpYSgncGhvbmUnKSB7XHJcblx0XHR3aWR0aDogMTY1cHg7XHJcblx0fVxyXG5cclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0d2lkdGg6IGF1dG87XHJcbn1cclxuXHJcbi5oZWFkZXJfX2FjY291bnQge1xyXG5cdHdpZHRoOiA1MHB4O1xyXG5cdEBpbmNsdWRlIG1lZGlhKCdwaG9uZScpIHtcclxuXHRcdGRpc3BsYXk6IG5vbmU7XHJcblx0fVxyXG5cclxuXHRhIHtcclxuXHRcdGRpc3BsYXk6IGZsZXg7XHJcblx0fVxyXG5cclxuXHRzdmcge1xyXG5cdFx0d2lkdGg6IDIxcHg7XHJcblx0XHRoZWlnaHQ6IDE5cHg7XHJcblx0XHRjb2xvcjogJGJsYWNrLTEwMDtcclxuXHRcdHRyYW5zaXRpb246IGFsbCAyNTBtcyBlYXNlO1xyXG5cdH1cclxuXHJcblx0Jjpob3ZlciB7XHJcblx0XHRzdmcge1xyXG5cdFx0XHRjb2xvcjogJGJsdWUtbGFnb29uLTEwMDtcclxuXHRcdH1cclxuXHR9XHJcbn1cclxuXHJcbi5oZWFkZXJfX21pbmktY2FydCB7XHJcblx0d2lkdGg6IDUwcHg7XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3Bob25lJykge1xyXG5cdFx0ZGlzcGxheTogbm9uZTtcclxuXHR9XHJcblxyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuXHQuaGVhZGVyX19taW5pLWNhcnQtYW1tb3VudCB7XHJcblx0XHRAaW5jbHVkZSBmb250KDE0cHgsIDIwcHgpO1xyXG5cdFx0ZGlzcGxheTogZmxleDtcclxuXHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdHRvcDogLTE5cHg7XHJcblx0XHRyaWdodDogLTEycHg7XHJcblx0XHR3aWR0aDogMThweDtcclxuXHRcdGhlaWdodDogMThweDtcclxuXHRcdHBhZGRpbmctbGVmdDogMXB4O1xyXG5cdFx0YmFja2dyb3VuZC1jb2xvcjogJGdyZXktNjAwO1xyXG5cdFx0Y29sb3I6ICRibHVlLWxhZ29vbi0xMDA7XHJcblx0XHRib3JkZXItcmFkaXVzOiAyMHB4O1xyXG5cdFx0Zm9udC13ZWlnaHQ6IDUwMDtcclxuXHRcdHRyYW5zaXRpb246IGFsbCAyNTBtcyBlYXNlO1xyXG5cdH1cclxuXHJcblx0PiBzdmcge1xyXG5cdFx0d2lkdGg6IDI0cHg7XHJcblx0XHRoZWlnaHQ6IDE5cHg7XHJcblx0XHRjb2xvcjogJGJsYWNrLTEwMDtcclxuXHRcdGN1cnNvcjogcG9pbnRlcjtcclxuXHR9XHJcblxyXG5cdCY6aG92ZXIge1xyXG5cdFx0PiBzdmcge1xyXG5cdFx0XHRjb2xvcjogJGJsdWUtbGFnb29uLTEwMDtcclxuXHRcdH1cclxuXHR9XHJcbn1cclxuXHJcblxyXG4vKipcclxuICogTW9iaWxlIG1lbnUgYnV0dG9uLlxyXG4gKi9cclxuXHJcbiR0cmFuc2l0aW9uLXRpbWluZzogNDAwbXM7XHJcbi5oZWFkZXJfX21lbnUtYnV0dG9uIHtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0d2lkdGg6IDI2cHg7XHJcblx0aGVpZ2h0OiAyMnB4O1xyXG5cdHotaW5kZXg6IDEwMDtcclxuXHR3aWR0aDogNTBweDtcclxuXHJcblx0c3BhbiB7XHJcblx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHRyaWdodDogMDtcclxuXHRcdGxlZnQ6IDA7XHJcblx0XHR3aWR0aDogMjZweDtcclxuXHRcdGhlaWdodDogMnB4O1xyXG5cdFx0bWFyZ2luOiBhdXRvO1xyXG5cdFx0YmFja2dyb3VuZC1jb2xvcjogJGJsYWNrLTEwMDtcclxuXHJcblx0XHQmOm50aC1jaGlsZCgxKSB7XHJcblx0XHRcdHRvcDogMDtcclxuXHRcdFx0dHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAkdHJhbnNpdGlvbi10aW1pbmcsIHRvcCAkdHJhbnNpdGlvbi10aW1pbmcgJHRyYW5zaXRpb24tdGltaW5nLCB0cmFuc2Zvcm0gJHRyYW5zaXRpb24tdGltaW5nIDBzO1xyXG5cdFx0fVxyXG5cclxuXHRcdCY6bnRoLWNoaWxkKDIpIHtcclxuXHRcdFx0dG9wOiBjYWxjKDUwJSAtIDFweCk7XHJcblx0XHRcdHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgJHRyYW5zaXRpb24tdGltaW5nLCBvcGFjaXR5IDBtcyAkdHJhbnNpdGlvbi10aW1pbmc7XHJcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRibGFjay0xMDA7XHJcblx0XHRcdG9wYWNpdHk6IDE7XHJcblx0XHR9XHJcblxyXG5cdFx0JjpudGgtY2hpbGQoMykge1xyXG5cdFx0XHRib3R0b206IDA7XHJcblx0XHRcdHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgJHRyYW5zaXRpb24tdGltaW5nLCBib3R0b20gJHRyYW5zaXRpb24tdGltaW5nICR0cmFuc2l0aW9uLXRpbWluZywgdHJhbnNmb3JtICR0cmFuc2l0aW9uLXRpbWluZyAwcztcclxuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJGJsYWNrLTEwMDtcclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdCYuaXMtYWN0aXZlIHtcclxuXHRcdHNwYW4ge1xyXG5cdFx0XHQmOm50aC1jaGlsZCgxKSB7XHJcblx0XHRcdFx0dG9wOiBjYWxjKDUwJSAtIDFweCk7XHJcblx0XHRcdFx0dHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcclxuXHRcdFx0XHR0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yICR0cmFuc2l0aW9uLXRpbWluZywgdG9wICR0cmFuc2l0aW9uLXRpbWluZywgdHJhbnNmb3JtICR0cmFuc2l0aW9uLXRpbWluZyAkdHJhbnNpdGlvbi10aW1pbmc7XHJcblx0XHRcdH1cclxuXHJcblx0XHRcdCY6bnRoLWNoaWxkKDIpIHtcclxuXHRcdFx0XHRvcGFjaXR5OiAwO1xyXG5cdFx0XHR9XHJcblxyXG5cdFx0XHQmOm50aC1jaGlsZCgzKSB7XHJcblx0XHRcdFx0Ym90dG9tOiBjYWxjKDUwJSAtIDFweCk7XHJcblx0XHRcdFx0dHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xyXG5cdFx0XHRcdHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgJHRyYW5zaXRpb24tdGltaW5nLCBib3R0b20gJHRyYW5zaXRpb24tdGltaW5nLCB0cmFuc2Zvcm0gJHRyYW5zaXRpb24tdGltaW5nICR0cmFuc2l0aW9uLXRpbWluZztcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cclxufVxyXG5cclxuXHJcbi8qKlxyXG4gKiBIZWFkZXIgZml4ZWQuXHJcbiAqL1xyXG5cclxuLmhlYWRlcl9fZml4ZWQge1xyXG5cdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtcG9ydHJhaXQtdXAnKSB7XHJcblx0XHRkaXNwbGF5OiBub25lO1xyXG5cdH1cclxuXHJcblx0cG9zaXRpb246IGZpeGVkO1xyXG5cdGJvdHRvbTogMDtcclxuXHR3aWR0aDogMTAwJTtcclxuXHRwYWRkaW5nOiAwIDIwcHg7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogJHdoaXRlLTEwMDtcclxuXHRib3gtc2hhZG93OiAwIC0ycHggNXB4IDAgJGdyZXktMTEwO1xyXG5cdHotaW5kZXg6IDEwO1xyXG59XHJcblxyXG4uaGVhZGVyX19maXhlZC13cmFwIHtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdG1heC13aWR0aDogMTUwcHg7XHJcblx0aGVpZ2h0OiA0MHB4O1xyXG5cdG1hcmdpbjogMCBhdXRvO1xyXG59XHJcblxyXG4uaGVhZGVyX19maXhlZC1zZWFyY2gge1xyXG5cdHN2ZyB7XHJcblx0XHR3aWR0aDogMjFweDtcclxuXHRcdGhlaWdodDogMjFweDtcclxuXHR9XHJcbn1cclxuXHJcbi5oZWFkZXJfX2ZpeGVkLXNlYXJjaC1maWVsZCB7XHJcblx0ZGlzcGxheTogbm9uZTtcclxuXHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0dG9wOiAtNTBweDtcclxuXHR3aWR0aDogY2FsYygxMDAlIC0gMjBweCk7XHJcblx0bGVmdDogMTBweDtcclxuXHJcblx0Ji5pcy1hY3RpdmUge1xyXG5cdFx0ZGlzcGxheTogYmxvY2s7XHJcblx0fVxyXG59XHJcblxyXG4uaGVhZGVyX19maXhlZC1hY2NvdW50IHtcclxuXHRzdmcge1xyXG5cdFx0d2lkdGg6IDIxcHg7XHJcblx0XHRoZWlnaHQ6IDE5cHg7XHJcblx0fVxyXG59XHJcblxyXG4uaGVhZGVyX19maXhlZC1jYXJ0IHtcclxuXHRzdmcge1xyXG5cdFx0d2lkdGg6IDIxcHg7XHJcblx0XHRoZWlnaHQ6IDI0cHg7XHJcblx0fVxyXG59XHJcbiIsIi5uYXZpZ2F0aW9uIHtcclxuXHRwb3NpdGlvbjogZml4ZWQ7XHJcblx0dG9wOiAtMTAwdmg7XHJcblx0cmlnaHQ6IDA7XHJcblx0Ym90dG9tOiAwO1xyXG5cdGxlZnQ6IDA7XHJcblx0d2lkdGg6IDEwMCU7XHJcblx0aGVpZ2h0OiAxMDAlO1xyXG5cdHRyYW5zaXRpb246IGFsbCA1MDBtcyBlYXNlO1xyXG5cdGJhY2tncm91bmQtY29sb3I6ICRibHVlLXBhdHRlbnMtMTAwO1xyXG5cdG9wYWNpdHk6IDA7XHJcblx0ei1pbmRleDogOTk7XHJcblx0b3ZlcmZsb3cteDogaGlkZGVuO1xyXG5cclxuXHQmLmlzLWFjdGl2ZSB7XHJcblx0XHR0b3A6IDA7XHJcblx0XHRvcGFjaXR5OiAxO1xyXG5cdH1cclxuXHJcblx0Jjo6LXdlYmtpdC1zY3JvbGxiYXIge1xyXG5cdFx0ZGlzcGxheTogbm9uZTtcclxuXHR9XHJcblxyXG5cdC53cmFwcGVyIHtcclxuXHRcdEBpbmNsdWRlIG1lZGlhKCdwaG9uZScpIHtcclxuXHRcdFx0cGFkZGluZzogMzBweCAwIDAgMDtcclxuXHRcdH1cclxuXHJcblx0XHRwYWRkaW5nLXRvcDogMTEwcHg7XHJcblx0fVxyXG5cclxuXHQuaGVhZGluZy1iYWNrZ3JvdW5kIHtcclxuXHRcdEBpbmNsdWRlIG1lZGlhKCdwaG9uZScpIHtcclxuXHRcdFx0cGFkZGluZzogMCAyMHB4O1xyXG5cdFx0fVxyXG5cclxuXHRcdEBpbmNsdWRlIGZvbnQoODBweCwgNzBweCk7XHJcblx0fVxyXG59XHJcblxyXG4ubmF2aWdhdGlvbl9fd3JhcCB7XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1sYW5kc2NhcGUtZG93bicpIHtcclxuXHRcdHdpZHRoOiBjYWxjKDEwMCUgLSAyNTBweCk7XHJcblx0fVxyXG5cdEBpbmNsdWRlIG1lZGlhKCdwaG9uZScpIHtcclxuXHRcdHdpZHRoOiAxMDAlO1xyXG5cdH1cclxuXHJcblx0d2lkdGg6IGNhbGMoMTAwJSAtIDQwMHB4KTtcclxufVxyXG5cclxuLyoqXHJcbiAqIFZpZXcgbWVudS5cclxuICovXHJcblxyXG4ubmF2aWdhdGlvbl9fdmlldyB7XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1wb3J0cmFpdC1kb3duJykge1xyXG5cdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRwYWRkaW5nOiAwIDAgNTBweCAwO1xyXG5cdH1cclxuXHRAaW5jbHVkZSBtZWRpYSgncGhvbmUnKSB7XHJcblx0XHRwYWRkaW5nOiAwIDAgMjBweCAwO1xyXG5cdH1cclxuXHJcblx0d2lkdGg6IDUwJTtcclxuXHRwYWRkaW5nLXJpZ2h0OiAyNXB4O1xyXG59XHJcblxyXG4ubmF2aWdhdGlvbl9fdmlldy1tZW51IHtcclxuXHRAaW5jbHVkZSBtZWRpYSgncGhvbmUnKSB7XHJcblx0XHRtYXJnaW4tdG9wOiAxNXB4O1xyXG5cdH1cclxuXHJcblx0bWFyZ2luLXRvcDogNTBweDtcclxuXHJcblx0PiBsaSB7XHJcblx0XHRAaW5jbHVkZSBtZWRpYSgncGhvbmUnKSB7XHJcblx0XHRcdG1hcmdpbi1ib3R0b206IDA7XHJcblx0XHR9XHJcblxyXG5cdFx0ZGlzcGxheTogZmxleDtcclxuXHRcdG1hcmdpbi1ib3R0b206IDEwcHg7XHJcblxyXG5cdFx0PiBhIHtcclxuXHRcdFx0QGluY2x1ZGUgbWVkaWEoJ3Bob25lJykge1xyXG5cdFx0XHRcdHdpZHRoOiBjYWxjKDEwMCUgLSAyMHB4KTtcclxuXHRcdFx0fVxyXG5cclxuXHRcdFx0QGluY2x1ZGUgZm9udCgyNXB4LCAyOXB4KTtcclxuXHRcdFx0ZGlzcGxheTogZmxleDtcclxuXHRcdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRcdFx0cGFkZGluZzogMjBweDtcclxuXHRcdFx0Y29sb3I6ICRibHVlLWxhZ29vbi0xMDA7XHJcblx0XHRcdGZvbnQtd2VpZ2h0OiBib2xkO1xyXG5cdFx0XHRsZXR0ZXItc3BhY2luZzogMC42OXB4O1xyXG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuXHRcdFx0dHJhbnNpdGlvbjogYWxsIDI1MG1zIGVhc2U7XHJcblx0XHRcdHdvcmQtYnJlYWs6IGJyZWFrLWFsbDtcclxuXHJcblx0XHRcdHN2ZyB7XHJcblx0XHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdFx0XHRcdHdpZHRoOiAyNnB4O1xyXG5cdFx0XHRcdGhlaWdodDogMjNweDtcclxuXHRcdFx0XHRtYXJnaW4tcmlnaHQ6IDIwcHg7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHJcblx0XHQmOmhvdmVyLFxyXG5cdFx0Ji5jdXJyZW50LW1lbnUtaXRlbSB7XHJcblx0XHRcdGEge1xyXG5cdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZS0xMDA7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHJcblx0XHQmOmxhc3Qtb2YtdHlwZSB7XHJcblx0XHRcdG1hcmdpbi1ib3R0b206IDA7XHJcblx0XHR9XHJcblx0fVxyXG59XHJcblxyXG5cclxuXHJcbi8qKlxyXG4gKiBUaGVtZSBtZW51LlxyXG4gKi9cclxuXHJcbi5uYXZpZ2F0aW9uX190aGVtZXMge1xyXG5cdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtcG9ydHJhaXQtZG93bicpIHtcclxuXHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0cGFkZGluZzogMCAwIDUwcHggMDtcclxuXHR9XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3Bob25lJykge1xyXG5cdFx0cGFkZGluZzogMCAwIDIwcHggMDtcclxuXHR9XHJcblxyXG5cdHdpZHRoOiA1MCU7XHJcblx0cGFkZGluZy1yaWdodDogMjVweDtcclxufVxyXG5cclxuLm5hdmlnYXRpb25fX3RoZW1lcy1tZW51IHtcclxuXHRAaW5jbHVkZSBtZWRpYSgncGhvbmUnKSB7XHJcblx0XHRtYXJnaW4tdG9wOiAxNXB4O1xyXG5cdH1cclxuXHJcblx0bWFyZ2luLXRvcDogNTBweDtcclxuXHJcblx0PiBsaSB7XHJcblx0XHRAaW5jbHVkZSBtZWRpYSgncGhvbmUnKSB7XHJcblx0XHRcdHdpZHRoOiBjYWxjKDEwMCUgLSAyMHB4KTtcclxuXHRcdH1cclxuXHRcdEBpbmNsdWRlIG1lZGlhKCdwaG9uZScpIHtcclxuXHRcdFx0bWFyZ2luLWJvdHRvbTogMDtcclxuXHRcdH1cclxuXHJcblx0XHRkaXNwbGF5OiBibG9jaztcclxuXHRcdG1hcmdpbi1ib3R0b206IDEwcHg7XHJcblx0XHR3aWR0aDogZml0LWNvbnRlbnQ7XHJcblxyXG5cdFx0PiBhIHtcclxuXHRcdFx0QGluY2x1ZGUgZm9udCgyNXB4LCAyOXB4KTtcclxuXHRcdFx0ZGlzcGxheTogZmxleDtcclxuXHRcdFx0cGFkZGluZzogMjBweDtcclxuXHRcdFx0Y29sb3I6ICRibHVlLWxhZ29vbi0xMDA7XHJcblx0XHRcdGZvbnQtd2VpZ2h0OiBib2xkO1xyXG5cdFx0XHRsZXR0ZXItc3BhY2luZzogMC42OXB4O1xyXG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuXHRcdFx0dHJhbnNpdGlvbjogYWxsIDI1MG1zIGVhc2U7XHJcblx0XHRcdHdvcmQtYnJlYWs6IGJyZWFrLWFsbDtcclxuXHJcblx0XHRcdHN2ZyB7XHJcblx0XHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdFx0XHRcdHRvcDogNHB4O1xyXG5cdFx0XHRcdHdpZHRoOiAxNHB4O1xyXG5cdFx0XHRcdGhlaWdodDogMjFweDtcclxuXHRcdFx0XHRtYXJnaW4tbGVmdDogMTBweDtcclxuXHRcdFx0XHR0cmFuc2l0aW9uOiBhbGwgNTAwbXMgZWFzZTtcclxuXHRcdFx0fVxyXG5cclxuXHRcdFx0Jjpob3ZlciB7XHJcblx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJHdoaXRlLTEwMDtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cclxuXHRcdCYuaXMtYWN0aXZlIHtcclxuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJHdoaXRlLTEwMDtcclxuXHJcblx0XHRcdHN2ZyB7XHJcblx0XHRcdFx0dHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cclxuXHRcdCYuY3VycmVudC1tZW51LWl0ZW0ge1xyXG5cdFx0XHRhIHtcclxuXHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGUtMTAwO1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblxyXG5cdFx0JjpsYXN0LW9mLXR5cGUge1xyXG5cdFx0XHRtYXJnaW4tYm90dG9tOiAwO1xyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0LnN1Ym1lbnUtY29udGFpbmVyIHtcclxuXHRcdGRpc3BsYXk6IG5vbmU7XHJcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGUtMTAwO1xyXG5cclxuXHRcdC5zdWJtZW51IHtcclxuXHRcdFx0QGluY2x1ZGUgbWVkaWEoJ3Bob25lJykge1xyXG5cdFx0XHRcdG1hcmdpbi10b3A6IC0xMHB4O1xyXG5cdFx0XHR9XHJcblxyXG5cdFx0XHRtYXJnaW4tdG9wOiAxNXB4O1xyXG5cdFx0XHRwYWRkaW5nOiAwIDIwcHggMjBweCAyMHB4O1xyXG5cclxuXHRcdFx0PiBsaSB7XHJcblx0XHRcdFx0bWFyZ2luLXRvcDogMTBweDtcclxuXHJcblx0XHRcdFx0PiBhIHtcclxuXHRcdFx0XHRcdEBpbmNsdWRlIGZvbnQoMjBweCwgMjRweCk7XHJcblx0XHRcdFx0XHRmb250LXdlaWdodDogYm9sZDtcclxuXHRcdFx0XHRcdGNvbG9yOiAkYmx1ZS1sYWdvb24tNTA7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG59XHJcblxyXG5cclxuLyoqXHJcbiAqIE1haW4gbWVudS5cclxuICovXHJcblxyXG4ubmF2aWdhdGlvbl9fbWFpbiB7XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1sYW5kc2NhcGUtZG93bicpIHtcclxuXHRcdHdpZHRoOiAyMDBweDtcclxuXHRcdG1hcmdpbjogODVweCAwIDAgNTBweDtcclxuXHR9XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3Bob25lJykge1xyXG5cdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRtYXJnaW46IDA7XHJcblx0XHRwYWRkaW5nOiA1MHB4IDIwcHg7XHJcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGUtMTAwO1xyXG5cdH1cclxuXHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdHdpZHRoOiAzMDBweDtcclxuXHRtYXJnaW46IDg1cHggMCAwIDEwMHB4O1xyXG5cdHBhZGRpbmc6IDUwcHggMDtcclxuXHJcblx0JjpiZWZvcmUge1xyXG5cdFx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1sYW5kc2NhcGUtZG93bicpIHtcclxuXHRcdFx0bGVmdDogLTUwcHg7XHJcblx0XHR9XHJcblx0XHRAaW5jbHVkZSBtZWRpYSgncGhvbmUnKSB7XHJcblx0XHRcdHRvcDogMDtcclxuXHRcdFx0bGVmdDogLTIwcHg7XHJcblx0XHRcdHdpZHRoOiBjYWxjKDEwMCUgKyA0MHB4KTtcclxuXHRcdFx0aGVpZ2h0OiAxMDAlO1xyXG5cdFx0XHRtaW4taGVpZ2h0OiAxMDAlO1xyXG5cdFx0XHRib3JkZXItcmFkaXVzOiAwO1xyXG5cdFx0fVxyXG5cclxuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdHRvcDogMDtcclxuXHRcdGxlZnQ6IC0xMDBweDtcclxuXHRcdHdpZHRoOiA5OTlweDtcclxuXHRcdGhlaWdodDogMTAwJTtcclxuXHRcdG1pbi1oZWlnaHQ6IGNhbGMoMTAwdmggLSAxOTVweCk7XHJcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGUtMTAwO1xyXG5cdFx0Ym9yZGVyLXJhZGl1czogNTBweCAwIDAgMDtcclxuXHRcdHotaW5kZXg6IDI7XHJcblx0XHRjb250ZW50OiAnJztcclxuXHR9XHJcblxyXG5cdCoge1xyXG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdFx0ei1pbmRleDogMjtcclxuXHR9XHJcbn1cclxuXHJcbi5uYXZpZ2F0aW9uX19tYWluLWNvbnRhaW5lciB7XHJcblx0JjpiZWZvcmUge1xyXG5cdFx0QGluY2x1ZGUgbWVkaWEoJ3Bob25lJykge1xyXG5cdFx0XHRkaXNwbGF5OiBub25lO1xyXG5cdFx0fVxyXG5cclxuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdHRvcDogLTI0NXB4O1xyXG5cdFx0bGVmdDogMDtcclxuXHRcdGhlaWdodDogMTAwdmg7XHJcblx0XHR3aWR0aDogOTk5cHg7XHJcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGUtMTAwO1xyXG5cdFx0Y29udGVudDogJyc7XHJcblx0XHR6LWluZGV4OiAwO1xyXG5cdH1cclxuXHJcblx0JjphZnRlciB7XHJcblx0XHRAaW5jbHVkZSBtZWRpYSgncGhvbmUnKSB7XHJcblx0XHRcdGRpc3BsYXk6IG5vbmU7XHJcblx0XHR9XHJcblxyXG5cdFx0dG9wOiAtMTIxcHg7XHJcblx0XHRsZWZ0OiAxMHB4O1xyXG5cdFx0aGVpZ2h0OiA3NXB4O1xyXG5cdH1cclxufVxyXG5cclxuLm5hdmlnYXRpb25fX21haW4tbWVudSB7XHJcblxyXG5cdD4gbGkge1xyXG5cdFx0QGluY2x1ZGUgbWVkaWEoJ3Bob25lJykge1xyXG5cdFx0XHRtYXJnaW4tYm90dG9tOiAzNXB4O1xyXG5cdFx0fVxyXG5cclxuXHRcdG1hcmdpbi1ib3R0b206IDQwcHg7XHJcblxyXG5cdFx0PiBhIHtcclxuXHRcdFx0QGluY2x1ZGUgZm9udCgyMHB4LCAyNHB4KTtcclxuXHRcdFx0Y29sb3I6ICRncmV5LTIwMDtcclxuXHRcdFx0Zm9udC13ZWlnaHQ6IGJvbGQ7XHJcblx0XHRcdGxldHRlci1zcGFjaW5nOiAwLjU2cHg7XHJcblx0XHRcdHRyYW5zaXRpb246IGFsbCAyNTBtcyBlYXNlO1xyXG5cclxuXHRcdFx0c3ZnIHtcclxuXHRcdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0XHRcdFx0dG9wOiAycHg7XHJcblx0XHRcdFx0d2lkdGg6IDEwcHg7XHJcblx0XHRcdFx0aGVpZ2h0OiAxNXB4O1xyXG5cdFx0XHRcdG1hcmdpbi1sZWZ0OiAxMHB4O1xyXG5cdFx0XHRcdHRyYW5zaXRpb246IGFsbCA1MDBtcyBlYXNlO1xyXG5cdFx0XHR9XHJcblxyXG5cdFx0XHQmOmhvdmVyIHtcclxuXHRcdFx0XHRjb2xvcjogJGJsdWUtbGFnb29uLTEwMDtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cclxuXHRcdCYuaXMtYWN0aXZlIHtcclxuXHRcdFx0YSB7XHJcblx0XHRcdFx0Y29sb3I6ICRibHVlLWxhZ29vbi0xMDA7XHJcblx0XHRcdH1cclxuXHJcblx0XHRcdHN2ZyB7XHJcblx0XHRcdFx0dHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cclxuXHRcdCYuY3VycmVudC1tZW51LWl0ZW0ge1xyXG5cdFx0XHRhIHtcclxuXHRcdFx0XHRjb2xvcjogJGJsdWUtbGFnb29uLTEwMDtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cclxuXHRcdCY6bGFzdC1vZi10eXBlIHtcclxuXHRcdFx0bWFyZ2luLWJvdHRvbTogMDtcclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdC5zdWJtZW51LWNvbnRhaW5lciB7XHJcblx0XHRkaXNwbGF5OiBub25lO1xyXG5cclxuXHRcdC5zdWJtZW51IHtcclxuXHRcdFx0PiBsaSB7XHJcblx0XHRcdFx0bWFyZ2luLXRvcDogMTBweDtcclxuXHJcblx0XHRcdFx0PiBhIHtcclxuXHRcdFx0XHRcdEBpbmNsdWRlIGZvbnQoMTZweCwgMjJweCk7XHJcblx0XHRcdFx0XHRmb250LXdlaWdodDogYm9sZDtcclxuXHRcdFx0XHRcdGNvbG9yOiAkZ3JleS0xNTA7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG59XHJcblxyXG5cclxuLyoqXHJcbiAqIERpc2FibGUgc2Nyb2xsLlxyXG4gKi9cclxuXHJcbi5ib2R5LmlzLWFjdGl2ZSB7XHJcblx0b3ZlcmZsb3c6IGhpZGRlbjtcclxuXHJcblx0LmhlYWRlcjo6YmVmb3JlIHtcclxuXHRcdGJvdHRvbTogMDtcclxuXHR9XHJcblxyXG5cdC5oZWFkZXJfX21lbnUtYnV0dG9uIHtcclxuXHRcdHotaW5kZXg6IDEwMDtcclxuXHR9XHJcbn1cclxuIiwiLnNlYXJjaC1mb3JtLWludHJvZHVjdGlvbiB7XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1sYW5kc2NhcGUtZG93bicpIHtcclxuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdHdpZHRoOiBjYWxjKDEwMHZ3IC0gMTAwcHgpO1xyXG5cdFx0aGVpZ2h0OiAxMDAlO1xyXG5cdH1cclxuXHRAaW5jbHVkZSBtZWRpYSgndGFibGV0LXBvcnRyYWl0LWRvd24nKSB7XHJcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0XHR3aWR0aDogMTAwJTtcclxuXHRcdGhlaWdodDogYXV0bztcclxuXHR9XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3Bob25lJykge1xyXG5cdFx0cGFkZGluZzogMjBweDtcclxuXHR9XHJcblxyXG5cdHBhZGRpbmc6IDUwcHg7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogJHdoaXRlLTEwMDtcclxufVxyXG5cclxuLnNlYXJjaC1mb3JtLWludHJvZHVjdGlvbl9fd3JhcCB7XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1sYW5kc2NhcGUtZG93bicpIHtcclxuXHRcdG1heC13aWR0aDogNjE1cHg7XHJcblx0XHRtYXJnaW46IDAgYXV0bztcclxuXHR9XHJcbn1cclxuXHJcbi5zZWFyY2gtZm9ybS1pbnRyb2R1Y3Rpb25fX3RleHQge1xyXG5cdG1hcmdpbjogMjBweCAwO1xyXG59XHJcblxyXG4uc2VhcmNoLWZvcm0taW50cm9kdWN0aW9uX19mb3JtIHtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0bWFyZ2luLWJvdHRvbTogMjBweDtcclxuXHJcblx0LnNlYXJjaC1mb3JtX19pbnB1dCB7XHJcblx0XHRib3JkZXI6IDNweCBzb2xpZCAkd2hpdGUtc21va2UtMTAwO1xyXG5cdFx0Zm9udC1zdHlsZTogaXRhbGljO1xyXG5cdH1cclxufVxyXG5cclxuLnNlYXJjaC1mb3JtLWludHJvZHVjdGlvbl9fYnVsbGV0cyB7XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3Bob25lJykge1xyXG5cdFx0ZGlzcGxheTogbm9uZTtcclxuXHR9XHJcbn1cclxuXHJcbi5zZWFyY2gtZm9ybS1pbnRyb2R1Y3Rpb25fX2J1bGxldC1oZWFkIHtcclxuXHRmb250LXdlaWdodDogMzAwO1xyXG5cclxuXHQ+IHN2ZyB7XHJcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0XHR0b3A6IDZweDtcclxuXHRcdHdpZHRoOiAyMHB4O1xyXG5cdFx0aGVpZ2h0OiAxOHB4O1xyXG5cdFx0bWFyZ2luLXJpZ2h0OiA1cHg7XHJcblx0fVxyXG59XHJcblxyXG4uc2VhcmNoLWZvcm0taW50cm9kdWN0aW9uX19idWxsZXQtaWNvbiB7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cclxuXHRzdmcge1xyXG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdFx0dG9wOiAycHg7XHJcblx0XHR3aWR0aDogMTRweDtcclxuXHRcdGhlaWdodDogMTNweDtcclxuXHRcdG1hcmdpbi1sZWZ0OiA1cHg7XHJcblx0fVxyXG5cclxuXHQmOmhvdmVyIHtcclxuXHRcdCsgLnNlYXJjaC1mb3JtLWludHJvZHVjdGlvbl9fYnVsbGV0LWhvdmVyIHtcclxuXHRcdFx0ZGlzcGxheTogYmxvY2s7XHJcblx0XHR9XHJcblx0fVxyXG59XHJcblxyXG4uc2VhcmNoLWZvcm0taW50cm9kdWN0aW9uX19idWxsZXQtaG92ZXIge1xyXG5cdGRpc3BsYXk6IG5vbmU7XHJcblx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdHRvcDogMTAwJTtcclxuXHRsZWZ0OiBjYWxjKDEwMCUgLSAxNXB4KTtcclxuXHR3aWR0aDogMzQwcHg7XHJcblx0cGFkZGluZzogMjBweDtcclxuXHRiYWNrZ3JvdW5kOiAkYmx1ZS1wYXR0ZW5zLTEwMDtcclxuXHRib3JkZXItcmFkaXVzOiAxN3B4O1xyXG59XHJcblxyXG4uc2VhcmNoLWZvcm0taW50cm9kdWN0aW9uX19idWxsZXQtaG92ZXItdGl0bGUge1xyXG5cdEBpbmNsdWRlIGZvbnQoMTZweCwgMjJweCk7XHJcblx0bWFyZ2luLWJvdHRvbTogMTBweDtcclxuXHRmb250LXdlaWdodDogYm9sZDtcclxuXHRjb2xvcjogJGJsdWUtbGFnb29uLTEwMDtcclxufVxyXG5cclxuLnNlYXJjaC1mb3JtLWludHJvZHVjdGlvbl9fYnVsbGV0LWhvdmVyLXRleHQge1xyXG5cdEBpbmNsdWRlIGZvbnQoMTNweCwgMThweCk7XHJcblx0Zm9udC13ZWlnaHQ6IDMwMDtcclxuXHRjb2xvcjogJGdyZXktMzAwO1xyXG59XHJcblxyXG4uc2VhcmNoLWZvcm0taW50cm9kdWN0aW9uX19idWxsZXQge1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcblx0JjpsYXN0LW9mLXR5cGUge1xyXG5cdFx0LnNlYXJjaC1mb3JtLWludHJvZHVjdGlvbl9fYnVsbGV0LWhvdmVyIHtcclxuXHRcdFx0cmlnaHQ6IC01cHg7XHJcblx0XHRcdGxlZnQ6IGF1dG87XHJcblx0XHR9XHJcblx0fVxyXG59IiwiLnNlYXJjaC1mb3JtIHtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcbn1cclxuXHJcbi5zZWFyY2gtZm9ybV9faW5wdXQge1xyXG5cdEBpbmNsdWRlIGZvbnQoMTVweCwgMzBweCk7XHJcblx0d2lkdGg6IDEwMCU7XHJcblx0aGVpZ2h0OiA0MHB4O1xyXG5cdHBhZGRpbmc6IDVweCAyMHB4O1xyXG5cdGJhY2tncm91bmQ6ICR3aGl0ZS0xMDA7XHJcblx0Ym9yZGVyOiAycHggc29saWQgJHdoaXRlLXNtb2tlLTEwMDtcclxuXHRib3JkZXItcmFkaXVzOiA1cHg7XHJcblx0Zm9udC13ZWlnaHQ6IDMwMDtcclxuXHRjb2xvcjogJGdyZXktMjAwO1xyXG59XHJcblxyXG4uc2VhcmNoLWZvcm1fX3N1Ym1pdCB7XHJcblx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdHRvcDogMDtcclxuXHRyaWdodDogMDtcclxuXHR3aWR0aDogNDBweDtcclxuXHRoZWlnaHQ6IDQwcHg7XHJcblxyXG5cdHN2ZyB7XHJcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0XHR0b3A6IDJweDtcclxuXHRcdHdpZHRoOiAxNXB4O1xyXG5cdFx0aGVpZ2h0OiAxNnB4O1xyXG5cdFx0Y29sb3I6ICRibGFjay0xMDA7XHJcblx0XHR0cmFuc2l0aW9uOiBhbGwgMjUwbXMgZWFzZTtcclxuXHR9XHJcblxyXG5cdCY6aG92ZXIge1xyXG5cdFx0c3ZnIHtcclxuXHRcdFx0Y29sb3I6ICRibHVlLWxhZ29vbi0xMDA7XHJcblx0XHR9XHJcblx0fVxyXG59XHJcbiIsIi5zZWFyY2gtcmVzdWx0cyB7XHJcblx0bWFyZ2luOiA4MHB4IDA7XHJcbn1cclxuXHJcbi5zZWFyY2gtcmVzdWx0c19fdGl0bGUge1xyXG5cdG1hcmdpbi1ib3R0b206IDUwcHg7XHJcbn1cclxuXHJcbi5zZWFyY2gtcmVzdWx0c19fd29yZCB7XHJcblx0QGluY2x1ZGUgZm9udCgyNXB4LCAyOXB4KTtcclxuXHRtYXJnaW4tYm90dG9tOiAxMDBweDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGxldHRlci1zcGFjaW5nOiAwLjY5cHg7XHJcblx0Zm9udC13ZWlnaHQ6IGJvbGQ7XHJcblxyXG5cdC5pcy1sYWJlbCB7XHJcblx0XHRjb2xvcjogJGdyZXktMjAwO1xyXG5cdH1cclxuXHJcblx0LmlzLXZhbHVlIHtcclxuXHRcdG1hcmdpbi1sZWZ0OiAzMHB4O1xyXG5cdFx0cGFkZGluZzogMTBweCAyMHB4O1xyXG5cdFx0YmFja2dyb3VuZC1jb2xvcjogJHdoaXRlLXNtb2tlLTEwMDtcclxuXHRcdGNvbG9yOiAkYmx1ZS1sYWdvb24tMTAwO1xyXG5cdH1cclxufVxyXG5cclxuLnNlYXJjaC1yZXN1bHRzX19uby1yZXN1bHRzIHtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHR3aWR0aDogMTAwJTtcclxuXHRwYWRkaW5nOiAzNXB4O1xyXG5cdGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZS1zbW9rZS0xMDA7XHJcblx0Y29sb3I6ICRibHVlLWxhZ29vbi0xMDA7XHJcbn0iLCIuc29jaWFsLXNoYXJlIHtcclxuXHRcclxufVxyXG5cclxuLnNvY2lhbC1zaGFyZV9fdGl0bGUge1xyXG5cdG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbn1cclxuXHJcbi5zb2NpYWwtc2hhcmVfX2xpbmtzIHtcclxuXHRzdmcge1xyXG5cdFx0d2lkdGg6IDI4cHg7XHJcblx0XHRoZWlnaHQ6IDMwcHg7XHJcblx0XHRjb2xvcjogJGdyZXktMTAwO1xyXG5cdFx0dHJhbnNpdGlvbjogYWxsIDI1MG1zIGVhc2U7XHJcblx0fVxyXG5cclxuXHRhIHtcclxuXHRcdGRpc3BsYXk6IGJsb2NrO1xyXG5cdFx0bWFyZ2luLXJpZ2h0OiAzMHB4O1xyXG5cclxuXHRcdCY6bGFzdC1vZi10eXBlIHtcclxuXHRcdFx0bWFyZ2luLXJpZ2h0OiAwO1xyXG5cdFx0fVxyXG5cclxuXHRcdCY6aG92ZXIge1xyXG5cdFx0XHRzdmcge1xyXG5cdFx0XHRcdGNvbG9yOiAkYmx1ZS0xMDA7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcbn1cclxuIiwiLmNhaGllci1wb3B1cCB7XHJcbiAgZGlzcGxheTogbm9uZTtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgd2lkdGg6IGF1dG87XHJcbiAgbWF4LXdpZHRoOiA2NTBweDtcclxuICBtYXJnaW46IDAgYXV0bztcclxuICBiYWNrZ3JvdW5kOiAjRjlGOUY5O1xyXG4gIGJveC1zaGFkb3c6IDAgMCA1MHB4IDAgcmdiYSgwLDAsMCwuMyk7XHJcblxyXG4gICYuaXMtYWN0aXZlIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gIH1cclxufVxyXG5cclxuLmNhaGllci1wb3B1cF9fY29udGVudCB7XHJcbiAgcGFkZGluZzogNDBweDtcclxufVxyXG5cclxuLmNhaGllci1wb3B1cF9fdmFsaWRhdGlvbiB7XHJcbiAgZGlzcGxheTogbm9uZTtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgbWFyZ2luOiAwcHg7XHJcbiAgbWFyZ2luLXRvcDogMTBweDtcclxuICBwYWRkaW5nOiAyNXB4IDI1cHggMjVweCA3NXB4O1xyXG4gIGJhY2tncm91bmQ6IHJnYmEoMTk1LCAwLCAwLCAwLjA4KTtcclxuICBjb2xvcjogI2MzMDAwMDtcclxuXHJcbiAgJi5pcy1hY3RpdmUge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgfVxyXG59IiwiLmFydGljbGUtc2luZ2xlIHtcclxuXHQud3JhcHBlciB7XHJcblx0XHRAaW5jbHVkZSBtZWRpYSgndGFibGV0LXBvcnRyYWl0LWRvd24nKSB7XHJcblx0XHRcdG1hcmdpbi10b3A6IC0xMDBweDtcclxuXHRcdH1cclxuXHJcblx0XHRtYXJnaW4tdG9wOiAtMjAwcHg7XHJcblx0fVxyXG59XHJcblxyXG4uYXJ0aWNsZS1zaW5nbGVfX2hlYWRlciB7XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1wb3J0cmFpdC1kb3duJykge1xyXG5cdFx0aGVpZ2h0OiA0MjBweDtcclxuXHR9XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3Bob25lJykge1xyXG5cdFx0aGVpZ2h0OiAyNTBweDtcclxuXHR9XHJcblxyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHR3aWR0aDogMTAwJTtcclxuXHRoZWlnaHQ6IDYyMHB4O1xyXG5cdHotaW5kZXg6IDE7XHJcbn1cclxuXHJcbi5hcnRpY2xlLXNpbmdsZV9fYm9keSB7XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1wb3J0cmFpdC1kb3duJykge1xyXG5cdFx0cGFkZGluZzogNTBweCA1MHB4IDEwMHB4IDUwcHg7XHJcblx0fVxyXG5cdEBpbmNsdWRlIG1lZGlhKCdwaG9uZScpIHtcclxuXHRcdHBhZGRpbmc6IDI1cHggMCAxMDBweCAwO1xyXG5cdH1cclxuXHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdG1heC13aWR0aDogMTAyNXB4O1xyXG5cdHBhZGRpbmc6IDQwcHggMTAwcHggMTUwcHggMTAwcHg7XHJcblx0Ym9yZGVyLXJhZGl1czogMCA1MHB4IDUwcHggMDtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGUtMTAwO1xyXG5cdHotaW5kZXg6IDI7XHJcblxyXG5cdCY6YWZ0ZXIge1xyXG5cdFx0QGluY2x1ZGUgbWVkaWEoJ3Bob25lJykge1xyXG5cdFx0XHRkaXNwbGF5OiBub25lO1xyXG5cdFx0fVxyXG5cclxuXHRcdHRvcDogLTc3cHg7XHJcblx0XHRyaWdodDogLTYycHg7XHJcblx0XHR0cmFuc2Zvcm06IHJvdGF0ZSgyNzBkZWcpO1xyXG5cdH1cclxuXHJcblx0JjpiZWZvcmUge1xyXG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0dG9wOiAwO1xyXG5cdFx0cmlnaHQ6IDEwMCU7XHJcblx0XHR3aWR0aDogMTAwdnc7XHJcblx0XHRoZWlnaHQ6IDEwMCU7XHJcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGUtMTAwO1xyXG5cdFx0Y29udGVudDogJyc7XHJcblx0XHR6LWluZGV4OiAtMTtcclxuXHR9XHJcbn1cclxuXHJcbi5hcnRpY2xlLXNpbmdsZV9faGVhZCB7XHJcblx0bWFyZ2luLWJvdHRvbTogNDVweDtcclxuXHJcblx0PiBkaXYge1xyXG5cdFx0bWFyZ2luLXJpZ2h0OiA0NXB4O1xyXG5cdH1cclxufVxyXG5cclxuLmFydGljbGUtc2luZ2xlX19hdXRob3JzIHtcclxuXHRkaXNwbGF5OiBibG9jaztcclxuXHRtYXJnaW46IDQwcHggMDtcclxufVxyXG5cclxuLmFydGljbGUtc2luZ2xlX190aXRsZSB7XHJcblx0bWFyZ2luLWJvdHRvbTogMjBweDtcclxufVxyXG5cclxuLmFydGljbGUtc2luZ2xlX19lZGl0b3Ige1xyXG5cdHA6bnRoLWNoaWxkKDEpOjpmaXJzdC1sZXR0ZXIge1xyXG5cdFx0QGluY2x1ZGUgZm9udCg4MHB4LCA3NXB4KTtcclxuXHRcdGNvbG9yOiAkYmx1ZS1sYWdvb24tMTAwO1xyXG5cdFx0Zm9udC13ZWlnaHQ6IGJvbGQ7XHJcblx0XHRsZXR0ZXItc3BhY2luZzogMi4yMnB4O1xyXG5cdFx0b3BhY2l0eTogMC40O1xyXG5cdFx0ZmxvYXQ6IGxlZnQ7XHJcblx0XHRtYXJnaW4tdG9wOiAtMTVweDtcclxuXHRcdG1hcmdpbi1yaWdodDogNXB4O1xyXG5cdH1cclxuXHJcblx0JjphZnRlciB7XHJcblx0XHRAaW5jbHVkZSBtZWRpYSgncGhvbmUnKSB7XHJcblx0XHRcdHdpZHRoOiAxNTZweDtcclxuXHRcdFx0bGVmdDogYXV0bztcclxuXHRcdFx0cmlnaHQ6IDEwJTtcclxuXHRcdFx0YmFja2dyb3VuZDogdXJsKCAnLi8uLi9pbWFnZXMvbGluZS1hcnRpY2xlLXNpbmdsZS1tb2JpbGUuc3ZnJyApIG5vLXJlcGVhdDtcclxuXHRcdH1cclxuXHJcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHR3aWR0aDogNjU0cHg7XHJcblx0XHRoZWlnaHQ6IDEwMCU7XHJcblx0XHR0b3A6IDEwJTtcclxuXHRcdGxlZnQ6IDI0JTtcclxuXHRcdGJhY2tncm91bmQ6IHVybCggJy4vLi4vaW1hZ2VzL2xpbmUtYXJ0aWNsZS1zaW5nbGUuc3ZnJyApO1xyXG5cdFx0Y29udGVudDogJyc7XHJcblx0XHR6LWluZGV4OiAtMTtcclxuXHR9XHJcbn1cclxuIiwiLmNhaGllci1hdXRob3JzIHtcclxuXHRAaW5jbHVkZSBtZWRpYSgndGFibGV0LXBvcnRyYWl0LWRvd24nKSB7XHJcblx0XHRtYXJnaW4tYm90dG9tOiAxNTBweDtcclxuXHR9XHJcblxyXG5cdG1hcmdpbi1ib3R0b206IDEwMHB4O1xyXG5cdHBhZGRpbmctdG9wOiA1MHB4O1xyXG5cdGJhY2tncm91bmQtY29sb3I6ICRibHVlLXBhdHRlbnMtMTAwO1xyXG59XHJcblxyXG4uY2FoaWVyLWF1dGhvcnNfX3RleHQge1xyXG5cdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtbGFuZHNjYXBlLWRvd24nKSB7XHJcblx0XHR3aWR0aDogNTAlO1xyXG5cdFx0cGFkZGluZy1yaWdodDogMDtcclxuXHR9XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1wb3J0cmFpdC1kb3duJykge1xyXG5cdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRwYWRkaW5nLWJvdHRvbTogNTBweDtcclxuXHR9XHJcblxyXG5cdHdpZHRoOiA1NSU7XHJcblx0cGFkZGluZy1yaWdodDogNTBweDtcclxufVxyXG5cclxuLmNhaGllci1hdXRob3JzX190aXRsZSB7XHJcblx0bWFyZ2luLWJvdHRvbTogMzBweDtcclxufVxyXG5cclxuLmNhaGllci1hdXRob3JzX19lZGl0b3Ige1xyXG5cclxufVxyXG5cclxuLmNhaGllci1hdXRob3JzX19hdXRob3JzIHtcclxuXHRAaW5jbHVkZSBtZWRpYSgndGFibGV0LWxhbmRzY2FwZS1kb3duJykge1xyXG5cdFx0d2lkdGg6IGNhbGMoNTAlIC0gNzBweCk7XHJcblx0fVxyXG5cdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtcG9ydHJhaXQtZG93bicpIHtcclxuXHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0bWFyZ2luOiAwO1xyXG5cdFx0cGFkZGluZzogNDBweCAwIDAgMDtcclxuXHRcdGJvcmRlci1yYWRpdXM6IDAgNTBweCAwIDA7XHJcblx0fVxyXG5cclxuXHR3aWR0aDogY2FsYyg0NSUgLSA3MHB4KTtcclxuXHRtYXJnaW4tdG9wOiA3MHB4O1xyXG5cdG1hcmdpbi1sZWZ0OiA3MHB4O1xyXG5cdHBhZGRpbmc6IDUwcHggMCAzMHB4IDMwcHg7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogJHdoaXRlLTEwMDtcclxuXHRib3JkZXItcmFkaXVzOiA1MHB4IDAgMCAwO1xyXG5cclxuXHQmOmFmdGVyIHtcclxuXHRcdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtcG9ydHJhaXQtZG93bicpIHtcclxuXHRcdFx0d2lkdGg6IGNhbGMoMTAwJSArIDEyMHB4KTtcclxuXHRcdFx0aGVpZ2h0OiAxNzBweDtcclxuXHRcdFx0YmFja2dyb3VuZDogdXJsKCAnLi8uLi9pbWFnZXMvZWxlbWVudC0wNi5zdmcnKSByZXBlYXQ7XHJcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZS0xMDA7XHJcblx0XHRcdHRvcDogYXV0bztcclxuXHRcdFx0Ym90dG9tOiAtNzBweDtcclxuXHRcdH1cclxuXHJcblx0XHR0b3A6IC03MHB4O1xyXG5cdFx0bGVmdDogLSA3MHB4O1xyXG5cdFx0dHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcclxuXHR9XHJcblxyXG5cdCY6YmVmb3JlIHtcclxuXHRcdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtcG9ydHJhaXQtZG93bicpIHtcclxuXHRcdFx0ZGlzcGxheTogbm9uZTtcclxuXHRcdH1cclxuXHJcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHR0b3A6IDA7XHJcblx0XHRsZWZ0OiAxMDAlO1xyXG5cdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRoZWlnaHQ6IDEwMCU7XHJcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGUtMTAwO1xyXG5cdFx0Y29udGVudDogJyc7XHJcblx0XHR6LWluZGV4OiAxO1xyXG5cdH1cclxuXHJcblx0PiAuaGVhZGluZyB7XHJcblx0XHRAaW5jbHVkZSBtZWRpYSgndGFibGV0LXBvcnRyYWl0LWRvd24nKSB7XHJcblx0XHRcdHBhZGRpbmc6IDAgMTVweDtcclxuXHRcdH1cclxuXHR9XHJcbn1cclxuXHJcbi5jYWhpZXItYXV0aG9yc19fdGl0bGUge1xyXG5cdG1hcmdpbi1ib3R0b206IDMwcHg7XHJcbn1cclxuXHJcbi5jYWhpZXItYXV0aG9yc19fYXV0aG9yLXdyYXAge1xyXG5cdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtcG9ydHJhaXQtZG93bicpIHtcclxuXHRcdGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZS0xMDA7XHJcblx0XHRwYWRkaW5nOiAwIDE1cHg7XHJcblx0fVxyXG59XHJcblxyXG4uY2FoaWVyLWF1dGhvcnNfX2F1dGhvciB7XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1wb3J0cmFpdC1kb3duJykge1xyXG5cdFx0cGFkZGluZy1ib3R0b206IDIwcHg7XHJcblx0fVxyXG5cclxuXHRib3JkZXItYm90dG9tOiAycHggc29saWQgJGJsdWUtcGF0dGVucy0xMDA7XHJcblxyXG5cdCY6bnRoLWNoaWxkKDEpIHtcclxuXHRcdGJvcmRlci10b3A6IDJweCBzb2xpZCAkYmx1ZS1wYXR0ZW5zLTEwMDtcclxuXHR9XHJcblxyXG5cdCYuaXMtYWN0aXZlIHtcclxuXHRcdC5jYWhpZXItYXV0aG9yc19fYXV0aG9yLWhlYWQgPiBzdmcge1xyXG5cdFx0XHR0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xyXG5cdFx0fVxyXG5cdH1cclxufVxyXG5cclxuLmNhaGllci1hdXRob3JzX19hdXRob3ItaGVhZCB7XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1wb3J0cmFpdC1kb3duJykge1xyXG5cdFx0cGFkZGluZy1ib3R0b206IDA7XHJcblx0fVxyXG5cclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0cGFkZGluZzogMTVweCAwIDIwcHggMDtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblxyXG5cdD4gc3ZnIHtcclxuXHRcdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtcG9ydHJhaXQtZG93bicpIHtcclxuXHRcdFx0ZGlzcGxheTogbm9uZTtcclxuXHRcdH1cclxuXHJcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHR0b3A6IDM3cHg7XHJcblx0XHRyaWdodDogMDtcclxuXHRcdHdpZHRoOiAxMHB4O1xyXG5cdFx0aGVpZ2h0OiAxOHB4O1xyXG5cdFx0bWFyZ2luLXJpZ2h0OiAxNXB4O1xyXG5cdFx0dHJhbnNpdGlvbjogYWxsIDUwMG1zIGVhc2U7XHJcblx0fVxyXG59XHJcblxyXG4uY2FoaWVyLWF1dGhvcnNfX2F1dGhvci1uYW1lIHtcclxuXHRmb250LXdlaWdodDogNzAwO1xyXG5cclxuXHQ+IHN2ZyB7XHJcblx0XHRAaW5jbHVkZSBtZWRpYSgndGFibGV0LXBvcnRyYWl0LWRvd24nKSB7XHJcblx0XHRcdG1hcmdpbi1yaWdodDogNXB4O1xyXG5cdFx0fVxyXG5cclxuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRcdHRvcDogMTBweDtcclxuXHRcdHdpZHRoOiAxNHB4O1xyXG5cdFx0aGVpZ2h0OiAzMHB4O1xyXG5cdFx0bWFyZ2luLXJpZ2h0OiAxNXB4O1xyXG5cdH1cclxufVxyXG5cclxuLmNhaGllci1hdXRob3JzX19hdXRob3ItdGV4dCB7XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1wb3J0cmFpdC1kb3duJykge1xyXG5cdFx0cGFkZGluZzogMCAwIDAgMjVweDtcclxuXHR9XHJcblxyXG5cdGRpc3BsYXk6IG5vbmU7XHJcblx0cGFkZGluZzogMCAwIDIwcHggMzVweDtcclxufVxyXG5cclxuLmNhaGllci1hdXRob3JzX19jYXB0aW9uIHtcclxuXHRAaW5jbHVkZSBtZWRpYSgndGFibGV0LXBvcnRyYWl0LWRvd24nKSB7XHJcblx0XHRwYWRkaW5nOiAwIDE1cHggNDBweCAxNXB4O1xyXG5cdFx0YmFja2dyb3VuZC1jb2xvcjogJHdoaXRlLTEwMDtcclxuXHR9XHJcblxyXG5cdG1hcmdpbi10b3A6IDMwcHg7XHJcbn1cclxuIiwiLmNhaGllci1pdGVtIHtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogJHdoaXRlLTEwMDtcclxuXHRib3JkZXItcmFkaXVzOiA1cHg7XHJcblx0dHJhbnNpdGlvbjogYWxsIDI1MG1zIGVhc2U7XHJcblxyXG5cdCY6YWZ0ZXIge1xyXG5cdFx0cmlnaHQ6IC04cHg7XHJcblx0XHRib3R0b206IC04cHg7XHJcblx0XHRvcGFjaXR5OiAwO1xyXG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVYKDUwJSk7XHJcblx0XHR0cmFuc2l0aW9uOiBhbGwgNTAwbXMgZWFzZTtcclxuXHRcdHotaW5kZXg6IDEwO1xyXG5cdH1cclxuXHJcblx0Jjpob3ZlciB7XHJcblx0XHRAaW5jbHVkZSBtZWRpYSgndGFibGV0LXBvcnRyYWl0LXVwJykge1xyXG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkYmx1ZS0xMDA7XHJcblx0XHRcdGJveC1zaGFkb3c6IDAgMCAxMHB4IDAgJGdyZXktMzA7XHJcblxyXG5cdFx0XHQmOmFmdGVyIHtcclxuXHRcdFx0XHRvcGFjaXR5OiAxO1xyXG5cdFx0XHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcclxuXHRcdFx0fVxyXG5cclxuXHRcdFx0LmNhaGllci1pdGVtX19ob3ZlciB7XHJcblx0XHRcdFx0dG9wOiAwO1xyXG5cdFx0XHR9XHJcblxyXG5cdFx0XHQuY2FoaWVyLWl0ZW1fX2JvZHkge1xyXG5cdFx0XHRcdGJvcmRlcjogM3B4IHNvbGlkICRibHVlLTEwMDtcclxuXHRcdFx0XHRib3JkZXItdG9wOiAwcHg7XHJcblx0XHRcdH1cclxuXHJcblx0XHRcdC5jYWhpZXItaXRlbV9fcHJpY2UsXHJcblx0XHRcdC5jYWhpZXItaXRlbV9fZG93bmxvYWQtbGluayxcclxuXHRcdFx0LmxpbmssXHJcblx0XHRcdC5jYWhpZXItaXRlbV9fZG93bmxvYWQtYnV0dG9uIHtcclxuXHRcdFx0XHRjb2xvcjogJHdoaXRlLTEwMDtcclxuXHRcdFx0XHRvcGFjaXR5OiAxO1xyXG5cclxuXHRcdFx0XHRzdmcge1xyXG5cdFx0XHRcdFx0Y29sb3I6ICR3aGl0ZS0xMDA7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblxyXG5cdFx0XHQubGluazpob3ZlciB7XHJcblx0XHRcdFx0c3ZnIHtcclxuXHRcdFx0XHRcdG1hcmdpbi1sZWZ0OiAyMHB4O1xyXG5cdFx0XHRcdFx0bWFyZ2luLXJpZ2h0OiAtMTBweDtcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHJcblx0XHRcdC5jYWhpZXItaXRlbV9fb3JkZXItYnV0dG9uIHtcclxuXHRcdFx0XHRiYWNrZ3JvdW5kOiAkd2hpdGUtMTAwO1xyXG5cdFx0XHRcdGNvbG9yOiAkYmx1ZS0xMDA7XHJcblx0XHRcdH1cclxuXHJcblx0XHRcdC5jYWhpZXItaXRlbV9fZG93bmxvYWQtYnV0dG9uIHtcclxuXHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkYmx1ZS0xMDA7XHJcblx0XHRcdFx0Ym9yZGVyOiAxcHggc29saWQgJHdoaXRlLTEwMDtcclxuXHRcdFx0XHRvcGFjaXR5OiAxO1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG59XHJcblxyXG4uY2FoaWVyLWl0ZW1fX2ltYWdlIHtcclxuXHRAaW5jbHVkZSBtZWRpYSgndGFibGV0LXBvcnRyYWl0LWRvd24nKSB7XHJcblx0XHRoZWlnaHQ6IDIwMHB4O1xyXG5cdH1cclxuXHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdHdpZHRoOiAxMDAlO1xyXG5cdGhlaWdodDogMzk1cHg7XHJcblx0Ym9yZGVyLXJhZGl1czogNXB4O1xyXG5cdG92ZXJmbG93OiBoaWRkZW47XHJcblx0ei1pbmRleDogMjtcclxufVxyXG5cclxuLmNhaGllci1pdGVtX19ib2R5IHtcclxuXHRAaW5jbHVkZSBtZWRpYSgndGFibGV0LXBvcnRyYWl0LWRvd24nKSB7XHJcblx0XHRwYWRkaW5nOiAzMHB4IDE1cHggMjBweCAxNXB4O1xyXG5cdH1cclxuXHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdG1pbi1oZWlnaHQ6IGNhbGMoMTAwJSAtIDM5MHB4KTtcclxuXHRtYXJnaW4tdG9wOiAtNXB4O1xyXG5cdHBhZGRpbmc6IDM1cHggMzBweCAzMHB4IDMwcHg7XHJcblx0Ym9yZGVyOiAzcHggc29saWQgJGdyZXktNTAwO1xyXG5cdGJvcmRlci10b3A6IDBweDtcclxuXHRib3JkZXItcmFkaXVzOiAwIDAgNXB4IDVweDtcclxuXHR0cmFuc2l0aW9uOiBhbGwgMjUwbXMgZWFzZTtcclxuXHR6LWluZGV4OiAxO1xyXG59XHJcblxyXG4uY2FoaWVyLWl0ZW1fX29yZGVyIHtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdG1hcmdpbi1ib3R0b206IDEwcHg7XHJcbn1cclxuXHJcbi5jYWhpZXItaXRlbV9fcHJpY2Uge1xyXG5cdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtcG9ydHJhaXQtZG93bicpIHtcclxuXHRcdHdpZHRoOiA5NXB4O1xyXG5cdH1cclxuXHJcblx0QGluY2x1ZGUgZm9udCgyMHB4LCAzMHB4KTtcclxuXHR3aWR0aDogMTI1cHg7XHJcblx0Zm9udC13ZWlnaHQ6IGJvbGQ7XHJcblx0Y29sb3I6ICRibHVlLTEwMDtcclxuXHRsZXR0ZXItc3BhY2luZzogMC41NnB4O1xyXG5cdHRyYW5zaXRpb246IGFsbCAyNTBtcyBlYXNlO1xyXG5cclxuXHRzdmcge1xyXG5cdFx0d2lkdGg6IDI2cHg7XHJcblx0XHRoZWlnaHQ6IDMwcHg7XHJcblx0XHRtYXJnaW4tcmlnaHQ6IDVweDtcclxuXHRcdGNvbG9yOiAkYmx1ZS0xMDA7XHJcblx0XHR0cmFuc2l0aW9uOiBhbGwgMjUwbXMgZWFzZTtcclxuXHR9XHJcblxyXG5cdCYuaXMtZGlzYWJsZWQge1xyXG5cdFx0Y29sb3I6ICRibHVlLTIwMCFpbXBvcnRhbnQ7XHJcblxyXG5cdFx0c3ZnIHtcclxuXHRcdFx0Y29sb3I6ICRibHVlLTIwMCFpbXBvcnRhbnQ7XHJcblx0XHR9XHJcblx0fVxyXG59XHJcblxyXG4uY2FoaWVyLWl0ZW1fX29yZGVyLWJ1dHRvbiB7XHJcblx0bWluLXdpZHRoOiAxNTBweDtcclxuXHJcblx0Ji5pcy1kaXNhYmxlZCB7XHJcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkYmx1ZS0yMDAhaW1wb3J0YW50O1xyXG5cdFx0Ym9yZGVyOiAwO1xyXG5cdFx0Y3Vyc29yOiBkZWZhdWx0O1xyXG5cclxuXHRcdCY6aG92ZXIge1xyXG5cdFx0XHRib3JkZXItcmFkaXVzOiAycHg7XHJcblx0XHR9XHJcblx0fVxyXG59XHJcblxyXG4uY2FoaWVyLWl0ZW1fX2Rvd25sb2FkIHtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdG1hcmdpbi1ib3R0b206IDIwcHg7XHJcblx0dHJhbnNpdGlvbjogYWxsIDI1MG1zIGVhc2U7XHJcbn1cclxuXHJcbi5jYWhpZXItaXRlbV9fZG93bmxvYWQtbGluayB7XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1wb3J0cmFpdC1kb3duJykge1xyXG5cdFx0d2lkdGg6IDk1cHg7XHJcblx0fVxyXG5cclxuXHRAaW5jbHVkZSBmb250KDIwcHgsIDMwcHgpO1xyXG5cdHdpZHRoOiAxMjVweDtcclxuXHRjb2xvcjogJGdyZXktNDAwO1xyXG5cdGxldHRlci1zcGFjaW5nOiAwLjU2cHg7XHJcblx0b3BhY2l0eTogMC43O1xyXG5cdHRyYW5zaXRpb246IGFsbCAyNTBtcyBlYXNlO1xyXG5cclxuXHRzdmcge1xyXG5cdFx0d2lkdGg6IDIxcHg7XHJcblx0XHRoZWlnaHQ6IDMwcHg7XHJcblx0XHRtYXJnaW4tcmlnaHQ6IDVweDtcclxuXHRcdGNvbG9yOiAkZ3JleS00MDA7XHJcblx0XHR0cmFuc2l0aW9uOiBhbGwgMjUwbXMgZWFzZTtcclxuXHR9XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBIb3Zlci5cclxuICovXHJcblxyXG4uY2FoaWVyLWl0ZW1fX2hvdmVyIHtcclxuXHRAaW5jbHVkZSBtZWRpYSgndGFibGV0LXBvcnRyYWl0LWRvd24nKSB7XHJcblx0XHRkaXNwbGF5OiBub25lO1xyXG5cdH1cclxuXHJcblx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdHRvcDogLTEwMCU7XHJcblx0d2lkdGg6IDEwMCU7XHJcblx0aGVpZ2h0OiAxMDAlO1xyXG5cdHBhZGRpbmc6IDIwcHggMjBweCAwIDIwcHg7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogJGJsdWUtMTAwO1xyXG5cdGNvbG9yOiAkd2hpdGUtMTAwO1xyXG5cdHRyYW5zaXRpb246IGFsbCA1MDBtcyBlYXNlO1xyXG5cdHotaW5kZXg6IDIwO1xyXG59XHJcblxyXG4uY2FoaWVyLWl0ZW1fX2RhdGUge1xyXG5cdGZvbnQtd2VpZ2h0OiAzMDA7XHJcbn1cclxuXHJcbi5jYWhpZXItaXRlbV9fdGl0bGUge1xyXG5cdG1hcmdpbi10b3A6IDEwcHg7XHJcbn1cclxuXHJcbi5jYWhpZXItaXRlbV9fdGV4dCB7XHJcblx0aGVpZ2h0OiA5MHB4O1xyXG5cdG1hcmdpbjogMjBweCAwIDAgMDtcclxuXHRmb250LXdlaWdodDogMzAwO1xyXG5cdG92ZXJmbG93OiBoaWRkZW47XHJcbn1cclxuXHJcbi5jYWhpZXItaXRlbV9fYXV0aG9ycyB7XHJcblx0bWFyZ2luLXRvcDogMjBweDtcclxuXHRwYWRkaW5nOiAyMHB4IDA7XHJcblx0Ym9yZGVyLXRvcDogMXB4IHNvbGlkICR3aGl0ZS01MDtcclxuXHRib3JkZXItYm90dG9tOiAxcHggc29saWQgJHdoaXRlLTUwO1xyXG59XHJcblxyXG4uY2FoaWVyLWl0ZW1zX19hdXRob3JzLXRpdGxlIHtcclxuXHRtYXJnaW4tYm90dG9tOiA3cHg7XHJcbn1cclxuXHJcbi5jYWhpZXItaXRlbV9fYXV0aG9yIHtcclxuXHRAaW5jbHVkZSBmb250KDE1cHgsIDMwcHgpO1xyXG5cdGZvbnQtd2VpZ2h0OiAzMDA7XHJcblxyXG5cdHN2ZyB7XHJcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0XHR0b3A6IDJweDtcclxuXHRcdHdpZHRoOiAxNHB4O1xyXG5cdFx0aGVpZ2h0OiAxNHB4O1xyXG5cdFx0bWFyZ2luLXJpZ2h0OiAxMHB4O1xyXG5cdH1cclxufVxyXG5cclxuLmNhaGllci1pdGVtX19hdXRob3JzLW1vcmUge1xyXG5cdHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xyXG5cdHRyYW5zaXRpb246IGFsbCAyNTBtcyBlYXNlO1xyXG5cclxuXHQmOmhvdmVyIHtcclxuXHRcdGNvbG9yOiAkYmx1ZS1sYWdvb24tMTAwO1xyXG5cdH1cclxufSIsIi5jYWhpZXItc2luZ2xlIHtcclxuXHRAaW5jbHVkZSBtZWRpYSgndGFibGV0LXBvcnRyYWl0LWRvd24nKSB7XHJcblx0XHRtYXJnaW46IDUwcHggMCA3MHB4IDA7XHJcblx0fVxyXG5cclxuXHRtYXJnaW46IDgwcHggMCAxMDBweCAwO1xyXG59XHJcblxyXG5cclxuLyoqXHJcbiAqIEdhbGxlcnkuXHJcbiAqL1xyXG5cclxuLmNhaGllci1zaW5nbGVfX2dhbGxlcnkge1xyXG5cdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtbGFuZHNjYXBlLWRvd24nKSB7XHJcblx0XHR3aWR0aDogNDAwcHg7XHJcblx0fVxyXG5cdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtcG9ydHJhaXQtZG93bicpIHtcclxuXHRcdHdpZHRoOiA1MDVweDtcclxuXHRcdG1hcmdpbjogMCBhdXRvIDUwcHggYXV0bztcclxuXHR9XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3Bob25lJykge1xyXG5cdFx0d2lkdGg6IDEwMCU7XHJcblx0fVxyXG5cclxuXHR3aWR0aDogNTA1cHg7XHJcblx0bWFyZ2luLXJpZ2h0OiAyNXB4O1xyXG59XHJcblxyXG4uY2FoaWVyLXNpbmdsZV9fZ2FsbGVyeS1iaWcge1xyXG5cdGEge1xyXG5cdFx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1sYW5kc2NhcGUtZG93bicpIHtcclxuXHRcdFx0d2lkdGg6IDQwMHB4O1xyXG5cdFx0XHRoZWlnaHQ6IDQwMHB4O1xyXG5cdFx0fVxyXG5cdFx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1wb3J0cmFpdC1kb3duJykge1xyXG5cdFx0XHR3aWR0aDogNTA1cHg7XHJcblx0XHRcdGhlaWdodDogNTAwcHg7XHJcblx0XHR9XHJcblx0XHRAaW5jbHVkZSBtZWRpYSgncGhvbmUnKSB7XHJcblx0XHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0XHRoZWlnaHQ6IGF1dG87XHJcblx0XHR9XHJcblxyXG5cdFx0ZGlzcGxheTogYmxvY2s7XHJcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0XHR3aWR0aDogNTA1cHg7XHJcblx0XHRoZWlnaHQ6IDUwMHB4O1xyXG5cdH1cclxuXHJcblxyXG5cdC5vd2wtc3RhZ2Utb3V0ZXIge1xyXG5cdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRvdmVyZmxvdzogaGlkZGVuO1xyXG5cdH1cclxuXHJcblx0Lm93bC1kb3RzIHtcclxuXHRcdEBpbmNsdWRlIG1lZGlhKCdwaG9uZScpIHtcclxuXHRcdFx0ZGlzcGxheTogZmxleDtcclxuXHRcdFx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblx0XHRcdG1hcmdpbi10b3A6IDEwcHg7XHJcblxyXG5cdFx0XHQub3dsLWRvdCB7XHJcblx0XHRcdFx0d2lkdGg6IDdweDtcclxuXHRcdFx0XHRoZWlnaHQ6IDdweDtcclxuXHRcdFx0XHRtYXJnaW4tcmlnaHQ6IDVweDtcclxuXHRcdFx0XHRib3JkZXI6IDFweCBzb2xpZCAkYmx1ZS0xMDA7XHJcblx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJHdoaXRlLTEwMDtcclxuXHRcdFx0XHRib3JkZXItcmFkaXVzOiA1MCU7XHJcblxyXG5cdFx0XHRcdCYuYWN0aXZlIHtcclxuXHRcdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRibHVlLTEwMDtcclxuXHRcdFx0XHR9XHJcblxyXG5cdFx0XHRcdCY6bGFzdC1vZi10eXBlIHtcclxuXHRcdFx0XHRcdG1hcmdpbi1yaWdodDogMDtcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHJcblx0XHRkaXNwbGF5OiBub25lO1xyXG5cdH1cclxuXHJcblx0aW1nIHtcclxuXHRcdEBpbmNsdWRlIG1lZGlhKCdwaG9uZScpIHtcclxuXHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdFx0XHR3aWR0aDogMTAwJTtcclxuXHRcdFx0aGVpZ2h0OiBhdXRvO1xyXG5cdFx0fVxyXG5cdH1cclxufVxyXG5cclxuLmNhaGllci1zaW5nbGVfX2dhbGxlcnktdGh1bWJuYWlscyB7XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3Bob25lJykge1xyXG5cdFx0ZGlzcGxheTogbm9uZSFpbXBvcnRhbnQ7XHJcblx0fVxyXG5cclxuXHR3aWR0aDogMzIwcHg7XHJcblx0bWFyZ2luOiAyMHB4IGF1dG87XHJcblxyXG5cdGEge1xyXG5cdFx0ZGlzcGxheTogYmxvY2s7XHJcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0XHR3aWR0aDogMTAwcHg7XHJcblx0XHRoZWlnaHQ6IDEwMHB4O1xyXG5cdH1cclxuXHJcblx0Lm93bC1zdGFnZS1vdXRlciB7XHJcblx0XHR3aWR0aDogMTAwJTtcclxuXHRcdG92ZXJmbG93OiBoaWRkZW47XHJcblx0fVxyXG5cclxuXHQub3dsLW5hdiB7XHJcblx0XHRkaXNwbGF5OiBmbGV4O1xyXG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0d2lkdGg6IGNhbGMoMTAwJSArIDEwMHB4KTtcclxuXHRcdHRvcDogY2FsYyg1MCUgLSAyMHB4KTtcclxuXHRcdGxlZnQ6IC01MHB4O1xyXG5cdFx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG5cdFx0ei1pbmRleDogLTE7XHJcblx0fVxyXG59XHJcblxyXG5cclxuLyoqXHJcbiAqIEJvZHkuXHJcbiAqL1xyXG5cclxuLmNhaGllci1zaW5nbGVfX2JvZHkge1xyXG5cdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtbGFuZHNjYXBlLWRvd24nKSB7XHJcblx0XHR3aWR0aDogY2FsYygxMDAlIC0gNDI1cHgpO1xyXG5cdH1cclxuXHRAaW5jbHVkZSBtZWRpYSgndGFibGV0LXBvcnRyYWl0LWRvd24nKSB7XHJcblx0XHR3aWR0aDogMTAwJTtcclxuXHRcdG1heC13aWR0aDogMTAwJTtcclxuXHR9XHJcblxyXG5cdHdpZHRoOiBjYWxjKDEwMCUgLSA1MzBweCk7XHJcblx0bWF4LXdpZHRoOiA2MTBweDtcclxufVxyXG5cclxuLmNhaGllci1zaW5nbGVfX2hlYWQge1xyXG5cclxufVxyXG5cclxuLmNhaGllci1zaW5nbGVfX2RhdGUge1xyXG5cdG1hcmdpbi1yaWdodDogNTBweDtcclxufVxyXG5cclxuLmNhaGllci1zaW5nbGVfX3RpdGxlIHtcclxuXHRAaW5jbHVkZSBtZWRpYSgndGFibGV0LXBvcnRyYWl0LWRvd24nKSB7XHJcblx0XHRtYXJnaW46IDMwcHggMDtcclxuXHR9XHJcblxyXG5cdG1hcmdpbjogMTBweCAwIDMwcHggMDtcclxufVxyXG5cclxuLmNhaGllci1zaW5nbGVfX2F1dGhvcnMge1xyXG5cdGRpc3BsYXk6IGJsb2NrO1xyXG5cdG1hcmdpbi10b3A6IDIwcHg7XHJcbn1cclxuXHJcbi5jYWhpZXItc2luZ2xlX19pbnRyb2R1Y3Rpb24ge1xyXG5cclxufVxyXG5cclxuXHJcblxyXG5cclxuLyoqXHJcbiAqIEFjdGlvbnMuXHJcbiAqL1xyXG5cclxuLmNhaGllci1zaW5nbGVfX2FjdGlvbnMge1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRtYXJnaW46IDUwcHggMDtcclxuXHRwYWRkaW5nOiAzMHB4O1xyXG5cdGJhY2tncm91bmQtY29sb3I6ICRibHVlLXBhdHRlbnMtMTAwO1xyXG5cclxuXHQmOmFmdGVyIHtcclxuXHRcdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtcG9ydHJhaXQtZG93bicpIHtcclxuXHRcdFx0bGVmdDogLTYwcHg7XHJcblx0XHR9XHJcblxyXG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0dG9wOiAwO1xyXG5cdFx0bGVmdDogMDtcclxuXHRcdHdpZHRoOiAyMDB2dztcclxuXHRcdGhlaWdodDogMTAwJTtcclxuXHRcdGJhY2tncm91bmQtY29sb3I6ICRibHVlLXBhdHRlbnMtMTAwO1xyXG5cdFx0Y29udGVudDogJyc7XHJcblx0XHR6LWluZGV4OiAtMTtcclxuXHR9XHJcbn1cclxuXHJcbi5jYWhpZXItc2luZ2xlX19vcmRlciB7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG59XHJcblxyXG4uY2FoaWVyLXNpbmdsZV9fcHJpY2Uge1xyXG5cdEBpbmNsdWRlIGZvbnQoMjBweCwgMzBweCk7XHJcblx0d2lkdGg6IDEyNXB4O1xyXG5cdGZvbnQtd2VpZ2h0OiBib2xkO1xyXG5cdGNvbG9yOiAkYmx1ZS0xMDA7XHJcblx0bGV0dGVyLXNwYWNpbmc6IDAuNTZweDtcclxuXHR0cmFuc2l0aW9uOiBhbGwgMjUwbXMgZWFzZTtcclxuXHJcblx0c3ZnIHtcclxuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRcdHRvcDogN3B4O1xyXG5cdFx0d2lkdGg6IDI2cHg7XHJcblx0XHRoZWlnaHQ6IDMwcHg7XHJcblx0XHRtYXJnaW4tcmlnaHQ6IDVweDtcclxuXHRcdGNvbG9yOiAkYmx1ZS0xMDA7XHJcblx0XHR0cmFuc2l0aW9uOiBhbGwgMjUwbXMgZWFzZTtcclxuXHR9XHJcblxyXG5cdCYuaXMtZGlzYWJsZWQge1xyXG5cdFx0Y29sb3I6ICRibHVlLTIwMDtcclxuXHJcblx0XHRzdmcge1xyXG5cdFx0XHRjb2xvcjogJGJsdWUtMjAwO1xyXG5cdFx0fVxyXG5cdH1cclxufVxyXG5cclxuLmNhaGllci1zaW5nbGVfX29yZGVyLWJ1dHRvbiB7XHJcblx0bWluLXdpZHRoOiAxNTBweDtcclxuXHJcblx0Ji5pcy1kaXNhYmxlZCB7XHJcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkYmx1ZS0yMDA7XHJcblx0XHRib3JkZXI6IDA7XHJcblx0XHRjdXJzb3I6IGRlZmF1bHQ7XHJcblxyXG5cdFx0Jjpob3ZlciB7XHJcblx0XHRcdGJvcmRlci1yYWRpdXM6IDJweDtcclxuXHRcdH1cclxuXHR9XHJcbn1cclxuXHJcbi5jYWhpZXItc2luZ2xlX19zdG9jayB7XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3Bob25lJykge1xyXG5cdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRwYWRkaW5nOiAyMHB4IDAgMCAwO1xyXG5cdH1cclxuXHJcblx0QGluY2x1ZGUgZm9udCgxMnB4LCAxM3B4KTtcclxuXHR3aWR0aDogY2FsYygxMDAlIC0gMjc1cHgpO1xyXG5cdHBhZGRpbmctbGVmdDogMjBweDtcclxuXHRmb250LXdlaWdodDogMzAwO1xyXG5cdGZvbnQtc3R5bGU6IGl0YWxpYztcclxuXHRjb2xvcjogJGJsdWUtMTAwO1xyXG5cclxuXHRzdmcge1xyXG5cdFx0d2lkdGg6IDE3cHg7XHJcblx0XHRoZWlnaHQ6IDE4cHg7XHJcblx0XHRtYXJnaW4tcmlnaHQ6IDhweDtcclxuXHRcdGNvbG9yOiAkYmx1ZS0xMDA7XHJcblx0fVxyXG59XHJcblxyXG4uY2FoaWVyLXNpbmdsZV9fZG93bmxvYWQge1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0dHJhbnNpdGlvbjogYWxsIDI1MG1zIGVhc2U7XHJcbn1cclxuXHJcbi5jYWhpZXItc2luZ2xlX19kb3dubG9hZC1saW5rIHtcclxuXHRAaW5jbHVkZSBmb250KDIwcHgsIDMwcHgpO1xyXG5cdHdpZHRoOiAxMjVweDtcclxuXHRjb2xvcjogJGdyZXktNDAwO1xyXG5cdGxldHRlci1zcGFjaW5nOiAwLjU2cHg7XHJcblx0b3BhY2l0eTogMC43O1xyXG5cdHRyYW5zaXRpb246IGFsbCAyNTBtcyBlYXNlO1xyXG5cclxuXHRzdmcge1xyXG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdFx0dG9wOiA3cHg7XHJcblx0XHR3aWR0aDogMjFweDtcclxuXHRcdGhlaWdodDogMzBweDtcclxuXHRcdG1hcmdpbi1yaWdodDogNXB4O1xyXG5cdFx0Y29sb3I6ICRncmV5LTQwMDtcclxuXHRcdHRyYW5zaXRpb246IGFsbCAyNTBtcyBlYXNlO1xyXG5cdH1cclxufVxyXG5cclxuLmNhaGllci1zaW5nbGVfX2Rvd25sb2FkLWJ1dHRvbiB7XHJcblxyXG59XHJcblxyXG4uY2FoaWVyLXNpbmdsZV9fYmFjayB7XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1wb3J0cmFpdC1kb3duJykge1xyXG5cdFx0ZGlzcGxheTogbm9uZTtcclxuXHR9XHJcblxyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xyXG5cdHBvc2l0aW9uOiBmaXhlZDtcclxuXHRib3R0b206IDEwMHB4O1xyXG5cdHdpZHRoOiAzMDBweDtcclxuXHRoZWlnaHQ6IDcwcHg7XHJcblx0cGFkZGluZy1yaWdodDogMjBweDtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGUtMTAwO1xyXG5cdGJvcmRlcjogM3B4IHNvbGlkICRibHVlLXBhdHRlbnMtMTAwO1xyXG5cdGJvcmRlci1yYWRpdXM6IDAgMTAwcHggMTAwcHggMDtcclxuXHR6LWluZGV4OiAxMDtcclxufVxyXG4iLCIucG9zdC1maWx0ZXItLWNhaGllcnMge1xyXG4gIEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtcG9ydHJhaXQtZG93bicpIHtcclxuICAgIG1hcmdpbi1ib3R0b206IDUwcHg7XHJcbiAgfVxyXG5cclxuICBtYXJnaW4tYm90dG9tOiAxMDBweDtcclxufVxyXG5cclxuLnBvc3QtZmlsdGVyc19fdGl0bGUge1xyXG4gIG1hcmdpbi1ib3R0b206IDE1cHg7XHJcbn1cclxuXHJcbi5wb3N0LWZpbHRlci0tY2FoaWVycy1zZWxlY3RzIHtcclxuICBAaW5jbHVkZSBtZWRpYSgndGFibGV0LXBvcnRyYWl0LWRvd24nKSB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIG1hcmdpbjogMHB4O1xyXG4gIH1cclxuXHJcbiAgZGlzcGxheTogZmxleDtcclxuICBtYXJnaW46IDAgLTIwcHggMTVweCAtMjBweDtcclxufVxyXG5cclxuLmNhaGllci1maWx0ZXJfX3NlbGVjdCB7XHJcbiAgQGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1wb3J0cmFpdC1kb3duJykge1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBtYXJnaW46IDBweCAwcHggMTVweCAwO1xyXG4gIH1cclxuXHJcbiAgd2lkdGg6IGNhbGMoMzMuMzMzMyUgLSAyMHB4KTtcclxuICBoZWlnaHQ6IDQ1cHg7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJsdWUtcGF0dGVucy0xMDA7XHJcbiAgbWFyZ2luOiAwcHggMTVweDtcclxuXHJcbiAgc2VsZWN0IHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIGNvbG9yOiAkZ3JleS00MDA7XHJcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgIHotaW5kZXg6IDk5O1xyXG4gIH1cclxuXHJcbiAgc3ZnIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIHRvcDogLTI2cHg7XHJcbiAgICB3aWR0aDogOHB4O1xyXG4gICAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xyXG4gICAgZmxvYXQ6IHJpZ2h0O1xyXG4gIH1cclxufVxyXG5cclxuLnBvc3QtZmlsdGVyLS1jYWhpZXJzLWlucHV0IHtcclxuICBAaW5jbHVkZSBtZWRpYSgndGFibGV0LXBvcnRyYWl0LWRvd24nKSB7XHJcbiAgICBtYXJnaW46IDBweDtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gIH1cclxuXHJcbiAgZGlzcGxheTogZmxleDtcclxuICBtYXJnaW46IDAgLTIwcHggMTVweCAtMjBweDtcclxufVxyXG5cclxuLmNhaGllci1maWx0ZXJfX2lucHV0IHtcclxuICBAaW5jbHVkZSBtZWRpYSgndGFibGV0LXBvcnRyYWl0LWRvd24nKSB7XHJcbiAgICBtYXJnaW46IDBweCAwcHg7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICB9XHJcblxyXG4gIHdpZHRoOiA4NSU7XHJcbiAgbWFyZ2luOiAxNXB4IDE1cHg7XHJcblxyXG4gIGlucHV0IHtcclxuICAgIGNvbG9yOiAkZ3JleS00MDA7XHJcbiAgfVxyXG5cclxuICA6OnBsYWNlaG9sZGVyIHtcclxuICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcclxuICB9XHJcbn1cclxuXHJcbi5jYWhpZXItZmlsdGVyX19zdWJtaXQge1xyXG4gIEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtcG9ydHJhaXQtZG93bicpIHtcclxuICAgIG1hcmdpbjogMTBweCAwcHg7XHJcbiAgfVxyXG5cclxuICB3aWR0aDogMTUlO1xyXG4gIG1hcmdpbjogMTVweCAxNXB4O1xyXG5cclxuICBidXR0b24ge1xyXG4gICAgQGluY2x1ZGUgbWVkaWEoJ3Bob25lJykge1xyXG4gICAgICB3aWR0aDogYXV0bztcclxuICAgIH1cclxuXHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgZm9udC13ZWlnaHQ6IDMwMDtcclxuICB9XHJcbn0iLCIubWF0ZXJpYWwtY29udGVudCB7XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1wb3J0cmFpdC1kb3duJykge1xyXG5cdFx0cGFkZGluZzogNTBweCAwO1xyXG5cdH1cclxuXHRAaW5jbHVkZSBtZWRpYSgndGFibGV0LXBvcnRyYWl0Jykge1xyXG5cdFx0bWF4LXdpZHRoOiA2MDBweDtcclxuXHRcdG1hcmdpbjogMCBhdXRvO1xyXG5cdH1cclxuXHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdHBhZGRpbmc6IDgwcHggMDtcclxuXHJcblx0JjphZnRlciB7XHJcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHR3aWR0aDogODAwcHg7XHJcblx0XHRoZWlnaHQ6IDYwJTtcclxuXHRcdHRvcDogNjAlO1xyXG5cdFx0bGVmdDogMjIlO1xyXG5cdFx0YmFja2dyb3VuZDogdXJsKCAnLi8uLi9pbWFnZXMvbGluZS1hYm91dC11cy5zdmcnICk7XHJcblx0XHRjb250ZW50OiAnJztcclxuXHRcdHotaW5kZXg6IC0xO1xyXG5cdH1cclxufVxyXG5cclxuLm1hdGVyaWFsLWNvbnRlbnRfX2hlYWQge1xyXG5cdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtcG9ydHJhaXQtZG93bicpIHtcclxuXHRcdG1pbi1oZWlnaHQ6IGF1dG87XHJcblx0XHRwYWRkaW5nLWJvdHRvbTogNTBweDtcclxuXHR9XHJcblxyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRtaW4taGVpZ2h0OiAxMzBweDtcclxufVxyXG5cclxuLm1hdGVyaWFsLWNvbnRlbnRfX2JhY2tncm91bmQtdGl0bGUge1xyXG5cdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtbGFuZHNjYXBlLWRvd24nKSB7XHJcblx0XHRAaW5jbHVkZSBmb250KDgwcHgsIDgwcHgpO1xyXG5cdFx0bWFyZ2luLWJvdHRvbTogNTBweDtcclxuXHRcdGxldHRlci1zcGFjaW5nOiAyLjIycHg7XHJcblx0XHRjb2xvcjogJGJsdWUtbGFnb29uLTU7XHJcblx0fVxyXG5cclxuXHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0dG9wOiAwO1xyXG5cdHJpZ2h0OiAwO1xyXG59XHJcbiIsIi5tYXRlcmlhbC1pbnRyb2R1Y3Rpb24ge1xyXG5cdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtcG9ydHJhaXQtZG93bicpIHtcclxuXHRcdHBhZGRpbmctYm90dG9tOiAwO1xyXG5cdH1cclxuXHJcblx0cGFkZGluZy1ib3R0b206IDgwcHg7XHJcbn1cclxuXHJcbi5tYXRlcmlhbC1pbnRyb2R1Y3Rpb25fX2hlYWQge1xyXG5cdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtcG9ydHJhaXQtZG93bicpIHtcclxuXHRcdG1hcmdpbjogNTBweCAwIDMwcHggMDtcclxuXHR9XHJcblxyXG5cdGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XHJcblx0bWFyZ2luOiA1MHB4IDA7XHJcbn1cclxuXHJcbi5tYXRlcmlhbC1pbnRyb2R1Y3Rpb25fX2hlYWQtd3JhcCB7XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1sYW5kc2NhcGUtZG93bicpIHtcclxuXHRcdHdpZHRoOiA1MCU7XHJcblx0fVxyXG5cdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtcG9ydHJhaXQtZG93bicpIHtcclxuXHRcdHdpZHRoOiAxMDAlO1xyXG5cdH1cclxuXHJcblx0d2lkdGg6IDU1MHB4O1xyXG59XHJcblxyXG4ubWF0ZXJpYWwtaW50cm9kdWN0aW9uX19kYXRlIHtcclxuXHRtYXJnaW4tcmlnaHQ6IDQ1cHg7XHJcbn1cclxuXHJcbi5tYXRlcmlhbC1pbnRyb2R1Y3Rpb25fX3RpdGxlIHtcclxuXHRtYXJnaW4tdG9wOiAyMHB4O1xyXG59XHJcblxyXG4ubWF0ZXJpYWwtaW50cm9kdWN0aW9uX19jb2x1bW5zIHtcclxuXHRwYWRkaW5nLWJvdHRvbTogNTBweDtcclxufVxyXG5cclxuLm1hdGVyaWFsLWludHJvZHVjdGlvbl9faW1hZ2Utd3JhcCB7XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1sYW5kc2NhcGUtZG93bicpIHtcclxuXHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0XHRkaXNwbGF5OiBmbGV4O1xyXG5cdFx0d2lkdGg6IDUwJTtcclxuXHRcdHBhZGRpbmctcmlnaHQ6IDQ1cHg7XHJcblx0XHRtYXJnaW46IDA7XHJcblx0fVxyXG5cdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtcG9ydHJhaXQtZG93bicpIHtcclxuXHRcdGRpc3BsYXk6IG5vbmU7XHJcblx0fVxyXG5cclxuXHR3aWR0aDogY2FsYygxMDAlIC0gNTUwcHgpO1xyXG4gICAgbWFyZ2luLXRvcDogLTEwMHB4O1xyXG4gICAgbWFyZ2luLWJvdHRvbTogLTEwMHB4O1xyXG5cdHBhZGRpbmctcmlnaHQ6IDgwcHg7XHJcbn1cclxuXHJcbi5tYXRlcmlhbC1pbnRyb2R1Y3Rpb25fX2ltYWdlIHtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdG1heC13aWR0aDogNTQwcHg7XHJcblx0aGVpZ2h0OiBhdXRvO1xyXG5cclxuXHQmOmFmdGVyIHtcclxuXHRcdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtbGFuZHNjYXBlLWRvd24nKSB7XHJcblx0XHRcdHJpZ2h0OiAtMzBweDtcclxuXHRcdFx0dHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcclxuXHRcdFx0bWF4LWhlaWdodDogNzAlO1xyXG5cdFx0XHRtYXgtd2lkdGg6IDEwMCU7XHJcblx0XHR9XHJcblxyXG5cdFx0cmlnaHQ6IC03MHB4O1xyXG5cdFx0Ym90dG9tOiAwO1xyXG5cdFx0d2lkdGg6IDk1cHg7XHJcblx0XHRoZWlnaHQ6IDQ5MHB4O1xyXG5cdH1cclxufVxyXG5cclxuLm1hdGVyaWFsLWludHJvZHVjdGlvbl9fdGV4dCB7XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1sYW5kc2NhcGUtZG93bicpIHtcclxuXHRcdHdpZHRoOiA1MCU7XHJcblx0fVxyXG5cdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtcG9ydHJhaXQtZG93bicpIHtcclxuXHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0cGFkZGluZzogMzBweCAwO1xyXG5cdH1cclxuXHJcblx0QGluY2x1ZGUgZm9udCgxN3B4LCAzNXB4KTtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0d2lkdGg6IDU1MHB4O1xyXG5cdHBhZGRpbmc6IDQ1cHggMDtcclxuXHRmb250LXdlaWdodDogMzAwO1xyXG5cclxuXHQmOmJlZm9yZSB7XHJcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHR0b3A6IDA7XHJcblx0XHRsZWZ0OiAtMTAwdnc7XHJcblx0XHRoZWlnaHQ6IDEwMCU7XHJcblx0XHR3aWR0aDogMjAwdnc7XHJcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkYmx1ZS1wYXR0ZW5zLTEwMDtcclxuXHRcdGNvbnRlbnQ6ICcnO1xyXG5cdFx0ei1pbmRleDogLTE7XHJcblx0fVxyXG59XHJcblxyXG4ubWF0ZXJpYWwtaW50cm9kdWN0aW9uX19idXR0b25zIHtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cclxuXHRhIHtcclxuXHRcdG1hcmdpbi10b3A6IDUwcHg7XHJcblx0fVxyXG59XHJcblxyXG4ubWF0ZXJpYWwtaW50cm9kdWN0aW9uX19kb3dubG9hZCB7XHJcblx0bWFyZ2luLXJpZ2h0OiA0NXB4O1xyXG59XHJcbiIsIi5uZXdzLWxhdGVzdC1pdGVtIHtcclxuXHRAaW5jbHVkZSBtZWRpYSgndGFibGV0LWxhbmRzY2FwZS1kb3duJykge1xyXG5cdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRtYXJnaW46IDEwcHggMDtcclxuXHR9XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3Bob25lJykge1xyXG5cdFx0bWFyZ2luOiA1cHggMDtcclxuXHR9XHJcblxyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHR3aWR0aDogY2FsYyg1MCUgLSAyMHB4KTtcclxuXHRtYXJnaW46IDEwcHg7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogJHdoaXRlLTEwMDtcclxuXHRib3JkZXI6IDJweCBzb2xpZCAkd2hpdGUtc21va2UtMTAwO1xyXG5cdGJvcmRlci1yYWRpdXM6IDVweDtcclxuXHR0cmFuc2l0aW9uOiBhbGwgMjUwbXMgZWFzZTtcclxuXHJcblx0Jjpob3ZlciB7XHJcblx0XHRib3gtc2hhZG93OiAwIDAgMTBweCAwICRncmV5LTMwO1xyXG5cdH1cclxuXHJcblx0YSB7XHJcblx0XHRkaXNwbGF5OiBibG9jaztcclxuXHRcdHBhZGRpbmc6IDMwcHg7XHJcblx0fVxyXG59XHJcblxyXG4ubmV3cy1sYXRlc3QtaXRlbV9fdGl0bGUge1xyXG5cdG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbn1cclxuXHJcbi5uZXdzLWxhdGVzdC1pdGVtX19kYXRlIHtcclxuXHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0cmlnaHQ6IDEwcHg7XHJcblx0Ym90dG9tOiA1cHg7XHJcblx0b3BhY2l0eTogMC43O1xyXG59XHJcbiIsIi5uZXdzLWxhdGVzdCB7XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1wb3J0cmFpdC1kb3duJykge1xyXG5cdFx0cGFkZGluZy10b3A6IDUwcHg7XHJcblx0fVxyXG5cclxuXHRwYWRkaW5nLXRvcDogODBweDtcclxufVxyXG5cclxuLm5ld3MtbGF0ZXN0X19oZWFkIHtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0cGFkZGluZy1ib3R0b206IDUwcHg7XHJcbn1cclxuXHJcbi5uZXdzLWxhdGVzdF9fdGl0bGUge1xyXG5cdG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbn1cclxuXHJcbi5uZXdzLWxhdGVzdF9fYmFja2dyb3VuZC10aXRsZSB7XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1sYW5kc2NhcGUtZG93bicpIHtcclxuXHRcdEBpbmNsdWRlIGZvbnQoODBweCwgODBweCk7XHJcblx0XHR0b3A6IDA7XHJcblx0XHRib3R0b206IGF1dG87XHJcblx0XHRsZXR0ZXItc3BhY2luZzogMi4yMnB4O1xyXG5cdFx0Y29sb3I6ICRibHVlLWxhZ29vbi01O1xyXG5cdH1cclxuXHJcblx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdHJpZ2h0OiAwO1xyXG5cdGJvdHRvbTogMTVweDtcclxufVxyXG5cclxuLm5ld3MtbGF0ZXN0X19wb3N0cyB7XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1sYW5kc2NhcGUtZG93bicpIHtcclxuXHRcdG1heC13aWR0aDogNjEwcHg7XHJcblx0XHRtYXJnaW46IC0xMHB4IGF1dG8gLTEwcHggYXV0bztcclxuXHR9XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1wb3J0cmFpdC1kb3duJykge1xyXG5cdFx0bWFyZ2luOiAtMTBweCAwO1xyXG5cdH1cclxuXHRAaW5jbHVkZSBtZWRpYSgncGhvbmUnKSB7XHJcblx0XHRwYWRkaW5nOiA0NXB4IDA7XHJcblx0fVxyXG5cclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0bWFyZ2luOiAtMTBweDtcclxuXHRwYWRkaW5nOiA0MHB4IDA7XHJcblxyXG5cdCY6YmVmb3JlIHtcclxuXHRcdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtbGFuZHNjYXBlLWRvd24nKSB7XHJcblx0XHRcdGxlZnQ6IDE1MHB4O1xyXG5cdFx0fVxyXG5cdFx0QGluY2x1ZGUgbWVkaWEoJ3Bob25lJykge1xyXG5cdFx0XHRsZWZ0OiAtMjBweDtcclxuXHRcdFx0d2lkdGg6IGNhbGMoMTAwdncgKyAyMHB4KTtcclxuXHRcdH1cclxuXHJcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHRib3R0b206IDA7XHJcblx0XHRsZWZ0OiAyMTBweDtcclxuXHRcdHdpZHRoOiAxMDB2dztcclxuXHRcdGhlaWdodDogMTAwJTtcclxuXHRcdGJhY2tncm91bmQ6ICR3aGl0ZS1zbW9rZS0xMDA7XHJcblx0XHRjb250ZW50OiAnJztcclxuXHRcdHotaW5kZXg6IC0xO1xyXG5cdH1cclxufVxyXG4iLCIubmV3cy1saXN0X19jb250YWluZXIge1xyXG5cdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtcG9ydHJhaXQtZG93bicpIHtcclxuXHRcdG1hcmdpbjogLTI1cHggMDtcclxuXHR9XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3Bob25lJykge1xyXG5cdFx0bWFyZ2luOiAtMTBweCAwO1xyXG5cdH1cclxuXHJcblx0bWFyZ2luOiAtMjVweCAtMTBweDtcclxufVxyXG5cclxuLm5ld3MtbGlzdCArIC5jb250ZW50LXN1YnNjcmliZSB7XHJcblx0bWFyZ2luLXRvcDogODBweDtcclxufVxyXG4iLCIubmV3cy1saXN0LWl0ZW0ge1xyXG5cdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtcG9ydHJhaXQtZG93bicpIHtcclxuXHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0bWFyZ2luOiAyNXB4IDA7XHJcblx0fVxyXG5cdEBpbmNsdWRlIG1lZGlhKCdwaG9uZScpIHtcclxuXHRcdG1hcmdpbjogMTBweCAwO1xyXG5cdH1cclxuXHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdHdpZHRoOiBjYWxjKDUwJSAtIDIwcHgpO1xyXG5cdG1hcmdpbjogMjVweCAxMHB4O1xyXG5cdHBhZGRpbmctYm90dG9tOiAzMHB4O1xyXG5cclxuXHQmOmhvdmVyIHtcclxuXHRcdC5uZXdzLWxpc3QtaXRlbV9fYm9keSB7XHJcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRibHVlLTEwMDtcclxuXHRcdFx0Y29sb3I6ICR3aGl0ZS0xMDA7XHJcblxyXG5cdFx0XHQmOmFmdGVyIHtcclxuXHRcdFx0XHRvcGFjaXR5OiAxO1xyXG5cdFx0XHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cclxuXHRcdC5uZXdzLWxpc3QtaXRlbV9fZGF0ZSB7XHJcblx0XHRcdGNvbG9yOiAkd2hpdGUtMTAwO1xyXG5cdFx0fVxyXG5cclxuXHRcdC5oZWFkaW5nLFxyXG5cdFx0Lmxpbmsge1xyXG5cdFx0XHRjb2xvcjogJHdoaXRlLTEwMDtcclxuXHJcblx0XHRcdHN2ZyB7XHJcblx0XHRcdFx0bWFyZ2luLWxlZnQ6IDIwcHg7XHJcblx0XHRcdFx0bWFyZ2luLXJpZ2h0OiAtMTBweDtcclxuXHRcdFx0XHRjb2xvcjogJHdoaXRlLTEwMDtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cclxufVxyXG5cclxuLm5ld3MtbGlzdC1pdGVtX19pbWFnZSB7XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1wb3J0cmFpdC1kb3duJykge1xyXG5cdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRoZWlnaHQ6IDMwMHB4O1xyXG5cdH1cclxuXHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdHdpZHRoOiBjYWxjKDEwMCUgLSAzMHB4KTtcclxuXHRoZWlnaHQ6IDQwMHB4O1xyXG5cclxuXHRpbWcge1xyXG5cdFx0Ym9yZGVyLXJhZGl1czogNXB4O1xyXG5cdH1cclxufVxyXG5cclxuLm5ld3MtbGlzdC1pdGVtX19ib2R5IHtcclxuXHRAaW5jbHVkZSBtZWRpYSgndGFibGV0LXBvcnRyYWl0LWRvd24nKSB7XHJcblx0XHR3aWR0aDogY2FsYygxMDAlIC0gNjBweCk7XHJcblx0XHRyaWdodDogMzBweDtcclxuXHR9XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3Bob25lJykge1xyXG5cdFx0d2lkdGg6IGNhbGMoMTAwJSAtIDIwcHgpO1xyXG5cdFx0cmlnaHQ6IDEwcHg7XHJcblx0fVxyXG5cclxuXHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0cmlnaHQ6IDA7XHJcblx0Ym90dG9tOiAwO1xyXG5cdHdpZHRoOiBjYWxjKDEwMCUgLSA4NXB4KTtcclxuXHRwYWRkaW5nOiAyMHB4IDIwcHggMzBweCAyMHB4O1xyXG5cdGJhY2tncm91bmQtY29sb3I6ICRibHVlLXBhdHRlbnMtMTAwO1xyXG5cdGJvcmRlci1yYWRpdXM6IDVweDtcclxuXHR0cmFuc2l0aW9uOiBhbGwgNTAwbXMgZWFzZTtcclxuXHJcblx0JjphZnRlciB7XHJcblx0XHR0b3A6IC0yOXB4O1xyXG5cdFx0cmlnaHQ6IDEwcHg7XHJcblx0XHRvcGFjaXR5OiAwO1xyXG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKDUwJSk7XHJcblx0XHR0cmFuc2l0aW9uOiBhbGwgNTAwbXMgZWFzZTtcclxuXHRcdHotaW5kZXg6IDEwO1xyXG5cdH1cclxufVxyXG5cclxuLm5ld3MtbGlzdC1pdGVtX19kYXRlIHtcclxuXHRvcGFjaXR5OiAwLjU7XHJcblx0dHJhbnNpdGlvbjogYWxsIDUwMG1zIGVhc2U7XHJcbn1cclxuXHJcbi5uZXdzLWxpc3QtaXRlbV9fdGl0bGUge1xyXG5cdG1hcmdpbjogMTBweCAwIDEwcHggMDtcclxuXHR0cmFuc2l0aW9uOiBhbGwgNTAwbXMgZWFzZTtcclxufVxyXG4iLCIubmV3cy1zaW5nbGUge1xyXG5cdC53cmFwcGVyIHtcclxuXHRcdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtcG9ydHJhaXQtZG93bicpIHtcclxuXHRcdFx0bWFyZ2luLXRvcDogLTEwMHB4O1xyXG5cdFx0fVxyXG5cclxuXHRcdG1hcmdpbi10b3A6IC0yMDBweDtcclxuXHR9XHJcbn1cclxuXHJcbi5uZXdzLXNpbmdsZV9faGVhZGVyIHtcclxuXHRAaW5jbHVkZSBtZWRpYSgndGFibGV0LXBvcnRyYWl0LWRvd24nKSB7XHJcblx0XHRoZWlnaHQ6IDQyMHB4O1xyXG5cdH1cclxuXHRAaW5jbHVkZSBtZWRpYSgncGhvbmUnKSB7XHJcblx0XHRoZWlnaHQ6IDI1MHB4O1xyXG5cdH1cclxuXHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdHdpZHRoOiAxMDAlO1xyXG5cdGhlaWdodDogNjIwcHg7XHJcblx0ei1pbmRleDogMTtcclxufVxyXG5cclxuLm5ld3Mtc2luZ2xlX19ib2R5IHtcclxuXHRAaW5jbHVkZSBtZWRpYSgndGFibGV0LXBvcnRyYWl0LWRvd24nKSB7XHJcblx0XHRwYWRkaW5nOiA1MHB4O1xyXG5cdH1cclxuXHRAaW5jbHVkZSBtZWRpYSgncGhvbmUnKSB7XHJcblx0XHRwYWRkaW5nOiAyNXB4IDA7XHJcblx0fVxyXG5cclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0bWF4LXdpZHRoOiAxMDI1cHg7XHJcblx0cGFkZGluZzogMTAwcHggMTAwcHggMTUwcHggMTAwcHg7XHJcblx0Ym9yZGVyLXJhZGl1czogMCA1MHB4IDUwcHggMDtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGUtMTAwO1xyXG5cdHotaW5kZXg6IDI7XHJcblxyXG5cdCY6YWZ0ZXIge1xyXG5cdFx0QGluY2x1ZGUgbWVkaWEoJ3Bob25lJykge1xyXG5cdFx0XHRkaXNwbGF5OiBub25lO1xyXG5cdFx0fVxyXG5cclxuXHRcdHRvcDogLTc3cHg7XHJcblx0XHRyaWdodDogLTYycHg7XHJcblx0XHR0cmFuc2Zvcm06IHJvdGF0ZSgyNzBkZWcpO1xyXG5cdH1cclxuXHJcblx0JjpiZWZvcmUge1xyXG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0dG9wOiAwO1xyXG5cdFx0cmlnaHQ6IDEwMCU7XHJcblx0XHR3aWR0aDogMTAwdnc7XHJcblx0XHRoZWlnaHQ6IDEwMCU7XHJcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGUtMTAwO1xyXG5cdFx0Y29udGVudDogJyc7XHJcblx0XHR6LWluZGV4OiAtMTtcclxuXHR9XHJcbn1cclxuXHJcbi5uZXdzLXNpbmdsZV9fdGl0bGUge1xyXG5cdG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbn1cclxuXHJcbi5uZXdzLXNpbmdsZV9fYmFjayB7XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1wb3J0cmFpdC1kb3duJykge1xyXG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdFx0anVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xyXG5cdFx0Ym90dG9tOiAwO1xyXG5cdFx0aGVpZ2h0OiBhdXRvO1xyXG5cdFx0Ym9yZGVyOiAwO1xyXG5cdFx0bWFyZ2luLWJvdHRvbTogMTAwcHg7XHJcblx0XHRwYWRkaW5nLWxlZnQ6IDIwcHg7XHJcblx0fVxyXG5cclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0anVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcclxuXHRwb3NpdGlvbjogZml4ZWQ7XHJcblx0Ym90dG9tOiAxMDBweDtcclxuXHR3aWR0aDogMzAwcHg7XHJcblx0aGVpZ2h0OiA3MHB4O1xyXG5cdHBhZGRpbmctcmlnaHQ6IDIwcHg7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogJHdoaXRlLTEwMDtcclxuXHRib3JkZXI6IDNweCBzb2xpZCAkYmx1ZS1wYXR0ZW5zLTEwMDtcclxuXHRib3JkZXItcmFkaXVzOiAwIDEwMHB4IDEwMHB4IDA7XHJcblx0ei1pbmRleDogMTA7XHJcbn1cclxuIiwiLnBvc3QtaXRlbSB7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZS0xMDA7XHJcblx0Ym9yZGVyLXJhZGl1czogNXB4O1xyXG5cdHRyYW5zaXRpb246IGFsbCAyNTBtcyBlYXNlO1xyXG5cclxuXHQmOmFmdGVyIHtcclxuXHRcdHJpZ2h0OiAtOHB4O1xyXG5cdFx0Ym90dG9tOiAtOHB4O1xyXG5cdFx0b3BhY2l0eTogMDtcclxuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWCg1MCUpO1xyXG5cdFx0dHJhbnNpdGlvbjogYWxsIDUwMG1zIGVhc2U7XHJcblx0XHR6LWluZGV4OiAxMDtcclxuXHR9XHJcblxyXG5cdCY6aG92ZXIge1xyXG5cdFx0Ym94LXNoYWRvdzogMCAwIDEwcHggMCAkZ3JleS0zMDtcclxuXHJcblx0XHQmOmFmdGVyIHtcclxuXHRcdFx0b3BhY2l0eTogMTtcclxuXHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xyXG5cdFx0fVxyXG5cclxuXHRcdC5wb3N0LWl0ZW1fX2JvZHkge1xyXG5cdFx0XHRib3JkZXI6IDNweCBzb2xpZCAkd2hpdGUtMTAwO1xyXG5cdFx0XHRib3JkZXItdG9wOiAwcHg7XHJcblx0XHR9XHJcblx0fVxyXG59XHJcblxyXG4ucG9zdC1pdGVtX19pbWFnZSB7XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1wb3J0cmFpdC1kb3duJykge1xyXG5cdFx0aGVpZ2h0OiAyMDBweDtcclxuXHR9XHJcblxyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHR3aWR0aDogMTAwJTtcclxuXHRoZWlnaHQ6IDI1MHB4O1xyXG5cdGJvcmRlci1yYWRpdXM6IDVweDtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG5cdHotaW5kZXg6IDI7XHJcbn1cclxuXHJcbi5wb3N0LWl0ZW1fX2JvZHkge1xyXG5cdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtcG9ydHJhaXQtZG93bicpIHtcclxuXHRcdG1pbi1oZWlnaHQ6IGNhbGMoMTAwJSAtIDE5NXB4KTtcclxuXHR9XHJcblxyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRtaW4taGVpZ2h0OiBjYWxjKDEwMCUgLSAyNDVweCk7XHJcblx0bWFyZ2luLXRvcDogLTVweDtcclxuXHRwYWRkaW5nOiAzNXB4IDMwcHggMzBweCAzMHB4O1xyXG5cdGJvcmRlcjogM3B4IHNvbGlkICRncmV5LTUwMDtcclxuXHRib3JkZXItdG9wOiAwcHg7XHJcblx0Ym9yZGVyLXJhZGl1czogMCAwIDVweCA1cHg7XHJcblx0dHJhbnNpdGlvbjogYWxsIDI1MG1zIGVhc2U7XHJcblx0ei1pbmRleDogMTtcclxufVxyXG5cclxuLnBvc3QtaXRlbV9fdGl0bGUge1xyXG5cdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtcG9ydHJhaXQtZG93bicpIHtcclxuXHRcdG1hcmdpbi1ib3R0b206IDMwcHg7XHJcblx0fVxyXG59XHJcblxyXG4ucG9zdC1pdGVtX190ZXh0IHtcclxuXHRAaW5jbHVkZSBtZWRpYSgndGFibGV0LXBvcnRyYWl0LWRvd24nKSB7XHJcblx0XHRkaXNwbGF5OiBub25lO1xyXG5cdH1cclxuXHJcblx0bWFyZ2luOiAyMHB4IDA7XHJcblx0Zm9udC13ZWlnaHQ6IDMwMDtcclxufVxyXG5cclxuXHJcbi8qKlxyXG4gKiBDYXRlZ29yeS5cclxuICovXHJcblxyXG4ucG9zdC1pdGVtLS1jYXRlZ29yeSB7XHJcblx0Ym9yZGVyLXJhZGl1czogNnB4IDM2cHggNXB4IDVweDtcclxuXHJcblx0LnBvc3QtaXRlbV9faW1hZ2Uge1xyXG5cdFx0aGVpZ2h0OiAyNzVweDtcclxuXHRcdGJvcmRlci1yYWRpdXM6IDZweCAzNnB4IDZweCAzNnB4O1xyXG5cdH1cclxuXHJcblx0LnBvc3QtaXRlbV9fYm9keSB7XHJcblx0XHRtaW4taGVpZ2h0OiBjYWxjKDEwMCUgLSAyNTBweCk7XHJcblx0XHRtYXJnaW4tdG9wOiAtMjVweDtcclxuXHRcdHBhZGRpbmctdG9wOiA1NXB4O1xyXG5cdH1cclxufVxyXG4iLCIucG9zdC1saXN0IHtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblxyXG5cdCY6YmVmb3JlIHtcclxuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdGJvdHRvbTogMDtcclxuXHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0aGVpZ2h0OiA1MCU7XHJcblx0XHRiYWNrZ3JvdW5kOiAkd2hpdGUtc21va2UtMTAwO1xyXG5cdFx0Y29udGVudDogJyc7XHJcblx0XHR6LWluZGV4OiAtMTtcclxuXHR9XHJcbn1cclxuXHJcbi5wb3N0LWxpc3RfX3RpdGxlIHtcclxuXHRtYXJnaW4tYm90dG9tOiA1MHB4O1xyXG59XHJcblxyXG4ucG9zdC1saXN0X19jb250YWluZXIge1xyXG5cdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtbGFuZHNjYXBlLWRvd24nKSB7XHJcblx0XHRtYXJnaW46IC0yNXB4IC0yNXB4O1xyXG5cdH1cclxuXHRAaW5jbHVkZSBtZWRpYSgndGFibGV0LXBvcnRyYWl0LWRvd24nKSB7XHJcblx0XHRtYXJnaW46IC0yNXB4IC0xMHB4O1xyXG5cdH1cclxuXHRAaW5jbHVkZSBtZWRpYSgncGhvbmUnKSB7XHJcblx0XHRtYXJnaW46IC0xMHB4IDA7XHJcblx0fVxyXG5cclxuXHRtYXJnaW46IC0yNXB4IC0xMHB4O1xyXG5cdFxyXG5cdC5jYWhpZXItaXRlbSxcclxuXHQucG9zdC1pdGVtIHtcclxuXHRcdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtbGFuZHNjYXBlLWRvd24nKSB7XHJcblx0XHRcdHdpZHRoOiBjYWxjKDUwJSAtIDUwcHgpO1xyXG5cdFx0XHRtYXJnaW46IDI1cHg7XHJcblx0XHR9XHJcblx0XHRAaW5jbHVkZSBtZWRpYSgndGFibGV0LXBvcnRyYWl0LWRvd24nKSB7XHJcblx0XHRcdHdpZHRoOiBjYWxjKDUwJSAtIDIwcHgpO1xyXG5cdFx0XHRtYXJnaW46IDI1cHggMTBweDtcclxuXHRcdH1cclxuXHRcdEBpbmNsdWRlIG1lZGlhKCdwaG9uZScpIHtcclxuXHRcdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRcdG1hcmdpbjogMTBweCAwO1xyXG5cdFx0fVxyXG5cclxuXHRcdHdpZHRoOiBjYWxjKDMzLjMzMzMlIC0gMjBweCk7XHJcblx0XHRtYXJnaW46IDI1cHggMTBweDtcclxuXHR9XHJcbn1cclxuXHJcbi5wb3N0LWxpc3QgKyAucGFnaW5hdGlvbiB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogJHdoaXRlLXNtb2tlLTEwMDtcclxufVxyXG5cclxuXHJcbi8qKlxyXG4gKiBDYXRlZ29yaWVzLlxyXG4gKi9cclxuXHJcbi5wb3N0LWxpc3QtLWNhdGVnb3JpZXMge1xyXG5cdCY6YmVmb3JlIHtcclxuXHRcdGRpc3BsYXk6IG5vbmU7XHJcblx0fVxyXG5cclxuXHQrIC5wYWdpbmF0aW9uIHtcclxuXHRcdGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZS0xMDA7XHJcblx0fVxyXG5cclxuXHQucG9zdC1saXN0X19jb250YWluZXIge1xyXG5cdFx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1sYW5kc2NhcGUtZG93bicpIHtcclxuXHRcdFx0bWFyZ2luOiAtMjVweCAtMjVweDtcclxuXHRcdH1cclxuXHRcdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtcG9ydHJhaXQtZG93bicpIHtcclxuXHRcdFx0bWFyZ2luOiAtMjVweCAtMTBweDtcclxuXHRcdH1cclxuXHRcdEBpbmNsdWRlIG1lZGlhKCdwaG9uZScpIHtcclxuXHRcdFx0bWFyZ2luOiAtMTBweCAwO1xyXG5cdFx0fVxyXG5cclxuXHRcdG1hcmdpbjogLTY1cHggLTI1cHg7XHJcblxyXG5cdFx0LmNhaGllci1pdGVtLFxyXG5cdFx0LnBvc3QtaXRlbSB7XHJcblx0XHRcdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtbGFuZHNjYXBlLWRvd24nKSB7XHJcblx0XHRcdFx0d2lkdGg6IGNhbGMoNTAlIC0gNTBweCk7XHJcblx0XHRcdFx0bWFyZ2luOiAyNXB4O1xyXG5cdFx0XHR9XHJcblx0XHRcdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtcG9ydHJhaXQtZG93bicpIHtcclxuXHRcdFx0XHR3aWR0aDogY2FsYyg1MCUgLSAyMHB4KTtcclxuXHRcdFx0XHRtYXJnaW46IDI1cHggMTBweDtcclxuXHRcdFx0fVxyXG5cdFx0XHRAaW5jbHVkZSBtZWRpYSgncGhvbmUnKSB7XHJcblx0XHRcdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRcdFx0bWFyZ2luOiAxMHB4IDA7XHJcblx0XHRcdH1cclxuXHJcblx0XHRcdHdpZHRoOiBjYWxjKDMzLjMzMzMlIC0gNTBweCk7XHJcblx0XHRcdG1hcmdpbjogNjVweCAyNXB4O1xyXG5cdFx0fVxyXG5cdH1cclxufVxyXG5cclxuXHJcbi8qKlxyXG4gKiBTbGlkZXJzLlxyXG4gKi9cclxuXHJcbi5wb3N0LWxpc3QtLXBvc3Qtc2xpZGVyLFxyXG4ucG9zdC1saXN0LS10aGVtZS1zbGlkZXIge1xyXG5cdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtcG9ydHJhaXQtZG93bicpIHtcclxuXHRcdG1hcmdpbi1ib3R0b206IDUwcHhcclxuXHR9XHJcblxyXG5cdG1hcmdpbi1ib3R0b206IDE1MHB4O1xyXG5cclxuXHQmOmJlZm9yZSB7XHJcblx0XHRkaXNwbGF5OiBub25lO1xyXG5cdH1cclxuXHJcblx0LnBvc3QtbGlzdF9fY29udGFpbmVyIHtcclxuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRcdG1hcmdpbjogMDtcclxuXHJcblx0XHQuY2FoaWVyLWl0ZW0sXHJcblx0XHQucG9zdC1pdGVtIHtcclxuXHRcdFx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1wb3J0cmFpdC1kb3duJykge1xyXG5cdFx0XHRcdHdpZHRoOiAyODVweDtcclxuXHRcdFx0fVxyXG5cclxuXHRcdFx0bWFyZ2luOiAwO1xyXG5cdFx0XHR3aWR0aDogNDAwcHg7XHJcblx0XHRcdGhlaWdodDogMTAwJTtcclxuXHRcdH1cclxuXHR9XHJcbn1cclxuXHJcbi5wb3N0LWxpc3QtLXBvc3Qtc2xpZGVyIHtcclxuXHRtYXJnaW4tYm90dG9tOiAwO1xyXG5cclxuXHQmOmFmdGVyIHtcclxuXHRcdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtbGFuZHNjYXBlLWRvd24nKSB7XHJcblx0XHRcdGxlZnQ6IDEwMHB4O1xyXG5cdFx0fVxyXG5cdFx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1wb3J0cmFpdC1kb3duJykge1xyXG5cdFx0XHRsZWZ0OiA3NXB4O1xyXG5cdFx0fVxyXG5cdFx0QGluY2x1ZGUgbWVkaWEoJ3Bob25lJykge1xyXG5cdFx0XHRsZWZ0OiAtMjBweDtcclxuXHRcdH1cclxuXHJcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHR0b3A6IDUwcHg7XHJcblx0XHRsZWZ0OiAyMTBweDtcclxuXHRcdHdpZHRoOiAxMDB2dztcclxuXHRcdGhlaWdodDogMTAwJTtcclxuXHRcdGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZS1zbW9rZS0xMDA7XHJcblx0XHRjb250ZW50OiAnJztcclxuXHRcdHotaW5kZXg6IC0xO1xyXG5cdH1cclxufVxyXG5cclxuLnBvc3QtbGlzdC0tY2FoaWVycy1uby1yZXN1bHRzIHtcclxuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbn1cclxuXHJcbi5wb3N0LWxpc3QtLXRoZW1lLXNsaWRlciB7XHJcblx0Lm93bC1jYXJvdXNlbCAub3dsLW5hdiB7XHJcblx0XHRAaW5jbHVkZSBtZWRpYSgncGhvbmUnKSB7XHJcblx0XHRcdHJpZ2h0OiAwO1xyXG5cdFx0fVxyXG5cdH1cclxufSIsIi5zaW5nbGUtYXV0aG9ycyB7XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1wb3J0cmFpdC1kb3duJykge1xyXG5cdFx0bWFyZ2luOiA1MHB4IDAgMTUwcHggMDtcclxuXHR9XHJcblxyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRtYXJnaW46IDEwMHB4IDAgMTUwcHggMDtcclxuXHR6LWluZGV4OiAyO1xyXG5cclxuXHQmOmJlZm9yZSB7XHJcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHR0b3A6IDI1cHg7XHJcblx0XHRsZWZ0OiAwO1xyXG5cdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRoZWlnaHQ6IGNhbGMoMTAwJSAtIDI1cHgpO1xyXG5cdFx0YmFja2dyb3VuZC1jb2xvcjogI2RjZWNmMDtcclxuXHRcdGNvbnRlbnQ6ICcnO1xyXG5cdFx0ei1pbmRleDogLTE7XHJcblx0fVxyXG5cclxuXHQmOmFmdGVyIHtcclxuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdHdpZHRoOiA4MDBweDtcclxuXHRcdGhlaWdodDogMTAwJTtcclxuXHRcdGJvdHRvbTogLTE1MHB4O1xyXG5cdFx0cmlnaHQ6IDEwJTtcclxuXHRcdGJhY2tncm91bmQ6IHVybCguLy4uL2ltYWdlcy9saW5lLWFib3V0LXVzLnN2Zyk7XHJcblx0XHRjb250ZW50OiAnJztcclxuXHRcdHotaW5kZXg6IC0yO1xyXG5cdH1cclxuXHJcblx0LnNvY2lhbC1zaGFyZSB7XHJcblx0XHRAaW5jbHVkZSBtZWRpYSgndGFibGV0LXBvcnRyYWl0LWRvd24nKSB7XHJcblx0XHRcdHBhZGRpbmc6IDUwcHggMDtcclxuXHRcdH1cclxuXHJcblx0XHRwYWRkaW5nOiAxMjBweCAwIDcwcHggMDtcclxuXHR9XHJcbn1cclxuXHJcbi5zaW5nbGUtYXV0aG9yc19fdGl0bGUge1xyXG5cdG1hcmdpbi1ib3R0b206IDVweDtcclxufVxyXG5cclxuLnNpbmdsZS1hdXRob3JzX19lZGl0b3Ige1xyXG5cdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtcG9ydHJhaXQtZG93bicpIHtcclxuXHRcdG1hcmdpbi1ib3R0b206IDUwcHg7XHJcblx0fVxyXG5cclxuXHRtYXJnaW4tYm90dG9tOiA3MHB4O1xyXG5cdGZvbnQtd2VpZ2h0OiAzMDA7XHJcbn1cclxuXHJcbi5zaW5nbGUtYXV0aG9yc19fYXV0aG9ycyB7XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1wb3J0cmFpdC1kb3duJykge1xyXG5cdFx0bWFyZ2luOiAwO1xyXG5cdH1cclxuXHJcblx0bWFyZ2luOiAwIC0zMHB4O1xyXG59XHJcblxyXG4uc2luZ2xlLWF1dGhvcnNfX2NvbHVtbiB7XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1wb3J0cmFpdC1kb3duJykge1xyXG5cdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRtYXJnaW46IDA7XHJcblx0fVxyXG5cclxuXHR3aWR0aDogY2FsYyg1MCUgLSA2MHB4KTtcclxuXHRtYXJnaW46IDAgMzBweDtcclxuXHJcblx0JjpmaXJzdC1vZi10eXBlIHtcclxuXHRcdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtcG9ydHJhaXQtZG93bicpIHtcclxuXHRcdFx0bWFyZ2luLWJvdHRvbTogLTJweDtcclxuXHRcdH1cclxuXHR9XHJcbn1cclxuXHJcbi5zaW5nbGUtYXV0aG9yc19fYXV0aG9yIHtcclxuXHRAaW5jbHVkZSBtZWRpYSgndGFibGV0LXBvcnRyYWl0LWRvd24nKSB7XHJcblx0XHRwYWRkaW5nLWJvdHRvbTogMjBweDtcclxuXHR9XHJcblxyXG5cdGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAkZ3JleS03MDA7XHJcblxyXG5cdCY6bnRoLWNoaWxkKDEpIHtcclxuXHRcdGJvcmRlci10b3A6IDJweCBzb2xpZCAkZ3JleS03MDA7XHJcblx0fVxyXG5cclxuXHQmLmlzLWFjdGl2ZSB7XHJcblx0XHQuc2luZ2xlLWF1dGhvcnNfX2F1dGhvci1oZWFkID4gc3ZnIHtcclxuXHRcdFx0dHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcclxuXHRcdH1cclxuXHR9XHJcbn1cclxuXHJcbi5zaW5nbGUtYXV0aG9yc19fYXV0aG9yLWhlYWQge1xyXG5cdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtcG9ydHJhaXQtZG93bicpIHtcclxuXHRcdHBhZGRpbmc6IDIwcHggMCAwIDA7XHJcblx0fVxyXG5cclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0cGFkZGluZzogMjBweCAwO1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHJcblx0PiBzdmcge1xyXG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0dG9wOiAzN3B4O1xyXG5cdFx0cmlnaHQ6IDA7XHJcblx0XHR3aWR0aDogMTBweDtcclxuXHRcdGhlaWdodDogMThweDtcclxuXHRcdG1hcmdpbi1yaWdodDogMTVweDtcclxuXHRcdHRyYW5zaXRpb246IGFsbCA1MDBtcyBlYXNlO1xyXG5cdH1cclxufVxyXG5cclxuLnNpbmdsZS1hdXRob3JzX19hdXRob3ItbmFtZSB7XHJcblx0Zm9udC13ZWlnaHQ6IDcwMDtcclxuXHJcblx0PiBzdmcge1xyXG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdFx0dG9wOiAxMHB4O1xyXG5cdFx0d2lkdGg6IDE0cHg7XHJcblx0XHRoZWlnaHQ6IDMwcHg7XHJcblx0XHRtYXJnaW4tcmlnaHQ6IDE1cHg7XHJcblx0fVxyXG59XHJcblxyXG4uc2luZ2xlLWF1dGhvcnNfX2F1dGhvci10ZXh0IHtcclxuXHRkaXNwbGF5OiBub25lO1xyXG5cdHBhZGRpbmctYm90dG9tOiAyMHB4O1xyXG5cdHBhZGRpbmctbGVmdDogMzVweDtcclxuXHRmb250LXdlaWdodDogMzAwO1xyXG59XHJcblxyXG4uc2luZ2xlLWF1dGhvcnNfX2NhcHRpb24ge1xyXG5cdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtcG9ydHJhaXQtZG93bicpIHtcclxuXHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0bWFyZ2luLXRvcDogNTBweDtcclxuXHR9XHJcblxyXG5cdEBpbmNsdWRlIGZvbnQoMTJweCwgMTdweCk7XHJcblx0d2lkdGg6IGNhbGMoNTAlIC0gNjBweCk7XHJcblx0bWFyZ2luLXRvcDogNzBweDtcclxuXHRjb2xvcjogJGJsdWUtMTAwO1xyXG5cdGZvbnQtd2VpZ2h0OiAzMDA7XHJcblx0Zm9udC1zdHlsZTogaXRhbGljO1xyXG59XHJcbiIsIi50aGVtZS1pdGVtIHtcclxuXHR3aWR0aDogMjk1cHg7XHJcblx0aGVpZ2h0OiAxMDAlO1xyXG5cdGJvcmRlci1yYWRpdXM6IDVweDtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGUtMTAwO1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkICR3aGl0ZS1zbW9rZS0xMDA7XHJcblx0dHJhbnNpdGlvbjogYWxsIDI1MG1zIGVhc2U7XHJcblxyXG5cdCY6YWZ0ZXIge1xyXG5cdFx0cmlnaHQ6IC04cHg7XHJcblx0XHRib3R0b206IGNhbGMoNTAlIC0gMjlweCk7XHJcblx0XHRvcGFjaXR5OiAwO1xyXG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVYKDUwJSk7XHJcblx0XHR0cmFuc2l0aW9uOiBhbGwgNTAwbXMgZWFzZTtcclxuXHRcdHotaW5kZXg6IDEwO1xyXG5cdH1cclxuXHJcblx0Jjpob3ZlciB7XHJcblx0XHRib3gtc2hhZG93OiAwIDAgMTBweCAwICRncmV5LTMwO1xyXG5cclxuXHRcdCY6YWZ0ZXIge1xyXG5cdFx0XHRvcGFjaXR5OiAxO1xyXG5cdFx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XHJcblx0XHR9XHJcblx0fVxyXG59XHJcblxyXG4udGhlbWUtaXRlbV9faW1hZ2Uge1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHR3aWR0aDogMTAwJTtcclxuXHRoZWlnaHQ6IDE1MHB4O1xyXG5cclxuXHRpbWcge1xyXG5cdFx0Ym9yZGVyLXJhZGl1czogNXB4O1xyXG5cdH1cclxufVxyXG5cclxuLnRoZW1lLWl0ZW1fX2JvZHkge1xyXG5cdHBhZGRpbmc6IDIwcHggMjBweCAxMHB4IDIwcHg7XHJcblx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG59XHJcblxyXG4udGhlbWUtaXRlbV9faWNvbnMge1xyXG5cdG1hcmdpbi10b3A6IDIwcHg7XHJcblx0cGFkZGluZzogMTVweCA2MHB4IDAgNjBweDtcclxuXHRib3JkZXItdG9wOiAzcHggc29saWQgJGJsdWUtcGF0dGVucy0xMDA7XHJcblxyXG5cdHN2ZyB7XHJcblx0XHR3aWR0aDogMjBweDtcclxuXHRcdGhlaWdodDogMzBweDtcclxuXHJcblx0XHQmLmZhLWNvcHkge1xyXG5cdFx0XHR3aWR0aDogMTZweDtcdFxyXG5cdFx0fVxyXG5cdH1cclxufVxyXG4iLCIudGhlbWUtc2xpZGVyIHtcclxuXHRAaW5jbHVkZSBtZWRpYSgndGFibGV0LXBvcnRyYWl0LWRvd24nKSB7XHJcblx0XHRtYXJnaW46IDUwcHggMDtcclxuXHR9XHJcblxyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRtYXJnaW46IDgwcHggMDtcclxuXHJcblx0LndyYXBwZXIge1xyXG5cdFx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1wb3J0cmFpdC1kb3duJykge1xyXG5cdFx0XHRwYWRkaW5nLXRvcDogNzBweDtcclxuXHRcdH1cclxuXHRcdEBpbmNsdWRlIG1lZGlhKCdwaG9uZScpIHtcclxuXHRcdFx0cGFkZGluZy10b3A6IDUwcHg7XHJcblx0XHR9XHJcblxyXG5cdFx0cGFkZGluZy10b3A6IDEwMHB4O1xyXG5cdFx0cGFkZGluZy1ib3R0b206IDUwcHg7XHJcblxyXG5cdFx0JjpiZWZvcmUge1xyXG5cdFx0XHRAaW5jbHVkZSBtZWRpYSgndGFibGV0LWxhbmRzY2FwZS1kb3duJykge1xyXG5cdFx0XHRcdGxlZnQ6IDE1MHB4O1xyXG5cdFx0XHR9XHJcblx0XHRcdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtcG9ydHJhaXQtZG93bicpIHtcclxuXHRcdFx0XHR3aWR0aDogY2FsYygxMDB2dyArIDYwcHgpO1xyXG5cdFx0XHRcdGxlZnQ6IC02MHB4O1xyXG5cdFx0XHR9XHJcblxyXG5cdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHRcdGJvdHRvbTogMDtcclxuXHRcdFx0bGVmdDogMjYwcHg7XHJcblx0XHRcdHdpZHRoOiAxMDB2dztcclxuXHRcdFx0aGVpZ2h0OiAxMDAlO1xyXG5cdFx0XHRiYWNrZ3JvdW5kOiAkd2hpdGUtc21va2UtMTAwO1xyXG5cdFx0XHRjb250ZW50OiAnJztcclxuXHRcdFx0ei1pbmRleDogLTE7XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHQmOmFmdGVyIHtcclxuXHRcdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtbGFuZHNjYXBlLWRvd24nKSB7XHJcblx0XHRcdHJpZ2h0OiAtNDkzcHg7XHJcblx0XHR9XHJcblx0XHRAaW5jbHVkZSBtZWRpYSgndGFibGV0LXBvcnRyYWl0LWRvd24nKSB7XHJcblx0XHRcdHJpZ2h0OiAtNTE1cHg7XHJcblx0XHRcdHRvcDogM3B4O1xyXG5cdFx0fVxyXG5cdFx0QGluY2x1ZGUgbWVkaWEoJ3Bob25lJykge1xyXG5cdFx0XHRkaXNwbGF5OiBub25lO1xyXG5cdFx0fVxyXG5cclxuXHRcdHJpZ2h0OiAtNDY0cHg7XHJcblx0XHR0b3A6IDEwMHB4O1xyXG5cdFx0dHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcclxuXHRcdHotaW5kZXg6IDI7XHJcblx0fVxyXG5cclxuXHQqIHtcclxuXHRcdHotaW5kZXg6IGluaXRpYWw7XHJcblx0fVxyXG59XHJcblxyXG4udGhlbWUtc2xpZGVyX19oZWFkIHtcclxuXHRAaW5jbHVkZSBtZWRpYSgndGFibGV0LWxhbmRzY2FwZS1kb3duJykge1xyXG5cdFx0bWFyZ2luOiAwIGF1dG8gOTBweCBhdXRvO1xyXG5cdFx0cGFkZGluZy10b3A6IDQwcHg7XHJcblx0fVxyXG5cclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0bWF4LXdpZHRoOiA2MTBweDtcclxuXHRtYXJnaW46IDAgYXV0byA1MHB4IGF1dG87XHJcblx0cGFkZGluZy10b3A6IDkwcHg7XHJcblx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG5cclxuXHQuaGVhZGluZy1iYWNrZ3JvdW5kIHtcclxuXHRcdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtbGFuZHNjYXBlLWRvd24nKSB7XHJcblx0XHRcdEBpbmNsdWRlIGZvbnQoODBweCwgODBweCk7XHJcblx0XHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0XHRsZXR0ZXItc3BhY2luZzogMi4yMnB4O1xyXG5cdFx0XHRjb2xvcjogJGJsdWUtbGFnb29uLTU7XHJcblx0XHR9XHJcblxyXG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0dG9wOiAwO1xyXG5cdH1cclxufVxyXG5cclxuLnRoZW1lLXNsaWRlcl9fdGl0bGUge1xyXG5cdG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbn1cclxuXHJcbi50aGVtZS1zbGlkZXJfX3NsaWRlciB7XHJcblx0ei1pbmRleDogMTA7XHJcblxyXG5cdC5vd2wtbmF2IHtcclxuXHRcdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtbGFuZHNjYXBlLWRvd24nKSB7XHJcblx0XHRcdHRvcDogLTcwcHg7XHJcblx0XHR9XHJcblx0XHRAaW5jbHVkZSBtZWRpYSgncGhvbmUnKSB7XHJcblx0XHRcdHRvcDogLTcwcHg7XHJcblx0XHRcdGxlZnQ6IDA7XHJcblx0XHRcdHJpZ2h0OiAwO1xyXG5cdFx0XHRtYXJnaW46IDAgYXV0bztcclxuXHRcdFx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblx0XHR9XHJcblx0fVxyXG59XHJcblxyXG5cclxuIiwiLmNhcnQtdG90YWxzIHtcclxuXHRAaW5jbHVkZSBtZWRpYSgndGFibGV0LWxhbmRzY2FwZS1kb3duJykge1xyXG5cdFx0bWFyZ2luOiA1MHB4IDAgMCAwO1xyXG5cdH1cclxuXHJcblx0d2lkdGg6IDI5NXB4O1xyXG5cdG1hcmdpbjogMTM1cHggMCA5NXB4IDIwcHg7XHJcblxyXG5cdC5idXR0b24ge1xyXG5cdFx0QGV4dGVuZCAlYnV0dG9uLS1ibHVlO1xyXG5cdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHJcblx0XHRzdmcge1xyXG5cdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0XHRcdHRvcDogM3B4O1xyXG5cdFx0XHR3aWR0aDogMTVweDtcclxuXHRcdFx0aGVpZ2h0OiAxM3B4O1xyXG5cdFx0XHRtYXJnaW4tcmlnaHQ6IDhweDtcclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdGJyIHtcclxuXHRcdGRpc3BsYXk6IG5vbmU7XHJcblx0fVxyXG59XHJcblxyXG4uY2FydC10b3RhbHNfX3RvdGFsIHtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcblx0bWFyZ2luLWJvdHRvbTogMTVweDtcclxuXHRwYWRkaW5nOiAzMHB4IDIwcHg7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogJGJsdWUtcGF0dGVucy0xMDA7XHJcblxyXG5cdHN0cm9uZyB7XHJcblx0XHR3aWR0aDogNTAlO1xyXG5cdH1cclxuXHJcblx0LmluY2x1ZGVzX3RheCB7XHJcblx0XHRkaXNwbGF5OiBub25lO1xyXG5cdH1cclxuXHJcblx0LmFtb3VudCB7XHJcblx0XHRAaW5jbHVkZSBmb250KDI0cHgsIDI1cHgpO1xyXG5cdFx0ZGlzcGxheTogYmxvY2s7XHJcblx0XHRmb250LXdlaWdodDogNzAwO1xyXG5cdFx0Y29sb3I6ICRibHVlLTEwMDtcclxuXHR9XHJcbn1cclxuXHJcbi5jYXJ0LXRvdGFsc19fc2hpcHBpbmcge1xyXG5cdEBpbmNsdWRlIGZvbnQoMTVweCwgMzBweCk7XHJcblx0bWFyZ2luLWJvdHRvbTogMTVweDtcclxuXHRwYWRkaW5nOiAyMHB4O1xyXG5cdGJhY2tncm91bmQtY29sb3I6ICRibHVlLXBhdHRlbnMtMTAwO1xyXG5cdGZvbnQtd2VpZ2h0OiAzMDA7XHJcblxyXG5cdC5oZWFkaW5nIHtcclxuXHRcdEBpbmNsdWRlIGZvbnQoMTZweCwgMjJweCk7XHJcblx0XHRkaXNwbGF5OiBibG9jaztcclxuXHRcdG1hcmdpbi1ib3R0b206IDE1cHg7XHJcblx0XHRjb2xvcjogJGdyZXktMTAwO1xyXG5cdH1cclxuXHJcblx0c3Ryb25nLFxyXG5cdGVtIHtcclxuXHRcdGRpc3BsYXk6IGJsb2NrO1xyXG5cdFx0Zm9udC13ZWlnaHQ6IDMwMDtcclxuXHR9XHJcblxyXG5cdHAge1xyXG5cdFx0bWFyZ2luLWJvdHRvbTogMTBweDtcclxuXHR9XHJcbn1cclxuXHJcbiIsIi5taW5pLWNhcnQge1xyXG5cdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtcG9ydHJhaXQtZG93bicpIHtcclxuXHRcdHJpZ2h0OiAtMTE1cHg7XHJcblx0XHR3aWR0aDogY2FsYygxMDB2dyAtIDQwcHgpO1xyXG5cdFx0bWF4LXdpZHRoOiBjYWxjKDEwMHZ3IC0gNDBweCk7XHJcblx0fVxyXG5cclxuXHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0dG9wOiAxMDBweDtcclxuXHRyaWdodDogMDtcclxuXHR3aWR0aDogY2FsYygxMDB2dyAtIDE1MnB4KTtcclxuXHRtYXgtd2lkdGg6IDc2MHB4O1xyXG5cdHBhZGRpbmctdG9wOiAxMDAlO1xyXG5cdGNvbG9yOiBpbml0aWFsO1xyXG5cdG9wYWNpdHk6IDA7XHJcblx0ei1pbmRleDogLTE7XHJcblx0dHJhbnNpdGlvbjogYWxsIDUwMG1zIGVhc2U7XHJcblxyXG5cdCYuaXMtYWN0aXZlIHtcclxuXHRcdHRvcDogMDtcclxuXHRcdG9wYWNpdHk6IDE7XHJcblx0XHR6LWluZGV4OiA5OTtcclxuXHR9XHJcbn1cclxuXHJcbi5taW5pLWNhcnRfX2Nsb3NlIHtcclxuXHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0dG9wOiAzcHg7XHJcblx0cmlnaHQ6IDhweDtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblxyXG5cdHN2ZyB7XHJcblx0XHR3aWR0aDogMTBweDtcclxuXHRcdGhlaWdodDogMTRweDtcclxuXHRcdGNvbG9yOiAkYmx1ZS1sYWdvb24tMTAwO1xyXG5cdH1cclxufVxyXG5cclxuLm1pbmktY2FydF9fd3JhcCB7XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1sYW5kc2NhcGUtZG93bicpIHtcclxuXHRcdHBhZGRpbmc6IDI1cHg7XHJcblx0fVxyXG5cclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0cGFkZGluZzogNTBweDtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGUtMTAwO1xyXG5cdGJveC1zaGFkb3c6IDAgMCAxMHB4IDAgJGJsdWUtbGFnb29uLTIwO1xyXG5cdGJvcmRlci1yYWRpdXM6IDJweDtcclxuXHJcblx0JjphZnRlciB7XHJcblx0XHRib3R0b206IDEwcHg7XHJcblx0XHRsZWZ0OiAxMHB4O1xyXG5cdH1cclxuXHJcblx0Lm1pbmlfY2FydF9oZWFkIHtcclxuXHRcdGRpc3BsYXk6IGZsZXg7XHJcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0XHRwYWRkaW5nLWJvdHRvbTogMTBweDtcclxuXHJcblx0XHRzcGFuIHtcclxuXHRcdFx0QGluY2x1ZGUgZm9udCgxNHB4LCAxOXB4KTtcclxuXHRcdFx0Y29sb3I6ICRibHVlLWxhZ29vbi0xMDA7XHJcblx0XHRcdG9wYWNpdHk6IDAuMzk7XHJcblx0XHRcdGZvbnQtd2VpZ2h0OiBib2xkO1xyXG5cclxuXHRcdFx0JjpudGgtY2hpbGQoMSkge1xyXG5cdFx0XHRcdHdpZHRoOiA2MCU7XHJcblx0XHRcdFx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG5cdFx0XHR9XHJcblxyXG5cdFx0XHQmOm50aC1jaGlsZCgzKSB7XHJcblx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0XHRcdHJpZ2h0OiA1MHB4O1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHQubWluaV9jYXJ0X2l0ZW0ge1xyXG5cdFx0ZGlzcGxheTogZmxleDtcclxuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0XHRtYXJnaW4tYm90dG9tOiA1cHg7XHJcblx0XHRwYWRkaW5nOiAxNXB4O1xyXG5cdFx0Ym9yZGVyOiAycHggc29saWQgJHdoaXRlLXNtb2tlLTEwMDtcclxuXHRcdGJvcmRlci1yYWRpdXM6IDJweDtcclxuXHJcblx0XHQ+IGEge1xyXG5cdFx0XHRAaW5jbHVkZSBmb250KDE0cHgsIDE5cHgpO1xyXG5cdFx0XHRjb2xvcjogJGJsdWUtbGFnb29uLTEwMDtcclxuXHRcdFx0Zm9udC13ZWlnaHQ6IGJvbGQ7XHJcblx0XHRcdHdpZHRoOiA2MCU7XHJcblx0XHR9XHJcblxyXG5cdFx0LnJlbW92ZV9mcm9tX2NhcnRfYnV0dG9uIHtcclxuXHRcdFx0ZGlzcGxheTogbm9uZTtcclxuXHRcdH1cclxuXHJcblx0XHQucXVhbnRpdHkge1xyXG5cdFx0XHRAaW5jbHVkZSBmb250KDE0cHgsIDE5cHgpO1xyXG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xyXG5cdFx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcblx0XHRcdHdpZHRoOiA0MCU7XHJcblxyXG5cdFx0XHQ+IHNwYW4ge1xyXG5cdFx0XHRcdEBpbmNsdWRlIGZvbnQoMjRweCwgMjVweCk7XHJcblx0XHRcdFx0cGFkZGluZy1yaWdodDogMzVweDtcclxuXHRcdFx0XHRmb250LXdlaWdodDogNzAwO1xyXG5cdFx0XHRcdGNvbG9yOiAkYmx1ZS0xMDA7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHJcblx0XHRpbWcge1xyXG5cdFx0XHRAaW5jbHVkZSBtZWRpYSgndGFibGV0LXBvcnRyYWl0LWRvd24nKSB7XHJcblx0XHRcdFx0ZGlzcGxheTogbm9uZTtcclxuXHRcdFx0fVxyXG5cclxuXHRcdFx0d2lkdGg6IDEwNXB4O1xyXG5cdFx0XHRoZWlnaHQ6IDEwMHB4O1xyXG5cdFx0XHRtYXJnaW4tcmlnaHQ6IDMwcHg7XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHQud29vY29tbWVyY2UtbWluaS1jYXJ0X190b3RhbCB7XHJcblx0XHRkaXNwbGF5OiBmbGV4O1xyXG5cdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRcdGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XHJcblx0XHRwYWRkaW5nOiA0MHB4IDUwcHggNDVweCAwO1xyXG5cclxuXHRcdHN0cm9uZyB7XHJcblx0XHRcdEBpbmNsdWRlIGZvbnQoMTZweCwgMjJweCk7XHJcblx0XHRcdGNvbG9yOiAkZ3JleS0xMDA7XHJcblx0XHRcdG1hcmdpbi1yaWdodDogMjBweDtcclxuXHRcdH1cclxuXHJcblx0XHQuYW1vdW50IHtcclxuXHRcdFx0QGluY2x1ZGUgZm9udCgyNHB4LCAyNXB4KTtcclxuXHRcdFx0Zm9udC13ZWlnaHQ6IDcwMDtcclxuXHRcdFx0Y29sb3I6ICRibHVlLTEwMDtcclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdC53b29jb21tZXJjZS1taW5pLWNhcnRfX2J1dHRvbnMge1xyXG5cdFx0ZGlzcGxheTogZmxleDtcclxuXHRcdGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XHJcblxyXG5cdFx0PiBhIHtcclxuXHRcdFx0QGV4dGVuZCAlYnV0dG9uO1xyXG5cdFx0XHRAZXh0ZW5kICVidXR0b24tLWJsdWU7XHJcblx0XHRcdHBhZGRpbmctcmlnaHQ6IDQwcHg7XHJcblx0XHRcdHBhZGRpbmctbGVmdDogNDBweDtcclxuXHJcblx0XHRcdHN2ZyB7XHJcblx0XHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdFx0XHRcdHRvcDogM3B4O1xyXG5cdFx0XHRcdHdpZHRoOiAxNXB4O1xyXG5cdFx0XHRcdGhlaWdodDogMTNweDtcclxuXHRcdFx0XHRtYXJnaW4tcmlnaHQ6IDhweDtcclxuXHRcdFx0fVxyXG5cclxuXHRcdFx0Jjpob3ZlciB7XHJcblx0XHRcdFx0c3ZnIHtcclxuXHRcdFx0XHRcdGNvbG9yOiAkd2hpdGUtMTAwO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cclxuXHRcdFx0Ji5jaGVja291dCB7XHJcblx0XHRcdFx0ZGlzcGxheTogbm9uZTtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cclxuXHJcbn1cclxuXHJcbi53b29jb21tZXJjZS1taW5pLWNhcnRfX2VtcHR5LW1lc3NhZ2Uge1xyXG5cdHRleHQtYWxpZ246IGNlbnRlcjtcclxufVxyXG4iLCIud29vY29tbWVyY2Uge1xyXG5cdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtbGFuZHNjYXBlLWRvd24nKSB7XHJcblx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xyXG5cdH1cclxuXHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LXdyYXA6IHdyYXA7XHJcblxyXG5cdGgyIHtcclxuXHRcdHdpZHRoOiAxMDAlO1xyXG5cdH1cclxufVxyXG4iLCIld29vY29tbWVyY2UtY2FydC1mb3JtLFxyXG4ud29vY29tbWVyY2UtY2FydC1mb3JtIHtcclxuXHRAaW5jbHVkZSBtZWRpYSgndGFibGV0LWxhbmRzY2FwZS1kb3duJykge1xyXG5cdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRtYXJnaW46IDk1cHggMCAwIDA7XHJcblx0fVxyXG5cclxuXHR3aWR0aDogY2FsYygxMDAlIC0gMzE1cHgpO1xyXG5cdG1hcmdpbjogOTVweCAwO1xyXG5cclxuXHR0YWJsZSB7XHJcblx0XHR3aWR0aDogMTAwJTtcclxuXHRcdGJvcmRlci1jb2xsYXBzZTogc2VwYXJhdGU7IFxyXG5cdFx0Ym9yZGVyLXNwYWNpbmc6IDAgMjBweDtcclxuXHR9XHJcblxyXG5cdC8qKlxyXG5cdCAqIEhlYWQuXHJcblx0ICovXHJcblx0dGhlYWQge1xyXG5cdFx0QGluY2x1ZGUgZm9udCgyMHB4LCAyNHB4KTtcclxuXHRcdGNvbG9yOiAkYmx1ZS1sYWdvb24tMTAwO1xyXG5cdFx0b3BhY2l0eTogMC4zOTtcclxuXHRcdGZvbnQtd2VpZ2h0OiBib2xkO1xyXG5cdFx0bGV0dGVyLXNwYWNpbmc6IDAuNTZweDtcclxuXHRcdHRleHQtYWxpZ246IGxlZnQ7XHJcblxyXG5cdFx0dGgge1xyXG5cdFx0XHRwYWRkaW5nLWJvdHRvbTogMTVweDtcclxuXHJcblx0XHRcdCYucHJvZHVjdC10aHVtYm5haWwge1xyXG5cdFx0XHRcdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtcG9ydHJhaXQtZG93bicpIHtcclxuXHRcdFx0XHRcdGRpc3BsYXk6IG5vbmU7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblxyXG5cdFx0XHQmLnByb2R1Y3QtbmFtZSB7XHJcblx0XHRcdFx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1wb3J0cmFpdC1kb3duJykge1xyXG5cdFx0XHRcdFx0cGFkZGluZy1sZWZ0OiAxNXB4O1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0LyoqXHJcblx0ICogQm9keS5cclxuXHQgKi9cclxuXHR0Ym9keSB7XHJcblx0XHR0ciB7XHJcblx0XHRcdHBhZGRpbmc6IDE1cHg7XHJcblx0XHRcdGJvcmRlcjogMnB4IHNvbGlkICR3aGl0ZS1zbW9rZS0xMDA7XHJcblx0XHRcdHRyYW5zaXRpb246IGFsbCAyNTBtcyBlYXNlO1xyXG5cclxuXHRcdFx0JjpsYXN0LW9mLXR5cGUge1xyXG5cdFx0XHRcdGRpc3BsYXk6IG5vbmU7XHJcblx0XHRcdH1cclxuXHJcblx0XHRcdCY6aG92ZXIge1xyXG5cdFx0XHRcdGJveC1zaGFkb3c6IDAgMCAxMHB4IDAgJGJsdWUtbGFnb29uLTEzO1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblxyXG5cdFx0dGQge1xyXG5cdFx0XHRwYWRkaW5nOiAxNXB4IDA7XHJcblx0XHRcdGJvcmRlci10b3A6IDJweCBzb2xpZCAkd2hpdGUtc21va2UtMTAwO1xyXG5cdFx0XHRib3JkZXItYm90dG9tOiAycHggc29saWQgJHdoaXRlLXNtb2tlLTEwMDtcclxuXHRcdH1cclxuXHJcblx0XHQvKipcclxuXHRcdCAqIFRodW1ibmFpbC5cclxuXHRcdCAqL1xyXG5cdFx0LnByb2R1Y3QtdGh1bWJuYWlsIHtcclxuXHRcdFx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1wb3J0cmFpdC1kb3duJykge1xyXG5cdFx0XHRcdGRpc3BsYXk6IG5vbmU7XHJcblx0XHRcdH1cclxuXHJcblx0XHRcdHBhZGRpbmctbGVmdDogMTVweDtcclxuXHRcdFx0Ym9yZGVyLWxlZnQ6IDJweCBzb2xpZCAkd2hpdGUtc21va2UtMTAwO1xyXG5cclxuXHRcdFx0YSB7XHJcblx0XHRcdFx0ZGlzcGxheTogYmxvY2s7XHJcblx0XHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdFx0XHRcdHdpZHRoOiAxOTVweDtcclxuXHRcdFx0XHRoZWlnaHQ6IDIwMHB4O1xyXG5cclxuXHRcdFx0XHRpbWcge1xyXG5cdFx0XHRcdFx0QGV4dGVuZCAlb2JqZWN0LWZpdDtcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHJcblx0XHQvKipcclxuXHRcdCAqIFByb2R1Y3QuXHJcblx0XHQgKi9cclxuXHRcdC5wcm9kdWN0LW5hbWUge1xyXG5cdFx0XHRAaW5jbHVkZSBtZWRpYSgndGFibGV0LXBvcnRyYWl0LWRvd24nKSB7XHJcblx0XHRcdFx0cGFkZGluZy1sZWZ0OiAxNXB4O1xyXG5cdFx0XHR9XHJcblx0XHRcdEBpbmNsdWRlIG1lZGlhKCdwaG9uZScpIHtcclxuXHRcdFx0XHRwYWRkaW5nLWxlZnQ6IDEwcHg7XHJcblx0XHRcdH1cclxuXHJcblx0XHRcdEBpbmNsdWRlIGZvbnQoMTZweCwgMjJweCk7XHJcblx0XHRcdGZvbnQtd2VpZ2h0OiBib2xkO1xyXG5cdFx0XHRjb2xvcjogJGdyZXktMTAwO1xyXG5cdFx0fVxyXG5cclxuXHRcdC8qKlxyXG5cdFx0ICogQW1vdW50LlxyXG5cdFx0ICovXHJcblx0XHQucHJvZHVjdC1xdWFudGl0eSB7XHJcblx0XHRcdEBpbmNsdWRlIG1lZGlhKCdwaG9uZScpIHtcclxuXHRcdFx0XHQ+IGRpdiB7XHJcblx0XHRcdFx0XHRmbGV4LXdyYXA6IHdyYXA7XHJcblx0XHRcdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHRcdFx0XHRcdHdpZHRoOiA0MHB4O1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cclxuXHRcdFx0YnIsXHJcblx0XHRcdGxhYmVsIHtcclxuXHRcdFx0XHRkaXNwbGF5OiBub25lO1xyXG5cdFx0XHR9XHJcblxyXG5cdFx0XHRzcGFuIHtcclxuXHRcdFx0XHRAaW5jbHVkZSBmb250KDE4cHgsIDIwcHgpO1xyXG5cdFx0XHRcdGRpc3BsYXk6IGZsZXg7XHJcblx0XHRcdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRcdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHRcdFx0XHR3aWR0aDogMzJweDtcclxuXHRcdFx0XHRoZWlnaHQ6IDQwcHg7XHJcblx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJGJsdWUtcGF0dGVucy0xMDA7XHJcblx0XHRcdFx0Y29sb3I6ICRibHVlLTEwMDtcclxuXHRcdFx0XHRmb250LXdlaWdodDogYm9sZDtcclxuXHRcdFx0XHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0XHRcdFx0Ym9yZGVyLXJhZGl1czogMnB4O1xyXG5cdFx0XHRcdHRyYW5zaXRpb246IGFsbCAyNTBtcyBlYXNlO1xyXG5cclxuXHRcdFx0XHQmOmhvdmVyIHtcclxuXHRcdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRibHVlLTEwMDtcclxuXHRcdFx0XHRcdGNvbG9yOiAkYmx1ZS1wYXR0ZW5zLTEwMDtcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHJcblx0XHRcdGlucHV0IHtcclxuXHRcdFx0XHRAaW5jbHVkZSBtZWRpYSgncGhvbmUnKSB7XHJcblx0XHRcdFx0XHR3aWR0aDogMzJweDtcclxuXHRcdFx0XHR9XHJcblxyXG5cdFx0XHRcdEBpbmNsdWRlIGZvbnQoMThweCwgMThweCk7XHJcblx0XHRcdFx0ZGlzcGxheTogZmxleDtcclxuXHRcdFx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblx0XHRcdFx0d2lkdGg6IDQwcHg7XHJcblx0XHRcdFx0aGVpZ2h0OiA0MHB4O1xyXG5cdFx0XHRcdHBhZGRpbmc6IDA7XHJcblx0XHRcdFx0YmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XHJcblx0XHRcdFx0Y29sb3I6ICRibHVlLWxhZ29vbi0xMDA7XHJcblx0XHRcdFx0Zm9udC13ZWlnaHQ6IGJvbGQ7XHJcblxyXG5cdFx0XHRcdCY6Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24sXHJcblx0XHRcdFx0Jjo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbiB7XHJcblx0XHRcdFx0XHQtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XHJcblx0XHRcdFx0XHRtYXJnaW46IDA7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHR9XHJcblxyXG5cdFx0LyoqXHJcblx0XHQgKiBTdWJ0b3RhbC5cclxuXHRcdCAqL1xyXG5cdFx0LnByb2R1Y3Qtc3VidG90YWwge1xyXG5cdFx0XHRAaW5jbHVkZSBmb250KDI0cHgsIDI1cHgpO1xyXG5cdFx0XHRmb250LXdlaWdodDogNzAwO1xyXG5cdFx0XHRjb2xvcjogJGJsdWUtMTAwO1xyXG5cdFx0fVxyXG5cclxuXHRcdC8qKlxyXG5cdFx0ICogRGVsZXRlLlxyXG5cdFx0ICovXHJcblx0XHQucHJvZHVjdC1yZW1vdmUge1xyXG5cdFx0XHRAaW5jbHVkZSBtZWRpYSgncGhvbmUnKSB7XHJcblx0XHRcdFx0cGFkZGluZy1yaWdodDogMTBweDtcclxuXHRcdFx0fVxyXG5cclxuXHRcdFx0cGFkZGluZy1yaWdodDogMjBweDtcclxuXHRcdFx0Ym9yZGVyLXJpZ2h0OiAycHggc29saWQgJHdoaXRlLXNtb2tlLTEwMDtcclxuXHJcblx0XHRcdGEge1xyXG5cdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xyXG5cdFx0XHRcdGhlaWdodDogMjFweDtcclxuXHJcblx0XHRcdFx0Jjpob3ZlciB7XHJcblx0XHRcdFx0XHRzdmcge1xyXG5cdFx0XHRcdFx0XHRvcGFjaXR5OiAxO1xyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cclxuXHRcdFx0c3ZnIHtcclxuXHRcdFx0XHR3aWR0aDogMThweDtcclxuXHRcdFx0XHRoZWlnaHQ6IDIxcHg7XHJcblx0XHRcdFx0Y29sb3I6ICRibHVlLWxhZ29vbi0xMDA7XHJcblx0XHRcdFx0b3BhY2l0eTogMC41O1xyXG5cdFx0XHRcdHRyYW5zaXRpb246IGFsbCAyNTBtcyBlYXNlO1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblxyXG5cdH1cclxufVxyXG4iLCIud29vY29tbWVyY2UtY2hlY2tvdXRfX2NvbnRhaW5lciB7XHJcblx0bWFyZ2luOiA5NXB4IDA7XHJcblxyXG5cdCY6YmVmb3JlIHtcclxuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdHdpZHRoOiA1OTBweDtcclxuXHRcdGhlaWdodDogMjc5M3B4O1xyXG5cdFx0dG9wOiAzMyU7XHJcblx0XHRsZWZ0OiAyOCU7XHJcblx0XHRiYWNrZ3JvdW5kOiB1cmwoICcuLy4uL2ltYWdlcy9saW5lLWNoZWNrb3V0LnN2ZycgKTtcclxuXHRcdGNvbnRlbnQ6ICcnO1xyXG5cdFx0ei1pbmRleDogLTE7XHJcblx0fVxyXG59XHJcblxyXG5cclxuLyoqXHJcbiAqIExvZ2luLlxyXG4gKi9cclxuXHJcbi53b29jb21tZXJjZS1mb3JtLWxvZ2luLXRvZ2dsZSB7XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1wb3J0cmFpdC1kb3duJykge1xyXG5cdFx0anVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xyXG5cdH1cclxuXHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LXdyYXA6IHdyYXA7XHJcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblx0d2lkdGg6IDEwMCU7XHJcblx0bWFyZ2luLXRvcDogNzBweDtcclxuXHRwYWRkaW5nOiAzMHB4O1xyXG5cdGJhY2tncm91bmQ6ICR3aGl0ZS1zbW9rZS0xMDA7XHJcblxyXG5cdC53b29jb21tZXJjZS1pbmZvIHtcclxuXHRcdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtcG9ydHJhaXQtZG93bicpIHtcclxuXHRcdFx0ZGlzcGxheTogYmxvY2s7XHJcblx0XHR9XHJcblxyXG5cdFx0QGV4dGVuZCAlaGVhZGluZztcclxuXHRcdEBleHRlbmQgJWhlYWRpbmctNDtcclxuXHRcdGRpc3BsYXk6IGZsZXg7XHJcblx0XHRmbGV4LXdyYXA6IHdyYXA7XHJcblx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cclxuXHRcdD4gYSB7XHJcblx0XHRcdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtcG9ydHJhaXQtZG93bicpIHtcclxuXHRcdFx0XHRkaXNwbGF5OiBibG9jaztcclxuXHRcdFx0XHRtYXJnaW46IDEwcHggMCAwIDA7XHJcblx0XHRcdH1cclxuXHJcblx0XHRcdEBleHRlbmQgJWJ1dHRvbjtcclxuXHRcdFx0QGV4dGVuZCAlYnV0dG9uLS1ib3JkZXItZ3JleTtcclxuXHRcdFx0bWFyZ2luLWxlZnQ6IDQ1cHg7XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHQrIC53b29jb21tZXJjZS1mb3JtLWxvZ2luIHtcclxuXHRcdGRpc3BsYXk6IGZsZXg7XHJcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0XHRmbGV4LXdyYXA6IHdyYXA7XHJcblx0XHR3aWR0aDogMTAwJTtcclxuXHRcdG1heC13aWR0aDogNjAwcHg7XHJcblx0XHRtYXJnaW46IDAgYXV0bztcclxuXHRcdHBhZGRpbmc6IDMwcHg7XHJcblxyXG5cdFx0cCB7XHJcblx0XHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0XHRmbGV4LXdyYXA6IHdyYXA7XHJcblx0XHRcdG1hcmdpbi1ib3R0b206IDIwcHg7XHJcblx0XHR9XHJcblxyXG5cdFx0Lmxvc3RfcGFzc3dvcmQge1xyXG5cdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHRcdGJvdHRvbTogMzNweDtcclxuXHRcdFx0bGVmdDogMTg1cHg7XHJcblx0XHRcdGNvbG9yOiAkYmx1ZS0xMDA7XHJcblx0XHRcdHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xyXG5cdFx0fVxyXG5cclxuXHRcdGxhYmVsIHtcclxuXHRcdFx0d2lkdGg6IDEwMCU7XHJcblx0XHR9XHJcblxyXG5cdFx0Lndvb2NvbW1lcmNlLWZvcm0tbG9naW5fX3N1Ym1pdCB7XHJcblx0XHRcdG1hcmdpbi10b3A6IDA7XHJcblx0XHR9XHJcblx0fVxyXG59XHJcblxyXG4vKipcclxuICogRm9ybS5cclxuICovXHJcbi53b29jb21tZXJjZS1jaGVja291dCB7XHJcblx0d2lkdGg6IDEwMCU7XHJcblx0bWFyZ2luLXRvcDogNzBweDtcclxuXHJcblx0YWJiclt0aXRsZV0ge1xyXG5cdFx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG5cdH1cclxuXHJcblx0aDMge1xyXG5cdFx0ZGlzcGxheTogbm9uZTtcclxuXHR9XHJcblxyXG5cdC53b29jb21tZXJjZS1iaWxsaW5nLWZpZWxkc19fZmllbGQtd3JhcHBlcixcclxuXHQud29vY29tbWVyY2Utc2hpcHBpbmctZmllbGRzX19maWVsZC13cmFwcGVyIHtcclxuXHRcdEBpbmNsdWRlIG1lZGlhKCdwaG9uZScpIHtcclxuXHRcdFx0bWFyZ2luOiAwO1xyXG5cdFx0fVxyXG5cclxuXHRcdGRpc3BsYXk6IGZsZXg7XHJcblx0XHRmbGV4LXdyYXA6IHdyYXA7XHJcblx0XHRtYXJnaW46IDAgLTEwcHg7XHJcblx0fVxyXG5cclxuXHQuZm9ybS1yb3cge1xyXG5cdFx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1wb3J0cmFpdC1kb3duJykge1xyXG5cdFx0XHR3aWR0aDogMTAwJTtcclxuXHRcdFx0bWFyZ2luOiAwIDAgMzVweCAwO1xyXG5cdFx0fVxyXG5cdFx0QGluY2x1ZGUgbWVkaWEoJ3Bob25lJykge1xyXG5cdFx0XHRtYXJnaW46IDAgMCAyMHB4IDA7XHJcblx0XHR9XHJcblxyXG5cdFx0d2lkdGg6IGNhbGMoNTAlIC0gMjBweCk7XHJcblx0XHRtYXJnaW46IDAgMTBweCAzNXB4IDEwcHg7XHJcblx0fVxyXG5cclxuXHQjYmlsbGluZ19waG9uZV9maWVsZCxcclxuXHQjYmlsbGluZ19lbWFpbF9maWVsZCB7XHJcblx0XHRAaW5jbHVkZSBtZWRpYSgncGhvbmUnKSB7XHJcblx0XHRcdG1hcmdpbi10b3A6IDIwcHg7XHJcblx0XHR9XHJcblxyXG5cdFx0bWFyZ2luLXRvcDogMzVweDtcclxuXHR9XHJcblxyXG5cdCNiaWxsaW5nX2FkZHJlc3NfMV9maWVsZCxcclxuXHQjc2hpcHBpbmdfYWRkcmVzc18xX2ZpZWxkIHtcclxuXHRcdEBpbmNsdWRlIG1lZGlhKCdwaG9uZScpIHtcclxuXHRcdFx0bWFyZ2luLWJvdHRvbTogMjBweDtcclxuXHRcdH1cclxuXHJcblx0XHRtYXJnaW4tdG9wOiAzNXB4O1xyXG5cdFx0bWFyZ2luLXJpZ2h0OiA1MCU7XHJcblx0fVxyXG5cclxuXHQjc2hpcC10by1kaWZmZXJlbnQtYWRkcmVzcyB7XHJcblx0XHRAaW5jbHVkZSBmb250KDE1cHgsIDMwcHgpO1xyXG5cdFx0ZGlzcGxheTogYmxvY2s7XHJcblx0XHRtYXJnaW4tdG9wOiAxMHB4O1xyXG5cdFx0Zm9udC13ZWlnaHQ6IDMwMDtcclxuXHRcdGxldHRlci1zcGFjaW5nOiAwLjQycHg7XHJcblxyXG5cdFx0bGFiZWwge1xyXG5cdFx0XHRmb250LXdlaWdodDogMzAwO1xyXG5cdFx0fVxyXG5cclxuXHRcdGlucHV0IHtcclxuXHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdFx0XHR0b3A6IDNweDtcclxuXHRcdFx0bWFyZ2luLXJpZ2h0OiAxNXB4O1xyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0Lndvb2NvbW1lcmNlLWFkZGl0aW9uYWwtZmllbGRzIHtcclxuXHRcdGRpc3BsYXk6IG5vbmU7XHJcblx0fVxyXG5cclxuXHQud29vY29tbWVyY2Utc2hpcHBpbmctZmllbGRzIHtcclxuXHRcdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtcG9ydHJhaXQtZG93bicpIHtcclxuXHRcdFx0bWFyZ2luLWJvdHRvbTogMTAwcHg7XHJcblx0XHR9XHJcblxyXG5cdFx0bWFyZ2luLWJvdHRvbTogMjAwcHg7XHJcblx0fVxyXG59XHJcblxyXG4vKipcclxuICogQ3JlYXRlIGFjY291bnQuXHJcbiAqL1xyXG4ud29vY29tbWVyY2UtY2hlY2tvdXQtcmV2aWV3LW9yZGVyLXRhYmxlX190aXRsZSB7XHJcblx0ZGlzcGxheTogYmxvY2shaW1wb3J0YW50O1xyXG5cdG1hcmdpbi1ib3R0b206IDUwcHg7XHJcbn1cclxuXHJcbi53b29jb21tZXJjZS1jaGVja291dCAud29vY29tbWVyY2UtYWNjb3VudC1maWVsZHMge1xyXG5cdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtcG9ydHJhaXQtZG93bicpIHtcclxuXHRcdG1hcmdpbi1ib3R0b206IDEwMHB4O1xyXG5cdH1cclxuXHJcblx0bWFyZ2luLWJvdHRvbTogMjAwcHg7XHJcblxyXG5cdGgzIHtcclxuXHRcdGRpc3BsYXk6IGJsb2NrO1xyXG5cdFx0bWFyZ2luLWJvdHRvbTogNDVweDtcclxuXHR9XHJcblxyXG5cdC5jcmVhdGUtYWNjb3VudCB7XHJcblx0XHR3aWR0aDogMTAwJTtcclxuXHRcdG1hcmdpbi1sZWZ0OiAwO1xyXG5cclxuXHRcdC53b29jb21tZXJjZS1mb3JtX19sYWJlbC1mb3ItY2hlY2tib3gge1xyXG5cdFx0XHRmb250LXdlaWdodDogMzAwO1xyXG5cdFx0fVxyXG5cclxuXHRcdGlucHV0IHtcclxuXHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdFx0XHR0b3A6IDNweDtcclxuXHRcdFx0bWFyZ2luLXJpZ2h0OiAxNXB4O1xyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0I2FjY291bnRfcGFzc3dvcmRfZmllbGQge1xyXG5cdFx0bWFyZ2luLWxlZnQ6IDA7XHJcblx0fVxyXG59XHJcblxyXG4ud29vY29tbWVyY2UtYWNjb3VudC1maWVsZF9faW50cm8ge1xyXG5cdG1hcmdpbi1ib3R0b206IDI1cHg7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBDYXJ0LlxyXG4gKi9cclxuXHJcbi53b29jb21tZXJjZS1jaGVja291dC1yZXZpZXctb3JkZXItdGFibGUge1xyXG5cdHdpZHRoOiAxMDAlO1xyXG5cdGJvcmRlci1jb2xsYXBzZTogc2VwYXJhdGU7IFxyXG5cdGJvcmRlci1zcGFjaW5nOiAwIDIwcHg7XHJcblx0bWFyZ2luOiAwIDAgNDgwcHggMDtcclxuXHJcblx0dGJvZHkgdHI6bGFzdC1vZi10eXBlIHtcclxuXHRcdGRpc3BsYXk6IHRhYmxlLXJvdztcclxuXHR9XHJcblxyXG5cdHRib2R5IHRyIHtcclxuXHRcdGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZS0xMDA7XHJcblx0fVxyXG5cclxuXHQucHJvZHVjdC10aHVtYm5haWwge1xyXG5cdFx0d2lkdGg6IDI0NXB4O1x0XHJcblx0fVxyXG5cclxuXHQucHJvZHVjdC1xdWFudGl0eSB7XHJcblx0XHQ+IHN0cm9uZyB7XHJcblx0XHRcdEBpbmNsdWRlIGZvbnQoMjJweCwgMzVweCk7XHJcblx0XHRcdGZvbnQtd2VpZ2h0OiA1MDA7XHJcblx0XHRcdGxldHRlci1zcGFjaW5nOiAwLjYxcHg7XHJcblx0XHRcdGNvbG9yOiAkYmx1ZS1sYWdvb24tMTAwO1xyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0LnByb2R1Y3Qtc3VidG90YWwge1xyXG5cdFx0Ym9yZGVyLXJpZ2h0OiAycHggc29saWQgJHdoaXRlLXNtb2tlLTEwMDtcclxuXHR9XHJcblxyXG5cdHRmb290IHtcclxuXHRcdEBpbmNsdWRlIG1lZGlhKCdwaG9uZScpIHtcclxuXHRcdFx0cGFkZGluZzogMjBweDtcclxuXHRcdH1cclxuXHJcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHRkaXNwbGF5OiBibG9jaztcclxuXHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0bWF4LXdpZHRoOiAzNzBweDtcclxuXHRcdGJvcmRlci1zcGFjaW5nOiAwO1xyXG5cdFx0YmFja2dyb3VuZC1jb2xvcjogJGJsdWUtcGF0dGVucy0xMDA7XHJcblx0XHRtYXJnaW46IDcwcHggMCAwIDA7XHJcblx0XHRwYWRkaW5nOiA0NXB4IDUwcHg7XHJcblxyXG5cdFx0dGgge1xyXG5cdFx0XHRAaW5jbHVkZSBtZWRpYSgncGhvbmUnKSB7XHJcblx0XHRcdFx0d2lkdGg6IDIzMHB4O1xyXG5cdFx0XHR9XHJcblxyXG5cdFx0XHRAaW5jbHVkZSBmb250KDE2cHgsIDIycHgpO1xyXG5cdFx0XHR0ZXh0LWFsaWduOiBsZWZ0O1xyXG5cdFx0XHR2ZXJ0aWNhbC1hbGlnbjogdG9wO1xyXG5cdFx0XHR3aWR0aDogMjAwcHg7XHJcblx0XHRcdGNvbG9yOiAkZ3JleS0xMDA7XHJcblx0XHRcdHBhZGRpbmctYm90dG9tOiAyMHB4O1xyXG5cdFx0fVxyXG5cclxuXHRcdHRkIHtcclxuXHRcdFx0QGluY2x1ZGUgbWVkaWEoJ3Bob25lJykge1xyXG5cdFx0XHRcdHdpZHRoOiAxMDBweDtcclxuXHRcdFx0fVxyXG5cclxuXHRcdFx0QGluY2x1ZGUgZm9udCgxNnB4LCAyMnB4KTtcclxuXHRcdFx0d2lkdGg6IDcwcHg7XHJcblx0XHRcdHRleHQtYWxpZ246IHJpZ2h0O1xyXG5cdFx0XHRjb2xvcjogJGJsdWUtMTAwO1xyXG5cdFx0XHRwYWRkaW5nLWJvdHRvbTogMjBweDtcclxuXHRcdH1cclxuXHJcblx0XHQuaW5jbHVkZXNfdGF4IHtcclxuXHRcdFx0ZGlzcGxheTogbm9uZTtcclxuXHRcdH1cclxuXHJcblx0XHRsYWJlbCB7XHJcblx0XHRcdEBpbmNsdWRlIGZvbnQoMTZweCwgMjJweCk7XHJcblx0XHRcdGNvbG9yOiAkYmx1ZS0xMDA7XHJcblx0XHRcdGZvbnQtd2VpZ2h0OiA0MDA7XHJcblx0XHR9XHJcblxyXG5cdFx0Lndvb2NvbW1lcmNlLXNoaXBwaW5nLXRvdGFscyB7XHJcblx0XHRcdHRoLFxyXG5cdFx0XHR0ZCB7XHJcblx0XHRcdFx0cGFkZGluZy1ib3R0b206IDA7XHJcblx0XHRcdH1cclxuXHJcblx0XHRcdGxhYmVsIHtcclxuXHRcdFx0XHRmb250LXNpemU6IDA7XHJcblxyXG5cdFx0XHRcdC5hbW91bnQge1xyXG5cdFx0XHRcdFx0QGluY2x1ZGUgZm9udCgxNnB4LCAyMnB4KTtcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHJcblx0XHQuY2FydC1zaGlwcGluZy1jYXB0aW9uIHtcclxuXHRcdFx0dGgge1xyXG5cdFx0XHRcdHBhZGRpbmctdG9wOiAxMHB4O1xyXG5cdFx0XHR9XHJcblxyXG5cdFx0XHRwLFxyXG5cdFx0XHRlbSB7XHJcblx0XHRcdFx0QGluY2x1ZGUgZm9udCgxMXB4LCAxN3B4KTtcclxuXHRcdFx0XHRmb250LXdlaWdodDogMzAwO1xyXG5cdFx0XHRcdGZvbnQtc3R5bGU6IGl0YWxpYztcclxuXHRcdFx0fVxyXG5cclxuXHRcdFx0cCB7XHJcblx0XHRcdFx0cGFkZGluZy1ib3R0b206IDE1cHg7XHJcblxyXG5cdFx0XHRcdCY6bGFzdC1vZi10eXBlIHtcclxuXHRcdFx0XHRcdHBhZGRpbmc6IDA7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHR9XHJcblxyXG5cdFx0Lm9yZGVyLXRvdGFsIHtcclxuXHRcdFx0Ym9yZGVyLXRvcDogM3B4IHNvbGlkICR3aGl0ZS0xMDA7XHJcblxyXG5cdFx0XHR0aCB7XHJcblx0XHRcdFx0cGFkZGluZy10b3A6IDIwcHg7XHJcblx0XHRcdFx0cGFkZGluZy1ib3R0b206IDA7XHJcblx0XHRcdH1cclxuXHJcblx0XHRcdHRkIHtcclxuXHRcdFx0XHRAaW5jbHVkZSBmb250KDMwcHgsIDMwcHgpO1x0XHJcblx0XHRcdFx0cGFkZGluZy10b3A6IDE1cHg7XHJcblx0XHRcdFx0cGFkZGluZy1ib3R0b206IDA7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcbn1cclxuXHJcblxyXG4vKipcclxuICogUGF5bWVudC5cclxuICovXHJcblxyXG4ud29vY29tbWVyY2UtY2hlY2tvdXQtcGF5bWVudCB7XHJcblx0aDMge1xyXG5cdFx0ZGlzcGxheTogYmxvY2s7XHJcblx0XHRtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG5cdH1cclxuXHJcblx0LnBheW1lbnRfbWV0aG9kcyB7XHJcblx0XHRkaXNwbGF5OiBmbGV4O1xyXG5cdFx0ZmxleC13cmFwOiB3cmFwO1xyXG5cdFx0bWFyZ2luLWJvdHRvbTogMTAwcHg7XHJcblx0fVxyXG5cclxuXHQud2NfcGF5bWVudF9tZXRob2Qge1xyXG5cdFx0d2lkdGg6IDM3MHB4O1xyXG5cdFx0bWluLWhlaWdodDogMzIwcHg7XHJcblx0XHRtYXJnaW4tcmlnaHQ6IDIwcHg7XHJcblx0XHRwYWRkaW5nOiAyMHB4O1xyXG5cdFx0Ym9yZGVyOiAycHggc29saWQgJHdoaXRlLXNtb2tlLTEwMDtcclxuXHRcdGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZS0xMDA7XHJcblxyXG5cdFx0Jjpob3ZlciB7XHJcblx0XHRcdGJveC1zaGFkb3c6IDAgMCAxMHB4IDAgJGJsdWUtbGFnb29uLTEzO1xyXG5cdFx0fVxyXG5cclxuXHRcdGxhYmVsIHtcclxuXHRcdFx0ZGlzcGxheTogZmxleDtcclxuXHRcdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRcdFx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblx0XHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0XHRoZWlnaHQ6IDEzMHB4O1xyXG5cdFx0XHRiYWNrZ3JvdW5kOiAkYmx1ZS1wYXR0ZW5zLTEwMDtcclxuXHJcblx0XHRcdHN2ZyB7XHJcblx0XHRcdFx0d2lkdGg6IDU1cHg7XHJcblx0XHRcdFx0aGVpZ2h0OiA2MHB4O1xyXG5cdFx0XHRcdGNvbG9yOiAkYmx1ZS1sYWdvb24tMTAwO1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblxyXG5cdFx0LnRpdGxlIHtcclxuXHRcdFx0QGluY2x1ZGUgZm9udCgxNnB4LCAyMnB4KTtcclxuXHRcdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRcdHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHRcdFx0cGFkZGluZzogMTBweCAwIDI1cHggMDtcclxuXHRcdFx0Zm9udC13ZWlnaHQ6IGJvbGQ7XHJcblx0XHRcdGNvbG9yOiAkZ3JleS00MDA7XHJcblx0XHR9XHJcblxyXG5cdFx0YnIge1xyXG5cdFx0XHRkaXNwbGF5OiBub25lO1xyXG5cdFx0fVxyXG5cclxuXHRcdC5wYXltZW50X21ldGhvZF9pZGVhbCB7XHJcblx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRcdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRcdGhlaWdodDogNDVweDtcclxuXHRcdFx0b3ZlcmZsb3c6IGhpZGRlbjtcclxuXHRcdFx0Ym9yZGVyOiAycHggc29saWQgJGJsdWUtMTAwO1xyXG5cdFx0XHR0ZXh0LWluZGVudDogLTk5OTlweDtcclxuXHRcdFx0Ym9yZGVyLXJhZGl1czogMnB4O1xyXG5cclxuXHRcdFx0cCB7XHJcblx0XHRcdFx0aGVpZ2h0OiA0NXB4O1xyXG5cdFx0XHR9XHJcblxyXG5cdFx0XHRzZWxlY3Qge1xyXG5cdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdFx0XHR0b3A6IC0ycHg7XHJcblx0XHRcdFx0bGVmdDogLTJweDtcclxuXHRcdFx0XHR3aWR0aDogY2FsYygxMDAlICsgNjBweCk7XHJcblx0XHRcdFx0bWF4LXdpZHRoOiBjYWxjKDEwMCUgKyA2MHB4KTtcclxuXHRcdFx0XHRib3JkZXI6IDA7XHJcblx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcblx0XHRcdFx0ei1pbmRleDogMjtcclxuXHRcdFx0fVxyXG5cclxuXHRcdFx0c3ZnIHtcclxuXHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHRcdFx0dG9wOiAxNXB4O1xyXG5cdFx0XHRcdHJpZ2h0OiAxMnB4O1xyXG5cdFx0XHRcdHdpZHRoOiAxM3B4O1xyXG5cdFx0XHRcdGhlaWdodDogMTRweDtcclxuXHRcdFx0XHRjb2xvcjogJGJsdWUtMTAwO1xyXG5cdFx0XHRcdHotaW5kZXg6IDE7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdC5idXR0b24ge1xyXG5cdFx0QGV4dGVuZCAlYnV0dG9uO1xyXG5cdFx0QGV4dGVuZCAlYnV0dG9uLS1ibHVlO1xyXG5cdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRtYXgtd2lkdGg6IDMyMHB4O1xyXG5cdFx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblx0XHRtYXJnaW4tdG9wOiAyMHB4O1xyXG5cclxuXHRcdHN2ZyB7XHJcblx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRcdFx0dG9wOiAycHg7XHJcblx0XHRcdHdpZHRoOiAxNXB4O1xyXG5cdFx0XHRoZWlnaHQ6IDEzcHg7XHJcblx0XHRcdG1hcmdpbi1yaWdodDogMTBweDtcclxuXHRcdFx0Y29sb3I6ICR3aGl0ZS0xMDA7XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHQuZm9ybS1yb3cge1xyXG5cdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRtYXJnaW46IDA7XHJcblxyXG5cdFx0Lndvb2NvbW1lcmNlLWZvcm1fX2xhYmVsLWZvci1jaGVja2JveCB7XHJcblx0XHRcdGZvbnQtd2VpZ2h0OiAzMDA7XHJcblxyXG5cdFx0XHRpbnB1dCB7XHJcblx0XHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdFx0XHRcdHRvcDogM3B4O1xyXG5cdFx0XHRcdG1hcmdpbi1yaWdodDogMTVweDtcclxuXHRcdFx0fVxyXG5cclxuXHRcdFx0YSB7XHJcblx0XHRcdFx0dGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XHJcblxyXG5cdFx0XHRcdCY6aG92ZXIge1xyXG5cdFx0XHRcdFx0Y29sb3I6ICRibHVlLTEwMDtcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcbn1cclxuXHJcbi53b29jb21tZXJjZS1jaGVja291dC1wYXltZW50X19ub3RpY2Uge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0bWFyZ2luLXRvcDogMjBweDtcclxuXHJcblx0aSB7XHJcblx0XHRAaW5jbHVkZSBmb250KDEzcHgsIDE4cHgpO1xyXG5cdFx0ZGlzcGxheTogZmxleDtcclxuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRcdHRvcDogNnB4O1xyXG5cdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRcdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cdFx0d2lkdGg6IDE2cHg7XHJcblx0XHRoZWlnaHQ6IDE2cHg7XHJcblx0XHRmb250LXN0eWxlOiBub3JtYWw7XHJcblx0XHRtYXJnaW4tcmlnaHQ6IDE3cHg7XHJcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkZ3JleS02MDA7XHJcblx0XHRib3JkZXItcmFkaXVzOiA1MCU7XHJcblx0XHRjb2xvcjogJHdoaXRlLTEwMDtcclxuXHR9XHJcblxyXG5cdHNwYW4ge1xyXG5cdFx0d2lkdGg6IGNhbGMoMTAwJSAtIDMzcHgpO1xyXG5cdFx0Zm9udC13ZWlnaHQ6IDMwMDtcclxuXHR9XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBUaGFua3lvdS5cclxuICovXHJcblxyXG4ud29vY29tbWVyY2Utb3JkZXIge1xyXG5cdG1hcmdpbi10b3A6IDUwcHg7XHJcbn1cclxuXHJcbi53b29jb21tZXJjZS1vcmRlci1kZXRhaWxzLFxyXG4ud29vY29tbWVyY2UtY3VzdG9tZXItZGV0YWlscyB7XHJcblx0ZGlzcGxheTogbm9uZTtcclxufVxyXG4iLCIud29vY29tbWVyY2UtZm9ybS1sb2dpbiB7XHJcblx0d2lkdGg6IDEwMCU7XHJcblx0bWFyZ2luLXRvcDogNzVweDtcclxuXHJcblx0YnIge1xyXG5cdFx0ZGlzcGxheTogbm9uZTtcclxuXHR9XHJcblxyXG5cdGxhYmVsIHtcclxuXHRcdG1hcmdpbi1ib3R0b206IDJweDtcclxuXHR9XHJcblxyXG5cdC5mb3JtLXJvdyB7XHJcblx0XHRkaXNwbGF5OiBpbmxpbmUtZmxleDtcclxuXHRcdG1hcmdpbi1ib3R0b206IDQwcHg7XHJcblxyXG5cdFx0Ji5mb3JtLXJvdy13aWRlIHtcclxuXHRcdFx0ZGlzcGxheTogYmxvY2s7XHJcblx0XHR9XHJcblx0fVxyXG59XHJcblxyXG4ud29vY29tbWVyY2UtZm9ybS1sb2dpbl9fcmVtZW1iZXJtZSB7XHJcblx0ZGlzcGxheTogbm9uZTtcclxufVxyXG5cclxuLndvb2NvbW1lcmNlLUxvc3RQYXNzd29yZCB7XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1wb3J0cmFpdC1kb3duJykge1xyXG5cdFx0bWFyZ2luLXRvcDogNDBweDtcclxuXHR9XHJcblxyXG5cdEBpbmNsdWRlIGZvbnQoMTVweCwgMzBweCk7XHJcblx0ZGlzcGxheTogaW5saW5lLWZsZXg7XHJcblx0bWFyZ2luOiA2NXB4IDAgMCAyNXB4O1xyXG5cdHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xyXG5cdGNvbG9yOiAkYmx1ZS0xMDA7XHJcblx0dHJhbnNpdGlvbjogYWxsIDI1MG1zIGVhc2U7XHJcblxyXG5cdCY6aG92ZXIge1xyXG5cdFx0Y29sb3I6ICRibHVlLWxhZ29vbi0xMDA7XHJcblx0fVxyXG59XHJcblxyXG4ud29vY29tbWVyY2UtZm9ybS1sb2dpbl9fc3VibWl0IHtcclxuXHRAaW5jbHVkZSBtZWRpYSgndGFibGV0LXBvcnRyYWl0LWRvd24nKSB7XHJcblx0XHRtYXJnaW4tdG9wOiA0MHB4O1xyXG5cdH1cclxuXHJcblx0QGV4dGVuZCAlYnV0dG9uLS1ibHVlO1xyXG5cdG1hcmdpbi10b3A6IDY1cHg7XHJcblx0cGFkZGluZy1yaWdodDogMzBweDtcclxuXHRwYWRkaW5nLWxlZnQ6IDMwcHg7XHJcblxyXG5cdHN2ZyB7XHJcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0XHR0b3A6IDRweDtcclxuXHRcdHdpZHRoOiAxNXB4O1xyXG5cdFx0aGVpZ2h0OiAxM3B4O1xyXG5cdFx0bWFyZ2luLXJpZ2h0OiA4cHg7XHJcblx0fVxyXG59XHJcbiIsIi53b29jb21tZXJjZS1NeUFjY291bnQtY29udGVudCB7XHJcblx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1sYW5kc2NhcGUtZG93bicpIHtcclxuXHRcdHdpZHRoOiBjYWxjKDEwMCUgLSAzMDBweCk7XHJcblx0XHRtYXJnaW46IDEwMHB4IDAgOTVweCA1MHB4O1xyXG5cdH1cclxuXHRAaW5jbHVkZSBtZWRpYSgndGFibGV0LXBvcnRyYWl0LWRvd24nKSB7XHJcblx0XHR3aWR0aDogMTAwJTtcclxuXHRcdG1hcmdpbjogNTBweCAwO1xyXG5cdH1cclxuXHJcblx0d2lkdGg6IGNhbGMoMTAwJSAtIDM5MHB4KTtcclxuXHRtYXJnaW46IDEwMHB4IDAgOTVweCAxNDBweDtcclxuXHJcblx0cCxcclxuXHQud29vY29tbWVyY2Utbm90aWNlcy13cmFwcGVyIHtcclxuXHRcdHdpZHRoOiAxMDAlO1xyXG5cdH1cclxuXHJcblx0Lndvb2NvbW1lcmNlLW1lc3NhZ2Uge1xyXG5cdFx0bWFyZ2luLXRvcDogNTBweDtcclxuXHR9XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBEYXNoYm9hcmQuXHJcbiAqL1xyXG4ud3JhcHBlci0tbXktYWNjb3VudCB7XHJcblx0Lndvb2NvbW1lcmNlIHtcclxuXHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0fVxyXG59XHJcblxyXG5cclxuLyoqXHJcbiAqIEFkZHJlc3Nlcy5cclxuICovXHJcbi53cmFwcGVyLS1lZGl0LWFkZHJlc3Mge1xyXG5cdC53b29jb21tZXJjZSB7XHJcblx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdH1cclxuXHJcblx0Lndvb2NvbW1lcmNlLU15QWNjb3VudC1jb250ZW50IHtcclxuXHRcdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtbGFuZHNjYXBlLWRvd24nKSB7XHJcblx0XHRcdHBhZGRpbmctbGVmdDogMDtcclxuXHRcdH1cclxuXHJcblx0XHRwYWRkaW5nLWxlZnQ6IDgwcHg7XHJcblxyXG5cdFx0PiBwIHtcclxuXHRcdFx0ZGlzcGxheTogbm9uZTtcclxuXHRcdH1cclxuXHR9XHJcbn1cclxuXHJcbi53b29jb21tZXJjZS1BZGRyZXNzZXMge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC13cmFwOiB3cmFwO1xyXG5cdHdpZHRoOiAxMDAlO1xyXG5cclxuXHQud29vY29tbWVyY2UtQWRkcmVzcyB7XHJcblx0XHRAaW5jbHVkZSBtZWRpYSgndGFibGV0LXBvcnRyYWl0LWRvd24nKSB7XHJcblx0XHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0XHRtYXJnaW4tYm90dG9tOiAzMHB4O1xyXG5cdFx0fVxyXG5cclxuXHRcdHdpZHRoOiA1MCU7XHJcblx0fVxyXG5cclxuXHRoMyB7XHJcblx0XHRAaW5jbHVkZSBtZWRpYSgndGFibGV0LXBvcnRyYWl0LWRvd24nKSB7XHJcblx0XHRcdG1hcmdpbi1ib3R0b206IDEwcHg7XHJcblx0XHR9XHJcblxyXG5cdFx0QGluY2x1ZGUgZm9udCgyMHB4LCAyNHB4KTtcclxuXHRcdG1hcmdpbi1ib3R0b206IDI1cHg7XHJcblx0XHRsZXR0ZXItc3BhY2luZzogMC41NnB4O1xyXG5cdFx0b3BhY2l0eTogMC4zMjtcclxuXHR9XHJcblxyXG5cdGEge1xyXG5cdFx0Y29sb3I6ICRibHVlLTEwMDtcclxuXHRcdHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xyXG5cdH1cclxufVxyXG5cclxuLyoqXHJcbiAqIEZvcm1zLlxyXG4gKi9cclxuLndyYXBwZXItLWVkaXQtYWNjb3VudCxcclxuLndyYXBwZXItLXZlcnplbmRpbmcsXHJcbi53cmFwcGVyLS1mYWN0dXJhdGllIHtcclxuXHQud29vY29tbWVyY2UtTXlBY2NvdW50LWNvbnRlbnQge1xyXG5cdFx0cGFkZGluZy10b3A6IDQwcHg7XHJcblx0fVxyXG59XHJcblxyXG4ud29vY29tbWVyY2UtTXlBY2NvdW50LWNvbnRlbnQgZm9ybSB7XHJcblx0aDMge1xyXG5cdFx0bWFyZ2luLWJvdHRvbTogMjBweDtcclxuXHR9XHJcblxyXG5cdCYuZWRpdC1hY2NvdW50LFxyXG5cdC53b29jb21tZXJjZS1hZGRyZXNzLWZpZWxkc19fZmllbGQtd3JhcHBlciB7XHJcblx0XHRAaW5jbHVkZSBtZWRpYSgndGFibGV0LXBvcnRyYWl0LWRvd24nKSB7XHJcblx0XHRcdG1hcmdpbjogMDtcclxuXHRcdH1cclxuXHJcblx0XHRkaXNwbGF5OiBmbGV4O1xyXG5cdFx0ZmxleC13cmFwOiB3cmFwO1xyXG5cdFx0bWFyZ2luOiAwIC0xMHB4O1xyXG5cdH1cclxuXHJcblx0LmZvcm0tcm93IHtcclxuXHRcdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtcG9ydHJhaXQtZG93bicpIHtcclxuXHRcdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRcdG1hcmdpbjogMCAwIDM1cHggMDtcclxuXHRcdH1cclxuXHJcblx0XHR3aWR0aDogY2FsYyg1MCUgLSAyMHB4KTtcclxuXHRcdG1hcmdpbjogMCAxMHB4IDM1cHggMTBweDtcclxuXHR9XHJcblxyXG5cdCNzaGlwcGluZ19hZGRyZXNzXzFfZmllbGQsXHJcblx0I3NoaXBwaW5nX2FkZHJlc3NfMl9maWVsZCxcclxuXHQjYmlsbGluZ19hZGRyZXNzXzFfZmllbGQsXHJcblx0I2JpbGxpbmdfYWRkcmVzc18yX2ZpZWxkIHtcclxuXHRcdHdpZHRoOiAxMDAlO1xyXG5cdH1cclxuXHJcblx0I2JpbGxpbmdfYWRkcmVzc18xX2ZpZWxkIHtcclxuXHRcdG1hcmdpbi1ib3R0b206IDIwcHg7XHJcblx0fVxyXG5cclxuXHRsYWJlbCB7XHJcblx0XHRjb2xvcjogJGdyZXktNDAwO1xyXG5cdH1cclxuXHJcblx0aW5wdXQsXHJcblx0c2VsZWN0IHtcclxuXHRcdGNvbG9yOiAkZ3JleS00MDA7XHJcblx0fVxyXG5cclxuXHRlbSB7XHJcblx0XHRAaW5jbHVkZSBmb250KDEycHgsIDIycHgpO1xyXG5cdFx0bWFyZ2luLXRvcDogMTBweDtcclxuXHRcdGNvbG9yOiAkZ3JleS00MDA7XHJcblx0XHRmb250LXN0eWxlOiBub3JtYWw7XHJcblx0XHRsZXR0ZXItc3BhY2luZzogMC4zM3B4O1xyXG5cdFx0b3BhY2l0eTogMC43O1xyXG5cdH1cclxuXHJcblx0ZmllbGRzZXQge1xyXG5cdFx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1wb3J0cmFpdC1kb3duJykge1xyXG5cdFx0XHR3aWR0aDogMTAwJTtcclxuXHRcdH1cclxuXHJcblx0XHRkaXNwbGF5OiBmbGV4O1xyXG5cdFx0ZmxleC13cmFwOiB3cmFwO1xyXG5cdFx0d2lkdGg6IDUwJTtcclxuXHRcdG1hcmdpbjogNjVweCAwIDE1cHg7XHJcblxyXG5cdFx0bGVnZW5kIHtcclxuXHRcdFx0QGluY2x1ZGUgbWVkaWEoJ3RhYmxldC1wb3J0cmFpdC1kb3duJykge1xyXG5cdFx0XHRcdHBhZGRpbmctbGVmdDogMDtcclxuXHRcdFx0fVxyXG5cclxuXHRcdFx0QGV4dGVuZCAlaGVhZGluZztcclxuXHRcdFx0QGV4dGVuZCAlaGVhZGluZy00O1xyXG5cdFx0XHR3aWR0aDogMTAwJTtcclxuXHRcdFx0bWFyZ2luLWJvdHRvbTogNDBweDtcclxuXHRcdFx0cGFkZGluZy1sZWZ0OiAxMHB4O1xyXG5cdFx0fVxyXG5cclxuXHRcdC5mb3JtLXJvdyB7XHJcblx0XHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0XHRtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0LmJ1dHRvbiB7XHJcblx0XHRAZXh0ZW5kICVidXR0b24tLWJsdWU7XHJcblx0XHRwYWRkaW5nLXJpZ2h0OiAzMHB4O1xyXG5cdFx0cGFkZGluZy1sZWZ0OiAzMHB4O1xyXG5cclxuXHRcdHN2ZyB7XHJcblx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRcdFx0dG9wOiA0cHg7XHJcblx0XHRcdHdpZHRoOiAxNXB4O1xyXG5cdFx0XHRoZWlnaHQ6IDEzcHg7XHJcblx0XHRcdG1hcmdpbi1yaWdodDogOHB4O1xyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0Ji5lZGl0LWFjY291bnQgLmJ1dHRvbiB7XHJcblx0XHRAaW5jbHVkZSBtZWRpYSgndGFibGV0LXBvcnRyYWl0LWRvd24nKSB7XHJcblx0XHRcdG1hcmdpbi1sZWZ0OiAwO1xyXG5cdFx0fVxyXG5cclxuXHRcdG1hcmdpbi1sZWZ0OiAxMHB4O1xyXG5cdH1cclxufVxyXG5cclxuXHJcbi8qKlxyXG4gKiBPcmRlciB0YWJsZS5cclxuICovXHJcbi53cmFwcGVyLS1vcmRlcnMge1xyXG5cdC53b29jb21tZXJjZS1vcmRlcnMtdGFibGUge1xyXG5cdFx0QGV4dGVuZCAld29vY29tbWVyY2UtY2FydC1mb3JtO1xyXG5cdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRib3JkZXItY29sbGFwc2U6IHNlcGFyYXRlOyBcclxuXHRcdGJvcmRlci1zcGFjaW5nOiAwIDIwcHg7XHJcblx0XHRtYXJnaW46IDA7XHJcblxyXG5cdFx0dGhlYWQgdGgge1xyXG5cdFx0XHRwYWRkaW5nLWJvdHRvbTogMjVweDtcclxuXHRcdH1cclxuXHRcdFxyXG5cdFx0dGJvZHkgdHI6bGFzdC1vZi10eXBlIHtcclxuXHRcdFx0ZGlzcGxheTogdGFibGUtcm93O1xyXG5cdFx0fVxyXG5cclxuXHRcdC53b29jb21tZXJjZS1vcmRlcnMtdGFibGVfX2hlYWRlci1vcmRlci1hY3Rpb25zLFxyXG5cdFx0Lndvb2NvbW1lcmNlLW9yZGVycy10YWJsZV9fY2VsbC1vcmRlci1hY3Rpb25zIHtcclxuXHRcdFx0ZGlzcGxheTogbm9uZTtcclxuXHRcdH1cclxuXHJcblx0XHQud29vY29tbWVyY2Utb3JkZXJzLXRhYmxlX19jZWxsLW9yZGVyLW51bWJlcixcclxuXHRcdC53b29jb21tZXJjZS1vcmRlcnMtdGFibGVfX2hlYWRlci1vcmRlci1udW1iZXIge1xyXG5cdFx0XHRwYWRkaW5nLWxlZnQ6IDMwcHg7XHJcblx0XHR9XHJcblxyXG5cdFx0Lndvb2NvbW1lcmNlLW9yZGVycy10YWJsZV9fY2VsbC1vcmRlci1udW1iZXIge1xyXG5cdFx0XHRib3JkZXItbGVmdDogMnB4IHNvbGlkICR3aGl0ZS1zbW9rZS0xMDA7XHJcblx0XHR9XHJcblxyXG5cdFx0Lndvb2NvbW1lcmNlLW9yZGVycy10YWJsZV9fY2VsbC1vcmRlci10b3RhbCB7XHJcblx0XHRcdGJvcmRlci1yaWdodDogMnB4IHNvbGlkICR3aGl0ZS1zbW9rZS0xMDA7XHJcblx0XHR9XHJcblx0fVxyXG59XHJcblxyXG4vKipcclxuICogT3JkZXIgZGV0YWlscy5cclxuICovXHJcbi53b29jb21tZXJjZS1NeUFjY291bnQtY29udGVudCB7XHJcblx0Lndvb2NvbW1lcmNlLW9yZGVyLWRldGFpbHMge1xyXG5cdFx0ZGlzcGxheTogYmxvY2s7XHJcblxyXG5cdFx0aDIge1xyXG5cdFx0XHRtYXJnaW46IDUwcHggMCAzNXB4IDA7XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHQud29vY29tbWVyY2UtdGFibGUtLW9yZGVyLWRldGFpbHMge1xyXG5cdFx0QGV4dGVuZCAld29vY29tbWVyY2UtY2FydC1mb3JtO1xyXG5cdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRtYXJnaW46IDA7XHJcblx0XHRib3JkZXItY29sbGFwc2U6IHNlcGFyYXRlOyBcclxuXHRcdGJvcmRlci1zcGFjaW5nOiAwIDIwcHg7XHJcblxyXG5cdFx0dGgge1xyXG5cdFx0XHR0ZXh0LWFsaWduOiBsZWZ0O1xyXG5cclxuXHRcdFx0Ji53b29jb21tZXJjZS10YWJsZV9fcHJvZHVjdC1uYW1lIHtcclxuXHRcdFx0XHRwYWRkaW5nLWxlZnQ6IDMwcHg7XHJcblx0XHRcdFx0cGFkZGluZy1ib3R0b206IDA7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHJcblx0XHR0ZCB7XHJcblx0XHRcdCYud29vY29tbWVyY2UtdGFibGVfX3Byb2R1Y3QtbmFtZSB7XHJcblx0XHRcdFx0Ym9yZGVyLWxlZnQ6IDJweCBzb2xpZCAkd2hpdGUtc21va2UtMTAwO1xyXG5cdFx0XHRcdHBhZGRpbmctbGVmdDogMzBweDtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cclxuXHRcdHRib2R5IHRyOmxhc3Qtb2YtdHlwZSB7XHJcblx0XHRcdGRpc3BsYXk6IHRhYmxlLXJvdztcclxuXHRcdH1cclxuXHJcblx0XHQud29vY29tbWVyY2UtdGFibGVfX3Byb2R1Y3QtdG90YWwge1xyXG5cdFx0XHRib3JkZXItcmlnaHQ6IDJweCBzb2xpZCAkd2hpdGUtc21va2UtMTAwO1xyXG5cdFx0fVxyXG5cclxuXHRcdHRmb290IHtcclxuXHRcdFx0Ym9yZGVyLXNwYWNpbmc6IDA7XHJcblx0XHRcdGRpc3BsYXk6IGJsb2NrO1xyXG5cdFx0XHRtYXJnaW4tdG9wOiAyMHB4O1xyXG5cclxuXHRcdFx0dGgge1xyXG5cdFx0XHRcdHdpZHRoOiA1MCU7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdG1hcmsge1xyXG5cdFx0YmFja2dyb3VuZC1jb2xvcjogJGJsdWUtcGF0dGVucy0xMDA7XHJcblx0fVxyXG59XHJcblxyXG5cclxuLyoqXHJcbiAqIEJhY2tncm91bmQuXHJcbiAqL1xyXG4ud3JhcHBlci0tYWNjb3VudCB7XHJcblx0cG9zaXRpb246IGluaXRpYWw7XHJcblxyXG5cdCY6YWZ0ZXIge1xyXG5cdFx0dG9wOiAzNTBweDtcclxuXHRcdHJpZ2h0OiAwO1xyXG5cdH1cclxufVxyXG4iLCIud29vY29tbWVyY2UtTXlBY2NvdW50LW5hdmlnYXRpb24ge1xyXG5cdEBpbmNsdWRlIG1lZGlhKCd0YWJsZXQtcG9ydHJhaXQtZG93bicpIHtcclxuXHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0bWFyZ2luOiA1MHB4IDAgMCAwO1xyXG5cdH1cclxuXHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdHdpZHRoOiAyNTBweDtcclxuXHRtYXJnaW46IDE1MHB4IDA7XHJcblx0cGFkZGluZzogNTBweCAyMHB4IDUwcHggMDtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkYmx1ZS1wYXR0ZW5zLTEwMDtcclxuXHJcblx0JjpiZWZvcmUge1xyXG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0dG9wOiAwO1xyXG5cdFx0bGVmdDogLTEwMCU7XHJcblx0XHR3aWR0aDogMTAwJTtcclxuXHRcdGhlaWdodDogMTAwJTtcclxuXHRcdGJhY2tncm91bmQtY29sb3I6ICRibHVlLXBhdHRlbnMtMTAwO1xyXG5cdFx0Y29udGVudDogJyc7XHJcblx0XHR6LWluZGV4OiAtMTtcclxuXHR9XHJcblxyXG5cdC5oZWFkaW5nIHtcclxuXHRcdG1hcmdpbi1ib3R0b206IDUwcHg7XHJcblx0fVxyXG5cclxuXHRsaSB7XHJcblx0XHRhIHtcclxuXHRcdFx0QGluY2x1ZGUgZm9udCgxNnB4LCAyMnB4KTtcclxuXHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xyXG5cdFx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdFx0XHR3aWR0aDogMTAwJTtcclxuXHRcdFx0aGVpZ2h0OiA2NXB4O1xyXG5cdFx0XHRwYWRkaW5nOiAxNXB4IDA7IFxyXG5cdFx0XHRjb2xvcjogJGdyZXktMTAwO1xyXG5cdFx0XHRmb250LXdlaWdodDogYm9sZDtcclxuXHRcdFx0Ym9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICR3aGl0ZS0xMDA7XHJcblx0XHRcdHRyYW5zaXRpb246IGFsbCAyNTBtcyBlYXNlO1xyXG5cclxuXHRcdFx0c3ZnIHtcclxuXHRcdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0XHRcdFx0dG9wOiAwO1xyXG5cdFx0XHRcdHdpZHRoOiAxOXB4O1xyXG5cdFx0XHRcdGhlaWdodDogMThweDtcclxuXHRcdFx0XHRtYXJnaW4tcmlnaHQ6IDEwcHg7XHJcblx0XHRcdFx0dHJhbnNpdGlvbjogYWxsIDI1MG1zIGVhc2U7XHJcblx0XHRcdH1cclxuXHJcblx0XHRcdCY6YmVmb3JlIHtcclxuXHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHRcdFx0dG9wOiAwO1xyXG5cdFx0XHRcdHJpZ2h0OiAtMjBweDtcclxuXHRcdFx0XHR3aWR0aDogMTAwdnc7XHJcblx0XHRcdFx0aGVpZ2h0OiAxMDAlO1xyXG5cdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRibHVlLXBhdHRlbnMtMTAwO1xyXG5cdFx0XHRcdGNvbnRlbnQ6ICcnO1xyXG5cdFx0XHRcdHotaW5kZXg6IC0xO1xyXG5cdFx0XHR9XHJcblxyXG5cdFx0XHQmOmhvdmVyIHtcclxuXHRcdFx0XHRjb2xvcjogJGJsdWUtMTAwO1xyXG5cclxuXHRcdFx0XHRzdmcge1xyXG5cdFx0XHRcdFx0Y29sb3I6ICRibHVlLTEwMDtcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHJcblx0XHQmLmlzLWFjdGl2ZSB7XHJcblx0XHRcdG1hcmdpbi10b3A6IC0ycHg7XHJcblxyXG5cdFx0XHRhIHtcclxuXHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGUtMTAwO1xyXG5cdFx0XHRcdGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAkYmx1ZS1wYXR0ZW5zLTEwMDtcclxuXHJcblx0XHRcdFx0JjpiZWZvcmUge1xyXG5cdFx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJHdoaXRlLTEwMDtcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdC53b29jb21tZXJjZS1NeUFjY291bnQtbmF2aWdhdGlvbi1saW5rLS1kYXNoYm9hcmQge1xyXG5cdFx0Ji5pcy1hY3RpdmUgYSxcclxuXHRcdGEge1xyXG5cdFx0XHRAaW5jbHVkZSBtZWRpYSgndGFibGV0LXBvcnRyYWl0LWRvd24nKSB7XHJcblx0XHRcdFx0bWFyZ2luLWJvdHRvbTogMjBweDtcclxuXHRcdFx0fVxyXG5cclxuXHRcdFx0QGV4dGVuZCAlaGVhZGluZztcclxuXHRcdFx0QGV4dGVuZCAlaGVhZGluZy00O1xyXG5cdFx0XHRoZWlnaHQ6IGF1dG87XHJcblx0XHRcdG1hcmdpbi1ib3R0b206IDUwcHg7XHJcblx0XHRcdHBhZGRpbmc6IDA7XHJcblx0XHRcdGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50IWltcG9ydGFudDtcclxuXHRcdFx0Ym9yZGVyLWJvdHRvbTogMDtcclxuXHJcblx0XHRcdCY6YmVmb3JlIHtcclxuXHRcdFx0XHRkaXNwbGF5OiBub25lO1xyXG5cdFx0XHR9XHJcblx0XHR9XHRcclxuXHR9XHJcbn0iLCIud29vY29tbWVyY2Utbm90aWNlcy13cmFwcGVyLFxyXG4ud29vY29tbWVyY2Utbm90aWNlIHtcclxuXHR3aWR0aDogMTAwJTtcclxufVxyXG5cclxuLmNhcnQtZW1wdHksXHJcbi53b29jb21tZXJjZS1tZXNzYWdlIHtcclxuXHRAaW5jbHVkZSBmb250KDIwcHgsIDI0cHgpO1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHRmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7XHJcblx0d2lkdGg6IDEwMCU7XHJcblx0bWFyZ2luLWJvdHRvbTogNTBweDtcclxuXHRwYWRkaW5nOiA0MHB4O1xyXG5cdGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZS1zbW9rZS0xMDA7XHJcblx0Y29sb3I6ICRibHVlLWxhZ29vbi0xMDA7XHJcblx0Zm9udC13ZWlnaHQ6IGJvbGQ7XHJcblxyXG5cdGEge1xyXG5cdFx0QGV4dGVuZCAlYnV0dG9uO1xyXG5cdFx0QGV4dGVuZCAlYnV0dG9uLS1ib3JkZXItZ3JleTtcclxuXHRcdG1hcmdpbi1sZWZ0OiAyNXB4O1xyXG5cclxuXHRcdCYucmVzdG9yZS1pdGVtIHtcclxuXHRcdFx0bWFyZ2luOiAwIDI1cHggMCAwO1xyXG5cdFx0fVxyXG5cdH1cclxufVxyXG5cclxuLndvb2NvbW1lcmNlLWVycm9yIHtcclxuXHRAZXh0ZW5kICV2YWxpZGF0aW9uX2Vycm9yO1xyXG59XHJcblxyXG4uY2FydC1lbXB0eSxcclxuLndvb2NvbW1lcmNlLW5vdGljZXMtd3JhcHBlciAud29vY29tbWVyY2UtbWVzc2FnZSB7XHJcblx0bWFyZ2luLXRvcDogOTVweDtcclxufSIsIi53b29jb21tZXJjZS1SZXNldFBhc3N3b3JkIHtcclxuXHRiciB7XHJcblx0XHRkaXNwbGF5OiBub25lO1xyXG5cdH1cclxuXHJcblx0bGFiZWwge1xyXG5cdFx0bWFyZ2luLWJvdHRvbTogMnB4O1xyXG5cdH1cclxuXHJcblx0Lndvb2NvbW1lcmNlLWZvcm0tcm93LS1maXJzdCB7XHJcblx0XHRtYXJnaW4tdG9wOiA0MHB4O1xyXG5cdH1cclxuXHJcblx0Lndvb2NvbW1lcmNlLUJ1dHRvbiB7XHJcblx0XHRAaW5jbHVkZSBtZWRpYSgndGFibGV0LXBvcnRyYWl0LWRvd24nKSB7XHJcblx0XHRcdG1hcmdpbi10b3A6IDQwcHg7XHJcblx0XHR9XHJcblxyXG5cdFx0QGV4dGVuZCAlYnV0dG9uLS1ibHVlO1xyXG5cdFx0bWFyZ2luLXRvcDogNjVweDtcclxuXHRcdHBhZGRpbmctcmlnaHQ6IDMwcHg7XHJcblx0XHRwYWRkaW5nLWxlZnQ6IDMwcHg7XHJcblxyXG5cdFx0c3ZnIHtcclxuXHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdFx0XHR0b3A6IDRweDtcclxuXHRcdFx0d2lkdGg6IDE1cHg7XHJcblx0XHRcdGhlaWdodDogMTNweDtcclxuXHRcdFx0bWFyZ2luLXJpZ2h0OiA4cHg7XHJcblx0XHR9XHJcblx0fVxyXG59XHJcblxyXG4iLCIvKipcclxuICogQ29sb3IgdXRpbGl0eSBjbGFzc2VzLlxyXG4gKlxyXG4gKiBBdXRvbWF0aWNhbGx5IGdlbmVyYXRlZCBjb2xvciBhbmQgYmFja2dyb3VuZCBjb2xvciB1dGlsaXR5IGNsYXNzZXMgYmFzZWQgb24gZXZlcnkgY29sb3IgZGVmaW5pdGlvbiBpbiBgc2V0dGluZ3MvX2NvbG9yLnNjc3NgLlxyXG4gKiBMb29wIHRocm91Z2ggZXZlcnkgYCRrZXlgIGFuZCBgJG1hcGAgaW4gdGhlIGAkY29sb3JzYCB2YXJpYWJsZSBtYXAgZGVmaW5lZCBpbiBgc2V0dGluZ3MvX2NvbG9yLnNjc3NgLlxyXG4gKi9cclxuIFxyXG5AZWFjaCAka2V5LCAkbWFwIGluICRjb2xvcnMge1xyXG5cclxuXHQvLyBMb29wIHRocm91Z2ggZXZlcnkgYCRzaGFkZWAgYW5kIGAkcmdiYCBpbiBgJG1hcGAuXHJcblx0QGVhY2ggJHNoYWRlLCAkcmdiIGluICRtYXAge1xyXG5cclxuXHRcdC8vIExvb3AgdGhyb3VnaCBldmVyeSBgY29sb3JgIGFuZCBgYmFja2dyb3VuZC1jb2xvcmAgcnVsZXMuXHJcblx0XHRAZWFjaCAkcnVsZSBpbiBjb2xvciwgYmFja2dyb3VuZC1jb2xvciB7XHJcblxyXG5cdFx0XHQvKipcclxuXHRcdFx0ICogYCN7JHJ1bGV9YCAjeyRyZ2J9LSN7JHNoYWRlfSBjb2xvciB1dGlsaXR5LlxyXG5cdFx0XHQgKi9cclxuXHJcblx0XHRcdC4jeyRydWxlfS0je3VucXVvdGUoJGtleSl9LSN7dW5xdW90ZSgkc2hhZGUpfSB7XHJcblx0XHRcdFx0I3skcnVsZX06ICRyZ2I7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcbn1cclxuIiwiLyoqXHJcbiAqIFZpc3VhbGx5IGhpZGUgYW55IGVsZW1lbnQgZnJvbSB0aGUgdXNlci5cclxuICovXHJcblxyXG4udmlzdWFsbHktaGlkZGVuIHtcclxuXHRkaXNwbGF5OiBibG9jaztcclxuXHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0d2lkdGg6IDFweDtcclxuXHRoZWlnaHQ6IDFweDtcclxuXHR3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG5cdG92ZXJmbG93OiBoaWRkZW47XHJcblx0Y2xpcDogcmVjdCgxcHgsIDFweCwgMXB4LCAxcHgpO1xyXG5cdGNsaXAtcGF0aDogaW5zZXQoMXB4KTtcclxufVxyXG5cclxuXHJcbi8qKlxyXG4gKiBNYWtlIGxhenlsb2FkIHBsYWNlaG9sZGVyIDEwMCUgd2lkZS5cclxuICovXHJcblxyXG4ubGF6eWxvYWQge1xyXG5cdHdpZHRoOiAxMDAlO1xyXG59XHJcblxyXG5cclxuLyoqXHJcbiAqIEhlbHBlciBjbGFzcyBmb3Igb2JqZWN0IGZpdCBwb2x5ZmlsbC4gQWRkIHRoaXMgY2xhc3MgdG8gYW55IGVsZW1lbnRcclxuICogdGhhdCB1dGlsaXplcyB0aGUgYG9iamVjdC1maXRgIHByb3BlcnR5LlxyXG4gKi9cclxuXHJcbiVvYmplY3QtZml0LFxyXG4ub2JqZWN0LWZpdCB7XHJcblx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdHRvcDogMDtcclxuXHRyaWdodDogMDtcclxuXHRib3R0b206IDA7XHJcblx0bGVmdDogMDtcclxuXHR3aWR0aDogMTAwJTtcclxuXHRoZWlnaHQ6IDEwMCU7XHJcblx0Zm9udC1mYW1pbHk6ICdvYmplY3QtZml0OiBjb3ZlcjsnO1xyXG5cdG9iamVjdC1maXQ6IGNvdmVyO1xyXG59XHJcblxyXG5cclxuLyoqXHJcbiAqIEFsaWduIGNlbnRlci5cclxuICovXHJcblxyXG4uYWxpZ24tY2VudGVyIHtcclxuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBBbGlnbiBsZWZ0LlxyXG4gKi9cclxuXHJcbi5hbGlnbi1sZWZ0IHtcclxuXHR0ZXh0LWFsaWduOiBsZWZ0O1xyXG59XHJcblxyXG4vKipcclxuICogQWxpZ24gcmlnaHQuXHJcbiAqL1xyXG5cclxuLmFsaWduLXJpZ2h0IHtcclxuXHR0ZXh0LWFsaWduOiByaWdodDtcclxufVxyXG4iLCIvKipcclxuICogT2JqZWN0IGZpdC5cclxuICpcclxuICogMS4gRm9udCBmYW1pbHkgcG9seWZpbGwgd2l0aCAoaHR0cHM6Ly9naXRodWIuY29tL2JmcmVkLWl0L29iamVjdC1maXQtaW1hZ2VzKS5cclxuICogTG9vcCB0aHJvdWdoIGV2ZXJ5IHZhbHVlIGZvciB0aGUgYG9iamVjdC1maXRgIHByb3BlcnR5LlxyXG4gKi9cclxuXHJcbkBlYWNoICR2YWx1ZSBpbiBmaWxsLCBjb250YWluLCBjb3Zlciwgbm9uZSwgc2NhbGUtZG93biB7XHJcblxyXG5cdC8qKlxyXG5cdCAqIGBvYmplY3QtZml0YCAjeyR2YWx1ZX0gdXRpbGl0eSBjbGFzcy5cclxuXHQgKi9cclxuXHJcblx0LiN7JHZhbHVlfSB7XHJcblx0XHRmb250LWZhbWlseTogJ29iamVjdC1maXQ6ICN7JHZhbHVlfTsnOyAvKiAxICovXHJcblx0XHRvYmplY3QtZml0OiAjeyR2YWx1ZX07XHJcblx0fVxyXG59XHJcbiIsIi8qKlxyXG4gKiBQb3NpdGlvbiB1dGlsaXR5IGNsYXNzLlxyXG4gKi9cclxuXHJcbkBlYWNoICR2YWx1ZSBpbiBzdGF0aWMsIHJlbGF0aXZlLCBhYnNvbHV0ZSwgZml4ZWQsIHN0aWNreSB7XHJcblx0LiN7JHZhbHVlfSB7XHJcblx0XHRwb3NpdGlvbjogJHZhbHVlO1xyXG5cdH1cclxufVxyXG4iLCJcclxuLyoqXHJcbiAqIEZvbnQgZmFtaWx5IHV0aWxpdHkgY2xhc3Nlcy5cclxuICovXHJcblxyXG5AZWFjaCAka2V5LCAkYnJlYWtwb2ludCBpbiAkYnJlYWtwb2ludHMge1xyXG5cdEBpbmNsdWRlIG1lZGlhKCRicmVha3BvaW50KSB7XHJcblx0XHRAZWFjaCAkcHJvcGVydHksICR2YWx1ZSBpbiAkZm9udC1mYW1pbHkge1xyXG5cdFx0XHQudGV4dC0jeyRrZXl9LSN7JHByb3BlcnR5fSB7XHJcblx0XHRcdFx0Zm9udC1mYW1pbHk6IG1hcC1nZXQoJGZvbnQtZmFtaWx5LCAkcHJvcGVydHkpO1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG59XHJcblxyXG5cclxuLyoqXHJcbiAqIFRleHQgc2l6ZSB1dGlsaXR5IGNsYXNzZXMuXHJcbiAqL1xyXG5cclxuQGVhY2ggJGtleSwgJGJyZWFrcG9pbnQgaW4gJGJyZWFrcG9pbnRzIHtcclxuXHRAaW5jbHVkZSBtZWRpYSgkYnJlYWtwb2ludCkge1xyXG5cdFx0QGVhY2ggJHByb3BlcnR5LCAkdmFsdWUgaW4gJGZvbnQtc2l6ZSB7XHJcblx0XHRcdC50ZXh0LSN7JGtleX0tI3skcHJvcGVydHl9IHtcclxuXHRcdFx0XHRAaW5jbHVkZSB0ZXh0KCRwcm9wZXJ0eSk7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcbn1cclxuXHJcblxyXG4vKipcclxuICogVGV4dCBhbGlnbm1lbnQgdXRpbGl0eSBjbGFzc2VzLlxyXG4gKi9cclxuXHJcbkBlYWNoICRrZXksICRicmVha3BvaW50IGluICRicmVha3BvaW50cyB7XHJcblx0QGluY2x1ZGUgbWVkaWEoJGJyZWFrcG9pbnQpIHtcclxuXHRcdEBlYWNoICRkaXJlY3Rpb24gaW4gbGVmdCwgcmlnaHQsIGNlbnRlciB7XHJcblx0XHRcdC50ZXh0LSN7JGtleX0tI3skZGlyZWN0aW9ufSB7XHJcblx0XHRcdFx0dGV4dC1hbGlnbjogJGRpcmVjdGlvbjtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cclxufVxyXG5cclxuXHJcbi8qKlxyXG4gKiBGb250IHdlaWdodCB1dGlsaXR5IGNsYXNzZXMuXHJcbiAqXHJcbiAqIDEuIE11bHRpcGx5IGxvb3BlZCBpbnRlZ2VyIGJ5IDEwMCBmb3IgY29ycmVjdCBmb250IHdlaWdodCB2YWx1ZS5cclxuICovXHJcblxyXG5AZWFjaCAka2V5LCAkYnJlYWtwb2ludCBpbiAkYnJlYWtwb2ludHMge1xyXG5cdEBpbmNsdWRlIG1lZGlhKCRicmVha3BvaW50KSB7XHJcblx0XHRAZm9yICRpIGZyb20gMSB0aHJvdWdoIDkge1xyXG5cdFx0XHQkaTogJGkgKiAxMDA7IC8vIFsxXVxyXG5cclxuXHRcdFx0LnRleHQtI3ska2V5fS0jeyRpfSB7XHJcblx0XHRcdFx0Zm9udC13ZWlnaHQ6ICN7JGl9O1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG59XHJcblxyXG5cclxuLyoqXHJcbiAqIFRleHQgdHJhbnNmb3JtIHVpdGxpdHkgY2xhc3Nlcy5cclxuICovXHJcblxyXG5AZWFjaCAka2V5LCAkYnJlYWtwb2ludCBpbiAkYnJlYWtwb2ludHMge1xyXG5cdEBpbmNsdWRlIG1lZGlhKCRicmVha3BvaW50KSB7XHJcblx0XHRAZWFjaCAkdHJhbnNmb3JtIGluIGNhcGl0YWxpemUsIHVwcGVyY2FzZSwgbG93ZXJjYXNlLCBub25lLCBmdWxsLXdpZHRoIHtcclxuXHRcdFx0LnRleHQtI3ska2V5fS0jeyR0cmFuc2Zvcm19IHtcclxuXHRcdFx0XHR0ZXh0LXRyYW5zZm9ybTogJHRyYW5zZm9ybTtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cclxufVxyXG4iLCIvKipcclxuICogVmVydGljYWwgUmh5dGhtLlxyXG4gKi9cclxuIFxyXG5AZm9yICRpIGZyb20gMCB0aHJvdWdoIDEwIHtcclxuXHQkaTogJGkgKiA4O1xyXG5cclxuXHQudnItI3skaX0ge1xyXG5cdFx0bWFyZ2luLWJvdHRvbTogI3skaX1weDtcclxuXHR9XHJcbn1cclxuIiwiLyoqXHJcbiAqIFV0aWxpdHkgY2xhc3NlcyBmb3IgbWFuaXB1bGF0aW5nIHN0YWNraW5nIG9yZGVyIGluIEhUTUwuXHJcbiAqL1xyXG5cclxuQGVhY2ggJGtleSwgJHZhbHVlIGluICR6LWluZGV4IHtcclxuXHQuei1pbmRleC0jeyRrZXl9IHtcclxuXHRcdHotaW5kZXg6ICR2YWx1ZTtcclxuXHR9XHJcbn1cclxuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQTs7R0FFRztBQ0ZIOztHQUVHO0FDRkg7O0dBRUc7QUFPSDs7R0FFRztBQVdIOztHQUVHO0FHeEJIOztHQUVHO0FBZUg7O0dBRUc7QUFNSDs7R0FFRztBQWVIOztHQUVHO0FBTUgsQUFBQSxDQUFDLEFBQUEsV0FBVyxDQUFDO0VBQ1gsZ0JBQWdCLEVGOUJULE9BQTJCO0VFK0JsQyxLQUFLLEVGOUNFLEtBQW9CLEdFK0M1Qjs7QUFFRDs7R0FFRztBTG5ESDs7R0FFRztBTVJILDRFQUE0RTtBQUU1RTtnRkFDZ0Y7QUFFaEY7OztHQUdHO0FBRUgsQUFBQSxJQUFJLENBQUM7RUFDSCxXQUFXLEVBQUUsSUFBSTtFQUFFLE9BQU87RUFDMUIsd0JBQXdCLEVBQUUsSUFBSTtFQUFFLE9BQU8sRUFDeEM7O0FBRUQ7Z0ZBQ2dGO0FBRWhGOztHQUVHO0FBRUgsQUFBQSxJQUFJLENBQUM7RUFDSCxNQUFNLEVBQUUsQ0FBQyxHQUNWOztBQUVEOztHQUVHO0FBRUgsQUFBQSxJQUFJLENBQUM7RUFDSCxPQUFPLEVBQUUsS0FBSyxHQUNmOztBQUVEOzs7R0FHRztBQUVILEFBQUEsRUFBRSxDQUFDO0VBQ0QsU0FBUyxFQUFFLEdBQUc7RUFDZCxNQUFNLEVBQUUsUUFBUSxHQUNqQjs7QUFFRDtnRkFDZ0Y7QUFFaEY7OztHQUdHO0FBRUgsQUFBQSxFQUFFLENBQUM7RUFDRCxVQUFVLEVBQUUsV0FBVztFQUFFLE9BQU87RUFDaEMsTUFBTSxFQUFFLENBQUM7RUFBRSxPQUFPO0VBQ2xCLFFBQVEsRUFBRSxPQUFPO0VBQUUsT0FBTyxFQUMzQjs7QUFFRDs7O0dBR0c7QUFFSCxBQUFBLEdBQUcsQ0FBQztFQUNGLFdBQVcsRUFBRSxvQkFBb0I7RUFBRSxPQUFPO0VBQzFDLFNBQVMsRUFBRSxHQUFHO0VBQUUsT0FBTyxFQUN4Qjs7QUFFRDtnRkFDZ0Y7QUFFaEY7O0dBRUc7QUFFSCxBQUFBLENBQUMsQ0FBQztFQUNBLGdCQUFnQixFQUFFLFdBQVcsR0FDOUI7O0FBRUQ7OztHQUdHO0FBRUgsQUFBQSxJQUFJLENBQUEsQUFBQSxLQUFDLEFBQUEsRUFBTztFQUNWLGFBQWEsRUFBRSxJQUFJO0VBQUUsT0FBTztFQUM1QixlQUFlLEVBQUUsU0FBUztFQUFFLE9BQU87RUFDbkMsZUFBZSxFQUFFLGdCQUFnQjtFQUFFLE9BQU8sRUFDM0M7O0FBRUQ7O0dBRUc7QUFFSCxBQUFBLENBQUM7QUFDRCxNQUFNLENBQUM7RUFDTCxXQUFXLEVBQUUsTUFBTSxHQUNwQjs7QUFFRDs7O0dBR0c7QUFFSCxBQUFBLElBQUk7QUFDSixHQUFHO0FBQ0gsSUFBSSxDQUFDO0VBQ0gsV0FBVyxFQUFFLG9CQUFvQjtFQUFFLE9BQU87RUFDMUMsU0FBUyxFQUFFLEdBQUc7RUFBRSxPQUFPLEVBQ3hCOztBQUVEOztHQUVHO0FBRUgsQUFBQSxLQUFLLENBQUM7RUFDSixTQUFTLEVBQUUsR0FBRyxHQUNmOztBQUVEOzs7R0FHRztBQUVILEFBQUEsR0FBRztBQUNILEdBQUcsQ0FBQztFQUNGLFNBQVMsRUFBRSxHQUFHO0VBQ2QsV0FBVyxFQUFFLENBQUM7RUFDZCxRQUFRLEVBQUUsUUFBUTtFQUNsQixjQUFjLEVBQUUsUUFBUSxHQUN6Qjs7QUFFRCxBQUFBLEdBQUcsQ0FBQztFQUNGLE1BQU0sRUFBRSxPQUFPLEdBQ2hCOztBQUVELEFBQUEsR0FBRyxDQUFDO0VBQ0YsR0FBRyxFQUFFLE1BQU0sR0FDWjs7QUFFRDtnRkFDZ0Y7QUFFaEY7O0dBRUc7QUFFSCxBQUFBLEdBQUcsQ0FBQztFQUNGLFlBQVksRUFBRSxJQUFJLEdBQ25COztBQUVEO2dGQUNnRjtBQUVoRjs7O0dBR0c7QUFFSCxBQUFBLE1BQU07QUFDTixLQUFLO0FBQ0wsUUFBUTtBQUNSLE1BQU07QUFDTixRQUFRLENBQUM7RUFDUCxXQUFXLEVBQUUsT0FBTztFQUFFLE9BQU87RUFDN0IsU0FBUyxFQUFFLElBQUk7RUFBRSxPQUFPO0VBQ3hCLFdBQVcsRUFBRSxJQUFJO0VBQUUsT0FBTztFQUMxQixNQUFNLEVBQUUsQ0FBQztFQUFFLE9BQU8sRUFDbkI7O0FBRUQ7OztHQUdHO0FBRUgsQUFBQSxNQUFNO0FBQ04sS0FBSyxDQUFDO0VBQUUsT0FBTztFQUNiLFFBQVEsRUFBRSxPQUFPLEdBQ2xCOztBQUVEOzs7R0FHRztBQUVILEFBQUEsTUFBTTtBQUNOLE1BQU0sQ0FBQztFQUFFLE9BQU87RUFDZCxjQUFjLEVBQUUsSUFBSSxHQUNyQjs7QUFFRDs7R0FFRztBQUVILEFBQUEsTUFBTTtDQUNOLEFBQUEsSUFBQyxDQUFLLFFBQVEsQUFBYjtDQUNELEFBQUEsSUFBQyxDQUFLLE9BQU8sQUFBWjtDQUNELEFBQUEsSUFBQyxDQUFLLFFBQVEsQUFBYixFQUFlO0VBQ2Qsa0JBQWtCLEVBQUUsTUFBTSxHQUMzQjs7QUFFRDs7R0FFRztBQUVILEFBQUEsTUFBTSxBQUFBLGtCQUFrQjtDQUN4QixBQUFBLElBQUMsQ0FBSyxRQUFRLEFBQWIsQ0FBYyxrQkFBa0I7Q0FDakMsQUFBQSxJQUFDLENBQUssT0FBTyxBQUFaLENBQWEsa0JBQWtCO0NBQ2hDLEFBQUEsSUFBQyxDQUFLLFFBQVEsQUFBYixDQUFjLGtCQUFrQixDQUFDO0VBQ2hDLFlBQVksRUFBRSxJQUFJO0VBQ2xCLE9BQU8sRUFBRSxDQUFDLEdBQ1g7O0FBRUQ7O0dBRUc7QUFFSCxBQUFBLE1BQU0sQUFBQSxlQUFlO0NBQ3JCLEFBQUEsSUFBQyxDQUFLLFFBQVEsQUFBYixDQUFjLGVBQWU7Q0FDOUIsQUFBQSxJQUFDLENBQUssT0FBTyxBQUFaLENBQWEsZUFBZTtDQUM3QixBQUFBLElBQUMsQ0FBSyxRQUFRLEFBQWIsQ0FBYyxlQUFlLENBQUM7RUFDN0IsT0FBTyxFQUFFLHFCQUFxQixHQUMvQjs7QUFFRDs7R0FFRztBQUVILEFBQUEsUUFBUSxDQUFDO0VBQ1AsT0FBTyxFQUFFLHFCQUFxQixHQUMvQjs7QUFFRDs7Ozs7R0FLRztBQUVILEFBQUEsTUFBTSxDQUFDO0VBQ0wsVUFBVSxFQUFFLFVBQVU7RUFBRSxPQUFPO0VBQy9CLEtBQUssRUFBRSxPQUFPO0VBQUUsT0FBTztFQUN2QixPQUFPLEVBQUUsS0FBSztFQUFFLE9BQU87RUFDdkIsU0FBUyxFQUFFLElBQUk7RUFBRSxPQUFPO0VBQ3hCLE9BQU8sRUFBRSxDQUFDO0VBQUUsT0FBTztFQUNuQixXQUFXLEVBQUUsTUFBTTtFQUFFLE9BQU8sRUFDN0I7O0FBRUQ7O0dBRUc7QUFFSCxBQUFBLFFBQVEsQ0FBQztFQUNQLGNBQWMsRUFBRSxRQUFRLEdBQ3pCOztBQUVEOztHQUVHO0FBRUgsQUFBQSxRQUFRLENBQUM7RUFDUCxRQUFRLEVBQUUsSUFBSSxHQUNmOztBQUVEOzs7R0FHRztDQUVILEFBQUEsQUFBQSxJQUFDLENBQUssVUFBVSxBQUFmO0NBQ0QsQUFBQSxJQUFDLENBQUssT0FBTyxBQUFaLEVBQWM7RUFDYixVQUFVLEVBQUUsVUFBVTtFQUFFLE9BQU87RUFDL0IsT0FBTyxFQUFFLENBQUM7RUFBRSxPQUFPLEVBQ3BCOztBQUVEOztHQUVHO0NBRUgsQUFBQSxBQUFBLElBQUMsQ0FBSyxRQUFRLEFBQWIsQ0FBYywyQkFBMkI7Q0FDMUMsQUFBQSxJQUFDLENBQUssUUFBUSxBQUFiLENBQWMsMkJBQTJCLENBQUM7RUFDekMsTUFBTSxFQUFFLElBQUksR0FDYjs7QUFFRDs7O0dBR0c7Q0FFSCxBQUFBLEFBQUEsSUFBQyxDQUFLLFFBQVEsQUFBYixFQUFlO0VBQ2Qsa0JBQWtCLEVBQUUsU0FBUztFQUFFLE9BQU87RUFDdEMsY0FBYyxFQUFFLElBQUk7RUFBRSxPQUFPLEVBQzlCOztBQUVEOztHQUVHO0NBRUgsQUFBQSxBQUFBLElBQUMsQ0FBSyxRQUFRLEFBQWIsQ0FBYywyQkFBMkIsQ0FBQztFQUN6QyxrQkFBa0IsRUFBRSxJQUFJLEdBQ3pCOztBQUVEOzs7R0FHRztBQUVILEFBQUEsNEJBQTRCLENBQUM7RUFDM0Isa0JBQWtCLEVBQUUsTUFBTTtFQUFFLE9BQU87RUFDbkMsSUFBSSxFQUFFLE9BQU87RUFBRSxPQUFPLEVBQ3ZCOztBQUVEO2dGQUNnRjtBQUVoRjs7R0FFRztBQUVILEFBQUEsT0FBTyxDQUFDO0VBQ04sT0FBTyxFQUFFLEtBQUssR0FDZjs7QUFFRDs7R0FFRztBQUVILEFBQUEsT0FBTyxDQUFDO0VBQ04sT0FBTyxFQUFFLFNBQVMsR0FDbkI7O0FBRUQ7Z0ZBQ2dGO0FBRWhGOztHQUVHO0FBRUgsQUFBQSxRQUFRLENBQUM7RUFDUCxPQUFPLEVBQUUsSUFBSSxHQUNkOztBQUVEOztHQUVHO0NBRUgsQUFBQSxBQUFBLE1BQUMsQUFBQSxFQUFRO0VBQ1AsT0FBTyxFQUFFLElBQUksR0FDZDs7QUU1VkQ7O0dBRUc7QUFDSCxBQUFBLGFBQWEsQ0FBQztFQUNiLE9BQU8sRUFBRSxJQUFJO0VBQ2IsS0FBSyxFQUFFLElBQUk7RUFDWCwyQkFBMkIsRUFBRSxXQUFXO0VBQ3hDLG9FQUFvRTtFQUNwRSxRQUFRLEVBQUUsUUFBUTtFQUNsQixPQUFPLEVBQUUsQ0FBQyxHQStHVjtFQXJIRCxBQVFDLGFBUlksQ0FRWixVQUFVLENBQUM7SUFDVixRQUFRLEVBQUUsUUFBUTtJQUNsQixnQkFBZ0IsRUFBRSxLQUFLO0lBQ3ZCLFlBQVksRUFBRSxZQUFZO0lBQzFCLHdCQUF3QixFQUFFLE1BQU07SUFBRSxrQ0FBa0MsRUFDcEU7RUFiRixBQWVDLGFBZlksQ0FlWixVQUFVLEFBQUEsTUFBTSxDQUFDO0lBQ2hCLE9BQU8sRUFBRSxHQUFHO0lBQ1osT0FBTyxFQUFFLEtBQUs7SUFDZCxLQUFLLEVBQUUsSUFBSTtJQUNYLFVBQVUsRUFBRSxNQUFNO0lBQ2xCLFdBQVcsRUFBRSxDQUFDO0lBQ2QsTUFBTSxFQUFFLENBQUMsR0FDVDtFQXRCRixBQXdCQyxhQXhCWSxDQXdCWixnQkFBZ0IsQ0FBQztJQUNoQixRQUFRLEVBQUUsUUFBUTtJQUNsQixRQUFRLEVBQUUsTUFBTTtJQUNoQixpQ0FBaUM7SUFDakMsaUJBQWlCLEVBQUUsMEJBQTBCLEdBQzdDO0VBN0JGLEFBK0JDLGFBL0JZLENBK0JaLFlBQVk7RUEvQmIsYUFBYSxDQWdDWixTQUFTLENBQUE7SUFDUiwyQkFBMkIsRUFBRSxNQUFNO0lBQ25DLHdCQUF3QixFQUFFLE1BQU07SUFDaEMsdUJBQXVCLEVBQUUsTUFBTTtJQUMvQixpQkFBaUIsRUFBRSxvQkFBa0I7SUFDckMsY0FBYyxFQUFFLG9CQUFrQjtJQUNsQyxhQUFhLEVBQUUsb0JBQWtCLEdBQ2pDO0VBdkNGLEFBeUNDLGFBekNZLENBeUNaLFNBQVMsQ0FBQztJQUNULFFBQVEsRUFBRSxRQUFRO0lBQ2xCLFVBQVUsRUFBRSxHQUFHO0lBQ2YsS0FBSyxFQUFFLElBQUk7SUFDWCwyQkFBMkIsRUFBRSxNQUFNO0lBQ25DLDJCQUEyQixFQUFFLFdBQVc7SUFDeEMscUJBQXFCLEVBQUUsSUFBSSxHQUMzQjtFQWhERixBQWlEQyxhQWpEWSxDQWlEWixTQUFTLENBQUMsR0FBRyxDQUFDO0lBQ2IsT0FBTyxFQUFFLEtBQUs7SUFDZCxLQUFLLEVBQUUsSUFBSSxHQUNYO0VBcERGLEFBc0RDLGFBdERZLENBc0RaLFFBQVEsQUFBQSxTQUFTO0VBdERsQixhQUFhLENBdURaLFNBQVMsQUFBQSxTQUFTLENBQUM7SUFDbEIsT0FBTyxFQUFFLElBQUksR0FDYjtFQXpERixBQTJEQyxhQTNEWSxDQTJEWixRQUFRLENBQUMsU0FBUztFQTNEbkIsYUFBYSxDQTREWixRQUFRLENBQUMsU0FBUztFQTVEbkIsYUFBYSxDQTZEWixRQUFRLENBQUM7SUFDUixNQUFNLEVBQUUsT0FBTztJQUNmLG1CQUFtQixFQUFFLElBQUk7SUFDekIsa0JBQWtCLEVBQUUsSUFBSTtJQUN4QixnQkFBZ0IsRUFBRSxJQUFJO0lBQ3RCLGVBQWUsRUFBRSxJQUFJO0lBQ3JCLFdBQVcsRUFBRSxJQUFJLEdBQ2pCO0VBcEVGLEFBc0VDLGFBdEVZLENBc0VaLFFBQVEsQ0FBQyxNQUFNLEFBQUEsU0FBUztFQXRFekIsYUFBYSxDQXVFWixRQUFRLENBQUMsTUFBTSxBQUFBLFNBQVM7RUF2RXpCLGFBQWEsQ0F3RVosTUFBTSxBQUFBLFFBQVEsQ0FBQztJQUNkLFVBQVUsRUFBRSxJQUFJO0lBQ2hCLEtBQUssRUFBRSxPQUFPO0lBQ2QsTUFBTSxFQUFFLElBQUk7SUFDWixPQUFPLEVBQUMsQ0FBQyxDQUFBLFVBQVU7SUFDbkIsSUFBSSxFQUFFLE9BQU8sR0FDYjtFQTlFRixBQWdGQyxhQWhGWSxBQWdGWCxXQUFXLENBQUM7SUFDWixPQUFPLEVBQUUsS0FBSyxHQUNkO0VBbEZGLEFBb0ZDLGFBcEZZLEFBb0ZYLFlBQVksQ0FBQztJQUNiLE9BQU8sRUFBRSxDQUFDO0lBQ1YsT0FBTyxFQUFFLEtBQUssR0FDZDtFQXZGRixBQXlGQyxhQXpGWSxBQXlGWCxXQUFXLENBQUM7SUFDWixPQUFPLEVBQUUsQ0FBQyxHQUNWO0VBM0ZGLEFBNkZDLGFBN0ZZLEFBNkZYLFlBQVksQ0FBQyxTQUFTLENBQUM7SUFDdkIsVUFBVSxFQUFFLE1BQU0sR0FDbEI7RUEvRkYsQUFpR0MsYUFqR1ksQUFpR1gsU0FBUyxDQUFDLFNBQVMsQ0FBQztJQUNwQixZQUFZLEVBQUUsS0FBSztJQUNuQixtQkFBbUIsRUFBRSxJQUFJO0lBQ3pCLGdCQUFnQixFQUFFLElBQUk7SUFDdEIsZUFBZSxFQUFFLElBQUk7SUFDckIsV0FBVyxFQUFFLElBQUksR0FDakI7RUF2R0YsQUF5R0MsYUF6R1ksQUF5R1gsU0FBUyxDQUFDO0lBQ1YsTUFBTSxFQUFFLElBQUk7SUFDWixNQUFNLEVBQUUsSUFBSSxHQUNaO0VBNUdGLEFBOEdDLGFBOUdZLEFBOEdYLFFBQVEsQ0FBQztJQUNULFNBQVMsRUFBRSxHQUFHLEdBQ2Q7RUFoSEYsQUFrSEMsYUFsSFksQUFrSFgsUUFBUSxDQUFDLFNBQVMsQ0FBQztJQUNuQixLQUFLLEVBQUUsS0FBSyxHQUNaOztBQUdGLFdBQVc7QUFDWCxBQUFBLE1BQU0sQ0FBQyxhQUFhLENBQUM7RUFDcEIsT0FBTyxFQUFFLEtBQUssR0FDZDs7QUM3SEQ7O0dBRUc7QUFDSCxBQUNDLGFBRFksQ0FDWixTQUFTLENBQUM7RUFDVCxrQkFBa0IsRUFBRSxNQUFNO0VBQzFCLG1CQUFtQixFQUFFLElBQUksR0FDekI7O0FBSkYsQUFLQyxhQUxZLENBS1osZ0JBQWdCLENBQUM7RUFDaEIsT0FBTyxFQUFFLENBQUMsR0FDVjs7QUFQRixBQVFDLGFBUlksQ0FRWixpQkFBaUIsQ0FBQztFQUNqQixPQUFPLEVBQUUsQ0FBQyxHQUNWOztBQVZGLEFBV0MsYUFYWSxDQVdaLFFBQVEsQ0FBQztFQUNSLGNBQWMsRUFBRSxPQUFPLEdBQ3ZCOztBQUdGLFVBQVUsQ0FBVixPQUFVO0VBQ1QsRUFBRTtJQUNELE9BQU8sRUFBRSxDQUFDO0VBR1gsSUFBSTtJQUNILE9BQU8sRUFBRSxDQUFDOztBQ3pCWjs7R0FFRztBQUVILEFBQUEsV0FBVyxDQUFDO0VBQ1gsVUFBVSxFQUFFLHdCQUF3QixHQUNwQzs7QUNORDs7R0FFRztBSENILEFBeUNDLGFBekNZLENBeUNaLFNBQVMsQ0d2Q0M7RUFNVDs7O0tBR0csRUFRSDtFQWxCRixBQUVFLGFBRlcsQ0FDWixTQUFTLENBQ1IsU0FBUyxDQUFDO0lBQ1IsT0FBTyxFQUFFLENBQUM7SUFDVixVQUFVLEVBQUUsa0JBQWtCLEdBQy9CO0VBTEgsQUFXRSxhQVhXLENBQ1osU0FBUyxDQVVSLFNBQVMsQ0FBQSxBQUFBLEdBQUMsRUFBSyxFQUFFLEFBQVAsR0FYWixhQUFhLENBQ1osU0FBUyxDQVVZLFNBQVMsQUFBQSxJQUFLLEVBQUEsQUFBQSxHQUFDLEFBQUEsR0FBTTtJQUN4QyxVQUFVLEVBQUUsQ0FBQyxHQUNiO0VBYkgsQUFlRSxhQWZXLENBQ1osU0FBUyxDQWNSLEdBQUcsQUFBQSxTQUFTLENBQUM7SUFDWixlQUFlLEVBQUUsV0FBVyxHQUM1Qjs7QUNuQkg7O0dBRUc7QUFFSCxBQUNDLGFBRFksQ0FDWixrQkFBa0IsQ0FBQztFQUNsQixRQUFRLEVBQUUsUUFBUTtFQUNsQixNQUFNLEVBQUUsSUFBSTtFQUNaLFVBQVUsRUFBRSxJQUFJLEdBQ2hCOztBQUxGLEFBT0MsYUFQWSxDQU9aLG9CQUFvQixDQUFDO0VBQ3BCLFFBQVEsRUFBRSxRQUFRO0VBQ2xCLE1BQU0sRUFBRSxJQUFJO0VBQ1osS0FBSyxFQUFFLElBQUk7RUFDWCxJQUFJLEVBQUUsR0FBRztFQUNULEdBQUcsRUFBRSxHQUFHO0VBQ1IsV0FBVyxFQUFFLEtBQUs7RUFDbEIsVUFBVSxFQUFFLEtBQUs7RUFDakIsVUFBVSxFQUFFLHlCQUEyQyxDQUFDLFNBQVM7RUFDakUsTUFBTSxFQUFFLE9BQU87RUFDZixPQUFPLEVBQUUsQ0FBQztFQUNWLDJCQUEyQixFQUFFLE1BQU07RUFDbkMsVUFBVSxFQUFFLG9CQUFvQixHQUNoQzs7QUFwQkYsQUFzQkMsYUF0QlksQ0FzQlosb0JBQW9CLEFBQUEsTUFBTSxDQUFDO0VBQzFCLFNBQVMsRUFBRSxlQUFlLEdBQzFCOztBQXhCRixBQTBCQyxhQTFCWSxDQTBCWixrQkFBa0IsQ0FBQyxhQUFhO0FBMUJqQyxhQUFhLENBMkJaLGtCQUFrQixDQUFDLG9CQUFvQixDQUFDO0VBQ3ZDLE9BQU8sRUFBRSxJQUFJLEdBQ2I7O0FBN0JGLEFBK0JDLGFBL0JZLENBK0JaLGFBQWEsQ0FBQztFQUNiLE9BQU8sRUFBRSxDQUFDO0VBQ1YsTUFBTSxFQUFFLElBQUk7RUFDWixtQkFBbUIsRUFBRSxhQUFhO0VBQ2xDLGlCQUFpQixFQUFFLFNBQVM7RUFDNUIsZUFBZSxFQUFFLE9BQU87RUFDeEIsVUFBVSxFQUFFLGtCQUFrQixHQUM5Qjs7QUF0Q0YsQUF3Q0MsYUF4Q1ksQ0F3Q1osZ0JBQWdCLENBQUM7RUFDaEIsUUFBUSxFQUFFLFFBQVE7RUFDbEIsT0FBTyxFQUFFLENBQUM7RUFDVixNQUFNLEVBQUUsSUFBSTtFQUNaLEtBQUssRUFBRSxJQUFJLEdBQ1g7O0FadkNGOztHQUVHO0FhZEg7O0dBRUc7QUNGSDs7Ozs7O0dBTUc7QUFTSDs7Ozs7O0dBTUc7QUFVSDs7Ozs7OztHQU9HO0FBT0g7Ozs7Ozs7R0FPRztBQ2pESCx3QkFBd0I7QUFDeEIsQUFBQSxPQUFPLENBQUM7RUFDTixHQUFHLEVBQUUsQ0FBQztFQUNOLElBQUksRUFBRSxDQUFDO0VBQ1AsS0FBSyxFQUFFLElBQUk7RUFDWCxNQUFNLEVBQUUsSUFBSTtFQUNaLE9BQU8sRUFBRSxJQUFJO0VBQ2IsUUFBUSxFQUFFLE1BQU07RUFDaEIsUUFBUSxFQUFFLEtBQUs7RUFDZixVQUFVLEVBQUUsT0FBTztFQUNuQixPQUFPLEVBQUUsR0FBRyxHQUFHOztBQUVqQixBQUFBLFNBQVMsQ0FBQztFQUNSLEdBQUcsRUFBRSxDQUFDO0VBQ04sSUFBSSxFQUFFLENBQUM7RUFDUCxLQUFLLEVBQUUsSUFBSTtFQUNYLE1BQU0sRUFBRSxJQUFJO0VBQ1osT0FBTyxFQUFFLElBQUk7RUFDYixRQUFRLEVBQUUsS0FBSztFQUNmLE9BQU8sRUFBRSxlQUFlO0VBQ3hCLDJCQUEyQixFQUFFLE1BQU0sR0FBRzs7QUFFeEMsQUFBQSxjQUFjLENBQUM7RUFDYixVQUFVLEVBQUUsTUFBTTtFQUNsQixRQUFRLEVBQUUsUUFBUTtFQUNsQixLQUFLLEVBQUUsSUFBSTtFQUNYLE1BQU0sRUFBRSxJQUFJO0VBQ1osSUFBSSxFQUFFLENBQUM7RUFDUCxHQUFHLEVBQUUsQ0FBQztFQUNOLE9BQU8sRUFBRSxLQUFLO0VBQ2QsVUFBVSxFQUFFLFVBQVUsR0FBRzs7QUFFM0IsQUFBQSxjQUFjLEFBQUEsT0FBTyxDQUFDO0VBQ3BCLE9BQU8sRUFBRSxFQUFFO0VBQ1gsT0FBTyxFQUFFLFlBQVk7RUFDckIsTUFBTSxFQUFFLElBQUk7RUFDWixjQUFjLEVBQUUsTUFBTSxHQUFHOztBQUUzQixBQUFBLGNBQWMsQ0FBQyxjQUFjLEFBQUEsT0FBTyxDQUFDO0VBQ25DLE9BQU8sRUFBRSxJQUFJLEdBQUc7O0FBRWxCLEFBQUEsWUFBWSxDQUFDO0VBQ1gsUUFBUSxFQUFFLFFBQVE7RUFDbEIsT0FBTyxFQUFFLFlBQVk7RUFDckIsY0FBYyxFQUFFLE1BQU07RUFDdEIsTUFBTSxFQUFFLE1BQU07RUFDZCxVQUFVLEVBQUUsSUFBSTtFQUNoQixPQUFPLEVBQUUsSUFBSSxHQUFHOztBQUVsQixBQUFBLGtCQUFrQixDQUFDLFlBQVk7QUFDL0IsZ0JBQWdCLENBQUMsWUFBWSxDQUFDO0VBQzVCLEtBQUssRUFBRSxJQUFJO0VBQ1gsTUFBTSxFQUFFLElBQUksR0FBRzs7QUFFakIsQUFBQSxhQUFhLENBQUM7RUFDWixNQUFNLEVBQUUsUUFBUSxHQUFHOztBQUVyQixBQUFBLGlCQUFpQixFQUFFLGlCQUFpQixDQUFDLGlCQUFpQixDQUFDLFVBQVUsQ0FBQztFQUNoRSxNQUFNLEVBQUUsYUFBYTtFQUNyQixNQUFNLEVBQUUsZ0JBQWdCO0VBQ3hCLE1BQU0sRUFBRSxRQUFRLEdBQUc7O0FBRXJCLEFBQUEsU0FBUyxDQUFDO0VBQ1IsTUFBTSxFQUFFLE9BQU87RUFDZixNQUFNLEVBQUUsZUFBZTtFQUN2QixNQUFNLEVBQUUsWUFBWTtFQUNwQixNQUFNLEVBQUUsT0FBTyxHQUFHOztBQUVwQixBQUFBLGdCQUFnQixDQUFDLFlBQVksQ0FBQztFQUM1QixNQUFNLEVBQUUsSUFBSSxHQUFHOztBQUVqQixBQUFBLFVBQVU7QUFDVixVQUFVO0FBQ1YsY0FBYztBQUNkLFlBQVksQ0FBQztFQUNYLG1CQUFtQixFQUFFLElBQUk7RUFDekIsZ0JBQWdCLEVBQUUsSUFBSTtFQUN0QixXQUFXLEVBQUUsSUFBSSxHQUFHOztBQUV0QixBQUFBLFlBQVksQUFBQSxXQUFXLENBQUM7RUFDdEIsT0FBTyxFQUFFLElBQUksR0FBRzs7QUFFbEIsQUFBQSxTQUFTLENBQUM7RUFDUixPQUFPLEVBQUUsZUFBZSxHQUFHOztBQUU3QixBQUFBLGNBQWMsQ0FBQztFQUNiLEtBQUssRUFBRSxJQUFJO0VBQ1gsUUFBUSxFQUFFLFFBQVE7RUFDbEIsR0FBRyxFQUFFLEdBQUc7RUFDUixLQUFLLEVBQUUsSUFBSTtFQUNYLFVBQVUsRUFBRSxNQUFNO0VBQ2xCLFVBQVUsRUFBRSxNQUFNO0VBQ2xCLElBQUksRUFBRSxHQUFHO0VBQ1QsS0FBSyxFQUFFLEdBQUc7RUFDVixPQUFPLEVBQUUsSUFBSSxHQUFHOztBQUNoQixBQUFBLGNBQWMsQ0FBQyxDQUFDLENBQUM7RUFDZixLQUFLLEVBQUUsSUFBSSxHQUFHOztBQUNkLEFBQUEsY0FBYyxDQUFDLENBQUMsQUFBQSxNQUFNLENBQUM7RUFDckIsS0FBSyxFQUFFLElBQUksR0FBRzs7QUFFcEIsQUFBQSxZQUFZLENBQUMsY0FBYyxDQUFDO0VBQzFCLE9BQU8sRUFBRSxJQUFJLEdBQUc7O0FBRWxCLEFBQUEsWUFBWSxDQUFDLFlBQVksQ0FBQztFQUN4QixPQUFPLEVBQUUsSUFBSSxHQUFHOztBQUVsQixBQUFBLE1BQU0sQUFBQSxVQUFVO0FBQ2hCLE1BQU0sQUFBQSxVQUFVLENBQUM7RUFDZixRQUFRLEVBQUUsT0FBTztFQUNqQixNQUFNLEVBQUUsT0FBTztFQUNmLFVBQVUsRUFBRSxXQUFXO0VBQ3ZCLE1BQU0sRUFBRSxDQUFDO0VBQ1Qsa0JBQWtCLEVBQUUsSUFBSTtFQUN4QixPQUFPLEVBQUUsS0FBSztFQUNkLE9BQU8sRUFBRSxJQUFJO0VBQ2IsT0FBTyxFQUFFLENBQUM7RUFDVixPQUFPLEVBQUUsSUFBSTtFQUNiLFVBQVUsRUFBRSxJQUFJO0VBQ2hCLFlBQVksRUFBRSxZQUFZLEdBQUc7O0FBRS9CLEFBQUEsTUFBTSxBQUFBLGtCQUFrQixDQUFDO0VBQ3ZCLE9BQU8sRUFBRSxDQUFDO0VBQ1YsTUFBTSxFQUFFLENBQUMsR0FBRzs7QUFFZCxBQUFBLFVBQVUsQ0FBQztFQUNULEtBQUssRUFBRSxJQUFJO0VBQ1gsTUFBTSxFQUFFLElBQUk7RUFDWixXQUFXLEVBQUUsSUFBSTtFQUNqQixRQUFRLEVBQUUsUUFBUTtFQUNsQixLQUFLLEVBQUUsQ0FBQztFQUNSLEdBQUcsRUFBRSxDQUFDO0VBQ04sZUFBZSxFQUFFLElBQUk7RUFDckIsVUFBVSxFQUFFLE1BQU07RUFDbEIsT0FBTyxFQUFFLElBQUk7RUFDYixPQUFPLEVBQUUsYUFBYTtFQUN0QixLQUFLLEVBQUUsSUFBSTtFQUNYLFVBQVUsRUFBRSxNQUFNO0VBQ2xCLFNBQVMsRUFBRSxJQUFJO0VBQ2YsV0FBVyxFQUFFLDZCQUE2QixHQUFHOztBQUM3QyxBQUFBLFVBQVUsQUFBQSxNQUFNO0FBQ2hCLFVBQVUsQUFBQSxNQUFNLENBQUM7RUFDZixPQUFPLEVBQUUsQ0FBQyxHQUFHOztBQUNmLEFBQUEsVUFBVSxBQUFBLE9BQU8sQ0FBQztFQUNoQixHQUFHLEVBQUUsR0FBRyxHQUFHOztBQUVmLEFBQUEsaUJBQWlCLENBQUMsVUFBVSxDQUFDO0VBQzNCLEtBQUssRUFBRSxJQUFJLEdBQUc7O0FBRWhCLEFBQUEsaUJBQWlCLENBQUMsVUFBVTtBQUM1QixrQkFBa0IsQ0FBQyxVQUFVLENBQUM7RUFDNUIsS0FBSyxFQUFFLElBQUk7RUFDWCxLQUFLLEVBQUUsSUFBSTtFQUNYLFVBQVUsRUFBRSxLQUFLO0VBQ2pCLGFBQWEsRUFBRSxHQUFHO0VBQ2xCLEtBQUssRUFBRSxJQUFJLEdBQUc7O0FBRWhCLEFBQUEsWUFBWSxDQUFDO0VBQ1gsUUFBUSxFQUFFLFFBQVE7RUFDbEIsR0FBRyxFQUFFLENBQUM7RUFDTixLQUFLLEVBQUUsQ0FBQztFQUNSLEtBQUssRUFBRSxJQUFJO0VBQ1gsU0FBUyxFQUFFLElBQUk7RUFDZixXQUFXLEVBQUUsSUFBSTtFQUNqQixXQUFXLEVBQUUsTUFBTSxHQUFHOztBQUV4QixBQUFBLFVBQVUsQ0FBQztFQUNULFFBQVEsRUFBRSxRQUFRO0VBQ2xCLE9BQU8sRUFBRSxJQUFJO0VBQ2IsTUFBTSxFQUFFLENBQUM7RUFDVCxHQUFHLEVBQUUsR0FBRztFQUNSLFVBQVUsRUFBRSxLQUFLO0VBQ2pCLE9BQU8sRUFBRSxDQUFDO0VBQ1YsS0FBSyxFQUFFLElBQUk7RUFDWCxNQUFNLEVBQUUsS0FBSztFQUNiLDJCQUEyQixFQUFFLFdBQVcsR0FBRzs7QUFDM0MsQUFBQSxVQUFVLEFBQUEsT0FBTyxDQUFDO0VBQ2hCLFVBQVUsRUFBRSxLQUFLLEdBQUc7O0FBQ3RCLEFBQUEsVUFBVSxBQUFBLE1BQU07QUFDaEIsVUFBVSxBQUFBLE1BQU0sQ0FBQztFQUNmLE9BQU8sRUFBRSxDQUFDLEdBQUc7O0FBQ2YsQUFBQSxVQUFVLEFBQUEsT0FBTztBQUNqQixVQUFVLEFBQUEsTUFBTSxDQUFDO0VBQ2YsT0FBTyxFQUFFLEVBQUU7RUFDWCxPQUFPLEVBQUUsS0FBSztFQUNkLEtBQUssRUFBRSxDQUFDO0VBQ1IsTUFBTSxFQUFFLENBQUM7RUFDVCxRQUFRLEVBQUUsUUFBUTtFQUNsQixJQUFJLEVBQUUsQ0FBQztFQUNQLEdBQUcsRUFBRSxDQUFDO0VBQ04sVUFBVSxFQUFFLElBQUk7RUFDaEIsV0FBVyxFQUFFLElBQUk7RUFDakIsTUFBTSxFQUFFLHdCQUF3QixHQUFHOztBQUNyQyxBQUFBLFVBQVUsQUFBQSxNQUFNLENBQUM7RUFDZixnQkFBZ0IsRUFBRSxJQUFJO0VBQ3RCLG1CQUFtQixFQUFFLElBQUk7RUFDekIsR0FBRyxFQUFFLEdBQUcsR0FBRzs7QUFDYixBQUFBLFVBQVUsQUFBQSxPQUFPLENBQUM7RUFDaEIsZ0JBQWdCLEVBQUUsSUFBSTtFQUN0QixtQkFBbUIsRUFBRSxJQUFJO0VBQ3pCLE9BQU8sRUFBRSxHQUFHLEdBQUc7O0FBRW5CLEFBQUEsZUFBZSxDQUFDO0VBQ2QsSUFBSSxFQUFFLENBQUMsR0FBRzs7QUFDVixBQUFBLGVBQWUsQUFBQSxNQUFNLENBQUM7RUFDcEIsWUFBWSxFQUFFLGVBQWU7RUFDN0IsV0FBVyxFQUFFLElBQUksR0FBRzs7QUFDdEIsQUFBQSxlQUFlLEFBQUEsT0FBTyxDQUFDO0VBQ3JCLFdBQVcsRUFBRSxJQUFJO0VBQ2pCLFlBQVksRUFBRSxrQkFBa0IsR0FBRzs7QUFFdkMsQUFBQSxnQkFBZ0IsQ0FBQztFQUNmLEtBQUssRUFBRSxDQUFDLEdBQUc7O0FBQ1gsQUFBQSxnQkFBZ0IsQUFBQSxNQUFNLENBQUM7RUFDckIsV0FBVyxFQUFFLGVBQWU7RUFDNUIsV0FBVyxFQUFFLElBQUksR0FBRzs7QUFDdEIsQUFBQSxnQkFBZ0IsQUFBQSxPQUFPLENBQUM7RUFDdEIsV0FBVyxFQUFFLGtCQUFrQixHQUFHOztBQUV0QyxBQUFBLGtCQUFrQixDQUFDO0VBQ2pCLFdBQVcsRUFBRSxJQUFJO0VBQ2pCLGNBQWMsRUFBRSxJQUFJLEdBQUc7O0FBQ3ZCLEFBQUEsa0JBQWtCLENBQUMsWUFBWSxDQUFDO0VBQzlCLFdBQVcsRUFBRSxDQUFDO0VBQ2QsS0FBSyxFQUFFLElBQUk7RUFDWCxTQUFTLEVBQUUsS0FBSyxHQUFHOztBQUNyQixBQUFBLGtCQUFrQixDQUFDLFVBQVUsQ0FBQztFQUM1QixHQUFHLEVBQUUsS0FBSyxHQUFHOztBQUVqQixBQUFBLGtCQUFrQixDQUFDO0VBQ2pCLEtBQUssRUFBRSxJQUFJO0VBQ1gsTUFBTSxFQUFFLENBQUM7RUFDVCxRQUFRLEVBQUUsTUFBTTtFQUNoQixXQUFXLEVBQUUsTUFBTSxHQUFHOztBQUN0QixBQUFBLGtCQUFrQixDQUFDLE1BQU0sQ0FBQztFQUN4QixRQUFRLEVBQUUsUUFBUTtFQUNsQixPQUFPLEVBQUUsS0FBSztFQUNkLEdBQUcsRUFBRSxDQUFDO0VBQ04sSUFBSSxFQUFFLENBQUM7RUFDUCxLQUFLLEVBQUUsSUFBSTtFQUNYLE1BQU0sRUFBRSxJQUFJO0VBQ1osVUFBVSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLGtCQUFrQjtFQUN0QyxVQUFVLEVBQUUsSUFBSSxHQUFHOztBQUV2Qix5QkFBeUI7QUFDekIsQUFBQSxHQUFHLEFBQUEsUUFBUSxDQUFDO0VBQ1YsS0FBSyxFQUFFLElBQUk7RUFDWCxTQUFTLEVBQUUsSUFBSTtFQUNmLE1BQU0sRUFBRSxJQUFJO0VBQ1osT0FBTyxFQUFFLEtBQUs7RUFDZCxXQUFXLEVBQUUsQ0FBQztFQUNkLFVBQVUsRUFBRSxVQUFVO0VBQ3RCLE9BQU8sRUFBRSxXQUFXO0VBQ3BCLE1BQU0sRUFBRSxNQUFNLEdBQUc7O0FBRW5CLGlDQUFpQztBQUNqQyxBQUFBLFdBQVcsQ0FBQztFQUNWLFdBQVcsRUFBRSxDQUFDLEdBQUc7O0FBQ2pCLEFBQUEsV0FBVyxBQUFBLE1BQU0sQ0FBQztFQUNoQixPQUFPLEVBQUUsRUFBRTtFQUNYLFFBQVEsRUFBRSxRQUFRO0VBQ2xCLElBQUksRUFBRSxDQUFDO0VBQ1AsR0FBRyxFQUFFLElBQUk7RUFDVCxNQUFNLEVBQUUsSUFBSTtFQUNaLE9BQU8sRUFBRSxLQUFLO0VBQ2QsS0FBSyxFQUFFLENBQUM7RUFDUixLQUFLLEVBQUUsSUFBSTtFQUNYLE1BQU0sRUFBRSxJQUFJO0VBQ1osT0FBTyxFQUFFLEVBQUU7RUFDWCxVQUFVLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsa0JBQWtCO0VBQ3RDLFVBQVUsRUFBRSxJQUFJLEdBQUc7O0FBQ3JCLEFBQUEsV0FBVyxDQUFDLEtBQUssQ0FBQztFQUNoQixLQUFLLEVBQUUsT0FBTztFQUNkLE9BQU8sRUFBRSxLQUFLO0VBQ2QsU0FBUyxFQUFFLElBQUk7RUFDZixXQUFXLEVBQUUsSUFBSSxHQUFHOztBQUN0QixBQUFBLFdBQVcsQ0FBQyxNQUFNLENBQUM7RUFDakIsTUFBTSxFQUFFLENBQUMsR0FBRzs7QUFFaEIsQUFBQSxlQUFlLENBQUM7RUFDZCxVQUFVLEVBQUUsS0FBSztFQUNqQixRQUFRLEVBQUUsUUFBUTtFQUNsQixHQUFHLEVBQUUsSUFBSTtFQUNULElBQUksRUFBRSxDQUFDO0VBQ1AsS0FBSyxFQUFFLElBQUk7RUFDWCxNQUFNLEVBQUUsSUFBSSxHQUFHOztBQUVqQixBQUFBLFVBQVUsQ0FBQztFQUNULFVBQVUsRUFBRSxJQUFJO0VBQ2hCLFdBQVcsRUFBRSxJQUFJO0VBQ2pCLEtBQUssRUFBRSxPQUFPO0VBQ2QsU0FBUyxFQUFFLFVBQVU7RUFDckIsYUFBYSxFQUFFLElBQUksR0FBRzs7QUFFeEIsQUFBQSxpQkFBaUIsQ0FBQyxZQUFZLENBQUM7RUFDN0IsU0FBUyxFQUFFLElBQUksR0FBRzs7QUFFcEIsQUFBQSxZQUFZLENBQUMsaUJBQWlCLENBQUMsV0FBVyxDQUFDO0VBQ3pDLE1BQU0sRUFBRSxPQUFPLEdBQUc7O0FBRXBCLE1BQU0sQ0FBQyxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUssT0FBTyxXQUFXLEVBQUUsU0FBUyxHQUFHLE1BQU0sTUFBTSxVQUFVLEVBQUUsS0FBSztFQUM5Rjs7U0FFTztFQUNQLEFBQUEsZUFBZSxDQUFDLGlCQUFpQixDQUFDO0lBQ2hDLFlBQVksRUFBRSxDQUFDO0lBQ2YsYUFBYSxFQUFFLENBQUMsR0FBRztFQUNyQixBQUFBLGVBQWUsQ0FBQyxHQUFHLEFBQUEsUUFBUSxDQUFDO0lBQzFCLE9BQU8sRUFBRSxDQUFDLEdBQUc7RUFDZixBQUFBLGVBQWUsQ0FBQyxXQUFXLEFBQUEsTUFBTSxDQUFDO0lBQ2hDLEdBQUcsRUFBRSxDQUFDO0lBQ04sTUFBTSxFQUFFLENBQUMsR0FBRztFQUNkLEFBQUEsZUFBZSxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUM7SUFDaEMsT0FBTyxFQUFFLE1BQU07SUFDZixXQUFXLEVBQUUsR0FBRyxHQUFHO0VBQ3JCLEFBQUEsZUFBZSxDQUFDLGVBQWUsQ0FBQztJQUM5QixVQUFVLEVBQUUsa0JBQWtCO0lBQzlCLE1BQU0sRUFBRSxDQUFDO0lBQ1QsTUFBTSxFQUFFLENBQUM7SUFDVCxHQUFHLEVBQUUsSUFBSTtJQUNULE9BQU8sRUFBRSxPQUFPO0lBQ2hCLFFBQVEsRUFBRSxLQUFLO0lBQ2YsVUFBVSxFQUFFLFVBQVUsR0FBRztFQUN6QixBQUFBLGVBQWUsQ0FBQyxlQUFlLEFBQUEsTUFBTSxDQUFDO0lBQ3BDLE9BQU8sRUFBRSxDQUFDLEdBQUc7RUFDakIsQUFBQSxlQUFlLENBQUMsWUFBWSxDQUFDO0lBQzNCLEtBQUssRUFBRSxHQUFHO0lBQ1YsR0FBRyxFQUFFLEdBQUcsR0FBRztFQUNiLEFBQUEsZUFBZSxDQUFDLFVBQVUsQ0FBQztJQUN6QixHQUFHLEVBQUUsQ0FBQztJQUNOLEtBQUssRUFBRSxDQUFDO0lBQ1IsS0FBSyxFQUFFLElBQUk7SUFDWCxNQUFNLEVBQUUsSUFBSTtJQUNaLFdBQVcsRUFBRSxJQUFJO0lBQ2pCLFVBQVUsRUFBRSxrQkFBa0I7SUFDOUIsUUFBUSxFQUFFLEtBQUs7SUFDZixVQUFVLEVBQUUsTUFBTTtJQUNsQixPQUFPLEVBQUUsQ0FBQyxHQUFHOztBQUVqQixNQUFNLENBQUMsR0FBRyxNQUFNLFNBQVMsRUFBRSxLQUFLO0VBN0toQyxBQUFBLFVBQVUsQ0E4S0c7SUFDVCxpQkFBaUIsRUFBRSxXQUFXO0lBQzlCLFNBQVMsRUFBRSxXQUFXLEdBQUc7RUE1STdCLEFBQUEsZUFBZSxDQTZJRztJQUNkLHdCQUF3QixFQUFFLENBQUM7SUFDM0IsZ0JBQWdCLEVBQUUsQ0FBQyxHQUFHO0VBdEkxQixBQUFBLGdCQUFnQixDQXVJRztJQUNmLHdCQUF3QixFQUFFLElBQUk7SUFDOUIsZ0JBQWdCLEVBQUUsSUFBSSxHQUFHO0VBclU3QixBQUFBLGNBQWMsQ0FzVUc7SUFDYixZQUFZLEVBQUUsR0FBRztJQUNqQixhQUFhLEVBQUUsR0FBRyxHQUFHOztBQ2pXekI7Ozs7Ozs7R0FPRztBQWtCSDs7Ozs7OztHQU9HO0FBV0g7Ozs7Ozs7R0FPRztBQWlCSDs7Ozs7O0dBTUc7QUFXSDs7Ozs7OztHQU9HO0FBYUg7Ozs7OztHQU1HO0FoQjVGSDs7R0FFRztBQUdIOztHQUVHO0FpQnpCSDs7Ozs7O0dBTUc7QUFFSCxBQUFBLENBQUM7QUFDRCxDQUFDLEFBQUEsUUFBUTtBQUNULENBQUMsQUFBQSxPQUFPLENBQUM7RUFDUixNQUFNLEVBQUUsQ0FBQztFQUNULE9BQU8sRUFBRSxDQUFDO0VBQ1YsVUFBVSxFQUFFLE9BQU87RUFBRSxPQUFPLEVBQzVCOztBQUdEOzs7O0dBSUc7QVhYSCxBQUFBLElBQUksQ1dhQztFQUNKLE1BQU0sRUFBRSxLQUFLO0VBQ2IsU0FBUyxFQUFFLEtBQUs7RUFBRSxPQUFPO0VBQ3pCLFVBQVUsRUFBRSxVQUFVLEdBQ3RCOztBQUdEOzs7Ozs7R0FNRztBWGRILEFBQUEsSUFBSSxDV2dCQztFRGdCSCxTQUFTLEVkcENMLElBQUk7RWNxQ1IsU0FBUyxFRjVCRixNQUF5QjtFRWlDaEMsV0FBVyxFQUFFLEdBQW1DO0VDcEJqRCxVQUFVLEVBQUUsS0FBSztFQUNqQixnQkFBZ0IsRWRuQ1IsS0FBb0I7RWNvQzVCLEtBQUssRWRWRyxPQUFxQjtFY1c3QixXQUFXLEVmdENBLFFBQVE7RWV1Q25CLGNBQWMsRUFBRSxLQUFLO0VBQ3JCLGNBQWMsRUFBRSxrQkFBa0I7RUFDbEMsdUJBQXVCLEVBQUUsU0FBUztFQUFFLE9BQU87RUFDM0Msc0JBQXNCLEVBQUUsV0FBVztFQUFFLE9BQU8sRUFDNUM7O0FDaEREOzs7O0dBSUc7QVp1RUgsQUFBQSxDQUFDLENZckVDO0VBQ0QsS0FBSyxFQUFFLE9BQU87RUFDZCxlQUFlLEVBQUUsSUFBSSxHQUNyQjs7QUFHRDs7R0FFRztBQUVILEFBQUEsTUFBTSxDQUFDO0VBQ04sTUFBTSxFQUFFLENBQUM7RUFDVCxhQUFhLEVBQUUsQ0FBQztFQUFFLE9BQU87RUFDekIsT0FBTyxFQUFFLElBQUk7RUFDYixVQUFVLEVBQUUsSUFBSTtFQUNoQixNQUFNLEVBQUUsT0FBTyxHQUNmOztBWjhNRCxBQUFBLFFBQVEsQ1k1TUM7RUFDUixNQUFNLEVBQUUsQ0FBQztFQUNULE9BQU8sRUFBRSxDQUFDO0VBQ1YsTUFBTSxFQUFFLENBQUMsR0FDVDs7QUFFRCxBQUFBLE1BQU0sQ0FBQztFQUNOLE1BQU0sRUFBRSxDQUFDLEdBQ1Q7O0FBRUQsQUFBQSxFQUFFO0FBQ0YsRUFBRTtBQUNGLEVBQUU7QUFDRixFQUFFO0FBQ0YsRUFBRTtBQUNGLEVBQUUsQ0FBQztFQUNGLE1BQU0sRUFBRSxDQUFDO0VBQ1QsT0FBTyxFQUFFLENBQUM7RUFDVixTQUFTLEVBQUUsT0FBTztFQUNsQixXQUFXLEVBQUUsT0FBTyxHQUNwQjs7QVpRRCxBQUFBLEVBQUUsQ1lOQztFQUNGLE1BQU0sRUFBRSxDQUFDO0VBQ1QsT0FBTyxFQUFFLENBQUMsR0FDVjs7QUFHRDs7R0FFRztBWjZGSCxBQUFBLEdBQUcsQ1kzRkM7RUFDSCxTQUFTLEVBQUUsSUFBSTtFQUNmLE1BQU0sRUFBRSxJQUFJO0VBQ1osY0FBYyxFQUFFLE1BQU07RUFBRSxPQUFPLEVBQy9COztBQUdEOztHQUVHO0FBRUgsQUFBQSxLQUFLO0FBQ0wsTUFBTTtBQUNOLFFBQVEsQ0FBQztFQUNSLFNBQVMsRUFBRSxJQUFJO0VBQ2YsTUFBTSxFQUFFLENBQUM7RUFDVCxhQUFhLEVBQUUsQ0FBQztFQUNoQixPQUFPLEVBQUUsSUFBSTtFQUNiLFVBQVUsRUFBRSxJQUFJO0VBQUUsT0FBTyxFQUN6Qjs7QUFHRDs7O0dBR0c7QVptTEgsQUFBQSxRQUFRLENZakxDO0VBQ1IsTUFBTSxFQUFFLFFBQVEsR0FDaEI7O0FBRUQsQUFBQSxFQUFFO0FBQ0YsRUFBRSxDQUFDO0VBQ0YsTUFBTSxFQUFFLENBQUM7RUFDVCxPQUFPLEVBQUUsQ0FBQztFQUNWLGVBQWUsRUFBRSxJQUFJLEdBQ3JCOztBQUVELEFBQUEsQ0FBQyxDQUFDO0VBQ0QsTUFBTSxFQUFFLENBQUMsR0FDVDs7QUFHRDs7R0FFRztBQUVILEFBQUEsS0FBSyxDQUFDO0VBQ0wsU0FBUyxFQUFFLElBQUk7RUFDZixlQUFlLEVBQUUsUUFBUTtFQUFFLE9BQU8sRUFDbEM7O0FBRUQsQUFBQSxNQUFNLENBQUM7RUFDTixXQUFXLEVBQUUsR0FBRyxHQUNoQjs7QWxCaEZEOztHQUVHO0FtQmhDSCxBQUFBLFdBQVcsQ0FBQztFQUNYLFFBQVEsRUFBRSxRQUFRLEdBY2xCO0VBZkQsQUFHQyxXQUhVLEFBR1QsTUFBTSxDQUFDO0lBQ1AsT0FBTyxFQUFFLElBQUk7SUFDYixRQUFRLEVBQUUsUUFBUTtJQUNsQixPQUFPLEVBQUUsRUFBRTtJQUNYLE9BQU8sRUFBRSxDQUFDO0lBQ1YsaUJBQWlCLEVBQUUsU0FBUyxHQUM1QjtFQVRGLEFBV0MsV0FYVSxDQVdWLENBQUMsQ0FBQztJQUNELFFBQVEsRUFBRSxRQUFRO0lBQ2xCLE9BQU8sRUFBRSxDQUFDLEdBQ1Y7O0FBR0YsQUFDQyxvQkFEbUIsQUFDbEIsTUFBTSxDQUFDO0VBQ1AsS0FBSyxFQUFFLEtBQUs7RUFDWixNQUFNLEVBQUUsS0FBSztFQUNiLFVBQVUsRUFBRSxpQ0FBbUMsR0FDL0M7O0FBR0YsQUFDQyx1QkFEc0IsQUFDckIsTUFBTSxDQUFDO0VBQ1AsS0FBSyxFQUFFLEtBQUs7RUFDWixNQUFNLEVBQUUsS0FBSztFQUNiLFVBQVUsRUFBRSxpQ0FBbUMsR0FDL0M7O0FBR0YsQUFDQyxtQkFEa0IsQUFDakIsTUFBTSxDQUFDO0VBQ1AsS0FBSyxFQUFFLEtBQUs7RUFDWixNQUFNLEVBQUUsS0FBSztFQUNiLFVBQVUsRUFBRSxpQ0FBbUMsR0FDL0M7O0FBR0YsQUFDQyx1QkFEc0IsQUFDckIsTUFBTSxDQUFDO0VBQ1AsS0FBSyxFQUFFLElBQUk7RUFDWCxNQUFNLEVBQUUsSUFBSTtFQUNaLFVBQVUsRUFBRSxpQ0FBbUMsR0FDL0M7O0FBR0YsQUFDQyxrQkFEaUIsQUFDaEIsTUFBTSxDQUFDO0VBQ1AsS0FBSyxFQUFFLElBQUk7RUFDWCxNQUFNLEVBQUUsSUFBSTtFQUNaLFVBQVUsRUFBRSxpQ0FBbUMsR0FDL0M7O0FBR0YsQUFDQyxrQkFEaUIsQUFDaEIsTUFBTSxDQUFDO0VBQ1AsS0FBSyxFQUFFLEtBQUs7RUFDWixNQUFNLEVBQUUsS0FBSztFQUNiLFVBQVUsRUFBRSxpQ0FBbUMsR0FDL0M7O0FBR0YsQUFDQyxtQkFEa0IsQUFDakIsTUFBTSxDQUFDO0VBQ1AsS0FBSyxFQUFFLEtBQUs7RUFDWixNQUFNLEVBQUUsS0FBSztFQUNiLFVBQVUsRUFBRSxpQ0FBbUMsR0FDL0M7O0FBR0YsQUFDQyxrQkFEaUIsQUFDaEIsTUFBTSxDQUFDO0VBQ1AsS0FBSyxFQUFFLElBQUk7RUFDWCxNQUFNLEVBQUUsS0FBSztFQUNiLFVBQVUsRUFBRSxpQ0FBbUMsR0FDL0M7O0FBR0YsQUFDQyxzQkFEcUIsQUFDcEIsTUFBTSxDQUFDO0VBQ1AsS0FBSyxFQUFFLEtBQUs7RUFDWixNQUFNLEVBQUUsS0FBSztFQUNiLFVBQVUsRUFBRSxpQ0FBbUMsR0FDL0M7O0FDdEZGOztHQUVHO0FvRG9DSCxBcERsQ0EsZ0JvRGtDZ0IsQ0F3R2YsK0JBQStCLEdBSTVCLENBQUMsRUc5SEwsOEJBQThCLENBYTdCLGlCQUFpQixHQVdkLENBQUMsRUFnVUwsNkJBQTZCLENBd0Y1QixPQUFPLEVJL2JSLFdBQVcsQ0FjVixDQUFDO0FBYkYsb0JBQW9CLENBYW5CLENBQUM7QTNEZEYsT0FBTyxDQUFDO0VKaUROLFNBQVMsRUloREksSUFBSTtFSmlEakIsU0FBUyxFRjVCRixNQUF5QjtFRWlDaEMsV0FBVyxFQUFFLFNBQW1DO0VJckRqRCxPQUFPLEVBQUUsV0FBVztFQUNwQixNQUFNLEVBQUUsSUFBSTtFQUNaLE9BQU8sRUFBRSxTQUFTO0VBQ2xCLGFBQWEsRUFBRSxHQUFHO0VBQ2xCLFVBQVUsRUFBRSxjQUFjO0VBQzFCLE1BQU0sRUFBRSxPQUFPO0VBQ2YsY0FBYyxFQUFFLE1BQU07RUFDdEIsV0FBVyxFQUFFLEdBQUcsR0FLaEI7RW9EbUJELEFwRHRCQyxnQm9Ec0JlLENBd0dmLCtCQUErQixHQUk1QixDQUFDLEFwRGxJSCxNQUFNLEV1RElSLDhCQUE4QixDQWE3QixpQkFBaUIsR0FXZCxDQUFDLEF2RDVCSCxNQUFNLEV1RDRWUiw2QkFBNkIsQ0F3RjVCLE9BQU8sQXZEcGJOLE1BQU0sRTJEWFIsV0FBVyxDQWNWLENBQUMsQTNESEEsTUFBTTtFMkRWUixvQkFBb0IsQ0FhbkIsQ0FBQyxBM0RIQSxNQUFNO0VBWFIsT0FBTyxBQVdMLE1BQU0sQ0FBQztJQUNQLGFBQWEsRUFBRSxpQkFBaUIsR0FDaEM7O0FBSUY7O0dBRUc7QW1EeEJILEFuRDBCQSxZbUQxQlksQ0FRWCxPQUFPLEVDOEJSLGdCQUFnQixDQXdHZiwrQkFBK0IsR0FJNUIsQ0FBQyxFRzBOTCw2QkFBNkIsQ0F3RjVCLE9BQU8sRUN6WlIsK0JBQStCLEVDcUQvQiw4QkFBOEIsQ0FBQyxJQUFJLENBbUZsQyxPQUFPLEVHbkxSLDBCQUEwQixDQWF6QixtQkFBbUI7QTVEY3BCLGFBQWEsQ0FBQztFQUNiLGdCQUFnQixFakJQUixPQUEyQjtFaUJRbkMsTUFBTSxFQUFFLEdBQUcsQ0FBQyxLQUFLLENqQlJULE9BQTJCO0VpQlNuQyxLQUFLLEVqQnhCRyxLQUFvQixHaUJ5QjVCOztBQUdEOztHQUVHO0F1RGhCSCxBdkRrQkEsOEJ1RGxCOEIsQ0FhN0IsaUJBQWlCLEdBV2QsQ0FBQyxFSXZDTCxXQUFXLENBY1YsQ0FBQztBQWJGLG9CQUFvQixDQWFuQixDQUFDO0EzRG9CRixvQkFBb0IsQ0FBQztFQUNwQixnQkFBZ0IsRWpCbENSLEtBQW9CO0VpQm1DNUIsTUFBTSxFQUFFLEdBQUcsQ0FBQyxLQUFLLENqQlBULE9BQXFCO0VpQlE3QixLQUFLLEVqQlJHLE9BQXFCO0VpQlM3QixPQUFPLEVBQUUsR0FBRyxHQUNaOztBQUVEOztHQUVHO0FBRUgsQUFBQSxvQkFBb0IsQ0FBQztFQUNwQixnQkFBZ0IsRWpCN0NSLEtBQW9CO0VpQjhDNUIsTUFBTSxFQUFFLEdBQUcsQ0FBQyxLQUFLLENqQi9CVCxPQUEyQjtFaUJnQ25DLEtBQUssRWpCaENHLE9BQTJCLEdpQmlDbkM7O0FBR0Q7O0dBRUc7QUFFSCxBQUFBLHFCQUFxQixDQUFDO0VBQ3JCLGdCQUFnQixFakJ6Q1IsT0FBMkI7RWlCMENuQyxNQUFNLEVBQUUsR0FBRyxDQUFDLEtBQUssQ2pCekRULEtBQW9CO0VpQjBENUIsS0FBSyxFakIxREcsS0FBb0IsR2lCMkQ1Qjs7QUFHRDs7R0FFRztBQUVILEFBQUEsWUFBWSxDQUFDO0VBQ1osZUFBZSxFQUFFLE1BQU07RUFDdkIsU0FBUyxFQUFFLEtBQUs7RUFDaEIsTUFBTSxFQUFFLElBQUk7RUFDWixPQUFPLEVBQUUsSUFBSTtFQUNiLGdCQUFnQixFakJ2RVIsS0FBb0I7RWlCd0U1QixNQUFNLEVBQUUsR0FBRyxDQUFDLEtBQUssQ2pCeEVULEtBQW9CO0VpQnlFNUIsS0FBSyxFakIxREcsT0FBMkIsR2lCMEVuQztFQXZCRCxBQVNDLFlBVFcsQ0FTWCxHQUFHLENBQUM7SUFDSCxLQUFLLEVBQUUsSUFBSTtJQUNYLE1BQU0sRUFBRSxJQUFJO0lBQ1osV0FBVyxFQUFFLElBQUk7SUFDakIsS0FBSyxFakJoRUUsT0FBMkI7SWlCaUVsQyxVQUFVLEVBQUUsY0FBYyxHQUMxQjtFQWZGLEFBa0JFLFlBbEJVLEFBaUJWLE1BQU0sQ0FDTixHQUFHLENBQUM7SUFDSCxXQUFXLEVBQUUsSUFBSTtJQUNqQixZQUFZLEVBQUUsS0FBSyxHQUNuQjs7QUM3Rkg7O0dBRUc7QUFFSCxBQUFBLFVBQVUsQ0FBQztFTFFSLFNBQVMsRUFBRSxtQkFBK0I7RUFDMUMsT0FBTyxFQUFFLENBQUMsQ1hDRixJQUFJO0VXR2IsS0FBSyxFQUFFLElBQUk7RUFDWCxNQUFNLEVBQUUsTUFBTSxHS1pmOztBQ05EOzs7O0dBSUc7QUFFSCxBQUFBLG1CQUFtQixDQUFDO0VBQ25CLFFBQVEsRUFBRSxRQUFRO0VBQ2xCLFVBQVUsRUFBRSxLQUFLO0VBQ2pCLFFBQVEsRUFBRSxNQUFNLEdBQ2hCOztBQ1ZEOzs7Ozs7Ozs7Ozs7R0FZRztBQUVIOzs7O0dBSUc7QUFFSCxBQUFBLEtBQUssQ0FBQztFQUNMLE9BQU8sRUFBRSxJQUFJLEdBQ2I7O0FBRUQsQUFBQSxVQUFVLENBQUM7RUFDVixTQUFTLEVBQUUsSUFBSSxHQUNmOztBQUdEOztHQUVHO0FBRUgsQUFBQSxJQUFJLENBQUM7RUFDSixPQUFPLEVBQUUsSUFBSTtFQUNiLElBQUksRUFBRSxRQUFRO0VBQ2QsU0FBUyxFQUFFLFFBQVE7RUFDbkIsTUFBTSxFQUFFLE9BQW1CLEdBQzNCOztBQUdEOztHQUVHO0FBRUgsQUFBQSxJQUFJLENBQUM7RUFDSixJQUFJLEVBQUUsQ0FBQyxHQUNQOztBQWNFOztNQUVHO0FBRUgsQUFBQSxTQUFTLENBQVU7RUFDbEIsSUFBSSxFQUFFLFFBQVE7RUFDZCxLQUFLLEVUMUJBLFFBQTRCO0VTMkJqQyxPQUFPLEVBQUUsQ0FBQyxDQUFDLElBQWEsR0FDeEI7O0FBUUE7O09BRUc7QUFFSCxBQUFBLFlBQVksQ0FBVTtFQUNyQixXQUFXLEVUekNQLFFBQTRCLEdTMENoQzs7QUF0QkY7O01BRUc7QUFFSCxBQUFBLFNBQVMsQ0FBVTtFQUNsQixJQUFJLEVBQUUsUUFBUTtFQUNkLEtBQUssRVQxQkEsU0FBNEI7RVMyQmpDLE9BQU8sRUFBRSxDQUFDLENBQUMsSUFBYSxHQUN4Qjs7QUFRQTs7T0FFRztBQUVILEFBQUEsWUFBWSxDQUFVO0VBQ3JCLFdBQVcsRVR6Q1AsU0FBNEIsR1MwQ2hDOztBQXRCRjs7TUFFRztBQUVILEFBQUEsU0FBUyxDQUFVO0VBQ2xCLElBQUksRUFBRSxRQUFRO0VBQ2QsS0FBSyxFVDFCQSxHQUE0QjtFUzJCakMsT0FBTyxFQUFFLENBQUMsQ0FBQyxJQUFhLEdBQ3hCOztBQVFBOztPQUVHO0FBRUgsQUFBQSxZQUFZLENBQVU7RUFDckIsV0FBVyxFVHpDUCxHQUE0QixHUzBDaEM7O0FBdEJGOztNQUVHO0FBRUgsQUFBQSxTQUFTLENBQVU7RUFDbEIsSUFBSSxFQUFFLFFBQVE7RUFDZCxLQUFLLEVUMUJBLFNBQTRCO0VTMkJqQyxPQUFPLEVBQUUsQ0FBQyxDQUFDLElBQWEsR0FDeEI7O0FBUUE7O09BRUc7QUFFSCxBQUFBLFlBQVksQ0FBVTtFQUNyQixXQUFXLEVUekNQLFNBQTRCLEdTMENoQzs7QUF0QkY7O01BRUc7QUFFSCxBQUFBLFNBQVMsQ0FBVTtFQUNsQixJQUFJLEVBQUUsUUFBUTtFQUNkLEtBQUssRVQxQkEsU0FBNEI7RVMyQmpDLE9BQU8sRUFBRSxDQUFDLENBQUMsSUFBYSxHQUN4Qjs7QUFRQTs7T0FFRztBQUVILEFBQUEsWUFBWSxDQUFVO0VBQ3JCLFdBQVcsRVR6Q1AsU0FBNEIsR1MwQ2hDOztBQXRCRjs7TUFFRztBQUVILEFBQUEsU0FBUyxDQUFVO0VBQ2xCLElBQUksRUFBRSxRQUFRO0VBQ2QsS0FBSyxFVDFCQSxHQUE0QjtFUzJCakMsT0FBTyxFQUFFLENBQUMsQ0FBQyxJQUFhLEdBQ3hCOztBQVFBOztPQUVHO0FBRUgsQUFBQSxZQUFZLENBQVU7RUFDckIsV0FBVyxFVHpDUCxHQUE0QixHUzBDaEM7O0FBdEJGOztNQUVHO0FBRUgsQUFBQSxTQUFTLENBQVU7RUFDbEIsSUFBSSxFQUFFLFFBQVE7RUFDZCxLQUFLLEVUMUJBLFNBQTRCO0VTMkJqQyxPQUFPLEVBQUUsQ0FBQyxDQUFDLElBQWEsR0FDeEI7O0FBUUE7O09BRUc7QUFFSCxBQUFBLFlBQVksQ0FBVTtFQUNyQixXQUFXLEVUekNQLFNBQTRCLEdTMENoQzs7QUF0QkY7O01BRUc7QUFFSCxBQUFBLFNBQVMsQ0FBVTtFQUNsQixJQUFJLEVBQUUsUUFBUTtFQUNkLEtBQUssRVQxQkEsU0FBNEI7RVMyQmpDLE9BQU8sRUFBRSxDQUFDLENBQUMsSUFBYSxHQUN4Qjs7QUFRQTs7T0FFRztBQUVILEFBQUEsWUFBWSxDQUFVO0VBQ3JCLFdBQVcsRVR6Q1AsU0FBNEIsR1MwQ2hDOztBQXRCRjs7TUFFRztBQUVILEFBQUEsU0FBUyxDQUFVO0VBQ2xCLElBQUksRUFBRSxRQUFRO0VBQ2QsS0FBSyxFVDFCQSxHQUE0QjtFUzJCakMsT0FBTyxFQUFFLENBQUMsQ0FBQyxJQUFhLEdBQ3hCOztBQVFBOztPQUVHO0FBRUgsQUFBQSxZQUFZLENBQVU7RUFDckIsV0FBVyxFVHpDUCxHQUE0QixHUzBDaEM7O0FBdEJGOztNQUVHO0FBRUgsQUFBQSxVQUFVLENBQVM7RUFDbEIsSUFBSSxFQUFFLFFBQVE7RUFDZCxLQUFLLEVUMUJBLFNBQTRCO0VTMkJqQyxPQUFPLEVBQUUsQ0FBQyxDQUFDLElBQWEsR0FDeEI7O0FBUUE7O09BRUc7QUFFSCxBQUFBLGFBQWEsQ0FBUztFQUNyQixXQUFXLEVUekNQLFNBQTRCLEdTMENoQzs7QUF0QkY7O01BRUc7QUFFSCxBQUFBLFVBQVUsQ0FBUztFQUNsQixJQUFJLEVBQUUsUUFBUTtFQUNkLEtBQUssRVQxQkEsU0FBNEI7RVMyQmpDLE9BQU8sRUFBRSxDQUFDLENBQUMsSUFBYSxHQUN4Qjs7QUFRQTs7T0FFRztBQUVILEFBQUEsYUFBYSxDQUFTO0VBQ3JCLFdBQVcsRVR6Q1AsU0FBNEIsR1MwQ2hDOztBQXRCRjs7TUFFRztBQUVILEFBQUEsVUFBVSxDQUFTO0VBQ2xCLElBQUksRUFBRSxRQUFRO0VBQ2QsS0FBSyxFVDFCQSxJQUE0QjtFUzJCakMsT0FBTyxFQUFFLENBQUMsQ0FBQyxJQUFhLEdBQ3hCOztBQXNCRDs7TUFFRztBQUVILEFBQUEsaUJBQWlCLENBQVE7RUFDeEIsV0FBVyxFQVBHLE9BQU8sR0FRckI7O0FBTkQ7O01BRUc7QUFFSCxBQUFBLGdCQUFnQixDQUFTO0VBQ3hCLFdBQVcsRUFQWSxNQUFNLEdBUTdCOztBQU5EOztNQUVHO0FBRUgsQUFBQSxvQkFBb0IsQ0FBSztFQUN4QixXQUFXLEVBUG9CLFVBQVUsR0FRekM7O0FBTkQ7O01BRUc7QUFFSCxBQUFBLGtCQUFrQixDQUFPO0VBQ3hCLFdBQVcsRUFQZ0MsUUFBUSxHQVFuRDs7QUFORDs7TUFFRztBQUVILEFBQUEsa0JBQWtCLENBQU87RUFDeEIsV0FBVyxFQVAwQyxRQUFRLEdBUTdEOztBQU9EOztNQUVHO0FBRUgsQUFBQSxpQkFBaUIsQ0FBVTtFQUMxQixlQUFlLEVBUEQsS0FBSyxHQVFuQjs7QUFORDs7TUFFRztBQUVILEFBQUEsa0JBQWtCLENBQVM7RUFDMUIsZUFBZSxFQVBNLE1BQU0sR0FRM0I7O0FBTkQ7O01BRUc7QUFFSCxBQUFBLHlCQUF5QixDQUFFO0VBQzFCLGVBQWUsRUFQYyxhQUFhLEdBUTFDOztBQU5EOztNQUVHO0FBRUgsQUFBQSx3QkFBd0IsQ0FBRztFQUMxQixlQUFlLEVBUDZCLFlBQVksR0FReEQ7O0FBTkQ7O01BRUc7QUFFSCxBQUFBLHdCQUF3QixDQUFHO0VBQzFCLGVBQWUsRUFQMkMsWUFBWSxHQVF0RTs7QUFPRDs7TUFFRztBQUVILEFBQUEsY0FBYyxDQUFlO0VBQzVCLFlBQXFCLEVBQVUsQ0FBQyxHQUNoQzs7QUFORDs7TUFFRztBQUVILEFBQUEsZUFBZSxDQUFjO0VBQzVCLGFBQXFCLEVBQVUsQ0FBQyxHQUNoQzs7QUFJRjs7S0FFRztBQUVILEFBQUEsU0FBUyxDQUFNO0VBQ2QsS0FBSyxFQUFFLEVBQUUsR0FDVDs7QUFHRDs7S0FFRztBQUVILEFBQUEsUUFBUSxDQUFNO0VBQ2IsS0FBSyxFQUFFLENBQUMsR0FDUjs7QUFHRDs7S0FFRztBQUVILEFBQUEsV0FBVyxDQUFNO0VBQ2hCLGNBQWMsRUFBRSxXQUFXLEdBQzNCOztBUExELE1BQU0sTUFBTSxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7RU9yRnZDOztNQUVHO0VBRUgsQUFBQSxTQUFTLENBQVU7SUFDbEIsSUFBSSxFQUFFLFFBQVE7SUFDZCxLQUFLLEVUMUJBLFFBQTRCO0lTMkJqQyxPQUFPLEVBQUUsQ0FBQyxDQUFDLElBQWEsR0FDeEI7RUFRQTs7T0FFRztFQUVILEFBQUEsWUFBWSxDQUFVO0lBQ3JCLFdBQVcsRVR6Q1AsUUFBNEIsR1MwQ2hDO0VBdEJGOztNQUVHO0VBRUgsQUFBQSxTQUFTLENBQVU7SUFDbEIsSUFBSSxFQUFFLFFBQVE7SUFDZCxLQUFLLEVUMUJBLFNBQTRCO0lTMkJqQyxPQUFPLEVBQUUsQ0FBQyxDQUFDLElBQWEsR0FDeEI7RUFRQTs7T0FFRztFQUVILEFBQUEsWUFBWSxDQUFVO0lBQ3JCLFdBQVcsRVR6Q1AsU0FBNEIsR1MwQ2hDO0VBdEJGOztNQUVHO0VBRUgsQUFBQSxTQUFTLENBQVU7SUFDbEIsSUFBSSxFQUFFLFFBQVE7SUFDZCxLQUFLLEVUMUJBLEdBQTRCO0lTMkJqQyxPQUFPLEVBQUUsQ0FBQyxDQUFDLElBQWEsR0FDeEI7RUFRQTs7T0FFRztFQUVILEFBQUEsWUFBWSxDQUFVO0lBQ3JCLFdBQVcsRVR6Q1AsR0FBNEIsR1MwQ2hDO0VBdEJGOztNQUVHO0VBRUgsQUFBQSxTQUFTLENBQVU7SUFDbEIsSUFBSSxFQUFFLFFBQVE7SUFDZCxLQUFLLEVUMUJBLFNBQTRCO0lTMkJqQyxPQUFPLEVBQUUsQ0FBQyxDQUFDLElBQWEsR0FDeEI7RUFRQTs7T0FFRztFQUVILEFBQUEsWUFBWSxDQUFVO0lBQ3JCLFdBQVcsRVR6Q1AsU0FBNEIsR1MwQ2hDO0VBdEJGOztNQUVHO0VBRUgsQUFBQSxTQUFTLENBQVU7SUFDbEIsSUFBSSxFQUFFLFFBQVE7SUFDZCxLQUFLLEVUMUJBLFNBQTRCO0lTMkJqQyxPQUFPLEVBQUUsQ0FBQyxDQUFDLElBQWEsR0FDeEI7RUFRQTs7T0FFRztFQUVILEFBQUEsWUFBWSxDQUFVO0lBQ3JCLFdBQVcsRVR6Q1AsU0FBNEIsR1MwQ2hDO0VBdEJGOztNQUVHO0VBRUgsQUFBQSxTQUFTLENBQVU7SUFDbEIsSUFBSSxFQUFFLFFBQVE7SUFDZCxLQUFLLEVUMUJBLEdBQTRCO0lTMkJqQyxPQUFPLEVBQUUsQ0FBQyxDQUFDLElBQWEsR0FDeEI7RUFRQTs7T0FFRztFQUVILEFBQUEsWUFBWSxDQUFVO0lBQ3JCLFdBQVcsRVR6Q1AsR0FBNEIsR1MwQ2hDO0VBdEJGOztNQUVHO0VBRUgsQUFBQSxTQUFTLENBQVU7SUFDbEIsSUFBSSxFQUFFLFFBQVE7SUFDZCxLQUFLLEVUMUJBLFNBQTRCO0lTMkJqQyxPQUFPLEVBQUUsQ0FBQyxDQUFDLElBQWEsR0FDeEI7RUFRQTs7T0FFRztFQUVILEFBQUEsWUFBWSxDQUFVO0lBQ3JCLFdBQVcsRVR6Q1AsU0FBNEIsR1MwQ2hDO0VBdEJGOztNQUVHO0VBRUgsQUFBQSxTQUFTLENBQVU7SUFDbEIsSUFBSSxFQUFFLFFBQVE7SUFDZCxLQUFLLEVUMUJBLFNBQTRCO0lTMkJqQyxPQUFPLEVBQUUsQ0FBQyxDQUFDLElBQWEsR0FDeEI7RUFRQTs7T0FFRztFQUVILEFBQUEsWUFBWSxDQUFVO0lBQ3JCLFdBQVcsRVR6Q1AsU0FBNEIsR1MwQ2hDO0VBdEJGOztNQUVHO0VBRUgsQUFBQSxTQUFTLENBQVU7SUFDbEIsSUFBSSxFQUFFLFFBQVE7SUFDZCxLQUFLLEVUMUJBLEdBQTRCO0lTMkJqQyxPQUFPLEVBQUUsQ0FBQyxDQUFDLElBQWEsR0FDeEI7RUFRQTs7T0FFRztFQUVILEFBQUEsWUFBWSxDQUFVO0lBQ3JCLFdBQVcsRVR6Q1AsR0FBNEIsR1MwQ2hDO0VBdEJGOztNQUVHO0VBRUgsQUFBQSxVQUFVLENBQVM7SUFDbEIsSUFBSSxFQUFFLFFBQVE7SUFDZCxLQUFLLEVUMUJBLFNBQTRCO0lTMkJqQyxPQUFPLEVBQUUsQ0FBQyxDQUFDLElBQWEsR0FDeEI7RUFRQTs7T0FFRztFQUVILEFBQUEsYUFBYSxDQUFTO0lBQ3JCLFdBQVcsRVR6Q1AsU0FBNEIsR1MwQ2hDO0VBdEJGOztNQUVHO0VBRUgsQUFBQSxVQUFVLENBQVM7SUFDbEIsSUFBSSxFQUFFLFFBQVE7SUFDZCxLQUFLLEVUMUJBLFNBQTRCO0lTMkJqQyxPQUFPLEVBQUUsQ0FBQyxDQUFDLElBQWEsR0FDeEI7RUFRQTs7T0FFRztFQUVILEFBQUEsYUFBYSxDQUFTO0lBQ3JCLFdBQVcsRVR6Q1AsU0FBNEIsR1MwQ2hDO0VBdEJGOztNQUVHO0VBRUgsQUFBQSxVQUFVLENBQVM7SUFDbEIsSUFBSSxFQUFFLFFBQVE7SUFDZCxLQUFLLEVUMUJBLElBQTRCO0lTMkJqQyxPQUFPLEVBQUUsQ0FBQyxDQUFDLElBQWEsR0FDeEI7RUFzQkQ7O01BRUc7RUFFSCxBQUFBLGlCQUFpQixDQUFRO0lBQ3hCLFdBQVcsRUFQRyxPQUFPLEdBUXJCO0VBTkQ7O01BRUc7RUFFSCxBQUFBLGdCQUFnQixDQUFTO0lBQ3hCLFdBQVcsRUFQWSxNQUFNLEdBUTdCO0VBTkQ7O01BRUc7RUFFSCxBQUFBLG9CQUFvQixDQUFLO0lBQ3hCLFdBQVcsRUFQb0IsVUFBVSxHQVF6QztFQU5EOztNQUVHO0VBRUgsQUFBQSxrQkFBa0IsQ0FBTztJQUN4QixXQUFXLEVBUGdDLFFBQVEsR0FRbkQ7RUFORDs7TUFFRztFQUVILEFBQUEsa0JBQWtCLENBQU87SUFDeEIsV0FBVyxFQVAwQyxRQUFRLEdBUTdEO0VBT0Q7O01BRUc7RUFFSCxBQUFBLGlCQUFpQixDQUFVO0lBQzFCLGVBQWUsRUFQRCxLQUFLLEdBUW5CO0VBTkQ7O01BRUc7RUFFSCxBQUFBLGtCQUFrQixDQUFTO0lBQzFCLGVBQWUsRUFQTSxNQUFNLEdBUTNCO0VBTkQ7O01BRUc7RUFFSCxBQUFBLHlCQUF5QixDQUFFO0lBQzFCLGVBQWUsRUFQYyxhQUFhLEdBUTFDO0VBTkQ7O01BRUc7RUFFSCxBQUFBLHdCQUF3QixDQUFHO0lBQzFCLGVBQWUsRUFQNkIsWUFBWSxHQVF4RDtFQU5EOztNQUVHO0VBRUgsQUFBQSx3QkFBd0IsQ0FBRztJQUMxQixlQUFlLEVBUDJDLFlBQVksR0FRdEU7RUFPRDs7TUFFRztFQUVILEFBQUEsY0FBYyxDQUFlO0lBQzVCLFlBQXFCLEVBQVUsQ0FBQyxHQUNoQztFQU5EOztNQUVHO0VBRUgsQUFBQSxlQUFlLENBQWM7SUFDNUIsYUFBcUIsRUFBVSxDQUFDLEdBQ2hDO0VBSUY7O0tBRUc7RUFFSCxBQUFBLFNBQVMsQ0FBTTtJQUNkLEtBQUssRUFBRSxFQUFFLEdBQ1Q7RUFHRDs7S0FFRztFQUVILEFBQUEsUUFBUSxDQUFNO0lBQ2IsS0FBSyxFQUFFLENBQUMsR0FDUjtFQUdEOztLQUVHO0VBRUgsQUFBQSxXQUFXLENBQU07SUFDaEIsY0FBYyxFQUFFLFdBQVcsR0FDM0I7O0FQckJELE1BQU0sTUFBTSxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7RU9yRXZDOztNQUVHO0VBRUgsQUFBQSxTQUFTLENBQVU7SUFDbEIsSUFBSSxFQUFFLFFBQVE7SUFDZCxLQUFLLEVUMUJBLFFBQTRCO0lTMkJqQyxPQUFPLEVBQUUsQ0FBQyxDQUFDLElBQWEsR0FDeEI7RUFRQTs7T0FFRztFQUVILEFBQUEsWUFBWSxDQUFVO0lBQ3JCLFdBQVcsRVR6Q1AsUUFBNEIsR1MwQ2hDO0VBdEJGOztNQUVHO0VBRUgsQUFBQSxTQUFTLENBQVU7SUFDbEIsSUFBSSxFQUFFLFFBQVE7SUFDZCxLQUFLLEVUMUJBLFNBQTRCO0lTMkJqQyxPQUFPLEVBQUUsQ0FBQyxDQUFDLElBQWEsR0FDeEI7RUFRQTs7T0FFRztFQUVILEFBQUEsWUFBWSxDQUFVO0lBQ3JCLFdBQVcsRVR6Q1AsU0FBNEIsR1MwQ2hDO0VBdEJGOztNQUVHO0VBRUgsQUFBQSxTQUFTLENBQVU7SUFDbEIsSUFBSSxFQUFFLFFBQVE7SUFDZCxLQUFLLEVUMUJBLEdBQTRCO0lTMkJqQyxPQUFPLEVBQUUsQ0FBQyxDQUFDLElBQWEsR0FDeEI7RUFRQTs7T0FFRztFQUVILEFBQUEsWUFBWSxDQUFVO0lBQ3JCLFdBQVcsRVR6Q1AsR0FBNEIsR1MwQ2hDO0VBdEJGOztNQUVHO0VBRUgsQUFBQSxTQUFTLENBQVU7SUFDbEIsSUFBSSxFQUFFLFFBQVE7SUFDZCxLQUFLLEVUMUJBLFNBQTRCO0lTMkJqQyxPQUFPLEVBQUUsQ0FBQyxDQUFDLElBQWEsR0FDeEI7RUFRQTs7T0FFRztFQUVILEFBQUEsWUFBWSxDQUFVO0lBQ3JCLFdBQVcsRVR6Q1AsU0FBNEIsR1MwQ2hDO0VBdEJGOztNQUVHO0VBRUgsQUFBQSxTQUFTLENBQVU7SUFDbEIsSUFBSSxFQUFFLFFBQVE7SUFDZCxLQUFLLEVUMUJBLFNBQTRCO0lTMkJqQyxPQUFPLEVBQUUsQ0FBQyxDQUFDLElBQWEsR0FDeEI7RUFRQTs7T0FFRztFQUVILEFBQUEsWUFBWSxDQUFVO0lBQ3JCLFdBQVcsRVR6Q1AsU0FBNEIsR1MwQ2hDO0VBdEJGOztNQUVHO0VBRUgsQUFBQSxTQUFTLENBQVU7SUFDbEIsSUFBSSxFQUFFLFFBQVE7SUFDZCxLQUFLLEVUMUJBLEdBQTRCO0lTMkJqQyxPQUFPLEVBQUUsQ0FBQyxDQUFDLElBQWEsR0FDeEI7RUFRQTs7T0FFRztFQUVILEFBQUEsWUFBWSxDQUFVO0lBQ3JCLFdBQVcsRVR6Q1AsR0FBNEIsR1MwQ2hDO0VBdEJGOztNQUVHO0VBRUgsQUFBQSxTQUFTLENBQVU7SUFDbEIsSUFBSSxFQUFFLFFBQVE7SUFDZCxLQUFLLEVUMUJBLFNBQTRCO0lTMkJqQyxPQUFPLEVBQUUsQ0FBQyxDQUFDLElBQWEsR0FDeEI7RUFRQTs7T0FFRztFQUVILEFBQUEsWUFBWSxDQUFVO0lBQ3JCLFdBQVcsRVR6Q1AsU0FBNEIsR1MwQ2hDO0VBdEJGOztNQUVHO0VBRUgsQUFBQSxTQUFTLENBQVU7SUFDbEIsSUFBSSxFQUFFLFFBQVE7SUFDZCxLQUFLLEVUMUJBLFNBQTRCO0lTMkJqQyxPQUFPLEVBQUUsQ0FBQyxDQUFDLElBQWEsR0FDeEI7RUFRQTs7T0FFRztFQUVILEFBQUEsWUFBWSxDQUFVO0lBQ3JCLFdBQVcsRVR6Q1AsU0FBNEIsR1MwQ2hDO0VBdEJGOztNQUVHO0VBRUgsQUFBQSxTQUFTLENBQVU7SUFDbEIsSUFBSSxFQUFFLFFBQVE7SUFDZCxLQUFLLEVUMUJBLEdBQTRCO0lTMkJqQyxPQUFPLEVBQUUsQ0FBQyxDQUFDLElBQWEsR0FDeEI7RUFRQTs7T0FFRztFQUVILEFBQUEsWUFBWSxDQUFVO0lBQ3JCLFdBQVcsRVR6Q1AsR0FBNEIsR1MwQ2hDO0VBdEJGOztNQUVHO0VBRUgsQUFBQSxVQUFVLENBQVM7SUFDbEIsSUFBSSxFQUFFLFFBQVE7SUFDZCxLQUFLLEVUMUJBLFNBQTRCO0lTMkJqQyxPQUFPLEVBQUUsQ0FBQyxDQUFDLElBQWEsR0FDeEI7RUFRQTs7T0FFRztFQUVILEFBQUEsYUFBYSxDQUFTO0lBQ3JCLFdBQVcsRVR6Q1AsU0FBNEIsR1MwQ2hDO0VBdEJGOztNQUVHO0VBRUgsQUFBQSxVQUFVLENBQVM7SUFDbEIsSUFBSSxFQUFFLFFBQVE7SUFDZCxLQUFLLEVUMUJBLFNBQTRCO0lTMkJqQyxPQUFPLEVBQUUsQ0FBQyxDQUFDLElBQWEsR0FDeEI7RUFRQTs7T0FFRztFQUVILEFBQUEsYUFBYSxDQUFTO0lBQ3JCLFdBQVcsRVR6Q1AsU0FBNEIsR1MwQ2hDO0VBdEJGOztNQUVHO0VBRUgsQUFBQSxVQUFVLENBQVM7SUFDbEIsSUFBSSxFQUFFLFFBQVE7SUFDZCxLQUFLLEVUMUJBLElBQTRCO0lTMkJqQyxPQUFPLEVBQUUsQ0FBQyxDQUFDLElBQWEsR0FDeEI7RUFzQkQ7O01BRUc7RUFFSCxBQUFBLGlCQUFpQixDQUFRO0lBQ3hCLFdBQVcsRUFQRyxPQUFPLEdBUXJCO0VBTkQ7O01BRUc7RUFFSCxBQUFBLGdCQUFnQixDQUFTO0lBQ3hCLFdBQVcsRUFQWSxNQUFNLEdBUTdCO0VBTkQ7O01BRUc7RUFFSCxBQUFBLG9CQUFvQixDQUFLO0lBQ3hCLFdBQVcsRUFQb0IsVUFBVSxHQVF6QztFQU5EOztNQUVHO0VBRUgsQUFBQSxrQkFBa0IsQ0FBTztJQUN4QixXQUFXLEVBUGdDLFFBQVEsR0FRbkQ7RUFORDs7TUFFRztFQUVILEFBQUEsa0JBQWtCLENBQU87SUFDeEIsV0FBVyxFQVAwQyxRQUFRLEdBUTdEO0VBT0Q7O01BRUc7RUFFSCxBQUFBLGlCQUFpQixDQUFVO0lBQzFCLGVBQWUsRUFQRCxLQUFLLEdBUW5CO0VBTkQ7O01BRUc7RUFFSCxBQUFBLGtCQUFrQixDQUFTO0lBQzFCLGVBQWUsRUFQTSxNQUFNLEdBUTNCO0VBTkQ7O01BRUc7RUFFSCxBQUFBLHlCQUF5QixDQUFFO0lBQzFCLGVBQWUsRUFQYyxhQUFhLEdBUTFDO0VBTkQ7O01BRUc7RUFFSCxBQUFBLHdCQUF3QixDQUFHO0lBQzFCLGVBQWUsRUFQNkIsWUFBWSxHQVF4RDtFQU5EOztNQUVHO0VBRUgsQUFBQSx3QkFBd0IsQ0FBRztJQUMxQixlQUFlLEVBUDJDLFlBQVksR0FRdEU7RUFPRDs7TUFFRztFQUVILEFBQUEsY0FBYyxDQUFlO0lBQzVCLFlBQXFCLEVBQVUsQ0FBQyxHQUNoQztFQU5EOztNQUVHO0VBRUgsQUFBQSxlQUFlLENBQWM7SUFDNUIsYUFBcUIsRUFBVSxDQUFDLEdBQ2hDO0VBSUY7O0tBRUc7RUFFSCxBQUFBLFNBQVMsQ0FBTTtJQUNkLEtBQUssRUFBRSxFQUFFLEdBQ1Q7RUFHRDs7S0FFRztFQUVILEFBQUEsUUFBUSxDQUFNO0lBQ2IsS0FBSyxFQUFFLENBQUMsR0FDUjtFQUdEOztLQUVHO0VBRUgsQUFBQSxXQUFXLENBQU07SUFDaEIsY0FBYyxFQUFFLFdBQVcsR0FDM0I7O0FQakNELE1BQU0sTUFBTSxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7RU96RHZDOztNQUVHO0VBRUgsQUFBQSxTQUFTLENBQVU7SUFDbEIsSUFBSSxFQUFFLFFBQVE7SUFDZCxLQUFLLEVUMUJBLFFBQTRCO0lTMkJqQyxPQUFPLEVBQUUsQ0FBQyxDQUFDLElBQWEsR0FDeEI7RUFRQTs7T0FFRztFQUVILEFBQUEsWUFBWSxDQUFVO0lBQ3JCLFdBQVcsRVR6Q1AsUUFBNEIsR1MwQ2hDO0VBdEJGOztNQUVHO0VBRUgsQUFBQSxTQUFTLENBQVU7SUFDbEIsSUFBSSxFQUFFLFFBQVE7SUFDZCxLQUFLLEVUMUJBLFNBQTRCO0lTMkJqQyxPQUFPLEVBQUUsQ0FBQyxDQUFDLElBQWEsR0FDeEI7RUFRQTs7T0FFRztFQUVILEFBQUEsWUFBWSxDQUFVO0lBQ3JCLFdBQVcsRVR6Q1AsU0FBNEIsR1MwQ2hDO0VBdEJGOztNQUVHO0VBRUgsQUFBQSxTQUFTLENBQVU7SUFDbEIsSUFBSSxFQUFFLFFBQVE7SUFDZCxLQUFLLEVUMUJBLEdBQTRCO0lTMkJqQyxPQUFPLEVBQUUsQ0FBQyxDQUFDLElBQWEsR0FDeEI7RUFRQTs7T0FFRztFQUVILEFBQUEsWUFBWSxDQUFVO0lBQ3JCLFdBQVcsRVR6Q1AsR0FBNEIsR1MwQ2hDO0VBdEJGOztNQUVHO0VBRUgsQUFBQSxTQUFTLENBQVU7SUFDbEIsSUFBSSxFQUFFLFFBQVE7SUFDZCxLQUFLLEVUMUJBLFNBQTRCO0lTMkJqQyxPQUFPLEVBQUUsQ0FBQyxDQUFDLElBQWEsR0FDeEI7RUFRQTs7T0FFRztFQUVILEFBQUEsWUFBWSxDQUFVO0lBQ3JCLFdBQVcsRVR6Q1AsU0FBNEIsR1MwQ2hDO0VBdEJGOztNQUVHO0VBRUgsQUFBQSxTQUFTLENBQVU7SUFDbEIsSUFBSSxFQUFFLFFBQVE7SUFDZCxLQUFLLEVUMUJBLFNBQTRCO0lTMkJqQyxPQUFPLEVBQUUsQ0FBQyxDQUFDLElBQWEsR0FDeEI7RUFRQTs7T0FFRztFQUVILEFBQUEsWUFBWSxDQUFVO0lBQ3JCLFdBQVcsRVR6Q1AsU0FBNEIsR1MwQ2hDO0VBdEJGOztNQUVHO0VBRUgsQUFBQSxTQUFTLENBQVU7SUFDbEIsSUFBSSxFQUFFLFFBQVE7SUFDZCxLQUFLLEVUMUJBLEdBQTRCO0lTMkJqQyxPQUFPLEVBQUUsQ0FBQyxDQUFDLElBQWEsR0FDeEI7RUFRQTs7T0FFRztFQUVILEFBQUEsWUFBWSxDQUFVO0lBQ3JCLFdBQVcsRVR6Q1AsR0FBNEIsR1MwQ2hDO0VBdEJGOztNQUVHO0VBRUgsQUFBQSxTQUFTLENBQVU7SUFDbEIsSUFBSSxFQUFFLFFBQVE7SUFDZCxLQUFLLEVUMUJBLFNBQTRCO0lTMkJqQyxPQUFPLEVBQUUsQ0FBQyxDQUFDLElBQWEsR0FDeEI7RUFRQTs7T0FFRztFQUVILEFBQUEsWUFBWSxDQUFVO0lBQ3JCLFdBQVcsRVR6Q1AsU0FBNEIsR1MwQ2hDO0VBdEJGOztNQUVHO0VBRUgsQUFBQSxTQUFTLENBQVU7SUFDbEIsSUFBSSxFQUFFLFFBQVE7SUFDZCxLQUFLLEVUMUJBLFNBQTRCO0lTMkJqQyxPQUFPLEVBQUUsQ0FBQyxDQUFDLElBQWEsR0FDeEI7RUFRQTs7T0FFRztFQUVILEFBQUEsWUFBWSxDQUFVO0lBQ3JCLFdBQVcsRVR6Q1AsU0FBNEIsR1MwQ2hDO0VBdEJGOztNQUVHO0VBRUgsQUFBQSxTQUFTLENBQVU7SUFDbEIsSUFBSSxFQUFFLFFBQVE7SUFDZCxLQUFLLEVUMUJBLEdBQTRCO0lTMkJqQyxPQUFPLEVBQUUsQ0FBQyxDQUFDLElBQWEsR0FDeEI7RUFRQTs7T0FFRztFQUVILEFBQUEsWUFBWSxDQUFVO0lBQ3JCLFdBQVcsRVR6Q1AsR0FBNEIsR1MwQ2hDO0VBdEJGOztNQUVHO0VBRUgsQUFBQSxVQUFVLENBQVM7SUFDbEIsSUFBSSxFQUFFLFFBQVE7SUFDZCxLQUFLLEVUMUJBLFNBQTRCO0lTMkJqQyxPQUFPLEVBQUUsQ0FBQyxDQUFDLElBQWEsR0FDeEI7RUFRQTs7T0FFRztFQUVILEFBQUEsYUFBYSxDQUFTO0lBQ3JCLFdBQVcsRVR6Q1AsU0FBNEIsR1MwQ2hDO0VBdEJGOztNQUVHO0VBRUgsQUFBQSxVQUFVLENBQVM7SUFDbEIsSUFBSSxFQUFFLFFBQVE7SUFDZCxLQUFLLEVUMUJBLFNBQTRCO0lTMkJqQyxPQUFPLEVBQUUsQ0FBQyxDQUFDLElBQWEsR0FDeEI7RUFRQTs7T0FFRztFQUVILEFBQUEsYUFBYSxDQUFTO0lBQ3JCLFdBQVcsRVR6Q1AsU0FBNEIsR1MwQ2hDO0VBdEJGOztNQUVHO0VBRUgsQUFBQSxVQUFVLENBQVM7SUFDbEIsSUFBSSxFQUFFLFFBQVE7SUFDZCxLQUFLLEVUMUJBLElBQTRCO0lTMkJqQyxPQUFPLEVBQUUsQ0FBQyxDQUFDLElBQWEsR0FDeEI7RUFzQkQ7O01BRUc7RUFFSCxBQUFBLGlCQUFpQixDQUFRO0lBQ3hCLFdBQVcsRUFQRyxPQUFPLEdBUXJCO0VBTkQ7O01BRUc7RUFFSCxBQUFBLGdCQUFnQixDQUFTO0lBQ3hCLFdBQVcsRUFQWSxNQUFNLEdBUTdCO0VBTkQ7O01BRUc7RUFFSCxBQUFBLG9CQUFvQixDQUFLO0lBQ3hCLFdBQVcsRUFQb0IsVUFBVSxHQVF6QztFQU5EOztNQUVHO0VBRUgsQUFBQSxrQkFBa0IsQ0FBTztJQUN4QixXQUFXLEVBUGdDLFFBQVEsR0FRbkQ7RUFORDs7TUFFRztFQUVILEFBQUEsa0JBQWtCLENBQU87SUFDeEIsV0FBVyxFQVAwQyxRQUFRLEdBUTdEO0VBT0Q7O01BRUc7RUFFSCxBQUFBLGlCQUFpQixDQUFVO0lBQzFCLGVBQWUsRUFQRCxLQUFLLEdBUW5CO0VBTkQ7O01BRUc7RUFFSCxBQUFBLGtCQUFrQixDQUFTO0lBQzFCLGVBQWUsRUFQTSxNQUFNLEdBUTNCO0VBTkQ7O01BRUc7RUFFSCxBQUFBLHlCQUF5QixDQUFFO0lBQzFCLGVBQWUsRUFQYyxhQUFhLEdBUTFDO0VBTkQ7O01BRUc7RUFFSCxBQUFBLHdCQUF3QixDQUFHO0lBQzFCLGVBQWUsRUFQNkIsWUFBWSxHQVF4RDtFQU5EOztNQUVHO0VBRUgsQUFBQSx3QkFBd0IsQ0FBRztJQUMxQixlQUFlLEVBUDJDLFlBQVksR0FRdEU7RUFPRDs7TUFFRztFQUVILEFBQUEsY0FBYyxDQUFlO0lBQzVCLFlBQXFCLEVBQVUsQ0FBQyxHQUNoQztFQU5EOztNQUVHO0VBRUgsQUFBQSxlQUFlLENBQWM7SUFDNUIsYUFBcUIsRUFBVSxDQUFDLEdBQ2hDO0VBSUY7O0tBRUc7RUFFSCxBQUFBLFNBQVMsQ0FBTTtJQUNkLEtBQUssRUFBRSxFQUFFLEdBQ1Q7RUFHRDs7S0FFRztFQUVILEFBQUEsUUFBUSxDQUFNO0lBQ2IsS0FBSyxFQUFFLENBQUMsR0FDUjtFQUdEOztLQUVHO0VBRUgsQUFBQSxXQUFXLENBQU07SUFDaEIsY0FBYyxFQUFFLFdBQVcsR0FDM0I7O0FQckNELE1BQU0sTUFBTSxNQUFNLE1BQU0sU0FBUyxFQUFFLE1BQU07RU9yRHhDOztNQUVHO0VBRUgsQUFBQSxTQUFTLENBQVU7SUFDbEIsSUFBSSxFQUFFLFFBQVE7SUFDZCxLQUFLLEVUMUJBLFFBQTRCO0lTMkJqQyxPQUFPLEVBQUUsQ0FBQyxDQUFDLElBQWEsR0FDeEI7RUFRQTs7T0FFRztFQUVILEFBQUEsWUFBWSxDQUFVO0lBQ3JCLFdBQVcsRVR6Q1AsUUFBNEIsR1MwQ2hDO0VBdEJGOztNQUVHO0VBRUgsQUFBQSxTQUFTLENBQVU7SUFDbEIsSUFBSSxFQUFFLFFBQVE7SUFDZCxLQUFLLEVUMUJBLFNBQTRCO0lTMkJqQyxPQUFPLEVBQUUsQ0FBQyxDQUFDLElBQWEsR0FDeEI7RUFRQTs7T0FFRztFQUVILEFBQUEsWUFBWSxDQUFVO0lBQ3JCLFdBQVcsRVR6Q1AsU0FBNEIsR1MwQ2hDO0VBdEJGOztNQUVHO0VBRUgsQUFBQSxTQUFTLENBQVU7SUFDbEIsSUFBSSxFQUFFLFFBQVE7SUFDZCxLQUFLLEVUMUJBLEdBQTRCO0lTMkJqQyxPQUFPLEVBQUUsQ0FBQyxDQUFDLElBQWEsR0FDeEI7RUFRQTs7T0FFRztFQUVILEFBQUEsWUFBWSxDQUFVO0lBQ3JCLFdBQVcsRVR6Q1AsR0FBNEIsR1MwQ2hDO0VBdEJGOztNQUVHO0VBRUgsQUFBQSxTQUFTLENBQVU7SUFDbEIsSUFBSSxFQUFFLFFBQVE7SUFDZCxLQUFLLEVUMUJBLFNBQTRCO0lTMkJqQyxPQUFPLEVBQUUsQ0FBQyxDQUFDLElBQWEsR0FDeEI7RUFRQTs7T0FFRztFQUVILEFBQUEsWUFBWSxDQUFVO0lBQ3JCLFdBQVcsRVR6Q1AsU0FBNEIsR1MwQ2hDO0VBdEJGOztNQUVHO0VBRUgsQUFBQSxTQUFTLENBQVU7SUFDbEIsSUFBSSxFQUFFLFFBQVE7SUFDZCxLQUFLLEVUMUJBLFNBQTRCO0lTMkJqQyxPQUFPLEVBQUUsQ0FBQyxDQUFDLElBQWEsR0FDeEI7RUFRQTs7T0FFRztFQUVILEFBQUEsWUFBWSxDQUFVO0lBQ3JCLFdBQVcsRVR6Q1AsU0FBNEIsR1MwQ2hDO0VBdEJGOztNQUVHO0VBRUgsQUFBQSxTQUFTLENBQVU7SUFDbEIsSUFBSSxFQUFFLFFBQVE7SUFDZCxLQUFLLEVUMUJBLEdBQTRCO0lTMkJqQyxPQUFPLEVBQUUsQ0FBQyxDQUFDLElBQWEsR0FDeEI7RUFRQTs7T0FFRztFQUVILEFBQUEsWUFBWSxDQUFVO0lBQ3JCLFdBQVcsRVR6Q1AsR0FBNEIsR1MwQ2hDO0VBdEJGOztNQUVHO0VBRUgsQUFBQSxTQUFTLENBQVU7SUFDbEIsSUFBSSxFQUFFLFFBQVE7SUFDZCxLQUFLLEVUMUJBLFNBQTRCO0lTMkJqQyxPQUFPLEVBQUUsQ0FBQyxDQUFDLElBQWEsR0FDeEI7RUFRQTs7T0FFRztFQUVILEFBQUEsWUFBWSxDQUFVO0lBQ3JCLFdBQVcsRVR6Q1AsU0FBNEIsR1MwQ2hDO0VBdEJGOztNQUVHO0VBRUgsQUFBQSxTQUFTLENBQVU7SUFDbEIsSUFBSSxFQUFFLFFBQVE7SUFDZCxLQUFLLEVUMUJBLFNBQTRCO0lTMkJqQyxPQUFPLEVBQUUsQ0FBQyxDQUFDLElBQWEsR0FDeEI7RUFRQTs7T0FFRztFQUVILEFBQUEsWUFBWSxDQUFVO0lBQ3JCLFdBQVcsRVR6Q1AsU0FBNEIsR1MwQ2hDO0VBdEJGOztNQUVHO0VBRUgsQUFBQSxTQUFTLENBQVU7SUFDbEIsSUFBSSxFQUFFLFFBQVE7SUFDZCxLQUFLLEVUMUJBLEdBQTRCO0lTMkJqQyxPQUFPLEVBQUUsQ0FBQyxDQUFDLElBQWEsR0FDeEI7RUFRQTs7T0FFRztFQUVILEFBQUEsWUFBWSxDQUFVO0lBQ3JCLFdBQVcsRVR6Q1AsR0FBNEIsR1MwQ2hDO0VBdEJGOztNQUVHO0VBRUgsQUFBQSxVQUFVLENBQVM7SUFDbEIsSUFBSSxFQUFFLFFBQVE7SUFDZCxLQUFLLEVUMUJBLFNBQTRCO0lTMkJqQyxPQUFPLEVBQUUsQ0FBQyxDQUFDLElBQWEsR0FDeEI7RUFRQTs7T0FFRztFQUVILEFBQUEsYUFBYSxDQUFTO0lBQ3JCLFdBQVcsRVR6Q1AsU0FBNEIsR1MwQ2hDO0VBdEJGOztNQUVHO0VBRUgsQUFBQSxVQUFVLENBQVM7SUFDbEIsSUFBSSxFQUFFLFFBQVE7SUFDZCxLQUFLLEVUMUJBLFNBQTRCO0lTMkJqQyxPQUFPLEVBQUUsQ0FBQyxDQUFDLElBQWEsR0FDeEI7RUFRQTs7T0FFRztFQUVILEFBQUEsYUFBYSxDQUFTO0lBQ3JCLFdBQVcsRVR6Q1AsU0FBNEIsR1MwQ2hDO0VBdEJGOztNQUVHO0VBRUgsQUFBQSxVQUFVLENBQVM7SUFDbEIsSUFBSSxFQUFFLFFBQVE7SUFDZCxLQUFLLEVUMUJBLElBQTRCO0lTMkJqQyxPQUFPLEVBQUUsQ0FBQyxDQUFDLElBQWEsR0FDeEI7RUFzQkQ7O01BRUc7RUFFSCxBQUFBLGlCQUFpQixDQUFRO0lBQ3hCLFdBQVcsRUFQRyxPQUFPLEdBUXJCO0VBTkQ7O01BRUc7RUFFSCxBQUFBLGdCQUFnQixDQUFTO0lBQ3hCLFdBQVcsRUFQWSxNQUFNLEdBUTdCO0VBTkQ7O01BRUc7RUFFSCxBQUFBLG9CQUFvQixDQUFLO0lBQ3hCLFdBQVcsRUFQb0IsVUFBVSxHQVF6QztFQU5EOztNQUVHO0VBRUgsQUFBQSxrQkFBa0IsQ0FBTztJQUN4QixXQUFXLEVBUGdDLFFBQVEsR0FRbkQ7RUFORDs7TUFFRztFQUVILEFBQUEsa0JBQWtCLENBQU87SUFDeEIsV0FBVyxFQVAwQyxRQUFRLEdBUTdEO0VBT0Q7O01BRUc7RUFFSCxBQUFBLGlCQUFpQixDQUFVO0lBQzFCLGVBQWUsRUFQRCxLQUFLLEdBUW5CO0VBTkQ7O01BRUc7RUFFSCxBQUFBLGtCQUFrQixDQUFTO0lBQzFCLGVBQWUsRUFQTSxNQUFNLEdBUTNCO0VBTkQ7O01BRUc7RUFFSCxBQUFBLHlCQUF5QixDQUFFO0lBQzFCLGVBQWUsRUFQYyxhQUFhLEdBUTFDO0VBTkQ7O01BRUc7RUFFSCxBQUFBLHdCQUF3QixDQUFHO0lBQzFCLGVBQWUsRUFQNkIsWUFBWSxHQVF4RDtFQU5EOztNQUVHO0VBRUgsQUFBQSx3QkFBd0IsQ0FBRztJQUMxQixlQUFlLEVBUDJDLFlBQVksR0FRdEU7RUFPRDs7TUFFRztFQUVILEFBQUEsY0FBYyxDQUFlO0lBQzVCLFlBQXFCLEVBQVUsQ0FBQyxHQUNoQztFQU5EOztNQUVHO0VBRUgsQUFBQSxlQUFlLENBQWM7SUFDNUIsYUFBcUIsRUFBVSxDQUFDLEdBQ2hDO0VBSUY7O0tBRUc7RUFFSCxBQUFBLFNBQVMsQ0FBTTtJQUNkLEtBQUssRUFBRSxFQUFFLEdBQ1Q7RUFHRDs7S0FFRztFQUVILEFBQUEsUUFBUSxDQUFNO0lBQ2IsS0FBSyxFQUFFLENBQUMsR0FDUjtFQUdEOztLQUVHO0VBRUgsQUFBQSxXQUFXLENBQU07SUFDaEIsY0FBYyxFQUFFLFdBQVcsR0FDM0I7O0FDdkpIOztHQUVHO0FBRUgsQUFBQSxLQUFLLENBQUM7RUFDTCxPQUFPLEVBQUUsS0FBSztFQUNkLGFBQWEsRUFBRSxHQUFHO0VBQ2xCLFdBQVcsRUFBRSxJQUFJO0VBQ2pCLEtBQUssRXJCMEJHLE9BQXFCLEdxQnpCN0I7O0FBaUVELEFBL0RBLDBCQStEMEIsQ0FDekIsa0JBQWtCO0FBL0RuQixNQUFNO0FBQ04sS0FBSztBQUNMLFFBQVEsQ0FBQztFUndDUCxTQUFTLEVRdkNJLElBQUk7RVJ3Q2pCLFNBQVMsRUY1QkYsTUFBeUI7RUVpQ2hDLFdBQVcsRUFBRSxTQUFtQztFUTVDakQsS0FBSyxFQUFFLElBQUk7RUFDWCxNQUFNLEVBQUUsSUFBSTtFQUNaLGFBQWEsRUFBRSxHQUFHO0VBQ2xCLE9BQU8sRUFBRSxTQUFTO0VBQ2xCLGdCQUFnQixFckJLUixPQUF3QjtFcUJKaEMsY0FBYyxFQUFFLE1BQU0sR0FDdEI7O0FsQjhPRCxBQUFBLFFBQVEsQ2tCNU9DO0VBQ1IsTUFBTSxFQUFFLEtBQUs7RUFDYixXQUFXLEVBQUUsSUFBSSxHQUNqQjs7QUFFRCxBQUFBLHdCQUF3QixDQUFDO0VBQ3hCLFFBQVEsRUFBRSxRQUFRO0VBQ2xCLEtBQUssRUFBRSxJQUFJO0VBQ1gsUUFBUSxFQUFFLE1BQU07RUFDaEIsZ0JBQWdCLEVyQlJSLE9BQXdCLEdxQjJCaEM7RUF2QkQsQUFNQyx3QkFOdUIsQ0FNdkIsR0FBRyxDQUFDO0lBQ0gsUUFBUSxFQUFFLFFBQVE7SUFDbEIsR0FBRyxFQUFFLElBQUk7SUFDVCxLQUFLLEVBQUUsSUFBSTtJQUNYLEtBQUssRUFBRSxHQUFHO0lBQ1YsTUFBTSxFQUFFLElBQUk7SUFDWixPQUFPLEVBQUUsQ0FBQyxHQUNWO0VBYkYsQUFlQyx3QkFmdUIsQ0FldkIsTUFBTSxDQUFDO0lBQ04sUUFBUSxFQUFFLFFBQVE7SUFDbEIsS0FBSyxFQUFFLGlCQUFpQjtJQUN4QixTQUFTLEVBQUUsSUFBSTtJQUNmLE1BQU0sRUFBRSxJQUFJO0lBQ1osZ0JBQWdCLEVBQUUsV0FBVztJQUM3QixPQUFPLEVBQUUsQ0FBQyxHQUNWOztBQUdGLEFBQUEsS0FBSyxDQUFBLEFBQUEsSUFBQyxDQUFLLE9BQU8sQUFBWjtBQUNOLEtBQUssQ0FBQSxBQUFBLElBQUMsQ0FBSyxVQUFVLEFBQWYsRUFBaUI7RUFDdEIsS0FBSyxFQUFFLElBQUk7RUFDWCxNQUFNLEVBQUUsSUFBSTtFQUNaLE1BQU0sRUFBRSxHQUFHLENBQUMsS0FBSyxDckIvQ1QsT0FBMkI7RXFCZ0RuQyxnQkFBZ0IsRXJCckRSLEtBQW9CLEdxQjBENUI7RUFWRCxBQU9DLEtBUEksQ0FBQSxBQUFBLElBQUMsQ0FBSyxPQUFPLEFBQVosQ0FPSixRQUFRO0VBTlYsS0FBSyxDQUFBLEFBQUEsSUFBQyxDQUFLLFVBQVUsQUFBZixDQU1KLFFBQVEsQ0FBQztJQUNULGdCQUFnQixFckJuRFQsT0FBMkIsR3FCb0RsQzs7QUFHRixBQUFBLEtBQUssQ0FBQSxBQUFBLElBQUMsQ0FBSyxPQUFPLEFBQVosRUFBYztFQUNuQixhQUFhLEVBQUUsSUFBSSxHQUNuQjs7QUFFRDs7R0FFRztBQUVILEFBQ0MsMEJBRHlCLENBQ3pCLGtCQUFrQixDQUFDO0VBRWxCLE9BQU8sRUFBRSxRQUFRO0VBQ2pCLE1BQU0sRUFBRSxDQUFDLEdBQ1Q7O0FBTEYsQUFPQywwQkFQeUIsQ0FPekIseUJBQXlCLENBQUM7RUFDekIsTUFBTSxFQUFFLElBQUksQ0FBQSxVQUFVO0VBQ3RCLEtBQUssRUFBRSxJQUFJLENBQUEsVUFBVSxHQUNyQjs7QUFHRjs7R0FFRztBQUVILEFBQUEsT0FBTyxDQUFDO0VBQ1AsYUFBYSxFQUFFLElBQUksR0FDbkI7O0FBRUQsQUFBQSwyQkFBMkIsQ0FBQztFQUMzQixPQUFPLEVBQUUsSUFBSSxHQUNiOztBQUVELEFBQUEsbUJBQW1CLENBQUM7RVI3Q2xCLFNBQVMsRVE4Q0ksSUFBSTtFUjdDakIsU0FBUyxFRjVCRixNQUF5QjtFRWlDaEMsV0FBVyxFQUFFLFNBQW1DO0VReUNqRCxVQUFVLEVBQUUsR0FBRztFQUNmLEtBQUssRXJCM0ZHLE9BQTJCO0VxQjRGbkMsVUFBVSxFQUFFLE1BQU0sR0FDbEI7O0F1RDFFRCxBdkQ0RUEsa0J1RDVFa0I7QXZENkVsQixpQkFBaUIsQ0FBQztFQUNqQixRQUFRLEVBQUUsUUFBUTtFQUNsQixNQUFNLEVBQUUsUUFBUTtFQUNoQixPQUFPLEVBQUUsbUJBQW1CO0VBQzVCLFVBQVUsRXJCbEVKLHFCQUEwQjtFcUJtRWhDLEtBQUssRXJCcEVHLE9BQXVCLEdxQjJGL0I7RXVEekdELEF2RG9GQyxrQnVEcEZpQixHdkRvRmYsR0FBRztFQVBOLGlCQUFpQixHQU9kLEdBQUcsQ0FBQztJQUNMLFFBQVEsRUFBRSxRQUFRO0lBQ2xCLEdBQUcsRUFBRSxnQkFBZ0I7SUFDckIsSUFBSSxFQUFFLElBQUk7SUFDVixLQUFLLEVBQUUsSUFBSTtJQUNYLE1BQU0sRUFBRSxJQUFJO0lBQ1osS0FBSyxFckI1RUUsT0FBdUIsR3FCNkU5QjtFdUQzRkYsQXZENkZDLGtCdUQ3RmlCLEN2RDZGakIsYUFBYTtFQWhCZCxpQkFBaUIsQ0FnQmhCLGFBQWEsQ0FBQztJQUNiLFFBQVEsRUFBRSxRQUFRO0lBQ2xCLEdBQUcsRUFBRSxHQUFHO0lBQ1IsS0FBSyxFQUFFLElBQUk7SUFDWCxNQUFNLEVBQUUsT0FBTyxHQU9mO0l1RHhHRixBdkRtR0Usa0J1RG5HZ0IsQ3ZENkZqQixhQUFhLENBTVosR0FBRztJQXRCTCxpQkFBaUIsQ0FnQmhCLGFBQWEsQ0FNWixHQUFHLENBQUM7TUFDSCxLQUFLLEVBQUUsSUFBSTtNQUNYLE1BQU0sRUFBRSxJQUFJO01BQ1osS0FBSyxFckJwR0MsT0FBcUIsR3FCcUczQjs7QUFJSCxBQUFBLDJCQUEyQixDQUFDO0VBQzNCLEtBQUssRUFBRSxJQUFJO0VBQ1gsT0FBTyxFQUFFLElBQUk7RUFDYixVQUFVLEVyQm5IRixPQUF3QixHcUJ3SWhDO0VBeEJELEFBS0MsMkJBTDBCLENBSzFCLEVBQUUsQ0FBQztJQUNGLE9BQU8sRUFBRSxJQUFJLEdBQ2I7RUFQRixBQVNDLDJCQVQwQixDQVMxQixFQUFFLENBQUM7SUFDRixPQUFPLEVBQUUsSUFBSTtJQUNiLFdBQVcsRUFBRSxNQUFNO0lBQ25CLGFBQWEsRUFBRSxJQUFJLEdBV25CO0lBdkJGLEFBY0UsMkJBZHlCLENBUzFCLEVBQUUsQ0FLRCxHQUFHLENBQUM7TUFDSCxLQUFLLEVBQUUsSUFBSTtNQUNYLE1BQU0sRUFBRSxJQUFJO01BQ1osWUFBWSxFQUFFLElBQUk7TUFDbEIsYUFBYSxFQUFFLElBQUk7TUFDbkIsZ0JBQWdCLEVyQnRKVixLQUFvQjtNcUJ1SjFCLE9BQU8sRUFBRSxHQUFHO01BQ1osS0FBSyxFckJqSUMsT0FBeUIsR3FCa0kvQjs7QUMvSkg7O0dBRUc7QUFFSCxBQUFBLEVBQUU7QUFDRixFQUFFO0FBQ0YsRUFBRTtBQUNGLEVBQUU7QUFDRixFQUFFO0FrRFlGLDhCQUE4QixDQWE3QixpQkFBaUI7QUUrRGxCLDhCQUE4QixDQUFDLElBQUksQ0F1RGxDLFFBQVEsQ0FVUCxNQUFNO0FDaktSLGlDQUFpQyxDQW9GaEMsaURBQWlELEFBQy9DLFVBQVUsQ0FBQyxDQUFDO0FBckZmLGlDQUFpQyxDQW9GaEMsaURBQWlELENBRWhELENBQUM7QXJENUVILFFBQVEsQ0FBQztFQUNSLEtBQUssRXRCQUcsT0FBMkI7RXNCQ25DLFdBQVcsRUFBRSxJQUFJO0VBQ2pCLGNBQWMsRUFBRSxNQUFNLEdBYXRCO0VBdEJELEFBV0MsRUFYQyxBQVdBLFFBQVE7RUFWVixFQUFFLEFBVUEsUUFBUTtFQVRWLEVBQUUsQUFTQSxRQUFRO0VBUlYsRUFBRSxBQVFBLFFBQVE7RUFQVixFQUFFLEFBT0EsUUFBUTtFa0RLViw4QkFBOEIsQ2xETDVCLFFBQVEsQWtEa0JULGlCQUFpQjtFRStEbEIsOEJBQThCLENBQUMsSUFBSSxDQXVEbEMsUUFBUSxDQVVQLE1BQU0sQXBEbEpOLFFBQVE7RXFEZlYsaUNBQWlDLENBb0ZoQyxpREFBaUQsQ0FFaEQsQ0FBQyxBckR2RUQsUUFBUTtFQUxWLFFBQVEsQUFLTixRQUFRLENBQUM7SUFDVCxLQUFLLEV0QmdCRSxPQUFxQixHc0JmNUI7RUFiRixBQWVDLEVBZkMsQUFlQSxRQUFRO0VBZFYsRUFBRSxBQWNBLFFBQVE7RUFiVixFQUFFLEFBYUEsUUFBUTtFQVpWLEVBQUUsQUFZQSxRQUFRO0VBWFYsRUFBRSxBQVdBLFFBQVE7RWtEQ1YsOEJBQThCLENsREQ1QixRQUFRLEFrRGNULGlCQUFpQjtFRStEbEIsOEJBQThCLENBQUMsSUFBSSxDQXVEbEMsUUFBUSxDQVVQLE1BQU0sQXBEOUlOLFFBQVE7RXFEbkJWLGlDQUFpQyxDQW9GaEMsaURBQWlELENBRWhELENBQUMsQXJEbkVELFFBQVE7RUFUVixRQUFRLEFBU04sUUFBUSxDQUFDO0lBQ1QsS0FBSyxFdEJDRSxPQUEyQixHc0JBbEM7RUFqQkYsQUFtQkMsRUFuQkMsQUFtQkEsU0FBUztFQWxCWCxFQUFFLEFBa0JBLFNBQVM7RUFqQlgsRUFBRSxBQWlCQSxTQUFTO0VBaEJYLEVBQUUsQUFnQkEsU0FBUztFQWZYLEVBQUUsQUFlQSxTQUFTO0VrREhYLDhCQUE4QixDbERHNUIsU0FBUyxBa0RVVixpQkFBaUI7RUUrRGxCLDhCQUE4QixDQUFDLElBQUksQ0F1RGxDLFFBQVEsQ0FVUCxNQUFNLEFwRDFJTixTQUFTO0VxRHZCWCxpQ0FBaUMsQ0FvRmhDLGlEQUFpRCxDQUVoRCxDQUFDLEFyRC9ERCxTQUFTO0VBYlgsUUFBUSxBQWFOLFNBQVMsQ0FBQztJQUNWLEtBQUssRXRCbEJFLEtBQW9CLEdzQm1CM0I7O0FBSUY7O0dBRUc7QUFFSCxBQUFBLEVBQUU7QUFDRixVQUFVLENBQUM7RVRvQlQsU0FBUyxFU2RJLElBQUk7RVRlakIsU0FBUyxFRjVCRixJQUF5QjtFRWlDaEMsV0FBVyxFQUFFLE1BQW1DO0VTbkJqRCxjQUFjLEVBQUUsS0FBSyxHQUNyQjtFVGdHQyxNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO0lTekcxQyxBQUFBLEVBQUU7SUFDRixVQUFVLENBQUM7TVRvQlQsU0FBUyxFU2xCSyxJQUFJO01UbUJsQixTQUFTLEVGNUJGLE1BQXlCO01FaUNoQyxXQUFXLEVBQUUsU0FBbUM7TVN2QmhELGNBQWMsRUFBRSxNQUFNLEdBS3ZCOztBQUdEOztHQUVHO0FBRUgsQUFBQSxFQUFFO0FBQ0YsVUFBVSxDQUFDO0VUSVQsU0FBUyxFU0hJLElBQUk7RVRJakIsU0FBUyxFRjVCRixJQUF5QjtFRWlDaEMsV0FBVyxFQUFFLE1BQW1DO0VTUmpELGNBQWMsRUFBRSxNQUFNLEdBQ3RCOztBQUdEOztHQUVHO0FBRUgsQUFBQSxFQUFFO0FBQ0YsVUFBVSxDQUFDO0VUUFQsU0FBUyxFU1FJLElBQUk7RVRQakIsU0FBUyxFRjVCRixNQUF5QjtFRWlDaEMsV0FBVyxFQUFFLE1BQW1DO0VTR2pELGNBQWMsRUFBRSxNQUFNLEdBQ3RCOztBQUdEOztHQUVHO0FBRUgsQUFBQSxFQUFFO0FrRG5ERiw4QkFBOEIsQ0FhN0IsaUJBQWlCO0FFK0RsQiw4QkFBOEIsQ0FBQyxJQUFJLENBdURsQyxRQUFRLENBVVAsTUFBTTtBQ2pLUixpQ0FBaUMsQ0FvRmhDLGlEQUFpRCxBQUMvQyxVQUFVLENBQUMsQ0FBQztBQXJGZixpQ0FBaUMsQ0FvRmhDLGlEQUFpRCxDQUVoRCxDQUFDO0FyRGJILFVBQVUsQ0FBQztFVG5CVCxTQUFTLEVTb0JJLElBQUk7RVRuQmpCLFNBQVMsRUY1QkYsSUFBeUI7RUVpQ2hDLFdBQVcsRUFBRSxLQUFtQztFU2VqRCxjQUFjLEVBQUUsTUFBTSxHQUN0Qjs7QUFFRDs7R0FFRztBQUVILEFBQUEsRUFBRTtBQUNGLFVBQVUsQ0FBQztFVDdCVCxTQUFTLEVTOEJJLElBQUk7RVQ3QmpCLFNBQVMsRUY1QkYsTUFBeUI7RUVpQ2hDLFdBQVcsRUFBRSxPQUFtQztFU3lCakQsY0FBYyxFQUFFLE1BQU0sR0FDdEI7O0FBR0Q7O0dBRUc7QUFFSCxBQUFBLG1CQUFtQixDQUFDO0VUdkNsQixTQUFTLEVTOENJLEtBQUs7RVQ3Q2xCLFNBQVMsRUY1QkYsS0FBeUI7RUVpQ2hDLFdBQVcsRUFBRSxTQUFtQztFU3lDakQsY0FBYyxFQUFFLE1BQU07RUFDdEIsV0FBVyxFQUFFLElBQUk7RUFDakIsS0FBSyxFdEJ0RkMsdUJBQThCLEdzQnVGcEM7RVQwQ0MsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztJU3JEMUMsQUFBQSxtQkFBbUIsQ0FBQztNVHZDbEIsU0FBUyxFU3lDSyxJQUFJO01UeENsQixTQUFTLEVGNUJGLElBQXlCO01FaUNoQyxXQUFXLEVBQUUsT0FBbUM7TVNvQ2hELGNBQWMsRUFBRSxNQUFNO01BQ3RCLEtBQUssRXRCL0VBLHVCQUE4QixHc0JzRnBDOztBQ3hHRDs7R0FFRztBQUVILEFBQUEsTUFBTSxDQUFDO0VWa0RMLFNBQVMsRVVqREksSUFBSTtFVmtEakIsU0FBUyxFRjVCRixNQUF5QjtFRWlDaEMsV0FBVyxFQUFFLEdBQW1DO0VVdERqRCxPQUFPLEVBQUUsV0FBVyxHQTBDcEI7RVZrR0MsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztJVTlJMUMsQUFJQyxNQUpLLEFBSUosc0JBQXNCLENBQUM7TVY4Q3ZCLFNBQVMsRVU1Q00sSUFBSTtNVjZDbkIsU0FBUyxFRjVCRixNQUF5QjtNRWlDaEMsV0FBVyxFQUFFLFNBQW1DO01VakQvQyxLQUFLLEVBQUUsSUFBSTtNQUNYLE1BQU0sRUFBRSxTQUFTO01BQ2pCLE9BQU8sRUFBRSxNQUFNO01BQ2YsZ0JBQWdCLEV2QkdaLHVCQUE4QixHdUJVbkM7TUF2QkYsQUFZRyxNQVpHLEFBSUosc0JBQXNCLEFBUXBCLE9BQU8sQ0FBQztRQUNSLEtBQUssRUFBRSxJQUFJLEdBQ1g7TUFkSixBQWdCRyxNQWhCRyxBQUlKLHNCQUFzQixDQVlyQixHQUFHLENBQUM7UUFDSCxNQUFNLEVBQUUsSUFBSTtRQUNaLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLEdBQUcsRUFBRSxHQUFHO1FBQ1IsS0FBSyxFQUFFLElBQUksR0FDWDtFQXJCSixBQXlCQyxNQXpCSyxBQXlCSixTQUFTLENBQUM7SUFDVixLQUFLLEV2QnhCRSxLQUFvQixHdUJ5QjNCO0VBM0JGLEFBNkJDLE1BN0JLLEFBNkJKLFFBQVEsQ0FBQztJQUNULEtBQUssRXZCRkUsT0FBcUIsR3VCRzVCO0VBL0JGLEFBaUNDLE1BakNLLEFBaUNKLGVBQWUsQ0FBQztJQUNoQixLQUFLLEV2QjFCQyxzQkFBNkIsR3VCMkJuQztFQW5DRixBQXFDQyxNQXJDSyxBQXFDSixTQUFTLENBQUM7SUFDVixXQUFXLEVBQUUsR0FBRyxHQUNoQjtFQXZDRixBQXlDQyxNQXpDSyxDQXlDTCxHQUFHLENBQUM7SUFDSCxZQUFZLEVBQUUsSUFBSSxHQUNsQjs7QUFHRixBQUNDLFlBRFcsQ0FDWCxHQUFHLENBQUM7RUFDSCxLQUFLLEVBQUUsSUFBSTtFQUNYLE1BQU0sRUFBRSxJQUFJLEdBQ1o7O0FBR0YsQUFDQyxlQURjLENBQ2QsR0FBRyxDQUFDO0VBQ0gsS0FBSyxFQUFFLElBQUk7RUFDWCxNQUFNLEVBQUUsSUFBSSxHQUNaOztBQUdGLEFBQUEsYUFBYSxDQUFDO0VBQ2IsUUFBUSxFQUFFLFFBQVEsR0E4QmxCO0VBL0JELEFBR0MsYUFIWSxBQUdYLE9BQU8sQ0FBQztJQUNSLE9BQU8sRUFBRSxLQUFLO0lBQ2QsUUFBUSxFQUFFLFFBQVE7SUFDbEIsR0FBRyxFQUFFLEdBQUc7SUFDUixJQUFJLEVBQUUsQ0FBQztJQUNQLEtBQUssRUFBRSxHQUFHO0lBQ1YsTUFBTSxFQUFFLElBQUk7SUFDWixZQUFZLEVBQUUsSUFBSTtJQUNsQixPQUFPLEVBQUUsRUFBRSxHQUNYO0VBWkYsQUFlRSxhQWZXLEFBY1gsT0FBTyxBQUNOLE9BQU8sQ0FBQztJQUNSLFVBQVUsRUFBRSw4QkFBZ0MsQ0FBQyxTQUFTLEdBQ3REO0VBakJILEFBcUJFLGFBckJXLEFBb0JYLFNBQVMsQUFDUixPQUFPLENBQUM7SUFDUixVQUFVLEVBQUUsK0JBQWlDLENBQUMsU0FBUyxHQUN2RDtFQXZCSCxBQTJCRSxhQTNCVyxBQTBCWCxjQUFjLEFBQ2IsT0FBTyxDQUFDO0lBQ1IsVUFBVSxFQUFFLG9DQUFzQyxDQUFDLFNBQVMsR0FDNUQ7O0FBS0g7O0dBRUc7QUFFSCxBQUFBLGdCQUFnQixDQUFDO0VBQ2hCLFFBQVEsRUFBRSxRQUFRO0VBQ2xCLEdBQUcsRUFBRSxDQUFDO0VBQ04sS0FBSyxFQUFFLENBQUM7RUFDUixPQUFPLEVBQUUsV0FBVztFQUNwQixXQUFXLEVBQUUsTUFBTTtFQUNuQixlQUFlLEVBQUUsTUFBTTtFQUN2QixLQUFLLEVBQUUsS0FBSztFQUNaLE1BQU0sRUFBRSxJQUFJO0VBQ1osZ0JBQWdCLEV2QnhHVCx3QkFBc0I7RXVCeUc3QixhQUFhLEVBQUUsU0FBUztFQUN4QixPQUFPLEVBQUUsRUFBRSxHQXNCWDtFQWpDRCxBQWFDLGdCQWJlLENBYWYsR0FBRyxDQUFDO0lBQ0gsS0FBSyxFQUFFLElBQUk7SUFDWCxNQUFNLEVBQUUsSUFBSTtJQUNaLFlBQVksRUFBRSxJQUFJLEdBZ0JsQjtJQWhDRixBQWtCRSxnQkFsQmMsQ0FhZixHQUFHLEFBS0QsUUFBUSxDQUFDO01BQ1QsS0FBSyxFQUFFLElBQUk7TUFDWCxNQUFNLEVBQUUsSUFBSSxHQUNaO0lBckJILEFBdUJFLGdCQXZCYyxDQWFmLEdBQUcsQUFVRCxRQUFRLENBQUM7TUFDVCxLQUFLLEVBQUUsSUFBSTtNQUNYLE1BQU0sRUFBRSxJQUFJLEdBQ1o7SUExQkgsQUE0QkUsZ0JBNUJjLENBYWYsR0FBRyxBQWVELFFBQVEsQ0FBQztNQUNULEtBQUssRUFBRSxJQUFJO01BQ1gsTUFBTSxFQUFFLElBQUksR0FDWjs7QUNySUgsQUFBQSxjQUFjLENBQUM7RUFDZCxRQUFRLEVBQUUsUUFBUTtFQUNsQixHQUFHLEVBQUUsTUFBTTtFQUNYLFVBQVUsRUFBRSxjQUFjO0VBQzFCLGdCQUFnQixFQUFFLEtBQUs7RUFDdkIsT0FBTyxFQUFFLENBQUMsR0FNVjtFQVhELEFBT0MsY0FQYSxBQU9aLE9BQU8sQ0FBQztJQUNSLGdCQUFnQixFQUFFLEtBQUs7SUFDdkIsVUFBVSxFQUFFLGNBQWMsR0FDMUI7O0FBR0YsQUFBQSxjQUFjLENBQUEsQUFBQSxNQUFDLENBQU8sTUFBTSxBQUFiLEVBQWU7RUFDN0IsR0FBRyxFQUFFLENBQUM7RUFDTixPQUFPLEVBQUUsQ0FBQyxHQUNWOztBQ2hCRCxBQUFBLEtBQUssQ0FBQztFWnNESixTQUFTLEVZckRJLElBQUk7RVpzRGpCLFNBQVMsRUY1QkYsTUFBeUI7RUVpQ2hDLFdBQVcsRUFBRSxTQUFtQztFWTFEakQsS0FBSyxFekJtQkcsT0FBMkI7RXlCbEJuQyxXQUFXLEVBQUUsR0FBRztFQUNoQixVQUFVLEVBQUUsY0FBYyxHQTRDMUI7RUFoREQsQUFPRSxLQVBHLEFBTUgsY0FBYyxDQUNkLEdBQUcsQ0FBQztJQUNILFdBQVcsRUFBRSxJQUFJLEdBQ2pCO0VBVEgsQUFhRSxLQWJHLEFBWUgsYUFBYSxDQUNiLEdBQUcsQ0FBQztJQUNILFlBQVksRUFBRSxJQUFJLEdBQ2xCO0VBZkgsQUFrQkMsS0FsQkksQUFrQkgsUUFBUSxDQUFDO0lBQ1QsS0FBSyxFekJlRSxPQUFxQixHeUJkNUI7RUFwQkYsQUFzQkMsS0F0QkksQ0FzQkosR0FBRyxDQUFDO0lBQ0gsUUFBUSxFQUFFLFFBQVE7SUFDbEIsR0FBRyxFQUFFLEdBQUc7SUFDUixLQUFLLEVBQUUsSUFBSTtJQUNYLE1BQU0sRUFBRSxJQUFJO0lBQ1osVUFBVSxFQUFFLGNBQWMsR0FnQjFCO0lBM0NGLEFBNkJFLEtBN0JHLENBc0JKLEdBQUcsQUFPRCxvQkFBb0IsQ0FBQztNQUNyQixLQUFLLEVBQUUsSUFBSTtNQUNYLE1BQU0sRUFBRSxJQUFJLEdBQ1o7SUFoQ0gsQUFrQ0UsS0FsQ0csQ0FzQkosR0FBRyxBQVlELE9BQU8sQ0FBQztNQUNSLEdBQUcsRUFBRSxHQUFHO01BQ1IsS0FBSyxFQUFFLElBQUk7TUFDWCxNQUFNLEVBQUUsSUFBSSxHQUNaO0lBdENILEFBd0NFLEtBeENHLENBc0JKLEdBQUcsQUFrQkQsY0FBYyxDQUFDO01BQ2YsR0FBRyxFQUFFLEdBQUcsR0FDUjtFQTFDSCxBQTZDQyxLQTdDSSxBQTZDSCxNQUFNLENBQUM7SUFDUCxLQUFLLEV6Qm5DRSxPQUEyQixHeUJvQ2xDOztBcEI1Q0YsQUF3QkMsYUF4QlksQ0F3QlosZ0JBQWdCLENxQnpCQztFQUNoQixLQUFLLEVBQUUsTUFBTTtFQUNiLFFBQVEsRUFBRSxPQUFPLEdBQ2pCOztBckJGRixBQVFDLGFBUlksQ0FRWixVQUFVLENxQkpDO0VBQ1YsT0FBTyxFQUFFLElBQUksR0FDYjs7QUFURixBQVdDLGFBWFksQ0FXWixRQUFRLENBQUM7RUFLUixPQUFPLEVBQUUsSUFBSTtFQUNiLFFBQVEsRUFBRSxRQUFRO0VBQ2xCLEdBQUcsRUFBRSxLQUFLO0VBQ1YsS0FBSyxFQUFFLENBQUMsR0E4Q1I7RWJpRkEsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztJYWxKMUMsQUFXQyxhQVhZLENBV1osUUFBUSxDQUFDO01BRVAsS0FBSyxFQUFFLElBQUksR0FvRFo7RUFqRUYsQUFxQkUsYUFyQlcsQ0FXWixRQUFRLENBVVAsTUFBTSxBQUFBLFNBQVM7RUFyQmpCLGFBQWEsQ0FXWixRQUFRLENBV1AsTUFBTSxBQUFBLFNBQVMsQ0FBQztJQUNmLE9BQU8sRUFBRSxJQUFJO0lBQ2IsV0FBVyxFQUFFLE1BQU07SUFDbkIsZUFBZSxFQUFFLE1BQU07SUFDdkIsS0FBSyxFQUFFLElBQUk7SUFDWCxNQUFNLEVBQUUsSUFBSTtJQUNaLGdCQUFnQixFMUJ0QlYsS0FBb0I7STBCdUIxQixNQUFNLEVBQUUsR0FBRyxDQUFDLEtBQUssQzFCWVgsVUFBcUI7STBCWDNCLGFBQWEsRUFBRSxHQUFHO0lBQ2xCLFVBQVUsRUFBRSxjQUFjLEdBaUMxQjtJQWhFSCxBQWlDRyxhQWpDVSxDQVdaLFFBQVEsQ0FVUCxNQUFNLEFBQUEsU0FBUyxDQVlkLEdBQUc7SUFqQ04sYUFBYSxDQVdaLFFBQVEsQ0FXUCxNQUFNLEFBQUEsU0FBUyxDQVdkLEdBQUcsQ0FBQztNQUNILFFBQVEsRUFBRSxRQUFRO01BQ2xCLEdBQUcsRUFBRSxHQUFHO01BQ1IsS0FBSyxFQUFFLElBQUk7TUFDWCxNQUFNLEVBQUUsSUFBSTtNQUNaLEtBQUssRTFCakJBLE9BQTJCO00wQmtCaEMsVUFBVSxFQUFFLGNBQWMsR0FDMUI7SUF4Q0osQUEwQ0csYUExQ1UsQ0FXWixRQUFRLENBVVAsTUFBTSxBQUFBLFNBQVMsQUFxQmIsU0FBUztJQTFDYixhQUFhLENBV1osUUFBUSxDQVdQLE1BQU0sQUFBQSxTQUFTLEFBb0JiLFNBQVMsQ0FBQztNQUNWLFdBQVcsRUFBRSxJQUFJLEdBQ2pCO0lBNUNKLEFBOENHLGFBOUNVLENBV1osUUFBUSxDQVVQLE1BQU0sQUFBQSxTQUFTLEFBeUJiLE1BQU07SUE5Q1YsYUFBYSxDQVdaLFFBQVEsQ0FXUCxNQUFNLEFBQUEsU0FBUyxBQXdCYixNQUFNLENBQUM7TUFDUCxnQkFBZ0IsRTFCMUJYLE9BQTJCO00wQjJCaEMsTUFBTSxFQUFFLEdBQUcsQ0FBQyxLQUFLLEMxQjNCWixPQUEyQixHMEJnQ2hDO01BckRKLEFBa0RJLGFBbERTLENBV1osUUFBUSxDQVVQLE1BQU0sQUFBQSxTQUFTLEFBeUJiLE1BQU0sQ0FJTixHQUFHO01BbERQLGFBQWEsQ0FXWixRQUFRLENBV1AsTUFBTSxBQUFBLFNBQVMsQUF3QmIsTUFBTSxDQUlOLEdBQUcsQ0FBQztRQUNILEtBQUssRTFCN0NELEtBQW9CLEcwQjhDeEI7SUFwREwsQUF1REcsYUF2RFUsQ0FXWixRQUFRLENBVVAsTUFBTSxBQUFBLFNBQVMsQUFrQ2IsU0FBUztJQXZEYixhQUFhLENBV1osUUFBUSxDQVdQLE1BQU0sQUFBQSxTQUFTLEFBaUNiLFNBQVMsQ0FBQztNQUNWLGdCQUFnQixFMUJsRFgsS0FBb0I7TTBCbUR6QixNQUFNLEVBQUUsR0FBRyxDQUFDLEtBQUssQzFCaEJaLFVBQXFCO00wQmlCMUIsTUFBTSxFQUFFLE9BQU8sR0FLZjtNQS9ESixBQTRESSxhQTVEUyxDQVdaLFFBQVEsQ0FVUCxNQUFNLEFBQUEsU0FBUyxBQWtDYixTQUFTLENBS1QsR0FBRztNQTVEUCxhQUFhLENBV1osUUFBUSxDQVdQLE1BQU0sQUFBQSxTQUFTLEFBaUNiLFNBQVMsQ0FLVCxHQUFHLENBQUM7UUFDSCxLQUFLLEUxQnBCRCxVQUFxQixHMEJxQnpCOztBQzlETCxBQUFBLFdBQVcsQ0FBQztFQUtYLGVBQWUsRUFBRSxNQUFNO0VBQ3ZCLEtBQUssRUFBRSxJQUFJO0VBQ1gsYUFBYSxFQUFFLElBQUk7RUFDbkIsT0FBTyxFQUFFLGFBQWEsR0ErQ3RCO0VkbUZDLE1BQU0sTUFBTSxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7SWMxSTFDLEFBQUEsV0FBVyxDQUFDO01BRVYsYUFBYSxFQUFFLElBQUksR0FxRHBCO0VBdkRELEFBVUMsV0FWVSxDQVVWLGFBQWEsQ0FBQztJZDRDYixTQUFTLEVjM0NLLElBQUk7SWQ0Q2xCLFNBQVMsRUY1QkYsSUFBeUI7SUVpQ2hDLFdBQVcsRUFBRSxLQUFtQztJY2hEaEQsT0FBTyxFQUFFLElBQUk7SUFDYixlQUFlLEVBQUUsTUFBTTtJQUN2QixXQUFXLEVBQUUsTUFBTTtJQUNuQixZQUFZLEVBQUUsSUFBSTtJQUNsQixVQUFVLEVBQUUsY0FBYztJQUMxQixLQUFLLEUzQmRFLEtBQWtCO0kyQmV6QixXQUFXLEVBQUUsR0FBRyxHQThCaEI7SUFoREYsQUFvQkUsV0FwQlMsQ0FVVixhQUFhLEFBVVgsUUFBUSxDQUFDO01BQ1QsS0FBSyxFM0JWQyxPQUEyQjtNMkJXakMsV0FBVyxFQUFFLElBQUksR0FDakI7SUF2QkgsQUF5QkUsV0F6QlMsQ0FVVixhQUFhLEFBZVgsS0FBSyxFQXpCUixXQUFXLENBVVYsYUFBYSxBQWdCWCxLQUFLLENBQUM7TUFDTixZQUFZLEVBQUUsSUFBSSxHQWVsQjtNQTFDSCxBQTZCRyxXQTdCUSxDQVVWLGFBQWEsQUFlWCxLQUFLLENBSUwsR0FBRyxFQTdCTixXQUFXLENBVVYsYUFBYSxBQWdCWCxLQUFLLENBR0wsR0FBRyxDQUFDO1FBQ0gsUUFBUSxFQUFFLFFBQVE7UUFDbEIsS0FBSyxFQUFFLElBQUk7UUFDWCxNQUFNLEVBQUUsSUFBSTtRQUNaLEtBQUssRTNCREEsT0FBcUI7UTJCRTFCLFVBQVUsRUFBRSxjQUFjLEdBQzFCO01BbkNKLEFBc0NJLFdBdENPLENBVVYsYUFBYSxBQWVYLEtBQUssQUFZSixNQUFNLENBQ04sR0FBRyxFQXRDUCxXQUFXLENBVVYsYUFBYSxBQWdCWCxLQUFLLEFBV0osTUFBTSxDQUNOLEdBQUcsQ0FBQztRQUNILEtBQUssRTNCbEJELE9BQTJCLEcyQm1CL0I7SUF4Q0wsQUE0Q0UsV0E1Q1MsQ0FVVixhQUFhLEFBa0NYLEtBQUssQ0FBQztNQUNOLFlBQVksRUFBRSxDQUFDO01BQ2YsV0FBVyxFQUFFLEdBQUcsR0FDaEI7RUEvQ0gsQUFtREUsV0FuRFMsQ0FrRFYsQ0FBQyxBQUNDLE1BQU0sQ0FBQztJQUNQLEtBQUssRTNCL0JDLE9BQTJCLEcyQmdDakM7O0FBSUgsQUFBQSxpQkFBaUIsQ0FBQztFQUNqQixLQUFLLEVBQUUsV0FBVyxHQVNsQjtFQVZELEFBR0MsaUJBSGdCLEFBR2YsTUFBTSxDQUFDO0lBQ1AsS0FBSyxFQUFFLGlCQUFpQjtJQUN4QixNQUFNLEVBQUUsSUFBSTtJQUNaLElBQUksRUFBRSxJQUFJO0lBQ1YsR0FBRyxFQUFFLGlCQUFpQjtJQUN0QixpQkFBaUIsRUFBRSxRQUFRLEdBQzNCOztBQ2xFRjs7R0FFRztBQUVILEFBQUEsUUFBUSxDQUFDO0VmUU4sU0FBUyxFQUFFLG9CQUErQjtFQUMxQyxPQUFPLEVBQUUsQ0FBQyxDZURlLElBQUk7RWZLOUIsS0FBSyxFQUFFLElBQUk7RUFDWCxNQUFNLEVBQUUsTUFBTSxHZUxmO0VmNkhDLE1BQU0sTUFBTSxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7SWV0STFDLEFBQUEsUUFBUSxDQUFDO01mUU4sU0FBUyxFQUFFLG9CQUErQjtNQUMxQyxPQUFPLEVBQUUsQ0FBQyxDZVBnQixJQUFJO01mVy9CLEtBQUssRUFBRSxJQUFJO01BQ1gsTUFBTSxFQUFFLE1BQU0sR2VMZjtFZnFJQyxNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO0llOUkxQyxBQUFBLFFBQVEsQ0FBQztNZlFOLFNBQVMsRUFBRSxtQkFBK0I7TUFDMUMsT0FBTyxFQUFFLENBQUMsQ2VKZ0IsSUFBSTtNZlEvQixLQUFLLEVBQUUsSUFBSTtNQUNYLE1BQU0sRUFBRSxNQUFNLEdlTGY7O0FBR0Q7O0dBRUc7QUFFSCxBQUFBLGVBQWUsQ0FBQztFZlJiLFNBQVMsRUFBRSxtQkFBK0I7RUFDMUMsT0FBTyxFQUFFLENBQUMsQ2VZYyxJQUFJO0VmUjdCLEtBQUssRUFBRSxJQUFJO0VBQ1gsTUFBTSxFQUFFLE1BQU07RWVRZixRQUFRLEVBQUUsT0FBTztFQUNqQixVQUFVLEVBQUUsS0FBSyxHQVVqQjtFZnFHQyxNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO0lldEgxQyxBQUFBLGVBQWUsQ0FBQztNQUVkLFVBQVUsRUFBRSxJQUFJLEdBZWpCO0VBakJELEFBU0MsZUFUYyxBQVNiLE1BQU0sQ0FBQztJQUNQLEdBQUcsRUFBRSxLQUFLO0lBQ1YsS0FBSyxFQUFFLENBQUMsR0FDUjs7QS9CZ0JGOztHQUVHO0FnQ2xESCxBQUFBLGFBQWEsQ0FBQztFQUtiLE9BQU8sRUFBRSxNQUFNLEdBWWY7RWhCeUhDLE1BQU0sTUFBTSxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7SWdCMUkxQyxBQUFBLGFBQWEsQ0FBQztNQUVaLE9BQU8sRUFBRSxNQUFNLEdBZWhCO0VBakJELEFBT0MsYUFQWSxBQU9YLE1BQU0sQ0FBQztJQU1QLElBQUksRUFBRSxDQUFDO0lBQ1AsTUFBTSxFQUFFLElBQUk7SUFDWixTQUFTLEVBQUUsWUFBWSxHQUN2QjtJaEIwSEEsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztNZ0IxSTFDLEFBT0MsYUFQWSxBQU9YLE1BQU0sQ0FBQztRQUVOLE1BQU0sRUFBRSxJQUFJO1FBQ1osT0FBTyxFQUFFLElBQUksR0FNZDs7QUFJRixBQUFBLHNCQUFzQixDQUFDO0VBTXRCLEtBQUssRUFBRSxHQUFHO0VBQ1YsYUFBYSxFQUFFLElBQUksR0F3Qm5CO0VoQnVGQyxNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO0lnQnRIMUMsQUFBQSxzQkFBc0IsQ0FBQztNQUVyQixLQUFLLEVBQUUsSUFBSTtNQUNYLE9BQU8sRUFBRSxXQUFXLEdBNEJyQjtFQS9CRCxBQVNDLHNCQVRxQixDQVNyQixHQUFHLENBQUM7SUFDSCxPQUFPLEVBQUUsS0FBSztJQUNkLEtBQUssRUFBRSxJQUFJO0lBQ1gsTUFBTSxFQUFFLElBQUk7SUFDWixhQUFhLEVBQUUsSUFBSTtJQUNuQixLQUFLLEU3QkFFLE9BQXFCLEc2QkM1QjtFQWZGLEFBaUJDLHNCQWpCcUIsQ0FpQnJCLFNBQVMsQ0FBQyxNQUFNLENBQUM7SUFDaEIsV0FBVyxFQUFFLEdBQUcsR0FDaEI7RUFuQkYsQUFxQkMsc0JBckJxQixDQXFCckIsQ0FBQyxBQUFBLFNBQVMsQ0FBQztJQUNWLE9BQU8sRUFBRSxLQUFLO0lBQ2QsVUFBVSxFQUFFLElBQUk7SUFDaEIsS0FBSyxFN0J2QkUsT0FBMkI7STZCd0JsQyxlQUFlLEVBQUUsU0FBUyxHQUsxQjtJQTlCRixBQTJCRSxzQkEzQm9CLENBcUJyQixDQUFDLEFBQUEsU0FBUyxBQU1SLE1BQU0sQ0FBQztNQUNQLEtBQUssRTdCckNDLE9BQTJCLEc2QnNDakM7O0FBSUgsQUFBQSxvQkFBb0IsQ0FBQztFQUNwQixhQUFhLEVBQUUsSUFBSSxHQUNuQjs7QUFFRCxBQUFBLHdCQUF3QixDQUFDO0VBTXhCLEtBQUssRUFBRSxHQUFHLEdBQ1Y7RWhCMEVDLE1BQU0sTUFBTSxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7SWdCakYxQyxBQUFBLHdCQUF3QixDQUFDO01BRXZCLEtBQUssRUFBRSxJQUFJO01BQ1gsU0FBUyxFQUFFLEtBQUssR0FJakI7O0FDaEVELEFBQUEsZ0JBQWdCLENBQUM7RUFLaEIsTUFBTSxFQUFFLGNBQWMsR0FPdEI7RWpCOEhDLE1BQU0sTUFBTSxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7SWlCMUkxQyxBQUFBLGdCQUFnQixDQUFDO01BRWYsTUFBTSxFQUFFLGNBQWMsR0FVdkI7RWpCOEhDLE1BQU0sTUFBTSxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7SWlCMUkxQyxBQU9DLGdCQVBlLENBT2YsUUFBUSxDQUFDO01BRVAsT0FBTyxFQUFFLENBQUMsR0FFWDs7QUFHRixBQUFBLHNCQUFzQixDQUFDO0VBTXRCLFNBQVMsRUFBRSxNQUFNO0VBQ2pCLE1BQU0sRUFBRSxNQUFNO0VBQ2QsT0FBTyxFQUFFLFVBQVU7RUFDbkIsYUFBYSxFQUFFLGdCQUFnQjtFQUMvQixnQkFBZ0IsRTlCbEJSLEtBQW9CLEc4QnNDNUI7RWpCOEZDLE1BQU0sTUFBTSxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7SWlCNUgxQyxBQUFBLHNCQUFzQixDQUFDO01BRXJCLE9BQU8sRUFBRSxTQUFTO01BQ2xCLGFBQWEsRUFBRSxDQUFDLEdBMkJqQjtFQTlCRCxBQVlDLHNCQVpxQixBQVlwQixNQUFNLENBQUM7SUFNUCxHQUFHLEVBQUUsS0FBSztJQUNWLEtBQUssRUFBRSxLQUFLO0lBQ1osT0FBTyxFQUFFLEVBQUUsR0FDWDtJakJ1R0EsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztNaUI1SDFDLEFBWUMsc0JBWnFCLEFBWXBCLE1BQU0sQ0FBQztRQUVOLEtBQUssRUFBRSxJQUFJO1FBQ1gsSUFBSSxFQUFFLENBQUMsR0FNUjtFQXJCRixBQXVCQyxzQkF2QnFCLEFBdUJwQixtQkFBbUIsQ0FBQztJQUNwQixnQkFBZ0IsRTlCR1QsVUFBcUIsRzhCRjVCO0VBekJGLEFBMkJDLHNCQTNCcUIsQUEyQnBCLG1CQUFtQixDQUFDO0lBQ3BCLGdCQUFnQixFOUJqQlQsT0FBd0IsRzhCa0IvQjs7QUFHRixBQUFBLHVCQUF1QixDQUFDO0VBQ3ZCLGFBQWEsRUFBRSxJQUFJLEdBQ25COztBQ2hERCxBQUFBLHFCQUFxQixDQUFDO0VBU3JCLFFBQVEsRUFBRSxRQUFRO0VBQ2xCLE1BQU0sRUFBRSxNQUFNO0VBQ2QsT0FBTyxFQUFFLGVBQWU7RUFDeEIsVUFBVSxFL0JhRixPQUF3QixHK0JtQ2hDO0VsQjhFQyxNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO0lrQjFJMUMsQUFBQSxxQkFBcUIsQ0FBQztNQUVwQixNQUFNLEVBQUUsTUFBTTtNQUNkLE9BQU8sRUFBRSxhQUFhLEdBeUR2QjtFbEJzRkMsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztJa0JsSjFDLEFBQUEscUJBQXFCLENBQUM7TUFNcEIsT0FBTyxFQUFFLGNBQWMsR0FzRHhCO0VBNURELEFBY0MscUJBZG9CLENBY3BCLFFBQVEsQ0FBQztJQVlSLFVBQVUsRUFBRSxNQUFNLEdBQ2xCO0lsQm1HQSxNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxNQUFNO01rQjlIM0MsQUFjQyxxQkFkb0IsQ0FjcEIsUUFBUSxDQUFDO1FBRVAsY0FBYyxFQUFFLFdBQVcsR0FXNUI7SWxCK0dBLE1BQU0sTUFBTSxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7TWtCMUkxQyxBQWNDLHFCQWRvQixDQWNwQixRQUFRLENBQUM7UUFLUCxjQUFjLEVBQUUsT0FBTztRQUN2QixVQUFVLEVBQUUsS0FBSyxHQU9sQjtJbEJ1SEEsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztNa0JsSjFDLEFBY0MscUJBZG9CLENBY3BCLFFBQVEsQ0FBQztRQVNQLFVBQVUsRUFBRSxLQUFLLEdBSWxCO0VBM0JGLEFBNkJDLHFCQTdCb0IsQUE2Qm5CLE9BQU8sRUE3QlQscUJBQXFCLEFBOEJuQixNQUFNLENBQUM7SUFRUCxRQUFRLEVBQUUsUUFBUTtJQUNsQixHQUFHLEVBQUUsQ0FBQztJQUNOLElBQUksRUFBRSxDQUFDO0lBQ1AsS0FBSyxFQUFFLElBQUk7SUFDWCxNQUFNLEVBQUUsS0FBSztJQUNiLFVBQVUsRS9CckNILEtBQW9CO0krQnNDM0IsT0FBTyxFQUFFLEVBQUU7SUFDWCxPQUFPLEVBQUUsQ0FBQyxHQUNWO0lsQjRGQSxNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO01rQjFJMUMsQUE2QkMscUJBN0JvQixBQTZCbkIsT0FBTyxFQTdCVCxxQkFBcUIsQUE4Qm5CLE1BQU0sQ0FBQztRQUVOLE1BQU0sRUFBRSxJQUFJLEdBY2I7SWxCb0dBLE1BQU0sTUFBTSxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7TWtCbEoxQyxBQTZCQyxxQkE3Qm9CLEFBNkJuQixPQUFPLEVBN0JULHFCQUFxQixBQThCbkIsTUFBTSxDQUFDO1FBS04sTUFBTSxFQUFFLElBQUksR0FXYjtFQTlDRixBQWdEQyxxQkFoRG9CLEFBZ0RuQixNQUFNLENBQUM7SUFRUCxNQUFNLEVBQUUsS0FBSztJQUNiLEdBQUcsRUFBRSxJQUFJO0lBQ1QsTUFBTSxFQUFFLENBQUMsR0FDVDtJbEIrRUEsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztNa0IxSTFDLEFBZ0RDLHFCQWhEb0IsQUFnRG5CLE1BQU0sQ0FBQztRQUVOLE1BQU0sRUFBRSxLQUFLLEdBU2Q7SWxCdUZBLE1BQU0sTUFBTSxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7TWtCbEoxQyxBQWdEQyxxQkFoRG9CLEFBZ0RuQixNQUFNLENBQUM7UUFLTixNQUFNLEVBQUUsS0FBSyxHQU1kOztBQUdGLEFBQUEsZ0NBQWdDLENBQUM7RUFLaEMsY0FBYyxFQUFFLENBQUMsR0FLakI7RWxCc0RDLE1BQU0sTUFBTSxNQUFNLE1BQU0sU0FBUyxFQUFFLE1BQU07SWtCaEUzQyxBQUFBLGdDQUFnQyxDQUFDO01BRS9CLGNBQWMsRUFBRSxJQUFJLEdBUXJCO0VBVkQsQUFPQyxnQ0FQK0IsQUFPOUIsTUFBTSxDQUFDO0lBQ1AsT0FBTyxFQUFFLElBQUksR0FDYjs7QUFHRixBQUFBLDRCQUE0QixDQUFDO0VBUzVCLEtBQUssRUFBRSxHQUFHO0VBQ1YsT0FBTyxFQUFFLGNBQWMsR0FDdkI7RWxCeUNDLE1BQU0sTUFBTSxNQUFNLE1BQU0sU0FBUyxFQUFFLE1BQU07SWtCcEQzQyxBQUFBLDRCQUE0QixDQUFDO01BRTNCLEtBQUssRUFBRSxLQUFLO01BQ1osT0FBTyxFQUFFLGdCQUFnQixHQVExQjtFbEJxREMsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztJa0JoRTFDLEFBQUEsNEJBQTRCLENBQUM7TUFNM0IsT0FBTyxFQUFFLElBQUksR0FLZDs7QUFFRCxBQUFBLGlDQUFpQyxDQUFDO0VBTzlCLE9BQU8sRUFBRSxJQUFJO0VBQ2IsY0FBYyxFQUFFLFdBQVc7RUFDM0IsS0FBSyxFQUFFLElBQUk7RUFDZCxNQUFNLEVBQUUsS0FBSyxHQWNiO0VsQmVDLE1BQU0sTUFBTSxNQUFNLE1BQU0sU0FBUyxFQUFFLE1BQU07SWtCdkMzQyxBQUFBLGlDQUFpQyxDQUFDO01BRWhDLGNBQWMsRUFBRSxPQUFPO01BQ3ZCLE1BQU0sRUFBRSxLQUFLO01BQ2IsS0FBSyxFQUFFLEtBQUssR0FvQmI7RUF4QkQsQUFZQyxpQ0FaZ0MsQUFZL0IsTUFBTSxDQUFDO0lBU1AsS0FBSyxFQUFFLEtBQUs7SUFDWixNQUFNLEVBQUUsS0FBSyxHQUNiO0lsQmdCQSxNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxNQUFNO01rQnZDM0MsQUFZQyxpQ0FaZ0MsQUFZL0IsTUFBTSxDQUFDO1FBRU4sS0FBSyxFQUFFLElBQUk7UUFDWCxNQUFNLEVBQUUsS0FBSztRQUNiLElBQUksRUFBRSxLQUFLO1FBQ1gsTUFBTSxFQUFFLEtBQUs7UUFDYixTQUFTLEVBQUUsWUFBWSxHQUt4Qjs7QUFHRixBQUFBLDJCQUEyQixDQUFDO0VBVTNCLFFBQVEsRUFBRSxRQUFRO0VBQ2xCLEtBQUssRUFBRSxHQUFHO0VBQ1YsWUFBWSxFQUFFLElBQUk7RUFDbEIsT0FBTyxFQUFFLENBQUMsR0FDVjtFbEJEQyxNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxNQUFNO0lrQmIzQyxBQUFBLDJCQUEyQixDQUFDO01BRTFCLEtBQUssRUFBRSxrQkFBa0I7TUFDekIsT0FBTyxFQUFFLFVBQVUsR0FXcEI7RWxCV0MsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztJa0J6QjFDLEFBQUEsMkJBQTJCLENBQUM7TUFNMUIsS0FBSyxFQUFFLElBQUk7TUFDWCxPQUFPLEVBQUUsQ0FBQyxHQU9YOztBQUVELEFBQUEsNkJBQTZCLENBQUM7RUFDN0IsTUFBTSxFQUFFLGFBQWEsR0FDckI7O0FBRUQsQUFBQSw2QkFBNkIsQ0FBQztFQWE3QixNQUFNLEVBQUUsZUFBZSxHQUN2QjtFbEJyQkMsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsTUFBTTtJa0JPM0MsQUFBQSw2QkFBNkIsQ0FBQztNQUU1QixRQUFRLEVBQUUsUUFBUTtNQUNsQixNQUFNLEVBQUUsS0FBSyxHQVdkO0VsQlRDLE1BQU0sTUFBTSxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7SWtCTDFDLEFBQUEsNkJBQTZCLENBQUM7TUFNNUIsTUFBTSxFQUFFLGVBQWU7TUFDdkIsTUFBTSxFQUFFLElBQUksR0FPYjtFbEJEQyxNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO0lrQmIxQyxBQUFBLDZCQUE2QixDQUFDO01BVTVCLE1BQU0sRUFBRSxlQUFlLEdBSXhCOztBQUdEOztHQUVHO0FBRUgsQUFBQSw2QkFBNkIsQ0FBQztFQU83QixRQUFRLEVBQUUsUUFBUTtFQUNsQixLQUFLLEVBQUUsS0FBSztFQUNaLE1BQU0sRUFBRSxLQUFLO0VBQ2IsYUFBYSxFQUFFLGFBQWE7RUFDNUIsZ0JBQWdCLEUvQi9IUixPQUFxQjtFK0JnSTdCLFFBQVEsRUFBRSxNQUFNLEdBQ2hCO0VsQnpDQyxNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxNQUFNO0lrQjRCM0MsQUFBQSw2QkFBNkIsQ0FBQztNQUU1QixLQUFLLEVBQUUsS0FBSztNQUNaLE1BQU0sRUFBRSxLQUFLO01BQ2IsYUFBYSxFQUFFLGFBQWEsR0FTN0I7O0FBRUQsQUFBQSxrQ0FBa0MsQ0FBQztFQUtsQyxRQUFRLEVBQUUsUUFBUTtFQUNsQixLQUFLLEVBQUUsSUFBSTtFQUNYLE1BQU0sRUFBRSxJQUFJO0VBQ1osZ0JBQWdCLEUvQjNJUixPQUFxQjtFK0I0STdCLFVBQVUsRUFBRSxjQUFjLEdBMkIxQjtFbEIvRUMsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsTUFBTTtJa0IyQzNDLEFBQUEsa0NBQWtDLENBQUM7TUFFakMsTUFBTSxFQUFFLElBQUksR0FrQ2I7RUFwQ0QsQUFXQyxrQ0FYaUMsQUFXaEMsVUFBVSxDQUFDO0lBS1gsTUFBTSxFQUFFLEtBQUssR0FjYjtJbEJ6RUEsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsTUFBTTtNa0IyQzNDLEFBV0Msa0NBWGlDLEFBV2hDLFVBQVUsQ0FBQztRQUVWLE1BQU0sRUFBRSxLQUFLLEdBaUJkO0lBOUJGLEFBa0JFLGtDQWxCZ0MsQUFXaEMsVUFBVSxDQU9WLEdBQUcsQ0FBQztNQUNILE1BQU0sRUFBRSxPQUFPLEdBQ2Y7SUFwQkgsQUFzQkUsa0NBdEJnQyxBQVdoQyxVQUFVLENBV1YsbUNBQW1DLENBQUM7TUFDbkMsT0FBTyxFQUFFLElBQUk7TUFDYixPQUFPLEVBQUUsQ0FBQyxHQUNWO0lBekJILEFBMkJFLGtDQTNCZ0MsQUFXaEMsVUFBVSxDQWdCVixtQ0FBbUMsQ0FBQztNQUNuQyxPQUFPLEVBQUUsQ0FBQyxHQUNWO0VBN0JILEFBZ0NDLGtDQWhDaUMsQ0FnQ2pDLEdBQUcsQ0FBQztJQUNILE9BQU8sRUFBRSxFQUFFO0lBQ1gsTUFBTSxFQUFFLFVBQVUsR0FDbEI7O0FBR0YsQUFBQSxrQ0FBa0MsQ0FBQztFQUNsQyxRQUFRLEVBQUUsUUFBUTtFQUNsQixLQUFLLEVBQUUsSUFBSTtFQUNYLE1BQU0sRUFBRSxJQUFJO0VBQ1osT0FBTyxFQUFFLEVBQUUsR0FZWDtFQWhCRCxBQU1DLGtDQU5pQyxDQU1qQyxDQUFDLENBQUM7SUFLRCxlQUFlLEVBQUUsUUFBUTtJQUN6QixhQUFhLEVBQUUsUUFBUTtJQUN2QixLQUFLLEVBQUUsSUFBSTtJQUNYLE1BQU0sRUFBRSxJQUFJLEdBQ1o7SWxCaEdBLE1BQU0sTUFBTSxNQUFNLE1BQU0sU0FBUyxFQUFFLE1BQU07TWtCaUYzQyxBQU1DLGtDQU5pQyxDQU1qQyxDQUFDLENBQUM7UUFFQSxlQUFlLEVBQUUsVUFBVSxHQU81Qjs7QUFHRixBQUFBLG1DQUFtQyxDQUFDO0VBUW5DLFlBQVksRUFBRSxJQUFJO0VBQ2xCLGFBQWEsRUFBRSxHQUFHO0VBQ2xCLE9BQU8sRUFBRSxHQUFHO0VBQ1osVUFBVSxFQUFFLGNBQWMsR0FLMUI7RWxCbkhDLE1BQU0sTUFBTSxNQUFNLE1BQU0sU0FBUyxFQUFFLE1BQU07SWtCbUczQyxBQUFBLG1DQUFtQyxDQUFDO01BRWxDLElBQUksRUFBRSxDQUFDO01BQ1AsS0FBSyxFQUFFLElBQUk7TUFDWCxZQUFZLEVBQUUsQ0FBQztNQUNmLFdBQVcsRUFBRSxJQUFJLEdBV2xCO0VBaEJELEFBYUMsbUNBYmtDLENBYWxDLEdBQUcsQ0FBQztJQUNILFlBQVksRUFBRSxHQUFHLEdBQ2pCOztBQUdGLEFBQUEsbUNBQW1DLENBQUM7RWxCN0xsQyxTQUFTLEVrQm9NSSxJQUFJO0VsQm5NakIsU0FBUyxFRjVCRixNQUF5QjtFRWlDaEMsV0FBVyxFQUFFLE1BQW1DO0VrQitMakQsV0FBVyxFQUFFLFFBQVE7RUFDckIsWUFBWSxFQUFFLElBQUk7RUFDbEIsYUFBYSxFQUFFLElBQUk7RUFDbkIsS0FBSyxFL0J4UEcsS0FBb0I7RStCeVA1QixXQUFXLEVBQUUsR0FBRztFQUNoQixPQUFPLEVBQUUsQ0FBQztFQUNWLFVBQVUsRUFBRSxjQUFjLEdBQzFCO0VsQnBJQyxNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxNQUFNO0lrQnFIM0MsQUFBQSxtQ0FBbUMsQ0FBQztNQUVsQyxZQUFZLEVBQUUsQ0FBQztNQUNmLFdBQVcsRUFBRSxJQUFJO01BQ2pCLGFBQWEsRUFBRSxJQUFJLEdBV3BCOztBQ2xRRCxBQUNDLGtCQURpQixDQUNqQixRQUFRLENBQUM7RUFLUixRQUFRLEVBQUUsUUFBUTtFQUNsQixXQUFXLEVBQUUsSUFBSTtFQUNqQixjQUFjLEVBQUUsSUFBSSxHQUNwQjtFbkJ5SUEsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztJbUJsSjFDLEFBQ0Msa0JBRGlCLENBQ2pCLFFBQVEsQ0FBQztNQUVQLGNBQWMsRUFBRSxJQUFJLEdBTXJCOztBQUdGLEFBQUEsd0JBQXdCLENBQUM7RUFReEIsUUFBUSxFQUFFLFFBQVE7RUFDbEIsS0FBSyxFQUFFLElBQUk7RUFDWCxTQUFTLEVBQUUsS0FBSztFQUNoQixPQUFPLEVBQUUscUJBQXFCO0VBQzlCLGdCQUFnQixFaENIUixPQUEyQjtFZ0NJbkMsYUFBYSxFQUFFLEdBQUcsR0FrQmxCO0VuQitGQyxNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO0ltQjlIMUMsQUFBQSx3QkFBd0IsQ0FBQztNQUV2QixPQUFPLEVBQUUsbUJBQW1CLEdBNkI3QjtFbkJ1R0MsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztJbUJ0STFDLEFBQUEsd0JBQXdCLENBQUM7TUFLdkIsT0FBTyxFQUFFLG1CQUFtQixHQTBCN0I7RUEvQkQsQUFlQyx3QkFmdUIsQUFldEIsTUFBTSxDQUFDO0lBV1AsR0FBRyxFQUFFLEtBQUs7SUFDVixJQUFJLEVBQUUsS0FBSztJQUNYLFNBQVMsRUFBRSxjQUFjO0lBQ3pCLE9BQU8sRUFBRSxFQUFFLEdBQ1g7SW5Cb0ZBLE1BQU0sTUFBTSxNQUFNLE1BQU0sU0FBUyxFQUFFLE1BQU07TW1CbEgzQyxBQWVDLHdCQWZ1QixBQWV0QixNQUFNLENBQUM7UUFFTixJQUFJLEVBQUUsSUFBSSxHQWFYO0luQmdHQSxNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO01tQjlIMUMsQUFlQyx3QkFmdUIsQUFldEIsTUFBTSxDQUFDO1FBS04sSUFBSSxFQUFFLE1BQU0sR0FVYjtJbkJ3R0EsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztNbUJ0STFDLEFBZUMsd0JBZnVCLEFBZXRCLE1BQU0sQ0FBQztRQVFOLE9BQU8sRUFBRSxJQUFJLEdBT2Q7O0FBR0YsQUFBQSx5QkFBeUIsQ0FBQztFQUN6QixhQUFhLEVBQUUsSUFBSSxHQUNuQjs7QUFFRCxBQUFBLDBCQUEwQixDQUFFO0VuQksxQixTQUFTLEVtQkpJLElBQUk7RW5CS2pCLFNBQVMsRUY1QkYsTUFBeUI7RUVpQ2hDLFdBQVcsRUFBRSxHQUFtQztFbUJUakQsV0FBVyxFQUFFLEdBQUc7RUFDaEIsS0FBSyxFaEM5Q0csS0FBb0IsR2dDK0M1Qjs7QUFFRCxBQUFBLDBCQUEwQixDQUFDO0VBTzFCLFFBQVEsRUFBRSxRQUFRO0VBQ2xCLEtBQUssRUFBRSxLQUFLO0VBQ1osTUFBTSxFQUFFLEtBQUssR0FDYjtFbkJpRkMsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztJbUIzRjFDLEFBQUEsMEJBQTBCLENBQUM7TUFFekIsTUFBTSxFQUFFLEtBQUs7TUFDYixJQUFJLEVBQUUsSUFBSTtNQUNWLEtBQUssRUFBRSxpQkFBaUIsR0FNekI7O0FuQjZEQyxNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxNQUFNO0VtQjNEM0MsQUFBQSw4QkFBOEIsQ0FBQztJQUU3QixRQUFRLEVBQUUsUUFBUTtJQUNsQixTQUFTLEVBQUUsS0FBSztJQUNoQixNQUFNLEVBQUUsSUFBSTtJQUNaLEdBQUcsRUFBRSxDQUFDO0lBQ04sSUFBSSxFQUFFLENBQUM7SUFDUCxLQUFLLEVBQUUsQ0FBQztJQUNSLE1BQU0sRUFBRSxNQUFNLEdBeUJmOztBbkJzQ0MsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztFbUJ2RTFDLEFBQUEsOEJBQThCLENBQUM7SUFXN0IsTUFBTSxFQUFFLENBQUM7SUFDVCxJQUFJLEVBQUUsSUFBSSxHQXFCWDs7QUFqQ0QsQUFlQyw4QkFmNkIsQUFlNUIsT0FBTyxDQUFDO0VBU1IsUUFBUSxFQUFFLFFBQVE7RUFDbEIsTUFBTSxFQUFFLENBQUM7RUFDVCxJQUFJLEVBQUUsS0FBSztFQUNYLEtBQUssRUFBRSxLQUFLO0VBQ1osTUFBTSxFQUFFLElBQUk7RUFDWixVQUFVLEVoQ3ZESCxVQUFxQjtFZ0N3RDVCLE9BQU8sRUFBRSxFQUFFO0VBQ1gsT0FBTyxFQUFFLEVBQUUsR0FDWDtFbkIyQkEsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsTUFBTTtJbUIzRDNDLEFBZUMsOEJBZjZCLEFBZTVCLE9BQU8sQ0FBQztNQUVQLElBQUksRUFBRSxLQUFLLEdBZVo7RW5CK0NBLE1BQU0sTUFBTSxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7SW1CL0UxQyxBQWVDLDhCQWY2QixBQWU1QixPQUFPLENBQUM7TUFLUCxJQUFJLEVBQUUsTUFBTTtNQUNaLEtBQUssRUFBRSxtQkFBbUIsR0FXM0I7O0FDbkdGLEFBQUEscUJBQXFCLENBQUM7RUFLckIsT0FBTyxFQUFFLGNBQWMsR0FLdkI7RXBCZ0lDLE1BQU0sTUFBTSxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7SW9CMUkxQyxBQUFBLHFCQUFxQixDQUFDO01BRXBCLE1BQU0sRUFBRSxNQUFNLEdBUWY7RUFWRCxBQU9DLHFCQVBvQixDQU9wQixRQUFRLENBQUM7SUFDUixRQUFRLEVBQUUsUUFBUSxHQUNsQjs7QXBCcUhBLE1BQU0sTUFBTSxNQUFNLE1BQU0sU0FBUyxFQUFFLE1BQU07RW9CbEgzQyxBQUFBLHVDQUF1QyxDQUFDO0lwQjBDdEMsU0FBUyxFb0J4Q0ssSUFBSTtJcEJ5Q2xCLFNBQVMsRUY1QkYsSUFBeUI7SUVpQ2hDLFdBQVcsRUFBRSxHQUFtQztJb0I3Q2hELGFBQWEsRUFBRSxJQUFJO0lBQ25CLGNBQWMsRUFBRSxNQUFNO0lBQ3RCLEtBQUssRWpDQ0EsdUJBQThCLEdpQ0NwQzs7QUFFRCxBQUFBLDJCQUEyQixDQUFDO0VBQzNCLFdBQVcsRUFBRSxNQUFNLEdBQ25COztBQUVELEFBQUEsNEJBQTRCLENBQUM7RUFDNUIsYUFBYSxFQUFFLElBQUksR0FDbkI7O0FBRUQsQUFBQSwyQkFBMkIsQ0FBQztFQVczQixRQUFRLEVBQUUsUUFBUTtFQUNsQixLQUFLLEVBQUUsSUFBSTtFQUNYLFNBQVMsRUFBRSxLQUFLO0VBQ2hCLE9BQU8sRUFBRSxhQUFhO0VBQ3RCLGFBQWEsRUFBRSxHQUFHO0VBQ2xCLGdCQUFnQixFakN2Q1IsS0FBb0IsR2lDNkM1QjtFcEJ1RkMsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztJb0I3RzFDLEFBQUEsMkJBQTJCLENBQUM7TUFFMUIsU0FBUyxFQUFFLEtBQUs7TUFDaEIsT0FBTyxFQUFFLFVBQVUsR0FtQnBCO0VwQitGQyxNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO0lvQnJIMUMsQUFBQSwyQkFBMkIsQ0FBQztNQU0xQixLQUFLLEVBQUUsSUFBSTtNQUNYLFVBQVUsRUFBRSxJQUFJO01BQ2hCLE9BQU8sRUFBRSxJQUFJLEdBY2Q7RUF0QkQsQUFrQkMsMkJBbEIwQixDQWtCMUIsQ0FBQyxDQUFDO0lBQ0QsUUFBUSxFQUFFLFFBQVE7SUFDbEIsT0FBTyxFQUFFLENBQUMsR0FDVjs7QUFHRixBQUFBLDZCQUE2QixDQUFDO0VBUTdCLE9BQU8sRUFBRSxVQUFVO0VBQ25CLGdCQUFnQixFakN4RFIsS0FBb0I7RWlDeUQ1QixPQUFPLEVBQUUsQ0FBQyxHQUtWO0VwQnNFQyxNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO0lvQnJGMUMsQUFBQSw2QkFBNkIsQ0FBQztNQUU1QixPQUFPLEVBQUUsYUFBYSxHQWF2QjtFcEI4RUMsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztJb0I3RjFDLEFBQUEsNkJBQTZCLENBQUM7TUFLNUIsT0FBTyxFQUFFLENBQUMsR0FVWDtFQWZELEFBWUMsNkJBWjRCLENBWTVCLENBQUMsQ0FBQztJQUNELE9BQU8sRUFBRSxDQUFDLEdBQ1Y7O0FBR0YsQUFBQSxtQ0FBbUMsQ0FBQztFQUNuQyxNQUFNLEVBQUUsS0FBSyxHQUNiOztBQUVELEFBQUEsNEJBQTRCLENBQUM7RUFnQjVCLFFBQVEsRUFBRSxRQUFRO0VBQ2xCLElBQUksRUFBRSxLQUFLO0VBQ1gsTUFBTSxFQUFFLENBQUM7RUFDVCxLQUFLLEVBQUUsbUJBQW1CO0VBQzFCLE1BQU0sRUFBRSxLQUFLO0VBQ2IsT0FBTyxFQUFFLEVBQUUsR0FTWDtFcEJzQkMsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsTUFBTTtJb0JwRDNDLEFBQUEsNEJBQTRCLENBQUM7TUFFM0IsSUFBSSxFQUFFLEtBQUs7TUFDWCxLQUFLLEVBQUUsbUJBQW1CLEdBMkIzQjtFcEJrQ0MsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztJb0JoRTFDLEFBQUEsNEJBQTRCLENBQUM7TUFNM0IsSUFBSSxFQUFFLEtBQUs7TUFDWCxLQUFLLEVBQUUsbUJBQW1CLEdBdUIzQjtFcEIwQ0MsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztJb0J4RTFDLEFBQUEsNEJBQTRCLENBQUM7TUFVM0IsR0FBRyxFQUFFLEtBQUs7TUFDVixJQUFJLEVBQUUsQ0FBQztNQUNQLEtBQUssRUFBRSxJQUFJO01BQ1gsTUFBTSxFQUFFLEtBQUssR0FpQmQ7RUE5QkQsQUF1QkMsNEJBdkIyQixDQXVCM0IsR0FBRyxDQUFDO0lBS0gsYUFBYSxFQUFFLEdBQUcsR0FDbEI7SXBCMkNBLE1BQU0sTUFBTSxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7TW9CeEUxQyxBQXVCQyw0QkF2QjJCLENBdUIzQixHQUFHLENBQUM7UUFFRixhQUFhLEVBQUUsQ0FBQyxHQUlqQjs7QUFJRjs7R0FFRztBQUVILEFBQUEsOEJBQThCLENBQUM7RUFrQjlCLFFBQVEsRUFBRSxRQUFRO0VBQ2xCLElBQUksRUFBRSxLQUFLO0VBQ1gsTUFBTSxFQUFFLE1BQU07RUFDZCxLQUFLLEVBQUUsS0FBSztFQUNaLE1BQU0sRUFBRSxLQUFLO0VBQ2IsT0FBTyxFQUFFLFNBQVM7RUFDbEIsVUFBVSxFakM5R0YsT0FBd0IsR2lDeUhoQztFcEJwQkMsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsTUFBTTtJb0JmM0MsQUFBQSw4QkFBOEIsQ0FBQztNQUU3QixJQUFJLEVBQUUsS0FBSyxHQWlDWjtFcEJSQyxNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO0lvQjNCMUMsQUFBQSw4QkFBOEIsQ0FBQztNQUs3QixJQUFJLEVBQUUsSUFBSTtNQUNWLEtBQUssRUFBRSxJQUFJO01BQ1gsTUFBTSxFQUFFLE1BQU0sR0E0QmY7RXBCQUMsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztJb0JuQzFDLEFBQUEsOEJBQThCLENBQUM7TUFVN0IsUUFBUSxFQUFFLFFBQVE7TUFDbEIsTUFBTSxFQUFFLElBQUk7TUFDWixVQUFVLEVBQUUsSUFBSTtNQUNoQixLQUFLLEVBQUUsSUFBSTtNQUNYLE1BQU0sRUFBRSxJQUFJO01BQ1osS0FBSyxFQUFFLElBQUksR0FvQlo7RUFuQ0QsQUEwQkMsOEJBMUI2QixBQTBCNUIsTUFBTSxDQUFDO0lBTVAsR0FBRyxFQUFFLEtBQUs7SUFDVixLQUFLLEVBQUUsS0FBSyxHQUNaO0lwQkNBLE1BQU0sTUFBTSxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7TW9CbkMxQyxBQTBCQyw4QkExQjZCLEFBMEI1QixNQUFNLENBQUM7UUFFTixHQUFHLEVBQUUsS0FBSztRQUNWLEtBQUssRUFBRSxLQUFLLEdBS2I7O0FBR0YsQUFBQSxvQ0FBb0MsQ0FBQztFQUNwQyxhQUFhLEVBQUUsSUFBSSxHQUNuQjs7QUFFRCxBQUFBLG1DQUFtQyxDQUFDO0VBQ25DLGFBQWEsRUFBRSxJQUFJO0VBQ25CLFdBQVcsRUFBRSxHQUFHLEdBQ2hCOztBQUVELEFBQUEscUNBQXFDLENBQUM7RUFDckMsVUFBVSxFQUFFLElBQUk7RUFDaEIsV0FBVyxFQUFFLElBQUk7RUFDakIsVUFBVSxFQUFFLEdBQUcsQ0FBQyxLQUFLLENqQzFKYixLQUFvQixHaUMySjVCOztBQUVELEFBQUEsb0NBQW9DLENBQUM7RUFLcEMsV0FBVyxFQUFFLE1BQU07RUFDbkIsS0FBSyxFQUFFLEtBQUssR0FxQlo7RXBCNUNDLE1BQU0sTUFBTSxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7SW9CaUIxQyxBQUFBLG9DQUFvQyxDQUFDO01BRW5DLGFBQWEsRUFBRSxJQUFJLEdBeUJwQjtFQTNCRCxBQVFDLG9DQVJtQyxDQVFuQyxHQUFHLENBQUM7SUFDSCxLQUFLLEVBQUUsSUFBSTtJQUNYLE1BQU0sRUFBRSxJQUFJO0lBQ1osS0FBSyxFakN6SkUsT0FBMkIsR2lDMEpsQztFQVpGLEFBY0Msb0NBZG1DLENBY25DLFNBQVMsQ0FBQztJcEIzSFQsU0FBUyxFb0I0SEssSUFBSTtJcEIzSGxCLFNBQVMsRUY1QkYsSUFBeUI7SUVpQ2hDLFdBQVcsRUFBRSxLQUFtQztJb0J1SGhELFdBQVcsRUFBRSxHQUFHO0lBQ2hCLEtBQUssRWpDL0pFLE9BQTJCO0lpQ2dLbEMsV0FBVyxFQUFFLElBQUksR0FDakI7RUFuQkYsQUFxQkMsb0NBckJtQyxDQXFCbkMsU0FBUyxDQUFDO0lwQmxJVCxTQUFTLEVvQm1JSyxJQUFJO0lwQmxJbEIsU0FBUyxFRjVCRixNQUF5QjtJRWlDaEMsV0FBVyxFQUFFLEdBQW1DO0lvQjhIaEQsV0FBVyxFQUFFLEdBQUc7SUFDaEIsS0FBSyxFakN6SkUsT0FBcUI7SWlDMEo1QixXQUFXLEVBQUUsR0FBRyxHQUNoQjs7QUFJRjs7R0FFRztBQUVILEFBQUEsNEJBQTRCLENBQUM7RUFDNUIsUUFBUSxFQUFFLFFBQVE7RUFDbEIsR0FBRyxFQUFFLE1BQU07RUFDWCxJQUFJLEVBQUUsSUFBSTtFQUNWLEtBQUssRUFBRSxDQUFDO0VBQ1IsTUFBTSxFQUFFLEtBQUs7RUFDYixLQUFLLEVBQUUsS0FBSztFQUNaLE9BQU8sRUFBRSxJQUFJO0VBQ2IsT0FBTyxFQUFFLENBQUM7RUFDVixPQUFPLEVBQUUsR0FBRyxHQW1DWjtFQTVDRCxBQVdDLDRCQVgyQixHQVd6QixJQUFJLENBQUM7SUFDTixPQUFPLEVBQUUsS0FBSztJQUNkLEtBQUssRUFBRSxHQUFHO0lBQ1YsTUFBTSxFQUFFLElBQUk7SUFDWixnQkFBZ0IsRWpDM0xULE9BQXdCLEdpQ3VOL0I7SUEzQ0YsQUFpQkUsNEJBakIwQixHQVd6QixJQUFJLEFBTUosVUFBVyxDQUFBLENBQUMsRUFBRTtNQUtkLFlBQVksRUFBRSxLQUFLLEdBQ25CO01wQjFFRCxNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO1FvQm1EMUMsQUFpQkUsNEJBakIwQixHQVd6QixJQUFJLEFBTUosVUFBVyxDQUFBLENBQUMsRUFBRTtVQUViLE9BQU8sRUFBRSxJQUFJLEdBSWQ7SUF2QkgsQUF5QkUsNEJBekIwQixHQVd6QixJQUFJLEFBY0osVUFBVyxDQUFBLENBQUMsRUFBRTtNQUtkLE1BQU0sRUFBRSxpQkFBaUI7TUFDekIsVUFBVSxFQUFFLElBQUk7TUFDaEIsWUFBWSxFQUFFLEtBQUssR0FDbkI7TXBCNUZELE1BQU0sTUFBTSxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7UW9CMkQxQyxBQXlCRSw0QkF6QjBCLEdBV3pCLElBQUksQUFjSixVQUFXLENBQUEsQ0FBQyxFQUFFO1VBRWIsT0FBTyxFQUFFLElBQUksR0FNZDtJQWpDSCxBQW1DRSw0QkFuQzBCLEdBV3pCLElBQUksQUF3QkosVUFBVyxDQUFBLENBQUMsRUFBRTtNQUtkLFVBQVUsRUFBRSxJQUFJO01BQ2hCLE1BQU0sRUFBRSxpQkFBaUIsR0FDekI7TXBCakhELE1BQU0sTUFBTSxNQUFNLE1BQU0sU0FBUyxFQUFFLE1BQU07UW9CdUUzQyxBQW1DRSw0QkFuQzBCLEdBV3pCLElBQUksQUF3QkosVUFBVyxDQUFBLENBQUMsRUFBRTtVQUViLE9BQU8sRUFBRSxJQUFJLEdBS2Q7O0FDL09ILEFBQUEsYUFBYSxDQUFDO0VBQ2IsUUFBUSxFQUFFLFFBQVEsR0FDbEI7O0FBR0Q7O0dBRUc7QUFFSCxBQUFBLG9CQUFvQixDQUFDO0VBQ3BCLFFBQVEsRUFBRSxRQUFRO0VBQ2xCLEdBQUcsRUFBRSxDQUFDO0VBQ04sSUFBSSxFQUFFLENBQUM7RUFDUCxNQUFNLEVBQUUsS0FBSztFQUNiLE9BQU8sRUFBRSxDQUFDLEdBQ1Y7O0FBRUQsQUFBQSwyQkFBMkIsQ0FBQztFQUMzQixRQUFRLEVBQUUsUUFBUTtFQUNsQixHQUFHLEVBQUUsQ0FBQztFQUNOLEtBQUssRUFBRSxDQUFDO0VBQ1IsSUFBSSxFQUFFLENBQUMsR0FDUDs7QUFFRCxBQUFBLHlCQUF5QixDQUFDO0VBQ3pCLFFBQVEsRUFBRSxRQUFRO0VBQ2xCLEdBQUcsRUFBRSxDQUFDO0VBQ04sSUFBSSxFQUFFLENBQUM7RUFDUCxTQUFTLEVBQUUsS0FBSztFQUNoQixPQUFPLEVBQUUsZ0JBQWdCO0VBQ3pCLE9BQU8sRUFBRSxDQUFDLEdBa0JWO0VBeEJELEFBUUMseUJBUndCLEFBUXZCLE9BQU8sQ0FBQztJQUNSLFFBQVEsRUFBRSxRQUFRO0lBQ2xCLEdBQUcsRUFBRSxDQUFDO0lBQ04sS0FBSyxFQUFFLENBQUM7SUFDUixLQUFLLEVBQUUsS0FBSztJQUNaLE1BQU0sRUFBRSxJQUFJO0lBQ1osZ0JBQWdCLEVsQ2JULE9BQXdCO0lrQ2MvQixhQUFhLEVBQUUsVUFBVTtJQUN6QixPQUFPLEVBQUUsRUFBRTtJQUNYLE9BQU8sRUFBRSxFQUFFLEdBQ1g7RUFsQkYsQUFvQkMseUJBcEJ3QixBQW9CdkIsTUFBTSxDQUFDO0lBQ1AsS0FBSyxFQUFFLEtBQUs7SUFDWixNQUFNLEVBQUUsS0FBSyxHQUNiOztBQU9GLEFBQUEsMkJBQTJCLENBQUM7RUFDM0IsVUFBVSxFQUFFLElBQUksR0FDaEI7O0FBRUQsQUFBQSwyQkFBMkIsQ0FBQztFQUMzQixXQUFXLEVBQUUsTUFBTTtFQUNuQixVQUFVLEVBQUUsSUFBSTtFQUNoQixXQUFXLEVBQUUsSUFBSTtFQUNqQixVQUFVLEVBQUUsR0FBRyxDQUFDLEtBQUssQ2xDeERiLEtBQW9CLEdrQ3lENUI7O0FBRUQsQUFBQSx5QkFBeUIsQ0FBQztFQU16QixLQUFLLEVBQUUsS0FBSyxHQUNaO0VyQmtFQyxNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO0lxQnpFMUMsQUFBQSx5QkFBeUIsQ0FBQztNQUV4QixLQUFLLEVBQUUsSUFBSTtNQUNYLGFBQWEsRUFBRSxJQUFJLEdBSXBCOztBQUVELEFBQUEsNEJBQTRCLENBQUM7RUFLNUIsS0FBSyxFQUFFLGtCQUFtQixHQUMxQjtFckIwREMsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztJcUJoRTFDLEFBQUEsNEJBQTRCLENBQUM7TUFFM0IsS0FBSyxFQUFFLElBQUksR0FJWjs7QUFHRDs7R0FFRztBQUVILEFBQUEsMkJBQTJCLENBQUM7RUFDM0IsUUFBUSxFQUFFLFFBQVE7RUFDbEIsVUFBVSxFQUFFLEtBQUs7RUFDakIsT0FBTyxFQUFFLENBQUMsR0FDVjs7QUFFRCxBQUFBLG1CQUFtQixDQUFDO0VBS25CLE9BQU8sRUFBRSxvQkFBb0I7RUFDN0IsZ0JBQWdCLEVsQzdGUixLQUFvQjtFa0M4RjVCLFVBQVUsRUFBRSxNQUFNO0VBQ2xCLGFBQWEsRUFBRSxhQUFhLEdBQzVCO0VyQm9DQyxNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO0lxQjdDMUMsQUFBQSxtQkFBbUIsQ0FBQztNQUVsQixPQUFPLEVBQUUsZUFBZSxHQU96Qjs7QUFFRCxBQUFBLHFCQUFxQixDQUFDO0VBQ3JCLFNBQVMsRUFBRSxLQUFLO0VBQ2hCLE1BQU0sRUFBRSxnQkFBZ0IsR0FDeEI7O0FBRUQ7O0dBRUc7QXJCbUNELE1BQU0sTUFBTSxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7RXFCakMxQyxBQUNDLGFBRFksQUFBQSxTQUFTLENBQ3JCLG9CQUFvQixDQUFDO0lBRW5CLE1BQU0sRUFBRSxLQUFLLEdBRWQ7O0FDdEhGLEFBQUEsWUFBWSxDQUFDO0VBTVosT0FBTyxFQUFFLGVBQWUsR0E4QnhCO0V0QnNHQyxNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO0lzQjFJMUMsQUFBQSxZQUFZLENBQUM7TUFFWCxhQUFhLEVBQUUsS0FBSztNQUNwQixPQUFPLEVBQUUsZUFBZSxHQWlDekI7RUFwQ0QsQUFRQyxZQVJXLENBUVgsUUFBUSxDQUFDO0lBQ1IsUUFBUSxFQUFFLFFBQVE7SUFDbEIsV0FBVyxFQUFFLE1BQU0sR0F5Qm5CO0l0QnVHQSxNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO01zQjFJMUMsQUFZRSxZQVpVLENBUVgsUUFBUSxBQUlOLE9BQU8sQ0FBQztRQUVQLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLElBQUksRUFBRSxLQUFLO1FBQ1gsTUFBTSxFQUFFLElBQUk7UUFDWixLQUFLLEVBQUUsS0FBSztRQUNaLE1BQU0sRUFBRSxpQkFBaUI7UUFDekIsZ0JBQWdCLEVuQ01YLE9BQXdCO1FtQ0w3QixPQUFPLEVBQUUsRUFBRTtRQUNYLE9BQU8sRUFBRSxFQUFFLEdBRVo7SUF2QkgsQUF5QkUsWUF6QlUsQ0FRWCxRQUFRLEFBaUJOLE1BQU0sQ0FBQztNQU9QLE1BQU0sRUFBRSxLQUFLO01BQ2IsS0FBSyxFQUFFLElBQUksR0FDWDtNdEJ3R0QsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztRc0IxSTFDLEFBeUJFLFlBekJVLENBUVgsUUFBUSxBQWlCTixNQUFNLENBQUM7VUFFTixLQUFLLEVBQUUsSUFBSTtVQUNYLElBQUksRUFBRSxDQUFDO1VBQ1AsTUFBTSxFQUFFLEtBQUssR0FLZDs7QUFLSDs7R0FFRztBQUVILEFBQUEsa0JBQWtCLENBQUM7RUFVbEIsUUFBUSxFQUFFLFFBQVE7RUFDbEIsS0FBSyxFQUFFLEdBQUc7RUFDVixPQUFPLEVBQUUsaUJBQWlCLEdBbUIxQjtFdEJvREMsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsTUFBTTtJc0JuRjNDLEFBQUEsa0JBQWtCLENBQUM7TUFFakIsS0FBSyxFQUFFLEdBQUc7TUFDVixhQUFhLEVBQUUsSUFBSSxHQTRCcEI7RXRCZ0VDLE1BQU0sTUFBTSxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7SXNCL0YxQyxBQUFBLGtCQUFrQixDQUFDO01BTWpCLEtBQUssRUFBRSxJQUFJO01BQ1gsT0FBTyxFQUFFLGNBQWMsR0F3QnhCO0VBL0JELEFBY0Msa0JBZGlCLEFBY2hCLE9BQU8sQ0FBQztJQU9SLFFBQVEsRUFBRSxRQUFRO0lBQ2xCLEdBQUcsRUFBRSxDQUFDO0lBQ04sS0FBSyxFQUFFLE1BQU07SUFDYixLQUFLLEVBQUUsS0FBSztJQUNaLE1BQU0sRUFBRSxJQUFJO0lBQ1osZ0JBQWdCLEVuQzVDVCxPQUF3QjtJbUM2Qy9CLGFBQWEsRUFBRSxhQUFhO0lBQzVCLE9BQU8sRUFBRSxFQUFFO0lBQ1gsT0FBTyxFQUFFLEVBQUUsR0FDWDtJdEJpRUEsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztNc0IvRjFDLEFBY0Msa0JBZGlCLEFBY2hCLE9BQU8sQ0FBQztRQUVQLElBQUksRUFBRSxLQUFLO1FBQ1gsS0FBSyxFQUFFLElBQUk7UUFDWCxhQUFhLEVBQUUsQ0FBQyxHQVlqQjs7QUFHRixBQUFBLHdCQUF3QixDQUFDO0VBQ3hCLFFBQVEsRUFBRSxRQUFRO0VBQ2xCLEdBQUcsRUFBRSxDQUFDO0VBQ04sU0FBUyxFQUFFLEtBQUs7RUFDaEIsYUFBYSxFQUFFLElBQUk7RUFDbkIsU0FBUyxFQUFFLGdCQUFnQixHQUMzQjs7QUFVRCxBQUFBLG9CQUFvQixDQUFDO0VBQ3BCLFdBQVcsRUFBRSxNQUFNO0VBQ25CLFVBQVUsRUFBRSxJQUFJO0VBQ2hCLFdBQVcsRUFBRSxJQUFJO0VBQ2pCLFVBQVUsRUFBRSxHQUFHLENBQUMsS0FBSyxDbkMxRmIsS0FBb0IsR21DMkY1Qjs7QUFFRCxBQUFBLGtCQUFrQixDQUFDO0VBTWxCLEtBQUssRUFBRSxLQUFLLEdBQ1o7RXRCZ0NDLE1BQU0sTUFBTSxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7SXNCdkMxQyxBQUFBLGtCQUFrQixDQUFDO01BRWpCLEtBQUssRUFBRSxJQUFJO01BQ1gsYUFBYSxFQUFFLElBQUksR0FJcEI7O0FBRUQsQUFBQSwwQkFBMEIsQ0FBQztFQUsxQixLQUFLLEVBQUUsa0JBQW1CLEdBQzFCO0V0QndCQyxNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO0lzQjlCMUMsQUFBQSwwQkFBMEIsQ0FBQztNQUV6QixLQUFLLEVBQUUsSUFBSSxHQUlaOztBQUdEOztHQUVHO0FBRUgsQUFBQSxtQkFBbUIsQ0FBQztFQVNuQixLQUFLLEVBQUUsR0FBRztFQUNWLE1BQU0sRUFBRSxXQUFXO0VBQ25CLE9BQU8sRUFBRSxTQUFTO0VBQ2xCLGdCQUFnQixFbkMvSFIsS0FBb0IsR21DZ0k1QjtFdEJSQyxNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxNQUFNO0lzQkwzQyxBQUFBLG1CQUFtQixDQUFDO01BRWxCLEtBQUssRUFBRSxHQUFHLEdBV1g7RXRCSUMsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztJc0JqQjFDLEFBQUEsbUJBQW1CLENBQUM7TUFLbEIsS0FBSyxFQUFFLElBQUk7TUFDWCxPQUFPLEVBQUUsSUFBSSxHQU9kOztBQUVELEFBQUEseUJBQXlCLENBQUM7RUFDekIsYUFBYSxFQUFFLElBQUksR0FDbkI7O0FBRUQsQUFBQSwwQkFBMEIsQ0FBQztFQUMxQixhQUFhLEVBQUUsSUFBSSxHQUNuQjs7QUM5SUQsQUFBQSxZQUFZLENBQUM7RUFLWixPQUFPLEVBQUUsY0FBYyxHQWV2QjtFdkJzSEMsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztJdUIxSTFDLEFBQUEsWUFBWSxDQUFDO01BRVgsT0FBTyxFQUFFLGNBQWMsR0FrQnhCO0V2QjBHQyxNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxNQUFNO0l1QjlIM0MsQUFPQyxZQVBXLENBT1gsbUJBQW1CLENBQUM7TXZCK0NuQixTQUFTLEV1QjdDTSxJQUFJO012QjhDbkIsU0FBUyxFRjVCRixJQUF5QjtNRWlDaEMsV0FBVyxFQUFFLEdBQW1DO011QmxEL0MsY0FBYyxFQUFFLE1BQU07TUFDdEIsS0FBSyxFcENPRCx1QkFBOEIsR29DTG5DO0VBYkYsQUFnQkUsWUFoQlUsQ0FlWCxVQUFVLENBQ1QsUUFBUSxDQUFDO0lBQ1IsR0FBRyxFQUFFLEtBQUssR0FDVjs7QUFJSCxBQUFBLGtCQUFrQixDQUFDO0VBQ2xCLFFBQVEsRUFBRSxRQUFRO0VBQ2xCLGFBQWEsRUFBRSxLQUFLLEdBQ3BCOztBQUVELEFBQUEsb0JBQW9CLENBQUM7RUFDcEIsVUFBVSxFQUFFLElBQUk7RUFDaEIsU0FBUyxFQUFFLEtBQUs7RUFDaEIsV0FBVyxFQUFFLEdBQUcsR0FDaEI7O0FBRUQsQUFBQSw4QkFBOEIsQ0FBQztFQUM5QixRQUFRLEVBQUUsUUFBUTtFQUNsQixHQUFHLEVBQUUsQ0FBQztFQUNOLEtBQUssRUFBRSxDQUFDLEdBQ1I7O0FDckNELEFBQUEsS0FBSyxDQUFDO0VBS0wsT0FBTyxFQUFFLE1BQU0sR0FpQ2Y7RXhCb0dDLE1BQU0sTUFBTSxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7SXdCMUkxQyxBQUFBLEtBQUssQ0FBQztNQUVKLE9BQU8sRUFBRSxNQUFNLEdBb0NoQjtFQXRDRCxBQU9DLEtBUEksQ0FPSixRQUFRLENBQUM7SUFFUixRQUFRLEVBQUUsUUFBUSxHQTRCbEI7SUFyQ0YsQUFXRSxLQVhHLENBT0osUUFBUSxBQUlOLE9BQU8sRUFYVixLQUFLLENBT0osUUFBUSxBQUtOLE1BQU0sQ0FBQztNQVNQLFFBQVEsRUFBRSxRQUFRO01BQ2xCLEdBQUcsRUFBRSxJQUFJO01BQ1QsSUFBSSxFQUFFLENBQUM7TUFDUCxLQUFLLEVBQUUsa0JBQWtCO01BQ3pCLE1BQU0sRUFBRSxpQkFBaUI7TUFDekIsZ0JBQWdCLEVyQ0RWLE9BQXdCO01xQ0U5QixhQUFhLEVBQUUsYUFBYTtNQUM1QixPQUFPLEVBQUUsRUFBRTtNQUNYLE9BQU8sRUFBRSxFQUFFLEdBQ1g7TXhCZ0dELE1BQU0sTUFBTSxNQUFNLE1BQU0sU0FBUyxFQUFFLE1BQU07UXdCOUgzQyxBQVdFLEtBWEcsQ0FPSixRQUFRLEFBSU4sT0FBTyxFQVhWLEtBQUssQ0FPSixRQUFRLEFBS04sTUFBTSxDQUFDO1VBRU4sS0FBSyxFQUFFLGtCQUFrQixHQWdCMUI7TXhCb0hELE1BQU0sTUFBTSxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7UXdCbEoxQyxBQVdFLEtBWEcsQ0FPSixRQUFRLEFBSU4sT0FBTyxFQVhWLEtBQUssQ0FPSixRQUFRLEFBS04sTUFBTSxDQUFDO1VBS04sS0FBSyxFQUFFLElBQUk7VUFDWCxhQUFhLEVBQUUsQ0FBQyxHQVlqQjtJQTlCSCxBQWdDRSxLQWhDRyxDQU9KLFFBQVEsQUF5Qk4sTUFBTSxDQUFDO01BQ1AsS0FBSyxFQUFFLElBQUk7TUFDWCxJQUFJLEVBQUUsSUFBSTtNQUNWLGFBQWEsRUFBRSxDQUFDLEdBQ2hCOztBQUlILEFBQUEsWUFBWSxDQUFDO0VBQ1osYUFBYSxFQUFFLElBQUksR0FDbkI7O0FBRUQsQUFBQSxhQUFhLENBQUM7RUFDYixTQUFTLEVBQUUsS0FBSztFQUNoQixhQUFhLEVBQUUsS0FBSyxHQUNwQjs7QUFFRCxBQUFBLGlCQUFpQixDQUFDO0VBS2pCLGNBQWMsRUFBRSxLQUFLLEdBQ3JCO0V4Qm1GQyxNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO0l3QnpGMUMsQUFBQSxpQkFBaUIsQ0FBQztNQUVoQixjQUFjLEVBQUUsSUFBSSxHQUlyQjs7QUFFRCxBQUFBLHVCQUF1QixDQUFDO0VBQ3ZCLGFBQWEsRUFBRSxJQUFJLEdBQ25COztBQUVELEFBQUEsb0JBQW9CLENBQUM7RUFDcEIsS0FBSyxFQUFFLElBQUksR0FDWDs7QUFFRCxBQUFBLHNCQUFzQixDQUFDO0VBS3RCLE1BQU0sRUFBRSxLQUFLLEdBQ2I7RXhCMkVDLE1BQU0sTUFBTSxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7SXdCakYxQyxBQUFBLHNCQUFzQixDQUFDO01BRXJCLE1BQU0sRUFBRSxPQUFPLEdBSWhCOztBQUVELEFBQUEscUJBQXFCLENBQUM7RUFTckIsS0FBSyxFQUFFLHFCQUFxQjtFQUM1QixNQUFNLEVBQUUsSUFBSSxHQUNaO0V4QnNEQyxNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO0l3QmpFMUMsQUFBQSxxQkFBcUIsQ0FBQztNQUVwQixLQUFLLEVBQUUsZ0JBQWdCLEdBU3hCO0V4QjhEQyxNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO0l3QnpFMUMsQUFBQSxxQkFBcUIsQ0FBQztNQUtwQixLQUFLLEVBQUUsSUFBSTtNQUNYLE1BQU0sRUFBRSxNQUFNLEdBS2Y7O0FDcEZELEFBQUEsV0FBVyxDQUFDO0VBYVgsUUFBUSxFQUFFLFFBQVE7RUFDbEIsS0FBSyxFQUFFLGtCQUFrQjtFQUN6QixhQUFhLEVBQUUsSUFBSTtFQUNuQixXQUFXLEVBQUUsSUFBSSxHQUNqQjtFekI2R0MsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsTUFBTTtJeUI5SDNDLEFBQUEsV0FBVyxDQUFDO01BRVYsS0FBSyxFQUFFLElBQUksR0FlWjtFekJ5SEMsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztJeUIxSTFDLEFBQUEsV0FBVyxDQUFDO01BS1YsT0FBTyxFQUFFLENBQUM7TUFDVixNQUFNLEVBQUUsR0FBRyxDQUFDLEtBQUssQ3RDbUJWLE9BQXdCO01zQ2xCL0IsYUFBYSxFQUFFLEdBQUcsR0FVbkI7RXpCaUlDLE1BQU0sTUFBTSxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7SXlCbEoxQyxBQUFBLFdBQVcsQ0FBQztNQVVWLE1BQU0sRUFBRSxDQUFDLEdBT1Y7O0FBRUQsQUFBQSxpQkFBaUIsQ0FBQztFQUNqQixhQUFhLEVBQUUsSUFBSSxHQUNuQjs7QUFFRCxBQUFBLGtCQUFrQixDQUFDO0VBS2xCLFFBQVEsRUFBRSxRQUFRO0VBQ2xCLEdBQUcsRUFBRSxDQUFDO0VBQ04sS0FBSyxFQUFFLENBQUM7RUFDUixLQUFLLEVBQUUsS0FBSztFQUNaLE1BQU0sRUFBRSxLQUFLLEdBS2I7RXpCcUdDLE1BQU0sTUFBTSxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7SXlCbkgxQyxBQUFBLGtCQUFrQixDQUFDO01BRWpCLE9BQU8sRUFBRSxJQUFJLEdBWWQ7RUFkRCxBQVdDLGtCQVhpQixDQVdqQixHQUFHLENBQUM7SUFDSCxhQUFhLEVBQUUsR0FBRyxHQUNsQjs7QUFHRixBQUFBLGlCQUFpQixDQUFDO0VBWWpCLFFBQVEsRUFBRSxRQUFRO0VBQ2xCLEtBQUssRUFBRSxrQkFBa0I7RUFDekIsT0FBTyxFQUFFLG1CQUFtQjtFQUM1QixnQkFBZ0IsRXRDaERSLEtBQW9CO0VzQ2lENUIsYUFBYSxFQUFFLFdBQVcsR0FpQjFCO0V6QmtFQyxNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO0l5Qm5HMUMsQUFBQSxpQkFBaUIsQ0FBQztNQUVoQixLQUFLLEVBQUUsSUFBSTtNQUNYLE9BQU8sRUFBRSxJQUFJLEdBOEJkO0V6QjBFQyxNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO0l5QjNHMUMsQUFBQSxpQkFBaUIsQ0FBQztNQU1oQixhQUFhLEVBQUUsR0FBRyxHQTJCbkI7RXpCMENDLE1BQU0sTUFBTSxNQUFNLE1BQU0sU0FBUyxFQUFFLE1BQU07SXlCM0UzQyxBQUFBLGlCQUFpQixDQUFDO01BU2hCLFVBQVUsRUFBRSxLQUFLLEdBd0JsQjtFQWpDRCxBQWtCQyxpQkFsQmdCLEFBa0JmLE9BQU8sQ0FBQztJQUtSLFFBQVEsRUFBRSxRQUFRO0lBQ2xCLEtBQUssRUFBRSxLQUFLO0lBQ1osTUFBTSxFQUFFLENBQUM7SUFDVCxLQUFLLEVBQUUsSUFBSTtJQUNYLE1BQU0sRUFBRSxJQUFJO0lBQ1osZ0JBQWdCLEV0QzdEVCxLQUFvQjtJc0M4RDNCLGFBQWEsRUFBRSxXQUFXO0lBQzFCLE9BQU8sRUFBRSxFQUFFO0lBQ1gsT0FBTyxFQUFFLEVBQUUsR0FDWDtJekIyRUEsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztNeUIzRzFDLEFBa0JDLGlCQWxCZ0IsQUFrQmYsT0FBTyxDQUFDO1FBRVAsT0FBTyxFQUFFLElBQUksR0FZZDs7QUFHRixBQUNDLHNCQURxQixDQUNyQixDQUFDLENBQUM7RUFDRCxPQUFPLEVBQUUsS0FBSztFQUNkLFVBQVUsRUFBRSxJQUFJLEdBU2hCO0VBWkYsQUFLRSxzQkFMb0IsQ0FDckIsQ0FBQyxDQUlBLFFBQVEsQ0FBQztJQUNSLE9BQU8sRUFBRSxJQUFJLEdBQ2I7RUFQSCxBQVNFLHNCQVRvQixDQUNyQixDQUFDLENBUUEsR0FBRyxDQUFDO0lBQ0gsVUFBVSxFQUFFLGNBQWMsR0FDMUI7O0FBWEgsQUFjQyxzQkFkcUIsR0FjbkIsSUFBSSxDQUFDO0VBQ04sT0FBTyxFQUFFLElBQUksR0FDYjs7QUFoQkYsQUFtQkUsc0JBbkJvQixBQWtCcEIsVUFBVSxDQUNWLFFBQVEsQ0FBQztFQUNSLE9BQU8sRUFBRSxJQUFJLEdBQ2I7O0FBckJILEFBdUJFLHNCQXZCb0IsQUFrQnBCLFVBQVUsQ0FLVixRQUFRLENBQUM7RUFDUixPQUFPLEVBQUUsV0FBVyxHQUNwQjs7QUF6QkgsQUEyQkUsc0JBM0JvQixBQWtCcEIsVUFBVSxDQVNWLEdBQUcsQ0FBQztFQUNGLFNBQVMsRUFBRSxjQUFjLEdBQzFCOztBQ3ZHSCxBQUFBLFlBQVksQ0FBQztFQUNaLFFBQVEsRUFBRSxRQUFRO0VBQ2xCLEtBQUssRUFBRSxJQUFJO0VBQ1gsTUFBTSxFQUFFLEdBQUcsQ0FBQyxLQUFLLEN2Q3NCVCxPQUF3QjtFdUNyQmhDLGFBQWEsRUFBRSxHQUFHO0VBQ2xCLFFBQVEsRUFBRSxNQUFNLEdBQ2hCOztBQUVELEFBQUEsbUJBQW1CLENBQUM7RUFDbkIsS0FBSyxFQUFFLElBQUk7RUFDWCxNQUFNLEVBQUUsS0FBSyxHQUNiOztBQUVELEFBQUEsa0JBQWtCLENBQUM7RUFDbEIsUUFBUSxFQUFFLFFBQVE7RUFDbEIsTUFBTSxFQUFFLENBQUM7RUFDVCxJQUFJLEVBQUUsQ0FBQztFQUNQLEtBQUssRUFBRSxJQUFJO0VBQ1gsZ0JBQWdCLEV2Q1pSLEtBQW9CO0V1Q2E1QixPQUFPLEVBQUUsSUFBSTtFQUNiLFVBQVUsRUFBRSxNQUFNLEdBQ2xCOztBQUVELEFBQUEsc0JBQXNCLENBQUM7RTFCK0JyQixTQUFTLEUwQjlCSSxJQUFJO0UxQitCakIsU0FBUyxFRjVCRixNQUF5QjtFRWlDaEMsV0FBVyxFQUFFLEdBQW1DLEcwQm5DakQ7O0FDekJELEFBQUEsV0FBVyxDQUFDO0VBS1gsV0FBVyxFQUFFLE1BQU07RUFDbkIsY0FBYyxFQUFFLEtBQUssR0FDckI7RTNCbUlDLE1BQU0sTUFBTSxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7STJCMUkxQyxBQUFBLFdBQVcsQ0FBQztNQUVWLGNBQWMsRUFBRSxJQUFJLEdBS3JCOztBQUVELEFBQUEsa0JBQWtCLENBQUM7RUFZbEIsUUFBUSxFQUFFLFFBQVE7RUFDbEIsS0FBSyxFQUFFLEtBQUs7RUFDWixNQUFNLEVBQUUsS0FBSyxHQWtCYjtFM0JxRkMsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsTUFBTTtJMkJySDNDLEFBQUEsa0JBQWtCLENBQUM7TUFFakIsS0FBSyxFQUFFLEtBQUs7TUFDWixNQUFNLEVBQUUsS0FBSyxHQTZCZDtFM0JpR0MsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztJMkJqSTFDLEFBQUEsa0JBQWtCLENBQUM7TUFNakIsS0FBSyxFQUFFLElBQUk7TUFDWCxTQUFTLEVBQUUsS0FBSztNQUNoQixNQUFNLEVBQUUsTUFBTTtNQUNkLGFBQWEsRUFBRSxJQUFJLEdBdUJwQjtFQWhDRCxBQWdCQyxrQkFoQmlCLENBZ0JqQixHQUFHLENBQUM7SUFDSCxhQUFhLEVBQUUsSUFBSSxHQUNuQjtFQWxCRixBQW9CQyxrQkFwQmlCLEFBb0JoQixNQUFNLENBQUM7SUFLUCxLQUFLLEVBQUUsS0FBSztJQUNaLE1BQU0sRUFBRSxLQUFLO0lBQ2IsS0FBSyxFQUFFLEtBQUs7SUFDWixNQUFNLEVBQUUsS0FBSztJQUNiLE9BQU8sRUFBRSxHQUFHO0lBQ1osYUFBYSxFQUFFLFVBQVUsR0FDekI7STNCMEdBLE1BQU0sTUFBTSxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7TTJCekkxQyxBQW9CQyxrQkFwQmlCLEFBb0JoQixNQUFNLENBQUM7UUFFTixPQUFPLEVBQUUsSUFBSSxHQVNkOztBQUdGLEFBQUEsaUJBQWlCLENBQUM7RUFTakIsS0FBSyxFQUFFLGtCQUFrQjtFQUN6QixTQUFTLEVBQUUsS0FBSztFQUNoQixZQUFZLEVBQUUsSUFBSSxHQUNsQjtFM0J1RUMsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsTUFBTTtJMkJuRjNDLEFBQUEsaUJBQWlCLENBQUM7TUFFaEIsS0FBSyxFQUFFLGtCQUFrQixHQVUxQjtFM0JtRkMsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztJMkIvRjFDLEFBQUEsaUJBQWlCLENBQUM7TUFLaEIsS0FBSyxFQUFFLElBQUk7TUFDWCxPQUFPLEVBQUUsQ0FDVixHQUtBOztBQUdELEFBQUEsd0JBQXdCLENBQUM7RUFReEIsY0FBYyxFQUFFLFdBQVc7RUFDM0IsS0FBSyxFQUFFLGlCQUFpQixHQWlDeEI7RTNCMEJDLE1BQU0sTUFBTSxNQUFNLE1BQU0sU0FBUyxFQUFFLE1BQU07STJCcEUzQyxBQUFBLHdCQUF3QixDQUFDO01BRXZCLEtBQUssRUFBRSxJQUFJLEdBd0NaO0UzQnNDQyxNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO0kyQmhGMUMsQUFBQSx3QkFBd0IsQ0FBQztNQUt2QixjQUFjLEVBQUUsT0FBTyxHQXFDeEI7RUExQ0QsQUFXQyx3QkFYdUIsQ0FXdkIsa0JBQWtCLENBQUM7SUFDbEIsS0FBSyxFQUFFLEtBQUs7SUFDWixNQUFNLEVBQUUsS0FBSyxHQWlCYjtJQTlCRixBQWVFLHdCQWZzQixDQVd2QixrQkFBa0IsQUFJaEIsTUFBTSxDQUFDO01BU1AsR0FBRyxFQUFFLEtBQUs7TUFDVixLQUFLLEVBQUUsSUFBSTtNQUNYLE1BQU0sRUFBRSxJQUFJO01BQ1osSUFBSSxFQUFFLEtBQUs7TUFDWCxhQUFhLEVBQUUsVUFBVSxHQUN6QjtNM0JtREQsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztRMkJoRjFDLEFBZUUsd0JBZnNCLENBV3ZCLGtCQUFrQixBQUloQixNQUFNLENBQUM7VUFFTixHQUFHLEVBQUUsSUFBSTtVQUNULEtBQUssRUFBRSxLQUFLO1VBQ1osTUFBTSxFQUFFLEtBQUs7VUFDYixJQUFJLEVBQUUsSUFBSTtVQUNWLGFBQWEsRUFBRSxVQUFVLEdBUTFCO0VBN0JILEFBZ0NDLHdCQWhDdUIsQ0FnQ3ZCLGlCQUFpQixDQUFDO0lBTWpCLEtBQUssRUFBRSxrQkFBa0I7SUFDekIsT0FBTyxFQUFFLFVBQVU7SUFDbkIsU0FBUyxFQUFFLElBQUksR0FDZjtJM0J1Q0EsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztNMkJoRjFDLEFBZ0NDLHdCQWhDdUIsQ0FnQ3ZCLGlCQUFpQixDQUFDO1FBRWhCLEtBQUssRUFBRSxJQUFJO1FBQ1gsT0FBTyxFQUFFLENBQUMsR0FNWDs7QUFHRixBQUFBLG1CQUFtQixDQUFDO0VBQ25CLE1BQU0sRUFBRSxhQUFhLEdBQ3JCOztBQ3hHRCxBQUFBLFlBQVksQ0FBQztFQUtaLFFBQVEsRUFBRSxRQUFRO0VBQ2xCLE9BQU8sRUFBRSxjQUFjLEdBQ3ZCO0U1Qm1JQyxNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO0k0QjFJMUMsQUFBQSxZQUFZLENBQUM7TUFFWCxPQUFPLEVBQUUsTUFBTSxHQUtoQjs7QUFFRCxBQUFBLGtCQUFrQixDQUFDO0VBUWxCLFFBQVEsRUFBRSxRQUFRO0VBQ2xCLGFBQWEsRUFBRSxJQUFJLEdBQ25CO0U1QnVIQyxNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO0k0QmpJMUMsQUFBQSxrQkFBa0IsQ0FBQztNQUVqQixhQUFhLEVBQUUsSUFBSSxHQVFwQjtFNUIrSEMsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztJNEJ6STFDLEFBQUEsa0JBQWtCLENBQUM7TUFLakIsYUFBYSxFQUFFLElBQUksR0FLcEI7O0FBRUQsQUFBQSxtQkFBbUIsQ0FBQztFQUNuQixhQUFhLEVBQUUsSUFBSSxHQUNuQjs7QUFFRCxBQUFBLDhCQUE4QixDQUFDO0VBTzlCLFFBQVEsRUFBRSxRQUFRO0VBQ2xCLEdBQUcsRUFBRSxDQUFDO0VBQ04sS0FBSyxFQUFFLENBQUMsR0FDUjtFNUIyRkMsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsTUFBTTtJNEJyRzNDLEFBQUEsOEJBQThCLENBQUM7TTVCNkI3QixTQUFTLEU0QjNCSyxJQUFJO001QjRCbEIsU0FBUyxFRjVCRixJQUF5QjtNRWlDaEMsV0FBVyxFQUFFLEdBQW1DO000QmhDaEQsY0FBYyxFQUFFLE1BQU07TUFDdEIsS0FBSyxFekNYQSx1QkFBOEIsR3lDaUJwQzs7QUFPRDs7R0FFRztBQUVILEFBQUEsaUJBQWlCLENBQUM7RUFDakIsS0FBSyxFQUFFLElBQUk7RUFDWCxlQUFlLEVBQUUsUUFBUSxHQUN6Qjs7QUFFRCxBQUFBLG9CQUFvQixDQUFDO0VBQ3BCLEtBQUssRUFBRSxJQUFJLEdBQ1g7O0FBR0QsQUFBQSxzQkFBc0I7QUFDdEIseUJBQXlCLENBQUM7RUFRekIsS0FBSyxFQUFFLGtCQUFrQjtFQUN6QixTQUFTLEVBQUUsS0FBSztFQUNoQixPQUFPLEVBQUUsRUFBRSxHQUNYO0U1QjBEQyxNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxNQUFNO0k0QnRFM0MsQUFBQSxzQkFBc0I7SUFDdEIseUJBQXlCLENBQUM7TUFFeEIsS0FBSyxFQUFFLElBQUksR0FTWjtFNUJzRUMsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztJNEJsRjFDLEFBQUEsc0JBQXNCO0lBQ3RCLHlCQUF5QixDQUFDO01BS3hCLFNBQVMsRUFBRSxJQUFJLEdBTWhCOztBQU1ELEFBQUEsd0JBQXdCLENBQUM7RUFDeEIsYUFBYSxFQUFFLElBQUksR0FDbkI7O0FBT0Q7O0dBRUc7QUFFSCxBQUFBLG9CQUFvQixDQUFDO0VBZXBCLFFBQVEsRUFBRSxRQUFRO0VBQ2xCLEtBQUssRUFBRSxLQUFLO0VBQ1osTUFBTSxFQUFFLEtBQUs7RUFDYixNQUFNLEVBQUUsc0JBQXNCLEdBc0I5QjtFNUJEQyxNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxNQUFNO0k0QnZDM0MsQUFBQSxvQkFBb0IsQ0FBQztNQUVuQixNQUFNLEVBQUUsU0FBUyxHQXNDbEI7RTVCV0MsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztJNEJuRDFDLEFBQUEsb0JBQW9CLENBQUM7TUFLbkIsS0FBSyxFQUFFLEtBQUs7TUFDWixNQUFNLEVBQUUsS0FBSyxHQWtDZDtFNUJtQkMsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztJNEIzRDFDLEFBQUEsb0JBQW9CLENBQUM7TUFTbkIsS0FBSyxFQUFFLElBQUk7TUFDWCxTQUFTLEVBQUUsS0FBSztNQUNoQixNQUFNLEVBQUUsS0FBSztNQUNiLE1BQU0sRUFBRSxtQkFBbUIsR0E0QjVCO0VBeENELEFBb0JDLG9CQXBCbUIsQUFvQmxCLE1BQU0sQ0FBQztJQWVQLEdBQUcsRUFBRSxJQUFJO0lBQ1QsS0FBSyxFQUFFLENBQUM7SUFDUixJQUFJLEVBQUUsQ0FBQztJQUNQLE1BQU0sRUFBRSxNQUFNLEdBQ2Q7STVCWUEsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztNNEJuRDFDLEFBb0JDLG9CQXBCbUIsQUFvQmxCLE1BQU0sQ0FBQztRQUVOLEdBQUcsRUFBRSxJQUFJO1FBQ1QsSUFBSSxFQUFFLElBQUk7UUFDVixLQUFLLEVBQUUsSUFBSTtRQUNYLEtBQUssRUFBRSxLQUFLO1FBQ1osTUFBTSxFQUFFLEtBQUssR0FhZDtJNUJvQkEsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztNNEIzRDFDLEFBb0JDLG9CQXBCbUIsQUFvQmxCLE1BQU0sQ0FBQztRQVNOLEtBQUssRUFBRSxpQkFBaUI7UUFDeEIsTUFBTSxFQUFFLGlCQUFpQjtRQUN6QixHQUFHLEVBQUUsS0FBSztRQUNWLElBQUksRUFBRSxJQUFJLEdBT1g7O0FBR0YsQUFBQSx3QkFBd0IsQ0FBQztFQVV4QixRQUFRLEVBQUUsUUFBUTtFQUNsQixHQUFHLEVBQUUsQ0FBQztFQUNOLElBQUksRUFBRSxDQUFDO0VBQ1AsS0FBSyxFQUFFLEtBQUs7RUFDWixNQUFNLEVBQUUsS0FBSyxHQVNiO0U1QmRDLE1BQU0sTUFBTSxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7STRCVDFDLEFBQUEsd0JBQXdCLENBQUM7TUFFdkIsS0FBSyxFQUFFLEtBQUs7TUFDWixNQUFNLEVBQUUsS0FBSyxHQW9CZDtFNUJOQyxNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO0k0QmpCMUMsQUFBQSx3QkFBd0IsQ0FBQztNQU12QixLQUFLLEVBQUUsS0FBSztNQUNaLE1BQU0sRUFBRSxLQUFLLEdBZ0JkO0VBdkJELEFBZ0JDLHdCQWhCdUIsQ0FnQnZCLEdBQUcsQ0FBQztJQUtILGFBQWEsRUFBRSxJQUFJLEdBQ25CO0k1QmJBLE1BQU0sTUFBTSxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7TTRCVDFDLEFBZ0JDLHdCQWhCdUIsQ0FnQnZCLEdBQUcsQ0FBQztRQUVGLGFBQWEsRUFBRSxJQUFJLEdBSXBCOztBQUdGLEFBQUEsMEJBQTBCLENBQUM7RUFVMUIsUUFBUSxFQUFFLFFBQVE7RUFDbEIsS0FBSyxFQUFFLENBQUM7RUFDUixNQUFNLEVBQUUsQ0FBQztFQUNULEtBQUssRUFBRSxLQUFLO0VBQ1osTUFBTSxFQUFFLEtBQUssR0FTYjtFNUJ2Q0MsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztJNEJnQjFDLEFBQUEsMEJBQTBCLENBQUM7TUFFekIsS0FBSyxFQUFFLEtBQUs7TUFDWixNQUFNLEVBQUUsS0FBSyxHQW9CZDtFNUIvQkMsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztJNEJRMUMsQUFBQSwwQkFBMEIsQ0FBQztNQU16QixLQUFLLEVBQUUsS0FBSztNQUNaLE1BQU0sRUFBRSxLQUFLLEdBZ0JkO0VBdkJELEFBZ0JDLDBCQWhCeUIsQ0FnQnpCLEdBQUcsQ0FBQztJQUtILGFBQWEsRUFBRSxJQUFJLEdBQ25CO0k1QnRDQSxNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO000QmdCMUMsQUFnQkMsMEJBaEJ5QixDQWdCekIsR0FBRyxDQUFDO1FBRUYsYUFBYSxFQUFFLElBQUksR0FJcEI7O0FBSUY7O0dBRUc7QUFFSCxBQUFBLG1CQUFtQixDQUFDO0VBaUJuQixRQUFRLEVBQUUsUUFBUTtFQUNsQixHQUFHLEVBQUUsS0FBSztFQUNWLElBQUksRUFBRSxDQUFDO0VBQ1AsS0FBSyxFQUFFLElBQUk7RUFDWCxNQUFNLEVBQUUsa0JBQWtCO0VBQzFCLEtBQUssRUFBRSxLQUFLO0VBQ1osTUFBTSxFQUFFLE1BQU07RUFDZCxPQUFPLEVBQUUsSUFBSTtFQUNiLE9BQU8sRUFBRSxFQUFFO0VBQ1gsT0FBTyxFQUFFLEdBQUcsR0FpQ1o7RTVCckhDLE1BQU0sTUFBTSxNQUFNLE1BQU0sU0FBUyxFQUFFLE1BQU07STRCMEQzQyxBQUFBLG1CQUFtQixDQUFDO01BRWxCLEdBQUcsRUFBRSxLQUFLO01BQ1YsTUFBTSxFQUFFLGtCQUFrQixHQXdEM0I7RTVCekdDLE1BQU0sTUFBTSxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7STRCOEMxQyxBQUFBLG1CQUFtQixDQUFDO01BTWxCLEdBQUcsRUFBRSxLQUFLO01BQ1YsTUFBTSxFQUFFLGtCQUFrQjtNQUMxQixLQUFLLEVBQUUsS0FBSyxHQW1EYjtFNUJqR0MsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztJNEJzQzFDLEFBQUEsbUJBQW1CLENBQUM7TUFXbEIsR0FBRyxFQUFFLEtBQUs7TUFDVixNQUFNLEVBQUUsa0JBQWtCO01BQzFCLEtBQUssRUFBRSxLQUFLO01BQ1osS0FBSyxFQUFFLENBQUMsR0E2Q1Q7RUEzREQsQUE0QkMsbUJBNUJrQixHQTRCaEIsSUFBSSxDQUFDO0lBQ04sT0FBTyxFQUFFLEtBQUs7SUFDZCxLQUFLLEVBQUUsR0FBRztJQUNWLE1BQU0sRUFBRSxJQUFJO0lBQ1osZ0JBQWdCLEV6Qy9MVCxPQUF3QixHeUN5Ti9CO0lBMURGLEFBa0NFLG1CQWxDaUIsR0E0QmhCLElBQUksQUFNSixVQUFXLENSSkEsQ0FBQyxFUUlFO01BUWQsWUFBWSxFQUFFLEtBQUssR0FDbkI7TTVCekZELE1BQU0sTUFBTSxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7UTRCOEMxQyxBQWtDRSxtQkFsQ2lCLEdBNEJoQixJQUFJLEFBTUosVUFBVyxDUkpBLENBQUMsRVFJRTtVQUViLFlBQVksRUFBRSxLQUFLLEdBT3BCO001QmpGRCxNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO1E0QnNDMUMsQUFrQ0UsbUJBbENpQixHQTRCaEIsSUFBSSxBQU1KLFVBQVcsQ1JKQSxDQUFDLEVRSUU7VUFLYixZQUFZLEVBQUUsS0FBSyxHQUlwQjtJQTNDSCxBQTZDRSxtQkE3Q2lCLEdBNEJoQixJQUFJLEFBaUJKLFVBQVcsQ1JQQSxDQUFDLEVRT0U7TUFLZCxVQUFVLEVBQUUsSUFBSTtNQUNoQixZQUFZLEVBQUUsS0FBSyxHQUNuQjtNNUIxRkQsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztRNEJzQzFDLEFBNkNFLG1CQTdDaUIsR0E0QmhCLElBQUksQUFpQkosVUFBVyxDUlBBLENBQUMsRVFPRTtVQUViLFlBQVksRUFBRSxLQUFLLEdBS3BCO0lBcERILEFBc0RFLG1CQXREaUIsR0E0QmhCLElBQUksQUEwQkosVUFBVyxDUk5BLENBQUMsRVFNRTtNQUNkLFVBQVUsRUFBRSxJQUFJO01BQ2hCLE1BQU0sRUFBRSxpQkFBaUIsR0FDekI7O0FDalBIOzs7O0dBSUc7QUFFSCxBQUVDLFdBRlUsQUFFVCxTQUFTO0FBRlgsV0FBVyxDQUdWLFNBQVMsQ0FBQztFN0I2Q1QsU0FBUyxFNkJ4Q0ssSUFBSTtFN0J5Q2xCLFNBQVMsRUY1QkYsSUFBeUI7RUVpQ2hDLFdBQVcsRUFBRSxNQUFtQztFNkI3Q2hELGNBQWMsRUFBRSxNQUFNO0VBQ3RCLFdBQVcsRUFBRSxHQUFHO0VBQ2hCLEtBQUssRTFDZEUsS0FBa0IsRzBDZXpCO0U3QmdJQSxNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO0k2QjVJMUMsQUFFQyxXQUZVLEFBRVQsU0FBUztJQUZYLFdBQVcsQ0FHVixTQUFTLENBQUM7TTdCNkNULFNBQVMsRTZCM0NNLElBQUk7TTdCNENuQixTQUFTLEVGNUJGLE1BQXlCO01FaUNoQyxXQUFXLEVBQUUsR0FBbUMsRzZCMUNoRDs7QUFaRixBQWNDLFdBZFUsQ0FjVixFQUFFO0FBZEgsV0FBVyxDQWVWLEVBQUU7QUFmSCxXQUFXLENBZ0JWLEVBQUUsQ0FBQztFQUNGLGFBQWEsRUFBRSxJQUFJO0VBQ25CLFVBQVUsRUFBRSxVQUFVLEdBQ3RCOztBQW5CRixBQXFCQyxXQXJCVSxDQXFCVixFQUFFO0FBckJILFdBQVcsQ0FzQlYsRUFBRSxDQUFDO0VBQ0YsYUFBYSxFQUFFLElBQUk7RUFDbkIsVUFBVSxFQUFFLFVBQVUsR0FDdEI7O0FBekJGLEFBNkJFLFdBN0JTLENBNEJWLENBQUMsQUFDQyxJQUFLLENBQUEsV0FBVyxFQUFFO0VBQ2xCLGFBQWEsRUFBRSxHQUFHLEdBQ2xCOztBQS9CSCxBQWtDQyxXQWxDVSxDQWtDVixFQUFFO0FBbENILFdBQVcsQ0FtQ1YsRUFBRSxDQUFDO0VBQ0YsZUFBZSxFQUFFLElBQUk7RUFDckIsS0FBSyxFMUN0QkUsT0FBMkI7RTBDdUJsQyxXQUFXLEVBQUUsSUFBSSxHQU1qQjtFQTVDRixBQXdDRSxXQXhDUyxDQWtDVixFQUFFLENBTUQsRUFBRTtFQXhDSixXQUFXLENBbUNWLEVBQUUsQ0FLRCxFQUFFLENBQUM7SUFDRixZQUFZLEVBQUUsR0FBRztJQUNqQixLQUFLLEUxQ2hCQyxPQUFxQixHMENpQjNCOztBQTNDSCxBQThDQyxXQTlDVSxDQThDVixFQUFFLENBQUM7RUFDRixlQUFlLEVBQUUsT0FBTyxHQUN4Qjs7QUFoREYsQUFrREMsV0FsRFUsQ0FrRFYsTUFBTSxDQUFDO0VBQ04sV0FBVyxFQUFFLElBQUksR0FDakI7O0FBcERGLEFBc0RDLFdBdERVLENBc0RWLE1BQU0sQ0FBQztFQUNOLFVBQVUsRUFBRSxJQUFJLEdBQ2hCOztBQXhERixBQTBEQyxXQTFEVSxDQTBEVixVQUFVLENBQUM7RTdCVlYsU0FBUyxFNkJXSyxJQUFJO0U3QlZsQixTQUFTLEVGNUJGLE1BQXlCO0VFaUNoQyxXQUFXLEVBQUUsU0FBbUM7RTZCTWhELFFBQVEsRUFBRSxRQUFRO0VBQ2xCLE1BQU0sRUFBRSxNQUFNO0VBQ2QsT0FBTyxFQUFFLFNBQVM7RUFDbEIsV0FBVyxFQUFFLEdBQUc7RUFDaEIsY0FBYyxFQUFFLE1BQU07RUFDdEIsS0FBSyxFMUNsREUsT0FBMkI7RTBDbURsQyxXQUFXLEVBQUUsR0FBRyxDQUFDLEtBQUssQzFDNURoQixzQkFBNkIsRzBDaUZuQztFQXZGRixBQW9FRSxXQXBFUyxDQTBEVixVQUFVLEFBVVIsT0FBTyxFQXBFVixXQUFXLENBMERWLFVBQVUsQUFXUixNQUFNLENBQUM7STdCckJSLFNBQVMsRTZCc0JNLElBQUk7STdCckJuQixTQUFTLEVGNUJGLE1BQXlCO0lFaUNoQyxXQUFXLEVBQUUsR0FBbUM7STZCaUIvQyxRQUFRLEVBQUUsUUFBUTtJQUNsQixJQUFJLEVBQUUsSUFBSTtJQUNWLEdBQUcsRUFBRSxJQUFJO0lBQ1QsS0FBSyxFQUFFLElBQUk7SUFDWCxNQUFNLEVBQUUsSUFBSTtJQUNaLEtBQUssRTFDbkVBLHNCQUE4QjtJMENvRW5DLE9BQU8sRUFBRSxJQUFJLEdBQ2I7RUE5RUgsQUFnRkUsV0FoRlMsQ0EwRFYsVUFBVSxBQXNCUixNQUFNLENBQUM7SUFDUCxHQUFHLEVBQUUsSUFBSTtJQUNULEtBQUssRUFBRSxDQUFDO0lBQ1IsTUFBTSxFQUFFLEdBQUc7SUFDWCxJQUFJLEVBQUUsSUFBSTtJQUNWLE9BQU8sRUFBRSxJQUFJLEdBQ2I7O0FBdEZILEFBeUZDLFdBekZVLENBeUZWLFdBQVcsQ0FBQztFQUNYLEtBQUssRUFBRSxJQUFJLENBQUEsVUFBVTtFQUNyQixNQUFNLEVBQUUsTUFBTSxHQVNkO0VBcEdGLEFBNkZFLFdBN0ZTLENBeUZWLFdBQVcsQ0FJVixDQUFDLENBQUM7STdCN0NGLFNBQVMsRTZCOENNLElBQUk7STdCN0NuQixTQUFTLEVGNUJGLE1BQXlCO0lFaUNoQyxXQUFXLEVBQUUsR0FBbUM7STZCeUMvQyxVQUFVLEVBQUUsSUFBSTtJQUNoQixVQUFVLEVBQUUsTUFBTTtJQUNsQixjQUFjLEVBQUUsTUFBTTtJQUN0QixLQUFLLEUxQzdGQyxPQUEyQixHMEM4RmpDOztBQW5HSCxBQXNHQyxXQXRHVSxDQXNHVixHQUFHLENBQUM7RUFDSCxPQUFPLEVBQUUsS0FBSztFQUNkLE1BQU0sRUFBRSxNQUFNLEdBQ2Q7O0FBekdGLEFBMkdDLFdBM0dVLENBMkdWLENBQUMsQ0FBQztFQUNELEtBQUssRTFDN0ZFLE9BQTJCO0UwQzhGbEMsZUFBZSxFQUFFLFNBQVM7RUFDMUIsVUFBVSxFQUFFLGNBQWMsR0FrQzFCO0VBaEpGLEFBZ0hFLFdBaEhTLENBMkdWLENBQUMsQUFLQyxNQUFNLENBQUM7SUFDUCxLQUFLLEUxQzVHQyxPQUEyQixHMEM2R2pDO0VBbEhILEFBb0hFLFdBcEhTLENBMkdWLENBQUMsQUFTQyxXQUFXLENBQUM7SUFDWixPQUFPLEVBQUUsS0FBSztJQUNkLFFBQVEsRUFBRSxRQUFRLEdBeUJsQjtJQS9JSCxBQXdIRyxXQXhIUSxDQTJHVixDQUFDLEFBU0MsV0FBVyxDQUlYLEtBQUssQ0FBQztNQUNMLE9BQU8sRUFBRSxJQUFJO01BQ2IsV0FBVyxFQUFFLE1BQU07TUFDbkIsZUFBZSxFQUFFLE1BQU07TUFDdkIsUUFBUSxFQUFFLFFBQVE7TUFDbEIsR0FBRyxFQUFFLENBQUM7TUFDTixLQUFLLEVBQUUsQ0FBQztNQUNSLE1BQU0sRUFBRSxDQUFDO01BQ1QsSUFBSSxFQUFFLENBQUM7TUFDUCxLQUFLLEVBQUUsSUFBSTtNQUNYLE1BQU0sRUFBRSxJQUFJO01BQ1osTUFBTSxFQUFFLElBQUk7TUFDWixZQUFZLEVBQUUsSUFBSTtNQUNsQixhQUFhLEVBQUUsSUFBSTtNQUNuQixnQkFBZ0IsRTFDbkhYLE9BQXdCO00wQ29IN0IsT0FBTyxFQUFFLEdBQUc7TUFDWixPQUFPLEVBQUUsRUFBRSxHQU1YO01BOUlKLEFBMElJLFdBMUlPLENBMkdWLENBQUMsQUFTQyxXQUFXLENBSVgsS0FBSyxDQWtCSixHQUFHLENBQUM7UUFDSCxLQUFLLEVBQUUsSUFBSTtRQUNYLE1BQU0sRUFBRSxJQUFJLEdBQ1o7O0FBN0lMLEFBa0pDLFdBbEpVLENBa0pWLGtCQUFrQixDQUFDO0VBQ2xCLE9BQU8sRUFBRSxZQUFZLEdBZ0JyQjtFQW5LRixBQXFKRSxXQXJKUyxDQWtKVixrQkFBa0IsQ0FHakIsR0FBRyxDQUFDO0lBQ0gsUUFBUSxFQUFFLFFBQVE7SUFDbEIsR0FBRyxFQUFFLEdBQUc7SUFDUixPQUFPLEVBQUUsWUFBWTtJQUNyQixLQUFLLEVBQUUsSUFBSTtJQUNYLE1BQU0sRUFBRSxJQUFJO0lBQ1osV0FBVyxFQUFFLEdBQUcsR0FDaEI7RUE1SkgsQUErSkcsV0EvSlEsQ0FrSlYsa0JBQWtCLEFBWWhCLE1BQU0sR0FDSixtQkFBbUIsQ0FBQztJQUNyQixPQUFPLEVBQUUsS0FBSyxHQUNkOztBQWpLSixBQXFLQyxXQXJLVSxDQXFLVixtQkFBbUIsQ0FBQztFN0JySG5CLFNBQVMsRTZCc0hLLElBQUk7RTdCckhsQixTQUFTLEVGNUJGLE1BQXlCO0VFaUNoQyxXQUFXLEVBQUUsU0FBbUM7RTZCaUhoRCxPQUFPLEVBQUUsSUFBSTtFQUNiLFFBQVEsRUFBRSxRQUFRO0VBQ2xCLEdBQUcsRUFBRSxJQUFJO0VBQ1QsSUFBSSxFQUFFLGlCQUFpQjtFQUN2QixLQUFLLEVBQUUsS0FBSztFQUNaLE9BQU8sRUFBRSxTQUFTO0VBQ2xCLFVBQVUsRTFDMUpILE9BQXdCO0UwQzJKL0IsYUFBYSxFQUFFLElBQUksR0FNbkI7RUFwTEYsQUFnTEUsV0FoTFMsQ0FxS1YsbUJBQW1CLENBV2xCLE1BQU0sQ0FBQztJQUNOLE9BQU8sRUFBRSxLQUFLO0lBQ2QsYUFBYSxFQUFFLElBQUksR0FDbkI7O0FDekxILEFBQUEsT0FBTyxDQUFDO0VBS1AsVUFBVSxFQUFFLEtBQUs7RUFDakIsZ0JBQWdCLEUzQ21CUixPQUF3QixHMkNIaEM7RTlCNEhDLE1BQU0sTUFBTSxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7SThCbEoxQyxBQUFBLE9BQU8sQ0FBQztNQUVOLE1BQU0sRUFBRSxjQUFjLEdBb0J2QjtFQXRCRCxBQVFDLE9BUk0sQUFRTCxNQUFNLENBQUM7SUFXUCxHQUFHLEVBQUUsR0FBRztJQUNSLElBQUksRUFBRSxNQUFNLEdBQ1o7STlCeUdBLE1BQU0sTUFBTSxNQUFNLE1BQU0sU0FBUyxFQUFFLE1BQU07TThCOUgzQyxBQVFDLE9BUk0sQUFRTCxNQUFNLENBQUM7UUFFTixJQUFJLEVBQUUsTUFBTSxHQVdiO0k5QnFIQSxNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO004QjFJMUMsQUFRQyxPQVJNLEFBUUwsTUFBTSxDQUFDO1FBS04sSUFBSSxFQUFFLE1BQU0sR0FRYjtJOUI2SEEsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztNOEJsSjFDLEFBUUMsT0FSTSxBQVFMLE1BQU0sQ0FBQztRQVFOLE9BQU8sRUFBRSxJQUFJLEdBS2Q7O0FBSUY7O0dBRUc7QUFFSCxBQUFBLGlCQUFpQixDQUFDO0VBZWpCLEtBQUssRUFBRSxrQkFBa0I7RUFDekIsT0FBTyxFQUFFLG1CQUFtQixHQUM1QjtFOUJnRkMsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsTUFBTTtJOEJqRzNDLEFBQUEsaUJBQWlCLENBQUM7TUFFaEIsS0FBSyxFQUFFLGtCQUFrQjtNQUN6QixPQUFPLEVBQUUsT0FBTyxHQWNqQjtFOUI0RkMsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztJOEI3RzFDLEFBQUEsaUJBQWlCLENBQUM7TUFNaEIsYUFBYSxFQUFFLFFBQVE7TUFDdkIsS0FBSyxFQUFFLGtCQUFrQjtNQUN6QixPQUFPLEVBQUUsVUFBVSxHQVNwQjtFOUJvR0MsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztJOEJySDFDLEFBQUEsaUJBQWlCLENBQUM7TUFXaEIsS0FBSyxFQUFFLElBQUk7TUFDWCxPQUFPLEVBQUUsVUFBVSxHQUtwQjs7QUFFRCxBQUFBLGdCQUFnQixDQUFDO0VBT2hCLEtBQUssRUFBRSxHQUFHO0VBQ1YsYUFBYSxFQUFFLElBQUksR0FPbkI7RTlCMkVDLE1BQU0sTUFBTSxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7SThCMUYxQyxBQUFBLGdCQUFnQixDQUFDO01BRWYsS0FBSyxFQUFFLElBQUk7TUFDWCxPQUFPLEVBQUUsQ0FBQztNQUNWLGFBQWEsRUFBRSxJQUFJLEdBV3BCO0VBZkQsQUFXRSxnQkFYYyxBQVVkLFVBQVUsQ0FDViwyQkFBMkIsQ0FBQyxHQUFHLENBQUM7SUFDL0IsU0FBUyxFQUFFLGNBQWMsR0FDekI7O0E5QjZFRCxNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO0U4QnpFMUMsQUFBQSwyQkFBMkIsQ0FBQztJQUUxQixLQUFLLEVBQUUsSUFBSTtJQUNYLE1BQU0sRUFBRSxPQUFPLEdBZ0JoQjs7QUFuQkQsQUFNQywyQkFOMEIsQ0FNMUIsR0FBRyxDQUFDO0VBV0gsT0FBTyxFQUFFLElBQ1YsR0FBQztFOUJ1REEsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztJOEJ6RTFDLEFBTUMsMkJBTjBCLENBTTFCLEdBQUcsQ0FBQztNQUVGLE9BQU8sRUFBRSxLQUFLO01BQ2QsUUFBUSxFQUFFLFFBQVE7TUFDbEIsR0FBRyxFQUFFLEdBQUc7TUFDUixLQUFLLEVBQUUsSUFBSTtNQUNYLE1BQU0sRUFBRSxJQUFJO01BQ1osS0FBSyxFM0NuRUMsT0FBMkI7TTJDb0VqQyxVQUFVLEVBQUUsY0FBYyxHQUkzQjs7QTlCdURBLE1BQU0sTUFBTSxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7RThCcEQxQyxBQUFBLGNBQWMsQ0FBQztJQUViLE9BQU8sRUFBRSxJQUFJLEdBRWQ7O0FBRUQsQUFBQSxhQUFhLENBQUM7RUFDYixVQUFVLEVBQUUsSUFBSSxHQXdCaEI7RUF6QkQsQUFHQyxhQUhZLENBR1osR0FBRyxDQUFDO0lBQ0gsUUFBUSxFQUFFLFFBQVE7SUFDbEIsR0FBRyxFQUFFLEdBQUc7SUFDUixLQUFLLEVBQUUsSUFBSTtJQUNYLE1BQU0sRUFBRSxJQUFJO0lBQ1osYUFBYSxFQUFFLElBQUk7SUFDbkIsS0FBSyxFM0NuRUUsT0FBcUI7STJDb0U1QixVQUFVLEVBQUUsY0FBYyxHQUMxQjtFQVhGLEFBYUMsYUFiWSxDQWFaLENBQUMsQ0FBQztJQUNELFVBQVUsRUFBRSxjQUFjLEdBVTFCO0lBeEJGLEFBZ0JFLGFBaEJXLENBYVosQ0FBQyxBQUdDLE1BQU0sQ0FBQztNQUNQLEtBQUssRTNDeEZDLE9BQTJCO00yQ3lGakMsZUFBZSxFQUFFLFNBQVMsR0FLMUI7TUF2QkgsQUFvQkcsYUFwQlUsQ0FhWixDQUFDLEFBR0MsTUFBTSxDQUlOLEdBQUcsQ0FBQztRQUNILEtBQUssRTNDNUZBLE9BQTJCLEcyQzZGaEM7O0FBTUo7O0dBRUc7QUFFSCxBQUFBLGdCQUFnQixDQUFDO0VBZ0JoQixRQUFRLEVBQUUsUUFBUTtFQUNsQixLQUFLLEVBQUUsS0FBSztFQUNaLE1BQU0sRUFBRSxJQUFJO0VBQ1osT0FBTyxFQUFFLGtCQUFrQjtFQUMzQixVQUFVLEVBQUUsSUFBSTtFQUNoQixnQkFBZ0IsRTNDM0lSLEtBQW9CO0UyQzRJNUIsYUFBYSxFQUFFLFVBQVUsR0F1QnpCO0U5QjNDQyxNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxNQUFNO0k4QkYzQyxBQUFBLGdCQUFnQixDQUFDO01BRWYsS0FBSyxFQUFFLEtBQUs7TUFDWixPQUFPLEVBQUUsaUJBQWlCLEdBMEMzQjtFOUIvQkMsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztJOEJkMUMsQUFBQSxnQkFBZ0IsQ0FBQztNQU1mLEtBQUssRUFBRSxLQUFLO01BQ1osT0FBTyxFQUFFLGlCQUFpQixHQXNDM0I7RTlCdkJDLE1BQU0sTUFBTSxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7SThCdEIxQyxBQUFBLGdCQUFnQixDQUFDO01BVWYsS0FBSyxFQUFFLElBQUk7TUFDWCxNQUFNLEVBQUUsQ0FBQztNQUNULE9BQU8sRUFBRSxnQkFBZ0I7TUFDekIsYUFBYSxFQUFFLFVBQVUsR0FnQzFCO0VBN0NELEFBd0JDLGdCQXhCZSxDQXdCZixDQUFDLENBQUM7SUFDRCxlQUFlLEVBQUUsU0FBUztJQUMxQixXQUFXLEVBQUUsR0FBRyxHQUNoQjtFQTNCRixBQTZCQyxnQkE3QmUsQUE2QmQsTUFBTSxDQUFDO0lBQ1AsUUFBUSxFQUFFLFFBQVE7SUFDbEIsR0FBRyxFQUFFLENBQUM7SUFDTixJQUFJLEVBQUUsQ0FBQztJQUNQLEtBQUssRUFBRSxLQUFLO0lBQ1osTUFBTSxFQUFFLEtBQUs7SUFDYixnQkFBZ0IsRTNDekpULEtBQW9CO0kyQzBKM0IsYUFBYSxFQUFFLFVBQVU7SUFDekIsT0FBTyxFQUFFLEVBQUU7SUFDWCxPQUFPLEVBQUUsQ0FBQyxHQUNWO0VBdkNGLEFBeUNDLGdCQXpDZSxDQXlDZixDQUFDLENBQUM7SUFDRCxRQUFRLEVBQUUsUUFBUTtJQUNsQixPQUFPLEVBQUUsQ0FBQyxHQUNWOztBQUdGLEFBQUEsZ0JBQWdCLENBQUM7RUFDaEIsTUFBTSxFQUFFLE1BQU0sR0FDZDs7QUFFRCxBQUFBLGNBQWMsQ0FBQztFQUNkLE9BQU8sRUFBRSxLQUFLO0VBQ2QsTUFBTSxFQUFFLE1BQU0sR0FDZDs7QUFFRCxBQUNDLGVBRGMsQ0FDZCxHQUFHLENBQUM7RUFDSCxLQUFLLEVBQUUsSUFBSTtFQUNYLE1BQU0sRUFBRSxJQUFJO0VBQ1osWUFBWSxFQUFFLElBQUk7RUFDbEIsS0FBSyxFM0N2SkUsT0FBcUI7RTJDd0o1QixVQUFVLEVBQUUsY0FBYyxHQUsxQjtFQVhGLEFBUUUsZUFSYSxDQUNkLEdBQUcsQUFPRCxNQUFNLENBQUM7SUFDUCxLQUFLLEUzQ3hLQyxPQUEyQixHMkN5S2pDOztBQUtIOztHQUVHO0FBRUgsQUFBQSxlQUFlLENBQUM7RUFDZixXQUFXLEVBQUUsTUFBTTtFQUNuQixNQUFNLEVBQUUsSUFBSTtFQUNaLGdCQUFnQixFM0NwTVIsS0FBb0IsRzJDK001QjtFQWRELEFBS0MsZUFMYyxDQUtkLENBQUMsQ0FBQztJQUNELEtBQUssRTNDeExFLE9BQTJCO0kyQ3lMbEMsZUFBZSxFQUFFLFNBQVM7SUFDMUIsVUFBVSxFQUFFLGNBQWMsR0FLMUI7SUFiRixBQVVFLGVBVmEsQ0FLZCxDQUFDLEFBS0MsTUFBTSxDQUFDO01BQ1AsS0FBSyxFM0N2TUMsT0FBMkIsRzJDd01qQzs7QUFJSCxBQUFBLHVCQUF1QixDQUFDO0VBWXZCLEtBQUssRUFBRSxrQkFBa0I7RUFDekIsWUFBWSxFQUFFLEtBQUssR0FDbkI7RTlCdkdDLE1BQU0sTUFBTSxNQUFNLE1BQU0sU0FBUyxFQUFFLE1BQU07SThCeUYzQyxBQUFBLHVCQUF1QixDQUFDO01BRXRCLFlBQVksRUFBRSxDQUFDLEdBWWhCO0U5QjNGQyxNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO0k4QjZFMUMsQUFBQSx1QkFBdUIsQ0FBQztNQUt0QixLQUFLLEVBQUUsSUFBSTtNQUNYLFlBQVksRUFBRSxJQUFJLEdBUW5CO0U5Qm5GQyxNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO0k4QnFFMUMsQUFBQSx1QkFBdUIsQ0FBQztNQVN0QixZQUFZLEVBQUUsQ0FBQyxHQUtoQjs7QUNyT0QsQUFBQSxPQUFPLENBQUM7RUFDUCxnQkFBZ0IsRTVDS1IsS0FBb0IsRzRDUTVCO0VBZEQsQUFHQyxPQUhNLENBR04sUUFBUSxDQUFDO0lBUVIsTUFBTSxFQUFFLEtBQUs7SUFDYixXQUFXLEVBQUUsTUFBTSxHQUNuQjtJL0I2SEEsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztNK0IxSTFDLEFBR0MsT0FITSxDQUdOLFFBQVEsQ0FBQztRQUVQLE1BQU0sRUFBRSxLQUFLLEdBUWQ7SS9CcUlBLE1BQU0sTUFBTSxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7TStCbEoxQyxBQUdDLE9BSE0sQ0FHTixRQUFRLENBQUM7UUFLUCxNQUFNLEVBQUUsSUFBSSxHQUtiOztBQUdGLEFBQ0MsYUFEWSxDQUNaLEdBQUcsQ0FBQztFQVFILFNBQVMsRUFBRSxLQUFLO0VBQ2hCLE1BQU0sRUFBRSxJQUFJO0VBQ1osVUFBVSxFQUFFLEtBQUssR0FDakI7RS9COEdBLE1BQU0sTUFBTSxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7SStCMUgxQyxBQUNDLGFBRFksQ0FDWixHQUFHLENBQUM7TUFFRixTQUFTLEVBQUUsS0FBSyxHQVNqQjtFL0JzSEEsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztJK0JsSTFDLEFBQ0MsYUFEWSxDQUNaLEdBQUcsQ0FBQztNQUtGLFNBQVMsRUFBRSxLQUFLLEdBTWpCOztBQUdGLEFBQUEsZUFBZSxDQUFDO0VBUWYsS0FBSyxFQUFFLGtCQUFrQjtFQUN6QixNQUFNLEVBQUUsTUFBTTtFQUNkLFNBQVMsRUFBRSxLQUFLLEdBQ2hCO0UvQm9GQyxNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxNQUFNO0krQi9GM0MsQUFBQSxlQUFlLENBQUM7TUFFZCxTQUFTLEVBQUUsS0FBSyxHQVNqQjtFL0JnR0MsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztJK0IzRzFDLEFBQUEsZUFBZSxDQUFDO01BS2QsT0FBTyxFQUFFLElBQUksR0FNZDs7QUFFRCxBQUFBLGdCQUFnQixDQUFDO0VBQ2hCLEtBQUssRUFBRSxLQUFLLEdBSVo7RS9CaUdDLE1BQU0sTUFBTSxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7SStCdEcxQyxBQUFBLGdCQUFnQixDQUFDO01BR2YsS0FBSyxFQUFFLEtBQUssR0FFYjs7QUFDRCxBQUFBLHFCQUFxQixDQUFDO0VBQ3JCLE1BQU0sRUFBRSxJQUFJO0VBQ1osS0FBSyxFQUFFLEtBQUs7RUFDWixnQkFBZ0IsRTVDaENSLE9BQTJCO0U0Q2lDbkMsT0FBTyxFQUFDLElBQUk7RUFDWixXQUFXLEVBQUUsTUFBTTtFQUNuQixlQUFlLEVBQUUsTUFBTTtFQUN2QixVQUFVLEVBQUUsY0FBYyxHQTBCMUI7RS9CK0RDLE1BQU0sTUFBTSxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7SStCaEcxQyxBQUFBLHFCQUFxQixDQUFDO01BVXBCLEtBQUssRUFBRSxLQUFLLEdBdUJiO0VBakNELEFBYUMscUJBYm9CLEFBYW5CLE1BQU0sQ0FBQztJQUNQLGFBQWEsRUFBRSxpQkFBaUIsR0FDaEM7RUFmRixBQWlCQyxxQkFqQm9CLENBaUJwQixJQUFJLENBQUM7SUFDSixNQUFNLEVBQUUsSUFBSTtJQUNaLEtBQUssRUFBRSxJQUFJO0lBQ1gsS0FBSyxFQUFFLE9BQU87SUFDZCxTQUFTLEVBQUUsSUFBSTtJQUNmLFdBQVcsRUFBRSxHQUFHO0lBQ2hCLGNBQWMsRUFBRSxNQUFNO0lBQ3RCLFdBQVcsRUFBRSxJQUFJLEdBQ2pCO0VBekJGLEFBMkJDLHFCQTNCb0IsQ0EyQnBCLEdBQUcsQ0FBQztJQUNILE1BQU0sRUFBRSxJQUFJO0lBQ1osS0FBSyxFQUFFLElBQUk7SUFDWCxLQUFLLEVBQUUsT0FBTztJQUNkLFlBQVksRUFBRSxHQUFHLEdBQ2pCOztBQUdGLEFBQUEsZ0JBQWdCLENBQUM7RUFLaEIsT0FBTyxFQUFFLElBQUk7RUFDYixXQUFXLEVBQUUsTUFBTTtFQUNuQixLQUFLLEVBQUUsSUFBSSxHQUNYO0UvQnFEQyxNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO0krQjdEMUMsQUFBQSxnQkFBZ0IsQ0FBQztNQUVmLEtBQUssRUFBRSxLQUFLLEdBTWI7O0FBRUQsQUFBQSxnQkFBZ0IsQ0FBQztFQUNoQixLQUFLLEVBQUUsSUFBSSxHQXFCWDtFL0I2QkMsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztJK0JuRDFDLEFBQUEsZ0JBQWdCLENBQUM7TUFHZixPQUFPLEVBQUUsSUFBSSxHQW1CZDtFQXRCRCxBQU1DLGdCQU5lLENBTWYsQ0FBQyxDQUFDO0lBQ0QsT0FBTyxFQUFFLElBQUksR0FDYjtFQVJGLEFBVUMsZ0JBVmUsQ0FVZixHQUFHLENBQUM7SUFDSCxLQUFLLEVBQUUsSUFBSTtJQUNYLE1BQU0sRUFBRSxJQUFJO0lBQ1osS0FBSyxFNUN6R0UsS0FBa0I7STRDMEd6QixVQUFVLEVBQUUsY0FBYyxHQUMxQjtFQWZGLEFBa0JFLGdCQWxCYyxBQWlCZCxNQUFNLENBQ04sR0FBRyxDQUFDO0lBQ0gsS0FBSyxFNUN2R0MsT0FBMkIsRzRDd0dqQzs7QUFJSCxBQUFBLGtCQUFrQixDQUFDO0VBQ2xCLEtBQUssRUFBRSxJQUFJO0VBS1gsT0FBTyxFQUFFLElBQUk7RUFDYixRQUFRLEVBQUUsUUFBUSxHQWdDbEI7RS9CWkMsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztJK0IzQjFDLEFBQUEsa0JBQWtCLENBQUM7TUFHakIsT0FBTyxFQUFFLElBQUksR0FvQ2Q7RUF2Q0QsQUFTQyxrQkFUaUIsQ0FTakIsMEJBQTBCLENBQUM7SS9CMUUxQixTQUFTLEUrQjJFSyxJQUFJO0kvQjFFbEIsU0FBUyxFRjVCRixNQUF5QjtJRWlDaEMsV0FBVyxFQUFFLFNBQW1DO0krQnNFaEQsT0FBTyxFQUFFLElBQUk7SUFDYixXQUFXLEVBQUUsTUFBTTtJQUNuQixlQUFlLEVBQUUsTUFBTTtJQUN2QixRQUFRLEVBQUUsUUFBUTtJQUNsQixHQUFHLEVBQUUsS0FBSztJQUNWLEtBQUssRUFBRSxLQUFLO0lBQ1osS0FBSyxFQUFFLElBQUk7SUFDWCxNQUFNLEVBQUUsSUFBSTtJQUNaLFlBQVksRUFBRSxHQUFHO0lBQ2pCLGdCQUFnQixFNUN2R1QsT0FBcUI7STRDd0c1QixLQUFLLEU1Q2pJRSxPQUEyQjtJNENrSWxDLGFBQWEsRUFBRSxJQUFJO0lBQ25CLFdBQVcsRUFBRSxHQUFHO0lBQ2hCLFVBQVUsRUFBRSxjQUFjLEdBQzFCO0VBekJGLEFBMkJDLGtCQTNCaUIsR0EyQmYsR0FBRyxDQUFDO0lBQ0wsS0FBSyxFQUFFLElBQUk7SUFDWCxNQUFNLEVBQUUsSUFBSTtJQUNaLEtBQUssRTVDbEpFLEtBQWtCO0k0Q21KekIsTUFBTSxFQUFFLE9BQU8sR0FDZjtFQWhDRixBQW1DRSxrQkFuQ2dCLEFBa0NoQixNQUFNLEdBQ0osR0FBRyxDQUFDO0lBQ0wsS0FBSyxFNUNoSkMsT0FBMkIsRzRDaUpqQzs7QUFLSDs7R0FFRztBQUdILEFBQUEsb0JBQW9CLENBQUM7RUFDcEIsUUFBUSxFQUFFLFFBQVE7RUFDbEIsS0FBSyxFQUFFLElBQUk7RUFDWCxNQUFNLEVBQUUsSUFBSTtFQUNaLE9BQU8sRUFBRSxHQUFHO0VBQ1osS0FBSyxFQUFFLElBQUksR0FrRFg7RUF2REQsQUFPQyxvQkFQbUIsQ0FPbkIsSUFBSSxDQUFDO0lBQ0osT0FBTyxFQUFFLFlBQVk7SUFDckIsUUFBUSxFQUFFLFFBQVE7SUFDbEIsS0FBSyxFQUFFLENBQUM7SUFDUixJQUFJLEVBQUUsQ0FBQztJQUNQLEtBQUssRUFBRSxJQUFJO0lBQ1gsTUFBTSxFQUFFLEdBQUc7SUFDWCxNQUFNLEVBQUUsSUFBSTtJQUNaLGdCQUFnQixFNUNsTFQsS0FBa0IsRzRDcU16QjtJQWxDRixBQWlCRSxvQkFqQmtCLENBT25CLElBQUksQUFVRixVQUFXLENYK0JBLENBQUMsRVcvQkU7TUFDZCxHQUFHLEVBQUUsQ0FBQztNQUNOLFVBQVUsRUFBRSxnQkFBZ0IsQ0FwQlgsS0FBSyxFQW9CMkIsR0FBRyxDQXBCbkMsS0FBSyxDQUFMLEtBQUssRUFvQnNFLFNBQVMsQ0FwQnBGLEtBQUssQ0FvQm1HLEVBQUUsR0FDM0g7SUFwQkgsQUFzQkUsb0JBdEJrQixDQU9uQixJQUFJLEFBZUYsVUFBVyxDWGtDQSxDQUFDLEVXbENFO01BQ2QsR0FBRyxFQUFFLGVBQWU7TUFDcEIsVUFBVSxFQUFFLGdCQUFnQixDQXpCWCxLQUFLLEVBeUIyQixPQUFPLENBQUMsR0FBRyxDQXpCM0MsS0FBSztNQTBCdEIsZ0JBQWdCLEU1QzVMVixLQUFrQjtNNEM2THhCLE9BQU8sRUFBRSxDQUFDLEdBQ1Y7SUEzQkgsQUE2QkUsb0JBN0JrQixDQU9uQixJQUFJLEFBc0JGLFVBQVcsQ1hxQ0EsQ0FBQyxFV3JDRTtNQUNkLE1BQU0sRUFBRSxDQUFDO01BQ1QsVUFBVSxFQUFFLGdCQUFnQixDQWhDWCxLQUFLLEVBZ0MyQixNQUFNLENBaEN0QyxLQUFLLENBQUwsS0FBSyxFQWdDeUUsU0FBUyxDQWhDdkYsS0FBSyxDQWdDc0csRUFBRTtNQUM5SCxnQkFBZ0IsRTVDbk1WLEtBQWtCLEc0Q29NeEI7RUFqQ0gsQUFzQ0csb0JBdENpQixBQW9DbEIsVUFBVSxDQUNWLElBQUksQUFDRixVQUFXLENYVUQsQ0FBQyxFV1ZHO0lBQ2QsR0FBRyxFQUFFLGVBQWU7SUFDcEIsU0FBUyxFQUFFLGNBQWM7SUFDekIsVUFBVSxFQUFFLGdCQUFnQixDQTFDWixLQUFLLEVBMEM0QixHQUFHLENBMUNwQyxLQUFLLEVBMENvRCxTQUFTLENBMUNsRSxLQUFLLENBQUwsS0FBSyxHQTJDckI7RUExQ0osQUE0Q0csb0JBNUNpQixBQW9DbEIsVUFBVSxDQUNWLElBQUksQUFPRixVQUFXLENYWUQsQ0FBQyxFV1pHO0lBQ2QsT0FBTyxFQUFFLENBQUMsR0FDVjtFQTlDSixBQWdERyxvQkFoRGlCLEFBb0NsQixVQUFVLENBQ1YsSUFBSSxBQVdGLFVBQVcsQ1hrQkQsQ0FBQyxFV2xCRztJQUNkLE1BQU0sRUFBRSxlQUFlO0lBQ3ZCLFNBQVMsRUFBRSxhQUFhO0lBQ3hCLFVBQVUsRUFBRSxnQkFBZ0IsQ0FwRFosS0FBSyxFQW9ENEIsTUFBTSxDQXBEdkMsS0FBSyxFQW9EdUQsU0FBUyxDQXBEckUsS0FBSyxDQUFMLEtBQUssR0FxRHJCOztBQU1KOztHQUVHO0FBRUgsQUFBQSxjQUFjLENBQUM7RUFLZCxRQUFRLEVBQUUsS0FBSztFQUNmLE1BQU0sRUFBRSxDQUFDO0VBQ1QsS0FBSyxFQUFFLElBQUk7RUFDWCxPQUFPLEVBQUUsTUFBTTtFQUNmLGdCQUFnQixFNUN2T1IsS0FBb0I7RTRDd081QixVQUFVLEVBQUUsQ0FBQyxDQUFFLElBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDNUNoTmhCLHFCQUF1QjtFNENpTi9CLE9BQU8sRUFBRSxFQUFFLEdBQ1g7RS9COUdDLE1BQU0sTUFBTSxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7SStCa0cxQyxBQUFBLGNBQWMsQ0FBQztNQUViLE9BQU8sRUFBRSxJQUFJLEdBVWQ7O0FBRUQsQUFBQSxtQkFBbUIsQ0FBQztFQUNuQixXQUFXLEVBQUUsTUFBTTtFQUNuQixTQUFTLEVBQUUsS0FBSztFQUNoQixNQUFNLEVBQUUsSUFBSTtFQUNaLE1BQU0sRUFBRSxNQUFNLEdBQ2Q7O0FBRUQsQUFDQyxxQkFEb0IsQ0FDcEIsR0FBRyxDQUFDO0VBQ0gsS0FBSyxFQUFFLElBQUk7RUFDWCxNQUFNLEVBQUUsSUFBSSxHQUNaOztBQUdGLEFBQUEsMkJBQTJCLENBQUM7RUFDM0IsT0FBTyxFQUFFLElBQUk7RUFDYixRQUFRLEVBQUUsUUFBUTtFQUNsQixHQUFHLEVBQUUsS0FBSztFQUNWLEtBQUssRUFBRSxpQkFBaUI7RUFDeEIsSUFBSSxFQUFFLElBQUksR0FLVjtFQVZELEFBT0MsMkJBUDBCLEFBT3pCLFVBQVUsQ0FBQztJQUNYLE9BQU8sRUFBRSxLQUFLLEdBQ2Q7O0FBR0YsQUFDQyxzQkFEcUIsQ0FDckIsR0FBRyxDQUFDO0VBQ0gsS0FBSyxFQUFFLElBQUk7RUFDWCxNQUFNLEVBQUUsSUFBSSxHQUNaOztBQUdGLEFBQ0MsbUJBRGtCLENBQ2xCLEdBQUcsQ0FBQztFQUNILEtBQUssRUFBRSxJQUFJO0VBQ1gsTUFBTSxFQUFFLElBQUksR0FDWjs7QUN2UkYsQUFBQSxXQUFXLENBQUM7RUFDWCxRQUFRLEVBQUUsS0FBSztFQUNmLEdBQUcsRUFBRSxNQUFNO0VBQ1gsS0FBSyxFQUFFLENBQUM7RUFDUixNQUFNLEVBQUUsQ0FBQztFQUNULElBQUksRUFBRSxDQUFDO0VBQ1AsS0FBSyxFQUFFLElBQUk7RUFDWCxNQUFNLEVBQUUsSUFBSTtFQUNaLFVBQVUsRUFBRSxjQUFjO0VBQzFCLGdCQUFnQixFN0NnQlIsT0FBd0I7RTZDZmhDLE9BQU8sRUFBRSxDQUFDO0VBQ1YsT0FBTyxFQUFFLEVBQUU7RUFDWCxVQUFVLEVBQUUsTUFBTSxHQTBCbEI7RUF0Q0QsQUFjQyxXQWRVLEFBY1QsVUFBVSxDQUFDO0lBQ1gsR0FBRyxFQUFFLENBQUM7SUFDTixPQUFPLEVBQUUsQ0FBQyxHQUNWO0VBakJGLEFBbUJDLFdBbkJVLEFBbUJULG1CQUFtQixDQUFDO0lBQ3BCLE9BQU8sRUFBRSxJQUFJLEdBQ2I7RUFyQkYsQUF1QkMsV0F2QlUsQ0F1QlYsUUFBUSxDQUFDO0lBS1IsV0FBVyxFQUFFLEtBQUssR0FDbEI7SWhDcUhBLE1BQU0sTUFBTSxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7TWdDbEoxQyxBQXVCQyxXQXZCVSxDQXVCVixRQUFRLENBQUM7UUFFUCxPQUFPLEVBQUUsVUFBVSxHQUlwQjtFQTdCRixBQStCQyxXQS9CVSxDQStCVixtQkFBbUIsQ0FBQztJaEN1Qm5CLFNBQVMsRWdDbEJLLElBQUk7SWhDbUJsQixTQUFTLEVGNUJGLElBQXlCO0lFaUNoQyxXQUFXLEVBQUUsT0FBbUMsR2dDdkJoRDtJaEM2R0EsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztNZ0NsSjFDLEFBK0JDLFdBL0JVLENBK0JWLG1CQUFtQixDQUFDO1FBRWxCLE9BQU8sRUFBRSxNQUFNLEdBSWhCOztBQUdGLEFBQUEsaUJBQWlCLENBQUM7RUFRakIsS0FBSyxFQUFFLGtCQUFrQixHQUN6QjtFaEM2RUMsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsTUFBTTtJZ0N0RjNDLEFBQUEsaUJBQWlCLENBQUM7TUFFaEIsS0FBSyxFQUFFLGtCQUFrQixHQU8xQjtFaENpR0MsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztJZ0MxRzFDLEFBQUEsaUJBQWlCLENBQUM7TUFLaEIsS0FBSyxFQUFFLElBQUksR0FJWjs7QUFFRDs7R0FFRztBQUVILEFBQUEsaUJBQWlCLENBQUM7RUFTakIsS0FBSyxFQUFFLEdBQUc7RUFDVixhQUFhLEVBQUUsSUFBSSxHQUNuQjtFaEN3RUMsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztJZ0NuRjFDLEFBQUEsaUJBQWlCLENBQUM7TUFFaEIsS0FBSyxFQUFFLElBQUk7TUFDWCxPQUFPLEVBQUUsVUFBVSxHQVFwQjtFaENnRkMsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztJZ0MzRjFDLEFBQUEsaUJBQWlCLENBQUM7TUFNaEIsT0FBTyxFQUFFLFVBQVUsR0FLcEI7O0FBRUQsQUFBQSxzQkFBc0IsQ0FBQztFQUt0QixVQUFVLEVBQUUsSUFBSSxHQTZDaEI7RWhDNEJDLE1BQU0sTUFBTSxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7SWdDOUUxQyxBQUFBLHNCQUFzQixDQUFDO01BRXJCLFVBQVUsRUFBRSxJQUFJLEdBZ0RqQjtFQWxERCxBQU9DLHNCQVBxQixHQU9uQixFQUFFLENBQUM7SUFLSixPQUFPLEVBQUUsSUFBSTtJQUNiLGFBQWEsRUFBRSxJQUFJLEdBb0NuQjtJaEM2QkEsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztNZ0M5RTFDLEFBT0Msc0JBUHFCLEdBT25CLEVBQUUsQ0FBQztRQUVILGFBQWEsRUFBRSxDQUFDLEdBd0NqQjtJQWpERixBQWVFLHNCQWZvQixHQU9uQixFQUFFLEdBUUQsQ0FBQyxDQUFDO01oQzdCSixTQUFTLEVnQ2tDTSxJQUFJO01oQ2pDbkIsU0FBUyxFRjVCRixNQUF5QjtNRWlDaEMsV0FBVyxFQUFFLE1BQW1DO01nQzZCL0MsT0FBTyxFQUFFLElBQUk7TUFDYixXQUFXLEVBQUUsTUFBTTtNQUNuQixPQUFPLEVBQUUsSUFBSTtNQUNiLEtBQUssRTdDakZDLE9BQTJCO002Q2tGakMsV0FBVyxFQUFFLElBQUk7TUFDakIsY0FBYyxFQUFFLE1BQU07TUFDdEIsZ0JBQWdCLEVBQUUsV0FBVztNQUM3QixVQUFVLEVBQUUsY0FBYztNQUMxQixVQUFVLEVBQUUsU0FBUyxHQVFyQjtNaEN5Q0QsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztRZ0M5RTFDLEFBZUUsc0JBZm9CLEdBT25CLEVBQUUsR0FRRCxDQUFDLENBQUM7VUFFRixLQUFLLEVBQUUsaUJBQWlCLEdBb0J6QjtNQXJDSCxBQStCRyxzQkEvQm1CLEdBT25CLEVBQUUsR0FRRCxDQUFDLENBZ0JGLEdBQUcsQ0FBQztRQUNILFFBQVEsRUFBRSxRQUFRO1FBQ2xCLEtBQUssRUFBRSxJQUFJO1FBQ1gsTUFBTSxFQUFFLElBQUk7UUFDWixZQUFZLEVBQUUsSUFBSSxHQUNsQjtJQXBDSixBQXlDRyxzQkF6Q21CLEdBT25CLEVBQUUsQUFnQ0YsTUFBTSxDQUVOLENBQUMsRUF6Q0osc0JBQXNCLEdBT25CLEVBQUUsQUFpQ0Ysa0JBQWtCLENBQ2xCLENBQUMsQ0FBQztNQUNELGdCQUFnQixFN0N4R1gsS0FBb0IsRzZDeUd6QjtJQTNDSixBQThDRSxzQkE5Q29CLEdBT25CLEVBQUUsQUF1Q0YsYUFBYSxDQUFDO01BQ2QsYUFBYSxFQUFFLENBQUMsR0FDaEI7O0FBTUg7O0dBRUc7QUFFSCxBQUFBLG1CQUFtQixDQUFDO0VBU25CLEtBQUssRUFBRSxHQUFHO0VBQ1YsYUFBYSxFQUFFLElBQUksR0FDbkI7RWhDQ0MsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztJZ0NaMUMsQUFBQSxtQkFBbUIsQ0FBQztNQUVsQixLQUFLLEVBQUUsSUFBSTtNQUNYLE9BQU8sRUFBRSxVQUFVLEdBUXBCO0VoQ1NDLE1BQU0sTUFBTSxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7SWdDcEIxQyxBQUFBLG1CQUFtQixDQUFDO01BTWxCLE9BQU8sRUFBRSxVQUFVLEdBS3BCOztBQUVELEFBQUEsd0JBQXdCLENBQUM7RUFLeEIsVUFBVSxFQUFFLElBQUksR0FpRmhCO0VoQy9FQyxNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO0lnQ1AxQyxBQUFBLHdCQUF3QixDQUFDO01BRXZCLFVBQVUsRUFBRSxJQUFJLEdBb0ZqQjtFQXRGRCxBQU9DLHdCQVB1QixHQU9yQixFQUFFLENBQUM7SUFRSixPQUFPLEVBQUUsS0FBSztJQUNkLGFBQWEsRUFBRSxJQUFJO0lBQ25CLEtBQUssRUFBRSxXQUFXLEdBNENsQjtJaEN0REEsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztNZ0NQMUMsQUFPQyx3QkFQdUIsR0FPckIsRUFBRSxDQUFDO1FBRUgsS0FBSyxFQUFFLGlCQUFpQixHQW9EekI7SWhDdERBLE1BQU0sTUFBTSxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7TWdDUDFDLEFBT0Msd0JBUHVCLEdBT3JCLEVBQUUsQ0FBQztRQUtILGFBQWEsRUFBRSxDQUFDLEdBaURqQjtJQTdERixBQW1CRSx3QkFuQnNCLEdBT3JCLEVBQUUsR0FZRCxDQUFDLENBQUM7TWhDeEdKLFNBQVMsRWdDeUdNLElBQUk7TWhDeEduQixTQUFTLEVGNUJGLE1BQXlCO01FaUNoQyxXQUFXLEVBQUUsTUFBbUM7TWdDb0cvQyxPQUFPLEVBQUUsSUFBSTtNQUNiLE9BQU8sRUFBRSxJQUFJO01BQ2IsS0FBSyxFN0N2SkMsT0FBMkI7TTZDd0pqQyxXQUFXLEVBQUUsSUFBSTtNQUNqQixjQUFjLEVBQUUsTUFBTTtNQUN0QixnQkFBZ0IsRUFBRSxXQUFXO01BQzdCLFVBQVUsRUFBRSxjQUFjO01BQzFCLFVBQVUsRUFBRSxTQUFTLEdBY3JCO01BMUNILEFBOEJHLHdCQTlCcUIsR0FPckIsRUFBRSxHQVlELENBQUMsQ0FXRixHQUFHLENBQUM7UUFDSCxRQUFRLEVBQUUsUUFBUTtRQUNsQixHQUFHLEVBQUUsR0FBRztRQUNSLEtBQUssRUFBRSxJQUFJO1FBQ1gsTUFBTSxFQUFFLElBQUk7UUFDWixXQUFXLEVBQUUsSUFBSTtRQUNqQixVQUFVLEVBQUUsY0FBYyxHQUMxQjtNQXJDSixBQXVDRyx3QkF2Q3FCLEdBT3JCLEVBQUUsR0FZRCxDQUFDLEFBb0JELE1BQU0sQ0FBQztRQUNQLGdCQUFnQixFN0M3S1gsS0FBb0IsRzZDOEt6QjtJQXpDSixBQTRDRSx3QkE1Q3NCLEdBT3JCLEVBQUUsQUFxQ0YsVUFBVSxDQUFDO01BQ1gsZ0JBQWdCLEU3Q2xMVixLQUFvQixHNkN1TDFCO01BbERILEFBK0NHLHdCQS9DcUIsR0FPckIsRUFBRSxBQXFDRixVQUFVLENBR1YsR0FBRyxDQUFDO1FBQ0gsU0FBUyxFQUFFLGNBQWMsR0FDekI7SUFqREosQUFxREcsd0JBckRxQixHQU9yQixFQUFFLEFBNkNGLGtCQUFrQixDQUNsQixDQUFDLENBQUM7TUFDRCxnQkFBZ0IsRTdDM0xYLEtBQW9CLEc2QzRMekI7SUF2REosQUEwREUsd0JBMURzQixHQU9yQixFQUFFLEFBbURGLGFBQWEsQ0FBQztNQUNkLGFBQWEsRUFBRSxDQUFDLEdBQ2hCO0VBNURILEFBK0RDLHdCQS9EdUIsQ0ErRHZCLGtCQUFrQixDQUFDO0lBQ2xCLE9BQU8sRUFBRSxJQUFJO0lBQ2IsZ0JBQWdCLEU3Q3RNVCxLQUFvQixHNkMwTjNCO0lBckZGLEFBbUVFLHdCQW5Fc0IsQ0ErRHZCLGtCQUFrQixDQUlqQixRQUFRLENBQUM7TUFLUixVQUFVLEVBQUUsSUFBSTtNQUNoQixPQUFPLEVBQUUsZ0JBQWdCLEdBV3pCO01oQzdFRCxNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO1FnQ1AxQyxBQW1FRSx3QkFuRXNCLENBK0R2QixrQkFBa0IsQ0FJakIsUUFBUSxDQUFDO1VBRVAsVUFBVSxFQUFFLEtBQUssR0FlbEI7TUFwRkgsQUEyRUcsd0JBM0VxQixDQStEdkIsa0JBQWtCLENBSWpCLFFBQVEsR0FRTCxFQUFFLENBQUM7UUFDSixVQUFVLEVBQUUsSUFBSSxHQU9oQjtRQW5GSixBQThFSSx3QkE5RW9CLENBK0R2QixrQkFBa0IsQ0FJakIsUUFBUSxHQVFMLEVBQUUsR0FHRCxDQUFDLENBQUM7VWhDbktOLFNBQVMsRWdDb0tRLElBQUk7VWhDbktyQixTQUFTLEVGNUJGLElBQXlCO1VFaUNoQyxXQUFXLEVBQUUsS0FBbUM7VWdDK0o3QyxXQUFXLEVBQUUsSUFBSTtVQUNqQixLQUFLLEU3Q2hORixzQkFBNkIsRzZDaU5oQzs7QUFPTDs7R0FFRztBQUVILEFBQUEsaUJBQWlCLENBQUM7RUFZakIsUUFBUSxFQUFFLFFBQVE7RUFDbEIsS0FBSyxFQUFFLEtBQUs7RUFDWixNQUFNLEVBQUUsY0FBYztFQUN0QixPQUFPLEVBQUUsTUFBTSxHQStCZjtFaEN4SkMsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsTUFBTTtJZ0MwRzNDLEFBQUEsaUJBQWlCLENBQUM7TUFFaEIsS0FBSyxFQUFFLEtBQUs7TUFDWixNQUFNLEVBQUUsYUFBYSxHQTJDdEI7RWhDcElDLE1BQU0sTUFBTSxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7SWdDc0YxQyxBQUFBLGlCQUFpQixDQUFDO01BTWhCLEtBQUssRUFBRSxJQUFJO01BQ1gsTUFBTSxFQUFFLENBQUM7TUFDVCxPQUFPLEVBQUUsU0FBUztNQUNsQixnQkFBZ0IsRTdDM09ULEtBQW9CLEc2Q2dSNUI7RUE5Q0QsQUFpQkMsaUJBakJnQixBQWlCZixPQUFPLENBQUM7SUFhUixRQUFRLEVBQUUsUUFBUTtJQUNsQixHQUFHLEVBQUUsQ0FBQztJQUNOLElBQUksRUFBRSxNQUFNO0lBQ1osS0FBSyxFQUFFLEtBQUs7SUFDWixNQUFNLEVBQUUsSUFBSTtJQUNaLFVBQVUsRUFBRSxtQkFBbUI7SUFDL0IsZ0JBQWdCLEU3Q3RRVCxLQUFvQjtJNkN1UTNCLGFBQWEsRUFBRSxVQUFVO0lBQ3pCLE9BQU8sRUFBRSxDQUFDO0lBQ1YsT0FBTyxFQUFFLEVBQUUsR0FDWDtJaENsSkEsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsTUFBTTtNZ0MwRzNDLEFBaUJDLGlCQWpCZ0IsQUFpQmYsT0FBTyxDQUFDO1FBRVAsSUFBSSxFQUFFLEtBQUssR0FxQlo7SWhDOUhBLE1BQU0sTUFBTSxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7TWdDc0YxQyxBQWlCQyxpQkFqQmdCLEFBaUJmLE9BQU8sQ0FBQztRQUtQLEdBQUcsRUFBRSxDQUFDO1FBQ04sSUFBSSxFQUFFLEtBQUs7UUFDWCxLQUFLLEVBQUUsaUJBQWlCO1FBQ3hCLE1BQU0sRUFBRSxJQUFJO1FBQ1osVUFBVSxFQUFFLElBQUk7UUFDaEIsYUFBYSxFQUFFLENBQUMsR0FhakI7RUF4Q0YsQUEwQ0MsaUJBMUNnQixDQTBDaEIsQ0FBQyxDQUFDO0lBQ0QsUUFBUSxFQUFFLFFBQVE7SUFDbEIsT0FBTyxFQUFFLENBQUMsR0FDVjs7QUFHRixBQUNDLDJCQUQwQixBQUN6QixPQUFPLENBQUM7RUFLUixRQUFRLEVBQUUsUUFBUTtFQUNsQixHQUFHLEVBQUUsTUFBTTtFQUNYLElBQUksRUFBRSxDQUFDO0VBQ1AsTUFBTSxFQUFFLEtBQUs7RUFDYixLQUFLLEVBQUUsS0FBSztFQUNaLGdCQUFnQixFN0M3UlQsS0FBb0I7RTZDOFIzQixPQUFPLEVBQUUsRUFBRTtFQUNYLE9BQU8sRUFBRSxDQUFDLEdBQ1Y7RWhDcEpBLE1BQU0sTUFBTSxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7SWdDc0kxQyxBQUNDLDJCQUQwQixBQUN6QixPQUFPLENBQUM7TUFFUCxPQUFPLEVBQUUsSUFBSSxHQVdkOztBQWRGLEFBZ0JDLDJCQWhCMEIsQUFnQnpCLE1BQU0sQ0FBQztFQUtQLEdBQUcsRUFBRSxNQUFNO0VBQ1gsSUFBSSxFQUFFLElBQUk7RUFDVixNQUFNLEVBQUUsSUFBSSxHQUNaO0VoQzlKQSxNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO0lnQ3NJMUMsQUFnQkMsMkJBaEIwQixBQWdCekIsTUFBTSxDQUFDO01BRU4sT0FBTyxFQUFFLElBQUksR0FNZDs7QUFHRixBQUVDLHNCQUZxQixHQUVuQixFQUFFLENBQUM7RUFLSixhQUFhLEVBQUUsSUFBSSxHQTBDbkI7RWhDbE5BLE1BQU0sTUFBTSxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7SWdDaUsxQyxBQUVDLHNCQUZxQixHQUVuQixFQUFFLENBQUM7TUFFSCxhQUFhLEVBQUUsSUFBSSxHQTZDcEI7RUFqREYsQUFTRSxzQkFUb0IsR0FFbkIsRUFBRSxHQU9ELENBQUMsQ0FBQztJaEN0UUosU0FBUyxFZ0N1UU0sSUFBSTtJaEN0UW5CLFNBQVMsRUY1QkYsSUFBeUI7SUVpQ2hDLFdBQVcsRUFBRSxLQUFtQztJZ0NrUS9DLEtBQUssRTdDOVJDLE9BQXFCO0k2QytSM0IsV0FBVyxFQUFFLElBQUk7SUFDakIsY0FBYyxFQUFFLE1BQU07SUFDdEIsVUFBVSxFQUFFLGNBQWMsR0FjMUI7SUE1QkgsQUFnQkcsc0JBaEJtQixHQUVuQixFQUFFLEdBT0QsQ0FBQyxDQU9GLEdBQUcsQ0FBQztNQUNILFFBQVEsRUFBRSxRQUFRO01BQ2xCLEdBQUcsRUFBRSxHQUFHO01BQ1IsS0FBSyxFQUFFLElBQUk7TUFDWCxNQUFNLEVBQUUsSUFBSTtNQUNaLFdBQVcsRUFBRSxJQUFJO01BQ2pCLFVBQVUsRUFBRSxjQUFjLEdBQzFCO0lBdkJKLEFBeUJHLHNCQXpCbUIsR0FFbkIsRUFBRSxHQU9ELENBQUMsQUFnQkQsTUFBTSxDQUFDO01BQ1AsS0FBSyxFN0NsVUEsT0FBMkIsRzZDbVVoQztFQTNCSixBQStCRyxzQkEvQm1CLEdBRW5CLEVBQUUsQUE0QkYsVUFBVSxDQUNWLENBQUMsQ0FBQztJQUNELEtBQUssRTdDeFVBLE9BQTJCLEc2Q3lVaEM7RUFqQ0osQUFtQ0csc0JBbkNtQixHQUVuQixFQUFFLEFBNEJGLFVBQVUsQ0FLVixHQUFHLENBQUM7SUFDSCxTQUFTLEVBQUUsY0FBYyxHQUN6QjtFQXJDSixBQXlDRyxzQkF6Q21CLEdBRW5CLEVBQUUsQUFzQ0Ysa0JBQWtCLENBQ2xCLENBQUMsQ0FBQztJQUNELEtBQUssRTdDbFZBLE9BQTJCLEc2Q21WaEM7RUEzQ0osQUE4Q0Usc0JBOUNvQixHQUVuQixFQUFFLEFBNENGLGFBQWEsQ0FBQztJQUNkLGFBQWEsRUFBRSxDQUFDLEdBQ2hCOztBQWhESCxBQW1EQyxzQkFuRHFCLENBbURyQixrQkFBa0IsQ0FBQztFQUNsQixPQUFPLEVBQUUsSUFBSSxHQWFiO0VBakVGLEFBdURHLHNCQXZEbUIsQ0FtRHJCLGtCQUFrQixDQUdqQixRQUFRLEdBQ0wsRUFBRSxDQUFDO0lBQ0osVUFBVSxFQUFFLElBQUksR0FPaEI7SUEvREosQUEwREksc0JBMURrQixDQW1EckIsa0JBQWtCLENBR2pCLFFBQVEsR0FDTCxFQUFFLEdBR0QsQ0FBQyxDQUFDO01oQ3ZUTixTQUFTLEVnQ3dUUSxJQUFJO01oQ3ZUckIsU0FBUyxFRjVCRixNQUF5QjtNRWlDaEMsV0FBVyxFQUFFLE9BQW1DO01nQ21UN0MsV0FBVyxFQUFFLElBQUk7TUFDakIsS0FBSyxFN0NqVkQscUJBQXVCLEc2Q2tWM0I7O0FBT0w7O0dBRUc7QUFFSCxBQUFBLEtBQUssQUFBQSxVQUFVLENBQUM7RUFDZixRQUFRLEVBQUUsTUFBTSxHQVNoQjtFQVZELEFBR0MsS0FISSxBQUFBLFVBQVUsQ0FHZCxPQUFPLEFBQUEsUUFBUSxDQUFDO0lBQ2YsTUFBTSxFQUFFLENBQUMsR0FDVDtFQUxGLEFBT0MsS0FQSSxBQUFBLFVBQVUsQ0FPZCxvQkFBb0IsQ0FBQztJQUNwQixPQUFPLEVBQUUsR0FBRyxHQUNaOztBQ3JZRixBQUFBLHlCQUF5QixDQUFDO0VBZXpCLE9BQU8sRUFBRSxJQUFJO0VBQ2IsZ0JBQWdCLEU5Q1ZSLEtBQW9CLEc4Q1c1QjtFakM2R0MsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsTUFBTTtJaUM5SDNDLEFBQUEseUJBQXlCLENBQUM7TUFFeEIsUUFBUSxFQUFFLFFBQVE7TUFDbEIsS0FBSyxFQUFFLG1CQUFtQjtNQUMxQixNQUFNLEVBQUUsSUFBSSxHQWFiO0VqQ3lIQyxNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO0lpQzFJMUMsQUFBQSx5QkFBeUIsQ0FBQztNQU94QixRQUFRLEVBQUUsUUFBUTtNQUNsQixLQUFLLEVBQUUsSUFBSTtNQUNYLE1BQU0sRUFBRSxJQUFJLEdBUWI7RWpDaUlDLE1BQU0sTUFBTSxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7SWlDbEoxQyxBQUFBLHlCQUF5QixDQUFDO01BWXhCLE9BQU8sRUFBRSxJQUFJLEdBS2Q7O0FqQzZHQyxNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxNQUFNO0VpQzNHM0MsQUFBQSwrQkFBK0IsQ0FBQztJQUU5QixTQUFTLEVBQUUsS0FBSztJQUNoQixNQUFNLEVBQUUsTUFBTSxHQUVmOztBQUVELEFBQUEsK0JBQStCLENBQUM7RUFDL0IsTUFBTSxFQUFFLE1BQU0sR0FDZDs7QUFFRCxBQUFBLCtCQUErQixDQUFDO0VBQy9CLFFBQVEsRUFBRSxRQUFRO0VBQ2xCLGFBQWEsRUFBRSxJQUFJLEdBTW5CO0VBUkQsQUFJQywrQkFKOEIsQ0FJOUIsbUJBQW1CLENBQUM7SUFDbkIsTUFBTSxFQUFFLEdBQUcsQ0FBQyxLQUFLLEM5Q01WLFVBQXFCO0k4Q0w1QixVQUFVLEVBQUUsTUFBTSxHQUNsQjs7QWpDNkdBLE1BQU0sTUFBTSxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7RWlDMUcxQyxBQUFBLGtDQUFrQyxDQUFDO0lBRWpDLE9BQU8sRUFBRSxJQUFJLEdBRWQ7O0FBRUQsQUFBQSxzQ0FBc0MsQ0FBQztFQUN0QyxXQUFXLEVBQUUsR0FBRyxHQVNoQjtFQVZELEFBR0Msc0NBSHFDLEdBR25DLEdBQUcsQ0FBQztJQUNMLFFBQVEsRUFBRSxRQUFRO0lBQ2xCLEdBQUcsRUFBRSxHQUFHO0lBQ1IsS0FBSyxFQUFFLElBQUk7SUFDWCxNQUFNLEVBQUUsSUFBSTtJQUNaLFlBQVksRUFBRSxHQUFHLEdBQ2pCOztBQUdGLEFBQUEsc0NBQXNDLENBQUM7RUFDdEMsTUFBTSxFQUFFLE9BQU8sR0FlZjtFQWhCRCxBQUdDLHNDQUhxQyxDQUdyQyxHQUFHLENBQUM7SUFDSCxRQUFRLEVBQUUsUUFBUTtJQUNsQixHQUFHLEVBQUUsR0FBRztJQUNSLEtBQUssRUFBRSxJQUFJO0lBQ1gsTUFBTSxFQUFFLElBQUk7SUFDWixXQUFXLEVBQUUsR0FBRyxHQUNoQjtFQVRGLEFBWUUsc0NBWm9DLEFBV3BDLE1BQU0sR0FDSix1Q0FBdUMsQ0FBQztJQUN6QyxPQUFPLEVBQUUsS0FBSyxHQUNkOztBQUlILEFBQUEsdUNBQXVDLENBQUM7RUFDdkMsT0FBTyxFQUFFLElBQUk7RUFDYixRQUFRLEVBQUUsUUFBUTtFQUNsQixHQUFHLEVBQUUsSUFBSTtFQUNULElBQUksRUFBRSxpQkFBaUI7RUFDdkIsS0FBSyxFQUFFLEtBQUs7RUFDWixPQUFPLEVBQUUsSUFBSTtFQUNiLFVBQVUsRTlDMURGLE9BQXdCO0U4QzJEaEMsYUFBYSxFQUFFLElBQUksR0FDbkI7O0FBRUQsQUFBQSw2Q0FBNkMsQ0FBQztFakNqQzVDLFNBQVMsRWlDa0NJLElBQUk7RWpDakNqQixTQUFTLEVGNUJGLE1BQXlCO0VFaUNoQyxXQUFXLEVBQUUsT0FBbUM7RWlDNkJqRCxhQUFhLEVBQUUsSUFBSTtFQUNuQixXQUFXLEVBQUUsSUFBSTtFQUNqQixLQUFLLEU5Q2hGRyxPQUEyQixHOENpRm5DOztBQUVELEFBQUEsNENBQTRDLENBQUM7RWpDeEMzQyxTQUFTLEVpQ3lDSSxJQUFJO0VqQ3hDakIsU0FBUyxFRjVCRixNQUF5QjtFRWlDaEMsV0FBVyxFQUFFLFNBQW1DO0VpQ29DakQsV0FBVyxFQUFFLEdBQUc7RUFDaEIsS0FBSyxFOUNoRUcsT0FBeUIsRzhDaUVqQzs7QUFFRCxBQUFBLGlDQUFpQyxDQUFDO0VBQ2pDLFFBQVEsRUFBRSxRQUFRLEdBUWxCO0VBVEQsQUFJRSxpQ0FKK0IsQUFHL0IsYUFBYSxDQUNiLHVDQUF1QyxDQUFDO0lBQ3ZDLEtBQUssRUFBRSxJQUFJO0lBQ1gsSUFBSSxFQUFFLElBQUksR0FDVjs7QUMzR0gsQUFBQSxZQUFZLENBQUM7RUFDWixRQUFRLEVBQUUsUUFBUSxHQUNsQjs7QUFFRCxBQUFBLG1CQUFtQixDQUFDO0VsQ2tEbEIsU0FBUyxFa0NqREksSUFBSTtFbENrRGpCLFNBQVMsRUY1QkYsTUFBeUI7RUVpQ2hDLFdBQVcsRUFBRSxHQUFtQztFa0N0RGpELEtBQUssRUFBRSxJQUFJO0VBQ1gsTUFBTSxFQUFFLElBQUk7RUFDWixPQUFPLEVBQUUsUUFBUTtFQUNqQixVQUFVLEUvQ0hGLEtBQW9CO0UrQ0k1QixNQUFNLEVBQUUsR0FBRyxDQUFDLEtBQUssQy9DK0JULFVBQXFCO0UrQzlCN0IsYUFBYSxFQUFFLEdBQUc7RUFDbEIsV0FBVyxFQUFFLEdBQUc7RUFDaEIsS0FBSyxFL0NtQkcsT0FBcUIsRytDbEI3Qjs7QUFFRCxBQUFBLG9CQUFvQixDQUFDO0VBQ3BCLFFBQVEsRUFBRSxRQUFRO0VBQ2xCLEdBQUcsRUFBRSxDQUFDO0VBQ04sS0FBSyxFQUFFLENBQUM7RUFDUixLQUFLLEVBQUUsSUFBSTtFQUNYLE1BQU0sRUFBRSxJQUFJLEdBZ0JaO0VBckJELEFBT0Msb0JBUG1CLENBT25CLEdBQUcsQ0FBQztJQUNILFFBQVEsRUFBRSxRQUFRO0lBQ2xCLEdBQUcsRUFBRSxHQUFHO0lBQ1IsS0FBSyxFQUFFLElBQUk7SUFDWCxNQUFNLEVBQUUsSUFBSTtJQUNaLEtBQUssRS9DekJFLEtBQWtCO0krQzBCekIsVUFBVSxFQUFFLGNBQWMsR0FDMUI7RUFkRixBQWlCRSxvQkFqQmtCLEFBZ0JsQixNQUFNLENBQ04sR0FBRyxDQUFDO0lBQ0gsS0FBSyxFL0N2QkMsT0FBMkIsRytDd0JqQzs7QUNuQ0gsQUFBQSxlQUFlLENBQUM7RUFDZixNQUFNLEVBQUUsTUFBTSxHQUNkOztBQUVELEFBQUEsc0JBQXNCLENBQUM7RUFDdEIsYUFBYSxFQUFFLElBQUksR0FDbkI7O0FBRUQsQUFBQSxxQkFBcUIsQ0FBQztFbkM4Q3BCLFNBQVMsRW1DN0NJLElBQUk7RW5DOENqQixTQUFTLEVGNUJGLE1BQXlCO0VFaUNoQyxXQUFXLEVBQUUsTUFBbUM7RW1DbERqRCxhQUFhLEVBQUUsS0FBSztFQUNwQixXQUFXLEVBQUUsTUFBTTtFQUNuQixjQUFjLEVBQUUsTUFBTTtFQUN0QixXQUFXLEVBQUUsSUFBSSxHQVlqQjtFQWpCRCxBQU9DLHFCQVBvQixDQU9wQixTQUFTLENBQUM7SUFDVCxLQUFLLEVoRGdCRSxPQUFxQixHZ0RmNUI7RUFURixBQVdDLHFCQVhvQixDQVdwQixTQUFTLENBQUM7SUFDVCxXQUFXLEVBQUUsSUFBSTtJQUNqQixPQUFPLEVBQUUsU0FBUztJQUNsQixnQkFBZ0IsRWhEbUJULFVBQXFCO0lnRGxCNUIsS0FBSyxFaERaRSxPQUEyQixHZ0RhbEM7O0FBR0YsQUFBQSwyQkFBMkIsQ0FBQztFQUMzQixlQUFlLEVBQUUsTUFBTTtFQUN2QixLQUFLLEVBQUUsSUFBSTtFQUNYLE9BQU8sRUFBRSxJQUFJO0VBQ2IsZ0JBQWdCLEVoRFVSLFVBQXFCO0VnRFQ3QixLQUFLLEVoRHJCRyxPQUEyQixHZ0RzQm5DOztBQzdCRCxBQUFBLG9CQUFvQixDQUFDO0VBQ3BCLGFBQWEsRUFBRSxJQUFJLEdBQ25COztBQUVELEFBQ0Msb0JBRG1CLENBQ25CLEdBQUcsQ0FBQztFQUNILEtBQUssRUFBRSxJQUFJO0VBQ1gsTUFBTSxFQUFFLElBQUk7RUFDWixLQUFLLEVqRGlCRSxPQUF5QjtFaURoQmhDLFVBQVUsRUFBRSxjQUFjLEdBQzFCOztBQU5GLEFBUUMsb0JBUm1CLENBUW5CLENBQUMsQ0FBQztFQUNELE9BQU8sRUFBRSxLQUFLO0VBQ2QsWUFBWSxFQUFFLElBQUksR0FXbEI7RUFyQkYsQUFZRSxvQkFaa0IsQ0FRbkIsQ0FBQyxBQUlDLGFBQWEsQ0FBQztJQUNkLFlBQVksRUFBRSxDQUFDLEdBQ2Y7RUFkSCxBQWlCRyxvQkFqQmlCLENBUW5CLENBQUMsQUFRQyxNQUFNLENBQ04sR0FBRyxDQUFDO0lBQ0gsS0FBSyxFakRMQSxPQUEyQixHaURNaEM7O0FDM0JKLEFBQUEsYUFBYSxDQUFDO0VBQ1osT0FBTyxFQUFFLElBQUk7RUFDYixRQUFRLEVBQUUsUUFBUTtFQUNsQixLQUFLLEVBQUUsSUFBSTtFQUNYLFNBQVMsRUFBRSxLQUFLO0VBQ2hCLE1BQU0sRUFBRSxNQUFNO0VBQ2QsVUFBVSxFQUFFLE9BQU87RUFDbkIsVUFBVSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxrQkFBYyxHQUt0QztFQVpELEFBU0UsYUFUVyxBQVNWLFVBQVUsQ0FBQztJQUNWLE9BQU8sRUFBRSxLQUFLLEdBQ2Y7O0FBR0gsQUFBQSxzQkFBc0IsQ0FBQztFQUNyQixPQUFPLEVBQUUsSUFBSSxHQUNkOztBQUVELEFBQUEseUJBQXlCLENBQUM7RUFDeEIsT0FBTyxFQUFFLElBQUk7RUFDYixRQUFRLEVBQUUsUUFBUTtFQUNsQixNQUFNLEVBQUUsR0FBRztFQUNYLFVBQVUsRUFBRSxJQUFJO0VBQ2hCLE9BQU8sRUFBRSxtQkFBbUI7RUFDNUIsVUFBVSxFQUFFLHFCQUFxQjtFQUNqQyxLQUFLLEVBQUUsT0FBTyxHQUtmO0VBWkQsQUFTRSx5QkFUdUIsQUFTdEIsVUFBVSxDQUFDO0lBQ1YsT0FBTyxFQUFFLEtBQUssR0FDZjs7QUM3QkgsQUFDQyxlQURjLENBQ2QsUUFBUSxDQUFDO0VBS1IsVUFBVSxFQUFFLE1BQU0sR0FDbEI7RXRDbUlBLE1BQU0sTUFBTSxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7SXNDMUkxQyxBQUNDLGVBRGMsQ0FDZCxRQUFRLENBQUM7TUFFUCxVQUFVLEVBQUUsTUFBTSxHQUluQjs7QUFHRixBQUFBLHVCQUF1QixDQUFDO0VBUXZCLFFBQVEsRUFBRSxRQUFRO0VBQ2xCLEtBQUssRUFBRSxJQUFJO0VBQ1gsTUFBTSxFQUFFLEtBQUs7RUFDYixPQUFPLEVBQUUsQ0FBQyxHQUNWO0V0Q29IQyxNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO0lzQ2hJMUMsQUFBQSx1QkFBdUIsQ0FBQztNQUV0QixNQUFNLEVBQUUsS0FBSyxHQVVkO0V0QzRIQyxNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO0lzQ3hJMUMsQUFBQSx1QkFBdUIsQ0FBQztNQUt0QixNQUFNLEVBQUUsS0FBSyxHQU9kOztBQUVELEFBQUEscUJBQXFCLENBQUM7RUFRckIsUUFBUSxFQUFFLFFBQVE7RUFDbEIsU0FBUyxFQUFFLE1BQU07RUFDakIsT0FBTyxFQUFFLHNCQUFzQjtFQUMvQixhQUFhLEVBQUUsYUFBYTtFQUM1QixnQkFBZ0IsRW5EOUJSLEtBQW9CO0VtRCtCNUIsT0FBTyxFQUFFLENBQUMsR0FzQlY7RXRDK0VDLE1BQU0sTUFBTSxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7SXNDbEgxQyxBQUFBLHFCQUFxQixDQUFDO01BRXBCLE9BQU8sRUFBRSxvQkFBb0IsR0FpQzlCO0V0Q3VGQyxNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO0lzQzFIMUMsQUFBQSxxQkFBcUIsQ0FBQztNQUtwQixPQUFPLEVBQUUsY0FBYyxHQThCeEI7RUFuQ0QsQUFlQyxxQkFmb0IsQUFlbkIsTUFBTSxDQUFDO0lBS1AsR0FBRyxFQUFFLEtBQUs7SUFDVixLQUFLLEVBQUUsS0FBSztJQUNaLFNBQVMsRUFBRSxjQUFjLEdBQ3pCO0l0Q21HQSxNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO01zQzFIMUMsQUFlQyxxQkFmb0IsQUFlbkIsTUFBTSxDQUFDO1FBRU4sT0FBTyxFQUFFLElBQUksR0FNZDtFQXZCRixBQXlCQyxxQkF6Qm9CLEFBeUJuQixPQUFPLENBQUM7SUFDUixRQUFRLEVBQUUsUUFBUTtJQUNsQixHQUFHLEVBQUUsQ0FBQztJQUNOLEtBQUssRUFBRSxJQUFJO0lBQ1gsS0FBSyxFQUFFLEtBQUs7SUFDWixNQUFNLEVBQUUsSUFBSTtJQUNaLGdCQUFnQixFbkRqRFQsS0FBb0I7SW1Ea0QzQixPQUFPLEVBQUUsRUFBRTtJQUNYLE9BQU8sRUFBRSxFQUFFLEdBQ1g7O0FBR0YsQUFBQSxxQkFBcUIsQ0FBQztFQUNyQixhQUFhLEVBQUUsSUFBSSxHQUtuQjtFQU5ELEFBR0MscUJBSG9CLEdBR2xCLEdBQUcsQ0FBQztJQUNMLFlBQVksRUFBRSxJQUFJLEdBQ2xCOztBQUdGLEFBQUEsd0JBQXdCLENBQUM7RUFDeEIsT0FBTyxFQUFFLEtBQUs7RUFDZCxNQUFNLEVBQUUsTUFBTSxHQUNkOztBQUVELEFBQUEsc0JBQXNCLENBQUM7RUFDdEIsYUFBYSxFQUFFLElBQUksR0FDbkI7O0FBRUQsQUFDQyx1QkFEc0IsQ0FDdEIsQ0FBQyxBQUFBLFVBQVcsQ2xCdUlDLENBQUMsQ2tCdklBLGNBQWMsQ0FBQztFdEN6QjVCLFNBQVMsRXNDMEJLLElBQUk7RXRDekJsQixTQUFTLEVGNUJGLElBQXlCO0VFaUNoQyxXQUFXLEVBQUUsUUFBbUM7RXNDcUJoRCxLQUFLLEVuRHRFRSxPQUEyQjtFbUR1RWxDLFdBQVcsRUFBRSxJQUFJO0VBQ2pCLGNBQWMsRUFBRSxNQUFNO0VBQ3RCLE9BQU8sRUFBRSxHQUFHO0VBQ1osS0FBSyxFQUFFLElBQUk7RUFDWCxVQUFVLEVBQUUsS0FBSztFQUNqQixZQUFZLEVBQUUsR0FBRyxHQUNqQjs7QUFWRixBQVlDLHVCQVpzQixBQVlyQixNQUFNLENBQUM7RUFRUCxRQUFRLEVBQUUsUUFBUTtFQUNsQixLQUFLLEVBQUUsS0FBSztFQUNaLE1BQU0sRUFBRSxJQUFJO0VBQ1osR0FBRyxFQUFFLEdBQUc7RUFDUixJQUFJLEVBQUUsR0FBRztFQUNULFVBQVUsRUFBRSwwQ0FBNEM7RUFDeEQsT0FBTyxFQUFFLEVBQUU7RUFDWCxPQUFPLEVBQUUsRUFBRSxHQUNYO0V0Q3dDQSxNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO0lzQ3BFMUMsQUFZQyx1QkFac0IsQUFZckIsTUFBTSxDQUFDO01BRU4sS0FBSyxFQUFFLEtBQUs7TUFDWixJQUFJLEVBQUUsSUFBSTtNQUNWLEtBQUssRUFBRSxHQUFHO01BQ1YsVUFBVSxFQUFFLGlEQUFtRCxDQUFDLFNBQVMsR0FXMUU7O0FDMUdGLEFBQUEsZUFBZSxDQUFDO0VBS2YsYUFBYSxFQUFFLEtBQUs7RUFDcEIsV0FBVyxFQUFFLElBQUk7RUFDakIsZ0JBQWdCLEVwRGtCUixPQUF3QixHb0RqQmhDO0V2Q2tJQyxNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO0l1QzFJMUMsQUFBQSxlQUFlLENBQUM7TUFFZCxhQUFhLEVBQUUsS0FBSyxHQU1yQjs7QUFFRCxBQUFBLHFCQUFxQixDQUFDO0VBVXJCLEtBQUssRUFBRSxHQUFHO0VBQ1YsYUFBYSxFQUFFLElBQUksR0FDbkI7RXZDd0dDLE1BQU0sTUFBTSxNQUFNLE1BQU0sU0FBUyxFQUFFLE1BQU07SXVDcEgzQyxBQUFBLHFCQUFxQixDQUFDO01BRXBCLEtBQUssRUFBRSxHQUFHO01BQ1YsYUFBYSxFQUFFLENBQUMsR0FTakI7RXZDb0hDLE1BQU0sTUFBTSxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7SXVDaEkxQyxBQUFBLHFCQUFxQixDQUFDO01BTXBCLEtBQUssRUFBRSxJQUFJO01BQ1gsY0FBYyxFQUFFLElBQUksR0FLckI7O0FBRUQsQUFBQSxzQkFBc0IsQ0FBQztFQUN0QixhQUFhLEVBQUUsSUFBSSxHQUNuQjs7QUFNRCxBQUFBLHdCQUF3QixDQUFDO0VBV3hCLEtBQUssRUFBRSxnQkFBZ0I7RUFDdkIsVUFBVSxFQUFFLElBQUk7RUFDaEIsV0FBVyxFQUFFLElBQUk7RUFDakIsT0FBTyxFQUFFLGdCQUFnQjtFQUN6QixnQkFBZ0IsRXBEekNSLEtBQW9CO0VvRDBDNUIsYUFBYSxFQUFFLFVBQVUsR0FxQ3pCO0V2Q3lDQyxNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxNQUFNO0l1QzlGM0MsQUFBQSx3QkFBd0IsQ0FBQztNQUV2QixLQUFLLEVBQUUsZ0JBQWdCLEdBbUR4QjtFdkNxREMsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztJdUMxRzFDLEFBQUEsd0JBQXdCLENBQUM7TUFLdkIsS0FBSyxFQUFFLElBQUk7TUFDWCxNQUFNLEVBQUUsQ0FBQztNQUNULE9BQU8sRUFBRSxVQUFVO01BQ25CLGFBQWEsRUFBRSxVQUFVLEdBNkMxQjtFQXJERCxBQWtCQyx3QkFsQnVCLEFBa0J0QixNQUFNLENBQUM7SUFVUCxHQUFHLEVBQUUsS0FBSztJQUNWLElBQUksRUFBSSxLQUFJO0lBQ1osU0FBUyxFQUFFLGNBQWMsR0FDekI7SXZDMkVBLE1BQU0sTUFBTSxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7TXVDMUcxQyxBQWtCQyx3QkFsQnVCLEFBa0J0QixNQUFNLENBQUM7UUFFTixLQUFLLEVBQUUsa0JBQWtCO1FBQ3pCLE1BQU0sRUFBRSxLQUFLO1FBQ2IsVUFBVSxFQUFFLGlDQUFrQyxDQUFDLE1BQU07UUFDckQsZ0JBQWdCLEVwRGpEVixLQUFvQjtRb0RrRDFCLEdBQUcsRUFBRSxJQUFJO1FBQ1QsTUFBTSxFQUFFLEtBQUssR0FNZDtFQS9CRixBQWlDQyx3QkFqQ3VCLEFBaUN0QixPQUFPLENBQUM7SUFLUixRQUFRLEVBQUUsUUFBUTtJQUNsQixHQUFHLEVBQUUsQ0FBQztJQUNOLElBQUksRUFBRSxJQUFJO0lBQ1YsS0FBSyxFQUFFLElBQUk7SUFDWCxNQUFNLEVBQUUsSUFBSTtJQUNaLGdCQUFnQixFcERyRVQsS0FBb0I7SW9Ec0UzQixPQUFPLEVBQUUsRUFBRTtJQUNYLE9BQU8sRUFBRSxDQUFDLEdBQ1Y7SXZDNERBLE1BQU0sTUFBTSxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7TXVDMUcxQyxBQWlDQyx3QkFqQ3VCLEFBaUN0QixPQUFPLENBQUM7UUFFUCxPQUFPLEVBQUUsSUFBSSxHQVdkO0V2QzREQSxNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO0l1QzFHMUMsQUFnREMsd0JBaER1QixHQWdEckIsUUFBUSxDQUFDO01BRVQsT0FBTyxFQUFFLE1BQU0sR0FFaEI7O0FBNURGLEFBQUEsc0JBQXNCLENBK0RDO0VBQ3RCLGFBQWEsRUFBRSxJQUFJLEdBQ25COztBdkNpREMsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztFdUMvQzFDLEFBQUEsNEJBQTRCLENBQUM7SUFFM0IsZ0JBQWdCLEVwRHZGVCxLQUFvQjtJb0R3RjNCLE9BQU8sRUFBRSxNQUFNLEdBRWhCOztBQUVELEFBQUEsdUJBQXVCLENBQUM7RUFLdkIsYUFBYSxFQUFFLEdBQUcsQ0FBQyxLQUFLLENwRDlFaEIsT0FBd0IsR29EeUZoQztFdkN3QkMsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztJdUN4QzFDLEFBQUEsdUJBQXVCLENBQUM7TUFFdEIsY0FBYyxFQUFFLElBQUksR0FjckI7RUFoQkQsQUFPQyx1QkFQc0IsQUFPckIsVUFBVyxDbkI2R0MsQ0FBQyxFbUI3R0M7SUFDZCxVQUFVLEVBQUUsR0FBRyxDQUFDLEtBQUssQ3BEakZkLE9BQXdCLEdvRGtGL0I7RUFURixBQVlFLHVCQVpxQixBQVdyQixVQUFVLENBQ1YsNEJBQTRCLEdBQUcsR0FBRyxDQUFDO0lBQ2xDLFNBQVMsRUFBRSxjQUFjLEdBQ3pCOztBQUlILEFBQUEsNEJBQTRCLENBQUM7RUFLNUIsUUFBUSxFQUFFLFFBQVE7RUFDbEIsT0FBTyxFQUFFLGFBQWE7RUFDdEIsTUFBTSxFQUFFLE9BQU8sR0FlZjtFdkNBQyxNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO0l1Q3RCMUMsQUFBQSw0QkFBNEIsQ0FBQztNQUUzQixjQUFjLEVBQUUsQ0FBQyxHQW9CbEI7RUF0QkQsQUFTQyw0QkFUMkIsR0FTekIsR0FBRyxDQUFDO0lBS0wsUUFBUSxFQUFFLFFBQVE7SUFDbEIsR0FBRyxFQUFFLElBQUk7SUFDVCxLQUFLLEVBQUUsQ0FBQztJQUNSLEtBQUssRUFBRSxJQUFJO0lBQ1gsTUFBTSxFQUFFLElBQUk7SUFDWixZQUFZLEVBQUUsSUFBSTtJQUNsQixVQUFVLEVBQUUsY0FBYyxHQUMxQjtJdkNDQSxNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO011Q3RCMUMsQUFTQyw0QkFUMkIsR0FTekIsR0FBRyxDQUFDO1FBRUosT0FBTyxFQUFFLElBQUksR0FVZDs7QUFHRixBQUFBLDRCQUE0QixDQUFDO0VBQzVCLFdBQVcsRUFBRSxHQUFHLEdBYWhCO0VBZEQsQUFHQyw0QkFIMkIsR0FHekIsR0FBRyxDQUFDO0lBS0wsUUFBUSxFQUFFLFFBQVE7SUFDbEIsR0FBRyxFQUFFLElBQUk7SUFDVCxLQUFLLEVBQUUsSUFBSTtJQUNYLE1BQU0sRUFBRSxJQUFJO0lBQ1osWUFBWSxFQUFFLElBQUksR0FDbEI7SXZDZkEsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztNdUNFMUMsQUFHQyw0QkFIMkIsR0FHekIsR0FBRyxDQUFDO1FBRUosWUFBWSxFQUFFLEdBQUcsR0FRbEI7O0FBR0YsQUFBQSw0QkFBNEIsQ0FBQztFQUs1QixPQUFPLEVBQUUsSUFBSTtFQUNiLE9BQU8sRUFBRSxhQUFhLEdBQ3RCO0V2Q3pCQyxNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO0l1Q2tCMUMsQUFBQSw0QkFBNEIsQ0FBQztNQUUzQixPQUFPLEVBQUUsVUFBVSxHQUtwQjs7QUFFRCxBQUFBLHdCQUF3QixDQUFDO0VBTXhCLFVBQVUsRUFBRSxJQUFJLEdBQ2hCO0V2Q2xDQyxNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO0l1QzJCMUMsQUFBQSx3QkFBd0IsQ0FBQztNQUV2QixPQUFPLEVBQUUsZ0JBQWdCO01BQ3pCLGdCQUFnQixFcERsS1QsS0FBb0IsR29Ec0s1Qjs7QUM1S0QsQUFBQSxZQUFZLENBQUM7RUFDWixRQUFRLEVBQUUsUUFBUTtFQUNsQixnQkFBZ0IsRXJESVIsS0FBb0I7RXFESDVCLGFBQWEsRUFBRSxHQUFHO0VBQ2xCLFVBQVUsRUFBRSxjQUFjLEdBNkQxQjtFQWpFRCxBQU1DLFlBTlcsQUFNVixNQUFNLENBQUM7SUFDUCxLQUFLLEVBQUUsSUFBSTtJQUNYLE1BQU0sRUFBRSxJQUFJO0lBQ1osT0FBTyxFQUFFLENBQUM7SUFDVixTQUFTLEVBQUUsZUFBZTtJQUMxQixVQUFVLEVBQUUsY0FBYztJQUMxQixPQUFPLEVBQUUsRUFBRSxHQUNYO0V4Q3FIQSxNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO0l3Q2xJMUMsQUFlQyxZQWZXLEFBZVYsTUFBTSxDQUFDO01BRU4sZ0JBQWdCLEVyRElWLE9BQTJCO01xREhqQyxVQUFVLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDckRVakIsd0JBQTJCLEdxRG9DakM7TUFoRUYsQUFvQkcsWUFwQlMsQUFlVixNQUFNLEFBS0osTUFBTSxDQUFDO1FBQ1AsT0FBTyxFQUFFLENBQUM7UUFDVixTQUFTLEVBQUUsYUFBYSxHQUN4QjtNQXZCSixBQXlCRyxZQXpCUyxBQWVWLE1BQU0sQ0FVTCxtQkFBbUIsQ0FBQztRQUNuQixHQUFHLEVBQUUsQ0FBQyxHQUNOO01BM0JKLEFBNkJHLFlBN0JTLEFBZVYsTUFBTSxDQWNMLGtCQUFrQixDQUFDO1FBQ2xCLE1BQU0sRUFBRSxHQUFHLENBQUMsS0FBSyxDckRUWixPQUEyQjtRcURVaEMsVUFBVSxFQUFFLEdBQUcsR0FDZjtNQWhDSixBQWtDRyxZQWxDUyxBQWVWLE1BQU0sQ0FtQkwsbUJBQW1CO01BbEN0QixZQUFZLEFBZVYsTUFBTSxDQW9CTCwyQkFBMkI7TUFuQzlCLFlBQVksQUFlVixNQUFNLENBcUJMLEtBQUs7TUFwQ1IsWUFBWSxBQWVWLE1BQU0sQ0FzQkwsNkJBQTZCLENBQUM7UUFDN0IsS0FBSyxFckRoQ0EsS0FBb0I7UXFEaUN6QixPQUFPLEVBQUUsQ0FBQyxHQUtWO1FBNUNKLEFBeUNJLFlBekNRLEFBZVYsTUFBTSxDQW1CTCxtQkFBbUIsQ0FPbEIsR0FBRztRQXpDUCxZQUFZLEFBZVYsTUFBTSxDQW9CTCwyQkFBMkIsQ0FNMUIsR0FBRztRQXpDUCxZQUFZLEFBZVYsTUFBTSxDQXFCTCxLQUFLLENBS0osR0FBRztRQXpDUCxZQUFZLEFBZVYsTUFBTSxDQXNCTCw2QkFBNkIsQ0FJNUIsR0FBRyxDQUFDO1VBQ0gsS0FBSyxFckRwQ0QsS0FBb0IsR3FEcUN4QjtNQTNDTCxBQStDSSxZQS9DUSxBQWVWLE1BQU0sQ0ErQkwsS0FBSyxBQUFBLE1BQU0sQ0FDVixHQUFHLENBQUM7UUFDSCxXQUFXLEVBQUUsSUFBSTtRQUNqQixZQUFZLEVBQUUsS0FBSyxHQUNuQjtNQWxETCxBQXFERyxZQXJEUyxBQWVWLE1BQU0sQ0FzQ0wsMEJBQTBCLENBQUM7UUFDMUIsVUFBVSxFckRoREwsS0FBb0I7UXFEaUR6QixLQUFLLEVyRGxDQSxPQUEyQixHcURtQ2hDO01BeERKLEFBMERHLFlBMURTLEFBZVYsTUFBTSxDQTJDTCw2QkFBNkIsQ0FBQztRQUM3QixnQkFBZ0IsRXJEdENYLE9BQTJCO1FxRHVDaEMsTUFBTSxFQUFFLEdBQUcsQ0FBQyxLQUFLLENyRHREWixLQUFvQjtRcUR1RHpCLE9BQU8sRUFBRSxDQUFDLEdBQ1Y7O0FBS0osQUFBQSxtQkFBbUIsQ0FBQztFQUtuQixRQUFRLEVBQUUsUUFBUTtFQUNsQixLQUFLLEVBQUUsSUFBSTtFQUNYLE1BQU0sRUFBRSxLQUFLO0VBQ2IsYUFBYSxFQUFFLEdBQUc7RUFDbEIsUUFBUSxFQUFFLE1BQU07RUFDaEIsT0FBTyxFQUFFLENBQUMsR0FDVjtFeEM0REMsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztJd0N2RTFDLEFBQUEsbUJBQW1CLENBQUM7TUFFbEIsTUFBTSxFQUFFLEtBQUssR0FTZDs7QUFFRCxBQUFBLGtCQUFrQixDQUFDO0VBS2xCLFFBQVEsRUFBRSxRQUFRO0VBQ2xCLFVBQVUsRUFBRSxrQkFBa0I7RUFDOUIsVUFBVSxFQUFFLElBQUk7RUFDaEIsT0FBTyxFQUFFLG1CQUFtQjtFQUM1QixNQUFNLEVBQUUsR0FBRyxDQUFDLEtBQUssQ3JEdERULE9BQXFCO0VxRHVEN0IsVUFBVSxFQUFFLEdBQUc7RUFDZixhQUFhLEVBQUUsV0FBVztFQUMxQixVQUFVLEVBQUUsY0FBYztFQUMxQixPQUFPLEVBQUUsQ0FBQyxHQUNWO0V4QzRDQyxNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO0l3QzFEMUMsQUFBQSxrQkFBa0IsQ0FBQztNQUVqQixPQUFPLEVBQUUsbUJBQW1CLEdBWTdCOztBQUVELEFBQUEsbUJBQW1CLENBQUM7RUFDbkIsV0FBVyxFQUFFLE1BQU07RUFDbkIsYUFBYSxFQUFFLElBQUksR0FDbkI7O0FBRUQsQUFBQSxtQkFBbUIsQ0FBQztFeEMvQ2xCLFNBQVMsRXdDb0RJLElBQUk7RXhDbkRqQixTQUFTLEVGNUJGLElBQXlCO0VFaUNoQyxXQUFXLEVBQUUsS0FBbUM7RXdDK0NqRCxLQUFLLEVBQUUsS0FBSztFQUNaLFdBQVcsRUFBRSxJQUFJO0VBQ2pCLEtBQUssRXJEeEZHLE9BQTJCO0VxRHlGbkMsY0FBYyxFQUFFLE1BQU07RUFDdEIsVUFBVSxFQUFFLGNBQWMsR0FpQjFCO0V4Q1VDLE1BQU0sTUFBTSxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7SXdDckMxQyxBQUFBLG1CQUFtQixDQUFDO01BRWxCLEtBQUssRUFBRSxJQUFJLEdBeUJaO0VBM0JELEFBWUMsbUJBWmtCLENBWWxCLEdBQUcsQ0FBQztJQUNILEtBQUssRUFBRSxJQUFJO0lBQ1gsTUFBTSxFQUFFLElBQUk7SUFDWixZQUFZLEVBQUUsR0FBRztJQUNqQixLQUFLLEVyRGhHRSxPQUEyQjtJcURpR2xDLFVBQVUsRUFBRSxjQUFjLEdBQzFCO0VBbEJGLEFBb0JDLG1CQXBCa0IsQUFvQmpCLFlBQVksQ0FBQztJQUNiLEtBQUssRXJEcEdFLE9BQTRCLENxRG9HbkIsVUFBVSxHQUsxQjtJQTFCRixBQXVCRSxtQkF2QmlCLEFBb0JqQixZQUFZLENBR1osR0FBRyxDQUFDO01BQ0gsS0FBSyxFckR2R0MsT0FBNEIsQ3FEdUdsQixVQUFVLEdBQzFCOztBQUlILEFBQUEsMEJBQTBCLENBQUM7RUFDMUIsU0FBUyxFQUFFLEtBQUssR0FXaEI7RUFaRCxBQUdDLDBCQUh5QixBQUd4QixZQUFZLENBQUM7SUFDYixnQkFBZ0IsRXJEaEhULE9BQTRCLENxRGdIUixVQUFVO0lBQ3JDLE1BQU0sRUFBRSxDQUFDO0lBQ1QsTUFBTSxFQUFFLE9BQU8sR0FLZjtJQVhGLEFBUUUsMEJBUndCLEFBR3hCLFlBQVksQUFLWCxNQUFNLENBQUM7TUFDUCxhQUFhLEVBQUUsR0FBRyxHQUNsQjs7QUFJSCxBQUFBLHNCQUFzQixDQUFDO0VBQ3RCLFdBQVcsRUFBRSxNQUFNO0VBQ25CLGFBQWEsRUFBRSxJQUFJO0VBQ25CLFVBQVUsRUFBRSxjQUFjLEdBQzFCOztBQUVELEFBQUEsMkJBQTJCLENBQUM7RXhDaEcxQixTQUFTLEV3Q3FHSSxJQUFJO0V4Q3BHakIsU0FBUyxFRjVCRixJQUF5QjtFRWlDaEMsV0FBVyxFQUFFLEtBQW1DO0V3Q2dHakQsS0FBSyxFQUFFLEtBQUs7RUFDWixLQUFLLEVyRDNIRyxPQUFxQjtFcUQ0SDdCLGNBQWMsRUFBRSxNQUFNO0VBQ3RCLE9BQU8sRUFBRSxHQUFHO0VBQ1osVUFBVSxFQUFFLGNBQWMsR0FTMUI7RXhDL0JDLE1BQU0sTUFBTSxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7SXdDWTFDLEFBQUEsMkJBQTJCLENBQUM7TUFFMUIsS0FBSyxFQUFFLElBQUksR0FpQlo7RUFuQkQsQUFZQywyQkFaMEIsQ0FZMUIsR0FBRyxDQUFDO0lBQ0gsS0FBSyxFQUFFLElBQUk7SUFDWCxNQUFNLEVBQUUsSUFBSTtJQUNaLFlBQVksRUFBRSxHQUFHO0lBQ2pCLEtBQUssRXJEcElFLE9BQXFCO0lxRHFJNUIsVUFBVSxFQUFFLGNBQWMsR0FDMUI7O0FBR0Y7O0dBRUc7QUFFSCxBQUFBLG1CQUFtQixDQUFDO0VBS25CLFFBQVEsRUFBRSxRQUFRO0VBQ2xCLEdBQUcsRUFBRSxLQUFLO0VBQ1YsS0FBSyxFQUFFLElBQUk7RUFDWCxNQUFNLEVBQUUsSUFBSTtFQUNaLE9BQU8sRUFBRSxnQkFBZ0I7RUFDekIsZ0JBQWdCLEVyRHBLUixPQUEyQjtFcURxS25DLEtBQUssRXJEcExHLEtBQW9CO0VxRHFMNUIsVUFBVSxFQUFFLGNBQWM7RUFDMUIsT0FBTyxFQUFFLEVBQUUsR0FDWDtFeENuREMsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztJd0NxQzFDLEFBQUEsbUJBQW1CLENBQUM7TUFFbEIsT0FBTyxFQUFFLElBQUksR0FZZDs7QUFFRCxBQUFBLGtCQUFrQixDQUFDO0VBQ2xCLFdBQVcsRUFBRSxHQUFHLEdBQ2hCOztBQUVELEFBQUEsbUJBQW1CLENBQUM7RUFDbkIsVUFBVSxFQUFFLElBQUksR0FDaEI7O0FBRUQsQUFBQSxrQkFBa0IsQ0FBQztFQUNsQixNQUFNLEVBQUUsSUFBSTtFQUNaLE1BQU0sRUFBRSxVQUFVO0VBQ2xCLFdBQVcsRUFBRSxHQUFHO0VBQ2hCLFFBQVEsRUFBRSxNQUFNLEdBQ2hCOztBQUVELEFBQUEscUJBQXFCLENBQUM7RUFDckIsVUFBVSxFQUFFLElBQUk7RUFDaEIsT0FBTyxFQUFFLE1BQU07RUFDZixVQUFVLEVBQUUsR0FBRyxDQUFDLEtBQUssQ3JEek1kLHdCQUFzQjtFcUQwTTdCLGFBQWEsRUFBRSxHQUFHLENBQUMsS0FBSyxDckQxTWpCLHdCQUFzQixHcUQyTTdCOztBQUVELEFBQUEsNEJBQTRCLENBQUM7RUFDNUIsYUFBYSxFQUFFLEdBQUcsR0FDbEI7O0FBRUQsQUFBQSxvQkFBb0IsQ0FBQztFeENuS25CLFNBQVMsRXdDb0tJLElBQUk7RXhDbktqQixTQUFTLEVGNUJGLE1BQXlCO0VFaUNoQyxXQUFXLEVBQUUsR0FBbUM7RXdDK0pqRCxXQUFXLEVBQUUsR0FBRyxHQVNoQjtFQVhELEFBSUMsb0JBSm1CLENBSW5CLEdBQUcsQ0FBQztJQUNILFFBQVEsRUFBRSxRQUFRO0lBQ2xCLEdBQUcsRUFBRSxHQUFHO0lBQ1IsS0FBSyxFQUFFLElBQUk7SUFDWCxNQUFNLEVBQUUsSUFBSTtJQUNaLFlBQVksRUFBRSxJQUFJLEdBQ2xCOztBQUdGLEFBQUEsMEJBQTBCLENBQUM7RUFDMUIsZUFBZSxFQUFFLFNBQVM7RUFDMUIsVUFBVSxFQUFFLGNBQWMsR0FLMUI7RUFQRCxBQUlDLDBCQUp5QixBQUl4QixNQUFNLENBQUM7SUFDUCxLQUFLLEVyRGhPRSxPQUEyQixHcURpT2xDOztBQzVPRixBQUFBLGNBQWMsQ0FBQztFQUtkLE1BQU0sRUFBRSxjQUFjLEdBQ3RCO0V6Q29JQyxNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO0l5QzFJMUMsQUFBQSxjQUFjLENBQUM7TUFFYixNQUFNLEVBQUUsYUFBYSxHQUl0Qjs7QUFHRDs7R0FFRztBQUVILEFBQUEsdUJBQXVCLENBQUM7RUFZdkIsS0FBSyxFQUFFLEtBQUs7RUFDWixZQUFZLEVBQUUsSUFBSSxHQUNsQjtFekNtR0MsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsTUFBTTtJeUNqSDNDLEFBQUEsdUJBQXVCLENBQUM7TUFFdEIsS0FBSyxFQUFFLEtBQUssR0FZYjtFekMrR0MsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztJeUM3SDFDLEFBQUEsdUJBQXVCLENBQUM7TUFLdEIsS0FBSyxFQUFFLEtBQUs7TUFDWixNQUFNLEVBQUUsZ0JBQWdCLEdBUXpCO0V6Q3VIQyxNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO0l5Q3JJMUMsQUFBQSx1QkFBdUIsQ0FBQztNQVN0QixLQUFLLEVBQUUsSUFBSSxHQUtaOztBQUVELEFBQ0MsMkJBRDBCLENBQzFCLENBQUMsQ0FBQztFQWNELE9BQU8sRUFBRSxLQUFLO0VBQ2QsUUFBUSxFQUFFLFFBQVE7RUFDbEIsS0FBSyxFQUFFLEtBQUs7RUFDWixNQUFNLEVBQUUsS0FBSyxHQUNiO0V6QzhFQSxNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxNQUFNO0l5Q2pHM0MsQUFDQywyQkFEMEIsQ0FDMUIsQ0FBQyxDQUFDO01BRUEsS0FBSyxFQUFFLEtBQUs7TUFDWixNQUFNLEVBQUUsS0FBSyxHQWVkO0V6QzBGQSxNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO0l5QzdHMUMsQUFDQywyQkFEMEIsQ0FDMUIsQ0FBQyxDQUFDO01BTUEsS0FBSyxFQUFFLEtBQUs7TUFDWixNQUFNLEVBQUUsS0FBSyxHQVdkO0V6Q2tHQSxNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO0l5Q3JIMUMsQUFDQywyQkFEMEIsQ0FDMUIsQ0FBQyxDQUFDO01BVUEsS0FBSyxFQUFFLElBQUk7TUFDWCxNQUFNLEVBQUUsSUFBSSxHQU9iOztBQW5CRixBQXNCQywyQkF0QjBCLENBc0IxQixnQkFBZ0IsQ0FBQztFQUNoQixLQUFLLEVBQUUsSUFBSTtFQUNYLFFBQVEsRUFBRSxNQUFNLEdBQ2hCOztBQXpCRixBQTJCQywyQkEzQjBCLENBMkIxQixTQUFTLENBQUM7RUF3QlQsT0FBTyxFQUFFLElBQUksR0FDYjtFekNpRUEsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztJeUNySDFDLEFBMkJDLDJCQTNCMEIsQ0EyQjFCLFNBQVMsQ0FBQztNQUVSLE9BQU8sRUFBRSxJQUFJO01BQ2IsZUFBZSxFQUFFLE1BQU07TUFDdkIsVUFBVSxFQUFFLElBQUksR0FxQmpCO01BcERGLEFBaUNHLDJCQWpDd0IsQ0EyQjFCLFNBQVMsQ0FNUCxRQUFRLENBQUM7UUFDUixLQUFLLEVBQUUsR0FBRztRQUNWLE1BQU0sRUFBRSxHQUFHO1FBQ1gsWUFBWSxFQUFFLEdBQUc7UUFDakIsTUFBTSxFQUFFLEdBQUcsQ0FBQyxLQUFLLEN0RDdDWixPQUEyQjtRc0Q4Q2hDLGdCQUFnQixFdEQ3RFgsS0FBb0I7UXNEOER6QixhQUFhLEVBQUUsR0FBRyxHQVNsQjtRQWhESixBQXlDSSwyQkF6Q3VCLENBMkIxQixTQUFTLENBTVAsUUFBUSxBQVFOLE9BQU8sQ0FBQztVQUNSLGdCQUFnQixFdERsRFosT0FBMkIsR3NEbUQvQjtRQTNDTCxBQTZDSSwyQkE3Q3VCLENBMkIxQixTQUFTLENBTVAsUUFBUSxBQVlOLGFBQWEsQ0FBQztVQUNkLFlBQVksRUFBRSxDQUFDLEdBQ2Y7O0F6Q3NFSCxNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO0V5Q3JIMUMsQUFzREMsMkJBdEQwQixDQXNEMUIsR0FBRyxDQUFDO0lBRUYsUUFBUSxFQUFFLFFBQVE7SUFDbEIsS0FBSyxFQUFFLElBQUk7SUFDWCxNQUFNLEVBQUUsSUFBSSxHQUViOztBQUdGLEFBQUEsa0NBQWtDLENBQUM7RUFLbEMsS0FBSyxFQUFFLEtBQUs7RUFDWixNQUFNLEVBQUUsU0FBUyxHQXVCakI7RXpDeUJDLE1BQU0sTUFBTSxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7SXlDdEQxQyxBQUFBLGtDQUFrQyxDQUFDO01BRWpDLE9BQU8sRUFBRSxJQUFJLENBQUEsVUFBVSxHQTJCeEI7RUE3QkQsQUFRQyxrQ0FSaUMsQ0FRakMsQ0FBQyxDQUFDO0lBQ0QsT0FBTyxFQUFFLEtBQUs7SUFDZCxRQUFRLEVBQUUsUUFBUTtJQUNsQixLQUFLLEVBQUUsS0FBSztJQUNaLE1BQU0sRUFBRSxLQUFLLEdBQ2I7RUFiRixBQWVDLGtDQWZpQyxDQWVqQyxnQkFBZ0IsQ0FBQztJQUNoQixLQUFLLEVBQUUsSUFBSTtJQUNYLFFBQVEsRUFBRSxNQUFNLEdBQ2hCO0VBbEJGLEFBb0JDLGtDQXBCaUMsQ0FvQmpDLFFBQVEsQ0FBQztJQUNSLE9BQU8sRUFBRSxJQUFJO0lBQ2IsUUFBUSxFQUFFLFFBQVE7SUFDbEIsS0FBSyxFQUFFLGtCQUFrQjtJQUN6QixHQUFHLEVBQUUsZ0JBQWdCO0lBQ3JCLElBQUksRUFBRSxLQUFLO0lBQ1gsZUFBZSxFQUFFLGFBQWE7SUFDOUIsT0FBTyxFQUFFLEVBQUUsR0FDWDs7QUFJRjs7R0FFRztBQUVILEFBQUEsb0JBQW9CLENBQUM7RUFTcEIsS0FBSyxFQUFFLGtCQUFrQjtFQUN6QixTQUFTLEVBQUUsS0FBSyxHQUNoQjtFekNiQyxNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxNQUFNO0l5Q0UzQyxBQUFBLG9CQUFvQixDQUFDO01BRW5CLEtBQUssRUFBRSxrQkFBa0IsR0FTMUI7RXpDREMsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztJeUNWMUMsQUFBQSxvQkFBb0IsQ0FBQztNQUtuQixLQUFLLEVBQUUsSUFBSTtNQUNYLFNBQVMsRUFBRSxJQUFJLEdBS2hCOztBQU1ELEFBQUEsb0JBQW9CLENBQUM7RUFDcEIsWUFBWSxFQUFFLElBQUksR0FDbEI7O0FBRUQsQUFBQSxxQkFBcUIsQ0FBQztFQUtyQixNQUFNLEVBQUUsYUFBYSxHQUNyQjtFekNqQkMsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztJeUNXMUMsQUFBQSxxQkFBcUIsQ0FBQztNQUVwQixNQUFNLEVBQUUsTUFBTSxHQUlmOztBQUVELEFBQUEsdUJBQXVCLENBQUM7RUFDdkIsT0FBTyxFQUFFLEtBQUs7RUFDZCxVQUFVLEVBQUUsSUFBSSxHQUNoQjs7QUFTRDs7R0FFRztBQUVILEFBQUEsdUJBQXVCLENBQUM7RUFDdkIsUUFBUSxFQUFFLFFBQVE7RUFDbEIsTUFBTSxFQUFFLE1BQU07RUFDZCxPQUFPLEVBQUUsSUFBSTtFQUNiLGdCQUFnQixFdER4SlIsT0FBd0IsR3NEd0toQztFQXBCRCxBQU1DLHVCQU5zQixBQU1yQixNQUFNLENBQUM7SUFLUCxRQUFRLEVBQUUsUUFBUTtJQUNsQixHQUFHLEVBQUUsQ0FBQztJQUNOLElBQUksRUFBRSxDQUFDO0lBQ1AsS0FBSyxFQUFFLEtBQUs7SUFDWixNQUFNLEVBQUUsSUFBSTtJQUNaLGdCQUFnQixFdERwS1QsT0FBd0I7SXNEcUsvQixPQUFPLEVBQUUsRUFBRTtJQUNYLE9BQU8sRUFBRSxFQUFFLEdBQ1g7SXpDdERBLE1BQU0sTUFBTSxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7TXlDbUMxQyxBQU1DLHVCQU5zQixBQU1yQixNQUFNLENBQUM7UUFFTixJQUFJLEVBQUUsS0FBSyxHQVdaOztBQUdGLEFBQUEscUJBQXFCLENBQUM7RUFDckIsV0FBVyxFQUFFLE1BQU07RUFDbkIsYUFBYSxFQUFFLElBQUksR0FDbkI7O0FBRUQsQUFBQSxxQkFBcUIsQ0FBQztFekNsSnBCLFNBQVMsRXlDbUpJLElBQUk7RXpDbEpqQixTQUFTLEVGNUJGLElBQXlCO0VFaUNoQyxXQUFXLEVBQUUsS0FBbUM7RXlDOElqRCxLQUFLLEVBQUUsS0FBSztFQUNaLFdBQVcsRUFBRSxJQUFJO0VBQ2pCLEtBQUssRXREdkxHLE9BQTJCO0VzRHdMbkMsY0FBYyxFQUFFLE1BQU07RUFDdEIsVUFBVSxFQUFFLGNBQWMsR0FtQjFCO0VBekJELEFBUUMscUJBUm9CLENBUXBCLEdBQUcsQ0FBQztJQUNILFFBQVEsRUFBRSxRQUFRO0lBQ2xCLEdBQUcsRUFBRSxHQUFHO0lBQ1IsS0FBSyxFQUFFLElBQUk7SUFDWCxNQUFNLEVBQUUsSUFBSTtJQUNaLFlBQVksRUFBRSxHQUFHO0lBQ2pCLEtBQUssRXREak1FLE9BQTJCO0lzRGtNbEMsVUFBVSxFQUFFLGNBQWMsR0FDMUI7RUFoQkYsQUFrQkMscUJBbEJvQixBQWtCbkIsWUFBWSxDQUFDO0lBQ2IsS0FBSyxFdERyTUUsT0FBNEIsR3NEME1uQztJQXhCRixBQXFCRSxxQkFyQm1CLEFBa0JuQixZQUFZLENBR1osR0FBRyxDQUFDO01BQ0gsS0FBSyxFdER4TUMsT0FBNEIsR3NEeU1sQzs7QUFJSCxBQUFBLDRCQUE0QixDQUFDO0VBQzVCLFNBQVMsRUFBRSxLQUFLLEdBV2hCO0VBWkQsQUFHQyw0QkFIMkIsQUFHMUIsWUFBWSxDQUFDO0lBQ2IsZ0JBQWdCLEV0RGpOVCxPQUE0QjtJc0RrTm5DLE1BQU0sRUFBRSxDQUFDO0lBQ1QsTUFBTSxFQUFFLE9BQU8sR0FLZjtJQVhGLEFBUUUsNEJBUjBCLEFBRzFCLFlBQVksQUFLWCxNQUFNLENBQUM7TUFDUCxhQUFhLEVBQUUsR0FBRyxHQUNsQjs7QUFJSCxBQUFBLHFCQUFxQixDQUFDO0V6QzNMcEIsU0FBUyxFeUNpTUksSUFBSTtFekNoTWpCLFNBQVMsRUY1QkYsTUFBeUI7RUVpQ2hDLFdBQVcsRUFBRSxTQUFtQztFeUM0TGpELEtBQUssRUFBRSxrQkFBa0I7RUFDekIsWUFBWSxFQUFFLElBQUk7RUFDbEIsV0FBVyxFQUFFLEdBQUc7RUFDaEIsVUFBVSxFQUFFLE1BQU07RUFDbEIsS0FBSyxFdER2T0csT0FBMkIsR3NEK09uQztFekNsSEMsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztJeUMrRjFDLEFBQUEscUJBQXFCLENBQUM7TUFFcEIsS0FBSyxFQUFFLElBQUk7TUFDWCxPQUFPLEVBQUUsVUFBVSxHQWdCcEI7RUFuQkQsQUFhQyxxQkFib0IsQ0FhcEIsR0FBRyxDQUFDO0lBQ0gsS0FBSyxFQUFFLElBQUk7SUFDWCxNQUFNLEVBQUUsSUFBSTtJQUNaLFlBQVksRUFBRSxHQUFHO0lBQ2pCLEtBQUssRXREN09FLE9BQTJCLEdzRDhPbEM7O0FBR0YsQUFBQSx3QkFBd0IsQ0FBQztFQUN4QixXQUFXLEVBQUUsTUFBTTtFQUNuQixVQUFVLEVBQUUsY0FBYyxHQUMxQjs7QUFFRCxBQUFBLDZCQUE2QixDQUFDO0V6Q3JONUIsU0FBUyxFeUNzTkksSUFBSTtFekNyTmpCLFNBQVMsRUY1QkYsSUFBeUI7RUVpQ2hDLFdBQVcsRUFBRSxLQUFtQztFeUNpTmpELEtBQUssRUFBRSxLQUFLO0VBQ1osS0FBSyxFdEQ1T0csT0FBcUI7RXNENk83QixjQUFjLEVBQUUsTUFBTTtFQUN0QixPQUFPLEVBQUUsR0FBRztFQUNaLFVBQVUsRUFBRSxjQUFjLEdBVzFCO0VBakJELEFBUUMsNkJBUjRCLENBUTVCLEdBQUcsQ0FBQztJQUNILFFBQVEsRUFBRSxRQUFRO0lBQ2xCLEdBQUcsRUFBRSxHQUFHO0lBQ1IsS0FBSyxFQUFFLElBQUk7SUFDWCxNQUFNLEVBQUUsSUFBSTtJQUNaLFlBQVksRUFBRSxHQUFHO0lBQ2pCLEtBQUssRXREdlBFLE9BQXFCO0lzRHdQNUIsVUFBVSxFQUFFLGNBQWMsR0FDMUI7O0FBT0YsQUFBQSxvQkFBb0IsQ0FBQztFQUtwQixPQUFPLEVBQUUsSUFBSTtFQUNiLFdBQVcsRUFBRSxNQUFNO0VBQ25CLGVBQWUsRUFBRSxRQUFRO0VBQ3pCLFFBQVEsRUFBRSxLQUFLO0VBQ2YsTUFBTSxFQUFFLEtBQUs7RUFDYixLQUFLLEVBQUUsS0FBSztFQUNaLE1BQU0sRUFBRSxJQUFJO0VBQ1osYUFBYSxFQUFFLElBQUk7RUFDbkIsZ0JBQWdCLEV0RHpTUixLQUFvQjtFc0QwUzVCLE1BQU0sRUFBRSxHQUFHLENBQUMsS0FBSyxDdER2UlQsT0FBd0I7RXNEd1JoQyxhQUFhLEVBQUUsZUFBZTtFQUM5QixPQUFPLEVBQUUsRUFBRSxHQUNYO0V6Q3pLQyxNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO0l5Q3dKMUMsQUFBQSxvQkFBb0IsQ0FBQztNQUVuQixPQUFPLEVBQUUsSUFBSSxHQWVkOztBQ25URCxBQUFBLHFCQUFxQixDQUFDO0VBS3BCLGFBQWEsRUFBRSxLQUFLLEdBQ3JCO0UxQ29JQyxNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO0kwQzFJMUMsQUFBQSxxQkFBcUIsQ0FBQztNQUVsQixhQUFhLEVBQUUsSUFBSSxHQUl0Qjs7QUFFRCxBQUFBLG9CQUFvQixDQUFDO0VBQ25CLGFBQWEsRUFBRSxJQUFJLEdBQ3BCOztBQUVELEFBQUEsNkJBQTZCLENBQUM7RUFNNUIsT0FBTyxFQUFFLElBQUk7RUFDYixNQUFNLEVBQUUsa0JBQWtCLEdBQzNCO0UxQ3NIQyxNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO0kwQzlIMUMsQUFBQSw2QkFBNkIsQ0FBQztNQUUxQixPQUFPLEVBQUUsS0FBSztNQUNkLE1BQU0sRUFBRSxHQUFHLEdBS2Q7O0FBRUQsQUFBQSxzQkFBc0IsQ0FBQztFQU1yQixLQUFLLEVBQUUscUJBQXFCO0VBQzVCLE1BQU0sRUFBRSxJQUFJO0VBQ1osZ0JBQWdCLEV2RExULE9BQXdCO0V1RE0vQixNQUFNLEVBQUUsUUFBUSxHQWlCakI7RTFDMEZDLE1BQU0sTUFBTSxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7STBDcEgxQyxBQUFBLHNCQUFzQixDQUFDO01BRW5CLEtBQUssRUFBRSxJQUFJO01BQ1gsTUFBTSxFQUFFLGNBQWMsR0F1QnpCO0VBMUJELEFBV0Usc0JBWG9CLENBV3BCLE1BQU0sQ0FBQztJQUNMLFFBQVEsRUFBRSxRQUFRO0lBQ2xCLEtBQUssRXZEREEsT0FBcUI7SXVERTFCLGtCQUFrQixFQUFFLElBQUk7SUFDeEIsZ0JBQWdCLEVBQUUsV0FBVztJQUM3QixPQUFPLEVBQUUsRUFBRSxHQUNaO0VBakJILEFBbUJFLHNCQW5Cb0IsQ0FtQnBCLEdBQUcsQ0FBQztJQUNGLFFBQVEsRUFBRSxRQUFRO0lBQ2xCLEdBQUcsRUFBRSxLQUFLO0lBQ1YsS0FBSyxFQUFFLEdBQUc7SUFDVixZQUFZLEVBQUUsSUFBSTtJQUNsQixLQUFLLEVBQUUsS0FBSyxHQUNiOztBQUdILEFBQUEsMkJBQTJCLENBQUM7RUFNMUIsT0FBTyxFQUFFLElBQUk7RUFDYixNQUFNLEVBQUUsa0JBQWtCLEdBQzNCO0UxQ2dGQyxNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO0kwQ3hGMUMsQUFBQSwyQkFBMkIsQ0FBQztNQUV4QixNQUFNLEVBQUUsR0FBRztNQUNYLE9BQU8sRUFBRSxLQUFLLEdBS2pCOztBQUVELEFBQUEscUJBQXFCLENBQUM7RUFNcEIsS0FBSyxFQUFFLEdBQUc7RUFDVixNQUFNLEVBQUUsU0FBUyxHQVNsQjtFMUM4REMsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztJMEM5RTFDLEFBQUEscUJBQXFCLENBQUM7TUFFbEIsTUFBTSxFQUFFLE9BQU87TUFDZixLQUFLLEVBQUUsSUFBSSxHQWFkO0VBaEJELEFBU0UscUJBVG1CLENBU25CLEtBQUssQ0FBQztJQUNKLEtBQUssRXZEcENBLE9BQXFCLEd1RHFDM0I7RUFYSCxBQWFFLHFCQWJtQixDQWFuQixhQUFhLENBQUM7SUFDWixVQUFVLEVBQUUsTUFBTSxHQUNuQjs7QUFHSCxBQUFBLHNCQUFzQixDQUFDO0VBS3JCLEtBQUssRUFBRSxHQUFHO0VBQ1YsTUFBTSxFQUFFLFNBQVMsR0FZbEI7RTFDMENDLE1BQU0sTUFBTSxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7STBDNUQxQyxBQUFBLHNCQUFzQixDQUFDO01BRW5CLE1BQU0sRUFBRSxRQUFRLEdBZ0JuQjtFQWxCRCxBQVFFLHNCQVJvQixDQVFwQixNQUFNLENBQUM7SUFLTCxPQUFPLEVBQUUsS0FBSztJQUNkLEtBQUssRUFBRSxJQUFJO0lBQ1gsTUFBTSxFQUFFLElBQUk7SUFDWixXQUFXLEVBQUUsR0FBRyxHQUNqQjtJMUNtREQsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztNMENwRTFDLEFBUUUsc0JBUm9CLENBUXBCLE1BQU0sQ0FBQztRQUVILEtBQUssRUFBRSxJQUFJLEdBT2Q7O0FDL0ZILEFBQUEsaUJBQWlCLENBQUM7RUFTakIsUUFBUSxFQUFFLFFBQVE7RUFDbEIsT0FBTyxFQUFFLE1BQU0sR0FZZjtFM0NvSEMsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztJMkMxSTFDLEFBQUEsaUJBQWlCLENBQUM7TUFFaEIsT0FBTyxFQUFFLE1BQU0sR0FvQmhCO0UzQ2dIQyxNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLLE9BQU8sU0FBUyxFQUFFLEtBQUs7STJDdElqRSxBQUFBLGlCQUFpQixDQUFDO01BS2hCLFNBQVMsRUFBRSxLQUFLO01BQ2hCLE1BQU0sRUFBRSxNQUFNLEdBZ0JmO0VBdEJELEFBWUMsaUJBWmdCLEFBWWYsTUFBTSxDQUFDO0lBQ1AsUUFBUSxFQUFFLFFBQVE7SUFDbEIsS0FBSyxFQUFFLEtBQUs7SUFDWixNQUFNLEVBQUUsR0FBRztJQUNYLEdBQUcsRUFBRSxHQUFHO0lBQ1IsSUFBSSxFQUFFLEdBQUc7SUFDVCxVQUFVLEVBQUUsb0NBQXNDO0lBQ2xELE9BQU8sRUFBRSxFQUFFO0lBQ1gsT0FBTyxFQUFFLEVBQUUsR0FDWDs7QUFHRixBQUFBLHVCQUF1QixDQUFDO0VBTXZCLFFBQVEsRUFBRSxRQUFRO0VBQ2xCLFVBQVUsRUFBRSxLQUFLLEdBQ2pCO0UzQzBHQyxNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO0kyQ2xIMUMsQUFBQSx1QkFBdUIsQ0FBQztNQUV0QixVQUFVLEVBQUUsSUFBSTtNQUNoQixjQUFjLEVBQUUsSUFBSSxHQUtyQjs7QUFFRCxBQUFBLG1DQUFtQyxDQUFDO0VBUW5DLFFBQVEsRUFBRSxRQUFRO0VBQ2xCLEdBQUcsRUFBRSxDQUFDO0VBQ04sS0FBSyxFQUFFLENBQUMsR0FDUjtFM0NpRkMsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsTUFBTTtJMkM1RjNDLEFBQUEsbUNBQW1DLENBQUM7TTNDb0JsQyxTQUFTLEUyQ2xCSyxJQUFJO00zQ21CbEIsU0FBUyxFRjVCRixJQUF5QjtNRWlDaEMsV0FBVyxFQUFFLEdBQW1DO00yQ3ZCaEQsYUFBYSxFQUFFLElBQUk7TUFDbkIsY0FBYyxFQUFFLE1BQU07TUFDdEIsS0FBSyxFeERyQkEsdUJBQThCLEd3RDJCcEM7O0FDN0NELEFBQUEsc0JBQXNCLENBQUM7RUFLdEIsY0FBYyxFQUFFLElBQUksR0FDcEI7RTVDb0lDLE1BQU0sTUFBTSxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7STRDMUkxQyxBQUFBLHNCQUFzQixDQUFDO01BRXJCLGNBQWMsRUFBRSxDQUFDLEdBSWxCOztBQUVELEFBQUEsNEJBQTRCLENBQUM7RUFLNUIsZUFBZSxFQUFFLFFBQVE7RUFDekIsTUFBTSxFQUFFLE1BQU0sR0FDZDtFNUMySEMsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztJNENsSTFDLEFBQUEsNEJBQTRCLENBQUM7TUFFM0IsTUFBTSxFQUFFLGFBQWEsR0FLdEI7O0FBRUQsQUFBQSxpQ0FBaUMsQ0FBQztFQVFqQyxLQUFLLEVBQUUsS0FBSyxHQUNaO0U1Q29HQyxNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxNQUFNO0k0QzdHM0MsQUFBQSxpQ0FBaUMsQ0FBQztNQUVoQyxLQUFLLEVBQUUsR0FBRyxHQU9YO0U1Q2dIQyxNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO0k0Q3pIMUMsQUFBQSxpQ0FBaUMsQ0FBQztNQUtoQyxLQUFLLEVBQUUsSUFBSSxHQUlaOztBQUVELEFBQUEsNEJBQTRCLENBQUM7RUFDNUIsWUFBWSxFQUFFLElBQUksR0FDbEI7O0FBRUQsQUFBQSw2QkFBNkIsQ0FBQztFQUM3QixVQUFVLEVBQUUsSUFBSSxHQUNoQjs7QUFFRCxBQUFBLCtCQUErQixDQUFDO0VBQy9CLGNBQWMsRUFBRSxJQUFJLEdBQ3BCOztBQUVELEFBQUEsa0NBQWtDLENBQUM7RUFZbEMsS0FBSyxFQUFFLGtCQUFrQjtFQUN0QixVQUFVLEVBQUUsTUFBTTtFQUNsQixhQUFhLEVBQUUsTUFBTTtFQUN4QixhQUFhLEVBQUUsSUFBSSxHQUNuQjtFNUNzRUMsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsTUFBTTtJNEN0RjNDLEFBQUEsa0NBQWtDLENBQUM7TUFFakMsV0FBVyxFQUFFLE1BQU07TUFDbkIsT0FBTyxFQUFFLElBQUk7TUFDYixLQUFLLEVBQUUsR0FBRztNQUNWLGFBQWEsRUFBRSxJQUFJO01BQ25CLE1BQU0sRUFBRSxDQUFDLEdBVVY7RTVDa0ZDLE1BQU0sTUFBTSxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7STRDbEcxQyxBQUFBLGtDQUFrQyxDQUFDO01BU2pDLE9BQU8sRUFBRSxJQUFJLEdBT2Q7O0FBRUQsQUFBQSw2QkFBNkIsQ0FBQztFQUM3QixRQUFRLEVBQUUsUUFBUTtFQUNsQixPQUFPLEVBQUUsSUFBSTtFQUNiLGVBQWUsRUFBRSxNQUFNO0VBQ3ZCLFdBQVcsRUFBRSxNQUFNO0VBQ25CLFNBQVMsRUFBRSxLQUFLO0VBQ2hCLE1BQU0sRUFBRSxJQUFJLEdBZVo7RUFyQkQsQUFRQyw2QkFSNEIsQUFRM0IsTUFBTSxDQUFDO0lBUVAsS0FBSyxFQUFFLEtBQUs7SUFDWixNQUFNLEVBQUUsQ0FBQztJQUNULEtBQUssRUFBRSxJQUFJO0lBQ1gsTUFBTSxFQUFFLEtBQUssR0FDYjtJNUNnREEsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsTUFBTTtNNENwRTNDLEFBUUMsNkJBUjRCLEFBUTNCLE1BQU0sQ0FBQztRQUVOLEtBQUssRUFBRSxLQUFLO1FBQ1osU0FBUyxFQUFFLGNBQWM7UUFDekIsVUFBVSxFQUFFLEdBQUc7UUFDZixTQUFTLEVBQUUsSUFBSSxHQU9oQjs7QUFHRixBQUFBLDRCQUE0QixDQUFDO0U1QzNCM0IsU0FBUyxFNENvQ0ksSUFBSTtFNUNuQ2pCLFNBQVMsRUY1QkYsTUFBeUI7RUVpQ2hDLFdBQVcsRUFBRSxTQUFtQztFNEMrQmpELFFBQVEsRUFBRSxRQUFRO0VBQ2xCLEtBQUssRUFBRSxLQUFLO0VBQ1osT0FBTyxFQUFFLE1BQU07RUFDZixXQUFXLEVBQUUsR0FBRyxHQVloQjtFNUNvQkMsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsTUFBTTtJNEM3QzNDLEFBQUEsNEJBQTRCLENBQUM7TUFFM0IsS0FBSyxFQUFFLEdBQUcsR0F1Qlg7RTVDZ0NDLE1BQU0sTUFBTSxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7STRDekQxQyxBQUFBLDRCQUE0QixDQUFDO01BSzNCLEtBQUssRUFBRSxJQUFJO01BQ1gsT0FBTyxFQUFFLE1BQU0sR0FtQmhCO0VBekJELEFBZUMsNEJBZjJCLEFBZTFCLE9BQU8sQ0FBQztJQUNSLFFBQVEsRUFBRSxRQUFRO0lBQ2xCLEdBQUcsRUFBRSxDQUFDO0lBQ04sSUFBSSxFQUFFLE1BQU07SUFDWixNQUFNLEVBQUUsSUFBSTtJQUNaLEtBQUssRUFBRSxLQUFLO0lBQ1osZ0JBQWdCLEV6RDdFVCxPQUF3QjtJeUQ4RS9CLE9BQU8sRUFBRSxFQUFFO0lBQ1gsT0FBTyxFQUFFLEVBQUUsR0FDWDs7QUFHRixBQUFBLCtCQUErQixDQUFDO0VBQy9CLFdBQVcsRUFBRSxNQUFNLEdBS25CO0VBTkQsQUFHQywrQkFIOEIsQ0FHOUIsQ0FBQyxDQUFDO0lBQ0QsVUFBVSxFQUFFLElBQUksR0FDaEI7O0FBR0YsQUFBQSxnQ0FBZ0MsQ0FBQztFQUNoQyxZQUFZLEVBQUUsSUFBSSxHQUNsQjs7QUN0SEQsQUFBQSxpQkFBaUIsQ0FBQztFQVNqQixRQUFRLEVBQUUsUUFBUTtFQUNsQixLQUFLLEVBQUUsZ0JBQWdCO0VBQ3ZCLE1BQU0sRUFBRSxJQUFJO0VBQ1osZ0JBQWdCLEUxRE5SLEtBQW9CO0UwRE81QixNQUFNLEVBQUUsR0FBRyxDQUFDLEtBQUssQzFENEJULFVBQXFCO0UwRDNCN0IsYUFBYSxFQUFFLEdBQUc7RUFDbEIsVUFBVSxFQUFFLGNBQWMsR0FVMUI7RTdDcUdDLE1BQU0sTUFBTSxNQUFNLE1BQU0sU0FBUyxFQUFFLE1BQU07STZDOUgzQyxBQUFBLGlCQUFpQixDQUFDO01BRWhCLEtBQUssRUFBRSxJQUFJO01BQ1gsTUFBTSxFQUFFLE1BQU0sR0FzQmY7RTdDeUhDLE1BQU0sTUFBTSxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7STZDbEoxQyxBQUFBLGlCQUFpQixDQUFDO01BTWhCLE1BQU0sRUFBRSxLQUFLLEdBbUJkO0VBekJELEFBaUJDLGlCQWpCZ0IsQUFpQmYsTUFBTSxDQUFDO0lBQ1AsVUFBVSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQzFEVWhCLHdCQUEyQixHMERUakM7RUFuQkYsQUFxQkMsaUJBckJnQixDQXFCaEIsQ0FBQyxDQUFDO0lBQ0QsT0FBTyxFQUFFLEtBQUs7SUFDZCxPQUFPLEVBQUUsSUFBSSxHQUNiOztBQUdGLEFBQUEsd0JBQXdCLENBQUM7RUFDeEIsYUFBYSxFQUFFLElBQUksR0FDbkI7O0FBRUQsQUFBQSx1QkFBdUIsQ0FBQztFQUN2QixRQUFRLEVBQUUsUUFBUTtFQUNsQixLQUFLLEVBQUUsSUFBSTtFQUNYLE1BQU0sRUFBRSxHQUFHO0VBQ1gsT0FBTyxFQUFFLEdBQUcsR0FDWjs7QUNwQ0QsQUFBQSxZQUFZLENBQUM7RUFLWixXQUFXLEVBQUUsSUFBSSxHQUNqQjtFOUNvSUMsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztJOEMxSTFDLEFBQUEsWUFBWSxDQUFDO01BRVgsV0FBVyxFQUFFLElBQUksR0FJbEI7O0FBRUQsQUFBQSxrQkFBa0IsQ0FBQztFQUNsQixRQUFRLEVBQUUsUUFBUTtFQUNsQixjQUFjLEVBQUUsSUFBSSxHQUNwQjs7QUFFRCxBQUFBLG1CQUFtQixDQUFDO0VBQ25CLGFBQWEsRUFBRSxJQUFJLEdBQ25COztBQUVELEFBQUEsOEJBQThCLENBQUM7RUFTOUIsUUFBUSxFQUFFLFFBQVE7RUFDbEIsS0FBSyxFQUFFLENBQUM7RUFDUixNQUFNLEVBQUUsSUFBSSxHQUNaO0U5Q2lHQyxNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxNQUFNO0k4QzdHM0MsQUFBQSw4QkFBOEIsQ0FBQztNOUNxQzdCLFNBQVMsRThDbkNLLElBQUk7TTlDb0NsQixTQUFTLEVGNUJGLElBQXlCO01FaUNoQyxXQUFXLEVBQUUsR0FBbUM7TThDeENoRCxHQUFHLEVBQUUsQ0FBQztNQUNOLE1BQU0sRUFBRSxJQUFJO01BQ1osY0FBYyxFQUFFLE1BQU07TUFDdEIsS0FBSyxFM0RMQSx1QkFBOEIsRzJEV3BDOztBQUVELEFBQUEsbUJBQW1CLENBQUM7RUFZbkIsUUFBUSxFQUFFLFFBQVE7RUFDbEIsTUFBTSxFQUFFLEtBQUs7RUFDYixPQUFPLEVBQUUsTUFBTSxHQW9CZjtFOUM2REMsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsTUFBTTtJOEMvRjNDLEFBQUEsbUJBQW1CLENBQUM7TUFFbEIsU0FBUyxFQUFFLEtBQUs7TUFDaEIsTUFBTSxFQUFFLHFCQUFxQixHQStCOUI7RTlDeUVDLE1BQU0sTUFBTSxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7SThDM0cxQyxBQUFBLG1CQUFtQixDQUFDO01BTWxCLE1BQU0sRUFBRSxPQUFPLEdBNEJoQjtFOUNpRkMsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztJOENuSDFDLEFBQUEsbUJBQW1CLENBQUM7TUFTbEIsT0FBTyxFQUFFLE1BQU0sR0F5QmhCO0VBbENELEFBZ0JDLG1CQWhCa0IsQUFnQmpCLE9BQU8sQ0FBQztJQVNSLFFBQVEsRUFBRSxRQUFRO0lBQ2xCLE1BQU0sRUFBRSxDQUFDO0lBQ1QsSUFBSSxFQUFFLEtBQUs7SUFDWCxLQUFLLEVBQUUsS0FBSztJQUNaLE1BQU0sRUFBRSxJQUFJO0lBQ1osVUFBVSxFM0RwQkgsVUFBcUI7STJEcUI1QixPQUFPLEVBQUUsRUFBRTtJQUNYLE9BQU8sRUFBRSxFQUFFLEdBQ1g7STlDOERBLE1BQU0sTUFBTSxNQUFNLE1BQU0sU0FBUyxFQUFFLE1BQU07TThDL0YzQyxBQWdCQyxtQkFoQmtCLEFBZ0JqQixPQUFPLENBQUM7UUFFUCxJQUFJLEVBQUUsS0FBSyxHQWVaO0k5Q2tGQSxNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO004Q25IMUMsQUFnQkMsbUJBaEJrQixBQWdCakIsT0FBTyxDQUFDO1FBS1AsSUFBSSxFQUFFLEtBQUs7UUFDWCxLQUFLLEVBQUUsa0JBQWtCLEdBVzFCOztBQ2hFRixBQUFBLHFCQUFxQixDQUFDO0VBUXJCLE1BQU0sRUFBRSxXQUFXLEdBQ25CO0UvQ2lJQyxNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO0krQzFJMUMsQUFBQSxxQkFBcUIsQ0FBQztNQUVwQixNQUFNLEVBQUUsT0FBTyxHQU9oQjtFL0N5SUMsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztJK0NsSjFDLEFBQUEscUJBQXFCLENBQUM7TUFLcEIsTUFBTSxFQUFFLE9BQU8sR0FJaEI7O0FBRUQsQUFBQSxVQUFVLEdBQUcsa0JBQWtCLENBQUM7RUFDL0IsVUFBVSxFQUFFLElBQUksR0FDaEI7O0FDYkQsQUFBQSxlQUFlLENBQUM7RUFTZixRQUFRLEVBQUUsUUFBUTtFQUNsQixLQUFLLEVBQUUsZ0JBQWdCO0VBQ3ZCLE1BQU0sRUFBRSxTQUFTO0VBQ2pCLGNBQWMsRUFBRSxJQUFJLEdBNEJwQjtFaERrR0MsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztJZ0QxSTFDLEFBQUEsZUFBZSxDQUFDO01BRWQsS0FBSyxFQUFFLElBQUk7TUFDWCxNQUFNLEVBQUUsTUFBTSxHQXFDZjtFaEQwR0MsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztJZ0RsSjFDLEFBQUEsZUFBZSxDQUFDO01BTWQsTUFBTSxFQUFFLE1BQU0sR0FrQ2Y7RUF4Q0QsQUFlRSxlQWZhLEFBY2IsTUFBTSxDQUNOLHFCQUFxQixDQUFDO0lBQ3JCLGdCQUFnQixFN0RLVixPQUEyQjtJNkRKakMsS0FBSyxFN0RYQyxLQUFvQixHNkRpQjFCO0lBdkJILEFBbUJHLGVBbkJZLEFBY2IsTUFBTSxDQUNOLHFCQUFxQixBQUluQixNQUFNLENBQUM7TUFDUCxPQUFPLEVBQUUsQ0FBQztNQUNWLFNBQVMsRUFBRSxhQUFhLEdBQ3hCO0VBdEJKLEFBeUJFLGVBekJhLEFBY2IsTUFBTSxDQVdOLHFCQUFxQixDQUFDO0lBQ3JCLEtBQUssRTdEcEJDLEtBQW9CLEc2RHFCMUI7RUEzQkgsQUE2QkUsZUE3QmEsQUFjYixNQUFNLENBZU4sUUFBUTtFQTdCVixlQUFlLEFBY2IsTUFBTSxDQWdCTixLQUFLLENBQUM7SUFDTCxLQUFLLEU3RHpCQyxLQUFvQixHNkRnQzFCO0lBdENILEFBaUNHLGVBakNZLEFBY2IsTUFBTSxDQWVOLFFBQVEsQ0FJUCxHQUFHO0lBakNOLGVBQWUsQUFjYixNQUFNLENBZ0JOLEtBQUssQ0FHSixHQUFHLENBQUM7TUFDSCxXQUFXLEVBQUUsSUFBSTtNQUNqQixZQUFZLEVBQUUsS0FBSztNQUNuQixLQUFLLEU3RDlCQSxLQUFvQixHNkQrQnpCOztBQUtKLEFBQUEsc0JBQXNCLENBQUM7RUFNdEIsUUFBUSxFQUFFLFFBQVE7RUFDbEIsS0FBSyxFQUFFLGlCQUFpQjtFQUN4QixNQUFNLEVBQUUsS0FBSyxHQUtiO0VoRG1GQyxNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO0lnRGhHMUMsQUFBQSxzQkFBc0IsQ0FBQztNQUVyQixLQUFLLEVBQUUsSUFBSTtNQUNYLE1BQU0sRUFBRSxLQUFLLEdBVWQ7RUFiRCxBQVVDLHNCQVZxQixDQVVyQixHQUFHLENBQUM7SUFDSCxhQUFhLEVBQUUsR0FBRyxHQUNsQjs7QUFHRixBQUFBLHFCQUFxQixDQUFDO0VBVXJCLFFBQVEsRUFBRSxRQUFRO0VBQ2xCLEtBQUssRUFBRSxDQUFDO0VBQ1IsTUFBTSxFQUFFLENBQUM7RUFDVCxLQUFLLEVBQUUsaUJBQWlCO0VBQ3hCLE9BQU8sRUFBRSxtQkFBbUI7RUFDNUIsZ0JBQWdCLEU3RC9DUixPQUF3QjtFNkRnRGhDLGFBQWEsRUFBRSxHQUFHO0VBQ2xCLFVBQVUsRUFBRSxjQUFjLEdBVTFCO0VoRHNEQyxNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO0lnRGpGMUMsQUFBQSxxQkFBcUIsQ0FBQztNQUVwQixLQUFLLEVBQUUsaUJBQWlCO01BQ3hCLEtBQUssRUFBRSxJQUFJLEdBd0JaO0VoRDhEQyxNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO0lnRHpGMUMsQUFBQSxxQkFBcUIsQ0FBQztNQU1wQixLQUFLLEVBQUUsaUJBQWlCO01BQ3hCLEtBQUssRUFBRSxJQUFJLEdBb0JaO0VBM0JELEFBbUJDLHFCQW5Cb0IsQUFtQm5CLE1BQU0sQ0FBQztJQUNQLEdBQUcsRUFBRSxLQUFLO0lBQ1YsS0FBSyxFQUFFLElBQUk7SUFDWCxPQUFPLEVBQUUsQ0FBQztJQUNWLFNBQVMsRUFBRSxlQUFlO0lBQzFCLFVBQVUsRUFBRSxjQUFjO0lBQzFCLE9BQU8sRUFBRSxFQUFFLEdBQ1g7O0FBR0YsQUFBQSxxQkFBcUIsQ0FBQztFQUNyQixPQUFPLEVBQUUsR0FBRztFQUNaLFVBQVUsRUFBRSxjQUFjLEdBQzFCOztBQUVELEFBQUEsc0JBQXNCLENBQUM7RUFDdEIsTUFBTSxFQUFFLGFBQWE7RUFDckIsVUFBVSxFQUFFLGNBQWMsR0FDMUI7O0FDOUZELEFBQ0MsWUFEVyxDQUNYLFFBQVEsQ0FBQztFQUtSLFVBQVUsRUFBRSxNQUFNLEdBQ2xCO0VqRG1JQSxNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO0lpRDFJMUMsQUFDQyxZQURXLENBQ1gsUUFBUSxDQUFDO01BRVAsVUFBVSxFQUFFLE1BQU0sR0FJbkI7O0FBR0YsQUFBQSxvQkFBb0IsQ0FBQztFQVFwQixRQUFRLEVBQUUsUUFBUTtFQUNsQixLQUFLLEVBQUUsSUFBSTtFQUNYLE1BQU0sRUFBRSxLQUFLO0VBQ2IsT0FBTyxFQUFFLENBQUMsR0FDVjtFakRvSEMsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztJaURoSTFDLEFBQUEsb0JBQW9CLENBQUM7TUFFbkIsTUFBTSxFQUFFLEtBQUssR0FVZDtFakQ0SEMsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztJaUR4STFDLEFBQUEsb0JBQW9CLENBQUM7TUFLbkIsTUFBTSxFQUFFLEtBQUssR0FPZDs7QUFFRCxBQUFBLGtCQUFrQixDQUFDO0VBUWxCLFFBQVEsRUFBRSxRQUFRO0VBQ2xCLFNBQVMsRUFBRSxNQUFNO0VBQ2pCLE9BQU8sRUFBRSx1QkFBdUI7RUFDaEMsYUFBYSxFQUFFLGFBQWE7RUFDNUIsZ0JBQWdCLEU5RDlCUixLQUFvQjtFOEQrQjVCLE9BQU8sRUFBRSxDQUFDLEdBc0JWO0VqRCtFQyxNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO0lpRGxIMUMsQUFBQSxrQkFBa0IsQ0FBQztNQUVqQixPQUFPLEVBQUUsSUFBSSxHQWlDZDtFakR1RkMsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztJaUQxSDFDLEFBQUEsa0JBQWtCLENBQUM7TUFLakIsT0FBTyxFQUFFLE1BQU0sR0E4QmhCO0VBbkNELEFBZUMsa0JBZmlCLEFBZWhCLE1BQU0sQ0FBQztJQUtQLEdBQUcsRUFBRSxLQUFLO0lBQ1YsS0FBSyxFQUFFLEtBQUs7SUFDWixTQUFTLEVBQUUsY0FBYyxHQUN6QjtJakRtR0EsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztNaUQxSDFDLEFBZUMsa0JBZmlCLEFBZWhCLE1BQU0sQ0FBQztRQUVOLE9BQU8sRUFBRSxJQUFJLEdBTWQ7RUF2QkYsQUF5QkMsa0JBekJpQixBQXlCaEIsT0FBTyxDQUFDO0lBQ1IsUUFBUSxFQUFFLFFBQVE7SUFDbEIsR0FBRyxFQUFFLENBQUM7SUFDTixLQUFLLEVBQUUsSUFBSTtJQUNYLEtBQUssRUFBRSxLQUFLO0lBQ1osTUFBTSxFQUFFLElBQUk7SUFDWixnQkFBZ0IsRTlEakRULEtBQW9CO0k4RGtEM0IsT0FBTyxFQUFFLEVBQUU7SUFDWCxPQUFPLEVBQUUsRUFBRSxHQUNYOztBQUdGLEFBQUEsbUJBQW1CLENBQUM7RUFDbkIsYUFBYSxFQUFFLElBQUksR0FDbkI7O0FBRUQsQUFBQSxrQkFBa0IsQ0FBQztFQVdsQixPQUFPLEVBQUUsSUFBSTtFQUNiLFdBQVcsRUFBRSxNQUFNO0VBQ25CLGVBQWUsRUFBRSxRQUFRO0VBQ3pCLFFBQVEsRUFBRSxLQUFLO0VBQ2YsTUFBTSxFQUFFLEtBQUs7RUFDYixLQUFLLEVBQUUsS0FBSztFQUNaLE1BQU0sRUFBRSxJQUFJO0VBQ1osYUFBYSxFQUFFLElBQUk7RUFDbkIsZ0JBQWdCLEU5RDlFUixLQUFvQjtFOEQrRTVCLE1BQU0sRUFBRSxHQUFHLENBQUMsS0FBSyxDOUQ1RFQsT0FBd0I7RThENkRoQyxhQUFhLEVBQUUsZUFBZTtFQUM5QixPQUFPLEVBQUUsRUFBRSxHQUNYO0VqRGtEQyxNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO0lpRHpFMUMsQUFBQSxrQkFBa0IsQ0FBQztNQUVqQixRQUFRLEVBQUUsUUFBUTtNQUNsQixlQUFlLEVBQUUsVUFBVTtNQUMzQixNQUFNLEVBQUUsQ0FBQztNQUNULE1BQU0sRUFBRSxJQUFJO01BQ1osTUFBTSxFQUFFLENBQUM7TUFDVCxhQUFhLEVBQUUsS0FBSztNQUNwQixZQUFZLEVBQUUsSUFBSSxHQWVuQjs7QUN4RkQsQUFBQSxVQUFVLENBQUM7RUFDVixRQUFRLEVBQUUsUUFBUTtFQUNsQixnQkFBZ0IsRS9ESVIsS0FBb0I7RStESDVCLGFBQWEsRUFBRSxHQUFHO0VBQ2xCLFVBQVUsRUFBRSxjQUFjLEdBd0IxQjtFQTVCRCxBQU1DLFVBTlMsQUFNUixNQUFNLENBQUM7SUFDUCxLQUFLLEVBQUUsSUFBSTtJQUNYLE1BQU0sRUFBRSxJQUFJO0lBQ1osT0FBTyxFQUFFLENBQUM7SUFDVixTQUFTLEVBQUUsZUFBZTtJQUMxQixVQUFVLEVBQUUsY0FBYztJQUMxQixPQUFPLEVBQUUsRUFBRSxHQUNYO0VBYkYsQUFlQyxVQWZTLEFBZVIsTUFBTSxDQUFDO0lBQ1AsVUFBVSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQy9EWWhCLHdCQUEyQixHK0REakM7SUEzQkYsQUFrQkUsVUFsQlEsQUFlUixNQUFNLEFBR0wsTUFBTSxDQUFDO01BQ1AsT0FBTyxFQUFFLENBQUM7TUFDVixTQUFTLEVBQUUsYUFBYSxHQUN4QjtJQXJCSCxBQXVCRSxVQXZCUSxBQWVSLE1BQU0sQ0FRTixnQkFBZ0IsQ0FBQztNQUNoQixNQUFNLEVBQUUsR0FBRyxDQUFDLEtBQUssQy9EbEJYLEtBQW9CO00rRG1CMUIsVUFBVSxFQUFFLEdBQUcsR0FDZjs7QUFJSCxBQUFBLGlCQUFpQixDQUFDO0VBS2pCLFFBQVEsRUFBRSxRQUFRO0VBQ2xCLEtBQUssRUFBRSxJQUFJO0VBQ1gsTUFBTSxFQUFFLEtBQUs7RUFDYixhQUFhLEVBQUUsR0FBRztFQUNsQixRQUFRLEVBQUUsTUFBTTtFQUNoQixPQUFPLEVBQUUsQ0FBQyxHQUNWO0VsRGlHQyxNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO0lrRDVHMUMsQUFBQSxpQkFBaUIsQ0FBQztNQUVoQixNQUFNLEVBQUUsS0FBSyxHQVNkOztBQUVELEFBQUEsZ0JBQWdCLENBQUM7RUFLaEIsUUFBUSxFQUFFLFFBQVE7RUFDbEIsVUFBVSxFQUFFLGtCQUFrQjtFQUM5QixVQUFVLEVBQUUsSUFBSTtFQUNoQixPQUFPLEVBQUUsbUJBQW1CO0VBQzVCLE1BQU0sRUFBRSxHQUFHLENBQUMsS0FBSyxDL0RqQlQsT0FBcUI7RStEa0I3QixVQUFVLEVBQUUsR0FBRztFQUNmLGFBQWEsRUFBRSxXQUFXO0VBQzFCLFVBQVUsRUFBRSxjQUFjO0VBQzFCLE9BQU8sRUFBRSxDQUFDLEdBQ1Y7RWxEaUZDLE1BQU0sTUFBTSxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7SWtEL0YxQyxBQUFBLGdCQUFnQixDQUFDO01BRWYsVUFBVSxFQUFFLGtCQUFrQixHQVkvQjs7QWxEaUZDLE1BQU0sTUFBTSxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7RWtEL0UxQyxBQUFBLGlCQUFpQixDQUFDO0lBRWhCLGFBQWEsRUFBRSxJQUFJLEdBRXBCOztBQUVELEFBQUEsZ0JBQWdCLENBQUM7RUFLaEIsTUFBTSxFQUFFLE1BQU07RUFDZCxXQUFXLEVBQUUsR0FBRyxHQUNoQjtFbERrRUMsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztJa0R6RTFDLEFBQUEsZ0JBQWdCLENBQUM7TUFFZixPQUFPLEVBQUUsSUFBSSxHQUtkOztBQUdEOztHQUVHO0FBRUgsQUFBQSxvQkFBb0IsQ0FBQztFQUNwQixhQUFhLEVBQUUsZ0JBQWdCLEdBWS9CO0VBYkQsQUFHQyxvQkFIbUIsQ0FHbkIsaUJBQWlCLENBQUM7SUFDakIsTUFBTSxFQUFFLEtBQUs7SUFDYixhQUFhLEVBQUUsaUJBQWlCLEdBQ2hDO0VBTkYsQUFRQyxvQkFSbUIsQ0FRbkIsZ0JBQWdCLENBQUM7SUFDaEIsVUFBVSxFQUFFLGtCQUFrQjtJQUM5QixVQUFVLEVBQUUsS0FBSztJQUNqQixXQUFXLEVBQUUsSUFBSSxHQUNqQjs7QUMzRkYsQUFBQSxVQUFVLENBQUM7RUFDVixRQUFRLEVBQUUsUUFBUSxHQVdsQjtFQVpELEFBR0MsVUFIUyxBQUdSLE9BQU8sQ0FBQztJQUNSLFFBQVEsRUFBRSxRQUFRO0lBQ2xCLE1BQU0sRUFBRSxDQUFDO0lBQ1QsS0FBSyxFQUFFLElBQUk7SUFDWCxNQUFNLEVBQUUsR0FBRztJQUNYLFVBQVUsRWhFaUNILFVBQXFCO0lnRWhDNUIsT0FBTyxFQUFFLEVBQUU7SUFDWCxPQUFPLEVBQUUsRUFBRSxHQUNYOztBQUdGLEFBQUEsaUJBQWlCLENBQUM7RUFDakIsYUFBYSxFQUFFLElBQUksR0FDbkI7O0FBRUQsQUFBQSxxQkFBcUIsQ0FBQztFQVdyQixNQUFNLEVBQUUsV0FBVyxHQW9CbkI7RW5ENkVDLE1BQU0sTUFBTSxNQUFNLE1BQU0sU0FBUyxFQUFFLE1BQU07SW1ENUczQyxBQUFBLHFCQUFxQixDQUFDO01BRXBCLE1BQU0sRUFBRSxXQUFXLEdBNkJwQjtFbkR5RkMsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztJbUR4SDFDLEFBQUEscUJBQXFCLENBQUM7TUFLcEIsTUFBTSxFQUFFLFdBQVcsR0EwQnBCO0VuRGlHQyxNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO0ltRGhJMUMsQUFBQSxxQkFBcUIsQ0FBQztNQVFwQixNQUFNLEVBQUUsT0FBTyxHQXVCaEI7RUEvQkQsQUFhQyxxQkFib0IsQ0FhcEIsWUFBWTtFQWJiLHFCQUFxQixDQWNwQixVQUFVLENBQUM7SUFjVixLQUFLLEVBQUUscUJBQXFCO0lBQzVCLE1BQU0sRUFBRSxTQUFTLEdBQ2pCO0luRDhFQSxNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxNQUFNO01tRDVHM0MsQUFhQyxxQkFib0IsQ0FhcEIsWUFBWTtNQWJiLHFCQUFxQixDQWNwQixVQUFVLENBQUM7UUFFVCxLQUFLLEVBQUUsZ0JBQWdCO1FBQ3ZCLE1BQU0sRUFBRSxJQUFJLEdBYWI7SW5EMEZBLE1BQU0sTUFBTSxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7TW1EeEgxQyxBQWFDLHFCQWJvQixDQWFwQixZQUFZO01BYmIscUJBQXFCLENBY3BCLFVBQVUsQ0FBQztRQU1ULEtBQUssRUFBRSxnQkFBZ0I7UUFDdkIsTUFBTSxFQUFFLFNBQVMsR0FTbEI7SW5Ea0dBLE1BQU0sTUFBTSxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7TW1EaEkxQyxBQWFDLHFCQWJvQixDQWFwQixZQUFZO01BYmIscUJBQXFCLENBY3BCLFVBQVUsQ0FBQztRQVVULEtBQUssRUFBRSxJQUFJO1FBQ1gsTUFBTSxFQUFFLE1BQU0sR0FLZjs7QUFHRixBQUFBLFVBQVUsR0FBRyxXQUFXLENBQUM7RUFDeEIsZ0JBQWdCLEVoRVhSLFVBQXFCLEdnRVk3Qjs7QUFHRDs7R0FFRztBQUVILEFBQ0Msc0JBRHFCLEFBQ3BCLE9BQU8sQ0FBQztFQUNSLE9BQU8sRUFBRSxJQUFJLEdBQ2I7O0FBSEYsQUFLQyxzQkFMcUIsR0FLbkIsV0FBVyxDQUFDO0VBQ2IsZ0JBQWdCLEVoRTVEVCxLQUFvQixHZ0U2RDNCOztBQVBGLEFBU0Msc0JBVHFCLENBU3JCLHFCQUFxQixDQUFDO0VBV3JCLE1BQU0sRUFBRSxXQUFXLEdBb0JuQjtFbkQwQkEsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsTUFBTTtJbURsRTNDLEFBU0Msc0JBVHFCLENBU3JCLHFCQUFxQixDQUFDO01BRXBCLE1BQU0sRUFBRSxXQUFXLEdBNkJwQjtFbkRzQ0EsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztJbUQ5RTFDLEFBU0Msc0JBVHFCLENBU3JCLHFCQUFxQixDQUFDO01BS3BCLE1BQU0sRUFBRSxXQUFXLEdBMEJwQjtFbkQ4Q0EsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztJbUR0RjFDLEFBU0Msc0JBVHFCLENBU3JCLHFCQUFxQixDQUFDO01BUXBCLE1BQU0sRUFBRSxPQUFPLEdBdUJoQjtFQXhDRixBQXNCRSxzQkF0Qm9CLENBU3JCLHFCQUFxQixDQWFwQixZQUFZO0VBdEJkLHNCQUFzQixDQVNyQixxQkFBcUIsQ0FjcEIsVUFBVSxDQUFDO0lBY1YsS0FBSyxFQUFFLHFCQUFxQjtJQUM1QixNQUFNLEVBQUUsU0FBUyxHQUNqQjtJbkQyQkQsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsTUFBTTtNbURsRTNDLEFBc0JFLHNCQXRCb0IsQ0FTckIscUJBQXFCLENBYXBCLFlBQVk7TUF0QmQsc0JBQXNCLENBU3JCLHFCQUFxQixDQWNwQixVQUFVLENBQUM7UUFFVCxLQUFLLEVBQUUsZ0JBQWdCO1FBQ3ZCLE1BQU0sRUFBRSxJQUFJLEdBYWI7SW5EdUNELE1BQU0sTUFBTSxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7TW1EOUUxQyxBQXNCRSxzQkF0Qm9CLENBU3JCLHFCQUFxQixDQWFwQixZQUFZO01BdEJkLHNCQUFzQixDQVNyQixxQkFBcUIsQ0FjcEIsVUFBVSxDQUFDO1FBTVQsS0FBSyxFQUFFLGdCQUFnQjtRQUN2QixNQUFNLEVBQUUsU0FBUyxHQVNsQjtJbkQrQ0QsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztNbUR0RjFDLEFBc0JFLHNCQXRCb0IsQ0FTckIscUJBQXFCLENBYXBCLFlBQVk7TUF0QmQsc0JBQXNCLENBU3JCLHFCQUFxQixDQWNwQixVQUFVLENBQUM7UUFVVCxLQUFLLEVBQUUsSUFBSTtRQUNYLE1BQU0sRUFBRSxNQUFNLEdBS2Y7O0FBS0g7O0dBRUc7QUFFSCxBQUFBLHVCQUF1QjtBQUN2Qix3QkFBd0IsQ0FBQztFQUt4QixhQUFhLEVBQUUsS0FBSyxHQXFCcEI7RW5ER0MsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztJbUQ5QjFDLEFBQUEsdUJBQXVCO0lBQ3ZCLHdCQUF3QixDQUFDO01BRXZCLGFBQWEsRUFBRSxJQUNoQixHQXVCQTtFQTNCRCxBQVFDLHVCQVJzQixBQVFyQixPQUFPO0VBUFQsd0JBQXdCLEFBT3RCLE9BQU8sQ0FBQztJQUNSLE9BQU8sRUFBRSxJQUFJLEdBQ2I7RUFWRixBQVlDLHVCQVpzQixDQVl0QixxQkFBcUI7RUFYdEIsd0JBQXdCLENBV3ZCLHFCQUFxQixDQUFDO0lBQ3JCLFFBQVEsRUFBRSxRQUFRO0lBQ2xCLE1BQU0sRUFBRSxDQUFDLEdBWVQ7SUExQkYsQUFnQkUsdUJBaEJxQixDQVl0QixxQkFBcUIsQ0FJcEIsWUFBWTtJQWhCZCx1QkFBdUIsQ0FZdEIscUJBQXFCLENBS3BCLFVBQVU7SUFoQlosd0JBQXdCLENBV3ZCLHFCQUFxQixDQUlwQixZQUFZO0lBZmQsd0JBQXdCLENBV3ZCLHFCQUFxQixDQUtwQixVQUFVLENBQUM7TUFLVixNQUFNLEVBQUUsQ0FBQztNQUNULEtBQUssRUFBRSxLQUFLO01BQ1osTUFBTSxFQUFFLElBQUksR0FDWjtNbkRLRCxNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO1FtRDlCMUMsQUFnQkUsdUJBaEJxQixDQVl0QixxQkFBcUIsQ0FJcEIsWUFBWTtRQWhCZCx1QkFBdUIsQ0FZdEIscUJBQXFCLENBS3BCLFVBQVU7UUFoQlosd0JBQXdCLENBV3ZCLHFCQUFxQixDQUlwQixZQUFZO1FBZmQsd0JBQXdCLENBV3ZCLHFCQUFxQixDQUtwQixVQUFVLENBQUM7VUFFVCxLQUFLLEVBQUUsS0FBSyxHQU1iOztBQUlILEFBQUEsdUJBQXVCLENBQUM7RUFDdkIsYUFBYSxFQUFFLENBQUMsR0FzQmhCO0VBdkJELEFBR0MsdUJBSHNCLEFBR3JCLE1BQU0sQ0FBQztJQVdQLFFBQVEsRUFBRSxRQUFRO0lBQ2xCLEdBQUcsRUFBRSxJQUFJO0lBQ1QsSUFBSSxFQUFFLEtBQUs7SUFDWCxLQUFLLEVBQUUsS0FBSztJQUNaLE1BQU0sRUFBRSxJQUFJO0lBQ1osZ0JBQWdCLEVoRW5IVCxVQUFxQjtJZ0VvSDVCLE9BQU8sRUFBRSxFQUFFO0lBQ1gsT0FBTyxFQUFFLEVBQUUsR0FDWDtJbkRqQ0EsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsTUFBTTtNbURXM0MsQUFHQyx1QkFIc0IsQUFHckIsTUFBTSxDQUFDO1FBRU4sSUFBSSxFQUFFLEtBQUssR0FpQlo7SW5EckJBLE1BQU0sTUFBTSxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7TW1ERDFDLEFBR0MsdUJBSHNCLEFBR3JCLE1BQU0sQ0FBQztRQUtOLElBQUksRUFBRSxJQUFJLEdBY1g7SW5EYkEsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztNbURUMUMsQUFHQyx1QkFIc0IsQUFHckIsTUFBTSxDQUFDO1FBUU4sSUFBSSxFQUFFLEtBQUssR0FXWjs7QUFHRixBQUFBLDhCQUE4QixDQUFDO0VBQzlCLFVBQVUsRUFBRSxNQUFNLEdBQ2xCOztBbkRsQkMsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztFbURvQjFDLEFBQ0Msd0JBRHVCLENBQ3ZCLGFBQWEsQ0FBQyxRQUFRLENBQUM7SUFFckIsS0FBSyxFQUFFLENBQUMsR0FFVDs7QUMzS0YsQUFBQSxlQUFlLENBQUM7RUFLZixRQUFRLEVBQUUsUUFBUTtFQUNsQixNQUFNLEVBQUUsZUFBZTtFQUN2QixPQUFPLEVBQUUsQ0FBQyxHQStCVjtFcERvR0MsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztJb0QxSTFDLEFBQUEsZUFBZSxDQUFDO01BRWQsTUFBTSxFQUFFLGNBQWMsR0FvQ3ZCO0VBdENELEFBU0MsZUFUYyxBQVNiLE9BQU8sQ0FBQztJQUNSLFFBQVEsRUFBRSxRQUFRO0lBQ2xCLEdBQUcsRUFBRSxJQUFJO0lBQ1QsSUFBSSxFQUFFLENBQUM7SUFDUCxLQUFLLEVBQUUsSUFBSTtJQUNYLE1BQU0sRUFBRSxpQkFBaUI7SUFDekIsZ0JBQWdCLEVBQUUsT0FBTztJQUN6QixPQUFPLEVBQUUsRUFBRTtJQUNYLE9BQU8sRUFBRSxFQUFFLEdBQ1g7RUFsQkYsQUFvQkMsZUFwQmMsQUFvQmIsTUFBTSxDQUFDO0lBQ1AsUUFBUSxFQUFFLFFBQVE7SUFDbEIsS0FBSyxFQUFFLEtBQUs7SUFDWixNQUFNLEVBQUUsSUFBSTtJQUNaLE1BQU0sRUFBRSxNQUFNO0lBQ2QsS0FBSyxFQUFFLEdBQUc7SUFDVixVQUFVLEVBQUUsa0NBQWtDO0lBQzlDLE9BQU8sRUFBRSxFQUFFO0lBQ1gsT0FBTyxFQUFFLEVBQUUsR0FDWDtFQTdCRixBQStCQyxlQS9CYyxDQStCZCxhQUFhLENBQUM7SUFLYixPQUFPLEVBQUUsY0FBYyxHQUN2QjtJcERxR0EsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztNb0QxSTFDLEFBK0JDLGVBL0JjLENBK0JkLGFBQWEsQ0FBQztRQUVaLE9BQU8sRUFBRSxNQUFNLEdBSWhCOztBQUdGLEFBQUEsc0JBQXNCLENBQUM7RUFDdEIsYUFBYSxFQUFFLEdBQUcsR0FDbEI7O0FBRUQsQUFBQSx1QkFBdUIsQ0FBQztFQUt2QixhQUFhLEVBQUUsSUFBSTtFQUNuQixXQUFXLEVBQUUsR0FBRyxHQUNoQjtFcER1RkMsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztJb0Q5RjFDLEFBQUEsdUJBQXVCLENBQUM7TUFFdEIsYUFBYSxFQUFFLElBQUksR0FLcEI7O0FBRUQsQUFBQSx3QkFBd0IsQ0FBQztFQUt4QixNQUFNLEVBQUUsT0FBTyxHQUNmO0VwRCtFQyxNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO0lvRHJGMUMsQUFBQSx3QkFBd0IsQ0FBQztNQUV2QixNQUFNLEVBQUUsQ0FBQyxHQUlWOztBQUVELEFBQUEsdUJBQXVCLENBQUM7RUFNdkIsS0FBSyxFQUFFLGdCQUFnQjtFQUN2QixNQUFNLEVBQUUsTUFBTSxHQU9kO0VwRCtEQyxNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO0lvRDdFMUMsQUFBQSx1QkFBdUIsQ0FBQztNQUV0QixLQUFLLEVBQUUsSUFBSTtNQUNYLE1BQU0sRUFBRSxDQUFDLEdBV1Y7RXBEK0RDLE1BQU0sTUFBTSxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7SW9EN0UxQyxBQVNDLHVCQVRzQixBQVNyQixjQUFjLENBQUM7TUFFZCxhQUFhLEVBQUUsSUFBSSxHQUVwQjs7QUFHRixBQUFBLHVCQUF1QixDQUFDO0VBS3ZCLGFBQWEsRUFBRSxHQUFHLENBQUMsS0FBSyxDakU3Q2hCLE9BQTRCLEdpRXdEcEM7RXBENkNDLE1BQU0sTUFBTSxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7SW9EN0QxQyxBQUFBLHVCQUF1QixDQUFDO01BRXRCLGNBQWMsRUFBRSxJQUFJLEdBY3JCO0VBaEJELEFBT0MsdUJBUHNCLEFBT3JCLFVBQVcsQ2hDa0lDLENBQUMsRWdDbElDO0lBQ2QsVUFBVSxFQUFFLEdBQUcsQ0FBQyxLQUFLLENqRWhEZCxPQUE0QixHaUVpRG5DO0VBVEYsQUFZRSx1QkFacUIsQUFXckIsVUFBVSxDQUNWLDRCQUE0QixHQUFHLEdBQUcsQ0FBQztJQUNsQyxTQUFTLEVBQUUsY0FBYyxHQUN6Qjs7QUFJSCxBQUFBLDRCQUE0QixDQUFDO0VBSzVCLFFBQVEsRUFBRSxRQUFRO0VBQ2xCLE9BQU8sRUFBRSxNQUFNO0VBQ2YsTUFBTSxFQUFFLE9BQU8sR0FXZjtFcER5QkMsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztJb0QzQzFDLEFBQUEsNEJBQTRCLENBQUM7TUFFM0IsT0FBTyxFQUFFLFVBQVUsR0FnQnBCO0VBbEJELEFBU0MsNEJBVDJCLEdBU3pCLEdBQUcsQ0FBQztJQUNMLFFBQVEsRUFBRSxRQUFRO0lBQ2xCLEdBQUcsRUFBRSxJQUFJO0lBQ1QsS0FBSyxFQUFFLENBQUM7SUFDUixLQUFLLEVBQUUsSUFBSTtJQUNYLE1BQU0sRUFBRSxJQUFJO0lBQ1osWUFBWSxFQUFFLElBQUk7SUFDbEIsVUFBVSxFQUFFLGNBQWMsR0FDMUI7O0FBR0YsQUFBQSw0QkFBNEIsQ0FBQztFQUM1QixXQUFXLEVBQUUsR0FBRyxHQVNoQjtFQVZELEFBR0MsNEJBSDJCLEdBR3pCLEdBQUcsQ0FBQztJQUNMLFFBQVEsRUFBRSxRQUFRO0lBQ2xCLEdBQUcsRUFBRSxJQUFJO0lBQ1QsS0FBSyxFQUFFLElBQUk7SUFDWCxNQUFNLEVBQUUsSUFBSTtJQUNaLFlBQVksRUFBRSxJQUFJLEdBQ2xCOztBQUdGLEFBQUEsNEJBQTRCLENBQUM7RUFDNUIsT0FBTyxFQUFFLElBQUk7RUFDYixjQUFjLEVBQUUsSUFBSTtFQUNwQixZQUFZLEVBQUUsSUFBSTtFQUNsQixXQUFXLEVBQUUsR0FBRyxHQUNoQjs7QUFFRCxBQUFBLHdCQUF3QixDQUFDO0VwRGhGdkIsU0FBUyxFb0RzRkksSUFBSTtFcERyRmpCLFNBQVMsRUY1QkYsTUFBeUI7RUVpQ2hDLFdBQVcsRUFBRSxTQUFtQztFb0RpRmpELEtBQUssRUFBRSxnQkFBZ0I7RUFDdkIsVUFBVSxFQUFFLElBQUk7RUFDaEIsS0FBSyxFakUxSEcsT0FBMkI7RWlFMkhuQyxXQUFXLEVBQUUsR0FBRztFQUNoQixVQUFVLEVBQUUsTUFBTSxHQUNsQjtFcERSQyxNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO0lvREoxQyxBQUFBLHdCQUF3QixDQUFDO01BRXZCLEtBQUssRUFBRSxJQUFJO01BQ1gsVUFBVSxFQUFFLElBQUksR0FTakI7O0FDbEpELEFBQUEsV0FBVyxDQUFDO0VBQ1gsS0FBSyxFQUFFLEtBQUs7RUFDWixNQUFNLEVBQUUsSUFBSTtFQUNaLGFBQWEsRUFBRSxHQUFHO0VBQ2xCLGdCQUFnQixFbEVFUixLQUFvQjtFa0VENUIsTUFBTSxFQUFFLEdBQUcsQ0FBQyxLQUFLLENsRW9DVCxVQUFxQjtFa0VuQzdCLFVBQVUsRUFBRSxjQUFjLEdBbUIxQjtFQXpCRCxBQVFDLFdBUlUsQUFRVCxNQUFNLENBQUM7SUFDUCxLQUFLLEVBQUUsSUFBSTtJQUNYLE1BQU0sRUFBRSxnQkFBZ0I7SUFDeEIsT0FBTyxFQUFFLENBQUM7SUFDVixTQUFTLEVBQUUsZUFBZTtJQUMxQixVQUFVLEVBQUUsY0FBYztJQUMxQixPQUFPLEVBQUUsRUFBRSxHQUNYO0VBZkYsQUFpQkMsV0FqQlUsQUFpQlQsTUFBTSxDQUFDO0lBQ1AsVUFBVSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ2xFVWhCLHdCQUEyQixHa0VKakM7SUF4QkYsQUFvQkUsV0FwQlMsQUFpQlQsTUFBTSxBQUdMLE1BQU0sQ0FBQztNQUNQLE9BQU8sRUFBRSxDQUFDO01BQ1YsU0FBUyxFQUFFLGFBQWEsR0FDeEI7O0FBSUgsQUFBQSxrQkFBa0IsQ0FBQztFQUNsQixRQUFRLEVBQUUsUUFBUTtFQUNsQixLQUFLLEVBQUUsSUFBSTtFQUNYLE1BQU0sRUFBRSxLQUFLLEdBS2I7RUFSRCxBQUtDLGtCQUxpQixDQUtqQixHQUFHLENBQUM7SUFDSCxhQUFhLEVBQUUsR0FBRyxHQUNsQjs7QUFHRixBQUFBLGlCQUFpQixDQUFDO0VBQ2pCLE9BQU8sRUFBRSxtQkFBbUI7RUFDNUIsVUFBVSxFQUFFLE1BQU0sR0FDbEI7O0FBRUQsQUFBQSxrQkFBa0IsQ0FBQztFQUNsQixVQUFVLEVBQUUsSUFBSTtFQUNoQixPQUFPLEVBQUUsZ0JBQWdCO0VBQ3pCLFVBQVUsRUFBRSxHQUFHLENBQUMsS0FBSyxDbEVwQmIsT0FBd0IsR2tFOEJoQztFQWJELEFBS0Msa0JBTGlCLENBS2pCLEdBQUcsQ0FBQztJQUNILEtBQUssRUFBRSxJQUFJO0lBQ1gsTUFBTSxFQUFFLElBQUksR0FLWjtJQVpGLEFBU0Usa0JBVGdCLENBS2pCLEdBQUcsQUFJRCxRQUFRLENBQUM7TUFDVCxLQUFLLEVBQUUsSUFBSSxHQUNYOztBQ3JESCxBQUFBLGFBQWEsQ0FBQztFQUtiLFFBQVEsRUFBRSxRQUFRO0VBQ2xCLE1BQU0sRUFBRSxNQUFNLEdBc0RkO0V0RDhFQyxNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO0lzRDFJMUMsQUFBQSxhQUFhLENBQUM7TUFFWixNQUFNLEVBQUUsTUFBTSxHQTBEZjtFQTVERCxBQVFDLGFBUlksQ0FRWixRQUFRLENBQUM7SUFRUixXQUFXLEVBQUUsS0FBSztJQUNsQixjQUFjLEVBQUUsSUFBSSxHQW9CcEI7SXREcUdBLE1BQU0sTUFBTSxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7TXNEMUkxQyxBQVFDLGFBUlksQ0FRWixRQUFRLENBQUM7UUFFUCxXQUFXLEVBQUUsSUFBSSxHQTJCbEI7SXRENkdBLE1BQU0sTUFBTSxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7TXNEbEoxQyxBQVFDLGFBUlksQ0FRWixRQUFRLENBQUM7UUFLUCxXQUFXLEVBQUUsSUFBSSxHQXdCbEI7SUFyQ0YsQUFtQkUsYUFuQlcsQ0FRWixRQUFRLEFBV04sT0FBTyxDQUFDO01BU1IsUUFBUSxFQUFFLFFBQVE7TUFDbEIsTUFBTSxFQUFFLENBQUM7TUFDVCxJQUFJLEVBQUUsS0FBSztNQUNYLEtBQUssRUFBRSxLQUFLO01BQ1osTUFBTSxFQUFFLElBQUk7TUFDWixVQUFVLEVuRVFKLFVBQXFCO01tRVAzQixPQUFPLEVBQUUsRUFBRTtNQUNYLE9BQU8sRUFBRSxFQUFFLEdBQ1g7TXREMEZELE1BQU0sTUFBTSxNQUFNLE1BQU0sU0FBUyxFQUFFLE1BQU07UXNEOUgzQyxBQW1CRSxhQW5CVyxDQVFaLFFBQVEsQUFXTixPQUFPLENBQUM7VUFFUCxJQUFJLEVBQUUsS0FBSyxHQWVaO010RHNHRCxNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO1FzRDFJMUMsQUFtQkUsYUFuQlcsQ0FRWixRQUFRLEFBV04sT0FBTyxDQUFDO1VBS1AsS0FBSyxFQUFFLGtCQUFrQjtVQUN6QixJQUFJLEVBQUUsS0FBSyxHQVdaO0VBcENILEFBdUNDLGFBdkNZLEFBdUNYLE1BQU0sQ0FBQztJQVlQLEtBQUssRUFBRSxNQUFNO0lBQ2IsR0FBRyxFQUFFLEtBQUs7SUFDVixTQUFTLEVBQUUsY0FBYztJQUN6QixPQUFPLEVBQUUsQ0FBQyxHQUNWO0l0RHVFQSxNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxNQUFNO01zRDlIM0MsQUF1Q0MsYUF2Q1ksQUF1Q1gsTUFBTSxDQUFDO1FBRU4sS0FBSyxFQUFFLE1BQU0sR0FjZDtJdERtRkEsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztNc0QxSTFDLEFBdUNDLGFBdkNZLEFBdUNYLE1BQU0sQ0FBQztRQUtOLEtBQUssRUFBRSxNQUFNO1FBQ2IsR0FBRyxFQUFFLEdBQUcsR0FVVDtJdEQyRkEsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztNc0RsSjFDLEFBdUNDLGFBdkNZLEFBdUNYLE1BQU0sQ0FBQztRQVNOLE9BQU8sRUFBRSxJQUFJLEdBT2Q7RUF2REYsQUF5REMsYUF6RFksQ0F5RFosQ0FBQyxDQUFDO0lBQ0QsT0FBTyxFQUFFLE9BQU8sR0FDaEI7O0FBR0YsQUFBQSxtQkFBbUIsQ0FBQztFQU1uQixRQUFRLEVBQUUsUUFBUTtFQUNsQixTQUFTLEVBQUUsS0FBSztFQUNoQixNQUFNLEVBQUUsZ0JBQWdCO0VBQ3hCLFdBQVcsRUFBRSxJQUFJO0VBQ2pCLFVBQVUsRUFBRSxNQUFNLEdBYWxCO0V0RHlDQyxNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxNQUFNO0lzRGhFM0MsQUFBQSxtQkFBbUIsQ0FBQztNQUVsQixNQUFNLEVBQUUsZ0JBQWdCO01BQ3hCLFdBQVcsRUFBRSxJQUFJLEdBb0JsQjtFQXZCRCxBQVlDLG1CQVprQixDQVlsQixtQkFBbUIsQ0FBQztJQVFuQixRQUFRLEVBQUUsUUFBUTtJQUNsQixHQUFHLEVBQUUsQ0FBQyxHQUNOO0l0RDBDQSxNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxNQUFNO01zRGhFM0MsQUFZQyxtQkFaa0IsQ0FZbEIsbUJBQW1CLENBQUM7UXREcEJuQixTQUFTLEVzRHNCTSxJQUFJO1F0RHJCbkIsU0FBUyxFRjVCRixJQUF5QjtRRWlDaEMsV0FBVyxFQUFFLEdBQW1DO1FzRGlCL0MsS0FBSyxFQUFFLElBQUk7UUFDWCxjQUFjLEVBQUUsTUFBTTtRQUN0QixLQUFLLEVuRTdERCx1QkFBOEIsR21Fa0VuQzs7QUFHRixBQUFBLG9CQUFvQixDQUFDO0VBQ3BCLGFBQWEsRUFBRSxJQUFJLEdBQ25COztBQUVELEFBQUEscUJBQXFCLENBQUM7RUFDckIsT0FBTyxFQUFFLEVBQUUsR0FjWDtFdERvQkMsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsTUFBTTtJc0RuQzNDLEFBR0MscUJBSG9CLENBR3BCLFFBQVEsQ0FBQztNQUVQLEdBQUcsRUFBRSxLQUFLLEdBU1g7RXREeUNBLE1BQU0sTUFBTSxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7SXNEdkQxQyxBQUdDLHFCQUhvQixDQUdwQixRQUFRLENBQUM7TUFLUCxHQUFHLEVBQUUsS0FBSztNQUNWLElBQUksRUFBRSxDQUFDO01BQ1AsS0FBSyxFQUFFLENBQUM7TUFDUixNQUFNLEVBQUUsTUFBTTtNQUNkLGVBQWUsRUFBRSxNQUFNLEdBRXhCOztBQ3pHRixBQUFBLFlBQVksQ0FBQztFQUtaLEtBQUssRUFBRSxLQUFLO0VBQ1osTUFBTSxFQUFFLGlCQUFpQixHQW1CekI7RXZEcUdDLE1BQU0sTUFBTSxNQUFNLE1BQU0sU0FBUyxFQUFFLE1BQU07SXVEOUgzQyxBQUFBLFlBQVksQ0FBQztNQUVYLE1BQU0sRUFBRSxVQUFVLEdBdUJuQjtFQXpCRCxBQVFDLFlBUlcsQ0FRWCxPQUFPLENBQUM7SUFFUCxLQUFLLEVBQUUsSUFBSTtJQUNYLGVBQWUsRUFBRSxNQUFNLEdBU3ZCO0lBcEJGLEFBYUUsWUFiVSxDQVFYLE9BQU8sQ0FLTixHQUFHLENBQUM7TUFDSCxRQUFRLEVBQUUsUUFBUTtNQUNsQixHQUFHLEVBQUUsR0FBRztNQUNSLEtBQUssRUFBRSxJQUFJO01BQ1gsTUFBTSxFQUFFLElBQUk7TUFDWixZQUFZLEVBQUUsR0FBRyxHQUNqQjtFQW5CSCxBQXNCQyxZQXRCVyxDQXNCWCxFQUFFLENBQUM7SUFDRixPQUFPLEVBQUUsSUFBSSxHQUNiOztBQUdGLEFBQUEsbUJBQW1CLENBQUM7RUFDaEIsV0FBVyxFQUFFLE1BQU07RUFDbkIsZUFBZSxFQUFFLGFBQWE7RUFDakMsYUFBYSxFQUFFLElBQUk7RUFDbkIsT0FBTyxFQUFFLFNBQVM7RUFDbEIsZ0JBQWdCLEVwRVBSLE9BQXdCLEdvRXVCaEM7RUFyQkQsQUFPQyxtQkFQa0IsQ0FPbEIsTUFBTSxDQUFDO0lBQ04sS0FBSyxFQUFFLEdBQUcsR0FDVjtFQVRGLEFBV0MsbUJBWGtCLENBV2xCLGFBQWEsQ0FBQztJQUNiLE9BQU8sRUFBRSxJQUFJLEdBQ2I7RUFiRixBQWVDLG1CQWZrQixDQWVsQixPQUFPLENBQUM7SXZEWVAsU0FBUyxFdURYSyxJQUFJO0l2RFlsQixTQUFTLEVGNUJGLE1BQXlCO0lFaUNoQyxXQUFXLEVBQUUsU0FBbUM7SXVEaEJoRCxPQUFPLEVBQUUsS0FBSztJQUNkLFdBQVcsRUFBRSxHQUFHO0lBQ2hCLEtBQUssRXBFekJFLE9BQTJCLEdvRTBCbEM7O0FBR0YsQUFBQSxzQkFBc0IsQ0FBQztFdkRJckIsU0FBUyxFdURISSxJQUFJO0V2RElqQixTQUFTLEVGNUJGLE1BQXlCO0VFaUNoQyxXQUFXLEVBQUUsR0FBbUM7RXVEUmpELGFBQWEsRUFBRSxJQUFJO0VBQ25CLE9BQU8sRUFBRSxJQUFJO0VBQ2IsZ0JBQWdCLEVwRTdCUixPQUF3QjtFb0U4QmhDLFdBQVcsRUFBRSxHQUFHLEdBa0JoQjtFQXZCRCxBQU9DLHNCQVBxQixDQU9yQixRQUFRLENBQUM7SXZESFIsU0FBUyxFdURJSyxJQUFJO0l2REhsQixTQUFTLEVGNUJGLE1BQXlCO0lFaUNoQyxXQUFXLEVBQUUsT0FBbUM7SXVERGhELE9BQU8sRUFBRSxLQUFLO0lBQ2QsYUFBYSxFQUFFLElBQUk7SUFDbkIsS0FBSyxFcEVoQ0UsT0FBeUIsR29FaUNoQztFQVpGLEFBY0Msc0JBZHFCLENBY3JCLE1BQU07RUFkUCxzQkFBc0IsQ0FlckIsRUFBRSxDQUFDO0lBQ0YsT0FBTyxFQUFFLEtBQUs7SUFDZCxXQUFXLEVBQUUsR0FBRyxHQUNoQjtFQWxCRixBQW9CQyxzQkFwQnFCLENBb0JyQixDQUFDLENBQUM7SUFDRCxhQUFhLEVBQUUsSUFBSSxHQUNuQjs7QUN4RUYsQUFBQSxVQUFVLENBQUM7RUFPVixRQUFRLEVBQUUsUUFBUTtFQUNsQixHQUFHLEVBQUUsS0FBSztFQUNWLEtBQUssRUFBRSxDQUFDO0VBQ1IsS0FBSyxFQUFFLG1CQUFtQjtFQUMxQixTQUFTLEVBQUUsS0FBSztFQUNoQixXQUFXLEVBQUUsSUFBSTtFQUNqQixLQUFLLEVBQUUsT0FBTztFQUNkLE9BQU8sRUFBRSxDQUFDO0VBQ1YsT0FBTyxFQUFFLEVBQUU7RUFDWCxVQUFVLEVBQUUsY0FBYyxHQU8xQjtFeERtSEMsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztJd0QxSTFDLEFBQUEsVUFBVSxDQUFDO01BRVQsS0FBSyxFQUFFLE1BQU07TUFDYixLQUFLLEVBQUUsa0JBQWtCO01BQ3pCLFNBQVMsRUFBRSxrQkFBa0IsR0FtQjlCO0VBdkJELEFBa0JDLFVBbEJTLEFBa0JSLFVBQVUsQ0FBQztJQUNYLEdBQUcsRUFBRSxDQUFDO0lBQ04sT0FBTyxFQUFFLENBQUM7SUFDVixPQUFPLEVBQUUsRUFBRSxHQUNYOztBQUdGLEFBQUEsaUJBQWlCLENBQUM7RUFDakIsUUFBUSxFQUFFLFFBQVE7RUFDbEIsR0FBRyxFQUFFLEdBQUc7RUFDUixLQUFLLEVBQUUsR0FBRztFQUNWLE1BQU0sRUFBRSxPQUFPLEdBT2Y7RUFYRCxBQU1DLGlCQU5nQixDQU1oQixHQUFHLENBQUM7SUFDSCxLQUFLLEVBQUUsSUFBSTtJQUNYLE1BQU0sRUFBRSxJQUFJO0lBQ1osS0FBSyxFckV2QkUsT0FBMkIsR3FFd0JsQzs7QUFHRixBQUFBLGdCQUFnQixDQUFDO0VBS2hCLFFBQVEsRUFBRSxRQUFRO0VBQ2xCLE9BQU8sRUFBRSxJQUFJO0VBQ2IsZ0JBQWdCLEVyRXZDUixLQUFvQjtFcUV3QzVCLFVBQVUsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENyRS9CZixzQkFBOEI7RXFFZ0NyQyxhQUFhLEVBQUUsR0FBRyxHQTZIbEI7RXhEOUNDLE1BQU0sTUFBTSxNQUFNLE1BQU0sU0FBUyxFQUFFLE1BQU07SXdEeEYzQyxBQUFBLGdCQUFnQixDQUFDO01BRWYsT0FBTyxFQUFFLElBQUksR0FvSWQ7RUF0SUQsQUFXQyxnQkFYZSxBQVdkLE1BQU0sQ0FBQztJQUNQLE1BQU0sRUFBRSxJQUFJO0lBQ1osSUFBSSxFQUFFLElBQUksR0FDVjtFQWRGLEFBZ0JDLGdCQWhCZSxDQWdCZixlQUFlLENBQUM7SUFDZixPQUFPLEVBQUUsSUFBSTtJQUNiLFFBQVEsRUFBRSxRQUFRO0lBQ2xCLGNBQWMsRUFBRSxJQUFJLEdBa0JwQjtJQXJDRixBQXFCRSxnQkFyQmMsQ0FnQmYsZUFBZSxDQUtkLElBQUksQ0FBQztNeERMTCxTQUFTLEV3RE1NLElBQUk7TXhETG5CLFNBQVMsRUY1QkYsTUFBeUI7TUVpQ2hDLFdBQVcsRUFBRSxTQUFtQztNd0RDL0MsS0FBSyxFckVsREMsT0FBMkI7TXFFbURqQyxPQUFPLEVBQUUsSUFBSTtNQUNiLFdBQVcsRUFBRSxJQUFJLEdBV2pCO01BcENILEFBMkJHLGdCQTNCYSxDQWdCZixlQUFlLENBS2QsSUFBSSxBQU1GLFVBQVcsQ3BDcUpELENBQUMsRW9DckpHO1FBQ2QsS0FBSyxFQUFFLEdBQUc7UUFDVixVQUFVLEVBQUUsTUFBTSxHQUNsQjtNQTlCSixBQWdDRyxnQkFoQ2EsQ0FnQmYsZUFBZSxDQUtkLElBQUksQUFXRixVQUFXLENwQ2tLRCxDQUFDLEVvQ2xLRztRQUNkLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLEtBQUssRUFBRSxJQUFJLEdBQ1g7RUFuQ0osQUF1Q0MsZ0JBdkNlLENBdUNmLGVBQWUsQ0FBQztJQUNmLE9BQU8sRUFBRSxJQUFJO0lBQ2IsUUFBUSxFQUFFLFFBQVE7SUFDbEIsV0FBVyxFQUFFLE1BQU07SUFDbkIsYUFBYSxFQUFFLEdBQUc7SUFDbEIsT0FBTyxFQUFFLElBQUk7SUFDYixNQUFNLEVBQUUsR0FBRyxDQUFDLEtBQUssQ3JFMUNWLFVBQXFCO0lxRTJDNUIsYUFBYSxFQUFFLEdBQUcsR0FxQ2xCO0lBbkZGLEFBZ0RFLGdCQWhEYyxDQXVDZixlQUFlLEdBU1osQ0FBQyxDQUFDO014RGhDSixTQUFTLEV3RGlDTSxJQUFJO014RGhDbkIsU0FBUyxFRjVCRixNQUF5QjtNRWlDaEMsV0FBVyxFQUFFLFNBQW1DO013RDRCL0MsS0FBSyxFckU3RUMsT0FBMkI7TXFFOEVqQyxXQUFXLEVBQUUsSUFBSTtNQUNqQixLQUFLLEVBQUUsR0FBRyxHQUNWO0lBckRILEFBdURFLGdCQXZEYyxDQXVDZixlQUFlLENBZ0JkLHdCQUF3QixDQUFDO01BQ3hCLE9BQU8sRUFBRSxJQUFJLEdBQ2I7SUF6REgsQUEyREUsZ0JBM0RjLENBdUNmLGVBQWUsQ0FvQmQsU0FBUyxDQUFDO014RDNDVixTQUFTLEV3RDRDTSxJQUFJO014RDNDbkIsU0FBUyxFRjVCRixNQUF5QjtNRWlDaEMsV0FBVyxFQUFFLFNBQW1DO013RHVDL0MsT0FBTyxFQUFFLElBQUk7TUFDYixXQUFXLEVBQUUsTUFBTTtNQUNuQixlQUFlLEVBQUUsYUFBYTtNQUM5QixLQUFLLEVBQUUsR0FBRyxHQVFWO01BeEVILEFBa0VHLGdCQWxFYSxDQXVDZixlQUFlLENBb0JkLFNBQVMsR0FPTixJQUFJLENBQUM7UXhEbERSLFNBQVMsRXdEbURPLElBQUk7UXhEbERwQixTQUFTLEVGNUJGLE1BQXlCO1FFaUNoQyxXQUFXLEVBQUUsU0FBbUM7UXdEOEM5QyxhQUFhLEVBQUUsSUFBSTtRQUNuQixXQUFXLEVBQUUsR0FBRztRQUNoQixLQUFLLEVyRXZGQSxPQUEyQixHcUV3RmhDO0lBdkVKLEFBMEVFLGdCQTFFYyxDQXVDZixlQUFlLENBbUNkLEdBQUcsQ0FBQztNQUtILEtBQUssRUFBRSxLQUFLO01BQ1osTUFBTSxFQUFFLEtBQUs7TUFDYixZQUFZLEVBQUUsSUFBSSxHQUNsQjtNeERrQkQsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztRd0RwRzFDLEFBMEVFLGdCQTFFYyxDQXVDZixlQUFlLENBbUNkLEdBQUcsQ0FBQztVQUVGLE9BQU8sRUFBRSxJQUFJLEdBTWQ7RUFsRkgsQUFxRkMsZ0JBckZlLENBcUZmLDZCQUE2QixDQUFDO0lBQzdCLE9BQU8sRUFBRSxJQUFJO0lBQ2IsV0FBVyxFQUFFLE1BQU07SUFDbkIsZUFBZSxFQUFFLFFBQVE7SUFDekIsT0FBTyxFQUFFLGdCQUFnQixHQWF6QjtJQXRHRixBQTJGRSxnQkEzRmMsQ0FxRmYsNkJBQTZCLENBTTVCLE1BQU0sQ0FBQztNeEQzRVAsU0FBUyxFd0Q0RU0sSUFBSTtNeEQzRW5CLFNBQVMsRUY1QkYsTUFBeUI7TUVpQ2hDLFdBQVcsRUFBRSxPQUFtQztNd0R1RS9DLEtBQUssRXJFdEdDLE9BQXlCO01xRXVHL0IsWUFBWSxFQUFFLElBQUksR0FDbEI7SUEvRkgsQUFpR0UsZ0JBakdjLENBcUZmLDZCQUE2QixDQVk1QixPQUFPLENBQUM7TXhEakZSLFNBQVMsRXdEa0ZNLElBQUk7TXhEakZuQixTQUFTLEVGNUJGLE1BQXlCO01FaUNoQyxXQUFXLEVBQUUsU0FBbUM7TXdENkUvQyxXQUFXLEVBQUUsR0FBRztNQUNoQixLQUFLLEVyRXJIQyxPQUEyQixHcUVzSGpDO0VBckdILEFBd0dDLGdCQXhHZSxDQXdHZiwrQkFBK0IsQ0FBQztJQUMvQixPQUFPLEVBQUUsSUFBSTtJQUNiLGVBQWUsRUFBRSxRQUFRLEdBMEJ6QjtJQXBJRixBQTRHRSxnQkE1R2MsQ0F3R2YsK0JBQStCLEdBSTVCLENBQUMsQ0FBQztNQUdILGFBQWEsRUFBRSxJQUFJO01BQ25CLFlBQVksRUFBRSxJQUFJLEdBbUJsQjtNQW5JSCxBQWtIRyxnQkFsSGEsQ0F3R2YsK0JBQStCLEdBSTVCLENBQUMsQ0FNRixHQUFHLENBQUM7UUFDSCxRQUFRLEVBQUUsUUFBUTtRQUNsQixHQUFHLEVBQUUsR0FBRztRQUNSLEtBQUssRUFBRSxJQUFJO1FBQ1gsTUFBTSxFQUFFLElBQUk7UUFDWixZQUFZLEVBQUUsR0FBRyxHQUNqQjtNQXhISixBQTJISSxnQkEzSFksQ0F3R2YsK0JBQStCLEdBSTVCLENBQUMsQUFjRCxNQUFNLENBQ04sR0FBRyxDQUFDO1FBQ0gsS0FBSyxFckU1SkQsS0FBb0IsR3FFNkp4QjtNQTdITCxBQWdJRyxnQkFoSWEsQ0F3R2YsK0JBQStCLEdBSTVCLENBQUMsQUFvQkQsU0FBUyxDQUFDO1FBQ1YsT0FBTyxFQUFFLElBQUksR0FDYjs7QUFNSixBQUFBLHFDQUFxQyxDQUFDO0VBQ3JDLFVBQVUsRUFBRSxNQUFNLEdBQ2xCOztBQ2hMRCxBQUFBLFlBQVksQ0FBQztFQUtaLE9BQU8sRUFBRSxJQUFJO0VBQ2IsU0FBUyxFQUFFLElBQUksR0FLZjtFekRtSEMsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsTUFBTTtJeUQ5SDNDLEFBQUEsWUFBWSxDQUFDO01BRVgsZUFBZSxFQUFFLFFBQVEsR0FTMUI7RUFYRCxBQVFDLFlBUlcsQ0FRWCxFQUFFLENBQUM7SUFDRixLQUFLLEVBQUUsSUFBSSxHQUNYOztBSW9NRixBSDlNQSxnQkc4TWdCLENBQ2YseUJBQXlCLEVBc0MxQiw4QkFBOEIsQ0FTN0IsaUNBQWlDO0FIN1BsQyxzQkFBc0IsQ0FBQztFQU10QixLQUFLLEVBQUUsa0JBQWtCO0VBQ3pCLE1BQU0sRUFBRSxNQUFNO0VBUWQ7O0lBRUc7RUEwQkg7O0lBRUcsRUFrS0g7RTFEbEZDLE1BQU0sTUFBTSxNQUFNLE1BQU0sU0FBUyxFQUFFLE1BQU07STZEZ0YzQyxBSDlNQSxnQkc4TWdCLENBQ2YseUJBQXlCLEVBc0MxQiw4QkFBOEIsQ0FTN0IsaUNBQWlDO0lIN1BsQyxzQkFBc0IsQ0FBQztNQUVyQixLQUFLLEVBQUUsSUFBSTtNQUNYLE1BQU0sRUFBRSxVQUFVLEdBNE1uQjtFR0ZELEFIcE1DLGdCR29NZSxDQUNmLHlCQUF5QixDSHJNekIsS0FBSyxFRzJPTiw4QkFBOEIsQ0FTN0IsaUNBQWlDLENIcFBqQyxLQUFLO0VBVE4sc0JBQXNCLENBU3JCLEtBQUssQ0FBQztJQUNMLEtBQUssRUFBRSxJQUFJO0lBQ1gsZUFBZSxFQUFFLFFBQVE7SUFDekIsY0FBYyxFQUFFLE1BQU0sR0FDdEI7RUdnTUYsQUgzTEMsZ0JHMkxlLENBQ2YseUJBQXlCLENINUx6QixLQUFLLEVHa09OLDhCQUE4QixDQVM3QixpQ0FBaUMsQ0gzT2pDLEtBQUs7RUFsQk4sc0JBQXNCLENBa0JyQixLQUFLLENBQUM7STFEbUNMLFNBQVMsRTBEbENLLElBQUk7STFEbUNsQixTQUFTLEVGNUJGLElBQXlCO0lFaUNoQyxXQUFXLEVBQUUsS0FBbUM7STBEdkNoRCxLQUFLLEV2RVZFLE9BQTJCO0l1RVdsQyxPQUFPLEVBQUUsSUFBSTtJQUNiLFdBQVcsRUFBRSxJQUFJO0lBQ2pCLGNBQWMsRUFBRSxNQUFNO0lBQ3RCLFVBQVUsRUFBRSxJQUFJLEdBaUJoQjtJR29LRixBSG5MRSxnQkdtTGMsQ0FDZix5QkFBeUIsQ0g1THpCLEtBQUssQ0FRSixFQUFFLEVHME5KLDhCQUE4QixDQVM3QixpQ0FBaUMsQ0gzT2pDLEtBQUssQ0FRSixFQUFFO0lBMUJKLHNCQUFzQixDQWtCckIsS0FBSyxDQVFKLEVBQUUsQ0FBQztNQUNGLGNBQWMsRUFBRSxJQUFJLEdBYXBCO00xRGlHRCxNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO1E2RG9FMUMsQUhoTEcsZ0JHZ0xhLENBQ2YseUJBQXlCLENINUx6QixLQUFLLENBUUosRUFBRSxBQUdBLGtCQUFrQixFR3VOdEIsOEJBQThCLENBUzdCLGlDQUFpQyxDSDNPakMsS0FBSyxDQVFKLEVBQUUsQUFHQSxrQkFBa0I7UUE3QnRCLHNCQUFzQixDQWtCckIsS0FBSyxDQVFKLEVBQUUsQUFHQSxrQkFBa0IsQ0FBQztVQUVsQixPQUFPLEVBQUUsSUFBSSxHQUVkO00xRHdHRixNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO1E2RG9FMUMsQUgxS0csZ0JHMEthLENBQ2YseUJBQXlCLENINUx6QixLQUFLLENBUUosRUFBRSxBQVNBLGFBQWEsRUdpTmpCLDhCQUE4QixDQVM3QixpQ0FBaUMsQ0gzT2pDLEtBQUssQ0FRSixFQUFFLEFBU0EsYUFBYTtRQW5DakIsc0JBQXNCLENBa0JyQixLQUFLLENBUUosRUFBRSxBQVNBLGFBQWEsQ0FBQztVQUViLFlBQVksRUFBRSxJQUFJLEdBRW5CO0VHc0tKLEFIL0pDLGdCRytKZSxDQUNmLHlCQUF5QixDSGhLekIsS0FBSyxFR3NNTiw4QkFBOEIsQ0FTN0IsaUNBQWlDLENIL01qQyxLQUFLO0VBOUNOLHNCQUFzQixDQThDckIsS0FBSyxDQUFDO0lBcUJMOztLQUVHO0lBcUJIOztLQUVHO0lBY0g7O0tBRUc7SUEwREg7O0tBRUc7SUFPSDs7S0FFRyxFQTZCSDtJR0RGLEFIOUpFLGdCRzhKYyxDQUNmLHlCQUF5QixDSGhLekIsS0FBSyxDQUNKLEVBQUUsRUdxTUosOEJBQThCLENBUzdCLGlDQUFpQyxDSC9NakMsS0FBSyxDQUNKLEVBQUU7SUEvQ0osc0JBQXNCLENBOENyQixLQUFLLENBQ0osRUFBRSxDQUFDO01BQ0YsT0FBTyxFQUFFLElBQUk7TUFDYixNQUFNLEVBQUUsR0FBRyxDQUFDLEtBQUssQ3ZFVFgsVUFBcUI7TXVFVTNCLFVBQVUsRUFBRSxjQUFjLEdBUzFCO01Ha0pILEFIekpHLGdCR3lKYSxDQUNmLHlCQUF5QixDSGhLekIsS0FBSyxDQUNKLEVBQUUsQUFLQSxhQUFhLEVHZ01qQiw4QkFBOEIsQ0FTN0IsaUNBQWlDLENIL01qQyxLQUFLLENBQ0osRUFBRSxBQUtBLGFBQWE7TUFwRGpCLHNCQUFzQixDQThDckIsS0FBSyxDQUNKLEVBQUUsQUFLQSxhQUFhLENBQUM7UUFDZCxPQUFPLEVBQUUsSUFBSSxHQUNiO01HdUpKLEFIckpHLGdCR3FKYSxDQUNmLHlCQUF5QixDSGhLekIsS0FBSyxDQUNKLEVBQUUsQUFTQSxNQUFNLEVHNExWLDhCQUE4QixDQVM3QixpQ0FBaUMsQ0gvTWpDLEtBQUssQ0FDSixFQUFFLEFBU0EsTUFBTTtNQXhEVixzQkFBc0IsQ0E4Q3JCLEtBQUssQ0FDSixFQUFFLEFBU0EsTUFBTSxDQUFDO1FBQ1AsVUFBVSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ3ZFMUNsQix1QkFBOEIsR3VFMkNsQztJR21KSixBSGhKRSxnQkdnSmMsQ0FDZix5QkFBeUIsQ0hoS3pCLEtBQUssQ0FlSixFQUFFLEVHdUxKLDhCQUE4QixDQVM3QixpQ0FBaUMsQ0gvTWpDLEtBQUssQ0FlSixFQUFFO0lBN0RKLHNCQUFzQixDQThDckIsS0FBSyxDQWVKLEVBQUUsQ0FBQztNQUNGLE9BQU8sRUFBRSxNQUFNO01BQ2YsVUFBVSxFQUFFLEdBQUcsQ0FBQyxLQUFLLEN2RXZCZixVQUFxQjtNdUV3QjNCLGFBQWEsRUFBRSxHQUFHLENBQUMsS0FBSyxDdkV4QmxCLFVBQXFCLEd1RXlCM0I7SUc0SUgsQUh2SUUsZ0JHdUljLENBQ2YseUJBQXlCLENIaEt6QixLQUFLLENBd0JKLGtCQUFrQixFRzhLcEIsOEJBQThCLENBUzdCLGlDQUFpQyxDSC9NakMsS0FBSyxDQXdCSixrQkFBa0I7SUF0RXBCLHNCQUFzQixDQThDckIsS0FBSyxDQXdCSixrQkFBa0IsQ0FBQztNQUtsQixZQUFZLEVBQUUsSUFBSTtNQUNsQixXQUFXLEVBQUUsR0FBRyxDQUFDLEtBQUssQ3ZFcENoQixVQUFxQixHdUVnRDNCO00xRGlERCxNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO1E2RG9FMUMsQUh2SUUsZ0JHdUljLENBQ2YseUJBQXlCLENIaEt6QixLQUFLLENBd0JKLGtCQUFrQixFRzhLcEIsOEJBQThCLENBUzdCLGlDQUFpQyxDSC9NakMsS0FBSyxDQXdCSixrQkFBa0I7UUF0RXBCLHNCQUFzQixDQThDckIsS0FBSyxDQXdCSixrQkFBa0IsQ0FBQztVQUVqQixPQUFPLEVBQUUsSUFBSSxHQWdCZDtNR3FISCxBSC9IRyxnQkcrSGEsQ0FDZix5QkFBeUIsQ0hoS3pCLEtBQUssQ0F3Qkosa0JBQWtCLENBUWpCLENBQUMsRUdzS0osOEJBQThCLENBUzdCLGlDQUFpQyxDSC9NakMsS0FBSyxDQXdCSixrQkFBa0IsQ0FRakIsQ0FBQztNQTlFSixzQkFBc0IsQ0E4Q3JCLEtBQUssQ0F3Qkosa0JBQWtCLENBUWpCLENBQUMsQ0FBQztRQUNELE9BQU8sRUFBRSxLQUFLO1FBQ2QsUUFBUSxFQUFFLFFBQVE7UUFDbEIsS0FBSyxFQUFFLEtBQUs7UUFDWixNQUFNLEVBQUUsS0FBSyxHQUtiO0lHc0hKLEFIaEhFLGdCR2dIYyxDQUNmLHlCQUF5QixDSGhLekIsS0FBSyxDQStDSixhQUFhLEVHdUpmLDhCQUE4QixDQVM3QixpQ0FBaUMsQ0gvTWpDLEtBQUssQ0ErQ0osYUFBYTtJQTdGZixzQkFBc0IsQ0E4Q3JCLEtBQUssQ0ErQ0osYUFBYSxDQUFDO00xRHhDZCxTQUFTLEUwRGdETSxJQUFJO00xRC9DbkIsU0FBUyxFRjVCRixNQUF5QjtNRWlDaEMsV0FBVyxFQUFFLE9BQW1DO00wRDJDL0MsV0FBVyxFQUFFLElBQUk7TUFDakIsS0FBSyxFdkUzRUMsT0FBeUIsR3VFNEUvQjtNMURpQ0QsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztRNkRvRTFDLEFIaEhFLGdCR2dIYyxDQUNmLHlCQUF5QixDSGhLekIsS0FBSyxDQStDSixhQUFhLEVHdUpmLDhCQUE4QixDQVM3QixpQ0FBaUMsQ0gvTWpDLEtBQUssQ0ErQ0osYUFBYTtRQTdGZixzQkFBc0IsQ0E4Q3JCLEtBQUssQ0ErQ0osYUFBYSxDQUFDO1VBRVosWUFBWSxFQUFFLElBQUksR0FTbkI7TTFEeUNELE1BQU0sTUFBTSxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7UTZENEQxQyxBSGhIRSxnQkdnSGMsQ0FDZix5QkFBeUIsQ0hoS3pCLEtBQUssQ0ErQ0osYUFBYSxFR3VKZiw4QkFBOEIsQ0FTN0IsaUNBQWlDLENIL01qQyxLQUFLLENBK0NKLGFBQWE7UUE3RmYsc0JBQXNCLENBOENyQixLQUFLLENBK0NKLGFBQWEsQ0FBQztVQUtaLFlBQVksRUFBRSxJQUFJLEdBTW5CO0kxRHlDRCxNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO002RDREMUMsQUg5RkksZ0JHOEZZLENBQ2YseUJBQXlCLENIaEt6QixLQUFLLENBK0RKLGlCQUFpQixHQUViLEdBQUcsRUdxSVQsOEJBQThCLENBUzdCLGlDQUFpQyxDSC9NakMsS0FBSyxDQStESixpQkFBaUIsR0FFYixHQUFHO01BL0dULHNCQUFzQixDQThDckIsS0FBSyxDQStESixpQkFBaUIsR0FFYixHQUFHLENBQUM7UUFDTCxTQUFTLEVBQUUsSUFBSTtRQUNmLGVBQWUsRUFBRSxNQUFNO1FBQ3ZCLEtBQUssRUFBRSxJQUFJLEdBQ1g7SUcwRkwsQUh2RkcsZ0JHdUZhLENBQ2YseUJBQXlCLENIaEt6QixLQUFLLENBK0RKLGlCQUFpQixDQVNoQixFQUFFLEVHOEhMLDhCQUE4QixDQVM3QixpQ0FBaUMsQ0gvTWpDLEtBQUssQ0ErREosaUJBQWlCLENBU2hCLEVBQUU7SUd1RkwsZ0JBQWdCLENBQ2YseUJBQXlCLENIaEt6QixLQUFLLENBK0RKLGlCQUFpQixDQVVoQixLQUFLO0lHNkhSLDhCQUE4QixDQVM3QixpQ0FBaUMsQ0gvTWpDLEtBQUssQ0ErREosaUJBQWlCLENBVWhCLEtBQUs7SUF2SFIsc0JBQXNCLENBOENyQixLQUFLLENBK0RKLGlCQUFpQixDQVNoQixFQUFFO0lBdEhMLHNCQUFzQixDQThDckIsS0FBSyxDQStESixpQkFBaUIsQ0FVaEIsS0FBSyxDQUFDO01BQ0wsT0FBTyxFQUFFLElBQUksR0FDYjtJR29GSixBSGxGRyxnQkdrRmEsQ0FDZix5QkFBeUIsQ0hoS3pCLEtBQUssQ0ErREosaUJBQWlCLENBY2hCLElBQUksRUd5SFAsOEJBQThCLENBUzdCLGlDQUFpQyxDSC9NakMsS0FBSyxDQStESixpQkFBaUIsQ0FjaEIsSUFBSTtJQTNIUCxzQkFBc0IsQ0E4Q3JCLEtBQUssQ0ErREosaUJBQWlCLENBY2hCLElBQUksQ0FBQztNMUR0RU4sU0FBUyxFMER1RU8sSUFBSTtNMUR0RXBCLFNBQVMsRUY1QkYsTUFBeUI7TUVpQ2hDLFdBQVcsRUFBRSxTQUFtQztNMERrRTlDLE9BQU8sRUFBRSxJQUFJO01BQ2IsV0FBVyxFQUFFLE1BQU07TUFDbkIsZUFBZSxFQUFFLE1BQU07TUFDdkIsS0FBSyxFQUFFLElBQUk7TUFDWCxNQUFNLEVBQUUsSUFBSTtNQUNaLGdCQUFnQixFdkUxR1gsT0FBd0I7TXVFMkc3QixLQUFLLEV2RS9HQSxPQUEyQjtNdUVnSGhDLFdBQVcsRUFBRSxJQUFJO01BQ2pCLE1BQU0sRUFBRSxPQUFPO01BQ2YsYUFBYSxFQUFFLEdBQUc7TUFDbEIsVUFBVSxFQUFFLGNBQWMsR0FNMUI7TUdnRUosQUhwRUksZ0JHb0VZLENBQ2YseUJBQXlCLENIaEt6QixLQUFLLENBK0RKLGlCQUFpQixDQWNoQixJQUFJLEFBY0YsTUFBTSxFRzJHWCw4QkFBOEIsQ0FTN0IsaUNBQWlDLENIL01qQyxLQUFLLENBK0RKLGlCQUFpQixDQWNoQixJQUFJLEFBY0YsTUFBTTtNQXpJWCxzQkFBc0IsQ0E4Q3JCLEtBQUssQ0ErREosaUJBQWlCLENBY2hCLElBQUksQUFjRixNQUFNLENBQUM7UUFDUCxnQkFBZ0IsRXZFdEhaLE9BQTJCO1F1RXVIL0IsS0FBSyxFdkVuSEQsT0FBd0IsR3VFb0g1QjtJR2lFTCxBSDlERyxnQkc4RGEsQ0FDZix5QkFBeUIsQ0hoS3pCLEtBQUssQ0ErREosaUJBQWlCLENBa0NoQixLQUFLLEVHcUdSLDhCQUE4QixDQVM3QixpQ0FBaUMsQ0gvTWpDLEtBQUssQ0ErREosaUJBQWlCLENBa0NoQixLQUFLO0lBL0lSLHNCQUFzQixDQThDckIsS0FBSyxDQStESixpQkFBaUIsQ0FrQ2hCLEtBQUssQ0FBQztNMUQxRlAsU0FBUyxFMEQrRk8sSUFBSTtNMUQ5RnBCLFNBQVMsRUY1QkYsTUFBeUI7TUVpQ2hDLFdBQVcsRUFBRSxHQUFtQztNMEQwRjlDLE9BQU8sRUFBRSxJQUFJO01BQ2IsVUFBVSxFQUFFLE1BQU07TUFDbEIsS0FBSyxFQUFFLElBQUk7TUFDWCxNQUFNLEVBQUUsSUFBSTtNQUNaLE9BQU8sRUFBRSxDQUFDO01BQ1YsVUFBVSxFQUFFLFdBQVc7TUFDdkIsS0FBSyxFdkVqSkEsT0FBMkI7TXVFa0poQyxXQUFXLEVBQUUsSUFBSSxHQU9qQjtNMURsQkYsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztRNkQ0RDFDLEFIOURHLGdCRzhEYSxDQUNmLHlCQUF5QixDSGhLekIsS0FBSyxDQStESixpQkFBaUIsQ0FrQ2hCLEtBQUssRUdxR1IsOEJBQThCLENBUzdCLGlDQUFpQyxDSC9NakMsS0FBSyxDQStESixpQkFBaUIsQ0FrQ2hCLEtBQUs7UUEvSVIsc0JBQXNCLENBOENyQixLQUFLLENBK0RKLGlCQUFpQixDQWtDaEIsS0FBSyxDQUFDO1VBRUosS0FBSyxFQUFFLElBQUksR0FrQlo7TUcwQ0osQUgvQ0ksZ0JHK0NZLENBQ2YseUJBQXlCLENIaEt6QixLQUFLLENBK0RKLGlCQUFpQixDQWtDaEIsS0FBSyxBQWVILDJCQUEyQixFR3NGaEMsOEJBQThCLENBUzdCLGlDQUFpQyxDSC9NakMsS0FBSyxDQStESixpQkFBaUIsQ0FrQ2hCLEtBQUssQUFlSCwyQkFBMkIsRUcrQ2hDLGdCQUFnQixDQUNmLHlCQUF5QixDSGhLekIsS0FBSyxDQStESixpQkFBaUIsQ0FrQ2hCLEtBQUssQUFnQkgsMkJBQTJCLEVHcUZoQyw4QkFBOEIsQ0FTN0IsaUNBQWlDLENIL01qQyxLQUFLLENBK0RKLGlCQUFpQixDQWtDaEIsS0FBSyxBQWdCSCwyQkFBMkI7TUEvSmhDLHNCQUFzQixDQThDckIsS0FBSyxDQStESixpQkFBaUIsQ0FrQ2hCLEtBQUssQUFlSCwyQkFBMkI7TUE5SmhDLHNCQUFzQixDQThDckIsS0FBSyxDQStESixpQkFBaUIsQ0FrQ2hCLEtBQUssQUFnQkgsMkJBQTJCLENBQUM7UUFDNUIsa0JBQWtCLEVBQUUsSUFBSTtRQUN4QixNQUFNLEVBQUUsQ0FBQyxHQUNUO0lHMkNMLEFIcENFLGdCR29DYyxDQUNmLHlCQUF5QixDSGhLekIsS0FBSyxDQTJISixpQkFBaUIsRUcyRW5CLDhCQUE4QixDQVM3QixpQ0FBaUMsQ0gvTWpDLEtBQUssQ0EySEosaUJBQWlCO0lBektuQixzQkFBc0IsQ0E4Q3JCLEtBQUssQ0EySEosaUJBQWlCLENBQUM7TTFEcEhsQixTQUFTLEUwRHFITSxJQUFJO00xRHBIbkIsU0FBUyxFRjVCRixNQUF5QjtNRWlDaEMsV0FBVyxFQUFFLFNBQW1DO00wRGdIL0MsV0FBVyxFQUFFLEdBQUc7TUFDaEIsS0FBSyxFdkV4SkMsT0FBMkIsR3VFeUpqQztJR2dDSCxBSDNCRSxnQkcyQmMsQ0FDZix5QkFBeUIsQ0hoS3pCLEtBQUssQ0FvSUosZUFBZSxFR2tFakIsOEJBQThCLENBUzdCLGlDQUFpQyxDSC9NakMsS0FBSyxDQW9JSixlQUFlO0lBbExqQixzQkFBc0IsQ0E4Q3JCLEtBQUssQ0FvSUosZUFBZSxDQUFDO01BS2YsYUFBYSxFQUFFLElBQUk7TUFDbkIsWUFBWSxFQUFFLEdBQUcsQ0FBQyxLQUFLLEN2RWhKakIsVUFBcUIsR3VFb0szQjtNMUQzREQsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztRNkQ0RDFDLEFIM0JFLGdCRzJCYyxDQUNmLHlCQUF5QixDSGhLekIsS0FBSyxDQW9JSixlQUFlLEVHa0VqQiw4QkFBOEIsQ0FTN0IsaUNBQWlDLENIL01qQyxLQUFLLENBb0lKLGVBQWU7UUFsTGpCLHNCQUFzQixDQThDckIsS0FBSyxDQW9JSixlQUFlLENBQUM7VUFFZCxhQUFhLEVBQUUsSUFBSSxHQXdCcEI7TUdDSCxBSG5CRyxnQkdtQmEsQ0FDZix5QkFBeUIsQ0hoS3pCLEtBQUssQ0FvSUosZUFBZSxDQVFkLENBQUMsRUcwREosOEJBQThCLENBUzdCLGlDQUFpQyxDSC9NakMsS0FBSyxDQW9JSixlQUFlLENBUWQsQ0FBQztNQTFMSixzQkFBc0IsQ0E4Q3JCLEtBQUssQ0FvSUosZUFBZSxDQVFkLENBQUMsQ0FBQztRQUNELE9BQU8sRUFBRSxLQUFLO1FBQ2QsTUFBTSxFQUFFLElBQUksR0FPWjtRR1VKLEFIZEssZ0JHY1csQ0FDZix5QkFBeUIsQ0hoS3pCLEtBQUssQ0FvSUosZUFBZSxDQVFkLENBQUMsQUFJQyxNQUFNLENBQ04sR0FBRyxFR3FEUiw4QkFBOEIsQ0FTN0IsaUNBQWlDLENIL01qQyxLQUFLLENBb0lKLGVBQWUsQ0FRZCxDQUFDLEFBSUMsTUFBTSxDQUNOLEdBQUc7UUEvTFIsc0JBQXNCLENBOENyQixLQUFLLENBb0lKLGVBQWUsQ0FRZCxDQUFDLEFBSUMsTUFBTSxDQUNOLEdBQUcsQ0FBQztVQUNILE9BQU8sRUFBRSxDQUFDLEdBQ1Y7TUdZTixBSFJHLGdCR1FhLENBQ2YseUJBQXlCLENIaEt6QixLQUFLLENBb0lKLGVBQWUsQ0FtQmQsR0FBRyxFRytDTiw4QkFBOEIsQ0FTN0IsaUNBQWlDLENIL01qQyxLQUFLLENBb0lKLGVBQWUsQ0FtQmQsR0FBRztNQXJNTixzQkFBc0IsQ0E4Q3JCLEtBQUssQ0FvSUosZUFBZSxDQW1CZCxHQUFHLENBQUM7UUFDSCxLQUFLLEVBQUUsSUFBSTtRQUNYLE1BQU0sRUFBRSxJQUFJO1FBQ1osS0FBSyxFdkU5TEEsT0FBMkI7UXVFK0xoQyxPQUFPLEVBQUUsR0FBRztRQUNaLFVBQVUsRUFBRSxjQUFjLEdBQzFCOztBQzVNSixBQUFBLGdDQUFnQyxDQUFDO0VBQ2hDLE1BQU0sRUFBRSxNQUFNLEdBWWQ7RUFiRCxBQUdDLGdDQUgrQixBQUc5QixPQUFPLENBQUM7SUFDUixRQUFRLEVBQUUsUUFBUTtJQUNsQixLQUFLLEVBQUUsS0FBSztJQUNaLE1BQU0sRUFBRSxNQUFNO0lBQ2QsR0FBRyxFQUFFLEdBQUc7SUFDUixJQUFJLEVBQUUsR0FBRztJQUNULFVBQVUsRUFBRSxvQ0FBc0M7SUFDbEQsT0FBTyxFQUFFLEVBQUU7SUFDWCxPQUFPLEVBQUUsRUFBRSxHQUNYOztBQUlGOztHQUVHO0FBRUgsQUFBQSw4QkFBOEIsQ0FBQztFQUs5QixPQUFPLEVBQUUsSUFBSTtFQUNiLFNBQVMsRUFBRSxJQUFJO0VBQ2YsZUFBZSxFQUFFLE1BQU07RUFDdkIsS0FBSyxFQUFFLElBQUk7RUFDWCxVQUFVLEVBQUUsSUFBSTtFQUNoQixPQUFPLEVBQUUsSUFBSTtFQUNiLFVBQVUsRXhFVUYsVUFBcUIsR3dFOEM3QjtFM0RtREMsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztJMkR0SDFDLEFBQUEsOEJBQThCLENBQUM7TUFFN0IsZUFBZSxFQUFFLFVBQVUsR0FpRTVCO0VBbkVELEFBYUMsOEJBYjZCLENBYTdCLGlCQUFpQixDQUFDO0lBT2pCLE9BQU8sRUFBRSxJQUFJO0lBQ2IsU0FBUyxFQUFFLElBQUk7SUFDZixXQUFXLEVBQUUsTUFBTSxHQVluQjtJM0RvRkEsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztNMkR0SDFDLEFBYUMsOEJBYjZCLENBYTdCLGlCQUFpQixDQUFDO1FBRWhCLE9BQU8sRUFBRSxLQUFLLEdBbUJmO0lBbENGLEFBd0JFLDhCQXhCNEIsQ0FhN0IsaUJBQWlCLEdBV2QsQ0FBQyxDQUFDO01BUUgsV0FBVyxFQUFFLElBQUksR0FDakI7TTNEcUZELE1BQU0sTUFBTSxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7UTJEdEgxQyxBQXdCRSw4QkF4QjRCLENBYTdCLGlCQUFpQixHQVdkLENBQUMsQ0FBQztVQUVGLE9BQU8sRUFBRSxLQUFLO1VBQ2QsTUFBTSxFQUFFLFVBQVUsR0FNbkI7RUFqQ0gsQUFvQ0MsOEJBcEM2QixHQW9DM0IsdUJBQXVCLENBQUM7SUFDekIsT0FBTyxFQUFFLElBQUk7SUFDYixRQUFRLEVBQUUsUUFBUTtJQUNsQixTQUFTLEVBQUUsSUFBSTtJQUNmLEtBQUssRUFBRSxJQUFJO0lBQ1gsU0FBUyxFQUFFLEtBQUs7SUFDaEIsTUFBTSxFQUFFLE1BQU07SUFDZCxPQUFPLEVBQUUsSUFBSSxHQXVCYjtJQWxFRixBQTZDRSw4QkE3QzRCLEdBb0MzQix1QkFBdUIsQ0FTeEIsQ0FBQyxDQUFDO01BQ0QsS0FBSyxFQUFFLElBQUk7TUFDWCxTQUFTLEVBQUUsSUFBSTtNQUNmLGFBQWEsRUFBRSxJQUFJLEdBQ25CO0lBakRILEFBbURFLDhCQW5ENEIsR0FvQzNCLHVCQUF1QixDQWV4QixjQUFjLENBQUM7TUFDZCxRQUFRLEVBQUUsUUFBUTtNQUNsQixNQUFNLEVBQUUsSUFBSTtNQUNaLElBQUksRUFBRSxLQUFLO01BQ1gsS0FBSyxFeEV0REMsT0FBMkI7TXdFdURqQyxlQUFlLEVBQUUsU0FBUyxHQUMxQjtJQXpESCxBQTJERSw4QkEzRDRCLEdBb0MzQix1QkFBdUIsQ0F1QnhCLEtBQUssQ0FBQztNQUNMLEtBQUssRUFBRSxJQUFJLEdBQ1g7SUE3REgsQUErREUsOEJBL0Q0QixHQW9DM0IsdUJBQXVCLENBMkJ4QiwrQkFBK0IsQ0FBQztNQUMvQixVQUFVLEVBQUUsQ0FBQyxHQUNiOztBQUlIOztHQUVHO0FBQ0gsQUFBQSxxQkFBcUIsQ0FBQztFQUNyQixLQUFLLEVBQUUsSUFBSTtFQUNYLFVBQVUsRUFBRSxJQUFJLEdBa0ZoQjtFQXBGRCxBQUlDLHFCQUpvQixDQUlwQixJQUFJLENBQUEsQUFBQSxLQUFDLEFBQUEsRUFBTztJQUNYLGVBQWUsRUFBRSxJQUFJLEdBQ3JCO0VBTkYsQUFRQyxxQkFSb0IsQ0FRcEIsRUFBRSxDQUFDO0lBQ0YsT0FBTyxFQUFFLElBQUksR0FDYjtFQVZGLEFBWUMscUJBWm9CLENBWXBCLDBDQUEwQztFQVozQyxxQkFBcUIsQ0FhcEIsMkNBQTJDLENBQUM7SUFLM0MsT0FBTyxFQUFFLElBQUk7SUFDYixTQUFTLEVBQUUsSUFBSTtJQUNmLE1BQU0sRUFBRSxPQUFPLEdBQ2Y7STNEaUNBLE1BQU0sTUFBTSxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7TTJEdEQxQyxBQVlDLHFCQVpvQixDQVlwQiwwQ0FBMEM7TUFaM0MscUJBQXFCLENBYXBCLDJDQUEyQyxDQUFDO1FBRTFDLE1BQU0sRUFBRSxDQUFDLEdBTVY7RUFyQkYsQUF1QkMscUJBdkJvQixDQXVCcEIsU0FBUyxDQUFDO0lBU1QsS0FBSyxFQUFFLGdCQUFnQjtJQUN2QixNQUFNLEVBQUUsZ0JBQWdCLEdBQ3hCO0kzRFlBLE1BQU0sTUFBTSxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7TTJEOUMxQyxBQXVCQyxxQkF2Qm9CLENBdUJwQixTQUFTLENBQUM7UUFFUixLQUFLLEVBQUUsSUFBSTtRQUNYLE1BQU0sRUFBRSxVQUFVLEdBUW5CO0kzRG9CQSxNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO00yRHREMUMsQUF1QkMscUJBdkJvQixDQXVCcEIsU0FBUyxDQUFDO1FBTVIsTUFBTSxFQUFFLFVBQVUsR0FLbkI7RUFsQ0YsQUFvQ0MscUJBcENvQixDQW9DcEIsb0JBQW9CO0VBcENyQixxQkFBcUIsQ0FxQ3BCLG9CQUFvQixDQUFDO0lBS3BCLFVBQVUsRUFBRSxJQUFJLEdBQ2hCO0kzRFdBLE1BQU0sTUFBTSxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7TTJEdEQxQyxBQW9DQyxxQkFwQ29CLENBb0NwQixvQkFBb0I7TUFwQ3JCLHFCQUFxQixDQXFDcEIsb0JBQW9CLENBQUM7UUFFbkIsVUFBVSxFQUFFLElBQUksR0FJakI7RUEzQ0YsQUE2Q0MscUJBN0NvQixDQTZDcEIsd0JBQXdCO0VBN0N6QixxQkFBcUIsQ0E4Q3BCLHlCQUF5QixDQUFDO0lBS3pCLFVBQVUsRUFBRSxJQUFJO0lBQ2hCLFlBQVksRUFBRSxHQUFHLEdBQ2pCO0kzRENBLE1BQU0sTUFBTSxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7TTJEdEQxQyxBQTZDQyxxQkE3Q29CLENBNkNwQix3QkFBd0I7TUE3Q3pCLHFCQUFxQixDQThDcEIseUJBQXlCLENBQUM7UUFFeEIsYUFBYSxFQUFFLElBQUksR0FLcEI7RUFyREYsQUF1REMscUJBdkRvQixDQXVEcEIsMEJBQTBCLENBQUM7STNEN0YxQixTQUFTLEUyRDhGSyxJQUFJO0kzRDdGbEIsU0FBUyxFRjVCRixNQUF5QjtJRWlDaEMsV0FBVyxFQUFFLEdBQW1DO0kyRHlGaEQsT0FBTyxFQUFFLEtBQUs7SUFDZCxVQUFVLEVBQUUsSUFBSTtJQUNoQixXQUFXLEVBQUUsR0FBRztJQUNoQixjQUFjLEVBQUUsTUFBTSxHQVd0QjtJQXZFRixBQThERSxxQkE5RG1CLENBdURwQiwwQkFBMEIsQ0FPekIsS0FBSyxDQUFDO01BQ0wsV0FBVyxFQUFFLEdBQUcsR0FDaEI7SUFoRUgsQUFrRUUscUJBbEVtQixDQXVEcEIsMEJBQTBCLENBV3pCLEtBQUssQ0FBQztNQUNMLFFBQVEsRUFBRSxRQUFRO01BQ2xCLEdBQUcsRUFBRSxHQUFHO01BQ1IsWUFBWSxFQUFFLElBQUksR0FDbEI7RUF0RUgsQUF5RUMscUJBekVvQixDQXlFcEIsOEJBQThCLENBQUM7SUFDOUIsT0FBTyxFQUFFLElBQUksR0FDYjtFQTNFRixBQTZFQyxxQkE3RW9CLENBNkVwQiw0QkFBNEIsQ0FBQztJQUs1QixhQUFhLEVBQUUsS0FBSyxHQUNwQjtJM0RyQ0EsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztNMkQ5QzFDLEFBNkVDLHFCQTdFb0IsQ0E2RXBCLDRCQUE0QixDQUFDO1FBRTNCLGFBQWEsRUFBRSxLQUFLLEdBSXJCOztBQUdGOztHQUVHO0FBQ0gsQUFBQSwrQ0FBK0MsQ0FBQztFQUMvQyxPQUFPLEVBQUUsS0FBSyxDQUFBLFVBQVU7RUFDeEIsYUFBYSxFQUFFLElBQUksR0FDbkI7O0FBRUQsQUFBQSxxQkFBcUIsQ0FBQywyQkFBMkIsQ0FBQztFQUtqRCxhQUFhLEVBQUUsS0FBSyxHQXlCcEI7RTNEOUVDLE1BQU0sTUFBTSxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7STJEZ0QxQyxBQUFBLHFCQUFxQixDQUFDLDJCQUEyQixDQUFDO01BRWhELGFBQWEsRUFBRSxLQUFLLEdBNEJyQjtFQTlCRCxBQU9DLHFCQVBvQixDQUFDLDJCQUEyQixDQU9oRCxFQUFFLENBQUM7SUFDRixPQUFPLEVBQUUsS0FBSztJQUNkLGFBQWEsRUFBRSxJQUFJLEdBQ25CO0VBVkYsQUFZQyxxQkFab0IsQ0FBQywyQkFBMkIsQ0FZaEQsZUFBZSxDQUFDO0lBQ2YsS0FBSyxFQUFFLElBQUk7SUFDWCxXQUFXLEVBQUUsQ0FBQyxHQVdkO0lBekJGLEFBZ0JFLHFCQWhCbUIsQ0FBQywyQkFBMkIsQ0FZaEQsZUFBZSxDQUlkLHFDQUFxQyxDQUFDO01BQ3JDLFdBQVcsRUFBRSxHQUFHLEdBQ2hCO0lBbEJILEFBb0JFLHFCQXBCbUIsQ0FBQywyQkFBMkIsQ0FZaEQsZUFBZSxDQVFkLEtBQUssQ0FBQztNQUNMLFFBQVEsRUFBRSxRQUFRO01BQ2xCLEdBQUcsRUFBRSxHQUFHO01BQ1IsWUFBWSxFQUFFLElBQUksR0FDbEI7RUF4QkgsQUEyQkMscUJBM0JvQixDQUFDLDJCQUEyQixDQTJCaEQsdUJBQXVCLENBQUM7SUFDdkIsV0FBVyxFQUFFLENBQUMsR0FDZDs7QUFHRixBQUFBLGlDQUFpQyxDQUFDO0VBQ2pDLGFBQWEsRUFBRSxJQUFJLEdBQ25COztBQUVEOztHQUVHO0FBRUgsQUFBQSx3Q0FBd0MsQ0FBQztFQUN4QyxLQUFLLEVBQUUsSUFBSTtFQUNYLGVBQWUsRUFBRSxRQUFRO0VBQ3pCLGNBQWMsRUFBRSxNQUFNO0VBQ3RCLE1BQU0sRUFBRSxXQUFXLEdBK0huQjtFQW5JRCxBQU1DLHdDQU51QyxDQU12QyxLQUFLLENBQUMsRUFBRSxBQUFBLGFBQWEsQ0FBQztJQUNyQixPQUFPLEVBQUUsU0FBUyxHQUNsQjtFQVJGLEFBVUMsd0NBVnVDLENBVXZDLEtBQUssQ0FBQyxFQUFFLENBQUM7SUFDUixnQkFBZ0IsRXhFdk9ULEtBQW9CLEd3RXdPM0I7RUFaRixBQWNDLHdDQWR1QyxDQWN2QyxrQkFBa0IsQ0FBQztJQUNsQixLQUFLLEVBQUUsS0FBSyxHQUNaO0VBaEJGLEFBbUJFLHdDQW5Cc0MsQ0FrQnZDLGlCQUFpQixHQUNkLE1BQU0sQ0FBQztJM0QvTFQsU0FBUyxFMkRnTU0sSUFBSTtJM0QvTG5CLFNBQVMsRUY1QkYsTUFBeUI7SUVpQ2hDLFdBQVcsRUFBRSxTQUFtQztJMkQyTC9DLFdBQVcsRUFBRSxHQUFHO0lBQ2hCLGNBQWMsRUFBRSxNQUFNO0lBQ3RCLEtBQUssRXhFOU9DLE9BQTJCLEd3RStPakM7RUF4QkgsQUEyQkMsd0NBM0J1QyxDQTJCdkMsaUJBQWlCLENBQUM7SUFDakIsWUFBWSxFQUFFLEdBQUcsQ0FBQyxLQUFLLEN4RXJOaEIsVUFBcUIsR3dFc041QjtFQTdCRixBQStCQyx3Q0EvQnVDLENBK0J2QyxLQUFLLENBQUM7SUFLTCxRQUFRLEVBQUUsUUFBUTtJQUNsQixPQUFPLEVBQUUsS0FBSztJQUNkLEtBQUssRUFBRSxJQUFJO0lBQ1gsU0FBUyxFQUFFLEtBQUs7SUFDaEIsY0FBYyxFQUFFLENBQUM7SUFDakIsZ0JBQWdCLEV4RWxQVCxPQUF3QjtJd0VtUC9CLE1BQU0sRUFBRSxVQUFVO0lBQ2xCLE9BQU8sRUFBRSxTQUFTLEdBdUZsQjtJM0RsTkEsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztNMkRnRjFDLEFBK0JDLHdDQS9CdUMsQ0ErQnZDLEtBQUssQ0FBQztRQUVKLE9BQU8sRUFBRSxJQUFJLEdBaUdkO0lBbElGLEFBNkNFLHdDQTdDc0MsQ0ErQnZDLEtBQUssQ0FjSixFQUFFLENBQUM7TTNEek5ILFNBQVMsRTJEOE5NLElBQUk7TTNEN05uQixTQUFTLEVGNUJGLE1BQXlCO01FaUNoQyxXQUFXLEVBQUUsT0FBbUM7TTJEeU4vQyxVQUFVLEVBQUUsSUFBSTtNQUNoQixjQUFjLEVBQUUsR0FBRztNQUNuQixLQUFLLEVBQUUsS0FBSztNQUNaLEtBQUssRXhFM1BDLE9BQXlCO013RTRQL0IsY0FBYyxFQUFFLElBQUksR0FDcEI7TTNEeElELE1BQU0sTUFBTSxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7UTJEZ0YxQyxBQTZDRSx3Q0E3Q3NDLENBK0J2QyxLQUFLLENBY0osRUFBRSxDQUFDO1VBRUQsS0FBSyxFQUFFLEtBQUssR0FTYjtJQXhESCxBQTBERSx3Q0ExRHNDLENBK0J2QyxLQUFLLENBMkJKLEVBQUUsQ0FBQztNM0R0T0gsU0FBUyxFMkQyT00sSUFBSTtNM0QxT25CLFNBQVMsRUY1QkYsTUFBeUI7TUVpQ2hDLFdBQVcsRUFBRSxPQUFtQztNMkRzTy9DLEtBQUssRUFBRSxJQUFJO01BQ1gsVUFBVSxFQUFFLEtBQUs7TUFDakIsS0FBSyxFeEUvUUMsT0FBMkI7TXdFZ1JqQyxjQUFjLEVBQUUsSUFBSSxHQUNwQjtNM0RwSkQsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztRMkRnRjFDLEFBMERFLHdDQTFEc0MsQ0ErQnZDLEtBQUssQ0EyQkosRUFBRSxDQUFDO1VBRUQsS0FBSyxFQUFFLEtBQUssR0FRYjtJQXBFSCxBQXNFRSx3Q0F0RXNDLENBK0J2QyxLQUFLLENBdUNKLGFBQWEsQ0FBQztNQUNiLE9BQU8sRUFBRSxJQUFJLEdBQ2I7SUF4RUgsQUEwRUUsd0NBMUVzQyxDQStCdkMsS0FBSyxDQTJDSixLQUFLLENBQUM7TTNEdFBOLFNBQVMsRTJEdVBNLElBQUk7TTNEdFBuQixTQUFTLEVGNUJGLE1BQXlCO01FaUNoQyxXQUFXLEVBQUUsT0FBbUM7TTJEa1AvQyxLQUFLLEV4RXpSQyxPQUEyQjtNd0UwUmpDLFdBQVcsRUFBRSxHQUFHLEdBQ2hCO0lBOUVILEFBaUZHLHdDQWpGcUMsQ0ErQnZDLEtBQUssQ0FpREosNEJBQTRCLENBQzNCLEVBQUU7SUFqRkwsd0NBQXdDLENBK0J2QyxLQUFLLENBaURKLDRCQUE0QixDQUUzQixFQUFFLENBQUM7TUFDRixjQUFjLEVBQUUsQ0FBQyxHQUNqQjtJQXBGSixBQXNGRyx3Q0F0RnFDLENBK0J2QyxLQUFLLENBaURKLDRCQUE0QixDQU0zQixLQUFLLENBQUM7TUFDTCxTQUFTLEVBQUUsQ0FBQyxHQUtaO01BNUZKLEFBeUZJLHdDQXpGb0MsQ0ErQnZDLEtBQUssQ0FpREosNEJBQTRCLENBTTNCLEtBQUssQ0FHSixPQUFPLENBQUM7UTNEclFWLFNBQVMsRTJEc1FRLElBQUk7UTNEclFyQixTQUFTLEVGNUJGLE1BQXlCO1FFaUNoQyxXQUFXLEVBQUUsT0FBbUMsRzJEaVE3QztJQTNGTCxBQWdHRyx3Q0FoR3FDLENBK0J2QyxLQUFLLENBZ0VKLHNCQUFzQixDQUNyQixFQUFFLENBQUM7TUFDRixXQUFXLEVBQUUsSUFBSSxHQUNqQjtJQWxHSixBQW9HRyx3Q0FwR3FDLENBK0J2QyxLQUFLLENBZ0VKLHNCQUFzQixDQUtyQixDQUFDO0lBcEdKLHdDQUF3QyxDQStCdkMsS0FBSyxDQWdFSixzQkFBc0IsQ0FNckIsRUFBRSxDQUFDO00zRGpSSixTQUFTLEUyRGtSTyxJQUFJO00zRGpScEIsU0FBUyxFRjVCRixNQUF5QjtNRWlDaEMsV0FBVyxFQUFFLFNBQW1DO00yRDZROUMsV0FBVyxFQUFFLEdBQUc7TUFDaEIsVUFBVSxFQUFFLE1BQU0sR0FDbEI7SUF6R0osQUEyR0csd0NBM0dxQyxDQStCdkMsS0FBSyxDQWdFSixzQkFBc0IsQ0FZckIsQ0FBQyxDQUFDO01BQ0QsY0FBYyxFQUFFLElBQUksR0FLcEI7TUFqSEosQUE4R0ksd0NBOUdvQyxDQStCdkMsS0FBSyxDQWdFSixzQkFBc0IsQ0FZckIsQ0FBQyxBQUdDLGFBQWEsQ0FBQztRQUNkLE9BQU8sRUFBRSxDQUFDLEdBQ1Y7SUFoSEwsQUFvSEUsd0NBcEhzQyxDQStCdkMsS0FBSyxDQXFGSixZQUFZLENBQUM7TUFDWixVQUFVLEVBQUUsR0FBRyxDQUFDLEtBQUssQ3hFalZmLEtBQW9CLEd3RTZWMUI7TUFqSUgsQUF1SEcsd0NBdkhxQyxDQStCdkMsS0FBSyxDQXFGSixZQUFZLENBR1gsRUFBRSxDQUFDO1FBQ0YsV0FBVyxFQUFFLElBQUk7UUFDakIsY0FBYyxFQUFFLENBQUMsR0FDakI7TUExSEosQUE0SEcsd0NBNUhxQyxDQStCdkMsS0FBSyxDQXFGSixZQUFZLENBUVgsRUFBRSxDQUFDO1EzRHhTSixTQUFTLEUyRHlTTyxJQUFJO1EzRHhTcEIsU0FBUyxFRjVCRixJQUF5QjtRRWlDaEMsV0FBVyxFQUFFLEdBQW1DO1EyRG9TOUMsV0FBVyxFQUFFLElBQUk7UUFDakIsY0FBYyxFQUFFLENBQUMsR0FDakI7O0FBTUo7O0dBRUc7QUFFSCxBQUNDLDZCQUQ0QixDQUM1QixFQUFFLENBQUM7RUFDRixPQUFPLEVBQUUsS0FBSztFQUNkLGFBQWEsRUFBRSxJQUFJLEdBQ25COztBQUpGLEFBTUMsNkJBTjRCLENBTTVCLGdCQUFnQixDQUFDO0VBQ2hCLE9BQU8sRUFBRSxJQUFJO0VBQ2IsU0FBUyxFQUFFLElBQUk7RUFDZixhQUFhLEVBQUUsS0FBSyxHQUNwQjs7QUFWRixBQVlDLDZCQVo0QixDQVk1QixrQkFBa0IsQ0FBQztFQUNsQixLQUFLLEVBQUUsS0FBSztFQUNaLFVBQVUsRUFBRSxLQUFLO0VBQ2pCLFlBQVksRUFBRSxJQUFJO0VBQ2xCLE9BQU8sRUFBRSxJQUFJO0VBQ2IsTUFBTSxFQUFFLEdBQUcsQ0FBQyxLQUFLLEN4RXBWVixVQUFxQjtFd0VxVjVCLGdCQUFnQixFeEV4WFQsS0FBb0IsR3dFNGIzQjtFQXRGRixBQW9CRSw2QkFwQjJCLENBWTVCLGtCQUFrQixBQVFoQixNQUFNLENBQUM7SUFDUCxVQUFVLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDeEVqWGpCLHVCQUE4QixHd0VrWG5DO0VBdEJILEFBd0JFLDZCQXhCMkIsQ0FZNUIsa0JBQWtCLENBWWpCLEtBQUssQ0FBQztJQUNMLE9BQU8sRUFBRSxJQUFJO0lBQ2IsV0FBVyxFQUFFLE1BQU07SUFDbkIsZUFBZSxFQUFFLE1BQU07SUFDdkIsS0FBSyxFQUFFLElBQUk7SUFDWCxNQUFNLEVBQUUsS0FBSztJQUNiLFVBQVUsRXhFalhKLE9BQXdCLEd3RXdYOUI7SUFyQ0gsQUFnQ0csNkJBaEMwQixDQVk1QixrQkFBa0IsQ0FZakIsS0FBSyxDQVFKLEdBQUcsQ0FBQztNQUNILEtBQUssRUFBRSxJQUFJO01BQ1gsTUFBTSxFQUFFLElBQUk7TUFDWixLQUFLLEV4RXBZQSxPQUEyQixHd0VxWWhDO0VBcENKLEFBdUNFLDZCQXZDMkIsQ0FZNUIsa0JBQWtCLENBMkJqQixNQUFNLENBQUM7STNEN1ZQLFNBQVMsRTJEOFZNLElBQUk7STNEN1ZuQixTQUFTLEVGNUJGLE1BQXlCO0lFaUNoQyxXQUFXLEVBQUUsT0FBbUM7STJEeVYvQyxLQUFLLEVBQUUsSUFBSTtJQUNYLFVBQVUsRUFBRSxNQUFNO0lBQ2xCLE9BQU8sRUFBRSxhQUFhO0lBQ3RCLFdBQVcsRUFBRSxJQUFJO0lBQ2pCLEtBQUssRXhFdlhDLE9BQXFCLEd3RXdYM0I7RUE5Q0gsQUFnREUsNkJBaEQyQixDQVk1QixrQkFBa0IsQ0FvQ2pCLEVBQUUsQ0FBQztJQUNGLE9BQU8sRUFBRSxJQUFJLEdBQ2I7RUFsREgsQUFvREUsNkJBcEQyQixDQVk1QixrQkFBa0IsQ0F3Q2pCLHFCQUFxQixDQUFDO0lBQ3JCLFFBQVEsRUFBRSxRQUFRO0lBQ2xCLEtBQUssRUFBRSxJQUFJO0lBQ1gsTUFBTSxFQUFFLElBQUk7SUFDWixRQUFRLEVBQUUsTUFBTTtJQUNoQixNQUFNLEVBQUUsR0FBRyxDQUFDLEtBQUssQ3hFaFpYLE9BQTJCO0l3RWlaakMsV0FBVyxFQUFFLE9BQU87SUFDcEIsYUFBYSxFQUFFLEdBQUcsR0EwQmxCO0lBckZILEFBNkRHLDZCQTdEMEIsQ0FZNUIsa0JBQWtCLENBd0NqQixxQkFBcUIsQ0FTcEIsQ0FBQyxDQUFDO01BQ0QsTUFBTSxFQUFFLElBQUksR0FDWjtJQS9ESixBQWlFRyw2QkFqRTBCLENBWTVCLGtCQUFrQixDQXdDakIscUJBQXFCLENBYXBCLE1BQU0sQ0FBQztNQUNOLFFBQVEsRUFBRSxRQUFRO01BQ2xCLEdBQUcsRUFBRSxJQUFJO01BQ1QsSUFBSSxFQUFFLElBQUk7TUFDVixLQUFLLEVBQUUsaUJBQWlCO01BQ3hCLFNBQVMsRUFBRSxpQkFBaUI7TUFDNUIsTUFBTSxFQUFFLENBQUM7TUFDVCxnQkFBZ0IsRUFBRSxXQUFXO01BQzdCLE9BQU8sRUFBRSxDQUFDLEdBQ1Y7SUExRUosQUE0RUcsNkJBNUUwQixDQVk1QixrQkFBa0IsQ0F3Q2pCLHFCQUFxQixDQXdCcEIsR0FBRyxDQUFDO01BQ0gsUUFBUSxFQUFFLFFBQVE7TUFDbEIsR0FBRyxFQUFFLElBQUk7TUFDVCxLQUFLLEVBQUUsSUFBSTtNQUNYLEtBQUssRUFBRSxJQUFJO01BQ1gsTUFBTSxFQUFFLElBQUk7TUFDWixLQUFLLEV4RXphQSxPQUEyQjtNd0UwYWhDLE9BQU8sRUFBRSxDQUFDLEdBQ1Y7O0FBcEZKLEFBd0ZDLDZCQXhGNEIsQ0F3RjVCLE9BQU8sQ0FBQztFQUdQLEtBQUssRUFBRSxJQUFJO0VBQ1gsU0FBUyxFQUFFLEtBQUs7RUFDaEIsZUFBZSxFQUFFLE1BQU07RUFDdkIsVUFBVSxFQUFFLElBQUksR0FVaEI7RUF4R0YsQUFnR0UsNkJBaEcyQixDQXdGNUIsT0FBTyxDQVFOLEdBQUcsQ0FBQztJQUNILFFBQVEsRUFBRSxRQUFRO0lBQ2xCLEdBQUcsRUFBRSxHQUFHO0lBQ1IsS0FBSyxFQUFFLElBQUk7SUFDWCxNQUFNLEVBQUUsSUFBSTtJQUNaLFlBQVksRUFBRSxJQUFJO0lBQ2xCLEtBQUssRXhFNWNDLEtBQW9CLEd3RTZjMUI7O0FBdkdILEFBMEdDLDZCQTFHNEIsQ0EwRzVCLFNBQVMsQ0FBQztFQUNULEtBQUssRUFBRSxJQUFJO0VBQ1gsTUFBTSxFQUFFLENBQUMsR0FtQlQ7RUEvSEYsQUE4R0UsNkJBOUcyQixDQTBHNUIsU0FBUyxDQUlSLHFDQUFxQyxDQUFDO0lBQ3JDLFdBQVcsRUFBRSxHQUFHLEdBZWhCO0lBOUhILEFBaUhHLDZCQWpIMEIsQ0EwRzVCLFNBQVMsQ0FJUixxQ0FBcUMsQ0FHcEMsS0FBSyxDQUFDO01BQ0wsUUFBUSxFQUFFLFFBQVE7TUFDbEIsR0FBRyxFQUFFLEdBQUc7TUFDUixZQUFZLEVBQUUsSUFBSSxHQUNsQjtJQXJISixBQXVIRyw2QkF2SDBCLENBMEc1QixTQUFTLENBSVIscUNBQXFDLENBU3BDLENBQUMsQ0FBQztNQUNELGVBQWUsRUFBRSxTQUFTLEdBSzFCO01BN0hKLEFBMEhJLDZCQTFIeUIsQ0EwRzVCLFNBQVMsQ0FJUixxQ0FBcUMsQ0FTcEMsQ0FBQyxBQUdDLE1BQU0sQ0FBQztRQUNQLEtBQUssRXhFbGRELE9BQTJCLEd3RW1kL0I7O0FBTUwsQUFBQSxxQ0FBcUMsQ0FBQztFQUNyQyxPQUFPLEVBQUUsSUFBSTtFQUNiLFVBQVUsRUFBRSxJQUFJLEdBc0JoQjtFQXhCRCxBQUlDLHFDQUpvQyxDQUlwQyxDQUFDLENBQUM7STNENWJELFNBQVMsRTJENmJLLElBQUk7STNENWJsQixTQUFTLEVGNUJGLE1BQXlCO0lFaUNoQyxXQUFXLEVBQUUsU0FBbUM7STJEd2JoRCxPQUFPLEVBQUUsSUFBSTtJQUNiLFFBQVEsRUFBRSxRQUFRO0lBQ2xCLEdBQUcsRUFBRSxHQUFHO0lBQ1IsV0FBVyxFQUFFLE1BQU07SUFDbkIsZUFBZSxFQUFFLE1BQU07SUFDdkIsS0FBSyxFQUFFLElBQUk7SUFDWCxNQUFNLEVBQUUsSUFBSTtJQUNaLFVBQVUsRUFBRSxNQUFNO0lBQ2xCLFlBQVksRUFBRSxJQUFJO0lBQ2xCLGdCQUFnQixFeEV6ZFQsT0FBcUI7SXdFMGQ1QixhQUFhLEVBQUUsR0FBRztJQUNsQixLQUFLLEV4RXpmRSxLQUFvQixHd0UwZjNCO0VBbEJGLEFBb0JDLHFDQXBCb0MsQ0FvQnBDLElBQUksQ0FBQztJQUNKLEtBQUssRUFBRSxpQkFBaUI7SUFDeEIsV0FBVyxFQUFFLEdBQUcsR0FDaEI7O0FBR0Y7O0dBRUc7QUFFSCxBQUFBLGtCQUFrQixDQUFDO0VBQ2xCLFVBQVUsRUFBRSxJQUFJLEdBQ2hCOztBQUVELEFBQUEsMEJBQTBCO0FBQzFCLDZCQUE2QixDQUFDO0VBQzdCLE9BQU8sRUFBRSxJQUFJLEdBQ2I7O0FDbmhCRCxBQUFBLHVCQUF1QixDQUFDO0VBQ3ZCLEtBQUssRUFBRSxJQUFJO0VBQ1gsVUFBVSxFQUFFLElBQUksR0FrQmhCO0VBcEJELEFBSUMsdUJBSnNCLENBSXRCLEVBQUUsQ0FBQztJQUNGLE9BQU8sRUFBRSxJQUFJLEdBQ2I7RUFORixBQVFDLHVCQVJzQixDQVF0QixLQUFLLENBQUM7SUFDTCxhQUFhLEVBQUUsR0FBRyxHQUNsQjtFQVZGLEFBWUMsdUJBWnNCLENBWXRCLFNBQVMsQ0FBQztJQUNULE9BQU8sRUFBRSxXQUFXO0lBQ3BCLGFBQWEsRUFBRSxJQUFJLEdBS25CO0lBbkJGLEFBZ0JFLHVCQWhCcUIsQ0FZdEIsU0FBUyxBQUlQLGNBQWMsQ0FBQztNQUNmLE9BQU8sRUFBRSxLQUFLLEdBQ2Q7O0FBSUgsQUFBQSxtQ0FBbUMsQ0FBQztFQUNuQyxPQUFPLEVBQUUsSUFBSSxHQUNiOztBQUVELEFBQUEseUJBQXlCLENBQUM7RTVENEJ4QixTQUFTLEU0RHZCSSxJQUFJO0U1RHdCakIsU0FBUyxFRjVCRixNQUF5QjtFRWlDaEMsV0FBVyxFQUFFLEdBQW1DO0U0RDVCakQsT0FBTyxFQUFFLFdBQVc7RUFDcEIsTUFBTSxFQUFFLGFBQWE7RUFDckIsZUFBZSxFQUFFLFNBQVM7RUFDMUIsS0FBSyxFekVkRyxPQUEyQjtFeUVlbkMsVUFBVSxFQUFFLGNBQWMsR0FLMUI7RTVEaUdDLE1BQU0sTUFBTSxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7STREaEgxQyxBQUFBLHlCQUF5QixDQUFDO01BRXhCLFVBQVUsRUFBRSxJQUFJLEdBYWpCO0VBZkQsQUFZQyx5QkFad0IsQUFZdkIsTUFBTSxDQUFDO0lBQ1AsS0FBSyxFekU1QkUsT0FBMkIsR3lFNkJsQzs7QUFHRixBQUFBLCtCQUErQixDQUFDO0VBTS9CLFVBQVUsRUFBRSxJQUFJO0VBQ2hCLGFBQWEsRUFBRSxJQUFJO0VBQ25CLFlBQVksRUFBRSxJQUFJLEdBU2xCO0U1RDhFQyxNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO0k0RC9GMUMsQUFBQSwrQkFBK0IsQ0FBQztNQUU5QixVQUFVLEVBQUUsSUFBSSxHQWVqQjtFQWpCRCxBQVVDLCtCQVY4QixDQVU5QixHQUFHLENBQUM7SUFDSCxRQUFRLEVBQUUsUUFBUTtJQUNsQixHQUFHLEVBQUUsR0FBRztJQUNSLEtBQUssRUFBRSxJQUFJO0lBQ1gsTUFBTSxFQUFFLElBQUk7SUFDWixZQUFZLEVBQUUsR0FBRyxHQUNqQjs7QUMzREYsQUFBQSw4QkFBOEIsQ0FBQztFQVU5QixLQUFLLEVBQUUsa0JBQWtCO0VBQ3pCLE1BQU0sRUFBRSxrQkFBa0IsR0FVMUI7RTdEeUdDLE1BQU0sTUFBTSxNQUFNLE1BQU0sU0FBUyxFQUFFLE1BQU07STZEOUgzQyxBQUFBLDhCQUE4QixDQUFDO01BRTdCLEtBQUssRUFBRSxrQkFBa0I7TUFDekIsTUFBTSxFQUFFLGlCQUFpQixHQWtCMUI7RTdEcUhDLE1BQU0sTUFBTSxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7STZEMUkxQyxBQUFBLDhCQUE4QixDQUFDO01BTTdCLEtBQUssRUFBRSxJQUFJO01BQ1gsTUFBTSxFQUFFLE1BQU0sR0FjZjtFQXJCRCxBQWFDLDhCQWI2QixDQWE3QixDQUFDO0VBYkYsOEJBQThCLENBYzdCLDRCQUE0QixDQUFDO0lBQzVCLEtBQUssRUFBRSxJQUFJLEdBQ1g7RUFoQkYsQUFrQkMsOEJBbEI2QixDQWtCN0Isb0JBQW9CLENBQUM7SUFDcEIsVUFBVSxFQUFFLElBQUksR0FDaEI7O0FBR0Y7O0dBRUc7QUFDSCxBQUNDLG9CQURtQixDQUNuQixZQUFZLENBQUM7RUFDWixXQUFXLEVBQUUsTUFBTSxHQUNuQjs7QUFJRjs7R0FFRztBQUNILEFBQ0Msc0JBRHFCLENBQ3JCLFlBQVksQ0FBQztFQUNaLFdBQVcsRUFBRSxNQUFNLEdBQ25COztBQUhGLEFBS0Msc0JBTHFCLENBS3JCLDhCQUE4QixDQUFDO0VBSzlCLFlBQVksRUFBRSxJQUFJLEdBS2xCO0U3RDJFQSxNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxNQUFNO0k2RDFGM0MsQUFLQyxzQkFMcUIsQ0FLckIsOEJBQThCLENBQUM7TUFFN0IsWUFBWSxFQUFFLENBQUMsR0FRaEI7RUFmRixBQVlFLHNCQVpvQixDQUtyQiw4QkFBOEIsR0FPM0IsQ0FBQyxDQUFDO0lBQ0gsT0FBTyxFQUFFLElBQUksR0FDYjs7QUFJSCxBQUFBLHNCQUFzQixDQUFDO0VBQ3RCLE9BQU8sRUFBRSxJQUFJO0VBQ2IsU0FBUyxFQUFFLElBQUk7RUFDZixLQUFLLEVBQUUsSUFBSSxHQTBCWDtFQTdCRCxBQUtDLHNCQUxxQixDQUtyQixvQkFBb0IsQ0FBQztJQU1wQixLQUFLLEVBQUUsR0FBRyxHQUNWO0k3RHdFQSxNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO002RHBGMUMsQUFLQyxzQkFMcUIsQ0FLckIsb0JBQW9CLENBQUM7UUFFbkIsS0FBSyxFQUFFLElBQUk7UUFDWCxhQUFhLEVBQUUsSUFBSSxHQUlwQjtFQVpGLEFBY0Msc0JBZHFCLENBY3JCLEVBQUUsQ0FBQztJN0RkRixTQUFTLEU2RG1CSyxJQUFJO0k3RGxCbEIsU0FBUyxFRjVCRixJQUF5QjtJRWlDaEMsV0FBVyxFQUFFLEtBQW1DO0k2RGNoRCxhQUFhLEVBQUUsSUFBSTtJQUNuQixjQUFjLEVBQUUsTUFBTTtJQUN0QixPQUFPLEVBQUUsSUFBSSxHQUNiO0k3RDZEQSxNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO002RHBGMUMsQUFjQyxzQkFkcUIsQ0FjckIsRUFBRSxDQUFDO1FBRUQsYUFBYSxFQUFFLElBQUksR0FPcEI7RUF2QkYsQUF5QkMsc0JBekJxQixDQXlCckIsQ0FBQyxDQUFDO0lBQ0QsS0FBSyxFMUUzREUsT0FBMkI7STBFNERsQyxlQUFlLEVBQUUsU0FBUyxHQUMxQjs7QUFHRjs7R0FFRztBQUNILEFBR0Msc0JBSHFCLENBR3JCLDhCQUE4QjtBQUYvQixvQkFBb0IsQ0FFbkIsOEJBQThCO0FBRC9CLG9CQUFvQixDQUNuQiw4QkFBOEIsQ0FBQztFQUM5QixXQUFXLEVBQUUsSUFBSSxHQUNqQjs7QUFHRixBQUNDLDhCQUQ2QixDQUFDLElBQUksQ0FDbEMsRUFBRSxDQUFDO0VBQ0YsYUFBYSxFQUFFLElBQUksR0FDbkI7O0FBSEYsQUFLQyw4QkFMNkIsQ0FBQyxJQUFJLEFBS2pDLGFBQWE7QUFMZiw4QkFBOEIsQ0FBQyxJQUFJLENBTWxDLDBDQUEwQyxDQUFDO0VBSzFDLE9BQU8sRUFBRSxJQUFJO0VBQ2IsU0FBUyxFQUFFLElBQUk7RUFDZixNQUFNLEVBQUUsT0FBTyxHQUNmO0U3RDRCQSxNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO0k2RDFDMUMsQUFLQyw4QkFMNkIsQ0FBQyxJQUFJLEFBS2pDLGFBQWE7SUFMZiw4QkFBOEIsQ0FBQyxJQUFJLENBTWxDLDBDQUEwQyxDQUFDO01BRXpDLE1BQU0sRUFBRSxDQUFDLEdBTVY7O0FBZEYsQUFnQkMsOEJBaEI2QixDQUFDLElBQUksQ0FnQmxDLFNBQVMsQ0FBQztFQU1ULEtBQUssRUFBRSxnQkFBZ0I7RUFDdkIsTUFBTSxFQUFFLGdCQUFnQixHQUN4QjtFN0RrQkEsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztJNkQxQzFDLEFBZ0JDLDhCQWhCNkIsQ0FBQyxJQUFJLENBZ0JsQyxTQUFTLENBQUM7TUFFUixLQUFLLEVBQUUsSUFBSTtNQUNYLE1BQU0sRUFBRSxVQUFVLEdBS25COztBQXhCRixBQTBCQyw4QkExQjZCLENBQUMsSUFBSSxDQTBCbEMseUJBQXlCO0FBMUIxQiw4QkFBOEIsQ0FBQyxJQUFJLENBMkJsQyx5QkFBeUI7QUEzQjFCLDhCQUE4QixDQUFDLElBQUksQ0E0QmxDLHdCQUF3QjtBQTVCekIsOEJBQThCLENBQUMsSUFBSSxDQTZCbEMsd0JBQXdCLENBQUM7RUFDeEIsS0FBSyxFQUFFLElBQUksR0FDWDs7QUEvQkYsQUFpQ0MsOEJBakM2QixDQUFDLElBQUksQ0FpQ2xDLHdCQUF3QixDQUFDO0VBQ3hCLGFBQWEsRUFBRSxJQUFJLEdBQ25COztBQW5DRixBQXFDQyw4QkFyQzZCLENBQUMsSUFBSSxDQXFDbEMsS0FBSyxDQUFDO0VBQ0wsS0FBSyxFMUVwR0UsT0FBcUIsRzBFcUc1Qjs7QUF2Q0YsQUF5Q0MsOEJBekM2QixDQUFDLElBQUksQ0F5Q2xDLEtBQUs7QUF6Q04sOEJBQThCLENBQUMsSUFBSSxDQTBDbEMsTUFBTSxDQUFDO0VBQ04sS0FBSyxFMUV6R0UsT0FBcUIsRzBFMEc1Qjs7QUE1Q0YsQUE4Q0MsOEJBOUM2QixDQUFDLElBQUksQ0E4Q2xDLEVBQUUsQ0FBQztFN0R4RkYsU0FBUyxFNkR5RkssSUFBSTtFN0R4RmxCLFNBQVMsRUY1QkYsTUFBeUI7RUVpQ2hDLFdBQVcsRUFBRSxTQUFtQztFNkRvRmhELFVBQVUsRUFBRSxJQUFJO0VBQ2hCLEtBQUssRTFFL0dFLE9BQXFCO0UwRWdINUIsVUFBVSxFQUFFLE1BQU07RUFDbEIsY0FBYyxFQUFFLE1BQU07RUFDdEIsT0FBTyxFQUFFLEdBQUcsR0FDWjs7QUFyREYsQUF1REMsOEJBdkQ2QixDQUFDLElBQUksQ0F1RGxDLFFBQVEsQ0FBQztFQUtSLE9BQU8sRUFBRSxJQUFJO0VBQ2IsU0FBUyxFQUFFLElBQUk7RUFDZixLQUFLLEVBQUUsR0FBRztFQUNWLE1BQU0sRUFBRSxXQUFXLEdBa0JuQjtFN0R2Q0EsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztJNkQxQzFDLEFBdURDLDhCQXZENkIsQ0FBQyxJQUFJLENBdURsQyxRQUFRLENBQUM7TUFFUCxLQUFLLEVBQUUsSUFBSSxHQXdCWjtFQWpGRixBQWlFRSw4QkFqRTRCLENBQUMsSUFBSSxDQXVEbEMsUUFBUSxDQVVQLE1BQU0sQ0FBQztJQU9OLEtBQUssRUFBRSxJQUFJO0lBQ1gsYUFBYSxFQUFFLElBQUk7SUFDbkIsWUFBWSxFQUFFLElBQUksR0FDbEI7STdEakNELE1BQU0sTUFBTSxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7TTZEMUMxQyxBQWlFRSw4QkFqRTRCLENBQUMsSUFBSSxDQXVEbEMsUUFBUSxDQVVQLE1BQU0sQ0FBQztRQUVMLFlBQVksRUFBRSxDQUFDLEdBUWhCO0VBM0VILEFBNkVFLDhCQTdFNEIsQ0FBQyxJQUFJLENBdURsQyxRQUFRLENBc0JQLFNBQVMsQ0FBQztJQUNULEtBQUssRUFBRSxJQUFJO0lBQ1gsYUFBYSxFQUFFLElBQUksR0FDbkI7O0FBaEZILEFBbUZDLDhCQW5GNkIsQ0FBQyxJQUFJLENBbUZsQyxPQUFPLENBQUM7RUFFUCxhQUFhLEVBQUUsSUFBSTtFQUNuQixZQUFZLEVBQUUsSUFBSSxHQVNsQjtFQS9GRixBQXdGRSw4QkF4RjRCLENBQUMsSUFBSSxDQW1GbEMsT0FBTyxDQUtOLEdBQUcsQ0FBQztJQUNILFFBQVEsRUFBRSxRQUFRO0lBQ2xCLEdBQUcsRUFBRSxHQUFHO0lBQ1IsS0FBSyxFQUFFLElBQUk7SUFDWCxNQUFNLEVBQUUsSUFBSTtJQUNaLFlBQVksRUFBRSxHQUFHLEdBQ2pCOztBQTlGSCxBQWlHQyw4QkFqRzZCLENBQUMsSUFBSSxBQWlHakMsYUFBYSxDQUFDLE9BQU8sQ0FBQztFQUt0QixXQUFXLEVBQUUsSUFBSSxHQUNqQjtFN0Q3REEsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztJNkQxQzFDLEFBaUdDLDhCQWpHNkIsQ0FBQyxJQUFJLEFBaUdqQyxhQUFhLENBQUMsT0FBTyxDQUFDO01BRXJCLFdBQVcsRUFBRSxDQUFDLEdBSWY7O0FBSUY7O0dBRUc7QUFDSCxBQUNDLGdCQURlLENBQ2YseUJBQXlCLENBQUM7RUFFekIsS0FBSyxFQUFFLElBQUk7RUFDWCxlQUFlLEVBQUUsUUFBUTtFQUN6QixjQUFjLEVBQUUsTUFBTTtFQUN0QixNQUFNLEVBQUUsQ0FBQyxHQTJCVDtFQWpDRixBQVFFLGdCQVJjLENBQ2YseUJBQXlCLENBT3hCLEtBQUssQ0FBQyxFQUFFLENBQUM7SUFDUixjQUFjLEVBQUUsSUFBSSxHQUNwQjtFQVZILEFBWUUsZ0JBWmMsQ0FDZix5QkFBeUIsQ0FXeEIsS0FBSyxDQUFDLEVBQUUsQUFBQSxhQUFhLENBQUM7SUFDckIsT0FBTyxFQUFFLFNBQVMsR0FDbEI7RUFkSCxBQWdCRSxnQkFoQmMsQ0FDZix5QkFBeUIsQ0FleEIsK0NBQStDO0VBaEJqRCxnQkFBZ0IsQ0FDZix5QkFBeUIsQ0FnQnhCLDZDQUE2QyxDQUFDO0lBQzdDLE9BQU8sRUFBRSxJQUFJLEdBQ2I7RUFuQkgsQUFxQkUsZ0JBckJjLENBQ2YseUJBQXlCLENBb0J4Qiw0Q0FBNEM7RUFyQjlDLGdCQUFnQixDQUNmLHlCQUF5QixDQXFCeEIsOENBQThDLENBQUM7SUFDOUMsWUFBWSxFQUFFLElBQUksR0FDbEI7RUF4QkgsQUEwQkUsZ0JBMUJjLENBQ2YseUJBQXlCLENBeUJ4Qiw0Q0FBNEMsQ0FBQztJQUM1QyxXQUFXLEVBQUUsR0FBRyxDQUFDLEtBQUssQzFFaE1oQixVQUFxQixHMEVpTTNCO0VBNUJILEFBOEJFLGdCQTlCYyxDQUNmLHlCQUF5QixDQTZCeEIsMkNBQTJDLENBQUM7SUFDM0MsWUFBWSxFQUFFLEdBQUcsQ0FBQyxLQUFLLEMxRXBNakIsVUFBcUIsRzBFcU0zQjs7QUFJSDs7R0FFRztBQUNILEFBQ0MsOEJBRDZCLENBQzdCLDBCQUEwQixDQUFDO0VBQzFCLE9BQU8sRUFBRSxLQUFLLEdBS2Q7RUFQRixBQUlFLDhCQUo0QixDQUM3QiwwQkFBMEIsQ0FHekIsRUFBRSxDQUFDO0lBQ0YsTUFBTSxFQUFFLGFBQWEsR0FDckI7O0FBTkgsQUFTQyw4QkFUNkIsQ0FTN0IsaUNBQWlDLENBQUM7RUFFakMsS0FBSyxFQUFFLElBQUk7RUFDWCxNQUFNLEVBQUUsQ0FBQztFQUNULGVBQWUsRUFBRSxRQUFRO0VBQ3pCLGNBQWMsRUFBRSxNQUFNLEdBbUN0QjtFQWpERixBQWdCRSw4QkFoQjRCLENBUzdCLGlDQUFpQyxDQU9oQyxFQUFFLENBQUM7SUFDRixVQUFVLEVBQUUsSUFBSSxHQU1oQjtJQXZCSCxBQW1CRyw4QkFuQjJCLENBUzdCLGlDQUFpQyxDQU9oQyxFQUFFLEFBR0EsZ0NBQWdDLENBQUM7TUFDakMsWUFBWSxFQUFFLElBQUk7TUFDbEIsY0FBYyxFQUFFLENBQUMsR0FDakI7RUF0QkosQUEwQkcsOEJBMUIyQixDQVM3QixpQ0FBaUMsQ0FnQmhDLEVBQUUsQUFDQSxnQ0FBZ0MsQ0FBQztJQUNqQyxXQUFXLEVBQUUsR0FBRyxDQUFDLEtBQUssQzFFdk9qQixVQUFxQjtJMEV3TzFCLFlBQVksRUFBRSxJQUFJLEdBQ2xCO0VBN0JKLEFBZ0NFLDhCQWhDNEIsQ0FTN0IsaUNBQWlDLENBdUJoQyxLQUFLLENBQUMsRUFBRSxBQUFBLGFBQWEsQ0FBQztJQUNyQixPQUFPLEVBQUUsU0FBUyxHQUNsQjtFQWxDSCxBQW9DRSw4QkFwQzRCLENBUzdCLGlDQUFpQyxDQTJCaEMsaUNBQWlDLENBQUM7SUFDakMsWUFBWSxFQUFFLEdBQUcsQ0FBQyxLQUFLLEMxRWpQakIsVUFBcUIsRzBFa1AzQjtFQXRDSCxBQXdDRSw4QkF4QzRCLENBUzdCLGlDQUFpQyxDQStCaEMsS0FBSyxDQUFDO0lBQ0wsY0FBYyxFQUFFLENBQUM7SUFDakIsT0FBTyxFQUFFLEtBQUs7SUFDZCxVQUFVLEVBQUUsSUFBSSxHQUtoQjtJQWhESCxBQTZDRyw4QkE3QzJCLENBUzdCLGlDQUFpQyxDQStCaEMsS0FBSyxDQUtKLEVBQUUsQ0FBQztNQUNGLEtBQUssRUFBRSxHQUFHLEdBQ1Y7O0FBL0NKLEFBbURDLDhCQW5ENkIsQ0FtRDdCLElBQUksQ0FBQztFQUNKLGdCQUFnQixFMUVoUlQsT0FBd0IsRzBFaVIvQjs7QUFJRjs7R0FFRztBQUNILEFBQUEsaUJBQWlCLENBQUM7RUFDakIsUUFBUSxFQUFFLE9BQU8sR0FNakI7RUFQRCxBQUdDLGlCQUhnQixBQUdmLE1BQU0sQ0FBQztJQUNQLEdBQUcsRUFBRSxLQUFLO0lBQ1YsS0FBSyxFQUFFLENBQUMsR0FDUjs7QUN2VEYsQUFBQSxpQ0FBaUMsQ0FBQztFQU1qQyxRQUFRLEVBQUUsUUFBUTtFQUNsQixLQUFLLEVBQUUsS0FBSztFQUNaLE1BQU0sRUFBRSxPQUFPO0VBQ2YsT0FBTyxFQUFFLGdCQUFnQjtFQUN6QixnQkFBZ0IsRTNFZVIsT0FBd0IsRzJFK0VoQztFOURrQ0MsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztJOEQxSTFDLEFBQUEsaUNBQWlDLENBQUM7TUFFaEMsS0FBSyxFQUFFLElBQUk7TUFDWCxNQUFNLEVBQUUsVUFBVSxHQXFHbkI7RUF4R0QsQUFZQyxpQ0FaZ0MsQUFZL0IsT0FBTyxDQUFDO0lBQ1IsUUFBUSxFQUFFLFFBQVE7SUFDbEIsR0FBRyxFQUFFLENBQUM7SUFDTixJQUFJLEVBQUUsS0FBSztJQUNYLEtBQUssRUFBRSxJQUFJO0lBQ1gsTUFBTSxFQUFFLElBQUk7SUFDWixnQkFBZ0IsRTNFT1QsT0FBd0I7STJFTi9CLE9BQU8sRUFBRSxFQUFFO0lBQ1gsT0FBTyxFQUFFLEVBQUUsR0FDWDtFQXJCRixBQXVCQyxpQ0F2QmdDLENBdUJoQyxRQUFRLENBQUM7SUFDUixhQUFhLEVBQUUsSUFBSSxHQUNuQjtFQXpCRixBQTRCRSxpQ0E1QitCLENBMkJoQyxFQUFFLENBQ0QsQ0FBQyxDQUFDO0k5RDBCRixTQUFTLEU4RHpCTSxJQUFJO0k5RDBCbkIsU0FBUyxFRjVCRixNQUF5QjtJRWlDaEMsV0FBVyxFQUFFLE9BQW1DO0k4RDlCL0MsUUFBUSxFQUFFLFFBQVE7SUFDbEIsT0FBTyxFQUFFLElBQUk7SUFDYixXQUFXLEVBQUUsTUFBTTtJQUNuQixLQUFLLEVBQUUsSUFBSTtJQUNYLE1BQU0sRUFBRSxJQUFJO0lBQ1osT0FBTyxFQUFFLE1BQU07SUFDZixLQUFLLEUzRVBDLE9BQXlCO0kyRVEvQixXQUFXLEVBQUUsSUFBSTtJQUNqQixhQUFhLEVBQUUsR0FBRyxDQUFDLEtBQUssQzNFaENsQixLQUFvQjtJMkVpQzFCLFVBQVUsRUFBRSxjQUFjLEdBNkIxQjtJQXBFSCxBQXlDRyxpQ0F6QzhCLENBMkJoQyxFQUFFLENBQ0QsQ0FBQyxDQWFBLEdBQUcsQ0FBQztNQUNILFFBQVEsRUFBRSxRQUFRO01BQ2xCLEdBQUcsRUFBRSxDQUFDO01BQ04sS0FBSyxFQUFFLElBQUk7TUFDWCxNQUFNLEVBQUUsSUFBSTtNQUNaLFlBQVksRUFBRSxJQUFJO01BQ2xCLFVBQVUsRUFBRSxjQUFjLEdBQzFCO0lBaERKLEFBa0RHLGlDQWxEOEIsQ0EyQmhDLEVBQUUsQ0FDRCxDQUFDLEFBc0JDLE9BQU8sQ0FBQztNQUNSLFFBQVEsRUFBRSxRQUFRO01BQ2xCLEdBQUcsRUFBRSxDQUFDO01BQ04sS0FBSyxFQUFFLEtBQUs7TUFDWixLQUFLLEVBQUUsS0FBSztNQUNaLE1BQU0sRUFBRSxJQUFJO01BQ1osZ0JBQWdCLEUzRS9CWCxPQUF3QjtNMkVnQzdCLE9BQU8sRUFBRSxFQUFFO01BQ1gsT0FBTyxFQUFFLEVBQUUsR0FDWDtJQTNESixBQTZERyxpQ0E3RDhCLENBMkJoQyxFQUFFLENBQ0QsQ0FBQyxBQWlDQyxNQUFNLENBQUM7TUFDUCxLQUFLLEUzRXpDQSxPQUEyQixHMkU4Q2hDO01BbkVKLEFBZ0VJLGlDQWhFNkIsQ0EyQmhDLEVBQUUsQ0FDRCxDQUFDLEFBaUNDLE1BQU0sQ0FHTixHQUFHLENBQUM7UUFDSCxLQUFLLEUzRTVDRCxPQUEyQixHMkU2Qy9CO0VBbEVMLEFBc0VFLGlDQXRFK0IsQ0EyQmhDLEVBQUUsQUEyQ0EsVUFBVSxDQUFDO0lBQ1gsVUFBVSxFQUFFLElBQUksR0FVaEI7SUFqRkgsQUF5RUcsaUNBekU4QixDQTJCaEMsRUFBRSxBQTJDQSxVQUFVLENBR1YsQ0FBQyxDQUFDO01BQ0QsZ0JBQWdCLEUzRXBFWCxLQUFvQjtNMkVxRXpCLGFBQWEsRUFBRSxHQUFHLENBQUMsS0FBSyxDM0VsRG5CLE9BQXdCLEcyRXVEN0I7TUFoRkosQUE2RUksaUNBN0U2QixDQTJCaEMsRUFBRSxBQTJDQSxVQUFVLENBR1YsQ0FBQyxBQUlDLE9BQU8sQ0FBQztRQUNSLGdCQUFnQixFM0V4RVosS0FBb0IsRzJFeUV4QjtFQS9FTCxBQXFGRSxpQ0FyRitCLENBb0ZoQyxpREFBaUQsQUFDL0MsVUFBVSxDQUFDLENBQUM7RUFyRmYsaUNBQWlDLENBb0ZoQyxpREFBaUQsQ0FFaEQsQ0FBQyxDQUFDO0lBT0QsTUFBTSxFQUFFLElBQUk7SUFDWixhQUFhLEVBQUUsSUFBSTtJQUNuQixPQUFPLEVBQUUsQ0FBQztJQUNWLGdCQUFnQixFQUFFLFdBQVcsQ0FBQSxVQUFVO0lBQ3ZDLGFBQWEsRUFBRSxDQUFDLEdBS2hCO0k5RG9DRCxNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO004RDFJMUMsQUFxRkUsaUNBckYrQixDQW9GaEMsaURBQWlELEFBQy9DLFVBQVUsQ0FBQyxDQUFDO01BckZmLGlDQUFpQyxDQW9GaEMsaURBQWlELENBRWhELENBQUMsQ0FBQztRQUVBLGFBQWEsRUFBRSxJQUFJLEdBY3BCO0lBdEdILEFBbUdHLGlDQW5HOEIsQ0FvRmhDLGlEQUFpRCxBQUMvQyxVQUFVLENBQUMsQ0FBQyxBQWNYLE9BQU87SUFuR1gsaUNBQWlDLENBb0ZoQyxpREFBaUQsQ0FFaEQsQ0FBQyxBQWFDLE9BQU8sQ0FBQztNQUNSLE9BQU8sRUFBRSxJQUFJLEdBQ2I7O0FDckdKLEFBQUEsNEJBQTRCO0FBQzVCLG1CQUFtQixDQUFDO0VBQ25CLEtBQUssRUFBRSxJQUFJLEdBQ1g7O0FBRUQsQUFBQSxXQUFXO0FBQ1gsb0JBQW9CLENBQUM7RS9EZ0RuQixTQUFTLEUrRC9DSSxJQUFJO0UvRGdEakIsU0FBUyxFRjVCRixJQUF5QjtFRWlDaEMsV0FBVyxFQUFFLEtBQW1DO0UrRHBEakQsT0FBTyxFQUFFLElBQUk7RUFDYixXQUFXLEVBQUUsTUFBTTtFQUNuQixlQUFlLEVBQUUsTUFBTTtFQUN2QixjQUFjLEVBQUUsV0FBVztFQUMzQixLQUFLLEVBQUUsSUFBSTtFQUNYLGFBQWEsRUFBRSxJQUFJO0VBQ25CLE9BQU8sRUFBRSxJQUFJO0VBQ2IsZ0JBQWdCLEU1RTBCUixVQUFxQjtFNEV6QjdCLEtBQUssRTVFTEcsT0FBMkI7RTRFTW5DLFdBQVcsRUFBRSxJQUFJLEdBV2pCO0VBdkJELEFBY0MsV0FkVSxDQWNWLENBQUM7RUFiRixvQkFBb0IsQ0FhbkIsQ0FBQyxDQUFDO0lBR0QsV0FBVyxFQUFFLElBQUksR0FLakI7SUF0QkYsQUFtQkUsV0FuQlMsQ0FjVixDQUFDLEFBS0MsYUFBYTtJQWxCaEIsb0JBQW9CLENBYW5CLENBQUMsQUFLQyxhQUFhLENBQUM7TUFDZCxNQUFNLEVBQUUsVUFBVSxHQUNsQjs7QUFRSCxBQUFBLFdBQVc7QUFDWCw0QkFBNEIsQ0FBQyxvQkFBb0IsQ0FBQztFQUNqRCxVQUFVLEVBQUUsSUFBSSxHQUNoQjs7QUNyQ0QsQUFDQywwQkFEeUIsQ0FDekIsRUFBRSxDQUFDO0VBQ0YsT0FBTyxFQUFFLElBQUksR0FDYjs7QUFIRixBQUtDLDBCQUx5QixDQUt6QixLQUFLLENBQUM7RUFDTCxhQUFhLEVBQUUsR0FBRyxHQUNsQjs7QUFQRixBQVNDLDBCQVR5QixDQVN6Qiw0QkFBNEIsQ0FBQztFQUM1QixVQUFVLEVBQUUsSUFBSSxHQUNoQjs7QUFYRixBQWFDLDBCQWJ5QixDQWF6QixtQkFBbUIsQ0FBQztFQU1uQixVQUFVLEVBQUUsSUFBSTtFQUNoQixhQUFhLEVBQUUsSUFBSTtFQUNuQixZQUFZLEVBQUUsSUFBSSxHQVNsQjtFaEU0R0EsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztJZ0UxSTFDLEFBYUMsMEJBYnlCLENBYXpCLG1CQUFtQixDQUFDO01BRWxCLFVBQVUsRUFBRSxJQUFJLEdBZWpCO0VBOUJGLEFBdUJFLDBCQXZCd0IsQ0FhekIsbUJBQW1CLENBVWxCLEdBQUcsQ0FBQztJQUNILFFBQVEsRUFBRSxRQUFRO0lBQ2xCLEdBQUcsRUFBRSxHQUFHO0lBQ1IsS0FBSyxFQUFFLElBQUk7SUFDWCxNQUFNLEVBQUUsSUFBSTtJQUNaLFlBQVksRUFBRSxHQUFHLEdBQ2pCOztBaEY0RUg7O0dBRUc7QWlGM0dIOzs7OztHQUtHO0FBVUE7O01BRUc7QUFFSCxBQUFBLGdCQUFnQixDQUE4QjtFQUM3QyxLQUFRLEU5RWpCSCxLQUFrQixHOEVrQnZCOztBQU5EOztNQUVHO0FBRUgsQUFBQSwyQkFBMkIsQ0FBbUI7RUFDN0MsZ0JBQVEsRTlFakJILEtBQWtCLEc4RWtCdkI7O0FBTkQ7O01BRUc7QUFFSCxBQUFBLGdCQUFnQixDQUE4QjtFQUM3QyxLQUFRLEU5RWRILEtBQW9CLEc4RWV6Qjs7QUFORDs7TUFFRztBQUVILEFBQUEsMkJBQTJCLENBQW1CO0VBQzdDLGdCQUFRLEU5RWRILEtBQW9CLEc4RWV6Qjs7QUFORDs7TUFFRztBQUVILEFBQUEsZUFBZSxDQUErQjtFQUM3QyxLQUFRLEU5RWJKLHdCQUFzQixHOEVjMUI7O0FBTkQ7O01BRUc7QUFFSCxBQUFBLDBCQUEwQixDQUFvQjtFQUM3QyxnQkFBUSxFOUViSix3QkFBc0IsRzhFYzFCOztBQU5EOztNQUVHO0FBRUgsQUFBQSxlQUFlLENBQStCO0VBQzdDLEtBQVEsRTlFWkosd0JBQXNCLEc4RWExQjs7QUFORDs7TUFFRztBQUVILEFBQUEsMEJBQTBCLENBQW9CO0VBQzdDLGdCQUFRLEU5RVpKLHdCQUFzQixHOEVhMUI7O0FBTkQ7O01BRUc7QUFFSCxBQUFBLHNCQUFzQixDQUF3QjtFQUM3QyxLQUFRLEU5RVRILE9BQTJCLEc4RVVoQzs7QUFORDs7TUFFRztBQUVILEFBQUEsaUNBQWlDLENBQWE7RUFDN0MsZ0JBQVEsRTlFVEgsT0FBMkIsRzhFVWhDOztBQU5EOztNQUVHO0FBRUgsQUFBQSxxQkFBcUIsQ0FBeUI7RUFDN0MsS0FBUSxFOUVSSixzQkFBNkIsRzhFU2pDOztBQU5EOztNQUVHO0FBRUgsQUFBQSxnQ0FBZ0MsQ0FBYztFQUM3QyxnQkFBUSxFOUVSSixzQkFBNkIsRzhFU2pDOztBQU5EOztNQUVHO0FBRUgsQUFBQSxxQkFBcUIsQ0FBeUI7RUFDN0MsS0FBUSxFOUVQSixzQkFBNkIsRzhFUWpDOztBQU5EOztNQUVHO0FBRUgsQUFBQSxnQ0FBZ0MsQ0FBYztFQUM3QyxnQkFBUSxFOUVQSixzQkFBNkIsRzhFUWpDOztBQU5EOztNQUVHO0FBRUgsQUFBQSxxQkFBcUIsQ0FBeUI7RUFDN0MsS0FBUSxFOUVOSix1QkFBOEIsRzhFT2xDOztBQU5EOztNQUVHO0FBRUgsQUFBQSxnQ0FBZ0MsQ0FBYztFQUM3QyxnQkFBUSxFOUVOSix1QkFBOEIsRzhFT2xDOztBQU5EOztNQUVHO0FBRUgsQUFBQSxxQkFBcUIsQ0FBeUI7RUFDN0MsS0FBUSxFOUVMSixzQkFBOEIsRzhFTWxDOztBQU5EOztNQUVHO0FBRUgsQUFBQSxnQ0FBZ0MsQ0FBYztFQUM3QyxnQkFBUSxFOUVMSixzQkFBOEIsRzhFTWxDOztBQU5EOztNQUVHO0FBRUgsQUFBQSxxQkFBcUIsQ0FBeUI7RUFDN0MsS0FBUSxFOUVKSix1QkFBOEIsRzhFS2xDOztBQU5EOztNQUVHO0FBRUgsQUFBQSxnQ0FBZ0MsQ0FBYztFQUM3QyxnQkFBUSxFOUVKSix1QkFBOEIsRzhFS2xDOztBQU5EOztNQUVHO0FBRUgsQUFBQSxvQkFBb0IsQ0FBMEI7RUFDN0MsS0FBUSxFOUVITCx1QkFBOEIsRzhFSWpDOztBQU5EOztNQUVHO0FBRUgsQUFBQSwrQkFBK0IsQ0FBZTtFQUM3QyxnQkFBUSxFOUVITCx1QkFBOEIsRzhFSWpDOztBQU5EOztNQUVHO0FBRUgsQUFBQSxvQkFBb0IsQ0FBMEI7RUFDN0MsS0FBUSxFOUVGTCx1QkFBOEIsRzhFR2pDOztBQU5EOztNQUVHO0FBRUgsQUFBQSwrQkFBK0IsQ0FBZTtFQUM3QyxnQkFBUSxFOUVGTCx1QkFBOEIsRzhFR2pDOztBQU5EOztNQUVHO0FBRUgsQUFBQSxlQUFlLENBQStCO0VBQzdDLEtBQVEsRTlFQ0gsT0FBMkIsRzhFQWhDOztBQU5EOztNQUVHO0FBRUgsQUFBQSwwQkFBMEIsQ0FBb0I7RUFDN0MsZ0JBQVEsRTlFQ0gsT0FBMkIsRzhFQWhDOztBQU5EOztNQUVHO0FBRUgsQUFBQSxlQUFlLENBQStCO0VBQzdDLEtBQVEsRTlFRUgsT0FBNEIsRzhFRGpDOztBQU5EOztNQUVHO0FBRUgsQUFBQSwwQkFBMEIsQ0FBb0I7RUFDN0MsZ0JBQVEsRTlFRUgsT0FBNEIsRzhFRGpDOztBQU5EOztNQUVHO0FBRUgsQUFBQSx1QkFBdUIsQ0FBdUI7RUFDN0MsS0FBUSxFOUVLSCxPQUF3QixHOEVKN0I7O0FBTkQ7O01BRUc7QUFFSCxBQUFBLGtDQUFrQyxDQUFZO0VBQzdDLGdCQUFRLEU5RUtILE9BQXdCLEc4RUo3Qjs7QUFORDs7TUFFRztBQUVILEFBQUEsY0FBYyxDQUFnQztFQUM3QyxLQUFRLEU5RVFKLHdCQUEyQixHOEVQL0I7O0FBTkQ7O01BRUc7QUFFSCxBQUFBLHlCQUF5QixDQUFxQjtFQUM3QyxnQkFBUSxFOUVRSix3QkFBMkIsRzhFUC9COztBQU5EOztNQUVHO0FBRUgsQUFBQSxlQUFlLENBQStCO0VBQzdDLEtBQVEsRTlFU0gsT0FBeUIsRzhFUjlCOztBQU5EOztNQUVHO0FBRUgsQUFBQSwwQkFBMEIsQ0FBb0I7RUFDN0MsZ0JBQVEsRTlFU0gsT0FBeUIsRzhFUjlCOztBQU5EOztNQUVHO0FBRUgsQUFBQSxlQUFlLENBQStCO0VBQzdDLEtBQVEsRTlFVUgscUJBQXVCLEc4RVQ1Qjs7QUFORDs7TUFFRztBQUVILEFBQUEsMEJBQTBCLENBQW9CO0VBQzdDLGdCQUFRLEU5RVVILHFCQUF1QixHOEVUNUI7O0FBTkQ7O01BRUc7QUFFSCxBQUFBLGVBQWUsQ0FBK0I7RUFDN0MsS0FBUSxFOUVXSCxxQkFBdUIsRzhFVjVCOztBQU5EOztNQUVHO0FBRUgsQUFBQSwwQkFBMEIsQ0FBb0I7RUFDN0MsZ0JBQVEsRTlFV0gscUJBQXVCLEc4RVY1Qjs7QUFORDs7TUFFRztBQUVILEFBQUEsZUFBZSxDQUErQjtFQUM3QyxLQUFRLEU5RVlILE9BQXFCLEc4RVgxQjs7QUFORDs7TUFFRztBQUVILEFBQUEsMEJBQTBCLENBQW9CO0VBQzdDLGdCQUFRLEU5RVlILE9BQXFCLEc4RVgxQjs7QUFORDs7TUFFRztBQUVILEFBQUEsZUFBZSxDQUErQjtFQUM3QyxLQUFRLEU5RWFILE9BQXlCLEc4RVo5Qjs7QUFORDs7TUFFRztBQUVILEFBQUEsMEJBQTBCLENBQW9CO0VBQzdDLGdCQUFRLEU5RWFILE9BQXlCLEc4RVo5Qjs7QUFORDs7TUFFRztBQUVILEFBQUEsZUFBZSxDQUErQjtFQUM3QyxLQUFRLEU5RWNILE9BQXFCLEc4RWIxQjs7QUFORDs7TUFFRztBQUVILEFBQUEsMEJBQTBCLENBQW9CO0VBQzdDLGdCQUFRLEU5RWNILE9BQXFCLEc4RWIxQjs7QUFORDs7TUFFRztBQUVILEFBQUEsZUFBZSxDQUErQjtFQUM3QyxLQUFRLEU5RWVILE9BQXFCLEc4RWQxQjs7QUFORDs7TUFFRztBQUVILEFBQUEsMEJBQTBCLENBQW9CO0VBQzdDLGdCQUFRLEU5RWVILE9BQXFCLEc4RWQxQjs7QUFORDs7TUFFRztBQUVILEFBQUEsZUFBZSxDQUErQjtFQUM3QyxLQUFRLEU5RWdCSCxPQUFxQixHOEVmMUI7O0FBTkQ7O01BRUc7QUFFSCxBQUFBLDBCQUEwQixDQUFvQjtFQUM3QyxnQkFBUSxFOUVnQkgsT0FBcUIsRzhFZjFCOztBQU5EOztNQUVHO0FBRUgsQUFBQSxlQUFlLENBQStCO0VBQzdDLEtBQVEsRTlFaUJILE9BQTRCLEc4RWhCakM7O0FBTkQ7O01BRUc7QUFFSCxBQUFBLDBCQUEwQixDQUFvQjtFQUM3QyxnQkFBUSxFOUVpQkgsT0FBNEIsRzhFaEJqQzs7QUFORDs7TUFFRztBQUVILEFBQUEsZUFBZSxDQUErQjtFQUM3QyxLQUFRLEU5RWtCSCxPQUFxQixHOEVqQjFCOztBQU5EOztNQUVHO0FBRUgsQUFBQSwwQkFBMEIsQ0FBb0I7RUFDN0MsZ0JBQVEsRTlFa0JILE9BQXFCLEc4RWpCMUI7O0FBTkQ7O01BRUc7QUFFSCxBQUFBLHNCQUFzQixDQUF3QjtFQUM3QyxLQUFRLEU5RXFCSCxVQUFxQixHOEVwQjFCOztBQU5EOztNQUVHO0FBRUgsQUFBQSxpQ0FBaUMsQ0FBYTtFQUM3QyxnQkFBUSxFOUVxQkgsVUFBcUIsRzhFcEIxQjs7QUFORDs7TUFFRztBQUVILEFBQUEsY0FBYyxDQUFnQztFQUM3QyxLQUFRLEU5RXdCSCxPQUF1QixHOEV2QjVCOztBQU5EOztNQUVHO0FBRUgsQUFBQSx5QkFBeUIsQ0FBcUI7RUFDN0MsZ0JBQVEsRTlFd0JILE9BQXVCLEc4RXZCNUI7O0FBTkQ7O01BRUc7QUFFSCxBQUFBLFlBQVksQ0FBa0M7RUFDN0MsS0FBUSxFOUV5QkwscUJBQTBCLEc4RXhCN0I7O0FBTkQ7O01BRUc7QUFFSCxBQUFBLHVCQUF1QixDQUF1QjtFQUM3QyxnQkFBUSxFOUV5QkwscUJBQTBCLEc4RXhCN0I7O0FDckJKOztHQUVHO0FBRUgsQUFBQSxnQkFBZ0IsQ0FBQztFQUNoQixPQUFPLEVBQUUsS0FBSztFQUNkLFFBQVEsRUFBRSxRQUFRO0VBQ2xCLEtBQUssRUFBRSxHQUFHO0VBQ1YsTUFBTSxFQUFFLEdBQUc7RUFDWCxXQUFXLEVBQUUsTUFBTTtFQUNuQixRQUFRLEVBQUUsTUFBTTtFQUNoQixJQUFJLEVBQUUsd0JBQXdCO0VBQzlCLFNBQVMsRUFBRSxVQUFVLEdBQ3JCOztBQUdEOztHQUVHO0FBRUgsQUFBQSxTQUFTLENBQUM7RUFDVCxLQUFLLEVBQUUsSUFBSSxHQUNYOztBQUdEOzs7R0FHRztBTGtMSCxBS2hMQSxnQkxnTGdCLENBQ2YseUJBQXlCLENIaEt6QixLQUFLLENBd0JKLGtCQUFrQixDQVFqQixDQUFDLENBTUEsR0FBRyxFR2dLUCw4QkFBOEIsQ0FTN0IsaUNBQWlDLENIL01qQyxLQUFLLENBd0JKLGtCQUFrQixDQVFqQixDQUFDLENBTUEsR0FBRztBQXBGUCxzQkFBc0IsQ0E4Q3JCLEtBQUssQ0F3Qkosa0JBQWtCLENBUWpCLENBQUMsQ0FNQSxHQUFHO0FRdERQLFdBQVcsQ0FBQztFQUNYLFFBQVEsRUFBRSxRQUFRO0VBQ2xCLEdBQUcsRUFBRSxDQUFDO0VBQ04sS0FBSyxFQUFFLENBQUM7RUFDUixNQUFNLEVBQUUsQ0FBQztFQUNULElBQUksRUFBRSxDQUFDO0VBQ1AsS0FBSyxFQUFFLElBQUk7RUFDWCxNQUFNLEVBQUUsSUFBSTtFQUNaLFdBQVcsRUFBRSxvQkFBb0I7RUFDakMsVUFBVSxFQUFFLEtBQUssR0FDakI7O0FBR0Q7O0dBRUc7QUFFSCxBQUFBLGFBQWEsQ0FBQztFQUNiLFVBQVUsRUFBRSxNQUFNLEdBQ2xCOztBQUVEOztHQUVHO0FBRUgsQUFBQSxXQUFXLENBQUM7RUFDWCxVQUFVLEVBQUUsSUFBSSxHQUNoQjs7QUFFRDs7R0FFRztBQUVILEFBQUEsWUFBWSxDQUFDO0VBQ1osVUFBVSxFQUFFLEtBQUssR0FDakI7O0FDbEVEOzs7OztHQUtHO0FBSUY7O0lBRUc7QUFFSCxBQUFBLEtBQUssQ0FBTTtFQUNWLFdBQVcsRUFBRSxtQkFBd0I7RUFBRSxPQUFPO0VBQzlDLFVBQVUsRUFBQyxJQUFDLEdBQ1o7O0FBUEQ7O0lBRUc7QUFFSCxBQUFBLFFBQVEsQ0FBRztFQUNWLFdBQVcsRUFBRSxzQkFBd0I7RUFBRSxPQUFPO0VBQzlDLFVBQVUsRUFBQyxPQUFDLEdBQ1o7O0FBUEQ7O0lBRUc7QUFFSCxBQUFBLE1BQU0sQ0FBSztFQUNWLFdBQVcsRUFBRSxvQkFBd0I7RUFBRSxPQUFPO0VBQzlDLFVBQVUsRUFBQyxLQUFDLEdBQ1o7O0FBUEQ7O0lBRUc7QUFFSCxBQUFBLEtBQUssQ0FBTTtFQUNWLFdBQVcsRUFBRSxtQkFBd0I7RUFBRSxPQUFPO0VBQzlDLFVBQVUsRUFBQyxJQUFDLEdBQ1o7O0FBUEQ7O0lBRUc7QUFFSCxBQUFBLFdBQVcsQ0FBQTtFQUNWLFdBQVcsRUFBRSx5QkFBd0I7RUFBRSxPQUFPO0VBQzlDLFVBQVUsRUFBQyxVQUFDLEdBQ1o7O0FDaEJGOztHQUVHO0FBR0YsQUFBQSxPQUFPLENBQUk7RUFDVixRQUFRLEVBRk0sTUFBTSxHQUdwQjs7QUFGRCxBQUFBLFNBQVMsQ0FBRTtFQUNWLFFBQVEsRUFGYyxRQUFRLEdBRzlCOztBQUZELEFBQUEsU0FBUyxDQUFFO0VBQ1YsUUFBUSxFQUZ3QixRQUFRLEdBR3hDOztBQUZELEFBQUEsTUFBTSxDQUFLO0VBQ1YsUUFBUSxFQUZrQyxLQUFLLEdBRy9DOztBQUZELEFBQUEsT0FBTyxDQUFJO0VBQ1YsUUFBUSxFQUZ5QyxNQUFNLEdBR3ZEOztBQ05GOztHQUVHO0FBS0EsQUFBQSxnQkFBZ0IsQ0FBVztFQUMxQixXQUFXLEVuRkpILFFBQVEsR21GS2hCOztBckV3SUYsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztFcUUxSXZDLEFBQUEsZ0JBQWdCLENBQVc7SUFDMUIsV0FBVyxFbkZKSCxRQUFRLEdtRktoQjs7QXJFd0hGLE1BQU0sTUFBTSxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7RXFFMUh2QyxBQUFBLGdCQUFnQixDQUFXO0lBQzFCLFdBQVcsRW5GSkgsUUFBUSxHbUZLaEI7O0FyRTRHRixNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO0VxRTlHdkMsQUFBQSxnQkFBZ0IsQ0FBVztJQUMxQixXQUFXLEVuRkpILFFBQVEsR21GS2hCOztBckV3R0YsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsTUFBTTtFcUUxR3hDLEFBQUEsZ0JBQWdCLENBQVc7SUFDMUIsV0FBVyxFbkZKSCxRQUFRLEdtRktoQjs7QUFNSjs7R0FFRztBQUtBLEFBQUEsV0FBVyxDQUFnQjtFckUrQjVCLFNBQVMsRWR4Q0osSUFBSTtFY3lDVCxTQUFTLEVGNUJGLElBQXlCO0VFaUNoQyxXQUFXLEVBQUUsTUFBbUMsR3FFbkM5Qzs7QUFGRCxBQUFBLFdBQVcsQ0FBZ0I7RXJFK0I1QixTQUFTLEVkdkNKLElBQUk7RWN3Q1QsU0FBUyxFRjVCRixJQUF5QjtFRWlDaEMsV0FBVyxFQUFFLE1BQW1DLEdxRW5DOUM7O0FBRkQsQUFBQSxXQUFXLENBQWdCO0VyRStCNUIsU0FBUyxFZHRDSixJQUFJO0VjdUNULFNBQVMsRUY1QkYsTUFBeUI7RUVpQ2hDLFdBQVcsRUFBRSxNQUFtQyxHcUVuQzlDOztBQUZELEFBQUEsV0FBVyxDQUFnQjtFckUrQjVCLFNBQVMsRWRyQ0osSUFBSTtFY3NDVCxTQUFTLEVGNUJGLElBQXlCO0VFaUNoQyxXQUFXLEVBQUUsS0FBbUMsR3FFbkM5Qzs7QUFGRCxBQUFBLFVBQVUsQ0FBaUI7RXJFK0I1QixTQUFTLEVkcENMLElBQUk7RWNxQ1IsU0FBUyxFRjVCRixNQUF5QjtFRWlDaEMsV0FBVyxFQUFFLEdBQW1DLEdxRW5DOUM7O0FyRXlIRixNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO0VxRTNIdkMsQUFBQSxXQUFXLENBQWdCO0lyRStCNUIsU0FBUyxFZHhDSixJQUFJO0ljeUNULFNBQVMsRUY1QkYsSUFBeUI7SUVpQ2hDLFdBQVcsRUFBRSxNQUFtQyxHcUVuQzlDO0VBRkQsQUFBQSxXQUFXLENBQWdCO0lyRStCNUIsU0FBUyxFZHZDSixJQUFJO0ljd0NULFNBQVMsRUY1QkYsSUFBeUI7SUVpQ2hDLFdBQVcsRUFBRSxNQUFtQyxHcUVuQzlDO0VBRkQsQUFBQSxXQUFXLENBQWdCO0lyRStCNUIsU0FBUyxFZHRDSixJQUFJO0ljdUNULFNBQVMsRUY1QkYsTUFBeUI7SUVpQ2hDLFdBQVcsRUFBRSxNQUFtQyxHcUVuQzlDO0VBRkQsQUFBQSxXQUFXLENBQWdCO0lyRStCNUIsU0FBUyxFZHJDSixJQUFJO0ljc0NULFNBQVMsRUY1QkYsSUFBeUI7SUVpQ2hDLFdBQVcsRUFBRSxLQUFtQyxHcUVuQzlDO0VBRkQsQUFBQSxVQUFVLENBQWlCO0lyRStCNUIsU0FBUyxFZHBDTCxJQUFJO0ljcUNSLFNBQVMsRUY1QkYsTUFBeUI7SUVpQ2hDLFdBQVcsRUFBRSxHQUFtQyxHcUVuQzlDOztBckV5R0YsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztFcUUzR3ZDLEFBQUEsV0FBVyxDQUFnQjtJckUrQjVCLFNBQVMsRWR4Q0osSUFBSTtJY3lDVCxTQUFTLEVGNUJGLElBQXlCO0lFaUNoQyxXQUFXLEVBQUUsTUFBbUMsR3FFbkM5QztFQUZELEFBQUEsV0FBVyxDQUFnQjtJckUrQjVCLFNBQVMsRWR2Q0osSUFBSTtJY3dDVCxTQUFTLEVGNUJGLElBQXlCO0lFaUNoQyxXQUFXLEVBQUUsTUFBbUMsR3FFbkM5QztFQUZELEFBQUEsV0FBVyxDQUFnQjtJckUrQjVCLFNBQVMsRWR0Q0osSUFBSTtJY3VDVCxTQUFTLEVGNUJGLE1BQXlCO0lFaUNoQyxXQUFXLEVBQUUsTUFBbUMsR3FFbkM5QztFQUZELEFBQUEsV0FBVyxDQUFnQjtJckUrQjVCLFNBQVMsRWRyQ0osSUFBSTtJY3NDVCxTQUFTLEVGNUJGLElBQXlCO0lFaUNoQyxXQUFXLEVBQUUsS0FBbUMsR3FFbkM5QztFQUZELEFBQUEsVUFBVSxDQUFpQjtJckUrQjVCLFNBQVMsRWRwQ0wsSUFBSTtJY3FDUixTQUFTLEVGNUJGLE1BQXlCO0lFaUNoQyxXQUFXLEVBQUUsR0FBbUMsR3FFbkM5Qzs7QXJFNkZGLE1BQU0sTUFBTSxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7RXFFL0Z2QyxBQUFBLFdBQVcsQ0FBZ0I7SXJFK0I1QixTQUFTLEVkeENKLElBQUk7SWN5Q1QsU0FBUyxFRjVCRixJQUF5QjtJRWlDaEMsV0FBVyxFQUFFLE1BQW1DLEdxRW5DOUM7RUFGRCxBQUFBLFdBQVcsQ0FBZ0I7SXJFK0I1QixTQUFTLEVkdkNKLElBQUk7SWN3Q1QsU0FBUyxFRjVCRixJQUF5QjtJRWlDaEMsV0FBVyxFQUFFLE1BQW1DLEdxRW5DOUM7RUFGRCxBQUFBLFdBQVcsQ0FBZ0I7SXJFK0I1QixTQUFTLEVkdENKLElBQUk7SWN1Q1QsU0FBUyxFRjVCRixNQUF5QjtJRWlDaEMsV0FBVyxFQUFFLE1BQW1DLEdxRW5DOUM7RUFGRCxBQUFBLFdBQVcsQ0FBZ0I7SXJFK0I1QixTQUFTLEVkckNKLElBQUk7SWNzQ1QsU0FBUyxFRjVCRixJQUF5QjtJRWlDaEMsV0FBVyxFQUFFLEtBQW1DLEdxRW5DOUM7RUFGRCxBQUFBLFVBQVUsQ0FBaUI7SXJFK0I1QixTQUFTLEVkcENMLElBQUk7SWNxQ1IsU0FBUyxFRjVCRixNQUF5QjtJRWlDaEMsV0FBVyxFQUFFLEdBQW1DLEdxRW5DOUM7O0FyRXlGRixNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxNQUFNO0VxRTNGeEMsQUFBQSxXQUFXLENBQWdCO0lyRStCNUIsU0FBUyxFZHhDSixJQUFJO0ljeUNULFNBQVMsRUY1QkYsSUFBeUI7SUVpQ2hDLFdBQVcsRUFBRSxNQUFtQyxHcUVuQzlDO0VBRkQsQUFBQSxXQUFXLENBQWdCO0lyRStCNUIsU0FBUyxFZHZDSixJQUFJO0ljd0NULFNBQVMsRUY1QkYsSUFBeUI7SUVpQ2hDLFdBQVcsRUFBRSxNQUFtQyxHcUVuQzlDO0VBRkQsQUFBQSxXQUFXLENBQWdCO0lyRStCNUIsU0FBUyxFZHRDSixJQUFJO0ljdUNULFNBQVMsRUY1QkYsTUFBeUI7SUVpQ2hDLFdBQVcsRUFBRSxNQUFtQyxHcUVuQzlDO0VBRkQsQUFBQSxXQUFXLENBQWdCO0lyRStCNUIsU0FBUyxFZHJDSixJQUFJO0ljc0NULFNBQVMsRUY1QkYsSUFBeUI7SUVpQ2hDLFdBQVcsRUFBRSxLQUFtQyxHcUVuQzlDO0VBRkQsQUFBQSxVQUFVLENBQWlCO0lyRStCNUIsU0FBUyxFZHBDTCxJQUFJO0ljcUNSLFNBQVMsRUY1QkYsTUFBeUI7SUVpQ2hDLFdBQVcsRUFBRSxHQUFtQyxHcUVuQzlDOztBQU1KOztHQUVHO0FBS0EsQUFBQSxhQUFhLENBQWU7RUFDM0IsVUFBVSxFQUZRLElBQUksR0FHdEI7O0FBRkQsQUFBQSxjQUFjLENBQWM7RUFDM0IsVUFBVSxFQUZjLEtBQUssR0FHN0I7O0FBRkQsQUFBQSxlQUFlLENBQWE7RUFDM0IsVUFBVSxFQUZxQixNQUFNLEdBR3JDOztBckUwR0YsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztFcUU1R3ZDLEFBQUEsYUFBYSxDQUFlO0lBQzNCLFVBQVUsRUFGUSxJQUFJLEdBR3RCO0VBRkQsQUFBQSxjQUFjLENBQWM7SUFDM0IsVUFBVSxFQUZjLEtBQUssR0FHN0I7RUFGRCxBQUFBLGVBQWUsQ0FBYTtJQUMzQixVQUFVLEVBRnFCLE1BQU0sR0FHckM7O0FyRTBGRixNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO0VxRTVGdkMsQUFBQSxhQUFhLENBQWU7SUFDM0IsVUFBVSxFQUZRLElBQUksR0FHdEI7RUFGRCxBQUFBLGNBQWMsQ0FBYztJQUMzQixVQUFVLEVBRmMsS0FBSyxHQUc3QjtFQUZELEFBQUEsZUFBZSxDQUFhO0lBQzNCLFVBQVUsRUFGcUIsTUFBTSxHQUdyQzs7QXJFOEVGLE1BQU0sTUFBTSxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7RXFFaEZ2QyxBQUFBLGFBQWEsQ0FBZTtJQUMzQixVQUFVLEVBRlEsSUFBSSxHQUd0QjtFQUZELEFBQUEsY0FBYyxDQUFjO0lBQzNCLFVBQVUsRUFGYyxLQUFLLEdBRzdCO0VBRkQsQUFBQSxlQUFlLENBQWE7SUFDM0IsVUFBVSxFQUZxQixNQUFNLEdBR3JDOztBckUwRUYsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsTUFBTTtFcUU1RXhDLEFBQUEsYUFBYSxDQUFlO0lBQzNCLFVBQVUsRUFGUSxJQUFJLEdBR3RCO0VBRkQsQUFBQSxjQUFjLENBQWM7SUFDM0IsVUFBVSxFQUZjLEtBQUssR0FHN0I7RUFGRCxBQUFBLGVBQWUsQ0FBYTtJQUMzQixVQUFVLEVBRnFCLE1BQU0sR0FHckM7O0FBTUo7Ozs7R0FJRztBQU9BLEFBQUEsWUFBWSxDQUFRO0VBQ25CLFdBQVcsRUFBQyxHQUFDLEdBQ2I7O0FBRkQsQUFBQSxZQUFZLENBQVE7RUFDbkIsV0FBVyxFQUFDLEdBQUMsR0FDYjs7QUFGRCxBQUFBLFlBQVksQ0FBUTtFQUNuQixXQUFXLEVBQUMsR0FBQyxHQUNiOztBQUZELEFBQUEsWUFBWSxDQUFRO0VBQ25CLFdBQVcsRUFBQyxHQUFDLEdBQ2I7O0FBRkQsQUFBQSxZQUFZLENBQVE7RUFDbkIsV0FBVyxFQUFDLEdBQUMsR0FDYjs7QUFGRCxBQUFBLFlBQVksQ0FBUTtFQUNuQixXQUFXLEVBQUMsR0FBQyxHQUNiOztBQUZELEFBQUEsWUFBWSxDQUFRO0VBQ25CLFdBQVcsRUFBQyxHQUFDLEdBQ2I7O0FBRkQsQUFBQSxZQUFZLENBQVE7RUFDbkIsV0FBVyxFQUFDLEdBQUMsR0FDYjs7QUFGRCxBQUFBLFlBQVksQ0FBUTtFQUNuQixXQUFXLEVBQUMsR0FBQyxHQUNiOztBckV1RkYsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztFcUV6RnZDLEFBQUEsWUFBWSxDQUFRO0lBQ25CLFdBQVcsRUFBQyxHQUFDLEdBQ2I7RUFGRCxBQUFBLFlBQVksQ0FBUTtJQUNuQixXQUFXLEVBQUMsR0FBQyxHQUNiO0VBRkQsQUFBQSxZQUFZLENBQVE7SUFDbkIsV0FBVyxFQUFDLEdBQUMsR0FDYjtFQUZELEFBQUEsWUFBWSxDQUFRO0lBQ25CLFdBQVcsRUFBQyxHQUFDLEdBQ2I7RUFGRCxBQUFBLFlBQVksQ0FBUTtJQUNuQixXQUFXLEVBQUMsR0FBQyxHQUNiO0VBRkQsQUFBQSxZQUFZLENBQVE7SUFDbkIsV0FBVyxFQUFDLEdBQUMsR0FDYjtFQUZELEFBQUEsWUFBWSxDQUFRO0lBQ25CLFdBQVcsRUFBQyxHQUFDLEdBQ2I7RUFGRCxBQUFBLFlBQVksQ0FBUTtJQUNuQixXQUFXLEVBQUMsR0FBQyxHQUNiO0VBRkQsQUFBQSxZQUFZLENBQVE7SUFDbkIsV0FBVyxFQUFDLEdBQUMsR0FDYjs7QXJFdUVGLE1BQU0sTUFBTSxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7RXFFekV2QyxBQUFBLFlBQVksQ0FBUTtJQUNuQixXQUFXLEVBQUMsR0FBQyxHQUNiO0VBRkQsQUFBQSxZQUFZLENBQVE7SUFDbkIsV0FBVyxFQUFDLEdBQUMsR0FDYjtFQUZELEFBQUEsWUFBWSxDQUFRO0lBQ25CLFdBQVcsRUFBQyxHQUFDLEdBQ2I7RUFGRCxBQUFBLFlBQVksQ0FBUTtJQUNuQixXQUFXLEVBQUMsR0FBQyxHQUNiO0VBRkQsQUFBQSxZQUFZLENBQVE7SUFDbkIsV0FBVyxFQUFDLEdBQUMsR0FDYjtFQUZELEFBQUEsWUFBWSxDQUFRO0lBQ25CLFdBQVcsRUFBQyxHQUFDLEdBQ2I7RUFGRCxBQUFBLFlBQVksQ0FBUTtJQUNuQixXQUFXLEVBQUMsR0FBQyxHQUNiO0VBRkQsQUFBQSxZQUFZLENBQVE7SUFDbkIsV0FBVyxFQUFDLEdBQUMsR0FDYjtFQUZELEFBQUEsWUFBWSxDQUFRO0lBQ25CLFdBQVcsRUFBQyxHQUFDLEdBQ2I7O0FyRTJERixNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO0VxRTdEdkMsQUFBQSxZQUFZLENBQVE7SUFDbkIsV0FBVyxFQUFDLEdBQUMsR0FDYjtFQUZELEFBQUEsWUFBWSxDQUFRO0lBQ25CLFdBQVcsRUFBQyxHQUFDLEdBQ2I7RUFGRCxBQUFBLFlBQVksQ0FBUTtJQUNuQixXQUFXLEVBQUMsR0FBQyxHQUNiO0VBRkQsQUFBQSxZQUFZLENBQVE7SUFDbkIsV0FBVyxFQUFDLEdBQUMsR0FDYjtFQUZELEFBQUEsWUFBWSxDQUFRO0lBQ25CLFdBQVcsRUFBQyxHQUFDLEdBQ2I7RUFGRCxBQUFBLFlBQVksQ0FBUTtJQUNuQixXQUFXLEVBQUMsR0FBQyxHQUNiO0VBRkQsQUFBQSxZQUFZLENBQVE7SUFDbkIsV0FBVyxFQUFDLEdBQUMsR0FDYjtFQUZELEFBQUEsWUFBWSxDQUFRO0lBQ25CLFdBQVcsRUFBQyxHQUFDLEdBQ2I7RUFGRCxBQUFBLFlBQVksQ0FBUTtJQUNuQixXQUFXLEVBQUMsR0FBQyxHQUNiOztBckV1REYsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsTUFBTTtFcUV6RHhDLEFBQUEsWUFBWSxDQUFRO0lBQ25CLFdBQVcsRUFBQyxHQUFDLEdBQ2I7RUFGRCxBQUFBLFlBQVksQ0FBUTtJQUNuQixXQUFXLEVBQUMsR0FBQyxHQUNiO0VBRkQsQUFBQSxZQUFZLENBQVE7SUFDbkIsV0FBVyxFQUFDLEdBQUMsR0FDYjtFQUZELEFBQUEsWUFBWSxDQUFRO0lBQ25CLFdBQVcsRUFBQyxHQUFDLEdBQ2I7RUFGRCxBQUFBLFlBQVksQ0FBUTtJQUNuQixXQUFXLEVBQUMsR0FBQyxHQUNiO0VBRkQsQUFBQSxZQUFZLENBQVE7SUFDbkIsV0FBVyxFQUFDLEdBQUMsR0FDYjtFQUZELEFBQUEsWUFBWSxDQUFRO0lBQ25CLFdBQVcsRUFBQyxHQUFDLEdBQ2I7RUFGRCxBQUFBLFlBQVksQ0FBUTtJQUNuQixXQUFXLEVBQUMsR0FBQyxHQUNiO0VBRkQsQUFBQSxZQUFZLENBQVE7SUFDbkIsV0FBVyxFQUFDLEdBQUMsR0FDYjs7QUFNSjs7R0FFRztBQUtBLEFBQUEsbUJBQW1CLENBQVM7RUFDM0IsY0FBYyxFQUZJLFVBQVUsR0FHNUI7O0FBRkQsQUFBQSxrQkFBa0IsQ0FBVTtFQUMzQixjQUFjLEVBRmdCLFNBQVMsR0FHdkM7O0FBRkQsQUFBQSxrQkFBa0IsQ0FBVTtFQUMzQixjQUFjLEVBRjJCLFNBQVMsR0FHbEQ7O0FBRkQsQUFBQSxhQUFhLENBQWU7RUFDM0IsY0FBYyxFQUZzQyxJQUFJLEdBR3hEOztBQUZELEFBQUEsbUJBQW1CLENBQVM7RUFDM0IsY0FBYyxFQUY0QyxVQUFVLEdBR3BFOztBckV3RUYsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztFcUUxRXZDLEFBQUEsbUJBQW1CLENBQVM7SUFDM0IsY0FBYyxFQUZJLFVBQVUsR0FHNUI7RUFGRCxBQUFBLGtCQUFrQixDQUFVO0lBQzNCLGNBQWMsRUFGZ0IsU0FBUyxHQUd2QztFQUZELEFBQUEsa0JBQWtCLENBQVU7SUFDM0IsY0FBYyxFQUYyQixTQUFTLEdBR2xEO0VBRkQsQUFBQSxhQUFhLENBQWU7SUFDM0IsY0FBYyxFQUZzQyxJQUFJLEdBR3hEO0VBRkQsQUFBQSxtQkFBbUIsQ0FBUztJQUMzQixjQUFjLEVBRjRDLFVBQVUsR0FHcEU7O0FyRXdERixNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO0VxRTFEdkMsQUFBQSxtQkFBbUIsQ0FBUztJQUMzQixjQUFjLEVBRkksVUFBVSxHQUc1QjtFQUZELEFBQUEsa0JBQWtCLENBQVU7SUFDM0IsY0FBYyxFQUZnQixTQUFTLEdBR3ZDO0VBRkQsQUFBQSxrQkFBa0IsQ0FBVTtJQUMzQixjQUFjLEVBRjJCLFNBQVMsR0FHbEQ7RUFGRCxBQUFBLGFBQWEsQ0FBZTtJQUMzQixjQUFjLEVBRnNDLElBQUksR0FHeEQ7RUFGRCxBQUFBLG1CQUFtQixDQUFTO0lBQzNCLGNBQWMsRUFGNEMsVUFBVSxHQUdwRTs7QXJFNENGLE1BQU0sTUFBTSxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7RXFFOUN2QyxBQUFBLG1CQUFtQixDQUFTO0lBQzNCLGNBQWMsRUFGSSxVQUFVLEdBRzVCO0VBRkQsQUFBQSxrQkFBa0IsQ0FBVTtJQUMzQixjQUFjLEVBRmdCLFNBQVMsR0FHdkM7RUFGRCxBQUFBLGtCQUFrQixDQUFVO0lBQzNCLGNBQWMsRUFGMkIsU0FBUyxHQUdsRDtFQUZELEFBQUEsYUFBYSxDQUFlO0lBQzNCLGNBQWMsRUFGc0MsSUFBSSxHQUd4RDtFQUZELEFBQUEsbUJBQW1CLENBQVM7SUFDM0IsY0FBYyxFQUY0QyxVQUFVLEdBR3BFOztBckV3Q0YsTUFBTSxNQUFNLE1BQU0sTUFBTSxTQUFTLEVBQUUsTUFBTTtFcUUxQ3hDLEFBQUEsbUJBQW1CLENBQVM7SUFDM0IsY0FBYyxFQUZJLFVBQVUsR0FHNUI7RUFGRCxBQUFBLGtCQUFrQixDQUFVO0lBQzNCLGNBQWMsRUFGZ0IsU0FBUyxHQUd2QztFQUZELEFBQUEsa0JBQWtCLENBQVU7SUFDM0IsY0FBYyxFQUYyQixTQUFTLEdBR2xEO0VBRkQsQUFBQSxhQUFhLENBQWU7SUFDM0IsY0FBYyxFQUZzQyxJQUFJLEdBR3hEO0VBRkQsQUFBQSxtQkFBbUIsQ0FBUztJQUMzQixjQUFjLEVBRjRDLFVBQVUsR0FHcEU7O0FDMUVKOztHQUVHO0FBS0YsQUFBQSxLQUFLLENBQUs7RUFDVCxhQUFhLEVBQUMsR0FBQyxHQUNmOztBQUZELEFBQUEsS0FBSyxDQUFLO0VBQ1QsYUFBYSxFQUFDLEdBQUMsR0FDZjs7QUFGRCxBQUFBLE1BQU0sQ0FBSTtFQUNULGFBQWEsRUFBQyxJQUFDLEdBQ2Y7O0FBRkQsQUFBQSxNQUFNLENBQUk7RUFDVCxhQUFhLEVBQUMsSUFBQyxHQUNmOztBQUZELEFBQUEsTUFBTSxDQUFJO0VBQ1QsYUFBYSxFQUFDLElBQUMsR0FDZjs7QUFGRCxBQUFBLE1BQU0sQ0FBSTtFQUNULGFBQWEsRUFBQyxJQUFDLEdBQ2Y7O0FBRkQsQUFBQSxNQUFNLENBQUk7RUFDVCxhQUFhLEVBQUMsSUFBQyxHQUNmOztBQUZELEFBQUEsTUFBTSxDQUFJO0VBQ1QsYUFBYSxFQUFDLElBQUMsR0FDZjs7QUFGRCxBQUFBLE1BQU0sQ0FBSTtFQUNULGFBQWEsRUFBQyxJQUFDLEdBQ2Y7O0FBRkQsQUFBQSxNQUFNLENBQUk7RUFDVCxhQUFhLEVBQUMsSUFBQyxHQUNmOztBQUZELEFBQUEsTUFBTSxDQUFJO0VBQ1QsYUFBYSxFQUFDLElBQUMsR0FDZjs7QUNURjs7R0FFRztBQUdGLEFBQUEsVUFBVSxDQUFPO0VBQ2hCLE9BQU8sRW5GRkYsQ0FBQyxHbUZHTjs7QUFGRCxBQUFBLFVBQVUsQ0FBTztFQUNoQixPQUFPLEVuRkRGLEVBQUUsR21GRVA7O0FBRkQsQUFBQSxVQUFVLENBQU87RUFDaEIsT0FBTyxFbkZBRixFQUFFLEdtRkNQOztBQUZELEFBQUEsVUFBVSxDQUFPO0VBQ2hCLE9BQU8sRW5GQ0YsRUFBRSxHbUZBUDs7QUFGRCxBQUFBLFVBQVUsQ0FBTztFQUNoQixPQUFPLEVuRkVGLEVBQUUsR21GRFA7O0FBRkQsQUFBQSxVQUFVLENBQU87RUFDaEIsT0FBTyxFbkZHRixFQUFFLEdtRkZQOztBQUZELEFBQUEsVUFBVSxDQUFPO0VBQ2hCLE9BQU8sRW5GSUYsRUFBRSxHbUZIUDs7QUFGRCxBQUFBLFVBQVUsQ0FBTztFQUNoQixPQUFPLEVuRktGLEVBQUUsR21GSlA7O0FBRkQsQUFBQSxVQUFVLENBQU87RUFDaEIsT0FBTyxFbkZNRixFQUFFLEdtRkxQOztBQUZELEFBQUEsVUFBVSxDQUFPO0VBQ2hCLE9BQU8sRW5GT0YsRUFBRSxHbUZOUDs7QUFGRCxBQUFBLFdBQVcsQ0FBTTtFQUNoQixPQUFPLEVuRlFGLEdBQUcsR21GUFIifQ== */
