@charset "UTF-8";
/**
 * Defines the main color of the shop theme. Usage: primary elements' background and color.
 */
/**
 * Defines alternative color of the shop theme. Usage: secondary elements' background and color.
 */
/**
 * Defines white color. Usage: not transparent elements' background of default background.
 */
/**
 * Defines a light shade color. Usage: elements' background, borders and text.
 */
/**
 * Defines a lighter shade color. Usage: elements' background, borders and text.
 */
/**
 * Defines the lightest shade color. Usage: elements' background, borders and text.
 */
/**
 * Defines the shade of the black color. Usage: as a base of black color for semi-transparent elements.
 */
/**
 * Defines a dark shade color. Usage: elements' text color variant.
 */
/**
 * Defines a darker shade color. Usage: elements' text color variant.
 */
/**
 * Defines the darkest shade color. Usage: elements' text color variant.
 */
/**
 * Defines a transparent color. Usage: elements' background, border.
 */
/**
 * Defines the main background color. Usage: body and side-drawer background.
 */
/**
 * Defines the main color of text. Usage: default global text color.
 */
/**
 * Defines a default global border color for the input elements.
 */
/**
 * Defines a default global border color for the input elements on focus event.
 */
/**
 * Defines a shadow shade and transparency for the shadowed elements.
 */
/**
 * Defines a default overlay color. Usage: elements with overlay - side-drawer, popups etc.
 */
/**
 * Defines a default image overlay color. Usage: images with overlay - lazy-image.
 */
/**
 * Defines action colors map.
 */
/**
 * Defines font family setting. Usage: body global font styles.
 */
/**
 * Defines font family setting for code. Can be used for code and pre elements.
 */
/**
 * Defines basic font size. Usage: global basic font size.
 */
/**
 * Font size values map. Usage: mixins providing styles for headings, text elements etc.
 */
/**
 * Font weight values map. Usage: mixin to set font weight property.
 */
/**
 * Font line height values map. Usage: mixins providing styles for headings, text elements etc.
 */
/**
 * Defines a default duration value for the animation effects. Usage: mixins providing animation properties.
 */
/**
 * Defines a default timing function for the animation effects. Usage: mixins providing animation properties.
 */
/**
 * Defines default z-index value.
 */
/**
 * Defines z-index value for the floating elements.
 */
/**
 * Defines z-index value for the header context.
 */
/**
 * Defines z-index value for the side drawer context.
 */
/**
 * Defines z-index value for the popup.
 */
/**
 * Defines z-index value for the overlay.
 */
/**
 * Defines z-index value for the notification area context.
 */
/**
 * Defines z-index value for the search suggestions context.
 */
/**
 * Defines z-index value for the ajax loader.
 */
/**
 * Defines z-index value for the top navigation context.
 */
/**
 * Defines spacing values map. Usage: spacing helpers and mixins.
 */
/**
 * Defines breakpoints' values for responsive.
 */
/**
 * Defines grid system columns count.
 */
/**
 * Defines grid container max width.
 */
/**
 * Defines gutters' size for grid "with-gutter" modifier.
 */
/**
 * Defines import blacklist. Usage: import helper.
 */
/**
 * Provides list of properies for reset usage.
 */
/**
 * Wrapper function for the darken sass function with a default degree parameter.
 * @param {Color} $setting-color
 * @param {Number} $degree [10]
 */
/**
 * Wrapper function for the lighten sass function with a default degree parameter.
 * @param {Color} $setting-color
 * @param {Number} $degree [10]
 */
/**
 * Sets font-size property from font size settings map - $setting-font-size according to the passed map key.
 * @param {String | Number} $size
 */
/**
 * Sets font-weight property from font weight settings map - $setting-font-weight according to the passed map key.
 * @param {String} $weight
 */
/**
 * Sets line-height property from line-height settings map - $setting-font-line-height according to the passed map key.
 * @param {String | Number} $height
 */
/**
 * Povides transition property configured by the passed parameters.
 * @param {String} $props
 * @param {Number} $duration [$setting-effect-default-duration]
 * @param {String} $ease [$setting-effect-default-ease]
 */
/**
 * Forces element visibility.
 */
/**
 * Forces element invisibility.
 */
/**
 * Provides global class names with spacing properties set from $setting-spacing map.
 * @param {String} $name Main selector name.
 * @param {List} $sides [[]] List of sides to set properties.
 */
/**
 * Returns 0 or the first value from the $edges list.
 * @param {List} $edges [$setting-breakpoints] List length must be less than or equal to 2.
 * @return {Base}
 */
/**
 * Returns null or the last value from the $edges list.
 * @param {List} $edges [$setting-breakpoints] List length must be less than or equal to 2.
 * @return {Base}
 */
/**
 * Sets screen media query with min-width set to $min parameter.
 * @param $min {Number} [0]
 * @content Extends mixin with properties for media query.
 */
/**
 * Sets screen media query with breakpoints range passed as parameters.
 * @param {Number} $min [0]
 * @param {Number} $max [$setting-grid-max-width]
 * @content Extends mixin with properties for media query.
 */
/**
 * Sets screen media query with max-width set to $max parameter.
 * @param {Number} $max [$setting-grid-max-width]
 * @content Extends mixin with properties for media query.
 */
/**
 * Sets screen media query with breakpoints range passed to parameters or
 * with min-width query if only one parameter is passed.
 * @param {Number} $max [$setting-grid-max-width]
 * @content Extends mixin with properties for media query.
 */
/**
 * Returns column ratio in relation to columns count.
 * @param {Number} $column
 * @param {Number} $columns [$setting-grid-columns]
 * @return {Number}
 */
/**
 * Adds clearing for element with floated child elements.
 */
/**
 * Adds a box-shadow with basic values.
 */
/**
 * Checks parameter on presence in the blacklist of imports setting list.
 * @param {List} $keywords
 * @content Extends mixin with properties if $keywords is not on the blacklist.
 */
/*
    https://github.com/justinskolnick/unitize
    Copyright © 2012-2013 Justin Skolnick

    Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

    The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

    THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
*/
/*
    https://github.com/justinskolnick/unitize
    Copyright © 2012-2013 Justin Skolnick

    Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

    The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

    THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
*/
/* stylelint-disable max-nesting-depth */
/* stylelint-enable max-nesting-depth */
/* stylelint-disable media-query-list-comma-newline-after,media-query-list-comma-space-after */
/* stylelint-disable declaration-no-important */
/**
 * Defines z-index value for the side drawer context.
 */
.summary-overview__grand-total-price {
  font-size: 1.1rem;
  line-height: 1.4;
}

/**
 * @deprecated Use company-page-business-unit-chart-item mixin instead.
 */
/**
 * @deprecated Use company-user-agent-widget-company-user-list mixin instead.
 */
/**
 * @deprecated Use price-product-volume-widget-volume-price mixin instead.
 */
/**
 * @deprecated Use price-product-volume-widget-volume-price-table mixin instead.
 */
/**
 * @deprecated Use product-packaging-unit-widget-packaging-unit-cart mixin instead.
 */
/**
 * @deprecated Use product-search-widget-product-quick-add-form mixin instead.
 */
.collapsible-list__button {
  background-color: rgba(255, 255, 255, 0);
  color: #fecc00;
  cursor: pointer;
}
.collapsible-list__button:hover {
  text-decoration: underline;
}
.collapsible-list__button::after {
  content: attr(data-show);
}
.collapsible-list__button--shown::after {
  content: attr(data-hide);
}
.collapsible-list__button-content {
  display: none;
}

/* fe-sniffer:disabled correct-scss-component-structure */
/**
 * @deprecated Use shop-ui-quote-status-color mixin instead.
 */
/**
 * @deprecated Use tabs-widget-search-tabs mixin instead.
 */
/**
 * Provides global class names for spacings.
 */
/**
 * Provides global class names for text styling.
 */
/**
 * Provides class name for text styling with color property specified by parameters.
 * @param {String} $action Sets class name postfix.
 * @param {Color} $setting-color-action Sets color property.
 * @content Extendable mixin.
 */
/**
 * Provides global class names for the elements' float alignment.
 */
/**
 * Provides global class names for display behavior with additional responsive modifiers.
 */
.spacing {
  margin: 0.5rem;
}
.spacing--xxxl {
  margin: 5rem;
}
.spacing--xxl {
  margin: 4rem;
}
.spacing--xl {
  margin: 3rem;
}
.spacing--large {
  margin: 2.5rem;
}
.spacing--biggest {
  margin: 2rem;
}
.spacing--bigger {
  margin: 1.5rem;
}
.spacing--big {
  margin: 1rem;
}
.spacing--medium {
  margin: 0.75rem;
}
.spacing--medium-small {
  margin: 0.63rem;
}
.spacing--small {
  margin: 0.25rem;
}
.spacing--reset {
  margin: 0;
}

.spacing--inner {
  margin: 0;
  padding: 0.5rem;
}
.spacing--inner.spacing--xxxl {
  margin: 0;
  padding: 5rem;
}

.spacing--inner.spacing--xxl {
  margin: 0;
  padding: 4rem;
}

.spacing--inner.spacing--xl {
  margin: 0;
  padding: 3rem;
}

.spacing--inner.spacing--large {
  margin: 0;
  padding: 2.5rem;
}

.spacing--inner.spacing--biggest {
  margin: 0;
  padding: 2rem;
}

.spacing--inner.spacing--bigger {
  margin: 0;
  padding: 1.5rem;
}

.spacing--inner.spacing--big {
  margin: 0;
  padding: 1rem;
}

.spacing--inner.spacing--medium {
  margin: 0;
  padding: 0.75rem;
}

.spacing--inner.spacing--medium-small {
  margin: 0;
  padding: 0.63rem;
}

.spacing--inner.spacing--small {
  margin: 0;
  padding: 0.25rem;
}

.spacing--inner.spacing--reset {
  margin: 0;
  padding: 0;
}

.spacing-top {
  margin-top: 0.5rem;
}
.spacing-top--xxxl {
  margin-top: 5rem;
}
.spacing-top--xxl {
  margin-top: 4rem;
}
.spacing-top--xl {
  margin-top: 3rem;
}
.spacing-top--large {
  margin-top: 2.5rem;
}
.spacing-top--biggest {
  margin-top: 2rem;
}
.spacing-top--bigger {
  margin-top: 1.5rem;
}
.spacing-top--big {
  margin-top: 1rem;
}
.spacing-top--medium {
  margin-top: 0.75rem;
}
.spacing-top--medium-small {
  margin-top: 0.63rem;
}
.spacing-top--small {
  margin-top: 0.25rem;
}
.spacing-top--reset {
  margin-top: 0;
}

.spacing-top--inner {
  margin-top: 0;
  padding-top: 0.5rem;
}
.spacing-top--inner.spacing-top--xxxl {
  margin-top: 0;
  padding-top: 5rem;
}

.spacing-top--inner.spacing-top--xxl {
  margin-top: 0;
  padding-top: 4rem;
}

.spacing-top--inner.spacing-top--xl {
  margin-top: 0;
  padding-top: 3rem;
}

.spacing-top--inner.spacing-top--large {
  margin-top: 0;
  padding-top: 2.5rem;
}

.spacing-top--inner.spacing-top--biggest {
  margin-top: 0;
  padding-top: 2rem;
}

.spacing-top--inner.spacing-top--bigger {
  margin-top: 0;
  padding-top: 1.5rem;
}

.spacing-top--inner.spacing-top--big {
  margin-top: 0;
  padding-top: 1rem;
}

.spacing-top--inner.spacing-top--medium {
  margin-top: 0;
  padding-top: 0.75rem;
}

.spacing-top--inner.spacing-top--medium-small {
  margin-top: 0;
  padding-top: 0.63rem;
}

.spacing-top--inner.spacing-top--small {
  margin-top: 0;
  padding-top: 0.25rem;
}

.spacing-top--inner.spacing-top--reset {
  margin-top: 0;
  padding-top: 0;
}

.spacing-bottom {
  margin-bottom: 0.5rem;
}
.spacing-bottom--xxxl {
  margin-bottom: 5rem;
}
.spacing-bottom--xxl {
  margin-bottom: 4rem;
}
.spacing-bottom--xl {
  margin-bottom: 3rem;
}
.spacing-bottom--large {
  margin-bottom: 2.5rem;
}
.spacing-bottom--biggest {
  margin-bottom: 2rem;
}
.spacing-bottom--bigger {
  margin-bottom: 1.5rem;
}
.spacing-bottom--big {
  margin-bottom: 1rem;
}
.spacing-bottom--medium {
  margin-bottom: 0.75rem;
}
.spacing-bottom--medium-small {
  margin-bottom: 0.63rem;
}
.spacing-bottom--small {
  margin-bottom: 0.25rem;
}
.spacing-bottom--reset {
  margin-bottom: 0;
}

.spacing-bottom--inner {
  margin-bottom: 0;
  padding-bottom: 0.5rem;
}
.spacing-bottom--inner.spacing-bottom--xxxl {
  margin-bottom: 0;
  padding-bottom: 5rem;
}

.spacing-bottom--inner.spacing-bottom--xxl {
  margin-bottom: 0;
  padding-bottom: 4rem;
}

.spacing-bottom--inner.spacing-bottom--xl {
  margin-bottom: 0;
  padding-bottom: 3rem;
}

.spacing-bottom--inner.spacing-bottom--large {
  margin-bottom: 0;
  padding-bottom: 2.5rem;
}

.spacing-bottom--inner.spacing-bottom--biggest {
  margin-bottom: 0;
  padding-bottom: 2rem;
}

.spacing-bottom--inner.spacing-bottom--bigger {
  margin-bottom: 0;
  padding-bottom: 1.5rem;
}

.spacing-bottom--inner.spacing-bottom--big {
  margin-bottom: 0;
  padding-bottom: 1rem;
}

.spacing-bottom--inner.spacing-bottom--medium {
  margin-bottom: 0;
  padding-bottom: 0.75rem;
}

.spacing-bottom--inner.spacing-bottom--medium-small {
  margin-bottom: 0;
  padding-bottom: 0.63rem;
}

.spacing-bottom--inner.spacing-bottom--small {
  margin-bottom: 0;
  padding-bottom: 0.25rem;
}

.spacing-bottom--inner.spacing-bottom--reset {
  margin-bottom: 0;
  padding-bottom: 0;
}

.spacing-left {
  margin-left: 0.5rem;
}
.spacing-left--xxxl {
  margin-left: 5rem;
}
.spacing-left--xxl {
  margin-left: 4rem;
}
.spacing-left--xl {
  margin-left: 3rem;
}
.spacing-left--large {
  margin-left: 2.5rem;
}
.spacing-left--biggest {
  margin-left: 2rem;
}
.spacing-left--bigger {
  margin-left: 1.5rem;
}
.spacing-left--big {
  margin-left: 1rem;
}
.spacing-left--medium {
  margin-left: 0.75rem;
}
.spacing-left--medium-small {
  margin-left: 0.63rem;
}
.spacing-left--small {
  margin-left: 0.25rem;
}
.spacing-left--reset {
  margin-left: 0;
}

.spacing-left--inner {
  margin-left: 0;
  padding-left: 0.5rem;
}
.spacing-left--inner.spacing-left--xxxl {
  margin-left: 0;
  padding-left: 5rem;
}

.spacing-left--inner.spacing-left--xxl {
  margin-left: 0;
  padding-left: 4rem;
}

.spacing-left--inner.spacing-left--xl {
  margin-left: 0;
  padding-left: 3rem;
}

.spacing-left--inner.spacing-left--large {
  margin-left: 0;
  padding-left: 2.5rem;
}

.spacing-left--inner.spacing-left--biggest {
  margin-left: 0;
  padding-left: 2rem;
}

.spacing-left--inner.spacing-left--bigger {
  margin-left: 0;
  padding-left: 1.5rem;
}

.spacing-left--inner.spacing-left--big {
  margin-left: 0;
  padding-left: 1rem;
}

.spacing-left--inner.spacing-left--medium {
  margin-left: 0;
  padding-left: 0.75rem;
}

.spacing-left--inner.spacing-left--medium-small {
  margin-left: 0;
  padding-left: 0.63rem;
}

.spacing-left--inner.spacing-left--small {
  margin-left: 0;
  padding-left: 0.25rem;
}

.spacing-left--inner.spacing-left--reset {
  margin-left: 0;
  padding-left: 0;
}

.spacing-right {
  margin-right: 0.5rem;
}
.spacing-right--xxxl {
  margin-right: 5rem;
}
.spacing-right--xxl {
  margin-right: 4rem;
}
.spacing-right--xl {
  margin-right: 3rem;
}
.spacing-right--large {
  margin-right: 2.5rem;
}
.spacing-right--biggest {
  margin-right: 2rem;
}
.spacing-right--bigger {
  margin-right: 1.5rem;
}
.spacing-right--big {
  margin-right: 1rem;
}
.spacing-right--medium {
  margin-right: 0.75rem;
}
.spacing-right--medium-small {
  margin-right: 0.63rem;
}
.spacing-right--small {
  margin-right: 0.25rem;
}
.spacing-right--reset {
  margin-right: 0;
}

.spacing-right--inner {
  margin-right: 0;
  padding-right: 0.5rem;
}
.spacing-right--inner.spacing-right--xxxl {
  margin-right: 0;
  padding-right: 5rem;
}

.spacing-right--inner.spacing-right--xxl {
  margin-right: 0;
  padding-right: 4rem;
}

.spacing-right--inner.spacing-right--xl {
  margin-right: 0;
  padding-right: 3rem;
}

.spacing-right--inner.spacing-right--large {
  margin-right: 0;
  padding-right: 2.5rem;
}

.spacing-right--inner.spacing-right--biggest {
  margin-right: 0;
  padding-right: 2rem;
}

.spacing-right--inner.spacing-right--bigger {
  margin-right: 0;
  padding-right: 1.5rem;
}

.spacing-right--inner.spacing-right--big {
  margin-right: 0;
  padding-right: 1rem;
}

.spacing-right--inner.spacing-right--medium {
  margin-right: 0;
  padding-right: 0.75rem;
}

.spacing-right--inner.spacing-right--medium-small {
  margin-right: 0;
  padding-right: 0.63rem;
}

.spacing-right--inner.spacing-right--small {
  margin-right: 0;
  padding-right: 0.25rem;
}

.spacing-right--inner.spacing-right--reset {
  margin-right: 0;
  padding-right: 0;
}

.spacing-x {
  margin-left: 0.5rem;
  margin-right: 0.5rem;
}
.spacing-x--xxxl {
  margin-left: 5rem;
  margin-right: 5rem;
}
.spacing-x--xxl {
  margin-left: 4rem;
  margin-right: 4rem;
}
.spacing-x--xl {
  margin-left: 3rem;
  margin-right: 3rem;
}
.spacing-x--large {
  margin-left: 2.5rem;
  margin-right: 2.5rem;
}
.spacing-x--biggest {
  margin-left: 2rem;
  margin-right: 2rem;
}
.spacing-x--bigger {
  margin-left: 1.5rem;
  margin-right: 1.5rem;
}
.spacing-x--big {
  margin-left: 1rem;
  margin-right: 1rem;
}
.spacing-x--medium {
  margin-left: 0.75rem;
  margin-right: 0.75rem;
}
.spacing-x--medium-small {
  margin-left: 0.63rem;
  margin-right: 0.63rem;
}
.spacing-x--small {
  margin-left: 0.25rem;
  margin-right: 0.25rem;
}
.spacing-x--reset {
  margin-left: 0;
  margin-right: 0;
}

.spacing-x--inner {
  margin-left: 0;
  padding-left: 0.5rem;
  margin-right: 0;
  padding-right: 0.5rem;
}
.spacing-x--inner.spacing-x--xxxl {
  margin-left: 0;
  padding-left: 5rem;
  margin-right: 0;
  padding-right: 5rem;
}

.spacing-x--inner.spacing-x--xxl {
  margin-left: 0;
  padding-left: 4rem;
  margin-right: 0;
  padding-right: 4rem;
}

.spacing-x--inner.spacing-x--xl {
  margin-left: 0;
  padding-left: 3rem;
  margin-right: 0;
  padding-right: 3rem;
}

.spacing-x--inner.spacing-x--large {
  margin-left: 0;
  padding-left: 2.5rem;
  margin-right: 0;
  padding-right: 2.5rem;
}

.spacing-x--inner.spacing-x--biggest {
  margin-left: 0;
  padding-left: 2rem;
  margin-right: 0;
  padding-right: 2rem;
}

.spacing-x--inner.spacing-x--bigger {
  margin-left: 0;
  padding-left: 1.5rem;
  margin-right: 0;
  padding-right: 1.5rem;
}

.spacing-x--inner.spacing-x--big {
  margin-left: 0;
  padding-left: 1rem;
  margin-right: 0;
  padding-right: 1rem;
}

.spacing-x--inner.spacing-x--medium {
  margin-left: 0;
  padding-left: 0.75rem;
  margin-right: 0;
  padding-right: 0.75rem;
}

.spacing-x--inner.spacing-x--medium-small {
  margin-left: 0;
  padding-left: 0.63rem;
  margin-right: 0;
  padding-right: 0.63rem;
}

.spacing-x--inner.spacing-x--small {
  margin-left: 0;
  padding-left: 0.25rem;
  margin-right: 0;
  padding-right: 0.25rem;
}

.spacing-x--inner.spacing-x--reset {
  margin-left: 0;
  padding-left: 0;
  margin-right: 0;
  padding-right: 0;
}

.spacing-y {
  margin-top: 0.5rem;
  margin-bottom: 0.5rem;
}
.spacing-y--xxxl {
  margin-top: 5rem;
  margin-bottom: 5rem;
}
.spacing-y--xxl {
  margin-top: 4rem;
  margin-bottom: 4rem;
}
.spacing-y--xl {
  margin-top: 3rem;
  margin-bottom: 3rem;
}
.spacing-y--large {
  margin-top: 2.5rem;
  margin-bottom: 2.5rem;
}
.spacing-y--biggest {
  margin-top: 2rem;
  margin-bottom: 2rem;
}
.spacing-y--bigger {
  margin-top: 1.5rem;
  margin-bottom: 1.5rem;
}
.spacing-y--big {
  margin-top: 1rem;
  margin-bottom: 1rem;
}
.spacing-y--medium {
  margin-top: 0.75rem;
  margin-bottom: 0.75rem;
}
.spacing-y--medium-small {
  margin-top: 0.63rem;
  margin-bottom: 0.63rem;
}
.spacing-y--small {
  margin-top: 0.25rem;
  margin-bottom: 0.25rem;
}
.spacing-y--reset {
  margin-top: 0;
  margin-bottom: 0;
}

.spacing-y--inner {
  margin-top: 0;
  padding-top: 0.5rem;
  margin-bottom: 0;
  padding-bottom: 0.5rem;
}
.spacing-y--inner.spacing-y--xxxl {
  margin-top: 0;
  padding-top: 5rem;
  margin-bottom: 0;
  padding-bottom: 5rem;
}

.spacing-y--inner.spacing-y--xxl {
  margin-top: 0;
  padding-top: 4rem;
  margin-bottom: 0;
  padding-bottom: 4rem;
}

.spacing-y--inner.spacing-y--xl {
  margin-top: 0;
  padding-top: 3rem;
  margin-bottom: 0;
  padding-bottom: 3rem;
}

.spacing-y--inner.spacing-y--large {
  margin-top: 0;
  padding-top: 2.5rem;
  margin-bottom: 0;
  padding-bottom: 2.5rem;
}

.spacing-y--inner.spacing-y--biggest {
  margin-top: 0;
  padding-top: 2rem;
  margin-bottom: 0;
  padding-bottom: 2rem;
}

.spacing-y--inner.spacing-y--bigger {
  margin-top: 0;
  padding-top: 1.5rem;
  margin-bottom: 0;
  padding-bottom: 1.5rem;
}

.spacing-y--inner.spacing-y--big {
  margin-top: 0;
  padding-top: 1rem;
  margin-bottom: 0;
  padding-bottom: 1rem;
}

.spacing-y--inner.spacing-y--medium {
  margin-top: 0;
  padding-top: 0.75rem;
  margin-bottom: 0;
  padding-bottom: 0.75rem;
}

.spacing-y--inner.spacing-y--medium-small {
  margin-top: 0;
  padding-top: 0.63rem;
  margin-bottom: 0;
  padding-bottom: 0.63rem;
}

.spacing-y--inner.spacing-y--small {
  margin-top: 0;
  padding-top: 0.25rem;
  margin-bottom: 0;
  padding-bottom: 0.25rem;
}

.spacing-y--inner.spacing-y--reset {
  margin-top: 0;
  padding-top: 0;
  margin-bottom: 0;
  padding-bottom: 0;
}

.text-small {
  font-size: 0.9333333333rem;
}

.text-big {
  font-size: 2.4rem;
}

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

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

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

.text-alt {
  color: #4b4b4d;
}

.text-secondary {
  color: #1a171b;
}

.text-break {
  word-break: break-word;
}

.text-success {
  color: #019039;
}

.text-success-light {
  color: #abd18b;
}

.text-warning {
  color: #e89c30;
}

.text-alert {
  color: #e32213;
}

.text-info {
  color: #fecc00;
}

.text-neutral {
  color: #929292;
}

.clear::after {
  content: "";
  display: table;
  clear: both;
}

.float-left {
  float: left;
}

.float-right {
  float: right;
}

.float-none {
  float: none;
}

.is-hidden {
  display: none;
  /* stylelint-disable max-nesting-depth */
  /* stylelint-enable max-nesting-depth */
}
@media only screen and (min-width: 0) and (max-width: 549px) {
  .is-hidden-sm-only {
    display: none;
  }
}
@media only screen and (min-width: 0) and (max-width: 767px) {
  .is-hidden-sm-md {
    display: none;
  }
}
@media only screen and (min-width: 0) and (max-width: 1023px) {
  .is-hidden-sm-lg {
    display: none;
  }
}
@media only screen and (min-width: 0) and (max-width: 1199px) {
  .is-hidden-sm-xl {
    display: none;
  }
}
@media only screen and (min-width: 0) {
  .is-hidden-sm-xxl {
    display: none;
  }
}
@media only screen and (min-width: 0) and (max-width: 374px) {
  .is-hidden-sp-only {
    display: none;
  }
}
@media only screen and (min-width: 0) and (max-width: 767px) {
  .is-hidden-sp-md {
    display: none;
  }
}
@media only screen and (min-width: 0) and (max-width: 1023px) {
  .is-hidden-sp-lg {
    display: none;
  }
}
@media only screen and (min-width: 0) and (max-width: 1199px) {
  .is-hidden-sp-xl {
    display: none;
  }
}
@media only screen and (min-width: 0) {
  .is-hidden-sp-xxl {
    display: none;
  }
}
@media only screen and (min-width: 550px) and (max-width: 767px) {
  .is-hidden-md-only {
    display: none;
  }
}
@media only screen and (min-width: 550px) and (max-width: 1023px) {
  .is-hidden-md-lg {
    display: none;
  }
}
@media only screen and (min-width: 550px) and (max-width: 1199px) {
  .is-hidden-md-xl {
    display: none;
  }
}
@media only screen and (min-width: 550px) {
  .is-hidden-md-xxl {
    display: none;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1023px) {
  .is-hidden-lg-only {
    display: none;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1199px) {
  .is-hidden-lg-xl {
    display: none;
  }
}
@media only screen and (min-width: 768px) {
  .is-hidden-lg-xxl {
    display: none;
  }
}
@media only screen and (min-width: 1024px) and (max-width: 1199px) {
  .is-hidden-xl-only {
    display: none;
  }
}
@media only screen and (min-width: 1024px) {
  .is-hidden-xl-xxl {
    display: none;
  }
}
@media only screen and (min-width: 1200px) {
  .is-hidden-xxl-only {
    display: none;
  }
}

.is-visible {
  pointer-events: all;
  visibility: visible;
  opacity: 1;
}

.is-invisible {
  pointer-events: none;
  visibility: hidden;
  opacity: 0;
}

.is-scrollable {
  overflow: auto;
}

.is-not-scrollable {
  overflow: hidden;
}

.is-scrollable-x {
  overflow-x: auto;
}

.is-not-scrollable-x {
  overflow-x: hidden;
}

.is-scrollable-y {
  overflow-y: auto;
}

.is-not-scrollable-y {
  overflow-y: hidden;
}

.is-locked {
  overflow: hidden;
  width: 100%;
  height: 100%;
}

html > .is-locked-tablet,
html > .is-locked-mobile,
html > .is-locked {
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  overflow: hidden;
  height: 100%;
}
@media only screen and (min-width: 1024px) {
  html > .is-locked-tablet {
    overflow: visible;
    position: static;
  }
}
@media only screen and (min-width: 768px) {
  html > .is-locked-mobile {
    overflow: visible;
    position: static;
  }
}

/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9zcmMvQmVzdEl0L1l2ZXMvU2hvcFVpL1RoZW1lL2RlZmF1bHQvc3R5bGVzL3V0aWwuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxXQUFXLE1BQU07QUFDakIsV0FBVyxPQUFPO0FBQ2xCO0FBQ0E7QUFDQTtBQUNBLFdBQVcsTUFBTTtBQUNqQixXQUFXLE9BQU87QUFDbEI7QUFDQTtBQUNBO0FBQ0EsV0FBVyxnQkFBZ0I7QUFDM0I7QUFDQTtBQUNBO0FBQ0EsV0FBVyxPQUFPO0FBQ2xCO0FBQ0E7QUFDQTtBQUNBLFdBQVcsZ0JBQWdCO0FBQzNCO0FBQ0E7QUFDQTtBQUNBLFdBQVcsT0FBTztBQUNsQixXQUFXLE9BQU87QUFDbEIsV0FBVyxPQUFPO0FBQ2xCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFdBQVcsT0FBTztBQUNsQixXQUFXLEtBQUs7QUFDaEI7QUFDQTtBQUNBO0FBQ0EsV0FBVyxLQUFLO0FBQ2hCLFlBQVk7QUFDWjtBQUNBO0FBQ0E7QUFDQSxXQUFXLEtBQUs7QUFDaEIsWUFBWTtBQUNaO0FBQ0E7QUFDQTtBQUNBLGdCQUFnQixPQUFPO0FBQ3ZCO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsV0FBVyxPQUFPO0FBQ2xCLFdBQVcsT0FBTztBQUNsQjtBQUNBO0FBQ0E7QUFDQTtBQUNBLFdBQVcsT0FBTztBQUNsQjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsV0FBVyxPQUFPO0FBQ2xCO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsV0FBVyxPQUFPO0FBQ2xCLFdBQVcsT0FBTztBQUNsQixZQUFZO0FBQ1o7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsV0FBVyxLQUFLO0FBQ2hCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7O0FBRUE7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTs7QUFFQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLFdBQVcsT0FBTztBQUNsQixXQUFXLE1BQU07QUFDakI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsQyIsImZpbGUiOiIuL2Nzcy95dmVzX2RlZmF1bHQudXRpbC5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyJAY2hhcnNldCBcIlVURi04XCI7XG4vKipcbiAqIERlZmluZXMgdGhlIG1haW4gY29sb3Igb2YgdGhlIHNob3AgdGhlbWUuIFVzYWdlOiBwcmltYXJ5IGVsZW1lbnRzJyBiYWNrZ3JvdW5kIGFuZCBjb2xvci5cbiAqL1xuLyoqXG4gKiBEZWZpbmVzIGFsdGVybmF0aXZlIGNvbG9yIG9mIHRoZSBzaG9wIHRoZW1lLiBVc2FnZTogc2Vjb25kYXJ5IGVsZW1lbnRzJyBiYWNrZ3JvdW5kIGFuZCBjb2xvci5cbiAqL1xuLyoqXG4gKiBEZWZpbmVzIHdoaXRlIGNvbG9yLiBVc2FnZTogbm90IHRyYW5zcGFyZW50IGVsZW1lbnRzJyBiYWNrZ3JvdW5kIG9mIGRlZmF1bHQgYmFja2dyb3VuZC5cbiAqL1xuLyoqXG4gKiBEZWZpbmVzIGEgbGlnaHQgc2hhZGUgY29sb3IuIFVzYWdlOiBlbGVtZW50cycgYmFja2dyb3VuZCwgYm9yZGVycyBhbmQgdGV4dC5cbiAqL1xuLyoqXG4gKiBEZWZpbmVzIGEgbGlnaHRlciBzaGFkZSBjb2xvci4gVXNhZ2U6IGVsZW1lbnRzJyBiYWNrZ3JvdW5kLCBib3JkZXJzIGFuZCB0ZXh0LlxuICovXG4vKipcbiAqIERlZmluZXMgdGhlIGxpZ2h0ZXN0IHNoYWRlIGNvbG9yLiBVc2FnZTogZWxlbWVudHMnIGJhY2tncm91bmQsIGJvcmRlcnMgYW5kIHRleHQuXG4gKi9cbi8qKlxuICogRGVmaW5lcyB0aGUgc2hhZGUgb2YgdGhlIGJsYWNrIGNvbG9yLiBVc2FnZTogYXMgYSBiYXNlIG9mIGJsYWNrIGNvbG9yIGZvciBzZW1pLXRyYW5zcGFyZW50IGVsZW1lbnRzLlxuICovXG4vKipcbiAqIERlZmluZXMgYSBkYXJrIHNoYWRlIGNvbG9yLiBVc2FnZTogZWxlbWVudHMnIHRleHQgY29sb3IgdmFyaWFudC5cbiAqL1xuLyoqXG4gKiBEZWZpbmVzIGEgZGFya2VyIHNoYWRlIGNvbG9yLiBVc2FnZTogZWxlbWVudHMnIHRleHQgY29sb3IgdmFyaWFudC5cbiAqL1xuLyoqXG4gKiBEZWZpbmVzIHRoZSBkYXJrZXN0IHNoYWRlIGNvbG9yLiBVc2FnZTogZWxlbWVudHMnIHRleHQgY29sb3IgdmFyaWFudC5cbiAqL1xuLyoqXG4gKiBEZWZpbmVzIGEgdHJhbnNwYXJlbnQgY29sb3IuIFVzYWdlOiBlbGVtZW50cycgYmFja2dyb3VuZCwgYm9yZGVyLlxuICovXG4vKipcbiAqIERlZmluZXMgdGhlIG1haW4gYmFja2dyb3VuZCBjb2xvci4gVXNhZ2U6IGJvZHkgYW5kIHNpZGUtZHJhd2VyIGJhY2tncm91bmQuXG4gKi9cbi8qKlxuICogRGVmaW5lcyB0aGUgbWFpbiBjb2xvciBvZiB0ZXh0LiBVc2FnZTogZGVmYXVsdCBnbG9iYWwgdGV4dCBjb2xvci5cbiAqL1xuLyoqXG4gKiBEZWZpbmVzIGEgZGVmYXVsdCBnbG9iYWwgYm9yZGVyIGNvbG9yIGZvciB0aGUgaW5wdXQgZWxlbWVudHMuXG4gKi9cbi8qKlxuICogRGVmaW5lcyBhIGRlZmF1bHQgZ2xvYmFsIGJvcmRlciBjb2xvciBmb3IgdGhlIGlucHV0IGVsZW1lbnRzIG9uIGZvY3VzIGV2ZW50LlxuICovXG4vKipcbiAqIERlZmluZXMgYSBzaGFkb3cgc2hhZGUgYW5kIHRyYW5zcGFyZW5jeSBmb3IgdGhlIHNoYWRvd2VkIGVsZW1lbnRzLlxuICovXG4vKipcbiAqIERlZmluZXMgYSBkZWZhdWx0IG92ZXJsYXkgY29sb3IuIFVzYWdlOiBlbGVtZW50cyB3aXRoIG92ZXJsYXkgLSBzaWRlLWRyYXdlciwgcG9wdXBzIGV0Yy5cbiAqL1xuLyoqXG4gKiBEZWZpbmVzIGEgZGVmYXVsdCBpbWFnZSBvdmVybGF5IGNvbG9yLiBVc2FnZTogaW1hZ2VzIHdpdGggb3ZlcmxheSAtIGxhenktaW1hZ2UuXG4gKi9cbi8qKlxuICogRGVmaW5lcyBhY3Rpb24gY29sb3JzIG1hcC5cbiAqL1xuLyoqXG4gKiBEZWZpbmVzIGZvbnQgZmFtaWx5IHNldHRpbmcuIFVzYWdlOiBib2R5IGdsb2JhbCBmb250IHN0eWxlcy5cbiAqL1xuLyoqXG4gKiBEZWZpbmVzIGZvbnQgZmFtaWx5IHNldHRpbmcgZm9yIGNvZGUuIENhbiBiZSB1c2VkIGZvciBjb2RlIGFuZCBwcmUgZWxlbWVudHMuXG4gKi9cbi8qKlxuICogRGVmaW5lcyBiYXNpYyBmb250IHNpemUuIFVzYWdlOiBnbG9iYWwgYmFzaWMgZm9udCBzaXplLlxuICovXG4vKipcbiAqIEZvbnQgc2l6ZSB2YWx1ZXMgbWFwLiBVc2FnZTogbWl4aW5zIHByb3ZpZGluZyBzdHlsZXMgZm9yIGhlYWRpbmdzLCB0ZXh0IGVsZW1lbnRzIGV0Yy5cbiAqL1xuLyoqXG4gKiBGb250IHdlaWdodCB2YWx1ZXMgbWFwLiBVc2FnZTogbWl4aW4gdG8gc2V0IGZvbnQgd2VpZ2h0IHByb3BlcnR5LlxuICovXG4vKipcbiAqIEZvbnQgbGluZSBoZWlnaHQgdmFsdWVzIG1hcC4gVXNhZ2U6IG1peGlucyBwcm92aWRpbmcgc3R5bGVzIGZvciBoZWFkaW5ncywgdGV4dCBlbGVtZW50cyBldGMuXG4gKi9cbi8qKlxuICogRGVmaW5lcyBhIGRlZmF1bHQgZHVyYXRpb24gdmFsdWUgZm9yIHRoZSBhbmltYXRpb24gZWZmZWN0cy4gVXNhZ2U6IG1peGlucyBwcm92aWRpbmcgYW5pbWF0aW9uIHByb3BlcnRpZXMuXG4gKi9cbi8qKlxuICogRGVmaW5lcyBhIGRlZmF1bHQgdGltaW5nIGZ1bmN0aW9uIGZvciB0aGUgYW5pbWF0aW9uIGVmZmVjdHMuIFVzYWdlOiBtaXhpbnMgcHJvdmlkaW5nIGFuaW1hdGlvbiBwcm9wZXJ0aWVzLlxuICovXG4vKipcbiAqIERlZmluZXMgZGVmYXVsdCB6LWluZGV4IHZhbHVlLlxuICovXG4vKipcbiAqIERlZmluZXMgei1pbmRleCB2YWx1ZSBmb3IgdGhlIGZsb2F0aW5nIGVsZW1lbnRzLlxuICovXG4vKipcbiAqIERlZmluZXMgei1pbmRleCB2YWx1ZSBmb3IgdGhlIGhlYWRlciBjb250ZXh0LlxuICovXG4vKipcbiAqIERlZmluZXMgei1pbmRleCB2YWx1ZSBmb3IgdGhlIHNpZGUgZHJhd2VyIGNvbnRleHQuXG4gKi9cbi8qKlxuICogRGVmaW5lcyB6LWluZGV4IHZhbHVlIGZvciB0aGUgcG9wdXAuXG4gKi9cbi8qKlxuICogRGVmaW5lcyB6LWluZGV4IHZhbHVlIGZvciB0aGUgb3ZlcmxheS5cbiAqL1xuLyoqXG4gKiBEZWZpbmVzIHotaW5kZXggdmFsdWUgZm9yIHRoZSBub3RpZmljYXRpb24gYXJlYSBjb250ZXh0LlxuICovXG4vKipcbiAqIERlZmluZXMgei1pbmRleCB2YWx1ZSBmb3IgdGhlIHNlYXJjaCBzdWdnZXN0aW9ucyBjb250ZXh0LlxuICovXG4vKipcbiAqIERlZmluZXMgei1pbmRleCB2YWx1ZSBmb3IgdGhlIGFqYXggbG9hZGVyLlxuICovXG4vKipcbiAqIERlZmluZXMgei1pbmRleCB2YWx1ZSBmb3IgdGhlIHRvcCBuYXZpZ2F0aW9uIGNvbnRleHQuXG4gKi9cbi8qKlxuICogRGVmaW5lcyBzcGFjaW5nIHZhbHVlcyBtYXAuIFVzYWdlOiBzcGFjaW5nIGhlbHBlcnMgYW5kIG1peGlucy5cbiAqL1xuLyoqXG4gKiBEZWZpbmVzIGJyZWFrcG9pbnRzJyB2YWx1ZXMgZm9yIHJlc3BvbnNpdmUuXG4gKi9cbi8qKlxuICogRGVmaW5lcyBncmlkIHN5c3RlbSBjb2x1bW5zIGNvdW50LlxuICovXG4vKipcbiAqIERlZmluZXMgZ3JpZCBjb250YWluZXIgbWF4IHdpZHRoLlxuICovXG4vKipcbiAqIERlZmluZXMgZ3V0dGVycycgc2l6ZSBmb3IgZ3JpZCBcIndpdGgtZ3V0dGVyXCIgbW9kaWZpZXIuXG4gKi9cbi8qKlxuICogRGVmaW5lcyBpbXBvcnQgYmxhY2tsaXN0LiBVc2FnZTogaW1wb3J0IGhlbHBlci5cbiAqL1xuLyoqXG4gKiBQcm92aWRlcyBsaXN0IG9mIHByb3BlcmllcyBmb3IgcmVzZXQgdXNhZ2UuXG4gKi9cbi8qKlxuICogV3JhcHBlciBmdW5jdGlvbiBmb3IgdGhlIGRhcmtlbiBzYXNzIGZ1bmN0aW9uIHdpdGggYSBkZWZhdWx0IGRlZ3JlZSBwYXJhbWV0ZXIuXG4gKiBAcGFyYW0ge0NvbG9yfSAkc2V0dGluZy1jb2xvclxuICogQHBhcmFtIHtOdW1iZXJ9ICRkZWdyZWUgWzEwXVxuICovXG4vKipcbiAqIFdyYXBwZXIgZnVuY3Rpb24gZm9yIHRoZSBsaWdodGVuIHNhc3MgZnVuY3Rpb24gd2l0aCBhIGRlZmF1bHQgZGVncmVlIHBhcmFtZXRlci5cbiAqIEBwYXJhbSB7Q29sb3J9ICRzZXR0aW5nLWNvbG9yXG4gKiBAcGFyYW0ge051bWJlcn0gJGRlZ3JlZSBbMTBdXG4gKi9cbi8qKlxuICogU2V0cyBmb250LXNpemUgcHJvcGVydHkgZnJvbSBmb250IHNpemUgc2V0dGluZ3MgbWFwIC0gJHNldHRpbmctZm9udC1zaXplIGFjY29yZGluZyB0byB0aGUgcGFzc2VkIG1hcCBrZXkuXG4gKiBAcGFyYW0ge1N0cmluZyB8IE51bWJlcn0gJHNpemVcbiAqL1xuLyoqXG4gKiBTZXRzIGZvbnQtd2VpZ2h0IHByb3BlcnR5IGZyb20gZm9udCB3ZWlnaHQgc2V0dGluZ3MgbWFwIC0gJHNldHRpbmctZm9udC13ZWlnaHQgYWNjb3JkaW5nIHRvIHRoZSBwYXNzZWQgbWFwIGtleS5cbiAqIEBwYXJhbSB7U3RyaW5nfSAkd2VpZ2h0XG4gKi9cbi8qKlxuICogU2V0cyBsaW5lLWhlaWdodCBwcm9wZXJ0eSBmcm9tIGxpbmUtaGVpZ2h0IHNldHRpbmdzIG1hcCAtICRzZXR0aW5nLWZvbnQtbGluZS1oZWlnaHQgYWNjb3JkaW5nIHRvIHRoZSBwYXNzZWQgbWFwIGtleS5cbiAqIEBwYXJhbSB7U3RyaW5nIHwgTnVtYmVyfSAkaGVpZ2h0XG4gKi9cbi8qKlxuICogUG92aWRlcyB0cmFuc2l0aW9uIHByb3BlcnR5IGNvbmZpZ3VyZWQgYnkgdGhlIHBhc3NlZCBwYXJhbWV0ZXJzLlxuICogQHBhcmFtIHtTdHJpbmd9ICRwcm9wc1xuICogQHBhcmFtIHtOdW1iZXJ9ICRkdXJhdGlvbiBbJHNldHRpbmctZWZmZWN0LWRlZmF1bHQtZHVyYXRpb25dXG4gKiBAcGFyYW0ge1N0cmluZ30gJGVhc2UgWyRzZXR0aW5nLWVmZmVjdC1kZWZhdWx0LWVhc2VdXG4gKi9cbi8qKlxuICogRm9yY2VzIGVsZW1lbnQgdmlzaWJpbGl0eS5cbiAqL1xuLyoqXG4gKiBGb3JjZXMgZWxlbWVudCBpbnZpc2liaWxpdHkuXG4gKi9cbi8qKlxuICogUHJvdmlkZXMgZ2xvYmFsIGNsYXNzIG5hbWVzIHdpdGggc3BhY2luZyBwcm9wZXJ0aWVzIHNldCBmcm9tICRzZXR0aW5nLXNwYWNpbmcgbWFwLlxuICogQHBhcmFtIHtTdHJpbmd9ICRuYW1lIE1haW4gc2VsZWN0b3IgbmFtZS5cbiAqIEBwYXJhbSB7TGlzdH0gJHNpZGVzIFtbXV0gTGlzdCBvZiBzaWRlcyB0byBzZXQgcHJvcGVydGllcy5cbiAqL1xuLyoqXG4gKiBSZXR1cm5zIDAgb3IgdGhlIGZpcnN0IHZhbHVlIGZyb20gdGhlICRlZGdlcyBsaXN0LlxuICogQHBhcmFtIHtMaXN0fSAkZWRnZXMgWyRzZXR0aW5nLWJyZWFrcG9pbnRzXSBMaXN0IGxlbmd0aCBtdXN0IGJlIGxlc3MgdGhhbiBvciBlcXVhbCB0byAyLlxuICogQHJldHVybiB7QmFzZX1cbiAqL1xuLyoqXG4gKiBSZXR1cm5zIG51bGwgb3IgdGhlIGxhc3QgdmFsdWUgZnJvbSB0aGUgJGVkZ2VzIGxpc3QuXG4gKiBAcGFyYW0ge0xpc3R9ICRlZGdlcyBbJHNldHRpbmctYnJlYWtwb2ludHNdIExpc3QgbGVuZ3RoIG11c3QgYmUgbGVzcyB0aGFuIG9yIGVxdWFsIHRvIDIuXG4gKiBAcmV0dXJuIHtCYXNlfVxuICovXG4vKipcbiAqIFNldHMgc2NyZWVuIG1lZGlhIHF1ZXJ5IHdpdGggbWluLXdpZHRoIHNldCB0byAkbWluIHBhcmFtZXRlci5cbiAqIEBwYXJhbSAkbWluIHtOdW1iZXJ9IFswXVxuICogQGNvbnRlbnQgRXh0ZW5kcyBtaXhpbiB3aXRoIHByb3BlcnRpZXMgZm9yIG1lZGlhIHF1ZXJ5LlxuICovXG4vKipcbiAqIFNldHMgc2NyZWVuIG1lZGlhIHF1ZXJ5IHdpdGggYnJlYWtwb2ludHMgcmFuZ2UgcGFzc2VkIGFzIHBhcmFtZXRlcnMuXG4gKiBAcGFyYW0ge051bWJlcn0gJG1pbiBbMF1cbiAqIEBwYXJhbSB7TnVtYmVyfSAkbWF4IFskc2V0dGluZy1ncmlkLW1heC13aWR0aF1cbiAqIEBjb250ZW50IEV4dGVuZHMgbWl4aW4gd2l0aCBwcm9wZXJ0aWVzIGZvciBtZWRpYSBxdWVyeS5cbiAqL1xuLyoqXG4gKiBTZXRzIHNjcmVlbiBtZWRpYSBxdWVyeSB3aXRoIG1heC13aWR0aCBzZXQgdG8gJG1heCBwYXJhbWV0ZXIuXG4gKiBAcGFyYW0ge051bWJlcn0gJG1heCBbJHNldHRpbmctZ3JpZC1tYXgtd2lkdGhdXG4gKiBAY29udGVudCBFeHRlbmRzIG1peGluIHdpdGggcHJvcGVydGllcyBmb3IgbWVkaWEgcXVlcnkuXG4gKi9cbi8qKlxuICogU2V0cyBzY3JlZW4gbWVkaWEgcXVlcnkgd2l0aCBicmVha3BvaW50cyByYW5nZSBwYXNzZWQgdG8gcGFyYW1ldGVycyBvclxuICogd2l0aCBtaW4td2lkdGggcXVlcnkgaWYgb25seSBvbmUgcGFyYW1ldGVyIGlzIHBhc3NlZC5cbiAqIEBwYXJhbSB7TnVtYmVyfSAkbWF4IFskc2V0dGluZy1ncmlkLW1heC13aWR0aF1cbiAqIEBjb250ZW50IEV4dGVuZHMgbWl4aW4gd2l0aCBwcm9wZXJ0aWVzIGZvciBtZWRpYSBxdWVyeS5cbiAqL1xuLyoqXG4gKiBSZXR1cm5zIGNvbHVtbiByYXRpbyBpbiByZWxhdGlvbiB0byBjb2x1bW5zIGNvdW50LlxuICogQHBhcmFtIHtOdW1iZXJ9ICRjb2x1bW5cbiAqIEBwYXJhbSB7TnVtYmVyfSAkY29sdW1ucyBbJHNldHRpbmctZ3JpZC1jb2x1bW5zXVxuICogQHJldHVybiB7TnVtYmVyfVxuICovXG4vKipcbiAqIEFkZHMgY2xlYXJpbmcgZm9yIGVsZW1lbnQgd2l0aCBmbG9hdGVkIGNoaWxkIGVsZW1lbnRzLlxuICovXG4vKipcbiAqIEFkZHMgYSBib3gtc2hhZG93IHdpdGggYmFzaWMgdmFsdWVzLlxuICovXG4vKipcbiAqIENoZWNrcyBwYXJhbWV0ZXIgb24gcHJlc2VuY2UgaW4gdGhlIGJsYWNrbGlzdCBvZiBpbXBvcnRzIHNldHRpbmcgbGlzdC5cbiAqIEBwYXJhbSB7TGlzdH0gJGtleXdvcmRzXG4gKiBAY29udGVudCBFeHRlbmRzIG1peGluIHdpdGggcHJvcGVydGllcyBpZiAka2V5d29yZHMgaXMgbm90IG9uIHRoZSBibGFja2xpc3QuXG4gKi9cbi8qXG4gICAgaHR0cHM6Ly9naXRodWIuY29tL2p1c3RpbnNrb2xuaWNrL3VuaXRpemVcbiAgICBDb3B5cmlnaHQgwqkgMjAxMi0yMDEzIEp1c3RpbiBTa29sbmlja1xuXG4gICAgUGVybWlzc2lvbiBpcyBoZXJlYnkgZ3JhbnRlZCwgZnJlZSBvZiBjaGFyZ2UsIHRvIGFueSBwZXJzb24gb2J0YWluaW5nIGEgY29weSBvZiB0aGlzIHNvZnR3YXJlIGFuZCBhc3NvY2lhdGVkIGRvY3VtZW50YXRpb24gZmlsZXMgKHRoZSBcIlNvZnR3YXJlXCIpLCB0byBkZWFsIGluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uIHRoZSByaWdodHMgdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbCBjb3BpZXMgb2YgdGhlIFNvZnR3YXJlLCBhbmQgdG8gcGVybWl0IHBlcnNvbnMgdG8gd2hvbSB0aGUgU29mdHdhcmUgaXMgZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczpcblxuICAgIFRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluIGFsbCBjb3BpZXMgb3Igc3Vic3RhbnRpYWwgcG9ydGlvbnMgb2YgdGhlIFNvZnR3YXJlLlxuXG4gICAgVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEIFwiQVMgSVNcIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQUkVTUyBPUiBJTVBMSUVELCBJTkNMVURJTkcgQlVUIE5PVCBMSU1JVEVEIFRPIFRIRSBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSwgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQU5EIE5PTklORlJJTkdFTUVOVC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIEFVVEhPUlMgT1IgQ09QWVJJR0hUIEhPTERFUlMgQkUgTElBQkxFIEZPUiBBTlkgQ0xBSU0sIERBTUFHRVMgT1IgT1RIRVIgTElBQklMSVRZLCBXSEVUSEVSIElOIEFOIEFDVElPTiBPRiBDT05UUkFDVCwgVE9SVCBPUiBPVEhFUldJU0UsIEFSSVNJTkcgRlJPTSwgT1VUIE9GIE9SIElOIENPTk5FQ1RJT04gV0lUSCBUSEUgU09GVFdBUkUgT1IgVEhFIFVTRSBPUiBPVEhFUiBERUFMSU5HUyBJTiBUSEUgU09GVFdBUkUuXG4qL1xuLypcbiAgICBodHRwczovL2dpdGh1Yi5jb20vanVzdGluc2tvbG5pY2svdW5pdGl6ZVxuICAgIENvcHlyaWdodCDCqSAyMDEyLTIwMTMgSnVzdGluIFNrb2xuaWNrXG5cbiAgICBQZXJtaXNzaW9uIGlzIGhlcmVieSBncmFudGVkLCBmcmVlIG9mIGNoYXJnZSwgdG8gYW55IHBlcnNvbiBvYnRhaW5pbmcgYSBjb3B5IG9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlIFwiU29mdHdhcmVcIiksIHRvIGRlYWwgaW4gdGhlIFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24gdGhlIHJpZ2h0cyB0byB1c2UsIGNvcHksIG1vZGlmeSwgbWVyZ2UsIHB1Ymxpc2gsIGRpc3RyaWJ1dGUsIHN1YmxpY2Vuc2UsIGFuZC9vciBzZWxsIGNvcGllcyBvZiB0aGUgU29mdHdhcmUsIGFuZCB0byBwZXJtaXQgcGVyc29ucyB0byB3aG9tIHRoZSBTb2Z0d2FyZSBpcyBmdXJuaXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOlxuXG4gICAgVGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UgYW5kIHRoaXMgcGVybWlzc2lvbiBub3RpY2Ugc2hhbGwgYmUgaW5jbHVkZWQgaW4gYWxsIGNvcGllcyBvciBzdWJzdGFudGlhbCBwb3J0aW9ucyBvZiB0aGUgU29mdHdhcmUuXG5cbiAgICBUSEUgU09GVFdBUkUgSVMgUFJPVklERUQgXCJBUyBJU1wiLCBXSVRIT1VUIFdBUlJBTlRZIE9GIEFOWSBLSU5ELCBFWFBSRVNTIE9SIElNUExJRUQsIElOQ0xVRElORyBCVVQgTk9UIExJTUlURUQgVE8gVEhFIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZLCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBTkQgTk9OSU5GUklOR0VNRU5ULiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQVVUSE9SUyBPUiBDT1BZUklHSFQgSE9MREVSUyBCRSBMSUFCTEUgRk9SIEFOWSBDTEFJTSwgREFNQUdFUyBPUiBPVEhFUiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQU4gQUNUSU9OIE9GIENPTlRSQUNULCBUT1JUIE9SIE9USEVSV0lTRSwgQVJJU0lORyBGUk9NLCBPVVQgT0YgT1IgSU4gQ09OTkVDVElPTiBXSVRIIFRIRSBTT0ZUV0FSRSBPUiBUSEUgVVNFIE9SIE9USEVSIERFQUxJTkdTIElOIFRIRSBTT0ZUV0FSRS5cbiovXG4vKiBzdHlsZWxpbnQtZGlzYWJsZSBtYXgtbmVzdGluZy1kZXB0aCAqL1xuLyogc3R5bGVsaW50LWVuYWJsZSBtYXgtbmVzdGluZy1kZXB0aCAqL1xuLyogc3R5bGVsaW50LWRpc2FibGUgbWVkaWEtcXVlcnktbGlzdC1jb21tYS1uZXdsaW5lLWFmdGVyLG1lZGlhLXF1ZXJ5LWxpc3QtY29tbWEtc3BhY2UtYWZ0ZXIgKi9cbi8qIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudCAqL1xuLyoqXG4gKiBEZWZpbmVzIHotaW5kZXggdmFsdWUgZm9yIHRoZSBzaWRlIGRyYXdlciBjb250ZXh0LlxuICovXG4uc3VtbWFyeS1vdmVydmlld19fZ3JhbmQtdG90YWwtcHJpY2Uge1xuICBmb250LXNpemU6IDEuMXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNDtcbn1cblxuLyoqXG4gKiBAZGVwcmVjYXRlZCBVc2UgY29tcGFueS1wYWdlLWJ1c2luZXNzLXVuaXQtY2hhcnQtaXRlbSBtaXhpbiBpbnN0ZWFkLlxuICovXG4vKipcbiAqIEBkZXByZWNhdGVkIFVzZSBjb21wYW55LXVzZXItYWdlbnQtd2lkZ2V0LWNvbXBhbnktdXNlci1saXN0IG1peGluIGluc3RlYWQuXG4gKi9cbi8qKlxuICogQGRlcHJlY2F0ZWQgVXNlIHByaWNlLXByb2R1Y3Qtdm9sdW1lLXdpZGdldC12b2x1bWUtcHJpY2UgbWl4aW4gaW5zdGVhZC5cbiAqL1xuLyoqXG4gKiBAZGVwcmVjYXRlZCBVc2UgcHJpY2UtcHJvZHVjdC12b2x1bWUtd2lkZ2V0LXZvbHVtZS1wcmljZS10YWJsZSBtaXhpbiBpbnN0ZWFkLlxuICovXG4vKipcbiAqIEBkZXByZWNhdGVkIFVzZSBwcm9kdWN0LXBhY2thZ2luZy11bml0LXdpZGdldC1wYWNrYWdpbmctdW5pdC1jYXJ0IG1peGluIGluc3RlYWQuXG4gKi9cbi8qKlxuICogQGRlcHJlY2F0ZWQgVXNlIHByb2R1Y3Qtc2VhcmNoLXdpZGdldC1wcm9kdWN0LXF1aWNrLWFkZC1mb3JtIG1peGluIGluc3RlYWQuXG4gKi9cbi5jb2xsYXBzaWJsZS1saXN0X19idXR0b24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDApO1xuICBjb2xvcjogI2ZlY2MwMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuLmNvbGxhcHNpYmxlLWxpc3RfX2J1dHRvbjpob3ZlciB7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xufVxuLmNvbGxhcHNpYmxlLWxpc3RfX2J1dHRvbjo6YWZ0ZXIge1xuICBjb250ZW50OiBhdHRyKGRhdGEtc2hvdyk7XG59XG4uY29sbGFwc2libGUtbGlzdF9fYnV0dG9uLS1zaG93bjo6YWZ0ZXIge1xuICBjb250ZW50OiBhdHRyKGRhdGEtaGlkZSk7XG59XG4uY29sbGFwc2libGUtbGlzdF9fYnV0dG9uLWNvbnRlbnQge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4vKiBmZS1zbmlmZmVyOmRpc2FibGVkIGNvcnJlY3Qtc2Nzcy1jb21wb25lbnQtc3RydWN0dXJlICovXG4vKipcbiAqIEBkZXByZWNhdGVkIFVzZSBzaG9wLXVpLXF1b3RlLXN0YXR1cy1jb2xvciBtaXhpbiBpbnN0ZWFkLlxuICovXG4vKipcbiAqIEBkZXByZWNhdGVkIFVzZSB0YWJzLXdpZGdldC1zZWFyY2gtdGFicyBtaXhpbiBpbnN0ZWFkLlxuICovXG4vKipcbiAqIFByb3ZpZGVzIGdsb2JhbCBjbGFzcyBuYW1lcyBmb3Igc3BhY2luZ3MuXG4gKi9cbi8qKlxuICogUHJvdmlkZXMgZ2xvYmFsIGNsYXNzIG5hbWVzIGZvciB0ZXh0IHN0eWxpbmcuXG4gKi9cbi8qKlxuICogUHJvdmlkZXMgY2xhc3MgbmFtZSBmb3IgdGV4dCBzdHlsaW5nIHdpdGggY29sb3IgcHJvcGVydHkgc3BlY2lmaWVkIGJ5IHBhcmFtZXRlcnMuXG4gKiBAcGFyYW0ge1N0cmluZ30gJGFjdGlvbiBTZXRzIGNsYXNzIG5hbWUgcG9zdGZpeC5cbiAqIEBwYXJhbSB7Q29sb3J9ICRzZXR0aW5nLWNvbG9yLWFjdGlvbiBTZXRzIGNvbG9yIHByb3BlcnR5LlxuICogQGNvbnRlbnQgRXh0ZW5kYWJsZSBtaXhpbi5cbiAqL1xuLyoqXG4gKiBQcm92aWRlcyBnbG9iYWwgY2xhc3MgbmFtZXMgZm9yIHRoZSBlbGVtZW50cycgZmxvYXQgYWxpZ25tZW50LlxuICovXG4vKipcbiAqIFByb3ZpZGVzIGdsb2JhbCBjbGFzcyBuYW1lcyBmb3IgZGlzcGxheSBiZWhhdmlvciB3aXRoIGFkZGl0aW9uYWwgcmVzcG9uc2l2ZSBtb2RpZmllcnMuXG4gKi9cbi5zcGFjaW5nIHtcbiAgbWFyZ2luOiAwLjVyZW07XG59XG4uc3BhY2luZy0teHh4bCB7XG4gIG1hcmdpbjogNXJlbTtcbn1cbi5zcGFjaW5nLS14eGwge1xuICBtYXJnaW46IDRyZW07XG59XG4uc3BhY2luZy0teGwge1xuICBtYXJnaW46IDNyZW07XG59XG4uc3BhY2luZy0tbGFyZ2Uge1xuICBtYXJnaW46IDIuNXJlbTtcbn1cbi5zcGFjaW5nLS1iaWdnZXN0IHtcbiAgbWFyZ2luOiAycmVtO1xufVxuLnNwYWNpbmctLWJpZ2dlciB7XG4gIG1hcmdpbjogMS41cmVtO1xufVxuLnNwYWNpbmctLWJpZyB7XG4gIG1hcmdpbjogMXJlbTtcbn1cbi5zcGFjaW5nLS1tZWRpdW0ge1xuICBtYXJnaW46IDAuNzVyZW07XG59XG4uc3BhY2luZy0tbWVkaXVtLXNtYWxsIHtcbiAgbWFyZ2luOiAwLjYzcmVtO1xufVxuLnNwYWNpbmctLXNtYWxsIHtcbiAgbWFyZ2luOiAwLjI1cmVtO1xufVxuLnNwYWNpbmctLXJlc2V0IHtcbiAgbWFyZ2luOiAwO1xufVxuXG4uc3BhY2luZy0taW5uZXIge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDAuNXJlbTtcbn1cbi5zcGFjaW5nLS1pbm5lci5zcGFjaW5nLS14eHhsIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiA1cmVtO1xufVxuXG4uc3BhY2luZy0taW5uZXIuc3BhY2luZy0teHhsIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiA0cmVtO1xufVxuXG4uc3BhY2luZy0taW5uZXIuc3BhY2luZy0teGwge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDNyZW07XG59XG5cbi5zcGFjaW5nLS1pbm5lci5zcGFjaW5nLS1sYXJnZSB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMi41cmVtO1xufVxuXG4uc3BhY2luZy0taW5uZXIuc3BhY2luZy0tYmlnZ2VzdCB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMnJlbTtcbn1cblxuLnNwYWNpbmctLWlubmVyLnNwYWNpbmctLWJpZ2dlciB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMS41cmVtO1xufVxuXG4uc3BhY2luZy0taW5uZXIuc3BhY2luZy0tYmlnIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAxcmVtO1xufVxuXG4uc3BhY2luZy0taW5uZXIuc3BhY2luZy0tbWVkaXVtIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwLjc1cmVtO1xufVxuXG4uc3BhY2luZy0taW5uZXIuc3BhY2luZy0tbWVkaXVtLXNtYWxsIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwLjYzcmVtO1xufVxuXG4uc3BhY2luZy0taW5uZXIuc3BhY2luZy0tc21hbGwge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDAuMjVyZW07XG59XG5cbi5zcGFjaW5nLS1pbm5lci5zcGFjaW5nLS1yZXNldCB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbn1cblxuLnNwYWNpbmctdG9wIHtcbiAgbWFyZ2luLXRvcDogMC41cmVtO1xufVxuLnNwYWNpbmctdG9wLS14eHhsIHtcbiAgbWFyZ2luLXRvcDogNXJlbTtcbn1cbi5zcGFjaW5nLXRvcC0teHhsIHtcbiAgbWFyZ2luLXRvcDogNHJlbTtcbn1cbi5zcGFjaW5nLXRvcC0teGwge1xuICBtYXJnaW4tdG9wOiAzcmVtO1xufVxuLnNwYWNpbmctdG9wLS1sYXJnZSB7XG4gIG1hcmdpbi10b3A6IDIuNXJlbTtcbn1cbi5zcGFjaW5nLXRvcC0tYmlnZ2VzdCB7XG4gIG1hcmdpbi10b3A6IDJyZW07XG59XG4uc3BhY2luZy10b3AtLWJpZ2dlciB7XG4gIG1hcmdpbi10b3A6IDEuNXJlbTtcbn1cbi5zcGFjaW5nLXRvcC0tYmlnIHtcbiAgbWFyZ2luLXRvcDogMXJlbTtcbn1cbi5zcGFjaW5nLXRvcC0tbWVkaXVtIHtcbiAgbWFyZ2luLXRvcDogMC43NXJlbTtcbn1cbi5zcGFjaW5nLXRvcC0tbWVkaXVtLXNtYWxsIHtcbiAgbWFyZ2luLXRvcDogMC42M3JlbTtcbn1cbi5zcGFjaW5nLXRvcC0tc21hbGwge1xuICBtYXJnaW4tdG9wOiAwLjI1cmVtO1xufVxuLnNwYWNpbmctdG9wLS1yZXNldCB7XG4gIG1hcmdpbi10b3A6IDA7XG59XG5cbi5zcGFjaW5nLXRvcC0taW5uZXIge1xuICBtYXJnaW4tdG9wOiAwO1xuICBwYWRkaW5nLXRvcDogMC41cmVtO1xufVxuLnNwYWNpbmctdG9wLS1pbm5lci5zcGFjaW5nLXRvcC0teHh4bCB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIHBhZGRpbmctdG9wOiA1cmVtO1xufVxuXG4uc3BhY2luZy10b3AtLWlubmVyLnNwYWNpbmctdG9wLS14eGwge1xuICBtYXJnaW4tdG9wOiAwO1xuICBwYWRkaW5nLXRvcDogNHJlbTtcbn1cblxuLnNwYWNpbmctdG9wLS1pbm5lci5zcGFjaW5nLXRvcC0teGwge1xuICBtYXJnaW4tdG9wOiAwO1xuICBwYWRkaW5nLXRvcDogM3JlbTtcbn1cblxuLnNwYWNpbmctdG9wLS1pbm5lci5zcGFjaW5nLXRvcC0tbGFyZ2Uge1xuICBtYXJnaW4tdG9wOiAwO1xuICBwYWRkaW5nLXRvcDogMi41cmVtO1xufVxuXG4uc3BhY2luZy10b3AtLWlubmVyLnNwYWNpbmctdG9wLS1iaWdnZXN0IHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgcGFkZGluZy10b3A6IDJyZW07XG59XG5cbi5zcGFjaW5nLXRvcC0taW5uZXIuc3BhY2luZy10b3AtLWJpZ2dlciB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIHBhZGRpbmctdG9wOiAxLjVyZW07XG59XG5cbi5zcGFjaW5nLXRvcC0taW5uZXIuc3BhY2luZy10b3AtLWJpZyB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIHBhZGRpbmctdG9wOiAxcmVtO1xufVxuXG4uc3BhY2luZy10b3AtLWlubmVyLnNwYWNpbmctdG9wLS1tZWRpdW0ge1xuICBtYXJnaW4tdG9wOiAwO1xuICBwYWRkaW5nLXRvcDogMC43NXJlbTtcbn1cblxuLnNwYWNpbmctdG9wLS1pbm5lci5zcGFjaW5nLXRvcC0tbWVkaXVtLXNtYWxsIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgcGFkZGluZy10b3A6IDAuNjNyZW07XG59XG5cbi5zcGFjaW5nLXRvcC0taW5uZXIuc3BhY2luZy10b3AtLXNtYWxsIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgcGFkZGluZy10b3A6IDAuMjVyZW07XG59XG5cbi5zcGFjaW5nLXRvcC0taW5uZXIuc3BhY2luZy10b3AtLXJlc2V0IHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgcGFkZGluZy10b3A6IDA7XG59XG5cbi5zcGFjaW5nLWJvdHRvbSB7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbn1cbi5zcGFjaW5nLWJvdHRvbS0teHh4bCB7XG4gIG1hcmdpbi1ib3R0b206IDVyZW07XG59XG4uc3BhY2luZy1ib3R0b20tLXh4bCB7XG4gIG1hcmdpbi1ib3R0b206IDRyZW07XG59XG4uc3BhY2luZy1ib3R0b20tLXhsIHtcbiAgbWFyZ2luLWJvdHRvbTogM3JlbTtcbn1cbi5zcGFjaW5nLWJvdHRvbS0tbGFyZ2Uge1xuICBtYXJnaW4tYm90dG9tOiAyLjVyZW07XG59XG4uc3BhY2luZy1ib3R0b20tLWJpZ2dlc3Qge1xuICBtYXJnaW4tYm90dG9tOiAycmVtO1xufVxuLnNwYWNpbmctYm90dG9tLS1iaWdnZXIge1xuICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XG59XG4uc3BhY2luZy1ib3R0b20tLWJpZyB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG4uc3BhY2luZy1ib3R0b20tLW1lZGl1bSB7XG4gIG1hcmdpbi1ib3R0b206IDAuNzVyZW07XG59XG4uc3BhY2luZy1ib3R0b20tLW1lZGl1bS1zbWFsbCB7XG4gIG1hcmdpbi1ib3R0b206IDAuNjNyZW07XG59XG4uc3BhY2luZy1ib3R0b20tLXNtYWxsIHtcbiAgbWFyZ2luLWJvdHRvbTogMC4yNXJlbTtcbn1cbi5zcGFjaW5nLWJvdHRvbS0tcmVzZXQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4uc3BhY2luZy1ib3R0b20tLWlubmVyIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgcGFkZGluZy1ib3R0b206IDAuNXJlbTtcbn1cbi5zcGFjaW5nLWJvdHRvbS0taW5uZXIuc3BhY2luZy1ib3R0b20tLXh4eGwge1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBwYWRkaW5nLWJvdHRvbTogNXJlbTtcbn1cblxuLnNwYWNpbmctYm90dG9tLS1pbm5lci5zcGFjaW5nLWJvdHRvbS0teHhsIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgcGFkZGluZy1ib3R0b206IDRyZW07XG59XG5cbi5zcGFjaW5nLWJvdHRvbS0taW5uZXIuc3BhY2luZy1ib3R0b20tLXhsIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgcGFkZGluZy1ib3R0b206IDNyZW07XG59XG5cbi5zcGFjaW5nLWJvdHRvbS0taW5uZXIuc3BhY2luZy1ib3R0b20tLWxhcmdlIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgcGFkZGluZy1ib3R0b206IDIuNXJlbTtcbn1cblxuLnNwYWNpbmctYm90dG9tLS1pbm5lci5zcGFjaW5nLWJvdHRvbS0tYmlnZ2VzdCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIHBhZGRpbmctYm90dG9tOiAycmVtO1xufVxuXG4uc3BhY2luZy1ib3R0b20tLWlubmVyLnNwYWNpbmctYm90dG9tLS1iaWdnZXIge1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBwYWRkaW5nLWJvdHRvbTogMS41cmVtO1xufVxuXG4uc3BhY2luZy1ib3R0b20tLWlubmVyLnNwYWNpbmctYm90dG9tLS1iaWcge1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBwYWRkaW5nLWJvdHRvbTogMXJlbTtcbn1cblxuLnNwYWNpbmctYm90dG9tLS1pbm5lci5zcGFjaW5nLWJvdHRvbS0tbWVkaXVtIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgcGFkZGluZy1ib3R0b206IDAuNzVyZW07XG59XG5cbi5zcGFjaW5nLWJvdHRvbS0taW5uZXIuc3BhY2luZy1ib3R0b20tLW1lZGl1bS1zbWFsbCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIHBhZGRpbmctYm90dG9tOiAwLjYzcmVtO1xufVxuXG4uc3BhY2luZy1ib3R0b20tLWlubmVyLnNwYWNpbmctYm90dG9tLS1zbWFsbCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIHBhZGRpbmctYm90dG9tOiAwLjI1cmVtO1xufVxuXG4uc3BhY2luZy1ib3R0b20tLWlubmVyLnNwYWNpbmctYm90dG9tLS1yZXNldCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIHBhZGRpbmctYm90dG9tOiAwO1xufVxuXG4uc3BhY2luZy1sZWZ0IHtcbiAgbWFyZ2luLWxlZnQ6IDAuNXJlbTtcbn1cbi5zcGFjaW5nLWxlZnQtLXh4eGwge1xuICBtYXJnaW4tbGVmdDogNXJlbTtcbn1cbi5zcGFjaW5nLWxlZnQtLXh4bCB7XG4gIG1hcmdpbi1sZWZ0OiA0cmVtO1xufVxuLnNwYWNpbmctbGVmdC0teGwge1xuICBtYXJnaW4tbGVmdDogM3JlbTtcbn1cbi5zcGFjaW5nLWxlZnQtLWxhcmdlIHtcbiAgbWFyZ2luLWxlZnQ6IDIuNXJlbTtcbn1cbi5zcGFjaW5nLWxlZnQtLWJpZ2dlc3Qge1xuICBtYXJnaW4tbGVmdDogMnJlbTtcbn1cbi5zcGFjaW5nLWxlZnQtLWJpZ2dlciB7XG4gIG1hcmdpbi1sZWZ0OiAxLjVyZW07XG59XG4uc3BhY2luZy1sZWZ0LS1iaWcge1xuICBtYXJnaW4tbGVmdDogMXJlbTtcbn1cbi5zcGFjaW5nLWxlZnQtLW1lZGl1bSB7XG4gIG1hcmdpbi1sZWZ0OiAwLjc1cmVtO1xufVxuLnNwYWNpbmctbGVmdC0tbWVkaXVtLXNtYWxsIHtcbiAgbWFyZ2luLWxlZnQ6IDAuNjNyZW07XG59XG4uc3BhY2luZy1sZWZ0LS1zbWFsbCB7XG4gIG1hcmdpbi1sZWZ0OiAwLjI1cmVtO1xufVxuLnNwYWNpbmctbGVmdC0tcmVzZXQge1xuICBtYXJnaW4tbGVmdDogMDtcbn1cblxuLnNwYWNpbmctbGVmdC0taW5uZXIge1xuICBtYXJnaW4tbGVmdDogMDtcbiAgcGFkZGluZy1sZWZ0OiAwLjVyZW07XG59XG4uc3BhY2luZy1sZWZ0LS1pbm5lci5zcGFjaW5nLWxlZnQtLXh4eGwge1xuICBtYXJnaW4tbGVmdDogMDtcbiAgcGFkZGluZy1sZWZ0OiA1cmVtO1xufVxuXG4uc3BhY2luZy1sZWZ0LS1pbm5lci5zcGFjaW5nLWxlZnQtLXh4bCB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBwYWRkaW5nLWxlZnQ6IDRyZW07XG59XG5cbi5zcGFjaW5nLWxlZnQtLWlubmVyLnNwYWNpbmctbGVmdC0teGwge1xuICBtYXJnaW4tbGVmdDogMDtcbiAgcGFkZGluZy1sZWZ0OiAzcmVtO1xufVxuXG4uc3BhY2luZy1sZWZ0LS1pbm5lci5zcGFjaW5nLWxlZnQtLWxhcmdlIHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIHBhZGRpbmctbGVmdDogMi41cmVtO1xufVxuXG4uc3BhY2luZy1sZWZ0LS1pbm5lci5zcGFjaW5nLWxlZnQtLWJpZ2dlc3Qge1xuICBtYXJnaW4tbGVmdDogMDtcbiAgcGFkZGluZy1sZWZ0OiAycmVtO1xufVxuXG4uc3BhY2luZy1sZWZ0LS1pbm5lci5zcGFjaW5nLWxlZnQtLWJpZ2dlciB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBwYWRkaW5nLWxlZnQ6IDEuNXJlbTtcbn1cblxuLnNwYWNpbmctbGVmdC0taW5uZXIuc3BhY2luZy1sZWZ0LS1iaWcge1xuICBtYXJnaW4tbGVmdDogMDtcbiAgcGFkZGluZy1sZWZ0OiAxcmVtO1xufVxuXG4uc3BhY2luZy1sZWZ0LS1pbm5lci5zcGFjaW5nLWxlZnQtLW1lZGl1bSB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBwYWRkaW5nLWxlZnQ6IDAuNzVyZW07XG59XG5cbi5zcGFjaW5nLWxlZnQtLWlubmVyLnNwYWNpbmctbGVmdC0tbWVkaXVtLXNtYWxsIHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIHBhZGRpbmctbGVmdDogMC42M3JlbTtcbn1cblxuLnNwYWNpbmctbGVmdC0taW5uZXIuc3BhY2luZy1sZWZ0LS1zbWFsbCB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBwYWRkaW5nLWxlZnQ6IDAuMjVyZW07XG59XG5cbi5zcGFjaW5nLWxlZnQtLWlubmVyLnNwYWNpbmctbGVmdC0tcmVzZXQge1xuICBtYXJnaW4tbGVmdDogMDtcbiAgcGFkZGluZy1sZWZ0OiAwO1xufVxuXG4uc3BhY2luZy1yaWdodCB7XG4gIG1hcmdpbi1yaWdodDogMC41cmVtO1xufVxuLnNwYWNpbmctcmlnaHQtLXh4eGwge1xuICBtYXJnaW4tcmlnaHQ6IDVyZW07XG59XG4uc3BhY2luZy1yaWdodC0teHhsIHtcbiAgbWFyZ2luLXJpZ2h0OiA0cmVtO1xufVxuLnNwYWNpbmctcmlnaHQtLXhsIHtcbiAgbWFyZ2luLXJpZ2h0OiAzcmVtO1xufVxuLnNwYWNpbmctcmlnaHQtLWxhcmdlIHtcbiAgbWFyZ2luLXJpZ2h0OiAyLjVyZW07XG59XG4uc3BhY2luZy1yaWdodC0tYmlnZ2VzdCB7XG4gIG1hcmdpbi1yaWdodDogMnJlbTtcbn1cbi5zcGFjaW5nLXJpZ2h0LS1iaWdnZXIge1xuICBtYXJnaW4tcmlnaHQ6IDEuNXJlbTtcbn1cbi5zcGFjaW5nLXJpZ2h0LS1iaWcge1xuICBtYXJnaW4tcmlnaHQ6IDFyZW07XG59XG4uc3BhY2luZy1yaWdodC0tbWVkaXVtIHtcbiAgbWFyZ2luLXJpZ2h0OiAwLjc1cmVtO1xufVxuLnNwYWNpbmctcmlnaHQtLW1lZGl1bS1zbWFsbCB7XG4gIG1hcmdpbi1yaWdodDogMC42M3JlbTtcbn1cbi5zcGFjaW5nLXJpZ2h0LS1zbWFsbCB7XG4gIG1hcmdpbi1yaWdodDogMC4yNXJlbTtcbn1cbi5zcGFjaW5nLXJpZ2h0LS1yZXNldCB7XG4gIG1hcmdpbi1yaWdodDogMDtcbn1cblxuLnNwYWNpbmctcmlnaHQtLWlubmVyIHtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBwYWRkaW5nLXJpZ2h0OiAwLjVyZW07XG59XG4uc3BhY2luZy1yaWdodC0taW5uZXIuc3BhY2luZy1yaWdodC0teHh4bCB7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgcGFkZGluZy1yaWdodDogNXJlbTtcbn1cblxuLnNwYWNpbmctcmlnaHQtLWlubmVyLnNwYWNpbmctcmlnaHQtLXh4bCB7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgcGFkZGluZy1yaWdodDogNHJlbTtcbn1cblxuLnNwYWNpbmctcmlnaHQtLWlubmVyLnNwYWNpbmctcmlnaHQtLXhsIHtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBwYWRkaW5nLXJpZ2h0OiAzcmVtO1xufVxuXG4uc3BhY2luZy1yaWdodC0taW5uZXIuc3BhY2luZy1yaWdodC0tbGFyZ2Uge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIHBhZGRpbmctcmlnaHQ6IDIuNXJlbTtcbn1cblxuLnNwYWNpbmctcmlnaHQtLWlubmVyLnNwYWNpbmctcmlnaHQtLWJpZ2dlc3Qge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIHBhZGRpbmctcmlnaHQ6IDJyZW07XG59XG5cbi5zcGFjaW5nLXJpZ2h0LS1pbm5lci5zcGFjaW5nLXJpZ2h0LS1iaWdnZXIge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIHBhZGRpbmctcmlnaHQ6IDEuNXJlbTtcbn1cblxuLnNwYWNpbmctcmlnaHQtLWlubmVyLnNwYWNpbmctcmlnaHQtLWJpZyB7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgcGFkZGluZy1yaWdodDogMXJlbTtcbn1cblxuLnNwYWNpbmctcmlnaHQtLWlubmVyLnNwYWNpbmctcmlnaHQtLW1lZGl1bSB7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgcGFkZGluZy1yaWdodDogMC43NXJlbTtcbn1cblxuLnNwYWNpbmctcmlnaHQtLWlubmVyLnNwYWNpbmctcmlnaHQtLW1lZGl1bS1zbWFsbCB7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgcGFkZGluZy1yaWdodDogMC42M3JlbTtcbn1cblxuLnNwYWNpbmctcmlnaHQtLWlubmVyLnNwYWNpbmctcmlnaHQtLXNtYWxsIHtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBwYWRkaW5nLXJpZ2h0OiAwLjI1cmVtO1xufVxuXG4uc3BhY2luZy1yaWdodC0taW5uZXIuc3BhY2luZy1yaWdodC0tcmVzZXQge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG59XG5cbi5zcGFjaW5nLXgge1xuICBtYXJnaW4tbGVmdDogMC41cmVtO1xuICBtYXJnaW4tcmlnaHQ6IDAuNXJlbTtcbn1cbi5zcGFjaW5nLXgtLXh4eGwge1xuICBtYXJnaW4tbGVmdDogNXJlbTtcbiAgbWFyZ2luLXJpZ2h0OiA1cmVtO1xufVxuLnNwYWNpbmcteC0teHhsIHtcbiAgbWFyZ2luLWxlZnQ6IDRyZW07XG4gIG1hcmdpbi1yaWdodDogNHJlbTtcbn1cbi5zcGFjaW5nLXgtLXhsIHtcbiAgbWFyZ2luLWxlZnQ6IDNyZW07XG4gIG1hcmdpbi1yaWdodDogM3JlbTtcbn1cbi5zcGFjaW5nLXgtLWxhcmdlIHtcbiAgbWFyZ2luLWxlZnQ6IDIuNXJlbTtcbiAgbWFyZ2luLXJpZ2h0OiAyLjVyZW07XG59XG4uc3BhY2luZy14LS1iaWdnZXN0IHtcbiAgbWFyZ2luLWxlZnQ6IDJyZW07XG4gIG1hcmdpbi1yaWdodDogMnJlbTtcbn1cbi5zcGFjaW5nLXgtLWJpZ2dlciB7XG4gIG1hcmdpbi1sZWZ0OiAxLjVyZW07XG4gIG1hcmdpbi1yaWdodDogMS41cmVtO1xufVxuLnNwYWNpbmcteC0tYmlnIHtcbiAgbWFyZ2luLWxlZnQ6IDFyZW07XG4gIG1hcmdpbi1yaWdodDogMXJlbTtcbn1cbi5zcGFjaW5nLXgtLW1lZGl1bSB7XG4gIG1hcmdpbi1sZWZ0OiAwLjc1cmVtO1xuICBtYXJnaW4tcmlnaHQ6IDAuNzVyZW07XG59XG4uc3BhY2luZy14LS1tZWRpdW0tc21hbGwge1xuICBtYXJnaW4tbGVmdDogMC42M3JlbTtcbiAgbWFyZ2luLXJpZ2h0OiAwLjYzcmVtO1xufVxuLnNwYWNpbmcteC0tc21hbGwge1xuICBtYXJnaW4tbGVmdDogMC4yNXJlbTtcbiAgbWFyZ2luLXJpZ2h0OiAwLjI1cmVtO1xufVxuLnNwYWNpbmcteC0tcmVzZXQge1xuICBtYXJnaW4tbGVmdDogMDtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xufVxuXG4uc3BhY2luZy14LS1pbm5lciB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBwYWRkaW5nLWxlZnQ6IDAuNXJlbTtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBwYWRkaW5nLXJpZ2h0OiAwLjVyZW07XG59XG4uc3BhY2luZy14LS1pbm5lci5zcGFjaW5nLXgtLXh4eGwge1xuICBtYXJnaW4tbGVmdDogMDtcbiAgcGFkZGluZy1sZWZ0OiA1cmVtO1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIHBhZGRpbmctcmlnaHQ6IDVyZW07XG59XG5cbi5zcGFjaW5nLXgtLWlubmVyLnNwYWNpbmcteC0teHhsIHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIHBhZGRpbmctbGVmdDogNHJlbTtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBwYWRkaW5nLXJpZ2h0OiA0cmVtO1xufVxuXG4uc3BhY2luZy14LS1pbm5lci5zcGFjaW5nLXgtLXhsIHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIHBhZGRpbmctbGVmdDogM3JlbTtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBwYWRkaW5nLXJpZ2h0OiAzcmVtO1xufVxuXG4uc3BhY2luZy14LS1pbm5lci5zcGFjaW5nLXgtLWxhcmdlIHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIHBhZGRpbmctbGVmdDogMi41cmVtO1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIHBhZGRpbmctcmlnaHQ6IDIuNXJlbTtcbn1cblxuLnNwYWNpbmcteC0taW5uZXIuc3BhY2luZy14LS1iaWdnZXN0IHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIHBhZGRpbmctbGVmdDogMnJlbTtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBwYWRkaW5nLXJpZ2h0OiAycmVtO1xufVxuXG4uc3BhY2luZy14LS1pbm5lci5zcGFjaW5nLXgtLWJpZ2dlciB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBwYWRkaW5nLWxlZnQ6IDEuNXJlbTtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBwYWRkaW5nLXJpZ2h0OiAxLjVyZW07XG59XG5cbi5zcGFjaW5nLXgtLWlubmVyLnNwYWNpbmcteC0tYmlnIHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIHBhZGRpbmctbGVmdDogMXJlbTtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBwYWRkaW5nLXJpZ2h0OiAxcmVtO1xufVxuXG4uc3BhY2luZy14LS1pbm5lci5zcGFjaW5nLXgtLW1lZGl1bSB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBwYWRkaW5nLWxlZnQ6IDAuNzVyZW07XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgcGFkZGluZy1yaWdodDogMC43NXJlbTtcbn1cblxuLnNwYWNpbmcteC0taW5uZXIuc3BhY2luZy14LS1tZWRpdW0tc21hbGwge1xuICBtYXJnaW4tbGVmdDogMDtcbiAgcGFkZGluZy1sZWZ0OiAwLjYzcmVtO1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIHBhZGRpbmctcmlnaHQ6IDAuNjNyZW07XG59XG5cbi5zcGFjaW5nLXgtLWlubmVyLnNwYWNpbmcteC0tc21hbGwge1xuICBtYXJnaW4tbGVmdDogMDtcbiAgcGFkZGluZy1sZWZ0OiAwLjI1cmVtO1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIHBhZGRpbmctcmlnaHQ6IDAuMjVyZW07XG59XG5cbi5zcGFjaW5nLXgtLWlubmVyLnNwYWNpbmcteC0tcmVzZXQge1xuICBtYXJnaW4tbGVmdDogMDtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG59XG5cbi5zcGFjaW5nLXkge1xuICBtYXJnaW4tdG9wOiAwLjVyZW07XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbn1cbi5zcGFjaW5nLXktLXh4eGwge1xuICBtYXJnaW4tdG9wOiA1cmVtO1xuICBtYXJnaW4tYm90dG9tOiA1cmVtO1xufVxuLnNwYWNpbmcteS0teHhsIHtcbiAgbWFyZ2luLXRvcDogNHJlbTtcbiAgbWFyZ2luLWJvdHRvbTogNHJlbTtcbn1cbi5zcGFjaW5nLXktLXhsIHtcbiAgbWFyZ2luLXRvcDogM3JlbTtcbiAgbWFyZ2luLWJvdHRvbTogM3JlbTtcbn1cbi5zcGFjaW5nLXktLWxhcmdlIHtcbiAgbWFyZ2luLXRvcDogMi41cmVtO1xuICBtYXJnaW4tYm90dG9tOiAyLjVyZW07XG59XG4uc3BhY2luZy15LS1iaWdnZXN0IHtcbiAgbWFyZ2luLXRvcDogMnJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbn1cbi5zcGFjaW5nLXktLWJpZ2dlciB7XG4gIG1hcmdpbi10b3A6IDEuNXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMS41cmVtO1xufVxuLnNwYWNpbmcteS0tYmlnIHtcbiAgbWFyZ2luLXRvcDogMXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbn1cbi5zcGFjaW5nLXktLW1lZGl1bSB7XG4gIG1hcmdpbi10b3A6IDAuNzVyZW07XG4gIG1hcmdpbi1ib3R0b206IDAuNzVyZW07XG59XG4uc3BhY2luZy15LS1tZWRpdW0tc21hbGwge1xuICBtYXJnaW4tdG9wOiAwLjYzcmVtO1xuICBtYXJnaW4tYm90dG9tOiAwLjYzcmVtO1xufVxuLnNwYWNpbmcteS0tc21hbGwge1xuICBtYXJnaW4tdG9wOiAwLjI1cmVtO1xuICBtYXJnaW4tYm90dG9tOiAwLjI1cmVtO1xufVxuLnNwYWNpbmcteS0tcmVzZXQge1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4uc3BhY2luZy15LS1pbm5lciB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIHBhZGRpbmctdG9wOiAwLjVyZW07XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIHBhZGRpbmctYm90dG9tOiAwLjVyZW07XG59XG4uc3BhY2luZy15LS1pbm5lci5zcGFjaW5nLXktLXh4eGwge1xuICBtYXJnaW4tdG9wOiAwO1xuICBwYWRkaW5nLXRvcDogNXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgcGFkZGluZy1ib3R0b206IDVyZW07XG59XG5cbi5zcGFjaW5nLXktLWlubmVyLnNwYWNpbmcteS0teHhsIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgcGFkZGluZy10b3A6IDRyZW07XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIHBhZGRpbmctYm90dG9tOiA0cmVtO1xufVxuXG4uc3BhY2luZy15LS1pbm5lci5zcGFjaW5nLXktLXhsIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgcGFkZGluZy10b3A6IDNyZW07XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIHBhZGRpbmctYm90dG9tOiAzcmVtO1xufVxuXG4uc3BhY2luZy15LS1pbm5lci5zcGFjaW5nLXktLWxhcmdlIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgcGFkZGluZy10b3A6IDIuNXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgcGFkZGluZy1ib3R0b206IDIuNXJlbTtcbn1cblxuLnNwYWNpbmcteS0taW5uZXIuc3BhY2luZy15LS1iaWdnZXN0IHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgcGFkZGluZy10b3A6IDJyZW07XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIHBhZGRpbmctYm90dG9tOiAycmVtO1xufVxuXG4uc3BhY2luZy15LS1pbm5lci5zcGFjaW5nLXktLWJpZ2dlciB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIHBhZGRpbmctdG9wOiAxLjVyZW07XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIHBhZGRpbmctYm90dG9tOiAxLjVyZW07XG59XG5cbi5zcGFjaW5nLXktLWlubmVyLnNwYWNpbmcteS0tYmlnIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgcGFkZGluZy10b3A6IDFyZW07XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIHBhZGRpbmctYm90dG9tOiAxcmVtO1xufVxuXG4uc3BhY2luZy15LS1pbm5lci5zcGFjaW5nLXktLW1lZGl1bSB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIHBhZGRpbmctdG9wOiAwLjc1cmVtO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBwYWRkaW5nLWJvdHRvbTogMC43NXJlbTtcbn1cblxuLnNwYWNpbmcteS0taW5uZXIuc3BhY2luZy15LS1tZWRpdW0tc21hbGwge1xuICBtYXJnaW4tdG9wOiAwO1xuICBwYWRkaW5nLXRvcDogMC42M3JlbTtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgcGFkZGluZy1ib3R0b206IDAuNjNyZW07XG59XG5cbi5zcGFjaW5nLXktLWlubmVyLnNwYWNpbmcteS0tc21hbGwge1xuICBtYXJnaW4tdG9wOiAwO1xuICBwYWRkaW5nLXRvcDogMC4yNXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgcGFkZGluZy1ib3R0b206IDAuMjVyZW07XG59XG5cbi5zcGFjaW5nLXktLWlubmVyLnNwYWNpbmcteS0tcmVzZXQge1xuICBtYXJnaW4tdG9wOiAwO1xuICBwYWRkaW5nLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgcGFkZGluZy1ib3R0b206IDA7XG59XG5cbi50ZXh0LXNtYWxsIHtcbiAgZm9udC1zaXplOiAwLjkzMzMzMzMzMzNyZW07XG59XG5cbi50ZXh0LWJpZyB7XG4gIGZvbnQtc2l6ZTogMi40cmVtO1xufVxuXG4udGV4dC1sZWZ0IHtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cblxuLnRleHQtY2VudGVyIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4udGV4dC1yaWdodCB7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xufVxuXG4udGV4dC1hbHQge1xuICBjb2xvcjogIzRiNGI0ZDtcbn1cblxuLnRleHQtc2Vjb25kYXJ5IHtcbiAgY29sb3I6ICMxYTE3MWI7XG59XG5cbi50ZXh0LWJyZWFrIHtcbiAgd29yZC1icmVhazogYnJlYWstd29yZDtcbn1cblxuLnRleHQtc3VjY2VzcyB7XG4gIGNvbG9yOiAjMDE5MDM5O1xufVxuXG4udGV4dC1zdWNjZXNzLWxpZ2h0IHtcbiAgY29sb3I6ICNhYmQxOGI7XG59XG5cbi50ZXh0LXdhcm5pbmcge1xuICBjb2xvcjogI2U4OWMzMDtcbn1cblxuLnRleHQtYWxlcnQge1xuICBjb2xvcjogI2UzMjIxMztcbn1cblxuLnRleHQtaW5mbyB7XG4gIGNvbG9yOiAjZmVjYzAwO1xufVxuXG4udGV4dC1uZXV0cmFsIHtcbiAgY29sb3I6ICM5MjkyOTI7XG59XG5cbi5jbGVhcjo6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgY2xlYXI6IGJvdGg7XG59XG5cbi5mbG9hdC1sZWZ0IHtcbiAgZmxvYXQ6IGxlZnQ7XG59XG5cbi5mbG9hdC1yaWdodCB7XG4gIGZsb2F0OiByaWdodDtcbn1cblxuLmZsb2F0LW5vbmUge1xuICBmbG9hdDogbm9uZTtcbn1cblxuLmlzLWhpZGRlbiB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIC8qIHN0eWxlbGludC1kaXNhYmxlIG1heC1uZXN0aW5nLWRlcHRoICovXG4gIC8qIHN0eWxlbGludC1lbmFibGUgbWF4LW5lc3RpbmctZGVwdGggKi9cbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMCkgYW5kIChtYXgtd2lkdGg6IDU0OXB4KSB7XG4gIC5pcy1oaWRkZW4tc20tb25seSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAwKSBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLmlzLWhpZGRlbi1zbS1tZCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAwKSBhbmQgKG1heC13aWR0aDogMTAyM3B4KSB7XG4gIC5pcy1oaWRkZW4tc20tbGcge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMCkgYW5kIChtYXgtd2lkdGg6IDExOTlweCkge1xuICAuaXMtaGlkZGVuLXNtLXhsIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDApIHtcbiAgLmlzLWhpZGRlbi1zbS14eGwge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMCkgYW5kIChtYXgtd2lkdGg6IDM3NHB4KSB7XG4gIC5pcy1oaWRkZW4tc3Atb25seSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAwKSBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLmlzLWhpZGRlbi1zcC1tZCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAwKSBhbmQgKG1heC13aWR0aDogMTAyM3B4KSB7XG4gIC5pcy1oaWRkZW4tc3AtbGcge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMCkgYW5kIChtYXgtd2lkdGg6IDExOTlweCkge1xuICAuaXMtaGlkZGVuLXNwLXhsIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDApIHtcbiAgLmlzLWhpZGRlbi1zcC14eGwge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNTUwcHgpIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xuICAuaXMtaGlkZGVuLW1kLW9ubHkge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNTUwcHgpIGFuZCAobWF4LXdpZHRoOiAxMDIzcHgpIHtcbiAgLmlzLWhpZGRlbi1tZC1sZyB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA1NTBweCkgYW5kIChtYXgtd2lkdGg6IDExOTlweCkge1xuICAuaXMtaGlkZGVuLW1kLXhsIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDU1MHB4KSB7XG4gIC5pcy1oaWRkZW4tbWQteHhsIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1heC13aWR0aDogMTAyM3B4KSB7XG4gIC5pcy1oaWRkZW4tbGctb25seSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtYXgtd2lkdGg6IDExOTlweCkge1xuICAuaXMtaGlkZGVuLWxnLXhsIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5pcy1oaWRkZW4tbGcteHhsIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjRweCkgYW5kIChtYXgtd2lkdGg6IDExOTlweCkge1xuICAuaXMtaGlkZGVuLXhsLW9ubHkge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gIC5pcy1oaWRkZW4teGwteHhsIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAuaXMtaGlkZGVuLXh4bC1vbmx5IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi5pcy12aXNpYmxlIHtcbiAgcG9pbnRlci1ldmVudHM6IGFsbDtcbiAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgb3BhY2l0eTogMTtcbn1cblxuLmlzLWludmlzaWJsZSB7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIG9wYWNpdHk6IDA7XG59XG5cbi5pcy1zY3JvbGxhYmxlIHtcbiAgb3ZlcmZsb3c6IGF1dG87XG59XG5cbi5pcy1ub3Qtc2Nyb2xsYWJsZSB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5pcy1zY3JvbGxhYmxlLXgge1xuICBvdmVyZmxvdy14OiBhdXRvO1xufVxuXG4uaXMtbm90LXNjcm9sbGFibGUteCB7XG4gIG92ZXJmbG93LXg6IGhpZGRlbjtcbn1cblxuLmlzLXNjcm9sbGFibGUteSB7XG4gIG92ZXJmbG93LXk6IGF1dG87XG59XG5cbi5pcy1ub3Qtc2Nyb2xsYWJsZS15IHtcbiAgb3ZlcmZsb3cteTogaGlkZGVuO1xufVxuXG4uaXMtbG9ja2VkIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbn1cblxuaHRtbCA+IC5pcy1sb2NrZWQtdGFibGV0LFxuaHRtbCA+IC5pcy1sb2NrZWQtbW9iaWxlLFxuaHRtbCA+IC5pcy1sb2NrZWQge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGhlaWdodDogMTAwJTtcbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gIGh0bWwgPiAuaXMtbG9ja2VkLXRhYmxldCB7XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgfVxufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICBodG1sID4gLmlzLWxvY2tlZC1tb2JpbGUge1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gIH1cbn0iXSwic291cmNlUm9vdCI6IiJ9*/