@charset "UTF-8";
/*
Also please follow this
Do your project have diferent charset languages to account with?
      - Yes -> follow https://projects.netcentric.biz/wiki/display/FRONTEND/CSS+-+Font+Normalization
      - No -> You can still use it, there are tons of advantages, but its create some extra css and layout rendering
*/
/*
  * Design spec:
  * https://www.figma.com/file/SR4rvQlNnCmPMrQ9WYaIqv/branch/TJqkFymq09wf8KwmY1WNcj/Volvo-AEM-Design-system?type=design&node-id=7-26&t=pAm916VRiqCOD2I1-0
*/
/**
 * z-indexes from lower to -> higher
 */
/* doc
---
title: Pixel to em
name: nn-px-to-em
category: functions
---

Calculate the em with a given pixel with the given base font size
If you don't set a $base the $base-font-size is used as the context

## Live Template abbreviations
---
-ptu

## Parameters
---
@parameter $value = pixel based number (without unit)
@parameter $base = pixel based number (without unit)

## Dependencies
---
nn-strip-unit

## Example
---
```html_example
nn-px-to-em(5) // Output: 0.3125em
nn-px-to-em(5, 10) // Output: 0.5em
nn-px-to-em(5, 20) // Output: 0.25em
```
*/
/* doc
---
title: Pixel to rem
name: nn-px-to-rem
category: functions
---

Calculate the rem with a given pixel with the given base font size

In:  5px
Out: 0.3125rem

## Live Template abbreviations
---
-rem

## Parameters
---
@parameter $value = pixel based number (without unit)

## Dependencies
---
nn-strip-unit

## Example
---
```html_example
nn-px-to-rem(5) // Output 0.3125rem
```

*/
/* doc
---
title: Pixel to unit
name: px-to-unit
category: mixins
---

Set a property and value (pixel based without unit)

Calculates rem / em / % from given pixel and base (default base is the
base-font-size, 16px)
If rtl is true, this mixin handles all the direction stuff:
- Switching the values, when we have exactly 4 values
- Switching left and right in properties (padding and margin)

## Live Template abbreviations
---
-ptu (for em or % to pixel - with base parameter)
-rem (for rem to pixel - without base parameter)

## Parameters
---
@parameter $property = padding | margin | font-size | width | height
@parameter $value = Pixel based number - add px to keep the px for a value
@parameter $base = px based number, Default: 16px
@parameter $unit = Set unit: px | em | rem | percent

## Dependencies
---
abstract/functions/swap-left-right
abstract/functions/strip-unit

## Example
---

```html_example
@include nn-px-to-unit(padding, 0 10px 20 0); => padding: 0 10px 1.25rem 0;
@include nn-px-to-unit(padding, 0 10 20 0); => padding: 0 0.625rem 1.25rem 0;
@include nn-px-to-unit(padding-left, 10);
@include nn-px-to-unit(padding-right, 10);
@include nn-px-to-unit(margin, 0 10 20 0);
@include nn-px-to-unit(margin-left, 10);
@include nn-px-to-unit(margin-right, 10);
@include nn-px-to-unit(font-size, 20);
@include nn-px-to-unit(width, 100);
@include nn-px-to-unit(min-width, 100);
@include nn-px-to-unit(mann-width, 100);
@include nn-px-to-unit(height, 100);
@include nn-px-to-unit(min-height, 100);
@include nn-px-to-unit(mann-height, 100);
```

## Source
---
http://css-tricks.com/snippets/css/less-mixin-for-rem-font-sizing/

*/
/* doc
---
title: Pixel to unitless
name: nn-px-to-unitless
category: functions
---

This makes the same calculation as px to em. But it don't print out the unit.

Use this for line-heights.

## Live Template abbreviations
---

## Parameters
---
@parameter $value = pixel based number (without unit)
@parameter $base = pixel based number (without unit)

## Dependencies
---

## Example
---

```html_example
line-height: nn-px-to-unitless(5) // Output: 0.3125
```

## Source
---

*/
/* doc
---
title: Strip unit
name: nn-strip-unit
category: functions
---

Strips of the unit of a number

## Parameters
---
@parameter $num = number with unit (5px, 5em, 5rem)

## Example
---

```html_example
nn-strip-unit(5px) //Output: 5
nn-strip-unit(10em) // Output: 10
nn-strip-unit(15rem) // Output: 15
```

*/
/* doc
---
title: z-index
name: nn-z-index
category: functions
---

Because z-indices can get tricky we manage them in the theme.scss globally.

Always use this mixin to set set a z-index.

Read the Best Practice to get an full documentation:
https://projects.netcentric.biz/wiki/display/FRONTEND/How+to+set+a+z-index

## Live Template abbreviations
---
-z

## Parameters
---
@parameter $element = Name of the element (normally this will be the module name for the main stack)
@parameter $list = Name of the list (default $z-indices). Must be only set for stack context
@parameter $min = Set a minimum z-index which will be added to the list.

## Dependencies
---
$z-indices variable in the theme.scss

## Example
---

```html_example

// In the SASS theme file

$z-indices: slider, modal, dialog, navigation;

// In the SASS module file

.modal {
    &__base {
        position: absolute;
        z-index: nn-z-index(modal);
    }
}
```

## Source
---
http://www.smashingmagazine.com/2014/06/12/sassy-z-index-management-for-complex-layouts/

*/
/* doc
---
title: remove every unit
name: strip-unit
category: functions
---
remove all units

## Parameters
---
@parameter $number = number with unit

## Example
---
```html_example
strip-unit(5px) // Output: 5
```
*/
/*
    This mixin converts any unitless number (for example 40) to the correct unit, according to the given axis.

    Parameters:
    - $value: unitless number to be converted. A unit in $value will correspond to a px in the browser,
        no matter if it's output as px or rem

    Returns
    - Horizontal: will convert the number to pixels (40px)
    - Vertical: will convert the number to rem (if rem === 16px, then 40 will be converted to 2.5 rem)
*/
/*
    Converts a unitless number to the corresponding unit on the horizontal axis.
    By default will convert the value to px.
*/
/*
    Converts a unitless number to the corresponding unit on the vertical axis.
    By default will convert the value to rem.
*/
/* stylelint-disable */
/* doc
---
title: Swap left right values
name: swap-left-right-values
category: functions
---

Swap the values for right and left when $rtl is set to true:

In:  0 5px 8px 12px
Out: 0 12px 8px 5px (in rtl)

## Parameters
---
@parameter $values = 4 numbers (works with all units)

## Example
---

```html_example
swap-left-right-values(0 1px 8px 12px) // 0 12px 8px 1px
swap-left-right-values(0 1em 8em 12em) // 0 12em 8em 1em
wap-left-right-values(0 1rem 8rem 12rem) // 0 12rem 8rem 1rem
```

## Source
---
http://stackoverflow.com/questions/14199323/right-to-left-rtl-support-in-sass-project

*/
/* stylelint-disable */
/* doc
---
title: Swap left right names
name: swap-left-right-names
category: functions
---

Swap the names right and left when $rtl is set to true.
If the value is not right or left it returns the original value.

In:  right
Out: left (in rtl), right (in ltr)

## Live Template abbreviations
---

## Parameters
---
@parameter $origin = right | left

## Example
---

```html_example
swap-left-right-name(left)
swap-left-right-name(right)
```

## Source
---
http://stackoverflow.com/questions/14199323/right-to-left-rtl-support-in-sass-project

*/
/*  List of CSS properties that will always be output at least as 2 different values
    in order to be able to convert each one to the correct axis unit */
/*
    Mixin for automatically handling spacings around/between elements.

    This mixin will automatically invert the lef/right directions in RTL languages.
    Also, the unitless values will be converted to the proper unit according to the axis

    Parameters:
    - $property-name: name of the CSS property that should be output. Supported properties are:
        margin, margin-top, margin-right, margin-bottom, margin-left
        padding, padding-top, padding-right, padding-bottom, padding-left
        width, height, min-width, max-width, min-height, min-height
    - $value: value that will be output as part of the given property. Supported values are:
        Unitless number (40): this should be used most of the times. It will automatically be converted
            to the correct unit depending on the axis where it's used (horizontal axis => px, vertical axis => rem).
            Each unit in $value will correspond to a px in the browser, no matter to which unit it will be converted.
        Number with unit (40px, 40%...): the number and the unit will be preserved and only the left/right inversion
            will be done for RTL languages
        List of values (40 30% 20 10): margin and padding shorthands whith multiple values are supported.
            The left/right values will be automatically swapped in RTL and the unitless numbers will be converted
            to the corresponding unit. Unitless and numbers with units can be mixed in the same call.
        Using calc() in any of the previous examples is supported, although no unit conversion will be done

 ## Example
---

```html_example
@include spacing(padding, 0 10px 20 0); => padding: 0 10px 2rem 0;
@include spacing(padding, 0 10 20 0); => padding: 0 10px 2rem 0;
@include spacing(padding-left, 10);
@include spacing(padding-right, 10);
@include spacing(margin, 0 10 20 0);
@include spacing(margin-left, 10);
@include spacing(margin-right, 10);
@include spacing(width, 100);
@include spacing(min-width, 100);
@include spacing(max-width, 100);
@include spacing(height, 100);
@include spacing(min-height, 100);
@include spacing(max-height, 100);
```
*/
/* doc
---
title: Clearfix
name: clearfix
category: mixins
---

Clears after floating element

Use this mixin only inside media queries where you can't use the
abstract/extends/utils/_clearfix version, which adds less code to css

## Live Template abbreviations
---

## Example
---

```html_example
@include clearfix;
```

## Source
---
https://css-tricks.com/snippets/css/clear-fix/
*/
/* stylelint-disable string-no-newline */
/* doc
---
title: focus color
name: focus color
category: mixins
---

Add a focus color when keyboard-focus is activated
## Parameters
---
@param $number

*/
/* doc
---
title: ignore-container
name: ignore-container
category: mixins
---

Set full page width for something inside a container

## Parameters
---
@param $container-size
@param $gutter

*/
/* Generates all the rules for the grid columns up to the given amount of column */
/* Generates all the rules for the grid column offset up to the given amount of column */
/* Generates all the rules for the grid and columns for the given break point and total of columns */
/* API function to be called to generate a grid config */
/* doc
---
type: button type
state: state button
---

Button styles

Use this mixin for button styles: color text, background, border

## Example
---

```html_example
@include button(primary);
```
*/
/* doc
---
lineLimit: This value specifies the number of lines after which the content will be clamped. It must be greater than 0.
---

Truncates text at a specific number of lines.

Use this mixin to hide long text.

## Example
---

```html_example
@include line-clamp($lineLimit: 4);
```
*/
/* typography
---
title: typography
name: Typography
category: mixins
---

Adds font CSS properties by a map provided

## Parameters
---
@param $t-style
@param $is-important: false

* $t-style is expected to be a map with 'default' and 'breakpoint[s]' submaps with a property
for every css property to be set.
* $is-important parameter allows to force typography properties to be set as !important
Try to avoid its use, but it might be needed for situations where styles for a component
are very specific and to overwrite the generic ones is too complex (if they have a lot of specificity)

*/
/* doc
---
title: hidden
name: hidden
category: mixins
---

Hide from both screenreaders and browsers: h5bp.com/u
## Parameters
---

*/
/* doc
---
title: overlay
name: overlay
category: mixins
---

Creates an overlay with the provided background color
## Parameters
---
@param $bgColor

*/
/**
 * @mixin top-bottom-border
 * @desc Creates a dynamic and customizable border at the specified position on an element.
 *
 * @param {string} $position - Optional, Default: 'bottom'. Defines the position of the border. Accepts values 'top' or 'bottom'.
 * @param {color} $color - Optional, Default: '$c-black'. Specifies the color of the border. Accepts any valid CSS color value.
 * @param {length} $width - Optional, Default: '2px'. Sets the width of the border. Accepts any valid CSS length value.
 * @param {length} $margin - Optional, Default: '0'. Adds margin to the border. Accepts any valid CSS length value.
 *
 * @example
 *   .example-element {
 *       @include top-bottom-border($position: top, $color: $c-grey-two, $width: 3px, $margin: 10px);
 *   }
 */
/* doc
---
title: reset-fullwidth-margins
name: reset-fullwidth-margins
category: mixins
---

Reset margins for full width components inside a Container or a Column Control
*/
/* doc
---
title: visually hidden
name: visually hidden
category: mixins
---

Hidden from browsers but accessible to screen readers
## Parameters
---

*/
.header__metanav .cmp-list {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  height: 100%;
  padding: 0;
}
@media (min-width: 960px) {
  .header__metanav .cmp-list {
    margin-block-start: 20px;
    position: relative;
  }
}
.header__metanav .cmp-list .cmp-list__item {
  padding-inline-start: 25px;
  padding-block: 0;
}
@media (min-width: 960px) {
  .header__metanav .cmp-list .cmp-list__item {
    padding-inline-start: 40px;
  }
}
.header__metanav .cmp-list .cmp-list__item:first-child {
  padding-inline-start: 0;
}
@media (min-width: 768px) {
  .header__metanav .cmp-list .cmp-list__item:first-child {
    padding-inline-start: 40px;
  }
}
.header__metanav .cmp-list .cmp-list__item-link {
  font-size: 0.75rem;
  display: flex;
  align-items: center;
}
.header__metanav .cmp-list .cmp-list__item-link::after, .header__metanav .cmp-list .cmp-list__item-link[target=_blank]::after {
  content: none;
}
@media (min-width: 960px) {
  .header__metanav .cmp-list .cmp-list__item-link {
    line-height: 20px;
    color: #888b8d;
  }
}
.header__metanav .cmp-list__icon {
  width: 16px;
  height: 16px;
  margin-inline-end: 5px;
  inset-block-start: 0;
}
.header__metanav--phone {
  height: 100%;
}
@media (min-width: 960px) {
  .header__metanav--phone {
    display: none;
  }
}

.header__mainnav .header__toplinks {
  position: relative;
  width: 100vw;
  background: #fff;
  inset-inline-start: 100vw;
}
@media (min-width: 480px) {
  .header__mainnav .header__toplinks {
    inset-inline-start: "380px";
    width: "380px";
  }
}
.header__mainnav .header__toplinks .list {
  margin-inline-end: 40px;
}
.header__mainnav .header__toplinks .cmp-list {
  display: flex;
  margin-block: 22px 11px;
  margin-inline: 15px 0;
  align-items: flex-start;
  padding-inline-start: 0;
  justify-content: flex-end;
}
.header__mainnav .header__toplinks .cmp-list__item {
  padding-block-end: 0;
  margin-block: 0;
  margin-inline: 4px;
  color: #888b8d;
}
.header__mainnav .header__toplinks .cmp-list__item:last-of-type {
  margin-inline: 4px 33px;
}
@media (min-width: 960px) {
  .header__mainnav .header__toplinks .cmp-list__item:last-of-type {
    margin-inline-start: 9px;
  }
}
.header__mainnav .header__toplinks .cmp-list__item-link::before {
  content: none;
}
.header__mainnav .header__toplinks .cmp-list__item-link {
  display: flex;
  flex-direction: column;
  font-size: 8px;
  text-align: center;
  color: #888b8d;
  min-width: 47px;
}
.header__mainnav .header__toplinks .cmp-list__item-link[target=_blank]::after, .header__mainnav .header__toplinks .cmp-list__item-link::after {
  content: none;
}
@media (min-width: 960px) {
  .header__mainnav .header__toplinks .cmp-list__item-link {
    display: inline-block;
  }
}
.header__mainnav .header__toplinks .cmp-list__icon {
  margin-block-end: 2px;
  align-self: center;
}
@media (max-width: 959px) {
  .header__mainnav.navigation--open .header__toplinks {
    inset-inline-start: 0;
    transition: inset-inline-start 0.3s ease-out;
  }
}

@media (max-width: 959px) {
  .header__mainnav .header__toplinks .cmp-list__item-link::after {
    position: absolute;
    inset-block-start: 45%;
  }
}

html {
  --ff-regular: Volvo Novum Regular, Assistant, Noto Sans Regular, sans-serif;
  --ff-medium: Volvo Novum Medium, Noto Sans Medium, sans-serif;
  --ff-light: Volvo Novum Light, Noto Sans Light, sans-serif;
  --ff-broad: VolvoBroadProDigital, Volvo Novum Medium, Noto Sans Medium, sans-serif;
  --ff-stage-header: var(--ff-broad);
  --ls-header: -0.1px;
  --ls-default: -0.1px;
  --ls-volvo: 0.06em;
}
html[dir=rtl] {
  --ff-regular: Assistant, Volvo Novum Regular, Noto Sans Regular, sans-serif;
  --ff-light: Assistant Light, Volvo Novum Light, Noto Sans Light, sans-serif;
  --ff-medium: Assistant Bold, Volvo Novum Medium, Noto Sans Medium, sans-serif;
  --ff-broad: Assistant Bold, Volvo Novum Medium, Noto Sans Medium, sans-serif;
  --ls-volvo: -0.1px;
}

[data-dealer-private] {
  --ff-broad: var(--ff-medium);
}

*,
*::before,
*::after {
  box-sizing: border-box;
}

body {
  font-family: var(--ff-regular);
  font-size: 16px;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: var(--ls-default);
  margin: 0;
  padding: 0;
  color: #53565a;
  background-color: #fff;
  -webkit-text-size-adjust: 100%;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  overflow-x: hidden;
}

[tabindex="-1"]:focus:not(:focus-visible) {
  outline: 0 !important;
}

hr {
  margin-block: 1rem;
  margin-inline: 0;
  color: inherit;
  background-color: currentColor;
  border: 0;
}

hr:not([size]) {
  height: 1px;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  margin-block: 0;
  color: #141414;
}

[class*=text--white] {
  color: #fff;
}
[class*=text--white] h1,
[class*=text--white] h2,
[class*=text--white] h3,
[class*=text--white] h4,
[class*=text--white] h5,
[class*=text--white] h6 {
  color: #fff;
}

p {
  margin-block: 0;
}

abbr[title] {
  text-decoration: underline;
  -webkit-text-decoration: underline dotted;
          text-decoration: underline dotted;
  cursor: help;
  -webkit-text-decoration-skip-ink: none;
          text-decoration-skip-ink: none;
}

address {
  margin-block-end: 1rem;
  font-style: normal;
  line-height: inherit;
}

ol,
ul {
  padding-inline-start: 0;
  list-style: none;
}

ol,
ul,
dl {
  margin-block: 0;
}

ol ol,
ul ul,
ol ul,
ul ol {
  margin-block-end: 0;
}

dt {
  font-weight: 700;
}

dd {
  margin-inline-start: 0;
}

blockquote {
  margin-block: 0 1rem;
  margin-inline: 0;
}

b,
strong {
  font-weight: normal;
  font-family: var(--ff-medium);
}

small {
  font-size: 0.875em;
}

sub,
sup {
  position: relative;
  font-size: 0.75em;
  line-height: 0;
  vertical-align: baseline;
}

sub {
  inset-block-end: -0.25em;
}

sup {
  inset-block-start: -0.5em;
}

body a {
  color: #53565a;
  text-decoration: none;
  transition: color 0.1s linear;
}
body a:hover {
  text-decoration: none;
}

figure {
  margin-block: 0 1rem;
  margin-inline: 0;
}

img {
  vertical-align: middle;
  max-width: 100%;
}

table {
  border-collapse: collapse;
}

th {
  text-align: inherit;
}

input,
button,
select,
optgroup,
textarea {
  color: #53565a;
  margin: 0;
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
}

button,
input {
  overflow: visible;
}

button,
select {
  text-transform: none;
}

select {
  word-wrap: normal;
}

[list]::-webkit-calendar-picker-indicator {
  display: none;
}

button,
[type=button],
[type=reset],
[type=submit] {
  -webkit-appearance: button;
}

::-moz-focus-inner {
  padding: 0;
  border-style: none;
}

input[type=date],
input[type=time],
input[type=datetime-local],
input[type=month] {
  -webkit-appearance: none;
  appearance: none;
}
html[dir=rtl] input[type=date],
html[dir=rtl] input[type=time],
html[dir=rtl] input[type=datetime-local],
html[dir=rtl] input[type=month] {
  text-align: end;
}

html[dir=rtl] input[type=tel] {
  text-align: end;
}

textarea {
  overflow: auto;
  resize: vertical;
}

fieldset {
  min-width: 0;
  padding: 0;
  margin: 0;
  border: 0;
}

progress {
  vertical-align: baseline;
}

::-webkit-datetime-edit {
  overflow: visible;
  line-height: 0;
}

[type=search] {
  outline-offset: -2px;
  -webkit-appearance: textfield;
  appearance: textfield;
}

::-webkit-search-decoration {
  -webkit-appearance: none;
}

::-webkit-color-swatch-wrapper {
  padding: 0;
}

::-webkit-file-upload-button {
  font: inherit;
  -webkit-appearance: button;
}

output {
  display: inline-block;
}

summary {
  display: list-item;
  cursor: pointer;
}

template {
  display: none;
}

main {
  display: block;
}

[hidden] {
  display: none !important;
}

@media (max-width: 1199px) {
  .root.responsivegrid > .aem-Grid {
    margin: 0;
  }
  .root.responsivegrid .root.responsivegrid > .aem-Grid {
    margin-inline: -15px;
  }
}
@media (min-width: 1200px) {
  .root.responsivegrid {
    width: 100%;
    max-width: 1200px;
    margin-block: 0;
    margin-inline: auto;
  }
}

.aem-Grid {
  display: flex;
  flex-wrap: wrap;
  margin-block: 0;
  margin-inline: -15px;
}
.aem-GridColumn {
  padding-block: 0;
  padding-inline: 15px;
}
.aem-Grid-newComponent {
  clear: both;
  margin: 0;
  width: 100%;
}
@media (max-width: 767px) {
  .aem-Grid--reverse-mobile .aem-Grid {
    flex-direction: column-reverse;
  }
}
.aem-Grid .text table:not(table[width]) {
  width: 100%;
}

.aem-Grid--12 > .aem-GridColumn--default--1 {
  width: 8.3333333333%;
}
.aem-Grid--12 > .aem-GridColumn--default--2 {
  width: 16.6666666667%;
}
.aem-Grid--12 > .aem-GridColumn--default--3 {
  width: 25%;
}
.aem-Grid--12 > .aem-GridColumn--default--4 {
  width: 33.3333333333%;
}
.aem-Grid--12 > .aem-GridColumn--default--5 {
  width: 41.6666666667%;
}
.aem-Grid--12 > .aem-GridColumn--default--6 {
  width: 50%;
}
.aem-Grid--12 > .aem-GridColumn--default--7 {
  width: 58.3333333333%;
}
.aem-Grid--12 > .aem-GridColumn--default--8 {
  width: 66.6666666667%;
}
.aem-Grid--12 > .aem-GridColumn--default--9 {
  width: 75%;
}
.aem-Grid--12 > .aem-GridColumn--default--10 {
  width: 83.3333333333%;
}
.aem-Grid--12 > .aem-GridColumn--default--11 {
  width: 91.6666666667%;
}
.aem-Grid--12 > .aem-GridColumn--default--12 {
  width: 100%;
}
.aem-Grid--12 > .aem-GridColumn--offset--default--0 {
  margin-inline-start: 0%;
}
.aem-Grid--12 > .aem-GridColumn--offset--default--1 {
  margin-inline-start: 8.3333333333%;
}
.aem-Grid--12 > .aem-GridColumn--offset--default--2 {
  margin-inline-start: 16.6666666667%;
}
.aem-Grid--12 > .aem-GridColumn--offset--default--3 {
  margin-inline-start: 25%;
}
.aem-Grid--12 > .aem-GridColumn--offset--default--4 {
  margin-inline-start: 33.3333333333%;
}
.aem-Grid--12 > .aem-GridColumn--offset--default--5 {
  margin-inline-start: 41.6666666667%;
}
.aem-Grid--12 > .aem-GridColumn--offset--default--6 {
  margin-inline-start: 50%;
}
.aem-Grid--12 > .aem-GridColumn--offset--default--7 {
  margin-inline-start: 58.3333333333%;
}
.aem-Grid--12 > .aem-GridColumn--offset--default--8 {
  margin-inline-start: 66.6666666667%;
}
.aem-Grid--12 > .aem-GridColumn--offset--default--9 {
  margin-inline-start: 75%;
}
.aem-Grid--12 > .aem-GridColumn--offset--default--10 {
  margin-inline-start: 83.3333333333%;
}
.aem-Grid--12 > .aem-GridColumn--offset--default--11 {
  margin-inline-start: 91.6666666667%;
}
.aem-Grid--12 > .aem-GridColumn--offset--default--12 {
  margin-inline-start: 100%;
}

.aem-GridColumn--default--hide {
  /* hide behavior */
  display: none;
}

.aem-GridColumn--default--show {
  /* show behavior */
  display: block;
}

@media (max-width: 767px) {
  .aem-Grid--12 > .aem-GridColumn--phone--1 {
    width: 8.3333333333%;
  }
  .aem-Grid--12 > .aem-GridColumn--phone--2 {
    width: 16.6666666667%;
  }
  .aem-Grid--12 > .aem-GridColumn--phone--3 {
    width: 25%;
  }
  .aem-Grid--12 > .aem-GridColumn--phone--4 {
    width: 33.3333333333%;
  }
  .aem-Grid--12 > .aem-GridColumn--phone--5 {
    width: 41.6666666667%;
  }
  .aem-Grid--12 > .aem-GridColumn--phone--6 {
    width: 50%;
  }
  .aem-Grid--12 > .aem-GridColumn--phone--7 {
    width: 58.3333333333%;
  }
  .aem-Grid--12 > .aem-GridColumn--phone--8 {
    width: 66.6666666667%;
  }
  .aem-Grid--12 > .aem-GridColumn--phone--9 {
    width: 75%;
  }
  .aem-Grid--12 > .aem-GridColumn--phone--10 {
    width: 83.3333333333%;
  }
  .aem-Grid--12 > .aem-GridColumn--phone--11 {
    width: 91.6666666667%;
  }
  .aem-Grid--12 > .aem-GridColumn--phone--12 {
    width: 100%;
  }
  .aem-Grid--12 > .aem-GridColumn--offset--phone--0 {
    margin-inline-start: 0%;
  }
  .aem-Grid--12 > .aem-GridColumn--offset--phone--1 {
    margin-inline-start: 8.3333333333%;
  }
  .aem-Grid--12 > .aem-GridColumn--offset--phone--2 {
    margin-inline-start: 16.6666666667%;
  }
  .aem-Grid--12 > .aem-GridColumn--offset--phone--3 {
    margin-inline-start: 25%;
  }
  .aem-Grid--12 > .aem-GridColumn--offset--phone--4 {
    margin-inline-start: 33.3333333333%;
  }
  .aem-Grid--12 > .aem-GridColumn--offset--phone--5 {
    margin-inline-start: 41.6666666667%;
  }
  .aem-Grid--12 > .aem-GridColumn--offset--phone--6 {
    margin-inline-start: 50%;
  }
  .aem-Grid--12 > .aem-GridColumn--offset--phone--7 {
    margin-inline-start: 58.3333333333%;
  }
  .aem-Grid--12 > .aem-GridColumn--offset--phone--8 {
    margin-inline-start: 66.6666666667%;
  }
  .aem-Grid--12 > .aem-GridColumn--offset--phone--9 {
    margin-inline-start: 75%;
  }
  .aem-Grid--12 > .aem-GridColumn--offset--phone--10 {
    margin-inline-start: 83.3333333333%;
  }
  .aem-Grid--12 > .aem-GridColumn--offset--phone--11 {
    margin-inline-start: 91.6666666667%;
  }
  .aem-Grid--12 > .aem-GridColumn--offset--phone--12 {
    margin-inline-start: 100%;
  }
  .aem-GridColumn--phone--hide {
    /* hide behavior */
    display: none;
  }
  .aem-GridColumn--phone--show {
    /* show behavior */
    display: block;
  }
}
@media (min-width: 768px) and (max-width: 959px) {
  .aem-Grid--12 > .aem-GridColumn--tablet--1 {
    width: 8.3333333333%;
  }
  .aem-Grid--12 > .aem-GridColumn--tablet--2 {
    width: 16.6666666667%;
  }
  .aem-Grid--12 > .aem-GridColumn--tablet--3 {
    width: 25%;
  }
  .aem-Grid--12 > .aem-GridColumn--tablet--4 {
    width: 33.3333333333%;
  }
  .aem-Grid--12 > .aem-GridColumn--tablet--5 {
    width: 41.6666666667%;
  }
  .aem-Grid--12 > .aem-GridColumn--tablet--6 {
    width: 50%;
  }
  .aem-Grid--12 > .aem-GridColumn--tablet--7 {
    width: 58.3333333333%;
  }
  .aem-Grid--12 > .aem-GridColumn--tablet--8 {
    width: 66.6666666667%;
  }
  .aem-Grid--12 > .aem-GridColumn--tablet--9 {
    width: 75%;
  }
  .aem-Grid--12 > .aem-GridColumn--tablet--10 {
    width: 83.3333333333%;
  }
  .aem-Grid--12 > .aem-GridColumn--tablet--11 {
    width: 91.6666666667%;
  }
  .aem-Grid--12 > .aem-GridColumn--tablet--12 {
    width: 100%;
  }
  .aem-Grid--12 > .aem-GridColumn--offset--tablet--0 {
    margin-inline-start: 0%;
  }
  .aem-Grid--12 > .aem-GridColumn--offset--tablet--1 {
    margin-inline-start: 8.3333333333%;
  }
  .aem-Grid--12 > .aem-GridColumn--offset--tablet--2 {
    margin-inline-start: 16.6666666667%;
  }
  .aem-Grid--12 > .aem-GridColumn--offset--tablet--3 {
    margin-inline-start: 25%;
  }
  .aem-Grid--12 > .aem-GridColumn--offset--tablet--4 {
    margin-inline-start: 33.3333333333%;
  }
  .aem-Grid--12 > .aem-GridColumn--offset--tablet--5 {
    margin-inline-start: 41.6666666667%;
  }
  .aem-Grid--12 > .aem-GridColumn--offset--tablet--6 {
    margin-inline-start: 50%;
  }
  .aem-Grid--12 > .aem-GridColumn--offset--tablet--7 {
    margin-inline-start: 58.3333333333%;
  }
  .aem-Grid--12 > .aem-GridColumn--offset--tablet--8 {
    margin-inline-start: 66.6666666667%;
  }
  .aem-Grid--12 > .aem-GridColumn--offset--tablet--9 {
    margin-inline-start: 75%;
  }
  .aem-Grid--12 > .aem-GridColumn--offset--tablet--10 {
    margin-inline-start: 83.3333333333%;
  }
  .aem-Grid--12 > .aem-GridColumn--offset--tablet--11 {
    margin-inline-start: 91.6666666667%;
  }
  .aem-Grid--12 > .aem-GridColumn--offset--tablet--12 {
    margin-inline-start: 100%;
  }
  .aem-GridColumn--tablet--hide {
    /* hide behavior */
    display: none;
  }
  .aem-GridColumn--tablet--show {
    /* show behavior */
    display: block;
  }
}
.aem-GridShowHidden > .aem-Grid > .aem-GridColumn {
  display: block !important;
}

.aem-Grid .container-fullwidth {
  margin-block: 0;
  margin-inline: -15px;
}
@media (min-width: 1200px) {
  .aem-Grid .container-fullwidth {
    width: auto;
    margin-block: 0;
    margin-inline: calc((100vw - 1200px) / -2);
  }
}
@media (min-width: 2048px) {
  .main-grid .aem-Grid .container-fullwidth {
    width: auto;
    margin-block: 0;
    margin-inline: calc((2048px - 1200px) / -2);
  }
}

@media (min-width: 1200px) {
  .container {
    max-width: 1200px;
    margin-block: 0;
    margin-inline: auto;
  }
}

.layoutcontainer {
  margin-block: 30px;
  margin-inline: 0;
}

@font-face {
  font-family: "VolvoBroadProDigital";
  src: url("../shared/resources/fonts/VolvoBroadProDigital/VolvoBroadProDigital-webfont.woff2") format("woff2");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
  unicode-range: U+000-589; /* Latin glyphs */
}
@font-face {
  font-family: "Assistant";
  src: url("../shared/resources/fonts/assistant/Assistant-regular-webfont.woff2") format("woff2");
  font-weight: normal;
  font-style: normal;
  font-display: fallback;
  unicode-range: U+0590-05FF; /* Hebrew glyphs */
}
@font-face {
  font-family: "Assistant";
  src: url("../shared/resources/fonts/assistant/Assistant-semibold-webfont.woff2") format("woff2");
  font-weight: 700;
  font-style: normal;
  font-display: fallback;
  unicode-range: U+0590-05FF; /* Hebrew glyphs */
}
@font-face {
  font-family: "Assistant Light";
  src: url("../shared/resources/fonts/assistant/Assistant-light-webfont.woff2") format("woff2");
  font-weight: 300;
  font-style: normal;
  font-display: fallback;
  unicode-range: U+0590-05FF; /* Hebrew glyphs */
}
@font-face {
  font-family: "Assistant Bold";
  src: url("../shared/resources/fonts/assistant/Assistant-semibold-webfont.woff2") format("woff2");
  font-weight: 700;
  font-style: normal;
  font-display: fallback;
  unicode-range: U+0590-05FF; /* Hebrew glyphs */
}
@font-face {
  font-family: "Helvetica Neue";
  src: url("../shared/resources/fonts/HelveticaNeue/HelveticaNeueRoman-webfont.woff2") format("woff2");
  font-weight: normal;
  font-style: normal;
  font-display: fallback;
}
@font-face {
  font-family: "Helvetica Neue";
  src: url("../shared/resources/fonts/HelveticaNeue/HelveticaNeueBlack-webfont.woff2") format("woff2");
  font-weight: 700;
  font-style: normal;
  font-display: fallback;
}
@font-face {
  font-family: "Volvo Novum Regular";
  src: url("../shared/resources/fonts/VolvoNovum/VolvoNovum-Regular-webfont.woff2") format("woff2");
  font-weight: normal;
  font-style: normal;
  font-display: fallback;
}
@font-face {
  font-family: "Volvo Novum Medium";
  src: url("../shared/resources/fonts/VolvoNovum/VolvoNovum-Medium-webfont.woff2") format("woff2");
  font-weight: normal;
  font-style: normal;
  font-display: fallback;
}
@font-face {
  font-family: "Volvo Novum Light";
  src: url("../shared/resources/fonts/VolvoNovum/VolvoNovum-Light-webfont.woff2") format("woff2");
  font-weight: normal;
  font-style: normal;
  font-display: fallback;
}
@font-face {
  font-family: "Noto Sans Light";
  src: url("../shared/resources/fonts/NotoSans/NotoSans-Light.woff2") format("woff2");
  font-weight: normal;
  font-style: normal;
  font-display: fallback;
}
@font-face {
  font-family: "Noto Sans Regular";
  src: url("../shared/resources/fonts/NotoSans/NotoSans-Regular.woff2") format("woff2");
  font-weight: normal;
  font-style: normal;
  font-display: fallback;
}
@font-face {
  font-family: "Noto Sans Medium";
  src: url("../shared/resources/fonts/NotoSans/NotoSans-SemiBold.woff2") format("woff2");
  font-weight: normal;
  font-style: normal;
  font-display: fallback;
}
@font-face {
  font-family: "Font Awesome Brands";
  font-style: normal;
  font-weight: 400;
  font-display: block;
  src: url("../shared/resources/fonts/FontAwesome/brands/fa-brands-400.woff2") format("woff2"), url("../shared/resources/fonts/FontAwesome/brands/fa-brands-400.woff") format("woff"), url("../shared/resources/fonts/FontAwesome/brands/fa-brands-400.svg#fontawesome") format("svg");
}
@font-face {
  font-family: "Font Awesome Regular";
  font-style: normal;
  font-weight: 400;
  font-display: block;
  src: url("../shared/resources/fonts/FontAwesome/regular/fa-regular-400.woff2") format("woff2"), url("../shared/resources/fonts/FontAwesome/regular/fa-regular-400.woff") format("woff"), url("../shared/resources/fonts/FontAwesome/regular/fa-regular-400.svg#fontawesome") format("svg");
}
@font-face {
  font-family: "Font Awesome Solid";
  font-style: normal;
  font-weight: 900;
  font-display: block;
  src: url("../shared/resources/fonts/FontAwesome/solid/fa-solid-900.woff2") format("woff2"), url("../shared/resources/fonts/FontAwesome/solid/fa-solid-900.woff") format("woff"), url("../shared/resources/fonts/FontAwesome/solid/fa-solid-900.svg#fontawesome") format("svg");
}
@font-face {
  font-family: "Roboto Light";
  src: url("../shared/resources/fonts/Roboto/roboto-light-webfont.woff2") format("woff2");
  font-weight: 300;
  font-style: normal;
}
@font-face {
  font-family: "Roboto Regular";
  src: url("../shared/resources/fonts/Roboto/roboto-regular-webfont.woff2") format("woff2");
  font-weight: 400;
  font-style: normal;
}
@font-face {
  font-family: "Roboto Medium";
  src: url("../shared/resources/fonts/Roboto/roboto-medium-webfont.woff2") format("woff2");
  font-weight: 500;
  font-style: normal;
}
@font-face {
  font-family: "Roboto Bold";
  src: url("../shared/resources/fonts/Roboto/roboto-bold-webfont.woff2") format("woff2");
  font-weight: 700;
  font-style: normal;
}
@keyframes spinner {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
@font-face {
  font-family: "VolvoIcons";
  src: url("../shared/resources/fonts/volvoicons/VolvoIcons.woff2?v=2024.1029.1124916.0004913199") format("woff"), url("../shared/resources/fonts/volvoicons/VolvoIcons.woff?v=2024.1029.1124916.0004913199") format("woff");
  font-weight: normal;
  font-style: normal;
  font-display: auto;
}
.vi::before {
  font-family: "VolvoIcons";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  text-rendering: auto;
  display: inline-block;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.vi-cog:before {
  content: "\e93a";
}

.vi-info:before {
  content: "\e936";
  color: #53565a;
}

.vi-map-marker-outline:before {
  background-color: #53565a;
  content: "";
  display: inline-block;
  -webkit-mask-image: url("../../../../content/dam/volvo-media/list-icons/geopin.svg#geopin-icon-w24-view");
          mask-image: url("../../../../content/dam/volvo-media/list-icons/geopin.svg#geopin-icon-w24-view");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-size: cover;
          mask-size: cover;
  pointer-events: none;
  width: var(--v-icon-size);
  height: var(--v-icon-size);
}
@media (min-width: 1200px) {
  .vi-map-marker-outline:before {
    -webkit-mask-image: url("../../../../content/dam/volvo-media/list-icons/geopin.svg#geopin-icon-w16-view");
            mask-image: url("../../../../content/dam/volvo-media/list-icons/geopin.svg#geopin-icon-w16-view");
  }
}

.vi-calendar-sheet:before {
  content: "\e938";
  color: #53565a;
}

.vi-quotation_mark:before {
  content: "\e935";
  color: #50a294;
}

.vi-check-thin:before {
  content: "\e904";
}

.vi-header-chevron-left:before {
  content: "\e92c";
  color: #53565a;
}

.vi-header-chevron-right:before {
  content: "\e92e";
  color: #53565a;
}

.vi-header-chevron-up:before {
  content: "\e92f";
  color: #53565a;
}

.vi-header-chevron-down:before {
  content: "\e930";
  color: #53565a;
}

.vi-header-search:before {
  content: "\e92d";
}

.vi-twitter:before {
  background-color: #53565a;
  content: "";
  display: inline-block;
  -webkit-mask-image: url("../../../../content/dam/volvo-media/list-icons/twitter.svg#twitter-icon-w24-view");
          mask-image: url("../../../../content/dam/volvo-media/list-icons/twitter.svg#twitter-icon-w24-view");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-size: cover;
          mask-size: cover;
  pointer-events: none;
  width: var(--v-icon-size);
  height: var(--v-icon-size);
}
@media (min-width: 1200px) {
  .vi-twitter:before {
    -webkit-mask-image: url("../../../../content/dam/volvo-media/list-icons/twitter.svg#twitter-icon-w16-view");
            mask-image: url("../../../../content/dam/volvo-media/list-icons/twitter.svg#twitter-icon-w16-view");
  }
}

.vi-pinterest-p:before {
  content: "\e929";
}

.vi-facebook:before,
.vi-facebook-f:before {
  background-color: #53565a;
  content: "";
  display: inline-block;
  -webkit-mask-image: url("../../../../content/dam/volvo-media/list-icons/facebook.svg#facebook-icon-w24-view");
          mask-image: url("../../../../content/dam/volvo-media/list-icons/facebook.svg#facebook-icon-w24-view");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-size: cover;
          mask-size: cover;
  pointer-events: none;
  width: var(--v-icon-size);
  height: var(--v-icon-size);
}
@media (min-width: 1200px) {
  .vi-facebook:before,
  .vi-facebook-f:before {
    -webkit-mask-image: url("../../../../content/dam/volvo-media/list-icons/facebook.svg#facebook-icon-w16-view");
            mask-image: url("../../../../content/dam/volvo-media/list-icons/facebook.svg#facebook-icon-w16-view");
  }
}

.vi-linkedin:before {
  background-color: #53565a;
  content: "";
  display: inline-block;
  -webkit-mask-image: url("../../../../content/dam/volvo-media/list-icons/linked-in.svg#linked-in-icon-w24-view");
          mask-image: url("../../../../content/dam/volvo-media/list-icons/linked-in.svg#linked-in-icon-w24-view");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-size: cover;
          mask-size: cover;
  pointer-events: none;
  width: var(--v-icon-size);
  height: var(--v-icon-size);
}
@media (min-width: 1200px) {
  .vi-linkedin:before {
    -webkit-mask-image: url("../../../../content/dam/volvo-media/list-icons/linked-in.svg#linked-in-icon-w16-view");
            mask-image: url("../../../../content/dam/volvo-media/list-icons/linked-in.svg#linked-in-icon-w16-view");
  }
}

.vi-group:before {
  content: "\e925";
}

.vi-star:before {
  content: "\e926";
}

.vi-comments-o:before {
  content: "\e927";
}

.vi-plane:before {
  content: "\e91d";
}

.vi-tag:before {
  content: "\e91e";
}

.vi-envelope:before {
  background-color: #53565a;
  content: "";
  display: inline-block;
  -webkit-mask-image: url("../../../../content/dam/volvo-media/list-icons/mail-closed.svg#mail-closed-icon-w24-view");
          mask-image: url("../../../../content/dam/volvo-media/list-icons/mail-closed.svg#mail-closed-icon-w24-view");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-size: cover;
          mask-size: cover;
  pointer-events: none;
  width: var(--v-icon-size);
  height: var(--v-icon-size);
}
@media (min-width: 1200px) {
  .vi-envelope:before {
    -webkit-mask-image: url("../../../../content/dam/volvo-media/list-icons/mail-closed.svg#mail-closed-icon-w16-view");
            mask-image: url("../../../../content/dam/volvo-media/list-icons/mail-closed.svg#mail-closed-icon-w16-view");
  }
}

.vi-sitemap:before {
  content: "\e920";
}

.vi-address-card:before {
  content: "\e921";
}

.vi-share-alt:before,
.vi-share-alt-square:before {
  background-color: #53565a;
  content: "";
  display: inline-block;
  -webkit-mask-image: url("../../../../content/dam/volvo-media/list-icons/share.svg#share-icon-w24-view");
          mask-image: url("../../../../content/dam/volvo-media/list-icons/share.svg#share-icon-w24-view");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-size: cover;
          mask-size: cover;
  pointer-events: none;
  width: var(--v-icon-size);
  height: var(--v-icon-size);
}
@media (min-width: 1200px) {
  .vi-share-alt:before,
  .vi-share-alt-square:before {
    -webkit-mask-image: url("../../../../content/dam/volvo-media/list-icons/share.svg#share-icon-w16-view");
            mask-image: url("../../../../content/dam/volvo-media/list-icons/share.svg#share-icon-w16-view");
  }
}

.vi-heart:before {
  content: "\e924";
}

.vi-heart-o:before {
  content: "\e923";
}

.vi-map-marker:before {
  background-color: #53565a;
  content: "";
  display: inline-block;
  -webkit-mask-image: url("../../../../content/dam/volvo-media/list-icons/geopin.svg#geopin-icon-w24-view");
          mask-image: url("../../../../content/dam/volvo-media/list-icons/geopin.svg#geopin-icon-w24-view");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-size: cover;
          mask-size: cover;
  pointer-events: none;
  width: var(--v-icon-size);
  height: var(--v-icon-size);
}
@media (min-width: 1200px) {
  .vi-map-marker:before {
    -webkit-mask-image: url("../../../../content/dam/volvo-media/list-icons/geopin.svg#geopin-icon-w16-view");
            mask-image: url("../../../../content/dam/volvo-media/list-icons/geopin.svg#geopin-icon-w16-view");
  }
}

.vi-calendar:before {
  content: "\e918";
}

.vi-arrow-up:before {
  content: "\e919";
}

.vi-rss:before {
  content: "\e903";
}

.vi-fullwidth-quote:before {
  content: '"';
}

.vi-hook-bracket-left:before {
  content: "「";
}

.vi-hook-bracket-right:before {
  content: "」";
}

.vi-single-quote-left:before {
  content: "‘";
}

.vi-single-quote-right:before {
  content: "’";
}

.vi-single-quote-left-low:before {
  content: "‚";
}

.vi-quote-left-low:before {
  content: "„";
}

.vi-compress:before {
  content: "\e914";
}

.vi-expand:before {
  content: "\e901";
}

.vi-angle-left:before {
  content: "‹";
}

.vi-angle-right:before {
  content: "›";
}

.vi-quote-left:before {
  content: "“";
}

.vi-quote-right:before {
  content: "”";
}

.vi-angle-double-right:before {
  content: "»";
}

.vi-angle-double-left:before {
  content: "«";
}

.vi-minus-circle:before {
  content: "\e915";
}

.vi-plus-circle:before {
  content: "\e912";
}

.vi-sort-up:before {
  content: "\e913";
}

.vi-square:before {
  content: "\e902";
}

.vi-search:before {
  content: "\e906";
}

.vi-search-o:before {
  content: "\e939";
  color: #53565a;
}

.vi-spinner:before {
  content: "\e907";
}

.vi-check:before {
  content: "\e908";
}

.vi-download:before {
  content: "\e909";
}

.vi-step-forward:before {
  content: "\e90a";
}

.vi-step-backward:before {
  content: "\e90b";
}

.vi-chevron-right:before {
  content: "\e90c";
}

.vi-chevron-left:before {
  content: "\e90d";
}

.vi-chevron-down:before {
  content: "\e90e";
}

.vi-chevron-up:before {
  content: "\e90f";
}

.vi-close:before {
  content: "\e910";
}

.vi-play:before {
  content: "\e911";
}

.vi-external-link:before {
  background-color: #53565a;
  content: "";
  display: inline-block;
  -webkit-mask-image: url("../../../../content/dam/volvo-media/list-icons/link-external.svg#link-external-icon-w24-view");
          mask-image: url("../../../../content/dam/volvo-media/list-icons/link-external.svg#link-external-icon-w24-view");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-size: cover;
          mask-size: cover;
  pointer-events: none;
  width: var(--v-icon-size);
  height: var(--v-icon-size);
}
@media (min-width: 1200px) {
  .vi-external-link:before {
    -webkit-mask-image: url("../../../../content/dam/volvo-media/list-icons/link-external.svg#link-external-icon-w16-view");
            mask-image: url("../../../../content/dam/volvo-media/list-icons/link-external.svg#link-external-icon-w16-view");
  }
}

.vi-arrow-rotate-left-solid:before {
  content: "\e932";
}

.vi-minus-solid:before {
  content: "\e933";
}

.vi-plus-solid:before {
  content: "\e934";
}

.vi-bars:before {
  content: "\e900";
}

.vi-search-o:before {
  content: "\e939";
  color: #53565a;
}

.vi-trending-up:before {
  content: "\e91a";
}

.vi-time:before {
  content: "\e917";
}

.vi-arrow-right:before {
  content: "\e916";
}

.vi-arrow-down:before {
  content: "\e91b";
}

.vi-close-light:before {
  content: "\e93b";
}

/* stylelint-disable font-family-no-missing-generic-family-keyword */
/*!
 * Font Awesome Free 5.14.0 by @fontawesome - https://fontawesome.com
 * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
 */
.fa,
.fas,
.far,
.fal,
.fad,
.fab {
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  display: inline-block;
  font-style: normal;
  font-variant: normal;
  text-rendering: auto;
  line-height: 1;
}

.fa-lg {
  font-size: 1.3333333333em;
  line-height: 0.75em;
  vertical-align: -0.0667em;
}

.fa-xs {
  font-size: 0.75em;
}

.fa-sm {
  font-size: 0.875em;
}

.fa-1x {
  font-size: 1em;
}

.fa-2x {
  font-size: 2em;
}

.fa-3x {
  font-size: 3em;
}

.fa-4x {
  font-size: 4em;
}

.fa-5x {
  font-size: 5em;
}

.fa-6x {
  font-size: 6em;
}

.fa-7x {
  font-size: 7em;
}

.fa-8x {
  font-size: 8em;
}

.fa-9x {
  font-size: 9em;
}

.fa-10x {
  font-size: 10em;
}

.fa-fw {
  text-align: center;
  width: 1.25em;
}

.fa-ul {
  list-style-type: none;
  margin-left: 2.5em;
  padding-left: 0;
}
.fa-ul > li {
  position: relative;
}

.fa-li {
  left: -2em;
  position: absolute;
  text-align: center;
  width: 2em;
  line-height: inherit;
}

.fa-border {
  border: solid 0.08em #eee;
  border-radius: 0.1em;
  padding: 0.2em 0.25em 0.15em;
}

.fa-pull-left {
  float: left;
}

.fa-pull-right {
  float: right;
}

.fa.fa-pull-left,
.fas.fa-pull-left,
.far.fa-pull-left,
.fal.fa-pull-left,
.fab.fa-pull-left {
  margin-right: 0.3em;
}
.fa.fa-pull-right,
.fas.fa-pull-right,
.far.fa-pull-right,
.fal.fa-pull-right,
.fab.fa-pull-right {
  margin-left: 0.3em;
}

.fa-spin {
  animation: fa-spin 2s infinite linear;
}

.fa-pulse {
  animation: fa-spin 1s infinite steps(8);
}

@keyframes fa-spin {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
.fa-rotate-90 {
  -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=1)";
  transform: rotate(90deg);
}

.fa-rotate-180 {
  -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2)";
  transform: rotate(180deg);
}

.fa-rotate-270 {
  -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=3)";
  transform: rotate(270deg);
}

.fa-flip-horizontal {
  -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1)";
  transform: scale(-1, 1);
}

.fa-flip-vertical {
  -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)";
  transform: scale(1, -1);
}

.fa-flip-both, .fa-flip-horizontal.fa-flip-vertical {
  -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)";
  transform: scale(-1, -1);
}

:root .fa-rotate-90,
:root .fa-rotate-180,
:root .fa-rotate-270,
:root .fa-flip-horizontal,
:root .fa-flip-vertical,
:root .fa-flip-both {
  filter: none;
}

.fa-stack {
  display: inline-block;
  height: 2em;
  line-height: 2em;
  position: relative;
  vertical-align: middle;
  width: 2.5em;
}

.fa-stack-1x,
.fa-stack-2x {
  left: 0;
  position: absolute;
  text-align: center;
  width: 100%;
}

.fa-stack-1x {
  line-height: inherit;
}

.fa-stack-2x {
  font-size: 2em;
}

.fa-inverse {
  color: #fff;
}

/* Font Awesome uses the Unicode Private Use Area (PUA) to ensure screen
readers do not read off random characters that represent icons */
.fa-500px:before {
  content: "\f26e";
}

.fa-accessible-icon:before {
  content: "\f368";
}

.fa-accusoft:before {
  content: "\f369";
}

.fa-acquisitions-incorporated:before {
  content: "\f6af";
}

.fa-ad:before {
  content: "\f641";
}

.fa-address-book:before {
  content: "\f2b9";
}

.fa-address-card:before {
  content: "\f2bb";
}

.fa-adjust:before {
  content: "\f042";
}

.fa-adn:before {
  content: "\f170";
}

.fa-adobe:before {
  content: "\f778";
}

.fa-adversal:before {
  content: "\f36a";
}

.fa-affiliatetheme:before {
  content: "\f36b";
}

.fa-air-freshener:before {
  content: "\f5d0";
}

.fa-airbnb:before {
  content: "\f834";
}

.fa-algolia:before {
  content: "\f36c";
}

.fa-align-center:before {
  content: "\f037";
}

.fa-align-justify:before {
  content: "\f039";
}

.fa-align-left:before {
  content: "\f036";
}

.fa-align-right:before {
  content: "\f038";
}

.fa-alipay:before {
  content: "\f642";
}

.fa-allergies:before {
  content: "\f461";
}

.fa-amazon:before {
  content: "\f270";
}

.fa-amazon-pay:before {
  content: "\f42c";
}

.fa-ambulance:before {
  content: "\f0f9";
}

.fa-american-sign-language-interpreting:before {
  content: "\f2a3";
}

.fa-amilia:before {
  content: "\f36d";
}

.fa-anchor:before {
  content: "\f13d";
}

.fa-android:before {
  content: "\f17b";
}

.fa-angellist:before {
  content: "\f209";
}

.fa-angle-double-down:before {
  content: "\f103";
}

.fa-angle-double-left:before {
  content: "\f100";
}

.fa-angle-double-right:before {
  content: "\f101";
}

.fa-angle-double-up:before {
  content: "\f102";
}

.fa-angle-down:before {
  content: "\f107";
}

.fa-angle-left:before {
  content: "\f104";
}

.fa-angle-right:before {
  content: "\f105";
}

.fa-angle-up:before {
  content: "\f106";
}

.fa-angry:before {
  content: "\f556";
}

.fa-angrycreative:before {
  content: "\f36e";
}

.fa-angular:before {
  content: "\f420";
}

.fa-ankh:before {
  content: "\f644";
}

.fa-app-store:before {
  content: "\f36f";
}

.fa-app-store-ios:before {
  content: "\f370";
}

.fa-apper:before {
  content: "\f371";
}

.fa-apple:before {
  content: "\f179";
}

.fa-apple-alt:before {
  content: "\f5d1";
}

.fa-apple-pay:before {
  content: "\f415";
}

.fa-archive:before {
  content: "\f187";
}

.fa-archway:before {
  content: "\f557";
}

.fa-arrow-alt-circle-down:before {
  content: "\f358";
}

.fa-arrow-alt-circle-left:before {
  content: "\f359";
}

.fa-arrow-alt-circle-right:before {
  content: "\f35a";
}

.fa-arrow-alt-circle-up:before {
  content: "\f35b";
}

.fa-arrow-circle-down:before {
  content: "\f0ab";
}

.fa-arrow-circle-left:before {
  content: "\f0a8";
}

.fa-arrow-circle-right:before {
  content: "\f0a9";
}

.fa-arrow-circle-up:before {
  content: "\f0aa";
}

.fa-arrow-down:before {
  content: "\f063";
}

.fa-arrow-left:before {
  content: "\f060";
}

.fa-arrow-right:before {
  content: "\f061";
}

.fa-arrow-up:before {
  content: "\f062";
}

.fa-arrows-alt:before {
  content: "\f0b2";
}

.fa-arrows-alt-h:before {
  content: "\f337";
}

.fa-arrows-alt-v:before {
  content: "\f338";
}

.fa-artstation:before {
  content: "\f77a";
}

.fa-assistive-listening-systems:before {
  content: "\f2a2";
}

.fa-asterisk:before {
  content: "\f069";
}

.fa-asymmetrik:before {
  content: "\f372";
}

.fa-at:before {
  content: "\f1fa";
}

.fa-atlas:before {
  content: "\f558";
}

.fa-atlassian:before {
  content: "\f77b";
}

.fa-atom:before {
  content: "\f5d2";
}

.fa-audible:before {
  content: "\f373";
}

.fa-audio-description:before {
  content: "\f29e";
}

.fa-autoprefixer:before {
  content: "\f41c";
}

.fa-avianex:before {
  content: "\f374";
}

.fa-aviato:before {
  content: "\f421";
}

.fa-award:before {
  content: "\f559";
}

.fa-aws:before {
  content: "\f375";
}

.fa-baby:before {
  content: "\f77c";
}

.fa-baby-carriage:before {
  content: "\f77d";
}

.fa-backspace:before {
  content: "\f55a";
}

.fa-backward:before {
  content: "\f04a";
}

.fa-bacon:before {
  content: "\f7e5";
}

.fa-bacteria:before {
  content: "\e059";
}

.fa-bacterium:before {
  content: "\e05a";
}

.fa-bahai:before {
  content: "\f666";
}

.fa-balance-scale:before {
  content: "\f24e";
}

.fa-balance-scale-left:before {
  content: "\f515";
}

.fa-balance-scale-right:before {
  content: "\f516";
}

.fa-ban:before {
  content: "\f05e";
}

.fa-band-aid:before {
  content: "\f462";
}

.fa-bandcamp:before {
  content: "\f2d5";
}

.fa-barcode:before {
  content: "\f02a";
}

.fa-bars:before {
  content: "\f0c9";
}

.fa-baseball-ball:before {
  content: "\f433";
}

.fa-basketball-ball:before {
  content: "\f434";
}

.fa-bath:before {
  content: "\f2cd";
}

.fa-battery-empty:before {
  content: "\f244";
}

.fa-battery-full:before {
  content: "\f240";
}

.fa-battery-half:before {
  content: "\f242";
}

.fa-battery-quarter:before {
  content: "\f243";
}

.fa-battery-three-quarters:before {
  content: "\f241";
}

.fa-battle-net:before {
  content: "\f835";
}

.fa-bed:before {
  content: "\f236";
}

.fa-beer:before {
  content: "\f0fc";
}

.fa-behance:before {
  content: "\f1b4";
}

.fa-behance-square:before {
  content: "\f1b5";
}

.fa-bell:before {
  content: "\f0f3";
}

.fa-bell-slash:before {
  content: "\f1f6";
}

.fa-bezier-curve:before {
  content: "\f55b";
}

.fa-bible:before {
  content: "\f647";
}

.fa-bicycle:before {
  content: "\f206";
}

.fa-biking:before {
  content: "\f84a";
}

.fa-bimobject:before {
  content: "\f378";
}

.fa-binoculars:before {
  content: "\f1e5";
}

.fa-biohazard:before {
  content: "\f780";
}

.fa-birthday-cake:before {
  content: "\f1fd";
}

.fa-bitbucket:before {
  content: "\f171";
}

.fa-bitcoin:before {
  content: "\f379";
}

.fa-bity:before {
  content: "\f37a";
}

.fa-black-tie:before {
  content: "\f27e";
}

.fa-blackberry:before {
  content: "\f37b";
}

.fa-blender:before {
  content: "\f517";
}

.fa-blender-phone:before {
  content: "\f6b6";
}

.fa-blind:before {
  content: "\f29d";
}

.fa-blog:before {
  content: "\f781";
}

.fa-blogger:before {
  content: "\f37c";
}

.fa-blogger-b:before {
  content: "\f37d";
}

.fa-bluetooth:before {
  content: "\f293";
}

.fa-bluetooth-b:before {
  content: "\f294";
}

.fa-bold:before {
  content: "\f032";
}

.fa-bolt:before {
  content: "\f0e7";
}

.fa-bomb:before {
  content: "\f1e2";
}

.fa-bone:before {
  content: "\f5d7";
}

.fa-bong:before {
  content: "\f55c";
}

.fa-book:before {
  content: "\f02d";
}

.fa-book-dead:before {
  content: "\f6b7";
}

.fa-book-medical:before {
  content: "\f7e6";
}

.fa-book-open:before {
  content: "\f518";
}

.fa-book-reader:before {
  content: "\f5da";
}

.fa-bookmark:before {
  content: "\f02e";
}

.fa-bootstrap:before {
  content: "\f836";
}

.fa-border-all:before {
  content: "\f84c";
}

.fa-border-none:before {
  content: "\f850";
}

.fa-border-style:before {
  content: "\f853";
}

.fa-bowling-ball:before {
  content: "\f436";
}

.fa-box:before {
  content: "\f466";
}

.fa-box-open:before {
  content: "\f49e";
}

.fa-box-tissue:before {
  content: "\e05b";
}

.fa-boxes:before {
  content: "\f468";
}

.fa-braille:before {
  content: "\f2a1";
}

.fa-brain:before {
  content: "\f5dc";
}

.fa-bread-slice:before {
  content: "\f7ec";
}

.fa-briefcase:before {
  content: "\f0b1";
}

.fa-briefcase-medical:before {
  content: "\f469";
}

.fa-broadcast-tower:before {
  content: "\f519";
}

.fa-broom:before {
  content: "\f51a";
}

.fa-brush:before {
  content: "\f55d";
}

.fa-btc:before {
  content: "\f15a";
}

.fa-buffer:before {
  content: "\f837";
}

.fa-bug:before {
  content: "\f188";
}

.fa-building:before {
  content: "\f1ad";
}

.fa-bullhorn:before {
  content: "\f0a1";
}

.fa-bullseye:before {
  content: "\f140";
}

.fa-burn:before {
  content: "\f46a";
}

.fa-buromobelexperte:before {
  content: "\f37f";
}

.fa-bus:before {
  content: "\f207";
}

.fa-bus-alt:before {
  content: "\f55e";
}

.fa-business-time:before {
  content: "\f64a";
}

.fa-buy-n-large:before {
  content: "\f8a6";
}

.fa-buysellads:before {
  content: "\f20d";
}

.fa-calculator:before {
  content: "\f1ec";
}

.fa-calendar:before {
  content: "\f133";
}

.fa-calendar-alt:before {
  content: "\f073";
}

.fa-calendar-check:before {
  content: "\f274";
}

.fa-calendar-day:before {
  content: "\f783";
}

.fa-calendar-minus:before {
  content: "\f272";
}

.fa-calendar-plus:before {
  content: "\f271";
}

.fa-calendar-times:before {
  content: "\f273";
}

.fa-calendar-week:before {
  content: "\f784";
}

.fa-camera:before {
  content: "\f030";
}

.fa-camera-retro:before {
  content: "\f083";
}

.fa-campground:before {
  content: "\f6bb";
}

.fa-canadian-maple-leaf:before {
  content: "\f785";
}

.fa-candy-cane:before {
  content: "\f786";
}

.fa-cannabis:before {
  content: "\f55f";
}

.fa-capsules:before {
  content: "\f46b";
}

.fa-car:before {
  content: "\f1b9";
}

.fa-car-alt:before {
  content: "\f5de";
}

.fa-car-battery:before {
  content: "\f5df";
}

.fa-car-crash:before {
  content: "\f5e1";
}

.fa-car-side:before {
  content: "\f5e4";
}

.fa-caravan:before {
  content: "\f8ff";
}

.fa-caret-down:before {
  content: "\f0d7";
}

.fa-caret-left:before {
  content: "\f0d9";
}

.fa-caret-right:before {
  content: "\f0da";
}

.fa-caret-square-down:before {
  content: "\f150";
}

.fa-caret-square-left:before {
  content: "\f191";
}

.fa-caret-square-right:before {
  content: "\f152";
}

.fa-caret-square-up:before {
  content: "\f151";
}

.fa-caret-up:before {
  content: "\f0d8";
}

.fa-carrot:before {
  content: "\f787";
}

.fa-cart-arrow-down:before {
  content: "\f218";
}

.fa-cart-plus:before {
  content: "\f217";
}

.fa-cash-register:before {
  content: "\f788";
}

.fa-cat:before {
  content: "\f6be";
}

.fa-cc-amazon-pay:before {
  content: "\f42d";
}

.fa-cc-amex:before {
  content: "\f1f3";
}

.fa-cc-apple-pay:before {
  content: "\f416";
}

.fa-cc-diners-club:before {
  content: "\f24c";
}

.fa-cc-discover:before {
  content: "\f1f2";
}

.fa-cc-jcb:before {
  content: "\f24b";
}

.fa-cc-mastercard:before {
  content: "\f1f1";
}

.fa-cc-paypal:before {
  content: "\f1f4";
}

.fa-cc-stripe:before {
  content: "\f1f5";
}

.fa-cc-visa:before {
  content: "\f1f0";
}

.fa-centercode:before {
  content: "\f380";
}

.fa-centos:before {
  content: "\f789";
}

.fa-certificate:before {
  content: "\f0a3";
}

.fa-chair:before {
  content: "\f6c0";
}

.fa-chalkboard:before {
  content: "\f51b";
}

.fa-chalkboard-teacher:before {
  content: "\f51c";
}

.fa-charging-station:before {
  content: "\f5e7";
}

.fa-chart-area:before {
  content: "\f1fe";
}

.fa-chart-bar:before {
  content: "\f080";
}

.fa-chart-line:before {
  content: "\f201";
}

.fa-chart-pie:before {
  content: "\f200";
}

.fa-check:before {
  content: "\f00c";
}

.fa-check-circle:before {
  content: "\f058";
}

.fa-check-double:before {
  content: "\f560";
}

.fa-check-square:before {
  content: "\f14a";
}

.fa-cheese:before {
  content: "\f7ef";
}

.fa-chess:before {
  content: "\f439";
}

.fa-chess-bishop:before {
  content: "\f43a";
}

.fa-chess-board:before {
  content: "\f43c";
}

.fa-chess-king:before {
  content: "\f43f";
}

.fa-chess-knight:before {
  content: "\f441";
}

.fa-chess-pawn:before {
  content: "\f443";
}

.fa-chess-queen:before {
  content: "\f445";
}

.fa-chess-rook:before {
  content: "\f447";
}

.fa-chevron-circle-down:before {
  content: "\f13a";
}

.fa-chevron-circle-left:before {
  content: "\f137";
}

.fa-chevron-circle-right:before {
  content: "\f138";
}

.fa-chevron-circle-up:before {
  content: "\f139";
}

.fa-chevron-down:before {
  content: "\f078";
}

.fa-chevron-left:before {
  content: "\f053";
}

.fa-chevron-right:before {
  content: "\f054";
}

.fa-chevron-up:before {
  content: "\f077";
}

.fa-child:before {
  content: "\f1ae";
}

.fa-chrome:before {
  content: "\f268";
}

.fa-chromecast:before {
  content: "\f838";
}

.fa-church:before {
  content: "\f51d";
}

.fa-circle:before {
  content: "\f111";
}

.fa-circle-notch:before {
  content: "\f1ce";
}

.fa-city:before {
  content: "\f64f";
}

.fa-clinic-medical:before {
  content: "\f7f2";
}

.fa-clipboard:before {
  content: "\f328";
}

.fa-clipboard-check:before {
  content: "\f46c";
}

.fa-clipboard-list:before {
  content: "\f46d";
}

.fa-clock:before {
  content: "\f017";
}

.fa-clone:before {
  content: "\f24d";
}

.fa-closed-captioning:before {
  content: "\f20a";
}

.fa-cloud:before {
  content: "\f0c2";
}

.fa-cloud-download-alt:before {
  content: "\f381";
}

.fa-cloud-meatball:before {
  content: "\f73b";
}

.fa-cloud-moon:before {
  content: "\f6c3";
}

.fa-cloud-moon-rain:before {
  content: "\f73c";
}

.fa-cloud-rain:before {
  content: "\f73d";
}

.fa-cloud-showers-heavy:before {
  content: "\f740";
}

.fa-cloud-sun:before {
  content: "\f6c4";
}

.fa-cloud-sun-rain:before {
  content: "\f743";
}

.fa-cloud-upload-alt:before {
  content: "\f382";
}

.fa-cloudscale:before {
  content: "\f383";
}

.fa-cloudsmith:before {
  content: "\f384";
}

.fa-cloudversify:before {
  content: "\f385";
}

.fa-cocktail:before {
  content: "\f561";
}

.fa-code:before {
  content: "\f121";
}

.fa-code-branch:before {
  content: "\f126";
}

.fa-codepen:before {
  content: "\f1cb";
}

.fa-codiepie:before {
  content: "\f284";
}

.fa-coffee:before {
  content: "\f0f4";
}

.fa-cog:before {
  content: "\f013";
}

.fa-cogs:before {
  content: "\f085";
}

.fa-coins:before {
  content: "\f51e";
}

.fa-columns:before {
  content: "\f0db";
}

.fa-comment:before {
  content: "\f075";
}

.fa-comment-alt:before {
  content: "\f27a";
}

.fa-comment-dollar:before {
  content: "\f651";
}

.fa-comment-dots:before {
  content: "\f4ad";
}

.fa-comment-medical:before {
  content: "\f7f5";
}

.fa-comment-slash:before {
  content: "\f4b3";
}

.fa-comments:before {
  content: "\f086";
}

.fa-comments-dollar:before {
  content: "\f653";
}

.fa-compact-disc:before {
  content: "\f51f";
}

.fa-compass:before {
  content: "\f14e";
}

.fa-compress:before {
  content: "\f066";
}

.fa-compress-alt:before {
  content: "\f422";
}

.fa-compress-arrows-alt:before {
  content: "\f78c";
}

.fa-concierge-bell:before {
  content: "\f562";
}

.fa-confluence:before {
  content: "\f78d";
}

.fa-connectdevelop:before {
  content: "\f20e";
}

.fa-contao:before {
  content: "\f26d";
}

.fa-cookie:before {
  content: "\f563";
}

.fa-cookie-bite:before {
  content: "\f564";
}

.fa-copy:before {
  content: "\f0c5";
}

.fa-copyright:before {
  content: "\f1f9";
}

.fa-cotton-bureau:before {
  content: "\f89e";
}

.fa-couch:before {
  content: "\f4b8";
}

.fa-cpanel:before {
  content: "\f388";
}

.fa-creative-commons:before {
  content: "\f25e";
}

.fa-creative-commons-by:before {
  content: "\f4e7";
}

.fa-creative-commons-nc:before {
  content: "\f4e8";
}

.fa-creative-commons-nc-eu:before {
  content: "\f4e9";
}

.fa-creative-commons-nc-jp:before {
  content: "\f4ea";
}

.fa-creative-commons-nd:before {
  content: "\f4eb";
}

.fa-creative-commons-pd:before {
  content: "\f4ec";
}

.fa-creative-commons-pd-alt:before {
  content: "\f4ed";
}

.fa-creative-commons-remix:before {
  content: "\f4ee";
}

.fa-creative-commons-sa:before {
  content: "\f4ef";
}

.fa-creative-commons-sampling:before {
  content: "\f4f0";
}

.fa-creative-commons-sampling-plus:before {
  content: "\f4f1";
}

.fa-creative-commons-share:before {
  content: "\f4f2";
}

.fa-creative-commons-zero:before {
  content: "\f4f3";
}

.fa-credit-card:before {
  content: "\f09d";
}

.fa-critical-role:before {
  content: "\f6c9";
}

.fa-crop:before {
  content: "\f125";
}

.fa-crop-alt:before {
  content: "\f565";
}

.fa-cross:before {
  content: "\f654";
}

.fa-crosshairs:before {
  content: "\f05b";
}

.fa-crow:before {
  content: "\f520";
}

.fa-crown:before {
  content: "\f521";
}

.fa-crutch:before {
  content: "\f7f7";
}

.fa-css3:before {
  content: "\f13c";
}

.fa-css3-alt:before {
  content: "\f38b";
}

.fa-cube:before {
  content: "\f1b2";
}

.fa-cubes:before {
  content: "\f1b3";
}

.fa-cut:before {
  content: "\f0c4";
}

.fa-cuttlefish:before {
  content: "\f38c";
}

.fa-d-and-d:before {
  content: "\f38d";
}

.fa-d-and-d-beyond:before {
  content: "\f6ca";
}

.fa-dailymotion:before {
  content: "\e052";
}

.fa-dashcube:before {
  content: "\f210";
}

.fa-database:before {
  content: "\f1c0";
}

.fa-deaf:before {
  content: "\f2a4";
}

.fa-deezer:before {
  content: "\e077";
}

.fa-delicious:before {
  content: "\f1a5";
}

.fa-democrat:before {
  content: "\f747";
}

.fa-deploydog:before {
  content: "\f38e";
}

.fa-deskpro:before {
  content: "\f38f";
}

.fa-desktop:before {
  content: "\f108";
}

.fa-dev:before {
  content: "\f6cc";
}

.fa-deviantart:before {
  content: "\f1bd";
}

.fa-dharmachakra:before {
  content: "\f655";
}

.fa-dhl:before {
  content: "\f790";
}

.fa-diagnoses:before {
  content: "\f470";
}

.fa-diaspora:before {
  content: "\f791";
}

.fa-dice:before {
  content: "\f522";
}

.fa-dice-d20:before {
  content: "\f6cf";
}

.fa-dice-d6:before {
  content: "\f6d1";
}

.fa-dice-five:before {
  content: "\f523";
}

.fa-dice-four:before {
  content: "\f524";
}

.fa-dice-one:before {
  content: "\f525";
}

.fa-dice-six:before {
  content: "\f526";
}

.fa-dice-three:before {
  content: "\f527";
}

.fa-dice-two:before {
  content: "\f528";
}

.fa-digg:before {
  content: "\f1a6";
}

.fa-digital-ocean:before {
  content: "\f391";
}

.fa-digital-tachograph:before {
  content: "\f566";
}

.fa-directions:before {
  content: "\f5eb";
}

.fa-discord:before {
  content: "\f392";
}

.fa-discourse:before {
  content: "\f393";
}

.fa-disease:before {
  content: "\f7fa";
}

.fa-divide:before {
  content: "\f529";
}

.fa-dizzy:before {
  content: "\f567";
}

.fa-dna:before {
  content: "\f471";
}

.fa-dochub:before {
  content: "\f394";
}

.fa-docker:before {
  content: "\f395";
}

.fa-dog:before {
  content: "\f6d3";
}

.fa-dollar-sign:before {
  content: "\f155";
}

.fa-dolly:before {
  content: "\f472";
}

.fa-dolly-flatbed:before {
  content: "\f474";
}

.fa-donate:before {
  content: "\f4b9";
}

.fa-door-closed:before {
  content: "\f52a";
}

.fa-door-open:before {
  content: "\f52b";
}

.fa-dot-circle:before {
  content: "\f192";
}

.fa-dove:before {
  content: "\f4ba";
}

.fa-download:before {
  content: "\f019";
}

.fa-draft2digital:before {
  content: "\f396";
}

.fa-drafting-compass:before {
  content: "\f568";
}

.fa-dragon:before {
  content: "\f6d5";
}

.fa-draw-polygon:before {
  content: "\f5ee";
}

.fa-dribbble:before {
  content: "\f17d";
}

.fa-dribbble-square:before {
  content: "\f397";
}

.fa-dropbox:before {
  content: "\f16b";
}

.fa-drum:before {
  content: "\f569";
}

.fa-drum-steelpan:before {
  content: "\f56a";
}

.fa-drumstick-bite:before {
  content: "\f6d7";
}

.fa-drupal:before {
  content: "\f1a9";
}

.fa-dumbbell:before {
  content: "\f44b";
}

.fa-dumpster:before {
  content: "\f793";
}

.fa-dumpster-fire:before {
  content: "\f794";
}

.fa-dungeon:before {
  content: "\f6d9";
}

.fa-dyalog:before {
  content: "\f399";
}

.fa-earlybirds:before {
  content: "\f39a";
}

.fa-ebay:before {
  content: "\f4f4";
}

.fa-edge:before {
  content: "\f282";
}

.fa-edge-legacy:before {
  content: "\e078";
}

.fa-edit:before {
  content: "\f044";
}

.fa-egg:before {
  content: "\f7fb";
}

.fa-eject:before {
  content: "\f052";
}

.fa-elementor:before {
  content: "\f430";
}

.fa-ellipsis-h:before {
  content: "\f141";
}

.fa-ellipsis-v:before {
  content: "\f142";
}

.fa-ello:before {
  content: "\f5f1";
}

.fa-ember:before {
  content: "\f423";
}

.fa-empire:before {
  content: "\f1d1";
}

.fa-envelope:before {
  content: "\f0e0";
}

.fa-envelope-open:before {
  content: "\f2b6";
}

.fa-envelope-open-text:before {
  content: "\f658";
}

.fa-envelope-square:before {
  content: "\f199";
}

.fa-envira:before {
  content: "\f299";
}

.fa-equals:before {
  content: "\f52c";
}

.fa-eraser:before {
  content: "\f12d";
}

.fa-erlang:before {
  content: "\f39d";
}

.fa-ethereum:before {
  content: "\f42e";
}

.fa-ethernet:before {
  content: "\f796";
}

.fa-etsy:before {
  content: "\f2d7";
}

.fa-euro-sign:before {
  content: "\f153";
}

.fa-evernote:before {
  content: "\f839";
}

.fa-exchange-alt:before {
  content: "\f362";
}

.fa-exclamation:before {
  content: "\f12a";
}

.fa-exclamation-circle:before {
  content: "\f06a";
}

.fa-exclamation-triangle:before {
  content: "\f071";
}

.fa-expand:before {
  content: "\f065";
}

.fa-expand-alt:before {
  content: "\f424";
}

.fa-expand-arrows-alt:before {
  content: "\f31e";
}

.fa-expeditedssl:before {
  content: "\f23e";
}

.fa-external-link-alt:before {
  content: "\f35d";
}

.fa-external-link-square-alt:before {
  content: "\f360";
}

.fa-eye:before {
  content: "\f06e";
}

.fa-eye-dropper:before {
  content: "\f1fb";
}

.fa-eye-slash:before {
  content: "\f070";
}

.fa-facebook:before {
  content: "\f09a";
}

.fa-facebook-f:before {
  content: "\f39e";
}

.fa-facebook-messenger:before {
  content: "\f39f";
}

.fa-facebook-square:before {
  content: "\f082";
}

.fa-fan:before {
  content: "\f863";
}

.fa-fantasy-flight-games:before {
  content: "\f6dc";
}

.fa-fast-backward:before {
  content: "\f049";
}

.fa-fast-forward:before {
  content: "\f050";
}

.fa-faucet:before {
  content: "\e005";
}

.fa-fax:before {
  content: "\f1ac";
}

.fa-feather:before {
  content: "\f52d";
}

.fa-feather-alt:before {
  content: "\f56b";
}

.fa-fedex:before {
  content: "\f797";
}

.fa-fedora:before {
  content: "\f798";
}

.fa-female:before {
  content: "\f182";
}

.fa-fighter-jet:before {
  content: "\f0fb";
}

.fa-figma:before {
  content: "\f799";
}

.fa-file:before {
  content: "\f15b";
}

.fa-file-alt:before {
  content: "\f15c";
}

.fa-file-archive:before {
  content: "\f1c6";
}

.fa-file-audio:before {
  content: "\f1c7";
}

.fa-file-code:before {
  content: "\f1c9";
}

.fa-file-contract:before {
  content: "\f56c";
}

.fa-file-csv:before {
  content: "\f6dd";
}

.fa-file-download:before {
  content: "\f56d";
}

.fa-file-excel:before {
  content: "\f1c3";
}

.fa-file-export:before {
  content: "\f56e";
}

.fa-file-image:before {
  content: "\f1c5";
}

.fa-file-import:before {
  content: "\f56f";
}

.fa-file-invoice:before {
  content: "\f570";
}

.fa-file-invoice-dollar:before {
  content: "\f571";
}

.fa-file-medical:before {
  content: "\f477";
}

.fa-file-medical-alt:before {
  content: "\f478";
}

.fa-file-pdf:before {
  content: "\f1c1";
}

.fa-file-powerpoint:before {
  content: "\f1c4";
}

.fa-file-prescription:before {
  content: "\f572";
}

.fa-file-signature:before {
  content: "\f573";
}

.fa-file-upload:before {
  content: "\f574";
}

.fa-file-video:before {
  content: "\f1c8";
}

.fa-file-word:before {
  content: "\f1c2";
}

.fa-fill:before {
  content: "\f575";
}

.fa-fill-drip:before {
  content: "\f576";
}

.fa-film:before {
  content: "\f008";
}

.fa-filter:before {
  content: "\f0b0";
}

.fa-fingerprint:before {
  content: "\f577";
}

.fa-fire:before {
  content: "\f06d";
}

.fa-fire-alt:before {
  content: "\f7e4";
}

.fa-fire-extinguisher:before {
  content: "\f134";
}

.fa-firefox:before {
  content: "\f269";
}

.fa-firefox-browser:before {
  content: "\e007";
}

.fa-first-aid:before {
  content: "\f479";
}

.fa-first-order:before {
  content: "\f2b0";
}

.fa-first-order-alt:before {
  content: "\f50a";
}

.fa-firstdraft:before {
  content: "\f3a1";
}

.fa-fish:before {
  content: "\f578";
}

.fa-fist-raised:before {
  content: "\f6de";
}

.fa-flag:before {
  content: "\f024";
}

.fa-flag-checkered:before {
  content: "\f11e";
}

.fa-flag-usa:before {
  content: "\f74d";
}

.fa-flask:before {
  content: "\f0c3";
}

.fa-flickr:before {
  content: "\f16e";
}

.fa-flipboard:before {
  content: "\f44d";
}

.fa-flushed:before {
  content: "\f579";
}

.fa-fly:before {
  content: "\f417";
}

.fa-folder:before {
  content: "\f07b";
}

.fa-folder-minus:before {
  content: "\f65d";
}

.fa-folder-open:before {
  content: "\f07c";
}

.fa-folder-plus:before {
  content: "\f65e";
}

.fa-font:before {
  content: "\f031";
}

.fa-font-awesome:before {
  content: "\f2b4";
}

.fa-font-awesome-alt:before {
  content: "\f35c";
}

.fa-font-awesome-flag:before {
  content: "\f425";
}

.fa-font-awesome-logo-full:before {
  content: "\f4e6";
}

.fa-fonticons:before {
  content: "\f280";
}

.fa-fonticons-fi:before {
  content: "\f3a2";
}

.fa-football-ball:before {
  content: "\f44e";
}

.fa-fort-awesome:before {
  content: "\f286";
}

.fa-fort-awesome-alt:before {
  content: "\f3a3";
}

.fa-forumbee:before {
  content: "\f211";
}

.fa-forward:before {
  content: "\f04e";
}

.fa-foursquare:before {
  content: "\f180";
}

.fa-free-code-camp:before {
  content: "\f2c5";
}

.fa-freebsd:before {
  content: "\f3a4";
}

.fa-frog:before {
  content: "\f52e";
}

.fa-frown:before {
  content: "\f119";
}

.fa-frown-open:before {
  content: "\f57a";
}

.fa-fulcrum:before {
  content: "\f50b";
}

.fa-funnel-dollar:before {
  content: "\f662";
}

.fa-futbol:before {
  content: "\f1e3";
}

.fa-galactic-republic:before {
  content: "\f50c";
}

.fa-galactic-senate:before {
  content: "\f50d";
}

.fa-gamepad:before {
  content: "\f11b";
}

.fa-gas-pump:before {
  content: "\f52f";
}

.fa-gavel:before {
  content: "\f0e3";
}

.fa-gem:before {
  content: "\f3a5";
}

.fa-genderless:before {
  content: "\f22d";
}

.fa-get-pocket:before {
  content: "\f265";
}

.fa-gg:before {
  content: "\f260";
}

.fa-gg-circle:before {
  content: "\f261";
}

.fa-ghost:before {
  content: "\f6e2";
}

.fa-gift:before {
  content: "\f06b";
}

.fa-gifts:before {
  content: "\f79c";
}

.fa-git:before {
  content: "\f1d3";
}

.fa-git-alt:before {
  content: "\f841";
}

.fa-git-square:before {
  content: "\f1d2";
}

.fa-github:before {
  content: "\f09b";
}

.fa-github-alt:before {
  content: "\f113";
}

.fa-github-square:before {
  content: "\f092";
}

.fa-gitkraken:before {
  content: "\f3a6";
}

.fa-gitlab:before {
  content: "\f296";
}

.fa-gitter:before {
  content: "\f426";
}

.fa-glass-cheers:before {
  content: "\f79f";
}

.fa-glass-martini:before {
  content: "\f000";
}

.fa-glass-martini-alt:before {
  content: "\f57b";
}

.fa-glass-whiskey:before {
  content: "\f7a0";
}

.fa-glasses:before {
  content: "\f530";
}

.fa-glide:before {
  content: "\f2a5";
}

.fa-glide-g:before {
  content: "\f2a6";
}

.fa-globe:before {
  content: "\f0ac";
}

.fa-globe-africa:before {
  content: "\f57c";
}

.fa-globe-americas:before {
  content: "\f57d";
}

.fa-globe-asia:before {
  content: "\f57e";
}

.fa-globe-europe:before {
  content: "\f7a2";
}

.fa-gofore:before {
  content: "\f3a7";
}

.fa-golf-ball:before {
  content: "\f450";
}

.fa-goodreads:before {
  content: "\f3a8";
}

.fa-goodreads-g:before {
  content: "\f3a9";
}

.fa-google:before {
  content: "\f1a0";
}

.fa-google-drive:before {
  content: "\f3aa";
}

.fa-google-pay:before {
  content: "\e079";
}

.fa-google-play:before {
  content: "\f3ab";
}

.fa-google-plus:before {
  content: "\f2b3";
}

.fa-google-plus-g:before {
  content: "\f0d5";
}

.fa-google-plus-square:before {
  content: "\f0d4";
}

.fa-google-wallet:before {
  content: "\f1ee";
}

.fa-gopuram:before {
  content: "\f664";
}

.fa-graduation-cap:before {
  content: "\f19d";
}

.fa-gratipay:before {
  content: "\f184";
}

.fa-grav:before {
  content: "\f2d6";
}

.fa-greater-than:before {
  content: "\f531";
}

.fa-greater-than-equal:before {
  content: "\f532";
}

.fa-grimace:before {
  content: "\f57f";
}

.fa-grin:before {
  content: "\f580";
}

.fa-grin-alt:before {
  content: "\f581";
}

.fa-grin-beam:before {
  content: "\f582";
}

.fa-grin-beam-sweat:before {
  content: "\f583";
}

.fa-grin-hearts:before {
  content: "\f584";
}

.fa-grin-squint:before {
  content: "\f585";
}

.fa-grin-squint-tears:before {
  content: "\f586";
}

.fa-grin-stars:before {
  content: "\f587";
}

.fa-grin-tears:before {
  content: "\f588";
}

.fa-grin-tongue:before {
  content: "\f589";
}

.fa-grin-tongue-squint:before {
  content: "\f58a";
}

.fa-grin-tongue-wink:before {
  content: "\f58b";
}

.fa-grin-wink:before {
  content: "\f58c";
}

.fa-grip-horizontal:before {
  content: "\f58d";
}

.fa-grip-lines:before {
  content: "\f7a4";
}

.fa-grip-lines-vertical:before {
  content: "\f7a5";
}

.fa-grip-vertical:before {
  content: "\f58e";
}

.fa-gripfire:before {
  content: "\f3ac";
}

.fa-grunt:before {
  content: "\f3ad";
}

.fa-guitar:before {
  content: "\f7a6";
}

.fa-gulp:before {
  content: "\f3ae";
}

.fa-h-square:before {
  content: "\f0fd";
}

.fa-hacker-news:before {
  content: "\f1d4";
}

.fa-hacker-news-square:before {
  content: "\f3af";
}

.fa-hackerrank:before {
  content: "\f5f7";
}

.fa-hamburger:before {
  content: "\f805";
}

.fa-hammer:before {
  content: "\f6e3";
}

.fa-hamsa:before {
  content: "\f665";
}

.fa-hand-holding:before {
  content: "\f4bd";
}

.fa-hand-holding-heart:before {
  content: "\f4be";
}

.fa-hand-holding-medical:before {
  content: "\e05c";
}

.fa-hand-holding-usd:before {
  content: "\f4c0";
}

.fa-hand-holding-water:before {
  content: "\f4c1";
}

.fa-hand-lizard:before {
  content: "\f258";
}

.fa-hand-middle-finger:before {
  content: "\f806";
}

.fa-hand-paper:before {
  content: "\f256";
}

.fa-hand-peace:before {
  content: "\f25b";
}

.fa-hand-point-down:before {
  content: "\f0a7";
}

.fa-hand-point-left:before {
  content: "\f0a5";
}

.fa-hand-point-right:before {
  content: "\f0a4";
}

.fa-hand-point-up:before {
  content: "\f0a6";
}

.fa-hand-pointer:before {
  content: "\f25a";
}

.fa-hand-rock:before {
  content: "\f255";
}

.fa-hand-scissors:before {
  content: "\f257";
}

.fa-hand-sparkles:before {
  content: "\e05d";
}

.fa-hand-spock:before {
  content: "\f259";
}

.fa-hands:before {
  content: "\f4c2";
}

.fa-hands-helping:before {
  content: "\f4c4";
}

.fa-hands-wash:before {
  content: "\e05e";
}

.fa-handshake:before {
  content: "\f2b5";
}

.fa-handshake-alt-slash:before {
  content: "\e05f";
}

.fa-handshake-slash:before {
  content: "\e060";
}

.fa-hanukiah:before {
  content: "\f6e6";
}

.fa-hard-hat:before {
  content: "\f807";
}

.fa-hashtag:before {
  content: "\f292";
}

.fa-hat-cowboy:before {
  content: "\f8c0";
}

.fa-hat-cowboy-side:before {
  content: "\f8c1";
}

.fa-hat-wizard:before {
  content: "\f6e8";
}

.fa-hdd:before {
  content: "\f0a0";
}

.fa-head-side-cough:before {
  content: "\e061";
}

.fa-head-side-cough-slash:before {
  content: "\e062";
}

.fa-head-side-mask:before {
  content: "\e063";
}

.fa-head-side-virus:before {
  content: "\e064";
}

.fa-heading:before {
  content: "\f1dc";
}

.fa-headphones:before {
  content: "\f025";
}

.fa-headphones-alt:before {
  content: "\f58f";
}

.fa-headset:before {
  content: "\f590";
}

.fa-heart:before {
  content: "\f004";
}

.fa-heart-broken:before {
  content: "\f7a9";
}

.fa-heartbeat:before {
  content: "\f21e";
}

.fa-helicopter:before {
  content: "\f533";
}

.fa-highlighter:before {
  content: "\f591";
}

.fa-hiking:before {
  content: "\f6ec";
}

.fa-hippo:before {
  content: "\f6ed";
}

.fa-hips:before {
  content: "\f452";
}

.fa-hire-a-helper:before {
  content: "\f3b0";
}

.fa-history:before {
  content: "\f1da";
}

.fa-hockey-puck:before {
  content: "\f453";
}

.fa-holly-berry:before {
  content: "\f7aa";
}

.fa-home:before {
  content: "\f015";
}

.fa-hooli:before {
  content: "\f427";
}

.fa-hornbill:before {
  content: "\f592";
}

.fa-horse:before {
  content: "\f6f0";
}

.fa-horse-head:before {
  content: "\f7ab";
}

.fa-hospital:before {
  content: "\f0f8";
}

.fa-hospital-alt:before {
  content: "\f47d";
}

.fa-hospital-symbol:before {
  content: "\f47e";
}

.fa-hospital-user:before {
  content: "\f80d";
}

.fa-hot-tub:before {
  content: "\f593";
}

.fa-hotdog:before {
  content: "\f80f";
}

.fa-hotel:before {
  content: "\f594";
}

.fa-hotjar:before {
  content: "\f3b1";
}

.fa-hourglass:before {
  content: "\f254";
}

.fa-hourglass-end:before {
  content: "\f253";
}

.fa-hourglass-half:before {
  content: "\f252";
}

.fa-hourglass-start:before {
  content: "\f251";
}

.fa-house-damage:before {
  content: "\f6f1";
}

.fa-house-user:before {
  content: "\e065";
}

.fa-houzz:before {
  content: "\f27c";
}

.fa-hryvnia:before {
  content: "\f6f2";
}

.fa-html5:before {
  content: "\f13b";
}

.fa-hubspot:before {
  content: "\f3b2";
}

.fa-i-cursor:before {
  content: "\f246";
}

.fa-ice-cream:before {
  content: "\f810";
}

.fa-icicles:before {
  content: "\f7ad";
}

.fa-icons:before {
  content: "\f86d";
}

.fa-id-badge:before {
  content: "\f2c1";
}

.fa-id-card:before {
  content: "\f2c2";
}

.fa-id-card-alt:before {
  content: "\f47f";
}

.fa-ideal:before {
  content: "\e013";
}

.fa-igloo:before {
  content: "\f7ae";
}

.fa-image:before {
  content: "\f03e";
}

.fa-images:before {
  content: "\f302";
}

.fa-imdb:before {
  content: "\f2d8";
}

.fa-inbox:before {
  content: "\f01c";
}

.fa-indent:before {
  content: "\f03c";
}

.fa-industry:before {
  content: "\f275";
}

.fa-infinity:before {
  content: "\f534";
}

.fa-info:before {
  content: "\f129";
}

.fa-info-circle:before {
  content: "\f05a";
}

.fa-instagram:before {
  content: "\f16d";
}

.fa-instagram-square:before {
  content: "\e055";
}

.fa-intercom:before {
  content: "\f7af";
}

.fa-internet-explorer:before {
  content: "\f26b";
}

.fa-invision:before {
  content: "\f7b0";
}

.fa-ioxhost:before {
  content: "\f208";
}

.fa-italic:before {
  content: "\f033";
}

.fa-itch-io:before {
  content: "\f83a";
}

.fa-itunes:before {
  content: "\f3b4";
}

.fa-itunes-note:before {
  content: "\f3b5";
}

.fa-java:before {
  content: "\f4e4";
}

.fa-jedi:before {
  content: "\f669";
}

.fa-jedi-order:before {
  content: "\f50e";
}

.fa-jenkins:before {
  content: "\f3b6";
}

.fa-jira:before {
  content: "\f7b1";
}

.fa-joget:before {
  content: "\f3b7";
}

.fa-joint:before {
  content: "\f595";
}

.fa-joomla:before {
  content: "\f1aa";
}

.fa-journal-whills:before {
  content: "\f66a";
}

.fa-js:before {
  content: "\f3b8";
}

.fa-js-square:before {
  content: "\f3b9";
}

.fa-jsfiddle:before {
  content: "\f1cc";
}

.fa-kaaba:before {
  content: "\f66b";
}

.fa-kaggle:before {
  content: "\f5fa";
}

.fa-key:before {
  content: "\f084";
}

.fa-keybase:before {
  content: "\f4f5";
}

.fa-keyboard:before {
  content: "\f11c";
}

.fa-keycdn:before {
  content: "\f3ba";
}

.fa-khanda:before {
  content: "\f66d";
}

.fa-kickstarter:before {
  content: "\f3bb";
}

.fa-kickstarter-k:before {
  content: "\f3bc";
}

.fa-kiss:before {
  content: "\f596";
}

.fa-kiss-beam:before {
  content: "\f597";
}

.fa-kiss-wink-heart:before {
  content: "\f598";
}

.fa-kiwi-bird:before {
  content: "\f535";
}

.fa-korvue:before {
  content: "\f42f";
}

.fa-landmark:before {
  content: "\f66f";
}

.fa-language:before {
  content: "\f1ab";
}

.fa-laptop:before {
  content: "\f109";
}

.fa-laptop-code:before {
  content: "\f5fc";
}

.fa-laptop-house:before {
  content: "\e066";
}

.fa-laptop-medical:before {
  content: "\f812";
}

.fa-laravel:before {
  content: "\f3bd";
}

.fa-lastfm:before {
  content: "\f202";
}

.fa-lastfm-square:before {
  content: "\f203";
}

.fa-laugh:before {
  content: "\f599";
}

.fa-laugh-beam:before {
  content: "\f59a";
}

.fa-laugh-squint:before {
  content: "\f59b";
}

.fa-laugh-wink:before {
  content: "\f59c";
}

.fa-layer-group:before {
  content: "\f5fd";
}

.fa-leaf:before {
  content: "\f06c";
}

.fa-leanpub:before {
  content: "\f212";
}

.fa-lemon:before {
  content: "\f094";
}

.fa-less:before {
  content: "\f41d";
}

.fa-less-than:before {
  content: "\f536";
}

.fa-less-than-equal:before {
  content: "\f537";
}

.fa-level-down-alt:before {
  content: "\f3be";
}

.fa-level-up-alt:before {
  content: "\f3bf";
}

.fa-life-ring:before {
  content: "\f1cd";
}

.fa-lightbulb:before {
  content: "\f0eb";
}

.fa-line:before {
  content: "\f3c0";
}

.fa-link:before {
  content: "\f0c1";
}

.fa-linkedin:before {
  content: "\f08c";
}

.fa-linkedin-in:before {
  content: "\f0e1";
}

.fa-linode:before {
  content: "\f2b8";
}

.fa-linux:before {
  content: "\f17c";
}

.fa-lira-sign:before {
  content: "\f195";
}

.fa-list:before {
  content: "\f03a";
}

.fa-list-alt:before {
  content: "\f022";
}

.fa-list-ol:before {
  content: "\f0cb";
}

.fa-list-ul:before {
  content: "\f0ca";
}

.fa-location-arrow:before {
  content: "\f124";
}

.fa-lock:before {
  content: "\f023";
}

.fa-lock-open:before {
  content: "\f3c1";
}

.fa-long-arrow-alt-down:before {
  content: "\f309";
}

.fa-long-arrow-alt-left:before {
  content: "\f30a";
}

.fa-long-arrow-alt-right:before {
  content: "\f30b";
}

.fa-long-arrow-alt-up:before {
  content: "\f30c";
}

.fa-low-vision:before {
  content: "\f2a8";
}

.fa-luggage-cart:before {
  content: "\f59d";
}

.fa-lungs:before {
  content: "\f604";
}

.fa-lungs-virus:before {
  content: "\e067";
}

.fa-lyft:before {
  content: "\f3c3";
}

.fa-magento:before {
  content: "\f3c4";
}

.fa-magic:before {
  content: "\f0d0";
}

.fa-magnet:before {
  content: "\f076";
}

.fa-mail-bulk:before {
  content: "\f674";
}

.fa-mailchimp:before {
  content: "\f59e";
}

.fa-male:before {
  content: "\f183";
}

.fa-mandalorian:before {
  content: "\f50f";
}

.fa-map:before {
  content: "\f279";
}

.fa-map-marked:before {
  content: "\f59f";
}

.fa-map-marked-alt:before {
  content: "\f5a0";
}

.fa-map-marker:before {
  content: "\f041";
}

.fa-map-marker-alt:before {
  content: "\f3c5";
}

.fa-map-pin:before {
  content: "\f276";
}

.fa-map-signs:before {
  content: "\f277";
}

.fa-markdown:before {
  content: "\f60f";
}

.fa-marker:before {
  content: "\f5a1";
}

.fa-mars:before {
  content: "\f222";
}

.fa-mars-double:before {
  content: "\f227";
}

.fa-mars-stroke:before {
  content: "\f229";
}

.fa-mars-stroke-h:before {
  content: "\f22b";
}

.fa-mars-stroke-v:before {
  content: "\f22a";
}

.fa-mask:before {
  content: "\f6fa";
}

.fa-mastodon:before {
  content: "\f4f6";
}

.fa-maxcdn:before {
  content: "\f136";
}

.fa-mdb:before {
  content: "\f8ca";
}

.fa-medal:before {
  content: "\f5a2";
}

.fa-medapps:before {
  content: "\f3c6";
}

.fa-medium:before {
  content: "\f23a";
}

.fa-medium-m:before {
  content: "\f3c7";
}

.fa-medkit:before {
  content: "\f0fa";
}

.fa-medrt:before {
  content: "\f3c8";
}

.fa-meetup:before {
  content: "\f2e0";
}

.fa-megaport:before {
  content: "\f5a3";
}

.fa-meh:before {
  content: "\f11a";
}

.fa-meh-blank:before {
  content: "\f5a4";
}

.fa-meh-rolling-eyes:before {
  content: "\f5a5";
}

.fa-memory:before {
  content: "\f538";
}

.fa-mendeley:before {
  content: "\f7b3";
}

.fa-menorah:before {
  content: "\f676";
}

.fa-mercury:before {
  content: "\f223";
}

.fa-meteor:before {
  content: "\f753";
}

.fa-microblog:before {
  content: "\e01a";
}

.fa-microchip:before {
  content: "\f2db";
}

.fa-microphone:before {
  content: "\f130";
}

.fa-microphone-alt:before {
  content: "\f3c9";
}

.fa-microphone-alt-slash:before {
  content: "\f539";
}

.fa-microphone-slash:before {
  content: "\f131";
}

.fa-microscope:before {
  content: "\f610";
}

.fa-microsoft:before {
  content: "\f3ca";
}

.fa-minus:before {
  content: "\f068";
}

.fa-minus-circle:before {
  content: "\f056";
}

.fa-minus-square:before {
  content: "\f146";
}

.fa-mitten:before {
  content: "\f7b5";
}

.fa-mix:before {
  content: "\f3cb";
}

.fa-mixcloud:before {
  content: "\f289";
}

.fa-mixer:before {
  content: "\e056";
}

.fa-mizuni:before {
  content: "\f3cc";
}

.fa-mobile:before {
  content: "\f10b";
}

.fa-mobile-alt:before {
  content: "\f3cd";
}

.fa-modx:before {
  content: "\f285";
}

.fa-monero:before {
  content: "\f3d0";
}

.fa-money-bill:before {
  content: "\f0d6";
}

.fa-money-bill-alt:before {
  content: "\f3d1";
}

.fa-money-bill-wave:before {
  content: "\f53a";
}

.fa-money-bill-wave-alt:before {
  content: "\f53b";
}

.fa-money-check:before {
  content: "\f53c";
}

.fa-money-check-alt:before {
  content: "\f53d";
}

.fa-monument:before {
  content: "\f5a6";
}

.fa-moon:before {
  content: "\f186";
}

.fa-mortar-pestle:before {
  content: "\f5a7";
}

.fa-mosque:before {
  content: "\f678";
}

.fa-motorcycle:before {
  content: "\f21c";
}

.fa-mountain:before {
  content: "\f6fc";
}

.fa-mouse:before {
  content: "\f8cc";
}

.fa-mouse-pointer:before {
  content: "\f245";
}

.fa-mug-hot:before {
  content: "\f7b6";
}

.fa-music:before {
  content: "\f001";
}

.fa-napster:before {
  content: "\f3d2";
}

.fa-neos:before {
  content: "\f612";
}

.fa-network-wired:before {
  content: "\f6ff";
}

.fa-neuter:before {
  content: "\f22c";
}

.fa-newspaper:before {
  content: "\f1ea";
}

.fa-nimblr:before {
  content: "\f5a8";
}

.fa-node:before {
  content: "\f419";
}

.fa-node-js:before {
  content: "\f3d3";
}

.fa-not-equal:before {
  content: "\f53e";
}

.fa-notes-medical:before {
  content: "\f481";
}

.fa-npm:before {
  content: "\f3d4";
}

.fa-ns8:before {
  content: "\f3d5";
}

.fa-nutritionix:before {
  content: "\f3d6";
}

.fa-object-group:before {
  content: "\f247";
}

.fa-object-ungroup:before {
  content: "\f248";
}

.fa-odnoklassniki:before {
  content: "\f263";
}

.fa-odnoklassniki-square:before {
  content: "\f264";
}

.fa-oil-can:before {
  content: "\f613";
}

.fa-old-republic:before {
  content: "\f510";
}

.fa-om:before {
  content: "\f679";
}

.fa-opencart:before {
  content: "\f23d";
}

.fa-openid:before {
  content: "\f19b";
}

.fa-opera:before {
  content: "\f26a";
}

.fa-optin-monster:before {
  content: "\f23c";
}

.fa-orcid:before {
  content: "\f8d2";
}

.fa-osi:before {
  content: "\f41a";
}

.fa-otter:before {
  content: "\f700";
}

.fa-outdent:before {
  content: "\f03b";
}

.fa-page4:before {
  content: "\f3d7";
}

.fa-pagelines:before {
  content: "\f18c";
}

.fa-pager:before {
  content: "\f815";
}

.fa-paint-brush:before {
  content: "\f1fc";
}

.fa-paint-roller:before {
  content: "\f5aa";
}

.fa-palette:before {
  content: "\f53f";
}

.fa-palfed:before {
  content: "\f3d8";
}

.fa-pallet:before {
  content: "\f482";
}

.fa-paper-plane:before {
  content: "\f1d8";
}

.fa-paperclip:before {
  content: "\f0c6";
}

.fa-parachute-box:before {
  content: "\f4cd";
}

.fa-paragraph:before {
  content: "\f1dd";
}

.fa-parking:before {
  content: "\f540";
}

.fa-passport:before {
  content: "\f5ab";
}

.fa-pastafarianism:before {
  content: "\f67b";
}

.fa-paste:before {
  content: "\f0ea";
}

.fa-patreon:before {
  content: "\f3d9";
}

.fa-pause:before {
  content: "\f04c";
}

.fa-pause-circle:before {
  content: "\f28b";
}

.fa-paw:before {
  content: "\f1b0";
}

.fa-paypal:before {
  content: "\f1ed";
}

.fa-peace:before {
  content: "\f67c";
}

.fa-pen:before {
  content: "\f304";
}

.fa-pen-alt:before {
  content: "\f305";
}

.fa-pen-fancy:before {
  content: "\f5ac";
}

.fa-pen-nib:before {
  content: "\f5ad";
}

.fa-pen-square:before {
  content: "\f14b";
}

.fa-pencil-alt:before {
  content: "\f303";
}

.fa-pencil-ruler:before {
  content: "\f5ae";
}

.fa-penny-arcade:before {
  content: "\f704";
}

.fa-people-arrows:before {
  content: "\e068";
}

.fa-people-carry:before {
  content: "\f4ce";
}

.fa-pepper-hot:before {
  content: "\f816";
}

.fa-percent:before {
  content: "\f295";
}

.fa-percentage:before {
  content: "\f541";
}

.fa-periscope:before {
  content: "\f3da";
}

.fa-person-booth:before {
  content: "\f756";
}

.fa-phabricator:before {
  content: "\f3db";
}

.fa-phoenix-framework:before {
  content: "\f3dc";
}

.fa-phoenix-squadron:before {
  content: "\f511";
}

.fa-phone:before {
  content: "\f095";
}

.fa-phone-alt:before {
  content: "\f879";
}

.fa-phone-slash:before {
  content: "\f3dd";
}

.fa-phone-square:before {
  content: "\f098";
}

.fa-phone-square-alt:before {
  content: "\f87b";
}

.fa-phone-volume:before {
  content: "\f2a0";
}

.fa-photo-video:before {
  content: "\f87c";
}

.fa-php:before {
  content: "\f457";
}

.fa-pied-piper:before {
  content: "\f2ae";
}

.fa-pied-piper-alt:before {
  content: "\f1a8";
}

.fa-pied-piper-hat:before {
  content: "\f4e5";
}

.fa-pied-piper-pp:before {
  content: "\f1a7";
}

.fa-pied-piper-square:before {
  content: "\e01e";
}

.fa-piggy-bank:before {
  content: "\f4d3";
}

.fa-pills:before {
  content: "\f484";
}

.fa-pinterest:before {
  content: "\f0d2";
}

.fa-pinterest-p:before {
  content: "\f231";
}

.fa-pinterest-square:before {
  content: "\f0d3";
}

.fa-pizza-slice:before {
  content: "\f818";
}

.fa-place-of-worship:before {
  content: "\f67f";
}

.fa-plane:before {
  content: "\f072";
}

.fa-plane-arrival:before {
  content: "\f5af";
}

.fa-plane-departure:before {
  content: "\f5b0";
}

.fa-plane-slash:before {
  content: "\e069";
}

.fa-play:before {
  content: "\f04b";
}

.fa-play-circle:before {
  content: "\f144";
}

.fa-playstation:before {
  content: "\f3df";
}

.fa-plug:before {
  content: "\f1e6";
}

.fa-plus:before {
  content: "\f067";
}

.fa-plus-circle:before {
  content: "\f055";
}

.fa-plus-square:before {
  content: "\f0fe";
}

.fa-podcast:before {
  content: "\f2ce";
}

.fa-poll:before {
  content: "\f681";
}

.fa-poll-h:before {
  content: "\f682";
}

.fa-poo:before {
  content: "\f2fe";
}

.fa-poo-storm:before {
  content: "\f75a";
}

.fa-poop:before {
  content: "\f619";
}

.fa-portrait:before {
  content: "\f3e0";
}

.fa-pound-sign:before {
  content: "\f154";
}

.fa-power-off:before {
  content: "\f011";
}

.fa-pray:before {
  content: "\f683";
}

.fa-praying-hands:before {
  content: "\f684";
}

.fa-prescription:before {
  content: "\f5b1";
}

.fa-prescription-bottle:before {
  content: "\f485";
}

.fa-prescription-bottle-alt:before {
  content: "\f486";
}

.fa-print:before {
  content: "\f02f";
}

.fa-procedures:before {
  content: "\f487";
}

.fa-product-hunt:before {
  content: "\f288";
}

.fa-project-diagram:before {
  content: "\f542";
}

.fa-pump-medical:before {
  content: "\e06a";
}

.fa-pump-soap:before {
  content: "\e06b";
}

.fa-pushed:before {
  content: "\f3e1";
}

.fa-puzzle-piece:before {
  content: "\f12e";
}

.fa-python:before {
  content: "\f3e2";
}

.fa-qq:before {
  content: "\f1d6";
}

.fa-qrcode:before {
  content: "\f029";
}

.fa-question:before {
  content: "\f128";
}

.fa-question-circle:before {
  content: "\f059";
}

.fa-quidditch:before {
  content: "\f458";
}

.fa-quinscape:before {
  content: "\f459";
}

.fa-quora:before {
  content: "\f2c4";
}

.fa-quote-left:before {
  content: "\f10d";
}

.fa-quote-right:before {
  content: "\f10e";
}

.fa-quran:before {
  content: "\f687";
}

.fa-r-project:before {
  content: "\f4f7";
}

.fa-radiation:before {
  content: "\f7b9";
}

.fa-radiation-alt:before {
  content: "\f7ba";
}

.fa-rainbow:before {
  content: "\f75b";
}

.fa-random:before {
  content: "\f074";
}

.fa-raspberry-pi:before {
  content: "\f7bb";
}

.fa-ravelry:before {
  content: "\f2d9";
}

.fa-react:before {
  content: "\f41b";
}

.fa-reacteurope:before {
  content: "\f75d";
}

.fa-readme:before {
  content: "\f4d5";
}

.fa-rebel:before {
  content: "\f1d0";
}

.fa-receipt:before {
  content: "\f543";
}

.fa-record-vinyl:before {
  content: "\f8d9";
}

.fa-recycle:before {
  content: "\f1b8";
}

.fa-red-river:before {
  content: "\f3e3";
}

.fa-reddit:before {
  content: "\f1a1";
}

.fa-reddit-alien:before {
  content: "\f281";
}

.fa-reddit-square:before {
  content: "\f1a2";
}

.fa-redhat:before {
  content: "\f7bc";
}

.fa-redo:before {
  content: "\f01e";
}

.fa-redo-alt:before {
  content: "\f2f9";
}

.fa-registered:before {
  content: "\f25d";
}

.fa-remove-format:before {
  content: "\f87d";
}

.fa-renren:before {
  content: "\f18b";
}

.fa-reply:before {
  content: "\f3e5";
}

.fa-reply-all:before {
  content: "\f122";
}

.fa-replyd:before {
  content: "\f3e6";
}

.fa-republican:before {
  content: "\f75e";
}

.fa-researchgate:before {
  content: "\f4f8";
}

.fa-resolving:before {
  content: "\f3e7";
}

.fa-restroom:before {
  content: "\f7bd";
}

.fa-retweet:before {
  content: "\f079";
}

.fa-rev:before {
  content: "\f5b2";
}

.fa-ribbon:before {
  content: "\f4d6";
}

.fa-ring:before {
  content: "\f70b";
}

.fa-road:before {
  content: "\f018";
}

.fa-robot:before {
  content: "\f544";
}

.fa-rocket:before {
  content: "\f135";
}

.fa-rocketchat:before {
  content: "\f3e8";
}

.fa-rockrms:before {
  content: "\f3e9";
}

.fa-route:before {
  content: "\f4d7";
}

.fa-rss:before {
  content: "\f09e";
}

.fa-rss-square:before {
  content: "\f143";
}

.fa-ruble-sign:before {
  content: "\f158";
}

.fa-ruler:before {
  content: "\f545";
}

.fa-ruler-combined:before {
  content: "\f546";
}

.fa-ruler-horizontal:before {
  content: "\f547";
}

.fa-ruler-vertical:before {
  content: "\f548";
}

.fa-running:before {
  content: "\f70c";
}

.fa-rupee-sign:before {
  content: "\f156";
}

.fa-rust:before {
  content: "\e07a";
}

.fa-sad-cry:before {
  content: "\f5b3";
}

.fa-sad-tear:before {
  content: "\f5b4";
}

.fa-safari:before {
  content: "\f267";
}

.fa-salesforce:before {
  content: "\f83b";
}

.fa-sass:before {
  content: "\f41e";
}

.fa-satellite:before {
  content: "\f7bf";
}

.fa-satellite-dish:before {
  content: "\f7c0";
}

.fa-save:before {
  content: "\f0c7";
}

.fa-schlix:before {
  content: "\f3ea";
}

.fa-school:before {
  content: "\f549";
}

.fa-screwdriver:before {
  content: "\f54a";
}

.fa-scribd:before {
  content: "\f28a";
}

.fa-scroll:before {
  content: "\f70e";
}

.fa-sd-card:before {
  content: "\f7c2";
}

.fa-search:before {
  content: "\f002";
}

.fa-search-dollar:before {
  content: "\f688";
}

.fa-search-location:before {
  content: "\f689";
}

.fa-search-minus:before {
  content: "\f010";
}

.fa-search-plus:before {
  content: "\f00e";
}

.fa-searchengin:before {
  content: "\f3eb";
}

.fa-seedling:before {
  content: "\f4d8";
}

.fa-sellcast:before {
  content: "\f2da";
}

.fa-sellsy:before {
  content: "\f213";
}

.fa-server:before {
  content: "\f233";
}

.fa-servicestack:before {
  content: "\f3ec";
}

.fa-shapes:before {
  content: "\f61f";
}

.fa-share:before {
  content: "\f064";
}

.fa-share-alt:before {
  content: "\f1e0";
}

.fa-share-alt-square:before {
  content: "\f1e1";
}

.fa-share-square:before {
  content: "\f14d";
}

.fa-shekel-sign:before {
  content: "\f20b";
}

.fa-shield-alt:before {
  content: "\f3ed";
}

.fa-shield-virus:before {
  content: "\e06c";
}

.fa-ship:before {
  content: "\f21a";
}

.fa-shipping-fast:before {
  content: "\f48b";
}

.fa-shirtsinbulk:before {
  content: "\f214";
}

.fa-shoe-prints:before {
  content: "\f54b";
}

.fa-shopify:before {
  content: "\e057";
}

.fa-shopping-bag:before {
  content: "\f290";
}

.fa-shopping-basket:before {
  content: "\f291";
}

.fa-shopping-cart:before {
  content: "\f07a";
}

.fa-shopware:before {
  content: "\f5b5";
}

.fa-shower:before {
  content: "\f2cc";
}

.fa-shuttle-van:before {
  content: "\f5b6";
}

.fa-sign:before {
  content: "\f4d9";
}

.fa-sign-in-alt:before {
  content: "\f2f6";
}

.fa-sign-language:before {
  content: "\f2a7";
}

.fa-sign-out-alt:before {
  content: "\f2f5";
}

.fa-signal:before {
  content: "\f012";
}

.fa-signature:before {
  content: "\f5b7";
}

.fa-sim-card:before {
  content: "\f7c4";
}

.fa-simplybuilt:before {
  content: "\f215";
}

.fa-sink:before {
  content: "\e06d";
}

.fa-sistrix:before {
  content: "\f3ee";
}

.fa-sitemap:before {
  content: "\f0e8";
}

.fa-sith:before {
  content: "\f512";
}

.fa-skating:before {
  content: "\f7c5";
}

.fa-sketch:before {
  content: "\f7c6";
}

.fa-skiing:before {
  content: "\f7c9";
}

.fa-skiing-nordic:before {
  content: "\f7ca";
}

.fa-skull:before {
  content: "\f54c";
}

.fa-skull-crossbones:before {
  content: "\f714";
}

.fa-skyatlas:before {
  content: "\f216";
}

.fa-skype:before {
  content: "\f17e";
}

.fa-slack:before {
  content: "\f198";
}

.fa-slack-hash:before {
  content: "\f3ef";
}

.fa-slash:before {
  content: "\f715";
}

.fa-sleigh:before {
  content: "\f7cc";
}

.fa-sliders-h:before {
  content: "\f1de";
}

.fa-slideshare:before {
  content: "\f1e7";
}

.fa-smile:before {
  content: "\f118";
}

.fa-smile-beam:before {
  content: "\f5b8";
}

.fa-smile-wink:before {
  content: "\f4da";
}

.fa-smog:before {
  content: "\f75f";
}

.fa-smoking:before {
  content: "\f48d";
}

.fa-smoking-ban:before {
  content: "\f54d";
}

.fa-sms:before {
  content: "\f7cd";
}

.fa-snapchat:before {
  content: "\f2ab";
}

.fa-snapchat-ghost:before {
  content: "\f2ac";
}

.fa-snapchat-square:before {
  content: "\f2ad";
}

.fa-snowboarding:before {
  content: "\f7ce";
}

.fa-snowflake:before {
  content: "\f2dc";
}

.fa-snowman:before {
  content: "\f7d0";
}

.fa-snowplow:before {
  content: "\f7d2";
}

.fa-soap:before {
  content: "\e06e";
}

.fa-socks:before {
  content: "\f696";
}

.fa-solar-panel:before {
  content: "\f5ba";
}

.fa-sort:before {
  content: "\f0dc";
}

.fa-sort-alpha-down:before {
  content: "\f15d";
}

.fa-sort-alpha-down-alt:before {
  content: "\f881";
}

.fa-sort-alpha-up:before {
  content: "\f15e";
}

.fa-sort-alpha-up-alt:before {
  content: "\f882";
}

.fa-sort-amount-down:before {
  content: "\f160";
}

.fa-sort-amount-down-alt:before {
  content: "\f884";
}

.fa-sort-amount-up:before {
  content: "\f161";
}

.fa-sort-amount-up-alt:before {
  content: "\f885";
}

.fa-sort-down:before {
  content: "\f0dd";
}

.fa-sort-numeric-down:before {
  content: "\f162";
}

.fa-sort-numeric-down-alt:before {
  content: "\f886";
}

.fa-sort-numeric-up:before {
  content: "\f163";
}

.fa-sort-numeric-up-alt:before {
  content: "\f887";
}

.fa-sort-up:before {
  content: "\f0de";
}

.fa-soundcloud:before {
  content: "\f1be";
}

.fa-sourcetree:before {
  content: "\f7d3";
}

.fa-spa:before {
  content: "\f5bb";
}

.fa-space-shuttle:before {
  content: "\f197";
}

.fa-speakap:before {
  content: "\f3f3";
}

.fa-speaker-deck:before {
  content: "\f83c";
}

.fa-spell-check:before {
  content: "\f891";
}

.fa-spider:before {
  content: "\f717";
}

.fa-spinner:before {
  content: "\f110";
}

.fa-splotch:before {
  content: "\f5bc";
}

.fa-spotify:before {
  content: "\f1bc";
}

.fa-spray-can:before {
  content: "\f5bd";
}

.fa-square:before {
  content: "\f0c8";
}

.fa-square-full:before {
  content: "\f45c";
}

.fa-square-root-alt:before {
  content: "\f698";
}

.fa-squarespace:before {
  content: "\f5be";
}

.fa-stack-exchange:before {
  content: "\f18d";
}

.fa-stack-overflow:before {
  content: "\f16c";
}

.fa-stackpath:before {
  content: "\f842";
}

.fa-stamp:before {
  content: "\f5bf";
}

.fa-star:before {
  content: "\f005";
}

.fa-star-and-crescent:before {
  content: "\f699";
}

.fa-star-half:before {
  content: "\f089";
}

.fa-star-half-alt:before {
  content: "\f5c0";
}

.fa-star-of-david:before {
  content: "\f69a";
}

.fa-star-of-life:before {
  content: "\f621";
}

.fa-staylinked:before {
  content: "\f3f5";
}

.fa-steam:before {
  content: "\f1b6";
}

.fa-steam-square:before {
  content: "\f1b7";
}

.fa-steam-symbol:before {
  content: "\f3f6";
}

.fa-step-backward:before {
  content: "\f048";
}

.fa-step-forward:before {
  content: "\f051";
}

.fa-stethoscope:before {
  content: "\f0f1";
}

.fa-sticker-mule:before {
  content: "\f3f7";
}

.fa-sticky-note:before {
  content: "\f249";
}

.fa-stop:before {
  content: "\f04d";
}

.fa-stop-circle:before {
  content: "\f28d";
}

.fa-stopwatch:before {
  content: "\f2f2";
}

.fa-stopwatch-20:before {
  content: "\e06f";
}

.fa-store:before {
  content: "\f54e";
}

.fa-store-alt:before {
  content: "\f54f";
}

.fa-store-alt-slash:before {
  content: "\e070";
}

.fa-store-slash:before {
  content: "\e071";
}

.fa-strava:before {
  content: "\f428";
}

.fa-stream:before {
  content: "\f550";
}

.fa-street-view:before {
  content: "\f21d";
}

.fa-strikethrough:before {
  content: "\f0cc";
}

.fa-stripe:before {
  content: "\f429";
}

.fa-stripe-s:before {
  content: "\f42a";
}

.fa-stroopwafel:before {
  content: "\f551";
}

.fa-studiovinari:before {
  content: "\f3f8";
}

.fa-stumbleupon:before {
  content: "\f1a4";
}

.fa-stumbleupon-circle:before {
  content: "\f1a3";
}

.fa-subscript:before {
  content: "\f12c";
}

.fa-subway:before {
  content: "\f239";
}

.fa-suitcase:before {
  content: "\f0f2";
}

.fa-suitcase-rolling:before {
  content: "\f5c1";
}

.fa-sun:before {
  content: "\f185";
}

.fa-superpowers:before {
  content: "\f2dd";
}

.fa-superscript:before {
  content: "\f12b";
}

.fa-supple:before {
  content: "\f3f9";
}

.fa-surprise:before {
  content: "\f5c2";
}

.fa-suse:before {
  content: "\f7d6";
}

.fa-swatchbook:before {
  content: "\f5c3";
}

.fa-swift:before {
  content: "\f8e1";
}

.fa-swimmer:before {
  content: "\f5c4";
}

.fa-swimming-pool:before {
  content: "\f5c5";
}

.fa-symfony:before {
  content: "\f83d";
}

.fa-synagogue:before {
  content: "\f69b";
}

.fa-sync:before {
  content: "\f021";
}

.fa-sync-alt:before {
  content: "\f2f1";
}

.fa-syringe:before {
  content: "\f48e";
}

.fa-table:before {
  content: "\f0ce";
}

.fa-table-tennis:before {
  content: "\f45d";
}

.fa-tablet:before {
  content: "\f10a";
}

.fa-tablet-alt:before {
  content: "\f3fa";
}

.fa-tablets:before {
  content: "\f490";
}

.fa-tachometer-alt:before {
  content: "\f3fd";
}

.fa-tag:before {
  content: "\f02b";
}

.fa-tags:before {
  content: "\f02c";
}

.fa-tape:before {
  content: "\f4db";
}

.fa-tasks:before {
  content: "\f0ae";
}

.fa-taxi:before {
  content: "\f1ba";
}

.fa-teamspeak:before {
  content: "\f4f9";
}

.fa-teeth:before {
  content: "\f62e";
}

.fa-teeth-open:before {
  content: "\f62f";
}

.fa-telegram:before {
  content: "\f2c6";
}

.fa-telegram-plane:before {
  content: "\f3fe";
}

.fa-temperature-high:before {
  content: "\f769";
}

.fa-temperature-low:before {
  content: "\f76b";
}

.fa-tencent-weibo:before {
  content: "\f1d5";
}

.fa-tenge:before {
  content: "\f7d7";
}

.fa-terminal:before {
  content: "\f120";
}

.fa-text-height:before {
  content: "\f034";
}

.fa-text-width:before {
  content: "\f035";
}

.fa-th:before {
  content: "\f00a";
}

.fa-th-large:before {
  content: "\f009";
}

.fa-th-list:before {
  content: "\f00b";
}

.fa-the-red-yeti:before {
  content: "\f69d";
}

.fa-theater-masks:before {
  content: "\f630";
}

.fa-themeco:before {
  content: "\f5c6";
}

.fa-themeisle:before {
  content: "\f2b2";
}

.fa-thermometer:before {
  content: "\f491";
}

.fa-thermometer-empty:before {
  content: "\f2cb";
}

.fa-thermometer-full:before {
  content: "\f2c7";
}

.fa-thermometer-half:before {
  content: "\f2c9";
}

.fa-thermometer-quarter:before {
  content: "\f2ca";
}

.fa-thermometer-three-quarters:before {
  content: "\f2c8";
}

.fa-think-peaks:before {
  content: "\f731";
}

.fa-thumbs-down:before {
  content: "\f165";
}

.fa-thumbs-up:before {
  content: "\f164";
}

.fa-thumbtack:before {
  content: "\f08d";
}

.fa-ticket-alt:before {
  content: "\f3ff";
}

.fa-tiktok:before {
  content: "\e07b";
}

.fa-times:before {
  content: "\f00d";
}

.fa-times-circle:before {
  content: "\f057";
}

.fa-tint:before {
  content: "\f043";
}

.fa-tint-slash:before {
  content: "\f5c7";
}

.fa-tired:before {
  content: "\f5c8";
}

.fa-toggle-off:before {
  content: "\f204";
}

.fa-toggle-on:before {
  content: "\f205";
}

.fa-toilet:before {
  content: "\f7d8";
}

.fa-toilet-paper:before {
  content: "\f71e";
}

.fa-toilet-paper-slash:before {
  content: "\e072";
}

.fa-toolbox:before {
  content: "\f552";
}

.fa-tools:before {
  content: "\f7d9";
}

.fa-tooth:before {
  content: "\f5c9";
}

.fa-torah:before {
  content: "\f6a0";
}

.fa-torii-gate:before {
  content: "\f6a1";
}

.fa-tractor:before {
  content: "\f722";
}

.fa-trade-federation:before {
  content: "\f513";
}

.fa-trademark:before {
  content: "\f25c";
}

.fa-traffic-light:before {
  content: "\f637";
}

.fa-trailer:before {
  content: "\e041";
}

.fa-train:before {
  content: "\f238";
}

.fa-tram:before {
  content: "\f7da";
}

.fa-transgender:before {
  content: "\f224";
}

.fa-transgender-alt:before {
  content: "\f225";
}

.fa-trash:before {
  content: "\f1f8";
}

.fa-trash-alt:before {
  content: "\f2ed";
}

.fa-trash-restore:before {
  content: "\f829";
}

.fa-trash-restore-alt:before {
  content: "\f82a";
}

.fa-tree:before {
  content: "\f1bb";
}

.fa-trello:before {
  content: "\f181";
}

.fa-tripadvisor:before {
  content: "\f262";
}

.fa-trophy:before {
  content: "\f091";
}

.fa-truck:before {
  content: "\f0d1";
}

.fa-truck-loading:before {
  content: "\f4de";
}

.fa-truck-monster:before {
  content: "\f63b";
}

.fa-truck-moving:before {
  content: "\f4df";
}

.fa-truck-pickup:before {
  content: "\f63c";
}

.fa-tshirt:before {
  content: "\f553";
}

.fa-tty:before {
  content: "\f1e4";
}

.fa-tumblr:before {
  content: "\f173";
}

.fa-tumblr-square:before {
  content: "\f174";
}

.fa-tv:before {
  content: "\f26c";
}

.fa-twitch:before {
  content: "\f1e8";
}

.fa-twitter:before {
  content: "\f099";
}

.fa-twitter-square:before {
  content: "\f081";
}

.fa-typo3:before {
  content: "\f42b";
}

.fa-uber:before {
  content: "\f402";
}

.fa-ubuntu:before {
  content: "\f7df";
}

.fa-uikit:before {
  content: "\f403";
}

.fa-umbraco:before {
  content: "\f8e8";
}

.fa-umbrella:before {
  content: "\f0e9";
}

.fa-umbrella-beach:before {
  content: "\f5ca";
}

.fa-underline:before {
  content: "\f0cd";
}

.fa-undo:before {
  content: "\f0e2";
}

.fa-undo-alt:before {
  content: "\f2ea";
}

.fa-uniregistry:before {
  content: "\f404";
}

.fa-unity:before {
  content: "\e049";
}

.fa-universal-access:before {
  content: "\f29a";
}

.fa-university:before {
  content: "\f19c";
}

.fa-unlink:before {
  content: "\f127";
}

.fa-unlock:before {
  content: "\f09c";
}

.fa-unlock-alt:before {
  content: "\f13e";
}

.fa-unsplash:before {
  content: "\e07c";
}

.fa-untappd:before {
  content: "\f405";
}

.fa-upload:before {
  content: "\f093";
}

.fa-ups:before {
  content: "\f7e0";
}

.fa-usb:before {
  content: "\f287";
}

.fa-user:before {
  content: "\f007";
}

.fa-user-alt:before {
  content: "\f406";
}

.fa-user-alt-slash:before {
  content: "\f4fa";
}

.fa-user-astronaut:before {
  content: "\f4fb";
}

.fa-user-check:before {
  content: "\f4fc";
}

.fa-user-circle:before {
  content: "\f2bd";
}

.fa-user-clock:before {
  content: "\f4fd";
}

.fa-user-cog:before {
  content: "\f4fe";
}

.fa-user-edit:before {
  content: "\f4ff";
}

.fa-user-friends:before {
  content: "\f500";
}

.fa-user-graduate:before {
  content: "\f501";
}

.fa-user-injured:before {
  content: "\f728";
}

.fa-user-lock:before {
  content: "\f502";
}

.fa-user-md:before {
  content: "\f0f0";
}

.fa-user-minus:before {
  content: "\f503";
}

.fa-user-ninja:before {
  content: "\f504";
}

.fa-user-nurse:before {
  content: "\f82f";
}

.fa-user-plus:before {
  content: "\f234";
}

.fa-user-secret:before {
  content: "\f21b";
}

.fa-user-shield:before {
  content: "\f505";
}

.fa-user-slash:before {
  content: "\f506";
}

.fa-user-tag:before {
  content: "\f507";
}

.fa-user-tie:before {
  content: "\f508";
}

.fa-user-times:before {
  content: "\f235";
}

.fa-users:before {
  content: "\f0c0";
}

.fa-users-cog:before {
  content: "\f509";
}

.fa-users-slash:before {
  content: "\e073";
}

.fa-usps:before {
  content: "\f7e1";
}

.fa-ussunnah:before {
  content: "\f407";
}

.fa-utensil-spoon:before {
  content: "\f2e5";
}

.fa-utensils:before {
  content: "\f2e7";
}

.fa-vaadin:before {
  content: "\f408";
}

.fa-vector-square:before {
  content: "\f5cb";
}

.fa-venus:before {
  content: "\f221";
}

.fa-venus-double:before {
  content: "\f226";
}

.fa-venus-mars:before {
  content: "\f228";
}

.fa-viacoin:before {
  content: "\f237";
}

.fa-viadeo:before {
  content: "\f2a9";
}

.fa-viadeo-square:before {
  content: "\f2aa";
}

.fa-vial:before {
  content: "\f492";
}

.fa-vials:before {
  content: "\f493";
}

.fa-viber:before {
  content: "\f409";
}

.fa-video:before {
  content: "\f03d";
}

.fa-video-slash:before {
  content: "\f4e2";
}

.fa-vihara:before {
  content: "\f6a7";
}

.fa-vimeo:before {
  content: "\f40a";
}

.fa-vimeo-square:before {
  content: "\f194";
}

.fa-vimeo-v:before {
  content: "\f27d";
}

.fa-vine:before {
  content: "\f1ca";
}

.fa-virus:before {
  content: "\e074";
}

.fa-virus-slash:before {
  content: "\e075";
}

.fa-viruses:before {
  content: "\e076";
}

.fa-vk:before {
  content: "\f189";
}

.fa-vnv:before {
  content: "\f40b";
}

.fa-voicemail:before {
  content: "\f897";
}

.fa-volleyball-ball:before {
  content: "\f45f";
}

.fa-volume-down:before {
  content: "\f027";
}

.fa-volume-mute:before {
  content: "\f6a9";
}

.fa-volume-off:before {
  content: "\f026";
}

.fa-volume-up:before {
  content: "\f028";
}

.fa-vote-yea:before {
  content: "\f772";
}

.fa-vr-cardboard:before {
  content: "\f729";
}

.fa-vuejs:before {
  content: "\f41f";
}

.fa-walking:before {
  content: "\f554";
}

.fa-wallet:before {
  content: "\f555";
}

.fa-warehouse:before {
  content: "\f494";
}

.fa-water:before {
  content: "\f773";
}

.fa-wave-square:before {
  content: "\f83e";
}

.fa-waze:before {
  content: "\f83f";
}

.fa-weebly:before {
  content: "\f5cc";
}

.fa-weibo:before {
  content: "\f18a";
}

.fa-weight:before {
  content: "\f496";
}

.fa-weight-hanging:before {
  content: "\f5cd";
}

.fa-weixin:before {
  content: "\f1d7";
}

.fa-whatsapp:before {
  content: "\f232";
}

.fa-whatsapp-square:before {
  content: "\f40c";
}

.fa-wheelchair:before {
  content: "\f193";
}

.fa-whmcs:before {
  content: "\f40d";
}

.fa-wifi:before {
  content: "\f1eb";
}

.fa-wikipedia-w:before {
  content: "\f266";
}

.fa-wind:before {
  content: "\f72e";
}

.fa-window-close:before {
  content: "\f410";
}

.fa-window-maximize:before {
  content: "\f2d0";
}

.fa-window-minimize:before {
  content: "\f2d1";
}

.fa-window-restore:before {
  content: "\f2d2";
}

.fa-windows:before {
  content: "\f17a";
}

.fa-wine-bottle:before {
  content: "\f72f";
}

.fa-wine-glass:before {
  content: "\f4e3";
}

.fa-wine-glass-alt:before {
  content: "\f5ce";
}

.fa-wix:before {
  content: "\f5cf";
}

.fa-wizards-of-the-coast:before {
  content: "\f730";
}

.fa-wolf-pack-battalion:before {
  content: "\f514";
}

.fa-won-sign:before {
  content: "\f159";
}

.fa-wordpress:before {
  content: "\f19a";
}

.fa-wordpress-simple:before {
  content: "\f411";
}

.fa-wpbeginner:before {
  content: "\f297";
}

.fa-wpexplorer:before {
  content: "\f2de";
}

.fa-wpforms:before {
  content: "\f298";
}

.fa-wpressr:before {
  content: "\f3e4";
}

.fa-wrench:before {
  content: "\f0ad";
}

.fa-x-ray:before {
  content: "\f497";
}

.fa-xbox:before {
  content: "\f412";
}

.fa-xing:before {
  content: "\f168";
}

.fa-xing-square:before {
  content: "\f169";
}

.fa-y-combinator:before {
  content: "\f23b";
}

.fa-yahoo:before {
  content: "\f19e";
}

.fa-yammer:before {
  content: "\f840";
}

.fa-yandex:before {
  content: "\f413";
}

.fa-yandex-international:before {
  content: "\f414";
}

.fa-yarn:before {
  content: "\f7e3";
}

.fa-yelp:before {
  content: "\f1e9";
}

.fa-yen-sign:before {
  content: "\f157";
}

.fa-yin-yang:before {
  content: "\f6ad";
}

.fa-yoast:before {
  content: "\f2b1";
}

.fa-youtube:before {
  content: "\f167";
}

.fa-youtube-square:before {
  content: "\f431";
}

.fa-zhihu:before {
  content: "\f63f";
}

.sr-only {
  border: 0;
  clip: rect(0, 0, 0, 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
}

.sr-only-focusable:active, .sr-only-focusable:focus {
  clip: auto;
  height: auto;
  margin: 0;
  overflow: visible;
  position: static;
  width: auto;
}

.fab {
  font-family: "Font Awesome Brands";
  font-weight: 400;
}

.fal,
.far {
  font-family: "Font Awesome Regular";
  font-weight: 400;
}

.fa,
.fas {
  font-family: "Font Awesome Solid";
  font-weight: 900;
}

body,
p {
  font-family: var(--ff-regular);
  font-size: 16px;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: var(--ls-default);
}

h1 {
  font-family: var(--ff-medium);
  font-size: 35px;
  font-weight: 400;
  line-height: 1.1;
  letter-spacing: var(--ls-default);
  margin-block-end: 25px;
}
@media (min-width: 768px) {
  h1 {
    font-size: 48px;
  }
}
body:not([data-dealer-private]) h1 .font-volvo {
  font-family: var(--ff-broad);
  font-size: 48px;
  font-weight: 500;
  line-height: 0.95;
  letter-spacing: var(--ls-volvo);
}
@media (min-width: 768px) {
  body:not([data-dealer-private]) h1 .font-volvo {
    font-size: 60px;
    line-height: 0.95;
  }
}

h2 {
  font-family: var(--ff-medium);
  font-size: 27px;
  font-weight: 400;
  line-height: 1.2;
  letter-spacing: var(--ls-default);
  margin-block-end: 25px;
}
@media (min-width: 768px) {
  h2 {
    font-size: 32px;
  }
}
body:not([data-dealer-private]) h2 .font-volvo {
  font-family: var(--ff-broad);
  font-size: 48px;
  font-weight: 500;
  line-height: 0.95;
  letter-spacing: var(--ls-volvo);
}

h3 {
  font-family: var(--ff-medium);
  font-size: 21px;
  font-weight: 400;
  line-height: 1.2;
  letter-spacing: var(--ls-default);
}
@media (min-width: 768px) {
  h3 {
    font-size: 24px;
  }
}

h4 {
  font-family: var(--ff-medium);
  font-size: 16px;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: var(--ls-default);
}

h5 {
  font-family: var(--ff-medium);
  font-size: 12px;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: var(--ls-default);
}

.body-text--large {
  font-family: var(--ff-light);
  font-size: 20px;
  font-weight: 300;
  line-height: 1.4;
  letter-spacing: var(--ls-default);
  display: block;
}

:root {
  --v-icon-size: 24px;
}
@media (min-width: 960px) {
  :root {
    --v-icon-size: 16px;
  }
}

.icon {
  display: inline-block;
  width: 32px;
  height: 32px;
}

.v-icon {
  width: var(--v-icon-size);
  height: var(--v-icon-size);
}
.v-icon svg path {
  fill: currentColor;
}
.v-icon-sprite {
  pointer-events: none;
  position: absolute;
  max-height: 0;
  max-width: 0;
  overflow: hidden;
}
.v-icon--16 {
  display: none;
}
@media (min-width: 960px) {
  .v-icon--16 {
    display: inline;
  }
}
.v-icon--24 {
  display: inline;
  y: 0;
  /* stylelint-disable */
  /* stylelint-enable */
}
@media not all and (-webkit-min-device-pixel-ratio: 0), not all and (min-resolution: 0.001dpcm) {
  .v-icon--24 {
    transform: translateY(-16px);
  }
}
@supports (-webkit-touch-callout: none) {
  .v-icon--24 {
    transform: translateY(-16px);
  }
}
@media (min-width: 960px) {
  .v-icon--24 {
    display: none;
  }
}

.hidden {
  display: none !important;
  visibility: hidden;
}
@media (max-width: 767px) {
  .hidden-phone {
    display: none !important;
    visibility: hidden;
  }
}
@media (min-width: 768px) and (max-width: 959px) {
  .hidden-tablet {
    display: none !important;
    visibility: hidden;
  }
}
@media (min-width: 960px) {
  .hidden-desktop {
    display: none !important;
    visibility: hidden;
  }
}

.visibility--hidden {
  visibility: hidden;
}

.force-display--block {
  display: block !important;
}
.force-display--none {
  display: block !important;
}

.lock-scroll {
  overflow: hidden;
}

:root {
  --v-icon-size: 24px;
}
@media (min-width: 960px) {
  :root {
    --v-icon-size: 16px;
  }
}

.v-icon {
  width: var(--v-icon-size);
  height: var(--v-icon-size);
}
.v-icon svg path {
  fill: currentColor;
}
.v-icon-sprite {
  pointer-events: none;
  position: absolute;
  max-height: 0;
  max-width: 0;
  overflow: hidden;
}
.v-icon--16 {
  display: none;
}
@media (min-width: 960px) {
  .v-icon--16 {
    display: inline;
  }
}
.v-icon--24 {
  display: inline;
  y: 0;
}
.browser--safari .v-icon--24 {
  transform: translateY(-16px);
}
@media (min-width: 960px) {
  .v-icon--24 {
    display: none;
  }
}

:root {
  --button-icon-transform: none;
  --button-icon-transform-hover: translateX(5px);
}

html[dir=rtl] {
  --button-icon-transform: scaleX(-1);
  --button-icon-transform-hover: translateX(-5px) scaleX(-1);
}

.direction--ltr {
  direction: ltr;
}

.direction--rtl {
  direction: rtl;
}

/*
Also please follow this
Do your project have diferent charset languages to account with?
      - Yes -> follow https://projects.netcentric.biz/wiki/display/FRONTEND/CSS+-+Font+Normalization
      - No -> You can still use it, there are tons of advantages, but its create some extra css and layout rendering
*/
/*
  * Design spec:
  * https://www.figma.com/file/SR4rvQlNnCmPMrQ9WYaIqv/branch/TJqkFymq09wf8KwmY1WNcj/Volvo-AEM-Design-system?type=design&node-id=7-26&t=pAm916VRiqCOD2I1-0
*/
/**
 * z-indexes from lower to -> higher
 */
/* doc
---
title: Pixel to em
name: nn-px-to-em
category: functions
---

Calculate the em with a given pixel with the given base font size
If you don't set a $base the $base-font-size is used as the context

## Live Template abbreviations
---
-ptu

## Parameters
---
@parameter $value = pixel based number (without unit)
@parameter $base = pixel based number (without unit)

## Dependencies
---
nn-strip-unit

## Example
---
```html_example
nn-px-to-em(5) // Output: 0.3125em
nn-px-to-em(5, 10) // Output: 0.5em
nn-px-to-em(5, 20) // Output: 0.25em
```
*/
/* doc
---
title: Pixel to rem
name: nn-px-to-rem
category: functions
---

Calculate the rem with a given pixel with the given base font size

In:  5px
Out: 0.3125rem

## Live Template abbreviations
---
-rem

## Parameters
---
@parameter $value = pixel based number (without unit)

## Dependencies
---
nn-strip-unit

## Example
---
```html_example
nn-px-to-rem(5) // Output 0.3125rem
```

*/
/* doc
---
title: Pixel to unit
name: px-to-unit
category: mixins
---

Set a property and value (pixel based without unit)

Calculates rem / em / % from given pixel and base (default base is the
base-font-size, 16px)
If rtl is true, this mixin handles all the direction stuff:
- Switching the values, when we have exactly 4 values
- Switching left and right in properties (padding and margin)

## Live Template abbreviations
---
-ptu (for em or % to pixel - with base parameter)
-rem (for rem to pixel - without base parameter)

## Parameters
---
@parameter $property = padding | margin | font-size | width | height
@parameter $value = Pixel based number - add px to keep the px for a value
@parameter $base = px based number, Default: 16px
@parameter $unit = Set unit: px | em | rem | percent

## Dependencies
---
abstract/functions/swap-left-right
abstract/functions/strip-unit

## Example
---

```html_example
@include nn-px-to-unit(padding, 0 10px 20 0); => padding: 0 10px 1.25rem 0;
@include nn-px-to-unit(padding, 0 10 20 0); => padding: 0 0.625rem 1.25rem 0;
@include nn-px-to-unit(padding-left, 10);
@include nn-px-to-unit(padding-right, 10);
@include nn-px-to-unit(margin, 0 10 20 0);
@include nn-px-to-unit(margin-left, 10);
@include nn-px-to-unit(margin-right, 10);
@include nn-px-to-unit(font-size, 20);
@include nn-px-to-unit(width, 100);
@include nn-px-to-unit(min-width, 100);
@include nn-px-to-unit(mann-width, 100);
@include nn-px-to-unit(height, 100);
@include nn-px-to-unit(min-height, 100);
@include nn-px-to-unit(mann-height, 100);
```

## Source
---
http://css-tricks.com/snippets/css/less-mixin-for-rem-font-sizing/

*/
/* doc
---
title: Pixel to unitless
name: nn-px-to-unitless
category: functions
---

This makes the same calculation as px to em. But it don't print out the unit.

Use this for line-heights.

## Live Template abbreviations
---

## Parameters
---
@parameter $value = pixel based number (without unit)
@parameter $base = pixel based number (without unit)

## Dependencies
---

## Example
---

```html_example
line-height: nn-px-to-unitless(5) // Output: 0.3125
```

## Source
---

*/
/* doc
---
title: Strip unit
name: nn-strip-unit
category: functions
---

Strips of the unit of a number

## Parameters
---
@parameter $num = number with unit (5px, 5em, 5rem)

## Example
---

```html_example
nn-strip-unit(5px) //Output: 5
nn-strip-unit(10em) // Output: 10
nn-strip-unit(15rem) // Output: 15
```

*/
/* doc
---
title: z-index
name: nn-z-index
category: functions
---

Because z-indices can get tricky we manage them in the theme.scss globally.

Always use this mixin to set set a z-index.

Read the Best Practice to get an full documentation:
https://projects.netcentric.biz/wiki/display/FRONTEND/How+to+set+a+z-index

## Live Template abbreviations
---
-z

## Parameters
---
@parameter $element = Name of the element (normally this will be the module name for the main stack)
@parameter $list = Name of the list (default $z-indices). Must be only set for stack context
@parameter $min = Set a minimum z-index which will be added to the list.

## Dependencies
---
$z-indices variable in the theme.scss

## Example
---

```html_example

// In the SASS theme file

$z-indices: slider, modal, dialog, navigation;

// In the SASS module file

.modal {
    &__base {
        position: absolute;
        z-index: nn-z-index(modal);
    }
}
```

## Source
---
http://www.smashingmagazine.com/2014/06/12/sassy-z-index-management-for-complex-layouts/

*/
/* doc
---
title: remove every unit
name: strip-unit
category: functions
---
remove all units

## Parameters
---
@parameter $number = number with unit

## Example
---
```html_example
strip-unit(5px) // Output: 5
```
*/
/*
    This mixin converts any unitless number (for example 40) to the correct unit, according to the given axis.

    Parameters:
    - $value: unitless number to be converted. A unit in $value will correspond to a px in the browser,
        no matter if it's output as px or rem

    Returns
    - Horizontal: will convert the number to pixels (40px)
    - Vertical: will convert the number to rem (if rem === 16px, then 40 will be converted to 2.5 rem)
*/
/*
    Converts a unitless number to the corresponding unit on the horizontal axis.
    By default will convert the value to px.
*/
/*
    Converts a unitless number to the corresponding unit on the vertical axis.
    By default will convert the value to rem.
*/
/* stylelint-disable */
/* doc
---
title: Swap left right values
name: swap-left-right-values
category: functions
---

Swap the values for right and left when $rtl is set to true:

In:  0 5px 8px 12px
Out: 0 12px 8px 5px (in rtl)

## Parameters
---
@parameter $values = 4 numbers (works with all units)

## Example
---

```html_example
swap-left-right-values(0 1px 8px 12px) // 0 12px 8px 1px
swap-left-right-values(0 1em 8em 12em) // 0 12em 8em 1em
wap-left-right-values(0 1rem 8rem 12rem) // 0 12rem 8rem 1rem
```

## Source
---
http://stackoverflow.com/questions/14199323/right-to-left-rtl-support-in-sass-project

*/
/* stylelint-disable */
/* doc
---
title: Swap left right names
name: swap-left-right-names
category: functions
---

Swap the names right and left when $rtl is set to true.
If the value is not right or left it returns the original value.

In:  right
Out: left (in rtl), right (in ltr)

## Live Template abbreviations
---

## Parameters
---
@parameter $origin = right | left

## Example
---

```html_example
swap-left-right-name(left)
swap-left-right-name(right)
```

## Source
---
http://stackoverflow.com/questions/14199323/right-to-left-rtl-support-in-sass-project

*/
/*  List of CSS properties that will always be output at least as 2 different values
    in order to be able to convert each one to the correct axis unit */
/*
    Mixin for automatically handling spacings around/between elements.

    This mixin will automatically invert the lef/right directions in RTL languages.
    Also, the unitless values will be converted to the proper unit according to the axis

    Parameters:
    - $property-name: name of the CSS property that should be output. Supported properties are:
        margin, margin-top, margin-right, margin-bottom, margin-left
        padding, padding-top, padding-right, padding-bottom, padding-left
        width, height, min-width, max-width, min-height, min-height
    - $value: value that will be output as part of the given property. Supported values are:
        Unitless number (40): this should be used most of the times. It will automatically be converted
            to the correct unit depending on the axis where it's used (horizontal axis => px, vertical axis => rem).
            Each unit in $value will correspond to a px in the browser, no matter to which unit it will be converted.
        Number with unit (40px, 40%...): the number and the unit will be preserved and only the left/right inversion
            will be done for RTL languages
        List of values (40 30% 20 10): margin and padding shorthands whith multiple values are supported.
            The left/right values will be automatically swapped in RTL and the unitless numbers will be converted
            to the corresponding unit. Unitless and numbers with units can be mixed in the same call.
        Using calc() in any of the previous examples is supported, although no unit conversion will be done

 ## Example
---

```html_example
@include spacing(padding, 0 10px 20 0); => padding: 0 10px 2rem 0;
@include spacing(padding, 0 10 20 0); => padding: 0 10px 2rem 0;
@include spacing(padding-left, 10);
@include spacing(padding-right, 10);
@include spacing(margin, 0 10 20 0);
@include spacing(margin-left, 10);
@include spacing(margin-right, 10);
@include spacing(width, 100);
@include spacing(min-width, 100);
@include spacing(max-width, 100);
@include spacing(height, 100);
@include spacing(min-height, 100);
@include spacing(max-height, 100);
```
*/
/* doc
---
title: Clearfix
name: clearfix
category: mixins
---

Clears after floating element

Use this mixin only inside media queries where you can't use the
abstract/extends/utils/_clearfix version, which adds less code to css

## Live Template abbreviations
---

## Example
---

```html_example
@include clearfix;
```

## Source
---
https://css-tricks.com/snippets/css/clear-fix/
*/
/* stylelint-disable string-no-newline */
/* doc
---
title: focus color
name: focus color
category: mixins
---

Add a focus color when keyboard-focus is activated
## Parameters
---
@param $number

*/
/* doc
---
title: ignore-container
name: ignore-container
category: mixins
---

Set full page width for something inside a container

## Parameters
---
@param $container-size
@param $gutter

*/
/* Generates all the rules for the grid columns up to the given amount of column */
/* Generates all the rules for the grid column offset up to the given amount of column */
/* Generates all the rules for the grid and columns for the given break point and total of columns */
/* API function to be called to generate a grid config */
/* doc
---
type: button type
state: state button
---

Button styles

Use this mixin for button styles: color text, background, border

## Example
---

```html_example
@include button(primary);
```
*/
/* doc
---
lineLimit: This value specifies the number of lines after which the content will be clamped. It must be greater than 0.
---

Truncates text at a specific number of lines.

Use this mixin to hide long text.

## Example
---

```html_example
@include line-clamp($lineLimit: 4);
```
*/
/* typography
---
title: typography
name: Typography
category: mixins
---

Adds font CSS properties by a map provided

## Parameters
---
@param $t-style
@param $is-important: false

* $t-style is expected to be a map with 'default' and 'breakpoint[s]' submaps with a property
for every css property to be set.
* $is-important parameter allows to force typography properties to be set as !important
Try to avoid its use, but it might be needed for situations where styles for a component
are very specific and to overwrite the generic ones is too complex (if they have a lot of specificity)

*/
/* doc
---
title: hidden
name: hidden
category: mixins
---

Hide from both screenreaders and browsers: h5bp.com/u
## Parameters
---

*/
/* doc
---
title: overlay
name: overlay
category: mixins
---

Creates an overlay with the provided background color
## Parameters
---
@param $bgColor

*/
/**
 * @mixin top-bottom-border
 * @desc Creates a dynamic and customizable border at the specified position on an element.
 *
 * @param {string} $position - Optional, Default: 'bottom'. Defines the position of the border. Accepts values 'top' or 'bottom'.
 * @param {color} $color - Optional, Default: '$c-black'. Specifies the color of the border. Accepts any valid CSS color value.
 * @param {length} $width - Optional, Default: '2px'. Sets the width of the border. Accepts any valid CSS length value.
 * @param {length} $margin - Optional, Default: '0'. Adds margin to the border. Accepts any valid CSS length value.
 *
 * @example
 *   .example-element {
 *       @include top-bottom-border($position: top, $color: $c-grey-two, $width: 3px, $margin: 10px);
 *   }
 */
/* doc
---
title: reset-fullwidth-margins
name: reset-fullwidth-margins
category: mixins
---

Reset margins for full width components inside a Container or a Column Control
*/
/* doc
---
title: visually hidden
name: visually hidden
category: mixins
---

Hidden from browsers but accessible to screen readers
## Parameters
---

*/
:root {
  --checkbox-margin-inline-end: 10px;
  --checkbox-width: 24px;
  --checkbox-outline-offset-size: 5px;
  --checkbox-radius: 2px;
  --checkbox-border-color: #a7a8a9;
  --checkbox-border-color-checked: #004fbc;
  --checkbox-background-color: #fff;
  --checkbox-outline-color: #004fbc;
}

.checkbox {
  flex-shrink: 0;
  -webkit-appearance: none;
          appearance: none;
  background-color: var(--checkbox-background-color);
  background-repeat: no-repeat;
  border: 1px solid var(--checkbox-border-color);
  border-radius: var(--checkbox-radius);
  margin-inline-end: var(--checkbox-margin-inline-end);
  width: var(--checkbox-width);
  aspect-ratio: 1;
  cursor: pointer;
}
.checkbox:checked {
  border-color: var(--checkbox-border-color-checked);
  background-position: center;
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="21" xml:space="preserve"><path d="M14.922 8.203c0-.11-.031-.219-.063-.328a.887.887 0 0 0-.187-.281l-1.219-1.219a1.468 1.468 0 0 0-.281-.188c-.11-.03-.219-.062-.328-.062-.11 0-.219.031-.328.063a.886.886 0 0 0-.282.187l-5.843 5.86-2.625-2.626a1.188 1.188 0 0 0-.297-.187 1.23 1.23 0 0 0-.313-.063c-.125 0-.234.032-.328.063a.886.886 0 0 0-.281.187l-1.219 1.22a.562.562 0 0 0-.187.28.795.795 0 0 0-.063.313.84.84 0 0 0 .063.344c.03.109.093.203.187.265l4.453 4.453a.466.466 0 0 0 .266.188.84.84 0 0 0 .344.062.794.794 0 0 0 .312-.062.563.563 0 0 0 .281-.188l7.688-7.687a.68.68 0 0 0 .187-.266c.032-.11.063-.219.063-.328Z" style="fill: %23004FBC" /></svg>');
}
.checkbox:focus-visible + .checkbox__label {
  outline: dashed 2px var(--checkbox-outline-color);
  outline-offset: var(--checkbox-outline-offset-size);
}
.checkbox:focus:not(:focus-visible) {
  outline: none;
}
.checkbox__label {
  display: flex;
  align-items: center;
  cursor: pointer;
  font-family: var(--ff-regular);
}

/*
Also please follow this
Do your project have diferent charset languages to account with?
      - Yes -> follow https://projects.netcentric.biz/wiki/display/FRONTEND/CSS+-+Font+Normalization
      - No -> You can still use it, there are tons of advantages, but its create some extra css and layout rendering
*/
/*
  * Design spec:
  * https://www.figma.com/file/SR4rvQlNnCmPMrQ9WYaIqv/branch/TJqkFymq09wf8KwmY1WNcj/Volvo-AEM-Design-system?type=design&node-id=7-26&t=pAm916VRiqCOD2I1-0
*/
/**
 * z-indexes from lower to -> higher
 */
/* doc
---
title: Pixel to em
name: nn-px-to-em
category: functions
---

Calculate the em with a given pixel with the given base font size
If you don't set a $base the $base-font-size is used as the context

## Live Template abbreviations
---
-ptu

## Parameters
---
@parameter $value = pixel based number (without unit)
@parameter $base = pixel based number (without unit)

## Dependencies
---
nn-strip-unit

## Example
---
```html_example
nn-px-to-em(5) // Output: 0.3125em
nn-px-to-em(5, 10) // Output: 0.5em
nn-px-to-em(5, 20) // Output: 0.25em
```
*/
/* doc
---
title: Pixel to rem
name: nn-px-to-rem
category: functions
---

Calculate the rem with a given pixel with the given base font size

In:  5px
Out: 0.3125rem

## Live Template abbreviations
---
-rem

## Parameters
---
@parameter $value = pixel based number (without unit)

## Dependencies
---
nn-strip-unit

## Example
---
```html_example
nn-px-to-rem(5) // Output 0.3125rem
```

*/
/* doc
---
title: Pixel to unit
name: px-to-unit
category: mixins
---

Set a property and value (pixel based without unit)

Calculates rem / em / % from given pixel and base (default base is the
base-font-size, 16px)
If rtl is true, this mixin handles all the direction stuff:
- Switching the values, when we have exactly 4 values
- Switching left and right in properties (padding and margin)

## Live Template abbreviations
---
-ptu (for em or % to pixel - with base parameter)
-rem (for rem to pixel - without base parameter)

## Parameters
---
@parameter $property = padding | margin | font-size | width | height
@parameter $value = Pixel based number - add px to keep the px for a value
@parameter $base = px based number, Default: 16px
@parameter $unit = Set unit: px | em | rem | percent

## Dependencies
---
abstract/functions/swap-left-right
abstract/functions/strip-unit

## Example
---

```html_example
@include nn-px-to-unit(padding, 0 10px 20 0); => padding: 0 10px 1.25rem 0;
@include nn-px-to-unit(padding, 0 10 20 0); => padding: 0 0.625rem 1.25rem 0;
@include nn-px-to-unit(padding-left, 10);
@include nn-px-to-unit(padding-right, 10);
@include nn-px-to-unit(margin, 0 10 20 0);
@include nn-px-to-unit(margin-left, 10);
@include nn-px-to-unit(margin-right, 10);
@include nn-px-to-unit(font-size, 20);
@include nn-px-to-unit(width, 100);
@include nn-px-to-unit(min-width, 100);
@include nn-px-to-unit(mann-width, 100);
@include nn-px-to-unit(height, 100);
@include nn-px-to-unit(min-height, 100);
@include nn-px-to-unit(mann-height, 100);
```

## Source
---
http://css-tricks.com/snippets/css/less-mixin-for-rem-font-sizing/

*/
/* doc
---
title: Pixel to unitless
name: nn-px-to-unitless
category: functions
---

This makes the same calculation as px to em. But it don't print out the unit.

Use this for line-heights.

## Live Template abbreviations
---

## Parameters
---
@parameter $value = pixel based number (without unit)
@parameter $base = pixel based number (without unit)

## Dependencies
---

## Example
---

```html_example
line-height: nn-px-to-unitless(5) // Output: 0.3125
```

## Source
---

*/
/* doc
---
title: Strip unit
name: nn-strip-unit
category: functions
---

Strips of the unit of a number

## Parameters
---
@parameter $num = number with unit (5px, 5em, 5rem)

## Example
---

```html_example
nn-strip-unit(5px) //Output: 5
nn-strip-unit(10em) // Output: 10
nn-strip-unit(15rem) // Output: 15
```

*/
/* doc
---
title: z-index
name: nn-z-index
category: functions
---

Because z-indices can get tricky we manage them in the theme.scss globally.

Always use this mixin to set set a z-index.

Read the Best Practice to get an full documentation:
https://projects.netcentric.biz/wiki/display/FRONTEND/How+to+set+a+z-index

## Live Template abbreviations
---
-z

## Parameters
---
@parameter $element = Name of the element (normally this will be the module name for the main stack)
@parameter $list = Name of the list (default $z-indices). Must be only set for stack context
@parameter $min = Set a minimum z-index which will be added to the list.

## Dependencies
---
$z-indices variable in the theme.scss

## Example
---

```html_example

// In the SASS theme file

$z-indices: slider, modal, dialog, navigation;

// In the SASS module file

.modal {
    &__base {
        position: absolute;
        z-index: nn-z-index(modal);
    }
}
```

## Source
---
http://www.smashingmagazine.com/2014/06/12/sassy-z-index-management-for-complex-layouts/

*/
/* doc
---
title: remove every unit
name: strip-unit
category: functions
---
remove all units

## Parameters
---
@parameter $number = number with unit

## Example
---
```html_example
strip-unit(5px) // Output: 5
```
*/
/*
    This mixin converts any unitless number (for example 40) to the correct unit, according to the given axis.

    Parameters:
    - $value: unitless number to be converted. A unit in $value will correspond to a px in the browser,
        no matter if it's output as px or rem

    Returns
    - Horizontal: will convert the number to pixels (40px)
    - Vertical: will convert the number to rem (if rem === 16px, then 40 will be converted to 2.5 rem)
*/
/*
    Converts a unitless number to the corresponding unit on the horizontal axis.
    By default will convert the value to px.
*/
/*
    Converts a unitless number to the corresponding unit on the vertical axis.
    By default will convert the value to rem.
*/
/* stylelint-disable */
/* doc
---
title: Swap left right values
name: swap-left-right-values
category: functions
---

Swap the values for right and left when $rtl is set to true:

In:  0 5px 8px 12px
Out: 0 12px 8px 5px (in rtl)

## Parameters
---
@parameter $values = 4 numbers (works with all units)

## Example
---

```html_example
swap-left-right-values(0 1px 8px 12px) // 0 12px 8px 1px
swap-left-right-values(0 1em 8em 12em) // 0 12em 8em 1em
wap-left-right-values(0 1rem 8rem 12rem) // 0 12rem 8rem 1rem
```

## Source
---
http://stackoverflow.com/questions/14199323/right-to-left-rtl-support-in-sass-project

*/
/* stylelint-disable */
/* doc
---
title: Swap left right names
name: swap-left-right-names
category: functions
---

Swap the names right and left when $rtl is set to true.
If the value is not right or left it returns the original value.

In:  right
Out: left (in rtl), right (in ltr)

## Live Template abbreviations
---

## Parameters
---
@parameter $origin = right | left

## Example
---

```html_example
swap-left-right-name(left)
swap-left-right-name(right)
```

## Source
---
http://stackoverflow.com/questions/14199323/right-to-left-rtl-support-in-sass-project

*/
/*  List of CSS properties that will always be output at least as 2 different values
    in order to be able to convert each one to the correct axis unit */
/*
    Mixin for automatically handling spacings around/between elements.

    This mixin will automatically invert the lef/right directions in RTL languages.
    Also, the unitless values will be converted to the proper unit according to the axis

    Parameters:
    - $property-name: name of the CSS property that should be output. Supported properties are:
        margin, margin-top, margin-right, margin-bottom, margin-left
        padding, padding-top, padding-right, padding-bottom, padding-left
        width, height, min-width, max-width, min-height, min-height
    - $value: value that will be output as part of the given property. Supported values are:
        Unitless number (40): this should be used most of the times. It will automatically be converted
            to the correct unit depending on the axis where it's used (horizontal axis => px, vertical axis => rem).
            Each unit in $value will correspond to a px in the browser, no matter to which unit it will be converted.
        Number with unit (40px, 40%...): the number and the unit will be preserved and only the left/right inversion
            will be done for RTL languages
        List of values (40 30% 20 10): margin and padding shorthands whith multiple values are supported.
            The left/right values will be automatically swapped in RTL and the unitless numbers will be converted
            to the corresponding unit. Unitless and numbers with units can be mixed in the same call.
        Using calc() in any of the previous examples is supported, although no unit conversion will be done

 ## Example
---

```html_example
@include spacing(padding, 0 10px 20 0); => padding: 0 10px 2rem 0;
@include spacing(padding, 0 10 20 0); => padding: 0 10px 2rem 0;
@include spacing(padding-left, 10);
@include spacing(padding-right, 10);
@include spacing(margin, 0 10 20 0);
@include spacing(margin-left, 10);
@include spacing(margin-right, 10);
@include spacing(width, 100);
@include spacing(min-width, 100);
@include spacing(max-width, 100);
@include spacing(height, 100);
@include spacing(min-height, 100);
@include spacing(max-height, 100);
```
*/
/* doc
---
title: Clearfix
name: clearfix
category: mixins
---

Clears after floating element

Use this mixin only inside media queries where you can't use the
abstract/extends/utils/_clearfix version, which adds less code to css

## Live Template abbreviations
---

## Example
---

```html_example
@include clearfix;
```

## Source
---
https://css-tricks.com/snippets/css/clear-fix/
*/
/* stylelint-disable string-no-newline */
/* doc
---
title: focus color
name: focus color
category: mixins
---

Add a focus color when keyboard-focus is activated
## Parameters
---
@param $number

*/
/* doc
---
title: ignore-container
name: ignore-container
category: mixins
---

Set full page width for something inside a container

## Parameters
---
@param $container-size
@param $gutter

*/
/* Generates all the rules for the grid columns up to the given amount of column */
/* Generates all the rules for the grid column offset up to the given amount of column */
/* Generates all the rules for the grid and columns for the given break point and total of columns */
/* API function to be called to generate a grid config */
/* doc
---
type: button type
state: state button
---

Button styles

Use this mixin for button styles: color text, background, border

## Example
---

```html_example
@include button(primary);
```
*/
/* doc
---
lineLimit: This value specifies the number of lines after which the content will be clamped. It must be greater than 0.
---

Truncates text at a specific number of lines.

Use this mixin to hide long text.

## Example
---

```html_example
@include line-clamp($lineLimit: 4);
```
*/
/* typography
---
title: typography
name: Typography
category: mixins
---

Adds font CSS properties by a map provided

## Parameters
---
@param $t-style
@param $is-important: false

* $t-style is expected to be a map with 'default' and 'breakpoint[s]' submaps with a property
for every css property to be set.
* $is-important parameter allows to force typography properties to be set as !important
Try to avoid its use, but it might be needed for situations where styles for a component
are very specific and to overwrite the generic ones is too complex (if they have a lot of specificity)

*/
/* doc
---
title: hidden
name: hidden
category: mixins
---

Hide from both screenreaders and browsers: h5bp.com/u
## Parameters
---

*/
/* doc
---
title: overlay
name: overlay
category: mixins
---

Creates an overlay with the provided background color
## Parameters
---
@param $bgColor

*/
/**
 * @mixin top-bottom-border
 * @desc Creates a dynamic and customizable border at the specified position on an element.
 *
 * @param {string} $position - Optional, Default: 'bottom'. Defines the position of the border. Accepts values 'top' or 'bottom'.
 * @param {color} $color - Optional, Default: '$c-black'. Specifies the color of the border. Accepts any valid CSS color value.
 * @param {length} $width - Optional, Default: '2px'. Sets the width of the border. Accepts any valid CSS length value.
 * @param {length} $margin - Optional, Default: '0'. Adds margin to the border. Accepts any valid CSS length value.
 *
 * @example
 *   .example-element {
 *       @include top-bottom-border($position: top, $color: $c-grey-two, $width: 3px, $margin: 10px);
 *   }
 */
/* doc
---
title: reset-fullwidth-margins
name: reset-fullwidth-margins
category: mixins
---

Reset margins for full width components inside a Container or a Column Control
*/
/* doc
---
title: visually hidden
name: visually hidden
category: mixins
---

Hidden from browsers but accessible to screen readers
## Parameters
---

*/
.checkbox-switch {
  position: relative;
  display: inline-block;
}
.checkbox-switch:has(input:focus-visible) {
  outline: solid 2px #004fbc;
  outline-offset: 1px;
  border-radius: 1px;
}
.checkbox-switch__input {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 5;
  opacity: 0;
  cursor: pointer;
}
.checkbox-switch__input:hover + label::after {
  box-shadow: 0 2px 15px 0 rgba(0, 0, 0, 0.2), 0 3px 8px 0 rgba(0, 0, 0, 0.15);
}
.checkbox-switch__input:checked + label {
  background: #004fbc;
}
.checkbox-switch__input:checked + label::after {
  left: 14px;
}
.checkbox-switch__label-element {
  width: 34px;
  height: 14px;
  background: #a7a8a9;
  position: relative;
  display: inline-block;
  border-radius: 7px;
  transition: 0.4s;
}
.checkbox-switch__label-element::after {
  content: "";
  position: absolute;
  width: 20px;
  height: 20px;
  border-radius: 100%;
  left: 0;
  top: -3px;
  z-index: 2;
  background: #fff;
  box-shadow: 0 0 5px rgba(0, 0, 0, 0.2);
  transition: 0.4s;
}
.checkbox-switch__label {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  border: 0;
  padding: 0;
  white-space: nowrap;
  clip-path: inset(100%);
  clip: rect(0 0 0 0);
  overflow: hidden;
}

/*
Also please follow this
Do your project have diferent charset languages to account with?
      - Yes -> follow https://projects.netcentric.biz/wiki/display/FRONTEND/CSS+-+Font+Normalization
      - No -> You can still use it, there are tons of advantages, but its create some extra css and layout rendering
*/
/*
  * Design spec:
  * https://www.figma.com/file/SR4rvQlNnCmPMrQ9WYaIqv/branch/TJqkFymq09wf8KwmY1WNcj/Volvo-AEM-Design-system?type=design&node-id=7-26&t=pAm916VRiqCOD2I1-0
*/
/**
 * z-indexes from lower to -> higher
 */
/* doc
---
title: Pixel to em
name: nn-px-to-em
category: functions
---

Calculate the em with a given pixel with the given base font size
If you don't set a $base the $base-font-size is used as the context

## Live Template abbreviations
---
-ptu

## Parameters
---
@parameter $value = pixel based number (without unit)
@parameter $base = pixel based number (without unit)

## Dependencies
---
nn-strip-unit

## Example
---
```html_example
nn-px-to-em(5) // Output: 0.3125em
nn-px-to-em(5, 10) // Output: 0.5em
nn-px-to-em(5, 20) // Output: 0.25em
```
*/
/* doc
---
title: Pixel to rem
name: nn-px-to-rem
category: functions
---

Calculate the rem with a given pixel with the given base font size

In:  5px
Out: 0.3125rem

## Live Template abbreviations
---
-rem

## Parameters
---
@parameter $value = pixel based number (without unit)

## Dependencies
---
nn-strip-unit

## Example
---
```html_example
nn-px-to-rem(5) // Output 0.3125rem
```

*/
/* doc
---
title: Pixel to unit
name: px-to-unit
category: mixins
---

Set a property and value (pixel based without unit)

Calculates rem / em / % from given pixel and base (default base is the
base-font-size, 16px)
If rtl is true, this mixin handles all the direction stuff:
- Switching the values, when we have exactly 4 values
- Switching left and right in properties (padding and margin)

## Live Template abbreviations
---
-ptu (for em or % to pixel - with base parameter)
-rem (for rem to pixel - without base parameter)

## Parameters
---
@parameter $property = padding | margin | font-size | width | height
@parameter $value = Pixel based number - add px to keep the px for a value
@parameter $base = px based number, Default: 16px
@parameter $unit = Set unit: px | em | rem | percent

## Dependencies
---
abstract/functions/swap-left-right
abstract/functions/strip-unit

## Example
---

```html_example
@include nn-px-to-unit(padding, 0 10px 20 0); => padding: 0 10px 1.25rem 0;
@include nn-px-to-unit(padding, 0 10 20 0); => padding: 0 0.625rem 1.25rem 0;
@include nn-px-to-unit(padding-left, 10);
@include nn-px-to-unit(padding-right, 10);
@include nn-px-to-unit(margin, 0 10 20 0);
@include nn-px-to-unit(margin-left, 10);
@include nn-px-to-unit(margin-right, 10);
@include nn-px-to-unit(font-size, 20);
@include nn-px-to-unit(width, 100);
@include nn-px-to-unit(min-width, 100);
@include nn-px-to-unit(mann-width, 100);
@include nn-px-to-unit(height, 100);
@include nn-px-to-unit(min-height, 100);
@include nn-px-to-unit(mann-height, 100);
```

## Source
---
http://css-tricks.com/snippets/css/less-mixin-for-rem-font-sizing/

*/
/* doc
---
title: Pixel to unitless
name: nn-px-to-unitless
category: functions
---

This makes the same calculation as px to em. But it don't print out the unit.

Use this for line-heights.

## Live Template abbreviations
---

## Parameters
---
@parameter $value = pixel based number (without unit)
@parameter $base = pixel based number (without unit)

## Dependencies
---

## Example
---

```html_example
line-height: nn-px-to-unitless(5) // Output: 0.3125
```

## Source
---

*/
/* doc
---
title: Strip unit
name: nn-strip-unit
category: functions
---

Strips of the unit of a number

## Parameters
---
@parameter $num = number with unit (5px, 5em, 5rem)

## Example
---

```html_example
nn-strip-unit(5px) //Output: 5
nn-strip-unit(10em) // Output: 10
nn-strip-unit(15rem) // Output: 15
```

*/
/* doc
---
title: z-index
name: nn-z-index
category: functions
---

Because z-indices can get tricky we manage them in the theme.scss globally.

Always use this mixin to set set a z-index.

Read the Best Practice to get an full documentation:
https://projects.netcentric.biz/wiki/display/FRONTEND/How+to+set+a+z-index

## Live Template abbreviations
---
-z

## Parameters
---
@parameter $element = Name of the element (normally this will be the module name for the main stack)
@parameter $list = Name of the list (default $z-indices). Must be only set for stack context
@parameter $min = Set a minimum z-index which will be added to the list.

## Dependencies
---
$z-indices variable in the theme.scss

## Example
---

```html_example

// In the SASS theme file

$z-indices: slider, modal, dialog, navigation;

// In the SASS module file

.modal {
    &__base {
        position: absolute;
        z-index: nn-z-index(modal);
    }
}
```

## Source
---
http://www.smashingmagazine.com/2014/06/12/sassy-z-index-management-for-complex-layouts/

*/
/* doc
---
title: remove every unit
name: strip-unit
category: functions
---
remove all units

## Parameters
---
@parameter $number = number with unit

## Example
---
```html_example
strip-unit(5px) // Output: 5
```
*/
/*
    This mixin converts any unitless number (for example 40) to the correct unit, according to the given axis.

    Parameters:
    - $value: unitless number to be converted. A unit in $value will correspond to a px in the browser,
        no matter if it's output as px or rem

    Returns
    - Horizontal: will convert the number to pixels (40px)
    - Vertical: will convert the number to rem (if rem === 16px, then 40 will be converted to 2.5 rem)
*/
/*
    Converts a unitless number to the corresponding unit on the horizontal axis.
    By default will convert the value to px.
*/
/*
    Converts a unitless number to the corresponding unit on the vertical axis.
    By default will convert the value to rem.
*/
/* stylelint-disable */
/* doc
---
title: Swap left right values
name: swap-left-right-values
category: functions
---

Swap the values for right and left when $rtl is set to true:

In:  0 5px 8px 12px
Out: 0 12px 8px 5px (in rtl)

## Parameters
---
@parameter $values = 4 numbers (works with all units)

## Example
---

```html_example
swap-left-right-values(0 1px 8px 12px) // 0 12px 8px 1px
swap-left-right-values(0 1em 8em 12em) // 0 12em 8em 1em
wap-left-right-values(0 1rem 8rem 12rem) // 0 12rem 8rem 1rem
```

## Source
---
http://stackoverflow.com/questions/14199323/right-to-left-rtl-support-in-sass-project

*/
/* stylelint-disable */
/* doc
---
title: Swap left right names
name: swap-left-right-names
category: functions
---

Swap the names right and left when $rtl is set to true.
If the value is not right or left it returns the original value.

In:  right
Out: left (in rtl), right (in ltr)

## Live Template abbreviations
---

## Parameters
---
@parameter $origin = right | left

## Example
---

```html_example
swap-left-right-name(left)
swap-left-right-name(right)
```

## Source
---
http://stackoverflow.com/questions/14199323/right-to-left-rtl-support-in-sass-project

*/
/*  List of CSS properties that will always be output at least as 2 different values
    in order to be able to convert each one to the correct axis unit */
/*
    Mixin for automatically handling spacings around/between elements.

    This mixin will automatically invert the lef/right directions in RTL languages.
    Also, the unitless values will be converted to the proper unit according to the axis

    Parameters:
    - $property-name: name of the CSS property that should be output. Supported properties are:
        margin, margin-top, margin-right, margin-bottom, margin-left
        padding, padding-top, padding-right, padding-bottom, padding-left
        width, height, min-width, max-width, min-height, min-height
    - $value: value that will be output as part of the given property. Supported values are:
        Unitless number (40): this should be used most of the times. It will automatically be converted
            to the correct unit depending on the axis where it's used (horizontal axis => px, vertical axis => rem).
            Each unit in $value will correspond to a px in the browser, no matter to which unit it will be converted.
        Number with unit (40px, 40%...): the number and the unit will be preserved and only the left/right inversion
            will be done for RTL languages
        List of values (40 30% 20 10): margin and padding shorthands whith multiple values are supported.
            The left/right values will be automatically swapped in RTL and the unitless numbers will be converted
            to the corresponding unit. Unitless and numbers with units can be mixed in the same call.
        Using calc() in any of the previous examples is supported, although no unit conversion will be done

 ## Example
---

```html_example
@include spacing(padding, 0 10px 20 0); => padding: 0 10px 2rem 0;
@include spacing(padding, 0 10 20 0); => padding: 0 10px 2rem 0;
@include spacing(padding-left, 10);
@include spacing(padding-right, 10);
@include spacing(margin, 0 10 20 0);
@include spacing(margin-left, 10);
@include spacing(margin-right, 10);
@include spacing(width, 100);
@include spacing(min-width, 100);
@include spacing(max-width, 100);
@include spacing(height, 100);
@include spacing(min-height, 100);
@include spacing(max-height, 100);
```
*/
/* doc
---
title: Clearfix
name: clearfix
category: mixins
---

Clears after floating element

Use this mixin only inside media queries where you can't use the
abstract/extends/utils/_clearfix version, which adds less code to css

## Live Template abbreviations
---

## Example
---

```html_example
@include clearfix;
```

## Source
---
https://css-tricks.com/snippets/css/clear-fix/
*/
/* stylelint-disable string-no-newline */
/* doc
---
title: focus color
name: focus color
category: mixins
---

Add a focus color when keyboard-focus is activated
## Parameters
---
@param $number

*/
/* doc
---
title: ignore-container
name: ignore-container
category: mixins
---

Set full page width for something inside a container

## Parameters
---
@param $container-size
@param $gutter

*/
/* Generates all the rules for the grid columns up to the given amount of column */
/* Generates all the rules for the grid column offset up to the given amount of column */
/* Generates all the rules for the grid and columns for the given break point and total of columns */
/* API function to be called to generate a grid config */
/* doc
---
type: button type
state: state button
---

Button styles

Use this mixin for button styles: color text, background, border

## Example
---

```html_example
@include button(primary);
```
*/
/* doc
---
lineLimit: This value specifies the number of lines after which the content will be clamped. It must be greater than 0.
---

Truncates text at a specific number of lines.

Use this mixin to hide long text.

## Example
---

```html_example
@include line-clamp($lineLimit: 4);
```
*/
/* typography
---
title: typography
name: Typography
category: mixins
---

Adds font CSS properties by a map provided

## Parameters
---
@param $t-style
@param $is-important: false

* $t-style is expected to be a map with 'default' and 'breakpoint[s]' submaps with a property
for every css property to be set.
* $is-important parameter allows to force typography properties to be set as !important
Try to avoid its use, but it might be needed for situations where styles for a component
are very specific and to overwrite the generic ones is too complex (if they have a lot of specificity)

*/
/* doc
---
title: hidden
name: hidden
category: mixins
---

Hide from both screenreaders and browsers: h5bp.com/u
## Parameters
---

*/
/* doc
---
title: overlay
name: overlay
category: mixins
---

Creates an overlay with the provided background color
## Parameters
---
@param $bgColor

*/
/**
 * @mixin top-bottom-border
 * @desc Creates a dynamic and customizable border at the specified position on an element.
 *
 * @param {string} $position - Optional, Default: 'bottom'. Defines the position of the border. Accepts values 'top' or 'bottom'.
 * @param {color} $color - Optional, Default: '$c-black'. Specifies the color of the border. Accepts any valid CSS color value.
 * @param {length} $width - Optional, Default: '2px'. Sets the width of the border. Accepts any valid CSS length value.
 * @param {length} $margin - Optional, Default: '0'. Adds margin to the border. Accepts any valid CSS length value.
 *
 * @example
 *   .example-element {
 *       @include top-bottom-border($position: top, $color: $c-grey-two, $width: 3px, $margin: 10px);
 *   }
 */
/* doc
---
title: reset-fullwidth-margins
name: reset-fullwidth-margins
category: mixins
---

Reset margins for full width components inside a Container or a Column Control
*/
/* doc
---
title: visually hidden
name: visually hidden
category: mixins
---

Hidden from browsers but accessible to screen readers
## Parameters
---

*/
.dropdown {
  font-family: var(--ff-regular);
  font-size: 16px;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: var(--ls-default);
  position: relative;
}
.dropdown-toggle {
  /* If value has more than one element, any even index will match a horizontal axis
      * 2 values: (1)top+down (2)left+right
      * 3 values: (1)top (2)left+right (3)bottom
      * 4 values: (1)top (2)right (3)bottom (4)left
      */
  padding-block: 0.75rem;
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  padding-inline: 16px;
  font-size: 16px;
  border: 1px solid #a7a8a9;
  border-radius: 4px;
  background: #fff;
  cursor: pointer;
}
.dropdown-toggle .dropdown-arrow {
  display: flex;
  justify-content: center;
  align-items: center;
}
.dropdown-toggle .dropdown-arrow:before {
  background-color: #53565a;
  content: "";
  display: inline-block;
  -webkit-mask-image: url("../../../../content/dam/volvo-media/list-icons/chevron-down.svg#chevron-down-icon-w24-view");
          mask-image: url("../../../../content/dam/volvo-media/list-icons/chevron-down.svg#chevron-down-icon-w24-view");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-size: cover;
          mask-size: cover;
  pointer-events: none;
  width: 24px;
  height: 24px;
}
@media (min-width: 1200px) {
  .dropdown-toggle .dropdown-arrow:before {
    -webkit-mask-image: url("../../../../content/dam/volvo-media/list-icons/chevron-down.svg#chevron-down-icon-w16-view");
            mask-image: url("../../../../content/dam/volvo-media/list-icons/chevron-down.svg#chevron-down-icon-w16-view");
  }
}
.dropdown-toggle .dropdown-arrow.open {
  transform: rotate(180deg);
}
.dropdown-menu {
  /* If value has more than one element, any even index will match a horizontal axis
      * 2 values: (1)top+down (2)left+right
      * 3 values: (1)top (2)left+right (3)bottom
      * 4 values: (1)top (2)right (3)bottom (4)left
      */
  padding-block: 0.3125rem;
  position: absolute;
  z-index: 10;
  width: 100%;
  max-height: 200px;
  padding-inline: 15px;
  overflow-y: auto;
  border: 1px solid #a7a8a9;
  border-top: none;
  background: #fff;
  border-radius: 0 0 4px 4px;
  box-shadow: 0 2px 2px 0 rgba(72, 69, 69, 0.25);
}
.dropdown-menu-item {
  /* If value has more than one element, any even index will match a horizontal axis
      * 2 values: (1)top+down (2)left+right
      * 3 values: (1)top (2)left+right (3)bottom
      * 4 values: (1)top (2)right (3)bottom (4)left
      */
  /* If value has more than one element, any even index will match a horizontal axis
      * 2 values: (1)top+down (2)left+right
      * 3 values: (1)top (2)left+right (3)bottom
      * 4 values: (1)top (2)right (3)bottom (4)left
      */
  padding: 0.625rem 10px;
  font-size: 16px;
  cursor: pointer;
}
.dropdown-menu-item:hover, .dropdown-menu-item:focus {
  background: #f7f7f7;
}
.dropdown-menu-item[aria-selected=true] {
  background: #f7f7f7;
}

/*
Also please follow this
Do your project have diferent charset languages to account with?
      - Yes -> follow https://projects.netcentric.biz/wiki/display/FRONTEND/CSS+-+Font+Normalization
      - No -> You can still use it, there are tons of advantages, but its create some extra css and layout rendering
*/
/*
  * Design spec:
  * https://www.figma.com/file/SR4rvQlNnCmPMrQ9WYaIqv/branch/TJqkFymq09wf8KwmY1WNcj/Volvo-AEM-Design-system?type=design&node-id=7-26&t=pAm916VRiqCOD2I1-0
*/
/**
 * z-indexes from lower to -> higher
 */
/* doc
---
title: Pixel to em
name: nn-px-to-em
category: functions
---

Calculate the em with a given pixel with the given base font size
If you don't set a $base the $base-font-size is used as the context

## Live Template abbreviations
---
-ptu

## Parameters
---
@parameter $value = pixel based number (without unit)
@parameter $base = pixel based number (without unit)

## Dependencies
---
nn-strip-unit

## Example
---
```html_example
nn-px-to-em(5) // Output: 0.3125em
nn-px-to-em(5, 10) // Output: 0.5em
nn-px-to-em(5, 20) // Output: 0.25em
```
*/
/* doc
---
title: Pixel to rem
name: nn-px-to-rem
category: functions
---

Calculate the rem with a given pixel with the given base font size

In:  5px
Out: 0.3125rem

## Live Template abbreviations
---
-rem

## Parameters
---
@parameter $value = pixel based number (without unit)

## Dependencies
---
nn-strip-unit

## Example
---
```html_example
nn-px-to-rem(5) // Output 0.3125rem
```

*/
/* doc
---
title: Pixel to unit
name: px-to-unit
category: mixins
---

Set a property and value (pixel based without unit)

Calculates rem / em / % from given pixel and base (default base is the
base-font-size, 16px)
If rtl is true, this mixin handles all the direction stuff:
- Switching the values, when we have exactly 4 values
- Switching left and right in properties (padding and margin)

## Live Template abbreviations
---
-ptu (for em or % to pixel - with base parameter)
-rem (for rem to pixel - without base parameter)

## Parameters
---
@parameter $property = padding | margin | font-size | width | height
@parameter $value = Pixel based number - add px to keep the px for a value
@parameter $base = px based number, Default: 16px
@parameter $unit = Set unit: px | em | rem | percent

## Dependencies
---
abstract/functions/swap-left-right
abstract/functions/strip-unit

## Example
---

```html_example
@include nn-px-to-unit(padding, 0 10px 20 0); => padding: 0 10px 1.25rem 0;
@include nn-px-to-unit(padding, 0 10 20 0); => padding: 0 0.625rem 1.25rem 0;
@include nn-px-to-unit(padding-left, 10);
@include nn-px-to-unit(padding-right, 10);
@include nn-px-to-unit(margin, 0 10 20 0);
@include nn-px-to-unit(margin-left, 10);
@include nn-px-to-unit(margin-right, 10);
@include nn-px-to-unit(font-size, 20);
@include nn-px-to-unit(width, 100);
@include nn-px-to-unit(min-width, 100);
@include nn-px-to-unit(mann-width, 100);
@include nn-px-to-unit(height, 100);
@include nn-px-to-unit(min-height, 100);
@include nn-px-to-unit(mann-height, 100);
```

## Source
---
http://css-tricks.com/snippets/css/less-mixin-for-rem-font-sizing/

*/
/* doc
---
title: Pixel to unitless
name: nn-px-to-unitless
category: functions
---

This makes the same calculation as px to em. But it don't print out the unit.

Use this for line-heights.

## Live Template abbreviations
---

## Parameters
---
@parameter $value = pixel based number (without unit)
@parameter $base = pixel based number (without unit)

## Dependencies
---

## Example
---

```html_example
line-height: nn-px-to-unitless(5) // Output: 0.3125
```

## Source
---

*/
/* doc
---
title: Strip unit
name: nn-strip-unit
category: functions
---

Strips of the unit of a number

## Parameters
---
@parameter $num = number with unit (5px, 5em, 5rem)

## Example
---

```html_example
nn-strip-unit(5px) //Output: 5
nn-strip-unit(10em) // Output: 10
nn-strip-unit(15rem) // Output: 15
```

*/
/* doc
---
title: z-index
name: nn-z-index
category: functions
---

Because z-indices can get tricky we manage them in the theme.scss globally.

Always use this mixin to set set a z-index.

Read the Best Practice to get an full documentation:
https://projects.netcentric.biz/wiki/display/FRONTEND/How+to+set+a+z-index

## Live Template abbreviations
---
-z

## Parameters
---
@parameter $element = Name of the element (normally this will be the module name for the main stack)
@parameter $list = Name of the list (default $z-indices). Must be only set for stack context
@parameter $min = Set a minimum z-index which will be added to the list.

## Dependencies
---
$z-indices variable in the theme.scss

## Example
---

```html_example

// In the SASS theme file

$z-indices: slider, modal, dialog, navigation;

// In the SASS module file

.modal {
    &__base {
        position: absolute;
        z-index: nn-z-index(modal);
    }
}
```

## Source
---
http://www.smashingmagazine.com/2014/06/12/sassy-z-index-management-for-complex-layouts/

*/
/* doc
---
title: remove every unit
name: strip-unit
category: functions
---
remove all units

## Parameters
---
@parameter $number = number with unit

## Example
---
```html_example
strip-unit(5px) // Output: 5
```
*/
/*
    This mixin converts any unitless number (for example 40) to the correct unit, according to the given axis.

    Parameters:
    - $value: unitless number to be converted. A unit in $value will correspond to a px in the browser,
        no matter if it's output as px or rem

    Returns
    - Horizontal: will convert the number to pixels (40px)
    - Vertical: will convert the number to rem (if rem === 16px, then 40 will be converted to 2.5 rem)
*/
/*
    Converts a unitless number to the corresponding unit on the horizontal axis.
    By default will convert the value to px.
*/
/*
    Converts a unitless number to the corresponding unit on the vertical axis.
    By default will convert the value to rem.
*/
/* stylelint-disable */
/* doc
---
title: Swap left right values
name: swap-left-right-values
category: functions
---

Swap the values for right and left when $rtl is set to true:

In:  0 5px 8px 12px
Out: 0 12px 8px 5px (in rtl)

## Parameters
---
@parameter $values = 4 numbers (works with all units)

## Example
---

```html_example
swap-left-right-values(0 1px 8px 12px) // 0 12px 8px 1px
swap-left-right-values(0 1em 8em 12em) // 0 12em 8em 1em
wap-left-right-values(0 1rem 8rem 12rem) // 0 12rem 8rem 1rem
```

## Source
---
http://stackoverflow.com/questions/14199323/right-to-left-rtl-support-in-sass-project

*/
/* stylelint-disable */
/* doc
---
title: Swap left right names
name: swap-left-right-names
category: functions
---

Swap the names right and left when $rtl is set to true.
If the value is not right or left it returns the original value.

In:  right
Out: left (in rtl), right (in ltr)

## Live Template abbreviations
---

## Parameters
---
@parameter $origin = right | left

## Example
---

```html_example
swap-left-right-name(left)
swap-left-right-name(right)
```

## Source
---
http://stackoverflow.com/questions/14199323/right-to-left-rtl-support-in-sass-project

*/
/*  List of CSS properties that will always be output at least as 2 different values
    in order to be able to convert each one to the correct axis unit */
/*
    Mixin for automatically handling spacings around/between elements.

    This mixin will automatically invert the lef/right directions in RTL languages.
    Also, the unitless values will be converted to the proper unit according to the axis

    Parameters:
    - $property-name: name of the CSS property that should be output. Supported properties are:
        margin, margin-top, margin-right, margin-bottom, margin-left
        padding, padding-top, padding-right, padding-bottom, padding-left
        width, height, min-width, max-width, min-height, min-height
    - $value: value that will be output as part of the given property. Supported values are:
        Unitless number (40): this should be used most of the times. It will automatically be converted
            to the correct unit depending on the axis where it's used (horizontal axis => px, vertical axis => rem).
            Each unit in $value will correspond to a px in the browser, no matter to which unit it will be converted.
        Number with unit (40px, 40%...): the number and the unit will be preserved and only the left/right inversion
            will be done for RTL languages
        List of values (40 30% 20 10): margin and padding shorthands whith multiple values are supported.
            The left/right values will be automatically swapped in RTL and the unitless numbers will be converted
            to the corresponding unit. Unitless and numbers with units can be mixed in the same call.
        Using calc() in any of the previous examples is supported, although no unit conversion will be done

 ## Example
---

```html_example
@include spacing(padding, 0 10px 20 0); => padding: 0 10px 2rem 0;
@include spacing(padding, 0 10 20 0); => padding: 0 10px 2rem 0;
@include spacing(padding-left, 10);
@include spacing(padding-right, 10);
@include spacing(margin, 0 10 20 0);
@include spacing(margin-left, 10);
@include spacing(margin-right, 10);
@include spacing(width, 100);
@include spacing(min-width, 100);
@include spacing(max-width, 100);
@include spacing(height, 100);
@include spacing(min-height, 100);
@include spacing(max-height, 100);
```
*/
/* doc
---
title: Clearfix
name: clearfix
category: mixins
---

Clears after floating element

Use this mixin only inside media queries where you can't use the
abstract/extends/utils/_clearfix version, which adds less code to css

## Live Template abbreviations
---

## Example
---

```html_example
@include clearfix;
```

## Source
---
https://css-tricks.com/snippets/css/clear-fix/
*/
/* stylelint-disable string-no-newline */
/* doc
---
title: focus color
name: focus color
category: mixins
---

Add a focus color when keyboard-focus is activated
## Parameters
---
@param $number

*/
/* doc
---
title: ignore-container
name: ignore-container
category: mixins
---

Set full page width for something inside a container

## Parameters
---
@param $container-size
@param $gutter

*/
/* Generates all the rules for the grid columns up to the given amount of column */
/* Generates all the rules for the grid column offset up to the given amount of column */
/* Generates all the rules for the grid and columns for the given break point and total of columns */
/* API function to be called to generate a grid config */
/* doc
---
type: button type
state: state button
---

Button styles

Use this mixin for button styles: color text, background, border

## Example
---

```html_example
@include button(primary);
```
*/
/* doc
---
lineLimit: This value specifies the number of lines after which the content will be clamped. It must be greater than 0.
---

Truncates text at a specific number of lines.

Use this mixin to hide long text.

## Example
---

```html_example
@include line-clamp($lineLimit: 4);
```
*/
/* typography
---
title: typography
name: Typography
category: mixins
---

Adds font CSS properties by a map provided

## Parameters
---
@param $t-style
@param $is-important: false

* $t-style is expected to be a map with 'default' and 'breakpoint[s]' submaps with a property
for every css property to be set.
* $is-important parameter allows to force typography properties to be set as !important
Try to avoid its use, but it might be needed for situations where styles for a component
are very specific and to overwrite the generic ones is too complex (if they have a lot of specificity)

*/
/* doc
---
title: hidden
name: hidden
category: mixins
---

Hide from both screenreaders and browsers: h5bp.com/u
## Parameters
---

*/
/* doc
---
title: overlay
name: overlay
category: mixins
---

Creates an overlay with the provided background color
## Parameters
---
@param $bgColor

*/
/**
 * @mixin top-bottom-border
 * @desc Creates a dynamic and customizable border at the specified position on an element.
 *
 * @param {string} $position - Optional, Default: 'bottom'. Defines the position of the border. Accepts values 'top' or 'bottom'.
 * @param {color} $color - Optional, Default: '$c-black'. Specifies the color of the border. Accepts any valid CSS color value.
 * @param {length} $width - Optional, Default: '2px'. Sets the width of the border. Accepts any valid CSS length value.
 * @param {length} $margin - Optional, Default: '0'. Adds margin to the border. Accepts any valid CSS length value.
 *
 * @example
 *   .example-element {
 *       @include top-bottom-border($position: top, $color: $c-grey-two, $width: 3px, $margin: 10px);
 *   }
 */
/* doc
---
title: reset-fullwidth-margins
name: reset-fullwidth-margins
category: mixins
---

Reset margins for full width components inside a Container or a Column Control
*/
/* doc
---
title: visually hidden
name: visually hidden
category: mixins
---

Hidden from browsers but accessible to screen readers
## Parameters
---

*/
.radio-button {
  --radio-color-checked: #004fbc;
  --radio-size: 24px;
  --radio-border-color: #a7a8a9;
  --radio-checked-size: 14px;
  --radio-label-font-family: var(--ff-regular);
  --radio-margin-right: 10px;
  display: flex;
  align-items: center;
}
.radio-button__input {
  -webkit-appearance: none;
          appearance: none;
  flex-shrink: 0;
  background-color: #fff;
  border: 1px solid var(--radio-border-color);
  border-radius: 50%;
  aspect-ratio: 1;
  width: var(--radio-size);
  position: relative;
  margin-right: var(--radio-margin-right);
  cursor: pointer;
}
.radio-button__input:checked {
  border-color: var(--radio-color-checked);
}
.radio-button__input:checked::after {
  position: absolute;
  display: block;
  content: "";
  aspect-ratio: 1;
  width: calc(var(--radio-size) / 2);
  background-color: var(--radio-color-checked);
  border-radius: 50%;
  top: calc((var(--radio-size) - var(--radio-checked-size)) / 2);
  left: calc((var(--radio-size) - var(--radio-checked-size)) / 2);
}
.radio-button__label {
  display: flex;
  align-items: center;
  cursor: pointer;
  font-family: var(--radio-label-font-family);
}

.header {
  position: sticky;
  inset-block-start: 0;
  background-color: #fff;
  z-index: 4;
}
.header__container {
  background-color: #fff;
}
.header__main {
  display: flex;
  padding-block: 0;
  padding-inline: 15px;
  flex-wrap: wrap;
}
@media (min-width: 960px) {
  .header__main {
    display: grid;
    grid-template-columns: 0.5fr 1fr;
    grid-template-rows: auto 1fr;
  }
}
.header__brand {
  display: flex;
  flex-basis: 70%;
  padding-block: 20px;
  padding-inline: 0;
  flex-direction: column;
}
@media (min-width: 960px) {
  .header__brand {
    grid-row: 1/span 2;
    padding-block: 54px 36px;
    max-height: 127px;
  }
}
.header__brand .img__container a {
  display: block;
  line-height: 19px;
}
.header__simple .header__brand .img__container a {
  line-height: inherit;
}
.header__brand .img__asset {
  width: 98px;
  height: auto;
}
.header__simple .header__brand .img__asset {
  vertical-align: super;
  transform: translateY(0.15em);
}
.header__brand-name {
  color: #888b8d;
}
.header__brand__container {
  display: flex;
  align-items: baseline;
}
.header__simple {
  display: grid;
  grid-template-columns: auto auto 1fr;
  grid-template-rows: 1fr;
  align-items: center;
  padding-block: 28.5px;
  padding-inline: 17px;
  column-gap: 24px;
}
@media (min-width: 960px) {
  .header__simple {
    padding-block: 28.5px;
  }
}
.header__simple .header__brand {
  padding: 0;
}
.header__simple .header__link {
  justify-self: flex-end;
  color: #004fbc;
  display: flex;
  align-items: center;
}
@media (max-width: 767px) {
  .header__simple .header__link {
    display: none;
  }
}
.header__simple .header__link .v-icon {
  margin-inline-start: 5px;
}
.header__simple .header__title {
  align-self: flex-start;
  /* height set to 0 in order the padding of the header is set based on the brand, not the title */
  height: 0;
}
.header__simple .header__company,
.header__simple .header__market {
  /* margin-left reset in header__simple since the column gap gives the spacing */
  margin-inline-start: 0;
  font-size: 14px;
  line-height: 17px;
  padding-block-start: 0;
}
.header__dealers {
  display: flex;
  justify-content: flex-end;
  padding-block: 15px;
}
.header__dealers .img__container {
  margin-inline-end: 22px;
}
@media (min-width: 960px) {
  .header__dealers {
    grid-row: 1/span 2;
    padding-block: 40px;
  }
}
.header__dealers .img__asset {
  max-width: 40px;
}
@media (min-width: 768px) {
  .header__dealers .img__asset {
    max-width: 70px;
  }
}
.header__company, .header__market {
  font-family: var(--ff-regular);
  font-size: 12px;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: var(--ls-default);
  line-height: 14px;
  margin-inline-start: 24px;
}
@media (min-width: 768px) {
  .header__company, .header__market {
    font-family: var(--ff-regular);
    font-size: 16px;
    font-weight: 400;
    line-height: 1.5;
    letter-spacing: var(--ls-default);
    line-height: 18px;
  }
}
@media (min-width: 960px) {
  .header__company, .header__market {
    font-size: 14px;
    line-height: 16px;
  }
}
.header__company {
  align-self: flex-end;
  padding-block-end: 0;
}
.header__market {
  padding: 0;
  color: #888b8d;
}
.header__meta {
  flex-basis: 30%;
}
@media (min-width: 960px) {
  .header__meta {
    align-self: center;
    grid-column: 2;
  }
}
.header__search {
  flex-basis: 100%;
  margin-block: 21px 27px;
}
@media (min-width: 960px) {
  .header__search {
    grid-row: 2;
    grid-column: 2;
    justify-self: flex-end;
  }
}
.header__search--menu {
  display: flex;
}
.header__search--menu:before {
  background-color: #888b8d;
  content: "";
  display: inline-block;
  -webkit-mask-image: url("../../../../content/dam/volvo-media/list-icons/menu-hamburger.svg#menu-hamburger-icon-w24-view");
          mask-image: url("../../../../content/dam/volvo-media/list-icons/menu-hamburger.svg#menu-hamburger-icon-w24-view");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-size: cover;
          mask-size: cover;
  pointer-events: none;
  width: var(--v-icon-size);
  height: var(--v-icon-size);
}
@media (min-width: 1200px) {
  .header__search--menu:before {
    -webkit-mask-image: url("../../../../content/dam/volvo-media/list-icons/menu-hamburger.svg#menu-hamburger-icon-w16-view");
            mask-image: url("../../../../content/dam/volvo-media/list-icons/menu-hamburger.svg#menu-hamburger-icon-w16-view");
  }
}
@media (min-width: 960px) {
  .header__search .cmp-search {
    width: 289px;
  }
}
.header__search .cmp-search__icon:after {
  background-color: #a7a8a9;
  content: "";
  display: inline-block;
  -webkit-mask-image: url("../../../../content/dam/volvo-media/list-icons/search.svg#search-icon-w24-view");
          mask-image: url("../../../../content/dam/volvo-media/list-icons/search.svg#search-icon-w24-view");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-size: cover;
          mask-size: cover;
  pointer-events: none;
  width: var(--v-icon-size);
  height: var(--v-icon-size);
}
@media (min-width: 1200px) {
  .header__search .cmp-search__icon:after {
    -webkit-mask-image: url("../../../../content/dam/volvo-media/list-icons/search.svg#search-icon-w16-view");
            mask-image: url("../../../../content/dam/volvo-media/list-icons/search.svg#search-icon-w16-view");
  }
}
.header__search .cmp-search__icon::after {
  color: #888b8d;
}
.header__search .cmp-search__input {
  color: #888b8d;
}
.header__searchIcon {
  position: relative;
  display: flex;
}
.header__searchIcon--checkbox {
  width: 21px;
  height: 22px;
  border: none;
  -webkit-appearance: none;
          appearance: none;
  outline: none;
  opacity: 0;
  pointer-events: none;
}
@media (min-width: 960px) {
  .header__searchIcon--checkbox:checked + .header__searchIcon--icon {
    display: none;
  }
}
.header__searchIcon--icon {
  position: absolute;
  inset-block-start: -2px;
  inset-inline-end: 0;
  font-size: 0;
  cursor: pointer;
}
.header__searchIcon--icon:before {
  background-color: #a7a8a9;
  content: "";
  display: inline-block;
  -webkit-mask-image: url("../../../../content/dam/volvo-media/list-icons/search.svg#search-icon-w24-view");
          mask-image: url("../../../../content/dam/volvo-media/list-icons/search.svg#search-icon-w24-view");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-size: cover;
          mask-size: cover;
  pointer-events: none;
  width: var(--v-icon-size);
  height: var(--v-icon-size);
}
@media (min-width: 1200px) {
  .header__searchIcon--icon:before {
    -webkit-mask-image: url("../../../../content/dam/volvo-media/list-icons/search.svg#search-icon-w16-view");
            mask-image: url("../../../../content/dam/volvo-media/list-icons/search.svg#search-icon-w16-view");
  }
}
.header__searchIcon--icon::before {
  color: #000;
}
.header--anonymous .header__searchIcon--icon::before {
  background-color: #a7a8a9;
}
@media (min-width: 960px) {
  .header__searchIcon--icon {
    inset-block: auto 0;
  }
}
.header__mainnav {
  background-color: #e1dfdd;
}
.header__menu {
  display: flex;
}
.header__menu:before {
  background-color: #888b8d;
  content: "";
  display: inline-block;
  -webkit-mask-image: url("../../../../content/dam/volvo-media/list-icons/menu-hamburger.svg#menu-hamburger-icon-w24-view");
          mask-image: url("../../../../content/dam/volvo-media/list-icons/menu-hamburger.svg#menu-hamburger-icon-w24-view");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-size: cover;
          mask-size: cover;
  pointer-events: none;
  width: var(--v-icon-size);
  height: var(--v-icon-size);
}
@media (min-width: 1200px) {
  .header__menu:before {
    -webkit-mask-image: url("../../../../content/dam/volvo-media/list-icons/menu-hamburger.svg#menu-hamburger-icon-w16-view");
            mask-image: url("../../../../content/dam/volvo-media/list-icons/menu-hamburger.svg#menu-hamburger-icon-w16-view");
  }
}
@media (min-width: 960px) {
  .header--anonymous .header__menu::before {
    background-color: #a7a8a9;
  }
  .header--anonymous .header__menu {
    pointer-events: none;
  }
}

@media (max-width: 959px) {
  .header__mainnav {
    inset: 0;
    z-index: 4;
    background-color: rgba(0, 0, 0, 0.5);
    opacity: 0;
    position: fixed;
    visibility: hidden;
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    margin: 0;
  }
  .header__mainnav.navigation--open {
    opacity: 1;
    visibility: visible;
  }
  .header__mainnav.navigation--open .cmp-navigation {
    overflow-y: auto;
    position: relative;
    inset-inline-start: 0;
    transition: inset-inline-start 0.3s ease-out;
  }
  body.navigation--open {
    position: fixed;
    width: 100%;
    max-width: 100vw;
  }
}
.main-nav {
  height: calc(100% - 71px);
}
.main-nav__close {
  position: absolute;
  inset-block-start: 7px;
  inset-inline-end: -380px;
  display: inline-block;
  padding: 15px;
  font-size: 30px;
  line-height: 0.8;
  color: #53565a;
  cursor: pointer;
}
.navigation--open .main-nav__close {
  inset-inline-end: 0;
  transition: inset-inline-end 0.3s ease-out;
}
.main-nav__links {
  height: 100%;
  background-color: #fff;
  inset-inline-start: 100vw;
  width: 100vw;
  padding-block: 15px;
}
@media (min-width: 480px) {
  .main-nav__links {
    inset-inline-start: 380px;
    width: 380px;
  }
}
.navigation--open .main-nav__links {
  overflow-y: auto;
  position: relative;
  inset-inline-start: 0;
  transition: left 0.3s ease-out;
}
.main-nav__link {
  padding-block: 12px;
}
.main-nav__linkgroup {
  padding-block: 8px;
}
.main-nav__linkgroup:nth-child(n+2) {
  border-block-start: 1px solid #e1dfdd;
}

.cmp-navigation {
  inset-inline-start: 100vw;
  width: 100vw;
  height: 100%;
  background: #fff;
}
@media (min-width: 480px) {
  .cmp-navigation {
    inset-inline-start: 380px;
    width: 380px;
  }
}
@media (min-width: 960px) {
  .cmp-navigation {
    inset-inline-start: 0;
    width: auto;
    background: #e1dfdd;
  }
}
.cmp-navigation__group {
  position: relative;
  padding-inline-start: 0;
}
@media (min-width: 960px) {
  .cmp-navigation__group {
    display: flex;
    flex-wrap: wrap;
  }
}
.cmp-navigation__item-link {
  position: relative;
  text-decoration: none;
  color: #53565a;
  line-height: 1.1;
}
.cmp-navigation__item-link:hover {
  text-decoration: none;
}
@media (min-width: 960px) {
  .cmp-navigation__item-link {
    font-family: var(--ff-regular);
    font-size: 12px;
    font-weight: 400;
    line-height: 1.5;
    letter-spacing: var(--ls-default);
    line-height: 1.5;
  }
  .cmp-navigation__item-link::after {
    content: none;
  }
  .cmp-navigation__item-link[target=_blank]:after {
    background-color: #53565a;
    content: "";
    display: inline-block;
    -webkit-mask-image: url("../../../../content/dam/volvo-media/list-icons/link-external.svg#link-external-icon-w24-view");
            mask-image: url("../../../../content/dam/volvo-media/list-icons/link-external.svg#link-external-icon-w24-view");
    -webkit-mask-repeat: no-repeat;
            mask-repeat: no-repeat;
    -webkit-mask-size: cover;
            mask-size: cover;
    pointer-events: none;
    width: var(--v-icon-size);
    height: var(--v-icon-size);
  }
}
@media (min-width: 960px) and (min-width: 1200px) {
  .cmp-navigation__item-link[target=_blank]:after {
    -webkit-mask-image: url("../../../../content/dam/volvo-media/list-icons/link-external.svg#link-external-icon-w16-view");
            mask-image: url("../../../../content/dam/volvo-media/list-icons/link-external.svg#link-external-icon-w16-view");
  }
}
@media (max-width: 959px) {
  .cmp-navigation:not(.subnav__list) .cmp-navigation__item:not(.cmp-navigation__group--open):not(.cmp-navigation__item--overview) > .cmp-navigation__item-link:after {
    background-color: #53565a;
    content: "";
    display: inline-block;
    -webkit-mask-image: url("../../../../content/dam/volvo-media/list-icons/chevron-down.svg#chevron-down-icon-w24-view");
            mask-image: url("../../../../content/dam/volvo-media/list-icons/chevron-down.svg#chevron-down-icon-w24-view");
    -webkit-mask-repeat: no-repeat;
            mask-repeat: no-repeat;
    -webkit-mask-size: cover;
            mask-size: cover;
    pointer-events: none;
    width: var(--v-icon-size);
    height: var(--v-icon-size);
  }
}
@media (max-width: 959px) and (min-width: 1200px) {
  .cmp-navigation:not(.subnav__list) .cmp-navigation__item:not(.cmp-navigation__group--open):not(.cmp-navigation__item--overview) > .cmp-navigation__item-link:after {
    -webkit-mask-image: url("../../../../content/dam/volvo-media/list-icons/chevron-down.svg#chevron-down-icon-w16-view");
            mask-image: url("../../../../content/dam/volvo-media/list-icons/chevron-down.svg#chevron-down-icon-w16-view");
  }
}
.cmp-navigation__group--open > .cmp-navigation__item-link:after {
  background-color: #53565a;
  content: "";
  display: inline-block;
  -webkit-mask-image: url("../../../../content/dam/volvo-media/list-icons/chevron-up.svg#chevron-up-icon-w24-view");
          mask-image: url("../../../../content/dam/volvo-media/list-icons/chevron-up.svg#chevron-up-icon-w24-view");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-size: cover;
          mask-size: cover;
  pointer-events: none;
  width: var(--v-icon-size);
  height: var(--v-icon-size);
}
@media (min-width: 1200px) {
  .cmp-navigation__group--open > .cmp-navigation__item-link:after {
    -webkit-mask-image: url("../../../../content/dam/volvo-media/list-icons/chevron-up.svg#chevron-up-icon-w16-view");
            mask-image: url("../../../../content/dam/volvo-media/list-icons/chevron-up.svg#chevron-up-icon-w16-view");
  }
}
.cmp-navigation__item--level-0 {
  border-block-end: 1px solid #e1dfdd;
  position: relative;
  margin-block: 0;
  margin-inline: 15px;
}
.cmp-navigation__item--level-0:first-child {
  border-block-start: 1px solid #e1dfdd;
}
@media (min-width: 960px) {
  .cmp-navigation__item--level-0.cmp-navigation__item--overview .cmp-navigation__item-link::after {
    content: none;
  }
}
@media (max-width: 959px) {
  .cmp-navigation__item--level-0.cmp-navigation__group--open {
    border-block-end: 0;
  }
  .cmp-navigation__item--level-0.cmp-navigation__group--open > .cmp-navigation__group {
    display: block;
  }
}
@media (min-width: 960px) {
  .cmp-navigation__item--level-0 {
    position: static;
    border: 0;
    margin: 0;
  }
  .cmp-navigation__item--level-0:first-child {
    border-block-start: 0;
  }
  .cmp-navigation__item--level-0:hover {
    border-block-end: 0;
  }
  .cmp-navigation__item--level-0:hover > .cmp-navigation__group {
    display: flex;
  }
  .cmp-navigation__item--level-0:hover > .cmp-navigation__item-link {
    background: #fff;
  }
  .cmp-navigation__item--level-0:hover > .cmp-navigation__item-link::before {
    visibility: hidden;
  }
  .cmp-navigation__item--level-0 > .cmp-navigation__group {
    justify-content: space-between;
    align-content: flex-start;
    flex-wrap: wrap;
    overflow: auto;
  }
  .cmp-navigation__item--level-0 > .cmp-navigation__group--column5 {
    justify-content: flex-start;
  }
  .cmp-navigation__item--level-0 > .cmp-navigation__item-link::after {
    content: none;
  }
  .cmp-navigation__item--level-0.cmp-navigation__item--active {
    background-color: #fff;
  }
  .navigation--has-subnav .cmp-navigation__item--level-0.cmp-navigation__item--active > .cmp-navigation__item-link::before {
    content: "";
    position: absolute;
    border-inline-start: 5px solid rgba(0, 0, 0, 0);
    border-inline-end: 5px solid rgba(0, 0, 0, 0);
    border-block-end: 5px solid #53565a;
    inset-block-end: 0;
    inset-inline-start: 50%;
    transform: translateX(-50%);
  }
  html[dir=rtl] .navigation--has-subnav .cmp-navigation__item--level-0.cmp-navigation__item--active > .cmp-navigation__item-link::before {
    transform: translateX(50%);
  }
}
.cmp-navigation__item--level-0 > .cmp-navigation__item-link {
  text-transform: uppercase;
  color: #53565a;
  padding-block: 22px;
  display: block;
}
@media (min-width: 960px) {
  .cmp-navigation__item--level-0 > .cmp-navigation__item-link {
    padding-block: 16px;
    padding-inline: 30px;
    text-align: center;
  }
  .cmp-navigation__item--level-0 > .cmp-navigation__item-link::after {
    content: none;
  }
}
.cmp-navigation__item--level-0 > .cmp-navigation__item-link::after {
  inset-block-start: 50%;
  inset-inline-end: 0;
  position: absolute;
  transform: translateY(calc(var(--v-icon-size) / -2));
}
html[dir=rtl] .cmp-navigation__item--level-0 > .cmp-navigation__item-link::after {
  transform: translateY(calc(var(--v-icon-size) / -2)) scale(-1, 1);
}
@media (min-width: 960px) {
  .cmp-navigation__item--level-0 > .cmp-navigation__item-link:hover {
    background: #fff;
    border-block-end: 0;
  }
}
.cmp-navigation__item--level-0 > .cmp-navigation__group {
  max-width: 1200px;
  background: #fff;
  display: none;
}
@media (min-width: 960px) {
  .cmp-navigation__item--level-0 > .cmp-navigation__group {
    width: 100%;
    display: none;
    position: absolute;
    inset-inline-start: 0;
    padding-block-start: 20px;
    box-shadow: 0 10px 15px 0 rgba(0, 0, 0, 0.2);
    z-index: 4;
  }
}
.cmp-navigation__item--level-1 {
  border-block-end: 1px solid #e1dfdd;
  position: relative;
}
@media (max-width: 959px) {
  .cmp-navigation__item--level-1 {
    margin-block: 0;
    margin-inline: -15px;
    padding-block: 0;
    padding-inline: 30px;
  }
}
@media (min-width: 960px) {
  .cmp-navigation__item--level-1 {
    padding-inline: 20px 10px;
    margin-block-end: 10px;
    border-inline-start: 1px solid #e1dfdd;
    border-block-end: 0;
    flex: 1;
  }
}
@media (min-width: 960px) {
  .cmp-navigation__group--column5 .cmp-navigation__item--level-1 {
    max-width: 20%;
    flex: 1 1 20%;
    justify-content: flex-start;
  }
}
@media (min-width: 960px) {
  .cmp-navigation__item--level-1.cmp-navigation__feature {
    font-family: var(--ff-regular);
    font-size: 16px;
    font-weight: 400;
    line-height: 1.5;
    letter-spacing: var(--ls-default);
    text-align: center;
    background-color: #e1dfdd;
    max-width: 100%;
    flex: 1 1 100%;
    margin-block-end: 0;
    padding: 1em;
  }
}
.cmp-navigation__item--level-1.cmp-navigation__feature .cmp-navigation__item-link {
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden;
}
.cmp-navigation__item--level-1.cmp-navigation__feature .cmp-navigation__item-link::after {
  content: none;
}
@media (min-width: 960px) {
  .cmp-navigation__item--level-1.cmp-navigation__feature .cmp-navigation__item-link {
    color: #004fbc;
    display: inline;
    padding: 0;
    font-size: 1em;
    text-overflow: clip;
    white-space: normal;
    overflow: auto;
  }
}
.cmp-navigation__item--level-1:first-child {
  border-inline-start: none;
}
.cmp-navigation__item--level-1 > .cmp-navigation__group {
  display: none;
  background: transparent;
}
@media (min-width: 960px) {
  .cmp-navigation__item--level-1 > .cmp-navigation__group {
    display: block;
  }
}
@media (max-width: 959px) {
  .cmp-navigation__item--level-1.cmp-navigation__group--open > .cmp-navigation__group {
    display: block;
    border-block-start: 1px solid #e1dfdd;
  }
}
@media (min-width: 960px) {
  .cmp-navigation__item--level-1:hover > .cmp-navigation__group {
    display: block;
    border-block-start: none;
  }
  .cmp-navigation__item--level-1 .cmp-navigation__group {
    padding-block: 6px 20px;
  }
}
.cmp-navigation__item--level-1 .cmp-navigation__item-link {
  display: block;
  padding-inline: 0 15px;
  scroll-padding-block: 4px 39px;
  color: #53565a;
}
@media (max-width: 959px) {
  .cmp-navigation__item--level-1 .cmp-navigation__item-link {
    padding-block: 21px 22px;
    padding-inline: 0 15px;
  }
}
.cmp-navigation__item--level-1 .cmp-navigation__item-link[target=_blank]::after {
  position: static;
}
@media (max-width: 959px) {
  .cmp-navigation__item--level-1 .cmp-navigation__item-link[target=_blank]::after {
    transform: translateY(4px);
  }
}
.cmp-navigation__item--level-1 .cmp-navigation__item-link::after {
  font-size: 12px;
  margin-inline-start: 10px;
  padding: 0;
  position: absolute;
  inset-inline-end: 0;
  inset-block-start: 16px;
}
@media (min-width: 960px) {
  .cmp-navigation__item--level-1 .cmp-navigation__item-link::after {
    font-size: 14px;
    inset-block-start: 50%;
  }
}
@media (min-width: 960px) {
  .cmp-navigation__item--level-1 .cmp-navigation__item-link {
    font-family: var(--ff-regular);
    font-size: 20px;
    font-weight: 400;
    line-height: 1.1;
    letter-spacing: var(--ls-default);
    padding-block: 6px;
  }
}
.cmp-navigation__item--overview .cmp-navigation__item-link:after {
  background-color: #53565a;
  content: "";
  display: inline-block;
  -webkit-mask-image: url("../../../../content/dam/volvo-media/list-icons/chevron-right.svg#chevron-right-icon-w24-view");
          mask-image: url("../../../../content/dam/volvo-media/list-icons/chevron-right.svg#chevron-right-icon-w24-view");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-size: cover;
          mask-size: cover;
  pointer-events: none;
  width: var(--v-icon-size);
  height: var(--v-icon-size);
}
@media (min-width: 1200px) {
  .cmp-navigation__item--overview .cmp-navigation__item-link:after {
    -webkit-mask-image: url("../../../../content/dam/volvo-media/list-icons/chevron-right.svg#chevron-right-icon-w16-view");
            mask-image: url("../../../../content/dam/volvo-media/list-icons/chevron-right.svg#chevron-right-icon-w16-view");
  }
}
.cmp-navigation__item--overview .cmp-navigation__item-link::after {
  inset-block-start: 50%;
  inset-inline-end: 0;
  transform: translateY(calc(var(--v-icon-size) / -2));
}
@media (min-width: 960px) {
  .cmp-navigation__item--overview .cmp-navigation__item-link::after {
    content: none;
  }
}
html[dir=rtl] .cmp-navigation__item--overview .cmp-navigation__item-link::after {
  transform: translateY(calc(var(--v-icon-size) / -2)) scale(-1, 1);
}
.cmp-navigation__item--level-2 {
  border-block-end: 1px solid #e1dfdd;
}
.cmp-navigation__item--level-2:last-child {
  border-block-end: 0;
}
@media (min-width: 960px) {
  .cmp-navigation__item--level-2 {
    border-block-end: 0;
  }
}
@media (max-width: 959px) {
  .cmp-navigation__item--level-2 .cmp-navigation__item-link {
    color: #a7a8a9;
  }
}
@media (min-width: 960px) {
  .cmp-navigation__item--level-2 .cmp-navigation__item-link {
    font-family: var(--ff-regular);
    font-size: 14px;
    font-weight: 400;
    line-height: 1.5;
    letter-spacing: var(--ls-default);
    padding-block: 4px;
  }
}
.cmp-navigation__item--level-2 .cmp-navigation__item-link::after {
  font-size: 10px;
  margin-inline-start: 8px;
}

@media (min-width: 960px) {
  .main-navigation-extended .cmp-navigation__item--level-0 > .cmp-navigation__group {
    flex-direction: column;
  }
  .main-navigation-extended .cmp-navigation__item--level-1 {
    width: 100%;
    max-width: 100%;
    border-inline-start: 0;
    padding-inline: 20px;
    margin-block-end: 20px;
  }
  .main-navigation-extended .cmp-navigation__item--level-1.cmp-navigation__feature {
    margin-block-end: 0;
  }
  .main-navigation-extended .cmp-navigation__item--level-1 > .cmp-navigation__item-link {
    line-height: 1.2;
    border-block-end: 1px solid #e1dfdd;
    padding-block: 10px;
    padding-inline: 0;
  }
  .main-navigation-extended .cmp-navigation__item--level-1 > .cmp-navigation__group {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    padding-block-start: 20px;
  }
  .main-navigation-extended .cmp-navigation__item--level-2 {
    width: calc(20% - 16px);
  }
  .main-navigation-extended .cmp-navigation__item--level-2 > .cmp-navigation__item-link {
    font-size: 1em;
    padding: 0;
  }
  .main-navigation-extended .cmp-navigation__item--level-2 > .cmp-navigation__item-link .cmp-navigation__item-image {
    display: block;
    margin-block-end: 4px;
    aspect-ratio: 270/152;
    overflow: hidden;
  }
  .main-navigation-extended .cmp-navigation__item--level-2 > .cmp-navigation__item-link img {
    object-fit: cover;
    width: 100%;
    height: 100%;
  }
}

.header__metanav .cmp-list {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  height: 100%;
  padding: 0;
}
@media (min-width: 960px) {
  .header__metanav .cmp-list {
    margin-block-start: 20px;
    position: relative;
  }
}
.header__metanav .cmp-list .cmp-list__item {
  padding-inline-start: 25px;
  padding-block: 0;
}
@media (min-width: 960px) {
  .header__metanav .cmp-list .cmp-list__item {
    padding-inline-start: 40px;
  }
}
.header__metanav .cmp-list .cmp-list__item:first-child {
  padding-inline-start: 0;
}
@media (min-width: 768px) {
  .header__metanav .cmp-list .cmp-list__item:first-child {
    padding-inline-start: 40px;
  }
}
.header__metanav .cmp-list .cmp-list__item-link {
  font-size: 0.75rem;
  display: flex;
  align-items: center;
}
.header__metanav .cmp-list .cmp-list__item-link::after, .header__metanav .cmp-list .cmp-list__item-link[target=_blank]::after {
  content: none;
}
@media (min-width: 960px) {
  .header__metanav .cmp-list .cmp-list__item-link {
    line-height: 20px;
    color: #888b8d;
  }
}
.header__metanav .cmp-list__icon {
  width: 16px;
  height: 16px;
  margin-inline-end: 5px;
  inset-block-start: 0;
}
.header__metanav--phone {
  height: 100%;
}
@media (min-width: 960px) {
  .header__metanav--phone {
    display: none;
  }
}

.header__mainnav .header__toplinks {
  position: relative;
  width: 100vw;
  background: #fff;
  inset-inline-start: 100vw;
}
@media (min-width: 480px) {
  .header__mainnav .header__toplinks {
    inset-inline-start: 380px;
    width: 380px;
  }
}
.header__mainnav .header__toplinks .list {
  margin-inline-end: 40px;
}
.header__mainnav .header__toplinks .cmp-list {
  display: flex;
  margin-block: 22px 11px;
  margin-inline: 15px 0;
  align-items: flex-start;
  padding-inline-start: 0;
  justify-content: flex-end;
}
.header__mainnav .header__toplinks .cmp-list__item {
  padding-block-end: 0;
  margin-block: 0;
  margin-inline: 4px;
  color: #888b8d;
}
.header__mainnav .header__toplinks .cmp-list__item:last-of-type {
  margin-inline: 4px 33px;
}
@media (min-width: 960px) {
  .header__mainnav .header__toplinks .cmp-list__item:last-of-type {
    margin-inline-start: 9px;
  }
}
.header__mainnav .header__toplinks .cmp-list__item-link::before {
  content: none;
}
.header__mainnav .header__toplinks .cmp-list__item-link {
  display: flex;
  flex-direction: column;
  font-size: 8px;
  text-align: center;
  color: #888b8d;
  min-width: 47px;
}
.header__mainnav .header__toplinks .cmp-list__item-link[target=_blank]::after, .header__mainnav .header__toplinks .cmp-list__item-link::after {
  content: none;
}
@media (min-width: 960px) {
  .header__mainnav .header__toplinks .cmp-list__item-link {
    display: inline-block;
  }
}
.header__mainnav .header__toplinks .cmp-list__icon {
  margin-block-end: 2px;
  align-self: center;
}
@media (max-width: 959px) {
  .header__mainnav.navigation--open .header__toplinks {
    inset-inline-start: 0;
    transition: inset-inline-start 0.3s ease-out;
  }
}

.subnav {
  background-color: #a7a8a9;
}
@media (min-width: 960px) {
  .subnav {
    background-color: #53565a;
  }
}
.subnav__container {
  position: relative;
  display: flex;
  flex-direction: column;
}
.subnav__title {
  position: relative;
  display: block;
  color: #fff;
  padding-block: 12px;
  padding-inline: 10px;
  text-align: center;
  border-block-end: 1px solid #fff;
  background-color: #53565a;
}
.subnav__title:after {
  background-color: #fff;
  content: "";
  display: inline-block;
  -webkit-mask-image: url("../../../../content/dam/volvo-media/list-icons/chevron-down.svg#chevron-down-icon-w24-view");
          mask-image: url("../../../../content/dam/volvo-media/list-icons/chevron-down.svg#chevron-down-icon-w24-view");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-size: cover;
          mask-size: cover;
  pointer-events: none;
  width: var(--v-icon-size);
  height: var(--v-icon-size);
}
@media (min-width: 1200px) {
  .subnav__title:after {
    -webkit-mask-image: url("../../../../content/dam/volvo-media/list-icons/chevron-down.svg#chevron-down-icon-w16-view");
            mask-image: url("../../../../content/dam/volvo-media/list-icons/chevron-down.svg#chevron-down-icon-w16-view");
  }
}
@media (min-width: 960px) {
  .subnav__title {
    display: none;
  }
}
.subnav__title::after {
  margin-block-start: -1px;
  margin-inline-start: 10px;
  position: relative;
  inset-block-start: 6px;
}
.subnav__list {
  display: none;
}
@media (min-width: 960px) {
  .subnav__list {
    display: block;
  }
}
.subnav--open .subnav__title:after {
  background-color: #fff;
  content: "";
  display: inline-block;
  -webkit-mask-image: url("../../../../content/dam/volvo-media/list-icons/chevron-up.svg#chevron-up-icon-w24-view");
          mask-image: url("../../../../content/dam/volvo-media/list-icons/chevron-up.svg#chevron-up-icon-w24-view");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-size: cover;
          mask-size: cover;
  pointer-events: none;
  width: var(--v-icon-size);
  height: var(--v-icon-size);
}
@media (min-width: 1200px) {
  .subnav--open .subnav__title:after {
    -webkit-mask-image: url("../../../../content/dam/volvo-media/list-icons/chevron-up.svg#chevron-up-icon-w16-view");
            mask-image: url("../../../../content/dam/volvo-media/list-icons/chevron-up.svg#chevron-up-icon-w16-view");
  }
}
.subnav--open .subnav__list {
  display: block;
  max-height: calc(100dvh - var(--header-displayed-height));
  overflow-y: scroll;
  overscroll-behavior: contain;
}
.subnav .cmp-navigation__group {
  padding: 0;
}
.subnav .cmp-navigation__item {
  --secondary-navigation-active-item-link-caret-transform: translateX(-50%);
  border-block-end: 1px solid #fff;
  display: block;
}
html[dir=rtl] .subnav .cmp-navigation__item {
  --secondary-navigation-active-item-link-caret-transform: translateX(50%);
}
@media (min-width: 960px) {
  .subnav .cmp-navigation__item {
    display: inline-block;
    border-block-end: 0;
  }
  .subnav .cmp-navigation__item--active > .cmp-navigation__item-link::before {
    content: "";
    position: absolute;
    border-inline-start: 5px solid rgba(0, 0, 0, 0);
    border-inline-end: 5px solid rgba(0, 0, 0, 0);
    border-block-end: 5px solid #fff;
    inset-block-end: 0;
    inset-inline-start: 50%;
    transform: var(--secondary-navigation-active-item-link-caret-transform);
  }
}
.subnav .cmp-navigation__item-parent {
  background-color: #000;
}
.subnav .cmp-navigation__item-link {
  font-family: var(--ff-regular);
  font-size: 16px;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: var(--ls-default);
  color: #fff;
  display: block;
  padding-block: 10px;
  padding-inline: 10px;
  text-align: center;
}
@media (min-width: 960px) {
  .subnav .cmp-navigation__item-link {
    padding-block: 15px;
    font-size: 12px;
    text-align: start;
  }
}
.subnav .cmp-navigation__item-link:active {
  font-family: var(--ff-medium);
  font-size: 12px;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: var(--ls-default);
  background-color: #000;
}
.subnav .cmp-navigation__item-link[target=_blank]::after {
  display: none;
}
.subnav .cmp-navigation__root-element {
  display: none;
}
@media (min-width: 960px) {
  .articlepage .subnav {
    display: none;
  }
}

.cmp-breadcrumb {
  font-family: var(--ff-regular);
  font-size: 16px;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: var(--ls-default);
  padding-block: 12px;
  padding-inline: 0;
  display: flex;
  opacity: 1;
  transition: opacity 0.4s ease;
}
.cmp-breadcrumb--invisible {
  height: 56px;
  opacity: 0;
}
.cmp-breadcrumb__list {
  padding: 0;
}
.cmp-breadcrumb--oversize .cmp-breadcrumb__item-name {
  max-width: 195px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
[dir=rtl] .cmp-breadcrumb--oversize .cmp-breadcrumb__item-name {
  direction: rtl;
}
.cmp-breadcrumb__item {
  display: inline-flex;
  min-width: 0;
  padding-block: 4px;
}
@media (max-width: 767px) {
  .cmp-breadcrumb__item-name {
    max-width: 195px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
  }
  [dir=rtl] .cmp-breadcrumb__item-name {
    direction: rtl;
  }
}
.cmp-breadcrumb__item-link {
  color: #a7a8a9;
  display: flex;
  align-items: center;
  /* dam icon will be added as ::after */
}
.cmp-breadcrumb__item-link:hover {
  color: #53565a;
}
.cmp-breadcrumb__item-link:after {
  background-color: #53565a;
  content: "";
  display: inline-block;
  -webkit-mask-image: url("../../../../content/dam/volvo-media/list-icons/chevron-right.svg#chevron-right-icon-w24-view");
          mask-image: url("../../../../content/dam/volvo-media/list-icons/chevron-right.svg#chevron-right-icon-w24-view");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-size: cover;
          mask-size: cover;
  pointer-events: none;
  width: var(--v-icon-size);
  height: var(--v-icon-size);
}
@media (min-width: 1200px) {
  .cmp-breadcrumb__item-link:after {
    -webkit-mask-image: url("../../../../content/dam/volvo-media/list-icons/chevron-right.svg#chevron-right-icon-w16-view");
            mask-image: url("../../../../content/dam/volvo-media/list-icons/chevron-right.svg#chevron-right-icon-w16-view");
  }
}
[dir=rtl] .cmp-breadcrumb__item-link:after {
  background-color: #53565a;
  content: "";
  display: inline-block;
  -webkit-mask-image: url("../../../../content/dam/volvo-media/list-icons/chevron-left.svg#chevron-left-icon-w24-view");
          mask-image: url("../../../../content/dam/volvo-media/list-icons/chevron-left.svg#chevron-left-icon-w24-view");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-size: cover;
          mask-size: cover;
  pointer-events: none;
  width: var(--v-icon-size);
  height: var(--v-icon-size);
}
@media (min-width: 1200px) {
  [dir=rtl] .cmp-breadcrumb__item-link:after {
    -webkit-mask-image: url("../../../../content/dam/volvo-media/list-icons/chevron-left.svg#chevron-left-icon-w16-view");
            mask-image: url("../../../../content/dam/volvo-media/list-icons/chevron-left.svg#chevron-left-icon-w16-view");
  }
}
.cmp-breadcrumb__item-link::after {
  margin-block: 0;
  margin-inline: 8px;
}
.cmp-breadcrumb__item--active {
  color: #53565a;
}
.cmp-breadcrumb__item--minimized::before {
  content: "...";
  color: #a7a8a9;
  cursor: pointer;
}
.cmp-breadcrumb__item--minimized:hover::before {
  color: #53565a;
}
.cmp-breadcrumb__item--minimized .cmp-breadcrumb__item-link {
  pointer-events: none;
}
.cmp-breadcrumb__item--minimized .cmp-breadcrumb__item-link .cmp-breadcrumb__item-name {
  display: none;
}
.cmp-breadcrumb__item--minimized ~ .cmp-breadcrumb__item--minimized {
  display: none;
}

.cmp-search {
  position: relative;
}
@media (min-width: 960px) {
  .cmp-search {
    width: 350px;
  }
}
.cmp-search__form {
  display: flex;
}
.cmp-search__field {
  position: relative;
  height: 40px;
  flex: 1 0 auto;
}
.cmp-search__input {
  width: 100%;
  text-indent: 10px;
  height: 100%;
  font-size: 0.75rem;
  line-height: 20px;
  padding-inline-end: 35px;
  color: #a7a8a9;
  background-color: transparent;
  border: 1px solid #e1dfdd;
}
.cmp-search__icon {
  position: absolute;
  inset-inline-end: 15px;
  inset-block-start: 8px;
}
.cmp-search__icon:after {
  background-color: #a7a8a9;
  content: "";
  display: inline-block;
  -webkit-mask-image: url("../../../../content/dam/volvo-media/list-icons/search.svg#search-icon-w24-view");
          mask-image: url("../../../../content/dam/volvo-media/list-icons/search.svg#search-icon-w24-view");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-size: cover;
          mask-size: cover;
  pointer-events: none;
  width: var(--v-icon-size);
  height: var(--v-icon-size);
}
@media (min-width: 1200px) {
  .cmp-search__icon:after {
    -webkit-mask-image: url("../../../../content/dam/volvo-media/list-icons/search.svg#search-icon-w16-view");
            mask-image: url("../../../../content/dam/volvo-media/list-icons/search.svg#search-icon-w16-view");
  }
}
.cmp-search__icon::after {
  width: 24px !important;
  height: 24px !important;
}
.cmp-search__submit .cmp-search__icon {
  position: relative;
  inset-inline-end: auto;
  inset-block-start: 2px;
}
.cmp-search__clear {
  background: none;
  border: none;
  padding: 0;
  position: absolute;
  inset-inline-end: 15px;
  inset-block-start: 8px;
  cursor: pointer;
}
.cmp-search__clear-icon:after {
  background-color: #a7a8a9;
  content: "";
  display: inline-block;
  -webkit-mask-image: url("../../../../content/dam/volvo-media/service-contract-icons/close.svg#close-icon-w24-view");
          mask-image: url("../../../../content/dam/volvo-media/service-contract-icons/close.svg#close-icon-w24-view");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-size: cover;
          mask-size: cover;
  pointer-events: none;
  width: var(--v-icon-size);
  height: var(--v-icon-size);
}
@media (min-width: 1200px) {
  .cmp-search__clear-icon:after {
    -webkit-mask-image: url("../../../../content/dam/volvo-media/service-contract-icons/close.svg#close-icon-w16-view");
            mask-image: url("../../../../content/dam/volvo-media/service-contract-icons/close.svg#close-icon-w16-view");
  }
}
.cmp-search__submit {
  display: none;
}
.header__search--show-submit .cmp-search__submit {
  display: inline-block;
  align-items: center;
  background: #fff;
  border: 1px solid #53565a;
  color: #53565a;
  margin-inline-start: 15px;
  border-width: 2px;
  width: 90px;
}
@media (min-width: 960px) {
  .header__search--show-submit .cmp-search__submit {
    display: none;
  }
}
.cmp-search__results {
  position: absolute;
  inset-inline-end: 0;
  width: 100%;
  text-align: start;
  background: #fff;
  z-index: 4;
}
.cmp-search__item {
  display: block;
  padding-block: 5px;
  padding-inline: 10px 0;
  font-size: 12px;
  border: 1px solid #e1dfdd;
  border-block-end: 0;
  color: #a7a8a9;
  background-color: transparent;
}
.cmp-search__item:hover {
  background: #e1dfdd;
}
.cmp-search__item:last-child {
  border-block-end: 1px solid #e1dfdd;
}

.footer__container {
  background: #e1dfdd;
}
.aem-Grid .footer__container {
  margin-block: 0;
  margin-inline: -15px;
}
@media (min-width: 1200px) {
  .aem-Grid .footer__container {
    width: auto;
    margin-block: 0;
    margin-inline: calc((100vw - 1200px) / -2);
  }
}
.footer__container .cmp-list__item .cmp-list__item-link::after {
  width: 16px !important;
  height: 16px !important;
  inset-block-start: 0;
}
.footer__container .cmp-list__icon {
  inset-block-start: 0;
  vertical-align: middle;
  margin-block-start: -2px;
}
@media (min-width: 960px) {
  .footer__links {
    padding-block: 0 30px;
    padding-inline: 40px;
  }
}
.footer__links .cmp-list {
  padding-block: 0;
  padding-inline: 15px;
}
@media (max-width: 959px) {
  .footer__links .cmp-list {
    background-color: transparent;
  }
}
@media (min-width: 960px) {
  .footer__links .cmp-list {
    padding: 0;
  }
}
.footer__links .cmp-list__title {
  font-family: var(--ff-medium);
  font-size: 16px;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: var(--ls-default);
  margin-block-start: 40px;
}
.footer__links .cmp-list__item {
  font-family: var(--ff-light);
}
.footer__links .cmp-list__item .cmp-list__item-link[target=_blank]:after {
  background-color: #53565a;
  content: "";
  display: inline-block;
  -webkit-mask-image: url("../../../../content/dam/volvo-media/list-icons/link-external.svg#link-external-icon-w24-view");
          mask-image: url("../../../../content/dam/volvo-media/list-icons/link-external.svg#link-external-icon-w24-view");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-size: cover;
          mask-size: cover;
  pointer-events: none;
  width: var(--v-icon-size);
  height: var(--v-icon-size);
}
@media (min-width: 1200px) {
  .footer__links .cmp-list__item .cmp-list__item-link[target=_blank]:after {
    -webkit-mask-image: url("../../../../content/dam/volvo-media/list-icons/link-external.svg#link-external-icon-w16-view");
            mask-image: url("../../../../content/dam/volvo-media/list-icons/link-external.svg#link-external-icon-w16-view");
  }
}
.footer__links .cmp-list__item .cmp-list__item-link:not([target=_blank])::after {
  display: none;
}
.footer__links .cmp-list__item-link {
  font-family: var(--ff-light);
  font-size: 16px;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: var(--ls-default);
  color: #53565a;
  display: flex;
  align-items: center;
  gap: 5px;
}
.footer__links .cmp-list__item-link:hover, .footer__links .cmp-list__item-link:focus {
  color: #202a44;
  text-decoration: underline;
}
@media (max-width: 959px) {
  .footer__links .cmp-list__item-link *, .footer__links .cmp-list__item-link::after {
    width: 16px;
    height: 16px;
    inset-block-start: 0;
  }
}
.footer__links .cmp-list__item-link .v-icon--16 {
  display: inline;
}
.footer__links .cmp-list__item-link .v-icon--24 {
  display: none;
}
.footer__links .list__accordion--close .list__items {
  display: none;
}
.footer__links .aem-Grid {
  margin-inline: 0;
}
.footer__links .aem-GridColumn {
  padding: 0;
}
@media (max-width: 960px) {
  .footer__links .list {
    border-block-end: 1px solid #a7a8a9;
  }
  .footer__links .cmp-list {
    display: none;
  }
  .footer__links .list--open .cmp-list {
    display: block;
  }
  .footer__links .list--open .cmp-list__title:after {
    background-color: #53565a;
    content: "";
    display: inline-block;
    -webkit-mask-image: url("../../../../content/dam/volvo-media/list-icons/chevron-up.svg#chevron-up-icon-w24-view");
            mask-image: url("../../../../content/dam/volvo-media/list-icons/chevron-up.svg#chevron-up-icon-w24-view");
    -webkit-mask-repeat: no-repeat;
            mask-repeat: no-repeat;
    -webkit-mask-size: cover;
            mask-size: cover;
    pointer-events: none;
    width: var(--v-icon-size);
    height: var(--v-icon-size);
  }
}
@media (max-width: 960px) and (min-width: 1200px) {
  .footer__links .list--open .cmp-list__title:after {
    -webkit-mask-image: url("../../../../content/dam/volvo-media/list-icons/chevron-up.svg#chevron-up-icon-w16-view");
            mask-image: url("../../../../content/dam/volvo-media/list-icons/chevron-up.svg#chevron-up-icon-w16-view");
  }
}
@media (max-width: 960px) {
  .footer__links .cmp-list__title {
    cursor: pointer;
    position: relative;
    padding-block: 25px 20px;
    padding-inline: 15px;
    margin: 0;
  }
  .footer__links .cmp-list__title:after {
    background-color: #53565a;
    content: "";
    display: inline-block;
    -webkit-mask-image: url("../../../../content/dam/volvo-media/list-icons/chevron-down.svg#chevron-down-icon-w24-view");
            mask-image: url("../../../../content/dam/volvo-media/list-icons/chevron-down.svg#chevron-down-icon-w24-view");
    -webkit-mask-repeat: no-repeat;
            mask-repeat: no-repeat;
    -webkit-mask-size: cover;
            mask-size: cover;
    pointer-events: none;
    width: var(--v-icon-size);
    height: var(--v-icon-size);
  }
}
@media (max-width: 960px) and (min-width: 1200px) {
  .footer__links .cmp-list__title:after {
    -webkit-mask-image: url("../../../../content/dam/volvo-media/list-icons/chevron-down.svg#chevron-down-icon-w16-view");
            mask-image: url("../../../../content/dam/volvo-media/list-icons/chevron-down.svg#chevron-down-icon-w16-view");
  }
}
@media (max-width: 960px) {
  .footer__links .cmp-list__title::after {
    position: absolute;
    inset-block-start: 35px;
    inset-inline-end: 15px;
    transform: translateY(calc(var(--v-icon-size) / -2));
    content: "" !important;
  }
}
@media (min-width: 960px) {
  .footer__bottom {
    padding-block-end: 70px;
  }
}
.footer__copyright {
  padding-block: 17px;
  padding-inline: 20px;
  display: flex;
  flex-direction: column;
  text-align: center;
}
@media (min-width: 960px) {
  .footer__copyright {
    justify-content: space-between;
    flex-direction: row;
    text-align: inherit;
  }
}
.footer__copyrightText {
  font-family: var(--ff-light);
  font-size: 16px;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: var(--ls-default);
  color: #53565a;
  display: inline-block;
  order: 2;
  margin-block-start: 10px;
  padding-block: 10px;
  padding-inline: 0;
}
@media (min-width: 960px) {
  .footer__copyrightText {
    order: 1;
    width: auto;
    text-align: inherit;
    margin: 0;
    padding: 0;
    align-self: center;
  }
}
.footer__copyrightText::before {
  content: "©";
  color: #53565a;
  margin-inline-end: 5px;
}
.footer__copyright .list {
  order: 1;
  width: 100%;
}
@media (min-width: 960px) {
  .footer__copyright .list {
    order: 2;
    width: auto;
  }
}
.footer__copyright .cmp-list__title {
  display: none;
}
.footer__copyright .cmp-list__item {
  font-family: var(--ff-light);
  font-size: 16px;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: var(--ls-default);
  display: inline-block;
  padding-block-end: 0;
}
.footer__copyright .cmp-list__item::after {
  content: "|";
  margin-block: 0;
  margin-inline: 10px;
  color: #53565a;
}
.footer__copyright .cmp-list__item:last-child::after {
  content: none;
}
.footer__copyright .cmp-list__item .cmp-list__item-link {
  color: #53565a;
}
.footer__copyright .cmp-list__item .cmp-list__item-link:hover, .footer__copyright .cmp-list__item .cmp-list__item-link:focus {
  color: #202a44;
  text-decoration: underline;
}
.footer__copyright .cmp-list__item .cmp-list__item-link::after {
  content: "";
  margin-inline-start: 0;
  display: none;
}

.modal {
  --modal-max-height: calc(100% - 48px);
  --modal-max-width: calc(100% - 30px);
  --modal-width: 100%;
  --modal-message-max-height: 440px;
  --modal-message-max-width: 720px;
  max-height: var(--modal-max-height);
  max-width: var(--modal-max-width);
  width: var(--modal-width);
  flex-direction: column;
  padding: 0;
  border: none;
  border-radius: 8px;
  box-shadow: 0 16px 32px 0 rgba(0, 0, 0, 0.18), 0 1px 4px 0 rgba(0, 0, 0, 0.12);
  color: #53565a;
}
@media (min-width: 960px) {
  .modal {
    --modal-max-width: 800px;
  }
}
.modal[open] {
  display: flex;
}
.modal::backdrop {
  background: rgba(20, 20, 20, 0.4);
  -webkit-backdrop-filter: blur(7.5px);
          backdrop-filter: blur(7.5px);
}
.modal__header {
  /* If value has more than one element, any even index will match a horizontal axis
      * 2 values: (1)top+down (2)left+right
      * 3 values: (1)top (2)left+right (3)bottom
      * 4 values: (1)top (2)right (3)bottom (4)left
      */
  padding-block: 1rem;
  /* If value has more than one element, any even index will match a horizontal axis
      * 2 values: (1)top+down (2)left+right
      * 3 values: (1)top (2)left+right (3)bottom
      * 4 values: (1)top (2)right (3)bottom (4)left
      */
  /* If value has more than one element, any even index will match a horizontal axis
      * 2 values: (1)top+down (2)left+right
      * 3 values: (1)top (2)left+right (3)bottom
      * 4 values: (1)top (2)right (3)bottom (4)left
      */
  padding-inline: 1.5rem 16px;
  display: flex;
  justify-content: space-between;
  border-bottom: 1px solid #e1dfdd;
}
.modal__main {
  /* If value has more than one element, any even index will match a horizontal axis
      * 2 values: (1)top+down (2)left+right
      * 3 values: (1)top (2)left+right (3)bottom
      * 4 values: (1)top (2)right (3)bottom (4)left
      */
  padding-block: 2.5rem;
  /* If value has more than one element, any even index will match a horizontal axis
      * 2 values: (1)top+down (2)left+right
      * 3 values: (1)top (2)left+right (3)bottom
      * 4 values: (1)top (2)right (3)bottom (4)left
      */
  padding-inline: 1.5rem;
  max-height: var(--modal-message-max-height);
  display: flex;
  flex-direction: column;
  overflow-y: auto;
  overscroll-behavior-y: contain;
}
.modal__footer {
  /* If value has more than one element, any even index will match a horizontal axis
      * 2 values: (1)top+down (2)left+right
      * 3 values: (1)top (2)left+right (3)bottom
      * 4 values: (1)top (2)right (3)bottom (4)left
      */
  /* If value has more than one element, any even index will match a horizontal axis
      * 2 values: (1)top+down (2)left+right
      * 3 values: (1)top (2)left+right (3)bottom
      * 4 values: (1)top (2)right (3)bottom (4)left
      */
  padding: 1.5rem 24px;
  /* If value has more than one element, any even index will match a horizontal axis
      * 2 values: (1)top+down (2)left+right
      * 3 values: (1)top (2)left+right (3)bottom
      * 4 values: (1)top (2)right (3)bottom (4)left
      */
  gap: 1rem;
  display: flex;
  justify-content: flex-end;
  border-top: 1px solid #e1dfdd;
}
.modal__title {
  font: 500 1.5rem / 120% "Volvo Novum Regular", "Assistant", "Noto Sans Regular", sans-serif;
}
.modal__text {
  max-width: var(--modal-message-max-width);
  flex: 1 0 0;
}
.modal__button {
  display: inline-block;
  align-items: center;
  text-decoration: none;
  font-family: var(--ff-medium);
  box-sizing: border-box;
  padding-block: 12px;
  padding-inline: 32px;
  background: #004fbc;
  border: 1px solid #004fbc;
  color: #fff;
  transition: background 1s;
  font-family: "Volvo Novum Regular", "Assistant", "Noto Sans Regular", sans-serif;
  outline: none;
}
.modal__button:hover, .modal__button:focus {
  color: #fff;
  background: #0056d6;
  border: 1px solid #0056d6;
  text-decoration: none;
}
.modal__button:hover::after, .modal__button:focus::after {
  transform: var(--button-icon-transform-hover);
}
.modal__button::after {
  transform: var(--button-icon-transform);
  transition: transform 0.3s ease-out;
}
.modal__button:active {
  background: #0041a3;
}
.modal__button:active, .modal__button:focus, .modal__button:focus-visible {
  outline: 2px solid #0041a3;
  outline-offset: 3px;
}
.modal__button:disabled, .modal__button.disabled {
  background: #8dc9bf;
  border: 1px solid #8dc9bf;
  cursor: not-allowed;
}
.modal__button--secondary {
  display: inline-block;
  align-items: center;
  text-decoration: none;
  font-family: var(--ff-medium);
  box-sizing: border-box;
  padding-block: 12px;
  padding-inline: 32px;
  background: #fff;
  border: 1px solid #53565a;
  color: #53565a;
  transition: background 1s;
}
.modal__button--secondary:hover, .modal__button--secondary:focus {
  background: #f7f7f7;
  text-decoration: none;
  color: #53565a;
}
.modal__button--secondary:hover::after, .modal__button--secondary:focus::after {
  transform: var(--button-icon-transform-hover);
}
.modal__button--secondary:active {
  background: #e1dfdd;
}
.modal__button--secondary:active, .modal__button--secondary:focus, .modal__button--secondary:focus-visible {
  outline: 2px solid #0041a3;
  outline-offset: 3px;
}
.modal__button--secondary::after {
  transform: var(--button-icon-transform);
  transition: transform 0.3s ease-out;
}
.modal__button--secondary:disabled, .modal__button--secondary.disabled {
  border: 1px solid #888b8d;
  color: #888b8d;
}
.modal__closeBtn {
  /* If value has more than one element, any even index will match a horizontal axis
      * 2 values: (1)top+down (2)left+right
      * 3 values: (1)top (2)left+right (3)bottom
      * 4 values: (1)top (2)right (3)bottom (4)left
      */
  /* If value has more than one element, any even index will match a horizontal axis
      * 2 values: (1)top+down (2)left+right
      * 3 values: (1)top (2)left+right (3)bottom
      * 4 values: (1)top (2)right (3)bottom (4)left
      */
  padding: 0.8125rem 13px;
  display: flex;
  align-items: center;
  cursor: pointer;
}
.modal__closeBtn:before {
  font-family: "VolvoIcons";
  content: "\e93b";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  vertical-align: baseline;
  color: #53565a;
  font-size: 1rem;
  display: inline-block;
  line-height: 0;
  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

/*
Also please follow this
Do your project have diferent charset languages to account with?
      - Yes -> follow https://projects.netcentric.biz/wiki/display/FRONTEND/CSS+-+Font+Normalization
      - No -> You can still use it, there are tons of advantages, but its create some extra css and layout rendering
*/
/*
  * Design spec:
  * https://www.figma.com/file/SR4rvQlNnCmPMrQ9WYaIqv/branch/TJqkFymq09wf8KwmY1WNcj/Volvo-AEM-Design-system?type=design&node-id=7-26&t=pAm916VRiqCOD2I1-0
*/
/**
 * z-indexes from lower to -> higher
 */
/* doc
---
title: Pixel to em
name: nn-px-to-em
category: functions
---

Calculate the em with a given pixel with the given base font size
If you don't set a $base the $base-font-size is used as the context

## Live Template abbreviations
---
-ptu

## Parameters
---
@parameter $value = pixel based number (without unit)
@parameter $base = pixel based number (without unit)

## Dependencies
---
nn-strip-unit

## Example
---
```html_example
nn-px-to-em(5) // Output: 0.3125em
nn-px-to-em(5, 10) // Output: 0.5em
nn-px-to-em(5, 20) // Output: 0.25em
```
*/
/* doc
---
title: Pixel to rem
name: nn-px-to-rem
category: functions
---

Calculate the rem with a given pixel with the given base font size

In:  5px
Out: 0.3125rem

## Live Template abbreviations
---
-rem

## Parameters
---
@parameter $value = pixel based number (without unit)

## Dependencies
---
nn-strip-unit

## Example
---
```html_example
nn-px-to-rem(5) // Output 0.3125rem
```

*/
/* doc
---
title: Pixel to unit
name: px-to-unit
category: mixins
---

Set a property and value (pixel based without unit)

Calculates rem / em / % from given pixel and base (default base is the
base-font-size, 16px)
If rtl is true, this mixin handles all the direction stuff:
- Switching the values, when we have exactly 4 values
- Switching left and right in properties (padding and margin)

## Live Template abbreviations
---
-ptu (for em or % to pixel - with base parameter)
-rem (for rem to pixel - without base parameter)

## Parameters
---
@parameter $property = padding | margin | font-size | width | height
@parameter $value = Pixel based number - add px to keep the px for a value
@parameter $base = px based number, Default: 16px
@parameter $unit = Set unit: px | em | rem | percent

## Dependencies
---
abstract/functions/swap-left-right
abstract/functions/strip-unit

## Example
---

```html_example
@include nn-px-to-unit(padding, 0 10px 20 0); => padding: 0 10px 1.25rem 0;
@include nn-px-to-unit(padding, 0 10 20 0); => padding: 0 0.625rem 1.25rem 0;
@include nn-px-to-unit(padding-left, 10);
@include nn-px-to-unit(padding-right, 10);
@include nn-px-to-unit(margin, 0 10 20 0);
@include nn-px-to-unit(margin-left, 10);
@include nn-px-to-unit(margin-right, 10);
@include nn-px-to-unit(font-size, 20);
@include nn-px-to-unit(width, 100);
@include nn-px-to-unit(min-width, 100);
@include nn-px-to-unit(mann-width, 100);
@include nn-px-to-unit(height, 100);
@include nn-px-to-unit(min-height, 100);
@include nn-px-to-unit(mann-height, 100);
```

## Source
---
http://css-tricks.com/snippets/css/less-mixin-for-rem-font-sizing/

*/
/* doc
---
title: Pixel to unitless
name: nn-px-to-unitless
category: functions
---

This makes the same calculation as px to em. But it don't print out the unit.

Use this for line-heights.

## Live Template abbreviations
---

## Parameters
---
@parameter $value = pixel based number (without unit)
@parameter $base = pixel based number (without unit)

## Dependencies
---

## Example
---

```html_example
line-height: nn-px-to-unitless(5) // Output: 0.3125
```

## Source
---

*/
/* doc
---
title: Strip unit
name: nn-strip-unit
category: functions
---

Strips of the unit of a number

## Parameters
---
@parameter $num = number with unit (5px, 5em, 5rem)

## Example
---

```html_example
nn-strip-unit(5px) //Output: 5
nn-strip-unit(10em) // Output: 10
nn-strip-unit(15rem) // Output: 15
```

*/
/* doc
---
title: z-index
name: nn-z-index
category: functions
---

Because z-indices can get tricky we manage them in the theme.scss globally.

Always use this mixin to set set a z-index.

Read the Best Practice to get an full documentation:
https://projects.netcentric.biz/wiki/display/FRONTEND/How+to+set+a+z-index

## Live Template abbreviations
---
-z

## Parameters
---
@parameter $element = Name of the element (normally this will be the module name for the main stack)
@parameter $list = Name of the list (default $z-indices). Must be only set for stack context
@parameter $min = Set a minimum z-index which will be added to the list.

## Dependencies
---
$z-indices variable in the theme.scss

## Example
---

```html_example

// In the SASS theme file

$z-indices: slider, modal, dialog, navigation;

// In the SASS module file

.modal {
    &__base {
        position: absolute;
        z-index: nn-z-index(modal);
    }
}
```

## Source
---
http://www.smashingmagazine.com/2014/06/12/sassy-z-index-management-for-complex-layouts/

*/
/* doc
---
title: remove every unit
name: strip-unit
category: functions
---
remove all units

## Parameters
---
@parameter $number = number with unit

## Example
---
```html_example
strip-unit(5px) // Output: 5
```
*/
/*
    This mixin converts any unitless number (for example 40) to the correct unit, according to the given axis.

    Parameters:
    - $value: unitless number to be converted. A unit in $value will correspond to a px in the browser,
        no matter if it's output as px or rem

    Returns
    - Horizontal: will convert the number to pixels (40px)
    - Vertical: will convert the number to rem (if rem === 16px, then 40 will be converted to 2.5 rem)
*/
/*
    Converts a unitless number to the corresponding unit on the horizontal axis.
    By default will convert the value to px.
*/
/*
    Converts a unitless number to the corresponding unit on the vertical axis.
    By default will convert the value to rem.
*/
/* stylelint-disable */
/* doc
---
title: Swap left right values
name: swap-left-right-values
category: functions
---

Swap the values for right and left when $rtl is set to true:

In:  0 5px 8px 12px
Out: 0 12px 8px 5px (in rtl)

## Parameters
---
@parameter $values = 4 numbers (works with all units)

## Example
---

```html_example
swap-left-right-values(0 1px 8px 12px) // 0 12px 8px 1px
swap-left-right-values(0 1em 8em 12em) // 0 12em 8em 1em
wap-left-right-values(0 1rem 8rem 12rem) // 0 12rem 8rem 1rem
```

## Source
---
http://stackoverflow.com/questions/14199323/right-to-left-rtl-support-in-sass-project

*/
/* stylelint-disable */
/* doc
---
title: Swap left right names
name: swap-left-right-names
category: functions
---

Swap the names right and left when $rtl is set to true.
If the value is not right or left it returns the original value.

In:  right
Out: left (in rtl), right (in ltr)

## Live Template abbreviations
---

## Parameters
---
@parameter $origin = right | left

## Example
---

```html_example
swap-left-right-name(left)
swap-left-right-name(right)
```

## Source
---
http://stackoverflow.com/questions/14199323/right-to-left-rtl-support-in-sass-project

*/
/*  List of CSS properties that will always be output at least as 2 different values
    in order to be able to convert each one to the correct axis unit */
/*
    Mixin for automatically handling spacings around/between elements.

    This mixin will automatically invert the lef/right directions in RTL languages.
    Also, the unitless values will be converted to the proper unit according to the axis

    Parameters:
    - $property-name: name of the CSS property that should be output. Supported properties are:
        margin, margin-top, margin-right, margin-bottom, margin-left
        padding, padding-top, padding-right, padding-bottom, padding-left
        width, height, min-width, max-width, min-height, min-height
    - $value: value that will be output as part of the given property. Supported values are:
        Unitless number (40): this should be used most of the times. It will automatically be converted
            to the correct unit depending on the axis where it's used (horizontal axis => px, vertical axis => rem).
            Each unit in $value will correspond to a px in the browser, no matter to which unit it will be converted.
        Number with unit (40px, 40%...): the number and the unit will be preserved and only the left/right inversion
            will be done for RTL languages
        List of values (40 30% 20 10): margin and padding shorthands whith multiple values are supported.
            The left/right values will be automatically swapped in RTL and the unitless numbers will be converted
            to the corresponding unit. Unitless and numbers with units can be mixed in the same call.
        Using calc() in any of the previous examples is supported, although no unit conversion will be done

 ## Example
---

```html_example
@include spacing(padding, 0 10px 20 0); => padding: 0 10px 2rem 0;
@include spacing(padding, 0 10 20 0); => padding: 0 10px 2rem 0;
@include spacing(padding-left, 10);
@include spacing(padding-right, 10);
@include spacing(margin, 0 10 20 0);
@include spacing(margin-left, 10);
@include spacing(margin-right, 10);
@include spacing(width, 100);
@include spacing(min-width, 100);
@include spacing(max-width, 100);
@include spacing(height, 100);
@include spacing(min-height, 100);
@include spacing(max-height, 100);
```
*/
/* doc
---
title: Clearfix
name: clearfix
category: mixins
---

Clears after floating element

Use this mixin only inside media queries where you can't use the
abstract/extends/utils/_clearfix version, which adds less code to css

## Live Template abbreviations
---

## Example
---

```html_example
@include clearfix;
```

## Source
---
https://css-tricks.com/snippets/css/clear-fix/
*/
/* stylelint-disable string-no-newline */
/* doc
---
title: focus color
name: focus color
category: mixins
---

Add a focus color when keyboard-focus is activated
## Parameters
---
@param $number

*/
/* doc
---
title: ignore-container
name: ignore-container
category: mixins
---

Set full page width for something inside a container

## Parameters
---
@param $container-size
@param $gutter

*/
/* Generates all the rules for the grid columns up to the given amount of column */
/* Generates all the rules for the grid column offset up to the given amount of column */
/* Generates all the rules for the grid and columns for the given break point and total of columns */
/* API function to be called to generate a grid config */
/* doc
---
type: button type
state: state button
---

Button styles

Use this mixin for button styles: color text, background, border

## Example
---

```html_example
@include button(primary);
```
*/
/* doc
---
lineLimit: This value specifies the number of lines after which the content will be clamped. It must be greater than 0.
---

Truncates text at a specific number of lines.

Use this mixin to hide long text.

## Example
---

```html_example
@include line-clamp($lineLimit: 4);
```
*/
/* typography
---
title: typography
name: Typography
category: mixins
---

Adds font CSS properties by a map provided

## Parameters
---
@param $t-style
@param $is-important: false

* $t-style is expected to be a map with 'default' and 'breakpoint[s]' submaps with a property
for every css property to be set.
* $is-important parameter allows to force typography properties to be set as !important
Try to avoid its use, but it might be needed for situations where styles for a component
are very specific and to overwrite the generic ones is too complex (if they have a lot of specificity)

*/
/* doc
---
title: hidden
name: hidden
category: mixins
---

Hide from both screenreaders and browsers: h5bp.com/u
## Parameters
---

*/
/* doc
---
title: overlay
name: overlay
category: mixins
---

Creates an overlay with the provided background color
## Parameters
---
@param $bgColor

*/
/**
 * @mixin top-bottom-border
 * @desc Creates a dynamic and customizable border at the specified position on an element.
 *
 * @param {string} $position - Optional, Default: 'bottom'. Defines the position of the border. Accepts values 'top' or 'bottom'.
 * @param {color} $color - Optional, Default: '$c-black'. Specifies the color of the border. Accepts any valid CSS color value.
 * @param {length} $width - Optional, Default: '2px'. Sets the width of the border. Accepts any valid CSS length value.
 * @param {length} $margin - Optional, Default: '0'. Adds margin to the border. Accepts any valid CSS length value.
 *
 * @example
 *   .example-element {
 *       @include top-bottom-border($position: top, $color: $c-grey-two, $width: 3px, $margin: 10px);
 *   }
 */
/* doc
---
title: reset-fullwidth-margins
name: reset-fullwidth-margins
category: mixins
---

Reset margins for full width components inside a Container or a Column Control
*/
/* doc
---
title: visually hidden
name: visually hidden
category: mixins
---

Hidden from browsers but accessible to screen readers
## Parameters
---

*/
.img__container-zoom {
  position: relative;
  width: 100%;
}

.image {
  --component-margin-block-start: 30px;
  --component-margin-block-end: 30px;
}
.image.margin-top--none {
  --component-margin-block-start: 0;
}
.image.margin-top--single {
  --component-margin-block-start: 30px;
}
.image.margin-top--double {
  --component-margin-block-start: 30px;
}
@media (min-width: 768px) {
  .image.margin-top--double {
    --component-margin-block-start: calc(30px * 2);
  }
}
.image.margin-bottom--none {
  --component-margin-block-end: 0;
}
.image.margin-bottom--single {
  --component-margin-block-end: 30px;
}
.image.margin-bottom--double {
  --component-margin-block-end: 30px;
}
@media (min-width: 768px) {
  .image.margin-bottom--double {
    --component-margin-block-end: calc(30px * 2);
  }
}
.image .img__container {
  margin-block: var(--component-margin-block-start) var(--component-margin-block-end) !important;
}
.aem-Grid > .image:first-child:not(.margin-top--single):not(.margin-top--double) .img__container {
  margin-block-start: 0 !important;
}

.image .s7zoomviewer {
  width: auto;
}
.image .s7zoomviewer .s7container {
  width: 100%;
  height: 100%;
}
.image .s7zoomviewer .s7container[mode=normal] {
  overflow: hidden;
}
.image .s7zoomviewer .s7container[mode=normal]:hover .s7zoomviewer__overlay {
  opacity: 1;
}
.image .s7zoomviewer .s7container[mode=normal] .s7zoominbutton,
.image .s7zoomviewer .s7container[mode=normal] .s7zoomoutbutton,
.image .s7zoomviewer .s7container[mode=normal] .s7zoomresetbutton {
  display: none;
}
.image .s7zoomviewer .s7container[mode=normal] .s7zoomviewer__overlay {
  position: absolute;
  inset: 0;
  font-size: 32px;
  color: #fff;
  background-color: rgba(0, 0, 0, 0.4);
  opacity: 0;
  transition: opacity 0.2s;
  z-index: 1;
}
.image .s7zoomviewer .s7container[mode=normal] .s7fullscreenbutton {
  position: absolute;
  inset: -100% 0 0;
  width: 100%;
  height: 100%;
  z-index: 2;
}
.image .s7zoomviewer .s7container[mode=normal] .s7fullscreenbutton:after {
  background-color: #53565a;
  content: "";
  display: inline-block;
  -webkit-mask-image: url("../../../../content/dam/volvo-media/list-icons/search.svg#search-icon-w24-view");
          mask-image: url("../../../../content/dam/volvo-media/list-icons/search.svg#search-icon-w24-view");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-size: cover;
          mask-size: cover;
  pointer-events: none;
  width: 24px;
  height: 24px;
}
@media (min-width: 1200px) {
  .image .s7zoomviewer .s7container[mode=normal] .s7fullscreenbutton:after {
    -webkit-mask-image: url("../../../../content/dam/volvo-media/list-icons/search.svg#search-icon-w16-view");
            mask-image: url("../../../../content/dam/volvo-media/list-icons/search.svg#search-icon-w16-view");
  }
}
.image .s7zoomviewer .s7container[mode=normal] .s7fullscreenbutton::before, .image .s7zoomviewer .s7container[mode=normal] .s7fullscreenbutton::after {
  content: "";
  position: absolute;
}
.image .s7zoomviewer .s7container[mode=normal] .s7fullscreenbutton::before {
  /* If value has more than one element, any even index will match a horizontal axis
      * 2 values: (1)top+down (2)left+right
      * 3 values: (1)top (2)left+right (3)bottom
      * 4 values: (1)top (2)right (3)bottom (4)left
      */
  width: 3.125rem;
  /* If value has more than one element, any even index will match a horizontal axis
      * 2 values: (1)top+down (2)left+right
      * 3 values: (1)top (2)left+right (3)bottom
      * 4 values: (1)top (2)right (3)bottom (4)left
      */
  height: 3.125rem;
  background-color: #fff;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.2);
  border-radius: 50%;
  cursor: pointer;
  inset-block-end: 20px;
  inset-inline-end: 20px;
}
.image .s7zoomviewer .s7container[mode=normal] .s7fullscreenbutton::after {
  inset-inline-end: 33px;
  inset-block-end: 33px;
}
.image .s7zoomviewer .s7container[mode=normal] .s7fullscreenbutton[state][selected] {
  background-image: none;
}
.image .s7zoomviewer .s7container[mode=normal] .s7zoomview[data-namespace=s7classic] {
  background-color: transparent;
}
.image .s7zoomviewer .s7container[mode=fullscreen] {
  background-color: rgba(0, 0, 0, 0) !important;
}
.image .s7zoomviewer .s7container[mode=fullscreen]::backdrop {
  background-color: rgba(0, 0, 0, 0);
}
.image .s7zoomviewer .s7container[mode=fullscreen] .s7fullscreenbutton {
  display: flex;
  align-items: center;
  justify-content: center;
  /* If value has more than one element, any even index will match a horizontal axis
      * 2 values: (1)top+down (2)left+right
      * 3 values: (1)top (2)left+right (3)bottom
      * 4 values: (1)top (2)right (3)bottom (4)left
      */
  height: 3.125rem;
  /* If value has more than one element, any even index will match a horizontal axis
      * 2 values: (1)top+down (2)left+right
      * 3 values: (1)top (2)left+right (3)bottom
      * 4 values: (1)top (2)right (3)bottom (4)left
      */
  width: 3.125rem;
  inset-block-start: calc(-100vh + 20px);
  inset-inline-end: 20px;
  background-image: none;
}
.image .s7zoomviewer .s7container[mode=fullscreen] .s7fullscreenbutton:after {
  background-color: #53565a;
  content: "";
  display: inline-block;
  -webkit-mask-image: url("../../../../content/dam/volvo-media/service-contract-icons/close.svg#close-icon-w24-view");
          mask-image: url("../../../../content/dam/volvo-media/service-contract-icons/close.svg#close-icon-w24-view");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-size: cover;
          mask-size: cover;
  pointer-events: none;
  width: 24px;
  height: 24px;
}
@media (min-width: 1200px) {
  .image .s7zoomviewer .s7container[mode=fullscreen] .s7fullscreenbutton:after {
    -webkit-mask-image: url("../../../../content/dam/volvo-media/service-contract-icons/close.svg#close-icon-w16-view");
            mask-image: url("../../../../content/dam/volvo-media/service-contract-icons/close.svg#close-icon-w16-view");
  }
}
.image .s7zoomviewer .s7container[mode=fullscreen] .s7fullscreenbutton::before, .image .s7zoomviewer .s7container[mode=fullscreen] .s7fullscreenbutton::after {
  content: "";
  position: absolute;
}
.image .s7zoomviewer .s7container[mode=fullscreen] .s7fullscreenbutton::before {
  width: 100%;
  height: 100%;
  background-color: #fff;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.2);
  border-radius: 50%;
  cursor: pointer;
  inset: 0;
}
.image .s7zoomviewer .s7container[mode=fullscreen] .s7zoomview {
  background-color: rgba(20, 20, 20, 0.8);
}
.image .s7zoomviewer .s7zoominbutton,
.image .s7zoomviewer .s7zoomoutbutton,
.image .s7zoomviewer .s7zoomresetbutton {
  display: none;
  position: absolute;
  /* If value has more than one element, any even index will match a horizontal axis
      * 2 values: (1)top+down (2)left+right
      * 3 values: (1)top (2)left+right (3)bottom
      * 4 values: (1)top (2)right (3)bottom (4)left
      */
  height: 3.125rem !important;
  /* If value has more than one element, any even index will match a horizontal axis
      * 2 values: (1)top+down (2)left+right
      * 3 values: (1)top (2)left+right (3)bottom
      * 4 values: (1)top (2)right (3)bottom (4)left
      */
  width: 3.125rem !important;
  /* stylelint-disable declaration-no-important */
  inset-block-end: 20px !important;
  inset-inline-start: 50% !important;
  /* stylelint-enable declaration-no-important */
  transform: translateX(-50%);
}
@media (min-width: 960px) {
  .image .s7zoomviewer .s7zoominbutton,
  .image .s7zoomviewer .s7zoomoutbutton,
  .image .s7zoomviewer .s7zoomresetbutton {
    display: block;
  }
}
.image .s7zoomviewer .s7zoominbutton[state],
.image .s7zoomviewer .s7zoomoutbutton[state],
.image .s7zoomviewer .s7zoomresetbutton[state] {
  background-image: none;
}
.image .s7zoomviewer .s7zoominbutton {
  display: flex;
  align-items: center;
  justify-content: center;
  inset-inline-start: calc(50% - 70px) !important;
}
.image .s7zoomviewer .s7zoominbutton:after {
  background-color: #53565a;
  content: "";
  display: inline-block;
  -webkit-mask-image: url("../../../../content/dam/volvo-media/list-icons/plus.svg#plus-icon-w24-view");
          mask-image: url("../../../../content/dam/volvo-media/list-icons/plus.svg#plus-icon-w24-view");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-size: cover;
          mask-size: cover;
  pointer-events: none;
  width: 24px;
  height: 24px;
}
@media (min-width: 1200px) {
  .image .s7zoomviewer .s7zoominbutton:after {
    -webkit-mask-image: url("../../../../content/dam/volvo-media/list-icons/plus.svg#plus-icon-w16-view");
            mask-image: url("../../../../content/dam/volvo-media/list-icons/plus.svg#plus-icon-w16-view");
  }
}
.image .s7zoomviewer .s7zoominbutton::before, .image .s7zoomviewer .s7zoominbutton::after {
  content: "";
  position: absolute;
}
.image .s7zoomviewer .s7zoominbutton::before {
  width: 100%;
  height: 100%;
  background-color: #fff;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.2);
  border-radius: 50%;
  cursor: pointer;
  inset: 0;
}
.image .s7zoomviewer .s7zoomoutbutton {
  display: flex;
  align-items: center;
  justify-content: center;
}
.image .s7zoomviewer .s7zoomoutbutton:after {
  background-color: #53565a;
  content: "";
  display: inline-block;
  -webkit-mask-image: url("../../../../content/dam/volvo-media/list-icons/minus.svg#minus-icon-w24-view");
          mask-image: url("../../../../content/dam/volvo-media/list-icons/minus.svg#minus-icon-w24-view");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-size: cover;
          mask-size: cover;
  pointer-events: none;
  width: 24px;
  height: 24px;
}
@media (min-width: 1200px) {
  .image .s7zoomviewer .s7zoomoutbutton:after {
    -webkit-mask-image: url("../../../../content/dam/volvo-media/list-icons/minus.svg#minus-icon-w16-view");
            mask-image: url("../../../../content/dam/volvo-media/list-icons/minus.svg#minus-icon-w16-view");
  }
}
.image .s7zoomviewer .s7zoomoutbutton::before, .image .s7zoomviewer .s7zoomoutbutton::after {
  content: "";
  position: absolute;
}
.image .s7zoomviewer .s7zoomoutbutton::before {
  width: 100%;
  height: 100%;
  background-color: #fff;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.2);
  border-radius: 50%;
  cursor: pointer;
  inset: 0;
}
.image .s7zoomviewer .s7zoomresetbutton {
  display: flex;
  align-items: center;
  justify-content: center;
  inset-inline-start: calc(50% + 70px) !important;
}
.image .s7zoomviewer .s7zoomresetbutton:after {
  background-color: #53565a;
  content: "";
  display: inline-block;
  -webkit-mask-image: url("../../../../content/dam/volvo-media/service-contract-icons/Actions_Update_Black.svg#Actions_Update_Black-icon-w24-view");
          mask-image: url("../../../../content/dam/volvo-media/service-contract-icons/Actions_Update_Black.svg#Actions_Update_Black-icon-w24-view");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-size: cover;
          mask-size: cover;
  pointer-events: none;
  width: 24px;
  height: 24px;
}
@media (min-width: 1200px) {
  .image .s7zoomviewer .s7zoomresetbutton:after {
    -webkit-mask-image: url("../../../../content/dam/volvo-media/service-contract-icons/Actions_Update_Black.svg#Actions_Update_Black-icon-w16-view");
            mask-image: url("../../../../content/dam/volvo-media/service-contract-icons/Actions_Update_Black.svg#Actions_Update_Black-icon-w16-view");
  }
}
.image .s7zoomviewer .s7zoomresetbutton::before, .image .s7zoomviewer .s7zoomresetbutton::after {
  content: "";
  position: absolute;
}
.image .s7zoomviewer .s7zoomresetbutton::before {
  width: 100%;
  height: 100%;
  background-color: #fff;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.2);
  border-radius: 50%;
  cursor: pointer;
  inset: 0;
}
.image .s7zoomviewer .s7button {
  text-align: center;
  color: #a7a8a9;
}
.image .s7zoomviewer .s7button::before {
  vertical-align: middle;
  filter: none !important;
  border-radius: 100%;
  background-color: #fff !important;
  padding: 25px;
  background-image: none;
}
.image .s7zoomviewer .s7button:hover {
  cursor: pointer;
}
.image .s7zoomviewer .s7button:hover::after {
  filter: brightness(0.75);
}
.image .s7zoomviewer .s7button[state=disabled] {
  cursor: auto;
}
.image .s7zoomviewer .s7button[state=disabled]::after {
  filter: opacity(0.5);
}
.image .img__title {
  font-family: var(--ff-regular);
  font-size: 12px;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: var(--ls-default);
  color: #53565a;
  display: block;
  padding-block-start: 0.5em;
  line-height: 1.6em;
  font-style: italic;
  max-width: 480px;
}
@media (min-width: 768px) {
  .image .img__title {
    max-width: 768px;
  }
}
@media (min-width: 1200px) {
  .image .img__title {
    max-width: 1200px;
  }
}
.image__fullWidth.image {
  overflow: visible;
}
.image__fullWidth .img__container {
  margin-block: 0;
  margin-inline: -15px;
}
@media (min-width: 1200px) {
  .image__fullWidth .img__container {
    width: auto;
    margin-block: 0;
    margin-inline: calc((100vw - 1200px) / -2);
  }
}
@media (min-width: 2048px) {
  .image__fullWidth .img__container {
    width: auto;
    margin-block: 0;
    margin-inline: calc((2048px - 1200px) / -2);
  }
  .container--fullWidth .image__fullWidth .img__container {
    margin: 0;
  }
  .columncontrol__column:first-child .image__fullWidth .img__container {
    margin-inline-end: 0;
  }
  .columncontrol__column:last-child .image__fullWidth .img__container {
    margin-inline-start: 0;
  }
}
.image__fullWidth .img__asset {
  width: 100%;
  position: relative;
}
.image__contentWidth .img__asset {
  width: 100%;
}
.image__slimHeight .img__asset,
.image__slimHeight .img__container {
  object-fit: cover;
  height: 280px;
}
@media (min-width: 768px) {
  .image__slimHeight .img__asset,
  .image__slimHeight .img__container {
    height: 250px;
  }
}
@media (min-width: 960px) {
  .image__slimHeight .img__asset,
  .image__slimHeight .img__container {
    height: 402px;
  }
}
.image__standardHeight .img__asset,
.image__standardHeight .img__container {
  object-fit: cover;
  height: 280px;
}
@media (min-width: 768px) {
  .image__standardHeight .img__asset,
  .image__standardHeight .img__container {
    height: 400px;
  }
}
@media (min-width: 960px) {
  .image__standardHeight .img__asset,
  .image__standardHeight .img__container {
    height: 604px;
  }
}
.image__floatLeft {
  float: left;
}
html[dir=rtl] .image__floatLeft {
  float: right;
}
@media (min-width: 768px) {
  .image__floatLeft img {
    float: left;
    margin-inline-end: 30px;
  }
  .cmp-container .image__floatLeft img {
    margin-block-end: 10px;
    min-width: 280px;
  }
  html[dir=rtl] .image__floatLeft img {
    float: right;
  }
}
.image__floatLeft .img__title {
  margin-inline-end: 30px;
}
.image__floatRight {
  float: right;
}
html[dir=rtl] .image__floatRight {
  float: left;
}
@media (min-width: 768px) {
  .image__floatRight img {
    float: right;
    margin-inline-start: 30px;
  }
  .cmp-container .image__floatRight img {
    margin-block-end: 10px;
    min-width: 280px;
  }
  html[dir=rtl] .image__floatRight img {
    float: left;
  }
}
.image__floatRight .img__title {
  margin-inline-start: 30px;
}
.image__floatRight .img__title, .image__floatLeft .img__title {
  max-width: -moz-fit-content;
  max-width: fit-content;
}
.image__floatRight + .text .text__container *, .image__floatLeft + .text .text__container * {
  clear: none;
  word-wrap: normal;
}

.aem-Grid > .image:first-child {
  margin-block-start: 0;
}

.list--icons .list {
  margin-block-end: 25px;
  text-align: center;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 20px;
  flex-direction: column;
}
@media (min-width: 768px) {
  .list--icons .list {
    margin-block-start: 5px;
    flex-direction: row;
  }
}
.list--icons .cmp-list {
  vertical-align: top;
  display: flex;
  gap: 20px;
}
.list--icons .cmp-list__title {
  font-family: var(--ff-regular);
  font-size: 16px;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: var(--ls-default);
  margin: 0;
}
@media (min-width: 768px) {
  .list--icons .cmp-list__title {
    display: inline-block;
    margin-block: 0;
    margin-inline: 0 1px;
    padding: 0;
    vertical-align: -20%;
  }
}
.list--icons .cmp-list__item {
  padding-block-end: 0;
  display: inline-block;
  font-size: 0;
}
.list--icons .cmp-list__item .cmp-list__item-link::after {
  content: none;
}
.list--icons .cmp-list__item-title {
  font-family: var(--ff-regular);
  font-size: 16px;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: var(--ls-default);
}

.cmp-list__title {
  font-family: var(--ff-medium);
  font-size: 16px;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: var(--ls-default);
  margin-block-end: 25px;
}
@media (min-width: 960px) {
  .cmp-list__title {
    font-size: 24px;
  }
}
.cmp-list__item {
  padding-block-end: 20px;
}
.cmp-list__item .cmp-list__item-link:after {
  background-color: #53565a;
  content: "";
  display: inline-block;
  -webkit-mask-image: url("../../../../content/dam/volvo-media/list-icons/chevron-right.svg#chevron-right-icon-w24-view");
          mask-image: url("../../../../content/dam/volvo-media/list-icons/chevron-right.svg#chevron-right-icon-w24-view");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-size: cover;
          mask-size: cover;
  pointer-events: none;
  width: var(--v-icon-size);
  height: var(--v-icon-size);
}
@media (min-width: 1200px) {
  .cmp-list__item .cmp-list__item-link:after {
    -webkit-mask-image: url("../../../../content/dam/volvo-media/list-icons/chevron-right.svg#chevron-right-icon-w16-view");
            mask-image: url("../../../../content/dam/volvo-media/list-icons/chevron-right.svg#chevron-right-icon-w16-view");
  }
}
html[dir=rtl] .cmp-list__item .cmp-list__item-link::after {
  transform: scale(-1, 1);
}
.cmp-list__item .cmp-list__item-link::after {
  position: relative;
  inset-block-start: 2px;
  inset-inline-start: 0;
}
.cmp-list__item-title {
  font-family: var(--ff-regular);
  font-size: 16px;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: var(--ls-default);
}
.cmp-list__link {
  font-family: var(--ff-regular);
  font-size: 16px;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: var(--ls-default);
  text-decoration: none;
}
.cmp-list__link:hover {
  text-decoration: none;
}
.cmp-list__link--noicon::after {
  content: "❯";
  font-size: 10px;
  margin-inline-start: 10px;
}
.footer__copyright .cmp-list__link--noicon::after {
  content: none;
}
.cmp-list__icon {
  width: 24px;
  height: 24px;
  position: relative;
  inset-block-start: 1px;
}
@media (min-width: 960px) {
  .cmp-list__icon {
    width: 16px;
    height: 16px;
  }
}
/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3RhcmdldC92YXVsdC13b3JrL2pjcl9yb290L2FwcHMvdm9sdm8vY2xpZW50bGlicy92b2x2by10cnVja3MvcHVibGlzaC90cnVja3MucHVibGlzaC5idW5kbGUuY3NzIiwiZmlsZTovLy9idWlsZF9yb290L2J1aWxkL2dsb2JhbC1wMTEwNDk4LXVrNDMwMTEvdm9sdm8tY2xpZW50bGlicy1hcHBzL3NyYy9tYWluL2Zyb250ZW5kL3ZvbHZvL2NvbW1vbi9zdHlsZXMvdmFyaWFibGVzL19pbXBvcnRfdmFyaWFibGVzLnNjc3MiLCJmaWxlOi8vL2J1aWxkX3Jvb3QvYnVpbGQvZ2xvYmFsLXAxMTA0OTgtdWs0MzAxMS92b2x2by1jbGllbnRsaWJzLWFwcHMvc3JjL21haW4vZnJvbnRlbmQvdm9sdm8vY29tbW9uL3N0eWxlcy92YXJpYWJsZXMvX3R5cG9ncmFwaGllcy5zY3NzIiwiZmlsZTovLy9idWlsZF9yb290L2J1aWxkL2dsb2JhbC1wMTEwNDk4LXVrNDMwMTEvdm9sdm8tY2xpZW50bGlicy1hcHBzL3NyYy9tYWluL2Zyb250ZW5kL3ZvbHZvL2NvbW1vbi9zdHlsZXMvdmFyaWFibGVzL196X2luZGV4LnNjc3MiLCJmaWxlOi8vL2J1aWxkX3Jvb3QvYnVpbGQvZ2xvYmFsLXAxMTA0OTgtdWs0MzAxMS92b2x2by1jbGllbnRsaWJzLWFwcHMvc3JjL21haW4vZnJvbnRlbmQvdm9sdm8vY29tbW9uL3N0eWxlcy9hYnN0cmFjdC9mdW5jdGlvbnMvX25uLXB4LXRvLWVtLnNjc3MiLCJmaWxlOi8vL2J1aWxkX3Jvb3QvYnVpbGQvZ2xvYmFsLXAxMTA0OTgtdWs0MzAxMS92b2x2by1jbGllbnRsaWJzLWFwcHMvc3JjL21haW4vZnJvbnRlbmQvdm9sdm8vY29tbW9uL3N0eWxlcy9hYnN0cmFjdC9mdW5jdGlvbnMvX25uLXB4LXRvLXJlbS5zY3NzIiwiZmlsZTovLy9idWlsZF9yb290L2J1aWxkL2dsb2JhbC1wMTEwNDk4LXVrNDMwMTEvdm9sdm8tY2xpZW50bGlicy1hcHBzL3NyYy9tYWluL2Zyb250ZW5kL3ZvbHZvL2NvbW1vbi9zdHlsZXMvYWJzdHJhY3QvZnVuY3Rpb25zL19ubi1weC10by11bml0LnNjc3MiLCJmaWxlOi8vL2J1aWxkX3Jvb3QvYnVpbGQvZ2xvYmFsLXAxMTA0OTgtdWs0MzAxMS92b2x2by1jbGllbnRsaWJzLWFwcHMvc3JjL21haW4vZnJvbnRlbmQvdm9sdm8vY29tbW9uL3N0eWxlcy9hYnN0cmFjdC9mdW5jdGlvbnMvX25uLXB4LXRvLXVuaXRsZXNzLnNjc3MiLCJmaWxlOi8vL2J1aWxkX3Jvb3QvYnVpbGQvZ2xvYmFsLXAxMTA0OTgtdWs0MzAxMS92b2x2by1jbGllbnRsaWJzLWFwcHMvc3JjL21haW4vZnJvbnRlbmQvdm9sdm8vY29tbW9uL3N0eWxlcy9hYnN0cmFjdC9mdW5jdGlvbnMvX25uLXN0cmlwLXVuaXQuc2NzcyIsImZpbGU6Ly8vYnVpbGRfcm9vdC9idWlsZC9nbG9iYWwtcDExMDQ5OC11azQzMDExL3ZvbHZvLWNsaWVudGxpYnMtYXBwcy9zcmMvbWFpbi9mcm9udGVuZC92b2x2by9jb21tb24vc3R5bGVzL2Fic3RyYWN0L2Z1bmN0aW9ucy9fbm4tei1pbmRleC5zY3NzIiwiZmlsZTovLy9idWlsZF9yb290L2J1aWxkL2dsb2JhbC1wMTEwNDk4LXVrNDMwMTEvdm9sdm8tY2xpZW50bGlicy1hcHBzL3NyYy9tYWluL2Zyb250ZW5kL3ZvbHZvL2NvbW1vbi9zdHlsZXMvYWJzdHJhY3QvZnVuY3Rpb25zL19zdHJpcC11bml0LnNjc3MiLCJmaWxlOi8vL2J1aWxkX3Jvb3QvYnVpbGQvZ2xvYmFsLXAxMTA0OTgtdWs0MzAxMS92b2x2by1jbGllbnRsaWJzLWFwcHMvc3JjL21haW4vZnJvbnRlbmQvdm9sdm8vY29tbW9uL3N0eWxlcy9hYnN0cmFjdC9mdW5jdGlvbnMvX3B4LXRvLWF4aXMtdW5pdC5zY3NzIiwiZmlsZTovLy9idWlsZF9yb290L2J1aWxkL2dsb2JhbC1wMTEwNDk4LXVrNDMwMTEvdm9sdm8tY2xpZW50bGlicy1hcHBzL3NyYy9tYWluL2Zyb250ZW5kL3ZvbHZvL2NvbW1vbi9zdHlsZXMvYWJzdHJhY3QvZnVuY3Rpb25zL19zd2FwLWxlZnQtcmlnaHQtdmFsdWVzLnNjc3MiLCJmaWxlOi8vL2J1aWxkX3Jvb3QvYnVpbGQvZ2xvYmFsLXAxMTA0OTgtdWs0MzAxMS92b2x2by1jbGllbnRsaWJzLWFwcHMvc3JjL21haW4vZnJvbnRlbmQvdm9sdm8vY29tbW9uL3N0eWxlcy9hYnN0cmFjdC9mdW5jdGlvbnMvX3N3YXAtbGVmdC1yaWdodC1uYW1lcy5zY3NzIiwiZmlsZTovLy9idWlsZF9yb290L2J1aWxkL2dsb2JhbC1wMTEwNDk4LXVrNDMwMTEvdm9sdm8tY2xpZW50bGlicy1hcHBzL3NyYy9tYWluL2Zyb250ZW5kL3ZvbHZvL2NvbW1vbi9zdHlsZXMvYWJzdHJhY3QvZnVuY3Rpb25zL19zcGFjaW5nLnNjc3MiLCJmaWxlOi8vL2J1aWxkX3Jvb3QvYnVpbGQvZ2xvYmFsLXAxMTA0OTgtdWs0MzAxMS92b2x2by1jbGllbnRsaWJzLWFwcHMvc3JjL21haW4vZnJvbnRlbmQvdm9sdm8vY29tbW9uL3N0eWxlcy9hYnN0cmFjdC9taXhpbnMvX2NsZWFyZml4LnNjc3MiLCJmaWxlOi8vL2J1aWxkX3Jvb3QvYnVpbGQvZ2xvYmFsLXAxMTA0OTgtdWs0MzAxMS92b2x2by1jbGllbnRsaWJzLWFwcHMvc3JjL21haW4vZnJvbnRlbmQvdm9sdm8vY29tbW9uL3N0eWxlcy9hYnN0cmFjdC9taXhpbnMvX2ZvbnQtaWNvbi5zY3NzIiwiZmlsZTovLy9idWlsZF9yb290L2J1aWxkL2dsb2JhbC1wMTEwNDk4LXVrNDMwMTEvdm9sdm8tY2xpZW50bGlicy1hcHBzL3NyYy9tYWluL2Zyb250ZW5kL3ZvbHZvL2NvbW1vbi9zdHlsZXMvYWJzdHJhY3QvbWl4aW5zL19mb2N1cy1jb2xvci5zY3NzIiwiZmlsZTovLy9idWlsZF9yb290L2J1aWxkL2dsb2JhbC1wMTEwNDk4LXVrNDMwMTEvdm9sdm8tY2xpZW50bGlicy1hcHBzL3NyYy9tYWluL2Zyb250ZW5kL3ZvbHZvL2NvbW1vbi9zdHlsZXMvYWJzdHJhY3QvbWl4aW5zL19pZ25vcmUtY29udGFpbmVyLnNjc3MiLCJmaWxlOi8vL2J1aWxkX3Jvb3QvYnVpbGQvZ2xvYmFsLXAxMTA0OTgtdWs0MzAxMS92b2x2by1jbGllbnRsaWJzLWFwcHMvc3JjL21haW4vZnJvbnRlbmQvdm9sdm8vY29tbW9uL3N0eWxlcy9hYnN0cmFjdC9taXhpbnMvX2dlbmVyYXRlLWFlbS1ncmlkLnNjc3MiLCJmaWxlOi8vL2J1aWxkX3Jvb3QvYnVpbGQvZ2xvYmFsLXAxMTA0OTgtdWs0MzAxMS92b2x2by1jbGllbnRsaWJzLWFwcHMvc3JjL21haW4vZnJvbnRlbmQvdm9sdm8vY29tbW9uL3N0eWxlcy9hYnN0cmFjdC9taXhpbnMvX2J1dHRvbi5zY3NzIiwiZmlsZTovLy9idWlsZF9yb290L2J1aWxkL2dsb2JhbC1wMTEwNDk4LXVrNDMwMTEvdm9sdm8tY2xpZW50bGlicy1hcHBzL3NyYy9tYWluL2Zyb250ZW5kL3ZvbHZvL2NvbW1vbi9zdHlsZXMvYWJzdHJhY3QvbWl4aW5zL19saW5lLWNsYW1wLnNjc3MiLCJmaWxlOi8vL2J1aWxkX3Jvb3QvYnVpbGQvZ2xvYmFsLXAxMTA0OTgtdWs0MzAxMS92b2x2by1jbGllbnRsaWJzLWFwcHMvc3JjL21haW4vZnJvbnRlbmQvdm9sdm8vY29tbW9uL3N0eWxlcy9hYnN0cmFjdC9taXhpbnMvX3R5cG9ncmFwaHkuc2NzcyIsImZpbGU6Ly8vYnVpbGRfcm9vdC9idWlsZC9nbG9iYWwtcDExMDQ5OC11azQzMDExL3ZvbHZvLWNsaWVudGxpYnMtYXBwcy9zcmMvbWFpbi9mcm9udGVuZC92b2x2by9jb21tb24vc3R5bGVzL2Fic3RyYWN0L21peGlucy9faGlkZGVuLnNjc3MiLCJmaWxlOi8vL2J1aWxkX3Jvb3QvYnVpbGQvZ2xvYmFsLXAxMTA0OTgtdWs0MzAxMS92b2x2by1jbGllbnRsaWJzLWFwcHMvc3JjL21haW4vZnJvbnRlbmQvdm9sdm8vY29tbW9uL3N0eWxlcy9hYnN0cmFjdC9taXhpbnMvX292ZXJsYXkuc2NzcyIsImZpbGU6Ly8vYnVpbGRfcm9vdC9idWlsZC9nbG9iYWwtcDExMDQ5OC11azQzMDExL3ZvbHZvLWNsaWVudGxpYnMtYXBwcy9zcmMvbWFpbi9mcm9udGVuZC92b2x2by9jb21tb24vc3R5bGVzL2Fic3RyYWN0L21peGlucy9fdG9wLWJvdHRvbS1ib3JkZXIuc2NzcyIsImZpbGU6Ly8vYnVpbGRfcm9vdC9idWlsZC9nbG9iYWwtcDExMDQ5OC11azQzMDExL3ZvbHZvLWNsaWVudGxpYnMtYXBwcy9zcmMvbWFpbi9mcm9udGVuZC92b2x2by9jb21tb24vc3R5bGVzL2Fic3RyYWN0L21peGlucy9fcmVzZXQtZnVsbHdpZHRoLW1hcmdpbnMuc2NzcyIsImZpbGU6Ly8vYnVpbGRfcm9vdC9idWlsZC9nbG9iYWwtcDExMDQ5OC11azQzMDExL3ZvbHZvLWNsaWVudGxpYnMtYXBwcy9zcmMvbWFpbi9mcm9udGVuZC92b2x2by9jb21tb24vc3R5bGVzL2Fic3RyYWN0L21peGlucy9fdmlzdWFsbHktaGlkZGVuLnNjc3MiLCJmaWxlOi8vL2J1aWxkX3Jvb3QvYnVpbGQvZ2xvYmFsLXAxMTA0OTgtdWs0MzAxMS92b2x2by1jbGllbnRsaWJzLWFwcHMvc3JjL21haW4vZnJvbnRlbmQvdm9sdm8vc2hhcmVkL2NvbXBvbmVudHMvc3RydWN0dXJlL21ldGEtbmF2aWdhdGlvbi9tZXRhLW5hdmlnYXRpb24uc2NzcyIsImZpbGU6Ly8vYnVpbGRfcm9vdC9idWlsZC9nbG9iYWwtcDExMDQ5OC11azQzMDExL3ZvbHZvLWNsaWVudGxpYnMtYXBwcy9idWlsZC9ub2RlX21vZHVsZXMvYnJlYWtwb2ludC1zYXNzL3N0eWxlc2hlZXRzL19icmVha3BvaW50LnNjc3MiLCJmaWxlOi8vL2J1aWxkX3Jvb3QvYnVpbGQvZ2xvYmFsLXAxMTA0OTgtdWs0MzAxMS92b2x2by1jbGllbnRsaWJzLWFwcHMvc3JjL21haW4vZnJvbnRlbmQvdm9sdm8vY29tbW9uL3N0eWxlcy92YXJpYWJsZXMvX2NvbG9ycy5zY3NzIiwiZmlsZTovLy9idWlsZF9yb290L2J1aWxkL2dsb2JhbC1wMTEwNDk4LXVrNDMwMTEvdm9sdm8tY2xpZW50bGlicy1hcHBzL3NyYy9tYWluL2Zyb250ZW5kL3ZvbHZvL3ZvbHZvLXRydWNrcy9wdWJsaXNoL2NvbXBvbmVudHMvc3RydWN0dXJlL2hlYWRlci9tZXRhLW5hdmlnYXRpb24uc2NzcyIsImZpbGU6Ly8vYnVpbGRfcm9vdC9idWlsZC9nbG9iYWwtcDExMDQ5OC11azQzMDExL3ZvbHZvLWNsaWVudGxpYnMtYXBwcy9zcmMvbWFpbi9mcm9udGVuZC92b2x2by9jb21tb24vc3R5bGVzL2Jhc2UvX2N1c3RvbXByb3BlcnRpZXMuc2NzcyIsImZpbGU6Ly8vYnVpbGRfcm9vdC9idWlsZC9nbG9iYWwtcDExMDQ5OC11azQzMDExL3ZvbHZvLWNsaWVudGxpYnMtYXBwcy9zcmMvbWFpbi9mcm9udGVuZC92b2x2by9jb21tb24vc3R5bGVzL2Jhc2UvX3JlYm9vdC5zY3NzIiwiZmlsZTovLy9idWlsZF9yb290L2J1aWxkL2dsb2JhbC1wMTEwNDk4LXVrNDMwMTEvdm9sdm8tY2xpZW50bGlicy1hcHBzL3NyYy9tYWluL2Zyb250ZW5kL3ZvbHZvL2NvbW1vbi9zdHlsZXMvYmFzZS9fYWVtLWdyaWQuc2NzcyIsImZpbGU6Ly8vYnVpbGRfcm9vdC9idWlsZC9nbG9iYWwtcDExMDQ5OC11azQzMDExL3ZvbHZvLWNsaWVudGxpYnMtYXBwcy9zcmMvbWFpbi9mcm9udGVuZC92b2x2by9jb21tb24vc3R5bGVzL3ZhcmlhYmxlcy9fYnJlYWtwb2ludHMuc2NzcyIsImZpbGU6Ly8vYnVpbGRfcm9vdC9idWlsZC9nbG9iYWwtcDExMDQ5OC11azQzMDExL3ZvbHZvLWNsaWVudGxpYnMtYXBwcy9zcmMvbWFpbi9mcm9udGVuZC92b2x2by9jb21tb24vc3R5bGVzL3ZhcmlhYmxlcy9fZ3JpZC5zY3NzIiwiZmlsZTovLy9idWlsZF9yb290L2J1aWxkL2dsb2JhbC1wMTEwNDk4LXVrNDMwMTEvdm9sdm8tY2xpZW50bGlicy1hcHBzL3NyYy9tYWluL2Zyb250ZW5kL3ZvbHZvL2NvbW1vbi9zdHlsZXMvYmFzZS9fZm9udGZhY2Uuc2NzcyIsImZpbGU6Ly8vYnVpbGRfcm9vdC9idWlsZC9nbG9iYWwtcDExMDQ5OC11azQzMDExL3ZvbHZvLWNsaWVudGxpYnMtYXBwcy9zcmMvbWFpbi9mcm9udGVuZC92b2x2by9jb21tb24vc3R5bGVzL2Jhc2UvX2FuaW1hdGlvbi5zY3NzIiwiZmlsZTovLy9idWlsZF9yb290L2J1aWxkL2dsb2JhbC1wMTEwNDk4LXVrNDMwMTEvdm9sdm8tY2xpZW50bGlicy1hcHBzL3NyYy9tYWluL2Zyb250ZW5kL3ZvbHZvL2NvbW1vbi9zdHlsZXMvbGliL3ZvbHZvaWNvbnMvX3BhdGguc2NzcyIsImZpbGU6Ly8vYnVpbGRfcm9vdC9idWlsZC9nbG9iYWwtcDExMDQ5OC11azQzMDExL3ZvbHZvLWNsaWVudGxpYnMtYXBwcy9zcmMvbWFpbi9mcm9udGVuZC92b2x2by9jb21tb24vc3R5bGVzL2xpYi92b2x2b2ljb25zL19jb3JlLnNjc3MiLCJmaWxlOi8vL2J1aWxkX3Jvb3QvYnVpbGQvZ2xvYmFsLXAxMTA0OTgtdWs0MzAxMS92b2x2by1jbGllbnRsaWJzLWFwcHMvc3JjL21haW4vZnJvbnRlbmQvdm9sdm8vY29tbW9uL3N0eWxlcy9saWIvdm9sdm9pY29ucy9faWNvbnMuc2NzcyIsImZpbGU6Ly8vYnVpbGRfcm9vdC9idWlsZC9nbG9iYWwtcDExMDQ5OC11azQzMDExL3ZvbHZvLWNsaWVudGxpYnMtYXBwcy9zcmMvbWFpbi9mcm9udGVuZC92b2x2by9jb21tb24vc3R5bGVzL2xpYi92b2x2b2ljb25zL192YXJpYWJsZXMuc2NzcyIsImZpbGU6Ly8vYnVpbGRfcm9vdC9idWlsZC9nbG9iYWwtcDExMDQ5OC11azQzMDExL3ZvbHZvLWNsaWVudGxpYnMtYXBwcy9zcmMvbWFpbi9mcm9udGVuZC92b2x2by9jb21tb24vc3R5bGVzL2xpYi9mb250YXdlc29tZS9mb250YXdlc29tZS5zY3NzIiwiZmlsZTovLy9idWlsZF9yb290L2J1aWxkL2dsb2JhbC1wMTEwNDk4LXVrNDMwMTEvdm9sdm8tY2xpZW50bGlicy1hcHBzL2J1aWxkL25vZGVfbW9kdWxlcy9AZm9ydGF3ZXNvbWUvZm9udGF3ZXNvbWUtZnJlZS9zY3NzL2ZvbnRhd2Vzb21lLnNjc3MiLCJmaWxlOi8vL2J1aWxkX3Jvb3QvYnVpbGQvZ2xvYmFsLXAxMTA0OTgtdWs0MzAxMS92b2x2by1jbGllbnRsaWJzLWFwcHMvYnVpbGQvbm9kZV9tb2R1bGVzL0Bmb3J0YXdlc29tZS9mb250YXdlc29tZS1mcmVlL3Njc3MvX2NvcmUuc2NzcyIsImZpbGU6Ly8vYnVpbGRfcm9vdC9idWlsZC9nbG9iYWwtcDExMDQ5OC11azQzMDExL3ZvbHZvLWNsaWVudGxpYnMtYXBwcy9idWlsZC9ub2RlX21vZHVsZXMvQGZvcnRhd2Vzb21lL2ZvbnRhd2Vzb21lLWZyZWUvc2Nzcy9fbGFyZ2VyLnNjc3MiLCJmaWxlOi8vL2J1aWxkX3Jvb3QvYnVpbGQvZ2xvYmFsLXAxMTA0OTgtdWs0MzAxMS92b2x2by1jbGllbnRsaWJzLWFwcHMvYnVpbGQvbm9kZV9tb2R1bGVzL0Bmb3J0YXdlc29tZS9mb250YXdlc29tZS1mcmVlL3Njc3MvX2ZpeGVkLXdpZHRoLnNjc3MiLCJmaWxlOi8vL2J1aWxkX3Jvb3QvYnVpbGQvZ2xvYmFsLXAxMTA0OTgtdWs0MzAxMS92b2x2by1jbGllbnRsaWJzLWFwcHMvYnVpbGQvbm9kZV9tb2R1bGVzL0Bmb3J0YXdlc29tZS9mb250YXdlc29tZS1mcmVlL3Njc3MvX3ZhcmlhYmxlcy5zY3NzIiwiZmlsZTovLy9idWlsZF9yb290L2J1aWxkL2dsb2JhbC1wMTEwNDk4LXVrNDMwMTEvdm9sdm8tY2xpZW50bGlicy1hcHBzL2J1aWxkL25vZGVfbW9kdWxlcy9AZm9ydGF3ZXNvbWUvZm9udGF3ZXNvbWUtZnJlZS9zY3NzL19saXN0LnNjc3MiLCJmaWxlOi8vL2J1aWxkX3Jvb3QvYnVpbGQvZ2xvYmFsLXAxMTA0OTgtdWs0MzAxMS92b2x2by1jbGllbnRsaWJzLWFwcHMvYnVpbGQvbm9kZV9tb2R1bGVzL0Bmb3J0YXdlc29tZS9mb250YXdlc29tZS1mcmVlL3Njc3MvX2JvcmRlcmVkLXB1bGxlZC5zY3NzIiwiZmlsZTovLy9idWlsZF9yb290L2J1aWxkL2dsb2JhbC1wMTEwNDk4LXVrNDMwMTEvdm9sdm8tY2xpZW50bGlicy1hcHBzL2J1aWxkL25vZGVfbW9kdWxlcy9AZm9ydGF3ZXNvbWUvZm9udGF3ZXNvbWUtZnJlZS9zY3NzL19hbmltYXRlZC5zY3NzIiwiZmlsZTovLy9idWlsZF9yb290L2J1aWxkL2dsb2JhbC1wMTEwNDk4LXVrNDMwMTEvdm9sdm8tY2xpZW50bGlicy1hcHBzL2J1aWxkL25vZGVfbW9kdWxlcy9AZm9ydGF3ZXNvbWUvZm9udGF3ZXNvbWUtZnJlZS9zY3NzL19yb3RhdGVkLWZsaXBwZWQuc2NzcyIsImZpbGU6Ly8vYnVpbGRfcm9vdC9idWlsZC9nbG9iYWwtcDExMDQ5OC11azQzMDExL3ZvbHZvLWNsaWVudGxpYnMtYXBwcy9idWlsZC9ub2RlX21vZHVsZXMvQGZvcnRhd2Vzb21lL2ZvbnRhd2Vzb21lLWZyZWUvc2Nzcy9fbWl4aW5zLnNjc3MiLCJmaWxlOi8vL2J1aWxkX3Jvb3QvYnVpbGQvZ2xvYmFsLXAxMTA0OTgtdWs0MzAxMS92b2x2by1jbGllbnRsaWJzLWFwcHMvYnVpbGQvbm9kZV9tb2R1bGVzL0Bmb3J0YXdlc29tZS9mb250YXdlc29tZS1mcmVlL3Njc3MvX3N0YWNrZWQuc2NzcyIsImZpbGU6Ly8vYnVpbGRfcm9vdC9idWlsZC9nbG9iYWwtcDExMDQ5OC11azQzMDExL3ZvbHZvLWNsaWVudGxpYnMtYXBwcy9idWlsZC9ub2RlX21vZHVsZXMvQGZvcnRhd2Vzb21lL2ZvbnRhd2Vzb21lLWZyZWUvc2Nzcy9faWNvbnMuc2NzcyIsImZpbGU6Ly8vYnVpbGRfcm9vdC9idWlsZC9nbG9iYWwtcDExMDQ5OC11azQzMDExL3ZvbHZvLWNsaWVudGxpYnMtYXBwcy9idWlsZC9ub2RlX21vZHVsZXMvQGZvcnRhd2Vzb21lL2ZvbnRhd2Vzb21lLWZyZWUvc2Nzcy9fc2NyZWVuLXJlYWRlci5zY3NzIiwiZmlsZTovLy9idWlsZF9yb290L2J1aWxkL2dsb2JhbC1wMTEwNDk4LXVrNDMwMTEvdm9sdm8tY2xpZW50bGlicy1hcHBzL3NyYy9tYWluL2Zyb250ZW5kL3ZvbHZvL2NvbW1vbi9zdHlsZXMvYmFzZS9fdGV4dHN0eWxlLnNjc3MiLCJmaWxlOi8vL2J1aWxkX3Jvb3QvYnVpbGQvZ2xvYmFsLXAxMTA0OTgtdWs0MzAxMS92b2x2by1jbGllbnRsaWJzLWFwcHMvc3JjL21haW4vZnJvbnRlbmQvdm9sdm8vY29tbW9uL3N0eWxlcy9iYXNlL19pY29ucy5zY3NzIiwiZmlsZTovLy9idWlsZF9yb290L2J1aWxkL2dsb2JhbC1wMTEwNDk4LXVrNDMwMTEvdm9sdm8tY2xpZW50bGlicy1hcHBzL3NyYy9tYWluL2Zyb250ZW5kL3ZvbHZvL3NoYXJlZC9hdG9taWMvc3RhdGVzL3N0YXRlcy5zY3NzIiwiZmlsZTovLy9idWlsZF9yb290L2J1aWxkL2dsb2JhbC1wMTEwNDk4LXVrNDMwMTEvdm9sdm8tY2xpZW50bGlicy1hcHBzL3NyYy9tYWluL2Zyb250ZW5kL3ZvbHZvL3NoYXJlZC9hdG9taWMvaWNvbnMvaWNvbnMuc2NzcyIsImZpbGU6Ly8vYnVpbGRfcm9vdC9idWlsZC9nbG9iYWwtcDExMDQ5OC11azQzMDExL3ZvbHZvLWNsaWVudGxpYnMtYXBwcy9zcmMvbWFpbi9mcm9udGVuZC92b2x2by9zaGFyZWQvYXRvbWljL2J1dHRvbi9idXR0b24uc2NzcyIsImZpbGU6Ly8vYnVpbGRfcm9vdC9idWlsZC9nbG9iYWwtcDExMDQ5OC11azQzMDExL3ZvbHZvLWNsaWVudGxpYnMtYXBwcy9zcmMvbWFpbi9mcm9udGVuZC92b2x2by9zaGFyZWQvYXRvbWljL3V0aWxpdHkvdXRpbGl0eS5zY3NzIiwiZmlsZTovLy9idWlsZF9yb290L2J1aWxkL2dsb2JhbC1wMTEwNDk4LXVrNDMwMTEvdm9sdm8tY2xpZW50bGlicy1hcHBzL3NyYy9tYWluL2Zyb250ZW5kL3ZvbHZvL3NoYXJlZC9hdG9taWMvY2hlY2tib3gvY2hlY2tib3guc2NzcyIsImZpbGU6Ly8vYnVpbGRfcm9vdC9idWlsZC9nbG9iYWwtcDExMDQ5OC11azQzMDExL3ZvbHZvLWNsaWVudGxpYnMtYXBwcy9zcmMvbWFpbi9mcm9udGVuZC92b2x2by9zaGFyZWQvYXRvbWljL2NoZWNrYm94c3dpdGNoL2NoZWNrYm94c3dpdGNoLnNjc3MiLCJmaWxlOi8vL2J1aWxkX3Jvb3QvYnVpbGQvZ2xvYmFsLXAxMTA0OTgtdWs0MzAxMS92b2x2by1jbGllbnRsaWJzLWFwcHMvc3JjL21haW4vZnJvbnRlbmQvdm9sdm8vc2hhcmVkL2F0b21pYy9kcm9wZG93bi9kcm9wZG93bi5zY3NzIiwiZmlsZTovLy9idWlsZF9yb290L2J1aWxkL2dsb2JhbC1wMTEwNDk4LXVrNDMwMTEvdm9sdm8tY2xpZW50bGlicy1hcHBzL3NyYy9tYWluL2Zyb250ZW5kL3ZvbHZvL3NoYXJlZC9hdG9taWMvcmFkaW9idXR0b24vcmFkaW9idXR0b24uc2NzcyIsImZpbGU6Ly8vYnVpbGRfcm9vdC9idWlsZC9nbG9iYWwtcDExMDQ5OC11azQzMDExL3ZvbHZvLWNsaWVudGxpYnMtYXBwcy9zcmMvbWFpbi9mcm9udGVuZC92b2x2by9zaGFyZWQvY29tcG9uZW50cy9zdHJ1Y3R1cmUvaGVhZGVyL2hlYWRlci5zY3NzIiwiZmlsZTovLy9idWlsZF9yb290L2J1aWxkL2dsb2JhbC1wMTEwNDk4LXVrNDMwMTEvdm9sdm8tY2xpZW50bGlicy1hcHBzL3NyYy9tYWluL2Zyb250ZW5kL3ZvbHZvL3NoYXJlZC9jb21wb25lbnRzL3N0cnVjdHVyZS9tYWluLW5hdmlnYXRpb24vbWFpbi1uYXZpZ2F0aW9uLnNjc3MiLCJmaWxlOi8vL2J1aWxkX3Jvb3QvYnVpbGQvZ2xvYmFsLXAxMTA0OTgtdWs0MzAxMS92b2x2by1jbGllbnRsaWJzLWFwcHMvc3JjL21haW4vZnJvbnRlbmQvdm9sdm8vc2hhcmVkL2NvbXBvbmVudHMvc3RydWN0dXJlL21haW4tbmF2aWdhdGlvbi1leHRlbmRlZC9tYWluLW5hdmlnYXRpb24tZXh0ZW5kZWQuc2NzcyIsImZpbGU6Ly8vYnVpbGRfcm9vdC9idWlsZC9nbG9iYWwtcDExMDQ5OC11azQzMDExL3ZvbHZvLWNsaWVudGxpYnMtYXBwcy9zcmMvbWFpbi9mcm9udGVuZC92b2x2by9zaGFyZWQvY29tcG9uZW50cy9zdHJ1Y3R1cmUvc2Vjb25kYXJ5LW5hdmlnYXRpb24vc2Vjb25kYXJ5LW5hdmlnYXRpb24uc2NzcyIsImZpbGU6Ly8vYnVpbGRfcm9vdC9idWlsZC9nbG9iYWwtcDExMDQ5OC11azQzMDExL3ZvbHZvLWNsaWVudGxpYnMtYXBwcy9zcmMvbWFpbi9mcm9udGVuZC92b2x2by9zaGFyZWQvY29tcG9uZW50cy9zdHJ1Y3R1cmUvYnJlYWRjcnVtYi9icmVhZGNydW1iLnNjc3MiLCJmaWxlOi8vL2J1aWxkX3Jvb3QvYnVpbGQvZ2xvYmFsLXAxMTA0OTgtdWs0MzAxMS92b2x2by1jbGllbnRsaWJzLWFwcHMvc3JjL21haW4vZnJvbnRlbmQvdm9sdm8vc2hhcmVkL2NvbXBvbmVudHMvc3RydWN0dXJlL3NlYXJjaC9zZWFyY2guc2NzcyIsImZpbGU6Ly8vYnVpbGRfcm9vdC9idWlsZC9nbG9iYWwtcDExMDQ5OC11azQzMDExL3ZvbHZvLWNsaWVudGxpYnMtYXBwcy9zcmMvbWFpbi9mcm9udGVuZC92b2x2by9zaGFyZWQvY29tcG9uZW50cy9zdHJ1Y3R1cmUvZm9vdGVyL2Zvb3Rlci5zY3NzIiwiZmlsZTovLy9idWlsZF9yb290L2J1aWxkL2dsb2JhbC1wMTEwNDk4LXVrNDMwMTEvdm9sdm8tY2xpZW50bGlicy1hcHBzL3NyYy9tYWluL2Zyb250ZW5kL3ZvbHZvL3NoYXJlZC9jb21wb25lbnRzL3N0cnVjdHVyZS9tb2RhbC9tb2RhbC5zY3NzIiwiZmlsZTovLy9idWlsZF9yb290L2J1aWxkL2dsb2JhbC1wMTEwNDk4LXVrNDMwMTEvdm9sdm8tY2xpZW50bGlicy1hcHBzL3NyYy9tYWluL2Zyb250ZW5kL3ZvbHZvL2NvbW1vbi9zdHlsZXMvdmFyaWFibGVzL19taXNjLnNjc3MiLCJmaWxlOi8vL2J1aWxkX3Jvb3QvYnVpbGQvZ2xvYmFsLXAxMTA0OTgtdWs0MzAxMS92b2x2by1jbGllbnRsaWJzLWFwcHMvc3JjL21haW4vZnJvbnRlbmQvdm9sdm8vY29tbW9uL3N0eWxlcy92YXJpYWJsZXMvX3R5cG9ncmFwaHktc2V0dGluZ3Muc2NzcyIsImZpbGU6Ly8vYnVpbGRfcm9vdC9idWlsZC9nbG9iYWwtcDExMDQ5OC11azQzMDExL3ZvbHZvLWNsaWVudGxpYnMtYXBwcy9zcmMvbWFpbi9mcm9udGVuZC92b2x2by9zaGFyZWQvY29tcG9uZW50cy9jb250ZW50L2ltYWdlL2ltYWdlLnNjc3MiLCJmaWxlOi8vL2J1aWxkX3Jvb3QvYnVpbGQvZ2xvYmFsLXAxMTA0OTgtdWs0MzAxMS92b2x2by1jbGllbnRsaWJzLWFwcHMvc3JjL21haW4vZnJvbnRlbmQvdm9sdm8vY29tbW9uL3N0eWxlcy9hYnN0cmFjdC9taXhpbnMvX2NvbXBvbmVudC10b3AtYm90dG9tLW1hcmdpbi5zY3NzIiwiZmlsZTovLy9idWlsZF9yb290L2J1aWxkL2dsb2JhbC1wMTEwNDk4LXVrNDMwMTEvdm9sdm8tY2xpZW50bGlicy1hcHBzL3NyYy9tYWluL2Zyb250ZW5kL3ZvbHZvL3NoYXJlZC9jb21wb25lbnRzL2NvbnRlbnQvbGlzdC9saXN0LWljb25zLnNjc3MiLCJmaWxlOi8vL2J1aWxkX3Jvb3QvYnVpbGQvZ2xvYmFsLXAxMTA0OTgtdWs0MzAxMS92b2x2by1jbGllbnRsaWJzLWFwcHMvc3JjL21haW4vZnJvbnRlbmQvdm9sdm8vc2hhcmVkL2NvbXBvbmVudHMvY29udGVudC9saXN0L2xpc3Quc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxnQkFBZ0I7QUNFaEI7Ozs7O0NBQUE7QUNGQTs7O0NBQUE7QUNFQTs7RUFBQTtBQ0ZBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Q0FBQTtBQ0FBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Q0FBQTtBQ0FBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztDQUFBO0FDQUE7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0NBQUE7QUNBQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztDQUFBO0FDQUE7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztDQUFBO0FDQUE7Ozs7Ozs7Ozs7Ozs7Ozs7O0NBQUE7QUNXQTs7Ozs7Ozs7OztDQUFBO0FBbUJBOzs7Q0FBQTtBQVFBOzs7Q0FBQTtBQ3RDQSxzQkFBQTtBQUVBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztDQUFBO0FDRkEsc0JBQUE7QUFFQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Q0FBQTtBQ0ZBO3NFQUFBO0FBSUE7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Q0FBQTtBQ0pBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0NBQUE7QUNDQSx3Q0FBQTtBQ0RBOzs7Ozs7Ozs7Ozs7Q0FBQTtBQ0FBOzs7Ozs7Ozs7Ozs7OztDQUFBO0FDRUEsa0ZBQUE7QUFhQSx3RkFBQTtBQVdBLG9HQUFBO0FBVUEsd0RBQUE7QUNwQ0E7Ozs7Ozs7Ozs7Ozs7Ozs7Q0FBQTtBQ0FBOzs7Ozs7Ozs7Ozs7Ozs7Q0FBQTtBQ0FBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7OztDQUFBO0FDQUE7Ozs7Ozs7Ozs7O0NBQUE7QUNBQTs7Ozs7Ozs7Ozs7O0NBQUE7QUNBQTs7Ozs7Ozs7Ozs7OztFQUFBO0FDQUE7Ozs7Ozs7O0NBQUE7QUNBQTs7Ozs7Ozs7Ozs7Q0FBQTtBQ0lJO0VBQ0ksYUFBQTtFQUNBLHlCQUFBO0VBQ0EsbUJBQUE7RUFDQSxZQUFBO0VBQ0EsVUFBQTtBNUI0aUJSO0E2QnJmSTtFRDVEQTtJQVFRLHdCQUFBO0lBQ0Esa0JBQUE7RTVCNmlCVjtBQUNGO0E0QjNpQlE7RUFDSSwwQkFBQTtFQUNBLGdCQUFBO0E1QjZpQlo7QTZCL2ZJO0VEaERJO0lBS1EsMEJBQUE7RTVCOGlCZDtBQUNGO0E0QjVpQlk7RUFDSSx1QkFBQTtBNUI4aUJoQjtBNkJ2Z0JJO0VEeENRO0lBSVEsMEJBQUE7RTVCK2lCbEI7QUFDRjtBNEI1aUJZO0VBQ0ksa0JBQUE7RUFDQSxhQUFBO0VBQ0EsbUJBQUE7QTVCOGlCaEI7QTRCNWlCZ0I7RUFFSSxhQUFBO0E1QjZpQnBCO0E2QnBoQkk7RURoQ1E7SUFXUSxpQkFBQTtJQUNBLGNFUkQ7RTlCcWpCakI7QUFDRjtBNEJ6aUJRO0VBQ0ksV0FBQTtFQUNBLFlBQUE7RUFDQSxzQkFBQTtFQUNBLG9CQUFBO0E1QjJpQlo7QTRCdmlCSTtFQUNJLFlBQUE7QTVCeWlCUjtBNkJuaUJJO0VEUEE7SUFJUSxhQUFBO0U1QjBpQlY7QUFDRjs7QTRCcmlCSTtFQUNJLGtCQUFBO0VBQ0EsWUFBQTtFQUNBLGdCRXpDVztFRjBDWCx5QkFBQTtBNUJ3aUJSO0E2Qi9pQkk7RURHQTtJQU9RLDJCRzFFRDtJSDJFQyxjRzNFRDtFL0JvbkJUO0FBQ0Y7QTRCdmlCUTtFQUNJLHVCQUFBO0E1QnlpQlo7QTRCdGlCUTtFQUNJLGFBQUE7RUFDQSx1QkFBQTtFQUNBLHFCQUFBO0VBQ0EsdUJBQUE7RUFDQSx1QkFBQTtFQUNBLHlCQUFBO0E1QndpQlo7QTRCcmlCUTtFQUNJLG9CQUFBO0VBQ0EsZUFBQTtFQUNBLGtCQUFBO0VBQ0EsY0UzRE87QTlCa21CbkI7QTRCcmlCWTtFQUNJLHVCQUFBO0E1QnVpQmhCO0E2QnprQkk7RURpQ1E7SUFJUSx3QkFBQTtFNUJ3aUJsQjtBQUNGO0E0QnJpQlk7RUFDSSxhQUFBO0E1QnVpQmhCO0E0Qm5pQlE7RUFDSSxhQUFBO0VBQ0Esc0JBQUE7RUFDQSxjQUFBO0VBQ0Esa0JBQUE7RUFDQSxjRS9FTztFRmdGUCxlQUFBO0E1QnFpQlo7QTRCbmlCWTtFQUVJLGFBQUE7QTVCb2lCaEI7QTZCNWxCSTtFRDhDSTtJQWNRLHFCQUFBO0U1Qm9pQmQ7QUFDRjtBNEJqaUJRO0VBQ0kscUJBQUE7RUFDQSxrQkFBQTtBNUJtaUJaO0E2QnJtQkk7RUR3RVE7SUFDSSxxQkFBQTtJQUNBLDRDQUFBO0U1QmdpQmQ7QUFDRjs7QTZCM21CSTtFRXZEUTtJQUVRLGtCQUFBO0lBQ0Esc0JBQUE7RS9CcXFCbEI7QUFDRjs7QWdDanJCQTtFQUNJLDJFQUFBO0VBQ0EsNkRBQUE7RUFDQSwwREFBQTtFQUNBLGtGQUFBO0VBQ0Esa0NBQUE7RUFDQSxtQkFBQTtFQUNBLG9CQUFBO0VBQ0Esa0JBQUE7QWhDb3JCSjtBZ0NsckJJO0VBQ0ksMkVBQUE7RUFDQSwyRUFBQTtFQUNBLDZFQUFBO0VBQ0EsNEVBQUE7RUFDQSxrQkFBQTtBaENvckJSOztBZ0NockJBO0VBQ0ksNEJBQUE7QWhDbXJCSjs7QWlDM3JCQTs7O0VBR0ksc0JBQUE7QWpDOHJCSjs7QWlDcnJCQTtFWEdnQiw4QkFBQTtFQUFBLGVBQUE7RUFBQSxnQkFBQTtFQUFBLGdCQUFBO0VBQUEsaUNBQUE7RVdEWixTQUFBO0VBQ0EsVUFBQTtFQUNBLGNIUWU7RUdQZixzQkhEZTtFR0VmLDhCQUFBO0VBQ0EsNkNBQUE7RUFDQSxrQkFBQTtBakM0ckJKOztBaUMvcUJBO0VBQ0kscUJBQUE7QWpDa3JCSjs7QWlDenFCQTtFQUNJLGtCQUFBO0VBQ0EsZ0JBQUE7RUFDQSxjQUFBO0VBQ0EsOEJBQUE7RUFDQSxTQUFBO0FqQzRxQko7O0FpQ3pxQkE7RUFDSSxXQUFBO0FqQzRxQko7O0FpQ25xQkE7Ozs7OztFQU1JLGVBQUE7RUFDQSxjSHJEZTtBOUIydEJuQjs7QWlDbnFCQTtFQUNJLFdIeERlO0E5Qjh0Qm5CO0FpQ3BxQkk7Ozs7OztFQU1JLFdIaEVXO0E5QnN1Qm5COztBaUM3cEJBO0VBQ0ksZUFBQTtBakNncUJKOztBaUN2cEJBO0VBQ0ksMEJBQUE7RUFDQSx5Q0FBQTtVQUFBLGlDQUFBO0VBQ0EsWUFBQTtFQUNBLHNDQUFBO1VBQUEsOEJBQUE7QWpDMHBCSjs7QWlDdnBCQTtFQUNJLHNCQUFBO0VBQ0Esa0JBQUE7RUFDQSxvQkFBQTtBakMwcEJKOztBaUN2cEJBOztFQUVJLHVCQUFBO0VBQ0EsZ0JBQUE7QWpDMHBCSjs7QWlDdnBCQTs7O0VBR0ksZUFBQTtBakMwcEJKOztBaUN2cEJBOzs7O0VBSUksbUJBQUE7QWpDMHBCSjs7QWlDdnBCQTtFQUNJLGdCQUFBO0FqQzBwQko7O0FpQ3JwQkE7RUFDSSxzQkFBQTtBakN3cEJKOztBaUNycEJBO0VBQ0ksb0JBQUE7RUFDQSxnQkFBQTtBakN3cEJKOztBaUNucEJBOztFQUVJLG1CQUFBO0VBQ0EsNkJBQUE7QWpDc3BCSjs7QWlDanBCQTtFQUNJLGtCQUFBO0FqQ29wQko7O0FpQzlvQkE7O0VBRUksa0JBQUE7RUFDQSxpQkFBQTtFQUNBLGNBQUE7RUFDQSx3QkFBQTtBakNpcEJKOztBaUM5b0JBO0VBQ0ksd0JBQUE7QWpDaXBCSjs7QWlDOW9CQTtFQUNJLHlCQUFBO0FqQ2lwQko7O0FpQzVvQkE7RUFDSSxjSDlKZTtFRytKZixxQkhoSWM7RUdpSWQsNkJBQUE7QWpDK29CSjtBaUM3b0JJO0VBQ0kscUJIbklnQjtBOUJreEJ4Qjs7QWlDdm9CQTtFQUNJLG9CQUFBO0VBQ0EsZ0JBQUE7QWpDMG9CSjs7QWlDcG9CQTtFQUNJLHNCQUFBO0VBQ0EsZUFBQTtBakN1b0JKOztBaUNob0JBO0VBQ0kseUJBQUE7QWpDbW9CSjs7QWlDN25CQTtFQUNJLG1CQUFBO0FqQ2dvQko7O0FpQzNuQkE7Ozs7O0VBS0ksY0g5TWU7RUcrTWYsU0FBQTtFQUNBLG9CQUFBO0VBQ0Esa0JBQUE7RUFDQSxvQkFBQTtBakM4bkJKOztBaUN6bkJBOztFQUVJLGlCQUFBO0FqQzRuQko7O0FpQ3ZuQkE7O0VBRUksb0JBQUE7QWpDMG5CSjs7QWlDbm5CQTtFQUNJLGlCQUFBO0FqQ3NuQko7O0FpQy9tQkE7RUFDSSxhQUFBO0FqQ2tuQko7O0FpQzNtQkE7Ozs7RUFJSSwwQkFBQTtBakM4bUJKOztBaUN6bUJBO0VBQ0ksVUFBQTtFQUNBLGtCQUFBO0FqQzRtQko7O0FpQ25tQkE7Ozs7RUFJSSx3QkFBQTtFQUNBLGdCQUFBO0FqQ3NtQko7QWlDcG1CSTs7OztFQUNJLGVBQUE7QWpDeW1CUjs7QWlDcG1CSTtFQUNJLGVBQUE7QWpDdW1CUjs7QWlDaG1CQTtFQUNJLGNBQUE7RUFDQSxnQkFBQTtBakNtbUJKOztBaUN6bEJBO0VBQ0ksWUFBQTtFQUNBLFVBQUE7RUFDQSxTQUFBO0VBQ0EsU0FBQTtBakM0bEJKOztBaUN2bEJBO0VBQ0ksd0JBQUE7QWpDMGxCSjs7QWlDcGxCQTtFQUNJLGlCQUFBO0VBQ0EsY0FBQTtBakN1bEJKOztBaUM5a0JBO0VBQ0ksb0JBQUE7RUFDQSw2QkFBQTtFQUNBLHFCQUFBO0FqQ2lsQko7O0FpQzVrQkE7RUFDSSx3QkFBQTtBakMra0JKOztBaUMxa0JBO0VBQ0ksVUFBQTtBakM2a0JKOztBaUN2a0JBO0VBQ0ksYUFBQTtFQUNBLDBCQUFBO0FqQzBrQko7O0FpQ3JrQkE7RUFDSSxxQkFBQTtBakN3a0JKOztBaUNua0JBO0VBQ0ksa0JBQUE7RUFDQSxlQUFBO0FqQ3NrQko7O0FpQ2prQkE7RUFDSSxhQUFBO0FqQ29rQko7O0FpQ2prQkE7RUFDSSxjQUFBO0FqQ29rQko7O0FpQy9qQkE7RUFDSSx3QkFBQTtBakNra0JKOztBNkJsNkJJO0VLNURJO0lBQ0ksU0FBQTtFbENrK0JWO0VrQ3o5Qk07SUFDSSxvQkFBQTtFbEMyOUJWO0FBQ0Y7QTZCMzZCSTtFSy9ESjtJQW1CUSxXQUFBO0lBQ0EsaUJDaEJXO0lEaUJYLGVBQUE7SUFDQSxtQkFBQTtFbEMyOUJOO0FBQ0Y7O0FrQ3g5QkE7RUFDSSxhQUFBO0VBQ0EsZUFBQTtFQUNBLGVBQUE7RUFDQSxvQkFBQTtBbEMyOUJKO0FrQ3g5Qkk7RUFDSSxnQkFBQTtFQUNBLG9CQUFBO0FsQzA5QlI7QWtDdDlCSTtFQUNJLFdBQUE7RUFDQSxTQUFBO0VBQ0EsV0FBQTtBbEN3OUJSO0E2Qm44Qkk7RUtoQlE7SUFDSSw4QkFBQTtFbENzOUJkO0FBQ0Y7QWtDbDlCSTtFQUNJLFdBQUE7QWxDbzlCUjs7QW1CcGdDUTtFQUNJLG9CQUFBO0FuQnVnQ1o7QW1CeGdDUTtFQUNJLHFCQUFBO0FuQjBnQ1o7QW1CM2dDUTtFQUNJLFVBQUE7QW5CNmdDWjtBbUI5Z0NRO0VBQ0kscUJBQUE7QW5CZ2hDWjtBbUJqaENRO0VBQ0kscUJBQUE7QW5CbWhDWjtBbUJwaENRO0VBQ0ksVUFBQTtBbkJzaENaO0FtQnZoQ1E7RUFDSSxxQkFBQTtBbkJ5aENaO0FtQjFoQ1E7RUFDSSxxQkFBQTtBbkI0aENaO0FtQjdoQ1E7RUFDSSxVQUFBO0FuQitoQ1o7QW1CaGlDUTtFQUNJLHFCQUFBO0FuQmtpQ1o7QW1CbmlDUTtFQUNJLHFCQUFBO0FuQnFpQ1o7QW1CdGlDUTtFQUNJLFdBQUE7QW5Cd2lDWjtBbUI5aENRO0VBQ0ksdUJBQUE7QW5CZ2lDWjtBbUJqaUNRO0VBQ0ksa0NBQUE7QW5CbWlDWjtBbUJwaUNRO0VBQ0ksbUNBQUE7QW5Cc2lDWjtBbUJ2aUNRO0VBQ0ksd0JBQUE7QW5CeWlDWjtBbUIxaUNRO0VBQ0ksbUNBQUE7QW5CNGlDWjtBbUI3aUNRO0VBQ0ksbUNBQUE7QW5CK2lDWjtBbUJoakNRO0VBQ0ksd0JBQUE7QW5Ca2pDWjtBbUJuakNRO0VBQ0ksbUNBQUE7QW5CcWpDWjtBbUJ0akNRO0VBQ0ksbUNBQUE7QW5Cd2pDWjtBbUJ6akNRO0VBQ0ksd0JBQUE7QW5CMmpDWjtBbUI1akNRO0VBQ0ksbUNBQUE7QW5COGpDWjtBbUIvakNRO0VBQ0ksbUNBQUE7QW5CaWtDWjtBbUJsa0NRO0VBQ0kseUJBQUE7QW5Cb2tDWjs7QW1CL2lDSTtFQUNJLGtCQUFBO0VBQ0EsYUFBQTtBbkJrakNSOztBbUIvaUNJO0VBQ0ksa0JBQUE7RUFDQSxjQUFBO0FuQmtqQ1I7O0E2QmppQ0k7RVZ6REk7SUFDSSxvQkFBQTtFbkI4bENWO0VtQi9sQ007SUFDSSxxQkFBQTtFbkJpbUNWO0VtQmxtQ007SUFDSSxVQUFBO0VuQm9tQ1Y7RW1Ccm1DTTtJQUNJLHFCQUFBO0VuQnVtQ1Y7RW1CeG1DTTtJQUNJLHFCQUFBO0VuQjBtQ1Y7RW1CM21DTTtJQUNJLFVBQUE7RW5CNm1DVjtFbUI5bUNNO0lBQ0kscUJBQUE7RW5CZ25DVjtFbUJqbkNNO0lBQ0kscUJBQUE7RW5CbW5DVjtFbUJwbkNNO0lBQ0ksVUFBQTtFbkJzbkNWO0VtQnZuQ007SUFDSSxxQkFBQTtFbkJ5bkNWO0VtQjFuQ007SUFDSSxxQkFBQTtFbkI0bkNWO0VtQjduQ007SUFDSSxXQUFBO0VuQituQ1Y7RW1Ccm5DTTtJQUNJLHVCQUFBO0VuQnVuQ1Y7RW1CeG5DTTtJQUNJLGtDQUFBO0VuQjBuQ1Y7RW1CM25DTTtJQUNJLG1DQUFBO0VuQjZuQ1Y7RW1COW5DTTtJQUNJLHdCQUFBO0VuQmdvQ1Y7RW1Cam9DTTtJQUNJLG1DQUFBO0VuQm1vQ1Y7RW1CcG9DTTtJQUNJLG1DQUFBO0VuQnNvQ1Y7RW1Cdm9DTTtJQUNJLHdCQUFBO0VuQnlvQ1Y7RW1CMW9DTTtJQUNJLG1DQUFBO0VuQjRvQ1Y7RW1CN29DTTtJQUNJLG1DQUFBO0VuQitvQ1Y7RW1CaHBDTTtJQUNJLHdCQUFBO0VuQmtwQ1Y7RW1CbnBDTTtJQUNJLG1DQUFBO0VuQnFwQ1Y7RW1CdHBDTTtJQUNJLG1DQUFBO0VuQndwQ1Y7RW1CenBDTTtJQUNJLHlCQUFBO0VuQjJwQ1Y7RW1CdG9DRTtJQUNJLGtCQUFBO0lBQ0EsYUFBQTtFbkJ3b0NOO0VtQnJvQ0U7SUFDSSxrQkFBQTtJQUNBLGNBQUE7RW5CdW9DTjtBQUNGO0E2QnZuQ0k7RVZ6REk7SUFDSSxvQkFBQTtFbkJtckNWO0VtQnByQ007SUFDSSxxQkFBQTtFbkJzckNWO0VtQnZyQ007SUFDSSxVQUFBO0VuQnlyQ1Y7RW1CMXJDTTtJQUNJLHFCQUFBO0VuQjRyQ1Y7RW1CN3JDTTtJQUNJLHFCQUFBO0VuQityQ1Y7RW1CaHNDTTtJQUNJLFVBQUE7RW5Ca3NDVjtFbUJuc0NNO0lBQ0kscUJBQUE7RW5CcXNDVjtFbUJ0c0NNO0lBQ0kscUJBQUE7RW5Cd3NDVjtFbUJ6c0NNO0lBQ0ksVUFBQTtFbkIyc0NWO0VtQjVzQ007SUFDSSxxQkFBQTtFbkI4c0NWO0VtQi9zQ007SUFDSSxxQkFBQTtFbkJpdENWO0VtQmx0Q007SUFDSSxXQUFBO0VuQm90Q1Y7RW1CMXNDTTtJQUNJLHVCQUFBO0VuQjRzQ1Y7RW1CN3NDTTtJQUNJLGtDQUFBO0VuQitzQ1Y7RW1CaHRDTTtJQUNJLG1DQUFBO0VuQmt0Q1Y7RW1CbnRDTTtJQUNJLHdCQUFBO0VuQnF0Q1Y7RW1CdHRDTTtJQUNJLG1DQUFBO0VuQnd0Q1Y7RW1CenRDTTtJQUNJLG1DQUFBO0VuQjJ0Q1Y7RW1CNXRDTTtJQUNJLHdCQUFBO0VuQjh0Q1Y7RW1CL3RDTTtJQUNJLG1DQUFBO0VuQml1Q1Y7RW1CbHVDTTtJQUNJLG1DQUFBO0VuQm91Q1Y7RW1CcnVDTTtJQUNJLHdCQUFBO0VuQnV1Q1Y7RW1CeHVDTTtJQUNJLG1DQUFBO0VuQjB1Q1Y7RW1CM3VDTTtJQUNJLG1DQUFBO0VuQjZ1Q1Y7RW1COXVDTTtJQUNJLHlCQUFBO0VuQmd2Q1Y7RW1CM3RDRTtJQUNJLGtCQUFBO0lBQ0EsYUFBQTtFbkI2dENOO0VtQjF0Q0U7SUFDSSxrQkFBQTtJQUNBLGNBQUE7RW5CNHRDTjtBQUNGO0FrQ25zQ0E7RUFDSSx5QkFBQTtBbENxc0NKOztBa0Noc0NJO0VBQ0ksZUFBQTtFQUNBLG9CQUFBO0FsQ21zQ1I7QTZCcHRDSTtFS2VBO0loQi9EQSxXQUFBO0lBQ0EsZUFBQTtJQUNBLDBDQUFBO0VsQnd3Q0Y7QUFDRjtBNkIzdENJO0VLd0JBO0loQnhFQSxXQUFBO0lBQ0EsZUFBQTtJQUNBLDJDQUFBO0VsQit3Q0Y7QUFDRjs7QTZCbHVDSTtFS2dDSjtJQUVRLGlCQzdGVztJRDhGWCxlQUFBO0lBQ0EsbUJBQUE7RWxDcXNDTjtBQUNGOztBa0Nqc0NBO0VBQ0ksa0JFbkdlO0VGb0dmLGdCQUFBO0FsQ29zQ0o7O0FxQ3Z5Q0E7RUFDSSxtQ0FBQTtFQUNBLGlJQUNJO0VBQ0osbUJBQUE7RUFDQSxrQkFBQTtFQUNBLGtCQUFBO0VBQ0Esd0JBQUEsRUFBQSxpQkFBQTtBckN5eUNKO0FxQ3R5Q0E7RUFDSSx3QkFBQTtFQUNBLG1IQUNJO0VBQ0osbUJBQUE7RUFDQSxrQkFBQTtFQUNBLHNCQUFBO0VBQ0EsMEJBQUEsRUFBQSxrQkFBQTtBckN1eUNKO0FxQ3B5Q0E7RUFDSSx3QkFBQTtFQUNBLG9IQUNJO0VBQ0osZ0JBQUE7RUFDQSxrQkFBQTtFQUNBLHNCQUFBO0VBQ0EsMEJBQUEsRUFBQSxrQkFBQTtBckNxeUNKO0FxQ2x5Q0E7RUFDSSw4QkFBQTtFQUNBLGlIQUNJO0VBQ0osZ0JBQUE7RUFDQSxrQkFBQTtFQUNBLHNCQUFBO0VBQ0EsMEJBQUEsRUFBQSxrQkFBQTtBckNteUNKO0FxQ2h5Q0E7RUFDSSw2QkFBQTtFQUNBLG9IQUNJO0VBQ0osZ0JBQUE7RUFDQSxrQkFBQTtFQUNBLHNCQUFBO0VBQ0EsMEJBQUEsRUFBQSxrQkFBQTtBckNpeUNKO0FxQzl4Q0E7RUFDSSw2QkFBQTtFQUNBLHdIQUNJO0VBQ0osbUJBQUE7RUFDQSxrQkFBQTtFQUNBLHNCQUFBO0FyQyt4Q0o7QXFDNXhDQTtFQUNJLDZCQUFBO0VBQ0Esd0hBQ0k7RUFDSixnQkFBQTtFQUNBLGtCQUFBO0VBQ0Esc0JBQUE7QXJDNnhDSjtBcUMxeENBO0VBQ0ksa0NBQUE7RUFDQSxxSEFDSTtFQUNKLG1CQUFBO0VBQ0Esa0JBQUE7RUFDQSxzQkFBQTtBckMyeENKO0FxQ3h4Q0E7RUFDSSxpQ0FBQTtFQUNBLG9IQUNJO0VBQ0osbUJBQUE7RUFDQSxrQkFBQTtFQUNBLHNCQUFBO0FyQ3l4Q0o7QXFDdHhDQTtFQUNJLGdDQUFBO0VBQ0EsbUhBQ0k7RUFDSixtQkFBQTtFQUNBLGtCQUFBO0VBQ0Esc0JBQUE7QXJDdXhDSjtBcUNweENBO0VBQ0ksOEJBQUE7RUFDQSx1R0FDSTtFQUNKLG1CQUFBO0VBQ0Esa0JBQUE7RUFDQSxzQkFBQTtBckNxeENKO0FxQ2x4Q0E7RUFDSSxnQ0FBQTtFQUNBLHlHQUNJO0VBQ0osbUJBQUE7RUFDQSxrQkFBQTtFQUNBLHNCQUFBO0FyQ214Q0o7QXFDaHhDQTtFQUNJLCtCQUFBO0VBQ0EsMEdBQ0k7RUFDSixtQkFBQTtFQUNBLGtCQUFBO0VBQ0Esc0JBQUE7QXJDaXhDSjtBcUM5d0NBO0VBQ0ksa0NBQUE7RUFDQSxrQkFBQTtFQUNBLGdCQUFBO0VBQ0EsbUJBQUE7RUFDQSxnVkFDSTtBckMrd0NSO0FxQzF3Q0E7RUFDSSxtQ0FBQTtFQUNBLGtCQUFBO0VBQ0EsZ0JBQUE7RUFDQSxtQkFBQTtFQUNBLHNWQUNJO0FyQzJ3Q1I7QXFDdHdDQTtFQUNJLGlDQUFBO0VBQ0Esa0JBQUE7RUFDQSxnQkFBQTtFQUNBLG1CQUFBO0VBQ0EsMFVBQ0k7QXJDdXdDUjtBcUNsd0NBO0VBQ0ksMkJBQUE7RUFDQSwyR0FBQTtFQUNBLGdCQUFBO0VBQ0Esa0JBQUE7QXJDb3dDSjtBcUNqd0NBO0VBQ0ksNkJBQUE7RUFDQSw2R0FBQTtFQUNBLGdCQUFBO0VBQ0Esa0JBQUE7QXJDbXdDSjtBcUNod0NBO0VBQ0ksNEJBQUE7RUFDQSw0R0FBQTtFQUNBLGdCQUFBO0VBQ0Esa0JBQUE7QXJDa3dDSjtBcUMvdkNBO0VBQ0ksMEJBQUE7RUFDQSwwR0FBQTtFQUNBLGdCQUFBO0VBQ0Esa0JBQUE7QXJDaXdDSjtBc0M3N0NBO0VBQ0k7SUFDSSx1QkFBQTtFdEMrN0NOO0VzQzU3Q0U7SUFDSSx5QkFBQTtFdEM4N0NOO0FBQ0Y7QXVDcjhDQTtFQUNJLHlCQUFBO0VBQ0Esb1FBQ0k7RUFFSixtQkFBQTtFQUNBLGtCQUFBO0VBQ0Esa0JBQUE7QXZDcThDSjtBd0M1OENBO0VBQ0kseUJBQUE7RUFDQSxXQUFBO0VBQ0Esa0JBQUE7RUFDQSxtQkFBQTtFQUNBLG9CQUFBO0VBQ0Esb0JBQUE7RUFDQSxjQUFBO0VBQ0Esb0JBQUE7RUFDQSxxQkFBQTtFQUVBLG1DQUFBO0VBQ0Esa0NBQUE7QXhDNjhDSjs7QXlDdDlDRTtFQUNFLGdCQ0dLO0ExQ3M5Q1Q7O0F5Q3I5Q0U7RUFDRSxnQkNETTtFREVOLGNYMkJlO0E5QjY3Q25COztBZ0JoNENJO0VBQ0kseUJjOURXO0VkK0RYLFdBQUE7RUFDQSxxQkFBQTtFQUNBLDhGQUFBO1VBQUEsc0ZBQUE7RUFDQSw4QkFBQTtVQUFBLHNCQUFBO0VBQ0Esd0JBQUE7VUFBQSxnQkFBQTtFQUNBLG9CQUFBO0VBVUkseUJBQUE7RUFDQSwwQkFBQTtBaEIwM0NaO0FnQm40Q1E7RUFUSjtJQVVRLDhGQUFBO1lBQUEsc0ZBQUE7RWhCczRDVjtBQUNGOztBeUM3OUNFO0VBQ0UsZ0JDYmdCO0VEY2hCLGNYYWU7QTlCbTlDbkI7O0F5QzU5Q0U7RUFDRSxnQkNsQmdCO0VEbUJoQixjWGhCZ0I7QTlCKytDcEI7O0F5QzM5Q0U7RUFDRSxnQkN2Qlk7QTFDcS9DaEI7O0F5QzE5Q0U7RUFDRSxnQkMzQnFCO0VENEJyQixjWEplO0E5QmkrQ25COztBeUN6OUNFO0VBQ0UsZ0JDaENzQjtFRGlDdEIsY1hWZTtBOUJzK0NuQjs7QXlDeDlDRTtFQUNFLGdCQ3JDbUI7RURzQ25CLGNYaEJlO0E5QjIrQ25COztBeUN2OUNFO0VBQ0UsZ0JDMUNxQjtFRDJDckIsY1h0QmU7QTlCZy9DbkI7O0F5Q3Q5Q0U7RUFDRSxnQkMvQ2U7QTFDd2dEbkI7O0FnQnY3Q0k7RUFDSSx5QmM5RFc7RWQrRFgsV0FBQTtFQUNBLHFCQUFBO0VBQ0EsZ0dBQUE7VUFBQSx3RkFBQTtFQUNBLDhCQUFBO1VBQUEsc0JBQUE7RUFDQSx3QkFBQTtVQUFBLGdCQUFBO0VBQ0Esb0JBQUE7RUFVSSx5QkFBQTtFQUNBLDBCQUFBO0FoQmk3Q1o7QWdCMTdDUTtFQVRKO0lBVVEsZ0dBQUE7WUFBQSx3RkFBQTtFaEI2N0NWO0FBQ0Y7O0F5Qzk5Q0U7RUFDRSxnQkMxRGE7QTFDMmhEakI7O0FnQjU4Q0k7O0VBQ0kseUJjOURXO0VkK0RYLFdBQUE7RUFDQSxxQkFBQTtFQUNBLGtHQUFBO1VBQUEsMEZBQUE7RUFDQSw4QkFBQTtVQUFBLHNCQUFBO0VBQ0Esd0JBQUE7VUFBQSxnQkFBQTtFQUNBLG9CQUFBO0VBVUkseUJBQUE7RUFDQSwwQkFBQTtBaEJ1OENaO0FnQmg5Q1E7RUFUSjs7SUFVUSxrR0FBQTtZQUFBLDBGQUFBO0VoQm85Q1Y7QUFDRjs7QWdCLzlDSTtFQUNJLHlCYzlEVztFZCtEWCxXQUFBO0VBQ0EscUJBQUE7RUFDQSxvR0FBQTtVQUFBLDRGQUFBO0VBQ0EsOEJBQUE7VUFBQSxzQkFBQTtFQUNBLHdCQUFBO1VBQUEsZ0JBQUE7RUFDQSxvQkFBQTtFQVVJLHlCQUFBO0VBQ0EsMEJBQUE7QWhCeTlDWjtBZ0JsK0NRO0VBVEo7SUFVUSxvR0FBQTtZQUFBLDRGQUFBO0VoQnErQ1Y7QUFDRjs7QXlDaC9DRTtFQUNFLGdCQzVFTztBMUMrakRYOztBeUMvK0NFO0VBQ0UsZ0JDaEZNO0ExQ2trRFY7O0F5QzkrQ0U7RUFDRSxnQkNwRlk7QTFDcWtEaEI7O0F5QzcrQ0U7RUFDRSxnQkN4Rk87QTFDd2tEWDs7QXlDNStDRTtFQUNFLGdCQzVGSztBMUMya0RUOztBZ0JwZ0RJO0VBQ0kseUJjOURXO0VkK0RYLFdBQUE7RUFDQSxxQkFBQTtFQUNBLHdHQUFBO1VBQUEsZ0dBQUE7RUFDQSw4QkFBQTtVQUFBLHNCQUFBO0VBQ0Esd0JBQUE7VUFBQSxnQkFBQTtFQUNBLG9CQUFBO0VBVUkseUJBQUE7RUFDQSwwQkFBQTtBaEI4L0NaO0FnQnZnRFE7RUFUSjtJQVVRLHdHQUFBO1lBQUEsZ0dBQUE7RWhCMGdEVjtBQUNGOztBeUNwL0NFO0VBQ0UsZ0JDdkdTO0ExQzhsRGI7O0F5Q24vQ0U7RUFDRSxnQkMzR2M7QTFDaW1EbEI7O0FnQjdoREk7O0VBQ0kseUJjOURXO0VkK0RYLFdBQUE7RUFDQSxxQkFBQTtFQUNBLDRGQUFBO1VBQUEsb0ZBQUE7RUFDQSw4QkFBQTtVQUFBLHNCQUFBO0VBQ0Esd0JBQUE7VUFBQSxnQkFBQTtFQUNBLG9CQUFBO0VBVUkseUJBQUE7RUFDQSwwQkFBQTtBaEJ3aERaO0FnQmppRFE7RUFUSjs7SUFVUSw0RkFBQTtZQUFBLG9GQUFBO0VoQnFpRFY7QUFDRjs7QXlDNS9DRTtFQUNFLGdCQ3ZITztBMUNzbkRYOztBeUMzL0NFO0VBQ0UsZ0JDM0hTO0ExQ3luRGI7O0FnQnhqREk7RUFDSSx5QmM5RFc7RWQrRFgsV0FBQTtFQUNBLHFCQUFBO0VBQ0EsOEZBQUE7VUFBQSxzRkFBQTtFQUNBLDhCQUFBO1VBQUEsc0JBQUE7RUFDQSx3QkFBQTtVQUFBLGdCQUFBO0VBQ0Esb0JBQUE7RUFVSSx5QkFBQTtFQUNBLDBCQUFBO0FoQmtqRFo7QWdCM2pEUTtFQVRKO0lBVVEsOEZBQUE7WUFBQSxzRkFBQTtFaEI4akRWO0FBQ0Y7O0F5Q25nREU7RUFDRSxnQkN0SVU7QTFDNG9EZDs7QXlDbGdERTtFQUNFLGdCQzFJVTtBMUMrb0RkOztBeUNqZ0RFO0VBQ0UsZ0JDOUlLO0ExQ2twRFQ7O0F5Q2hnREU7RUFDRSxZQ2xKaUI7QTFDcXBEckI7O0F5Qy8vQ0U7RUFDRSxZQ3RKbUI7QTFDd3BEdkI7O0F5QzkvQ0U7RUFDRSxZQzFKb0I7QTFDMnBEeEI7O0F5QzcvQ0U7RUFDRSxZQzlKbUI7QTFDOHBEdkI7O0F5QzUvQ0U7RUFDRSxZQ2xLb0I7QTFDaXFEeEI7O0F5QzMvQ0U7RUFDRSxZQ3RLdUI7QTFDb3FEM0I7O0F5QzEvQ0U7RUFDRSxZQzFLZ0I7QTFDdXFEcEI7O0F5Q3ovQ0U7RUFDRSxnQkM5S1U7QTFDMHFEZDs7QXlDeC9DRTtFQUNFLGdCQ2xMUTtBMUM2cURaOztBeUN2L0NFO0VBQ0UsWUN0TFk7QTFDZ3JEaEI7O0F5Q3QvQ0U7RUFDRSxZQzFMYTtBMUNtckRqQjs7QXlDci9DRTtFQUNFLFlDOUxZO0ExQ3NyRGhCOztBeUNwL0NFO0VBQ0UsWUNsTWE7QTFDeXJEakI7O0F5Q24vQ0U7RUFDRSxZQ3RNb0I7QTFDNHJEeEI7O0F5Q2wvQ0U7RUFDRSxZQzFNbUI7QTFDK3JEdkI7O0F5Q2ovQ0U7RUFDRSxnQkM5TWM7QTFDa3NEbEI7O0F5Q2gvQ0U7RUFDRSxnQkNsTmE7QTFDcXNEakI7O0F5Qy8rQ0U7RUFDRSxnQkN0TlM7QTFDd3NEYjs7QXlDOStDRTtFQUNFLGdCQzFOUTtBMUMyc0RaOztBeUM3K0NFO0VBQ0UsZ0JDN05RO0ExQzZzRFo7O0F5QzUrQ0U7RUFDRSxnQkNoTlU7RURpTlYsY1h4UGU7QTlCdXVEbkI7O0F5QzMrQ0U7RUFDRSxnQkN0T1M7QTFDb3REYjs7QXlDMStDRTtFQUNFLGdCQzFPTztBMUN1dERYOztBeUN6K0NFO0VBQ0UsZ0JDOU9VO0ExQzB0RGQ7O0F5Q3grQ0U7RUFDRSxnQkNsUGM7QTFDNnREbEI7O0F5Q3YrQ0U7RUFDRSxnQkN0UGU7QTFDZ3VEbkI7O0F5Q3QrQ0U7RUFDRSxnQkMxUGU7QTFDbXVEbkI7O0F5Q3IrQ0U7RUFDRSxnQkM5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O0VBQW1DLGdCQUFBO0F2RCtuRW5DOztBdUQ5bkVBO0VBQXNDLGdCQUFBO0F2RGtvRXRDOztBdURqb0VBO0VBQW1DLGdCQUFBO0F2RHFvRW5DOztBdURwb0VBO0VBQXVDLGdCQUFBO0F2RHdvRXZDOztBdUR2b0VBO0VBQXNDLGdCQUFBO0F2RDJvRXRDOztBdUQxb0VBO0VBQWdFLGdCQUFBO0F2RDhvRWhFOztBdUQ3b0VBO0VBQW1DLGdCQUFBO0F2RGlwRW5DOztBdURocEVBO0VBQW1DLGdCQUFBO0F2RG9wRW5DOztBdURucEVBO0VBQW9DLGdCQUFBO0F2RHVwRXBDOztBdUR0cEVBO0VBQXNDLGdCQUFBO0F2RDBwRXRDOztBdUR6cEVBO0VBQThDLGdCQUFBO0F2RDZwRTlDOztBdUQ1cEVBO0VBQThDLGdCQUFBO0F2RGdxRTlDOztBdUQvcEVBO0VBQStDLGdCQUFBO0F2RG1xRS9DOztBdURscUVBO0VBQTRDLGdCQUFBO0F2RHNxRTVDOztBdURycUVBO0VBQXVDLGdCQUFBO0F2RHlxRXZDOztBdUR4cUVBO0VBQXVDLGdCQUFBO0F2RDRxRXZDOztBdUQzcUVBO0VBQXdDLGdCQUFBO0F2RCtxRXhDOztBdUQ5cUVBO0VBQXFDLGdCQUFBO0F2RGtyRXJDOztBdURqckVBO0VBQWtDLGdCQUFBO0F2RHFyRWxDOztBdURwckVBO0VBQTBDLGdCQUFBO0F2RHdyRTFDOztBdUR2ckVBO0VBQW9DLGdCQUFBO0F2RDJyRXBDOztBdUQxckVBO0VBQWlDLGdCQUFBO0F2RDhyRWpDOztBdUQ3ckVBO0VBQXNDLGdCQUFBO0F2RGlzRXRDOztBdURoc0VBO0VBQTBDLGdCQUFBO0F2RG9zRTFDOztBdURuc0VBO0VBQWtDLGdCQUFBO0F2RHVzRWxDOztBdUR0c0VBO0VBQWtDLGdCQUFBO0F2RDBzRWxDOztBdUR6c0VBO0VBQXNDLGdCQUFBO0F2RDZzRXRDOztBdUQ1c0VBO0VBQXNDLGdCQUFBO0F2RGd0RXRDOztBdUQvc0VBO0VBQW9DLGdCQUFBO0F2RG10RXBDOztBdURsdEVBO0VBQW9DLGdCQUFBO0F2RHN0RXBDOztBdURydEVBO0VBQWtELGdCQUFBO0F2RHl0RWxEOztBdUR4dEVBO0VBQWtELGdCQUFBO0F2RDR0RWxEOztBdUQzdEVBO0VBQW1ELGdCQUFBO0F2RCt0RW5EOztBdUQ5dEVBO0VBQWdELGdCQUFBO0F2RGt1RWhEOztBdURqdUVBO0VBQThDLGdCQUFBO0F2RHF1RTlDOztBdURwdUVBO0VBQThDLGdCQUFBO0F2RHd1RTlDOztBdUR2dUVBO0VBQStDLGdCQUFBO0F2RDJ1RS9DOztBdUQxdUVBO0VBQTRDLGdCQUFBO0F2RDh1RTVDOztBdUQ3dUVBO0VBQXVDLGdCQUFBO0F2RGl2RXZDOztBdURodkVBO0VBQXVDLGdCQUFBO0F2RG92RXZDOztBdURudkVBO0VBQXdDLGdCQUFBO0F2RHV2RXhDOztBdUR0dkVBO0VBQXFDLGdCQUFBO0F2RDB2RXJDOztBdUR6dkVBO0VBQXVDLGdCQUFBO0F2RDZ2RXZDOztBdUQ1dkVBO0VBQXlDLGdCQUFBO0F2RGd3RXpDOztBdUQvdkVBO0VBQXlDLGdCQUFBO0F2RG13RXpDOztBdURsd0VBO0VBQXVDLGdCQUFBO0F2RHN3RXZDOztBdURyd0VBO0VBQXdELGdCQUFBO0F2RHl3RXhEOztBdUR4d0VBO0VBQXFDLGdCQUFBO0F2RDR3RXJDOztBdUQzd0VBO0VBQXVDLGdCQUFBO0F2RCt3RXZDOztBdUQ5d0VBO0VBQStCLGdCQUFBO0F2RGt4RS9COztBdURqeEVBO0VBQWtDLGdCQUFBO0F2RHF4RWxDOztBdURweEVBO0VBQXNDLGdCQUFBO0F2RHd4RXRDOztBdUR2eEVBO0VBQWlDLGdCQUFBO0F2RDJ4RWpDOztBdUQxeEVBO0VBQW9DLGdCQUFBO0F2RDh4RXBDOztBdUQ3eEVBO0VBQThDLGdCQUFBO0F2RGl5RTlDOztBdURoeUVBO0VBQXlDLGdCQUFBO0F2RG95RXpDOztBdURueUVBO0VBQW9DLGdCQUFBO0F2RHV5RXBDOztBdUR0eUVBO0VBQW1DLGdCQUFBO0F2RDB5RW5DOztBdUR6eUVBO0VBQWtDLGdCQUFBO0F2RDZ5RWxDOztBdUQ1eUVBO0VBQWdDLGdCQUFBO0F2RGd6RWhDOztBdUQveUVBO0VBQWlDLGdCQUFBO0F2RG16RWpDOztBdURsekVBO0VBQTBDLGdCQUFBO0F2RHN6RTFDOztBdURyekVBO0VBQXNDLGdCQUFBO0F2RHl6RXRDOztBdUR4ekVBO0VBQXFDLGdCQUFBO0F2RDR6RXJDOztBdUQzekVBO0VBQWtDLGdCQUFBO0F2RCt6RWxDOztBdUQ5ekVBO0VBQXFDLGdCQUFBO0F2RGswRXJDOztBdURqMEVBO0VBQXNDLGdCQUFBO0F2RHEwRXRDOztBdURwMEVBO0VBQWtDLGdCQUFBO0F2RHcwRWxDOztBdUR2MEVBO0VBQTBDLGdCQUFBO0F2RDIwRTFDOztBdUQxMEVBO0VBQStDLGdCQUFBO0F2RDgwRS9DOztBdUQ3MEVBO0VBQWdELGdCQUFBO0F2RGkxRWhEOztBdURoMUVBO0VBQWdDLGdCQUFBO0F2RG8xRWhDOztBdURuMUVBO0VBQXFDLGdCQUFBO0F2RHUxRXJDOztBdUR0MUVBO0VBQXFDLGdCQUFBO0F2RDAxRXJDOztBdUR6MUVBO0VBQW9DLGdCQUFBO0F2RDYxRXBDOztBdUQ1MUVBO0VBQWlDLGdCQUFBO0F2RGcyRWpDOztBdUQvMUVBO0VBQTBDLGdCQUFBO0F2RG0yRTFDOztBdURsMkVBO0VBQTRDLGdCQUFBO0F2RHMyRTVDOztBdURyMkVBO0VBQWlDLGdCQUFBO0F2RHkyRWpDOztBdUR4MkVBO0VBQTBDLGdCQUFBO0F2RDQyRTFDOztBdUQzMkVBO0VBQXlDLGdCQUFBO0F2RCsyRXpDOztBdUQ5MkVBO0VBQXlDLGdCQUFBO0F2RGszRXpDOztBdURqM0VBO0VBQTRDLGdCQUFBO0F2RHEzRTVDOztBdURwM0VBO0VBQW1ELGdCQUFBO0F2RHczRW5EOztBdUR2M0VBO0VBQXVDLGdCQUFBO0F2RDIzRXZDOztBdUQxM0VBO0VBQWdDLGdCQUFBO0F2RDgzRWhDOztBdUQ3M0VBO0VBQWlDLGdCQUFBO0F2RGk0RWpDOztBdURoNEVBO0VBQW9DLGdCQUFBO0F2RG80RXBDOztBdURuNEVBO0VBQTJDLGdCQUFBO0F2RHU0RTNDOztBdUR0NEVBO0VBQWlDLGdCQUFBO0F2RDA0RWpDOztBdUR6NEVBO0VBQXVDLGdCQUFBO0F2RDY0RXZDOztBdUQ1NEVBO0VBQXlDLGdCQUFBO0F2RGc1RXpDOztBdUQvNEVBO0VBQWtDLGdCQUFBO0F2RG01RWxDOztBdURsNUVBO0VBQW9DLGdCQUFBO0F2RHM1RXBDOztBdURyNUVBO0VBQW1DLGdCQUFBO0F2RHk1RW5DOztBdUR4NUVBO0VBQXNDLGdCQUFBO0F2RDQ1RXRDOztBdUQzNUVBO0VBQXVDLGdCQUFBO0F2RCs1RXZDOztBdUQ5NUVBO0VBQXNDLGdCQUFBO0F2RGs2RXRDOztBdURqNkVBO0VBQTBDLGdCQUFBO0F2RHE2RTFDOztBdURwNkVBO0VBQXNDLGdCQUFBO0F2RHc2RXRDOztBdUR2NkVBO0VBQW9DLGdCQUFBO0F2RDI2RXBDOztBdUQxNkVBO0VBQWlDLGdCQUFBO0F2RDg2RWpDOztBdUQ3NkVBO0VBQXNDLGdCQUFBO0F2RGk3RXRDOztBdURoN0VBO0VBQXVDLGdCQUFBO0F2RG83RXZDOztBdURuN0VBO0VBQW9DLGdCQUFBO0F2RHU3RXBDOztBdUR0N0VBO0VBQTBDLGdCQUFBO0F2RDA3RTFDOztBdUR6N0VBO0VBQWtDLGdCQUFBO0F2RDY3RWxDOztBdUQ1N0VBO0VBQWlDLGdCQUFBO0F2RGc4RWpDOztBdUQvN0VBO0VBQW9DLGdCQUFBO0F2RG04RXBDOztBdURsOEVBO0VBQXNDLGdCQUFBO0F2RHM4RXRDOztBdURyOEVBO0VBQXNDLGdCQUFBO0F2RHk4RXRDOztBdUR4OEVBO0VBQXdDLGdCQUFBO0F2RDQ4RXhDOztBdUQzOEVBO0VBQWlDLGdCQUFBO0F2RCs4RWpDOztBdUQ5OEVBO0VBQWlDLGdCQUFBO0F2RGs5RWpDOztBdURqOUVBO0VBQWlDLGdCQUFBO0F2RHE5RWpDOztBdURwOUVBO0VBQWlDLGdCQUFBO0F2RHc5RWpDOztBdUR2OUVBO0VBQWlDLGdCQUFBO0F2RDI5RWpDOztBdUQxOUVBO0VBQWlDLGdCQUFBO0F2RDg5RWpDOztBdUQ3OUVBO0VBQXNDLGdCQUFBO0F2RGkrRXRDOztBdURoK0VBO0VBQXlDLGdCQUFBO0F2RG8rRXpDOztBdURuK0VBO0VBQXNDLGdCQUFBO0F2RHUrRXRDOztBdUR0K0VBO0VBQXdDLGdCQUFBO0F2RDArRXhDOztBdUR6K0VBO0VBQXFDLGdCQUFBO0F2RDYrRXJDOztBdUQ1K0VBO0VBQXNDLGdCQUFBO0F2RGcvRXRDOztBdUQvK0VBO0VBQXVDLGdCQUFBO0F2RG0vRXZDOztBdURsL0VBO0VBQXdDLGdCQUFBO0F2RHMvRXhDOztBdURyL0VBO0VBQXlDLGdCQUFBO0F2RHkvRXpDOztBdUR4L0VBO0VBQXlDLGdCQUFBO0F2RDQvRXpDOztBdUQzL0VBO0VBQWdDLGdCQUFBO0F2RCsvRWhDOztBdUQ5L0VBO0VBQXFDLGdCQUFBO0F2RGtnRnJDOztBdURqZ0ZBO0VBQXVDLGdCQUFBO0F2RHFnRnZDOztBdURwZ0ZBO0VBQWtDLGdCQUFBO0F2RHdnRmxDOztBdUR2Z0ZBO0VBQW9DLGdCQUFBO0F2RDJnRnBDOztBdUQxZ0ZBO0VBQWtDLGdCQUFBO0F2RDhnRmxDOztBdUQ3Z0ZBO0VBQXdDLGdCQUFBO0F2RGloRnhDOztBdURoaEZBO0VBQXNDLGdCQUFBO0F2RG9oRnRDOztBdURuaEZBO0VBQThDLGdCQUFBO0F2RHVoRjlDOztBdUR0aEZBO0VBQTRDLGdCQUFBO0F2RDBoRjVDOztBdUR6aEZBO0VBQWtDLGdCQUFBO0F2RDZoRmxDOztBdUQ1aEZBO0VBQWtDLGdCQUFBO0F2RGdpRmxDOztBdUQvaEZBO0VBQWdDLGdCQUFBO0F2RG1pRmhDOztBdURsaUZBO0VBQW1DLGdCQUFBO0F2RHNpRm5DOztBdURyaUZBO0VBQWdDLGdCQUFBO0F2RHlpRmhDOztBdUR4aUZBO0VBQXFDLGdCQUFBO0F2RDRpRnJDOztBdUQzaUZBO0VBQXFDLGdCQUFBO0F2RCtpRnJDOztBdUQ5aUZBO0VBQXFDLGdCQUFBO0F2RGtqRnJDOztBdURqakZBO0VBQWlDLGdCQUFBO0F2RHFqRmpDOztBdURwakZBO0VBQTZDLGdCQUFBO0F2RHdqRjdDOztBdUR2akZBO0VBQWdDLGdCQUFBO0F2RDJqRmhDOztBdUQxakZBO0VBQW9DLGdCQUFBO0F2RDhqRnBDOztBdUQ3akZBO0VBQTBDLGdCQUFBO0F2RGlrRjFDOztBdURoa0ZBO0VBQXdDLGdCQUFBO0F2RG9rRnhDOztBdURua0ZBO0VBQXVDLGdCQUFBO0F2RHVrRnZDOztBdUR0a0ZBO0VBQXVDLGdCQUFBO0F2RDBrRnZDOztBdUR6a0ZBO0VBQXFDLGdCQUFBO0F2RDZrRnJDOztBdUQ1a0ZBO0VBQXlDLGdCQUFBO0F2RGdsRnpDOztBdUQva0ZBO0VBQTJDLGdCQUFBO0F2RG1sRjNDOztBdURsbEZBO0VBQXlDLGdCQUFBO0F2RHNsRnpDOztBdURybEZBO0VBQTJDLGdCQUFBO0F2RHlsRjNDOztBdUR4bEZBO0VBQTBDLGdCQUFBO0F2RDRsRjFDOztBdUQzbEZBO0VBQTJDLGdCQUFBO0F2RCtsRjNDOztBdUQ5bEZBO0VBQTBDLGdCQUFBO0F2RGttRjFDOztBdURqbUZBO0VBQW1DLGdCQUFBO0F2RHFtRm5DOztBdURwbUZBO0VBQXlDLGdCQUFBO0F2RHdtRnpDOztBdUR2bUZBO0VBQXVDLGdCQUFBO0F2RDJtRnZDOztBdUQxbUZBO0VBQWdELGdCQUFBO0F2RDhtRmhEOztBdUQ3bUZBO0VBQXVDLGdCQUFBO0F2RGluRnZDOztBdURobkZBO0VBQXFDLGdCQUFBO0F2RG9uRnJDOztBdURubkZBO0VBQXFDLGdCQUFBO0F2RHVuRnJDOztBdUR0bkZBO0VBQWdDLGdCQUFBO0F2RDBuRmhDOztBdUR6bkZBO0VBQW9DLGdCQUFBO0F2RDZuRnBDOztBdUQ1bkZBO0VBQXdDLGdCQUFBO0F2RGdvRnhDOztBdUQvbkZBO0VBQXNDLGdCQUFBO0F2RG1vRnRDOztBdURsb0ZBO0VBQXFDLGdCQUFBO0F2RHNvRnJDOztBdURyb0ZBO0VBQW9DLGdCQUFBO0F2RHlvRnBDOztBdUR4b0ZBO0VBQXVDLGdCQUFBO0F2RDRvRnZDOztBdUQzb0ZBO0VBQXVDLGdCQUFBO0F2RCtvRnZDOztBdUQ5b0ZBO0VBQXdDLGdCQUFBO0F2RGtwRnhDOztBdURqcEZBO0VBQThDLGdCQUFBO0F2RHFwRjlDOztBdURwcEZBO0VBQThDLGdCQUFBO0F2RHdwRjlDOztBdUR2cEZBO0VBQStDLGdCQUFBO0F2RDJwRi9DOztBdUQxcEZBO0VBQTRDLGdCQUFBO0F2RDhwRjVDOztBdUQ3cEZBO0VBQXFDLGdCQUFBO0F2RGlxRnJDOztBdURocUZBO0VBQW1DLGdCQUFBO0F2RG9xRm5DOztBdURucUZBO0VBQTRDLGdCQUFBO0F2RHVxRjVDOztBdUR0cUZBO0VBQXNDLGdCQUFBO0F2RDBxRnRDOztBdUR6cUZBO0VBQTBDLGdCQUFBO0F2RDZxRjFDOztBdUQ1cUZBO0VBQWdDLGdCQUFBO0F2RGdyRmhDOztBdUQvcUZBO0VBQTBDLGdCQUFBO0F2RG1yRjFDOztBdURsckZBO0VBQW9DLGdCQUFBO0F2RHNyRnBDOztBdURyckZBO0VBQXlDLGdCQUFBO0F2RHlyRnpDOztBdUR4ckZBO0VBQTJDLGdCQUFBO0F2RDRyRjNDOztBdUQzckZBO0VBQXdDLGdCQUFBO0F2RCtyRnhDOztBdUQ5ckZBO0VBQW1DLGdCQUFBO0F2RGtzRm5DOztBdURqc0ZBO0VBQTBDLGdCQUFBO0F2RHFzRjFDOztBdURwc0ZBO0VBQXNDLGdCQUFBO0F2RHdzRnRDOztBdUR2c0ZBO0VBQXNDLGdCQUFBO0F2RDJzRnRDOztBdUQxc0ZBO0VBQW9DLGdCQUFBO0F2RDhzRnBDOztBdUQ3c0ZBO0VBQXVDLGdCQUFBO0F2RGl0RnZDOztBdURodEZBO0VBQW1DLGdCQUFBO0F2RG90Rm5DOztBdURudEZBO0VBQXdDLGdCQUFBO0F2RHV0RnhDOztBdUR0dEZBO0VBQWtDLGdCQUFBO0F2RDB0RmxDOztBdUR6dEZBO0VBQXVDLGdCQUFBO0F2RDZ0RnZDOztBdUQ1dEZBO0VBQStDLGdCQUFBO0F2RGd1Ri9DOztBdUQvdEZBO0VBQTZDLGdCQUFBO0F2RG11RjdDOztBdURsdUZBO0VBQXVDLGdCQUFBO0F2RHN1RnZDOztBdURydUZBO0VBQXNDLGdCQUFBO0F2RHl1RnRDOztBdUR4dUZBO0VBQXVDLGdCQUFBO0F2RDR1RnZDOztBdUQzdUZBO0VBQXNDLGdCQUFBO0F2RCt1RnRDOztBdUQ5dUZBO0VBQWtDLGdCQUFBO0F2RGt2RmxDOztBdURqdkZBO0VBQXlDLGdCQUFBO0F2RHF2RnpDOztBdURwdkZBO0VBQXlDLGdCQUFBO0F2RHd2RnpDOztBdUR2dkZBO0VBQXlDLGdCQUFBO0F2RDJ2RnpDOztBdUQxdkZBO0VBQW1DLGdCQUFBO0F2RDh2Rm5DOztBdUQ3dkZBO0VBQWtDLGdCQUFBO0F2RGl3RmxDOztBdURod0ZBO0VBQXlDLGdCQUFBO0F2RG93RnpDOztBdURud0ZBO0VBQXdDLGdCQUFBO0F2RHV3RnhDOztBdUR0d0ZBO0VBQXVDLGdCQUFBO0F2RDB3RnZDOztBdUR6d0ZBO0VBQXlDLGdCQUFBO0F2RDZ3RnpDOztBdUQ1d0ZBO0VBQXVDLGdCQUFBO0F2RGd4RnZDOztBdUQvd0ZBO0VBQXdDLGdCQUFBO0F2RG14RnhDOztBdURseEZBO0VBQXVDLGdCQUFBO0F2RHN4RnZDOztBdURyeEZBO0VBQWdELGdCQUFBO0F2RHl4RmhEOztBdUR4eEZBO0VBQWdELGdCQUFBO0F2RDR4RmhEOztBdUQzeEZBO0VBQWlELGdCQUFBO0F2RCt4RmpEOztBdUQ5eEZBO0VBQThDLGdCQUFBO0F2RGt5RjlDOztBdURqeUZBO0VBQXlDLGdCQUFBO0F2RHF5RnpDOztBdURweUZBO0VBQXlDLGdCQUFBO0F2RHd5RnpDOztBdUR2eUZBO0VBQTBDLGdCQUFBO0F2RDJ5RjFDOztBdUQxeUZBO0VBQXVDLGdCQUFBO0F2RDh5RnZDOztBdUQ3eUZBO0VBQWtDLGdCQUFBO0F2RGl6RmxDOztBdURoekZBO0VBQW1DLGdCQUFBO0F2RG96Rm5DOztBdURuekZBO0VBQXVDLGdCQUFBO0F2RHV6RnZDOztBdUR0ekZBO0VBQW1DLGdCQUFBO0F2RDB6Rm5DOztBdUR6ekZBO0VBQW1DLGdCQUFBO0F2RDZ6Rm5DOztBdUQ1ekZBO0VBQXlDLGdCQUFBO0F2RGcwRnpDOztBdUQvekZBO0VBQWlDLGdCQUFBO0F2RG0wRmpDOztBdURsMEZBO0VBQTJDLGdCQUFBO0F2RHMwRjNDOztBdURyMEZBO0VBQXNDLGdCQUFBO0F2RHkwRnRDOztBdUR4MEZBO0VBQTRDLGdCQUFBO0F2RDQwRjVDOztBdUQzMEZBO0VBQTJDLGdCQUFBO0F2RCswRjNDOztBdUQ5MEZBO0VBQWtDLGdCQUFBO0F2RGsxRmxDOztBdURqMUZBO0VBQWtDLGdCQUFBO0F2RHExRmxDOztBdURwMUZBO0VBQThDLGdCQUFBO0F2RHcxRjlDOztBdUR2MUZBO0VBQWtDLGdCQUFBO0F2RDIxRmxDOztBdUQxMUZBO0VBQStDLGdCQUFBO0F2RDgxRi9DOztBdUQ3MUZBO0VBQTJDLGdCQUFBO0F2RGkyRjNDOztBdURoMkZBO0VBQXVDLGdCQUFBO0F2RG8yRnZDOztBdURuMkZBO0VBQTRDLGdCQUFBO0F2RHUyRjVDOztBdUR0MkZBO0VBQXVDLGdCQUFBO0F2RDAyRnZDOztBdUR6MkZBO0VBQWdELGdCQUFBO0F2RDYyRmhEOztBdUQ1MkZBO0VBQXNDLGdCQUFBO0F2RGczRnRDOztBdUQvMkZBO0VBQTJDLGdCQUFBO0F2RG0zRjNDOztBdURsM0ZBO0VBQTZDLGdCQUFBO0F2RHMzRjdDOztBdURyM0ZBO0VBQXVDLGdCQUFBO0F2RHkzRnZDOztBdUR4M0ZBO0VBQXVDLGdCQUFBO0F2RDQzRnZDOztBdUQzM0ZBO0VBQXlDLGdCQUFBO0F2RCszRnpDOztBdUQ5M0ZBO0VBQXFDLGdCQUFBO0F2RGs0RnJDOztBdURqNEZBO0VBQWlDLGdCQUFBO0F2RHE0RmpDOztBdURwNEZBO0VBQXdDLGdCQUFBO0F2RHc0RnhDOztBdUR2NEZBO0VBQW9DLGdCQUFBO0F2RDI0RnBDOztBdUQxNEZBO0VBQXFDLGdCQUFBO0F2RDg0RnJDOztBdUQ3NEZBO0VBQW1DLGdCQUFBO0F2RGk1Rm5DOztBdURoNUZBO0VBQWdDLGdCQUFBO0F2RG81RmhDOztBdURuNUZBO0VBQWlDLGdCQUFBO0F2RHU1RmpDOztBdUR0NUZBO0VBQWtDLGdCQUFBO0F2RDA1RmxDOztBdUR6NUZBO0VBQW9DLGdCQUFBO0F2RDY1RnBDOztBdUQ1NUZBO0VBQW9DLGdCQUFBO0F2RGc2RnBDOztBdUQvNUZBO0VBQXdDLGdCQUFBO0F2RG02RnhDOztBdURsNkZBO0VBQTJDLGdCQUFBO0F2RHM2RjNDOztBdURyNkZBO0VBQXlDLGdCQUFBO0F2RHk2RnpDOztBdUR4NkZBO0VBQTRDLGdCQUFBO0F2RDQ2RjVDOztBdUQzNkZBO0VBQTBDLGdCQUFBO0F2RCs2RjFDOztBdUQ5NkZBO0VBQXFDLGdCQUFBO0F2RGs3RnJDOztBdURqN0ZBO0VBQTRDLGdCQUFBO0F2RHE3RjVDOztBdURwN0ZBO0VBQXlDLGdCQUFBO0F2RHc3RnpDOztBdUR2N0ZBO0VBQW9DLGdCQUFBO0F2RDI3RnBDOztBdUQxN0ZBO0VBQXFDLGdCQUFBO0F2RDg3RnJDOztBdUQ3N0ZBO0VBQXlDLGdCQUFBO0F2RGk4RnpDOztBdURoOEZBO0VBQWdELGdCQUFBO0F2RG84RmhEOztBdURuOEZBO0VBQTJDLGdCQUFBO0F2RHU4RjNDOztBdUR0OEZBO0VBQXVDLGdCQUFBO0F2RDA4RnZDOztBdUR6OEZBO0VBQTJDLGdCQUFBO0F2RDY4RjNDOztBdUQ1OEZBO0VBQW1DLGdCQUFBO0F2RGc5Rm5DOztBdUQvOEZBO0VBQW1DLGdCQUFBO0F2RG05Rm5DOztBdURsOUZBO0VBQXdDLGdCQUFBO0F2RHM5RnhDOztBdURyOUZBO0VBQWlDLGdCQUFBO0F2RHk5RmpDOztBdUR4OUZBO0VBQXNDLGdCQUFBO0F2RDQ5RnRDOztBdUQzOUZBO0VBQTBDLGdCQUFBO0F2RCs5RjFDOztBdUQ5OUZBO0VBQWtDLGdCQUFBO0F2RGsrRmxDOztBdURqK0ZBO0VBQW1DLGdCQUFBO0F2RHErRm5DOztBdURwK0ZBO0VBQTZDLGdCQUFBO0F2RHcrRjdDOztBdUR2K0ZBO0VBQWdELGdCQUFBO0F2RDIrRmhEOztBdUQxK0ZBO0VBQWdELGdCQUFBO0F2RDgrRmhEOztBdUQ3K0ZBO0VBQW1ELGdCQUFBO0F2RGkvRm5EOztBdURoL0ZBO0VBQW1ELGdCQUFBO0F2RG8vRm5EOztBdURuL0ZBO0VBQWdELGdCQUFBO0F2RHUvRmhEOztBdUR0L0ZBO0VBQWdELGdCQUFBO0F2RDAvRmhEOztBdUR6L0ZBO0VBQW9ELGdCQUFBO0F2RDYvRnBEOztBdUQ1L0ZBO0VBQW1ELGdCQUFBO0F2RGdnR25EOztBdUQvL0ZBO0VBQWdELGdCQUFBO0F2RG1nR2hEOztBdURsZ0dBO0VBQXNELGdCQUFBO0F2RHNnR3REOztBdURyZ0dBO0VBQTJELGdCQUFBO0F2RHlnRzNEOztBdUR4Z0dBO0VBQW1ELGdCQUFBO0F2RDRnR25EOztBdUQzZ0dBO0VBQWtELGdCQUFBO0F2RCtnR2xEOztBdUQ5Z0dBO0VBQXdDLGdCQUFBO0F2RGtoR3hDOztBdURqaEdBO0VBQTBDLGdCQUFBO0F2RHFoRzFDOztBdURwaEdBO0VBQWlDLGdCQUFBO0F2RHdoR2pDOztBdUR2aEdBO0VBQXFDLGdCQUFBO0F2RDJoR3JDOztBdUQxaEdBO0VBQWtDLGdCQUFBO0F2RDhoR2xDOztBdUQ3aEdBO0VBQXVDLGdCQUFBO0F2RGlpR3ZDOztBdURoaUdBO0VBQWlDLGdCQUFBO0F2RG9pR2pDOztBdURuaUdBO0VBQWtDLGdCQUFBO0F2RHVpR2xDOztBdUR0aUdBO0VBQW1DLGdCQUFBO0F2RDBpR25DOztBdUR6aUdBO0VBQWlDLGdCQUFBO0F2RDZpR2pDOztBdUQ1aUdBO0VBQXFDLGdCQUFBO0F2RGdqR3JDOztBdUQvaUdBO0VBQWlDLGdCQUFBO0F2RG1qR2pDOztBdURsakdBO0VBQWtDLGdCQUFBO0F2RHNqR2xDOztBdURyakdBO0VBQWdDLGdCQUFBO0F2RHlqR2hDOztBdUR4akdBO0VBQXVDLGdCQUFBO0F2RDRqR3ZDOztBdUQzakdBO0VBQW9DLGdCQUFBO0F2RCtqR3BDOztBdUQ5akdBO0VBQTJDLGdCQUFBO0F2RGtrRzNDOztBdURqa0dBO0VBQXdDLGdCQUFBO0F2RHFrR3hDOztBdURwa0dBO0VBQXFDLGdCQUFBO0F2RHdrR3JDOztBdUR2a0dBO0VBQXFDLGdCQUFBO0F2RDJrR3JDOztBdUQxa0dBO0VBQWlDLGdCQUFBO0F2RDhrR2pDOztBdUQ3a0dBO0VBQW1DLGdCQUFBO0F2RGlsR25DOztBdURobEdBO0VBQXNDLGdCQUFBO0F2RG9sR3RDOztBdURubEdBO0VBQXFDLGdCQUFBO0F2RHVsR3JDOztBdUR0bEdBO0VBQXNDLGdCQUFBO0F2RDBsR3RDOztBdUR6bEdBO0VBQW9DLGdCQUFBO0F2RDZsR3BDOztBdUQ1bEdBO0VBQW9DLGdCQUFBO0F2RGdtR3BDOztBdUQvbEdBO0VBQWdDLGdCQUFBO0F2RG1tR2hDOztBdURsbUdBO0VBQXVDLGdCQUFBO0F2RHNtR3ZDOztBdURybUdBO0VBQXlDLGdCQUFBO0F2RHltR3pDOztBdUR4bUdBO0VBQWdDLGdCQUFBO0F2RDRtR2hDOztBdUQzbUdBO0VBQXNDLGdCQUFBO0F2RCttR3RDOztBdUQ5bUdBO0VBQXFDLGdCQUFBO0F2RGtuR3JDOztBdURqbkdBO0VBQWlDLGdCQUFBO0F2RHFuR2pDOztBdURwbkdBO0VBQXFDLGdCQUFBO0F2RHduR3JDOztBdUR2bkdBO0VBQW9DLGdCQUFBO0F2RDJuR3BDOztBdUQxbkdBO0VBQXNDLGdCQUFBO0F2RDhuR3RDOztBdUQ3bkdBO0VBQXNDLGdCQUFBO0F2RGlvR3RDOztBdURob0dBO0VBQXFDLGdCQUFBO0F2RG9vR3JDOztBdURub0dBO0VBQXFDLGdCQUFBO0F2RHVvR3JDOztBdUR0b0dBO0VBQXVDLGdCQUFBO0F2RDBvR3ZDOztBdUR6b0dBO0VBQXFDLGdCQUFBO0F2RDZvR3JDOztBdUQ1b0dBO0VBQWlDLGdCQUFBO0F2RGdwR2pDOztBdUQvb0dBO0VBQTBDLGdCQUFBO0F2RG1wRzFDOztBdURscEdBO0VBQStDLGdCQUFBO0F2RHNwRy9DOztBdURycEdBO0VBQXVDLGdCQUFBO0F2RHlwR3ZDOztBdUR4cEdBO0VBQW9DLGdCQUFBO0F2RDRwR3BDOztBdUQzcEdBO0VBQXNDLGdCQUFBO0F2RCtwR3RDOztBdUQ5cEdBO0VBQW9DLGdCQUFBO0F2RGtxR3BDOztBdURqcUdBO0VBQW1DLGdCQUFBO0F2RHFxR25DOztBdURwcUdBO0VBQWtDLGdCQUFBO0F2RHdxR2xDOztBdUR2cUdBO0VBQWdDLGdCQUFBO0F2RDJxR2hDOztBdUQxcUdBO0VBQW1DLGdCQUFBO0F2RDhxR25DOztBdUQ3cUdBO0VBQW1DLGdCQUFBO0F2RGlyR25DOztBdURockdBO0VBQWdDLGdCQUFBO0F2RG9yR2hDOztBdURuckdBO0VBQXdDLGdCQUFBO0F2RHVyR3hDOztBdUR0ckdBO0VBQWtDLGdCQUFBO0F2RDByR2xDOztBdUR6ckdBO0VBQTBDLGdCQUFBO0F2RDZyRzFDOztBdUQ1ckdBO0VBQW1DLGdCQUFBO0F2RGdzR25DOztBdUQvckdBO0VBQXdDLGdCQUFBO0F2RG1zR3hDOztBdURsc0dBO0VBQXNDLGdCQUFBO0F2RHNzR3RDOztBdURyc0dBO0VBQXVDLGdCQUFBO0F2RHlzR3ZDOztBdUR4c0dBO0VBQWlDLGdCQUFBO0F2RDRzR2pDOztBdUQzc0dBO0VBQXFDLGdCQUFBO0F2RCtzR3JDOztBdUQ5c0dBO0VBQTBDLGdCQUFBO0F2RGt0RzFDOztBdURqdEdBO0VBQTZDLGdCQUFBO0F2RHF0RzdDOztBdURwdEdBO0VBQW1DLGdCQUFBO0F2RHd0R25DOztBdUR2dEdBO0VBQXlDLGdCQUFBO0F2RDJ0R3pDOztBdUQxdEdBO0VBQXFDLGdCQUFBO0F2RDh0R3JDOztBdUQ3dEdBO0VBQTRDLGdCQUFBO0F2RGl1RzVDOztBdURodUdBO0VBQW9DLGdCQUFBO0F2RG91R3BDOztBdURudUdBO0VBQWlDLGdCQUFBO0F2RHV1R2pDOztBdUR0dUdBO0VBQTBDLGdCQUFBO0F2RDB1RzFDOztBdUR6dUdBO0VBQTJDLGdCQUFBO0F2RDZ1RzNDOztBdUQ1dUdBO0VBQW1DLGdCQUFBO0F2RGd2R25DOztBdUQvdUdBO0VBQXFDLGdCQUFBO0F2RG12R3JDOztBdURsdkdBO0VBQXFDLGdCQUFBO0F2RHN2R3JDOztBdURydkdBO0VBQTBDLGdCQUFBO0F2RHl2RzFDOztBdUR4dkdBO0VBQW9DLGdCQUFBO0F2RDR2R3BDOztBdUQzdkdBO0VBQW1DLGdCQUFBO0F2RCt2R25DOztBdUQ5dkdBO0VBQXVDLGdCQUFBO0F2RGt3R3ZDOztBdURqd0dBO0VBQWlDLGdCQUFBO0F2RHF3R2pDOztBdURwd0dBO0VBQWlDLGdCQUFBO0F2RHd3R2pDOztBdUR2d0dBO0VBQXdDLGdCQUFBO0F2RDJ3R3hDOztBdUQxd0dBO0VBQWlDLGdCQUFBO0F2RDh3R2pDOztBdUQ3d0dBO0VBQWdDLGdCQUFBO0F2RGl4R2hDOztBdURoeEdBO0VBQWtDLGdCQUFBO0F2RG94R2xDOztBdURueEdBO0VBQXNDLGdCQUFBO0F2RHV4R3RDOztBdUR0eEdBO0VBQXVDLGdCQUFBO0F2RDB4R3ZDOztBdUR6eEdBO0VBQXVDLGdCQUFBO0F2RDZ4R3ZDOztBdUQ1eEdBO0VBQWlDLGdCQUFBO0F2RGd5R2pDOztBdUQveEdBO0VBQWtDLGdCQUFBO0F2RG15R2xDOztBdURseUdBO0VBQW1DLGdCQUFBO0F2RHN5R25DOztBdURyeUdBO0VBQXFDLGdCQUFBO0F2RHl5R3JDOztBdUR4eUdBO0VBQTBDLGdCQUFBO0F2RDR5RzFDOztBdUQzeUdBO0VBQStDLGdCQUFBO0F2RCt5Ry9DOztBdUQ5eUdBO0VBQTRDLGdCQUFBO0F2RGt6RzVDOztBdURqekdBO0VBQW1DLGdCQUFBO0F2RHF6R25DOztBdURwekdBO0VBQW1DLGdCQUFBO0F2RHd6R25DOztBdUR2ekdBO0VBQW1DLGdCQUFBO0F2RDJ6R25DOztBdUQxekdBO0VBQW1DLGdCQUFBO0F2RDh6R25DOztBdUQ3ekdBO0VBQXFDLGdCQUFBO0F2RGkwR3JDOztBdURoMEdBO0VBQXFDLGdCQUFBO0F2RG8wR3JDOztBdURuMEdBO0VBQWlDLGdCQUFBO0F2RHUwR2pDOztBdUR0MEdBO0VBQXNDLGdCQUFBO0F2RDAwR3RDOztBdUR6MEdBO0VBQXFDLGdCQUFBO0F2RDYwR3JDOztBdUQ1MEdBO0VBQXlDLGdCQUFBO0F2RGcxR3pDOztBdUQvMEdBO0VBQXdDLGdCQUFBO0F2RG0xR3hDOztBdURsMUdBO0VBQStDLGdCQUFBO0F2RHMxRy9DOztBdURyMUdBO0VBQWlELGdCQUFBO0F2RHkxR2pEOztBdUR4MUdBO0VBQW1DLGdCQUFBO0F2RDQxR25DOztBdUQzMUdBO0VBQXVDLGdCQUFBO0F2RCsxR3ZDOztBdUQ5MUdBO0VBQThDLGdCQUFBO0F2RGsyRzlDOztBdURqMkdBO0VBQXlDLGdCQUFBO0F2RHEyR3pDOztBdURwMkdBO0VBQThDLGdCQUFBO0F2RHcyRzlDOztBdUR2MkdBO0VBQXFELGdCQUFBO0F2RDIyR3JEOztBdUQxMkdBO0VBQWdDLGdCQUFBO0F2RDgyR2hDOztBdUQ3MkdBO0VBQXdDLGdCQUFBO0F2RGkzR3hDOztBdURoM0dBO0VBQXNDLGdCQUFBO0F2RG8zR3RDOztBdURuM0dBO0VBQXFDLGdCQUFBO0F2RHUzR3JDOztBdUR0M0dBO0VBQXVDLGdCQUFBO0F2RDAzR3ZDOztBdUR6M0dBO0VBQStDLGdCQUFBO0F2RDYzRy9DOztBdUQ1M0dBO0VBQTRDLGdCQUFBO0F2RGc0RzVDOztBdUQvM0dBO0VBQWdDLGdCQUFBO0F2RG00R2hDOztBdURsNEdBO0VBQWlELGdCQUFBO0F2RHM0R2pEOztBdURyNEdBO0VBQTBDLGdCQUFBO0F2RHk0RzFDOztBdUR4NEdBO0VBQXlDLGdCQUFBO0F2RDQ0R3pDOztBdUQzNEdBO0VBQW1DLGdCQUFBO0F2RCs0R25DOztBdUQ5NEdBO0VBQWdDLGdCQUFBO0F2RGs1R2hDOztBdURqNUdBO0VBQW9DLGdCQUFBO0F2RHE1R3BDOztBdURwNUdBO0VBQXdDLGdCQUFBO0F2RHc1R3hDOztBdUR2NUdBO0VBQWtDLGdCQUFBO0F2RDI1R2xDOztBdUQxNUdBO0VBQW1DLGdCQUFBO0F2RDg1R25DOztBdUQ3NUdBO0VBQW1DLGdCQUFBO0F2RGk2R25DOztBdURoNkdBO0VBQXdDLGdCQUFBO0F2RG82R3hDOztBdURuNkdBO0VBQWtDLGdCQUFBO0F2RHU2R2xDOztBdUR0NkdBO0VBQWlDLGdCQUFBO0F2RDA2R2pDOztBdUR6NkdBO0VBQXFDLGdCQUFBO0F2RDY2R3JDOztBdUQ1NkdBO0VBQXlDLGdCQUFBO0F2RGc3R3pDOztBdUQvNkdBO0VBQXVDLGdCQUFBO0F2RG03R3ZDOztBdURsN0dBO0VBQXNDLGdCQUFBO0F2RHM3R3RDOztBdURyN0dBO0VBQTBDLGdCQUFBO0F2RHk3RzFDOztBdUR4N0dBO0VBQXFDLGdCQUFBO0F2RDQ3R3JDOztBdUQzN0dBO0VBQTBDLGdCQUFBO0F2RCs3RzFDOztBdUQ5N0dBO0VBQXVDLGdCQUFBO0F2RGs4R3ZDOztBdURqOEdBO0VBQXdDLGdCQUFBO0F2RHE4R3hDOztBdURwOEdBO0VBQXVDLGdCQUFBO0F2RHc4R3ZDOztBdUR2OEdBO0VBQXdDLGdCQUFBO0F2RDI4R3hDOztBdUQxOEdBO0VBQXlDLGdCQUFBO0F2RDg4R3pDOztBdUQ3OEdBO0VBQWdELGdCQUFBO0F2RGk5R2hEOztBdURoOUdBO0VBQXlDLGdCQUFBO0F2RG85R3pDOztBdURuOUdBO0VBQTZDLGdCQUFBO0F2RHU5RzdDOztBdUR0OUdBO0VBQXFDLGdCQUFBO0F2RDA5R3JDOztBdUR6OUdBO0VBQTRDLGdCQUFBO0F2RDY5RzVDOztBdUQ1OUdBO0VBQThDLGdCQUFBO0F2RGcrRzlDOztBdUQvOUdBO0VBQTJDLGdCQUFBO0F2RG0rRzNDOztBdURsK0dBO0VBQXdDLGdCQUFBO0F2RHMrR3hDOztBdURyK0dBO0VBQXVDLGdCQUFBO0F2RHkrR3ZDOztBdUR4K0dBO0VBQXNDLGdCQUFBO0F2RDQrR3RDOztBdUQzK0dBO0VBQWlDLGdCQUFBO0F2RCsrR2pDOztBdUQ5K0dBO0VBQXNDLGdCQUFBO0F2RGsvR3RDOztBdURqL0dBO0VBQWlDLGdCQUFBO0F2RHEvR2pDOztBdURwL0dBO0VBQW1DLGdCQUFBO0F2RHcvR25DOztBdUR2L0dBO0VBQXdDLGdCQUFBO0F2RDIvR3hDOztBdUQxL0dBO0VBQWlDLGdCQUFBO0F2RDgvR2pDOztBdUQ3L0dBO0VBQXFDLGdCQUFBO0F2RGlnSHJDOztBdURoZ0hBO0VBQThDLGdCQUFBO0F2RG9nSDlDOztBdURuZ0hBO0VBQW9DLGdCQUFBO0F2RHVnSHBDOztBdUR0Z0hBO0VBQTRDLGdCQUFBO0F2RDBnSDVDOztBdUR6Z0hBO0VBQXNDLGdCQUFBO0F2RDZnSHRDOztBdUQ1Z0hBO0VBQXdDLGdCQUFBO0F2RGdoSHhDOztBdUQvZ0hBO0VBQTRDLGdCQUFBO0F2RG1oSDVDOztBdURsaEhBO0VBQXVDLGdCQUFBO0F2RHNoSHZDOztBdURyaEhBO0VBQWlDLGdCQUFBO0F2RHloSGpDOztBdUR4aEhBO0VBQXdDLGdCQUFBO0F2RDRoSHhDOztBdUQzaEhBO0VBQWlDLGdCQUFBO0F2RCtoSGpDOztBdUQ5aEhBO0VBQTJDLGdCQUFBO0F2RGtpSDNDOztBdURqaUhBO0VBQXFDLGdCQUFBO0F2RHFpSHJDOztBdURwaUhBO0VBQWtDLGdCQUFBO0F2RHdpSGxDOztBdUR2aUhBO0VBQW1DLGdCQUFBO0F2RDJpSG5DOztBdUQxaUhBO0VBQXNDLGdCQUFBO0F2RDhpSHRDOztBdUQ3aUhBO0VBQW9DLGdCQUFBO0F2RGlqSHBDOztBdURoakhBO0VBQWdDLGdCQUFBO0F2RG9qSGhDOztBdURuakhBO0VBQW1DLGdCQUFBO0F2RHVqSG5DOztBdUR0akhBO0VBQXlDLGdCQUFBO0F2RDBqSHpDOztBdUR6akhBO0VBQXdDLGdCQUFBO0F2RDZqSHhDOztBdUQ1akhBO0VBQXdDLGdCQUFBO0F2RGdrSHhDOztBdUQvakhBO0VBQWlDLGdCQUFBO0F2RG1rSGpDOztBdURsa0hBO0VBQXlDLGdCQUFBO0F2RHNrSHpDOztBdURya0hBO0VBQTZDLGdCQUFBO0F2RHlrSDdDOztBdUR4a0hBO0VBQThDLGdCQUFBO0F2RDRrSDlDOztBdUQza0hBO0VBQW1ELGdCQUFBO0F2RCtrSG5EOztBdUQ5a0hBO0VBQXNDLGdCQUFBO0F2RGtsSHRDOztBdURqbEhBO0VBQXlDLGdCQUFBO0F2RHFsSHpDOztBdURwbEhBO0VBQTBDLGdCQUFBO0F2RHdsSDFDOztBdUR2bEhBO0VBQXlDLGdCQUFBO0F2RDJsSHpDOztBdUQxbEhBO0VBQTZDLGdCQUFBO0F2RDhsSDdDOztBdUQ3bEhBO0VBQXFDLGdCQUFBO0F2RGltSHJDOztBdURobUhBO0VBQW9DLGdCQUFBO0F2RG9tSHBDOztBdURubUhBO0VBQXVDLGdCQUFBO0F2RHVtSHZDOztBdUR0bUhBO0VBQTJDLGdCQUFBO0F2RDBtSDNDOztBdUR6bUhBO0VBQW9DLGdCQUFBO0F2RDZtSHBDOztBdUQ1bUhBO0VBQWlDLGdCQUFBO0F2RGduSGpDOztBdUQvbUhBO0VBQWtDLGdCQUFBO0F2RG1uSGxDOztBdURsbkhBO0VBQXVDLGdCQUFBO0F2RHNuSHZDOztBdURybkhBO0VBQW9DLGdCQUFBO0F2RHluSHBDOztBdUR4bkhBO0VBQTBDLGdCQUFBO0F2RDRuSDFDOztBdUQzbkhBO0VBQW1DLGdCQUFBO0F2RCtuSG5DOztBdUQ5bkhBO0VBQThDLGdCQUFBO0F2RGtvSDlDOztBdURqb0hBO0VBQTRDLGdCQUFBO0F2RHFvSDVDOztBdURwb0hBO0VBQW9DLGdCQUFBO0F2RHdvSHBDOztBdUR2b0hBO0VBQXFDLGdCQUFBO0F2RDJvSHJDOztBdUQxb0hBO0VBQWtDLGdCQUFBO0F2RDhvSGxDOztBdUQ3b0hBO0VBQWdDLGdCQUFBO0F2RGlwSGhDOztBdURocEhBO0VBQXVDLGdCQUFBO0F2RG9wSHZDOztBdURucEhBO0VBQXVDLGdCQUFBO0F2RHVwSHZDOztBdUR0cEhBO0VBQStCLGdCQUFBO0F2RDBwSC9COztBdUR6cEhBO0VBQXNDLGdCQUFBO0F2RDZwSHRDOztBdUQ1cEhBO0VBQWtDLGdCQUFBO0F2RGdxSGxDOztBdUQvcEhBO0VBQWlDLGdCQUFBO0F2RG1xSGpDOztBdURscUhBO0VBQWtDLGdCQUFBO0F2RHNxSGxDOztBdURycUhBO0VBQWdDLGdCQUFBO0F2RHlxSGhDOztBdUR4cUhBO0VBQW9DLGdCQUFBO0F2RDRxSHBDOztBdUQzcUhBO0VBQXVDLGdCQUFBO0F2RCtxSHZDOztBdUQ5cUhBO0VBQW1DLGdCQUFBO0F2RGtySG5DOztBdURqckhBO0VBQXVDLGdCQUFBO0F2RHFySHZDOztBdURwckhBO0VBQTBDLGdCQUFBO0F2RHdySDFDOztBdUR2ckhBO0VBQXNDLGdCQUFBO0F2RDJySHRDOztBdUQxckhBO0VBQW1DLGdCQUFBO0F2RDhySG5DOztBdUQ3ckhBO0VBQW1DLGdCQUFBO0F2RGlzSG5DOztBdURoc0hBO0VBQXlDLGdCQUFBO0F2RG9zSHpDOztBdURuc0hBO0VBQTBDLGdCQUFBO0F2RHVzSDFDOztBdUR0c0hBO0VBQThDLGdCQUFBO0F2RDBzSDlDOztBdUR6c0hBO0VBQTBDLGdCQUFBO0F2RDZzSDFDOztBdUQ1c0hBO0VBQW9DLGdCQUFBO0F2RGd0SHBDOztBdUQvc0hBO0VBQWtDLGdCQUFBO0F2RG10SGxDOztBdURsdEhBO0VBQW9DLGdCQUFBO0F2RHN0SHBDOztBdURydEhBO0VBQWtDLGdCQUFBO0F2RHl0SGxDOztBdUR4dEhBO0VBQXlDLGdCQUFBO0F2RDR0SHpDOztBdUQzdEhBO0VBQTJDLGdCQUFBO0F2RCt0SDNDOztBdUQ5dEhBO0VBQXVDLGdCQUFBO0F2RGt1SHZDOztBdURqdUhBO0VBQXlDLGdCQUFBO0F2RHF1SHpDOztBdURwdUhBO0VBQW1DLGdCQUFBO0F2RHd1SG5DOztBdUR2dUhBO0VBQXNDLGdCQUFBO0F2RDJ1SHRDOztBdUQxdUhBO0VBQXNDLGdCQUFBO0F2RDh1SHRDOztBdUQ3dUhBO0VBQXdDLGdCQUFBO0F2RGl2SHhDOztBdURodkhBO0VBQW1DLGdCQUFBO0F2RG92SG5DOztBdURudkhBO0VBQXlDLGdCQUFBO0F2RHV2SHpDOztBdUR0dkhBO0VBQXVDLGdCQUFBO0F2RDB2SHZDOztBdUR6dkhBO0VBQXdDLGdCQUFBO0F2RDZ2SHhDOztBdUQ1dkhBO0VBQXdDLGdCQUFBO0F2RGd3SHhDOztBdUQvdkhBO0VBQTBDLGdCQUFBO0F2RG13SDFDOztBdURsd0hBO0VBQStDLGdCQUFBO0F2RHN3SC9DOztBdURyd0hBO0VBQTBDLGdCQUFBO0F2RHl3SDFDOztBdUR4d0hBO0VBQW9DLGdCQUFBO0F2RDR3SHBDOztBdUQzd0hBO0VBQTJDLGdCQUFBO0F2RCt3SDNDOztBdUQ5d0hBO0VBQXFDLGdCQUFBO0F2RGt4SHJDOztBdURqeEhBO0VBQWlDLGdCQUFBO0F2RHF4SGpDOztBdURweEhBO0VBQXlDLGdCQUFBO0F2RHd4SHpDOztBdUR2eEhBO0VBQStDLGdCQUFBO0F2RDJ4SC9DOztBdUQxeEhBO0VBQW9DLGdCQUFBO0F2RDh4SHBDOztBdUQ3eEhBO0VBQWlDLGdCQUFBO0F2RGl5SGpDOztBdURoeUhBO0VBQXFDLGdCQUFBO0F2RG95SHJDOztBdURueUhBO0VBQXNDLGdCQUFBO0F2RHV5SHRDOztBdUR0eUhBO0VBQTRDLGdCQUFBO0F2RDB5SDVDOztBdUR6eUhBO0VBQXdDLGdCQUFBO0F2RDZ5SHhDOztBdUQ1eUhBO0VBQXdDLGdCQUFBO0F2RGd6SHhDOztBdUQveUhBO0VBQThDLGdCQUFBO0F2RG16SDlDOztBdURsekhBO0VBQXVDLGdCQUFBO0F2RHN6SHZDOztBdURyekhBO0VBQXVDLGdCQUFBO0F2RHl6SHZDOztBdUR4ekhBO0VBQXdDLGdCQUFBO0F2RDR6SHhDOztBdUQzekhBO0VBQStDLGdCQUFBO0F2RCt6SC9DOztBdUQ5ekhBO0VBQTZDLGdCQUFBO0F2RGswSDdDOztBdURqMEhBO0VBQXNDLGdCQUFBO0F2RHEwSHRDOztBdURwMEhBO0VBQTRDLGdCQUFBO0F2RHcwSDVDOztBdUR2MEhBO0VBQXVDLGdCQUFBO0F2RDIwSHZDOztBdUQxMEhBO0VBQWdELGdCQUFBO0F2RDgwSGhEOztBdUQ3MEhBO0VBQTBDLGdCQUFBO0F2RGkxSDFDOztBdURoMUhBO0VBQXFDLGdCQUFBO0F2RG8xSHJDOztBdURuMUhBO0VBQWtDLGdCQUFBO0F2RHUxSGxDOztBdUR0MUhBO0VBQW1DLGdCQUFBO0F2RDAxSG5DOztBdUR6MUhBO0VBQWlDLGdCQUFBO0F2RDYxSGpDOztBdUQ1MUhBO0VBQXFDLGdCQUFBO0F2RGcySHJDOztBdUQvMUhBO0VBQXdDLGdCQUFBO0F2RG0ySHhDOztBdURsMkhBO0VBQStDLGdCQUFBO0F2RHMySC9DOztBdURyMkhBO0VBQXVDLGdCQUFBO0F2RHkySHZDOztBdUR4MkhBO0VBQXNDLGdCQUFBO0F2RDQySHRDOztBdUQzMkhBO0VBQW1DLGdCQUFBO0F2RCsySG5DOztBdUQ5MkhBO0VBQWtDLGdCQUFBO0F2RGszSGxDOztBdURqM0hBO0VBQXlDLGdCQUFBO0F2RHEzSHpDOztBdURwM0hBO0VBQStDLGdCQUFBO0F2RHczSC9DOztBdUR2M0hBO0VBQWlELGdCQUFBO0F2RDIzSGpEOztBdUQxM0hBO0VBQTZDLGdCQUFBO0F2RDgzSDdDOztBdUQ3M0hBO0VBQStDLGdCQUFBO0F2RGk0SC9DOztBdURoNEhBO0VBQXdDLGdCQUFBO0F2RG80SHhDOztBdURuNEhBO0VBQStDLGdCQUFBO0F2RHU0SC9DOztBdUR0NEhBO0VBQXVDLGdCQUFBO0F2RDA0SHZDOztBdUR6NEhBO0VBQXVDLGdCQUFBO0F2RDY0SHZDOztBdUQ1NEhBO0VBQTRDLGdCQUFBO0F2RGc1SDVDOztBdUQvNEhBO0VBQTRDLGdCQUFBO0F2RG01SDVDOztBdURsNUhBO0VBQTZDLGdCQUFBO0F2RHM1SDdDOztBdURyNUhBO0VBQTBDLGdCQUFBO0F2RHk1SDFDOztBdUR4NUhBO0VBQXlDLGdCQUFBO0F2RDQ1SHpDOztBdUQzNUhBO0VBQXNDLGdCQUFBO0F2RCs1SHRDOztBdUQ5NUhBO0VBQTBDLGdCQUFBO0F2RGs2SDFDOztBdURqNkhBO0VBQTBDLGdCQUFBO0F2RHE2SDFDOztBdURwNkhBO0VBQXVDLGdCQUFBO0F2RHc2SHZDOztBdUR2NkhBO0VBQWtDLGdCQUFBO0F2RDI2SGxDOztBdUQxNkhBO0VBQTBDLGdCQUFBO0F2RDg2SDFDOztBdUQ3NkhBO0VBQXVDLGdCQUFBO0F2RGk3SHZDOztBdURoN0hBO0VBQXNDLGdCQUFBO0F2RG83SHRDOztBdURuN0hBO0VBQWdELGdCQUFBO0F2RHU3SGhEOztBdUR0N0hBO0VBQTRDLGdCQUFBO0F2RDA3SDVDOztBdUR6N0hBO0VBQXFDLGdCQUFBO0F2RDY3SHJDOztBdUQ1N0hBO0VBQXFDLGdCQUFBO0F2RGc4SHJDOztBdUQvN0hBO0VBQW9DLGdCQUFBO0F2RG04SHBDOztBdURsOEhBO0VBQXVDLGdCQUFBO0F2RHM4SHZDOztBdURyOEhBO0VBQTRDLGdCQUFBO0F2RHk4SDVDOztBdUR4OEhBO0VBQXVDLGdCQUFBO0F2RDQ4SHZDOztBdUQzOEhBO0VBQWdDLGdCQUFBO0F2RCs4SGhDOztBdUQ5OEhBO0VBQTRDLGdCQUFBO0F2RGs5SDVDOztBdURqOUhBO0VBQWtELGdCQUFBO0F2RHE5SGxEOztBdURwOUhBO0VBQTJDLGdCQUFBO0F2RHc5SDNDOztBdUR2OUhBO0VBQTRDLGdCQUFBO0F2RDI5SDVDOztBdUQxOUhBO0VBQW9DLGdCQUFBO0F2RDg5SHBDOztBdUQ3OUhBO0VBQXVDLGdCQUFBO0F2RGkrSHZDOztBdURoK0hBO0VBQTJDLGdCQUFBO0F2RG8rSDNDOztBdURuK0hBO0VBQW9DLGdCQUFBO0F2RHUrSHBDOztBdUR0K0hBO0VBQWtDLGdCQUFBO0F2RDArSGxDOztBdUR6K0hBO0VBQXlDLGdCQUFBO0F2RDYrSHpDOztBdUQ1K0hBO0VBQXNDLGdCQUFBO0F2RGcvSHRDOztBdUQvK0hBO0VBQXVDLGdCQUFBO0F2RG0vSHZDOztBdURsL0hBO0VBQXdDLGdCQUFBO0F2RHMvSHhDOztBdURyL0hBO0VBQW1DLGdCQUFBO0F2RHkvSG5DOztBdUR4L0hBO0VBQWtDLGdCQUFBO0F2RDQvSGxDOztBdUQzL0hBO0VBQWlDLGdCQUFBO0F2RCsvSGpDOztBdUQ5L0hBO0VBQTBDLGdCQUFBO0F2RGtnSTFDOztBdURqZ0lBO0VBQW9DLGdCQUFBO0F2RHFnSXBDOztBdURwZ0lBO0VBQXdDLGdCQUFBO0F2RHdnSXhDOztBdUR2Z0lBO0VBQXdDLGdCQUFBO0F2RDJnSXhDOztBdUQxZ0lBO0VBQWlDLGdCQUFBO0F2RDhnSWpDOztBdUQ3Z0lBO0VBQWtDLGdCQUFBO0F2RGloSWxDOztBdURoaElBO0VBQXFDLGdCQUFBO0F2RG9oSXJDOztBdURuaElBO0VBQWtDLGdCQUFBO0F2RHVoSWxDOztBdUR0aElBO0VBQXVDLGdCQUFBO0F2RDBoSXZDOztBdUR6aElBO0VBQXFDLGdCQUFBO0F2RDZoSXJDOztBdUQ1aElBO0VBQXlDLGdCQUFBO0F2RGdpSXpDOztBdUQvaElBO0VBQTRDLGdCQUFBO0F2RG1pSTVDOztBdURsaUlBO0VBQTBDLGdCQUFBO0F2RHNpSTFDOztBdURyaUlBO0VBQW9DLGdCQUFBO0F2RHlpSXBDOztBdUR4aUlBO0VBQW1DLGdCQUFBO0F2RDRpSW5DOztBdUQzaUlBO0VBQWtDLGdCQUFBO0F2RCtpSWxDOztBdUQ5aUlBO0VBQW1DLGdCQUFBO0F2RGtqSW5DOztBdURqaklBO0VBQXNDLGdCQUFBO0F2RHFqSXRDOztBdURwaklBO0VBQTBDLGdCQUFBO0F2RHdqSTFDOztBdUR2aklBO0VBQTJDLGdCQUFBO0F2RDJqSTNDOztBdUQxaklBO0VBQTRDLGdCQUFBO0F2RDhqSTVDOztBdUQ3aklBO0VBQXlDLGdCQUFBO0F2RGlrSXpDOztBdURoa0lBO0VBQXVDLGdCQUFBO0F2RG9rSXZDOztBdURua0lBO0VBQWtDLGdCQUFBO0F2RHVrSWxDOztBdUR0a0lBO0VBQW9DLGdCQUFBO0F2RDBrSXBDOztBdUR6a0lBO0VBQWtDLGdCQUFBO0F2RDZrSWxDOztBdUQ1a0lBO0VBQW9DLGdCQUFBO0F2RGdsSXBDOztBdUQva0lBO0VBQXFDLGdCQUFBO0F2RG1sSXJDOztBdURsbElBO0VBQXNDLGdCQUFBO0F2RHNsSXRDOztBdURybElBO0VBQW9DLGdCQUFBO0F2RHlsSXBDOztBdUR4bElBO0VBQWtDLGdCQUFBO0F2RDRsSWxDOztBdUQzbElBO0VBQXFDLGdCQUFBO0F2RCtsSXJDOztBdUQ5bElBO0VBQW9DLGdCQUFBO0F2RGttSXBDOztBdURqbUlBO0VBQXdDLGdCQUFBO0F2RHFtSXhDOztBdURwbUlBO0VBQWtDLGdCQUFBO0F2RHdtSWxDOztBdUR2bUlBO0VBQWtDLGdCQUFBO0F2RDJtSWxDOztBdUQxbUlBO0VBQWtDLGdCQUFBO0F2RDhtSWxDOztBdUQ3bUlBO0VBQW1DLGdCQUFBO0F2RGluSW5DOztBdURobklBO0VBQWlDLGdCQUFBO0F2RG9uSWpDOztBdURubklBO0VBQWtDLGdCQUFBO0F2RHVuSWxDOztBdUR0bklBO0VBQW1DLGdCQUFBO0F2RDBuSW5DOztBdUR6bklBO0VBQXFDLGdCQUFBO0F2RDZuSXJDOztBdUQ1bklBO0VBQXFDLGdCQUFBO0F2RGdvSXJDOztBdUQvbklBO0VBQWlDLGdCQUFBO0F2RG1vSWpDOztBdURsb0lBO0VBQXdDLGdCQUFBO0F2RHNvSXhDOztBdURyb0lBO0VBQXNDLGdCQUFBO0F2RHlvSXRDOztBdUR4b0lBO0VBQTZDLGdCQUFBO0F2RDRvSTdDOztBdUQzb0lBO0VBQXFDLGdCQUFBO0F2RCtvSXJDOztBdUQ5b0lBO0VBQThDLGdCQUFBO0F2RGtwSTlDOztBdURqcElBO0VBQXFDLGdCQUFBO0F2RHFwSXJDOztBdURwcElBO0VBQW9DLGdCQUFBO0F2RHdwSXBDOztBdUR2cElBO0VBQW1DLGdCQUFBO0F2RDJwSW5DOztBdUQxcElBO0VBQW9DLGdCQUFBO0F2RDhwSXBDOztBdUQ3cElBO0VBQW1DLGdCQUFBO0F2RGlxSW5DOztBdURocUlBO0VBQXdDLGdCQUFBO0F2RG9xSXhDOztBdURucUlBO0VBQWlDLGdCQUFBO0F2RHVxSWpDOztBdUR0cUlBO0VBQWlDLGdCQUFBO0F2RDBxSWpDOztBdUR6cUlBO0VBQXVDLGdCQUFBO0F2RDZxSXZDOztBdUQ1cUlBO0VBQW9DLGdCQUFBO0F2RGdySXBDOztBdUQvcUlBO0VBQWlDLGdCQUFBO0F2RG1ySWpDOztBdURscklBO0VBQWtDLGdCQUFBO0F2RHNySWxDOztBdURycklBO0VBQWtDLGdCQUFBO0F2RHlySWxDOztBdUR4cklBO0VBQW1DLGdCQUFBO0F2RDRySW5DOztBdUQzcklBO0VBQTJDLGdCQUFBO0F2RCtySTNDOztBdUQ5cklBO0VBQStCLGdCQUFBO0F2RGtzSS9COztBdURqc0lBO0VBQXNDLGdCQUFBO0F2RHFzSXRDOztBdURwc0lBO0VBQXFDLGdCQUFBO0F2RHdzSXJDOztBdUR2c0lBO0VBQWtDLGdCQUFBO0F2RDJzSWxDOztBdUQxc0lBO0VBQW1DLGdCQUFBO0F2RDhzSW5DOztBdUQ3c0lBO0VBQWdDLGdCQUFBO0F2RGl0SWhDOztBdURodElBO0VBQW9DLGdCQUFBO0F2RG90SXBDOztBdURudElBO0VBQXFDLGdCQUFBO0F2RHV0SXJDOztBdUR0dElBO0VBQW1DLGdCQUFBO0F2RDB0SW5DOztBdUR6dElBO0VBQW1DLGdCQUFBO0F2RDZ0SW5DOztBdUQ1dElBO0VBQXdDLGdCQUFBO0F2RGd1SXhDOztBdUQvdElBO0VBQTBDLGdCQUFBO0F2RG11STFDOztBdURsdUlBO0VBQWlDLGdCQUFBO0F2RHN1SWpDOztBdURydUlBO0VBQXNDLGdCQUFBO0F2RHl1SXRDOztBdUR4dUlBO0VBQTRDLGdCQUFBO0F2RDR1STVDOztBdUQzdUlBO0VBQXNDLGdCQUFBO0F2RCt1SXRDOztBdUQ5dUlBO0VBQW1DLGdCQUFBO0F2RGt2SW5DOztBdURqdklBO0VBQXFDLGdCQUFBO0F2RHF2SXJDOztBdURwdklBO0VBQXFDLGdCQUFBO0F2RHd2SXJDOztBdUR2dklBO0VBQW1DLGdCQUFBO0F2RDJ2SW5DOztBdUQxdklBO0VBQXdDLGdCQUFBO0F2RDh2SXhDOztBdUQ3dklBO0VBQXlDLGdCQUFBO0F2RGl3SXpDOztBdURod0lBO0VBQTJDLGdCQUFBO0F2RG93STNDOztBdURud0lBO0VBQW9DLGdCQUFBO0F2RHV3SXBDOztBdUR0d0lBO0VBQW1DLGdCQUFBO0F2RDB3SW5DOztBdUR6d0lBO0VBQTBDLGdCQUFBO0F2RDZ3STFDOztBdUQ1d0lBO0VBQWtDLGdCQUFBO0F2RGd4SWxDOztBdUQvd0lBO0VBQXVDLGdCQUFBO0F2RG14SXZDOztBdURseElBO0VBQXlDLGdCQUFBO0F2RHN4SXpDOztBdURyeElBO0VBQXVDLGdCQUFBO0F2RHl4SXZDOztBdUR4eElBO0VBQXdDLGdCQUFBO0F2RDR4SXhDOztBdUQzeElBO0VBQWlDLGdCQUFBO0F2RCt4SWpDOztBdUQ5eElBO0VBQW9DLGdCQUFBO0F2RGt5SXBDOztBdURqeUlBO0VBQWtDLGdCQUFBO0F2RHF5SWxDOztBdURweUlBO0VBQWlDLGdCQUFBO0F2RHd5SWpDOztBdUR2eUlBO0VBQXNDLGdCQUFBO0F2RDJ5SXRDOztBdUQxeUlBO0VBQTRDLGdCQUFBO0F2RDh5STVDOztBdUQ3eUlBO0VBQTJDLGdCQUFBO0F2RGl6STNDOztBdURoeklBO0VBQXlDLGdCQUFBO0F2RG96SXpDOztBdURueklBO0VBQXNDLGdCQUFBO0F2RHV6SXRDOztBdUR0eklBO0VBQXNDLGdCQUFBO0F2RDB6SXRDOztBdUR6eklBO0VBQWlDLGdCQUFBO0F2RDZ6SWpDOztBdUQ1eklBO0VBQWlDLGdCQUFBO0F2RGcwSWpDOztBdUQveklBO0VBQXFDLGdCQUFBO0F2RG0wSXJDOztBdURsMElBO0VBQXdDLGdCQUFBO0F2RHMwSXhDOztBdURyMElBO0VBQW1DLGdCQUFBO0F2RHkwSW5DOztBdUR4MElBO0VBQWtDLGdCQUFBO0F2RDQwSWxDOztBdUQzMElBO0VBQXNDLGdCQUFBO0F2RCswSXRDOztBdUQ5MElBO0VBQWlDLGdCQUFBO0F2RGsxSWpDOztBdURqMUlBO0VBQXFDLGdCQUFBO0F2RHExSXJDOztBdURwMUlBO0VBQW9DLGdCQUFBO0F2RHcxSXBDOztBdUR2MUlBO0VBQW9DLGdCQUFBO0F2RDIxSXBDOztBdUQxMUlBO0VBQTJDLGdCQUFBO0F2RDgxSTNDOztBdUQ3MUlBO0VBQWlDLGdCQUFBO0F2RGkySWpDOztBdURoMklBO0VBQXNDLGdCQUFBO0F2RG8ySXRDOztBdURuMklBO0VBQWdELGdCQUFBO0F2RHUySWhEOztBdUR0MklBO0VBQWdELGdCQUFBO0F2RDAySWhEOztBdUR6MklBO0VBQWlELGdCQUFBO0F2RDYySWpEOztBdUQ1MklBO0VBQThDLGdCQUFBO0F2RGczSTlDOztBdUQvMklBO0VBQXVDLGdCQUFBO0F2RG0zSXZDOztBdURsM0lBO0VBQXlDLGdCQUFBO0F2RHMzSXpDOztBdURyM0lBO0VBQWtDLGdCQUFBO0F2RHkzSWxDOztBdUR4M0lBO0VBQXdDLGdCQUFBO0F2RDQzSXhDOztBdUQzM0lBO0VBQWlDLGdCQUFBO0F2RCszSWpDOztBdUQ5M0lBO0VBQW9DLGdCQUFBO0F2RGs0SXBDOztBdURqNElBO0VBQWtDLGdCQUFBO0F2RHE0SWxDOztBdURwNElBO0VBQW1DLGdCQUFBO0F2RHc0SW5DOztBdUR2NElBO0VBQXNDLGdCQUFBO0F2RDI0SXRDOztBdUQxNElBO0VBQXNDLGdCQUFBO0F2RDg0SXRDOztBdUQ3NElBO0VBQWlDLGdCQUFBO0F2RGk1SWpDOztBdURoNUlBO0VBQXdDLGdCQUFBO0F2RG81SXhDOztBdURuNUlBO0VBQWdDLGdCQUFBO0F2RHU1SWhDOztBdUR0NUlBO0VBQXVDLGdCQUFBO0F2RDA1SXZDOztBdUR6NUlBO0VBQTJDLGdCQUFBO0F2RDY1STNDOztBdUQ1NUlBO0VBQXVDLGdCQUFBO0F2RGc2SXZDOztBdUQvNUlBO0VBQTJDLGdCQUFBO0F2RG02STNDOztBdURsNklBO0VBQW9DLGdCQUFBO0F2RHM2SXBDOztBdURyNklBO0VBQXNDLGdCQUFBO0F2RHk2SXRDOztBdUR4NklBO0VBQXFDLGdCQUFBO0F2RDQ2SXJDOztBdUQzNklBO0VBQW1DLGdCQUFBO0F2RCs2SW5DOztBdUQ5NklBO0VBQWlDLGdCQUFBO0F2RGs3SWpDOztBdURqN0lBO0VBQXdDLGdCQUFBO0F2RHE3SXhDOztBdURwN0lBO0VBQXdDLGdCQUFBO0F2RHc3SXhDOztBdUR2N0lBO0VBQTBDLGdCQUFBO0F2RDI3STFDOztBdUQxN0lBO0VBQTBDLGdCQUFBO0F2RDg3STFDOztBdUQ3N0lBO0VBQWlDLGdCQUFBO0F2RGk4SWpDOztBdURoOElBO0VBQXFDLGdCQUFBO0F2RG84SXJDOztBdURuOElBO0VBQW1DLGdCQUFBO0F2RHU4SW5DOztBdUR0OElBO0VBQWdDLGdCQUFBO0F2RDA4SWhDOztBdUR6OElBO0VBQWtDLGdCQUFBO0F2RDY4SWxDOztBdUQ1OElBO0VBQW9DLGdCQUFBO0F2RGc5SXBDOztBdUQvOElBO0VBQW1DLGdCQUFBO0F2RG05SW5DOztBdURsOUlBO0VBQXFDLGdCQUFBO0F2RHM5SXJDOztBdURyOUlBO0VBQW1DLGdCQUFBO0F2RHk5SW5DOztBdUR4OUlBO0VBQWtDLGdCQUFBO0F2RDQ5SWxDOztBdUQzOUlBO0VBQW1DLGdCQUFBO0F2RCs5SW5DOztBdUQ5OUlBO0VBQXFDLGdCQUFBO0F2RGsrSXJDOztBdURqK0lBO0VBQWdDLGdCQUFBO0F2RHErSWhDOztBdURwK0lBO0VBQXNDLGdCQUFBO0F2RHcrSXRDOztBdUR2K0lBO0VBQTZDLGdCQUFBO0F2RDIrSTdDOztBdUQxK0lBO0VBQW1DLGdCQUFBO0F2RDgrSW5DOztBdUQ3K0lBO0VBQXFDLGdCQUFBO0F2RGkvSXJDOztBdURoL0lBO0VBQW9DLGdCQUFBO0F2RG8vSXBDOztBdURuL0lBO0VBQW9DLGdCQUFBO0F2RHUvSXBDOztBdUR0L0lBO0VBQW1DLGdCQUFBO0F2RDAvSW5DOztBdUR6L0lBO0VBQXNDLGdCQUFBO0F2RDYvSXRDOztBdUQ1L0lBO0VBQXNDLGdCQUFBO0F2RGdnSnRDOztBdUQvL0lBO0VBQXVDLGdCQUFBO0F2RG1nSnZDOztBdURsZ0pBO0VBQTJDLGdCQUFBO0F2RHNnSjNDOztBdURyZ0pBO0VBQWlELGdCQUFBO0F2RHlnSmpEOztBdUR4Z0pBO0VBQTZDLGdCQUFBO0F2RDRnSjdDOztBdUQzZ0pBO0VBQXVDLGdCQUFBO0F2RCtnSnZDOztBdUQ5Z0pBO0VBQXNDLGdCQUFBO0F2RGtoSnRDOztBdURqaEpBO0VBQWtDLGdCQUFBO0F2RHFoSmxDOztBdURwaEpBO0VBQXlDLGdCQUFBO0F2RHdoSnpDOztBdUR2aEpBO0VBQXlDLGdCQUFBO0F2RDJoSnpDOztBdUQxaEpBO0VBQW1DLGdCQUFBO0F2RDhoSm5DOztBdUQ3aEpBO0VBQWdDLGdCQUFBO0F2RGlpSmhDOztBdURoaUpBO0VBQXFDLGdCQUFBO0F2RG9pSnJDOztBdURuaUpBO0VBQWtDLGdCQUFBO0F2RHVpSmxDOztBdUR0aUpBO0VBQW1DLGdCQUFBO0F2RDBpSm5DOztBdUR6aUpBO0VBQW1DLGdCQUFBO0F2RDZpSm5DOztBdUQ1aUpBO0VBQXVDLGdCQUFBO0F2RGdqSnZDOztBdUQvaUpBO0VBQWlDLGdCQUFBO0F2RG1qSmpDOztBdURsakpBO0VBQW1DLGdCQUFBO0F2RHNqSm5DOztBdURyakpBO0VBQXVDLGdCQUFBO0F2RHlqSnZDOztBdUR4akpBO0VBQTJDLGdCQUFBO0F2RDRqSjNDOztBdUQzakpBO0VBQTRDLGdCQUFBO0F2RCtqSjVDOztBdUQ5akpBO0VBQWdELGdCQUFBO0F2RGtrSmhEOztBdURqa0pBO0VBQXdDLGdCQUFBO0F2RHFrSnhDOztBdURwa0pBO0VBQTRDLGdCQUFBO0F2RHdrSjVDOztBdUR2a0pBO0VBQXFDLGdCQUFBO0F2RDJrSnJDOztBdUQxa0pBO0VBQWlDLGdCQUFBO0F2RDhrSmpDOztBdUQ3a0pBO0VBQTBDLGdCQUFBO0F2RGlsSjFDOztBdURobEpBO0VBQW1DLGdCQUFBO0F2RG9sSm5DOztBdURubEpBO0VBQXVDLGdCQUFBO0F2RHVsSnZDOztBdUR0bEpBO0VBQXFDLGdCQUFBO0F2RDBsSnJDOztBdUR6bEpBO0VBQWtDLGdCQUFBO0F2RDZsSmxDOztBdUQ1bEpBO0VBQTBDLGdCQUFBO0F2RGdtSjFDOztBdUQvbEpBO0VBQW9DLGdCQUFBO0F2RG1tSnBDOztBdURsbUpBO0VBQWtDLGdCQUFBO0F2RHNtSmxDOztBdURybUpBO0VBQW9DLGdCQUFBO0F2RHltSnBDOztBdUR4bUpBO0VBQWlDLGdCQUFBO0F2RDRtSmpDOztBdUQzbUpBO0VBQTBDLGdCQUFBO0F2RCttSjFDOztBdUQ5bUpBO0VBQW1DLGdCQUFBO0F2RGtuSm5DOztBdURqbkpBO0VBQXNDLGdCQUFBO0F2RHFuSnRDOztBdURwbkpBO0VBQW1DLGdCQUFBO0F2RHduSm5DOztBdUR2bkpBO0VBQWlDLGdCQUFBO0F2RDJuSmpDOztBdUQxbkpBO0VBQW9DLGdCQUFBO0F2RDhuSnBDOztBdUQ3bkpBO0VBQXNDLGdCQUFBO0F2RGlvSnRDOztBdURob0pBO0VBQTBDLGdCQUFBO0F2RG9vSjFDOztBdURub0pBO0VBQWdDLGdCQUFBO0F2RHVvSmhDOztBdUR0b0pBO0VBQWdDLGdCQUFBO0F2RDBvSmhDOztBdUR6b0pBO0VBQXdDLGdCQUFBO0F2RDZvSnhDOztBdUQ1b0pBO0VBQXlDLGdCQUFBO0F2RGdwSnpDOztBdUQvb0pBO0VBQTJDLGdCQUFBO0F2RG1wSjNDOztBdURscEpBO0VBQTBDLGdCQUFBO0F2RHNwSjFDOztBdURycEpBO0VBQWlELGdCQUFBO0F2RHlwSmpEOztBdUR4cEpBO0VBQW9DLGdCQUFBO0F2RDRwSnBDOztBdUQzcEpBO0VBQXlDLGdCQUFBO0F2RCtwSnpDOztBdUQ5cEpBO0VBQStCLGdCQUFBO0F2RGtxSi9COztBdURqcUpBO0VBQXFDLGdCQUFBO0F2RHFxSnJDOztBdURwcUpBO0VBQW1DLGdCQUFBO0F2RHdxSm5DOztBdUR2cUpBO0VBQWtDLGdCQUFBO0F2RDJxSmxDOztBdUQxcUpBO0VBQTBDLGdCQUFBO0F2RDhxSjFDOztBdUQ3cUpBO0VBQWtDLGdCQUFBO0F2RGlySmxDOztBdURockpBO0VBQWdDLGdCQUFBO0F2RG9ySmhDOztBdURuckpBO0VBQWtDLGdCQUFBO0F2RHVySmxDOztBdUR0ckpBO0VBQW9DLGdCQUFBO0F2RDBySnBDOztBdUR6ckpBO0VBQWtDLGdCQUFBO0F2RDZySmxDOztBdUQ1ckpBO0VBQXNDLGdCQUFBO0F2RGdzSnRDOztBdUQvckpBO0VBQWtDLGdCQUFBO0F2RG1zSmxDOztBdURsc0pBO0VBQXdDLGdCQUFBO0F2RHNzSnhDOztBdURyc0pBO0VBQXlDLGdCQUFBO0F2RHlzSnpDOztBdUR4c0pBO0VBQW9DLGdCQUFBO0F2RDRzSnBDOztBdUQzc0pBO0VBQW1DLGdCQUFBO0F2RCtzSm5DOztBdUQ5c0pBO0VBQW1DLGdCQUFBO0F2RGt0Sm5DOztBdURqdEpBO0VBQXdDLGdCQUFBO0F2RHF0SnhDOztBdURwdEpBO0VBQXNDLGdCQUFBO0F2RHd0SnRDOztBdUR2dEpBO0VBQTBDLGdCQUFBO0F2RDJ0SjFDOztBdUQxdEpBO0VBQXNDLGdCQUFBO0F2RDh0SnRDOztBdUQ3dEpBO0VBQW9DLGdCQUFBO0F2RGl1SnBDOztBdURodUpBO0VBQXFDLGdCQUFBO0F2RG91SnJDOztBdURudUpBO0VBQTJDLGdCQUFBO0F2RHV1SjNDOztBdUR0dUpBO0VBQWtDLGdCQUFBO0F2RDB1SmxDOztBdUR6dUpBO0VBQW9DLGdCQUFBO0F2RDZ1SnBDOztBdUQ1dUpBO0VBQWtDLGdCQUFBO0F2RGd2SmxDOztBdUQvdUpBO0VBQXlDLGdCQUFBO0F2RG12SnpDOztBdURsdkpBO0VBQWdDLGdCQUFBO0F2RHN2SmhDOztBdURydkpBO0VBQW1DLGdCQUFBO0F2RHl2Sm5DOztBdUR4dkpBO0VBQWtDLGdCQUFBO0F2RDR2SmxDOztBdUQzdkpBO0VBQWdDLGdCQUFBO0F2RCt2SmhDOztBdUQ5dkpBO0VBQW9DLGdCQUFBO0F2RGt3SnBDOztBdURqd0pBO0VBQXNDLGdCQUFBO0F2RHF3SnRDOztBdURwd0pBO0VBQW9DLGdCQUFBO0F2RHd3SnBDOztBdUR2d0pBO0VBQXVDLGdCQUFBO0F2RDJ3SnZDOztBdUQxd0pBO0VBQXVDLGdCQUFBO0F2RDh3SnZDOztBdUQ3d0pBO0VBQXlDLGdCQUFBO0F2RGl4SnpDOztBdURoeEpBO0VBQXlDLGdCQUFBO0F2RG94SnpDOztBdURueEpBO0VBQTBDLGdCQUFBO0F2RHV4SjFDOztBdUR0eEpBO0VBQXlDLGdCQUFBO0F2RDB4SnpDOztBdUR6eEpBO0VBQXVDLGdCQUFBO0F2RDZ4SnZDOztBdUQ1eEpBO0VBQW9DLGdCQUFBO0F2RGd5SnBDOztBdUQveEpBO0VBQXVDLGdCQUFBO0F2RG15SnZDOztBdURseUpBO0VBQXNDLGdCQUFBO0F2RHN5SnRDOztBdURyeUpBO0VBQXlDLGdCQUFBO0F2RHl5SnpDOztBdUR4eUpBO0VBQXdDLGdCQUFBO0F2RDR5SnhDOztBdUQzeUpBO0VBQThDLGdCQUFBO0F2RCt5SjlDOztBdUQ5eUpBO0VBQTZDLGdCQUFBO0F2RGt6SjdDOztBdURqekpBO0VBQWtDLGdCQUFBO0F2RHF6SmxDOztBdURwekpBO0VBQXNDLGdCQUFBO0F2RHd6SnRDOztBdUR2ekpBO0VBQXdDLGdCQUFBO0F2RDJ6SnhDOztBdUQxekpBO0VBQXlDLGdCQUFBO0F2RDh6SnpDOztBdUQ3ekpBO0VBQTZDLGdCQUFBO0F2RGkwSjdDOztBdURoMEpBO0VBQXlDLGdCQUFBO0F2RG8wSnpDOztBdURuMEpBO0VBQXdDLGdCQUFBO0F2RHUwSnhDOztBdUR0MEpBO0VBQWdDLGdCQUFBO0F2RDAwSmhDOztBdUR6MEpBO0VBQXVDLGdCQUFBO0F2RDYwSnZDOztBdUQ1MEpBO0VBQTJDLGdCQUFBO0F2RGcxSjNDOztBdUQvMEpBO0VBQTJDLGdCQUFBO0F2RG0xSjNDOztBdURsMUpBO0VBQTBDLGdCQUFBO0F2RHMxSjFDOztBdURyMUpBO0VBQThDLGdCQUFBO0F2RHkxSjlDOztBdUR4MUpBO0VBQXVDLGdCQUFBO0F2RDQxSnZDOztBdUQzMUpBO0VBQWtDLGdCQUFBO0F2RCsxSmxDOztBdUQ5MUpBO0VBQXNDLGdCQUFBO0F2RGsySnRDOztBdURqMkpBO0VBQXdDLGdCQUFBO0F2RHEySnhDOztBdURwMkpBO0VBQTZDLGdCQUFBO0F2RHcySjdDOztBdUR2MkpBO0VBQXdDLGdCQUFBO0F2RDIySnhDOztBdUQxMkpBO0VBQTZDLGdCQUFBO0F2RDgySjdDOztBdUQ3MkpBO0VBQWtDLGdCQUFBO0F2RGkzSmxDOztBdURoM0pBO0VBQTBDLGdCQUFBO0F2RG8zSjFDOztBdURuM0pBO0VBQTRDLGdCQUFBO0F2RHUzSjVDOztBdUR0M0pBO0VBQXdDLGdCQUFBO0F2RDAzSnhDOztBdUR6M0pBO0VBQWlDLGdCQUFBO0F2RDYzSmpDOztBdUQ1M0pBO0VBQXdDLGdCQUFBO0F2RGc0SnhDOztBdUQvM0pBO0VBQXdDLGdCQUFBO0F2RG00SnhDOztBdURsNEpBO0VBQWlDLGdCQUFBO0F2RHM0SmpDOztBdURyNEpBO0VBQWlDLGdCQUFBO0F2RHk0SmpDOztBdUR4NEpBO0VBQXdDLGdCQUFBO0F2RDQ0SnhDOztBdUQzNEpBO0VBQXdDLGdCQUFBO0F2RCs0SnhDOztBdUQ5NEpBO0VBQW9DLGdCQUFBO0F2RGs1SnBDOztBdURqNUpBO0VBQWlDLGdCQUFBO0F2RHE1SmpDOztBdURwNUpBO0VBQW1DLGdCQUFBO0F2RHc1Sm5DOztBdUR2NUpBO0VBQWdDLGdCQUFBO0F2RDI1SmhDOztBdUQxNUpBO0VBQXNDLGdCQUFBO0F2RDg1SnRDOztBdUQ3NUpBO0VBQWlDLGdCQUFBO0F2RGk2SmpDOztBdURoNkpBO0VBQXFDLGdCQUFBO0F2RG82SnJDOztBdURuNkpBO0VBQXVDLGdCQUFBO0F2RHU2SnZDOztBdUR0NkpBO0VBQXNDLGdCQUFBO0F2RDA2SnRDOztBdUR6NkpBO0VBQWlDLGdCQUFBO0F2RDY2SmpDOztBdUQ1NkpBO0VBQTBDLGdCQUFBO0F2RGc3SjFDOztBdUQvNkpBO0VBQXlDLGdCQUFBO0F2RG03SnpDOztBdURsN0pBO0VBQWdELGdCQUFBO0F2RHM3SmhEOztBdURyN0pBO0VBQW9ELGdCQUFBO0F2RHk3SnBEOztBdUR4N0pBO0VBQWtDLGdCQUFBO0F2RDQ3SmxDOztBdUQzN0pBO0VBQXVDLGdCQUFBO0F2RCs3SnZDOztBdUQ5N0pBO0VBQXlDLGdCQUFBO0F2RGs4SnpDOztBdURqOEpBO0VBQTRDLGdCQUFBO0F2RHE4SjVDOztBdURwOEpBO0VBQXlDLGdCQUFBO0F2RHc4SnpDOztBdUR2OEpBO0VBQXNDLGdCQUFBO0F2RDI4SnRDOztBdUQxOEpBO0VBQW1DLGdCQUFBO0F2RDg4Sm5DOztBdUQ3OEpBO0VBQXlDLGdCQUFBO0F2RGk5SnpDOztBdURoOUpBO0VBQW1DLGdCQUFBO0F2RG85Sm5DOztBdURuOUpBO0VBQStCLGdCQUFBO0F2RHU5Si9COztBdUR0OUpBO0VBQW1DLGdCQUFBO0F2RDA5Sm5DOztBdUR6OUpBO0VBQXFDLGdCQUFBO0F2RDY5SnJDOztBdUQ1OUpBO0VBQTRDLGdCQUFBO0F2RGcrSjVDOztBdUQvOUpBO0VBQXNDLGdCQUFBO0F2RG0rSnRDOztBdURsK0pBO0VBQXNDLGdCQUFBO0F2RHMrSnRDOztBdURyK0pBO0VBQWtDLGdCQUFBO0F2RHkrSmxDOztBdUR4K0pBO0VBQXVDLGdCQUFBO0F2RDQrSnZDOztBdUQzK0pBO0VBQXdDLGdCQUFBO0F2RCsrSnhDOztBdUQ5K0pBO0VBQWtDLGdCQUFBO0F2RGsvSmxDOztBdURqL0pBO0VBQXNDLGdCQUFBO0F2RHEvSnRDOztBdURwL0pBO0VBQXNDLGdCQUFBO0F2RHcvSnRDOztBdUR2L0pBO0VBQTBDLGdCQUFBO0F2RDIvSjFDOztBdUQxL0pBO0VBQW9DLGdCQUFBO0F2RDgvSnBDOztBdUQ3L0pBO0VBQW1DLGdCQUFBO0F2RGlnS25DOztBdURoZ0tBO0VBQXlDLGdCQUFBO0F2RG9nS3pDOztBdURuZ0tBO0VBQW9DLGdCQUFBO0F2RHVnS3BDOztBdUR0Z0tBO0VBQWtDLGdCQUFBO0F2RDBnS2xDOztBdUR6Z0tBO0VBQXdDLGdCQUFBO0F2RDZnS3hDOztBdUQ1Z0tBO0VBQW1DLGdCQUFBO0F2RGdoS25DOztBdUQvZ0tBO0VBQWtDLGdCQUFBO0F2RG1oS2xDOztBdURsaEtBO0VBQW9DLGdCQUFBO0F2RHNoS3BDOztBdURyaEtBO0VBQXlDLGdCQUFBO0F2RHloS3pDOztBdUR4aEtBO0VBQW9DLGdCQUFBO0F2RDRoS3BDOztBdUQzaEtBO0VBQXNDLGdCQUFBO0F2RCtoS3RDOztBdUQ5aEtBO0VBQW1DLGdCQUFBO0F2RGtpS25DOztBdURqaUtBO0VBQXlDLGdCQUFBO0F2RHFpS3pDOztBdURwaUtBO0VBQTBDLGdCQUFBO0F2RHdpSzFDOztBdUR2aUtBO0VBQW1DLGdCQUFBO0F2RDJpS25DOztBdUQxaUtBO0VBQWlDLGdCQUFBO0F2RDhpS2pDOztBdUQ3aUtBO0VBQXFDLGdCQUFBO0F2RGlqS3JDOztBdURoaktBO0VBQXVDLGdCQUFBO0F2RG9qS3ZDOztBdURuaktBO0VBQTBDLGdCQUFBO0F2RHVqSzFDOztBdUR0aktBO0VBQW1DLGdCQUFBO0F2RDBqS25DOztBdUR6aktBO0VBQWtDLGdCQUFBO0F2RDZqS2xDOztBdUQ1aktBO0VBQXNDLGdCQUFBO0F2RGdrS3RDOztBdUQvaktBO0VBQW1DLGdCQUFBO0F2RG1rS25DOztBdURsa0tBO0VBQXVDLGdCQUFBO0F2RHNrS3ZDOztBdURya0tBO0VBQXlDLGdCQUFBO0F2RHlrS3pDOztBdUR4a0tBO0VBQXNDLGdCQUFBO0F2RDRrS3RDOztBdUQza0tBO0VBQXFDLGdCQUFBO0F2RCtrS3JDOztBdUQ5a0tBO0VBQW9DLGdCQUFBO0F2RGtsS3BDOztBdURqbEtBO0VBQWdDLGdCQUFBO0F2RHFsS2hDOztBdURwbEtBO0VBQW1DLGdCQUFBO0F2RHdsS25DOztBdUR2bEtBO0VBQWlDLGdCQUFBO0F2RDJsS2pDOztBdUQxbEtBO0VBQWlDLGdCQUFBO0F2RDhsS2pDOztBdUQ3bEtBO0VBQWtDLGdCQUFBO0F2RGltS2xDOztBdURobUtBO0VBQW1DLGdCQUFBO0F2RG9tS25DOztBdURubUtBO0VBQXVDLGdCQUFBO0F2RHVtS3ZDOztBdUR0bUtBO0VBQW9DLGdCQUFBO0F2RDBtS3BDOztBdUR6bUtBO0VBQWtDLGdCQUFBO0F2RDZtS2xDOztBdUQ1bUtBO0VBQWdDLGdCQUFBO0F2RGduS2hDOztBdUQvbUtBO0VBQXVDLGdCQUFBO0F2RG1uS3ZDOztBdURsbktBO0VBQXVDLGdCQUFBO0F2RHNuS3ZDOztBdURybktBO0VBQWtDLGdCQUFBO0F2RHluS2xDOztBdUR4bktBO0VBQTJDLGdCQUFBO0F2RDRuSzNDOztBdUQzbktBO0VBQTZDLGdCQUFBO0F2RCtuSzdDOztBdUQ5bktBO0VBQTJDLGdCQUFBO0F2RGtvSzNDOztBdURqb0tBO0VBQW9DLGdCQUFBO0F2RHFvS3BDOztBdURwb0tBO0VBQXVDLGdCQUFBO0F2RHdvS3ZDOztBdUR2b0tBO0VBQWlDLGdCQUFBO0F2RDJvS2pDOztBdUQxb0tBO0VBQW9DLGdCQUFBO0F2RDhvS3BDOztBdUQ3b0tBO0VBQXFDLGdCQUFBO0F2RGlwS3JDOztBdURocEtBO0VBQW1DLGdCQUFBO0F2RG9wS25DOztBdURucEtBO0VBQXVDLGdCQUFBO0F2RHVwS3ZDOztBdUR0cEtBO0VBQWlDLGdCQUFBO0F2RDBwS2pDOztBdUR6cEtBO0VBQXNDLGdCQUFBO0F2RDZwS3RDOztBdUQ1cEtBO0VBQTJDLGdCQUFBO0F2RGdxSzNDOztBdUQvcEtBO0VBQWlDLGdCQUFBO0F2RG1xS2pDOztBdURscUtBO0VBQW1DLGdCQUFBO0F2RHNxS25DOztBdURycUtBO0VBQW1DLGdCQUFBO0F2RHlxS25DOztBdUR4cUtBO0VBQXdDLGdCQUFBO0F2RDRxS3hDOztBdUQzcUtBO0VBQW1DLGdCQUFBO0F2RCtxS25DOztBdUQ5cUtBO0VBQW1DLGdCQUFBO0F2RGtyS25DOztBdURqcktBO0VBQW9DLGdCQUFBO0F2RHFyS3BDOztBdURwcktBO0VBQW1DLGdCQUFBO0F2RHdyS25DOztBdUR2cktBO0VBQTBDLGdCQUFBO0F2RDJySzFDOztBdUQxcktBO0VBQTRDLGdCQUFBO0F2RDhySzVDOztBdUQ3cktBO0VBQXlDLGdCQUFBO0F2RGlzS3pDOztBdURoc0tBO0VBQXdDLGdCQUFBO0F2RG9zS3hDOztBdURuc0tBO0VBQXdDLGdCQUFBO0F2RHVzS3hDOztBdUR0c0tBO0VBQXFDLGdCQUFBO0F2RDBzS3JDOztBdUR6c0tBO0VBQXFDLGdCQUFBO0F2RDZzS3JDOztBdUQ1c0tBO0VBQW1DLGdCQUFBO0F2RGd0S25DOztBdUQvc0tBO0VBQW1DLGdCQUFBO0F2RG10S25DOztBdURsdEtBO0VBQXlDLGdCQUFBO0F2RHN0S3pDOztBdURydEtBO0VBQW1DLGdCQUFBO0F2RHl0S25DOztBdUR4dEtBO0VBQWtDLGdCQUFBO0F2RDR0S2xDOztBdUQzdEtBO0VBQXNDLGdCQUFBO0F2RCt0S3RDOztBdUQ5dEtBO0VBQTZDLGdCQUFBO0F2RGt1SzdDOztBdURqdUtBO0VBQXlDLGdCQUFBO0F2RHF1S3pDOztBdURwdUtBO0VBQXdDLGdCQUFBO0F2RHd1S3hDOztBdUR2dUtBO0VBQXVDLGdCQUFBO0F2RDJ1S3ZDOztBdUQxdUtBO0VBQXlDLGdCQUFBO0F2RDh1S3pDOztBdUQ3dUtBO0VBQWlDLGdCQUFBO0F2RGl2S2pDOztBdURodktBO0VBQTBDLGdCQUFBO0F2RG92SzFDOztBdURudktBO0VBQXlDLGdCQUFBO0F2RHV2S3pDOztBdUR0dktBO0VBQXdDLGdCQUFBO0F2RDB2S3hDOztBdUR6dktBO0VBQW9DLGdCQUFBO0F2RDZ2S3BDOztBdUQ1dktBO0VBQXlDLGdCQUFBO0F2RGd3S3pDOztBdUQvdktBO0VBQTRDLGdCQUFBO0F2RG13SzVDOztBdURsd0tBO0VBQTBDLGdCQUFBO0F2RHN3SzFDOztBdURyd0tBO0VBQXFDLGdCQUFBO0F2RHl3S3JDOztBdUR4d0tBO0VBQW1DLGdCQUFBO0F2RDR3S25DOztBdUQzd0tBO0VBQXdDLGdCQUFBO0F2RCt3S3hDOztBdUQ5d0tBO0VBQWlDLGdCQUFBO0F2RGt4S2pDOztBdURqeEtBO0VBQXdDLGdCQUFBO0F2RHF4S3hDOztBdURweEtBO0VBQTBDLGdCQUFBO0F2RHd4SzFDOztBdUR2eEtBO0VBQXlDLGdCQUFBO0F2RDJ4S3pDOztBdUQxeEtBO0VBQW1DLGdCQUFBO0F2RDh4S25DOztBdUQ3eEtBO0VBQXNDLGdCQUFBO0F2RGl5S3RDOztBdURoeUtBO0VBQXFDLGdCQUFBO0F2RG95S3JDOztBdURueUtBO0VBQXdDLGdCQUFBO0F2RHV5S3hDOztBdUR0eUtBO0VBQWlDLGdCQUFBO0F2RDB5S2pDOztBdUR6eUtBO0VBQW9DLGdCQUFBO0F2RDZ5S3BDOztBdUQ1eUtBO0VBQW9DLGdCQUFBO0F2RGd6S3BDOztBdUQveUtBO0VBQWlDLGdCQUFBO0F2RG16S2pDOztBdURsektBO0VBQW9DLGdCQUFBO0F2RHN6S3BDOztBdURyektBO0VBQW1DLGdCQUFBO0F2RHl6S25DOztBdUR4ektBO0VBQW1DLGdCQUFBO0F2RDR6S25DOztBdUQzektBO0VBQTBDLGdCQUFBO0F2RCt6SzFDOztBdUQ5ektBO0VBQWtDLGdCQUFBO0F2RGswS2xDOztBdURqMEtBO0VBQTZDLGdCQUFBO0F2RHEwSzdDOztBdURwMEtBO0VBQXFDLGdCQUFBO0F2RHcwS3JDOztBdUR2MEtBO0VBQWtDLGdCQUFBO0F2RDIwS2xDOztBdUQxMEtBO0VBQWtDLGdCQUFBO0F2RDgwS2xDOztBdUQ3MEtBO0VBQXVDLGdCQUFBO0F2RGkxS3ZDOztBdURoMUtBO0VBQWtDLGdCQUFBO0F2RG8xS2xDOztBdURuMUtBO0VBQW1DLGdCQUFBO0F2RHUxS25DOztBdUR0MUtBO0VBQXNDLGdCQUFBO0F2RDAxS3RDOztBdUR6MUtBO0VBQXVDLGdCQUFBO0F2RDYxS3ZDOztBdUQ1MUtBO0VBQWtDLGdCQUFBO0F2RGcyS2xDOztBdUQvMUtBO0VBQXVDLGdCQUFBO0F2RG0yS3ZDOztBdURsMktBO0VBQXVDLGdCQUFBO0F2RHMyS3ZDOztBdURyMktBO0VBQWlDLGdCQUFBO0F2RHkyS2pDOztBdUR4MktBO0VBQW9DLGdCQUFBO0F2RDQyS3BDOztBdUQzMktBO0VBQXdDLGdCQUFBO0F2RCsyS3hDOztBdUQ5MktBO0VBQWdDLGdCQUFBO0F2RGszS2hDOztBdURqM0tBO0VBQXFDLGdCQUFBO0F2RHEzS3JDOztBdURwM0tBO0VBQTJDLGdCQUFBO0F2RHczSzNDOztBdUR2M0tBO0VBQTRDLGdCQUFBO0F2RDIzSzVDOztBdUQxM0tBO0VBQXlDLGdCQUFBO0F2RDgzS3pDOztBdUQ3M0tBO0VBQXNDLGdCQUFBO0F2RGk0S3RDOztBdURoNEtBO0VBQW9DLGdCQUFBO0F2RG80S3BDOztBdURuNEtBO0VBQXFDLGdCQUFBO0F2RHU0S3JDOztBdUR0NEtBO0VBQWlDLGdCQUFBO0F2RDA0S2pDOztBdUR6NEtBO0VBQWtDLGdCQUFBO0F2RDY0S2xDOztBdUQ1NEtBO0VBQXdDLGdCQUFBO0F2RGc1S3hDOztBdUQvNEtBO0VBQWlDLGdCQUFBO0F2RG01S2pDOztBdURsNUtBO0VBQTRDLGdCQUFBO0F2RHM1SzVDOztBdURyNUtBO0VBQWdELGdCQUFBO0F2RHk1S2hEOztBdUR4NUtBO0VBQTBDLGdCQUFBO0F2RDQ1SzFDOztBdUQzNUtBO0VBQThDLGdCQUFBO0F2RCs1SzlDOztBdUQ5NUtBO0VBQTZDLGdCQUFBO0F2RGs2SzdDOztBdURqNktBO0VBQWlELGdCQUFBO0F2RHE2S2pEOztBdURwNktBO0VBQTJDLGdCQUFBO0F2RHc2SzNDOztBdUR2NktBO0VBQStDLGdCQUFBO0F2RDI2Sy9DOztBdUQxNktBO0VBQXNDLGdCQUFBO0F2RDg2S3RDOztBdUQ3NktBO0VBQThDLGdCQUFBO0F2RGk3SzlDOztBdURoN0tBO0VBQWtELGdCQUFBO0F2RG83S2xEOztBdURuN0tBO0VBQTRDLGdCQUFBO0F2RHU3SzVDOztBdUR0N0tBO0VBQWdELGdCQUFBO0F2RDA3S2hEOztBdUR6N0tBO0VBQW9DLGdCQUFBO0F2RDY3S3BDOztBdUQ1N0tBO0VBQXVDLGdCQUFBO0F2RGc4S3ZDOztBdUQvN0tBO0VBQXVDLGdCQUFBO0F2RG04S3ZDOztBdURsOEtBO0VBQWdDLGdCQUFBO0F2RHM4S2hDOztBdURyOEtBO0VBQTBDLGdCQUFBO0F2RHk4SzFDOztBdUR4OEtBO0VBQW9DLGdCQUFBO0F2RDQ4S3BDOztBdUQzOEtBO0VBQXlDLGdCQUFBO0F2RCs4S3pDOztBdUQ5OEtBO0VBQXdDLGdCQUFBO0F2RGs5S3hDOztBdURqOUtBO0VBQW1DLGdCQUFBO0F2RHE5S25DOztBdURwOUtBO0VBQW9DLGdCQUFBO0F2RHc5S3BDOztBdUR2OUtBO0VBQW9DLGdCQUFBO0F2RDI5S3BDOztBdUQxOUtBO0VBQW9DLGdCQUFBO0F2RDg5S3BDOztBdUQ3OUtBO0VBQXNDLGdCQUFBO0F2RGkrS3RDOztBdURoK0tBO0VBQW1DLGdCQUFBO0F2RG8rS25DOztBdURuK0tBO0VBQXdDLGdCQUFBO0F2RHUrS3hDOztBdUR0K0tBO0VBQTRDLGdCQUFBO0F2RDArSzVDOztBdUR6K0tBO0VBQXdDLGdCQUFBO0F2RDYrS3hDOztBdUQ1K0tBO0VBQTJDLGdCQUFBO0F2RGcvSzNDOztBdUQvK0tBO0VBQTJDLGdCQUFBO0F2RG0vSzNDOztBdURsL0tBO0VBQXNDLGdCQUFBO0F2RHMvS3RDOztBdURyL0tBO0VBQWtDLGdCQUFBO0F2RHkvS2xDOztBdUR4L0tBO0VBQWlDLGdCQUFBO0F2RDQvS2pDOztBdUQzL0tBO0VBQThDLGdCQUFBO0F2RCsvSzlDOztBdUQ5L0tBO0VBQXNDLGdCQUFBO0F2RGtnTHRDOztBdURqZ0xBO0VBQTBDLGdCQUFBO0F2RHFnTDFDOztBdURwZ0xBO0VBQTBDLGdCQUFBO0F2RHdnTDFDOztBdUR2Z0xBO0VBQXlDLGdCQUFBO0F2RDJnTHpDOztBdUQxZ0xBO0VBQXVDLGdCQUFBO0F2RDhnTHZDOztBdUQ3Z0xBO0VBQWtDLGdCQUFBO0F2RGloTGxDOztBdURoaExBO0VBQXlDLGdCQUFBO0F2RG9oTHpDOztBdURuaExBO0VBQXlDLGdCQUFBO0F2RHVoTHpDOztBdUR0aExBO0VBQTBDLGdCQUFBO0F2RDBoTDFDOztBdUR6aExBO0VBQXlDLGdCQUFBO0F2RDZoTHpDOztBdUQ1aExBO0VBQXdDLGdCQUFBO0F2RGdpTHhDOztBdUQvaExBO0VBQXlDLGdCQUFBO0F2RG1pTHpDOztBdURsaUxBO0VBQXdDLGdCQUFBO0F2RHNpTHhDOztBdURyaUxBO0VBQWlDLGdCQUFBO0F2RHlpTGpDOztBdUR4aUxBO0VBQXdDLGdCQUFBO0F2RDRpTHhDOztBdUQzaUxBO0VBQXNDLGdCQUFBO0F2RCtpTHRDOztBdUQ5aUxBO0VBQXlDLGdCQUFBO0F2RGtqTHpDOztBdURqakxBO0VBQWtDLGdCQUFBO0F2RHFqTGxDOztBdURwakxBO0VBQXNDLGdCQUFBO0F2RHdqTHRDOztBdUR2akxBO0VBQTRDLGdCQUFBO0F2RDJqTDVDOztBdUQxakxBO0VBQXdDLGdCQUFBO0F2RDhqTHhDOztBdUQ3akxBO0VBQW1DLGdCQUFBO0F2RGlrTG5DOztBdURoa0xBO0VBQW1DLGdCQUFBO0F2RG9rTG5DOztBdURua0xBO0VBQXdDLGdCQUFBO0F2RHVrTHhDOztBdUR0a0xBO0VBQTBDLGdCQUFBO0F2RDBrTDFDOztBdUR6a0xBO0VBQW1DLGdCQUFBO0F2RDZrTG5DOztBdUQ1a0xBO0VBQXFDLGdCQUFBO0F2RGdsTHJDOztBdUQva0xBO0VBQXdDLGdCQUFBO0F2RG1sTHhDOztBdURsbExBO0VBQXlDLGdCQUFBO0F2RHNsTHpDOztBdURybExBO0VBQXdDLGdCQUFBO0F2RHlsTHhDOztBdUR4bExBO0VBQStDLGdCQUFBO0F2RDRsTC9DOztBdUQzbExBO0VBQXNDLGdCQUFBO0F2RCtsTHRDOztBdUQ5bExBO0VBQW1DLGdCQUFBO0F2RGttTG5DOztBdURqbUxBO0VBQXFDLGdCQUFBO0F2RHFtTHJDOztBdURwbUxBO0VBQTZDLGdCQUFBO0F2RHdtTDdDOztBdUR2bUxBO0VBQWdDLGdCQUFBO0F2RDJtTGhDOztBdUQxbUxBO0VBQXdDLGdCQUFBO0F2RDhtTHhDOztBdUQ3bUxBO0VBQXdDLGdCQUFBO0F2RGluTHhDOztBdURobkxBO0VBQW1DLGdCQUFBO0F2RG9uTG5DOztBdURubkxBO0VBQXFDLGdCQUFBO0F2RHVuTHJDOztBdUR0bkxBO0VBQWlDLGdCQUFBO0F2RDBuTGpDOztBdUR6bkxBO0VBQXVDLGdCQUFBO0F2RDZuTHZDOztBdUQ1bkxBO0VBQWtDLGdCQUFBO0F2RGdvTGxDOztBdUQvbkxBO0VBQW9DLGdCQUFBO0F2RG1vTHBDOztBdURsb0xBO0VBQTBDLGdCQUFBO0F2RHNvTDFDOztBdURyb0xBO0VBQW9DLGdCQUFBO0F2RHlvTHBDOztBdUR4b0xBO0VBQXNDLGdCQUFBO0F2RDRvTHRDOztBdUQzb0xBO0VBQWlDLGdCQUFBO0F2RCtvTGpDOztBdUQ5b0xBO0VBQXFDLGdCQUFBO0F2RGtwTHJDOztBdURqcExBO0VBQW9DLGdCQUFBO0F2RHFwTHBDOztBdURwcExBO0VBQWtDLGdCQUFBO0F2RHdwTGxDOztBdUR2cExBO0VBQXlDLGdCQUFBO0F2RDJwTHpDOztBdUQxcExBO0VBQW1DLGdCQUFBO0F2RDhwTG5DOztBdUQ3cExBO0VBQXVDLGdCQUFBO0F2RGlxTHZDOztBdURocUxBO0VBQW9DLGdCQUFBO0F2RG9xTHBDOztBdURucUxBO0VBQTJDLGdCQUFBO0F2RHVxTDNDOztBdUR0cUxBO0VBQWdDLGdCQUFBO0F2RDBxTGhDOztBdUR6cUxBO0VBQWlDLGdCQUFBO0F2RDZxTGpDOztBdUQ1cUxBO0VBQWlDLGdCQUFBO0F2RGdyTGpDOztBdUQvcUxBO0VBQWtDLGdCQUFBO0F2RG1yTGxDOztBdURsckxBO0VBQWlDLGdCQUFBO0F2RHNyTGpDOztBdURyckxBO0VBQXNDLGdCQUFBO0F2RHlyTHRDOztBdUR4ckxBO0VBQWtDLGdCQUFBO0F2RDRyTGxDOztBdUQzckxBO0VBQXVDLGdCQUFBO0F2RCtyTHZDOztBdUQ5ckxBO0VBQXFDLGdCQUFBO0F2RGtzTHJDOztBdURqc0xBO0VBQTJDLGdCQUFBO0F2RHFzTDNDOztBdURwc0xBO0VBQTZDLGdCQUFBO0F2RHdzTDdDOztBdUR2c0xBO0VBQTRDLGdCQUFBO0F2RDJzTDVDOztBdUQxc0xBO0VBQTBDLGdCQUFBO0F2RDhzTDFDOztBdUQ3c0xBO0VBQWtDLGdCQUFBO0F2RGl0TGxDOztBdURodExBO0VBQXFDLGdCQUFBO0F2RG90THJDOztBdURudExBO0VBQXdDLGdCQUFBO0F2RHV0THhDOztBdUR0dExBO0VBQXVDLGdCQUFBO0F2RDB0THZDOztBdUR6dExBO0VBQStCLGdCQUFBO0F2RDZ0TC9COztBdUQ1dExBO0VBQXFDLGdCQUFBO0F2RGd1THJDOztBdUQvdExBO0VBQW9DLGdCQUFBO0F2RG11THBDOztBdURsdUxBO0VBQXlDLGdCQUFBO0F2RHN1THpDOztBdURydUxBO0VBQTBDLGdCQUFBO0F2RHl1TDFDOztBdUR4dUxBO0VBQW9DLGdCQUFBO0F2RDR1THBDOztBdUQzdUxBO0VBQXNDLGdCQUFBO0F2RCt1THRDOztBdUQ5dUxBO0VBQXdDLGdCQUFBO0F2RGt2THhDOztBdURqdkxBO0VBQThDLGdCQUFBO0F2RHF2TDlDOztBdURwdkxBO0VBQTZDLGdCQUFBO0F2RHd2TDdDOztBdUR2dkxBO0VBQTZDLGdCQUFBO0F2RDJ2TDdDOztBdUQxdkxBO0VBQWdELGdCQUFBO0F2RDh2TGhEOztBdUQ3dkxBO0VBQXVELGdCQUFBO0F2RGl3THZEOztBdURod0xBO0VBQXdDLGdCQUFBO0F2RG93THhDOztBdURud0xBO0VBQXdDLGdCQUFBO0F2RHV3THhDOztBdUR0d0xBO0VBQXNDLGdCQUFBO0F2RDB3THRDOztBdUR6d0xBO0VBQXNDLGdCQUFBO0F2RDZ3THRDOztBdUQ1d0xBO0VBQXVDLGdCQUFBO0F2RGd4THZDOztBdUQvd0xBO0VBQW1DLGdCQUFBO0F2RG14TG5DOztBdURseExBO0VBQWtDLGdCQUFBO0F2RHN4TGxDOztBdURyeExBO0VBQXlDLGdCQUFBO0F2RHl4THpDOztBdUR4eExBO0VBQWlDLGdCQUFBO0F2RDR4TGpDOztBdUQzeExBO0VBQXVDLGdCQUFBO0F2RCt4THZDOztBdUQ5eExBO0VBQWtDLGdCQUFBO0F2RGt5TGxDOztBdURqeUxBO0VBQXVDLGdCQUFBO0F2RHF5THZDOztBdURweUxBO0VBQXNDLGdCQUFBO0F2RHd5THRDOztBdUR2eUxBO0VBQW1DLGdCQUFBO0F2RDJ5TG5DOztBdUQxeUxBO0VBQXlDLGdCQUFBO0F2RDh5THpDOztBdUQ3eUxBO0VBQStDLGdCQUFBO0F2RGl6TC9DOztBdURoekxBO0VBQW9DLGdCQUFBO0F2RG96THBDOztBdURuekxBO0VBQWtDLGdCQUFBO0F2RHV6TGxDOztBdUR0ekxBO0VBQWtDLGdCQUFBO0F2RDB6TGxDOztBdUR6ekxBO0VBQWtDLGdCQUFBO0F2RDZ6TGxDOztBdUQ1ekxBO0VBQXVDLGdCQUFBO0F2RGcwTHZDOztBdUQvekxBO0VBQW9DLGdCQUFBO0F2RG0wTHBDOztBdURsMExBO0VBQTZDLGdCQUFBO0F2RHMwTDdDOztBdURyMExBO0VBQXNDLGdCQUFBO0F2RHkwTHRDOztBdUR4MExBO0VBQTBDLGdCQUFBO0F2RDQwTDFDOztBdUQzMExBO0VBQW9DLGdCQUFBO0F2RCswTHBDOztBdUQ5MExBO0VBQWtDLGdCQUFBO0F2RGsxTGxDOztBdURqMUxBO0VBQWlDLGdCQUFBO0F2RHExTGpDOztBdURwMUxBO0VBQXdDLGdCQUFBO0F2RHcxTHhDOztBdUR2MUxBO0VBQTRDLGdCQUFBO0F2RDIxTDVDOztBdUQxMUxBO0VBQWtDLGdCQUFBO0F2RDgxTGxDOztBdUQ3MUxBO0VBQXNDLGdCQUFBO0F2RGkyTHRDOztBdURoMkxBO0VBQTBDLGdCQUFBO0F2RG8yTDFDOztBdURuMkxBO0VBQThDLGdCQUFBO0F2RHUyTDlDOztBdUR0MkxBO0VBQWlDLGdCQUFBO0F2RDAyTGpDOztBdUR6MkxBO0VBQW1DLGdCQUFBO0F2RDYyTG5DOztBdUQ1MkxBO0VBQXdDLGdCQUFBO0F2RGczTHhDOztBdUQvMkxBO0VBQW1DLGdCQUFBO0F2RG0zTG5DOztBdURsM0xBO0VBQWtDLGdCQUFBO0F2RHMzTGxDOztBdURyM0xBO0VBQTBDLGdCQUFBO0F2RHkzTDFDOztBdUR4M0xBO0VBQTBDLGdCQUFBO0F2RDQzTDFDOztBdUQzM0xBO0VBQXlDLGdCQUFBO0F2RCszTHpDOztBdUQ5M0xBO0VBQXlDLGdCQUFBO0F2RGs0THpDOztBdURqNExBO0VBQW1DLGdCQUFBO0F2RHE0TG5DOztBdURwNExBO0VBQWdDLGdCQUFBO0F2RHc0TGhDOztBdUR2NExBO0VBQW1DLGdCQUFBO0F2RDI0TG5DOztBdUQxNExBO0VBQTBDLGdCQUFBO0F2RDg0TDFDOztBdUQ3NExBO0VBQStCLGdCQUFBO0F2RGk1TC9COztBdURoNUxBO0VBQW1DLGdCQUFBO0F2RG81TG5DOztBdURuNUxBO0VBQW9DLGdCQUFBO0F2RHU1THBDOztBdUR0NUxBO0VBQTJDLGdCQUFBO0F2RDA1TDNDOztBdUR6NUxBO0VBQWtDLGdCQUFBO0F2RDY1TGxDOztBdUQ1NUxBO0VBQWlDLGdCQUFBO0F2RGc2TGpDOztBdUQvNUxBO0VBQW1DLGdCQUFBO0F2RG02TG5DOztBdURsNkxBO0VBQWtDLGdCQUFBO0F2RHM2TGxDOztBdURyNkxBO0VBQW9DLGdCQUFBO0F2RHk2THBDOztBdUR4NkxBO0VBQXFDLGdCQUFBO0F2RDQ2THJDOztBdUQzNkxBO0VBQTJDLGdCQUFBO0F2RCs2TDNDOztBdUQ5NkxBO0VBQXNDLGdCQUFBO0F2RGs3THRDOztBdURqN0xBO0VBQWlDLGdCQUFBO0F2RHE3TGpDOztBdURwN0xBO0VBQXFDLGdCQUFBO0F2RHc3THJDOztBdUR2N0xBO0VBQXdDLGdCQUFBO0F2RDI3THhDOztBdUQxN0xBO0VBQWtDLGdCQUFBO0F2RDg3TGxDOztBdUQ3N0xBO0VBQTZDLGdCQUFBO0F2RGk4TDdDOztBdURoOExBO0VBQXVDLGdCQUFBO0F2RG84THZDOztBdURuOExBO0VBQW1DLGdCQUFBO0F2RHU4TG5DOztBdUR0OExBO0VBQW1DLGdCQUFBO0F2RDA4TG5DOztBdUR6OExBO0VBQXVDLGdCQUFBO0F2RDY4THZDOztBdUQ1OExBO0VBQXFDLGdCQUFBO0F2RGc5THJDOztBdUQvOExBO0VBQW9DLGdCQUFBO0F2RG05THBDOztBdURsOUxBO0VBQW1DLGdCQUFBO0F2RHM5TG5DOztBdURyOUxBO0VBQWdDLGdCQUFBO0F2RHk5TGhDOztBdUR4OUxBO0VBQWdDLGdCQUFBO0F2RDQ5TGhDOztBdUQzOUxBO0VBQWlDLGdCQUFBO0F2RCs5TGpDOztBdUQ5OUxBO0VBQXFDLGdCQUFBO0F2RGsrTHJDOztBdURqK0xBO0VBQTJDLGdCQUFBO0F2RHErTDNDOztBdURwK0xBO0VBQTJDLGdCQUFBO0F2RHcrTDNDOztBdUR2K0xBO0VBQXVDLGdCQUFBO0F2RDIrTHZDOztBdUQxK0xBO0VBQXdDLGdCQUFBO0F2RDgrTHhDOztBdUQ3K0xBO0VBQXVDLGdCQUFBO0F2RGkvTHZDOztBdURoL0xBO0VBQXFDLGdCQUFBO0F2RG8vTHJDOztBdURuL0xBO0VBQXNDLGdCQUFBO0F2RHUvTHRDOztBdUR0L0xBO0VBQXlDLGdCQUFBO0F2RDAvTHpDOztBdUR6L0xBO0VBQTBDLGdCQUFBO0F2RDYvTDFDOztBdUQ1L0xBO0VBQXlDLGdCQUFBO0F2RGdnTXpDOztBdUQvL0xBO0VBQXNDLGdCQUFBO0F2RG1nTXRDOztBdURsZ01BO0VBQW9DLGdCQUFBO0F2RHNnTXBDOztBdURyZ01BO0VBQXVDLGdCQUFBO0F2RHlnTXZDOztBdUR4Z01BO0VBQXVDLGdCQUFBO0F2RDRnTXZDOztBdUQzZ01BO0VBQXVDLGdCQUFBO0F2RCtnTXZDOztBdUQ5Z01BO0VBQXNDLGdCQUFBO0F2RGtoTXRDOztBdURqaE1BO0VBQXdDLGdCQUFBO0F2RHFoTXhDOztBdURwaE1BO0VBQXdDLGdCQUFBO0F2RHdoTXhDOztBdUR2aE1BO0VBQXVDLGdCQUFBO0F2RDJoTXZDOztBdUQxaE1BO0VBQXFDLGdCQUFBO0F2RDhoTXJDOztBdUQ3aE1BO0VBQXFDLGdCQUFBO0F2RGlpTXJDOztBdURoaU1BO0VBQXVDLGdCQUFBO0F2RG9pTXZDOztBdURuaU1BO0VBQWtDLGdCQUFBO0F2RHVpTWxDOztBdUR0aU1BO0VBQXNDLGdCQUFBO0F2RDBpTXRDOztBdUR6aU1BO0VBQXdDLGdCQUFBO0F2RDZpTXhDOztBdUQ1aU1BO0VBQWlDLGdCQUFBO0F2RGdqTWpDOztBdUQvaU1BO0VBQXFDLGdCQUFBO0F2RG1qTXJDOztBdURsak1BO0VBQTBDLGdCQUFBO0F2RHNqTTFDOztBdURyak1BO0VBQXFDLGdCQUFBO0F2RHlqTXJDOztBdUR4ak1BO0VBQW1DLGdCQUFBO0F2RDRqTW5DOztBdUQzak1BO0VBQTBDLGdCQUFBO0F2RCtqTTFDOztBdUQ5ak1BO0VBQWtDLGdCQUFBO0F2RGtrTWxDOztBdURqa01BO0VBQXlDLGdCQUFBO0F2RHFrTXpDOztBdURwa01BO0VBQXVDLGdCQUFBO0F2RHdrTXZDOztBdUR2a01BO0VBQW9DLGdCQUFBO0F2RDJrTXBDOztBdUQxa01BO0VBQW1DLGdCQUFBO0F2RDhrTW5DOztBdUQ3a01BO0VBQTBDLGdCQUFBO0F2RGlsTTFDOztBdURobE1BO0VBQWlDLGdCQUFBO0F2RG9sTWpDOztBdURubE1BO0VBQWtDLGdCQUFBO0F2RHVsTWxDOztBdUR0bE1BO0VBQWtDLGdCQUFBO0F2RDBsTWxDOztBdUR6bE1BO0VBQWtDLGdCQUFBO0F2RDZsTWxDOztBdUQ1bE1BO0VBQXdDLGdCQUFBO0F2RGdtTXhDOztBdUQvbE1BO0VBQW1DLGdCQUFBO0F2RG1tTW5DOztBdURsbU1BO0VBQWtDLGdCQUFBO0F2RHNtTWxDOztBdURybU1BO0VBQXlDLGdCQUFBO0F2RHltTXpDOztBdUR4bU1BO0VBQW9DLGdCQUFBO0F2RDRtTXBDOztBdUQzbU1BO0VBQWlDLGdCQUFBO0F2RCttTWpDOztBdUQ5bU1BO0VBQWtDLGdCQUFBO0F2RGtuTWxDOztBdURqbk1BO0VBQXdDLGdCQUFBO0F2RHFuTXhDOztBdURwbk1BO0VBQW9DLGdCQUFBO0F2RHduTXBDOztBdUR2bk1BO0VBQStCLGdCQUFBO0F2RDJuTS9COztBdUQxbk1BO0VBQWdDLGdCQUFBO0F2RDhuTWhDOztBdUQ3bk1BO0VBQXNDLGdCQUFBO0F2RGlvTXRDOztBdURob01BO0VBQTRDLGdCQUFBO0F2RG9vTTVDOztBdURub01BO0VBQXdDLGdCQUFBO0F2RHVvTXhDOztBdUR0b01BO0VBQXdDLGdCQUFBO0F2RDBvTXhDOztBdUR6b01BO0VBQXVDLGdCQUFBO0F2RDZvTXZDOztBdUQ1b01BO0VBQXNDLGdCQUFBO0F2RGdwTXRDOztBdUQvb01BO0VBQXFDLGdCQUFBO0F2RG1wTXJDOztBdURscE1BO0VBQXlDLGdCQUFBO0F2RHNwTXpDOztBdURycE1BO0VBQWtDLGdCQUFBO0F2RHlwTWxDOztBdUR4cE1BO0VBQW9DLGdCQUFBO0F2RDRwTXBDOztBdUQzcE1BO0VBQW1DLGdCQUFBO0F2RCtwTW5DOztBdUQ5cE1BO0VBQXNDLGdCQUFBO0F2RGtxTXRDOztBdURqcU1BO0VBQWtDLGdCQUFBO0F2RHFxTWxDOztBdURwcU1BO0VBQXdDLGdCQUFBO0F2RHdxTXhDOztBdUR2cU1BO0VBQWlDLGdCQUFBO0F2RDJxTWpDOztBdUQxcU1BO0VBQW1DLGdCQUFBO0F2RDhxTW5DOztBdUQ3cU1BO0VBQWtDLGdCQUFBO0F2RGlyTWxDOztBdURock1BO0VBQW1DLGdCQUFBO0F2RG9yTW5DOztBdURuck1BO0VBQTJDLGdCQUFBO0F2RHVyTTNDOztBdUR0ck1BO0VBQW1DLGdCQUFBO0F2RDByTW5DOztBdUR6ck1BO0VBQXFDLGdCQUFBO0F2RDZyTXJDOztBdUQ1ck1BO0VBQTRDLGdCQUFBO0F2RGdzTTVDOztBdUQvck1BO0VBQXVDLGdCQUFBO0F2RG1zTXZDOztBdURsc01BO0VBQWtDLGdCQUFBO0F2RHNzTWxDOztBdURyc01BO0VBQWlDLGdCQUFBO0F2RHlzTWpDOztBdUR4c01BO0VBQXdDLGdCQUFBO0F2RDRzTXhDOztBdUQzc01BO0VBQWlDLGdCQUFBO0F2RCtzTWpDOztBdUQ5c01BO0VBQXlDLGdCQUFBO0F2RGt0TXpDOztBdURqdE1BO0VBQTRDLGdCQUFBO0F2RHF0TTVDOztBdURwdE1BO0VBQTRDLGdCQUFBO0F2RHd0TTVDOztBdUR2dE1BO0VBQTJDLGdCQUFBO0F2RDJ0TTNDOztBdUQxdE1BO0VBQW9DLGdCQUFBO0F2RDh0TXBDOztBdUQ3dE1BO0VBQXdDLGdCQUFBO0F2RGl1TXhDOztBdURodU1BO0VBQXVDLGdCQUFBO0F2RG91TXZDOztBdURudU1BO0VBQTJDLGdCQUFBO0F2RHV1TTNDOztBdUR0dU1BO0VBQWdDLGdCQUFBO0F2RDB1TWhDOztBdUR6dU1BO0VBQWlELGdCQUFBO0F2RDZ1TWpEOztBdUQ1dU1BO0VBQWdELGdCQUFBO0F2RGd2TWhEOztBdUQvdU1BO0VBQXFDLGdCQUFBO0F2RG12TXJDOztBdURsdk1BO0VBQXNDLGdCQUFBO0F2RHN2TXRDOztBdURydk1BO0VBQTZDLGdCQUFBO0F2RHl2TTdDOztBdUR4dk1BO0VBQXVDLGdCQUFBO0F2RDR2TXZDOztBdUQzdk1BO0VBQXVDLGdCQUFBO0F2RCt2TXZDOztBdUQ5dk1BO0VBQW9DLGdCQUFBO0F2RGt3TXBDOztBdURqd01B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QUE7RUFBQSxnQkFBQTtFQUFBLGlDQUFBO0F0Qnd3YWhCOztBZ0YveGFJO0UxRHVCWSw2QkFBQTtFQUFBLGVBQUE7RUFBQSxnQkFBQTtFQUFBLGdCQUFBO0VBQUEsaUNBQUE7RTBEckJSLHNCQUFBO0FoRnN5YVI7QTZCN3VhSTtFbUQzREE7SUFLUSxlQUFBO0VoRnV5YVY7QUFDRjtBZ0ZweWFJO0VBQ0ksdUJBQUE7QWhGc3lhUjtBZ0JudGFJO0VBQ0kseUJjOURXO0VkK0RYLFdBQUE7RUFDQSxxQkFBQTtFQUNBLDRHQUFBO1VBQUEsb0dBQUE7RUFDQSw4QkFBQTtVQUFBLHNCQUFBO0VBQ0Esd0JBQUE7VUFBQSxnQkFBQTtFQUNBLG9CQUFBO0VBVUkseUJBQUE7RUFDQSwwQkFBQTtBaEI0c2FaO0FnQnJ0YVE7RUFUSjtJQVVRLDRHQUFBO1lBQUEsb0dBQUE7RWhCd3RhVjtBQUNGO0FnRjN5YWdCO0VBQ0ksdUJBQUE7QWhGNnlhcEI7QWdGenlhWTtFQUNJLGtCQUFBO0VBQ0Esc0JBQUE7RUFDQSxxQkFBQTtBaEYyeWFoQjtBZ0Z2eWFRO0UxRFZRLDhCQUFBO0VBQUEsZUFBQTtFQUFBLGdCQUFBO0VBQUEsZ0JBQUE7RUFBQSxpQ0FBQTtBdEJ3emFoQjtBZ0Z6eWFJO0UxRGZZLDhCQUFBO0VBQUEsZUFBQTtFQUFBLGdCQUFBO0VBQUEsZ0JBQUE7RUFBQSxpQ0FBQTtFMERpQlIscUJBQUE7QWhGK3lhUjtBZ0Y3eWFRO0VBQ0kscUJBQUE7QWhGK3lhWjtBZ0YzeWFZO0VBQ0ksWUFBQTtFQUNBLGVBQUE7RUFDQSx5QkFBQTtBaEY2eWFoQjtBZ0YzeWFnQjtFQUNJLGFBQUE7QWhGNnlhcEI7QWdGdnlhSTtFQUNJLFdBQUE7RUFDQSxZQUFBO0VBQ0Esa0JBQUE7RUFDQSxzQkFBQTtBaEZ5eWFSO0E2Qjd5YUk7RW1EQUE7SUFPUSxXQUFBO0lBQ0EsWUFBQTtFaEYweWFWO0FBQ0YiLCJmaWxlIjoiLi4vdGFyZ2V0L3ZhdWx0LXdvcmsvamNyX3Jvb3QvYXBwcy92b2x2by9jbGllbnRsaWJzL3ZvbHZvLXRydWNrcy9wdWJsaXNoL3RydWNrcy5wdWJsaXNoLmJ1bmRsZS5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyJAY2hhcnNldCBcIlVURi04XCI7XG4vKlxuQWxzbyBwbGVhc2UgZm9sbG93IHRoaXNcbkRvIHlvdXIgcHJvamVjdCBoYXZlIGRpZmVyZW50IGNoYXJzZXQgbGFuZ3VhZ2VzIHRvIGFjY291bnQgd2l0aD9cbiAgICAgIC0gWWVzIC0+IGZvbGxvdyBodHRwczovL3Byb2plY3RzLm5ldGNlbnRyaWMuYml6L3dpa2kvZGlzcGxheS9GUk9OVEVORC9DU1MrLStGb250K05vcm1hbGl6YXRpb25cbiAgICAgIC0gTm8gLT4gWW91IGNhbiBzdGlsbCB1c2UgaXQsIHRoZXJlIGFyZSB0b25zIG9mIGFkdmFudGFnZXMsIGJ1dCBpdHMgY3JlYXRlIHNvbWUgZXh0cmEgY3NzIGFuZCBsYXlvdXQgcmVuZGVyaW5nXG4qL1xuLypcbiAgKiBEZXNpZ24gc3BlYzpcbiAgKiBodHRwczovL3d3dy5maWdtYS5jb20vZmlsZS9TUjRydlFsTm5DbVBNclE5V1lhSXF2L2JyYW5jaC9USnFrRnltcTA5d2Y4S3dtWTFXTmNqL1ZvbHZvLUFFTS1EZXNpZ24tc3lzdGVtP3R5cGU9ZGVzaWduJm5vZGUtaWQ9Ny0yNiZ0PXBBbTkxNlZSaXFDT0QySTEtMFxuKi9cbi8qKlxuICogei1pbmRleGVzIGZyb20gbG93ZXIgdG8gLT4gaGlnaGVyXG4gKi9cbi8qIGRvY1xuLS0tXG50aXRsZTogUGl4ZWwgdG8gZW1cbm5hbWU6IG5uLXB4LXRvLWVtXG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cblxuQ2FsY3VsYXRlIHRoZSBlbSB3aXRoIGEgZ2l2ZW4gcGl4ZWwgd2l0aCB0aGUgZ2l2ZW4gYmFzZSBmb250IHNpemVcbklmIHlvdSBkb24ndCBzZXQgYSAkYmFzZSB0aGUgJGJhc2UtZm9udC1zaXplIGlzIHVzZWQgYXMgdGhlIGNvbnRleHRcblxuIyMgTGl2ZSBUZW1wbGF0ZSBhYmJyZXZpYXRpb25zXG4tLS1cbi1wdHVcblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICR2YWx1ZSA9IHBpeGVsIGJhc2VkIG51bWJlciAod2l0aG91dCB1bml0KVxuQHBhcmFtZXRlciAkYmFzZSA9IHBpeGVsIGJhc2VkIG51bWJlciAod2l0aG91dCB1bml0KVxuXG4jIyBEZXBlbmRlbmNpZXNcbi0tLVxubm4tc3RyaXAtdW5pdFxuXG4jIyBFeGFtcGxlXG4tLS1cbmBgYGh0bWxfZXhhbXBsZVxubm4tcHgtdG8tZW0oNSkgLy8gT3V0cHV0OiAwLjMxMjVlbVxubm4tcHgtdG8tZW0oNSwgMTApIC8vIE91dHB1dDogMC41ZW1cbm5uLXB4LXRvLWVtKDUsIDIwKSAvLyBPdXRwdXQ6IDAuMjVlbVxuYGBgXG4qL1xuLyogZG9jXG4tLS1cbnRpdGxlOiBQaXhlbCB0byByZW1cbm5hbWU6IG5uLXB4LXRvLXJlbVxuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5cbkNhbGN1bGF0ZSB0aGUgcmVtIHdpdGggYSBnaXZlbiBwaXhlbCB3aXRoIHRoZSBnaXZlbiBiYXNlIGZvbnQgc2l6ZVxuXG5JbjogIDVweFxuT3V0OiAwLjMxMjVyZW1cblxuIyMgTGl2ZSBUZW1wbGF0ZSBhYmJyZXZpYXRpb25zXG4tLS1cbi1yZW1cblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICR2YWx1ZSA9IHBpeGVsIGJhc2VkIG51bWJlciAod2l0aG91dCB1bml0KVxuXG4jIyBEZXBlbmRlbmNpZXNcbi0tLVxubm4tc3RyaXAtdW5pdFxuXG4jIyBFeGFtcGxlXG4tLS1cbmBgYGh0bWxfZXhhbXBsZVxubm4tcHgtdG8tcmVtKDUpIC8vIE91dHB1dCAwLjMxMjVyZW1cbmBgYFxuXG4qL1xuLyogZG9jXG4tLS1cbnRpdGxlOiBQaXhlbCB0byB1bml0XG5uYW1lOiBweC10by11bml0XG5jYXRlZ29yeTogbWl4aW5zXG4tLS1cblxuU2V0IGEgcHJvcGVydHkgYW5kIHZhbHVlIChwaXhlbCBiYXNlZCB3aXRob3V0IHVuaXQpXG5cbkNhbGN1bGF0ZXMgcmVtIC8gZW0gLyAlIGZyb20gZ2l2ZW4gcGl4ZWwgYW5kIGJhc2UgKGRlZmF1bHQgYmFzZSBpcyB0aGVcbmJhc2UtZm9udC1zaXplLCAxNnB4KVxuSWYgcnRsIGlzIHRydWUsIHRoaXMgbWl4aW4gaGFuZGxlcyBhbGwgdGhlIGRpcmVjdGlvbiBzdHVmZjpcbi0gU3dpdGNoaW5nIHRoZSB2YWx1ZXMsIHdoZW4gd2UgaGF2ZSBleGFjdGx5IDQgdmFsdWVzXG4tIFN3aXRjaGluZyBsZWZ0IGFuZCByaWdodCBpbiBwcm9wZXJ0aWVzIChwYWRkaW5nIGFuZCBtYXJnaW4pXG5cbiMjIExpdmUgVGVtcGxhdGUgYWJicmV2aWF0aW9uc1xuLS0tXG4tcHR1IChmb3IgZW0gb3IgJSB0byBwaXhlbCAtIHdpdGggYmFzZSBwYXJhbWV0ZXIpXG4tcmVtIChmb3IgcmVtIHRvIHBpeGVsIC0gd2l0aG91dCBiYXNlIHBhcmFtZXRlcilcblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICRwcm9wZXJ0eSA9IHBhZGRpbmcgfCBtYXJnaW4gfCBmb250LXNpemUgfCB3aWR0aCB8IGhlaWdodFxuQHBhcmFtZXRlciAkdmFsdWUgPSBQaXhlbCBiYXNlZCBudW1iZXIgLSBhZGQgcHggdG8ga2VlcCB0aGUgcHggZm9yIGEgdmFsdWVcbkBwYXJhbWV0ZXIgJGJhc2UgPSBweCBiYXNlZCBudW1iZXIsIERlZmF1bHQ6IDE2cHhcbkBwYXJhbWV0ZXIgJHVuaXQgPSBTZXQgdW5pdDogcHggfCBlbSB8IHJlbSB8IHBlcmNlbnRcblxuIyMgRGVwZW5kZW5jaWVzXG4tLS1cbmFic3RyYWN0L2Z1bmN0aW9ucy9zd2FwLWxlZnQtcmlnaHRcbmFic3RyYWN0L2Z1bmN0aW9ucy9zdHJpcC11bml0XG5cbiMjIEV4YW1wbGVcbi0tLVxuXG5gYGBodG1sX2V4YW1wbGVcbkBpbmNsdWRlIG5uLXB4LXRvLXVuaXQocGFkZGluZywgMCAxMHB4IDIwIDApOyA9PiBwYWRkaW5nOiAwIDEwcHggMS4yNXJlbSAwO1xuQGluY2x1ZGUgbm4tcHgtdG8tdW5pdChwYWRkaW5nLCAwIDEwIDIwIDApOyA9PiBwYWRkaW5nOiAwIDAuNjI1cmVtIDEuMjVyZW0gMDtcbkBpbmNsdWRlIG5uLXB4LXRvLXVuaXQocGFkZGluZy1sZWZ0LCAxMCk7XG5AaW5jbHVkZSBubi1weC10by11bml0KHBhZGRpbmctcmlnaHQsIDEwKTtcbkBpbmNsdWRlIG5uLXB4LXRvLXVuaXQobWFyZ2luLCAwIDEwIDIwIDApO1xuQGluY2x1ZGUgbm4tcHgtdG8tdW5pdChtYXJnaW4tbGVmdCwgMTApO1xuQGluY2x1ZGUgbm4tcHgtdG8tdW5pdChtYXJnaW4tcmlnaHQsIDEwKTtcbkBpbmNsdWRlIG5uLXB4LXRvLXVuaXQoZm9udC1zaXplLCAyMCk7XG5AaW5jbHVkZSBubi1weC10by11bml0KHdpZHRoLCAxMDApO1xuQGluY2x1ZGUgbm4tcHgtdG8tdW5pdChtaW4td2lkdGgsIDEwMCk7XG5AaW5jbHVkZSBubi1weC10by11bml0KG1hbm4td2lkdGgsIDEwMCk7XG5AaW5jbHVkZSBubi1weC10by11bml0KGhlaWdodCwgMTAwKTtcbkBpbmNsdWRlIG5uLXB4LXRvLXVuaXQobWluLWhlaWdodCwgMTAwKTtcbkBpbmNsdWRlIG5uLXB4LXRvLXVuaXQobWFubi1oZWlnaHQsIDEwMCk7XG5gYGBcblxuIyMgU291cmNlXG4tLS1cbmh0dHA6Ly9jc3MtdHJpY2tzLmNvbS9zbmlwcGV0cy9jc3MvbGVzcy1taXhpbi1mb3ItcmVtLWZvbnQtc2l6aW5nL1xuXG4qL1xuLyogZG9jXG4tLS1cbnRpdGxlOiBQaXhlbCB0byB1bml0bGVzc1xubmFtZTogbm4tcHgtdG8tdW5pdGxlc3NcbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxuXG5UaGlzIG1ha2VzIHRoZSBzYW1lIGNhbGN1bGF0aW9uIGFzIHB4IHRvIGVtLiBCdXQgaXQgZG9uJ3QgcHJpbnQgb3V0IHRoZSB1bml0LlxuXG5Vc2UgdGhpcyBmb3IgbGluZS1oZWlnaHRzLlxuXG4jIyBMaXZlIFRlbXBsYXRlIGFiYnJldmlhdGlvbnNcbi0tLVxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJHZhbHVlID0gcGl4ZWwgYmFzZWQgbnVtYmVyICh3aXRob3V0IHVuaXQpXG5AcGFyYW1ldGVyICRiYXNlID0gcGl4ZWwgYmFzZWQgbnVtYmVyICh3aXRob3V0IHVuaXQpXG5cbiMjIERlcGVuZGVuY2llc1xuLS0tXG5cbiMjIEV4YW1wbGVcbi0tLVxuXG5gYGBodG1sX2V4YW1wbGVcbmxpbmUtaGVpZ2h0OiBubi1weC10by11bml0bGVzcyg1KSAvLyBPdXRwdXQ6IDAuMzEyNVxuYGBgXG5cbiMjIFNvdXJjZVxuLS0tXG5cbiovXG4vKiBkb2Ncbi0tLVxudGl0bGU6IFN0cmlwIHVuaXRcbm5hbWU6IG5uLXN0cmlwLXVuaXRcbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxuXG5TdHJpcHMgb2YgdGhlIHVuaXQgb2YgYSBudW1iZXJcblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICRudW0gPSBudW1iZXIgd2l0aCB1bml0ICg1cHgsIDVlbSwgNXJlbSlcblxuIyMgRXhhbXBsZVxuLS0tXG5cbmBgYGh0bWxfZXhhbXBsZVxubm4tc3RyaXAtdW5pdCg1cHgpIC8vT3V0cHV0OiA1XG5ubi1zdHJpcC11bml0KDEwZW0pIC8vIE91dHB1dDogMTBcbm5uLXN0cmlwLXVuaXQoMTVyZW0pIC8vIE91dHB1dDogMTVcbmBgYFxuXG4qL1xuLyogZG9jXG4tLS1cbnRpdGxlOiB6LWluZGV4XG5uYW1lOiBubi16LWluZGV4XG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cblxuQmVjYXVzZSB6LWluZGljZXMgY2FuIGdldCB0cmlja3kgd2UgbWFuYWdlIHRoZW0gaW4gdGhlIHRoZW1lLnNjc3MgZ2xvYmFsbHkuXG5cbkFsd2F5cyB1c2UgdGhpcyBtaXhpbiB0byBzZXQgc2V0IGEgei1pbmRleC5cblxuUmVhZCB0aGUgQmVzdCBQcmFjdGljZSB0byBnZXQgYW4gZnVsbCBkb2N1bWVudGF0aW9uOlxuaHR0cHM6Ly9wcm9qZWN0cy5uZXRjZW50cmljLmJpei93aWtpL2Rpc3BsYXkvRlJPTlRFTkQvSG93K3RvK3NldCthK3otaW5kZXhcblxuIyMgTGl2ZSBUZW1wbGF0ZSBhYmJyZXZpYXRpb25zXG4tLS1cbi16XG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkZWxlbWVudCA9IE5hbWUgb2YgdGhlIGVsZW1lbnQgKG5vcm1hbGx5IHRoaXMgd2lsbCBiZSB0aGUgbW9kdWxlIG5hbWUgZm9yIHRoZSBtYWluIHN0YWNrKVxuQHBhcmFtZXRlciAkbGlzdCA9IE5hbWUgb2YgdGhlIGxpc3QgKGRlZmF1bHQgJHotaW5kaWNlcykuIE11c3QgYmUgb25seSBzZXQgZm9yIHN0YWNrIGNvbnRleHRcbkBwYXJhbWV0ZXIgJG1pbiA9IFNldCBhIG1pbmltdW0gei1pbmRleCB3aGljaCB3aWxsIGJlIGFkZGVkIHRvIHRoZSBsaXN0LlxuXG4jIyBEZXBlbmRlbmNpZXNcbi0tLVxuJHotaW5kaWNlcyB2YXJpYWJsZSBpbiB0aGUgdGhlbWUuc2Nzc1xuXG4jIyBFeGFtcGxlXG4tLS1cblxuYGBgaHRtbF9leGFtcGxlXG5cbi8vIEluIHRoZSBTQVNTIHRoZW1lIGZpbGVcblxuJHotaW5kaWNlczogc2xpZGVyLCBtb2RhbCwgZGlhbG9nLCBuYXZpZ2F0aW9uO1xuXG4vLyBJbiB0aGUgU0FTUyBtb2R1bGUgZmlsZVxuXG4ubW9kYWwge1xuICAgICZfX2Jhc2Uge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHotaW5kZXg6IG5uLXotaW5kZXgobW9kYWwpO1xuICAgIH1cbn1cbmBgYFxuXG4jIyBTb3VyY2Vcbi0tLVxuaHR0cDovL3d3dy5zbWFzaGluZ21hZ2F6aW5lLmNvbS8yMDE0LzA2LzEyL3Nhc3N5LXotaW5kZXgtbWFuYWdlbWVudC1mb3ItY29tcGxleC1sYXlvdXRzL1xuXG4qL1xuLyogZG9jXG4tLS1cbnRpdGxlOiByZW1vdmUgZXZlcnkgdW5pdFxubmFtZTogc3RyaXAtdW5pdFxuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5yZW1vdmUgYWxsIHVuaXRzXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkbnVtYmVyID0gbnVtYmVyIHdpdGggdW5pdFxuXG4jIyBFeGFtcGxlXG4tLS1cbmBgYGh0bWxfZXhhbXBsZVxuc3RyaXAtdW5pdCg1cHgpIC8vIE91dHB1dDogNVxuYGBgXG4qL1xuLypcbiAgICBUaGlzIG1peGluIGNvbnZlcnRzIGFueSB1bml0bGVzcyBudW1iZXIgKGZvciBleGFtcGxlIDQwKSB0byB0aGUgY29ycmVjdCB1bml0LCBhY2NvcmRpbmcgdG8gdGhlIGdpdmVuIGF4aXMuXG5cbiAgICBQYXJhbWV0ZXJzOlxuICAgIC0gJHZhbHVlOiB1bml0bGVzcyBudW1iZXIgdG8gYmUgY29udmVydGVkLiBBIHVuaXQgaW4gJHZhbHVlIHdpbGwgY29ycmVzcG9uZCB0byBhIHB4IGluIHRoZSBicm93c2VyLFxuICAgICAgICBubyBtYXR0ZXIgaWYgaXQncyBvdXRwdXQgYXMgcHggb3IgcmVtXG5cbiAgICBSZXR1cm5zXG4gICAgLSBIb3Jpem9udGFsOiB3aWxsIGNvbnZlcnQgdGhlIG51bWJlciB0byBwaXhlbHMgKDQwcHgpXG4gICAgLSBWZXJ0aWNhbDogd2lsbCBjb252ZXJ0IHRoZSBudW1iZXIgdG8gcmVtIChpZiByZW0gPT09IDE2cHgsIHRoZW4gNDAgd2lsbCBiZSBjb252ZXJ0ZWQgdG8gMi41IHJlbSlcbiovXG4vKlxuICAgIENvbnZlcnRzIGEgdW5pdGxlc3MgbnVtYmVyIHRvIHRoZSBjb3JyZXNwb25kaW5nIHVuaXQgb24gdGhlIGhvcml6b250YWwgYXhpcy5cbiAgICBCeSBkZWZhdWx0IHdpbGwgY29udmVydCB0aGUgdmFsdWUgdG8gcHguXG4qL1xuLypcbiAgICBDb252ZXJ0cyBhIHVuaXRsZXNzIG51bWJlciB0byB0aGUgY29ycmVzcG9uZGluZyB1bml0IG9uIHRoZSB2ZXJ0aWNhbCBheGlzLlxuICAgIEJ5IGRlZmF1bHQgd2lsbCBjb252ZXJ0IHRoZSB2YWx1ZSB0byByZW0uXG4qL1xuLyogc3R5bGVsaW50LWRpc2FibGUgKi9cbi8qIGRvY1xuLS0tXG50aXRsZTogU3dhcCBsZWZ0IHJpZ2h0IHZhbHVlc1xubmFtZTogc3dhcC1sZWZ0LXJpZ2h0LXZhbHVlc1xuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5cblN3YXAgdGhlIHZhbHVlcyBmb3IgcmlnaHQgYW5kIGxlZnQgd2hlbiAkcnRsIGlzIHNldCB0byB0cnVlOlxuXG5JbjogIDAgNXB4IDhweCAxMnB4XG5PdXQ6IDAgMTJweCA4cHggNXB4IChpbiBydGwpXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkdmFsdWVzID0gNCBudW1iZXJzICh3b3JrcyB3aXRoIGFsbCB1bml0cylcblxuIyMgRXhhbXBsZVxuLS0tXG5cbmBgYGh0bWxfZXhhbXBsZVxuc3dhcC1sZWZ0LXJpZ2h0LXZhbHVlcygwIDFweCA4cHggMTJweCkgLy8gMCAxMnB4IDhweCAxcHhcbnN3YXAtbGVmdC1yaWdodC12YWx1ZXMoMCAxZW0gOGVtIDEyZW0pIC8vIDAgMTJlbSA4ZW0gMWVtXG53YXAtbGVmdC1yaWdodC12YWx1ZXMoMCAxcmVtIDhyZW0gMTJyZW0pIC8vIDAgMTJyZW0gOHJlbSAxcmVtXG5gYGBcblxuIyMgU291cmNlXG4tLS1cbmh0dHA6Ly9zdGFja292ZXJmbG93LmNvbS9xdWVzdGlvbnMvMTQxOTkzMjMvcmlnaHQtdG8tbGVmdC1ydGwtc3VwcG9ydC1pbi1zYXNzLXByb2plY3RcblxuKi9cbi8qIHN0eWxlbGludC1kaXNhYmxlICovXG4vKiBkb2Ncbi0tLVxudGl0bGU6IFN3YXAgbGVmdCByaWdodCBuYW1lc1xubmFtZTogc3dhcC1sZWZ0LXJpZ2h0LW5hbWVzXG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cblxuU3dhcCB0aGUgbmFtZXMgcmlnaHQgYW5kIGxlZnQgd2hlbiAkcnRsIGlzIHNldCB0byB0cnVlLlxuSWYgdGhlIHZhbHVlIGlzIG5vdCByaWdodCBvciBsZWZ0IGl0IHJldHVybnMgdGhlIG9yaWdpbmFsIHZhbHVlLlxuXG5JbjogIHJpZ2h0XG5PdXQ6IGxlZnQgKGluIHJ0bCksIHJpZ2h0IChpbiBsdHIpXG5cbiMjIExpdmUgVGVtcGxhdGUgYWJicmV2aWF0aW9uc1xuLS0tXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkb3JpZ2luID0gcmlnaHQgfCBsZWZ0XG5cbiMjIEV4YW1wbGVcbi0tLVxuXG5gYGBodG1sX2V4YW1wbGVcbnN3YXAtbGVmdC1yaWdodC1uYW1lKGxlZnQpXG5zd2FwLWxlZnQtcmlnaHQtbmFtZShyaWdodClcbmBgYFxuXG4jIyBTb3VyY2Vcbi0tLVxuaHR0cDovL3N0YWNrb3ZlcmZsb3cuY29tL3F1ZXN0aW9ucy8xNDE5OTMyMy9yaWdodC10by1sZWZ0LXJ0bC1zdXBwb3J0LWluLXNhc3MtcHJvamVjdFxuXG4qL1xuLyogIExpc3Qgb2YgQ1NTIHByb3BlcnRpZXMgdGhhdCB3aWxsIGFsd2F5cyBiZSBvdXRwdXQgYXQgbGVhc3QgYXMgMiBkaWZmZXJlbnQgdmFsdWVzXG4gICAgaW4gb3JkZXIgdG8gYmUgYWJsZSB0byBjb252ZXJ0IGVhY2ggb25lIHRvIHRoZSBjb3JyZWN0IGF4aXMgdW5pdCAqL1xuLypcbiAgICBNaXhpbiBmb3IgYXV0b21hdGljYWxseSBoYW5kbGluZyBzcGFjaW5ncyBhcm91bmQvYmV0d2VlbiBlbGVtZW50cy5cblxuICAgIFRoaXMgbWl4aW4gd2lsbCBhdXRvbWF0aWNhbGx5IGludmVydCB0aGUgbGVmL3JpZ2h0IGRpcmVjdGlvbnMgaW4gUlRMIGxhbmd1YWdlcy5cbiAgICBBbHNvLCB0aGUgdW5pdGxlc3MgdmFsdWVzIHdpbGwgYmUgY29udmVydGVkIHRvIHRoZSBwcm9wZXIgdW5pdCBhY2NvcmRpbmcgdG8gdGhlIGF4aXNcblxuICAgIFBhcmFtZXRlcnM6XG4gICAgLSAkcHJvcGVydHktbmFtZTogbmFtZSBvZiB0aGUgQ1NTIHByb3BlcnR5IHRoYXQgc2hvdWxkIGJlIG91dHB1dC4gU3VwcG9ydGVkIHByb3BlcnRpZXMgYXJlOlxuICAgICAgICBtYXJnaW4sIG1hcmdpbi10b3AsIG1hcmdpbi1yaWdodCwgbWFyZ2luLWJvdHRvbSwgbWFyZ2luLWxlZnRcbiAgICAgICAgcGFkZGluZywgcGFkZGluZy10b3AsIHBhZGRpbmctcmlnaHQsIHBhZGRpbmctYm90dG9tLCBwYWRkaW5nLWxlZnRcbiAgICAgICAgd2lkdGgsIGhlaWdodCwgbWluLXdpZHRoLCBtYXgtd2lkdGgsIG1pbi1oZWlnaHQsIG1pbi1oZWlnaHRcbiAgICAtICR2YWx1ZTogdmFsdWUgdGhhdCB3aWxsIGJlIG91dHB1dCBhcyBwYXJ0IG9mIHRoZSBnaXZlbiBwcm9wZXJ0eS4gU3VwcG9ydGVkIHZhbHVlcyBhcmU6XG4gICAgICAgIFVuaXRsZXNzIG51bWJlciAoNDApOiB0aGlzIHNob3VsZCBiZSB1c2VkIG1vc3Qgb2YgdGhlIHRpbWVzLiBJdCB3aWxsIGF1dG9tYXRpY2FsbHkgYmUgY29udmVydGVkXG4gICAgICAgICAgICB0byB0aGUgY29ycmVjdCB1bml0IGRlcGVuZGluZyBvbiB0aGUgYXhpcyB3aGVyZSBpdCdzIHVzZWQgKGhvcml6b250YWwgYXhpcyA9PiBweCwgdmVydGljYWwgYXhpcyA9PiByZW0pLlxuICAgICAgICAgICAgRWFjaCB1bml0IGluICR2YWx1ZSB3aWxsIGNvcnJlc3BvbmQgdG8gYSBweCBpbiB0aGUgYnJvd3Nlciwgbm8gbWF0dGVyIHRvIHdoaWNoIHVuaXQgaXQgd2lsbCBiZSBjb252ZXJ0ZWQuXG4gICAgICAgIE51bWJlciB3aXRoIHVuaXQgKDQwcHgsIDQwJS4uLik6IHRoZSBudW1iZXIgYW5kIHRoZSB1bml0IHdpbGwgYmUgcHJlc2VydmVkIGFuZCBvbmx5IHRoZSBsZWZ0L3JpZ2h0IGludmVyc2lvblxuICAgICAgICAgICAgd2lsbCBiZSBkb25lIGZvciBSVEwgbGFuZ3VhZ2VzXG4gICAgICAgIExpc3Qgb2YgdmFsdWVzICg0MCAzMCUgMjAgMTApOiBtYXJnaW4gYW5kIHBhZGRpbmcgc2hvcnRoYW5kcyB3aGl0aCBtdWx0aXBsZSB2YWx1ZXMgYXJlIHN1cHBvcnRlZC5cbiAgICAgICAgICAgIFRoZSBsZWZ0L3JpZ2h0IHZhbHVlcyB3aWxsIGJlIGF1dG9tYXRpY2FsbHkgc3dhcHBlZCBpbiBSVEwgYW5kIHRoZSB1bml0bGVzcyBudW1iZXJzIHdpbGwgYmUgY29udmVydGVkXG4gICAgICAgICAgICB0byB0aGUgY29ycmVzcG9uZGluZyB1bml0LiBVbml0bGVzcyBhbmQgbnVtYmVycyB3aXRoIHVuaXRzIGNhbiBiZSBtaXhlZCBpbiB0aGUgc2FtZSBjYWxsLlxuICAgICAgICBVc2luZyBjYWxjKCkgaW4gYW55IG9mIHRoZSBwcmV2aW91cyBleGFtcGxlcyBpcyBzdXBwb3J0ZWQsIGFsdGhvdWdoIG5vIHVuaXQgY29udmVyc2lvbiB3aWxsIGJlIGRvbmVcblxuICMjIEV4YW1wbGVcbi0tLVxuXG5gYGBodG1sX2V4YW1wbGVcbkBpbmNsdWRlIHNwYWNpbmcocGFkZGluZywgMCAxMHB4IDIwIDApOyA9PiBwYWRkaW5nOiAwIDEwcHggMnJlbSAwO1xuQGluY2x1ZGUgc3BhY2luZyhwYWRkaW5nLCAwIDEwIDIwIDApOyA9PiBwYWRkaW5nOiAwIDEwcHggMnJlbSAwO1xuQGluY2x1ZGUgc3BhY2luZyhwYWRkaW5nLWxlZnQsIDEwKTtcbkBpbmNsdWRlIHNwYWNpbmcocGFkZGluZy1yaWdodCwgMTApO1xuQGluY2x1ZGUgc3BhY2luZyhtYXJnaW4sIDAgMTAgMjAgMCk7XG5AaW5jbHVkZSBzcGFjaW5nKG1hcmdpbi1sZWZ0LCAxMCk7XG5AaW5jbHVkZSBzcGFjaW5nKG1hcmdpbi1yaWdodCwgMTApO1xuQGluY2x1ZGUgc3BhY2luZyh3aWR0aCwgMTAwKTtcbkBpbmNsdWRlIHNwYWNpbmcobWluLXdpZHRoLCAxMDApO1xuQGluY2x1ZGUgc3BhY2luZyhtYXgtd2lkdGgsIDEwMCk7XG5AaW5jbHVkZSBzcGFjaW5nKGhlaWdodCwgMTAwKTtcbkBpbmNsdWRlIHNwYWNpbmcobWluLWhlaWdodCwgMTAwKTtcbkBpbmNsdWRlIHNwYWNpbmcobWF4LWhlaWdodCwgMTAwKTtcbmBgYFxuKi9cbi8qIGRvY1xuLS0tXG50aXRsZTogQ2xlYXJmaXhcbm5hbWU6IGNsZWFyZml4XG5jYXRlZ29yeTogbWl4aW5zXG4tLS1cblxuQ2xlYXJzIGFmdGVyIGZsb2F0aW5nIGVsZW1lbnRcblxuVXNlIHRoaXMgbWl4aW4gb25seSBpbnNpZGUgbWVkaWEgcXVlcmllcyB3aGVyZSB5b3UgY2FuJ3QgdXNlIHRoZVxuYWJzdHJhY3QvZXh0ZW5kcy91dGlscy9fY2xlYXJmaXggdmVyc2lvbiwgd2hpY2ggYWRkcyBsZXNzIGNvZGUgdG8gY3NzXG5cbiMjIExpdmUgVGVtcGxhdGUgYWJicmV2aWF0aW9uc1xuLS0tXG5cbiMjIEV4YW1wbGVcbi0tLVxuXG5gYGBodG1sX2V4YW1wbGVcbkBpbmNsdWRlIGNsZWFyZml4O1xuYGBgXG5cbiMjIFNvdXJjZVxuLS0tXG5odHRwczovL2Nzcy10cmlja3MuY29tL3NuaXBwZXRzL2Nzcy9jbGVhci1maXgvXG4qL1xuLyogc3R5bGVsaW50LWRpc2FibGUgc3RyaW5nLW5vLW5ld2xpbmUgKi9cbi8qIGRvY1xuLS0tXG50aXRsZTogZm9jdXMgY29sb3Jcbm5hbWU6IGZvY3VzIGNvbG9yXG5jYXRlZ29yeTogbWl4aW5zXG4tLS1cblxuQWRkIGEgZm9jdXMgY29sb3Igd2hlbiBrZXlib2FyZC1mb2N1cyBpcyBhY3RpdmF0ZWRcbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtICRudW1iZXJcblxuKi9cbi8qIGRvY1xuLS0tXG50aXRsZTogaWdub3JlLWNvbnRhaW5lclxubmFtZTogaWdub3JlLWNvbnRhaW5lclxuY2F0ZWdvcnk6IG1peGluc1xuLS0tXG5cblNldCBmdWxsIHBhZ2Ugd2lkdGggZm9yIHNvbWV0aGluZyBpbnNpZGUgYSBjb250YWluZXJcblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW0gJGNvbnRhaW5lci1zaXplXG5AcGFyYW0gJGd1dHRlclxuXG4qL1xuLyogR2VuZXJhdGVzIGFsbCB0aGUgcnVsZXMgZm9yIHRoZSBncmlkIGNvbHVtbnMgdXAgdG8gdGhlIGdpdmVuIGFtb3VudCBvZiBjb2x1bW4gKi9cbi8qIEdlbmVyYXRlcyBhbGwgdGhlIHJ1bGVzIGZvciB0aGUgZ3JpZCBjb2x1bW4gb2Zmc2V0IHVwIHRvIHRoZSBnaXZlbiBhbW91bnQgb2YgY29sdW1uICovXG4vKiBHZW5lcmF0ZXMgYWxsIHRoZSBydWxlcyBmb3IgdGhlIGdyaWQgYW5kIGNvbHVtbnMgZm9yIHRoZSBnaXZlbiBicmVhayBwb2ludCBhbmQgdG90YWwgb2YgY29sdW1ucyAqL1xuLyogQVBJIGZ1bmN0aW9uIHRvIGJlIGNhbGxlZCB0byBnZW5lcmF0ZSBhIGdyaWQgY29uZmlnICovXG4vKiBkb2Ncbi0tLVxudHlwZTogYnV0dG9uIHR5cGVcbnN0YXRlOiBzdGF0ZSBidXR0b25cbi0tLVxuXG5CdXR0b24gc3R5bGVzXG5cblVzZSB0aGlzIG1peGluIGZvciBidXR0b24gc3R5bGVzOiBjb2xvciB0ZXh0LCBiYWNrZ3JvdW5kLCBib3JkZXJcblxuIyMgRXhhbXBsZVxuLS0tXG5cbmBgYGh0bWxfZXhhbXBsZVxuQGluY2x1ZGUgYnV0dG9uKHByaW1hcnkpO1xuYGBgXG4qL1xuLyogZG9jXG4tLS1cbmxpbmVMaW1pdDogVGhpcyB2YWx1ZSBzcGVjaWZpZXMgdGhlIG51bWJlciBvZiBsaW5lcyBhZnRlciB3aGljaCB0aGUgY29udGVudCB3aWxsIGJlIGNsYW1wZWQuIEl0IG11c3QgYmUgZ3JlYXRlciB0aGFuIDAuXG4tLS1cblxuVHJ1bmNhdGVzIHRleHQgYXQgYSBzcGVjaWZpYyBudW1iZXIgb2YgbGluZXMuXG5cblVzZSB0aGlzIG1peGluIHRvIGhpZGUgbG9uZyB0ZXh0LlxuXG4jIyBFeGFtcGxlXG4tLS1cblxuYGBgaHRtbF9leGFtcGxlXG5AaW5jbHVkZSBsaW5lLWNsYW1wKCRsaW5lTGltaXQ6IDQpO1xuYGBgXG4qL1xuLyogdHlwb2dyYXBoeVxuLS0tXG50aXRsZTogdHlwb2dyYXBoeVxubmFtZTogVHlwb2dyYXBoeVxuY2F0ZWdvcnk6IG1peGluc1xuLS0tXG5cbkFkZHMgZm9udCBDU1MgcHJvcGVydGllcyBieSBhIG1hcCBwcm92aWRlZFxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbSAkdC1zdHlsZVxuQHBhcmFtICRpcy1pbXBvcnRhbnQ6IGZhbHNlXG5cbiogJHQtc3R5bGUgaXMgZXhwZWN0ZWQgdG8gYmUgYSBtYXAgd2l0aCAnZGVmYXVsdCcgYW5kICdicmVha3BvaW50W3NdJyBzdWJtYXBzIHdpdGggYSBwcm9wZXJ0eVxuZm9yIGV2ZXJ5IGNzcyBwcm9wZXJ0eSB0byBiZSBzZXQuXG4qICRpcy1pbXBvcnRhbnQgcGFyYW1ldGVyIGFsbG93cyB0byBmb3JjZSB0eXBvZ3JhcGh5IHByb3BlcnRpZXMgdG8gYmUgc2V0IGFzICFpbXBvcnRhbnRcblRyeSB0byBhdm9pZCBpdHMgdXNlLCBidXQgaXQgbWlnaHQgYmUgbmVlZGVkIGZvciBzaXR1YXRpb25zIHdoZXJlIHN0eWxlcyBmb3IgYSBjb21wb25lbnRcbmFyZSB2ZXJ5IHNwZWNpZmljIGFuZCB0byBvdmVyd3JpdGUgdGhlIGdlbmVyaWMgb25lcyBpcyB0b28gY29tcGxleCAoaWYgdGhleSBoYXZlIGEgbG90IG9mIHNwZWNpZmljaXR5KVxuXG4qL1xuLyogZG9jXG4tLS1cbnRpdGxlOiBoaWRkZW5cbm5hbWU6IGhpZGRlblxuY2F0ZWdvcnk6IG1peGluc1xuLS0tXG5cbkhpZGUgZnJvbSBib3RoIHNjcmVlbnJlYWRlcnMgYW5kIGJyb3dzZXJzOiBoNWJwLmNvbS91XG4jIyBQYXJhbWV0ZXJzXG4tLS1cblxuKi9cbi8qIGRvY1xuLS0tXG50aXRsZTogb3ZlcmxheVxubmFtZTogb3ZlcmxheVxuY2F0ZWdvcnk6IG1peGluc1xuLS0tXG5cbkNyZWF0ZXMgYW4gb3ZlcmxheSB3aXRoIHRoZSBwcm92aWRlZCBiYWNrZ3JvdW5kIGNvbG9yXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbSAkYmdDb2xvclxuXG4qL1xuLyoqXG4gKiBAbWl4aW4gdG9wLWJvdHRvbS1ib3JkZXJcbiAqIEBkZXNjIENyZWF0ZXMgYSBkeW5hbWljIGFuZCBjdXN0b21pemFibGUgYm9yZGVyIGF0IHRoZSBzcGVjaWZpZWQgcG9zaXRpb24gb24gYW4gZWxlbWVudC5cbiAqXG4gKiBAcGFyYW0ge3N0cmluZ30gJHBvc2l0aW9uIC0gT3B0aW9uYWwsIERlZmF1bHQ6ICdib3R0b20nLiBEZWZpbmVzIHRoZSBwb3NpdGlvbiBvZiB0aGUgYm9yZGVyLiBBY2NlcHRzIHZhbHVlcyAndG9wJyBvciAnYm90dG9tJy5cbiAqIEBwYXJhbSB7Y29sb3J9ICRjb2xvciAtIE9wdGlvbmFsLCBEZWZhdWx0OiAnJGMtYmxhY2snLiBTcGVjaWZpZXMgdGhlIGNvbG9yIG9mIHRoZSBib3JkZXIuIEFjY2VwdHMgYW55IHZhbGlkIENTUyBjb2xvciB2YWx1ZS5cbiAqIEBwYXJhbSB7bGVuZ3RofSAkd2lkdGggLSBPcHRpb25hbCwgRGVmYXVsdDogJzJweCcuIFNldHMgdGhlIHdpZHRoIG9mIHRoZSBib3JkZXIuIEFjY2VwdHMgYW55IHZhbGlkIENTUyBsZW5ndGggdmFsdWUuXG4gKiBAcGFyYW0ge2xlbmd0aH0gJG1hcmdpbiAtIE9wdGlvbmFsLCBEZWZhdWx0OiAnMCcuIEFkZHMgbWFyZ2luIHRvIHRoZSBib3JkZXIuIEFjY2VwdHMgYW55IHZhbGlkIENTUyBsZW5ndGggdmFsdWUuXG4gKlxuICogQGV4YW1wbGVcbiAqICAgLmV4YW1wbGUtZWxlbWVudCB7XG4gKiAgICAgICBAaW5jbHVkZSB0b3AtYm90dG9tLWJvcmRlcigkcG9zaXRpb246IHRvcCwgJGNvbG9yOiAkYy1ncmV5LXR3bywgJHdpZHRoOiAzcHgsICRtYXJnaW46IDEwcHgpO1xuICogICB9XG4gKi9cbi8qIGRvY1xuLS0tXG50aXRsZTogcmVzZXQtZnVsbHdpZHRoLW1hcmdpbnNcbm5hbWU6IHJlc2V0LWZ1bGx3aWR0aC1tYXJnaW5zXG5jYXRlZ29yeTogbWl4aW5zXG4tLS1cblxuUmVzZXQgbWFyZ2lucyBmb3IgZnVsbCB3aWR0aCBjb21wb25lbnRzIGluc2lkZSBhIENvbnRhaW5lciBvciBhIENvbHVtbiBDb250cm9sXG4qL1xuLyogZG9jXG4tLS1cbnRpdGxlOiB2aXN1YWxseSBoaWRkZW5cbm5hbWU6IHZpc3VhbGx5IGhpZGRlblxuY2F0ZWdvcnk6IG1peGluc1xuLS0tXG5cbkhpZGRlbiBmcm9tIGJyb3dzZXJzIGJ1dCBhY2Nlc3NpYmxlIHRvIHNjcmVlbiByZWFkZXJzXG4jIyBQYXJhbWV0ZXJzXG4tLS1cblxuKi9cbi5oZWFkZXJfX21ldGFuYXYgLmNtcC1saXN0IHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgaGVpZ2h0OiAxMDAlO1xuICBwYWRkaW5nOiAwO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDk2MHB4KSB7XG4gIC5oZWFkZXJfX21ldGFuYXYgLmNtcC1saXN0IHtcbiAgICBtYXJnaW4tYmxvY2stc3RhcnQ6IDIwcHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB9XG59XG4uaGVhZGVyX19tZXRhbmF2IC5jbXAtbGlzdCAuY21wLWxpc3RfX2l0ZW0ge1xuICBwYWRkaW5nLWlubGluZS1zdGFydDogMjVweDtcbiAgcGFkZGluZy1ibG9jazogMDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5NjBweCkge1xuICAuaGVhZGVyX19tZXRhbmF2IC5jbXAtbGlzdCAuY21wLWxpc3RfX2l0ZW0ge1xuICAgIHBhZGRpbmctaW5saW5lLXN0YXJ0OiA0MHB4O1xuICB9XG59XG4uaGVhZGVyX19tZXRhbmF2IC5jbXAtbGlzdCAuY21wLWxpc3RfX2l0ZW06Zmlyc3QtY2hpbGQge1xuICBwYWRkaW5nLWlubGluZS1zdGFydDogMDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuaGVhZGVyX19tZXRhbmF2IC5jbXAtbGlzdCAuY21wLWxpc3RfX2l0ZW06Zmlyc3QtY2hpbGQge1xuICAgIHBhZGRpbmctaW5saW5lLXN0YXJ0OiA0MHB4O1xuICB9XG59XG4uaGVhZGVyX19tZXRhbmF2IC5jbXAtbGlzdCAuY21wLWxpc3RfX2l0ZW0tbGluayB7XG4gIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cbi5oZWFkZXJfX21ldGFuYXYgLmNtcC1saXN0IC5jbXAtbGlzdF9faXRlbS1saW5rOjphZnRlciwgLmhlYWRlcl9fbWV0YW5hdiAuY21wLWxpc3QgLmNtcC1saXN0X19pdGVtLWxpbmtbdGFyZ2V0PV9ibGFua106OmFmdGVyIHtcbiAgY29udGVudDogbm9uZTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5NjBweCkge1xuICAuaGVhZGVyX19tZXRhbmF2IC5jbXAtbGlzdCAuY21wLWxpc3RfX2l0ZW0tbGluayB7XG4gICAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gICAgY29sb3I6ICM4ODhiOGQ7XG4gIH1cbn1cbi5oZWFkZXJfX21ldGFuYXYgLmNtcC1saXN0X19pY29uIHtcbiAgd2lkdGg6IDE2cHg7XG4gIGhlaWdodDogMTZweDtcbiAgbWFyZ2luLWlubGluZS1lbmQ6IDVweDtcbiAgaW5zZXQtYmxvY2stc3RhcnQ6IDA7XG59XG4uaGVhZGVyX19tZXRhbmF2LS1waG9uZSB7XG4gIGhlaWdodDogMTAwJTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5NjBweCkge1xuICAuaGVhZGVyX19tZXRhbmF2LS1waG9uZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4uaGVhZGVyX19tYWlubmF2IC5oZWFkZXJfX3RvcGxpbmtzIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwdnc7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIGluc2V0LWlubGluZS1zdGFydDogMTAwdnc7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDgwcHgpIHtcbiAgLmhlYWRlcl9fbWFpbm5hdiAuaGVhZGVyX190b3BsaW5rcyB7XG4gICAgaW5zZXQtaW5saW5lLXN0YXJ0OiBcIjM4MHB4XCI7XG4gICAgd2lkdGg6IFwiMzgwcHhcIjtcbiAgfVxufVxuLmhlYWRlcl9fbWFpbm5hdiAuaGVhZGVyX190b3BsaW5rcyAubGlzdCB7XG4gIG1hcmdpbi1pbmxpbmUtZW5kOiA0MHB4O1xufVxuLmhlYWRlcl9fbWFpbm5hdiAuaGVhZGVyX190b3BsaW5rcyAuY21wLWxpc3Qge1xuICBkaXNwbGF5OiBmbGV4O1xuICBtYXJnaW4tYmxvY2s6IDIycHggMTFweDtcbiAgbWFyZ2luLWlubGluZTogMTVweCAwO1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgcGFkZGluZy1pbmxpbmUtc3RhcnQ6IDA7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG59XG4uaGVhZGVyX19tYWlubmF2IC5oZWFkZXJfX3RvcGxpbmtzIC5jbXAtbGlzdF9faXRlbSB7XG4gIHBhZGRpbmctYmxvY2stZW5kOiAwO1xuICBtYXJnaW4tYmxvY2s6IDA7XG4gIG1hcmdpbi1pbmxpbmU6IDRweDtcbiAgY29sb3I6ICM4ODhiOGQ7XG59XG4uaGVhZGVyX19tYWlubmF2IC5oZWFkZXJfX3RvcGxpbmtzIC5jbXAtbGlzdF9faXRlbTpsYXN0LW9mLXR5cGUge1xuICBtYXJnaW4taW5saW5lOiA0cHggMzNweDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5NjBweCkge1xuICAuaGVhZGVyX19tYWlubmF2IC5oZWFkZXJfX3RvcGxpbmtzIC5jbXAtbGlzdF9faXRlbTpsYXN0LW9mLXR5cGUge1xuICAgIG1hcmdpbi1pbmxpbmUtc3RhcnQ6IDlweDtcbiAgfVxufVxuLmhlYWRlcl9fbWFpbm5hdiAuaGVhZGVyX190b3BsaW5rcyAuY21wLWxpc3RfX2l0ZW0tbGluazo6YmVmb3JlIHtcbiAgY29udGVudDogbm9uZTtcbn1cbi5oZWFkZXJfX21haW5uYXYgLmhlYWRlcl9fdG9wbGlua3MgLmNtcC1saXN0X19pdGVtLWxpbmsge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBmb250LXNpemU6IDhweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBjb2xvcjogIzg4OGI4ZDtcbiAgbWluLXdpZHRoOiA0N3B4O1xufVxuLmhlYWRlcl9fbWFpbm5hdiAuaGVhZGVyX190b3BsaW5rcyAuY21wLWxpc3RfX2l0ZW0tbGlua1t0YXJnZXQ9X2JsYW5rXTo6YWZ0ZXIsIC5oZWFkZXJfX21haW5uYXYgLmhlYWRlcl9fdG9wbGlua3MgLmNtcC1saXN0X19pdGVtLWxpbms6OmFmdGVyIHtcbiAgY29udGVudDogbm9uZTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5NjBweCkge1xuICAuaGVhZGVyX19tYWlubmF2IC5oZWFkZXJfX3RvcGxpbmtzIC5jbXAtbGlzdF9faXRlbS1saW5rIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIH1cbn1cbi5oZWFkZXJfX21haW5uYXYgLmhlYWRlcl9fdG9wbGlua3MgLmNtcC1saXN0X19pY29uIHtcbiAgbWFyZ2luLWJsb2NrLWVuZDogMnB4O1xuICBhbGlnbi1zZWxmOiBjZW50ZXI7XG59XG5AbWVkaWEgKG1heC13aWR0aDogOTU5cHgpIHtcbiAgLmhlYWRlcl9fbWFpbm5hdi5uYXZpZ2F0aW9uLS1vcGVuIC5oZWFkZXJfX3RvcGxpbmtzIHtcbiAgICBpbnNldC1pbmxpbmUtc3RhcnQ6IDA7XG4gICAgdHJhbnNpdGlvbjogaW5zZXQtaW5saW5lLXN0YXJ0IDAuM3MgZWFzZS1vdXQ7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDk1OXB4KSB7XG4gIC5oZWFkZXJfX21haW5uYXYgLmhlYWRlcl9fdG9wbGlua3MgLmNtcC1saXN0X19pdGVtLWxpbms6OmFmdGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgaW5zZXQtYmxvY2stc3RhcnQ6IDQ1JTtcbiAgfVxufVxuXG5odG1sIHtcbiAgLS1mZi1yZWd1bGFyOiBWb2x2byBOb3Z1bSBSZWd1bGFyLCBBc3Npc3RhbnQsIE5vdG8gU2FucyBSZWd1bGFyLCBzYW5zLXNlcmlmO1xuICAtLWZmLW1lZGl1bTogVm9sdm8gTm92dW0gTWVkaXVtLCBOb3RvIFNhbnMgTWVkaXVtLCBzYW5zLXNlcmlmO1xuICAtLWZmLWxpZ2h0OiBWb2x2byBOb3Z1bSBMaWdodCwgTm90byBTYW5zIExpZ2h0LCBzYW5zLXNlcmlmO1xuICAtLWZmLWJyb2FkOiBWb2x2b0Jyb2FkUHJvRGlnaXRhbCwgVm9sdm8gTm92dW0gTWVkaXVtLCBOb3RvIFNhbnMgTWVkaXVtLCBzYW5zLXNlcmlmO1xuICAtLWZmLXN0YWdlLWhlYWRlcjogdmFyKC0tZmYtYnJvYWQpO1xuICAtLWxzLWhlYWRlcjogLTAuMXB4O1xuICAtLWxzLWRlZmF1bHQ6IC0wLjFweDtcbiAgLS1scy12b2x2bzogMC4wNmVtO1xufVxuaHRtbFtkaXI9cnRsXSB7XG4gIC0tZmYtcmVndWxhcjogQXNzaXN0YW50LCBWb2x2byBOb3Z1bSBSZWd1bGFyLCBOb3RvIFNhbnMgUmVndWxhciwgc2Fucy1zZXJpZjtcbiAgLS1mZi1saWdodDogQXNzaXN0YW50IExpZ2h0LCBWb2x2byBOb3Z1bSBMaWdodCwgTm90byBTYW5zIExpZ2h0LCBzYW5zLXNlcmlmO1xuICAtLWZmLW1lZGl1bTogQXNzaXN0YW50IEJvbGQsIFZvbHZvIE5vdnVtIE1lZGl1bSwgTm90byBTYW5zIE1lZGl1bSwgc2Fucy1zZXJpZjtcbiAgLS1mZi1icm9hZDogQXNzaXN0YW50IEJvbGQsIFZvbHZvIE5vdnVtIE1lZGl1bSwgTm90byBTYW5zIE1lZGl1bSwgc2Fucy1zZXJpZjtcbiAgLS1scy12b2x2bzogLTAuMXB4O1xufVxuXG5bZGF0YS1kZWFsZXItcHJpdmF0ZV0ge1xuICAtLWZmLWJyb2FkOiB2YXIoLS1mZi1tZWRpdW0pO1xufVxuXG4qLFxuKjo6YmVmb3JlLFxuKjo6YWZ0ZXIge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG5ib2R5IHtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZmLXJlZ3VsYXIpO1xuICBmb250LXNpemU6IDE2cHg7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1scy1kZWZhdWx0KTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBjb2xvcjogIzUzNTY1YTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlO1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMCk7XG4gIG92ZXJmbG93LXg6IGhpZGRlbjtcbn1cblxuW3RhYmluZGV4PVwiLTFcIl06Zm9jdXM6bm90KDpmb2N1cy12aXNpYmxlKSB7XG4gIG91dGxpbmU6IDAgIWltcG9ydGFudDtcbn1cblxuaHIge1xuICBtYXJnaW4tYmxvY2s6IDFyZW07XG4gIG1hcmdpbi1pbmxpbmU6IDA7XG4gIGNvbG9yOiBpbmhlcml0O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBjdXJyZW50Q29sb3I7XG4gIGJvcmRlcjogMDtcbn1cblxuaHI6bm90KFtzaXplXSkge1xuICBoZWlnaHQ6IDFweDtcbn1cblxuaDEsXG5oMixcbmgzLFxuaDQsXG5oNSxcbmg2IHtcbiAgbWFyZ2luLWJsb2NrOiAwO1xuICBjb2xvcjogIzE0MTQxNDtcbn1cblxuW2NsYXNzKj10ZXh0LS13aGl0ZV0ge1xuICBjb2xvcjogI2ZmZjtcbn1cbltjbGFzcyo9dGV4dC0td2hpdGVdIGgxLFxuW2NsYXNzKj10ZXh0LS13aGl0ZV0gaDIsXG5bY2xhc3MqPXRleHQtLXdoaXRlXSBoMyxcbltjbGFzcyo9dGV4dC0td2hpdGVdIGg0LFxuW2NsYXNzKj10ZXh0LS13aGl0ZV0gaDUsXG5bY2xhc3MqPXRleHQtLXdoaXRlXSBoNiB7XG4gIGNvbG9yOiAjZmZmO1xufVxuXG5wIHtcbiAgbWFyZ2luLWJsb2NrOiAwO1xufVxuXG5hYmJyW3RpdGxlXSB7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSBkb3R0ZWQ7XG4gIGN1cnNvcjogaGVscDtcbiAgdGV4dC1kZWNvcmF0aW9uLXNraXAtaW5rOiBub25lO1xufVxuXG5hZGRyZXNzIHtcbiAgbWFyZ2luLWJsb2NrLWVuZDogMXJlbTtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbn1cblxub2wsXG51bCB7XG4gIHBhZGRpbmctaW5saW5lLXN0YXJ0OiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuXG5vbCxcbnVsLFxuZGwge1xuICBtYXJnaW4tYmxvY2s6IDA7XG59XG5cbm9sIG9sLFxudWwgdWwsXG5vbCB1bCxcbnVsIG9sIHtcbiAgbWFyZ2luLWJsb2NrLWVuZDogMDtcbn1cblxuZHQge1xuICBmb250LXdlaWdodDogNzAwO1xufVxuXG5kZCB7XG4gIG1hcmdpbi1pbmxpbmUtc3RhcnQ6IDA7XG59XG5cbmJsb2NrcXVvdGUge1xuICBtYXJnaW4tYmxvY2s6IDAgMXJlbTtcbiAgbWFyZ2luLWlubGluZTogMDtcbn1cblxuYixcbnN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mZi1tZWRpdW0pO1xufVxuXG5zbWFsbCB7XG4gIGZvbnQtc2l6ZTogMC44NzVlbTtcbn1cblxuc3ViLFxuc3VwIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmb250LXNpemU6IDAuNzVlbTtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cblxuc3ViIHtcbiAgaW5zZXQtYmxvY2stZW5kOiAtMC4yNWVtO1xufVxuXG5zdXAge1xuICBpbnNldC1ibG9jay1zdGFydDogLTAuNWVtO1xufVxuXG5ib2R5IGEge1xuICBjb2xvcjogIzUzNTY1YTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0cmFuc2l0aW9uOiBjb2xvciAwLjFzIGxpbmVhcjtcbn1cbmJvZHkgYTpob3ZlciB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuZmlndXJlIHtcbiAgbWFyZ2luLWJsb2NrOiAwIDFyZW07XG4gIG1hcmdpbi1pbmxpbmU6IDA7XG59XG5cbmltZyB7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIG1heC13aWR0aDogMTAwJTtcbn1cblxudGFibGUge1xuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xufVxuXG50aCB7XG4gIHRleHQtYWxpZ246IGluaGVyaXQ7XG59XG5cbmlucHV0LFxuYnV0dG9uLFxuc2VsZWN0LFxub3B0Z3JvdXAsXG50ZXh0YXJlYSB7XG4gIGNvbG9yOiAjNTM1NjVhO1xuICBtYXJnaW46IDA7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBmb250LXNpemU6IGluaGVyaXQ7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xufVxuXG5idXR0b24sXG5pbnB1dCB7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xufVxuXG5idXR0b24sXG5zZWxlY3Qge1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbn1cblxuc2VsZWN0IHtcbiAgd29yZC13cmFwOiBub3JtYWw7XG59XG5cbltsaXN0XTo6LXdlYmtpdC1jYWxlbmRhci1waWNrZXItaW5kaWNhdG9yIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuYnV0dG9uLFxuW3R5cGU9YnV0dG9uXSxcblt0eXBlPXJlc2V0XSxcblt0eXBlPXN1Ym1pdF0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjtcbn1cblxuOjotbW96LWZvY3VzLWlubmVyIHtcbiAgcGFkZGluZzogMDtcbiAgYm9yZGVyLXN0eWxlOiBub25lO1xufVxuXG5pbnB1dFt0eXBlPWRhdGVdLFxuaW5wdXRbdHlwZT10aW1lXSxcbmlucHV0W3R5cGU9ZGF0ZXRpbWUtbG9jYWxdLFxuaW5wdXRbdHlwZT1tb250aF0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG59XG5odG1sW2Rpcj1ydGxdIGlucHV0W3R5cGU9ZGF0ZV0sXG5odG1sW2Rpcj1ydGxdIGlucHV0W3R5cGU9dGltZV0sXG5odG1sW2Rpcj1ydGxdIGlucHV0W3R5cGU9ZGF0ZXRpbWUtbG9jYWxdLFxuaHRtbFtkaXI9cnRsXSBpbnB1dFt0eXBlPW1vbnRoXSB7XG4gIHRleHQtYWxpZ246IGVuZDtcbn1cblxuaHRtbFtkaXI9cnRsXSBpbnB1dFt0eXBlPXRlbF0ge1xuICB0ZXh0LWFsaWduOiBlbmQ7XG59XG5cbnRleHRhcmVhIHtcbiAgb3ZlcmZsb3c6IGF1dG87XG4gIHJlc2l6ZTogdmVydGljYWw7XG59XG5cbmZpZWxkc2V0IHtcbiAgbWluLXdpZHRoOiAwO1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG4gIGJvcmRlcjogMDtcbn1cblxucHJvZ3Jlc3Mge1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbjo6LXdlYmtpdC1kYXRldGltZS1lZGl0IHtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIGxpbmUtaGVpZ2h0OiAwO1xufVxuXG5bdHlwZT1zZWFyY2hdIHtcbiAgb3V0bGluZS1vZmZzZXQ6IC0ycHg7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogdGV4dGZpZWxkO1xuICBhcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7XG59XG5cbjo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuOjotd2Via2l0LWNvbG9yLXN3YXRjaC13cmFwcGVyIHtcbiAgcGFkZGluZzogMDtcbn1cblxuOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiB7XG4gIGZvbnQ6IGluaGVyaXQ7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uO1xufVxuXG5vdXRwdXQge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbnN1bW1hcnkge1xuICBkaXNwbGF5OiBsaXN0LWl0ZW07XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxudGVtcGxhdGUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG5tYWluIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbltoaWRkZW5dIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogMTE5OXB4KSB7XG4gIC5yb290LnJlc3BvbnNpdmVncmlkID4gLmFlbS1HcmlkIHtcbiAgICBtYXJnaW46IDA7XG4gIH1cbiAgLnJvb3QucmVzcG9uc2l2ZWdyaWQgLnJvb3QucmVzcG9uc2l2ZWdyaWQgPiAuYWVtLUdyaWQge1xuICAgIG1hcmdpbi1pbmxpbmU6IC0xNXB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5yb290LnJlc3BvbnNpdmVncmlkIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXgtd2lkdGg6IDEyMDBweDtcbiAgICBtYXJnaW4tYmxvY2s6IDA7XG4gICAgbWFyZ2luLWlubGluZTogYXV0bztcbiAgfVxufVxuXG4uYWVtLUdyaWQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIG1hcmdpbi1ibG9jazogMDtcbiAgbWFyZ2luLWlubGluZTogLTE1cHg7XG59XG4uYWVtLUdyaWRDb2x1bW4ge1xuICBwYWRkaW5nLWJsb2NrOiAwO1xuICBwYWRkaW5nLWlubGluZTogMTVweDtcbn1cbi5hZW0tR3JpZC1uZXdDb21wb25lbnQge1xuICBjbGVhcjogYm90aDtcbiAgbWFyZ2luOiAwO1xuICB3aWR0aDogMTAwJTtcbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAuYWVtLUdyaWQtLXJldmVyc2UtbW9iaWxlIC5hZW0tR3JpZCB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlO1xuICB9XG59XG4uYWVtLUdyaWQgLnRleHQgdGFibGU6bm90KHRhYmxlW3dpZHRoXSkge1xuICB3aWR0aDogMTAwJTtcbn1cblxuLmFlbS1HcmlkLS0xMiA+IC5hZW0tR3JpZENvbHVtbi0tZGVmYXVsdC0tMSB7XG4gIHdpZHRoOiA4LjMzMzMzMzMzMzMlO1xufVxuLmFlbS1HcmlkLS0xMiA+IC5hZW0tR3JpZENvbHVtbi0tZGVmYXVsdC0tMiB7XG4gIHdpZHRoOiAxNi42NjY2NjY2NjY3JTtcbn1cbi5hZW0tR3JpZC0tMTIgPiAuYWVtLUdyaWRDb2x1bW4tLWRlZmF1bHQtLTMge1xuICB3aWR0aDogMjUlO1xufVxuLmFlbS1HcmlkLS0xMiA+IC5hZW0tR3JpZENvbHVtbi0tZGVmYXVsdC0tNCB7XG4gIHdpZHRoOiAzMy4zMzMzMzMzMzMzJTtcbn1cbi5hZW0tR3JpZC0tMTIgPiAuYWVtLUdyaWRDb2x1bW4tLWRlZmF1bHQtLTUge1xuICB3aWR0aDogNDEuNjY2NjY2NjY2NyU7XG59XG4uYWVtLUdyaWQtLTEyID4gLmFlbS1HcmlkQ29sdW1uLS1kZWZhdWx0LS02IHtcbiAgd2lkdGg6IDUwJTtcbn1cbi5hZW0tR3JpZC0tMTIgPiAuYWVtLUdyaWRDb2x1bW4tLWRlZmF1bHQtLTcge1xuICB3aWR0aDogNTguMzMzMzMzMzMzMyU7XG59XG4uYWVtLUdyaWQtLTEyID4gLmFlbS1HcmlkQ29sdW1uLS1kZWZhdWx0LS04IHtcbiAgd2lkdGg6IDY2LjY2NjY2NjY2NjclO1xufVxuLmFlbS1HcmlkLS0xMiA+IC5hZW0tR3JpZENvbHVtbi0tZGVmYXVsdC0tOSB7XG4gIHdpZHRoOiA3NSU7XG59XG4uYWVtLUdyaWQtLTEyID4gLmFlbS1HcmlkQ29sdW1uLS1kZWZhdWx0LS0xMCB7XG4gIHdpZHRoOiA4My4zMzMzMzMzMzMzJTtcbn1cbi5hZW0tR3JpZC0tMTIgPiAuYWVtLUdyaWRDb2x1bW4tLWRlZmF1bHQtLTExIHtcbiAgd2lkdGg6IDkxLjY2NjY2NjY2NjclO1xufVxuLmFlbS1HcmlkLS0xMiA+IC5hZW0tR3JpZENvbHVtbi0tZGVmYXVsdC0tMTIge1xuICB3aWR0aDogMTAwJTtcbn1cbi5hZW0tR3JpZC0tMTIgPiAuYWVtLUdyaWRDb2x1bW4tLW9mZnNldC0tZGVmYXVsdC0tMCB7XG4gIG1hcmdpbi1pbmxpbmUtc3RhcnQ6IDAlO1xufVxuLmFlbS1HcmlkLS0xMiA+IC5hZW0tR3JpZENvbHVtbi0tb2Zmc2V0LS1kZWZhdWx0LS0xIHtcbiAgbWFyZ2luLWlubGluZS1zdGFydDogOC4zMzMzMzMzMzMzJTtcbn1cbi5hZW0tR3JpZC0tMTIgPiAuYWVtLUdyaWRDb2x1bW4tLW9mZnNldC0tZGVmYXVsdC0tMiB7XG4gIG1hcmdpbi1pbmxpbmUtc3RhcnQ6IDE2LjY2NjY2NjY2NjclO1xufVxuLmFlbS1HcmlkLS0xMiA+IC5hZW0tR3JpZENvbHVtbi0tb2Zmc2V0LS1kZWZhdWx0LS0zIHtcbiAgbWFyZ2luLWlubGluZS1zdGFydDogMjUlO1xufVxuLmFlbS1HcmlkLS0xMiA+IC5hZW0tR3JpZENvbHVtbi0tb2Zmc2V0LS1kZWZhdWx0LS00IHtcbiAgbWFyZ2luLWlubGluZS1zdGFydDogMzMuMzMzMzMzMzMzMyU7XG59XG4uYWVtLUdyaWQtLTEyID4gLmFlbS1HcmlkQ29sdW1uLS1vZmZzZXQtLWRlZmF1bHQtLTUge1xuICBtYXJnaW4taW5saW5lLXN0YXJ0OiA0MS42NjY2NjY2NjY3JTtcbn1cbi5hZW0tR3JpZC0tMTIgPiAuYWVtLUdyaWRDb2x1bW4tLW9mZnNldC0tZGVmYXVsdC0tNiB7XG4gIG1hcmdpbi1pbmxpbmUtc3RhcnQ6IDUwJTtcbn1cbi5hZW0tR3JpZC0tMTIgPiAuYWVtLUdyaWRDb2x1bW4tLW9mZnNldC0tZGVmYXVsdC0tNyB7XG4gIG1hcmdpbi1pbmxpbmUtc3RhcnQ6IDU4LjMzMzMzMzMzMzMlO1xufVxuLmFlbS1HcmlkLS0xMiA+IC5hZW0tR3JpZENvbHVtbi0tb2Zmc2V0LS1kZWZhdWx0LS04IHtcbiAgbWFyZ2luLWlubGluZS1zdGFydDogNjYuNjY2NjY2NjY2NyU7XG59XG4uYWVtLUdyaWQtLTEyID4gLmFlbS1HcmlkQ29sdW1uLS1vZmZzZXQtLWRlZmF1bHQtLTkge1xuICBtYXJnaW4taW5saW5lLXN0YXJ0OiA3NSU7XG59XG4uYWVtLUdyaWQtLTEyID4gLmFlbS1HcmlkQ29sdW1uLS1vZmZzZXQtLWRlZmF1bHQtLTEwIHtcbiAgbWFyZ2luLWlubGluZS1zdGFydDogODMuMzMzMzMzMzMzMyU7XG59XG4uYWVtLUdyaWQtLTEyID4gLmFlbS1HcmlkQ29sdW1uLS1vZmZzZXQtLWRlZmF1bHQtLTExIHtcbiAgbWFyZ2luLWlubGluZS1zdGFydDogOTEuNjY2NjY2NjY2NyU7XG59XG4uYWVtLUdyaWQtLTEyID4gLmFlbS1HcmlkQ29sdW1uLS1vZmZzZXQtLWRlZmF1bHQtLTEyIHtcbiAgbWFyZ2luLWlubGluZS1zdGFydDogMTAwJTtcbn1cblxuLmFlbS1HcmlkQ29sdW1uLS1kZWZhdWx0LS1oaWRlIHtcbiAgLyogaGlkZSBiZWhhdmlvciAqL1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4uYWVtLUdyaWRDb2x1bW4tLWRlZmF1bHQtLXNob3cge1xuICAvKiBzaG93IGJlaGF2aW9yICovXG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLmFlbS1HcmlkLS0xMiA+IC5hZW0tR3JpZENvbHVtbi0tcGhvbmUtLTEge1xuICAgIHdpZHRoOiA4LjMzMzMzMzMzMzMlO1xuICB9XG4gIC5hZW0tR3JpZC0tMTIgPiAuYWVtLUdyaWRDb2x1bW4tLXBob25lLS0yIHtcbiAgICB3aWR0aDogMTYuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLmFlbS1HcmlkLS0xMiA+IC5hZW0tR3JpZENvbHVtbi0tcGhvbmUtLTMge1xuICAgIHdpZHRoOiAyNSU7XG4gIH1cbiAgLmFlbS1HcmlkLS0xMiA+IC5hZW0tR3JpZENvbHVtbi0tcGhvbmUtLTQge1xuICAgIHdpZHRoOiAzMy4zMzMzMzMzMzMzJTtcbiAgfVxuICAuYWVtLUdyaWQtLTEyID4gLmFlbS1HcmlkQ29sdW1uLS1waG9uZS0tNSB7XG4gICAgd2lkdGg6IDQxLjY2NjY2NjY2NjclO1xuICB9XG4gIC5hZW0tR3JpZC0tMTIgPiAuYWVtLUdyaWRDb2x1bW4tLXBob25lLS02IHtcbiAgICB3aWR0aDogNTAlO1xuICB9XG4gIC5hZW0tR3JpZC0tMTIgPiAuYWVtLUdyaWRDb2x1bW4tLXBob25lLS03IHtcbiAgICB3aWR0aDogNTguMzMzMzMzMzMzMyU7XG4gIH1cbiAgLmFlbS1HcmlkLS0xMiA+IC5hZW0tR3JpZENvbHVtbi0tcGhvbmUtLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NjY2NjY3JTtcbiAgfVxuICAuYWVtLUdyaWQtLTEyID4gLmFlbS1HcmlkQ29sdW1uLS1waG9uZS0tOSB7XG4gICAgd2lkdGg6IDc1JTtcbiAgfVxuICAuYWVtLUdyaWQtLTEyID4gLmFlbS1HcmlkQ29sdW1uLS1waG9uZS0tMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMzMzMzMzJTtcbiAgfVxuICAuYWVtLUdyaWQtLTEyID4gLmFlbS1HcmlkQ29sdW1uLS1waG9uZS0tMTEge1xuICAgIHdpZHRoOiA5MS42NjY2NjY2NjY3JTtcbiAgfVxuICAuYWVtLUdyaWQtLTEyID4gLmFlbS1HcmlkQ29sdW1uLS1waG9uZS0tMTIge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG4gIC5hZW0tR3JpZC0tMTIgPiAuYWVtLUdyaWRDb2x1bW4tLW9mZnNldC0tcGhvbmUtLTAge1xuICAgIG1hcmdpbi1pbmxpbmUtc3RhcnQ6IDAlO1xuICB9XG4gIC5hZW0tR3JpZC0tMTIgPiAuYWVtLUdyaWRDb2x1bW4tLW9mZnNldC0tcGhvbmUtLTEge1xuICAgIG1hcmdpbi1pbmxpbmUtc3RhcnQ6IDguMzMzMzMzMzMzMyU7XG4gIH1cbiAgLmFlbS1HcmlkLS0xMiA+IC5hZW0tR3JpZENvbHVtbi0tb2Zmc2V0LS1waG9uZS0tMiB7XG4gICAgbWFyZ2luLWlubGluZS1zdGFydDogMTYuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLmFlbS1HcmlkLS0xMiA+IC5hZW0tR3JpZENvbHVtbi0tb2Zmc2V0LS1waG9uZS0tMyB7XG4gICAgbWFyZ2luLWlubGluZS1zdGFydDogMjUlO1xuICB9XG4gIC5hZW0tR3JpZC0tMTIgPiAuYWVtLUdyaWRDb2x1bW4tLW9mZnNldC0tcGhvbmUtLTQge1xuICAgIG1hcmdpbi1pbmxpbmUtc3RhcnQ6IDMzLjMzMzMzMzMzMzMlO1xuICB9XG4gIC5hZW0tR3JpZC0tMTIgPiAuYWVtLUdyaWRDb2x1bW4tLW9mZnNldC0tcGhvbmUtLTUge1xuICAgIG1hcmdpbi1pbmxpbmUtc3RhcnQ6IDQxLjY2NjY2NjY2NjclO1xuICB9XG4gIC5hZW0tR3JpZC0tMTIgPiAuYWVtLUdyaWRDb2x1bW4tLW9mZnNldC0tcGhvbmUtLTYge1xuICAgIG1hcmdpbi1pbmxpbmUtc3RhcnQ6IDUwJTtcbiAgfVxuICAuYWVtLUdyaWQtLTEyID4gLmFlbS1HcmlkQ29sdW1uLS1vZmZzZXQtLXBob25lLS03IHtcbiAgICBtYXJnaW4taW5saW5lLXN0YXJ0OiA1OC4zMzMzMzMzMzMzJTtcbiAgfVxuICAuYWVtLUdyaWQtLTEyID4gLmFlbS1HcmlkQ29sdW1uLS1vZmZzZXQtLXBob25lLS04IHtcbiAgICBtYXJnaW4taW5saW5lLXN0YXJ0OiA2Ni42NjY2NjY2NjY3JTtcbiAgfVxuICAuYWVtLUdyaWQtLTEyID4gLmFlbS1HcmlkQ29sdW1uLS1vZmZzZXQtLXBob25lLS05IHtcbiAgICBtYXJnaW4taW5saW5lLXN0YXJ0OiA3NSU7XG4gIH1cbiAgLmFlbS1HcmlkLS0xMiA+IC5hZW0tR3JpZENvbHVtbi0tb2Zmc2V0LS1waG9uZS0tMTAge1xuICAgIG1hcmdpbi1pbmxpbmUtc3RhcnQ6IDgzLjMzMzMzMzMzMzMlO1xuICB9XG4gIC5hZW0tR3JpZC0tMTIgPiAuYWVtLUdyaWRDb2x1bW4tLW9mZnNldC0tcGhvbmUtLTExIHtcbiAgICBtYXJnaW4taW5saW5lLXN0YXJ0OiA5MS42NjY2NjY2NjY3JTtcbiAgfVxuICAuYWVtLUdyaWQtLTEyID4gLmFlbS1HcmlkQ29sdW1uLS1vZmZzZXQtLXBob25lLS0xMiB7XG4gICAgbWFyZ2luLWlubGluZS1zdGFydDogMTAwJTtcbiAgfVxuICAuYWVtLUdyaWRDb2x1bW4tLXBob25lLS1oaWRlIHtcbiAgICAvKiBoaWRlIGJlaGF2aW9yICovXG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAuYWVtLUdyaWRDb2x1bW4tLXBob25lLS1zaG93IHtcbiAgICAvKiBzaG93IGJlaGF2aW9yICovXG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtYXgtd2lkdGg6IDk1OXB4KSB7XG4gIC5hZW0tR3JpZC0tMTIgPiAuYWVtLUdyaWRDb2x1bW4tLXRhYmxldC0tMSB7XG4gICAgd2lkdGg6IDguMzMzMzMzMzMzMyU7XG4gIH1cbiAgLmFlbS1HcmlkLS0xMiA+IC5hZW0tR3JpZENvbHVtbi0tdGFibGV0LS0yIHtcbiAgICB3aWR0aDogMTYuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLmFlbS1HcmlkLS0xMiA+IC5hZW0tR3JpZENvbHVtbi0tdGFibGV0LS0zIHtcbiAgICB3aWR0aDogMjUlO1xuICB9XG4gIC5hZW0tR3JpZC0tMTIgPiAuYWVtLUdyaWRDb2x1bW4tLXRhYmxldC0tNCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzMzMzMzMlO1xuICB9XG4gIC5hZW0tR3JpZC0tMTIgPiAuYWVtLUdyaWRDb2x1bW4tLXRhYmxldC0tNSB7XG4gICAgd2lkdGg6IDQxLjY2NjY2NjY2NjclO1xuICB9XG4gIC5hZW0tR3JpZC0tMTIgPiAuYWVtLUdyaWRDb2x1bW4tLXRhYmxldC0tNiB7XG4gICAgd2lkdGg6IDUwJTtcbiAgfVxuICAuYWVtLUdyaWQtLTEyID4gLmFlbS1HcmlkQ29sdW1uLS10YWJsZXQtLTcge1xuICAgIHdpZHRoOiA1OC4zMzMzMzMzMzMzJTtcbiAgfVxuICAuYWVtLUdyaWQtLTEyID4gLmFlbS1HcmlkQ29sdW1uLS10YWJsZXQtLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NjY2NjY3JTtcbiAgfVxuICAuYWVtLUdyaWQtLTEyID4gLmFlbS1HcmlkQ29sdW1uLS10YWJsZXQtLTkge1xuICAgIHdpZHRoOiA3NSU7XG4gIH1cbiAgLmFlbS1HcmlkLS0xMiA+IC5hZW0tR3JpZENvbHVtbi0tdGFibGV0LS0xMCB7XG4gICAgd2lkdGg6IDgzLjMzMzMzMzMzMzMlO1xuICB9XG4gIC5hZW0tR3JpZC0tMTIgPiAuYWVtLUdyaWRDb2x1bW4tLXRhYmxldC0tMTEge1xuICAgIHdpZHRoOiA5MS42NjY2NjY2NjY3JTtcbiAgfVxuICAuYWVtLUdyaWQtLTEyID4gLmFlbS1HcmlkQ29sdW1uLS10YWJsZXQtLTEyIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICAuYWVtLUdyaWQtLTEyID4gLmFlbS1HcmlkQ29sdW1uLS1vZmZzZXQtLXRhYmxldC0tMCB7XG4gICAgbWFyZ2luLWlubGluZS1zdGFydDogMCU7XG4gIH1cbiAgLmFlbS1HcmlkLS0xMiA+IC5hZW0tR3JpZENvbHVtbi0tb2Zmc2V0LS10YWJsZXQtLTEge1xuICAgIG1hcmdpbi1pbmxpbmUtc3RhcnQ6IDguMzMzMzMzMzMzMyU7XG4gIH1cbiAgLmFlbS1HcmlkLS0xMiA+IC5hZW0tR3JpZENvbHVtbi0tb2Zmc2V0LS10YWJsZXQtLTIge1xuICAgIG1hcmdpbi1pbmxpbmUtc3RhcnQ6IDE2LjY2NjY2NjY2NjclO1xuICB9XG4gIC5hZW0tR3JpZC0tMTIgPiAuYWVtLUdyaWRDb2x1bW4tLW9mZnNldC0tdGFibGV0LS0zIHtcbiAgICBtYXJnaW4taW5saW5lLXN0YXJ0OiAyNSU7XG4gIH1cbiAgLmFlbS1HcmlkLS0xMiA+IC5hZW0tR3JpZENvbHVtbi0tb2Zmc2V0LS10YWJsZXQtLTQge1xuICAgIG1hcmdpbi1pbmxpbmUtc3RhcnQ6IDMzLjMzMzMzMzMzMzMlO1xuICB9XG4gIC5hZW0tR3JpZC0tMTIgPiAuYWVtLUdyaWRDb2x1bW4tLW9mZnNldC0tdGFibGV0LS01IHtcbiAgICBtYXJnaW4taW5saW5lLXN0YXJ0OiA0MS42NjY2NjY2NjY3JTtcbiAgfVxuICAuYWVtLUdyaWQtLTEyID4gLmFlbS1HcmlkQ29sdW1uLS1vZmZzZXQtLXRhYmxldC0tNiB7XG4gICAgbWFyZ2luLWlubGluZS1zdGFydDogNTAlO1xuICB9XG4gIC5hZW0tR3JpZC0tMTIgPiAuYWVtLUdyaWRDb2x1bW4tLW9mZnNldC0tdGFibGV0LS03IHtcbiAgICBtYXJnaW4taW5saW5lLXN0YXJ0OiA1OC4zMzMzMzMzMzMzJTtcbiAgfVxuICAuYWVtLUdyaWQtLTEyID4gLmFlbS1HcmlkQ29sdW1uLS1vZmZzZXQtLXRhYmxldC0tOCB7XG4gICAgbWFyZ2luLWlubGluZS1zdGFydDogNjYuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLmFlbS1HcmlkLS0xMiA+IC5hZW0tR3JpZENvbHVtbi0tb2Zmc2V0LS10YWJsZXQtLTkge1xuICAgIG1hcmdpbi1pbmxpbmUtc3RhcnQ6IDc1JTtcbiAgfVxuICAuYWVtLUdyaWQtLTEyID4gLmFlbS1HcmlkQ29sdW1uLS1vZmZzZXQtLXRhYmxldC0tMTAge1xuICAgIG1hcmdpbi1pbmxpbmUtc3RhcnQ6IDgzLjMzMzMzMzMzMzMlO1xuICB9XG4gIC5hZW0tR3JpZC0tMTIgPiAuYWVtLUdyaWRDb2x1bW4tLW9mZnNldC0tdGFibGV0LS0xMSB7XG4gICAgbWFyZ2luLWlubGluZS1zdGFydDogOTEuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLmFlbS1HcmlkLS0xMiA+IC5hZW0tR3JpZENvbHVtbi0tb2Zmc2V0LS10YWJsZXQtLTEyIHtcbiAgICBtYXJnaW4taW5saW5lLXN0YXJ0OiAxMDAlO1xuICB9XG4gIC5hZW0tR3JpZENvbHVtbi0tdGFibGV0LS1oaWRlIHtcbiAgICAvKiBoaWRlIGJlaGF2aW9yICovXG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAuYWVtLUdyaWRDb2x1bW4tLXRhYmxldC0tc2hvdyB7XG4gICAgLyogc2hvdyBiZWhhdmlvciAqL1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG4uYWVtLUdyaWRTaG93SGlkZGVuID4gLmFlbS1HcmlkID4gLmFlbS1HcmlkQ29sdW1uIHtcbiAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbn1cblxuLmFlbS1HcmlkIC5jb250YWluZXItZnVsbHdpZHRoIHtcbiAgbWFyZ2luLWJsb2NrOiAwO1xuICBtYXJnaW4taW5saW5lOiAtMTVweDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLmFlbS1HcmlkIC5jb250YWluZXItZnVsbHdpZHRoIHtcbiAgICB3aWR0aDogYXV0bztcbiAgICBtYXJnaW4tYmxvY2s6IDA7XG4gICAgbWFyZ2luLWlubGluZTogY2FsYygoMTAwdncgLSAxMjAwcHgpIC8gLTIpO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMjA0OHB4KSB7XG4gIC5tYWluLWdyaWQgLmFlbS1HcmlkIC5jb250YWluZXItZnVsbHdpZHRoIHtcbiAgICB3aWR0aDogYXV0bztcbiAgICBtYXJnaW4tYmxvY2s6IDA7XG4gICAgbWFyZ2luLWlubGluZTogY2FsYygoMjA0OHB4IC0gMTIwMHB4KSAvIC0yKTtcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5jb250YWluZXIge1xuICAgIG1heC13aWR0aDogMTIwMHB4O1xuICAgIG1hcmdpbi1ibG9jazogMDtcbiAgICBtYXJnaW4taW5saW5lOiBhdXRvO1xuICB9XG59XG5cbi5sYXlvdXRjb250YWluZXIge1xuICBtYXJnaW4tYmxvY2s6IDMwcHg7XG4gIG1hcmdpbi1pbmxpbmU6IDA7XG59XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogXCJWb2x2b0Jyb2FkUHJvRGlnaXRhbFwiO1xuICBzcmM6IHVybChcIi9hcHBzL3ZvbHZvL2NsaWVudGxpYnMvc2hhcmVkL3Jlc291cmNlcy9mb250cy9Wb2x2b0Jyb2FkUHJvRGlnaXRhbC9Wb2x2b0Jyb2FkUHJvRGlnaXRhbC13ZWJmb250LndvZmYyXCIpIGZvcm1hdChcIndvZmYyXCIpO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtZGlzcGxheTogc3dhcDtcbiAgdW5pY29kZS1yYW5nZTogVSswMDAtNTg5OyAvKiBMYXRpbiBnbHlwaHMgKi9cbn1cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogXCJBc3Npc3RhbnRcIjtcbiAgc3JjOiB1cmwoXCIvYXBwcy92b2x2by9jbGllbnRsaWJzL3NoYXJlZC9yZXNvdXJjZXMvZm9udHMvYXNzaXN0YW50L0Fzc2lzdGFudC1yZWd1bGFyLXdlYmZvbnQud29mZjJcIikgZm9ybWF0KFwid29mZjJcIik7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC1kaXNwbGF5OiBmYWxsYmFjaztcbiAgdW5pY29kZS1yYW5nZTogVSswNTkwLTA1RkY7IC8qIEhlYnJldyBnbHlwaHMgKi9cbn1cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogXCJBc3Npc3RhbnRcIjtcbiAgc3JjOiB1cmwoXCIvYXBwcy92b2x2by9jbGllbnRsaWJzL3NoYXJlZC9yZXNvdXJjZXMvZm9udHMvYXNzaXN0YW50L0Fzc2lzdGFudC1zZW1pYm9sZC13ZWJmb250LndvZmYyXCIpIGZvcm1hdChcIndvZmYyXCIpO1xuICBmb250LXdlaWdodDogNzAwO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtZGlzcGxheTogZmFsbGJhY2s7XG4gIHVuaWNvZGUtcmFuZ2U6IFUrMDU5MC0wNUZGOyAvKiBIZWJyZXcgZ2x5cGhzICovXG59XG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IFwiQXNzaXN0YW50IExpZ2h0XCI7XG4gIHNyYzogdXJsKFwiL2FwcHMvdm9sdm8vY2xpZW50bGlicy9zaGFyZWQvcmVzb3VyY2VzL2ZvbnRzL2Fzc2lzdGFudC9Bc3Npc3RhbnQtbGlnaHQtd2ViZm9udC53b2ZmMlwiKSBmb3JtYXQoXCJ3b2ZmMlwiKTtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LWRpc3BsYXk6IGZhbGxiYWNrO1xuICB1bmljb2RlLXJhbmdlOiBVKzA1OTAtMDVGRjsgLyogSGVicmV3IGdseXBocyAqL1xufVxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBcIkFzc2lzdGFudCBCb2xkXCI7XG4gIHNyYzogdXJsKFwiL2FwcHMvdm9sdm8vY2xpZW50bGlicy9zaGFyZWQvcmVzb3VyY2VzL2ZvbnRzL2Fzc2lzdGFudC9Bc3Npc3RhbnQtc2VtaWJvbGQtd2ViZm9udC53b2ZmMlwiKSBmb3JtYXQoXCJ3b2ZmMlwiKTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LWRpc3BsYXk6IGZhbGxiYWNrO1xuICB1bmljb2RlLXJhbmdlOiBVKzA1OTAtMDVGRjsgLyogSGVicmV3IGdseXBocyAqL1xufVxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBcIkhlbHZldGljYSBOZXVlXCI7XG4gIHNyYzogdXJsKFwiL2FwcHMvdm9sdm8vY2xpZW50bGlicy9zaGFyZWQvcmVzb3VyY2VzL2ZvbnRzL0hlbHZldGljYU5ldWUvSGVsdmV0aWNhTmV1ZVJvbWFuLXdlYmZvbnQud29mZjJcIikgZm9ybWF0KFwid29mZjJcIik7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC1kaXNwbGF5OiBmYWxsYmFjaztcbn1cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogXCJIZWx2ZXRpY2EgTmV1ZVwiO1xuICBzcmM6IHVybChcIi9hcHBzL3ZvbHZvL2NsaWVudGxpYnMvc2hhcmVkL3Jlc291cmNlcy9mb250cy9IZWx2ZXRpY2FOZXVlL0hlbHZldGljYU5ldWVCbGFjay13ZWJmb250LndvZmYyXCIpIGZvcm1hdChcIndvZmYyXCIpO1xuICBmb250LXdlaWdodDogNzAwO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtZGlzcGxheTogZmFsbGJhY2s7XG59XG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IFwiVm9sdm8gTm92dW0gUmVndWxhclwiO1xuICBzcmM6IHVybChcIi9hcHBzL3ZvbHZvL2NsaWVudGxpYnMvc2hhcmVkL3Jlc291cmNlcy9mb250cy9Wb2x2b05vdnVtL1ZvbHZvTm92dW0tUmVndWxhci13ZWJmb250LndvZmYyXCIpIGZvcm1hdChcIndvZmYyXCIpO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtZGlzcGxheTogZmFsbGJhY2s7XG59XG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IFwiVm9sdm8gTm92dW0gTWVkaXVtXCI7XG4gIHNyYzogdXJsKFwiL2FwcHMvdm9sdm8vY2xpZW50bGlicy9zaGFyZWQvcmVzb3VyY2VzL2ZvbnRzL1ZvbHZvTm92dW0vVm9sdm9Ob3Z1bS1NZWRpdW0td2ViZm9udC53b2ZmMlwiKSBmb3JtYXQoXCJ3b2ZmMlwiKTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LWRpc3BsYXk6IGZhbGxiYWNrO1xufVxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBcIlZvbHZvIE5vdnVtIExpZ2h0XCI7XG4gIHNyYzogdXJsKFwiL2FwcHMvdm9sdm8vY2xpZW50bGlicy9zaGFyZWQvcmVzb3VyY2VzL2ZvbnRzL1ZvbHZvTm92dW0vVm9sdm9Ob3Z1bS1MaWdodC13ZWJmb250LndvZmYyXCIpIGZvcm1hdChcIndvZmYyXCIpO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtZGlzcGxheTogZmFsbGJhY2s7XG59XG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IFwiTm90byBTYW5zIExpZ2h0XCI7XG4gIHNyYzogdXJsKFwiL2FwcHMvdm9sdm8vY2xpZW50bGlicy9zaGFyZWQvcmVzb3VyY2VzL2ZvbnRzL05vdG9TYW5zL05vdG9TYW5zLUxpZ2h0LndvZmYyXCIpIGZvcm1hdChcIndvZmYyXCIpO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtZGlzcGxheTogZmFsbGJhY2s7XG59XG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IFwiTm90byBTYW5zIFJlZ3VsYXJcIjtcbiAgc3JjOiB1cmwoXCIvYXBwcy92b2x2by9jbGllbnRsaWJzL3NoYXJlZC9yZXNvdXJjZXMvZm9udHMvTm90b1NhbnMvTm90b1NhbnMtUmVndWxhci53b2ZmMlwiKSBmb3JtYXQoXCJ3b2ZmMlwiKTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LWRpc3BsYXk6IGZhbGxiYWNrO1xufVxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBcIk5vdG8gU2FucyBNZWRpdW1cIjtcbiAgc3JjOiB1cmwoXCIvYXBwcy92b2x2by9jbGllbnRsaWJzL3NoYXJlZC9yZXNvdXJjZXMvZm9udHMvTm90b1NhbnMvTm90b1NhbnMtU2VtaUJvbGQud29mZjJcIikgZm9ybWF0KFwid29mZjJcIik7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC1kaXNwbGF5OiBmYWxsYmFjaztcbn1cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogXCJGb250IEF3ZXNvbWUgQnJhbmRzXCI7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgZm9udC1kaXNwbGF5OiBibG9jaztcbiAgc3JjOiB1cmwoXCIvYXBwcy92b2x2by9jbGllbnRsaWJzL3NoYXJlZC9yZXNvdXJjZXMvZm9udHMvRm9udEF3ZXNvbWUvYnJhbmRzL2ZhLWJyYW5kcy00MDAud29mZjJcIikgZm9ybWF0KFwid29mZjJcIiksIHVybChcIi9hcHBzL3ZvbHZvL2NsaWVudGxpYnMvc2hhcmVkL3Jlc291cmNlcy9mb250cy9Gb250QXdlc29tZS9icmFuZHMvZmEtYnJhbmRzLTQwMC53b2ZmXCIpIGZvcm1hdChcIndvZmZcIiksIHVybChcIi9hcHBzL3ZvbHZvL2NsaWVudGxpYnMvc2hhcmVkL3Jlc291cmNlcy9mb250cy9Gb250QXdlc29tZS9icmFuZHMvZmEtYnJhbmRzLTQwMC5zdmcjZm9udGF3ZXNvbWVcIikgZm9ybWF0KFwic3ZnXCIpO1xufVxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBcIkZvbnQgQXdlc29tZSBSZWd1bGFyXCI7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgZm9udC1kaXNwbGF5OiBibG9jaztcbiAgc3JjOiB1cmwoXCIvYXBwcy92b2x2by9jbGllbnRsaWJzL3NoYXJlZC9yZXNvdXJjZXMvZm9udHMvRm9udEF3ZXNvbWUvcmVndWxhci9mYS1yZWd1bGFyLTQwMC53b2ZmMlwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSwgdXJsKFwiL2FwcHMvdm9sdm8vY2xpZW50bGlicy9zaGFyZWQvcmVzb3VyY2VzL2ZvbnRzL0ZvbnRBd2Vzb21lL3JlZ3VsYXIvZmEtcmVndWxhci00MDAud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpLCB1cmwoXCIvYXBwcy92b2x2by9jbGllbnRsaWJzL3NoYXJlZC9yZXNvdXJjZXMvZm9udHMvRm9udEF3ZXNvbWUvcmVndWxhci9mYS1yZWd1bGFyLTQwMC5zdmcjZm9udGF3ZXNvbWVcIikgZm9ybWF0KFwic3ZnXCIpO1xufVxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBcIkZvbnQgQXdlc29tZSBTb2xpZFwiO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA5MDA7XG4gIGZvbnQtZGlzcGxheTogYmxvY2s7XG4gIHNyYzogdXJsKFwiL2FwcHMvdm9sdm8vY2xpZW50bGlicy9zaGFyZWQvcmVzb3VyY2VzL2ZvbnRzL0ZvbnRBd2Vzb21lL3NvbGlkL2ZhLXNvbGlkLTkwMC53b2ZmMlwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSwgdXJsKFwiL2FwcHMvdm9sdm8vY2xpZW50bGlicy9zaGFyZWQvcmVzb3VyY2VzL2ZvbnRzL0ZvbnRBd2Vzb21lL3NvbGlkL2ZhLXNvbGlkLTkwMC53b2ZmXCIpIGZvcm1hdChcIndvZmZcIiksIHVybChcIi9hcHBzL3ZvbHZvL2NsaWVudGxpYnMvc2hhcmVkL3Jlc291cmNlcy9mb250cy9Gb250QXdlc29tZS9zb2xpZC9mYS1zb2xpZC05MDAuc3ZnI2ZvbnRhd2Vzb21lXCIpIGZvcm1hdChcInN2Z1wiKTtcbn1cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogXCJSb2JvdG8gTGlnaHRcIjtcbiAgc3JjOiB1cmwoXCIvYXBwcy92b2x2by9jbGllbnRsaWJzL3NoYXJlZC9yZXNvdXJjZXMvZm9udHMvUm9ib3RvL3JvYm90by1saWdodC13ZWJmb250LndvZmYyXCIpIGZvcm1hdChcIndvZmYyXCIpO1xuICBmb250LXdlaWdodDogMzAwO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG59XG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IFwiUm9ib3RvIFJlZ3VsYXJcIjtcbiAgc3JjOiB1cmwoXCIvYXBwcy92b2x2by9jbGllbnRsaWJzL3NoYXJlZC9yZXNvdXJjZXMvZm9udHMvUm9ib3RvL3JvYm90by1yZWd1bGFyLXdlYmZvbnQud29mZjJcIikgZm9ybWF0KFwid29mZjJcIik7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogXCJSb2JvdG8gTWVkaXVtXCI7XG4gIHNyYzogdXJsKFwiL2FwcHMvdm9sdm8vY2xpZW50bGlicy9zaGFyZWQvcmVzb3VyY2VzL2ZvbnRzL1JvYm90by9yb2JvdG8tbWVkaXVtLXdlYmZvbnQud29mZjJcIikgZm9ybWF0KFwid29mZjJcIik7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogXCJSb2JvdG8gQm9sZFwiO1xuICBzcmM6IHVybChcIi9hcHBzL3ZvbHZvL2NsaWVudGxpYnMvc2hhcmVkL3Jlc291cmNlcy9mb250cy9Sb2JvdG8vcm9ib3RvLWJvbGQtd2ViZm9udC53b2ZmMlwiKSBmb3JtYXQoXCJ3b2ZmMlwiKTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuQGtleWZyYW1lcyBzcGlubmVyIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gIH1cbn1cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogXCJWb2x2b0ljb25zXCI7XG4gIHNyYzogdXJsKFwiL2FwcHMvdm9sdm8vY2xpZW50bGlicy9zaGFyZWQvcmVzb3VyY2VzL2ZvbnRzL3ZvbHZvaWNvbnMvL1ZvbHZvSWNvbnMud29mZjI/dj17e3ZlcnNpb259fVwiKSBmb3JtYXQoXCJ3b2ZmXCIpLCB1cmwoXCIvYXBwcy92b2x2by9jbGllbnRsaWJzL3NoYXJlZC9yZXNvdXJjZXMvZm9udHMvdm9sdm9pY29ucy8vVm9sdm9JY29ucy53b2ZmP3Y9e3t2ZXJzaW9ufX1cIikgZm9ybWF0KFwid29mZlwiKTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LWRpc3BsYXk6IGF1dG87XG59XG4udmk6OmJlZm9yZSB7XG4gIGZvbnQtZmFtaWx5OiBcIlZvbHZvSWNvbnNcIjtcbiAgc3BlYWs6IG5vbmU7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZm9udC12YXJpYW50OiBub3JtYWw7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICBsaW5lLWhlaWdodDogMTtcbiAgdGV4dC1yZW5kZXJpbmc6IGF1dG87XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG59XG5cbi52aS1jb2c6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5M2FcIjtcbn1cblxuLnZpLWluZm86YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MzZcIjtcbiAgY29sb3I6ICM1MzU2NWE7XG59XG5cbi52aS1tYXAtbWFya2VyLW91dGxpbmU6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzUzNTY1YTtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXNrLWltYWdlOiB1cmwoXCIvY29udGVudC9kYW0vdm9sdm8tbWVkaWEvbGlzdC1pY29ucy9nZW9waW4uc3ZnI2dlb3Bpbi1pY29uLXcyNC12aWV3XCIpO1xuICBtYXNrLXJlcGVhdDogbm8tcmVwZWF0O1xuICBtYXNrLXNpemU6IGNvdmVyO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgd2lkdGg6IHZhcigtLXYtaWNvbi1zaXplKTtcbiAgaGVpZ2h0OiB2YXIoLS12LWljb24tc2l6ZSk7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC52aS1tYXAtbWFya2VyLW91dGxpbmU6YmVmb3JlIHtcbiAgICBtYXNrLWltYWdlOiB1cmwoXCIvY29udGVudC9kYW0vdm9sdm8tbWVkaWEvbGlzdC1pY29ucy9nZW9waW4uc3ZnI2dlb3Bpbi1pY29uLXcxNi12aWV3XCIpO1xuICB9XG59XG5cbi52aS1jYWxlbmRhci1zaGVldDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkzOFwiO1xuICBjb2xvcjogIzUzNTY1YTtcbn1cblxuLnZpLXF1b3RhdGlvbl9tYXJrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTM1XCI7XG4gIGNvbG9yOiAjNTBhMjk0O1xufVxuXG4udmktY2hlY2stdGhpbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkwNFwiO1xufVxuXG4udmktaGVhZGVyLWNoZXZyb24tbGVmdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkyY1wiO1xuICBjb2xvcjogIzUzNTY1YTtcbn1cblxuLnZpLWhlYWRlci1jaGV2cm9uLXJpZ2h0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTJlXCI7XG4gIGNvbG9yOiAjNTM1NjVhO1xufVxuXG4udmktaGVhZGVyLWNoZXZyb24tdXA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MmZcIjtcbiAgY29sb3I6ICM1MzU2NWE7XG59XG5cbi52aS1oZWFkZXItY2hldnJvbi1kb3duOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTMwXCI7XG4gIGNvbG9yOiAjNTM1NjVhO1xufVxuXG4udmktaGVhZGVyLXNlYXJjaDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkyZFwiO1xufVxuXG4udmktdHdpdHRlcjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNTM1NjVhO1xuICBjb250ZW50OiBcIlwiO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hc2staW1hZ2U6IHVybChcIi9jb250ZW50L2RhbS92b2x2by1tZWRpYS9saXN0LWljb25zL3R3aXR0ZXIuc3ZnI3R3aXR0ZXItaWNvbi13MjQtdmlld1wiKTtcbiAgbWFzay1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgbWFzay1zaXplOiBjb3ZlcjtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIHdpZHRoOiB2YXIoLS12LWljb24tc2l6ZSk7XG4gIGhlaWdodDogdmFyKC0tdi1pY29uLXNpemUpO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAudmktdHdpdHRlcjpiZWZvcmUge1xuICAgIG1hc2staW1hZ2U6IHVybChcIi9jb250ZW50L2RhbS92b2x2by1tZWRpYS9saXN0LWljb25zL3R3aXR0ZXIuc3ZnI3R3aXR0ZXItaWNvbi13MTYtdmlld1wiKTtcbiAgfVxufVxuXG4udmktcGludGVyZXN0LXA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MjlcIjtcbn1cblxuLnZpLWZhY2Vib29rOmJlZm9yZSxcbi52aS1mYWNlYm9vay1mOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM1MzU2NWE7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFzay1pbWFnZTogdXJsKFwiL2NvbnRlbnQvZGFtL3ZvbHZvLW1lZGlhL2xpc3QtaWNvbnMvZmFjZWJvb2suc3ZnI2ZhY2Vib29rLWljb24tdzI0LXZpZXdcIik7XG4gIG1hc2stcmVwZWF0OiBuby1yZXBlYXQ7XG4gIG1hc2stc2l6ZTogY292ZXI7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICB3aWR0aDogdmFyKC0tdi1pY29uLXNpemUpO1xuICBoZWlnaHQ6IHZhcigtLXYtaWNvbi1zaXplKTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLnZpLWZhY2Vib29rOmJlZm9yZSxcbiAgLnZpLWZhY2Vib29rLWY6YmVmb3JlIHtcbiAgICBtYXNrLWltYWdlOiB1cmwoXCIvY29udGVudC9kYW0vdm9sdm8tbWVkaWEvbGlzdC1pY29ucy9mYWNlYm9vay5zdmcjZmFjZWJvb2staWNvbi13MTYtdmlld1wiKTtcbiAgfVxufVxuXG4udmktbGlua2VkaW46YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzUzNTY1YTtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXNrLWltYWdlOiB1cmwoXCIvY29udGVudC9kYW0vdm9sdm8tbWVkaWEvbGlzdC1pY29ucy9saW5rZWQtaW4uc3ZnI2xpbmtlZC1pbi1pY29uLXcyNC12aWV3XCIpO1xuICBtYXNrLXJlcGVhdDogbm8tcmVwZWF0O1xuICBtYXNrLXNpemU6IGNvdmVyO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgd2lkdGg6IHZhcigtLXYtaWNvbi1zaXplKTtcbiAgaGVpZ2h0OiB2YXIoLS12LWljb24tc2l6ZSk7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC52aS1saW5rZWRpbjpiZWZvcmUge1xuICAgIG1hc2staW1hZ2U6IHVybChcIi9jb250ZW50L2RhbS92b2x2by1tZWRpYS9saXN0LWljb25zL2xpbmtlZC1pbi5zdmcjbGlua2VkLWluLWljb24tdzE2LXZpZXdcIik7XG4gIH1cbn1cblxuLnZpLWdyb3VwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTI1XCI7XG59XG5cbi52aS1zdGFyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTI2XCI7XG59XG5cbi52aS1jb21tZW50cy1vOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTI3XCI7XG59XG5cbi52aS1wbGFuZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkxZFwiO1xufVxuXG4udmktdGFnOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTFlXCI7XG59XG5cbi52aS1lbnZlbG9wZTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNTM1NjVhO1xuICBjb250ZW50OiBcIlwiO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hc2staW1hZ2U6IHVybChcIi9jb250ZW50L2RhbS92b2x2by1tZWRpYS9saXN0LWljb25zL21haWwtY2xvc2VkLnN2ZyNtYWlsLWNsb3NlZC1pY29uLXcyNC12aWV3XCIpO1xuICBtYXNrLXJlcGVhdDogbm8tcmVwZWF0O1xuICBtYXNrLXNpemU6IGNvdmVyO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgd2lkdGg6IHZhcigtLXYtaWNvbi1zaXplKTtcbiAgaGVpZ2h0OiB2YXIoLS12LWljb24tc2l6ZSk7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC52aS1lbnZlbG9wZTpiZWZvcmUge1xuICAgIG1hc2staW1hZ2U6IHVybChcIi9jb250ZW50L2RhbS92b2x2by1tZWRpYS9saXN0LWljb25zL21haWwtY2xvc2VkLnN2ZyNtYWlsLWNsb3NlZC1pY29uLXcxNi12aWV3XCIpO1xuICB9XG59XG5cbi52aS1zaXRlbWFwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTIwXCI7XG59XG5cbi52aS1hZGRyZXNzLWNhcmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MjFcIjtcbn1cblxuLnZpLXNoYXJlLWFsdDpiZWZvcmUsXG4udmktc2hhcmUtYWx0LXNxdWFyZTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNTM1NjVhO1xuICBjb250ZW50OiBcIlwiO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hc2staW1hZ2U6IHVybChcIi9jb250ZW50L2RhbS92b2x2by1tZWRpYS9saXN0LWljb25zL3NoYXJlLnN2ZyNzaGFyZS1pY29uLXcyNC12aWV3XCIpO1xuICBtYXNrLXJlcGVhdDogbm8tcmVwZWF0O1xuICBtYXNrLXNpemU6IGNvdmVyO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgd2lkdGg6IHZhcigtLXYtaWNvbi1zaXplKTtcbiAgaGVpZ2h0OiB2YXIoLS12LWljb24tc2l6ZSk7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC52aS1zaGFyZS1hbHQ6YmVmb3JlLFxuICAudmktc2hhcmUtYWx0LXNxdWFyZTpiZWZvcmUge1xuICAgIG1hc2staW1hZ2U6IHVybChcIi9jb250ZW50L2RhbS92b2x2by1tZWRpYS9saXN0LWljb25zL3NoYXJlLnN2ZyNzaGFyZS1pY29uLXcxNi12aWV3XCIpO1xuICB9XG59XG5cbi52aS1oZWFydDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkyNFwiO1xufVxuXG4udmktaGVhcnQtbzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkyM1wiO1xufVxuXG4udmktbWFwLW1hcmtlcjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNTM1NjVhO1xuICBjb250ZW50OiBcIlwiO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hc2staW1hZ2U6IHVybChcIi9jb250ZW50L2RhbS92b2x2by1tZWRpYS9saXN0LWljb25zL2dlb3Bpbi5zdmcjZ2VvcGluLWljb24tdzI0LXZpZXdcIik7XG4gIG1hc2stcmVwZWF0OiBuby1yZXBlYXQ7XG4gIG1hc2stc2l6ZTogY292ZXI7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICB3aWR0aDogdmFyKC0tdi1pY29uLXNpemUpO1xuICBoZWlnaHQ6IHZhcigtLXYtaWNvbi1zaXplKTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLnZpLW1hcC1tYXJrZXI6YmVmb3JlIHtcbiAgICBtYXNrLWltYWdlOiB1cmwoXCIvY29udGVudC9kYW0vdm9sdm8tbWVkaWEvbGlzdC1pY29ucy9nZW9waW4uc3ZnI2dlb3Bpbi1pY29uLXcxNi12aWV3XCIpO1xuICB9XG59XG5cbi52aS1jYWxlbmRhcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkxOFwiO1xufVxuXG4udmktYXJyb3ctdXA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MTlcIjtcbn1cblxuLnZpLXJzczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkwM1wiO1xufVxuXG4udmktZnVsbHdpZHRoLXF1b3RlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6ICdcIic7XG59XG5cbi52aS1ob29rLWJyYWNrZXQtbGVmdDpiZWZvcmUge1xuICBjb250ZW50OiBcIuOAjFwiO1xufVxuXG4udmktaG9vay1icmFja2V0LXJpZ2h0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi44CNXCI7XG59XG5cbi52aS1zaW5nbGUtcXVvdGUtbGVmdDpiZWZvcmUge1xuICBjb250ZW50OiBcIuKAmFwiO1xufVxuXG4udmktc2luZ2xlLXF1b3RlLXJpZ2h0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi4oCZXCI7XG59XG5cbi52aS1zaW5nbGUtcXVvdGUtbGVmdC1sb3c6YmVmb3JlIHtcbiAgY29udGVudDogXCLigJpcIjtcbn1cblxuLnZpLXF1b3RlLWxlZnQtbG93OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi4oCeXCI7XG59XG5cbi52aS1jb21wcmVzczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkxNFwiO1xufVxuXG4udmktZXhwYW5kOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTAxXCI7XG59XG5cbi52aS1hbmdsZS1sZWZ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi4oC5XCI7XG59XG5cbi52aS1hbmdsZS1yaWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIuKAulwiO1xufVxuXG4udmktcXVvdGUtbGVmdDpiZWZvcmUge1xuICBjb250ZW50OiBcIuKAnFwiO1xufVxuXG4udmktcXVvdGUtcmlnaHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLigJ1cIjtcbn1cblxuLnZpLWFuZ2xlLWRvdWJsZS1yaWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIsK7XCI7XG59XG5cbi52aS1hbmdsZS1kb3VibGUtbGVmdDpiZWZvcmUge1xuICBjb250ZW50OiBcIsKrXCI7XG59XG5cbi52aS1taW51cy1jaXJjbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MTVcIjtcbn1cblxuLnZpLXBsdXMtY2lyY2xlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTEyXCI7XG59XG5cbi52aS1zb3J0LXVwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTEzXCI7XG59XG5cbi52aS1zcXVhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MDJcIjtcbn1cblxuLnZpLXNlYXJjaDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkwNlwiO1xufVxuXG4udmktc2VhcmNoLW86YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MzlcIjtcbiAgY29sb3I6ICM1MzU2NWE7XG59XG5cbi52aS1zcGlubmVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTA3XCI7XG59XG5cbi52aS1jaGVjazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkwOFwiO1xufVxuXG4udmktZG93bmxvYWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MDlcIjtcbn1cblxuLnZpLXN0ZXAtZm9yd2FyZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkwYVwiO1xufVxuXG4udmktc3RlcC1iYWNrd2FyZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkwYlwiO1xufVxuXG4udmktY2hldnJvbi1yaWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkwY1wiO1xufVxuXG4udmktY2hldnJvbi1sZWZ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTBkXCI7XG59XG5cbi52aS1jaGV2cm9uLWRvd246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MGVcIjtcbn1cblxuLnZpLWNoZXZyb24tdXA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MGZcIjtcbn1cblxuLnZpLWNsb3NlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTEwXCI7XG59XG5cbi52aS1wbGF5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTExXCI7XG59XG5cbi52aS1leHRlcm5hbC1saW5rOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM1MzU2NWE7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFzay1pbWFnZTogdXJsKFwiL2NvbnRlbnQvZGFtL3ZvbHZvLW1lZGlhL2xpc3QtaWNvbnMvbGluay1leHRlcm5hbC5zdmcjbGluay1leHRlcm5hbC1pY29uLXcyNC12aWV3XCIpO1xuICBtYXNrLXJlcGVhdDogbm8tcmVwZWF0O1xuICBtYXNrLXNpemU6IGNvdmVyO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgd2lkdGg6IHZhcigtLXYtaWNvbi1zaXplKTtcbiAgaGVpZ2h0OiB2YXIoLS12LWljb24tc2l6ZSk7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC52aS1leHRlcm5hbC1saW5rOmJlZm9yZSB7XG4gICAgbWFzay1pbWFnZTogdXJsKFwiL2NvbnRlbnQvZGFtL3ZvbHZvLW1lZGlhL2xpc3QtaWNvbnMvbGluay1leHRlcm5hbC5zdmcjbGluay1leHRlcm5hbC1pY29uLXcxNi12aWV3XCIpO1xuICB9XG59XG5cbi52aS1hcnJvdy1yb3RhdGUtbGVmdC1zb2xpZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkzMlwiO1xufVxuXG4udmktbWludXMtc29saWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MzNcIjtcbn1cblxuLnZpLXBsdXMtc29saWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MzRcIjtcbn1cblxuLnZpLWJhcnM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MDBcIjtcbn1cblxuLnZpLXNlYXJjaC1vOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTM5XCI7XG4gIGNvbG9yOiAjNTM1NjVhO1xufVxuXG4udmktdHJlbmRpbmctdXA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MWFcIjtcbn1cblxuLnZpLXRpbWU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MTdcIjtcbn1cblxuLnZpLWFycm93LXJpZ2h0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTE2XCI7XG59XG5cbi52aS1hcnJvdy1kb3duOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTFiXCI7XG59XG5cbi52aS1jbG9zZS1saWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkzYlwiO1xufVxuXG4vKiBzdHlsZWxpbnQtZGlzYWJsZSBmb250LWZhbWlseS1uby1taXNzaW5nLWdlbmVyaWMtZmFtaWx5LWtleXdvcmQgKi9cbi8qIVxuICogRm9udCBBd2Vzb21lIEZyZWUgNS4xNC4wIGJ5IEBmb250YXdlc29tZSAtIGh0dHBzOi8vZm9udGF3ZXNvbWUuY29tXG4gKiBMaWNlbnNlIC0gaHR0cHM6Ly9mb250YXdlc29tZS5jb20vbGljZW5zZS9mcmVlIChJY29uczogQ0MgQlkgNC4wLCBGb250czogU0lMIE9GTCAxLjEsIENvZGU6IE1JVCBMaWNlbnNlKVxuICovXG4uZmEsXG4uZmFzLFxuLmZhcixcbi5mYWwsXG4uZmFkLFxuLmZhYiB7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC12YXJpYW50OiBub3JtYWw7XG4gIHRleHQtcmVuZGVyaW5nOiBhdXRvO1xuICBsaW5lLWhlaWdodDogMTtcbn1cblxuLmZhLWxnIHtcbiAgZm9udC1zaXplOiAxLjMzMzMzMzMzMzNlbTtcbiAgbGluZS1oZWlnaHQ6IDAuNzVlbTtcbiAgdmVydGljYWwtYWxpZ246IC0wLjA2NjdlbTtcbn1cblxuLmZhLXhzIHtcbiAgZm9udC1zaXplOiAwLjc1ZW07XG59XG5cbi5mYS1zbSB7XG4gIGZvbnQtc2l6ZTogMC44NzVlbTtcbn1cblxuLmZhLTF4IHtcbiAgZm9udC1zaXplOiAxZW07XG59XG5cbi5mYS0yeCB7XG4gIGZvbnQtc2l6ZTogMmVtO1xufVxuXG4uZmEtM3gge1xuICBmb250LXNpemU6IDNlbTtcbn1cblxuLmZhLTR4IHtcbiAgZm9udC1zaXplOiA0ZW07XG59XG5cbi5mYS01eCB7XG4gIGZvbnQtc2l6ZTogNWVtO1xufVxuXG4uZmEtNngge1xuICBmb250LXNpemU6IDZlbTtcbn1cblxuLmZhLTd4IHtcbiAgZm9udC1zaXplOiA3ZW07XG59XG5cbi5mYS04eCB7XG4gIGZvbnQtc2l6ZTogOGVtO1xufVxuXG4uZmEtOXgge1xuICBmb250LXNpemU6IDllbTtcbn1cblxuLmZhLTEweCB7XG4gIGZvbnQtc2l6ZTogMTBlbTtcbn1cblxuLmZhLWZ3IHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aWR0aDogMS4yNWVtO1xufVxuXG4uZmEtdWwge1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gIG1hcmdpbi1sZWZ0OiAyLjVlbTtcbiAgcGFkZGluZy1sZWZ0OiAwO1xufVxuLmZhLXVsID4gbGkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5mYS1saSB7XG4gIGxlZnQ6IC0yZW07XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aWR0aDogMmVtO1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbn1cblxuLmZhLWJvcmRlciB7XG4gIGJvcmRlcjogc29saWQgMC4wOGVtICNlZWU7XG4gIGJvcmRlci1yYWRpdXM6IDAuMWVtO1xuICBwYWRkaW5nOiAwLjJlbSAwLjI1ZW0gMC4xNWVtO1xufVxuXG4uZmEtcHVsbC1sZWZ0IHtcbiAgZmxvYXQ6IGxlZnQ7XG59XG5cbi5mYS1wdWxsLXJpZ2h0IHtcbiAgZmxvYXQ6IHJpZ2h0O1xufVxuXG4uZmEuZmEtcHVsbC1sZWZ0LFxuLmZhcy5mYS1wdWxsLWxlZnQsXG4uZmFyLmZhLXB1bGwtbGVmdCxcbi5mYWwuZmEtcHVsbC1sZWZ0LFxuLmZhYi5mYS1wdWxsLWxlZnQge1xuICBtYXJnaW4tcmlnaHQ6IDAuM2VtO1xufVxuLmZhLmZhLXB1bGwtcmlnaHQsXG4uZmFzLmZhLXB1bGwtcmlnaHQsXG4uZmFyLmZhLXB1bGwtcmlnaHQsXG4uZmFsLmZhLXB1bGwtcmlnaHQsXG4uZmFiLmZhLXB1bGwtcmlnaHQge1xuICBtYXJnaW4tbGVmdDogMC4zZW07XG59XG5cbi5mYS1zcGluIHtcbiAgYW5pbWF0aW9uOiBmYS1zcGluIDJzIGluZmluaXRlIGxpbmVhcjtcbn1cblxuLmZhLXB1bHNlIHtcbiAgYW5pbWF0aW9uOiBmYS1zcGluIDFzIGluZmluaXRlIHN0ZXBzKDgpO1xufVxuXG5Aa2V5ZnJhbWVzIGZhLXNwaW4ge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gIH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgfVxufVxuLmZhLXJvdGF0ZS05MCB7XG4gIC1tcy1maWx0ZXI6IFwicHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LkJhc2ljSW1hZ2Uocm90YXRpb249MSlcIjtcbiAgdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xufVxuXG4uZmEtcm90YXRlLTE4MCB7XG4gIC1tcy1maWx0ZXI6IFwicHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LkJhc2ljSW1hZ2Uocm90YXRpb249MilcIjtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcbn1cblxuLmZhLXJvdGF0ZS0yNzAge1xuICAtbXMtZmlsdGVyOiBcInByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5CYXNpY0ltYWdlKHJvdGF0aW9uPTMpXCI7XG4gIHRyYW5zZm9ybTogcm90YXRlKDI3MGRlZyk7XG59XG5cbi5mYS1mbGlwLWhvcml6b250YWwge1xuICAtbXMtZmlsdGVyOiBcInByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5CYXNpY0ltYWdlKHJvdGF0aW9uPTAsIG1pcnJvcj0xKVwiO1xuICB0cmFuc2Zvcm06IHNjYWxlKC0xLCAxKTtcbn1cblxuLmZhLWZsaXAtdmVydGljYWwge1xuICAtbXMtZmlsdGVyOiBcInByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5CYXNpY0ltYWdlKHJvdGF0aW9uPTIsIG1pcnJvcj0xKVwiO1xuICB0cmFuc2Zvcm06IHNjYWxlKDEsIC0xKTtcbn1cblxuLmZhLWZsaXAtYm90aCwgLmZhLWZsaXAtaG9yaXpvbnRhbC5mYS1mbGlwLXZlcnRpY2FsIHtcbiAgLW1zLWZpbHRlcjogXCJwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuQmFzaWNJbWFnZShyb3RhdGlvbj0yLCBtaXJyb3I9MSlcIjtcbiAgdHJhbnNmb3JtOiBzY2FsZSgtMSwgLTEpO1xufVxuXG46cm9vdCAuZmEtcm90YXRlLTkwLFxuOnJvb3QgLmZhLXJvdGF0ZS0xODAsXG46cm9vdCAuZmEtcm90YXRlLTI3MCxcbjpyb290IC5mYS1mbGlwLWhvcml6b250YWwsXG46cm9vdCAuZmEtZmxpcC12ZXJ0aWNhbCxcbjpyb290IC5mYS1mbGlwLWJvdGgge1xuICBmaWx0ZXI6IG5vbmU7XG59XG5cbi5mYS1zdGFjayB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgaGVpZ2h0OiAyZW07XG4gIGxpbmUtaGVpZ2h0OiAyZW07XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgd2lkdGg6IDIuNWVtO1xufVxuXG4uZmEtc3RhY2stMXgsXG4uZmEtc3RhY2stMngge1xuICBsZWZ0OiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5mYS1zdGFjay0xeCB7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xufVxuXG4uZmEtc3RhY2stMngge1xuICBmb250LXNpemU6IDJlbTtcbn1cblxuLmZhLWludmVyc2Uge1xuICBjb2xvcjogI2ZmZjtcbn1cblxuLyogRm9udCBBd2Vzb21lIHVzZXMgdGhlIFVuaWNvZGUgUHJpdmF0ZSBVc2UgQXJlYSAoUFVBKSB0byBlbnN1cmUgc2NyZWVuXG5yZWFkZXJzIGRvIG5vdCByZWFkIG9mZiByYW5kb20gY2hhcmFjdGVycyB0aGF0IHJlcHJlc2VudCBpY29ucyAqL1xuLmZhLTUwMHB4OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjZlXCI7XG59XG5cbi5mYS1hY2Nlc3NpYmxlLWljb246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzNjhcIjtcbn1cblxuLmZhLWFjY3Vzb2Z0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMzY5XCI7XG59XG5cbi5mYS1hY3F1aXNpdGlvbnMtaW5jb3Jwb3JhdGVkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNmFmXCI7XG59XG5cbi5mYS1hZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjY0MVwiO1xufVxuXG4uZmEtYWRkcmVzcy1ib29rOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMmI5XCI7XG59XG5cbi5mYS1hZGRyZXNzLWNhcmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyYmJcIjtcbn1cblxuLmZhLWFkanVzdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA0MlwiO1xufVxuXG4uZmEtYWRuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTcwXCI7XG59XG5cbi5mYS1hZG9iZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjc3OFwiO1xufVxuXG4uZmEtYWR2ZXJzYWw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzNmFcIjtcbn1cblxuLmZhLWFmZmlsaWF0ZXRoZW1lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMzZiXCI7XG59XG5cbi5mYS1haXItZnJlc2hlbmVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNWQwXCI7XG59XG5cbi5mYS1haXJibmI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY4MzRcIjtcbn1cblxuLmZhLWFsZ29saWE6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzNmNcIjtcbn1cblxuLmZhLWFsaWduLWNlbnRlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAzN1wiO1xufVxuXG4uZmEtYWxpZ24tanVzdGlmeTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAzOVwiO1xufVxuXG4uZmEtYWxpZ24tbGVmdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAzNlwiO1xufVxuXG4uZmEtYWxpZ24tcmlnaHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMzhcIjtcbn1cblxuLmZhLWFsaXBheTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjY0MlwiO1xufVxuXG4uZmEtYWxsZXJnaWVzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNDYxXCI7XG59XG5cbi5mYS1hbWF6b246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNzBcIjtcbn1cblxuLmZhLWFtYXpvbi1wYXk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY0MmNcIjtcbn1cblxuLmZhLWFtYnVsYW5jZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBmOVwiO1xufVxuXG4uZmEtYW1lcmljYW4tc2lnbi1sYW5ndWFnZS1pbnRlcnByZXRpbmc6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyYTNcIjtcbn1cblxuLmZhLWFtaWxpYTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjM2ZFwiO1xufVxuXG4uZmEtYW5jaG9yOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTNkXCI7XG59XG5cbi5mYS1hbmRyb2lkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTdiXCI7XG59XG5cbi5mYS1hbmdlbGxpc3Q6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMDlcIjtcbn1cblxuLmZhLWFuZ2xlLWRvdWJsZS1kb3duOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTAzXCI7XG59XG5cbi5mYS1hbmdsZS1kb3VibGUtbGVmdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjEwMFwiO1xufVxuXG4uZmEtYW5nbGUtZG91YmxlLXJpZ2h0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTAxXCI7XG59XG5cbi5mYS1hbmdsZS1kb3VibGUtdXA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxMDJcIjtcbn1cblxuLmZhLWFuZ2xlLWRvd246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxMDdcIjtcbn1cblxuLmZhLWFuZ2xlLWxlZnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxMDRcIjtcbn1cblxuLmZhLWFuZ2xlLXJpZ2h0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTA1XCI7XG59XG5cbi5mYS1hbmdsZS11cDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjEwNlwiO1xufVxuXG4uZmEtYW5ncnk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1NTZcIjtcbn1cblxuLmZhLWFuZ3J5Y3JlYXRpdmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzNmVcIjtcbn1cblxuLmZhLWFuZ3VsYXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY0MjBcIjtcbn1cblxuLmZhLWFua2g6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY2NDRcIjtcbn1cblxuLmZhLWFwcC1zdG9yZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjM2ZlwiO1xufVxuXG4uZmEtYXBwLXN0b3JlLWlvczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjM3MFwiO1xufVxuXG4uZmEtYXBwZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzNzFcIjtcbn1cblxuLmZhLWFwcGxlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTc5XCI7XG59XG5cbi5mYS1hcHBsZS1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1ZDFcIjtcbn1cblxuLmZhLWFwcGxlLXBheTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjQxNVwiO1xufVxuXG4uZmEtYXJjaGl2ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE4N1wiO1xufVxuXG4uZmEtYXJjaHdheTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjU1N1wiO1xufVxuXG4uZmEtYXJyb3ctYWx0LWNpcmNsZS1kb3duOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMzU4XCI7XG59XG5cbi5mYS1hcnJvdy1hbHQtY2lyY2xlLWxlZnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzNTlcIjtcbn1cblxuLmZhLWFycm93LWFsdC1jaXJjbGUtcmlnaHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzNWFcIjtcbn1cblxuLmZhLWFycm93LWFsdC1jaXJjbGUtdXA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzNWJcIjtcbn1cblxuLmZhLWFycm93LWNpcmNsZS1kb3duOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGFiXCI7XG59XG5cbi5mYS1hcnJvdy1jaXJjbGUtbGVmdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBhOFwiO1xufVxuXG4uZmEtYXJyb3ctY2lyY2xlLXJpZ2h0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGE5XCI7XG59XG5cbi5mYS1hcnJvdy1jaXJjbGUtdXA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwYWFcIjtcbn1cblxuLmZhLWFycm93LWRvd246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNjNcIjtcbn1cblxuLmZhLWFycm93LWxlZnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNjBcIjtcbn1cblxuLmZhLWFycm93LXJpZ2h0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDYxXCI7XG59XG5cbi5mYS1hcnJvdy11cDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA2MlwiO1xufVxuXG4uZmEtYXJyb3dzLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBiMlwiO1xufVxuXG4uZmEtYXJyb3dzLWFsdC1oOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMzM3XCI7XG59XG5cbi5mYS1hcnJvd3MtYWx0LXY6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzMzhcIjtcbn1cblxuLmZhLWFydHN0YXRpb246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY3N2FcIjtcbn1cblxuLmZhLWFzc2lzdGl2ZS1saXN0ZW5pbmctc3lzdGVtczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjJhMlwiO1xufVxuXG4uZmEtYXN0ZXJpc2s6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNjlcIjtcbn1cblxuLmZhLWFzeW1tZXRyaWs6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzNzJcIjtcbn1cblxuLmZhLWF0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWZhXCI7XG59XG5cbi5mYS1hdGxhczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjU1OFwiO1xufVxuXG4uZmEtYXRsYXNzaWFuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNzdiXCI7XG59XG5cbi5mYS1hdG9tOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNWQyXCI7XG59XG5cbi5mYS1hdWRpYmxlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMzczXCI7XG59XG5cbi5mYS1hdWRpby1kZXNjcmlwdGlvbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI5ZVwiO1xufVxuXG4uZmEtYXV0b3ByZWZpeGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNDFjXCI7XG59XG5cbi5mYS1hdmlhbmV4OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMzc0XCI7XG59XG5cbi5mYS1hdmlhdG86YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY0MjFcIjtcbn1cblxuLmZhLWF3YXJkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNTU5XCI7XG59XG5cbi5mYS1hd3M6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzNzVcIjtcbn1cblxuLmZhLWJhYnk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY3N2NcIjtcbn1cblxuLmZhLWJhYnktY2FycmlhZ2U6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY3N2RcIjtcbn1cblxuLmZhLWJhY2tzcGFjZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjU1YVwiO1xufVxuXG4uZmEtYmFja3dhcmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNGFcIjtcbn1cblxuLmZhLWJhY29uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmN2U1XCI7XG59XG5cbi5mYS1iYWN0ZXJpYTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTA1OVwiO1xufVxuXG4uZmEtYmFjdGVyaXVtOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMDVhXCI7XG59XG5cbi5mYS1iYWhhaTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjY2NlwiO1xufVxuXG4uZmEtYmFsYW5jZS1zY2FsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI0ZVwiO1xufVxuXG4uZmEtYmFsYW5jZS1zY2FsZS1sZWZ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNTE1XCI7XG59XG5cbi5mYS1iYWxhbmNlLXNjYWxlLXJpZ2h0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNTE2XCI7XG59XG5cbi5mYS1iYW46YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNWVcIjtcbn1cblxuLmZhLWJhbmQtYWlkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNDYyXCI7XG59XG5cbi5mYS1iYW5kY2FtcDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjJkNVwiO1xufVxuXG4uZmEtYmFyY29kZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAyYVwiO1xufVxuXG4uZmEtYmFyczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBjOVwiO1xufVxuXG4uZmEtYmFzZWJhbGwtYmFsbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjQzM1wiO1xufVxuXG4uZmEtYmFza2V0YmFsbC1iYWxsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNDM0XCI7XG59XG5cbi5mYS1iYXRoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMmNkXCI7XG59XG5cbi5mYS1iYXR0ZXJ5LWVtcHR5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjQ0XCI7XG59XG5cbi5mYS1iYXR0ZXJ5LWZ1bGw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNDBcIjtcbn1cblxuLmZhLWJhdHRlcnktaGFsZjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI0MlwiO1xufVxuXG4uZmEtYmF0dGVyeS1xdWFydGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjQzXCI7XG59XG5cbi5mYS1iYXR0ZXJ5LXRocmVlLXF1YXJ0ZXJzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjQxXCI7XG59XG5cbi5mYS1iYXR0bGUtbmV0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmODM1XCI7XG59XG5cbi5mYS1iZWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMzZcIjtcbn1cblxuLmZhLWJlZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwZmNcIjtcbn1cblxuLmZhLWJlaGFuY2U6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxYjRcIjtcbn1cblxuLmZhLWJlaGFuY2Utc3F1YXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWI1XCI7XG59XG5cbi5mYS1iZWxsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGYzXCI7XG59XG5cbi5mYS1iZWxsLXNsYXNoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWY2XCI7XG59XG5cbi5mYS1iZXppZXItY3VydmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1NWJcIjtcbn1cblxuLmZhLWJpYmxlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNjQ3XCI7XG59XG5cbi5mYS1iaWN5Y2xlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjA2XCI7XG59XG5cbi5mYS1iaWtpbmc6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY4NGFcIjtcbn1cblxuLmZhLWJpbW9iamVjdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjM3OFwiO1xufVxuXG4uZmEtYmlub2N1bGFyczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFlNVwiO1xufVxuXG4uZmEtYmlvaGF6YXJkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNzgwXCI7XG59XG5cbi5mYS1iaXJ0aGRheS1jYWtlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWZkXCI7XG59XG5cbi5mYS1iaXRidWNrZXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxNzFcIjtcbn1cblxuLmZhLWJpdGNvaW46YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzNzlcIjtcbn1cblxuLmZhLWJpdHk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzN2FcIjtcbn1cblxuLmZhLWJsYWNrLXRpZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI3ZVwiO1xufVxuXG4uZmEtYmxhY2tiZXJyeTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjM3YlwiO1xufVxuXG4uZmEtYmxlbmRlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjUxN1wiO1xufVxuXG4uZmEtYmxlbmRlci1waG9uZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjZiNlwiO1xufVxuXG4uZmEtYmxpbmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyOWRcIjtcbn1cblxuLmZhLWJsb2c6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY3ODFcIjtcbn1cblxuLmZhLWJsb2dnZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzN2NcIjtcbn1cblxuLmZhLWJsb2dnZXItYjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjM3ZFwiO1xufVxuXG4uZmEtYmx1ZXRvb3RoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjkzXCI7XG59XG5cbi5mYS1ibHVldG9vdGgtYjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI5NFwiO1xufVxuXG4uZmEtYm9sZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAzMlwiO1xufVxuXG4uZmEtYm9sdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBlN1wiO1xufVxuXG4uZmEtYm9tYjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFlMlwiO1xufVxuXG4uZmEtYm9uZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjVkN1wiO1xufVxuXG4uZmEtYm9uZzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjU1Y1wiO1xufVxuXG4uZmEtYm9vazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAyZFwiO1xufVxuXG4uZmEtYm9vay1kZWFkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNmI3XCI7XG59XG5cbi5mYS1ib29rLW1lZGljYWw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY3ZTZcIjtcbn1cblxuLmZhLWJvb2stb3BlbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjUxOFwiO1xufVxuXG4uZmEtYm9vay1yZWFkZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1ZGFcIjtcbn1cblxuLmZhLWJvb2ttYXJrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDJlXCI7XG59XG5cbi5mYS1ib290c3RyYXA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY4MzZcIjtcbn1cblxuLmZhLWJvcmRlci1hbGw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY4NGNcIjtcbn1cblxuLmZhLWJvcmRlci1ub25lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmODUwXCI7XG59XG5cbi5mYS1ib3JkZXItc3R5bGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY4NTNcIjtcbn1cblxuLmZhLWJvd2xpbmctYmFsbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjQzNlwiO1xufVxuXG4uZmEtYm94OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNDY2XCI7XG59XG5cbi5mYS1ib3gtb3BlbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjQ5ZVwiO1xufVxuXG4uZmEtYm94LXRpc3N1ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTA1YlwiO1xufVxuXG4uZmEtYm94ZXM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY0NjhcIjtcbn1cblxuLmZhLWJyYWlsbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyYTFcIjtcbn1cblxuLmZhLWJyYWluOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNWRjXCI7XG59XG5cbi5mYS1icmVhZC1zbGljZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjdlY1wiO1xufVxuXG4uZmEtYnJpZWZjYXNlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGIxXCI7XG59XG5cbi5mYS1icmllZmNhc2UtbWVkaWNhbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjQ2OVwiO1xufVxuXG4uZmEtYnJvYWRjYXN0LXRvd2VyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNTE5XCI7XG59XG5cbi5mYS1icm9vbTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjUxYVwiO1xufVxuXG4uZmEtYnJ1c2g6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1NWRcIjtcbn1cblxuLmZhLWJ0YzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE1YVwiO1xufVxuXG4uZmEtYnVmZmVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmODM3XCI7XG59XG5cbi5mYS1idWc6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxODhcIjtcbn1cblxuLmZhLWJ1aWxkaW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWFkXCI7XG59XG5cbi5mYS1idWxsaG9ybjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBhMVwiO1xufVxuXG4uZmEtYnVsbHNleWU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxNDBcIjtcbn1cblxuLmZhLWJ1cm46YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY0NmFcIjtcbn1cblxuLmZhLWJ1cm9tb2JlbGV4cGVydGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzN2ZcIjtcbn1cblxuLmZhLWJ1czpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIwN1wiO1xufVxuXG4uZmEtYnVzLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjU1ZVwiO1xufVxuXG4uZmEtYnVzaW5lc3MtdGltZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjY0YVwiO1xufVxuXG4uZmEtYnV5LW4tbGFyZ2U6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY4YTZcIjtcbn1cblxuLmZhLWJ1eXNlbGxhZHM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMGRcIjtcbn1cblxuLmZhLWNhbGN1bGF0b3I6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxZWNcIjtcbn1cblxuLmZhLWNhbGVuZGFyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTMzXCI7XG59XG5cbi5mYS1jYWxlbmRhci1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNzNcIjtcbn1cblxuLmZhLWNhbGVuZGFyLWNoZWNrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjc0XCI7XG59XG5cbi5mYS1jYWxlbmRhci1kYXk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY3ODNcIjtcbn1cblxuLmZhLWNhbGVuZGFyLW1pbnVzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjcyXCI7XG59XG5cbi5mYS1jYWxlbmRhci1wbHVzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjcxXCI7XG59XG5cbi5mYS1jYWxlbmRhci10aW1lczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI3M1wiO1xufVxuXG4uZmEtY2FsZW5kYXItd2VlazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjc4NFwiO1xufVxuXG4uZmEtY2FtZXJhOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDMwXCI7XG59XG5cbi5mYS1jYW1lcmEtcmV0cm86YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwODNcIjtcbn1cblxuLmZhLWNhbXBncm91bmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY2YmJcIjtcbn1cblxuLmZhLWNhbmFkaWFuLW1hcGxlLWxlYWY6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY3ODVcIjtcbn1cblxuLmZhLWNhbmR5LWNhbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY3ODZcIjtcbn1cblxuLmZhLWNhbm5hYmlzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNTVmXCI7XG59XG5cbi5mYS1jYXBzdWxlczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjQ2YlwiO1xufVxuXG4uZmEtY2FyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWI5XCI7XG59XG5cbi5mYS1jYXItYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNWRlXCI7XG59XG5cbi5mYS1jYXItYmF0dGVyeTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjVkZlwiO1xufVxuXG4uZmEtY2FyLWNyYXNoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNWUxXCI7XG59XG5cbi5mYS1jYXItc2lkZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjVlNFwiO1xufVxuXG4uZmEtY2FyYXZhbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjhmZlwiO1xufVxuXG4uZmEtY2FyZXQtZG93bjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBkN1wiO1xufVxuXG4uZmEtY2FyZXQtbGVmdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBkOVwiO1xufVxuXG4uZmEtY2FyZXQtcmlnaHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwZGFcIjtcbn1cblxuLmZhLWNhcmV0LXNxdWFyZS1kb3duOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTUwXCI7XG59XG5cbi5mYS1jYXJldC1zcXVhcmUtbGVmdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE5MVwiO1xufVxuXG4uZmEtY2FyZXQtc3F1YXJlLXJpZ2h0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTUyXCI7XG59XG5cbi5mYS1jYXJldC1zcXVhcmUtdXA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxNTFcIjtcbn1cblxuLmZhLWNhcmV0LXVwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGQ4XCI7XG59XG5cbi5mYS1jYXJyb3Q6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY3ODdcIjtcbn1cblxuLmZhLWNhcnQtYXJyb3ctZG93bjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIxOFwiO1xufVxuXG4uZmEtY2FydC1wbHVzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjE3XCI7XG59XG5cbi5mYS1jYXNoLXJlZ2lzdGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNzg4XCI7XG59XG5cbi5mYS1jYXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY2YmVcIjtcbn1cblxuLmZhLWNjLWFtYXpvbi1wYXk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY0MmRcIjtcbn1cblxuLmZhLWNjLWFtZXg6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxZjNcIjtcbn1cblxuLmZhLWNjLWFwcGxlLXBheTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjQxNlwiO1xufVxuXG4uZmEtY2MtZGluZXJzLWNsdWI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNGNcIjtcbn1cblxuLmZhLWNjLWRpc2NvdmVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWYyXCI7XG59XG5cbi5mYS1jYy1qY2I6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNGJcIjtcbn1cblxuLmZhLWNjLW1hc3RlcmNhcmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxZjFcIjtcbn1cblxuLmZhLWNjLXBheXBhbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFmNFwiO1xufVxuXG4uZmEtY2Mtc3RyaXBlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWY1XCI7XG59XG5cbi5mYS1jYy12aXNhOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWYwXCI7XG59XG5cbi5mYS1jZW50ZXJjb2RlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMzgwXCI7XG59XG5cbi5mYS1jZW50b3M6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY3ODlcIjtcbn1cblxuLmZhLWNlcnRpZmljYXRlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGEzXCI7XG59XG5cbi5mYS1jaGFpcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjZjMFwiO1xufVxuXG4uZmEtY2hhbGtib2FyZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjUxYlwiO1xufVxuXG4uZmEtY2hhbGtib2FyZC10ZWFjaGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNTFjXCI7XG59XG5cbi5mYS1jaGFyZ2luZy1zdGF0aW9uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNWU3XCI7XG59XG5cbi5mYS1jaGFydC1hcmVhOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWZlXCI7XG59XG5cbi5mYS1jaGFydC1iYXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwODBcIjtcbn1cblxuLmZhLWNoYXJ0LWxpbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMDFcIjtcbn1cblxuLmZhLWNoYXJ0LXBpZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIwMFwiO1xufVxuXG4uZmEtY2hlY2s6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMGNcIjtcbn1cblxuLmZhLWNoZWNrLWNpcmNsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA1OFwiO1xufVxuXG4uZmEtY2hlY2stZG91YmxlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNTYwXCI7XG59XG5cbi5mYS1jaGVjay1zcXVhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxNGFcIjtcbn1cblxuLmZhLWNoZWVzZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjdlZlwiO1xufVxuXG4uZmEtY2hlc3M6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY0MzlcIjtcbn1cblxuLmZhLWNoZXNzLWJpc2hvcDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjQzYVwiO1xufVxuXG4uZmEtY2hlc3MtYm9hcmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY0M2NcIjtcbn1cblxuLmZhLWNoZXNzLWtpbmc6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY0M2ZcIjtcbn1cblxuLmZhLWNoZXNzLWtuaWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjQ0MVwiO1xufVxuXG4uZmEtY2hlc3MtcGF3bjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjQ0M1wiO1xufVxuXG4uZmEtY2hlc3MtcXVlZW46YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY0NDVcIjtcbn1cblxuLmZhLWNoZXNzLXJvb2s6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY0NDdcIjtcbn1cblxuLmZhLWNoZXZyb24tY2lyY2xlLWRvd246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxM2FcIjtcbn1cblxuLmZhLWNoZXZyb24tY2lyY2xlLWxlZnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxMzdcIjtcbn1cblxuLmZhLWNoZXZyb24tY2lyY2xlLXJpZ2h0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTM4XCI7XG59XG5cbi5mYS1jaGV2cm9uLWNpcmNsZS11cDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjEzOVwiO1xufVxuXG4uZmEtY2hldnJvbi1kb3duOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDc4XCI7XG59XG5cbi5mYS1jaGV2cm9uLWxlZnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNTNcIjtcbn1cblxuLmZhLWNoZXZyb24tcmlnaHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNTRcIjtcbn1cblxuLmZhLWNoZXZyb24tdXA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNzdcIjtcbn1cblxuLmZhLWNoaWxkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWFlXCI7XG59XG5cbi5mYS1jaHJvbWU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNjhcIjtcbn1cblxuLmZhLWNocm9tZWNhc3Q6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY4MzhcIjtcbn1cblxuLmZhLWNodXJjaDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjUxZFwiO1xufVxuXG4uZmEtY2lyY2xlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTExXCI7XG59XG5cbi5mYS1jaXJjbGUtbm90Y2g6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxY2VcIjtcbn1cblxuLmZhLWNpdHk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY2NGZcIjtcbn1cblxuLmZhLWNsaW5pYy1tZWRpY2FsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmN2YyXCI7XG59XG5cbi5mYS1jbGlwYm9hcmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzMjhcIjtcbn1cblxuLmZhLWNsaXBib2FyZC1jaGVjazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjQ2Y1wiO1xufVxuXG4uZmEtY2xpcGJvYXJkLWxpc3Q6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY0NmRcIjtcbn1cblxuLmZhLWNsb2NrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDE3XCI7XG59XG5cbi5mYS1jbG9uZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI0ZFwiO1xufVxuXG4uZmEtY2xvc2VkLWNhcHRpb25pbmc6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMGFcIjtcbn1cblxuLmZhLWNsb3VkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGMyXCI7XG59XG5cbi5mYS1jbG91ZC1kb3dubG9hZC1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzODFcIjtcbn1cblxuLmZhLWNsb3VkLW1lYXRiYWxsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNzNiXCI7XG59XG5cbi5mYS1jbG91ZC1tb29uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNmMzXCI7XG59XG5cbi5mYS1jbG91ZC1tb29uLXJhaW46YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY3M2NcIjtcbn1cblxuLmZhLWNsb3VkLXJhaW46YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY3M2RcIjtcbn1cblxuLmZhLWNsb3VkLXNob3dlcnMtaGVhdnk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY3NDBcIjtcbn1cblxuLmZhLWNsb3VkLXN1bjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjZjNFwiO1xufVxuXG4uZmEtY2xvdWQtc3VuLXJhaW46YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY3NDNcIjtcbn1cblxuLmZhLWNsb3VkLXVwbG9hZC1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzODJcIjtcbn1cblxuLmZhLWNsb3Vkc2NhbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzODNcIjtcbn1cblxuLmZhLWNsb3Vkc21pdGg6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzODRcIjtcbn1cblxuLmZhLWNsb3VkdmVyc2lmeTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjM4NVwiO1xufVxuXG4uZmEtY29ja3RhaWw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1NjFcIjtcbn1cblxuLmZhLWNvZGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxMjFcIjtcbn1cblxuLmZhLWNvZGUtYnJhbmNoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTI2XCI7XG59XG5cbi5mYS1jb2RlcGVuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWNiXCI7XG59XG5cbi5mYS1jb2RpZXBpZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI4NFwiO1xufVxuXG4uZmEtY29mZmVlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGY0XCI7XG59XG5cbi5mYS1jb2c6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMTNcIjtcbn1cblxuLmZhLWNvZ3M6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwODVcIjtcbn1cblxuLmZhLWNvaW5zOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNTFlXCI7XG59XG5cbi5mYS1jb2x1bW5zOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGRiXCI7XG59XG5cbi5mYS1jb21tZW50OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDc1XCI7XG59XG5cbi5mYS1jb21tZW50LWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI3YVwiO1xufVxuXG4uZmEtY29tbWVudC1kb2xsYXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY2NTFcIjtcbn1cblxuLmZhLWNvbW1lbnQtZG90czpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjRhZFwiO1xufVxuXG4uZmEtY29tbWVudC1tZWRpY2FsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmN2Y1XCI7XG59XG5cbi5mYS1jb21tZW50LXNsYXNoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNGIzXCI7XG59XG5cbi5mYS1jb21tZW50czpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA4NlwiO1xufVxuXG4uZmEtY29tbWVudHMtZG9sbGFyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNjUzXCI7XG59XG5cbi5mYS1jb21wYWN0LWRpc2M6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1MWZcIjtcbn1cblxuLmZhLWNvbXBhc3M6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxNGVcIjtcbn1cblxuLmZhLWNvbXByZXNzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDY2XCI7XG59XG5cbi5mYS1jb21wcmVzcy1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY0MjJcIjtcbn1cblxuLmZhLWNvbXByZXNzLWFycm93cy1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY3OGNcIjtcbn1cblxuLmZhLWNvbmNpZXJnZS1iZWxsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNTYyXCI7XG59XG5cbi5mYS1jb25mbHVlbmNlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNzhkXCI7XG59XG5cbi5mYS1jb25uZWN0ZGV2ZWxvcDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIwZVwiO1xufVxuXG4uZmEtY29udGFvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjZkXCI7XG59XG5cbi5mYS1jb29raWU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1NjNcIjtcbn1cblxuLmZhLWNvb2tpZS1iaXRlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNTY0XCI7XG59XG5cbi5mYS1jb3B5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGM1XCI7XG59XG5cbi5mYS1jb3B5cmlnaHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxZjlcIjtcbn1cblxuLmZhLWNvdHRvbi1idXJlYXU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY4OWVcIjtcbn1cblxuLmZhLWNvdWNoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNGI4XCI7XG59XG5cbi5mYS1jcGFuZWw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzODhcIjtcbn1cblxuLmZhLWNyZWF0aXZlLWNvbW1vbnM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNWVcIjtcbn1cblxuLmZhLWNyZWF0aXZlLWNvbW1vbnMtYnk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY0ZTdcIjtcbn1cblxuLmZhLWNyZWF0aXZlLWNvbW1vbnMtbmM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY0ZThcIjtcbn1cblxuLmZhLWNyZWF0aXZlLWNvbW1vbnMtbmMtZXU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY0ZTlcIjtcbn1cblxuLmZhLWNyZWF0aXZlLWNvbW1vbnMtbmMtanA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY0ZWFcIjtcbn1cblxuLmZhLWNyZWF0aXZlLWNvbW1vbnMtbmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY0ZWJcIjtcbn1cblxuLmZhLWNyZWF0aXZlLWNvbW1vbnMtcGQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY0ZWNcIjtcbn1cblxuLmZhLWNyZWF0aXZlLWNvbW1vbnMtcGQtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNGVkXCI7XG59XG5cbi5mYS1jcmVhdGl2ZS1jb21tb25zLXJlbWl4OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNGVlXCI7XG59XG5cbi5mYS1jcmVhdGl2ZS1jb21tb25zLXNhOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNGVmXCI7XG59XG5cbi5mYS1jcmVhdGl2ZS1jb21tb25zLXNhbXBsaW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNGYwXCI7XG59XG5cbi5mYS1jcmVhdGl2ZS1jb21tb25zLXNhbXBsaW5nLXBsdXM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY0ZjFcIjtcbn1cblxuLmZhLWNyZWF0aXZlLWNvbW1vbnMtc2hhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY0ZjJcIjtcbn1cblxuLmZhLWNyZWF0aXZlLWNvbW1vbnMtemVybzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjRmM1wiO1xufVxuXG4uZmEtY3JlZGl0LWNhcmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwOWRcIjtcbn1cblxuLmZhLWNyaXRpY2FsLXJvbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY2YzlcIjtcbn1cblxuLmZhLWNyb3A6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxMjVcIjtcbn1cblxuLmZhLWNyb3AtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNTY1XCI7XG59XG5cbi5mYS1jcm9zczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjY1NFwiO1xufVxuXG4uZmEtY3Jvc3NoYWlyczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA1YlwiO1xufVxuXG4uZmEtY3JvdzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjUyMFwiO1xufVxuXG4uZmEtY3Jvd246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1MjFcIjtcbn1cblxuLmZhLWNydXRjaDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjdmN1wiO1xufVxuXG4uZmEtY3NzMzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjEzY1wiO1xufVxuXG4uZmEtY3NzMy1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzOGJcIjtcbn1cblxuLmZhLWN1YmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxYjJcIjtcbn1cblxuLmZhLWN1YmVzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWIzXCI7XG59XG5cbi5mYS1jdXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwYzRcIjtcbn1cblxuLmZhLWN1dHRsZWZpc2g6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzOGNcIjtcbn1cblxuLmZhLWQtYW5kLWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzOGRcIjtcbn1cblxuLmZhLWQtYW5kLWQtYmV5b25kOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNmNhXCI7XG59XG5cbi5mYS1kYWlseW1vdGlvbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTA1MlwiO1xufVxuXG4uZmEtZGFzaGN1YmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMTBcIjtcbn1cblxuLmZhLWRhdGFiYXNlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWMwXCI7XG59XG5cbi5mYS1kZWFmOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMmE0XCI7XG59XG5cbi5mYS1kZWV6ZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUwNzdcIjtcbn1cblxuLmZhLWRlbGljaW91czpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFhNVwiO1xufVxuXG4uZmEtZGVtb2NyYXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY3NDdcIjtcbn1cblxuLmZhLWRlcGxveWRvZzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjM4ZVwiO1xufVxuXG4uZmEtZGVza3BybzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjM4ZlwiO1xufVxuXG4uZmEtZGVza3RvcDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjEwOFwiO1xufVxuXG4uZmEtZGV2OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNmNjXCI7XG59XG5cbi5mYS1kZXZpYW50YXJ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWJkXCI7XG59XG5cbi5mYS1kaGFybWFjaGFrcmE6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY2NTVcIjtcbn1cblxuLmZhLWRobDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjc5MFwiO1xufVxuXG4uZmEtZGlhZ25vc2VzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNDcwXCI7XG59XG5cbi5mYS1kaWFzcG9yYTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjc5MVwiO1xufVxuXG4uZmEtZGljZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjUyMlwiO1xufVxuXG4uZmEtZGljZS1kMjA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY2Y2ZcIjtcbn1cblxuLmZhLWRpY2UtZDY6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY2ZDFcIjtcbn1cblxuLmZhLWRpY2UtZml2ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjUyM1wiO1xufVxuXG4uZmEtZGljZS1mb3VyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNTI0XCI7XG59XG5cbi5mYS1kaWNlLW9uZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjUyNVwiO1xufVxuXG4uZmEtZGljZS1zaXg6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1MjZcIjtcbn1cblxuLmZhLWRpY2UtdGhyZWU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1MjdcIjtcbn1cblxuLmZhLWRpY2UtdHdvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNTI4XCI7XG59XG5cbi5mYS1kaWdnOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWE2XCI7XG59XG5cbi5mYS1kaWdpdGFsLW9jZWFuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMzkxXCI7XG59XG5cbi5mYS1kaWdpdGFsLXRhY2hvZ3JhcGg6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1NjZcIjtcbn1cblxuLmZhLWRpcmVjdGlvbnM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1ZWJcIjtcbn1cblxuLmZhLWRpc2NvcmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzOTJcIjtcbn1cblxuLmZhLWRpc2NvdXJzZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjM5M1wiO1xufVxuXG4uZmEtZGlzZWFzZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjdmYVwiO1xufVxuXG4uZmEtZGl2aWRlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNTI5XCI7XG59XG5cbi5mYS1kaXp6eTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjU2N1wiO1xufVxuXG4uZmEtZG5hOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNDcxXCI7XG59XG5cbi5mYS1kb2NodWI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzOTRcIjtcbn1cblxuLmZhLWRvY2tlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjM5NVwiO1xufVxuXG4uZmEtZG9nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNmQzXCI7XG59XG5cbi5mYS1kb2xsYXItc2lnbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE1NVwiO1xufVxuXG4uZmEtZG9sbHk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY0NzJcIjtcbn1cblxuLmZhLWRvbGx5LWZsYXRiZWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY0NzRcIjtcbn1cblxuLmZhLWRvbmF0ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjRiOVwiO1xufVxuXG4uZmEtZG9vci1jbG9zZWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1MmFcIjtcbn1cblxuLmZhLWRvb3Itb3BlbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjUyYlwiO1xufVxuXG4uZmEtZG90LWNpcmNsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE5MlwiO1xufVxuXG4uZmEtZG92ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjRiYVwiO1xufVxuXG4uZmEtZG93bmxvYWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMTlcIjtcbn1cblxuLmZhLWRyYWZ0MmRpZ2l0YWw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzOTZcIjtcbn1cblxuLmZhLWRyYWZ0aW5nLWNvbXBhc3M6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1NjhcIjtcbn1cblxuLmZhLWRyYWdvbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjZkNVwiO1xufVxuXG4uZmEtZHJhdy1wb2x5Z29uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNWVlXCI7XG59XG5cbi5mYS1kcmliYmJsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE3ZFwiO1xufVxuXG4uZmEtZHJpYmJibGUtc3F1YXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMzk3XCI7XG59XG5cbi5mYS1kcm9wYm94OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTZiXCI7XG59XG5cbi5mYS1kcnVtOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNTY5XCI7XG59XG5cbi5mYS1kcnVtLXN0ZWVscGFuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNTZhXCI7XG59XG5cbi5mYS1kcnVtc3RpY2stYml0ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjZkN1wiO1xufVxuXG4uZmEtZHJ1cGFsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWE5XCI7XG59XG5cbi5mYS1kdW1iYmVsbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjQ0YlwiO1xufVxuXG4uZmEtZHVtcHN0ZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY3OTNcIjtcbn1cblxuLmZhLWR1bXBzdGVyLWZpcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY3OTRcIjtcbn1cblxuLmZhLWR1bmdlb246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY2ZDlcIjtcbn1cblxuLmZhLWR5YWxvZzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjM5OVwiO1xufVxuXG4uZmEtZWFybHliaXJkczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjM5YVwiO1xufVxuXG4uZmEtZWJheTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjRmNFwiO1xufVxuXG4uZmEtZWRnZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI4MlwiO1xufVxuXG4uZmEtZWRnZS1sZWdhY3k6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUwNzhcIjtcbn1cblxuLmZhLWVkaXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNDRcIjtcbn1cblxuLmZhLWVnZzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjdmYlwiO1xufVxuXG4uZmEtZWplY3Q6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNTJcIjtcbn1cblxuLmZhLWVsZW1lbnRvcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjQzMFwiO1xufVxuXG4uZmEtZWxsaXBzaXMtaDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE0MVwiO1xufVxuXG4uZmEtZWxsaXBzaXMtdjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE0MlwiO1xufVxuXG4uZmEtZWxsbzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjVmMVwiO1xufVxuXG4uZmEtZW1iZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY0MjNcIjtcbn1cblxuLmZhLWVtcGlyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFkMVwiO1xufVxuXG4uZmEtZW52ZWxvcGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwZTBcIjtcbn1cblxuLmZhLWVudmVsb3BlLW9wZW46YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyYjZcIjtcbn1cblxuLmZhLWVudmVsb3BlLW9wZW4tdGV4dDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjY1OFwiO1xufVxuXG4uZmEtZW52ZWxvcGUtc3F1YXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTk5XCI7XG59XG5cbi5mYS1lbnZpcmE6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyOTlcIjtcbn1cblxuLmZhLWVxdWFsczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjUyY1wiO1xufVxuXG4uZmEtZXJhc2VyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTJkXCI7XG59XG5cbi5mYS1lcmxhbmc6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzOWRcIjtcbn1cblxuLmZhLWV0aGVyZXVtOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNDJlXCI7XG59XG5cbi5mYS1ldGhlcm5ldDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjc5NlwiO1xufVxuXG4uZmEtZXRzeTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjJkN1wiO1xufVxuXG4uZmEtZXVyby1zaWduOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTUzXCI7XG59XG5cbi5mYS1ldmVybm90ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjgzOVwiO1xufVxuXG4uZmEtZXhjaGFuZ2UtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMzYyXCI7XG59XG5cbi5mYS1leGNsYW1hdGlvbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjEyYVwiO1xufVxuXG4uZmEtZXhjbGFtYXRpb24tY2lyY2xlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDZhXCI7XG59XG5cbi5mYS1leGNsYW1hdGlvbi10cmlhbmdsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA3MVwiO1xufVxuXG4uZmEtZXhwYW5kOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDY1XCI7XG59XG5cbi5mYS1leHBhbmQtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNDI0XCI7XG59XG5cbi5mYS1leHBhbmQtYXJyb3dzLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjMxZVwiO1xufVxuXG4uZmEtZXhwZWRpdGVkc3NsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjNlXCI7XG59XG5cbi5mYS1leHRlcm5hbC1saW5rLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjM1ZFwiO1xufVxuXG4uZmEtZXh0ZXJuYWwtbGluay1zcXVhcmUtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMzYwXCI7XG59XG5cbi5mYS1leWU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNmVcIjtcbn1cblxuLmZhLWV5ZS1kcm9wcGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWZiXCI7XG59XG5cbi5mYS1leWUtc2xhc2g6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNzBcIjtcbn1cblxuLmZhLWZhY2Vib29rOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDlhXCI7XG59XG5cbi5mYS1mYWNlYm9vay1mOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMzllXCI7XG59XG5cbi5mYS1mYWNlYm9vay1tZXNzZW5nZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzOWZcIjtcbn1cblxuLmZhLWZhY2Vib29rLXNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA4MlwiO1xufVxuXG4uZmEtZmFuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmODYzXCI7XG59XG5cbi5mYS1mYW50YXN5LWZsaWdodC1nYW1lczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjZkY1wiO1xufVxuXG4uZmEtZmFzdC1iYWNrd2FyZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA0OVwiO1xufVxuXG4uZmEtZmFzdC1mb3J3YXJkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDUwXCI7XG59XG5cbi5mYS1mYXVjZXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUwMDVcIjtcbn1cblxuLmZhLWZheDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFhY1wiO1xufVxuXG4uZmEtZmVhdGhlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjUyZFwiO1xufVxuXG4uZmEtZmVhdGhlci1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1NmJcIjtcbn1cblxuLmZhLWZlZGV4OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNzk3XCI7XG59XG5cbi5mYS1mZWRvcmE6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY3OThcIjtcbn1cblxuLmZhLWZlbWFsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE4MlwiO1xufVxuXG4uZmEtZmlnaHRlci1qZXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwZmJcIjtcbn1cblxuLmZhLWZpZ21hOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNzk5XCI7XG59XG5cbi5mYS1maWxlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTViXCI7XG59XG5cbi5mYS1maWxlLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE1Y1wiO1xufVxuXG4uZmEtZmlsZS1hcmNoaXZlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWM2XCI7XG59XG5cbi5mYS1maWxlLWF1ZGlvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWM3XCI7XG59XG5cbi5mYS1maWxlLWNvZGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxYzlcIjtcbn1cblxuLmZhLWZpbGUtY29udHJhY3Q6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1NmNcIjtcbn1cblxuLmZhLWZpbGUtY3N2OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNmRkXCI7XG59XG5cbi5mYS1maWxlLWRvd25sb2FkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNTZkXCI7XG59XG5cbi5mYS1maWxlLWV4Y2VsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWMzXCI7XG59XG5cbi5mYS1maWxlLWV4cG9ydDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjU2ZVwiO1xufVxuXG4uZmEtZmlsZS1pbWFnZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFjNVwiO1xufVxuXG4uZmEtZmlsZS1pbXBvcnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1NmZcIjtcbn1cblxuLmZhLWZpbGUtaW52b2ljZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjU3MFwiO1xufVxuXG4uZmEtZmlsZS1pbnZvaWNlLWRvbGxhcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjU3MVwiO1xufVxuXG4uZmEtZmlsZS1tZWRpY2FsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNDc3XCI7XG59XG5cbi5mYS1maWxlLW1lZGljYWwtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNDc4XCI7XG59XG5cbi5mYS1maWxlLXBkZjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFjMVwiO1xufVxuXG4uZmEtZmlsZS1wb3dlcnBvaW50OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWM0XCI7XG59XG5cbi5mYS1maWxlLXByZXNjcmlwdGlvbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjU3MlwiO1xufVxuXG4uZmEtZmlsZS1zaWduYXR1cmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1NzNcIjtcbn1cblxuLmZhLWZpbGUtdXBsb2FkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNTc0XCI7XG59XG5cbi5mYS1maWxlLXZpZGVvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWM4XCI7XG59XG5cbi5mYS1maWxlLXdvcmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxYzJcIjtcbn1cblxuLmZhLWZpbGw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1NzVcIjtcbn1cblxuLmZhLWZpbGwtZHJpcDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjU3NlwiO1xufVxuXG4uZmEtZmlsbTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAwOFwiO1xufVxuXG4uZmEtZmlsdGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGIwXCI7XG59XG5cbi5mYS1maW5nZXJwcmludDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjU3N1wiO1xufVxuXG4uZmEtZmlyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA2ZFwiO1xufVxuXG4uZmEtZmlyZS1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY3ZTRcIjtcbn1cblxuLmZhLWZpcmUtZXh0aW5ndWlzaGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTM0XCI7XG59XG5cbi5mYS1maXJlZm94OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjY5XCI7XG59XG5cbi5mYS1maXJlZm94LWJyb3dzZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUwMDdcIjtcbn1cblxuLmZhLWZpcnN0LWFpZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjQ3OVwiO1xufVxuXG4uZmEtZmlyc3Qtb3JkZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyYjBcIjtcbn1cblxuLmZhLWZpcnN0LW9yZGVyLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjUwYVwiO1xufVxuXG4uZmEtZmlyc3RkcmFmdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjNhMVwiO1xufVxuXG4uZmEtZmlzaDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjU3OFwiO1xufVxuXG4uZmEtZmlzdC1yYWlzZWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY2ZGVcIjtcbn1cblxuLmZhLWZsYWc6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMjRcIjtcbn1cblxuLmZhLWZsYWctY2hlY2tlcmVkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTFlXCI7XG59XG5cbi5mYS1mbGFnLXVzYTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjc0ZFwiO1xufVxuXG4uZmEtZmxhc2s6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwYzNcIjtcbn1cblxuLmZhLWZsaWNrcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE2ZVwiO1xufVxuXG4uZmEtZmxpcGJvYXJkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNDRkXCI7XG59XG5cbi5mYS1mbHVzaGVkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNTc5XCI7XG59XG5cbi5mYS1mbHk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY0MTdcIjtcbn1cblxuLmZhLWZvbGRlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA3YlwiO1xufVxuXG4uZmEtZm9sZGVyLW1pbnVzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNjVkXCI7XG59XG5cbi5mYS1mb2xkZXItb3BlbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA3Y1wiO1xufVxuXG4uZmEtZm9sZGVyLXBsdXM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY2NWVcIjtcbn1cblxuLmZhLWZvbnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMzFcIjtcbn1cblxuLmZhLWZvbnQtYXdlc29tZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjJiNFwiO1xufVxuXG4uZmEtZm9udC1hd2Vzb21lLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjM1Y1wiO1xufVxuXG4uZmEtZm9udC1hd2Vzb21lLWZsYWc6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY0MjVcIjtcbn1cblxuLmZhLWZvbnQtYXdlc29tZS1sb2dvLWZ1bGw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY0ZTZcIjtcbn1cblxuLmZhLWZvbnRpY29uczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI4MFwiO1xufVxuXG4uZmEtZm9udGljb25zLWZpOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmM2EyXCI7XG59XG5cbi5mYS1mb290YmFsbC1iYWxsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNDRlXCI7XG59XG5cbi5mYS1mb3J0LWF3ZXNvbWU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyODZcIjtcbn1cblxuLmZhLWZvcnQtYXdlc29tZS1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzYTNcIjtcbn1cblxuLmZhLWZvcnVtYmVlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjExXCI7XG59XG5cbi5mYS1mb3J3YXJkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDRlXCI7XG59XG5cbi5mYS1mb3Vyc3F1YXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTgwXCI7XG59XG5cbi5mYS1mcmVlLWNvZGUtY2FtcDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjJjNVwiO1xufVxuXG4uZmEtZnJlZWJzZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjNhNFwiO1xufVxuXG4uZmEtZnJvZzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjUyZVwiO1xufVxuXG4uZmEtZnJvd246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxMTlcIjtcbn1cblxuLmZhLWZyb3duLW9wZW46YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1N2FcIjtcbn1cblxuLmZhLWZ1bGNydW06YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1MGJcIjtcbn1cblxuLmZhLWZ1bm5lbC1kb2xsYXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY2NjJcIjtcbn1cblxuLmZhLWZ1dGJvbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFlM1wiO1xufVxuXG4uZmEtZ2FsYWN0aWMtcmVwdWJsaWM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1MGNcIjtcbn1cblxuLmZhLWdhbGFjdGljLXNlbmF0ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjUwZFwiO1xufVxuXG4uZmEtZ2FtZXBhZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjExYlwiO1xufVxuXG4uZmEtZ2FzLXB1bXA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1MmZcIjtcbn1cblxuLmZhLWdhdmVsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGUzXCI7XG59XG5cbi5mYS1nZW06YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzYTVcIjtcbn1cblxuLmZhLWdlbmRlcmxlc3M6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMmRcIjtcbn1cblxuLmZhLWdldC1wb2NrZXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNjVcIjtcbn1cblxuLmZhLWdnOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjYwXCI7XG59XG5cbi5mYS1nZy1jaXJjbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNjFcIjtcbn1cblxuLmZhLWdob3N0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNmUyXCI7XG59XG5cbi5mYS1naWZ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDZiXCI7XG59XG5cbi5mYS1naWZ0czpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjc5Y1wiO1xufVxuXG4uZmEtZ2l0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWQzXCI7XG59XG5cbi5mYS1naXQtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmODQxXCI7XG59XG5cbi5mYS1naXQtc3F1YXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWQyXCI7XG59XG5cbi5mYS1naXRodWI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwOWJcIjtcbn1cblxuLmZhLWdpdGh1Yi1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxMTNcIjtcbn1cblxuLmZhLWdpdGh1Yi1zcXVhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwOTJcIjtcbn1cblxuLmZhLWdpdGtyYWtlbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjNhNlwiO1xufVxuXG4uZmEtZ2l0bGFiOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjk2XCI7XG59XG5cbi5mYS1naXR0ZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY0MjZcIjtcbn1cblxuLmZhLWdsYXNzLWNoZWVyczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjc5ZlwiO1xufVxuXG4uZmEtZ2xhc3MtbWFydGluaTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAwMFwiO1xufVxuXG4uZmEtZ2xhc3MtbWFydGluaS1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1N2JcIjtcbn1cblxuLmZhLWdsYXNzLXdoaXNrZXk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY3YTBcIjtcbn1cblxuLmZhLWdsYXNzZXM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1MzBcIjtcbn1cblxuLmZhLWdsaWRlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMmE1XCI7XG59XG5cbi5mYS1nbGlkZS1nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMmE2XCI7XG59XG5cbi5mYS1nbG9iZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBhY1wiO1xufVxuXG4uZmEtZ2xvYmUtYWZyaWNhOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNTdjXCI7XG59XG5cbi5mYS1nbG9iZS1hbWVyaWNhczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjU3ZFwiO1xufVxuXG4uZmEtZ2xvYmUtYXNpYTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjU3ZVwiO1xufVxuXG4uZmEtZ2xvYmUtZXVyb3BlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmN2EyXCI7XG59XG5cbi5mYS1nb2ZvcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzYTdcIjtcbn1cblxuLmZhLWdvbGYtYmFsbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjQ1MFwiO1xufVxuXG4uZmEtZ29vZHJlYWRzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmM2E4XCI7XG59XG5cbi5mYS1nb29kcmVhZHMtZzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjNhOVwiO1xufVxuXG4uZmEtZ29vZ2xlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWEwXCI7XG59XG5cbi5mYS1nb29nbGUtZHJpdmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzYWFcIjtcbn1cblxuLmZhLWdvb2dsZS1wYXk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUwNzlcIjtcbn1cblxuLmZhLWdvb2dsZS1wbGF5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmM2FiXCI7XG59XG5cbi5mYS1nb29nbGUtcGx1czpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjJiM1wiO1xufVxuXG4uZmEtZ29vZ2xlLXBsdXMtZzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBkNVwiO1xufVxuXG4uZmEtZ29vZ2xlLXBsdXMtc3F1YXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGQ0XCI7XG59XG5cbi5mYS1nb29nbGUtd2FsbGV0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWVlXCI7XG59XG5cbi5mYS1nb3B1cmFtOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNjY0XCI7XG59XG5cbi5mYS1ncmFkdWF0aW9uLWNhcDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE5ZFwiO1xufVxuXG4uZmEtZ3JhdGlwYXk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxODRcIjtcbn1cblxuLmZhLWdyYXY6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyZDZcIjtcbn1cblxuLmZhLWdyZWF0ZXItdGhhbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjUzMVwiO1xufVxuXG4uZmEtZ3JlYXRlci10aGFuLWVxdWFsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNTMyXCI7XG59XG5cbi5mYS1ncmltYWNlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNTdmXCI7XG59XG5cbi5mYS1ncmluOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNTgwXCI7XG59XG5cbi5mYS1ncmluLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjU4MVwiO1xufVxuXG4uZmEtZ3Jpbi1iZWFtOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNTgyXCI7XG59XG5cbi5mYS1ncmluLWJlYW0tc3dlYXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1ODNcIjtcbn1cblxuLmZhLWdyaW4taGVhcnRzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNTg0XCI7XG59XG5cbi5mYS1ncmluLXNxdWludDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjU4NVwiO1xufVxuXG4uZmEtZ3Jpbi1zcXVpbnQtdGVhcnM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1ODZcIjtcbn1cblxuLmZhLWdyaW4tc3RhcnM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1ODdcIjtcbn1cblxuLmZhLWdyaW4tdGVhcnM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1ODhcIjtcbn1cblxuLmZhLWdyaW4tdG9uZ3VlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNTg5XCI7XG59XG5cbi5mYS1ncmluLXRvbmd1ZS1zcXVpbnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1OGFcIjtcbn1cblxuLmZhLWdyaW4tdG9uZ3VlLXdpbms6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1OGJcIjtcbn1cblxuLmZhLWdyaW4td2luazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjU4Y1wiO1xufVxuXG4uZmEtZ3JpcC1ob3Jpem9udGFsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNThkXCI7XG59XG5cbi5mYS1ncmlwLWxpbmVzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmN2E0XCI7XG59XG5cbi5mYS1ncmlwLWxpbmVzLXZlcnRpY2FsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmN2E1XCI7XG59XG5cbi5mYS1ncmlwLXZlcnRpY2FsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNThlXCI7XG59XG5cbi5mYS1ncmlwZmlyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjNhY1wiO1xufVxuXG4uZmEtZ3J1bnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzYWRcIjtcbn1cblxuLmZhLWd1aXRhcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjdhNlwiO1xufVxuXG4uZmEtZ3VscDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjNhZVwiO1xufVxuXG4uZmEtaC1zcXVhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwZmRcIjtcbn1cblxuLmZhLWhhY2tlci1uZXdzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWQ0XCI7XG59XG5cbi5mYS1oYWNrZXItbmV3cy1zcXVhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzYWZcIjtcbn1cblxuLmZhLWhhY2tlcnJhbms6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1ZjdcIjtcbn1cblxuLmZhLWhhbWJ1cmdlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjgwNVwiO1xufVxuXG4uZmEtaGFtbWVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNmUzXCI7XG59XG5cbi5mYS1oYW1zYTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjY2NVwiO1xufVxuXG4uZmEtaGFuZC1ob2xkaW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNGJkXCI7XG59XG5cbi5mYS1oYW5kLWhvbGRpbmctaGVhcnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY0YmVcIjtcbn1cblxuLmZhLWhhbmQtaG9sZGluZy1tZWRpY2FsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMDVjXCI7XG59XG5cbi5mYS1oYW5kLWhvbGRpbmctdXNkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNGMwXCI7XG59XG5cbi5mYS1oYW5kLWhvbGRpbmctd2F0ZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY0YzFcIjtcbn1cblxuLmZhLWhhbmQtbGl6YXJkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjU4XCI7XG59XG5cbi5mYS1oYW5kLW1pZGRsZS1maW5nZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY4MDZcIjtcbn1cblxuLmZhLWhhbmQtcGFwZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNTZcIjtcbn1cblxuLmZhLWhhbmQtcGVhY2U6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNWJcIjtcbn1cblxuLmZhLWhhbmQtcG9pbnQtZG93bjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBhN1wiO1xufVxuXG4uZmEtaGFuZC1wb2ludC1sZWZ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGE1XCI7XG59XG5cbi5mYS1oYW5kLXBvaW50LXJpZ2h0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGE0XCI7XG59XG5cbi5mYS1oYW5kLXBvaW50LXVwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGE2XCI7XG59XG5cbi5mYS1oYW5kLXBvaW50ZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNWFcIjtcbn1cblxuLmZhLWhhbmQtcm9jazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI1NVwiO1xufVxuXG4uZmEtaGFuZC1zY2lzc29yczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI1N1wiO1xufVxuXG4uZmEtaGFuZC1zcGFya2xlczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTA1ZFwiO1xufVxuXG4uZmEtaGFuZC1zcG9jazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI1OVwiO1xufVxuXG4uZmEtaGFuZHM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY0YzJcIjtcbn1cblxuLmZhLWhhbmRzLWhlbHBpbmc6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY0YzRcIjtcbn1cblxuLmZhLWhhbmRzLXdhc2g6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUwNWVcIjtcbn1cblxuLmZhLWhhbmRzaGFrZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjJiNVwiO1xufVxuXG4uZmEtaGFuZHNoYWtlLWFsdC1zbGFzaDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTA1ZlwiO1xufVxuXG4uZmEtaGFuZHNoYWtlLXNsYXNoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMDYwXCI7XG59XG5cbi5mYS1oYW51a2lhaDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjZlNlwiO1xufVxuXG4uZmEtaGFyZC1oYXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY4MDdcIjtcbn1cblxuLmZhLWhhc2h0YWc6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyOTJcIjtcbn1cblxuLmZhLWhhdC1jb3dib3k6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY4YzBcIjtcbn1cblxuLmZhLWhhdC1jb3dib3ktc2lkZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjhjMVwiO1xufVxuXG4uZmEtaGF0LXdpemFyZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjZlOFwiO1xufVxuXG4uZmEtaGRkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGEwXCI7XG59XG5cbi5mYS1oZWFkLXNpZGUtY291Z2g6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUwNjFcIjtcbn1cblxuLmZhLWhlYWQtc2lkZS1jb3VnaC1zbGFzaDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTA2MlwiO1xufVxuXG4uZmEtaGVhZC1zaWRlLW1hc2s6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUwNjNcIjtcbn1cblxuLmZhLWhlYWQtc2lkZS12aXJ1czpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTA2NFwiO1xufVxuXG4uZmEtaGVhZGluZzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFkY1wiO1xufVxuXG4uZmEtaGVhZHBob25lczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAyNVwiO1xufVxuXG4uZmEtaGVhZHBob25lcy1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1OGZcIjtcbn1cblxuLmZhLWhlYWRzZXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1OTBcIjtcbn1cblxuLmZhLWhlYXJ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDA0XCI7XG59XG5cbi5mYS1oZWFydC1icm9rZW46YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY3YTlcIjtcbn1cblxuLmZhLWhlYXJ0YmVhdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIxZVwiO1xufVxuXG4uZmEtaGVsaWNvcHRlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjUzM1wiO1xufVxuXG4uZmEtaGlnaGxpZ2h0ZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1OTFcIjtcbn1cblxuLmZhLWhpa2luZzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjZlY1wiO1xufVxuXG4uZmEtaGlwcG86YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY2ZWRcIjtcbn1cblxuLmZhLWhpcHM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY0NTJcIjtcbn1cblxuLmZhLWhpcmUtYS1oZWxwZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzYjBcIjtcbn1cblxuLmZhLWhpc3Rvcnk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxZGFcIjtcbn1cblxuLmZhLWhvY2tleS1wdWNrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNDUzXCI7XG59XG5cbi5mYS1ob2xseS1iZXJyeTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjdhYVwiO1xufVxuXG4uZmEtaG9tZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAxNVwiO1xufVxuXG4uZmEtaG9vbGk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY0MjdcIjtcbn1cblxuLmZhLWhvcm5iaWxsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNTkyXCI7XG59XG5cbi5mYS1ob3JzZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjZmMFwiO1xufVxuXG4uZmEtaG9yc2UtaGVhZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjdhYlwiO1xufVxuXG4uZmEtaG9zcGl0YWw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwZjhcIjtcbn1cblxuLmZhLWhvc3BpdGFsLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjQ3ZFwiO1xufVxuXG4uZmEtaG9zcGl0YWwtc3ltYm9sOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNDdlXCI7XG59XG5cbi5mYS1ob3NwaXRhbC11c2VyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmODBkXCI7XG59XG5cbi5mYS1ob3QtdHViOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNTkzXCI7XG59XG5cbi5mYS1ob3Rkb2c6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY4MGZcIjtcbn1cblxuLmZhLWhvdGVsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNTk0XCI7XG59XG5cbi5mYS1ob3RqYXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzYjFcIjtcbn1cblxuLmZhLWhvdXJnbGFzczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI1NFwiO1xufVxuXG4uZmEtaG91cmdsYXNzLWVuZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI1M1wiO1xufVxuXG4uZmEtaG91cmdsYXNzLWhhbGY6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNTJcIjtcbn1cblxuLmZhLWhvdXJnbGFzcy1zdGFydDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI1MVwiO1xufVxuXG4uZmEtaG91c2UtZGFtYWdlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNmYxXCI7XG59XG5cbi5mYS1ob3VzZS11c2VyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMDY1XCI7XG59XG5cbi5mYS1ob3V6ejpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI3Y1wiO1xufVxuXG4uZmEtaHJ5dm5pYTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjZmMlwiO1xufVxuXG4uZmEtaHRtbDU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxM2JcIjtcbn1cblxuLmZhLWh1YnNwb3Q6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzYjJcIjtcbn1cblxuLmZhLWktY3Vyc29yOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjQ2XCI7XG59XG5cbi5mYS1pY2UtY3JlYW06YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY4MTBcIjtcbn1cblxuLmZhLWljaWNsZXM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY3YWRcIjtcbn1cblxuLmZhLWljb25zOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmODZkXCI7XG59XG5cbi5mYS1pZC1iYWRnZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjJjMVwiO1xufVxuXG4uZmEtaWQtY2FyZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjJjMlwiO1xufVxuXG4uZmEtaWQtY2FyZC1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY0N2ZcIjtcbn1cblxuLmZhLWlkZWFsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMDEzXCI7XG59XG5cbi5mYS1pZ2xvbzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjdhZVwiO1xufVxuXG4uZmEtaW1hZ2U6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwM2VcIjtcbn1cblxuLmZhLWltYWdlczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjMwMlwiO1xufVxuXG4uZmEtaW1kYjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjJkOFwiO1xufVxuXG4uZmEtaW5ib3g6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMWNcIjtcbn1cblxuLmZhLWluZGVudDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAzY1wiO1xufVxuXG4uZmEtaW5kdXN0cnk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNzVcIjtcbn1cblxuLmZhLWluZmluaXR5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNTM0XCI7XG59XG5cbi5mYS1pbmZvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTI5XCI7XG59XG5cbi5mYS1pbmZvLWNpcmNsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA1YVwiO1xufVxuXG4uZmEtaW5zdGFncmFtOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTZkXCI7XG59XG5cbi5mYS1pbnN0YWdyYW0tc3F1YXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMDU1XCI7XG59XG5cbi5mYS1pbnRlcmNvbTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjdhZlwiO1xufVxuXG4uZmEtaW50ZXJuZXQtZXhwbG9yZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNmJcIjtcbn1cblxuLmZhLWludmlzaW9uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmN2IwXCI7XG59XG5cbi5mYS1pb3hob3N0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjA4XCI7XG59XG5cbi5mYS1pdGFsaWM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMzNcIjtcbn1cblxuLmZhLWl0Y2gtaW86YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY4M2FcIjtcbn1cblxuLmZhLWl0dW5lczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjNiNFwiO1xufVxuXG4uZmEtaXR1bmVzLW5vdGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzYjVcIjtcbn1cblxuLmZhLWphdmE6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY0ZTRcIjtcbn1cblxuLmZhLWplZGk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY2NjlcIjtcbn1cblxuLmZhLWplZGktb3JkZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1MGVcIjtcbn1cblxuLmZhLWplbmtpbnM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzYjZcIjtcbn1cblxuLmZhLWppcmE6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY3YjFcIjtcbn1cblxuLmZhLWpvZ2V0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmM2I3XCI7XG59XG5cbi5mYS1qb2ludDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjU5NVwiO1xufVxuXG4uZmEtam9vbWxhOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWFhXCI7XG59XG5cbi5mYS1qb3VybmFsLXdoaWxsczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjY2YVwiO1xufVxuXG4uZmEtanM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzYjhcIjtcbn1cblxuLmZhLWpzLXNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjNiOVwiO1xufVxuXG4uZmEtanNmaWRkbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxY2NcIjtcbn1cblxuLmZhLWthYWJhOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNjZiXCI7XG59XG5cbi5mYS1rYWdnbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1ZmFcIjtcbn1cblxuLmZhLWtleTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA4NFwiO1xufVxuXG4uZmEta2V5YmFzZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjRmNVwiO1xufVxuXG4uZmEta2V5Ym9hcmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxMWNcIjtcbn1cblxuLmZhLWtleWNkbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjNiYVwiO1xufVxuXG4uZmEta2hhbmRhOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNjZkXCI7XG59XG5cbi5mYS1raWNrc3RhcnRlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjNiYlwiO1xufVxuXG4uZmEta2lja3N0YXJ0ZXItazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjNiY1wiO1xufVxuXG4uZmEta2lzczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjU5NlwiO1xufVxuXG4uZmEta2lzcy1iZWFtOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNTk3XCI7XG59XG5cbi5mYS1raXNzLXdpbmstaGVhcnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1OThcIjtcbn1cblxuLmZhLWtpd2ktYmlyZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjUzNVwiO1xufVxuXG4uZmEta29ydnVlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNDJmXCI7XG59XG5cbi5mYS1sYW5kbWFyazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjY2ZlwiO1xufVxuXG4uZmEtbGFuZ3VhZ2U6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxYWJcIjtcbn1cblxuLmZhLWxhcHRvcDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjEwOVwiO1xufVxuXG4uZmEtbGFwdG9wLWNvZGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1ZmNcIjtcbn1cblxuLmZhLWxhcHRvcC1ob3VzZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTA2NlwiO1xufVxuXG4uZmEtbGFwdG9wLW1lZGljYWw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY4MTJcIjtcbn1cblxuLmZhLWxhcmF2ZWw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzYmRcIjtcbn1cblxuLmZhLWxhc3RmbTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIwMlwiO1xufVxuXG4uZmEtbGFzdGZtLXNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIwM1wiO1xufVxuXG4uZmEtbGF1Z2g6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1OTlcIjtcbn1cblxuLmZhLWxhdWdoLWJlYW06YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1OWFcIjtcbn1cblxuLmZhLWxhdWdoLXNxdWludDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjU5YlwiO1xufVxuXG4uZmEtbGF1Z2gtd2luazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjU5Y1wiO1xufVxuXG4uZmEtbGF5ZXItZ3JvdXA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1ZmRcIjtcbn1cblxuLmZhLWxlYWY6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNmNcIjtcbn1cblxuLmZhLWxlYW5wdWI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMTJcIjtcbn1cblxuLmZhLWxlbW9uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDk0XCI7XG59XG5cbi5mYS1sZXNzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNDFkXCI7XG59XG5cbi5mYS1sZXNzLXRoYW46YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1MzZcIjtcbn1cblxuLmZhLWxlc3MtdGhhbi1lcXVhbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjUzN1wiO1xufVxuXG4uZmEtbGV2ZWwtZG93bi1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzYmVcIjtcbn1cblxuLmZhLWxldmVsLXVwLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjNiZlwiO1xufVxuXG4uZmEtbGlmZS1yaW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWNkXCI7XG59XG5cbi5mYS1saWdodGJ1bGI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwZWJcIjtcbn1cblxuLmZhLWxpbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzYzBcIjtcbn1cblxuLmZhLWxpbms6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwYzFcIjtcbn1cblxuLmZhLWxpbmtlZGluOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDhjXCI7XG59XG5cbi5mYS1saW5rZWRpbi1pbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBlMVwiO1xufVxuXG4uZmEtbGlub2RlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMmI4XCI7XG59XG5cbi5mYS1saW51eDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE3Y1wiO1xufVxuXG4uZmEtbGlyYS1zaWduOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTk1XCI7XG59XG5cbi5mYS1saXN0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDNhXCI7XG59XG5cbi5mYS1saXN0LWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAyMlwiO1xufVxuXG4uZmEtbGlzdC1vbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBjYlwiO1xufVxuXG4uZmEtbGlzdC11bDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBjYVwiO1xufVxuXG4uZmEtbG9jYXRpb24tYXJyb3c6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxMjRcIjtcbn1cblxuLmZhLWxvY2s6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMjNcIjtcbn1cblxuLmZhLWxvY2stb3BlbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjNjMVwiO1xufVxuXG4uZmEtbG9uZy1hcnJvdy1hbHQtZG93bjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjMwOVwiO1xufVxuXG4uZmEtbG9uZy1hcnJvdy1hbHQtbGVmdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjMwYVwiO1xufVxuXG4uZmEtbG9uZy1hcnJvdy1hbHQtcmlnaHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzMGJcIjtcbn1cblxuLmZhLWxvbmctYXJyb3ctYWx0LXVwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMzBjXCI7XG59XG5cbi5mYS1sb3ctdmlzaW9uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMmE4XCI7XG59XG5cbi5mYS1sdWdnYWdlLWNhcnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1OWRcIjtcbn1cblxuLmZhLWx1bmdzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNjA0XCI7XG59XG5cbi5mYS1sdW5ncy12aXJ1czpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTA2N1wiO1xufVxuXG4uZmEtbHlmdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjNjM1wiO1xufVxuXG4uZmEtbWFnZW50bzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjNjNFwiO1xufVxuXG4uZmEtbWFnaWM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwZDBcIjtcbn1cblxuLmZhLW1hZ25ldDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA3NlwiO1xufVxuXG4uZmEtbWFpbC1idWxrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNjc0XCI7XG59XG5cbi5mYS1tYWlsY2hpbXA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1OWVcIjtcbn1cblxuLmZhLW1hbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxODNcIjtcbn1cblxuLmZhLW1hbmRhbG9yaWFuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNTBmXCI7XG59XG5cbi5mYS1tYXA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNzlcIjtcbn1cblxuLmZhLW1hcC1tYXJrZWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1OWZcIjtcbn1cblxuLmZhLW1hcC1tYXJrZWQtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNWEwXCI7XG59XG5cbi5mYS1tYXAtbWFya2VyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDQxXCI7XG59XG5cbi5mYS1tYXAtbWFya2VyLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjNjNVwiO1xufVxuXG4uZmEtbWFwLXBpbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI3NlwiO1xufVxuXG4uZmEtbWFwLXNpZ25zOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjc3XCI7XG59XG5cbi5mYS1tYXJrZG93bjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjYwZlwiO1xufVxuXG4uZmEtbWFya2VyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNWExXCI7XG59XG5cbi5mYS1tYXJzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjIyXCI7XG59XG5cbi5mYS1tYXJzLWRvdWJsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIyN1wiO1xufVxuXG4uZmEtbWFycy1zdHJva2U6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMjlcIjtcbn1cblxuLmZhLW1hcnMtc3Ryb2tlLWg6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMmJcIjtcbn1cblxuLmZhLW1hcnMtc3Ryb2tlLXY6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMmFcIjtcbn1cblxuLmZhLW1hc2s6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY2ZmFcIjtcbn1cblxuLmZhLW1hc3RvZG9uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNGY2XCI7XG59XG5cbi5mYS1tYXhjZG46YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxMzZcIjtcbn1cblxuLmZhLW1kYjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjhjYVwiO1xufVxuXG4uZmEtbWVkYWw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1YTJcIjtcbn1cblxuLmZhLW1lZGFwcHM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzYzZcIjtcbn1cblxuLmZhLW1lZGl1bTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIzYVwiO1xufVxuXG4uZmEtbWVkaXVtLW06YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzYzdcIjtcbn1cblxuLmZhLW1lZGtpdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBmYVwiO1xufVxuXG4uZmEtbWVkcnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzYzhcIjtcbn1cblxuLmZhLW1lZXR1cDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjJlMFwiO1xufVxuXG4uZmEtbWVnYXBvcnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1YTNcIjtcbn1cblxuLmZhLW1laDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjExYVwiO1xufVxuXG4uZmEtbWVoLWJsYW5rOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNWE0XCI7XG59XG5cbi5mYS1tZWgtcm9sbGluZy1leWVzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNWE1XCI7XG59XG5cbi5mYS1tZW1vcnk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1MzhcIjtcbn1cblxuLmZhLW1lbmRlbGV5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmN2IzXCI7XG59XG5cbi5mYS1tZW5vcmFoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNjc2XCI7XG59XG5cbi5mYS1tZXJjdXJ5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjIzXCI7XG59XG5cbi5mYS1tZXRlb3I6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY3NTNcIjtcbn1cblxuLmZhLW1pY3JvYmxvZzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTAxYVwiO1xufVxuXG4uZmEtbWljcm9jaGlwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMmRiXCI7XG59XG5cbi5mYS1taWNyb3Bob25lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTMwXCI7XG59XG5cbi5mYS1taWNyb3Bob25lLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjNjOVwiO1xufVxuXG4uZmEtbWljcm9waG9uZS1hbHQtc2xhc2g6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1MzlcIjtcbn1cblxuLmZhLW1pY3JvcGhvbmUtc2xhc2g6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxMzFcIjtcbn1cblxuLmZhLW1pY3Jvc2NvcGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY2MTBcIjtcbn1cblxuLmZhLW1pY3Jvc29mdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjNjYVwiO1xufVxuXG4uZmEtbWludXM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNjhcIjtcbn1cblxuLmZhLW1pbnVzLWNpcmNsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA1NlwiO1xufVxuXG4uZmEtbWludXMtc3F1YXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTQ2XCI7XG59XG5cbi5mYS1taXR0ZW46YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY3YjVcIjtcbn1cblxuLmZhLW1peDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjNjYlwiO1xufVxuXG4uZmEtbWl4Y2xvdWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyODlcIjtcbn1cblxuLmZhLW1peGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMDU2XCI7XG59XG5cbi5mYS1taXp1bmk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzY2NcIjtcbn1cblxuLmZhLW1vYmlsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjEwYlwiO1xufVxuXG4uZmEtbW9iaWxlLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjNjZFwiO1xufVxuXG4uZmEtbW9keDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI4NVwiO1xufVxuXG4uZmEtbW9uZXJvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmM2QwXCI7XG59XG5cbi5mYS1tb25leS1iaWxsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGQ2XCI7XG59XG5cbi5mYS1tb25leS1iaWxsLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjNkMVwiO1xufVxuXG4uZmEtbW9uZXktYmlsbC13YXZlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNTNhXCI7XG59XG5cbi5mYS1tb25leS1iaWxsLXdhdmUtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNTNiXCI7XG59XG5cbi5mYS1tb25leS1jaGVjazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjUzY1wiO1xufVxuXG4uZmEtbW9uZXktY2hlY2stYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNTNkXCI7XG59XG5cbi5mYS1tb251bWVudDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjVhNlwiO1xufVxuXG4uZmEtbW9vbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE4NlwiO1xufVxuXG4uZmEtbW9ydGFyLXBlc3RsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjVhN1wiO1xufVxuXG4uZmEtbW9zcXVlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNjc4XCI7XG59XG5cbi5mYS1tb3RvcmN5Y2xlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjFjXCI7XG59XG5cbi5mYS1tb3VudGFpbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjZmY1wiO1xufVxuXG4uZmEtbW91c2U6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY4Y2NcIjtcbn1cblxuLmZhLW1vdXNlLXBvaW50ZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNDVcIjtcbn1cblxuLmZhLW11Zy1ob3Q6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY3YjZcIjtcbn1cblxuLmZhLW11c2ljOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDAxXCI7XG59XG5cbi5mYS1uYXBzdGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmM2QyXCI7XG59XG5cbi5mYS1uZW9zOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNjEyXCI7XG59XG5cbi5mYS1uZXR3b3JrLXdpcmVkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNmZmXCI7XG59XG5cbi5mYS1uZXV0ZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMmNcIjtcbn1cblxuLmZhLW5ld3NwYXBlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFlYVwiO1xufVxuXG4uZmEtbmltYmxyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNWE4XCI7XG59XG5cbi5mYS1ub2RlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNDE5XCI7XG59XG5cbi5mYS1ub2RlLWpzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmM2QzXCI7XG59XG5cbi5mYS1ub3QtZXF1YWw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1M2VcIjtcbn1cblxuLmZhLW5vdGVzLW1lZGljYWw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY0ODFcIjtcbn1cblxuLmZhLW5wbTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjNkNFwiO1xufVxuXG4uZmEtbnM4OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmM2Q1XCI7XG59XG5cbi5mYS1udXRyaXRpb25peDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjNkNlwiO1xufVxuXG4uZmEtb2JqZWN0LWdyb3VwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjQ3XCI7XG59XG5cbi5mYS1vYmplY3QtdW5ncm91cDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI0OFwiO1xufVxuXG4uZmEtb2Rub2tsYXNzbmlraTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI2M1wiO1xufVxuXG4uZmEtb2Rub2tsYXNzbmlraS1zcXVhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNjRcIjtcbn1cblxuLmZhLW9pbC1jYW46YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY2MTNcIjtcbn1cblxuLmZhLW9sZC1yZXB1YmxpYzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjUxMFwiO1xufVxuXG4uZmEtb206YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY2NzlcIjtcbn1cblxuLmZhLW9wZW5jYXJ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjNkXCI7XG59XG5cbi5mYS1vcGVuaWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxOWJcIjtcbn1cblxuLmZhLW9wZXJhOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjZhXCI7XG59XG5cbi5mYS1vcHRpbi1tb25zdGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjNjXCI7XG59XG5cbi5mYS1vcmNpZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjhkMlwiO1xufVxuXG4uZmEtb3NpOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNDFhXCI7XG59XG5cbi5mYS1vdHRlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjcwMFwiO1xufVxuXG4uZmEtb3V0ZGVudDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAzYlwiO1xufVxuXG4uZmEtcGFnZTQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzZDdcIjtcbn1cblxuLmZhLXBhZ2VsaW5lczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE4Y1wiO1xufVxuXG4uZmEtcGFnZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY4MTVcIjtcbn1cblxuLmZhLXBhaW50LWJydXNoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWZjXCI7XG59XG5cbi5mYS1wYWludC1yb2xsZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1YWFcIjtcbn1cblxuLmZhLXBhbGV0dGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1M2ZcIjtcbn1cblxuLmZhLXBhbGZlZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjNkOFwiO1xufVxuXG4uZmEtcGFsbGV0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNDgyXCI7XG59XG5cbi5mYS1wYXBlci1wbGFuZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFkOFwiO1xufVxuXG4uZmEtcGFwZXJjbGlwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGM2XCI7XG59XG5cbi5mYS1wYXJhY2h1dGUtYm94OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNGNkXCI7XG59XG5cbi5mYS1wYXJhZ3JhcGg6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxZGRcIjtcbn1cblxuLmZhLXBhcmtpbmc6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1NDBcIjtcbn1cblxuLmZhLXBhc3Nwb3J0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNWFiXCI7XG59XG5cbi5mYS1wYXN0YWZhcmlhbmlzbTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjY3YlwiO1xufVxuXG4uZmEtcGFzdGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwZWFcIjtcbn1cblxuLmZhLXBhdHJlb246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzZDlcIjtcbn1cblxuLmZhLXBhdXNlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDRjXCI7XG59XG5cbi5mYS1wYXVzZS1jaXJjbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyOGJcIjtcbn1cblxuLmZhLXBhdzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFiMFwiO1xufVxuXG4uZmEtcGF5cGFsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWVkXCI7XG59XG5cbi5mYS1wZWFjZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjY3Y1wiO1xufVxuXG4uZmEtcGVuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMzA0XCI7XG59XG5cbi5mYS1wZW4tYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMzA1XCI7XG59XG5cbi5mYS1wZW4tZmFuY3k6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1YWNcIjtcbn1cblxuLmZhLXBlbi1uaWI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1YWRcIjtcbn1cblxuLmZhLXBlbi1zcXVhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxNGJcIjtcbn1cblxuLmZhLXBlbmNpbC1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzMDNcIjtcbn1cblxuLmZhLXBlbmNpbC1ydWxlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjVhZVwiO1xufVxuXG4uZmEtcGVubnktYXJjYWRlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNzA0XCI7XG59XG5cbi5mYS1wZW9wbGUtYXJyb3dzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMDY4XCI7XG59XG5cbi5mYS1wZW9wbGUtY2Fycnk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY0Y2VcIjtcbn1cblxuLmZhLXBlcHBlci1ob3Q6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY4MTZcIjtcbn1cblxuLmZhLXBlcmNlbnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyOTVcIjtcbn1cblxuLmZhLXBlcmNlbnRhZ2U6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1NDFcIjtcbn1cblxuLmZhLXBlcmlzY29wZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjNkYVwiO1xufVxuXG4uZmEtcGVyc29uLWJvb3RoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNzU2XCI7XG59XG5cbi5mYS1waGFicmljYXRvcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjNkYlwiO1xufVxuXG4uZmEtcGhvZW5peC1mcmFtZXdvcms6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzZGNcIjtcbn1cblxuLmZhLXBob2VuaXgtc3F1YWRyb246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1MTFcIjtcbn1cblxuLmZhLXBob25lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDk1XCI7XG59XG5cbi5mYS1waG9uZS1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY4NzlcIjtcbn1cblxuLmZhLXBob25lLXNsYXNoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmM2RkXCI7XG59XG5cbi5mYS1waG9uZS1zcXVhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwOThcIjtcbn1cblxuLmZhLXBob25lLXNxdWFyZS1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY4N2JcIjtcbn1cblxuLmZhLXBob25lLXZvbHVtZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjJhMFwiO1xufVxuXG4uZmEtcGhvdG8tdmlkZW86YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY4N2NcIjtcbn1cblxuLmZhLXBocDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjQ1N1wiO1xufVxuXG4uZmEtcGllZC1waXBlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjJhZVwiO1xufVxuXG4uZmEtcGllZC1waXBlci1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxYThcIjtcbn1cblxuLmZhLXBpZWQtcGlwZXItaGF0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNGU1XCI7XG59XG5cbi5mYS1waWVkLXBpcGVyLXBwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWE3XCI7XG59XG5cbi5mYS1waWVkLXBpcGVyLXNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTAxZVwiO1xufVxuXG4uZmEtcGlnZ3ktYmFuazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjRkM1wiO1xufVxuXG4uZmEtcGlsbHM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY0ODRcIjtcbn1cblxuLmZhLXBpbnRlcmVzdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBkMlwiO1xufVxuXG4uZmEtcGludGVyZXN0LXA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMzFcIjtcbn1cblxuLmZhLXBpbnRlcmVzdC1zcXVhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwZDNcIjtcbn1cblxuLmZhLXBpenphLXNsaWNlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmODE4XCI7XG59XG5cbi5mYS1wbGFjZS1vZi13b3JzaGlwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNjdmXCI7XG59XG5cbi5mYS1wbGFuZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA3MlwiO1xufVxuXG4uZmEtcGxhbmUtYXJyaXZhbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjVhZlwiO1xufVxuXG4uZmEtcGxhbmUtZGVwYXJ0dXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNWIwXCI7XG59XG5cbi5mYS1wbGFuZS1zbGFzaDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTA2OVwiO1xufVxuXG4uZmEtcGxheTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA0YlwiO1xufVxuXG4uZmEtcGxheS1jaXJjbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxNDRcIjtcbn1cblxuLmZhLXBsYXlzdGF0aW9uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmM2RmXCI7XG59XG5cbi5mYS1wbHVnOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWU2XCI7XG59XG5cbi5mYS1wbHVzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDY3XCI7XG59XG5cbi5mYS1wbHVzLWNpcmNsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA1NVwiO1xufVxuXG4uZmEtcGx1cy1zcXVhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwZmVcIjtcbn1cblxuLmZhLXBvZGNhc3Q6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyY2VcIjtcbn1cblxuLmZhLXBvbGw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY2ODFcIjtcbn1cblxuLmZhLXBvbGwtaDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjY4MlwiO1xufVxuXG4uZmEtcG9vOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMmZlXCI7XG59XG5cbi5mYS1wb28tc3Rvcm06YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY3NWFcIjtcbn1cblxuLmZhLXBvb3A6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY2MTlcIjtcbn1cblxuLmZhLXBvcnRyYWl0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmM2UwXCI7XG59XG5cbi5mYS1wb3VuZC1zaWduOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTU0XCI7XG59XG5cbi5mYS1wb3dlci1vZmY6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMTFcIjtcbn1cblxuLmZhLXByYXk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY2ODNcIjtcbn1cblxuLmZhLXByYXlpbmctaGFuZHM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY2ODRcIjtcbn1cblxuLmZhLXByZXNjcmlwdGlvbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjViMVwiO1xufVxuXG4uZmEtcHJlc2NyaXB0aW9uLWJvdHRsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjQ4NVwiO1xufVxuXG4uZmEtcHJlc2NyaXB0aW9uLWJvdHRsZS1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY0ODZcIjtcbn1cblxuLmZhLXByaW50OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDJmXCI7XG59XG5cbi5mYS1wcm9jZWR1cmVzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNDg3XCI7XG59XG5cbi5mYS1wcm9kdWN0LWh1bnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyODhcIjtcbn1cblxuLmZhLXByb2plY3QtZGlhZ3JhbTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjU0MlwiO1xufVxuXG4uZmEtcHVtcC1tZWRpY2FsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMDZhXCI7XG59XG5cbi5mYS1wdW1wLXNvYXA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUwNmJcIjtcbn1cblxuLmZhLXB1c2hlZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjNlMVwiO1xufVxuXG4uZmEtcHV6emxlLXBpZWNlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTJlXCI7XG59XG5cbi5mYS1weXRob246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzZTJcIjtcbn1cblxuLmZhLXFxOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWQ2XCI7XG59XG5cbi5mYS1xcmNvZGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMjlcIjtcbn1cblxuLmZhLXF1ZXN0aW9uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTI4XCI7XG59XG5cbi5mYS1xdWVzdGlvbi1jaXJjbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNTlcIjtcbn1cblxuLmZhLXF1aWRkaXRjaDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjQ1OFwiO1xufVxuXG4uZmEtcXVpbnNjYXBlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNDU5XCI7XG59XG5cbi5mYS1xdW9yYTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjJjNFwiO1xufVxuXG4uZmEtcXVvdGUtbGVmdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjEwZFwiO1xufVxuXG4uZmEtcXVvdGUtcmlnaHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxMGVcIjtcbn1cblxuLmZhLXF1cmFuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNjg3XCI7XG59XG5cbi5mYS1yLXByb2plY3Q6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY0ZjdcIjtcbn1cblxuLmZhLXJhZGlhdGlvbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjdiOVwiO1xufVxuXG4uZmEtcmFkaWF0aW9uLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjdiYVwiO1xufVxuXG4uZmEtcmFpbmJvdzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjc1YlwiO1xufVxuXG4uZmEtcmFuZG9tOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDc0XCI7XG59XG5cbi5mYS1yYXNwYmVycnktcGk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY3YmJcIjtcbn1cblxuLmZhLXJhdmVscnk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyZDlcIjtcbn1cblxuLmZhLXJlYWN0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNDFiXCI7XG59XG5cbi5mYS1yZWFjdGV1cm9wZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjc1ZFwiO1xufVxuXG4uZmEtcmVhZG1lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNGQ1XCI7XG59XG5cbi5mYS1yZWJlbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFkMFwiO1xufVxuXG4uZmEtcmVjZWlwdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjU0M1wiO1xufVxuXG4uZmEtcmVjb3JkLXZpbnlsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmOGQ5XCI7XG59XG5cbi5mYS1yZWN5Y2xlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWI4XCI7XG59XG5cbi5mYS1yZWQtcml2ZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzZTNcIjtcbn1cblxuLmZhLXJlZGRpdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFhMVwiO1xufVxuXG4uZmEtcmVkZGl0LWFsaWVuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjgxXCI7XG59XG5cbi5mYS1yZWRkaXQtc3F1YXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWEyXCI7XG59XG5cbi5mYS1yZWRoYXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY3YmNcIjtcbn1cblxuLmZhLXJlZG86YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMWVcIjtcbn1cblxuLmZhLXJlZG8tYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMmY5XCI7XG59XG5cbi5mYS1yZWdpc3RlcmVkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjVkXCI7XG59XG5cbi5mYS1yZW1vdmUtZm9ybWF0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmODdkXCI7XG59XG5cbi5mYS1yZW5yZW46YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxOGJcIjtcbn1cblxuLmZhLXJlcGx5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmM2U1XCI7XG59XG5cbi5mYS1yZXBseS1hbGw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxMjJcIjtcbn1cblxuLmZhLXJlcGx5ZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjNlNlwiO1xufVxuXG4uZmEtcmVwdWJsaWNhbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjc1ZVwiO1xufVxuXG4uZmEtcmVzZWFyY2hnYXRlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNGY4XCI7XG59XG5cbi5mYS1yZXNvbHZpbmc6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzZTdcIjtcbn1cblxuLmZhLXJlc3Ryb29tOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmN2JkXCI7XG59XG5cbi5mYS1yZXR3ZWV0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDc5XCI7XG59XG5cbi5mYS1yZXY6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1YjJcIjtcbn1cblxuLmZhLXJpYmJvbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjRkNlwiO1xufVxuXG4uZmEtcmluZzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjcwYlwiO1xufVxuXG4uZmEtcm9hZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAxOFwiO1xufVxuXG4uZmEtcm9ib3Q6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1NDRcIjtcbn1cblxuLmZhLXJvY2tldDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjEzNVwiO1xufVxuXG4uZmEtcm9ja2V0Y2hhdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjNlOFwiO1xufVxuXG4uZmEtcm9ja3JtczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjNlOVwiO1xufVxuXG4uZmEtcm91dGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY0ZDdcIjtcbn1cblxuLmZhLXJzczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA5ZVwiO1xufVxuXG4uZmEtcnNzLXNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE0M1wiO1xufVxuXG4uZmEtcnVibGUtc2lnbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE1OFwiO1xufVxuXG4uZmEtcnVsZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1NDVcIjtcbn1cblxuLmZhLXJ1bGVyLWNvbWJpbmVkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNTQ2XCI7XG59XG5cbi5mYS1ydWxlci1ob3Jpem9udGFsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNTQ3XCI7XG59XG5cbi5mYS1ydWxlci12ZXJ0aWNhbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjU0OFwiO1xufVxuXG4uZmEtcnVubmluZzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjcwY1wiO1xufVxuXG4uZmEtcnVwZWUtc2lnbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE1NlwiO1xufVxuXG4uZmEtcnVzdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTA3YVwiO1xufVxuXG4uZmEtc2FkLWNyeTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjViM1wiO1xufVxuXG4uZmEtc2FkLXRlYXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1YjRcIjtcbn1cblxuLmZhLXNhZmFyaTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI2N1wiO1xufVxuXG4uZmEtc2FsZXNmb3JjZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjgzYlwiO1xufVxuXG4uZmEtc2FzczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjQxZVwiO1xufVxuXG4uZmEtc2F0ZWxsaXRlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmN2JmXCI7XG59XG5cbi5mYS1zYXRlbGxpdGUtZGlzaDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjdjMFwiO1xufVxuXG4uZmEtc2F2ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBjN1wiO1xufVxuXG4uZmEtc2NobGl4OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmM2VhXCI7XG59XG5cbi5mYS1zY2hvb2w6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1NDlcIjtcbn1cblxuLmZhLXNjcmV3ZHJpdmVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNTRhXCI7XG59XG5cbi5mYS1zY3JpYmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyOGFcIjtcbn1cblxuLmZhLXNjcm9sbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjcwZVwiO1xufVxuXG4uZmEtc2QtY2FyZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjdjMlwiO1xufVxuXG4uZmEtc2VhcmNoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDAyXCI7XG59XG5cbi5mYS1zZWFyY2gtZG9sbGFyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNjg4XCI7XG59XG5cbi5mYS1zZWFyY2gtbG9jYXRpb246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY2ODlcIjtcbn1cblxuLmZhLXNlYXJjaC1taW51czpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAxMFwiO1xufVxuXG4uZmEtc2VhcmNoLXBsdXM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMGVcIjtcbn1cblxuLmZhLXNlYXJjaGVuZ2luOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmM2ViXCI7XG59XG5cbi5mYS1zZWVkbGluZzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjRkOFwiO1xufVxuXG4uZmEtc2VsbGNhc3Q6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyZGFcIjtcbn1cblxuLmZhLXNlbGxzeTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIxM1wiO1xufVxuXG4uZmEtc2VydmVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjMzXCI7XG59XG5cbi5mYS1zZXJ2aWNlc3RhY2s6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzZWNcIjtcbn1cblxuLmZhLXNoYXBlczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjYxZlwiO1xufVxuXG4uZmEtc2hhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNjRcIjtcbn1cblxuLmZhLXNoYXJlLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFlMFwiO1xufVxuXG4uZmEtc2hhcmUtYWx0LXNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFlMVwiO1xufVxuXG4uZmEtc2hhcmUtc3F1YXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTRkXCI7XG59XG5cbi5mYS1zaGVrZWwtc2lnbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIwYlwiO1xufVxuXG4uZmEtc2hpZWxkLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjNlZFwiO1xufVxuXG4uZmEtc2hpZWxkLXZpcnVzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMDZjXCI7XG59XG5cbi5mYS1zaGlwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjFhXCI7XG59XG5cbi5mYS1zaGlwcGluZy1mYXN0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNDhiXCI7XG59XG5cbi5mYS1zaGlydHNpbmJ1bGs6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMTRcIjtcbn1cblxuLmZhLXNob2UtcHJpbnRzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNTRiXCI7XG59XG5cbi5mYS1zaG9waWZ5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMDU3XCI7XG59XG5cbi5mYS1zaG9wcGluZy1iYWc6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyOTBcIjtcbn1cblxuLmZhLXNob3BwaW5nLWJhc2tldDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI5MVwiO1xufVxuXG4uZmEtc2hvcHBpbmctY2FydDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA3YVwiO1xufVxuXG4uZmEtc2hvcHdhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1YjVcIjtcbn1cblxuLmZhLXNob3dlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjJjY1wiO1xufVxuXG4uZmEtc2h1dHRsZS12YW46YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1YjZcIjtcbn1cblxuLmZhLXNpZ246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY0ZDlcIjtcbn1cblxuLmZhLXNpZ24taW4tYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMmY2XCI7XG59XG5cbi5mYS1zaWduLWxhbmd1YWdlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMmE3XCI7XG59XG5cbi5mYS1zaWduLW91dC1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyZjVcIjtcbn1cblxuLmZhLXNpZ25hbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAxMlwiO1xufVxuXG4uZmEtc2lnbmF0dXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNWI3XCI7XG59XG5cbi5mYS1zaW0tY2FyZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjdjNFwiO1xufVxuXG4uZmEtc2ltcGx5YnVpbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMTVcIjtcbn1cblxuLmZhLXNpbms6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUwNmRcIjtcbn1cblxuLmZhLXNpc3RyaXg6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzZWVcIjtcbn1cblxuLmZhLXNpdGVtYXA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwZThcIjtcbn1cblxuLmZhLXNpdGg6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1MTJcIjtcbn1cblxuLmZhLXNrYXRpbmc6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY3YzVcIjtcbn1cblxuLmZhLXNrZXRjaDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjdjNlwiO1xufVxuXG4uZmEtc2tpaW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmN2M5XCI7XG59XG5cbi5mYS1za2lpbmctbm9yZGljOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmN2NhXCI7XG59XG5cbi5mYS1za3VsbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjU0Y1wiO1xufVxuXG4uZmEtc2t1bGwtY3Jvc3Nib25lczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjcxNFwiO1xufVxuXG4uZmEtc2t5YXRsYXM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMTZcIjtcbn1cblxuLmZhLXNreXBlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTdlXCI7XG59XG5cbi5mYS1zbGFjazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE5OFwiO1xufVxuXG4uZmEtc2xhY2staGFzaDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjNlZlwiO1xufVxuXG4uZmEtc2xhc2g6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY3MTVcIjtcbn1cblxuLmZhLXNsZWlnaDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjdjY1wiO1xufVxuXG4uZmEtc2xpZGVycy1oOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWRlXCI7XG59XG5cbi5mYS1zbGlkZXNoYXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWU3XCI7XG59XG5cbi5mYS1zbWlsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjExOFwiO1xufVxuXG4uZmEtc21pbGUtYmVhbTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjViOFwiO1xufVxuXG4uZmEtc21pbGUtd2luazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjRkYVwiO1xufVxuXG4uZmEtc21vZzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjc1ZlwiO1xufVxuXG4uZmEtc21va2luZzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjQ4ZFwiO1xufVxuXG4uZmEtc21va2luZy1iYW46YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1NGRcIjtcbn1cblxuLmZhLXNtczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjdjZFwiO1xufVxuXG4uZmEtc25hcGNoYXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyYWJcIjtcbn1cblxuLmZhLXNuYXBjaGF0LWdob3N0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMmFjXCI7XG59XG5cbi5mYS1zbmFwY2hhdC1zcXVhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyYWRcIjtcbn1cblxuLmZhLXNub3dib2FyZGluZzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjdjZVwiO1xufVxuXG4uZmEtc25vd2ZsYWtlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMmRjXCI7XG59XG5cbi5mYS1zbm93bWFuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmN2QwXCI7XG59XG5cbi5mYS1zbm93cGxvdzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjdkMlwiO1xufVxuXG4uZmEtc29hcDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTA2ZVwiO1xufVxuXG4uZmEtc29ja3M6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY2OTZcIjtcbn1cblxuLmZhLXNvbGFyLXBhbmVsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNWJhXCI7XG59XG5cbi5mYS1zb3J0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGRjXCI7XG59XG5cbi5mYS1zb3J0LWFscGhhLWRvd246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxNWRcIjtcbn1cblxuLmZhLXNvcnQtYWxwaGEtZG93bi1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY4ODFcIjtcbn1cblxuLmZhLXNvcnQtYWxwaGEtdXA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxNWVcIjtcbn1cblxuLmZhLXNvcnQtYWxwaGEtdXAtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmODgyXCI7XG59XG5cbi5mYS1zb3J0LWFtb3VudC1kb3duOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTYwXCI7XG59XG5cbi5mYS1zb3J0LWFtb3VudC1kb3duLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjg4NFwiO1xufVxuXG4uZmEtc29ydC1hbW91bnQtdXA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxNjFcIjtcbn1cblxuLmZhLXNvcnQtYW1vdW50LXVwLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjg4NVwiO1xufVxuXG4uZmEtc29ydC1kb3duOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGRkXCI7XG59XG5cbi5mYS1zb3J0LW51bWVyaWMtZG93bjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE2MlwiO1xufVxuXG4uZmEtc29ydC1udW1lcmljLWRvd24tYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmODg2XCI7XG59XG5cbi5mYS1zb3J0LW51bWVyaWMtdXA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxNjNcIjtcbn1cblxuLmZhLXNvcnQtbnVtZXJpYy11cC1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY4ODdcIjtcbn1cblxuLmZhLXNvcnQtdXA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwZGVcIjtcbn1cblxuLmZhLXNvdW5kY2xvdWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxYmVcIjtcbn1cblxuLmZhLXNvdXJjZXRyZWU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY3ZDNcIjtcbn1cblxuLmZhLXNwYTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjViYlwiO1xufVxuXG4uZmEtc3BhY2Utc2h1dHRsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE5N1wiO1xufVxuXG4uZmEtc3BlYWthcDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjNmM1wiO1xufVxuXG4uZmEtc3BlYWtlci1kZWNrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmODNjXCI7XG59XG5cbi5mYS1zcGVsbC1jaGVjazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjg5MVwiO1xufVxuXG4uZmEtc3BpZGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNzE3XCI7XG59XG5cbi5mYS1zcGlubmVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTEwXCI7XG59XG5cbi5mYS1zcGxvdGNoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNWJjXCI7XG59XG5cbi5mYS1zcG90aWZ5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWJjXCI7XG59XG5cbi5mYS1zcHJheS1jYW46YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1YmRcIjtcbn1cblxuLmZhLXNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBjOFwiO1xufVxuXG4uZmEtc3F1YXJlLWZ1bGw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY0NWNcIjtcbn1cblxuLmZhLXNxdWFyZS1yb290LWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjY5OFwiO1xufVxuXG4uZmEtc3F1YXJlc3BhY2U6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1YmVcIjtcbn1cblxuLmZhLXN0YWNrLWV4Y2hhbmdlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMThkXCI7XG59XG5cbi5mYS1zdGFjay1vdmVyZmxvdzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE2Y1wiO1xufVxuXG4uZmEtc3RhY2twYXRoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmODQyXCI7XG59XG5cbi5mYS1zdGFtcDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjViZlwiO1xufVxuXG4uZmEtc3RhcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAwNVwiO1xufVxuXG4uZmEtc3Rhci1hbmQtY3Jlc2NlbnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY2OTlcIjtcbn1cblxuLmZhLXN0YXItaGFsZjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA4OVwiO1xufVxuXG4uZmEtc3Rhci1oYWxmLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjVjMFwiO1xufVxuXG4uZmEtc3Rhci1vZi1kYXZpZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjY5YVwiO1xufVxuXG4uZmEtc3Rhci1vZi1saWZlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNjIxXCI7XG59XG5cbi5mYS1zdGF5bGlua2VkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmM2Y1XCI7XG59XG5cbi5mYS1zdGVhbTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFiNlwiO1xufVxuXG4uZmEtc3RlYW0tc3F1YXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWI3XCI7XG59XG5cbi5mYS1zdGVhbS1zeW1ib2w6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzZjZcIjtcbn1cblxuLmZhLXN0ZXAtYmFja3dhcmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNDhcIjtcbn1cblxuLmZhLXN0ZXAtZm9yd2FyZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA1MVwiO1xufVxuXG4uZmEtc3RldGhvc2NvcGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwZjFcIjtcbn1cblxuLmZhLXN0aWNrZXItbXVsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjNmN1wiO1xufVxuXG4uZmEtc3RpY2t5LW5vdGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNDlcIjtcbn1cblxuLmZhLXN0b3A6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNGRcIjtcbn1cblxuLmZhLXN0b3AtY2lyY2xlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjhkXCI7XG59XG5cbi5mYS1zdG9wd2F0Y2g6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyZjJcIjtcbn1cblxuLmZhLXN0b3B3YXRjaC0yMDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTA2ZlwiO1xufVxuXG4uZmEtc3RvcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1NGVcIjtcbn1cblxuLmZhLXN0b3JlLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjU0ZlwiO1xufVxuXG4uZmEtc3RvcmUtYWx0LXNsYXNoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMDcwXCI7XG59XG5cbi5mYS1zdG9yZS1zbGFzaDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTA3MVwiO1xufVxuXG4uZmEtc3RyYXZhOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNDI4XCI7XG59XG5cbi5mYS1zdHJlYW06YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1NTBcIjtcbn1cblxuLmZhLXN0cmVldC12aWV3OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjFkXCI7XG59XG5cbi5mYS1zdHJpa2V0aHJvdWdoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGNjXCI7XG59XG5cbi5mYS1zdHJpcGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY0MjlcIjtcbn1cblxuLmZhLXN0cmlwZS1zOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNDJhXCI7XG59XG5cbi5mYS1zdHJvb3B3YWZlbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjU1MVwiO1xufVxuXG4uZmEtc3R1ZGlvdmluYXJpOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmM2Y4XCI7XG59XG5cbi5mYS1zdHVtYmxldXBvbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFhNFwiO1xufVxuXG4uZmEtc3R1bWJsZXVwb24tY2lyY2xlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWEzXCI7XG59XG5cbi5mYS1zdWJzY3JpcHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxMmNcIjtcbn1cblxuLmZhLXN1YndheTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIzOVwiO1xufVxuXG4uZmEtc3VpdGNhc2U6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwZjJcIjtcbn1cblxuLmZhLXN1aXRjYXNlLXJvbGxpbmc6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1YzFcIjtcbn1cblxuLmZhLXN1bjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE4NVwiO1xufVxuXG4uZmEtc3VwZXJwb3dlcnM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyZGRcIjtcbn1cblxuLmZhLXN1cGVyc2NyaXB0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTJiXCI7XG59XG5cbi5mYS1zdXBwbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzZjlcIjtcbn1cblxuLmZhLXN1cnByaXNlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNWMyXCI7XG59XG5cbi5mYS1zdXNlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmN2Q2XCI7XG59XG5cbi5mYS1zd2F0Y2hib29rOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNWMzXCI7XG59XG5cbi5mYS1zd2lmdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjhlMVwiO1xufVxuXG4uZmEtc3dpbW1lcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjVjNFwiO1xufVxuXG4uZmEtc3dpbW1pbmctcG9vbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjVjNVwiO1xufVxuXG4uZmEtc3ltZm9ueTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjgzZFwiO1xufVxuXG4uZmEtc3luYWdvZ3VlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNjliXCI7XG59XG5cbi5mYS1zeW5jOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDIxXCI7XG59XG5cbi5mYS1zeW5jLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjJmMVwiO1xufVxuXG4uZmEtc3lyaW5nZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjQ4ZVwiO1xufVxuXG4uZmEtdGFibGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwY2VcIjtcbn1cblxuLmZhLXRhYmxlLXRlbm5pczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjQ1ZFwiO1xufVxuXG4uZmEtdGFibGV0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTBhXCI7XG59XG5cbi5mYS10YWJsZXQtYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmM2ZhXCI7XG59XG5cbi5mYS10YWJsZXRzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNDkwXCI7XG59XG5cbi5mYS10YWNob21ldGVyLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjNmZFwiO1xufVxuXG4uZmEtdGFnOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDJiXCI7XG59XG5cbi5mYS10YWdzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDJjXCI7XG59XG5cbi5mYS10YXBlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNGRiXCI7XG59XG5cbi5mYS10YXNrczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBhZVwiO1xufVxuXG4uZmEtdGF4aTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFiYVwiO1xufVxuXG4uZmEtdGVhbXNwZWFrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNGY5XCI7XG59XG5cbi5mYS10ZWV0aDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjYyZVwiO1xufVxuXG4uZmEtdGVldGgtb3BlbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjYyZlwiO1xufVxuXG4uZmEtdGVsZWdyYW06YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyYzZcIjtcbn1cblxuLmZhLXRlbGVncmFtLXBsYW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmM2ZlXCI7XG59XG5cbi5mYS10ZW1wZXJhdHVyZS1oaWdoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNzY5XCI7XG59XG5cbi5mYS10ZW1wZXJhdHVyZS1sb3c6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY3NmJcIjtcbn1cblxuLmZhLXRlbmNlbnQtd2VpYm86YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxZDVcIjtcbn1cblxuLmZhLXRlbmdlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmN2Q3XCI7XG59XG5cbi5mYS10ZXJtaW5hbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjEyMFwiO1xufVxuXG4uZmEtdGV4dC1oZWlnaHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMzRcIjtcbn1cblxuLmZhLXRleHQtd2lkdGg6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMzVcIjtcbn1cblxuLmZhLXRoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDBhXCI7XG59XG5cbi5mYS10aC1sYXJnZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAwOVwiO1xufVxuXG4uZmEtdGgtbGlzdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAwYlwiO1xufVxuXG4uZmEtdGhlLXJlZC15ZXRpOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNjlkXCI7XG59XG5cbi5mYS10aGVhdGVyLW1hc2tzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNjMwXCI7XG59XG5cbi5mYS10aGVtZWNvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNWM2XCI7XG59XG5cbi5mYS10aGVtZWlzbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyYjJcIjtcbn1cblxuLmZhLXRoZXJtb21ldGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNDkxXCI7XG59XG5cbi5mYS10aGVybW9tZXRlci1lbXB0eTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjJjYlwiO1xufVxuXG4uZmEtdGhlcm1vbWV0ZXItZnVsbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjJjN1wiO1xufVxuXG4uZmEtdGhlcm1vbWV0ZXItaGFsZjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjJjOVwiO1xufVxuXG4uZmEtdGhlcm1vbWV0ZXItcXVhcnRlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjJjYVwiO1xufVxuXG4uZmEtdGhlcm1vbWV0ZXItdGhyZWUtcXVhcnRlcnM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyYzhcIjtcbn1cblxuLmZhLXRoaW5rLXBlYWtzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNzMxXCI7XG59XG5cbi5mYS10aHVtYnMtZG93bjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE2NVwiO1xufVxuXG4uZmEtdGh1bWJzLXVwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTY0XCI7XG59XG5cbi5mYS10aHVtYnRhY2s6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwOGRcIjtcbn1cblxuLmZhLXRpY2tldC1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYzZmZcIjtcbn1cblxuLmZhLXRpa3RvazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTA3YlwiO1xufVxuXG4uZmEtdGltZXM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMGRcIjtcbn1cblxuLmZhLXRpbWVzLWNpcmNsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA1N1wiO1xufVxuXG4uZmEtdGludDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA0M1wiO1xufVxuXG4uZmEtdGludC1zbGFzaDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjVjN1wiO1xufVxuXG4uZmEtdGlyZWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1YzhcIjtcbn1cblxuLmZhLXRvZ2dsZS1vZmY6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMDRcIjtcbn1cblxuLmZhLXRvZ2dsZS1vbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIwNVwiO1xufVxuXG4uZmEtdG9pbGV0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmN2Q4XCI7XG59XG5cbi5mYS10b2lsZXQtcGFwZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY3MWVcIjtcbn1cblxuLmZhLXRvaWxldC1wYXBlci1zbGFzaDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTA3MlwiO1xufVxuXG4uZmEtdG9vbGJveDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjU1MlwiO1xufVxuXG4uZmEtdG9vbHM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY3ZDlcIjtcbn1cblxuLmZhLXRvb3RoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNWM5XCI7XG59XG5cbi5mYS10b3JhaDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjZhMFwiO1xufVxuXG4uZmEtdG9yaWktZ2F0ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjZhMVwiO1xufVxuXG4uZmEtdHJhY3RvcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjcyMlwiO1xufVxuXG4uZmEtdHJhZGUtZmVkZXJhdGlvbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjUxM1wiO1xufVxuXG4uZmEtdHJhZGVtYXJrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjVjXCI7XG59XG5cbi5mYS10cmFmZmljLWxpZ2h0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNjM3XCI7XG59XG5cbi5mYS10cmFpbGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMDQxXCI7XG59XG5cbi5mYS10cmFpbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIzOFwiO1xufVxuXG4uZmEtdHJhbTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjdkYVwiO1xufVxuXG4uZmEtdHJhbnNnZW5kZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMjRcIjtcbn1cblxuLmZhLXRyYW5zZ2VuZGVyLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIyNVwiO1xufVxuXG4uZmEtdHJhc2g6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxZjhcIjtcbn1cblxuLmZhLXRyYXNoLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjJlZFwiO1xufVxuXG4uZmEtdHJhc2gtcmVzdG9yZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjgyOVwiO1xufVxuXG4uZmEtdHJhc2gtcmVzdG9yZS1hbHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY4MmFcIjtcbn1cblxuLmZhLXRyZWU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxYmJcIjtcbn1cblxuLmZhLXRyZWxsbzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE4MVwiO1xufVxuXG4uZmEtdHJpcGFkdmlzb3I6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyNjJcIjtcbn1cblxuLmZhLXRyb3BoeTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA5MVwiO1xufVxuXG4uZmEtdHJ1Y2s6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwZDFcIjtcbn1cblxuLmZhLXRydWNrLWxvYWRpbmc6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY0ZGVcIjtcbn1cblxuLmZhLXRydWNrLW1vbnN0ZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY2M2JcIjtcbn1cblxuLmZhLXRydWNrLW1vdmluZzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjRkZlwiO1xufVxuXG4uZmEtdHJ1Y2stcGlja3VwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNjNjXCI7XG59XG5cbi5mYS10c2hpcnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1NTNcIjtcbn1cblxuLmZhLXR0eTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFlNFwiO1xufVxuXG4uZmEtdHVtYmxyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTczXCI7XG59XG5cbi5mYS10dW1ibHItc3F1YXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTc0XCI7XG59XG5cbi5mYS10djpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI2Y1wiO1xufVxuXG4uZmEtdHdpdGNoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWU4XCI7XG59XG5cbi5mYS10d2l0dGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDk5XCI7XG59XG5cbi5mYS10d2l0dGVyLXNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA4MVwiO1xufVxuXG4uZmEtdHlwbzM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY0MmJcIjtcbn1cblxuLmZhLXViZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY0MDJcIjtcbn1cblxuLmZhLXVidW50dTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjdkZlwiO1xufVxuXG4uZmEtdWlraXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY0MDNcIjtcbn1cblxuLmZhLXVtYnJhY286YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY4ZThcIjtcbn1cblxuLmZhLXVtYnJlbGxhOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGU5XCI7XG59XG5cbi5mYS11bWJyZWxsYS1iZWFjaDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjVjYVwiO1xufVxuXG4uZmEtdW5kZXJsaW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGNkXCI7XG59XG5cbi5mYS11bmRvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGUyXCI7XG59XG5cbi5mYS11bmRvLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjJlYVwiO1xufVxuXG4uZmEtdW5pcmVnaXN0cnk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY0MDRcIjtcbn1cblxuLmZhLXVuaXR5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMDQ5XCI7XG59XG5cbi5mYS11bml2ZXJzYWwtYWNjZXNzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjlhXCI7XG59XG5cbi5mYS11bml2ZXJzaXR5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTljXCI7XG59XG5cbi5mYS11bmxpbms6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxMjdcIjtcbn1cblxuLmZhLXVubG9jazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA5Y1wiO1xufVxuXG4uZmEtdW5sb2NrLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjEzZVwiO1xufVxuXG4uZmEtdW5zcGxhc2g6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUwN2NcIjtcbn1cblxuLmZhLXVudGFwcGQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY0MDVcIjtcbn1cblxuLmZhLXVwbG9hZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA5M1wiO1xufVxuXG4uZmEtdXBzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmN2UwXCI7XG59XG5cbi5mYS11c2I6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyODdcIjtcbn1cblxuLmZhLXVzZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMDdcIjtcbn1cblxuLmZhLXVzZXItYWx0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNDA2XCI7XG59XG5cbi5mYS11c2VyLWFsdC1zbGFzaDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjRmYVwiO1xufVxuXG4uZmEtdXNlci1hc3Ryb25hdXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY0ZmJcIjtcbn1cblxuLmZhLXVzZXItY2hlY2s6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY0ZmNcIjtcbn1cblxuLmZhLXVzZXItY2lyY2xlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMmJkXCI7XG59XG5cbi5mYS11c2VyLWNsb2NrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNGZkXCI7XG59XG5cbi5mYS11c2VyLWNvZzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjRmZVwiO1xufVxuXG4uZmEtdXNlci1lZGl0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNGZmXCI7XG59XG5cbi5mYS11c2VyLWZyaWVuZHM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1MDBcIjtcbn1cblxuLmZhLXVzZXItZ3JhZHVhdGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1MDFcIjtcbn1cblxuLmZhLXVzZXItaW5qdXJlZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjcyOFwiO1xufVxuXG4uZmEtdXNlci1sb2NrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNTAyXCI7XG59XG5cbi5mYS11c2VyLW1kOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGYwXCI7XG59XG5cbi5mYS11c2VyLW1pbnVzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNTAzXCI7XG59XG5cbi5mYS11c2VyLW5pbmphOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNTA0XCI7XG59XG5cbi5mYS11c2VyLW51cnNlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmODJmXCI7XG59XG5cbi5mYS11c2VyLXBsdXM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMzRcIjtcbn1cblxuLmZhLXVzZXItc2VjcmV0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjFiXCI7XG59XG5cbi5mYS11c2VyLXNoaWVsZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjUwNVwiO1xufVxuXG4uZmEtdXNlci1zbGFzaDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjUwNlwiO1xufVxuXG4uZmEtdXNlci10YWc6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1MDdcIjtcbn1cblxuLmZhLXVzZXItdGllOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNTA4XCI7XG59XG5cbi5mYS11c2VyLXRpbWVzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjM1XCI7XG59XG5cbi5mYS11c2VyczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjBjMFwiO1xufVxuXG4uZmEtdXNlcnMtY29nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNTA5XCI7XG59XG5cbi5mYS11c2Vycy1zbGFzaDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTA3M1wiO1xufVxuXG4uZmEtdXNwczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjdlMVwiO1xufVxuXG4uZmEtdXNzdW5uYWg6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY0MDdcIjtcbn1cblxuLmZhLXV0ZW5zaWwtc3Bvb246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyZTVcIjtcbn1cblxuLmZhLXV0ZW5zaWxzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMmU3XCI7XG59XG5cbi5mYS12YWFkaW46YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY0MDhcIjtcbn1cblxuLmZhLXZlY3Rvci1zcXVhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1Y2JcIjtcbn1cblxuLmZhLXZlbnVzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjIxXCI7XG59XG5cbi5mYS12ZW51cy1kb3VibGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMjZcIjtcbn1cblxuLmZhLXZlbnVzLW1hcnM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMjhcIjtcbn1cblxuLmZhLXZpYWNvaW46YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyMzdcIjtcbn1cblxuLmZhLXZpYWRlbzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjJhOVwiO1xufVxuXG4uZmEtdmlhZGVvLXNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjJhYVwiO1xufVxuXG4uZmEtdmlhbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjQ5MlwiO1xufVxuXG4uZmEtdmlhbHM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY0OTNcIjtcbn1cblxuLmZhLXZpYmVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNDA5XCI7XG59XG5cbi5mYS12aWRlbzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAzZFwiO1xufVxuXG4uZmEtdmlkZW8tc2xhc2g6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY0ZTJcIjtcbn1cblxuLmZhLXZpaGFyYTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjZhN1wiO1xufVxuXG4uZmEtdmltZW86YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY0MGFcIjtcbn1cblxuLmZhLXZpbWVvLXNxdWFyZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE5NFwiO1xufVxuXG4uZmEtdmltZW8tdjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI3ZFwiO1xufVxuXG4uZmEtdmluZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFjYVwiO1xufVxuXG4uZmEtdmlydXM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUwNzRcIjtcbn1cblxuLmZhLXZpcnVzLXNsYXNoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMDc1XCI7XG59XG5cbi5mYS12aXJ1c2VzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMDc2XCI7XG59XG5cbi5mYS12azpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE4OVwiO1xufVxuXG4uZmEtdm52OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNDBiXCI7XG59XG5cbi5mYS12b2ljZW1haWw6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY4OTdcIjtcbn1cblxuLmZhLXZvbGxleWJhbGwtYmFsbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjQ1ZlwiO1xufVxuXG4uZmEtdm9sdW1lLWRvd246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMjdcIjtcbn1cblxuLmZhLXZvbHVtZS1tdXRlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNmE5XCI7XG59XG5cbi5mYS12b2x1bWUtb2ZmOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMDI2XCI7XG59XG5cbi5mYS12b2x1bWUtdXA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwMjhcIjtcbn1cblxuLmZhLXZvdGUteWVhOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNzcyXCI7XG59XG5cbi5mYS12ci1jYXJkYm9hcmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY3MjlcIjtcbn1cblxuLmZhLXZ1ZWpzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNDFmXCI7XG59XG5cbi5mYS13YWxraW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNTU0XCI7XG59XG5cbi5mYS13YWxsZXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1NTVcIjtcbn1cblxuLmZhLXdhcmVob3VzZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjQ5NFwiO1xufVxuXG4uZmEtd2F0ZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY3NzNcIjtcbn1cblxuLmZhLXdhdmUtc3F1YXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmODNlXCI7XG59XG5cbi5mYS13YXplOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmODNmXCI7XG59XG5cbi5mYS13ZWVibHk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY1Y2NcIjtcbn1cblxuLmZhLXdlaWJvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMThhXCI7XG59XG5cbi5mYS13ZWlnaHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY0OTZcIjtcbn1cblxuLmZhLXdlaWdodC1oYW5naW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNWNkXCI7XG59XG5cbi5mYS13ZWl4aW46YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxZDdcIjtcbn1cblxuLmZhLXdoYXRzYXBwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMjMyXCI7XG59XG5cbi5mYS13aGF0c2FwcC1zcXVhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY0MGNcIjtcbn1cblxuLmZhLXdoZWVsY2hhaXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxOTNcIjtcbn1cblxuLmZhLXdobWNzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNDBkXCI7XG59XG5cbi5mYS13aWZpOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMWViXCI7XG59XG5cbi5mYS13aWtpcGVkaWEtdzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI2NlwiO1xufVxuXG4uZmEtd2luZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjcyZVwiO1xufVxuXG4uZmEtd2luZG93LWNsb3NlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNDEwXCI7XG59XG5cbi5mYS13aW5kb3ctbWF4aW1pemU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyZDBcIjtcbn1cblxuLmZhLXdpbmRvdy1taW5pbWl6ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjJkMVwiO1xufVxuXG4uZmEtd2luZG93LXJlc3RvcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYyZDJcIjtcbn1cblxuLmZhLXdpbmRvd3M6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxN2FcIjtcbn1cblxuLmZhLXdpbmUtYm90dGxlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNzJmXCI7XG59XG5cbi5mYS13aW5lLWdsYXNzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNGUzXCI7XG59XG5cbi5mYS13aW5lLWdsYXNzLWFsdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjVjZVwiO1xufVxuXG4uZmEtd2l4OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNWNmXCI7XG59XG5cbi5mYS13aXphcmRzLW9mLXRoZS1jb2FzdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjczMFwiO1xufVxuXG4uZmEtd29sZi1wYWNrLWJhdHRhbGlvbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjUxNFwiO1xufVxuXG4uZmEtd29uLXNpZ246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxNTlcIjtcbn1cblxuLmZhLXdvcmRwcmVzczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE5YVwiO1xufVxuXG4uZmEtd29yZHByZXNzLXNpbXBsZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjQxMVwiO1xufVxuXG4uZmEtd3BiZWdpbm5lcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI5N1wiO1xufVxuXG4uZmEtd3BleHBsb3JlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjJkZVwiO1xufVxuXG4uZmEtd3Bmb3JtczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjI5OFwiO1xufVxuXG4uZmEtd3ByZXNzcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjNlNFwiO1xufVxuXG4uZmEtd3JlbmNoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMGFkXCI7XG59XG5cbi5mYS14LXJheTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjQ5N1wiO1xufVxuXG4uZmEteGJveDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjQxMlwiO1xufVxuXG4uZmEteGluZzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE2OFwiO1xufVxuXG4uZmEteGluZy1zcXVhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxNjlcIjtcbn1cblxuLmZhLXktY29tYmluYXRvcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjIzYlwiO1xufVxuXG4uZmEteWFob286YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxOWVcIjtcbn1cblxuLmZhLXlhbW1lcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjg0MFwiO1xufVxuXG4uZmEteWFuZGV4OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNDEzXCI7XG59XG5cbi5mYS15YW5kZXgtaW50ZXJuYXRpb25hbDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjQxNFwiO1xufVxuXG4uZmEteWFybjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjdlM1wiO1xufVxuXG4uZmEteWVscDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjFlOVwiO1xufVxuXG4uZmEteWVuLXNpZ246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxNTdcIjtcbn1cblxuLmZhLXlpbi15YW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNmFkXCI7XG59XG5cbi5mYS15b2FzdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjJiMVwiO1xufVxuXG4uZmEteW91dHViZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjE2N1wiO1xufVxuXG4uZmEteW91dHViZS1zcXVhcmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGY0MzFcIjtcbn1cblxuLmZhLXpoaWh1OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmNjNmXCI7XG59XG5cbi5zci1vbmx5IHtcbiAgYm9yZGVyOiAwO1xuICBjbGlwOiByZWN0KDAsIDAsIDAsIDApO1xuICBoZWlnaHQ6IDFweDtcbiAgbWFyZ2luOiAtMXB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwYWRkaW5nOiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxcHg7XG59XG5cbi5zci1vbmx5LWZvY3VzYWJsZTphY3RpdmUsIC5zci1vbmx5LWZvY3VzYWJsZTpmb2N1cyB7XG4gIGNsaXA6IGF1dG87XG4gIGhlaWdodDogYXV0bztcbiAgbWFyZ2luOiAwO1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgcG9zaXRpb246IHN0YXRpYztcbiAgd2lkdGg6IGF1dG87XG59XG5cbi5mYWIge1xuICBmb250LWZhbWlseTogXCJGb250IEF3ZXNvbWUgQnJhbmRzXCI7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG59XG5cbi5mYWwsXG4uZmFyIHtcbiAgZm9udC1mYW1pbHk6IFwiRm9udCBBd2Vzb21lIFJlZ3VsYXJcIjtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbn1cblxuLmZhLFxuLmZhcyB7XG4gIGZvbnQtZmFtaWx5OiBcIkZvbnQgQXdlc29tZSBTb2xpZFwiO1xuICBmb250LXdlaWdodDogOTAwO1xufVxuXG5ib2R5LFxucCB7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mZi1yZWd1bGFyKTtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBmb250LXdlaWdodDogNDAwO1xuICBsaW5lLWhlaWdodDogMS41O1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tbHMtZGVmYXVsdCk7XG59XG5cbmgxIHtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZmLW1lZGl1bSk7XG4gIGZvbnQtc2l6ZTogMzVweDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGluZS1oZWlnaHQ6IDEuMTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWxzLWRlZmF1bHQpO1xuICBtYXJnaW4tYmxvY2stZW5kOiAyNXB4O1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIGgxIHtcbiAgICBmb250LXNpemU6IDQ4cHg7XG4gIH1cbn1cbmJvZHk6bm90KFtkYXRhLWRlYWxlci1wcml2YXRlXSkgaDEgLmZvbnQtdm9sdm8ge1xuICBmb250LWZhbWlseTogdmFyKC0tZmYtYnJvYWQpO1xuICBmb250LXNpemU6IDQ4cHg7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGxpbmUtaGVpZ2h0OiAwLjk1O1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tbHMtdm9sdm8pO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIGJvZHk6bm90KFtkYXRhLWRlYWxlci1wcml2YXRlXSkgaDEgLmZvbnQtdm9sdm8ge1xuICAgIGZvbnQtc2l6ZTogNjBweDtcbiAgICBsaW5lLWhlaWdodDogMC45NTtcbiAgfVxufVxuXG5oMiB7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mZi1tZWRpdW0pO1xuICBmb250LXNpemU6IDI3cHg7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjI7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1scy1kZWZhdWx0KTtcbiAgbWFyZ2luLWJsb2NrLWVuZDogMjVweDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICBoMiB7XG4gICAgZm9udC1zaXplOiAzMnB4O1xuICB9XG59XG5ib2R5Om5vdChbZGF0YS1kZWFsZXItcHJpdmF0ZV0pIGgyIC5mb250LXZvbHZvIHtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZmLWJyb2FkKTtcbiAgZm9udC1zaXplOiA0OHB4O1xuICBmb250LXdlaWdodDogNTAwO1xuICBsaW5lLWhlaWdodDogMC45NTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWxzLXZvbHZvKTtcbn1cblxuaDMge1xuICBmb250LWZhbWlseTogdmFyKC0tZmYtbWVkaXVtKTtcbiAgZm9udC1zaXplOiAyMXB4O1xuICBmb250LXdlaWdodDogNDAwO1xuICBsaW5lLWhlaWdodDogMS4yO1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tbHMtZGVmYXVsdCk7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgaDMge1xuICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgfVxufVxuXG5oNCB7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mZi1tZWRpdW0pO1xuICBmb250LXNpemU6IDE2cHg7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1scy1kZWZhdWx0KTtcbn1cblxuaDUge1xuICBmb250LWZhbWlseTogdmFyKC0tZmYtbWVkaXVtKTtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBmb250LXdlaWdodDogNDAwO1xuICBsaW5lLWhlaWdodDogMS41O1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tbHMtZGVmYXVsdCk7XG59XG5cbi5ib2R5LXRleHQtLWxhcmdlIHtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZmLWxpZ2h0KTtcbiAgZm9udC1zaXplOiAyMHB4O1xuICBmb250LXdlaWdodDogMzAwO1xuICBsaW5lLWhlaWdodDogMS40O1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tbHMtZGVmYXVsdCk7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG46cm9vdCB7XG4gIC0tdi1pY29uLXNpemU6IDI0cHg7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTYwcHgpIHtcbiAgOnJvb3Qge1xuICAgIC0tdi1pY29uLXNpemU6IDE2cHg7XG4gIH1cbn1cblxuLmljb24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAzMnB4O1xuICBoZWlnaHQ6IDMycHg7XG59XG5cbi52LWljb24ge1xuICB3aWR0aDogdmFyKC0tdi1pY29uLXNpemUpO1xuICBoZWlnaHQ6IHZhcigtLXYtaWNvbi1zaXplKTtcbn1cbi52LWljb24gc3ZnIHBhdGgge1xuICBmaWxsOiBjdXJyZW50Q29sb3I7XG59XG4udi1pY29uLXNwcml0ZSB7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIG1heC1oZWlnaHQ6IDA7XG4gIG1heC13aWR0aDogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cbi52LWljb24tLTE2IHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5NjBweCkge1xuICAudi1pY29uLS0xNiB7XG4gICAgZGlzcGxheTogaW5saW5lO1xuICB9XG59XG4udi1pY29uLS0yNCB7XG4gIGRpc3BsYXk6IGlubGluZTtcbiAgeTogMDtcbiAgLyogc3R5bGVsaW50LWRpc2FibGUgKi9cbiAgLyogc3R5bGVsaW50LWVuYWJsZSAqL1xufVxuQG1lZGlhIG5vdCBhbGwgYW5kIChtaW4tcmVzb2x1dGlvbjogMC4wMDFkcGNtKSB7XG4gIC52LWljb24tLTI0IHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTE2cHgpO1xuICB9XG59XG5Ac3VwcG9ydHMgKC13ZWJraXQtdG91Y2gtY2FsbG91dDogbm9uZSkge1xuICAudi1pY29uLS0yNCB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xNnB4KTtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDk2MHB4KSB7XG4gIC52LWljb24tLTI0IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi5oaWRkZW4ge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAuaGlkZGVuLXBob25lIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWF4LXdpZHRoOiA5NTlweCkge1xuICAuaGlkZGVuLXRhYmxldCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDk2MHB4KSB7XG4gIC5oaWRkZW4tZGVza3RvcCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgfVxufVxuXG4udmlzaWJpbGl0eS0taGlkZGVuIHtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4uZm9yY2UtZGlzcGxheS0tYmxvY2sge1xuICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xufVxuLmZvcmNlLWRpc3BsYXktLW5vbmUge1xuICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xufVxuXG4ubG9jay1zY3JvbGwge1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG46cm9vdCB7XG4gIC0tdi1pY29uLXNpemU6IDI0cHg7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTYwcHgpIHtcbiAgOnJvb3Qge1xuICAgIC0tdi1pY29uLXNpemU6IDE2cHg7XG4gIH1cbn1cblxuLnYtaWNvbiB7XG4gIHdpZHRoOiB2YXIoLS12LWljb24tc2l6ZSk7XG4gIGhlaWdodDogdmFyKC0tdi1pY29uLXNpemUpO1xufVxuLnYtaWNvbiBzdmcgcGF0aCB7XG4gIGZpbGw6IGN1cnJlbnRDb2xvcjtcbn1cbi52LWljb24tc3ByaXRlIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbWF4LWhlaWdodDogMDtcbiAgbWF4LXdpZHRoOiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuLnYtaWNvbi0tMTYge1xuICBkaXNwbGF5OiBub25lO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDk2MHB4KSB7XG4gIC52LWljb24tLTE2IHtcbiAgICBkaXNwbGF5OiBpbmxpbmU7XG4gIH1cbn1cbi52LWljb24tLTI0IHtcbiAgZGlzcGxheTogaW5saW5lO1xuICB5OiAwO1xufVxuLmJyb3dzZXItLXNhZmFyaSAudi1pY29uLS0yNCB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTZweCk7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTYwcHgpIHtcbiAgLnYtaWNvbi0tMjQge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuOnJvb3Qge1xuICAtLWJ1dHRvbi1pY29uLXRyYW5zZm9ybTogbm9uZTtcbiAgLS1idXR0b24taWNvbi10cmFuc2Zvcm0taG92ZXI6IHRyYW5zbGF0ZVgoNXB4KTtcbn1cblxuaHRtbFtkaXI9cnRsXSB7XG4gIC0tYnV0dG9uLWljb24tdHJhbnNmb3JtOiBzY2FsZVgoLTEpO1xuICAtLWJ1dHRvbi1pY29uLXRyYW5zZm9ybS1ob3ZlcjogdHJhbnNsYXRlWCgtNXB4KSBzY2FsZVgoLTEpO1xufVxuXG4uZGlyZWN0aW9uLS1sdHIge1xuICBkaXJlY3Rpb246IGx0cjtcbn1cblxuLmRpcmVjdGlvbi0tcnRsIHtcbiAgZGlyZWN0aW9uOiBydGw7XG59XG5cbi8qXG5BbHNvIHBsZWFzZSBmb2xsb3cgdGhpc1xuRG8geW91ciBwcm9qZWN0IGhhdmUgZGlmZXJlbnQgY2hhcnNldCBsYW5ndWFnZXMgdG8gYWNjb3VudCB3aXRoP1xuICAgICAgLSBZZXMgLT4gZm9sbG93IGh0dHBzOi8vcHJvamVjdHMubmV0Y2VudHJpYy5iaXovd2lraS9kaXNwbGF5L0ZST05URU5EL0NTUystK0ZvbnQrTm9ybWFsaXphdGlvblxuICAgICAgLSBObyAtPiBZb3UgY2FuIHN0aWxsIHVzZSBpdCwgdGhlcmUgYXJlIHRvbnMgb2YgYWR2YW50YWdlcywgYnV0IGl0cyBjcmVhdGUgc29tZSBleHRyYSBjc3MgYW5kIGxheW91dCByZW5kZXJpbmdcbiovXG4vKlxuICAqIERlc2lnbiBzcGVjOlxuICAqIGh0dHBzOi8vd3d3LmZpZ21hLmNvbS9maWxlL1NSNHJ2UWxObkNtUE1yUTlXWWFJcXYvYnJhbmNoL1RKcWtGeW1xMDl3ZjhLd21ZMVdOY2ovVm9sdm8tQUVNLURlc2lnbi1zeXN0ZW0/dHlwZT1kZXNpZ24mbm9kZS1pZD03LTI2JnQ9cEFtOTE2VlJpcUNPRDJJMS0wXG4qL1xuLyoqXG4gKiB6LWluZGV4ZXMgZnJvbSBsb3dlciB0byAtPiBoaWdoZXJcbiAqL1xuLyogZG9jXG4tLS1cbnRpdGxlOiBQaXhlbCB0byBlbVxubmFtZTogbm4tcHgtdG8tZW1cbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxuXG5DYWxjdWxhdGUgdGhlIGVtIHdpdGggYSBnaXZlbiBwaXhlbCB3aXRoIHRoZSBnaXZlbiBiYXNlIGZvbnQgc2l6ZVxuSWYgeW91IGRvbid0IHNldCBhICRiYXNlIHRoZSAkYmFzZS1mb250LXNpemUgaXMgdXNlZCBhcyB0aGUgY29udGV4dFxuXG4jIyBMaXZlIFRlbXBsYXRlIGFiYnJldmlhdGlvbnNcbi0tLVxuLXB0dVxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJHZhbHVlID0gcGl4ZWwgYmFzZWQgbnVtYmVyICh3aXRob3V0IHVuaXQpXG5AcGFyYW1ldGVyICRiYXNlID0gcGl4ZWwgYmFzZWQgbnVtYmVyICh3aXRob3V0IHVuaXQpXG5cbiMjIERlcGVuZGVuY2llc1xuLS0tXG5ubi1zdHJpcC11bml0XG5cbiMjIEV4YW1wbGVcbi0tLVxuYGBgaHRtbF9leGFtcGxlXG5ubi1weC10by1lbSg1KSAvLyBPdXRwdXQ6IDAuMzEyNWVtXG5ubi1weC10by1lbSg1LCAxMCkgLy8gT3V0cHV0OiAwLjVlbVxubm4tcHgtdG8tZW0oNSwgMjApIC8vIE91dHB1dDogMC4yNWVtXG5gYGBcbiovXG4vKiBkb2Ncbi0tLVxudGl0bGU6IFBpeGVsIHRvIHJlbVxubmFtZTogbm4tcHgtdG8tcmVtXG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cblxuQ2FsY3VsYXRlIHRoZSByZW0gd2l0aCBhIGdpdmVuIHBpeGVsIHdpdGggdGhlIGdpdmVuIGJhc2UgZm9udCBzaXplXG5cbkluOiAgNXB4XG5PdXQ6IDAuMzEyNXJlbVxuXG4jIyBMaXZlIFRlbXBsYXRlIGFiYnJldmlhdGlvbnNcbi0tLVxuLXJlbVxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJHZhbHVlID0gcGl4ZWwgYmFzZWQgbnVtYmVyICh3aXRob3V0IHVuaXQpXG5cbiMjIERlcGVuZGVuY2llc1xuLS0tXG5ubi1zdHJpcC11bml0XG5cbiMjIEV4YW1wbGVcbi0tLVxuYGBgaHRtbF9leGFtcGxlXG5ubi1weC10by1yZW0oNSkgLy8gT3V0cHV0IDAuMzEyNXJlbVxuYGBgXG5cbiovXG4vKiBkb2Ncbi0tLVxudGl0bGU6IFBpeGVsIHRvIHVuaXRcbm5hbWU6IHB4LXRvLXVuaXRcbmNhdGVnb3J5OiBtaXhpbnNcbi0tLVxuXG5TZXQgYSBwcm9wZXJ0eSBhbmQgdmFsdWUgKHBpeGVsIGJhc2VkIHdpdGhvdXQgdW5pdClcblxuQ2FsY3VsYXRlcyByZW0gLyBlbSAvICUgZnJvbSBnaXZlbiBwaXhlbCBhbmQgYmFzZSAoZGVmYXVsdCBiYXNlIGlzIHRoZVxuYmFzZS1mb250LXNpemUsIDE2cHgpXG5JZiBydGwgaXMgdHJ1ZSwgdGhpcyBtaXhpbiBoYW5kbGVzIGFsbCB0aGUgZGlyZWN0aW9uIHN0dWZmOlxuLSBTd2l0Y2hpbmcgdGhlIHZhbHVlcywgd2hlbiB3ZSBoYXZlIGV4YWN0bHkgNCB2YWx1ZXNcbi0gU3dpdGNoaW5nIGxlZnQgYW5kIHJpZ2h0IGluIHByb3BlcnRpZXMgKHBhZGRpbmcgYW5kIG1hcmdpbilcblxuIyMgTGl2ZSBUZW1wbGF0ZSBhYmJyZXZpYXRpb25zXG4tLS1cbi1wdHUgKGZvciBlbSBvciAlIHRvIHBpeGVsIC0gd2l0aCBiYXNlIHBhcmFtZXRlcilcbi1yZW0gKGZvciByZW0gdG8gcGl4ZWwgLSB3aXRob3V0IGJhc2UgcGFyYW1ldGVyKVxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJHByb3BlcnR5ID0gcGFkZGluZyB8IG1hcmdpbiB8IGZvbnQtc2l6ZSB8IHdpZHRoIHwgaGVpZ2h0XG5AcGFyYW1ldGVyICR2YWx1ZSA9IFBpeGVsIGJhc2VkIG51bWJlciAtIGFkZCBweCB0byBrZWVwIHRoZSBweCBmb3IgYSB2YWx1ZVxuQHBhcmFtZXRlciAkYmFzZSA9IHB4IGJhc2VkIG51bWJlciwgRGVmYXVsdDogMTZweFxuQHBhcmFtZXRlciAkdW5pdCA9IFNldCB1bml0OiBweCB8IGVtIHwgcmVtIHwgcGVyY2VudFxuXG4jIyBEZXBlbmRlbmNpZXNcbi0tLVxuYWJzdHJhY3QvZnVuY3Rpb25zL3N3YXAtbGVmdC1yaWdodFxuYWJzdHJhY3QvZnVuY3Rpb25zL3N0cmlwLXVuaXRcblxuIyMgRXhhbXBsZVxuLS0tXG5cbmBgYGh0bWxfZXhhbXBsZVxuQGluY2x1ZGUgbm4tcHgtdG8tdW5pdChwYWRkaW5nLCAwIDEwcHggMjAgMCk7ID0+IHBhZGRpbmc6IDAgMTBweCAxLjI1cmVtIDA7XG5AaW5jbHVkZSBubi1weC10by11bml0KHBhZGRpbmcsIDAgMTAgMjAgMCk7ID0+IHBhZGRpbmc6IDAgMC42MjVyZW0gMS4yNXJlbSAwO1xuQGluY2x1ZGUgbm4tcHgtdG8tdW5pdChwYWRkaW5nLWxlZnQsIDEwKTtcbkBpbmNsdWRlIG5uLXB4LXRvLXVuaXQocGFkZGluZy1yaWdodCwgMTApO1xuQGluY2x1ZGUgbm4tcHgtdG8tdW5pdChtYXJnaW4sIDAgMTAgMjAgMCk7XG5AaW5jbHVkZSBubi1weC10by11bml0KG1hcmdpbi1sZWZ0LCAxMCk7XG5AaW5jbHVkZSBubi1weC10by11bml0KG1hcmdpbi1yaWdodCwgMTApO1xuQGluY2x1ZGUgbm4tcHgtdG8tdW5pdChmb250LXNpemUsIDIwKTtcbkBpbmNsdWRlIG5uLXB4LXRvLXVuaXQod2lkdGgsIDEwMCk7XG5AaW5jbHVkZSBubi1weC10by11bml0KG1pbi13aWR0aCwgMTAwKTtcbkBpbmNsdWRlIG5uLXB4LXRvLXVuaXQobWFubi13aWR0aCwgMTAwKTtcbkBpbmNsdWRlIG5uLXB4LXRvLXVuaXQoaGVpZ2h0LCAxMDApO1xuQGluY2x1ZGUgbm4tcHgtdG8tdW5pdChtaW4taGVpZ2h0LCAxMDApO1xuQGluY2x1ZGUgbm4tcHgtdG8tdW5pdChtYW5uLWhlaWdodCwgMTAwKTtcbmBgYFxuXG4jIyBTb3VyY2Vcbi0tLVxuaHR0cDovL2Nzcy10cmlja3MuY29tL3NuaXBwZXRzL2Nzcy9sZXNzLW1peGluLWZvci1yZW0tZm9udC1zaXppbmcvXG5cbiovXG4vKiBkb2Ncbi0tLVxudGl0bGU6IFBpeGVsIHRvIHVuaXRsZXNzXG5uYW1lOiBubi1weC10by11bml0bGVzc1xuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5cblRoaXMgbWFrZXMgdGhlIHNhbWUgY2FsY3VsYXRpb24gYXMgcHggdG8gZW0uIEJ1dCBpdCBkb24ndCBwcmludCBvdXQgdGhlIHVuaXQuXG5cblVzZSB0aGlzIGZvciBsaW5lLWhlaWdodHMuXG5cbiMjIExpdmUgVGVtcGxhdGUgYWJicmV2aWF0aW9uc1xuLS0tXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkdmFsdWUgPSBwaXhlbCBiYXNlZCBudW1iZXIgKHdpdGhvdXQgdW5pdClcbkBwYXJhbWV0ZXIgJGJhc2UgPSBwaXhlbCBiYXNlZCBudW1iZXIgKHdpdGhvdXQgdW5pdClcblxuIyMgRGVwZW5kZW5jaWVzXG4tLS1cblxuIyMgRXhhbXBsZVxuLS0tXG5cbmBgYGh0bWxfZXhhbXBsZVxubGluZS1oZWlnaHQ6IG5uLXB4LXRvLXVuaXRsZXNzKDUpIC8vIE91dHB1dDogMC4zMTI1XG5gYGBcblxuIyMgU291cmNlXG4tLS1cblxuKi9cbi8qIGRvY1xuLS0tXG50aXRsZTogU3RyaXAgdW5pdFxubmFtZTogbm4tc3RyaXAtdW5pdFxuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5cblN0cmlwcyBvZiB0aGUgdW5pdCBvZiBhIG51bWJlclxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJG51bSA9IG51bWJlciB3aXRoIHVuaXQgKDVweCwgNWVtLCA1cmVtKVxuXG4jIyBFeGFtcGxlXG4tLS1cblxuYGBgaHRtbF9leGFtcGxlXG5ubi1zdHJpcC11bml0KDVweCkgLy9PdXRwdXQ6IDVcbm5uLXN0cmlwLXVuaXQoMTBlbSkgLy8gT3V0cHV0OiAxMFxubm4tc3RyaXAtdW5pdCgxNXJlbSkgLy8gT3V0cHV0OiAxNVxuYGBgXG5cbiovXG4vKiBkb2Ncbi0tLVxudGl0bGU6IHotaW5kZXhcbm5hbWU6IG5uLXotaW5kZXhcbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxuXG5CZWNhdXNlIHotaW5kaWNlcyBjYW4gZ2V0IHRyaWNreSB3ZSBtYW5hZ2UgdGhlbSBpbiB0aGUgdGhlbWUuc2NzcyBnbG9iYWxseS5cblxuQWx3YXlzIHVzZSB0aGlzIG1peGluIHRvIHNldCBzZXQgYSB6LWluZGV4LlxuXG5SZWFkIHRoZSBCZXN0IFByYWN0aWNlIHRvIGdldCBhbiBmdWxsIGRvY3VtZW50YXRpb246XG5odHRwczovL3Byb2plY3RzLm5ldGNlbnRyaWMuYml6L3dpa2kvZGlzcGxheS9GUk9OVEVORC9Ib3crdG8rc2V0K2Erei1pbmRleFxuXG4jIyBMaXZlIFRlbXBsYXRlIGFiYnJldmlhdGlvbnNcbi0tLVxuLXpcblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICRlbGVtZW50ID0gTmFtZSBvZiB0aGUgZWxlbWVudCAobm9ybWFsbHkgdGhpcyB3aWxsIGJlIHRoZSBtb2R1bGUgbmFtZSBmb3IgdGhlIG1haW4gc3RhY2spXG5AcGFyYW1ldGVyICRsaXN0ID0gTmFtZSBvZiB0aGUgbGlzdCAoZGVmYXVsdCAkei1pbmRpY2VzKS4gTXVzdCBiZSBvbmx5IHNldCBmb3Igc3RhY2sgY29udGV4dFxuQHBhcmFtZXRlciAkbWluID0gU2V0IGEgbWluaW11bSB6LWluZGV4IHdoaWNoIHdpbGwgYmUgYWRkZWQgdG8gdGhlIGxpc3QuXG5cbiMjIERlcGVuZGVuY2llc1xuLS0tXG4kei1pbmRpY2VzIHZhcmlhYmxlIGluIHRoZSB0aGVtZS5zY3NzXG5cbiMjIEV4YW1wbGVcbi0tLVxuXG5gYGBodG1sX2V4YW1wbGVcblxuLy8gSW4gdGhlIFNBU1MgdGhlbWUgZmlsZVxuXG4kei1pbmRpY2VzOiBzbGlkZXIsIG1vZGFsLCBkaWFsb2csIG5hdmlnYXRpb247XG5cbi8vIEluIHRoZSBTQVNTIG1vZHVsZSBmaWxlXG5cbi5tb2RhbCB7XG4gICAgJl9fYmFzZSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgei1pbmRleDogbm4tei1pbmRleChtb2RhbCk7XG4gICAgfVxufVxuYGBgXG5cbiMjIFNvdXJjZVxuLS0tXG5odHRwOi8vd3d3LnNtYXNoaW5nbWFnYXppbmUuY29tLzIwMTQvMDYvMTIvc2Fzc3ktei1pbmRleC1tYW5hZ2VtZW50LWZvci1jb21wbGV4LWxheW91dHMvXG5cbiovXG4vKiBkb2Ncbi0tLVxudGl0bGU6IHJlbW92ZSBldmVyeSB1bml0XG5uYW1lOiBzdHJpcC11bml0XG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cbnJlbW92ZSBhbGwgdW5pdHNcblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICRudW1iZXIgPSBudW1iZXIgd2l0aCB1bml0XG5cbiMjIEV4YW1wbGVcbi0tLVxuYGBgaHRtbF9leGFtcGxlXG5zdHJpcC11bml0KDVweCkgLy8gT3V0cHV0OiA1XG5gYGBcbiovXG4vKlxuICAgIFRoaXMgbWl4aW4gY29udmVydHMgYW55IHVuaXRsZXNzIG51bWJlciAoZm9yIGV4YW1wbGUgNDApIHRvIHRoZSBjb3JyZWN0IHVuaXQsIGFjY29yZGluZyB0byB0aGUgZ2l2ZW4gYXhpcy5cblxuICAgIFBhcmFtZXRlcnM6XG4gICAgLSAkdmFsdWU6IHVuaXRsZXNzIG51bWJlciB0byBiZSBjb252ZXJ0ZWQuIEEgdW5pdCBpbiAkdmFsdWUgd2lsbCBjb3JyZXNwb25kIHRvIGEgcHggaW4gdGhlIGJyb3dzZXIsXG4gICAgICAgIG5vIG1hdHRlciBpZiBpdCdzIG91dHB1dCBhcyBweCBvciByZW1cblxuICAgIFJldHVybnNcbiAgICAtIEhvcml6b250YWw6IHdpbGwgY29udmVydCB0aGUgbnVtYmVyIHRvIHBpeGVscyAoNDBweClcbiAgICAtIFZlcnRpY2FsOiB3aWxsIGNvbnZlcnQgdGhlIG51bWJlciB0byByZW0gKGlmIHJlbSA9PT0gMTZweCwgdGhlbiA0MCB3aWxsIGJlIGNvbnZlcnRlZCB0byAyLjUgcmVtKVxuKi9cbi8qXG4gICAgQ29udmVydHMgYSB1bml0bGVzcyBudW1iZXIgdG8gdGhlIGNvcnJlc3BvbmRpbmcgdW5pdCBvbiB0aGUgaG9yaXpvbnRhbCBheGlzLlxuICAgIEJ5IGRlZmF1bHQgd2lsbCBjb252ZXJ0IHRoZSB2YWx1ZSB0byBweC5cbiovXG4vKlxuICAgIENvbnZlcnRzIGEgdW5pdGxlc3MgbnVtYmVyIHRvIHRoZSBjb3JyZXNwb25kaW5nIHVuaXQgb24gdGhlIHZlcnRpY2FsIGF4aXMuXG4gICAgQnkgZGVmYXVsdCB3aWxsIGNvbnZlcnQgdGhlIHZhbHVlIHRvIHJlbS5cbiovXG4vKiBzdHlsZWxpbnQtZGlzYWJsZSAqL1xuLyogZG9jXG4tLS1cbnRpdGxlOiBTd2FwIGxlZnQgcmlnaHQgdmFsdWVzXG5uYW1lOiBzd2FwLWxlZnQtcmlnaHQtdmFsdWVzXG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cblxuU3dhcCB0aGUgdmFsdWVzIGZvciByaWdodCBhbmQgbGVmdCB3aGVuICRydGwgaXMgc2V0IHRvIHRydWU6XG5cbkluOiAgMCA1cHggOHB4IDEycHhcbk91dDogMCAxMnB4IDhweCA1cHggKGluIHJ0bClcblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICR2YWx1ZXMgPSA0IG51bWJlcnMgKHdvcmtzIHdpdGggYWxsIHVuaXRzKVxuXG4jIyBFeGFtcGxlXG4tLS1cblxuYGBgaHRtbF9leGFtcGxlXG5zd2FwLWxlZnQtcmlnaHQtdmFsdWVzKDAgMXB4IDhweCAxMnB4KSAvLyAwIDEycHggOHB4IDFweFxuc3dhcC1sZWZ0LXJpZ2h0LXZhbHVlcygwIDFlbSA4ZW0gMTJlbSkgLy8gMCAxMmVtIDhlbSAxZW1cbndhcC1sZWZ0LXJpZ2h0LXZhbHVlcygwIDFyZW0gOHJlbSAxMnJlbSkgLy8gMCAxMnJlbSA4cmVtIDFyZW1cbmBgYFxuXG4jIyBTb3VyY2Vcbi0tLVxuaHR0cDovL3N0YWNrb3ZlcmZsb3cuY29tL3F1ZXN0aW9ucy8xNDE5OTMyMy9yaWdodC10by1sZWZ0LXJ0bC1zdXBwb3J0LWluLXNhc3MtcHJvamVjdFxuXG4qL1xuLyogc3R5bGVsaW50LWRpc2FibGUgKi9cbi8qIGRvY1xuLS0tXG50aXRsZTogU3dhcCBsZWZ0IHJpZ2h0IG5hbWVzXG5uYW1lOiBzd2FwLWxlZnQtcmlnaHQtbmFtZXNcbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxuXG5Td2FwIHRoZSBuYW1lcyByaWdodCBhbmQgbGVmdCB3aGVuICRydGwgaXMgc2V0IHRvIHRydWUuXG5JZiB0aGUgdmFsdWUgaXMgbm90IHJpZ2h0IG9yIGxlZnQgaXQgcmV0dXJucyB0aGUgb3JpZ2luYWwgdmFsdWUuXG5cbkluOiAgcmlnaHRcbk91dDogbGVmdCAoaW4gcnRsKSwgcmlnaHQgKGluIGx0cilcblxuIyMgTGl2ZSBUZW1wbGF0ZSBhYmJyZXZpYXRpb25zXG4tLS1cblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICRvcmlnaW4gPSByaWdodCB8IGxlZnRcblxuIyMgRXhhbXBsZVxuLS0tXG5cbmBgYGh0bWxfZXhhbXBsZVxuc3dhcC1sZWZ0LXJpZ2h0LW5hbWUobGVmdClcbnN3YXAtbGVmdC1yaWdodC1uYW1lKHJpZ2h0KVxuYGBgXG5cbiMjIFNvdXJjZVxuLS0tXG5odHRwOi8vc3RhY2tvdmVyZmxvdy5jb20vcXVlc3Rpb25zLzE0MTk5MzIzL3JpZ2h0LXRvLWxlZnQtcnRsLXN1cHBvcnQtaW4tc2Fzcy1wcm9qZWN0XG5cbiovXG4vKiAgTGlzdCBvZiBDU1MgcHJvcGVydGllcyB0aGF0IHdpbGwgYWx3YXlzIGJlIG91dHB1dCBhdCBsZWFzdCBhcyAyIGRpZmZlcmVudCB2YWx1ZXNcbiAgICBpbiBvcmRlciB0byBiZSBhYmxlIHRvIGNvbnZlcnQgZWFjaCBvbmUgdG8gdGhlIGNvcnJlY3QgYXhpcyB1bml0ICovXG4vKlxuICAgIE1peGluIGZvciBhdXRvbWF0aWNhbGx5IGhhbmRsaW5nIHNwYWNpbmdzIGFyb3VuZC9iZXR3ZWVuIGVsZW1lbnRzLlxuXG4gICAgVGhpcyBtaXhpbiB3aWxsIGF1dG9tYXRpY2FsbHkgaW52ZXJ0IHRoZSBsZWYvcmlnaHQgZGlyZWN0aW9ucyBpbiBSVEwgbGFuZ3VhZ2VzLlxuICAgIEFsc28sIHRoZSB1bml0bGVzcyB2YWx1ZXMgd2lsbCBiZSBjb252ZXJ0ZWQgdG8gdGhlIHByb3BlciB1bml0IGFjY29yZGluZyB0byB0aGUgYXhpc1xuXG4gICAgUGFyYW1ldGVyczpcbiAgICAtICRwcm9wZXJ0eS1uYW1lOiBuYW1lIG9mIHRoZSBDU1MgcHJvcGVydHkgdGhhdCBzaG91bGQgYmUgb3V0cHV0LiBTdXBwb3J0ZWQgcHJvcGVydGllcyBhcmU6XG4gICAgICAgIG1hcmdpbiwgbWFyZ2luLXRvcCwgbWFyZ2luLXJpZ2h0LCBtYXJnaW4tYm90dG9tLCBtYXJnaW4tbGVmdFxuICAgICAgICBwYWRkaW5nLCBwYWRkaW5nLXRvcCwgcGFkZGluZy1yaWdodCwgcGFkZGluZy1ib3R0b20sIHBhZGRpbmctbGVmdFxuICAgICAgICB3aWR0aCwgaGVpZ2h0LCBtaW4td2lkdGgsIG1heC13aWR0aCwgbWluLWhlaWdodCwgbWluLWhlaWdodFxuICAgIC0gJHZhbHVlOiB2YWx1ZSB0aGF0IHdpbGwgYmUgb3V0cHV0IGFzIHBhcnQgb2YgdGhlIGdpdmVuIHByb3BlcnR5LiBTdXBwb3J0ZWQgdmFsdWVzIGFyZTpcbiAgICAgICAgVW5pdGxlc3MgbnVtYmVyICg0MCk6IHRoaXMgc2hvdWxkIGJlIHVzZWQgbW9zdCBvZiB0aGUgdGltZXMuIEl0IHdpbGwgYXV0b21hdGljYWxseSBiZSBjb252ZXJ0ZWRcbiAgICAgICAgICAgIHRvIHRoZSBjb3JyZWN0IHVuaXQgZGVwZW5kaW5nIG9uIHRoZSBheGlzIHdoZXJlIGl0J3MgdXNlZCAoaG9yaXpvbnRhbCBheGlzID0+IHB4LCB2ZXJ0aWNhbCBheGlzID0+IHJlbSkuXG4gICAgICAgICAgICBFYWNoIHVuaXQgaW4gJHZhbHVlIHdpbGwgY29ycmVzcG9uZCB0byBhIHB4IGluIHRoZSBicm93c2VyLCBubyBtYXR0ZXIgdG8gd2hpY2ggdW5pdCBpdCB3aWxsIGJlIGNvbnZlcnRlZC5cbiAgICAgICAgTnVtYmVyIHdpdGggdW5pdCAoNDBweCwgNDAlLi4uKTogdGhlIG51bWJlciBhbmQgdGhlIHVuaXQgd2lsbCBiZSBwcmVzZXJ2ZWQgYW5kIG9ubHkgdGhlIGxlZnQvcmlnaHQgaW52ZXJzaW9uXG4gICAgICAgICAgICB3aWxsIGJlIGRvbmUgZm9yIFJUTCBsYW5ndWFnZXNcbiAgICAgICAgTGlzdCBvZiB2YWx1ZXMgKDQwIDMwJSAyMCAxMCk6IG1hcmdpbiBhbmQgcGFkZGluZyBzaG9ydGhhbmRzIHdoaXRoIG11bHRpcGxlIHZhbHVlcyBhcmUgc3VwcG9ydGVkLlxuICAgICAgICAgICAgVGhlIGxlZnQvcmlnaHQgdmFsdWVzIHdpbGwgYmUgYXV0b21hdGljYWxseSBzd2FwcGVkIGluIFJUTCBhbmQgdGhlIHVuaXRsZXNzIG51bWJlcnMgd2lsbCBiZSBjb252ZXJ0ZWRcbiAgICAgICAgICAgIHRvIHRoZSBjb3JyZXNwb25kaW5nIHVuaXQuIFVuaXRsZXNzIGFuZCBudW1iZXJzIHdpdGggdW5pdHMgY2FuIGJlIG1peGVkIGluIHRoZSBzYW1lIGNhbGwuXG4gICAgICAgIFVzaW5nIGNhbGMoKSBpbiBhbnkgb2YgdGhlIHByZXZpb3VzIGV4YW1wbGVzIGlzIHN1cHBvcnRlZCwgYWx0aG91Z2ggbm8gdW5pdCBjb252ZXJzaW9uIHdpbGwgYmUgZG9uZVxuXG4gIyMgRXhhbXBsZVxuLS0tXG5cbmBgYGh0bWxfZXhhbXBsZVxuQGluY2x1ZGUgc3BhY2luZyhwYWRkaW5nLCAwIDEwcHggMjAgMCk7ID0+IHBhZGRpbmc6IDAgMTBweCAycmVtIDA7XG5AaW5jbHVkZSBzcGFjaW5nKHBhZGRpbmcsIDAgMTAgMjAgMCk7ID0+IHBhZGRpbmc6IDAgMTBweCAycmVtIDA7XG5AaW5jbHVkZSBzcGFjaW5nKHBhZGRpbmctbGVmdCwgMTApO1xuQGluY2x1ZGUgc3BhY2luZyhwYWRkaW5nLXJpZ2h0LCAxMCk7XG5AaW5jbHVkZSBzcGFjaW5nKG1hcmdpbiwgMCAxMCAyMCAwKTtcbkBpbmNsdWRlIHNwYWNpbmcobWFyZ2luLWxlZnQsIDEwKTtcbkBpbmNsdWRlIHNwYWNpbmcobWFyZ2luLXJpZ2h0LCAxMCk7XG5AaW5jbHVkZSBzcGFjaW5nKHdpZHRoLCAxMDApO1xuQGluY2x1ZGUgc3BhY2luZyhtaW4td2lkdGgsIDEwMCk7XG5AaW5jbHVkZSBzcGFjaW5nKG1heC13aWR0aCwgMTAwKTtcbkBpbmNsdWRlIHNwYWNpbmcoaGVpZ2h0LCAxMDApO1xuQGluY2x1ZGUgc3BhY2luZyhtaW4taGVpZ2h0LCAxMDApO1xuQGluY2x1ZGUgc3BhY2luZyhtYXgtaGVpZ2h0LCAxMDApO1xuYGBgXG4qL1xuLyogZG9jXG4tLS1cbnRpdGxlOiBDbGVhcmZpeFxubmFtZTogY2xlYXJmaXhcbmNhdGVnb3J5OiBtaXhpbnNcbi0tLVxuXG5DbGVhcnMgYWZ0ZXIgZmxvYXRpbmcgZWxlbWVudFxuXG5Vc2UgdGhpcyBtaXhpbiBvbmx5IGluc2lkZSBtZWRpYSBxdWVyaWVzIHdoZXJlIHlvdSBjYW4ndCB1c2UgdGhlXG5hYnN0cmFjdC9leHRlbmRzL3V0aWxzL19jbGVhcmZpeCB2ZXJzaW9uLCB3aGljaCBhZGRzIGxlc3MgY29kZSB0byBjc3NcblxuIyMgTGl2ZSBUZW1wbGF0ZSBhYmJyZXZpYXRpb25zXG4tLS1cblxuIyMgRXhhbXBsZVxuLS0tXG5cbmBgYGh0bWxfZXhhbXBsZVxuQGluY2x1ZGUgY2xlYXJmaXg7XG5gYGBcblxuIyMgU291cmNlXG4tLS1cbmh0dHBzOi8vY3NzLXRyaWNrcy5jb20vc25pcHBldHMvY3NzL2NsZWFyLWZpeC9cbiovXG4vKiBzdHlsZWxpbnQtZGlzYWJsZSBzdHJpbmctbm8tbmV3bGluZSAqL1xuLyogZG9jXG4tLS1cbnRpdGxlOiBmb2N1cyBjb2xvclxubmFtZTogZm9jdXMgY29sb3JcbmNhdGVnb3J5OiBtaXhpbnNcbi0tLVxuXG5BZGQgYSBmb2N1cyBjb2xvciB3aGVuIGtleWJvYXJkLWZvY3VzIGlzIGFjdGl2YXRlZFxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW0gJG51bWJlclxuXG4qL1xuLyogZG9jXG4tLS1cbnRpdGxlOiBpZ25vcmUtY29udGFpbmVyXG5uYW1lOiBpZ25vcmUtY29udGFpbmVyXG5jYXRlZ29yeTogbWl4aW5zXG4tLS1cblxuU2V0IGZ1bGwgcGFnZSB3aWR0aCBmb3Igc29tZXRoaW5nIGluc2lkZSBhIGNvbnRhaW5lclxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbSAkY29udGFpbmVyLXNpemVcbkBwYXJhbSAkZ3V0dGVyXG5cbiovXG4vKiBHZW5lcmF0ZXMgYWxsIHRoZSBydWxlcyBmb3IgdGhlIGdyaWQgY29sdW1ucyB1cCB0byB0aGUgZ2l2ZW4gYW1vdW50IG9mIGNvbHVtbiAqL1xuLyogR2VuZXJhdGVzIGFsbCB0aGUgcnVsZXMgZm9yIHRoZSBncmlkIGNvbHVtbiBvZmZzZXQgdXAgdG8gdGhlIGdpdmVuIGFtb3VudCBvZiBjb2x1bW4gKi9cbi8qIEdlbmVyYXRlcyBhbGwgdGhlIHJ1bGVzIGZvciB0aGUgZ3JpZCBhbmQgY29sdW1ucyBmb3IgdGhlIGdpdmVuIGJyZWFrIHBvaW50IGFuZCB0b3RhbCBvZiBjb2x1bW5zICovXG4vKiBBUEkgZnVuY3Rpb24gdG8gYmUgY2FsbGVkIHRvIGdlbmVyYXRlIGEgZ3JpZCBjb25maWcgKi9cbi8qIGRvY1xuLS0tXG50eXBlOiBidXR0b24gdHlwZVxuc3RhdGU6IHN0YXRlIGJ1dHRvblxuLS0tXG5cbkJ1dHRvbiBzdHlsZXNcblxuVXNlIHRoaXMgbWl4aW4gZm9yIGJ1dHRvbiBzdHlsZXM6IGNvbG9yIHRleHQsIGJhY2tncm91bmQsIGJvcmRlclxuXG4jIyBFeGFtcGxlXG4tLS1cblxuYGBgaHRtbF9leGFtcGxlXG5AaW5jbHVkZSBidXR0b24ocHJpbWFyeSk7XG5gYGBcbiovXG4vKiBkb2Ncbi0tLVxubGluZUxpbWl0OiBUaGlzIHZhbHVlIHNwZWNpZmllcyB0aGUgbnVtYmVyIG9mIGxpbmVzIGFmdGVyIHdoaWNoIHRoZSBjb250ZW50IHdpbGwgYmUgY2xhbXBlZC4gSXQgbXVzdCBiZSBncmVhdGVyIHRoYW4gMC5cbi0tLVxuXG5UcnVuY2F0ZXMgdGV4dCBhdCBhIHNwZWNpZmljIG51bWJlciBvZiBsaW5lcy5cblxuVXNlIHRoaXMgbWl4aW4gdG8gaGlkZSBsb25nIHRleHQuXG5cbiMjIEV4YW1wbGVcbi0tLVxuXG5gYGBodG1sX2V4YW1wbGVcbkBpbmNsdWRlIGxpbmUtY2xhbXAoJGxpbmVMaW1pdDogNCk7XG5gYGBcbiovXG4vKiB0eXBvZ3JhcGh5XG4tLS1cbnRpdGxlOiB0eXBvZ3JhcGh5XG5uYW1lOiBUeXBvZ3JhcGh5XG5jYXRlZ29yeTogbWl4aW5zXG4tLS1cblxuQWRkcyBmb250IENTUyBwcm9wZXJ0aWVzIGJ5IGEgbWFwIHByb3ZpZGVkXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtICR0LXN0eWxlXG5AcGFyYW0gJGlzLWltcG9ydGFudDogZmFsc2VcblxuKiAkdC1zdHlsZSBpcyBleHBlY3RlZCB0byBiZSBhIG1hcCB3aXRoICdkZWZhdWx0JyBhbmQgJ2JyZWFrcG9pbnRbc10nIHN1Ym1hcHMgd2l0aCBhIHByb3BlcnR5XG5mb3IgZXZlcnkgY3NzIHByb3BlcnR5IHRvIGJlIHNldC5cbiogJGlzLWltcG9ydGFudCBwYXJhbWV0ZXIgYWxsb3dzIHRvIGZvcmNlIHR5cG9ncmFwaHkgcHJvcGVydGllcyB0byBiZSBzZXQgYXMgIWltcG9ydGFudFxuVHJ5IHRvIGF2b2lkIGl0cyB1c2UsIGJ1dCBpdCBtaWdodCBiZSBuZWVkZWQgZm9yIHNpdHVhdGlvbnMgd2hlcmUgc3R5bGVzIGZvciBhIGNvbXBvbmVudFxuYXJlIHZlcnkgc3BlY2lmaWMgYW5kIHRvIG92ZXJ3cml0ZSB0aGUgZ2VuZXJpYyBvbmVzIGlzIHRvbyBjb21wbGV4IChpZiB0aGV5IGhhdmUgYSBsb3Qgb2Ygc3BlY2lmaWNpdHkpXG5cbiovXG4vKiBkb2Ncbi0tLVxudGl0bGU6IGhpZGRlblxubmFtZTogaGlkZGVuXG5jYXRlZ29yeTogbWl4aW5zXG4tLS1cblxuSGlkZSBmcm9tIGJvdGggc2NyZWVucmVhZGVycyBhbmQgYnJvd3NlcnM6IGg1YnAuY29tL3VcbiMjIFBhcmFtZXRlcnNcbi0tLVxuXG4qL1xuLyogZG9jXG4tLS1cbnRpdGxlOiBvdmVybGF5XG5uYW1lOiBvdmVybGF5XG5jYXRlZ29yeTogbWl4aW5zXG4tLS1cblxuQ3JlYXRlcyBhbiBvdmVybGF5IHdpdGggdGhlIHByb3ZpZGVkIGJhY2tncm91bmQgY29sb3JcbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtICRiZ0NvbG9yXG5cbiovXG4vKipcbiAqIEBtaXhpbiB0b3AtYm90dG9tLWJvcmRlclxuICogQGRlc2MgQ3JlYXRlcyBhIGR5bmFtaWMgYW5kIGN1c3RvbWl6YWJsZSBib3JkZXIgYXQgdGhlIHNwZWNpZmllZCBwb3NpdGlvbiBvbiBhbiBlbGVtZW50LlxuICpcbiAqIEBwYXJhbSB7c3RyaW5nfSAkcG9zaXRpb24gLSBPcHRpb25hbCwgRGVmYXVsdDogJ2JvdHRvbScuIERlZmluZXMgdGhlIHBvc2l0aW9uIG9mIHRoZSBib3JkZXIuIEFjY2VwdHMgdmFsdWVzICd0b3AnIG9yICdib3R0b20nLlxuICogQHBhcmFtIHtjb2xvcn0gJGNvbG9yIC0gT3B0aW9uYWwsIERlZmF1bHQ6ICckYy1ibGFjaycuIFNwZWNpZmllcyB0aGUgY29sb3Igb2YgdGhlIGJvcmRlci4gQWNjZXB0cyBhbnkgdmFsaWQgQ1NTIGNvbG9yIHZhbHVlLlxuICogQHBhcmFtIHtsZW5ndGh9ICR3aWR0aCAtIE9wdGlvbmFsLCBEZWZhdWx0OiAnMnB4Jy4gU2V0cyB0aGUgd2lkdGggb2YgdGhlIGJvcmRlci4gQWNjZXB0cyBhbnkgdmFsaWQgQ1NTIGxlbmd0aCB2YWx1ZS5cbiAqIEBwYXJhbSB7bGVuZ3RofSAkbWFyZ2luIC0gT3B0aW9uYWwsIERlZmF1bHQ6ICcwJy4gQWRkcyBtYXJnaW4gdG8gdGhlIGJvcmRlci4gQWNjZXB0cyBhbnkgdmFsaWQgQ1NTIGxlbmd0aCB2YWx1ZS5cbiAqXG4gKiBAZXhhbXBsZVxuICogICAuZXhhbXBsZS1lbGVtZW50IHtcbiAqICAgICAgIEBpbmNsdWRlIHRvcC1ib3R0b20tYm9yZGVyKCRwb3NpdGlvbjogdG9wLCAkY29sb3I6ICRjLWdyZXktdHdvLCAkd2lkdGg6IDNweCwgJG1hcmdpbjogMTBweCk7XG4gKiAgIH1cbiAqL1xuLyogZG9jXG4tLS1cbnRpdGxlOiByZXNldC1mdWxsd2lkdGgtbWFyZ2luc1xubmFtZTogcmVzZXQtZnVsbHdpZHRoLW1hcmdpbnNcbmNhdGVnb3J5OiBtaXhpbnNcbi0tLVxuXG5SZXNldCBtYXJnaW5zIGZvciBmdWxsIHdpZHRoIGNvbXBvbmVudHMgaW5zaWRlIGEgQ29udGFpbmVyIG9yIGEgQ29sdW1uIENvbnRyb2xcbiovXG4vKiBkb2Ncbi0tLVxudGl0bGU6IHZpc3VhbGx5IGhpZGRlblxubmFtZTogdmlzdWFsbHkgaGlkZGVuXG5jYXRlZ29yeTogbWl4aW5zXG4tLS1cblxuSGlkZGVuIGZyb20gYnJvd3NlcnMgYnV0IGFjY2Vzc2libGUgdG8gc2NyZWVuIHJlYWRlcnNcbiMjIFBhcmFtZXRlcnNcbi0tLVxuXG4qL1xuOnJvb3Qge1xuICAtLWNoZWNrYm94LW1hcmdpbi1pbmxpbmUtZW5kOiAxMHB4O1xuICAtLWNoZWNrYm94LXdpZHRoOiAyNHB4O1xuICAtLWNoZWNrYm94LW91dGxpbmUtb2Zmc2V0LXNpemU6IDVweDtcbiAgLS1jaGVja2JveC1yYWRpdXM6IDJweDtcbiAgLS1jaGVja2JveC1ib3JkZXItY29sb3I6ICNhN2E4YTk7XG4gIC0tY2hlY2tib3gtYm9yZGVyLWNvbG9yLWNoZWNrZWQ6ICMwMDRmYmM7XG4gIC0tY2hlY2tib3gtYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgLS1jaGVja2JveC1vdXRsaW5lLWNvbG9yOiAjMDA0ZmJjO1xufVxuXG4uY2hlY2tib3gge1xuICBmbGV4LXNocmluazogMDtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY2hlY2tib3gtYmFja2dyb3VuZC1jb2xvcik7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNoZWNrYm94LWJvcmRlci1jb2xvcik7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWNoZWNrYm94LXJhZGl1cyk7XG4gIG1hcmdpbi1pbmxpbmUtZW5kOiB2YXIoLS1jaGVja2JveC1tYXJnaW4taW5saW5lLWVuZCk7XG4gIHdpZHRoOiB2YXIoLS1jaGVja2JveC13aWR0aCk7XG4gIGFzcGVjdC1yYXRpbzogMTtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuLmNoZWNrYm94OmNoZWNrZWQge1xuICBib3JkZXItY29sb3I6IHZhcigtLWNoZWNrYm94LWJvcmRlci1jb2xvci1jaGVja2VkKTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2RhdGE6aW1hZ2Uvc3ZnK3htbDt1dGY4LDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMTZcIiBoZWlnaHQ9XCIyMVwiIHhtbDpzcGFjZT1cInByZXNlcnZlXCI+PHBhdGggZD1cIk0xNC45MjIgOC4yMDNjMC0uMTEtLjAzMS0uMjE5LS4wNjMtLjMyOGEuODg3Ljg4NyAwIDAgMC0uMTg3LS4yODFsLTEuMjE5LTEuMjE5YTEuNDY4IDEuNDY4IDAgMCAwLS4yODEtLjE4OGMtLjExLS4wMy0uMjE5LS4wNjItLjMyOC0uMDYyLS4xMSAwLS4yMTkuMDMxLS4zMjguMDYzYS44ODYuODg2IDAgMCAwLS4yODIuMTg3bC01Ljg0MyA1Ljg2LTIuNjI1LTIuNjI2YTEuMTg4IDEuMTg4IDAgMCAwLS4yOTctLjE4NyAxLjIzIDEuMjMgMCAwIDAtLjMxMy0uMDYzYy0uMTI1IDAtLjIzNC4wMzItLjMyOC4wNjNhLjg4Ni44ODYgMCAwIDAtLjI4MS4xODdsLTEuMjE5IDEuMjJhLjU2Mi41NjIgMCAwIDAtLjE4Ny4yOC43OTUuNzk1IDAgMCAwLS4wNjMuMzEzLjg0Ljg0IDAgMCAwIC4wNjMuMzQ0Yy4wMy4xMDkuMDkzLjIwMy4xODcuMjY1bDQuNDUzIDQuNDUzYS40NjYuNDY2IDAgMCAwIC4yNjYuMTg4Ljg0Ljg0IDAgMCAwIC4zNDQuMDYyLjc5NC43OTQgMCAwIDAgLjMxMi0uMDYyLjU2My41NjMgMCAwIDAgLjI4MS0uMTg4bDcuNjg4LTcuNjg3YS42OC42OCAwIDAgMCAuMTg3LS4yNjZjLjAzMi0uMTEuMDYzLS4yMTkuMDYzLS4zMjhaXCIgc3R5bGU9XCJmaWxsOiAlMjMwMDRGQkNcIiAvPjwvc3ZnPicpO1xufVxuLmNoZWNrYm94OmZvY3VzLXZpc2libGUgKyAuY2hlY2tib3hfX2xhYmVsIHtcbiAgb3V0bGluZTogZGFzaGVkIDJweCB2YXIoLS1jaGVja2JveC1vdXRsaW5lLWNvbG9yKTtcbiAgb3V0bGluZS1vZmZzZXQ6IHZhcigtLWNoZWNrYm94LW91dGxpbmUtb2Zmc2V0LXNpemUpO1xufVxuLmNoZWNrYm94OmZvY3VzOm5vdCg6Zm9jdXMtdmlzaWJsZSkge1xuICBvdXRsaW5lOiBub25lO1xufVxuLmNoZWNrYm94X19sYWJlbCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZmLXJlZ3VsYXIpO1xufVxuXG4vKlxuQWxzbyBwbGVhc2UgZm9sbG93IHRoaXNcbkRvIHlvdXIgcHJvamVjdCBoYXZlIGRpZmVyZW50IGNoYXJzZXQgbGFuZ3VhZ2VzIHRvIGFjY291bnQgd2l0aD9cbiAgICAgIC0gWWVzIC0+IGZvbGxvdyBodHRwczovL3Byb2plY3RzLm5ldGNlbnRyaWMuYml6L3dpa2kvZGlzcGxheS9GUk9OVEVORC9DU1MrLStGb250K05vcm1hbGl6YXRpb25cbiAgICAgIC0gTm8gLT4gWW91IGNhbiBzdGlsbCB1c2UgaXQsIHRoZXJlIGFyZSB0b25zIG9mIGFkdmFudGFnZXMsIGJ1dCBpdHMgY3JlYXRlIHNvbWUgZXh0cmEgY3NzIGFuZCBsYXlvdXQgcmVuZGVyaW5nXG4qL1xuLypcbiAgKiBEZXNpZ24gc3BlYzpcbiAgKiBodHRwczovL3d3dy5maWdtYS5jb20vZmlsZS9TUjRydlFsTm5DbVBNclE5V1lhSXF2L2JyYW5jaC9USnFrRnltcTA5d2Y4S3dtWTFXTmNqL1ZvbHZvLUFFTS1EZXNpZ24tc3lzdGVtP3R5cGU9ZGVzaWduJm5vZGUtaWQ9Ny0yNiZ0PXBBbTkxNlZSaXFDT0QySTEtMFxuKi9cbi8qKlxuICogei1pbmRleGVzIGZyb20gbG93ZXIgdG8gLT4gaGlnaGVyXG4gKi9cbi8qIGRvY1xuLS0tXG50aXRsZTogUGl4ZWwgdG8gZW1cbm5hbWU6IG5uLXB4LXRvLWVtXG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cblxuQ2FsY3VsYXRlIHRoZSBlbSB3aXRoIGEgZ2l2ZW4gcGl4ZWwgd2l0aCB0aGUgZ2l2ZW4gYmFzZSBmb250IHNpemVcbklmIHlvdSBkb24ndCBzZXQgYSAkYmFzZSB0aGUgJGJhc2UtZm9udC1zaXplIGlzIHVzZWQgYXMgdGhlIGNvbnRleHRcblxuIyMgTGl2ZSBUZW1wbGF0ZSBhYmJyZXZpYXRpb25zXG4tLS1cbi1wdHVcblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICR2YWx1ZSA9IHBpeGVsIGJhc2VkIG51bWJlciAod2l0aG91dCB1bml0KVxuQHBhcmFtZXRlciAkYmFzZSA9IHBpeGVsIGJhc2VkIG51bWJlciAod2l0aG91dCB1bml0KVxuXG4jIyBEZXBlbmRlbmNpZXNcbi0tLVxubm4tc3RyaXAtdW5pdFxuXG4jIyBFeGFtcGxlXG4tLS1cbmBgYGh0bWxfZXhhbXBsZVxubm4tcHgtdG8tZW0oNSkgLy8gT3V0cHV0OiAwLjMxMjVlbVxubm4tcHgtdG8tZW0oNSwgMTApIC8vIE91dHB1dDogMC41ZW1cbm5uLXB4LXRvLWVtKDUsIDIwKSAvLyBPdXRwdXQ6IDAuMjVlbVxuYGBgXG4qL1xuLyogZG9jXG4tLS1cbnRpdGxlOiBQaXhlbCB0byByZW1cbm5hbWU6IG5uLXB4LXRvLXJlbVxuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5cbkNhbGN1bGF0ZSB0aGUgcmVtIHdpdGggYSBnaXZlbiBwaXhlbCB3aXRoIHRoZSBnaXZlbiBiYXNlIGZvbnQgc2l6ZVxuXG5JbjogIDVweFxuT3V0OiAwLjMxMjVyZW1cblxuIyMgTGl2ZSBUZW1wbGF0ZSBhYmJyZXZpYXRpb25zXG4tLS1cbi1yZW1cblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICR2YWx1ZSA9IHBpeGVsIGJhc2VkIG51bWJlciAod2l0aG91dCB1bml0KVxuXG4jIyBEZXBlbmRlbmNpZXNcbi0tLVxubm4tc3RyaXAtdW5pdFxuXG4jIyBFeGFtcGxlXG4tLS1cbmBgYGh0bWxfZXhhbXBsZVxubm4tcHgtdG8tcmVtKDUpIC8vIE91dHB1dCAwLjMxMjVyZW1cbmBgYFxuXG4qL1xuLyogZG9jXG4tLS1cbnRpdGxlOiBQaXhlbCB0byB1bml0XG5uYW1lOiBweC10by11bml0XG5jYXRlZ29yeTogbWl4aW5zXG4tLS1cblxuU2V0IGEgcHJvcGVydHkgYW5kIHZhbHVlIChwaXhlbCBiYXNlZCB3aXRob3V0IHVuaXQpXG5cbkNhbGN1bGF0ZXMgcmVtIC8gZW0gLyAlIGZyb20gZ2l2ZW4gcGl4ZWwgYW5kIGJhc2UgKGRlZmF1bHQgYmFzZSBpcyB0aGVcbmJhc2UtZm9udC1zaXplLCAxNnB4KVxuSWYgcnRsIGlzIHRydWUsIHRoaXMgbWl4aW4gaGFuZGxlcyBhbGwgdGhlIGRpcmVjdGlvbiBzdHVmZjpcbi0gU3dpdGNoaW5nIHRoZSB2YWx1ZXMsIHdoZW4gd2UgaGF2ZSBleGFjdGx5IDQgdmFsdWVzXG4tIFN3aXRjaGluZyBsZWZ0IGFuZCByaWdodCBpbiBwcm9wZXJ0aWVzIChwYWRkaW5nIGFuZCBtYXJnaW4pXG5cbiMjIExpdmUgVGVtcGxhdGUgYWJicmV2aWF0aW9uc1xuLS0tXG4tcHR1IChmb3IgZW0gb3IgJSB0byBwaXhlbCAtIHdpdGggYmFzZSBwYXJhbWV0ZXIpXG4tcmVtIChmb3IgcmVtIHRvIHBpeGVsIC0gd2l0aG91dCBiYXNlIHBhcmFtZXRlcilcblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICRwcm9wZXJ0eSA9IHBhZGRpbmcgfCBtYXJnaW4gfCBmb250LXNpemUgfCB3aWR0aCB8IGhlaWdodFxuQHBhcmFtZXRlciAkdmFsdWUgPSBQaXhlbCBiYXNlZCBudW1iZXIgLSBhZGQgcHggdG8ga2VlcCB0aGUgcHggZm9yIGEgdmFsdWVcbkBwYXJhbWV0ZXIgJGJhc2UgPSBweCBiYXNlZCBudW1iZXIsIERlZmF1bHQ6IDE2cHhcbkBwYXJhbWV0ZXIgJHVuaXQgPSBTZXQgdW5pdDogcHggfCBlbSB8IHJlbSB8IHBlcmNlbnRcblxuIyMgRGVwZW5kZW5jaWVzXG4tLS1cbmFic3RyYWN0L2Z1bmN0aW9ucy9zd2FwLWxlZnQtcmlnaHRcbmFic3RyYWN0L2Z1bmN0aW9ucy9zdHJpcC11bml0XG5cbiMjIEV4YW1wbGVcbi0tLVxuXG5gYGBodG1sX2V4YW1wbGVcbkBpbmNsdWRlIG5uLXB4LXRvLXVuaXQocGFkZGluZywgMCAxMHB4IDIwIDApOyA9PiBwYWRkaW5nOiAwIDEwcHggMS4yNXJlbSAwO1xuQGluY2x1ZGUgbm4tcHgtdG8tdW5pdChwYWRkaW5nLCAwIDEwIDIwIDApOyA9PiBwYWRkaW5nOiAwIDAuNjI1cmVtIDEuMjVyZW0gMDtcbkBpbmNsdWRlIG5uLXB4LXRvLXVuaXQocGFkZGluZy1sZWZ0LCAxMCk7XG5AaW5jbHVkZSBubi1weC10by11bml0KHBhZGRpbmctcmlnaHQsIDEwKTtcbkBpbmNsdWRlIG5uLXB4LXRvLXVuaXQobWFyZ2luLCAwIDEwIDIwIDApO1xuQGluY2x1ZGUgbm4tcHgtdG8tdW5pdChtYXJnaW4tbGVmdCwgMTApO1xuQGluY2x1ZGUgbm4tcHgtdG8tdW5pdChtYXJnaW4tcmlnaHQsIDEwKTtcbkBpbmNsdWRlIG5uLXB4LXRvLXVuaXQoZm9udC1zaXplLCAyMCk7XG5AaW5jbHVkZSBubi1weC10by11bml0KHdpZHRoLCAxMDApO1xuQGluY2x1ZGUgbm4tcHgtdG8tdW5pdChtaW4td2lkdGgsIDEwMCk7XG5AaW5jbHVkZSBubi1weC10by11bml0KG1hbm4td2lkdGgsIDEwMCk7XG5AaW5jbHVkZSBubi1weC10by11bml0KGhlaWdodCwgMTAwKTtcbkBpbmNsdWRlIG5uLXB4LXRvLXVuaXQobWluLWhlaWdodCwgMTAwKTtcbkBpbmNsdWRlIG5uLXB4LXRvLXVuaXQobWFubi1oZWlnaHQsIDEwMCk7XG5gYGBcblxuIyMgU291cmNlXG4tLS1cbmh0dHA6Ly9jc3MtdHJpY2tzLmNvbS9zbmlwcGV0cy9jc3MvbGVzcy1taXhpbi1mb3ItcmVtLWZvbnQtc2l6aW5nL1xuXG4qL1xuLyogZG9jXG4tLS1cbnRpdGxlOiBQaXhlbCB0byB1bml0bGVzc1xubmFtZTogbm4tcHgtdG8tdW5pdGxlc3NcbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxuXG5UaGlzIG1ha2VzIHRoZSBzYW1lIGNhbGN1bGF0aW9uIGFzIHB4IHRvIGVtLiBCdXQgaXQgZG9uJ3QgcHJpbnQgb3V0IHRoZSB1bml0LlxuXG5Vc2UgdGhpcyBmb3IgbGluZS1oZWlnaHRzLlxuXG4jIyBMaXZlIFRlbXBsYXRlIGFiYnJldmlhdGlvbnNcbi0tLVxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJHZhbHVlID0gcGl4ZWwgYmFzZWQgbnVtYmVyICh3aXRob3V0IHVuaXQpXG5AcGFyYW1ldGVyICRiYXNlID0gcGl4ZWwgYmFzZWQgbnVtYmVyICh3aXRob3V0IHVuaXQpXG5cbiMjIERlcGVuZGVuY2llc1xuLS0tXG5cbiMjIEV4YW1wbGVcbi0tLVxuXG5gYGBodG1sX2V4YW1wbGVcbmxpbmUtaGVpZ2h0OiBubi1weC10by11bml0bGVzcyg1KSAvLyBPdXRwdXQ6IDAuMzEyNVxuYGBgXG5cbiMjIFNvdXJjZVxuLS0tXG5cbiovXG4vKiBkb2Ncbi0tLVxudGl0bGU6IFN0cmlwIHVuaXRcbm5hbWU6IG5uLXN0cmlwLXVuaXRcbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxuXG5TdHJpcHMgb2YgdGhlIHVuaXQgb2YgYSBudW1iZXJcblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICRudW0gPSBudW1iZXIgd2l0aCB1bml0ICg1cHgsIDVlbSwgNXJlbSlcblxuIyMgRXhhbXBsZVxuLS0tXG5cbmBgYGh0bWxfZXhhbXBsZVxubm4tc3RyaXAtdW5pdCg1cHgpIC8vT3V0cHV0OiA1XG5ubi1zdHJpcC11bml0KDEwZW0pIC8vIE91dHB1dDogMTBcbm5uLXN0cmlwLXVuaXQoMTVyZW0pIC8vIE91dHB1dDogMTVcbmBgYFxuXG4qL1xuLyogZG9jXG4tLS1cbnRpdGxlOiB6LWluZGV4XG5uYW1lOiBubi16LWluZGV4XG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cblxuQmVjYXVzZSB6LWluZGljZXMgY2FuIGdldCB0cmlja3kgd2UgbWFuYWdlIHRoZW0gaW4gdGhlIHRoZW1lLnNjc3MgZ2xvYmFsbHkuXG5cbkFsd2F5cyB1c2UgdGhpcyBtaXhpbiB0byBzZXQgc2V0IGEgei1pbmRleC5cblxuUmVhZCB0aGUgQmVzdCBQcmFjdGljZSB0byBnZXQgYW4gZnVsbCBkb2N1bWVudGF0aW9uOlxuaHR0cHM6Ly9wcm9qZWN0cy5uZXRjZW50cmljLmJpei93aWtpL2Rpc3BsYXkvRlJPTlRFTkQvSG93K3RvK3NldCthK3otaW5kZXhcblxuIyMgTGl2ZSBUZW1wbGF0ZSBhYmJyZXZpYXRpb25zXG4tLS1cbi16XG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkZWxlbWVudCA9IE5hbWUgb2YgdGhlIGVsZW1lbnQgKG5vcm1hbGx5IHRoaXMgd2lsbCBiZSB0aGUgbW9kdWxlIG5hbWUgZm9yIHRoZSBtYWluIHN0YWNrKVxuQHBhcmFtZXRlciAkbGlzdCA9IE5hbWUgb2YgdGhlIGxpc3QgKGRlZmF1bHQgJHotaW5kaWNlcykuIE11c3QgYmUgb25seSBzZXQgZm9yIHN0YWNrIGNvbnRleHRcbkBwYXJhbWV0ZXIgJG1pbiA9IFNldCBhIG1pbmltdW0gei1pbmRleCB3aGljaCB3aWxsIGJlIGFkZGVkIHRvIHRoZSBsaXN0LlxuXG4jIyBEZXBlbmRlbmNpZXNcbi0tLVxuJHotaW5kaWNlcyB2YXJpYWJsZSBpbiB0aGUgdGhlbWUuc2Nzc1xuXG4jIyBFeGFtcGxlXG4tLS1cblxuYGBgaHRtbF9leGFtcGxlXG5cbi8vIEluIHRoZSBTQVNTIHRoZW1lIGZpbGVcblxuJHotaW5kaWNlczogc2xpZGVyLCBtb2RhbCwgZGlhbG9nLCBuYXZpZ2F0aW9uO1xuXG4vLyBJbiB0aGUgU0FTUyBtb2R1bGUgZmlsZVxuXG4ubW9kYWwge1xuICAgICZfX2Jhc2Uge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHotaW5kZXg6IG5uLXotaW5kZXgobW9kYWwpO1xuICAgIH1cbn1cbmBgYFxuXG4jIyBTb3VyY2Vcbi0tLVxuaHR0cDovL3d3dy5zbWFzaGluZ21hZ2F6aW5lLmNvbS8yMDE0LzA2LzEyL3Nhc3N5LXotaW5kZXgtbWFuYWdlbWVudC1mb3ItY29tcGxleC1sYXlvdXRzL1xuXG4qL1xuLyogZG9jXG4tLS1cbnRpdGxlOiByZW1vdmUgZXZlcnkgdW5pdFxubmFtZTogc3RyaXAtdW5pdFxuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5yZW1vdmUgYWxsIHVuaXRzXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkbnVtYmVyID0gbnVtYmVyIHdpdGggdW5pdFxuXG4jIyBFeGFtcGxlXG4tLS1cbmBgYGh0bWxfZXhhbXBsZVxuc3RyaXAtdW5pdCg1cHgpIC8vIE91dHB1dDogNVxuYGBgXG4qL1xuLypcbiAgICBUaGlzIG1peGluIGNvbnZlcnRzIGFueSB1bml0bGVzcyBudW1iZXIgKGZvciBleGFtcGxlIDQwKSB0byB0aGUgY29ycmVjdCB1bml0LCBhY2NvcmRpbmcgdG8gdGhlIGdpdmVuIGF4aXMuXG5cbiAgICBQYXJhbWV0ZXJzOlxuICAgIC0gJHZhbHVlOiB1bml0bGVzcyBudW1iZXIgdG8gYmUgY29udmVydGVkLiBBIHVuaXQgaW4gJHZhbHVlIHdpbGwgY29ycmVzcG9uZCB0byBhIHB4IGluIHRoZSBicm93c2VyLFxuICAgICAgICBubyBtYXR0ZXIgaWYgaXQncyBvdXRwdXQgYXMgcHggb3IgcmVtXG5cbiAgICBSZXR1cm5zXG4gICAgLSBIb3Jpem9udGFsOiB3aWxsIGNvbnZlcnQgdGhlIG51bWJlciB0byBwaXhlbHMgKDQwcHgpXG4gICAgLSBWZXJ0aWNhbDogd2lsbCBjb252ZXJ0IHRoZSBudW1iZXIgdG8gcmVtIChpZiByZW0gPT09IDE2cHgsIHRoZW4gNDAgd2lsbCBiZSBjb252ZXJ0ZWQgdG8gMi41IHJlbSlcbiovXG4vKlxuICAgIENvbnZlcnRzIGEgdW5pdGxlc3MgbnVtYmVyIHRvIHRoZSBjb3JyZXNwb25kaW5nIHVuaXQgb24gdGhlIGhvcml6b250YWwgYXhpcy5cbiAgICBCeSBkZWZhdWx0IHdpbGwgY29udmVydCB0aGUgdmFsdWUgdG8gcHguXG4qL1xuLypcbiAgICBDb252ZXJ0cyBhIHVuaXRsZXNzIG51bWJlciB0byB0aGUgY29ycmVzcG9uZGluZyB1bml0IG9uIHRoZSB2ZXJ0aWNhbCBheGlzLlxuICAgIEJ5IGRlZmF1bHQgd2lsbCBjb252ZXJ0IHRoZSB2YWx1ZSB0byByZW0uXG4qL1xuLyogc3R5bGVsaW50LWRpc2FibGUgKi9cbi8qIGRvY1xuLS0tXG50aXRsZTogU3dhcCBsZWZ0IHJpZ2h0IHZhbHVlc1xubmFtZTogc3dhcC1sZWZ0LXJpZ2h0LXZhbHVlc1xuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5cblN3YXAgdGhlIHZhbHVlcyBmb3IgcmlnaHQgYW5kIGxlZnQgd2hlbiAkcnRsIGlzIHNldCB0byB0cnVlOlxuXG5JbjogIDAgNXB4IDhweCAxMnB4XG5PdXQ6IDAgMTJweCA4cHggNXB4IChpbiBydGwpXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkdmFsdWVzID0gNCBudW1iZXJzICh3b3JrcyB3aXRoIGFsbCB1bml0cylcblxuIyMgRXhhbXBsZVxuLS0tXG5cbmBgYGh0bWxfZXhhbXBsZVxuc3dhcC1sZWZ0LXJpZ2h0LXZhbHVlcygwIDFweCA4cHggMTJweCkgLy8gMCAxMnB4IDhweCAxcHhcbnN3YXAtbGVmdC1yaWdodC12YWx1ZXMoMCAxZW0gOGVtIDEyZW0pIC8vIDAgMTJlbSA4ZW0gMWVtXG53YXAtbGVmdC1yaWdodC12YWx1ZXMoMCAxcmVtIDhyZW0gMTJyZW0pIC8vIDAgMTJyZW0gOHJlbSAxcmVtXG5gYGBcblxuIyMgU291cmNlXG4tLS1cbmh0dHA6Ly9zdGFja292ZXJmbG93LmNvbS9xdWVzdGlvbnMvMTQxOTkzMjMvcmlnaHQtdG8tbGVmdC1ydGwtc3VwcG9ydC1pbi1zYXNzLXByb2plY3RcblxuKi9cbi8qIHN0eWxlbGludC1kaXNhYmxlICovXG4vKiBkb2Ncbi0tLVxudGl0bGU6IFN3YXAgbGVmdCByaWdodCBuYW1lc1xubmFtZTogc3dhcC1sZWZ0LXJpZ2h0LW5hbWVzXG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cblxuU3dhcCB0aGUgbmFtZXMgcmlnaHQgYW5kIGxlZnQgd2hlbiAkcnRsIGlzIHNldCB0byB0cnVlLlxuSWYgdGhlIHZhbHVlIGlzIG5vdCByaWdodCBvciBsZWZ0IGl0IHJldHVybnMgdGhlIG9yaWdpbmFsIHZhbHVlLlxuXG5JbjogIHJpZ2h0XG5PdXQ6IGxlZnQgKGluIHJ0bCksIHJpZ2h0IChpbiBsdHIpXG5cbiMjIExpdmUgVGVtcGxhdGUgYWJicmV2aWF0aW9uc1xuLS0tXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkb3JpZ2luID0gcmlnaHQgfCBsZWZ0XG5cbiMjIEV4YW1wbGVcbi0tLVxuXG5gYGBodG1sX2V4YW1wbGVcbnN3YXAtbGVmdC1yaWdodC1uYW1lKGxlZnQpXG5zd2FwLWxlZnQtcmlnaHQtbmFtZShyaWdodClcbmBgYFxuXG4jIyBTb3VyY2Vcbi0tLVxuaHR0cDovL3N0YWNrb3ZlcmZsb3cuY29tL3F1ZXN0aW9ucy8xNDE5OTMyMy9yaWdodC10by1sZWZ0LXJ0bC1zdXBwb3J0LWluLXNhc3MtcHJvamVjdFxuXG4qL1xuLyogIExpc3Qgb2YgQ1NTIHByb3BlcnRpZXMgdGhhdCB3aWxsIGFsd2F5cyBiZSBvdXRwdXQgYXQgbGVhc3QgYXMgMiBkaWZmZXJlbnQgdmFsdWVzXG4gICAgaW4gb3JkZXIgdG8gYmUgYWJsZSB0byBjb252ZXJ0IGVhY2ggb25lIHRvIHRoZSBjb3JyZWN0IGF4aXMgdW5pdCAqL1xuLypcbiAgICBNaXhpbiBmb3IgYXV0b21hdGljYWxseSBoYW5kbGluZyBzcGFjaW5ncyBhcm91bmQvYmV0d2VlbiBlbGVtZW50cy5cblxuICAgIFRoaXMgbWl4aW4gd2lsbCBhdXRvbWF0aWNhbGx5IGludmVydCB0aGUgbGVmL3JpZ2h0IGRpcmVjdGlvbnMgaW4gUlRMIGxhbmd1YWdlcy5cbiAgICBBbHNvLCB0aGUgdW5pdGxlc3MgdmFsdWVzIHdpbGwgYmUgY29udmVydGVkIHRvIHRoZSBwcm9wZXIgdW5pdCBhY2NvcmRpbmcgdG8gdGhlIGF4aXNcblxuICAgIFBhcmFtZXRlcnM6XG4gICAgLSAkcHJvcGVydHktbmFtZTogbmFtZSBvZiB0aGUgQ1NTIHByb3BlcnR5IHRoYXQgc2hvdWxkIGJlIG91dHB1dC4gU3VwcG9ydGVkIHByb3BlcnRpZXMgYXJlOlxuICAgICAgICBtYXJnaW4sIG1hcmdpbi10b3AsIG1hcmdpbi1yaWdodCwgbWFyZ2luLWJvdHRvbSwgbWFyZ2luLWxlZnRcbiAgICAgICAgcGFkZGluZywgcGFkZGluZy10b3AsIHBhZGRpbmctcmlnaHQsIHBhZGRpbmctYm90dG9tLCBwYWRkaW5nLWxlZnRcbiAgICAgICAgd2lkdGgsIGhlaWdodCwgbWluLXdpZHRoLCBtYXgtd2lkdGgsIG1pbi1oZWlnaHQsIG1pbi1oZWlnaHRcbiAgICAtICR2YWx1ZTogdmFsdWUgdGhhdCB3aWxsIGJlIG91dHB1dCBhcyBwYXJ0IG9mIHRoZSBnaXZlbiBwcm9wZXJ0eS4gU3VwcG9ydGVkIHZhbHVlcyBhcmU6XG4gICAgICAgIFVuaXRsZXNzIG51bWJlciAoNDApOiB0aGlzIHNob3VsZCBiZSB1c2VkIG1vc3Qgb2YgdGhlIHRpbWVzLiBJdCB3aWxsIGF1dG9tYXRpY2FsbHkgYmUgY29udmVydGVkXG4gICAgICAgICAgICB0byB0aGUgY29ycmVjdCB1bml0IGRlcGVuZGluZyBvbiB0aGUgYXhpcyB3aGVyZSBpdCdzIHVzZWQgKGhvcml6b250YWwgYXhpcyA9PiBweCwgdmVydGljYWwgYXhpcyA9PiByZW0pLlxuICAgICAgICAgICAgRWFjaCB1bml0IGluICR2YWx1ZSB3aWxsIGNvcnJlc3BvbmQgdG8gYSBweCBpbiB0aGUgYnJvd3Nlciwgbm8gbWF0dGVyIHRvIHdoaWNoIHVuaXQgaXQgd2lsbCBiZSBjb252ZXJ0ZWQuXG4gICAgICAgIE51bWJlciB3aXRoIHVuaXQgKDQwcHgsIDQwJS4uLik6IHRoZSBudW1iZXIgYW5kIHRoZSB1bml0IHdpbGwgYmUgcHJlc2VydmVkIGFuZCBvbmx5IHRoZSBsZWZ0L3JpZ2h0IGludmVyc2lvblxuICAgICAgICAgICAgd2lsbCBiZSBkb25lIGZvciBSVEwgbGFuZ3VhZ2VzXG4gICAgICAgIExpc3Qgb2YgdmFsdWVzICg0MCAzMCUgMjAgMTApOiBtYXJnaW4gYW5kIHBhZGRpbmcgc2hvcnRoYW5kcyB3aGl0aCBtdWx0aXBsZSB2YWx1ZXMgYXJlIHN1cHBvcnRlZC5cbiAgICAgICAgICAgIFRoZSBsZWZ0L3JpZ2h0IHZhbHVlcyB3aWxsIGJlIGF1dG9tYXRpY2FsbHkgc3dhcHBlZCBpbiBSVEwgYW5kIHRoZSB1bml0bGVzcyBudW1iZXJzIHdpbGwgYmUgY29udmVydGVkXG4gICAgICAgICAgICB0byB0aGUgY29ycmVzcG9uZGluZyB1bml0LiBVbml0bGVzcyBhbmQgbnVtYmVycyB3aXRoIHVuaXRzIGNhbiBiZSBtaXhlZCBpbiB0aGUgc2FtZSBjYWxsLlxuICAgICAgICBVc2luZyBjYWxjKCkgaW4gYW55IG9mIHRoZSBwcmV2aW91cyBleGFtcGxlcyBpcyBzdXBwb3J0ZWQsIGFsdGhvdWdoIG5vIHVuaXQgY29udmVyc2lvbiB3aWxsIGJlIGRvbmVcblxuICMjIEV4YW1wbGVcbi0tLVxuXG5gYGBodG1sX2V4YW1wbGVcbkBpbmNsdWRlIHNwYWNpbmcocGFkZGluZywgMCAxMHB4IDIwIDApOyA9PiBwYWRkaW5nOiAwIDEwcHggMnJlbSAwO1xuQGluY2x1ZGUgc3BhY2luZyhwYWRkaW5nLCAwIDEwIDIwIDApOyA9PiBwYWRkaW5nOiAwIDEwcHggMnJlbSAwO1xuQGluY2x1ZGUgc3BhY2luZyhwYWRkaW5nLWxlZnQsIDEwKTtcbkBpbmNsdWRlIHNwYWNpbmcocGFkZGluZy1yaWdodCwgMTApO1xuQGluY2x1ZGUgc3BhY2luZyhtYXJnaW4sIDAgMTAgMjAgMCk7XG5AaW5jbHVkZSBzcGFjaW5nKG1hcmdpbi1sZWZ0LCAxMCk7XG5AaW5jbHVkZSBzcGFjaW5nKG1hcmdpbi1yaWdodCwgMTApO1xuQGluY2x1ZGUgc3BhY2luZyh3aWR0aCwgMTAwKTtcbkBpbmNsdWRlIHNwYWNpbmcobWluLXdpZHRoLCAxMDApO1xuQGluY2x1ZGUgc3BhY2luZyhtYXgtd2lkdGgsIDEwMCk7XG5AaW5jbHVkZSBzcGFjaW5nKGhlaWdodCwgMTAwKTtcbkBpbmNsdWRlIHNwYWNpbmcobWluLWhlaWdodCwgMTAwKTtcbkBpbmNsdWRlIHNwYWNpbmcobWF4LWhlaWdodCwgMTAwKTtcbmBgYFxuKi9cbi8qIGRvY1xuLS0tXG50aXRsZTogQ2xlYXJmaXhcbm5hbWU6IGNsZWFyZml4XG5jYXRlZ29yeTogbWl4aW5zXG4tLS1cblxuQ2xlYXJzIGFmdGVyIGZsb2F0aW5nIGVsZW1lbnRcblxuVXNlIHRoaXMgbWl4aW4gb25seSBpbnNpZGUgbWVkaWEgcXVlcmllcyB3aGVyZSB5b3UgY2FuJ3QgdXNlIHRoZVxuYWJzdHJhY3QvZXh0ZW5kcy91dGlscy9fY2xlYXJmaXggdmVyc2lvbiwgd2hpY2ggYWRkcyBsZXNzIGNvZGUgdG8gY3NzXG5cbiMjIExpdmUgVGVtcGxhdGUgYWJicmV2aWF0aW9uc1xuLS0tXG5cbiMjIEV4YW1wbGVcbi0tLVxuXG5gYGBodG1sX2V4YW1wbGVcbkBpbmNsdWRlIGNsZWFyZml4O1xuYGBgXG5cbiMjIFNvdXJjZVxuLS0tXG5odHRwczovL2Nzcy10cmlja3MuY29tL3NuaXBwZXRzL2Nzcy9jbGVhci1maXgvXG4qL1xuLyogc3R5bGVsaW50LWRpc2FibGUgc3RyaW5nLW5vLW5ld2xpbmUgKi9cbi8qIGRvY1xuLS0tXG50aXRsZTogZm9jdXMgY29sb3Jcbm5hbWU6IGZvY3VzIGNvbG9yXG5jYXRlZ29yeTogbWl4aW5zXG4tLS1cblxuQWRkIGEgZm9jdXMgY29sb3Igd2hlbiBrZXlib2FyZC1mb2N1cyBpcyBhY3RpdmF0ZWRcbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtICRudW1iZXJcblxuKi9cbi8qIGRvY1xuLS0tXG50aXRsZTogaWdub3JlLWNvbnRhaW5lclxubmFtZTogaWdub3JlLWNvbnRhaW5lclxuY2F0ZWdvcnk6IG1peGluc1xuLS0tXG5cblNldCBmdWxsIHBhZ2Ugd2lkdGggZm9yIHNvbWV0aGluZyBpbnNpZGUgYSBjb250YWluZXJcblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW0gJGNvbnRhaW5lci1zaXplXG5AcGFyYW0gJGd1dHRlclxuXG4qL1xuLyogR2VuZXJhdGVzIGFsbCB0aGUgcnVsZXMgZm9yIHRoZSBncmlkIGNvbHVtbnMgdXAgdG8gdGhlIGdpdmVuIGFtb3VudCBvZiBjb2x1bW4gKi9cbi8qIEdlbmVyYXRlcyBhbGwgdGhlIHJ1bGVzIGZvciB0aGUgZ3JpZCBjb2x1bW4gb2Zmc2V0IHVwIHRvIHRoZSBnaXZlbiBhbW91bnQgb2YgY29sdW1uICovXG4vKiBHZW5lcmF0ZXMgYWxsIHRoZSBydWxlcyBmb3IgdGhlIGdyaWQgYW5kIGNvbHVtbnMgZm9yIHRoZSBnaXZlbiBicmVhayBwb2ludCBhbmQgdG90YWwgb2YgY29sdW1ucyAqL1xuLyogQVBJIGZ1bmN0aW9uIHRvIGJlIGNhbGxlZCB0byBnZW5lcmF0ZSBhIGdyaWQgY29uZmlnICovXG4vKiBkb2Ncbi0tLVxudHlwZTogYnV0dG9uIHR5cGVcbnN0YXRlOiBzdGF0ZSBidXR0b25cbi0tLVxuXG5CdXR0b24gc3R5bGVzXG5cblVzZSB0aGlzIG1peGluIGZvciBidXR0b24gc3R5bGVzOiBjb2xvciB0ZXh0LCBiYWNrZ3JvdW5kLCBib3JkZXJcblxuIyMgRXhhbXBsZVxuLS0tXG5cbmBgYGh0bWxfZXhhbXBsZVxuQGluY2x1ZGUgYnV0dG9uKHByaW1hcnkpO1xuYGBgXG4qL1xuLyogZG9jXG4tLS1cbmxpbmVMaW1pdDogVGhpcyB2YWx1ZSBzcGVjaWZpZXMgdGhlIG51bWJlciBvZiBsaW5lcyBhZnRlciB3aGljaCB0aGUgY29udGVudCB3aWxsIGJlIGNsYW1wZWQuIEl0IG11c3QgYmUgZ3JlYXRlciB0aGFuIDAuXG4tLS1cblxuVHJ1bmNhdGVzIHRleHQgYXQgYSBzcGVjaWZpYyBudW1iZXIgb2YgbGluZXMuXG5cblVzZSB0aGlzIG1peGluIHRvIGhpZGUgbG9uZyB0ZXh0LlxuXG4jIyBFeGFtcGxlXG4tLS1cblxuYGBgaHRtbF9leGFtcGxlXG5AaW5jbHVkZSBsaW5lLWNsYW1wKCRsaW5lTGltaXQ6IDQpO1xuYGBgXG4qL1xuLyogdHlwb2dyYXBoeVxuLS0tXG50aXRsZTogdHlwb2dyYXBoeVxubmFtZTogVHlwb2dyYXBoeVxuY2F0ZWdvcnk6IG1peGluc1xuLS0tXG5cbkFkZHMgZm9udCBDU1MgcHJvcGVydGllcyBieSBhIG1hcCBwcm92aWRlZFxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbSAkdC1zdHlsZVxuQHBhcmFtICRpcy1pbXBvcnRhbnQ6IGZhbHNlXG5cbiogJHQtc3R5bGUgaXMgZXhwZWN0ZWQgdG8gYmUgYSBtYXAgd2l0aCAnZGVmYXVsdCcgYW5kICdicmVha3BvaW50W3NdJyBzdWJtYXBzIHdpdGggYSBwcm9wZXJ0eVxuZm9yIGV2ZXJ5IGNzcyBwcm9wZXJ0eSB0byBiZSBzZXQuXG4qICRpcy1pbXBvcnRhbnQgcGFyYW1ldGVyIGFsbG93cyB0byBmb3JjZSB0eXBvZ3JhcGh5IHByb3BlcnRpZXMgdG8gYmUgc2V0IGFzICFpbXBvcnRhbnRcblRyeSB0byBhdm9pZCBpdHMgdXNlLCBidXQgaXQgbWlnaHQgYmUgbmVlZGVkIGZvciBzaXR1YXRpb25zIHdoZXJlIHN0eWxlcyBmb3IgYSBjb21wb25lbnRcbmFyZSB2ZXJ5IHNwZWNpZmljIGFuZCB0byBvdmVyd3JpdGUgdGhlIGdlbmVyaWMgb25lcyBpcyB0b28gY29tcGxleCAoaWYgdGhleSBoYXZlIGEgbG90IG9mIHNwZWNpZmljaXR5KVxuXG4qL1xuLyogZG9jXG4tLS1cbnRpdGxlOiBoaWRkZW5cbm5hbWU6IGhpZGRlblxuY2F0ZWdvcnk6IG1peGluc1xuLS0tXG5cbkhpZGUgZnJvbSBib3RoIHNjcmVlbnJlYWRlcnMgYW5kIGJyb3dzZXJzOiBoNWJwLmNvbS91XG4jIyBQYXJhbWV0ZXJzXG4tLS1cblxuKi9cbi8qIGRvY1xuLS0tXG50aXRsZTogb3ZlcmxheVxubmFtZTogb3ZlcmxheVxuY2F0ZWdvcnk6IG1peGluc1xuLS0tXG5cbkNyZWF0ZXMgYW4gb3ZlcmxheSB3aXRoIHRoZSBwcm92aWRlZCBiYWNrZ3JvdW5kIGNvbG9yXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbSAkYmdDb2xvclxuXG4qL1xuLyoqXG4gKiBAbWl4aW4gdG9wLWJvdHRvbS1ib3JkZXJcbiAqIEBkZXNjIENyZWF0ZXMgYSBkeW5hbWljIGFuZCBjdXN0b21pemFibGUgYm9yZGVyIGF0IHRoZSBzcGVjaWZpZWQgcG9zaXRpb24gb24gYW4gZWxlbWVudC5cbiAqXG4gKiBAcGFyYW0ge3N0cmluZ30gJHBvc2l0aW9uIC0gT3B0aW9uYWwsIERlZmF1bHQ6ICdib3R0b20nLiBEZWZpbmVzIHRoZSBwb3NpdGlvbiBvZiB0aGUgYm9yZGVyLiBBY2NlcHRzIHZhbHVlcyAndG9wJyBvciAnYm90dG9tJy5cbiAqIEBwYXJhbSB7Y29sb3J9ICRjb2xvciAtIE9wdGlvbmFsLCBEZWZhdWx0OiAnJGMtYmxhY2snLiBTcGVjaWZpZXMgdGhlIGNvbG9yIG9mIHRoZSBib3JkZXIuIEFjY2VwdHMgYW55IHZhbGlkIENTUyBjb2xvciB2YWx1ZS5cbiAqIEBwYXJhbSB7bGVuZ3RofSAkd2lkdGggLSBPcHRpb25hbCwgRGVmYXVsdDogJzJweCcuIFNldHMgdGhlIHdpZHRoIG9mIHRoZSBib3JkZXIuIEFjY2VwdHMgYW55IHZhbGlkIENTUyBsZW5ndGggdmFsdWUuXG4gKiBAcGFyYW0ge2xlbmd0aH0gJG1hcmdpbiAtIE9wdGlvbmFsLCBEZWZhdWx0OiAnMCcuIEFkZHMgbWFyZ2luIHRvIHRoZSBib3JkZXIuIEFjY2VwdHMgYW55IHZhbGlkIENTUyBsZW5ndGggdmFsdWUuXG4gKlxuICogQGV4YW1wbGVcbiAqICAgLmV4YW1wbGUtZWxlbWVudCB7XG4gKiAgICAgICBAaW5jbHVkZSB0b3AtYm90dG9tLWJvcmRlcigkcG9zaXRpb246IHRvcCwgJGNvbG9yOiAkYy1ncmV5LXR3bywgJHdpZHRoOiAzcHgsICRtYXJnaW46IDEwcHgpO1xuICogICB9XG4gKi9cbi8qIGRvY1xuLS0tXG50aXRsZTogcmVzZXQtZnVsbHdpZHRoLW1hcmdpbnNcbm5hbWU6IHJlc2V0LWZ1bGx3aWR0aC1tYXJnaW5zXG5jYXRlZ29yeTogbWl4aW5zXG4tLS1cblxuUmVzZXQgbWFyZ2lucyBmb3IgZnVsbCB3aWR0aCBjb21wb25lbnRzIGluc2lkZSBhIENvbnRhaW5lciBvciBhIENvbHVtbiBDb250cm9sXG4qL1xuLyogZG9jXG4tLS1cbnRpdGxlOiB2aXN1YWxseSBoaWRkZW5cbm5hbWU6IHZpc3VhbGx5IGhpZGRlblxuY2F0ZWdvcnk6IG1peGluc1xuLS0tXG5cbkhpZGRlbiBmcm9tIGJyb3dzZXJzIGJ1dCBhY2Nlc3NpYmxlIHRvIHNjcmVlbiByZWFkZXJzXG4jIyBQYXJhbWV0ZXJzXG4tLS1cblxuKi9cbi5jaGVja2JveC1zd2l0Y2gge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cbi5jaGVja2JveC1zd2l0Y2g6aGFzKGlucHV0OmZvY3VzLXZpc2libGUpIHtcbiAgb3V0bGluZTogc29saWQgMnB4ICMwMDRmYmM7XG4gIG91dGxpbmUtb2Zmc2V0OiAxcHg7XG4gIGJvcmRlci1yYWRpdXM6IDFweDtcbn1cbi5jaGVja2JveC1zd2l0Y2hfX2lucHV0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHotaW5kZXg6IDU7XG4gIG9wYWNpdHk6IDA7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cbi5jaGVja2JveC1zd2l0Y2hfX2lucHV0OmhvdmVyICsgbGFiZWw6OmFmdGVyIHtcbiAgYm94LXNoYWRvdzogMCAycHggMTVweCAwIHJnYmEoMCwgMCwgMCwgMC4yKSwgMCAzcHggOHB4IDAgcmdiYSgwLCAwLCAwLCAwLjE1KTtcbn1cbi5jaGVja2JveC1zd2l0Y2hfX2lucHV0OmNoZWNrZWQgKyBsYWJlbCB7XG4gIGJhY2tncm91bmQ6ICMwMDRmYmM7XG59XG4uY2hlY2tib3gtc3dpdGNoX19pbnB1dDpjaGVja2VkICsgbGFiZWw6OmFmdGVyIHtcbiAgbGVmdDogMTRweDtcbn1cbi5jaGVja2JveC1zd2l0Y2hfX2xhYmVsLWVsZW1lbnQge1xuICB3aWR0aDogMzRweDtcbiAgaGVpZ2h0OiAxNHB4O1xuICBiYWNrZ3JvdW5kOiAjYTdhOGE5O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgYm9yZGVyLXJhZGl1czogN3B4O1xuICB0cmFuc2l0aW9uOiAwLjRzO1xufVxuLmNoZWNrYm94LXN3aXRjaF9fbGFiZWwtZWxlbWVudDo6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAyMHB4O1xuICBoZWlnaHQ6IDIwcHg7XG4gIGJvcmRlci1yYWRpdXM6IDEwMCU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogLTNweDtcbiAgei1pbmRleDogMjtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgYm94LXNoYWRvdzogMCAwIDVweCByZ2JhKDAsIDAsIDAsIDAuMik7XG4gIHRyYW5zaXRpb246IDAuNHM7XG59XG4uY2hlY2tib3gtc3dpdGNoX19sYWJlbCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDFweDtcbiAgaGVpZ2h0OiAxcHg7XG4gIG1hcmdpbjogLTFweDtcbiAgYm9yZGVyOiAwO1xuICBwYWRkaW5nOiAwO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBjbGlwLXBhdGg6IGluc2V0KDEwMCUpO1xuICBjbGlwOiByZWN0KDAgMCAwIDApO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4vKlxuQWxzbyBwbGVhc2UgZm9sbG93IHRoaXNcbkRvIHlvdXIgcHJvamVjdCBoYXZlIGRpZmVyZW50IGNoYXJzZXQgbGFuZ3VhZ2VzIHRvIGFjY291bnQgd2l0aD9cbiAgICAgIC0gWWVzIC0+IGZvbGxvdyBodHRwczovL3Byb2plY3RzLm5ldGNlbnRyaWMuYml6L3dpa2kvZGlzcGxheS9GUk9OVEVORC9DU1MrLStGb250K05vcm1hbGl6YXRpb25cbiAgICAgIC0gTm8gLT4gWW91IGNhbiBzdGlsbCB1c2UgaXQsIHRoZXJlIGFyZSB0b25zIG9mIGFkdmFudGFnZXMsIGJ1dCBpdHMgY3JlYXRlIHNvbWUgZXh0cmEgY3NzIGFuZCBsYXlvdXQgcmVuZGVyaW5nXG4qL1xuLypcbiAgKiBEZXNpZ24gc3BlYzpcbiAgKiBodHRwczovL3d3dy5maWdtYS5jb20vZmlsZS9TUjRydlFsTm5DbVBNclE5V1lhSXF2L2JyYW5jaC9USnFrRnltcTA5d2Y4S3dtWTFXTmNqL1ZvbHZvLUFFTS1EZXNpZ24tc3lzdGVtP3R5cGU9ZGVzaWduJm5vZGUtaWQ9Ny0yNiZ0PXBBbTkxNlZSaXFDT0QySTEtMFxuKi9cbi8qKlxuICogei1pbmRleGVzIGZyb20gbG93ZXIgdG8gLT4gaGlnaGVyXG4gKi9cbi8qIGRvY1xuLS0tXG50aXRsZTogUGl4ZWwgdG8gZW1cbm5hbWU6IG5uLXB4LXRvLWVtXG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cblxuQ2FsY3VsYXRlIHRoZSBlbSB3aXRoIGEgZ2l2ZW4gcGl4ZWwgd2l0aCB0aGUgZ2l2ZW4gYmFzZSBmb250IHNpemVcbklmIHlvdSBkb24ndCBzZXQgYSAkYmFzZSB0aGUgJGJhc2UtZm9udC1zaXplIGlzIHVzZWQgYXMgdGhlIGNvbnRleHRcblxuIyMgTGl2ZSBUZW1wbGF0ZSBhYmJyZXZpYXRpb25zXG4tLS1cbi1wdHVcblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICR2YWx1ZSA9IHBpeGVsIGJhc2VkIG51bWJlciAod2l0aG91dCB1bml0KVxuQHBhcmFtZXRlciAkYmFzZSA9IHBpeGVsIGJhc2VkIG51bWJlciAod2l0aG91dCB1bml0KVxuXG4jIyBEZXBlbmRlbmNpZXNcbi0tLVxubm4tc3RyaXAtdW5pdFxuXG4jIyBFeGFtcGxlXG4tLS1cbmBgYGh0bWxfZXhhbXBsZVxubm4tcHgtdG8tZW0oNSkgLy8gT3V0cHV0OiAwLjMxMjVlbVxubm4tcHgtdG8tZW0oNSwgMTApIC8vIE91dHB1dDogMC41ZW1cbm5uLXB4LXRvLWVtKDUsIDIwKSAvLyBPdXRwdXQ6IDAuMjVlbVxuYGBgXG4qL1xuLyogZG9jXG4tLS1cbnRpdGxlOiBQaXhlbCB0byByZW1cbm5hbWU6IG5uLXB4LXRvLXJlbVxuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5cbkNhbGN1bGF0ZSB0aGUgcmVtIHdpdGggYSBnaXZlbiBwaXhlbCB3aXRoIHRoZSBnaXZlbiBiYXNlIGZvbnQgc2l6ZVxuXG5JbjogIDVweFxuT3V0OiAwLjMxMjVyZW1cblxuIyMgTGl2ZSBUZW1wbGF0ZSBhYmJyZXZpYXRpb25zXG4tLS1cbi1yZW1cblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICR2YWx1ZSA9IHBpeGVsIGJhc2VkIG51bWJlciAod2l0aG91dCB1bml0KVxuXG4jIyBEZXBlbmRlbmNpZXNcbi0tLVxubm4tc3RyaXAtdW5pdFxuXG4jIyBFeGFtcGxlXG4tLS1cbmBgYGh0bWxfZXhhbXBsZVxubm4tcHgtdG8tcmVtKDUpIC8vIE91dHB1dCAwLjMxMjVyZW1cbmBgYFxuXG4qL1xuLyogZG9jXG4tLS1cbnRpdGxlOiBQaXhlbCB0byB1bml0XG5uYW1lOiBweC10by11bml0XG5jYXRlZ29yeTogbWl4aW5zXG4tLS1cblxuU2V0IGEgcHJvcGVydHkgYW5kIHZhbHVlIChwaXhlbCBiYXNlZCB3aXRob3V0IHVuaXQpXG5cbkNhbGN1bGF0ZXMgcmVtIC8gZW0gLyAlIGZyb20gZ2l2ZW4gcGl4ZWwgYW5kIGJhc2UgKGRlZmF1bHQgYmFzZSBpcyB0aGVcbmJhc2UtZm9udC1zaXplLCAxNnB4KVxuSWYgcnRsIGlzIHRydWUsIHRoaXMgbWl4aW4gaGFuZGxlcyBhbGwgdGhlIGRpcmVjdGlvbiBzdHVmZjpcbi0gU3dpdGNoaW5nIHRoZSB2YWx1ZXMsIHdoZW4gd2UgaGF2ZSBleGFjdGx5IDQgdmFsdWVzXG4tIFN3aXRjaGluZyBsZWZ0IGFuZCByaWdodCBpbiBwcm9wZXJ0aWVzIChwYWRkaW5nIGFuZCBtYXJnaW4pXG5cbiMjIExpdmUgVGVtcGxhdGUgYWJicmV2aWF0aW9uc1xuLS0tXG4tcHR1IChmb3IgZW0gb3IgJSB0byBwaXhlbCAtIHdpdGggYmFzZSBwYXJhbWV0ZXIpXG4tcmVtIChmb3IgcmVtIHRvIHBpeGVsIC0gd2l0aG91dCBiYXNlIHBhcmFtZXRlcilcblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICRwcm9wZXJ0eSA9IHBhZGRpbmcgfCBtYXJnaW4gfCBmb250LXNpemUgfCB3aWR0aCB8IGhlaWdodFxuQHBhcmFtZXRlciAkdmFsdWUgPSBQaXhlbCBiYXNlZCBudW1iZXIgLSBhZGQgcHggdG8ga2VlcCB0aGUgcHggZm9yIGEgdmFsdWVcbkBwYXJhbWV0ZXIgJGJhc2UgPSBweCBiYXNlZCBudW1iZXIsIERlZmF1bHQ6IDE2cHhcbkBwYXJhbWV0ZXIgJHVuaXQgPSBTZXQgdW5pdDogcHggfCBlbSB8IHJlbSB8IHBlcmNlbnRcblxuIyMgRGVwZW5kZW5jaWVzXG4tLS1cbmFic3RyYWN0L2Z1bmN0aW9ucy9zd2FwLWxlZnQtcmlnaHRcbmFic3RyYWN0L2Z1bmN0aW9ucy9zdHJpcC11bml0XG5cbiMjIEV4YW1wbGVcbi0tLVxuXG5gYGBodG1sX2V4YW1wbGVcbkBpbmNsdWRlIG5uLXB4LXRvLXVuaXQocGFkZGluZywgMCAxMHB4IDIwIDApOyA9PiBwYWRkaW5nOiAwIDEwcHggMS4yNXJlbSAwO1xuQGluY2x1ZGUgbm4tcHgtdG8tdW5pdChwYWRkaW5nLCAwIDEwIDIwIDApOyA9PiBwYWRkaW5nOiAwIDAuNjI1cmVtIDEuMjVyZW0gMDtcbkBpbmNsdWRlIG5uLXB4LXRvLXVuaXQocGFkZGluZy1sZWZ0LCAxMCk7XG5AaW5jbHVkZSBubi1weC10by11bml0KHBhZGRpbmctcmlnaHQsIDEwKTtcbkBpbmNsdWRlIG5uLXB4LXRvLXVuaXQobWFyZ2luLCAwIDEwIDIwIDApO1xuQGluY2x1ZGUgbm4tcHgtdG8tdW5pdChtYXJnaW4tbGVmdCwgMTApO1xuQGluY2x1ZGUgbm4tcHgtdG8tdW5pdChtYXJnaW4tcmlnaHQsIDEwKTtcbkBpbmNsdWRlIG5uLXB4LXRvLXVuaXQoZm9udC1zaXplLCAyMCk7XG5AaW5jbHVkZSBubi1weC10by11bml0KHdpZHRoLCAxMDApO1xuQGluY2x1ZGUgbm4tcHgtdG8tdW5pdChtaW4td2lkdGgsIDEwMCk7XG5AaW5jbHVkZSBubi1weC10by11bml0KG1hbm4td2lkdGgsIDEwMCk7XG5AaW5jbHVkZSBubi1weC10by11bml0KGhlaWdodCwgMTAwKTtcbkBpbmNsdWRlIG5uLXB4LXRvLXVuaXQobWluLWhlaWdodCwgMTAwKTtcbkBpbmNsdWRlIG5uLXB4LXRvLXVuaXQobWFubi1oZWlnaHQsIDEwMCk7XG5gYGBcblxuIyMgU291cmNlXG4tLS1cbmh0dHA6Ly9jc3MtdHJpY2tzLmNvbS9zbmlwcGV0cy9jc3MvbGVzcy1taXhpbi1mb3ItcmVtLWZvbnQtc2l6aW5nL1xuXG4qL1xuLyogZG9jXG4tLS1cbnRpdGxlOiBQaXhlbCB0byB1bml0bGVzc1xubmFtZTogbm4tcHgtdG8tdW5pdGxlc3NcbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxuXG5UaGlzIG1ha2VzIHRoZSBzYW1lIGNhbGN1bGF0aW9uIGFzIHB4IHRvIGVtLiBCdXQgaXQgZG9uJ3QgcHJpbnQgb3V0IHRoZSB1bml0LlxuXG5Vc2UgdGhpcyBmb3IgbGluZS1oZWlnaHRzLlxuXG4jIyBMaXZlIFRlbXBsYXRlIGFiYnJldmlhdGlvbnNcbi0tLVxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJHZhbHVlID0gcGl4ZWwgYmFzZWQgbnVtYmVyICh3aXRob3V0IHVuaXQpXG5AcGFyYW1ldGVyICRiYXNlID0gcGl4ZWwgYmFzZWQgbnVtYmVyICh3aXRob3V0IHVuaXQpXG5cbiMjIERlcGVuZGVuY2llc1xuLS0tXG5cbiMjIEV4YW1wbGVcbi0tLVxuXG5gYGBodG1sX2V4YW1wbGVcbmxpbmUtaGVpZ2h0OiBubi1weC10by11bml0bGVzcyg1KSAvLyBPdXRwdXQ6IDAuMzEyNVxuYGBgXG5cbiMjIFNvdXJjZVxuLS0tXG5cbiovXG4vKiBkb2Ncbi0tLVxudGl0bGU6IFN0cmlwIHVuaXRcbm5hbWU6IG5uLXN0cmlwLXVuaXRcbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxuXG5TdHJpcHMgb2YgdGhlIHVuaXQgb2YgYSBudW1iZXJcblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICRudW0gPSBudW1iZXIgd2l0aCB1bml0ICg1cHgsIDVlbSwgNXJlbSlcblxuIyMgRXhhbXBsZVxuLS0tXG5cbmBgYGh0bWxfZXhhbXBsZVxubm4tc3RyaXAtdW5pdCg1cHgpIC8vT3V0cHV0OiA1XG5ubi1zdHJpcC11bml0KDEwZW0pIC8vIE91dHB1dDogMTBcbm5uLXN0cmlwLXVuaXQoMTVyZW0pIC8vIE91dHB1dDogMTVcbmBgYFxuXG4qL1xuLyogZG9jXG4tLS1cbnRpdGxlOiB6LWluZGV4XG5uYW1lOiBubi16LWluZGV4XG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cblxuQmVjYXVzZSB6LWluZGljZXMgY2FuIGdldCB0cmlja3kgd2UgbWFuYWdlIHRoZW0gaW4gdGhlIHRoZW1lLnNjc3MgZ2xvYmFsbHkuXG5cbkFsd2F5cyB1c2UgdGhpcyBtaXhpbiB0byBzZXQgc2V0IGEgei1pbmRleC5cblxuUmVhZCB0aGUgQmVzdCBQcmFjdGljZSB0byBnZXQgYW4gZnVsbCBkb2N1bWVudGF0aW9uOlxuaHR0cHM6Ly9wcm9qZWN0cy5uZXRjZW50cmljLmJpei93aWtpL2Rpc3BsYXkvRlJPTlRFTkQvSG93K3RvK3NldCthK3otaW5kZXhcblxuIyMgTGl2ZSBUZW1wbGF0ZSBhYmJyZXZpYXRpb25zXG4tLS1cbi16XG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkZWxlbWVudCA9IE5hbWUgb2YgdGhlIGVsZW1lbnQgKG5vcm1hbGx5IHRoaXMgd2lsbCBiZSB0aGUgbW9kdWxlIG5hbWUgZm9yIHRoZSBtYWluIHN0YWNrKVxuQHBhcmFtZXRlciAkbGlzdCA9IE5hbWUgb2YgdGhlIGxpc3QgKGRlZmF1bHQgJHotaW5kaWNlcykuIE11c3QgYmUgb25seSBzZXQgZm9yIHN0YWNrIGNvbnRleHRcbkBwYXJhbWV0ZXIgJG1pbiA9IFNldCBhIG1pbmltdW0gei1pbmRleCB3aGljaCB3aWxsIGJlIGFkZGVkIHRvIHRoZSBsaXN0LlxuXG4jIyBEZXBlbmRlbmNpZXNcbi0tLVxuJHotaW5kaWNlcyB2YXJpYWJsZSBpbiB0aGUgdGhlbWUuc2Nzc1xuXG4jIyBFeGFtcGxlXG4tLS1cblxuYGBgaHRtbF9leGFtcGxlXG5cbi8vIEluIHRoZSBTQVNTIHRoZW1lIGZpbGVcblxuJHotaW5kaWNlczogc2xpZGVyLCBtb2RhbCwgZGlhbG9nLCBuYXZpZ2F0aW9uO1xuXG4vLyBJbiB0aGUgU0FTUyBtb2R1bGUgZmlsZVxuXG4ubW9kYWwge1xuICAgICZfX2Jhc2Uge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHotaW5kZXg6IG5uLXotaW5kZXgobW9kYWwpO1xuICAgIH1cbn1cbmBgYFxuXG4jIyBTb3VyY2Vcbi0tLVxuaHR0cDovL3d3dy5zbWFzaGluZ21hZ2F6aW5lLmNvbS8yMDE0LzA2LzEyL3Nhc3N5LXotaW5kZXgtbWFuYWdlbWVudC1mb3ItY29tcGxleC1sYXlvdXRzL1xuXG4qL1xuLyogZG9jXG4tLS1cbnRpdGxlOiByZW1vdmUgZXZlcnkgdW5pdFxubmFtZTogc3RyaXAtdW5pdFxuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5yZW1vdmUgYWxsIHVuaXRzXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkbnVtYmVyID0gbnVtYmVyIHdpdGggdW5pdFxuXG4jIyBFeGFtcGxlXG4tLS1cbmBgYGh0bWxfZXhhbXBsZVxuc3RyaXAtdW5pdCg1cHgpIC8vIE91dHB1dDogNVxuYGBgXG4qL1xuLypcbiAgICBUaGlzIG1peGluIGNvbnZlcnRzIGFueSB1bml0bGVzcyBudW1iZXIgKGZvciBleGFtcGxlIDQwKSB0byB0aGUgY29ycmVjdCB1bml0LCBhY2NvcmRpbmcgdG8gdGhlIGdpdmVuIGF4aXMuXG5cbiAgICBQYXJhbWV0ZXJzOlxuICAgIC0gJHZhbHVlOiB1bml0bGVzcyBudW1iZXIgdG8gYmUgY29udmVydGVkLiBBIHVuaXQgaW4gJHZhbHVlIHdpbGwgY29ycmVzcG9uZCB0byBhIHB4IGluIHRoZSBicm93c2VyLFxuICAgICAgICBubyBtYXR0ZXIgaWYgaXQncyBvdXRwdXQgYXMgcHggb3IgcmVtXG5cbiAgICBSZXR1cm5zXG4gICAgLSBIb3Jpem9udGFsOiB3aWxsIGNvbnZlcnQgdGhlIG51bWJlciB0byBwaXhlbHMgKDQwcHgpXG4gICAgLSBWZXJ0aWNhbDogd2lsbCBjb252ZXJ0IHRoZSBudW1iZXIgdG8gcmVtIChpZiByZW0gPT09IDE2cHgsIHRoZW4gNDAgd2lsbCBiZSBjb252ZXJ0ZWQgdG8gMi41IHJlbSlcbiovXG4vKlxuICAgIENvbnZlcnRzIGEgdW5pdGxlc3MgbnVtYmVyIHRvIHRoZSBjb3JyZXNwb25kaW5nIHVuaXQgb24gdGhlIGhvcml6b250YWwgYXhpcy5cbiAgICBCeSBkZWZhdWx0IHdpbGwgY29udmVydCB0aGUgdmFsdWUgdG8gcHguXG4qL1xuLypcbiAgICBDb252ZXJ0cyBhIHVuaXRsZXNzIG51bWJlciB0byB0aGUgY29ycmVzcG9uZGluZyB1bml0IG9uIHRoZSB2ZXJ0aWNhbCBheGlzLlxuICAgIEJ5IGRlZmF1bHQgd2lsbCBjb252ZXJ0IHRoZSB2YWx1ZSB0byByZW0uXG4qL1xuLyogc3R5bGVsaW50LWRpc2FibGUgKi9cbi8qIGRvY1xuLS0tXG50aXRsZTogU3dhcCBsZWZ0IHJpZ2h0IHZhbHVlc1xubmFtZTogc3dhcC1sZWZ0LXJpZ2h0LXZhbHVlc1xuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5cblN3YXAgdGhlIHZhbHVlcyBmb3IgcmlnaHQgYW5kIGxlZnQgd2hlbiAkcnRsIGlzIHNldCB0byB0cnVlOlxuXG5JbjogIDAgNXB4IDhweCAxMnB4XG5PdXQ6IDAgMTJweCA4cHggNXB4IChpbiBydGwpXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkdmFsdWVzID0gNCBudW1iZXJzICh3b3JrcyB3aXRoIGFsbCB1bml0cylcblxuIyMgRXhhbXBsZVxuLS0tXG5cbmBgYGh0bWxfZXhhbXBsZVxuc3dhcC1sZWZ0LXJpZ2h0LXZhbHVlcygwIDFweCA4cHggMTJweCkgLy8gMCAxMnB4IDhweCAxcHhcbnN3YXAtbGVmdC1yaWdodC12YWx1ZXMoMCAxZW0gOGVtIDEyZW0pIC8vIDAgMTJlbSA4ZW0gMWVtXG53YXAtbGVmdC1yaWdodC12YWx1ZXMoMCAxcmVtIDhyZW0gMTJyZW0pIC8vIDAgMTJyZW0gOHJlbSAxcmVtXG5gYGBcblxuIyMgU291cmNlXG4tLS1cbmh0dHA6Ly9zdGFja292ZXJmbG93LmNvbS9xdWVzdGlvbnMvMTQxOTkzMjMvcmlnaHQtdG8tbGVmdC1ydGwtc3VwcG9ydC1pbi1zYXNzLXByb2plY3RcblxuKi9cbi8qIHN0eWxlbGludC1kaXNhYmxlICovXG4vKiBkb2Ncbi0tLVxudGl0bGU6IFN3YXAgbGVmdCByaWdodCBuYW1lc1xubmFtZTogc3dhcC1sZWZ0LXJpZ2h0LW5hbWVzXG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cblxuU3dhcCB0aGUgbmFtZXMgcmlnaHQgYW5kIGxlZnQgd2hlbiAkcnRsIGlzIHNldCB0byB0cnVlLlxuSWYgdGhlIHZhbHVlIGlzIG5vdCByaWdodCBvciBsZWZ0IGl0IHJldHVybnMgdGhlIG9yaWdpbmFsIHZhbHVlLlxuXG5JbjogIHJpZ2h0XG5PdXQ6IGxlZnQgKGluIHJ0bCksIHJpZ2h0IChpbiBsdHIpXG5cbiMjIExpdmUgVGVtcGxhdGUgYWJicmV2aWF0aW9uc1xuLS0tXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkb3JpZ2luID0gcmlnaHQgfCBsZWZ0XG5cbiMjIEV4YW1wbGVcbi0tLVxuXG5gYGBodG1sX2V4YW1wbGVcbnN3YXAtbGVmdC1yaWdodC1uYW1lKGxlZnQpXG5zd2FwLWxlZnQtcmlnaHQtbmFtZShyaWdodClcbmBgYFxuXG4jIyBTb3VyY2Vcbi0tLVxuaHR0cDovL3N0YWNrb3ZlcmZsb3cuY29tL3F1ZXN0aW9ucy8xNDE5OTMyMy9yaWdodC10by1sZWZ0LXJ0bC1zdXBwb3J0LWluLXNhc3MtcHJvamVjdFxuXG4qL1xuLyogIExpc3Qgb2YgQ1NTIHByb3BlcnRpZXMgdGhhdCB3aWxsIGFsd2F5cyBiZSBvdXRwdXQgYXQgbGVhc3QgYXMgMiBkaWZmZXJlbnQgdmFsdWVzXG4gICAgaW4gb3JkZXIgdG8gYmUgYWJsZSB0byBjb252ZXJ0IGVhY2ggb25lIHRvIHRoZSBjb3JyZWN0IGF4aXMgdW5pdCAqL1xuLypcbiAgICBNaXhpbiBmb3IgYXV0b21hdGljYWxseSBoYW5kbGluZyBzcGFjaW5ncyBhcm91bmQvYmV0d2VlbiBlbGVtZW50cy5cblxuICAgIFRoaXMgbWl4aW4gd2lsbCBhdXRvbWF0aWNhbGx5IGludmVydCB0aGUgbGVmL3JpZ2h0IGRpcmVjdGlvbnMgaW4gUlRMIGxhbmd1YWdlcy5cbiAgICBBbHNvLCB0aGUgdW5pdGxlc3MgdmFsdWVzIHdpbGwgYmUgY29udmVydGVkIHRvIHRoZSBwcm9wZXIgdW5pdCBhY2NvcmRpbmcgdG8gdGhlIGF4aXNcblxuICAgIFBhcmFtZXRlcnM6XG4gICAgLSAkcHJvcGVydHktbmFtZTogbmFtZSBvZiB0aGUgQ1NTIHByb3BlcnR5IHRoYXQgc2hvdWxkIGJlIG91dHB1dC4gU3VwcG9ydGVkIHByb3BlcnRpZXMgYXJlOlxuICAgICAgICBtYXJnaW4sIG1hcmdpbi10b3AsIG1hcmdpbi1yaWdodCwgbWFyZ2luLWJvdHRvbSwgbWFyZ2luLWxlZnRcbiAgICAgICAgcGFkZGluZywgcGFkZGluZy10b3AsIHBhZGRpbmctcmlnaHQsIHBhZGRpbmctYm90dG9tLCBwYWRkaW5nLWxlZnRcbiAgICAgICAgd2lkdGgsIGhlaWdodCwgbWluLXdpZHRoLCBtYXgtd2lkdGgsIG1pbi1oZWlnaHQsIG1pbi1oZWlnaHRcbiAgICAtICR2YWx1ZTogdmFsdWUgdGhhdCB3aWxsIGJlIG91dHB1dCBhcyBwYXJ0IG9mIHRoZSBnaXZlbiBwcm9wZXJ0eS4gU3VwcG9ydGVkIHZhbHVlcyBhcmU6XG4gICAgICAgIFVuaXRsZXNzIG51bWJlciAoNDApOiB0aGlzIHNob3VsZCBiZSB1c2VkIG1vc3Qgb2YgdGhlIHRpbWVzLiBJdCB3aWxsIGF1dG9tYXRpY2FsbHkgYmUgY29udmVydGVkXG4gICAgICAgICAgICB0byB0aGUgY29ycmVjdCB1bml0IGRlcGVuZGluZyBvbiB0aGUgYXhpcyB3aGVyZSBpdCdzIHVzZWQgKGhvcml6b250YWwgYXhpcyA9PiBweCwgdmVydGljYWwgYXhpcyA9PiByZW0pLlxuICAgICAgICAgICAgRWFjaCB1bml0IGluICR2YWx1ZSB3aWxsIGNvcnJlc3BvbmQgdG8gYSBweCBpbiB0aGUgYnJvd3Nlciwgbm8gbWF0dGVyIHRvIHdoaWNoIHVuaXQgaXQgd2lsbCBiZSBjb252ZXJ0ZWQuXG4gICAgICAgIE51bWJlciB3aXRoIHVuaXQgKDQwcHgsIDQwJS4uLik6IHRoZSBudW1iZXIgYW5kIHRoZSB1bml0IHdpbGwgYmUgcHJlc2VydmVkIGFuZCBvbmx5IHRoZSBsZWZ0L3JpZ2h0IGludmVyc2lvblxuICAgICAgICAgICAgd2lsbCBiZSBkb25lIGZvciBSVEwgbGFuZ3VhZ2VzXG4gICAgICAgIExpc3Qgb2YgdmFsdWVzICg0MCAzMCUgMjAgMTApOiBtYXJnaW4gYW5kIHBhZGRpbmcgc2hvcnRoYW5kcyB3aGl0aCBtdWx0aXBsZSB2YWx1ZXMgYXJlIHN1cHBvcnRlZC5cbiAgICAgICAgICAgIFRoZSBsZWZ0L3JpZ2h0IHZhbHVlcyB3aWxsIGJlIGF1dG9tYXRpY2FsbHkgc3dhcHBlZCBpbiBSVEwgYW5kIHRoZSB1bml0bGVzcyBudW1iZXJzIHdpbGwgYmUgY29udmVydGVkXG4gICAgICAgICAgICB0byB0aGUgY29ycmVzcG9uZGluZyB1bml0LiBVbml0bGVzcyBhbmQgbnVtYmVycyB3aXRoIHVuaXRzIGNhbiBiZSBtaXhlZCBpbiB0aGUgc2FtZSBjYWxsLlxuICAgICAgICBVc2luZyBjYWxjKCkgaW4gYW55IG9mIHRoZSBwcmV2aW91cyBleGFtcGxlcyBpcyBzdXBwb3J0ZWQsIGFsdGhvdWdoIG5vIHVuaXQgY29udmVyc2lvbiB3aWxsIGJlIGRvbmVcblxuICMjIEV4YW1wbGVcbi0tLVxuXG5gYGBodG1sX2V4YW1wbGVcbkBpbmNsdWRlIHNwYWNpbmcocGFkZGluZywgMCAxMHB4IDIwIDApOyA9PiBwYWRkaW5nOiAwIDEwcHggMnJlbSAwO1xuQGluY2x1ZGUgc3BhY2luZyhwYWRkaW5nLCAwIDEwIDIwIDApOyA9PiBwYWRkaW5nOiAwIDEwcHggMnJlbSAwO1xuQGluY2x1ZGUgc3BhY2luZyhwYWRkaW5nLWxlZnQsIDEwKTtcbkBpbmNsdWRlIHNwYWNpbmcocGFkZGluZy1yaWdodCwgMTApO1xuQGluY2x1ZGUgc3BhY2luZyhtYXJnaW4sIDAgMTAgMjAgMCk7XG5AaW5jbHVkZSBzcGFjaW5nKG1hcmdpbi1sZWZ0LCAxMCk7XG5AaW5jbHVkZSBzcGFjaW5nKG1hcmdpbi1yaWdodCwgMTApO1xuQGluY2x1ZGUgc3BhY2luZyh3aWR0aCwgMTAwKTtcbkBpbmNsdWRlIHNwYWNpbmcobWluLXdpZHRoLCAxMDApO1xuQGluY2x1ZGUgc3BhY2luZyhtYXgtd2lkdGgsIDEwMCk7XG5AaW5jbHVkZSBzcGFjaW5nKGhlaWdodCwgMTAwKTtcbkBpbmNsdWRlIHNwYWNpbmcobWluLWhlaWdodCwgMTAwKTtcbkBpbmNsdWRlIHNwYWNpbmcobWF4LWhlaWdodCwgMTAwKTtcbmBgYFxuKi9cbi8qIGRvY1xuLS0tXG50aXRsZTogQ2xlYXJmaXhcbm5hbWU6IGNsZWFyZml4XG5jYXRlZ29yeTogbWl4aW5zXG4tLS1cblxuQ2xlYXJzIGFmdGVyIGZsb2F0aW5nIGVsZW1lbnRcblxuVXNlIHRoaXMgbWl4aW4gb25seSBpbnNpZGUgbWVkaWEgcXVlcmllcyB3aGVyZSB5b3UgY2FuJ3QgdXNlIHRoZVxuYWJzdHJhY3QvZXh0ZW5kcy91dGlscy9fY2xlYXJmaXggdmVyc2lvbiwgd2hpY2ggYWRkcyBsZXNzIGNvZGUgdG8gY3NzXG5cbiMjIExpdmUgVGVtcGxhdGUgYWJicmV2aWF0aW9uc1xuLS0tXG5cbiMjIEV4YW1wbGVcbi0tLVxuXG5gYGBodG1sX2V4YW1wbGVcbkBpbmNsdWRlIGNsZWFyZml4O1xuYGBgXG5cbiMjIFNvdXJjZVxuLS0tXG5odHRwczovL2Nzcy10cmlja3MuY29tL3NuaXBwZXRzL2Nzcy9jbGVhci1maXgvXG4qL1xuLyogc3R5bGVsaW50LWRpc2FibGUgc3RyaW5nLW5vLW5ld2xpbmUgKi9cbi8qIGRvY1xuLS0tXG50aXRsZTogZm9jdXMgY29sb3Jcbm5hbWU6IGZvY3VzIGNvbG9yXG5jYXRlZ29yeTogbWl4aW5zXG4tLS1cblxuQWRkIGEgZm9jdXMgY29sb3Igd2hlbiBrZXlib2FyZC1mb2N1cyBpcyBhY3RpdmF0ZWRcbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtICRudW1iZXJcblxuKi9cbi8qIGRvY1xuLS0tXG50aXRsZTogaWdub3JlLWNvbnRhaW5lclxubmFtZTogaWdub3JlLWNvbnRhaW5lclxuY2F0ZWdvcnk6IG1peGluc1xuLS0tXG5cblNldCBmdWxsIHBhZ2Ugd2lkdGggZm9yIHNvbWV0aGluZyBpbnNpZGUgYSBjb250YWluZXJcblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW0gJGNvbnRhaW5lci1zaXplXG5AcGFyYW0gJGd1dHRlclxuXG4qL1xuLyogR2VuZXJhdGVzIGFsbCB0aGUgcnVsZXMgZm9yIHRoZSBncmlkIGNvbHVtbnMgdXAgdG8gdGhlIGdpdmVuIGFtb3VudCBvZiBjb2x1bW4gKi9cbi8qIEdlbmVyYXRlcyBhbGwgdGhlIHJ1bGVzIGZvciB0aGUgZ3JpZCBjb2x1bW4gb2Zmc2V0IHVwIHRvIHRoZSBnaXZlbiBhbW91bnQgb2YgY29sdW1uICovXG4vKiBHZW5lcmF0ZXMgYWxsIHRoZSBydWxlcyBmb3IgdGhlIGdyaWQgYW5kIGNvbHVtbnMgZm9yIHRoZSBnaXZlbiBicmVhayBwb2ludCBhbmQgdG90YWwgb2YgY29sdW1ucyAqL1xuLyogQVBJIGZ1bmN0aW9uIHRvIGJlIGNhbGxlZCB0byBnZW5lcmF0ZSBhIGdyaWQgY29uZmlnICovXG4vKiBkb2Ncbi0tLVxudHlwZTogYnV0dG9uIHR5cGVcbnN0YXRlOiBzdGF0ZSBidXR0b25cbi0tLVxuXG5CdXR0b24gc3R5bGVzXG5cblVzZSB0aGlzIG1peGluIGZvciBidXR0b24gc3R5bGVzOiBjb2xvciB0ZXh0LCBiYWNrZ3JvdW5kLCBib3JkZXJcblxuIyMgRXhhbXBsZVxuLS0tXG5cbmBgYGh0bWxfZXhhbXBsZVxuQGluY2x1ZGUgYnV0dG9uKHByaW1hcnkpO1xuYGBgXG4qL1xuLyogZG9jXG4tLS1cbmxpbmVMaW1pdDogVGhpcyB2YWx1ZSBzcGVjaWZpZXMgdGhlIG51bWJlciBvZiBsaW5lcyBhZnRlciB3aGljaCB0aGUgY29udGVudCB3aWxsIGJlIGNsYW1wZWQuIEl0IG11c3QgYmUgZ3JlYXRlciB0aGFuIDAuXG4tLS1cblxuVHJ1bmNhdGVzIHRleHQgYXQgYSBzcGVjaWZpYyBudW1iZXIgb2YgbGluZXMuXG5cblVzZSB0aGlzIG1peGluIHRvIGhpZGUgbG9uZyB0ZXh0LlxuXG4jIyBFeGFtcGxlXG4tLS1cblxuYGBgaHRtbF9leGFtcGxlXG5AaW5jbHVkZSBsaW5lLWNsYW1wKCRsaW5lTGltaXQ6IDQpO1xuYGBgXG4qL1xuLyogdHlwb2dyYXBoeVxuLS0tXG50aXRsZTogdHlwb2dyYXBoeVxubmFtZTogVHlwb2dyYXBoeVxuY2F0ZWdvcnk6IG1peGluc1xuLS0tXG5cbkFkZHMgZm9udCBDU1MgcHJvcGVydGllcyBieSBhIG1hcCBwcm92aWRlZFxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbSAkdC1zdHlsZVxuQHBhcmFtICRpcy1pbXBvcnRhbnQ6IGZhbHNlXG5cbiogJHQtc3R5bGUgaXMgZXhwZWN0ZWQgdG8gYmUgYSBtYXAgd2l0aCAnZGVmYXVsdCcgYW5kICdicmVha3BvaW50W3NdJyBzdWJtYXBzIHdpdGggYSBwcm9wZXJ0eVxuZm9yIGV2ZXJ5IGNzcyBwcm9wZXJ0eSB0byBiZSBzZXQuXG4qICRpcy1pbXBvcnRhbnQgcGFyYW1ldGVyIGFsbG93cyB0byBmb3JjZSB0eXBvZ3JhcGh5IHByb3BlcnRpZXMgdG8gYmUgc2V0IGFzICFpbXBvcnRhbnRcblRyeSB0byBhdm9pZCBpdHMgdXNlLCBidXQgaXQgbWlnaHQgYmUgbmVlZGVkIGZvciBzaXR1YXRpb25zIHdoZXJlIHN0eWxlcyBmb3IgYSBjb21wb25lbnRcbmFyZSB2ZXJ5IHNwZWNpZmljIGFuZCB0byBvdmVyd3JpdGUgdGhlIGdlbmVyaWMgb25lcyBpcyB0b28gY29tcGxleCAoaWYgdGhleSBoYXZlIGEgbG90IG9mIHNwZWNpZmljaXR5KVxuXG4qL1xuLyogZG9jXG4tLS1cbnRpdGxlOiBoaWRkZW5cbm5hbWU6IGhpZGRlblxuY2F0ZWdvcnk6IG1peGluc1xuLS0tXG5cbkhpZGUgZnJvbSBib3RoIHNjcmVlbnJlYWRlcnMgYW5kIGJyb3dzZXJzOiBoNWJwLmNvbS91XG4jIyBQYXJhbWV0ZXJzXG4tLS1cblxuKi9cbi8qIGRvY1xuLS0tXG50aXRsZTogb3ZlcmxheVxubmFtZTogb3ZlcmxheVxuY2F0ZWdvcnk6IG1peGluc1xuLS0tXG5cbkNyZWF0ZXMgYW4gb3ZlcmxheSB3aXRoIHRoZSBwcm92aWRlZCBiYWNrZ3JvdW5kIGNvbG9yXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbSAkYmdDb2xvclxuXG4qL1xuLyoqXG4gKiBAbWl4aW4gdG9wLWJvdHRvbS1ib3JkZXJcbiAqIEBkZXNjIENyZWF0ZXMgYSBkeW5hbWljIGFuZCBjdXN0b21pemFibGUgYm9yZGVyIGF0IHRoZSBzcGVjaWZpZWQgcG9zaXRpb24gb24gYW4gZWxlbWVudC5cbiAqXG4gKiBAcGFyYW0ge3N0cmluZ30gJHBvc2l0aW9uIC0gT3B0aW9uYWwsIERlZmF1bHQ6ICdib3R0b20nLiBEZWZpbmVzIHRoZSBwb3NpdGlvbiBvZiB0aGUgYm9yZGVyLiBBY2NlcHRzIHZhbHVlcyAndG9wJyBvciAnYm90dG9tJy5cbiAqIEBwYXJhbSB7Y29sb3J9ICRjb2xvciAtIE9wdGlvbmFsLCBEZWZhdWx0OiAnJGMtYmxhY2snLiBTcGVjaWZpZXMgdGhlIGNvbG9yIG9mIHRoZSBib3JkZXIuIEFjY2VwdHMgYW55IHZhbGlkIENTUyBjb2xvciB2YWx1ZS5cbiAqIEBwYXJhbSB7bGVuZ3RofSAkd2lkdGggLSBPcHRpb25hbCwgRGVmYXVsdDogJzJweCcuIFNldHMgdGhlIHdpZHRoIG9mIHRoZSBib3JkZXIuIEFjY2VwdHMgYW55IHZhbGlkIENTUyBsZW5ndGggdmFsdWUuXG4gKiBAcGFyYW0ge2xlbmd0aH0gJG1hcmdpbiAtIE9wdGlvbmFsLCBEZWZhdWx0OiAnMCcuIEFkZHMgbWFyZ2luIHRvIHRoZSBib3JkZXIuIEFjY2VwdHMgYW55IHZhbGlkIENTUyBsZW5ndGggdmFsdWUuXG4gKlxuICogQGV4YW1wbGVcbiAqICAgLmV4YW1wbGUtZWxlbWVudCB7XG4gKiAgICAgICBAaW5jbHVkZSB0b3AtYm90dG9tLWJvcmRlcigkcG9zaXRpb246IHRvcCwgJGNvbG9yOiAkYy1ncmV5LXR3bywgJHdpZHRoOiAzcHgsICRtYXJnaW46IDEwcHgpO1xuICogICB9XG4gKi9cbi8qIGRvY1xuLS0tXG50aXRsZTogcmVzZXQtZnVsbHdpZHRoLW1hcmdpbnNcbm5hbWU6IHJlc2V0LWZ1bGx3aWR0aC1tYXJnaW5zXG5jYXRlZ29yeTogbWl4aW5zXG4tLS1cblxuUmVzZXQgbWFyZ2lucyBmb3IgZnVsbCB3aWR0aCBjb21wb25lbnRzIGluc2lkZSBhIENvbnRhaW5lciBvciBhIENvbHVtbiBDb250cm9sXG4qL1xuLyogZG9jXG4tLS1cbnRpdGxlOiB2aXN1YWxseSBoaWRkZW5cbm5hbWU6IHZpc3VhbGx5IGhpZGRlblxuY2F0ZWdvcnk6IG1peGluc1xuLS0tXG5cbkhpZGRlbiBmcm9tIGJyb3dzZXJzIGJ1dCBhY2Nlc3NpYmxlIHRvIHNjcmVlbiByZWFkZXJzXG4jIyBQYXJhbWV0ZXJzXG4tLS1cblxuKi9cbi5kcm9wZG93biB7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mZi1yZWd1bGFyKTtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBmb250LXdlaWdodDogNDAwO1xuICBsaW5lLWhlaWdodDogMS41O1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tbHMtZGVmYXVsdCk7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi5kcm9wZG93bi10b2dnbGUge1xuICAvKiBJZiB2YWx1ZSBoYXMgbW9yZSB0aGFuIG9uZSBlbGVtZW50LCBhbnkgZXZlbiBpbmRleCB3aWxsIG1hdGNoIGEgaG9yaXpvbnRhbCBheGlzXG4gICAgICAqIDIgdmFsdWVzOiAoMSl0b3ArZG93biAoMilsZWZ0K3JpZ2h0XG4gICAgICAqIDMgdmFsdWVzOiAoMSl0b3AgKDIpbGVmdCtyaWdodCAoMylib3R0b21cbiAgICAgICogNCB2YWx1ZXM6ICgxKXRvcCAoMilyaWdodCAoMylib3R0b20gKDQpbGVmdFxuICAgICAgKi9cbiAgcGFkZGluZy1ibG9jazogMC43NXJlbTtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZy1pbmxpbmU6IDE2cHg7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgYm9yZGVyOiAxcHggc29saWQgI2E3YThhOTtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG4uZHJvcGRvd24tdG9nZ2xlIC5kcm9wZG93bi1hcnJvdyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuLmRyb3Bkb3duLXRvZ2dsZSAuZHJvcGRvd24tYXJyb3c6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzUzNTY1YTtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXNrLWltYWdlOiB1cmwoXCIvY29udGVudC9kYW0vdm9sdm8tbWVkaWEvbGlzdC1pY29ucy9jaGV2cm9uLWRvd24uc3ZnI2NoZXZyb24tZG93bi1pY29uLXcyNC12aWV3XCIpO1xuICBtYXNrLXJlcGVhdDogbm8tcmVwZWF0O1xuICBtYXNrLXNpemU6IGNvdmVyO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgd2lkdGg6IDI0cHg7XG4gIGhlaWdodDogMjRweDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLmRyb3Bkb3duLXRvZ2dsZSAuZHJvcGRvd24tYXJyb3c6YmVmb3JlIHtcbiAgICBtYXNrLWltYWdlOiB1cmwoXCIvY29udGVudC9kYW0vdm9sdm8tbWVkaWEvbGlzdC1pY29ucy9jaGV2cm9uLWRvd24uc3ZnI2NoZXZyb24tZG93bi1pY29uLXcxNi12aWV3XCIpO1xuICB9XG59XG4uZHJvcGRvd24tdG9nZ2xlIC5kcm9wZG93bi1hcnJvdy5vcGVuIHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcbn1cbi5kcm9wZG93bi1tZW51IHtcbiAgLyogSWYgdmFsdWUgaGFzIG1vcmUgdGhhbiBvbmUgZWxlbWVudCwgYW55IGV2ZW4gaW5kZXggd2lsbCBtYXRjaCBhIGhvcml6b250YWwgYXhpc1xuICAgICAgKiAyIHZhbHVlczogKDEpdG9wK2Rvd24gKDIpbGVmdCtyaWdodFxuICAgICAgKiAzIHZhbHVlczogKDEpdG9wICgyKWxlZnQrcmlnaHQgKDMpYm90dG9tXG4gICAgICAqIDQgdmFsdWVzOiAoMSl0b3AgKDIpcmlnaHQgKDMpYm90dG9tICg0KWxlZnRcbiAgICAgICovXG4gIHBhZGRpbmctYmxvY2s6IDAuMzEyNXJlbTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAxMDtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC1oZWlnaHQ6IDIwMHB4O1xuICBwYWRkaW5nLWlubGluZTogMTVweDtcbiAgb3ZlcmZsb3cteTogYXV0bztcbiAgYm9yZGVyOiAxcHggc29saWQgI2E3YThhOTtcbiAgYm9yZGVyLXRvcDogbm9uZTtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgYm9yZGVyLXJhZGl1czogMCAwIDRweCA0cHg7XG4gIGJveC1zaGFkb3c6IDAgMnB4IDJweCAwIHJnYmEoNzIsIDY5LCA2OSwgMC4yNSk7XG59XG4uZHJvcGRvd24tbWVudS1pdGVtIHtcbiAgLyogSWYgdmFsdWUgaGFzIG1vcmUgdGhhbiBvbmUgZWxlbWVudCwgYW55IGV2ZW4gaW5kZXggd2lsbCBtYXRjaCBhIGhvcml6b250YWwgYXhpc1xuICAgICAgKiAyIHZhbHVlczogKDEpdG9wK2Rvd24gKDIpbGVmdCtyaWdodFxuICAgICAgKiAzIHZhbHVlczogKDEpdG9wICgyKWxlZnQrcmlnaHQgKDMpYm90dG9tXG4gICAgICAqIDQgdmFsdWVzOiAoMSl0b3AgKDIpcmlnaHQgKDMpYm90dG9tICg0KWxlZnRcbiAgICAgICovXG4gIC8qIElmIHZhbHVlIGhhcyBtb3JlIHRoYW4gb25lIGVsZW1lbnQsIGFueSBldmVuIGluZGV4IHdpbGwgbWF0Y2ggYSBob3Jpem9udGFsIGF4aXNcbiAgICAgICogMiB2YWx1ZXM6ICgxKXRvcCtkb3duICgyKWxlZnQrcmlnaHRcbiAgICAgICogMyB2YWx1ZXM6ICgxKXRvcCAoMilsZWZ0K3JpZ2h0ICgzKWJvdHRvbVxuICAgICAgKiA0IHZhbHVlczogKDEpdG9wICgyKXJpZ2h0ICgzKWJvdHRvbSAoNClsZWZ0XG4gICAgICAqL1xuICBwYWRkaW5nOiAwLjYyNXJlbSAxMHB4O1xuICBmb250LXNpemU6IDE2cHg7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cbi5kcm9wZG93bi1tZW51LWl0ZW06aG92ZXIsIC5kcm9wZG93bi1tZW51LWl0ZW06Zm9jdXMge1xuICBiYWNrZ3JvdW5kOiAjZjdmN2Y3O1xufVxuLmRyb3Bkb3duLW1lbnUtaXRlbVthcmlhLXNlbGVjdGVkPXRydWVdIHtcbiAgYmFja2dyb3VuZDogI2Y3ZjdmNztcbn1cblxuLypcbkFsc28gcGxlYXNlIGZvbGxvdyB0aGlzXG5EbyB5b3VyIHByb2plY3QgaGF2ZSBkaWZlcmVudCBjaGFyc2V0IGxhbmd1YWdlcyB0byBhY2NvdW50IHdpdGg/XG4gICAgICAtIFllcyAtPiBmb2xsb3cgaHR0cHM6Ly9wcm9qZWN0cy5uZXRjZW50cmljLmJpei93aWtpL2Rpc3BsYXkvRlJPTlRFTkQvQ1NTKy0rRm9udCtOb3JtYWxpemF0aW9uXG4gICAgICAtIE5vIC0+IFlvdSBjYW4gc3RpbGwgdXNlIGl0LCB0aGVyZSBhcmUgdG9ucyBvZiBhZHZhbnRhZ2VzLCBidXQgaXRzIGNyZWF0ZSBzb21lIGV4dHJhIGNzcyBhbmQgbGF5b3V0IHJlbmRlcmluZ1xuKi9cbi8qXG4gICogRGVzaWduIHNwZWM6XG4gICogaHR0cHM6Ly93d3cuZmlnbWEuY29tL2ZpbGUvU1I0cnZRbE5uQ21QTXJROVdZYUlxdi9icmFuY2gvVEpxa0Z5bXEwOXdmOEt3bVkxV05jai9Wb2x2by1BRU0tRGVzaWduLXN5c3RlbT90eXBlPWRlc2lnbiZub2RlLWlkPTctMjYmdD1wQW05MTZWUmlxQ09EMkkxLTBcbiovXG4vKipcbiAqIHotaW5kZXhlcyBmcm9tIGxvd2VyIHRvIC0+IGhpZ2hlclxuICovXG4vKiBkb2Ncbi0tLVxudGl0bGU6IFBpeGVsIHRvIGVtXG5uYW1lOiBubi1weC10by1lbVxuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5cbkNhbGN1bGF0ZSB0aGUgZW0gd2l0aCBhIGdpdmVuIHBpeGVsIHdpdGggdGhlIGdpdmVuIGJhc2UgZm9udCBzaXplXG5JZiB5b3UgZG9uJ3Qgc2V0IGEgJGJhc2UgdGhlICRiYXNlLWZvbnQtc2l6ZSBpcyB1c2VkIGFzIHRoZSBjb250ZXh0XG5cbiMjIExpdmUgVGVtcGxhdGUgYWJicmV2aWF0aW9uc1xuLS0tXG4tcHR1XG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkdmFsdWUgPSBwaXhlbCBiYXNlZCBudW1iZXIgKHdpdGhvdXQgdW5pdClcbkBwYXJhbWV0ZXIgJGJhc2UgPSBwaXhlbCBiYXNlZCBudW1iZXIgKHdpdGhvdXQgdW5pdClcblxuIyMgRGVwZW5kZW5jaWVzXG4tLS1cbm5uLXN0cmlwLXVuaXRcblxuIyMgRXhhbXBsZVxuLS0tXG5gYGBodG1sX2V4YW1wbGVcbm5uLXB4LXRvLWVtKDUpIC8vIE91dHB1dDogMC4zMTI1ZW1cbm5uLXB4LXRvLWVtKDUsIDEwKSAvLyBPdXRwdXQ6IDAuNWVtXG5ubi1weC10by1lbSg1LCAyMCkgLy8gT3V0cHV0OiAwLjI1ZW1cbmBgYFxuKi9cbi8qIGRvY1xuLS0tXG50aXRsZTogUGl4ZWwgdG8gcmVtXG5uYW1lOiBubi1weC10by1yZW1cbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxuXG5DYWxjdWxhdGUgdGhlIHJlbSB3aXRoIGEgZ2l2ZW4gcGl4ZWwgd2l0aCB0aGUgZ2l2ZW4gYmFzZSBmb250IHNpemVcblxuSW46ICA1cHhcbk91dDogMC4zMTI1cmVtXG5cbiMjIExpdmUgVGVtcGxhdGUgYWJicmV2aWF0aW9uc1xuLS0tXG4tcmVtXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkdmFsdWUgPSBwaXhlbCBiYXNlZCBudW1iZXIgKHdpdGhvdXQgdW5pdClcblxuIyMgRGVwZW5kZW5jaWVzXG4tLS1cbm5uLXN0cmlwLXVuaXRcblxuIyMgRXhhbXBsZVxuLS0tXG5gYGBodG1sX2V4YW1wbGVcbm5uLXB4LXRvLXJlbSg1KSAvLyBPdXRwdXQgMC4zMTI1cmVtXG5gYGBcblxuKi9cbi8qIGRvY1xuLS0tXG50aXRsZTogUGl4ZWwgdG8gdW5pdFxubmFtZTogcHgtdG8tdW5pdFxuY2F0ZWdvcnk6IG1peGluc1xuLS0tXG5cblNldCBhIHByb3BlcnR5IGFuZCB2YWx1ZSAocGl4ZWwgYmFzZWQgd2l0aG91dCB1bml0KVxuXG5DYWxjdWxhdGVzIHJlbSAvIGVtIC8gJSBmcm9tIGdpdmVuIHBpeGVsIGFuZCBiYXNlIChkZWZhdWx0IGJhc2UgaXMgdGhlXG5iYXNlLWZvbnQtc2l6ZSwgMTZweClcbklmIHJ0bCBpcyB0cnVlLCB0aGlzIG1peGluIGhhbmRsZXMgYWxsIHRoZSBkaXJlY3Rpb24gc3R1ZmY6XG4tIFN3aXRjaGluZyB0aGUgdmFsdWVzLCB3aGVuIHdlIGhhdmUgZXhhY3RseSA0IHZhbHVlc1xuLSBTd2l0Y2hpbmcgbGVmdCBhbmQgcmlnaHQgaW4gcHJvcGVydGllcyAocGFkZGluZyBhbmQgbWFyZ2luKVxuXG4jIyBMaXZlIFRlbXBsYXRlIGFiYnJldmlhdGlvbnNcbi0tLVxuLXB0dSAoZm9yIGVtIG9yICUgdG8gcGl4ZWwgLSB3aXRoIGJhc2UgcGFyYW1ldGVyKVxuLXJlbSAoZm9yIHJlbSB0byBwaXhlbCAtIHdpdGhvdXQgYmFzZSBwYXJhbWV0ZXIpXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkcHJvcGVydHkgPSBwYWRkaW5nIHwgbWFyZ2luIHwgZm9udC1zaXplIHwgd2lkdGggfCBoZWlnaHRcbkBwYXJhbWV0ZXIgJHZhbHVlID0gUGl4ZWwgYmFzZWQgbnVtYmVyIC0gYWRkIHB4IHRvIGtlZXAgdGhlIHB4IGZvciBhIHZhbHVlXG5AcGFyYW1ldGVyICRiYXNlID0gcHggYmFzZWQgbnVtYmVyLCBEZWZhdWx0OiAxNnB4XG5AcGFyYW1ldGVyICR1bml0ID0gU2V0IHVuaXQ6IHB4IHwgZW0gfCByZW0gfCBwZXJjZW50XG5cbiMjIERlcGVuZGVuY2llc1xuLS0tXG5hYnN0cmFjdC9mdW5jdGlvbnMvc3dhcC1sZWZ0LXJpZ2h0XG5hYnN0cmFjdC9mdW5jdGlvbnMvc3RyaXAtdW5pdFxuXG4jIyBFeGFtcGxlXG4tLS1cblxuYGBgaHRtbF9leGFtcGxlXG5AaW5jbHVkZSBubi1weC10by11bml0KHBhZGRpbmcsIDAgMTBweCAyMCAwKTsgPT4gcGFkZGluZzogMCAxMHB4IDEuMjVyZW0gMDtcbkBpbmNsdWRlIG5uLXB4LXRvLXVuaXQocGFkZGluZywgMCAxMCAyMCAwKTsgPT4gcGFkZGluZzogMCAwLjYyNXJlbSAxLjI1cmVtIDA7XG5AaW5jbHVkZSBubi1weC10by11bml0KHBhZGRpbmctbGVmdCwgMTApO1xuQGluY2x1ZGUgbm4tcHgtdG8tdW5pdChwYWRkaW5nLXJpZ2h0LCAxMCk7XG5AaW5jbHVkZSBubi1weC10by11bml0KG1hcmdpbiwgMCAxMCAyMCAwKTtcbkBpbmNsdWRlIG5uLXB4LXRvLXVuaXQobWFyZ2luLWxlZnQsIDEwKTtcbkBpbmNsdWRlIG5uLXB4LXRvLXVuaXQobWFyZ2luLXJpZ2h0LCAxMCk7XG5AaW5jbHVkZSBubi1weC10by11bml0KGZvbnQtc2l6ZSwgMjApO1xuQGluY2x1ZGUgbm4tcHgtdG8tdW5pdCh3aWR0aCwgMTAwKTtcbkBpbmNsdWRlIG5uLXB4LXRvLXVuaXQobWluLXdpZHRoLCAxMDApO1xuQGluY2x1ZGUgbm4tcHgtdG8tdW5pdChtYW5uLXdpZHRoLCAxMDApO1xuQGluY2x1ZGUgbm4tcHgtdG8tdW5pdChoZWlnaHQsIDEwMCk7XG5AaW5jbHVkZSBubi1weC10by11bml0KG1pbi1oZWlnaHQsIDEwMCk7XG5AaW5jbHVkZSBubi1weC10by11bml0KG1hbm4taGVpZ2h0LCAxMDApO1xuYGBgXG5cbiMjIFNvdXJjZVxuLS0tXG5odHRwOi8vY3NzLXRyaWNrcy5jb20vc25pcHBldHMvY3NzL2xlc3MtbWl4aW4tZm9yLXJlbS1mb250LXNpemluZy9cblxuKi9cbi8qIGRvY1xuLS0tXG50aXRsZTogUGl4ZWwgdG8gdW5pdGxlc3Ncbm5hbWU6IG5uLXB4LXRvLXVuaXRsZXNzXG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cblxuVGhpcyBtYWtlcyB0aGUgc2FtZSBjYWxjdWxhdGlvbiBhcyBweCB0byBlbS4gQnV0IGl0IGRvbid0IHByaW50IG91dCB0aGUgdW5pdC5cblxuVXNlIHRoaXMgZm9yIGxpbmUtaGVpZ2h0cy5cblxuIyMgTGl2ZSBUZW1wbGF0ZSBhYmJyZXZpYXRpb25zXG4tLS1cblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICR2YWx1ZSA9IHBpeGVsIGJhc2VkIG51bWJlciAod2l0aG91dCB1bml0KVxuQHBhcmFtZXRlciAkYmFzZSA9IHBpeGVsIGJhc2VkIG51bWJlciAod2l0aG91dCB1bml0KVxuXG4jIyBEZXBlbmRlbmNpZXNcbi0tLVxuXG4jIyBFeGFtcGxlXG4tLS1cblxuYGBgaHRtbF9leGFtcGxlXG5saW5lLWhlaWdodDogbm4tcHgtdG8tdW5pdGxlc3MoNSkgLy8gT3V0cHV0OiAwLjMxMjVcbmBgYFxuXG4jIyBTb3VyY2Vcbi0tLVxuXG4qL1xuLyogZG9jXG4tLS1cbnRpdGxlOiBTdHJpcCB1bml0XG5uYW1lOiBubi1zdHJpcC11bml0XG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cblxuU3RyaXBzIG9mIHRoZSB1bml0IG9mIGEgbnVtYmVyXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkbnVtID0gbnVtYmVyIHdpdGggdW5pdCAoNXB4LCA1ZW0sIDVyZW0pXG5cbiMjIEV4YW1wbGVcbi0tLVxuXG5gYGBodG1sX2V4YW1wbGVcbm5uLXN0cmlwLXVuaXQoNXB4KSAvL091dHB1dDogNVxubm4tc3RyaXAtdW5pdCgxMGVtKSAvLyBPdXRwdXQ6IDEwXG5ubi1zdHJpcC11bml0KDE1cmVtKSAvLyBPdXRwdXQ6IDE1XG5gYGBcblxuKi9cbi8qIGRvY1xuLS0tXG50aXRsZTogei1pbmRleFxubmFtZTogbm4tei1pbmRleFxuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5cbkJlY2F1c2Ugei1pbmRpY2VzIGNhbiBnZXQgdHJpY2t5IHdlIG1hbmFnZSB0aGVtIGluIHRoZSB0aGVtZS5zY3NzIGdsb2JhbGx5LlxuXG5BbHdheXMgdXNlIHRoaXMgbWl4aW4gdG8gc2V0IHNldCBhIHotaW5kZXguXG5cblJlYWQgdGhlIEJlc3QgUHJhY3RpY2UgdG8gZ2V0IGFuIGZ1bGwgZG9jdW1lbnRhdGlvbjpcbmh0dHBzOi8vcHJvamVjdHMubmV0Y2VudHJpYy5iaXovd2lraS9kaXNwbGF5L0ZST05URU5EL0hvdyt0bytzZXQrYSt6LWluZGV4XG5cbiMjIExpdmUgVGVtcGxhdGUgYWJicmV2aWF0aW9uc1xuLS0tXG4telxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJGVsZW1lbnQgPSBOYW1lIG9mIHRoZSBlbGVtZW50IChub3JtYWxseSB0aGlzIHdpbGwgYmUgdGhlIG1vZHVsZSBuYW1lIGZvciB0aGUgbWFpbiBzdGFjaylcbkBwYXJhbWV0ZXIgJGxpc3QgPSBOYW1lIG9mIHRoZSBsaXN0IChkZWZhdWx0ICR6LWluZGljZXMpLiBNdXN0IGJlIG9ubHkgc2V0IGZvciBzdGFjayBjb250ZXh0XG5AcGFyYW1ldGVyICRtaW4gPSBTZXQgYSBtaW5pbXVtIHotaW5kZXggd2hpY2ggd2lsbCBiZSBhZGRlZCB0byB0aGUgbGlzdC5cblxuIyMgRGVwZW5kZW5jaWVzXG4tLS1cbiR6LWluZGljZXMgdmFyaWFibGUgaW4gdGhlIHRoZW1lLnNjc3NcblxuIyMgRXhhbXBsZVxuLS0tXG5cbmBgYGh0bWxfZXhhbXBsZVxuXG4vLyBJbiB0aGUgU0FTUyB0aGVtZSBmaWxlXG5cbiR6LWluZGljZXM6IHNsaWRlciwgbW9kYWwsIGRpYWxvZywgbmF2aWdhdGlvbjtcblxuLy8gSW4gdGhlIFNBU1MgbW9kdWxlIGZpbGVcblxuLm1vZGFsIHtcbiAgICAmX19iYXNlIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB6LWluZGV4OiBubi16LWluZGV4KG1vZGFsKTtcbiAgICB9XG59XG5gYGBcblxuIyMgU291cmNlXG4tLS1cbmh0dHA6Ly93d3cuc21hc2hpbmdtYWdhemluZS5jb20vMjAxNC8wNi8xMi9zYXNzeS16LWluZGV4LW1hbmFnZW1lbnQtZm9yLWNvbXBsZXgtbGF5b3V0cy9cblxuKi9cbi8qIGRvY1xuLS0tXG50aXRsZTogcmVtb3ZlIGV2ZXJ5IHVuaXRcbm5hbWU6IHN0cmlwLXVuaXRcbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxucmVtb3ZlIGFsbCB1bml0c1xuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJG51bWJlciA9IG51bWJlciB3aXRoIHVuaXRcblxuIyMgRXhhbXBsZVxuLS0tXG5gYGBodG1sX2V4YW1wbGVcbnN0cmlwLXVuaXQoNXB4KSAvLyBPdXRwdXQ6IDVcbmBgYFxuKi9cbi8qXG4gICAgVGhpcyBtaXhpbiBjb252ZXJ0cyBhbnkgdW5pdGxlc3MgbnVtYmVyIChmb3IgZXhhbXBsZSA0MCkgdG8gdGhlIGNvcnJlY3QgdW5pdCwgYWNjb3JkaW5nIHRvIHRoZSBnaXZlbiBheGlzLlxuXG4gICAgUGFyYW1ldGVyczpcbiAgICAtICR2YWx1ZTogdW5pdGxlc3MgbnVtYmVyIHRvIGJlIGNvbnZlcnRlZC4gQSB1bml0IGluICR2YWx1ZSB3aWxsIGNvcnJlc3BvbmQgdG8gYSBweCBpbiB0aGUgYnJvd3NlcixcbiAgICAgICAgbm8gbWF0dGVyIGlmIGl0J3Mgb3V0cHV0IGFzIHB4IG9yIHJlbVxuXG4gICAgUmV0dXJuc1xuICAgIC0gSG9yaXpvbnRhbDogd2lsbCBjb252ZXJ0IHRoZSBudW1iZXIgdG8gcGl4ZWxzICg0MHB4KVxuICAgIC0gVmVydGljYWw6IHdpbGwgY29udmVydCB0aGUgbnVtYmVyIHRvIHJlbSAoaWYgcmVtID09PSAxNnB4LCB0aGVuIDQwIHdpbGwgYmUgY29udmVydGVkIHRvIDIuNSByZW0pXG4qL1xuLypcbiAgICBDb252ZXJ0cyBhIHVuaXRsZXNzIG51bWJlciB0byB0aGUgY29ycmVzcG9uZGluZyB1bml0IG9uIHRoZSBob3Jpem9udGFsIGF4aXMuXG4gICAgQnkgZGVmYXVsdCB3aWxsIGNvbnZlcnQgdGhlIHZhbHVlIHRvIHB4LlxuKi9cbi8qXG4gICAgQ29udmVydHMgYSB1bml0bGVzcyBudW1iZXIgdG8gdGhlIGNvcnJlc3BvbmRpbmcgdW5pdCBvbiB0aGUgdmVydGljYWwgYXhpcy5cbiAgICBCeSBkZWZhdWx0IHdpbGwgY29udmVydCB0aGUgdmFsdWUgdG8gcmVtLlxuKi9cbi8qIHN0eWxlbGludC1kaXNhYmxlICovXG4vKiBkb2Ncbi0tLVxudGl0bGU6IFN3YXAgbGVmdCByaWdodCB2YWx1ZXNcbm5hbWU6IHN3YXAtbGVmdC1yaWdodC12YWx1ZXNcbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxuXG5Td2FwIHRoZSB2YWx1ZXMgZm9yIHJpZ2h0IGFuZCBsZWZ0IHdoZW4gJHJ0bCBpcyBzZXQgdG8gdHJ1ZTpcblxuSW46ICAwIDVweCA4cHggMTJweFxuT3V0OiAwIDEycHggOHB4IDVweCAoaW4gcnRsKVxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJHZhbHVlcyA9IDQgbnVtYmVycyAod29ya3Mgd2l0aCBhbGwgdW5pdHMpXG5cbiMjIEV4YW1wbGVcbi0tLVxuXG5gYGBodG1sX2V4YW1wbGVcbnN3YXAtbGVmdC1yaWdodC12YWx1ZXMoMCAxcHggOHB4IDEycHgpIC8vIDAgMTJweCA4cHggMXB4XG5zd2FwLWxlZnQtcmlnaHQtdmFsdWVzKDAgMWVtIDhlbSAxMmVtKSAvLyAwIDEyZW0gOGVtIDFlbVxud2FwLWxlZnQtcmlnaHQtdmFsdWVzKDAgMXJlbSA4cmVtIDEycmVtKSAvLyAwIDEycmVtIDhyZW0gMXJlbVxuYGBgXG5cbiMjIFNvdXJjZVxuLS0tXG5odHRwOi8vc3RhY2tvdmVyZmxvdy5jb20vcXVlc3Rpb25zLzE0MTk5MzIzL3JpZ2h0LXRvLWxlZnQtcnRsLXN1cHBvcnQtaW4tc2Fzcy1wcm9qZWN0XG5cbiovXG4vKiBzdHlsZWxpbnQtZGlzYWJsZSAqL1xuLyogZG9jXG4tLS1cbnRpdGxlOiBTd2FwIGxlZnQgcmlnaHQgbmFtZXNcbm5hbWU6IHN3YXAtbGVmdC1yaWdodC1uYW1lc1xuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5cblN3YXAgdGhlIG5hbWVzIHJpZ2h0IGFuZCBsZWZ0IHdoZW4gJHJ0bCBpcyBzZXQgdG8gdHJ1ZS5cbklmIHRoZSB2YWx1ZSBpcyBub3QgcmlnaHQgb3IgbGVmdCBpdCByZXR1cm5zIHRoZSBvcmlnaW5hbCB2YWx1ZS5cblxuSW46ICByaWdodFxuT3V0OiBsZWZ0IChpbiBydGwpLCByaWdodCAoaW4gbHRyKVxuXG4jIyBMaXZlIFRlbXBsYXRlIGFiYnJldmlhdGlvbnNcbi0tLVxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJG9yaWdpbiA9IHJpZ2h0IHwgbGVmdFxuXG4jIyBFeGFtcGxlXG4tLS1cblxuYGBgaHRtbF9leGFtcGxlXG5zd2FwLWxlZnQtcmlnaHQtbmFtZShsZWZ0KVxuc3dhcC1sZWZ0LXJpZ2h0LW5hbWUocmlnaHQpXG5gYGBcblxuIyMgU291cmNlXG4tLS1cbmh0dHA6Ly9zdGFja292ZXJmbG93LmNvbS9xdWVzdGlvbnMvMTQxOTkzMjMvcmlnaHQtdG8tbGVmdC1ydGwtc3VwcG9ydC1pbi1zYXNzLXByb2plY3RcblxuKi9cbi8qICBMaXN0IG9mIENTUyBwcm9wZXJ0aWVzIHRoYXQgd2lsbCBhbHdheXMgYmUgb3V0cHV0IGF0IGxlYXN0IGFzIDIgZGlmZmVyZW50IHZhbHVlc1xuICAgIGluIG9yZGVyIHRvIGJlIGFibGUgdG8gY29udmVydCBlYWNoIG9uZSB0byB0aGUgY29ycmVjdCBheGlzIHVuaXQgKi9cbi8qXG4gICAgTWl4aW4gZm9yIGF1dG9tYXRpY2FsbHkgaGFuZGxpbmcgc3BhY2luZ3MgYXJvdW5kL2JldHdlZW4gZWxlbWVudHMuXG5cbiAgICBUaGlzIG1peGluIHdpbGwgYXV0b21hdGljYWxseSBpbnZlcnQgdGhlIGxlZi9yaWdodCBkaXJlY3Rpb25zIGluIFJUTCBsYW5ndWFnZXMuXG4gICAgQWxzbywgdGhlIHVuaXRsZXNzIHZhbHVlcyB3aWxsIGJlIGNvbnZlcnRlZCB0byB0aGUgcHJvcGVyIHVuaXQgYWNjb3JkaW5nIHRvIHRoZSBheGlzXG5cbiAgICBQYXJhbWV0ZXJzOlxuICAgIC0gJHByb3BlcnR5LW5hbWU6IG5hbWUgb2YgdGhlIENTUyBwcm9wZXJ0eSB0aGF0IHNob3VsZCBiZSBvdXRwdXQuIFN1cHBvcnRlZCBwcm9wZXJ0aWVzIGFyZTpcbiAgICAgICAgbWFyZ2luLCBtYXJnaW4tdG9wLCBtYXJnaW4tcmlnaHQsIG1hcmdpbi1ib3R0b20sIG1hcmdpbi1sZWZ0XG4gICAgICAgIHBhZGRpbmcsIHBhZGRpbmctdG9wLCBwYWRkaW5nLXJpZ2h0LCBwYWRkaW5nLWJvdHRvbSwgcGFkZGluZy1sZWZ0XG4gICAgICAgIHdpZHRoLCBoZWlnaHQsIG1pbi13aWR0aCwgbWF4LXdpZHRoLCBtaW4taGVpZ2h0LCBtaW4taGVpZ2h0XG4gICAgLSAkdmFsdWU6IHZhbHVlIHRoYXQgd2lsbCBiZSBvdXRwdXQgYXMgcGFydCBvZiB0aGUgZ2l2ZW4gcHJvcGVydHkuIFN1cHBvcnRlZCB2YWx1ZXMgYXJlOlxuICAgICAgICBVbml0bGVzcyBudW1iZXIgKDQwKTogdGhpcyBzaG91bGQgYmUgdXNlZCBtb3N0IG9mIHRoZSB0aW1lcy4gSXQgd2lsbCBhdXRvbWF0aWNhbGx5IGJlIGNvbnZlcnRlZFxuICAgICAgICAgICAgdG8gdGhlIGNvcnJlY3QgdW5pdCBkZXBlbmRpbmcgb24gdGhlIGF4aXMgd2hlcmUgaXQncyB1c2VkIChob3Jpem9udGFsIGF4aXMgPT4gcHgsIHZlcnRpY2FsIGF4aXMgPT4gcmVtKS5cbiAgICAgICAgICAgIEVhY2ggdW5pdCBpbiAkdmFsdWUgd2lsbCBjb3JyZXNwb25kIHRvIGEgcHggaW4gdGhlIGJyb3dzZXIsIG5vIG1hdHRlciB0byB3aGljaCB1bml0IGl0IHdpbGwgYmUgY29udmVydGVkLlxuICAgICAgICBOdW1iZXIgd2l0aCB1bml0ICg0MHB4LCA0MCUuLi4pOiB0aGUgbnVtYmVyIGFuZCB0aGUgdW5pdCB3aWxsIGJlIHByZXNlcnZlZCBhbmQgb25seSB0aGUgbGVmdC9yaWdodCBpbnZlcnNpb25cbiAgICAgICAgICAgIHdpbGwgYmUgZG9uZSBmb3IgUlRMIGxhbmd1YWdlc1xuICAgICAgICBMaXN0IG9mIHZhbHVlcyAoNDAgMzAlIDIwIDEwKTogbWFyZ2luIGFuZCBwYWRkaW5nIHNob3J0aGFuZHMgd2hpdGggbXVsdGlwbGUgdmFsdWVzIGFyZSBzdXBwb3J0ZWQuXG4gICAgICAgICAgICBUaGUgbGVmdC9yaWdodCB2YWx1ZXMgd2lsbCBiZSBhdXRvbWF0aWNhbGx5IHN3YXBwZWQgaW4gUlRMIGFuZCB0aGUgdW5pdGxlc3MgbnVtYmVycyB3aWxsIGJlIGNvbnZlcnRlZFxuICAgICAgICAgICAgdG8gdGhlIGNvcnJlc3BvbmRpbmcgdW5pdC4gVW5pdGxlc3MgYW5kIG51bWJlcnMgd2l0aCB1bml0cyBjYW4gYmUgbWl4ZWQgaW4gdGhlIHNhbWUgY2FsbC5cbiAgICAgICAgVXNpbmcgY2FsYygpIGluIGFueSBvZiB0aGUgcHJldmlvdXMgZXhhbXBsZXMgaXMgc3VwcG9ydGVkLCBhbHRob3VnaCBubyB1bml0IGNvbnZlcnNpb24gd2lsbCBiZSBkb25lXG5cbiAjIyBFeGFtcGxlXG4tLS1cblxuYGBgaHRtbF9leGFtcGxlXG5AaW5jbHVkZSBzcGFjaW5nKHBhZGRpbmcsIDAgMTBweCAyMCAwKTsgPT4gcGFkZGluZzogMCAxMHB4IDJyZW0gMDtcbkBpbmNsdWRlIHNwYWNpbmcocGFkZGluZywgMCAxMCAyMCAwKTsgPT4gcGFkZGluZzogMCAxMHB4IDJyZW0gMDtcbkBpbmNsdWRlIHNwYWNpbmcocGFkZGluZy1sZWZ0LCAxMCk7XG5AaW5jbHVkZSBzcGFjaW5nKHBhZGRpbmctcmlnaHQsIDEwKTtcbkBpbmNsdWRlIHNwYWNpbmcobWFyZ2luLCAwIDEwIDIwIDApO1xuQGluY2x1ZGUgc3BhY2luZyhtYXJnaW4tbGVmdCwgMTApO1xuQGluY2x1ZGUgc3BhY2luZyhtYXJnaW4tcmlnaHQsIDEwKTtcbkBpbmNsdWRlIHNwYWNpbmcod2lkdGgsIDEwMCk7XG5AaW5jbHVkZSBzcGFjaW5nKG1pbi13aWR0aCwgMTAwKTtcbkBpbmNsdWRlIHNwYWNpbmcobWF4LXdpZHRoLCAxMDApO1xuQGluY2x1ZGUgc3BhY2luZyhoZWlnaHQsIDEwMCk7XG5AaW5jbHVkZSBzcGFjaW5nKG1pbi1oZWlnaHQsIDEwMCk7XG5AaW5jbHVkZSBzcGFjaW5nKG1heC1oZWlnaHQsIDEwMCk7XG5gYGBcbiovXG4vKiBkb2Ncbi0tLVxudGl0bGU6IENsZWFyZml4XG5uYW1lOiBjbGVhcmZpeFxuY2F0ZWdvcnk6IG1peGluc1xuLS0tXG5cbkNsZWFycyBhZnRlciBmbG9hdGluZyBlbGVtZW50XG5cblVzZSB0aGlzIG1peGluIG9ubHkgaW5zaWRlIG1lZGlhIHF1ZXJpZXMgd2hlcmUgeW91IGNhbid0IHVzZSB0aGVcbmFic3RyYWN0L2V4dGVuZHMvdXRpbHMvX2NsZWFyZml4IHZlcnNpb24sIHdoaWNoIGFkZHMgbGVzcyBjb2RlIHRvIGNzc1xuXG4jIyBMaXZlIFRlbXBsYXRlIGFiYnJldmlhdGlvbnNcbi0tLVxuXG4jIyBFeGFtcGxlXG4tLS1cblxuYGBgaHRtbF9leGFtcGxlXG5AaW5jbHVkZSBjbGVhcmZpeDtcbmBgYFxuXG4jIyBTb3VyY2Vcbi0tLVxuaHR0cHM6Ly9jc3MtdHJpY2tzLmNvbS9zbmlwcGV0cy9jc3MvY2xlYXItZml4L1xuKi9cbi8qIHN0eWxlbGludC1kaXNhYmxlIHN0cmluZy1uby1uZXdsaW5lICovXG4vKiBkb2Ncbi0tLVxudGl0bGU6IGZvY3VzIGNvbG9yXG5uYW1lOiBmb2N1cyBjb2xvclxuY2F0ZWdvcnk6IG1peGluc1xuLS0tXG5cbkFkZCBhIGZvY3VzIGNvbG9yIHdoZW4ga2V5Ym9hcmQtZm9jdXMgaXMgYWN0aXZhdGVkXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbSAkbnVtYmVyXG5cbiovXG4vKiBkb2Ncbi0tLVxudGl0bGU6IGlnbm9yZS1jb250YWluZXJcbm5hbWU6IGlnbm9yZS1jb250YWluZXJcbmNhdGVnb3J5OiBtaXhpbnNcbi0tLVxuXG5TZXQgZnVsbCBwYWdlIHdpZHRoIGZvciBzb21ldGhpbmcgaW5zaWRlIGEgY29udGFpbmVyXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtICRjb250YWluZXItc2l6ZVxuQHBhcmFtICRndXR0ZXJcblxuKi9cbi8qIEdlbmVyYXRlcyBhbGwgdGhlIHJ1bGVzIGZvciB0aGUgZ3JpZCBjb2x1bW5zIHVwIHRvIHRoZSBnaXZlbiBhbW91bnQgb2YgY29sdW1uICovXG4vKiBHZW5lcmF0ZXMgYWxsIHRoZSBydWxlcyBmb3IgdGhlIGdyaWQgY29sdW1uIG9mZnNldCB1cCB0byB0aGUgZ2l2ZW4gYW1vdW50IG9mIGNvbHVtbiAqL1xuLyogR2VuZXJhdGVzIGFsbCB0aGUgcnVsZXMgZm9yIHRoZSBncmlkIGFuZCBjb2x1bW5zIGZvciB0aGUgZ2l2ZW4gYnJlYWsgcG9pbnQgYW5kIHRvdGFsIG9mIGNvbHVtbnMgKi9cbi8qIEFQSSBmdW5jdGlvbiB0byBiZSBjYWxsZWQgdG8gZ2VuZXJhdGUgYSBncmlkIGNvbmZpZyAqL1xuLyogZG9jXG4tLS1cbnR5cGU6IGJ1dHRvbiB0eXBlXG5zdGF0ZTogc3RhdGUgYnV0dG9uXG4tLS1cblxuQnV0dG9uIHN0eWxlc1xuXG5Vc2UgdGhpcyBtaXhpbiBmb3IgYnV0dG9uIHN0eWxlczogY29sb3IgdGV4dCwgYmFja2dyb3VuZCwgYm9yZGVyXG5cbiMjIEV4YW1wbGVcbi0tLVxuXG5gYGBodG1sX2V4YW1wbGVcbkBpbmNsdWRlIGJ1dHRvbihwcmltYXJ5KTtcbmBgYFxuKi9cbi8qIGRvY1xuLS0tXG5saW5lTGltaXQ6IFRoaXMgdmFsdWUgc3BlY2lmaWVzIHRoZSBudW1iZXIgb2YgbGluZXMgYWZ0ZXIgd2hpY2ggdGhlIGNvbnRlbnQgd2lsbCBiZSBjbGFtcGVkLiBJdCBtdXN0IGJlIGdyZWF0ZXIgdGhhbiAwLlxuLS0tXG5cblRydW5jYXRlcyB0ZXh0IGF0IGEgc3BlY2lmaWMgbnVtYmVyIG9mIGxpbmVzLlxuXG5Vc2UgdGhpcyBtaXhpbiB0byBoaWRlIGxvbmcgdGV4dC5cblxuIyMgRXhhbXBsZVxuLS0tXG5cbmBgYGh0bWxfZXhhbXBsZVxuQGluY2x1ZGUgbGluZS1jbGFtcCgkbGluZUxpbWl0OiA0KTtcbmBgYFxuKi9cbi8qIHR5cG9ncmFwaHlcbi0tLVxudGl0bGU6IHR5cG9ncmFwaHlcbm5hbWU6IFR5cG9ncmFwaHlcbmNhdGVnb3J5OiBtaXhpbnNcbi0tLVxuXG5BZGRzIGZvbnQgQ1NTIHByb3BlcnRpZXMgYnkgYSBtYXAgcHJvdmlkZWRcblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW0gJHQtc3R5bGVcbkBwYXJhbSAkaXMtaW1wb3J0YW50OiBmYWxzZVxuXG4qICR0LXN0eWxlIGlzIGV4cGVjdGVkIHRvIGJlIGEgbWFwIHdpdGggJ2RlZmF1bHQnIGFuZCAnYnJlYWtwb2ludFtzXScgc3VibWFwcyB3aXRoIGEgcHJvcGVydHlcbmZvciBldmVyeSBjc3MgcHJvcGVydHkgdG8gYmUgc2V0LlxuKiAkaXMtaW1wb3J0YW50IHBhcmFtZXRlciBhbGxvd3MgdG8gZm9yY2UgdHlwb2dyYXBoeSBwcm9wZXJ0aWVzIHRvIGJlIHNldCBhcyAhaW1wb3J0YW50XG5UcnkgdG8gYXZvaWQgaXRzIHVzZSwgYnV0IGl0IG1pZ2h0IGJlIG5lZWRlZCBmb3Igc2l0dWF0aW9ucyB3aGVyZSBzdHlsZXMgZm9yIGEgY29tcG9uZW50XG5hcmUgdmVyeSBzcGVjaWZpYyBhbmQgdG8gb3ZlcndyaXRlIHRoZSBnZW5lcmljIG9uZXMgaXMgdG9vIGNvbXBsZXggKGlmIHRoZXkgaGF2ZSBhIGxvdCBvZiBzcGVjaWZpY2l0eSlcblxuKi9cbi8qIGRvY1xuLS0tXG50aXRsZTogaGlkZGVuXG5uYW1lOiBoaWRkZW5cbmNhdGVnb3J5OiBtaXhpbnNcbi0tLVxuXG5IaWRlIGZyb20gYm90aCBzY3JlZW5yZWFkZXJzIGFuZCBicm93c2VyczogaDVicC5jb20vdVxuIyMgUGFyYW1ldGVyc1xuLS0tXG5cbiovXG4vKiBkb2Ncbi0tLVxudGl0bGU6IG92ZXJsYXlcbm5hbWU6IG92ZXJsYXlcbmNhdGVnb3J5OiBtaXhpbnNcbi0tLVxuXG5DcmVhdGVzIGFuIG92ZXJsYXkgd2l0aCB0aGUgcHJvdmlkZWQgYmFja2dyb3VuZCBjb2xvclxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW0gJGJnQ29sb3JcblxuKi9cbi8qKlxuICogQG1peGluIHRvcC1ib3R0b20tYm9yZGVyXG4gKiBAZGVzYyBDcmVhdGVzIGEgZHluYW1pYyBhbmQgY3VzdG9taXphYmxlIGJvcmRlciBhdCB0aGUgc3BlY2lmaWVkIHBvc2l0aW9uIG9uIGFuIGVsZW1lbnQuXG4gKlxuICogQHBhcmFtIHtzdHJpbmd9ICRwb3NpdGlvbiAtIE9wdGlvbmFsLCBEZWZhdWx0OiAnYm90dG9tJy4gRGVmaW5lcyB0aGUgcG9zaXRpb24gb2YgdGhlIGJvcmRlci4gQWNjZXB0cyB2YWx1ZXMgJ3RvcCcgb3IgJ2JvdHRvbScuXG4gKiBAcGFyYW0ge2NvbG9yfSAkY29sb3IgLSBPcHRpb25hbCwgRGVmYXVsdDogJyRjLWJsYWNrJy4gU3BlY2lmaWVzIHRoZSBjb2xvciBvZiB0aGUgYm9yZGVyLiBBY2NlcHRzIGFueSB2YWxpZCBDU1MgY29sb3IgdmFsdWUuXG4gKiBAcGFyYW0ge2xlbmd0aH0gJHdpZHRoIC0gT3B0aW9uYWwsIERlZmF1bHQ6ICcycHgnLiBTZXRzIHRoZSB3aWR0aCBvZiB0aGUgYm9yZGVyLiBBY2NlcHRzIGFueSB2YWxpZCBDU1MgbGVuZ3RoIHZhbHVlLlxuICogQHBhcmFtIHtsZW5ndGh9ICRtYXJnaW4gLSBPcHRpb25hbCwgRGVmYXVsdDogJzAnLiBBZGRzIG1hcmdpbiB0byB0aGUgYm9yZGVyLiBBY2NlcHRzIGFueSB2YWxpZCBDU1MgbGVuZ3RoIHZhbHVlLlxuICpcbiAqIEBleGFtcGxlXG4gKiAgIC5leGFtcGxlLWVsZW1lbnQge1xuICogICAgICAgQGluY2x1ZGUgdG9wLWJvdHRvbS1ib3JkZXIoJHBvc2l0aW9uOiB0b3AsICRjb2xvcjogJGMtZ3JleS10d28sICR3aWR0aDogM3B4LCAkbWFyZ2luOiAxMHB4KTtcbiAqICAgfVxuICovXG4vKiBkb2Ncbi0tLVxudGl0bGU6IHJlc2V0LWZ1bGx3aWR0aC1tYXJnaW5zXG5uYW1lOiByZXNldC1mdWxsd2lkdGgtbWFyZ2luc1xuY2F0ZWdvcnk6IG1peGluc1xuLS0tXG5cblJlc2V0IG1hcmdpbnMgZm9yIGZ1bGwgd2lkdGggY29tcG9uZW50cyBpbnNpZGUgYSBDb250YWluZXIgb3IgYSBDb2x1bW4gQ29udHJvbFxuKi9cbi8qIGRvY1xuLS0tXG50aXRsZTogdmlzdWFsbHkgaGlkZGVuXG5uYW1lOiB2aXN1YWxseSBoaWRkZW5cbmNhdGVnb3J5OiBtaXhpbnNcbi0tLVxuXG5IaWRkZW4gZnJvbSBicm93c2VycyBidXQgYWNjZXNzaWJsZSB0byBzY3JlZW4gcmVhZGVyc1xuIyMgUGFyYW1ldGVyc1xuLS0tXG5cbiovXG4ucmFkaW8tYnV0dG9uIHtcbiAgLS1yYWRpby1jb2xvci1jaGVja2VkOiAjMDA0ZmJjO1xuICAtLXJhZGlvLXNpemU6IDI0cHg7XG4gIC0tcmFkaW8tYm9yZGVyLWNvbG9yOiAjYTdhOGE5O1xuICAtLXJhZGlvLWNoZWNrZWQtc2l6ZTogMTRweDtcbiAgLS1yYWRpby1sYWJlbC1mb250LWZhbWlseTogdmFyKC0tZmYtcmVndWxhcik7XG4gIC0tcmFkaW8tbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuLnJhZGlvLWJ1dHRvbl9faW5wdXQge1xuICBhcHBlYXJhbmNlOiBub25lO1xuICBmbGV4LXNocmluazogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tcmFkaW8tYm9yZGVyLWNvbG9yKTtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBhc3BlY3QtcmF0aW86IDE7XG4gIHdpZHRoOiB2YXIoLS1yYWRpby1zaXplKTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW4tcmlnaHQ6IHZhcigtLXJhZGlvLW1hcmdpbi1yaWdodCk7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cbi5yYWRpby1idXR0b25fX2lucHV0OmNoZWNrZWQge1xuICBib3JkZXItY29sb3I6IHZhcigtLXJhZGlvLWNvbG9yLWNoZWNrZWQpO1xufVxuLnJhZGlvLWJ1dHRvbl9faW5wdXQ6Y2hlY2tlZDo6YWZ0ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBjb250ZW50OiBcIlwiO1xuICBhc3BlY3QtcmF0aW86IDE7XG4gIHdpZHRoOiBjYWxjKHZhcigtLXJhZGlvLXNpemUpIC8gMik7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXJhZGlvLWNvbG9yLWNoZWNrZWQpO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIHRvcDogY2FsYygodmFyKC0tcmFkaW8tc2l6ZSkgLSB2YXIoLS1yYWRpby1jaGVja2VkLXNpemUpKSAvIDIpO1xuICBsZWZ0OiBjYWxjKCh2YXIoLS1yYWRpby1zaXplKSAtIHZhcigtLXJhZGlvLWNoZWNrZWQtc2l6ZSkpIC8gMik7XG59XG4ucmFkaW8tYnV0dG9uX19sYWJlbCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZm9udC1mYW1pbHk6IHZhcigtLXJhZGlvLWxhYmVsLWZvbnQtZmFtaWx5KTtcbn1cblxuLmhlYWRlciB7XG4gIHBvc2l0aW9uOiBzdGlja3k7XG4gIGluc2V0LWJsb2NrLXN0YXJ0OiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICB6LWluZGV4OiA0O1xufVxuLmhlYWRlcl9fY29udGFpbmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbn1cbi5oZWFkZXJfX21haW4ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBwYWRkaW5nLWJsb2NrOiAwO1xuICBwYWRkaW5nLWlubGluZTogMTVweDtcbiAgZmxleC13cmFwOiB3cmFwO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDk2MHB4KSB7XG4gIC5oZWFkZXJfX21haW4ge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAwLjVmciAxZnI7XG4gICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiBhdXRvIDFmcjtcbiAgfVxufVxuLmhlYWRlcl9fYnJhbmQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWJhc2lzOiA3MCU7XG4gIHBhZGRpbmctYmxvY2s6IDIwcHg7XG4gIHBhZGRpbmctaW5saW5lOiAwO1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDk2MHB4KSB7XG4gIC5oZWFkZXJfX2JyYW5kIHtcbiAgICBncmlkLXJvdzogMS9zcGFuIDI7XG4gICAgcGFkZGluZy1ibG9jazogNTRweCAzNnB4O1xuICAgIG1heC1oZWlnaHQ6IDEyN3B4O1xuICB9XG59XG4uaGVhZGVyX19icmFuZCAuaW1nX19jb250YWluZXIgYSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBsaW5lLWhlaWdodDogMTlweDtcbn1cbi5oZWFkZXJfX3NpbXBsZSAuaGVhZGVyX19icmFuZCAuaW1nX19jb250YWluZXIgYSB7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xufVxuLmhlYWRlcl9fYnJhbmQgLmltZ19fYXNzZXQge1xuICB3aWR0aDogOThweDtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuLmhlYWRlcl9fc2ltcGxlIC5oZWFkZXJfX2JyYW5kIC5pbWdfX2Fzc2V0IHtcbiAgdmVydGljYWwtYWxpZ246IHN1cGVyO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMC4xNWVtKTtcbn1cbi5oZWFkZXJfX2JyYW5kLW5hbWUge1xuICBjb2xvcjogIzg4OGI4ZDtcbn1cbi5oZWFkZXJfX2JyYW5kX19jb250YWluZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogYmFzZWxpbmU7XG59XG4uaGVhZGVyX19zaW1wbGUge1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IGF1dG8gYXV0byAxZnI7XG4gIGdyaWQtdGVtcGxhdGUtcm93czogMWZyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwYWRkaW5nLWJsb2NrOiAyOC41cHg7XG4gIHBhZGRpbmctaW5saW5lOiAxN3B4O1xuICBjb2x1bW4tZ2FwOiAyNHB4O1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDk2MHB4KSB7XG4gIC5oZWFkZXJfX3NpbXBsZSB7XG4gICAgcGFkZGluZy1ibG9jazogMjguNXB4O1xuICB9XG59XG4uaGVhZGVyX19zaW1wbGUgLmhlYWRlcl9fYnJhbmQge1xuICBwYWRkaW5nOiAwO1xufVxuLmhlYWRlcl9fc2ltcGxlIC5oZWFkZXJfX2xpbmsge1xuICBqdXN0aWZ5LXNlbGY6IGZsZXgtZW5kO1xuICBjb2xvcjogIzAwNGZiYztcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAuaGVhZGVyX19zaW1wbGUgLmhlYWRlcl9fbGluayB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuLmhlYWRlcl9fc2ltcGxlIC5oZWFkZXJfX2xpbmsgLnYtaWNvbiB7XG4gIG1hcmdpbi1pbmxpbmUtc3RhcnQ6IDVweDtcbn1cbi5oZWFkZXJfX3NpbXBsZSAuaGVhZGVyX190aXRsZSB7XG4gIGFsaWduLXNlbGY6IGZsZXgtc3RhcnQ7XG4gIC8qIGhlaWdodCBzZXQgdG8gMCBpbiBvcmRlciB0aGUgcGFkZGluZyBvZiB0aGUgaGVhZGVyIGlzIHNldCBiYXNlZCBvbiB0aGUgYnJhbmQsIG5vdCB0aGUgdGl0bGUgKi9cbiAgaGVpZ2h0OiAwO1xufVxuLmhlYWRlcl9fc2ltcGxlIC5oZWFkZXJfX2NvbXBhbnksXG4uaGVhZGVyX19zaW1wbGUgLmhlYWRlcl9fbWFya2V0IHtcbiAgLyogbWFyZ2luLWxlZnQgcmVzZXQgaW4gaGVhZGVyX19zaW1wbGUgc2luY2UgdGhlIGNvbHVtbiBnYXAgZ2l2ZXMgdGhlIHNwYWNpbmcgKi9cbiAgbWFyZ2luLWlubGluZS1zdGFydDogMDtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBsaW5lLWhlaWdodDogMTdweDtcbiAgcGFkZGluZy1ibG9jay1zdGFydDogMDtcbn1cbi5oZWFkZXJfX2RlYWxlcnMge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICBwYWRkaW5nLWJsb2NrOiAxNXB4O1xufVxuLmhlYWRlcl9fZGVhbGVycyAuaW1nX19jb250YWluZXIge1xuICBtYXJnaW4taW5saW5lLWVuZDogMjJweDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5NjBweCkge1xuICAuaGVhZGVyX19kZWFsZXJzIHtcbiAgICBncmlkLXJvdzogMS9zcGFuIDI7XG4gICAgcGFkZGluZy1ibG9jazogNDBweDtcbiAgfVxufVxuLmhlYWRlcl9fZGVhbGVycyAuaW1nX19hc3NldCB7XG4gIG1heC13aWR0aDogNDBweDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuaGVhZGVyX19kZWFsZXJzIC5pbWdfX2Fzc2V0IHtcbiAgICBtYXgtd2lkdGg6IDcwcHg7XG4gIH1cbn1cbi5oZWFkZXJfX2NvbXBhbnksIC5oZWFkZXJfX21hcmtldCB7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mZi1yZWd1bGFyKTtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBmb250LXdlaWdodDogNDAwO1xuICBsaW5lLWhlaWdodDogMS41O1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tbHMtZGVmYXVsdCk7XG4gIGxpbmUtaGVpZ2h0OiAxNHB4O1xuICBtYXJnaW4taW5saW5lLXN0YXJ0OiAyNHB4O1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5oZWFkZXJfX2NvbXBhbnksIC5oZWFkZXJfX21hcmtldCB7XG4gICAgZm9udC1mYW1pbHk6IHZhcigtLWZmLXJlZ3VsYXIpO1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWxzLWRlZmF1bHQpO1xuICAgIGxpbmUtaGVpZ2h0OiAxOHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTYwcHgpIHtcbiAgLmhlYWRlcl9fY29tcGFueSwgLmhlYWRlcl9fbWFya2V0IHtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gICAgbGluZS1oZWlnaHQ6IDE2cHg7XG4gIH1cbn1cbi5oZWFkZXJfX2NvbXBhbnkge1xuICBhbGlnbi1zZWxmOiBmbGV4LWVuZDtcbiAgcGFkZGluZy1ibG9jay1lbmQ6IDA7XG59XG4uaGVhZGVyX19tYXJrZXQge1xuICBwYWRkaW5nOiAwO1xuICBjb2xvcjogIzg4OGI4ZDtcbn1cbi5oZWFkZXJfX21ldGEge1xuICBmbGV4LWJhc2lzOiAzMCU7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTYwcHgpIHtcbiAgLmhlYWRlcl9fbWV0YSB7XG4gICAgYWxpZ24tc2VsZjogY2VudGVyO1xuICAgIGdyaWQtY29sdW1uOiAyO1xuICB9XG59XG4uaGVhZGVyX19zZWFyY2gge1xuICBmbGV4LWJhc2lzOiAxMDAlO1xuICBtYXJnaW4tYmxvY2s6IDIxcHggMjdweDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5NjBweCkge1xuICAuaGVhZGVyX19zZWFyY2gge1xuICAgIGdyaWQtcm93OiAyO1xuICAgIGdyaWQtY29sdW1uOiAyO1xuICAgIGp1c3RpZnktc2VsZjogZmxleC1lbmQ7XG4gIH1cbn1cbi5oZWFkZXJfX3NlYXJjaC0tbWVudSB7XG4gIGRpc3BsYXk6IGZsZXg7XG59XG4uaGVhZGVyX19zZWFyY2gtLW1lbnU6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzg4OGI4ZDtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXNrLWltYWdlOiB1cmwoXCIvY29udGVudC9kYW0vdm9sdm8tbWVkaWEvbGlzdC1pY29ucy9tZW51LWhhbWJ1cmdlci5zdmcjbWVudS1oYW1idXJnZXItaWNvbi13MjQtdmlld1wiKTtcbiAgbWFzay1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgbWFzay1zaXplOiBjb3ZlcjtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIHdpZHRoOiB2YXIoLS12LWljb24tc2l6ZSk7XG4gIGhlaWdodDogdmFyKC0tdi1pY29uLXNpemUpO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAuaGVhZGVyX19zZWFyY2gtLW1lbnU6YmVmb3JlIHtcbiAgICBtYXNrLWltYWdlOiB1cmwoXCIvY29udGVudC9kYW0vdm9sdm8tbWVkaWEvbGlzdC1pY29ucy9tZW51LWhhbWJ1cmdlci5zdmcjbWVudS1oYW1idXJnZXItaWNvbi13MTYtdmlld1wiKTtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDk2MHB4KSB7XG4gIC5oZWFkZXJfX3NlYXJjaCAuY21wLXNlYXJjaCB7XG4gICAgd2lkdGg6IDI4OXB4O1xuICB9XG59XG4uaGVhZGVyX19zZWFyY2ggLmNtcC1zZWFyY2hfX2ljb246YWZ0ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYTdhOGE5O1xuICBjb250ZW50OiBcIlwiO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hc2staW1hZ2U6IHVybChcIi9jb250ZW50L2RhbS92b2x2by1tZWRpYS9saXN0LWljb25zL3NlYXJjaC5zdmcjc2VhcmNoLWljb24tdzI0LXZpZXdcIik7XG4gIG1hc2stcmVwZWF0OiBuby1yZXBlYXQ7XG4gIG1hc2stc2l6ZTogY292ZXI7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICB3aWR0aDogdmFyKC0tdi1pY29uLXNpemUpO1xuICBoZWlnaHQ6IHZhcigtLXYtaWNvbi1zaXplKTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLmhlYWRlcl9fc2VhcmNoIC5jbXAtc2VhcmNoX19pY29uOmFmdGVyIHtcbiAgICBtYXNrLWltYWdlOiB1cmwoXCIvY29udGVudC9kYW0vdm9sdm8tbWVkaWEvbGlzdC1pY29ucy9zZWFyY2guc3ZnI3NlYXJjaC1pY29uLXcxNi12aWV3XCIpO1xuICB9XG59XG4uaGVhZGVyX19zZWFyY2ggLmNtcC1zZWFyY2hfX2ljb246OmFmdGVyIHtcbiAgY29sb3I6ICM4ODhiOGQ7XG59XG4uaGVhZGVyX19zZWFyY2ggLmNtcC1zZWFyY2hfX2lucHV0IHtcbiAgY29sb3I6ICM4ODhiOGQ7XG59XG4uaGVhZGVyX19zZWFyY2hJY29uIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xufVxuLmhlYWRlcl9fc2VhcmNoSWNvbi0tY2hlY2tib3gge1xuICB3aWR0aDogMjFweDtcbiAgaGVpZ2h0OiAyMnB4O1xuICBib3JkZXI6IG5vbmU7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIG91dGxpbmU6IG5vbmU7XG4gIG9wYWNpdHk6IDA7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDk2MHB4KSB7XG4gIC5oZWFkZXJfX3NlYXJjaEljb24tLWNoZWNrYm94OmNoZWNrZWQgKyAuaGVhZGVyX19zZWFyY2hJY29uLS1pY29uIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG4uaGVhZGVyX19zZWFyY2hJY29uLS1pY29uIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBpbnNldC1ibG9jay1zdGFydDogLTJweDtcbiAgaW5zZXQtaW5saW5lLWVuZDogMDtcbiAgZm9udC1zaXplOiAwO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG4uaGVhZGVyX19zZWFyY2hJY29uLS1pY29uOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNhN2E4YTk7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFzay1pbWFnZTogdXJsKFwiL2NvbnRlbnQvZGFtL3ZvbHZvLW1lZGlhL2xpc3QtaWNvbnMvc2VhcmNoLnN2ZyNzZWFyY2gtaWNvbi13MjQtdmlld1wiKTtcbiAgbWFzay1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgbWFzay1zaXplOiBjb3ZlcjtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIHdpZHRoOiB2YXIoLS12LWljb24tc2l6ZSk7XG4gIGhlaWdodDogdmFyKC0tdi1pY29uLXNpemUpO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAuaGVhZGVyX19zZWFyY2hJY29uLS1pY29uOmJlZm9yZSB7XG4gICAgbWFzay1pbWFnZTogdXJsKFwiL2NvbnRlbnQvZGFtL3ZvbHZvLW1lZGlhL2xpc3QtaWNvbnMvc2VhcmNoLnN2ZyNzZWFyY2gtaWNvbi13MTYtdmlld1wiKTtcbiAgfVxufVxuLmhlYWRlcl9fc2VhcmNoSWNvbi0taWNvbjo6YmVmb3JlIHtcbiAgY29sb3I6ICMwMDA7XG59XG4uaGVhZGVyLS1hbm9ueW1vdXMgLmhlYWRlcl9fc2VhcmNoSWNvbi0taWNvbjo6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2E3YThhOTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5NjBweCkge1xuICAuaGVhZGVyX19zZWFyY2hJY29uLS1pY29uIHtcbiAgICBpbnNldC1ibG9jazogYXV0byAwO1xuICB9XG59XG4uaGVhZGVyX19tYWlubmF2IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2UxZGZkZDtcbn1cbi5oZWFkZXJfX21lbnUge1xuICBkaXNwbGF5OiBmbGV4O1xufVxuLmhlYWRlcl9fbWVudTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjODg4YjhkO1xuICBjb250ZW50OiBcIlwiO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hc2staW1hZ2U6IHVybChcIi9jb250ZW50L2RhbS92b2x2by1tZWRpYS9saXN0LWljb25zL21lbnUtaGFtYnVyZ2VyLnN2ZyNtZW51LWhhbWJ1cmdlci1pY29uLXcyNC12aWV3XCIpO1xuICBtYXNrLXJlcGVhdDogbm8tcmVwZWF0O1xuICBtYXNrLXNpemU6IGNvdmVyO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgd2lkdGg6IHZhcigtLXYtaWNvbi1zaXplKTtcbiAgaGVpZ2h0OiB2YXIoLS12LWljb24tc2l6ZSk7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5oZWFkZXJfX21lbnU6YmVmb3JlIHtcbiAgICBtYXNrLWltYWdlOiB1cmwoXCIvY29udGVudC9kYW0vdm9sdm8tbWVkaWEvbGlzdC1pY29ucy9tZW51LWhhbWJ1cmdlci5zdmcjbWVudS1oYW1idXJnZXItaWNvbi13MTYtdmlld1wiKTtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDk2MHB4KSB7XG4gIC5oZWFkZXItLWFub255bW91cyAuaGVhZGVyX19tZW51OjpiZWZvcmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNhN2E4YTk7XG4gIH1cbiAgLmhlYWRlci0tYW5vbnltb3VzIC5oZWFkZXJfX21lbnUge1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA5NTlweCkge1xuICAuaGVhZGVyX19tYWlubmF2IHtcbiAgICBpbnNldDogMDtcbiAgICB6LWluZGV4OiA0O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC41KTtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcbiAgICBtYXJnaW46IDA7XG4gIH1cbiAgLmhlYWRlcl9fbWFpbm5hdi5uYXZpZ2F0aW9uLS1vcGVuIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cbiAgLmhlYWRlcl9fbWFpbm5hdi5uYXZpZ2F0aW9uLS1vcGVuIC5jbXAtbmF2aWdhdGlvbiB7XG4gICAgb3ZlcmZsb3cteTogYXV0bztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgaW5zZXQtaW5saW5lLXN0YXJ0OiAwO1xuICAgIHRyYW5zaXRpb246IGluc2V0LWlubGluZS1zdGFydCAwLjNzIGVhc2Utb3V0O1xuICB9XG4gIGJvZHkubmF2aWdhdGlvbi0tb3BlbiB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1heC13aWR0aDogMTAwdnc7XG4gIH1cbn1cbi5tYWluLW5hdiB7XG4gIGhlaWdodDogY2FsYygxMDAlIC0gNzFweCk7XG59XG4ubWFpbi1uYXZfX2Nsb3NlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBpbnNldC1ibG9jay1zdGFydDogN3B4O1xuICBpbnNldC1pbmxpbmUtZW5kOiAtMzgwcHg7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZzogMTVweDtcbiAgZm9udC1zaXplOiAzMHB4O1xuICBsaW5lLWhlaWdodDogMC44O1xuICBjb2xvcjogIzUzNTY1YTtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuLm5hdmlnYXRpb24tLW9wZW4gLm1haW4tbmF2X19jbG9zZSB7XG4gIGluc2V0LWlubGluZS1lbmQ6IDA7XG4gIHRyYW5zaXRpb246IGluc2V0LWlubGluZS1lbmQgMC4zcyBlYXNlLW91dDtcbn1cbi5tYWluLW5hdl9fbGlua3Mge1xuICBoZWlnaHQ6IDEwMCU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGluc2V0LWlubGluZS1zdGFydDogMTAwdnc7XG4gIHdpZHRoOiAxMDB2dztcbiAgcGFkZGluZy1ibG9jazogMTVweDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0ODBweCkge1xuICAubWFpbi1uYXZfX2xpbmtzIHtcbiAgICBpbnNldC1pbmxpbmUtc3RhcnQ6IDM4MHB4O1xuICAgIHdpZHRoOiAzODBweDtcbiAgfVxufVxuLm5hdmlnYXRpb24tLW9wZW4gLm1haW4tbmF2X19saW5rcyB7XG4gIG92ZXJmbG93LXk6IGF1dG87XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaW5zZXQtaW5saW5lLXN0YXJ0OiAwO1xuICB0cmFuc2l0aW9uOiBsZWZ0IDAuM3MgZWFzZS1vdXQ7XG59XG4ubWFpbi1uYXZfX2xpbmsge1xuICBwYWRkaW5nLWJsb2NrOiAxMnB4O1xufVxuLm1haW4tbmF2X19saW5rZ3JvdXAge1xuICBwYWRkaW5nLWJsb2NrOiA4cHg7XG59XG4ubWFpbi1uYXZfX2xpbmtncm91cDpudGgtY2hpbGQobisyKSB7XG4gIGJvcmRlci1ibG9jay1zdGFydDogMXB4IHNvbGlkICNlMWRmZGQ7XG59XG5cbi5jbXAtbmF2aWdhdGlvbiB7XG4gIGluc2V0LWlubGluZS1zdGFydDogMTAwdnc7XG4gIHdpZHRoOiAxMDB2dztcbiAgaGVpZ2h0OiAxMDAlO1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQ4MHB4KSB7XG4gIC5jbXAtbmF2aWdhdGlvbiB7XG4gICAgaW5zZXQtaW5saW5lLXN0YXJ0OiAzODBweDtcbiAgICB3aWR0aDogMzgwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5NjBweCkge1xuICAuY21wLW5hdmlnYXRpb24ge1xuICAgIGluc2V0LWlubGluZS1zdGFydDogMDtcbiAgICB3aWR0aDogYXV0bztcbiAgICBiYWNrZ3JvdW5kOiAjZTFkZmRkO1xuICB9XG59XG4uY21wLW5hdmlnYXRpb25fX2dyb3VwIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nLWlubGluZS1zdGFydDogMDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5NjBweCkge1xuICAuY21wLW5hdmlnYXRpb25fX2dyb3VwIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgfVxufVxuLmNtcC1uYXZpZ2F0aW9uX19pdGVtLWxpbmsge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgY29sb3I6ICM1MzU2NWE7XG4gIGxpbmUtaGVpZ2h0OiAxLjE7XG59XG4uY21wLW5hdmlnYXRpb25fX2l0ZW0tbGluazpob3ZlciB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5NjBweCkge1xuICAuY21wLW5hdmlnYXRpb25fX2l0ZW0tbGluayB7XG4gICAgZm9udC1mYW1pbHk6IHZhcigtLWZmLXJlZ3VsYXIpO1xuICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWxzLWRlZmF1bHQpO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIH1cbiAgLmNtcC1uYXZpZ2F0aW9uX19pdGVtLWxpbms6OmFmdGVyIHtcbiAgICBjb250ZW50OiBub25lO1xuICB9XG4gIC5jbXAtbmF2aWdhdGlvbl9faXRlbS1saW5rW3RhcmdldD1fYmxhbmtdOmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNTM1NjVhO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1hc2staW1hZ2U6IHVybChcIi9jb250ZW50L2RhbS92b2x2by1tZWRpYS9saXN0LWljb25zL2xpbmstZXh0ZXJuYWwuc3ZnI2xpbmstZXh0ZXJuYWwtaWNvbi13MjQtdmlld1wiKTtcbiAgICBtYXNrLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIG1hc2stc2l6ZTogY292ZXI7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgd2lkdGg6IHZhcigtLXYtaWNvbi1zaXplKTtcbiAgICBoZWlnaHQ6IHZhcigtLXYtaWNvbi1zaXplKTtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDk2MHB4KSBhbmQgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5jbXAtbmF2aWdhdGlvbl9faXRlbS1saW5rW3RhcmdldD1fYmxhbmtdOmFmdGVyIHtcbiAgICBtYXNrLWltYWdlOiB1cmwoXCIvY29udGVudC9kYW0vdm9sdm8tbWVkaWEvbGlzdC1pY29ucy9saW5rLWV4dGVybmFsLnN2ZyNsaW5rLWV4dGVybmFsLWljb24tdzE2LXZpZXdcIik7XG4gIH1cbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA5NTlweCkge1xuICAuY21wLW5hdmlnYXRpb246bm90KC5zdWJuYXZfX2xpc3QpIC5jbXAtbmF2aWdhdGlvbl9faXRlbTpub3QoLmNtcC1uYXZpZ2F0aW9uX19ncm91cC0tb3Blbik6bm90KC5jbXAtbmF2aWdhdGlvbl9faXRlbS0tb3ZlcnZpZXcpID4gLmNtcC1uYXZpZ2F0aW9uX19pdGVtLWxpbms6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM1MzU2NWE7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFzay1pbWFnZTogdXJsKFwiL2NvbnRlbnQvZGFtL3ZvbHZvLW1lZGlhL2xpc3QtaWNvbnMvY2hldnJvbi1kb3duLnN2ZyNjaGV2cm9uLWRvd24taWNvbi13MjQtdmlld1wiKTtcbiAgICBtYXNrLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIG1hc2stc2l6ZTogY292ZXI7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgd2lkdGg6IHZhcigtLXYtaWNvbi1zaXplKTtcbiAgICBoZWlnaHQ6IHZhcigtLXYtaWNvbi1zaXplKTtcbiAgfVxufVxuQG1lZGlhIChtYXgtd2lkdGg6IDk1OXB4KSBhbmQgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5jbXAtbmF2aWdhdGlvbjpub3QoLnN1Ym5hdl9fbGlzdCkgLmNtcC1uYXZpZ2F0aW9uX19pdGVtOm5vdCguY21wLW5hdmlnYXRpb25fX2dyb3VwLS1vcGVuKTpub3QoLmNtcC1uYXZpZ2F0aW9uX19pdGVtLS1vdmVydmlldykgPiAuY21wLW5hdmlnYXRpb25fX2l0ZW0tbGluazphZnRlciB7XG4gICAgbWFzay1pbWFnZTogdXJsKFwiL2NvbnRlbnQvZGFtL3ZvbHZvLW1lZGlhL2xpc3QtaWNvbnMvY2hldnJvbi1kb3duLnN2ZyNjaGV2cm9uLWRvd24taWNvbi13MTYtdmlld1wiKTtcbiAgfVxufVxuLmNtcC1uYXZpZ2F0aW9uX19ncm91cC0tb3BlbiA+IC5jbXAtbmF2aWdhdGlvbl9faXRlbS1saW5rOmFmdGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzUzNTY1YTtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXNrLWltYWdlOiB1cmwoXCIvY29udGVudC9kYW0vdm9sdm8tbWVkaWEvbGlzdC1pY29ucy9jaGV2cm9uLXVwLnN2ZyNjaGV2cm9uLXVwLWljb24tdzI0LXZpZXdcIik7XG4gIG1hc2stcmVwZWF0OiBuby1yZXBlYXQ7XG4gIG1hc2stc2l6ZTogY292ZXI7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICB3aWR0aDogdmFyKC0tdi1pY29uLXNpemUpO1xuICBoZWlnaHQ6IHZhcigtLXYtaWNvbi1zaXplKTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLmNtcC1uYXZpZ2F0aW9uX19ncm91cC0tb3BlbiA+IC5jbXAtbmF2aWdhdGlvbl9faXRlbS1saW5rOmFmdGVyIHtcbiAgICBtYXNrLWltYWdlOiB1cmwoXCIvY29udGVudC9kYW0vdm9sdm8tbWVkaWEvbGlzdC1pY29ucy9jaGV2cm9uLXVwLnN2ZyNjaGV2cm9uLXVwLWljb24tdzE2LXZpZXdcIik7XG4gIH1cbn1cbi5jbXAtbmF2aWdhdGlvbl9faXRlbS0tbGV2ZWwtMCB7XG4gIGJvcmRlci1ibG9jay1lbmQ6IDFweCBzb2xpZCAjZTFkZmRkO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbi1ibG9jazogMDtcbiAgbWFyZ2luLWlubGluZTogMTVweDtcbn1cbi5jbXAtbmF2aWdhdGlvbl9faXRlbS0tbGV2ZWwtMDpmaXJzdC1jaGlsZCB7XG4gIGJvcmRlci1ibG9jay1zdGFydDogMXB4IHNvbGlkICNlMWRmZGQ7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTYwcHgpIHtcbiAgLmNtcC1uYXZpZ2F0aW9uX19pdGVtLS1sZXZlbC0wLmNtcC1uYXZpZ2F0aW9uX19pdGVtLS1vdmVydmlldyAuY21wLW5hdmlnYXRpb25fX2l0ZW0tbGluazo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IG5vbmU7XG4gIH1cbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA5NTlweCkge1xuICAuY21wLW5hdmlnYXRpb25fX2l0ZW0tLWxldmVsLTAuY21wLW5hdmlnYXRpb25fX2dyb3VwLS1vcGVuIHtcbiAgICBib3JkZXItYmxvY2stZW5kOiAwO1xuICB9XG4gIC5jbXAtbmF2aWdhdGlvbl9faXRlbS0tbGV2ZWwtMC5jbXAtbmF2aWdhdGlvbl9fZ3JvdXAtLW9wZW4gPiAuY21wLW5hdmlnYXRpb25fX2dyb3VwIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDk2MHB4KSB7XG4gIC5jbXAtbmF2aWdhdGlvbl9faXRlbS0tbGV2ZWwtMCB7XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgICBib3JkZXI6IDA7XG4gICAgbWFyZ2luOiAwO1xuICB9XG4gIC5jbXAtbmF2aWdhdGlvbl9faXRlbS0tbGV2ZWwtMDpmaXJzdC1jaGlsZCB7XG4gICAgYm9yZGVyLWJsb2NrLXN0YXJ0OiAwO1xuICB9XG4gIC5jbXAtbmF2aWdhdGlvbl9faXRlbS0tbGV2ZWwtMDpob3ZlciB7XG4gICAgYm9yZGVyLWJsb2NrLWVuZDogMDtcbiAgfVxuICAuY21wLW5hdmlnYXRpb25fX2l0ZW0tLWxldmVsLTA6aG92ZXIgPiAuY21wLW5hdmlnYXRpb25fX2dyb3VwIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICB9XG4gIC5jbXAtbmF2aWdhdGlvbl9faXRlbS0tbGV2ZWwtMDpob3ZlciA+IC5jbXAtbmF2aWdhdGlvbl9faXRlbS1saW5rIHtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICB9XG4gIC5jbXAtbmF2aWdhdGlvbl9faXRlbS0tbGV2ZWwtMDpob3ZlciA+IC5jbXAtbmF2aWdhdGlvbl9faXRlbS1saW5rOjpiZWZvcmUge1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgfVxuICAuY21wLW5hdmlnYXRpb25fX2l0ZW0tLWxldmVsLTAgPiAuY21wLW5hdmlnYXRpb25fX2dyb3VwIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgYWxpZ24tY29udGVudDogZmxleC1zdGFydDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgb3ZlcmZsb3c6IGF1dG87XG4gIH1cbiAgLmNtcC1uYXZpZ2F0aW9uX19pdGVtLS1sZXZlbC0wID4gLmNtcC1uYXZpZ2F0aW9uX19ncm91cC0tY29sdW1uNSB7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICB9XG4gIC5jbXAtbmF2aWdhdGlvbl9faXRlbS0tbGV2ZWwtMCA+IC5jbXAtbmF2aWdhdGlvbl9faXRlbS1saW5rOjphZnRlciB7XG4gICAgY29udGVudDogbm9uZTtcbiAgfVxuICAuY21wLW5hdmlnYXRpb25fX2l0ZW0tLWxldmVsLTAuY21wLW5hdmlnYXRpb25fX2l0ZW0tLWFjdGl2ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgfVxuICAubmF2aWdhdGlvbi0taGFzLXN1Ym5hdiAuY21wLW5hdmlnYXRpb25fX2l0ZW0tLWxldmVsLTAuY21wLW5hdmlnYXRpb25fX2l0ZW0tLWFjdGl2ZSA+IC5jbXAtbmF2aWdhdGlvbl9faXRlbS1saW5rOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvcmRlci1pbmxpbmUtc3RhcnQ6IDVweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDApO1xuICAgIGJvcmRlci1pbmxpbmUtZW5kOiA1cHggc29saWQgcmdiYSgwLCAwLCAwLCAwKTtcbiAgICBib3JkZXItYmxvY2stZW5kOiA1cHggc29saWQgIzUzNTY1YTtcbiAgICBpbnNldC1ibG9jay1lbmQ6IDA7XG4gICAgaW5zZXQtaW5saW5lLXN0YXJ0OiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICB9XG4gIGh0bWxbZGlyPXJ0bF0gLm5hdmlnYXRpb24tLWhhcy1zdWJuYXYgLmNtcC1uYXZpZ2F0aW9uX19pdGVtLS1sZXZlbC0wLmNtcC1uYXZpZ2F0aW9uX19pdGVtLS1hY3RpdmUgPiAuY21wLW5hdmlnYXRpb25fX2l0ZW0tbGluazo6YmVmb3JlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNTAlKTtcbiAgfVxufVxuLmNtcC1uYXZpZ2F0aW9uX19pdGVtLS1sZXZlbC0wID4gLmNtcC1uYXZpZ2F0aW9uX19pdGVtLWxpbmsge1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBjb2xvcjogIzUzNTY1YTtcbiAgcGFkZGluZy1ibG9jazogMjJweDtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTYwcHgpIHtcbiAgLmNtcC1uYXZpZ2F0aW9uX19pdGVtLS1sZXZlbC0wID4gLmNtcC1uYXZpZ2F0aW9uX19pdGVtLWxpbmsge1xuICAgIHBhZGRpbmctYmxvY2s6IDE2cHg7XG4gICAgcGFkZGluZy1pbmxpbmU6IDMwcHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG4gIC5jbXAtbmF2aWdhdGlvbl9faXRlbS0tbGV2ZWwtMCA+IC5jbXAtbmF2aWdhdGlvbl9faXRlbS1saW5rOjphZnRlciB7XG4gICAgY29udGVudDogbm9uZTtcbiAgfVxufVxuLmNtcC1uYXZpZ2F0aW9uX19pdGVtLS1sZXZlbC0wID4gLmNtcC1uYXZpZ2F0aW9uX19pdGVtLWxpbms6OmFmdGVyIHtcbiAgaW5zZXQtYmxvY2stc3RhcnQ6IDUwJTtcbiAgaW5zZXQtaW5saW5lLWVuZDogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoY2FsYyh2YXIoLS12LWljb24tc2l6ZSkgLyAtMikpO1xufVxuaHRtbFtkaXI9cnRsXSAuY21wLW5hdmlnYXRpb25fX2l0ZW0tLWxldmVsLTAgPiAuY21wLW5hdmlnYXRpb25fX2l0ZW0tbGluazo6YWZ0ZXIge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoY2FsYyh2YXIoLS12LWljb24tc2l6ZSkgLyAtMikpIHNjYWxlKC0xLCAxKTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5NjBweCkge1xuICAuY21wLW5hdmlnYXRpb25fX2l0ZW0tLWxldmVsLTAgPiAuY21wLW5hdmlnYXRpb25fX2l0ZW0tbGluazpob3ZlciB7XG4gICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICBib3JkZXItYmxvY2stZW5kOiAwO1xuICB9XG59XG4uY21wLW5hdmlnYXRpb25fX2l0ZW0tLWxldmVsLTAgPiAuY21wLW5hdmlnYXRpb25fX2dyb3VwIHtcbiAgbWF4LXdpZHRoOiAxMjAwcHg7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTYwcHgpIHtcbiAgLmNtcC1uYXZpZ2F0aW9uX19pdGVtLS1sZXZlbC0wID4gLmNtcC1uYXZpZ2F0aW9uX19ncm91cCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgaW5zZXQtaW5saW5lLXN0YXJ0OiAwO1xuICAgIHBhZGRpbmctYmxvY2stc3RhcnQ6IDIwcHg7XG4gICAgYm94LXNoYWRvdzogMCAxMHB4IDE1cHggMCByZ2JhKDAsIDAsIDAsIDAuMik7XG4gICAgei1pbmRleDogNDtcbiAgfVxufVxuLmNtcC1uYXZpZ2F0aW9uX19pdGVtLS1sZXZlbC0xIHtcbiAgYm9yZGVyLWJsb2NrLWVuZDogMXB4IHNvbGlkICNlMWRmZGQ7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA5NTlweCkge1xuICAuY21wLW5hdmlnYXRpb25fX2l0ZW0tLWxldmVsLTEge1xuICAgIG1hcmdpbi1ibG9jazogMDtcbiAgICBtYXJnaW4taW5saW5lOiAtMTVweDtcbiAgICBwYWRkaW5nLWJsb2NrOiAwO1xuICAgIHBhZGRpbmctaW5saW5lOiAzMHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTYwcHgpIHtcbiAgLmNtcC1uYXZpZ2F0aW9uX19pdGVtLS1sZXZlbC0xIHtcbiAgICBwYWRkaW5nLWlubGluZTogMjBweCAxMHB4O1xuICAgIG1hcmdpbi1ibG9jay1lbmQ6IDEwcHg7XG4gICAgYm9yZGVyLWlubGluZS1zdGFydDogMXB4IHNvbGlkICNlMWRmZGQ7XG4gICAgYm9yZGVyLWJsb2NrLWVuZDogMDtcbiAgICBmbGV4OiAxO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTYwcHgpIHtcbiAgLmNtcC1uYXZpZ2F0aW9uX19ncm91cC0tY29sdW1uNSAuY21wLW5hdmlnYXRpb25fX2l0ZW0tLWxldmVsLTEge1xuICAgIG1heC13aWR0aDogMjAlO1xuICAgIGZsZXg6IDEgMSAyMCU7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTYwcHgpIHtcbiAgLmNtcC1uYXZpZ2F0aW9uX19pdGVtLS1sZXZlbC0xLmNtcC1uYXZpZ2F0aW9uX19mZWF0dXJlIHtcbiAgICBmb250LWZhbWlseTogdmFyKC0tZmYtcmVndWxhcik7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICBsZXR0ZXItc3BhY2luZzogdmFyKC0tbHMtZGVmYXVsdCk7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNlMWRmZGQ7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIGZsZXg6IDEgMSAxMDAlO1xuICAgIG1hcmdpbi1ibG9jay1lbmQ6IDA7XG4gICAgcGFkZGluZzogMWVtO1xuICB9XG59XG4uY21wLW5hdmlnYXRpb25fX2l0ZW0tLWxldmVsLTEuY21wLW5hdmlnYXRpb25fX2ZlYXR1cmUgLmNtcC1uYXZpZ2F0aW9uX19pdGVtLWxpbmsge1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cbi5jbXAtbmF2aWdhdGlvbl9faXRlbS0tbGV2ZWwtMS5jbXAtbmF2aWdhdGlvbl9fZmVhdHVyZSAuY21wLW5hdmlnYXRpb25fX2l0ZW0tbGluazo6YWZ0ZXIge1xuICBjb250ZW50OiBub25lO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDk2MHB4KSB7XG4gIC5jbXAtbmF2aWdhdGlvbl9faXRlbS0tbGV2ZWwtMS5jbXAtbmF2aWdhdGlvbl9fZmVhdHVyZSAuY21wLW5hdmlnYXRpb25fX2l0ZW0tbGluayB7XG4gICAgY29sb3I6ICMwMDRmYmM7XG4gICAgZGlzcGxheTogaW5saW5lO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgZm9udC1zaXplOiAxZW07XG4gICAgdGV4dC1vdmVyZmxvdzogY2xpcDtcbiAgICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICAgIG92ZXJmbG93OiBhdXRvO1xuICB9XG59XG4uY21wLW5hdmlnYXRpb25fX2l0ZW0tLWxldmVsLTE6Zmlyc3QtY2hpbGQge1xuICBib3JkZXItaW5saW5lLXN0YXJ0OiBub25lO1xufVxuLmNtcC1uYXZpZ2F0aW9uX19pdGVtLS1sZXZlbC0xID4gLmNtcC1uYXZpZ2F0aW9uX19ncm91cCB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDk2MHB4KSB7XG4gIC5jbXAtbmF2aWdhdGlvbl9faXRlbS0tbGV2ZWwtMSA+IC5jbXAtbmF2aWdhdGlvbl9fZ3JvdXAge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG5AbWVkaWEgKG1heC13aWR0aDogOTU5cHgpIHtcbiAgLmNtcC1uYXZpZ2F0aW9uX19pdGVtLS1sZXZlbC0xLmNtcC1uYXZpZ2F0aW9uX19ncm91cC0tb3BlbiA+IC5jbXAtbmF2aWdhdGlvbl9fZ3JvdXAge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGJvcmRlci1ibG9jay1zdGFydDogMXB4IHNvbGlkICNlMWRmZGQ7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5NjBweCkge1xuICAuY21wLW5hdmlnYXRpb25fX2l0ZW0tLWxldmVsLTE6aG92ZXIgPiAuY21wLW5hdmlnYXRpb25fX2dyb3VwIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBib3JkZXItYmxvY2stc3RhcnQ6IG5vbmU7XG4gIH1cbiAgLmNtcC1uYXZpZ2F0aW9uX19pdGVtLS1sZXZlbC0xIC5jbXAtbmF2aWdhdGlvbl9fZ3JvdXAge1xuICAgIHBhZGRpbmctYmxvY2s6IDZweCAyMHB4O1xuICB9XG59XG4uY21wLW5hdmlnYXRpb25fX2l0ZW0tLWxldmVsLTEgLmNtcC1uYXZpZ2F0aW9uX19pdGVtLWxpbmsge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZy1pbmxpbmU6IDAgMTVweDtcbiAgc2Nyb2xsLXBhZGRpbmctYmxvY2s6IDRweCAzOXB4O1xuICBjb2xvcjogIzUzNTY1YTtcbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA5NTlweCkge1xuICAuY21wLW5hdmlnYXRpb25fX2l0ZW0tLWxldmVsLTEgLmNtcC1uYXZpZ2F0aW9uX19pdGVtLWxpbmsge1xuICAgIHBhZGRpbmctYmxvY2s6IDIxcHggMjJweDtcbiAgICBwYWRkaW5nLWlubGluZTogMCAxNXB4O1xuICB9XG59XG4uY21wLW5hdmlnYXRpb25fX2l0ZW0tLWxldmVsLTEgLmNtcC1uYXZpZ2F0aW9uX19pdGVtLWxpbmtbdGFyZ2V0PV9ibGFua106OmFmdGVyIHtcbiAgcG9zaXRpb246IHN0YXRpYztcbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA5NTlweCkge1xuICAuY21wLW5hdmlnYXRpb25fX2l0ZW0tLWxldmVsLTEgLmNtcC1uYXZpZ2F0aW9uX19pdGVtLWxpbmtbdGFyZ2V0PV9ibGFua106OmFmdGVyIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNHB4KTtcbiAgfVxufVxuLmNtcC1uYXZpZ2F0aW9uX19pdGVtLS1sZXZlbC0xIC5jbXAtbmF2aWdhdGlvbl9faXRlbS1saW5rOjphZnRlciB7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgbWFyZ2luLWlubGluZS1zdGFydDogMTBweDtcbiAgcGFkZGluZzogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBpbnNldC1pbmxpbmUtZW5kOiAwO1xuICBpbnNldC1ibG9jay1zdGFydDogMTZweDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5NjBweCkge1xuICAuY21wLW5hdmlnYXRpb25fX2l0ZW0tLWxldmVsLTEgLmNtcC1uYXZpZ2F0aW9uX19pdGVtLWxpbms6OmFmdGVyIHtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gICAgaW5zZXQtYmxvY2stc3RhcnQ6IDUwJTtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDk2MHB4KSB7XG4gIC5jbXAtbmF2aWdhdGlvbl9faXRlbS0tbGV2ZWwtMSAuY21wLW5hdmlnYXRpb25fX2l0ZW0tbGluayB7XG4gICAgZm9udC1mYW1pbHk6IHZhcigtLWZmLXJlZ3VsYXIpO1xuICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjE7XG4gICAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWxzLWRlZmF1bHQpO1xuICAgIHBhZGRpbmctYmxvY2s6IDZweDtcbiAgfVxufVxuLmNtcC1uYXZpZ2F0aW9uX19pdGVtLS1vdmVydmlldyAuY21wLW5hdmlnYXRpb25fX2l0ZW0tbGluazphZnRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM1MzU2NWE7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFzay1pbWFnZTogdXJsKFwiL2NvbnRlbnQvZGFtL3ZvbHZvLW1lZGlhL2xpc3QtaWNvbnMvY2hldnJvbi1yaWdodC5zdmcjY2hldnJvbi1yaWdodC1pY29uLXcyNC12aWV3XCIpO1xuICBtYXNrLXJlcGVhdDogbm8tcmVwZWF0O1xuICBtYXNrLXNpemU6IGNvdmVyO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgd2lkdGg6IHZhcigtLXYtaWNvbi1zaXplKTtcbiAgaGVpZ2h0OiB2YXIoLS12LWljb24tc2l6ZSk7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5jbXAtbmF2aWdhdGlvbl9faXRlbS0tb3ZlcnZpZXcgLmNtcC1uYXZpZ2F0aW9uX19pdGVtLWxpbms6YWZ0ZXIge1xuICAgIG1hc2staW1hZ2U6IHVybChcIi9jb250ZW50L2RhbS92b2x2by1tZWRpYS9saXN0LWljb25zL2NoZXZyb24tcmlnaHQuc3ZnI2NoZXZyb24tcmlnaHQtaWNvbi13MTYtdmlld1wiKTtcbiAgfVxufVxuLmNtcC1uYXZpZ2F0aW9uX19pdGVtLS1vdmVydmlldyAuY21wLW5hdmlnYXRpb25fX2l0ZW0tbGluazo6YWZ0ZXIge1xuICBpbnNldC1ibG9jay1zdGFydDogNTAlO1xuICBpbnNldC1pbmxpbmUtZW5kOiAwO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoY2FsYyh2YXIoLS12LWljb24tc2l6ZSkgLyAtMikpO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDk2MHB4KSB7XG4gIC5jbXAtbmF2aWdhdGlvbl9faXRlbS0tb3ZlcnZpZXcgLmNtcC1uYXZpZ2F0aW9uX19pdGVtLWxpbms6OmFmdGVyIHtcbiAgICBjb250ZW50OiBub25lO1xuICB9XG59XG5odG1sW2Rpcj1ydGxdIC5jbXAtbmF2aWdhdGlvbl9faXRlbS0tb3ZlcnZpZXcgLmNtcC1uYXZpZ2F0aW9uX19pdGVtLWxpbms6OmFmdGVyIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKGNhbGModmFyKC0tdi1pY29uLXNpemUpIC8gLTIpKSBzY2FsZSgtMSwgMSk7XG59XG4uY21wLW5hdmlnYXRpb25fX2l0ZW0tLWxldmVsLTIge1xuICBib3JkZXItYmxvY2stZW5kOiAxcHggc29saWQgI2UxZGZkZDtcbn1cbi5jbXAtbmF2aWdhdGlvbl9faXRlbS0tbGV2ZWwtMjpsYXN0LWNoaWxkIHtcbiAgYm9yZGVyLWJsb2NrLWVuZDogMDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5NjBweCkge1xuICAuY21wLW5hdmlnYXRpb25fX2l0ZW0tLWxldmVsLTIge1xuICAgIGJvcmRlci1ibG9jay1lbmQ6IDA7XG4gIH1cbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA5NTlweCkge1xuICAuY21wLW5hdmlnYXRpb25fX2l0ZW0tLWxldmVsLTIgLmNtcC1uYXZpZ2F0aW9uX19pdGVtLWxpbmsge1xuICAgIGNvbG9yOiAjYTdhOGE5O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTYwcHgpIHtcbiAgLmNtcC1uYXZpZ2F0aW9uX19pdGVtLS1sZXZlbC0yIC5jbXAtbmF2aWdhdGlvbl9faXRlbS1saW5rIHtcbiAgICBmb250LWZhbWlseTogdmFyKC0tZmYtcmVndWxhcik7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICBsZXR0ZXItc3BhY2luZzogdmFyKC0tbHMtZGVmYXVsdCk7XG4gICAgcGFkZGluZy1ibG9jazogNHB4O1xuICB9XG59XG4uY21wLW5hdmlnYXRpb25fX2l0ZW0tLWxldmVsLTIgLmNtcC1uYXZpZ2F0aW9uX19pdGVtLWxpbms6OmFmdGVyIHtcbiAgZm9udC1zaXplOiAxMHB4O1xuICBtYXJnaW4taW5saW5lLXN0YXJ0OiA4cHg7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA5NjBweCkge1xuICAubWFpbi1uYXZpZ2F0aW9uLWV4dGVuZGVkIC5jbXAtbmF2aWdhdGlvbl9faXRlbS0tbGV2ZWwtMCA+IC5jbXAtbmF2aWdhdGlvbl9fZ3JvdXAge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIH1cbiAgLm1haW4tbmF2aWdhdGlvbi1leHRlbmRlZCAuY21wLW5hdmlnYXRpb25fX2l0ZW0tLWxldmVsLTEge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBib3JkZXItaW5saW5lLXN0YXJ0OiAwO1xuICAgIHBhZGRpbmctaW5saW5lOiAyMHB4O1xuICAgIG1hcmdpbi1ibG9jay1lbmQ6IDIwcHg7XG4gIH1cbiAgLm1haW4tbmF2aWdhdGlvbi1leHRlbmRlZCAuY21wLW5hdmlnYXRpb25fX2l0ZW0tLWxldmVsLTEuY21wLW5hdmlnYXRpb25fX2ZlYXR1cmUge1xuICAgIG1hcmdpbi1ibG9jay1lbmQ6IDA7XG4gIH1cbiAgLm1haW4tbmF2aWdhdGlvbi1leHRlbmRlZCAuY21wLW5hdmlnYXRpb25fX2l0ZW0tLWxldmVsLTEgPiAuY21wLW5hdmlnYXRpb25fX2l0ZW0tbGluayB7XG4gICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgICBib3JkZXItYmxvY2stZW5kOiAxcHggc29saWQgI2UxZGZkZDtcbiAgICBwYWRkaW5nLWJsb2NrOiAxMHB4O1xuICAgIHBhZGRpbmctaW5saW5lOiAwO1xuICB9XG4gIC5tYWluLW5hdmlnYXRpb24tZXh0ZW5kZWQgLmNtcC1uYXZpZ2F0aW9uX19pdGVtLS1sZXZlbC0xID4gLmNtcC1uYXZpZ2F0aW9uX19ncm91cCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgZ2FwOiAyMHB4O1xuICAgIHBhZGRpbmctYmxvY2stc3RhcnQ6IDIwcHg7XG4gIH1cbiAgLm1haW4tbmF2aWdhdGlvbi1leHRlbmRlZCAuY21wLW5hdmlnYXRpb25fX2l0ZW0tLWxldmVsLTIge1xuICAgIHdpZHRoOiBjYWxjKDIwJSAtIDE2cHgpO1xuICB9XG4gIC5tYWluLW5hdmlnYXRpb24tZXh0ZW5kZWQgLmNtcC1uYXZpZ2F0aW9uX19pdGVtLS1sZXZlbC0yID4gLmNtcC1uYXZpZ2F0aW9uX19pdGVtLWxpbmsge1xuICAgIGZvbnQtc2l6ZTogMWVtO1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cbiAgLm1haW4tbmF2aWdhdGlvbi1leHRlbmRlZCAuY21wLW5hdmlnYXRpb25fX2l0ZW0tLWxldmVsLTIgPiAuY21wLW5hdmlnYXRpb25fX2l0ZW0tbGluayAuY21wLW5hdmlnYXRpb25fX2l0ZW0taW1hZ2Uge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi1ibG9jay1lbmQ6IDRweDtcbiAgICBhc3BlY3QtcmF0aW86IDI3MC8xNTI7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgfVxuICAubWFpbi1uYXZpZ2F0aW9uLWV4dGVuZGVkIC5jbXAtbmF2aWdhdGlvbl9faXRlbS0tbGV2ZWwtMiA+IC5jbXAtbmF2aWdhdGlvbl9faXRlbS1saW5rIGltZyB7XG4gICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICB9XG59XG5cbi5oZWFkZXJfX21ldGFuYXYgLmNtcC1saXN0IHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgaGVpZ2h0OiAxMDAlO1xuICBwYWRkaW5nOiAwO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDk2MHB4KSB7XG4gIC5oZWFkZXJfX21ldGFuYXYgLmNtcC1saXN0IHtcbiAgICBtYXJnaW4tYmxvY2stc3RhcnQ6IDIwcHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB9XG59XG4uaGVhZGVyX19tZXRhbmF2IC5jbXAtbGlzdCAuY21wLWxpc3RfX2l0ZW0ge1xuICBwYWRkaW5nLWlubGluZS1zdGFydDogMjVweDtcbiAgcGFkZGluZy1ibG9jazogMDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5NjBweCkge1xuICAuaGVhZGVyX19tZXRhbmF2IC5jbXAtbGlzdCAuY21wLWxpc3RfX2l0ZW0ge1xuICAgIHBhZGRpbmctaW5saW5lLXN0YXJ0OiA0MHB4O1xuICB9XG59XG4uaGVhZGVyX19tZXRhbmF2IC5jbXAtbGlzdCAuY21wLWxpc3RfX2l0ZW06Zmlyc3QtY2hpbGQge1xuICBwYWRkaW5nLWlubGluZS1zdGFydDogMDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuaGVhZGVyX19tZXRhbmF2IC5jbXAtbGlzdCAuY21wLWxpc3RfX2l0ZW06Zmlyc3QtY2hpbGQge1xuICAgIHBhZGRpbmctaW5saW5lLXN0YXJ0OiA0MHB4O1xuICB9XG59XG4uaGVhZGVyX19tZXRhbmF2IC5jbXAtbGlzdCAuY21wLWxpc3RfX2l0ZW0tbGluayB7XG4gIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cbi5oZWFkZXJfX21ldGFuYXYgLmNtcC1saXN0IC5jbXAtbGlzdF9faXRlbS1saW5rOjphZnRlciwgLmhlYWRlcl9fbWV0YW5hdiAuY21wLWxpc3QgLmNtcC1saXN0X19pdGVtLWxpbmtbdGFyZ2V0PV9ibGFua106OmFmdGVyIHtcbiAgY29udGVudDogbm9uZTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5NjBweCkge1xuICAuaGVhZGVyX19tZXRhbmF2IC5jbXAtbGlzdCAuY21wLWxpc3RfX2l0ZW0tbGluayB7XG4gICAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gICAgY29sb3I6ICM4ODhiOGQ7XG4gIH1cbn1cbi5oZWFkZXJfX21ldGFuYXYgLmNtcC1saXN0X19pY29uIHtcbiAgd2lkdGg6IDE2cHg7XG4gIGhlaWdodDogMTZweDtcbiAgbWFyZ2luLWlubGluZS1lbmQ6IDVweDtcbiAgaW5zZXQtYmxvY2stc3RhcnQ6IDA7XG59XG4uaGVhZGVyX19tZXRhbmF2LS1waG9uZSB7XG4gIGhlaWdodDogMTAwJTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5NjBweCkge1xuICAuaGVhZGVyX19tZXRhbmF2LS1waG9uZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4uaGVhZGVyX19tYWlubmF2IC5oZWFkZXJfX3RvcGxpbmtzIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwdnc7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIGluc2V0LWlubGluZS1zdGFydDogMTAwdnc7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDgwcHgpIHtcbiAgLmhlYWRlcl9fbWFpbm5hdiAuaGVhZGVyX190b3BsaW5rcyB7XG4gICAgaW5zZXQtaW5saW5lLXN0YXJ0OiAzODBweDtcbiAgICB3aWR0aDogMzgwcHg7XG4gIH1cbn1cbi5oZWFkZXJfX21haW5uYXYgLmhlYWRlcl9fdG9wbGlua3MgLmxpc3Qge1xuICBtYXJnaW4taW5saW5lLWVuZDogNDBweDtcbn1cbi5oZWFkZXJfX21haW5uYXYgLmhlYWRlcl9fdG9wbGlua3MgLmNtcC1saXN0IHtcbiAgZGlzcGxheTogZmxleDtcbiAgbWFyZ2luLWJsb2NrOiAyMnB4IDExcHg7XG4gIG1hcmdpbi1pbmxpbmU6IDE1cHggMDtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gIHBhZGRpbmctaW5saW5lLXN0YXJ0OiAwO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xufVxuLmhlYWRlcl9fbWFpbm5hdiAuaGVhZGVyX190b3BsaW5rcyAuY21wLWxpc3RfX2l0ZW0ge1xuICBwYWRkaW5nLWJsb2NrLWVuZDogMDtcbiAgbWFyZ2luLWJsb2NrOiAwO1xuICBtYXJnaW4taW5saW5lOiA0cHg7XG4gIGNvbG9yOiAjODg4YjhkO1xufVxuLmhlYWRlcl9fbWFpbm5hdiAuaGVhZGVyX190b3BsaW5rcyAuY21wLWxpc3RfX2l0ZW06bGFzdC1vZi10eXBlIHtcbiAgbWFyZ2luLWlubGluZTogNHB4IDMzcHg7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTYwcHgpIHtcbiAgLmhlYWRlcl9fbWFpbm5hdiAuaGVhZGVyX190b3BsaW5rcyAuY21wLWxpc3RfX2l0ZW06bGFzdC1vZi10eXBlIHtcbiAgICBtYXJnaW4taW5saW5lLXN0YXJ0OiA5cHg7XG4gIH1cbn1cbi5oZWFkZXJfX21haW5uYXYgLmhlYWRlcl9fdG9wbGlua3MgLmNtcC1saXN0X19pdGVtLWxpbms6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IG5vbmU7XG59XG4uaGVhZGVyX19tYWlubmF2IC5oZWFkZXJfX3RvcGxpbmtzIC5jbXAtbGlzdF9faXRlbS1saW5rIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgZm9udC1zaXplOiA4cHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgY29sb3I6ICM4ODhiOGQ7XG4gIG1pbi13aWR0aDogNDdweDtcbn1cbi5oZWFkZXJfX21haW5uYXYgLmhlYWRlcl9fdG9wbGlua3MgLmNtcC1saXN0X19pdGVtLWxpbmtbdGFyZ2V0PV9ibGFua106OmFmdGVyLCAuaGVhZGVyX19tYWlubmF2IC5oZWFkZXJfX3RvcGxpbmtzIC5jbXAtbGlzdF9faXRlbS1saW5rOjphZnRlciB7XG4gIGNvbnRlbnQ6IG5vbmU7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTYwcHgpIHtcbiAgLmhlYWRlcl9fbWFpbm5hdiAuaGVhZGVyX190b3BsaW5rcyAuY21wLWxpc3RfX2l0ZW0tbGluayB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB9XG59XG4uaGVhZGVyX19tYWlubmF2IC5oZWFkZXJfX3RvcGxpbmtzIC5jbXAtbGlzdF9faWNvbiB7XG4gIG1hcmdpbi1ibG9jay1lbmQ6IDJweDtcbiAgYWxpZ24tc2VsZjogY2VudGVyO1xufVxuQG1lZGlhIChtYXgtd2lkdGg6IDk1OXB4KSB7XG4gIC5oZWFkZXJfX21haW5uYXYubmF2aWdhdGlvbi0tb3BlbiAuaGVhZGVyX190b3BsaW5rcyB7XG4gICAgaW5zZXQtaW5saW5lLXN0YXJ0OiAwO1xuICAgIHRyYW5zaXRpb246IGluc2V0LWlubGluZS1zdGFydCAwLjNzIGVhc2Utb3V0O1xuICB9XG59XG5cbi5zdWJuYXYge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYTdhOGE5O1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDk2MHB4KSB7XG4gIC5zdWJuYXYge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM1MzU2NWE7XG4gIH1cbn1cbi5zdWJuYXZfX2NvbnRhaW5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbn1cbi5zdWJuYXZfX3RpdGxlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgY29sb3I6ICNmZmY7XG4gIHBhZGRpbmctYmxvY2s6IDEycHg7XG4gIHBhZGRpbmctaW5saW5lOiAxMHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJvcmRlci1ibG9jay1lbmQ6IDFweCBzb2xpZCAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNTM1NjVhO1xufVxuLnN1Ym5hdl9fdGl0bGU6YWZ0ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBjb250ZW50OiBcIlwiO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hc2staW1hZ2U6IHVybChcIi9jb250ZW50L2RhbS92b2x2by1tZWRpYS9saXN0LWljb25zL2NoZXZyb24tZG93bi5zdmcjY2hldnJvbi1kb3duLWljb24tdzI0LXZpZXdcIik7XG4gIG1hc2stcmVwZWF0OiBuby1yZXBlYXQ7XG4gIG1hc2stc2l6ZTogY292ZXI7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICB3aWR0aDogdmFyKC0tdi1pY29uLXNpemUpO1xuICBoZWlnaHQ6IHZhcigtLXYtaWNvbi1zaXplKTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLnN1Ym5hdl9fdGl0bGU6YWZ0ZXIge1xuICAgIG1hc2staW1hZ2U6IHVybChcIi9jb250ZW50L2RhbS92b2x2by1tZWRpYS9saXN0LWljb25zL2NoZXZyb24tZG93bi5zdmcjY2hldnJvbi1kb3duLWljb24tdzE2LXZpZXdcIik7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5NjBweCkge1xuICAuc3VibmF2X190aXRsZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuLnN1Ym5hdl9fdGl0bGU6OmFmdGVyIHtcbiAgbWFyZ2luLWJsb2NrLXN0YXJ0OiAtMXB4O1xuICBtYXJnaW4taW5saW5lLXN0YXJ0OiAxMHB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGluc2V0LWJsb2NrLXN0YXJ0OiA2cHg7XG59XG4uc3VibmF2X19saXN0IHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5NjBweCkge1xuICAuc3VibmF2X19saXN0IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuLnN1Ym5hdi0tb3BlbiAuc3VibmF2X190aXRsZTphZnRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFzay1pbWFnZTogdXJsKFwiL2NvbnRlbnQvZGFtL3ZvbHZvLW1lZGlhL2xpc3QtaWNvbnMvY2hldnJvbi11cC5zdmcjY2hldnJvbi11cC1pY29uLXcyNC12aWV3XCIpO1xuICBtYXNrLXJlcGVhdDogbm8tcmVwZWF0O1xuICBtYXNrLXNpemU6IGNvdmVyO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgd2lkdGg6IHZhcigtLXYtaWNvbi1zaXplKTtcbiAgaGVpZ2h0OiB2YXIoLS12LWljb24tc2l6ZSk7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5zdWJuYXYtLW9wZW4gLnN1Ym5hdl9fdGl0bGU6YWZ0ZXIge1xuICAgIG1hc2staW1hZ2U6IHVybChcIi9jb250ZW50L2RhbS92b2x2by1tZWRpYS9saXN0LWljb25zL2NoZXZyb24tdXAuc3ZnI2NoZXZyb24tdXAtaWNvbi13MTYtdmlld1wiKTtcbiAgfVxufVxuLnN1Ym5hdi0tb3BlbiAuc3VibmF2X19saXN0IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1heC1oZWlnaHQ6IGNhbGMoMTAwZHZoIC0gdmFyKC0taGVhZGVyLWRpc3BsYXllZC1oZWlnaHQpKTtcbiAgb3ZlcmZsb3cteTogc2Nyb2xsO1xuICBvdmVyc2Nyb2xsLWJlaGF2aW9yOiBjb250YWluO1xufVxuLnN1Ym5hdiAuY21wLW5hdmlnYXRpb25fX2dyb3VwIHtcbiAgcGFkZGluZzogMDtcbn1cbi5zdWJuYXYgLmNtcC1uYXZpZ2F0aW9uX19pdGVtIHtcbiAgLS1zZWNvbmRhcnktbmF2aWdhdGlvbi1hY3RpdmUtaXRlbS1saW5rLWNhcmV0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgYm9yZGVyLWJsb2NrLWVuZDogMXB4IHNvbGlkICNmZmY7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuaHRtbFtkaXI9cnRsXSAuc3VibmF2IC5jbXAtbmF2aWdhdGlvbl9faXRlbSB7XG4gIC0tc2Vjb25kYXJ5LW5hdmlnYXRpb24tYWN0aXZlLWl0ZW0tbGluay1jYXJldC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNTAlKTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5NjBweCkge1xuICAuc3VibmF2IC5jbXAtbmF2aWdhdGlvbl9faXRlbSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGJvcmRlci1ibG9jay1lbmQ6IDA7XG4gIH1cbiAgLnN1Ym5hdiAuY21wLW5hdmlnYXRpb25fX2l0ZW0tLWFjdGl2ZSA+IC5jbXAtbmF2aWdhdGlvbl9faXRlbS1saW5rOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvcmRlci1pbmxpbmUtc3RhcnQ6IDVweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDApO1xuICAgIGJvcmRlci1pbmxpbmUtZW5kOiA1cHggc29saWQgcmdiYSgwLCAwLCAwLCAwKTtcbiAgICBib3JkZXItYmxvY2stZW5kOiA1cHggc29saWQgI2ZmZjtcbiAgICBpbnNldC1ibG9jay1lbmQ6IDA7XG4gICAgaW5zZXQtaW5saW5lLXN0YXJ0OiA1MCU7XG4gICAgdHJhbnNmb3JtOiB2YXIoLS1zZWNvbmRhcnktbmF2aWdhdGlvbi1hY3RpdmUtaXRlbS1saW5rLWNhcmV0LXRyYW5zZm9ybSk7XG4gIH1cbn1cbi5zdWJuYXYgLmNtcC1uYXZpZ2F0aW9uX19pdGVtLXBhcmVudCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDA7XG59XG4uc3VibmF2IC5jbXAtbmF2aWdhdGlvbl9faXRlbS1saW5rIHtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZmLXJlZ3VsYXIpO1xuICBmb250LXNpemU6IDE2cHg7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1scy1kZWZhdWx0KTtcbiAgY29sb3I6ICNmZmY7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nLWJsb2NrOiAxMHB4O1xuICBwYWRkaW5nLWlubGluZTogMTBweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDk2MHB4KSB7XG4gIC5zdWJuYXYgLmNtcC1uYXZpZ2F0aW9uX19pdGVtLWxpbmsge1xuICAgIHBhZGRpbmctYmxvY2s6IDE1cHg7XG4gICAgZm9udC1zaXplOiAxMnB4O1xuICAgIHRleHQtYWxpZ246IHN0YXJ0O1xuICB9XG59XG4uc3VibmF2IC5jbXAtbmF2aWdhdGlvbl9faXRlbS1saW5rOmFjdGl2ZSB7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mZi1tZWRpdW0pO1xuICBmb250LXNpemU6IDEycHg7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1scy1kZWZhdWx0KTtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDtcbn1cbi5zdWJuYXYgLmNtcC1uYXZpZ2F0aW9uX19pdGVtLWxpbmtbdGFyZ2V0PV9ibGFua106OmFmdGVyIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi5zdWJuYXYgLmNtcC1uYXZpZ2F0aW9uX19yb290LWVsZW1lbnQge1xuICBkaXNwbGF5OiBub25lO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDk2MHB4KSB7XG4gIC5hcnRpY2xlcGFnZSAuc3VibmF2IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi5jbXAtYnJlYWRjcnVtYiB7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mZi1yZWd1bGFyKTtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBmb250LXdlaWdodDogNDAwO1xuICBsaW5lLWhlaWdodDogMS41O1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tbHMtZGVmYXVsdCk7XG4gIHBhZGRpbmctYmxvY2s6IDEycHg7XG4gIHBhZGRpbmctaW5saW5lOiAwO1xuICBkaXNwbGF5OiBmbGV4O1xuICBvcGFjaXR5OiAxO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuNHMgZWFzZTtcbn1cbi5jbXAtYnJlYWRjcnVtYi0taW52aXNpYmxlIHtcbiAgaGVpZ2h0OiA1NnB4O1xuICBvcGFjaXR5OiAwO1xufVxuLmNtcC1icmVhZGNydW1iX19saXN0IHtcbiAgcGFkZGluZzogMDtcbn1cbi5jbXAtYnJlYWRjcnVtYi0tb3ZlcnNpemUgLmNtcC1icmVhZGNydW1iX19pdGVtLW5hbWUge1xuICBtYXgtd2lkdGg6IDE5NXB4O1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbn1cbltkaXI9cnRsXSAuY21wLWJyZWFkY3J1bWItLW92ZXJzaXplIC5jbXAtYnJlYWRjcnVtYl9faXRlbS1uYW1lIHtcbiAgZGlyZWN0aW9uOiBydGw7XG59XG4uY21wLWJyZWFkY3J1bWJfX2l0ZW0ge1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgbWluLXdpZHRoOiAwO1xuICBwYWRkaW5nLWJsb2NrOiA0cHg7XG59XG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLmNtcC1icmVhZGNydW1iX19pdGVtLW5hbWUge1xuICAgIG1heC13aWR0aDogMTk1cHg7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICB9XG4gIFtkaXI9cnRsXSAuY21wLWJyZWFkY3J1bWJfX2l0ZW0tbmFtZSB7XG4gICAgZGlyZWN0aW9uOiBydGw7XG4gIH1cbn1cbi5jbXAtYnJlYWRjcnVtYl9faXRlbS1saW5rIHtcbiAgY29sb3I6ICNhN2E4YTk7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIC8qIGRhbSBpY29uIHdpbGwgYmUgYWRkZWQgYXMgOjphZnRlciAqL1xufVxuLmNtcC1icmVhZGNydW1iX19pdGVtLWxpbms6aG92ZXIge1xuICBjb2xvcjogIzUzNTY1YTtcbn1cbi5jbXAtYnJlYWRjcnVtYl9faXRlbS1saW5rOmFmdGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzUzNTY1YTtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXNrLWltYWdlOiB1cmwoXCIvY29udGVudC9kYW0vdm9sdm8tbWVkaWEvbGlzdC1pY29ucy9jaGV2cm9uLXJpZ2h0LnN2ZyNjaGV2cm9uLXJpZ2h0LWljb24tdzI0LXZpZXdcIik7XG4gIG1hc2stcmVwZWF0OiBuby1yZXBlYXQ7XG4gIG1hc2stc2l6ZTogY292ZXI7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICB3aWR0aDogdmFyKC0tdi1pY29uLXNpemUpO1xuICBoZWlnaHQ6IHZhcigtLXYtaWNvbi1zaXplKTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLmNtcC1icmVhZGNydW1iX19pdGVtLWxpbms6YWZ0ZXIge1xuICAgIG1hc2staW1hZ2U6IHVybChcIi9jb250ZW50L2RhbS92b2x2by1tZWRpYS9saXN0LWljb25zL2NoZXZyb24tcmlnaHQuc3ZnI2NoZXZyb24tcmlnaHQtaWNvbi13MTYtdmlld1wiKTtcbiAgfVxufVxuW2Rpcj1ydGxdIC5jbXAtYnJlYWRjcnVtYl9faXRlbS1saW5rOmFmdGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzUzNTY1YTtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXNrLWltYWdlOiB1cmwoXCIvY29udGVudC9kYW0vdm9sdm8tbWVkaWEvbGlzdC1pY29ucy9jaGV2cm9uLWxlZnQuc3ZnI2NoZXZyb24tbGVmdC1pY29uLXcyNC12aWV3XCIpO1xuICBtYXNrLXJlcGVhdDogbm8tcmVwZWF0O1xuICBtYXNrLXNpemU6IGNvdmVyO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgd2lkdGg6IHZhcigtLXYtaWNvbi1zaXplKTtcbiAgaGVpZ2h0OiB2YXIoLS12LWljb24tc2l6ZSk7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIFtkaXI9cnRsXSAuY21wLWJyZWFkY3J1bWJfX2l0ZW0tbGluazphZnRlciB7XG4gICAgbWFzay1pbWFnZTogdXJsKFwiL2NvbnRlbnQvZGFtL3ZvbHZvLW1lZGlhL2xpc3QtaWNvbnMvY2hldnJvbi1sZWZ0LnN2ZyNjaGV2cm9uLWxlZnQtaWNvbi13MTYtdmlld1wiKTtcbiAgfVxufVxuLmNtcC1icmVhZGNydW1iX19pdGVtLWxpbms6OmFmdGVyIHtcbiAgbWFyZ2luLWJsb2NrOiAwO1xuICBtYXJnaW4taW5saW5lOiA4cHg7XG59XG4uY21wLWJyZWFkY3J1bWJfX2l0ZW0tLWFjdGl2ZSB7XG4gIGNvbG9yOiAjNTM1NjVhO1xufVxuLmNtcC1icmVhZGNydW1iX19pdGVtLS1taW5pbWl6ZWQ6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiLi4uXCI7XG4gIGNvbG9yOiAjYTdhOGE5O1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG4uY21wLWJyZWFkY3J1bWJfX2l0ZW0tLW1pbmltaXplZDpob3Zlcjo6YmVmb3JlIHtcbiAgY29sb3I6ICM1MzU2NWE7XG59XG4uY21wLWJyZWFkY3J1bWJfX2l0ZW0tLW1pbmltaXplZCAuY21wLWJyZWFkY3J1bWJfX2l0ZW0tbGluayB7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuLmNtcC1icmVhZGNydW1iX19pdGVtLS1taW5pbWl6ZWQgLmNtcC1icmVhZGNydW1iX19pdGVtLWxpbmsgLmNtcC1icmVhZGNydW1iX19pdGVtLW5hbWUge1xuICBkaXNwbGF5OiBub25lO1xufVxuLmNtcC1icmVhZGNydW1iX19pdGVtLS1taW5pbWl6ZWQgfiAuY21wLWJyZWFkY3J1bWJfX2l0ZW0tLW1pbmltaXplZCB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5jbXAtc2VhcmNoIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDk2MHB4KSB7XG4gIC5jbXAtc2VhcmNoIHtcbiAgICB3aWR0aDogMzUwcHg7XG4gIH1cbn1cbi5jbXAtc2VhcmNoX19mb3JtIHtcbiAgZGlzcGxheTogZmxleDtcbn1cbi5jbXAtc2VhcmNoX19maWVsZCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaGVpZ2h0OiA0MHB4O1xuICBmbGV4OiAxIDAgYXV0bztcbn1cbi5jbXAtc2VhcmNoX19pbnB1dCB7XG4gIHdpZHRoOiAxMDAlO1xuICB0ZXh0LWluZGVudDogMTBweDtcbiAgaGVpZ2h0OiAxMDAlO1xuICBmb250LXNpemU6IDAuNzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICBwYWRkaW5nLWlubGluZS1lbmQ6IDM1cHg7XG4gIGNvbG9yOiAjYTdhOGE5O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiAxcHggc29saWQgI2UxZGZkZDtcbn1cbi5jbXAtc2VhcmNoX19pY29uIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBpbnNldC1pbmxpbmUtZW5kOiAxNXB4O1xuICBpbnNldC1ibG9jay1zdGFydDogOHB4O1xufVxuLmNtcC1zZWFyY2hfX2ljb246YWZ0ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYTdhOGE5O1xuICBjb250ZW50OiBcIlwiO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hc2staW1hZ2U6IHVybChcIi9jb250ZW50L2RhbS92b2x2by1tZWRpYS9saXN0LWljb25zL3NlYXJjaC5zdmcjc2VhcmNoLWljb24tdzI0LXZpZXdcIik7XG4gIG1hc2stcmVwZWF0OiBuby1yZXBlYXQ7XG4gIG1hc2stc2l6ZTogY292ZXI7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICB3aWR0aDogdmFyKC0tdi1pY29uLXNpemUpO1xuICBoZWlnaHQ6IHZhcigtLXYtaWNvbi1zaXplKTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLmNtcC1zZWFyY2hfX2ljb246YWZ0ZXIge1xuICAgIG1hc2staW1hZ2U6IHVybChcIi9jb250ZW50L2RhbS92b2x2by1tZWRpYS9saXN0LWljb25zL3NlYXJjaC5zdmcjc2VhcmNoLWljb24tdzE2LXZpZXdcIik7XG4gIH1cbn1cbi5jbXAtc2VhcmNoX19pY29uOjphZnRlciB7XG4gIHdpZHRoOiAyNHB4ICFpbXBvcnRhbnQ7XG4gIGhlaWdodDogMjRweCAhaW1wb3J0YW50O1xufVxuLmNtcC1zZWFyY2hfX3N1Ym1pdCAuY21wLXNlYXJjaF9faWNvbiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaW5zZXQtaW5saW5lLWVuZDogYXV0bztcbiAgaW5zZXQtYmxvY2stc3RhcnQ6IDJweDtcbn1cbi5jbXAtc2VhcmNoX19jbGVhciB7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvcmRlcjogbm9uZTtcbiAgcGFkZGluZzogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBpbnNldC1pbmxpbmUtZW5kOiAxNXB4O1xuICBpbnNldC1ibG9jay1zdGFydDogOHB4O1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG4uY21wLXNlYXJjaF9fY2xlYXItaWNvbjphZnRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNhN2E4YTk7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFzay1pbWFnZTogdXJsKFwiL2NvbnRlbnQvZGFtL3ZvbHZvLW1lZGlhL3NlcnZpY2UtY29udHJhY3QtaWNvbnMvY2xvc2Uuc3ZnI2Nsb3NlLWljb24tdzI0LXZpZXdcIik7XG4gIG1hc2stcmVwZWF0OiBuby1yZXBlYXQ7XG4gIG1hc2stc2l6ZTogY292ZXI7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICB3aWR0aDogdmFyKC0tdi1pY29uLXNpemUpO1xuICBoZWlnaHQ6IHZhcigtLXYtaWNvbi1zaXplKTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLmNtcC1zZWFyY2hfX2NsZWFyLWljb246YWZ0ZXIge1xuICAgIG1hc2staW1hZ2U6IHVybChcIi9jb250ZW50L2RhbS92b2x2by1tZWRpYS9zZXJ2aWNlLWNvbnRyYWN0LWljb25zL2Nsb3NlLnN2ZyNjbG9zZS1pY29uLXcxNi12aWV3XCIpO1xuICB9XG59XG4uY21wLXNlYXJjaF9fc3VibWl0IHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi5oZWFkZXJfX3NlYXJjaC0tc2hvdy1zdWJtaXQgLmNtcC1zZWFyY2hfX3N1Ym1pdCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgYm9yZGVyOiAxcHggc29saWQgIzUzNTY1YTtcbiAgY29sb3I6ICM1MzU2NWE7XG4gIG1hcmdpbi1pbmxpbmUtc3RhcnQ6IDE1cHg7XG4gIGJvcmRlci13aWR0aDogMnB4O1xuICB3aWR0aDogOTBweDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5NjBweCkge1xuICAuaGVhZGVyX19zZWFyY2gtLXNob3ctc3VibWl0IC5jbXAtc2VhcmNoX19zdWJtaXQge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cbi5jbXAtc2VhcmNoX19yZXN1bHRzIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBpbnNldC1pbmxpbmUtZW5kOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgdGV4dC1hbGlnbjogc3RhcnQ7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIHotaW5kZXg6IDQ7XG59XG4uY21wLXNlYXJjaF9faXRlbSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nLWJsb2NrOiA1cHg7XG4gIHBhZGRpbmctaW5saW5lOiAxMHB4IDA7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgYm9yZGVyOiAxcHggc29saWQgI2UxZGZkZDtcbiAgYm9yZGVyLWJsb2NrLWVuZDogMDtcbiAgY29sb3I6ICNhN2E4YTk7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuLmNtcC1zZWFyY2hfX2l0ZW06aG92ZXIge1xuICBiYWNrZ3JvdW5kOiAjZTFkZmRkO1xufVxuLmNtcC1zZWFyY2hfX2l0ZW06bGFzdC1jaGlsZCB7XG4gIGJvcmRlci1ibG9jay1lbmQ6IDFweCBzb2xpZCAjZTFkZmRkO1xufVxuXG4uZm9vdGVyX19jb250YWluZXIge1xuICBiYWNrZ3JvdW5kOiAjZTFkZmRkO1xufVxuLmFlbS1HcmlkIC5mb290ZXJfX2NvbnRhaW5lciB7XG4gIG1hcmdpbi1ibG9jazogMDtcbiAgbWFyZ2luLWlubGluZTogLTE1cHg7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5hZW0tR3JpZCAuZm9vdGVyX19jb250YWluZXIge1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIG1hcmdpbi1ibG9jazogMDtcbiAgICBtYXJnaW4taW5saW5lOiBjYWxjKCgxMDB2dyAtIDEyMDBweCkgLyAtMik7XG4gIH1cbn1cbi5mb290ZXJfX2NvbnRhaW5lciAuY21wLWxpc3RfX2l0ZW0gLmNtcC1saXN0X19pdGVtLWxpbms6OmFmdGVyIHtcbiAgd2lkdGg6IDE2cHggIWltcG9ydGFudDtcbiAgaGVpZ2h0OiAxNnB4ICFpbXBvcnRhbnQ7XG4gIGluc2V0LWJsb2NrLXN0YXJ0OiAwO1xufVxuLmZvb3Rlcl9fY29udGFpbmVyIC5jbXAtbGlzdF9faWNvbiB7XG4gIGluc2V0LWJsb2NrLXN0YXJ0OiAwO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBtYXJnaW4tYmxvY2stc3RhcnQ6IC0ycHg7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTYwcHgpIHtcbiAgLmZvb3Rlcl9fbGlua3Mge1xuICAgIHBhZGRpbmctYmxvY2s6IDAgMzBweDtcbiAgICBwYWRkaW5nLWlubGluZTogNDBweDtcbiAgfVxufVxuLmZvb3Rlcl9fbGlua3MgLmNtcC1saXN0IHtcbiAgcGFkZGluZy1ibG9jazogMDtcbiAgcGFkZGluZy1pbmxpbmU6IDE1cHg7XG59XG5AbWVkaWEgKG1heC13aWR0aDogOTU5cHgpIHtcbiAgLmZvb3Rlcl9fbGlua3MgLmNtcC1saXN0IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDk2MHB4KSB7XG4gIC5mb290ZXJfX2xpbmtzIC5jbXAtbGlzdCB7XG4gICAgcGFkZGluZzogMDtcbiAgfVxufVxuLmZvb3Rlcl9fbGlua3MgLmNtcC1saXN0X190aXRsZSB7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mZi1tZWRpdW0pO1xuICBmb250LXNpemU6IDE2cHg7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1scy1kZWZhdWx0KTtcbiAgbWFyZ2luLWJsb2NrLXN0YXJ0OiA0MHB4O1xufVxuLmZvb3Rlcl9fbGlua3MgLmNtcC1saXN0X19pdGVtIHtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZmLWxpZ2h0KTtcbn1cbi5mb290ZXJfX2xpbmtzIC5jbXAtbGlzdF9faXRlbSAuY21wLWxpc3RfX2l0ZW0tbGlua1t0YXJnZXQ9X2JsYW5rXTphZnRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM1MzU2NWE7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFzay1pbWFnZTogdXJsKFwiL2NvbnRlbnQvZGFtL3ZvbHZvLW1lZGlhL2xpc3QtaWNvbnMvbGluay1leHRlcm5hbC5zdmcjbGluay1leHRlcm5hbC1pY29uLXcyNC12aWV3XCIpO1xuICBtYXNrLXJlcGVhdDogbm8tcmVwZWF0O1xuICBtYXNrLXNpemU6IGNvdmVyO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgd2lkdGg6IHZhcigtLXYtaWNvbi1zaXplKTtcbiAgaGVpZ2h0OiB2YXIoLS12LWljb24tc2l6ZSk7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5mb290ZXJfX2xpbmtzIC5jbXAtbGlzdF9faXRlbSAuY21wLWxpc3RfX2l0ZW0tbGlua1t0YXJnZXQ9X2JsYW5rXTphZnRlciB7XG4gICAgbWFzay1pbWFnZTogdXJsKFwiL2NvbnRlbnQvZGFtL3ZvbHZvLW1lZGlhL2xpc3QtaWNvbnMvbGluay1leHRlcm5hbC5zdmcjbGluay1leHRlcm5hbC1pY29uLXcxNi12aWV3XCIpO1xuICB9XG59XG4uZm9vdGVyX19saW5rcyAuY21wLWxpc3RfX2l0ZW0gLmNtcC1saXN0X19pdGVtLWxpbms6bm90KFt0YXJnZXQ9X2JsYW5rXSk6OmFmdGVyIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi5mb290ZXJfX2xpbmtzIC5jbXAtbGlzdF9faXRlbS1saW5rIHtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZmLWxpZ2h0KTtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBmb250LXdlaWdodDogNDAwO1xuICBsaW5lLWhlaWdodDogMS41O1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tbHMtZGVmYXVsdCk7XG4gIGNvbG9yOiAjNTM1NjVhO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBnYXA6IDVweDtcbn1cbi5mb290ZXJfX2xpbmtzIC5jbXAtbGlzdF9faXRlbS1saW5rOmhvdmVyLCAuZm9vdGVyX19saW5rcyAuY21wLWxpc3RfX2l0ZW0tbGluazpmb2N1cyB7XG4gIGNvbG9yOiAjMjAyYTQ0O1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA5NTlweCkge1xuICAuZm9vdGVyX19saW5rcyAuY21wLWxpc3RfX2l0ZW0tbGluayAqLCAuZm9vdGVyX19saW5rcyAuY21wLWxpc3RfX2l0ZW0tbGluazo6YWZ0ZXIge1xuICAgIHdpZHRoOiAxNnB4O1xuICAgIGhlaWdodDogMTZweDtcbiAgICBpbnNldC1ibG9jay1zdGFydDogMDtcbiAgfVxufVxuLmZvb3Rlcl9fbGlua3MgLmNtcC1saXN0X19pdGVtLWxpbmsgLnYtaWNvbi0tMTYge1xuICBkaXNwbGF5OiBpbmxpbmU7XG59XG4uZm9vdGVyX19saW5rcyAuY21wLWxpc3RfX2l0ZW0tbGluayAudi1pY29uLS0yNCB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4uZm9vdGVyX19saW5rcyAubGlzdF9fYWNjb3JkaW9uLS1jbG9zZSAubGlzdF9faXRlbXMge1xuICBkaXNwbGF5OiBub25lO1xufVxuLmZvb3Rlcl9fbGlua3MgLmFlbS1HcmlkIHtcbiAgbWFyZ2luLWlubGluZTogMDtcbn1cbi5mb290ZXJfX2xpbmtzIC5hZW0tR3JpZENvbHVtbiB7XG4gIHBhZGRpbmc6IDA7XG59XG5AbWVkaWEgKG1heC13aWR0aDogOTYwcHgpIHtcbiAgLmZvb3Rlcl9fbGlua3MgLmxpc3Qge1xuICAgIGJvcmRlci1ibG9jay1lbmQ6IDFweCBzb2xpZCAjYTdhOGE5O1xuICB9XG4gIC5mb290ZXJfX2xpbmtzIC5jbXAtbGlzdCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAuZm9vdGVyX19saW5rcyAubGlzdC0tb3BlbiAuY21wLWxpc3Qge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG4gIC5mb290ZXJfX2xpbmtzIC5saXN0LS1vcGVuIC5jbXAtbGlzdF9fdGl0bGU6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM1MzU2NWE7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFzay1pbWFnZTogdXJsKFwiL2NvbnRlbnQvZGFtL3ZvbHZvLW1lZGlhL2xpc3QtaWNvbnMvY2hldnJvbi11cC5zdmcjY2hldnJvbi11cC1pY29uLXcyNC12aWV3XCIpO1xuICAgIG1hc2stcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgbWFzay1zaXplOiBjb3ZlcjtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICB3aWR0aDogdmFyKC0tdi1pY29uLXNpemUpO1xuICAgIGhlaWdodDogdmFyKC0tdi1pY29uLXNpemUpO1xuICB9XG59XG5AbWVkaWEgKG1heC13aWR0aDogOTYwcHgpIGFuZCAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLmZvb3Rlcl9fbGlua3MgLmxpc3QtLW9wZW4gLmNtcC1saXN0X190aXRsZTphZnRlciB7XG4gICAgbWFzay1pbWFnZTogdXJsKFwiL2NvbnRlbnQvZGFtL3ZvbHZvLW1lZGlhL2xpc3QtaWNvbnMvY2hldnJvbi11cC5zdmcjY2hldnJvbi11cC1pY29uLXcxNi12aWV3XCIpO1xuICB9XG59XG5AbWVkaWEgKG1heC13aWR0aDogOTYwcHgpIHtcbiAgLmZvb3Rlcl9fbGlua3MgLmNtcC1saXN0X190aXRsZSB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nLWJsb2NrOiAyNXB4IDIwcHg7XG4gICAgcGFkZGluZy1pbmxpbmU6IDE1cHg7XG4gICAgbWFyZ2luOiAwO1xuICB9XG4gIC5mb290ZXJfX2xpbmtzIC5jbXAtbGlzdF9fdGl0bGU6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM1MzU2NWE7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFzay1pbWFnZTogdXJsKFwiL2NvbnRlbnQvZGFtL3ZvbHZvLW1lZGlhL2xpc3QtaWNvbnMvY2hldnJvbi1kb3duLnN2ZyNjaGV2cm9uLWRvd24taWNvbi13MjQtdmlld1wiKTtcbiAgICBtYXNrLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIG1hc2stc2l6ZTogY292ZXI7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgd2lkdGg6IHZhcigtLXYtaWNvbi1zaXplKTtcbiAgICBoZWlnaHQ6IHZhcigtLXYtaWNvbi1zaXplKTtcbiAgfVxufVxuQG1lZGlhIChtYXgtd2lkdGg6IDk2MHB4KSBhbmQgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5mb290ZXJfX2xpbmtzIC5jbXAtbGlzdF9fdGl0bGU6YWZ0ZXIge1xuICAgIG1hc2staW1hZ2U6IHVybChcIi9jb250ZW50L2RhbS92b2x2by1tZWRpYS9saXN0LWljb25zL2NoZXZyb24tZG93bi5zdmcjY2hldnJvbi1kb3duLWljb24tdzE2LXZpZXdcIik7XG4gIH1cbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA5NjBweCkge1xuICAuZm9vdGVyX19saW5rcyAuY21wLWxpc3RfX3RpdGxlOjphZnRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGluc2V0LWJsb2NrLXN0YXJ0OiAzNXB4O1xuICAgIGluc2V0LWlubGluZS1lbmQ6IDE1cHg7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKGNhbGModmFyKC0tdi1pY29uLXNpemUpIC8gLTIpKTtcbiAgICBjb250ZW50OiBcIlwiICFpbXBvcnRhbnQ7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5NjBweCkge1xuICAuZm9vdGVyX19ib3R0b20ge1xuICAgIHBhZGRpbmctYmxvY2stZW5kOiA3MHB4O1xuICB9XG59XG4uZm9vdGVyX19jb3B5cmlnaHQge1xuICBwYWRkaW5nLWJsb2NrOiAxN3B4O1xuICBwYWRkaW5nLWlubGluZTogMjBweDtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDk2MHB4KSB7XG4gIC5mb290ZXJfX2NvcHlyaWdodCB7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgdGV4dC1hbGlnbjogaW5oZXJpdDtcbiAgfVxufVxuLmZvb3Rlcl9fY29weXJpZ2h0VGV4dCB7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mZi1saWdodCk7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWxzLWRlZmF1bHQpO1xuICBjb2xvcjogIzUzNTY1YTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBvcmRlcjogMjtcbiAgbWFyZ2luLWJsb2NrLXN0YXJ0OiAxMHB4O1xuICBwYWRkaW5nLWJsb2NrOiAxMHB4O1xuICBwYWRkaW5nLWlubGluZTogMDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5NjBweCkge1xuICAuZm9vdGVyX19jb3B5cmlnaHRUZXh0IHtcbiAgICBvcmRlcjogMTtcbiAgICB3aWR0aDogYXV0bztcbiAgICB0ZXh0LWFsaWduOiBpbmhlcml0O1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGFsaWduLXNlbGY6IGNlbnRlcjtcbiAgfVxufVxuLmZvb3Rlcl9fY29weXJpZ2h0VGV4dDo6YmVmb3JlIHtcbiAgY29udGVudDogXCLCqVwiO1xuICBjb2xvcjogIzUzNTY1YTtcbiAgbWFyZ2luLWlubGluZS1lbmQ6IDVweDtcbn1cbi5mb290ZXJfX2NvcHlyaWdodCAubGlzdCB7XG4gIG9yZGVyOiAxO1xuICB3aWR0aDogMTAwJTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5NjBweCkge1xuICAuZm9vdGVyX19jb3B5cmlnaHQgLmxpc3Qge1xuICAgIG9yZGVyOiAyO1xuICAgIHdpZHRoOiBhdXRvO1xuICB9XG59XG4uZm9vdGVyX19jb3B5cmlnaHQgLmNtcC1saXN0X190aXRsZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4uZm9vdGVyX19jb3B5cmlnaHQgLmNtcC1saXN0X19pdGVtIHtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZmLWxpZ2h0KTtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBmb250LXdlaWdodDogNDAwO1xuICBsaW5lLWhlaWdodDogMS41O1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tbHMtZGVmYXVsdCk7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZy1ibG9jay1lbmQ6IDA7XG59XG4uZm9vdGVyX19jb3B5cmlnaHQgLmNtcC1saXN0X19pdGVtOjphZnRlciB7XG4gIGNvbnRlbnQ6IFwifFwiO1xuICBtYXJnaW4tYmxvY2s6IDA7XG4gIG1hcmdpbi1pbmxpbmU6IDEwcHg7XG4gIGNvbG9yOiAjNTM1NjVhO1xufVxuLmZvb3Rlcl9fY29weXJpZ2h0IC5jbXAtbGlzdF9faXRlbTpsYXN0LWNoaWxkOjphZnRlciB7XG4gIGNvbnRlbnQ6IG5vbmU7XG59XG4uZm9vdGVyX19jb3B5cmlnaHQgLmNtcC1saXN0X19pdGVtIC5jbXAtbGlzdF9faXRlbS1saW5rIHtcbiAgY29sb3I6ICM1MzU2NWE7XG59XG4uZm9vdGVyX19jb3B5cmlnaHQgLmNtcC1saXN0X19pdGVtIC5jbXAtbGlzdF9faXRlbS1saW5rOmhvdmVyLCAuZm9vdGVyX19jb3B5cmlnaHQgLmNtcC1saXN0X19pdGVtIC5jbXAtbGlzdF9faXRlbS1saW5rOmZvY3VzIHtcbiAgY29sb3I6ICMyMDJhNDQ7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xufVxuLmZvb3Rlcl9fY29weXJpZ2h0IC5jbXAtbGlzdF9faXRlbSAuY21wLWxpc3RfX2l0ZW0tbGluazo6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBtYXJnaW4taW5saW5lLXN0YXJ0OiAwO1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4ubW9kYWwge1xuICAtLW1vZGFsLW1heC1oZWlnaHQ6IGNhbGMoMTAwJSAtIDQ4cHgpO1xuICAtLW1vZGFsLW1heC13aWR0aDogY2FsYygxMDAlIC0gMzBweCk7XG4gIC0tbW9kYWwtd2lkdGg6IDEwMCU7XG4gIC0tbW9kYWwtbWVzc2FnZS1tYXgtaGVpZ2h0OiA0NDBweDtcbiAgLS1tb2RhbC1tZXNzYWdlLW1heC13aWR0aDogNzIwcHg7XG4gIG1heC1oZWlnaHQ6IHZhcigtLW1vZGFsLW1heC1oZWlnaHQpO1xuICBtYXgtd2lkdGg6IHZhcigtLW1vZGFsLW1heC13aWR0aCk7XG4gIHdpZHRoOiB2YXIoLS1tb2RhbC13aWR0aCk7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlcjogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogOHB4O1xuICBib3gtc2hhZG93OiAwIDE2cHggMzJweCAwIHJnYmEoMCwgMCwgMCwgMC4xOCksIDAgMXB4IDRweCAwIHJnYmEoMCwgMCwgMCwgMC4xMik7XG4gIGNvbG9yOiAjNTM1NjVhO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDk2MHB4KSB7XG4gIC5tb2RhbCB7XG4gICAgLS1tb2RhbC1tYXgtd2lkdGg6IDgwMHB4O1xuICB9XG59XG4ubW9kYWxbb3Blbl0ge1xuICBkaXNwbGF5OiBmbGV4O1xufVxuLm1vZGFsOjpiYWNrZHJvcCB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMjAsIDIwLCAyMCwgMC40KTtcbiAgYmFja2Ryb3AtZmlsdGVyOiBibHVyKDcuNXB4KTtcbn1cbi5tb2RhbF9faGVhZGVyIHtcbiAgLyogSWYgdmFsdWUgaGFzIG1vcmUgdGhhbiBvbmUgZWxlbWVudCwgYW55IGV2ZW4gaW5kZXggd2lsbCBtYXRjaCBhIGhvcml6b250YWwgYXhpc1xuICAgICAgKiAyIHZhbHVlczogKDEpdG9wK2Rvd24gKDIpbGVmdCtyaWdodFxuICAgICAgKiAzIHZhbHVlczogKDEpdG9wICgyKWxlZnQrcmlnaHQgKDMpYm90dG9tXG4gICAgICAqIDQgdmFsdWVzOiAoMSl0b3AgKDIpcmlnaHQgKDMpYm90dG9tICg0KWxlZnRcbiAgICAgICovXG4gIHBhZGRpbmctYmxvY2s6IDFyZW07XG4gIC8qIElmIHZhbHVlIGhhcyBtb3JlIHRoYW4gb25lIGVsZW1lbnQsIGFueSBldmVuIGluZGV4IHdpbGwgbWF0Y2ggYSBob3Jpem9udGFsIGF4aXNcbiAgICAgICogMiB2YWx1ZXM6ICgxKXRvcCtkb3duICgyKWxlZnQrcmlnaHRcbiAgICAgICogMyB2YWx1ZXM6ICgxKXRvcCAoMilsZWZ0K3JpZ2h0ICgzKWJvdHRvbVxuICAgICAgKiA0IHZhbHVlczogKDEpdG9wICgyKXJpZ2h0ICgzKWJvdHRvbSAoNClsZWZ0XG4gICAgICAqL1xuICAvKiBJZiB2YWx1ZSBoYXMgbW9yZSB0aGFuIG9uZSBlbGVtZW50LCBhbnkgZXZlbiBpbmRleCB3aWxsIG1hdGNoIGEgaG9yaXpvbnRhbCBheGlzXG4gICAgICAqIDIgdmFsdWVzOiAoMSl0b3ArZG93biAoMilsZWZ0K3JpZ2h0XG4gICAgICAqIDMgdmFsdWVzOiAoMSl0b3AgKDIpbGVmdCtyaWdodCAoMylib3R0b21cbiAgICAgICogNCB2YWx1ZXM6ICgxKXRvcCAoMilyaWdodCAoMylib3R0b20gKDQpbGVmdFxuICAgICAgKi9cbiAgcGFkZGluZy1pbmxpbmU6IDEuNXJlbSAxNnB4O1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZTFkZmRkO1xufVxuLm1vZGFsX19tYWluIHtcbiAgLyogSWYgdmFsdWUgaGFzIG1vcmUgdGhhbiBvbmUgZWxlbWVudCwgYW55IGV2ZW4gaW5kZXggd2lsbCBtYXRjaCBhIGhvcml6b250YWwgYXhpc1xuICAgICAgKiAyIHZhbHVlczogKDEpdG9wK2Rvd24gKDIpbGVmdCtyaWdodFxuICAgICAgKiAzIHZhbHVlczogKDEpdG9wICgyKWxlZnQrcmlnaHQgKDMpYm90dG9tXG4gICAgICAqIDQgdmFsdWVzOiAoMSl0b3AgKDIpcmlnaHQgKDMpYm90dG9tICg0KWxlZnRcbiAgICAgICovXG4gIHBhZGRpbmctYmxvY2s6IDIuNXJlbTtcbiAgLyogSWYgdmFsdWUgaGFzIG1vcmUgdGhhbiBvbmUgZWxlbWVudCwgYW55IGV2ZW4gaW5kZXggd2lsbCBtYXRjaCBhIGhvcml6b250YWwgYXhpc1xuICAgICAgKiAyIHZhbHVlczogKDEpdG9wK2Rvd24gKDIpbGVmdCtyaWdodFxuICAgICAgKiAzIHZhbHVlczogKDEpdG9wICgyKWxlZnQrcmlnaHQgKDMpYm90dG9tXG4gICAgICAqIDQgdmFsdWVzOiAoMSl0b3AgKDIpcmlnaHQgKDMpYm90dG9tICg0KWxlZnRcbiAgICAgICovXG4gIHBhZGRpbmctaW5saW5lOiAxLjVyZW07XG4gIG1heC1oZWlnaHQ6IHZhcigtLW1vZGFsLW1lc3NhZ2UtbWF4LWhlaWdodCk7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIG92ZXJmbG93LXk6IGF1dG87XG4gIG92ZXJzY3JvbGwtYmVoYXZpb3IteTogY29udGFpbjtcbn1cbi5tb2RhbF9fZm9vdGVyIHtcbiAgLyogSWYgdmFsdWUgaGFzIG1vcmUgdGhhbiBvbmUgZWxlbWVudCwgYW55IGV2ZW4gaW5kZXggd2lsbCBtYXRjaCBhIGhvcml6b250YWwgYXhpc1xuICAgICAgKiAyIHZhbHVlczogKDEpdG9wK2Rvd24gKDIpbGVmdCtyaWdodFxuICAgICAgKiAzIHZhbHVlczogKDEpdG9wICgyKWxlZnQrcmlnaHQgKDMpYm90dG9tXG4gICAgICAqIDQgdmFsdWVzOiAoMSl0b3AgKDIpcmlnaHQgKDMpYm90dG9tICg0KWxlZnRcbiAgICAgICovXG4gIC8qIElmIHZhbHVlIGhhcyBtb3JlIHRoYW4gb25lIGVsZW1lbnQsIGFueSBldmVuIGluZGV4IHdpbGwgbWF0Y2ggYSBob3Jpem9udGFsIGF4aXNcbiAgICAgICogMiB2YWx1ZXM6ICgxKXRvcCtkb3duICgyKWxlZnQrcmlnaHRcbiAgICAgICogMyB2YWx1ZXM6ICgxKXRvcCAoMilsZWZ0K3JpZ2h0ICgzKWJvdHRvbVxuICAgICAgKiA0IHZhbHVlczogKDEpdG9wICgyKXJpZ2h0ICgzKWJvdHRvbSAoNClsZWZ0XG4gICAgICAqL1xuICBwYWRkaW5nOiAxLjVyZW0gMjRweDtcbiAgLyogSWYgdmFsdWUgaGFzIG1vcmUgdGhhbiBvbmUgZWxlbWVudCwgYW55IGV2ZW4gaW5kZXggd2lsbCBtYXRjaCBhIGhvcml6b250YWwgYXhpc1xuICAgICAgKiAyIHZhbHVlczogKDEpdG9wK2Rvd24gKDIpbGVmdCtyaWdodFxuICAgICAgKiAzIHZhbHVlczogKDEpdG9wICgyKWxlZnQrcmlnaHQgKDMpYm90dG9tXG4gICAgICAqIDQgdmFsdWVzOiAoMSl0b3AgKDIpcmlnaHQgKDMpYm90dG9tICg0KWxlZnRcbiAgICAgICovXG4gIGdhcDogMXJlbTtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNlMWRmZGQ7XG59XG4ubW9kYWxfX3RpdGxlIHtcbiAgZm9udDogNTAwIDEuNXJlbSAvIDEyMCUgXCJWb2x2byBOb3Z1bSBSZWd1bGFyXCIsIFwiQXNzaXN0YW50XCIsIFwiTm90byBTYW5zIFJlZ3VsYXJcIiwgc2Fucy1zZXJpZjtcbn1cbi5tb2RhbF9fdGV4dCB7XG4gIG1heC13aWR0aDogdmFyKC0tbW9kYWwtbWVzc2FnZS1tYXgtd2lkdGgpO1xuICBmbGV4OiAxIDAgMDtcbn1cbi5tb2RhbF9fYnV0dG9uIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mZi1tZWRpdW0pO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBwYWRkaW5nLWJsb2NrOiAxMnB4O1xuICBwYWRkaW5nLWlubGluZTogMzJweDtcbiAgYmFja2dyb3VuZDogIzAwNGZiYztcbiAgYm9yZGVyOiAxcHggc29saWQgIzAwNGZiYztcbiAgY29sb3I6ICNmZmY7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQgMXM7XG4gIGZvbnQtZmFtaWx5OiBcIlZvbHZvIE5vdnVtIFJlZ3VsYXJcIiwgXCJBc3Npc3RhbnRcIiwgXCJOb3RvIFNhbnMgUmVndWxhclwiLCBzYW5zLXNlcmlmO1xuICBvdXRsaW5lOiBub25lO1xufVxuLm1vZGFsX19idXR0b246aG92ZXIsIC5tb2RhbF9fYnV0dG9uOmZvY3VzIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQ6ICMwMDU2ZDY7XG4gIGJvcmRlcjogMXB4IHNvbGlkICMwMDU2ZDY7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cbi5tb2RhbF9fYnV0dG9uOmhvdmVyOjphZnRlciwgLm1vZGFsX19idXR0b246Zm9jdXM6OmFmdGVyIHtcbiAgdHJhbnNmb3JtOiB2YXIoLS1idXR0b24taWNvbi10cmFuc2Zvcm0taG92ZXIpO1xufVxuLm1vZGFsX19idXR0b246OmFmdGVyIHtcbiAgdHJhbnNmb3JtOiB2YXIoLS1idXR0b24taWNvbi10cmFuc2Zvcm0pO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4zcyBlYXNlLW91dDtcbn1cbi5tb2RhbF9fYnV0dG9uOmFjdGl2ZSB7XG4gIGJhY2tncm91bmQ6ICMwMDQxYTM7XG59XG4ubW9kYWxfX2J1dHRvbjphY3RpdmUsIC5tb2RhbF9fYnV0dG9uOmZvY3VzLCAubW9kYWxfX2J1dHRvbjpmb2N1cy12aXNpYmxlIHtcbiAgb3V0bGluZTogMnB4IHNvbGlkICMwMDQxYTM7XG4gIG91dGxpbmUtb2Zmc2V0OiAzcHg7XG59XG4ubW9kYWxfX2J1dHRvbjpkaXNhYmxlZCwgLm1vZGFsX19idXR0b24uZGlzYWJsZWQge1xuICBiYWNrZ3JvdW5kOiAjOGRjOWJmO1xuICBib3JkZXI6IDFweCBzb2xpZCAjOGRjOWJmO1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xufVxuLm1vZGFsX19idXR0b24tLXNlY29uZGFyeSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBmb250LWZhbWlseTogdmFyKC0tZmYtbWVkaXVtKTtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgcGFkZGluZy1ibG9jazogMTJweDtcbiAgcGFkZGluZy1pbmxpbmU6IDMycHg7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIGJvcmRlcjogMXB4IHNvbGlkICM1MzU2NWE7XG4gIGNvbG9yOiAjNTM1NjVhO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDFzO1xufVxuLm1vZGFsX19idXR0b24tLXNlY29uZGFyeTpob3ZlciwgLm1vZGFsX19idXR0b24tLXNlY29uZGFyeTpmb2N1cyB7XG4gIGJhY2tncm91bmQ6ICNmN2Y3Zjc7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgY29sb3I6ICM1MzU2NWE7XG59XG4ubW9kYWxfX2J1dHRvbi0tc2Vjb25kYXJ5OmhvdmVyOjphZnRlciwgLm1vZGFsX19idXR0b24tLXNlY29uZGFyeTpmb2N1czo6YWZ0ZXIge1xuICB0cmFuc2Zvcm06IHZhcigtLWJ1dHRvbi1pY29uLXRyYW5zZm9ybS1ob3Zlcik7XG59XG4ubW9kYWxfX2J1dHRvbi0tc2Vjb25kYXJ5OmFjdGl2ZSB7XG4gIGJhY2tncm91bmQ6ICNlMWRmZGQ7XG59XG4ubW9kYWxfX2J1dHRvbi0tc2Vjb25kYXJ5OmFjdGl2ZSwgLm1vZGFsX19idXR0b24tLXNlY29uZGFyeTpmb2N1cywgLm1vZGFsX19idXR0b24tLXNlY29uZGFyeTpmb2N1cy12aXNpYmxlIHtcbiAgb3V0bGluZTogMnB4IHNvbGlkICMwMDQxYTM7XG4gIG91dGxpbmUtb2Zmc2V0OiAzcHg7XG59XG4ubW9kYWxfX2J1dHRvbi0tc2Vjb25kYXJ5OjphZnRlciB7XG4gIHRyYW5zZm9ybTogdmFyKC0tYnV0dG9uLWljb24tdHJhbnNmb3JtKTtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuM3MgZWFzZS1vdXQ7XG59XG4ubW9kYWxfX2J1dHRvbi0tc2Vjb25kYXJ5OmRpc2FibGVkLCAubW9kYWxfX2J1dHRvbi0tc2Vjb25kYXJ5LmRpc2FibGVkIHtcbiAgYm9yZGVyOiAxcHggc29saWQgIzg4OGI4ZDtcbiAgY29sb3I6ICM4ODhiOGQ7XG59XG4ubW9kYWxfX2Nsb3NlQnRuIHtcbiAgLyogSWYgdmFsdWUgaGFzIG1vcmUgdGhhbiBvbmUgZWxlbWVudCwgYW55IGV2ZW4gaW5kZXggd2lsbCBtYXRjaCBhIGhvcml6b250YWwgYXhpc1xuICAgICAgKiAyIHZhbHVlczogKDEpdG9wK2Rvd24gKDIpbGVmdCtyaWdodFxuICAgICAgKiAzIHZhbHVlczogKDEpdG9wICgyKWxlZnQrcmlnaHQgKDMpYm90dG9tXG4gICAgICAqIDQgdmFsdWVzOiAoMSl0b3AgKDIpcmlnaHQgKDMpYm90dG9tICg0KWxlZnRcbiAgICAgICovXG4gIC8qIElmIHZhbHVlIGhhcyBtb3JlIHRoYW4gb25lIGVsZW1lbnQsIGFueSBldmVuIGluZGV4IHdpbGwgbWF0Y2ggYSBob3Jpem9udGFsIGF4aXNcbiAgICAgICogMiB2YWx1ZXM6ICgxKXRvcCtkb3duICgyKWxlZnQrcmlnaHRcbiAgICAgICogMyB2YWx1ZXM6ICgxKXRvcCAoMilsZWZ0K3JpZ2h0ICgzKWJvdHRvbVxuICAgICAgKiA0IHZhbHVlczogKDEpdG9wICgyKXJpZ2h0ICgzKWJvdHRvbSAoNClsZWZ0XG4gICAgICAqL1xuICBwYWRkaW5nOiAwLjgxMjVyZW0gMTNweDtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuLm1vZGFsX19jbG9zZUJ0bjpiZWZvcmUge1xuICBmb250LWZhbWlseTogXCJWb2x2b0ljb25zXCI7XG4gIGNvbnRlbnQ6IFwiXFxlOTNiXCI7XG4gIHNwZWFrOiBub25lO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZvbnQtdmFyaWFudDogbm9ybWFsO1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICBjb2xvcjogIzUzNTY1YTtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGxpbmUtaGVpZ2h0OiAwO1xuICAvKiBCZXR0ZXIgRm9udCBSZW5kZXJpbmcgPT09PT09PT09PT0gKi9cbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG59XG5cbi8qXG5BbHNvIHBsZWFzZSBmb2xsb3cgdGhpc1xuRG8geW91ciBwcm9qZWN0IGhhdmUgZGlmZXJlbnQgY2hhcnNldCBsYW5ndWFnZXMgdG8gYWNjb3VudCB3aXRoP1xuICAgICAgLSBZZXMgLT4gZm9sbG93IGh0dHBzOi8vcHJvamVjdHMubmV0Y2VudHJpYy5iaXovd2lraS9kaXNwbGF5L0ZST05URU5EL0NTUystK0ZvbnQrTm9ybWFsaXphdGlvblxuICAgICAgLSBObyAtPiBZb3UgY2FuIHN0aWxsIHVzZSBpdCwgdGhlcmUgYXJlIHRvbnMgb2YgYWR2YW50YWdlcywgYnV0IGl0cyBjcmVhdGUgc29tZSBleHRyYSBjc3MgYW5kIGxheW91dCByZW5kZXJpbmdcbiovXG4vKlxuICAqIERlc2lnbiBzcGVjOlxuICAqIGh0dHBzOi8vd3d3LmZpZ21hLmNvbS9maWxlL1NSNHJ2UWxObkNtUE1yUTlXWWFJcXYvYnJhbmNoL1RKcWtGeW1xMDl3ZjhLd21ZMVdOY2ovVm9sdm8tQUVNLURlc2lnbi1zeXN0ZW0/dHlwZT1kZXNpZ24mbm9kZS1pZD03LTI2JnQ9cEFtOTE2VlJpcUNPRDJJMS0wXG4qL1xuLyoqXG4gKiB6LWluZGV4ZXMgZnJvbSBsb3dlciB0byAtPiBoaWdoZXJcbiAqL1xuLyogZG9jXG4tLS1cbnRpdGxlOiBQaXhlbCB0byBlbVxubmFtZTogbm4tcHgtdG8tZW1cbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxuXG5DYWxjdWxhdGUgdGhlIGVtIHdpdGggYSBnaXZlbiBwaXhlbCB3aXRoIHRoZSBnaXZlbiBiYXNlIGZvbnQgc2l6ZVxuSWYgeW91IGRvbid0IHNldCBhICRiYXNlIHRoZSAkYmFzZS1mb250LXNpemUgaXMgdXNlZCBhcyB0aGUgY29udGV4dFxuXG4jIyBMaXZlIFRlbXBsYXRlIGFiYnJldmlhdGlvbnNcbi0tLVxuLXB0dVxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJHZhbHVlID0gcGl4ZWwgYmFzZWQgbnVtYmVyICh3aXRob3V0IHVuaXQpXG5AcGFyYW1ldGVyICRiYXNlID0gcGl4ZWwgYmFzZWQgbnVtYmVyICh3aXRob3V0IHVuaXQpXG5cbiMjIERlcGVuZGVuY2llc1xuLS0tXG5ubi1zdHJpcC11bml0XG5cbiMjIEV4YW1wbGVcbi0tLVxuYGBgaHRtbF9leGFtcGxlXG5ubi1weC10by1lbSg1KSAvLyBPdXRwdXQ6IDAuMzEyNWVtXG5ubi1weC10by1lbSg1LCAxMCkgLy8gT3V0cHV0OiAwLjVlbVxubm4tcHgtdG8tZW0oNSwgMjApIC8vIE91dHB1dDogMC4yNWVtXG5gYGBcbiovXG4vKiBkb2Ncbi0tLVxudGl0bGU6IFBpeGVsIHRvIHJlbVxubmFtZTogbm4tcHgtdG8tcmVtXG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cblxuQ2FsY3VsYXRlIHRoZSByZW0gd2l0aCBhIGdpdmVuIHBpeGVsIHdpdGggdGhlIGdpdmVuIGJhc2UgZm9udCBzaXplXG5cbkluOiAgNXB4XG5PdXQ6IDAuMzEyNXJlbVxuXG4jIyBMaXZlIFRlbXBsYXRlIGFiYnJldmlhdGlvbnNcbi0tLVxuLXJlbVxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJHZhbHVlID0gcGl4ZWwgYmFzZWQgbnVtYmVyICh3aXRob3V0IHVuaXQpXG5cbiMjIERlcGVuZGVuY2llc1xuLS0tXG5ubi1zdHJpcC11bml0XG5cbiMjIEV4YW1wbGVcbi0tLVxuYGBgaHRtbF9leGFtcGxlXG5ubi1weC10by1yZW0oNSkgLy8gT3V0cHV0IDAuMzEyNXJlbVxuYGBgXG5cbiovXG4vKiBkb2Ncbi0tLVxudGl0bGU6IFBpeGVsIHRvIHVuaXRcbm5hbWU6IHB4LXRvLXVuaXRcbmNhdGVnb3J5OiBtaXhpbnNcbi0tLVxuXG5TZXQgYSBwcm9wZXJ0eSBhbmQgdmFsdWUgKHBpeGVsIGJhc2VkIHdpdGhvdXQgdW5pdClcblxuQ2FsY3VsYXRlcyByZW0gLyBlbSAvICUgZnJvbSBnaXZlbiBwaXhlbCBhbmQgYmFzZSAoZGVmYXVsdCBiYXNlIGlzIHRoZVxuYmFzZS1mb250LXNpemUsIDE2cHgpXG5JZiBydGwgaXMgdHJ1ZSwgdGhpcyBtaXhpbiBoYW5kbGVzIGFsbCB0aGUgZGlyZWN0aW9uIHN0dWZmOlxuLSBTd2l0Y2hpbmcgdGhlIHZhbHVlcywgd2hlbiB3ZSBoYXZlIGV4YWN0bHkgNCB2YWx1ZXNcbi0gU3dpdGNoaW5nIGxlZnQgYW5kIHJpZ2h0IGluIHByb3BlcnRpZXMgKHBhZGRpbmcgYW5kIG1hcmdpbilcblxuIyMgTGl2ZSBUZW1wbGF0ZSBhYmJyZXZpYXRpb25zXG4tLS1cbi1wdHUgKGZvciBlbSBvciAlIHRvIHBpeGVsIC0gd2l0aCBiYXNlIHBhcmFtZXRlcilcbi1yZW0gKGZvciByZW0gdG8gcGl4ZWwgLSB3aXRob3V0IGJhc2UgcGFyYW1ldGVyKVxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJHByb3BlcnR5ID0gcGFkZGluZyB8IG1hcmdpbiB8IGZvbnQtc2l6ZSB8IHdpZHRoIHwgaGVpZ2h0XG5AcGFyYW1ldGVyICR2YWx1ZSA9IFBpeGVsIGJhc2VkIG51bWJlciAtIGFkZCBweCB0byBrZWVwIHRoZSBweCBmb3IgYSB2YWx1ZVxuQHBhcmFtZXRlciAkYmFzZSA9IHB4IGJhc2VkIG51bWJlciwgRGVmYXVsdDogMTZweFxuQHBhcmFtZXRlciAkdW5pdCA9IFNldCB1bml0OiBweCB8IGVtIHwgcmVtIHwgcGVyY2VudFxuXG4jIyBEZXBlbmRlbmNpZXNcbi0tLVxuYWJzdHJhY3QvZnVuY3Rpb25zL3N3YXAtbGVmdC1yaWdodFxuYWJzdHJhY3QvZnVuY3Rpb25zL3N0cmlwLXVuaXRcblxuIyMgRXhhbXBsZVxuLS0tXG5cbmBgYGh0bWxfZXhhbXBsZVxuQGluY2x1ZGUgbm4tcHgtdG8tdW5pdChwYWRkaW5nLCAwIDEwcHggMjAgMCk7ID0+IHBhZGRpbmc6IDAgMTBweCAxLjI1cmVtIDA7XG5AaW5jbHVkZSBubi1weC10by11bml0KHBhZGRpbmcsIDAgMTAgMjAgMCk7ID0+IHBhZGRpbmc6IDAgMC42MjVyZW0gMS4yNXJlbSAwO1xuQGluY2x1ZGUgbm4tcHgtdG8tdW5pdChwYWRkaW5nLWxlZnQsIDEwKTtcbkBpbmNsdWRlIG5uLXB4LXRvLXVuaXQocGFkZGluZy1yaWdodCwgMTApO1xuQGluY2x1ZGUgbm4tcHgtdG8tdW5pdChtYXJnaW4sIDAgMTAgMjAgMCk7XG5AaW5jbHVkZSBubi1weC10by11bml0KG1hcmdpbi1sZWZ0LCAxMCk7XG5AaW5jbHVkZSBubi1weC10by11bml0KG1hcmdpbi1yaWdodCwgMTApO1xuQGluY2x1ZGUgbm4tcHgtdG8tdW5pdChmb250LXNpemUsIDIwKTtcbkBpbmNsdWRlIG5uLXB4LXRvLXVuaXQod2lkdGgsIDEwMCk7XG5AaW5jbHVkZSBubi1weC10by11bml0KG1pbi13aWR0aCwgMTAwKTtcbkBpbmNsdWRlIG5uLXB4LXRvLXVuaXQobWFubi13aWR0aCwgMTAwKTtcbkBpbmNsdWRlIG5uLXB4LXRvLXVuaXQoaGVpZ2h0LCAxMDApO1xuQGluY2x1ZGUgbm4tcHgtdG8tdW5pdChtaW4taGVpZ2h0LCAxMDApO1xuQGluY2x1ZGUgbm4tcHgtdG8tdW5pdChtYW5uLWhlaWdodCwgMTAwKTtcbmBgYFxuXG4jIyBTb3VyY2Vcbi0tLVxuaHR0cDovL2Nzcy10cmlja3MuY29tL3NuaXBwZXRzL2Nzcy9sZXNzLW1peGluLWZvci1yZW0tZm9udC1zaXppbmcvXG5cbiovXG4vKiBkb2Ncbi0tLVxudGl0bGU6IFBpeGVsIHRvIHVuaXRsZXNzXG5uYW1lOiBubi1weC10by11bml0bGVzc1xuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5cblRoaXMgbWFrZXMgdGhlIHNhbWUgY2FsY3VsYXRpb24gYXMgcHggdG8gZW0uIEJ1dCBpdCBkb24ndCBwcmludCBvdXQgdGhlIHVuaXQuXG5cblVzZSB0aGlzIGZvciBsaW5lLWhlaWdodHMuXG5cbiMjIExpdmUgVGVtcGxhdGUgYWJicmV2aWF0aW9uc1xuLS0tXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtZXRlciAkdmFsdWUgPSBwaXhlbCBiYXNlZCBudW1iZXIgKHdpdGhvdXQgdW5pdClcbkBwYXJhbWV0ZXIgJGJhc2UgPSBwaXhlbCBiYXNlZCBudW1iZXIgKHdpdGhvdXQgdW5pdClcblxuIyMgRGVwZW5kZW5jaWVzXG4tLS1cblxuIyMgRXhhbXBsZVxuLS0tXG5cbmBgYGh0bWxfZXhhbXBsZVxubGluZS1oZWlnaHQ6IG5uLXB4LXRvLXVuaXRsZXNzKDUpIC8vIE91dHB1dDogMC4zMTI1XG5gYGBcblxuIyMgU291cmNlXG4tLS1cblxuKi9cbi8qIGRvY1xuLS0tXG50aXRsZTogU3RyaXAgdW5pdFxubmFtZTogbm4tc3RyaXAtdW5pdFxuY2F0ZWdvcnk6IGZ1bmN0aW9uc1xuLS0tXG5cblN0cmlwcyBvZiB0aGUgdW5pdCBvZiBhIG51bWJlclxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbWV0ZXIgJG51bSA9IG51bWJlciB3aXRoIHVuaXQgKDVweCwgNWVtLCA1cmVtKVxuXG4jIyBFeGFtcGxlXG4tLS1cblxuYGBgaHRtbF9leGFtcGxlXG5ubi1zdHJpcC11bml0KDVweCkgLy9PdXRwdXQ6IDVcbm5uLXN0cmlwLXVuaXQoMTBlbSkgLy8gT3V0cHV0OiAxMFxubm4tc3RyaXAtdW5pdCgxNXJlbSkgLy8gT3V0cHV0OiAxNVxuYGBgXG5cbiovXG4vKiBkb2Ncbi0tLVxudGl0bGU6IHotaW5kZXhcbm5hbWU6IG5uLXotaW5kZXhcbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxuXG5CZWNhdXNlIHotaW5kaWNlcyBjYW4gZ2V0IHRyaWNreSB3ZSBtYW5hZ2UgdGhlbSBpbiB0aGUgdGhlbWUuc2NzcyBnbG9iYWxseS5cblxuQWx3YXlzIHVzZSB0aGlzIG1peGluIHRvIHNldCBzZXQgYSB6LWluZGV4LlxuXG5SZWFkIHRoZSBCZXN0IFByYWN0aWNlIHRvIGdldCBhbiBmdWxsIGRvY3VtZW50YXRpb246XG5odHRwczovL3Byb2plY3RzLm5ldGNlbnRyaWMuYml6L3dpa2kvZGlzcGxheS9GUk9OVEVORC9Ib3crdG8rc2V0K2Erei1pbmRleFxuXG4jIyBMaXZlIFRlbXBsYXRlIGFiYnJldmlhdGlvbnNcbi0tLVxuLXpcblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICRlbGVtZW50ID0gTmFtZSBvZiB0aGUgZWxlbWVudCAobm9ybWFsbHkgdGhpcyB3aWxsIGJlIHRoZSBtb2R1bGUgbmFtZSBmb3IgdGhlIG1haW4gc3RhY2spXG5AcGFyYW1ldGVyICRsaXN0ID0gTmFtZSBvZiB0aGUgbGlzdCAoZGVmYXVsdCAkei1pbmRpY2VzKS4gTXVzdCBiZSBvbmx5IHNldCBmb3Igc3RhY2sgY29udGV4dFxuQHBhcmFtZXRlciAkbWluID0gU2V0IGEgbWluaW11bSB6LWluZGV4IHdoaWNoIHdpbGwgYmUgYWRkZWQgdG8gdGhlIGxpc3QuXG5cbiMjIERlcGVuZGVuY2llc1xuLS0tXG4kei1pbmRpY2VzIHZhcmlhYmxlIGluIHRoZSB0aGVtZS5zY3NzXG5cbiMjIEV4YW1wbGVcbi0tLVxuXG5gYGBodG1sX2V4YW1wbGVcblxuLy8gSW4gdGhlIFNBU1MgdGhlbWUgZmlsZVxuXG4kei1pbmRpY2VzOiBzbGlkZXIsIG1vZGFsLCBkaWFsb2csIG5hdmlnYXRpb247XG5cbi8vIEluIHRoZSBTQVNTIG1vZHVsZSBmaWxlXG5cbi5tb2RhbCB7XG4gICAgJl9fYmFzZSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgei1pbmRleDogbm4tei1pbmRleChtb2RhbCk7XG4gICAgfVxufVxuYGBgXG5cbiMjIFNvdXJjZVxuLS0tXG5odHRwOi8vd3d3LnNtYXNoaW5nbWFnYXppbmUuY29tLzIwMTQvMDYvMTIvc2Fzc3ktei1pbmRleC1tYW5hZ2VtZW50LWZvci1jb21wbGV4LWxheW91dHMvXG5cbiovXG4vKiBkb2Ncbi0tLVxudGl0bGU6IHJlbW92ZSBldmVyeSB1bml0XG5uYW1lOiBzdHJpcC11bml0XG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cbnJlbW92ZSBhbGwgdW5pdHNcblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICRudW1iZXIgPSBudW1iZXIgd2l0aCB1bml0XG5cbiMjIEV4YW1wbGVcbi0tLVxuYGBgaHRtbF9leGFtcGxlXG5zdHJpcC11bml0KDVweCkgLy8gT3V0cHV0OiA1XG5gYGBcbiovXG4vKlxuICAgIFRoaXMgbWl4aW4gY29udmVydHMgYW55IHVuaXRsZXNzIG51bWJlciAoZm9yIGV4YW1wbGUgNDApIHRvIHRoZSBjb3JyZWN0IHVuaXQsIGFjY29yZGluZyB0byB0aGUgZ2l2ZW4gYXhpcy5cblxuICAgIFBhcmFtZXRlcnM6XG4gICAgLSAkdmFsdWU6IHVuaXRsZXNzIG51bWJlciB0byBiZSBjb252ZXJ0ZWQuIEEgdW5pdCBpbiAkdmFsdWUgd2lsbCBjb3JyZXNwb25kIHRvIGEgcHggaW4gdGhlIGJyb3dzZXIsXG4gICAgICAgIG5vIG1hdHRlciBpZiBpdCdzIG91dHB1dCBhcyBweCBvciByZW1cblxuICAgIFJldHVybnNcbiAgICAtIEhvcml6b250YWw6IHdpbGwgY29udmVydCB0aGUgbnVtYmVyIHRvIHBpeGVscyAoNDBweClcbiAgICAtIFZlcnRpY2FsOiB3aWxsIGNvbnZlcnQgdGhlIG51bWJlciB0byByZW0gKGlmIHJlbSA9PT0gMTZweCwgdGhlbiA0MCB3aWxsIGJlIGNvbnZlcnRlZCB0byAyLjUgcmVtKVxuKi9cbi8qXG4gICAgQ29udmVydHMgYSB1bml0bGVzcyBudW1iZXIgdG8gdGhlIGNvcnJlc3BvbmRpbmcgdW5pdCBvbiB0aGUgaG9yaXpvbnRhbCBheGlzLlxuICAgIEJ5IGRlZmF1bHQgd2lsbCBjb252ZXJ0IHRoZSB2YWx1ZSB0byBweC5cbiovXG4vKlxuICAgIENvbnZlcnRzIGEgdW5pdGxlc3MgbnVtYmVyIHRvIHRoZSBjb3JyZXNwb25kaW5nIHVuaXQgb24gdGhlIHZlcnRpY2FsIGF4aXMuXG4gICAgQnkgZGVmYXVsdCB3aWxsIGNvbnZlcnQgdGhlIHZhbHVlIHRvIHJlbS5cbiovXG4vKiBzdHlsZWxpbnQtZGlzYWJsZSAqL1xuLyogZG9jXG4tLS1cbnRpdGxlOiBTd2FwIGxlZnQgcmlnaHQgdmFsdWVzXG5uYW1lOiBzd2FwLWxlZnQtcmlnaHQtdmFsdWVzXG5jYXRlZ29yeTogZnVuY3Rpb25zXG4tLS1cblxuU3dhcCB0aGUgdmFsdWVzIGZvciByaWdodCBhbmQgbGVmdCB3aGVuICRydGwgaXMgc2V0IHRvIHRydWU6XG5cbkluOiAgMCA1cHggOHB4IDEycHhcbk91dDogMCAxMnB4IDhweCA1cHggKGluIHJ0bClcblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICR2YWx1ZXMgPSA0IG51bWJlcnMgKHdvcmtzIHdpdGggYWxsIHVuaXRzKVxuXG4jIyBFeGFtcGxlXG4tLS1cblxuYGBgaHRtbF9leGFtcGxlXG5zd2FwLWxlZnQtcmlnaHQtdmFsdWVzKDAgMXB4IDhweCAxMnB4KSAvLyAwIDEycHggOHB4IDFweFxuc3dhcC1sZWZ0LXJpZ2h0LXZhbHVlcygwIDFlbSA4ZW0gMTJlbSkgLy8gMCAxMmVtIDhlbSAxZW1cbndhcC1sZWZ0LXJpZ2h0LXZhbHVlcygwIDFyZW0gOHJlbSAxMnJlbSkgLy8gMCAxMnJlbSA4cmVtIDFyZW1cbmBgYFxuXG4jIyBTb3VyY2Vcbi0tLVxuaHR0cDovL3N0YWNrb3ZlcmZsb3cuY29tL3F1ZXN0aW9ucy8xNDE5OTMyMy9yaWdodC10by1sZWZ0LXJ0bC1zdXBwb3J0LWluLXNhc3MtcHJvamVjdFxuXG4qL1xuLyogc3R5bGVsaW50LWRpc2FibGUgKi9cbi8qIGRvY1xuLS0tXG50aXRsZTogU3dhcCBsZWZ0IHJpZ2h0IG5hbWVzXG5uYW1lOiBzd2FwLWxlZnQtcmlnaHQtbmFtZXNcbmNhdGVnb3J5OiBmdW5jdGlvbnNcbi0tLVxuXG5Td2FwIHRoZSBuYW1lcyByaWdodCBhbmQgbGVmdCB3aGVuICRydGwgaXMgc2V0IHRvIHRydWUuXG5JZiB0aGUgdmFsdWUgaXMgbm90IHJpZ2h0IG9yIGxlZnQgaXQgcmV0dXJucyB0aGUgb3JpZ2luYWwgdmFsdWUuXG5cbkluOiAgcmlnaHRcbk91dDogbGVmdCAoaW4gcnRsKSwgcmlnaHQgKGluIGx0cilcblxuIyMgTGl2ZSBUZW1wbGF0ZSBhYmJyZXZpYXRpb25zXG4tLS1cblxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW1ldGVyICRvcmlnaW4gPSByaWdodCB8IGxlZnRcblxuIyMgRXhhbXBsZVxuLS0tXG5cbmBgYGh0bWxfZXhhbXBsZVxuc3dhcC1sZWZ0LXJpZ2h0LW5hbWUobGVmdClcbnN3YXAtbGVmdC1yaWdodC1uYW1lKHJpZ2h0KVxuYGBgXG5cbiMjIFNvdXJjZVxuLS0tXG5odHRwOi8vc3RhY2tvdmVyZmxvdy5jb20vcXVlc3Rpb25zLzE0MTk5MzIzL3JpZ2h0LXRvLWxlZnQtcnRsLXN1cHBvcnQtaW4tc2Fzcy1wcm9qZWN0XG5cbiovXG4vKiAgTGlzdCBvZiBDU1MgcHJvcGVydGllcyB0aGF0IHdpbGwgYWx3YXlzIGJlIG91dHB1dCBhdCBsZWFzdCBhcyAyIGRpZmZlcmVudCB2YWx1ZXNcbiAgICBpbiBvcmRlciB0byBiZSBhYmxlIHRvIGNvbnZlcnQgZWFjaCBvbmUgdG8gdGhlIGNvcnJlY3QgYXhpcyB1bml0ICovXG4vKlxuICAgIE1peGluIGZvciBhdXRvbWF0aWNhbGx5IGhhbmRsaW5nIHNwYWNpbmdzIGFyb3VuZC9iZXR3ZWVuIGVsZW1lbnRzLlxuXG4gICAgVGhpcyBtaXhpbiB3aWxsIGF1dG9tYXRpY2FsbHkgaW52ZXJ0IHRoZSBsZWYvcmlnaHQgZGlyZWN0aW9ucyBpbiBSVEwgbGFuZ3VhZ2VzLlxuICAgIEFsc28sIHRoZSB1bml0bGVzcyB2YWx1ZXMgd2lsbCBiZSBjb252ZXJ0ZWQgdG8gdGhlIHByb3BlciB1bml0IGFjY29yZGluZyB0byB0aGUgYXhpc1xuXG4gICAgUGFyYW1ldGVyczpcbiAgICAtICRwcm9wZXJ0eS1uYW1lOiBuYW1lIG9mIHRoZSBDU1MgcHJvcGVydHkgdGhhdCBzaG91bGQgYmUgb3V0cHV0LiBTdXBwb3J0ZWQgcHJvcGVydGllcyBhcmU6XG4gICAgICAgIG1hcmdpbiwgbWFyZ2luLXRvcCwgbWFyZ2luLXJpZ2h0LCBtYXJnaW4tYm90dG9tLCBtYXJnaW4tbGVmdFxuICAgICAgICBwYWRkaW5nLCBwYWRkaW5nLXRvcCwgcGFkZGluZy1yaWdodCwgcGFkZGluZy1ib3R0b20sIHBhZGRpbmctbGVmdFxuICAgICAgICB3aWR0aCwgaGVpZ2h0LCBtaW4td2lkdGgsIG1heC13aWR0aCwgbWluLWhlaWdodCwgbWluLWhlaWdodFxuICAgIC0gJHZhbHVlOiB2YWx1ZSB0aGF0IHdpbGwgYmUgb3V0cHV0IGFzIHBhcnQgb2YgdGhlIGdpdmVuIHByb3BlcnR5LiBTdXBwb3J0ZWQgdmFsdWVzIGFyZTpcbiAgICAgICAgVW5pdGxlc3MgbnVtYmVyICg0MCk6IHRoaXMgc2hvdWxkIGJlIHVzZWQgbW9zdCBvZiB0aGUgdGltZXMuIEl0IHdpbGwgYXV0b21hdGljYWxseSBiZSBjb252ZXJ0ZWRcbiAgICAgICAgICAgIHRvIHRoZSBjb3JyZWN0IHVuaXQgZGVwZW5kaW5nIG9uIHRoZSBheGlzIHdoZXJlIGl0J3MgdXNlZCAoaG9yaXpvbnRhbCBheGlzID0+IHB4LCB2ZXJ0aWNhbCBheGlzID0+IHJlbSkuXG4gICAgICAgICAgICBFYWNoIHVuaXQgaW4gJHZhbHVlIHdpbGwgY29ycmVzcG9uZCB0byBhIHB4IGluIHRoZSBicm93c2VyLCBubyBtYXR0ZXIgdG8gd2hpY2ggdW5pdCBpdCB3aWxsIGJlIGNvbnZlcnRlZC5cbiAgICAgICAgTnVtYmVyIHdpdGggdW5pdCAoNDBweCwgNDAlLi4uKTogdGhlIG51bWJlciBhbmQgdGhlIHVuaXQgd2lsbCBiZSBwcmVzZXJ2ZWQgYW5kIG9ubHkgdGhlIGxlZnQvcmlnaHQgaW52ZXJzaW9uXG4gICAgICAgICAgICB3aWxsIGJlIGRvbmUgZm9yIFJUTCBsYW5ndWFnZXNcbiAgICAgICAgTGlzdCBvZiB2YWx1ZXMgKDQwIDMwJSAyMCAxMCk6IG1hcmdpbiBhbmQgcGFkZGluZyBzaG9ydGhhbmRzIHdoaXRoIG11bHRpcGxlIHZhbHVlcyBhcmUgc3VwcG9ydGVkLlxuICAgICAgICAgICAgVGhlIGxlZnQvcmlnaHQgdmFsdWVzIHdpbGwgYmUgYXV0b21hdGljYWxseSBzd2FwcGVkIGluIFJUTCBhbmQgdGhlIHVuaXRsZXNzIG51bWJlcnMgd2lsbCBiZSBjb252ZXJ0ZWRcbiAgICAgICAgICAgIHRvIHRoZSBjb3JyZXNwb25kaW5nIHVuaXQuIFVuaXRsZXNzIGFuZCBudW1iZXJzIHdpdGggdW5pdHMgY2FuIGJlIG1peGVkIGluIHRoZSBzYW1lIGNhbGwuXG4gICAgICAgIFVzaW5nIGNhbGMoKSBpbiBhbnkgb2YgdGhlIHByZXZpb3VzIGV4YW1wbGVzIGlzIHN1cHBvcnRlZCwgYWx0aG91Z2ggbm8gdW5pdCBjb252ZXJzaW9uIHdpbGwgYmUgZG9uZVxuXG4gIyMgRXhhbXBsZVxuLS0tXG5cbmBgYGh0bWxfZXhhbXBsZVxuQGluY2x1ZGUgc3BhY2luZyhwYWRkaW5nLCAwIDEwcHggMjAgMCk7ID0+IHBhZGRpbmc6IDAgMTBweCAycmVtIDA7XG5AaW5jbHVkZSBzcGFjaW5nKHBhZGRpbmcsIDAgMTAgMjAgMCk7ID0+IHBhZGRpbmc6IDAgMTBweCAycmVtIDA7XG5AaW5jbHVkZSBzcGFjaW5nKHBhZGRpbmctbGVmdCwgMTApO1xuQGluY2x1ZGUgc3BhY2luZyhwYWRkaW5nLXJpZ2h0LCAxMCk7XG5AaW5jbHVkZSBzcGFjaW5nKG1hcmdpbiwgMCAxMCAyMCAwKTtcbkBpbmNsdWRlIHNwYWNpbmcobWFyZ2luLWxlZnQsIDEwKTtcbkBpbmNsdWRlIHNwYWNpbmcobWFyZ2luLXJpZ2h0LCAxMCk7XG5AaW5jbHVkZSBzcGFjaW5nKHdpZHRoLCAxMDApO1xuQGluY2x1ZGUgc3BhY2luZyhtaW4td2lkdGgsIDEwMCk7XG5AaW5jbHVkZSBzcGFjaW5nKG1heC13aWR0aCwgMTAwKTtcbkBpbmNsdWRlIHNwYWNpbmcoaGVpZ2h0LCAxMDApO1xuQGluY2x1ZGUgc3BhY2luZyhtaW4taGVpZ2h0LCAxMDApO1xuQGluY2x1ZGUgc3BhY2luZyhtYXgtaGVpZ2h0LCAxMDApO1xuYGBgXG4qL1xuLyogZG9jXG4tLS1cbnRpdGxlOiBDbGVhcmZpeFxubmFtZTogY2xlYXJmaXhcbmNhdGVnb3J5OiBtaXhpbnNcbi0tLVxuXG5DbGVhcnMgYWZ0ZXIgZmxvYXRpbmcgZWxlbWVudFxuXG5Vc2UgdGhpcyBtaXhpbiBvbmx5IGluc2lkZSBtZWRpYSBxdWVyaWVzIHdoZXJlIHlvdSBjYW4ndCB1c2UgdGhlXG5hYnN0cmFjdC9leHRlbmRzL3V0aWxzL19jbGVhcmZpeCB2ZXJzaW9uLCB3aGljaCBhZGRzIGxlc3MgY29kZSB0byBjc3NcblxuIyMgTGl2ZSBUZW1wbGF0ZSBhYmJyZXZpYXRpb25zXG4tLS1cblxuIyMgRXhhbXBsZVxuLS0tXG5cbmBgYGh0bWxfZXhhbXBsZVxuQGluY2x1ZGUgY2xlYXJmaXg7XG5gYGBcblxuIyMgU291cmNlXG4tLS1cbmh0dHBzOi8vY3NzLXRyaWNrcy5jb20vc25pcHBldHMvY3NzL2NsZWFyLWZpeC9cbiovXG4vKiBzdHlsZWxpbnQtZGlzYWJsZSBzdHJpbmctbm8tbmV3bGluZSAqL1xuLyogZG9jXG4tLS1cbnRpdGxlOiBmb2N1cyBjb2xvclxubmFtZTogZm9jdXMgY29sb3JcbmNhdGVnb3J5OiBtaXhpbnNcbi0tLVxuXG5BZGQgYSBmb2N1cyBjb2xvciB3aGVuIGtleWJvYXJkLWZvY3VzIGlzIGFjdGl2YXRlZFxuIyMgUGFyYW1ldGVyc1xuLS0tXG5AcGFyYW0gJG51bWJlclxuXG4qL1xuLyogZG9jXG4tLS1cbnRpdGxlOiBpZ25vcmUtY29udGFpbmVyXG5uYW1lOiBpZ25vcmUtY29udGFpbmVyXG5jYXRlZ29yeTogbWl4aW5zXG4tLS1cblxuU2V0IGZ1bGwgcGFnZSB3aWR0aCBmb3Igc29tZXRoaW5nIGluc2lkZSBhIGNvbnRhaW5lclxuXG4jIyBQYXJhbWV0ZXJzXG4tLS1cbkBwYXJhbSAkY29udGFpbmVyLXNpemVcbkBwYXJhbSAkZ3V0dGVyXG5cbiovXG4vKiBHZW5lcmF0ZXMgYWxsIHRoZSBydWxlcyBmb3IgdGhlIGdyaWQgY29sdW1ucyB1cCB0byB0aGUgZ2l2ZW4gYW1vdW50IG9mIGNvbHVtbiAqL1xuLyogR2VuZXJhdGVzIGFsbCB0aGUgcnVsZXMgZm9yIHRoZSBncmlkIGNvbHVtbiBvZmZzZXQgdXAgdG8gdGhlIGdpdmVuIGFtb3VudCBvZiBjb2x1bW4gKi9cbi8qIEdlbmVyYXRlcyBhbGwgdGhlIHJ1bGVzIGZvciB0aGUgZ3JpZCBhbmQgY29sdW1ucyBmb3IgdGhlIGdpdmVuIGJyZWFrIHBvaW50IGFuZCB0b3RhbCBvZiBjb2x1bW5zICovXG4vKiBBUEkgZnVuY3Rpb24gdG8gYmUgY2FsbGVkIHRvIGdlbmVyYXRlIGEgZ3JpZCBjb25maWcgKi9cbi8qIGRvY1xuLS0tXG50eXBlOiBidXR0b24gdHlwZVxuc3RhdGU6IHN0YXRlIGJ1dHRvblxuLS0tXG5cbkJ1dHRvbiBzdHlsZXNcblxuVXNlIHRoaXMgbWl4aW4gZm9yIGJ1dHRvbiBzdHlsZXM6IGNvbG9yIHRleHQsIGJhY2tncm91bmQsIGJvcmRlclxuXG4jIyBFeGFtcGxlXG4tLS1cblxuYGBgaHRtbF9leGFtcGxlXG5AaW5jbHVkZSBidXR0b24ocHJpbWFyeSk7XG5gYGBcbiovXG4vKiBkb2Ncbi0tLVxubGluZUxpbWl0OiBUaGlzIHZhbHVlIHNwZWNpZmllcyB0aGUgbnVtYmVyIG9mIGxpbmVzIGFmdGVyIHdoaWNoIHRoZSBjb250ZW50IHdpbGwgYmUgY2xhbXBlZC4gSXQgbXVzdCBiZSBncmVhdGVyIHRoYW4gMC5cbi0tLVxuXG5UcnVuY2F0ZXMgdGV4dCBhdCBhIHNwZWNpZmljIG51bWJlciBvZiBsaW5lcy5cblxuVXNlIHRoaXMgbWl4aW4gdG8gaGlkZSBsb25nIHRleHQuXG5cbiMjIEV4YW1wbGVcbi0tLVxuXG5gYGBodG1sX2V4YW1wbGVcbkBpbmNsdWRlIGxpbmUtY2xhbXAoJGxpbmVMaW1pdDogNCk7XG5gYGBcbiovXG4vKiB0eXBvZ3JhcGh5XG4tLS1cbnRpdGxlOiB0eXBvZ3JhcGh5XG5uYW1lOiBUeXBvZ3JhcGh5XG5jYXRlZ29yeTogbWl4aW5zXG4tLS1cblxuQWRkcyBmb250IENTUyBwcm9wZXJ0aWVzIGJ5IGEgbWFwIHByb3ZpZGVkXG5cbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtICR0LXN0eWxlXG5AcGFyYW0gJGlzLWltcG9ydGFudDogZmFsc2VcblxuKiAkdC1zdHlsZSBpcyBleHBlY3RlZCB0byBiZSBhIG1hcCB3aXRoICdkZWZhdWx0JyBhbmQgJ2JyZWFrcG9pbnRbc10nIHN1Ym1hcHMgd2l0aCBhIHByb3BlcnR5XG5mb3IgZXZlcnkgY3NzIHByb3BlcnR5IHRvIGJlIHNldC5cbiogJGlzLWltcG9ydGFudCBwYXJhbWV0ZXIgYWxsb3dzIHRvIGZvcmNlIHR5cG9ncmFwaHkgcHJvcGVydGllcyB0byBiZSBzZXQgYXMgIWltcG9ydGFudFxuVHJ5IHRvIGF2b2lkIGl0cyB1c2UsIGJ1dCBpdCBtaWdodCBiZSBuZWVkZWQgZm9yIHNpdHVhdGlvbnMgd2hlcmUgc3R5bGVzIGZvciBhIGNvbXBvbmVudFxuYXJlIHZlcnkgc3BlY2lmaWMgYW5kIHRvIG92ZXJ3cml0ZSB0aGUgZ2VuZXJpYyBvbmVzIGlzIHRvbyBjb21wbGV4IChpZiB0aGV5IGhhdmUgYSBsb3Qgb2Ygc3BlY2lmaWNpdHkpXG5cbiovXG4vKiBkb2Ncbi0tLVxudGl0bGU6IGhpZGRlblxubmFtZTogaGlkZGVuXG5jYXRlZ29yeTogbWl4aW5zXG4tLS1cblxuSGlkZSBmcm9tIGJvdGggc2NyZWVucmVhZGVycyBhbmQgYnJvd3NlcnM6IGg1YnAuY29tL3VcbiMjIFBhcmFtZXRlcnNcbi0tLVxuXG4qL1xuLyogZG9jXG4tLS1cbnRpdGxlOiBvdmVybGF5XG5uYW1lOiBvdmVybGF5XG5jYXRlZ29yeTogbWl4aW5zXG4tLS1cblxuQ3JlYXRlcyBhbiBvdmVybGF5IHdpdGggdGhlIHByb3ZpZGVkIGJhY2tncm91bmQgY29sb3JcbiMjIFBhcmFtZXRlcnNcbi0tLVxuQHBhcmFtICRiZ0NvbG9yXG5cbiovXG4vKipcbiAqIEBtaXhpbiB0b3AtYm90dG9tLWJvcmRlclxuICogQGRlc2MgQ3JlYXRlcyBhIGR5bmFtaWMgYW5kIGN1c3RvbWl6YWJsZSBib3JkZXIgYXQgdGhlIHNwZWNpZmllZCBwb3NpdGlvbiBvbiBhbiBlbGVtZW50LlxuICpcbiAqIEBwYXJhbSB7c3RyaW5nfSAkcG9zaXRpb24gLSBPcHRpb25hbCwgRGVmYXVsdDogJ2JvdHRvbScuIERlZmluZXMgdGhlIHBvc2l0aW9uIG9mIHRoZSBib3JkZXIuIEFjY2VwdHMgdmFsdWVzICd0b3AnIG9yICdib3R0b20nLlxuICogQHBhcmFtIHtjb2xvcn0gJGNvbG9yIC0gT3B0aW9uYWwsIERlZmF1bHQ6ICckYy1ibGFjaycuIFNwZWNpZmllcyB0aGUgY29sb3Igb2YgdGhlIGJvcmRlci4gQWNjZXB0cyBhbnkgdmFsaWQgQ1NTIGNvbG9yIHZhbHVlLlxuICogQHBhcmFtIHtsZW5ndGh9ICR3aWR0aCAtIE9wdGlvbmFsLCBEZWZhdWx0OiAnMnB4Jy4gU2V0cyB0aGUgd2lkdGggb2YgdGhlIGJvcmRlci4gQWNjZXB0cyBhbnkgdmFsaWQgQ1NTIGxlbmd0aCB2YWx1ZS5cbiAqIEBwYXJhbSB7bGVuZ3RofSAkbWFyZ2luIC0gT3B0aW9uYWwsIERlZmF1bHQ6ICcwJy4gQWRkcyBtYXJnaW4gdG8gdGhlIGJvcmRlci4gQWNjZXB0cyBhbnkgdmFsaWQgQ1NTIGxlbmd0aCB2YWx1ZS5cbiAqXG4gKiBAZXhhbXBsZVxuICogICAuZXhhbXBsZS1lbGVtZW50IHtcbiAqICAgICAgIEBpbmNsdWRlIHRvcC1ib3R0b20tYm9yZGVyKCRwb3NpdGlvbjogdG9wLCAkY29sb3I6ICRjLWdyZXktdHdvLCAkd2lkdGg6IDNweCwgJG1hcmdpbjogMTBweCk7XG4gKiAgIH1cbiAqL1xuLyogZG9jXG4tLS1cbnRpdGxlOiByZXNldC1mdWxsd2lkdGgtbWFyZ2luc1xubmFtZTogcmVzZXQtZnVsbHdpZHRoLW1hcmdpbnNcbmNhdGVnb3J5OiBtaXhpbnNcbi0tLVxuXG5SZXNldCBtYXJnaW5zIGZvciBmdWxsIHdpZHRoIGNvbXBvbmVudHMgaW5zaWRlIGEgQ29udGFpbmVyIG9yIGEgQ29sdW1uIENvbnRyb2xcbiovXG4vKiBkb2Ncbi0tLVxudGl0bGU6IHZpc3VhbGx5IGhpZGRlblxubmFtZTogdmlzdWFsbHkgaGlkZGVuXG5jYXRlZ29yeTogbWl4aW5zXG4tLS1cblxuSGlkZGVuIGZyb20gYnJvd3NlcnMgYnV0IGFjY2Vzc2libGUgdG8gc2NyZWVuIHJlYWRlcnNcbiMjIFBhcmFtZXRlcnNcbi0tLVxuXG4qL1xuLmltZ19fY29udGFpbmVyLXpvb20ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uaW1hZ2Uge1xuICAtLWNvbXBvbmVudC1tYXJnaW4tYmxvY2stc3RhcnQ6IDMwcHg7XG4gIC0tY29tcG9uZW50LW1hcmdpbi1ibG9jay1lbmQ6IDMwcHg7XG59XG4uaW1hZ2UubWFyZ2luLXRvcC0tbm9uZSB7XG4gIC0tY29tcG9uZW50LW1hcmdpbi1ibG9jay1zdGFydDogMDtcbn1cbi5pbWFnZS5tYXJnaW4tdG9wLS1zaW5nbGUge1xuICAtLWNvbXBvbmVudC1tYXJnaW4tYmxvY2stc3RhcnQ6IDMwcHg7XG59XG4uaW1hZ2UubWFyZ2luLXRvcC0tZG91YmxlIHtcbiAgLS1jb21wb25lbnQtbWFyZ2luLWJsb2NrLXN0YXJ0OiAzMHB4O1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5pbWFnZS5tYXJnaW4tdG9wLS1kb3VibGUge1xuICAgIC0tY29tcG9uZW50LW1hcmdpbi1ibG9jay1zdGFydDogY2FsYygzMHB4ICogMik7XG4gIH1cbn1cbi5pbWFnZS5tYXJnaW4tYm90dG9tLS1ub25lIHtcbiAgLS1jb21wb25lbnQtbWFyZ2luLWJsb2NrLWVuZDogMDtcbn1cbi5pbWFnZS5tYXJnaW4tYm90dG9tLS1zaW5nbGUge1xuICAtLWNvbXBvbmVudC1tYXJnaW4tYmxvY2stZW5kOiAzMHB4O1xufVxuLmltYWdlLm1hcmdpbi1ib3R0b20tLWRvdWJsZSB7XG4gIC0tY29tcG9uZW50LW1hcmdpbi1ibG9jay1lbmQ6IDMwcHg7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmltYWdlLm1hcmdpbi1ib3R0b20tLWRvdWJsZSB7XG4gICAgLS1jb21wb25lbnQtbWFyZ2luLWJsb2NrLWVuZDogY2FsYygzMHB4ICogMik7XG4gIH1cbn1cbi5pbWFnZSAuaW1nX19jb250YWluZXIge1xuICBtYXJnaW4tYmxvY2s6IHZhcigtLWNvbXBvbmVudC1tYXJnaW4tYmxvY2stc3RhcnQpIHZhcigtLWNvbXBvbmVudC1tYXJnaW4tYmxvY2stZW5kKSAhaW1wb3J0YW50O1xufVxuLmFlbS1HcmlkID4gLmltYWdlOmZpcnN0LWNoaWxkOm5vdCgubWFyZ2luLXRvcC0tc2luZ2xlKTpub3QoLm1hcmdpbi10b3AtLWRvdWJsZSkgLmltZ19fY29udGFpbmVyIHtcbiAgbWFyZ2luLWJsb2NrLXN0YXJ0OiAwICFpbXBvcnRhbnQ7XG59XG5cbi5pbWFnZSAuczd6b29tdmlld2VyIHtcbiAgd2lkdGg6IGF1dG87XG59XG4uaW1hZ2UgLnM3em9vbXZpZXdlciAuczdjb250YWluZXIge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuLmltYWdlIC5zN3pvb212aWV3ZXIgLnM3Y29udGFpbmVyW21vZGU9bm9ybWFsXSB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG4uaW1hZ2UgLnM3em9vbXZpZXdlciAuczdjb250YWluZXJbbW9kZT1ub3JtYWxdOmhvdmVyIC5zN3pvb212aWV3ZXJfX292ZXJsYXkge1xuICBvcGFjaXR5OiAxO1xufVxuLmltYWdlIC5zN3pvb212aWV3ZXIgLnM3Y29udGFpbmVyW21vZGU9bm9ybWFsXSAuczd6b29taW5idXR0b24sXG4uaW1hZ2UgLnM3em9vbXZpZXdlciAuczdjb250YWluZXJbbW9kZT1ub3JtYWxdIC5zN3pvb21vdXRidXR0b24sXG4uaW1hZ2UgLnM3em9vbXZpZXdlciAuczdjb250YWluZXJbbW9kZT1ub3JtYWxdIC5zN3pvb21yZXNldGJ1dHRvbiB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4uaW1hZ2UgLnM3em9vbXZpZXdlciAuczdjb250YWluZXJbbW9kZT1ub3JtYWxdIC5zN3pvb212aWV3ZXJfX292ZXJsYXkge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGluc2V0OiAwO1xuICBmb250LXNpemU6IDMycHg7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNCk7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4ycztcbiAgei1pbmRleDogMTtcbn1cbi5pbWFnZSAuczd6b29tdmlld2VyIC5zN2NvbnRhaW5lclttb2RlPW5vcm1hbF0gLnM3ZnVsbHNjcmVlbmJ1dHRvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgaW5zZXQ6IC0xMDAlIDAgMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgei1pbmRleDogMjtcbn1cbi5pbWFnZSAuczd6b29tdmlld2VyIC5zN2NvbnRhaW5lclttb2RlPW5vcm1hbF0gLnM3ZnVsbHNjcmVlbmJ1dHRvbjphZnRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM1MzU2NWE7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFzay1pbWFnZTogdXJsKFwiL2NvbnRlbnQvZGFtL3ZvbHZvLW1lZGlhL2xpc3QtaWNvbnMvc2VhcmNoLnN2ZyNzZWFyY2gtaWNvbi13MjQtdmlld1wiKTtcbiAgbWFzay1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgbWFzay1zaXplOiBjb3ZlcjtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIHdpZHRoOiAyNHB4O1xuICBoZWlnaHQ6IDI0cHg7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5pbWFnZSAuczd6b29tdmlld2VyIC5zN2NvbnRhaW5lclttb2RlPW5vcm1hbF0gLnM3ZnVsbHNjcmVlbmJ1dHRvbjphZnRlciB7XG4gICAgbWFzay1pbWFnZTogdXJsKFwiL2NvbnRlbnQvZGFtL3ZvbHZvLW1lZGlhL2xpc3QtaWNvbnMvc2VhcmNoLnN2ZyNzZWFyY2gtaWNvbi13MTYtdmlld1wiKTtcbiAgfVxufVxuLmltYWdlIC5zN3pvb212aWV3ZXIgLnM3Y29udGFpbmVyW21vZGU9bm9ybWFsXSAuczdmdWxsc2NyZWVuYnV0dG9uOjpiZWZvcmUsIC5pbWFnZSAuczd6b29tdmlld2VyIC5zN2NvbnRhaW5lclttb2RlPW5vcm1hbF0gLnM3ZnVsbHNjcmVlbmJ1dHRvbjo6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG59XG4uaW1hZ2UgLnM3em9vbXZpZXdlciAuczdjb250YWluZXJbbW9kZT1ub3JtYWxdIC5zN2Z1bGxzY3JlZW5idXR0b246OmJlZm9yZSB7XG4gIC8qIElmIHZhbHVlIGhhcyBtb3JlIHRoYW4gb25lIGVsZW1lbnQsIGFueSBldmVuIGluZGV4IHdpbGwgbWF0Y2ggYSBob3Jpem9udGFsIGF4aXNcbiAgICAgICogMiB2YWx1ZXM6ICgxKXRvcCtkb3duICgyKWxlZnQrcmlnaHRcbiAgICAgICogMyB2YWx1ZXM6ICgxKXRvcCAoMilsZWZ0K3JpZ2h0ICgzKWJvdHRvbVxuICAgICAgKiA0IHZhbHVlczogKDEpdG9wICgyKXJpZ2h0ICgzKWJvdHRvbSAoNClsZWZ0XG4gICAgICAqL1xuICB3aWR0aDogMy4xMjVyZW07XG4gIC8qIElmIHZhbHVlIGhhcyBtb3JlIHRoYW4gb25lIGVsZW1lbnQsIGFueSBldmVuIGluZGV4IHdpbGwgbWF0Y2ggYSBob3Jpem9udGFsIGF4aXNcbiAgICAgICogMiB2YWx1ZXM6ICgxKXRvcCtkb3duICgyKWxlZnQrcmlnaHRcbiAgICAgICogMyB2YWx1ZXM6ICgxKXRvcCAoMilsZWZ0K3JpZ2h0ICgzKWJvdHRvbVxuICAgICAgKiA0IHZhbHVlczogKDEpdG9wICgyKXJpZ2h0ICgzKWJvdHRvbSAoNClsZWZ0XG4gICAgICAqL1xuICBoZWlnaHQ6IDMuMTI1cmVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBib3gtc2hhZG93OiAwIDRweCAxNnB4IHJnYmEoMCwgMCwgMCwgMC4yKTtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGluc2V0LWJsb2NrLWVuZDogMjBweDtcbiAgaW5zZXQtaW5saW5lLWVuZDogMjBweDtcbn1cbi5pbWFnZSAuczd6b29tdmlld2VyIC5zN2NvbnRhaW5lclttb2RlPW5vcm1hbF0gLnM3ZnVsbHNjcmVlbmJ1dHRvbjo6YWZ0ZXIge1xuICBpbnNldC1pbmxpbmUtZW5kOiAzM3B4O1xuICBpbnNldC1ibG9jay1lbmQ6IDMzcHg7XG59XG4uaW1hZ2UgLnM3em9vbXZpZXdlciAuczdjb250YWluZXJbbW9kZT1ub3JtYWxdIC5zN2Z1bGxzY3JlZW5idXR0b25bc3RhdGVdW3NlbGVjdGVkXSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG59XG4uaW1hZ2UgLnM3em9vbXZpZXdlciAuczdjb250YWluZXJbbW9kZT1ub3JtYWxdIC5zN3pvb212aWV3W2RhdGEtbmFtZXNwYWNlPXM3Y2xhc3NpY10ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cbi5pbWFnZSAuczd6b29tdmlld2VyIC5zN2NvbnRhaW5lclttb2RlPWZ1bGxzY3JlZW5dIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwKSAhaW1wb3J0YW50O1xufVxuLmltYWdlIC5zN3pvb212aWV3ZXIgLnM3Y29udGFpbmVyW21vZGU9ZnVsbHNjcmVlbl06OmJhY2tkcm9wIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwKTtcbn1cbi5pbWFnZSAuczd6b29tdmlld2VyIC5zN2NvbnRhaW5lclttb2RlPWZ1bGxzY3JlZW5dIC5zN2Z1bGxzY3JlZW5idXR0b24ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgLyogSWYgdmFsdWUgaGFzIG1vcmUgdGhhbiBvbmUgZWxlbWVudCwgYW55IGV2ZW4gaW5kZXggd2lsbCBtYXRjaCBhIGhvcml6b250YWwgYXhpc1xuICAgICAgKiAyIHZhbHVlczogKDEpdG9wK2Rvd24gKDIpbGVmdCtyaWdodFxuICAgICAgKiAzIHZhbHVlczogKDEpdG9wICgyKWxlZnQrcmlnaHQgKDMpYm90dG9tXG4gICAgICAqIDQgdmFsdWVzOiAoMSl0b3AgKDIpcmlnaHQgKDMpYm90dG9tICg0KWxlZnRcbiAgICAgICovXG4gIGhlaWdodDogMy4xMjVyZW07XG4gIC8qIElmIHZhbHVlIGhhcyBtb3JlIHRoYW4gb25lIGVsZW1lbnQsIGFueSBldmVuIGluZGV4IHdpbGwgbWF0Y2ggYSBob3Jpem9udGFsIGF4aXNcbiAgICAgICogMiB2YWx1ZXM6ICgxKXRvcCtkb3duICgyKWxlZnQrcmlnaHRcbiAgICAgICogMyB2YWx1ZXM6ICgxKXRvcCAoMilsZWZ0K3JpZ2h0ICgzKWJvdHRvbVxuICAgICAgKiA0IHZhbHVlczogKDEpdG9wICgyKXJpZ2h0ICgzKWJvdHRvbSAoNClsZWZ0XG4gICAgICAqL1xuICB3aWR0aDogMy4xMjVyZW07XG4gIGluc2V0LWJsb2NrLXN0YXJ0OiBjYWxjKC0xMDB2aCArIDIwcHgpO1xuICBpbnNldC1pbmxpbmUtZW5kOiAyMHB4O1xuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xufVxuLmltYWdlIC5zN3pvb212aWV3ZXIgLnM3Y29udGFpbmVyW21vZGU9ZnVsbHNjcmVlbl0gLnM3ZnVsbHNjcmVlbmJ1dHRvbjphZnRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM1MzU2NWE7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFzay1pbWFnZTogdXJsKFwiL2NvbnRlbnQvZGFtL3ZvbHZvLW1lZGlhL3NlcnZpY2UtY29udHJhY3QtaWNvbnMvY2xvc2Uuc3ZnI2Nsb3NlLWljb24tdzI0LXZpZXdcIik7XG4gIG1hc2stcmVwZWF0OiBuby1yZXBlYXQ7XG4gIG1hc2stc2l6ZTogY292ZXI7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICB3aWR0aDogMjRweDtcbiAgaGVpZ2h0OiAyNHB4O1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAuaW1hZ2UgLnM3em9vbXZpZXdlciAuczdjb250YWluZXJbbW9kZT1mdWxsc2NyZWVuXSAuczdmdWxsc2NyZWVuYnV0dG9uOmFmdGVyIHtcbiAgICBtYXNrLWltYWdlOiB1cmwoXCIvY29udGVudC9kYW0vdm9sdm8tbWVkaWEvc2VydmljZS1jb250cmFjdC1pY29ucy9jbG9zZS5zdmcjY2xvc2UtaWNvbi13MTYtdmlld1wiKTtcbiAgfVxufVxuLmltYWdlIC5zN3pvb212aWV3ZXIgLnM3Y29udGFpbmVyW21vZGU9ZnVsbHNjcmVlbl0gLnM3ZnVsbHNjcmVlbmJ1dHRvbjo6YmVmb3JlLCAuaW1hZ2UgLnM3em9vbXZpZXdlciAuczdjb250YWluZXJbbW9kZT1mdWxsc2NyZWVuXSAuczdmdWxsc2NyZWVuYnV0dG9uOjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbn1cbi5pbWFnZSAuczd6b29tdmlld2VyIC5zN2NvbnRhaW5lclttb2RlPWZ1bGxzY3JlZW5dIC5zN2Z1bGxzY3JlZW5idXR0b246OmJlZm9yZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGJveC1zaGFkb3c6IDAgNHB4IDE2cHggcmdiYSgwLCAwLCAwLCAwLjIpO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgaW5zZXQ6IDA7XG59XG4uaW1hZ2UgLnM3em9vbXZpZXdlciAuczdjb250YWluZXJbbW9kZT1mdWxsc2NyZWVuXSAuczd6b29tdmlldyB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjAsIDIwLCAyMCwgMC44KTtcbn1cbi5pbWFnZSAuczd6b29tdmlld2VyIC5zN3pvb21pbmJ1dHRvbixcbi5pbWFnZSAuczd6b29tdmlld2VyIC5zN3pvb21vdXRidXR0b24sXG4uaW1hZ2UgLnM3em9vbXZpZXdlciAuczd6b29tcmVzZXRidXR0b24ge1xuICBkaXNwbGF5OiBub25lO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIC8qIElmIHZhbHVlIGhhcyBtb3JlIHRoYW4gb25lIGVsZW1lbnQsIGFueSBldmVuIGluZGV4IHdpbGwgbWF0Y2ggYSBob3Jpem9udGFsIGF4aXNcbiAgICAgICogMiB2YWx1ZXM6ICgxKXRvcCtkb3duICgyKWxlZnQrcmlnaHRcbiAgICAgICogMyB2YWx1ZXM6ICgxKXRvcCAoMilsZWZ0K3JpZ2h0ICgzKWJvdHRvbVxuICAgICAgKiA0IHZhbHVlczogKDEpdG9wICgyKXJpZ2h0ICgzKWJvdHRvbSAoNClsZWZ0XG4gICAgICAqL1xuICBoZWlnaHQ6IDMuMTI1cmVtICFpbXBvcnRhbnQ7XG4gIC8qIElmIHZhbHVlIGhhcyBtb3JlIHRoYW4gb25lIGVsZW1lbnQsIGFueSBldmVuIGluZGV4IHdpbGwgbWF0Y2ggYSBob3Jpem9udGFsIGF4aXNcbiAgICAgICogMiB2YWx1ZXM6ICgxKXRvcCtkb3duICgyKWxlZnQrcmlnaHRcbiAgICAgICogMyB2YWx1ZXM6ICgxKXRvcCAoMilsZWZ0K3JpZ2h0ICgzKWJvdHRvbVxuICAgICAgKiA0IHZhbHVlczogKDEpdG9wICgyKXJpZ2h0ICgzKWJvdHRvbSAoNClsZWZ0XG4gICAgICAqL1xuICB3aWR0aDogMy4xMjVyZW0gIWltcG9ydGFudDtcbiAgLyogc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50ICovXG4gIGluc2V0LWJsb2NrLWVuZDogMjBweCAhaW1wb3J0YW50O1xuICBpbnNldC1pbmxpbmUtc3RhcnQ6IDUwJSAhaW1wb3J0YW50O1xuICAvKiBzdHlsZWxpbnQtZW5hYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudCAqL1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTYwcHgpIHtcbiAgLmltYWdlIC5zN3pvb212aWV3ZXIgLnM3em9vbWluYnV0dG9uLFxuICAuaW1hZ2UgLnM3em9vbXZpZXdlciAuczd6b29tb3V0YnV0dG9uLFxuICAuaW1hZ2UgLnM3em9vbXZpZXdlciAuczd6b29tcmVzZXRidXR0b24ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG4uaW1hZ2UgLnM3em9vbXZpZXdlciAuczd6b29taW5idXR0b25bc3RhdGVdLFxuLmltYWdlIC5zN3pvb212aWV3ZXIgLnM3em9vbW91dGJ1dHRvbltzdGF0ZV0sXG4uaW1hZ2UgLnM3em9vbXZpZXdlciAuczd6b29tcmVzZXRidXR0b25bc3RhdGVdIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbn1cbi5pbWFnZSAuczd6b29tdmlld2VyIC5zN3pvb21pbmJ1dHRvbiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBpbnNldC1pbmxpbmUtc3RhcnQ6IGNhbGMoNTAlIC0gNzBweCkgIWltcG9ydGFudDtcbn1cbi5pbWFnZSAuczd6b29tdmlld2VyIC5zN3pvb21pbmJ1dHRvbjphZnRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM1MzU2NWE7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFzay1pbWFnZTogdXJsKFwiL2NvbnRlbnQvZGFtL3ZvbHZvLW1lZGlhL2xpc3QtaWNvbnMvcGx1cy5zdmcjcGx1cy1pY29uLXcyNC12aWV3XCIpO1xuICBtYXNrLXJlcGVhdDogbm8tcmVwZWF0O1xuICBtYXNrLXNpemU6IGNvdmVyO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgd2lkdGg6IDI0cHg7XG4gIGhlaWdodDogMjRweDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLmltYWdlIC5zN3pvb212aWV3ZXIgLnM3em9vbWluYnV0dG9uOmFmdGVyIHtcbiAgICBtYXNrLWltYWdlOiB1cmwoXCIvY29udGVudC9kYW0vdm9sdm8tbWVkaWEvbGlzdC1pY29ucy9wbHVzLnN2ZyNwbHVzLWljb24tdzE2LXZpZXdcIik7XG4gIH1cbn1cbi5pbWFnZSAuczd6b29tdmlld2VyIC5zN3pvb21pbmJ1dHRvbjo6YmVmb3JlLCAuaW1hZ2UgLnM3em9vbXZpZXdlciAuczd6b29taW5idXR0b246OmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xufVxuLmltYWdlIC5zN3pvb212aWV3ZXIgLnM3em9vbWluYnV0dG9uOjpiZWZvcmUge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBib3gtc2hhZG93OiAwIDRweCAxNnB4IHJnYmEoMCwgMCwgMCwgMC4yKTtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGluc2V0OiAwO1xufVxuLmltYWdlIC5zN3pvb212aWV3ZXIgLnM3em9vbW91dGJ1dHRvbiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuLmltYWdlIC5zN3pvb212aWV3ZXIgLnM3em9vbW91dGJ1dHRvbjphZnRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM1MzU2NWE7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFzay1pbWFnZTogdXJsKFwiL2NvbnRlbnQvZGFtL3ZvbHZvLW1lZGlhL2xpc3QtaWNvbnMvbWludXMuc3ZnI21pbnVzLWljb24tdzI0LXZpZXdcIik7XG4gIG1hc2stcmVwZWF0OiBuby1yZXBlYXQ7XG4gIG1hc2stc2l6ZTogY292ZXI7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICB3aWR0aDogMjRweDtcbiAgaGVpZ2h0OiAyNHB4O1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAuaW1hZ2UgLnM3em9vbXZpZXdlciAuczd6b29tb3V0YnV0dG9uOmFmdGVyIHtcbiAgICBtYXNrLWltYWdlOiB1cmwoXCIvY29udGVudC9kYW0vdm9sdm8tbWVkaWEvbGlzdC1pY29ucy9taW51cy5zdmcjbWludXMtaWNvbi13MTYtdmlld1wiKTtcbiAgfVxufVxuLmltYWdlIC5zN3pvb212aWV3ZXIgLnM3em9vbW91dGJ1dHRvbjo6YmVmb3JlLCAuaW1hZ2UgLnM3em9vbXZpZXdlciAuczd6b29tb3V0YnV0dG9uOjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbn1cbi5pbWFnZSAuczd6b29tdmlld2VyIC5zN3pvb21vdXRidXR0b246OmJlZm9yZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGJveC1zaGFkb3c6IDAgNHB4IDE2cHggcmdiYSgwLCAwLCAwLCAwLjIpO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgaW5zZXQ6IDA7XG59XG4uaW1hZ2UgLnM3em9vbXZpZXdlciAuczd6b29tcmVzZXRidXR0b24ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgaW5zZXQtaW5saW5lLXN0YXJ0OiBjYWxjKDUwJSArIDcwcHgpICFpbXBvcnRhbnQ7XG59XG4uaW1hZ2UgLnM3em9vbXZpZXdlciAuczd6b29tcmVzZXRidXR0b246YWZ0ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNTM1NjVhO1xuICBjb250ZW50OiBcIlwiO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hc2staW1hZ2U6IHVybChcIi9jb250ZW50L2RhbS92b2x2by1tZWRpYS9zZXJ2aWNlLWNvbnRyYWN0LWljb25zL0FjdGlvbnNfVXBkYXRlX0JsYWNrLnN2ZyNBY3Rpb25zX1VwZGF0ZV9CbGFjay1pY29uLXcyNC12aWV3XCIpO1xuICBtYXNrLXJlcGVhdDogbm8tcmVwZWF0O1xuICBtYXNrLXNpemU6IGNvdmVyO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgd2lkdGg6IDI0cHg7XG4gIGhlaWdodDogMjRweDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLmltYWdlIC5zN3pvb212aWV3ZXIgLnM3em9vbXJlc2V0YnV0dG9uOmFmdGVyIHtcbiAgICBtYXNrLWltYWdlOiB1cmwoXCIvY29udGVudC9kYW0vdm9sdm8tbWVkaWEvc2VydmljZS1jb250cmFjdC1pY29ucy9BY3Rpb25zX1VwZGF0ZV9CbGFjay5zdmcjQWN0aW9uc19VcGRhdGVfQmxhY2staWNvbi13MTYtdmlld1wiKTtcbiAgfVxufVxuLmltYWdlIC5zN3pvb212aWV3ZXIgLnM3em9vbXJlc2V0YnV0dG9uOjpiZWZvcmUsIC5pbWFnZSAuczd6b29tdmlld2VyIC5zN3pvb21yZXNldGJ1dHRvbjo6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG59XG4uaW1hZ2UgLnM3em9vbXZpZXdlciAuczd6b29tcmVzZXRidXR0b246OmJlZm9yZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGJveC1zaGFkb3c6IDAgNHB4IDE2cHggcmdiYSgwLCAwLCAwLCAwLjIpO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgaW5zZXQ6IDA7XG59XG4uaW1hZ2UgLnM3em9vbXZpZXdlciAuczdidXR0b24ge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGNvbG9yOiAjYTdhOGE5O1xufVxuLmltYWdlIC5zN3pvb212aWV3ZXIgLnM3YnV0dG9uOjpiZWZvcmUge1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBmaWx0ZXI6IG5vbmUgIWltcG9ydGFudDtcbiAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICBwYWRkaW5nOiAyNXB4O1xuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xufVxuLmltYWdlIC5zN3pvb212aWV3ZXIgLnM3YnV0dG9uOmhvdmVyIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuLmltYWdlIC5zN3pvb212aWV3ZXIgLnM3YnV0dG9uOmhvdmVyOjphZnRlciB7XG4gIGZpbHRlcjogYnJpZ2h0bmVzcygwLjc1KTtcbn1cbi5pbWFnZSAuczd6b29tdmlld2VyIC5zN2J1dHRvbltzdGF0ZT1kaXNhYmxlZF0ge1xuICBjdXJzb3I6IGF1dG87XG59XG4uaW1hZ2UgLnM3em9vbXZpZXdlciAuczdidXR0b25bc3RhdGU9ZGlzYWJsZWRdOjphZnRlciB7XG4gIGZpbHRlcjogb3BhY2l0eSgwLjUpO1xufVxuLmltYWdlIC5pbWdfX3RpdGxlIHtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZmLXJlZ3VsYXIpO1xuICBmb250LXNpemU6IDEycHg7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIGxldHRlci1zcGFjaW5nOiB2YXIoLS1scy1kZWZhdWx0KTtcbiAgY29sb3I6ICM1MzU2NWE7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nLWJsb2NrLXN0YXJ0OiAwLjVlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNmVtO1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIG1heC13aWR0aDogNDgwcHg7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmltYWdlIC5pbWdfX3RpdGxlIHtcbiAgICBtYXgtd2lkdGg6IDc2OHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5pbWFnZSAuaW1nX190aXRsZSB7XG4gICAgbWF4LXdpZHRoOiAxMjAwcHg7XG4gIH1cbn1cbi5pbWFnZV9fZnVsbFdpZHRoLmltYWdlIHtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG59XG4uaW1hZ2VfX2Z1bGxXaWR0aCAuaW1nX19jb250YWluZXIge1xuICBtYXJnaW4tYmxvY2s6IDA7XG4gIG1hcmdpbi1pbmxpbmU6IC0xNXB4O1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAuaW1hZ2VfX2Z1bGxXaWR0aCAuaW1nX19jb250YWluZXIge1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIG1hcmdpbi1ibG9jazogMDtcbiAgICBtYXJnaW4taW5saW5lOiBjYWxjKCgxMDB2dyAtIDEyMDBweCkgLyAtMik7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAyMDQ4cHgpIHtcbiAgLmltYWdlX19mdWxsV2lkdGggLmltZ19fY29udGFpbmVyIHtcbiAgICB3aWR0aDogYXV0bztcbiAgICBtYXJnaW4tYmxvY2s6IDA7XG4gICAgbWFyZ2luLWlubGluZTogY2FsYygoMjA0OHB4IC0gMTIwMHB4KSAvIC0yKTtcbiAgfVxuICAuY29udGFpbmVyLS1mdWxsV2lkdGggLmltYWdlX19mdWxsV2lkdGggLmltZ19fY29udGFpbmVyIHtcbiAgICBtYXJnaW46IDA7XG4gIH1cbiAgLmNvbHVtbmNvbnRyb2xfX2NvbHVtbjpmaXJzdC1jaGlsZCAuaW1hZ2VfX2Z1bGxXaWR0aCAuaW1nX19jb250YWluZXIge1xuICAgIG1hcmdpbi1pbmxpbmUtZW5kOiAwO1xuICB9XG4gIC5jb2x1bW5jb250cm9sX19jb2x1bW46bGFzdC1jaGlsZCAuaW1hZ2VfX2Z1bGxXaWR0aCAuaW1nX19jb250YWluZXIge1xuICAgIG1hcmdpbi1pbmxpbmUtc3RhcnQ6IDA7XG4gIH1cbn1cbi5pbWFnZV9fZnVsbFdpZHRoIC5pbWdfX2Fzc2V0IHtcbiAgd2lkdGg6IDEwMCU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi5pbWFnZV9fY29udGVudFdpZHRoIC5pbWdfX2Fzc2V0IHtcbiAgd2lkdGg6IDEwMCU7XG59XG4uaW1hZ2VfX3NsaW1IZWlnaHQgLmltZ19fYXNzZXQsXG4uaW1hZ2VfX3NsaW1IZWlnaHQgLmltZ19fY29udGFpbmVyIHtcbiAgb2JqZWN0LWZpdDogY292ZXI7XG4gIGhlaWdodDogMjgwcHg7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmltYWdlX19zbGltSGVpZ2h0IC5pbWdfX2Fzc2V0LFxuICAuaW1hZ2VfX3NsaW1IZWlnaHQgLmltZ19fY29udGFpbmVyIHtcbiAgICBoZWlnaHQ6IDI1MHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTYwcHgpIHtcbiAgLmltYWdlX19zbGltSGVpZ2h0IC5pbWdfX2Fzc2V0LFxuICAuaW1hZ2VfX3NsaW1IZWlnaHQgLmltZ19fY29udGFpbmVyIHtcbiAgICBoZWlnaHQ6IDQwMnB4O1xuICB9XG59XG4uaW1hZ2VfX3N0YW5kYXJkSGVpZ2h0IC5pbWdfX2Fzc2V0LFxuLmltYWdlX19zdGFuZGFyZEhlaWdodCAuaW1nX19jb250YWluZXIge1xuICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgaGVpZ2h0OiAyODBweDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuaW1hZ2VfX3N0YW5kYXJkSGVpZ2h0IC5pbWdfX2Fzc2V0LFxuICAuaW1hZ2VfX3N0YW5kYXJkSGVpZ2h0IC5pbWdfX2NvbnRhaW5lciB7XG4gICAgaGVpZ2h0OiA0MDBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDk2MHB4KSB7XG4gIC5pbWFnZV9fc3RhbmRhcmRIZWlnaHQgLmltZ19fYXNzZXQsXG4gIC5pbWFnZV9fc3RhbmRhcmRIZWlnaHQgLmltZ19fY29udGFpbmVyIHtcbiAgICBoZWlnaHQ6IDYwNHB4O1xuICB9XG59XG4uaW1hZ2VfX2Zsb2F0TGVmdCB7XG4gIGZsb2F0OiBsZWZ0O1xufVxuaHRtbFtkaXI9cnRsXSAuaW1hZ2VfX2Zsb2F0TGVmdCB7XG4gIGZsb2F0OiByaWdodDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAuaW1hZ2VfX2Zsb2F0TGVmdCBpbWcge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIG1hcmdpbi1pbmxpbmUtZW5kOiAzMHB4O1xuICB9XG4gIC5jbXAtY29udGFpbmVyIC5pbWFnZV9fZmxvYXRMZWZ0IGltZyB7XG4gICAgbWFyZ2luLWJsb2NrLWVuZDogMTBweDtcbiAgICBtaW4td2lkdGg6IDI4MHB4O1xuICB9XG4gIGh0bWxbZGlyPXJ0bF0gLmltYWdlX19mbG9hdExlZnQgaW1nIHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gIH1cbn1cbi5pbWFnZV9fZmxvYXRMZWZ0IC5pbWdfX3RpdGxlIHtcbiAgbWFyZ2luLWlubGluZS1lbmQ6IDMwcHg7XG59XG4uaW1hZ2VfX2Zsb2F0UmlnaHQge1xuICBmbG9hdDogcmlnaHQ7XG59XG5odG1sW2Rpcj1ydGxdIC5pbWFnZV9fZmxvYXRSaWdodCB7XG4gIGZsb2F0OiBsZWZ0O1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5pbWFnZV9fZmxvYXRSaWdodCBpbWcge1xuICAgIGZsb2F0OiByaWdodDtcbiAgICBtYXJnaW4taW5saW5lLXN0YXJ0OiAzMHB4O1xuICB9XG4gIC5jbXAtY29udGFpbmVyIC5pbWFnZV9fZmxvYXRSaWdodCBpbWcge1xuICAgIG1hcmdpbi1ibG9jay1lbmQ6IDEwcHg7XG4gICAgbWluLXdpZHRoOiAyODBweDtcbiAgfVxuICBodG1sW2Rpcj1ydGxdIC5pbWFnZV9fZmxvYXRSaWdodCBpbWcge1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG59XG4uaW1hZ2VfX2Zsb2F0UmlnaHQgLmltZ19fdGl0bGUge1xuICBtYXJnaW4taW5saW5lLXN0YXJ0OiAzMHB4O1xufVxuLmltYWdlX19mbG9hdFJpZ2h0IC5pbWdfX3RpdGxlLCAuaW1hZ2VfX2Zsb2F0TGVmdCAuaW1nX190aXRsZSB7XG4gIG1heC13aWR0aDogZml0LWNvbnRlbnQ7XG59XG4uaW1hZ2VfX2Zsb2F0UmlnaHQgKyAudGV4dCAudGV4dF9fY29udGFpbmVyICosIC5pbWFnZV9fZmxvYXRMZWZ0ICsgLnRleHQgLnRleHRfX2NvbnRhaW5lciAqIHtcbiAgY2xlYXI6IG5vbmU7XG4gIHdvcmQtd3JhcDogbm9ybWFsO1xufVxuXG4uYWVtLUdyaWQgPiAuaW1hZ2U6Zmlyc3QtY2hpbGQge1xuICBtYXJnaW4tYmxvY2stc3RhcnQ6IDA7XG59XG5cbi5saXN0LS1pY29ucyAubGlzdCB7XG4gIG1hcmdpbi1ibG9jay1lbmQ6IDI1cHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGdhcDogMjBweDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAubGlzdC0taWNvbnMgLmxpc3Qge1xuICAgIG1hcmdpbi1ibG9jay1zdGFydDogNXB4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIH1cbn1cbi5saXN0LS1pY29ucyAuY21wLWxpc3Qge1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICBkaXNwbGF5OiBmbGV4O1xuICBnYXA6IDIwcHg7XG59XG4ubGlzdC0taWNvbnMgLmNtcC1saXN0X190aXRsZSB7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mZi1yZWd1bGFyKTtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBmb250LXdlaWdodDogNDAwO1xuICBsaW5lLWhlaWdodDogMS41O1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tbHMtZGVmYXVsdCk7XG4gIG1hcmdpbjogMDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAubGlzdC0taWNvbnMgLmNtcC1saXN0X190aXRsZSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1hcmdpbi1ibG9jazogMDtcbiAgICBtYXJnaW4taW5saW5lOiAwIDFweDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIHZlcnRpY2FsLWFsaWduOiAtMjAlO1xuICB9XG59XG4ubGlzdC0taWNvbnMgLmNtcC1saXN0X19pdGVtIHtcbiAgcGFkZGluZy1ibG9jay1lbmQ6IDA7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udC1zaXplOiAwO1xufVxuLmxpc3QtLWljb25zIC5jbXAtbGlzdF9faXRlbSAuY21wLWxpc3RfX2l0ZW0tbGluazo6YWZ0ZXIge1xuICBjb250ZW50OiBub25lO1xufVxuLmxpc3QtLWljb25zIC5jbXAtbGlzdF9faXRlbS10aXRsZSB7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mZi1yZWd1bGFyKTtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBmb250LXdlaWdodDogNDAwO1xuICBsaW5lLWhlaWdodDogMS41O1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tbHMtZGVmYXVsdCk7XG59XG5cbi5jbXAtbGlzdF9fdGl0bGUge1xuICBmb250LWZhbWlseTogdmFyKC0tZmYtbWVkaXVtKTtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBmb250LXdlaWdodDogNDAwO1xuICBsaW5lLWhlaWdodDogMS41O1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tbHMtZGVmYXVsdCk7XG4gIG1hcmdpbi1ibG9jay1lbmQ6IDI1cHg7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTYwcHgpIHtcbiAgLmNtcC1saXN0X190aXRsZSB7XG4gICAgZm9udC1zaXplOiAyNHB4O1xuICB9XG59XG4uY21wLWxpc3RfX2l0ZW0ge1xuICBwYWRkaW5nLWJsb2NrLWVuZDogMjBweDtcbn1cbi5jbXAtbGlzdF9faXRlbSAuY21wLWxpc3RfX2l0ZW0tbGluazphZnRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM1MzU2NWE7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFzay1pbWFnZTogdXJsKFwiL2NvbnRlbnQvZGFtL3ZvbHZvLW1lZGlhL2xpc3QtaWNvbnMvY2hldnJvbi1yaWdodC5zdmcjY2hldnJvbi1yaWdodC1pY29uLXcyNC12aWV3XCIpO1xuICBtYXNrLXJlcGVhdDogbm8tcmVwZWF0O1xuICBtYXNrLXNpemU6IGNvdmVyO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgd2lkdGg6IHZhcigtLXYtaWNvbi1zaXplKTtcbiAgaGVpZ2h0OiB2YXIoLS12LWljb24tc2l6ZSk7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5jbXAtbGlzdF9faXRlbSAuY21wLWxpc3RfX2l0ZW0tbGluazphZnRlciB7XG4gICAgbWFzay1pbWFnZTogdXJsKFwiL2NvbnRlbnQvZGFtL3ZvbHZvLW1lZGlhL2xpc3QtaWNvbnMvY2hldnJvbi1yaWdodC5zdmcjY2hldnJvbi1yaWdodC1pY29uLXcxNi12aWV3XCIpO1xuICB9XG59XG5odG1sW2Rpcj1ydGxdIC5jbXAtbGlzdF9faXRlbSAuY21wLWxpc3RfX2l0ZW0tbGluazo6YWZ0ZXIge1xuICB0cmFuc2Zvcm06IHNjYWxlKC0xLCAxKTtcbn1cbi5jbXAtbGlzdF9faXRlbSAuY21wLWxpc3RfX2l0ZW0tbGluazo6YWZ0ZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGluc2V0LWJsb2NrLXN0YXJ0OiAycHg7XG4gIGluc2V0LWlubGluZS1zdGFydDogMDtcbn1cbi5jbXAtbGlzdF9faXRlbS10aXRsZSB7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mZi1yZWd1bGFyKTtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBmb250LXdlaWdodDogNDAwO1xuICBsaW5lLWhlaWdodDogMS41O1xuICBsZXR0ZXItc3BhY2luZzogdmFyKC0tbHMtZGVmYXVsdCk7XG59XG4uY21wLWxpc3RfX2xpbmsge1xuICBmb250LWZhbWlseTogdmFyKC0tZmYtcmVndWxhcik7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgbGV0dGVyLXNwYWNpbmc6IHZhcigtLWxzLWRlZmF1bHQpO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG4uY21wLWxpc3RfX2xpbms6aG92ZXIge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG4uY21wLWxpc3RfX2xpbmstLW5vaWNvbjo6YWZ0ZXIge1xuICBjb250ZW50OiBcIuKdr1wiO1xuICBmb250LXNpemU6IDEwcHg7XG4gIG1hcmdpbi1pbmxpbmUtc3RhcnQ6IDEwcHg7XG59XG4uZm9vdGVyX19jb3B5cmlnaHQgLmNtcC1saXN0X19saW5rLS1ub2ljb246OmFmdGVyIHtcbiAgY29udGVudDogbm9uZTtcbn1cbi5jbXAtbGlzdF9faWNvbiB7XG4gIHdpZHRoOiAyNHB4O1xuICBoZWlnaHQ6IDI0cHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaW5zZXQtYmxvY2stc3RhcnQ6IDFweDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5NjBweCkge1xuICAuY21wLWxpc3RfX2ljb24ge1xuICAgIHdpZHRoOiAxNnB4O1xuICAgIGhlaWdodDogMTZweDtcbiAgfVxufSIsbnVsbCxudWxsLG51bGwsbnVsbCxudWxsLG51bGwsbnVsbCxudWxsLG51bGwsbnVsbCxudWxsLG51bGwsbnVsbCxudWxsLG51bGwsbnVsbCxudWxsLG51bGwsbnVsbCxudWxsLG51bGwsbnVsbCxudWxsLG51bGwsbnVsbCxudWxsLG51bGwsbnVsbCxudWxsLG51bGwsbnVsbCxudWxsLG51bGwsbnVsbCxudWxsLG51bGwsbnVsbCxudWxsLG51bGwsbnVsbCxudWxsLG51bGwsbnVsbCxudWxsLG51bGwsbnVsbCxudWxsLG51bGwsbnVsbCxudWxsLG51bGwsbnVsbCxudWxsLG51bGwsbnVsbCxudWxsLG51bGwsbnVsbCxudWxsLG51bGwsbnVsbCxudWxsLG51bGwsbnVsbCxudWxsLG51bGwsbnVsbCxudWxsLG51bGwsbnVsbCxudWxsLG51bGwsbnVsbCxudWxsLG51bGwsbnVsbCxudWxsLG51bGwsbnVsbCxudWxsXX0= */